[edk2-devel] [edk2-non-osi Patch] Vlv2SocBinPkg: Add initial binaries for Vlv2TbltDevicePkg

Michael D Kinney posted 1 patch 4 years, 9 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/edk2 tags/patchew/20190701030707.5848-1-michael.d.kinney@intel.com
zuLj0OQ)M6(rWZ&bjpvI>#O);ajbzgvTf%5Wf@Y^4#`G3i$X>OJjW$r0)bpT7yf75|
[edk2-devel] [edk2-non-osi Patch] Vlv2SocBinPkg: Add initial binaries for Vlv2TbltDevicePkg
Posted by Michael D Kinney 4 years, 9 months ago
Add the initial version of the binaries required to
build Vlv2TbltDevicePkg in the edk2-platform repository

Cc: Zailiang Sun <zailiang.sun@intel.com>
Cc: Yi Qian <yi.qian@intel.com>
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
---
 .../RELEASE_VS2008x86/IA32/IntelGopDriver.efi |   Bin 0 -> 60192 bytes
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../RELEASE_VS2008x86/X64/IntelGopDriver.efi  |   Bin 0 -> 75008 bytes
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../GOP/7.2.1011/VBT/MNW2/Vbt.bin             |   Bin 0 -> 4096 bytes
 .../GOP/7.2.1011/VBT/MNW2/vbt.bsf             |  9216 +++++++++++
 .../IA32DEBUG/IA32/CpuPeim.depex              |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.efi  |   Bin 0 -> 10624 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf  |   137 +
 .../IA32DEBUG/IA32/DigitalThermalSensor.depex |     1 +
 .../IA32DEBUG/IA32/DigitalThermalSensor.efi   |   Bin 0 -> 14848 bytes
 .../IA32DEBUG/IA32/DigitalThermalSensor.inf   |   190 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.depex   |   Bin 0 -> 108 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.efi     |   Bin 0 -> 12704 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf     |   219 +
 .../IA32DEBUG/IA32/GraphicDxeInitSmm.depex    |   Bin 0 -> 162 bytes
 .../IA32DEBUG/IA32/GraphicDxeInitSmm.efi      |   Bin 0 -> 25088 bytes
 .../IA32DEBUG/IA32/GraphicDxeInitSmm.inf      |   265 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.efi   |   Bin 0 -> 17984 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf   |   247 +
 .../IA32DEBUG/IA32/MemoryInit.depex           |     1 +
 .../IA32DEBUG/IA32/MemoryInit.efi             |   Bin 0 -> 98304 bytes
 .../IA32DEBUG/IA32/MemoryInit.inf             |   201 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../IA32DEBUG/IA32/PchBiosWriteProtect.depex  |     1 +
 .../IA32DEBUG/IA32/PchBiosWriteProtect.efi    |   Bin 0 -> 11264 bytes
 .../IA32DEBUG/IA32/PchBiosWriteProtect.inf    |   130 +
 .../IA32DEBUG/IA32/PchEarlyInitPeim.depex     |     1 +
 .../IA32DEBUG/IA32/PchEarlyInitPeim.efi       |   Bin 0 -> 15040 bytes
 .../IA32DEBUG/IA32/PchEarlyInitPeim.inf       |    97 +
 .../IA32DEBUG/IA32/PchInitDxe.depex           |   Bin 0 -> 126 bytes
 .../IA32DEBUG/IA32/PchInitDxe.efi             |   Bin 0 -> 102496 bytes
 .../IA32DEBUG/IA32/PchInitDxe.inf             |   278 +
 .../IA32DEBUG/IA32/PchInitPeim.depex          |     1 +
 .../IA32DEBUG/IA32/PchInitPeim.efi            |   Bin 0 -> 22976 bytes
 .../IA32DEBUG/IA32/PchInitPeim.inf            |   150 +
 .../IA32DEBUG/IA32/PchInitSmm.depex           |   Bin 0 -> 162 bytes
 .../IA32DEBUG/IA32/PchInitSmm.efi             |   Bin 0 -> 35840 bytes
 .../IA32DEBUG/IA32/PchInitSmm.inf             |   290 +
 .../IA32DEBUG/IA32/PchPcieSmm.depex           |   Bin 0 -> 108 bytes
 .../IA32DEBUG/IA32/PchPcieSmm.efi             |   Bin 0 -> 26112 bytes
 .../IA32DEBUG/IA32/PchPcieSmm.inf             |   251 +
 .../IA32DEBUG/IA32/PchPolicyInitDxe.depex     |     1 +
 .../IA32DEBUG/IA32/PchPolicyInitDxe.efi       |   Bin 0 -> 9440 bytes
 .../IA32DEBUG/IA32/PchPolicyInitDxe.inf       |   123 +
 .../IA32DEBUG/IA32/PchReset.depex             |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.efi |   Bin 0 -> 12288 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf |   137 +
 .../IA32DEBUG/IA32/PchS3SupportDxe.depex      |     1 +
 .../IA32DEBUG/IA32/PchS3SupportDxe.efi        |   Bin 0 -> 25760 bytes
 .../IA32DEBUG/IA32/PchS3SupportDxe.inf        |   257 +
 .../IA32DEBUG/IA32/PchSmbusArpDisabled.depex  |     1 +
 .../IA32DEBUG/IA32/PchSmbusArpDisabled.efi    |   Bin 0 -> 7616 bytes
 .../IA32DEBUG/IA32/PchSmbusArpDisabled.inf    |   144 +
 .../IA32DEBUG/IA32/PchSmbusDxe.depex          |     1 +
 .../IA32DEBUG/IA32/PchSmbusDxe.efi            |   Bin 0 -> 15552 bytes
 .../IA32DEBUG/IA32/PchSmbusDxe.inf            |   214 +
 .../IA32DEBUG/IA32/PchSmiDispatcher.depex     |   Bin 0 -> 72 bytes
 .../IA32DEBUG/IA32/PchSmiDispatcher.efi       |   Bin 0 -> 24576 bytes
 .../IA32DEBUG/IA32/PchSmiDispatcher.inf       |   181 +
 .../IA32DEBUG/IA32/PchSpiPeim.depex           |     1 +
 .../IA32DEBUG/IA32/PchSpiPeim.efi             |   Bin 0 -> 10304 bytes
 .../IA32DEBUG/IA32/PchSpiPeim.inf             |   139 +
 .../IA32DEBUG/IA32/PchSpiRuntime.depex        |     1 +
 .../IA32DEBUG/IA32/PchSpiRuntime.efi          |   Bin 0 -> 23552 bytes
 .../IA32DEBUG/IA32/PchSpiRuntime.inf          |   258 +
 .../IA32DEBUG/IA32/PchSpiSmm.depex            |     1 +
 .../IA32DEBUG/IA32/PchSpiSmm.efi              |   Bin 0 -> 24064 bytes
 .../IA32DEBUG/IA32/PchSpiSmm.inf              |   251 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.efi   |   Bin 0 -> 5984 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf   |   137 +
 .../IA32DEBUG/IA32/PciHostBridge.depex        |   Bin 0 -> 54 bytes
 .../IA32DEBUG/IA32/PciHostBridge.efi          |   Bin 0 -> 22336 bytes
 .../IA32DEBUG/IA32/PciHostBridge.inf          |   254 +
 .../IA32DEBUG/IA32/PeiSmmAccess.depex         |     1 +
 .../IA32DEBUG/IA32/PeiSmmAccess.efi           |   Bin 0 -> 6208 bytes
 .../IA32DEBUG/IA32/PeiSmmAccess.inf           |   132 +
 .../IA32DEBUG/IA32/PeiSmmControl.depex        |     1 +
 .../IA32DEBUG/IA32/PeiSmmControl.efi          |   Bin 0 -> 5120 bytes
 .../IA32DEBUG/IA32/PeiSmmControl.inf          |   110 +
 .../IA32DEBUG/IA32/PlatformCpuPolicy.depex    |   Bin 0 -> 72 bytes
 .../IA32DEBUG/IA32/PlatformCpuPolicy.efi      |   Bin 0 -> 17632 bytes
 .../IA32DEBUG/IA32/PlatformCpuPolicy.inf      |   227 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.depex |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.efi   |   Bin 0 -> 17472 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf   |   207 +
 .../IA32DEBUG/IA32/PowerManagement2.depex     |     1 +
 .../IA32DEBUG/IA32/PowerManagement2.efi       |   Bin 0 -> 36352 bytes
 .../IA32DEBUG/IA32/PowerManagement2.inf       |   270 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.bin |   Bin 0 -> 64 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.com |   Bin 0 -> 64 bytes
 .../IA32DEBUG/IA32/SataController.efi         |   Bin 0 -> 12128 bytes
 .../IA32DEBUG/IA32/SataController.inf         |   204 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.efi   |   Bin 0 -> 7456 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf   |   116 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.efi  |   Bin 0 -> 8864 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf  |   130 +
 .../IA32DEBUG/IA32/SmmAccess.depex            |   Bin 0 -> 36 bytes
 .../IA32DEBUG/IA32/SmmAccess.efi              |   Bin 0 -> 10336 bytes
 .../IA32DEBUG/IA32/SmmAccess.inf              |   210 +
 .../IA32DEBUG/IA32/SmmControl.depex           |     1 +
 .../IA32DEBUG/IA32/SmmControl.efi             |   Bin 0 -> 11776 bytes
 .../IA32DEBUG/IA32/SmmControl.inf             |   129 +
 .../IA32DEBUG/IA32/VlvInitDxe.depex           |   Bin 0 -> 126 bytes
 .../IA32DEBUG/IA32/VlvInitDxe.efi             |   Bin 0 -> 26656 bytes
 .../IA32DEBUG/IA32/VlvInitDxe.inf             |   259 +
 .../IA32DEBUG/IA32/VlvInitPeim.depex          |     1 +
 .../IA32DEBUG/IA32/VlvInitPeim.efi            |   Bin 0 -> 9120 bytes
 .../IA32DEBUG/IA32/VlvInitPeim.inf            |   116 +
 .../IA32RELEASE/IA32/CpuPeim.depex            |     1 +
 .../IA32RELEASE/IA32/CpuPeim.efi              |   Bin 0 -> 6080 bytes
 .../IA32RELEASE/IA32/CpuPeim.inf              |   123 +
 .../IA32/DigitalThermalSensor.depex           |     1 +
 .../IA32RELEASE/IA32/DigitalThermalSensor.efi |   Bin 0 -> 6144 bytes
 .../IA32RELEASE/IA32/DigitalThermalSensor.inf |   182 +
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.depex |   Bin 0 -> 108 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.efi   |   Bin 0 -> 3872 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf   |   213 +
 .../IA32RELEASE/IA32/GraphicDxeInitSmm.depex  |   Bin 0 -> 162 bytes
 .../IA32RELEASE/IA32/GraphicDxeInitSmm.efi    |   Bin 0 -> 9216 bytes
 .../IA32RELEASE/IA32/GraphicDxeInitSmm.inf    |   259 +
 .../IA32RELEASE/IA32/ISPDxe.depex             |     1 +
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.efi |   Bin 0 -> 6144 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf |   241 +
 .../IA32RELEASE/IA32/MemoryInit.depex         |     1 +
 .../IA32RELEASE/IA32/MemoryInit.efi           |   Bin 0 -> 93888 bytes
 .../IA32RELEASE/IA32/MemoryInit.inf           |   196 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../IA32/PchBiosWriteProtect.depex            |     1 +
 .../IA32RELEASE/IA32/PchBiosWriteProtect.efi  |   Bin 0 -> 2560 bytes
 .../IA32RELEASE/IA32/PchBiosWriteProtect.inf  |   121 +
 .../IA32RELEASE/IA32/PchEarlyInitPeim.depex   |     1 +
 .../IA32RELEASE/IA32/PchEarlyInitPeim.efi     |   Bin 0 -> 14752 bytes
 .../IA32RELEASE/IA32/PchEarlyInitPeim.inf     |    97 +
 .../IA32RELEASE/IA32/PchInitDxe.depex         |   Bin 0 -> 126 bytes
 .../IA32RELEASE/IA32/PchInitDxe.efi           |   Bin 0 -> 61536 bytes
 .../IA32RELEASE/IA32/PchInitDxe.inf           |   272 +
 .../IA32RELEASE/IA32/PchInitPeim.depex        |     1 +
 .../IA32RELEASE/IA32/PchInitPeim.efi          |   Bin 0 -> 11776 bytes
 .../IA32RELEASE/IA32/PchInitPeim.inf          |   136 +
 .../IA32RELEASE/IA32/PchInitSmm.depex         |   Bin 0 -> 162 bytes
 .../IA32RELEASE/IA32/PchInitSmm.efi           |   Bin 0 -> 18432 bytes
 .../IA32RELEASE/IA32/PchInitSmm.inf           |   284 +
 .../IA32RELEASE/IA32/PchPcieSmm.depex         |   Bin 0 -> 108 bytes
 .../IA32RELEASE/IA32/PchPcieSmm.efi           |   Bin 0 -> 11264 bytes
 .../IA32RELEASE/IA32/PchPcieSmm.inf           |   245 +
 .../IA32RELEASE/IA32/PchPolicyInitDxe.depex   |     1 +
 .../IA32RELEASE/IA32/PchPolicyInitDxe.efi     |   Bin 0 -> 2368 bytes
 .../IA32RELEASE/IA32/PchPolicyInitDxe.inf     |   109 +
 .../IA32RELEASE/IA32/PchReset.depex           |     1 +
 .../IA32RELEASE/IA32/PchReset.efi             |   Bin 0 -> 3584 bytes
 .../IA32RELEASE/IA32/PchReset.inf             |   130 +
 .../IA32RELEASE/IA32/PchS3SupportDxe.depex    |     1 +
 .../IA32RELEASE/IA32/PchS3SupportDxe.efi      |   Bin 0 -> 13472 bytes
 .../IA32RELEASE/IA32/PchS3SupportDxe.inf      |   251 +
 .../IA32/PchSmbusArpDisabled.depex            |     1 +
 .../IA32RELEASE/IA32/PchSmbusArpDisabled.efi  |   Bin 0 -> 3136 bytes
 .../IA32RELEASE/IA32/PchSmbusArpDisabled.inf  |   130 +
 .../IA32RELEASE/IA32/PchSmbusDxe.depex        |     1 +
 .../IA32RELEASE/IA32/PchSmbusDxe.efi          |   Bin 0 -> 4832 bytes
 .../IA32RELEASE/IA32/PchSmbusDxe.inf          |   206 +
 .../IA32RELEASE/IA32/PchSmiDispatcher.depex   |   Bin 0 -> 72 bytes
 .../IA32RELEASE/IA32/PchSmiDispatcher.efi     |   Bin 0 -> 12288 bytes
 .../IA32RELEASE/IA32/PchSmiDispatcher.inf     |   175 +
 .../IA32RELEASE/IA32/PchSpiPeim.depex         |     1 +
 .../IA32RELEASE/IA32/PchSpiPeim.efi           |   Bin 0 -> 4384 bytes
 .../IA32RELEASE/IA32/PchSpiPeim.inf           |   125 +
 .../IA32RELEASE/IA32/PchSpiRuntime.depex      |     1 +
 .../IA32RELEASE/IA32/PchSpiRuntime.efi        |   Bin 0 -> 10240 bytes
 .../IA32RELEASE/IA32/PchSpiRuntime.inf        |   252 +
 .../IA32RELEASE/IA32/PchSpiSmm.depex          |     1 +
 .../IA32RELEASE/IA32/PchSpiSmm.efi            |   Bin 0 -> 9728 bytes
 .../IA32RELEASE/IA32/PchSpiSmm.inf            |   245 +
 .../IA32RELEASE/IA32/PchUsb.depex             |     1 +
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.efi |   Bin 0 -> 1344 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf |   124 +
 .../IA32RELEASE/IA32/PciHostBridge.depex      |   Bin 0 -> 54 bytes
 .../IA32RELEASE/IA32/PciHostBridge.efi        |   Bin 0 -> 9792 bytes
 .../IA32RELEASE/IA32/PciHostBridge.inf        |   248 +
 .../IA32RELEASE/IA32/PeiSmmAccess.depex       |     1 +
 .../IA32RELEASE/IA32/PeiSmmAccess.efi         |   Bin 0 -> 1664 bytes
 .../IA32RELEASE/IA32/PeiSmmAccess.inf         |   119 +
 .../IA32RELEASE/IA32/PeiSmmControl.depex      |     1 +
 .../IA32RELEASE/IA32/PeiSmmControl.efi        |   Bin 0 -> 960 bytes
 .../IA32RELEASE/IA32/PeiSmmControl.inf        |    95 +
 .../IA32RELEASE/IA32/PlatformCpuPolicy.depex  |   Bin 0 -> 72 bytes
 .../IA32RELEASE/IA32/PlatformCpuPolicy.efi    |   Bin 0 -> 8064 bytes
 .../IA32RELEASE/IA32/PlatformCpuPolicy.inf    |   216 +
 .../IA32RELEASE/IA32/PnpDxe.depex             |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.efi |   Bin 0 -> 9664 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf |   200 +
 .../IA32RELEASE/IA32/PowerManagement2.depex   |     1 +
 .../IA32RELEASE/IA32/PowerManagement2.efi     |   Bin 0 -> 18432 bytes
 .../IA32RELEASE/IA32/PowerManagement2.inf     |   264 +
 .../IA32RELEASE/IA32/ResetVec.bin             |   Bin 0 -> 64 bytes
 .../IA32RELEASE/IA32/ResetVec.com             |   Bin 0 -> 64 bytes
 .../IA32RELEASE/IA32/SataController.efi       |   Bin 0 -> 3264 bytes
 .../IA32RELEASE/IA32/SataController.inf       |   195 +
 .../IA32RELEASE/IA32/SeCUma.depex             |     1 +
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.efi |   Bin 0 -> 1856 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf |   101 +
 .../IA32RELEASE/IA32/SecCore.efi              |   Bin 0 -> 8000 bytes
 .../IA32RELEASE/IA32/SecCore.inf              |   152 +
 .../IA32RELEASE/IA32/SmmAccess.depex          |   Bin 0 -> 36 bytes
 .../IA32RELEASE/IA32/SmmAccess.efi            |   Bin 0 -> 1984 bytes
 .../IA32RELEASE/IA32/SmmAccess.inf            |   198 +
 .../IA32RELEASE/IA32/SmmControl.depex         |     1 +
 .../IA32RELEASE/IA32/SmmControl.efi           |   Bin 0 -> 3072 bytes
 .../IA32RELEASE/IA32/SmmControl.inf           |   122 +
 .../IA32RELEASE/IA32/VlvInitDxe.depex         |   Bin 0 -> 126 bytes
 .../IA32RELEASE/IA32/VlvInitDxe.efi           |   Bin 0 -> 16640 bytes
 .../IA32RELEASE/IA32/VlvInitDxe.inf           |   253 +
 .../IA32RELEASE/IA32/VlvInitPeim.depex        |     1 +
 .../IA32RELEASE/IA32/VlvInitPeim.efi          |   Bin 0 -> 3104 bytes
 .../IA32RELEASE/IA32/VlvInitPeim.inf          |   101 +
 .../Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h   |    72 +
 .../Vlv2SocBinPkg/Microcode/M0130673321.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0130678806.inc   | 12800 +++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0130679901.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0130679906.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0130679907.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M023067221D.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0F30679909.inc   | 13056 ++++++++++++++++
 .../Microcode/MicrocodeUpdates.inf            |    51 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../UNDI/I211PcieUndiDxe/X64/E7006X3.EFI      |   Bin 0 -> 341536 bytes
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../UNDI/RtkUndiDxe/IA32/RtkUndiDxe.efi       |   Bin 0 -> 78368 bytes
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../UNDI/RtkUndiDxe/X64/RtkUndiDxe.efi        |   Bin 0 -> 92064 bytes
 Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec |    36 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.efi   |   Bin 0 -> 10624 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf   |   137 +
 .../X64DEBUG/IA32/MemoryInit.depex            |     1 +
 .../X64DEBUG/IA32/MemoryInit.efi              |   Bin 0 -> 98304 bytes
 .../X64DEBUG/IA32/MemoryInit.inf              |   201 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../X64DEBUG/IA32/PchEarlyInitPeim.depex      |     1 +
 .../X64DEBUG/IA32/PchEarlyInitPeim.efi        |   Bin 0 -> 15040 bytes
 .../X64DEBUG/IA32/PchEarlyInitPeim.inf        |    97 +
 .../X64DEBUG/IA32/PchInitPeim.depex           |     1 +
 .../X64DEBUG/IA32/PchInitPeim.efi             |   Bin 0 -> 22976 bytes
 .../X64DEBUG/IA32/PchInitPeim.inf             |   150 +
 .../X64DEBUG/IA32/PchSmbusArpDisabled.depex   |     1 +
 .../X64DEBUG/IA32/PchSmbusArpDisabled.efi     |   Bin 0 -> 7616 bytes
 .../X64DEBUG/IA32/PchSmbusArpDisabled.inf     |   144 +
 .../X64DEBUG/IA32/PchSpiPeim.depex            |     1 +
 .../X64DEBUG/IA32/PchSpiPeim.efi              |   Bin 0 -> 10304 bytes
 .../X64DEBUG/IA32/PchSpiPeim.inf              |   139 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex  |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.efi    |   Bin 0 -> 5984 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf    |   137 +
 .../X64DEBUG/IA32/PeiSmmAccess.depex          |     1 +
 .../X64DEBUG/IA32/PeiSmmAccess.efi            |   Bin 0 -> 6208 bytes
 .../X64DEBUG/IA32/PeiSmmAccess.inf            |   132 +
 .../X64DEBUG/IA32/PeiSmmControl.depex         |     1 +
 .../X64DEBUG/IA32/PeiSmmControl.efi           |   Bin 0 -> 5120 bytes
 .../X64DEBUG/IA32/PeiSmmControl.inf           |   110 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.bin  |   Bin 0 -> 64 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.com  |   Bin 0 -> 64 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex  |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.efi    |   Bin 0 -> 7456 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf    |   116 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.efi   |   Bin 0 -> 8864 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf   |   130 +
 .../X64DEBUG/IA32/VlvInitPeim.depex           |     1 +
 .../X64DEBUG/IA32/VlvInitPeim.efi             |   Bin 0 -> 9120 bytes
 .../X64DEBUG/IA32/VlvInitPeim.inf             |   116 +
 .../X64DEBUG/X64/DigitalThermalSensor.depex   |     1 +
 .../X64DEBUG/X64/DigitalThermalSensor.efi     |   Bin 0 -> 32768 bytes
 .../X64DEBUG/X64/DigitalThermalSensor.inf     |   190 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/Dptf.depex     |   Bin 0 -> 108 bytes
 .../Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.efi |   Bin 0 -> 29120 bytes
 .../Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf |   219 +
 .../X64DEBUG/X64/GraphicDxeInitSmm.depex      |   Bin 0 -> 162 bytes
 .../X64DEBUG/X64/GraphicDxeInitSmm.efi        |   Bin 0 -> 54272 bytes
 .../X64DEBUG/X64/GraphicDxeInitSmm.inf        |   265 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex   |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.efi     |   Bin 0 -> 39328 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf     |   247 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../X64DEBUG/X64/PchBiosWriteProtect.depex    |     1 +
 .../X64DEBUG/X64/PchBiosWriteProtect.efi      |   Bin 0 -> 26624 bytes
 .../X64DEBUG/X64/PchBiosWriteProtect.inf      |   130 +
 .../X64DEBUG/X64/PchInitDxe.depex             |   Bin 0 -> 126 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.efi |   Bin 0 -> 176256 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf |   278 +
 .../X64DEBUG/X64/PchInitSmm.depex             |   Bin 0 -> 162 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.efi |   Bin 0 -> 67072 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf |   290 +
 .../X64DEBUG/X64/PchPcieSmm.depex             |   Bin 0 -> 108 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.efi |   Bin 0 -> 55808 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf |   251 +
 .../X64DEBUG/X64/PchPolicyInitDxe.depex       |     1 +
 .../X64DEBUG/X64/PchPolicyInitDxe.efi         |   Bin 0 -> 23616 bytes
 .../X64DEBUG/X64/PchPolicyInitDxe.inf         |   123 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchReset.efi   |   Bin 0 -> 29184 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf   |   137 +
 .../X64DEBUG/X64/PchS3SupportDxe.depex        |     1 +
 .../X64DEBUG/X64/PchS3SupportDxe.efi          |   Bin 0 -> 58368 bytes
 .../X64DEBUG/X64/PchS3SupportDxe.inf          |   257 +
 .../X64DEBUG/X64/PchSmbusDxe.depex            |     1 +
 .../X64DEBUG/X64/PchSmbusDxe.efi              |   Bin 0 -> 35328 bytes
 .../X64DEBUG/X64/PchSmbusDxe.inf              |   214 +
 .../X64DEBUG/X64/PchSmiDispatcher.depex       |   Bin 0 -> 72 bytes
 .../X64DEBUG/X64/PchSmiDispatcher.efi         |   Bin 0 -> 53760 bytes
 .../X64DEBUG/X64/PchSmiDispatcher.inf         |   181 +
 .../X64DEBUG/X64/PchSpiRuntime.depex          |     1 +
 .../X64DEBUG/X64/PchSpiRuntime.efi            |   Bin 0 -> 50688 bytes
 .../X64DEBUG/X64/PchSpiRuntime.inf            |   258 +
 .../X64DEBUG/X64/PchSpiSmm.depex              |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.efi  |   Bin 0 -> 54272 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf  |   251 +
 .../X64DEBUG/X64/PciHostBridge.depex          |   Bin 0 -> 54 bytes
 .../X64DEBUG/X64/PciHostBridge.efi            |   Bin 0 -> 49856 bytes
 .../X64DEBUG/X64/PciHostBridge.inf            |   254 +
 .../X64DEBUG/X64/PlatformCpuPolicy.depex      |   Bin 0 -> 72 bytes
 .../X64DEBUG/X64/PlatformCpuPolicy.efi        |   Bin 0 -> 35392 bytes
 .../X64DEBUG/X64/PlatformCpuPolicy.inf        |   227 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.depex   |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.efi     |   Bin 0 -> 33664 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf     |   207 +
 .../X64DEBUG/X64/PowerManagement2.depex       |     1 +
 .../X64DEBUG/X64/PowerManagement2.efi         |   Bin 0 -> 75776 bytes
 .../X64DEBUG/X64/PowerManagement2.inf         |   270 +
 .../X64DEBUG/X64/SataController.efi           |   Bin 0 -> 30208 bytes
 .../X64DEBUG/X64/SataController.inf           |   204 +
 .../X64DEBUG/X64/SmmAccess.depex              |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.efi  |   Bin 0 -> 25600 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf  |   210 +
 .../X64DEBUG/X64/SmmControl.depex             |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.efi |   Bin 0 -> 27136 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf |   129 +
 .../X64DEBUG/X64/VlvInitDxe.depex             |   Bin 0 -> 126 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.efi |   Bin 0 -> 55168 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf |   259 +
 .../X64RELEASE/IA32/CpuPeim.depex             |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.efi |   Bin 0 -> 6080 bytes
 .../Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf |   123 +
 .../X64RELEASE/IA32/MemoryInit.depex          |     1 +
 .../X64RELEASE/IA32/MemoryInit.efi            |   Bin 0 -> 93888 bytes
 .../X64RELEASE/IA32/MemoryInit.inf            |   196 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../X64RELEASE/IA32/PchEarlyInitPeim.depex    |     1 +
 .../X64RELEASE/IA32/PchEarlyInitPeim.efi      |   Bin 0 -> 14752 bytes
 .../X64RELEASE/IA32/PchEarlyInitPeim.inf      |    97 +
 .../X64RELEASE/IA32/PchInitPeim.depex         |     1 +
 .../X64RELEASE/IA32/PchInitPeim.efi           |   Bin 0 -> 11776 bytes
 .../X64RELEASE/IA32/PchInitPeim.inf           |   136 +
 .../X64RELEASE/IA32/PchSmbusArpDisabled.depex |     1 +
 .../X64RELEASE/IA32/PchSmbusArpDisabled.efi   |   Bin 0 -> 3136 bytes
 .../X64RELEASE/IA32/PchSmbusArpDisabled.inf   |   130 +
 .../X64RELEASE/IA32/PchSpiPeim.depex          |     1 +
 .../X64RELEASE/IA32/PchSpiPeim.efi            |   Bin 0 -> 4384 bytes
 .../X64RELEASE/IA32/PchSpiPeim.inf            |   125 +
 .../X64RELEASE/IA32/PchUsb.depex              |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.efi  |   Bin 0 -> 1344 bytes
 .../Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf  |   124 +
 .../X64RELEASE/IA32/PeiSmmAccess.depex        |     1 +
 .../X64RELEASE/IA32/PeiSmmAccess.efi          |   Bin 0 -> 1664 bytes
 .../X64RELEASE/IA32/PeiSmmAccess.inf          |   119 +
 .../X64RELEASE/IA32/PeiSmmControl.depex       |     1 +
 .../X64RELEASE/IA32/PeiSmmControl.efi         |   Bin 0 -> 960 bytes
 .../X64RELEASE/IA32/PeiSmmControl.inf         |    95 +
 .../X64RELEASE/IA32/ResetVec.bin              |   Bin 0 -> 64 bytes
 .../X64RELEASE/IA32/ResetVec.com              |   Bin 0 -> 64 bytes
 .../X64RELEASE/IA32/SeCUma.depex              |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.efi  |   Bin 0 -> 1856 bytes
 .../Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf  |   101 +
 .../Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.efi |   Bin 0 -> 8000 bytes
 .../Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf |   152 +
 .../X64RELEASE/IA32/VlvInitPeim.depex         |     1 +
 .../X64RELEASE/IA32/VlvInitPeim.efi           |   Bin 0 -> 3104 bytes
 .../X64RELEASE/IA32/VlvInitPeim.inf           |   101 +
 .../X64RELEASE/X64/DigitalThermalSensor.depex |     1 +
 .../X64RELEASE/X64/DigitalThermalSensor.efi   |   Bin 0 -> 8192 bytes
 .../X64RELEASE/X64/DigitalThermalSensor.inf   |   182 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/Dptf.depex   |   Bin 0 -> 108 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/Dptf.efi     |   Bin 0 -> 4384 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf     |   213 +
 .../X64RELEASE/X64/GraphicDxeInitSmm.depex    |   Bin 0 -> 162 bytes
 .../X64RELEASE/X64/GraphicDxeInitSmm.efi      |   Bin 0 -> 11264 bytes
 .../X64RELEASE/X64/GraphicDxeInitSmm.inf      |   259 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.efi   |   Bin 0 -> 6880 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf   |   241 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../X64RELEASE/X64/PchBiosWriteProtect.depex  |     1 +
 .../X64RELEASE/X64/PchBiosWriteProtect.efi    |   Bin 0 -> 4096 bytes
 .../X64RELEASE/X64/PchBiosWriteProtect.inf    |   121 +
 .../X64RELEASE/X64/PchInitDxe.depex           |   Bin 0 -> 126 bytes
 .../X64RELEASE/X64/PchInitDxe.efi             |   Bin 0 -> 59648 bytes
 .../X64RELEASE/X64/PchInitDxe.inf             |   272 +
 .../X64RELEASE/X64/PchInitSmm.depex           |   Bin 0 -> 162 bytes
 .../X64RELEASE/X64/PchInitSmm.efi             |   Bin 0 -> 18432 bytes
 .../X64RELEASE/X64/PchInitSmm.inf             |   284 +
 .../X64RELEASE/X64/PchPcieSmm.depex           |   Bin 0 -> 108 bytes
 .../X64RELEASE/X64/PchPcieSmm.efi             |   Bin 0 -> 13312 bytes
 .../X64RELEASE/X64/PchPcieSmm.inf             |   245 +
 .../X64RELEASE/X64/PchPolicyInitDxe.depex     |     1 +
 .../X64RELEASE/X64/PchPolicyInitDxe.efi       |   Bin 0 -> 2528 bytes
 .../X64RELEASE/X64/PchPolicyInitDxe.inf       |   109 +
 .../X64RELEASE/X64/PchReset.depex             |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/PchReset.efi |   Bin 0 -> 4608 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf |   130 +
 .../X64RELEASE/X64/PchS3SupportDxe.depex      |     1 +
 .../X64RELEASE/X64/PchS3SupportDxe.efi        |   Bin 0 -> 16224 bytes
 .../X64RELEASE/X64/PchS3SupportDxe.inf        |   251 +
 .../X64RELEASE/X64/PchSmbusDxe.depex          |     1 +
 .../X64RELEASE/X64/PchSmbusDxe.efi            |   Bin 0 -> 6848 bytes
 .../X64RELEASE/X64/PchSmbusDxe.inf            |   206 +
 .../X64RELEASE/X64/PchSmiDispatcher.depex     |   Bin 0 -> 72 bytes
 .../X64RELEASE/X64/PchSmiDispatcher.efi       |   Bin 0 -> 17920 bytes
 .../X64RELEASE/X64/PchSmiDispatcher.inf       |   175 +
 .../X64RELEASE/X64/PchSpiRuntime.depex        |     1 +
 .../X64RELEASE/X64/PchSpiRuntime.efi          |   Bin 0 -> 13312 bytes
 .../X64RELEASE/X64/PchSpiRuntime.inf          |   252 +
 .../X64RELEASE/X64/PchSpiSmm.depex            |     1 +
 .../X64RELEASE/X64/PchSpiSmm.efi              |   Bin 0 -> 11776 bytes
 .../X64RELEASE/X64/PchSpiSmm.inf              |   245 +
 .../X64RELEASE/X64/PciHostBridge.depex        |   Bin 0 -> 54 bytes
 .../X64RELEASE/X64/PciHostBridge.efi          |   Bin 0 -> 21152 bytes
 .../X64RELEASE/X64/PciHostBridge.inf          |   248 +
 .../X64RELEASE/X64/PlatformCpuPolicy.depex    |   Bin 0 -> 72 bytes
 .../X64RELEASE/X64/PlatformCpuPolicy.efi      |   Bin 0 -> 9344 bytes
 .../X64RELEASE/X64/PlatformCpuPolicy.inf      |   216 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.depex |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.efi   |   Bin 0 -> 10080 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf   |   200 +
 .../X64RELEASE/X64/PowerManagement2.depex     |     1 +
 .../X64RELEASE/X64/PowerManagement2.efi       |   Bin 0 -> 21504 bytes
 .../X64RELEASE/X64/PowerManagement2.inf       |   264 +
 .../X64RELEASE/X64/SataController.efi         |   Bin 0 -> 4064 bytes
 .../X64RELEASE/X64/SataController.inf         |   195 +
 .../X64RELEASE/X64/SmmAccess.depex            |   Bin 0 -> 36 bytes
 .../X64RELEASE/X64/SmmAccess.efi              |   Bin 0 -> 2208 bytes
 .../X64RELEASE/X64/SmmAccess.inf              |   198 +
 .../X64RELEASE/X64/SmmControl.depex           |     1 +
 .../X64RELEASE/X64/SmmControl.efi             |   Bin 0 -> 3584 bytes
 .../X64RELEASE/X64/SmmControl.inf             |   122 +
 .../X64RELEASE/X64/VlvInitDxe.depex           |   Bin 0 -> 126 bytes
 .../X64RELEASE/X64/VlvInitDxe.efi             |   Bin 0 -> 19328 bytes
 .../X64RELEASE/X64/VlvInitDxe.inf             |   253 +
 451 files changed, 128555 insertions(+)
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/IntelGopDriver.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/IntelGopDriver.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/Vbt.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/vbt.bsf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.com
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.com
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130673321.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130678806.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679901.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679906.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679907.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M023067221D.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0F30679909.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/MicrocodeUpdates.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/E7006X3.EFI
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/RtkUndiDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/RtkUndiDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.com
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.com
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.inf

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/IntelGopDriver.efi b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/IntelGopDriver.efi
new file mode 100644
index 0000000000000000000000000000000000000000..285f092fc20963aba5ae6be83d80b503df544375
GIT binary patch
literal 60192
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/IntelGopDriver.efi b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/IntelGopDriver.efi
new file mode 100644
index 0000000000000000000000000000000000000000..3237db26f8ffd2d25097673a0c7e196722d70a17
GIT binary patch
literal 75008
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/Vbt.bin b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/Vbt.bin
new file mode 100644
index 0000000000000000000000000000000000000000..6b88c70142d137a2c0ab6487394e47c2ec8ade7c
GIT binary patch
literal 4096
zcmeHJL2TSa6#cf>p7GRSo!LT{ZMt$>7?RMmCcx4|Q70*lNC|XTG+{ZQY*7M2g3^iu
zK|+cv<&d860nx$%7I6T=C5RK^z=2B<m%srDaS1|5RS_rPSeZX#Z)vkEwU8>MD1W8d
zKjZ(O|9}6_jPIHmKM~A~O-&trdS>$IQvnLhK?n~NPvO`t<CDjqoPA{M#Mtck)bS&a
z1z*A)P$(KUYy&Xh$|yhqKq?(*xA#A+_+Xv`6P<Q<>?N4m4(GTGU<ME%96+Q76ltUe
z1i)5v(}zH>6yUp-TDYYBbP(Erpn*n^8w}7(n-YA5MzGM#RT!iAyLlt~1{lI?Ns?P#
z^Ga|Gd9>)EXh7#O4UnAgvtR+3zXU!gR?}+APOks{Ptk=!fr7-*z=DI!N{ToZHGmd?
zN-zpwNGNnbl~<1!^>>;JfP0{OA&a0CKrwBno*`|27o1AZr<>qGMJ2GaY^)ImYvd1O
zxwJX8{8S}Le<t~TdRq?E;CnZUgY{iLZS6_zs(Drh%Xk*OavktWCPQz6^?@zEw)u}X
z`^6U99KOq8_c-ElhtE3f1xLK$@b?||i6g#s_|Fde%@HNS?<VX35z~Y}PuLkE&J+GI
zVV@E41L40C_9qcLDIcNiAu67s{AJ2sqvAcvKc(yoDt@B;cgn6%vDf7fy6mtk=3V}(
z%g(yuLzjQ<vaj5}VbhMx^=ljay68KTB<W7SwrHd~!wanD4YmYs@T6S~;J)TSFc@vm
zD6K7;$QO#Ij)Ts-di^KK+?^oDK!oMxT543TEn2Cghevy7%l87n7{Xz=(11{er%S0-
zwYHc!dJA?X7s5i&sQA*q2EmB+wUHCyqXP@;jf#-X3xCI8#Ey!`lg?_67#=+=!)I4V
zrNom|3ufT}UT=s{xAQRh-0qo`22{g|IID$XGS-J4hLVSe*Z0TmR;4P#Agcw&P>5X}
zLqzgqF?c9ypI+UI2*WxFP_>BlJ?FLUr5ye6&QN=;v9u?wzrEusf~CGJG?RG{!eM!_
zwKNx&8yW2wgN5y=5dLFNYJ|QN!47g{ak&ERdaxt(!XwHH6c1K>o6@|99L&)VmmiMG
zXAX|Y=15g}r3g?|nuiylZY?$GB}p<Qp%p=?<@^1qk<P+bx;HgZpRJ!fHUHuhCtsTX
zA56Mgxc4kL$1VaiS8m>zY!GvU?7JP#O<-t~_@y@ub^NH_XS@ZMto^G1%U9)=Q192L
YKuUAXxZw`yuE*BO76V%hY)S_H0_g|%5C8xG

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/vbt.bsf b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/vbt.bsf
new file mode 100644
index 0000000..c8d2daf
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/vbt.bsf
@@ -0,0 +1,9216 @@
+;    TITLE    BMP.bsf - BMP Scrip File for Video BIOS

+;==============================================================================

+; Advance Graphics ROM BIOS

+;------------------------------------------------------------------------------

+; Copyright (c) Intel Corporation (2000 - 2011).

+;

+; INTEL MAKES NO WARRANTY OF ANY KIND REGARDING THE CODE. THIS CODE IS

+; LICENSED ON AN "AS IS" BASIS AND INTEL WILL NOT PROVIDE ANY SUPPORT,

+; ASSISTANCE, INSTALLATION, TRAINING OR OTHER SERVICES.

+; INTEL DOES NOT PROVIDE ANY UPDATES, ENHANCEMENTS OR EXTENSIONS.

+; INTEL SPECIFICALLY DISCLAIMS ANY WARRANTY OF MERCHANTABILITY,

+; NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY OTHER

+; WARRANTY.

+;

+; Intel disclaims all liability, including liability for infringement of

+; any proprietary rights, relating to use of the code. No license, express

+; or implied, by estoppel or otherwise, to any intellectual property rights

+; is granted herein.

+;

+; File Description:

+;    This file is the script file use by the BMP utility which will allow

+;    OEM's to edit data and select features on a binary file.

+;

+;------------------------------------------------------------------------------

+

+

+;==============================================================================

+; Header - Start of BMP Structure Definition

+;------------------------------------------------------------------------------

+

+StructDef

+

+Find			"BIOS_DATA_BLOCK "

+

+			; The following block will determine the reference

+			; pointer for all table pointer variables.

+

+Find_Ptr_Ref		"BIOS_DATA_BLOCK" ; Reference to beginning of VB VBT data

+

+$BDB_Ver		2 bytes		; BIOS Data Block version number (decimal, e.g.201 = 02.01) 

+$BDB_Header_Size	2 bytes		; BIOS Data Block Header size

+$BDB_Size		2 bytes		; BIOS Data Block size 

+

+;==============================================================================

+; Block 1 - General Bit Definitions

+;------------------------------------------------------------------------------

+

+SKIP               3 bytes              ; Skip block ID and size

+

+        ;

+        ; bmp_Bits_1

+	   ;

+

+$Enable_Panel_Fitting 2 bits            ; Enable / Disable panel fitting

+$Flexaim_Support   1 bit                ; Enable / Disable Flex-aim support

+$Msg_Enable        1 bit                ; Disable signon and copyright

+$Cls_After_Signon  3 bits               ; Clear screen after display message and pause

+$bmp_DVO_A_Color_Flip 1 bit             ; Flat color flip

+ALIGN

+

+        ;

+        ; bmp_Bits_2

+	   ;

+$Download_Ext_VBT  		1 bit                ; Download external VBT flag

+$Enable_SSC        		1 bit                ; Enable/Disable SSC

+$SSC_Freq          		1 bit                ; SSC Frequency

+$Enable_LFPOn_Override  1 bit            ; Enable/Disable LFP ON Override

+$Disable_SSC_DDT   		1 bit                ; Disable SSC in Dual Display Twin

+$Override_VGA_720p 		1 bit           ; Enable/Disable Override 720p for VGA modes

+$Enable_Dynamic_CDClock 1 bit           ; Enables Dynamic CD clock feature

+$Hotplug_Support_Enb 	1 bit              ; Hot Plug support in DOS

+

+ALIGN

+        ;

+        ; bmp_Bits_3

+        ;   

+SKIP							2 bits

+$180_Deg_Rotation_Enable      	1 bit		 ; 180 Degree Rotation Enable bit

+SKIP               				5 bits

+ALIGN

+

+$bmp_Legacy_Monitor_Detect 1 bit        ; Use legacy monitor detect algorithm

+SKIP               7 bits

+ALIGN

+

+            ;

+            ; Int_Displays_Support

+            ;

+$Int_CRT_Support   1 bit                 ; Integrated CRT support

+$Int_TV_Support    1 bit                 ; Integrated TV support

+$Int_EFP_Support   1 bit                 ; Integrated EFP support

+$DP_SSC_Enb        1 bit                 ; DP SSC Enable bit

+$DP_SSC_Freq       1 bit                 ; DP SSC Frequency bit

+$DP_SSC_Dongle_Enb 1 bit                 ; DP SSC dongle Enable/Disable

+SKIP               2 bits

+

+ALIGN

+

+

+;==============================================================================

+; Block 253 - PRD Boot Algorithm Table

+;------------------------------------------------------------------------------

+

+SKIP			3 bytes		; Skip block ID and size

+

+SKIP                        1 byte

+$ChildDevice1Primary        1 byte

+$ChildDevice1Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice2Primary        1 byte

+$ChildDevice2Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice3Primary        1 byte

+$ChildDevice3Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice4Primary        1 byte

+$ChildDevice4Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice5Primary        1 byte

+$ChildDevice5Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice6Primary        1 byte

+$ChildDevice6Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice7Primary        1 byte

+$ChildDevice7Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice8Primary        1 byte

+$ChildDevice8Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice9Primary        1 byte

+$ChildDevice9Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice10Primary       1 byte

+$ChildDevice10Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice11Primary       1 byte

+$ChildDevice11Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice12Primary       1 byte

+$ChildDevice12Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice13Primary       1 byte

+$ChildDevice13Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice14Primary       1 byte

+$ChildDevice14Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice15Primary       1 byte

+$ChildDevice15Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice16Primary       1 byte

+$ChildDevice16Secondary     1 byte

+

+SKIP                        2 bytes        ; No of entries

+

+;==============================================================================

+; Block 2 - General Data Definitions

+;------------------------------------------------------------------------------

+

+SKIP               3 bytes              ; Skip block ID and size

+

+$CRT_DDC_GMBUS_Pin 1 byte               ; CRT DDC GMBUS pin pair

+

+$DPMS_ACPI_Bit     1 bit                ; Apply ACPI DPMS CRT Power States

+$Skip_Boot_CRT_Detect 1 bit             ; Disable/Enable skip boot CRT detect

+$DPMS_AIM_Bit      1 bit                ; Apply DPMS to AIM devices

+SKIP               5 bits

+ALIGN

+

+

+$Boot_Display      2 bytes              ; Boot display type

+$size_ChildStruc   1 byte

+

+

+$Int_LFP1_DID      2 bytes              ; Skip Device Handle

+$Int_LFP1_Type     2 bytes              ; Device type

+SKIP               7 bytes              ; Skip

+SKIP               1 byte               ; Skip

+$Int_LFP1_Priority 1 byte                ; primary/secondary panel select

+ALIGN

+SKIP               3 bytes              ; Skip

+$Int_LFP1_Port     1 byte               ; eDP port select

+SKIP               2 bytes              ; Skip remaining Data structure

+$Int_LFP1_DDC_Pin 1 byte               ; LFP DDC GMBUS pin pair

+SKIP               5 bytes

+$Int_LFP1_AUX_Channel 1 byte            ; DP AUX channel

+SKIP               7 bytes

+

+

+$Int_LFP2_DID      2 bytes              ; Skip Device Handle

+$Int_LFP2_Type     2 bytes              ; Device type

+SKIP               7 bytes              ; Skip

+SKIP               1 byte               ; Skip

+$Int_LFP2_Priority 8 bits                ; primary/secondary panel select

+ALIGN

+SKIP               3 bytes              ; Skip

+$Int_LFP2_Port      1 byte               ; eDP port select

+SKIP               2 bytes              ; Skip remaining Data structure

+$Int_LFP2_DDC_Pin 1 byte               ; LFP DDC GMBUS pin pair

+SKIP               5 bytes

+$Int_LFP2_AUX_Channel 1 byte            ; DP AUX channel

+SKIP               7 bytes

+

+

+$Int_EFP1_DID      2 bytes              ; Skip Device Handle

+$Int_EFP1_Type     2 bytes              ; Device type

+SKIP               1 byte              ; Skip I2C Speed

+$EFP1_OnBoard_PreEmph_Level     3 bits		; EFP1 On Board Dp Redriver PreEmphasis Level

+$EFP1_OnBoard_VSwing_Level      3 bits		; EFP1 On Board Dp Redriver VSwing Level

+$EFP1_OnBoard_Redriver_Present  1 bit		; Is OnBoard Redriver Present for EFP1

+SKIP							1 bit		; Reserved

+$EFP1_OnDock_PreEmph_Level     3 bits		; EFP1 On Dock Dp Redriver PreEmphasis Level

+$EFP1_OnDock_VSwing_Level      3 bits		; EFP1 On Dock Dp Redriver VSwing Level

+$EFP1_OnDock_Redriver_Present  1 bit		; Is On Dock Redriver Present for EFP1

+SKIP							1 bit		; Reserved

+$Int_EFP1_HDMI_LS_Type			5 bits		; HDMI Level shifter configuration

+SKIP					3 bits		; Reserved

+ALIGN

+SKIP					2 bytes		; Skip EDIDless DTD offset

+$EFP1_EDIDless_en			1 bit		; EDIDless enable bit

+SKIP					7 bits		; Skip remaining bits

+SKIP					3 bytes		; Skip Reserved_1

+SKIP					2 bytes		; skip Addin module table offset

+$Int_EFP1_Port     1 byte               ; EFP1 port

+SKIP               2 bytes              ; Skip

+$Int_EFP1_DDC_Pin  1 byte               ; EFP1 DDC Pin

+SKIP               3 bytes

+$Int_EFP1_Docked_Port  1 bit            ; HDMI/DP Docked Port

+SKIP 				   1 bit			; Skip Enabling Lane Reversal Bit

+SKIP			 	   6 bits			; Reserved

+$Int_EFP1_HDMI_Compat 1 bit             ; HDMI combatibility

+$Int_EFP1_Conn_Info 3 bits              ; Connector information

+SKIP               4 bits

+$Int_EFP1_AUX_Channel 1 byte            ; DP AUX channel

+$Int_EFP1_Dongle_Detect 1 byte          ; Dongle Detect

+SKIP               6 bytes              ; Skip

+

+$Int_EFP2_DID      2 bytes              ; Skip Device Handle

+$Int_EFP2_Type     2 bytes              ; Device type

+SKIP               1 byte              ; Skip I2C Speed

+$EFP2_OnBoard_PreEmph_Level     3 bits		; EFP2 On Board Dp Redriver PreEmphasis Level

+$EFP2_OnBoard_VSwing_Level      3 bits		; EFP2 On Board Dp Redriver VSwing Level

+$EFP2_OnBoard_Redriver_Present  1 bit		; Is OnBoard Redriver Present for EFP2

+SKIP							1 bit		; Reserved

+$EFP2_OnDock_PreEmph_Level     3 bits		; EFP2 On Dock Dp Redriver PreEmphasis Level

+$EFP2_OnDock_VSwing_Level      3 bits		; EFP2 On Dock Dp Redriver VSwing Level

+$EFP2_OnDock_Redriver_Present  1 bit		; Is On Dock Redriver Present for EFP2

+SKIP							1 bit		; Reserved

+$Int_EFP2_HDMI_LS_Type			5 bits		; HDMI Level shifter configuration

+SKIP					3 bits		; Reserved

+ALIGN

+SKIP					2 bytes		; Skip EDIDless DTD offset

+$EFP2_EDIDless_en			1 bit		; EDIDless enable bit

+SKIP					7 bits		; Skip remaining bits

+SKIP					3 bytes		; Skip Reserved_1

+SKIP					2 bytes		; skip Addin module table offset

+$Int_EFP2_Port     1 byte               ; EFP1 port

+SKIP               2 bytes              ; Skip

+$Int_EFP2_DDC_Pin  1 byte               ; EFP1 DDC Pin

+SKIP               3 bytes

+$Int_EFP2_Docked_Port 1 bit            ; HDMI/DP Docked Port

+SKIP 				  1 bit			; Skip Enabling Lane Reversal Bit

+SKIP 				  6 bits			; Reserved

+$Int_EFP2_HDMI_Compat 1 bit             ; HDMI combatibility

+$Int_EFP2_Conn_Info 3 bits              ; Connector information

+SKIP               4 bits

+$Int_EFP2_AUX_Channel 1 byte            ; DP AUX channel

+$Int_EFP2_Dongle_Detect 1 byte          ; Dongle Detect

+SKIP               6 bytes              ; Skip

+

+;==============================================================================

+; Block 3 - Original Display Toggle List

+;------------------------------------------------------------------------------

+

+SKIP			3 bytes		; Skip block ID and size

+

+$bmp_Display_Detect	1 byte		; Display must be attached or not

+

+;==============================================================================

+; Block 9 - PSR Feature Table

+;------------------------------------------------------------------------------

+

+SKIP			3 bytes		; Skip block ID and size

+

+SKIP			96 bytes	     ; PSR Table data

+

+;==============================================================================

+	  

+	  

+;==============================================================================

+; Block 10 - Modes Removal Table.

+;------------------------------------------------------------------------------

+

+SKIP            	3 bytes        ; Skip block ID and size

+SKIP				1 byte		   ; Skip EntrySize

+$Mode_Rem_Table    	200 bytes      ; Mode Removal Table

+SKIP 				2 bytes		   ; Skip Terminator

+

+;==============================================================================

+; Block 12 - Driver default boot display

+;------------------------------------------------------------------------------ 

+

+SKIP               3 bytes        ; Skip block ID and size

+$Driver_Boot_Device    1 bit

+$Block_Disp_Switch    1 bit

+$Allow_FDOS_Disp_Switch 1 bit        ; Allow FS DOS display switching

+$Hot_Plug_DVO        1 bit

+$Dual_View_Zoom        1 bit

+$Drv_Int15_hook        1 bit

+$DVD_Sprite_Clone    1 bit

+$Use_110h_for_LFP    1 bit 

+ALIGN

+

+$Driver_Boot_Mode_X    2 bytes        ; X resolution

+$Driver_Boot_Mode_Y    2 bytes        ; Y resolution

+$Driver_Boot_Mode_BPP     1 byte        ; Pixel depth

+$Driver_Boot_Mode_RR      1 byte        ; Refresh rate

+; bmp_Ext_Driver_Bits

+

+$Enable_LFP_Primary    1 bit

+$GTF_Mode_Pruning    1 bit

+SKIP            1 bit        ; DISABLE_DFGT

+SKIP            1 bit        ; DISABLE_DFGT

+$NT4_Dual_Dsp_Clone_Spt 1 bit        ; Dual display clone support for NT4

+$Default_Power_Scheme    1 bit

+$Sprite_Display_Assign    1 bit        ; Sprite Display Assignment for when Overlay is Active in Clone Mode

+$CUI_Maintain_Aspect    1 bit        ; Display "Maintain Aspect Ratio" via CUI

+$Preserve_Aspect_Ratio    1 bit        ; Preserve Aspect Ratio

+$SDVO_Device_Power_Down    1 bit        ; SDVO device power down

+$Hot_Plug_CRT        1 bit        ; CRT hot plug

+$LVDS_Config        2 bits        ; LVDS configuration

+$Hot_Plug_TV        1 bit        ; Hot plug TV enable/disable

+$INT_HDMI_Config    2 bits        ; Integrated HDMI Configuration

+ALIGN

+

+			; bmp_Driver_Flags_1

+

+$CUIHotK_Static_Display    1 bit

+SKIP               7 bits

+$Legacy_Monitor_Max_X    2 bytes

+$Legacy_Monitor_Max_Y    2 bytes

+$Legacy_Monitor_Max_RR    1 bytes

+ALIGN

+

+; bmp_Ext2_Driver_Bits

+

+$Enable_Int_Src_Term    1 bit        ; Enable Internal Source Termination for HDMI

+SKIP               7 bits

+ALIGN

+

+$VBT_Customization_Version 1 byte    ; Customization VBT version number

+ALIGN

+

+			; bmp_Driver_Feature_Flags

+

+SKIP               		5 bits

+$PM_DRRS_Enable			1 bit		; Intel � Display Refresh Rate Switching (DRRS) Enable/Disable Flag.

+SKIP					3 bits

+$Panel_Self_Refresh     1 bit       ; Panel Self refresh feature (PSR)

+SKIP               		2 bits

+$DMRRS             		1 bit       ; Dynamic Media Refresh Rate Enable/Disable

+SKIP               		3 bits

+

+;==============================================================================

+; Block 13 - Driver Persistence Algorithm

+;------------------------------------------------------------------------------

+

+SKIP                  3 bytes        ; Skip block ID and size

+

+$Driver_Persist_Hotkey          1 bit

+$Driver_Persist_Lid_Switch    1 bit

+$Driver_Persist_PM          1 bit

+$PersistHotkeyRestoreCloneMDS     1 bit

+$PersistHotkeyRestoreRefreshrate 1 bit

+$PersistHotkeyRestorePipe    1 bit

+$PersistHotkeyRestoreMode    1 bit

+$PersistEDIDRestoreMode        1 bit

+$PersistHotPlugRestoreMode    1 bit

+$Driver_Persist_Docking        1 bit

+SKIP                   6 bits

+ALIGN

+$PersistMaxConfig        1 byte

+

+;==============================================================================

+; Block 16 - VBIOS/Driver Toggle list, capabilities tables

+;------------------------------------------------------------------------------

+

+SKIP        		     3 bytes     ; Skip block ID and size

+SKIP					 3 bytes	 ; Skip number of entries and entry size

+$Toggle_List1            48 bytes    ; Toggle list 1

+SKIP					 3 bytes	 ; Skip number of entries and entry size

+$Toggle_List2            24 bytes    ; Toggle list 2

+SKIP					 3 bytes	 ; Skip number of entries and entry size

+$Toggle_List3            24 bytes    ; Toggle list 3

+SKIP				 	 3 bytes	 ; Skip number of entries and entry size

+$Toggle_List4            24 bytes    ; Toggle list 4

+ALIGN

+

+;==============================================================================

+; Block 17 - Test Feature

+;------------------------------------------------------------------------------

+

+SKIP            3 bytes        ; Skip block ID and size

+

+$SV_Dis_Arbiter        1 bit        ; Disable VGA fast arbiter

+$SV_Setmode_No_DVO    1 bit        ; Do Setmode without reprogramming DVO

+$SV_Special_GMBus    1 bit        ; Special GMBus support

+$SV_Wait_Timeout_Hang    1 bit

+SKIP            4 bits

+ALIGN

+SKIP            7 bytes        ; Skip reserved space

+

+

+;==============================================================================

+; Block 18 - Driver Rotation Configuration

+;------------------------------------------------------------------------------

+

+SKIP            				3 bytes      ; Skip block ID and size

+$Rotation_Support_Enable        1 bit        ; Driver Rotation Feature Support bit

+SKIP           		 			7 bits        

+$Rot_Flags        				1 byte

+SKIP            				10 bytes 

+

+

+;==============================================================================

+; Block 19 - Removed Display Configurations

+;------------------------------------------------------------------------------

+

+SKIP           			3  bytes        ; Skip block ID and size

+SKIP            		2  bytes        ; Table Row/Size Data

+$Dev_Removed_Table		30  bytes       ; Removed displays table

+

+;==============================================================================

+; Block 20 - OEM Customizable Modes

+;------------------------------------------------------------------------------

+

+SKIP            3  bytes        ; Skip ID

+SKIP            2  bytes        ; Table Row/Size Data

+

+$OEM_Mode_Flags1    1 byte

+$OEM_Display_Flags1    1 byte

+$OEM_Mode_X1        2 bytes

+$OEM_Mode_Y1        2 bytes

+$OEM_Mode_Color1    1 byte

+$OEM_Mode_RRate1    1 byte

+$OEM_Mode_DTD1        18 bytes

+

+$OEM_Mode_Flags2    1 byte

+$OEM_Display_Flags2    1 byte

+$OEM_Mode_X2        2 bytes

+$OEM_Mode_Y2        2 bytes

+$OEM_Mode_Color2    1 byte

+$OEM_Mode_RRate2    1 byte

+$OEM_Mode_DTD2        18 bytes

+

+$OEM_Mode_Flags3    1 byte

+$OEM_Display_Flags3    1 byte

+$OEM_Mode_X3        2 bytes

+$OEM_Mode_Y3        2 bytes

+$OEM_Mode_Color3    1 byte

+$OEM_Mode_RRate3    1 byte

+$OEM_Mode_DTD3        18 bytes

+

+$OEM_Mode_Flags4    1 byte

+$OEM_Display_Flags4    1 byte

+$OEM_Mode_X4        2 bytes

+$OEM_Mode_Y4        2 bytes

+$OEM_Mode_Color4    1 byte

+$OEM_Mode_RRate4    1 byte

+$OEM_Mode_DTD4        18 bytes

+

+$OEM_Mode_Flags5    1 byte

+$OEM_Display_Flags5    1 byte

+$OEM_Mode_X5        2 bytes

+$OEM_Mode_Y5        2 bytes

+$OEM_Mode_Color5    1 byte

+$OEM_Mode_RRate5    1 byte

+$OEM_Mode_DTD5        18 bytes

+

+$OEM_Mode_Flags6    1 byte

+$OEM_Display_Flags6    1 byte

+$OEM_Mode_X6        2 bytes

+$OEM_Mode_Y6        2 bytes

+$OEM_Mode_Color6    1 byte

+$OEM_Mode_RRate6    1 byte

+$OEM_Mode_DTD6        18 bytes

+

+;==============================================================================

+; Block 26 - TV Options

+;------------------------------------------------------------------------------

+

+SKIP			3  bytes	; Skip ID and size

+$Under_Over_Scan_Via_YPrPb 2 bits	; Underscan/overscan for HDTV via YPrPb

+SKIP			10 bits

+$Under_Over_Scan_Via_DVI 2 bits		; Underscan/overscan for HDTV via DVI

+$Add_Overscan_Mode 	1 bit		; Add modes to avoid overscan issue

+$D_Connector		1 bit		; D-Connector Support

+ALIGN

+      

+;==============================================================================

+; Block #27 - eDP Power Sequencing

+;------------------------------------------------------------------------------

+SKIP            3 bytes        ; Skip block ID and size

+

+	; Panel#1 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_01				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_01		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_01	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_01		2 bytes

+$eDP_PowerCycle_Delay_01 				2 bytes

+

+	; Panel#2 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_02				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_02		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_02	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_02		2 bytes

+$eDP_PowerCycle_Delay_02 				2 bytes

+

+	; Panel#3 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_03				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_03		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_03	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_03		2 bytes

+$eDP_PowerCycle_Delay_03 				2 bytes

+

+	; Panel#4 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_04				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_04		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_04	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_04		2 bytes

+$eDP_PowerCycle_Delay_04 				2 bytes

+

+	; Panel#5 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_05				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_05		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_05	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_05		2 bytes

+$eDP_PowerCycle_Delay_05 				2 bytes

+

+	; Panel#6 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_06				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_06		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_06	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_06		2 bytes

+$eDP_PowerCycle_Delay_06 				2 bytes

+

+	; Panel#7 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_07				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_07		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_07	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_07		2 bytes

+$eDP_PowerCycle_Delay_07 				2 bytes

+

+	; Panel#8 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_08				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_08		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_08	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_08		2 bytes

+$eDP_PowerCycle_Delay_08 				2 bytes

+

+	; Panel#9 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_09				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_09		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_09	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_09		2 bytes

+$eDP_PowerCycle_Delay_09				2 bytes

+

+	; Panel#10 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_10				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_10		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_10	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_10		2 bytes

+$eDP_PowerCycle_Delay_10 				2 bytes

+

+	; Panel#11 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_11				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_11		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_11	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_11		2 bytes

+$eDP_PowerCycle_Delay_11 				2 bytes

+

+	; Panel#12 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_12				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_12		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_12	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_12		2 bytes

+$eDP_PowerCycle_Delay_12 				2 bytes

+

+	; Panel#13 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_13				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_13		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_13	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_13		2 bytes

+$eDP_PowerCycle_Delay_13 				2 bytes

+

+	; Panel#14 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_14				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_14		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_14	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_14		2 bytes

+$eDP_PowerCycle_Delay_14 				2 bytes

+

+	; Panel#15 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_15				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_15		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_15	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_15		2 bytes

+$eDP_PowerCycle_Delay_15 				2 bytes

+

+	; Panel#16 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_16				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_16		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_16	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_16		2 bytes

+$eDP_PowerCycle_Delay_16 				2 bytes

+

+$eDP_Panel_Color_Depth_01    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_02    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_03    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_04    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_05    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_06    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_07    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_08    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_09    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_10    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_11    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_12    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_13    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_14    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_15    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_16    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+

+$eDP_Link_DataRate_01        4 bits    ; Panel #1 Link Data Rate

+$eDP_Link_LaneCount_01       4 bits    ; Panel #1 Link Lane Count

+$eDP_Link_PreEmp_Level_01    4 bits    ; Panel #1 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_01    4 bits    ; Panel #1 Link Voltage Swing Level

+

+$eDP_Link_DataRate_02        4 bits    ; Panel #2 Link Data Rate

+$eDP_Link_LaneCount_02       4 bits    ; Panel #2 Link Lane Count

+$eDP_Link_PreEmp_Level_02    4 bits    ; Panel #2 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_02    4 bits    ; Panel #2 Link Voltage Swing Level

+

+$eDP_Link_DataRate_03        4 bits    ; Panel #3 Link Data Rate

+$eDP_Link_LaneCount_03       4 bits    ; Panel #3 Link Lane Count

+$eDP_Link_PreEmp_Level_03    4 bits    ; Panel #3 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_03    4 bits    ; Panel #3 Link Voltage Swing Level

+

+$eDP_Link_DataRate_04        4 bits    ; Panel #4 Link Data Rate    

+$eDP_Link_LaneCount_04       4 bits     ; Panel #4 Link Lane Count    

+$eDP_Link_PreEmp_Level_04    4 bits    ; Panel #4 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_04    4 bits    ; Panel #4 Link Voltage Swing Level

+

+$eDP_Link_DataRate_05        4 bits    ; Panel #5 Link Data Rate

+$eDP_Link_LaneCount_05       4 bits    ; Panel #5 Link Lane Count

+$eDP_Link_PreEmp_Level_05    4 bits    ; Panel #5 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_05    4 bits    ; Panel #5 Link Voltage Swing Level

+

+$eDP_Link_DataRate_06        4 bits    ; Panel #6 Link Data Rate

+$eDP_Link_LaneCount_06       4 bits    ; Panel #6 Link Lane Count

+$eDP_Link_PreEmp_Level_06    4 bits    ; Panel #6 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_06    4 bits    ; Panel #6 Link Voltage Swing Level

+

+$eDP_Link_DataRate_07        4 bits    ; Panel #7 Link Data Rate

+$eDP_Link_LaneCount_07       4 bits    ; Panel #7 Link Lane Count

+$eDP_Link_PreEmp_Level_07    4 bits    ; Panel #7 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_07    4 bits    ; Panel #7 Link Voltage Swing Level

+

+$eDP_Link_DataRate_08        4 bits    ; Panel #8 Link Data Rate

+$eDP_Link_LaneCount_08       4 bits    ; Panel #8 Link Lane Count

+$eDP_Link_PreEmp_Level_08    4 bits    ; Panel #8 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_08    4 bits    ; Panel #8 Link Voltage Swing Level

+

+$eDP_Link_DataRate_09        4 bits    ; Panel #9 Link Data Rate

+$eDP_Link_LaneCount_09       4 bits    ; Panel #9 Link Lane Count

+$eDP_Link_PreEmp_Level_09    4 bits    ; Panel #9 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_09    4 bits    ; Panel #9 Link Voltage Swing Level

+

+$eDP_Link_DataRate_10        4 bits    ; Panel #10 Link Data Rate

+$eDP_Link_LaneCount_10       4 bits    ; Panel #10 Link Lane Count

+$eDP_Link_PreEmp_Level_10    4 bits    ; Panel #10 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_10    4 bits    ; Panel #10 Link Voltage Swing Level

+

+$eDP_Link_DataRate_11        4 bits    ; Panel #11 Link Data Rate

+$eDP_Link_LaneCount_11       4 bits    ; Panel #11 Link Lane Count

+$eDP_Link_PreEmp_Level_11    4 bits    ; Panel #11 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_11    4 bits    ; Panel #11 Link Voltage Swing Level

+

+$eDP_Link_DataRate_12        4 bits    ; Panel #12 Link Data Rate

+$eDP_Link_LaneCount_12       4 bits    ; Panel #12 Link Lane Count

+$eDP_Link_PreEmp_Level_12    4 bits    ; Panel #12 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_12    4 bits    ; Panel #12 Link Voltage Swing Level

+

+$eDP_Link_DataRate_13        4 bits    ; Panel #13 Link Data Rate

+$eDP_Link_LaneCount_13       4 bits    ; Panel #13 Link Lane Count

+$eDP_Link_PreEmp_Level_13    4 bits    ; Panel #13 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_13    4 bits    ; Panel #13 Link Voltage Swing Level

+

+$eDP_Link_DataRate_14        4 bits    ; Panel #14 Link Data Rate

+$eDP_Link_LaneCount_14       4 bits    ; Panel #14 Link Lane Count

+$eDP_Link_PreEmp_Level_14    4 bits    ; Panel #14 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_14    4 bits    ; Panel #14 Link Voltage Swing Level

+

+$eDP_Link_DataRate_15        4 bits    ; Panel #15 Link Data Rate

+$eDP_Link_LaneCount_15       4 bits    ; Panel #15 Link Lane Count

+$eDP_Link_PreEmp_Level_15    4 bits    ; Panel #15 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_15    4 bits    ; Panel #15 Link Voltage Swing Level

+

+$eDP_Link_DataRate_16        4 bits    ; Panel #16 Link Data Rate

+$eDP_Link_LaneCount_16       4 bits    ; Panel #16 Link Lane Count

+$eDP_Link_PreEmp_Level_16    4 bits    ; Panel #16 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_16    4 bits    ; Panel #16 Link Voltage Swing Level

+

+$eDP_sDRRS_MSA_Delay_01        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_02        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_03        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_04        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_05        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_06        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_07        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_08        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_09        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_10        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_11        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_12        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_13        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_14        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_15        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_16        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+

+SKIP            2 bytes        ; S3D Feature

+$eDP_T3_Optimization_01	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #01

+$eDP_T3_Optimization_02	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #02

+$eDP_T3_Optimization_03	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #03

+$eDP_T3_Optimization_04	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #04

+$eDP_T3_Optimization_05	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #05

+$eDP_T3_Optimization_06	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #06

+$eDP_T3_Optimization_07	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #07

+$eDP_T3_Optimization_08	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #08

+$eDP_T3_Optimization_09	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #09

+$eDP_T3_Optimization_10	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #10

+$eDP_T3_Optimization_11	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #11

+$eDP_T3_Optimization_12	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #12

+$eDP_T3_Optimization_13	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #13

+$eDP_T3_Optimization_14	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #14

+$eDP_T3_Optimization_15	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #15

+$eDP_T3_Optimization_16	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #16

+

+$eDP_VswingPreEmph_1       4 bits; eDp selects Vswing Preemph table for panel #1

+$eDP_VswingPreEmph_2       4 bits; eDp selects Vswing Preemph table for panel #2

+$eDP_VswingPreEmph_3       4 bits; eDp selects Vswing Preemph table for panel #3

+$eDP_VswingPreEmph_4       4 bits; eDp selects Vswing Preemph table for panel #4

+$eDP_VswingPreEmph_5       4 bits; eDp selects Vswing Preemph table for panel #5

+$eDP_VswingPreEmph_6       4 bits; eDp selects Vswing Preemph table for panel #6

+$eDP_VswingPreEmph_7       4 bits; eDp selects Vswing Preemph table for panel #7

+$eDP_VswingPreEmph_8       4 bits; eDp selects Vswing Preemph table for panel #8

+$eDP_VswingPreEmph_9       4 bits; eDp selects Vswing Preemph table for panel #9

+$eDP_VswingPreEmph_10       4 bits; eDp selects Vswing Preemph table for panel #10

+$eDP_VswingPreEmph_11       4 bits; eDp selects Vswing Preemph table for panel #11

+$eDP_VswingPreEmph_12       4 bits; eDp selects Vswing Preemph table for panel #12

+$eDP_VswingPreEmph_13       4 bits; eDp selects Vswing Preemph table for panel #13

+$eDP_VswingPreEmph_14       4 bits; eDp selects Vswing Preemph table for panel #14

+$eDP_VswingPreEmph_15       4 bits; eDp selects Vswing Preemph table for panel #15

+$eDP_VswingPreEmph_16       4 bits; eDp selects Vswing Preemph table for panel #16

+

+$Fast_Link_Training_Supported_01 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #1

+$Fast_Link_Training_Supported_02 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #2 

+$Fast_Link_Training_Supported_03 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #3

+$Fast_Link_Training_Supported_04 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #4

+$Fast_Link_Training_Supported_05 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #5

+$Fast_Link_Training_Supported_06 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #6

+$Fast_Link_Training_Supported_07 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #7

+$Fast_Link_Training_Supported_08 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #8

+$Fast_Link_Training_Supported_09 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #9

+$Fast_Link_Training_Supported_10 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #10

+$Fast_Link_Training_Supported_11 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #11

+$Fast_Link_Training_Supported_12    1 bit  ; eDP Selects Fast Link Training if supported for Panel #12

+$Fast_Link_Training_Supported_13 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #13

+$Fast_Link_Training_Supported_14 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #14

+$Fast_Link_Training_Supported_15 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #15

+$Fast_Link_Training_Supported_16 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #16

+

+SKIP 	2 bytes ;Skip Enable Power State at DPCD 600h

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_01 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#1

+$eDP_Bklt_Disable_To_PwmOff_Delay_01	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#1

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_02 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#2

+$eDP_Bklt_Disable_To_PwmOff_Delay_02	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#2

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_03 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#3

+$eDP_Bklt_Disable_To_PwmOff_Delay_03	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#3

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_04 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#4

+$eDP_Bklt_Disable_To_PwmOff_Delay_04	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#4

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_05 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#5

+$eDP_Bklt_Disable_To_PwmOff_Delay_05	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#5

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_06 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#6

+$eDP_Bklt_Disable_To_PwmOff_Delay_06	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#6

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_07 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#7

+$eDP_Bklt_Disable_To_PwmOff_Delay_07	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#7

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_08 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#8

+$eDP_Bklt_Disable_To_PwmOff_Delay_08	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#8

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_09 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#9

+$eDP_Bklt_Disable_To_PwmOff_Delay_09	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#9

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_10 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#10

+$eDP_Bklt_Disable_To_PwmOff_Delay_10	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#10

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_11 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#11

+$eDP_Bklt_Disable_To_PwmOff_Delay_11	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#11

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_12 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#12

+$eDP_Bklt_Disable_To_PwmOff_Delay_12	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#12

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_13 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#13

+$eDP_Bklt_Disable_To_PwmOff_Delay_13	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#13

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_14 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#14

+$eDP_Bklt_Disable_To_PwmOff_Delay_14	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#14

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_15 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#15

+$eDP_Bklt_Disable_To_PwmOff_Delay_15	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#15

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_16 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#16

+$eDP_Bklt_Disable_To_PwmOff_Delay_16	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#16

+

+;==============================================================================

+; Block 28 - EDID-less EFP support - Panel data

+;------------------------------------------------------------------------------

+SKIP			3 bytes		; Skip block ID and size

+

+				; Panel for Device 1

+$EFP1_DTD		18 bytes	; DTD for Device 1 DP/DVI panel

+				; Panel for Device 2

+$EFP2_DTD		18 bytes	; DTD for Device 2 DP/DVI panel

+				; Panel for Device 3

+$EFP3_DTD		18 bytes	; DTD for Device 3 DP/DVI panel

+

+

+;==============================================================================

+; Block 40 - Start of LVDS BMP Structure Definition

+;------------------------------------------------------------------------------

+

+SKIP            3 bytes        ; Skip block ID and size

+

+$bmp_Panel_type        1 byte        ; Flat panel type

+SKIP            1 byte        ; Obsoleted

+SKIP            6 bits

+$bmp_Panel_EDID        1 bit        ; LVDS panel EDID enable/disable bit

+SKIP            1 bit

+SKIP            1 byte

+

+        ; INT_LVDS_Panel_Channel_Bits

+    

+$Int_LVDS_Panel_1_Channel_Type    2 bits    ; Bits [2:3] = Panel #1

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_2_Channel_Type    2 bits    ; Bits [2:3] = Panel #2

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_3_Channel_Type    2 bits    ; Bits [2:3] = Panel #3

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_4_Channel_Type    2 bits    ; Bits [2:3] = Panel #4

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_5_Channel_Type    2 bits    ; Bits [2:3] = Panel #5

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_6_Channel_Type    2 bits    ; Bits [2:3] = Panel #6

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_7_Channel_Type    2 bits    ; Bits [2:3] = Panel #7

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_8_Channel_Type    2 bits    ; Bits [2:3] = Panel #8

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_9_Channel_Type    2 bits    ; Bits [2:3] = Panel #9

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_10_Channel_Type    2 bits    ; Bits [2:3] = Panel #10

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_11_Channel_Type    2 bits    ; Bits [2:3] = Panel #11

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_12_Channel_Type    2 bits    ; Bits [2:3] = Panel #12

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_13_Channel_Type    2 bits    ; Bits [2:3] = Panel #13

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_14_Channel_Type    2 bits    ; Bits [2:3] = Panel #14

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_15_Channel_Type    2 bits    ; Bits [2:3] = Panel #15

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_16_Channel_Type    2 bits    ; Bits [2:3] = Panel #16

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+      

+                    ; LVDS Spread Spectrum Clock

+                    ; Enabel/Disable SSC

+$Enable_SSC01        1 bit        ; Panel #01, 0=No, 1=Yes

+$Enable_SSC02        1 bit        ; Panel #02, 0=No, 1=Yes

+$Enable_SSC03        1 bit        ; Panel #03, 0=No, 1=Yes

+$Enable_SSC04        1 bit        ; Panel #04, 0=No, 1=Yes

+$Enable_SSC05        1 bit        ; Panel #05, 0=No, 1=Yes

+$Enable_SSC06        1 bit        ; Panel #06, 0=No, 1=Yes

+$Enable_SSC07        1 bit        ; Panel #07, 0=No, 1=Yes

+$Enable_SSC08        1 bit        ; Panel #08, 0=No, 1=Yes

+$Enable_SSC09        1 bit        ; Panel #09, 0=No, 1=Yes

+$Enable_SSC10        1 bit        ; Panel #10, 0=No, 1=Yes

+$Enable_SSC11        1 bit        ; Panel #11, 0=No, 1=Yes

+$Enable_SSC12        1 bit        ; Panel #12, 0=No, 1=Yes

+$Enable_SSC13        1 bit        ; Panel #13, 0=No, 1=Yes

+$Enable_SSC14        1 bit        ; Panel #14, 0=No, 1=Yes

+$Enable_SSC15        1 bit        ; Panel #15, 0=No, 1=Yes

+$Enable_SSC16        1 bit        ; Panel #16, 0=No, 1=Yes

+

+                    ; LVDS Spread Spectrum Clock Frequency

+                    ; SSC Frequency

+$SSC_Freq01        1 bit        ; Panel #01, 0=48MHz, 1=66MHz

+$SSC_Freq02        1 bit        ; Panel #02, 0=48MHz, 1=66MHz

+$SSC_Freq03        1 bit        ; Panel #03, 0=48MHz, 1=66MHz

+$SSC_Freq04        1 bit        ; Panel #04, 0=48MHz, 1=66MHz

+$SSC_Freq05        1 bit        ; Panel #05, 0=48MHz, 1=66MHz

+$SSC_Freq06        1 bit        ; Panel #06, 0=48MHz, 1=66MHz

+$SSC_Freq07        1 bit        ; Panel #07, 0=48MHz, 1=66MHz

+$SSC_Freq08        1 bit        ; Panel #08, 0=48MHz, 1=66MHz

+$SSC_Freq09        1 bit        ; Panel #09, 0=48MHz, 1=66MHz

+$SSC_Freq10        1 bit        ; Panel #10, 0=48MHz, 1=66MHz

+$SSC_Freq11        1 bit        ; Panel #11, 0=48MHz, 1=66MHz

+$SSC_Freq12        1 bit        ; Panel #12, 0=48MHz, 1=66MHz

+$SSC_Freq13        1 bit        ; Panel #13, 0=48MHz, 1=66MHz

+$SSC_Freq14        1 bit        ; Panel #14, 0=48MHz, 1=66MHz

+$SSC_Freq15        1 bit        ; Panel #15, 0=48MHz, 1=66MHz

+$SSC_Freq16        1 bit        ; Panel #16, 0=48MHz, 1=66MHz

+

+                    ; Disable SSC in Dual Display Twin

+$Disable_SSC_DDT01    1 bit        ; panel #01, 0=Disable, 1=Enable

+$Disable_SSC_DDT02    1 bit        ; panel #02, 0=Disable, 1=Enable

+$Disable_SSC_DDT03    1 bit        ; panel #03, 0=Disable, 1=Enable

+$Disable_SSC_DDT04    1 bit        ; panel #04, 0=Disable, 1=Enable

+$Disable_SSC_DDT05    1 bit        ; panel #05, 0=Disable, 1=Enable

+$Disable_SSC_DDT06    1 bit        ; panel #06, 0=Disable, 1=Enable

+$Disable_SSC_DDT07    1 bit        ; panel #07, 0=Disable, 1=Enable

+$Disable_SSC_DDT08    1 bit        ; panel #08, 0=Disable, 1=Enable

+$Disable_SSC_DDT09    1 bit        ; panel #09, 0=Disable, 1=Enable

+$Disable_SSC_DDT10    1 bit        ; panel #10, 0=Disable, 1=Enable

+$Disable_SSC_DDT11    1 bit        ; panel #11, 0=Disable, 1=Enable

+$Disable_SSC_DDT12    1 bit        ; panel #12, 0=Disable, 1=Enable

+$Disable_SSC_DDT13    1 bit        ; panel #13, 0=Disable, 1=Enable

+$Disable_SSC_DDT14    1 bit        ; panel #14, 0=Disable, 1=Enable

+$Disable_SSC_DDT15    1 bit        ; panel #15, 0=Disable, 1=Enable

+$Disable_SSC_DDT16    1 bit        ; panel #16, 0=Disable, 1=Enable

+      

+$INT_Panel_Color_Depth01    1 bit        ; Panel #01, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth02    1 bit        ; Panel #02, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth03    1 bit        ; Panel #03, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth04    1 bit        ; Panel #04, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth05    1 bit        ; Panel #05, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth06    1 bit        ; Panel #06, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth07    1 bit        ; Panel #07, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth08    1 bit        ; Panel #08, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth09    1 bit        ; Panel #09, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth10    1 bit        ; Panel #10, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth11    1 bit        ; Panel #11, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth12    1 bit        ; Panel #12, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth13    1 bit        ; Panel #13, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth14    1 bit        ; Panel #14, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth15    1 bit        ; Panel #15, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth16    1 bit        ; Panel #16, 0 = 18bpps, 1 = 24bpps

+

+$DPS_Panel_Type_01        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_02        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_03        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_04        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_05        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_06        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_07        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_08        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_09        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_10        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_11        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_12        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_13        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_14        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_15        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_16        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+     

+$Blt_Control_01        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_02        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_03        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_04        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_05        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_06        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_07        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_08        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_09        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_10        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_11        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_12        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_13        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_14        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_15        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_16        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+

+

+;==============================================================================

+; Block 41 - Flat Panel Data Tables Pointers

+;------------------------------------------------------------------------------

+

+SKIP			3 bytes		; SKIP block ID and size

+SKIP			1 byte		; Skip entries number byte

+

+$LVDS_Tbl_Ptr_01	2 bytes

+$LVDS_Tbl_Size_01	1 byte

+$LVDS_Tbl_01,		$LVDS_Tbl_Ptr_01, $LVDS_Tbl_Size_01, Offset 4 bytes

+$DVO_Tbl_Ptr_01		2 bytes

+$DVO_Tbl_Size_01	1 byte

+$DVO_Tbl_01,		$DVO_Tbl_Ptr_01, $DVO_Tbl_Size_01, Offset 0 byte

+$LVDS_PnP_ID_Ptr_01	2 bytes

+$LVDS_PnP_ID_Size_01	1 byte

+$LVDS_PnP_ID_01,	$LVDS_PnP_ID_Ptr_01, $LVDS_PnP_ID_Size_01, Offset 0 byte

+

+$LVDS_Tbl_Ptr_02	2 bytes

+$LVDS_Tbl_Size_02	1 byte

+$LVDS_Tbl_02,		$LVDS_Tbl_Ptr_02, $LVDS_Tbl_Size_02, Offset 4 bytes

+$DVO_Tbl_Ptr_02		2 bytes

+$DVO_Tbl_Size_02	1 byte

+$DVO_Tbl_02,		$DVO_Tbl_Ptr_02, $DVO_Tbl_Size_02, Offset 0 byte

+$LVDS_PnP_ID_Ptr_02	2 bytes

+$LVDS_PnP_ID_Size_02	1 byte

+$LVDS_PnP_ID_02,	$LVDS_PnP_ID_Ptr_02, $LVDS_PnP_ID_Size_02, Offset 0 byte

+

+$LVDS_Tbl_Ptr_03	2 bytes

+$LVDS_Tbl_Size_03	1 byte

+$LVDS_Tbl_03,		$LVDS_Tbl_Ptr_03, $LVDS_Tbl_Size_03, Offset 4 bytes

+$DVO_Tbl_Ptr_03		2 bytes

+$DVO_Tbl_Size_03	1 byte

+$DVO_Tbl_03,		$DVO_Tbl_Ptr_03, $DVO_Tbl_Size_03, Offset 0 byte

+$LVDS_PnP_ID_Ptr_03	2 bytes

+$LVDS_PnP_ID_Size_03	1 byte

+$LVDS_PnP_ID_03,	$LVDS_PnP_ID_Ptr_03, $LVDS_PnP_ID_Size_03, Offset 0 byte

+

+$LVDS_Tbl_Ptr_04	2 bytes

+$LVDS_Tbl_Size_04	1 byte

+$LVDS_Tbl_04,		$LVDS_Tbl_Ptr_04, $LVDS_Tbl_Size_04, Offset 4 bytes

+$DVO_Tbl_Ptr_04		2 bytes

+$DVO_Tbl_Size_04	1 byte

+$DVO_Tbl_04,		$DVO_Tbl_Ptr_04, $DVO_Tbl_Size_04, Offset 0 byte

+$LVDS_PnP_ID_Ptr_04	2 bytes

+$LVDS_PnP_ID_Size_04	1 byte

+$LVDS_PnP_ID_04,	$LVDS_PnP_ID_Ptr_04, $LVDS_PnP_ID_Size_04, Offset 0 byte

+

+$LVDS_Tbl_Ptr_05	2 bytes

+$LVDS_Tbl_Size_05	1 byte

+$LVDS_Tbl_05,		$LVDS_Tbl_Ptr_05, $LVDS_Tbl_Size_05, Offset 4 bytes

+$DVO_Tbl_Ptr_05		2 bytes

+$DVO_Tbl_Size_05	1 byte

+$DVO_Tbl_05,		$DVO_Tbl_Ptr_05, $DVO_Tbl_Size_05, Offset 0 byte

+$LVDS_PnP_ID_Ptr_05	2 bytes

+$LVDS_PnP_ID_Size_05	1 byte

+$LVDS_PnP_ID_05,	$LVDS_PnP_ID_Ptr_05, $LVDS_PnP_ID_Size_05, Offset 0 byte

+

+$LVDS_Tbl_Ptr_06	2 bytes

+$LVDS_Tbl_Size_06	1 byte

+$LVDS_Tbl_06,		$LVDS_Tbl_Ptr_06, $LVDS_Tbl_Size_06, Offset 4 bytes

+$DVO_Tbl_Ptr_06		2 bytes

+$DVO_Tbl_Size_06	1 byte

+$DVO_Tbl_06,		$DVO_Tbl_Ptr_06, $DVO_Tbl_Size_06, Offset 0 byte

+$LVDS_PnP_ID_Ptr_06	2 bytes

+$LVDS_PnP_ID_Size_06	1 byte

+$LVDS_PnP_ID_06,	$LVDS_PnP_ID_Ptr_06, $LVDS_PnP_ID_Size_06, Offset 0 byte

+

+$LVDS_Tbl_Ptr_07	2 bytes

+$LVDS_Tbl_Size_07	1 byte

+$LVDS_Tbl_07,		$LVDS_Tbl_Ptr_07, $LVDS_Tbl_Size_07, Offset 4 bytes

+$DVO_Tbl_Ptr_07		2 bytes

+$DVO_Tbl_Size_07	1 byte

+$DVO_Tbl_07,		$DVO_Tbl_Ptr_07, $DVO_Tbl_Size_07, Offset 0 byte

+$LVDS_PnP_ID_Ptr_07	2 bytes

+$LVDS_PnP_ID_Size_07	1 byte

+$LVDS_PnP_ID_07,	$LVDS_PnP_ID_Ptr_07, $LVDS_PnP_ID_Size_07, Offset 0 byte

+

+$LVDS_Tbl_Ptr_08	2 bytes

+$LVDS_Tbl_Size_08	1 byte

+$LVDS_Tbl_08,		$LVDS_Tbl_Ptr_08, $LVDS_Tbl_Size_08, Offset 4 bytes

+$DVO_Tbl_Ptr_08		2 bytes

+$DVO_Tbl_Size_08	1 byte

+$DVO_Tbl_08,		$DVO_Tbl_Ptr_08, $DVO_Tbl_Size_08, Offset 0 byte

+$LVDS_PnP_ID_Ptr_08	2 bytes

+$LVDS_PnP_ID_Size_08	1 byte

+$LVDS_PnP_ID_08,	$LVDS_PnP_ID_Ptr_08, $LVDS_PnP_ID_Size_08, Offset 0 byte

+

+$LVDS_Tbl_Ptr_09	2 bytes

+$LVDS_Tbl_Size_09	1 byte

+$LVDS_Tbl_09,		$LVDS_Tbl_Ptr_09, $LVDS_Tbl_Size_09, Offset 4 bytes

+$DVO_Tbl_Ptr_09		2 bytes

+$DVO_Tbl_Size_09	1 byte

+$DVO_Tbl_09,		$DVO_Tbl_Ptr_09, $DVO_Tbl_Size_09, Offset 0 byte

+$LVDS_PnP_ID_Ptr_09	2 bytes

+$LVDS_PnP_ID_Size_09	1 byte

+$LVDS_PnP_ID_09,	$LVDS_PnP_ID_Ptr_09, $LVDS_PnP_ID_Size_09, Offset 0 byte

+

+$LVDS_Tbl_Ptr_10	2 bytes

+$LVDS_Tbl_Size_10	1 byte

+$LVDS_Tbl_10,		$LVDS_Tbl_Ptr_10, $LVDS_Tbl_Size_10, Offset 4 bytes

+$DVO_Tbl_Ptr_10		2 bytes

+$DVO_Tbl_Size_10	1 byte

+$DVO_Tbl_10,		$DVO_Tbl_Ptr_10, $DVO_Tbl_Size_10, Offset 0 byte

+$LVDS_PnP_ID_Ptr_10	2 bytes

+$LVDS_PnP_ID_Size_10	1 byte

+$LVDS_PnP_ID_10,	$LVDS_PnP_ID_Ptr_10, $LVDS_PnP_ID_Size_10, Offset 0 byte

+

+$LVDS_Tbl_Ptr_11	2 bytes

+$LVDS_Tbl_Size_11	1 byte

+$LVDS_Tbl_11,		$LVDS_Tbl_Ptr_11, $LVDS_Tbl_Size_11, Offset 4 bytes

+$DVO_Tbl_Ptr_11		2 bytes

+$DVO_Tbl_Size_11	1 byte

+$DVO_Tbl_11,		$DVO_Tbl_Ptr_11, $DVO_Tbl_Size_11, Offset 0 byte

+$LVDS_PnP_ID_Ptr_11	2 bytes

+$LVDS_PnP_ID_Size_11	1 byte

+$LVDS_PnP_ID_11,	$LVDS_PnP_ID_Ptr_11, $LVDS_PnP_ID_Size_11, Offset 0 byte

+

+$LVDS_Tbl_Ptr_12	2 bytes

+$LVDS_Tbl_Size_12	1 byte

+$LVDS_Tbl_12,		$LVDS_Tbl_Ptr_12, $LVDS_Tbl_Size_12, Offset 4 bytes

+$DVO_Tbl_Ptr_12		2 bytes

+$DVO_Tbl_Size_12	1 byte

+$DVO_Tbl_12,		$DVO_Tbl_Ptr_12, $DVO_Tbl_Size_12, Offset 0 byte

+$LVDS_PnP_ID_Ptr_12	2 bytes

+$LVDS_PnP_ID_Size_12	1 byte

+$LVDS_PnP_ID_12,	$LVDS_PnP_ID_Ptr_12, $LVDS_PnP_ID_Size_12, Offset 0 byte

+

+$LVDS_Tbl_Ptr_13	2 bytes

+$LVDS_Tbl_Size_13	1 byte

+$LVDS_Tbl_13,		$LVDS_Tbl_Ptr_13, $LVDS_Tbl_Size_13, Offset 4 bytes

+$DVO_Tbl_Ptr_13		2 bytes

+$DVO_Tbl_Size_13	1 byte

+$DVO_Tbl_13,		$DVO_Tbl_Ptr_13, $DVO_Tbl_Size_13, Offset 0 byte

+$LVDS_PnP_ID_Ptr_13	2 bytes

+$LVDS_PnP_ID_Size_13	1 byte

+$LVDS_PnP_ID_13,	$LVDS_PnP_ID_Ptr_13, $LVDS_PnP_ID_Size_13, Offset 0 byte

+

+$LVDS_Tbl_Ptr_14	2 bytes

+$LVDS_Tbl_Size_14	1 byte

+$LVDS_Tbl_14,		$LVDS_Tbl_Ptr_14, $LVDS_Tbl_Size_14, Offset 4 bytes

+$DVO_Tbl_Ptr_14		2 bytes

+$DVO_Tbl_Size_14	1 byte

+$DVO_Tbl_14,		$DVO_Tbl_Ptr_14, $DVO_Tbl_Size_14, Offset 0 byte

+$LVDS_PnP_ID_Ptr_14	2 bytes

+$LVDS_PnP_ID_Size_14	1 byte

+$LVDS_PnP_ID_14,	$LVDS_PnP_ID_Ptr_14, $LVDS_PnP_ID_Size_14, Offset 0 byte

+

+$LVDS_Tbl_Ptr_15	2 bytes

+$LVDS_Tbl_Size_15	1 byte

+$LVDS_Tbl_15,		$LVDS_Tbl_Ptr_15, $LVDS_Tbl_Size_15, Offset 4 bytes

+$DVO_Tbl_Ptr_15		2 bytes

+$DVO_Tbl_Size_15	1 byte

+$DVO_Tbl_15,		$DVO_Tbl_Ptr_15, $DVO_Tbl_Size_15, Offset 0 byte

+$LVDS_PnP_ID_Ptr_15	2 bytes

+$LVDS_PnP_ID_Size_15	1 byte

+$LVDS_PnP_ID_15,	$LVDS_PnP_ID_Ptr_15, $LVDS_PnP_ID_Size_15, Offset 0 byte

+

+$LVDS_Tbl_Ptr_16	2 bytes

+$LVDS_Tbl_Size_16	1 byte

+$LVDS_Tbl_16,		$LVDS_Tbl_Ptr_16, $LVDS_Tbl_Size_16, Offset 4 bytes

+$DVO_Tbl_Ptr_16		2 bytes

+$DVO_Tbl_Size_16	1 byte

+$DVO_Tbl_16,		$DVO_Tbl_Ptr_16, $DVO_Tbl_Size_16, Offset 0 byte

+$LVDS_PnP_ID_Ptr_16	2 bytes

+$LVDS_PnP_ID_Size_16	1 byte

+$LVDS_PnP_ID_16,	$LVDS_PnP_ID_Ptr_16, $LVDS_PnP_ID_Size_16, Offset 0 byte

+

+SKIP                    2 bytes       ;LfpPanelNameTable Offset

+SKIP                    1 byte        ;LfpPanelName Length

+

+    

+

+;==============================================================================

+; Block 42 - Flat Panel Data Tables

+;------------------------------------------------------------------------------

+

+SKIP            3 bytes        ; Skip block ID and size

+

+            ; Flat Panel #1

+

+$Panel_Width_01        2 bytes        ; Panel Width

+$Panel_Height_01    2 bytes        ; Panel Height

+

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither01                1 bit    ; Panel #01, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ; address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_01        13 bits    ; Power on Backlight Enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_01                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ; address-0x6120C or 0x0C720C (for ILM) -Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_01    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_01                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM) -Panel power cycle delay and reference divider

+$PowerCycleDelay_01                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+ALIGN

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #2

+

+$Panel_Width_02        2 bytes            ; Panel Width

+$Panel_Height_02    2 bytes        ; Panel Height

+

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither02                1 bit    ; Panel #02, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_02        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_02                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_02    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_02                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_02                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #3

+

+$Panel_Width_03        2 bytes        ; Panel Width

+$Panel_Height_03    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither03                1 bit    ; Panel #03, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_03        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_03                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_03    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_03                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;aaddress-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_03                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #4

+

+$Panel_Width_04        2 bytes        ; Panel Width

+$Panel_Height_04    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither04                1 bit    ; Panel #04, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_04        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_04                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_04    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_04                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_04                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #5

+

+$Panel_Width_05        2 bytes        ; Panel Width

+$Panel_Height_05    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither05                1 bit    ; Panel #05, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_05        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_05                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_05    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_05                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_05                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP            2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #6

+

+$Panel_Width_06        2 bytes        ; Panel Width

+$Panel_Height_06    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither06                1 bit    ; Panel #06, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_06        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_06                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_06    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_06                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_06                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #7

+

+$Panel_Width_07        2 bytes        ; Panel Width

+$Panel_Height_07    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither07                1 bit    ; Panel #07, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_07        13 bits    ; Power on Backlight enable delay delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_07                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_07    13 bits    ; Backlight off delay power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_07                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_07                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #8

+

+$Panel_Width_08        2 bytes        ; Panel Width

+$Panel_Height_08    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither08                1 bit    ; Panel #08, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_08        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_08                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_08    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_08                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_08                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #9

+

+$Panel_Width_09        2 bytes        ; Panel Width

+$Panel_Height_09    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither09                1 bit    ; Panel #09, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_09        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_09                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_09    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_09                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_09                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #10

+

+$Panel_Width_10        2 bytes        ; Panel Width

+$Panel_Height_10    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither10                1 bit    ; Panel #10, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_10        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_10                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_10    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_10                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_10                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #11

+

+$Panel_Width_11        2 bytes        ; Panel Width

+$Panel_Height_11    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither11                1 bit    ; Panel #11, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_11        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_11                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_11    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_11                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_11                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #12

+

+$Panel_Width_12        2 bytes        ; Panel Width

+$Panel_Height_12    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither12                1 bit    ; Panel #12, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_12        13 bits    ; Powen on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_12                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_12    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_12                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_12                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #13

+

+$Panel_Width_13        2 bytes        ; Panel Width

+$Panel_Height_13    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither13                1 bit    ; Panel #13, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_13        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_13                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_13    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_13                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_13                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #14

+

+$Panel_Width_14        2 bytes        ; Panel Width

+$Panel_Height_14    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither14                1 bit    ; Panel #14, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_14        13 bits    ; Power on baklight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_14                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_14    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_14                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_14                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #15

+

+$Panel_Width_15        2 bytes        ; Panel Width

+$Panel_Height_15    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither15                1 bit    ; Panel #15, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_15        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_15                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_15    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_15                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_15                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #16

+

+$Panel_Width_16        2 bytes        ; Panel Width

+$Panel_Height_16    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither16                1 bit    ; Panel #16, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_16        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_16                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_16    13 bits    ; backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_16                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_16                5 bits    ; Power cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+$Panel_Name_01		13 bytes	; LFP Panel Name

+$Panel_Name_02		13 bytes	; LFP Panel Name

+$Panel_Name_03		13 bytes	; LFP Panel Name

+$Panel_Name_04		13 bytes	; LFP Panel Name

+$Panel_Name_05		13 bytes	; LFP Panel Name

+$Panel_Name_06		13 bytes	; LFP Panel Name

+$Panel_Name_07		13 bytes	; LFP Panel Name

+$Panel_Name_08		13 bytes	; LFP Panel Name

+$Panel_Name_09		13 bytes	; LFP Panel Name

+$Panel_Name_10		13 bytes	; LFP Panel Name

+$Panel_Name_11		13 bytes	; LFP Panel Name

+$Panel_Name_12		13 bytes	; LFP Panel Name

+$Panel_Name_13		13 bytes	; LFP Panel Name

+$Panel_Name_14		13 bytes	; LFP Panel Name

+$Panel_Name_15		13 bytes	; LFP Panel Name

+$Panel_Name_16		13 bytes	; LFP Panel Name

+

+$Enable_Scaling_01 		1 bit ; Scaling Enable bit for Panel#1

+$Enable_Scaling_02 		1 bit ; Scaling Enable bit for Panel#2

+$Enable_Scaling_03 		1 bit ; Scaling Enable bit for Panel#3

+$Enable_Scaling_04 		1 bit ; Scaling Enable bit for Panel#4

+$Enable_Scaling_05 		1 bit ; Scaling Enable bit for Panel#5

+$Enable_Scaling_06 		1 bit ; Scaling Enable bit for Panel#6

+$Enable_Scaling_07 		1 bit ; Scaling Enable bit for Panel#7

+$Enable_Scaling_08 		1 bit ; Scaling Enable bit for Panel#8

+$Enable_Scaling_09 		1 bit ; Scaling Enable bit for Panel#9

+$Enable_Scaling_10 		1 bit ; Scaling Enable bit for Panel#10

+$Enable_Scaling_11 		1 bit ; Scaling Enable bit for Panel#11

+$Enable_Scaling_12 		1 bit ; Scaling Enable bit for Panel#12

+$Enable_Scaling_13 		1 bit ; Scaling Enable bit for Panel#13

+$Enable_Scaling_14 		1 bit ; Scaling Enable bit for Panel#14

+$Enable_Scaling_15 		1 bit ; Scaling Enable bit for Panel#15

+$Enable_Scaling_16 		1 bit ; Scaling Enable bit for Panel#16

+

+$Seamless_DRRS_Min_RR_01 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#1

+$Seamless_DRRS_Min_RR_02 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#2

+$Seamless_DRRS_Min_RR_03 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#3

+$Seamless_DRRS_Min_RR_04 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#4

+$Seamless_DRRS_Min_RR_05 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#5

+$Seamless_DRRS_Min_RR_06 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#6

+$Seamless_DRRS_Min_RR_07 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#7

+$Seamless_DRRS_Min_RR_08 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#8

+$Seamless_DRRS_Min_RR_09 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#9

+$Seamless_DRRS_Min_RR_10 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#10

+$Seamless_DRRS_Min_RR_11 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#11

+$Seamless_DRRS_Min_RR_12 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#12

+$Seamless_DRRS_Min_RR_13 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#13

+$Seamless_DRRS_Min_RR_14 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#14

+$Seamless_DRRS_Min_RR_15 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#15

+$Seamless_DRRS_Min_RR_16 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#16

+

+;==============================================================================

+; Block 43 - BLC (Backlight Control) Support

+;------------------------------------------------------------------------------

+

+SKIP            3  bytes    ; Skip block ID and size

+SKIP            1  byte        ; Skip row size

+

+            ; Flat Panel #1

+$BLC_Inv_Type_1        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_1    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_1    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_1    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_1    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_1    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_1        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_1    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #2

+$BLC_Inv_Type_2        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_2    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_2    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_2    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_2    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_2    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_2        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_2    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #3

+$BLC_Inv_Type_3        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_3    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_3    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_3    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_3    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_3    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_3        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_3    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #4

+$BLC_Inv_Type_4        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_4    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_4    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_4    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_4    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_4    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_4        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_4    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #5

+$BLC_Inv_Type_5        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_5    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_5    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_5    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_5    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_5    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_5        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_5    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #6

+$BLC_Inv_Type_6        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_6    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_6    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_6    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_6    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_6    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_6        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_6    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #7

+$BLC_Inv_Type_7        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_7    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_7    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_7    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_7    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_7    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_7        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_7    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #8

+$BLC_Inv_Type_8        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_8    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_8    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_8    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_8    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_8    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_8        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_8    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #9

+$BLC_Inv_Type_9        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_9    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_9    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_9    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_9    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_9    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_9        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_9    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #10

+$BLC_Inv_Type_10        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_10    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_10    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_10    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_10    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_10    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_10    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_10    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #11

+$BLC_Inv_Type_11    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_11    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_11    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_11    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_11    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_11    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_11    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_11    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #12

+$BLC_Inv_Type_12    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_12    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_12    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_12    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_12    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_12    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_12    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_12    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #13

+$BLC_Inv_Type_13    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_13    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_13    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_13    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_13    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_13    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_13    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_13    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #14

+$BLC_Inv_Type_14    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_14    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_14    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_14    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_14    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_14    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_14    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_14    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #15

+$BLC_Inv_Type_15        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_15    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_15    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_15    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_15    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_15    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_15    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_15    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #16

+$BLC_Inv_Type_16    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_16    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_16    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_16    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_16    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_16    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_16    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_16    1  byte        ; I2C inverter command code

+

+$POST_BL_Brightness_01	1 byte		; Intial brightness value at POST for Flat Panel #1

+  $POST_BL_Brightness_02	1 byte		; Intial brightness value at POST for Flat Panel #2

+  $POST_BL_Brightness_03	1 byte		; Intial brightness value at POST for Flat Panel #3

+  $POST_BL_Brightness_04	1 byte		; Intial brightness value at POST for Flat Panel #4

+  $POST_BL_Brightness_05	1 byte		; Intial brightness value at POST for Flat Panel #5

+  $POST_BL_Brightness_06	1 byte		; Intial brightness value at POST for Flat Panel #6

+  $POST_BL_Brightness_07	1 byte		; Intial brightness value at POST for Flat Panel #7

+  $POST_BL_Brightness_08	1 byte		; Intial brightness value at POST for Flat Panel #8

+  $POST_BL_Brightness_09	1 byte		; Intial brightness value at POST for Flat Panel #9

+  $POST_BL_Brightness_10	1 byte		; Intial brightness value at POST for Flat Panel #10

+  $POST_BL_Brightness_11	1 byte		; Intial brightness value at POST for Flat Panel #11

+  $POST_BL_Brightness_12	1 byte		; Intial brightness value at POST for Flat Panel #12

+  $POST_BL_Brightness_13	1 byte		; Intial brightness value at POST for Flat Panel #13

+  $POST_BL_Brightness_14	1 byte		; Intial brightness value at POST for Flat Panel #14

+  $POST_BL_Brightness_15	1 byte		; Intial brightness value at POST for Flat Panel #15

+  $POST_BL_Brightness_16	1 byte		; Intial brightness value at POST for Flat Panel #16

+

+  $Lfp_Pwm_Source_Selection_01 		4 bits  ; Pwm Source Selection for Panel #1

+  $Lfp_Pwm_Controller_Selection_01  4 bits  ; Pwm Controller Selection for Panel #1

+

+  $Lfp_Pwm_Source_Selection_02 		4 bits  ; Pwm Source Selection for Panel #2

+  $Lfp_Pwm_Controller_Selection_02  4 bits  ; Pwm Controller Selection for Panel #2

+

+  $Lfp_Pwm_Source_Selection_03 		4 bits  ; Pwm Source Selection for Panel #3

+  $Lfp_Pwm_Controller_Selection_03  4 bits  ; Pwm Controller Selection for Panel #3

+  

+  $Lfp_Pwm_Source_Selection_04 		4 bits  ; Pwm Source Selection for Panel #4

+  $Lfp_Pwm_Controller_Selection_04  4 bits  ; Pwm Controller Selection for Panel #4

+  

+  $Lfp_Pwm_Source_Selection_05 		4 bits  ; Pwm Source Selection for Panel #5

+  $Lfp_Pwm_Controller_Selection_05  4 bits  ; Pwm Controller Selection for Panel #5

+

+  $Lfp_Pwm_Source_Selection_06 		4 bits  ; Pwm Source Selection for Panel #6

+  $Lfp_Pwm_Controller_Selection_06  4 bits  ; Pwm Controller Selection for Panel #6

+

+  $Lfp_Pwm_Source_Selection_07 		4 bits  ; Pwm Source Selection for Panel #7

+  $Lfp_Pwm_Controller_Selection_07  4 bits  ; Pwm Controller Selection for Panel #7

+  

+  $Lfp_Pwm_Source_Selection_08 		4 bits  ; Pwm Source Selection for Panel #8

+  $Lfp_Pwm_Controller_Selection_08  4 bits  ; Pwm Controller Selection for Panel #8

+

+  $Lfp_Pwm_Source_Selection_09 		4 bits  ; Pwm Source Selection for Panel #9

+  $Lfp_Pwm_Controller_Selection_09  4 bits  ; Pwm Controller Selection for Panel #9

+

+  $Lfp_Pwm_Source_Selection_10 		4 bits  ; Pwm Source Selection for Panel #10

+  $Lfp_Pwm_Controller_Selection_10  4 bits  ; Pwm Controller Selection for Panel #10

+  

+  $Lfp_Pwm_Source_Selection_11 		4 bits  ; Pwm Source Selection for Panel #11

+  $Lfp_Pwm_Controller_Selection_11  4 bits  ; Pwm Controller Selection for Panel #11

+

+  $Lfp_Pwm_Source_Selection_12 		4 bits  ; Pwm Source Selection for Panel #12

+  $Lfp_Pwm_Controller_Selection_12  4 bits  ; Pwm Controller Selection for Panel #12

+

+  $Lfp_Pwm_Source_Selection_13 		4 bits  ; Pwm Source Selection for Panel #13

+  $Lfp_Pwm_Controller_Selection_13  4 bits  ; Pwm Controller Selection for Panel #13

+

+  $Lfp_Pwm_Source_Selection_14 		4 bits  ; Pwm Source Selection for Panel #14

+  $Lfp_Pwm_Controller_Selection_14  4 bits  ; Pwm Controller Selection for Panel #14

+  

+  $Lfp_Pwm_Source_Selection_15 		4 bits  ; Pwm Source Selection for Panel #15

+  $Lfp_Pwm_Controller_Selection_15  4 bits  ; Pwm Controller Selection for Panel #15

+

+  $Lfp_Pwm_Source_Selection_16 		4 bits  ; Pwm Source Selection for Panel #16

+  $Lfp_Pwm_Controller_Selection_16  4 bits  ; Pwm Controller Selection for Panel #16

+

+;==============================================================================

+; Block 44 - BIA (Backlight Image Adaption) Support

+;------------------------------------------------------------------------------

+

+SKIP            3  bytes    ; Skip block ID and size

+

+$BIA_Enable        1  bit        ; DPST support enable bit

+$BIA_Aggress_Level    3  bits        ; Power Conservation Preference level

+SKIP            3  bits        ; Reserved

+$ALS_Enable        1  bit        ; ALS enable bit

+$ALS_Response_Data    20  bytes    ; ALS Response Data

+

+ ;==============================================================================

+    ; Block 46 - Chromaticity  Support

+    ;------------------------------------------------------------------------------

+

+    SKIP			3  bytes	; Skip block ID and size

+

+

+	$Chromacity_Enable_1	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_1    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_1		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_1		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_1			1 byte			; Red x coordinate at 1Bh

+	$Red_y_1			1 byte			; Red y coordinate at 1Ch

+	$Green_x_1		1 byte			; Green x coordinate at 1Dh

+	$Green_y_1		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_1			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_1			1 byte			; Blue y coordinate at 20h

+	$White_x_1		1 byte			; White x coordiante at 21h

+	$White_y_1		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_2	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_2    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_2		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_2		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_2			1 byte			; Red x coordinate at 1Bh

+	$Red_y_2			1 byte			; Red y coordinate at 1Ch

+	$Green_x_2		1 byte			; Green x coordinate at 1Dh

+	$Green_y_2		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_2			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_2			1 byte			; Blue y coordinate at 20h

+	$White_x_2		1 byte			; White x coordiante at 21h

+	$White_y_2		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_3	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_3    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_3		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_3		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_3			1 byte			; Red x coordinate at 1Bh

+	$Red_y_3			1 byte			; Red y coordinate at 1Ch

+	$Green_x_3		1 byte			; Green x coordinate at 1Dh

+	$Green_y_3		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_3			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_3			1 byte			; Blue y coordinate at 20h

+	$White_x_3		1 byte			; White x coordiante at 21h

+	$White_y_3		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_4	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_4    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_4		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_4		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_4			1 byte			; Red x coordinate at 1Bh

+	$Red_y_4			1 byte			; Red y coordinate at 1Ch

+	$Green_x_4		1 byte			; Green x coordinate at 1Dh

+	$Green_y_4		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_4			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_4			1 byte			; Blue y coordinate at 20h

+	$White_x_4		1 byte			; White x coordiante at 21h

+	$White_y_4		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_5	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_5    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_5		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_5		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_5			1 byte			; Red x coordinate at 1Bh

+	$Red_y_5			1 byte			; Red y coordinate at 1Ch

+	$Green_x_5		1 byte			; Green x coordinate at 1Dh

+	$Green_y_5		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_5			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_5			1 byte			; Blue y coordinate at 20h

+	$White_x_5		1 byte			; White x coordiante at 21h

+	$White_y_5		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_6	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_6    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_6		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_6		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_6			1 byte			; Red x coordinate at 1Bh

+	$Red_y_6			1 byte			; Red y coordinate at 1Ch

+	$Green_x_6		1 byte			; Green x coordinate at 1Dh

+	$Green_y_6		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_6			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_6			1 byte			; Blue y coordinate at 20h

+	$White_x_6		1 byte			; White x coordiante at 21h

+	$White_y_6		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_7	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_7    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_7		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_7		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_7		1 byte			; Red x coordinate at 1Bh

+	$Red_y_7			1 byte			; Red y coordinate at 1Ch

+	$Green_x_7		1 byte			; Green x coordinate at 1Dh

+	$Green_y_7		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_7			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_7			1 byte			; Blue y coordinate at 20h

+	$White_x_7		1 byte			; White x coordiante at 21h

+	$White_y_7		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_8	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_8    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_8		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_8		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_8			1 byte			; Red x coordinate at 1Bh

+	$Red_y_8			1 byte			; Red y coordinate at 1Ch

+	$Green_x_8		1 byte			; Green x coordinate at 1Dh

+	$Green_y_8		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_8			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_8			1 byte			; Blue y coordinate at 20h

+	$White_x_8		1 byte			; White x coordiante at 21h

+	$White_y_8		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_9	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_9    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_9		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_9		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_9			1 byte			; Red x coordinate at 1Bh

+	$Red_y_9			1 byte			; Red y coordinate at 1Ch

+	$Green_x_9		1 byte			; Green x coordinate at 1Dh

+	$Green_y_9		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_9			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_9			1 byte			; Blue y coordinate at 20h

+	$White_x_9		1 byte			; White x coordiante at 21h

+	$White_y_9		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_10	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_10    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_10		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_10		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_10			1 byte			; Red x coordinate at 1Bh

+	$Red_y_10			1 byte			; Red y coordinate at 1Ch

+	$Green_x_10		1 byte			; Green x coordinate at 1Dh

+	$Green_y_10		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_10			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_10			1 byte			; Blue y coordinate at 20h

+	$White_x_10		1 byte			; White x coordiante at 21h

+	$White_y_10		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_11	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_11    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_11		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_11		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_11			1 byte			; Red x coordinate at 1Bh

+	$Red_y_11			1 byte			; Red y coordinate at 1Ch

+	$Green_x_11		1 byte			; Green x coordinate at 1Dh

+	$Green_y_11		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_11			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_11			1 byte			; Blue y coordinate at 20h

+	$White_x_11		1 byte			; White x coordiante at 21h

+	$White_y_11		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_12	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_12    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_12		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_12		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_12			1 byte			; Red x coordinate at 1Bh

+	$Red_y_12			1 byte			; Red y coordinate at 1Ch

+	$Green_x_12		1 byte			; Green x coordinate at 1Dh

+	$Green_y_12		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_12			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_12			1 byte			; Blue y coordinate at 20h

+	$White_x_12		1 byte			; White x coordiante at 21h

+	$White_y_12		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_13	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_13    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_13		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_13		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_13			1 byte			; Red x coordinate at 1Bh

+	$Red_y_13			1 byte			; Red y coordinate at 1Ch

+	$Green_x_13		1 byte			; Green x coordinate at 1Dh

+	$Green_y_13		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_13			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_13			1 byte			; Blue y coordinate at 20h

+	$White_x_13		1 byte			; White x coordiante at 21h

+	$White_y_13		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_14	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_14    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_14		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_14		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_14			1 byte			; Red x coordinate at 1Bh

+	$Red_y_14			1 byte			; Red y coordinate at 1Ch

+	$Green_x_14		1 byte			; Green x coordinate at 1Dh

+	$Green_y_14		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_14			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_14			1 byte			; Blue y coordinate at 20h

+	$White_x_14		1 byte			; White x coordiante at 21h

+	$White_y_14		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_15	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_15    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_15		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_15		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_15			1 byte			; Red x coordinate at 1Bh

+	$Red_y_15			1 byte			; Red y coordinate at 1Ch

+	$Green_x_15		1 byte			; Green x coordinate at 1Dh

+	$Green_y_15		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_15			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_15			1 byte			; Blue y coordinate at 20h

+	$White_x_15		1 byte			; White x coordiante at 21h

+	$White_y_15		1 byte			; White y coordinate at 22h

+

+

+	$Chromacity_Enable_16	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_16    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_16		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_16		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_16			1 byte			; Red x coordinate at 1Bh

+	$Red_y_16			1 byte			; Red y coordinate at 1Ch

+	$Green_x_16		1 byte			; Green x coordinate at 1Dh

+	$Green_y_16		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_16			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_16			1 byte			; Blue y coordinate at 20h

+	$White_x_16		1 byte			; White x coordiante at 21h

+	$White_y_16		1 byte			; White y coordinate at 22h

+

+;==============================================================================

+; Block 51 - Fixed Mode

+;------------------------------------------------------------------------------

+

+SKIP			3  bytes	; Skip block ID and size

+$Feature_Enable  1 byte   ; enable or disable the feature

+$X_res          4 bytes ; X resolution

+$Y_res          4 bytes ; Y resolution

+

+;==============================================================================

+; Block 54 - RGB Palette enteries

+;------------------------------------------------------------------------------

+SKIP 				3 bytes				;block ID/size

+

+$Enable_Correction 	1 bit

+SKIP 				7 bits

+

+$Red_Table			256 bytes

+$Green_Table		256 bytes

+$Blue_Table			256 bytes

+

+EndStruct

+

+;==============================================================================

+; List Definitions

+;------------------------------------------------------------------------------

+

+List &Disabled_Enabled_List

+    Selection    0,    "Disabled"

+    Selection    1,    "Enabled"

+EndList

+

+List &Pwr_Pref_List

+    Selection    0x01,    "1 - Maximum Quality with No DPST"

+    Selection    0x02,    "2"

+    Selection    0x03,    "3"

+    Selection    0x04,    "4"

+    Selection    0x05,    "5"

+    Selection    0x06,    "6 - Maximum Battery"

+EndList

+

+List &Cls_After_Signon_List

+    Selection    0x00,    "No CLS"

+    Selection    0x01,    "0.5 Second Delay + CLS"

+    Selection    0x02,    "1.0 Second Delay + CLS"

+    Selection    0x03,    "1.5 Second Delay + CLS"

+    Selection    0x04,    "2.0 Second Delay + CLS"

+    Selection    0x05,    "2.5 Second Delay + CLS"

+    Selection    0x06,    "3.0 Second Delay + CLS"

+    Selection    0x07,    "3.5 Second Delay + CLS"

+EndList

+

+List &Int_CRT_Device_Type_List

+    Selection    0x0000, "No Device"

+    Selection    0x0001, "CRT"

+    ;Selection    0x0011, "DVI with CRT"

+EndList

+

+List &Int_EFP_Device_Type_List

+    Selection    0x0000, "No Device"

+    Selection    0x68C6, "DisplayPort"

+    Selection    0x60D2, "HDMI/DVI"

+    Selection	 0x68D2, "Integrated DVI Only"

+    Selection    0x60D6, "DisplayPort with HDMI/DVI Compatible"

+    Selection    0x68D6, "DisplayPort with DVI Compatible"

+   ; Selection    0x68D3, "DVI with CRT"

+EndList

+

+List &CRT_Device_Id_List

+    Selection    01h, "CRT"

+EndList

+

+List &EFP1_Device_Id_List

+    Selection    04h, "EFP 1"

+    Selection    40h, "EFP 2"

+    Selection    08h, "LFP"

+    ;Selection    80h, "LFP 2"

+EndList

+

+List &EFP2_Device_Id_List

+    Selection    04h, "EFP 1"

+    Selection    40h, "EFP 2"

+    Selection    08h, "LFP"

+    ;Selection    80h, "LFP 2"

+EndList

+

+List &LVDS_Device_Id_List

+    Selection    08h, "LFP"

+EndList

+

+List &DOS_Boot_Mode_List

+        Selection    0x03,    "03h"

+        Selection    0x12,    "12h"

+        Selection    0x13,    "13h"

+           Selection    0x30,    "30h"

+           Selection    0x32,    "32h"

+           Selection    0x34,    "34h"

+           Selection    0x40,    "40h"

+           Selection    0x41,    "41h"

+           Selection    0x42,    "42h"

+           Selection    0x43,    "43h"

+           Selection    0x44,    "44h"

+           Selection    0x45,    "45h"

+           Selection    0x50,    "50h"

+           Selection    0x52,    "52h"

+        Selection    0x54,    "54h"

+EndList

+       

+List &LFP_Port_list

+    Selection    0x07,    "eDP Port B"

+    Selection    0x08,    "eDP Port C"

+    ;Selection    0x15,    "MIPI Port A"

+    ;Selection    0x17,    "MIPI Port C"

+    

+EndList

+

+List &LVDS_eDP_Port_List

+    Selection    0x04,    "LVDS"

+    Selection    0x07,    "Port B"

+    Selection    0x08,    "Port C"

+EndList

+

+

+

+List &Int_EFP_Port_List

+	Selection	0x00,	"N/A"

+	Selection	0x01,	"Port B"

+	Selection	0x02,	"Port C"

+	

+EndList	

+

+List &Int_eDP_AUX_Channel_List

+	Selection	0x00,	"N/A"

+	Selection	0x10,	"eDP-B AUX Channel"

+	Selection	0x20,	"eDP-C AUX Channel"

+EndList

+

+List &Int_DP_AUX_Channel_List

+	Selection	0x00,	"N/A"

+	Selection	0x10,	"DisplayPort-B AUX Channel"

+	Selection	0x20,	"DisplayPort-C AUX Channel"

+EndList

+	

+

+

+List &GPIO_Pin_List

+    Selection    0x00,    "N/A"

+    Selection    0x05,    "Integrated HDMI-B DDC GPIO Pins"

+    Selection    0x04,    "Integrated HDMI-C DDC GPIO Pins"

+    Selection    0x01,    "I2C GPIO pins"

+    Selection    0x02,    "Analog CRT DDC GPIO pins"

+EndList             

+

+

+List &GMBus_Speed_List

+    Selection    0x01,    "50 KHz"

+    Selection    0x00,    "100 KHz"

+    Selection    0x02,    "400 KHz"

+    Selection    0x03,    "1 MHz"

+EndList             

+

+

+List &Inv_Type_List

+    Selection    0x00,    "None/External"

+    Selection    0x01,    "I2C"

+    Selection    0x02,    "PWM"

+EndList

+

+List &Inv_Polarity_List

+    Selection    0x00,    "Normal"

+    Selection    0x01,    "Inverted"

+EndList

+

+List &IntXXh_List

+    Selection    0x00,    "Disabled"

+    Selection    0x01,    "Use Interrupt 15h"

+EndList

+

+List &LVDS_Channel_List

+    Selection    0x00,    "Single Channel"

+    Selection    0x01,    "Dual Channel"

+EndList

+

+List &INT_LVDS_Channel_List

+    Selection    0x00,    "Automatic Selection"

+    Selection    0x01,    "Single Channel"

+    Selection    0x02,    "Dual Channel"

+EndList

+

+List &LVDS_Config_List

+    Selection    0x00,    "No Device"

+    Selection    0x1020,  "LVDS"

+EndList

+

+List &eDP_Config_List

+    Selection    0x00,    "No Device"

+    Selection    0x1806,  "eDP"

+ ;   Selection    0x1400,    "MIPI"

+EndList

+

+List &eDP_LVDS_Config_List

+    Selection    0x00,    "No Device"

+    Selection    0x1020,  "LVDS"

+    Selection    0x1806,  "eDP"

+EndList

+

+

+List &No_Yes_List

+    Selection    0,    "No"

+    Selection    1,    "Yes"

+EndList

+

+List &Off_On_List

+    Selection    0,    "Off"

+    Selection    1,    "On"

+EndList

+

+List &OS_Driver_List

+    Selection    0,    "OS Default Algorithm"

+    Selection    1,    "Driver Algorithm"

+EndList

+

+List &OS_DriverP_List

+    Selection    0,    "OS Default Algorithm"

+    Selection    1,    "Driver Persistence Algorithm"

+EndList

+

+List &Panel_Color_Depth_List

+    Selection    0x00,    "18-bit Color Depth"

+    Selection    0x01,    "24-bit Color Depth"

+EndList

+

+List &eDP_Panel_Color_Depth_List

+    Selection    0x00,    "18-bit Color Depth"

+    Selection    0x01,    "24-bit Color Depth"

+    Selection    0x02,    "30-bit Color Depth"

+EndList

+

+List &eDP_Vswing_Preemph_table_List

+    Selection    0x00,    "Low power Swing Setting"

+    Selection    0x01,    "Default Swing Setting"

+EndList

+

+List &eDP_Link_DataRate_List

+    Selection    0x00,    "1.62 Gbps"

+    Selection    0x01,    "2.70 Gbps"

+EndList

+

+List &eDP_Link_LaneCount_List

+    Selection    0x00,    "x1"

+    Selection    0x01,    "x2"

+    Selection    0x03,    "x4"

+EndList

+

+List &eDP_Link_PreEmp_List

+    Selection    0x00,    "Level 0"

+    Selection    0x01,    "Level 1"

+    Selection    0x02,    "Level 2"

+    Selection    0x03,    "Level 3"    

+EndList

+

+List &eDP_Link_VSwing_List

+    Selection    0x00,    "Level 0"

+    Selection    0x01,    "Level 1"

+    Selection    0x02,    "Level 2"

+    Selection    0x03,    "Level 3"    

+EndList

+      

+

+List &Panel_Connector_List

+    Selection    0x00,    "SPGW"

+    Selection    0x01,    "OpenLDI"

+EndList

+

+List &Panel_List

+    Selection    0x00,    "PANEL #01"

+    Selection    0x01,    "PANEL #02"

+    Selection    0x02,    "PANEL #03"

+    Selection    0x03,    "PANEL #04"

+    Selection    0x04,    "PANEL #05"

+    Selection    0x05,    "PANEL #06"

+    Selection    0x06,    "PANEL #07"

+    Selection    0x07,    "PANEL #08"

+    Selection    0x08,    "PANEL #09"

+    Selection    0x09,    "PANEL #10"

+    Selection    0x0A,    "PANEL #11"

+    Selection    0x0B,    "PANEL #12"

+    Selection    0x0C,    "PANEL #13"

+    Selection    0x0D,    "PANEL #14"

+    Selection    0x0E,    "PANEL #15"

+    Selection    0x0F,    "PANEL #16"

+EndList

+

+

+List &Panel_Stretch_List

+    Selection    0x00,    "Disable Panel Fitting"

+    Selection    0x01,    "Enabled for Text Modes Only"

+    Selection    0x02,    "Enabled for Graphics Modes Only"

+    Selection    0x03,    "Enabled for Both Text and Graphics Modes"

+EndList

+

+List &PCI_BIOS_Disabled_Enabled_List

+    Selection    0x00,    "Disabled"

+    Selection    0x01,    "Resize to 0.5K boundary"

+    Selection    0x20,    "Resize to 16K boundary"

+EndList

+

+List &RelStage

+    Selection    1,    "Production"

+    Selection    254,    "Evaluation"

+EndList

+

+List &Power_Scheme_List

+    Selection    0,    "CUI"

+    Selection    1,    "3rd Party Application"

+EndList

+

+List &Render_Freq_List

+    Selection    0,    "High Frequency"

+    Selection    1,    "Low Frequency"

+EndList

+

+List &SSC_List

+    Selection    0,    "96 MHz"

+    Selection    1,    "100 MHz"

+EndList

+

+List &SDVO_Panel_List

+    Selection    0x00,    "PANEL #01"

+    Selection    0x01,    "PANEL #02"

+    Selection    0x02,    "PANEL #03"

+    Selection    0x03,    "PANEL #04"

+EndList

+

+List &Yes_No_List

+    Selection    0,    "Yes"

+    Selection    1,    "No"

+EndList

+

+List &Sprite_Display_List

+    Selection    0,    "Secondary Display"

+    Selection    1,    "Primary Display"

+EndList

+

+List &Under_Over_List

+    Selection    0x0,    "Enable Underscan and Overscan modes"

+    Selection    0x1,    "Enable only overscan modes"

+    Selection    0x2,    "Enable only underscan modes"

+EndList

+

+List &Inter_Exter_List

+    Selection    0,    "External Termination"

+    Selection    1,    "Internal Termination"

+EndList

+

+List &DPS_Panel_Type_List

+        Selection       0x00,    "Static DRRS"

+        Selection       0x02,    "Seamless"

+EndList

+

+List &MSA_TimingDelay_List

+        Selection       0x00,    "Line 1"

+        Selection       0x01,    "Line 2"

+        Selection       0x02,    "Line 3"

+    Selection    0x03,     "Line 4"

+EndList

+

+List &Blt_Control_Type_List

+        ;Selection       0x00,    "Default"

+        Selection       0x01,    "CCFL Backlight"

+        Selection       0x02,    "LED Backlight"

+EndList

+

+

+List &Mode_Preferred_List

+        Selection       0x00,    "Mode Timing"

+        Selection       0x01,    "Preferred Timing"

+EndList

+

+List &DisplayList

+  Selection       0x08, "LFP"

+;  Selection       0x80, "LFP 2"

+  Selection       0x01, "CRT"

+  Selection       0x04, "EFP 1"

+  Selection       0x40, "EFP 2"

+;  Selection       0x20, "EFP 3"

+  Selection       0x00, "None"        

+EndList

+

+List &Dither_Select_Bit

+    Selection 0,  "Dithering in Panel controller"

+    Selection 1,  "Dithering in Display Controller"

+EndList

+

+List &MIPI_Bridge_Ref_Clock_List

+    Selection 0,  "19.2"

+    Selection 1,  "26"

+EndList

+

+List &Panel_Identifier_List

+	Selection 0x0,  "Use Sequence Block"

+	Selection 0x1,  "MIPI DSI Panel-1"

+	Selection 0x2,  "MIPI DSI Panel-2"

+	Selection 0x3,  "MIPI DSI Panel-3"

+	Selection 0x4,  "MIPI DSI Panel-4"

+	Selection 0x5,  "MIPI DSI Panel-5"

+	Selection 0x6,  "MIPI DSI Panel-6"

+	Selection 0x7,  "MIPI DSI Panel-7"

+	Selection 0x8,  "MIPI DSI Panel-8"

+	;Selection 0x9,  "MIPI DSI Panel-9"

+	;Selection 0xA,  "MIPI DSI Panel-10"

+	;Selection 0xB,  "MIPI DSI Panel-11"

+	;Selection 0xC,  "MIPI DSI Panel-12"	

+	;Selection 0xD,  "MIPI DSI Panel-13"

+	;Selection 0xE,  "MIPI DSI Panel-14"

+	;Selection 0xF,  "MIPI DSI Panel-15"

+	;Selection 0x10, "MIPI DSI Panel-16"

+EndList

+

+List &Panel_Type_List

+	Selection 0,  "Native MIPI DSI"

+	Selection 1,  "MIPI DSI to LVDS Bridge"

+EndList

+

+List &MIPI_DSI_Panel_Architecture_Type_List

+	Selection 0x0,  "Type 1"

+	Selection 0x1,	"Type 2"

+	Selection 0x2,	"Type 3"

+	Selection 0x3,	"Type 4"

+EndList

+

+List &Video_Command_Mode_List

+	Selection 0,  "Video Mode"

+	Selection 1,  "Command Mode"

+EndList

+

+List &Packet_Sequence_Video_Mode_List

+	;Selection 0x0, "Reserved"

+	Selection 0x1,  "Non-burst with sync pulse"

+	Selection 0x2,  "Non-burst with sync events"

+	Selection 0x3,  "Burst Mode"

+EndList

+

+List &Colour_Format_Video_Mode_List

+	Selection 0x1,  "RGB565"

+	Selection 0x2,  "RGB666"

+	Selection 0x3,  "RGB 666(Loosely Packed Format)"  

+	Selection 0x4,  "RGB888"

+EndList  

+

+List &Panel_Rotation_List

+	Selection 0x0,  "0 degree"

+	Selection 0x1,  "90 degree"

+	Selection 0x2,  "180 degree"

+	Selection 0x3,  "270 degree"

+EndList

+

+List &Enable_Disable_List

+	Selection 0,  "Enable"

+	Selection 1,  "Disable"

+EndList

+

+List &EscapeClk_List

+	Selection 0x0,  "20 MHz"

+	Selection 0x1,	"10 MHz"

+	Selection 0x2,	"5 MHz"

+	;Selection 0x3, "Undefined"

+EndList

+

+List &DPhyParamFlag_List

+	Selection 0,  "Dphy Param is not valid"

+	Selection 1,  "Dphy Param is valid"

+EndList

+

+List &MIPI_DSI_Panel_Color_Depth_List

+	Selection 0x0,  "18Bpp"

+	Selection 0x1,	"24Bpp"

+EndList

+

+List &Lane_Count_List

+	Selection 0x0,	"1"

+	Selection 0x1,	"2"

+	Selection 0x2,	"3"

+	Selection 0x3,  "4"

+EndList

+

+List &Dual_Link_List

+	Selection 0x0,  "Dual Link Not Supported"

+	Selection 0x1,  "Dual Link Front Back Mode"

+	Selection 0x2,  "Dual Link Pixel Alternative Mode"

+	;Selection 0x3,  "Reserved"

+EndList

+

+List &Hdmi_LS_List_VLV

+  Selection	0x00,	"1000mV -2.0dB"

+  Selection     0x01,	"1000mV 0.0dB"

+  Selection	0x02,	"800mV 0.0dB"

+  Selection	0x03,	"600mV 2.0dB"

+  Selection	0x04,	"600mV 0.0dB"

+EndList

+

+List &Edp_Pwm_Source_List

+  Selection 0x1,  "LPSS PWM"

+  Selection 0x2,  "DISPLAY PWM"

+EndList

+

+;==============================================================================

+; Page Definitions

+;------------------------------------------------------------------------------

+

+BeginInfoBlock

+    PPVer    "2.01"

+    Image EOF Thru EOF At EOF

+EndInfoBlock

+

+

+;==============================================================================

+; Page - VBT version

+;------------------------------------------------------------------------------

+

+Page "VBT version"

+

+  Title   "PLATFORM : Valleyview"

+  Title   "VBT version: 191"        

+

+EndPage		; VBT version

+

+

+

+;==============================================================================

+; Page - UEFI GOP Driver Configuration

+;------------------------------------------------------------------------------

+

+Page "UEFI GOP Driver Configuration"

+

+    ;Combo	$Hotplug_Support_Enb, " Hot Plug Support:", &Disabled_Enabled_List,

+    ;Help	"This feature is to enable/disable Hot Plug Suppport for CRT/DP/HDMI displays "

+

+  Title   "Child Device Configuration"    

+  Link    "Child Device List", "Child Device List"

+

+Title   "Fixed Mode"    

+Link    "Fixed Mode Feature", "Fixed Mode Feature"

+

+    ;==============================================================================

+    ; Page - Boot Display Algorithm

+    ;------------------------------------------------------------------------------

+

+  Page "Child Device List"

+    

+    Title   "Select the child devices that the GOP driver should enumerate if detected." 

+    Title   "Note: The child devices are listed here in decreasing order of priority. In case the system BIOS does not specify "

+    "the child device to start, then GOP driver selects the highest priority child device" 

+    

+    Link	"Close Window", ".."

+	

+    Title   "Child Device 1"

+    Combo   $ChildDevice1Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice1Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+	

+    Title   " "

+    Title   "Child Device 2"

+    Combo   $ChildDevice2Primary, " Primary display:"  , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice2Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 3"

+    Combo   $ChildDevice3Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice3Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 4"

+    Combo   $ChildDevice4Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice4Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 5"

+    Combo   $ChildDevice5Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice5Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 6"

+    Combo   $ChildDevice6Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice6Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+	

+    Title   " "

+    Title   "Child Device 7"

+    Combo   $ChildDevice7Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice7Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 8"

+    Combo   $ChildDevice8Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice8Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 9"

+    Combo   $ChildDevice9Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice9Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 10"

+    Combo   $ChildDevice10Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice10Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 11"

+    Combo   $ChildDevice11Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice11Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 12"

+    Combo   $ChildDevice12Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice12Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 13"

+    Combo   $ChildDevice13Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice13Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 14"

+    Combo   $ChildDevice14Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice14Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 15"

+    Combo   $ChildDevice15Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice15Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 16"

+    Combo   $ChildDevice16Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice16Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+  EndPage    ;"Child Device List"

+

+;============================================================================

+; Page - Fixed Mode Configuration

+;----------------------------------------------------------------------------

+

+Page    "Fixed Mode Feature"

+        Link    "Close Table", ".."

+          Combo   $Feature_Enable, "Enable Feature:",  &No_Yes_List,

+        Help    "Fixed Mode Feature allows user to fix a mode during POST such that only that particular mode will be always set.\r\n"

+"This field specifies if user wants to enable/disable the feature.\r\n"

+"When enabled user is expected to provide a valid input."

+

+        EditNum $X_res, "Horizontal Pixels:", DEC,

+        Help    "This value specifies the horizontal pixels of the mode. It should be always less than or equal to the native horizontal resolution.\r\n"

+

+        EditNum $Y_res, "Vertical Pixels:", DEC,

+        Help    "This value specifies the vertical pixels of the mode. It should be always less than or equal to the native vertical resolution.\r\n"

+	 

+EndPage

+EndPage    ; "UEFI GOP Driver Configuration"

+

+

+;============================================================================

+; Page - Windows Graphics Driver Configuration

+;----------------------------------------------------------------------------

+

+Page "Windows Graphics Driver Configuration"

+

+    Link "General Features" , "General Features"

+    Link "Display Features" , "Display Features"

+    Link "Power Conservation" , "Power Conservation"

+

+    Page    "General Features"

+        Link    "Close Table" , ".."

+

+    EditNum    $VBT_Customization_Version, "  VBT Customization Version:", DEC,

+    Help    "This feature allows the OEM to have a customized VBT version "

+        "number. The permissible values for VBT Customization version "

+        "is from 0 to 255.\r\n"

+        

+    Combo    $Driver_Boot_Device, "  First Boot Display Device:", &OS_Driver_List,

+    Help    "This feature allows the OEM to select which algorithm to "

+        "follow on the first boot after the driver has been "

+        "installed.\r\n"

+        "\r\n"

+        "OS Default - If this is selected, the operating system's "

+        "algorithm will be used.\r\n"

+        "\r\n"

+        "Driver Default - If this is selected, the boot device will "

+        "follow the driver algorithm.  The expected behavior can be "

+        "found in the Driver PRD chapter:  'First Boot Default "

+        "Display Resolutions'."

+

+     ;Combo    $Allow_FDOS_Disp_Switch, "  Allow Full Screen DOS Display Switching:", &No_Yes_List,

+     ;Help    "This feature allows display switching when the system is in "

+     ;   "full screen DOS.  When set to yes, display switching will be "

+      ;  "allowed while system is in full screen DOS.  When set to no, "

+       ; "display switching will be blocked when system is in full "

+        ;"screen DOS."

+

+    ;Combo    $Hot_Plug_DVO, "  DVO/SDVO Hot Plug:", &Disabled_Enabled_List,

+    ;Help    "This feature allows the OEM to disable the DVO/SDVO Hot Plug "

+    ;    "capability."

+

+    Combo    $Hot_Plug_CRT, "  CRT Hot Plug:", &Disabled_Enabled_List,

+    Help    "This feature allows the OEM to disable the CRT Hot Plug "

+        "capability. This is applicalbe only for driver hotplug in driver environment and not DOS (VBIOS mode)"

+

+    Combo    $Use_110h_for_LFP, "  Use _DOD 00000110h ID for Primary LFP:", &No_Yes_List,

+    Help    "This feature when set to yes will use the legacy value "

+        "00000110h as the ID for primary LFP in the ACPI _DOD, _DGS "

+        "method.  The ID is passed to the system BIOS through INT10h function 5F64h  "

+        "The ID 00000110h is the backwards compatible ACPI ID "

+        "for LFP, which may be necessary in where Microsoft* WindowsXP "

+        "TabletPC*'s Graphical User Interface is required for Backlight "

+        "Control(hardcoded by some Windows OSes). In all other cases, "

+        "the default new ID is strongly preferred."

+      

+

+    ;Combo    $DVD_Sprite_Clone, "  Disable Sprite (DVD) in Clone Mode:", &Yes_No_List,

+    ;Help    "This feature when selected 'No', will allow the sprite to be "

+       ; "active during DVD playback when the platform is in a Dual "

+       ; "Display Clone configuration.  Otherwise, when selected 'Yes', "

+       ; "the overlay sprite will be disabled during DVD playback when the "

+       ; "platform is in a Dual Display Clone configuration."

+

+    Combo    $GTF_Mode_Pruning, "  Selective Mode Pruning:", &Disabled_Enabled_List,

+    Help    "This feature when enabled will instruct driver software not "

+        "to enumerate or set specific display modes determined as "

+        "unsupported according to the EDID capabilities of the "

+        "display. If the display indicates support for all GTF/DMTS "

+        "timings in the display's EDID, then all modes supported by "

+        "the graphics host will be enumerated.  If the display does "

+        "NOT indicate support for GTF/DMTS timings in the display's "

+        "EDID, then some modes/timings that may have been enumerated "

+        "by the display driver shall not be set."

+        "\r\n"

+        "\r\n"

+        "Note: This option applies for all display types.  And in the "

+        "absence of other platform configuration information (e.g. "

+        "OEM Customizable Mode) requiring inclusion of that display "

+        "mode/timings."

+

+    ;Combo    $Sprite_Display_Assign, "  Sprite Display Assignment for When Overlay is Active in Clone Mode:", &Sprite_Display_List,

+    ;Help    "This feature when set to Primary Display, the driver will "

+     ;   "assign the Sprite (2ndary overlay) to the primary display "

+      ;  "defined in the current Dual Display Clone configuration, "

+       ; "otherwise when this feature is set to Secondary Display, the "

+        ;"driver will assign the Sprite (2ndary overlay) to the "

+        ;"secondary display defined in the current Dual Display Clone "

+        ;"configuration. Note:  This bit will have no affect if an "

+        ;"application is using the VMR API. "

+

+

+        

+    Combo    $CUIHotK_Static_Display, "  Display must be attached for CUI/Hot Key:", &Yes_No_List,

+    Help    "This feature allows a selectable option to determine whether "

+        "the display device must be attached for CUI Hot Key.\r\n"

+        "\r\n"

+        "With the 'No' option the display devices do not have to be "

+        "attached when enabling the displays via CUI Devices Pages, "

+        "CUI Hot Key.  Note: This feature may cause the user to have "

+        "a blank display device due to switching to a display that is "

+        "not attached.\r\n"

+        "\r\n"

+        "With the 'Yes' option the display device must be attached or "

+        "the display switch attempt will be blocked."

+    EndPage

+

+    Page    "Display Features"

+        Link    "Close Table" , ".."

+

+     Combo    $CUI_Maintain_Aspect, "  Enable 'Maintain Aspect Ratio':", &No_Yes_List,

+    Help    "This feature allows the OEM to enable or disable the 'Maintain "

+        "Aspect Ratio' feature.  When the option is set to Yes, the "

+        "feature will be enabled and CUI will show for end user "

+        "selection 'Maintain Aspect Ratio'.  When the option is set to "

+        "No, the complete 'Maintain Aspect Ratio' feature will be disabled."

+

+    Combo    $Preserve_Aspect_Ratio, "  Preserve Aspect Ratio:", &Disabled_Enabled_List,

+    Help    "This feature allows the OEM to configure the default option "

+        "for aspect ratio settings. When enabled, the CUI will reflect "

+        "preserve the aspect ratio as active setting.  Otherwise, when "

+        "disabled, the CUI will use the setting 'Panel Fitting Initial "

+        "States' as default aspect ratio setting.  This option will "

+        "only be available for initial boot value. Any subsequent "

+        "change in CUI will have higher priority."

+      

+    Title      "    "

+    TitleB      "Legacy Monitor Mode Limit"

+

+    EditNum    $Legacy_Monitor_Max_X, "  Maximum X Resolution (Pixels):", DEC,

+    Help    "This feature allows the limiting of selectable display modes "

+        "when a legacy monitor is detected.  The maximum resolution is "

+        "specified by a maximum number of horizontal active pixels."

+        "\r\n"

+        "Note: A legacy monitor is defined as a monitor with no DDC "

+        "available."

+

+    EditNum    $Legacy_Monitor_Max_Y, "  Maximum Y Resolution (Pixels):", DEC,

+    Help    "This feature allows the limiting of selectable display modes "

+        "when a legacy monitor is detected.  The maximum resolution is "

+        "specified by a maximum number of vertical active pixels."

+        "\r\n"

+        "Note: A legacy monitor is defined as a monitor with no DDC "

+        "available."

+

+    EditNum    $Legacy_Monitor_Max_RR, "  Maximum Refresh Rate (Hz):", DEC,

+    Help    "This feature allows the limiting of selectable display modes "

+        "when a legacy monitor is detected.  The maximum refresh rate "

+        "is specified in Hz."

+        "\r\n"

+        "Note: A legacy monitor is defined as a monitor with no DDC "

+        "available."

+

+		

+	Title      "    "

+    TitleB      "Rotation Support Configuration"

+    

+	

+    Combo    $Rotation_Support_Enable, "Support Rotation Feature:", &No_Yes_List,

+    Help    "This feature when set to yes, can cause the graphics driver to "

+			"support rotation feature, otherwise rotation feature support "

+			"will be disabled."

+			"\r\n"

+			"Note: Setting this field to Yes is a necessary condition for driver to " 

+			"support rotation feature, but it is not sufficient."

+			

+		

+    Title      "    "

+    TitleB      "Graphics Mode to Boot on Windows"

+	

+	

+    EditNum    $Driver_Boot_Mode_X, "  X Resolution (Pixels):", DEC,

+    Help    "This feature allows the OEM to select which resolution the "

+        "system will use on the first reboot after the driver has "

+        "been installed.\r\n"

+        "\r\n"

+        "X Resolution (Pixels)\r\n"

+        "\r\n"

+        "Note: This feature is only used when the Boot Display "

+        "Algorithm is set to Driver Default."

+

+    EditNum    $Driver_Boot_Mode_Y, "  Y Resolution (Pixels):", DEC,

+    Help    "This feature allows the OEM to select which resolution the "

+        "system will use on the first reboot after the driver has "

+        "been installed.\r\n"

+        "\r\n"

+        "Y Resolution (Pixels)\r\n"

+        "\r\n"

+        "Note: This feature is only used when the Boot Display "

+        "Algorithm is set to Driver Default."

+

+    EditNum    $Driver_Boot_Mode_BPP, "  Color Depth (Bits/Pixel):", DEC,

+    Help    "This feature allows the OEM to select which resolution the "

+        "system will use on the first reboot after the driver has "

+        "been installed.\r\n"

+        "\r\n"

+        "Color Depth (BPP)\r\n"

+        "\r\n"

+        "Note: This feature is only used when the Boot Display "

+        "Algorithm is set to Driver Default."

+

+    EditNum    $Driver_Boot_Mode_RR, "  Refresh Rate (Hz):", DEC,

+    Help    "This feature allows the OEM to select which resolution the "

+        "system will use on the first reboot after the driver has "

+        "been installed.\r\n"

+        "\r\n"

+        "Refresh Rate (Hz)\r\n"

+        "\r\n"

+        "Note: This feature is only used when the Boot Display "

+        "Algorithm is set to Driver Default."

+Title      "     "

+TitleB      "TV features"

+

+    Combo	$Under_Over_Scan_Via_DVI, "  Enable underscanned modes for HDTV via HDMI:", &Under_Over_List,

+    Help	"When 720p is found in the EDID structure of the active HDMI "

+    "display and enable underscan modes is selected, 1184x666 will "

+    "be available and be centered in 720p timings when enabled. "

+    "\r\n"

+    "When 1080i or 1080p is found in the EDID structure of the "

+    "active DVI display and enable underscan modes is selected, "

+    "1776x1000 will be centered in appropriate 1080 timings. "

+

+    Title	"\r\n"

+    Title	"  Add 1776x1000 when 1080i is selected and add 1184x666 when 720p is selected for HDTV via HDMI:"

+    Combo	$Add_Overscan_Mode, " ", &Disabled_Enabled_List,

+    Help	"For 1080i format, 1776x1000 will be made available in CUI "

+    "along with native resolution 1920x1080.  For 720p format, "

+    "1184x666 will be made available in CUI along with native "

+    "resolution 1280x720. These resolutions are exposed to get the "

+    "HDMI image under scanned with task bar visible."

+  EndPage	; Display features

+

+

+    

+    

+    Page    "Power Conservation"

+        Link    "Close Table" , ".."

+    

+    ;Combo    $SDVO_Device_Power_Down, "  SDVO device power down:", &Disabled_Enabled_List,

+    ;Help    "This feature powers down the SDVO device when the system is "

+        "running in battery mode (DC) and the corresponding display "

+        "not connected."

+

+    Combo    $BIA_Enable, "  Intel � Display Power Saving Technology Support for the LFP:", &Disabled_Enabled_List,

+    Help    "This feature determines whether the Intel � Display Power "

+        "Savings Technology (DPST) is enabled or disabled.  Intel � DPST "

+        "is a display power savings technology that changes the "

+        "intensity of colors in order to conserve backlight power."

+        "\r\n\r\nNote: This technology is only active when the system "

+        "is running in battery mode and the LFP is the only active "

+        "display device."

+

+    Combo    $BIA_Aggress_Level, "  Power Conservation Preference Level for the LFP:", &Pwr_Pref_List,

+    Help    "This feature defines the Intel � Display Power Saving Technology "

+        "aggressiveness level if and only if the feature Intel � Display Power Saving "

+        "Technology is enabled."   

+        "\r\n\r\nThe following are the definitions for each level:"

+        "\r\n1 - Maximum Quality - shall use no DPST "

+        "\r\n2 - Provides  the user the maximum "

+        "brightness for their embedded Local Flat Panel (LFP)while DPST is in use"

+        "\r\n3 - This level defines maximum amount of brightness with "

+        "minimal power savings"

+        "\r\n4 - This level defines an intermediate value for brightness amount"

+        "\r\n5 - This level defines an intermediate value for the brightness amount"

+        "\r\n6 - Maximum Battery - Provided the user with the minimum amount of "

+        "brightness capable for their LFP with the maximum power savings"

+		

+	Combo	$Panel_Self_Refresh, "  Panel Self Refresh (PSR):", &Disabled_Enabled_List,

+    Help	"This feature determines whether Panel Self Refresh (PSR) feature is to be enabled. "

+	

+	Combo   $PM_DRRS_Enable, "  Intel � Display Refresh Rate Switching (DRRS):", &Disabled_Enabled_List,

+    Help	"This feature determines whether Intel � Display Refresh Rate Switching (DRRS) is to be "

+			"enabled or not. "

+

+    Combo    $ALS_Enable, "  Intel � Automatic Display Brightness Support for the LFP:", &Disabled_Enabled_List,

+    Help    "This feature determines whether Intel � Automatic Display Brightness is to be "

+        "enabled.  Intel � Automatic Display Brightness adjusts the brightness of the "

+        "embedded Local Flat Panel (LFP) depending on the current "

+        "ambient light environment.  When enabled, the driver and VBIOS"

+        " will control the backlight brightness of the LFP depending "

+        "on the ambient environment if and only if the LFP is the only "

+        "active display.  When disabled, the driver and VBIOS will "

+        "perform no action."

+

+    Combo $DMRRS, "  Dynamic Media Refresh Rate Switching (DMRRS):", &Disabled_Enabled_List,

+	Help	"This feature determines whether Dynamic Media Refresh Rate Switching feature is to be enabled. "

+

+    Link "Ambient Light Response Data" , "Ambient Light Response Data"

+

+        Page    "Ambient Light Response Data"

+            Link    "Close Table" , ".."

+

+            Table    $ALS_Response_Data " Ambient Light Response Data",

+            Column    "Backlight Adjust", 2 bytes, EHEX

+            Column    "Lux", 2 bytes, EHEX,

+            Help    "This feature defines values used to calibrate the "

+                "Intel � Automatic Display Brightness policy's "

+                "response to account for specific hardware implementation "

+                "details such as sensor placement and optics.  Up to five "

+                "points can be specified, where each point indicates a given "

+                "ambient light illuminance to display luminance mapping "

+                "specified as (<%BacklightAdjust>, <Lux>).  Points should be "

+                "listed in monotonically increasing order by ambient light "

+                "illuminance (lux).  A minimum of two points are required "

+                "(min and max)."

+        EndPage

+

+    EndPage

+ EndPage    

+;==============================================================================

+; Page - Display Configuration

+;------------------------------------------------------------------------------

+

+Page "Display Configuration"

+

+    Link "LFP" , "LFP"

+    Link "CRT" , "CRT"

+    Link "EFP 1" , "EFP 1"

+    Link "EFP 2" , "EFP 2"

+	

+	TitleB "DisplayPort SSC configuration: " 

+    Combo	$DP_SSC_Enb, " DisplayPort (External Connectors) Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature allow OEMs to enable/disable SSC for external DisplayPort.  "

+    "This feature is valid only the attached DisplayPort panel support SSC. "

+    "\r\n"

+

+    Combo	$DP_SSC_Dongle_Enb, " DisplayPort Spread Spectrum Clock Enable/Disable for Dongles:", &Disabled_Enabled_List,

+    Help "This feature is to enable or disable DisplayPort Dongle Spread Spectrum Clock when dongle are used "

+    "and the attached DisplayPort panel should support SSC\r\n"

+

+	

+    Page    "LFP"

+        Link    "Close Table", ".."

+		

+        Combo    $Int_LFP1_Type , "Active Local Flat Panel Configuration", &eDP_Config_List,

+        Help    "This option select Device type. Save the configuration after selecting this field to see display related settings."

+

+       ; #IF	($Int_LFP1_Type == 0x1806)

+		Combo	$Int_LFP1_Port, "Select Output Port:", &LFP_Port_list,

+		Help	"This feature specifies which DVO port the device is "

+		;#ENDIF

+				

+		 Combo	$Int_LFP1_AUX_Channel, "Select AUX Channel:", &Int_eDP_AUX_Channel_List,

+		 Help	"This feature specifies the AUX Channel for int-DisplayPort. "

+			"This field is valid only if integrated DP is selected for Device Type."			

+			

+        ;Combo    $Int_LFP1_Priority, "Primary LFP panel: ", &Yes_No_List,

+        ;Help    "This feature will select if the panel is primary or not. "

+        ;        "The VLV platform has only one panel fitter. So, stretched mode will be only applicable "

+        ;        "to primary panel . In secondary panel only native mode or "

+        ;        "centering modes will be supported."

+		

+        Combo    $bmp_Panel_type, "Select Panel Type:", &Panel_List, 

+        Help    "This feature selects the Local Flat Panel (LFP) the VBIOS "

+                "and driver is to enable.\r\n" 

+                "\r\n"

+                "Note, a valid return from the system BIOS hook 5F40h will "

+                "replace this default value.\r\n"

+                "\r\n"

+                "Default LFP parameter values:\r\n"

+                "\tPANEL #01: 640x480 LVDS\r\n"

+                "\tPANEL #02: 800x600 LVDS\r\n"

+                "\tPANEL #03: 1024x768 LVDS\r\n"

+                "\tPANEL #04: 1280x1024 LVDS\r\n "

+                "\tPANEL #05: 1400x1050 Reduced Blanking LVDS\r\n"

+                "\tPANEL #06: 1400x1050 Non-Reduced Blanking LVDS\r\n"

+                "\tPANEL #07: 1600x1200 LVDS\r\n"

+                "\tPANEL #08: 1280x768 LVDS\r\n"

+                "\tPANEL #09: 1680x1050 LVDS\r\n"

+                "\tPANEL #10: 1920x1200 LVDS\r\n"

+                "\tPANEL #11: Reserved\r\n"

+                "\tPANEL #12: Reserved\r\n "

+                "\tPANEL #13: Reserved\r\n"

+                "\tPANEL #14: 1280x800 LVDS\r\n"

+                "\tPANEL #15: 1280x600 LVDS\r\n"

+                "\tPANEL #16: Reserved"      

+				

+        Combo   $bmp_Panel_EDID, "Local Flat Panel (LFP) EDID Support: ", &Disabled_Enabled_List,

+        Help    "This feature, when enabled, will activate support for a LFP "

+                "with an EDID.  The video BIOS and drivers will load the EDID "

+                "and use its data to set appropriate timing on current panel.  "

+                "If disabled, there will be no attempt to read an EDID and other methods "

+                "will be used to set panel timing."

+                "\r\n\r\nNote:  The backlight data may need to be updated." 

+                "\r\n       The <LFP DDC GPIO pin pair> option on page General"

+                " Features must be correct for platform."

+		

+		Combo    $180_Deg_Rotation_Enable, "Enable 180 Degree Rotation:", &No_Yes_List,

+		Help    "This feature when set to yes, will enable 180 Degree rotation  "

+				"otherwise, the rotation functionality will be disabled."

+		

+		Combo	$Enable_Correction, "Gamma/Brightness/Contrast Correction Enable:", &Disabled_Enabled_List,

+		Help	"This option will allow users to disable/enable Gamma/Brightness/Contrast correction feature for eDP. By default it will be disabled.\r\n"

+				"On enabling one can find option for entering values for Red/Blue/Green Palette Table under LFP Panel configuration.\r\n"

+				"Each Red/Blue/Green Palette Table has 256 entries/rows of 1-byte each. Enter required values in these fields.\r\n"

+				

+    EndPage  

+	

+	

+

+    Page "CRT"

+        Link    "Close Window" , ".."

+

+        Combo    $Int_CRT_Support, "CRT Device:", &Int_CRT_Device_Type_List,

+        Help    "This option select CRT Device."

+

+		Combo	$CRT_DDC_GMBUS_Pin, "Select DDC Bus GPIO Pin Pair:", &GPIO_Pin_List,

+		Help	"This feature specifies the GPIO pin pair "

+			"used as DDC bus by this device.  If this device "

+			"doesn't support DDC bus, this field will be ignored."

+

+    EndPage

+

+    Page "EFP 1"

+        Link    "Close Window" , ".."

+

+        Combo    $Int_EFP1_Type, "Device Type", &Int_EFP_Device_Type_List,

+        Help    "This option specifies the Device Type."

+

+		Combo	$Int_EFP1_Port, "Select Output Port:", &Int_EFP_Port_List,

+		Help	"This feature specifies which DVO port the device is "

+

+		Combo	$Int_EFP1_DDC_Pin, "Select DDC Bus GPIO Pin Pair:", &GPIO_Pin_List,

+		Help	"This feature specifies the GPIO pin pair "

+			"used as DDC bus by this device.  If this device "

+			"doesn't support DDC bus, this field will be ignored."

+		

+		Combo	$Int_EFP1_AUX_Channel, "Select AUX Channel:", &Int_DP_AUX_Channel_List,

+		 Help	"This feature specifies the AUX Channel for int-DisplayPort. "

+		        "This field is valid only if integrated DP is selected for Device Type."	

+		

+        Combo	$Int_EFP1_HDMI_LS_Type, "Select HDMI level shifter configuration:", &Hdmi_LS_List_VLV,

+		Help	"This feature specifies the Level shifter configuration for HDMI. "

+				"This field is valid only if HDMI is selected for Device Type."

+				

+		;Combo    $Int_EFP1_Dongle_Detect, "Select Dongle Detect:", &Disabled_Enabled_List,

+        ;Help    "This option Enables/Disables detection of type of dongle connected to DP port.\r\n"

+        ;       "This option is used only by the GFX driver."

+

+	    Combo	$Int_EFP1_Docked_Port, "Dockable: ", &No_Yes_List,

+		Help	"This field describes if the Display Port is routed through Dock or not."	

+		

+		Link "DisplayPort Redriver Configuration" , "DisplayPort Redriver Configuration"

+		

+		Page	"DisplayPort Redriver Configuration"

+

+			Combo	$EFP1_OnBoard_Redriver_Present, "Non-dock topology:", &No_Yes_List,

+			Help	"This feature will describe if Non-dock topology/OnBoard Redriver DP Link is present or not."

+

+			Combo	$EFP1_OnBoard_PreEmph_Level, "  Pre-Emphasis Level:", &eDP_Link_PreEmp_List,

+			Help	"This feature allows for the selection of "

+					"Pre-emphasis level for the OnBoard redriver DP link.\n"

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+ 

+			Combo	$EFP1_OnBoard_VSwing_Level, "  Voltage Swing Level:", &eDP_Link_VSwing_List,

+			Help	"This feature allows for the selection of "

+					"Voltage Swing level for the OnBoard redriver DP link.\n"

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+					

+			Title	"	"

+

+			Combo	$EFP1_OnDock_Redriver_Present, "Dock Topology: (Mobile only)", &No_Yes_List,

+			Help	"This feature will describe if Dock Topology/Dock Redriver DP Link is present or not.\r\n\r\n"

+					"Note: For Dock Topology to work SBIOS should implement a GOP Policy Protocol to provide the"

+					" docking status of the platform to GOP.\n"

+					

+			Combo	$EFP1_OnDock_PreEmph_Level, "  Pre-Emphasis Level:", &eDP_Link_PreEmp_List,

+			Help	"This feature allows for the selection of "

+					"Pre-emphasis level for the Dock redriver DP link."

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+			Combo	$EFP1_OnDock_VSwing_Level, "  Voltage Swing Level:", &eDP_Link_VSwing_List,

+			Help	"This feature allows for the selection of "

+					"Voltage Swing level for the Dock redriver DP link."

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+		EndPage		; "DisplayPort Redriver Configuration"

+				

+    EndPage

+

+    

+    Page "EFP 2"

+        Link    "Close Window" , ".."

+

+        Combo    $Int_EFP2_Type, "Device Type:", &Int_EFP_Device_Type_List,

+        Help    "This option specifies the Device Type."

+

+		Combo	$Int_EFP2_Port, "Select Output Port:", &Int_EFP_Port_List,

+		Help	"This feature specifies which DVO port the device is "

+		

+		Combo	$Int_EFP2_DDC_Pin, "Select DDC Bus GPIO Pin Pair:", &GPIO_Pin_List,

+		Help	"This feature specifies the GPIO pin pair "

+			"used as DDC bus by this device.  If this device "

+			"doesn't support DDC bus, this field will be ignored."

+		

+		 Combo	$Int_EFP2_AUX_Channel, "Select AUX Channel:", &Int_DP_AUX_Channel_List,

+		 Help	"This feature specifies the AUX Channel for int-DisplayPort. "

+		        "This field is valid only if integrated DP is selected for Device Type."	

+

+        Combo	$Int_EFP2_HDMI_LS_Type, "Select HDMI level shifter configuration:", &Hdmi_LS_List_VLV,

+		Help	"This feature specifies the Level shifter configuration for HDMI. "

+				"This field is valid only if HDMI is selected for Device Type."

+        

+        ;Combo    $Int_EFP2_Dongle_Detect, "Select Dongle Detect:", &Disabled_Enabled_List,

+        ;Help    "This option Enables/Disables detection of type of dongle connected to DP port.\r\n"

+               ; "This option is used only by the GFX driver."

+			   

+	    Combo	$Int_EFP2_Docked_Port, "Dockable: ", &No_Yes_List,

+		Help	"This field describes if the Display Port is routed through Dock or not."	

+		

+		Link "DisplayPort Redriver Configuration" , "DisplayPort Redriver Configuration"

+		

+		Page	"DisplayPort Redriver Configuration"

+

+			Combo	$EFP2_OnBoard_Redriver_Present, "Non-dock topology:", &No_Yes_List,

+			Help	"This feature will describe if Non-dock topology/OnBoard Redriver DP Link is present or not."

+

+			Combo	$EFP2_OnBoard_PreEmph_Level, "  Pre-Emphasis Level:", &eDP_Link_PreEmp_List,

+			Help	"This feature allows for the selection of "

+					"Pre-emphasis level for the OnBoard redriver DP link.\n"

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+ 

+			Combo	$EFP2_OnBoard_VSwing_Level, "  Voltage Swing Level:", &eDP_Link_VSwing_List,

+			Help	"This feature allows for the selection of "

+					"Voltage Swing level for the OnBoard redriver DP link.\n"

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+					

+			Title	"	"

+

+			Combo	$EFP2_OnDock_Redriver_Present, "Dock Topology: (Mobile only)", &No_Yes_List,

+			Help	"This feature will describe if Dock Topology/Dock Redriver DP Link is present or not.\r\n\r\n"

+					"Note: For Dock Topology to work SBIOS should implement a GOP Policy Protocol to provide the"

+					" docking status of the platform to GOP.\n"

+

+			Combo	$EFP2_OnDock_PreEmph_Level, "  Pre-Emphasis Level:", &eDP_Link_PreEmp_List,

+			Help	"This feature allows for the selection of "

+					"Pre-emphasis level for the Dock redriver DP link."

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+			Combo	$EFP2_OnDock_VSwing_Level, "  Voltage Swing Level:", &eDP_Link_VSwing_List,

+			Help	"This feature allows for the selection of "

+					"Voltage Swing level for the Dock redriver DP link."

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+		EndPage		; "DisplayPort Redriver Configuration"

+				

+    EndPage

+    

+    

+EndPage

+

+

+;============================================================================

+; Page - LFP Panel configuration

+;----------------------------------------------------------------------------

+Page "LFP Panel configuration"

+    Link "Panel #1 ", "Panel #1 "

+    Link "Panel #2 ", "Panel #2 "

+    Link "Panel #3 ", "Panel #3 "

+    Link "Panel #4 ", "Panel #4 "

+    Link "Panel #5 ", "Panel #5 "

+    Link "Panel #6 ", "Panel #6 "

+    Link "Panel #7 ", "Panel #7 "

+    Link "Panel #8 ", "Panel #8 "

+    Link "Panel #9 ", "Panel #9 "

+    Link "Panel #10 ", "Panel #10 "

+    Link "Panel #11 ", "Panel #11 "

+    Link "Panel #12 ", "Panel #12 "

+    Link "Panel #13 ", "Panel #13 "

+    Link "Panel #14 ", "Panel #14 "

+    Link "Panel #15 ", "Panel #15 "

+    Link "Panel #16 ", "Panel #16 "

+#if($Enable_Correction == 1)

+	Link "RGB Palette Table ", "RGB Palette Table "

+#endif	

+

+;==============================================================================

+; Page - Panel #1 (640x480) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #1 "

+

+    TitleB  "Common LFP Features" 

+	

+	EditText   $Panel_Name_01, "\tLFP Panel Name:", 

+	Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_01, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_01, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_01, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+

+    Combo    $DPS_Panel_Type_01, "\tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_01, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+

+    Combo    $Blt_Control_01, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+	

+	Combo	$Enable_SSC01, "\teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_01, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+     

+	Combo    $eDP_VswingPreEmph_1, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_01, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+				

+		EditNum    $eDP_Vcc_To_Hpd_Delay_01, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_01, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_01, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_01, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_01, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_01, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_01, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_01, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."        

+        

+        Combo    $eDP_Link_DataRate_01, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_01, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_01, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-Emphasis Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+				         

+        Combo    $eDP_Link_Vswing_Level_01, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+				

+    EndPage

+	

+    #endif

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_01 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_01 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_1, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_01, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_1, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_1, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+		EditNum    $POST_BL_Brightness_01, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_1, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+

+    EndPage

+    

+	

+EndPage

+

+;==============================================================================

+; Page - Panel #2 (800x600) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #2 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_02, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_02, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_02, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_02, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_02, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_02, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_02, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+	

+    Combo	$Enable_SSC02, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_02, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_2, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+	Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_02, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_02, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_02, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_02, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_02, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_02, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_02, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_02, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+		

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_02, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_02, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_02, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_02, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+        Combo    $eDP_Link_Vswing_Level_02, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+    #endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_02 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_02 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_2, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_02, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_2, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_2, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+		EditNum    $POST_BL_Brightness_02, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_2, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+	

+

+EndPage

+

+

+;==============================================================================

+; Page - Panel #3 (1024x768 LVDS) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #3 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_03, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_03, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_03, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_03, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_03, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_03, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_03, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+		   

+			

+    #if ($Int_LFP1_Type == 0x1806)			

+    TitleB   "Integrated eDP Features"	

+			   

+    Combo	$Enable_SSC03, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+      

+

+	Combo    $eDP_Panel_Color_Depth_03, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_3, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+				   

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_03, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+		"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+		"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_03, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_03, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_03, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_03, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_03, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_03, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_03, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_03, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_03, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_03, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_03, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level value for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_03, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+    #endif

+

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_03 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_03 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_3, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_03, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_3, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_3, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_03, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_3, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+        EndPage

+		

+

+EndPage

+

+

+;==============================================================================

+; Page - Panel #4 (1280x1024 LVDS) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #4 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_04, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_04, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_04, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_04, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_04, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_04, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_04, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+

+

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+				   			   

+    Combo	$Enable_SSC04, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+

+	Combo    $eDP_Panel_Color_Depth_04, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_4, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+				   

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+		Combo	$eDP_T3_Optimization_04, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+            "When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+            "When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_04, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_04, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_04, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_04, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_04, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_04, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_04, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_04, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_04, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_04, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_04, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+        Combo    $eDP_Link_Vswing_Level_04, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+    #endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_04 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_04 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_4, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_04, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_4, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_4, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_04, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_4, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+	

+EndPage

+

+

+;==============================================================================

+; Page - Panel #5 (1400x1050 LVDS - Reduced Blank) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #5 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_05, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_05, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_05, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_05, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_05, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_05, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_05, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+    

+   

+    #if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+

+    Combo	$Enable_SSC05, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+        

+	

+

+	Combo    $eDP_Panel_Color_Depth_05, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_5, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+		Combo	$eDP_T3_Optimization_05, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_05, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_05, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_05, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_05, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_05, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_05, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_05, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_05, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_05, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_05, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_05, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_05, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+    #endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_05 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_05 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_5, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_05, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_5, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_5, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_05, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_5, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+	

+

+EndPage

+

+

+;==============================================================================

+; Page - Panel #6 (1400x1050) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #6 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_06, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_06, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_06, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_06, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_06, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_06, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_06, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+		   

+    Combo	$Enable_SSC06, "\teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+      

+	

+	Combo    $eDP_Panel_Color_Depth_06, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_6, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_06, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_06, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_06, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_06, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_06, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_06, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_06, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_06, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+   

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_06, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_06, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_06, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_06, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_06, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_06 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_06 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_6, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_06, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_6, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_6, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_06, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_6, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+	

+

+

+EndPage

+

+

+

+;==============================================================================

+; Page - Panel #7 (1600x1200) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #7 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_07, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_07, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_07, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_07, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_07, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_07, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_07, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+    

+	#if ($Int_LFP1_Type == 0x1806)

+	TitleB   "Integrated eDP Features"

+					  

+    Combo	$Enable_SSC07, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+

+	Combo    $eDP_Panel_Color_Depth_07, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_7, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_07, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_07, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_07, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_07, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_07, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_07, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_07, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_07, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+   

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_07, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_07, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_07, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_07, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_07, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_07 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_07 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_7, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_07, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_7, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_7, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_07, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_7, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+

+;==============================================================================

+; Page - Panel #8 (1280x768) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #8 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_08, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_08, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_08, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_08, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_08, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_08, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_08, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+    		   

+    Combo	$Enable_SSC08, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	

+	Combo    $eDP_Panel_Color_Depth_08, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_8, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_08, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_08, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_08, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_08, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_08, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_08, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_08, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_08, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+   

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_08, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_08, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_08, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_08, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+            

+        Combo    $eDP_Link_Vswing_Level_08, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+		

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_08 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_08 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_8, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_08, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_8, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_8, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+		EditNum    $POST_BL_Brightness_08, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_8, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+

+;==============================================================================

+; Page - Panel #9 (1680x1050) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #9 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_09, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_09, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_09, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_09, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_09, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_09, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_09, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)	

+    TitleB   "Integrated eDP Features"

+    	   

+    Combo	$Enable_SSC09, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_09, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_9, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_09, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+			

+		EditNum    $eDP_Vcc_To_Hpd_Delay_09, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_09, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_09, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_09, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_09, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_09, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_09, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+   

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_09, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_09, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_09, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_09, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+  

+        Combo    $eDP_Link_Vswing_Level_09, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_09 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_09 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_9, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_09, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_9, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_9, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_09, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_9, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+   

+EndPage

+

+

+;==============================================================================

+; Page - Panel #10 (1920x1200) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #10 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_10, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_10, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_10, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_10, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_10, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_10, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_10, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+ 	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"	

+	

+    Combo	$Enable_SSC10, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	Combo    $eDP_Panel_Color_Depth_10, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_10, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+		Combo	$eDP_T3_Optimization_10, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_10, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_10, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_10, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_10, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_10, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_10, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_10, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_10, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_10, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_10, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_10, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+        Combo    $eDP_Link_Vswing_Level_10, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_10 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_10 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_10, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_10, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_10, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_10, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_10, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_10, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+;==============================================================================

+; Page - Panel #11 (Reserved) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #11 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_11, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_11, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_11, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_11, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_11, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_11, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_11, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+	

+	Combo	$Enable_SSC11, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_11, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+			"This feature selects the Vswing Pre-emph settings to be used.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_11, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_11, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_11, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_11, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_11, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_11, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_11, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_11, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+        Combo	$Fast_Link_Training_Supported_11, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+				

+        Combo    $eDP_Link_DataRate_11, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_11, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_11, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_11, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_11 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_11 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_11, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_11, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_11, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_11, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_11, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_11, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+         

+EndPage

+

+;==============================================================================

+; Page - Panel #12 (Reserved) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #12 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_12, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_12, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_12, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_12, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_12, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_12, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_12, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+    

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+	

+	Combo	$Enable_SSC12, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+

+	Combo    $eDP_Panel_Color_Depth_12, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_12, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+			

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_12, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_12, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_12, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_12, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_12, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_12, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_12, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_12, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_12, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_12, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_12, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_12, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_12, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_12 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_12 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_12, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_12, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_12, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_12, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_12, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_12, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+   

+EndPage

+

+;==============================================================================

+; Page - Panel #13 (Reserved) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #13 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_13, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_13, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_13, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_13, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_13, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_13, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_13, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+					   

+	Combo	$Enable_SSC13, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+

+	Combo    $eDP_Panel_Color_Depth_13, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_13, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+

+				   	

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_13, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_13, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_13, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_13, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_13, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_13, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_13, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_13, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_13, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_13, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_13, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_13, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_13, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_13 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_13 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_13, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_13, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_13, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_13, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_13, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_13, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+;==============================================================================

+; Page - Panel #14 (1280x800) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #14 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_14, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_14, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_14, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_14, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_14, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_14, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_14, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"	

+					   

+	Combo	$Enable_SSC14, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_14, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_14, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_14, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+				

+		EditNum    $eDP_Vcc_To_Hpd_Delay_14, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_14, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_14, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_14, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_14, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_14, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_14, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_14, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_14, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_14, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_14, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+            

+        Combo    $eDP_Link_Vswing_Level_14, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+		

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_14 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_14 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_14, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_14, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_14, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_14, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_14, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_14, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+;==============================================================================

+; Page - Panel #15 (1280x600) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #15 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_15, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_15, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_15, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_15, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_15, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_15, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_15, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"	

+		   

+	Combo	$Enable_SSC15, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+

+	Combo    $eDP_Panel_Color_Depth_15, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_15, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_15, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+				

+		EditNum    $eDP_Vcc_To_Hpd_Delay_15, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_15, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_15, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_15, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_15, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_15, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_15, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_15, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_15, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_15, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_15, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+        Combo    $eDP_Link_Vswing_Level_15, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_15 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_15 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_15, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_15, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_15, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_15, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_15, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+

+        EditNum    $PWM_Frequency_15, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+;==============================================================================

+; Page - Panel #16 (Reserved) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #16 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_16, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_16, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_16, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_16, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_16, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_16, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_16, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"	

+	   

+	Combo	$Enable_SSC16, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_16, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_16, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_16, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_16, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_16, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_16, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_16, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_16, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_16, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_16, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_16, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_16, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_16, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_16, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+            

+        Combo    $eDP_Link_Vswing_Level_16, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_16 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_16 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_16, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_16, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_16, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_16, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_16, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_16, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+     

+EndPage

+

+;==============================================================================

+; Page - RGB Palette Table

+;------------------------------------------------------------------------------

+#if($Enable_Correction == 1)

+Page "RGB Palette Table"

+	Link    "Red Palette Table" , 	"Red Palette Table"

+	Link    "Green Palette Table",  "Green Palette Table"

+	Link    "Blue Palette Table", 	"Blue Palette Table"

+	

+	Page "Red Palette Table"

+		Link    "Close Table" , ".."

+		Table    $Red_Table "Red Palette Table",

+			Column "Red", 1 byte, EHEX,

+		Help	"Enter values for Red Palette. Allowed range for entering values in each row is 0-FF (in decimal 0-255). Input format is of type Hexadecimal."

+	EndPage

+	

+	Page "Green Palette Table"

+		Link    "Close Table" , ".."

+		Table    $Green_Table "Green Palette Table",

+			Column "Green", 1 byte, EHEX,

+		Help	"Enter values for Green Palette. Allowed range for entering values in each row is 0-FF (in decimal 0-255). Input format is of type Hexadecimal."

+	EndPage

+	

+	Page "Blue Palette Table"

+		Link    "Close Table" , ".."

+		Table    $Blue_Table "Blue Palette Table",

+			Column "Blue", 1 byte, EHEX,

+		Help	"Enter values for Blue Palette. Allowed range for entering values in each row is 0-FF (in decimal 0-255). Input format is of type Hexadecimal."

+	EndPage

+EndPage	

+#endif

+

+	

+EndPage ; "Integrated LFP Features"

+

+	  

+	  

+;==============================================================================

+; Page - Display Device Toggle Lists

+;------------------------------------------------------------------------------

+

+Page "Display Device Toggle Lists"

+

+    Link "Toggle/Capabilities List 1" , "Display Toggle List 1"

+    Link "Toggle/Capabilities List 2" , "Display Toggle List 2"

+    Link "Toggle/Capabilities List 3" , "Display Toggle List 3"

+    Link "Toggle/Capabilities List 4" , "Display Toggle List 4"

+

+    Page "Display Toggle List 1"

+

+        Link    "Close Table" , ".."

+

+        Table    $Toggle_List1 "Display Toggle List 1",

+            Column "Display Select", 2 bytes, EHEX

+            Column "Reserved", 1 byte, DEC,

+        Help    "These toggle lists are used by the video BIOS and "

+            "device drivers to help support the system BIOS with "

+            "switch display device Hot Keys.  The basic algorithm "

+            "in the current display is found on the list and the "

+            "next settable display combination is set.  If no "

+            "settable display combinations are found the function "

+            "returns fail.\r\n"

+            "\r\n"

+            "The video BIOS will 'OR' the bits of the two pipes "

+            "together to create a single pipe display device.  "

+            "The Intel developed drivers will use the display "

+            "lists as they are.  The divers also use this list to "

+            "get pipe information for ACPI switch display device "

+            "Hot Keys. Four lists are given to allow for multiple "

+            "Hot Keys or creative solutions.\r\n"

+            "\r\n"

+            "Display Select (Refer to VBIOS HLD for valid "

+            "selections):\r\n"

+            "\r\n"

+            "\tPipe A: Bits 7-0, Pipe B: Bits 15-8\r\n"

+            "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+            ;"\tLFP2\tEFP2\tTV2\tCRT2\tLFP\tEFP\tTV\tCRT"

+            "\tLFP2\tEFP2\tEFP3\tCRT2\tLFP\tEFP\tTV\tCRT"

+

+    EndPage

+

+    Page "Display Toggle List 2"

+

+        Link    "Close Table" , ".."

+

+        Table    $Toggle_List2 "Display Toggle List 2",

+            Column "Display Select", 2 bytes, EHEX

+            Column "Reserved", 1 byte, DEC,

+        Help    "These toggle lists are used by the video BIOS and "

+            "device drivers to help support the system BIOS with "

+            "switch display device Hot Keys.  The basic algorithm "

+            "in the current display is found on the list and the "

+            "next settable display combination is set.  If no "

+            "settable display combinations are found the function "

+            "returns fail.\r\n"

+            "\r\n"

+            "The video BIOS will 'OR' the bits of the two pipes "

+            "together to create a single pipe display device.  "

+            "The Intel developed drivers will use the display "

+            "lists as they are.  The divers also use this list to "

+            "get pipe information for ACPI switch display device "

+            "Hot Keys. Four lists are given to allow for multiple "

+            "Hot Keys or creative solutions.\r\n"

+            "\r\n"

+            "Display Select (Refer to VBIOS HLD for valid "

+            "selections):\r\n"

+            "\r\n"

+            "\tPipe A: Bits 7-0, Pipe B: Bits 15-8\r\n"

+            "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+            ;"\tLFP2\tEFP2\tTV2\tCRT2\tLFP\tEFP\tTV\tCRT"

+            "\tLFP2\tEFP2\tEFP3\tCRT2\tLFP\tEFP\tTV\tCRT"

+

+    EndPage

+

+    Page "Display Toggle List 3"

+

+        Link    "Close Table" , ".."

+

+        Table    $Toggle_List3 "Display Toggle List 3",

+            Column "Display Select", 2 bytes, EHEX

+            Column "Reserved", 1 byte, DEC,

+        Help    "These toggle lists are used by the video BIOS and "

+            "device drivers to help support the system BIOS with "

+            "switch display device Hot Keys.  The basic algorithm "

+            "in the current display is found on the list and the "

+            "next settable display combination is set.  If no "

+            "settable display combinations are found the function "

+            "returns fail.\r\n"

+            "\r\n"

+            "The video BIOS will 'OR' the bits of the two pipes "

+            "together to create a single pipe display device.  "

+            "The Intel developed drivers will use the display "

+            "lists as they are.  The divers also use this list to "

+            "get pipe information for ACPI switch display device "

+            "Hot Keys. Four lists are given to allow for multiple "

+            "Hot Keys or creative solutions.\r\n"

+            "\r\n"

+            "Display Select (Refer to VBIOS HLD for valid "

+            "selections):\r\n"

+            "\r\n"

+            "\tPipe A: Bits 7-0, Pipe B: Bits 15-8\r\n"

+            "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+            ;"\tLFP2\tEFP2\tTV2\tCRT2\tLFP\tEFP\tTV\tCRT"

+            "\tLFP2\tEFP2\tEFP3\tCRT2\tLFP\tEFP\tTV\tCRT"

+

+    EndPage

+

+    Page "Display Toggle List 4"

+

+        Link    "Close Table" , ".."

+

+        Table    $Toggle_List4 "Display Toggle List 4",

+            Column "Display Select", 2 bytes, EHEX

+            Column "Reserved", 1 byte, DEC,

+        Help    "These toggle lists are used by the video BIOS and "

+            "device drivers to help support the system BIOS with "

+            "switch display device Hot Keys.  The basic algorithm "

+            "in the current display is found on the list and the "

+            "next settable display combination is set.  If no "

+            "settable display combinations are found the function "

+            "returns fail.\r\n"

+            "\r\n"

+            "The video BIOS will 'OR' the bits of the two pipes "

+            "together to create a single pipe display device.  "

+            "The Intel developed drivers will use the display "

+            "lists as they are.  The divers also use this list to "

+            "get pipe information for ACPI switch display device "

+            "Hot Keys. Four lists are given to allow for multiple "

+            "Hot Keys or creative solutions.\r\n"

+            "\r\n"

+            "Display Select (Refer to VBIOS HLD for valid "

+            "selections):\r\n"

+            "\r\n"

+            "\tPipe A: Bits 7-0, Pipe B: Bits 15-8\r\n"

+            "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+            "\tLFP2\tEFP2\tRsvd\tRsvd\tLFP\tEFP\tRsvd\tCRT"

+    EndPage

+

+EndPage

+

+;==============================================================================

+; Page - Modes Removal Table

+;------------------------------------------------------------------------------

+

+Page "Modes Removal Table"

+

+    Table    $Mode_Rem_Table "Modes Removal Table",

+        Column "X-Resolution", 2 bytes, DEC

+        Column "Y-Resolution", 2 bytes, DEC 

+        Column "BPP", 1 byte, DEC 

+        Column "Refresh Rate", 2 bytes, EHEX 

+        Column "Removal Flags", 1 byte, EHEX 

+        Column "Panel Type", 2 bytes, EHEX,

+    Help    "This feature allows removing support for selected modes "

+        "resolutions.\r\n"

+        "\r\n"

+        "X-Resolution, Y-Resolution, and BPP in Decimal or "

+        "Hexadecimal (0FFFFh or 0FFh means disable all).\r\n"

+        "\r\n"

+        "Refresh Rate bitmap selection (0 = Do not remove, 1 = "

+        "Remove):\r\n"

+        "\r\n"

+        "\tBit           15-9   8   7  6  5  4  3  2  1   0 \r\n"

+        "\tRRate(Hz) Reserved 120 100 85 75 72 70 60 56 43i \r\n"

+        "\r\n"

+        "Removal Flags bitmap selection (0 = Do not remove, 1 = "

+        "Remove):\r\n"

+        "\r\n"

+        "\tBit                   7       6         5     4       3       2       1        0    \r\n"

+        "\tComponent  Rsvd  Rsvd  LFP  EFP  Rsvd  CRT  Driver  VBIOS \r\n"

+        "\r\n"

+        "\tNote: 1) In order to remove mode from both Windows and DOS, "

+        "both Bit 1 and Bit 0 must be set to 1.\r\n"

+        "\r\n"

+        "(Mobile only) Panel Type bitmap selection (0 = Do not "

+        "remove, 1 = Remove if panel is active):/r/n"

+        "\r\n"

+        "\tBit  15 14 13 12 11 10  9 8 7 6 5 4 3 2 1 0 \r\n"

+        "\tType 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 \r\n"

+        "\r\n"

+        "\tNote: Default is to remove a mode resolution from all "

+        "panel types."

+EndPage

+

+

+;==============================================================================

+; Page - Display Configuration Removal Table

+;------------------------------------------------------------------------------

+

+Page "Display Configuration Removal Table"

+

+    Table    $Dev_Removed_Table " Display Device Configuration Removal Table",

+        Column "Pipe B" , 1 byte , BIN

+        Column "Pipe A" , 1 byte , BIN, 

+        

+    Help    "This feature allows blocking selected display configurations "

+        "by the video BIOS and driver.\r\n"

+        "\r\n"

+        "Display Devices are specified in the following bit patterns "

+        "(pipe A and B use the same bit pattern):\r\n"

+        "\r\n"

+        "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+        "\tLFP2\tEFP2\tRsvd\tRsvd\tLFP\tEFP\tRsvd\tCRT\r\n"

+        "\r\n"

+        "Examples:\r\n"

+        "\tPipe B      Pipe A\r\n"

+        "\t00000000b,  00000101b  ; EFP & CRT on Pipe A\r\n"

+        "\t00001100b,  00000001b  ; EFP & LFP on Pipe B and CRT on "

+        "Pipe A"

+EndPage

+

+

+;==============================================================================

+; Page - OEM Customizable Mode 2.0

+;------------------------------------------------------------------------------

+

+Page "OEM Customizable Modes 2.0"

+

+    Link    "OEM Mode 1 Configuration", "OEM Mode #1"

+    Link    "OEM Mode 2 Configuration", "OEM Mode #2"

+    Link    "OEM Mode 3 Configuration", "OEM Mode #3"

+    Link    "OEM Mode 4 Configuration", "OEM Mode #4"

+    Link    "OEM Mode 5 Configuration", "OEM Mode #5"

+    Link    "OEM Mode 6 Configuration", "OEM Mode #6"    

+

+    Page "OEM Mode #1"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 60h / VESA mode 160h"

+        Title    "    16 bpp = VGA mode 61h / VESA mode 161h"

+        Title    "    32 bpp = VGA mode 62h / VESA mode 162h"

+

+        EditNum    $OEM_Mode_Flags1, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+    

+        EditNum    $OEM_Display_Flags1, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+        EditNum    $OEM_Mode_X1, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y1, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color1, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate1, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD1 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+    

+    Page "OEM Mode #2"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 63h / VESA mode 163h"

+        Title    "    16 bpp = VGA mode 64h / VESA mode 164h"

+        Title    "    32 bpp = VGA mode 65h / VESA mode 165h"

+

+            EditNum    $OEM_Mode_Flags2, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+        

+        EditNum    $OEM_Display_Flags2, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X2, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y2, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color2, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate2, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD2 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+

+    Page "OEM Mode #3"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 66h / VESA mode 166h"

+        Title    "    16 bpp = VGA mode 67h / VESA mode 167h"

+        Title    "    32 bpp = VGA mode 68h / VESA mode 168h"

+

+        EditNum    $OEM_Mode_Flags3, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+        

+        EditNum    $OEM_Display_Flags3, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X3, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y3, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color3, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate3, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD3 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+

+    Page "OEM Mode #4"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 69h / VESA mode 169h"

+        Title    "    16 bpp = VGA mode 6Ah / VESA mode 16Ah"

+        Title    "    32 bpp = VGA mode 6Bh / VESA mode 16Bh"

+

+        EditNum    $OEM_Mode_Flags4, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+    

+        EditNum    $OEM_Display_Flags4, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X4, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y4, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color4, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate4, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD4 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+

+    Page "OEM Mode #5"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 6Ch / VESA mode 16Ch"

+        Title    "    16 bpp = VGA mode 6Dh / VESA mode 16Dh"

+        Title    "    32 bpp = VGA mode 6Eh / VESA mode 16Eh"

+

+        EditNum    $OEM_Mode_Flags5, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+    

+        EditNum    $OEM_Display_Flags5, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X5, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y5, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color5, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate5, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD5 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+

+    Page "OEM Mode #6"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 6Fh / VESA mode 16Fh"

+        Title    "    16 bpp = VGA mode 70h / VESA mode 170h"

+        Title    "    32 bpp = VGA mode 71h / VESA mode 171h"

+

+        EditNum    $OEM_Mode_Flags6, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+        

+        EditNum    $OEM_Display_Flags6, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X6, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y6, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color6, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate6, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD6 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+EndPage

+

+

+;============================================================================

+; End of File

+;------------------------------------------------------------------------------

+    

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..6d9f0920760d41f1a425eee15835ac4143fe01e2
GIT binary patch
literal 10624
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf
new file mode 100644
index 0000000..d34bf39
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    CpuPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for CPU module

+#

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = CpuPeim

+  FILE_GUID                  = 01359d99-9446-456d-ada4-50a711c03adb

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimInitializeCpu

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|CpuPeim.efi

+  PEI_DEPEX|CpuPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x27B0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiMasterBootModePpiGuid

+

+

+  gEfiSecPlatformInformationPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.depex
new file mode 100644
index 0000000..4cbdd53
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.depex
@@ -0,0 +1 @@
+�������G����P���ƣ�^�H���3����HN2��G�,?��f���?n�FO�)�S=Y(mEK�GN��2v؆�}��J&�>����4/4t+p��1A�F������k��a�F{�Z�~�'\������I�K����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1b79539126654b4f83681b91fcd448ded483949f
GIT binary patch
literal 14848
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
S&!mN=sj)_UfBpYsf&T@bfgYd$

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.inf
new file mode 100644
index 0000000..da142b4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.inf
@@ -0,0 +1,190 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2013 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#  Module Name:

+#

+#  DigitalThermalSensor.inf

+#

+#  Abstract:

+#

+#  Component description file for the DigitalThermalSensor SMM driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = DigitalThermalSensor

+  FILE_GUID                  = 5122FA7B-17A3-4a8b-89AE-A93ADE92EADF

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallDigitalThermalSensor

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|DigitalThermalSensor.efi

+  SMM_DEPEX|DigitalThermalSensor.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3410

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x3418

+

+

+[Protocols.IA32]

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiSmmIoTrapDispatch2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiMpServiceProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/DTSHookLib/Smm/DTSHookLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/PlatSmmIo/PlatSmmIo.inf

+#  Vlv2TbltDevicePkg/Library/CpuIA32Lib/CpuIA32Lib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/Ksc/Smm/SmmKscLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid                   AND gEfiSmmSwDispatch2ProtocolGuid             AND gEfiGlobalNvsAreaProtocolGuid              AND gEfiMpServiceProtocolGuid                  AND gEfiSmmSxDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.depex
new file mode 100644
index 0000000000000000000000000000000000000000..cce1aa8782d7783ac5038e755ab4a29300bbd39a
GIT binary patch
literal 108
zcmV-y0F(a$;%HVLfrQi%yzu~l$2^FE0vPx~WMX4PPPK4-x-s1(Qv!|%m+Rlp#!0?Q
z*#@Pu4u%5VYvBI}VWviVvRa&e#V1?>x`?Y=;^1^fwyn4l_J|zT0`~Bu6G|rVKJwt+
O#S%0xGy?+z0|N-t=rOkd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d465a82187a61a6dcf1db699b7397c9cd366a1c6
GIT binary patch
literal 12704
zcmc&)dw5f2nm=t?2qoo|+gKI!ASo2N7@9V1a#Cn%T3{>~+O&mIz|bT;DQ(kDPoTJ{
z?WWa+V`toPSl3x*MXNK;=!`S2!_8T2Da+MI5FKGgR~W#Zbjve?!a^B=?C<?fQj1*F
z*+2F?&v){j-}`>={kxnbiz>Ol`P%+BkNm$6v=?$*aa_W6f=+VrlSamk;<nt)aa+c!
zr12V#dpI8bd(>wEAJo2jZJ8bA17YM>iP7hjTi`c?g$Fop1N3g0&T)>LG5n3#EZN;G
zV{8yUl3(O2^KXbef#alEewR~ra-5C_0lo{-&mnAF9>*=1rLu7s;=nT#RLEqXLm0ug
zf0o}}=c`tIBHvnw51&IX@XZ_gO#KSQrcY5e=(S3*UU&ZIc+#%wedo)oyh4!~gHCbi
z$93Ai6ER<FN-z&J=|b-XPicDk;?KX_KRmRzbHg2xtD*PKzjOs6bgNdzWK_)Vj!6$4
z1UJT1oPQOJKVQo9RFGa~1H=<&$aZ)j<T!lg)Wy&MIIg$vRn<P2LiQ$v6X8MMQzH=O
zU(e#W((aR*q{LsL2dh8FgK~Mt7pO1YlOE;0KX>L|^C(9$y8qm{<m$EVKeG{o1JKb8
zCoUy94^iHk*TQoz*wEXUF#47Fz!()~h~{AU*<_9j<-P(%Z=Ji3<Ju#E6zK>$wZ=;2
zQ1}q)b6F^B3&`ykLCKp8ikT?CCW=yI?Rtr5-Jm&$HkW9dR9a5gYoM)Kxg6xNl0@VO
zDtENtGu%WRy}`5NO3TVCI*~SG#Qp+Fs*s+>J+whTA@cNVh)8gc?k%dRe@DNiy?gyV
z_R_NOkt9agVFy9d<5pW=85T$+L`|T<F<~tbrV3KdK~($2^`>$N_`WJY9V=J%uSW*P
zwVF#yZH~aWU{6Z;K`@9meR^P+=+MuQC(noAR6A~Zx=pYncM~ci_5_le0;zBJ=SxqK
zA$egVhDKz)0G4$75Eg+He@9ikGYEH>cIHFa1$fyiW$(%r%Y%Ey^_D4TgJ%Yol<#Vk
zJzTj|&=|0Vk6epH%B50Yfi3(W=t}GSi#Vy+x6U5kN{<fbYEH6&Km1cX2KNXnl}}gn
zw&eC809+s`{If_T(x=BnVo{b-Fr8{SiDutmoDtorc8P*5QLw|cs6}Su&J%c64Sfq3
zJbr=3E7~o)A-yC2&e-E#_BftB@^2^a$D_i9I(|ZGX#}u?QS9eKuy>-^FNa|7MzJ@B
zU`L|Z)*;x@D7JG5_CXZeH3a)GitQeP9gkvrhhTq*Vh3Xwy!<a<9j))i5P0!%l<V*i
z?2{<={t)bB6gxHqI~Bz~8iJjPVkcr4wEhWLN9*Y?kr%>1Lak?pAZLNJ<X*u&F4P(x
zLO91*&kjK@Fy!12WPl+Tfbc);QB%lubPNy&%|z62Ld0%c*1M)B$#}Fh@m16)zpa~p
z`#8TX@ii2VczlD_^TIFDTiy%E&Y;Hul`u#-$Zt#NWN7c>I_f)!qxVs5e(>@g{!{&C
z!peb_^V>2RV+Fs>+DW6Qf5LCmF@ELP^dr;X<zIha+5Oz5%hLz=ZO2xv^eDTR_bw@A
zD~C><>L}($GCH<sw0H9zt=MO<;zRf1Bv1Q+z=)j1Blxy8KsOd?U+f0E($n(Th&Ye3
zcvKgaGXKLwnlB!uNas;jj`4I+LE|aK(?xZQ-Z)PeRVI3=o-V3A^zQO>QN^J*!P7-`
zhTc789;M+so-QgeJPNf|PZyQe#-jUHc|vSvctR7Y@I9fKRM#(3k$J?!8%8RO+PN^X
zKVCT;ejKye(?#{>5l;}2#>9xLi75WX(?zwnf~X`aMzyh_RDvG!V|Nji%#2Z|Fe()z
zsP_<+Y>iR1ptd}g6X)ro(%e`y8KI#vdy%SADbjaQEh<InT~vWe(TpxCIHkzYMP;TG
zWp+_<_0hT^y-CYre0T!(w`I#}%a+y_EvvPzs(rAsHd_s_@uQ_`R10b|mJSAoxuP8G
zm`EAfmq_WM<D(~(%Tf^<uLdudB_TAPWk8L7XgrHLi??TAA_Z2%g-urxE9G3ReVHee
zMez*l31OiF!ot+W!oge)O=PoeBKfy3k-WPT+Cvk`ztBYTu45tvL<+N2e`Wc;#H)DZ
z{xuTWml%h&PRn|U=%ujU2=r3X3y;M?lHbY-%`T0*7v&%307bIMMJb&Df6;*F?L;a+
zyJTn3$0|f?s$FVk&;b>qc-W<v7_?P|C^o@8HoNo=L$|0XRjyqcU{I$DQN7qDK_Dw0
zQ6UPbT`Fc!jS5k4?UKwOhYC@h+odfG%2y$ZdT`GIyR@I7(^ZtJ-Y#8WP%1%NSw`&A
zgh`|{QH7|i?2>^&pJN4zWKsAf8w38x0Lp~qV89Uo&=kp{yhwEn`z>Rl^hhlXc$EQ^
zDQOD>egpv8DQk9V4}+dmAzBLT(s2gKfP#Ch#%`Qjmh~=S>teZ*(z)>&5R{(jyX{L#
zq_befR=<Gpjtl?Y7m<i^4#$A0<wN$*`$1LrPYZhL{`vQ8L`rx(M+d5v&AQG6y?sge
zr+}9&Gj=cQRg$R;YActD``5;A++S|Icz;hQ>o~`q+?V(P?%LrR)Z-EK&b1^AA4=i6
zsZtrGBSxuBsKnG@gBc+dBV30*6+`*0-90B$yJ*1nX(_{E;@*hS86~P?`^~@|Hv@NG
z2SV_moo`)7i3<Mhb>J4tO_cKQ3BxVB17ogp8k<tT)f)E|bPUib)_8f0RU?m5`9oRc
zR)5NMqj6-6%8rj|Rl|&Y#3-7C;VXN~mCtbg9V?~YhvZDD++o0H_?KW>=23>l$m1D#
zXD48lfqKhspmz__>s7i^p0JY6e644>I27NbIu4p1CQT1j?r0`WHe!5X!AulQp;pdX
z(pi|YlX&fsfUdKX!`ZHu3vY?1%1u$9!$&bhITC&NJ$UIns2(g;J*d1$KwGjzT0keh
z?NB2zk>SH+#GVPAI(?WNfDrVa1^5n$2;#klE8lf|GLDsFBtefCjNcH~yW!_y#<CZ-
zAYZM`T6(!_x?i$^uAU|*fGX*TeTT~42mnX&?N|U>R`%kwp;M2h26&0x+>iaDRx8mv
zV&v&P7!ur*y0W(viFm6HQYw&+G16v|XGwtiLt%l`8zcP_S|fS$c+NjYI!@GiDm9*{
zMe|$caDfxbKFn>3#gZkVvVqW|D>xgBl~U565bq}fKEv-{1G}>5ic+XE9=-ILT`AOF
z`b=3ga5_FTx{|_Bs{H<9Z=5_{dXtp2z`h+-H1J0>u>B)hFdk5PJm!(|ow;O9(}+Be
zSyvGFe0lHod^|7jHFi^LKOm>(#L44SCT(7eRm%lFS9!kFaR!oiZX+G9kq#5-*d7nZ
zJR!|;)aK_Trhm-homUaev#$v9#f@>n-Cz7UA3^$WWB1Blddb9lOUe?w=V<MS^*Gc^
zBMWK@1p>=Vh4NQ(K>L`Wl<CC7O?L(#O^NFmEo+tCJz;G}ew=1eN|6}QZaBS4=~>AN
z2_Zo;FbpI14&zGfon<;4SY9UM5ISAa#?aH#u}zLr_K!RmILY2_1`Du_bi4E^oU%J)
z(`SZ?_4-m}g%<C+U$l42>8*d_1k_hL5~G)%ChzB=4t7ZC@ID9IHkQi1HJH3ApF9>O
zv>y%d(pfO<{4QAg-v_jdB7d<rPrggsyH+P@r-4{X#I5_F6CJKUl~G=yVM~d!nJ6fA
zPC0m~m!^YU5FQPWz&2j8lYnZlsfN6M1%|-U@Hto{?&Y7XL5)EzM5K~%eA*%r2+a$R
zRYjyqCrN~NP(&R>V8k-z;GmHEAcQ245ljLZQ>@QxkH}+`o=eB??w)MZ8<YXO<r?~R
z?Faa_a}bVi8w@z=W*WN@&U7>@+QaP;zU|})oa*u;V1Jl@eXnL8(fSSn3_0|9XbuQY
z5;y3reDEkxV>grvq`dWX-Xw6@^!8Adeny8)&!gReCIZu=Ee&2y;@h?jLnbdL^KE|C
zNt5sBl=TZ*57C(>gs)p@a9=v=67R#Q%IBIRp)wu6>$`FMuK1omYO&*t+&{TkZ$kwv
z2wtAaKiLJ<eA_1Sx+fS$*9K#PVL^U07*3M!35Mh3(YW#LCc+PC`|f6+@qJ_QNw4L|
zn-;Y*112EOq#j>Cj8qC!g53$B!j%5u^a(yC?+Q8B=R&}5$079114r;sLf@}pRPaz-
z-_Pjt@+`jXN33Iz@8O?#g>}tq?+acomPZ6H*YWM-L-0^a|D#chh6fJ`WRCG7;-U{;
zHu#N5TWavKdEI?$_9khLb^hHEij3wQ1!h<LU~ItJ^n1!MjiWG5KN1x=HtM9TCaG^T
zN&!ql-!tfdhCs0Rx8M=eP2iLd5&l@_gO_XgC-)$1eA~xlYah}{F4bz5PTw!D2=*26
zZH0(ourHBs8;ukO`|$ph3uIxiFHRnX8{ftQ?;AlSSgfCb`N|JQn%|apr9X+^78mSE
zKzb)2+Eu8Hs=gDLFB*qF^>&qz6iC{2=6;BNi_%)Gcl70=plB3>S!La(kWi0r!V{V}
zeaRRYHEz_PaZ2Nr{t?RTm}#=U7;9zHE}2v=AeHZirw&9Sor@Ecf$+6U%)R1Z&oF-5
zx$s};(V;Kqx9#V*&g1R4jiOsJ-E?#tNw*}rji8&>zNEZDYJu!puCq<QnPNP}9{v?(
zOy`^WmnimotmG1##=U7YcWSvxe$(!GG~v@YtRjhMG#edAJx)-3n~cC;`UB;%?{$`&
zM!wAp%PBW}+ovRyI&Er4zLPyUz`)YWw-un<XQu@Sli?N<U;%B7!*{(2%lotVt@(-Y
zCO^TBoKi<aw|KkM9dnFykz>aa$s;|IEs<A!(=dUeD+22O>vMr`)B<B$Pe*X9-sOUD
zs$mu$ga#!|F`0x_s_#82yW3eGv!MOJ`a6~PT2H}_$2;dmf&;?3G$nIW0`{kVUGQ?^
zx;vE2&U4U&O_G@`p5xn_AbpASvFe;nFOz3ikr{kL*H=Lk>huB3=+;9m@Vf1z<`Kcu
zSK(wHYKK;rL%~0$1cY0}HSfxE$~on){a?mi8(o_4oiPSCUr`zdHoo6-Dxv$7ro*A<
zFZRaEiF>gIPgi<_C$;=0EXB}SSesOd{c>dR^oiKA-5z=T-VF)u7n|-xp}?5H=-{Dv
z8aeaQC&6Rfr4#+>N^e>UD7lP$SO0fFy@RVwsYI@I7_Mc*<BgGu^3Gy?V>ku#06Y4A
zip})>BQMcr9T){C1-2XQr{`LY@hE~_r}St(TXpFYB@30gwEZYf5c{Un9>26@1GLDa
zaa2jheuPuiB@G)2oaf{b`4I>tQHUYx8#ak?N-t$TZBi196|n5^?H{T2YKK6f?_E56
z?K*;mfZooqg6s-YDUoH1bbbF69s5mJ6AvlIYSO=3xn}IfRx7{+y|~xUR@3Nmd>_B-
zA#7~JV;dVy&UR>)M<81IJk4MG4`QS`%N=^X*`XJj62K%NBXRH#B3-$(YX#;&mwkFM
zC_Vh^bR@y94kZFeld)mniz8enmY}>^VF}J$mWwdXL8k&7sOeyUn2MZSy%A{#p4rwd
zKM?1*UP1{CR}N#7vDe0h2mXgi$QzUZ{Q~ssN&jxr4iiZ|Oe_vO3KQ0s)EbubuVQ=$
zNy$w)_23kkD%H}b2lXH#OQY6qEY|aF2jr<_A|}ke7;|?CzqJR3LGS`NxQvFyoHHKC
z!2o_!52__agpGXgbq=$x3M=xia>RdF&nb4WI07A+lX1i$``bSXOn~52J6U5>4#Q~;
zNyWwlGn4_1tk275HA-UTVzRGRlUE6cmx{Xs_(C9`x|B$!cYjkBdChG8C@=}4Cq_eB
zI|H(RdSQrc8YJ%L|6v8zADB6VQq;OZ@1mU3sV$HRGX~SWm(0a$Rxzhq3^mqrHGE4*
zYAg;oI1W~SJRKZjWfwb7@$IQ747F_JVK5@SKMTL_L|;?8v6QI?+5h^C4zkdq94@cr
zYU4V`WrY89p1qw-$FWh_hsk;ouT0T5Na*b>OjQ<XYw7)S9DXngr@=0~dame29&UXl
z<(HNgmN-@w7A;&=SW@y(iI83@JLN!=kSnD5r(u?J+@u?b)0n_GtosAl=D6K)9R18e
zV6~-cozK6fs=i@eMpb#;+6<d}t+(1;;`S8yTyFcCnksvpQ}+1$^;I;a%GT^=omtf!
zXR|ws1p2*4z%M6tZo%UVG`MD!HFz7EWM^HSx1mPx%CJb~bIXB7!Ph8zeGN^5)9)6%
z4QrisUe_$4#N8zO{KW2Zdz^tfxk=z`f%-;5*w`kwEaRaGLj)JB5L|xmTDO1JtXa%o
z;wfw(6I>Jp`XPwJ?>%;>U-nje8=Vbuf!~X+v(DkJZ*=<+E~r;IujjKno0=f`MmBD~
zyJ3ht!>t8E_g8ptDfD{2+22Cu>~APD<6Fqg_=Yl#-$JJG8_LZ57BVw$DYKxivA$F-
zmBBhF4Itq*_v%2+AjB2hA5zOD3gH=Z$S>PzCdCQ^d1Sb|vDEv>mmn~^Z=Ks;;A@cm
zzPhifqcL{3pXQ6Rq1t_OuGO~2#`>=mY^kf!?)Q1Tm`1S@W^>fWD!mZO)(flMHMwcc
zg1f;*A3l!<^CDL*cWz$5<8k|iNx4FL`dXjYCEPzvFksqWH@_FDGrHKj+VAwQubSs<
za-&~W)_{3f)8KYtQWufs^0$}6LJVQ0Zok)AXZQK#su)B|1*a}s!tyld3L(vzp5~fn
z!DkXzv#{P-<6huwaKZB%tiQeeWp0mmp3f&kC#_jcY!zY--GTs1YDyh9sHvG(dLveH
zBOlzjZ9K`Il0bv(t#{wlq+8Hfd~TN~k{fetu}^k*oee%3l%78Cp@)hK^A}G`H{|Bd
zo<^&DiQDN~@9<Gr3fH<DZjwok!}c(H)@-5L*)UZWngWfD$QBmi>jzG{y|1y_DV1sA
zW-f4Q|AtV)&a#Dz9gC+4QHCjkq1m8bv!@BUxq<<6&D~HVOM+EcRb#Jqtt#?1yIuM6
zynwgPwF<x@XS26HP@msa?e(fs)B&8$yVl#}V}%bX-^^x=DKlj@8#7AW^-gbt3p)vw
z=xuX5=&#e`9_n-Y%_kn)aBr7WlDE)@tS-dV#)j#wu40cYulX*Q-`&(COc4g-QyQp7
zg*R~(PCxe78lkLVO@nV;gD}5teWL{1W4O&-=f)aV<n-2Illu~{zz#SB9^{Xj@9_DA
z(t2##6o;5BEQgqsHuk@yVxQ9`6#D%>Ki-bjja$Hm=&Xk}KwMcvw2<5`ZXQ^pa%t_1
ztxebIKpm?khq3CBBPJdCnXOn3Wp}j<c@G6-tafxv@CE#c0@+yZs|(b-g#w@7A83>Z
zpNj%;VX;qG<aT+T#K$^9wd8E5fg}zzStz1&3i|mhq=L=e;EmEqM<dQBZjw>&Y@{Oy
z{tt!;E%*Y^qK?Pu#!q(T*ZFDE2!qe7F_C~TELdcZdE+Q@4ED(*U$w6;MqAiW?W=Ee
z%3eA=mAm~-I2w_TQg?L#Ay_Yzdwn>3F|?qhAU2FEY;aLL27QFlSOIbPNzX8=Ye4MT
zNLxURzX+SlVD5?$kN{R*(pLa0{Jwf`6GW)l{`$FKN72f(D8)LcW49k0i8__I=)7Qi
zrxlyhx0}{%DdW;_z8SH(^{wRNNLr24?9hcn)qph=U<1~YQtX=r3-U{5o3L}LdS`r%
z)i;wWOs6UPwGQ8GD07QTk1cUgqrRCbu|X(TbzPkH4Gp<*Ak45fU>2dOX=R^-`cR*1
z0$$e~F3phBJTuLZIe5!xPBUcCliK;}C)Jlap0-6ApW%8SddqYP0(C8P10Q5BCH`a_
z;FGC?Yak7`DfrnR&49K5&4t#C)`s@aXfL6?iMAi@1GF<}7tpj*F%C_SW<bkBD@LnA
zlh9<e7PP0(Hlw|S_A9jCqP>H525kT>A)VvKq3O{w(elt7XmlB7XBacHOxZc+{CNeo
z!Xgz_?|3ui{t@j0z9OSW*W}9774)e?8;900Lv4h`Xykh%+GfzGm6X~_-^jUdrhc0A
z;EQYH8~*xy--mIaU$?)ot&+XLIab%n>XM4rw}tt}j4E5<yt4VL%1bj0v$L9WOjQj0
z7B73M0QJ4E(X|??Iea_GS*bJRnqS~3ei%;EZ<(?Gz0&`A-@PmPtgmP58~r`*0-TKf
z=aphZztyPE`bQpl#I?ExGU%UmErdt^^GZL9(jq)-H8#RqTnp}5JUpZIh51j-m^<zl
zKk|J1Z{H7ZIQHQBq9<Q@<@hI`CQ}wp($Kw$IW6>gdc=F0@ku?J`ANUftWVmcc{ORB
z=0B6lH2lb!n*5P*nx>IQ;$I&5<M?AEYvM=fX2*-VD{=L@{c+Fho{f7?=Z@1Pi*Z@W
z<Kt?Q&vVZuf506|-pO4}evx}%)KlCuqt=iLcBRHT+|$>%7PRO^IOP(R0vs)R5l;2P
zaX$c#7QF~ZNO3&_94&egjxQr{{SY`>^dg*c#c`W}qeU;mhq3-Y0Y@8x4`=;nfj@g~
zXUD6{Po0#Dw*F%Kn2Q|~KK#!$CnLk1KPmeAH!3$j_8(KLzNdY*|HR?F3wJ&E`(ZD?
zG3tq!od3_yBM4}^F~eACtTy_M8;l|2_l*By++zHhai_7@_@VKH@pI!f<FHI2b4q4T
z=90|v%=*lx%pYW)$V|x^pCxBKk)>q)AnWC<H?wwS9m+bI^@prKX7y#A%etDCU>a>o
zHKmzmn9Qa;(;}0@<TOd9fN6s%WO~~4W7A8fUz@g@dQAsS$4sA?`c0pkBBo*4W3%td
zo|-)?+nk-3{a|)U_R?%u_L}Uq*^g#-WPd;V$Jsy6K9v2t>`$`8*%z|8oN+l5bEf2A
zDa=`w^SzuO=e(5jM$T_@_U0VP`9sc`obx%6oFwyTbE<iwIo)hA7n&>0)#iY?)%=Y4
zdGl|~Z=3g+-!Xq+{@8rReAax?Jk~P7GSxE6VzO8*^DT=lWtJ+-YKzz6v#hmjv~03$
zw!CP0#qvwbo0grHJ(h!(BbMJ;PFVUZ=Pg$)$>Lb?UQsX37PCd0_+7C=Tp`wqO=64q
zg!qj3ocI&*HF1adw)l>CR6HSu#s3k%5Vh7(*1N5ftTU|{);ZP!Yl*eOT5XlAvUR=n
z3F}kV=d90Le`7sp{nUEFdd)f|H)~GsoI`U?%{e<Key(or%(+=}^X5J~ck|qL=Dt7o
z)4Av8()ZX76jQuml3|KrreT4h#L#H?SHn*XzcZXLm}eKv{%m%3Mt;WXjK?#c%jnKH
zn4vKy8x5xUrY^*ONA~gTtek($c|PYiIW6!ul>1CBgb5tC6d&g-7c2voD;7>n5VfLC
zOcBS4sp14tfY0gT4ACHFiaDZH%!Bs}#A4AdI>e=7mH4pe5+$)tY!qd&S=@klw22)e
H1mgN%Uoh)<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf
new file mode 100644
index 0000000..a59b48b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf
@@ -0,0 +1,219 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

+#

+#**/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = Dptf

+  FILE_GUID                  = 1D000AE9-756B-4937-B736-1F3D96A5A8F0

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = DptfDriverEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|Dptf.efi

+  DXE_DEPEX|Dptf.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2D48

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2D40

+

+

+[Protocols.IA32]

+  # CONSUMED

+  gEfiAcpiSdtProtocolGuid

+

+  # CONSUMED

+  gEfiAcpiTableProtocolGuid

+

+  # CONSUMED

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gDxeVlvPlatformPolicyGuid

+

+  gEfiI2cBusProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/I2CLib/I2CLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/I2cStackLib/I2cDriverLib/I2cDriverLib.inf

+

+[Depex.IA32]

+#  (gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiAcpiTableProtocolGuid AND gDxeVlvPlatformPolicyGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  DRIVER_BINDING                =  gSampleDrvDriverBinding

+#  COMPONENT_NAME                =  gSampleDrvComponentName

+#  COMPONENT_NAME2               =  gSampleDrvComponentName2

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..5066c0763638a39ff33c71c6d9759850f116e542
GIT binary patch
literal 162
zcmV;T0A2qAx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
zGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj$Tzs&UD_Wehl)DWogP{EM`bSrSe41h5~henUJ
QxSZsy0|NsC0|NsC2(86PtN;K2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1f7153584303ac31daecf26a42d761b0dfd759c7
GIT binary patch
literal 25088
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
FzX1F6Cma9(

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.inf
new file mode 100644
index 0000000..6ed856b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.inf
@@ -0,0 +1,265 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = GraphicDxeInitSmm

+  FILE_GUID                  = 99EC6206-AA45-4CAE-B630-866755241C8A

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = GraphicDxeInitSmmEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|GraphicDxeInitSmm.efi

+  SMM_DEPEX|GraphicDxeInitSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xffffffff|0x5A08

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5A00

+

+

+[Protocols.IA32]

+  gDxeVlvPlatformPolicyGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+#  MdePkg/Library/SmmIoLib/SmmIoLib.inf

+

+[Depex.IA32]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex
new file mode 100644
index 0000000..9b2767a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex
@@ -0,0 +1 @@
+�k��a�F{�Z�~�'\������I�K����HN2��G�,?��f���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..50cfe9408ed8127208c3d13f2fc79e4b5f4f80eb
GIT binary patch
literal 17984
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf
new file mode 100644
index 0000000..0806799
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf
@@ -0,0 +1,247 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#   IspDxe.inf

+#

+#  Abstract:

+#

+#

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = ISPDxe

+  FILE_GUID                  = 5A38B969-CD6A-4814-82E6-559F840BBC58

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = ISPDxeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|ISPDxe.efi

+  DXE_DEPEX|ISPDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4110

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x4118

+

+

+[Protocols.IA32]

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.IA32]

+#  (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiGlobalNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.depex
new file mode 100644
index 0000000..4db74a3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.depex
@@ -0,0 +1 @@
+�n�*��4A�V8T��
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.efi
new file mode 100644
index 0000000000000000000000000000000000000000..db022f8a560918e06a23ccc9b629f19243021987
GIT binary patch
literal 98304
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.inf
new file mode 100644
index 0000000..79dd341
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.inf
@@ -0,0 +1,201 @@
+#/*++

+# This file contains an 'Intel Peripheral Driver' and uniquely

+# identified as "Intel Mobile Silicon Support Module" and is

+# licensed for Intel Mobile CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor. This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#--*/

+#/*++

+#

+# Copyright (c)  2005 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    MemoryInit.inf

+#

+#  Abstract:

+#

+#    Component description file for MemoryInit module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = MemoryInit

+  FILE_GUID                  = D4EE25EA-0B48-43ae-A016-4D6E8B6C43B3

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimMemoryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|MemoryInit.efi

+  PEI_DEPEX|MemoryInit.depex

+

+[PatchPcd.IA32]

+  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|0x00|0x17A30

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|0x01|0x16FF2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|0x01|0x16FF4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|0x01|0x16FF0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|0x01|0x17000

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0x00|0x17A32

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|0x01|0x17008

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|0x02|0x17009

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|0x03|0x16FF3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0x00|0x17A31

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|0x0b|0x16FF1

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|0x0b|0x16FF7

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|0x0c|0x17003

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|0x06|0x17002

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|0x06|0x16FF6

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|0x06|0x16FF5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|0x20|0x17001

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000046|0x17004

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x16FF8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+  gSeCUmaPpiGuid

+

+  gSeCfTPMPpiGuid

+

+  gVlvMmioPolicyPpiGuid

+

+  gPeiCapsulePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiGlobalVariableGuid

+

+  gEfiVlv2VariableGuid

+

+  gEfiMemoryConfigDataGuid

+

+

+  gEfiAcpiVariableGuid

+

+

+  gEfiPlatformInfoGuid

+

+  gEfiSetupVariableGuid

+

+  gEfiMemoryOverwriteControlDataGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/RamDebugLib/RamDebugLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+

+[Depex.IA32]

+#  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Fa$* /Oi /Od /DEFI_MEMORY_INIT /DSMM_SUPPORT  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D LPDDR2_SUPPORT=0 /D DDR3_SUPPORT=1 /D LPDDR3_SUPPORT=0 /D DEBUG_MODE=1 /D SEC_SUPPORT_FLAG /D FTPM_ENABLE /DDDR_DUAL_CHANNEL=1

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.depex
new file mode 100644
index 0000000..1b4e8e1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0��������G����P��>2�u�*O���Yj���ƣ�^�H���3������J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e0abf0507c9fbfd7bdcd403ae23e393b2f6844e0
GIT binary patch
literal 11264
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.inf
new file mode 100644
index 0000000..c2f27b2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchBiosWriteProtect.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchBiosWriteProtect driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchBiosWriteProtect

+  FILE_GUID                  = B8B8B609-0B6C-4b8c-A731-DE03A6C3F3DC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchBiosWriteProtect

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchBiosWriteProtect.efi

+  SMM_DEPEX|PchBiosWriteProtect.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2800

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2808

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gEfiSmmBase2ProtocolGuid            AND gEfiSmmIchnDispatchProtocolGuid     AND gEfiSmmSwDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmBase2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e1d3f2ba8b4f5a06fa636ff2ba72ac3d2590d37c
GIT binary patch
literal 15040
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.inf
new file mode 100644
index 0000000..ca923c9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.inf
@@ -0,0 +1,97 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchEarlyInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Early Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchEarlyInitPeim

+  FILE_GUID                  = D9F5B28C-9FF1-47D6-B503-3DC23BD345FF

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchEarlyInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PchEarlyInitPeim.efi

+  PEI_DEPEX|PchEarlyInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x640

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..43c341005a38f080bcfc36c46f223797c713b117
GIT binary patch
literal 126
zcmV-^0D=Dksbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0^Mui{|8~FMtiba
goPNb8Tmp^=m+Rlp#!0?Q*#@Pu4u%5*0|NsC2o*v%X8-^I

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1f919ddd9de3ce11af2bff35a05d4e2ccb1d1e7a
GIT binary patch
literal 102496
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.inf
new file mode 100644
index 0000000..472d880
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.inf
@@ -0,0 +1,278 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitDxe

+  FILE_GUID                  = DE23ACEE-CF55-4fb6-AA77-984AB53DE823

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchInitEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitDxe.efi

+  DXE_DEPEX|PchInitDxe.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x16C50

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xf0000043|0x16C58

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.depex
new file mode 100644
index 0000000..0e34453
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.depex
@@ -0,0 +1 @@
+sF4e��K���a
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..22abdeb78bed52592e160b3590c58991c4e645c5
GIT binary patch
literal 22976
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
HLVx}rzk1^5

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.inf
new file mode 100644
index 0000000..1a508fc
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.inf
@@ -0,0 +1,150 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2016 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitPeim

+  FILE_GUID                  = FD236AE7-0791-48c4-B29E-29BDEEE1A838

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchInitPpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitPeim.efi

+  PEI_DEPEX|PchInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x52B0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x52B8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## CONSUMES

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  ## CONSUMES

+  gPchPlatformPolicyPpiGuid

+

+  gEfiPeiStallPpiGuid

+

+  gPchPeiInitPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## HOB

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPchPlatformPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..89550b75de68aa683924135d77708ae9cd5b8634
GIT binary patch
literal 162
zcmV;T0A2qAsbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0=K`+^x*dWN1fCV
zsPRz2kpgrpaKa3LF+qn$kF~g*<g5bSYvBI}VWviVvRa&e#V1?>jtH0Q-_OQLzDwB#
QrLqo&0|NsC0|NsC2pfM&K>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2f6d5ea0201bbcd1de1d1d2cf341a88ec05a25d2
GIT binary patch
literal 35840
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.inf
new file mode 100644
index 0000000..6a3e4ef
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.inf
@@ -0,0 +1,290 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitSmm

+  FILE_GUID                  = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = PchInitSmmEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitSmm.efi

+  SMM_DEPEX|PchInitSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x7A00

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xffffffff|0x7A08

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..6f989cc9199142f9565a01ca77ca98fc2e1e5354
GIT binary patch
literal 108
zcmV-y0F(a$x4+Ev;P(ATozxJh@le5$0$V^JIhV-VM2PcDNs4dxHUa<yAJZ0n7DK;?
zU}cCqKq~^NWdTdpVIxkUwLZt3E-=*s_VA+<N+$3=^5EXZ5;QL~0(2{I!VG{hL5D_<
OwYZ$*tOElB0|N--m@hg2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..a3810160d89994bc12a4491f2bc1d6fbc71ddbf8
GIT binary patch
literal 26112
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.inf
new file mode 100644
index 0000000..c523356
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.inf
@@ -0,0 +1,251 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchPcieSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for PchPcieSmm driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPcieSmm

+  FILE_GUID                  = acaeaa7a-c039-4424-88da-f42212ea0e55

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchPcieSmm

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchPcieSmm.efi

+  SMM_DEPEX|PchPcieSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5E00

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5E08

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiSmmIchnDispatchExProtocolGuid AND gEfiPchInfoProtocolGuid AND gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..f7e1f3bd74f719ef64ad3002469333823ae662d8
GIT binary patch
literal 9440
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
IkniyPH=<8$%K!iX

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.inf
new file mode 100644
index 0000000..963eb82
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.inf
@@ -0,0 +1,123 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PchPolicyInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchPolicyInitDxe DXE driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPolicyInitDxe

+  FILE_GUID                  = D6AC4AC2-8BC2-4cdd-8776-280E1469DE02

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchPolicyInitDxeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchPolicyInitDxe.efi

+  DXE_DEPEX|PchPolicyInitDxe.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2048

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2040

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.efi
new file mode 100644
index 0000000000000000000000000000000000000000..5cfc8fb17fb6566dc3842e74e7fa65cbf6ce83d7
GIT binary patch
literal 12288
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
Q2&aW#3vb|8rZ4*QKUF@r1^@s6

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf
new file mode 100644
index 0000000..c683936
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchReset.inf

+#

+#  Abstract:

+#

+#    Component description file for Reset module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchReset

+  FILE_GUID                  = F5883FC5-F8EE-4e44-B386-6021FB320C9B

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchReset

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchReset.efi

+  DXE_DEPEX|PchReset.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2C10

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2C18

+

+

+[Protocols.IA32]

+  gEfiResetArchProtocolGuid

+

+  gEfiPchExtendedResetProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiCapsuleVendorGuid

+

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+#  Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2bc94cca082a5c15da4490592ba12c7767a2e1f3
GIT binary patch
literal 25760
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
B!?*wd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.inf
new file mode 100644
index 0000000..92b2912
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.inf
@@ -0,0 +1,257 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  Component description file for Pch Initialization driver

+#

+#  Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchS3SupportDxe

+  FILE_GUID                  = 14537da0-222a-4bbe-9a5c-212a3cbca9ef

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchS3SupportEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchS3SupportDxe.efi

+  DXE_DEPEX|PchS3SupportDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x6020

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xf0000043|0x6028

+

+

+[Protocols.IA32]

+  # PROTOCOL ALWAYS_PRODUCED

+  gEfiPchS3SupportProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiFirmwareVolume2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFileProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFile2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleFileSystemProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiFileInfoGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesLib/DxeServicesLib.inf

+#  MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.depex
new file mode 100644
index 0000000..028e7ac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.depex
@@ -0,0 +1 @@
+5�c�2�I������l�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.efi
new file mode 100644
index 0000000000000000000000000000000000000000..fdbf25f45fbf5c255759286b689c2568a76aee59
GIT binary patch
literal 7616
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.inf
new file mode 100644
index 0000000..42ac7ea
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.inf
@@ -0,0 +1,144 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusArpDisabled.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus module

+#    This version will NOT include ARP support.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusArpDisabled

+  FILE_GUID                  = D82D57AC-99F9-4c7a-B591-BBCF8A0E7FBE

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbusPeim

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusArpDisabled.efi

+  PEI_DEPEX|PchSmbusArpDisabled.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1C80

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1C88

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  gEfiPeiSmbus2PpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiVLVTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPeiSmbusPolicyPpiGuid    AND gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.depex
new file mode 100644
index 0000000..d57f41f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..54701ba8721d3374b42dcc92785ee5eeafd0a885
GIT binary patch
literal 15552
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
DNF_s`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.inf
new file mode 100644
index 0000000..633f339
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.inf
@@ -0,0 +1,214 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusDxe

+  FILE_GUID                  = 99796403-CF03-42ec-A817-7183411D79E2

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbus

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusDxe.efi

+  DXE_DEPEX|PchSmbusDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3A40

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x3A48

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmbusHcProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiSmbusArpMapGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.depex
new file mode 100644
index 0000000000000000000000000000000000000000..a04bdfab3e6c26c51e1b877ec289d7ea324cfbea
GIT binary patch
literal 72
zcmV-O0Jr}Fx4+Ev;P(ATozxJh@le5$0=s^2FB(eJ5t=vvkS9OEO#=4tqZ3Ld@ILb3
e-o+9$FEj#lD{#ULfH6UbMvt|)oaC$n0|N*&`XM<0

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.efi
new file mode 100644
index 0000000000000000000000000000000000000000..346a5c92f5c76cca4cb9c3e03b84833dd5cd2ef2
GIT binary patch
literal 24576
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
V(RSTl-GJ^x-7($g(Bt3x`adK;!qNZ$

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.inf
new file mode 100644
index 0000000..37a8491
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.inf
@@ -0,0 +1,181 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmiDispatcher.inf

+#

+#  Abstract:

+#

+#    Component description file for the Pch SMI Dispatch Handlers module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmiDispatcher

+  FILE_GUID                  = 6BE18C9C-BF61-499e-88EC-5CD57430460C

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchSmmDispatcher

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmiDispatcher.efi

+  SMM_DEPEX|PchSmiDispatcher.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5010

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5018

+

+

+[Protocols.IA32]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiSmmPowerButtonDispatch2ProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..948c2851afd39fe7f884555e6b0d8e3f51ee8bc7
GIT binary patch
literal 10304
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
KP1n<#VE+e=@4B1-

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.inf
new file mode 100644
index 0000000..9b80bda
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.inf
@@ -0,0 +1,139 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiPeim

+  FILE_GUID                  = AA652CB9-2D52-4624-9FAE-D4E58B67CA46

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiPeim.efi

+  PEI_DEPEX|PchSpiPeim.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2700

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2708

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSpiPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.efi
new file mode 100644
index 0000000000000000000000000000000000000000..91908a9176f7d63f7b7c27c753b5611a3257ea85
GIT binary patch
literal 23552
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.inf
new file mode 100644
index 0000000..1766c73
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.inf
@@ -0,0 +1,258 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiRuntime.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI Runtime driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiRuntime

+  FILE_GUID                  = C194C6EA-B68C-4981-B64B-9BD271474B20

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiRuntime.efi

+  DXE_DEPEX|PchSpiRuntime.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5610

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5618

+

+

+[Protocols.IA32]

+  gEfiSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/DxeRuntimePciLibPciExpress/DxeRuntimePciLibPciExpress.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.depex
new file mode 100644
index 0000000..6fa9e99
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.depex
@@ -0,0 +1 @@
+�������G����P����J&�>����4/4t+p��1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..301d91edcf54a71e5758c598a836ca289d64d94d
GIT binary patch
literal 24064
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.inf
new file mode 100644
index 0000000..0129198
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.inf
@@ -0,0 +1,251 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI SMM driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiSmm

+  FILE_GUID                  = 27F4917B-A707-4aad-9676-26DF168CBF0D

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiSmm.efi

+  SMM_DEPEX|PchSpiSmm.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5800

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5808

+

+

+[Protocols.IA32]

+  gEfiSmmSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex
new file mode 100644
index 0000000..05a6cfe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex
@@ -0,0 +1 @@
+H�t���N��ľ���s+�N+1J��V{PD,
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.efi
new file mode 100644
index 0000000000000000000000000000000000000000..9593093310385bcda923d6bbe589bcdd756ada1a
GIT binary patch
literal 5984
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf
new file mode 100644
index 0000000..3711a1d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   PchUsb.inf

+#

+# Abstract:

+#

+#   Component description file for PCH USB PEIM

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchUsb

+  FILE_GUID                  = 3B873142-4252-49eb-BF17-105CD6F3E808

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchUsb

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchUsb.efi

+  PEI_DEPEX|PchUsb.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1660

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1668

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiUsbControllerPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gEfiPeiMasterBootModePpiGuid   AND gPchUsbPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.depex
new file mode 100644
index 0000000000000000000000000000000000000000..631980e0f8ec20e495bafea5b893c3835d38bb13
GIT binary patch
literal 54
zcmV-60LlLXk?~=zU#<>Jx%%j7(ul@S0<z4yCPHu25xnOBfX6(DfdcmMqZ3Ld@ILb3
M-o+9$FEj%K2msm{`Tzg`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.efi
new file mode 100644
index 0000000000000000000000000000000000000000..63784d5e9c846b817142870a7af4b457d3e1c426
GIT binary patch
literal 22336
zcmd6P3wTpiw*N_!LTw`n5Hx6Iq694Rurz5&o2K-Ywm2=M?-t6Vw1Kpgwx%bvIDo~|
zQVz$=)q8bDXVj6abFZV$s53qQm1!w9MHCRc%7`<fGUKU1ryxSnO73r+lY|2GF>~kt
zegAx%bN1PLt+m%{uf6u(hZZbm{^{S2e;V`uj_9y6Ouj;O38CXm#EmhEaZJ0FVOC6*
zn<gnyj$oMMHu>Fv2VIx{(#vHys*kz6G5D_imip1EyNelS1Nzo3VwjTA0RG9kIjpmd
z1@0XrBjl1~#dGA(z%Z^k?%Ha$nqm4U$g&>~K1af(Gfdtb8H^D@quYU2@GLz?00ORm
zj@#MLR3pnovb7T&o+E#N%N+Sm<+5^tHEM+oMzv64)OoY72_#==Q6&$xsQI_JkCZ(F
z5nue;KbG(FZn!q^4gb~`j}HskM)mS#y>H0Ba=a3Hl#p*!fAJ*VqLzo+2%>y$cc_(r
z9n?Ux{EMeR=*bERuAJ~B8t9%N`Rs#3e96J#kIwQ#fVh<YQ!;(9O8u$IL_I`6DN4Lc
zfx=+t+4YfP4i)>B^*-7J`HM@tk1L}i8&QO)r|}}3-}yC^qwZQIy!E*^<H9Q8P(t_T
z-okG#bbl_Pgb`3sk0mJK>f=!TuJm>dv;720+f?J9i1191tEC#{>*CY5Fbr>7fsS5|
z&tjO)fJf`nqEK&IEbJGjOktQxKCuGLooCU~PA$pQqM{ZdC-t!^YU@VZebhFe+Qb{A
zHp^qRa@$0gDjRLLF5aofQ`|?*;%{$anB6pf{s?8XzpP4Qm{;>~>+D{yca)WjX@Dx;
zbq{IfP4Q=V;r439DK}pPxIqH=4;jEC11w**bV;xHrBQ;q+2JDkE}}2~Jr*VEWY?3x
z*hxK!=`vDpsc@1zF~prT6qlC0YAA$4uD%bP?;eEG_y%K~=@`!%jpe><quu~KzRGB<
zw=5Qq0$mvD3}`y0z|93A7H!^Ky~A|a$IKneFxyErMf{>D?;@3}zldQ9ePf-j7Iu{{
zSH~!Pxv|@$8OE1u_%R}bFW2~%^oZN1rngy7UrmqrBN}>`PmD*m;{%R-D50}kv-MYy
z!Mj}DdCW7(but}7ZG(_IjVOt0AZR65Ym8<1>-i-r?#?Jiv*i^u!wL0}Lo0mAXB%~p
z%dqQNkP*j|7-HvVnhqQ35^VuM@h?<SA1|!H-DhW<3C$~o1A%6hP_7EZi_Kt?+pG54
z)trH;XUbeOxC0W3YX>BCNU{g+c^3V0d-cTf`zU%#Rd5gHI;opj3}Hh$hk+Q+^=a|c
zVH6o-!J@&M8>P8xSs)M)8jQ057AHXETwgqZ^if=|ihE5<MgV9W<e0^Mt<v08e<2Xq
z-VTk|!{USTLyJd5z+vY0>U@z$5wgGo<BL3m(%>|umOSsckoY$4oBxJ#VCIE-X36!(
z1Yb-qJJXvJQ2HEYt`+k`KJ*kAH+4H4#pMpEr?Prwz@g{%&N6lTlY}?@<6I&+*nfkR
z{~F<-ICMS3?0_S*`}I;w{iek`8Bh~_AhaVA4VC1u!e5t4E_gDoxJ>Xwm2ci8lAEyC
zy6y(>E+s4=qum3vO8*$HPvkvO0(3tVrRj=Lf^lQ#M)*?urb!ID#9O8|9TQUgIo{mi
z%@#5od!0;aT$oZ0Q4)Lr74~!8@qFG;2Cw&~$MF^K^A*SWiW7XrAa{PuhQA5(tzUUw
zT;<Dw$NI<Z7=um*?uWPc<xGMq2DYJy&U$&f+LEJVKkzP83(3~=e8I_qQ_zC9b$D~y
zNDe5-$+GOlObQW%bCtr^Yu=4Zu1d($bUXzdAv?h$<R_%__A@A^^7bJ-vV|jj!SR@W
z-hP5F9cE`dr!XBB>?h9l7(9`}A;ErJ^V>s5KIQGlvtst}r6)We@JolmSLrZ~&YyuQ
z7f`Shytx;+p@>%dj!6&$Ec?@n1Bo=!z4oKrR|ZGGGjx4-z;kBm9@)P2%Hn_{mfLIS
z>~1p&_M?1G1;4Dym(vWD6Z5%TAX0O88u{tQL1=2@Nq*y?rgID`2AUx$y0Be^uGlgB
zvK9QY+U*n%i}4FM(lL<zuZ-+odu8_#0JI4G#K69`NfHC`{4%pICyy8yxPv<GK_{Ef
zQ!kp122}9NEc~+6foc?C4Cp`s)s+tM1t)m>u(e0i(GOH_+wkW3l3nz&XZXT)nT5GY
z*f?A%e6gl44z#%qmOQ1$Bjj5wLWw1wFF1o@Dqk?jmmWpQ3{&$3?+XWJ?q?@+0}78R
z;2D$#2lN>5oGc1B4E_mM)TK&sY`v1KYghBEC62EG@hZ@(vRH7X;>ye6E<nF5iD@4e
zpw3~d{e-4dQaA=c>5%M~!XAI*4me`_@@3LkT8AO`A+Em$uam)NC$to*N2I3=;#C@9
z;Q=?Xbk{AQBRlBSYiY14G1$DD)WSULId%=AklvdU8dQM3H4OdbH8i05gqY5KY>JR%
z%~P{6)^nb>B)<Gfz@EK%)3Bs+;Mu}>uM!^hGA!h%{YoKS%_|X2B6p0F<iTtPPRo&D
z#C8VQYOt)kEIP1ZQtl8b(Ys77n5<v0a}hrE-i5=PlckP>@uV$`kuEWPz*?tfwcz;+
z&yk=S(XEi7<;MycIzCqgeoo3$WZ|d*>WMJHzhhuss<U`usrsVIf*d>@M%YaVLZ7ul
z%}xLZ=fWIFh7`8O!Y_pf^mKnVp6)x$xYx%o=8=Di<=|iF@7(7ZyMqRRzu$DYPqD3j
zX2mK#LoxFUOl9iphxm*Mf?dn?DOUM1lo8CtueKIO@`Ypg!f3v79A9`1Uw9o~IE62~
ziNAe1zy20L%~{XzQ3!79;CQm1=*v6LvhMb@ZJxF5o0Jir)$N<+toKyIEV|8iUJ|S)
zVr0tx^RZ6Wg-^spEm*Bz2h9-<%0XpJ4r4q=7=q90B6G~QejQc@nPcHNVcm3ZVL<tg
z_4U?IOabc-(vADitx?vkq#ySYtE8LO{q891J*2DF9)9Z(20OoFnC{OqsN;92aQC%q
zai<sp(>_Y3J*h1gmTJq&JCA8PHltp!M{(UEW)GT&g0qJ+%xDxC1q3Y3+oRg8+q`*d
zVJ;?t0<8yVbJ{K2*r9gIdQXb=6q|(c?cEd#H#f-PrX@`3)rmw(EnKJ+3bfW-*$qy4
z-W)le(SxRQ9XR&3T*GbBF|8lD$8ejpf!6ng9F;Jov%B>zcO>_9pyhS0SHUkG;tnBH
zXb~-*GtewC9G)eHq*)?n4{IB}rN|*3MWR(%$=ea$&H$)eC>@m1_XwqDG{4?+<hVZu
zDRQy+j07l5;kpCDLKSy7U_Gko%z?*PUza14=Ea=PIFVs*<wS+1^GQ-_jux}+>QshX
zoz3vM7O0S4l<v#T!*F2w(shb~4ivaeg9c6KFtQnL(-}t7d74UhY84(Wcc+f=M7MAH
z`xs5f`>3T7(Ja$>)V{6<fD0Wl{_FVM6-2tcmS67T7d7~Dn?oIdcDm;#qU(tzY{C;m
zc+tMD?qHego72AO(`}j#FS@}<Xu%_tB&($uU^*6#nn6GQd)TG}q#8ML=BR~uBz0Qr
zAUjVe7~u$0WJfp~MtUAdlzU2^ptdfOJz>!E#z;@7kM!o|RdN=FRb+A9aWvnYCYN0e
z!Pgv_!|jO>U09I{N0A-skQ@i&LXWWDbZkv;oRDqFLn_)a8Q>2JUl3!a?wNy{j+Y=e
z_ql>yO1B@=Edw`A=Vz$z%ZMD~%NUbRAPc4hxCJ)_>Sr!SoLR*eDiCOtd`2{%F%Dsd
z&$x!qxQ@@5KJa@0Z_SAG`+~>@y!(6VXD*Y_ZkN!|4zkn&0zz&DXb8DgT=g{!SA8AB
zZ7^y<d4eaZ^RR~^@R<4w72N9qK7&G)kh=oi2)VWXACDl4_@<z4h1__FnE8hivq;2J
z`HWk*o;g|E*O8jL4#46Fo0#!*t9%LsL_GyWR7w-mKm$tOHih1!3WdPqSiD?19n8LB
z3jKK)`u7Aa&jmCao%6hVaW;Yi&QX7-gip)8yB|gG!TcrYe7C`(JD;G`x<R6H0juj+
z41P>vT?Vw#MAl`L3I@I_PAVAru31t+&v#j*LM-2vDiz}Ru5_s|i|@*&f`adoCZP-!
z-zCjS8Bu(fG$CcEh1dBmnw7jzJLS<@%A+0c^N!=Z;{@-J^Jwp{@&E#tyw=s7jimlR
z@wT%WCGlm<^p#*0zVB212=3s^Qb8wpL;(hILW?FnpR1FWRKBhf)DF=av8w{5VU+lC
zJzpM+g(Maqcrm&jN19pW8p1k^pX19>ZA7^C<wVtCuJz@pOEGEsa<th<Z;;iSk?#3&
z^mCAn`*MtNSQhwlV&`Ms;>$6#NsqYaq{pnkU|s3UiI2r<(U)UhBRwoXkshg=q(}P4
z(jz;63OX*!3*7TG_`xdivQ<77__4IWUy2njT6g`NR6({wP(@XxB&X|9$bgkx93Ejp
zA<U^k%wJr@^bjT%Q>N}E!R5S^tHfjC)^zMAJ~pbAnywy{5F5+t6#<V9aXjErI|2@M
zaEbZ^wT?kJpK8}nEr_++4IZ_%z~~tZ-@jYJjEk|)VowQIlZL$|Ms>h5E8vL}7O2Ey
zSiNJ=>aZhFSt-27j^TU??g%5_{qwgIM!muj(2m+YtuSU^)^#MhW;;1wfIAYP6{+Xt
z9f)o1m*%=7^0FT$tL|SQ>))}~{3m5a_y0#(xsy6>V=Pl#R<7xIlZ>)a%>`nDru9U5
zw@A@JUiSv0Ll@<nQgm1dD^>a<gh9csL&9U-LNTFroaQbLl&p_XsBr&8u<K3xXmZHF
z3Yv#axglk%k}uHLGu$W2LM-gtkZvMNpmAAZj1>y>LXYMdM4WTAM!oVap&!(h`zIda
zdIFRf{EUK%JG%8I>rW}pv|bnR#A1s@=h#k8UW}p<egV6TX4;YB9vC6+9x9J6?t!ql
z%VDTd#qGE#?uPFdmyh~q#GM)x_xjPqb*R2oUUk^KM@hz|YVK>8_YFz*C~w!5=Dn7Z
z2+6!nWEYqhi%Om8a3->?50%2{BY#_Hl|p^%c+FiTIVLu%GzqxZLwJ}`?admNja&*N
z7l{vG#VFZV3;XKA_SM0@TG+QhtL&Lrszd5W=KVR%5HRm-t2Ak}OcP3VrtYbyrtXOu
z^yneHWM<k^D=I8Tw2AuHNnRJ0+(Rb%7fAjHc6k1uNltNgbRUnU@JvIx>r1kaM=Na9
zOG7jk*3lssh_UucVfYv|7pUtIOU2XJK|`!9(9uBb%Qj9_Sogavtt#uebqT^DQ@7@s
zQiJl{iM`hT)|=ca>*<zQ!EVSSKt}TnP?SRm(8@vXEe5MeowQ}jZ8R|J9`I%x4UT$6
zaXF@kfG0}C+9Ckf5u=v}n_$h@vS4e;aHut-eFJE-6O<c_dLqr@0smqA+L=^yjG0L_
zNU12(jZFvJG{?B_8JLQ7!^k{0m}?`<u|{YnrgaM3NGOO(I2<643eH@j2j<7tW>BS}
zZA9#3UxE00%y%OYQ@;hV5Uvd?bner1sNvMG0Hw<cDsI%%R@zxoe`##zVNHjhic8g|
zvwQ+&j9rptkWVY$n%Kt;DKvNW0067gcQjk1^!n=vO~-$uihw&FL80ETSiB$ZM&}<e
zxLwB?7-=0pa6gf@Ltq^r&rd<}g=OAVLeI1Sa=UX!ukYqo=@@RIK5*_Rw<?zD8Bi;G
z_#AAAVks2G=V-;J;26}x=jdZ{Vm((02gJ4L$p6dEV=NYmO3x&2lZs(AfpsdOOe-wZ
zi_OTmaGIgVmPbx3wmkgm9Z*rbe;lvjTPgj%WP^#ej?~x@n9HRpKrl^p2|>NEP%HjO
zB3Kqh#Ph%oSojnVQ};4TPaxd1J6i*R7`vg29V>Tb7Cd?=Vyxr`{^{ICtqMuRM(r5S
zX9y_byC8_Iz<o?;QKRC=fZEdD;Hi>Y{16bP?q2*O{zjb$?*a>Qq_h)%(nMH-69H_d
zV3~ovD^HBn{jy$cW5ozL23{fL82JoU=V5x)^AV(;OekcT+)4Rp)9vrVy?g*A%DrGY
zBlzg74y*6U!a@Vco_p)up{WNECHq4vm|)$c_e5IDVzFVmNza$Xn!0gh_pQ>r8}6qy
z)Q`6;-gK6`L$CCt3laR5v_dE?Q^jw|q(ZdvwkW(!%v57y=6{-lI_^+_-*TG-6~%8U
zlL~5n%VKKk!+J7q^93D6_op#n)ysTLJQ|?j!ouQG?5*j9Kb4i&E0+mxZY?oRoO-}|
zz#T2=Z-9pfn+|*J!<k1uvJPrq%r{QGzI*B(3T9sWkah6-?#%-Xrs=7BdOnP#IG}kk
z+jx_*pB^`Q&HX)p!^W%8$gpD&M2!BiRBu42+F*=h*xA^3nk9vr@_GdhUrLMF$Uw2y
zuM8Bc5qfaip$C?Z!^xGx^DgOd>5|Gyc_Z<>@ZPJ&bgV?^oKKBHed=PIuO)$(O4Hfo
zd8n<RS{v0Gs5ZG(g~|<7nMRc{REdR**7Xq8;lS@r@f>u7ovWScnHol5a;!d9Wj*Eo
z5|`HXJVC7`sJ93T%si`D(py+oUMQRv&Wo!M`YJoRagG(0fpyV)3_O$=6dxmKK269~
zVfgd$f)4|6`LaqHK81Y2Fn2!PJ<*j9ocfy=@2tR6yqz$%6%5m^O;mW-MlJ2yTnvr~
zqe72Rs*c%%b@gHYO>q3N;u3W0j}~4Rv1VepZUfCPLce$qF;^MHEi9Dw(T6cgCc3s#
z$2ib@fI6mKHq1lA*vK*+K6lE26#v{Qp<w9a2!8xx!Ul?p>kstS|ER*R%v0{`+;``B
z*aI%4=Jp3@S=&3a&sz{E7rwIgue-+eHc_`M-l@$5^<NNmG|v3Mx_{k7R|)EH1S_{~
zqBcyADxuFGQ(9goeteuJBb;<&&k&m0e3JHrFoiJ0Ghr@Tyz^0_noXG7MF(8L9>pdW
zdhOa>1dCG$wb#o)@OnmEDJ`_L^1GOVY*IKBeEB67o)?uW_v2L=F<llFy3A=fGCPiL
zToOs~UI24@W4&sl_$5*_5J9ODm2ZS~8{Fo&9>YUEJS?hL)iXFf;ONA&?Sz1ng5WvX
zi6L6soql;o7WVFi^9Y&~Tu-39>t~P&=Zke@HE9)DR?n0N97ZSvOUG#=kAsh63jx);
zXxB{GFC7eva|thahCp71;TvWp;Fu*-p~*l=#}Qx#Oo&H-)Y;9B!*mcWyd(548!$pm
z%X$kX1_}d?_)7F0H?r^AVBaQ0t(_!<-2LxSjbU0?h*7S?7XW4DyJ>>}!aa(|E^-6R
zB6kxMvJk8u=y(}RWaBhEqFfYC<fG0%(y8~$0B?Vl4!qI*WJh_i_}MqI$TSHH2TH|E
zqC|@ii4Y2U*8_0>fMbO$sf4s6i1ddb($$0%LeSwHi#8{uQ%tZ<N)xVr0Bn^Bb72<J
zRXi5Q-qPV60TAf3Ur^R7l?PT~Z&v&UX;Y;PjdPPi%<$YEC0`i1?4p^4NknUB8@Pfx
zG%saF2@`sbtIHkYZ?K7R*|x%~N1-Ls^<>&yV1j)26W?zZi=}w4EG(30iOqDh69)Ys
zDSuP%qFn+4y@f!7UAxeAy-G|$cVYNn2jSld!hc1AfHc91lP)2BM-cQ+LC}K)N@J5`
zEW~gL8&T4HXu|~lK4m+J-rlCgz!e{d(xvylbge=p*RAZ8-mQ@j0g5#tTruL)@Wk!(
zUP(Kop2@NZLVvwZycY?q+|-vIt$2(`(=0|lRwx#L<?qzx^HTb&-c^b4Knl8wqzEdg
zf;`5p7AA<-&{0lE{hNa*wLz43@Gg4^ISD?t2%_i7rY*16^<|D%h=;LL^_{HD2-4jU
zq`QgeLia>Re2_Q@vvA=n+1>99f)*2~q_ySC`qIZUvJqqlY+oOP9dRK;#dTxTRV{vW
zQQ<KP@ir(H>XI4fPU=Z*;wMNbU37@zih?!+4y`cwGL5@eVe0ljO1@Z$y{FFK;r+&J
zqmdR4T)xo|2%20$dr-mXw*Cf3aj94kWcYPr_@EpU9zk6tvN^*p>I!pxUt|NiQ;6@P
zdr4LabwUvJ;0V+jLao;=M$GtkBueN%)=^j}J}hhSv1X9LXFC&I20MbwF$qz;m2d#5
z=M%|C!ro~i5ifeDW-AYPz)f_}LI#@`#ENEX3u>jjMAP9Sf*|B#iB7<wk|7FFEj|r)
z(0);MlmJQXou{BJ&_!?~yn0>z7%8Mt_%@J^W}KIdx?B2?CqR81EECtGveF+ZRbt9O
zAlpUM`y$tZhC=F2Qq^Rl@X3(u7B~u&kW&d639t^T66;j>YKMAuwbAW2({X!(JlxR`
ziisfcc#y=nAc^yMuawbTVYIDRpsfv}O$wszAvEYn_ZSUY8Gi%euS7t1=}`)ID;arq
z5dTIAU-pkpL}NLv1HxaCoEReil&9c4*w$5xTYb9t`8mV@vN|Tz(Z(1iv72Rs2OQbq
zQM3bCG*4zxrx^QJQ->0-v@(<yb~e%#!<r?XVLrM{VHhhdK_ZSIk$$|(L^vC1jF9OG
z<jd3s<fI_-k|44$0-4lB$n*sAB|4L)f%9i&_E!aw7lx7BZ8VS=wpN}-kw*t4pAV-C
z68_F0ep3*C9N|;6mByo3h#5TSTHy5VAn@%$;1BU0(iOY3-A3-nuqA;+vNyi$2rIcb
zi0BC-K0%05FXYFfAJrFonH~gg4Fdm!fUj@?;f4xyQd)-Pc_MujRW4jeZb@G^S@>Ki
z&Q|`9xEEswS$AbF_nOZ7lXUmMZX83jmyP&fZugggfaGNL>5F%^!H2~0=t=stLrTez
zP<E4NWdvKl0DR?ge8CtDtXbJ>4(fz#h4wM(-+urp+o_k|1_rj|5q4BL2s<elZ%Ej7
z5UMHQkKG)g6@+_&E1g<1<<?(NYff%^8sqsu@F71#-gOEzCc1_)(f@Sx4`{K4z*Y%k
zXu(L$lceTdUg%r~C?bF>+PlN;339tordrlpEd1$guY#TAiX}$c3FZmvWE{a@7r|iK
zC-kgJj$tR;h~t*4(pM#`vplDl^zO*O`x30e>B1^nZ&9#187L~fJvEB)oR(pFC4~%u
zDzbj?tCht`qz@?n`wX$#ckZZlXr0!TnhP<LsQ%xmzPwCa`agJ5s@lt)RMT+ZnFk#U
zUx_zjsuB)Lo0dmK9bR@i(13SLPofI%-bM70onH7<Jc~Kb`WKHLu}_<f_~#jyj0R7X
z^;3`PS%p6$L0UIr?DuZp3L0gYENWa-l7ocnC<VCCoUq#k9ucIcj?8m6d?5`!;ehN$
ziHpU9sHv35f!ZY3LqWj~h%cf+s;?yTofdhpia@TWt1LLfA_3Qqu*^vy@1g*-^Ldm+
zmPqf2fXl4nmE<C)N%{T>3wM2kL3;8D1ABIxg4^@;=NZuTr?i1V8z-1+w1v<>lmk8K
zkVG|uAo`)n9%BcVN%ll-GGMuAJ=iiCyD^Hb<Jl--PmdV2HAA5+(B@b@Q5!y9F7#k0
z1~_!MBb)*nF#5(YMGkMN8s`POPm#T_Z<(`=f3yH+!{dbhnAbhWrQs4xEH<C)puTI3
zT1KFa0y8!xjrb}f3ZMUcjo=)&`4h%~<v<)3lSbG3<d>NU0Xv&-gY@f8qXV2$t-<+*
z4989c3s_WXTxS5V>o$P;kDzKd`Rm!<boM%H-#WER`(rc~Q{#*Hyw!{X<JU_q&k|Y%
zwLC;Eh!>3T`ng_O(6L$KG30;%o8+n>0yO}W8TpJPg`nat2|&}e8iqu-^zAGW$1^*C
zwSYfe{Ig5~pGFdix-f|+K>`?+SdE8>+yo*-ftZje5HtD4bbJ#vLFl0^!KvBCcwq>K
zHSvBmZC?(;yRl6YkKD;@>V`VwaHZl}LED(eu?Y2M1OUE5^Gu)8M{NW9QHha~j;jQO
zqpcf^sT%GuYE9kf)IgnY{y6<cKxG>p_`+b;)@-8&*R{B;s59cK;Lb;5UK|5Up1)et
z;g$;1*lWG4F>mvJ2JVTER_Wu_Sp#wKOG=T1)5=49samu9Hic$)M9+s&nisoc`lsd_
zv*7`G-1*s>uE)@|rbF5m?ZG!CnhrX0;6wwvkrSiYDfq&K9WQ-ml0^0UqXw>*o)H5R
z@uU<DcEbUIXBJq1o~e5bz!>^2s#}F`W&C652{<8rn1masg~GoJ!Z45t2yVY>;5o3y
z?N<!^hMwo=XgX+}%AJpAr)ai3Ar+I?-Nc>GXRqSUH)uLZ25!IBzcI+sSZ=?8*ugx7
zl_>DsCYVjnolkDPX-!|W@?G!khe$KZK~l`_h_G$|+VUr|FyWCJXC4ZYoEQ|6m5ns;
z5L^L3hJpV;0c}u(r2lrjVz?O?;T@<yWO?rVYE2i-j`+rgcpZQ_Nu+vZ#ms(uATp4n
z>99kG+yJ(*$HRo&z*YEi8Z`^>ISM-tH%*5I^#fOt3*t}^<5d&ZwC1JsVSlvdB?Z@`
zf_dq9qYA!JHShseoyrnq-rwN~(VpntC-Xu2Wio5Nv1GsohaxPgTJo&#K!-m*4@qd?
z3|tMwAamow%n8lI{;Pz!A=X%9K4N9`?hVu>eZGLD#G}anybD#rkl2b6DCBcJV>B-f
ziY|IBG3IMt!X{>>#(~>7x?N2-HQi$97EQOS=oaO`9-wP0XxB5|4&y_l<LM6ZS&SI(
z^Tx+X_j^-GBxxA;PNT6?&n(v5zbBIh{4@qpB$9R&pu!TEUP~rpq4;y}ku3+Fk!;hf
z>8JzeWE)M#Ux_FcI^=@%#j2)*zNnDQtLex>alnDVM1$sA20$L|0FK@L3OM&CYF^BU
zgftl{2W(0OCEX$%uKti<)E5axyVcxYBaH1LsRm|X00kog{QvuHp@l6bZvHrc_1o?S
z5GNm&)C1MPrAa4PXBr0HBDec4?n4}O?pr@ucx&@V;NwnjW`G+qv`!Pu_v<h}`PJO{
z$kuBGvzNgeCP|59Y-D%Rmtcji6S8pGMwTS|2A1LW>ITYbKz+OqBYN}xc1YcEtnDi9
z<8L5jI(&zs3(jM;9>cfjHGTL&oXdaZzo_@9U}%#5Ux3gyEHn>oJJSA<s{145))J%U
zY;Ob`*@qZBQ|RT6M``XyC`O<5`sl@&FJrimKL~~G&cK~N+Mwz@+cFuB0%knpx&0A@
zIs4pSxObUzANb>h-f3F2*rev`{MVrMTBcsR7`9deJxW54Fa^rXy!pmvQA_KfN}->0
zGqXSD98K1qaS+lV%|`w7Ua!Ov0BdXzdX%S@pF2m!f@fCXEG0_t&7?WL0;}a~8FoBU
zm8&ryVe|N$QbI+&hGDPD2!J4wf)3%|;K{1Mcb2gHv>UO@Xrm2!O()I8=-B~+hJgck
z`QA8!Kma#_&z0;RBv&HN3e*EX3*!FJXtIhrMl|v75iVfU9WfRx7_EJ7DVheu@lBfD
zi!iZ`4NYt`I6KiZdlh&#rYpblzYa`!l$RKd$t6ZZiwZynSVRH&K(f|Gvz8|feK}@g
z4~4$App*o&Iyy0+X(}e{A0dS^BLt<_8|WL26s%V8hO7WNEF}iesg+@Cw!!SEH+OWi
zw<=05rBFoZ!a+<jIQ|ufknBqpAqwc<fc}lt{~qccEK>JiG2gQhEUYi8k1zBum*8Hf
zPDX_^0@5ILC3AXDxF2YwBFOEwe50mgAA2*ghyn8>;9Os%d9eqKfp8uKtR%D$Yo>h`
zAZYIIfwyR_;8DXp!(h}^AtLWCgZ{_#d?Y0nhtP+4DpDNcAICWKUAf*t+++&}A+(aH
zVqyXt!Vr#;(&<q9S~?-uviZbcy)u0<1g@~|@uZr%GpI<0l=|&&NhGNyo{xEM1nC=s
zDy^Rd+O(_*(<UTqzvix`h(BO+7MW=C24gMRoU%5L8K7Zv_Yu3;7|+K(9dV3qQp;rZ
z6%y5u9*{VOy+48yhmhNa@+nQH9*!Zq4Lb%*#Q76(7#3VDb|aL@iLCJxN@URsc9`fi
z$g4{bKfxLUdYOr|QSf1~p1pWjfPTGpJ<gWu=>&xi=*4N^3rmUM|Lt+$T;267qG^3P
zRtJ9)m;a3d2z|Ut`^c1(N?-Tjdry3@){Cm}K?pWB4&j(4yw<`pD|*L72LBOfJHYC-
zyF{$SyamsSPyH1g7Q7J<j&KEsuz?U?QLptDyv^IYeRj%d@KtobxP^e6BFGPO&OxTq
z;k7@@Z#;oBt04#PIq9<xX9JQxN1{!)=_A*3PZR21_0FS^LSE9XUMvoyvQqH8QRa$W
zNW#e-z<K&EJu|1>)05d{t~?1!I3+G4MA{<l*z?1reH36}X<rdvJwehQ4G8aW1@A-J
zI7!;$y!{QI{SeFuY2OwfARy-%l9nWW#b+NRMM%;@)Krv1qF!=D(?fXJ_M%gii}H#Z
zS=ggxt~OcN2W7ahu;IgtllYHgPs=bKz`&TMv+}~Z>=J9@1B;L~A4Xqc`JNU3{4vS*
zMqn2me~e;Kq&Jd5UjSSs<l{XjBwKpKkS%%7;AQ5#L`JCt$moGaM#wl5?8*i`D)Ubr
zKo{8Ap;HU=ieGd_ak0IqWVt<O!E$?1(V`+lTrpeCdRh!N!!-8{%uU$!zM^pkRnr1e
zx}-8Pmm!j5kAiX3)a5m`u$k_<+SN{K#IGi$s<p|zrfO|tYeH3~r>>#4s;psMLdnVo
zHru(buEyzDvwA^>DWNLco>`i^ysS7Oer{r$C8<iPBv2Ww$hj)3sg|It%BmY0oa@W#
zoUIAPO*K^uo7}7`tHIO4I^9*5uuzrV=DfUyda26ruuZwn#yK?%6Bn1cXi>gBW8sXr
zc$;nR3|Yd<`2JV3fsPFs4fuc4)ofkkYJ($dfuW_jy2fc(<!)MQh;N%#VPKo2r(}n$
zB7>{C#gJKDYbdT;-3TkWL+ZU$zyBIOi<+8(HeAp|Dq`~MT3Ex4HbY$8x~95X!!0um
z@sgS@v2B5Docy|#?rQh?s?6#ZC(2d%b&YGBwM0Q8CDEFlmeb^Jt#+fjam^@%33_%~
zW_8V)(E%315k^5{vYI@NtRdB~e6^#dc6m-+o3l29m3(eFDhjIG>ehPJUSufW*|?f@
z1?9_gLc62LxS$bk)mYsSlxIN;b-ticQb`=$32~Oe-pIPw&w_?7^Cn48A-<B#m-*GV
z>8#jQw~8%IGDBtAb?fR{n%u-%{1xNrTkwGc<Tg`6k#lWzU1P1&E$co`me?@cFn5L_
z750p8%L)Ea7gxGqVadW7+0GU?B^<M<G1IeZmD4Sci0`v?fpcw>dp#^(<ZLcx-Bnpl
z&FfKD?yhcb{)hT6Zt}QmoZ+tFDQl}o@xJflC)>Hwvl{FaJKc5F4GzSJs!)}r3_1K6
zmQ1T&YM53XH?4L?3ZBu7-0_v3uzJDT>ebG?>c-lJQGM^b_$hU+s>{Tn0xuNtT1u){
zHb{fx+Zw>(>f(|sm{^@zd_|oDT(yL~<GcNfx|8h`3O-G6<ds#U)JZy8U34W6-zR4g
zhG5-V=cuB7OPkc!_t7OjiGMsL_#)?O3_iEyr&lP2#&lE7XrblOc!}{-&{XSbkfs$-
zmLiv<4%0@lNitZCyRMm~t}nh7SFdw|gSGZ`&PJ9X*RCx>2v}dzG-{WZ5z2PfHP*54
z$hte64E%0}p{@~rXILw-foT6-dZ6AeccD@0WZPw5=_}twI~1=mb}=PMBpA7TrFP?j
zp~4UZn2xC`Uj8Al*rZ4m3^m^qj5Atl>gr@F!D#$Lcq~Oc#yse(1)DzvzPNgobEI5x
zqYv^QG^br2=N3ENO_#^HknG<QVS~NTL=^sBdt=@r_k)$?l4O{*jyk+uX_xQQ#eyc#
z!h{A3x75{CNv}jOE~B>A?QCf=Os9!KwqLQQ29c_TDX(@nQjSvExTdkGwb78<u)dk*
z%us!{v%$$a4LQ|y4N_JTsxNofjjRsC2Zb+bYBChBMIuLYS_lUTD1vLY^!I7<n=l{S
z-R>qg_Wl~z!Qiz9N42|pEqX&0Q`*?#X>LYXch)kL7zODT)3_R~kA+QGvC}vOuAEVZ
zsH1<0SBJZab=DBQMIP4Bv<l!Y(p=O+JeD;zc-A@%Sxs)Yr<o1E=XfB(!X`t3v$n39
z;G}|~##P<88k88cv4$MvB~;FkRBFg}Hr55(sE_8R#ug{hSc|C=s>a_1LI5>1dC-fD
z-@;Z)a%MERNdiOoeWfh_f~*2ZNSczIl5m+MYN}~!2(>L}tZ7=?jF5@x$57^Uw_uK^
zK8l?+9;jfwp{%Z{L5iphlU0-zLSyWWwWN=*j9?mJ$XRQMOGu_cbMf6IC5A!xoVo^Q
z*mn6)hzD~O^_K-Mkm%O6fP`%A?;Zyfn;dXjDH4YYp~OrMRZMV9ll`UC<~wu1E5eSP
z_Q#E$Y)En8AEIB{SXYBIab#c%EiB?t*@ys9j9f7*FQaH~67p%eU!;%U$@OSd4HQMb
zU*OSDC9yE}gCRJ`)DL4Ngamh$gWZfD$jFt5U?a5=qX=G2GY>v@48E`S)YYaj)8Z{{
zv!}(I!?%RCY4Hj4CKoP$l7GqcC=DU}gxXt!H*>AQK*bcg0S>e)2>xo!yH`_T<S&n5
zqHq~-S#UXUHQ;K;bvLd@aXpRe6<mjKy^rf8u3=o-1;E2K3zr2~9<CBxwYZvbZNRk^
z*L}Di$MrO>9k}-5dK=eCT+D6wQ&G5Lam~V&iYpIS6)yV4&rL9y6O-myk~1>1vh6uY
zLn!~qY-+<?fiQ2NJSA9z<R0r2r#l*Wm(LMb=06uH(adx4O{Po3?ee<I`)aFW4ROIu
zgezg4Y>=%C78YOWVUfRHWbg;WkLctI90Vk`$vv9*SMq)(><G$|s;{_Ve^dIKSG9{^
zQ(W|$vRJ>Ao@!h=Tt;m8(M7*d8~Io>E(_}EDk{z{UVYaiW!ayUXa8P&?Uq|_^{}+J
za*2)pf7vs+WM^egbL~nT-ho%zfE)SC%__-X0R_E)%Fy4WqrbKHT1xQUxK^5T=u69v
z@u&;_Jv!1Oor%lu#yjq~qjn{xLg{bLJpg*4zeh(OMUh(PtVDA19lw`1HQ##OZEuhN
zg@w82=J`DZA07Q^U*E&8=0AMjG3V2-^(FxIIHC7NTH5Iu`q6ph$RGB$FRLO8F-(L)
z%^b>5(vV{A45*lGGs9bARP{YSK;vil9;i^W1U=>-f@ab~$lvpnY5xPzu*DDkQLgpg
zN1IljxBfEg-+wh{T;s#LR^D;LGcO$6@rQ-{v?mN7u5oR=?J2EZH}!16X8-EGlaZbG
zI(Pop@4kG0eAe?jG!t^N?>k)n)DxZAW3(Bang=G{q-t)i<pV3m3>?aM=Cjio1MKmi
z>Ys0%(Z4rx;Zv2#;xlD~(f2l%Up0U2;qgCBW**&F=eF)Pw;yz^77AWU-f+N`@~hov
z2Opbw+w{S-)5rhv+642h=2tJI-Xh){T_CJ~XX~EFKJ5Pe8@r}wHoZOml~0&<U+UJ)
z3kILr?*HbN>^~SLK9&E{%vbLI>ZROQ&z!yOF2)qUW$<wSy{D>wyZm?K@^^kE)*as3
zx9FumzH#RG*>7?mep~y*DM!z}yUf3hjA+tj-an_{(d3`b-1$Rw_pg9^14L3yxuzyl
zo2komujvufW2R?KFPL_l4w{ad{H8Oev1YAVZ;mr3nCF?dntyKIZhqO^W9~Em$^4~R
zkvJxCLgMtq*@@;vYhq^Nf<#ARL*lx`Q;EZg5lL-HZzO$`G?X-9-gWbG=M~O#&%1Zt
zFXv6P++caivd405@-4|3$xkJ}kQ_*!n6fctb4q6lpW;oqH|7462U8wS`Ay31l#?k&
ztJB(K{ke6!RkWVAPEMVgdM5Qk>U3MY?V#;Xw(HW2X`jy@nhzngm@Dy^8b3S!<XlC<
ztqE%qJPEO;>84WCCR2yWYr4<$OVfXvego-Vf^@H$-Y^|8y=VH+B%1ziI&1pIG!9bE
zHQUUY<^|?8=HuoGiEkucNaU0LBkAUOZS(G$ca6nmaa+bEuS{-8j!OA=+e5Y?TSVH5
zwEDEJw0qJXPy21!i)nvMJDT?J{QsK&%KW$H|8+hMUiw5jCf*#M7VnC0j{h)zAb$Sb
z+__8U*37+s?!$ARm>Za@N|>MEOt?LPOZa)hvk9*!s7w=0x0r5)O%|G*rUr1o)$}{?
z{DEoMbc;F9Twr#Zo6M~FL36LU-+ab=OXA$bti<BPn#8)q^@&>&?@N3n@wvp86T1^n
zBn~7_O^QoOP0C67aZ+>AgGo;%?M*tFbT)~Zcf-7_c}wPPn)jdco|?C3UjMv<^P(*`
zTQV&xEFQ}i%PW>1OP^)G<qOM@<r_;x@|<K-vL)G;oS9scd{=T;^4-Y~BtM$`Wb!k~
zJCi?1{w(>+<l$sv$}K4gDak3-DXUYOQr4wBlJa=U(<v{e#8@X;r&u|w*Sgc%Z#`sv
z&-yp(=hmxJ^{F?drl+n-ZA|S<{kPO#r#_RqFZD?33|peDz;?TBo9%$@sO>Mdk8P)H
zU)wZkH>6EZOH5msR+F|i?fUuE^ViJ3d;V|c_s;)x{+anqJaQh`es=u4_{FB%O>dfJ
zm_Ig0Brb;*_9cFh_~g7l&ig~kt0~u7^Q?=kYpwgOf3|*PJ!8EtH7V7Wx+L|*)HhQP
zr+%0kX}i{TgUxEoxBbHQob5&1YnXp1NJ<HyO=XL+scl-D&Zf7;+6*?MEzULzerUE?
zY^k<%Ted9^m=0Tst-@AiTVboUxoi!#W*cj3vu&`o+d6DpZFk%5vE65Tfav1)zrSVr
A_W%F@

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.inf
new file mode 100644
index 0000000..a9a1ab6
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.inf
@@ -0,0 +1,254 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    PciHostBridge.inf

+#

+#  Abstract:

+#

+#    Component description file for PciHostBridge module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PciHostBridge

+  FILE_GUID                  = 9fd2360e-6b48-11d5-8e71-00902707b35e

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PciHostBridgeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PciHostBridge.efi

+  DXE_DEPEX|PciHostBridge.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x50E8

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x50E0

+

+

+[Protocols.IA32]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  gEfiMetronomeArchProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+

+[Depex.IA32]

+#  (gEfiCpuIo2ProtocolGuid  AND gEfiMetronomeArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.depex
new file mode 100644
index 0000000..95be042
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.depex
@@ -0,0 +1 @@
+=d��I��B������[�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..a368ba810f3bddd4882a8512e781876073b398c9
GIT binary patch
literal 6208
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
G`Tqcf2DzI6

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.inf
new file mode 100644
index 0000000..d0b04fe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.inf
@@ -0,0 +1,132 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmAccess module

+#

+#  Revision History:

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmAccess

+  FILE_GUID                  = B4E0CDFC-30CD-4b29-A445-B0AA95A532E4

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmAccess.efi

+  PEI_DEPEX|PeiSmmAccess.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1780

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSmmAccessPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiMemoryDiscoveredPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2364ed16b3eec1a06a6aced3ddf5727f08c90d80
GIT binary patch
literal 5120
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.inf
new file mode 100644
index 0000000..6bd7d63
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.inf
@@ -0,0 +1,110 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmControl

+  FILE_GUID                  = FF456B9C-0DC7-4682-9E92-0DE84B6E4067

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlPeiDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmControl.efi

+  PEI_DEPEX|PeiSmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1310

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1318

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.depex
new file mode 100644
index 0000000000000000000000000000000000000000..04a994f69f4355bf96f414fc4c084834ed2e90b8
GIT binary patch
literal 72
zcmV-O0Jr}FsZV5&Q0TEuoZ<^aX^xGg0^(>^9)X0^5xnsLfX6(DfdYuE&nL`A)DfCE
e0FWm?!A%18@S_t-Ch$J;;NHa&G%qv*0|N-S1Rr1k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1b0fc15925df044b22576b95bfef24d64698315e
GIT binary patch
literal 17632
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
EA8N$=3jhEB

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.inf
new file mode 100644
index 0000000..71d8f67
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.inf
@@ -0,0 +1,227 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  1999 - 2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PlatformCpuPolicy.inf

+#

+#  Abstract:

+#

+#    Platform CPU driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PlatformCpuPolicy

+  FILE_GUID                  = cb933912-df8f-4305-b1f9-7b44fa11395c

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PlatformCpuPolicyEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PlatformCpuPolicy.efi

+  DXE_DEPEX|PlatformCpuPolicy.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3C70

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x3C78

+

+

+[Protocols.IA32]

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiPlatformCpuProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiStatusCodeRuntimeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf

+

+[Depex.IA32]

+#  (gEfiFirmwareVolumeBlockProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiResetArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..e076777323483e39152c49173d8ba560c7091749
GIT binary patch
literal 36
scmZR2lo2M^*m6a1&qs!a<2D_QOy52%7WPv6VE5_4y`w@V`X<aA06L)%NdN!<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..01061131b8d1b15f36beccdc9976f7cf01e38cba
GIT binary patch
literal 17472
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf
new file mode 100644
index 0000000..3220d19
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf
@@ -0,0 +1,207 @@
+#/** @file

+#

+#    Component description file a sinngle segment PCI Host Bridge driver.

+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#

+# Copyright (c)  1999 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PnpDxe

+  FILE_GUID                  = CE7CD764-a1d9-44e5-9857-14fefaae96dd

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePnpSetting

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PnpDxe.efi

+  DXE_DEPEX|PnpDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x28D0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x28D8

+

+

+[Protocols.IA32]

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiNormalSetupGuid

+

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gEfiVariableArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.depex
new file mode 100644
index 0000000..df1f82f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.depex
@@ -0,0 +1 @@
+�k��a�F{�Z�~�'\������I�K�����������G����P���ƣ�^�H���3����HN2��G�,?��f�����c�,E�9���&^��J&�>����4/4t+p��1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.efi
new file mode 100644
index 0000000000000000000000000000000000000000..3eac443d86e3349a72e807ea00c723ed13d4d39f
GIT binary patch
literal 36352
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
J(EpGA{twc??P>r3

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.inf
new file mode 100644
index 0000000..d9ac1f5
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.inf
@@ -0,0 +1,270 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#Module Name:

+#

+#  PowerManagement.inf

+#

+#Abstract:

+#

+#  Component description file for Power Management module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PowerManagement2

+  FILE_GUID                  = 41E89AB0-BD3D-44b6-A431-E4836EFBF2CB

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePowerManagement

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PowerManagement2.efi

+  SMM_DEPEX|PowerManagement2.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x8208

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x8200

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gPpmPlatformPolicyProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gPowerManagementAcpiTableStorageGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/IstApplet/Smm/IstApplet.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/ValleyView/Smm/MchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/SouthCluster/Smm/IchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/Silvermont/Smm/SilvermontPpmLib.inf

+

+[Depex.IA32]

+#  (gEfiAcpiTableProtocolGuid        AND gEfiAcpiSdtProtocolGuid          AND gEfiSmmBase2ProtocolGuid         AND gEfiSmmSwDispatch2ProtocolGuid   AND gEfiGlobalNvsAreaProtocolGuid    AND gPpmPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.bin b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.bin
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.com b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.com
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4a4275b3d3b3334bf83022ade05eebbec60cfb5f
GIT binary patch
literal 12128
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
L->wIdG1vbAR}0>n

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.inf
new file mode 100644
index 0000000..d19a159
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.inf
@@ -0,0 +1,204 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   SataController.inf

+#

+# Abstract:

+#

+#   Component description file for PCH SATA controller Driver module.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SataController

+  FILE_GUID                  = BB65942B-521F-4ec3-BAF9-A92540CF60D2

+  MODULE_TYPE                = UEFI_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializeSataControllerDriver

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|SataController.efi

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2D40

+

+

+[Protocols.IA32]

+  gEfiIdeControllerInitProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gSataControllerDriverGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+

+[Depex.IA32]

+#  (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex
new file mode 100644
index 0000000..3ec1c91
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex
@@ -0,0 +1 @@
+�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.efi
new file mode 100644
index 0000000000000000000000000000000000000000..739908d9501ccb9c90adf378740d93f23cfd4abf
GIT binary patch
literal 7456
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf
new file mode 100644
index 0000000..c3d066f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf
@@ -0,0 +1,116 @@
+#/*++

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    SeCUma.inf

+#

+#  Abstract:

+#

+#    Component description file for SeCUma module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SeCUma

+  FILE_GUID                  = E4CEDF93-672A-4782-A7FD-5FC6D239377D

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SeCUmaEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SeCUma.efi

+  PEI_DEPEX|SeCUma.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1C20

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gSeCUmaPpiGuid

+

+  gPeiSeCPlatformPolicyPpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.efi
new file mode 100644
index 0000000000000000000000000000000000000000..a4eb0be8a5e11db838efa06d00b175ed18c00586
GIT binary patch
literal 8864
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf
new file mode 100644
index 0000000..0d4948f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf
@@ -0,0 +1,130 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  SecCore module that implements the SEC phase.

+#  NOTE: This module was replaced by UefiCpuPkg/SecCore/SecCore.inf

+#

+#  This is the first module taking control of the platform upon power-on/reset.

+#  It implements the first phase of the security phase. The entry point function is

+#  _ModuleEntryPoint in PlatformSecLib. The entry point function will switch to

+#  protected mode, setup flat memory model, enable temporary memory and

+#  call into SecStartup().

+#

+# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>

+#

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SecCore

+  FILE_GUID                  = 1BA0062E-C779-4582-8566-336AE8F78F09

+  MODULE_TYPE                = SEC

+  VERSION_STRING             = 1.0

+  MODULE_UNI_FILE            = SecCore.uni

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  BIN|ResetVec.bin

+  PE32|SecCore.efi

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2188

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## PRODUCES

+  gEfiSecPlatformInformationPpiGuid

+

+  ## PRODUCES

+  gEfiTemporaryRamDonePpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/PlatformHookSerialLib/PlatformHookSerialInitLib.inf

+#  Vlv2TbltDevicePkg/Library/PlatformCmosLib/PlatformCmosLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  DeviceCommonPkg/Library/CmosAccessLib/CmosAccessLib.inf

+#  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  Vlv2TbltDevicePkg/Library/PlatformSecLib/PlatformSecLib.inf

+#  MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf

+#  MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+

+[Depex.IA32]

+

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.depex
new file mode 100644
index 0000000000000000000000000000000000000000..b1a5ceab3b2eb73466f120b95a1915810dd0401f
GIT binary patch
literal 36
scmZSDU00wl<#k1HmIcEEb^C+9Oy52%7WPv6VE5_4y`w@V`X<aA00;~YUjP6A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b4135828b2b34ce38bd9fe8a126070d2ccac8dfa
GIT binary patch
literal 10336
zcmdT~e|S^ny+3JE2qka|6e)^&&{HfcVrfpHX^W<9T3~B2ZTgE+D4|K4lr-s*lTv)p
zm7R7H&vLK#PMvr2*@KVnUgx$)_dF^;+`5*swtx@fk138_?bL0_${eDjMS<MU_nf5s
zMz;NR^E~f4@B4m#f8XzqH)$&xn1A}S=bxth*9onq3{$SrUBYOTNm@8vGm{ye%P?H3
z3Yx2Bm`zCxV@_As99}do|7^-s@o0bg<-qtl&hi@2%eL=gn0gJvJjydn^<|)cWw}&z
zc8Oqc95#|&WGlTd{%{QATIzS$MLWa1Jwvs9H2%IA&&)8Zm#S#Y2mst7@Qc6kn*5j<
zW@M?~>G3tIHZibm6KtdR#UC@n6koiid2O96@~QH6-XK@=X<^GvG1K{g&NLA)gx-)o
z)DA?GKKt?5)X-3P`@Gn>&>NpUdsepahNg{!uc@E9W&I%5%jLWwbO_j>sr&4wKzzQw
ziE!$GPV5zo&z{Fhuk6Rk0SBdm1M!3xvb;VKs($_Kho?gmz`T_Hrz$;EC4Ra{GAxLG
zf`_eE&dr8<<oBKy@T!x)*k|r$nMZUtJ(m=mEzcmB0?{6dEYma0t{^u0N3|)*qB`08
zB?8g#aEtuLC*h*=E%MQv{!hY{=g#+kas{ekDq)3gb%C;P^cIHcJswPT^<&azY><yc
z{)VVu7h1Uq;NBP@*$V(M5#+Z7kyjNy;~-c+U>1ViN3gvrEbkc)U`-p>13br7PvCnR
z_IBVM`95Jpm%`>6`GoZGL}jI|rnaul)v&i4B#|R9z<7K(nHEBBz#h7_hqljyN<JE?
z1etuY_cYrx3y~47)$gTfiVRI*n4bRNEOvKolJ=cQRvat%K4JbDj+KVe<-w4JPcz-t
z>Dc!qXu@k#f4vLuSD(Y<S1;m`^-k9LtoO4%k&7lmx)izSY{-(LlQkh7D;McP7FH)0
z=|j5da*-iqnT|zjNVhn=hLejv4_Ov}j3Z4mlZ1jP{$Cl7+nyojPm_mSJLyqQ4>Dyq
znby5faX9(Am@S?{vqv%eZ)NrvW?54ire!#p^kkUWqc4&L2U2_cx7}=Y?LmogVWT?|
zK|)Fg413_Q?y;MV{bM(|9-9On25{ZFJu?Ao+PGo8{KpN0wwgMGX6lY_O^{>7d9Dbs
z_dNq%dztz0;yEH2(@Mh=#=pw{Yw~fOt+nB;W_gM<s+;~BG1XNMthS^`hr)Wy9J>1$
zGI==pZ9HS(GMs!Avy)4-v#tTTTRTfy^jEn|C(YD^%5){t5LeK|`G2%=Xw`g;vA=1<
z`axuX$QyP%bcu@ZO{&-sS8-^<c-*v+>$KE`A2Q3VJRsNUprtgzK+Wx{ng<af>(-6U
zlLw^HBtU{Qq(7XO_lH=CogG>Q>BC&XM$SLbG*mX9G4^j<KS;9mm&u+1E~<OpCw_1b
zWWQ;u<vMQ(uQhi+G@l9PNz-)26eC4CX@D!J<@}N1WO5DE24mGhI#9<Ql%<_DRF<yU
zIOy7?YI?h(=^h+<_eOZ&YNvGHq#AW`HHIhTM%0?E+`ylbO~$|+*D;mZn-IDO(bYY6
zD~d~cxGuAn&Y2n3@t><06i&web?cf!Mi^}a8-1<(sXT;o(|cSjuL*C7jUO$Dbk1?5
z-;4v#YuIbWJMuor*2%*J+5p&N1T)29`w3Ps9@NQ0W7BPQwUI4f#A1j|Q~)~CPhTAc
zHt|1=YB55TxefB+h^(+28b4Mr(V6PvsrD?V{Q&KQixXU+CzzmC>^Q-|bm>6@gOXw;
z-1{5$y6}!z2>t0iWJ_<UUd*iwm!|F`Tx%?72#1+iEY`+Eet|SW5~=Hm1h9NGzUXAJ
zK!T_RNtF}U@v)%3s?xO+&T~BnF)oE=WE3GN9as=H@R55}CYTA}@Y)3ym2`+o=`@}W
z<#s?Z(^hlmZSwnaon>z!mfE)>v%v>7Yi^k|m{zdW?Eg5Pt4gZMt1MfNq{$Xd>N7-*
z-2T(kG(kDF)<(V$i~2@TOi>Z;u)65dp;m-<&c|Xd2bSc<BatP*gUJcXxvmK+#489i
z3m|2G-A07{DV)n3SK6(BdK&f;=g3L0TDLcbydE>ONE147HoLnlNqdsrJ*A~!Ab0`^
zGbj&jB%f7QhH5546=!=7f=M<pL9I9A9r-CSkt@#1r3T}h<DXjPQvLX+a>c|)NugN{
zN=c&F*bdY>XfWILGtBnoQ>i~3@e!>tHnw0#%v{Ve{@JbwL5o#rB|*zpb>GVbKahth
zLcmF}LW!<L4STuUpupD%two+fMiO|g5`6o@2pAP%nxf(5@cv17^c-0*MXuE$Gv)VA
z4{F4@t^=e<H{n=G$ZrS-nZp?m$^$K?>EisAq;X)Hxy58C37%R%xTgr~^@GNK8odX_
z^gNB2rXuOh-GzE4cuK_?luj6^9m>CxKaIF?M)Khh-6$fFMl8Z>^;o6K6OpyF`UY+p
ze7bxpV#ccAZ^3lrd#b6NPYcd80T9#|oC@k*)QlzN^ivB!I$kj07!=>Pn@re6CM1yw
zdy?SWmXLP+Al*#Dxbakiquv@5`7|U@2e1)MbmFzf(@17hQ2!7o*BA<356qVyOx5h1
zCF<q<0}=hsB8|2pwX7hh-~LgPJg`y8ESx>g0A!#*zpk=|YYg)1kzbNz#E7Bnkx)0!
zFgs_;BhwEBN1G5_7c#PkWIOm&2KC#*3!!qJx5*pyaMYK*{bJ^hKQkP|1TztVysL*y
zD@JzhZCnV`?m7zr#{TFQ+_zOcaSl}IeKW|qeh-9wUkB>gTiEKOQ#(Cq7H=*X>NL0}
z2xueVE5ne92{V?iK%OK>Jwcu#hz1b((D)$L2eBmbTUZ3Nxi0e^Kx+n?s>qMNgd#9B
z@{)qUKHN&@TVnu=bYhOTMaegF<Xx3Ty6Y&ha8I&W4;G+UCm)(*atD|Y2U0@eK+2T!
z=H8e%TOJrcc1!=A7Cu{^2yN%H#|*s(*&fPl+yk=F>;z*!+?k0{h_R_R#`cU(!`-MT
z2J}tr3q#srf<+Hw6Om`es0QPdg6(`EE4_(bv^NXSk?<WKnHK`f!dpX){F0p(p2e7l
zQGh)jqh30b!uIT*f|EQmgYEGvlMHcQSmamlILsjSLb$^daWoUP8W$?Ww)SYK#=!P{
zUBmVz4g5jRzS2K^<j!*5f(TeGow=KRn658u&*NnEfE2;h0%fEKCq5`eQpDS&h(?@+
z2iv=x_7Cf$w<zzV=p4KuV*$<$H|gLKr~p5ccof;`a%rm6uM3r?j!mUE@MJSCguFHC
zfWxnc!9|OKAsyC5e*vYW!<y(%=zV4>+w%iuk}clGe&;!5YU;d0I#VuAlg@b9Ua~<t
zoI3VkT%)PdVUE;63lVu<I+N`;;@HxqGp4O~Y#B<?z8n7LQSyxTBsr!pY0@`94ZKGu
zOmyVNtfO(3bK*vd>LEp+LMQ-<i+&Fiz~BhQ|J_(3-8e>m2kuXtymY3OefR*}#`gT4
zbdBOT$)q-Ieb$J$L5h~KJ*DuW6ivqcoZ4-48r!oHJ8Pt<Mx2QU+rwf%N>vv@x&Zmg
zPI{W%Z9Y4e!tT~c13Db<0(iR-vC$a)0NJ3e=F_hi2`RypzPIlL>sRSm%lYc)N(2;9
zDcee9T_=zbk1xRzN}T8n5XP08IjNl7advE)yey%b$d{v=r1UvR<Z2RmB=UnZRH1dK
z&fmlg9LlAEDeUf(k<GNM=F8dLBkU{1tQC)$^q4^p13jkGBZVH*=%Ke(*4DW?z`KnJ
z_wY}Vj~7`ZFCt^YFY(Wk?++A`NlF?IW>D_5F%9hF`->^zGZ=L3WV(^Vh1EFvR5~&d
zjvxOWon`a|Or>ZC+vA4jbT(|yABibVden(HUs+WHK{;Nwrv%fe6~&a2<{AmGn(hEo
z`<{j7W4Y`rMai(HNN2^F(nL#-B&+MigkdC$40{*XRp|ha!*-EX(Zxuhctt?`fAv|U
zQsdw8Q4H0wuNurLh86d~H3(_)$wE}A=o=Jv*V8_sLGQtB^W`^od<Z?h6)uiR6WrDe
zS$O<&vdbWyN!~h77Q&-gp-Cz#7o22!1K?iidQCOX!i!|tIh>4iAT3%)3H8xIWb}^1
z-LSgnc-J)PqjNCQjM$;-a#;F9YLL5zU(IL#OFk)oF?PZ4`gm!gE5HJ|>#W={@yJ`<
zAL{x))b6b2+0%nbV)77baF#qMjq2IQQHmk6v@N9p{c^hW(FcjL-5dMX?b~&|rvvj5
zC{QLiOFEoHly{H6FTKl*e=wFQ4`!qSvQh!xJa!YH^O&~O2As74<a&iX$r!7v4VUvB
zk<<yLqmPhpvPPzlQ?m}vgpr)mjYeqQrZv6^XM5xU?WaxS<8)Yv%=+Fpaf2Anq8?x0
zy&Y1-S-36DKtICuaa^mAVxMKiX+<$GBv$Yt;u|^@Xz&#uC!et}1<G<LJ8bW9HD0Y?
z$VHD}@s)K1g@BqYDoEck3MJC4!VrBTPJ5%(q=f{dnvCt2&l~&EYB{LD7YzB8Y6@3V
z&$)x`yC02hYND}Ga`r;9I1S$7&Dt-<4uMk5@@k$pRr6dx2P6(BqJe#2=~zi!D|jzt
zS+mLk8DL+aD+#(fgm3`eiH3bUu5bcMkhzVk#GNbuG?c5RTLJEbbTNQW3mCEa5ga@A
zg`R%#9!>S79IA+1ejQE5+NOz2{9WN-p5y@e9OUyPe?LiwiX<K?mIoh%3frpMvMa}$
z6ud(u<f@oFFgZn(s_CPXa^R8rxVDd!^K8#S@h(yk33EGWZmD8l8GvG7yc!0sBeH~X
z#)EkvU>_eqw4@e5M^<`)LDn^*BKOt8|5FA&R4x`rAw#$mR~*tGzlJRU<8&)&W07Bn
z(OTk)#soFw39ZPRi<B58wqiNy*QPZ$z~K6V{lP+Ge-TaTAQibIfn2g$(fN3AAz0rU
zcWK)a@cy6AFXBx^1taXYH=zDN%_Ve1JGS!<I&-?U1qG-vdE7&!uC$#mXH<<Lrm$9Z
zUnOx(_yHHk$>>j_i$fyp689;#HyweYhK)D{N@R}Z;-|m(ccy-nGW8<++mm#Wg%tVq
z+BT+56Hd#C{P{Ebs%gl=wNV~MvYy6QviSF5$PJgK%N6=I`a+(D-x4Dk&<kHBHYi^`
z@pWiy_S${tv<!3NIZizNh(_A~<tIg`>3^XwnK&wjNhz|~N~@}yO3T(Xl~z^VU&UqG
zM7tOaa4WeC|6(LO!z{c4xR|yX4N`3a%$fZf#@60m)ZFY0&<_l@cE7#7!rAWgZ>w?!
zoc>NHxBC8K&g&Do7GKcoAf{`)0nzU9R0KVuyTjwO`hB9W+2>i~6`lSTI~Z|(rx^5m
zoero0f|4rEWe;%0b_Zv3w|b$W-w8HMbAIDipMOhZyLW3&W38t%$KvdCH#@7GEhRpO
z)4HX#u@+*S+iKm;tvNPdb7P6Mrg2i)MoX9T!ph=zcRKw`n~86U-AnrVI-Fk4&f%x?
zEzrbPQB_m{#ai7yFX^P>G<$pj=e3aHIK&`MzSRYm7jp`5cE6Jgh;ENZk*D}vMX0cM
zaK*uv7N?&ReLgPG4qH-~D`0Nbnb5G=*A8!rDNJU$)7vV#xVyP!i@Cy;TxNDxS^R^&
z%$hZ8tJf~JI3X3jggL5|#h3cCLiJ#|d$Zr}-_}@c4>;9h#ZHy8!zTJ0OMD&Muvh1|
zcXT9tcSEvmzM#L^nGnmwty~CAGdq252lutbTsFe&lJmU*eHxs8-{tzmU2!ch#6@Sp
zQw&q)^S9eY?jP2};@li;g<EV+zuWGy`ut*JVoM1qHO;v78TJiahCMUGu{a;^6sC1e
zyS>%9+U|9DoL5S{zWp`M7I(4FCqgF0e4yIC+2e!`jn@J|lU7^x6=GV8ZCCD9U5R%^
zzFl@6B(^H(72WO5tEzMjnBt%7oimbjwQn;SroM=vU6}^1a#HxCm~S&`nE$FUi@Vbu
z@cGH!?60zi;+>>|re?X&Wz4B^w%graM<ULzr*nc9IpX%VDkd`O{0dhynelYw;s}el
z?5=F}gXCSQXqt#&uBp}9>}V=;cR3wJVsX&zaWrA0!rtX>54INtn%!=di%Rg7`J;r3
z*X}`0bvmHt4cTOGab9d!=GBu|X%b(>Z;cNcpz6a*0e5qwvLtV17C9V#v=eR-6)@EY
zwxHT!>g;|moXXXBw|IS9z1%9#whk8#GqG=Rq69j*GP~QObcw`%o!@=&_9T8>{c2QL
z8&z0}iv$e<35jV@{uW#AL-#55`+a`uU!8E8gR|Pv>mUtVOpP}X?C3!1I~@!)syJVp
z`vGU7zFi_?EgDRf)9%;?TD5H@xI@08E44*uGx57Wh-TCR^ng+~sm(IAK2NaS$(8v0
z{$L0Gs2pFH1!2NkA6MaYxb1|eOt@y3-P;OI3}7NxMvWMAwP|w}r`H{ak&F(XH{c{5
z?I`PTHU0*Uq~?4<`qQ;SkM6D5S>*AP1!!OK^=8%nH6<0+gf-P=)syo?qffxrc&TNf
z1)+3twN8Hky@+JkoXtVFU>jHK_IZ>JMR$Ob1Q}E6b&x+MZH!+u99(9Oi30D!+DL6A
zfnVnKI494p91aPh`jWg7XyNy@y8~#V>S<rU_ELUZ5ws#DP-3FoUXV-(;CN2Z*(>e$
zA4}WCO73J{y&0)6HMnk!e~s7OjN8z~g+Y~oJj13JwZewJTe7;SYT0shURCZAF7vut
zUyUnAUG%FBz8a}w7V<t`!s1HZm?{Y(gsNKi7T=&ER}w;vLN7815lxl*Uc`pFZVkE}
z_c9sTd0lsBWDApzoUV-Q99pT9%ik1RDm}GDqR(;M6MqN}j-zQlJ%9(^^@KkIH$eQm
zhw?dr-`qdPFx<{CJVqf#J%$IP3*);OPhvcW@k@*mjAIxPjI$U9j$zU<cnkr<jA6xS
z#BgDV7~L3;VmyiQEXIo%{TRnEPGC%6=of+yMka=Uu^NLu*~@Z_LhkYvd8VS`5=&{B
zx~o3%rHXkT<6~YOw0mnq`UZL%Fw!s{%}@vJC17Mb{Y~Uqz-Uz2EVe9r*Qt@L|E&1g
z%s;+1Td(|BdTFmxTA}g{pn9`MRLd!@|7(hjIgOUm;+j=WwYHq>Ww~8>%Nv!=fAPzL
z%JjmQhov2k&Cod+L%_KBv#O-Jd=s4UGBy+c|3m-Rv}kU8&9^HxkN({FEF6>g-yiZ@
zwkEOWA9&ya$7Ymb<^O!l#4G;4KbsceuRFBftbF~#?84`bPk-M2+S{pXUiE(a7w5WT
zD*+iL=umQAcljyP)_1@6_N*V|GmqYN-#~?!)v@2uy{zcrvVVVh&r=`&jPU+HeCRjx
zEMtywm9gAdZ?qdF<9CfeH10C~#JJBmXne=`f$@~_ym5+<A>;^!LWA&c!V|&|g<ZmD
z!h~>6NXng>J0o{i?!4Svau?=i<YwjGle;|k8@aCBCvtb?4&|Dbmn?5z{_^r)FQ2!f
za7Eb)$BOT)*uCP{E8bdhe1#@&MqWl<W!}0xN8YP>{ds@SJC|oL6__k0n`wi|V|vK+
zu;~fYk4--}{l#?3bZh=y`K9?=@&oyg<Uf}GeEv)MNAi#5|3|?O3l<f63OftGU-(kt
zk;1<h#tQRR7Sl=L=Qo4^<ILWkeJop8_Q|ptIc+&ZIdA9uCFf<~kkGecWCg>a9sp<5
z_^~l!JYhU({M<NUJZoeGouC&CLaLA^qzelKPT+-1VTq6}2tppbU=}RGYN1@P3e`fr
V&?syY9D+;m2pxhbbX^p{{|7=cHTM7j

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.inf
new file mode 100644
index 0000000..2d56330
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.inf
@@ -0,0 +1,210 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for the SmmAccess module

+#    {1323C7F8-DAD5-4126-A54B-7A05FBF4151}

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmAccess

+  FILE_GUID                  = 326E9CC6-9839-4885-B2ED-275903B668E1

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|SmmAccess.efi

+  DXE_DEPEX|SmmAccess.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2630

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2638

+

+

+[Protocols.IA32]

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..3d7c0f4253e68d3b0346df94b62216469f1c36a9
GIT binary patch
literal 11776
zcmeHN3v?6bl^#C;0fsSwfJt031UWH*5=*lDkZmGAgL`Zu{KUp!ge6;YY{`*EU?|y`
zN^TGnoziX7rn|J=l<XdwbWhSYhlkU+GGf8RY#~V#(vmF%XfvuEN`N(XV$gnfMiO=*
zgza`8XWKdFAN`N}-}~MB-+TXmMpItT{K;4UpFH!=KhaRkFl90E6BwUiVi!)2naMCo
z=)OxHI*^E8Drs_Cs>g=w<A2tp5oVV#zJFYu*xd1DV3?gTC^-yMb;pxFpKuv(?&LxC
z-MP3CAkuZB85oXXEXy1wBX4Aw<QW(z-C-6c8D-q1XP6bsWHN?$GU#B)HV>hUyYvjx
zzszB7vp2~)G0;t-TRM&iRnQeo?D=c!|C$AAg(795uvMuL%9IJ0UqnmM7&vz0s-=F3
zrb;=7=)6V8N4!<X$IcFWM?g7o{!2H{SNS8{y>IjdW8G)tYA?U!ee?2*t0g%#wE`~z
zNDv^vS2Q=2ecc(KJ>pF8z6n~)xcrZUQ@n?LTjzzYVcH905RuThE&y`E9A6`n$D^hY
zA47Zz7rTcyPZG~k-{EzEYVf}#jEdi$!!WOt-*@{rFEUhHFx(~1oP@woqO<2yv=6L6
zO>9J;`%t1cuSm}@m9KFcObNLXEn{kiY1PyV17aR1>b%-qjCT)Xqyr?a*)+0<Mud{w
z-Fh1HW6VQikI>i@c`R%93XHA6;B3otH284+fmiS=eu$W@6Ei_I9$_1LWrXq2O-A@S
z`hc);-P(ZoJDL7LgN1aHwaSXlxi>n;E6)i$Ptq+_xV17N!&14qdSbI7(sUn63aqLT
zJ{D$BBtIXI+qOQYi)CuXpT@zw{XJjpVwk>Q;?EgavpMIWi`$>fGE8$$KcA+j`$PK|
zgxj3dzGsz1k<MWLH!<IG29Rq-FRJcCb1X^~K<ULTXx7yo(08$C#B$VAx<U-Iy92UW
z&kK;_gM)gt2DA;&lbJQcmZkWqv0Rvi`H2?FLq{f+q05@?Y&tTDbX|(YKQf8bv`ID6
zunRS>c0FpLorf5LkR%yiGGwiI8Ej<3{}6)*Rsft>Bq2?d#MVegv?O4@g}{V%z9KP6
z6fO=<>YYN~l?Cft_Q+bj0CshCjqu32KxK`fC4F{`*7{baiOCoeMo@DfUnrau)6ndt
zY}$RDzekusgxfw0g|3B!lRu5|m8OX-2nJ)-r+R(@fjf>|@SNf~nT|$(K_MW`nts^b
zmnNJLPot-CoyNZ=Aouq$3YbgW93^b!>V2i@;y&t-fDx*%qUG+7MHMV|p`r1w3v_K&
zCNliw{Xozaph&NTA5ZEU2o17`zr^mNe3Cmm#x;9KlDIPz3U&KCXY3eQ6P%8^G-nNQ
zP((QdAIAW(0hch-<|E8ceyZ_@q1O0H<3+N6ZwOAXC&sl>RzY}I>_M;G(7fd<jTK*<
z(2f`XF4}g#5%QIC;(O5!nvg2e+2sa<EYTWm3-9_$bz)t#Eip(JzfB!c`!u7K(uEr>
zT>nDh#Jb={v?_&P4F_WQyDi7C?mgY;Iq*KY&Qw^iu331y`6G58Rsv)-&BCQ|q`RY}
zzd=nR6%IH5VVy)f9EbzUBsEy}Md|j2={}O#5w|GS=_u9CFqLq40<ZPN>m*U7q9(Qy
zl@PZkP%R8?8)5*~{bT}z6vbn-^|AT`&k$7+Q9ZBFBSjS}c<m}*abgeA8bYoFpO3*}
zwld;MIY{KTcnZV9iE!il$OXc0*OCzT`4L%;FJ2jPDJoW3aw&fugBXj%QZ&HH+=r5V
z2}<!>G85F+g2ORl5l&<lV3878U0uMPw*oDu5*h#JdL$WSUn#*h)(gi)FTm9aGxUW0
zsB5mAm)FyX{l<ut4SOkpSWF<4@=7aX**BLGOU-T)7W#TPSG-2~_I1eXLe{v)P+2YZ
zT@Qt%jL~W*zVpBrSz1aKmNsISj2qbPmD$NzN4Q9NXL$2HHQ?}6l*1O{@D7@k=aDql
zt_ettqRJs+=1EHQNN#yt+yi2Xq%Nc-@F7Fd4TyEXm`oVI5RuUH9YBYSCuAAY%#fB~
zVxn-d4v>-w($KZAQa!um3Hk}3kjg%OtrNzs#ZGvaWe;jSx_EFN5a)rgP7@kT-WJjq
zu#Dp_%Xu0tkVi+sx31*TuH}sDv~Z*`;^q`Nej@9Fv;)anINfog>_(2$92NSSv#0a(
z^N62ws=hfpq0n_{O<;dM+G_%o;WU2AL0K{U9GOU=@5)s$u1hkFbY#H(k+_OZ3x*J{
zoCAmbE=0l1<drp=;acI7Y?tD1IH5Wr=eTpe`^m(Z?X!4=aIjBQY|oF0D^D!RaVfT*
zYZUsh|B@#UCBg{4;wzZxEgtbcId*t5ofu|Y+5n%ncLPrRqJq>A%EyG_1kGDlKQ;)(
zimM+B<s;`}y|e0t@+&3YV#V}>-s*%M-bB!EpXqvy7JhuVcnGKo8CW>zEmEd?%aqDW
zVXXoOoKL&`eCoCj84g~b3jbDG43OPZ08c(JlnLoO#%MA8!N;f5ZbEeYY-rg1mW#Et
zWr6fdART-gUA<)7;eejMC+G0S1j}|BtfaxcM<5dwW-v(_Nu`n1G_s3E5TcCm#?=4?
zFJCAw!|H?VZp#TGYXX@JB!++p<q6^piGY2&1z`fQV39=3@moZ>eo!x_$t;pA>$Aba
z8fDS@sWhWbcq7W>elQ^p1VZ9KV9J#G?ht>M(0BE{d;N=wlxf0<cdIgOFroV>>$wQ#
zIF_d2?3u3d!<?xoxhU(qL#*e_ROI#i5XjfFFCUIOLSw-Jbb70ldXy?Ko|dy!najH0
zLa)XTp&SX{c22(#R7FaIw?Vmddy$ewnTL{tJ|)U(_vkd%vu`q1a&!jkaY&UEex8q4
zuGlufAUM1@4b$XcDiSF+$0XrW+zI#v+xw*$wl}u#0|mR+KfQlZnX(8Tu);n1MfPdh
zJXp`Oq;;QLM70QD+#<(6=@zH)3*2H1KMOauJA?WM6hS%|x(8x|v+)ZV$yhfW3S3J8
z0d^+wNHEid;zYMU-dmhFIE8*eC+NpWxu6LKza0e^ETHr^5Fh+8K)DBEf<L6+(PgZM
zHfHx|8oz-3>K>_@z43ncXc<4%J=(^0lMe2I#K9-Sh^Dv)ID(@YhFz4H=g?r;lH8-&
zo9=)7@U*y-z9&wQW#TT9VR~buwgIX0SG2-3kIcB_M4095u#&vINWooj1rTw;Z=ixP
z7(%jt7n%q+juGC4`6Dau9&KTtJ_NI|p7#lB5X(s_wZ^Sp($BAT2TNE_F>L4#PGUW?
zXfF&-Wj%T5DRl>9_?ft|9v1z<spNuX%4EbV8?`jMPd_#|jolaH?u*CrCd1kd@QsGx
zY2=T%DrM5`JYkw^TCYh5*00gBmMN=(d2lG2C3Q=lbsI;5KfVf0C~$%^C{4@YW=6pY
z9b<!21yuwZuPj5>pVoT?@fln}B7Y$+f%SYV<Ao717Bz4vbN5YV_gxe(<4BArwla2K
zKfAYpHQ+XrZZqhXK)301n?|>(bW<2s)zn%TsME^$JWASrS|2couOMQ4uPR?4+aJm$
zm838Zq)_a%GWG1U2MZ|RQy65CNhlPJRap8&S~4Dnzxr!h%izn>+H|lUE0ELLu%6!%
zQ>u963O`?JRe?ZSUe;5HYS4fjMnUr#0kC2WD>|h&9mof@?B4uI&?Z0LfHkE`9Nl6K
z7JWo9l0}N0#FL!+kP?e+A+3Uo5kTRL0RR8|wMfKT%-(h`gzVUR9xFmVESU$U!BUV-
z79vXp-z2xY9r_4@?xUOM3vX^a3mi}R3PSD?Zc~bo{;Y@eN^p-(+B8o{_jRC!9aVyy
zbCK<Kg8M2<gRESUk|)isVP)`u7p$d#I(HNiy=|ZiT6<1)PIaHV1|{|I4azP9?hg`O
z+-KNTKlUBrqVUP!4ZADCsR^$nFu8L~=os1YcGuZ>|Jk_hRZ4a^5X(<Gj2yf~2)NHE
z*k_T7A+xx3T0Qp5>F#r<BWb%k^wfP@<GY8Q^Wi7}<C=x!NHf29^*8R5%+=F_sX`zn
z5hHoh@I8ZbF**;Y!g{QA0;VgZ>9LwnZH=!?*&&|0ihZt5=qKAO>7Ra;Hfz^RD9K5?
zQ9rd?<M1THE8B#=xQ`pJUZur?XRhvk3&)KkOK6W@jmM>V3_lBpni<%SaB#R9Crw2^
z%kWe4Ltsd(U_<yfFy+Ju0b2Q#h0_3*L)u}xPs#pj07EYL3p74Ak024yCW{QxYr#@V
z$jTFf-wMyY(`?dAf{{%I4+_^cer&ZIASiPVJEUwHPRIANy^mpIn-baBC^)+znV$-4
zDfMxm489S5L6nC4q0FvQa?W@VaafTU=m(ajJleHf%OT6Kqzof{?8|f{!LAM=9EKKQ
z!@dvay>zh9w{oj+@|`gZa8-0Fa34ybg8^)s!|+Wzu<Ynh_xSmTW2z={sG#Y>acnY%
z));Z%-z5(EC<n;rAYV!H50Z31B=LY)=6VtkHdnN!tr~2U=-wb9x1>~pl9NQqNSmT^
zV3E~fv^&a_tmi2IAVEaH+=n^$R<L{f01S**K*6OnEux&}Xci{0&-TGv5_5o&b-&CY
z>Kc%dduw3-$$e*~gT)ERNMD2_4&m=U<w^$QBm<!-5{^UZcdtlmnhY4iNF1-!=Sx0H
zZ22<6*BYm<hr+AzHYiu)&!;Laq$IcBsU@u?%%@xn!TJkfleR7e?=9nb)1;h!_A6_V
ze*kkSEz!2EN)xR)o!VUKFk^JN4-;JXR%IC@BZipV8rghG;u^67j+#;LkEMe{#O)&I
zDYiQajv>1ZKN%oW2emlO-)%XMN7EiZQki^^&H9)QvXCMiuW4mkV|;VeV$WrIU`tqn
zW20~c!8(lRn(zT0a(%@~Lb;-qo|fm}g`$`OTzKwS8(1Yh)qRTns988Uw4;A0q3eRL
z@jBiX46%DJ_We%bvtMf#-a*4Z{UVVlpSsZX!6RLxaqKty+}C5+XZ_dv@9%Tv^jrgv
zA?5nq^{y+Ri{~zYhuV+(JJ;!c@|Cy?2R;Ff+TSd^c>#UC{McsU1W52Q5zkL`0X$5M
z3YVa8yv9HH$N^%AeI)_pGT-6B4=bw$@OpD-kDedVoa!Ft=j@o$GXla3g)1L*f12nR
z!i?Vt|FU)sUee;xi1sDPdaV!CAK>U&XzUNLU9&JbG8{Ip4-P34oFW1mN6%lc|6U7B
z%de~~uBd7(E-7s+uBdpdf=jLBjl9dr<#8#F#n?s|X5mePizQH%?d^qj8}G2UF-()L
zVUykQctg8wle(e6Wo<Jx)U<6>S8ZtHi_9CXO=iR6Ev5Mybwg2cLG`1JHI?c#m9{f0
zqe1E<Qkks6++1ik5p_e2v8~O#xyEYVq^`6#H53}E8*WH!sBqbMYrDCq(>%Uc;@*(&
z;_Z)`ZOfYQKB&B$3xnhg4m)pevbS+IJI^^?9UXQDZ#Hozmzm@3=;S&a_71ayt0}AD
z429KPv)yGgVJE#Iwa8)JXm%7s=gp-yE1$ZUgRvYutTaLYKbJbPI8x)b7>aEsX`NCH
zP>6egQ!VE5^0>5#n960NmRUDAjE>C>1xBa2)Q(mul(E{J)}{ujS?+9-<VARC{tLW_
zQEI-)<S;v(fE8iIl-M2ZMxI-k$EBujv|CNwLyNgIxYPt2-U4rtd4sD3kSom&tFeug
zZHRP9m}OVy)}$EMaw*2t6w_iIey1@7uI6Se>rL`nO52Ss<`qVpsm*-zsN~|e#Z+x>
zwiej!Jn)c*JFAQv+RVV$@L2;u*-}|`lc<)0%A5NtZl)tdx3dw64Tr@oA$`V}WIOWt
z%0jLQvB#P0W~c4JXozsU#mpI+TylVxnsi)RXG&UnC!I0x6c1S?EFM)zyqzB8n>3-4
zJhMfD$H?`Y%*3RoR+p}<T1kOO#Bj5;&NTUogaK1#wzcpUE|+U;F*KPPORSw{Q$8;x
zsYY~^8#}G-uJ(LqlhrD7ktf_4Mq{&iJkHcxJDZd+i>w>1PP^oYczcYPb~V9koJ_6J
zVI%C-w#RMuO*Zb)w#^+Dj7R#5%xz}g%#|3eZ7zrTMt`ltI=(wfABIq6w{w;4NTMVw
z!VCEd&R!&a3s7b^nz&+z!|uQ%ux+EU4WVc-I*jd*hAyVs7EO{&0Z7AqE3I41k(inw
zV<pmRh1qD@jJdM2M7Tq~gq1R|xd};^dCbLg_GXYf?JftbKp1Q6ZLW4R(zV0k>fod8
z5*JihY3It#CaaO?qzcz$G1^+diNP4pl~ArmJzp{@S7f$X!($|)!)|k$iATG!qXVYK
zHyGGEIJ*l{<oQm@<Cu}(<{%BYXnTXSNid~_<%WnhRV7u?dUQ{T+Of&r-eKgeNCjMt
z+2OR>Z6u@8+~k4@Hgh#rdmDzSx3Hox!jeG_CwoM71ZZRx>`tlbY;v9(Z4IT$2z`mQ
z%^Y33G8n{#j7IVbfx=;Lw>rT>UhUh*D#e@u5yVsAMJm`E%nqBe4IvozYg&6Q7m52n
z7fOpI|4+Sj;+Mx{=ejfg)ix_7s`0@pOTd1EP8;I45_?PGiu?*y26h)&?$XaeeJifq
z6535aSK(VtmDIxi7fvf-P<I9;G6}9K=c2`T2;}C8fRSrM1i_;zK`w`H$n6%F)wG;R
zNz3Z|B4zW)O^w{Hrj}g!<6rVEc|M)KXujI?aQK#P;y9}6=mt9QUQP5fuu;%wM|5q)
zKNB95T_~@j977RN#!wU)_#_D>6(tL$3}rQn1*H?^8I)Zpdr)3QIfQZo<qXOY$_Pq4
z{_jXc;ZRah(oys%1{4d*R+Q~1&!Ox=*^hDv<vkR-(o||qx;7&-D?7iSu&B7?PWGv4
zgow4pW;Wg7zJ`6EIwQSPqpmQw8?82z*&*+7GJ+d-JnAy^O7=XSn$ABc_uo~Yw3cf0
zP1+ok=W<a}sRy69g~!O&9VkD-*pDz)QCU<ubMAc4?x**y+_z_L%INpFb$F9Gaew>Y
zKC|CAWH0M5ZD8;^l>TC!a6MXBRYotm4xl&k-5Y(+cmD2hTiGt<TAFwse|1H^c_aJL
z*BEkJxn;{1(*|q-a18h|@d|(QmWww2uVR*Mz^43{bDbeo4^PVK;*R8b7Q8f2@QvCX
zOy}jAd#f+L^x*y<KTy`Sg8y1(&ks&NxABwNs{SLTPyhaFg<}U-ed{mBME{R9Mf}ho
zr$cEms_Clvs{2%_s%%w(s#>*9^@QrnDz|F4>Yr8ps*|b@RDV!iQC(NXsb{F~Qm3dN
zQg^7otoEw^NxfJ7Gj%|HRQ;~{jQYI#_v#DkE9w#Tb@ePwvgQGeMw6{st|`<sYBp-V
zuQ{T5NAr>9x`s`EF8!7C*VF$s{om3rq+d^;sa>FbSX-+#YQLg=M*E`nRqYAwueHNk
zCSyUy0~xA}?HRs|{TZ)k3}n2M@qWff8N(S<G7~cAX5O25f96A(S(z&{*JqkDTQi@?
z+?n~q%%5bwmU%4m?aWh|mog`3C1fqiD#$9!YR&q3*57B<XK%><+w6C<&t%8w7U;5c
zjXJCD2f82Wj_3U@uVDH2mal$f(<8rpgyFD<VA<2smZw#v-KS1hr)t&O<_ud#cgEMS
z&rpt`&8<Vn>pFE?bzM4-ZoBRo-A>&%b<gQ`>Hb0Yf^HAEzM^|ow_o=&onLoI*RMOK
mJE8lf?mgZ6x-+`-I#D;IyQsUO8_|vFn4I_=1@hGY^z|Pt%UXW`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.inf
new file mode 100644
index 0000000..262dfd4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.inf
@@ -0,0 +1,129 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2011 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmControl

+  FILE_GUID                  = DD787473-07CE-4c63-82CE-930B33F39C09

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|SmmControl.efi

+  DXE_DEPEX|SmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2A00

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2A08

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..4bb6074e530b68b05103418ff7a5cc63d3cbbbef
GIT binary patch
literal 126
zcmV-^0D=Dkx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
gGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj%K0|NsC2pp3&(f|Me

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b9d8eaa0745668fa3fe26fb93792d84a300968fb
GIT binary patch
literal 26656
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
I{>bP50Gu++MgRZ+

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.inf
new file mode 100644
index 0000000..f1ea1ca
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.inf
@@ -0,0 +1,259 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitDxe

+  FILE_GUID                  = 93C81A74-B648-4f7f-925E-E4A0CDCC776D

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitDxe.efi

+  DXE_DEPEX|VlvInitDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5AB0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5AB8

+

+

+[Protocols.IA32]

+  gDxeVlvPlatformPolicyGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+

+  gIgdOpRegionProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gBmpImageGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.depex
new file mode 100644
index 0000000..00c2f8d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.depex
@@ -0,0 +1 @@
+²�}�"rC�,�2Ӧ�;���\�J���B�.
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..dc3944f7b2b19c0c364a26349c84e937b8ee5883
GIT binary patch
literal 9120
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
F{{i6Vgu4I$

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.inf
new file mode 100644
index 0000000..d95c598
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.inf
@@ -0,0 +1,116 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the VLV Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitPeim

+  FILE_GUID                  = 24169E35-2454-4940-92BC-82321A2C7562

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitPeiEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitPeim.efi

+  PEI_DEPEX|VlvInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2260

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gVlvPolicyPpiGuid

+

+  gVlvPeiInitPpiGuid

+

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  gVlvPolicyPpiGuid     AND gPchPeiInitPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..bd23d618afefc089f9d05106958bc03d862aa62e
GIT binary patch
literal 6080
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
G`TQS5A=ugg

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.inf
new file mode 100644
index 0000000..48f7908
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.inf
@@ -0,0 +1,123 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    CpuPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for CPU module

+#

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = CpuPeim

+  FILE_GUID                  = 01359d99-9446-456d-ada4-50a711c03adb

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimInitializeCpu

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|CpuPeim.efi

+  PEI_DEPEX|CpuPeim.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiMasterBootModePpiGuid

+

+

+  gEfiSecPlatformInformationPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.depex
new file mode 100644
index 0000000..4cbdd53
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.depex
@@ -0,0 +1 @@
+�������G����P���ƣ�^�H���3����HN2��G�,?��f���?n�FO�)�S=Y(mEK�GN��2v؆�}��J&�>����4/4t+p��1A�F������k��a�F{�Z�~�'\������I�K����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.efi
new file mode 100644
index 0000000000000000000000000000000000000000..aa1d1570a8f7f290a84c4863268a0eb68365f1f5
GIT binary patch
literal 6144
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
Ho8Er_(>dG+

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.inf
new file mode 100644
index 0000000..a3ea3da
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.inf
@@ -0,0 +1,182 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2013 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#  Module Name:

+#

+#  DigitalThermalSensor.inf

+#

+#  Abstract:

+#

+#  Component description file for the DigitalThermalSensor SMM driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = DigitalThermalSensor

+  FILE_GUID                  = 5122FA7B-17A3-4a8b-89AE-A93ADE92EADF

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallDigitalThermalSensor

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|DigitalThermalSensor.efi

+  SMM_DEPEX|DigitalThermalSensor.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1010

+

+

+[Protocols.IA32]

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiSmmIoTrapDispatch2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiMpServiceProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/DTSHookLib/Smm/DTSHookLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/PlatSmmIo/PlatSmmIo.inf

+#  Vlv2TbltDevicePkg/Library/CpuIA32Lib/CpuIA32Lib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/Ksc/Smm/SmmKscLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid                   AND gEfiSmmSwDispatch2ProtocolGuid             AND gEfiGlobalNvsAreaProtocolGuid              AND gEfiMpServiceProtocolGuid                  AND gEfiSmmSxDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.depex
new file mode 100644
index 0000000000000000000000000000000000000000..cce1aa8782d7783ac5038e755ab4a29300bbd39a
GIT binary patch
literal 108
zcmV-y0F(a$;%HVLfrQi%yzu~l$2^FE0vPx~WMX4PPPK4-x-s1(Qv!|%m+Rlp#!0?Q
z*#@Pu4u%5VYvBI}VWviVvRa&e#V1?>x`?Y=;^1^fwyn4l_J|zT0`~Bu6G|rVKJwt+
O#S%0xGy?+z0|N-t=rOkd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.efi
new file mode 100644
index 0000000000000000000000000000000000000000..031e5ddb43d697d0d436d86b6f26d42e4e6ff38e
GIT binary patch
literal 3872
zcmd6qeNa@_6~OO)!Lqz%k%AH<iUu_aYIXO$eQ)__QDN2bqpQI3RbjO8N!A*zELDjg
z%TUvOJV|WSIHpM}Jk6M>X~uNG+G@bHqP8PaZM9>A)Wl{jcFKt3$Bei==k0sW!;;C=
zzj|lxzH@))+>dkadH3C2SWcd~eDcgapS`1}fRF_`!;k@biGF;%E`g9Zz{aR*v!0N2
ztntxyIy|sGUD9n)JLHP#(<UVGzsT2vUMnF}bcB3D5i;iM&HiW2H2;bXe(3d;Sy?am
zivDR!Iw955URmZ}25`UPd%GqEs%;)2XQ!=O@xwJgh^`gaoCj;hr?!CIEN_YE&qx$E
zWl&;KMsidB$cXE4jnVa>h7!6PZWual=?4z<#R_MdHjRo53f%+yABp)HR8?i@kI_;x
zqa8Y%#RVCZa2~9oPszX`F#M>rDpV}qUMv<<;zF}G`~u7z9)yh*`@`?Y5VGxF<p!#$
z;E`u>cp~^*R_16IZ!QgqvvQ;_A-3WyPOyeiu;#(O2`RlGAI}Teh;$pI=6ryS#t{eg
zwaHNnnH<wYdhmjA1Ww&>JJ|~pIPQ6xaYS$R4)_&nA4PT?hP5;m^b589swx1gC~r8O
zx~+Y~@}`2jo~DA^P#<{2f=Awn$JlT>5j1lP#iiyFaWf?rJgDai3-gO=Ew0kUT9a!-
zvOf*Fxrgny@nRnpsl6)}^m|~ava+g*N_5wIa;=|-rOjSjn;)JViA22Bg==Q#hjT%!
zUcYW3sa~*Vy(c^kn?=i(lj?l1508Up!|C+OP#{-_ds=G=e+uZ<L)c{5*J=-7AF0N-
zBkEQ&l7`ciXx^s>DLC^vnLsl}Zl=gh+h<lYG({o=KY+winMGkAX&9xjk2NeoVMjGA
zQDLnbmZY%b8kVfElNvTsVW%`KRbgi|Y_!78s|?(l1T0v8K_%eX7{#hf!^SG?l7^)#
z?23j>P}nsM%TU;LmBFl&fd%WoP)Q&+2Y^mAH@^r^q5ex%0c46y!WuGNCbu<&mPx;c
za5A|I#I~y=x`iYde1I01<Pm>{G2+QD3$5y~IQ~><I%EOEwszZRS8Z*k!;lTxS2vmY
z=8r+D2m$iQXe*#4G7`_*+Kf#y4Q-`RE<%gYX7kL3hojcr=yM_S0`uD1XxXsD)|S(R
zy)%1kZIo;;Udg<edBOIpOX8`$_aA0Hu(e&Os^rB}6`{q2-jXIbK%(y*WawJWi$`s1
zw*~7Vhv7(qxffaZZRcv^xJ7ZcpR5Af=r*?ya9`{QY>CtH;-UlzQ`xr5gf9Uvx+z|)
zOyVU>XlNz!66P&P$-IP_2~sLAVeWx6nwK!+KpMkKm}el3E#}47M)DG-7&Oy;IlP3a
z)##p3#S8MA!3$}a_`EO`^ST9-jL+`c6fer!rg^45z1S7r`ZyBdCCoQI`#LJIkE&db
z%Itsh66W4g)Z$R8Hec?FDagCFj7BXkQ`JtAwU~^c9gA9AtEx4FHn4@$@e-zHqx%I2
z4d!19W~J!PkT3~F_lpvyp6H$;VZw>-=@O=y=%yu1u3O!3p!kYQeeN<}PL*$dxsQ#8
z)N!pe8pqi_d+C#K$cq=x2h(s5I!(ACc;n!OTsincN;F)#a@d6wIp)!L3n_A(<p}eg
zCJd#4g!2a>I%2=iQ^pGnMlftgA_ohI92iLsfb67@Ccju|=uxK${do>%7t+upAr1Wr
zreO%GDmzWN@Fc&8L>%p%rkNm{LGCmafRrdp^FT@ksiG_-TG0_-d1?09AL|>>dL8#(
z?hu%(@CofSU4~zCtO2IG2vUE*7^~Hgc3g<8391^Ov0O;OZi+%s6+`HDmD*a{J9<+k
z>~QR*#29tBqpDukC_^0^4*q61czg(ifuF4Nw?j0_z`q*;_u+e|XigYovrg3}4RIPy
znZBGH-BUCP=%gIIKPkuHPl(zJ47$~qIHWh69m?2xb=GK@;Z##K24iexs2MK-^&8;2
zpeHpk$KWy%2*HVGj(+o|!#HrF^Z@pmtHA_5eWzgr_@am4F?^Xjc2TUozIo2}Dc?;#
z@-F|kPu~h}x-x&G`=<vFUhTPQ&4gaP+MZv;bsJJF9fmoUBZiHZ-G)P!^@h(a#Rgma
zRKv`8ouMZFqW(bq`}!;KEA?^I41G5BNVl3gtNSIjN7qfQ&>5`RI>wr!TWK92d##tr
zAFRj8ptXg3J7GK7nXu}~RH;v-9gj%>s#1`{SqSB4z@aJyIfjdnw}C@d3UUYtl%2q#
zDg}A;D!mIhR1G)D@^0WzH5_hjP~HI!RVg@5tSs*VzUT4r;Gv2ey?%G=kz+~sf@A*j
z`KsPX?6MEsuOBUcZ_Do|fB#MMp1$i{XXc%p|JRrUM-$#q#~JPkIY-t)Edl}S|4W%O
zyJ$f=1bZngNWHh?|B*&WOu3!0`ZZiD-o65`S?ZmAA7pPH_E{Ib#A7!5vAw*e1|G7H
z=x<b?QCC;@%JP+{_=bZ2M}BQTVGr5Q*)Q3z+HczbX^(MGj`5Dkj$X$d$9>0RM;!ev
z`gwW+{W3j+{tjJ0FQLn5o?cDY(e?D3^lrL^{*Z2^PtfP-Zn}rQN#CI#(ncnpNoB?{
zQy2%6$IM}hm<pzvS;N#Z0Vc@oWZq>CFo&5o<|K2DxybY|eGKIs=^W>L$;mipI*Xl^
z&Xvv|IrlpEIlG)a&YR8w=b$r|9l<`&PGo5|kDbphVawP`_Eq+E_6_#u?0&YDJ;h#T
zd)a#|;Y^&BOX1SEiQH7q&3%t6=azA=a%;FcuAU2WZ*jZ1_qZ1BL+%83mh0mF%w6OD
m&V9xGi@VPaat2qtYm{reE7Qff=44&S`bSn@)}5^3!uTJb($V(-

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf
new file mode 100644
index 0000000..113299d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf
@@ -0,0 +1,213 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

+#

+#**/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = Dptf

+  FILE_GUID                  = 1D000AE9-756B-4937-B736-1F3D96A5A8F0

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = DptfDriverEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|Dptf.efi

+  DXE_DEPEX|Dptf.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xB40

+

+

+[Protocols.IA32]

+  # CONSUMED

+  gEfiAcpiSdtProtocolGuid

+

+  # CONSUMED

+  gEfiAcpiTableProtocolGuid

+

+  # CONSUMED

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gDxeVlvPlatformPolicyGuid

+

+  gEfiI2cBusProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/I2CLib/I2CLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/I2cStackLib/I2cDriverLib/I2cDriverLib.inf

+

+[Depex.IA32]

+#  (gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiAcpiTableProtocolGuid AND gDxeVlvPlatformPolicyGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  DRIVER_BINDING                =  gSampleDrvDriverBinding

+#  COMPONENT_NAME                =  gSampleDrvComponentName

+#  COMPONENT_NAME2               =  gSampleDrvComponentName2

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..5066c0763638a39ff33c71c6d9759850f116e542
GIT binary patch
literal 162
zcmV;T0A2qAx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
zGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj$Tzs&UD_Wehl)DWogP{EM`bSrSe41h5~henUJ
QxSZsy0|NsC0|NsC2(86PtN;K2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1fc80255dd734f38cef7e260fe2d8326b7b9b7c5
GIT binary patch
literal 9216
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
VaH;?d5p?)SiTrM)@cYv5e*o^9)=~ff

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.inf
new file mode 100644
index 0000000..f2b4db6
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.inf
@@ -0,0 +1,259 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = GraphicDxeInitSmm

+  FILE_GUID                  = 99EC6206-AA45-4CAE-B630-866755241C8A

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = GraphicDxeInitSmmEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|GraphicDxeInitSmm.efi

+  SMM_DEPEX|GraphicDxeInitSmm.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1E00

+

+

+[Protocols.IA32]

+  gDxeVlvPlatformPolicyGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+#  MdePkg/Library/SmmIoLib/SmmIoLib.inf

+

+[Depex.IA32]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.depex
new file mode 100644
index 0000000..9b2767a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.depex
@@ -0,0 +1 @@
+�k��a�F{�Z�~�'\������I�K����HN2��G�,?��f���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..075a559246893a37c7d8aeb76c8dfc5dc89a8944
GIT binary patch
literal 6144
zcmcIo4|o%0nx8b&Hk7nUY0z?4ed-!qkRFDlNhVEF(vk>b%T8!XC_)PgB^NmD1BsR%
zYU)s7m<@}r-pcN|nyYeER9IzcDT4h++6BY{{wcz`#a+GOQkDSSidZ`LzB4Hl(Y;;o
zxp|&szIng*d*9#t=X>98rgRbUgRfmbc;ydYNV^E4L?*vMKtGXm$9P!=@p2|XI7n&g
z@g#!Cg<o5i^qdPf{M~eAOMFNlf77HyP=62oJIS{Y1TTY`i3E}JoeV#WI6bhUHULYX
z2OH5Yv=#4TuUvxgO<%q&undS(61F?W_+XURK@dID*Q{9m$U_ONfSEv9cpq~)2%^~I
z<pNqYw_dB{%C(xX^A^D}vX-=5UaMq}F`vuZ&n8`ZHI~Xo!|QJquCm82y)w)>waTi>
z&Lh(0ozVu16<mo{$sPi3SmV940~lXlSk(z4afbBp5CsB83f>1exOl_Rx@3Mu8VsYA
zoeQ`D=1-ToVq4=Ba4J_!vFUj@NRLBo*@;>hw>m;9qEQE<$RH3so5@UXQ&LbP@rbmR
zB*=_vmduRc0>kgv^n4Uj<7gNPXt`P^_X+=GIzen`3#Jt@9UAM=HRof>RqYziNvRu=
zm0zkLh^k8NizS`RfTnDLM}O)-20?_F<ysBl4Lh|tH2i7tFNap`>7*k$uu7mwuwTn`
zsjbmK+DK>pOlO(1JlM-ULUNzT&qtlwEW&zKwJ`~DroQ05GFqo<cov)ysvCJKn5NoO
zEU->(cI?hj-PNaplT^*cBU}&DuWCO_)}M*12twYYYHp960;gxIn)|pz@=vWN9xJyV
zR&CslQY?z#xT1PXS@D8<1BxQ+;YZKKWN=e$+$7Fs1}`%0a@8K0L*5?C3|XEIjvoO;
zq4nA<SzuC;wdc{8_3&d=xNvu|^&{2O6@nndDj;q;rk(VY{8?}+>ZUoG<Zn*~djnc6
zAkK~Cg7Gw15AMk$z$bY$@J$hFNIEfvNtMrZ<#O=|#?>p(x{4}@_mT&gE{z!U0kt?I
z1Qi19WJ=>g*cCVY&Mg>yz|WQr(h-b{+eZ)%!hefj?w1L44(E!4P}VgZb`8^RH&2fU
zLZk-xAOxHOX4(3Oz}FZ?DY4vcQ40jr>q9<2;p>GQ;=UHPzJXZ@;*<?Ts!c;sbVNZM
z5o%e9TRfO*Xgm7{AWLc1+6Oc-*Y?G2uci0`Agr5&eM%5v|L~YpWViJKZ47}Ur%F%Y
zIgKbGv2H96Y(M7ntIQ!8tC_kV6r@U%hU4M__O)-xWN%vy`u8Cwb|OMyHIv4OlON9N
zxU++H^C!oRLIFEPQQSma$v%Su!)0TEb7bZ<oND<Yh^m?vm-q=czx5_T>_4HP@T$x5
z_kB1*F8@tj-Q*-tMC^+@UP~DRkj<IO93;mO#yUwYYLz@(k0#<ZmiI<yIlkqr`G3E+
z-25)s{*sFSqoY>dB<Q;wRdf^AHAgxBUPpC*%SW((B@bRps4>3VA9uc%D(3P{UScL=
zA`wz*-JGKGLt;cQ%uMR2v-V*ciQxjbB~nW>DO`4AX#YxHQP)I``dxn5a7uESm{w(O
zUIRRdO|E3^SRO_<sVq1X(o_S9eg<)1rSV~DD)Vj9K(!LLxJZSf<HLeo=6m7V1R{=e
z(JH7(V%cA>C5fP%Ywxrk3VaQfj-2o2PhA!S;KO3##*!lno9`zDIuFPVZR<!wTTITm
zhEaltyU3q_657xfNEe%5kB8q5&lO^qyS^T3(0@Sp^DBJVmjyas2#(gmVc#6YM=uo>
z3Bh53c7SxION$D`=2l+|xsyb!O=*GJ6zT+^3d!((sB0kl1t{8nwIq6L7r2G#$`<i+
z=}W-_9&Sd%P!M4kv<NU8b&bfYv7jy(=88yp)Y=iy_~qOoH_d<cl^{rq&{b}di*n<b
z4ms;i7W*VOQIvOJ3Lxf=Li18^6WaTgG+&$ob(=fNUx2&BbRZje{3Ous0$K&!Kf*gW
z#vLZLl2-w`XuB9R(Ydv^M^HnkR!s!6cnf$^e2zNQGX6>QYp3{ZO<oRM0fQf`=ifjs
ze6FZqC?YsX($DqyHT*wfuMnrAjx<>#iZ--$N(P43jVFRjzyXHiOq<-p7Ag0lSs?J|
zn4qGidleX(HA-#*zZ805!m`Wgbq#kkT0CABEzXqjPMAXrFTq{J2WCbcnW&2y$i_y*
zzXc)M2i=|6-vlDd76`POiyMTB3W&@+rbL@7Kvw4_+#>V(Wh^vPfzE})nvOf+^+c0x
z0A9v#!BA^Fd~gV}G#3`-U{n0rRWWHB9l!*%Y}SajO5(h}9<<`RlU19JK^6d87Pjyl
zT2KRwHq|D;N8m|;P;J-+Lp%ofoG1pmzQnN&$owB62@lA?6c1Vf9WDnagUdjmhK}F@
zzs8>eIqt=?1NU(>*$y-re*)I|H9*VboBslFLCynr!WrE+2Sy&>LPSZg7U@1pBvBFx
zkj!Da@*6Rd(sT)oeEqPad@T|SWDo3WLmQkmvO6Q_2H28mk^|tdQ6Vn#7>0nl$YMl=
zfm^;qFNm=iQ8&!q06|<Y&Z26V#hYhT`{-=Qj!_~4lf~`nmw5y+4g#(9cv>;~{88Bc
z32qHwxg%sp=MaHx!HCugGzFaKT>cf{1cipSN=PELlzNa#T$16O7o4u%d~*CjcC}XH
zmsJKALI$ZZgP?t5Mf8(Z-US|*)j|rvISHy39&G>uMpeD{bsUHpUd<|^j->QzwnonS
zlDmsZI5LYoY*IB_r>N#&i?1Q889qt1=NnZsFCXE4&%NJ%Mj4(hxAv@E4vMo;aW)(a
za|k*-3yy;#0s;?jlJ43K*q`8SAlt*UR}x!V)$CBvkPJB@I}X505+(qQxyL4jU1T*2
z0Fu}`C{tLqVM;1&*S9BE4BIntJmmWz$HX0IIF6N6$A1G}yk5|XlngIti^#-b(JkrQ
z++McHC4}nKL||^HE{zaN<^6_J)S}ElCLf0KlHhX*n-*oNn&&D!;1jQE&t>^Y!V~R}
zDY<`;e+D@D4PaqaWo+E$9^MJ%hwI}y#b$&3M1;m2!}1o;g=*7?z}=i;+A+>SLJ0yJ
zrghL^GLz<AfZ9)D_wgq$;>}_vs1u;!UFA2odU!j+g7>OmY73meLb3b(NeiK<53sKD
zoJ+yFzT#X;*7Z%;H4t_E`POdNB|P9-;{l~Vi}vtC7sPtOEl`K&W%)_|A~Zd$U|x_4
z87Fq0a!4fD*SGs{AVt;ZyH-geNQL|qTVO9NgAgk5=kZ~M6T79lvNO^L57wmM9g)*G
zC?<oqM*78(BA6celQ>ca<-25^`Zn?WK2TET;ZAzFD-EYq8~zP2HwdZ?TQDhu3OKcI
zU|<+_T^`LcAAS!QQ`^?1wg4d%TkcnfUAuj?pn&ETXl-e)5H9UwN<S316Mo%7znXP*
zb-Q}dEv)MZABWDztQY{<!_107$Yj@U_Hmx(KouK|ce{q2z$mCWS1;3*6H9J^n1re-
zM<dG&I6d42#1{g#zX9Je#P@CjpD&L1`T$=)Q+it9KK4%$@g3=Q^+LS|d>`_(h;I<_
z0k(I$U2#M%;sbCt7$dm8>);YEw&mD<;LXg(eTtqGcYZ*-8lnCgp+eC%oRhq{;QO5U
zIDmyRpFrDs9?+I(9YVMS%5sU;DYQ-jH~T5X?9@`-POS~RL%`U<Z-YJsYjfGf+Qs-L
zod-o}IkufV8aiAJJO$W*wifQ|VO?H{WQS8rUpGYB_vKIpOR)Y)xe-u8XI$DK1T*1v
zKQj>xtPdrfKsf(5nRWCAv;O$!Z<{rmCkdONv`97`gzg1}2=JExZW?|IL8pRC0gKCH
zBs`acel^&m#-x!xAb`o(X<^3zZwfq>v-qEX)&*M!xJIwf`?f@*FYYgS@wrng-Z<E)
zpL6@XRDFG9_D}O>YTo>1_33wh#;^b6{&n|mY-;NJ?2Ghiu&y81e){<n4}NX^)vRY<
znx66Si>(jV-L~_$AGEwPkDc6<duEmI@wq$H*_u0tO6y}QqXWqe&#c(H{jI;8&YZQo
zMK$4G=X1xsJDM7tDe9sI)eBiaB5P`vv%=Dpv%N(-&s{7!8|dGXz5C&*JzdH3c2rpS
zot}8wP`oi~?p^W1i~XM+oREJ{{{9i$-TaT!O1X6(Z|Z0~)AsvS{X*)p?f3rc+l&7F
ziGx30yhZVg*dIQK-gn^slPRyho$>U2@tu*_)w`YV<Yw(CX`c4(Pp>r3-aj}r_bI}l
zdpdr+r}@1jgZ)ESXTSKNy6FPl{!DBBo5@L!Xo{boUiz|S%e1{{^Z#~XFROuHEtD$!
z{eNDwXO)-aLfS6@C8OW=@S7zC-wVWN?Y}&X`mtW=VC#;4*Nel}$-^~kqz`@g%CZ=r
zA6&Z@`4KnTAkAy*>gtw1xDqG+%C!sRzp3A&e^=k3KcYXT@7I5!zoh?0f0tpgp&~z!
z-;n=O{%`XS<bRo;Y|JoDG~Q#JZFCzSFs?Gz7}p!?jhl@>H@<9q)wti-W$ZP6WISd3
z(s<rDXiPP!OcPC7(^Qk*RBWP63r&?KpXpK46Q-@E=S>mQcGFH%i)p{<ebaH%f156t
zMoe<^IJ3rloB2m(otZKhnoG^|%@3GYnb(=?%^S_nm|rsgr+KgWfccR519PAGjQN83
zig_HBL20R})IF4mnnlf_enKswR#G+8da9n<O#PB-qIOZO)O*xn>O<;0HAr2dk}c_$
zEX#b$vzBd^9hP@2`z*Z{-g3?|Xi*h73#tlM6l^G93z`ac7PJ=}D>zf|Uj<(kkk$#-
z9P4DO&3d18p0(2YkhR_#vA$<LX&tdDY#BC<?I*U7?K#`)ww<=!wpLq*t=sm#?X>NT
z?MqwC7PlqaRrYNAWP6@nZ!fUVvd^{C_J#IkcAx!W`=j<J?Hlb|?XTE>V{f&ew95*o
z6*7gd6uw>fULjw2u24R6;>>$ydT0K6CInFpIRdx2x-wmbu2T2UI!3ouw@ufmdsBB-
f7uRLXU}tQd@zxBp-mYJ)59%`v8iT>`{lWhqv@^d6

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf
new file mode 100644
index 0000000..500ea05
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf
@@ -0,0 +1,241 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#   IspDxe.inf

+#

+#  Abstract:

+#

+#

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = ISPDxe

+  FILE_GUID                  = 5A38B969-CD6A-4814-82E6-559F840BBC58

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = ISPDxeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|ISPDxe.efi

+  DXE_DEPEX|ISPDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x13F0

+

+

+[Protocols.IA32]

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.IA32]

+#  (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiGlobalNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.depex
new file mode 100644
index 0000000..4db74a3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.depex
@@ -0,0 +1 @@
+�n�*��4A�V8T��
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.efi
new file mode 100644
index 0000000000000000000000000000000000000000..721187cc03f1f27f44a7e7e7a8c4ffb190e39377
GIT binary patch
literal 93888
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%0A2L>vd2&9Oyo1{?#
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
PW9x<Vq4esk+N}Qz-Rz35

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.inf
new file mode 100644
index 0000000..ce85f09
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.inf
@@ -0,0 +1,196 @@
+#/*++

+# This file contains an 'Intel Peripheral Driver' and uniquely

+# identified as "Intel Mobile Silicon Support Module" and is

+# licensed for Intel Mobile CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor. This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#--*/

+#/*++

+#

+# Copyright (c)  2005 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    MemoryInit.inf

+#

+#  Abstract:

+#

+#    Component description file for MemoryInit module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = MemoryInit

+  FILE_GUID                  = D4EE25EA-0B48-43ae-A016-4D6E8B6C43B3

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimMemoryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|MemoryInit.efi

+  PEI_DEPEX|MemoryInit.depex

+

+[PatchPcd.IA32]

+  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|0x00|0x1693C

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|0x01|0x124D2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|0x01|0x124D4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|0x01|0x124D0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|0x01|0x124E0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0x00|0x1693E

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|0x01|0x124E4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|0x02|0x124E5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|0x03|0x124D3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0x00|0x1693D

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|0x0b|0x124D1

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|0x0b|0x124D7

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|0x0c|0x124E3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|0x06|0x124E2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|0x06|0x124D6

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|0x06|0x124D5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|0x20|0x124E1

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x124D8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+  gSeCUmaPpiGuid

+

+  gSeCfTPMPpiGuid

+

+  gVlvMmioPolicyPpiGuid

+

+  gPeiCapsulePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiGlobalVariableGuid

+

+  gEfiVlv2VariableGuid

+

+  gEfiMemoryConfigDataGuid

+

+

+  gEfiAcpiVariableGuid

+

+

+  gEfiPlatformInfoGuid

+

+  gEfiSetupVariableGuid

+

+  gEfiMemoryOverwriteControlDataGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/RamDebugLib/RamDebugLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+

+[Depex.IA32]

+#  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Fa$* /Oi /Od /DEFI_MEMORY_INIT /DSMM_SUPPORT  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D LPDDR2_SUPPORT=0 /D DDR3_SUPPORT=1 /D LPDDR3_SUPPORT=0 /D SEC_SUPPORT_FLAG /D FTPM_ENABLE /DDDR_DUAL_CHANNEL=1

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.depex
new file mode 100644
index 0000000..1b4e8e1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0��������G����P��>2�u�*O���Yj���ƣ�^�H���3������J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.efi
new file mode 100644
index 0000000000000000000000000000000000000000..fa71de44a19eef51c06869e976f52233d27a93ca
GIT binary patch
literal 2560
zcmeHIUr19?7(cTaSDd<sK_Wd&S|uUloL1mN%Fr%Ksa?Z{6BJ#JF2f4u9oQ&RZiC%U
zD|-wo8Y?i6=pn18n#|G%pTdNo2Ym=e_!5X1EN|a;?}F(|!``$H?)m=xzHh&C?z!JO
zddZIE?T#z|y-*SfX}9d#(rB5K)RtQ+2`PcFHJ`GB#>ZLUV}84MA&{>r-=53+*rsTq
zgq#NOfRm7eMHl@Y=vIQG3c!{uupptrz2?iEgvjopL1hqp2jU=L;P!(q5HBI~?r?DU
z>P3?)0nP?aC;)*8xaO^q|K4snfeU<<i$bD9P=f+V-EtDbMO#<uIv63sy{F`Auu@~N
z=o3=}vw|E4Ptql;I_t>d_3O*{-ra%NT<KF-;lhpivdy6Uv2>(1dk+w?^tCdz5wqk*
zX$o~n&tv>abo(>B;w9+Y<2k^%HsglQ0K2X(wQ&+ML}@W0YA~0F*_<XUA?BonxG^Vg
z;Fl{U5iV=+aY(v7IR%a$5lp_-o;3f~hi%nW8<hE^ByP>K?vv{fXKYcOwZ+n-H@TSO
zUe`JilrXO#kWE@)k+Hdtk9Ut%k;7zD*R_)vNg;Womn?u~HcH09l#zf>Zh%#bZ0M3=
z_N{vDwP@lR&<5&jl0j2`Y;sm->pbaxB&sVeYqo~KQTn;VrPXL*s}>cskWCBNwKEP+
zT3^ZZ^!D%?9=7tRz(Y13u<HQ_R1`1E2yHrE{vk4P?A+AdPyUcSw(#ct!rJosuhvJ4
z_Q@a8%>Cy<%h{#DL!D2io8}(6>F2K>Q`O)5=i8Dq(;n@o_Mn)bs{qgdJg=PaY@0<8
zE?Qb!y4!K~;S4n9q3iM$qu2?r9E?A+PXfOl{jfO<@lrRS9~c<{W$+k4-^jb7(dba%
z5+?SNz&YaoR3$w?Yv~bsg0|64I!qO+Qcj=I7j%(+p)1tF%Ggm>&lqcAZLEWxXMHTd
PWEN)$wwI1;x9#;eSH1a7

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.inf
new file mode 100644
index 0000000..b3e8c5d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.inf
@@ -0,0 +1,121 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchBiosWriteProtect.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchBiosWriteProtect driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchBiosWriteProtect

+  FILE_GUID                  = B8B8B609-0B6C-4b8c-A731-DE03A6C3F3DC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchBiosWriteProtect

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchBiosWriteProtect.efi

+  SMM_DEPEX|PchBiosWriteProtect.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x600

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gEfiSmmBase2ProtocolGuid            AND gEfiSmmIchnDispatchProtocolGuid     AND gEfiSmmSwDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmBase2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..16d8e503f18c112a080a7c865962ff3396eb53b2
GIT binary patch
literal 14752
zcmeI3Z)ja-9mk&}H}TG<recJ?C=!z^IB-Soy+Vh>rfvF1mqAAp*IDLT-E@>}Vpm-$
z)0`|+7n4CMQTC!pMoaMJ^hNe!$nFTp5Wym%B4Xp{i`E5NSiv}}$M5&|+~+*!dCu?H
zuJ5dQ;M{x8=lst1_j`WNpL6bg?tSP>=8ns&cYNiYUwCk@F{2$_fxxQi{P?Dh51FJB
z_%rs@0QR{pR@%pS8?d{<>*D>^j&M_O#vg3)ySLmMhTdUVwRRY@?UvTJZ?OI3lc!F?
z{A9actSjr6F9XIrwf%`>CyxQnHErD&+wXb1VPoFfe&WfAZ+z9p%9xMBfbaP-Y|QSf
z1P>qj;v-jXbQm+e-tk=D8-D_Ny)|Ua)xThG{EY{3=Ji*R=;J*z&)52Yu>*B~e0DQa
z|H=it%#PojdfTLFI&=1qxWJy79k2E+@4flv+tp3u>wLW^w%D8c)pc0SoV}RYT9u#u
zE&{r&dFkn`a>3B=H;u2&oRzD_Z@}4Q>sef`mb#q2*3oz7bBK2K`P!DprdKL`uci6Q
zd_<|sq29jbE-D_93cdfTD568pR-_u6o~_Q<svp_{FE1V0>Z@_+@_(<!2&>^6;_)xf
z&Wt2|X6moz-)VYec8Vi-`mJi?w==S9!S0_{PxgFm`n?aHxYlSrx{|y82UAsC-M8F2
zFulI{xqJJTlkcH<)7qKicx$v)8m-}#<DG|Bj(1_JVC%-#gROdaW&R7Wc?jFX*v7Fv
zitRCM$FLdG(b3u2)m5o<clY%0I9FD4`(_CTqY0d*r0=}LS9Cw&6N%2(6n-ApR0oZD
z7a6KzpM^TYYdYTn`*qm60G<5~*lWBufgtQZhBp>x|EUBA3ZE<Cqu{o_gNVTEOqB4o
z65cx{Zg*0Hh4C<-s|h$g9K->N<71d#geQVMM~kT(iBWmAgrhc^eGC55ONeJ6^!uWV
z=jDjIcw+A2iMfj>;&aqb)8ANipNBc>Yn=KTr@qFm{=3lcr4N_qwtkUY{UW#e1upqP
zLXAl%pXt9S@he>P6)yTk-p&vGN>SnuxsN~OKK_vV{C}D!B7L??$bJ4p?(-k;1*<<P
zPILM>p75OWyI|YBXzzJwZ{sQ2dmh@`IE(h42ljVI|4fl#GtL*6XWKs&Zu3^OxA`e>
z=7$4sAJ3pTeU2}cLto|4S2_C+PM86lN6G7}obhY+j9=r@KRNDB74>mJflGcAF8L|)
zdE5V~-QtUjf8O?Iq848=F8b0gA@}(Ycy1g~Cez9BB;bA=5qo>jlYrZJCdpV_oC}^O
z0k?4$?L80dFUV1ve*XqlyncU|y}y6J;>>S<cL|3fp9c!|_mprvO2_tm4(TuBpD5Zd
z!G0l;Zo7_MMCRjfDxCV7J$adZzoJ9GSA_3GM`_{6`+X{5JRzsPW=~#be?Zakeplgl
z3$Bj+hTQuta_hIqt>2J4zkO(5aT@uJx$~=W`qeo7#+-g10FU!Yeoo=^yRC$4I<(hx
zsDD&+(reh2;>O)-BK<Ak)EO?}nhx#Dbj*}7H<9Nq*swUiqlx$>+QS#eClZ~nDV%;a
z9db>FT+?BGtd2o{7{pN=Pmx=lko$Ow+{RPnWjbcanCr+JrW+~D5A_Y^jhHk3|CRY|
z%-w%~#LD<Qk5$m_yr0Irr-WBaIGQikVcs;q!WF;56~Dq2zrxG>){614y(Aua9<UX5
z{a^B+amJ%@#-nk@6LE=?`PVq}pmD`-mIuwg%rEm0*)tEV1pE@t4B!C8^>d8}_SU>;
zpX0P2VSWD&edLM7<#~kl)i~>`apqa$tnd5b%!6j{;<RBF<BYkBGv+SNn7cS{m%BJ~
z_H6g9Lx^AQn*Dou%C#5gD@<1j5NhIiMR<ZM1ZVc!z<I%D8lyO!t(f21`up>o^IlsY
zE$8hk!l^Gf)7b_d>+b=oO!8`YfI3oW_<TohcJbwUde09lA>UoX<s!v?q{MzNyiVGh
z1%CIHaKxwDA1LzkbU6i%8?EW$fzQuq0xs=!=1iW?vp>j*qr_R>=GpEF?;R4ILOb?K
z{xRi7?Rzn?&p!u6-Rdu4Kl}b?(Vk$t3rF)|dPq&okt~(7pDXtA`G{OToqE6aa}(qI
ztT=Xl<#Ur}&v<0MitJrHu|BzG@8XQ@$rbxvwjUbcoJ8s4Cztv@XivEKw~~vFy&~k&
z@N$LYz1=1H;Ho~krY~I4=YZ1U2UqpUHGScVJ|BoQeQ;HuT+<g`)aU&I({u2BGW#d*
z7b-`)s~qjCa_IjP`jC_2+J*WmhrY_8uX5=B3;K8~=&Kz1Du=$xA)NjL8Erdo@oUdl
zk~i98p+Y7YMC9z{zD(XO8Rxju^vT(h_HoJUkZbym$NH$Rs!y)zlWY2p$NC)CTKwdi
zKDnmvc&zX8kNUB=yp=sqW_hMz&OYN7XFBp+#Q0-<=2OOzZ2;$2?6vrBmH$|u`PB4X
zp5yo(kK=dwkM+qleV6B0-|<-A<sbf8Tpn!xr8`T49MAF`>$`DbWip*C|FOR0U(t7Y
zj`ban^_e%eZ>&!aj1tCAuC=e@vA)ZHtS|Xj^j)6g_#MybpU3{lU~yg*UMu0SkLO8e
zuX5PO^PaO;Iqc){PWv%(_PE@9B|79$J_8=t7xhy0$u)g)P2cfY-^E|CC)f;G{Ly#`
z;>@*Iz+-*-jph^4C)e~{oUy*+vA&Bx*WY~nVSfwajP+f+#QHA&SYP5-^j(~>zT-Ll
z_U^`dI1<5hv3({I=@-}w*U8sP_{Ms8`|}g$OOB|QkvbISa|zqsvEGQPnFO`*_1ahu
zx9z*o$?=j-N^)}f$?=5eTz}YD4{wi)isY^E`-?fu^T=nBb9^b>{$4}w1LOHTZ>)#s
z=O2#WQ%q0R5AE+|6fXH!xa7acH`c@3^MLK2oClJ8o-fGJ|Hpbb?|0hzHlHgNkOz$4
zb?ovRu<UuGS;93P>R%E2o#@Xk9Qpptb>K8Da;^i%obhNn<eCn-rsLyTMLb(z6~|NL
zRwv{>o+7vL6uGA3;?dT<siSe~#N5TBaZShNC$?ui+n^ukpZtLmeoo=k*L27=9db>F
zeuoq3hrxO~`Oy--s&MLSI^>!Td6~|}`h4)Y1LFuE1X0}Qk+p>FWeWUmU7v5UzW714
z{dKF)gT~o!<$Et?DEB>w@CtM^-c!PP|I+OFxjf?R&zfK1ieKT1U*U>h;bnen#dxwj
zNI$WOaL?Nt>-lzkN&mToelmc@Lvi^L&i;mWbDa6tIP;w8h;`IIsh{Jtm+xP(5VNuV
zkABNM#Q9-A*LbbS*)Dhc`hUlJ`ucyz-y*(;iM;*w|G`~0@gE)ze|Ipr+wzYN8~M`=
zmrq4{FY-TW+Y3{d|DD3V628BLA1HE;i?Zii`&_pZ{iFpeKTa)Q1rMJywdXhLYtKvM
z!wKR^!`~qSXNA89If(7gJM6Z9&)Dcdr~S{I{C}?Y^fNSGtQa%UG{*f`&iz+!`w9E!
zIbKg4dt5tx`t%cD`8qEwDTl%DuYbNiRzFfdTK`skuKr4Wss8i&YxQ5(|4_eHPwSs-
z+}GIEc%(7W_-5lfjTag}Zv3RN-1ueVa^q^F*1Wg5v$?N%y!lM?MDyFt)6MTTUqE!W
F{0GLHl~Vu!

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.inf
new file mode 100644
index 0000000..685a680
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.inf
@@ -0,0 +1,97 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchEarlyInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Early Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchEarlyInitPeim

+  FILE_GUID                  = D9F5B28C-9FF1-47D6-B503-3DC23BD345FF

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchEarlyInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PchEarlyInitPeim.efi

+  PEI_DEPEX|PchEarlyInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4A0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..43c341005a38f080bcfc36c46f223797c713b117
GIT binary patch
literal 126
zcmV-^0D=Dksbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0^Mui{|8~FMtiba
goPNb8Tmp^=m+Rlp#!0?Q*#@Pu4u%5*0|NsC2o*v%X8-^I

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..3a7ea1d04c1ff16c9ae1cd1f8c232075d83483f2
GIT binary patch
literal 61536
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
ZepGAf0CkwUNj;?xvH9$9Xitc?{Xag8t~CGv

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.inf
new file mode 100644
index 0000000..96cb49b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.inf
@@ -0,0 +1,272 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitDxe

+  FILE_GUID                  = DE23ACEE-CF55-4fb6-AA77-984AB53DE823

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchInitEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitDxe.efi

+  DXE_DEPEX|PchInitDxe.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xD1F0

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.depex
new file mode 100644
index 0000000..0e34453
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.depex
@@ -0,0 +1 @@
+sF4e��K���a
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d1907ecad347f4636adeae8dc01f091e90ca335e
GIT binary patch
literal 11776
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.inf
new file mode 100644
index 0000000..e3a25d7
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.inf
@@ -0,0 +1,136 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2016 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitPeim

+  FILE_GUID                  = FD236AE7-0791-48c4-B29E-29BDEEE1A838

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchInitPpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitPeim.efi

+  PEI_DEPEX|PchInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x27A0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## CONSUMES

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  ## CONSUMES

+  gPchPlatformPolicyPpiGuid

+

+  gEfiPeiStallPpiGuid

+

+  gPchPeiInitPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## HOB

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPchPlatformPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..89550b75de68aa683924135d77708ae9cd5b8634
GIT binary patch
literal 162
zcmV;T0A2qAsbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0=K`+^x*dWN1fCV
zsPRz2kpgrpaKa3LF+qn$kF~g*<g5bSYvBI}VWviVvRa&e#V1?>jtH0Q-_OQLzDwB#
QrLqo&0|NsC0|NsC2pfM&K>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d3f7d28ba40071611f5bc590efe0b6637f00f132
GIT binary patch
literal 18432
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.inf
new file mode 100644
index 0000000..4db596e
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.inf
@@ -0,0 +1,284 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitSmm

+  FILE_GUID                  = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = PchInitSmmEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitSmm.efi

+  SMM_DEPEX|PchInitSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3600

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..6f989cc9199142f9565a01ca77ca98fc2e1e5354
GIT binary patch
literal 108
zcmV-y0F(a$x4+Ev;P(ATozxJh@le5$0$V^JIhV-VM2PcDNs4dxHUa<yAJZ0n7DK;?
zU}cCqKq~^NWdTdpVIxkUwLZt3E-=*s_VA+<N+$3=^5EXZ5;QL~0(2{I!VG{hL5D_<
OwYZ$*tOElB0|N--m@hg2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4dd842abba362f452427248b677943489bb0bc85
GIT binary patch
literal 11264
zcmeHN4Rlo1wZ8M0jLE<ql0gQDb%cvXrFQ;8ekKW%kOb5~C;Utjegaw@<3N>$89*NN
zO`L>s=a^QjeYLIj$)moa*lPVrz#p8+U=px}5d1-XYEY{;4r%}mKgP`a_PrAfeZKX&
zy53svb*;`?ckVg+?6c3_`|Q2X-e+e1Qtog5ME~ZQ|9cZXl^j>C(p*5WpHp9!sT$95
z(*RCWhE^EyrpK-H<+eK29{XB_j#dF=j)jkD6PdsI<KeguR2*k5<G7r^deZ-lcunBu
zjRBzDY{3^XM6#y%Moa!!IIi)Un{Ei)fS#LVb>ktN%khl)xH+!pnx>oA-2Od<R}MUL
zgn!i-BsAR|SAHSnAHBbK4R~u=Krph+f`Kg-Ol=hxCksc`X$#M+Gl+-7?`dKK>QfIV
z(#5W}&6AQ}iHA@9W|&n7hLsKRKPsPETNIP^tXeRL2Y`(^wWoFg@zJ`Kagd}DtyeNZ
zPtx`912)(?bcaqdQ?sifzJwhQA2)c}NpV~qJfya5{uwdPgH{czDt07m8++Xxw_`B?
z;+8YXyB`A?R(YmzIRKudN848Uxo10#);10TQ9-C}s~i@$40{*`lO6+GGAs@1fWKoO
z5HWUspmI38uOKGrc0@72stR_j!duEl#AuBM=WM4%{Km#7@M^pp)IHrgYFB@E&h_28
zr_m~3>9BX}cB7@ouvqduT1k&3ywBLBy9sR-8%I9#tUJVW+qGz|Y=~$l>{JI$%76^p
zt%gVXMC}CWcNyT~&nx26WCO>AN{9j%n5eM9`BOY7^am;+kazE0K<U=~hL*w%uXHC!
z)r0rTq$2>dM(?;NTtcJV7Tped`;#f0`t8(hh=-4xw*L_=zJ0%D|Dq+{NJUS&!W-W%
z)v~X)RR|`T%h*Q-)>2r<jpt&LG2HJC=I*g9fU>?w2hXyUGTH?=e9O00e>u7q6vF){
z!#!%TrI0#%`tQ|p((ggWue0|xTu3WdL+hD^ON%<!t0TSPPgTKpLg(}wuDlRUA$lU*
zqZ%dp&{h>E)&B)=4-}fQAdANm#+anvwp=hL1A-YMTJW}r6+$lFInp$QX@!1xpFxr8
zK4oSe?Pl|PN$j!$$5g&O%D2B9JEqU<p|1ntU8S_j_8w@JjU(MA*J}B8&cnBtsqm%p
zB!4gu?MhEurAiY`I%8PWD(x_HTzH>lWy1<bbXj<xDPBWv7SV?W>{9JWGU<rc#~o4G
zT|PJyK3*_J0gINfUsS-t+Q5ysR&j^s_c=_0%|yYm;uR1E7$#*LBmL(`WDCP^BXR5Z
z_|sM_NqU^;p(Kf4Pav=a<2Eq2Au_L0wwrD9DgiVB!neCCR}UIwXgE60BTx6zEX-&f
z3QUplWQBMcobuXvY~eiVITZ|+MnVOuriIKsGoqI@w@t5*oyj(8Ta$r;2-gw~*rDsy
zgBdbHII8_GOJuQevesYsvTL={DkAOZOR>kQjYgR_v080R!6MbhbVZ74b$Ynd7(VB2
z>SfEE&vMwnSi<z81(J))g&fBx;$p$lT_Mb*!_yIEe{vt`Z;kV<Z=lOAA*+z>LGxy0
z&f=YJzU2ji&m9ckBnTYr$_&K|9(?6^u(Y-D{%nd~MwU)C2e6aIX406uahEa%Tfll&
zH3;GD{3@ADN>@^RK==%-0O2`Y8#{_ozoyOyG6kSe&{ZK6O#-@$ris<UY}a7G;O9MF
z>Ed(AB=*6tZCk*%Ef$<oIWX#}n~iRP<e)A)C{3p&AS;8^&7G82REE2?Bz<^|FjK|1
zCSg`99nppr%P3O04g@tU7Ka6E7uHCBI4dtAccm#rv7VU(af;Za6*uWczd^jwC|+lB
zM3cwjbxZ5m6xO6=oAk_YU^g0*H<}QCSRRF9M_(;F3pwrE_o2r=Zkwlf-KuSxx<TtI
zY?{dG^_t17%#dBCbxBPV0sOLwFAv8ouGgB5+M{rxW$`CeiPJb*YAD*vmblQLmNLcY
z9a={;p<$K7BtZ?9lovTDZGn!xFtZGKLef)^(91_l(qpY}s86|GjXbyrr{=~w#}G_&
zDyv)0UVfI&2k8fJ;+AM|LRC0sa-DAa*a2o_J+1CCu?n*>F-XVV2WKE?EgO&?#exXd
zT1OJ>Y}B*-gt2WwFMCzGQlVpHvs|Zx$BBxf?zXC)#3_XY0{0^J2J6Ju>%FzDZ}Bac
z!QNY=e9L6K*%p0kl5ZK0rX*q&U>RB=*=`)ep@Cs+4LiiTn~x=VjywIv)crBZaQY3$
zkS5kvEtqROK+loo^rv}~o?@J5I7%{hUqq8%#AMi-K~byUJw~sSVFxBfd5EXzSdtz$
ztS<2qOv;Enz+5XGfF;AujqFIh-`K63rEYEcck3!JZfv_&FYQcW)Du9QXBOAyV1hy1
zXc5;6a%*j_xOOH+4d|K0GAmv=VwqD~3fqK~8n#wWN5ZiJ(Z;H@VwqOdJEGzOZ9=yj
zo)JoIO6&f>CDLknPB3jZs)bNIylN)b?aqbT;N@`{IUe3DXgTcHxxhTilwg+bJ#N}<
zt1>lRo|>?RHws*vA%Da8CSBn?%ewU4IH5y{$!wk#(i=2~ywbtpWU?N%H_AnvsDcXv
z=o(s+K?;+G6o+xNKbQVQy6A1~3#JzN2v{aoo*V90Wp)ForzQH>CNr>&tlUzVCZ>(9
z{9JgGg$s;NHd)w0D?224QmgMc?-!Ie;UK7-O7Xps5`MTyGH6t+J~-UC3SuTbt490S
zO?XXspFoZy+wciVn#gf`LO2n9(_?&x6n;tXW3PU~&fMDNgBBfq{+k+_KY|6q;7$*<
ztyF1_vQx27&CTx<taT`;b-l5EvOJ{+<_MVU&^jHY(Jf$S6Yt8tO#HHOJHf1%*=Pz>
zShO2Ua$S`p8lPA>+_q$xm1#9yuFinTuVDvjJkpFWpgDOG43O1mSr@w~+^G?3bPdG4
z;zTuUqD*!#?I%0Pca-Z{R;=IPk$w(k)gT@or45jg_F94C*8=uWq)5D<$5?&6Os=L)
zE1W-AWv$7XDwb}IZv57ES|qg5$OW^d??6Vm-{m%{q#%0rak=l(JqE0R!;dYI9wRL3
z*Vl&&xZq@k1=iy?Ng^V-GSubHQ0*Yn=ktP5HHGfT<bunf5=UP+su9Z!vcZBbJ1@>2
z3+-)_fn`a%zC16Zkz_QngI(pBs;=@0D(NQ}BUyVPv&?3FeV2OzR+PmKA2*X3NDt!7
zdXD2X+zStZz#<&_MmFexa<E$q!qtcah!~cXf>gDBmAF}OB9VpNTiKCXZ<p?7h@q0U
zfR5kfm3E$@gT#VKIi8vt>3VPtRqj{=B*4sK9!af`QwoIh84d#Aw!@r^mQCkr4vtx{
z0Vw$6LYswbj&FGaO$r^2Yl#f12nFL8084#Y9Jf~mQ7CmWQXr(k;0;(8sS{1`o8*vJ
zi})t6*Sd5*z*JHv=J`#4&6GYq30)E9-Y$4nV*o90<61Yl(i$1w*eHWM3J9Fc3-5F8
zpzT(MH=@-TrnyfjC=h-$F*L`wlNu<PD+)+@D(dBFUK~f!z|z7zS}<_&H>?XXg?Y3#
zMlWDNo-dEm(io+ecXaj9(NGEP5*L^u#{<90o0Rt<=@GnMq)Zx4dSOCJgz!ESc)2W8
zLdxL+=42j8ha(l3q+ID<U}8bo5lRrFV%~K8s~vCELg~iLIE(}d`ifv3?8iv<V@%nP
zw!yn-3C0Aa62i%p?uZV^85fZDJc<PsdOlI#<yMdLiH#buPS;(o9Y;gJ5!F7i32_SE
z-lX+~B{c#Udz<~K?T3?M#|&+AHLjj@w_;f{Eo(-umBV@3<{;lx0;XRzy7I=Yh*bRO
z;pUY-8G^USZo+rC^&VJ*S&5x!Kuro;5SxroRJT=XeIj^Ji<=O;DAa}b87VT=q~en7
zqpTc0N-++ZjPx=xESbKeuRa+ZPFke~K#*q1kq$XgSc1E2<-{hXRBvdLkqeZCHf3;f
z<a9gUDp)!pFkZSBF-F1JwsZm%!FODzC-JMMxMCa3Y)V_zB+WZwxmMbYh?7W{7UQ^M
zM_IgKnVbvN)X0pm!xY#8*3iZbE^rmoUwxRlwG?zJhp+DRv}q@Jr033{5<#Ut?D6ZC
zO20!7auSOuI%CIle0!(8Pt(J<SKywY&Dk@ivWb0Y(427Wk5r8p{<&Dq-xs?!e9RK5
zu$dC3(79wFn{V%lm~5eQ#y|$3Dq%P%*<n$j3!)%BO0~AlbOG7-44T7^p*>VI@5YhC
z`H&|Ie8*WI(@x?$27NA^^8vGuRZN0u^uz|V&Bun3DFyo|6^r{=EODl0kvDQS@}|7^
za{0@*pN@S9Vd9!WEbdn?j2vlm4$5VLEJoyzbQ3hrcSP&!eTXO-yK!e38t8^iMvykK
zo+Y(>`-r`d#ABZcCt`or8&umCQ+;YPb>UIPK1y91>?NLM%3!z<6n(C)z|E10!tpIp
z{ukXNhe98v+uuTcYaF9XzWtQu3vl9B!z@jj6On_`E7;LdegfI7hn5yjVAatTBUpYU
z4)$`0Skb%dA0O##?&d=9-Iw&lTj<=S{MK6_7D|E@WEhl|LNO>rGEz0PtRqy(W3^NB
z4a)gUK24E5rxbH7HU}CxgI&na0+)|aF)})MH3s?i<wCBbZwX684nSG4_f6ZXg<LAv
zwsUTjKM2^PMY>57M^$7YwGr6II9X``@huef;g6=sn~}{zE?o*l+_D~{BRxVoE(fwN
zP~s8It1&X48fY;mQY|=98|6k`m#iuF1GA8rLfl^PopGM;fCWcS78m3r75PSk8|uk|
zmh+8~iVSqO;d>-bOBXE{ve*BFiZ4eWi06*Pn&YGDP6-z}3zbiS%4Lcxg6Yqa9VMp7
zlr2Qm$ErzV`%lL><cGmQ)`^4{5jkE{gAf~u*^{JKNR}1*NOys7pJ_g05Rca!-XpsO
zgZaa_VtmUV$V|(>)(gxFngPouQiK`2PJt4xrp%}wCDaTyk@f%=BPiM1oC9ne-F}fD
zoMaVN!y|MH9at^PY?5W(Biri*#NMIQgNV&MPi!nD_`c>Olx#DC$8qG!D1&W^9u=BT
zj&z5TP}XF!Pej*xGEW1k;DkNNw-2#Tw*`dpWI7+3YDGx#A_+Z4A@DAntblI5<z7-i
zg>5`i77KZqY#m=~VazPP{Y%YPxGvM2O(`*5QDUG}QPu14JoTt-mtz+NRdA_~jVGHy
z%z{Wodd!${DFvp?9-mlUq=yS;jnURU;6mYcq`SE*WgsMhEN_t_uY8YWAn(n>CV*@K
zLVPsbpYAJ6TmPg_OiTQ(rUs$XKD20w5{5NBP)H^PVw0C|hke(!75A`D$H)e;{FY^!
zvx?Hl*TxLO#Y~FXq|}Cf05^&@*=*t?FNfYww<9Sh%aA>jZ+|`IO_B1<$c-71>n<wR
z2QO~<Aea?8YYgZ@XDvZ}y9!KYC$x|wd!)PQ%k_KZyNOY$!wJe0a`@JDkh*0kI6m^D
zSFlwE^)~sfq)qb9oB56`%2wG~FlvOoaO?oFY(XnFkP$kTj-DBYiQtgWy3olX&Bmk*
zfkuF4q^lSK=;~tKhATp6bsMHZv(F{rfYVR$j|W<ee0z)?nEo>Vcy)`>bz(h=lS#_C
zZcbGk;p4@qM5_hUqR1IU4uNm4)O%Uaw#~x$T5N)Bfe29rK&cQBj}SLCC&s9Zy(YUS
z_FC|zyc5P*4yMO?Cwy~)BN{nMAw>yP^Yw7gyKwYIdf`)j!HXk6DLTsE`8k-E3)q1v
zAfl{<L+pa1i=~039F`WjO;4A<Tg((io!iz3*?h~dp-4bfe9L`GOU<_?)a3eavLz;L
zjTM&XARnDEEE_a(FZ5ZZzzV=(4`Oz9VWlOoyr43N-%3HBEyh|a5JF?CqZz(JlNtMM
z4cgce3*WKWsP?&VeHBQjS8i|;ppgorw&*3k<yY94VqAKVrxJ~kSke5Pre_eEvcZAy
z2n9pF<$CbevOkzbT;+nRakSyYQZB-OR%8YA<fm)loXE@4)2F{aANdwDX0o1Vt3c+(
zDhVeEel7tO8+q0AZt7)rf{;y1z%&`C0MZ8DhFFj%+^JuEG{X@^_|H~pj`#}ITP|bW
zxN<Q;t#mL+UYsI)2LOCWckGxkvxl99gpO#qGflz21Oqfd#?F<oF|YX}B-hEzGo)20
zODq^jgEvHa1~ho_?dQNzzCq4pGQ!6+w1Ir9K&r07hMGakDz}ISH`z@=rGekdphxH=
zn=OG^$5%%|z+@z~=L9lk?PH@!)foPIUq(l$2E#~XG4|&5z(vT`_*OYZmtnf1#ey{j
z{cQ@f!kAWs<pX-`Ve8KT99^{9sHd$Nim3znIH)by+nH>!5lM8uq4_;7q~T`Jm#cT3
zn)L#xoq^k1F7|Pnt9N}`^RcgBbwe@LH_lzlVJ^PL%#A`V=jV>ld9cL<tMFaMCoX|N
zBk`gY2L8?jGN%C_=~yuuASt>mPE(j?Rc88$p+YD|MpG`c?FPhH6z8|@B#Ck9$`+W*
zWAEvkkD-rUipKhlnZ1#C=HW~Xjzk^%MKAq0Q5<<Ap?*pgnXfO3tuIan1<bW3gBIi&
zxyfKoGH9;Foege}V6}D9&v3GY_gPxrioo}S6Trs|A}>~%5kdjN$sv&Mr}B-X{MNTH
zLykKm-3UWjI6^kiU0uaM2m|t+UqXHUA`@$Ck>ibtNEA|GV$I$CSf@rl_w4%@KA9tZ
z>vOWbqjZFirfqA;<|<r@F9yg5U1NRFl}iwVV?Ugy%&$S@ZJ6GLNSK2wxS3iQXKpYJ
z7y2J34AXI4&ISmA{&&r>0X@*nh$Tk&wgWC-K<8I6t2M_y)GI&O!2dD_2@8<SlZ5K%
z6E~Rs8sxE-23mLumIX-*xpK??K;BMwz(!?1J3^J*JT!5QMy(}spIUfkO4H7vFzSWU
zX`7LJx!@4{Q8B=HGO<TE;mwFJ00+uJvh*8C`qdZGJczPxl%`4i5d|r+LyK=v%i)5V
zY_53*=qJUw=GMNA6McmNC<kXB;*xy!(VOx<swt89Ekal@Mmm>xVNXajqS&#s>@>w*
zWhYU&P}!1z1ZE76Mt>5B43o;RSie5=rP!ZMc*AfNqs@$EcEhq18kzz5P<JG|DiKjx
zB`2pp&?yqg-~@k0y|h1(OwMgi(r<H3@1))n$wFmGs?5qc^dMOGbI@!qLh$vds97aN
zsrvfjwBR)2s3^XE3Wf#LN-v`>SAjzh?zSeu9Z^`KX346lfeB1qL`c#i+{OSl4P`fg
zlL%;$mf(U3)DtjKRPzDBiB3Om41st#(KwIzCaqs(#^g~ZmD_l^1Rm=JY=s_5{ZerQ
z*$dd*I^?--ZuIVUk+){ilR5VNlI{dK#vrv}cBQGTOsv$mRpQP-cI8FVwN!1-*N69+
zDL3ml47(~tS_r$MyfE_s460P$uyWaoI8(XQ!Kt|HbCqj@*{n?OD%Zn6$_%b@Ls0XC
zDsGR)w};B)-?YEgNDbv8qcP-$0m=82@-SqK<9B$e7kY$BD4ZC)jSmr$XC{==5XY|`
z57e=qbI+Z@@6$eZ<P$cy+kJ)$eb%-}>-&W7K&^I!b$u2axQGI-=F5Z%Cr>wuk2tpU
zAD{oX8t5m^^ls&O^SvM5c-Hl+IY0f^YsTO9;IlVwy5#X^4()zwfjDEQ<=E=RE!XWb
znoZM(<~Jv9={l}!z31jV|Ni?g{$s+Nr+4#NRTcO3)$ZEaT9IZfYvu3Ho~B*9_9ij8
zDs7;*?D0=dmJI~@e{6pGwkvz~=@#s&FO(kl4rUAu?#RCG^1;%R{qMY#<@}EGg^}W`
zq$@J!vpZhf*16+Y^xDD4w<o^3s^Te2_O9xVtDnE?T*urOJ|DX7PR?Q7I@s5<%xx+B
zdC!{_+fG$q8@c`Ttd1A|_<8@(S92eH#kli?Cw9*xH><9H?S|<K9(ty<`+;k$uLiDO
z+i3{d%6?S!lV^56@B#gy<bsbKJqI2qo;*CW@Z{quz*C54?1wHCkv?#}aH`%b#*X~o
zwdc-RTuoOcE5O3&f5hm&Z+c6rFMR(tnL9VWaUPHUKa8Wm0MIo}${)r&=!d9(<GOWt
z$ug3x%DAv;)25qlyoCn-@%j7K0BmCw>>y&j&-#${VQafJZryJ^Zq?bw*{0g2*{-l%
zV=J(g+p28UwmREN+pV^Zwk@__+WyV9%l3jTZaZchu${4~?I!zld!_w4`}gdP_IvFA
zV&83l!G6sCq227TIKJ&DaMU>(9D5vl9es{>9VZ=U9a^WsImJ26S>*IM>z%hdf9ib7
z`MmR>^SG1C%gLLQH!m-ccX!_1vwl76{aKoPQ~tN|ZTWNaCl?eI)D+|uep#q4G8N?%
z2}L`L-Y!ZO>0E;AO4s$Sg|3@i0auGF;`*iQx2|VgFS-u7K6IUOopI@l#}!{)yr6hZ
z@z&y9#m^K!R~#!IF8+2&SxIfl@{$`$ZYjCFBv7)cL@fDn$-O1_mpoYVWXba-FO~F_
zyixLQ$wwuFC8tZiD$$jWFP&IAwRC#v%u;7*Noh@KL+LH0TT34+eXVrn?1i&e&Hn!E
zpU-|^_LH-_XTLQ&IUA;7;kY$;xvckE@3($z{mfbcEk17BV|&;3fo-{cv;7tO+jhZm
zr9<URbJjU;aX#$)gEK2{5;QPBPndP(tg=~EvzlgYnDub}qxpQnl!E-?;$l^)xwNvh
ny0m0=`Ros8e>VGz+2?32E3!Ylbk<9)$UNk>-f95!zyJIvS4zf8

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.inf
new file mode 100644
index 0000000..08e3bd1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.inf
@@ -0,0 +1,245 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchPcieSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for PchPcieSmm driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPcieSmm

+  FILE_GUID                  = acaeaa7a-c039-4424-88da-f42212ea0e55

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchPcieSmm

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchPcieSmm.efi

+  SMM_DEPEX|PchPcieSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2600

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiSmmIchnDispatchExProtocolGuid AND gEfiPchInfoProtocolGuid AND gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..9e8ef235023b5a735ae32e612d4abd04318ad855
GIT binary patch
literal 2368
zcmeH|e{7RQ7{~AJ-rI__&={H+rDn#rhQy_TyHhbCrkR2mtD+1=5#4~zWkF`Pn&1?D
zX-D_AV>0<21@qcYWya_xQ_-N=6!(G{Lx>uUG3lHb7ne8@b*67upXcphM=~|p-(GUx
z``q(9ckew<-@bRp17yanXT~dMzHr4-LLy4ZMH^&^>#Etx9MbP1q*^Vy%7L+G&(FbJ
ze$lGpBs{AahqKw!_|fG12m5qp-A%|*aGWY7Wd3vkGqi=GwVR``_V8q0m@DQdw{k-2
zLmO(MHDGLo5@GJ<<S5652{|5Ws@>SQzIawVb3X*&D7P>nmF>4^YKDLVz?~T{0|+n4
z*f5S@=&JV7yI0<8{si-s{~1v2&y@FR7(HcaH0qx!<`|Sh|30rBtg~nr*c9TKZ_z_Q
z=t&pdIdcn!pHMuC;cS!&=wR@;w46m>2YL$KCzUjYnK2N4T0h~kXb+$deZzT+9s#I^
zUTM*zFl3>-{aZoxp`1PpJM{zG@KoIO81N``iyjBX(|))SBzaw*WBd#>>d-0BF^9eY
zJqODz`Zdrv&>$TF>NcFD4d={<)Trty`B~K_JT5&L2e-|?)q|LTojRGuvp2BSb(#GD
zb(!Zuk6Z?l4756Gp!&Bv+UZz!gIe?es86|6F#-<)8U89zs3_)6%k<?oHI^3)_r!n|
zcH=wW5%%eSsZBpNxCZGehzVMBH4Nk6GXj`RGH?#`{#2><>m?r<rOV<Y%HwCv$H4Yp
zg#r~it9u(^as?)lhfMQn^qE**J?I9twF%veHJGdAJifZ5w;qfs@9$tqJ5fWniN(@~
z;#$cd-2~nVEk8){S5a4{(bcikuE$rRJ`2ZM@sbT_(H}s^U~W+YgzvaTRUpjD2t<LB
z{>`9<^Qh!nyU>YWqWCf2Lu=a4to;~xs&&^Yw|`Z0^_}M1H(3Wl3%@keU9X@w;#(9e
z6bjDv2^|QYgO5t+*H%v1D<obl@r@G4$W;6`iQ^KtN}Q0mO=3ghq{KTU?v(fqcfqAk
zp7~9Q_e#7^;%yQqB;GCY9*K8Kyi4LviJz0WO=3ghXC>Yt@nMPkB<_{?Es1+B@YJvS
z@8kt{HFOm|U)cX|(^ufuo2w$_@bcr`;@mUZqnj`i|CCwy6r8_P`r#kD5bU9*;w6J$
z?s@26*W8TpSmWvoeyydYWy88h(D5G)@5>+yvFq6~7GYIv4O`C|*%NFFi?I~j!(L!7
zvu@VQ-eCjm6ZSbf&AwsZv0?TL`;FyTfl)q-&*Ag<<@`#n@dZ4@8DGqo@JfCgzl+!K
z2HwP<<Xd@yZ|6Jte*Plw;;->O{yrbzXZR=|<9~3Q`$RxoBPzrqaf1kph`2}GCmt3J
cqFJ<vm}nCnVwcz_4vJSruXtB{Ac{%-4G7G=*Z=?k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.inf
new file mode 100644
index 0000000..9bcc7fe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.inf
@@ -0,0 +1,109 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PchPolicyInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchPolicyInitDxe DXE driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPolicyInitDxe

+  FILE_GUID                  = D6AC4AC2-8BC2-4cdd-8776-280E1469DE02

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchPolicyInitDxeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchPolicyInitDxe.efi

+  DXE_DEPEX|PchPolicyInitDxe.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.efi
new file mode 100644
index 0000000000000000000000000000000000000000..606715b3059cb3749369e676c38e5f2bb523fc19
GIT binary patch
literal 3584
zcmeHJZ%k8H6u)hsiu&+%5hovDvRNnD7V>znZm_usN?o0>lp$2+08xBv8r+z)1`WoN
z+KlJTi<o80V$32s69fC8n*-EMTfmk$w+S=q+!mD}77Lc?0u?K7=e`!xIg=UpNweF&
zbMHClcg{WM-1GkAy@MWkv^}!re>XH45Xx0){^sa1Qa?LgH3Ol^Af_U!5-rT+N{R5w
zS{+@-PFcW2ZRl8e%$m4)=)odX3*bE|2qitV(Z2)JZ0l-l0MkzbLIR4(b;3FYAxm0C
zxvd-oxhfzaKqTjBaK(%)gu2o;tgHNBZ6sC%F)O(H3IMppF=qcSpP&j9nXyf$#kD#b
zuh1n(IZw-(<JDAVsG1hLoxK{*fcn<{z!cFd)y|ghiru%q2;&?bT~^w0Ix@`ZZZM9+
zxjI@r1!%A_-)aV6)5@|Aa7i>&kv|bi1|02gf_}uqu8~cX{8l3KmUiI98AX=UDbTb=
zAXX&Ccfx#}bRvFpp(S}12(?AxtZzXo#=C*;>muX~5P4@OLa31lEoTWy1!6^(q==E+
zK-A7owzNaR$P36mvMDFZ5fk8wi#rPOpmQ)uGW=<h41K0X#kVQ3xY*@p>TiM%rp0ib
z?<puUJKbugC2zpGuyl09nyB&A7lIrl{?QS_4Ddb0qkrHF^@V=duQmY`*92_u)BLhM
zuitT7ZPzia-UAwYvbBQmDH|Pi_1I^C<U|9MMd7Hgk^@tj7SHyEwGbQA(*D|ojma-u
ztS`CdxJ}z>VX4>9uM$LiUtrp}r#`PgpaIprkgY1&q{G7y_DIdEI9>}b8WVsBxGu}V
zAf~me?utW3=mdGx3AkIpJ|W1oc01eE!VuHyp6-+K)k3fgj%5|TT0*LlpI>C=WqecI
z684{jBiVNW{JGrrX>C&xats_p2>H-5!`lUoL}3<dC}rWxiW3sx0ON^N%8oNh*_0&_
z)}~158xDeDOoV1L7IPp(#klSY8kc1Y0=Q_TV^CNmX+$w35z(l{OEY{~S%+uBHimGl
zcgYZnuu5N<Elm)QRcj%AHPIItWu?(Hor83d*-Di{2Z;7CGy%9GO#r==0h6T)h-_k=
zoe7Y8jsJ(cvK$lF{q=>CYR(Pe;kthLye!xKh+ym8D{-jq8rj{Z8e^t1DeicL&}z{T
z!iEs@oZIQ4uouoG2yoa8dxI|7rn=)ZgaC$|TSCY-76}*bK&p@*dhsN)O(ZJ6%C;2<
z<N6plr8v;1OzTQ5@0JQug&@8onf1!~O4WL2msY^%grH<*716vPlu;^Rh2RkcO(@`>
z1?&-mQ4BRSPrf9}@#GyQEvHC$@g%xnS*cj5qgQ2C>f&r;B^~}Fa9~Gn!;9mf8bCKF
z>IUfJCe);lwi{?@{3&fv07oG0fZ8@w2^GTuXB(juS|ny0k18%E-|!j2kPBoThOBuv
zIV1(`bjO(*$=z?IWYbGgk@lY=I#xvR7Se}`k+U;J>FaylVok7424~Jr+U4Fv@$P^I
z8^UDAjsXY(Dce~hy#O$HRuJivGU~tlY5wV@XP?@Yfg0v7^5j8Ymq~7W!pDZ+vV3hk
z+FQA;?el`n!r|umZHJ!Ebr@|sUOBq=(xR%Q4_)or<@*l4Jow#0-22(av6<;zzGWX>
z-?1dzp8qNFF)`*O&3OiX3R!~6Q5C92c2tShp+Z<!fW!vt9Az$_FnYjD?w2aKeoKMt
zzHgZaz|k8^R^*azq!Lh0d^eHr!SnF&Q+VC__Z2(vx0+z0-%P84f0ytZA_DT_fj>%H
zQ(X;{vOkF<qStNSyt!h{dqnX#4yZ>h#9hxy>?iDAwwXP|wy?)oFZ(@vhCR<-XNTDk
zJI>Bd-<5tU{rB|VbdFojt>9L1<=lF%n%l~4<92epx&2%d_YK#@b#s@wt6YFf;^*?I
o{OkN;zK7qUZ`L2yAJ_Zz-TI6AKK+1R*3Vs#y5Mmv*OM0WUs8CWPyhe`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.inf
new file mode 100644
index 0000000..c6a3d2d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchReset.inf

+#

+#  Abstract:

+#

+#    Component description file for Reset module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchReset

+  FILE_GUID                  = F5883FC5-F8EE-4e44-B386-6021FB320C9B

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchReset

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchReset.efi

+  DXE_DEPEX|PchReset.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xA10

+

+

+[Protocols.IA32]

+  gEfiResetArchProtocolGuid

+

+  gEfiPchExtendedResetProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiCapsuleVendorGuid

+

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+#  Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..04bbf370588214096fd0bcca55cf18143921e44a
GIT binary patch
literal 13472
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.inf
new file mode 100644
index 0000000..cfc7783
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.inf
@@ -0,0 +1,251 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  Component description file for Pch Initialization driver

+#

+#  Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchS3SupportDxe

+  FILE_GUID                  = 14537da0-222a-4bbe-9a5c-212a3cbca9ef

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchS3SupportEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchS3SupportDxe.efi

+  DXE_DEPEX|PchS3SupportDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3120

+

+

+[Protocols.IA32]

+  # PROTOCOL ALWAYS_PRODUCED

+  gEfiPchS3SupportProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiFirmwareVolume2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFileProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFile2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleFileSystemProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiFileInfoGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesLib/DxeServicesLib.inf

+#  MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.depex
new file mode 100644
index 0000000..028e7ac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.depex
@@ -0,0 +1 @@
+5�c�2�I������l�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.efi
new file mode 100644
index 0000000000000000000000000000000000000000..599f60c27969a0f521cfb0d385a1c84308f570f5
GIT binary patch
literal 3136
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
O$enVR+%136gZ}}f2L;Xm

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.inf
new file mode 100644
index 0000000..9197f31
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusArpDisabled.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus module

+#    This version will NOT include ARP support.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusArpDisabled

+  FILE_GUID                  = D82D57AC-99F9-4c7a-B591-BBCF8A0E7FBE

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbusPeim

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusArpDisabled.efi

+  PEI_DEPEX|PchSmbusArpDisabled.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xAF0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  gEfiPeiSmbus2PpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiVLVTokenSpaceGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPeiSmbusPolicyPpiGuid    AND gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.depex
new file mode 100644
index 0000000..d57f41f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7f128e565566bf9fdc4cd00e5fa4e145b422f1b6
GIT binary patch
literal 4832
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.inf
new file mode 100644
index 0000000..ac9ef01
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.inf
@@ -0,0 +1,206 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusDxe

+  FILE_GUID                  = 99796403-CF03-42ec-A817-7183411D79E2

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbus

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusDxe.efi

+  DXE_DEPEX|PchSmbusDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1100

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmbusHcProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiSmbusArpMapGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.depex
new file mode 100644
index 0000000000000000000000000000000000000000..a04bdfab3e6c26c51e1b877ec289d7ea324cfbea
GIT binary patch
literal 72
zcmV-O0Jr}Fx4+Ev;P(ATozxJh@le5$0=s^2FB(eJ5t=vvkS9OEO#=4tqZ3Ld@ILb3
e-o+9$FEj#lD{#ULfH6UbMvt|)oaC$n0|N*&`XM<0

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.efi
new file mode 100644
index 0000000000000000000000000000000000000000..fc0ea42e5b0964b037455378364e8be6513946cc
GIT binary patch
literal 12288
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
Cw5>P*

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.inf
new file mode 100644
index 0000000..56171fe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.inf
@@ -0,0 +1,175 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmiDispatcher.inf

+#

+#  Abstract:

+#

+#    Component description file for the Pch SMI Dispatch Handlers module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmiDispatcher

+  FILE_GUID                  = 6BE18C9C-BF61-499e-88EC-5CD57430460C

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchSmmDispatcher

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmiDispatcher.efi

+  SMM_DEPEX|PchSmiDispatcher.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1C10

+

+

+[Protocols.IA32]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiSmmPowerButtonDispatch2ProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8ae071933bc183caf3f31cd4c5238e456b20ed54
GIT binary patch
literal 4384
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.inf
new file mode 100644
index 0000000..1ff50fd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.inf
@@ -0,0 +1,125 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiPeim

+  FILE_GUID                  = AA652CB9-2D52-4624-9FAE-D4E58B67CA46

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiPeim.efi

+  PEI_DEPEX|PchSpiPeim.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1070

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSpiPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.efi
new file mode 100644
index 0000000000000000000000000000000000000000..f35ad8df74009109a59cc1e41ec0a792eb1933f1
GIT binary patch
literal 10240
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
I|J7#oS6LdV&;S4c

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.inf
new file mode 100644
index 0000000..979fac0
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.inf
@@ -0,0 +1,252 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiRuntime.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI Runtime driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiRuntime

+  FILE_GUID                  = C194C6EA-B68C-4981-B64B-9BD271474B20

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiRuntime.efi

+  DXE_DEPEX|PchSpiRuntime.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2010

+

+

+[Protocols.IA32]

+  gEfiSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/DxeRuntimePciLibPciExpress/DxeRuntimePciLibPciExpress.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.depex
new file mode 100644
index 0000000..6fa9e99
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.depex
@@ -0,0 +1 @@
+�������G����P����J&�>����4/4t+p��1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..44e569fb2ac7f4ebb0f9cee92e9fa97df9c801fd
GIT binary patch
literal 9728
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
Oq(;O~2YUa%KK}`wA{7__

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.inf
new file mode 100644
index 0000000..ecc8cf3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.inf
@@ -0,0 +1,245 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI SMM driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiSmm

+  FILE_GUID                  = 27F4917B-A707-4aad-9676-26DF168CBF0D

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiSmm.efi

+  SMM_DEPEX|PchSpiSmm.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2000

+

+

+[Protocols.IA32]

+  gEfiSmmSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.depex
new file mode 100644
index 0000000..05a6cfe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.depex
@@ -0,0 +1 @@
+H�t���N��ľ���s+�N+1J��V{PD,
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e23277b217824ce7855f4899f29aa0a3f7727872
GIT binary patch
literal 1344
zcmb_bUr19?7(a8<t-Q7y%^Kmug!>Q}Bfa(@i&)Kzl`}TopO);8rDoDU_6KZgY%L#d
zhYJQi^w2}0d#RWHz%r1yYvQz`SWiL_5(KkJRE8L=)_1lk%j!k?!MW$2-}n2z^L^)>
zuk9q-H12QObMuZS4k4pN`dfenR90Il*@pCG2rU#X!|<<x;gJ;x4NPQgguc9>BYfpX
zV{uLYgZ~??fp|4wxDES~`F}y{?-}qzu)1Phq*hX2DKrT6X}i1pT|iF3AhnCd8K!mU
z5t`L{d(K@vUC5E-tN|;TOQA>Tu+5JB42_2v3R@VJ(7ZF(^wTG6TJ=$UD)L?$Uo2aW
zX5{>gFtjW8gHJ6_WN|Y?xm}5u1=#CFa8_U=L-Ef+4L<hedmy}f!kw_<r4BnDri3=i
z+>iPZmiG-n&i0&1gXbgDs*$&WYHX!!%9vLX`6O`#<oI>E0#bD2M5i+mS)#DSia!b#
zM$vB0nf6467<#+I5s<Uu;!Tisq#Gm%;dzL&b#e<rp~Wz;HoMTONJ_aQhNDkMVY{S3
z1uBHU^F~H37-UHlg!dJVMtK7r9;OjUeDX;+>rlqP&IyBR(9!q{<|ye5FIUFmI)lnr
zbv=b&q&r9)upWveW#Jj(Nwm6Fl{W>nI(-G~Zda!>GEF6bP$**-hSHg7Z$&<S0?v+3
zBJ#T7Plb&)RJ?)}6Ux{#8}^6Q*WLseTy+V;-tm*z59rV~R6>N~G9WUQ{Qez~?GrhC
zda*?LSd7e8^zsr`bde*6V-vV<JeS2>Rw+?nZpDoCSrevn?P`Yue{dE=w7`8X5q%Y`
ztL^<Yd8Hy}HbMy_;$;~tW~7)~C0>yApLn+t*Bw0D!i}Tas|O}D4?(d&RKD^$@pxVR
zvGLtwwn0<#UcwPTuZ28N8v(h7QdGgh17iy8WV9G8M$!XL;MV$s^!+Qi&itA=e*sMS
zKG;Vz#oi#7PBzqf3j~SfSzj~3V6gkt8Cb7@^zmpzuA!QJ#7?r)>>NARc&o8s{RL;=
B6m0+i

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf
new file mode 100644
index 0000000..03b67a9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf
@@ -0,0 +1,124 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   PchUsb.inf

+#

+# Abstract:

+#

+#   Component description file for PCH USB PEIM

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchUsb

+  FILE_GUID                  = 3B873142-4252-49eb-BF17-105CD6F3E808

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchUsb

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchUsb.efi

+  PEI_DEPEX|PchUsb.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x470

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiUsbControllerPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gEfiPeiMasterBootModePpiGuid   AND gPchUsbPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.depex
new file mode 100644
index 0000000000000000000000000000000000000000..631980e0f8ec20e495bafea5b893c3835d38bb13
GIT binary patch
literal 54
zcmV-60LlLXk?~=zU#<>Jx%%j7(ul@S0<z4yCPHu25xnOBfX6(DfdcmMqZ3Ld@ILb3
M-o+9$FEj%K2msm{`Tzg`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.efi
new file mode 100644
index 0000000000000000000000000000000000000000..80adced7c1c66dc59c3958a615ce31f35deebb47
GIT binary patch
literal 9792
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
NL)*(XynM~)zW^x}w+sLP

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.inf
new file mode 100644
index 0000000..7a975fa
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.inf
@@ -0,0 +1,248 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    PciHostBridge.inf

+#

+#  Abstract:

+#

+#    Component description file for PciHostBridge module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PciHostBridge

+  FILE_GUID                  = 9fd2360e-6b48-11d5-8e71-00902707b35e

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PciHostBridgeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PciHostBridge.efi

+  DXE_DEPEX|PciHostBridge.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2120

+

+

+[Protocols.IA32]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  gEfiMetronomeArchProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+

+[Depex.IA32]

+#  (gEfiCpuIo2ProtocolGuid  AND gEfiMetronomeArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.depex
new file mode 100644
index 0000000..95be042
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.depex
@@ -0,0 +1 @@
+=d��I��B������[�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..92cc991d43c41955a987418b243a732554eb6ec9
GIT binary patch
literal 1664
zcmb_cZ)jUp6u(Jcnn(6#-y5NQLOx{hkbxRfUrVV$h+TqHA~tg~%VcY-?bNYONt5A9
zgs|tt=Qa3AKlx!r{V@N){Im{5lD(32qk|TP2!h0_BO?{21&NaF`8!G4)zN(^9=PxP
z&N=s<fA_rm>|wTTy0Gn&+dnuGV=V4){l`I-Id|`HJiyLDUF=xiaxxacD!SW>02r-%
zDc{xJNBSN28auLlAN^M9G5GVtP(@tg{}%-_lW%6=>?~@ex~Nv-n<>E9tHFu!%s7-E
zV^QtrIvi|+B8)8r(~~D&f4Q9_<s5*O_-2YQHvB@8XEd4TG>IS3e1&L_J#=SU7-~#Q
z=CZNkD&2IheOC9F<wCC4zHKhAecI$vO&UFFEw(AySHxkF$2G~kirqMqT>AnWKR+~T
z!KHYUA|B+c#;*-yReB!r{wc&YIdOa}$vyT+oO>V!633+^2~lm2F|StGYtvKXwG*hH
zFV%My5@PL3;J1rerTb#S=~}Mk$h2_wO7<81$Dx#ZDy9F0U~=J9fD3(lO`(TJ`vf!E
zBajwY1Qx+1aH^DaGB9x;xUZvAfmP`I;Qnw*O`k_fvU$i)tP&Bw#kI7d)Gw?<`MnM3
z`>6xV5w*3k9C?tqufi~8`4)-@OSm|K=$dSlM01~LXCQgd0yUKyJ*pR9<i8zhwT~Jb
ze#V#XnnT5TtMs#*N0pFK6^sRz>6-J9vf};$14(_Jv+?=lI;4tw3Ex|fxRkrr&4x!^
z3LNzt6H4fJBd&xTCM3OB9#$L{Vv6X86i(cYyW*xv@rHPr=e+&x_*pM68&xM|;%Q}4
zSB)EYc*Vp%Bkm3DGNWGd`J}=yFk5)dpH{XgqO{_!xTyxg!C0q`hbdjeg;!i_+pCOB
zF<{6mhvubyr5o;{!D-JNnwzgH_8<cKjmv6HL{CzB(Huk)Motr0*2PO!_-f{FbY0k=
zs5P3lZOls+P3fv!h}|+{O&)7@J47D)vv9DnpGTS_T(lD*9&4mhbTyZ3bh<7bGa5n$
zGdb*ZEp=aX9t)SUt9sGmm#ta)Im6EE?%8<)!$P)qcA<sD?9SQ67Lu~A3l8hCqD5DC
zA6ow7tEt87^3&g(JoEMKy#2&^{ey?DEq=G}-QIWHk6Xd-Hy_&xVGOGY@3fxUdmv74
z$Pwt)-xqo}_h5)yvNm-Rrq(+Wpgo<prHZrkwguB|1^F7=khPhanTeNPfxJ$%_c{Hr
VKB>Q<f2f}xI5Y76z()gZ>%Yd}i!cBH

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.inf
new file mode 100644
index 0000000..2b58b58
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.inf
@@ -0,0 +1,119 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmAccess module

+#

+#  Revision History:

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmAccess

+  FILE_GUID                  = B4E0CDFC-30CD-4b29-A445-B0AA95A532E4

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmAccess.efi

+  PEI_DEPEX|PeiSmmAccess.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSmmAccessPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiMemoryDiscoveredPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..0e4ef35820d1b180c1d6139915747adb7faf9d0f
GIT binary patch
literal 960
zcmeZ`VjvrAAX_K-8UtJz7<?F+Q4Dy%z@*5{$j9&iD0%=Yqrk+#0KyDVr3yeM2&01o
zKzXn_paeI%B$O|JLmZp%0-$*^KnVjVjZF<XVtOU16(vB8hkzL5-Um<`NWp;u14D*h
zN@7VOP-G5B6zGNpP#Q$RfCB@=3B97!ocv^nTS0DC07`;rWZ=NS;MDD+!jZuNlnChN
z_#Y?{8F{#y7i8{279i2x>CnK>(D<<7KLf)K1`Y;>wC;;(@3Rzo15F~{Hy<<ra^E(e
zV0v$S;BZ5YiU>mq+YX@98x8{v<q2**P|DhH`u}VGZXXqq){`Z6&6bR%mR%ArX8-^H
zzx6<cF%FC1<|@A5wF&6luEXz)4@4gZn;Z?YhX-!Y%K)HJ$Uef#egF~$#&LrT&`Tmf
zoB?#?1t4Z>KbBbM>+IkAez`O2xss#kx_N;D0YK~n)C0oq&LKXaxH$wA1IL$2ZXQ?<
zP|g4(28|n7+R!V42!Qm0%z^M#s;a6|lG4E%Ap|HrsT!FWSsKkXT4cmyEMP2REMW|h
F0{{UZe!2hv

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.inf
new file mode 100644
index 0000000..fc85b5b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.inf
@@ -0,0 +1,95 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmControl

+  FILE_GUID                  = FF456B9C-0DC7-4682-9E92-0DE84B6E4067

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlPeiDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmControl.efi

+  PEI_DEPEX|PeiSmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x300

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.depex
new file mode 100644
index 0000000000000000000000000000000000000000..04a994f69f4355bf96f414fc4c084834ed2e90b8
GIT binary patch
literal 72
zcmV-O0Jr}FsZV5&Q0TEuoZ<^aX^xGg0^(>^9)X0^5xnsLfX6(DfdYuE&nL`A)DfCE
e0FWm?!A%18@S_t-Ch$J;;NHa&G%qv*0|N-S1Rr1k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c0fc28af4378b0b889e86ad45942f1000c2dbfe0
GIT binary patch
literal 8064
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.inf
new file mode 100644
index 0000000..8293690
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.inf
@@ -0,0 +1,216 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  1999 - 2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PlatformCpuPolicy.inf

+#

+#  Abstract:

+#

+#    Platform CPU driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PlatformCpuPolicy

+  FILE_GUID                  = cb933912-df8f-4305-b1f9-7b44fa11395c

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PlatformCpuPolicyEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PlatformCpuPolicy.efi

+  DXE_DEPEX|PlatformCpuPolicy.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiPlatformCpuProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiStatusCodeRuntimeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf

+

+[Depex.IA32]

+#  (gEfiFirmwareVolumeBlockProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiResetArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..e076777323483e39152c49173d8ba560c7091749
GIT binary patch
literal 36
scmZR2lo2M^*m6a1&qs!a<2D_QOy52%7WPv6VE5_4y`w@V`X<aA06L)%NdN!<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..40ccc6bf5a77af4a365c924dfe20d741503b8491
GIT binary patch
literal 9664
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
T?~ixHyW^jTZ;C$`x6S<*9S2K|

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf
new file mode 100644
index 0000000..9387335
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf
@@ -0,0 +1,200 @@
+#/** @file

+#

+#    Component description file a sinngle segment PCI Host Bridge driver.

+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#

+# Copyright (c)  1999 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PnpDxe

+  FILE_GUID                  = CE7CD764-a1d9-44e5-9857-14fefaae96dd

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePnpSetting

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PnpDxe.efi

+  DXE_DEPEX|PnpDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xA90

+

+

+[Protocols.IA32]

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiNormalSetupGuid

+

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gEfiVariableArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.depex
new file mode 100644
index 0000000..df1f82f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.depex
@@ -0,0 +1 @@
+�k��a�F{�Z�~�'\������I�K�����������G����P���ƣ�^�H���3����HN2��G�,?��f�����c�,E�9���&^��J&�>����4/4t+p��1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.efi
new file mode 100644
index 0000000000000000000000000000000000000000..433b3355e8cf20c6fae4566bb5397bbe07761497
GIT binary patch
literal 18432
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
Ke*Qn?z<&c2pw2}A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.inf
new file mode 100644
index 0000000..68cb2c9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.inf
@@ -0,0 +1,264 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#Module Name:

+#

+#  PowerManagement.inf

+#

+#Abstract:

+#

+#  Component description file for Power Management module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PowerManagement2

+  FILE_GUID                  = 41E89AB0-BD3D-44b6-A431-E4836EFBF2CB

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePowerManagement

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PowerManagement2.efi

+  SMM_DEPEX|PowerManagement2.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3A00

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gPpmPlatformPolicyProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gPowerManagementAcpiTableStorageGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/IstApplet/Smm/IstApplet.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/ValleyView/Smm/MchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/SouthCluster/Smm/IchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/Silvermont/Smm/SilvermontPpmLib.inf

+

+[Depex.IA32]

+#  (gEfiAcpiTableProtocolGuid        AND gEfiAcpiSdtProtocolGuid          AND gEfiSmmBase2ProtocolGuid         AND gEfiSmmSwDispatch2ProtocolGuid   AND gEfiGlobalNvsAreaProtocolGuid    AND gPpmPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.bin b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.bin
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.com b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.com
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b6a61862966501978a99661518e38ad954307d92
GIT binary patch
literal 3264
zcmbVOdu&tJ9X_@%i4&aKTf=Z5w1yZItr<=2xFU824vEuDax#ZJObAKJBgVO<l-bt{
zL{NEhJYkMpWt}Efs9n=hwsmY$#aNO7gBu(<2|`iA=sJ*Ap{?tT%(O7J5UQ+q-?`UG
zQ`Y^HV_lzfzTfNo9_LZFi!8gnzii3n3wm6HxK)}jD7Zt^>sP9tASNv#VYNa!j^2dN
znXAlA=-Bso6Lkt7!&g2|%*+k{2mdnI34H<x15j4@Wem&2HVa)xnBLX!k@>}ZW&P4-
zBE-LW{~lovz<E{1_a!k{;B^u*zB$l!@RfbaTG^VzAhLdGa}u(>#Y+XVfgUsKXp=cV
zUi~$x{IeieJ{Q!*rXzpWjNDZ}IFrtfCF93dOaF;YKX`YZR-1L59f|8o^FAj+SWDez
zUF;gTA>(~;7L32x*_i+<qi{U&4<k?1Q{iX%@(<we^d&@)I=A@43^|X#Sl%e0*eVhK
zr^nea?|m6&MCo-_jge8KRZKL~dy$XlBKO>J=x?O$+7=qpd3i&N6wJTk0kh{Fro-DJ
z^}nGAMMeFIdl<?%V`H>80VqPyQ>@7NUxfIgTrrb74>m9ut&#`+7<i}G>ybRh$Y_2H
z)2O(pQ;|KoQqde4HKco#;qdpvZ0QDHIn;#qhL4$xRH3$$Zu15oG_DChQiYzpVA2!f
zb6gd&w&OqaO{?@m_)!+{4PU_5$v78U_1g`_jDJMXMn<&gLmE)n`l3>3#W40yxU-{;
z{<VEESi9q#S&kI~C53c|!4i)duryYiP+eF4h!Uh9rs`Lqn~Bbba<Ak-?cI+M4{u9K
z^O+=#Wi?hdRmNZCU^qWkV`5?Q;LkLc{RyPluz0LS`$U#9E*-1Um9p_zjp0r7V>S67
z$(`{}*@Pr(3JLU>5!@{htY*<J;hj9;35z!%4})ZY=Kxh;wm&jjy^%m#W&>d4)r@qq
z+FXMSRj34QMV7!-a3L;Pvrf$uufLyVIPTK<4=+}V)SoFXIv16WejU+}lZqJ0IhCWs
zss%ZW&I-AijC)F3>DcE{Ze&#$cWJ%!xb`B`&8u6ao=lV*7i-EG6^}ek>$E(HS8|yY
zuq8Dx7FKJKQDeqHk77PksxTfot|c%iWR@4wN?3zcl#@(d+LLuUdu;)A8G?C9qN1++
zBvCVJl8|8>6XABYAvx3?V+&--Sc1>m>A*HxD{f>(v%sNkjPINWSFj0@G*qaAZgxCG
zZwRF=Uj5*sIK7FL>IY~11d8L_t0Q-EG~=l}sA$EkGudaniRw{xqz(E(Q9n4LNhJGf
z8APmNTSB(nmcUA|bp^B5USAOWM#jL#jKOt~f-GMW=W1UPOXBq=82BZu!Ql=?Lr0<k
z%(_Op+pKGD@!G2j^buB_IFQUyN#Az^V{A5)S|1t1F!dg!X)5+?^zWhEVY!xn16V&O
zm<#oTO=eSE7oa0AO_acy6;q&S64>F!I2Q<CGET9z$J}N^D0>(+8%`gGNCB((LU@3x
zuQF>!9^R&tYi|@yrF>v+MWPM*A-B0O=|VQLW3^nG!;rvH1CxVH1)bDfg`zcE9^RG(
zpU1|FiZr`*LDXrKMGGP7G$MHE6>{)8JKEb?6F3VS8k^~@-$}5Cll)Wq!E6<;)(-{`
z==)^fh9Y6MZsgD^`fwB*W-(L=8vW3eZ~Cs&$2{^y=Cpyo`5Yez+W2-*#I%|wd9H&=
z>4(OBj$}YhC-p;-6HvvgcSYuo^yK&)_k+*U$@DXqS<Ql{N5^Y+;vfnZ(DC%D%QG1i
zjMKp^dM&NCPDCZas2|G4`4-HUkEnFD&oLh0YGH+KU7zDxusB@=6X1MO;SBu2=a>m)
zeJ?4&M}_I1L9KP7(ihXFHNF`9QeuHip@ELfI(ZHmVx^p}_0cff*VYN&bjlaG^E6zG
zx#oRQQOK$U6#5kPyjDM?1`^7}{sAMDUj2McE-e77$c|A-zzw-d#71RTo&OF7sl!m-
z+R8}zi==%26eBe&B*(RohK?`}Zbw6^e@>DjqdImZH^g1@%I4p}bCRb7a8x|XA-@{x
znr8<2l3l6aOOk}u=JF+;)DIyHV>o5*dvORgqsa3SraJhri6u5VAv_hf6QO`Ue-UD&
z=mAw1B^)!tn#ffR2%#AzD(fkc;gz^Is0yC{BmD`j<YL)NYO5`Q<tt6v-OJxf9sc%(
z+o7|i8z=LBaLAjp?d2O^d99obOmqhv<lMjA!~QewAKyE-b(=?h>b<vKzxdE^bDk?X
zeQ{gS?dG%34H&D=uc<pD>T)(c_4apm9RABYx58cZr&n)1)jYa&;wJW_iX-Fz?hDlZ
zVynge+=uU9i00BZhxv=R+!q>~lO=P8cO7Ei0SD_nq>9uM6KNz}BtW{!9&!+~O45YS
z1llX)5Z-eE^at@{JSOrjVBJ6!?rzcxDK=xgCQ>cy`L4{n9Q_L`|KC0j5UZ){@P~bm
zw->6K-0V%*4#L8Fk-dX2;Qo{6=9l5I@-AeBzwlO^L5!}mc|dtQvX_^E&G!a_=ww^W
zu0l8W_V(`Idw>x#O+bIb(r@{Z<&@<omY-REW%;#b*mBu2YPoNDXwh4rv6fo*Sr1y*
zm2D_HQr1`2U-m}X+hsp3`>JiNZM|)a&1q}4_1Ge|0oxhdpzVt7LtA~hx4gSNQ2ti=
cfc;(j&+WtZOLoydWxr{^WB=H`V3+m(1$J_vK>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.inf
new file mode 100644
index 0000000..c379a00
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.inf
@@ -0,0 +1,195 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   SataController.inf

+#

+# Abstract:

+#

+#   Component description file for PCH SATA controller Driver module.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SataController

+  FILE_GUID                  = BB65942B-521F-4ec3-BAF9-A92540CF60D2

+  MODULE_TYPE                = UEFI_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializeSataControllerDriver

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|SataController.efi

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+  gEfiIdeControllerInitProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gSataControllerDriverGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+

+[Depex.IA32]

+#  (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.depex
new file mode 100644
index 0000000..3ec1c91
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.depex
@@ -0,0 +1 @@
+�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8e9fc865872c0c751c0d6c26aaf854a20d6ef3b9
GIT binary patch
literal 1856
zcmbVMZA@EL7(TbXv_M;Kv!G!KN;Q~hVsN3Ri7_S>MM*5Aq*8{pg*k?V=`iHhITGR}
zmnPanlf~?(CSXj=5`XL$+D>P0E&@s%PU6;RqBt@<q~q&{tQJOnP78_*{J}}ieb4iL
zo#%b;$=mn}IrO@8=*Ytddg}@C2*&>;m?MUVEJ7J^i-gQ=TO0;L`0g+j6b=Z!_b#`&
z;K%iry~b^9KR~~q+JSr(FpS{d%KaP;sjHDsy(1&`VbsX$;<a+QdpQW{uIW4>pMdf+
zY+ieETSEM^+=NWk^qqR6_hf-9=j?!$%iYUONL>rP?WbXDw}M=LYRY*ls43QHZSEmG
zq?=#h&v_l{cx5Q4Cx{@Bcm*jV>`yRD5Q72G4!DqqMkAmD@J1erBH%H=DM0oKK9OYj
zfzc<A{je41A6jCW8vK@!V)DL?V`owywL)Gb0wMB|(Z_LC=Op<LHMyx~3~&GD^S361
z5o1GKAvVJ9#~VqYn!9m3hvovb-;I}ZnBf#mNE8=2Tm-!QJWh0)eSoubJuTgtM6^3>
zgX&$VXeN?7myWx+doM6hDNLO>N}sQ4%cbg;qtDn=6>6swp@5FQHM1F95J^fyRgk_`
zI#3*I+{|~5n)AJD&G)W+7tIc&1Kgq6%;CQ@>i}u6BJxYP^b6FZERKUBeouLPoO8df
z-7IGh!be*c2N#G0=j&IJ+;Wwj1O;urJl0f9XIU1&`6Inr$2>U2niTdCq%_uOrzv_(
z{asSOvuigiEZ1U9BkVDlX#Hll2QSVG#-ciIjWrFi9_TOf7Rly3ne<avfb8i??#w`M
z$GOn6r+J!G<X3r4OCMF{&C;0eZDl10X=@9$2k5P!?u))!ZB;e|xm4LO$VJMADQu3;
zvZL^UcR*!CwyDf07pqK=jrib6@IK?mN3+iLum7?V(nW9Fj;56PH6>>XOYsIpA}omn
zbX8s0lE!A#MM19QpCjs`7``v&?^v?I?8ae5nJ!Bkm1z@lMD^wN&}984OeCNVY!W%^
zOmdF?I6*_5>+Ccv8nYL%)m%=^7|#kX;J@p>7Jn<v(zOqd)2ZxNnLMGNmeAFS!3Ca7
zW8xzumm`)5eyg&gej|2KIILRk(211<51{&rwpg;Rp~Q`}kmb)Q7|>DUcGk;<tg}lr
zb5PcpPejTtI!h<-$%Ry$<IneSJUCm62u`56H(Mx3^?;5#{%4)<^;Dg{lxp}`NZeZc
ze!zdWD>eOuOY~f5`}En`Get9)t;$;%Bg5D);pra7!x_d)+i&rfd9lBQFW)ad_p--<
z7(Ns8^RfEPGdzxuB{$^GEF1ymv$&?OFdTU-&r`tF{r&x&ue}a@(Bkv_(b{Kf&pC%&
P@41Fu=Uo?EJHCGdpQ7mr

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf
new file mode 100644
index 0000000..665948b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf
@@ -0,0 +1,101 @@
+#/*++

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    SeCUma.inf

+#

+#  Abstract:

+#

+#    Component description file for SeCUma module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SeCUma

+  FILE_GUID                  = E4CEDF93-672A-4782-A7FD-5FC6D239377D

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SeCUmaEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|SeCUma.efi

+  PEI_DEPEX|SeCUma.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gSeCUmaPpiGuid

+

+  gPeiSeCPlatformPolicyPpiGuid

+

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.efi
new file mode 100644
index 0000000000000000000000000000000000000000..22c7e70676f927d4ce2ec6e41c61b9f6daeb14b1
GIT binary patch
literal 8000
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.inf
new file mode 100644
index 0000000..45dd9b9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.inf
@@ -0,0 +1,152 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  SecCore module that implements the SEC phase.

+#  NOTE: This module was replaced by UefiCpuPkg/SecCore/SecCore.inf

+#

+#  This is the first module taking control of the platform upon power-on/reset.

+#  It implements the first phase of the security phase. The entry point function is

+#  _ModuleEntryPoint in PlatformSecLib. The entry point function will switch to

+#  protected mode, setup flat memory model, enable temporary memory and

+#  call into SecStartup().

+#

+# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>

+#

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SecCore

+  FILE_GUID                  = 1BA0062E-C779-4582-8566-336AE8F78F09

+  MODULE_TYPE                = SEC

+  VERSION_STRING             = 1.0

+  MODULE_UNI_FILE            = SecCore.uni

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SecCore.efi

+  BIN|ResetVec.bin

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1CE8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## PRODUCES

+  gEfiSecPlatformInformationPpiGuid

+

+  ## PRODUCES

+  gEfiTemporaryRamDonePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  Vlv2TbltDevicePkg/Library/PlatformCmosLib/PlatformCmosLib.inf

+#  Vlv2TbltDevicePkg/Library/PlatformHookSerialLib/PlatformHookSerialInitLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  DeviceCommonPkg/Library/CmosAccessLib/CmosAccessLib.inf

+#  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  Vlv2TbltDevicePkg/Library/PlatformSecLib/PlatformSecLib.inf

+#  MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf

+#  MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf

+#  MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf

+#  MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+

+[Depex.IA32]

+

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.depex
new file mode 100644
index 0000000000000000000000000000000000000000..b1a5ceab3b2eb73466f120b95a1915810dd0401f
GIT binary patch
literal 36
scmZSDU00wl<#k1HmIcEEb^C+9Oy52%7WPv6VE5_4y`w@V`X<aA00;~YUjP6A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7577e8f0bfe5b91ec182baae4f77a4981d6a7883
GIT binary patch
literal 1984
zcmd5-Z%kWN6u)g>M;QfLt+NSgy5uFxQY53-I%-{{wW2fKB4f1R!oSI|>V~ZC!woTM
ze4x9zG!k7hW6%uIWV*SaiLPWWzVb-BkbMA0bV{-igIZ)76tkfLp69k*(k<)@pS;Pv
z_uO;N@7(k6-M8ymwC*vyZshub&pd&USEaedzzkAvE>IPr8DLAQjOaBrLKc{4L*{IO
zjm_JKl$X^5LBZ|9?AdS!{#xv2u=f-QD&gMy)>2p}uPl7vNEonJAVwA!i!~izjy(%P
zfwI<?a0~G2SRTNK=IoxMhAI)dSQb2R@a5++zA~SiL4obLqY@#v&rid=fp+tHx|cUa
zJ)0EAYKU_zh4f@n{7Dm^Q!jozpGOkW?t7ILGP(HCGWGEKrbhWvX86k`0PCoi*OPJ3
z28@64G$?*r*CYd12kP8V06Zmy&9G9}qeHFfy<+Gf?5Tet*g57^ExjhrE>&08)cX7{
z1_BW#{6JBZdOV%fveQHMP)j|zzlRCN07WNKlWbe)y<Xg-fjmTgx)GL>)HJYrB*9pG
z&ZpLVmpYx*60S1MAK)%AVWyW!m^V2d=nQ=GE?}a&4d+k7e&G}>v0+%OtJbU5KdcGj
zf&93Z+$>LoE2gex;wk2+if{$g#Su>dM_oF?ZKW<f@oa?yXca|wTBz%9;whR1n8~>*
zcmYojvbbvk$6yUu*uo+q_pn=&TE<<5nkTh=K)t{*svoFN($sOFR)A_tYMHYLDgEr@
z6vqs`($Tya;3D(+Sen<yihyitY}iMCZjhm(oX?LHdc)CW?yQYIT|rgi3|Ej8D#?y3
z&|^vM6s!tZN@^#7S}4^R?;v?lV-z?44grh#D&pd*#JI&7GzZT%CEP|8mKrmc;p>i|
zxwEteuJTg{P11T!oY^2=L_(qX>nfFrL(IP`2R_}j5AZ0B_ky#4KWy$SiB?xcjvA3r
zA#UWVsGB2hP8_v351WIjq?S1j9s?-jJ_nW0x^LAO6E1_QQI0{UN3uTop+5~YXpaA)
zb!-pi#k4G0253za*z~1zV5%NVWIOb<*v)fD(9pQ-91s7agn4dHb?V1uMG?pJa<)GQ
zo1p+T;HjV3JAkA|Dtnc139a+c%OeJ0q#D2?bf2k895p#_1b@rcBwdo15+>>~8-^GX
z>NPjWh+aw9n0g;tJ$;f#6sX9&zD-=>!qCEQwPvFDoVv{!7p`GRrlT@dIn_c5)WYfJ
zgu9{poNk=}&8T;}^@3(tCEFyKWr&T*KR-KkY09wkeEaL4uSAp`-oG5LeE-gr@x4b-
z|CYz%yTaCvQGKM`^=8#uU&aPz&ty<*uZ6(wfSF=Z!u&stCm-MIW$z_R{>`_P{Uct5
zZzFx?54ETL1;4j3o$Nch?dCa{VX*2RWAgo>5YuOIvY5-#a=xppt9AeLOpr6!|KJT<
zpY6D9z&2t_+P<|d*mzuu%kjgw55J91-~s$0K84TVFYs6RYb@ae9><e-kG;X(Za-l^
MX+LYvF?S33A3kizCIA2c

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.inf
new file mode 100644
index 0000000..7594dfb
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.inf
@@ -0,0 +1,198 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for the SmmAccess module

+#    {1323C7F8-DAD5-4126-A54B-7A05FBF4151}

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmAccess

+  FILE_GUID                  = 326E9CC6-9839-4885-B2ED-275903B668E1

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|SmmAccess.efi

+  DXE_DEPEX|SmmAccess.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..68e0be94306ae6fed83efe8eb978dc7b3dc24a67
GIT binary patch
literal 3072
zcmeHIU1%It6u!IN)unOW#gMXKk%?^DfFa&HlhCaw4M~GmQb|ZUH3rwVNw<@wMrkIJ
zh9aYrMR%{EkrpZFgRu%id}u1-QXy<JF}pDjr7xv@GEl{>G2KA56tNx8xwHA%z8LC@
zv>v!;&i_5%oilTHze4Vr()XPC?-N^_32AX{C@C~g+?8dnM+xzO85dHpxFl47P<IQd
zlr?}_%z32Lv!Y?@x``5EKya%>$mVq?{c~WgesEBSun0oOhSp*&rb~oqwLSaw{pfZ9
z1B1ZqgXbD*AS73N<lx~qx}9DL^eo~wt_cDW;u=dW|7-Wl3Gj}vkGF(9YCZ&zK=S3k
zM`0;(^Qbo;M{y=<@y3X%os?j%s)5Bx(yzmF5{HGq_^h_29E?FVS#cPwN&lO`PY)tH
z1<d|%nh-LEM(q=1Az*Q$RXIuaD7wvQ8nr}>U61?NtvibvrhwMjX^mk?Z5UV_EH#e$
zeyRGwvT9C;tUdg<wl-dY<3HvBrt)`*5g_RXBQVcNm0?4NpMqUKI?{YA>pccyZ(V<P
ztJqn&DX^;AIDBRCpoUnJegk5%UhJXrF_duoZXw~$10W^qM?rE>i9)JqS@VHa!*qM}
z3_-xvd}+Zu`7nHXdACa(GynNjt6k;w*i-7tUUP=V_@zaD%e+v@vxQ0gHWPRBO}qjF
zCS2weedib3zHNhZ!7b08I}3GF*7f1p<rs)qbfQ5jn<=~&RWe<cV@VVE8^j9B?z*`2
za)JA?vUwi%y|`%R+yy0L8OOpwqCb=d_=d%IhJEdc%z)RJvljv|Ey2XB9x}JP2Fg>R
z{At^^6PZDOYOd>A9mpc53oH0mDqMRT99Rab6pO~P<m}h5lhcZ7PI+RBfp0UDHoTuN
zT?0EDdyLPlcI#GVWBmN8?pYNjGiR@$s#Y>9a^$X@XG$v8iL|x&s|+|!Ggn!NTE)@B
zX%?dg!wA0nh2{~6lzndaiSfC{6MIu+@P_*Mo~7}v>4_~Z#tZuKZRbAw@zh&?ma|-T
z*L%MnZ~AMh?W6U8_e0P=Sf5L<?z(%xyl#5FsiOt&I=u75{TF_{Pb5p?ZX(NfT?6Pf
z;HW*~Tz>dBilBa=zaJi=kA0{Me|TtUsOP{TbUere=V}1{rzoWn+Du=f9ki21X)o=g
z{d9<q&=d4yI!3>u6ZAWpp+C?I^eW9$!pc|$+svM1PqTWqo$X*vY!}<j+F6wKuwK^3
tPO@*<6?T>V!Q65{9+AJ0&&U~hPQEPvB>yhEm4LEUsZk!}qyH~p{~Ltch>QRL

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.inf
new file mode 100644
index 0000000..fd21028
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.inf
@@ -0,0 +1,122 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2011 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmControl

+  FILE_GUID                  = DD787473-07CE-4c63-82CE-930B33F39C09

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|SmmControl.efi

+  DXE_DEPEX|SmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x800

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..4bb6074e530b68b05103418ff7a5cc63d3cbbbef
GIT binary patch
literal 126
zcmV-^0D=Dkx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
gGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj%K0|NsC2pp3&(f|Me

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8b0ce5fd00d5326aa8bb6357937791a851a66b62
GIT binary patch
literal 16640
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
H+wK1cQZt-6

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.inf
new file mode 100644
index 0000000..448e0f9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.inf
@@ -0,0 +1,253 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitDxe

+  FILE_GUID                  = 93C81A74-B648-4f7f-925E-E4A0CDCC776D

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitDxe.efi

+  DXE_DEPEX|VlvInitDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x30D0

+

+

+[Protocols.IA32]

+  gDxeVlvPlatformPolicyGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+

+  gIgdOpRegionProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gBmpImageGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.depex
new file mode 100644
index 0000000..00c2f8d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.depex
@@ -0,0 +1 @@
+²�}�"rC�,�2Ӧ�;���\�J���B�.
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7152888719c4c31ef172a954f6e8d03875e95ac7
GIT binary patch
literal 3104
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.inf
new file mode 100644
index 0000000..a032c7f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.inf
@@ -0,0 +1,101 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the VLV Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitPeim

+  FILE_GUID                  = 24169E35-2454-4940-92BC-82321A2C7562

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitPeiEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitPeim.efi

+  PEI_DEPEX|VlvInitPeim.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gVlvPolicyPpiGuid

+

+  gVlvPeiInitPpiGuid

+

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  gVlvPolicyPpiGuid     AND gPchPeiInitPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h b/Silicon/Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h
new file mode 100644
index 0000000..b14d40e
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h
@@ -0,0 +1,72 @@
+//

+// This file contains an 'Intel Peripheral Driver' and is

+// licensed for Intel CPUs and chipsets under the terms of your

+// license agreement with Intel or your vendor.  This file may

+// be modified by the user, subject to additional terms of the

+// license agreement

+//

+/** @file

+

+

+  Cache PPI definition.

+

+Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>

+This software and associated documentation (if any) is furnished

+under a license and may only be used or copied in accordance

+with the terms of the license. Except as permitted by such

+license, no part of this software or documentation may be

+reproduced, stored in a retrieval system, or transmitted in any

+form or by any means without the express written consent of

+Intel Corporation.

+

+**/

+

+#ifndef _PEI_CACHE_PPI_H_

+#define _PEI_CACHE_PPI_H_

+

+#define PEI_CACHE_PPI_GUID \

+  { \

+    0xc153205a, 0xe898, 0x4c24, {0x86, 0x89, 0xa4, 0xb4, 0xbc, 0xc5, 0xc8, 0xa2 } \

+  }

+

+typedef struct _PEI_CACHE_PPI PEI_CACHE_PPI;

+

+//

+// EFI_MEMORY_CACHE_TYPE

+//

+typedef INT32 EFI_MEMORY_CACHE_TYPE;

+

+//

+// PEI_SET_CACHE_PPI

+//

+typedef

+EFI_STATUS

+(EFIAPI *PEI_SET_CACHE_PPI) (

+  IN  EFI_PEI_SERVICES       **PeiServices,

+  IN  PEI_CACHE_PPI          *This,

+  IN  EFI_PHYSICAL_ADDRESS   MemoryAddress,

+  IN  UINT64                 MemoryLength,

+  IN  EFI_MEMORY_CACHE_TYPE  MemoryCacheType

+  );

+

+//

+// PEI_RESET_CACHE_PPI

+//

+typedef

+EFI_STATUS

+(EFIAPI *PEI_RESET_CACHE_PPI) (

+  IN  EFI_PEI_SERVICES   **PeiServices,

+  IN  PEI_CACHE_PPI      *This

+  );

+

+//

+// PEI_CACHE_PPI

+//

+struct _PEI_CACHE_PPI {

+  PEI_SET_CACHE_PPI    SetCache;

+  PEI_RESET_CACHE_PPI  ResetCache;

+};

+

+extern EFI_GUID gPeiCachePpiGuid;

+

+#endif

diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130673321.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130673321.inc
new file mode 100644
index 0000000..aefa4e2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130673321.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 000000321h ; Patch ID
+dd 001142014h ; DATE
+dd 000030673h ; CPUID
+dd 0984d6012h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000321h
+dd 000000000h
+dd 000000000h
+dd 020140114h
+dd 000003211h
+dd 000000001h
+dd 000030673h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 059dea1b4h
+dd 02e5fc512h
+dd 0c554500dh
+dd 006c63b24h
+dd 0318a5bfeh
+dd 0edfe01ceh
+dd 0e8d70ae7h
+dd 047549329h
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 044137a8fh
+dd 029005d14h
+dd 0743a2d49h
+dd 0966fca78h
+dd 042db0d75h
+dd 04409b7b6h
+dd 03332cf27h
+dd 0b2ce94d8h
+dd 040bc2abch
+dd 0533bd172h
+dd 0926ae103h
+dd 0b7e5a4efh
+dd 076bd81e6h
+dd 03e02cc62h
+dd 0740fe383h
+dd 061523c4bh
+dd 0122208e6h
+dd 0fc82559ch
+dd 0ec30b2c8h
+dd 04bc10bfeh
+dd 0b3163138h
+dd 0ba1e7a18h
+dd 07803d0abh
+dd 06f0e1231h
+dd 09473b670h
+dd 051304d21h
+dd 0cb8a3f42h
+dd 0274d8dc3h
+dd 0bab640e9h
+dd 0bdc8eaafh
+dd 07b27b4f9h
+dd 0959a4209h
+dd 091f9f6b0h
+dd 0be221773h
+dd 00d0c89bbh
+dd 0d8f2be21h
+dd 0f425fd3ch
+dd 0fa9d1483h
+dd 05550ba30h
+dd 0073f6d29h
+dd 088cd7754h
+dd 027f3e5d1h
+dd 038f182d8h
+dd 020d74f0ah
+dd 0f325988ah
+dd 07c1a8c23h
+dd 0127ed099h
+dd 0227585a0h
+dd 00d4c1384h
+dd 06050179fh
+dd 01bc4c817h
+dd 0aa2c8a10h
+dd 049f125f4h
+dd 0f7eec20fh
+dd 09094ac21h
+dd 01f24e098h
+dd 01ebc2c8dh
+dd 077eaa301h
+dd 0e4f27bcdh
+dd 0b77a5198h
+dd 0eeca5c82h
+dd 0d3e5bfc6h
+dd 0cb8e6dbfh
+dd 0a17ad515h
+dd 0d48c9da2h
+dd 0e860957ch
+dd 08381a08eh
+dd 012f45e6dh
+dd 0c0c974f4h
+dd 06514ca9bh
+dd 0b02db319h
+dd 04f416593h
+dd 089dc0bf6h
+dd 02f5ae82ch
+dd 0b5222df9h
+dd 0e4764bd1h
+dd 005ff9df8h
+dd 0c0961525h
+dd 0b2158879h
+dd 09a76b6f4h
+dd 0a54d18e4h
+dd 0c33702eah
+dd 03153d9a7h
+dd 035d6ba7eh
+dd 0271124d2h
+dd 03a7fb73ah
+dd 0042be3fch
+dd 0ac855278h
+dd 088c44de4h
+dd 0c9f89abch
+dd 0586f9720h
+dd 0f4caecdah
+dd 06bd26b96h
+dd 007e80235h
+dd 0db27b333h
+dd 0627c15b6h
+dd 0c3da1297h
+dd 0b132e584h
+dd 02f60ccabh
+dd 076f825dch
+dd 036130a3eh
+dd 072523a7ah
+dd 077c9a891h
+dd 03c0db69dh
+dd 01ac55117h
+dd 0aa0bbc3eh
+dd 05cc10cd9h
+dd 0908089d1h
+dd 0b2a44ba7h
+dd 03ca2b50dh
+dd 065459262h
+dd 0cdb9043bh
+dd 0f214c194h
+dd 054dd52e4h
+dd 09357bf93h
+dd 0ea16fff0h
+dd 029a7f034h
+dd 0b797e60ah
+dd 0b5db4b85h
+dd 074668766h
+dd 00f1ebed7h
+dd 09d4800ech
+dd 058019cd9h
+dd 0bf81705fh
+dd 0ceae7c04h
+dd 070d2ee70h
+dd 00953fe99h
+dd 0d5f45a9dh
+dd 0418d40bah
+dd 09c943a99h
+dd 0ea03cae1h
+dd 0531bcc2ah
+dd 0682f1024h
+dd 07ea64718h
+dd 020bbb4d3h
+dd 001dabf1ch
+dd 098699ec6h
+dd 0eb482890h
+dd 080b1e5a1h
+dd 015dc554ch
+dd 08dbb23e3h
+dd 02d7d4577h
+dd 033e1bec3h
+dd 09a88e5ach
+dd 0e329a607h
+dd 0d039f854h
+dd 02a844500h
+dd 01e8261a0h
+dd 0036ae83ch
+dd 057f49669h
+dd 0738f514dh
+dd 02e63482ch
+dd 06f34043eh
+dd 0636f99e9h
+dd 0f26125beh
+dd 04d3a7dfdh
+dd 074b9e096h
+dd 04db03091h
+dd 0dd16a2b6h
+dd 07a60884ah
+dd 01ac2711dh
+dd 045ff88f5h
+dd 04d9cb40dh
+dd 06674c00eh
+dd 09b9194c5h
+dd 0dab4b661h
+dd 07700ac4ah
+dd 0e40f707bh
+dd 0dbfa7e4ch
+dd 064c142f1h
+dd 0548d3b6eh
+dd 004a5e462h
+dd 01e1efe78h
+dd 0e2bfc448h
+dd 018a53169h
+dd 01d3e4e61h
+dd 0216ec478h
+dd 071714481h
+dd 0aa67f149h
+dd 0b0aad35fh
+dd 03104bda8h
+dd 0637a1dd0h
+dd 099a03c9bh
+dd 001b9e213h
+dd 0f2a70918h
+dd 0795f0405h
+dd 0437be927h
+dd 0500889aah
+dd 07767e789h
+dd 092b2d130h
+dd 0845d8810h
+dd 0a75f5291h
+dd 0ec18bab4h
+dd 0eb0e6d38h
+dd 0f849805ch
+dd 0914a53d5h
+dd 07afb5a07h
+dd 0133a6302h
+dd 0827a89abh
+dd 02db38072h
+dd 08564095dh
+dd 0d944b3a9h
+dd 0ecd9cf6bh
+dd 06ed577dbh
+dd 063dba68ah
+dd 03e9bf12fh
+dd 03725aff7h
+dd 0906001aeh
+dd 0812cd9d6h
+dd 045affa4fh
+dd 0dd685182h
+dd 0efb44da8h
+dd 09f2288ddh
+dd 023aacd23h
+dd 056df5266h
+dd 0e0f5fe9bh
+dd 02b2aede2h
+dd 074a0ee04h
+dd 09dc03808h
+dd 0303ef215h
+dd 0cd286863h
+dd 02e5a5b48h
+dd 01d331d85h
+dd 0d748beech
+dd 00bb1235dh
+dd 05f693f2dh
+dd 08147c39dh
+dd 06b42c7a9h
+dd 049ded5b9h
+dd 0ef35df0dh
+dd 0a38ee3d7h
+dd 0213449fbh
+dd 02e8816c5h
+dd 0a43b196dh
+dd 0ac3eb42bh
+dd 078581b9eh
+dd 0efa6b45ah
+dd 096dd675bh
+dd 05a480576h
+dd 09bb555cbh
+dd 07e4de6c0h
+dd 0104699d8h
+dd 09f6c36f6h
+dd 0ae98cbe8h
+dd 01290b5e8h
+dd 0d2620e30h
+dd 0285b174ch
+dd 0411030b5h
+dd 0ad9310b4h
+dd 0e9c43a4ch
+dd 0b68db761h
+dd 04283b03fh
+dd 08d4ce3b3h
+dd 01f7b123bh
+dd 0930f7187h
+dd 08a7274aeh
+dd 0f365c277h
+dd 0cd9f1bb3h
+dd 05ddd6e16h
+dd 0d7938e92h
+dd 0f776d413h
+dd 0eafe7dfeh
+dd 0d47e7394h
+dd 04d381df4h
+dd 062cef825h
+dd 08be02ad1h
+dd 05bafcda3h
+dd 00108b85dh
+dd 0e032ef17h
+dd 0201eeba4h
+dd 05f9f672bh
+dd 078bd1a70h
+dd 0e26f30ech
+dd 00211573ah
+dd 0debc689ah
+dd 0ba8dbd4ah
+dd 089a092afh
+dd 0092833cfh
+dd 07f12d5f1h
+dd 04cf54ba7h
+dd 0bc9f3554h
+dd 08e7c249bh
+dd 0fa771dc4h
+dd 026d4c4d7h
+dd 004f04f68h
+dd 0d065ed16h
+dd 025435a45h
+dd 0bd028613h
+dd 05df1bf12h
+dd 0c31387b5h
+dd 0f396bde6h
+dd 013dbddf7h
+dd 0ca132f70h
+dd 07552a2bdh
+dd 06a209cbfh
+dd 092a17170h
+dd 04470d8e4h
+dd 074ccbbc3h
+dd 067953857h
+dd 0c512caf2h
+dd 07748bdcch
+dd 05168464dh
+dd 0a13a08aeh
+dd 017b01112h
+dd 09d620d9fh
+dd 00726bc0ch
+dd 0fbc852efh
+dd 0a1952973h
+dd 0dc379bb0h
+dd 014c61fabh
+dd 0bab0264bh
+dd 0c6249027h
+dd 050a20196h
+dd 0f1ef2888h
+dd 0e56d9081h
+dd 0f8fd313fh
+dd 048f9cd7bh
+dd 0d9256a72h
+dd 0c5ad02e1h
+dd 03a76f23bh
+dd 0bc4d28c9h
+dd 089afcb82h
+dd 0cb29d3a0h
+dd 014108ec7h
+dd 0ce3a2543h
+dd 0568e708eh
+dd 0afa8854fh
+dd 059d51a84h
+dd 05e314738h
+dd 01223b520h
+dd 0a6ca13a3h
+dd 09983272ah
+dd 052a8ee3dh
+dd 09b9cab64h
+dd 01f37c019h
+dd 08490a443h
+dd 0f386741bh
+dd 084152a61h
+dd 0853a1781h
+dd 09688e176h
+dd 068a66da2h
+dd 0a9643ce8h
+dd 07156e986h
+dd 003a0ac25h
+dd 09f121ceeh
+dd 09406532ch
+dd 0d2ce7729h
+dd 00e69128eh
+dd 051d94115h
+dd 028a57a6dh
+dd 046decabfh
+dd 0fce80274h
+dd 08b298562h
+dd 08667b056h
+dd 0db71e9beh
+dd 0182bfcceh
+dd 047885e11h
+dd 0c139663ch
+dd 05b6161a7h
+dd 0914c98d9h
+dd 0b6cdebc9h
+dd 06680a868h
+dd 048777de6h
+dd 038b4bbd5h
+dd 073767219h
+dd 047980ea0h
+dd 04b26b765h
+dd 0f1b4dd39h
+dd 086ccb26ah
+dd 098d97a4dh
+dd 02b0ef509h
+dd 04c154015h
+dd 00c264cfbh
+dd 02a8a8049h
+dd 006255ecbh
+dd 0a7cf7624h
+dd 08bab69fah
+dd 0cb504859h
+dd 037a55ec5h
+dd 02c39c48bh
+dd 023be04e0h
+dd 0ea664b8bh
+dd 051f363ffh
+dd 0b9fb6870h
+dd 028d49894h
+dd 0fc9ec15fh
+dd 0ab2b0ec1h
+dd 090b06098h
+dd 01f2f8632h
+dd 0b1b5317fh
+dd 097065393h
+dd 0fba79b8eh
+dd 09f77b3a5h
+dd 097360db9h
+dd 08e7aeab7h
+dd 0367e1180h
+dd 069fb19a1h
+dd 0c75d0dfeh
+dd 07578f3a7h
+dd 015918127h
+dd 07ebe4eb2h
+dd 05d365605h
+dd 0b24fe92fh
+dd 06ecbeb2dh
+dd 0c47427d4h
+dd 013e185e5h
+dd 05dea26fah
+dd 03edfe8ddh
+dd 0b90e9800h
+dd 085a9e163h
+dd 08fd84785h
+dd 00935fc1bh
+dd 0297d8bb8h
+dd 07e92d438h
+dd 099e4175ah
+dd 098e2e683h
+dd 0c5b902b5h
+dd 03f506d77h
+dd 08e2610d6h
+dd 0a7d2d357h
+dd 08d08e2d3h
+dd 0d5026f9eh
+dd 0274bf543h
+dd 01c30e3c9h
+dd 07745a863h
+dd 0b29c1150h
+dd 0364d3579h
+dd 09463c55bh
+dd 09ea7aa95h
+dd 0eb30c705h
+dd 064424503h
+dd 0bcde415ch
+dd 03d5dcabfh
+dd 07b887d29h
+dd 095e98bdbh
+dd 068c1f9a8h
+dd 05e54c79bh
+dd 057ba68ddh
+dd 02967e0c2h
+dd 070933985h
+dd 00e1e1dcch
+dd 01d3796d6h
+dd 032acd90fh
+dd 0052ceba5h
+dd 037a327dch
+dd 09560ef9ah
+dd 04b6d12f5h
+dd 0850883d2h
+dd 0df69d81fh
+dd 0c79e216fh
+dd 0794c99edh
+dd 022d116e9h
+dd 083e4647ch
+dd 0950dd315h
+dd 02fe851b4h
+dd 00bf1de94h
+dd 0125aae60h
+dd 002cd09beh
+dd 05edb1efah
+dd 0a4bfd2c7h
+dd 0620e57aah
+dd 0ffbaba2ah
+dd 0f51d3f9bh
+dd 0e704cd2eh
+dd 0c9980a09h
+dd 0664ca4abh
+dd 0aaea5080h
+dd 0aa79308eh
+dd 0d9de330dh
+dd 02c3e3cf5h
+dd 00438c8b3h
+dd 0abc8246bh
+dd 03b48ae58h
+dd 0a21354a6h
+dd 0ea65dea3h
+dd 0e04dfd2ch
+dd 0a8208656h
+dd 0070fe3fbh
+dd 00297abd9h
+dd 09a4815fbh
+dd 0dd3d6352h
+dd 0a438ba26h
+dd 0414a8f11h
+dd 08c4c86edh
+dd 050448b2fh
+dd 0e77568a5h
+dd 08c1d58eah
+dd 0088a3d5dh
+dd 0398c3319h
+dd 02ce02392h
+dd 012dfafb3h
+dd 03340facbh
+dd 0f8957ebeh
+dd 076a791adh
+dd 03fe7c578h
+dd 09b3b8fd2h
+dd 0c082b6afh
+dd 0bf09ee8ah
+dd 0c4a3aacbh
+dd 026895d18h
+dd 021c81f50h
+dd 00e7e1d84h
+dd 06ff4c9efh
+dd 0b363512dh
+dd 038917ba2h
+dd 0a1303ee9h
+dd 07f851aceh
+dd 09cc1e017h
+dd 0c0a2e294h
+dd 083b66868h
+dd 08f68b451h
+dd 07d219e94h
+dd 0f4d18ac3h
+dd 011cc03a7h
+dd 07397bd90h
+dd 0eefee7e7h
+dd 053ea0849h
+dd 08b8c19adh
+dd 04c61c003h
+dd 048a4f4e6h
+dd 097f2548bh
+dd 013371c12h
+dd 01c93843eh
+dd 0a727a587h
+dd 0a0323bafh
+dd 042906cf7h
+dd 09749023fh
+dd 03857315fh
+dd 0b0ea532ah
+dd 0071060f8h
+dd 052500ef8h
+dd 03d31e4e4h
+dd 0a76f5773h
+dd 07902d542h
+dd 08d751514h
+dd 0a5b0f9fch
+dd 0ceab6c24h
+dd 0a4560b74h
+dd 063d06b2ah
+dd 0b63f6df9h
+dd 04cb3a2deh
+dd 04a572aa2h
+dd 0b51a33c2h
+dd 0aa405323h
+dd 03280f649h
+dd 0b437a3cdh
+dd 0de7ce094h
+dd 0c59b1c19h
+dd 06536ff15h
+dd 05a0b9ca5h
+dd 0d8f54f39h
+dd 0f6aebe2bh
+dd 02ad194a2h
+dd 01a0c440fh
+dd 0f05319f6h
+dd 03cad1a52h
+dd 0ecce3ef8h
+dd 0e5496ee3h
+dd 0f83c36dfh
+dd 0293f77bah
+dd 00c79888dh
+dd 01d3e67b0h
+dd 0b8085108h
+dd 063cd6fa7h
+dd 0138d1d93h
+dd 0d8cc5a38h
+dd 00d9639ddh
+dd 0572291ech
+dd 069c74b8fh
+dd 0060dfc5eh
+dd 0e1c504cch
+dd 052862864h
+dd 084ced224h
+dd 06577d282h
+dd 0cea27ec7h
+dd 0fc7b526ch
+dd 032d4f4f5h
+dd 0532027f7h
+dd 0a9459126h
+dd 03784e9e5h
+dd 08f791358h
+dd 01a7670b4h
+dd 0cefdbbdch
+dd 0935dbfa2h
+dd 0b833487ch
+dd 069367eb0h
+dd 085004724h
+dd 0268175f4h
+dd 004717425h
+dd 06263ca85h
+dd 02694fdffh
+dd 0d167485bh
+dd 0ee91ebe0h
+dd 0290efc2fh
+dd 08a962840h
+dd 045df8fe8h
+dd 05f6d4839h
+dd 0908dd2d8h
+dd 09f580b17h
+dd 0f2605928h
+dd 0d59d9707h
+dd 06aa96b3ah
+dd 05fbc60dbh
+dd 0ad15f292h
+dd 0a078f85ch
+dd 046fc6394h
+dd 0696e15b7h
+dd 09148e068h
+dd 0f5bc948eh
+dd 0844b7e4eh
+dd 0774c39a7h
+dd 004a3392bh
+dd 0c8b2026ah
+dd 0c0264f01h
+dd 06a099f38h
+dd 00ef96de5h
+dd 0a4f00791h
+dd 09751f947h
+dd 0ffcac883h
+dd 069a8a9e3h
+dd 07fb68c63h
+dd 033f1c506h
+dd 09e0996a2h
+dd 069af59d2h
+dd 05efadb75h
+dd 088ac9360h
+dd 0214c25d1h
+dd 0f0b697f8h
+dd 0cfe6a6c3h
+dd 0f8ef7f73h
+dd 090159d1ch
+dd 0fe2a51c3h
+dd 01eed7a8fh
+dd 06ab12ccfh
+dd 0c5982d2fh
+dd 011a51030h
+dd 07fc93158h
+dd 0f1849f64h
+dd 0a875cbcfh
+dd 02300415fh
+dd 08c88c82bh
+dd 0d7de0545h
+dd 01719fde2h
+dd 0e3d77b0bh
+dd 0fa8542ech
+dd 05cb6586ch
+dd 0192d1df5h
+dd 0d31d88e3h
+dd 0acf46c00h
+dd 096df4af6h
+dd 03be059f2h
+dd 073a69680h
+dd 07547ef57h
+dd 0b592ba35h
+dd 0499feec7h
+dd 01b4f4228h
+dd 05346f7ddh
+dd 00b8926cdh
+dd 080f95c86h
+dd 0bbc17229h
+dd 05232ae64h
+dd 0471be56ah
+dd 0dcef427bh
+dd 0404d052ah
+dd 08d5e577fh
+dd 08aaf2639h
+dd 0f730f1deh
+dd 0ec7aec4bh
+dd 03a80998dh
+dd 068158d21h
+dd 02585e8f7h
+dd 03fad7786h
+dd 0b216c1cdh
+dd 031312638h
+dd 0e3c39ba2h
+dd 072045c70h
+dd 0746ef0eah
+dd 0bf969d6eh
+dd 0694de528h
+dd 0deccb9c4h
+dd 0349dbecah
+dd 036ff1084h
+dd 017e155d6h
+dd 02ca9b2e5h
+dd 0b776fc5dh
+dd 053c6ae1eh
+dd 0893e0d2fh
+dd 026b0007fh
+dd 0bc2e8be8h
+dd 0d080659ch
+dd 0a90ac2e6h
+dd 0405ac57ch
+dd 0ee671670h
+dd 0e28bcf44h
+dd 0931d2d40h
+dd 05f58813eh
+dd 08e439554h
+dd 0a7e707aah
+dd 05f11b5a3h
+dd 005b34f50h
+dd 068a4ce38h
+dd 0cd624621h
+dd 0fbc5e664h
+dd 0b55a2c73h
+dd 0ffd05d3fh
+dd 037a55094h
+dd 0f3cb2068h
+dd 0e3f2b77ah
+dd 06890a1fdh
+dd 005f19507h
+dd 008513274h
+dd 0badb805bh
+dd 0aa6bce31h
+dd 005403473h
+dd 03174f8e9h
+dd 0d1fbd62fh
+dd 0b63c978ah
+dd 00da9980fh
+dd 0e51298bah
+dd 0b629bc0ch
+dd 02baff5f9h
+dd 00bb887f5h
+dd 0134cfca5h
+dd 09673054ch
+dd 005f47453h
+dd 03c696160h
+dd 00aa1777eh
+dd 047979c49h
+dd 00e2ddea5h
+dd 0e438ec37h
+dd 013db13a0h
+dd 0128d37f0h
+dd 0e8187d9ah
+dd 07dbe1c2fh
+dd 0658011f7h
+dd 0440e0548h
+dd 0d7447da9h
+dd 0a35e614dh
+dd 01957eb17h
+dd 0d16fcbc5h
+dd 01213fceah
+dd 0cc2738c6h
+dd 0e3d22cd2h
+dd 07aa9a7f4h
+dd 055f5007dh
+dd 0f0c0ca56h
+dd 0f2900f92h
+dd 099b24335h
+dd 0cd742913h
+dd 02952bc4bh
+dd 0ced3d608h
+dd 04426918bh
+dd 04c0c927ch
+dd 0a6c31c4dh
+dd 0f640585fh
+dd 015025736h
+dd 02836e519h
+dd 01d07621ah
+dd 091ae6682h
+dd 09b525ddah
+dd 0c2728dd4h
+dd 041df48c9h
+dd 08754fbd0h
+dd 03a2e2c97h
+dd 01f25ac3dh
+dd 0883c226fh
+dd 0928ee0c6h
+dd 0cc42491ah
+dd 0e856ab2dh
+dd 060d5749ch
+dd 0e1ae690fh
+dd 0bae1191fh
+dd 0920dbfc4h
+dd 03e56c12ah
+dd 0dabd1e8dh
+dd 028646dc3h
+dd 0849757bbh
+dd 0dfeb3745h
+dd 031ff727ah
+dd 0c966438ch
+dd 01c2e262ah
+dd 0909d70b6h
+dd 04741f54eh
+dd 01c012831h
+dd 0b119e611h
+dd 09ff4a224h
+dd 07ed0a64bh
+dd 086425266h
+dd 003d2b787h
+dd 0d3bdc829h
+dd 0934a74fch
+dd 0c7eef804h
+dd 0de606db4h
+dd 0d7457685h
+dd 0d6bf1502h
+dd 0e7964615h
+dd 04818d61bh
+dd 038ba60c0h
+dd 08c61666dh
+dd 05275676ah
+dd 0590d7921h
+dd 07781fb01h
+dd 0e03547f6h
+dd 0aee48273h
+dd 0191fb9abh
+dd 0d9f2cfffh
+dd 00cea35e8h
+dd 0af4acf47h
+dd 032edbafbh
+dd 0c8f73581h
+dd 0528ab477h
+dd 04842d2fch
+dd 09af3119dh
+dd 0fcbd9c13h
+dd 08a1a5f75h
+dd 0541a3f14h
+dd 00884d660h
+dd 0b9cad52eh
+dd 0965301afh
+dd 0974d949eh
+dd 038d0fdc2h
+dd 04ae751d1h
+dd 0f1240fb8h
+dd 004815377h
+dd 0f5cb3dddh
+dd 056f2e63ah
+dd 0e1933a8eh
+dd 08b1d6f20h
+dd 0156ba835h
+dd 04da19fb7h
+dd 031fedaf2h
+dd 0e74567b6h
+dd 00da9e4fbh
+dd 08fed367ch
+dd 06f1f46a1h
+dd 0acc04each
+dd 037b33396h
+dd 084732189h
+dd 0f0648f05h
+dd 0fb4e2342h
+dd 0bb9f8693h
+dd 08095a791h
+dd 0d18aec1ch
+dd 040263cdah
+dd 0ecb8bc4ah
+dd 0ca820b06h
+dd 0117ce54dh
+dd 0967cc4d4h
+dd 05d7a7d6ah
+dd 00a1645f7h
+dd 0e49df5edh
+dd 034bd743bh
+dd 08807528ch
+dd 0a8ae753eh
+dd 0d677f673h
+dd 00bfc4ee0h
+dd 0716f53c4h
+dd 00b4f38fdh
+dd 00f5f87efh
+dd 070e1445eh
+dd 0048d3178h
+dd 00f2d2c31h
+dd 00f640be8h
+dd 0c95e19dbh
+dd 030aadacdh
+dd 025724e7bh
+dd 002ecdc74h
+dd 049fcb952h
+dd 07c222984h
+dd 0bb07a0e5h
+dd 0e7231714h
+dd 01bbc2288h
+dd 0d24714a7h
+dd 030cb937ch
+dd 0db66b7a5h
+dd 0cb94005bh
+dd 0ad7567d2h
+dd 01a8cabb4h
+dd 005a50b87h
+dd 0df14fb1dh
+dd 0f991ec5fh
+dd 001cd686eh
+dd 094b19e13h
+dd 0ee6b3a88h
+dd 082042fe3h
+dd 0228edc92h
+dd 095c4f3cfh
+dd 0cea7f80bh
+dd 07e99d845h
+dd 04172b203h
+dd 0eef9c7a2h
+dd 05e54bf7bh
+dd 0b6753137h
+dd 0a8396457h
+dd 0d596b6cbh
+dd 06d518011h
+dd 0a24a8636h
+dd 077689acah
+dd 0362e665ah
+dd 0bd09ce61h
+dd 03dd572f3h
+dd 04418b6e0h
+dd 0b3b4a59dh
+dd 0c6f793e1h
+dd 06349fce0h
+dd 093a1778ah
+dd 09a328691h
+dd 010f50007h
+dd 042769521h
+dd 0ebd062eah
+dd 0b5d7281fh
+dd 016d7a6bch
+dd 07c98b706h
+dd 09a361a65h
+dd 093d15d5ch
+dd 05d968eddh
+dd 0362d065bh
+dd 0cce7dbc2h
+dd 065d44aebh
+dd 060cd23e0h
+dd 0426933c1h
+dd 03bbb83e9h
+dd 0583a89b5h
+dd 0c9c9c7feh
+dd 05f199232h
+dd 05a03af1dh
+dd 03ea9d06ah
+dd 061e187e9h
+dd 0da46c606h
+dd 03c03ab3ch
+dd 016bc0072h
+dd 0bd8c2a8ah
+dd 0ee62fd47h
+dd 00de5582bh
+dd 0ea1bfccch
+dd 041f20ef9h
+dd 0301ebf81h
+dd 0a600061ah
+dd 0d6d526c0h
+dd 05dd8e3e9h
+dd 051edae84h
+dd 086dc6260h
+dd 0cf5e5fcch
+dd 01307aefbh
+dd 03f231eabh
+dd 06ad82191h
+dd 09b495cach
+dd 0a5b54b39h
+dd 06202e0deh
+dd 05f7aa07bh
+dd 0d527b631h
+dd 08b7b796eh
+dd 00630497ah
+dd 0bae74432h
+dd 031e60600h
+dd 04d2d7bcfh
+dd 087707adfh
+dd 04f677443h
+dd 0e07d248eh
+dd 026ddb9e1h
+dd 087f83c4fh
+dd 04a0da291h
+dd 0a7c01e96h
+dd 093f70c5eh
+dd 08f4182f2h
+dd 0234bf1efh
+dd 048c9d0e4h
+dd 04761d35ch
+dd 068ebd37eh
+dd 014cebbb8h
+dd 071b8ac1bh
+dd 057db7182h
+dd 0a413bf65h
+dd 00bcabb3eh
+dd 0689a6e0bh
+dd 045d90217h
+dd 0fa7b765dh
+dd 0b3815f54h
+dd 0bd5df0b3h
+dd 0f5cc2655h
+dd 0801dd907h
+dd 0e1c182a4h
+dd 04fa41412h
+dd 06ab49095h
+dd 034454410h
+dd 05fe0c00ah
+dd 00cabff6bh
+dd 0bbd0e2d2h
+dd 08b7a55ech
+dd 036e0ee0dh
+dd 010c2b1e9h
+dd 07eb7fc02h
+dd 00fc53662h
+dd 091a74a90h
+dd 0d5905eb8h
+dd 00ee96b03h
+dd 0145724ceh
+dd 0dbf47490h
+dd 0dcb9caadh
+dd 0fb606de4h
+dd 0e3658d31h
+dd 07c725e82h
+dd 01201fa98h
+dd 0c34a836ah
+dd 0eafcba7ch
+dd 0afe5a4cbh
+dd 0699cd70ch
+dd 07fed1c2bh
+dd 0fa61877ch
+dd 09e672fe0h
+dd 0e2fe430ah
+dd 0874a63d2h
+dd 0cc8c2219h
+dd 00fa19d07h
+dd 0ebcad31bh
+dd 051a4ff78h
+dd 0713bb7d7h
+dd 03fe9d076h
+dd 0a92506abh
+dd 0db0b90bdh
+dd 048cab528h
+dd 015699395h
+dd 0aef6f93fh
+dd 05f066cc9h
+dd 07ed0f560h
+dd 082a462efh
+dd 0d88681f6h
+dd 0883ba5efh
+dd 0a746b591h
+dd 00263115eh
+dd 0901a95fah
+dd 0870eb02ch
+dd 07cf70d00h
+dd 0db7c55dfh
+dd 0c280088bh
+dd 09ac2b6c1h
+dd 0030d11dah
+dd 06322f576h
+dd 0bf998862h
+dd 093b82053h
+dd 03f97f947h
+dd 003294a91h
+dd 0ba56b806h
+dd 07a1a266eh
+dd 0af197f36h
+dd 00a4ea724h
+dd 026a56b2dh
+dd 0381fd6b1h
+dd 0407b7f2fh
+dd 05e46d472h
+dd 069e56c4bh
+dd 089b6ee73h
+dd 0ecd1937dh
+dd 0cc8eee4ch
+dd 02ef1fd8dh
+dd 01e88316eh
+dd 00a30f4adh
+dd 053cc94a6h
+dd 08e136700h
+dd 095bb1269h
+dd 01a279a41h
+dd 0f521edabh
+dd 0be52de14h
+dd 0a48bc142h
+dd 0b338c212h
+dd 034a618b5h
+dd 0dc532a63h
+dd 0962bca64h
+dd 00f9d5f9dh
+dd 0677160ech
+dd 0acb2d852h
+dd 09e77d3d2h
+dd 056bf098ah
+dd 03f6fd73eh
+dd 0734f591bh
+dd 0fbca87bah
+dd 05f6b4ebeh
+dd 0413c43a7h
+dd 017e1e625h
+dd 0e8221dafh
+dd 0dcc3918bh
+dd 0fba8da97h
+dd 017a3f57eh
+dd 0b1ca7235h
+dd 097474901h
+dd 06fec9976h
+dd 032c3e1cdh
+dd 09b6d7653h
+dd 003e7ef63h
+dd 06ff3b56ch
+dd 0318ab29fh
+dd 097141533h
+dd 041fdef7ah
+dd 0409a06eah
+dd 03356b572h
+dd 0d62d3373h
+dd 0fa6a8c83h
+dd 0abff3312h
+dd 08f77f931h
+dd 0ec849e1bh
+dd 0dfdeecf9h
+dd 003d97021h
+dd 0755cfab0h
+dd 09a94d076h
+dd 097853c16h
+dd 04ac3c0f4h
+dd 0e27c5dfah
+dd 01e6f236ah
+dd 078c66030h
+dd 008cd33a9h
+dd 09f2b57a7h
+dd 0ae124926h
+dd 0a6a04b1ch
+dd 0a4ad796ch
+dd 09c7a0c6ch
+dd 0531e5938h
+dd 02698c3f7h
+dd 00074dda0h
+dd 096bb342dh
+dd 0aacffdceh
+dd 0f49b1d9ah
+dd 0d9d32665h
+dd 02c6dcf0ah
+dd 0c7b18980h
+dd 07ef10775h
+dd 0bf1412d1h
+dd 0d46e74f6h
+dd 05e14841ch
+dd 09b20da7ah
+dd 0e0a1fa7bh
+dd 08b376b79h
+dd 010c352a1h
+dd 055988373h
+dd 095fee1b1h
+dd 0f0f44dd3h
+dd 02463b9e8h
+dd 0e007663bh
+dd 02b477a3bh
+dd 01303e5e1h
+dd 0a7179878h
+dd 03e6fc840h
+dd 02f6a9571h
+dd 0031a7ae5h
+dd 0f0b5d8b3h
+dd 0e144d40dh
+dd 0e357ca7bh
+dd 041c69ca3h
+dd 0014d788eh
+dd 0972c45e0h
+dd 0d54c327dh
+dd 0415bedfch
+dd 0c0bccfaah
+dd 0314c948bh
+dd 078d99fb8h
+dd 0ee7aff87h
+dd 0d7d774f6h
+dd 0181869dch
+dd 089f7b289h
+dd 0a6a49636h
+dd 0331cde84h
+dd 0e4473639h
+dd 0e1b45eebh
+dd 010f0afd2h
+dd 087169267h
+dd 09d630366h
+dd 02c0c3bfbh
+dd 05cac643dh
+dd 0c8f34ff0h
+dd 001cb3aadh
+dd 0fe91c1bah
+dd 04f7aee63h
+dd 0f1a56569h
+dd 0f9e99e06h
+dd 0e84b513bh
+dd 0e6258dc6h
+dd 03b93071ch
+dd 075b9ea16h
+dd 090378cefh
+dd 0b2782f70h
+dd 0bdd00420h
+dd 07f93f7d4h
+dd 0bbfabd3ah
+dd 015429926h
+dd 0abb8b08ah
+dd 0551ad3adh
+dd 0a74425c1h
+dd 05b529a8ah
+dd 0956ac237h
+dd 0ba7ef75bh
+dd 02c34637ch
+dd 071f04060h
+dd 06bfa07e1h
+dd 0d08ccb1ch
+dd 0b2b1b1ebh
+dd 0c88a006bh
+dd 0ef9cbe0dh
+dd 05736da87h
+dd 07c443cfeh
+dd 0030aea25h
+dd 055396c4bh
+dd 02ec36360h
+dd 00afc692eh
+dd 040a1ce54h
+dd 069d77932h
+dd 097d14df0h
+dd 00231f7e8h
+dd 0c09761c9h
+dd 01f021037h
+dd 0702047cdh
+dd 0324c7fc5h
+dd 0203347bfh
+dd 05065cae2h
+dd 0630764efh
+dd 0a966e11ch
+dd 0d0a0c0a8h
+dd 091b99433h
+dd 01dc7735eh
+dd 0d3f50589h
+dd 0bdf62a3ah
+dd 032c300a7h
+dd 081ebe514h
+dd 05fa19862h
+dd 0cf3b4cf1h
+dd 043f930c3h
+dd 074607430h
+dd 0247635e3h
+dd 0f18e713dh
+dd 09da85f75h
+dd 03869b064h
+dd 0e86b93deh
+dd 0ab01a1c4h
+dd 0ed216cfah
+dd 0cfe247a4h
+dd 041d60ebah
+dd 0eef58d1fh
+dd 0e9be5414h
+dd 0bb581103h
+dd 0236bfdb6h
+dd 00cb712d7h
+dd 02ce7c40eh
+dd 079679d26h
+dd 0cd7ea721h
+dd 09bd78a8ah
+dd 04d08c430h
+dd 06b6d505ch
+dd 01459fa0ah
+dd 061943e6ah
+dd 0f462654fh
+dd 0784a51e4h
+dd 068fb3139h
+dd 06e232fc8h
+dd 0ab1001f1h
+dd 08c55ac52h
+dd 0171bb473h
+dd 023f16eafh
+dd 08f3662f8h
+dd 0b674ca10h
+dd 0bb78cb1fh
+dd 086c90e3ah
+dd 0427cc24dh
+dd 09c6a9268h
+dd 07cf4516ch
+dd 0edec923bh
+dd 040d985bfh
+dd 0b2ec6963h
+dd 0874b939ah
+dd 038a52d44h
+dd 0a3920a9ah
+dd 0eb746038h
+dd 0e89996e7h
+dd 06e751f24h
+dd 0293add56h
+dd 05a38dbd2h
+dd 08ce43148h
+dd 0c516c7d3h
+dd 0079f2162h
+dd 019c4e1d0h
+dd 0b5922578h
+dd 0b02078ceh
+dd 047ff52f4h
+dd 0719988f3h
+dd 042049a1eh
+dd 0c8827531h
+dd 017cb3c78h
+dd 072547863h
+dd 00aa0d117h
+dd 0327beac8h
+dd 011ed1dcah
+dd 08fe96797h
+dd 06f97e483h
+dd 0bbd84981h
+dd 04b4d019bh
+dd 0aad49d48h
+dd 08f4b5c95h
+dd 072fe96c2h
+dd 037facf2ch
+dd 062536b64h
+dd 02a61d6cfh
+dd 01bb959feh
+dd 0bb13521eh
+dd 0e06297b3h
+dd 0e64a478eh
+dd 02b614f40h
+dd 0feecf4cah
+dd 02a378268h
+dd 0ee24af58h
+dd 055dcb052h
+dd 05d3f5646h
+dd 081ce05cah
+dd 063c29520h
+dd 068acb5b2h
+dd 0d61bf7ffh
+dd 094fce44ah
+dd 0d59fba18h
+dd 0c7d3b8b8h
+dd 0710de0b8h
+dd 093400f75h
+dd 0d5388268h
+dd 01ab9970ah
+dd 0106c14c8h
+dd 0b22708dch
+dd 0b7202781h
+dd 0dde44e43h
+dd 0b5f3f621h
+dd 03b5b42f6h
+dd 0bf6ad1cbh
+dd 0cac099eeh
+dd 009f25cfdh
+dd 0bd348eceh
+dd 0521ec7a9h
+dd 01bbac833h
+dd 0d11f27e0h
+dd 0149f2863h
+dd 02d5cb784h
+dd 000d54b41h
+dd 0ab71edb5h
+dd 07f4ce2dah
+dd 0bfc5f822h
+dd 08e0f7332h
+dd 075387d4dh
+dd 0e4a8a949h
+dd 029af1541h
+dd 01dcefff0h
+dd 00f744131h
+dd 06d9af52fh
+dd 094526c10h
+dd 002ec3f61h
+dd 0b42a1f52h
+dd 0c0c262b8h
+dd 051ab7337h
+dd 0fa7ad9c1h
+dd 087a31232h
+dd 05fbeecd2h
+dd 0a8b3c175h
+dd 0fad37836h
+dd 01b9e19ddh
+dd 052bd96abh
+dd 0aac90f0eh
+dd 0441c8ef0h
+dd 0943b5b21h
+dd 0335b43c4h
+dd 0ba70fe3eh
+dd 06a344f73h
+dd 0d1038667h
+dd 0beb27cbfh
+dd 05c61444bh
+dd 02eb53fc6h
+dd 025e9f05dh
+dd 08f1e67adh
+dd 07355b424h
+dd 06c76cce3h
+dd 0e77acbf1h
+dd 0db4da0b4h
+dd 027daa957h
+dd 057cbd53fh
+dd 0d807f8cdh
+dd 0631274e7h
+dd 0fba7060fh
+dd 0d44b5856h
+dd 04d8bcbbch
+dd 0eff24ea1h
+dd 0350f80f1h
+dd 09c5397ech
+dd 0d8ae35f3h
+dd 0ed71e05ah
+dd 0cd57fcbah
+dd 0dae06132h
+dd 03a5d5dddh
+dd 0ef602801h
+dd 09ecde564h
+dd 03a2213a9h
+dd 0a0331916h
+dd 0d5819f48h
+dd 07559e9c1h
+dd 05e639a6fh
+dd 0176bda40h
+dd 06987f764h
+dd 0bbbbe43eh
+dd 0de6e722ch
+dd 0b3b771ech
+dd 02edfdee0h
+dd 08b664380h
+dd 075c2f7b3h
+dd 05487344dh
+dd 05ffc7d17h
+dd 099481561h
+dd 02e448b9ah
+dd 040535829h
+dd 0f32c6b8dh
+dd 066dc408bh
+dd 0b5c93e0fh
+dd 071bebc5dh
+dd 0c5be4942h
+dd 07fbe1debh
+dd 0d2ac656dh
+dd 0b5855599h
+dd 094d03e67h
+dd 0115e1624h
+dd 05899fb41h
+dd 0a0846086h
+dd 086bb1221h
+dd 03b83c628h
+dd 0679d004dh
+dd 06202a059h
+dd 0a7a4e53bh
+dd 09cf49e3eh
+dd 085424364h
+dd 089babd3dh
+dd 0fe464f73h
+dd 02fc1cb20h
+dd 0e83e42f2h
+dd 0163bd372h
+dd 0bba02330h
+dd 014732df4h
+dd 036f838d3h
+dd 047c6f8f3h
+dd 056f098bch
+dd 0bb41cbb3h
+dd 0cc914a7ch
+dd 0b9ff7debh
+dd 0411ee306h
+dd 0227743a2h
+dd 09e2ef004h
+dd 0c1347030h
+dd 04a9a4ce5h
+dd 054dcd14dh
+dd 0a12a595eh
+dd 07809a185h
+dd 011a226d0h
+dd 0daa86129h
+dd 05d6fa112h
+dd 09349387ah
+dd 0edd26335h
+dd 070908362h
+dd 057a1d0e8h
+dd 01bb6497bh
+dd 00fcf2d99h
+dd 0fc9eda9bh
+dd 092fdd553h
+dd 0d3c8a0d8h
+dd 03118d6b6h
+dd 088e5c037h
+dd 02fb85c28h
+dd 0af4b7950h
+dd 0526791dfh
+dd 08491acf7h
+dd 07426c8d0h
+dd 0088e6fd8h
+dd 0f6be57f9h
+dd 022cd82c9h
+dd 0ed25a416h
+dd 055ae5752h
+dd 05c295448h
+dd 02b18fac6h
+dd 08a63c922h
+dd 0585c8b01h
+dd 063fa76b9h
+dd 07c4103c6h
+dd 0cb20424eh
+dd 0da688b73h
+dd 0c4affcdfh
+dd 025a480f1h
+dd 04b92132ah
+dd 0cba5491eh
+dd 0c569cd21h
+dd 0bb2ba96ch
+dd 00c7aeb47h
+dd 06122be7ah
+dd 0b9b70824h
+dd 0285525feh
+dd 09c125d1fh
+dd 01c852652h
+dd 0c7f6fc2eh
+dd 05608fd6ah
+dd 0b8e227bdh
+dd 06a57961ch
+dd 061affccbh
+dd 0a1e9121ch
+dd 0ab4b55c3h
+dd 06d79e99bh
+dd 0302691ebh
+dd 00a186c32h
+dd 0f56f5d91h
+dd 0f892e1f1h
+dd 0749447e8h
+dd 0fa6c2bb4h
+dd 0686b022ah
+dd 047798070h
+dd 002e25ed7h
+dd 0fcd2f522h
+dd 05c31efd6h
+dd 0b874e4f6h
+dd 0ab63723eh
+dd 05951e220h
+dd 0a4fe2fa8h
+dd 0cbe780feh
+dd 0d27a03edh
+dd 00995d78eh
+dd 0a920e262h
+dd 0bc0d46e7h
+dd 0e33d6dafh
+dd 02e2b0efah
+dd 0b132c6f2h
+dd 0c80f9e92h
+dd 0ff9431a0h
+dd 027b0d255h
+dd 0c001248bh
+dd 02333e0eah
+dd 0e12bec5ah
+dd 0e5cbf5b1h
+dd 0efb08effh
+dd 0c0ecbe20h
+dd 03b615c2ah
+dd 0f682945ch
+dd 08be9340fh
+dd 0b1383004h
+dd 001fc5f7bh
+dd 00f6ac117h
+dd 046010f4eh
+dd 070dfc3f0h
+dd 0bdaf822ah
+dd 078177d8dh
+dd 0a33488dah
+dd 006998858h
+dd 083ef3752h
+dd 016e9adf2h
+dd 0b7831177h
+dd 09be08845h
+dd 05c58ce84h
+dd 054bf88fbh
+dd 04926e26fh
+dd 006fa0f70h
+dd 09f9ee007h
+dd 08b57d1cah
+dd 0251d647ah
+dd 05eb59397h
+dd 0cc8cb80ch
+dd 0262283bdh
+dd 05c56f058h
+dd 098215446h
+dd 069024136h
+dd 01b2884c5h
+dd 02ff02326h
+dd 04eb5effch
+dd 0194ed5e1h
+dd 03a1ef010h
+dd 043d992cfh
+dd 0348c6c70h
+dd 01160ad66h
+dd 0f61495feh
+dd 0550e5e49h
+dd 0c40bb8f3h
+dd 0599a608fh
+dd 0f1b5c27bh
+dd 0b95fcc89h
+dd 0da5d619ah
+dd 02abea9cah
+dd 088982e3eh
+dd 0d9159a55h
+dd 0737b3a96h
+dd 098a759dch
+dd 0bf2c18a6h
+dd 0a709362bh
+dd 0b110f926h
+dd 00d305affh
+dd 01a07f8aeh
+dd 0ffcfb400h
+dd 0896c072ch
+dd 09659dceeh
+dd 07e2ff9fah
+dd 012293ddeh
+dd 006822d12h
+dd 029829d7ch
+dd 02b703334h
+dd 074f12798h
+dd 0c7db7093h
+dd 051e7dc48h
+dd 0de5c8a11h
+dd 009b092bch
+dd 0fcfbe49fh
+dd 07fee3da6h
+dd 0db8850ebh
+dd 009641a3dh
+dd 0dd03a4d0h
+dd 0f15d0857h
+dd 0f6e3d792h
+dd 08022dfbeh
+dd 00902e201h
+dd 06ea23fc9h
+dd 0f7d9f7a5h
+dd 06d9ba167h
+dd 0a627394ah
+dd 0747bd121h
+dd 02cbcf6a7h
+dd 0d1eefb87h
+dd 0a027803fh
+dd 0fc685aa0h
+dd 0044c0c25h
+dd 0c47d8243h
+dd 0552046bbh
+dd 059c2d28eh
+dd 07ed2f052h
+dd 086e891bah
+dd 05b6e4d6ch
+dd 00f5b2d4ch
+dd 0d070570ch
+dd 0457958f2h
+dd 0718d04dch
+dd 03bb84e2bh
+dd 00634e270h
+dd 0f4b19e30h
+dd 0b7ec9a1ah
+dd 02ecb99d0h
+dd 0aad119f1h
+dd 03808de2eh
+dd 035268824h
+dd 094ebc51dh
+dd 093094eceh
+dd 00f52fffch
+dd 0f025816ah
+dd 0072dfb11h
+dd 0fa1823bbh
+dd 026c1cd67h
+dd 032591caeh
+dd 070e08d38h
+dd 0cbcd7850h
+dd 004b485c2h
+dd 064d1dfcbh
+dd 04590f4e2h
+dd 08b27f342h
+dd 05a2f3fc7h
+dd 028620d00h
+dd 0004dddf0h
+dd 0f82ea728h
+dd 0852be6f3h
+dd 0e28cf42ch
+dd 0229b0d84h
+dd 00f2e0f15h
+dd 094a07a74h
+dd 0ee3879c9h
+dd 01a245a46h
+dd 0ff40ec21h
+dd 05d3971c7h
+dd 054d9c5e3h
+dd 028eff0eeh
+dd 0ee0ed25bh
+dd 0097d14f9h
+dd 09cff9ccah
+dd 03f7085f1h
+dd 0c733db46h
+dd 0010192a9h
+dd 07a2c6680h
+dd 043fc88bbh
+dd 011e169e1h
+dd 05c4a7d0dh
+dd 0f7a33d39h
+dd 048121958h
+dd 09d8dd7ffh
+dd 04188a6cch
+dd 0afe39deah
+dd 0f3a776ebh
+dd 0795fa4b1h
+dd 0bac45acbh
+dd 06f9e3c6eh
+dd 033961718h
+dd 00f0b9d60h
+dd 06b8d4aabh
+dd 06c3e18cdh
+dd 074f785efh
+dd 00eba4828h
+dd 01e429e3bh
+dd 01cc1bcc6h
+dd 05b9e2924h
+dd 0cc4dd52fh
+dd 0d77d3d4ah
+dd 00d20f598h
+dd 0a18fde8eh
+dd 038c539c9h
+dd 0719d4e0ch
+dd 01cdd5725h
+dd 09d11cc5fh
+dd 048db7300h
+dd 0f585d0a8h
+dd 085bc65c1h
+dd 022802d14h
+dd 062d0a6ebh
+dd 09a075dbbh
+dd 032bd8756h
+dd 04dce5394h
+dd 047db8d9ah
+dd 0da73dc7ch
+dd 049c22498h
+dd 08263844ch
+dd 0bad7ab3eh
+dd 0d0ddaf61h
+dd 00eb4d697h
+dd 0356aac41h
+dd 08952582eh
+dd 058d12607h
+dd 0a3f0e5f8h
+dd 0ee8e50b6h
+dd 0a875676ch
+dd 032dd16cbh
+dd 0bf45ce1bh
+dd 01731739fh
+dd 0704bbaffh
+dd 0b8634f18h
+dd 0e0a09347h
+dd 009ef8e41h
+dd 01129a228h
+dd 066f7434ch
+dd 09bd83563h
+dd 0c29667deh
+dd 070906c07h
+dd 0fbc15e21h
+dd 0a3cf20e0h
+dd 006042a1dh
+dd 03058aca9h
+dd 03c88c5e5h
+dd 065558cb8h
+dd 0a8bdc521h
+dd 0ea46ccbdh
+dd 00df194c9h
+dd 0af13a7b3h
+dd 09248f0ebh
+dd 0f38eceb7h
+dd 0068dc52ch
+dd 02b96dc12h
+dd 03ac575f0h
+dd 09c464b18h
+dd 07d7a6f4bh
+dd 0c8fbcddfh
+dd 066cf5c81h
+dd 0786799e1h
+dd 0e2de22cbh
+dd 0850f894bh
+dd 08428f3aah
+dd 09b02ff0dh
+dd 0b30e83b7h
+dd 09282d1d8h
+dd 00fd35814h
+dd 009c93275h
+dd 00bfa610eh
+dd 01f533a31h
+dd 0b46dca69h
+dd 09f12b02bh
+dd 03a9a59b7h
+dd 033a5db80h
+dd 03c686c4ah
+dd 04f1aa1fdh
+dd 0e64e8a79h
+dd 05a981864h
+dd 0ae1a908dh
+dd 09f3b1c63h
+dd 0d270f243h
+dd 069210501h
+dd 094806e04h
+dd 026bdf4a4h
+dd 00d4c3cb5h
+dd 00d93ed4ah
+dd 04d7c1b54h
+dd 029c126a1h
+dd 0b4e8db46h
+dd 00b3f8242h
+dd 0a9bd97e2h
+dd 0b25cabcch
+dd 0a46dac30h
+dd 05f0a614ah
+dd 070fc2171h
+dd 0b68da730h
+dd 022afcce0h
+dd 07221a7aah
+dd 02e53185ah
+dd 0c37e99adh
+dd 07883b677h
+dd 04b00c6f3h
+dd 0419198fdh
+dd 07ede89f1h
+dd 076076922h
+dd 0cfa3540bh
+dd 032863046h
+dd 05933c084h
+dd 0f999653eh
+dd 0c3a42824h
+dd 0161e7adah
+dd 03b89efe0h
+dd 050a6b1bah
+dd 00ddbf410h
+dd 0ec8ac903h
+dd 0578862afh
+dd 0c8cd060bh
+dd 03f15097ah
+dd 0f4cbfad2h
+dd 0a636b77dh
+dd 090cd673ah
+dd 06f232213h
+dd 0669de80fh
+dd 0070d5c37h
+dd 05740c278h
+dd 06f5ee0f5h
+dd 0191db8c0h
+dd 0bbd1ecd6h
+dd 00e8208ddh
+dd 0fdc2f76ch
+dd 0a0e88ee4h
+dd 0546ae861h
+dd 0d138571ah
+dd 073e60149h
+dd 083252f27h
+dd 02ce58a93h
+dd 0773ec09ah
+dd 009b9bb53h
+dd 0d30e7d3ch
+dd 0d761230ch
+dd 0dca11a74h
+dd 07c08f1ceh
+dd 052b515b2h
+dd 06d2dad61h
+dd 0b925ed16h
+dd 0c690d182h
+dd 08fef5349h
+dd 06b3fa61bh
+dd 046ec3628h
+dd 094defdc9h
+dd 088f1af9bh
+dd 062e30c73h
+dd 03bbd7170h
+dd 0c2c04891h
+dd 0698a326dh
+dd 086898266h
+dd 0aa8a5ac0h
+dd 0eac1990dh
+dd 07a2280e0h
+dd 0bac3c6a6h
+dd 001c4e037h
+dd 0a6b9bb9bh
+dd 046424d30h
+dd 01aa57a77h
+dd 0c7e95621h
+dd 008d1e4deh
+dd 0bc237a33h
+dd 0ddbdab67h
+dd 0910afb33h
+dd 0298b11e7h
+dd 0aebe8fc1h
+dd 067e6445fh
+dd 0e4400d71h
+dd 0c52e0fdah
+dd 09cc41f8fh
+dd 0b474ba5bh
+dd 0f2d66178h
+dd 0468ac5d9h
+dd 0fd87ee6bh
+dd 0530f74c6h
+dd 003593e29h
+dd 0eb5ecf6dh
+dd 0bd2a06d9h
+dd 0e4abced6h
+dd 008579512h
+dd 03d9cb79ch
+dd 0cdb47e7eh
+dd 07cdcf397h
+dd 0a11998c0h
+dd 04062660bh
+dd 0d7f55369h
+dd 0c5bb0c33h
+dd 00f8061f4h
+dd 07154f20eh
+dd 0e5601ed9h
+dd 03b774e9eh
+dd 0cd060bc6h
+dd 0b2ec62b3h
+dd 09ff54646h
+dd 08a9052b7h
+dd 085ab72d5h
+dd 04b3e8a38h
+dd 050d9a7d6h
+dd 023d6d7bbh
+dd 04adb593dh
+dd 03bac945bh
+dd 053dca97dh
+dd 0bc5ff0ddh
+dd 0351526c5h
+dd 01f4a3461h
+dd 03aab40d9h
+dd 0c897f7b0h
+dd 07f0a7a55h
+dd 0f13fe080h
+dd 0c559f784h
+dd 0cd8ca2b9h
+dd 0717b6eadh
+dd 05851601dh
+dd 0263089fch
+dd 0bfa5488ch
+dd 0ff208467h
+dd 0d951a85ah
+dd 075a2f72ch
+dd 0f1f35802h
+dd 0bf66b3cdh
+dd 055fb95b2h
+dd 09d90d41fh
+dd 02ead9831h
+dd 0e88d2c33h
+dd 0b395ed80h
+dd 0b6075a91h
+dd 0e8b1849bh
+dd 071d7b2fbh
+dd 069eee3e1h
+dd 068fab928h
+dd 0432c2567h
+dd 01a1722f2h
+dd 02f623e6ah
+dd 066397c4eh
+dd 0c648cde8h
+dd 0abce89dch
+dd 0b81000deh
+dd 0ebfbc4f2h
+dd 0f2f1a069h
+dd 04fdede5dh
+dd 08fc7c67ch
+dd 057204f9fh
+dd 067520dbch
+dd 0b8863642h
+dd 07f61fd57h
+dd 043b34099h
+dd 05a136d31h
+dd 00db83e1dh
+dd 03c14b706h
+dd 0620e87a4h
+dd 099c4737fh
+dd 053447cbah
+dd 0cc600517h
+dd 0c69623f8h
+dd 07984fa3ah
+dd 06a68b144h
+dd 0415be985h
+dd 0fb270658h
+dd 043cbf4a9h
+dd 091de8e13h
+dd 09cab2c1bh
+dd 0ebcec047h
+dd 00a6fa324h
+dd 0893aaaa9h
+dd 0abe43dbah
+dd 0041a9508h
+dd 096998dddh
+dd 093654dfdh
+dd 04bfe8020h
+dd 007f7d869h
+dd 0f3358f2dh
+dd 0243b031bh
+dd 08c96142fh
+dd 0d633c74dh
+dd 08b60fbf1h
+dd 0dd06cbfeh
+dd 030258cafh
+dd 0936fa5d4h
+dd 0935514c6h
+dd 00c5c5e7bh
+dd 09f51836eh
+dd 0a20ea6a5h
+dd 0b0d12480h
+dd 0dadad67bh
+dd 07917484bh
+dd 0a3c1a25dh
+dd 01580f0c5h
+dd 0e1d97808h
+dd 082dfc462h
+dd 0611f1c93h
+dd 086354a42h
+dd 068585a2dh
+dd 0ae4c2e76h
+dd 018039b20h
+dd 0f5fd9a35h
+dd 0ef7196b2h
+dd 071c88bc5h
+dd 06b58e023h
+dd 04cb2378ah
+dd 037f18fbfh
+dd 0427b120ch
+dd 0358c9c0bh
+dd 0a1c461e1h
+dd 09287a43bh
+dd 08f2b5f2eh
+dd 072b59ff0h
+dd 0f5495314h
+dd 0bde0e305h
+dd 07191a598h
+dd 0b0caaf18h
+dd 04b4feabah
+dd 073ee7146h
+dd 069b179deh
+dd 0df2240e1h
+dd 04da693c4h
+dd 058fbbe03h
+dd 069ff058ah
+dd 06e99c754h
+dd 0b5a3cd48h
+dd 0dc7f2088h
+dd 029e36107h
+dd 04083acd9h
+dd 0410404ach
+dd 0b6741f14h
+dd 083753b9bh
+dd 03eaca089h
+dd 00a56b07ch
+dd 0290ad7fah
+dd 0b8610112h
+dd 0bca3690bh
+dd 04afb1a2eh
+dd 0d447119ah
+dd 0de10bb8ch
+dd 035c5e0d5h
+dd 031ba010bh
+dd 0019c380eh
+dd 0aa4da5deh
+dd 00bf3ad95h
+dd 0bb9335ffh
+dd 05660ecabh
+dd 02376a054h
+dd 0a6d6a11ah
+dd 06eb61009h
+dd 00db20d2bh
+dd 0cd48420dh
+dd 0f058d8d4h
+dd 03747f56ah
+dd 0a3d3e354h
+dd 0040e6a45h
+dd 0d1f453bbh
+dd 0f736e713h
+dd 01859f5bdh
+dd 021bc6032h
+dd 021a638a5h
+dd 0c055ffc2h
+dd 07ba29a11h
+dd 0fec2cbcdh
+dd 0c67b9b52h
+dd 06fcf9fabh
+dd 0ccfee866h
+dd 02777be96h
+dd 026fc2e7fh
+dd 012fc38d6h
+dd 04ee4b7e3h
+dd 091b70d7fh
+dd 0755cecb1h
+dd 0a2a8a43eh
+dd 04b9bc698h
+dd 063c27464h
+dd 09733c27bh
+dd 057192a74h
+dd 0538ad436h
+dd 0d56fc0a6h
+dd 0c70540d2h
+dd 0b56ebb86h
+dd 0a4dc3dd0h
+dd 0bf543a86h
+dd 03602ee03h
+dd 00bca2097h
+dd 0a0cb252eh
+dd 0932a87bdh
+dd 00c075003h
+dd 0b87041b5h
+dd 084a121beh
+dd 0b840f2e8h
+dd 0a5345a78h
+dd 058dd1609h
+dd 05da32b5ch
+dd 0617bd29bh
+dd 05d3ffccah
+dd 069935cf7h
+dd 0e15ee8c7h
+dd 03069d8ddh
+dd 064f09d5ah
+dd 02c8ccf6dh
+dd 02a0e582dh
+dd 030a16945h
+dd 0135fca94h
+dd 0259901a9h
+dd 0f4e6234ch
+dd 0312b417ch
+dd 061f69378h
+dd 040f45530h
+dd 090e093fdh
+dd 08276d69dh
+dd 0d5c95e7ah
+dd 05a1c6d1ch
+dd 08d59d564h
+dd 04eac3dcfh
+dd 01c34b252h
+dd 06debf86ah
+dd 04131930ch
+dd 0313c74f4h
+dd 0049f3541h
+dd 0565b320ch
+dd 013dda087h
+dd 01b39e9dah
+dd 0cbfa24f2h
+dd 0f63d55beh
+dd 0137a4187h
+dd 0a16ab3bch
+dd 030ccbea8h
+dd 062f04498h
+dd 0b2b53f43h
+dd 08ba82266h
+dd 086d3fc8bh
+dd 0d716b7d0h
+dd 064a3d86eh
+dd 014ffc4eah
+dd 02d44ff0eh
+dd 00eb0ba27h
+dd 0be17b3c8h
+dd 033ddcd3eh
+dd 0c3a40521h
+dd 00e359a90h
+dd 00d4a0a68h
+dd 0b762a9aeh
+dd 0bf518da0h
+dd 09df49aefh
+dd 06bdde85ah
+dd 03635f2a9h
+dd 076278b6ah
+dd 0c5aa7bb4h
+dd 09ac65750h
+dd 073d2ce97h
+dd 0919dd324h
+dd 04610e8c4h
+dd 088d8246ah
+dd 06577da23h
+dd 05b73c5a8h
+dd 091189ea1h
+dd 0837bdc1fh
+dd 0763fb398h
+dd 03d9406abh
+dd 0a1586dcch
+dd 0e4425e51h
+dd 038ca1cb0h
+dd 0595996cfh
+dd 020f0dbbah
+dd 0f113388fh
+dd 09237c11fh
+dd 004c134bah
+dd 0f9abd809h
+dd 0e4d074dfh
+dd 00342201ch
+dd 0a0b8ec6ah
+dd 09f4e02c8h
+dd 03381ec97h
+dd 049457667h
+dd 0c625ad6dh
+dd 02decfe1ah
+dd 01ee675b6h
+dd 0211a85d7h
+dd 0a3761b3ah
+dd 07b58c72ah
+dd 08b23b812h
+dd 03673a254h
+dd 0ca1e50b4h
+dd 015e71891h
+dd 069598bc3h
+dd 0154cb21bh
+dd 0b4eb16fbh
+dd 0e120091dh
+dd 0f02fe75eh
+dd 0dc722319h
+dd 038216f7ch
+dd 0bd236314h
+dd 0dff1eb0eh
+dd 07d2cf91dh
+dd 0f4ad4253h
+dd 09e8d2e9ah
+dd 0abd77160h
+dd 0c6a1824ah
+dd 022d26c01h
+dd 044312af4h
+dd 0c98c2564h
+dd 02d272e8bh
+dd 04fd73aabh
+dd 032059dc0h
+dd 002541306h
+dd 0f9b279f7h
+dd 0abd940a1h
+dd 03c973545h
+dd 043e8ce5ah
+dd 0995c9df0h
+dd 092092096h
+dd 04c13245bh
+dd 0aed91c21h
+dd 04709fb00h
+dd 0d38cb831h
+dd 08992e3c3h
+dd 0edc7df6eh
+dd 0fa9dd550h
+dd 0763fc1edh
+dd 06af4611ch
+dd 09dce6f51h
+dd 004d91cadh
+dd 0509a6bc4h
+dd 09a4bb9f6h
+dd 0eb845efeh
+dd 00d1d0dc9h
+dd 02be10cf5h
+dd 046e87e56h
+dd 0061bafb8h
+dd 0e90fa7dfh
+dd 03924b85dh
+dd 0b4ff5ac6h
+dd 0110ed8d4h
+dd 0f0206289h
+dd 064359f3dh
+dd 0add328cah
+dd 05aaa3121h
+dd 0b10183c2h
+dd 0f229ee3fh
+dd 076e1482ch
+dd 0e0dbce4fh
+dd 09f354a65h
+dd 0b6a0c0a5h
+dd 0c5ee378bh
+dd 09f4aa9e5h
+dd 01cda6a6eh
+dd 017204d98h
+dd 09cbcd24dh
+dd 062fc7a61h
+dd 01ae2fc26h
+dd 050067874h
+dd 068e3f141h
+dd 053b70bebh
+dd 022bfa822h
+dd 0896ec957h
+dd 0c9d43b98h
+dd 051f78c26h
+dd 073595fdah
+dd 00e44f5e0h
+dd 07159d68ah
+dd 01276d76bh
+dd 0aeb83701h
+dd 08ac3b9f9h
+dd 0f89de5d4h
+dd 0ef5e16ebh
+dd 04771bea7h
+dd 081b79ee5h
+dd 0f55b3e32h
+dd 0d9554394h
+dd 0cac09bb7h
+dd 0befb4bb6h
+dd 0be662f8ch
+dd 0f37238cch
+dd 0e0a6b0dch
+dd 026017084h
+dd 0d11a5172h
+dd 02386d90ah
+dd 019aea1bdh
+dd 006f6960ch
+dd 03946ce26h
+dd 018160c72h
+dd 0bc8ef0ffh
+dd 05d99ccach
+dd 0bd41be81h
+dd 0c4da44bbh
+dd 015fc9503h
+dd 065183a61h
+dd 0ab5fe007h
+dd 0504c2f59h
+dd 0b280c031h
+dd 0aea32c14h
+dd 07d68f010h
+dd 073780464h
+dd 06d26e61fh
+dd 0fbde01dch
+dd 00b8a0d80h
+dd 0efe6bab6h
+dd 0698811cbh
+dd 0ae93af38h
+dd 008c78c21h
+dd 0b7aac7b6h
+dd 0aefbc88dh
+dd 0e7d8b28ch
+dd 00bc39b4fh
+dd 0caaa539fh
+dd 06837f31ah
+dd 07ddb859ah
+dd 08aa391e4h
+dd 060bddf22h
+dd 06500cb9fh
+dd 0734fe669h
+dd 0031a792fh
+dd 0180d2f9ah
+dd 05b49662ah
+dd 0f6f51d3ch
+dd 0e1f2638eh
+dd 0a3ec4eceh
+dd 047b12bcdh
+dd 02c292c05h
+dd 06f884c69h
+dd 0df51ec7dh
+dd 0d428b06dh
+dd 02ac4bcbch
+dd 06192e8f0h
+dd 013c25b0fh
+dd 0864c67c1h
+dd 05306261bh
+dd 04747c5cbh
+dd 0f6da9e6eh
+dd 0f63c0da6h
+dd 0d900cd6fh
+dd 01fc29490h
+dd 003872cc1h
+dd 0f5147539h
+dd 085fe6264h
+dd 04d9203a7h
+dd 02f5894d3h
+dd 0d4c11c97h
+dd 0be04995ah
+dd 00c766c8ah
+dd 05ff435f8h
+dd 0b1bf3049h
+dd 0d82fd196h
+dd 04b2b049bh
+dd 0eb788593h
+dd 0fffd5a33h
+dd 0d8ed1731h
+dd 00434569ch
+dd 06af60c09h
+dd 06128b694h
+dd 02ddd304ch
+dd 00f292657h
+dd 0c51e1b39h
+dd 099d7523ch
+dd 02be48a31h
+dd 06b4845b6h
+dd 0fb184a73h
+dd 017c12b57h
+dd 03b489b9dh
+dd 00cc581fdh
+dd 0f6028bc1h
+dd 0f1c982a7h
+dd 0c03296b1h
+dd 0f4a6bdf2h
+dd 0583c8acfh
+dd 09e725a3bh
+dd 0bc152427h
+dd 084e9029ch
+dd 0d0f13b5dh
+dd 08c69b6eeh
+dd 04e1dba83h
+dd 09d7cb39eh
+dd 0968b0854h
+dd 0b73ccb08h
+dd 08abb91fbh
+dd 0bf43e4a4h
+dd 0c3b1d2e8h
+dd 0e61bb709h
+dd 0b46ec17bh
+dd 03c05404bh
+dd 04cb0b678h
+dd 0892237b5h
+dd 0fe0943d3h
+dd 0985c0279h
+dd 0dad2a1abh
+dd 045874414h
+dd 05f1e9cf7h
+dd 05b9533c0h
+dd 05ce68c9ah
+dd 0bee5ba1bh
+dd 0cc959f2bh
+dd 09847cd4bh
+dd 08ea7bb11h
+dd 0fc28c6f1h
+dd 0268e8670h
+dd 0cdea61f6h
+dd 06f286461h
+dd 0b82230a8h
+dd 07d16eeb4h
+dd 077d2f817h
+dd 00bb7a988h
+dd 07f6a9d81h
+dd 0e734b3f1h
+dd 0d22c449ah
+dd 04d4e6b6bh
+dd 026fb2455h
+dd 0fa7df19fh
+dd 035323317h
+dd 08251fd51h
+dd 0eae4da3ah
+dd 04c1b3221h
+dd 02a8796a7h
+dd 06c5470bbh
+dd 04965db49h
+dd 0322c55e1h
+dd 0f58b6777h
+dd 065670f59h
+dd 039e91811h
+dd 048d800a5h
+dd 0e70e4a9fh
+dd 0c7e5091eh
+dd 035011f39h
+dd 0ec5790dbh
+dd 08a7a4d87h
+dd 07586e70dh
+dd 04af5f37eh
+dd 0ca994696h
+dd 042874dbah
+dd 065675ea4h
+dd 078124345h
+dd 0959adfb3h
+dd 03873f6cah
+dd 0bd324ef6h
+dd 00f2ff6c8h
+dd 0394ca326h
+dd 0640e6e4fh
+dd 0b84210f8h
+dd 067d90b2ch
+dd 085efccf2h
+dd 0a62adf36h
+dd 0e31d3d57h
+dd 0517a390fh
+dd 0e7678e59h
+dd 0c5c9df88h
+dd 081be2ba4h
+dd 036f6365fh
+dd 0399d0b32h
+dd 0c57e3d24h
+dd 06600a54ch
+dd 01aecf572h
+dd 036ffa33bh
+dd 03f1dd6dah
+dd 023b9a2f4h
+dd 0b2ca3057h
+dd 003923ad6h
+dd 01a9082a3h
+dd 0894b8d6ch
+dd 0b46c3372h
+dd 00073dfcah
+dd 03010e653h
+dd 07621a309h
+dd 0efc46bf3h
+dd 070874e30h
+dd 08cc98f7eh
+dd 094ef0996h
+dd 0ee65c9b3h
+dd 05f446908h
+dd 0e82399cdh
+dd 03bc3ea7ah
+dd 02ebf01d4h
+dd 0784dda7dh
+dd 0f4a32b94h
+dd 08eeae543h
+dd 01c18207ah
+dd 04330f98ch
+dd 0ce285364h
+dd 0acfc42aeh
+dd 017bf33dah
+dd 0a3786284h
+dd 0b4c92501h
+dd 03befca62h
+dd 0f2d95ce5h
+dd 0c7cd4070h
+dd 02b903146h
+dd 0dfaa38d2h
+dd 0c9a4da86h
+dd 07a9afaa4h
+dd 00227d8a3h
+dd 0831ce2d2h
+dd 0162aef0ch
+dd 06edd844ah
+dd 0c122eb56h
+dd 00553bfbah
+dd 041d5e761h
+dd 016728594h
+dd 0e584e060h
+dd 0f1a06200h
+dd 0dddc5e1fh
+dd 00b9b3403h
+dd 0301f5d49h
+dd 0f40bd4dfh
+dd 07d1fd739h
+dd 03fb25bf8h
+dd 05baf35edh
+dd 076a3f5ddh
+dd 000fc8175h
+dd 036a16b5eh
+dd 0fda9a204h
+dd 036b61446h
+dd 0cf2faff0h
+dd 02614d538h
+dd 0383e82a2h
+dd 06c5c871bh
+dd 033f82157h
+dd 0e421ed9eh
+dd 0a510b2dch
+dd 0207c4bbbh
+dd 01b566259h
+dd 04026e2f3h
+dd 0d7eec8d9h
+dd 0cea1890fh
+dd 0333458f5h
+dd 0a02bb939h
+dd 07a32358fh
+dd 056e6c166h
+dd 004956b63h
+dd 0cdf4c66fh
+dd 024c0f444h
+dd 04ba2fccch
+dd 020db1151h
+dd 01292c376h
+dd 06f85e9dfh
+dd 0728f47a9h
+dd 0a1fc70eeh
+dd 038f4fab5h
+dd 07631904ah
+dd 0b6fe3c2eh
+dd 08a372287h
+dd 042266e1fh
+dd 082d635cbh
+dd 019f4e852h
+dd 0f3532d8ah
+dd 0d9f53e41h
+dd 085f490e6h
+dd 0e45309d3h
+dd 0619c3f1eh
+dd 048385ca4h
+dd 02a41735fh
+dd 0c7b61ffah
+dd 04a08af3ch
+dd 0f9ded1dch
+dd 0eac71dc7h
+dd 0625cc945h
+dd 01525969ch
+dd 0900aa166h
+dd 0bf58ef15h
+dd 00aa5a792h
+dd 0d8288e32h
+dd 0b1d9eb84h
+dd 051776b19h
+dd 0d0603e1ch
+dd 0a00856e5h
+dd 0ac061e93h
+dd 07e5b90d9h
+dd 0e80a996dh
+dd 03c147d53h
+dd 0f56afa5bh
+dd 0f7cc6917h
+dd 06281c4d0h
+dd 03685dd8eh
+dd 04564c52ah
+dd 09f296072h
+dd 0c722ca9eh
+dd 0a228baefh
+dd 00c998bc6h
+dd 03392de83h
+dd 02cf24541h
+dd 001388476h
+dd 017b5c868h
+dd 04a59f6ffh
+dd 0f0053873h
+dd 099cc0632h
+dd 0f5197ed6h
+dd 0ab82b4a5h
+dd 0efbe2a22h
+dd 003ea4190h
+dd 035017389h
+dd 0ac1fa64eh
+dd 059e1eef0h
+dd 0084d665fh
+dd 0099efdd8h
+dd 0cb1b31b5h
+dd 07b5d8941h
+dd 0a0c21e6ah
+dd 09d61cc14h
+dd 03d3dd978h
+dd 0178c95aah
+dd 0a9f50ee2h
+dd 0fb673599h
+dd 0eb9262adh
+dd 06a2b2138h
+dd 06812ee61h
+dd 0d58e1ca2h
+dd 01e04f62ch
+dd 019e00009h
+dd 084a6441ch
+dd 0c5db8a53h
+dd 0d503fbd0h
+dd 04653723bh
+dd 0ab9e5c44h
+dd 0f2332880h
+dd 03e8e130ch
+dd 041a4289dh
+dd 03af5c1bdh
+dd 0a3265acdh
+dd 0b30ed350h
+dd 0f2a173cbh
+dd 0d8e0ca31h
+dd 060e7badeh
+dd 0f8b70374h
+dd 05e8ac69dh
+dd 0d0408319h
+dd 0eab9547fh
+dd 0e082632eh
+dd 019ff871eh
+dd 0619c3058h
+dd 08eef5f90h
+dd 0e58d8c3bh
+dd 00900055eh
+dd 0f1216a50h
+dd 05036f04bh
+dd 04cdf70b1h
+dd 035c34071h
+dd 0142f1c1bh
+dd 0fef560edh
+dd 035f9669bh
+dd 09d219ab8h
+dd 02d514657h
+dd 02f72c50bh
+dd 05c3d7799h
+dd 09a62ad3bh
+dd 00cb97d20h
+dd 08d630983h
+dd 09d3c8c30h
+dd 0b7279d9dh
+dd 030526245h
+dd 0137738a2h
+dd 08ddfa919h
+dd 001cfa45eh
+dd 03891de99h
+dd 0a329ecbeh
+dd 0e569a394h
+dd 09740c3f1h
+dd 09caec718h
+dd 083062402h
+dd 08bf8dc5ch
+dd 03de39da4h
+dd 0b6511d51h
+dd 0d838399fh
+dd 0f541eca1h
+dd 0921fbc84h
+dd 02baec46dh
+dd 0f0576869h
+dd 084bfc7ach
+dd 059a8d5f9h
+dd 05bdd61a8h
+dd 03f877076h
+dd 0657825e4h
+dd 0fbcd5059h
+dd 06f974b02h
+dd 056b80115h
+dd 0989a6558h
+dd 06d9237b5h
+dd 0eba1d6d0h
+dd 090be8255h
+dd 020b0e65fh
+dd 06f695022h
+dd 0a932252ch
+dd 0a5f5ee02h
+dd 018344eabh
+dd 0f9fad49fh
+dd 0f66adb3ch
+dd 016a1fd59h
+dd 067f02998h
+dd 089b7a6a1h
+dd 038e66508h
+dd 074e8f1cch
+dd 0649bb03eh
+dd 0105c10aeh
+dd 028ebaebbh
+dd 0362da88ah
+dd 0894b72dch
+dd 07150fddeh
+dd 079cd9ad3h
+dd 0bc9010f7h
+dd 00c721b47h
+dd 0850bad87h
+dd 0096e41ebh
+dd 0c96a5443h
+dd 0854a3b8ah
+dd 0fdbefd28h
+dd 07a974b7bh
+dd 0415c0f6fh
+dd 08604b427h
+dd 0a95d9dd0h
+dd 02c092ebeh
+dd 05476c8a2h
+dd 0c5824aaeh
+dd 09a22438fh
+dd 0bf2405a8h
+dd 0c0fbde12h
+dd 06235ddfbh
+dd 05523d9d3h
+dd 0536f04c0h
+dd 01bfc8433h
+dd 0e0e32040h
+dd 078b77de7h
+dd 0338473f2h
+dd 03c10b31dh
+dd 034d6217dh
+dd 0fd4ed5a5h
+dd 0c9c01cb4h
+dd 029f6b290h
+dd 058b798dah
+dd 032108358h
+dd 029600ae3h
+dd 0f9dd11b4h
+dd 052b919c4h
+dd 063beb18bh
+dd 04dbcf703h
+dd 01eb61ee7h
+dd 05425d8e9h
+dd 097d8b626h
+dd 0de0c9e9eh
+dd 08ebdee7fh
+dd 07da044feh
+dd 021eb0422h
+dd 01f38eb74h
+dd 06633c151h
+dd 0de019812h
+dd 01340a2d3h
+dd 0631297afh
+dd 0846ec994h
+dd 0c5f183a8h
+dd 00926f45fh
+dd 037f2f09ah
+dd 00a4a5677h
+dd 01f597d6eh
+dd 008e3aeefh
+dd 05b1e22f1h
+dd 0171758a6h
+dd 0ff18cf5bh
+dd 0ccbee12fh
+dd 032b27468h
+dd 04320c113h
+dd 09d839ad9h
+dd 040bd1445h
+dd 0673043deh
+dd 02a1146efh
+dd 0ac7c0763h
+dd 05538926eh
+dd 0aa434d0ah
+dd 06c904fd0h
+dd 0411c87d4h
+dd 0f5d28822h
+dd 0d95dfe1fh
+dd 044669a51h
+dd 0b534a1f4h
+dd 06123b403h
+dd 0c331836fh
+dd 0b616df7bh
+dd 027bf28e2h
+dd 0dddfbc03h
+dd 09adef70fh
+dd 0f9578ad9h
+dd 0d2163f9fh
+dd 0dbbc5c68h
+dd 082328e9dh
+dd 095f3cc63h
+dd 0a9b6d873h
+dd 0b20b994ch
+dd 091cc7720h
+dd 0efd6467ah
+dd 03a63fcf2h
+dd 0c1cc6ec0h
+dd 09d477124h
+dd 0a0518697h
+dd 0c505ff17h
+dd 03d48f363h
+dd 0b59507c4h
+dd 015539bb5h
+dd 0d2bff28bh
+dd 039731f72h
+dd 0ee20c99ah
+dd 089868473h
+dd 088cf0030h
+dd 085316cd0h
+dd 0958bdf38h
+dd 0678f4c16h
+dd 0cd4deecch
+dd 0746ac5dah
+dd 0a6847425h
+dd 0eff6e2c0h
+dd 0f2772ecbh
+dd 0b055777ah
+dd 06e7b0111h
+dd 06ecddbe7h
+dd 0ff2edb55h
+dd 01c24a94bh
+dd 04915be19h
+dd 0ded7a0fah
+dd 01d429e65h
+dd 0d5c9737fh
+dd 0fa43045bh
+dd 0307bb61dh
+dd 08c3e4e80h
+dd 0876fd8b7h
+dd 0aca6d255h
+dd 09c3b7e95h
+dd 0ddb35ae6h
+dd 0d2507ea8h
+dd 0c29e9ce3h
+dd 019e66186h
+dd 039f7f635h
+dd 01f3b46c6h
+dd 0de199edah
+dd 079ad26a9h
+dd 03f8956dch
+dd 0d5c4a3f7h
+dd 09d9eb165h
+dd 0c9f336c3h
+dd 07432c605h
+dd 055c39784h
+dd 099a20bf6h
+dd 00493a06eh
+dd 0aed281f7h
+dd 088b3b8abh
+dd 0c37f457ch
+dd 09326b3f3h
+dd 0df7f4e47h
+dd 0498af137h
+dd 091b9a429h
+dd 0996d1737h
+dd 0ad03b8a0h
+dd 0e894c04eh
+dd 06077c884h
+dd 0b92d4b1dh
+dd 0a553ec0ch
+dd 0a279caedh
+dd 00e7c9d04h
+dd 0861eaaafh
+dd 06df20654h
+dd 0da4cfa1ah
+dd 033e52040h
+dd 0c812d10ah
+dd 048ca439bh
+dd 03b949e49h
+dd 049256a59h
+dd 00c6425b1h
+dd 04864ad0fh
+dd 083ca275ah
+dd 0cd1a40e5h
+dd 089b8cbb7h
+dd 00ec1f57bh
+dd 07c26e7a7h
+dd 0a4b67e03h
+dd 0861bf56fh
+dd 03adfb5d1h
+dd 0897e4dd4h
+dd 0dba89687h
+dd 014d4cd26h
+dd 0e28bd8d2h
+dd 045f6689ah
+dd 04e50c115h
+dd 02192c27bh
+dd 0eedcd5edh
+dd 0fa3b6d57h
+dd 0a28b43a2h
+dd 0ee184620h
+dd 06c13276fh
+dd 0814e2510h
+dd 0b0302f82h
+dd 0e33decbeh
+dd 071f7b804h
+dd 0cc1b2315h
+dd 0b5221871h
+dd 06686f4d2h
+dd 0ccbc8c02h
+dd 077ed9cf5h
+dd 0e86c3b87h
+dd 0bb7263a3h
+dd 09e59541bh
+dd 0bb5385bah
+dd 0f782de09h
+dd 0b829d4b5h
+dd 0693a6234h
+dd 0ccf6b771h
+dd 015785d48h
+dd 0f3503791h
+dd 0ca4834c7h
+dd 0d13876e3h
+dd 0e3fe4e2ch
+dd 01534a51eh
+dd 08923e7edh
+dd 01375da3ah
+dd 03e4898aeh
+dd 00d323c11h
+dd 0d4d705cdh
+dd 0f5b7d215h
+dd 005a7c31dh
+dd 05d7011e7h
+dd 0072b5f1ah
+dd 0ecadbfe5h
+dd 00619a9dah
+dd 0552a72beh
+dd 038ae937bh
+dd 0c7a9352ah
+dd 02b21f688h
+dd 04b35aa8ah
+dd 0c096b2e9h
+dd 004defbc5h
+dd 079514b31h
+dd 01b95c9e9h
+dd 054c97777h
+dd 0e2909ee6h
+dd 0a25d7ce2h
+dd 0f5232498h
+dd 05b306b4ch
+dd 07c1ee168h
+dd 00dc090dah
+dd 06ca0c6fbh
+dd 05aebe77fh
+dd 033e61ef4h
+dd 07573f715h
+dd 056a464bah
+dd 03cec6260h
+dd 09e372105h
+dd 00208d3e1h
+dd 0c577bf57h
+dd 0aadd9359h
+dd 0a8359ebfh
+dd 062fa875eh
+dd 04d2cd8cfh
+dd 0629b0824h
+dd 05ea4accdh
+dd 01f6032f1h
+dd 0014ebec4h
+dd 04c6982dch
+dd 04016c29bh
+dd 014db1c99h
+dd 0ad823758h
+dd 0e640e13eh
+dd 03613dd8dh
+dd 0b7f4552ah
+dd 06d006a9bh
+dd 01fa01b02h
+dd 03f8e903dh
+dd 0c7b3ad3ch
+dd 01dbcb367h
+dd 0e4a63de5h
+dd 0ac5a9c3dh
+dd 073626598h
+dd 03a7ce9e6h
+dd 02b80114dh
+dd 054679d12h
+dd 016aafd66h
+dd 07527d91eh
+dd 06faa5378h
+dd 0559ab56bh
+dd 0510141e8h
+dd 0219e3746h
+dd 00beedfa9h
+dd 093e7f048h
+dd 0ad1cc82ch
+dd 0ee1cdad3h
+dd 0c2cfdd70h
+dd 0cb8b813fh
+dd 0540badabh
+dd 04967dab3h
+dd 0a7720ed2h
+dd 0c883cde1h
+dd 0474a4b47h
+dd 08d8145d2h
+dd 0d10ff1cdh
+dd 0bbd77fdeh
+dd 063f3bfe3h
+dd 0186e1912h
+dd 0f7a7fe49h
+dd 068f97f37h
+dd 000ed113ch
+dd 02129100bh
+dd 093ecab09h
+dd 0105c2310h
+dd 010449844h
+dd 0e7cfaf25h
+dd 0da048031h
+dd 0d7befb02h
+dd 0d6079f44h
+dd 0161d7a6fh
+dd 056e32daeh
+dd 069f9202fh
+dd 0c72aaccch
+dd 0b34239adh
+dd 069416a57h
+dd 0111ed280h
+dd 0a9fd1c24h
+dd 0ad52b0a6h
+dd 01d793738h
+dd 0f5e81b4fh
+dd 06b9bf8b9h
+dd 0b38ff61eh
+dd 08dddd377h
+dd 0fcb38904h
+dd 034f54591h
+dd 0c3020c69h
+dd 0935c5135h
+dd 02f1035cfh
+dd 051680ad5h
+dd 0e01eda1bh
+dd 0cdc6c272h
+dd 02806efc7h
+dd 0d4821df2h
+dd 04d1bc270h
+dd 0644165c5h
+dd 0507dc65fh
+dd 00ecdaccch
+dd 01174897fh
+dd 0d03633a3h
+dd 0ba829ee4h
+dd 01404d63fh
+dd 003f3cffdh
+dd 0bf01ee93h
+dd 07abbe879h
+dd 0b126a7f4h
+dd 0aba37014h
+dd 0da6c7fdah
+dd 05a37c063h
+dd 0baf27842h
+dd 0a93378bfh
+dd 0ef31f80dh
+dd 0861de9fdh
+dd 0345ce823h
+dd 0e25ae78eh
+dd 0cc470d6fh
+dd 043e4f23ah
+dd 03274b96ch
+dd 0e9783761h
+dd 07c58db5ch
+dd 0a56b4afdh
+dd 04f16b2f7h
+dd 0dac0a38eh
+dd 00fe57199h
+dd 04ffc3424h
+dd 0062a6ba5h
+dd 0322d6122h
+dd 05c6b66fdh
+dd 0d5056352h
+dd 08fb5b29bh
+dd 0cdc4fcb0h
+dd 0d38c6fdah
+dd 0d12b6004h
+dd 0712bf9dch
+dd 02216e94dh
+dd 05de065ebh
+dd 02ce5c7eah
+dd 087cb30e3h
+dd 000e306e4h
+dd 075451c0fh
+dd 0d31ecdfch
+dd 0fdea0e98h
+dd 0a7cb80a6h
+dd 0c536bdd6h
+dd 0d44a0c75h
+dd 0605e7395h
+dd 022841199h
+dd 0b4337a2bh
+dd 01daa150ah
+dd 008365a0eh
+dd 01ffee443h
+dd 055e9c54ch
+dd 015c80593h
+dd 00ed7ea0ah
+dd 0ac70fe70h
+dd 0fea1800fh
+dd 052881494h
+dd 09ae5df75h
+dd 04be287f1h
+dd 0f703491ch
+dd 07cd045ebh
+dd 09be4ac5bh
+dd 047c879dch
+dd 06516ceb4h
+dd 0e116b172h
+dd 0183680fdh
+dd 044362d5ch
+dd 013a66981h
+dd 03c88e81eh
+dd 07bc816cah
+dd 06883d19ch
+dd 0397f35beh
+dd 0adceaa6dh
+dd 0a3305f36h
+dd 0c9ab9a6fh
+dd 0581f9ef4h
+dd 00f350775h
+dd 08065f490h
+dd 05389c689h
+dd 04e3d507eh
+dd 0672f7299h
+dd 0266cfb4dh
+dd 07fee0ee8h
+dd 066d1159bh
+dd 00a24cf8fh
+dd 0ecd0e717h
+dd 0afff6769h
+dd 0bf4d28e2h
+dd 070e5b7c3h
+dd 0db690d2dh
+dd 0edf539f3h
+dd 0af05604ah
+dd 02b5d2c25h
+dd 0c74ccb5fh
+dd 0b9e3902bh
+dd 0170030b8h
+dd 088bb0ff7h
+dd 00dc28e29h
+dd 0f40b8887h
+dd 07eb0a87ch
+dd 0d9ad634dh
+dd 099905d9bh
+dd 084d82e6ah
+dd 0d0f7301ah
+dd 016f61cd4h
+dd 0cc9ed21dh
+dd 02b16d356h
+dd 0b0b1b4cch
+dd 01a412bcah
+dd 0c8ad6305h
+dd 08ec45518h
+dd 0dec2cec1h
+dd 0cc98b86bh
+dd 0d2537914h
+dd 0abdba440h
+dd 024ee88ceh
+dd 0b09fd5eeh
+dd 0c186299fh
+dd 084e79338h
+dd 0b544cf64h
+dd 0c39564b0h
+dd 0f952fbcah
+dd 0b4437ed6h
+dd 0687fe1a9h
+dd 0a17be616h
+dd 07c506035h
+dd 0121a53d0h
+dd 01fcc55b4h
+dd 04bd2cacfh
+dd 063043f51h
+dd 0af52b425h
+dd 0a8a8e493h
+dd 07715f28bh
+dd 092ca8132h
+dd 0160904a1h
+dd 0e501168eh
+dd 04a73794bh
+dd 0e9b00acbh
+dd 073dba38ah
+dd 01febcd92h
+dd 0dd9d9f18h
+dd 0f71b53dfh
+dd 0f90a1113h
+dd 01f754e11h
+dd 012b15657h
+dd 093cfd242h
+dd 02a6ecf80h
+dd 041ed4db1h
+dd 098542bc2h
+dd 0ed645a18h
+dd 0e9af46f7h
+dd 0cd9c6ab0h
+dd 027987d9eh
+dd 033bdd26fh
+dd 0b6bdcdd1h
+dd 0ea4393cbh
+dd 07166d213h
+dd 087709918h
+dd 0f2ac9415h
+dd 0845e63e8h
+dd 0979bd0f2h
+dd 05df65247h
+dd 03901c594h
+dd 0a258fe9dh
+dd 0fb728393h
+dd 0c894b8f4h
+dd 0c6fcded4h
+dd 0cffc2a19h
+dd 0aa6a7565h
+dd 012a77016h
+dd 095ec4037h
+dd 02387145bh
+dd 05811e576h
+dd 089eea511h
+dd 0c18ad968h
+dd 0d2df2b73h
+dd 07f425218h
+dd 09388b276h
+dd 0b0f10a0ah
+dd 019fd5ca3h
+dd 0d841db68h
+dd 0ef99a8dch
+dd 00b556896h
+dd 0f99fee66h
+dd 0213aa9f1h
+dd 0d0df6710h
+dd 022292c63h
+dd 09221ca1ch
+dd 0f19ca762h
+dd 069343c48h
+dd 0339612dfh
+dd 0f0ecbd35h
+dd 07345e8d9h
+dd 08480e771h
+dd 075b6a315h
+dd 00685929eh
+dd 025dac56fh
+dd 02e436b8ah
+dd 056578404h
+dd 0d8f8d01ch
+dd 0c2dea4e8h
+dd 00c57660bh
+dd 04a230beah
+dd 0dac0e77eh
+dd 09b84e6cbh
+dd 019dcc770h
+dd 03d2c6ad9h
+dd 0c1e82b56h
+dd 0ca29888dh
+dd 040ff8f54h
+dd 0fa875251h
+dd 0c9e23e7bh
+dd 0c44d89cfh
+dd 0ae46a1e9h
+dd 0d9fa000ch
+dd 03bab93d2h
+dd 063da3ee2h
+dd 0dbdbbcdeh
+dd 07df98378h
+dd 0cccebdddh
+dd 04cc7dc23h
+dd 00dd25a5fh
+dd 0c505a8fah
+dd 023293068h
+dd 0bf6d9d8eh
+dd 061b75523h
+dd 0e54219e4h
+dd 0270760dch
+dd 056dad833h
+dd 03d3ecafch
+dd 02bed8196h
+dd 06b049bdbh
+dd 04799f777h
+dd 09f907babh
+dd 054338bd7h
+dd 0d8a9496eh
+dd 07a151f90h
+dd 06c632230h
+dd 079280969h
+dd 073d876b8h
+dd 034993952h
+dd 0a493e591h
+dd 043517d6eh
+dd 0e5bb7e54h
+dd 0b792cb79h
+dd 0095c0f22h
+dd 02bc02245h
+dd 0462c2ebdh
+dd 01194a080h
+dd 0dae8a99fh
+dd 0d236685ah
+dd 0a2041ca1h
+dd 05a01a7f7h
+dd 0146efedbh
+dd 0b8bb9031h
+dd 0657017d0h
+dd 071c8fc4ah
+dd 0a93c32ach
+dd 0d83db0c2h
+dd 0ff03f01fh
+dd 03d334bf2h
+dd 0d4193258h
+dd 07577f56bh
+dd 01e3de018h
+dd 0a03eaa98h
+dd 018b7299fh
+dd 02e8152aeh
+dd 0e906ccd8h
+dd 022413205h
+dd 0bfacdf3ch
+dd 071af6cf7h
+dd 03a8b4ecfh
+dd 04e566f5ah
+dd 0309b88fdh
+dd 00fa57a96h
+dd 0e0113a0eh
+dd 0182639a0h
+dd 03bc60c5bh
+dd 0b8e97093h
+dd 0637268d3h
+dd 01aed9813h
+dd 0d8f61c3bh
+dd 02bbaa6c5h
+dd 0a1ade9bfh
+dd 0c05aa8d5h
+dd 01be7309ah
+dd 0f94a4b11h
+dd 020036791h
+dd 04611f52bh
+dd 0288b1387h
+dd 0ee7e328eh
+dd 01cced865h
+dd 056ba706fh
+dd 0fb3b4c00h
+dd 091ebe63eh
+dd 0d121e677h
+dd 08395ee43h
+dd 018082f44h
+dd 081ba042ch
+dd 05a0473b3h
+dd 03e379537h
+dd 028382766h
+dd 0305e4394h
+dd 0e78226f7h
+dd 0808dee3ch
+dd 0eb2599f6h
+dd 0b7727ef1h
+dd 096241df6h
+dd 019d11550h
+dd 01e4697c3h
+dd 0aec84039h
+dd 019219669h
+dd 0b4de7d59h
+dd 0e5d5fabdh
+dd 0d917b1d3h
+dd 06675363eh
+dd 0fcc6c0c5h
+dd 02517ffcch
+dd 09d490fd0h
+dd 0a898a847h
+dd 03231c90ch
+dd 0bd7cc82bh
+dd 07ed38fcch
+dd 0e63403aah
+dd 0732c15dfh
+dd 00ce4acc0h
+dd 0eb6d94b7h
+dd 0202b47d2h
+dd 061c4ebb4h
+dd 05feb8faah
+dd 052de2121h
+dd 0f905f44eh
+dd 00b6b2450h
+dd 01f8d338ah
+dd 030e55a2dh
+dd 01973ef31h
+dd 0f4c0d8c9h
+dd 0754f0128h
+dd 0ade1aac1h
+dd 08b1c7ecbh
+dd 03fd1a12bh
+dd 03dd93defh
+dd 0268b61c3h
+dd 05e503a90h
+dd 01a3d3638h
+dd 09ae20633h
+dd 0268c8a39h
+dd 03d1ba9a8h
+dd 06d721668h
+dd 029015413h
+dd 0a6507a13h
+dd 0a514fdf9h
+dd 07938f33dh
+dd 0b2dcad13h
+dd 067a5f533h
+dd 0e3ea16bch
+dd 0e9c45033h
+dd 07b568507h
+dd 06e18600bh
+dd 0913e788ch
+dd 0a309118ah
+dd 057f245bdh
+dd 089e0b99fh
+dd 0795e2437h
+dd 0fae7ed9ah
+dd 0503ba446h
+dd 0e2fb9afch
+dd 070d7a9beh
+dd 0f130ec5fh
+dd 0e475f106h
+dd 0c40c3e4eh
+dd 098b3d479h
+dd 07ade6c49h
+dd 0d164e786h
+dd 0a41fda0fh
+dd 05a385ca1h
+dd 074fc5747h
+dd 0dfb77fadh
+dd 00159e5e2h
+dd 0434a3163h
+dd 0100690fah
+dd 00bb9cfd3h
+dd 0fef2251fh
+dd 0cc4a6154h
+dd 07a019207h
+dd 0535b3152h
+dd 0e5be6955h
+dd 00f724e37h
+dd 074e77f38h
+dd 039b9e374h
+dd 05f9a7babh
+dd 0babb979ah
+dd 07b7cde03h
+dd 009b3486ah
+dd 0b5db9d9fh
+dd 0c3260dd4h
+dd 0188bc7c5h
+dd 0f16a8ffbh
+dd 090080923h
+dd 09fc3c2c0h
+dd 0133a469eh
+dd 06bd9d968h
+dd 0283496e9h
+dd 0c986ce58h
+dd 0c2ac942dh
+dd 06c57d311h
+dd 01b5cc2ach
+dd 0f49d21a1h
+dd 081d9f744h
+dd 04e6889dbh
+dd 0a78a37e8h
+dd 08a7a54feh
+dd 080e96e8dh
+dd 05b5c177eh
+dd 09ea80577h
+dd 03d176624h
+dd 0d68bdffch
+dd 0a94182fdh
+dd 02155561ah
+dd 02a70b9b3h
+dd 0e067c378h
+dd 035f77066h
+dd 085283c55h
+dd 0c48c369ch
+dd 0185640f3h
+dd 0c62c4aa6h
+dd 0a31b486bh
+dd 0897e7cc7h
+dd 04f7fd64dh
+dd 05c988ca3h
+dd 0b1fecca4h
+dd 0f602fe88h
+dd 0e9a9a935h
+dd 0ad378762h
+dd 0f1c606eah
+dd 0c39cc69eh
+dd 08a4edcd9h
+dd 0fa5e2a93h
+dd 047c78754h
+dd 002ba695ah
+dd 0bb6fc0a1h
+dd 0e1087946h
+dd 0693d4f09h
+dd 02d684cd4h
+dd 062da4a27h
+dd 01f0f66dah
+dd 0e78a60c8h
+dd 0a3fe344fh
+dd 08e9a969fh
+dd 06a8f8b78h
+dd 002831b06h
+dd 0b8d5ec3ch
+dd 09fc46732h
+dd 002a6fb9ah
+dd 0309343d7h
+dd 0535cbe7eh
+dd 0e6893c26h
+dd 09f0dc124h
+dd 042f55600h
+dd 0cb565330h
+dd 0d4c7e463h
+dd 03ea482e7h
+dd 09ea4e56fh
+dd 08ae8f1bah
+dd 0d8fa1d72h
+dd 02ff2d849h
+dd 0c42b5a10h
+dd 0162dcd89h
+dd 02215dd0eh
+dd 0128dc5d8h
+dd 04fbe5f9bh
+dd 0d9e7bdefh
+dd 01130ab3ah
+dd 044ddc938h
+dd 0931c612ah
+dd 0ab8f61c5h
+dd 04eed4328h
+dd 036e1c1aah
+dd 03c206df6h
+dd 0bca9c336h
+dd 03754abceh
+dd 0b267b49eh
+dd 09ddd7190h
+dd 024c5cf9bh
+dd 00c69942fh
+dd 02d1d2c6dh
+dd 0b9d4d397h
+dd 062f5f30ah
+dd 0fca5dfa1h
+dd 0a0f0055eh
+dd 0adf2db7bh
+dd 01ec154cbh
+dd 042e7e610h
+dd 0b653f031h
+dd 0a992f220h
+dd 065f373d2h
+dd 0a1b2deb8h
+dd 08d47df75h
+dd 0169da79eh
+dd 0657f2000h
+dd 0aeb8b5a4h
+dd 0d6a66f1ch
+dd 0e2610488h
+dd 0d41efac7h
+dd 040d78a5eh
+dd 0c66343d5h
+dd 07465f009h
+dd 0c9cf383fh
+dd 04b079f8bh
+dd 01b8889d0h
+dd 04357cd53h
+dd 09f88bfcbh
+dd 0b9ede108h
+dd 0b230ce7fh
+dd 03b077021h
+dd 0ccd6ef29h
+dd 03d41c312h
+dd 0c51e1f18h
+dd 06c230b94h
+dd 0e9780491h
+dd 0df70fae6h
+dd 0d745a7c3h
+dd 0ec3579e8h
+dd 09cd68859h
+dd 00aa9d554h
+dd 0b8d12acah
+dd 0f08ddeaeh
+dd 069fc2a80h
+dd 01172b481h
+dd 09915c9dah
+dd 098115310h
+dd 02fbd1c00h
+dd 06a5077d8h
+dd 0e32171d8h
+dd 003f2da53h
+dd 02138ac24h
+dd 0b8386662h
+dd 0a27b7fd6h
+dd 07b9e9885h
+dd 098565210h
+dd 0967a7c1fh
+dd 0c40dafcbh
+dd 0d0547f06h
+dd 080c34ca4h
+dd 020716182h
+dd 009079b5dh
+dd 054a5557ch
+dd 025a4fb67h
+dd 0a8509a65h
+dd 03f9431f0h
+dd 02ef3a925h
+dd 0ee879bd9h
+dd 041dece1ch
+dd 0bef7a14ch
+dd 05b5c4530h
+dd 026976aa3h
+dd 04df72538h
+dd 0263b671fh
+dd 0094c9681h
+dd 056fd5355h
+dd 044253112h
+dd 0199dd8f9h
+dd 060e962feh
+dd 0c2b6f8a3h
+dd 0087e8f88h
+dd 0d6ee8a22h
+dd 0df820798h
+dd 098c9a11dh
+dd 0e3295d2eh
+dd 05f37858dh
+dd 0c9ed4985h
+dd 094ec3ab5h
+dd 042f2a418h
+dd 0806cc253h
+dd 03a173582h
+dd 0a2f54374h
+dd 0ce4a551ch
+dd 034892b7bh
+dd 069bb2c82h
+dd 048503c92h
+dd 0fd2916efh
+dd 0ce49bd4eh
+dd 0bf43e08dh
+dd 0a2cd089bh
+dd 02cd0b736h
+dd 04dc3ccb4h
+dd 025af4c61h
+dd 036671c7ah
+dd 0d073585bh
+dd 09b6f7754h
+dd 06fe1805fh
+dd 09b2d4d7fh
+dd 09314d3c2h
+dd 030b6711dh
+dd 0b5f9ae9eh
+dd 0bdbcaacdh
+dd 0adf9f1e7h
+dd 0cac63724h
+dd 02100b72ah
+dd 0ee534d32h
+dd 07003996ch
+dd 03821c987h
+dd 00ef11f53h
+dd 06e87a946h
+dd 0ffd2816bh
+dd 0e92e298eh
+dd 035e64e74h
+dd 0c9cb6a22h
+dd 0f30b2d82h
+dd 0604ca438h
+dd 0e06501d7h
+dd 0663dbc8eh
+dd 0d941cd4ch
+dd 0c2bc86bfh
+dd 0e231be27h
+dd 0fd3475e5h
+dd 0843237a1h
+dd 07e4ee4abh
+dd 066b0e7f6h
+dd 0af93c9d5h
+dd 07c372cf5h
+dd 0236801d5h
+dd 02b9de977h
+dd 0d3c8dbceh
+dd 0098c754bh
+dd 0ce59a3e8h
+dd 0a5126942h
+dd 08b4fa91ah
+dd 0d4b4830ah
+dd 0fd58377fh
+dd 0b87cf469h
+dd 0f394dc7eh
+dd 0e797128eh
+dd 0dfcdf9f5h
+dd 0329f1ac3h
+dd 07e1a890ch
+dd 0b41351dch
+dd 041afdddfh
+dd 0af4800adh
+dd 07dc18d4bh
+dd 03a51c1c4h
+dd 01c290be7h
+dd 0e75d0403h
+dd 01fad69e5h
+dd 02f9a1501h
+dd 0b5be1b68h
+dd 036590bd2h
+dd 067c0b4bch
+dd 019776b7dh
+dd 016d77acdh
+dd 061e248ach
+dd 0d751ef6ah
+dd 030ec8c76h
+dd 0228de54eh
+dd 08b031909h
+dd 0fa436852h
+dd 02e17f9feh
+dd 0adf79b0fh
+dd 0b4fe6e94h
+dd 00110c901h
+dd 07b0d5aa5h
+dd 0662e61b7h
+dd 0b89f0840h
+dd 077e55f13h
+dd 0c10b1469h
+dd 0135a6199h
+dd 03ba9df4ah
+dd 05383bd3eh
+dd 0ae050f8fh
+dd 0c57947a3h
+dd 0c1bf78bfh
+dd 0f33c32beh
+dd 037b4e96dh
+dd 0ebf30a39h
+dd 0d9e8368bh
+dd 0fe3138f5h
+dd 040f3f821h
+dd 031f80e92h
+dd 08472dddah
+dd 0b1f0ff7ah
+dd 0989e3b0ch
+dd 036d90d2dh
+dd 01abe7df3h
+dd 074ed86adh
+dd 03199dc48h
+dd 0f1898061h
+dd 0c4f1bb4ch
+dd 0646b9bdch
+dd 09d1ba139h
+dd 0b7044fc5h
+dd 037cae825h
+dd 08aef7270h
+dd 0001310c0h
+dd 0722e3860h
+dd 092103dd2h
+dd 0f26ff243h
+dd 0500ff084h
+dd 0ac03aa34h
+dd 04f7d81e7h
+dd 0985d713bh
+dd 0467bff8fh
+dd 08d29fb2ch
+dd 0797c9359h
+dd 0c29ab3aeh
+dd 050196b38h
+dd 063cf90dfh
+dd 0007f550fh
+dd 0b1a35ad1h
+dd 0a9e29383h
+dd 0bea9026ch
+dd 07a9ecf9eh
+dd 0cc01bcceh
+dd 0b8926917h
+dd 07e3c4478h
+dd 05ed66f5eh
+dd 07c8e9752h
+dd 0048a41dch
+dd 0fd0b7c4bh
+dd 04e0a1360h
+dd 01146b0eah
+dd 09317c843h
+dd 021e940cbh
+dd 01876b186h
+dd 06176ed4fh
+dd 0b0e452e3h
+dd 0c484e2bfh
+dd 0fbf4a2a7h
+dd 0145771d9h
+dd 0a91022e8h
+dd 0a5f733abh
+dd 073b99194h
+dd 0e7e096b9h
+dd 0f617c198h
+dd 07b859235h
+dd 03397d3beh
+dd 07b3e740bh
+dd 00850eb48h
+dd 0a3add111h
+dd 0bd8c6323h
+dd 002f82f8bh
+dd 00fce91c4h
+dd 09ec9ec60h
+dd 0a0c76f0eh
+dd 03de27f72h
+dd 007c47924h
+dd 0e9283e73h
+dd 039ec2b34h
+dd 0d4e8a8ffh
+dd 09d9f8144h
+dd 0a399f87bh
+dd 084c16733h
+dd 043e7b414h
+dd 0dd1a603eh
+dd 00aa2f763h
+dd 05617b195h
+dd 054d255eah
+dd 0f697ef76h
+dd 0758479b9h
+dd 09a439191h
+dd 03c7a1857h
+dd 077a30e13h
+dd 0bb508a00h
+dd 09710dea2h
+dd 0bc4fecbch
+dd 0656dcaa4h
+dd 054820626h
+dd 01c6cc0e9h
+dd 0b7949b93h
+dd 05278a58fh
+dd 06fd638a0h
+dd 0b386a738h
+dd 009abc109h
+dd 0a4844a5dh
+dd 09943d7a4h
+dd 010b3896ah
+dd 031173babh
+dd 090466524h
+dd 0ed387d6dh
+dd 025f6bf3ch
+dd 0fd634603h
+dd 0c03e2553h
+dd 0da65f521h
+dd 07e8d3078h
+dd 0be9e2c53h
+dd 0b6b74c25h
+dd 0f59f4f1dh
+dd 069622efeh
+dd 075ec9d89h
+dd 024e4716ah
+dd 0aa437d1ch
+dd 073e65d0bh
+dd 03d3fd9cdh
+dd 037e74e09h
+dd 091861434h
+dd 00b3bb8bfh
+dd 0436957b7h
+dd 063cad581h
+dd 03ba4ca0eh
+dd 097d60595h
+dd 088c79788h
+dd 07d0f6775h
+dd 0dcb585d0h
+dd 06e19909ah
+dd 048d8200ah
+dd 018df9ec9h
+dd 0c7d33b1dh
+dd 00bf7f669h
+dd 0217fff3ch
+dd 03bb5728fh
+dd 016ce1804h
+dd 093b414f8h
+dd 018967071h
+dd 008528268h
+dd 0d9a9b21dh
+dd 06c8f3897h
+dd 0572ba946h
+dd 0da25fbbeh
+dd 07c899153h
+dd 08a945719h
+dd 09f19bc8ch
+dd 0014bb2bdh
+dd 077bbf2deh
+dd 0098cfde8h
+dd 0376e2d3dh
+dd 0bddac4edh
+dd 0842e8af0h
+dd 0d74a2b89h
+dd 0b23c1888h
+dd 07bcb81a3h
+dd 030c25fb3h
+dd 04e3b00aeh
+dd 0d5b10693h
+dd 096fbd533h
+dd 0f5bfcd8ch
+dd 0c352ccc5h
+dd 02033969eh
+dd 0c8f8bdbdh
+dd 079de1432h
+dd 0e56ace48h
+dd 03a10715ah
+dd 04a261903h
+dd 03f8cd2dch
+dd 0f3b69687h
+dd 0444f2185h
+dd 071a1a3eah
+dd 075749734h
+dd 01ce80671h
+dd 096fabc9dh
+dd 097db0537h
+dd 0888a9ef8h
+dd 034e60329h
+dd 0dafdb987h
+dd 02bf65661h
+dd 091302012h
+dd 0325f99dch
+dd 071322e87h
+dd 0a915152dh
+dd 07884e674h
+dd 004ef0860h
+dd 083faf508h
+dd 0cca4f3a8h
+dd 0ddfa005fh
+dd 085494bdah
+dd 0c922cd69h
+dd 026c0704fh
+dd 0b4c01cf3h
+dd 006216596h
+dd 0666cd2bdh
+dd 035f474b5h
+dd 0f2eb3692h
+dd 0f8df34dfh
+dd 05d5074f5h
+dd 060248e71h
+dd 0c0cd7983h
+dd 03ba1af5fh
+dd 0c751cc79h
+dd 0078e0348h
+dd 0ea67f7cbh
+dd 071add0d6h
+dd 05d366b0bh
+dd 03be4e7d9h
+dd 06605abc7h
+dd 068571d8bh
+dd 080aefc5eh
+dd 0c27d8625h
+dd 0f8abc484h
+dd 0d9e2dbe5h
+dd 0c2a172d3h
+dd 0232fdbc3h
+dd 0508e6297h
+dd 039b06622h
+dd 0ffb67ef3h
+dd 07bad5edch
+dd 09d17efb3h
+dd 067f04744h
+dd 0e2706da6h
+dd 020740bf9h
+dd 03d4cad01h
+dd 01183f6cdh
+dd 0233467b4h
+dd 0e9808d74h
+dd 081ae6650h
+dd 0c98d4a92h
+dd 0d915b84dh
+dd 04ffcc31eh
+dd 06e8fd736h
+dd 0d4c497eeh
+dd 030d35da4h
+dd 069070176h
+dd 02c0fb72dh
+dd 01d3f390fh
+dd 0ad18b567h
+dd 048be59c7h
+dd 04271a153h
+dd 0e2f48ca4h
+dd 0ccffaa44h
+dd 000ec5eefh
+dd 0657ac63fh
+dd 0b37968adh
+dd 0328a3f1eh
+dd 038b8910dh
+dd 045ccbae7h
+dd 02dc74189h
+dd 05723d6bfh
+dd 0e6c687f6h
+dd 09ca2e723h
+dd 04d52eb44h
+dd 0e938f850h
+dd 0164c5c79h
+dd 0eb04943bh
+dd 079f6f949h
+dd 0121f1233h
+dd 06afdecf2h
+dd 00a21ffd0h
+dd 07024ecafh
+dd 0e616fa46h
+dd 0cae26033h
+dd 07c3ac857h
+dd 08ccbc3fch
+dd 0262f4e9dh
+dd 09724832dh
+dd 0bad55993h
+dd 0fc1226feh
+dd 095e614bch
+dd 0f7e1e075h
+dd 02e678628h
+dd 0fe7c5211h
+dd 019163c6dh
+dd 05b9d4978h
+dd 0b56e9304h
+dd 086058bfeh
+dd 0b98d782ah
+dd 0a72b626ah
+dd 0361f6d7fh
+dd 0764eac53h
+dd 0edb65752h
+dd 02143d387h
+dd 09bfa6f35h
+dd 0e8368630h
+dd 0dbdc0d51h
+dd 0b74a7091h
+dd 0b2d030f0h
+dd 0472e0625h
+dd 039326542h
+dd 051905a42h
+dd 0aac110afh
+dd 0caf8ad43h
+dd 0c8d37576h
+dd 049723b08h
+dd 010e45179h
+dd 0fac178b5h
+dd 0cf5223e0h
+dd 0710e4372h
+dd 044549328h
+dd 03e0ca9b5h
+dd 031928e40h
+dd 0fcdaaddbh
+dd 0d107e4d3h
+dd 008b973c1h
+dd 07a065a6bh
+dd 097cd8fe4h
+dd 0b7cfc907h
+dd 05bf33caah
+dd 0983d3daah
+dd 0e160aaa4h
+dd 0e6544d67h
+dd 068376593h
+dd 0b5bf9faah
+dd 0212c9e10h
+dd 08b1e965bh
+dd 046b05481h
+dd 095d4a1ffh
+dd 03bf126ffh
+dd 058ddfcdfh
+dd 095a9eed4h
+dd 0f72aea11h
+dd 040a6aa43h
+dd 0d045205dh
+dd 0d8cf2d6dh
+dd 028dc9f9fh
+dd 0ddabc62dh
+dd 04b7fc13fh
+dd 0a5435f6dh
+dd 04052a529h
+dd 012b194bdh
+dd 063d0ab31h
+dd 05d6d417dh
+dd 0cdec2ae1h
+dd 0b2351be3h
+dd 0c422a9fbh
+dd 0166e8603h
+dd 009c6f9efh
+dd 0c493bb9bh
+dd 05a0d3ee8h
+dd 05cac10c9h
+dd 037ddcffbh
+dd 02dee7d01h
+dd 0ae6fd201h
+dd 00dcca99ah
+dd 05e935059h
+dd 09db930f0h
+dd 0748976adh
+dd 06778e93dh
+dd 05bf9ab63h
+dd 007f27e5fh
+dd 00defcf86h
+dd 0a4343fa3h
+dd 09cf2f733h
+dd 04a3ba471h
+dd 04dc3de27h
+dd 0a329d424h
+dd 009535d12h
+dd 0939c0546h
+dd 00eec8e74h
+dd 042909935h
+dd 078a7c59bh
+dd 00310563ah
+dd 0bbb8988ah
+dd 02abcb639h
+dd 0a37ace50h
+dd 0ff90dc56h
+dd 06cb44e81h
+dd 0df5aeb2bh
+dd 0bf99416ch
+dd 0056d12cah
+dd 0b72984a1h
+dd 03777e35ah
+dd 04fe47fa9h
+dd 0f83b2e14h
+dd 0f2eaea7ah
+dd 0a244fa13h
+dd 0ca4ed9ech
+dd 07cbcfe3dh
+dd 0d84e0641h
+dd 07898d4a8h
+dd 04e478c71h
+dd 05705b462h
+dd 0b8b874b5h
+dd 0048f7abbh
+dd 070400d40h
+dd 0a4001b37h
+dd 0a97e39b3h
+dd 06302cb90h
+dd 089272bb2h
+dd 0e4a7e2deh
+dd 09a383040h
+dd 0ad7867dah
+dd 08173c6fbh
+dd 044a11704h
+dd 080d5982fh
+dd 0953cb7d4h
+dd 02965a374h
+dd 013d61957h
+dd 05a57fe86h
+dd 0e5d82179h
+dd 08409f5d2h
+dd 071f39b40h
+dd 041f31eech
+dd 018ba6390h
+dd 03939ee16h
+dd 0481e59d5h
+dd 07de5fe33h
+dd 07d9fa252h
+dd 0b8b3c2e0h
+dd 07447d91eh
+dd 01d21a72fh
+dd 0aed09ea5h
+dd 07b0fcc19h
+dd 0b2d2b2b1h
+dd 0214de7b0h
+dd 021682301h
+dd 07eb71637h
+dd 028bda90eh
+dd 0217bc7a3h
+dd 048b18bf8h
+dd 0f38e7ae7h
+dd 06ba60764h
+dd 0c84de3c7h
+dd 055043e93h
+dd 09f9af524h
+dd 0db0e6a7ch
+dd 0cb41fc7ch
+dd 0e2a2a667h
+dd 002d4471bh
+dd 0bd7ddd18h
+dd 00094362ch
+dd 0c30eaeach
+dd 0ae76b6fch
+dd 05d8e2319h
+dd 0a0126a39h
+dd 0e355be2dh
+dd 094f3d876h
+dd 0a1bbe76ah
+dd 0854a6659h
+dd 0836f85efh
+dd 00a5991eeh
+dd 06a9d3711h
+dd 09fd769ffh
+dd 07559c7e4h
+dd 0d9d9fec9h
+dd 089379821h
+dd 0da319613h
+dd 08783b219h
+dd 0826b0ea3h
+dd 0314f851dh
+dd 0ebb55d74h
+dd 099ec3f1ch
+dd 0f019905ah
+dd 038eeaa48h
+dd 0560d9d18h
+dd 0e4f3859fh
+dd 062dbd6c9h
+dd 0d1dd9cd0h
+dd 01cdba963h
+dd 0598eb415h
+dd 04877ad0fh
+dd 0d41642c9h
+dd 048430217h
+dd 01ff7a239h
+dd 0017b3e18h
+dd 03a434549h
+dd 039bf2b10h
+dd 054f680c1h
+dd 0ae0912a9h
+dd 01d9e8d37h
+dd 0482df81eh
+dd 06ad11c10h
+dd 0fd0f6b16h
+dd 0617f0640h
+dd 03d669e81h
+dd 0effdbf68h
+dd 0d3cf773eh
+dd 035e8544ah
+dd 0fdb4aef7h
+dd 00e04363dh
+dd 047fb9e56h
+dd 0928f4791h
+dd 02386493fh
+dd 0136c45e4h
+dd 09f0d53d7h
+dd 09037cd84h
+dd 0a332a7ffh
+dd 0343240f7h
+dd 032df5e90h
+dd 029b77cc0h
+dd 065649854h
+dd 0b01b16cch
+dd 054107623h
+dd 02e6e0140h
+dd 064a7d402h
+dd 0d73e9ca1h
+dd 046d20632h
+dd 047703cb1h
+dd 0b9563a74h
+dd 00104f99fh
+dd 0dcd7a34bh
+dd 08ba67007h
+dd 01d6645cch
+dd 0aa7fb4d0h
+dd 09b3ee14fh
+dd 0d02f810eh
+dd 01d18ca41h
+dd 0da61d235h
+dd 0d031c483h
+dd 002cc0098h
+dd 0bf886ea7h
+dd 089331a4eh
+dd 0f881af65h
+dd 0e2883e11h
+dd 0a78e7013h
+dd 0aa69b90eh
+dd 09e684524h
+dd 06a1af70ah
+dd 0af9e7af1h
+dd 0349cf59dh
+dd 0d5a0e867h
+dd 037554273h
+dd 0ea2635d4h
+dd 06a8564c0h
+dd 0d2ee1c7ch
+dd 0989eb33eh
+dd 077b82936h
+dd 0b1c472f4h
+dd 093b48a0fh
+dd 034f95160h
+dd 0ac73c4b9h
+dd 030ae430fh
+dd 01327bd82h
+dd 043f250d7h
+dd 00937a4afh
+dd 0f402c96dh
+dd 059f80fffh
+dd 0ded541c4h
+dd 0260acb7ch
+dd 07be0e51fh
+dd 0cf7a1751h
+dd 055d5f185h
+dd 08123d3a3h
+dd 0bda93b60h
+dd 00d9d5768h
+dd 08c340349h
+dd 0c455b773h
+dd 0cfe7b66ch
+dd 048d41a78h
+dd 01e973451h
+dd 01e0befbch
+dd 0bf6d9329h
+dd 0e48f83f6h
+dd 05551a317h
+dd 0930835eah
+dd 0e86b82cch
+dd 0f0ad048ch
+dd 01890346fh
+dd 00d2404aah
+dd 0283387b5h
+dd 06a4c3fd0h
+dd 01ee8fd09h
+dd 0702af7fch
+dd 00d361d88h
+dd 0abab1dbah
+dd 0f865498dh
+dd 0be68febbh
+dd 04e9bdc42h
+dd 0ded953f0h
+dd 0eacf66a3h
+dd 0da6933e2h
+dd 0e3b4a1ceh
+dd 08e706e3eh
+dd 019d95ca6h
+dd 00642f000h
+dd 03972f8e7h
+dd 0eafb5e91h
+dd 0b1d2e20ch
+dd 07f82b9d2h
+dd 03d914a5dh
+dd 05b43f90ch
+dd 0e7ae164bh
+dd 04e8a5d20h
+dd 0eafa1eb2h
+dd 0baa66462h
+dd 09d1ee325h
+dd 006ad2258h
+dd 03c85ad87h
+dd 003d6396ah
+dd 013ee465ch
+dd 08176cd3bh
+dd 06c77f614h
+dd 082dc4f0bh
+dd 0631d3df3h
+dd 0e8d60058h
+dd 05db5f0f3h
+dd 07a5968dbh
+dd 0128ab6cbh
+dd 02ff14f7fh
+dd 0ac580024h
+dd 00207c8ddh
+dd 039c3c7d7h
+dd 0960ef60bh
+dd 05bfea59ah
+dd 02c949561h
+dd 0b45f36e9h
+dd 020d008cah
+dd 0891e386eh
+dd 031cc8ecfh
+dd 023d8342ch
+dd 0da3b812ch
+dd 0aa9f6ecfh
+dd 0bb8a3d28h
+dd 0ae159b62h
+dd 090fd0fddh
+dd 0df4fe8bfh
+dd 0b5ef6e3ch
+dd 0ee22bf95h
+dd 027a4dbbbh
+dd 03f84675ch
+dd 05e6dc0e3h
+dd 0619bb147h
+dd 03e30c0b1h
+dd 0cd1bf2c3h
+dd 08cc0ccbch
+dd 05963087bh
+dd 02a6ae9abh
+dd 0dcc5f2d4h
+dd 00a0a1b9ch
+dd 02958de60h
+dd 07f486e3ch
+dd 0568ab638h
+dd 09084c1b9h
+dd 0e92b7d83h
+dd 0d050c79dh
+dd 03b4a3b38h
+dd 0d2711db8h
+dd 0d6eee3a0h
+dd 00902e159h
+dd 06fce2740h
+dd 0dee8ad15h
+dd 0a2a88719h
+dd 073aa75f3h
+dd 009823a98h
+dd 035374065h
+dd 0abafc905h
+dd 0bac7cd89h
+dd 0ecbacb84h
+dd 0f31e5bd6h
+dd 089279f18h
+dd 01c9fd23ah
+dd 001102400h
+dd 0cbc78058h
+dd 0791f4001h
+dd 0c4cbfdf1h
+dd 07a0fe823h
+dd 036d140f2h
+dd 0ec25cc6bh
+dd 052d424f5h
+dd 027edab03h
+dd 011a16755h
+dd 030ce10a9h
+dd 06966d2dfh
+dd 097375685h
+dd 0272b9364h
+dd 0a1c953e8h
+dd 036bb14a6h
+dd 0db2d06feh
+dd 02be3c52ah
+dd 0f42d77ffh
+dd 0a72d30feh
+dd 087410a21h
+dd 0eb709028h
+dd 034dd53ffh
+dd 07277e359h
+dd 0ba1ac449h
+dd 028eae630h
+dd 020c2aa27h
+dd 0b8cbd494h
+dd 06a6aef7dh
+dd 070c0cbe0h
+dd 08d540b92h
+dd 09c884a7fh
+dd 0ed916bcbh
+dd 0722936eah
+dd 0b17a1f3dh
+dd 03da2d45fh
+dd 079a25a2dh
+dd 050767538h
+dd 0051dee62h
+dd 0ceebc90ch
+dd 024b5f47ah
+dd 0db2b03c9h
+dd 01df3811bh
+dd 0ed47b498h
+dd 00f2c0340h
+dd 06cac8dd3h
+dd 08853e5e6h
+dd 0f8fff6d9h
+dd 04c347426h
+dd 0961f0795h
+dd 0d80ec84bh
+dd 05db902e3h
+dd 0fe75a207h
+dd 0664b0a07h
+dd 07da00eefh
+dd 0b48c96d8h
+dd 0938b2752h
+dd 0656dd9a0h
+dd 02f0ebc69h
+dd 0a0d0be4fh
+dd 0cd35e698h
+dd 03437e1cfh
+dd 02ee341c5h
+dd 0a3043031h
+dd 0ef53798ch
+dd 036a54aech
+dd 0985f503bh
+dd 06d66673eh
+dd 0db32ff9ah
+dd 0b834dd39h
+dd 08b4bd53bh
+dd 0e6367914h
+dd 0334a1848h
+dd 0b660bc02h
+dd 0bb9f7deah
+dd 015e9e859h
+dd 0d765fb30h
+dd 00081466ch
+dd 05cf7a204h
+dd 0b8c8cda3h
+dd 09b181598h
+dd 0fed0f6e0h
+dd 0929dccbeh
+dd 05c529ae0h
+dd 0545e27b0h
+dd 0ef8dc985h
+dd 098e6d8d3h
+dd 028d359e1h
+dd 0760fb3cah
+dd 0ed86f41eh
+dd 043d306a5h
+dd 028d40d89h
+dd 0ac0ffce3h
+dd 066215225h
+dd 041b03d0bh
+dd 044a43e3ah
+dd 0397491deh
+dd 081ac8cbeh
+dd 0971b816ch
+dd 069e75061h
+dd 09a0a824ah
+dd 0386718adh
+dd 0ceaed95dh
+dd 04cd2a2a2h
+dd 01d065ee5h
+dd 03691ad41h
+dd 0ff73c47dh
+dd 0858ed384h
+dd 075a9fa68h
+dd 020de1111h
+dd 05fa4f7a3h
+dd 0cb2b8996h
+dd 05b08098ah
+dd 0e9e9aad6h
+dd 0cae06d88h
+dd 0c5e4d97ch
+dd 097c40314h
+dd 079b2779ah
+dd 00e172609h
+dd 07a426948h
+dd 0b4597dfeh
+dd 07c85b6a6h
+dd 01b85781bh
+dd 0046a80a9h
+dd 073368b0ah
+dd 0f4f4ccebh
+dd 0d18a1da6h
+dd 0c3b1925bh
+dd 0a7b9328dh
+dd 0f5e50984h
+dd 06108c72dh
+dd 036a180ffh
+dd 0a13a0335h
+dd 0684018aah
+dd 08b5d53cdh
+dd 0e2910611h
+dd 0e87fddc6h
+dd 04d5c614dh
+dd 0afde0696h
+dd 054f8799dh
+dd 0c875f657h
+dd 0465dd7b1h
+dd 055295310h
+dd 0cef31a41h
+dd 04797845bh
+dd 03e05ed85h
+dd 0391d76f2h
+dd 030ea2704h
+dd 0653aea16h
+dd 094f99160h
+dd 022e6194ch
+dd 01a754b81h
+dd 07bd49348h
+dd 0bab5c9e9h
+dd 030f4a637h
+dd 00b4a38afh
+dd 0387b196ah
+dd 04c17da5ch
+dd 0f6905835h
+dd 027811780h
+dd 091515fa0h
+dd 0e98da0edh
+dd 0c37aef37h
+dd 08c6219f5h
+dd 0a34e1b05h
+dd 0ad32c284h
+dd 065234351h
+dd 03a3f7b69h
+dd 02d2509cch
+dd 02546ef5dh
+dd 04d80c69eh
+dd 0ef8d68ceh
+dd 09eeea75eh
+dd 062e283c6h
+dd 0a045cfc5h
+dd 07af6fdf7h
+dd 03368351ch
+dd 0a8bb835dh
+dd 023a88f93h
+dd 0e3032ef7h
+dd 0ab8aeb7bh
+dd 094eb0335h
+dd 0111e6649h
+dd 08d5bc893h
+dd 0cf41603bh
+dd 077a00086h
+dd 05a7e45b5h
+dd 0076c1975h
+dd 0a77ef942h
+dd 062cd70beh
+dd 0fd7f70a7h
+dd 07bdec96dh
+dd 06bcc9498h
+dd 04fd80c64h
+dd 0bf1514c6h
+dd 025c605d2h
+dd 039821de8h
+dd 031b7eca9h
+dd 0f2a2a5f8h
+dd 04fe57342h
+dd 045dde379h
+dd 08c20a588h
+dd 039f8e4e9h
+dd 0d456cf6dh
+dd 077b24316h
+dd 0991fc965h
+dd 0d5bf44a6h
+dd 0e48ce62fh
+dd 080d30b8dh
+dd 074b2b426h
+dd 0191b03eah
+dd 0595f5c87h
+dd 0f783b8fbh
+dd 050e27f33h
+dd 05da02d8dh
+dd 09e0f9b7eh
+dd 068007cdah
+dd 04c6eebedh
+dd 0b2b56a46h
+dd 0c18dd411h
+dd 04e1561a7h
+dd 0cc9f117eh
+dd 07c5ce7c6h
+dd 02ae02f2dh
+dd 0ec25cdc9h
+dd 0f468cec0h
+dd 060a6e650h
+dd 0e415e86ch
+dd 04e9ed6cbh
+dd 01e9ffc61h
+dd 0ba884b69h
+dd 00503e6e9h
+dd 00630bd35h
+dd 060c390f2h
+dd 0a729437fh
+dd 06bcc1dbfh
+dd 00ba7d95ah
+dd 06de677a0h
+dd 0709c4278h
+dd 085ea02bfh
+dd 089f6ae8bh
+dd 047c53152h
+dd 0093dcb6fh
+dd 0322eec5fh
+dd 053f0f670h
+dd 0d610224fh
+dd 0d02a57d5h
+dd 08e2cca1fh
+dd 0d76a286eh
+dd 0b0dfe282h
+dd 0ee2b9c37h
+dd 0db0b8d9dh
+dd 0ccc1cc99h
+dd 080459060h
+dd 08c1c972dh
+dd 0e6910256h
+dd 00e78058bh
+dd 07299a562h
+dd 05faeba78h
+dd 0439137bah
+dd 0cc6e93cch
+dd 0af74f4b7h
+dd 04971253eh
+dd 0c7d0a8a7h
+dd 05f390b7bh
+dd 02f4b55d8h
+dd 0f6249837h
+dd 03884a801h
+dd 054b9ca5eh
+dd 082b9f621h
+dd 04196824dh
+dd 043c11049h
+dd 0465285b3h
+dd 0b9afbf67h
+dd 0ccc933ffh
+dd 0c5f78c50h
+dd 0fe376fc6h
+dd 0d319ebceh
+dd 051d6ace5h
+dd 0e29dc2a4h
+dd 00e6b3911h
+dd 0e68f7b08h
+dd 02082b52eh
+dd 0cddf06b0h
+dd 07134f63bh
+dd 0ef2e87d9h
+dd 0e44c4345h
+dd 0be0813abh
+dd 0e594d143h
+dd 01af92dc2h
+dd 08db542c7h
+dd 0484de76ah
+dd 03ffa6a49h
+dd 04123ca6fh
+dd 0ca4a1b8dh
+dd 00e0d2724h
+dd 08cb3f9b3h
+dd 0775302cdh
+dd 0ff28ae62h
+dd 02ad64f37h
+dd 0fdc720ach
+dd 0711d1de9h
+dd 03d5cb41bh
+dd 077cdaa26h
+dd 0b0df8bach
+dd 0f55c0022h
+dd 0908f53e3h
+dd 071dbbf51h
+dd 0b2a2656eh
+dd 0ece8ff68h
+dd 0c5f4e9e0h
+dd 0398d3e8ah
+dd 03a1cb703h
+dd 0b3cbf19ah
+dd 0ad525837h
+dd 06392db05h
+dd 02079ebabh
+dd 0bdca4b77h
+dd 02ec8aa20h
+dd 0ab0e877fh
+dd 065ef817ah
+dd 0647feaech
+dd 0eb2f91c1h
+dd 08a65e4b5h
+dd 03a626062h
+dd 0c1ec584dh
+dd 0191a40d6h
+dd 0473e721ch
+dd 0b3f5b754h
+dd 07f3b5a08h
+dd 0d01af17fh
+dd 084f6abc1h
+dd 052438821h
+dd 058e1481ah
+dd 0739a808ah
+dd 09a0cfd7dh
+dd 0adf8e4f1h
+dd 0c2842488h
+dd 00cfc6102h
+dd 033234ca7h
+dd 0c94968a0h
+dd 0b95bbb5ch
+dd 05026dccbh
+dd 08d6b744bh
+dd 065bdc837h
+dd 0b8b02e03h
+dd 07a3bfffdh
+dd 0e36ad08bh
+dd 08a7756e1h
+dd 060e90979h
+dd 0ca8d6524h
+dd 0c71d95e4h
+dd 0009caee2h
+dd 0c4df40c6h
+dd 06f7f0bc9h
+dd 03c0351ach
+dd 0d73ded97h
+dd 027616e9dh
+dd 08633351dh
+dd 04e62d23eh
+dd 0ebe0dda2h
+dd 0d3218e5fh
+dd 0e432057fh
+dd 0447f96fdh
+dd 076e1b69ah
+dd 04b64720fh
+dd 046fd7134h
+dd 05697e3cbh
+dd 04224a5d7h
+dd 00668d6c1h
+dd 014e2585ah
+dd 0e76d51adh
+dd 0b823c2c1h
+dd 0d73ab6c1h
+dd 0a5fce79bh
+dd 027da0ba5h
+dd 0c8f56506h
+dd 0338990dch
+dd 004d65adbh
+dd 0c138de7ch
+dd 09f9c8f97h
+dd 0de33ba0eh
+dd 0d5ea86c9h
+dd 003a8208ch
+dd 07800a841h
+dd 084477342h
+dd 0fabffbe0h
+dd 0e2e41c14h
+dd 0b36a4f9ch
+dd 097b0278ch
+dd 0f74e833ch
+dd 07810351fh
+dd 01e8a226eh
+dd 040f8c8a6h
+dd 00316fb1ah
+dd 07f4e2f06h
+dd 0b4c3ed6dh
+dd 0dc36a231h
+dd 025c145a4h
+dd 02f31ee75h
+dd 05933bce4h
+dd 0b77fef67h
+dd 0b7311b48h
+dd 0cacc0988h
+dd 0daedc34fh
+dd 08feb1d2dh
+dd 05c8147bbh
+dd 008890be4h
+dd 0cf70f3efh
+dd 0bb93761ah
+dd 045927195h
+dd 0a8f44d79h
+dd 0d7f1b5e3h
+dd 05472dfe2h
+dd 0b21073b3h
+dd 0b08636fah
+dd 0047cf485h
+dd 02478fc41h
+dd 0cf03efc1h
+dd 0386bdbb8h
+dd 0bb0a551fh
+dd 010da51a9h
+dd 0dd4c9da6h
+dd 0cc27f920h
+dd 0530d8d8dh
+dd 039831e1eh
+dd 00fc24974h
+dd 0ec6ca6f2h
+dd 02d107693h
+dd 0def095ebh
+dd 041e973cdh
+dd 0895c9f3bh
+dd 0e96f1ab5h
+dd 0f059e73eh
+dd 0560dd725h
+dd 023087824h
+dd 07a9f54d3h
+dd 0faa8fb10h
+dd 0a8c9abb5h
+dd 08e1f7bceh
+dd 09596a053h
+dd 0e1ee4af8h
+dd 0a0e0f9c7h
+dd 0674caaa2h
+dd 0009d8743h
+dd 0c830ce43h
+dd 02cce5757h
+dd 0b930f5b3h
+dd 0299174d3h
+dd 07515aaa3h
+dd 0b09ed90ch
+dd 09c8e6cd9h
+dd 034a0adcah
+dd 0da4c030eh
+dd 0b4b9ac67h
+dd 01ef29ebdh
+dd 002c07fb1h
+dd 08accbf0eh
+dd 0c3138d0eh
+dd 0a398ae61h
+dd 0bb068b98h
+dd 02ea9d9a1h
+dd 01771c6abh
+dd 0a00564e6h
+dd 07bd054e5h
+dd 0487ead0ah
+dd 0850970c0h
+dd 05dffd930h
+dd 03500ddc2h
+dd 0896f2a7dh
+dd 0c891f0f2h
+dd 092ba2a1ah
+dd 0e5905dc9h
+dd 0d2e98eeeh
+dd 06522f2a3h
+dd 067facc61h
+dd 0d097dda1h
+dd 048060f2ah
+dd 0f5c9bc6ah
+dd 07a0da39dh
+dd 00e59685ch
+dd 0bbebf066h
+dd 04c2def05h
+dd 0897401e9h
+dd 01e121dd6h
+dd 0dc00fe78h
+dd 0afa2d0c3h
+dd 06b5b982ch
+dd 05862469ch
+dd 0a231c237h
+dd 08d61ae84h
+dd 0c3a67dc5h
+dd 0058052c1h
+dd 0961c90d7h
+dd 0d5306fddh
+dd 04b4741c2h
+dd 0e1f2cc72h
+dd 03541b837h
+dd 035c4a1abh
+dd 05d701448h
+dd 0b43f97fch
+dd 0c76abf27h
+dd 0a11c97b3h
+dd 071ca9256h
+dd 05ff00b4dh
+dd 0b67e663eh
+dd 01c07cd66h
+dd 011bd35b4h
+dd 0de3c6bcdh
+dd 08086550eh
+dd 0f54b30e6h
+dd 0d023aa06h
+dd 07c8b9058h
+dd 07811b766h
+dd 029daa1edh
+dd 0d2a0658fh
+dd 0e8ff2faah
+dd 078196e23h
+dd 0591659c9h
+dd 09e92521fh
+dd 0c4855115h
+dd 04e95b22eh
+dd 0dfd90a07h
+dd 00663f6f5h
+dd 09fe3688ah
+dd 083a900f8h
+dd 09355dd1bh
+dd 0234d23b4h
+dd 013d7a239h
+dd 0d61e4e6ah
+dd 0c26ad021h
+dd 06eab0907h
+dd 0aafa519bh
+dd 0e422db8bh
+dd 0eadc5dd5h
+dd 0a4ce30ebh
+dd 051f89397h
+dd 0e3164924h
+dd 002c340afh
+dd 028d11534h
+dd 0395b972ch
+dd 08f23d7c2h
+dd 09e88429fh
+dd 01c0a10e3h
+dd 03c7e8ac0h
+dd 050c8ff0eh
+dd 058cf8dcch
+dd 0be5a42ceh
+dd 0b178d248h
+dd 0fadbf993h
+dd 029ff099fh
+dd 0a311f408h
+dd 0e0961251h
+dd 01b1d1817h
+dd 0fcbce13fh
+dd 0792f52f0h
+dd 05b70d6f5h
+dd 0cb867d42h
+dd 02297082eh
+dd 02c41711dh
+dd 0601c57c8h
+dd 00e1725c4h
+dd 0122c1f6dh
+dd 0922c0908h
+dd 0191ea5beh
+dd 0ee6270ech
+dd 056edf0cfh
+dd 002f117fch
+dd 01def1741h
+dd 0fb2fb99fh
+dd 00361b23ah
+dd 0fa0a0a02h
+dd 064f32288h
+dd 0c143169eh
+dd 0a9934005h
+dd 0ad361629h
+dd 0e6ea4229h
+dd 093e1c2a8h
+dd 09b910aedh
+dd 0d2559e77h
+dd 0acfce7e8h
+dd 0a0d1acb2h
+dd 028a23868h
+dd 05c3bf024h
+dd 0c02061f4h
+dd 02ee342d2h
+dd 029fa8f72h
+dd 0baa78143h
+dd 00753bc82h
+dd 07e861dbah
+dd 07fc565a4h
+dd 0c28d42bdh
+dd 0c90a52fch
+dd 01f519595h
+dd 0c7d252bch
+dd 0155009fdh
+dd 03a239637h
+dd 0045b135fh
+dd 094d70fb8h
+dd 064c7dc28h
+dd 028866c9fh
+dd 09e08a92bh
+dd 01bd48d7ch
+dd 0c6b9709eh
+dd 04f77f5e9h
+dd 0e6e45a6fh
+dd 0887013feh
+dd 010198239h
+dd 0561348b5h
+dd 0ddcb2b4ch
+dd 05fc1b5f9h
+dd 048fd1a39h
+dd 0367eec87h
+dd 085b0924dh
+dd 0994d4c8fh
+dd 024c4feb3h
+dd 0ffed62b5h
+dd 0b3ce7787h
+dd 027b02308h
+dd 0cc6f8a1ch
+dd 01b946dc4h
+dd 027eb508dh
+dd 055bda6e2h
+dd 055a89be4h
+dd 0a5f0f790h
+dd 07a161555h
+dd 0273fc094h
+dd 0ce249e3ch
+dd 031261d42h
+dd 040f4a290h
+dd 0c2c18d67h
+dd 0b74d28c1h
+dd 01c079bfah
+dd 0e3ed6bfbh
+dd 027e78367h
+dd 082b42a5bh
+dd 08fbccdbah
+dd 0e65ef419h
+dd 02ab64855h
+dd 0d1803d60h
+dd 044de3714h
+dd 010834665h
+dd 0c8680d25h
+dd 01e794162h
+dd 06fc74a44h
+dd 05281c60ah
+dd 018489d65h
+dd 0115bd20eh
+dd 0c8ed9098h
+dd 093983455h
+dd 03025ffd9h
+dd 0dc406745h
+dd 03915a7f3h
+dd 0b79299b3h
+dd 0497d46d1h
+dd 0ef37e78dh
+dd 0156d0595h
+dd 0ac9a60f4h
+dd 0c5ac751fh
+dd 0051d4cb1h
+dd 0247ebbbch
+dd 0c09a3b44h
+dd 0b8dd0159h
+dd 03cc8808eh
+dd 0c2775172h
+dd 0c952f455h
+dd 0668110fch
+dd 0578670c1h
+dd 0323ac6dbh
+dd 0eee4b5d1h
+dd 062a2d304h
+dd 002169fcfh
+dd 0704fe4dah
+dd 08714c0d1h
+dd 0a650a53eh
+dd 0dbc4e989h
+dd 076faca36h
+dd 03c05964ch
+dd 053a16fd6h
+dd 064edb26ah
+dd 0ac6b316eh
+dd 0422d7350h
+dd 029978e14h
+dd 07642a473h
+dd 0c222d184h
+dd 0c5cb9d45h
+dd 0f24cd776h
+dd 0b5c62d93h
+dd 00ee9e62ah
+dd 025855ec4h
+dd 0957a9bc4h
+dd 0bd9aae73h
+dd 0d0d5de8fh
+dd 0892674deh
+dd 024aae2dah
+dd 0aa126fceh
+dd 05186996ah
+dd 03cc34d01h
+dd 0a6b47645h
+dd 0bf7e950ah
+dd 09f640092h
+dd 0c33a299dh
+dd 09c6dba1fh
+dd 0c749ead0h
+dd 0267dd661h
+dd 0602fece3h
+dd 0103efab4h
+dd 0ca34be3ah
+dd 0804b924ah
+dd 06e536900h
+dd 023d3b911h
+dd 0c6c7b680h
+dd 0d94109e7h
+dd 0a9a57475h
+dd 094780530h
+dd 0a8c534a7h
+dd 034e80f7dh
+dd 0b54e6460h
+dd 04d351b36h
+dd 04d0a71c2h
+dd 031559c63h
+dd 0d93db5bdh
+dd 08467902ch
+dd 0451d638ah
+dd 03d508c54h
+dd 06f024812h
+dd 0d52ed40eh
+dd 036009e40h
+dd 02ddda35fh
+dd 057ae77c7h
+dd 02bd13722h
+dd 0bf529864h
+dd 04b545d49h
+dd 085fd2647h
+dd 0524873f9h
+dd 03f76dc0dh
+dd 02d05088ah
+dd 06606afbdh
+dd 0065a9a86h
+dd 08e872346h
+dd 009057ae3h
+dd 0fc2ed6d5h
+dd 05c819a18h
+dd 0a36080fbh
+dd 042191faah
+dd 020b39d6bh
+dd 052103ba7h
+dd 0bc4656d4h
+dd 071b79f82h
+dd 0e6b3c3c5h
+dd 086caaac9h
+dd 07f30c65bh
+dd 0628ab236h
+dd 073cf2291h
+dd 06a27035ah
+dd 0430807a7h
+dd 0111ad9efh
+dd 034f6a59ch
+dd 00bcc5f04h
+dd 061915247h
+dd 086005a47h
+dd 0f10ca944h
+dd 0a3a496a2h
+dd 0fb548179h
+dd 0c2541f02h
+dd 06d37adb3h
+dd 03aec26f3h
+dd 03fc9b551h
+dd 044880d83h
+dd 043e43bc0h
+dd 036b5c259h
+dd 0716eb179h
+dd 00098ce37h
+dd 08c5577d7h
+dd 077ddb8f3h
+dd 0cf4f24b4h
+dd 000dc2245h
+dd 022541051h
+dd 045cbe090h
+dd 0c86e0de1h
+dd 0db8e7d73h
+dd 0b80629b8h
+dd 0365d25fch
+dd 0475028d0h
+dd 09e073540h
+dd 06c2479fbh
+dd 0a3b8e981h
+dd 0fcaef3c8h
+dd 0d0a90ff9h
+dd 093e3a670h
+dd 0d8adbe21h
+dd 0b3809d63h
+dd 0a40d1f6dh
+dd 046bdd3e3h
+dd 04b7c202fh
+dd 06c4063efh
+dd 0eb1d8557h
+dd 07dbc679dh
+dd 07e1ce0b8h
+dd 0bb09549eh
+dd 04ba0c0b9h
+dd 0344f80d9h
+dd 0f956c6fdh
+dd 05aff59cch
+dd 08354a63fh
+dd 0222e83f5h
+dd 086ecd4c3h
+dd 0cb3c30c8h
+dd 02a250294h
+dd 02498882dh
+dd 0b6e29867h
+dd 0e870565ah
+dd 04b7fae06h
+dd 00d72c8c2h
+dd 01690e06fh
+dd 0f23a2e44h
+dd 015e3aeaah
+dd 02b20a7c1h
+dd 003368fbbh
+dd 064041f1eh
+dd 0cb0494aeh
+dd 045229df9h
+dd 0e044eea6h
+dd 0dab87f89h
+dd 059d8c2efh
+dd 04bfba800h
+dd 093641b10h
+dd 05856cb32h
+dd 0117b6ea0h
+dd 049c39654h
+dd 09902c83ch
+dd 0e557f334h
+dd 0c7915d31h
+dd 02eb1a5b8h
+dd 0f6ddc5c3h
+dd 060ab1579h
+dd 067b10b39h
+dd 0e3d32a28h
+dd 0a1df241eh
+dd 0c222727fh
+dd 06a019fe5h
+dd 08c49c5f7h
+dd 0c9923ebbh
+dd 053898485h
+dd 0ad587644h
+dd 0f4c97c86h
+dd 03e37a885h
+dd 02b823faah
+dd 05955c6ddh
+dd 0277b780fh
+dd 05996af32h
+dd 0219bd1a3h
+dd 03e2a6f2dh
+dd 02545b536h
+dd 01afe7d3fh
+dd 008c296a7h
+dd 0edd27747h
+dd 0fd6ec628h
+dd 064517b16h
+dd 0fd5d89eeh
+dd 0b9f3ff35h
+dd 05b39b890h
+dd 07f79f880h
+dd 0968159d4h
+dd 0fadd47c0h
+dd 086532982h
+dd 0097d223dh
+dd 019e2bd74h
+dd 06ffaeb06h
+dd 074ad606ch
+dd 07114835bh
+dd 0fd29797bh
+dd 0519dc7edh
+dd 0727e3d97h
+dd 003ccd058h
+dd 0450322b4h
+dd 01033563eh
+dd 0b191814ah
+dd 09beb315dh
+dd 063f9cd39h
+dd 07c907edah
+dd 00cbfd97eh
+dd 093407528h
+dd 01c5bc178h
+dd 0297df4d4h
+dd 028ec1356h
+dd 01ca7b1b5h
+dd 049aab60ah
+dd 0c6fde28fh
+dd 057999fb0h
+dd 0380505d5h
+dd 09e9c312eh
+dd 02227c5c1h
+dd 0e73974ddh
+dd 0d7d7aaaah
+dd 041b6774bh
+dd 0eccbf77ch
+dd 027f9e538h
+dd 0cb42f814h
+dd 0e2863992h
+dd 06112ffbah
+dd 0c70d7c7bh
+dd 0b5c3958fh
+dd 0ec6d4679h
+dd 0252ec653h
+dd 0fff4e686h
+dd 0927a870eh
+dd 025093addh
+dd 06539334dh
+dd 0a8645d44h
+dd 0104552bah
+dd 06e6bc826h
+dd 0bb639196h
+dd 05a6922a3h
+dd 0b2a16d86h
+dd 04001fb9eh
+dd 07fd8f39dh
+dd 07f573110h
+dd 027105467h
+dd 0a65e039fh
+dd 092740b70h
+dd 0e904182dh
+dd 010971243h
+dd 0dd92537dh
+dd 0bd33e6feh
+dd 03b779922h
+dd 06e9b43d9h
+dd 04025a2eeh
+dd 038688b36h
+dd 069c221cch
+dd 0fd3ff54dh
+dd 054794476h
+dd 0f48de8aah
+dd 0d20d12fdh
+dd 0e4490e7fh
+dd 0862a0ad1h
+dd 03a076837h
+dd 04f7904a6h
+dd 02bab14f7h
+dd 0e67c7beeh
+dd 0c140facbh
+dd 0a62f6f20h
+dd 0b9352fe8h
+dd 0613f6e53h
+dd 05221bedbh
+dd 07d8b1805h
+dd 07514c623h
+dd 07313ed15h
+dd 008df5a5ch
+dd 0c138e574h
+dd 0e5fef844h
+dd 0a5b3e427h
+dd 0412ebc83h
+dd 0eac8e8a0h
+dd 0038c17eeh
+dd 0709efb89h
+dd 0ce10e174h
+dd 05ada59e7h
+dd 0d78b9f26h
+dd 0fd977c8bh
+dd 02e2b0864h
+dd 0b1ba98cah
+dd 0a02f8085h
+dd 0fef3fa3ch
+dd 054bb5751h
+dd 0ac50cb19h
+dd 0be9e4773h
+dd 055d00918h
+dd 06b4b2dd7h
+dd 02b722cc1h
+dd 0748810edh
+dd 0a30b7b04h
+dd 0bbfd3a66h
+dd 03df9c784h
+dd 0b738bc28h
+dd 0000762a6h
+dd 00769f866h
+dd 022241e93h
+dd 08e275a82h
+dd 0dccfb094h
+dd 011f06024h
+dd 0a39194cfh
+dd 04778943eh
+dd 05bd58adfh
+dd 059a271cbh
+dd 094b1f331h
+dd 0d5b38504h
+dd 082818533h
+dd 03f23eef0h
+dd 0b6bf7246h
+dd 03f11057fh
+dd 0980bcc11h
+dd 098de0c3eh
+dd 04fd2c706h
+dd 079b81b7ah
+dd 0244e668ah
+dd 031ff4a3bh
+dd 0f72a2f1fh
+dd 045d09162h
+dd 062d242d7h
+dd 0addcd988h
+dd 012895570h
+dd 016e78c9ch
+dd 0282688cah
+dd 09e276bach
+dd 088868f57h
+dd 076e90602h
+dd 0d8661dfch
+dd 0603e82f1h
+dd 04799e8efh
+dd 06221c653h
+dd 0b0a1e331h
+dd 0a5e89cdah
+dd 08efd4e43h
+dd 09e630a9eh
+dd 090b23cb8h
+dd 08d687852h
+dd 0a2988ee1h
+dd 00ca96619h
+dd 02ea1b5e7h
+dd 0649ad751h
+dd 0333dc91dh
+dd 09a34578eh
+dd 03d2034e4h
+dd 0df29078fh
+dd 06665c493h
+dd 09974cd8bh
+dd 0aac342c7h
+dd 06e111a8bh
+dd 0184e2f18h
+dd 06bd1e828h
+dd 0094f0ef8h
+dd 0faf8bbc8h
+dd 082a0071ah
+dd 082258ca8h
+dd 015900928h
+dd 003d72618h
+dd 050227f96h
+dd 027cc5367h
+dd 06a9bcf67h
+dd 02855a1e0h
+dd 0dc8f15d2h
+dd 01c746e47h
+dd 0189a0efeh
+dd 0fac5f29ah
+dd 09ea9679ch
+dd 06eb56671h
+dd 02dfc9561h
+dd 02c78b569h
+dd 0c4e79267h
+dd 04163c37bh
+dd 04b0023bah
+dd 085e335b3h
+dd 07d21816bh
+dd 06b40c12eh
+dd 027de8fb2h
+dd 0f07bded4h
+dd 00525523eh
+dd 0df31f043h
+dd 0e5cd81cdh
+dd 07cc192c7h
+dd 028c1c4a4h
+dd 05f2f2475h
+dd 0565e029dh
+dd 0cb810c36h
+dd 05b40583ah
+dd 0ebdf11e1h
+dd 008aaf422h
+dd 0ed2ffe44h
+dd 0ef4d9926h
+dd 02e92fc0ch
+dd 0ac96e208h
+dd 09c2fdf00h
+dd 07069bd33h
+dd 0bfda7169h
+dd 0f71e7775h
+dd 0785c104dh
+dd 063c7478dh
+dd 09559783bh
+dd 011a1e87dh
+dd 04c04cba3h
+dd 0136ba86bh
+dd 0a52fee67h
+dd 05ad1ec61h
+dd 087559ad5h
+dd 0c4c0bcc1h
+dd 08b1d1d9eh
+dd 08a4eb079h
+dd 0b052d6f7h
+dd 035dbbdf2h
+dd 03863d2bdh
+dd 03c8f3442h
+dd 01b70ab94h
+dd 02119ecf3h
+dd 0e691778ch
+dd 04df7868ah
+dd 0038910cch
+dd 0a674c951h
+dd 0ca9ec4d3h
+dd 0ce905179h
+dd 0cd4c3cc4h
+dd 0860c1049h
+dd 0f75fb7adh
+dd 0df42d0b9h
+dd 07d9fe687h
+dd 0d7b1bf35h
+dd 0269227b4h
+dd 02285c118h
+dd 0cc5ee55bh
+dd 01f0e019ah
+dd 0aa295affh
+dd 07da99714h
+dd 04261861fh
+dd 0a68a3b3ah
+dd 0eeb692c7h
+dd 06dd415b9h
+dd 09fe96c2dh
+dd 0050094fbh
+dd 09fb0fddfh
+dd 045214b41h
+dd 009b7210ah
+dd 04e80736eh
+dd 0350ff5e6h
+dd 024c8f776h
+dd 08a6a931eh
+dd 0818cd347h
+dd 04b5d0c17h
+dd 07aef94b8h
+dd 088e1a9b7h
+dd 049be4517h
+dd 0271bee2ch
+dd 0e2a42a68h
+dd 0dbf717ceh
+dd 0553f2306h
+dd 04b0e1096h
+dd 025e37183h
+dd 0bae8ac3fh
+dd 09cfc8f9eh
+dd 077f01a6dh
+dd 0f87eee56h
+dd 0842c2794h
+dd 06c68ced3h
+dd 02723dc50h
+dd 0a042e832h
+dd 0a920e8dbh
+dd 09bcbc11eh
+dd 0ca5cbd36h
+dd 0f7637b03h
+dd 0353ac7f6h
+dd 0f5bae7c6h
+dd 03caeefb3h
+dd 02ce57fefh
+dd 085009b23h
+dd 01413ea87h
+dd 0adf90ca6h
+dd 06dca7da3h
+dd 0f48d64dch
+dd 05b6d146ch
+dd 01cd50468h
+dd 0ed7742ach
+dd 0dfad9efeh
+dd 0bc202b8ah
+dd 022ece9d6h
+dd 0f9839a11h
+dd 0640631e3h
+dd 021589034h
+dd 0398f2eceh
+dd 09e81d604h
+dd 0693612a2h
+dd 04ea35062h
+dd 06ff5e862h
+dd 08b12c3d6h
+dd 04333bdddh
+dd 07ed57935h
+dd 000dcf7a3h
+dd 02a51da5dh
+dd 04038bccbh
+dd 0f586d277h
+dd 0c86f5e07h
+dd 0c889975fh
+dd 010dc0e7ch
+dd 0d811fae6h
+dd 018eb78f2h
+dd 077dab3adh
+dd 04ce491b4h
+dd 00364a871h
+dd 03997361bh
+dd 06d6da8a8h
+dd 02457b9eah
+dd 05fb5f697h
+dd 0fcb3c60ah
+dd 0eebe5f98h
+dd 09dd67a32h
+dd 007415e21h
+dd 0f04d613dh
+dd 092d404b8h
+dd 089919c85h
+dd 0d8bc31fch
+dd 03c07a662h
+dd 0518678a4h
+dd 0764b23feh
+dd 0f2be3e63h
+dd 074877d86h
+dd 07cc12b9fh
+dd 056e618e7h
+dd 0206fef38h
+dd 0694e9500h
+dd 0c00f1e02h
+dd 075bd3bd6h
+dd 0bbb3af23h
+dd 0b0ebfea4h
+dd 03f16eabah
+dd 0832f5b4fh
+dd 0d0ac8df5h
+dd 0fdcbbfb1h
+dd 0ca58861bh
+dd 0b0da514bh
+dd 0339b91f3h
+dd 0c05a1905h
+dd 00a4dc527h
+dd 014f78626h
+dd 0e7f4da49h
+dd 020fdabb2h
+dd 0162b7e49h
+dd 0486f3ebeh
+dd 0a5b2a0f9h
+dd 0b4cfca80h
+dd 07d09eefch
+dd 01c44a62fh
+dd 0d95ba646h
+dd 0fe5b8326h
+dd 09f3b8408h
+dd 01e9deb16h
+dd 086cc81cah
+dd 08e0a56efh
+dd 0e6455322h
+dd 03d708402h
+dd 0f706479dh
+dd 0d8c29a83h
+dd 06e2e0f96h
+dd 085cfd58dh
+dd 048f46ad1h
+dd 0a275a85ch
+dd 006c0a39ch
+dd 0251687b8h
+dd 045493105h
+dd 001c4b171h
+dd 0e6808d45h
+dd 040207315h
+dd 0c375de2ch
+dd 0385f83b5h
+dd 08061e969h
+dd 00c96ae46h
+dd 0433bea03h
+dd 0798b3c58h
+dd 00be99826h
+dd 0a01416d1h
+dd 0aa61dcaeh
+dd 0056c0b97h
+dd 0bec42229h
+dd 0cd97488dh
+dd 06b9b7c85h
+dd 0a1c264f6h
+dd 054c0ee3dh
+dd 0b4cb9a1ah
+dd 01fa39df1h
+dd 0db3dfba2h
+dd 076aac08ch
+dd 0c48b3cc1h
+dd 0711aeaf8h
+dd 010b11316h
+dd 0ef417e4fh
+dd 0f143771dh
+dd 0baf20244h
+dd 0ac9789ach
+dd 0b398d586h
+dd 0f28058a6h
+dd 00f9705abh
+dd 0ea44949fh
+dd 072469468h
+dd 068ca03fbh
+dd 04972376ah
+dd 069c74a41h
+dd 0811871d8h
+dd 04e946814h
+dd 087478d7eh
+dd 064f63f59h
+dd 04745913ah
+dd 0a62ef101h
+dd 074c352deh
+dd 0751cf06eh
+dd 0b09f8b46h
+dd 0ef1fe2e5h
+dd 0440fb3aeh
+dd 02582ab7bh
+dd 054cd2fe7h
+dd 0e21abb6eh
+dd 0842988aah
+dd 0adaf34feh
+dd 06c43d2fah
+dd 029d153e4h
+dd 06c3bba8ah
+dd 031cf3fcdh
+dd 05f1963d4h
+dd 00a691addh
+dd 0670a1df6h
+dd 065c8e82ch
+dd 0d17e9ed6h
+dd 0fbfd2951h
+dd 06fc46868h
+dd 01bfad17dh
+dd 0c7a72d20h
+dd 028c3a95ah
+dd 0724c64dch
+dd 0f7af4f57h
+dd 022c84e46h
+dd 0f240e2cch
+dd 09169e640h
+dd 09f927f83h
+dd 0eeccf1cbh
+dd 0c0ce8a99h
+dd 0e6eaafafh
+dd 024dc3787h
+dd 0815290adh
+dd 03c75bb0eh
+dd 0d790373ch
+dd 0879c6033h
+dd 06525dfb7h
+dd 04723d624h
+dd 0d46905cdh
+dd 0e7141727h
+dd 0a728fcach
+dd 0f0d7a519h
+dd 05665b9e9h
+dd 0d87d912dh
+dd 03bbccc2eh
+dd 02db8f1ebh
+dd 01b601fe2h
+dd 061258f16h
+dd 0d70de6f0h
+dd 0fdbc0522h
+dd 020ddf3c7h
+dd 01a553c64h
+dd 094899d5fh
+dd 0faf1ff32h
+dd 0d8e1d8cfh
+dd 087c7768ah
+dd 095751959h
+dd 05d370219h
+dd 0e3026466h
+dd 05039a9f1h
+dd 045bee1c2h
+dd 07365f43dh
+dd 0e1198427h
+dd 029dce46dh
+dd 06f4118b4h
+dd 0232092c5h
+dd 026d2c6a6h
+dd 0b783a936h
+dd 033f7ccdah
+dd 02bf67ae2h
+dd 0481bb468h
+dd 0a5d655afh
+dd 01afaedbfh
+dd 04169a72ah
+dd 02acb3d78h
+dd 0b0d7d17bh
+dd 073b7d15ch
+dd 0b2167d68h
+dd 040f059b6h
+dd 010b3e4d5h
+dd 0e45321feh
+dd 06d3e0cach
+dd 00218f63eh
+dd 0394bac39h
+dd 01bf98abah
+dd 0c02f4213h
+dd 0ef5a6a2fh
+dd 099229017h
+dd 0007578a1h
+dd 079c97d48h
+dd 0b6f34ad9h
+dd 0a76fc8c6h
+dd 08720a5c7h
+dd 0dd5c650fh
+dd 0e993586bh
+dd 0ac928286h
+dd 0e65a5737h
+dd 079752eabh
+dd 01ea2b26fh
+dd 0974e342bh
+dd 0c3ecd3c8h
+dd 0a77272c3h
+dd 077a5e6d0h
+dd 006efbe35h
+dd 0bfc899b3h
+dd 058ea6bbch
+dd 072f12156h
+dd 05ad067a3h
+dd 02a3332f1h
+dd 084444135h
+dd 0af2a0c56h
+dd 0858a15c4h
+dd 04acb4005h
+dd 062867c24h
+dd 0d14b1c31h
+dd 0db61bdf2h
+dd 08fc8f4e9h
+dd 0d98296cbh
+dd 00547c04ah
+dd 0ed2138f7h
+dd 0bce72fe1h
+dd 05bf613e6h
+dd 0bc63b203h
+dd 078ec58b8h
+dd 054aebbb9h
+dd 07e7248cah
+dd 063e3671ah
+dd 07defda74h
+dd 067540f6bh
+dd 0842348f1h
+dd 01a494916h
+dd 08b553b25h
+dd 00952f611h
+dd 0da6e5d45h
+dd 02fbf1a12h
+dd 09d5e4c57h
+dd 01d4a6d31h
+dd 01e17bc1eh
+dd 0a557054ah
+dd 055304bc0h
+dd 0288a3848h
+dd 0a3a349a7h
+dd 02813c688h
+dd 0b124479ah
+dd 02bbb6e3fh
+dd 03a66e008h
+dd 0ae3dadd5h
+dd 086dd2f52h
+dd 02bd91ff2h
+dd 0306acef2h
+dd 080da8098h
+dd 0d7269d81h
+dd 0d91a0427h
+dd 07e3ba601h
+dd 0105d9c05h
+dd 0766737b5h
+dd 0115dd852h
+dd 03c7c7abch
+dd 0a69b9f91h
+dd 0ce364edfh
+dd 05c09080bh
+dd 02f503e8ah
+dd 0cbf73b10h
+dd 05bbde47ch
+dd 053978630h
+dd 01207023fh
+dd 0e7c30721h
+dd 082b24db1h
+dd 0fa405b22h
+dd 076da7559h
+dd 0669505f6h
+dd 0c4e1ab5dh
+dd 054f6c505h
+dd 0a57bce97h
+dd 003d1d906h
+dd 0a34caacah
+dd 0e9888fdeh
+dd 07117e9e6h
+dd 0b3776c69h
+dd 0197971cbh
+dd 0d9cf39fch
+dd 0903db863h
+dd 03742d4d8h
+dd 0ed823193h
+dd 0907a037ah
+dd 07cca792ah
+dd 02a029729h
+dd 0bd201957h
+dd 091a8fd35h
+dd 0d8f70ca5h
+dd 0669cffa5h
+dd 0533ec75ah
+dd 0af67e482h
+dd 07414a403h
+dd 08d91aee6h
+dd 0a1668857h
+dd 0725fe46eh
+dd 09f5fcef0h
+dd 0e6da578bh
+dd 02e0ca906h
+dd 0aaf3e051h
+dd 01020f52eh
+dd 0d200d797h
+dd 04d3e85aah
+dd 08ba52db4h
+dd 0d1a57839h
+dd 0ed476b3ch
+dd 006dcfd25h
+dd 05d845cf6h
+dd 06fcfe0b7h
+dd 05611e71ah
+dd 0fed8d42eh
+dd 0f2488277h
+dd 023d60616h
+dd 0c876769ah
+dd 05ddc5cedh
+dd 070961385h
+dd 059d3d730h
+dd 00ed52408h
+dd 0a2a12d8ah
+dd 0ee5bce41h
+dd 0a544ad83h
+dd 087a87da2h
+dd 055e8959ch
+dd 0e7f7da96h
+dd 0ab8e4ec6h
+dd 0084a0272h
+dd 07f9915a2h
+dd 0102535a8h
+dd 07b170310h
+dd 0ee23e9feh
+dd 00dffb87eh
+dd 00d79c4e4h
+dd 065227c9dh
+dd 037ce8de3h
+dd 02d551853h
+dd 00a4ef9c6h
+dd 026e48821h
+dd 0546a1929h
+dd 07f8f2064h
+dd 05c521b90h
+dd 0e7c976c6h
+dd 07083f885h
+dd 0a234b0e3h
+dd 08b8d39a4h
+dd 06c29549ah
+dd 0da743b60h
+dd 02e930d10h
+dd 01ba2d321h
+dd 0a4d7d951h
+dd 0ad805e18h
+dd 06dc49105h
+dd 0f6569fa5h
+dd 05987f367h
+dd 0fd783421h
+dd 05f722c21h
+dd 07116f9fdh
+dd 0ed89b61fh
+dd 05507f7b3h
+dd 072dd97e7h
+dd 0244c160eh
+dd 0f082e6d7h
+dd 0c84d1823h
+dd 0a3146b72h
+dd 01a557c70h
+dd 0ee96bbcah
+dd 0ca49f5e2h
+dd 0494f7b24h
+dd 0fc365e98h
+dd 03c8e9ca2h
+dd 0b9d2c4f6h
+dd 0a9ae8268h
+dd 0510ce236h
+dd 0b9dd09beh
+dd 0055ec06dh
+dd 0a39a5900h
+dd 060e9e598h
+dd 09147cfd9h
+dd 024c5d733h
+dd 0f4ecc533h
+dd 014b08b34h
+dd 0d0eac9bch
+dd 0dfb2a2bch
+dd 09c9ee722h
+dd 0a9bda04bh
+dd 043bb273eh
+dd 09b1c77fbh
+dd 0036404deh
+dd 0746f960dh
+dd 0765d0f8ch
+dd 0844290bah
+dd 055ede2fdh
+dd 00682a5efh
+dd 0d1187569h
+dd 0dc172dd9h
+dd 04a2e00e0h
+dd 032ee66c8h
+dd 0c10432c3h
+dd 0dc689816h
+dd 007541782h
+dd 03b490c8fh
+dd 0703a6c8eh
+dd 0845c9efah
+dd 0363a89f6h
+dd 02541bc40h
+dd 0e1b90a44h
+dd 0a210677ah
+dd 000dc44beh
+dd 046e6bd75h
+dd 0b8c107e9h
+dd 0e97b705ah
+dd 0b5182d0ch
+dd 0da323a1fh
+dd 05822598ch
+dd 05754ddd3h
+dd 011526407h
+dd 0d129bf9fh
+dd 0864fc721h
+dd 02a189af7h
+dd 01866e0f6h
+dd 0a75c995ch
+dd 089e3d5e5h
+dd 08dc987aeh
+dd 048d34bceh
+dd 05f4e6551h
+dd 0817257c5h
+dd 081049555h
+dd 083d99118h
+dd 0e101d1e9h
+dd 0d359722eh
+dd 005f059e0h
+dd 0be0e99b0h
+dd 0fa17edd2h
+dd 0b1e3957dh
+dd 00a2242bch
+dd 0fa56e0f4h
+dd 05f064c80h
+dd 0f8bb63e1h
+dd 030384b5ch
+dd 04b677b01h
+dd 0c84638a0h
+dd 0af22b995h
+dd 0026d501bh
+dd 00cef07d6h
+dd 0fc89c60eh
+dd 02254e313h
+dd 0591de91eh
+dd 0dc665dc3h
+dd 012f57b64h
+dd 00b2539cbh
+dd 0a5b9352fh
+dd 0944e28d7h
+dd 0c8886373h
+dd 03786a7b0h
+dd 026fb416eh
+dd 0cdb35222h
+dd 0801e6e41h
+dd 01e7afb10h
+dd 0ae321623h
+dd 041d07d9eh
+dd 0979fa539h
+dd 0b60aae56h
+dd 03bffb645h
+dd 0894b562ah
+dd 046b31e3bh
+dd 02c321562h
+dd 0a665dc05h
+dd 02ec88d05h
+dd 05e884071h
+dd 05c5d35adh
+dd 0209dca28h
+dd 00dc314c5h
+dd 088c3c5ddh
+dd 05291757fh
+dd 0dd175ac9h
+dd 0c593136bh
+dd 0d64563c2h
+dd 0b84f9cf0h
+dd 091f7a4cch
+dd 02ca1fb95h
+dd 0311a1e6eh
+dd 07c617d85h
+dd 002628ceah
+dd 0b80d5428h
+dd 0d104fc92h
+dd 08b67d595h
+dd 0a5db270ah
+dd 0f509e24fh
+dd 0133dc53ah
+dd 03eeb8a86h
+dd 0ce5d299fh
+dd 079fcb988h
+dd 08661ce4bh
+dd 0282705d4h
+dd 0f3183cc6h
+dd 0541077edh
+dd 03eb22f48h
+dd 079cd7e9dh
+dd 0bc59c692h
+dd 0f61e76bah
+dd 0512f545ah
+dd 0f9efc5fbh
+dd 0a45ca264h
+dd 0701905ebh
+dd 0b358a067h
+dd 02c918e36h
+dd 072742c2fh
+dd 060be5c58h
+dd 063c11659h
+dd 0fd3cd740h
+dd 097b2c486h
+dd 00fa02cd6h
+dd 02fc332f2h
+dd 01ff90af9h
+dd 0d20d2098h
+dd 0547061dfh
+dd 04dd613ech
+dd 0465e3682h
+dd 0d9865397h
+dd 0e9b4d28dh
+dd 0f378b435h
+dd 0afc8b871h
+dd 0ae5ef29dh
+dd 0ddf8c802h
+dd 09171c06dh
+dd 073136dceh
+dd 020e8b060h
+dd 0bd638d0eh
+dd 02128e65fh
+dd 055e3096eh
+dd 0bebaad87h
+dd 00bb0a859h
+dd 0ba10fba0h
+dd 0de65dba1h
+dd 03ef3c370h
+dd 0dfcc2659h
+dd 01695f045h
+dd 0a282cc68h
+dd 07339fc2fh
+dd 0592992dbh
+dd 01661922ch
+dd 00d35ea12h
+dd 03be49df3h
+dd 0d8b9f510h
+dd 0b470ea53h
+dd 0df88c89eh
+dd 0fcd56ed3h
+dd 090391002h
+dd 0fc566b16h
+dd 0443bfd6fh
+dd 0da6c5f96h
+dd 0ed60f2f3h
+dd 01aae50dfh
+dd 00856aa77h
+dd 0c547995bh
+dd 0368f7c80h
+dd 03d8f5f38h
+dd 0d5ed5177h
+dd 04a75e356h
+dd 07657bba4h
+dd 0134f6b04h
+dd 0fab7cf86h
+dd 0d76f2942h
+dd 002122481h
+dd 05c9fd537h
+dd 0fcc20862h
+dd 0949dadb7h
+dd 030f56362h
+dd 0a7392935h
+dd 06c104786h
+dd 0b1e7275ah
+dd 01113d2bah
+dd 0586158bdh
+dd 0f1986674h
+dd 014ff80f6h
+dd 03a6594e1h
+dd 0a5c4e2feh
+dd 079fc78dfh
+dd 0bba59bd9h
+dd 0f7b13cc3h
+dd 0907d610ah
+dd 0e432749eh
+dd 041152056h
+dd 0ca19ebc6h
+dd 0c130071ah
+dd 0b0502d0ch
+dd 018efd957h
+dd 0a8d499bdh
+dd 0756db055h
+dd 0a07dd5ebh
+dd 0cfba7e62h
+dd 0b12f3755h
+dd 021702245h
+dd 03535fc2ch
+dd 04f2b27f1h
+dd 0c24becadh
+dd 0ab40fdc9h
+dd 0355c7439h
+dd 05b530adfh
+dd 0a76a8b55h
+dd 0ddccb638h
+dd 012300220h
+dd 0e434e247h
+dd 0e6801a62h
+dd 01d7949ceh
+dd 017f56954h
+dd 038e10a2ah
+dd 0efc0fc08h
+dd 0b199094eh
+dd 0c14498eeh
+dd 0c4e2aa9fh
+dd 0fed2e957h
+dd 081ed905ah
+dd 0343e6784h
+dd 0c94e77bdh
+dd 07aa51f16h
+dd 0d206dcaeh
+dd 0d0db59abh
+dd 04cc3478fh
+dd 0a51f43f2h
+dd 07e01ecd7h
+dd 080e70025h
+dd 069e8d43eh
+dd 0c0a00a56h
+dd 095f19e3ah
+dd 071313ca8h
+dd 0ec7a3bd6h
+dd 081b41d9ah
+dd 08eb63314h
+dd 06c7d9bb7h
+dd 084b61007h
+dd 0939104f8h
+dd 0f2908832h
+dd 04b44f304h
+dd 0958e08c3h
+dd 017b3c0b3h
+dd 041659fadh
+dd 0f5ab0533h
+dd 070d3f0f8h
+dd 08107264bh
+dd 04e27e91bh
+dd 0da92be39h
+dd 0e0599f7ch
+dd 0e31b5651h
+dd 051d366eeh
+dd 014f53879h
+dd 0f2b01096h
+dd 06e17b81dh
+dd 0a4175fbeh
+dd 0893ca869h
+dd 05af810e6h
+dd 0717f7187h
+dd 025fd1fa2h
+dd 0a2ae8607h
+dd 0a9aa942ah
+dd 0ffc461cch
+dd 00445c73dh
+dd 0095aa823h
+dd 0ecffdd49h
+dd 0c343917bh
+dd 016e31ad7h
+dd 0a40098f5h
+dd 09be2ee79h
+dd 08f68a383h
+dd 00575f8aah
+dd 09bab6608h
+dd 0a9285310h
+dd 087aeef3dh
+dd 00ca1d3a8h
+dd 0b73910c7h
+dd 07dd3c21bh
+dd 0135f8106h
+dd 0540ddfc7h
+dd 08ff191adh
+dd 07e52fe88h
+dd 01bce6011h
+dd 0f3e686dch
+dd 00a259076h
+dd 06e52f1dch
+dd 07251a51bh
+dd 02ed58742h
+dd 03a693769h
+dd 099132d22h
+dd 0e03ed8c8h
+dd 076b962b5h
+dd 071586d2dh
+dd 0b94ac002h
+dd 0af821323h
+dd 0abfd4e69h
+dd 07d58b325h
+dd 0dcc6e381h
+dd 056a334afh
+dd 021880e27h
+dd 045835629h
+dd 044c25ebah
+dd 0fb00f37dh
+dd 0da8ff9bfh
+dd 08a5ba089h
+dd 033f0a72fh
+dd 08d5beb4ah
+dd 05e56e364h
+dd 04a104b89h
+dd 07ae08939h
+dd 0ba09ecb1h
+dd 06428e55ah
+dd 0eac49cc3h
+dd 0b64448e5h
+dd 0efeeda93h
+dd 0ec6c2d48h
+dd 08b6e5860h
+dd 0d759d68eh
+dd 0b2d1130bh
+dd 018661a80h
+dd 04f3ba82dh
+dd 05b5230efh
+dd 099f6f931h
+dd 09860ef06h
+dd 064cec7ffh
+dd 0d6174f09h
+dd 028ef3577h
+dd 015ae454bh
+dd 0056b3cd9h
+dd 02617817bh
+dd 088140d22h
+dd 0938b4f7dh
+dd 0591092bch
+dd 03e8ef107h
+dd 08b2121e6h
+dd 0e15629afh
+dd 0ec3b5f09h
+dd 0e637eac2h
+dd 06adadf12h
+dd 0d43015f4h
+dd 0138495dah
+dd 0bdc1f834h
+dd 01196021fh
+dd 085567c13h
+dd 0af09cec9h
+dd 021a044f4h
+dd 09fcc2a12h
+dd 09e7de9b1h
+dd 01673d146h
+dd 0c8ec0f46h
+dd 03befb1ffh
+dd 001b26584h
+dd 070c1c4dah
+dd 00f09f5e8h
+dd 048bbc5a7h
+dd 08c5859e1h
+dd 031b66ce2h
+dd 030710cb3h
+dd 01dde40e6h
+dd 054fcddfeh
+dd 0c60c71c6h
+dd 0124bf9fbh
+dd 06940c33ah
+dd 09362eb33h
+dd 0cf1cd2c4h
+dd 0b5f9d64dh
+dd 07a504137h
+dd 06c5d9bc3h
+dd 0937d31ddh
+dd 007b88dd5h
+dd 0048838f8h
+dd 0cd936d42h
+dd 0af36e9a3h
+dd 09d01b725h
+dd 0c0805e5fh
+dd 03830a1ach
+dd 08a6c4342h
+dd 0ed7d12bah
+dd 05030debeh
+dd 05886c2d4h
+dd 0507dc846h
+dd 0765f6683h
+dd 0a3c2d3aeh
+dd 074b0b963h
+dd 0a078eecch
+dd 0250d6492h
+dd 04d58bc81h
+dd 0e5515ab3h
+dd 01ce6e3feh
+dd 0d5eddb8dh
+dd 01df51ef9h
+dd 06254cd11h
+dd 0a7fe99c4h
+dd 094005dc2h
+dd 075feeee5h
+dd 018a3f198h
+dd 0cf106b39h
+dd 0b5d267d0h
+dd 0250c5784h
+dd 03757d2f1h
+dd 0ab1d6890h
+dd 00f8c41b4h
+dd 0f33e150bh
+dd 0178a0f60h
+dd 0e7afcea9h
+dd 0102d40f4h
+dd 0a7f7372fh
+dd 023060e6bh
+dd 04185830eh
+dd 0a77d55e7h
+dd 03232f834h
+dd 008c435e4h
+dd 0b1328906h
+dd 0938f8c70h
+dd 0e4f590f7h
+dd 004439539h
+dd 050d1063eh
+dd 0cf512dc7h
+dd 0aaa627cah
+dd 0dbe4c5f1h
+dd 09f554383h
+dd 0857f3277h
+dd 08e1abc09h
+dd 0d5b606c8h
+dd 01774f9f1h
+dd 0770f073fh
+dd 07101142fh
+dd 0eb9957dbh
+dd 00ff49606h
+dd 017cac7a2h
+dd 06d71e119h
+dd 0fe793bebh
+dd 05c0bf69eh
+dd 0b674e935h
+dd 0f2780da7h
+dd 084c2b572h
+dd 0ff62af69h
+dd 0e53f6328h
+dd 0ace37c5fh
+dd 068db738bh
+dd 0d593e5a1h
+dd 01c60251fh
+dd 0f49f6ec4h
+dd 03db9f777h
+dd 0a2499fdbh
+dd 0352e692fh
+dd 0cb39efc0h
+dd 04a74eaefh
+dd 01543e489h
+dd 042f7cb04h
+dd 06f2ccadfh
+dd 0d28530b1h
+dd 041fe4dfdh
+dd 086d16d82h
+dd 0ca367678h
+dd 05d5fa2e2h
+dd 05244037eh
+dd 0f44a10f0h
+dd 0175ec180h
+dd 0ff8d40a9h
+dd 06a0cd0bch
+dd 005dac8d9h
+dd 0f05d3768h
+dd 06578e5ebh
+dd 068051857h
+dd 0a28a8b36h
+dd 0e768fd40h
+dd 09686421dh
+dd 022c754f7h
+dd 049f5a5a9h
+dd 0d35d8963h
+dd 000663b6eh
+dd 096d0905eh
+dd 07b24fc9ah
+dd 0bd0bdd92h
+dd 09619ab9ah
+dd 0c44d40eah
+dd 0dd1e88ffh
+dd 0498e29f6h
+dd 017ee7d54h
+dd 045490dc4h
+dd 0bf39e780h
+dd 023691758h
+dd 0b985d23dh
+dd 017b345e1h
+dd 04f4c04efh
+dd 07c88f008h
+dd 03055d3f7h
+dd 084a06cf4h
+dd 03b019dcch
+dd 023a92eddh
+dd 0834ee40dh
+dd 0386b1271h
+dd 0ece81a78h
+dd 0f004dcedh
+dd 03f036b51h
+dd 063cb0ac0h
+dd 049c4d141h
+dd 0db39a6b3h
+dd 0e8032955h
+dd 0d7f0acfdh
+dd 0acf2f958h
+dd 05f71adb7h
+dd 025202909h
+dd 0f2d2b7c9h
+dd 0a86c2a2ch
+dd 0b1434464h
+dd 03e0783beh
+dd 0835d2da8h
+dd 05fba6610h
+dd 091f8b840h
+dd 066ccdb04h
+dd 0c986dcddh
+dd 0b795aaadh
+dd 073050a94h
+dd 0d0718c56h
+dd 06fdc9e3ch
+dd 06bb001bah
+dd 08d8ecb8dh
+dd 073714f36h
+dd 0f6274330h
+dd 06b4d4f5ah
+dd 09ac4fd33h
+dd 07646385ch
+dd 03c622120h
+dd 0cd9ebce0h
+dd 0ebb428feh
+dd 04697ec22h
+dd 029876710h
+dd 0dae857dfh
+dd 08fec372dh
+dd 090ef4ce6h
+dd 06e2eda6fh
+dd 01593583ah
+dd 099968747h
+dd 0e665e9d7h
+dd 0da87a1b1h
+dd 0ac4b1d23h
+dd 0cd0601c8h
+dd 0e6b30ea2h
+dd 03bf14aeah
+dd 05245196fh
+dd 035996961h
+dd 0877de776h
+dd 026445ac0h
+dd 0243e9be4h
+dd 0decd86dfh
+dd 069420312h
+dd 0f18f3772h
+dd 0881bd27eh
+dd 0223e633eh
+dd 0db6f1dcah
+dd 021e5cc76h
+dd 0e59b7fc0h
+dd 012fa301ah
+dd 07a6b7cc0h
+dd 02e9d3ee6h
+dd 04d663c30h
+dd 0906f344dh
+dd 059099275h
+dd 08ddec064h
+dd 019f76bdch
+dd 0beffe9bfh
+dd 021b68efah
+dd 06098c575h
+dd 0ea5d96cch
+dd 0e9fbe395h
+dd 0b715af88h
+dd 097a9f506h
+dd 05b0a76c7h
+dd 015b5e8e5h
+dd 0c5c04136h
+dd 0375b21e1h
+dd 02acb6e3ah
+dd 018be9fc2h
+dd 086ed4f4bh
+dd 0619d46e2h
+dd 03483ed46h
+dd 0dd082812h
+dd 0dc9b4d63h
+dd 081c46903h
+dd 066fccc58h
+dd 018eac5d2h
+dd 03a66f2bch
+dd 03bc571beh
+dd 099696aafh
+dd 01069bb45h
+dd 06a4ef2e0h
+dd 0453a3ce4h
+dd 01fd0c059h
+dd 0796f0d45h
+dd 08aee2a4bh
+dd 042d2bb97h
+dd 025d4d57ch
+dd 0b701e098h
+dd 0fe4b5a34h
+dd 081e12515h
+dd 09874eceeh
+dd 0fe45b9c3h
+dd 05fd11141h
+dd 09bab853eh
+dd 09a22e2d3h
+dd 0172e9d78h
+dd 08804d0ebh
+dd 00ab35bfch
+dd 046862e64h
+dd 0158aec99h
+dd 0665f59c9h
+dd 0c90b8014h
+dd 0beec8c5ch
+dd 0ca53f5dfh
+dd 04ad9195bh
+dd 09e80b0f0h
+dd 0ce2e543bh
+dd 0c51b7266h
+dd 0322972afh
+dd 02a7c663ah
+dd 07fce6d2bh
+dd 02d632644h
+dd 0cd25bf16h
+dd 042eb1804h
+dd 0b6ff5881h
+dd 075933a66h
+dd 016be615eh
+dd 0b8a021cdh
+dd 035b73a83h
+dd 09d989c85h
+dd 02a770d0eh
+dd 0cc364e17h
+dd 04afc559eh
+dd 0daf9d156h
+dd 07b2e04e6h
+dd 0e137ed91h
+dd 0c4f3e5f1h
+dd 0ec72e108h
+dd 0cc46f6b3h
+dd 0d07623e1h
+dd 0a0322b03h
+dd 06dec2795h
+dd 02fd9a82ch
+dd 0ecad2727h
+dd 02d087b75h
+dd 029322734h
+dd 07818cee0h
+dd 0d224b797h
+dd 00c2894a9h
+dd 0a8bbf92ah
+dd 0ae756beah
+dd 0b9e83065h
+dd 0dcc221edh
+dd 0e3c0e897h
+dd 0736fd3a2h
+dd 075f2000fh
+dd 047fed738h
+dd 06da149cfh
+dd 0ecd4bf60h
+dd 0ce34238bh
+dd 051079eb5h
+dd 01020e227h
+dd 0e50e379bh
+dd 033d0bc91h
+dd 0caed0407h
+dd 0fc235330h
+dd 000df3df1h
+dd 08189e188h
+dd 0db48f11ah
+dd 026fb8ad6h
+dd 0ba6171bah
+dd 0a5e783d9h
+dd 0b6d2efb9h
+dd 0a80c2776h
+dd 07f04a408h
+dd 0a08ce7fbh
+dd 055d7b099h
+dd 08c66179ch
+dd 0775cc4a7h
+dd 0fd8bdba9h
+dd 04418d15ah
+dd 06db71025h
+dd 00884ad92h
+dd 098b93affh
+dd 0afafdb20h
+dd 090cca2ffh
+dd 0f91cf15eh
+dd 0cb2eed13h
+dd 0087c09bbh
+dd 0865470b8h
+dd 038d8f88fh
+dd 06ce7ff17h
+dd 0a63b5fa9h
+dd 02fd36f04h
+dd 0e8e30a0eh
+dd 0100b28b0h
+dd 09519ce49h
+dd 039263ddeh
+dd 08ff3bdf8h
+dd 07b3e39bch
+dd 0b914a482h
+dd 0ab498c73h
+dd 04cb732d7h
+dd 06cf9993dh
+dd 0b00561f9h
+dd 0e8d5d68eh
+dd 00f6785b0h
+dd 02001a4f3h
+dd 071d84465h
+dd 094862a9dh
+dd 0360e76fah
+dd 0a2554ad0h
+dd 0aafba910h
+dd 0382d9923h
+dd 00d34dd16h
+dd 0d7128d91h
+dd 013f4aad1h
+dd 07572ae7eh
+dd 087822c01h
+dd 0d1a815c7h
+dd 0a8245f10h
+dd 07275f5e3h
+dd 017825448h
+dd 03366b273h
+dd 09c298485h
+dd 0fe1e87e0h
+dd 086bf0aa7h
+dd 06e15349dh
+dd 025bbff86h
+dd 02dd2561fh
+dd 0dec39a59h
+dd 0dfdfbcc4h
+dd 0af665ac5h
+dd 0576b8098h
+dd 082942034h
+dd 079260b3fh
+dd 09a1bc449h
+dd 0cf2742deh
+dd 0ced3de19h
+dd 07113ab4ch
+dd 0ec223b00h
+dd 092d35ff1h
+dd 0ef4a68c1h
+dd 0c6570b54h
+dd 02d1fb05eh
+dd 03a64744eh
+dd 0f8844091h
+dd 07cd69f60h
+dd 0d271fbb9h
+dd 0eef9ca98h
+dd 07535ccb2h
+dd 034ff0209h
+dd 0dbe5de44h
+dd 00e321486h
+dd 09364f2f2h
+dd 0c27d3621h
+dd 0768fda51h
+dd 0b88253bdh
+dd 04e1207b2h
+dd 005223466h
+dd 043f543cfh
+dd 069a245c5h
+dd 01efd8165h
+dd 01fac6e4ah
+dd 0921ed1c2h
+dd 07d28009eh
+dd 0f6b3fcebh
+dd 0fff42275h
+dd 021c72f77h
+dd 0ed13012ch
+dd 0656ef054h
+dd 02bff5abah
+dd 08181ad5eh
+dd 04804c30ch
+dd 06998fc66h
+dd 0e6309c78h
+dd 05727f823h
+dd 0df9c3466h
+dd 009fdb045h
+dd 09da066e7h
+dd 07d995d52h
+dd 003e796a5h
+dd 0eac311e5h
+dd 0d339f6c7h
+dd 02ccf1486h
+dd 0edbbe992h
+dd 06101cb24h
+dd 030a6e33ch
+dd 03169bb09h
+dd 0991f7cb6h
+dd 0ccc04239h
+dd 07092c267h
+dd 0691ce0a9h
+dd 09c0cf953h
+dd 09bf96bc9h
+dd 011997e18h
+dd 00c3c9faeh
+dd 05dbb13eeh
+dd 02b230f77h
+dd 03ad968e4h
+dd 05dc7eca2h
+dd 02d03e1f6h
+dd 0a3f0655dh
+dd 0dad9a145h
+dd 04e558dd5h
+dd 047df98c2h
+dd 0d4bfc96bh
+dd 07c44bc11h
+dd 0432917b9h
+dd 0db09380ah
+dd 00d98dd99h
+dd 0c06abe4ah
+dd 06c57a3ech
+dd 0280caa14h
+dd 03c90858dh
+dd 064def2ceh
+dd 02170971dh
+dd 0de522854h
+dd 0f7bb7696h
+dd 078dad371h
+dd 04ca69f66h
+dd 0273c9fc1h
+dd 07cc4016fh
+dd 0b9d0d8e0h
+dd 0ee680cbah
+dd 03c60873ch
+dd 080a774e6h
+dd 036b0b2dch
+dd 0daabe2b3h
+dd 00400f4d2h
+dd 02ac9957bh
+dd 0ae1eee1ch
+dd 03e316557h
+dd 038fb2dfeh
+dd 0ff54244dh
+dd 0c9be3a4dh
+dd 045e49089h
+dd 09fb8c00bh
+dd 0f53ee7c3h
+dd 06c12bb85h
+dd 06592edd0h
+dd 0db97d269h
+dd 028236c79h
+dd 08be44907h
+dd 01700b32ah
+dd 05a5b27d2h
+dd 0abb6354ah
+dd 0f8ca610fh
+dd 0f9b525b1h
+dd 0e0969b16h
+dd 0f6e87f48h
+dd 036f231c8h
+dd 081c034c7h
+dd 07cb42e83h
+dd 02bcbdffbh
+dd 0c252e855h
+dd 0a74e56d4h
+dd 0130ef4d2h
+dd 05af53acah
+dd 09cb82f1ch
+dd 00ab5f986h
+dd 01e9efd12h
+dd 07db69914h
+dd 08932685ah
+dd 03dfb2726h
+dd 02e22e848h
+dd 014833321h
+dd 074cab20ch
+dd 08f20f946h
+dd 032f0e872h
+dd 043d6162eh
+dd 0b7963126h
+dd 0afb02bb3h
+dd 0604fca3ah
+dd 062556520h
+dd 025864abbh
+dd 0caeed906h
+dd 0780cea25h
+dd 054613b82h
+dd 04bb79557h
+dd 0e8e1f043h
+dd 0f88166feh
+dd 07e3c1575h
+dd 03b3cd3d4h
+dd 0def23abah
+dd 09f18e049h
+dd 053aeca46h
+dd 064006fd8h
+dd 0860611abh
+dd 041ebc5f0h
+dd 09b800c8ah
+dd 096b37436h
+dd 046b9637ch
+dd 04989982fh
+dd 0beced127h
+dd 06e2bf4f7h
+dd 0a2d81876h
+dd 0f7e795f2h
+dd 03b8eaf3bh
+dd 001954c27h
+dd 05ac640afh
+dd 0663512f9h
+dd 09c4ee1f8h
+dd 02832afc9h
+dd 08e797bdfh
+dd 024230355h
+dd 0a3baa21ah
+dd 015d4d55dh
+dd 0df586f8dh
+dd 0eac8ddb7h
+dd 0023d666bh
+dd 062d60abdh
+dd 0a8dfd0c1h
+dd 080e80dbfh
+dd 0022ae364h
+dd 0e9c71501h
+dd 0de74b530h
+dd 0080b42bbh
+dd 0f904cb3fh
+dd 02f831f84h
+dd 0125dad67h
+dd 0518a7f75h
+dd 0eff523eeh
+dd 095f09009h
+dd 054b4ac8eh
+dd 0cbbd4d11h
+dd 0cb15061dh
+dd 07fcb63fah
+dd 079da4b62h
+dd 0fb6f2ff5h
+dd 07249cb33h
+dd 0e720086ah
+dd 07373b599h
+dd 0b0e724d6h
+dd 0d7cae31bh
+dd 04fd98adfh
+dd 010ccc0d9h
+dd 0af515a4ah
+dd 0d782f529h
+dd 0fe41897bh
+dd 0621e64f0h
+dd 0852ae44fh
+dd 044fc4cc0h
+dd 04fb4b45ah
+dd 0c1755ccfh
+dd 06bec0526h
+dd 062199daeh
+dd 049fe74d2h
+dd 0a3a582c1h
+dd 0ce2bb777h
+dd 0f5f471a6h
+dd 0c45091d9h
+dd 069471df5h
+dd 023218fa5h
+dd 085d49abah
+dd 0bbf0c82ch
+dd 0ae8dd050h
+dd 046745e74h
+dd 0b61976a9h
+dd 038c2a516h
+dd 0c0b5f499h
+dd 0ac239c4bh
+dd 052cc898eh
+dd 041c57a35h
+dd 0812b270fh
+dd 026433663h
+dd 076588fdch
+dd 01978a66ah
+dd 004c51b08h
+dd 06ecdac92h
+dd 0b8c3a7ach
+dd 0ddbb5ddah
+dd 090744c3ch
+dd 096e4409ah
+dd 0bd89a69bh
+dd 08c6102cah
+dd 0c66a61b5h
+dd 05f02d2e1h
+dd 0b719284dh
+dd 07ed90c08h
+dd 09753d8b5h
+dd 0c435b232h
+dd 0afe90538h
+dd 0bf00dfcah
+dd 0e66242fdh
+dd 032101d31h
+dd 0feeff8adh
+dd 028817fd3h
+dd 0421b28aeh
+dd 09f904cd3h
+dd 0e490a726h
+dd 0b3b59e19h
+dd 09c58cae9h
+dd 0432405c5h
+dd 01dc6d8d4h
+dd 08c2a9af4h
+dd 0120a9ab6h
+dd 06eab3a4ah
+dd 06ceba8a0h
+dd 0b8ec692ah
+dd 09fcd456fh
+dd 0201733aeh
+dd 02c8533b6h
+dd 0fd001527h
+dd 094adada5h
+dd 0208e4da1h
+dd 0f885699bh
+dd 0d5f54bbbh
+dd 03ba9ec33h
+dd 0f333c6bfh
+dd 064771b4eh
+dd 0b5fc4da3h
+dd 0757152a6h
+dd 0866e61a5h
+dd 0b1c4ab47h
+dd 0dbe25b37h
+dd 03a29a728h
+dd 0704ef266h
+dd 074001c52h
+dd 0e1248c58h
+dd 0c4669523h
+dd 08434c799h
+dd 0e88460deh
+dd 05b0994ach
+dd 0d622162eh
+dd 07ec71bc2h
+dd 09328b409h
+dd 097a54b20h
+dd 016cc0694h
+dd 046877405h
+dd 05307bcd4h
+dd 0c027679ch
+dd 079706a65h
+dd 04f05a992h
+dd 0799710dbh
+dd 0f6608d11h
+dd 0fc6be2c1h
+dd 08d64d21ah
+dd 07380d0f0h
+dd 018eec255h
+dd 040620281h
+dd 0528194aah
+dd 063781b7ch
+dd 09c0fcc4bh
+dd 0e2784314h
+dd 0edd0b008h
+dd 0b59ce527h
+dd 091a58ed1h
+dd 0554ab91eh
+dd 06b0d573eh
+dd 059ca62fdh
+dd 0694791b4h
+dd 07804d7cah
+dd 0034e8983h
+dd 07f4bb098h
+dd 0d2d9f342h
+dd 0faa96d74h
+dd 05331a8c7h
+dd 04b4cc8dch
+dd 0011d4eb1h
+dd 014e806a9h
+dd 09ab56270h
+dd 01e0cc290h
+dd 058275e62h
+dd 0ceab1ff2h
+dd 079882132h
+dd 0f09f5207h
+dd 0d275faf8h
+dd 059b38c35h
+dd 0ba616d23h
+dd 06fc281e9h
+dd 053968f6eh
+dd 0fe4b7adeh
+dd 071a44369h
+dd 001e86222h
+dd 012d8d6edh
+dd 05b790a28h
+dd 0bbb4b01ch
+dd 0149d12dch
+dd 07a80c032h
+dd 0645b340eh
+dd 0ba062155h
+dd 0981b6ebbh
+dd 0a8062c81h
+dd 0a2421e41h
+dd 0cd84e074h
+dd 0bff5e0deh
+dd 0a2c234f0h
+dd 073595cf0h
+dd 03afcee22h
+dd 09da4e1ech
+dd 0dd05656bh
+dd 07961d271h
+dd 0446a1a21h
+dd 0cf87f8cfh
+dd 080bfd58eh
+dd 05c13f477h
+dd 0d5cf4863h
+dd 0be5c38a5h
+dd 057214f18h
+dd 0cb3315d5h
+dd 057d691c9h
+dd 0a9a36568h
+dd 0a8cd60ach
+dd 0ed49a9dah
+dd 0e7ba8f17h
+dd 09781e20ah
+dd 05d7835dah
+dd 0a90a677ah
+dd 0cc2faf85h
+dd 07bbd9897h
+dd 0162ce22fh
+dd 0c0c0d7d9h
+dd 0d61e7ce8h
+dd 02a01eee2h
+dd 06c041a7bh
+dd 093aab521h
+dd 018aa1fddh
+dd 022e66d75h
+dd 06b26854fh
+dd 0f15e3d29h
+dd 022d446c8h
+dd 04095a7bfh
+dd 02482f03ch
+dd 086c7d40ah
+dd 068ce288ch
+dd 0755ed6f1h
+dd 0b136b807h
+dd 07adf31c6h
+dd 01cb33f42h
+dd 0afdc2825h
+dd 093ab28b0h
+dd 0a5392189h
+dd 010b91f65h
+dd 0aca24affh
+dd 079797a6ch
+dd 003f2d775h
+dd 037cfdd07h
+dd 0dfd5db1dh
+dd 0c34ec427h
+dd 0950a9a8bh
+dd 0974d4186h
+dd 0582624dch
+dd 0699bc027h
+dd 002e60880h
+dd 06b3abc14h
+dd 029f88969h
+dd 081faec96h
+dd 06670dd79h
+dd 0c100f579h
+dd 0bd969fa4h
+dd 0c7cadf11h
+dd 008d577b0h
+dd 0334716cfh
+dd 0893e73e9h
+dd 0cea78602h
+dd 0fb8c70f6h
+dd 01ee4a10eh
+dd 0aaded606h
+dd 09fd399edh
+dd 029ea22a0h
+dd 01861b4a8h
+dd 0f716e13fh
+dd 0c3ed7e24h
+dd 0195f2bb1h
+dd 0dc31346eh
+dd 07f798226h
+dd 054cc7d96h
+dd 0411eb93fh
+dd 041a0a803h
+dd 0813cd640h
+dd 0b96badc9h
+dd 070614ecbh
+dd 092ee6dech
+dd 0a7a775a8h
+dd 0a6ad8288h
+dd 08eeede98h
+dd 0ec2c5d32h
+dd 0926803c4h
+dd 0d571a696h
+dd 0e7f2918eh
+dd 07c2a5c81h
+dd 0b0d929a8h
+dd 08598baf8h
+dd 0c2702defh
+dd 0a1fd7f9ah
+dd 031d09914h
+dd 00c7212ebh
+dd 08f5df451h
+dd 0492a2824h
+dd 0d245befdh
+dd 015e509e9h
+dd 05504103fh
+dd 0be0429ebh
+dd 0480217a0h
+dd 0945db32bh
+dd 0f1fbdf06h
+dd 038140a98h
+dd 0c4733081h
+dd 0e591151fh
+dd 0e65f9475h
+dd 0bc7db757h
+dd 00c98eefdh
+dd 0d89435b6h
+dd 0e5c4e592h
+dd 01205dcafh
+dd 0c7dfb6e7h
+dd 0bbbdbe19h
+dd 07b2fd8b0h
+dd 04090670ch
+dd 04070a5ech
+dd 07866be25h
+dd 073fecdb7h
+dd 0600c7d01h
+dd 05c70415ch
+dd 0606280efh
+dd 0c8e08d44h
+dd 0868bf9c5h
+dd 08070cbf8h
+dd 032492e95h
+dd 07cc0033ch
+dd 0a1230e89h
+dd 0cf856537h
+dd 01403535ah
+dd 0ef63f4d7h
+dd 02260984bh
+dd 033c9a6b7h
+dd 06e3e4981h
+dd 0e73692c1h
+dd 0a6398a86h
+dd 0ac1a6e95h
+dd 04ee184bdh
+dd 07677d546h
+dd 04085bc12h
+dd 05b3613b8h
+dd 08099eca1h
+dd 0383cc90eh
+dd 02c7fa143h
+dd 00d2f3b53h
+dd 037ec8b16h
+dd 09944b01eh
+dd 06ab9da31h
+dd 01e35bf24h
+dd 04cd54198h
+dd 0a559e670h
+dd 0dce70646h
+dd 03201b875h
+dd 097142262h
+dd 07e397394h
+dd 00c8744ech
+dd 0a0a95424h
+dd 04271543ah
+dd 030bd5e91h
+dd 0c9ed1a03h
+dd 0fd98dc03h
+dd 0294ead9eh
+dd 005261b5fh
+dd 05a7619b7h
+dd 0bdde76fah
+dd 050f67cd5h
+dd 06e5a2242h
+dd 0fd7f7ef7h
+dd 0f1402703h
+dd 0b574da19h
+dd 07dc4c0e6h
+dd 0830c2e1dh
+dd 0f007f619h
+dd 07ff9510fh
+dd 0b31f5700h
+dd 0151dead7h
+dd 0b777b9bbh
+dd 031e5facbh
+dd 0e3cbe569h
+dd 09961f18dh
+dd 014af0baeh
+dd 076ba2edfh
+dd 075a503fdh
+dd 02a37c283h
+dd 0021f3824h
+dd 09932e6bfh
+dd 0e83be9d9h
+dd 0f70b18e6h
+dd 0ed4da12fh
+dd 068f2d93ah
+dd 0f79172fch
+dd 0c16bef9fh
+dd 0cc367162h
+dd 0e0b3e2c6h
+dd 09fd819e4h
+dd 0d66eb503h
+dd 017641a70h
+dd 03e500c77h
+dd 06888e249h
+dd 0c08d0578h
+dd 0a4b26da6h
+dd 01f93a194h
+dd 0529b41feh
+dd 09cf1708dh
+dd 02a01665eh
+dd 08d5fc3fbh
+dd 0de26a739h
+dd 0271ed34bh
+dd 0fdb242ach
+dd 0a3cb14d8h
+dd 0d20ff490h
+dd 06f209d29h
+dd 09a88ba57h
+dd 06135b601h
+dd 0c5bfe8bdh
+dd 0ace20614h
+dd 094f306aah
+dd 059acb30fh
+dd 034c9cefdh
+dd 00617c4b2h
+dd 0d60df770h
+dd 0e7d6fb73h
+dd 0923ce760h
+dd 0340c76d1h
+dd 043b1d87ah
+dd 0d483b8c1h
+dd 0e15cda60h
+dd 0afd594d1h
+dd 046193e7eh
+dd 0d9ae9a85h
+dd 0dab29e7fh
+dd 0359c732ah
+dd 009dff277h
+dd 06821a852h
+dd 05af49ea5h
+dd 039188814h
+dd 09590eb4ch
+dd 045132c73h
+dd 0436ae2edh
+dd 04f0b482ch
+dd 08941492ch
+dd 050db2b0ch
+dd 077b1a8e5h
+dd 080a4017bh
+dd 02125995dh
+dd 030274030h
+dd 0dafd9bf7h
+dd 057f69561h
+dd 0ce79a204h
+dd 021b5c2cch
+dd 05c887d81h
+dd 0b87aaf90h
+dd 0cb5a5b8bh
+dd 0c160d173h
+dd 01c68d3a3h
+dd 0a4ec8f8ch
+dd 0d4f80bc7h
+dd 0e9df4b3ah
+dd 0fff31c75h
+dd 0b3f89d80h
+dd 0c40aea07h
+dd 09ebd724fh
+dd 005dd5ab5h
+dd 0e7c78ef3h
+dd 0b1480c07h
+dd 0085d3427h
+dd 0899116b7h
+dd 0451379e0h
+dd 0326c16c4h
+dd 03e1f91d2h
+dd 0f0470d72h
+dd 034ba1af6h
+dd 0695077e2h
+dd 004bda600h
+dd 0c07ab2edh
+dd 0f84cf937h
+dd 074262d00h
+dd 0c6c30949h
+dd 0f0b0f0d7h
+dd 02cf1af12h
+dd 04f94017eh
+dd 0145ae675h
+dd 074f6411fh
+dd 06350a7dah
+dd 0f7749e75h
+dd 0da143ab2h
+dd 0b5187c2ch
+dd 0409695beh
+dd 03970d70dh
+dd 01588f043h
+dd 0b8d132d2h
+dd 06671cfaeh
+dd 07969921dh
+dd 095978c34h
+dd 065ec549eh
+dd 0516917fch
+dd 00a3d6121h
+dd 0cd6e5350h
+dd 0cbaa54c2h
+dd 03f5a74b0h
+dd 0582f05f9h
+dd 0cf766b75h
+dd 0f6950a4dh
+dd 0d7332ebbh
+dd 018be1c1ch
+dd 04314b876h
+dd 0ed102b65h
+dd 0fb903722h
+dd 0db4a1229h
+dd 08afe1005h
+dd 02a749f77h
+dd 0d9d6a69fh
+dd 0df727d47h
+dd 0fc135db9h
+dd 09575fd11h
+dd 0aa57932fh
+dd 07d80abcdh
+dd 0910fa7d9h
+dd 062f0b06bh
+dd 0286bc203h
+dd 03a9122a8h
+dd 08682f659h
+dd 0502ddeb8h
+dd 06ae376d9h
+dd 05a9737a4h
+dd 0a077f634h
+dd 09d606addh
+dd 010c8973bh
+dd 0ca36ebe6h
+dd 092baa2f1h
+dd 0ff144435h
+dd 0f3d1c177h
+dd 06423e939h
+dd 080cd1730h
+dd 0676aea22h
+dd 06387423bh
+dd 0cc0bbda1h
+dd 03a998dfbh
+dd 0ff34c581h
+dd 05b750e3ch
+dd 071240ef3h
+dd 098d6cc24h
+dd 005b73c9fh
+dd 0fd931bf8h
+dd 0f48bc8d5h
+dd 03b12408eh
+dd 0c0fcefa4h
+dd 006631505h
+dd 05b7e39ffh
+dd 070aa40eeh
+dd 0216e5e05h
+dd 0052ea029h
+dd 0dc5d6d19h
+dd 0df0fcfd1h
+dd 0d2bf11ech
+dd 02436a8c1h
+dd 0b137849dh
+dd 0cd9eb5ddh
+dd 03f7ef0c7h
+dd 043304d1ah
+dd 0eebdab55h
+dd 0fc0fbea9h
+dd 0bfefa591h
+dd 018c5659ah
+dd 0129a41b0h
+dd 08f62fd98h
+dd 0865d8559h
+dd 05988a8ach
+dd 094766486h
+dd 0b48a5429h
+dd 02a958293h
+dd 012224ffbh
+dd 0ca19c530h
+dd 077284c10h
+dd 035f9c6e9h
+dd 08ce11459h
+dd 06be89416h
+dd 088eab4cdh
+dd 0f5686034h
+dd 0322cd5efh
+dd 0781ffc85h
+dd 0ca7f7806h
+dd 058923a62h
+dd 0739d4230h
+dd 09f386a5dh
+dd 0333127e3h
+dd 0c8b2e4d6h
+dd 07c5ba261h
+dd 014c7b1bdh
+dd 0713c5d97h
+dd 0ffa9a9e0h
+dd 07638e4ach
+dd 02fa59e92h
+dd 056ac30c7h
+dd 08a063995h
+dd 0927cf54eh
+dd 07ecc0b9eh
+dd 0dd1854f5h
+dd 0ac2f6b83h
+dd 00e2e8407h
+dd 0acd9590bh
+dd 090faa916h
+dd 0256ca3e0h
+dd 0640e7f50h
+dd 0e2f4cc14h
+dd 06b51b448h
+dd 087b20979h
+dd 045c6f265h
+dd 082667ce4h
+dd 0ce1c972fh
+dd 0c2db0111h
+dd 0953f8559h
+dd 01c64719ch
+dd 06ba8d0feh
+dd 07e79a1d1h
+dd 0aff61063h
+dd 02e193451h
+dd 0701f26b0h
+dd 0fa6eff7bh
+dd 06a199d3fh
+dd 02a8c4576h
+dd 0aeb0cc32h
+dd 0f185ed07h
+dd 0aae1ac66h
+dd 0953a0c3eh
+dd 030780cffh
+dd 046a4161dh
+dd 0e21f688dh
+dd 06b294e90h
+dd 0f91613aah
+dd 080c8db22h
+dd 01d09bdf9h
+dd 059955c4bh
+dd 0feac02d2h
+dd 02fdc5595h
+dd 031565547h
+dd 020e23749h
+dd 0dbbb2806h
+dd 01607a9fah
+dd 005cef0f3h
+dd 063461a5eh
+dd 0e4223753h
+dd 0ef81bc10h
+dd 098232410h
+dd 014e337aah
+dd 0818ef33dh
+dd 089ad2a7dh
+dd 02d3a55c6h
+dd 0d9d423ebh
+dd 0b85987c2h
+dd 0121af640h
+dd 09cf0e72bh
+dd 04323539fh
+dd 07688e4a2h
+dd 0411b1daah
+dd 042dc064ah
+dd 07900979bh
+dd 03ccd9899h
+dd 021ce8ad7h
+dd 0d7d56db3h
+dd 0fde3434ch
+dd 02834142ah
+dd 001170f6ch
+dd 0839988dah
+dd 027992b3dh
+dd 03f517cc6h
+dd 0a8612b9eh
+dd 07f8c2e56h
+dd 0b804cdf6h
+dd 0691ab3c2h
+dd 07cb13208h
+dd 02337ae84h
+dd 004d6b46dh
+dd 03da41ea3h
+dd 04a44e21eh
+dd 0591b9e64h
+dd 0bddc9f03h
+dd 02b68fe66h
+dd 0729d991fh
+dd 0c5da8d04h
+dd 0144d7eddh
+dd 00d626aabh
+dd 0f4cdc05ch
+dd 0c539355dh
+dd 0b5c1c5bah
+dd 0bbdb593dh
+dd 057aad46ch
+dd 0eaf59b1dh
+dd 0ab881425h
+dd 0d44207aeh
+dd 0bb362c29h
+dd 0308cc5dah
+dd 0729e4d55h
+dd 033e74bb3h
+dd 01d364d55h
+dd 032cfe2d0h
+dd 0ed2be604h
+dd 0b982ad94h
+dd 0a3e8f349h
+dd 0fcc39062h
+dd 089fb062ah
+dd 0b8ac00aeh
+dd 0ebb6d2afh
+dd 0f0af6a5fh
+dd 0ff95a459h
+dd 01f00897eh
+dd 069945446h
+dd 02c962dbfh
+dd 05df6c64fh
+dd 04c61c9e6h
+dd 0c99e54e5h
+dd 0286a9dd6h
+dd 0bbf1c8edh
+dd 070edfdfah
+dd 0f72e9529h
+dd 05778ab7dh
+dd 09261efb9h
+dd 0d08e547ah
+dd 0c21fefcch
+dd 040d8b996h
+dd 036316820h
+dd 07c5b9f85h
+dd 06c6921b4h
+dd 0f7674e0ch
+dd 02b5d312fh
+dd 0d9637096h
+dd 0e3f0126eh
+dd 022eeca61h
+dd 0abeecf53h
+dd 0464945b6h
+dd 0d1c7c13bh
+dd 0e479015eh
+dd 03d774396h
+dd 08d26048ch
+dd 0a8ba8cd9h
+dd 0b70f805ch
+dd 0f4ca04cfh
+dd 051b97edah
+dd 0f2562b68h
+dd 007ea017fh
+dd 01e91fc07h
+dd 0d6abcf77h
+dd 06d4f2d2ah
+dd 015e0ca08h
+dd 0cdf62245h
+dd 0330e3fedh
+dd 0331c6072h
+dd 05eaba0ceh
+dd 0aae893fbh
+dd 083561fb6h
+dd 02bfb3f4ah
+dd 0c98ef346h
+dd 002c58907h
+dd 009598ab1h
+dd 0b5c1657ah
+dd 0543e4440h
+dd 0abaac88dh
+dd 01dff1d81h
+dd 03eb163f7h
+dd 028e63b35h
+dd 0121950ach
+dd 0953f3fe3h
+dd 0effad345h
+dd 097fae2bch
+dd 0c9e28232h
+dd 0218f9ac4h
+dd 01f0daa44h
+dd 0c97a8e10h
+dd 0abde1823h
+dd 00eafadfch
+dd 06c2b21bdh
+dd 0fab0e895h
+dd 004fc4b5ch
+dd 05aec95f7h
+dd 09caa21ach
+dd 0dcdcd666h
+dd 081e01064h
+dd 0a531930dh
+dd 00dfc716fh
+dd 0d1fd2553h
+dd 0bf87602bh
+dd 0852f1a4dh
+dd 07e5109a0h
+dd 02e592251h
+dd 0d02eb8ach
+dd 080796a6bh
+dd 0068b23f3h
+dd 02bbb65b3h
+dd 06b9822c1h
+dd 0c86e3bbfh
+dd 0160f5bach
+dd 056c22993h
+dd 05a9b0460h
+dd 05c3a6edah
+dd 005a91cedh
+dd 05b396c2eh
+dd 05a2a07b3h
+dd 0c4faa470h
+dd 0dec40eafh
+dd 0c6a1f3c5h
+dd 0068b0040h
+dd 046c12508h
+dd 04fdf47dch
+dd 023d7908dh
+dd 0aaabd2f5h
+dd 0715f535dh
+dd 0f027310ah
+dd 04bbea527h
+dd 0b1d33c9ah
+dd 0e35c7768h
+dd 04a8a0672h
+dd 08ced3d8ah
+dd 0a2179cd8h
+dd 09deedc38h
+dd 0a3747a20h
+dd 0b87aefd9h
+dd 094f4f615h
+dd 029806885h
+dd 03de6be79h
+dd 0f4354a12h
+dd 0e014a4bbh
+dd 0c46075d7h
+dd 04a8706bfh
+dd 09c6ddfb1h
+dd 083e8beceh
+dd 0e1cc0fbbh
+dd 0ad7d7862h
+dd 0ffe4150ch
+dd 0870fe0cdh
+dd 038fe3efah
+dd 07b8de773h
+dd 036221b01h
+dd 04297c27fh
+dd 0e1ffe58fh
+dd 0be0dcf29h
+dd 0c8733586h
+dd 0ff34694bh
+dd 041022526h
+dd 02462561fh
+dd 090158314h
+dd 07aa113d6h
+dd 02225fd54h
+dd 0c80dc0f5h
+dd 0d00b0ec0h
+dd 00961dd59h
+dd 090c45f0fh
+dd 0f07afd76h
+dd 0faad3be5h
+dd 0d08a2798h
+dd 09428e283h
+dd 00b72a825h
+dd 0cdbdef2dh
+dd 0a46662edh
+dd 0a4b4d0f8h
+dd 0b1070ab9h
+dd 02d04cc1fh
+dd 055704f52h
+dd 0a11d70dbh
+dd 0cb478325h
+dd 04f55d4d0h
+dd 0d3c5d598h
+dd 0f13c5b3eh
+dd 0526b623eh
+dd 06e9ea0adh
+dd 0af09c55eh
+dd 04e9ef602h
+dd 0e6bbccech
+dd 0d3584da3h
+dd 0f700306ch
+dd 09302a564h
+dd 058efa47ah
+dd 0560ca2cbh
+dd 0341465c7h
+dd 0a6231a1fh
+dd 0e78c9764h
+dd 0cd8db226h
+dd 0ce6880feh
+dd 05aae3aa6h
+dd 071ef3377h
+dd 0af443f77h
+dd 093d406c2h
+dd 05d512ce2h
+dd 0322672aah
+dd 0c2228935h
+dd 09f89bcf8h
+dd 01a6e39b5h
+dd 0cddbd8e2h
+dd 082c347bdh
+dd 0b5e5c8b4h
+dd 020d3396ah
+dd 03cf9ba3ch
+dd 04fa5b939h
+dd 0b26caef7h
+dd 0bc6b008dh
+dd 00e66dcf1h
+dd 0784e2e0eh
+dd 0286156c3h
+dd 0a43c5423h
+dd 01fe20fd1h
+dd 057907defh
+dd 0345d5493h
+dd 00444c35bh
+dd 02db761c5h
+dd 0b2b60c3fh
+dd 0ddf2aaebh
+dd 0e76641f9h
+dd 0bd2a2764h
+dd 0acc8c9b3h
+dd 0e165e669h
+dd 009768cfbh
+dd 03a50e41ah
+dd 092cc5614h
+dd 0b1ec35d4h
+dd 02bfb898bh
+dd 04911e769h
+dd 0f7a717f4h
+dd 061923c16h
+dd 066bf972bh
+dd 0c6474e4ch
+dd 0c1e4bb73h
+dd 0397187eah
+dd 09bcbbb70h
+dd 0ecd84c60h
+dd 0ca51e0e8h
+dd 0d3c8afc8h
+dd 0dc42a48bh
+dd 0a1532906h
+dd 0b16d6e48h
+dd 0106a2856h
+dd 042844758h
+dd 083f372aeh
+dd 0983750efh
+dd 0cb412359h
+dd 0e055f35dh
+dd 0c331f681h
+dd 02c74271ah
+dd 089611f0dh
+dd 09b98545ch
+dd 0ab7f3fb3h
+dd 05c2f6b6bh
+dd 016b1e5dch
+dd 096d1f6f3h
+dd 03ae16a0fh
+dd 0d50b55bbh
+dd 01f307ffch
+dd 04ed34c32h
+dd 03a6d0277h
+dd 0714c148fh
+dd 06a39c168h
+dd 007b4faf8h
+dd 0a9241772h
+dd 074c9379eh
+dd 003eedc2dh
+dd 0bd62ad84h
+dd 0f997dcbah
+dd 015501656h
+dd 0d1884a49h
+dd 0cf19d6cch
+dd 0b89893bfh
+dd 0fdfb8961h
+dd 0a3fe92ceh
+dd 01cb79a91h
+dd 06b6815bdh
+dd 021c45475h
+dd 0c60db197h
+dd 0e46c5423h
+dd 0716a117eh
+dd 00caca908h
+dd 08675311ah
+dd 07006cae5h
+dd 0d8e64753h
+dd 05da4daa7h
+dd 07027de6ch
+dd 03a9ca17fh
+dd 0f61c5534h
+dd 06e22df19h
+dd 009bb6188h
+dd 07d4ea6efh
+dd 0e48241c1h
+dd 03ea7c291h
+dd 0e231e131h
+dd 09cf78297h
+dd 03f63fa00h
+dd 078369a8eh
+dd 07e22623ch
+dd 09ced4dd5h
+dd 08649ace0h
+dd 0b01eb24dh
+dd 07c111549h
+dd 04adfc7e9h
+dd 0e6a2a893h
+dd 0619515f8h
+dd 0b0cb12b6h
+dd 087b2638ch
+dd 0cb241aa8h
+dd 0268f1819h
+dd 07c8ed8e7h
+dd 0d86d6b6bh
+dd 0ccd3088eh
+dd 0a5d57bc9h
+dd 0e5073ef1h
+dd 04e2e2569h
+dd 0c494e1e2h
+dd 070c0b5f8h
+dd 0710cb2b0h
+dd 0abb8ba63h
+dd 0299a246ch
+dd 0621164c7h
+dd 0981be5d8h
+dd 0be7af00eh
+dd 05c7d8c46h
+dd 051ee1a6ah
+dd 09d1424d1h
+dd 07cf55c95h
+dd 0a7735ed0h
+dd 0c1c161ddh
+dd 02964f058h
+dd 07aeccb8eh
+dd 0ae98a714h
+dd 03bd61a62h
+dd 067698411h
+dd 095a6cd7bh
+dd 0ee0a7ec1h
+dd 01bf97cfbh
+dd 01710ccc2h
+dd 024c63a60h
+dd 05782b645h
+dd 0607e8522h
+dd 005052725h
+dd 072330ad7h
+dd 0dd001b60h
+dd 0f5078889h
+dd 0b8979a55h
+dd 05ae5ce73h
+dd 02b7b8013h
+dd 06960cde4h
+dd 0496ea74ch
+dd 05f2a8476h
+dd 01f0d24cdh
+dd 0df2204dch
+dd 0d118c853h
+dd 0655b07b6h
+dd 097a28d2ah
+dd 0582b5d72h
+dd 086ada96fh
+dd 01ec2f559h
+dd 00e86a4e5h
+dd 0b2411349h
+dd 07735b640h
+dd 0acad268ch
+dd 085986e62h
+dd 0a5a06ca4h
+dd 0bc64b8e1h
+dd 0fd6a8aa5h
+dd 0cb044998h
+dd 026b64cd4h
+dd 0c303f2b4h
+dd 0a781faf9h
+dd 004b2526fh
+dd 09a7bb27bh
+dd 0c46075a5h
+dd 005893ee1h
+dd 056bde8bbh
+dd 07014280ah
+dd 087268442h
+dd 069c9d83fh
+dd 0678ce87ah
+dd 09512de48h
+dd 0c02d3dfdh
+dd 0384fd558h
+dd 0f8368c94h
+dd 0cff7170bh
+dd 0b12f5c01h
+dd 015b9da47h
+dd 0e09cc39fh
+dd 06d572763h
+dd 05c35990ch
+dd 07a538316h
+dd 043a76264h
+dd 09391c46fh
+dd 0c79c6e99h
+dd 03a13f898h
+dd 044de1edch
+dd 00a19d4d0h
+dd 0a92155e3h
+dd 09533b68fh
+dd 0a3a73682h
+dd 0f01903dbh
+dd 04ca62794h
+dd 0fa569154h
+dd 0b6f87f36h
+dd 020518f6bh
+dd 0df32557bh
+dd 070371ed0h
+dd 00950f0c3h
+dd 0ae76646fh
+dd 02f383080h
+dd 02ab32820h
+dd 05450146dh
+dd 0fb4dc715h
+dd 08d69f2c2h
+dd 0454701feh
+dd 0953078f1h
+dd 0d836f638h
+dd 0b32f58d2h
+dd 07cf035fbh
+dd 0d2bf31f8h
+dd 0014c251eh
+dd 007f081f9h
+dd 026debf5fh
+dd 0e352afb6h
+dd 02359c155h
+dd 0e8788d7ch
+dd 0f793c2cfh
+dd 01cd497d5h
+dd 0d6b60514h
+dd 04a59e72fh
+dd 003a3eed5h
+dd 073bf733eh
+dd 055898587h
+dd 0d544d5eah
+dd 01abcd66ah
+dd 0c722c25fh
+dd 0f042b076h
+dd 0862861edh
+dd 0a146a00eh
+dd 03a9dabcch
+dd 0eb59f0a6h
+dd 08052faf2h
+dd 08cd5e839h
+dd 04b4aa01fh
+dd 0146557cfh
+dd 0b1417af9h
+dd 089d7fb80h
+dd 00aca426eh
+dd 0e1895d00h
+dd 0fba53d78h
+dd 08d34b06dh
+dd 01e79afb5h
+dd 094dffaa2h
+dd 0948936b5h
+dd 0fb0fc85eh
+dd 05cbf2073h
+dd 0b7a52ca2h
+dd 0f706cc12h
+dd 07fcd7c07h
+dd 09795e5f6h
+dd 002b85748h
+dd 0db640e5eh
+dd 0c649b353h
+dd 0431b9c23h
+dd 0b58fc686h
+dd 0a15358f4h
+dd 06c8727b7h
+dd 00f08e507h
+dd 06cd1e329h
+dd 033c02e81h
+dd 02274f636h
+dd 02ddce201h
+dd 0f68cbb43h
+dd 006547a8eh
+dd 006767f3ah
+dd 0142f28d1h
+dd 0fffb6c9ah
+dd 0c20a4c3dh
+dd 0dc9323c6h
+dd 0ae7e0d18h
+dd 03fb3b14fh
+dd 099ceee92h
+dd 0ebbd75d3h
+dd 099f6bc40h
+dd 06ad16056h
+dd 026fc5ffbh
+dd 0ad08f75bh
+dd 01f393f8bh
+dd 09586575eh
+dd 0c7e62fc6h
+dd 076aa1f22h
+dd 0c0b4211fh
+dd 0fb2b1c35h
+dd 09b0ab28ah
+dd 0b998b548h
+dd 04d5c5142h
+dd 0b5f42526h
+dd 037f481d1h
+dd 0bae3f4e7h
+dd 06104dcceh
+dd 09b5e908ah
+dd 0146d43e9h
+dd 0894857b7h
+dd 096eb80eeh
+dd 0d3bdd738h
+dd 0048db57dh
+dd 0ba3c1530h
+dd 096380e9bh
+dd 02b966ddah
+dd 039542890h
+dd 012d3b39ah
+dd 0fcf4d06fh
+dd 0e80092e0h
+dd 0e01123a1h
+dd 0013fe3c4h
+dd 051658c29h
+dd 097950792h
+dd 00fcb1cd6h
+dd 01158f6a9h
+dd 0d49eca2fh
+dd 00610d31ch
+dd 0d5f9d476h
+dd 08a550f19h
+dd 0005c7919h
+dd 014b74c46h
+dd 0ff77aa84h
+dd 00fe9e550h
+dd 028efae5eh
+dd 076dc4c58h
+dd 0d2451ff8h
+dd 06b355615h
+dd 02bf8e0a4h
+dd 08803ae09h
+dd 021054450h
+dd 041018246h
+dd 04c29c5bfh
+dd 0c835a788h
+dd 035411909h
+dd 086166435h
+dd 0247fc4d0h
+dd 0a0aabb25h
+dd 01bbe1a15h
+dd 0f89d6198h
+dd 003284ab3h
+dd 0fe156d76h
+dd 0fe7a008fh
+dd 038624a68h
+dd 0f3366363h
+dd 04e479322h
+dd 0724d3f08h
+dd 0a289b82ah
+dd 03d200c7eh
+dd 0c7fa5d62h
+dd 02b15df17h
+dd 09f6acebeh
+dd 00c39734eh
+dd 00518e421h
+dd 0349945c7h
+dd 0b6f0b221h
+dd 002acfb2bh
+dd 09c3aaf31h
+dd 078abf3a6h
+dd 0926a98edh
+dd 0de0d6052h
+dd 0dc7133fdh
+dd 0876a63e2h
+dd 0d3322913h
+dd 06f210766h
+dd 00a505f31h
+dd 0056cf694h
+dd 03b6cd578h
+dd 0f34735f3h
+dd 04444c24dh
+dd 0102c88beh
+dd 0b765ecaeh
+dd 06db40687h
+dd 06a4f0a47h
+dd 03ad517beh
+dd 06e211d0dh
+dd 023ff12ddh
+dd 0f0bd5dbbh
+dd 05bc2024ah
+dd 07de8f132h
+dd 044c3c927h
+dd 0d6fc8c20h
+dd 0459aa97bh
+dd 07ba1b2d0h
+dd 0e396f836h
+dd 09c67ef1fh
+dd 08cc2edeah
+dd 03c20ed4bh
+dd 07e4e5c95h
+dd 065e77925h
+dd 0f7385600h
+dd 0bf84febeh
+dd 02db64391h
+dd 0253504ech
+dd 012ac1525h
+dd 064792e3fh
+dd 02b1e104bh
+dd 0c43d2ce7h
+dd 0ae1457c3h
+dd 0e0e2049fh
+dd 0235292beh
+dd 03f15ae8fh
+dd 03fc2b64dh
+dd 024388819h
+dd 05f76c492h
+dd 0d3b3b0b6h
+dd 0b6062500h
+dd 00e224f31h
+dd 0d8bc091ah
+dd 036e42e59h
+dd 04ab4caa0h
+dd 02f1f4938h
+dd 0218aa8edh
+dd 059e77519h
+dd 07188afb9h
+dd 002d01633h
+dd 092015763h
+dd 0eb77c2c9h
+dd 0a548c95dh
+dd 00e851576h
+dd 088de1773h
+dd 0fde601f3h
+dd 0ecf26b35h
+dd 09aeaf1a6h
+dd 049b726c0h
+dd 0c570e54bh
+dd 09c259c79h
+dd 0aea54954h
+dd 0d3fdf26ch
+dd 0d608b1a9h
+dd 092ee1d4bh
+dd 0a9971e90h
+dd 0018e9a92h
+dd 08a5eac7dh
+dd 04484eeb2h
+dd 02c7c5939h
+dd 07b61ac73h
+dd 02009b0dah
+dd 027db6ba5h
+dd 0eb1bfcf9h
+dd 05a277a07h
+dd 01e9433a9h
+dd 06cda23a7h
+dd 0164fa417h
+dd 0d9db7a0ch
+dd 0c1265268h
+dd 01ac83e09h
+dd 0d743daa1h
+dd 012b57a49h
+dd 03a5ec37dh
+dd 0abc11edeh
+dd 04b9bf703h
+dd 0af3f6f88h
+dd 03622dd9ah
+dd 037d91ffch
+dd 0cb967f9dh
+dd 09c70793bh
+dd 040ef44b6h
+dd 02dbe625ah
+dd 09f4edee3h
+dd 07f1f7ad9h
+dd 022e5abb2h
+dd 0fe360a2fh
+dd 04e8f887dh
+dd 037cd946bh
+dd 0fb2cd44bh
+dd 0f0505df7h
+dd 0d2f83353h
+dd 0c3584b11h
+dd 02cb18addh
+dd 0e65fe2f2h
+dd 0b24da348h
+dd 08b10838bh
+dd 090aad0d3h
+dd 05574dfe4h
+dd 00d682953h
+dd 02be6b4eeh
+dd 088f3b0f1h
+dd 09c0e82aah
+dd 0accaeb18h
+dd 017e2b3a7h
+dd 097dc0aach
+dd 0ccfbca63h
+dd 090f6dd43h
+dd 098c95f69h
+dd 03a4a45f9h
+dd 01964a6cch
+dd 04461c2a0h
+dd 0219b2d3ah
+dd 0f285a8c6h
+dd 085b77277h
+dd 0c38a1bffh
+dd 01ed93247h
+dd 07815d42ah
+dd 07477ec92h
+dd 053304ed0h
+dd 0104b2b21h
+dd 093b84903h
+dd 04aaaa808h
+dd 010813e8ah
+dd 053dac8c7h
+dd 0b4f2188ch
+dd 09fbc414ch
+dd 09aa9ca88h
+dd 0ea6cafaeh
+dd 09bf36dadh
+dd 0b031e1cfh
+dd 0f0df6f0bh
+dd 0d0d7f36fh
+dd 0d97ce3b4h
+dd 07f91cf3eh
+dd 06df4e69ch
+dd 0b610288eh
+dd 0ed824e55h
+dd 01604e26ch
+dd 0ac19ce12h
+dd 00cd7999ah
+dd 04a2fc340h
+dd 0bfbcc0e8h
+dd 045ee5015h
+dd 0c9f69071h
+dd 0a85d54a4h
+dd 00fbd9d49h
+dd 0681fa046h
+dd 05dd44e48h
+dd 0766054ech
+dd 05f4d3478h
+dd 0f5acb880h
+dd 073e554adh
+dd 007b3655eh
+dd 0df6b3146h
+dd 0923468c2h
+dd 039a330a9h
+dd 002aa7ed2h
+dd 060f57e74h
+dd 05c225637h
+dd 0958d1914h
+dd 0632a6da7h
+dd 0ce6e7df0h
+dd 0f028c06dh
+dd 0d509c73dh
+dd 09a9fb83eh
+dd 0ab90a2a1h
+dd 06f25ec95h
+dd 0e087eda4h
+dd 082f9ff34h
+dd 016beddbch
+dd 06d733db1h
+dd 093e9e10bh
+dd 070d9a420h
+dd 0e1ec3c2fh
+dd 028981a3bh
+dd 07cc3177ch
+dd 0d9e78a89h
+dd 0b582b94dh
+dd 0ea2f57dah
+dd 0727b488ch
+dd 07b510e78h
+dd 016846bf5h
+dd 01301086eh
+dd 094a4c601h
+dd 0b6bc06d8h
+dd 0e946140ah
+dd 0b743192eh
+dd 0bbfa07c2h
+dd 0e35d3ab8h
+dd 02849cf6dh
+dd 04d0847edh
+dd 01783c760h
+dd 0d6a23c57h
+dd 03c69aecah
+dd 0c01d0546h
+dd 00bf67ea8h
+dd 000f3087dh
+dd 035e2945eh
+dd 03d63a370h
+dd 0f3fe91a9h
+dd 0aed3ba66h
+dd 00c210104h
+dd 0d05dd7c2h
+dd 04fe4690dh
+dd 003a6da94h
+dd 01f026e7ch
+dd 06530e882h
+dd 0a144fe38h
+dd 05b33e952h
+dd 0678511ddh
+dd 0dd81e069h
+dd 07c9fbfc7h
+dd 0975b5f62h
+dd 02fa95d7fh
+dd 04747fb99h
+dd 03a477b28h
+dd 0ea1c0d9ah
+dd 09b95df38h
+dd 09f578b72h
+dd 0b48e0978h
+dd 04c67e465h
+dd 009dfa8ceh
+dd 02807cc0ah
+dd 0b646a988h
+dd 08d5b8593h
+dd 0d84f01ceh
+dd 0d649a2d4h
+dd 0cbe67767h
+dd 06cec3789h
+dd 0e877e5e2h
+dd 0cb3afe5dh
+dd 0b4ac1b3ch
+dd 0f7660273h
+dd 035359cdch
+dd 0f9a644fch
+dd 095b589f0h
+dd 012dd2a29h
+dd 0da557441h
+dd 00d0d11eah
+dd 0c976ebf6h
+dd 0fc727b3ch
+dd 0face1968h
+dd 0e8245312h
+dd 08d037f16h
+dd 034580e4ch
+dd 030e6d992h
+dd 0230cab43h
+dd 0583a922bh
+dd 08b6cc7aeh
+dd 0285cf4a8h
+dd 0ede43d35h
+dd 09663dcf8h
+dd 0b00abb8ch
+dd 02f5576dah
+dd 0829de50fh
+dd 04eb553d4h
+dd 0661ed2c5h
+dd 0c8d8c379h
+dd 06f25cab2h
+dd 0e2ad32edh
+dd 066815b51h
+dd 0b9091b74h
+dd 0ec91f503h
+dd 03265d328h
+dd 006da1d02h
+dd 0cf016e00h
+dd 09ba1cee8h
+dd 023f4bc02h
+dd 0ea0f0f55h
+dd 020813e30h
+dd 023ad84f8h
+dd 081b3211bh
+dd 0faf323a7h
+dd 06f56ff38h
+dd 06de639b0h
+dd 05d2d0ccdh
+dd 070c32d51h
+dd 034e13388h
+dd 05fea8bd1h
+dd 0dd228d99h
+dd 0255df9b1h
+dd 00dfa92dbh
+dd 017454fadh
+dd 03a57620fh
+dd 061c86fb4h
+dd 0e2cc3375h
+dd 0b46ff423h
+dd 0d9b779d4h
+dd 029cad47eh
+dd 0b74db160h
+dd 0bea88da4h
+dd 0a606a05dh
+dd 03e0b1a69h
+dd 0ca2fe58ah
+dd 0f11fd452h
+dd 0b22f4dc3h
+dd 0af9d04d4h
+dd 0e9c166dbh
+dd 05329d6bdh
+dd 0392d29e4h
+dd 09ffc2783h
+dd 094560792h
+dd 0acd5bd45h
+dd 08ab95cc7h
+dd 00487d63eh
+dd 08f4ac866h
+dd 06290fc9fh
+dd 079301c32h
+dd 0c7602e75h
+dd 0e663d3abh
+dd 0cf491a2bh
+dd 0d692e572h
+dd 01d74e27fh
+dd 05d083883h
+dd 0151c872bh
+dd 06433f22fh
+dd 0c91870c5h
+dd 01976c455h
+dd 05cd6173ch
+dd 0a729ef3ah
+dd 03cbdd7b4h
+dd 00621479dh
+dd 0bfbc53bch
+dd 0ca455cb2h
+dd 041981354h
+dd 0569616b5h
+dd 0d9b49acah
+dd 0e4668ed5h
+dd 0efea4cd9h
+dd 09ec99ff7h
+dd 0149889b5h
+dd 06520f0cch
+dd 0432d72e9h
+dd 0b0d23a7eh
+dd 0395d1a02h
+dd 049f73c01h
+dd 09f984c9eh
+dd 0aec80018h
+dd 0c94792afh
+dd 0ca558ccfh
+dd 0295ebea1h
+dd 02d0179e1h
+dd 05db2be33h
+dd 0835169adh
+dd 070da2f0eh
+dd 0550b71c8h
+dd 07ce3ef02h
+dd 024f52dcch
+dd 055a4338eh
+dd 02fe7a7cfh
+dd 0d1e2798ch
+dd 06e75af8eh
+dd 09e502b79h
+dd 05d589f4fh
+dd 03c238fceh
+dd 00ebf6b6fh
+dd 0e0fb5a1bh
+dd 047ce724dh
+dd 0ee9ff09ah
+dd 0d61350c0h
+dd 0d9bb69efh
+dd 0d56ec9fbh
+dd 023b7d35ah
+dd 093d9ce8fh
+dd 0f2e77aebh
+dd 036110e60h
+dd 0f974635bh
+dd 07bf195f8h
+dd 0edfabc28h
+dd 0a1878193h
+dd 0327e70dch
+dd 0d309ee60h
+dd 0099a868fh
+dd 0f5c78993h
+dd 0cecd94b1h
+dd 099d9b541h
+dd 03ba8a6e3h
+dd 01b1d86c1h
+dd 029a15397h
+dd 071ebfd04h
+dd 07db84642h
+dd 04302e36dh
+dd 09a277728h
+dd 03997358dh
+dd 03fb13f94h
+dd 089da5c0bh
+dd 06b89f23dh
+dd 0bbf88bb5h
+dd 0262c70c5h
+dd 072191dfbh
+dd 0951a7e77h
+dd 00f620322h
+dd 020a6337bh
+dd 013a3d9d1h
+dd 0bb3f5727h
+dd 0b30494d5h
+dd 0acea8fbah
+dd 0f9ea639eh
+dd 03dce0c90h
+dd 05f1c9b26h
+dd 0ba8f0578h
+dd 0de84d502h
+dd 0bcdfad6dh
+dd 0ef02cf42h
+dd 0ebdd8782h
+dd 0f7935cd8h
+dd 014cb1fffh
+dd 09977cf40h
+dd 0a9e5ab00h
+dd 0422e847ch
+dd 0c6c8005ah
+dd 00d62b926h
+dd 096c4d620h
+dd 01f2081b7h
+dd 031a9937bh
+dd 0ec354778h
+dd 06f61068dh
+dd 0dcc6b8bah
+dd 0fad0b0f8h
+dd 05e34619ah
+dd 030069fcch
+dd 0d1928e18h
+dd 01c323931h
+dd 028438891h
+dd 036be791eh
+dd 064db8a8eh
+dd 05265d49eh
+dd 048d4dc4bh
+dd 01277d0b0h
+dd 0a3c61366h
+dd 0dacc9c82h
+dd 07e00306ah
+dd 08da10d8ah
+dd 0ebbc089bh
+dd 02620aa22h
+dd 0ebb17809h
+dd 06a79227bh
+dd 0443eb921h
+dd 0fe84e4e5h
+dd 01fb25eaah
+dd 0c7364982h
+dd 03cc2a30ch
+dd 0ab1fc061h
+dd 0bafdef97h
+dd 040d016e9h
+dd 061091d56h
+dd 0736bddafh
+dd 00c6ffda2h
+dd 0e2a3c388h
+dd 0ed86710dh
+dd 0aa670984h
+dd 0a9f0404dh
+dd 005f4d2e0h
+dd 082df254dh
+dd 0f83f37cdh
+dd 04bd1d7f8h
+dd 07b8fddb8h
+dd 06f03cd3ch
+dd 00f7d0901h
+dd 0e925a184h
+dd 01c003c6fh
+dd 01fec3242h
+dd 0269c09a6h
+dd 094bccb4dh
+dd 049e00349h
+dd 00b9679b8h
+dd 06be21729h
+dd 0c6840927h
+dd 06ba53ed0h
+dd 0dc1855c3h
+dd 0974e0bb1h
+dd 08dc9f515h
+dd 0687476c3h
+dd 0dffcf786h
+dd 08a016171h
+dd 0fa13615fh
+dd 06b2120beh
+dd 04268425eh
+dd 06a765190h
+dd 09de00efdh
+dd 053aa79a1h
+dd 0838327beh
+dd 0b5479d29h
+dd 035667ad2h
+dd 0a4409334h
+dd 0b23bb6a9h
+dd 067699306h
+dd 0c484d3cah
+dd 0f4d9d5feh
+dd 06531f8cbh
+dd 0de978dd6h
+dd 07bac723eh
+dd 049a9a17ah
+dd 0574a93c9h
+dd 0ef8e6cb2h
+dd 05bebe2dah
+dd 0c5501bbch
+dd 08d0f40beh
+dd 0e5b7aea2h
+dd 08cc5c49fh
+dd 06f423513h
+dd 0b538fbd0h
+dd 07a5cb3bch
+dd 06437a5b6h
+dd 004b9b4dah
+dd 05245050fh
+dd 02bc9d1c5h
+dd 0367b6db4h
+dd 0e6c5052bh
+dd 0fed3e3f3h
+dd 09d3e5dcfh
+dd 07ec62c74h
+dd 0e9181fb1h
+dd 057ec087fh
+dd 02b9239b5h
+dd 0f7477432h
+dd 02ea4c5efh
+dd 0fef27b1bh
+dd 084fff766h
+dd 05d46bbdeh
+dd 0df53d5eeh
+dd 0082a7370h
+dd 0ff4dc067h
+dd 00ef90261h
+dd 08432b65eh
+dd 0741af3ebh
+dd 01008501bh
+dd 01b3f463ch
+dd 07e073604h
+dd 0ff55791bh
+dd 076502f4ah
+dd 06d8b34cfh
+dd 0795bea60h
+dd 0c9c22b38h
+dd 016755779h
+dd 02ea44d1dh
+dd 0a3f82910h
+dd 0901884fah
+dd 0e778e508h
+dd 030be5280h
+dd 0a5c93c6ch
+dd 0bbe053cfh
+dd 06edf377dh
+dd 08c28857ah
+dd 02227414fh
+dd 0b94a723fh
+dd 0aba23d37h
+dd 02125bd32h
+dd 0ad181271h
+dd 06d31e925h
+dd 0c19a417bh
+dd 0e06f99b1h
+dd 001fcdb55h
+dd 043546437h
+dd 0d863df8ch
+dd 004514c36h
+dd 01158fb95h
+dd 04269d088h
+dd 06eee70b4h
+dd 013eb8d8dh
+dd 030d1a677h
+dd 039001cb5h
+dd 0db9249fbh
+dd 0ab43ec45h
+dd 0b88287e5h
+dd 01fb2d834h
+dd 07aeabb10h
+dd 0b6af14b8h
+dd 0777c667dh
+dd 051bacb91h
+dd 01d36ef67h
+dd 00534ea80h
+dd 0b9ae1f63h
+dd 042024589h
+dd 02c5cc63ah
+dd 0d938c570h
+dd 0c23eb1ddh
+dd 0f8f898ceh
+dd 032e8b6aeh
+dd 0c4a6deb7h
+dd 09157d416h
+dd 06b99c42bh
+dd 099f35536h
+dd 06dcdf4b0h
+dd 0ee49d56dh
+dd 0315f340eh
+dd 0fc6d5af5h
+dd 0aa87a6deh
+dd 0fb9e5812h
+dd 0e6fb4e17h
+dd 00a3ed1f1h
+dd 018460c53h
+dd 0e81ef1d5h
+dd 0632d95feh
+dd 0695963feh
+dd 0720b767ch
+dd 0f096b8aeh
+dd 0ce2df893h
+dd 07e11671bh
+dd 0dfc7359bh
+dd 029db53f3h
+dd 0af7652a8h
+dd 01b892599h
+dd 036bf1539h
+dd 071bc5ea6h
+dd 0ece3d804h
+dd 005a5966ah
+dd 06b6dfadbh
+dd 0f8baf67bh
+dd 0723197f8h
+dd 095260f14h
+dd 0242bfff8h
+dd 0fa1740ffh
+dd 0189beee3h
+dd 09b26865dh
+dd 075afcbd8h
+dd 09ccfb7e9h
+dd 02bfe5ffch
+dd 0d63a498ah
+dd 0805d192dh
+dd 040bddf3ah
+dd 079c58e72h
+dd 05e133c7dh
+dd 07eb54b7dh
+dd 03e09f0fdh
+dd 042957295h
+dd 037dd0570h
+dd 072e9143dh
+dd 0c75a5a7ch
+dd 0a290b7fah
+dd 05dc0fbb4h
+dd 0e06ca8f9h
+dd 01f6a19adh
+dd 0ba66dcafh
+dd 06d9289c1h
+dd 0efc510bah
+dd 0e03a0a07h
+dd 0541555f8h
+dd 0a4c1100ah
+dd 0154aedfch
+dd 0375ff2a1h
+dd 0991d5acch
+dd 04a63a0c1h
+dd 06f8190dah
+dd 00befea32h
+dd 0cb100285h
+dd 0766f5feah
+dd 011b603fbh
+dd 005925547h
+dd 0e00f9d7ah
+dd 05032e2c7h
+dd 0dcf2babch
+dd 002dd527bh
+dd 09f2b5fedh
+dd 062e0fdb8h
+dd 05d87bc32h
+dd 0dae663b2h
+dd 0b151f9beh
+dd 08a30f6c5h
+dd 0223b41e8h
+dd 0a8df5372h
+dd 0fcf60423h
+dd 0dda7352eh
+dd 05c1c1a0bh
+dd 0076cc3bdh
+dd 0ab438c09h
+dd 07705bc02h
+dd 03b630cc5h
+dd 02fc0d024h
+dd 09a2366e6h
+dd 060bb173fh
+dd 0c7f1c102h
+dd 0e7c67a3eh
+dd 023782562h
+dd 00cd1426ah
+dd 01fa5ed0dh
+dd 0afd7374bh
+dd 03e589623h
+dd 0159e7396h
+dd 093168a6ch
+dd 03b716b79h
+dd 0272ce970h
+dd 0fa1731d5h
+dd 034f61c35h
+dd 0eb3aa590h
+dd 012b228bfh
+dd 07adbd4d1h
+dd 0769852d9h
+dd 0708a9504h
+dd 018103532h
+dd 098dbe9a5h
+dd 098650852h
+dd 01d4704fbh
+dd 0e5bd1416h
+dd 05a740ec7h
+dd 095a81db9h
+dd 0e07410a3h
+dd 024c06599h
+dd 0c61ebc88h
+dd 05da3be50h
+dd 0f03c2356h
+dd 0a26caab3h
+dd 0f173403eh
+dd 0bad5d6d3h
+dd 0dd7b03c2h
+dd 0a18740c0h
+dd 0dff163d0h
+dd 095778e49h
+dd 0a7a446dfh
+dd 08b314d8eh
+dd 09fcf2e25h
+dd 068b7824fh
+dd 0fb0e3a54h
+dd 0939e8dbbh
+dd 0d39e5c3fh
+dd 0c985d91fh
+dd 00dd8f761h
+dd 0ce4a9c45h
+dd 05dc8eb57h
+dd 068222368h
+dd 02d013228h
+dd 04e553911h
+dd 04479b9d6h
+dd 093aff066h
+dd 0f9fc6fb0h
+dd 0773ca921h
+dd 0668c6972h
+dd 0def847aeh
+dd 0a4735848h
+dd 0b6a055abh
+dd 00e5d5dd1h
+dd 0ac9ae6a8h
+dd 0ca442eeeh
+dd 0d2f42cd9h
+dd 0a9dc7ae2h
+dd 06ad11793h
+dd 0ca33d171h
+dd 0eb3fa8b1h
+dd 03f88cdc1h
+dd 08878a35bh
+dd 07a9ee4ddh
+dd 0f4d5c497h
+dd 0d3a4695dh
+dd 0c76d61f3h
+dd 050afd8e5h
+dd 062c59847h
+dd 06ff20cf0h
+dd 0328e4acdh
+dd 0dc554096h
+dd 0234153cfh
+dd 0c83af46ah
+dd 0efbb0df1h
+dd 0abe4c1f1h
+dd 07dd610dfh
+dd 099e3e02bh
+dd 0eba1fb9fh
+dd 0f033b7d8h
+dd 0bba6e7e3h
+dd 07873d156h
+dd 03723c1a6h
+dd 0907e9933h
+dd 0c85d15b6h
+dd 0afb430f7h
+dd 08999a62bh
+dd 041b87e1fh
+dd 0b2a8acb9h
+dd 02610b894h
+dd 0f0ce3391h
+dd 01f4d712ch
+dd 04ddc9e16h
+dd 0724a9a78h
+dd 03eb37e13h
+dd 0455c86f1h
+dd 011ec76c1h
+dd 04ef0d286h
+dd 0475dfbe4h
+dd 0ed84982ch
+dd 05922884ch
+dd 08daa8c13h
+dd 0bfef67b6h
+dd 05da02ad1h
+dd 0e29b19a7h
+dd 060da3a6eh
+dd 02fa5ba01h
+dd 09825aa84h
+dd 05dbcf27ch
+dd 0b6713f18h
+dd 03af29cd1h
+dd 0f126311fh
+dd 0913b4448h
+dd 0310020b5h
+dd 0929fba38h
+dd 0adec9421h
+dd 07fb08791h
+dd 053ce38b4h
+dd 0aa759647h
+dd 0708c45c8h
+dd 08ec226bdh
+dd 0d8930af6h
+dd 02ad8550eh
+dd 0abe0add9h
+dd 0975ca629h
+dd 05a80b9a2h
+dd 021179062h
+dd 06ea832b4h
+dd 0aaf0cce1h
+dd 07851a850h
+dd 035bb223bh
+dd 0e78b1ad5h
+dd 0bb937d09h
+dd 0ed1561ach
+dd 0a3a8d51bh
+dd 0105e8828h
+dd 02897cc2eh
+dd 00011a532h
+dd 0b5a5d766h
+dd 037903bbbh
+dd 065890668h
+dd 0048b9c21h
+dd 0d7e3561ch
+dd 0d0f2563fh
+dd 0837917b4h
+dd 0203f0dcch
+dd 076c69191h
+dd 0bedf7532h
+dd 08b0e8f83h
+dd 0cc9a42e2h
+dd 00b562a2ah
+dd 00afa16f7h
+dd 057c70ed5h
+dd 05cc67d20h
+dd 0c51d92fbh
+dd 04411ee68h
+dd 03e80a337h
+dd 02ee0d8afh
+dd 02bf38019h
+dd 02d2c543bh
+dd 0b50cc896h
+dd 015c8adedh
+dd 06ad8ebc8h
+dd 0bbed7f19h
+dd 0498b470fh
+dd 0376cbd52h
+dd 036074af9h
+dd 0e36b0b61h
+dd 0d9b95fa8h
+dd 05c195777h
+dd 08f395ed0h
+dd 0bdf95438h
+dd 006dc0a03h
+dd 082aa61c3h
+dd 0eefe8bd5h
+dd 0a0fc7f2bh
+dd 02145b229h
+dd 02e266cd7h
+dd 08c985114h
+dd 09f6f948eh
+dd 01cb8bf45h
+dd 01f2c6134h
+dd 0dca0c8eah
+dd 0746003e9h
+dd 04fa883a0h
+dd 0c5cb2892h
+dd 084d044a4h
+dd 03fd401bdh
+dd 031bfe7bfh
+dd 0db18872fh
+dd 0b44e6fbfh
+dd 0b9da5985h
+dd 0e3bc818eh
+dd 0bdaa4acbh
+dd 063fcee9eh
+dd 0ab35b509h
+dd 070741b3ch
+dd 049c6838eh
+dd 03c50ee15h
+dd 03a1e456ah
+dd 0009724feh
+dd 0ed003d9eh
+dd 05562df6bh
+dd 0b7c9363ch
+dd 0ff3d040dh
+dd 06102677bh
+dd 0075e6300h
+dd 0065730e0h
+dd 097ab1882h
+dd 01d00f3a7h
+dd 05a48ed2fh
+dd 0083dd52fh
+dd 0248021c4h
+dd 0ff92d447h
+dd 0a61d52c3h
+dd 0dae1f8e4h
+dd 032243803h
+dd 0158c44b4h
+dd 07e60315bh
+dd 0d59507cdh
+dd 031b6141ch
+dd 018a11ce7h
+dd 0d9f7f911h
+dd 0cd62e481h
+dd 0c0bdd679h
+dd 06944965eh
+dd 025076509h
+dd 037316a50h
+dd 053b58957h
+dd 0ccdfc7e7h
+dd 003e0e523h
+dd 0638a8127h
+dd 0c19db337h
+dd 08bc98864h
+dd 070c90b85h
+dd 05b977e13h
+dd 09a0732ceh
+dd 0da5619a7h
+dd 0b3353937h
+dd 0ebe8469eh
+dd 099f73984h
+dd 04d481cb2h
+dd 0b3799b11h
+dd 077356e04h
+dd 0f748935ah
+dd 0b8e9c379h
+dd 0d1891ccbh
+dd 046796aa5h
+dd 0d0b9d7e4h
+dd 051a6f0e5h
+dd 08fdce6a3h
+dd 04c5702e9h
+dd 0a4afd7e7h
+dd 00f27992ah
+dd 056ff6958h
+dd 07129e840h
+dd 0a4a00154h
+dd 0e1d84693h
+dd 045d8e252h
+dd 010f98837h
+dd 0d55fa254h
+dd 05d8a78dfh
+dd 0f2ff2612h
+dd 00ca6dfd2h
+dd 0d9f982b3h
+dd 0cbb69e69h
+dd 09039502fh
+dd 0cf40e9aah
+dd 08cf811b1h
+dd 0f085b4b0h
+dd 088c064c6h
+dd 0159f8e97h
+dd 05d5d8bd3h
+dd 0c4e4db42h
+dd 023e88999h
+dd 05f2b8935h
+dd 02ad19f11h
+dd 09de7b763h
+dd 012434531h
+dd 0f3c2ea48h
+dd 02219dcf9h
+dd 0ac74cc69h
+dd 07cc344a2h
+dd 0da8f5570h
+dd 06b718040h
+dd 0d2f8d59eh
+dd 018392dbfh
+dd 0772145a3h
+dd 0237c6165h
+dd 0124853e3h
+dd 0aae39486h
+dd 0d6d1a409h
+dd 019dfa0b3h
+dd 02685db7dh
+dd 0a0fb2496h
+dd 09f30597eh
+dd 080c226beh
+dd 06821c974h
+dd 0542a8973h
+dd 046c24cb7h
+dd 03246445fh
+dd 0772c9178h
+dd 0490c9ce8h
+dd 0c4956c7fh
+dd 003c91a4ch
+dd 0a23cc181h
+dd 046cb49d8h
+dd 0e42fbd01h
+dd 005072291h
+dd 0e90a24edh
+dd 0366718f8h
+dd 05291fdd3h
+dd 03ec1c5e5h
+dd 01c066d20h
+dd 004ea5644h
+dd 06e6207dch
+dd 08db99d35h
+dd 060c6b421h
+dd 0c7e5f0d9h
+dd 08e1d274eh
+dd 03eeb4909h
+dd 0c2f1bf3ah
+dd 0398791aeh
+dd 0bd0f1692h
+dd 0d3ac32bah
+dd 0e4f66f4eh
+dd 0b82f97b6h
+dd 00e4601c8h
+dd 00c6bb0ceh
+dd 0d0b38d49h
+dd 013c0d0c8h
+dd 0b0a4eff6h
+dd 0cdad865bh
+dd 01626aa1bh
+dd 02885c331h
+dd 0a70d052ch
+dd 0492a3dbfh
+dd 023b388fdh
+dd 096f3e984h
+dd 0e782818eh
+dd 096d206bdh
+dd 0f580c310h
+dd 0b093b4e5h
+dd 03d772902h
+dd 0b9bd3a57h
+dd 0bda8e77ch
+dd 0d8499a24h
+dd 0b5fa6d95h
+dd 0eba57614h
+dd 0d9b68b41h
+dd 0a8b5e14ah
+dd 0451e35dfh
+dd 0bf8a5df6h
+dd 048db33dch
+dd 024f09326h
+dd 0515b0409h
+dd 0627347f2h
+dd 0d2aa75a6h
+dd 008cada52h
+dd 08bb2e8d3h
+dd 04c2f3d14h
+dd 010486f61h
+dd 0f45dd12ah
+dd 023720b1dh
+dd 0767efd05h
+dd 011a32407h
+dd 0a74db897h
+dd 0209e82c2h
+dd 0f17e1721h
+dd 030f8cc67h
+dd 0cafea12ah
+dd 002fc3c80h
+dd 0e88554e5h
+dd 070b66818h
+dd 0fa3ea15ch
+dd 0fcc66d3fh
+dd 00e35b9e1h
+dd 03adeef53h
+dd 0e564aed8h
+dd 01ebcb05bh
+dd 044491f07h
+dd 0cecef154h
+dd 08da6a1e2h
+dd 0d533e788h
+dd 042448fdfh
+dd 0f91886ddh
+dd 0af534876h
+dd 012105066h
+dd 0afcba4edh
+dd 05dad54e8h
+dd 090b8febdh
+dd 0bf6b7a59h
+dd 04f56d97eh
+dd 06c013f58h
+dd 0d172b733h
+dd 095b87833h
+dd 031d7c12bh
+dd 0e6053794h
+dd 0d3cd0d3ch
+dd 0b4cf4052h
+dd 0fc5fd5c8h
+dd 09222a281h
+dd 097051537h
+dd 0cc5f894bh
+dd 0d3190220h
+dd 0d8a2fb9eh
+dd 0ca278fe9h
+dd 0616c0958h
+dd 097ef94dfh
+dd 0559108d4h
+dd 0a3d659ddh
+dd 04c5538d3h
+dd 03516c945h
+dd 060588806h
+dd 0a2a5fe7bh
+dd 02237e6c4h
+dd 0df27f3cah
+dd 0c1d9f692h
+dd 07a699d8bh
+dd 0821f47b5h
+dd 03f1b6dedh
+dd 03c253e32h
+dd 069ae63e7h
+dd 0b847b33bh
+dd 0d9fbd28ch
+dd 077578422h
+dd 031d097b1h
+dd 010b8766ch
+dd 0aee96f67h
+dd 00b3316b3h
+dd 00539715ch
+dd 06ebcf5adh
+dd 006f2d235h
+dd 0b658063eh
+dd 00fe35cbbh
+dd 01861edd9h
+dd 00bb903a9h
+dd 0b4526cb2h
+dd 089397263h
+dd 081cba7a1h
+dd 0fce9a426h
+dd 00d8f4236h
+dd 023daa016h
+dd 06a224257h
+dd 09a0333f7h
+dd 06e63b6c1h
+dd 0dc7adbffh
+dd 0ab624a3ah
+dd 0f08a36c5h
+dd 01fa1a8e8h
+dd 07f8bde65h
+dd 00ccbc9b3h
+dd 0a91b3968h
+dd 0fe0e8c2fh
+dd 0069a1537h
+dd 0031eb158h
+dd 05adb0b8ah
+dd 056945015h
+dd 035768942h
+dd 0f11aa2ffh
+dd 01d53b290h
+dd 028ca0a81h
+dd 0c466cae0h
+dd 0c92b392ah
+dd 049c0f540h
+dd 06f6623d5h
+dd 028ee1341h
+dd 082d1a6ech
+dd 0817911d7h
+dd 0e9d3dc83h
+dd 060aae628h
+dd 047f62ab5h
+dd 0cf82abb9h
+dd 0d96815adh
+dd 087abe72ch
+dd 042f33725h
+dd 0050b78cch
+dd 02663a175h
+dd 09cb5dabbh
+dd 0d834d532h
+dd 07c61d13fh
+dd 0fffe81f8h
+dd 0c1e2fe70h
+dd 0bebcd86eh
+dd 00e0ce7e5h
+dd 0ba2cc351h
+dd 02ea51c21h
+dd 0e59e530fh
+dd 0bbfc4f75h
+dd 0468073c4h
+dd 0ddf6eb09h
+dd 055880271h
+dd 01a93765eh
+dd 0e9db72f7h
+dd 08a36f0bch
+dd 0d08ce352h
+dd 080652317h
+dd 08e2bbb93h
+dd 0fc8dc466h
+dd 03346d998h
+dd 07be71bb1h
+dd 08a3dfe94h
+dd 0340b63b3h
+dd 07d308c8dh
+dd 088c2003eh
+dd 093058c28h
+dd 0566dd40ch
+dd 09dc8c17fh
+dd 004902a7bh
+dd 0cd3a3b1ah
+dd 038c612a7h
+dd 0225ea3b4h
+dd 043b68811h
+dd 09c9373f0h
+dd 04754a8b8h
+dd 09441cf82h
+dd 04e243d8eh
+dd 07115095bh
+dd 025c7c82ch
+dd 013ef4ed0h
+dd 0e4d3404ch
+dd 0754eff1ch
+dd 04fe82388h
+dd 02fe24329h
+dd 00a258c2ah
+dd 029a9494bh
+dd 091f9419eh
+dd 02e07aec1h
+dd 0b357da89h
+dd 0699fc29bh
+dd 02eedb91ch
+dd 0eade61dah
+dd 017cd93afh
+dd 0bc95b951h
+dd 0e1325dc3h
+dd 01f9889b9h
+dd 0317b4420h
+dd 02ca071e1h
+dd 08f0faa4eh
+dd 0f7ccc004h
+dd 0c1730fadh
+dd 0d7530bf5h
+dd 0c9ecbe19h
+dd 0824a3acch
+dd 0e90afdd1h
+dd 0f84b390eh
+dd 03eafbe8ch
+dd 0144e0be4h
+dd 04adf10a0h
+dd 00d57d6cbh
+dd 03fca2dbeh
+dd 0b2127e57h
+dd 0e0dde3afh
+dd 06ef039a2h
+dd 0f0b8c3ech
+dd 0b2700d03h
+dd 042cb5f79h
+dd 0e1e96b36h
+dd 088a2221eh
+dd 0f4576a5eh
+dd 06f19ae60h
+dd 081a452a0h
+dd 02ba93e8ah
+dd 01d306ebdh
+dd 0ad170ccfh
+dd 0cd100fb6h
+dd 03cdac0cah
+dd 096df4078h
+dd 0c4824d26h
+dd 0ccc009b5h
+dd 0d7498764h
+dd 01c60d16fh
+dd 006ee0e16h
+dd 02968c91dh
+dd 06113793ah
+dd 0ffe93176h
+dd 08e716cc9h
+dd 060d438a3h
+dd 0db98bc48h
+dd 0390d5a1fh
+dd 0e1fa4304h
+dd 0fbdbcb5ah
+dd 0df8269aah
+dd 04e11281ch
+dd 070009433h
+dd 028f12aa9h
+dd 00928a0a1h
+dd 06246c939h
+dd 0a82930f7h
+dd 0fa905362h
+dd 038bb22e5h
+dd 0f68b2fd9h
+dd 0801f7085h
+dd 0d17989dah
+dd 041726e9ch
+dd 0da6bf2e4h
+dd 0d9365339h
+dd 02fcbe34ah
+dd 0534de980h
+dd 03117859dh
+dd 05121b0e5h
+dd 0223149a4h
+dd 019ebd513h
+dd 0448e6ae5h
+dd 0a6ce0533h
+dd 09a08aecah
+dd 0f9339175h
+dd 0a2638499h
+dd 0787b77c3h
+dd 064151743h
+dd 087413a7eh
+dd 065cdcb24h
+dd 05afff652h
+dd 008d32ac2h
+dd 074e75214h
+dd 0744176d0h
+dd 0750b395fh
+dd 01a3f9819h
+dd 0189580cbh
+dd 0cd1c02ach
+dd 0bf150c84h
+dd 095a76693h
+dd 0f0bc1cafh
+dd 027823ea0h
+dd 07a7ad0a2h
+dd 0b7c384adh
+dd 0033b9f4ch
+dd 0ba7ab8b5h
+dd 0d1b2b78dh
+dd 03b4ebbe6h
+dd 08d43ef06h
+dd 0a0a4a375h
+dd 062086ef7h
+dd 009a83748h
+dd 0160a65c1h
+dd 0172eac46h
+dd 099028b59h
+dd 0d2659e09h
+dd 0e2422d60h
+dd 054010d08h
+dd 04ca231a0h
+dd 06d832f0ch
+dd 098fb77cbh
+dd 0deeb3e94h
+dd 0beaccb9ah
+dd 0f66bc584h
+dd 07d352257h
+dd 060931755h
+dd 0f4abcf2fh
+dd 0bf7cf20dh
+dd 0b15a8841h
+dd 07e9693eeh
+dd 0f3472567h
+dd 0a15000c7h
+dd 092322c09h
+dd 035e7ac97h
+dd 0a3c139afh
+dd 0c5ecb46ch
+dd 08416e66ch
+dd 0f00bacd9h
+dd 0ef57104ch
+dd 0fae57251h
+dd 062eb0b58h
+dd 0c01da6f8h
+dd 0e4a19883h
+dd 07a364d69h
+dd 056d4e3beh
+dd 09820cfe0h
+dd 083a78af6h
+dd 0940d1a78h
+dd 0656f4279h
+dd 06520497fh
+dd 0003d214ah
+dd 00ee92f7bh
+dd 0f7deb516h
+dd 0f0d11224h
+dd 0ad6538e8h
+dd 0b41353d7h
+dd 05e4b72f0h
+dd 0d6d62662h
+dd 0fc047131h
+dd 0550e2517h
+dd 040e2022dh
+dd 0c2722834h
+dd 0a23456b5h
+dd 0b3f6a938h
+dd 09b957859h
+dd 0955c855dh
+dd 047c399efh
+dd 00ee776fch
+dd 0a8fefdd7h
+dd 030908feeh
+dd 00c0fc3f4h
+dd 0fd4ac649h
+dd 0325cee89h
+dd 0a0271ccfh
+dd 092d7d6c1h
+dd 0cdc49a0dh
+dd 095d347efh
+dd 0852974efh
+dd 0b64a2101h
+dd 0bb2539dah
+dd 089f3000ah
+dd 01627dfa9h
+dd 0d3e8d755h
+dd 0a4f56eb2h
+dd 005a37719h
+dd 0a9f252a6h
+dd 067451899h
+dd 07f21b679h
+dd 048679146h
+dd 066847df9h
+dd 00533114dh
+dd 0ad62dfb2h
+dd 069c2a29bh
+dd 04f71dde6h
+dd 09ffd43c5h
+dd 099bb314ah
+dd 01a32e6f1h
+dd 06d3735eeh
+dd 0bf98fd94h
+dd 08bb3610ch
+dd 0ab7d436ch
+dd 01277699bh
+dd 075664268h
+dd 0da460121h
+dd 06aa47dd1h
+dd 0bf7099e0h
+dd 0652bf975h
+dd 01d8c14bfh
+dd 03da6f68ch
+dd 035061fffh
+dd 078e4ba70h
+dd 0d78af916h
+dd 04c0c6174h
+dd 09cd8984ah
+dd 0dd75c24ah
+dd 0542912e3h
+dd 0a87447deh
+dd 0570bdd58h
+dd 0c3ab10f1h
+dd 03cf093a4h
+dd 0f1ed3582h
+dd 0e70f3574h
+dd 071c060f5h
+dd 0b2e6e66dh
+dd 0984025fdh
+dd 0435efcb4h
+dd 0242b4fd1h
+dd 00d946385h
+dd 0b534407bh
+dd 050e14a40h
+dd 0ab71b05eh
+dd 0612569f4h
+dd 0bf4dc747h
+dd 036c04ed2h
+dd 0f198e6c5h
+dd 05d8ee52fh
+dd 0b002837bh
+dd 08ff7216eh
+dd 09317c87fh
+dd 0c3260367h
+dd 0288c47d6h
+dd 09170e271h
+dd 08830b39ah
+dd 0de98fdffh
+dd 050690d1bh
+dd 0b1831ff1h
+dd 09d546a43h
+dd 0f9b7fd33h
+dd 0701a788dh
+dd 03dd96da2h
+dd 067f32579h
+dd 07da3403dh
+dd 06adcfbbeh
+dd 02c639eaeh
+dd 00df8b084h
+dd 019b087e2h
+dd 0a6db99a7h
+dd 0cc138c72h
+dd 0ad488c6ah
+dd 0af2f2b39h
+dd 0cc675af7h
+dd 0829eff16h
+dd 0cc9a273ch
+dd 0c3d8fdech
+dd 0e8614859h
+dd 09f5823c9h
+dd 0caaffed2h
+dd 002fd08efh
+dd 06751009eh
+dd 023bdbf5dh
+dd 0503d7356h
+dd 0979a02f2h
+dd 07fbc0967h
+dd 0718470f6h
+dd 05d28efb3h
+dd 0f5265a02h
+dd 0918ab86ah
+dd 0b4fe0ebfh
+dd 0d041bacch
+dd 005fcabeah
+dd 0be9d8f71h
+dd 093a7bf34h
+dd 082b9e891h
+dd 0aaa127dah
+dd 0d7b3e46ah
+dd 0530e67eah
+dd 03d0e2b31h
+dd 017f60b4eh
+dd 09f9ff76bh
+dd 0c6519fa6h
+dd 025489551h
+dd 0dd3fd5a2h
+dd 0c93365f3h
+dd 0fa8dd09ch
+dd 002fb6668h
+dd 0ae8c51c7h
+dd 05fb397a6h
+dd 0108c50f0h
+dd 06f959857h
+dd 0df6fbee0h
+dd 030682cc7h
+dd 00b3f17f6h
+dd 0fe97a462h
+dd 065c6ff21h
+dd 090da9c29h
+dd 0c5dc29e4h
+dd 05c3ea1fdh
+dd 01079d749h
+dd 0e2ab3f2bh
+dd 04ea5d41dh
+dd 0fab09939h
+dd 0c1772021h
+dd 05ca069fdh
+dd 0fc8a0b10h
+dd 0f750dbfeh
+dd 059cd971eh
+dd 0a870569eh
+dd 080b1fceah
+dd 0051fc188h
+dd 00cef72efh
+dd 0bb32ac44h
+dd 0c0364501h
+dd 0eead2b75h
+dd 04074f503h
+dd 06c49e46bh
+dd 025fa885ah
+dd 03fed6a51h
+dd 094a57710h
+dd 028ad3ab0h
+dd 0490f821eh
+dd 09f62b9eeh
+dd 09739f87eh
+dd 08b5d02abh
+dd 06f71e3d1h
+dd 0388c7c38h
+dd 05e2d9ee2h
+dd 03084d175h
+dd 0e3cf836ch
+dd 051fc1d64h
+dd 09b3f8aceh
+dd 08e389cdfh
+dd 061addbc8h
+dd 04c8e2f10h
+dd 048d50f21h
+dd 03ded7efdh
+dd 04a6c3a2ch
+dd 045e41563h
+dd 01d3e088ah
+dd 0874fab4eh
+dd 0616ac854h
+dd 0cf70d9f6h
+dd 04e5c8151h
+dd 09f5c4279h
+dd 035167e9ah
+dd 002638442h
+dd 0a210117ch
+dd 02629bc98h
+dd 0c8df52ach
+dd 04c5fe6efh
+dd 0a3220937h
+dd 0058ab4ddh
+dd 0fe4a5e8bh
+dd 0455036e6h
+dd 00fe195edh
+dd 07e32ef09h
+dd 0a04d321eh
+dd 0b240908dh
+dd 0e1e65c9dh
+dd 0727f6ba3h
+dd 03132e07dh
+dd 01fc7e9dbh
+dd 03fcd75edh
+dd 0415f6c07h
+dd 0a045fac1h
+dd 07afe87c8h
+dd 06d4794a4h
+dd 01dc47f2ah
+dd 09b2eda03h
+dd 01d2f61e1h
+dd 020f58c15h
+dd 01bc16b4fh
+dd 04b624c76h
+dd 04be668b2h
+dd 00d0bd7b0h
+dd 06f98498ch
+dd 086e5577ch
+dd 07de5a055h
+dd 095e33d1ch
+dd 026cce02ch
+dd 0e8739a3eh
+dd 0692e441bh
+dd 0ce53bf60h
+dd 0419f7660h
+dd 04c0483e5h
+dd 0eaa2d229h
+dd 0b604f78ch
+dd 0f36bd7f0h
+dd 091ca9a05h
+dd 056e07408h
+dd 090f62dc9h
+dd 046baee54h
+dd 00ba9afb4h
+dd 060d57aa6h
+dd 0abe1091dh
+dd 047f7f5c8h
+dd 0aeeb5117h
+dd 06b2cda1ch
+dd 0133ac02ch
+dd 09e65371ch
+dd 0e922f757h
+dd 0156b69a2h
+dd 0209f8bf8h
+dd 076c3148fh
+dd 0c04be8deh
+dd 08ed80c37h
+dd 0a42d6af6h
+dd 0a1efeabch
+dd 0d21313fbh
+dd 0cfae35ffh
+dd 0ab2e9222h
+dd 0e89b2961h
+dd 01179e975h
+dd 08d7bb8bfh
+dd 06894a0bbh
+dd 0abe6fe6fh
+dd 022a67c9fh
+dd 0461f79cch
+dd 00e84983bh
+dd 0cbab0159h
+dd 0b20009c1h
+dd 02ab0470ch
+dd 0a528e3f1h
+dd 068b062e2h
+dd 057b76d7fh
+dd 0ddbb575eh
+dd 0a2f639fch
+dd 085d6a56ah
+dd 0d90179fah
+dd 0eecb083bh
+dd 0b436afdch
+dd 0c0573626h
+dd 006fc83f6h
+dd 00d1209e6h
+dd 0a1870414h
+dd 0b8065076h
+dd 0ded0eef2h
+dd 0fdbf2db1h
+dd 0db2caeb9h
+dd 0c78b1878h
+dd 080946a1eh
+dd 036025fd5h
+dd 046cbdb0fh
+dd 027c7936eh
+dd 0fb86dd4ah
+dd 0c49a37ffh
+dd 0bd33dabbh
+dd 043b0c2a2h
+dd 04bd00650h
+dd 0475f339fh
+dd 09ebcc817h
+dd 02648d254h
+dd 0bc560332h
+dd 081491de4h
+dd 0a4742cc3h
+dd 0e9e454b6h
+dd 0dc37741fh
+dd 014deb868h
+dd 012f83214h
+dd 042d8070ch
+dd 093926e66h
+dd 070044e22h
+dd 042aae093h
+dd 030c3c1fah
+dd 08612bfaeh
+dd 05b4ba81ch
+dd 00aac8057h
+dd 02c0fb817h
+dd 0b4000e7ch
+dd 0b6623401h
+dd 09e071126h
+dd 08c8440e3h
+dd 01c88757ah
+dd 05575d797h
+dd 0add6b991h
+dd 052956dc3h
+dd 0dbf61068h
+dd 0fba22363h
+dd 094982058h
+dd 0d2d75102h
+dd 01100a6d7h
+dd 0654a413ah
+dd 0bc03ac72h
+dd 070ea5064h
+dd 0db7aed4ah
+dd 0621e943ah
+dd 055783892h
+dd 05d99e710h
+dd 0ac3af2d7h
+dd 0333b1420h
+dd 08fea0d76h
+dd 063a68778h
+dd 0a9c0d540h
+dd 06618d725h
+dd 09e17280dh
+dd 0a08a4ddfh
+dd 08b56d05ch
+dd 0641a6a95h
+dd 06faf2605h
+dd 0a71a2707h
+dd 0b5a33feeh
+dd 080fa53edh
+dd 06da1779bh
+dd 046f70a31h
+dd 03635e5a6h
+dd 059d1f973h
+dd 022898b01h
+dd 06b2e14a5h
+dd 04b60929eh
+dd 0ef27f040h
+dd 0f3328673h
+dd 00838ab58h
+dd 0824737cbh
+dd 0c3965196h
+dd 02d281764h
+dd 0a96ce0dah
+dd 064fecf3ch
+dd 02a654ef5h
+dd 0be4852beh
+dd 0842cf2a6h
+dd 036333df6h
+dd 097c93b01h
+dd 0fc93f170h
+dd 05db10e2eh
+dd 0a85df499h
+dd 0ae8e51d0h
+dd 076f42ceah
+dd 06c66a63dh
+dd 04c703673h
+dd 02e112bbfh
+dd 04a10fe2dh
+dd 0a0b7c33dh
+dd 05158fb10h
+dd 049f11946h
+dd 05dcb7387h
+dd 06dd4bb5dh
+dd 092de8034h
+dd 0191cfdedh
+dd 0821e2c5ch
+dd 0e2616973h
+dd 083bad5d6h
+dd 063bdd80fh
+dd 006db714dh
+dd 0b6f0197fh
+dd 07d078cdah
+dd 09870ed46h
+dd 0e2138c60h
+dd 025bcdef8h
+dd 098e25a6eh
+dd 065433c52h
+dd 0b043fc31h
+dd 02c9dc8e6h
+dd 0394c871fh
+dd 01f9bf042h
+dd 0aa6fead4h
+dd 07492ffaeh
+dd 0b9cb1ee2h
+dd 05a4c8342h
+dd 01a2b2291h
+dd 00808c0e0h
+dd 054436821h
+dd 0e3850eebh
+dd 080b6f071h
+dd 058c56d27h
+dd 0e73d2f12h
+dd 00addad03h
+dd 0a28678a2h
+dd 0d9cdf446h
+dd 0b506cbc3h
+dd 0f8bb17e4h
+dd 093fe5987h
+dd 0df3bf374h
+dd 00c302cc2h
+dd 0103a0a53h
+dd 068350191h
+dd 04ceeb0dch
+dd 08db55509h
+dd 0a8e42d02h
+dd 059d9083dh
+dd 0c2e5f35dh
+dd 0fb3c20b5h
+dd 0afa928a6h
+dd 0b11c8b6bh
+dd 0cbcf3328h
+dd 0bba524abh
+dd 0b9d01097h
+dd 01c7bd716h
+dd 03f2f9060h
+dd 0d848e7f6h
+dd 0d7b1166dh
+dd 0bd470d15h
+dd 07dc0614ah
+dd 0bb14b06ah
+dd 02b915fedh
+dd 0458803beh
+dd 045c17945h
+dd 0b5cebf1ch
+dd 083bc33b2h
+dd 0b788ebf6h
+dd 05cb4815dh
+dd 05018208fh
+dd 0292075e4h
+dd 09babfba0h
+dd 0add8aaaeh
+dd 0a2cf4dceh
+dd 0fd279ca1h
+dd 083b15187h
+dd 0077fed81h
+dd 066858346h
+dd 063cf9862h
+dd 0a7a56722h
+dd 0c9093430h
+dd 063a17cf4h
+dd 006c4488dh
+dd 0381b7db7h
+dd 0b8f7ad30h
+dd 0a29d9328h
+dd 0410778a8h
+dd 06592ff16h
+dd 043742e76h
+dd 0681c29dbh
+dd 004b7d9d1h
+dd 0db26d98eh
+dd 0460c6a76h
+dd 0f434d253h
+dd 0ea1b7e8ah
+dd 086080d8fh
+dd 02bcf52e1h
+dd 03535f7e6h
+dd 015c87895h
+dd 0d92651f6h
+dd 01973ff61h
+dd 057e7c373h
+dd 08056e977h
+dd 07357f8f0h
+dd 0cece951ah
+dd 0cbd7f96dh
+dd 0893c31ach
+dd 0367ab414h
+dd 02e225130h
+dd 096a9f9b1h
+dd 038a3bc8eh
+dd 02284e06dh
+dd 08d8c05d3h
+dd 02b4af3ach
+dd 0389e6221h
+dd 08ac04943h
+dd 088a4cb55h
+dd 0b18a783ah
+dd 00bba25e2h
+dd 0c563f2c4h
+dd 05fa4d937h
+dd 0b56fd702h
+dd 03c5df295h
+dd 0a2a53ff9h
+dd 07aa7f142h
+dd 04b05dd61h
+dd 0af2b03a9h
+dd 035fbb2f9h
+dd 0de28ca02h
+dd 071452ea2h
+dd 08f60f13fh
+dd 03a05e3a6h
+dd 08417b792h
+dd 0d1b610ech
+dd 0386c59fch
+dd 0cb5b65f7h
+dd 01053f786h
+dd 0c943d65bh
+dd 0cc30b6e7h
+dd 006b72b81h
+dd 0791e3419h
+dd 0bcc63306h
+dd 05436c9d4h
+dd 0eb0a3ab0h
+dd 05d9ba6d9h
+dd 0c253a0c9h
+dd 0c246f9edh
+dd 0e4f45990h
+dd 06da5bbdeh
+dd 0e2f2d58bh
+dd 0ecf9badbh
+dd 0a37f78aeh
+dd 02266b1b1h
+dd 09571bf82h
+dd 0e2fc27a2h
+dd 09c281aa7h
+dd 0cc85da12h
+dd 06074352dh
+dd 00f148cfdh
+dd 0c43fcd99h
+dd 0dcb4b35bh
+dd 08ad7441ch
+dd 00b122ba7h
+dd 03f7de1f3h
+dd 05ea3ceadh
+dd 07c2a1730h
+dd 0f9e7fb11h
+dd 058358947h
+dd 0350aad75h
+dd 0f63e09bch
+dd 06b1bde10h
+dd 0665de6b6h
+dd 0ec7e056dh
+dd 02c2a2668h
+dd 010257193h
+dd 07b5c5c9fh
+dd 0793cfc3dh
+dd 09e295fb7h
+dd 07fedd79bh
+dd 01c12426dh
+dd 042f12846h
+dd 0cc5d7c31h
+dd 0ecb1b47dh
+dd 067319adfh
+dd 0a64f4049h
+dd 04f50df4fh
+dd 0839e907fh
+dd 0555e822eh
+dd 004db2bcah
+dd 082e8be00h
+dd 0d5ab85c5h
+dd 0de31c754h
+dd 0e553ab41h
+dd 00eb4c266h
+dd 050eaf2d3h
+dd 0fe35a3e3h
+dd 02e14e148h
+dd 026126b25h
+dd 005c4657ch
+dd 0e99dde84h
+dd 0afa6555dh
+dd 0b7646badh
+dd 04f5c4a5fh
+dd 01d0ac0d6h
+dd 01e760d85h
+dd 05bb4cf2eh
+dd 04aeb83c0h
+dd 09ec1f0dfh
+dd 076450ed4h
+dd 0806977b0h
+dd 0dab996cch
+dd 0f8dc80bch
+dd 07e661709h
+dd 0217fc496h
+dd 03af28d75h
+dd 0aa0f5dcdh
+dd 0c60ae68bh
+dd 0b2cd46d3h
+dd 0680f7a33h
+dd 06c0c1ad8h
+dd 096aa352dh
+dd 01471fa65h
+dd 06458a6f2h
+dd 0e838f34dh
+dd 0dbe561c0h
+dd 001f332b8h
+dd 09d6796bah
+dd 07797af49h
+dd 0f28be39ch
+dd 0c2c1e1d7h
+dd 0120abf15h
+dd 065b52af2h
+dd 01cf997ceh
+dd 09c5d9072h
+dd 0187bce4fh
+dd 08c8801e7h
+dd 004f8abb4h
+dd 0047c2696h
+dd 06d838b4eh
+dd 02051aeddh
+dd 01daafcd2h
+dd 078e46e01h
+dd 0e101e1b0h
+dd 0841e88c3h
+dd 0a58e9609h
+dd 07f2fc3dah
+dd 0a6ff2949h
+dd 034d1658fh
+dd 0adc1c865h
+dd 052cabd2ch
+dd 0ff8b04d0h
+dd 0c7e84fbah
+dd 0452fc1abh
+dd 098ac7cfeh
+dd 0404b6ed4h
+dd 0c78f622bh
+dd 01156c061h
+dd 0913975fdh
+dd 01d268c29h
+dd 07e4360c4h
+dd 08ae28cc1h
+dd 0c63781a6h
+dd 05cb1a2aeh
+dd 00a04bc50h
+dd 0ebd940b5h
+dd 00860d85bh
+dd 0f759952fh
+dd 0f6500064h
+dd 078360f8fh
+dd 003cac094h
+dd 0a6106323h
+dd 092c07b64h
+dd 0bbe2d4e6h
+dd 050ff5357h
+dd 0c555a475h
+dd 0ee778e59h
+dd 0da7b9ecdh
+dd 08fa98a2ch
+dd 05a150a65h
+dd 0b6e98e8fh
+dd 0838e9e60h
+dd 0ec2d1368h
+dd 056f91adeh
+dd 07365ba83h
+dd 021f504fbh
+dd 0121cff89h
+dd 0eada5b4dh
+dd 09d2b9359h
+dd 064df5fd7h
+dd 03af90d73h
+dd 0c1a2baf6h
+dd 00e2b1df5h
+dd 061719d81h
+dd 002da3daeh
+dd 0a23a4fe3h
+dd 025726812h
+dd 0023ada67h
+dd 0fc5ac60eh
+dd 0f7866e06h
+dd 0779b1a51h
+dd 00a16db74h
+dd 0095d9625h
+dd 0132b6214h
+dd 02cd71686h
+dd 06c4d9f1ch
+dd 08d10c005h
+dd 02700b740h
+dd 0b0722910h
+dd 0e571a161h
+dd 01e886f36h
+dd 0176029e6h
+dd 04b08f9e9h
+dd 091186b3eh
+dd 08dd61d6dh
+dd 02ae31c19h
+dd 00fa0af49h
+dd 0fb5eeb5ah
+dd 05dc45de3h
+dd 02561f114h
+dd 062d65deeh
+dd 008ddc769h
+dd 03bd99e00h
+dd 0b2705fbch
+dd 0694a7d31h
+dd 018134579h
+dd 0fbb655cdh
+dd 06b1dc170h
+dd 035d20863h
+dd 098fcadbbh
+dd 0c8f5624eh
+dd 0fe5b86a2h
+dd 04cea75d8h
+dd 02492c920h
+dd 070173397h
+dd 0b62d3ad0h
+dd 05b2d2400h
+dd 01ce4aa3eh
+dd 099ba6a38h
+dd 019d2f9cah
+dd 0e31cbb90h
+dd 00c28973ah
+dd 0452be131h
+dd 0a3c20065h
+dd 023055cc2h
+dd 0188ce90eh
+dd 0ba5436a7h
+dd 03c0e0b37h
+dd 096746650h
+dd 05e785344h
+dd 0c3cf03e4h
+dd 0e6f87b34h
+dd 03b08540eh
+dd 0b2aecc57h
+dd 0b6a93983h
+dd 0e3fef61ch
+dd 0bffacf06h
+dd 0a25180f4h
+dd 0a10de0afh
+dd 0e76af133h
+dd 06c46def0h
+dd 0f22c8bbfh
+dd 0a9b1ad70h
+dd 0f36d522bh
+dd 02b505512h
+dd 02cff1db7h
+dd 0d5ee0e83h
+dd 0ed921f9fh
+dd 0db036804h
+dd 0a26524cdh
+dd 0658a360bh
+dd 08163eacch
+dd 03bf40d45h
+dd 040dba324h
+dd 00f9093b0h
+dd 0a63637b7h
+dd 0a5e63c2fh
+dd 0169a8fadh
+dd 0691f6eb4h
+dd 058c833e6h
+dd 0985660cah
+dd 0993b7b2fh
+dd 094f3732eh
+dd 00c93108dh
+dd 07f408f38h
+dd 0b110c839h
+dd 01b5c2843h
+dd 02fa60065h
+dd 09a170befh
+dd 0a8314bc9h
+dd 025e412b3h
+dd 095e9dc2ah
+dd 0fc9473f6h
+dd 021f33d5fh
+dd 0940dc372h
+dd 0b5492c1ah
+dd 0e11c630fh
+dd 0fa835ac3h
+dd 07eea66fah
+dd 06dffa1dah
+dd 0be2b8a10h
+dd 0f5fd8180h
+dd 00936d839h
+dd 003b3f63ah
+dd 0c6ff0a28h
+dd 0a982a5e3h
+dd 07d0d92d4h
+dd 0a57a806bh
+dd 0d23f180fh
+dd 07c7ae097h
+dd 035311654h
+dd 0ac738bd0h
+dd 04e77e7a3h
+dd 014fb4229h
+dd 0df6ea583h
+dd 091659b21h
+dd 03d2c9e1fh
+dd 0ba306ac2h
+dd 0889ad442h
+dd 0caf67e1fh
+dd 09bf0cfbah
+dd 004ffb8cch
+dd 0b05f3ebch
+dd 09532d71dh
+dd 06c8c76bch
+dd 03dd8e179h
+dd 03a0e5d7eh
+dd 0b53273a6h
+dd 0f1c0f5bch
+dd 0e3b35d0ah
+dd 00e07c6c9h
+dd 0d4b5cac2h
+dd 00c81cb01h
+dd 066e3fc73h
+dd 087c245ech
+dd 0df198fe2h
+dd 07dd6016fh
+dd 0642c9e93h
+dd 006509787h
+dd 0d661261ah
+dd 0b7b6ccaeh
+dd 03d10480ch
+dd 0ed44239dh
+dd 0b28e2946h
+dd 00989fbcah
+dd 0ff589bf4h
+dd 0c100d796h
+dd 022dd8b5bh
+dd 06ae6889eh
+dd 02a8f2898h
+dd 044650023h
+dd 0fdb60e0ch
+dd 0854a1b23h
+dd 074e91886h
+dd 0e86a055fh
+dd 0d585c6d9h
+dd 07f485e1ah
+dd 0001eaaa2h
+dd 06f72dfa4h
+dd 0f2fa494ah
+dd 05bdbac64h
+dd 06e39de92h
+dd 0fd15accdh
+dd 0fadc856eh
+dd 02daf5519h
+dd 0aee40c96h
+dd 0843b7edbh
+dd 074f67a39h
+dd 0e3f2162bh
+dd 0203ea4fbh
+dd 05e277261h
+dd 0f20570fch
+dd 0093b4b1eh
+dd 06f9326e8h
+dd 0d7be5523h
+dd 0bcce6349h
+dd 092b8969bh
+dd 03da593f6h
+dd 04dae7531h
+dd 02a75cb4fh
+dd 09c6a7a5bh
+dd 0d4a14989h
+dd 0eae4edf9h
+dd 076bc3224h
+dd 0a66f6ddeh
+dd 0c863c705h
+dd 0c95c0dech
+dd 044dd238ah
+dd 033cdcfefh
+dd 0632f51f2h
+dd 05f1b7be8h
+dd 03a3304d6h
+dd 06b7f719eh
+dd 0be9da865h
+dd 0b6b9f3e6h
+dd 0e8bfb6eeh
+dd 056167b00h
+dd 0ef6bd2a8h
+dd 0a08a064fh
+dd 0ccac9f22h
+dd 0933175dbh
+dd 0cbe7c9dbh
+dd 0cfaf3dfah
+dd 02200122ah
+dd 0cb3b975ah
+dd 0071fa7dbh
+dd 06affec38h
+dd 0d7048d20h
+dd 0955c8e30h
+dd 0e35989f2h
+dd 0edf0c8d8h
+dd 0b3cc2bcfh
+dd 078b214aeh
+dd 0921daeach
+dd 0741eacddh
+dd 0a8169ad3h
+dd 03b08dedeh
+dd 0e83d15b0h
+dd 0e4dbe321h
+dd 0579c013ch
+dd 0c854f791h
+dd 0fbdf9b63h
+dd 009e07a40h
+dd 0bf29b10dh
+dd 0d1676255h
+dd 094357616h
+dd 0fd8163a4h
+dd 026bf4479h
+dd 02812b8d2h
+dd 0e82d8e9dh
+dd 07518de5dh
+dd 0c1412136h
+dd 0456faf7bh
+dd 0a6582e37h
+dd 022189420h
+dd 0e1428a0ch
+dd 048b8ed78h
+dd 0cf0b7be6h
+dd 0ed0c6af4h
+dd 054f52eb0h
+dd 062b438cfh
+dd 00a96a3d5h
+dd 03ca608c0h
+dd 0f3603ebfh
+dd 05c517615h
+dd 009db2ce9h
+dd 0505245a5h
+dd 0f172adf6h
+dd 068aa3261h
+dd 051e3b73fh
+dd 0d867e6beh
+dd 0091f0b6ch
+dd 03ddec8d7h
+dd 0db8e1477h
+dd 0ac3515a0h
+dd 049dda4f6h
+dd 0ef02b5d2h
+dd 0757d11b7h
+dd 00960cf6ah
+dd 0ab0dd276h
+dd 0e68740e3h
+dd 0b6dc69e4h
+dd 01e1b120dh
+dd 0ed0b18f8h
+dd 05d0b6f9ch
+dd 09a81bc94h
+dd 0c375e5c3h
+dd 0095b199ch
+dd 0f2a135e2h
+dd 0905f7b34h
+dd 0950adb83h
+dd 0cecb2c46h
+dd 08ceeebfbh
+dd 0a665d968h
+dd 0e77284dbh
+dd 0061c174bh
+dd 0356965e2h
+dd 006d92996h
+dd 0ccbdd9d6h
+dd 0e17eebd9h
+dd 09f821e7eh
+dd 031a9f173h
+dd 0bec32243h
+dd 05bb481c3h
+dd 0a4b39b90h
+dd 0e5784261h
+dd 05f434377h
+dd 09f71f15dh
+dd 020c0d5e3h
+dd 0ec73b5ech
+dd 06655b887h
+dd 09dc61738h
+dd 0e9bf0dd4h
+dd 0dd9b1b0eh
+dd 0675bf625h
+dd 07c02a718h
+dd 0bf1c7d04h
+dd 0a9e3a783h
+dd 072321f23h
+dd 0ab37aa16h
+dd 0b08e6baah
+dd 085304023h
+dd 039415810h
+dd 01148e229h
+dd 0424b535eh
+dd 0926135a2h
+dd 082695944h
+dd 0f6695ba1h
+dd 0b0f3c40ch
+dd 045c71581h
+dd 01b9c7bb4h
+dd 006f29a8bh
+dd 0aa31e946h
+dd 0a19835bfh
+dd 012af5a82h
+dd 00ac5da3dh
+dd 0533b8178h
+dd 0d69aa933h
+dd 0ca514ca5h
+dd 07623fe2fh
+dd 065fa51edh
+dd 016e087f1h
+dd 033c8097dh
+dd 0b9f40244h
+dd 09d493edeh
+dd 03c945734h
+dd 0094e0292h
+dd 0539139f3h
+dd 0e702faa8h
+dd 039230773h
+dd 0c313b3deh
+dd 0e774b413h
+dd 0d6b193eah
+dd 02d2fa897h
+dd 0f14adbbch
+dd 0e80f5365h
+dd 0ebfe34eeh
+dd 049cdb604h
+dd 069b83142h
+dd 0ba74e371h
+dd 01335a749h
+dd 0c71e38f4h
+dd 010baf64ah
+dd 036d883cah
+dd 09d8f2ab5h
+dd 01ecf8deeh
+dd 09926eabdh
+dd 066b75b1fh
+dd 0a65369c8h
+dd 0b283411ah
+dd 07f54d591h
+dd 0bf6ce979h
+dd 05cab7904h
+dd 062c1cabbh
+dd 01f4ab718h
+dd 0aaa5dd78h
+dd 0443b8948h
+dd 088d5bfd0h
+dd 075011b1dh
+dd 0b6884d26h
+dd 0f40da5f7h
+dd 09fb02a49h
+dd 0881f9a3eh
+dd 0cac2270ch
+dd 02176694eh
+dd 08fae8cbdh
+dd 0419ba2d3h
+dd 00074942eh
+dd 0f9604996h
+dd 0adc067b6h
+dd 03ad9856bh
+dd 036b754b3h
+dd 07597460fh
+dd 0feeede21h
+dd 05d393a2dh
+dd 06c6a54e9h
+dd 003098ad9h
+dd 0305b3617h
+dd 0b5518a03h
+dd 08c1ac53ch
+dd 0bae69f10h
+dd 0c0c93899h
+dd 0083a14c7h
+dd 05ee68d19h
+dd 01817332dh
+dd 054bc5640h
+dd 04da12b55h
+dd 0b1f69fafh
+dd 0fa1c619ah
+dd 0611b9cf8h
+dd 0d07d28b6h
+dd 00be92d95h
+dd 03e9fea91h
+dd 0876181adh
+dd 021bdbe2dh
+dd 04c13fe4fh
+dd 0d220dec1h
+dd 033bf4b7fh
+dd 0aac911b2h
+dd 0cef6a8c9h
+dd 00d2f647bh
+dd 01c08ebf3h
+dd 00141d9fdh
+dd 0e877ed57h
+dd 09021034dh
+dd 00c1d9460h
+dd 00169e2e8h
+dd 07e834464h
+dd 0f85f52f4h
+dd 0f89f5d15h
+dd 0ccb82d89h
+dd 087b0463dh
+dd 0d7ca7e73h
+dd 019ce3997h
+dd 0a4b020fah
+dd 0370eac08h
+dd 043c517cfh
+dd 0064a12a6h
+dd 09a778a7dh
+dd 0bd404e92h
+dd 07ed7ca26h
+dd 0e691ae42h
+dd 0f65baae5h
+dd 0c2e2d1fdh
+dd 018b7f226h
+dd 08921bcdeh
+dd 05cca9eddh
+dd 064d6263dh
+dd 00cde703eh
+dd 05ff25697h
+dd 086219458h
+dd 0d1bce9e0h
+dd 0f360de5eh
+dd 0b0909019h
+dd 0d68a1114h
+dd 05007567eh
+dd 0e022d215h
+dd 04c6f9abdh
+dd 067c5f870h
+dd 00f1a0216h
+dd 034f6ec0eh
+dd 0c2061352h
+dd 08506ab5fh
+dd 0b8988de6h
+dd 0b81988e1h
+dd 0155dd7afh
+dd 04ace9fe0h
+dd 081bd438ch
+dd 0a57a7c8eh
+dd 01da0e371h
+dd 0a6c21c1dh
+dd 00733ffc0h
+dd 05f81846bh
+dd 0cde0ff7ch
+dd 01279f349h
+dd 0d6957354h
+dd 02c47e9d7h
+dd 0f009fd66h
+dd 0f88a1562h
+dd 06fc20c94h
+dd 038710076h
+dd 0f6a298bah
+dd 040f60919h
+dd 0f03b5f25h
+dd 03f200391h
+dd 066d19fb0h
+dd 04ea50853h
+dd 0ed3f767ch
+dd 0081ab26ch
+dd 0cccec6fdh
+dd 019b9e88dh
+dd 027db6a97h
+dd 052e36947h
+dd 0dbcfe168h
+dd 0d178e7fdh
+dd 0936bef5fh
+dd 0100a2acfh
+dd 0bf78ff7ch
+dd 0ea3a5709h
+dd 0f2977386h
+dd 069849516h
+dd 0fad83cedh
+dd 0aecc1f3dh
+dd 07d26bb02h
+dd 0088e2fa6h
+dd 0b6579489h
+dd 067afb453h
+dd 0c730ed47h
+dd 080ea1454h
+dd 0b4ba19a7h
+dd 0e797eeabh
+dd 0dc5c45ebh
+dd 0718ed535h
+dd 0c04b11c1h
+dd 0eaeb2504h
+dd 03078e47eh
+dd 086ab4fedh
+dd 0eeee9e59h
+dd 0dae2e304h
+dd 0b1d2bdd2h
+dd 05a9f7e5dh
+dd 0bb53ea43h
+dd 04519d5d8h
+dd 0decc45d2h
+dd 078fbef54h
+dd 0df63818fh
+dd 057a74530h
+dd 06c568b64h
+dd 07403d83fh
+dd 046daac12h
+dd 0f21b0abah
+dd 0bf95a544h
+dd 0c14dd9c1h
+dd 072f99b95h
+dd 01a4f9ba3h
+dd 0caf82a38h
+dd 06bbfbe5fh
+dd 037e1a67eh
+dd 0da553404h
+dd 07afe8bf7h
+dd 01f3f3a08h
+dd 0e3649f55h
+dd 0b6719498h
+dd 0640850e3h
+dd 0f0c1e2b1h
+dd 0c17acd97h
+dd 07758e285h
+dd 07e1b7419h
+dd 0897bd1d4h
+dd 095f3d761h
+dd 01abcc5aeh
+dd 0952d65ceh
+dd 0454e18f2h
+dd 096360436h
+dd 0654979c2h
+dd 087b55a0bh
+dd 0b35fd23bh
+dd 06e05b868h
+dd 0a4559e2bh
+dd 079e2e098h
+dd 09687693eh
+dd 03a15377ch
+dd 0bdd8734dh
+dd 0cb9818a2h
+dd 0b49fefa5h
+dd 07724ed1eh
+dd 07ac5d157h
+dd 0a344918ch
+dd 08726491dh
+dd 01d2549e7h
+dd 02b3bb441h
+dd 0cdc84d02h
+dd 0c8cb94e8h
+dd 062507412h
+dd 083611334h
+dd 0f20dab65h
+dd 0deb05ab7h
+dd 04442921ah
+dd 011a190a0h
+dd 08a4b798ch
+dd 0be0a6804h
+dd 02f8c0a70h
+dd 08d1cd034h
+dd 058919b3dh
+dd 03d0d0e5eh
+dd 03c229cbfh
+dd 07649b48eh
+dd 0aaa74173h
+dd 0590292b0h
+dd 021a0b425h
+dd 0eed332cah
+dd 0b877b82ah
+dd 032065103h
+dd 04e06963bh
+dd 05d95f74ch
+dd 07ea455f6h
+dd 0dcd7c910h
+dd 09202071eh
+dd 0b37fd264h
+dd 0966d6a0fh
+dd 05be4c002h
+dd 05f7d554bh
+dd 093f1fc39h
+dd 07c162e71h
+dd 04d8beaa9h
+dd 0ab308053h
+dd 0242d4f0eh
+dd 06f1046c8h
+dd 09706ef9dh
+dd 05deed2d3h
+dd 0be57be5bh
+dd 09598b104h
+dd 0585197c2h
+dd 0931c5a97h
+dd 03504c0a4h
+dd 0991cd09fh
+dd 04f79f7b3h
+dd 07b5c73deh
+dd 0619adda8h
+dd 0ad86647eh
+dd 0a6494154h
+dd 0e745d0b3h
+dd 028dcc7a6h
+dd 03560ad89h
+dd 0b649044eh
+dd 00ddad55bh
+dd 0dbc7765bh
+dd 0c64a9dach
+dd 09c9bcb92h
+dd 097940396h
+dd 06d2b87f9h
+dd 0b29f9280h
+dd 0cfaf443dh
+dd 094a320b5h
+dd 0358169c2h
+dd 071fbef00h
+dd 0cb4c5485h
+dd 0e5f1f0ech
+dd 0d4c8db2eh
+dd 0bbc63191h
+dd 0bb3e55c4h
+dd 0f1df56a5h
+dd 0921d3d30h
+dd 0a86da895h
+dd 0b0524d6eh
+dd 061d95672h
+dd 0a7a7c35bh
+dd 0e35e21d3h
+dd 0ae018e55h
+dd 045c01950h
+dd 0f27a3a5dh
+dd 0627a95c1h
+dd 0e1be4bbdh
+dd 0d7fdc63bh
+dd 0562ed4b0h
+dd 08edd602fh
+dd 0e9146d40h
+dd 0d7698c69h
+dd 0943bf5afh
+dd 0d882edb3h
+dd 05dc00eeeh
+dd 04167f32ah
+dd 01da6c5d1h
+dd 0d716ecedh
+dd 01c25a420h
+dd 0999a24fch
+dd 057ebef68h
+dd 0ddb16535h
+dd 0379eb4f6h
+dd 0dcb2b81ch
+dd 0648a8e31h
+dd 0b82cc131h
+dd 0465d4f2ch
+dd 03ad531eeh
+dd 05c770236h
+dd 066537de2h
+dd 0ade933cdh
+dd 04545bfceh
+dd 0375427d6h
+dd 02c425f44h
+dd 0922a6ba1h
+dd 01906f79fh
+dd 08aeb288eh
+dd 03643052dh
+dd 08294bd2bh
+dd 0eaa9450ah
+dd 09c55effbh
+dd 08d2d2d74h
+dd 033b3a7a9h
+dd 0bb528f83h
+dd 07809e914h
+dd 097167503h
+dd 00af78c5ah
+dd 0cd30b2e6h
+dd 01b2f0780h
+dd 0441d314eh
+dd 087c358d1h
+dd 0c4fea7f1h
+dd 0f1dd3b04h
+dd 094a643aah
+dd 07b81b56ah
+dd 0f055a4a4h
+dd 0840fa777h
+dd 0a7c88769h
+dd 0ca903a9fh
+dd 0ac3370fbh
+dd 023e29bb2h
+dd 0628de5adh
+dd 06b9b99fdh
+dd 05369950eh
+dd 05005be32h
+dd 0e007b56ah
+dd 041109113h
+dd 0b09cfaa7h
+dd 05d35e513h
+dd 06d8ebd88h
+dd 0ab499f8fh
+dd 09f852c5ah
+dd 08ff1ab43h
+dd 0b3ba1870h
+dd 06af5933eh
+dd 091defb50h
+dd 055fc4a9fh
+dd 0d2283121h
+dd 022fee9f1h
+dd 0f1cf9e16h
+dd 0bd22451fh
+dd 04c1c5a1eh
+dd 03a20f58dh
+dd 01b4e5281h
+dd 0758d1690h
+dd 0d50e7e30h
+dd 0eef13170h
+dd 0a24c7761h
+dd 00801d211h
+dd 01f2b050ah
+dd 0499c5568h
+dd 00747f526h
+dd 0ef230595h
+dd 07a8ccb39h
+dd 0ecc87827h
+dd 09ff380b5h
+dd 0aaa1737ah
+dd 019e4e1d2h
+dd 020e2406eh
+dd 0158a1c68h
+dd 0bab448feh
+dd 0bac58296h
+dd 0d75f9fffh
+dd 0a13e92cch
+dd 09432bf30h
+dd 0ccdbf065h
+dd 0bcdfcf69h
+dd 09e2d22c1h
+dd 06658a0ebh
+dd 0040dc5fch
+dd 046fbd9b9h
+dd 019bc4763h
+dd 0b829a24dh
+dd 0d8474290h
+dd 0a83bed64h
+dd 03c390057h
+dd 0975756bch
+dd 025e3cf22h
+dd 0b7a70441h
+dd 046491e8bh
+dd 02f00c5e2h
+dd 0ecf0a382h
+dd 064f8952fh
+dd 0f23203d1h
+dd 0ebbce8c2h
+dd 0e2443696h
+dd 0a312cab2h
+dd 081da78a9h
+dd 066ef5663h
+dd 07e5e562ch
+dd 008640860h
+dd 0ea8bc056h
+dd 0820b3033h
+dd 0b8d5b5eeh
+dd 0eb2c7fa5h
+dd 0b8e61056h
+dd 0b3caf78ah
+dd 0e4ed426ch
+dd 075630b3ah
+dd 0687076d7h
+dd 062416ad5h
+dd 0ad8fe183h
+dd 0105a4aach
+dd 016eccd8ch
+dd 0720f7ab5h
+dd 046f8e145h
+dd 0aef602dbh
+dd 0a302c028h
+dd 0e9af4a73h
+dd 06778a892h
+dd 0f3763e72h
+dd 05086b172h
+dd 0e197c8e4h
+dd 0ae067f88h
+dd 0d4ba52d1h
+dd 07368e65eh
+dd 064e60265h
+dd 0eb080b60h
+dd 0c3f65aa1h
+dd 0929213b0h
+dd 07f6709eeh
+dd 031523b0eh
+dd 09350af9ch
+dd 09c2a877eh
+dd 0ea316204h
+dd 099caedf8h
+dd 010a5649ah
+dd 02a51c3efh
+dd 0ff6611a2h
+dd 07a83b402h
+dd 00d1f81ffh
+dd 03216dcb8h
+dd 0f2f32d97h
+dd 08642a9dch
+dd 09ca79936h
+dd 02d28f0beh
+dd 04a50af10h
+dd 0174ffde4h
+dd 0aaadcc24h
+dd 00098461bh
+dd 0778ee081h
+dd 060f158e3h
+dd 04c417394h
+dd 0638963f0h
+dd 0d71ace0fh
+dd 05b45ba39h
+dd 0e8266b79h
+dd 0dae5b0c1h
+dd 033a9d5e6h
+dd 0048d36b0h
+dd 09eb384d2h
+dd 0f308ed2ch
+dd 0d18ba58ch
+dd 0d5de88cfh
+dd 0dcfc2a4ch
+dd 039910170h
+dd 08ec7917dh
+dd 044192eafh
+dd 023c37fddh
+dd 08560a3f6h
+dd 0bf83dc91h
+dd 02c9f8918h
+dd 0941615c1h
+dd 09ef8c93dh
+dd 0d8c52c06h
+dd 0046f0ebeh
+dd 0731ac0a8h
+dd 0c7176165h
+dd 09dafb580h
+dd 0df7ff7ddh
+dd 035768333h
+dd 08eec2b17h
+dd 00aaa97f9h
+dd 0b8f1e918h
+dd 0e41bafe6h
+dd 0b3e06e47h
+dd 0dbb825deh
+dd 0588e32b0h
+dd 0a517f3cch
+dd 07bd950b8h
+dd 07def38eeh
+dd 02493e267h
+dd 082de0f7ch
+dd 056bc8a69h
+dd 03606e514h
+dd 006ecb446h
+dd 01d653182h
+dd 092d5c881h
+dd 0f96b8366h
+dd 0a7f301e5h
+dd 0f2275230h
+dd 077b3a1ffh
+dd 0b8af69c5h
+dd 09a7dde0ch
+dd 0bb2ca721h
+dd 0b1a1fd48h
+dd 0efb94142h
+dd 0323a4b4eh
+dd 000766492h
+dd 00b5aa0eeh
+dd 0cbc921e8h
+dd 016f8f28fh
+dd 04158a277h
+dd 01e5826dch
+dd 051c65da6h
+dd 0d200ba9fh
+dd 0eea7a94fh
+dd 09fbe73c1h
+dd 0f63db07dh
+dd 0911b66b9h
+dd 06900153bh
+dd 03fe01063h
+dd 0b80dbeffh
+dd 03a0d8815h
+dd 04f722b8fh
+dd 0a99df8dfh
+dd 08c1405ceh
+dd 0bb4c6170h
+dd 0fd71d74ah
+dd 0e5824f26h
+dd 0d4aad2c4h
+dd 016cb20fch
+dd 099ec1174h
+dd 0443a6709h
+dd 0b1b092d4h
+dd 0ab81ba03h
+dd 0aa6f73e2h
+dd 0ccefb6b9h
+dd 0cb0314ddh
+dd 0e44b9060h
+dd 05e57bf68h
+dd 0816c89eah
+dd 001db42a6h
+dd 03398a7ceh
+dd 0e47f6481h
+dd 025b1690ch
+dd 047d90ae0h
+dd 0bb7aa888h
+dd 061a4d44ah
+dd 03b25334eh
+dd 0a629b782h
+dd 05c14d971h
+dd 0e13f80eah
+dd 0a5bec92fh
+dd 0ca474cf4h
+dd 0c23c1c8dh
+dd 042b04cfch
+dd 08e3d6682h
+dd 0ca2ff823h
+dd 0661b0831h
+dd 06b30102fh
+dd 087a4a123h
+dd 0fb173460h
+dd 048988103h
+dd 02e63be7ch
+dd 0974a9516h
+dd 0822cd2d9h
+dd 036efb30eh
+dd 045d6110bh
+dd 042658032h
+dd 05755f57dh
+dd 056a8619ch
+dd 0625b8b7ah
+dd 0e1356aefh
+dd 041ece2f4h
+dd 04226ff3bh
+dd 0d62676d0h
+dd 0c129f436h
+dd 0fb17ebbbh
+dd 0d173dae9h
+dd 061790ba2h
+dd 0ef726b10h
+dd 0a531fd14h
+dd 0914d4940h
+dd 0c0314d8fh
+dd 068ceee60h
+dd 0960c5969h
+dd 0b4b22513h
+dd 0093e0ac5h
+dd 07ea141f9h
+dd 0814f1d59h
+dd 0c43c6840h
+dd 084dabf18h
+dd 0db7d97a0h
+dd 035ac53f3h
+dd 0988d7748h
+dd 037b1e27dh
+dd 0330fed8ch
+dd 0a4d38a7bh
+dd 000482509h
+dd 0c12c88cfh
+dd 014ea0c80h
+dd 0d463d878h
+dd 0db7bf5c9h
+dd 005bd666eh
+dd 003c21ad2h
+dd 00ef45171h
+dd 02f219974h
+dd 04ef06b97h
+dd 0f147457ch
+dd 0ec4f6148h
+dd 0ad7e646ah
+dd 0eeaa76f1h
+dd 04b30f631h
+dd 0762ff335h
+dd 02e5d2bb2h
+dd 09ad104f4h
+dd 0d568c45fh
+dd 048f6271eh
+dd 0203f0366h
+dd 0f92abf7dh
+dd 0c7d6556ah
+dd 053b5ea5ch
+dd 0ca3ccb55h
+dd 0aeadf037h
+dd 015bfad85h
+dd 080ff7941h
+dd 0dc6d4ec8h
+dd 0dc40f9cbh
+dd 06bba765ch
+dd 083f4f2bch
+dd 0ec706cc4h
+dd 07ab95a0dh
+dd 026540965h
+dd 06becf0e9h
+dd 0855e0defh
+dd 0e9326514h
+dd 02f0265e4h
+dd 023440f1ah
+dd 0e5211943h
+dd 036d1f731h
+dd 0752ba3ffh
+dd 0b182f83ch
+dd 02acfb87bh
+dd 0c7032d37h
+dd 086b03a4dh
+dd 0b0cd3cc6h
+dd 027c0b462h
+dd 04662309ah
+dd 0182e21d5h
+dd 0cd4c4e1bh
+dd 09642952ah
+dd 048f70b83h
+dd 08e10a53ah
+dd 0ce9a73b3h
+dd 0bf80bcbdh
+dd 07e8788dah
+dd 04f9f0b66h
+dd 01b36bc87h
+dd 06087ca4ah
+dd 0df7697c4h
+dd 07bed7095h
+dd 06dbfdbf9h
+dd 006dc5963h
+dd 041f0cbd8h
+dd 0031a410ah
+dd 08893a23ch
+dd 08f22d6d9h
+dd 068fb4974h
+dd 03d5bbec9h
+dd 07a6ff6f1h
+dd 00c741801h
+dd 0abdbe5a7h
+dd 0e2a1663fh
+dd 09449dfa1h
+dd 0c4735ae0h
+dd 082a01123h
+dd 035fb8e95h
+dd 03d900070h
+dd 0be7aa29eh
+dd 0f877568ch
+dd 091cfecebh
+dd 06438bac4h
+dd 035768fedh
+dd 07b392c75h
+dd 0c53b140ah
+dd 08ff76ac4h
+dd 05e9d3fb1h
+dd 02d586d88h
+dd 0ce32fc3eh
+dd 084d5d167h
+dd 064121f24h
+dd 03bd75402h
+dd 0d6bcde6ah
+dd 0b2b6b09eh
+dd 09f98e02bh
+dd 04d8a7fd8h
+dd 07e492cc4h
+dd 04f88552fh
+dd 015951079h
+dd 055d2c774h
+dd 08f6d1764h
+dd 0b1dcdc64h
+dd 0d2b52c50h
+dd 0f57111a8h
+dd 0d2328d26h
+dd 0827ab54dh
+dd 0b8d19b04h
+dd 0fb889821h
+dd 030961004h
+dd 02e913c5ah
+dd 023076db5h
+dd 02c13b410h
+dd 01868b939h
+dd 085d7f33fh
+dd 07aec32cch
+dd 09972a62bh
+dd 0de54b250h
+dd 06f974082h
+dd 0aec4c0feh
+dd 09e7d069dh
+dd 0d0a04895h
+dd 0ade8baadh
+dd 0987c890eh
+dd 0c1acb3cch
+dd 0782989d7h
+dd 04d653200h
+dd 019e05eb6h
+dd 0738d71e8h
+dd 0e7509102h
+dd 0c46c9af2h
+dd 07915940dh
+dd 0a573f4b7h
+dd 0244413a3h
+dd 0e83b90abh
+dd 0e5d11c1fh
+dd 0a702bf78h
+dd 0dd67c50dh
+dd 0e7033be4h
+dd 05cc1881eh
+dd 0af36a563h
+dd 09fcd116bh
+dd 058db9865h
+dd 0c0b1dee8h
+dd 05b2c01c2h
+dd 0af89de8fh
+dd 0a73c578dh
+dd 00961fb18h
+dd 079cf7382h
+dd 07492d9a5h
+dd 06d44135ah
+dd 06278f246h
+dd 0133ad276h
+dd 05eb4f25eh
+dd 041f2f181h
+dd 01b7b5a6ah
+dd 017cae80ch
+dd 02889a05eh
+dd 0459a958bh
+dd 0592fc687h
+dd 0a62e2701h
+dd 0b2caf504h
+dd 0e499b639h
+dd 00bc0f5ddh
+dd 05e154106h
+dd 089db7274h
+dd 0e1ff2122h
+dd 08707f9e5h
+dd 00b53703bh
+dd 00d07c748h
+dd 0408d4325h
+dd 0773d5e0eh
+dd 092d98f07h
+dd 0abaf31e1h
+dd 095ce1abdh
+dd 058052fb5h
+dd 0faf4f45fh
+dd 0bee8f5feh
+dd 080687569h
+dd 05b8952a9h
+dd 0ee5f3cd2h
+dd 0d41bd068h
+dd 0958473bdh
+dd 011fcbbe3h
+dd 02621a8d1h
+dd 063140f97h
+dd 09a53fa74h
+dd 03311b424h
+dd 08375c515h
+dd 04d6ea7b9h
+dd 02174b6c8h
+dd 0465cc5a9h
+dd 0866d04e6h
+dd 05f207245h
+dd 04f95aa66h
+dd 099842b03h
+dd 0d940513eh
+dd 0fc699af8h
+dd 07f1d0b23h
+dd 01dcccce3h
+dd 0b644758bh
+dd 0dc894968h
+dd 09c184124h
+dd 0d92aa10dh
+dd 03638490ah
+dd 0317c0c90h
+dd 0aa4db12fh
+dd 0f1109a31h
+dd 0d091cb82h
+dd 0d51bb412h
+dd 045df11f1h
+dd 04c1e7180h
+dd 09aecc71eh
+dd 0318984ddh
+dd 0239fb463h
+dd 0f1ee8739h
+dd 068ee3558h
+dd 0449c0f86h
+dd 05086919fh
+dd 05fb5edc7h
+dd 021d67cdbh
+dd 0d9252d41h
+dd 0fbac7df4h
+dd 04bdd9bffh
+dd 0f0dcfd92h
+dd 000b1c284h
+dd 09f0e9389h
+dd 0d08ea4beh
+dd 039bb6893h
+dd 0b84ea70eh
+dd 0445a4696h
+dd 0c61d9d69h
+dd 0f1e12163h
+dd 0cbc65ac3h
+dd 09519ebf9h
+dd 030b69557h
+dd 02467b8e3h
+dd 0e4015ea4h
+dd 00098ca5bh
+dd 0c4905ca5h
+dd 05bb62575h
+dd 0e86b637eh
+dd 0638aa865h
+dd 04e14c8dah
+dd 0e0feaf14h
+dd 0b37d4718h
+dd 091c90cd3h
+dd 04683d3d6h
+dd 0aee752dah
+dd 0c3bfbd3fh
+dd 070626765h
+dd 0817da552h
+dd 0c32f7169h
+dd 0a5167d05h
+dd 02d1a1db1h
+dd 01fb11f17h
+dd 044305f4dh
+dd 00703a2c2h
+dd 0ac0707e6h
+dd 00371b5e1h
+dd 042ecf313h
+dd 0b20d22b3h
+dd 0bf37ccbah
+dd 0d3f70ec9h
+dd 065b8ce6dh
+dd 0464c518dh
+dd 03273bb26h
+dd 09c47bac7h
+dd 0589ed283h
+dd 0ba5dcae0h
+dd 0f321d5bdh
+dd 00d43c1b3h
+dd 0b185683bh
+dd 0478330d8h
+dd 09da7bf8eh
+dd 0bb30669eh
+dd 09dbb9c53h
+dd 064b458fdh
+dd 042b1ccd2h
+dd 0765cb88ch
+dd 03b9e91a3h
+dd 0bd2cbed4h
+dd 04c893af7h
+dd 039d73332h
+dd 0ea4b7ac0h
+dd 00b59353ah
+dd 0d2260cd8h
+dd 0c81c7716h
+dd 08fdaf779h
+dd 036757cd3h
+dd 09b1e87f6h
+dd 040cb3716h
+dd 0790cf075h
+dd 08975303ah
+dd 07b7cd09ch
+dd 06daaebdch
+dd 078beaed9h
+dd 0d31d500dh
+dd 0ea36fd59h
+dd 0aed1dae2h
+dd 01d02b310h
+dd 0830e2c74h
+dd 012e6fc3ah
+dd 0876e51a4h
+dd 09aac4e23h
+dd 01a175515h
+dd 060c4f92fh
+dd 03633ebb5h
+dd 049986bbeh
+dd 0c069ee57h
+dd 0e3dadcadh
+dd 053affa8dh
+dd 0517a4fb5h
+dd 0d29261a4h
+dd 0ad078596h
+dd 04a286c24h
+dd 0ad5e710ch
+dd 0fdd71c5dh
+dd 05d9847f6h
+dd 06c952a06h
+dd 0804a7aabh
+dd 0a7e37ac3h
+dd 0c21fa55fh
+dd 074d1bcc5h
+dd 0fb6ee158h
+dd 0e98b15c0h
+dd 0dc4ae699h
+dd 029ee5df0h
+dd 051634f89h
+dd 0f6e5c008h
+dd 0b094fc23h
+dd 0e8702da8h
+dd 05d70aab5h
+dd 0bb2effc0h
+dd 0a517214eh
+dd 085554baeh
+dd 07b659744h
+dd 00abe71f0h
+dd 016c64417h
+dd 0860af3b9h
+dd 0949b5284h
+dd 0ec1fb181h
+dd 0be3da500h
+dd 088a5d1b7h
+dd 0db8e4bdfh
+dd 07fb38b52h
+dd 0f6e4bf4ah
+dd 0087f627ch
+dd 018d1cb6ch
+dd 050378684h
+dd 036bea875h
+dd 06985b8a1h
+dd 0778570c2h
+dd 02285891bh
+dd 08c5735bfh
+dd 0f74699cah
+dd 03dffd165h
+dd 07ee21178h
+dd 06c842981h
+dd 05b8e0efch
+dd 03d793f01h
+dd 007042324h
+dd 080424681h
+dd 086c22d11h
+dd 040cd474eh
+dd 070f8c809h
+dd 025ddcf82h
+dd 0283a26aeh
+dd 0cab6964dh
+dd 0b45d0f0bh
+dd 01cec312ch
+dd 023f7a2edh
+dd 00462749bh
+dd 0d22487b9h
+dd 0d9b877d3h
+dd 0d9f1819dh
+dd 0c6a34f19h
+dd 077ac88d9h
+dd 076c7f058h
+dd 033ad2c8dh
+dd 083a4e332h
+dd 0ce1e90d5h
+dd 0fbf3a8d6h
+dd 02ac4d551h
+dd 0e81bcb24h
+dd 066025bc2h
+dd 0110745beh
+dd 0798e11d0h
+dd 0467d507fh
+dd 09cd19ebfh
+dd 01d6204dah
+dd 0a17ba8d2h
+dd 041b11aach
+dd 0ea512b95h
+dd 0cf70f205h
+dd 0cc79479eh
+dd 0d1bf38aah
+dd 0f342793ah
+dd 04b5bc5f8h
+dd 08290a44dh
+dd 027059861h
+dd 05dd91467h
+dd 0d67bf55ch
+dd 043ef7a3ah
+dd 0f09d605ch
+dd 0b17ae94fh
+dd 09cf62bb0h
+dd 067eb159bh
+dd 0e7f610d4h
+dd 0e7ec2777h
+dd 0fd026ae6h
+dd 09b5fecb8h
+dd 042c031a3h
+dd 04d88bdb1h
+dd 011d13953h
+dd 061688695h
+dd 0110f4deah
+dd 0d85b6243h
+dd 01530b2cdh
+dd 082e13b73h
+dd 0cad1cab5h
+dd 053e9f3fch
+dd 00e10316dh
+dd 094a455dah
+dd 0ac574e58h
+dd 08017f6c4h
+dd 00cf19407h
+dd 009904716h
+dd 0be89862fh
+dd 00d467b5ch
+dd 0b0530411h
+dd 0800eab06h
+dd 067265be0h
+dd 0c451bf92h
+dd 0af9f5f16h
+dd 0bca4eb50h
+dd 0b78fcc24h
+dd 065fe69cfh
+dd 0667edb00h
+dd 0278f7e9dh
+dd 02de3605eh
+dd 0115c726ah
+dd 002fe37c4h
+dd 0988f5688h
+dd 0d364359ch
+dd 0fbe18f31h
+dd 0d4fc750bh
+dd 065489fadh
+dd 01a511ef0h
+dd 06cf7d247h
+dd 004d53e24h
+dd 0a3e8413eh
+dd 05549fbaeh
+dd 07fcfbae9h
+dd 0eb9ac0f8h
+dd 0f6857aaah
+dd 0a57053b7h
+dd 0d84452b8h
+dd 07d8f5400h
+dd 0e4497b17h
+dd 0c1e924b6h
+dd 0205e0a79h
+dd 06faceeaah
+dd 078686090h
+dd 0d0f62409h
+dd 09e1f4ed5h
+dd 0182553c4h
+dd 01bfa647eh
+dd 0ac158c68h
+dd 05b1ef0d6h
+dd 0c69628c1h
+dd 0a408c562h
+dd 0bc878b96h
+dd 013bf5e6eh
+dd 0eb74e610h
+dd 04171e065h
+dd 0f02d6201h
+dd 032cb0171h
+dd 003c79f08h
+dd 0523e2a37h
+dd 09185d2a8h
+dd 0ff87275ch
+dd 0c8b67ab2h
+dd 08bd9cebeh
+dd 0dcbd268ah
+dd 0b6ea45d8h
+dd 01b892f1ch
+dd 06ab75e09h
+dd 08b7e239fh
+dd 0407d5d52h
+dd 0300ef886h
+dd 00463a951h
+dd 0287d70d9h
+dd 070ce7951h
+dd 093e4f730h
+dd 0d4eaddebh
+dd 021914e14h
+dd 085e7e1d6h
+dd 0c9117e37h
+dd 06fb4157ah
+dd 0e042d93ch
+dd 0824efb71h
+dd 0d802455fh
+dd 0288a2f5bh
+dd 085ea9283h
+dd 0174c042eh
+dd 088b66a29h
+dd 0eb809dbch
+dd 0466df992h
+dd 0f8416eaeh
+dd 0012747eah
+dd 093fd65b5h
+dd 000341b51h
+dd 00746f601h
+dd 046f1766ah
+dd 092891ed4h
+dd 0c942f774h
+dd 0451f081ah
+dd 0ed02af27h
+dd 0e1253e99h
+dd 01424dffah
+dd 095e1e07eh
+dd 0894febb1h
+dd 051155526h
+dd 09de9554ah
+dd 0201bbb13h
+dd 01b18f893h
+dd 0d57e693fh
+dd 0f9a07d03h
+dd 0d41253d5h
+dd 04d6fda7bh
+dd 07c360840h
+dd 0b1d42f1ah
+dd 04a48a2fch
+dd 0fa55320eh
+dd 0e0a312b6h
+dd 0d857a96dh
+dd 00728d730h
+dd 06365403ch
+dd 0518ae477h
+dd 0f4515abfh
+dd 05b3b0605h
+dd 02fc41daah
+dd 0adc67e76h
+dd 0b30dc8d1h
+dd 06000bbc7h
+dd 0657e4f8dh
+dd 0997a7916h
+dd 03b7bc9c8h
+dd 000497810h
+dd 06b35e42fh
+dd 0b31d270ah
+dd 0e84e1362h
+dd 02980a4d7h
+dd 0bf5e9c56h
+dd 09835e63ah
+dd 04f412399h
+dd 00ca168b1h
+dd 0a0a20453h
+dd 0f71ca00bh
+dd 07828f436h
+dd 09e9233cch
+dd 0a642264ah
+dd 0ee6b0a15h
+dd 029d9b2c0h
+dd 0456f1935h
+dd 061e564cfh
+dd 0cbb97da9h
+dd 0b13f3139h
+dd 0f5cf91f0h
+dd 0d32de8f1h
+dd 01654c8deh
+dd 036c6826ah
+dd 06ea1bb65h
+dd 0613d2cf8h
+dd 0eeb9b5ffh
+dd 0320bcd80h
+dd 047124374h
+dd 0d09e399fh
+dd 07d7f045fh
+dd 0579bee8dh
+dd 0ab634b7dh
+dd 0f45e2b4bh
+dd 01274f8d8h
+dd 03fb9f224h
+dd 0d61d64b0h
+dd 04a34f66dh
+dd 0423f1d0eh
+dd 0a26b9d27h
+dd 05ef740d9h
+dd 0397dbe06h
+dd 038287dcfh
+dd 09060fc6bh
+dd 05f9214f0h
+dd 01fc201aeh
+dd 0db0c3338h
+dd 0d63461cbh
+dd 0c36dc4f0h
+dd 07727c41ah
+dd 0d4b2413bh
+dd 03f3a261fh
+dd 02529cf13h
+dd 08c6e263ah
+dd 056cab9f2h
+dd 0288a71a2h
+dd 053c48bebh
+dd 0669ba833h
+dd 0ccb459a8h
+dd 044e93d27h
+dd 06e010557h
+dd 04dc7afe0h
+dd 0ac48a5afh
+dd 09b1577c6h
+dd 0c8b4f7f9h
+dd 04cdec216h
+dd 0a2eb554bh
+dd 0a4b80064h
+dd 0e8d5be55h
+dd 01b571107h
+dd 08b20925ch
+dd 0d73ba1dfh
+dd 0c5126192h
+dd 0afe97b1ah
+dd 08cc3244dh
+dd 01da29263h
+dd 0e9ed6252h
+dd 043647fd2h
+dd 0a26cb79ch
+dd 0a8cd9b1ah
+dd 0e1f1cf44h
+dd 092690e58h
+dd 04b434e5eh
+dd 0d512f000h
+dd 076db04a4h
+dd 0bcab495dh
+dd 0420cbe13h
+dd 01fdb4c62h
+dd 068fc4255h
+dd 0dd51adaah
+dd 0154125f3h
+dd 0dba74677h
+dd 05af3c8eah
+dd 0b79c433bh
+dd 09f3dafc0h
+dd 06e4769c0h
+dd 019bb3cceh
+dd 070088743h
+dd 0d38bba9bh
+dd 04878dcfah
+dd 066f08055h
+dd 021be6ac8h
+dd 0d13f8923h
+dd 0c18e0adeh
+dd 0bf35fae5h
+dd 0d2fbc10ah
+dd 060ffa511h
+dd 039615fc4h
+dd 0bf7e6a33h
+dd 06e69deb8h
+dd 0c9ccffcfh
+dd 0266a4dd5h
+dd 0553f1eeeh
+dd 01d5ac5a4h
+dd 0dd5a6d19h
+dd 062b54800h
+dd 0fe9a550fh
+dd 00c7107ech
+dd 03adc7158h
+dd 076e9b646h
+dd 0d193e3d2h
+dd 01d450e27h
+dd 05684ef93h
+dd 05f359dach
+dd 00787dd3fh
+dd 0468c5f15h
+dd 00f5b065ch
+dd 000d728b3h
+dd 0f4543679h
+dd 01ad2223ch
+dd 0e3aede4ah
+dd 089b36444h
+dd 036d1f867h
+dd 0a727c000h
+dd 09950d802h
+dd 03e99a752h
+dd 07b783ce3h
+dd 065191599h
+dd 0d65b8ddch
+dd 03ea724ceh
+dd 0f8bf6048h
+dd 0c3a8622eh
+dd 04d665ee0h
+dd 0398aa805h
+dd 061687dbbh
+dd 0d1261f32h
+dd 046c32641h
+dd 0271457afh
+dd 0950ff5fdh
+dd 0a836a177h
+dd 0971d2e0ch
+dd 003b49031h
+dd 0da95d56bh
+dd 0660aaaaeh
+dd 0864935bfh
+dd 0e9e84443h
+dd 05f00a9c1h
+dd 0f73584f5h
+dd 0d1d26282h
+dd 08d85fb79h
+dd 0cd4c31efh
+dd 0077b57abh
+dd 0ea8c02f7h
+dd 07f5e1b1fh
+dd 0c9cffe16h
+dd 03f871ae9h
+dd 0deadb146h
+dd 0205ca43ah
+dd 0b435a41dh
+dd 0be093e67h
+dd 0e401c53bh
+dd 0b5c8af60h
+dd 0e53bb812h
+dd 004060802h
+dd 06a7667f1h
+dd 0ddba0fe9h
+dd 03029d64ah
+dd 0e7101c3dh
+dd 0ae579e95h
+dd 00b7fe856h
+dd 0825e2aa3h
+dd 0cd2bd047h
+dd 024e34eech
+dd 021c6eb25h
+dd 0ffaf072dh
+dd 025ef6088h
+dd 0b7ed0281h
+dd 0f5c9411fh
+dd 0dbf45994h
+dd 00d97f56dh
+dd 039d2909ah
+dd 0854aa149h
+dd 0402001d2h
+dd 097c5ec10h
+dd 003cc833dh
+dd 0f1ae4f42h
+dd 0cc77000dh
+dd 002cb1521h
+dd 01dcb6997h
+dd 0ddb9d6d6h
+dd 01b68e5a6h
+dd 0a4824d86h
+dd 0e0de9055h
+dd 0ce85092bh
+dd 0a3cc7416h
+dd 01bc329dch
+dd 03d46b6eah
+dd 04877d47ch
+dd 0f9e0d68ch
+dd 0fa05c951h
+dd 0fc964aa5h
+dd 07b02a955h
+dd 06c58885dh
+dd 02856e6e6h
+dd 00f53b395h
+dd 03b9fa145h
+dd 098601ab6h
+dd 0c5b4352bh
+dd 0618d8bd3h
+dd 0031f039fh
+dd 0144781b1h
+dd 0a0268767h
+dd 06acc0e0fh
+dd 053b96ab0h
+dd 050692c99h
+dd 0e050f539h
+dd 094f47e96h
+dd 01785078bh
+dd 0db4d525fh
+dd 0860917ffh
+dd 01bd25854h
+dd 0befc959fh
+dd 06f14aacbh
+dd 076a2606eh
+dd 0dcee7a89h
+dd 077be5f4eh
+dd 0e2f3ca61h
+dd 0865cc58ch
+dd 0bed0c080h
+dd 0a4ed062eh
+dd 08d62ab38h
+dd 025600c42h
+dd 00801f5d0h
+dd 0099d4d8ah
+dd 0063ffe25h
+dd 05c0aa303h
+dd 032325813h
+dd 04482465ch
+dd 0b62cc6f4h
+dd 0a79d8435h
+dd 05729e8efh
+dd 041a7c6cah
+dd 09434227fh
+dd 0808b820bh
+dd 00a9016e2h
+dd 035979adfh
+dd 09ec970a9h
+dd 084571f45h
+dd 081edb846h
+dd 0e4e9805dh
+dd 0b21177f7h
+dd 035e2a1e3h
+dd 01edcecdah
+dd 0a874d2feh
+dd 0bbf383d6h
+dd 07ed16a8fh
+dd 07fb0bd4ah
+dd 06521111bh
+dd 0163d4181h
+dd 046390a55h
+dd 08265b5f0h
+dd 0ae384b7eh
+dd 016b2f928h
+dd 07cd558cch
+dd 04d92b875h
+dd 0912e55f3h
+dd 0b038ac1ch
+dd 0cbf54db2h
+dd 081c9bad6h
+dd 0410ed586h
+dd 092055f61h
+dd 0128af63dh
+dd 0cfa7ab01h
+dd 0d9b2cd3eh
+dd 0b603c01eh
+dd 0ed281399h
+dd 0ed1bb858h
+dd 0c2e9a2fah
+dd 0093fe560h
+dd 030f3be39h
+dd 0539574d8h
+dd 0bb2837bbh
+dd 061926a10h
+dd 0391682e7h
+dd 02f290abfh
+dd 025187cfch
+dd 0b27b2bb0h
+dd 0eed17566h
+dd 028e4ab34h
+dd 0f809d3d9h
+dd 098e72a8dh
+dd 0e68edd55h
+dd 0f0c072e2h
+dd 0787d27d2h
+dd 045ec0781h
+dd 04ca85379h
+dd 001cea4f6h
+dd 011570c9dh
+dd 06b23f0cah
+dd 035ef95ebh
+dd 07d9abfc8h
+dd 0ee7221e4h
+dd 0f161808bh
+dd 0d6d8343ch
+dd 0f96727beh
+dd 0715697bdh
+dd 0c254bb78h
+dd 09836cbfbh
+dd 005dfbc2fh
+dd 0599f5cf8h
+dd 082205074h
+dd 0e0e2f8fch
+dd 0a0695e9bh
+dd 0f7e2fe67h
+dd 0161d47ebh
+dd 06cc372c2h
+dd 0f58ffa1ah
+dd 0d92e6b0eh
+dd 054c4b558h
+dd 00754eb5ah
+dd 0ad545e92h
+dd 0f63ffa83h
+dd 0831958c4h
+dd 0fdae7430h
+dd 0d64bc760h
+dd 02bbbf911h
+dd 08a8733feh
+dd 021431478h
+dd 06753263ch
+dd 05fa3b8e3h
+dd 09fe66561h
+dd 0d08fe5fah
+dd 086bed2aeh
+dd 0f7d29fa2h
+dd 0ece43756h
+dd 0c8e9386eh
+dd 0ef9f9d59h
+dd 03bd53516h
+dd 0e08ed74eh
+dd 014f264e2h
+dd 0aa816efdh
+dd 0821702ach
+dd 06c80a17ah
+dd 055968653h
+dd 07d7fbf59h
+dd 08cf52cf4h
+dd 005c66281h
+dd 0a9c57610h
+dd 0b9980a6bh
+dd 067b72e89h
+dd 0352c7b75h
+dd 086cfbd3dh
+dd 0c3190e2bh
+dd 0acdf3918h
+dd 081e7c9f4h
+dd 019a2546fh
+dd 0ee9dad8dh
+dd 065a3a999h
+dd 0a5a641ach
+dd 0f35dc012h
+dd 0112ab525h
+dd 054a6a4b8h
+dd 052317ab4h
+dd 07fac16ech
+dd 06770b90eh
+dd 0ddeeb36fh
+dd 03ed095fch
+dd 0860524bdh
+dd 033bd64c5h
+dd 05a05e8b3h
+dd 025ae7eb9h
+dd 0347d7f9ah
+dd 0657d91e9h
+dd 03b9da6f1h
+dd 0a4b620bfh
+dd 08be91a38h
+dd 02e221291h
+dd 00c31c531h
+dd 050286f1fh
+dd 0089c03bah
+dd 09b0c85e9h
+dd 03d13a0d4h
+dd 04d77003fh
+dd 00979b3d4h
+dd 037d5b037h
+dd 0421bab45h
+dd 067e83727h
+dd 0cb107732h
+dd 00db86da7h
+dd 0c6ab1c97h
+dd 0d14b4a4dh
+dd 0d568b26fh
+dd 0bd5b7efch
+dd 05981107bh
+dd 009fcfb66h
+dd 02272f7d6h
+dd 0fbb2e179h
+dd 0b9c14a07h
+dd 03f3ec248h
+dd 0e09d9de9h
+dd 019976b5ah
+dd 03ff9e469h
+dd 0ea97d42fh
+dd 024adc791h
+dd 018cc2b41h
+dd 0ec7b1685h
+dd 056b0e485h
+dd 003048791h
+dd 06511cc72h
+dd 011b11255h
+dd 05ced5df4h
+dd 026193986h
+dd 0b7e798a0h
+dd 0b5eda1a8h
+dd 051a67a15h
+dd 0e78e5fb0h
+dd 0954c3982h
+dd 012affa77h
+dd 014b47797h
+dd 094b72659h
+dd 05a802148h
+dd 05a8e5e22h
+dd 08e42a3ceh
+dd 08c4a7145h
+dd 0b907ba5bh
+dd 02d78bc1eh
+dd 08e96def2h
+dd 0b7729e67h
+dd 040dfe3d9h
+dd 0a2247fa4h
+dd 0489d8d01h
+dd 090705aefh
+dd 0f4efde68h
+dd 07181d28fh
+dd 06811d116h
+dd 0d8f87d9ah
+dd 03111c0a5h
+dd 094226d96h
+dd 02f372a72h
+dd 06e0a5b4ah
+dd 01340b72ch
+dd 0e2bb8236h
+dd 0b9e5ff16h
+dd 0f2d8747bh
+dd 0be66ff05h
+dd 0d82b32d1h
+dd 0a1dffa78h
+dd 06da1b359h
+dd 09be0f496h
+dd 089ec03eeh
+dd 0936ef772h
+dd 0acc18382h
+dd 0aaf9598bh
+dd 0c9fc2d81h
+dd 04fa738e9h
+dd 00f1fb965h
+dd 0297b7926h
+dd 0096e6063h
+dd 0d4519018h
+dd 0255ce233h
+dd 037ca8991h
+dd 0e58a3bb2h
+dd 0321f7f04h
+dd 03dbb80bah
+dd 055f41e99h
+dd 0b4146503h
+dd 0c55abd6ch
+dd 0eb9d8a82h
+dd 0a4d34aa7h
+dd 0c58b1a52h
+dd 06e2e3987h
+dd 01002ff0ah
+dd 0c0ca4904h
+dd 0e0c59150h
+dd 03f7d42eah
+dd 08d935368h
+dd 08271cfaeh
+dd 0fc3196d4h
+dd 096a2d944h
+dd 0ac131c26h
+dd 03bc30d9ah
+dd 0fdbb4e5fh
+dd 078eb38efh
+dd 0403604e2h
+dd 0ae1800b8h
+dd 0a4ac177eh
+dd 0a55c633dh
+dd 0426abd80h
+dd 02b9f8a69h
+dd 0b9b0a275h
+dd 08584b798h
+dd 040d94bcdh
+dd 0f6e13b9fh
+dd 0b864d681h
+dd 06f57fdfah
+dd 049597f63h
+dd 060ceaac2h
+dd 0d0b18e34h
+dd 07722e740h
+dd 058cad177h
+dd 0831a4652h
+dd 0830befefh
+dd 0a51e9277h
+dd 01be6ec17h
+dd 048942a41h
+dd 07eb0ea27h
+dd 0ebee3af2h
+dd 05a050320h
+dd 0309bc008h
+dd 0a1a00164h
+dd 08a304eech
+dd 028c6fa78h
+dd 09812288ch
+dd 06da84067h
+dd 06ce16757h
+dd 0f9af667ah
+dd 01d3864c9h
+dd 0ac30630ch
+dd 0c3d43306h
+dd 0e895515ch
+dd 0ba928c0ch
+dd 0344843d7h
+dd 0ce5e2f45h
+dd 0871fb24dh
+dd 091ff7e73h
+dd 00c844b55h
+dd 0f3dc7356h
+dd 0b6e024f1h
+dd 094f23ad2h
+dd 05ea208c2h
+dd 0006c049fh
+dd 06db4f1abh
+dd 0c94663e3h
+dd 01551d4b3h
+dd 0346ca5f2h
+dd 0695d8767h
+dd 05b93007ch
+dd 03244ee88h
+dd 0adcccdceh
+dd 004cc6ad9h
+dd 0c1bc34edh
+dd 0b6f29ac7h
+dd 04044bfb7h
+dd 0a85086aeh
+dd 0a2a9377bh
+dd 0d19ba671h
+dd 02f0051ebh
+dd 00dd8d19dh
+dd 003a49711h
+dd 0743e1d31h
+dd 0f4c07772h
+dd 0adb0a3e9h
+dd 060eb85b4h
+dd 0d9ea30b5h
+dd 0213c61ddh
+dd 0ae1e672fh
+dd 025129afah
+dd 0441e9e63h
+dd 053101449h
+dd 059deee0ch
+dd 004b415e5h
+dd 0a97de1f2h
+dd 0f0753274h
+dd 0b17d2a72h
+dd 0786f65a7h
+dd 018c8cb7dh
+dd 058eae671h
+dd 0d4f922adh
+dd 0a4f8d5d2h
+dd 00ea7b115h
+dd 019c49209h
+dd 0ded64f82h
+dd 07e3e015eh
+dd 0e285e510h
+dd 06fd44123h
+dd 086a1759dh
+dd 0cfdabcech
+dd 078137b20h
+dd 065678a67h
+dd 0654d91b9h
+dd 0abc88975h
+dd 099645582h
+dd 03015409bh
+dd 0ea052ffbh
+dd 0547cae14h
+dd 0289ba335h
+dd 0c5f9b117h
+dd 01c9e79e9h
+dd 087a89bd0h
+dd 041de90a0h
+dd 007c2297ch
+dd 0b043c344h
+dd 0ff44a292h
+dd 0d8d64573h
+dd 0b8997236h
+dd 0c53f5718h
+dd 0088ae203h
+dd 0d3aaebb7h
+dd 0768d0505h
+dd 0016c309eh
+dd 0b1c28ed1h
+dd 032c086b0h
+dd 05666082eh
+dd 0a4feeabdh
+dd 01a184760h
+dd 032c64c7eh
+dd 022f912c7h
+dd 01ab09de1h
+dd 0a0eca85bh
+dd 0ea989a56h
+dd 0bf26c608h
+dd 0ed09a05ch
+dd 0d34f7c1ah
+dd 0a7297421h
+dd 08f66638dh
+dd 0137bcee4h
+dd 063fd9616h
+dd 05092d878h
+dd 059a2f1a3h
+dd 07b7529deh
+dd 0779678ddh
+dd 00e1eb138h
+dd 0d1fa97adh
+dd 08b02b1c2h
+dd 0936ff25ah
+dd 0b6b27ae0h
+dd 0df5c28eah
+dd 07d7ca727h
+dd 0fd709c51h
+dd 08cceee17h
+dd 04170350ah
+dd 05391bd5eh
+dd 030a97babh
+dd 04052934fh
+dd 0acb6cea6h
+dd 0135689efh
+dd 0718c6667h
+dd 0f51a28f7h
+dd 0e57d5420h
+dd 02a268006h
+dd 075573d9eh
+dd 08b4a6157h
+dd 0c53269a7h
+dd 0c595a63ch
+dd 039fd09a2h
+dd 0b63d08e8h
+dd 0a53c30f8h
+dd 0c915ca4fh
+dd 0f6121112h
+dd 0e81e11c1h
+dd 0865a2e2ah
+dd 00d86271dh
+dd 0da53d6ach
+dd 058b45da9h
+dd 07d957bf6h
+dd 084bae80dh
+dd 05382b071h
+dd 01ad77bb6h
+dd 0ae8e75bbh
+dd 096886fc1h
+dd 0d8ffd017h
+dd 0b3d8c933h
+dd 0f8900134h
+dd 04b2a987eh
+dd 0df60dd76h
+dd 0cfee6ad6h
+dd 0a9a2e63bh
+dd 0871ba836h
+dd 0fcea136bh
+dd 0482be1e5h
+dd 088699ea4h
+dd 0c892f5b8h
+dd 081d03fcah
+dd 005bea0b3h
+dd 0841662aah
+dd 056161cd1h
+dd 022549319h
+dd 080ec6a78h
+dd 028c9bf70h
+dd 04d70c7ffh
+dd 093219761h
+dd 0d776d48ch
+dd 0f35fbcddh
+dd 0e458b4c3h
+dd 074ed41c0h
+dd 05aacbfach
+dd 0d6d65cf0h
+dd 0fd428b2bh
+dd 091102926h
+dd 007fbf393h
+dd 09aae45dfh
+dd 04ddd4d93h
+dd 0d952c861h
+dd 0657ef5f8h
+dd 0a8b1f108h
+dd 02b319be9h
+dd 0745a419ch
+dd 09cb7b507h
+dd 081a7eec2h
+dd 0c043f500h
+dd 03239bddbh
+dd 00e996144h
+dd 0a6eeaf25h
+dd 08eba20aah
+dd 022c5bca0h
+dd 0e64e9dafh
+dd 08e7dda3fh
+dd 003cea44fh
+dd 0706e3f94h
+dd 05b9ee1fah
+dd 01bea4fbfh
+dd 0d0d7b630h
+dd 0c6f4d417h
+dd 0764e7baah
+dd 0d26d5a71h
+dd 0f05afda4h
+dd 04b2fcc1fh
+dd 04cb5de3dh
+dd 0c3413123h
+dd 037042cdeh
+dd 04698d620h
+dd 0c0270230h
+dd 087813d3bh
+dd 0f8fdd6bdh
+dd 092b46e58h
+dd 0a13ebf39h
+dd 08ef7de0ah
+dd 087b769b5h
+dd 07bf3c9d9h
+dd 0aeb6b311h
+dd 0149ebf1eh
+dd 0313deba2h
+dd 0e1ce4dfbh
+dd 0bc923098h
+dd 0fc961b7ah
+dd 0e7699da4h
+dd 09a9a9196h
+dd 02b432670h
+dd 02eaf2aa7h
+dd 0eb8e1550h
+dd 07f0e243eh
+dd 0d5fb00f2h
+dd 0dd277d7fh
+dd 0f7d37568h
+dd 0040aa7a7h
+dd 0d4e6f489h
+dd 05b843413h
+dd 083428569h
+dd 04a5a4061h
+dd 0dc4e48a3h
+dd 091a08766h
+dd 0306a9428h
+dd 017a0b73ah
+dd 0e9f3c304h
+dd 0552c5fffh
+dd 0e3122b19h
+dd 0e41e5db2h
+dd 051d8a19dh
+dd 0f4d8a98ch
+dd 072a10841h
+dd 04648a998h
+dd 02ec6a0bdh
+dd 03e05ad27h
+dd 003ad286ah
+dd 0adb82de5h
+dd 085d2a4abh
+dd 0b5c1605ch
+dd 0d05a9753h
+dd 0a9fb26c0h
+dd 084358804h
+dd 06b7c82dbh
+dd 0e2d96767h
+dd 085ae1e77h
+dd 0bc5cfc00h
+dd 0313d0e07h
+dd 088a9e493h
+dd 045326de7h
+dd 03293f86eh
+dd 0e4a1eb29h
+dd 063f19f3eh
+dd 020cc8e54h
+dd 0f15c2f37h
+dd 07ee7276dh
+dd 05d41484bh
+dd 0f1240879h
+dd 01893b27dh
+dd 0a204c075h
+dd 021b2a72fh
+dd 07c15d907h
+dd 0beb428fdh
+dd 0ddff5b35h
+dd 0b3ddc725h
+dd 05b02bb91h
+dd 0eaf25e6bh
+dd 09ce669d9h
+dd 0f8bce59fh
+dd 08dc526d0h
+dd 08c1e16e1h
+dd 09d6c130bh
+dd 0ad6fb821h
+dd 074bda48eh
+dd 03343fdd4h
+dd 069509d2ch
+dd 089a68a99h
+dd 03a1e16dbh
+dd 0bcf4f8f8h
+dd 0dce0220bh
+dd 0f929fcf3h
+dd 03804f262h
+dd 0ae88d98eh
+dd 06aa787dfh
+dd 075fb7002h
+dd 0c1009511h
+dd 0546c2c0ah
+dd 0673955fah
+dd 044285238h
+dd 0b8346c55h
+dd 0a25ed8a0h
+dd 07b2ca745h
+dd 0f0abcbceh
+dd 0d2a29290h
+dd 0adde2888h
+dd 054b60f6dh
+dd 0322bfc56h
+dd 08b8dbc0ch
+dd 0b38ee203h
+dd 025830ef5h
+dd 0bfe420f3h
+dd 077064aa7h
+dd 09a62e8d6h
+dd 059460ac0h
+dd 03f1ed5bch
+dd 05865f423h
+dd 03d091150h
+dd 0b37dd169h
+dd 04a7feb01h
+dd 0b12b8d1bh
+dd 02194719dh
+dd 0c2504298h
+dd 00d2564a9h
+dd 0e854f9abh
+dd 0ccd0bd91h
+dd 0967a2d07h
+dd 03a066badh
+dd 097140ef5h
+dd 0f1e70cd5h
+dd 088e13f68h
+dd 0e6a77097h
+dd 093af1c3ah
+dd 02d7507f2h
+dd 028dc203bh
+dd 01a7360beh
+dd 049043eafh
+dd 0e84ebeefh
+dd 066ac99e1h
+dd 0a97837d4h
+dd 02508eafah
+dd 0b7afaafeh
+dd 0970f1889h
+dd 08ef1312dh
+dd 0ba44aabdh
+dd 0d7e01066h
+dd 0bd60869dh
+dd 0906f92e9h
+dd 01b6cdcc1h
+dd 0299cd545h
+dd 063bd7be8h
+dd 02387d939h
+dd 0491e1aech
+dd 0a96f44cfh
+dd 0d02010ceh
+dd 0fb4c0591h
+dd 075e7011fh
+dd 0b3f433cah
+dd 09a153914h
+dd 085e512e2h
+dd 0290f9067h
+dd 0dd61df39h
+dd 085d7be7eh
+dd 045569f12h
+dd 0cc3f0ee7h
+dd 06bf1fbc6h
+dd 02fe55a03h
+dd 021925660h
+dd 0655186f6h
+dd 0bea795b8h
+dd 0d66d33b6h
+dd 02cf10bach
+dd 034fef58eh
+dd 073a293dch
+dd 09f7a050eh
+dd 0d95b65a7h
+dd 099032447h
+dd 03de819ceh
+dd 0aeea6e10h
+dd 0ebb4a57fh
+dd 071f25a80h
+dd 0df2117f8h
+dd 023ec2cb5h
+dd 07d99594dh
+dd 083a70308h
+dd 077271379h
+dd 0484f7b46h
+dd 095db2059h
+dd 06f25d7d4h
+dd 00d40cd8bh
+dd 08da2c6cfh
+dd 03bde689bh
+dd 04c59b916h
+dd 099f04a92h
+dd 0618745e0h
+dd 0af633393h
+dd 0015c5ae2h
+dd 024405985h
+dd 0f24b44b6h
+dd 014ad8f3eh
+dd 08c339a66h
+dd 0bbf30069h
+dd 0b1aeec60h
+dd 0918fed41h
+dd 04370b198h
+dd 0f6bba062h
+dd 0819ccc14h
+dd 0ba384de6h
+dd 07bef7c0fh
+dd 0b36c1ec9h
+dd 010f0cbddh
+dd 00ac2212fh
+dd 0d088c164h
+dd 09ce8abdfh
+dd 00cf7b013h
+dd 09b0c320dh
+dd 033e1aecfh
+dd 063404606h
+dd 0ee4b9c87h
+dd 0c842e423h
+dd 0d05a0766h
+dd 0c513f209h
+dd 093dcb051h
+dd 02390f72eh
+dd 0d6bf52dfh
+dd 06c081f89h
+dd 01ac3ab07h
+dd 02850dfddh
+dd 01322b211h
+dd 0e7f0df2ch
+dd 0b4cb9b4ah
+dd 096668e86h
+dd 05176f8e1h
+dd 09854048bh
+dd 041a05f3dh
+dd 058f814f7h
+dd 05866fd8fh
+dd 02da43f19h
+dd 0d1acc949h
+dd 0cea7a530h
+dd 0af885991h
+dd 085159be3h
+dd 099ec24dbh
+dd 0adb43718h
+dd 0d9f7c011h
+dd 0d4805d75h
+dd 00c21c893h
+dd 0b92fbccah
+dd 0800952cfh
+dd 0ce38c384h
+dd 007399629h
+dd 04be2ac4bh
+dd 068dc939fh
+dd 00f8e09c2h
+dd 0f6c8fa8fh
+dd 0aa939450h
+dd 08c347666h
+dd 0d8387836h
+dd 03c996059h
+dd 0b1ff851bh
+dd 095b8361ch
+dd 06e18a21dh
+dd 00649ac32h
+dd 0c527d090h
+dd 0d26b7fe0h
+dd 0e8452bd0h
+dd 0cd3c9678h
+dd 01136c3cah
+dd 0abfde2a8h
+dd 087d9585ch
+dd 08f5fd194h
+dd 00d2e3103h
+dd 05ffb7d33h
+dd 0f09a6d35h
+dd 0e22fcb3dh
+dd 0e328b0b3h
+dd 05b659346h
+dd 0fc62c2deh
+dd 08c6cc859h
+dd 076517388h
+dd 095557927h
+dd 0c8e16131h
+dd 0b9489415h
+dd 072aed7fbh
+dd 0375cf9f0h
+dd 0bd8cd4cch
+dd 01fbe6595h
+dd 0095578fbh
+dd 09e1e48c2h
+dd 0c1b21714h
+dd 081706508h
+dd 01a07f27dh
+dd 0d0b44a12h
+dd 0e42f5770h
+dd 03af99156h
+dd 0dad0bbb4h
+dd 0ab257b21h
+dd 070baa12dh
+dd 0bd489d02h
+dd 0b3fa6609h
+dd 0086d9970h
+dd 0cdbe238bh
+dd 0beb6c774h
+dd 029fcd0dch
+dd 03c3a836ch
+dd 0c6f721bdh
+dd 03405e8a2h
+dd 01cba47d0h
+dd 04e6ff186h
+dd 07b2a3ffbh
+dd 027c0da5fh
+dd 0868f1633h
+dd 0cf503981h
+dd 0d64297b9h
+dd 080c88936h
+dd 057913976h
+dd 06cf08921h
+dd 0080deb54h
+dd 0eb00d01eh
+dd 0e75114abh
+dd 018476ab5h
+dd 0496c8203h
+dd 0e2dc3f32h
+dd 0ebda71e3h
+dd 0ddf11d5bh
+dd 0da513515h
+dd 01bc3c554h
+dd 00475e813h
+dd 0fbb8edaah
+dd 053fb898ah
+dd 02b166a97h
+dd 00d104250h
+dd 00996f6c8h
+dd 0cba48ffeh
+dd 09fe78529h
+dd 01a337b7ah
+dd 0bd27b274h
+dd 06a38c23dh
+dd 0680d0b0eh
+dd 06d5ea0d2h
+dd 01ff7c1feh
+dd 0b2251278h
+dd 0f972ce34h
+dd 078186f09h
+dd 08fda5eb3h
+dd 08b7ddec2h
+dd 04ed98b0fh
+dd 0bd5d4ebeh
+dd 08a022d7dh
+dd 004afc8f2h
+dd 0c6010d21h
+dd 06652a505h
+dd 0f206a2a8h
+dd 0de4391b6h
+dd 0d8021327h
+dd 0e00a92adh
+dd 05fea8f59h
+dd 05815280bh
+dd 045e88acdh
+dd 0b1077f67h
+dd 0fc1ece40h
+dd 0bf0d4e72h
+dd 009842132h
+dd 08a642ea0h
+dd 07b9ed839h
+dd 0cda27140h
+dd 0fc088e49h
+dd 05c49fb2fh
+dd 0d0094588h
+dd 01436b264h
+dd 0e950ac9ah
+dd 05cc41423h
+dd 011dd58fch
+dd 0ef8aa95fh
+dd 0909fc6dbh
+dd 02d7c248fh
+dd 0073b323eh
+dd 064e5df99h
+dd 0cb0762cah
+dd 0b12db387h
+dd 040102eb9h
+dd 01034d6bfh
+dd 03244398fh
+dd 00d6e179eh
+dd 0f3c3a776h
+dd 0ec696047h
+dd 03d5b752bh
+dd 095735b46h
+dd 0bc0d1d2eh
+dd 00c02278ch
+dd 09a875d36h
+dd 0d98d9332h
+dd 0a30a6872h
+dd 05cef06dfh
+dd 0353dac18h
+dd 030034e98h
+dd 0d60d828ah
+dd 000655734h
+dd 0a64fb4f1h
+dd 00d95d045h
+dd 051cd5ac8h
+dd 09441e0afh
+dd 0c37d5187h
+dd 06cf0a69ah
+dd 007d7eafdh
+dd 0090769bch
+dd 0a2f43e45h
+dd 0559dff48h
+dd 050755ce6h
+dd 044a518f9h
+dd 0ae9819a5h
+dd 04c5fbadah
+dd 0f76d9120h
+dd 0df8af592h
+dd 05208ab34h
+dd 0180bcaf5h
+dd 0d550b780h
+dd 0bebac875h
+dd 065c2655bh
+dd 0cf35cd55h
+dd 0b228e769h
+dd 02add77cbh
+dd 0b8da443ch
+dd 094541c7ch
+dd 021d1c5efh
+dd 04982ad4ah
+dd 0021f3ac9h
+dd 0bf26b5f0h
+dd 025454677h
+dd 08b202ec2h
+dd 010a94e4eh
+dd 0738d5d36h
+dd 09fa9717dh
+dd 0b56ac768h
+dd 04b2d4fb5h
+dd 0cf12494bh
+dd 018e4dc5ah
+dd 0af23f746h
+dd 06c8bd0a7h
+dd 0e7da71b3h
+dd 0daf81b9dh
+dd 01776d568h
+dd 0f37081dbh
+dd 0d0b93717h
+dd 0328bf8cch
+dd 00079a817h
+dd 0ea0f96aah
+dd 0b7a5aa48h
+dd 07e4c9327h
+dd 0d978adc0h
+dd 082401945h
+dd 0fcc21bd7h
+dd 0c406d252h
+dd 0b31467e5h
+dd 08187499fh
+dd 0d1b3e502h
+dd 0b5b3b068h
+dd 08c5f708bh
+dd 09fd63072h
+dd 08a128212h
+dd 06bcde058h
+dd 0458379c3h
+dd 0cb0d7e5fh
+dd 047081d12h
+dd 09db03435h
+dd 029998d98h
+dd 0b8899e91h
+dd 011848ee7h
+dd 0cbd3e62eh
+dd 0bebbfbf9h
+dd 04d409301h
+dd 0c799a3a1h
+dd 0a32585ech
+dd 0b0869b0ch
+dd 02c45bf94h
+dd 07adf162bh
+dd 0dbd0cb07h
+dd 0367a155ah
+dd 02aad3860h
+dd 0fee63e1dh
+dd 0f93aec5ah
+dd 04d07f860h
+dd 07f2b7633h
+dd 07038d1e0h
+dd 09bff5ad6h
+dd 075350cf1h
+dd 042ec83a6h
+dd 06d5165eah
+dd 08a31dda2h
+dd 0741839d7h
+dd 04070c3f1h
+dd 094987929h
+dd 02d440c2dh
+dd 0b8a3c83fh
+dd 01c7d63b9h
+dd 09b53e58eh
+dd 0082c0202h
+dd 0a380585eh
+dd 09c685302h
+dd 0fafa72a6h
+dd 093d6e6f9h
+dd 0e9e02bc6h
+dd 02c47569eh
+dd 0c38b0f48h
+dd 002eb8596h
+dd 0b19ea1e4h
+dd 0cecb4e21h
+dd 09aa1de47h
+dd 0a95da83fh
+dd 0d20cda22h
+dd 04fdb3acah
+dd 05092c91ch
+dd 027815507h
+dd 0da3a661eh
+dd 0ea29e25dh
+dd 0bdbab28bh
+dd 0036e3ec2h
+dd 01aa1cd7ch
+dd 08f611864h
+dd 0cbb7aa3ch
+dd 00ef7e122h
+dd 0f57b5bb5h
+dd 0a999c6d3h
+dd 0a75ca92dh
+dd 0d394bc8eh
+dd 0263e4777h
+dd 07c3dbe79h
+dd 0197a6607h
+dd 040e6056dh
+dd 085e3b9efh
+dd 041902656h
+dd 0edd3b749h
+dd 005c4d992h
+dd 00f179393h
+dd 0c169101ah
+dd 020e6c049h
+dd 04f01ada0h
+dd 08a6602c4h
+dd 064f74709h
+dd 04647cce6h
+dd 0224022feh
+dd 057f817edh
+dd 0ba7ddd70h
+dd 03ac74713h
+dd 02e9bd618h
+dd 04194795ch
+dd 0f3734bech
+dd 0beab97fch
+dd 0b7f2f3bbh
+dd 01cd43086h
+dd 0267524beh
+dd 0059d0deeh
+dd 0351b832bh
+dd 04ada4106h
+dd 005e06c52h
+dd 0a31406dbh
+dd 0544451b8h
+dd 0cfef50e5h
+dd 04b1f9750h
+dd 07b7ba67fh
+dd 05c614b83h
+dd 0d2d0209bh
+dd 04df6fd4bh
+dd 08b494616h
+dd 04d55cc33h
+dd 0d09ae83dh
+dd 01e4b3e61h
+dd 066af92a5h
+dd 0b42c114eh
+dd 0b79fe657h
+dd 0fe3ba8fdh
+dd 04dc4f5c8h
+dd 0e3bd76ebh
+dd 0688583eeh
+dd 0499e1bebh
+dd 092386bfbh
+dd 025638678h
+dd 0d27f6812h
+dd 0af0c2ff6h
+dd 0d4ef525bh
+dd 080b21e4dh
+dd 0fc98ac89h
+dd 01e2ca365h
+dd 0531efcd5h
+dd 0ec5c17c2h
+dd 0d33d1bfeh
+dd 0f5eb1058h
+dd 013c50cb6h
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130678806.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130678806.inc
new file mode 100644
index 0000000..e5c50e8
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130678806.inc
@@ -0,0 +1,12800 @@
+dd 000000001h ; Header Version
+dd 000000806h ; Patch ID
+dd 011262013h ; DATE
+dd 000030678h ; CPUID
+dd 014d372a6h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000c7d0h ; Data size
+dd 00000c800h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000806h
+dd 000000000h
+dd 000000000h
+dd 020131125h
+dd 0000031f1h
+dd 000000001h
+dd 000030678h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000031f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 06fbddad0h
+dd 097b60ec8h
+dd 08252afd4h
+dd 0e61f6d91h
+dd 03542ee8ch
+dd 084b597b4h
+dd 0ec4d4fd9h
+dd 0ffb27814h
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 060645febh
+dd 01ffee1f9h
+dd 00a21ab72h
+dd 0d3ee4551h
+dd 0a842647ah
+dd 0da703d41h
+dd 0c09db538h
+dd 054443633h
+dd 00079362eh
+dd 018c35b48h
+dd 027f0100ah
+dd 0e629b421h
+dd 027258ddah
+dd 0a95d2e47h
+dd 02868b622h
+dd 09eaed6f4h
+dd 0fb51d446h
+dd 00a5547bfh
+dd 090f85256h
+dd 09f6b525bh
+dd 0ac62ec50h
+dd 0627c86ffh
+dd 0be0815a5h
+dd 001df99d4h
+dd 03184d9e8h
+dd 0e3039c8ch
+dd 085f7a6c8h
+dd 067f110fdh
+dd 0f2fd9d81h
+dd 0ab7b3bb0h
+dd 01a6e554ah
+dd 0563f13ebh
+dd 0cfaf6911h
+dd 0421cb07bh
+dd 0e431acc3h
+dd 09599030fh
+dd 0f7dd2410h
+dd 0165b6eceh
+dd 01b3c1d57h
+dd 0fca8f45ch
+dd 02cdc850ah
+dd 07f43bf16h
+dd 0475bf40dh
+dd 02a5dc508h
+dd 00fc75ddeh
+dd 0597fd3cfh
+dd 0e03cfbddh
+dd 024ce56feh
+dd 0c072278fh
+dd 080dee58ch
+dd 0ea01969bh
+dd 01adf77b6h
+dd 0ddc31a66h
+dd 00c01ae9ah
+dd 000153551h
+dd 061f687bbh
+dd 0262dd297h
+dd 0fcdb49e6h
+dd 0aa02d465h
+dd 00b3b3febh
+dd 064fcc5d2h
+dd 04985f57fh
+dd 0a1fd2e9ch
+dd 07273a596h
+dd 025073a02h
+dd 08f51a6deh
+dd 051cbe0c8h
+dd 01d2909fah
+dd 022dd31afh
+dd 0951049fah
+dd 0f3eb3c6dh
+dd 025ba0ccah
+dd 079f1dfa3h
+dd 028ac0c22h
+dd 09d9a5861h
+dd 0da816e5ch
+dd 0b01eeb09h
+dd 067267d24h
+dd 0cd011000h
+dd 0d97381b9h
+dd 04619e6fbh
+dd 02d128f6ah
+dd 03c337500h
+dd 0ee36d015h
+dd 0043418c8h
+dd 0e17e9105h
+dd 0382a6d5fh
+dd 028c9910eh
+dd 084500f2dh
+dd 01bcb7bf2h
+dd 0c665b9ech
+dd 036ee8d54h
+dd 0fe7b4281h
+dd 0f7f72cc9h
+dd 084b4c103h
+dd 00d2058e5h
+dd 0311c43beh
+dd 0d65f4a12h
+dd 0e15a30ach
+dd 059de1115h
+dd 08776bd64h
+dd 0526c65beh
+dd 0b81bc7d0h
+dd 0b07bcf82h
+dd 08c46be72h
+dd 0baafd289h
+dd 0eea32c0fh
+dd 0be6cf0a7h
+dd 0a5408ba4h
+dd 099553266h
+dd 0dbb1793dh
+dd 07122b692h
+dd 0e4ca943fh
+dd 07cbcb1a7h
+dd 091356937h
+dd 0639071e8h
+dd 03b471c53h
+dd 0f4d203bch
+dd 092a4b37eh
+dd 08a17dd59h
+dd 01ee0119fh
+dd 012564562h
+dd 076f71eb2h
+dd 00be2a9d2h
+dd 0eb7f334ch
+dd 0cf5aaddfh
+dd 03809df7bh
+dd 0cc631c13h
+dd 0bc492d5dh
+dd 0dc530396h
+dd 083a338bah
+dd 01f851a37h
+dd 038399297h
+dd 0b207617fh
+dd 0dce032ddh
+dd 0e26e263bh
+dd 0d26d3bc2h
+dd 03b3fd4d5h
+dd 01bbf0808h
+dd 0533e9587h
+dd 03bfb23efh
+dd 077b98bbdh
+dd 0462f21f9h
+dd 0d703227ch
+dd 0d483c101h
+dd 042f8c03eh
+dd 0deadce64h
+dd 095a18240h
+dd 09838570fh
+dd 05e23160eh
+dd 0f314656fh
+dd 0b4673b36h
+dd 0a2c96eb4h
+dd 09b9b4b46h
+dd 0488ea5ceh
+dd 09ee2df56h
+dd 03a12d3adh
+dd 0778cb2b9h
+dd 091defb53h
+dd 0e52c98d6h
+dd 0cce15191h
+dd 056bb1e6dh
+dd 00bd55e7ch
+dd 07cb9cfach
+dd 05c60faa7h
+dd 0afdd0058h
+dd 0b8ecfc50h
+dd 06d57d708h
+dd 08ed47620h
+dd 0a14c2fefh
+dd 07dc40e6ah
+dd 0339f18a9h
+dd 074598e5bh
+dd 0d6653ce5h
+dd 055e8b4c2h
+dd 0527d4c39h
+dd 099802f39h
+dd 092e28f57h
+dd 092cf27b3h
+dd 027d74162h
+dd 02b5d41bah
+dd 07b792bbeh
+dd 0f44caffdh
+dd 0ded543fah
+dd 08a86ffaeh
+dd 0fd5a80efh
+dd 08226a131h
+dd 0552df4ebh
+dd 0ad97ef85h
+dd 0d2f5db1bh
+dd 08fbc0944h
+dd 08f90c9b4h
+dd 078c2b95ch
+dd 097cdcca5h
+dd 08436c209h
+dd 0b28a3e5ah
+dd 06df895ach
+dd 06ccfb633h
+dd 03c9e0dd2h
+dd 015360e69h
+dd 0c8d8707eh
+dd 0b4be6ffch
+dd 0ee04e2edh
+dd 06057da1eh
+dd 016bac3a4h
+dd 07c86c93ch
+dd 0d1b101ffh
+dd 06705e2f0h
+dd 0b8e4975ch
+dd 0d0ddf64ch
+dd 0f723e500h
+dd 0e4354620h
+dd 06f30d64dh
+dd 08403c25bh
+dd 00cf0aa7dh
+dd 033dd7626h
+dd 0bc86e30ah
+dd 0ed644a2fh
+dd 02c659757h
+dd 0f09665c9h
+dd 097b10624h
+dd 01c2b862eh
+dd 029e48039h
+dd 0b9edf104h
+dd 08eda9381h
+dd 02f3bfda0h
+dd 05b22b6fbh
+dd 04c49187bh
+dd 0052b174dh
+dd 049658814h
+dd 0baa96bbbh
+dd 09ab7cc73h
+dd 02359306fh
+dd 0d41dc0beh
+dd 09add4409h
+dd 0aa5ba714h
+dd 0c9e0b4a1h
+dd 06715e370h
+dd 0ca09e12dh
+dd 04fd677cch
+dd 0420fb220h
+dd 02c840841h
+dd 0cc9cccb3h
+dd 0b71263c7h
+dd 0106db8cah
+dd 0f2034d9fh
+dd 047fddce7h
+dd 005f1a665h
+dd 06637669dh
+dd 086edb08eh
+dd 09f1ea1e1h
+dd 03c841e26h
+dd 01e01b5b5h
+dd 0e698f005h
+dd 0567ab631h
+dd 06defd9cfh
+dd 0bded983ah
+dd 0d4d3aa76h
+dd 02fa0da6bh
+dd 0fd462121h
+dd 0d5c59880h
+dd 00c7ac655h
+dd 00003bfe5h
+dd 07b82f0eah
+dd 0511a80f6h
+dd 07bdf22e9h
+dd 01a264cb9h
+dd 07cea9884h
+dd 0a57fa918h
+dd 04a9e30c9h
+dd 0359329e1h
+dd 0dbfeba09h
+dd 0aa92c164h
+dd 05c7b1332h
+dd 0b45e7af6h
+dd 0c0498491h
+dd 01d8c0d9fh
+dd 0345c1faah
+dd 082d47489h
+dd 04ac36a21h
+dd 0bbc002dah
+dd 040f3630fh
+dd 0eb4952dah
+dd 0a8e0a27ah
+dd 03812e2e7h
+dd 0b4cb6cd2h
+dd 0f9685315h
+dd 01a3df98fh
+dd 0ae202570h
+dd 02d0d0bd6h
+dd 08f36e21fh
+dd 07c9e670bh
+dd 0217b448eh
+dd 0eff45463h
+dd 03fe60d24h
+dd 0c56e1bc7h
+dd 016fcb27ah
+dd 05c38d70dh
+dd 0e3d922fch
+dd 06d58835fh
+dd 0ea4f5bf3h
+dd 023cab2d7h
+dd 02f740fe1h
+dd 0be8a4cbeh
+dd 092e99824h
+dd 0b36fe4fbh
+dd 0c91a0585h
+dd 0274521c6h
+dd 02a317555h
+dd 0a20e5dd9h
+dd 0f5bc620dh
+dd 08c38dbc2h
+dd 01c04b7b8h
+dd 07be0eb0bh
+dd 05af7e22fh
+dd 02a4c5410h
+dd 0b0a4acbfh
+dd 019a4a806h
+dd 05d6628aah
+dd 0647b8dd8h
+dd 0e527e08fh
+dd 057d6e267h
+dd 0308b5a09h
+dd 098fc3295h
+dd 010164272h
+dd 058a58345h
+dd 0d8815520h
+dd 0fc97a79eh
+dd 0fd81998eh
+dd 0cac87913h
+dd 026d266a4h
+dd 0dbcc3cfbh
+dd 0b8bd804ah
+dd 0c5c42f8dh
+dd 0ea687526h
+dd 0eed4ba4ch
+dd 0749037e9h
+dd 0d878c58dh
+dd 01859fbd0h
+dd 0788e102bh
+dd 04b1520d1h
+dd 04c72375ch
+dd 0fb3b9b84h
+dd 0cb080812h
+dd 0d347e887h
+dd 08069f561h
+dd 07a404d74h
+dd 0ba1544adh
+dd 0a71c35d8h
+dd 0a815b466h
+dd 0f194fc2eh
+dd 0be98cffeh
+dd 00690bb5dh
+dd 02704d4eah
+dd 08c7fc64bh
+dd 0c7e19764h
+dd 0bf1aef96h
+dd 04b93688dh
+dd 0c8a63fc6h
+dd 05f9fc0efh
+dd 0131faed4h
+dd 08ea1eb5ch
+dd 05439096fh
+dd 0baebc248h
+dd 00c2dcb60h
+dd 0c5c19fadh
+dd 02844ae8bh
+dd 0d82196d5h
+dd 0f4a8cc31h
+dd 0d38a121ah
+dd 0f02c67e4h
+dd 07d258c87h
+dd 076ad6233h
+dd 090628338h
+dd 0b5c55000h
+dd 002b35f3dh
+dd 0d5eb33e6h
+dd 09eff4770h
+dd 04d1bd63bh
+dd 0dc0313bfh
+dd 057c608a7h
+dd 07265cfaah
+dd 08c45074fh
+dd 07c14dff4h
+dd 022fb50a0h
+dd 0aa79c31bh
+dd 07364553ah
+dd 0f98f8ccah
+dd 03069a48ah
+dd 05291a8cfh
+dd 0cef82223h
+dd 07c8488b6h
+dd 035acc425h
+dd 06be32eaah
+dd 0519d9d03h
+dd 06eb28283h
+dd 0a6b6d7f5h
+dd 00ba263a0h
+dd 01f4a9931h
+dd 04e671e0bh
+dd 0c83556beh
+dd 0b51ca80fh
+dd 009d1f47bh
+dd 082aaf404h
+dd 0817f6859h
+dd 0b4fe2f22h
+dd 0034a9c5fh
+dd 05188bd68h
+dd 0e509012bh
+dd 0bbf47204h
+dd 047f89125h
+dd 0a5f9ccfah
+dd 0b850955eh
+dd 062f5ded9h
+dd 06251a69dh
+dd 0831a1640h
+dd 0e5f88acdh
+dd 0b74cd12ch
+dd 09c7daff4h
+dd 0a33b0ebah
+dd 07e2895b0h
+dd 0b43fec35h
+dd 0e39b4b1dh
+dd 08d46ecdah
+dd 063ad0ee1h
+dd 0665a2db0h
+dd 09ae2e517h
+dd 0002469cch
+dd 0a8f4bbf7h
+dd 0ecb5c629h
+dd 0503660dah
+dd 0553f92eah
+dd 0a0936ec2h
+dd 0cfdd63a7h
+dd 0d7b12818h
+dd 0b7cc2b68h
+dd 0deea6682h
+dd 0bb8eededh
+dd 0b8df15d6h
+dd 079d0359eh
+dd 07c917bd0h
+dd 03befd44ch
+dd 0400fc45eh
+dd 0710a1a11h
+dd 02ab163e7h
+dd 09938486dh
+dd 0f4f9fb4bh
+dd 02825f0cch
+dd 0bcfc3928h
+dd 0451b592dh
+dd 0267da467h
+dd 00016c489h
+dd 034e1f298h
+dd 004678047h
+dd 06910c868h
+dd 08a5eb252h
+dd 0248c3193h
+dd 00f627de0h
+dd 0ff897c22h
+dd 0df9739a2h
+dd 030919bc0h
+dd 0f611a9bbh
+dd 06a318eb9h
+dd 070be822ah
+dd 0453b1643h
+dd 02de85e73h
+dd 0eb2169bch
+dd 0395017feh
+dd 04d68a51fh
+dd 096b56903h
+dd 0eb15a1ceh
+dd 0a6c03886h
+dd 05077c669h
+dd 02b039794h
+dd 0f0a28e79h
+dd 08e9d9bcfh
+dd 0648cb2dch
+dd 0cd7c4919h
+dd 0018b359fh
+dd 03ab248f4h
+dd 0066c2618h
+dd 0b5792835h
+dd 08cd96edbh
+dd 06a7db9b4h
+dd 07051273bh
+dd 08188e68ch
+dd 01abb13b4h
+dd 03bfef596h
+dd 05af9c1f8h
+dd 065ddb0bah
+dd 08e4ada2eh
+dd 0242158f5h
+dd 0e9eb7178h
+dd 09781d14eh
+dd 03ed46094h
+dd 0ef31cd83h
+dd 080418bfah
+dd 01e324919h
+dd 08455f586h
+dd 092eaf909h
+dd 013232ba5h
+dd 03dd00acdh
+dd 0c8c29d3fh
+dd 0450e15cch
+dd 02f19f626h
+dd 0e2c293cdh
+dd 098f1e8fbh
+dd 037c5d122h
+dd 0ad4aa1c8h
+dd 0ac381b79h
+dd 073ae5b3ch
+dd 0bc8c2838h
+dd 07c896b4dh
+dd 030e10b1ch
+dd 03de17342h
+dd 0a4bf968bh
+dd 024192899h
+dd 05e7fc726h
+dd 059640a8ch
+dd 0d93961a1h
+dd 08d987eceh
+dd 0f67bc244h
+dd 033040203h
+dd 0e8802107h
+dd 08a0c18a5h
+dd 0337549d8h
+dd 043e96edeh
+dd 019d4205ah
+dd 0917eb170h
+dd 0653d24ceh
+dd 0c52e02c2h
+dd 0624b89e3h
+dd 0f730a4e7h
+dd 0180bb3e6h
+dd 0754d08feh
+dd 0f5ed20a1h
+dd 0e4e2c946h
+dd 044f729adh
+dd 08e732d0fh
+dd 0549ec213h
+dd 0dfb59337h
+dd 028fbe1d7h
+dd 0a760d248h
+dd 0e42213a5h
+dd 0b2e3f175h
+dd 0ef45fca7h
+dd 04279e3a3h
+dd 0065bd9bch
+dd 0cf71b829h
+dd 041dd0da2h
+dd 08a9c2a3dh
+dd 010bf115ah
+dd 0f36f83f5h
+dd 0d4726d3eh
+dd 0b4fd032eh
+dd 0091dddc2h
+dd 0eebce195h
+dd 009aeae2fh
+dd 065486f2eh
+dd 070641c6ah
+dd 080a3bda5h
+dd 0f2df69f0h
+dd 00fd8e661h
+dd 054c9a33ah
+dd 0742f03b2h
+dd 0035cd879h
+dd 063e0bce1h
+dd 061127af8h
+dd 03b0dea4fh
+dd 0a4f290f5h
+dd 0cdf0f8d9h
+dd 078e2d394h
+dd 0e8ccef4bh
+dd 02820772ch
+dd 0ec43cf60h
+dd 0896e462bh
+dd 08479a48eh
+dd 0a0e60ca2h
+dd 0a569c67dh
+dd 0ea4cf600h
+dd 0fcb4d230h
+dd 02481c897h
+dd 033605d51h
+dd 08cbe88c6h
+dd 0cfe4295ch
+dd 0e2641bb7h
+dd 034c7eb0dh
+dd 0912541f1h
+dd 04d1261ffh
+dd 03c566a64h
+dd 00c02731fh
+dd 09767db75h
+dd 04847b152h
+dd 015aa4594h
+dd 02a29b7d9h
+dd 0f0506c7ch
+dd 03d2bc6c9h
+dd 0bd874420h
+dd 0757147b6h
+dd 03a18e9efh
+dd 001cc29a0h
+dd 05aec8207h
+dd 008a56907h
+dd 08f9b4b06h
+dd 04fc09786h
+dd 02ce3b6b8h
+dd 04926a640h
+dd 0e097d6f1h
+dd 0f9b17578h
+dd 0aa264717h
+dd 0c4a39b6dh
+dd 0dec81f11h
+dd 0262b87f3h
+dd 091348e12h
+dd 0a3c3dca8h
+dd 0be3055a0h
+dd 08813797eh
+dd 08ce38e44h
+dd 072428f58h
+dd 00c54d809h
+dd 064f7a6e2h
+dd 065aad17fh
+dd 086751b20h
+dd 05fad7c6fh
+dd 05520d15dh
+dd 099d4693ah
+dd 077eeea74h
+dd 070a2b444h
+dd 05e3cd8a3h
+dd 05a7a55fah
+dd 0363fbf81h
+dd 0e89a6146h
+dd 02bbb2d03h
+dd 057893d5fh
+dd 0986a1199h
+dd 0e2810248h
+dd 03be19133h
+dd 06bcd700ch
+dd 0090a7a53h
+dd 0d92874f7h
+dd 0083aba16h
+dd 056afd431h
+dd 03c858a64h
+dd 09b22091eh
+dd 0fcb587a7h
+dd 024c11e59h
+dd 07daac380h
+dd 038d8fc06h
+dd 0d36cf3cch
+dd 0d24b2adfh
+dd 029501efch
+dd 030b5afd9h
+dd 0a4ad1b26h
+dd 0a36986b0h
+dd 0616a40c2h
+dd 05dd81f3ch
+dd 08dc2f634h
+dd 051a24dbch
+dd 06e17ae92h
+dd 0de27486ah
+dd 086d84506h
+dd 059f6446bh
+dd 01bdf1514h
+dd 02e74070fh
+dd 03877e374h
+dd 02cdcfbb3h
+dd 0eedc87b9h
+dd 02686f3e4h
+dd 0343cb338h
+dd 0facf51ceh
+dd 0e49df959h
+dd 00ca6d91bh
+dd 093bc7c7ch
+dd 07b1608bah
+dd 01b80ed50h
+dd 022ecb70dh
+dd 072954274h
+dd 03a4a2408h
+dd 0d7ce43e8h
+dd 0b4f72946h
+dd 076608130h
+dd 0949536bbh
+dd 0d6817091h
+dd 072bc5c84h
+dd 02ce0c9f6h
+dd 054399742h
+dd 076ecfc9bh
+dd 0300a3e94h
+dd 01bb388f4h
+dd 0aad47b39h
+dd 03af56982h
+dd 0c3df758ch
+dd 00f25103eh
+dd 03e0e983ah
+dd 07060a1b8h
+dd 0b9ba7db0h
+dd 0ef64f8c4h
+dd 0d71829e6h
+dd 05336931eh
+dd 0c020e103h
+dd 0d207dc99h
+dd 0fd855d76h
+dd 0761559c4h
+dd 0d6e2d70fh
+dd 042824debh
+dd 066908021h
+dd 0162ac268h
+dd 0e9d87d0ah
+dd 0496bfb77h
+dd 078724239h
+dd 0234b5541h
+dd 048003a0ch
+dd 032207492h
+dd 01cda4805h
+dd 02855fe9fh
+dd 08a2fbc81h
+dd 0a4530ce6h
+dd 0199719a5h
+dd 0448993ddh
+dd 0b7daa2a2h
+dd 0a0a70aabh
+dd 0001d6fe2h
+dd 000674004h
+dd 004bb7364h
+dd 02049e64ch
+dd 0f9120369h
+dd 0621c6cbfh
+dd 053ae2ef7h
+dd 05c323b4fh
+dd 09bf61038h
+dd 0bd642100h
+dd 04f51428fh
+dd 07be23ef8h
+dd 07027ad2eh
+dd 04f169cech
+dd 038f9a613h
+dd 090f7aa76h
+dd 090478d01h
+dd 0e66f8187h
+dd 0f6842b0bh
+dd 03ca1d996h
+dd 02844159fh
+dd 01d0f3e1bh
+dd 06015d208h
+dd 08a5c12cch
+dd 03f861535h
+dd 009b035c0h
+dd 06f0e6ea5h
+dd 072d338ddh
+dd 053829332h
+dd 0a3735e2dh
+dd 0c200fee8h
+dd 038729a11h
+dd 0f843348eh
+dd 05886cbfeh
+dd 0cc355cd8h
+dd 0bfa220c6h
+dd 0ecdea45fh
+dd 0f927ff57h
+dd 06549d9dah
+dd 0c0326c6bh
+dd 01e03eb73h
+dd 0a2bab382h
+dd 00a2dda45h
+dd 0bbe86fc8h
+dd 0e805e81ah
+dd 011f58edbh
+dd 0cc3abe98h
+dd 02e648474h
+dd 00638a5c0h
+dd 02c81ccdah
+dd 098bd27a3h
+dd 0e297099dh
+dd 0edaa3a4fh
+dd 084484270h
+dd 0973a7ebch
+dd 0233cc880h
+dd 078771f15h
+dd 098976ccfh
+dd 024d4902ah
+dd 07e291531h
+dd 078e8e494h
+dd 0631a5902h
+dd 02d05ede7h
+dd 0acbd00cbh
+dd 0343db082h
+dd 0352c2c3fh
+dd 020a6bb78h
+dd 00adf340ch
+dd 0324acd3dh
+dd 0f2d62e6fh
+dd 0c16a86bfh
+dd 04f30c4e7h
+dd 0b751ee7fh
+dd 0c8cfac35h
+dd 080b83f1eh
+dd 019a727e4h
+dd 08c461fd2h
+dd 01e95a743h
+dd 0817e17edh
+dd 01cf95bf1h
+dd 07d34a557h
+dd 015bffdbeh
+dd 0f22bb67fh
+dd 0bbe0eb7dh
+dd 017f53813h
+dd 0b35433cfh
+dd 0e34eb370h
+dd 02c42a5d1h
+dd 04f90a981h
+dd 0f4efc085h
+dd 0cb7e2132h
+dd 096dd6227h
+dd 0d06f4ad0h
+dd 0acff64f1h
+dd 05cb3ae8fh
+dd 0c1dc68eeh
+dd 0bbdfd1ach
+dd 0ad31a4cch
+dd 0e8d39a1ch
+dd 0a55cd5d9h
+dd 030dd7fb9h
+dd 0197731d2h
+dd 0da1dc3fch
+dd 0d68aaa34h
+dd 05f18b2e0h
+dd 0a2c98f75h
+dd 0b27ae707h
+dd 0e6f66269h
+dd 051380f23h
+dd 0328eb658h
+dd 0f061b642h
+dd 0364a9293h
+dd 06f8b6565h
+dd 0b34e6ab3h
+dd 0ba0f6aach
+dd 0ea53f017h
+dd 0b9975768h
+dd 06bb175f9h
+dd 010ec8f94h
+dd 088a31c5ah
+dd 0b9781fd7h
+dd 06bab3b81h
+dd 04a57dcdbh
+dd 063e97ba4h
+dd 02b53ad10h
+dd 0153881b9h
+dd 0e4c1bc5dh
+dd 01c251f45h
+dd 0971bfdc7h
+dd 0e62ad0edh
+dd 09f42969eh
+dd 0fc631bf5h
+dd 0d848a1d6h
+dd 04835f6a7h
+dd 0e07a60beh
+dd 0a4b755e8h
+dd 0834cd767h
+dd 04e75286eh
+dd 0c5be428ah
+dd 07f4e8876h
+dd 0db914ccch
+dd 0f3bd251dh
+dd 0513c5824h
+dd 085c66e22h
+dd 00f0b4046h
+dd 078756b7eh
+dd 0fd6fc5c6h
+dd 00ff93d90h
+dd 0d02037beh
+dd 0f73ca6c7h
+dd 071c78276h
+dd 0c0393f2dh
+dd 0a009d648h
+dd 02bde0291h
+dd 08631d86ah
+dd 0de846842h
+dd 0c3c51b77h
+dd 0d60f36cfh
+dd 053f2de9bh
+dd 00ec05c00h
+dd 0d68024e1h
+dd 06ebbb40eh
+dd 0203a7b82h
+dd 0742be17ch
+dd 048e65125h
+dd 09637cb06h
+dd 0f4af0721h
+dd 0a9fd16dah
+dd 0fdac905eh
+dd 089875497h
+dd 0851abc51h
+dd 0d9db28e3h
+dd 0b6c085d2h
+dd 07b5abe5dh
+dd 080448827h
+dd 09cdc5ff6h
+dd 06805d354h
+dd 02597b0cah
+dd 08a778ef7h
+dd 03b2be728h
+dd 09b81381ch
+dd 0b480a98ch
+dd 08d6cce6eh
+dd 05f481b90h
+dd 0a423922ah
+dd 0ca344226h
+dd 0c985947dh
+dd 0dd35e12dh
+dd 0d61a90eah
+dd 0e4286fc7h
+dd 08fa22422h
+dd 07e112837h
+dd 0f972e31dh
+dd 088704d7bh
+dd 0cfe84d5ch
+dd 0d45c18a4h
+dd 05e0145cah
+dd 074173602h
+dd 033446d21h
+dd 05a97d03eh
+dd 05210e62eh
+dd 05c8ff4a9h
+dd 099977c09h
+dd 05bd42481h
+dd 007870f5dh
+dd 0ac5f11d0h
+dd 078d27855h
+dd 0255aed48h
+dd 0ca2115a6h
+dd 02655bcedh
+dd 04fcf091dh
+dd 0afecb5d7h
+dd 01acdd13fh
+dd 028279c61h
+dd 0fe164faah
+dd 0552b6d57h
+dd 04b2b3ee0h
+dd 039fed963h
+dd 0de45e0b9h
+dd 01564ba92h
+dd 0376a3908h
+dd 0ee99ec84h
+dd 061c36245h
+dd 0fd58e48ch
+dd 01cc55466h
+dd 0eb2d083bh
+dd 027699382h
+dd 0fdb01f0bh
+dd 0e3c882c2h
+dd 0aee01afdh
+dd 031bda803h
+dd 0191fcb6ch
+dd 0a51d7093h
+dd 033eb0192h
+dd 07faf81e9h
+dd 03b665559h
+dd 00441f63eh
+dd 0cc3ba582h
+dd 055ed988eh
+dd 040ab5ed6h
+dd 08b1c3544h
+dd 0b7b9f7cch
+dd 03b580587h
+dd 07caf28e3h
+dd 0cd562ec6h
+dd 0303d40eah
+dd 01af262f1h
+dd 076879103h
+dd 0d1e26ebfh
+dd 0ba951ac4h
+dd 0d17d6664h
+dd 0036ec0ach
+dd 0f150a2efh
+dd 03f3be75dh
+dd 0045df903h
+dd 0dd5c4fa6h
+dd 0807496cah
+dd 04dcb2b93h
+dd 066515945h
+dd 086338d29h
+dd 05db5d46dh
+dd 0c57347cch
+dd 0ac580fd9h
+dd 0d86f9d4fh
+dd 0f4b19d90h
+dd 0083176b9h
+dd 042687d29h
+dd 0e8ff6f29h
+dd 009ca8819h
+dd 0f972c88bh
+dd 0f40bab99h
+dd 0dd59e623h
+dd 0913a6ec7h
+dd 0d9cd321eh
+dd 06fe8af71h
+dd 039a87a05h
+dd 031894241h
+dd 0055f0ee3h
+dd 042d5f426h
+dd 05e8d4387h
+dd 0099bbb43h
+dd 07c4f6ee9h
+dd 0c9c3b8e1h
+dd 07d262cdeh
+dd 0c0ac9950h
+dd 0f3a4aeb6h
+dd 0c55f3511h
+dd 0a91cd97dh
+dd 03a3b1a1fh
+dd 0957565ach
+dd 088d0219eh
+dd 0c0f59beah
+dd 06a37a1aeh
+dd 0eb75cc22h
+dd 0762f73cfh
+dd 03edb98feh
+dd 036d61627h
+dd 00155860fh
+dd 082713e61h
+dd 0df9a10fbh
+dd 065c8858dh
+dd 07c9255b4h
+dd 021d48f00h
+dd 07c34b55eh
+dd 0cba3810fh
+dd 0439e97efh
+dd 0333dcb04h
+dd 0e983c6bfh
+dd 022a28b65h
+dd 018391d72h
+dd 06fd827eeh
+dd 0560add3ch
+dd 0a096360eh
+dd 0a7be4822h
+dd 0aae559b0h
+dd 02e83c6d7h
+dd 00b0a0a9ah
+dd 001ca1ad1h
+dd 071627636h
+dd 035aa8f28h
+dd 0dd925331h
+dd 07fea9810h
+dd 04f5e1894h
+dd 00af624dbh
+dd 0e6377719h
+dd 0f1de01ach
+dd 022078903h
+dd 0684b0f3ah
+dd 0a992ad82h
+dd 0470e0145h
+dd 01f8d2819h
+dd 0c3712ad1h
+dd 0847435eeh
+dd 07ea509b3h
+dd 0c5b76943h
+dd 0588fe4b7h
+dd 0bb2ef234h
+dd 092e6b25bh
+dd 068c1804ch
+dd 0cdb267f6h
+dd 0c26c22b3h
+dd 05507df6eh
+dd 03cbf8a37h
+dd 0ed82e5e9h
+dd 006b3b58eh
+dd 0014274e2h
+dd 09d224a32h
+dd 0572e318eh
+dd 08ccf8962h
+dd 06df6f33fh
+dd 0275134e7h
+dd 0b3c794c3h
+dd 01d36b520h
+dd 022cd1c27h
+dd 04c8cf08fh
+dd 0a8ff4705h
+dd 024be13efh
+dd 0f1bec68ah
+dd 035b0f980h
+dd 0eff72503h
+dd 0206e9d4bh
+dd 0860e4a17h
+dd 019d8a2dah
+dd 0bac31fceh
+dd 03132cae8h
+dd 0526ce9b0h
+dd 001e37f17h
+dd 03bc75c05h
+dd 0c4b46613h
+dd 02748222ch
+dd 01bea30b0h
+dd 01907d3cah
+dd 03787e362h
+dd 0655fecc9h
+dd 02e406416h
+dd 0b486fd30h
+dd 06f870fadh
+dd 03b10bdb6h
+dd 06b77a63ch
+dd 032fdba89h
+dd 079062661h
+dd 03f5611ach
+dd 04d0a8a51h
+dd 090d72d11h
+dd 0ec7fe623h
+dd 08fe02c0ch
+dd 0543ca2b0h
+dd 0c7187c22h
+dd 00739104eh
+dd 014667d2eh
+dd 09a3dc125h
+dd 0b06d1260h
+dd 009fd07a7h
+dd 0db78474bh
+dd 071d366c2h
+dd 07264fe6bh
+dd 0a730ee05h
+dd 0d2642d4ch
+dd 091948802h
+dd 0c9c47aa1h
+dd 0aecb6816h
+dd 0fa9630ffh
+dd 04922bca2h
+dd 0aaf3d578h
+dd 0eea8eaadh
+dd 0aa01a781h
+dd 0d21b8804h
+dd 0eff376aah
+dd 000e32df6h
+dd 08847069ch
+dd 0092f9adfh
+dd 0f338851ah
+dd 0d8a59bf0h
+dd 0737ed096h
+dd 006f1af2fh
+dd 0f733dd73h
+dd 0fbf54a14h
+dd 0b203efadh
+dd 0a28952ech
+dd 0f3871469h
+dd 04cd19e86h
+dd 010e9e05bh
+dd 0a0e5bfd3h
+dd 0da3b5cb1h
+dd 06110d2a5h
+dd 05040c284h
+dd 036645957h
+dd 0921030f4h
+dd 0ceffb555h
+dd 0161b7da5h
+dd 0fc81b6b9h
+dd 0720668e2h
+dd 06dbf45f8h
+dd 0979b537ah
+dd 03f611e9ch
+dd 08ddcd579h
+dd 04255c91fh
+dd 0c96d8564h
+dd 08d022c2bh
+dd 034d11467h
+dd 0097973e5h
+dd 076b2047eh
+dd 05231b316h
+dd 04e965b6fh
+dd 0d6af73fbh
+dd 027240037h
+dd 0f4d91304h
+dd 09a8b75a5h
+dd 0f83554f7h
+dd 0f4af1010h
+dd 09d9405a5h
+dd 05585ceeah
+dd 01a4b98a3h
+dd 023d19358h
+dd 0a524820eh
+dd 0cb093573h
+dd 07a258cedh
+dd 003067957h
+dd 0eccbeab9h
+dd 083443a98h
+dd 0b8bd450dh
+dd 08773f8adh
+dd 0067151f6h
+dd 0182f8cafh
+dd 067d8bfe8h
+dd 0f4327589h
+dd 0d82790c5h
+dd 005bae688h
+dd 06511f23dh
+dd 0871d291bh
+dd 0025ec708h
+dd 00c0afb6dh
+dd 0a1f9ce87h
+dd 034c0072fh
+dd 05628baeah
+dd 0c492992ah
+dd 02cee38b1h
+dd 034a7c77eh
+dd 00c48c9aeh
+dd 059afe189h
+dd 0f99c162fh
+dd 0f3e9038bh
+dd 06098cdfdh
+dd 000e04bfeh
+dd 0b0abef18h
+dd 07d322a31h
+dd 023439068h
+dd 055e6e9d6h
+dd 0a90ef87ch
+dd 053a3e36ch
+dd 0d539e784h
+dd 0e7539dbfh
+dd 04d2ca4dfh
+dd 0c6b3218eh
+dd 02f4e5182h
+dd 037a747fbh
+dd 096f2ccdeh
+dd 039a9da1ah
+dd 0c072db6eh
+dd 021566f00h
+dd 040fd52aah
+dd 0f96ce975h
+dd 02ed83b45h
+dd 0fb59663bh
+dd 0130add48h
+dd 01d8753cah
+dd 0e664062bh
+dd 03039a4e0h
+dd 06169705ch
+dd 0c8dd713dh
+dd 0b0e70121h
+dd 007f08407h
+dd 0d05405efh
+dd 0336f86b5h
+dd 04176ed5ch
+dd 055ddc366h
+dd 0977fa206h
+dd 0fe0ce1aeh
+dd 0f0d58256h
+dd 09ccc333dh
+dd 057365c01h
+dd 07b7a5378h
+dd 0c6b9660dh
+dd 0112e58bbh
+dd 08d2ae632h
+dd 0a9b6dfc5h
+dd 04f030b15h
+dd 0c2295b48h
+dd 083cbe218h
+dd 05933c506h
+dd 0a2037475h
+dd 0badd9d29h
+dd 0320849bfh
+dd 05ab6215bh
+dd 0e53cf0b1h
+dd 035358178h
+dd 0ffbae52ch
+dd 0798bb3bch
+dd 0a6a1db1dh
+dd 0320d6cc4h
+dd 09a169ec3h
+dd 05daf1006h
+dd 0eb39fef5h
+dd 0f205fcd7h
+dd 07d9fc2c8h
+dd 00d23d86ah
+dd 0719499f3h
+dd 09d469c36h
+dd 0d0994e42h
+dd 0c454399eh
+dd 0bf4c97c0h
+dd 073b769f9h
+dd 0e5360dach
+dd 07cce6aa5h
+dd 0fcf8cd9ah
+dd 04d24da55h
+dd 03d6b94fbh
+dd 0c6a33f7fh
+dd 01046140ah
+dd 0b1753c40h
+dd 0cabe4249h
+dd 04b3efc88h
+dd 0bdbc8af2h
+dd 0545b7324h
+dd 03b4f94e2h
+dd 09008fc5ah
+dd 0c475320dh
+dd 04c0f1f6dh
+dd 0398ea8eeh
+dd 0022d6646h
+dd 0b48fe1d5h
+dd 0669ddebfh
+dd 07b635582h
+dd 02f49a23ch
+dd 02b029069h
+dd 0c1aefa9fh
+dd 0cef02421h
+dd 0568bba29h
+dd 06783618eh
+dd 044a568c9h
+dd 08d12277eh
+dd 09fc6f0a4h
+dd 07974027ch
+dd 044cf7ba2h
+dd 022947595h
+dd 049ceac32h
+dd 0a43e09e3h
+dd 089a76358h
+dd 0c3a00a06h
+dd 08ccce149h
+dd 0e12720a9h
+dd 01ba7f0e8h
+dd 0dbedf64eh
+dd 09e085eeeh
+dd 01ca3c42bh
+dd 0ba2df81bh
+dd 08bb25f09h
+dd 088145dc0h
+dd 08868df8dh
+dd 0619988f8h
+dd 022bb8a58h
+dd 0072041b0h
+dd 065a8ac59h
+dd 00644228ah
+dd 01b353367h
+dd 0b895206dh
+dd 075b6036eh
+dd 07f96938bh
+dd 0b4110328h
+dd 024448091h
+dd 05381584ah
+dd 080325959h
+dd 04bb0c5bbh
+dd 044f50f8fh
+dd 0d59ba91ch
+dd 08082e509h
+dd 035df8150h
+dd 0f6e91578h
+dd 065d397d3h
+dd 038213750h
+dd 0aca00b0ah
+dd 022ef272ah
+dd 0ee8f2b72h
+dd 0a8e598c8h
+dd 0f3a83e14h
+dd 074fb44d9h
+dd 03a62c1d0h
+dd 03f2c6735h
+dd 0f8955872h
+dd 0e39cc38dh
+dd 075280c1dh
+dd 035177f33h
+dd 0f644a7dbh
+dd 01c91c4b2h
+dd 0c41e1bb8h
+dd 02f55644fh
+dd 04fa7789fh
+dd 065870461h
+dd 0d8d89019h
+dd 0529fea86h
+dd 0809a341ah
+dd 087500c92h
+dd 07c1700d7h
+dd 0cb6370c7h
+dd 0b45fafebh
+dd 0784e9741h
+dd 0070ca597h
+dd 012a4f27bh
+dd 096d55780h
+dd 061fcd39fh
+dd 0fe432875h
+dd 048213939h
+dd 0fc01b444h
+dd 0f997981eh
+dd 0cff054a3h
+dd 04fafbcb2h
+dd 010cfddd9h
+dd 0d30af5cch
+dd 0305fe122h
+dd 0fd163edah
+dd 0c40559f5h
+dd 0f81f9f50h
+dd 07e6d18bfh
+dd 067e39718h
+dd 013155f1dh
+dd 00ad41098h
+dd 07c3d93c8h
+dd 06c4ea0cbh
+dd 03cdf9616h
+dd 0e08d7ab6h
+dd 0c541c79dh
+dd 01d8df38bh
+dd 030300b7fh
+dd 0302a0b65h
+dd 0a894b94fh
+dd 0a66db78ah
+dd 01c06353ch
+dd 02c0d592fh
+dd 007d8509ch
+dd 005bd358bh
+dd 09d08a589h
+dd 07e580b0bh
+dd 0e3226bffh
+dd 07e99719ah
+dd 0e6ccd469h
+dd 0ad772d58h
+dd 031f57ec7h
+dd 01ef8266ah
+dd 0c3277f85h
+dd 0e87f506ah
+dd 09f1f4e9dh
+dd 0a646c1d0h
+dd 0da246092h
+dd 088664914h
+dd 0da3afa44h
+dd 0b174efa8h
+dd 0fa41e85bh
+dd 04b6cb6edh
+dd 091a85b2ch
+dd 02ec67d3dh
+dd 059c98b3eh
+dd 09711a6a8h
+dd 08e9b4ac3h
+dd 06c933723h
+dd 07ff49d49h
+dd 0dfc3c114h
+dd 08f1a6066h
+dd 062e9f35fh
+dd 0b9f11f4dh
+dd 0e7a5ee7fh
+dd 0a5ba3141h
+dd 0124fae87h
+dd 0a412b57fh
+dd 02d0d5786h
+dd 0380d2b51h
+dd 0c0f33e49h
+dd 0dd056a5dh
+dd 0741ba790h
+dd 086b3005ch
+dd 0d495076ah
+dd 0397bb54eh
+dd 09f7bb7a7h
+dd 05d0de6e5h
+dd 0fba05946h
+dd 0b6e32d40h
+dd 00cd0f2a0h
+dd 070e83432h
+dd 06a37350dh
+dd 0251fcc50h
+dd 0489ce833h
+dd 0286ad3d1h
+dd 0897bf264h
+dd 0980d9bddh
+dd 0ab06c01eh
+dd 089f3da38h
+dd 0e0ddc8feh
+dd 0045c6228h
+dd 0eec7d603h
+dd 0c7d2b00eh
+dd 0fd3349e1h
+dd 0815dfc55h
+dd 0db56fd7eh
+dd 0faf23255h
+dd 0bced1979h
+dd 0edac9e11h
+dd 076ee9b84h
+dd 004b7d37bh
+dd 0cf19ad4fh
+dd 05f83b228h
+dd 0489efe07h
+dd 0687ed0d1h
+dd 03976ac17h
+dd 0fd4c959bh
+dd 0e5599024h
+dd 01c7f713ch
+dd 08e1fc524h
+dd 013c836f1h
+dd 0c4ca06d7h
+dd 0fb58aa79h
+dd 0146e74d7h
+dd 085126649h
+dd 0b45fc37dh
+dd 0937eeaa7h
+dd 0ec2fc8a1h
+dd 084cc789ch
+dd 0e494e51eh
+dd 0e50ea512h
+dd 0bc32b5b5h
+dd 0124167b2h
+dd 0b04b1fb1h
+dd 071e21367h
+dd 088f98608h
+dd 0c935c24eh
+dd 028205410h
+dd 0ae79af98h
+dd 0cf3bdfach
+dd 018f75f15h
+dd 02a88b63fh
+dd 08f8e9e7eh
+dd 091befa78h
+dd 01d526ed5h
+dd 05e987f54h
+dd 03be4c607h
+dd 0d36673bch
+dd 0cf6893d3h
+dd 087df6f93h
+dd 02f417fcdh
+dd 09a97c78ah
+dd 08856bd47h
+dd 00b30941fh
+dd 06e459ba1h
+dd 00a3a05a4h
+dd 04b2717e5h
+dd 09bc6194ch
+dd 06d229bech
+dd 0e5ef2e2ch
+dd 09df4ccabh
+dd 0db70880dh
+dd 0ce179e59h
+dd 02e30a029h
+dd 0011dfed0h
+dd 0587dc96ch
+dd 0e965ef45h
+dd 0797e7916h
+dd 0733e03a2h
+dd 06163a9aah
+dd 0b103e672h
+dd 0146515a7h
+dd 0ff7dec2ch
+dd 01f6a112bh
+dd 0e6f22b99h
+dd 03afbceadh
+dd 0a21d4acbh
+dd 0b1847998h
+dd 08835a084h
+dd 0517f3a7fh
+dd 080cf485eh
+dd 0e2bff2d2h
+dd 0f7c4a892h
+dd 01cf148a9h
+dd 01c3fb593h
+dd 037a166e9h
+dd 054ec3a85h
+dd 00524f6bfh
+dd 03e262cb2h
+dd 04b945ba5h
+dd 0835480e1h
+dd 0c023011ch
+dd 052ffc683h
+dd 0c10b4c6dh
+dd 0a38c7218h
+dd 077d1191ah
+dd 0b433fad5h
+dd 075beeac5h
+dd 082c8352eh
+dd 09ac7f9fah
+dd 08fe47b70h
+dd 0210790e6h
+dd 0676fa74ah
+dd 0c37696fdh
+dd 023e7a558h
+dd 04171b89ah
+dd 096868a5ch
+dd 018faf62bh
+dd 06b086908h
+dd 0cbb08b52h
+dd 041fc3c45h
+dd 0141d3ba2h
+dd 0e88d0932h
+dd 09533ffcah
+dd 0a78159c6h
+dd 022f1fcefh
+dd 0835779e2h
+dd 0c8866352h
+dd 033ac8689h
+dd 0fb0dffbah
+dd 0fe287695h
+dd 0684ee022h
+dd 03c790778h
+dd 03e85c505h
+dd 0484e6013h
+dd 0eb70fdfbh
+dd 0e268fbe0h
+dd 00d98b998h
+dd 0b7c7cf76h
+dd 031ec9bd7h
+dd 0c13e7103h
+dd 0ff40b0eeh
+dd 0765a1e7fh
+dd 0f1f50c4ch
+dd 0ff045998h
+dd 00e27ed0ch
+dd 0297ed3a8h
+dd 05df5a67dh
+dd 0618edc80h
+dd 0d60b974fh
+dd 06fe1fdb2h
+dd 0ad145adch
+dd 04a3b76a2h
+dd 0c9f4b6f4h
+dd 0b3eb3a5ah
+dd 0ede3154bh
+dd 00804c61ah
+dd 0090a245ch
+dd 02c4d3ca0h
+dd 0fa77da24h
+dd 021b088b5h
+dd 0903d979fh
+dd 006abbec3h
+dd 0a165dbc8h
+dd 0cb9f8c22h
+dd 08edc5c50h
+dd 0d24e11cfh
+dd 00de601e1h
+dd 0e4ad2b9fh
+dd 0c30461d2h
+dd 0599057d4h
+dd 0a45d2356h
+dd 082597b7ch
+dd 0bd6d88ddh
+dd 06c607948h
+dd 0f333349eh
+dd 0e559f751h
+dd 074e351d5h
+dd 0fb7a31cah
+dd 01324d22dh
+dd 0905b9be1h
+dd 06c0e0f24h
+dd 00073bdf5h
+dd 039585110h
+dd 04e4c44d7h
+dd 08ad2241dh
+dd 0eb5450c6h
+dd 0b1ff7b37h
+dd 09f90125fh
+dd 0e7303661h
+dd 0090fc5e1h
+dd 0ae4a9a7eh
+dd 08e408d71h
+dd 0117cb559h
+dd 0d4c94295h
+dd 09143f3b5h
+dd 0eaae4aeeh
+dd 01cca3e1bh
+dd 0902707d5h
+dd 0e0854e3fh
+dd 02baac5d1h
+dd 01f99e5eah
+dd 0d9e2dabbh
+dd 0b9a58987h
+dd 0a7e6b8a3h
+dd 00b882e4eh
+dd 0c7ce5337h
+dd 0acfe03cah
+dd 01a755005h
+dd 01dd30cd6h
+dd 046a1834ch
+dd 060b61120h
+dd 00b9a2393h
+dd 0243cd786h
+dd 0afc8e274h
+dd 07d65e027h
+dd 0b9787215h
+dd 0afe1f47ch
+dd 0483112a5h
+dd 056fea453h
+dd 06fcfad25h
+dd 0447e1222h
+dd 04fcac8c6h
+dd 0e2961f7ch
+dd 030b1fe15h
+dd 00e110cd5h
+dd 0c0eaf5e2h
+dd 09610add4h
+dd 0b76bcb9bh
+dd 02afa74a8h
+dd 073d1d4c7h
+dd 022c0401fh
+dd 08cbcfc87h
+dd 0372d3129h
+dd 04f86f5bbh
+dd 0150ff475h
+dd 0c0c8602fh
+dd 0dcfbf4b6h
+dd 006ae023ah
+dd 013211ee9h
+dd 0141c51a2h
+dd 0b6e25bd0h
+dd 0d3bb2187h
+dd 09b93ffc7h
+dd 08c2fa2d5h
+dd 0656bc048h
+dd 0a17b7e99h
+dd 0271625d3h
+dd 0db9481a8h
+dd 0ad8b3ea0h
+dd 019945e11h
+dd 0a72afafah
+dd 0ae3e6483h
+dd 0e236b965h
+dd 085707ab2h
+dd 0bb3e67eah
+dd 02a55ce42h
+dd 03d1570d7h
+dd 0747f98dah
+dd 06fb8303ch
+dd 0b053f4e1h
+dd 0abf937cbh
+dd 0699b55ddh
+dd 0de2f687eh
+dd 09de9ec8ch
+dd 0bae65b40h
+dd 0afe10a60h
+dd 0450ddf24h
+dd 0269dcf25h
+dd 0dcf0c500h
+dd 07a405068h
+dd 0e5c17116h
+dd 06e7236f9h
+dd 0aaea6cd5h
+dd 05deda42ah
+dd 013cd74beh
+dd 0bddca074h
+dd 03f4f4816h
+dd 0dd2458efh
+dd 05be10a30h
+dd 02454a438h
+dd 0947c2ad7h
+dd 03840382ah
+dd 02553f906h
+dd 057d4cbcch
+dd 07c05179fh
+dd 04d0eb65ah
+dd 0e9b8a4d0h
+dd 0ad7a56edh
+dd 00d46e165h
+dd 049063550h
+dd 0501f6750h
+dd 0ef95a1f2h
+dd 044bc3ab0h
+dd 0c31dce63h
+dd 0c3ec5337h
+dd 0bddfd31dh
+dd 034b3a915h
+dd 0cc06961fh
+dd 07bcc476dh
+dd 0fe116df2h
+dd 00ce52647h
+dd 0e997fe1dh
+dd 0a83d6ef7h
+dd 03dc425afh
+dd 03bd3665bh
+dd 00cd0f83fh
+dd 0c6da3eafh
+dd 0a91e0acah
+dd 09573cf88h
+dd 0c4a10b2ch
+dd 0027fdc1eh
+dd 087f0e555h
+dd 04416703bh
+dd 0f53fabc0h
+dd 0304baac4h
+dd 08d711222h
+dd 0599d94b1h
+dd 0f8a277c6h
+dd 0b3bf8b50h
+dd 0b2edd0e4h
+dd 0d6fbb6cdh
+dd 0c868689bh
+dd 09f4d387ah
+dd 0d7ad19c8h
+dd 0736a07b4h
+dd 0dd366594h
+dd 0e49166b2h
+dd 0e1826b65h
+dd 0cf612678h
+dd 0436ff326h
+dd 0c5e11f1ch
+dd 09ba95474h
+dd 0bb66d280h
+dd 038717e22h
+dd 008e0a1e5h
+dd 08b5387f4h
+dd 06c363268h
+dd 013042222h
+dd 0cda5d4edh
+dd 0801d49c1h
+dd 0a3f873fbh
+dd 0456ebf30h
+dd 02ab49746h
+dd 0f6e77c9ah
+dd 000441d17h
+dd 0ed2239bdh
+dd 0b9f952ceh
+dd 01dac55eeh
+dd 05ebf42b8h
+dd 0ff1c26eah
+dd 06406accch
+dd 0d8e11c3bh
+dd 085dd5e81h
+dd 061ce10d9h
+dd 00ba9eddch
+dd 0436ee33eh
+dd 070e9c83dh
+dd 067913642h
+dd 0500df040h
+dd 01c299c79h
+dd 03e386881h
+dd 0e55ab288h
+dd 04f2ff0d5h
+dd 01a86978dh
+dd 048ba0106h
+dd 03a51c521h
+dd 07de1d5d3h
+dd 02471b5bbh
+dd 0a7a26d96h
+dd 0b076ef7bh
+dd 04873cad2h
+dd 0251475f4h
+dd 02bfcd8d2h
+dd 0da2ee11ah
+dd 0932925c3h
+dd 07eca9393h
+dd 02c93e42ch
+dd 06578b5c0h
+dd 023c13832h
+dd 01c91c046h
+dd 0b005c671h
+dd 098073aa8h
+dd 06d45aeaah
+dd 06e6695c1h
+dd 03feafe58h
+dd 0f6b48a14h
+dd 02cf28a63h
+dd 01e8843c6h
+dd 05caa8578h
+dd 09abbd51eh
+dd 0bc2fe123h
+dd 00f538787h
+dd 0f41621beh
+dd 0a737a84dh
+dd 0670c3d1ah
+dd 07e6ab050h
+dd 0c4549a51h
+dd 08c8385aeh
+dd 0faaa93c6h
+dd 09e2044fdh
+dd 0d920f1bfh
+dd 0b61895cah
+dd 0d787d86fh
+dd 0b1cfef9eh
+dd 0ab1d00d6h
+dd 0e0ce4336h
+dd 04477a19ch
+dd 09091ff04h
+dd 0a2491f6fh
+dd 092b1da3ah
+dd 06f49b2dbh
+dd 07014b37fh
+dd 09c2aeebch
+dd 04ae92758h
+dd 0e13208b5h
+dd 03aee037ah
+dd 08e80a014h
+dd 0461620d5h
+dd 0625360bbh
+dd 0126d8ed9h
+dd 053813a3ah
+dd 03fdbf280h
+dd 017d6be9bh
+dd 0696cd7b4h
+dd 0ce7dd951h
+dd 0673834d0h
+dd 0a1e8db62h
+dd 07dc10ae6h
+dd 09b91e5dfh
+dd 09b8927a4h
+dd 08c38cc31h
+dd 0c0ae701ch
+dd 0d7722d74h
+dd 0b75b675fh
+dd 051973491h
+dd 0ca19143bh
+dd 006ced9b5h
+dd 0cb65276eh
+dd 04d5b43b4h
+dd 0a906edd1h
+dd 0ed76a093h
+dd 0876794a1h
+dd 0beee70cdh
+dd 02f93e095h
+dd 0ce15c5a8h
+dd 0a010219dh
+dd 017001a24h
+dd 0904feaf1h
+dd 09aca7653h
+dd 0b913af79h
+dd 01211fd5eh
+dd 0126f5ee0h
+dd 0f92ed52ah
+dd 0558bfb90h
+dd 0d0630794h
+dd 0ecd2fe31h
+dd 0151eb0c6h
+dd 0a270ee5ch
+dd 00550e945h
+dd 0bf0b93cfh
+dd 0cb43bc28h
+dd 024c0dc76h
+dd 0a7ef4576h
+dd 0c8cd4d54h
+dd 06019f5f4h
+dd 065ebb68fh
+dd 049402ab1h
+dd 03824ac0eh
+dd 0ac401c8bh
+dd 09be68147h
+dd 0b4e3af3ah
+dd 0d2af6e56h
+dd 038bfdb5ah
+dd 085be6772h
+dd 0da67692bh
+dd 0119e0c94h
+dd 0923f8e5dh
+dd 06f7f7c37h
+dd 087a6f238h
+dd 0e3d04b22h
+dd 002be4615h
+dd 084691eceh
+dd 0e1fd715eh
+dd 04bf72600h
+dd 0f90a8f1eh
+dd 0aa570d67h
+dd 075d94237h
+dd 028467fe0h
+dd 002c7a325h
+dd 02592a2eeh
+dd 0474bb6a9h
+dd 03916f471h
+dd 0f5c4b8d8h
+dd 0ae926d2bh
+dd 0f94b4b85h
+dd 01b9ec51dh
+dd 0cad150d0h
+dd 0ed58faedh
+dd 0fd59beebh
+dd 0faece252h
+dd 08b238593h
+dd 052ab460eh
+dd 06a0fdb2fh
+dd 09568ff4dh
+dd 0c7934bdah
+dd 00479a114h
+dd 06fdcb394h
+dd 00f5d05d3h
+dd 082c55246h
+dd 0993d1f74h
+dd 05608b0deh
+dd 014c897c4h
+dd 05faf4f7dh
+dd 08a6e8a4ah
+dd 0bdbecbf5h
+dd 09f58bf4fh
+dd 03963a035h
+dd 0ba4c5a57h
+dd 0131dd922h
+dd 0922cae94h
+dd 0d169b6f6h
+dd 091fc6f74h
+dd 03a4b8c1ah
+dd 06fd5456ah
+dd 087d1b576h
+dd 0dc87169ch
+dd 0fd23a988h
+dd 074c4b8e0h
+dd 0c215d0bah
+dd 0992614e4h
+dd 0c1b5da65h
+dd 0d59fbec7h
+dd 0ff4e4e15h
+dd 04b2c51d5h
+dd 0501b737dh
+dd 0ff8b187bh
+dd 0907df4c8h
+dd 0a1dfda90h
+dd 010507d1bh
+dd 0c18f63f5h
+dd 099dafc73h
+dd 008fb00d4h
+dd 0ca1135c2h
+dd 063be7bdah
+dd 0b1f3016dh
+dd 016c79246h
+dd 09a7d0d86h
+dd 080b6069dh
+dd 00f0a848ah
+dd 068615cfch
+dd 01fc91942h
+dd 01233f8f2h
+dd 04994bb08h
+dd 0c7895a0ch
+dd 00e27fc32h
+dd 0752656bfh
+dd 0e89897eah
+dd 07586f63ah
+dd 0f3d1e5d8h
+dd 00cc36de6h
+dd 0773b9864h
+dd 0195d2381h
+dd 01926038eh
+dd 0c12fd0f4h
+dd 00be571b1h
+dd 0b2aded34h
+dd 094ac6c52h
+dd 0df7dc8cbh
+dd 00b520each
+dd 0bfac2ae4h
+dd 06b179e94h
+dd 0525424d0h
+dd 0c7132381h
+dd 0aa4edba1h
+dd 06f5c009ch
+dd 0ac7a0a01h
+dd 0d5a9e87ah
+dd 0807d4597h
+dd 0d31e4989h
+dd 0e6da2d32h
+dd 0c034780dh
+dd 061bd96deh
+dd 03fe08373h
+dd 0d23f857ch
+dd 0428aca95h
+dd 036f518ech
+dd 00a046265h
+dd 0fad10f8eh
+dd 0daf812fdh
+dd 0667872ddh
+dd 0e3fd2d06h
+dd 07871f2d0h
+dd 08b4ea3fah
+dd 0f08b133dh
+dd 0b476f20bh
+dd 051455c3eh
+dd 014b44323h
+dd 0dcd00102h
+dd 08af31fe4h
+dd 03ee96729h
+dd 014395892h
+dd 049a32cfch
+dd 0ddbe40e7h
+dd 054e854b6h
+dd 0dcdf9310h
+dd 0ae879ef4h
+dd 0396095bfh
+dd 05c02262bh
+dd 03ddf5bc9h
+dd 066f8b479h
+dd 0d3ddea42h
+dd 07e748b8ch
+dd 0fe14a25bh
+dd 06bd4f8c9h
+dd 0ced0d556h
+dd 0b9c25bbdh
+dd 00d9cf381h
+dd 0f82a799dh
+dd 09f12d53dh
+dd 0988c3b5bh
+dd 0910b6000h
+dd 02e798e93h
+dd 0168ecf65h
+dd 018c15e16h
+dd 08fabd341h
+dd 0db29c3cdh
+dd 0e7ae2c22h
+dd 07cea36e7h
+dd 06e964b7ah
+dd 098776376h
+dd 032ae644ch
+dd 04aa21a8dh
+dd 01f136da5h
+dd 0829caf26h
+dd 01b2dae0ch
+dd 0495f1e41h
+dd 0c6757de1h
+dd 0fe1a8035h
+dd 01c9d1341h
+dd 09f51087ch
+dd 07ed8575dh
+dd 03146ed53h
+dd 0e4b7aa0ch
+dd 03369b6cdh
+dd 08eae0856h
+dd 0f351e599h
+dd 07b93f3f3h
+dd 0f0946af9h
+dd 092ba00bbh
+dd 08fe51fcch
+dd 0c1ac80f3h
+dd 079dd44b7h
+dd 04bbb2851h
+dd 0e4736578h
+dd 063fb8771h
+dd 0eae937bah
+dd 0e8a4fd59h
+dd 04fbcce80h
+dd 0df61c168h
+dd 0fc4bbe00h
+dd 0aa4922c4h
+dd 009eb9877h
+dd 034f00e08h
+dd 071b92a93h
+dd 064eca884h
+dd 0cb32c6feh
+dd 0a2c611f7h
+dd 0c690ffd4h
+dd 095c19a90h
+dd 0a879090bh
+dd 0fe40a718h
+dd 02739203dh
+dd 01eea81dfh
+dd 0c7fb844eh
+dd 05025bf8fh
+dd 0434933dfh
+dd 05c8c05eeh
+dd 0158f438dh
+dd 035d9e3bah
+dd 0f504972bh
+dd 094135597h
+dd 07b6ab4cfh
+dd 0846cfb8dh
+dd 01214f2bch
+dd 061e50d06h
+dd 0a97365aeh
+dd 001552d73h
+dd 0edcea08eh
+dd 0224898b8h
+dd 012f27555h
+dd 0d18e1508h
+dd 09a409c53h
+dd 0624d58c0h
+dd 00464511bh
+dd 094975ac9h
+dd 09e40cae7h
+dd 0fee6e0e6h
+dd 0cf0a36e7h
+dd 069ea7e98h
+dd 06423cff1h
+dd 07cd17a28h
+dd 0a9a21eceh
+dd 0c2025dc5h
+dd 0697fe4fdh
+dd 0819e9520h
+dd 02d9b321bh
+dd 07543be78h
+dd 01bfcad8ah
+dd 05a4c4229h
+dd 0f24703a8h
+dd 0744c2726h
+dd 07357f136h
+dd 0f9a8640dh
+dd 062db76d1h
+dd 05eb6a32ch
+dd 054dd908eh
+dd 050a3c5d7h
+dd 03c5bd3ffh
+dd 08d575245h
+dd 0c1cd05bch
+dd 0eb4705ebh
+dd 004cfdbfeh
+dd 03bdee2dah
+dd 04e52da1ch
+dd 01340b7cah
+dd 06e7ae3d6h
+dd 0756c8c97h
+dd 00fa407a5h
+dd 0dd095d93h
+dd 023cdd2a1h
+dd 098b4a76bh
+dd 0a3a8829ch
+dd 0ca3ce904h
+dd 0758044e9h
+dd 0f486ec76h
+dd 0b3104f9fh
+dd 0ab0c3fd8h
+dd 08583b199h
+dd 0cc9de25dh
+dd 0a8ff2818h
+dd 010eef768h
+dd 0ff6b58a7h
+dd 09c25788dh
+dd 05dd7edbfh
+dd 0712e2bcah
+dd 0b1b7121ah
+dd 0312c51c7h
+dd 00aa36f3bh
+dd 0475bad9eh
+dd 0e9f6d6fdh
+dd 027955654h
+dd 02eae7bb2h
+dd 00e31c41dh
+dd 03b123f02h
+dd 015342aefh
+dd 099726142h
+dd 0d057cc3fh
+dd 0609ac20dh
+dd 0057aa9f5h
+dd 0b1456d37h
+dd 03f922b67h
+dd 06b4413bdh
+dd 056a55f57h
+dd 0627a4080h
+dd 04689312bh
+dd 0cf2f13a9h
+dd 0f9bd83b2h
+dd 06967467ah
+dd 0da31695bh
+dd 03049f5b1h
+dd 0ad2e0f8ch
+dd 04cbb86c0h
+dd 02589550ah
+dd 09f09c169h
+dd 08b2da587h
+dd 016258aa2h
+dd 054c9dc6ah
+dd 034c83773h
+dd 00bc3d727h
+dd 0e39f7795h
+dd 0fbd007f1h
+dd 0cf174688h
+dd 07643af86h
+dd 047710109h
+dd 06bcb622fh
+dd 0fc9282cdh
+dd 0f5fbf654h
+dd 089883415h
+dd 0f0170bbfh
+dd 017c93f05h
+dd 01a1acdafh
+dd 0efc0401dh
+dd 0754aa412h
+dd 0d038425eh
+dd 02ebcfb4ah
+dd 062de78ceh
+dd 00d080f64h
+dd 00629f116h
+dd 08e441758h
+dd 034b71e69h
+dd 056e05684h
+dd 0e66476fbh
+dd 0327f6195h
+dd 024200df2h
+dd 01daf1dd2h
+dd 0ba6437e5h
+dd 0a49b77dch
+dd 0160d39a9h
+dd 0bd018921h
+dd 08542345bh
+dd 0a171f392h
+dd 0a960cc6eh
+dd 08ab660beh
+dd 05d143486h
+dd 0fcdd943bh
+dd 06a7fb65eh
+dd 0fdb2e027h
+dd 0b68133d5h
+dd 0086eb4b4h
+dd 07be568c8h
+dd 0b8b3c340h
+dd 056b020a5h
+dd 0d1f8befch
+dd 0b63ab127h
+dd 01dcdf38dh
+dd 0cd40e960h
+dd 0cb5e19c2h
+dd 03d554958h
+dd 0708ff28fh
+dd 0c5061905h
+dd 0ca985cf0h
+dd 0b8566326h
+dd 0c4bc7af5h
+dd 0b4fd6fc6h
+dd 0dc1c8ee0h
+dd 08caaa991h
+dd 0e2569db6h
+dd 0f22b8f07h
+dd 097243335h
+dd 0a101d08dh
+dd 0ac60fcb5h
+dd 09bfad760h
+dd 0a4c30795h
+dd 0eeeb2d4bh
+dd 051f1f899h
+dd 0df6362aeh
+dd 03281e607h
+dd 0645579f4h
+dd 0527169ddh
+dd 005c2eb21h
+dd 0aeabc83fh
+dd 007a1104dh
+dd 005a4f0dbh
+dd 067119afeh
+dd 08a053588h
+dd 0a3ce8014h
+dd 0dfda31abh
+dd 0a1a0056eh
+dd 0089b7b70h
+dd 0a34d4537h
+dd 013ca085eh
+dd 0775a615ah
+dd 07a4d13f3h
+dd 039d77d15h
+dd 02a317fb3h
+dd 016b8d008h
+dd 03e540740h
+dd 05d6c5588h
+dd 061d452d2h
+dd 03d598acbh
+dd 09f4c0bb5h
+dd 0b73a0b1fh
+dd 09fd348fah
+dd 0374bd670h
+dd 0d233b625h
+dd 0dc2b1212h
+dd 07cb25817h
+dd 031a2b8ebh
+dd 07cfadb96h
+dd 04d8f7801h
+dd 0e6c78b20h
+dd 0aed2e8a1h
+dd 00d494229h
+dd 0d758086bh
+dd 058a9e353h
+dd 090cb09b9h
+dd 00c254f3ch
+dd 071270ddah
+dd 0ae5120e6h
+dd 0f331aecch
+dd 0c9488cdeh
+dd 041b35c1fh
+dd 0a38f3c30h
+dd 0641403d9h
+dd 04c16c64eh
+dd 0fee8ffefh
+dd 0144e92deh
+dd 09a298a2ch
+dd 02e5cd723h
+dd 0f382e475h
+dd 03dc3f1ceh
+dd 064f6ba97h
+dd 077b91183h
+dd 0b8f0a59bh
+dd 06de5087dh
+dd 0d3919c82h
+dd 02acca602h
+dd 0ad611f67h
+dd 086062e8bh
+dd 08bfdb69bh
+dd 02fae7018h
+dd 0eae14e84h
+dd 0b8debd34h
+dd 07330f984h
+dd 09b3623dch
+dd 0c6942739h
+dd 0e3ec0f8ch
+dd 0af896a3fh
+dd 01c13347eh
+dd 0de6b46ffh
+dd 0ebb21978h
+dd 023dac90eh
+dd 0f7daf390h
+dd 09b09afd5h
+dd 0d9673562h
+dd 040c1471eh
+dd 02c0e0de4h
+dd 0907cc072h
+dd 02994860ch
+dd 0d998b146h
+dd 0f1bf86dah
+dd 0b0a3cf7eh
+dd 09c980b64h
+dd 012bca992h
+dd 003a40d32h
+dd 03698c30bh
+dd 097f162e5h
+dd 0ceaadae4h
+dd 0888750c8h
+dd 0c3addfe0h
+dd 03a47a675h
+dd 0d9a0dd0fh
+dd 08b2aeb25h
+dd 043779bach
+dd 0da49a937h
+dd 0cc5eff84h
+dd 0f6f38002h
+dd 0b40599bdh
+dd 014e8915bh
+dd 05b89818ah
+dd 0aef7350bh
+dd 0b783934ch
+dd 0b032ccc3h
+dd 0c1aab399h
+dd 0b60fca4eh
+dd 0c6c94361h
+dd 0edc2b7a1h
+dd 0b0d54e69h
+dd 0cbbb2270h
+dd 030e0b892h
+dd 08136d828h
+dd 00c43177ah
+dd 05806b5ebh
+dd 092804218h
+dd 0a9bf5cbeh
+dd 002ae1aa2h
+dd 0e9489014h
+dd 001aef05bh
+dd 065bccbc8h
+dd 0f5c4f919h
+dd 03ff71a7ah
+dd 027a5f1c9h
+dd 0fbd5ccbch
+dd 063fbfadbh
+dd 023aa4080h
+dd 07f6da4e0h
+dd 013d3e2ffh
+dd 023c796ddh
+dd 0a3965af4h
+dd 026a03dcdh
+dd 05abb5eedh
+dd 07979d9b6h
+dd 0edd78f19h
+dd 090a7e37ch
+dd 08abab06eh
+dd 044bc6bd0h
+dd 0b8df4627h
+dd 0579c2930h
+dd 093cde43ah
+dd 0fe3fe253h
+dd 0468236aeh
+dd 058950563h
+dd 019a55235h
+dd 0e82bd7e8h
+dd 03550c29fh
+dd 0d31749fbh
+dd 02a5ff046h
+dd 0711f9d3fh
+dd 0adba5da0h
+dd 086225c3bh
+dd 01726f567h
+dd 09194b36bh
+dd 00fc4a3d2h
+dd 0fe3f9287h
+dd 0694c5ce7h
+dd 07ed91650h
+dd 050edcbf3h
+dd 05f261c34h
+dd 038b8b74bh
+dd 0b8f98cf4h
+dd 04df50deah
+dd 010010245h
+dd 0423843a6h
+dd 0237fe6f7h
+dd 05fd9384bh
+dd 0ceafcaf0h
+dd 021a1ea74h
+dd 0e2f8b8a4h
+dd 0949aa088h
+dd 0db8fb006h
+dd 0f8537e9fh
+dd 0c41d105eh
+dd 0209f2645h
+dd 020775739h
+dd 03388d35fh
+dd 0dc349df8h
+dd 05817737eh
+dd 06298ea83h
+dd 018cf9299h
+dd 027d9aa34h
+dd 0ef126d29h
+dd 069aaf229h
+dd 03ea47035h
+dd 0e1b11979h
+dd 0c1ba30ddh
+dd 0468c67adh
+dd 0196f0332h
+dd 096a325a7h
+dd 0c2a946fdh
+dd 07cf7b2b6h
+dd 02affb7b2h
+dd 06867cf76h
+dd 087771048h
+dd 041041686h
+dd 07742fb9eh
+dd 0479945f3h
+dd 0b31f7892h
+dd 057304e37h
+dd 09d66618fh
+dd 0a2b275c7h
+dd 026f09347h
+dd 0fcc19486h
+dd 02b4e90d2h
+dd 053fcefafh
+dd 03c1a14e9h
+dd 071466f1bh
+dd 0843b55ffh
+dd 044572f85h
+dd 0ef2ade27h
+dd 0cb92fe82h
+dd 0d147acfch
+dd 0dd6c179ah
+dd 0b40351b1h
+dd 0ffd4f55ch
+dd 0242f3b5bh
+dd 03390cd3bh
+dd 0921b2cc2h
+dd 0cea73dd1h
+dd 0953f0282h
+dd 0cfd34dfah
+dd 0a4caa4fbh
+dd 0b2b07141h
+dd 0af9b0473h
+dd 07820b228h
+dd 00ea05789h
+dd 0327a32c5h
+dd 0badc5153h
+dd 069374662h
+dd 0aad34cadh
+dd 03ce14a7bh
+dd 0e754adc0h
+dd 03e71bee0h
+dd 094e98262h
+dd 0cc445017h
+dd 092235ddfh
+dd 00fdb4089h
+dd 0ebeb0902h
+dd 0c003618ah
+dd 0cf55abcdh
+dd 052e3907bh
+dd 09ce62b72h
+dd 02b8a3230h
+dd 0fded7a6bh
+dd 01b45db92h
+dd 039ec9d90h
+dd 01384b6c0h
+dd 0afedf5adh
+dd 0b2cc7031h
+dd 04cefda09h
+dd 04fafb5c7h
+dd 061e6be6bh
+dd 0092d184bh
+dd 0c92dcd8ah
+dd 0b83470bch
+dd 03ecb0e1bh
+dd 0b377e7beh
+dd 02ce651d1h
+dd 0891b6f1bh
+dd 02482807bh
+dd 017ffdbd1h
+dd 094812646h
+dd 0f2eb6878h
+dd 035a73cebh
+dd 07173f858h
+dd 0a6bff9c7h
+dd 0d284b345h
+dd 0203be165h
+dd 0bd316ea9h
+dd 0e97d9761h
+dd 0e1234821h
+dd 01f875704h
+dd 0a59c8bdeh
+dd 0f1f49997h
+dd 0723b0b48h
+dd 0e69480c2h
+dd 0f206ce49h
+dd 084ac12c0h
+dd 08df51316h
+dd 073fb2d0bh
+dd 0683cacb1h
+dd 0becba59ah
+dd 04af2149ch
+dd 0a98c19c1h
+dd 008f5001ah
+dd 0a3664014h
+dd 01adf3920h
+dd 08b5ffe97h
+dd 023640494h
+dd 0205062b3h
+dd 095af03f8h
+dd 0032c9c96h
+dd 04525b49ch
+dd 00eb9e652h
+dd 0ba7bae66h
+dd 0a1c50e55h
+dd 00125feb9h
+dd 0a99dc6e4h
+dd 0d53948efh
+dd 06be38451h
+dd 0e2977176h
+dd 09589a25fh
+dd 0e00d28c4h
+dd 026bfedbbh
+dd 04e9e4c8dh
+dd 0975ad7deh
+dd 052c345e0h
+dd 0729d5494h
+dd 06b0324a0h
+dd 0be14f868h
+dd 0b5250ac8h
+dd 0257a2d33h
+dd 0a95e9a70h
+dd 0891ee0e8h
+dd 04625ff3bh
+dd 004941ec0h
+dd 0d005a568h
+dd 0b5e8ca7ah
+dd 0931179a6h
+dd 04d34bd7ch
+dd 0e8f2f1d4h
+dd 05d195123h
+dd 00737db8bh
+dd 0ab17d630h
+dd 0fe649b89h
+dd 0e62e940fh
+dd 028ba5c6bh
+dd 063c4dcd0h
+dd 02eb4ff33h
+dd 0ac92d122h
+dd 0460deca0h
+dd 00e340138h
+dd 0509f72feh
+dd 0f3a4ecb2h
+dd 099da0141h
+dd 056e24eadh
+dd 08c78aa08h
+dd 0aa06bd2fh
+dd 0918e7c71h
+dd 0c3d7635eh
+dd 06463f078h
+dd 08d81d820h
+dd 0836a81c0h
+dd 0c434cba3h
+dd 09c91ffc8h
+dd 0446371c6h
+dd 0f3f56e68h
+dd 0b35f3ac5h
+dd 0abdd0cf9h
+dd 0f2e9dacfh
+dd 071261930h
+dd 07b0d9a36h
+dd 05547b05ah
+dd 00c0557f7h
+dd 0833f668ah
+dd 0420e284fh
+dd 043ab2e40h
+dd 0bf1398ach
+dd 051ba49ffh
+dd 0a5756972h
+dd 04602906dh
+dd 0683d2253h
+dd 030031e93h
+dd 0c4beaf12h
+dd 06696130ch
+dd 0ef1df8d7h
+dd 0d3afd884h
+dd 07ddcdb85h
+dd 0dfaafe30h
+dd 0347ccfc7h
+dd 09666d864h
+dd 0db087d12h
+dd 0bcd82800h
+dd 0893d8276h
+dd 00b05429dh
+dd 03b7add6bh
+dd 0d995e9f5h
+dd 0f0ae3897h
+dd 08dbe90feh
+dd 0e7f57e6fh
+dd 0acacfefbh
+dd 0a1a0eb6ah
+dd 09296e85fh
+dd 0a7651421h
+dd 0c3fff82fh
+dd 0c6caeecch
+dd 0559e05d7h
+dd 0bbc4966dh
+dd 097112c30h
+dd 0376f5f8eh
+dd 0714c67c3h
+dd 0dee1688eh
+dd 08665e91ah
+dd 028b5c9aeh
+dd 0731fde91h
+dd 0ad7d880ah
+dd 0af72cf6bh
+dd 058933e93h
+dd 0b2997eddh
+dd 0d8138898h
+dd 082d2b17ah
+dd 0ff6b3004h
+dd 06ba2a338h
+dd 0808e7360h
+dd 0750a86ach
+dd 078c4fb63h
+dd 03418f296h
+dd 00e16fec6h
+dd 04d6b1994h
+dd 00652ebd3h
+dd 0e6de531dh
+dd 06d512c1fh
+dd 069643ecbh
+dd 0800f06cfh
+dd 0fd42578ah
+dd 03bae7c93h
+dd 024262cfdh
+dd 04331d563h
+dd 03dde0146h
+dd 0240a584dh
+dd 05f9db493h
+dd 0293ba353h
+dd 0dc639976h
+dd 03cab575bh
+dd 09ea5270ch
+dd 09fd0563bh
+dd 004e96bb7h
+dd 0bcb06281h
+dd 0ff9b5002h
+dd 0af5589f3h
+dd 07718f765h
+dd 0abf4ea9ah
+dd 00b1c411ch
+dd 01d9be873h
+dd 003e7206ch
+dd 0c29baea8h
+dd 06c9300e4h
+dd 0d46d24c9h
+dd 0a4abd95dh
+dd 0e7fb0ebeh
+dd 0d699dd2ah
+dd 02d268d4bh
+dd 0422987cdh
+dd 0fe8ad321h
+dd 00cfb8b8ah
+dd 029cdac1fh
+dd 07c933a89h
+dd 05d093cf8h
+dd 09d535516h
+dd 07eca3b81h
+dd 023399fb9h
+dd 01bf7004eh
+dd 017bf4c9dh
+dd 0a2c80511h
+dd 078862e00h
+dd 0ba4dcbc5h
+dd 07a2313ddh
+dd 0712597c3h
+dd 04e65e216h
+dd 0485778f4h
+dd 06acd451ah
+dd 071508597h
+dd 0eadb2c83h
+dd 0fe1a7635h
+dd 03b88273eh
+dd 010784ccbh
+dd 07d6e16f8h
+dd 079caab21h
+dd 0e53cae47h
+dd 02f0ae38fh
+dd 002a9a18ch
+dd 05e3ef877h
+dd 025077cb9h
+dd 03bae0319h
+dd 045e1b045h
+dd 0991f9a1ah
+dd 077aa8baah
+dd 0047acdadh
+dd 03543e81eh
+dd 05094c67ch
+dd 07c637394h
+dd 065fa2f0dh
+dd 0f7353d5ch
+dd 06a663606h
+dd 05a18af4fh
+dd 016570703h
+dd 019351446h
+dd 0e1893120h
+dd 0574062c8h
+dd 056563c9dh
+dd 0b85f566fh
+dd 08fb0a50ch
+dd 070f182dbh
+dd 0212927a4h
+dd 0c24d7308h
+dd 0ff286f72h
+dd 0bf531db8h
+dd 05ba68795h
+dd 05f13e236h
+dd 04c241c55h
+dd 0d8990eaah
+dd 058ee1b1bh
+dd 0648b5ea0h
+dd 0054ebc75h
+dd 065b214c7h
+dd 0898f973ch
+dd 0fb66e080h
+dd 0062513cdh
+dd 0e149be59h
+dd 0e0ba79d4h
+dd 0fdc167f9h
+dd 04a61a33dh
+dd 035d8dc69h
+dd 0649b8244h
+dd 012888e17h
+dd 057a8fd25h
+dd 0db3e7f6bh
+dd 011af7f90h
+dd 0cb911652h
+dd 038a55485h
+dd 08d6178ach
+dd 0df8a4bc6h
+dd 04d360f48h
+dd 06d15a0e7h
+dd 0df7ce625h
+dd 0d25b7afah
+dd 0527cbcaeh
+dd 00c78e15ah
+dd 08faedabdh
+dd 0028de7c8h
+dd 0a9998251h
+dd 0e1db374eh
+dd 007624953h
+dd 00eb9b79dh
+dd 0b795a781h
+dd 0823e006ah
+dd 08928e542h
+dd 051bef57ah
+dd 056ce47d9h
+dd 03912781eh
+dd 0cc4ebd12h
+dd 0599bc667h
+dd 0e92552c7h
+dd 0e1a2ba69h
+dd 0d4e1ae2eh
+dd 0f1fcc4a9h
+dd 048abcba1h
+dd 0b2bde26ah
+dd 065c0fd3fh
+dd 02ee24e8eh
+dd 0096706a5h
+dd 04ae64a28h
+dd 081938b15h
+dd 058d7e9abh
+dd 0def132f2h
+dd 034ad2656h
+dd 034d4c56ah
+dd 0cde546fbh
+dd 01244b241h
+dd 0319a5334h
+dd 0f1977af1h
+dd 0608350a7h
+dd 00e3b148ah
+dd 02d81da45h
+dd 05adf995ah
+dd 012e581f8h
+dd 0d8149157h
+dd 091d589adh
+dd 01ecba6e4h
+dd 068e48409h
+dd 030d0afe5h
+dd 0f9b01363h
+dd 02f50cbfch
+dd 0ce7469edh
+dd 09a4b9938h
+dd 0a83f80cbh
+dd 0a240b37dh
+dd 0702e8312h
+dd 044fe4590h
+dd 0490b00e4h
+dd 0efc7c4abh
+dd 0d2e59883h
+dd 0c27444bfh
+dd 088770006h
+dd 0ab1f08c5h
+dd 0501dac8eh
+dd 000407ff2h
+dd 0e79d2414h
+dd 07e43921ah
+dd 0fc98f358h
+dd 0e69b7718h
+dd 088d3884eh
+dd 0fd0fe2adh
+dd 07dc72c51h
+dd 08bbcfdbeh
+dd 0d90140b1h
+dd 07e28969dh
+dd 0695f25beh
+dd 027d825c2h
+dd 0fd927467h
+dd 04e10a59ah
+dd 048c13cc1h
+dd 0cfb89241h
+dd 0fe37b5a6h
+dd 004e48aeah
+dd 02e451558h
+dd 06897b81bh
+dd 0a681e849h
+dd 03a0b2c49h
+dd 09e3ab9e1h
+dd 09de98dc8h
+dd 03c28049bh
+dd 0b6ed1800h
+dd 0ba7bed5dh
+dd 090343c27h
+dd 04e322d67h
+dd 07ab4effeh
+dd 01f48a972h
+dd 0f4d2b193h
+dd 094a5c8d4h
+dd 0019609d7h
+dd 022b36ef4h
+dd 00b4510cfh
+dd 051bf4d7fh
+dd 09fe48141h
+dd 0402cdd7fh
+dd 0bf693fd5h
+dd 04142932ch
+dd 073f9a67ch
+dd 0f6c8af9ah
+dd 097c02628h
+dd 02f4fb4b1h
+dd 0949c5ffch
+dd 09d979629h
+dd 09653affbh
+dd 080facf0ch
+dd 0c61ac731h
+dd 09e53744ah
+dd 0dedafe49h
+dd 0641b324eh
+dd 003fbf7e8h
+dd 0fb5a462eh
+dd 0ef3ddfc4h
+dd 05680bfb7h
+dd 0a813ebb2h
+dd 004ff1a8eh
+dd 086bc3f4eh
+dd 0d34f6b6ah
+dd 041e10616h
+dd 0b502338dh
+dd 0871d7a05h
+dd 04d7589aeh
+dd 0d0b8b892h
+dd 0ebac696ch
+dd 098ea49b2h
+dd 067f66301h
+dd 0ac815f5eh
+dd 07622fc4bh
+dd 0de9b95c1h
+dd 03369ccd7h
+dd 01aa4d543h
+dd 0eb6fbe34h
+dd 0ec443ee5h
+dd 0526b4e48h
+dd 0d5950c66h
+dd 0cedec9d1h
+dd 0c933220bh
+dd 0eedbf3bbh
+dd 04e4f7950h
+dd 082a97dd7h
+dd 07121660bh
+dd 04a283338h
+dd 0f5f0a7c3h
+dd 0c5a2d869h
+dd 07874580bh
+dd 0a84b9a31h
+dd 0d989f426h
+dd 0c6105172h
+dd 0f058014fh
+dd 0eec67560h
+dd 08ebf1cd1h
+dd 0fd85d91dh
+dd 0c943fca8h
+dd 02ddba9c6h
+dd 0ba89270bh
+dd 098ab2c9eh
+dd 0399f5a2fh
+dd 0f42a4446h
+dd 083aa2204h
+dd 017f9cae0h
+dd 0ce387e92h
+dd 0fc2ede64h
+dd 0726345a1h
+dd 06f01aa9ch
+dd 0c9727178h
+dd 0fdbfb514h
+dd 072eaf9f8h
+dd 055244d23h
+dd 0bb091fc5h
+dd 0f14e54a2h
+dd 0a846da0ah
+dd 0c37b9ecah
+dd 0bc79dff8h
+dd 012a0491ah
+dd 01e5bd685h
+dd 011223e7eh
+dd 0c976c9dah
+dd 0555d3be0h
+dd 04e6a4c97h
+dd 03486001ch
+dd 0063ce8e2h
+dd 0b97d1239h
+dd 01bf966a8h
+dd 0335468bfh
+dd 0fe6b7beah
+dd 0fb1a4cfeh
+dd 07e808ba1h
+dd 0184274b4h
+dd 0e22914b9h
+dd 0b4b2b06ch
+dd 0710598cah
+dd 0094ce8c6h
+dd 065485c6bh
+dd 00633e18ch
+dd 03b4e5e23h
+dd 0e4741d54h
+dd 073e27e6fh
+dd 0caa0cfe5h
+dd 0325a8cf0h
+dd 0924b1e6eh
+dd 0a803471ah
+dd 07ac049a9h
+dd 0171e8bc5h
+dd 0fd07f270h
+dd 047674839h
+dd 056bc362fh
+dd 031aabf67h
+dd 02bce086bh
+dd 02fcab4e9h
+dd 0824464c7h
+dd 0f33c8732h
+dd 0f60c4355h
+dd 0607423feh
+dd 0863dbcf6h
+dd 0ed1db510h
+dd 02f4a5fd3h
+dd 02662d20dh
+dd 0abb113b9h
+dd 03b633a57h
+dd 0cfc65677h
+dd 098240347h
+dd 05ac0d8f7h
+dd 0da57f5a4h
+dd 0c1fc7ee3h
+dd 0967a5f1ah
+dd 07f176d94h
+dd 0809018eeh
+dd 0b395a5e5h
+dd 09730ae31h
+dd 01de7db08h
+dd 05584b695h
+dd 0960f6baeh
+dd 0980a427eh
+dd 0984d5bech
+dd 041b170cbh
+dd 0459c0ee2h
+dd 0553a2cbeh
+dd 070331caeh
+dd 0a12685b1h
+dd 02dc419c8h
+dd 0c9c4202ch
+dd 0b8389a8ah
+dd 0775a52dbh
+dd 0aa04cafeh
+dd 0c13e3039h
+dd 0a04ff427h
+dd 068199b09h
+dd 0df0e9a3dh
+dd 032727eb6h
+dd 048729724h
+dd 0c079f70fh
+dd 0047e66b5h
+dd 0a7fec709h
+dd 017eadd3eh
+dd 0a149be3eh
+dd 0adb215c0h
+dd 009347e0fh
+dd 04b9dfdf0h
+dd 04c7dd717h
+dd 0083b6e73h
+dd 0b969596ah
+dd 0545bb3aah
+dd 057709fe3h
+dd 0e5dab3c5h
+dd 0ea3e9b8eh
+dd 034f606e6h
+dd 06061e09fh
+dd 05d6c9f2bh
+dd 01582b763h
+dd 0d25ef0a5h
+dd 0b2fb3681h
+dd 07e3924bbh
+dd 00439c732h
+dd 0389135bfh
+dd 012ac009bh
+dd 0351986aah
+dd 048707afch
+dd 02f09a020h
+dd 06d86b89dh
+dd 0c12c5886h
+dd 0d26c8bbch
+dd 0d821dae7h
+dd 007445d2bh
+dd 04dff268eh
+dd 034d8da5ch
+dd 09297336ch
+dd 071a94505h
+dd 0ef2aac9eh
+dd 0e2549109h
+dd 086b696c2h
+dd 09ec9ea4dh
+dd 02de9fdb4h
+dd 0941abf73h
+dd 0c734e634h
+dd 00697c803h
+dd 0bf605402h
+dd 0a9102144h
+dd 01dc302d6h
+dd 015e36269h
+dd 057e07bceh
+dd 0ea07a77bh
+dd 0801e8fdeh
+dd 03bcaf37eh
+dd 080a43877h
+dd 0aa7ae0c0h
+dd 0a8cc0cbah
+dd 0895ba1aeh
+dd 06cd91ed3h
+dd 0a4d94348h
+dd 0ad96e261h
+dd 03efdefb4h
+dd 0a1ba8868h
+dd 0e5d4068ch
+dd 00f4b8f35h
+dd 0872f0f28h
+dd 05cff2259h
+dd 011cff8f8h
+dd 0e54a28f6h
+dd 052cabe89h
+dd 04c0a1edeh
+dd 029208ce4h
+dd 0cffc3504h
+dd 08c61cec8h
+dd 027851c0bh
+dd 07ab46c13h
+dd 0226aadc4h
+dd 00cd237c9h
+dd 025b7f740h
+dd 066ee7c3eh
+dd 0024f678fh
+dd 00263b5a1h
+dd 01d9b5037h
+dd 099040219h
+dd 03eb87e35h
+dd 07057068bh
+dd 09e5c4c94h
+dd 0fa0fbce3h
+dd 0d6b44cedh
+dd 0cd6f619ah
+dd 06bb5b3ddh
+dd 0830cf9a2h
+dd 0659e23cdh
+dd 0534be989h
+dd 0d83f0a8ah
+dd 06e47bcb3h
+dd 06307e876h
+dd 017bb9c1fh
+dd 0b6416c1fh
+dd 0e4d9538ah
+dd 0d0fd9788h
+dd 07f603f46h
+dd 09568f71bh
+dd 03a4222e6h
+dd 0defbe7cch
+dd 0fcd411a0h
+dd 04b20df3ah
+dd 085466dd0h
+dd 0783fb1f9h
+dd 01610df96h
+dd 09e4bebach
+dd 046d7ed1dh
+dd 0f82a2c29h
+dd 0174652c8h
+dd 047830619h
+dd 028db31dbh
+dd 05e888581h
+dd 0517afcf1h
+dd 079382f6fh
+dd 0aab619cbh
+dd 05f293884h
+dd 013ba5b38h
+dd 023eadddch
+dd 060c4bfc1h
+dd 02183a45ah
+dd 047ee8640h
+dd 0bca5f226h
+dd 0813301c4h
+dd 07a356bedh
+dd 06fcf2127h
+dd 02f51d18ah
+dd 0cc72b357h
+dd 0fa62e5ebh
+dd 01f87d896h
+dd 0e1fbe719h
+dd 08c8ab445h
+dd 0b36b704ah
+dd 058f39deah
+dd 0428364b3h
+dd 0f0b6a59ah
+dd 0cf3ec132h
+dd 046617506h
+dd 068da9879h
+dd 0ae08cf35h
+dd 0339342c5h
+dd 0734a9437h
+dd 0f6c723dch
+dd 0aa95d7dfh
+dd 0fd9096a6h
+dd 0a8bc0ff5h
+dd 080d79f78h
+dd 0fa1f07a1h
+dd 0a145c957h
+dd 0fdfac5a2h
+dd 00bfb2703h
+dd 0065c74fbh
+dd 03dec9c1eh
+dd 0c52bf102h
+dd 0b67a155fh
+dd 0524406bdh
+dd 06b160410h
+dd 0260c4206h
+dd 0e143e1efh
+dd 00d33787eh
+dd 0f367d825h
+dd 08bbfbe59h
+dd 0e703cc8ch
+dd 08af14ad5h
+dd 0bc198f4bh
+dd 0c17dc3f5h
+dd 0b0f679fbh
+dd 006110302h
+dd 010d99aa4h
+dd 0a2f0b602h
+dd 066920b59h
+dd 0198bdcf9h
+dd 05f3036b7h
+dd 0314ad7adh
+dd 0645de76fh
+dd 02e305a42h
+dd 0eb1f6782h
+dd 079dd226bh
+dd 0c836ac95h
+dd 04e96a62ah
+dd 088ced82ch
+dd 0d2a5a2afh
+dd 0d067ce33h
+dd 0b4e3da9eh
+dd 02e062efah
+dd 0c09a33b8h
+dd 0cebf084dh
+dd 078f8d2a7h
+dd 0a997d39dh
+dd 02942628eh
+dd 0fb43e914h
+dd 05d06d36ch
+dd 02eedb9d1h
+dd 0395ff413h
+dd 0777c37deh
+dd 01b640e8ah
+dd 07baf815ch
+dd 01288fd9dh
+dd 03e13ce60h
+dd 09639a8f0h
+dd 0448e8da7h
+dd 0d621d975h
+dd 001bc911ah
+dd 0dfbd87beh
+dd 05230885dh
+dd 0e75bd6c6h
+dd 0ced973adh
+dd 0c371c657h
+dd 01f7e8c1ch
+dd 0e70c6458h
+dd 0a032fdd4h
+dd 0770f70b1h
+dd 09a620a0bh
+dd 0c67faf94h
+dd 077497ef0h
+dd 099a46661h
+dd 0ac7e9702h
+dd 02f7253b5h
+dd 05ac810e7h
+dd 08dab82eeh
+dd 0eeeb4f8ch
+dd 032b1f68dh
+dd 0f2535ffch
+dd 094c35f25h
+dd 05322e814h
+dd 0d9bd16efh
+dd 0718046a0h
+dd 065cfcd30h
+dd 083ad7573h
+dd 0202538d8h
+dd 08af963b2h
+dd 07f0a5564h
+dd 0f41a5cd7h
+dd 0ac926692h
+dd 0013d582ah
+dd 0f7fa51edh
+dd 0fe20a734h
+dd 0d98c5eb7h
+dd 0599c50aah
+dd 07bb0370ch
+dd 071a6b657h
+dd 0298586d2h
+dd 09c35953ah
+dd 0f9df810dh
+dd 070aa1428h
+dd 0e924194ch
+dd 0e81655ech
+dd 002dd9914h
+dd 0ac685c5dh
+dd 02f3001c6h
+dd 04a18a391h
+dd 0cc64d9b7h
+dd 0e866db45h
+dd 0756a8aebh
+dd 08c9cd2eah
+dd 04dbcdb6ch
+dd 0b9e6977ah
+dd 07cb187f7h
+dd 08c3b9840h
+dd 07dbb0081h
+dd 0d8fdd8ceh
+dd 095b35178h
+dd 0d369a925h
+dd 0ac0824e3h
+dd 0ecc34bf9h
+dd 0d1b5d494h
+dd 0a43ef6f3h
+dd 009cfa19fh
+dd 02b4cf7b5h
+dd 05f71dab3h
+dd 0404b0990h
+dd 0c8e28aa8h
+dd 086a0f028h
+dd 08044ef39h
+dd 0df552627h
+dd 0eeba6e31h
+dd 0e79968a5h
+dd 0ccdd7d14h
+dd 09be9bbbfh
+dd 0b4780d3eh
+dd 0f51f0cb6h
+dd 0fd05819ch
+dd 05994eca7h
+dd 03f18cf2dh
+dd 0239ec1a9h
+dd 05c77756fh
+dd 0698ef025h
+dd 0ba3dd63eh
+dd 056070b6fh
+dd 07bf2675ah
+dd 0f030f5d9h
+dd 06bcf5270h
+dd 0d6d2d6bdh
+dd 0049da022h
+dd 021e1363ah
+dd 06a0feac9h
+dd 0862a67e1h
+dd 0c7389788h
+dd 096c9575eh
+dd 0acef6185h
+dd 0416bffa1h
+dd 0592fd4eeh
+dd 05f66da48h
+dd 0d7e7b341h
+dd 0095e52c6h
+dd 0ca2988f4h
+dd 0434c15d1h
+dd 0ca134e4bh
+dd 00e858d77h
+dd 0531039cch
+dd 045e8fac6h
+dd 07cbba998h
+dd 0a697b39dh
+dd 0ca6428f5h
+dd 0d7ad86a7h
+dd 0bfff82cch
+dd 096b27046h
+dd 018dd2639h
+dd 0f2202f77h
+dd 0962f0663h
+dd 0616d35b4h
+dd 04f87479dh
+dd 05ca350e7h
+dd 0b0b84c93h
+dd 0e2467377h
+dd 0858ac35fh
+dd 04e729b0eh
+dd 09519b78bh
+dd 030650ce6h
+dd 012b6e90ah
+dd 01b13ec90h
+dd 011a9df52h
+dd 0206666a0h
+dd 0fa5c6774h
+dd 049a8633bh
+dd 035bbd244h
+dd 056e50c64h
+dd 059914407h
+dd 029840ed7h
+dd 01713b7cch
+dd 0bff5ff10h
+dd 089fadf0eh
+dd 0620dff09h
+dd 061b63886h
+dd 023856c03h
+dd 0f842129ch
+dd 0443a6b76h
+dd 0ba0cb803h
+dd 00d6eaa58h
+dd 01ab6cc70h
+dd 0102ea599h
+dd 08b0dc364h
+dd 0ac6cf0cbh
+dd 03c5cee69h
+dd 0de4010cch
+dd 0d58d7a12h
+dd 0a24f57f9h
+dd 0091c7ae8h
+dd 018116416h
+dd 047876426h
+dd 00d10e8e8h
+dd 01e910e97h
+dd 0340bf63ah
+dd 09c95ddfch
+dd 0f911eb28h
+dd 08ed22896h
+dd 07e6a6026h
+dd 0ad71bacch
+dd 0bc59d664h
+dd 0f4112ab9h
+dd 06364931eh
+dd 0e99f2526h
+dd 017fa582ch
+dd 0cc1e9303h
+dd 0a9e2ce39h
+dd 0947e6000h
+dd 066826670h
+dd 028323ee8h
+dd 01d3242c2h
+dd 09882e4c6h
+dd 0381bbdefh
+dd 0eed65336h
+dd 04710cb44h
+dd 028689d56h
+dd 0ec736dfbh
+dd 00071cc54h
+dd 0c80a7791h
+dd 0bd150d15h
+dd 0a2d456edh
+dd 073a5cfe4h
+dd 032a52328h
+dd 0e61f6982h
+dd 03e9ee34dh
+dd 0a82122f8h
+dd 00dbda63ah
+dd 0d77c297ch
+dd 0ddb1c3adh
+dd 089a03914h
+dd 0f8f227a3h
+dd 0712ffbd4h
+dd 0f0ba929ah
+dd 084c074f5h
+dd 0420e0704h
+dd 0c1f6759ah
+dd 00ff562a0h
+dd 08f85232ah
+dd 03d744e56h
+dd 086261296h
+dd 0ddf0e3d5h
+dd 08ea3dfeah
+dd 017d2cd27h
+dd 05efe2d1ah
+dd 031f30ae8h
+dd 07d39a094h
+dd 0985a9ee3h
+dd 0a1b1826eh
+dd 0304339e0h
+dd 06a6fe000h
+dd 0b93dcb7eh
+dd 08b1f5f2ch
+dd 0f94a7739h
+dd 0725bf694h
+dd 06c78a3b8h
+dd 06c2a8dc1h
+dd 05847759ah
+dd 0598eeca0h
+dd 050c8232fh
+dd 04982ee5ch
+dd 01da3791fh
+dd 04339f202h
+dd 0c0a240bdh
+dd 046fd0d30h
+dd 09ea753cah
+dd 05b93719ah
+dd 07825ca43h
+dd 07c000903h
+dd 0b420a2a5h
+dd 059565a81h
+dd 0e8991453h
+dd 07c24afc7h
+dd 0101ef090h
+dd 05e119e00h
+dd 0d2b65eeah
+dd 0e922ffb9h
+dd 00046b53fh
+dd 0f205cfe3h
+dd 08243527eh
+dd 05d5fb8d6h
+dd 072478f63h
+dd 04e8109a7h
+dd 0dc75b4bdh
+dd 0c8fc6c13h
+dd 0afdb2a7dh
+dd 09ea6e417h
+dd 0431a3dd8h
+dd 09959d104h
+dd 0e6ffc9d4h
+dd 0234f70beh
+dd 01b7d1db8h
+dd 06302737dh
+dd 04fec35cbh
+dd 0986daed4h
+dd 0362e2e6dh
+dd 07fb42505h
+dd 02a0e236dh
+dd 0ce1e741bh
+dd 0cb84df80h
+dd 0d3bb3fabh
+dd 010fe73b0h
+dd 03cf0c986h
+dd 0afaca6b4h
+dd 036479c0ch
+dd 0c58d813ch
+dd 0bb2fff02h
+dd 015f35b25h
+dd 055b5f5c5h
+dd 0d6308dfah
+dd 0e54005cdh
+dd 0611d9958h
+dd 0fb9aa83eh
+dd 00da998dbh
+dd 02416358fh
+dd 03c10cffeh
+dd 0bdb23389h
+dd 0e092a945h
+dd 03a09a64dh
+dd 03f5ede61h
+dd 0b7e15684h
+dd 0a4073d11h
+dd 026331b32h
+dd 0e116920dh
+dd 0db1a3b11h
+dd 0f12558d8h
+dd 0319b3e7fh
+dd 0b52e074eh
+dd 07763ce84h
+dd 036dd1734h
+dd 0590249b4h
+dd 095d63ad1h
+dd 05c43e5a8h
+dd 0498d3138h
+dd 0f94782f6h
+dd 081cac29ch
+dd 03e56caadh
+dd 0065d0b79h
+dd 0dfaf3605h
+dd 0d5424cffh
+dd 04fab313fh
+dd 0a4aa2e21h
+dd 037ae6ea2h
+dd 0f849b59ah
+dd 07a7ab19eh
+dd 003a48f6bh
+dd 0023d4bebh
+dd 0e7f02b0ch
+dd 01cd4899bh
+dd 0356ffc34h
+dd 0d32717eah
+dd 09c0ec514h
+dd 00a0a96f3h
+dd 07d9d40ddh
+dd 0235efca5h
+dd 0268d1fb8h
+dd 0921b7331h
+dd 0b46b7f66h
+dd 0c79f135ch
+dd 01a4dc5d9h
+dd 09199b6b0h
+dd 0449ef831h
+dd 0fec2fae4h
+dd 021005edah
+dd 0791f9812h
+dd 09c1401fah
+dd 02b77d6fah
+dd 019e60ef4h
+dd 0a18ea58eh
+dd 0ebf8853fh
+dd 071c7336eh
+dd 08cf7deb4h
+dd 01c21e80eh
+dd 06070e4bah
+dd 095250130h
+dd 0b83ce675h
+dd 0a1883965h
+dd 02d1dd43ah
+dd 051a28782h
+dd 0f94a3852h
+dd 00b13e532h
+dd 0225e8da7h
+dd 0fbb496abh
+dd 0a57f29f3h
+dd 0572cbf47h
+dd 01bf609ddh
+dd 020cb4c4eh
+dd 0137911bbh
+dd 0a7d373d0h
+dd 0535a6a1fh
+dd 065536672h
+dd 01fae48fch
+dd 0f8573b48h
+dd 08e1a1b2fh
+dd 02b95ebd6h
+dd 07ea9d14dh
+dd 0acfc15a9h
+dd 0710a135eh
+dd 0ce6c2eb3h
+dd 04cda33c3h
+dd 0821b8816h
+dd 0e44e3a3ch
+dd 0a0f1c0d6h
+dd 074502a6fh
+dd 0dc053b61h
+dd 09a9050b9h
+dd 096003e74h
+dd 0d2ac41a2h
+dd 0c4e4497dh
+dd 07721c726h
+dd 0b5747011h
+dd 015485eebh
+dd 0355712ach
+dd 03d9597e1h
+dd 061d1fa9bh
+dd 0d7198aach
+dd 00b98ca73h
+dd 0fec0054ch
+dd 0d8d3e860h
+dd 0bbb9109ah
+dd 0244bf93ch
+dd 0b8ebcfa9h
+dd 03eaccf6eh
+dd 0975789c0h
+dd 00fc30c41h
+dd 039b75054h
+dd 0640b8ac7h
+dd 07c849e64h
+dd 0a49165b7h
+dd 08b53fdeah
+dd 04c5d28d2h
+dd 04203f460h
+dd 06ada627eh
+dd 04f162326h
+dd 021631cf6h
+dd 005e5b4b5h
+dd 07507b565h
+dd 0648763e2h
+dd 0c7b9545ah
+dd 0cde5db90h
+dd 01c69a8b5h
+dd 09a48c45ch
+dd 08f0d068dh
+dd 016eab85ah
+dd 017d4af13h
+dd 03871f0f5h
+dd 07c770a7fh
+dd 0b655a8cch
+dd 0c4ec4623h
+dd 05b3d6a6ah
+dd 04a437948h
+dd 06220b50ch
+dd 0c93c3f9bh
+dd 08e6cc756h
+dd 01033d020h
+dd 0a8550446h
+dd 0e522af67h
+dd 0ec2bb71ch
+dd 001f225bah
+dd 06c93061fh
+dd 054182f27h
+dd 0a93e2a76h
+dd 03bc0e0f3h
+dd 0f36445bah
+dd 0353bc883h
+dd 0832a555ah
+dd 0af0e2ff6h
+dd 081d626d9h
+dd 0c6980c0eh
+dd 07af354e4h
+dd 0f734e15bh
+dd 0f8224e5fh
+dd 02e8180bfh
+dd 034a1e34bh
+dd 0ec83e225h
+dd 0a666c1ech
+dd 05c738992h
+dd 0e91a23abh
+dd 0cdd0650dh
+dd 0b80a9055h
+dd 027bfd4deh
+dd 0d77674feh
+dd 0298dd180h
+dd 0bb385236h
+dd 0032de090h
+dd 0187246c6h
+dd 01344fa55h
+dd 0df219ee8h
+dd 031748ec7h
+dd 0ce783563h
+dd 0bdc7bc35h
+dd 07848b013h
+dd 058471b88h
+dd 0b81ab454h
+dd 02f638abch
+dd 02bc3be1bh
+dd 08610afb6h
+dd 01f08cc8ah
+dd 071cc73f8h
+dd 0012249e6h
+dd 06973c20eh
+dd 044f8f0bbh
+dd 0bd833e48h
+dd 044461276h
+dd 003425d33h
+dd 0a9e1d570h
+dd 0d8153e40h
+dd 0a0c87ae4h
+dd 0908ef81ch
+dd 0301954f3h
+dd 0af581912h
+dd 086813a3bh
+dd 0bebd6561h
+dd 028741ecdh
+dd 08f38e50dh
+dd 0d88c491dh
+dd 0e6c0d0bah
+dd 077febcedh
+dd 0f22cb7cdh
+dd 0e4cee51ah
+dd 05449cd22h
+dd 094c20a8fh
+dd 00aa1f132h
+dd 072d83f15h
+dd 07d68333fh
+dd 0ef3112a3h
+dd 0cffd2b79h
+dd 01fd038f7h
+dd 01bb360ceh
+dd 0edc78a7ch
+dd 09e783539h
+dd 012b6de4fh
+dd 07c425834h
+dd 0cb5b7343h
+dd 0147bb3f0h
+dd 08dd583e0h
+dd 0e0ceec1ah
+dd 0a787fcb1h
+dd 0763f663bh
+dd 076475543h
+dd 0a4e766b7h
+dd 0a593916fh
+dd 0df26bdabh
+dd 0b5dd576bh
+dd 0f7f361c3h
+dd 0f2ed5b59h
+dd 07acc19ech
+dd 08fe1d706h
+dd 0113ba8fch
+dd 01cc7c10eh
+dd 0e5a6b8e6h
+dd 0ab7fb016h
+dd 0cc61cc2ch
+dd 08d7eeefah
+dd 06026749fh
+dd 0da78e985h
+dd 09fc1f992h
+dd 06c92ae94h
+dd 05b6497a3h
+dd 0070b2fd0h
+dd 01d90917eh
+dd 0feca0d82h
+dd 05ea9913bh
+dd 0a4791bd1h
+dd 01397360fh
+dd 05d4526ech
+dd 06ed1f7f8h
+dd 074d86818h
+dd 0efee5993h
+dd 079b78220h
+dd 04b2c606bh
+dd 0d29ba7c3h
+dd 08e21c7d5h
+dd 02692557ch
+dd 058d5d11ah
+dd 045a6f5cfh
+dd 09f66387eh
+dd 089d301e7h
+dd 04e00949ch
+dd 0a4f77f0ah
+dd 0fefaef03h
+dd 0bd3c9f64h
+dd 06943499bh
+dd 05f3c05c4h
+dd 000f32871h
+dd 0d2287892h
+dd 02d757f8bh
+dd 0354cfc16h
+dd 0fc4c716fh
+dd 08d1a6e82h
+dd 04d51598dh
+dd 0a885e4a8h
+dd 0fdd8d993h
+dd 053aeab9dh
+dd 0167dcec1h
+dd 0a9388197h
+dd 09340ca02h
+dd 0cc02962dh
+dd 0cfc4fd1ah
+dd 014eb430eh
+dd 0187b84abh
+dd 031f022aah
+dd 0924048cbh
+dd 01b02628fh
+dd 00997876ah
+dd 0a217eb21h
+dd 03c79939ah
+dd 0f741e1e9h
+dd 054562c3bh
+dd 000ba0134h
+dd 0e4407f05h
+dd 0f8edc284h
+dd 0765e832dh
+dd 0b4d7f408h
+dd 03a895bdch
+dd 0a29c4a1bh
+dd 0d81c68cch
+dd 00c1c2bc2h
+dd 0e9b3a5eeh
+dd 01886f8d0h
+dd 00d821a73h
+dd 07c3e8643h
+dd 098c0d9fah
+dd 0a7eae0fdh
+dd 03ddc2ddch
+dd 087fc1884h
+dd 0267c484eh
+dd 068289362h
+dd 0f3aa7aach
+dd 0d38babebh
+dd 07a934434h
+dd 0daf68dbch
+dd 09483a2a2h
+dd 0cb3d0035h
+dd 0644db8d1h
+dd 0d5b59579h
+dd 09e8a6d0eh
+dd 0f7e39ca9h
+dd 0c4554b55h
+dd 048a6c027h
+dd 06ddec899h
+dd 02a6b31b5h
+dd 08663e41eh
+dd 06d3f4070h
+dd 0adf24566h
+dd 0cd95246ch
+dd 03dba0d10h
+dd 0ad260477h
+dd 0cf2b8659h
+dd 0567872d2h
+dd 0bcd5a740h
+dd 09ab4c161h
+dd 0cad08fdfh
+dd 06750e2adh
+dd 06c0c917eh
+dd 00eef0c92h
+dd 04909c964h
+dd 06d506477h
+dd 0924e4829h
+dd 0d4820326h
+dd 0af2d5934h
+dd 07289b7e9h
+dd 08b76089dh
+dd 00be0ee2dh
+dd 096bc09a3h
+dd 0825354e0h
+dd 036a6b725h
+dd 0c2f04ab3h
+dd 0693a5048h
+dd 0205360d0h
+dd 091c0e360h
+dd 07ccbc3aah
+dd 03ec3bad3h
+dd 0bb3f310fh
+dd 0fcd44f4fh
+dd 03da10de7h
+dd 04266ca3eh
+dd 0b035b5c9h
+dd 0c4db1950h
+dd 0d9a40883h
+dd 0fbb0ff37h
+dd 06ce2deeeh
+dd 011320043h
+dd 08f4b48e7h
+dd 09cfa2ed7h
+dd 0fd855e87h
+dd 052665a2bh
+dd 0273f4952h
+dd 031d2acceh
+dd 05d9dc0f6h
+dd 04393783bh
+dd 0f3bc99ddh
+dd 04c5ed6e5h
+dd 0c807bef8h
+dd 02506b125h
+dd 0f9ab8fb9h
+dd 01d390399h
+dd 050d5ecefh
+dd 07140519ah
+dd 00ac88fbdh
+dd 05dfed108h
+dd 0db69d9bbh
+dd 0dfecc6bah
+dd 06143f4beh
+dd 02fb1e2fch
+dd 01778575ah
+dd 0d3942889h
+dd 06444e955h
+dd 00adddcdfh
+dd 0ae5dd4d0h
+dd 03cf65353h
+dd 0dd180681h
+dd 086431f7ah
+dd 07c230776h
+dd 0244b0bb0h
+dd 0f3137b43h
+dd 0531f566eh
+dd 0d75ccf36h
+dd 08311a6aah
+dd 01b4075efh
+dd 072747dbbh
+dd 0505de260h
+dd 041105b4fh
+dd 0a5a6bcb5h
+dd 077e99df0h
+dd 0c70a9d42h
+dd 081b46325h
+dd 0076df310h
+dd 0a63c4c39h
+dd 0079458cfh
+dd 0f7d5eec9h
+dd 06cccc4cbh
+dd 0c3342361h
+dd 0a157c968h
+dd 03c234909h
+dd 0fb703521h
+dd 077bea136h
+dd 0944dc0f1h
+dd 07559eaaeh
+dd 0561b8c04h
+dd 0188dc796h
+dd 08547d3fch
+dd 0e2e2255dh
+dd 05002c11fh
+dd 0653076f2h
+dd 095f69797h
+dd 085f79e40h
+dd 01f246484h
+dd 0f484393dh
+dd 01a1fe9d7h
+dd 0465d9031h
+dd 0786a166eh
+dd 03f83cfaah
+dd 07772236ah
+dd 027fdfc5eh
+dd 0e30d1229h
+dd 02f7c7192h
+dd 01dd9c3aah
+dd 062c9db9ch
+dd 027fa2f4ch
+dd 04b5b96cch
+dd 09f4c5847h
+dd 00b956567h
+dd 0668b8fd6h
+dd 0efd96525h
+dd 05c6cf255h
+dd 0bdc27a04h
+dd 08cfee340h
+dd 0c4a32275h
+dd 044ce0679h
+dd 08e68e081h
+dd 0bddc1f53h
+dd 0d3eed666h
+dd 075501327h
+dd 0cfb48ed6h
+dd 0193ee69eh
+dd 07a4cf484h
+dd 0d0ad8df0h
+dd 0fee68285h
+dd 046895f32h
+dd 021abae3ah
+dd 06af19343h
+dd 0c2c3f224h
+dd 04fe84b72h
+dd 048dbc39dh
+dd 09498b28fh
+dd 0b760a2ffh
+dd 0c8aba4f9h
+dd 021cafcfah
+dd 04f0894c4h
+dd 012023fc4h
+dd 025f3e60ah
+dd 01c34e48eh
+dd 0ab8860ach
+dd 05a0e9055h
+dd 039c36b72h
+dd 03f0618b8h
+dd 097a60016h
+dd 023dc3044h
+dd 044f14b16h
+dd 0a7f9ad41h
+dd 053a5cb28h
+dd 038d0b1fdh
+dd 067d61ae9h
+dd 08774487ch
+dd 03b3c711ah
+dd 0eb1dcbd3h
+dd 03da64c42h
+dd 0668b420ch
+dd 0ab76da5ch
+dd 00e272412h
+dd 0be5ccd8ch
+dd 0f765fb5fh
+dd 0df25bef0h
+dd 0b9d70c65h
+dd 015e2bd21h
+dd 0687ac647h
+dd 05ff1ad47h
+dd 05c8e968ch
+dd 0b8f0e61eh
+dd 0eea01e7ch
+dd 07736a7cfh
+dd 045b80f31h
+dd 0c7a19ce4h
+dd 01d01e6f7h
+dd 0fde7f89dh
+dd 082cb5fddh
+dd 0b725155eh
+dd 08e41c5ach
+dd 05d64458fh
+dd 05b1fbdb6h
+dd 05049d7a3h
+dd 05f109c92h
+dd 01f907441h
+dd 0ba210abdh
+dd 0ea5fc983h
+dd 039d61569h
+dd 02d40681eh
+dd 06c4421c5h
+dd 0c335f68ch
+dd 094eecaadh
+dd 05474a72ch
+dd 0c2cbfc4dh
+dd 0f41f936ch
+dd 0e17c340fh
+dd 0762ffd70h
+dd 0d71960eeh
+dd 0557fc649h
+dd 041e956e3h
+dd 0a48f1991h
+dd 0c398144dh
+dd 0fd074a41h
+dd 0312fc714h
+dd 0266e907dh
+dd 05c925ee2h
+dd 077104114h
+dd 012d57108h
+dd 04b7919a7h
+dd 0e6f92197h
+dd 07e97eab5h
+dd 046082bfdh
+dd 0e2c92f90h
+dd 0432957b8h
+dd 013711de4h
+dd 0a10f98efh
+dd 00620cce2h
+dd 0380e2f90h
+dd 02f6348cbh
+dd 0292fe1aeh
+dd 0555c936bh
+dd 031e7cbf0h
+dd 06c9e9d3fh
+dd 0d89596f7h
+dd 0189d7130h
+dd 081c19f1fh
+dd 02496d1a6h
+dd 098ddb2c4h
+dd 02e2683cch
+dd 023dbc79eh
+dd 0642fd724h
+dd 051e27a34h
+dd 058953639h
+dd 0107cad7fh
+dd 0118211e1h
+dd 0d5267d38h
+dd 0e8bf6d22h
+dd 0147acd77h
+dd 060a76068h
+dd 01220f6b0h
+dd 038a2ed98h
+dd 056ddf69ch
+dd 0a9d0b665h
+dd 0513bc71ch
+dd 0c4a888feh
+dd 027e777d8h
+dd 057a2004ah
+dd 0832be2c8h
+dd 0cdaed07dh
+dd 041e9ec54h
+dd 0ed7f3de7h
+dd 072be14dbh
+dd 0f535ae1eh
+dd 084a23968h
+dd 0291f81c6h
+dd 04f7a1e14h
+dd 0e75c814dh
+dd 02015d56ah
+dd 0de6e0540h
+dd 0147a5e12h
+dd 007a9a6ebh
+dd 04f1b948fh
+dd 00fe6d324h
+dd 039a0cabbh
+dd 014a4e70fh
+dd 049f33bb1h
+dd 06feb8937h
+dd 09c572bbeh
+dd 08e09a637h
+dd 094db7bc0h
+dd 04a291694h
+dd 0c804d186h
+dd 0bc5ea077h
+dd 085db0a79h
+dd 06da6ff44h
+dd 0293fedadh
+dd 0bfd36607h
+dd 06841a79ch
+dd 04f227efah
+dd 03e629501h
+dd 05dda5c50h
+dd 0250177bch
+dd 0365e25ebh
+dd 0ef3b4513h
+dd 019f44255h
+dd 0af580d43h
+dd 09931699dh
+dd 01f4d2b12h
+dd 05d86755ch
+dd 03201cfeah
+dd 0303813c4h
+dd 02fa19530h
+dd 0ade287c9h
+dd 0a3ce9a70h
+dd 0d463ebd2h
+dd 079d37438h
+dd 080ce55bdh
+dd 02bf7e0fdh
+dd 0ed3beac6h
+dd 0f80499cch
+dd 0bff07a57h
+dd 099554f3bh
+dd 0bba1dd0eh
+dd 0c3388fa3h
+dd 06e18c1d0h
+dd 0ba388c6dh
+dd 08f96eba3h
+dd 0c34db840h
+dd 0a1c6384dh
+dd 0ef165721h
+dd 071374467h
+dd 01aad6a10h
+dd 0c0fb646eh
+dd 0ab581b06h
+dd 0f334a852h
+dd 0a938c12bh
+dd 006080bd4h
+dd 0d630f9e2h
+dd 00bc92fcdh
+dd 005eccea2h
+dd 095292175h
+dd 008d0e3cbh
+dd 067974121h
+dd 0a4b01b15h
+dd 051e7607eh
+dd 098de0f0ah
+dd 0ba24fc98h
+dd 0ba642affh
+dd 003774cfdh
+dd 05f708aa9h
+dd 0b1c34782h
+dd 020e038b3h
+dd 0dfa749d3h
+dd 004e6b4aeh
+dd 05f1165fbh
+dd 09142109dh
+dd 021fcbaceh
+dd 0e8e85453h
+dd 05c22fa29h
+dd 06c75fa5bh
+dd 09f4bb83fh
+dd 05b63f02ch
+dd 0de9efd9eh
+dd 059167510h
+dd 058abc9e6h
+dd 0c3fe5bach
+dd 08dc94452h
+dd 0d44c9c57h
+dd 00e85eedah
+dd 039e33308h
+dd 0a220b990h
+dd 0a03deb5ah
+dd 08522a87bh
+dd 028fc867ch
+dd 0005f6d71h
+dd 03beeeaa6h
+dd 099f8abf2h
+dd 09c7c005ch
+dd 0e2f8b789h
+dd 037a61d5ah
+dd 05d262827h
+dd 00a210368h
+dd 0c84d6baeh
+dd 0e3dddaa3h
+dd 073767bbeh
+dd 086e9f881h
+dd 0a9e137f8h
+dd 09428fd79h
+dd 07a708c96h
+dd 0ce2491c9h
+dd 0b4cb050fh
+dd 017b31cbbh
+dd 0da5902c1h
+dd 0a130fef7h
+dd 0daf617c1h
+dd 078707cffh
+dd 05de14f79h
+dd 0f1dda086h
+dd 0ab8f496dh
+dd 054efadfdh
+dd 03570c9a5h
+dd 08b56cbe6h
+dd 028acc059h
+dd 0eae6dd77h
+dd 08a649198h
+dd 0aa3cede0h
+dd 090a93238h
+dd 0b8459f93h
+dd 05b64de1ch
+dd 0024f4422h
+dd 0a2fc1e5fh
+dd 04a3ab4eah
+dd 01f7a8a1ch
+dd 0c36b0c3ah
+dd 04399325eh
+dd 0ea7aeda3h
+dd 065f2f9d3h
+dd 067d5a311h
+dd 0be5ca0d6h
+dd 0427b863ch
+dd 07129ef8dh
+dd 0c72886f2h
+dd 06ef1b416h
+dd 022549743h
+dd 0164fb233h
+dd 0449139d0h
+dd 0a4b38508h
+dd 00567ef38h
+dd 0f43e0b4ah
+dd 02ff13894h
+dd 0e413db97h
+dd 031c6b11ch
+dd 084539765h
+dd 03b9b82c7h
+dd 049c87813h
+dd 0f5e8692dh
+dd 008cc39fbh
+dd 0ae97612bh
+dd 0de0bae14h
+dd 01f859b2eh
+dd 03b9eafe3h
+dd 0ed8d76a1h
+dd 096eec8deh
+dd 0abba9831h
+dd 09e172dc0h
+dd 0362079e5h
+dd 0751b6444h
+dd 0bf4f1418h
+dd 094145e80h
+dd 0fa63689eh
+dd 01528f5d1h
+dd 0bdf82df4h
+dd 0eeaf9e31h
+dd 0634b65c8h
+dd 016358a26h
+dd 02d729ec1h
+dd 09a910902h
+dd 068205bf5h
+dd 0d971a53dh
+dd 098a0b35ah
+dd 020aa97f4h
+dd 02f3f1683h
+dd 085b0e6cbh
+dd 05a439670h
+dd 0f517e166h
+dd 09cc98a5ch
+dd 026813c74h
+dd 081fc91f5h
+dd 09e8141e2h
+dd 069e39f8eh
+dd 09f4b6c62h
+dd 0a959055dh
+dd 03c4d05cdh
+dd 03ff133c2h
+dd 05cae30fch
+dd 0b5909d2dh
+dd 023b3557bh
+dd 00df4270fh
+dd 0649b4a0ch
+dd 0fd510bd2h
+dd 00c452dd7h
+dd 093df255eh
+dd 0bc6c557bh
+dd 01f546638h
+dd 0e823a9ebh
+dd 0073430f0h
+dd 05855e3b9h
+dd 02e463c44h
+dd 089e2e85ch
+dd 0c4e9ce24h
+dd 0f4929c7ch
+dd 0071ff6dah
+dd 003381e8fh
+dd 03e60448bh
+dd 0e507730fh
+dd 00a6e15d5h
+dd 041997588h
+dd 0631847fdh
+dd 0dfe356aah
+dd 042cd84ffh
+dd 00a93b85bh
+dd 0fecd364bh
+dd 0355d22f6h
+dd 007a4b501h
+dd 0e4e7518eh
+dd 058a3b5e2h
+dd 0285c263dh
+dd 065590f6eh
+dd 082568230h
+dd 0ef05bffdh
+dd 0683937b3h
+dd 07fa67cebh
+dd 0a36cb5beh
+dd 01bef3304h
+dd 0220fec23h
+dd 0cc55d408h
+dd 0960c2101h
+dd 0fa399ca8h
+dd 0d905a312h
+dd 03de94ccch
+dd 0e1452f5ah
+dd 0faf914edh
+dd 08a83be64h
+dd 0ed80550dh
+dd 0e7ae96e8h
+dd 01683b7aah
+dd 0c7844518h
+dd 08c8d169eh
+dd 001d0b20fh
+dd 0c7866893h
+dd 00966c274h
+dd 02ed66909h
+dd 09d60a7c7h
+dd 0c8a0a8a4h
+dd 0ef52f4a7h
+dd 00b801ba3h
+dd 044140e43h
+dd 0ceccbcffh
+dd 07aa953d1h
+dd 025475710h
+dd 05bf91490h
+dd 01036c635h
+dd 0297fe902h
+dd 084d43da6h
+dd 0d118b921h
+dd 084018ca5h
+dd 0984b9c9ch
+dd 0fe4b716eh
+dd 0e860be25h
+dd 04aa5e028h
+dd 0f47888b7h
+dd 0a8eb7ae9h
+dd 05b179260h
+dd 0d517a24fh
+dd 0bbd43371h
+dd 047b97aedh
+dd 05c36dea4h
+dd 0e8d7bf76h
+dd 0b1e5f0f3h
+dd 04d5cb4e4h
+dd 03aa3bc36h
+dd 0a3a36269h
+dd 0711ec46bh
+dd 07888c355h
+dd 04a2ed839h
+dd 0172581dah
+dd 08b9d7901h
+dd 0eb18aa76h
+dd 019cd4dc0h
+dd 01bb164cfh
+dd 0f5908ad0h
+dd 0b142d428h
+dd 0f4ae6c6bh
+dd 0b264bcd7h
+dd 08c95eccbh
+dd 0f19aa2f8h
+dd 0bacb129bh
+dd 0aef3ef57h
+dd 027f86716h
+dd 0274fc433h
+dd 05160a6c1h
+dd 0db289616h
+dd 098eb9d84h
+dd 01ceb4068h
+dd 0726aebbch
+dd 00b1d5342h
+dd 07f69ec1ch
+dd 00b72515fh
+dd 0d342446ch
+dd 0cdf255fah
+dd 0c1cd1d58h
+dd 06f5935bdh
+dd 07e6754dah
+dd 0305850edh
+dd 04abece29h
+dd 0b8379880h
+dd 02b39a69eh
+dd 0641e5a71h
+dd 016e8d105h
+dd 09e3bb0d2h
+dd 033df667fh
+dd 05d8ea259h
+dd 0a00621ebh
+dd 049a6a748h
+dd 07ebce9a4h
+dd 020830e24h
+dd 019309f05h
+dd 0cc7bab21h
+dd 022498abeh
+dd 0e0b9746ah
+dd 0750504c4h
+dd 029992060h
+dd 0fba80855h
+dd 0f9d8b412h
+dd 0efb65d43h
+dd 026cb04bdh
+dd 0781f27b0h
+dd 08cc682dfh
+dd 0c9fb6fc5h
+dd 07140f580h
+dd 02a30fadch
+dd 0f196a5cch
+dd 0d0165f0bh
+dd 0ca98121dh
+dd 0168d8747h
+dd 06a882effh
+dd 03c6f99dfh
+dd 04d90d8dah
+dd 0c2f8b0f4h
+dd 01464bda2h
+dd 0efb1f713h
+dd 0d742427fh
+dd 07cb3db69h
+dd 09acd6a6dh
+dd 0e6a34f52h
+dd 095b037a9h
+dd 0cafbca0ch
+dd 0db5b4c69h
+dd 0619bf361h
+dd 082b9aeb0h
+dd 05ee687c9h
+dd 0b01f0c95h
+dd 0302ce459h
+dd 08f1fd7a2h
+dd 0e90954bfh
+dd 0a5493a72h
+dd 0769bf49dh
+dd 0b4e89b37h
+dd 0f4b649cfh
+dd 02fac1ef0h
+dd 0c771965ah
+dd 0cbc41255h
+dd 0bc99c44fh
+dd 0b5e017f3h
+dd 0e68275adh
+dd 075750eb7h
+dd 083cdd31ah
+dd 0644bb92dh
+dd 00bcf527eh
+dd 0fc865ffch
+dd 032a4afa0h
+dd 09fe08c37h
+dd 0ef9d334ch
+dd 077cab154h
+dd 0a74e7a0dh
+dd 0b7cd2cc3h
+dd 0761d903ah
+dd 0b3d69646h
+dd 02636da1fh
+dd 0668f0508h
+dd 0f1efa220h
+dd 0cd541ac3h
+dd 0f843df11h
+dd 043e2dd32h
+dd 0705c2155h
+dd 0a60465a9h
+dd 0a49e3d41h
+dd 09569dc5ch
+dd 0dd24b2d0h
+dd 078730a79h
+dd 0b6a77e86h
+dd 075905962h
+dd 03ed9a627h
+dd 07509c0b8h
+dd 04257a6b1h
+dd 0d48d110fh
+dd 0d6b2b6feh
+dd 0458ea071h
+dd 0b166949bh
+dd 043033ccbh
+dd 0832946ebh
+dd 06126db6bh
+dd 05bb06f42h
+dd 09c6b2adah
+dd 034d43bc7h
+dd 06d3e7a66h
+dd 0cb46cf8ah
+dd 0a4ee7ed6h
+dd 0b74a5304h
+dd 09d14c1b3h
+dd 0a776f1aah
+dd 0c250999fh
+dd 065aa9e34h
+dd 05117f96eh
+dd 0b83a1615h
+dd 01da90d9ah
+dd 03b9db8cdh
+dd 02b759cach
+dd 08c6274f5h
+dd 0e11d3082h
+dd 0eca1267ch
+dd 069d6b052h
+dd 0aec7ef9fh
+dd 0df3d7458h
+dd 0ea63d7c2h
+dd 021e9c104h
+dd 08a1b75bah
+dd 01061e5f2h
+dd 083621119h
+dd 0b074e55fh
+dd 0574c955fh
+dd 0db163d47h
+dd 0fa71bcc6h
+dd 0909b05d4h
+dd 0e59d2647h
+dd 0d9b63afah
+dd 054ee0792h
+dd 055b2ced5h
+dd 0e0a3617bh
+dd 0db8c6f24h
+dd 0e21e0a16h
+dd 0c4cad5eah
+dd 067d250e2h
+dd 00bbb6ecfh
+dd 058193632h
+dd 07118d877h
+dd 0612963c5h
+dd 03e9bd7ddh
+dd 0a1794bd4h
+dd 01085b70ch
+dd 053b100e5h
+dd 0972b4e40h
+dd 038623727h
+dd 029b6a246h
+dd 02ea09c87h
+dd 0cd2fbdd9h
+dd 0a287bbd5h
+dd 0069bb435h
+dd 060e6011ah
+dd 05da41990h
+dd 04c5e7de2h
+dd 035222f58h
+dd 0caa96391h
+dd 0ab6383a0h
+dd 0c40d4ea9h
+dd 067008e51h
+dd 042be74a5h
+dd 0d741734ah
+dd 03b040a1ah
+dd 0bfc59e10h
+dd 00481e744h
+dd 09371535fh
+dd 0ff043c30h
+dd 0646e0280h
+dd 06c06cfdah
+dd 0fc789d60h
+dd 083730252h
+dd 010127585h
+dd 09016695fh
+dd 041d3bd67h
+dd 070c43311h
+dd 0845731f3h
+dd 03bb5f34ah
+dd 09945f86eh
+dd 0c3332ce2h
+dd 02cc6f3f9h
+dd 0ee335730h
+dd 09aa67811h
+dd 0b94dbb05h
+dd 0cb70bcd1h
+dd 079beb49bh
+dd 0f9b8031bh
+dd 0d8472991h
+dd 0b7dda535h
+dd 02bcae73eh
+dd 0cb05fe64h
+dd 00b0ecf6bh
+dd 01542d7b3h
+dd 0c51f20c7h
+dd 0f84a170ah
+dd 088a32743h
+dd 047a4540eh
+dd 098330213h
+dd 0cc5d0064h
+dd 0f5092ae4h
+dd 02540e12bh
+dd 0d1caa6cah
+dd 0de8804dfh
+dd 0dd572ad5h
+dd 0e9e91ee4h
+dd 00f57c2f7h
+dd 03c7e0ab8h
+dd 0a1e7a54ch
+dd 0e5862188h
+dd 0c45be47ch
+dd 01223494bh
+dd 015859d19h
+dd 098031dd9h
+dd 05fa39297h
+dd 09afd1cafh
+dd 012298665h
+dd 01f0c06a1h
+dd 061bff995h
+dd 030552565h
+dd 02eacea2eh
+dd 09eca552fh
+dd 01b770645h
+dd 0cf0db765h
+dd 0df704556h
+dd 0b8dc93a0h
+dd 05603fc40h
+dd 05772ffdfh
+dd 0b1f8d4c2h
+dd 0c9f217a2h
+dd 0188fdf26h
+dd 0df268aa7h
+dd 09b24d2a1h
+dd 00db83f49h
+dd 08419be3dh
+dd 092778733h
+dd 08ca4c261h
+dd 081797bb3h
+dd 0a7e36d84h
+dd 0cdb31849h
+dd 0a917132ch
+dd 03bc0fdf1h
+dd 07d611bf7h
+dd 0c6829bddh
+dd 000e293d7h
+dd 04772fe31h
+dd 070953516h
+dd 0f8d5d6beh
+dd 05ce05ae9h
+dd 0cc0c4c83h
+dd 07553a3e7h
+dd 0b351e8e8h
+dd 00d970fd0h
+dd 022c34772h
+dd 03bc8fb27h
+dd 0fa0ab737h
+dd 06bf16a47h
+dd 0f7348bb2h
+dd 0fac9a9c1h
+dd 09a4fc48bh
+dd 026e174b7h
+dd 0869acd3bh
+dd 0e891caceh
+dd 04bdbc356h
+dd 0448197f5h
+dd 0c2a18eceh
+dd 04f5153a6h
+dd 0720b4263h
+dd 0f276e6bfh
+dd 0ce7ff292h
+dd 08cfdd32eh
+dd 0ad376390h
+dd 06638ee3ah
+dd 08e5e05bdh
+dd 05966db12h
+dd 0fefd5c7bh
+dd 0db11fba3h
+dd 083525a76h
+dd 099236a9eh
+dd 034a8cc7fh
+dd 0cfe961b1h
+dd 0ba9a28dah
+dd 0293f117eh
+dd 077fc8726h
+dd 0ec486de3h
+dd 06a2cebc3h
+dd 096b4eea9h
+dd 039bbb20ch
+dd 0b761a4c3h
+dd 0ed5fd3f5h
+dd 0acaa4d6bh
+dd 08d64e2abh
+dd 07894f7e3h
+dd 0d49c8937h
+dd 015992892h
+dd 0e1c2047ch
+dd 0fee75c1eh
+dd 07daba210h
+dd 0e115a089h
+dd 0497a87c6h
+dd 0c6478f7fh
+dd 04654aeaeh
+dd 0de888644h
+dd 0de7c3ce6h
+dd 0739125cdh
+dd 065bdde84h
+dd 02753e10fh
+dd 010c60b52h
+dd 0b0e90a5ch
+dd 0f3c90700h
+dd 059539b63h
+dd 0049f9bebh
+dd 0ff0a483fh
+dd 062375132h
+dd 0fd15768ch
+dd 02843c6d0h
+dd 0cefb95c5h
+dd 0778df39ah
+dd 0d1d96cd7h
+dd 0e3f6573eh
+dd 0b3ffb324h
+dd 057741213h
+dd 0b08fb2bbh
+dd 090c1424dh
+dd 0a78fe7e4h
+dd 09247e0fch
+dd 0d5d985cah
+dd 0cbdc1740h
+dd 0e172e1bbh
+dd 052694253h
+dd 04829f7aeh
+dd 0bb9b1b9ch
+dd 0e2cb8457h
+dd 0d039f30bh
+dd 033bbade3h
+dd 0f9fee3b0h
+dd 0bcfab722h
+dd 01f6bcc8dh
+dd 010321a99h
+dd 077839871h
+dd 07fec8174h
+dd 08acfb06bh
+dd 0ed13a9b2h
+dd 0d4889bbbh
+dd 0b5ff2dfah
+dd 05e01224ah
+dd 066dd2760h
+dd 03058da18h
+dd 03c3f974ch
+dd 05fbbe665h
+dd 0e041aaa8h
+dd 0003c113eh
+dd 00a212912h
+dd 065533aceh
+dd 0bb76ebf2h
+dd 075bcd5e1h
+dd 0dfce67e4h
+dd 0de9bd347h
+dd 0bfcd48f1h
+dd 00bd5bc72h
+dd 09a9ba2b9h
+dd 0d744b1f3h
+dd 01929db18h
+dd 0b315aad1h
+dd 0bd6aa198h
+dd 0549cda7ch
+dd 035909a18h
+dd 0b349117bh
+dd 04b3cfa45h
+dd 02d47b9e8h
+dd 0af11b9fah
+dd 0b6c66d21h
+dd 0e10d0a1ch
+dd 0dd799ac5h
+dd 0aa772e00h
+dd 093fb68a8h
+dd 07f97fc3bh
+dd 09a94c044h
+dd 03ebefd11h
+dd 038e2b495h
+dd 0479aa087h
+dd 07bb724f7h
+dd 068e63215h
+dd 0d4818540h
+dd 02997d6cah
+dd 035fc4a6ah
+dd 0db34b133h
+dd 07211b68eh
+dd 0ba3df3dfh
+dd 0ba84330fh
+dd 0604de666h
+dd 01ac4a661h
+dd 0a8a35835h
+dd 0d02bdf0dh
+dd 026de1d7ah
+dd 02a59c7ebh
+dd 0b2f68f02h
+dd 0904b65f9h
+dd 0862f41eeh
+dd 053dddf4bh
+dd 0407a0e90h
+dd 0ac897e56h
+dd 0c76395b8h
+dd 0f87fbc90h
+dd 01e1f3c10h
+dd 036994d13h
+dd 0a913c365h
+dd 0706d9261h
+dd 085e40981h
+dd 08015ffd1h
+dd 0487715aeh
+dd 041790edeh
+dd 0d2e6a39fh
+dd 0a20985d2h
+dd 099dc0fe6h
+dd 00ff9e240h
+dd 04219ce90h
+dd 0fbd5bdf7h
+dd 0a904f396h
+dd 01c21d33eh
+dd 09f1f2e79h
+dd 095e9cfd4h
+dd 07e8ec479h
+dd 06400f389h
+dd 036a41651h
+dd 0979cd555h
+dd 03b8137c6h
+dd 06ed3a55dh
+dd 036739ce1h
+dd 00a6f4e2fh
+dd 0cddafe67h
+dd 0797c8a6eh
+dd 06adb496dh
+dd 05c563cf8h
+dd 0ced015e7h
+dd 0e2403074h
+dd 0e9431b9fh
+dd 0d9fbcc35h
+dd 09512ba14h
+dd 034500950h
+dd 00004c9b7h
+dd 01713410eh
+dd 0c8aff03dh
+dd 03675ba43h
+dd 0317273d4h
+dd 065e9d0c1h
+dd 0d0b12c9fh
+dd 041ebdc31h
+dd 02a7b5ae6h
+dd 0cedec8edh
+dd 014fade73h
+dd 0b165107bh
+dd 009dd259eh
+dd 09a9781f1h
+dd 03017693bh
+dd 04cb1b36ch
+dd 0deb4bd23h
+dd 09773c33bh
+dd 096bdde08h
+dd 02db3a976h
+dd 0d21d9d25h
+dd 05bb1a944h
+dd 041203b7ah
+dd 074849ac2h
+dd 0e7a893c9h
+dd 047b34a81h
+dd 0949c7dffh
+dd 0c1c0428ch
+dd 051cd068ah
+dd 02dfdd132h
+dd 032b42193h
+dd 0c8e01878h
+dd 04d34252dh
+dd 0138d26dah
+dd 01b5924f7h
+dd 0e6655a9ch
+dd 0ca1ff280h
+dd 0157f2539h
+dd 01ea9dc1bh
+dd 06163eb45h
+dd 0256f4ae3h
+dd 0a3b0d77ah
+dd 04e6ddb47h
+dd 061d70df5h
+dd 06f9f13f2h
+dd 0d2ef8d10h
+dd 0a97cc379h
+dd 0fed31f88h
+dd 009670f94h
+dd 0038c434ch
+dd 0e201674eh
+dd 048f3df77h
+dd 0a808b5c0h
+dd 0c60dda2eh
+dd 038bccc3eh
+dd 0be9bcbbfh
+dd 05c23161dh
+dd 054325dbbh
+dd 086521978h
+dd 073ce0148h
+dd 0faf10368h
+dd 0bf19342dh
+dd 0fd7d9e8bh
+dd 04aa61e97h
+dd 088a726e8h
+dd 0ba9f5d8bh
+dd 042b3597ah
+dd 0fa7e686bh
+dd 0fa885fa1h
+dd 0bb454017h
+dd 03355d784h
+dd 06ed7cf51h
+dd 007739aabh
+dd 07ecf1a7ch
+dd 0b260791ch
+dd 00e7edfcbh
+dd 09fcde726h
+dd 01a6a434bh
+dd 0607cc3c5h
+dd 08c99e0f3h
+dd 0c3a70a5bh
+dd 018aeadc4h
+dd 09a36538fh
+dd 097151350h
+dd 07829caa1h
+dd 018b8fba0h
+dd 08888d116h
+dd 094cdac0ah
+dd 0b33bcfd7h
+dd 0d284d828h
+dd 087d762c0h
+dd 0affd9626h
+dd 03d77047dh
+dd 06109f400h
+dd 03e75ca26h
+dd 066a4aaf4h
+dd 0eda868b3h
+dd 0a027bc5fh
+dd 05ebf7228h
+dd 088209c72h
+dd 064bc34bah
+dd 029e761c3h
+dd 026c18a82h
+dd 083bd9334h
+dd 09fb2ea2ch
+dd 003d97e59h
+dd 0ac56600ch
+dd 092bc55eeh
+dd 066f3098fh
+dd 0431da218h
+dd 0f99a8ecbh
+dd 02e6099c0h
+dd 072f8fd2eh
+dd 002713544h
+dd 02e36a89bh
+dd 037740743h
+dd 0d05cb4afh
+dd 00fae2c59h
+dd 000ed3d4fh
+dd 02fb5fc70h
+dd 02c7bca00h
+dd 023534e1eh
+dd 03e4d5d47h
+dd 0c8cb3ffeh
+dd 03b3e699bh
+dd 00d9fa959h
+dd 07c3e98ddh
+dd 0d6aad378h
+dd 0c997437bh
+dd 0bd81334ah
+dd 0af02c854h
+dd 05cbe9955h
+dd 0de45d5dbh
+dd 09496dacbh
+dd 0c8778ebch
+dd 0c155baa1h
+dd 06861207ch
+dd 0ed1b8565h
+dd 08b5b44a1h
+dd 06add5507h
+dd 06c35f64bh
+dd 0343d1770h
+dd 05d72b7b6h
+dd 00496a419h
+dd 048d6b909h
+dd 0c508b7d3h
+dd 0b67e4bb3h
+dd 06d7b6f80h
+dd 0f7d56f7bh
+dd 009b7d781h
+dd 04f98e186h
+dd 02faa5919h
+dd 0935f8e51h
+dd 0503e9aedh
+dd 04869196dh
+dd 0e5f045e2h
+dd 00198695ah
+dd 0b52196ech
+dd 0494713d5h
+dd 0a812a062h
+dd 0bf2c6045h
+dd 061187188h
+dd 045d3506ch
+dd 0a2ea29f7h
+dd 0642ccd68h
+dd 0b13f1922h
+dd 0c92caf24h
+dd 051342fc3h
+dd 0743cfefdh
+dd 0d32f747ah
+dd 09d9c53ach
+dd 0f335d9e5h
+dd 0393ac95dh
+dd 0541f5f93h
+dd 0986b05eeh
+dd 0720fdb83h
+dd 0d2e9e37eh
+dd 0ef30cb88h
+dd 0b3ad703bh
+dd 0384b7fbbh
+dd 089320aa2h
+dd 09daf1bdah
+dd 0365621d4h
+dd 08f8d5287h
+dd 0f51645e7h
+dd 0faa61feeh
+dd 0287debf9h
+dd 0961778dah
+dd 0a80eadbfh
+dd 06bd3be6ch
+dd 0666a6419h
+dd 00e0f3cfch
+dd 0c53b174ah
+dd 0fd8efd6eh
+dd 0d948b2b5h
+dd 03559460bh
+dd 0dce2bfdeh
+dd 091c56e08h
+dd 0d0cfc80fh
+dd 0bfeba8e8h
+dd 056fd2a40h
+dd 09766c1f4h
+dd 09e760660h
+dd 089927ebah
+dd 04b3de39fh
+dd 0cabb81fch
+dd 07adebc59h
+dd 0e9d793fdh
+dd 054678b9dh
+dd 00e1e2e0bh
+dd 0d5b835feh
+dd 0aa5bfcd1h
+dd 0a971491fh
+dd 072d418ech
+dd 001439110h
+dd 04187b7dch
+dd 0952717bdh
+dd 041cdcc83h
+dd 079c5fa34h
+dd 0d8634fa0h
+dd 033d09b9fh
+dd 08337a674h
+dd 02bdca775h
+dd 030be9992h
+dd 02853b2d2h
+dd 0e5b7763bh
+dd 0e057785dh
+dd 0c05f2ef7h
+dd 0fa6c5f0ah
+dd 023599705h
+dd 0fcd850c6h
+dd 010134884h
+dd 0acbaaef9h
+dd 074e15027h
+dd 01368c17ah
+dd 070876c50h
+dd 0741a0bdbh
+dd 04320c2deh
+dd 051d8b95dh
+dd 0b2bb1830h
+dd 0b2549faah
+dd 059e38b88h
+dd 060959ad3h
+dd 0a4902224h
+dd 01a6e6990h
+dd 08faa6ce0h
+dd 07479da3dh
+dd 0fa2bfe65h
+dd 0e1cd484eh
+dd 05f985407h
+dd 0fc5b884dh
+dd 0fd4b7490h
+dd 0d39e48c3h
+dd 0009073a1h
+dd 08aa9df11h
+dd 091b1bb8ch
+dd 0c79c6c93h
+dd 0b815d304h
+dd 03633118ch
+dd 0cec15860h
+dd 061bf051bh
+dd 07b2eddaeh
+dd 0e1ae6e3ch
+dd 0b4d9abcbh
+dd 0a3bf3141h
+dd 0ed83e396h
+dd 0c0ff3c93h
+dd 01747086dh
+dd 048aeab6dh
+dd 039aab3b2h
+dd 02e83b324h
+dd 0334f9e0eh
+dd 07e2c2290h
+dd 0dee96e42h
+dd 069832617h
+dd 00bb7dad2h
+dd 0611abad3h
+dd 077ff317ah
+dd 029208a64h
+dd 0ff4741f1h
+dd 076b7d07ch
+dd 0db8a7e4ch
+dd 05f1a9325h
+dd 0c814b9fbh
+dd 067febafah
+dd 0bc008e59h
+dd 0d7574be1h
+dd 01df049b3h
+dd 06733bb5dh
+dd 0efe07e55h
+dd 07c941f9eh
+dd 0fdd9ae6bh
+dd 05719df54h
+dd 05817548ah
+dd 0f4813435h
+dd 0069ee86ch
+dd 0e576f694h
+dd 03c6f93bbh
+dd 0e68ec984h
+dd 00eb63effh
+dd 01d6b328bh
+dd 019fbaf1eh
+dd 0dccfabc1h
+dd 06b1a0d4fh
+dd 040d84c51h
+dd 09ae4dbceh
+dd 0c074b8c3h
+dd 0f106f7f1h
+dd 0b8ec2f62h
+dd 0b527f650h
+dd 04469aff7h
+dd 056eda807h
+dd 072db80f9h
+dd 0ecfa821bh
+dd 0909cce0ch
+dd 0eeecbbadh
+dd 0f4df100ch
+dd 03633d4efh
+dd 0ec5849c8h
+dd 08b1ebb4ah
+dd 0a3fcb213h
+dd 02322e312h
+dd 01da389f2h
+dd 0154e0df9h
+dd 0ab422c04h
+dd 09b1da234h
+dd 0c3d469e5h
+dd 05cb4823bh
+dd 023eb689ah
+dd 03840e0ech
+dd 08efb29b6h
+dd 0b3f9a3feh
+dd 038bd623dh
+dd 0a58afbcah
+dd 07c3b37f5h
+dd 0d2b0dd5ah
+dd 0cd40a009h
+dd 0244332d1h
+dd 008160ebeh
+dd 0e96a0707h
+dd 0c25ead54h
+dd 0288727feh
+dd 0a92c111fh
+dd 079c50c09h
+dd 099ac2089h
+dd 0ae44a0edh
+dd 01185ac7fh
+dd 0a50e3633h
+dd 0a0b177c5h
+dd 05aaea626h
+dd 06448b5a6h
+dd 0965be5b5h
+dd 0536bd6edh
+dd 0b457314bh
+dd 0e3ca700eh
+dd 05050ab30h
+dd 0546ba214h
+dd 09d004261h
+dd 09e96ae34h
+dd 0abcbe069h
+dd 0650c96d1h
+dd 08206b2c0h
+dd 0d5194373h
+dd 0461ef3e5h
+dd 04854c1b0h
+dd 09be5e13eh
+dd 097ed9e27h
+dd 031e6633ah
+dd 0a48ea82bh
+dd 032b46726h
+dd 099a15e59h
+dd 05a975659h
+dd 0d73f865ah
+dd 0acd31f3bh
+dd 0c64a4997h
+dd 00adc9ce2h
+dd 03ed70211h
+dd 04f7c365eh
+dd 0db794ef7h
+dd 0e0436fb7h
+dd 08df83245h
+dd 02af1dbb0h
+dd 02f6d777ah
+dd 0c6dca567h
+dd 0715bdb63h
+dd 0c6d98559h
+dd 059f0e8bfh
+dd 09cf45fc2h
+dd 0b7063d6dh
+dd 034d9f78eh
+dd 0f58a9fb4h
+dd 09f304f6ch
+dd 08c84d05eh
+dd 038aa73d4h
+dd 0a5cc70c3h
+dd 0e234f8cdh
+dd 00d396d3dh
+dd 06c76daa6h
+dd 0d50eda10h
+dd 09829c5abh
+dd 069ce8a5bh
+dd 03f5e6c09h
+dd 011ca0edch
+dd 01c7ff2e7h
+dd 05374277ch
+dd 0fc2c3f11h
+dd 05e19402bh
+dd 00780d82ah
+dd 0a4027be6h
+dd 050a08e33h
+dd 0586e6915h
+dd 0dd8b23d5h
+dd 069034f57h
+dd 03f0f0edfh
+dd 0b0537491h
+dd 0373f80f6h
+dd 020df2d5fh
+dd 004854112h
+dd 066f01975h
+dd 03fb59eceh
+dd 0a1bd71d8h
+dd 0d401bc18h
+dd 0b92f4608h
+dd 0e3355e1dh
+dd 07db702cdh
+dd 0e5daea07h
+dd 0ff3ae187h
+dd 08a819393h
+dd 0ca17fe02h
+dd 0a25c0ac4h
+dd 02826df16h
+dd 0272ba6c8h
+dd 07255a979h
+dd 09ee353d8h
+dd 07fd60dcch
+dd 0c4f46ce0h
+dd 06bd9669bh
+dd 050a57fcbh
+dd 01529ec41h
+dd 0885f8fa3h
+dd 0e7cec144h
+dd 03b179389h
+dd 072324957h
+dd 0f94d357bh
+dd 0f2420dbah
+dd 073e4b2bbh
+dd 0cd4f0e20h
+dd 0dbbc14e9h
+dd 074217abbh
+dd 06fe3f7b4h
+dd 0ab1e0ec1h
+dd 0958de6b1h
+dd 0c33230d2h
+dd 00ddf9d94h
+dd 09e3ad2d6h
+dd 093afbb72h
+dd 05b57bc26h
+dd 01eb4b7b4h
+dd 0d1ca1302h
+dd 0e7eb8bd8h
+dd 0b9114c2eh
+dd 0386db21dh
+dd 018c61e70h
+dd 0d97b5ac5h
+dd 08cc398fah
+dd 0f9b09013h
+dd 011cead08h
+dd 0129c710eh
+dd 08bdbc9b3h
+dd 038d84315h
+dd 0b112695ah
+dd 0ea11366eh
+dd 02fc097c3h
+dd 0f1016ffdh
+dd 064c14700h
+dd 0842368a2h
+dd 0826971f9h
+dd 0fd896d29h
+dd 0ee9aaca1h
+dd 06be680a6h
+dd 0cd341c5ah
+dd 066cfb7e6h
+dd 035ec68f2h
+dd 0e769ff1bh
+dd 0a6c1ac0fh
+dd 01dbe02ddh
+dd 0223b3888h
+dd 0c4c45061h
+dd 0e0ec2036h
+dd 09bf557b1h
+dd 0772d3e17h
+dd 08abf090eh
+dd 008609c08h
+dd 0834108f1h
+dd 07cbedf34h
+dd 0844a5429h
+dd 084a25e19h
+dd 06082bb5eh
+dd 04f87e88ch
+dd 06f53eafah
+dd 0f8cef5eah
+dd 0bfff22e0h
+dd 02f0274e3h
+dd 03d5c1dech
+dd 07253aa3fh
+dd 0d9d29884h
+dd 041733522h
+dd 051729b17h
+dd 092941a0dh
+dd 02eec52e4h
+dd 042202d61h
+dd 0c5cfa159h
+dd 05abd04ech
+dd 0a63dca46h
+dd 0eb8ba6c9h
+dd 00d9b40c3h
+dd 0359c3999h
+dd 072535c82h
+dd 0b4f944efh
+dd 0fd890144h
+dd 0d90e990fh
+dd 050701fadh
+dd 0ec5fd8b7h
+dd 048f81945h
+dd 02e93ebb6h
+dd 0b4755247h
+dd 0edc9e4cah
+dd 0c1e86135h
+dd 0eae4342fh
+dd 084f5ea89h
+dd 051be01cdh
+dd 0669cfb09h
+dd 0c70386a5h
+dd 0b70f1c3ch
+dd 0ee2ed211h
+dd 056931cb9h
+dd 0170b0093h
+dd 0df299e43h
+dd 0447d2bach
+dd 0c5b50a65h
+dd 0ba8da42fh
+dd 0726bc65ah
+dd 01706c8edh
+dd 01d640f4fh
+dd 0f6382066h
+dd 0d1d08e5bh
+dd 0cfb22a94h
+dd 01f178af0h
+dd 0cc27dbedh
+dd 0058b9e57h
+dd 001f9a20ah
+dd 0faa39849h
+dd 001cef6efh
+dd 0f86575ddh
+dd 084b9a1ffh
+dd 0bd49598ch
+dd 0782b7c7ch
+dd 04759bebbh
+dd 0e67f396dh
+dd 01e139ab7h
+dd 0e958f35ah
+dd 0be72446ch
+dd 0c9daba9dh
+dd 09eaac2a3h
+dd 0c05cf26bh
+dd 09a7f7d4bh
+dd 0f0d0262eh
+dd 01f8e4594h
+dd 03e1a81c7h
+dd 0ca81a618h
+dd 0ffa46638h
+dd 0a5cb25c2h
+dd 0a9047cfdh
+dd 0640c1030h
+dd 076e7370ah
+dd 08aff110bh
+dd 0af1de81fh
+dd 0d533d898h
+dd 0b28e1256h
+dd 0fcebd595h
+dd 0daf624afh
+dd 094521636h
+dd 0446c950dh
+dd 0f5dfd009h
+dd 00dc40f09h
+dd 09c67a694h
+dd 04f2cbf57h
+dd 020d5f1d4h
+dd 087821ae1h
+dd 044c8f1f1h
+dd 0ccb081e1h
+dd 05b1049fbh
+dd 08cdef2e0h
+dd 08ca73d88h
+dd 0bad2c7dfh
+dd 033af19d2h
+dd 0154eb30bh
+dd 0734c0bdah
+dd 0fc086fedh
+dd 0dbd6ba8bh
+dd 0aa64c0a4h
+dd 0672a37dah
+dd 0a07ba56dh
+dd 0440e367bh
+dd 03123f9e9h
+dd 041b62799h
+dd 0c9952558h
+dd 04e8cebcah
+dd 034709da0h
+dd 0c4c20497h
+dd 09b777f01h
+dd 0d89eafafh
+dd 05a248498h
+dd 08263152dh
+dd 09e42c212h
+dd 0b6f29ee7h
+dd 0204c1153h
+dd 093588addh
+dd 065adb52eh
+dd 02e30248bh
+dd 0e342ea0fh
+dd 05f0ac381h
+dd 016d7a46bh
+dd 0b00485e4h
+dd 04ac08077h
+dd 0e1926bd7h
+dd 0fe7d60bfh
+dd 0666e7e7fh
+dd 055dcaa98h
+dd 045c93edbh
+dd 019fcde7dh
+dd 0e549202bh
+dd 069fe1144h
+dd 0e3098669h
+dd 0d7a77d9ah
+dd 014dffe07h
+dd 02dc65a11h
+dd 010c33574h
+dd 04ac390a0h
+dd 04bcb0c80h
+dd 0290a7cc6h
+dd 01def3d1ah
+dd 09ba64993h
+dd 00fbbadf4h
+dd 0978899cbh
+dd 00ac521dah
+dd 0ae9d923dh
+dd 038d4ce33h
+dd 02608b60fh
+dd 05a6c368bh
+dd 0636b5a53h
+dd 0ab23084ah
+dd 08833c60fh
+dd 0f561cbedh
+dd 0bbfb46e5h
+dd 0969b43abh
+dd 092a35bfah
+dd 065a851d0h
+dd 0066d553eh
+dd 0500eba38h
+dd 0833bcf3bh
+dd 0855515adh
+dd 0ce800172h
+dd 0234b6baah
+dd 06d9e3a61h
+dd 0878dc5d9h
+dd 08c8fb979h
+dd 0a8edda91h
+dd 0fbc0f74ah
+dd 03e8b2dedh
+dd 074897168h
+dd 0f2ac91a5h
+dd 052c48ffeh
+dd 0dc430c35h
+dd 0cdd0c9f2h
+dd 0fb8b8be3h
+dd 0a189ba91h
+dd 0f5e28990h
+dd 0465fa933h
+dd 00e0a7cd2h
+dd 000b82675h
+dd 0efe2ce16h
+dd 065de3c98h
+dd 0ac6a83a9h
+dd 0a262f013h
+dd 0f672a6d6h
+dd 039ecea8fh
+dd 0561aadd6h
+dd 0d19e7ba8h
+dd 049b00f25h
+dd 0363d22a0h
+dd 03256d7cbh
+dd 0e980a702h
+dd 0fa0d1ee2h
+dd 0bb85a894h
+dd 01c174672h
+dd 0c390eb86h
+dd 09a03e3d8h
+dd 096b32729h
+dd 03ad6cf2eh
+dd 0800a1cach
+dd 09e7d061ah
+dd 06acbd9d3h
+dd 0acc35ff3h
+dd 013724ed6h
+dd 0e4025830h
+dd 0f58fc8bdh
+dd 05252ef84h
+dd 0336dab47h
+dd 03ebe09b8h
+dd 0df43eed9h
+dd 0bf161039h
+dd 02a8a00e2h
+dd 032b2d900h
+dd 02be4e127h
+dd 0d3555275h
+dd 0cf2645dfh
+dd 0afdca93ah
+dd 03899682fh
+dd 041a63b3fh
+dd 031ffe40dh
+dd 0db231159h
+dd 0a9b25d5eh
+dd 0a43b498bh
+dd 03549710ah
+dd 0e717c6b0h
+dd 082ea0f86h
+dd 0f663ee9fh
+dd 02f2c5aech
+dd 0afe751feh
+dd 0ea92b8e1h
+dd 0453d654dh
+dd 0a1da795dh
+dd 02a0e1d43h
+dd 05201b717h
+dd 02181b6bbh
+dd 05fff3a1fh
+dd 099bb7836h
+dd 0be6775ebh
+dd 0c2c43882h
+dd 0c2d7748ch
+dd 034c3a298h
+dd 054eb8d73h
+dd 039acaa97h
+dd 0207fe982h
+dd 0e6090eaah
+dd 0728d45e8h
+dd 0f1a237b9h
+dd 010d3916ah
+dd 05f59f234h
+dd 00656d690h
+dd 0c0872c2dh
+dd 081baf69dh
+dd 0f65430dbh
+dd 055907e2dh
+dd 02b0ddbafh
+dd 0dcc5a7ffh
+dd 0376f0957h
+dd 019b00dceh
+dd 0e314ade6h
+dd 0ca6f391dh
+dd 027741da1h
+dd 0bbf2d503h
+dd 06eae59adh
+dd 098a54abah
+dd 052c3baf7h
+dd 0d9b761e0h
+dd 091fd66a4h
+dd 0ad063954h
+dd 066d61652h
+dd 00bd07463h
+dd 07a4101aeh
+dd 08547407ah
+dd 02b0e5847h
+dd 0f495e90ch
+dd 057e92c0fh
+dd 0284ecebch
+dd 028113f04h
+dd 0ea57012eh
+dd 0bd2d51a2h
+dd 062ef6cfah
+dd 005f3b164h
+dd 0d2040411h
+dd 0fc3871d0h
+dd 047fbb732h
+dd 0366be575h
+dd 001cde3dch
+dd 096ccec39h
+dd 0b45cad0dh
+dd 064ae18a4h
+dd 07ff53ab7h
+dd 0e0230656h
+dd 04b34064bh
+dd 0f783eb4fh
+dd 08ce07a95h
+dd 02e044d05h
+dd 0e3a25e8eh
+dd 05882f75fh
+dd 0e5bb4fe2h
+dd 09e846e40h
+dd 0b969bbf3h
+dd 0d328e946h
+dd 0c4828413h
+dd 046cd2912h
+dd 0c5ab2b0bh
+dd 0595ad6a0h
+dd 01c14e5f4h
+dd 0bfa78361h
+dd 0a3952d55h
+dd 04307c2a3h
+dd 097b5ef81h
+dd 04d5ae142h
+dd 068b8c8bch
+dd 0b214e48ah
+dd 0ddedbadfh
+dd 08b9e74fah
+dd 041452148h
+dd 0c57ffeceh
+dd 04e9d5d06h
+dd 04e80ce6ah
+dd 0cdb4967fh
+dd 0fe5c84e3h
+dd 034cfbd96h
+dd 0dbdb1899h
+dd 050c296cbh
+dd 0cad980ddh
+dd 092f53d54h
+dd 0bff5f666h
+dd 06ae6daf2h
+dd 06ea189cbh
+dd 0caf1c7b1h
+dd 0b55df1e2h
+dd 0478ee7d7h
+dd 0f99a6884h
+dd 0a28d6bd9h
+dd 0a6dfa527h
+dd 0eb7f4f9ah
+dd 03d6faafdh
+dd 03b6e2a4eh
+dd 0241adf67h
+dd 03173d544h
+dd 0a97229bbh
+dd 041789934h
+dd 00e910103h
+dd 087d14ec1h
+dd 090fef47fh
+dd 09a764e8ch
+dd 0104b750eh
+dd 0ff1ef233h
+dd 03c707824h
+dd 0341438abh
+dd 0eb08958dh
+dd 05575b3c6h
+dd 06f01c654h
+dd 05c134d08h
+dd 04f67d92ah
+dd 0a103eb83h
+dd 00f14a17ah
+dd 04b2173e4h
+dd 0dd62e57bh
+dd 0ef8f1e26h
+dd 04dc8d3f1h
+dd 00f073a8ah
+dd 09a2b2fefh
+dd 002c88972h
+dd 01a8ee5d9h
+dd 02ebeb22fh
+dd 0c13c0f9bh
+dd 094350a7eh
+dd 0cc806f5bh
+dd 08fe7e49ah
+dd 0732fd6c6h
+dd 031020a58h
+dd 02abefce9h
+dd 04686e30dh
+dd 0153e477dh
+dd 0a201b861h
+dd 0f0038aa1h
+dd 0de624e44h
+dd 06219d827h
+dd 00da96aceh
+dd 037301180h
+dd 0e4eebbcdh
+dd 0be86f022h
+dd 0f6376a2eh
+dd 09d9d54cbh
+dd 0cc54d23ah
+dd 07befeee2h
+dd 0efa4393ch
+dd 09bd540f9h
+dd 00e1f6830h
+dd 00f97dd07h
+dd 0eb1a94e1h
+dd 07c49ee00h
+dd 0deba70a0h
+dd 0c1b1d7e6h
+dd 0a8c3f6deh
+dd 091720e75h
+dd 01cb981abh
+dd 0e3ae0567h
+dd 0d23d4628h
+dd 0eae8fe7eh
+dd 0399fad71h
+dd 0660cbf73h
+dd 0972c3d76h
+dd 0c66ac7f9h
+dd 0f79c7080h
+dd 05683625ah
+dd 026f99948h
+dd 0fc1632d9h
+dd 0b2b89e37h
+dd 07273acceh
+dd 013155389h
+dd 0ee46ead7h
+dd 064b08cb4h
+dd 05aa3cbc6h
+dd 0339bfb6bh
+dd 0b0e425eeh
+dd 095450f76h
+dd 0ea212183h
+dd 0b6bdcaadh
+dd 0f62879f7h
+dd 0e06c4957h
+dd 0021835b1h
+dd 03f0a1e77h
+dd 06b7d70d4h
+dd 0bae74b9dh
+dd 0ab8b702dh
+dd 05ee0a237h
+dd 0f019955ah
+dd 093a91774h
+dd 06532054fh
+dd 0093c6c95h
+dd 0b3802649h
+dd 09d354c31h
+dd 0ef59e020h
+dd 03f82dc60h
+dd 057fae1ddh
+dd 0e55e2d9eh
+dd 0cf6b4011h
+dd 0fde70414h
+dd 074f082e9h
+dd 0e8f29496h
+dd 0f6ff285dh
+dd 01076ef1bh
+dd 06d285b7eh
+dd 0ba723513h
+dd 0f97d33e4h
+dd 0f5f33bdbh
+dd 0344f6d8bh
+dd 06c6c9c21h
+dd 04e61cf8bh
+dd 0f46e0af9h
+dd 092878f73h
+dd 03f5c5b9dh
+dd 05b1a93eah
+dd 09cf3d4ceh
+dd 0fb44f215h
+dd 0bb32a92ah
+dd 07f6bc319h
+dd 029dff5e5h
+dd 0381a117ah
+dd 08efae206h
+dd 0792dc2b8h
+dd 031737ab3h
+dd 041a2c09ah
+dd 0e8f19d93h
+dd 09dbe5462h
+dd 01941e8fdh
+dd 0231dfe98h
+dd 08ff899a5h
+dd 088c17a51h
+dd 04d2228b9h
+dd 0acf5cb8fh
+dd 0f2df6c8fh
+dd 0a586a1a2h
+dd 0c7135517h
+dd 054485672h
+dd 070f50815h
+dd 0d011adbch
+dd 0889fa36dh
+dd 0e8accc76h
+dd 0e67fbd4ch
+dd 0d53ef098h
+dd 06ec2135eh
+dd 04abc92deh
+dd 07768a64ah
+dd 05acc554ah
+dd 0651adf7dh
+dd 02fa8298eh
+dd 04e06dacdh
+dd 0dbb406ffh
+dd 0f265da13h
+dd 00f70e6a5h
+dd 02b38b2f2h
+dd 0e5fe9964h
+dd 0d08caacah
+dd 03d7ae5c5h
+dd 05798d7fah
+dd 00b7b74c2h
+dd 0a680aea8h
+dd 0c81e61b2h
+dd 0bc275bcdh
+dd 06749a228h
+dd 0f54d492eh
+dd 0881ac744h
+dd 0d0fe1800h
+dd 0a3921d14h
+dd 0dc7179a7h
+dd 0aec86dedh
+dd 0944ffedch
+dd 0db0b00f8h
+dd 03f097e91h
+dd 0de37953ch
+dd 0913f7a80h
+dd 01ff9d364h
+dd 0f73db0b0h
+dd 079738d30h
+dd 09bb1e054h
+dd 016435423h
+dd 0460facceh
+dd 0b84f003ch
+dd 0a39addc4h
+dd 0dd77b7d6h
+dd 009b770bah
+dd 037f23b4eh
+dd 020b3afefh
+dd 008043170h
+dd 0f09f0d52h
+dd 05be75fdbh
+dd 05e67477eh
+dd 0c4e6a88dh
+dd 0e7ee4b0ch
+dd 07e9ffd48h
+dd 0970e7d80h
+dd 0002f8d2eh
+dd 0bc323508h
+dd 0b7332512h
+dd 025d414e6h
+dd 0a69db02dh
+dd 0ce53b581h
+dd 0c386dd33h
+dd 03d9d410ch
+dd 0987f3441h
+dd 030d9bb2ah
+dd 0a3ba46beh
+dd 0033093d7h
+dd 03e98f02bh
+dd 006cf478fh
+dd 09be470d3h
+dd 07e7a8082h
+dd 02c4d86ach
+dd 039c82fafh
+dd 005bc6922h
+dd 0c0e68306h
+dd 022b4e57dh
+dd 02d3c0a7dh
+dd 06f9b7bbdh
+dd 0393a50a5h
+dd 0854cb920h
+dd 0f92a3a25h
+dd 012ad6208h
+dd 0c9a68586h
+dd 0248fb395h
+dd 0b66c3d0fh
+dd 040138eb5h
+dd 0ca8e6228h
+dd 09d540777h
+dd 0595e58ddh
+dd 0c764e2edh
+dd 0a5b4ddd5h
+dd 067135bdeh
+dd 0f55cc5b8h
+dd 062656dc8h
+dd 08b69d22dh
+dd 03c31dbdch
+dd 0c6f52a38h
+dd 067f26495h
+dd 09785e403h
+dd 00cb8b07bh
+dd 09e073187h
+dd 08b8cd268h
+dd 0424965d9h
+dd 0f7533355h
+dd 0b785e5edh
+dd 091ebc37eh
+dd 0fde5a57ah
+dd 00244c493h
+dd 035349e39h
+dd 0894c482dh
+dd 0db8016a7h
+dd 06177d267h
+dd 0ad870716h
+dd 06e8c29f8h
+dd 0951f3bffh
+dd 0a764f122h
+dd 0473c0cf2h
+dd 012df262ah
+dd 0b26e4d46h
+dd 0ed6588e7h
+dd 032226fd3h
+dd 09c97f6b4h
+dd 0c65ed804h
+dd 003cc7904h
+dd 0fbd22606h
+dd 0aac2abe1h
+dd 02ab42b80h
+dd 0da63b72ah
+dd 07df31090h
+dd 064799485h
+dd 0c951ecf2h
+dd 08163355eh
+dd 09b1c3bc0h
+dd 0eb3b2b0dh
+dd 09503a99eh
+dd 08ece9146h
+dd 0d36d1dbch
+dd 0e172475bh
+dd 09d397d85h
+dd 01a75f401h
+dd 0b7227c04h
+dd 059d9f22fh
+dd 0017ec303h
+dd 07558f65ch
+dd 04084350bh
+dd 0286fdf7ch
+dd 0af65165fh
+dd 0c35476e0h
+dd 0bd49d89dh
+dd 0099a0d4bh
+dd 0a2fb884dh
+dd 002345bf8h
+dd 03499e4bch
+dd 0fe4c95c5h
+dd 02e32de33h
+dd 003b9035bh
+dd 006f5aaa1h
+dd 0c1bd2561h
+dd 0eb000251h
+dd 07d234295h
+dd 0a80e2351h
+dd 07cdaf745h
+dd 0184df536h
+dd 05df7222ah
+dd 0d210e20eh
+dd 01cbbcbceh
+dd 01a27aef6h
+dd 004f760a1h
+dd 0a2d2e815h
+dd 038d168a5h
+dd 0fcb46c0fh
+dd 09615368eh
+dd 030e4275fh
+dd 077085a20h
+dd 0c33b82e7h
+dd 0c16124d5h
+dd 016d57a86h
+dd 06b87b96ah
+dd 02aa64737h
+dd 03f7b43d3h
+dd 084b5fdcfh
+dd 09df1a65bh
+dd 054a39dd5h
+dd 02a44ed9bh
+dd 0909d140dh
+dd 055a24614h
+dd 06a0080c3h
+dd 0c76cacaah
+dd 00f2b0b8ch
+dd 0527bf7dch
+dd 022e74235h
+dd 026f76702h
+dd 0eb5627d0h
+dd 0f62646b0h
+dd 0ddace0b9h
+dd 08c230470h
+dd 0bf89f91dh
+dd 014b97dc6h
+dd 0d0794e14h
+dd 08962abdfh
+dd 097f68e61h
+dd 000d8a0d3h
+dd 00c2ad0ceh
+dd 000fc5ac8h
+dd 07662f42fh
+dd 03eb6017eh
+dd 0f44fc869h
+dd 00f085a54h
+dd 09efd083ch
+dd 05237ced8h
+dd 09ed110ffh
+dd 058e8cd21h
+dd 0c3f4ca04h
+dd 012d6339eh
+dd 0e439b414h
+dd 06e0c204dh
+dd 0422bd561h
+dd 07c46d3c9h
+dd 004e835bdh
+dd 03e1bfe6bh
+dd 087f99beeh
+dd 0d6c9a771h
+dd 0268ae2f5h
+dd 035018f59h
+dd 0ebef10e3h
+dd 0d503190fh
+dd 01f4e43c4h
+dd 0611ec27fh
+dd 04cf8ec91h
+dd 0bb7968a0h
+dd 0f9627850h
+dd 03f52c332h
+dd 058f6eb13h
+dd 036ab4f34h
+dd 05330293ah
+dd 050cccb38h
+dd 06087279eh
+dd 0431f1d34h
+dd 0cfeeafe0h
+dd 073121bafh
+dd 02bb26131h
+dd 041a682cch
+dd 0824cd612h
+dd 09ff2625dh
+dd 0b9bc9cech
+dd 04359d63ah
+dd 07761e357h
+dd 04f5e7162h
+dd 03e48355ah
+dd 073f44e47h
+dd 0bbed259fh
+dd 044c930d8h
+dd 0a7a5b910h
+dd 0f748b9c9h
+dd 0dc9a54e3h
+dd 01ff33b53h
+dd 03cc0fa07h
+dd 0c5150dd9h
+dd 03bac0cf3h
+dd 06c691eaah
+dd 05571b0b1h
+dd 0883de003h
+dd 0a363f3a5h
+dd 062250025h
+dd 09d17db01h
+dd 0d86033e6h
+dd 02db0dcddh
+dd 01a099037h
+dd 0ae41298eh
+dd 0faad6344h
+dd 05bfbef7fh
+dd 0200c5915h
+dd 0eeb56c43h
+dd 03b7a17e4h
+dd 0d5ff6899h
+dd 0f4d51099h
+dd 00e1baccbh
+dd 076382845h
+dd 0d96b99eah
+dd 084320424h
+dd 0c14975edh
+dd 00521e19fh
+dd 07d5fab51h
+dd 0529e51f3h
+dd 04eb22bc2h
+dd 0f9b11792h
+dd 0716e81b8h
+dd 0cd20c723h
+dd 0bfdb109bh
+dd 0d11f1531h
+dd 0182ba400h
+dd 0b40cf388h
+dd 04784af12h
+dd 0c5bc4ffbh
+dd 0d21caaaah
+dd 0b2ac3e34h
+dd 081f45a0dh
+dd 0c0f670e1h
+dd 0e56fb796h
+dd 0fb42becfh
+dd 0f09cb5e4h
+dd 05affa052h
+dd 0866ce8a3h
+dd 0f4517a93h
+dd 08ab6d47ch
+dd 01986e07fh
+dd 0613f3805h
+dd 0426493d1h
+dd 09d267ef3h
+dd 0a6fb337bh
+dd 037e3df36h
+dd 01756cc29h
+dd 0ccfffc62h
+dd 0305c52d3h
+dd 085b6e9aah
+dd 0a6b98298h
+dd 09a4f0073h
+dd 0b187e9feh
+dd 0569cbca8h
+dd 0888142d4h
+dd 0ac9ea008h
+dd 0d11e5286h
+dd 00611ff3bh
+dd 0ca97bfe0h
+dd 05196262eh
+dd 0bb0b9869h
+dd 07cb0d270h
+dd 00eafa235h
+dd 0dd6e45f1h
+dd 06c74c399h
+dd 098a6aa8fh
+dd 0a9014bffh
+dd 04a2ab1b4h
+dd 02d4f6ce0h
+dd 0a9485b7ah
+dd 076fa28c4h
+dd 02944f6eeh
+dd 0e838b8beh
+dd 030dd54c7h
+dd 04b935c3ah
+dd 09286ec06h
+dd 08ccb5309h
+dd 0e9c49d04h
+dd 0607a698ah
+dd 0f6edb3c6h
+dd 033650849h
+dd 0d9abd2c7h
+dd 076c9ac11h
+dd 00d50c635h
+dd 09519eea9h
+dd 05fa20483h
+dd 0034a6ecch
+dd 02ef94ae5h
+dd 01a89aff7h
+dd 0f023b1f9h
+dd 0d9f61aech
+dd 036246360h
+dd 0e0c7d179h
+dd 005017608h
+dd 0272b18c0h
+dd 01055a153h
+dd 08dc4376dh
+dd 066ed901dh
+dd 03265438bh
+dd 07ca39005h
+dd 08baa2773h
+dd 07f0e5c90h
+dd 0896f4ea7h
+dd 0f06cc23ah
+dd 01d50c0c1h
+dd 0da53cbbbh
+dd 03ed00919h
+dd 0b976c4f9h
+dd 0655eb416h
+dd 0b6d9a8c7h
+dd 08f304168h
+dd 014bfe7adh
+dd 09ba5abbfh
+dd 0b91e81cah
+dd 0ea0efb63h
+dd 0349aa842h
+dd 0d54815b6h
+dd 0196c8372h
+dd 0ea2a3feah
+dd 03c474c27h
+dd 06153c987h
+dd 0fe2ec58ch
+dd 046d27a3ch
+dd 0416af897h
+dd 090bdd1d2h
+dd 019b56740h
+dd 0f15db7adh
+dd 069049e8fh
+dd 01728930ch
+dd 0a80ff960h
+dd 0f6c1a1c4h
+dd 08b0baa4eh
+dd 0b976f2aah
+dd 0bab67562h
+dd 07655b87eh
+dd 0ac8f8eb7h
+dd 07d734697h
+dd 06e3e9e39h
+dd 070ad9ebeh
+dd 0b8375f25h
+dd 03c800aa2h
+dd 00d353fd4h
+dd 0e0ddfee3h
+dd 0266df0edh
+dd 0b55852d7h
+dd 0b8b3ed12h
+dd 0b4a245e9h
+dd 0432574ebh
+dd 0f4a8f197h
+dd 02882b274h
+dd 0d5855fbbh
+dd 0e9671945h
+dd 0b0a45c76h
+dd 089779329h
+dd 03b60219ch
+dd 05e1aeaf7h
+dd 06ba2bdfah
+dd 005f31a88h
+dd 076ac760eh
+dd 02cd46e9ch
+dd 051dc62b5h
+dd 0f81554cch
+dd 0cbfd9e7dh
+dd 09922d7e3h
+dd 0fb7dfa20h
+dd 0d9d22145h
+dd 0a7697580h
+dd 09af4243fh
+dd 09ba89fe4h
+dd 0db295140h
+dd 0b2c4b55ah
+dd 0713b3dbch
+dd 0041c7120h
+dd 0120eb360h
+dd 0ff9d74ebh
+dd 0d53a93fdh
+dd 0b4633766h
+dd 0c67c262eh
+dd 054e0edb4h
+dd 037920694h
+dd 0062dfc73h
+dd 0f7eb91edh
+dd 001b4f04eh
+dd 0caaf40f3h
+dd 01ad8ec2eh
+dd 0a64de8cfh
+dd 05a286d49h
+dd 057c87e92h
+dd 08f0d95aah
+dd 0fc29a37ah
+dd 07fe7aae2h
+dd 0b4858120h
+dd 03d30f32eh
+dd 02af11f7dh
+dd 0b4a89da2h
+dd 0a15c4509h
+dd 0b08f52b0h
+dd 0ee796422h
+dd 099a752d0h
+dd 0313ee151h
+dd 01873b7b4h
+dd 0c496ca60h
+dd 0e54e35eah
+dd 09fd9fe28h
+dd 0d574d5fch
+dd 063f28de2h
+dd 08bf195c8h
+dd 0194a1f89h
+dd 07e8e34dah
+dd 0deb03430h
+dd 066d4700ch
+dd 0646a289eh
+dd 0462804deh
+dd 0f3876d43h
+dd 05c839e2eh
+dd 05a2799d8h
+dd 0c1e01d09h
+dd 0383bdf3ch
+dd 02dbb4e3dh
+dd 0aa8dafc9h
+dd 07c3e6f8dh
+dd 0a9782c5bh
+dd 085af3518h
+dd 0989cbae0h
+dd 0b911e912h
+dd 072c5b51ch
+dd 07300572ch
+dd 05bccf756h
+dd 0e9646f37h
+dd 003e9b155h
+dd 08407c710h
+dd 05929892dh
+dd 094e05b57h
+dd 0144034d0h
+dd 04161c93ah
+dd 027e1a193h
+dd 0f839914ah
+dd 0bb5dc4d8h
+dd 0cc5a99d0h
+dd 07f3550c4h
+dd 010e1e7f8h
+dd 032fa2c60h
+dd 0ab5f9902h
+dd 0161dcd92h
+dd 0fd2941e5h
+dd 04bbc6048h
+dd 0566366b4h
+dd 0d4ec8e44h
+dd 0bd792529h
+dd 0b8267d00h
+dd 0b44ec0d0h
+dd 0883d3918h
+dd 0285f6217h
+dd 0d14a80b3h
+dd 05a6d474eh
+dd 000ca86bbh
+dd 0da861bc1h
+dd 06eb27e9fh
+dd 04d576ac0h
+dd 04210c886h
+dd 0eb3d9e8bh
+dd 0c0c910f0h
+dd 03dadf213h
+dd 01a232c05h
+dd 05c681950h
+dd 0fa07f75eh
+dd 00101287ch
+dd 05c9d5187h
+dd 07867cefeh
+dd 04ddf1c6bh
+dd 06b172c3bh
+dd 086ba76e2h
+dd 0def4365ah
+dd 0e794d928h
+dd 00487fff6h
+dd 06a58557fh
+dd 05aa84c56h
+dd 04f7daa1dh
+dd 003c93ae7h
+dd 0ab350366h
+dd 03e329308h
+dd 083300d10h
+dd 06dc261aeh
+dd 0b3038de0h
+dd 0c9568828h
+dd 03444dcf2h
+dd 024e1f566h
+dd 0fd382635h
+dd 07c933e4bh
+dd 0f0b64a46h
+dd 03e493cc6h
+dd 08bb9dd88h
+dd 04a111e4fh
+dd 0482421b8h
+dd 053b3b915h
+dd 042539840h
+dd 09b4dc50ch
+dd 08383d461h
+dd 094145f46h
+dd 0bc13ce03h
+dd 03aaa3ee1h
+dd 0cfd3a1e9h
+dd 0e4b68dbbh
+dd 078f9eb8eh
+dd 0e4960fd8h
+dd 06e3ccd83h
+dd 06f25afb4h
+dd 0d0b80067h
+dd 0c27f1b4eh
+dd 06afcfefdh
+dd 0260f6f60h
+dd 056c3e17eh
+dd 0235c8a2fh
+dd 059e1c9dfh
+dd 0bec5220dh
+dd 055b4a390h
+dd 0ad78b705h
+dd 0ae423949h
+dd 0469622b3h
+dd 09b47aa84h
+dd 009dd807fh
+dd 0750ecf5ah
+dd 0504399d6h
+dd 08ba6c506h
+dd 08d4d61cah
+dd 02468e40ch
+dd 06acd3042h
+dd 08b9c5be7h
+dd 077b91d69h
+dd 03a0a3573h
+dd 030cfec86h
+dd 07c86d06fh
+dd 0d63ad670h
+dd 0f0b5955dh
+dd 0bc37a3fdh
+dd 0feb139bah
+dd 076f58347h
+dd 0ce0839e7h
+dd 011cdea8bh
+dd 08a1ec6edh
+dd 016769f1fh
+dd 06215395eh
+dd 0a212ed50h
+dd 06e036072h
+dd 02a253398h
+dd 0e03c8fa7h
+dd 0d5489b37h
+dd 03a321555h
+dd 096e9c214h
+dd 049b47c3bh
+dd 086c315c3h
+dd 05be3fb3bh
+dd 051b0d40ch
+dd 06a8a885fh
+dd 0e1268a65h
+dd 094c2461ch
+dd 0f770bb2fh
+dd 0bb7c6d9eh
+dd 0dcb542fch
+dd 021776122h
+dd 020677d43h
+dd 0b32568f1h
+dd 07d7a8ad8h
+dd 05bf32f7ah
+dd 08f355881h
+dd 0957bade2h
+dd 09a007b52h
+dd 09a994d86h
+dd 09b3c4a28h
+dd 0947fe6f8h
+dd 0fdfd88dbh
+dd 0bb7fa086h
+dd 08ef28a63h
+dd 0ba463140h
+dd 00450653ah
+dd 00ac373b0h
+dd 0c1d9c8f4h
+dd 018cc77c1h
+dd 069912ab9h
+dd 003f76367h
+dd 09546861bh
+dd 042d86f7dh
+dd 0162498deh
+dd 0d39793aeh
+dd 06d3c1861h
+dd 01f1e6a16h
+dd 0bdd6dd53h
+dd 0690ccee4h
+dd 0eb38a7cbh
+dd 071f2b5c8h
+dd 0275e457eh
+dd 0d7a1d761h
+dd 042f9d5afh
+dd 08d92889ch
+dd 09554be71h
+dd 04058bfb6h
+dd 09acab37eh
+dd 0302e7368h
+dd 0b1a65770h
+dd 0c5f24fcch
+dd 0834f4670h
+dd 0173c3650h
+dd 00cf0464dh
+dd 0274ee842h
+dd 07e858417h
+dd 0e5972f99h
+dd 09918bcedh
+dd 003b9b2f0h
+dd 0cd6d929fh
+dd 021be9046h
+dd 087974621h
+dd 0567e2c38h
+dd 08ea88fdeh
+dd 0f0ef0fbbh
+dd 0165fb018h
+dd 00f312119h
+dd 0b9ff7b12h
+dd 0f11eaa17h
+dd 0d267a38eh
+dd 0d04e6e01h
+dd 09739d614h
+dd 0c9a588d0h
+dd 0b4b6deb8h
+dd 0844be646h
+dd 0f5b1c3b8h
+dd 0cc7de1d0h
+dd 0d44eca6ah
+dd 0cdbec201h
+dd 078f5806eh
+dd 01dd640e7h
+dd 082e128fbh
+dd 00fa6fda0h
+dd 08fc417b6h
+dd 086382341h
+dd 02b1d8126h
+dd 06627638fh
+dd 07a4161cdh
+dd 073760c39h
+dd 063ffb5e6h
+dd 0ecf78dd1h
+dd 046f1cca6h
+dd 024c23a83h
+dd 020f0c23bh
+dd 0fdef2f63h
+dd 07f7e1c86h
+dd 01c72fcbbh
+dd 000738cbbh
+dd 011cb9752h
+dd 05a7fdc3fh
+dd 02d8454f3h
+dd 02c52d86bh
+dd 091b80634h
+dd 095ae9f08h
+dd 03c51bd91h
+dd 07d80c1cch
+dd 0cf9a9718h
+dd 05caefef1h
+dd 098b23265h
+dd 093009f71h
+dd 0217997bfh
+dd 0644a7bbdh
+dd 010662c10h
+dd 0b2b7132ah
+dd 0ad976c5ch
+dd 0e9228db5h
+dd 0fe9da2feh
+dd 007c69567h
+dd 018259174h
+dd 08297ee06h
+dd 0f7286991h
+dd 09a921f67h
+dd 0bc640189h
+dd 03441f397h
+dd 083c097c0h
+dd 04525bebbh
+dd 085b09918h
+dd 0507400dah
+dd 009960caeh
+dd 06e0ade87h
+dd 001565354h
+dd 03baa4710h
+dd 0a8de464ah
+dd 0481f47b1h
+dd 00dc99fd0h
+dd 088b97322h
+dd 0992f6d2bh
+dd 03d93d465h
+dd 061190d81h
+dd 0bce953e3h
+dd 0c331eb15h
+dd 0f001fc4ch
+dd 01dc7c14bh
+dd 0f25b6fc4h
+dd 0e1c53756h
+dd 0059eec1ah
+dd 018ebeacfh
+dd 03a0052deh
+dd 0d4b1efd5h
+dd 0b81041a0h
+dd 0b1aebaeah
+dd 03b4da447h
+dd 0cf757fc9h
+dd 08242e0b4h
+dd 0bcc83dcbh
+dd 0c3e77227h
+dd 07f4995e1h
+dd 0aa5d3dddh
+dd 01d814b91h
+dd 013b58fbbh
+dd 0baec3192h
+dd 00ad97d3ah
+dd 0732a9f31h
+dd 098782d39h
+dd 0e7f13dbch
+dd 0504f8e03h
+dd 051897649h
+dd 03bf9d520h
+dd 08237cd97h
+dd 028828595h
+dd 0b9ee3bf7h
+dd 046a44bc1h
+dd 00d26b8aah
+dd 03f2e3265h
+dd 09c9a94aah
+dd 0a34b1b7ch
+dd 09aa352aah
+dd 0432cf6c1h
+dd 0e1348852h
+dd 0bf8f1e0ah
+dd 0741ef5e5h
+dd 09f76a9b9h
+dd 044891623h
+dd 09a21a7ach
+dd 0a86234f1h
+dd 05c465753h
+dd 056a91aebh
+dd 02d0bf138h
+dd 0a90f27d8h
+dd 077afb5c9h
+dd 0c88c3d44h
+dd 0fe2539b5h
+dd 02970a997h
+dd 0140fc893h
+dd 05b16cbb4h
+dd 07158398ch
+dd 02f177b5bh
+dd 04313188ch
+dd 0f75ca27bh
+dd 03677828eh
+dd 0c385cd4fh
+dd 057c32ed2h
+dd 0b4ecb7d4h
+dd 055e5c441h
+dd 094172aach
+dd 08db38ec2h
+dd 05fcac379h
+dd 0101c98e7h
+dd 0ca86d9b2h
+dd 01ab184e6h
+dd 0b619d216h
+dd 0a9cbd0b6h
+dd 0c95cbd04h
+dd 0c722c5dbh
+dd 01199c862h
+dd 0e428fcbfh
+dd 098e34ea1h
+dd 006ea3e3ch
+dd 0b04512a4h
+dd 05b43fb4bh
+dd 01c46e0edh
+dd 03eb16131h
+dd 0ada5ecc3h
+dd 024a41e94h
+dd 0d9c2e399h
+dd 0f0f3545ch
+dd 0d77b5dbdh
+dd 04b81e0f9h
+dd 0fcd3e349h
+dd 0164b6c9ah
+dd 0c24f2da4h
+dd 088d45f1eh
+dd 069eefe2eh
+dd 0fd681d05h
+dd 0a297964ah
+dd 08c0441a8h
+dd 079743d23h
+dd 09e3f44f5h
+dd 03aa1a40eh
+dd 0e6b4676eh
+dd 05f6af92fh
+dd 0e8f90b57h
+dd 0a744a033h
+dd 0cc5782b9h
+dd 04789c5abh
+dd 0252a177ah
+dd 00dc306a9h
+dd 0c2532335h
+dd 00376439fh
+dd 0f21063adh
+dd 08d40f57ch
+dd 0bbf44bebh
+dd 022bd5dc4h
+dd 0977078a4h
+dd 0be89f289h
+dd 0ae6e5b5fh
+dd 0fcfa944ah
+dd 0f7ee212fh
+dd 017101e7ch
+dd 0bbf10b6dh
+dd 0aaff5e42h
+dd 07ae8fe1eh
+dd 04ce269f0h
+dd 03f42d904h
+dd 08fad3d25h
+dd 09545c1e2h
+dd 0e3b952d9h
+dd 046b02992h
+dd 063350f48h
+dd 01c0dced9h
+dd 01d22f702h
+dd 0d9a9a56fh
+dd 0edcad587h
+dd 00e11eb7ch
+dd 0bee9c4c8h
+dd 00670ef7ah
+dd 0ea5d1b08h
+dd 02993095ch
+dd 0ce70f50ah
+dd 058aafcdeh
+dd 0e18dc0ach
+dd 075437589h
+dd 0f7ec6905h
+dd 074772575h
+dd 03d10c0b0h
+dd 03ecd7258h
+dd 024abeb2dh
+dd 072eb256eh
+dd 07f175e98h
+dd 0add18ed2h
+dd 0030b2973h
+dd 056067478h
+dd 03e638b07h
+dd 0e1f65361h
+dd 009d74939h
+dd 03566dc6ch
+dd 0b69ef937h
+dd 03316d447h
+dd 0984941e7h
+dd 0c0e7dc0eh
+dd 059afcb3bh
+dd 02ef96b4eh
+dd 0f769aa20h
+dd 095ffbca2h
+dd 0c93a8ac2h
+dd 083e012d1h
+dd 0e41eab88h
+dd 0f4938fd6h
+dd 09bc9d75eh
+dd 042a425b1h
+dd 00c9060ceh
+dd 08852997dh
+dd 0287f8ddbh
+dd 0117be3e6h
+dd 01c70fe8bh
+dd 07fff42adh
+dd 0841a0847h
+dd 0fea9793bh
+dd 02ebd11c2h
+dd 0629a7ee5h
+dd 06fcf5ffeh
+dd 07b811f60h
+dd 00652dfa1h
+dd 0325e0a40h
+dd 08acc5306h
+dd 086a8dbeah
+dd 020af9415h
+dd 05861d8b7h
+dd 0e182c1dch
+dd 0904f89a8h
+dd 0b479c391h
+dd 0dabb0ca0h
+dd 06c98c57eh
+dd 04b2457d8h
+dd 06d3fc95eh
+dd 0e9e4f731h
+dd 06969ec6eh
+dd 0a6949be4h
+dd 08fd850f0h
+dd 0e6eb5b85h
+dd 063cc1a99h
+dd 09bbed0b8h
+dd 0421dbeb5h
+dd 02a372e21h
+dd 0fa916e82h
+dd 0a831d029h
+dd 0e8ec9516h
+dd 054240426h
+dd 04a1c3480h
+dd 0aceca97eh
+dd 0fc4ccf5eh
+dd 00c901ae3h
+dd 0488b5821h
+dd 044832029h
+dd 0536ba217h
+dd 089d6540ah
+dd 073700f80h
+dd 0a058edcch
+dd 05fa2a21dh
+dd 08226fdeeh
+dd 0c29f7d2bh
+dd 09bd40a27h
+dd 0ca778f68h
+dd 0ba0d0d9fh
+dd 00c3d7ab3h
+dd 03fb1f082h
+dd 0a03f9983h
+dd 08e2920e1h
+dd 0cad32ec3h
+dd 003067890h
+dd 014111e80h
+dd 0fe1dee56h
+dd 0b2c53b49h
+dd 0bac5225eh
+dd 0df65335ah
+dd 0fe647c53h
+dd 09290c105h
+dd 078d74e4bh
+dd 0cf666020h
+dd 033a02f44h
+dd 00e08aa2fh
+dd 00173754dh
+dd 0bedf78f9h
+dd 05a74b92ah
+dd 033b79ce1h
+dd 076ad1951h
+dd 03c7f2c88h
+dd 008a53289h
+dd 068a77e24h
+dd 09bb55fech
+dd 0de6bf261h
+dd 0ee2d9de0h
+dd 02d642462h
+dd 06ac36844h
+dd 0f55e9321h
+dd 01765ed96h
+dd 0a350c969h
+dd 093715767h
+dd 0cce45d1eh
+dd 0dc94b5fbh
+dd 01aa20138h
+dd 027e96186h
+dd 0dd5e84bah
+dd 01d72122dh
+dd 057b7e8f8h
+dd 07b81afb3h
+dd 0757c1731h
+dd 04d3738bch
+dd 0f426d79fh
+dd 0823eb716h
+dd 0a2de037eh
+dd 06716d7fch
+dd 0937475b4h
+dd 060872c82h
+dd 0f13ef51ah
+dd 0cfca5eb4h
+dd 039611320h
+dd 0be7a5d46h
+dd 0b1cadaf1h
+dd 04134bf42h
+dd 06aac1880h
+dd 017501207h
+dd 0a85e5c74h
+dd 01352563dh
+dd 06de589e4h
+dd 0d364f4a9h
+dd 0fc8f1a51h
+dd 0b43dd8f1h
+dd 04be57f82h
+dd 0da7bd100h
+dd 098889515h
+dd 0ebc2b5fbh
+dd 0db45fd7ch
+dd 0648fef8ah
+dd 07269a9e6h
+dd 038fefb6ch
+dd 0409b21ffh
+dd 094d8a6b0h
+dd 0e9b81809h
+dd 0b25d8333h
+dd 004981ed0h
+dd 0936f9aa5h
+dd 069d2a1cfh
+dd 01bd52a1fh
+dd 0690d5909h
+dd 0307c923dh
+dd 0e77b0f5ah
+dd 07bd63195h
+dd 09083109eh
+dd 0019f3761h
+dd 05ddacb9eh
+dd 0b85b13d2h
+dd 0b83fa217h
+dd 02744382bh
+dd 03d4693deh
+dd 0f6f925cch
+dd 0418d78d1h
+dd 07969899eh
+dd 0c5312d44h
+dd 0d0a00c6ch
+dd 07b52c003h
+dd 08c8ea723h
+dd 0a9d7d5aah
+dd 000ff0ee8h
+dd 0bad42b4ch
+dd 0ba591551h
+dd 0722ab16ch
+dd 00dc0496fh
+dd 0f9751d3bh
+dd 045f019dah
+dd 05097114ch
+dd 069da3110h
+dd 0ef22837dh
+dd 08a00800dh
+dd 0396e0e30h
+dd 0598490fbh
+dd 0c20b0780h
+dd 05551e4f1h
+dd 03eac3ad7h
+dd 037ccd1e0h
+dd 0ef29cf07h
+dd 0f4b23de8h
+dd 0a7934b5dh
+dd 0740c9ae4h
+dd 0b4174629h
+dd 0391b90b1h
+dd 01fef5cdch
+dd 07d82d3eah
+dd 09c3362a4h
+dd 073644044h
+dd 056ea0aeah
+dd 09ab69f29h
+dd 03de007d0h
+dd 0d5964648h
+dd 06f507374h
+dd 09dfa51c7h
+dd 0de97bcf2h
+dd 056e8443ah
+dd 0ae8ecd75h
+dd 06c8ea634h
+dd 065a51642h
+dd 05469f02dh
+dd 0d982d860h
+dd 06812d97eh
+dd 01c0743c3h
+dd 0d6a5dc6ch
+dd 0ef45f32eh
+dd 0d7eb8ad3h
+dd 0bf9b814fh
+dd 07ba25b43h
+dd 02e501a9ch
+dd 01f90545dh
+dd 01358660fh
+dd 0f58a6754h
+dd 06dbb7829h
+dd 0fa71cd4fh
+dd 0b64094fdh
+dd 0bbcbbd08h
+dd 0fdb98276h
+dd 058f9cc5ah
+dd 0db60868ch
+dd 066935131h
+dd 0f9d1f892h
+dd 02c79a84bh
+dd 0aa0793a1h
+dd 0d40c9109h
+dd 0874c37e2h
+dd 028616808h
+dd 071241822h
+dd 0ce3e02afh
+dd 041a85acfh
+dd 09e908a2eh
+dd 0b28a6d6eh
+dd 0c8791ab7h
+dd 04418bdf5h
+dd 0853feafch
+dd 0b68c2b66h
+dd 03f0fdaf9h
+dd 0a161a9f9h
+dd 00b5f3e1dh
+dd 0a81400e5h
+dd 058c3df40h
+dd 07237fbc7h
+dd 0670d0125h
+dd 02d137ff5h
+dd 0df8363adh
+dd 03347cdd6h
+dd 036ffbfc2h
+dd 09a9ded10h
+dd 037c03206h
+dd 0ac4a1fb5h
+dd 0b5dd536bh
+dd 0a052b071h
+dd 01aa1dd7fh
+dd 06c682d25h
+dd 047aa26d8h
+dd 0a9b12cebh
+dd 0f781d099h
+dd 03065187ch
+dd 001502660h
+dd 0e881aba1h
+dd 0d7f1661ch
+dd 0cf34537bh
+dd 0d0e89ce7h
+dd 06fbdf04fh
+dd 0ad8aaa2bh
+dd 0bd33330ah
+dd 060f3a4abh
+dd 0c8b41838h
+dd 075dcd8f9h
+dd 0122c6d49h
+dd 07a50a948h
+dd 0e80e8a0fh
+dd 061aac714h
+dd 04981b03ch
+dd 067b6532fh
+dd 0d9c94ea6h
+dd 02416968fh
+dd 022809d0eh
+dd 0aa35f63eh
+dd 0fd497b82h
+dd 0cd9046f9h
+dd 025127fbch
+dd 06fc54146h
+dd 0e49f2ceah
+dd 0a40662a4h
+dd 077a0ec7ah
+dd 00439489bh
+dd 0df12abffh
+dd 083e1705eh
+dd 043836e45h
+dd 01220546ah
+dd 0853b04edh
+dd 0e02bc31ch
+dd 06c09924fh
+dd 06930e909h
+dd 0ec91f6ceh
+dd 0cc4dd355h
+dd 0f2de10f8h
+dd 0930f45f9h
+dd 0260429b9h
+dd 0cb5a24cbh
+dd 0716641b2h
+dd 006efd92fh
+dd 02c5ee0bah
+dd 07b1fb33eh
+dd 08031034dh
+dd 0e1bd2422h
+dd 0ed0cbb6ch
+dd 01e0e1bc2h
+dd 0f258d500h
+dd 0cf82da15h
+dd 0eae50b42h
+dd 0e08d650eh
+dd 0f0411c7ch
+dd 0112a98f4h
+dd 0cc615ad8h
+dd 032b7bef3h
+dd 0009586a3h
+dd 0c019e528h
+dd 0ecd35202h
+dd 02694bc1bh
+dd 054e185e9h
+dd 0680e75c5h
+dd 027936baeh
+dd 01a2f15dfh
+dd 0d2e6fb7fh
+dd 048e4cd0bh
+dd 0e3d98315h
+dd 0ff4b19cdh
+dd 012a8c85dh
+dd 0d018e642h
+dd 02735f546h
+dd 0310d1a9bh
+dd 0da9cedfbh
+dd 09de086b0h
+dd 0475b13e4h
+dd 03e5412b3h
+dd 09ef702f8h
+dd 0ddb54595h
+dd 0d0ab18eah
+dd 08cfdb6a5h
+dd 0d93a728fh
+dd 0261d56e9h
+dd 04324263bh
+dd 0ac951782h
+dd 0e9756867h
+dd 0cf76ece3h
+dd 025646295h
+dd 0e7888a87h
+dd 005aed4d1h
+dd 08cba1f20h
+dd 0269c66ceh
+dd 08692d24fh
+dd 083c77a09h
+dd 0369fd986h
+dd 042f81400h
+dd 0bfdca907h
+dd 07c0df624h
+dd 0e254f282h
+dd 084d511dfh
+dd 06bfd01a9h
+dd 077a240adh
+dd 0f25223d6h
+dd 0692c098bh
+dd 05be572cch
+dd 0a56ac784h
+dd 0998d1791h
+dd 000a866f5h
+dd 0a65b21c8h
+dd 072607310h
+dd 0f49849bfh
+dd 0c4659b35h
+dd 017c14360h
+dd 0df003bcfh
+dd 046b5c001h
+dd 042d627dch
+dd 05857feedh
+dd 04757fd9ah
+dd 04c481f0eh
+dd 036a96897h
+dd 0b1697f83h
+dd 097e276eah
+dd 0a5f20e2ch
+dd 0ff4ab052h
+dd 08faebc26h
+dd 0179828fah
+dd 0b04cdc80h
+dd 03ce870cfh
+dd 0ec10d3fdh
+dd 0649ccca5h
+dd 0ad8d7c5ch
+dd 0223f5506h
+dd 0cf6b6ba8h
+dd 0818fc143h
+dd 08a70c6ddh
+dd 042e91e4eh
+dd 08e785498h
+dd 098860ed7h
+dd 00ee918d4h
+dd 07a9192d6h
+dd 08ed46ae8h
+dd 0c8a856fch
+dd 0bc943519h
+dd 00e624302h
+dd 0b517f3beh
+dd 0aec3a37bh
+dd 0332c4ccah
+dd 021331d55h
+dd 08628d4deh
+dd 0e74e80d8h
+dd 093464981h
+dd 0c5aaf654h
+dd 05570cd0fh
+dd 0d2ad48b4h
+dd 08309c92fh
+dd 00b467a7dh
+dd 0992d8c80h
+dd 04c848e05h
+dd 02faa4241h
+dd 0f098b827h
+dd 0b554c065h
+dd 0b95ad922h
+dd 0a5011a74h
+dd 040791c76h
+dd 0a07ae2d4h
+dd 0dc9f18feh
+dd 04866424eh
+dd 03a094bb7h
+dd 0479cd4cfh
+dd 031e83c35h
+dd 0af8690aeh
+dd 04b4e370bh
+dd 046e3c93fh
+dd 05f11b4ceh
+dd 0bb57a2fdh
+dd 0af08df43h
+dd 0020bef3fh
+dd 0568ad4a4h
+dd 07e3243d9h
+dd 0c3fa6f32h
+dd 0e202e3ach
+dd 01cd731a4h
+dd 0a418fdb8h
+dd 07cad0bc6h
+dd 0d134df14h
+dd 062f8b3f7h
+dd 039c19bcfh
+dd 0936de626h
+dd 0b0335b64h
+dd 00278e363h
+dd 014cff5e0h
+dd 0f01fd25fh
+dd 04facf62eh
+dd 037155406h
+dd 09bd1a676h
+dd 00372b717h
+dd 063581c36h
+dd 0afda50b4h
+dd 06ea14286h
+dd 0c7ab0bc9h
+dd 0db4c35c6h
+dd 03c4ca8b6h
+dd 05e66e649h
+dd 0749f6151h
+dd 0eff99626h
+dd 08126a35fh
+dd 0bdaa00ebh
+dd 093f9090fh
+dd 07fdcdc09h
+dd 08fe2ba1bh
+dd 0f9a7cffch
+dd 052906f25h
+dd 07e65973fh
+dd 066be0190h
+dd 0cd5f8cech
+dd 015c150e3h
+dd 02d2c0968h
+dd 048ab301ah
+dd 0827a49e2h
+dd 0c813d573h
+dd 049f8784eh
+dd 047fc8792h
+dd 05a88a78ch
+dd 08e440384h
+dd 0e6e01cf1h
+dd 0571ef749h
+dd 0025d6603h
+dd 04058ee82h
+dd 01a37f3c1h
+dd 014d88141h
+dd 0e2fe6aa0h
+dd 02b7df8d2h
+dd 063bbffe0h
+dd 0a2690547h
+dd 0561a6c29h
+dd 07eb6cd4fh
+dd 08fdda00ch
+dd 0f874d8c8h
+dd 0143ba04bh
+dd 014b3902ah
+dd 05b6162c1h
+dd 09df4a0beh
+dd 06ed03199h
+dd 0181c1e54h
+dd 09e818232h
+dd 0a60625d3h
+dd 0bffb0ed5h
+dd 086120596h
+dd 094e01744h
+dd 0b6eaf683h
+dd 090ac0e30h
+dd 0a6cac643h
+dd 0b54a9ef7h
+dd 0a7ff29a5h
+dd 0a5b5ee5ah
+dd 02810da38h
+dd 0ab53500ch
+dd 0c48d0b97h
+dd 068d49c0bh
+dd 0c3346f98h
+dd 0c2be97c1h
+dd 0984694e1h
+dd 0e70de754h
+dd 024e50260h
+dd 0c64f5e2dh
+dd 0e15d6adah
+dd 05734bed1h
+dd 033789bf8h
+dd 0e1efa6fah
+dd 0e4db7d07h
+dd 0da342fd3h
+dd 0a6983ba7h
+dd 030d91024h
+dd 02508a8fch
+dd 0dc2abddfh
+dd 08b7dc13dh
+dd 07ee81bb7h
+dd 0108f45cfh
+dd 0a7daac93h
+dd 09859a298h
+dd 0a8458ad4h
+dd 0bb04050fh
+dd 0e7e33364h
+dd 0701a46cfh
+dd 0e433869bh
+dd 0131e7d7eh
+dd 079a80801h
+dd 05d9bbdbeh
+dd 0b7aceaabh
+dd 0260cb226h
+dd 0a3cee4e6h
+dd 04fb24489h
+dd 0c2f622d3h
+dd 0b69f2c4ch
+dd 018e55ac9h
+dd 0f3f0ae8ch
+dd 0c0c4186dh
+dd 0cefa80dch
+dd 0e2f4bce8h
+dd 092b5798dh
+dd 09ebf6a24h
+dd 04f5a6f13h
+dd 0146c9ea9h
+dd 09d248186h
+dd 07ecf788fh
+dd 0e5ed6f59h
+dd 0cfa8d24eh
+dd 0fcf2fc57h
+dd 0cf5009ffh
+dd 080a9c682h
+dd 056e51f05h
+dd 0ed3b26a1h
+dd 096f9b35bh
+dd 00583db8eh
+dd 0600d6524h
+dd 0b57eb0b8h
+dd 015da4fc0h
+dd 042847fcdh
+dd 04e14f472h
+dd 05b042d47h
+dd 058e44587h
+dd 0cf158d12h
+dd 0755ce4abh
+dd 0b0e3d19ah
+dd 0956348fdh
+dd 0f91c61efh
+dd 0bff9f9e3h
+dd 0d412086dh
+dd 04a04b976h
+dd 0d1c128a2h
+dd 0b3e5cd2ah
+dd 0538b8464h
+dd 04b2ca947h
+dd 0d03ffd9eh
+dd 0ac650398h
+dd 04299dfddh
+dd 04dba4d15h
+dd 0ee63d86fh
+dd 04c2337cfh
+dd 013c08fd9h
+dd 0d31cd595h
+dd 04be20e3ah
+dd 0545aacedh
+dd 00be8b99ah
+dd 05870ad32h
+dd 034fdd6a9h
+dd 081f1e891h
+dd 0ad3b1783h
+dd 09a0bbd0dh
+dd 0a2ef07feh
+dd 0b1a77d0ch
+dd 07db73548h
+dd 0c84fb5cbh
+dd 00c5c09b8h
+dd 08bb92c7ah
+dd 0b039001ch
+dd 0a9537361h
+dd 0776b7bcbh
+dd 0e08512dah
+dd 0dd7a3f03h
+dd 03927fff6h
+dd 06c11d824h
+dd 0f2af38bah
+dd 0f0702804h
+dd 0ca8e48e9h
+dd 09c4871afh
+dd 04995d1eeh
+dd 0887769edh
+dd 0e4bf6e4dh
+dd 01f67c1f4h
+dd 09c6c64d3h
+dd 0136398b6h
+dd 0dcb2a5eeh
+dd 026ad0674h
+dd 0b56e4f74h
+dd 0e4d8abcbh
+dd 03e21284bh
+dd 024a2f35eh
+dd 0c9a0bc7fh
+dd 035b33768h
+dd 03d420625h
+dd 0395d3686h
+dd 07ff6dad4h
+dd 0c6dbc511h
+dd 020d7d1c5h
+dd 0e3309d0ch
+dd 0a6cbaed3h
+dd 07dc53c12h
+dd 0a7cf7103h
+dd 0165efd1ah
+dd 0a30828b7h
+dd 07ce6e7edh
+dd 040bcc42dh
+dd 07bba211fh
+dd 0ac6ac0f0h
+dd 0ef4fb2a3h
+dd 0e9a0d738h
+dd 0de0e28c9h
+dd 010332426h
+dd 044a902ddh
+dd 0235b1c89h
+dd 01843587ah
+dd 0ac8622ech
+dd 0da0adaa3h
+dd 0f179d1d6h
+dd 03a7dfb5bh
+dd 099a0a7bfh
+dd 0e0787ea2h
+dd 0e0137487h
+dd 06ad069ceh
+dd 0f206d52ch
+dd 0891079f5h
+dd 01e8113a0h
+dd 02f484ec6h
+dd 03ec14c63h
+dd 07da2d4b5h
+dd 00c95b270h
+dd 02719a467h
+dd 00c7dc46ch
+dd 002afd2c4h
+dd 0f3ea830ch
+dd 0562600a9h
+dd 0523eda62h
+dd 07d70ac99h
+dd 013efb751h
+dd 00683f130h
+dd 0a07c063dh
+dd 023bf41b5h
+dd 04f803faah
+dd 0a02fa623h
+dd 0d9b798d7h
+dd 01523f7cch
+dd 090911410h
+dd 0f53cf7d1h
+dd 0cfe7bb1ah
+dd 0a7abdc5ch
+dd 07d3999a1h
+dd 0d45040a1h
+dd 0d99ca2e3h
+dd 0c27f7cddh
+dd 0c047e2fch
+dd 02f3f1caeh
+dd 035a138e9h
+dd 047e9fb6fh
+dd 0470a2054h
+dd 0bab872f6h
+dd 0b1e76693h
+dd 0485a41adh
+dd 0b9097684h
+dd 0a2fc010eh
+dd 087306df3h
+dd 00ba27f0dh
+dd 020cff0e2h
+dd 0845d92e6h
+dd 01a34495bh
+dd 04a72249eh
+dd 09ab53319h
+dd 0ae969f63h
+dd 0b329fc98h
+dd 06d9941a1h
+dd 0a0c63408h
+dd 01570d4ceh
+dd 0133c929bh
+dd 03e7bd7b8h
+dd 0a6b1bfc0h
+dd 08fbdf7c8h
+dd 01487c7cah
+dd 0b0c36c08h
+dd 0bc0f2c07h
+dd 0d94906f0h
+dd 0f8ed970dh
+dd 0eb8a90a6h
+dd 04b33f1efh
+dd 01d75e418h
+dd 0693e2cc4h
+dd 0c880e438h
+dd 00f450112h
+dd 0b3617aech
+dd 0cade3333h
+dd 0b6770e63h
+dd 02f1657c3h
+dd 09d88a1deh
+dd 03aaf7570h
+dd 02327fc35h
+dd 0829e7f78h
+dd 0053b9c75h
+dd 07953d0f4h
+dd 032e63624h
+dd 0b20999adh
+dd 07a0666d7h
+dd 06e29c777h
+dd 0637f11f6h
+dd 0691ef1a1h
+dd 009c5e74bh
+dd 042f4fa1fh
+dd 0ad494fc1h
+dd 0d974ac61h
+dd 000070740h
+dd 0c5bd4effh
+dd 090a29756h
+dd 0151b11e2h
+dd 0ac40cb32h
+dd 01ace8bc1h
+dd 0c4e28b20h
+dd 01f51dc7ah
+dd 0694ea749h
+dd 0177ba3f2h
+dd 00b78399dh
+dd 0fee827cah
+dd 0ae4682ceh
+dd 0b7e8804dh
+dd 08ea58c83h
+dd 058a85466h
+dd 0e80212b0h
+dd 015ca8de4h
+dd 06c9507a0h
+dd 08bb94136h
+dd 04750e52ch
+dd 0e4511387h
+dd 04a998e52h
+dd 090e77e2eh
+dd 06a7dcbf8h
+dd 0f0daee48h
+dd 0e9ad07bah
+dd 09964cd2bh
+dd 0ee107a36h
+dd 088c4735fh
+dd 0da9cea71h
+dd 0f9090d23h
+dd 0c0d8e94ch
+dd 0d1f91164h
+dd 062e8c935h
+dd 028458784h
+dd 0ce10fdb2h
+dd 09ef15640h
+dd 0606eb5e5h
+dd 0510fc922h
+dd 0047f54aah
+dd 05df011c5h
+dd 00a1cbf9eh
+dd 095c63941h
+dd 08b754e03h
+dd 0224150c8h
+dd 0ed9ef9adh
+dd 085793c4dh
+dd 036e5c9bbh
+dd 07aa4750fh
+dd 024c939b3h
+dd 0d1657956h
+dd 0013b8a8bh
+dd 0e83c7516h
+dd 0bde41918h
+dd 065fb84bbh
+dd 0a1da0f77h
+dd 0d57ab797h
+dd 0a056c421h
+dd 016ca7d11h
+dd 0965f4adeh
+dd 03c6f3857h
+dd 0ee8dba6ah
+dd 046c86abch
+dd 05eb96cb8h
+dd 0dc859f20h
+dd 049d2a9bfh
+dd 048c12153h
+dd 076d1d126h
+dd 0ec616ddah
+dd 04cd7859bh
+dd 04403b85bh
+dd 0ccbcc2b2h
+dd 0ad044867h
+dd 0774792f4h
+dd 090ba00e2h
+dd 013515ef9h
+dd 05131cd14h
+dd 0b3b4ef51h
+dd 056c21e6ah
+dd 0fa5e1a7fh
+dd 0d81075edh
+dd 09fb6a034h
+dd 082d49a29h
+dd 05fc95e25h
+dd 0b62c3ddeh
+dd 026efd5d2h
+dd 0574f28f2h
+dd 060f056f2h
+dd 0184a9870h
+dd 0b0b49cc4h
+dd 0f25dbe48h
+dd 0a3e9379fh
+dd 04779e5a3h
+dd 0692598feh
+dd 0baa3cf2ah
+dd 0c17078c6h
+dd 0863a10b7h
+dd 0f6b5e60ah
+dd 0978ae57ah
+dd 0b12b0de9h
+dd 07dea0ab6h
+dd 09ca11284h
+dd 09d0e8ef4h
+dd 0d8c2d154h
+dd 0ee0a428fh
+dd 0db1a46fah
+dd 0171cf1fch
+dd 01e393ba1h
+dd 096bb3d09h
+dd 00aa0f134h
+dd 0ef6f4e46h
+dd 0ef91c126h
+dd 07d2d46f8h
+dd 0d578db97h
+dd 03a6aa5d3h
+dd 03829dc9dh
+dd 0c8149ba0h
+dd 00f668d09h
+dd 032146eb9h
+dd 0da047572h
+dd 0be36515eh
+dd 07a73fc48h
+dd 0831c937ch
+dd 03f9dfe2dh
+dd 0c8810c8bh
+dd 0aa7452bbh
+dd 0ee96a0b8h
+dd 0f338bd1ch
+dd 03519b86bh
+dd 03d03451dh
+dd 0183bd9e4h
+dd 03da5ccfch
+dd 0d762416ah
+dd 082310e76h
+dd 048dda809h
+dd 0fe444a4bh
+dd 0c4562207h
+dd 011c4c7cbh
+dd 0ce10d81bh
+dd 03285c387h
+dd 0150334b9h
+dd 0cd89385fh
+dd 058c7d45ah
+dd 03fabe2f4h
+dd 020978156h
+dd 0dc2f10e5h
+dd 06549a274h
+dd 0d9026c85h
+dd 0c36a6a4eh
+dd 0cefa95aeh
+dd 0ff12ff44h
+dd 077009bd6h
+dd 059f87445h
+dd 0ef9727d4h
+dd 02e44bf94h
+dd 0f88ece16h
+dd 00ce7b830h
+dd 0cd5560aah
+dd 011c03209h
+dd 0a101fea7h
+dd 0dc8652c1h
+dd 01922a7eeh
+dd 0d09b89a5h
+dd 02127426ch
+dd 01c33e3d9h
+dd 09d8d44b8h
+dd 061db72a6h
+dd 028ef86afh
+dd 0c45961d9h
+dd 0e39f011ch
+dd 05a7d708eh
+dd 0cb8cee22h
+dd 03319ccd3h
+dd 0ceb4e028h
+dd 0bbce149fh
+dd 0c8d87810h
+dd 051f378c7h
+dd 0189c271bh
+dd 0ded0bbddh
+dd 06bb32112h
+dd 0004f1c84h
+dd 0232df379h
+dd 020a892ddh
+dd 00b0f2a0bh
+dd 0d0de73e3h
+dd 02f0ddab2h
+dd 0e4bc71b3h
+dd 0fc222a53h
+dd 00967d73fh
+dd 0cf6864abh
+dd 037b3e03ah
+dd 06123e92ah
+dd 02dda0af9h
+dd 049c86a5fh
+dd 0fcf8cac5h
+dd 0e91da38ch
+dd 09fd901e0h
+dd 0728c1805h
+dd 088811e93h
+dd 097902afeh
+dd 083917b38h
+dd 031b7975dh
+dd 0b4aac583h
+dd 01aa8e510h
+dd 0224d120ch
+dd 053e1ddbch
+dd 054296ac2h
+dd 034e70b9fh
+dd 023b99c73h
+dd 031d56f8eh
+dd 0c8309094h
+dd 041bf86cbh
+dd 04b3ca5a6h
+dd 0c4de122ch
+dd 0e17b15f5h
+dd 0e1ef59e0h
+dd 071b65289h
+dd 058f22ac9h
+dd 07d289a1ch
+dd 0ab23d0afh
+dd 0ff8a0d2fh
+dd 0eb247e20h
+dd 0c73d1713h
+dd 0a6bda87bh
+dd 0c45a783ch
+dd 06b1cb598h
+dd 0840ac43dh
+dd 0e144ff72h
+dd 06b9e1f49h
+dd 0ababb151h
+dd 0bb6f5ccfh
+dd 0cb572cc2h
+dd 0a93e4e36h
+dd 0f6a00c64h
+dd 003d75129h
+dd 04522d78dh
+dd 03e76a11eh
+dd 053c555a3h
+dd 0e69cbd35h
+dd 0d4b50abfh
+dd 0c9a00308h
+dd 0f6d64513h
+dd 0e8792d08h
+dd 04fc80863h
+dd 0ec0a73b4h
+dd 070c8b6ceh
+dd 0b33482dah
+dd 0c2f8db3bh
+dd 08739617ch
+dd 0d3730b75h
+dd 0ab1044afh
+dd 036901d71h
+dd 02a325600h
+dd 016ed0a1ch
+dd 07b17b5aeh
+dd 00e583e52h
+dd 00c8d9a83h
+dd 0287a7b99h
+dd 0fd893be4h
+dd 0fe08e34bh
+dd 03b51a322h
+dd 0492e22a9h
+dd 035408f3ch
+dd 03f18d1d1h
+dd 02778cccah
+dd 0dc9604ebh
+dd 0273a8ea2h
+dd 062969871h
+dd 0bc4c209fh
+dd 044fd68bbh
+dd 0224b3f7dh
+dd 0544faac0h
+dd 0ca3994bbh
+dd 07949ba33h
+dd 08705b4a0h
+dd 0344d610ch
+dd 007ab9f5bh
+dd 0448e94a0h
+dd 0507ba1dbh
+dd 07cc951c4h
+dd 0381fc494h
+dd 0d0bf574fh
+dd 09a77e640h
+dd 04f980f70h
+dd 0aaf6ed2dh
+dd 0e5ae2291h
+dd 0119b3be1h
+dd 05d69ac25h
+dd 0dad96acfh
+dd 04a4e7582h
+dd 0acd21d22h
+dd 081675f62h
+dd 0fec63c76h
+dd 077990e09h
+dd 05c5ca643h
+dd 0e5e9f137h
+dd 08f6accedh
+dd 0972c6ae4h
+dd 04bce5c9dh
+dd 02176ed5dh
+dd 00b9708f4h
+dd 062a5384dh
+dd 059b5766fh
+dd 066859180h
+dd 0b28d2c6ah
+dd 00c02f8b0h
+dd 0229f874ah
+dd 0829f6903h
+dd 0a4057f72h
+dd 0083655a6h
+dd 034dc1acbh
+dd 06dd65f8eh
+dd 0a56d40cbh
+dd 028ee2b60h
+dd 02640a501h
+dd 0f6a29919h
+dd 05271da47h
+dd 0ecedc6a7h
+dd 09c36c433h
+dd 0abe2cb6ah
+dd 0acb74c93h
+dd 0d6cb98d1h
+dd 09d7be7b6h
+dd 0fd146f9dh
+dd 0b2d685ebh
+dd 0681416ach
+dd 0eab41e65h
+dd 0e80296afh
+dd 05ffef59ah
+dd 0add696b2h
+dd 0f6b6d9d3h
+dd 0f8954843h
+dd 0fb50fcach
+dd 04149467bh
+dd 0271b723fh
+dd 0e27fbaddh
+dd 00f5fa44eh
+dd 00f4f47e0h
+dd 00523c579h
+dd 0ae517d31h
+dd 0d0a27337h
+dd 07dba9de9h
+dd 0d3fa1f30h
+dd 0c31a8a77h
+dd 06f7c96d1h
+dd 0abd3dbe8h
+dd 0c0fbf1a4h
+dd 097f950adh
+dd 064eb2de8h
+dd 04ad96bbbh
+dd 00468c675h
+dd 02a56bc17h
+dd 0dc9f4502h
+dd 066733922h
+dd 0b8f430cdh
+dd 0217cbbaah
+dd 096e838bdh
+dd 00dfe4408h
+dd 03cafd9bdh
+dd 0956205beh
+dd 05537fb4ch
+dd 0fcced792h
+dd 0157dbc99h
+dd 097d14ccdh
+dd 04c9336dbh
+dd 0c51fe582h
+dd 084a7e84ch
+dd 0bdd5a10fh
+dd 0a1a71d39h
+dd 0f68fba5bh
+dd 0c7e9c52dh
+dd 06776bbcch
+dd 074cf77efh
+dd 0a7c3e1e9h
+dd 015485b99h
+dd 0431a2fa9h
+dd 06e21d518h
+dd 0a12c17f2h
+dd 0f01ca7b9h
+dd 0ce3df3a7h
+dd 009a11ea0h
+dd 0fbb34fcfh
+dd 0b8ff2880h
+dd 05ae52872h
+dd 011a9e6ddh
+dd 0b37a1be0h
+dd 09436c14ch
+dd 0eae72fcdh
+dd 0e75aec79h
+dd 04acebb96h
+dd 0b5bbe660h
+dd 0a4da9fd3h
+dd 0ac7f2413h
+dd 0c2650ba8h
+dd 0f7063d87h
+dd 06521c53eh
+dd 0cb6b3e5ch
+dd 09eb3b81fh
+dd 0e4f1e03eh
+dd 0e5bdec6eh
+dd 059249ff0h
+dd 0fd0f66ffh
+dd 0115b4504h
+dd 0ad237306h
+dd 0e9d36924h
+dd 01e6b0c72h
+dd 0cb0291a3h
+dd 0da4c18ebh
+dd 0ab9b31eah
+dd 0310d8b83h
+dd 0ae6d14a2h
+dd 02e4d401ch
+dd 08d4a7832h
+dd 09c2ffa1ah
+dd 01bdc273dh
+dd 030058f28h
+dd 02da64bafh
+dd 04aa368afh
+dd 033e9a6f5h
+dd 00867e939h
+dd 03087fbf8h
+dd 03684d0b6h
+dd 0829a682dh
+dd 0fecfdca3h
+dd 034ce886fh
+dd 0e0ce90abh
+dd 01ba5b177h
+dd 0f8861051h
+dd 0905f300ch
+dd 08bd77673h
+dd 0934ce31dh
+dd 0064357b1h
+dd 0ac858d1ch
+dd 09f607e8dh
+dd 032484b57h
+dd 0fc8301c3h
+dd 04df14230h
+dd 085deea3fh
+dd 0b5a54272h
+dd 0bb3ca77eh
+dd 0978bcf23h
+dd 09245157dh
+dd 0fd651d1ch
+dd 034ae6c22h
+dd 03d98b1c8h
+dd 005214144h
+dd 0914d11c5h
+dd 0ef0b971ah
+dd 03cc6ac8dh
+dd 09d6f6b8ch
+dd 052bee1e1h
+dd 001965cfdh
+dd 075c49e8eh
+dd 01ffa7bb0h
+dd 0b38c5f60h
+dd 0882c5c97h
+dd 0d3db3f1ah
+dd 0f2f9a7ach
+dd 0b92b016eh
+dd 041a69679h
+dd 0bf26ec26h
+dd 0e652c01eh
+dd 0ee18a6c9h
+dd 0529ded61h
+dd 095ed7dd4h
+dd 010f98aadh
+dd 0f3de7eb9h
+dd 0dc3775dfh
+dd 0a72fbf73h
+dd 00ffed3b2h
+dd 075ac4139h
+dd 02761e138h
+dd 00546bfe0h
+dd 062e1a703h
+dd 0b25e7e78h
+dd 079ed2d10h
+dd 02f098810h
+dd 09b270139h
+dd 0ce8052edh
+dd 0cd836223h
+dd 0ee437a3dh
+dd 0858194ech
+dd 0642627c6h
+dd 061f5e24dh
+dd 038f4e58bh
+dd 0fc18eafeh
+dd 072384c62h
+dd 08bded737h
+dd 0015e079eh
+dd 0e811918fh
+dd 0a01a1294h
+dd 095a31688h
+dd 0275e25f8h
+dd 097639d42h
+dd 046b29f8fh
+dd 0c8dfdf4fh
+dd 07e4ae5a7h
+dd 0cb98675eh
+dd 0b1d833f5h
+dd 05b9bc10dh
+dd 0d2be9668h
+dd 0ee1b79c0h
+dd 0a779c3aeh
+dd 0b5ce3808h
+dd 02bd6adb0h
+dd 04d8e5fb5h
+dd 0c578475eh
+dd 0b065370dh
+dd 078f946adh
+dd 0423193a7h
+dd 0bba4a06eh
+dd 02b6dcf49h
+dd 0add0c6d6h
+dd 0e5b8aec0h
+dd 08a3652ceh
+dd 01aa3d05ah
+dd 08451b06ch
+dd 0e2b9a239h
+dd 0fbcee792h
+dd 09606f460h
+dd 0c4f65564h
+dd 015ff7cb0h
+dd 0d19cfee1h
+dd 0b951a674h
+dd 0f1bad303h
+dd 0c33ed77bh
+dd 04c46bc19h
+dd 041df71a3h
+dd 08536eb21h
+dd 0aedc1611h
+dd 02fb586d4h
+dd 0ee4e9e23h
+dd 037335a5ah
+dd 0db74d1dfh
+dd 0718d59d6h
+dd 0a13e0e1eh
+dd 03efca31eh
+dd 0ebcf3fach
+dd 05b40a614h
+dd 0a6e37fe2h
+dd 03fc2cd39h
+dd 01b0d3447h
+dd 096377ce6h
+dd 01a19b0cdh
+dd 07fbd8c39h
+dd 09992a36ch
+dd 063eff30fh
+dd 08a35f561h
+dd 009d7c70eh
+dd 02b66d3f5h
+dd 090445fbdh
+dd 0f8541e18h
+dd 00e54bff9h
+dd 04d1dc201h
+dd 081c1eed1h
+dd 004a3b667h
+dd 0d6f7721ah
+dd 05a930a6fh
+dd 0c914aaa1h
+dd 078fe2379h
+dd 0d4c13b2ch
+dd 0187aa2fdh
+dd 02fa177d1h
+dd 03e66a5aah
+dd 06fd7d3c9h
+dd 0e8381d1ch
+dd 0b32e70b7h
+dd 0f01b781eh
+dd 047e0dea2h
+dd 0c815c303h
+dd 01629de67h
+dd 09cb2bfcfh
+dd 0d7db7b99h
+dd 052f1740fh
+dd 004cf1fd4h
+dd 04c1a6748h
+dd 0ceb0638ah
+dd 0cf8738b7h
+dd 0151c70bah
+dd 0d6a49b5eh
+dd 01e186bceh
+dd 0bae4b4dfh
+dd 001c76fa0h
+dd 094c0c92dh
+dd 0c95ea8adh
+dd 07571ad22h
+dd 0b3dd6972h
+dd 00d7ef60bh
+dd 0d44850f9h
+dd 0d8c79795h
+dd 05542f65bh
+dd 0e07ec4e6h
+dd 0a12efd89h
+dd 0024d60e7h
+dd 0107fd70dh
+dd 072fd900eh
+dd 02e7fe0b7h
+dd 026aade4dh
+dd 017b028a9h
+dd 0a9fa705dh
+dd 0d5df963ch
+dd 02e36fd28h
+dd 05ecdc643h
+dd 0666d3053h
+dd 052af653eh
+dd 05c807c73h
+dd 0ddd42053h
+dd 08347747fh
+dd 064172fafh
+dd 0aaa8d788h
+dd 024b90332h
+dd 02be8a43bh
+dd 0cad7efd0h
+dd 0b0349ed3h
+dd 01f18511ah
+dd 024aaa068h
+dd 0971f1b7bh
+dd 0a87348b1h
+dd 0936fd04eh
+dd 048a2a14eh
+dd 0a91d14b6h
+dd 075f1cb2fh
+dd 033b87084h
+dd 025e04916h
+dd 07deabb6ch
+dd 015b7ab5bh
+dd 094076f61h
+dd 0069d2cbdh
+dd 0d27388e2h
+dd 0cd640dd5h
+dd 031764c38h
+dd 0a2ce62e8h
+dd 01fed6066h
+dd 089a37428h
+dd 072a2950ah
+dd 06dfaafabh
+dd 06a223b23h
+dd 0cc5d2751h
+dd 0637f0496h
+dd 0c00b3612h
+dd 09462c0b3h
+dd 0e7585b20h
+dd 0f4f8258eh
+dd 04a3baba6h
+dd 011018515h
+dd 07da4f3c8h
+dd 0b6f9a375h
+dd 0a114f487h
+dd 0cec7fce5h
+dd 05e7a9799h
+dd 0b866e661h
+dd 016c69d63h
+dd 02a82c62bh
+dd 0442ed5c6h
+dd 038badcfbh
+dd 05fd49942h
+dd 04474fc42h
+dd 09b7d6707h
+dd 09bfcb523h
+dd 02ddc38fch
+dd 04d4b3004h
+dd 03e7d8aech
+dd 0bb370c29h
+dd 03a21e4cbh
+dd 00b7f4ea5h
+dd 0a6372394h
+dd 02067a20ch
+dd 05de69d63h
+dd 03bcb5115h
+dd 036a9efefh
+dd 07729e79ch
+dd 040e056a9h
+dd 03f079d12h
+dd 0468ae612h
+dd 0bd244bc9h
+dd 000b5e017h
+dd 06f0fa853h
+dd 047ddda20h
+dd 0f5de56cdh
+dd 0a1e02d2dh
+dd 0604b8173h
+dd 0b6b27ce0h
+dd 041d0a7ebh
+dd 0de980519h
+dd 0705b7df2h
+dd 0348b96f8h
+dd 0190c4ee3h
+dd 0c9ad0f40h
+dd 0f9a888dch
+dd 0d6c353f3h
+dd 0876027bfh
+dd 0a4f42f37h
+dd 01e515fcch
+dd 0b8bc42e7h
+dd 0ddcbb462h
+dd 0c48f11aah
+dd 0b88c821dh
+dd 06c727d52h
+dd 06bfe7be1h
+dd 017a3190ch
+dd 092c2b543h
+dd 07c8531fch
+dd 014c9ee86h
+dd 052cbac67h
+dd 09117e845h
+dd 0b09ecd92h
+dd 08c77c2d8h
+dd 06895e5ach
+dd 008ecb036h
+dd 0f73e2c70h
+dd 09d5a0323h
+dd 01d77f9edh
+dd 0153bde85h
+dd 0570a524ch
+dd 01f651ed5h
+dd 0b519dfabh
+dd 0724916f6h
+dd 030f33ed3h
+dd 0a2164735h
+dd 04664cc56h
+dd 0101c8a1eh
+dd 0f70cddb4h
+dd 053c3badch
+dd 01c4c40c7h
+dd 0467a9033h
+dd 0b84e3c92h
+dd 01302fdcdh
+dd 0378df591h
+dd 02a328312h
+dd 093e1d9d9h
+dd 0fd017a2ah
+dd 05964387bh
+dd 06ec29e34h
+dd 07a48783ah
+dd 069385711h
+dd 07ca9a083h
+dd 02cd05af3h
+dd 07f50f0d7h
+dd 0b541da8ch
+dd 01b6bb5d2h
+dd 0713d4573h
+dd 045f97187h
+dd 0626766d9h
+dd 0b1f55006h
+dd 0ef6ac05bh
+dd 037c2e394h
+dd 07aa87d6bh
+dd 09035c84fh
+dd 0c4ac7273h
+dd 048197f69h
+dd 020082b72h
+dd 0f9c12675h
+dd 0ed799289h
+dd 0c7bb3ad3h
+dd 0104cf611h
+dd 065575bc1h
+dd 038f45e2bh
+dd 0b3ef81ebh
+dd 003acc2d6h
+dd 005e8b2d7h
+dd 03ee03908h
+dd 0d122ea67h
+dd 0e442150fh
+dd 083f033fch
+dd 08a3f5d37h
+dd 0c1b5129ch
+dd 0440cdb8ah
+dd 0ced6c30ah
+dd 0a32785ach
+dd 0b39cfa7ah
+dd 0c37c0f12h
+dd 059b4cfd5h
+dd 0ea96fc0eh
+dd 013c33361h
+dd 0179c5598h
+dd 03fda4bd2h
+dd 0bf3749eeh
+dd 0fb49ed98h
+dd 057a88f49h
+dd 034e83803h
+dd 0e4a2edf7h
+dd 069bdd3d1h
+dd 03f471b16h
+dd 038da3daeh
+dd 097568d4eh
+dd 0870f62b6h
+dd 0c2c7c846h
+dd 070277fa7h
+dd 0396e730ah
+dd 04c8ae3a8h
+dd 00e6f4ec0h
+dd 04ff386b7h
+dd 02a7b49ech
+dd 0abb4837ah
+dd 0251fc624h
+dd 06b1b3370h
+dd 04bb88f8eh
+dd 092eac07fh
+dd 00d3d7609h
+dd 0f1573d25h
+dd 0e4a5754dh
+dd 082ab2f8ah
+dd 040a5ff5fh
+dd 0ddfb0a4eh
+dd 08497e753h
+dd 03e306f00h
+dd 0521f3fe4h
+dd 0e640620bh
+dd 0358a8d0bh
+dd 080d6a62dh
+dd 04731f849h
+dd 0b5eeb249h
+dd 0b5eb2336h
+dd 0dd680b92h
+dd 0a8e623efh
+dd 04fbcd180h
+dd 093ebf17dh
+dd 04ccbbac7h
+dd 0b18bf31fh
+dd 06782c4efh
+dd 0529c5e3ah
+dd 078646562h
+dd 0f5b2a519h
+dd 0aee256e5h
+dd 08bd6cd6ch
+dd 07baec1c9h
+dd 064295c93h
+dd 0b0ae1294h
+dd 006ab2d3fh
+dd 0eb8c7e65h
+dd 089b23013h
+dd 02766e83dh
+dd 06fd219f7h
+dd 051144c51h
+dd 058f404b4h
+dd 00061263eh
+dd 0fd208666h
+dd 05edfc11eh
+dd 0c4d25a44h
+dd 0e0fd6a7ch
+dd 0535203a3h
+dd 00ca4e52fh
+dd 06cac9a23h
+dd 0ca36476eh
+dd 0acbe7cf3h
+dd 09d5a49f8h
+dd 0ac1a75b2h
+dd 076925ccch
+dd 040b19da7h
+dd 00aadb908h
+dd 0d6272e3fh
+dd 0bf539ae9h
+dd 01d3f726ch
+dd 042737c93h
+dd 0b3c78822h
+dd 001cb6b45h
+dd 048c860e5h
+dd 08f9f789eh
+dd 0d01c9af4h
+dd 025034895h
+dd 0460d270fh
+dd 0c7736f9fh
+dd 0ff87e1b2h
+dd 0aa8c2d0ch
+dd 0f21a6d89h
+dd 0139affcch
+dd 09e85870eh
+dd 090db77bbh
+dd 0f3dea4b4h
+dd 0db381edeh
+dd 0fc086357h
+dd 07d55ff38h
+dd 0140a9e53h
+dd 0b047887bh
+dd 0fc76f7c3h
+dd 0fd6adec7h
+dd 0e2cf29d8h
+dd 03a5594fbh
+dd 02493866bh
+dd 0e01c7adah
+dd 094f7b056h
+dd 0559f5243h
+dd 0a890abd3h
+dd 03adc68e4h
+dd 035f50e55h
+dd 0bb1bb6c8h
+dd 042ecd66dh
+dd 0c9f927ach
+dd 0b4aaacabh
+dd 074e528d7h
+dd 0fd651cf9h
+dd 0af2fa272h
+dd 070a770ffh
+dd 07b040df4h
+dd 07d4afc18h
+dd 0084a1b25h
+dd 0df6232f2h
+dd 05d875a04h
+dd 0732382b4h
+dd 09c38fd5eh
+dd 0de6ee840h
+dd 0d8dfd526h
+dd 0bac84153h
+dd 0ef010928h
+dd 01ac9eddch
+dd 0130ca20eh
+dd 074c0576fh
+dd 09cd5f5aeh
+dd 0e9549ad1h
+dd 0e0482305h
+dd 06003aac0h
+dd 03e1d57edh
+dd 0f31d9347h
+dd 0d21c818ah
+dd 057bece02h
+dd 0ce69193eh
+dd 0e2978b78h
+dd 0befcac95h
+dd 0d387e5afh
+dd 0dea7ecc2h
+dd 0804ae7f9h
+dd 08e0def16h
+dd 05b8ac0e7h
+dd 045403c68h
+dd 05ebee4a2h
+dd 058f14f5dh
+dd 0bf32807ch
+dd 099e23725h
+dd 0be24c865h
+dd 071018da7h
+dd 0cd1497d6h
+dd 0b0c0020ch
+dd 037191c72h
+dd 0c77c8652h
+dd 0f514be80h
+dd 0ff0975bdh
+dd 0be9fcf7fh
+dd 082d55b6eh
+dd 031294e78h
+dd 02139fb09h
+dd 0eaa7504dh
+dd 0b772587ah
+dd 05b1bc068h
+dd 04d0fc9bdh
+dd 0cc61f81bh
+dd 0458cc355h
+dd 094b0c024h
+dd 033f80f4bh
+dd 0c074d371h
+dd 0cb502cb0h
+dd 0deb98728h
+dd 07d00b78fh
+dd 0f83f0cbeh
+dd 02c9eac3bh
+dd 0f7452c11h
+dd 0bf934d68h
+dd 0d27b2ffch
+dd 091797a34h
+dd 0878fc025h
+dd 0db1e21c7h
+dd 0323488adh
+dd 035759d44h
+dd 0e74a075ah
+dd 0a9c9352ah
+dd 02bc99158h
+dd 05c6f2683h
+dd 0e093c4cbh
+dd 0977226f9h
+dd 0856fc540h
+dd 029fe8d46h
+dd 04bd0ceech
+dd 0e8e7b4d5h
+dd 0a57c3af3h
+dd 09ca14e27h
+dd 0a1f96f28h
+dd 0b4504dfbh
+dd 0452a7951h
+dd 06bf052ech
+dd 035bdf781h
+dd 047aff59dh
+dd 05937cd8ch
+dd 050c0d6cah
+dd 07d9a4565h
+dd 043d1785bh
+dd 077cead5bh
+dd 05e5d3e0dh
+dd 0eb8b4b8bh
+dd 04776e40fh
+dd 05c4ed098h
+dd 002a23c8dh
+dd 007745046h
+dd 005b2cb37h
+dd 0ffdcc8b0h
+dd 0f1c173bfh
+dd 06bc85baeh
+dd 0a7711f1ch
+dd 024271d78h
+dd 0e01ac0a4h
+dd 0899a8814h
+dd 0402dcb11h
+dd 0f807fdbfh
+dd 06540079eh
+dd 0739de2e9h
+dd 0290c1291h
+dd 08da5831eh
+dd 052f2bff2h
+dd 0e5165526h
+dd 0a761eba1h
+dd 0db701076h
+dd 0d752fd0dh
+dd 0dd0e3c40h
+dd 0a736ac2dh
+dd 007f6b4a4h
+dd 009db1393h
+dd 045589909h
+dd 00e6a2ce7h
+dd 089d3d455h
+dd 0962ddbech
+dd 0d05470e7h
+dd 0906bfef0h
+dd 0f1f2561dh
+dd 039c06850h
+dd 085c5f6cdh
+dd 07dbf3ea9h
+dd 048f0f7d4h
+dd 07f6a5ed0h
+dd 010d2eebah
+dd 025e79beah
+dd 059543ceah
+dd 0f5d2daf7h
+dd 062a74baah
+dd 0d16ffa5ch
+dd 08c1c4e3dh
+dd 0435d211bh
+dd 08d36217eh
+dd 0efcf95fdh
+dd 0abf66a7dh
+dd 012c3c9fah
+dd 014124dc3h
+dd 051983745h
+dd 03067a02dh
+dd 002de2e3eh
+dd 03d3a5ad2h
+dd 05a0feab0h
+dd 0b97a9c2dh
+dd 02e656c19h
+dd 0cc66d885h
+dd 00be81133h
+dd 0ea019a9ch
+dd 004eaeac3h
+dd 08c09061dh
+dd 09bb14f9bh
+dd 048cc272fh
+dd 0916f4177h
+dd 0d013fdcdh
+dd 01060794ah
+dd 0c66d5155h
+dd 01b33a789h
+dd 05404fa66h
+dd 02a583ed4h
+dd 0cc86b6edh
+dd 0e85bc14ah
+dd 0c0fb2723h
+dd 0d7658d83h
+dd 0280053d7h
+dd 06c7c47a7h
+dd 02f9d321eh
+dd 08bfc00bah
+dd 090c3d0fdh
+dd 0da3baaa8h
+dd 045a5b2d0h
+dd 08511ffbah
+dd 08890b11eh
+dd 0c4c946dch
+dd 0c1dab56eh
+dd 085808deeh
+dd 087257df3h
+dd 0d21031eah
+dd 0bbaeb127h
+dd 0826a162dh
+dd 0739f0225h
+dd 0ab5e212eh
+dd 09f93bd52h
+dd 05af6e973h
+dd 03a69b7fbh
+dd 0d9e77771h
+dd 06680a4feh
+dd 061c3ead0h
+dd 04ce9f43ah
+dd 09fee3affh
+dd 04ebd18f1h
+dd 015546db8h
+dd 05bf5b381h
+dd 0d55ade9bh
+dd 0f98540c2h
+dd 050aec8cch
+dd 01d9c5215h
+dd 0edc1f27ch
+dd 09e1d0876h
+dd 0bcf6d20ah
+dd 0084e41ddh
+dd 07d59a7bch
+dd 033e8d944h
+dd 0331c4ab9h
+dd 0555d56b9h
+dd 00b7ade17h
+dd 09d522334h
+dd 0c3f7583bh
+dd 0899dae82h
+dd 0314379b7h
+dd 051787284h
+dd 0601f227ah
+dd 0a3a25508h
+dd 02fc100c5h
+dd 08798e672h
+dd 084073946h
+dd 0ba9b0653h
+dd 0b16daea4h
+dd 01d5063deh
+dd 02fb6cff7h
+dd 0c7deedc0h
+dd 03b00f083h
+dd 0960c4063h
+dd 092ca4866h
+dd 047630208h
+dd 0bb3bd450h
+dd 0251d641dh
+dd 0ab3be0cah
+dd 0435ce4eeh
+dd 04246ac89h
+dd 0f03676beh
+dd 029c19110h
+dd 0694df317h
+dd 0a367ef20h
+dd 05e610a80h
+dd 0c078ef46h
+dd 06f77d9cbh
+dd 04688a36bh
+dd 0a85c2906h
+dd 04ea354e4h
+dd 063047f60h
+dd 0110daf5ah
+dd 0c7741834h
+dd 0bb29f34eh
+dd 0cba5adadh
+dd 00095bfefh
+dd 07d261bf9h
+dd 014411380h
+dd 05a086ba3h
+dd 0c0d37b23h
+dd 058cf1091h
+dd 0494041eeh
+dd 05157b7deh
+dd 07d124364h
+dd 09b0887fdh
+dd 0712a4a26h
+dd 058bf7fd4h
+dd 070b1123dh
+dd 06fa1fc9ch
+dd 05ca9fa99h
+dd 0271573d8h
+dd 05e8733f7h
+dd 07df2a2a9h
+dd 0717299ebh
+dd 0c0e76b4bh
+dd 03da8fcc9h
+dd 05c82ef8ah
+dd 04d80c8bfh
+dd 0fbb21a23h
+dd 09a37d761h
+dd 075cc026bh
+dd 06d7d57fdh
+dd 0f38fb37eh
+dd 04c31e288h
+dd 0acb33bd8h
+dd 02bf94cdbh
+dd 0b22d2916h
+dd 0910291ffh
+dd 083a07453h
+dd 082e4f7c9h
+dd 0ad6b7b57h
+dd 08a95193dh
+dd 0210baa68h
+dd 09c1a11f1h
+dd 06e509659h
+dd 0e08a0f3eh
+dd 0289948c9h
+dd 079e4f212h
+dd 0b5a70e9ah
+dd 0d826cb72h
+dd 051cbf52ch
+dd 08675f485h
+dd 07b544c49h
+dd 037599c5ah
+dd 019c8efddh
+dd 089b7cb01h
+dd 0812064f2h
+dd 0d0ccbfd8h
+dd 0ef1af3c5h
+dd 03abc1b09h
+dd 02e028532h
+dd 0d2541a30h
+dd 098317dbah
+dd 058bf8e76h
+dd 0ea9ae3e1h
+dd 0f224b2f3h
+dd 085f32505h
+dd 096fd2d40h
+dd 0262b346eh
+dd 047da14f3h
+dd 0cf9036f1h
+dd 01166f648h
+dd 084b20778h
+dd 0c771179bh
+dd 09f827e60h
+dd 024a0501bh
+dd 0cc37d91dh
+dd 0eb9fcb5ah
+dd 0bfe27d6eh
+dd 0b41283fch
+dd 02656c59bh
+dd 0c906a64fh
+dd 08e9c4a8ch
+dd 00c28256ch
+dd 08b84e3b8h
+dd 091d25abfh
+dd 0ccb70d8bh
+dd 07442b698h
+dd 0bcbceec1h
+dd 01edeacb6h
+dd 024aa28e3h
+dd 0f2dc881ah
+dd 00e0ea265h
+dd 0518b5a94h
+dd 0a483e491h
+dd 09dc8a6d8h
+dd 0d78d501eh
+dd 05a9c5588h
+dd 0f7438fa1h
+dd 0e37cf66bh
+dd 0fc4a76c1h
+dd 0933131c0h
+dd 00eee5d14h
+dd 04128f15fh
+dd 0d7f7cd16h
+dd 03c9f11dfh
+dd 0d28424f0h
+dd 0eff97981h
+dd 0c5f804f4h
+dd 0a5b7f247h
+dd 0316d28f3h
+dd 0aad481e9h
+dd 04ed56e49h
+dd 0bd556f33h
+dd 07e0c9d3bh
+dd 07d77126ch
+dd 0dce5c053h
+dd 01490da1dh
+dd 071b27e2eh
+dd 042d7ee9dh
+dd 036e1df89h
+dd 0093c91cch
+dd 0361d29ceh
+dd 06799bf70h
+dd 056e1ffb8h
+dd 0a4a5cafch
+dd 063b6bb0ah
+dd 008272a09h
+dd 0da713017h
+dd 04ee8e0e4h
+dd 00cfa5790h
+dd 0aa7525a6h
+dd 030347738h
+dd 0a1ebe808h
+dd 040f59dcdh
+dd 055bfb40eh
+dd 0cc68a0a3h
+dd 0f5160505h
+dd 07be43ea4h
+dd 064e161e2h
+dd 0f60e536ch
+dd 0615d4d08h
+dd 086784ebbh
+dd 0facddbf0h
+dd 0bb4a8b3ah
+dd 0a0fe885ch
+dd 0860588e5h
+dd 0b93ab72ah
+dd 04e42c6edh
+dd 07ccca924h
+dd 0ee3a2a1ah
+dd 0c085e84eh
+dd 06758c159h
+dd 06d2e1044h
+dd 0400006f2h
+dd 0024ddc11h
+dd 04a24a8dbh
+dd 06852c703h
+dd 01a84e933h
+dd 0216d79b9h
+dd 0e9779b53h
+dd 0a494e3efh
+dd 00d02a6cbh
+dd 0fcef74e9h
+dd 05e6f72c9h
+dd 0145a12c8h
+dd 0b0ee4c07h
+dd 0469ddaa7h
+dd 0def56ee6h
+dd 08fde5c98h
+dd 093c4b4deh
+dd 076250893h
+dd 06f723f86h
+dd 03ab3998ch
+dd 025085f70h
+dd 0f2f843e1h
+dd 0f47e249fh
+dd 0e7abddcfh
+dd 0d0656debh
+dd 0c7be94b1h
+dd 013b9013fh
+dd 0a3c187ffh
+dd 0f9980a3eh
+dd 09632b8a9h
+dd 0ce298cb3h
+dd 044a08ea0h
+dd 0ea01bdfbh
+dd 0fb0f67e3h
+dd 0fce91ff6h
+dd 050b9b74eh
+dd 00e2a5bd4h
+dd 018cae0a7h
+dd 0e55ce55fh
+dd 008e32fb4h
+dd 014cea2f2h
+dd 08291bf72h
+dd 075e05255h
+dd 039647b30h
+dd 06f4b2199h
+dd 0b1d25567h
+dd 01d372314h
+dd 0178b0d6eh
+dd 04e4ceb23h
+dd 035ae703dh
+dd 0e022e4d9h
+dd 098016e50h
+dd 0f7fbb2edh
+dd 05bef0940h
+dd 09ec65d68h
+dd 0c9868bbah
+dd 07068d952h
+dd 02e366304h
+dd 0e585f1e7h
+dd 0141b545ah
+dd 08be55a5ah
+dd 074827fb4h
+dd 08a6a47c7h
+dd 0f6392c15h
+dd 049639467h
+dd 01e89ea5dh
+dd 0311bec65h
+dd 0c7b74363h
+dd 0b219979bh
+dd 0b4891de4h
+dd 0297f9a22h
+dd 0021874b7h
+dd 08ef7c19bh
+dd 06adb8215h
+dd 088f27a71h
+dd 0652f154eh
+dd 05cab6273h
+dd 0c66761e5h
+dd 0fcb82bdah
+dd 00d5c1607h
+dd 09623f0a2h
+dd 06989c142h
+dd 0d8435c42h
+dd 0dc7f11a3h
+dd 0cfa19a2eh
+dd 04472ffbbh
+dd 08474e00ch
+dd 0d17702c1h
+dd 0be83b04ah
+dd 05683730fh
+dd 0b5b2ab22h
+dd 0296308b5h
+dd 00b99670dh
+dd 0b97323fbh
+dd 02791f1b4h
+dd 051c9049ch
+dd 0eeffc27ah
+dd 0cd12f978h
+dd 06af840d0h
+dd 0547317e5h
+dd 0174737e1h
+dd 0266058efh
+dd 0b64ed81ch
+dd 004701002h
+dd 087a3a80fh
+dd 08a0c432bh
+dd 0a5844051h
+dd 07509e83bh
+dd 0241d82a9h
+dd 0576ace28h
+dd 028cd4ae3h
+dd 0975c22b5h
+dd 09e6ec9c8h
+dd 0e382a961h
+dd 0d551c811h
+dd 027286520h
+dd 0ee01a640h
+dd 0f8228d23h
+dd 04b6e15a0h
+dd 0e231f7edh
+dd 0e215d52dh
+dd 0dc2c9580h
+dd 0feff68c3h
+dd 033bdd9a0h
+dd 0410841dah
+dd 0456958cch
+dd 0246b6dbdh
+dd 051a17478h
+dd 0ef918683h
+dd 048132c8eh
+dd 04e0a12a3h
+dd 0adc98fb3h
+dd 0f1b74a2eh
+dd 0e76c7a51h
+dd 04c459cb2h
+dd 0b98759cah
+dd 09f47f992h
+dd 044df8e44h
+dd 077e1b6f9h
+dd 0a6260fadh
+dd 0691302fah
+dd 07c3fa9dfh
+dd 0d477d96dh
+dd 06196ac9dh
+dd 0034f4492h
+dd 00d82195bh
+dd 040cb943ch
+dd 0f514191ah
+dd 019891d07h
+dd 00690cddbh
+dd 03d410ec2h
+dd 017146198h
+dd 0c9fdf773h
+dd 071667bf4h
+dd 0b7d1384ah
+dd 06447f355h
+dd 0b2213ee7h
+dd 048bf49a5h
+dd 01c812260h
+dd 09267fd82h
+dd 0f3e236f1h
+dd 07c779334h
+dd 0e8b6aa90h
+dd 05c53b261h
+dd 0e1d561dfh
+dd 0ce856273h
+dd 0fd521407h
+dd 051ebf48dh
+dd 0adfd07bch
+dd 010edfe68h
+dd 023d77957h
+dd 0727953e6h
+dd 07396ec60h
+dd 0f8436746h
+dd 039896e4bh
+dd 002f47958h
+dd 0f75d6669h
+dd 0ba75d270h
+dd 0dd3b6871h
+dd 005c20f1bh
+dd 000416d99h
+dd 09a007da0h
+dd 09f49506ah
+dd 090f4eab0h
+dd 0a60912ech
+dd 0a2d008c1h
+dd 062f6e1f4h
+dd 07cf67cb7h
+dd 021b81492h
+dd 0c59c02c3h
+dd 0a450ea08h
+dd 08b99f4f3h
+dd 0a8e098d7h
+dd 0af485b98h
+dd 08cb8ee01h
+dd 09eea88a0h
+dd 071294560h
+dd 09219cb82h
+dd 0c26e6da8h
+dd 0aabe8e15h
+dd 06d81f302h
+dd 08be84c91h
+dd 0d2e1a610h
+dd 0f02ec1e9h
+dd 0417a2637h
+dd 05c8bbdc4h
+dd 0fa7c23ffh
+dd 0d69f1d91h
+dd 003de17f8h
+dd 0c167498fh
+dd 0723cd003h
+dd 02b78b3d6h
+dd 0aeb86f7eh
+dd 0c5e1586ch
+dd 02baad0a7h
+dd 0376c48e9h
+dd 066a313f4h
+dd 0ed705ad1h
+dd 0ba426d8bh
+dd 05faa895fh
+dd 01c756cdch
+dd 0fc43e1dbh
+dd 0463dca25h
+dd 03f6c99f8h
+dd 0447e6155h
+dd 01df468d4h
+dd 02fcccc13h
+dd 0071b666fh
+dd 0788c3b8bh
+dd 04eba57e2h
+dd 03633138dh
+dd 074634322h
+dd 0e75c3601h
+dd 08c830004h
+dd 04fe9594fh
+dd 09479e0edh
+dd 004d961e9h
+dd 03ce7f1c8h
+dd 0b5385033h
+dd 052c7d064h
+dd 052694f01h
+dd 045b13a83h
+dd 08c1da53dh
+dd 03b4fa86eh
+dd 0b1530b85h
+dd 0f56f0058h
+dd 032f41cd6h
+dd 0c6dad080h
+dd 08a592edbh
+dd 0d97b07e7h
+dd 0f06785c7h
+dd 0783f3c5dh
+dd 03e0aefc4h
+dd 00cf0a4e2h
+dd 018845c83h
+dd 01f61d273h
+dd 03ba40759h
+dd 0d81c8869h
+dd 04feebca5h
+dd 04326a44dh
+dd 0e8f10d38h
+dd 0cbcf8193h
+dd 0a74b00ebh
+dd 0102006d2h
+dd 05e4df1d9h
+dd 034474d08h
+dd 032784954h
+dd 0de676bc0h
+dd 05936e8fch
+dd 08eb8e21bh
+dd 0154028fah
+dd 01c945f9ah
+dd 073da2994h
+dd 0e3dd8834h
+dd 0484d3259h
+dd 0b7717216h
+dd 08b29f965h
+dd 0dcb66f90h
+dd 00d43e791h
+dd 0c8a9cb8dh
+dd 055b3d502h
+dd 094ebeaabh
+dd 013cdc8ceh
+dd 0669c69f2h
+dd 0bab6144dh
+dd 000bae4d2h
+dd 0bc2e7ba3h
+dd 09e8c4c07h
+dd 01c70dbffh
+dd 0e36ef1c1h
+dd 057a13b74h
+dd 0d2c461f2h
+dd 0171a445dh
+dd 07bc4c35fh
+dd 0b81d261ah
+dd 0f0249b29h
+dd 02161b056h
+dd 0f795087bh
+dd 02f2026ech
+dd 080f619a1h
+dd 07462ba4eh
+dd 08a268bbdh
+dd 042574bcah
+dd 0f99d1abdh
+dd 0f0487d18h
+dd 01f070318h
+dd 0c17c9fb4h
+dd 0590d8b25h
+dd 084353fabh
+dd 03355e55bh
+dd 03a46cb82h
+dd 09597c3dbh
+dd 0953799ffh
+dd 027d080d1h
+dd 032c85c8ah
+dd 05fed77fdh
+dd 006333289h
+dd 0e0260b35h
+dd 0010f7430h
+dd 0016bcac8h
+dd 00a27ae32h
+dd 085e6e3f2h
+dd 07804d1a0h
+dd 0e727e879h
+dd 019181fb0h
+dd 0f1d41365h
+dd 00480727ah
+dd 023234b06h
+dd 06bd6738fh
+dd 0732534b5h
+dd 0f73262dah
+dd 0862f977dh
+dd 015b99349h
+dd 0680d9e39h
+dd 08044976fh
+dd 0159b2b74h
+dd 0fc13e37dh
+dd 0155b184eh
+dd 0ad468b20h
+dd 0078d9602h
+dd 077ad0bcdh
+dd 0351d333bh
+dd 076605e32h
+dd 09e1022b9h
+dd 089e6e94ch
+dd 06de2cbd5h
+dd 0f0f30919h
+dd 03c70a17ch
+dd 015e1af66h
+dd 074e75994h
+dd 059593a27h
+dd 04ea6652ch
+dd 0fa1079ceh
+dd 0930a02b3h
+dd 06316e910h
+dd 035d5aa5dh
+dd 0197cb510h
+dd 069c78195h
+dd 006e9369ah
+dd 02625738ah
+dd 04df6504fh
+dd 0a046edf4h
+dd 0107cda4ch
+dd 07498b473h
+dd 0619c4623h
+dd 07f64797ch
+dd 06e730aeeh
+dd 0900b9011h
+dd 0b7988744h
+dd 023041191h
+dd 07c1fa0b1h
+dd 0f5b1b1dch
+dd 0e69f78bbh
+dd 0033791f3h
+dd 08b481b4eh
+dd 0b09319cdh
+dd 0095c6f1ah
+dd 037a4721eh
+dd 0ba50ecd5h
+dd 0e4ebf012h
+dd 01b5a300ch
+dd 00184f393h
+dd 02324a2e2h
+dd 0f59330f9h
+dd 070369680h
+dd 07edc63f4h
+dd 0d2cbc997h
+dd 0e36b2ea6h
+dd 002134526h
+dd 0eece3031h
+dd 0b183f9d6h
+dd 050cf5116h
+dd 027e65727h
+dd 026513a54h
+dd 07772b649h
+dd 026e098d4h
+dd 0314bf14dh
+dd 07ef8f2f6h
+dd 089e3f459h
+dd 095ad98a1h
+dd 0a4b25ed4h
+dd 0607e0025h
+dd 0a3543f76h
+dd 07a48eb80h
+dd 0614001cbh
+dd 0955799aah
+dd 08b5d5710h
+dd 0417a7915h
+dd 088606848h
+dd 06ad0748fh
+dd 0eb9392b5h
+dd 0ea859fdch
+dd 0be033811h
+dd 018032826h
+dd 0a4881144h
+dd 0a10361e2h
+dd 0c844eb90h
+dd 03dbefb3ah
+dd 0f2f07089h
+dd 04f0bebech
+dd 0f9457964h
+dd 016a565efh
+dd 0be285dc1h
+dd 0640cef2fh
+dd 0163ec951h
+dd 0a1b910aah
+dd 0c6fc6beeh
+dd 04d573df5h
+dd 08136c55ah
+dd 0e7e854fah
+dd 0f78a4937h
+dd 045e6c172h
+dd 06212a3f7h
+dd 0a00a892bh
+dd 0e5895464h
+dd 0cc9b9cbch
+dd 0e6d777cch
+dd 0c195dea0h
+dd 0d64a4709h
+dd 0f9787653h
+dd 0189f3659h
+dd 005f388b2h
+dd 0884eea7ch
+dd 0c67e76a9h
+dd 0dcd5826dh
+dd 03426b279h
+dd 0ba86febdh
+dd 06ed3c312h
+dd 036fa6102h
+dd 013edf901h
+dd 097e60e74h
+dd 0342ab8dch
+dd 0a2019c9eh
+dd 0f6fcf6d4h
+dd 0c6c5fc47h
+dd 06b062349h
+dd 0711e93a7h
+dd 0082c6bb1h
+dd 0546bd6f9h
+dd 0b06e6010h
+dd 0a9e0300bh
+dd 0acea0f52h
+dd 00dbc8712h
+dd 000be08e2h
+dd 0b177b869h
+dd 0b38e4247h
+dd 09d7cc8feh
+dd 004b35716h
+dd 08e9b5556h
+dd 07c480407h
+dd 086c90b50h
+dd 0573d1896h
+dd 07ef3b083h
+dd 0ec7ee958h
+dd 036f6b6c7h
+dd 05af26f0ch
+dd 0d4e8a502h
+dd 06881b83bh
+dd 09da26379h
+dd 0a7632b67h
+dd 05097b87ah
+dd 0f20d0b9fh
+dd 08415c62eh
+dd 0e20e1c10h
+dd 06aad70a0h
+dd 0a9fb3dd3h
+dd 0173d36b8h
+dd 08f97e230h
+dd 0b75101b5h
+dd 07e0349c9h
+dd 09b2256f9h
+dd 03262723ah
+dd 0a878e998h
+dd 01124f05fh
+dd 092cf2f21h
+dd 090ce49fdh
+dd 0a853a7aeh
+dd 0fdf8dcebh
+dd 06c87c878h
+dd 0d53ed1e2h
+dd 0ae61ca7eh
+dd 0f35fd473h
+dd 0e8486c27h
+dd 0192c7560h
+dd 092156b8eh
+dd 034f350f3h
+dd 071a419e1h
+dd 03ae01f0ah
+dd 022e94c5fh
+dd 067ed5339h
+dd 0edb341f4h
+dd 09773baa2h
+dd 0aaf44e94h
+dd 03b668abbh
+dd 022fcb1c1h
+dd 0b7edf2f7h
+dd 000ea04ceh
+dd 01800d72bh
+dd 0f62c6811h
+dd 0262aaf9bh
+dd 04110b44fh
+dd 0a8787704h
+dd 0fcec632bh
+dd 0e92831f3h
+dd 0d9806d9ch
+dd 0fef65080h
+dd 043ad796dh
+dd 029cdc772h
+dd 03de9453ch
+dd 0f97ad895h
+dd 056f149e4h
+dd 01ac3f541h
+dd 095a13888h
+dd 07f782617h
+dd 0e83b135eh
+dd 0f04c378ch
+dd 09dab8bd6h
+dd 04a0f68afh
+dd 07501d9bdh
+dd 06734bcc5h
+dd 04e233ee6h
+dd 044289c96h
+dd 022b266a5h
+dd 07049c00bh
+dd 0d6e56286h
+dd 03f5b551ch
+dd 0c4d9e53bh
+dd 0ebea7b02h
+dd 019f669feh
+dd 0aebee514h
+dd 0dbd42f5dh
+dd 08354e0eeh
+dd 0e21c98fbh
+dd 0c08cda6ah
+dd 06055f976h
+dd 03c6d3edeh
+dd 0cac28f3ah
+dd 0a930f564h
+dd 0f1f7d8dbh
+dd 0306a63abh
+dd 0b2ed75d0h
+dd 0989b49c2h
+dd 0fd5f3f3eh
+dd 04f8b2d78h
+dd 036eb09a5h
+dd 095401a48h
+dd 0f1082dd1h
+dd 0c3eccb22h
+dd 05910d56ch
+dd 03e3b404bh
+dd 0155e8379h
+dd 07e55f46eh
+dd 0ee3b66c0h
+dd 01861b5a8h
+dd 0fcdd8f41h
+dd 0fed745d4h
+dd 07c5f5d6dh
+dd 083cb0e92h
+dd 061f6f1e6h
+dd 0d601de05h
+dd 0ed0a6e59h
+dd 0e1329ccbh
+dd 0221a9dfah
+dd 0fa1161bdh
+dd 0c49ab2c1h
+dd 01ab65bf1h
+dd 08ce26754h
+dd 0bd65433dh
+dd 08cdca59fh
+dd 01130463fh
+dd 099028db1h
+dd 0f86ece20h
+dd 0b4866a4ah
+dd 0e9fb8356h
+dd 09082241eh
+dd 0b429aad6h
+dd 0ea4a0ba9h
+dd 02f8d7158h
+dd 04329df4bh
+dd 0176280bah
+dd 0b3763da5h
+dd 03693badfh
+dd 01bbb2cb9h
+dd 08f94eaech
+dd 09e627e3ah
+dd 0b2b8f32dh
+dd 0bb762237h
+dd 072fefe14h
+dd 006ee3114h
+dd 0ebc0cc9dh
+dd 0753ee424h
+dd 00f877a0fh
+dd 06a65bcfbh
+dd 0c0ab6ecah
+dd 0000ae326h
+dd 039ee42c1h
+dd 0143752bah
+dd 075aba523h
+dd 040a71fe6h
+dd 0dc755807h
+dd 065841198h
+dd 0bb3c9518h
+dd 0f09dd308h
+dd 0c115bc74h
+dd 0fc732b7dh
+dd 08e733601h
+dd 0469573dbh
+dd 02742581bh
+dd 0547ac994h
+dd 080a35582h
+dd 0378db3e0h
+dd 0bdaf82eeh
+dd 063fd201eh
+dd 01d8f3192h
+dd 09bcd366ch
+dd 0ef899c89h
+dd 0d471deb7h
+dd 0fcc545b1h
+dd 0aa768b60h
+dd 0bd694be2h
+dd 0db2f88f1h
+dd 000e1aa01h
+dd 011d50685h
+dd 01ea030d3h
+dd 0d5bd529ch
+dd 0b38bb3d6h
+dd 02ea48dcfh
+dd 0814c6038h
+dd 0f13d0bc8h
+dd 0450e1f47h
+dd 06cc3f981h
+dd 085b75c4ah
+dd 0b2536348h
+dd 0a7035873h
+dd 0078d520ah
+dd 09d089ef7h
+dd 0aa7361ceh
+dd 096cf507ch
+dd 085505d49h
+dd 01b0d33a9h
+dd 056ca1826h
+dd 0250c730ah
+dd 0f3df08abh
+dd 05d4ee5b2h
+dd 017a872e6h
+dd 02f9d6464h
+dd 031d79fb7h
+dd 0c6d11726h
+dd 0b7f81ff1h
+dd 077d010b5h
+dd 0feaf0f67h
+dd 078cefefdh
+dd 0bfb0fb7fh
+dd 0fb5ccf54h
+dd 0d1fae3bch
+dd 06dcf55c3h
+dd 092223787h
+dd 0bac4b1b3h
+dd 0f74979ech
+dd 07ca809e8h
+dd 072a18a25h
+dd 0b34e4eefh
+dd 09e4151bbh
+dd 088f24a27h
+dd 0d9da4525h
+dd 073130da2h
+dd 0275a5aa3h
+dd 0c6d2ab5eh
+dd 0fcdb38b2h
+dd 08651d9f7h
+dd 00634c1b4h
+dd 065f0f135h
+dd 0efbc7b30h
+dd 0c94c1437h
+dd 0ab09cecfh
+dd 0dbd75e8dh
+dd 05f1548c1h
+dd 049c5ed59h
+dd 001c2f0b2h
+dd 083fe044fh
+dd 07762ab2eh
+dd 0641627ddh
+dd 0affe1331h
+dd 007a51529h
+dd 0034b1cb1h
+dd 0dfcc97dbh
+dd 0728768b4h
+dd 0988254eah
+dd 0667d5451h
+dd 0fde2c1e2h
+dd 051464e81h
+dd 05ba3132ah
+dd 09a853bb8h
+dd 02ef9fc21h
+dd 059699afeh
+dd 0e4d6aa37h
+dd 01f5afbech
+dd 04ff1c7f0h
+dd 08ce0f35bh
+dd 008479c14h
+dd 07900d031h
+dd 0be1b4e81h
+dd 05d2e9f4eh
+dd 096be9270h
+dd 0b5601d9dh
+dd 0fbf87438h
+dd 046652e7ch
+dd 0e3d2d519h
+dd 0a6c90d4bh
+dd 02f6d1b4ah
+dd 07c6f8c29h
+dd 0683d6d4ch
+dd 0101a4c92h
+dd 099aeab21h
+dd 0be27f44fh
+dd 07f442256h
+dd 000d89d42h
+dd 0cfe1bff4h
+dd 090b5aa81h
+dd 015e281e4h
+dd 0aaef85f0h
+dd 04a3870e9h
+dd 0e4a7ebdbh
+dd 01f8b9a38h
+dd 0bab32091h
+dd 033b00d1dh
+dd 091f3fa61h
+dd 04e8fde95h
+dd 039be472ch
+dd 07120e2ebh
+dd 090b49ae9h
+dd 043c2c189h
+dd 0ef4995bbh
+dd 0eb6f3b2ah
+dd 0422cd2cfh
+dd 028341bd0h
+dd 03f56f070h
+dd 0e80bf03fh
+dd 015fff245h
+dd 09b3464c2h
+dd 072bc4880h
+dd 05eb2a954h
+dd 0935bb487h
+dd 0155c9321h
+dd 0a2d63cb3h
+dd 00f969a43h
+dd 01b1ee2a4h
+dd 04e33c958h
+dd 012003426h
+dd 089272e5fh
+dd 0c11533f2h
+dd 0e5898c1ah
+dd 000ef5ed4h
+dd 03d2cacd5h
+dd 04c787790h
+dd 02c7be24fh
+dd 06f3ec85fh
+dd 080cbd7f1h
+dd 092b38d59h
+dd 0d136d31ah
+dd 052bd98ffh
+dd 0450d76bbh
+dd 0de4768efh
+dd 0b6e0e348h
+dd 0f53b59a4h
+dd 0b68974ceh
+dd 0cdf7e997h
+dd 0e09ef475h
+dd 0581039d3h
+dd 04a2fc003h
+dd 04e72c8a9h
+dd 0b131ccaeh
+dd 0af960585h
+dd 0c3649171h
+dd 04be974cfh
+dd 0b9243118h
+dd 07cd8427eh
+dd 0ee18f0c4h
+dd 03e4ed08bh
+dd 0c4dc00e3h
+dd 0a60c1334h
+dd 044df204dh
+dd 02af65370h
+dd 02da8965ch
+dd 0d14d2bbeh
+dd 04b756cf4h
+dd 0e14ecde9h
+dd 0c0c44f70h
+dd 0ba70a9d1h
+dd 0faa2921bh
+dd 051911598h
+dd 07029ca6ch
+dd 03a751d0bh
+dd 0f326c522h
+dd 07c137599h
+dd 0523bffbbh
+dd 0401bfabch
+dd 077118359h
+dd 03fd9ed56h
+dd 021c0bc05h
+dd 0153a1230h
+dd 0b4381d95h
+dd 06dbec943h
+dd 072763661h
+dd 012c361fbh
+dd 053e01802h
+dd 06d42cef6h
+dd 090ae3856h
+dd 0c67fa562h
+dd 0056cd084h
+dd 0d0cb2a51h
+dd 04de7e812h
+dd 0718c17c1h
+dd 00b7a35d3h
+dd 03ea10449h
+dd 09422216eh
+dd 0073028e6h
+dd 02c287290h
+dd 03d27a490h
+dd 0a615b734h
+dd 0a3dabe71h
+dd 0a60672a0h
+dd 0a401e5e0h
+dd 008e82c00h
+dd 0d4206106h
+dd 0f6e8cf64h
+dd 0cbdabd9ch
+dd 0c05f7d6ah
+dd 040fcbc39h
+dd 038ec3b9ah
+dd 0295d9f62h
+dd 0ac29f897h
+dd 05d13e7ddh
+dd 025053efbh
+dd 0e72ccd6bh
+dd 03ac128e5h
+dd 042d3aa46h
+dd 073fa482eh
+dd 0efe31ab1h
+dd 0357b436bh
+dd 0bb2e9895h
+dd 0faadd532h
+dd 0aadcf8eah
+dd 09b5574e7h
+dd 0e643d16eh
+dd 074412f0eh
+dd 038f13eebh
+dd 080e83e80h
+dd 0e1ff5651h
+dd 0b3a3723ah
+dd 09842ab92h
+dd 028fe33bbh
+dd 0f9dd2a23h
+dd 077c6daabh
+dd 0688284cch
+dd 0721586bbh
+dd 031266b03h
+dd 0b53ea864h
+dd 052909418h
+dd 016141260h
+dd 09ffa78d0h
+dd 0b5daa2a3h
+dd 0cb8753d6h
+dd 043e5aee4h
+dd 0e05b3491h
+dd 08a8f4028h
+dd 0627273eah
+dd 09220cbddh
+dd 0269fd06eh
+dd 0556506d9h
+dd 0f85f3479h
+dd 08838d78eh
+dd 07a93b357h
+dd 09c753df0h
+dd 000473d94h
+dd 05015fc51h
+dd 08b8e448eh
+dd 09c915ba3h
+dd 0f3d9f274h
+dd 02621763fh
+dd 0528ab982h
+dd 008ae5c48h
+dd 04431fdb9h
+dd 00f074ec5h
+dd 021a8a096h
+dd 0fb369285h
+dd 025ebb7e9h
+dd 051b14d9ah
+dd 077ea27a8h
+dd 07883a0d0h
+dd 0ee106c0ah
+dd 00de2220ah
+dd 0f6fcdc84h
+dd 096e96488h
+dd 0e457843bh
+dd 0eea35cbdh
+dd 02f9505e8h
+dd 09c81faddh
+dd 0f7aadc88h
+dd 0f75c4a32h
+dd 02dd3aaafh
+dd 01630d749h
+dd 06410d04eh
+dd 0b376ba9fh
+dd 0ea3fddceh
+dd 0a5a77267h
+dd 021c9a930h
+dd 099aaf637h
+dd 00e1969f4h
+dd 07dbc75eeh
+dd 0876bfcf3h
+dd 00185ae63h
+dd 01718ce4ch
+dd 08d93350ah
+dd 03e1ca8d7h
+dd 0cd784ea7h
+dd 084bb5821h
+dd 084a41006h
+dd 0710d3f16h
+dd 0217b5d2eh
+dd 029dd95b5h
+dd 0dd225f32h
+dd 0d1de040ah
+dd 08f8bed96h
+dd 0576ebc40h
+dd 08977a4e7h
+dd 084295c3dh
+dd 081888fc7h
+dd 0ce144218h
+dd 0969cd9a5h
+dd 07bfc42fdh
+dd 09fb7202eh
+dd 0851042b0h
+dd 0ee7dcd3ah
+dd 0b2c46c9eh
+dd 0795d2bf6h
+dd 0cb92369fh
+dd 06a561d60h
+dd 04a80266dh
+dd 09885312fh
+dd 0b59042ech
+dd 0cd822e14h
+dd 09fd9fd94h
+dd 0db0f13abh
+dd 07f75be9bh
+dd 0ce9000deh
+dd 0c2df3b1bh
+dd 0e14fcd98h
+dd 0a395bc44h
+dd 0b2768a13h
+dd 06cb4ce2ch
+dd 061b22a30h
+dd 0f13a44b0h
+dd 0daedd76ah
+dd 0549ec628h
+dd 0c3e591a3h
+dd 05b3af592h
+dd 05aef3317h
+dd 0ad311346h
+dd 04d74c4aeh
+dd 0eafd02f6h
+dd 022ee6037h
+dd 0f7bf8444h
+dd 071fa5acch
+dd 0d880d780h
+dd 007cab0efh
+dd 087d6f09dh
+dd 0e548338bh
+dd 0d49ddb88h
+dd 08805772dh
+dd 08ee445e2h
+dd 07674b4b9h
+dd 0aaa6b3b6h
+dd 03e7ef413h
+dd 0e485e280h
+dd 07e396c5fh
+dd 0e5b5138dh
+dd 042a84be7h
+dd 0020a6437h
+dd 0bcdef2ach
+dd 0ad73e952h
+dd 0127a88a6h
+dd 0e186cad9h
+dd 0402034ddh
+dd 09852d662h
+dd 048f9eaach
+dd 0a5ac18a4h
+dd 0f8af20d9h
+dd 00d83df6fh
+dd 06806d2d3h
+dd 068b51470h
+dd 0148d58ech
+dd 07170d0f5h
+dd 00452f18bh
+dd 01d5f012bh
+dd 09925de75h
+dd 026243b70h
+dd 03b1af65fh
+dd 0ed630fcfh
+dd 0466189b7h
+dd 0eb1a003fh
+dd 049330260h
+dd 094beae51h
+dd 00e260f81h
+dd 036b1e1e6h
+dd 086398768h
+dd 08e6551b3h
+dd 0d6e99c9ah
+dd 01375282dh
+dd 0989ddfa7h
+dd 06b28c7ffh
+dd 01a40ba20h
+dd 0692c5d44h
+dd 0a39ca635h
+dd 098e513a5h
+dd 0f0cb3c2eh
+dd 0869ad5eah
+dd 003eba067h
+dd 0e85828aeh
+dd 0a8fb61a0h
+dd 0ffcc1db9h
+dd 0f1b98f18h
+dd 05a60e2c5h
+dd 03060afceh
+dd 07787810fh
+dd 05ac779ddh
+dd 07777841eh
+dd 0589f504ah
+dd 03d88c7dbh
+dd 031b8fb1fh
+dd 05bee04ech
+dd 0ef91838ah
+dd 0a7a283cfh
+dd 0edced6bbh
+dd 01bdb2adeh
+dd 09a10ced7h
+dd 009360533h
+dd 0ed315fa4h
+dd 035382de3h
+dd 05617f04fh
+dd 074158217h
+dd 00eb06a24h
+dd 0ae847bf4h
+dd 06fbdca84h
+dd 05abf86cfh
+dd 00319fc74h
+dd 0789eff8fh
+dd 0aa1777a4h
+dd 0278e4bc0h
+dd 0b2fe0216h
+dd 0a16ba581h
+dd 06aa6bdd8h
+dd 0f6523245h
+dd 0ea7238a0h
+dd 0afc6f2f0h
+dd 02901688bh
+dd 0054ec92eh
+dd 0b19f7a31h
+dd 0d846f1f9h
+dd 05a31c904h
+dd 0dfca5f97h
+dd 020defb7fh
+dd 0da48fef6h
+dd 0c01d1f48h
+dd 0ef313d20h
+dd 00544d67ah
+dd 0fe5df1ffh
+dd 0c8c80799h
+dd 0ebf39a2bh
+dd 04c5412a0h
+dd 09a1add49h
+dd 018a11110h
+dd 0f1a00491h
+dd 062596eb6h
+dd 004483d4ch
+dd 027d7e6e4h
+dd 0ebefedf7h
+dd 0fdea9809h
+dd 0016e66ffh
+dd 0f76bff6ah
+dd 00a430e72h
+dd 0dcc50fc5h
+dd 08946ad2ch
+dd 057d1604ch
+dd 03f49a6d5h
+dd 0abd329bdh
+dd 0218a6c21h
+dd 019c11daah
+dd 07864e59dh
+dd 08233249dh
+dd 044b33d47h
+dd 098d7d4d9h
+dd 0e48405cdh
+dd 0287c0bc8h
+dd 0cfaa6eddh
+dd 095790290h
+dd 06fe8c4a4h
+dd 00ea0f66bh
+dd 04366fe26h
+dd 04b9444c0h
+dd 01400a0e1h
+dd 06a61788eh
+dd 02774170dh
+dd 065325f3ch
+dd 0b8e740f7h
+dd 0cf740fc0h
+dd 089fe8826h
+dd 09199d9a6h
+dd 0a675870ah
+dd 003825f2ah
+dd 0cdb0f43ch
+dd 03e50fc11h
+dd 0a06cc63bh
+dd 01a79e49ch
+dd 0d8757945h
+dd 0f59d902eh
+dd 0332bbf0ah
+dd 0b23c0cefh
+dd 046f7ebf5h
+dd 0632cdd5bh
+dd 0c9540af1h
+dd 0102fe05fh
+dd 0053d27a0h
+dd 058ae51d9h
+dd 052348525h
+dd 0771a1e12h
+dd 0f5a420c7h
+dd 02c651604h
+dd 085e12964h
+dd 05ede7507h
+dd 0a871d888h
+dd 02778f348h
+dd 09e9a5a59h
+dd 04b65e39ah
+dd 0d5e223cch
+dd 040045c8ch
+dd 057eff080h
+dd 0c3404c71h
+dd 08eeffdbch
+dd 07485fd31h
+dd 097c1de6dh
+dd 02842a8c2h
+dd 0cbc811e0h
+dd 04496acabh
+dd 08c56dab5h
+dd 0dd41f57dh
+dd 0238b4c14h
+dd 01cc76466h
+dd 03df6106dh
+dd 062035511h
+dd 0eb5b8005h
+dd 0588f3b5bh
+dd 02e1fc8f3h
+dd 0fd6bfe98h
+dd 0a4bcf11ch
+dd 0906109fch
+dd 0a82d17d0h
+dd 047394fc5h
+dd 08893a76bh
+dd 02da4c25eh
+dd 044bb3fdeh
+dd 0533cb8c6h
+dd 0972d783eh
+dd 057a7ef06h
+dd 05b9c76e1h
+dd 0ee397a77h
+dd 0b58b5879h
+dd 0dba3d366h
+dd 0f9347a30h
+dd 0c232a55ch
+dd 010a7b406h
+dd 046fc7a20h
+dd 0fc1cfe82h
+dd 06a0842ech
+dd 0131c2b77h
+dd 0f6c63ef6h
+dd 0f35180c2h
+dd 0217963c9h
+dd 0060be044h
+dd 06bad1cffh
+dd 0b62060f1h
+dd 00be3bd7fh
+dd 074abba5ch
+dd 0b560a614h
+dd 0e06b81e7h
+dd 0a8fbc5e6h
+dd 077ba1f4ah
+dd 0b5120f6bh
+dd 0fd9a8607h
+dd 0098c810ch
+dd 0b558eb61h
+dd 08ec72d7ah
+dd 03150d81ch
+dd 0ac439bafh
+dd 01a338a8dh
+dd 049c439f4h
+dd 00645cdeah
+dd 0aeebaf4fh
+dd 0f72d1365h
+dd 02589ee55h
+dd 08c0d6902h
+dd 08fe18d9bh
+dd 00ddfc084h
+dd 08ceea9c8h
+dd 0582b9ae4h
+dd 078328ce7h
+dd 01aa315a7h
+dd 02e8adee3h
+dd 07aa49ce1h
+dd 0d81ddc1bh
+dd 09939a61ah
+dd 0d2e332e9h
+dd 070d7e250h
+dd 0477a944dh
+dd 033166be5h
+dd 070ed9997h
+dd 0f4b74eb6h
+dd 0352f854ch
+dd 0d17171c3h
+dd 0ac65a688h
+dd 0316f2cebh
+dd 04e5df733h
+dd 053c96311h
+dd 0001e5f5bh
+dd 00d86db0fh
+dd 073468907h
+dd 0d646819bh
+dd 02209ac8ch
+dd 0a2c80da8h
+dd 077074b87h
+dd 089f1ebdah
+dd 00ebb0cf4h
+dd 017f7fcfah
+dd 0a4dae0a3h
+dd 07c8f796bh
+dd 05ded6ad9h
+dd 059db05d2h
+dd 0714d44feh
+dd 0899966e5h
+dd 0cceee776h
+dd 02b5f3da8h
+dd 07aed2cafh
+dd 04ffe3dd0h
+dd 0d8003156h
+dd 07d59689dh
+dd 004e76a1dh
+dd 02fe40e99h
+dd 066aac23eh
+dd 0911a0e9ch
+dd 0afda1db8h
+dd 035894941h
+dd 05469a28bh
+dd 0835e2d04h
+dd 0139ea1eah
+dd 073ae21dfh
+dd 0298e11a0h
+dd 0e41fdcbbh
+dd 08be446b9h
+dd 09635a1feh
+dd 0a918c046h
+dd 013de6b06h
+dd 001c63178h
+dd 09e869835h
+dd 03b357958h
+dd 0950eaf3dh
+dd 039c32564h
+dd 0f7b0dc04h
+dd 07e589664h
+dd 0a4a69363h
+dd 0604b3cc1h
+dd 06443f3ceh
+dd 07d8c3beah
+dd 0289022c5h
+dd 0407957f7h
+dd 0a4ea2577h
+dd 056472351h
+dd 0b11687eeh
+dd 0ec5da983h
+dd 03b97c013h
+dd 027f21468h
+dd 062265b27h
+dd 0784097efh
+dd 077aed8eeh
+dd 0b1f3a24bh
+dd 0bd9d8ab8h
+dd 07360b092h
+dd 0acd103d8h
+dd 0b62e08e4h
+dd 08e07e86dh
+dd 0a67abb6ah
+dd 037eba2b0h
+dd 08c0016c7h
+dd 0c39b94f5h
+dd 05e0c575dh
+dd 06e5d2257h
+dd 09eddcc91h
+dd 0f767e016h
+dd 04df6aebch
+dd 0415a7de3h
+dd 0c017a2b9h
+dd 02873b398h
+dd 045d386b5h
+dd 033de9bbeh
+dd 05d5c1227h
+dd 05e736d66h
+dd 0e01d3feah
+dd 0b096b3d8h
+dd 0ae4c632eh
+dd 095d2c38ch
+dd 0d1c00192h
+dd 05a932357h
+dd 022e1f286h
+dd 00da2ef28h
+dd 070b21348h
+dd 0a7a0827ch
+dd 012f4a1aeh
+dd 0097db42dh
+dd 0d2097c05h
+dd 0f792f2dch
+dd 0f0111da2h
+dd 0fe3a058fh
+dd 0c8408f36h
+dd 0285235a6h
+dd 0964d7ca3h
+dd 07a1d8f5fh
+dd 0bf0522f6h
+dd 04b7c9dd7h
+dd 0bd809d3bh
+dd 0d48eb9bdh
+dd 024e50d94h
+dd 0c9dbd749h
+dd 00d1b1064h
+dd 07ea9dce3h
+dd 03cb47b57h
+dd 0a7ebde49h
+dd 01c060482h
+dd 05ce1ab27h
+dd 0c6e4f3c5h
+dd 02a569f90h
+dd 0d7e6ef0eh
+dd 0fa26599ah
+dd 073c94971h
+dd 0f7266389h
+dd 068c3ab00h
+dd 0390d7f57h
+dd 0c5fa9684h
+dd 0d067e2beh
+dd 0e0355b59h
+dd 0104cd3a1h
+dd 02d830ec3h
+dd 0c26bc320h
+dd 0d49b56afh
+dd 006cfd07eh
+dd 090c93246h
+dd 06b4df8e5h
+dd 077a98a1ch
+dd 0dd39b11fh
+dd 0b863c539h
+dd 01689d8abh
+dd 0f4ece4f8h
+dd 0586bbd01h
+dd 0a2e019adh
+dd 022323aa7h
+dd 05b32285ch
+dd 0c0108844h
+dd 069cfa2d5h
+dd 095ae676dh
+dd 07afc8cb8h
+dd 044eff3fch
+dd 0598e8211h
+dd 008b72972h
+dd 033f60334h
+dd 09a52f15bh
+dd 00e36c92eh
+dd 0e7774b16h
+dd 0a4dbf15eh
+dd 08acf79cah
+dd 023337e83h
+dd 085a4260bh
+dd 0c5fed45bh
+dd 05023f7ddh
+dd 00da9bbd7h
+dd 030e182a4h
+dd 07da27060h
+dd 08d5889b1h
+dd 0161ac03ch
+dd 0075aaad3h
+dd 067bd911ah
+dd 0d931cbb4h
+dd 06c1425d7h
+dd 0c52583d7h
+dd 0ff46c85bh
+dd 04a002846h
+dd 0ff6a7a04h
+dd 031690aaeh
+dd 05c4bf73bh
+dd 029959cf5h
+dd 091b64ba8h
+dd 0a8d03d08h
+dd 0dad5b739h
+dd 09d1d8b45h
+dd 0516e336ch
+dd 05ac7b905h
+dd 026a981dch
+dd 0f1ce1361h
+dd 0d5b95749h
+dd 075745e22h
+dd 0d136cba5h
+dd 07747b786h
+dd 0ae8075cbh
+dd 02f2bd1c3h
+dd 04b9592c2h
+dd 0e5acb559h
+dd 02785c92ah
+dd 0246fe6e9h
+dd 01c8fc65fh
+dd 0d918b751h
+dd 0787f7ce4h
+dd 0d46ff47dh
+dd 03d334d3dh
+dd 0e80521e7h
+dd 0e722ffa0h
+dd 066e7fa74h
+dd 06c6e756bh
+dd 0b5530b34h
+dd 0997825d3h
+dd 02e543c2bh
+dd 0e403715ah
+dd 037b7d003h
+dd 0f964ac50h
+dd 0280e3f50h
+dd 04ee4b7c0h
+dd 021a7a107h
+dd 0a9eb01bbh
+dd 03691e887h
+dd 0199c2d30h
+dd 048b633d6h
+dd 00279721ah
+dd 0b299708bh
+dd 0022c5eeeh
+dd 0c72a6316h
+dd 08a580df5h
+dd 0de364294h
+dd 0345eace2h
+dd 0c10c35fch
+dd 07821907bh
+dd 0d9c55942h
+dd 03b3e6686h
+dd 078edc856h
+dd 0a2b9ce69h
+dd 0582ef821h
+dd 0d0f56232h
+dd 0f6c064f1h
+dd 003d3cd70h
+dd 06e35c48dh
+dd 07f912821h
+dd 09139d6bbh
+dd 00de62d85h
+dd 08a95b8dfh
+dd 06fed6813h
+dd 0f01fd0fah
+dd 007221023h
+dd 00ab23badh
+dd 0be66925bh
+dd 0b0f9bebah
+dd 024eb5b42h
+dd 057b68cfeh
+dd 0ae236354h
+dd 0b3d32a95h
+dd 055aa3dd2h
+dd 08aef2865h
+dd 0eeabd927h
+dd 066d3f4d3h
+dd 084492e06h
+dd 0b8ab3f16h
+dd 09df516edh
+dd 0f716fec5h
+dd 0a4851cbdh
+dd 03a86ede8h
+dd 001369c94h
+dd 0a5c66abah
+dd 093d169b0h
+dd 018d22575h
+dd 09707cc9dh
+dd 015f7c06ah
+dd 0a08e3f0ch
+dd 0a6581f76h
+dd 08fb039c7h
+dd 09eacdcfbh
+dd 09c929e8ch
+dd 0a1b826c6h
+dd 0821427dbh
+dd 0312fe40ch
+dd 0fd570737h
+dd 040083ba6h
+dd 06915994dh
+dd 0165fd013h
+dd 01b0fe6d2h
+dd 0f9c7c640h
+dd 08ec6b983h
+dd 02a6390c7h
+dd 05d6944dah
+dd 005895dcch
+dd 0b995f84eh
+dd 05f5ecf23h
+dd 0c56a42f1h
+dd 0faf5529dh
+dd 07ddbf17dh
+dd 00c03c8cch
+dd 09421fa4bh
+dd 09625abddh
+dd 05af9dd2eh
+dd 0113e7727h
+dd 0be5b03b4h
+dd 0edf4f3eeh
+dd 0e93c6325h
+dd 0c5f99ecbh
+dd 073d61262h
+dd 0af259604h
+dd 0909a350ah
+dd 01d751bc0h
+dd 057ab762eh
+dd 0c79cd28ch
+dd 04db113ebh
+dd 06e2637c6h
+dd 07f249ee8h
+dd 02ed21a19h
+dd 03253fa84h
+dd 0e9fff471h
+dd 0155628d2h
+dd 057ce5b0ch
+dd 0397e73e2h
+dd 0a22e0e51h
+dd 0be74fa7fh
+dd 06edd8975h
+dd 0befc7e1dh
+dd 0ed0357c3h
+dd 0cadf2d45h
+dd 057d604fdh
+dd 08c5ba026h
+dd 06f429eadh
+dd 05d93ea99h
+dd 0c398a0d4h
+dd 0da30e836h
+dd 025c6bd85h
+dd 055c79fc5h
+dd 08174eaebh
+dd 00887cb06h
+dd 0fa4feb50h
+dd 0be6979bbh
+dd 060b293e2h
+dd 08a7d183dh
+dd 0a67694a7h
+dd 009c557e9h
+dd 0951430c8h
+dd 06b60f8ddh
+dd 075d371d6h
+dd 0401d6dd8h
+dd 03accfc1eh
+dd 0812694c5h
+dd 0cb9a8f59h
+dd 0fc7f3each
+dd 04f47c614h
+dd 0c3fa4846h
+dd 0c39627d8h
+dd 0584f70e8h
+dd 0477713bbh
+dd 0deb462ebh
+dd 027d100e0h
+dd 0cff37f91h
+dd 0dea89096h
+dd 0083d1fffh
+dd 04727c086h
+dd 06e258c67h
+dd 077298e3dh
+dd 03d649b88h
+dd 0690b2c63h
+dd 0c58d93a7h
+dd 00a5a6762h
+dd 0570f3fd4h
+dd 040d7a3bdh
+dd 0fa21994fh
+dd 06640096ch
+dd 06e7ee6ffh
+dd 02a9fa8cdh
+dd 073c812dbh
+dd 011edc864h
+dd 0ff67f21bh
+dd 0b8fd7af5h
+dd 0e7ded520h
+dd 069b1f578h
+dd 03b57a932h
+dd 092930adah
+dd 0fad8b1f2h
+dd 051eed71ah
+dd 051072e4dh
+dd 069d3526ch
+dd 0b20e6e19h
+dd 0d010a8a9h
+dd 0201fae20h
+dd 072dd3383h
+dd 0900f6020h
+dd 08ad87735h
+dd 01c6a8e31h
+dd 033b83ae2h
+dd 0336842ddh
+dd 074dd559ah
+dd 039321d7ah
+dd 0137d0911h
+dd 0ff68f5b9h
+dd 0a094ba1ch
+dd 092acedd6h
+dd 0d5bd8ccah
+dd 0a09c058eh
+dd 0a7093d4ch
+dd 0a278259eh
+dd 05501af48h
+dd 0ff030c4dh
+dd 01ddcbbfah
+dd 0930e9185h
+dd 0abb0e8d8h
+dd 04923d5e4h
+dd 0f4d7db7dh
+dd 0d1f71fc5h
+dd 0c3cdab80h
+dd 03d58dedfh
+dd 0b0510b79h
+dd 048e1384ah
+dd 0dc9594a6h
+dd 02abf2ca7h
+dd 03bc7546eh
+dd 0bb5f248bh
+dd 0bdcfb80dh
+dd 05b35804ah
+dd 0bd056864h
+dd 0b58f88edh
+dd 07ae37e74h
+dd 04d056937h
+dd 0ae6dc79eh
+dd 040eed468h
+dd 0a6b51e9eh
+dd 052c5930dh
+dd 06eb4791ah
+dd 0ee4f55eah
+dd 00401d7fbh
+dd 01a9dcf0ah
+dd 0a7bf1e26h
+dd 0e766f227h
+dd 049c0ed1dh
+dd 0540ce6c7h
+dd 078a27a04h
+dd 0018f0f67h
+dd 0a87a9ef6h
+dd 040c407dbh
+dd 0242938edh
+dd 012cc78b3h
+dd 07ddab8b9h
+dd 003609d5ah
+dd 051ed3cabh
+dd 07ad1634fh
+dd 0ad27ce11h
+dd 0fe0dcf49h
+dd 0715fc240h
+dd 038dbcc94h
+dd 055e33d5fh
+dd 072edb2cbh
+dd 0c0d615d4h
+dd 037311d1fh
+dd 0dc74c8e5h
+dd 0d94b0263h
+dd 0094a75abh
+dd 0a8a8e9f7h
+dd 0f44dfcd7h
+dd 072097472h
+dd 0938e7a13h
+dd 0bf9fe9e6h
+dd 0fb1b6f57h
+dd 0c7bca4a1h
+dd 0d2f16e00h
+dd 08ba8ff8bh
+dd 0deb39d8eh
+dd 025104c71h
+dd 067d6576fh
+dd 0179b6edah
+dd 040a28544h
+dd 0d7f18219h
+dd 03ea8470ch
+dd 0959264d7h
+dd 0e0792c06h
+dd 08f5e4c48h
+dd 05ab7d639h
+dd 0cc092a55h
+dd 0e0d09dc4h
+dd 0cee5f7c2h
+dd 043d1dd6dh
+dd 09fc92887h
+dd 0fada5efbh
+dd 07611b9a1h
+dd 0f2000077h
+dd 0eb7ec8e7h
+dd 0f1592998h
+dd 0f1e8373eh
+dd 0dad19891h
+dd 05f46d466h
+dd 08ddb4ab6h
+dd 04501687bh
+dd 01332ac4ah
+dd 047a951deh
+dd 0381bbf08h
+dd 047fe8008h
+dd 0d4bfb061h
+dd 0bb6fefcdh
+dd 08c4491f6h
+dd 017286ff5h
+dd 00553d4fah
+dd 066a49068h
+dd 0bfd3c0a6h
+dd 04b2bc98ah
+dd 0f2d65629h
+dd 03558a94ah
+dd 08c93f0e6h
+dd 0e65a8409h
+dd 01cba3ae7h
+dd 02678c9cch
+dd 0a0b4bdaeh
+dd 03252691bh
+dd 040870ca1h
+dd 07224b57ch
+dd 03b4b45b8h
+dd 084a56b43h
+dd 023307f20h
+dd 0fa678f71h
+dd 0c796ee15h
+dd 02ade78fdh
+dd 008132196h
+dd 0e40ae477h
+dd 036eb53f1h
+dd 0086ea19ah
+dd 01a90b2edh
+dd 026cc2bbeh
+dd 05325ec7ch
+dd 03aa07271h
+dd 0e69b1d1ch
+dd 065c54316h
+dd 028a99a56h
+dd 09e351ed8h
+dd 02872c856h
+dd 0be6aae3eh
+dd 0b40ba68dh
+dd 06d33482eh
+dd 0bd18fcb3h
+dd 02b518611h
+dd 0537903deh
+dd 0b6666f98h
+dd 094d29e4ch
+dd 03d9f8f37h
+dd 060aa07fdh
+dd 003c53689h
+dd 08b86cac6h
+dd 0680323b2h
+dd 017b85d64h
+dd 07d8054b0h
+dd 06a570b5eh
+dd 0db54530fh
+dd 0c3da93f7h
+dd 0b19b3264h
+dd 073e862edh
+dd 052bfc7fch
+dd 0e0f00deah
+dd 028903e4ch
+dd 070b48628h
+dd 0cfc50102h
+dd 0c9f9d85eh
+dd 00cdfc162h
+dd 06dfc05f7h
+dd 04d9a913ah
+dd 098397a29h
+dd 01aa72178h
+dd 0b0e88d54h
+dd 0ccf0e78fh
+dd 004333c87h
+dd 0f3a9c3ceh
+dd 0ccea333fh
+dd 04ef10e2ah
+dd 0351514d3h
+dd 0428c2adfh
+dd 03748b7e5h
+dd 0fd8f2254h
+dd 07d3276c2h
+dd 0a35c5b8fh
+dd 005b7cb06h
+dd 0df4d2b3dh
+dd 0bac917b1h
+dd 0d2f3c738h
+dd 0c4d814c7h
+dd 0120814beh
+dd 09d727b33h
+dd 03f63675dh
+dd 05afc39d2h
+dd 0d061e69dh
+dd 015872ba7h
+dd 09c4add9dh
+dd 09a157b9eh
+dd 0bd7bcdcbh
+dd 04352a557h
+dd 0871569ebh
+dd 09a18a10ah
+dd 0a65cdec2h
+dd 0c22e54a1h
+dd 0af3157f9h
+dd 0ce6c82b5h
+dd 090a04970h
+dd 095a4554bh
+dd 09718fa73h
+dd 09fb5fd6fh
+dd 017a9d0e9h
+dd 0f136891eh
+dd 01c619fbeh
+dd 00c898799h
+dd 0c5115883h
+dd 0472317bch
+dd 0a04759aeh
+dd 0fac3e468h
+dd 02f4b6a1ch
+dd 0897f8787h
+dd 09c5bee9ch
+dd 00741fed7h
+dd 06de2fc2bh
+dd 095d443aah
+dd 0a2f17ab5h
+dd 0495cecbch
+dd 059616f09h
+dd 013c4defeh
+dd 0e0b65141h
+dd 09f2b7cdeh
+dd 00dfd1190h
+dd 0980b1ab9h
+dd 0fcdc1700h
+dd 0e867d979h
+dd 0241db0ach
+dd 013f24c9bh
+dd 08cd4e069h
+dd 0a53c4c23h
+dd 0e2f881c7h
+dd 035c51ee1h
+dd 0307f55b7h
+dd 08eb5763dh
+dd 0a5ea9498h
+dd 074681ad5h
+dd 0f8ff71f6h
+dd 036c30878h
+dd 06e23f3e0h
+dd 0d14bbd7ah
+dd 091e20dc6h
+dd 035000580h
+dd 01aca9c28h
+dd 0e953cd46h
+dd 0b8a64c8bh
+dd 0fbb6e48ch
+dd 0a516890ch
+dd 0b8b5da82h
+dd 02c46655ah
+dd 02b4abe9ah
+dd 0af3993ffh
+dd 04ed8feb5h
+dd 0f6388808h
+dd 0ce51b1f3h
+dd 09ae3953fh
+dd 0819f54bch
+dd 0b03932a2h
+dd 06ad4becdh
+dd 03cb72ea9h
+dd 0b3d85caah
+dd 0bb32aa30h
+dd 0818e956ah
+dd 01fc982a4h
+dd 09f629d96h
+dd 0ae187ecch
+dd 0ac5728feh
+dd 016005bb5h
+dd 0c8fd1f71h
+dd 0cf543d25h
+dd 02e4044b6h
+dd 0c813326fh
+dd 073008994h
+dd 014554edeh
+dd 05905099eh
+dd 0a95cf79fh
+dd 06df13519h
+dd 0c9145e07h
+dd 0150b579bh
+dd 0c0eec246h
+dd 0f988994ah
+dd 00cd94796h
+dd 053c22072h
+dd 097dbb837h
+dd 0619a5765h
+dd 04484eedah
+dd 0e96ea079h
+dd 06cf91685h
+dd 01ea92593h
+dd 0c0701744h
+dd 0ca87df0eh
+dd 01aa648d7h
+dd 00640ef9bh
+dd 08b92a53dh
+dd 0f9f9dadeh
+dd 0cc016a6dh
+dd 0c1014e21h
+dd 0cba27306h
+dd 02d04d4c4h
+dd 06237eb2dh
+dd 02421fea3h
+dd 0fb556462h
+dd 045352aa8h
+dd 0954e44feh
+dd 0f0f922a8h
+dd 0663a0dbah
+dd 02faf4417h
+dd 082ca1319h
+dd 0dcf6fcd9h
+dd 0f503d7e5h
+dd 04f466390h
+dd 021d6fa10h
+dd 0c0bb877eh
+dd 03feb77a4h
+dd 023753ba0h
+dd 06251b326h
+dd 09d6fbfe7h
+dd 056a42c03h
+dd 062ba6281h
+dd 08eb8a798h
+dd 0f4ddfdd3h
+dd 05204e65fh
+dd 051ae6694h
+dd 0ed733b79h
+dd 044dfea32h
+dd 0e65dc4a3h
+dd 0619c9910h
+dd 0940a4eb8h
+dd 0c28cf773h
+dd 0bbfaff4eh
+dd 0d82914bfh
+dd 0e6359128h
+dd 02b95df9ah
+dd 0745a0fc1h
+dd 0c8391bcfh
+dd 0010d0b32h
+dd 0bba61f2dh
+dd 0ace4badch
+dd 08c0cf7b7h
+dd 08095ceffh
+dd 048a24863h
+dd 0f62e1378h
+dd 045384cb1h
+dd 08ee4f765h
+dd 03ea10c74h
+dd 018bb4e27h
+dd 0394f2766h
+dd 04c4af4feh
+dd 0e32a7f80h
+dd 0fd70709ah
+dd 0d86d052eh
+dd 0e72ddbf5h
+dd 0aee3c23dh
+dd 05f29711ah
+dd 06bc6ec2eh
+dd 03f7afe60h
+dd 08b36711ch
+dd 08a46eb15h
+dd 07c617166h
+dd 03d1a3026h
+dd 07d4cd671h
+dd 0221a3673h
+dd 0a8f65642h
+dd 059d95c72h
+dd 02f8676a1h
+dd 01428c590h
+dd 098d8f426h
+dd 0cfbf34a1h
+dd 0a4468362h
+dd 005435693h
+dd 07b9e6301h
+dd 0c8215431h
+dd 033a022ffh
+dd 0e5d72867h
+dd 08f2017c3h
+dd 0a419cf6dh
+dd 02891bdb1h
+dd 0a9ca4e7ah
+dd 09b48034fh
+dd 0d2ce5a03h
+dd 03d1d25aah
+dd 057127255h
+dd 0922ef511h
+dd 04bdfe8e7h
+dd 09fea191eh
+dd 0e33568b6h
+dd 01cb3a3f4h
+dd 0e62211b8h
+dd 0e60ac90eh
+dd 0f0bb26bah
+dd 017d244b0h
+dd 03c337bdfh
+dd 0a4d6e89ch
+dd 07bd42e41h
+dd 0a7acf7cdh
+dd 04dc3e688h
+dd 09362f797h
+dd 01c1f82b6h
+dd 00558103fh
+dd 079beb263h
+dd 0efa0d298h
+dd 0ee5b2ec1h
+dd 02bd26f2eh
+dd 0b9660a29h
+dd 0ba47bf12h
+dd 05a168f48h
+dd 0e0499de3h
+dd 0a1a93c78h
+dd 0e91900c8h
+dd 0e4a5abcah
+dd 03e2b2e8ah
+dd 00a62a9cdh
+dd 0bda1324ch
+dd 0f4ec7905h
+dd 03607f19ch
+dd 08802099ch
+dd 011bb3478h
+dd 0efa46c52h
+dd 0b57a37ach
+dd 0138a7fcbh
+dd 00c2ec027h
+dd 0f4c7022dh
+dd 075e3ec31h
+dd 08009d8b2h
+dd 01667bd43h
+dd 0774b44b2h
+dd 0b86549b8h
+dd 035ac0bc2h
+dd 0b70b3492h
+dd 097cbcbbbh
+dd 06b91aebdh
+dd 07fc3c7bch
+dd 082f65747h
+dd 080848a73h
+dd 07941358ah
+dd 0a97bb01dh
+dd 063401c2eh
+dd 020db8133h
+dd 07fbe12e2h
+dd 04b272fe2h
+dd 064500bc3h
+dd 014ec83a1h
+dd 081f765a1h
+dd 011d412d5h
+dd 072af1568h
+dd 0992525b3h
+dd 04aa8655fh
+dd 06f300305h
+dd 0b45bb9ddh
+dd 06e08178bh
+dd 083341e1fh
+dd 062a09cd3h
+dd 01105d90dh
+dd 0814d75f6h
+dd 0813f666ch
+dd 0af0b7854h
+dd 01fc9a5c6h
+dd 03053971fh
+dd 01a946cd2h
+dd 08cd466e4h
+dd 0023f700ch
+dd 09dbf6940h
+dd 0766df2b3h
+dd 0668487ach
+dd 0f6baa3f4h
+dd 04b2c1b97h
+dd 080b0b9e5h
+dd 02fd3bff3h
+dd 02df57b23h
+dd 08dbc024ah
+dd 0f5665f5bh
+dd 085f70afeh
+dd 0acd29da6h
+dd 02b828aaeh
+dd 00c830621h
+dd 0813087d9h
+dd 0854a063ch
+dd 07afe7a49h
+dd 006b2fbc0h
+dd 0f1951060h
+dd 09f84e315h
+dd 0b49be474h
+dd 03e346f6ch
+dd 0d6260253h
+dd 08e0b9f60h
+dd 0feb41647h
+dd 080876ed4h
+dd 0fd833803h
+dd 0aad6c8dfh
+dd 0b498f375h
+dd 02fc7bcbch
+dd 03cbbe6adh
+dd 01c513182h
+dd 08aaf70bbh
+dd 011988e5bh
+dd 0b1e5ce68h
+dd 08d9bb4c8h
+dd 08378d6f2h
+dd 0ad9b12b2h
+dd 06f547878h
+dd 0c3b62319h
+dd 002f5440ah
+dd 009cf73c5h
+dd 0d32ea35bh
+dd 0c3091e73h
+dd 0b6409687h
+dd 0ffd99ee7h
+dd 0d154344ch
+dd 0cd3965bah
+dd 016e9a936h
+dd 0ee606a57h
+dd 0efabc9f1h
+dd 041592467h
+dd 065dac911h
+dd 0c364885ah
+dd 071d63515h
+dd 09e802f47h
+dd 012610532h
+dd 03b88707fh
+dd 08b87bbc3h
+dd 0143bc209h
+dd 06bb9c29bh
+dd 0d0cc0e0bh
+dd 021d4e0a2h
+dd 0f70e0434h
+dd 002f1abefh
+dd 02e43647eh
+dd 0aa420393h
+dd 0f8e13861h
+dd 0020ba01ah
+dd 0fff5ec41h
+dd 059cbf160h
+dd 0795e9880h
+dd 03a6d4e91h
+dd 01250590bh
+dd 0fb68aedeh
+dd 0b1dfe68bh
+dd 0b8928b77h
+dd 06da8e6f6h
+dd 050c1bf9fh
+dd 0777e1b26h
+dd 05168ba1eh
+dd 027e1f09fh
+dd 05be6f0ech
+dd 02c469f03h
+dd 0f4223e74h
+dd 016ebb6f5h
+dd 028e9b28eh
+dd 007676d0fh
+dd 0a20038dah
+dd 06a9cf4f5h
+dd 0644e2ddch
+dd 085217546h
+dd 03e3316e2h
+dd 017cb65cfh
+dd 0df721c77h
+dd 03b75a686h
+dd 0a6680d2dh
+dd 0e5534902h
+dd 0b422946dh
+dd 05d04df09h
+dd 071f5f091h
+dd 075a30378h
+dd 0ea928e37h
+dd 0b564333fh
+dd 02fc0e592h
+dd 056692395h
+dd 09eb9e54fh
+dd 0e7850c04h
+dd 0d4fbffech
+dd 038c2e5a4h
+dd 089c7aa1ah
+dd 0cb05b7b8h
+dd 0328438beh
+dd 01af3834ah
+dd 092fd8107h
+dd 0ab8cbe39h
+dd 0ab54fc5dh
+dd 07cfcee18h
+dd 0d2852584h
+dd 0b4553000h
+dd 052028e29h
+dd 070c3f191h
+dd 00c59ceddh
+dd 0cd80ca8ah
+dd 072d749bdh
+dd 00e6f3676h
+dd 01060d129h
+dd 0593ac1dbh
+dd 0874794bbh
+dd 01a2b8b68h
+dd 053b2e4c5h
+dd 03bb7a3a2h
+dd 0e321a67eh
+dd 0e990d449h
+dd 08a821a6ch
+dd 00095eea9h
+dd 00d6b6dc4h
+dd 02ff18097h
+dd 0bcd7adbbh
+dd 00a67d27ch
+dd 0bf130edeh
+dd 03a07dc1ah
+dd 017374376h
+dd 0209a138dh
+dd 0c3ceb47eh
+dd 0abacfc62h
+dd 0a15c7317h
+dd 0a19c046dh
+dd 0b6abfe69h
+dd 0a1ea12c2h
+dd 0e7f5bc12h
+dd 035866aa0h
+dd 0df81d5bdh
+dd 0209640b5h
+dd 0091e9c9ah
+dd 02f452e73h
+dd 0dbe1e79eh
+dd 019f91e16h
+dd 06666e3c5h
+dd 013583484h
+dd 0f0c2e4cch
+dd 0bd1f1dd2h
+dd 096e92fd4h
+dd 09fffca39h
+dd 0eb68a223h
+dd 0b9c6a4bdh
+dd 00d98aa81h
+dd 074136326h
+dd 02ee09cafh
+dd 0314c9028h
+dd 017e53d90h
+dd 0c8a91183h
+dd 0d68f52e6h
+dd 03abcecd3h
+dd 0753eb54ch
+dd 09f99a1f2h
+dd 0875e5ef4h
+dd 0dbe70e01h
+dd 08461c67dh
+dd 0a96baf35h
+dd 0e637df29h
+dd 000c2ee0ah
+dd 05688d6beh
+dd 0fc021854h
+dd 013151069h
+dd 0cde40c40h
+dd 033a265b8h
+dd 077852b90h
+dd 069f63f5ah
+dd 06555c50ch
+dd 037977549h
+dd 0893f611fh
+dd 01e678665h
+dd 0d246db2bh
+dd 0dc1d2f13h
+dd 08ce16d59h
+dd 0bd332f90h
+dd 0da78dc3fh
+dd 090cb4fe5h
+dd 03cf011a6h
+dd 08b9440beh
+dd 0ac2ebfc6h
+dd 0676c9e66h
+dd 044d7f542h
+dd 00254f1e0h
+dd 00297e167h
+dd 02981c29ch
+dd 01ba17e50h
+dd 09f1ab777h
+dd 0cb01edf7h
+dd 0cab2c20bh
+dd 0b45fd69dh
+dd 0913a8209h
+dd 0420a9f28h
+dd 0dc5bd5c7h
+dd 09da7c9efh
+dd 0ffdaf727h
+dd 0844c6a9ch
+dd 04355460eh
+dd 0bcf384d0h
+dd 07506567fh
+dd 0ec6c2cd9h
+dd 0e08bb981h
+dd 08657ece7h
+dd 0c129f8cdh
+dd 0d0222e23h
+dd 08296f73bh
+dd 03cd0a8c2h
+dd 05c3ce3e1h
+dd 0b56b606eh
+dd 0254bea8bh
+dd 009978133h
+dd 0575f6808h
+dd 030d09777h
+dd 050dd9e0ah
+dd 079304bfeh
+dd 0a929d9b4h
+dd 00e81dbd5h
+dd 051f9ff47h
+dd 03797db87h
+dd 0dcdb005eh
+dd 0e08e3ab3h
+dd 01a98dd66h
+dd 046fec285h
+dd 084cededbh
+dd 060b18f8bh
+dd 003663f9eh
+dd 0caffd93dh
+dd 0d3b17324h
+dd 05bd7cd01h
+dd 097a5f4feh
+dd 05a399b5bh
+dd 0fd70d575h
+dd 04acd2a6dh
+dd 070c41966h
+dd 0782cd668h
+dd 056adbb96h
+dd 079439a79h
+dd 0397e2432h
+dd 0b7b906cfh
+dd 0dfb03df3h
+dd 05d45d142h
+dd 03e164513h
+dd 05aa7a898h
+dd 08c43a507h
+dd 03c1e4ce0h
+dd 09b1e534bh
+dd 0b54774b2h
+dd 0fd5ac20dh
+dd 0bc7a42bah
+dd 0bcab4ca5h
+dd 0bf867eefh
+dd 0f9aa1622h
+dd 0e6c612e1h
+dd 09e1dff69h
+dd 07db3e997h
+dd 06c48758dh
+dd 0dc3a1cf5h
+dd 0c6f22c8eh
+dd 02d975ff5h
+dd 0413450c4h
+dd 0b9253343h
+dd 085659a1ch
+dd 0aa201f6ah
+dd 0aaa0dacfh
+dd 0aaeeb51dh
+dd 090a592a8h
+dd 0baee25c7h
+dd 08239c852h
+dd 06798b637h
+dd 032df1f6ch
+dd 05abfd774h
+dd 0250284b7h
+dd 0a9b52f26h
+dd 00b40603ch
+dd 0ca43759ah
+dd 095ed7ddfh
+dd 0651ed52ch
+dd 00c01d8abh
+dd 08234e02fh
+dd 0e1915e30h
+dd 0b0dcd8d3h
+dd 026260111h
+dd 0afc56ee0h
+dd 002250d74h
+dd 0048f899eh
+dd 01a77f45ah
+dd 02120cb74h
+dd 080eb01d7h
+dd 0085d2c41h
+dd 0acd80e15h
+dd 06248576ch
+dd 0aea23b90h
+dd 0426cd251h
+dd 085864bf8h
+dd 0d025e51eh
+dd 053ea2aa1h
+dd 01b5ba942h
+dd 023ccb571h
+dd 0cc8a1b71h
+dd 0177ac056h
+dd 0002cbdc6h
+dd 0f5be9029h
+dd 0c776372eh
+dd 01727d539h
+dd 036dc016bh
+dd 0397407e6h
+dd 093fe863ah
+dd 0ce2773f7h
+dd 01a9d645fh
+dd 0e427fbc4h
+dd 0a59a6348h
+dd 02386c9cah
+dd 0751f2c80h
+dd 0a3161720h
+dd 08b02d3bch
+dd 0fa77a49ch
+dd 0bec69634h
+dd 0b071518bh
+dd 0209f76fch
+dd 00520a893h
+dd 079085062h
+dd 0136e06fah
+dd 0a559115fh
+dd 0e923cabfh
+dd 011b32e06h
+dd 08e5d662eh
+dd 0cbf42abdh
+dd 0a4d1f451h
+dd 0569ed6a5h
+dd 0581c4c4fh
+dd 04cbfd6b7h
+dd 06c9d15cfh
+dd 07a3c0295h
+dd 0d056574eh
+dd 008d418b8h
+dd 004d136d3h
+dd 058bd0751h
+dd 0dfe738b9h
+dd 035fc3c2eh
+dd 020324f59h
+dd 09b922d93h
+dd 0344e40e0h
+dd 05b476a34h
+dd 0034d7d93h
+dd 0286e2a0ah
+dd 0e8a2bfddh
+dd 00afe454bh
+dd 0a14011c3h
+dd 06fdc7cedh
+dd 00c7803a3h
+dd 006b1ab8dh
+dd 058239d89h
+dd 0bcdd1955h
+dd 0fbb3fca2h
+dd 0a5363c17h
+dd 069e87e03h
+dd 0b0b0b240h
+dd 0a86400f4h
+dd 061a70475h
+dd 0e79608d0h
+dd 0b63e94d1h
+dd 0a5e5af36h
+dd 0fa14306ch
+dd 08a98bed4h
+dd 01e72bb02h
+dd 00795bcf6h
+dd 0e0b3b757h
+dd 0e0ab364eh
+dd 0a5e81ad3h
+dd 0cd079c5ch
+dd 0e3e38224h
+dd 04b9d2c2ah
+dd 0c5e79039h
+dd 075431cdeh
+dd 043915724h
+dd 08384ea0dh
+dd 0ee8658f3h
+dd 0243c6ee3h
+dd 030b2bf47h
+dd 0d91d8f58h
+dd 058ede645h
+dd 040485f28h
+dd 0eaba3491h
+dd 0b1f2ef5dh
+dd 03b8a2d6ah
+dd 0523cc976h
+dd 05cd2fefch
+dd 0cb57a212h
+dd 0f7417e9eh
+dd 0fd4a4bc9h
+dd 019e454d8h
+dd 0bf76ec61h
+dd 0cfa8dedbh
+dd 0e46f5ed9h
+dd 03cbce09ch
+dd 00f2d1c40h
+dd 04100acd7h
+dd 096d668bah
+dd 09be27ea3h
+dd 0321330dfh
+dd 0a38d3270h
+dd 0d37061a7h
+dd 0dd55cef5h
+dd 0db44d22bh
+dd 0fb4512bch
+dd 047d0de7bh
+dd 039b5449fh
+dd 007dac9edh
+dd 0cd249678h
+dd 0d05c3de9h
+dd 09313740ah
+dd 0b4f14ad2h
+dd 0060dd609h
+dd 0c34c0014h
+dd 0079f4975h
+dd 053ea5f5eh
+dd 0c4725811h
+dd 0bab945bfh
+dd 0e6cbd1ddh
+dd 067901229h
+dd 0de49c5b2h
+dd 0f070299ah
+dd 09891e38eh
+dd 0f1a50ac8h
+dd 09979a37dh
+dd 08d0f3e53h
+dd 0e27b13c4h
+dd 0ed3256ach
+dd 0f61d78eeh
+dd 0e11ac91ah
+dd 0ec8e3ef3h
+dd 027989810h
+dd 0a4938dc8h
+dd 04927460ah
+dd 0e95a6390h
+dd 062f64497h
+dd 06b6ab8e7h
+dd 05ac625bbh
+dd 04b4b9714h
+dd 07d4ac21ch
+dd 0dd29a63ch
+dd 00fcc3ecbh
+dd 07c3d79e8h
+dd 094552186h
+dd 0dde6a83eh
+dd 08245ed75h
+dd 015c3a05ah
+dd 0967b54c3h
+dd 08b5cf385h
+dd 0c7ecf1c7h
+dd 0ea794f7ah
+dd 0dbf15c50h
+dd 07fba6b92h
+dd 05fe2e5c0h
+dd 0f74bddd1h
+dd 0a6cda87bh
+dd 0e7b1937dh
+dd 052365088h
+dd 068b8011ah
+dd 08aa84ed6h
+dd 0c33abf80h
+dd 084acaac1h
+dd 0e6523272h
+dd 0ea85cf92h
+dd 00b67e9d4h
+dd 0818ad965h
+dd 0dde7b1b6h
+dd 04c9f8297h
+dd 0b77087dch
+dd 05fbd28f5h
+dd 07e5f75deh
+dd 093aeeff0h
+dd 01f96bedeh
+dd 0ae44454ah
+dd 0035b114ch
+dd 009916cech
+dd 087462120h
+dd 0c50558b7h
+dd 0ff6ca18ah
+dd 0fa9adad1h
+dd 0077d0cc1h
+dd 009460bb2h
+dd 0c86b3b82h
+dd 0c40b052ch
+dd 03ef77e8dh
+dd 0a4534d31h
+dd 09080cf0bh
+dd 04ceac36eh
+dd 050e6a5aah
+dd 0c4ecb23dh
+dd 075acb57ah
+dd 064931d52h
+dd 07b6fe692h
+dd 0fd43a95fh
+dd 0552d7e97h
+dd 0e54289adh
+dd 03f7607cdh
+dd 07d02c729h
+dd 085cda84ah
+dd 03d83dc60h
+dd 0f85f2b26h
+dd 003c1b29ah
+dd 00a5c80afh
+dd 03ca62b5ch
+dd 01cfc8562h
+dd 011ec4230h
+dd 09a7ddc27h
+dd 0490fe432h
+dd 0dc0c1a2ch
+dd 0dfb16853h
+dd 009e6a8c3h
+dd 0ae4d4ba1h
+dd 007e48e0ch
+dd 0ce94b22eh
+dd 09f782918h
+dd 0319043e2h
+dd 0e0e805fdh
+dd 03ee7547bh
+dd 037c512d5h
+dd 016a539d8h
+dd 0875126fdh
+dd 0ba7a6c17h
+dd 0611ab25bh
+dd 080b8fa22h
+dd 0c8b81cdeh
+dd 08e2c3588h
+dd 0723570bah
+dd 0c3bce932h
+dd 0600bd61fh
+dd 023968c2bh
+dd 05e8b33ceh
+dd 04348ea85h
+dd 069dd30d5h
+dd 080712d2ch
+dd 0b40f5143h
+dd 0460a708eh
+dd 0f974252ch
+dd 0fda96407h
+dd 0a42a3daeh
+dd 0e6ed2ec1h
+dd 00d27a67dh
+dd 0210732e6h
+dd 0b46908abh
+dd 0159aac45h
+dd 0e87c2dc9h
+dd 03e31a8e4h
+dd 02b89cb77h
+dd 0d01e7fd7h
+dd 06ac0e87ah
+dd 0a75fa77eh
+dd 06c80b40dh
+dd 050b5d029h
+dd 08932adfdh
+dd 064f3a954h
+dd 0dd6bb0eah
+dd 0db328a99h
+dd 044c8c0b3h
+dd 0492357c5h
+dd 082b3a4eeh
+dd 051712c68h
+dd 0599175b7h
+dd 0e9cf1854h
+dd 0d14b7253h
+dd 0ca815ed3h
+dd 013882ff0h
+dd 0b0314160h
+dd 09e1c7bf8h
+dd 0fd07bb4fh
+dd 058bac384h
+dd 0aba6b72fh
+dd 0309838ddh
+dd 016fb73d6h
+dd 0a7fcb105h
+dd 0d23a239dh
+dd 0ab6b226dh
+dd 0d0adf253h
+dd 0fa86c6c7h
+dd 0734988e7h
+dd 04cca3951h
+dd 05bf9a4c6h
+dd 08b0908f0h
+dd 01e9719ddh
+dd 0c95822b7h
+dd 05aefddaeh
+dd 0b83d5a5dh
+dd 0d1bdb6a3h
+dd 0185e7094h
+dd 0c239a3c0h
+dd 0046c05d9h
+dd 0c01dcb97h
+dd 02d2ecb25h
+dd 077281ce2h
+dd 0c884d5a6h
+dd 0b61942e1h
+dd 02d6d0f05h
+dd 01d5dbe52h
+dd 02711a03bh
+dd 043427b4bh
+dd 076185351h
+dd 0953b3e4eh
+dd 02a094755h
+dd 085f5f6c7h
+dd 03e78c6c4h
+dd 064d0f435h
+dd 0feab17efh
+dd 06c46b4d9h
+dd 06204857bh
+dd 04d32a181h
+dd 06d28e954h
+dd 0d2805795h
+dd 0bdbaea01h
+dd 0249ca30bh
+dd 00707d578h
+dd 011bf7ab0h
+dd 0bd6d36c8h
+dd 058c58ae7h
+dd 082d8ce7fh
+dd 0674ea4f0h
+dd 0d90c99a0h
+dd 0cde18e17h
+dd 0f03f552eh
+dd 0fb13654ch
+dd 08f3e9575h
+dd 07237fc1eh
+dd 02b3a9059h
+dd 0f33704a2h
+dd 06948f2d8h
+dd 034004eeah
+dd 09dbfcb1ch
+dd 04c7c841eh
+dd 0f8065e22h
+dd 0ece042cah
+dd 00e75a604h
+dd 0c0ab1d10h
+dd 07e3b7dc5h
+dd 0c5e165eeh
+dd 0b07a9d5fh
+dd 0c70f2e95h
+dd 0f7523a07h
+dd 0513b2a88h
+dd 0cf3bcc6ch
+dd 02142c753h
+dd 0aca9a4c9h
+dd 0318fa423h
+dd 0d2a32ac1h
+dd 04d4cc6b9h
+dd 0ac290cdeh
+dd 077359d87h
+dd 01dc8caddh
+dd 065c71cbbh
+dd 00bd4d64ch
+dd 0aa2b79bbh
+dd 0ce3906e7h
+dd 05961ba61h
+dd 013401e9ah
+dd 0e95dc4bdh
+dd 0e6149f01h
+dd 0a711bdd3h
+dd 0e849b800h
+dd 0ceab2d69h
+dd 0daadde09h
+dd 03758a70ch
+dd 0e3c55805h
+dd 0de894afch
+dd 0e941d4f1h
+dd 01461bf24h
+dd 0bd17f9b9h
+dd 05ae04094h
+dd 0cc17bdc6h
+dd 044fd7d06h
+dd 0af1fed6eh
+dd 0e94fa066h
+dd 089f81626h
+dd 034046b7eh
+dd 00c5e6ffeh
+dd 06148cd21h
+dd 033f2b86dh
+dd 07a968b7ah
+dd 09d492e3dh
+dd 0141b7001h
+dd 047d5ec36h
+dd 00b331dc0h
+dd 036509f6ch
+dd 0185ce3bah
+dd 06b00b7f5h
+dd 08035cec7h
+dd 0d3bc2f34h
+dd 07d82340eh
+dd 0a17508e8h
+dd 05e94b4dah
+dd 03590921ch
+dd 02548d238h
+dd 0523b28c0h
+dd 0100471c8h
+dd 064e585dfh
+dd 08db92acdh
+dd 00da2bc45h
+dd 0ff18398ch
+dd 03ccd1cc7h
+dd 046be0d19h
+dd 06a0dffc8h
+dd 07f390b83h
+dd 0aaaa774ah
+dd 0ee7523f7h
+dd 07b475359h
+dd 070eb6880h
+dd 004997e7bh
+dd 0ddf73ed6h
+dd 0b225bcceh
+dd 0aa1c7531h
+dd 024f62aa4h
+dd 043fefa49h
+dd 0d02e949ch
+dd 098483919h
+dd 00d65a801h
+dd 0dbbb236ch
+dd 01acbeb2dh
+dd 043641263h
+dd 061b2d4abh
+dd 07ccbcf3fh
+dd 0a650eceeh
+dd 00075eca8h
+dd 09c00f527h
+dd 0377dedc2h
+dd 0990486ceh
+dd 0b72fdd7eh
+dd 01e068dbch
+dd 04dd923d9h
+dd 03bf3cd90h
+dd 0f2d3dcb6h
+dd 01977162ch
+dd 05dc98f98h
+dd 0f6f964e6h
+dd 045004ca7h
+dd 0393ac7c6h
+dd 0d4d71b96h
+dd 03c86ec69h
+dd 0742b094ah
+dd 0a428bf5dh
+dd 013626ea2h
+dd 07bf45302h
+dd 0cc1a379bh
+dd 0f8638f6ch
+dd 05a4fea39h
+dd 02c59fc97h
+dd 0a1623ac0h
+dd 001d7d2feh
+dd 0c33b9739h
+dd 00b8f37deh
+dd 008fd8f01h
+dd 0ae933b8bh
+dd 0aff0375ch
+dd 0de5f2a2fh
+dd 0097157dah
+dd 06ef1da57h
+dd 0cb14703ah
+dd 00ca2323eh
+dd 0a01cd46ch
+dd 09a57777ch
+dd 0a6ae3df5h
+dd 0998a3c94h
+dd 00ba26004h
+dd 04412f897h
+dd 0e6539daah
+dd 0c94ef2e4h
+dd 081849997h
+dd 04488316fh
+dd 044545d0dh
+dd 0bbfa1363h
+dd 006164264h
+dd 054900f45h
+dd 03e32bf2eh
+dd 0fca2197ch
+dd 03e67a958h
+dd 03356399eh
+dd 03a71725fh
+dd 098f0e0c7h
+dd 0061dbd8bh
+dd 0d36d122eh
+dd 01de4362dh
+dd 01d9e34cdh
+dd 04efe4930h
+dd 04b8d2366h
+dd 0c696c4bbh
+dd 0b47b262bh
+dd 0a884dbb6h
+dd 0feeeb18dh
+dd 0e98c4c82h
+dd 0d40a3bfbh
+dd 02a161ea6h
+dd 04792e1c1h
+dd 062b6d17ch
+dd 0fd569ba0h
+dd 0464d86a6h
+dd 0a3470b12h
+dd 0a13f01efh
+dd 0ff8da57dh
+dd 0f3f5ef1eh
+dd 0e3c7ccfbh
+dd 00d05a575h
+dd 03cba3b70h
+dd 0157b3bdeh
+dd 06dd1510bh
+dd 01e13ccdch
+dd 028182bc7h
+dd 0f6ab8302h
+dd 0225e6f61h
+dd 0de7dfadch
+dd 0135f95fdh
+dd 0e4796ad9h
+dd 0042e9c84h
+dd 0af0316cbh
+dd 0e360492bh
+dd 0c608daech
+dd 0605a14d4h
+dd 00da9acb1h
+dd 02a13206fh
+dd 0ae448490h
+dd 095e92796h
+dd 0c41be02eh
+dd 0370e62b4h
+dd 04eed4e03h
+dd 0b9fb657bh
+dd 01b5b88f7h
+dd 018ac2b23h
+dd 03f1d6007h
+dd 0b026ce57h
+dd 0ab307523h
+dd 03581ec69h
+dd 0d4864d3ah
+dd 06585e3f8h
+dd 07dce71d4h
+dd 099fda0bah
+dd 00ef12059h
+dd 0a42c4bfbh
+dd 07384b3e0h
+dd 04782dcb0h
+dd 0b33b5e69h
+dd 0f2c148ceh
+dd 03a7eb51eh
+dd 0cebc01bch
+dd 0e225f9beh
+dd 07ad2f3dah
+dd 0a0f47a4bh
+dd 0eb30b1f0h
+dd 07edd3958h
+dd 068d67b26h
+dd 07a3405c9h
+dd 05a8defa8h
+dd 0c0a27789h
+dd 099223a9ah
+dd 01d1d6fd2h
+dd 08bc82d5fh
+dd 030834654h
+dd 0f86256b1h
+dd 09eb69b86h
+dd 01756a8b9h
+dd 0176936b0h
+dd 06de1be0bh
+dd 0dade682ch
+dd 04d6a8016h
+dd 02b527c88h
+dd 00d203799h
+dd 01bf846c9h
+dd 05c09fb17h
+dd 0fc9b528eh
+dd 0f13c72cch
+dd 0c5c9f328h
+dd 047de3f52h
+dd 06efa9da7h
+dd 050ab8d54h
+dd 0a9365706h
+dd 0cff383f6h
+dd 0b936cf01h
+dd 0eea9a69bh
+dd 0c4e2e93dh
+dd 0efb4e48fh
+dd 0e80c7618h
+dd 08ac5a9adh
+dd 0c791e202h
+dd 0b0810cb7h
+dd 0789a9ba8h
+dd 0c98a0145h
+dd 0831f4e53h
+dd 09535eddbh
+dd 04ef893a1h
+dd 0559f5cc6h
+dd 02a47705eh
+dd 0be42ecb9h
+dd 018b08beeh
+dd 0b16f66adh
+dd 0a5e82770h
+dd 07933e683h
+dd 08c3326e9h
+dd 0d96d0078h
+dd 06b864feeh
+dd 083ebd1f6h
+dd 01ad8f3aah
+dd 04024318ch
+dd 07aa11264h
+dd 0f88ce1c5h
+dd 03fac3f11h
+dd 046a5e3c6h
+dd 044adef62h
+dd 09fe801b8h
+dd 0518e373ch
+dd 07bc38c62h
+dd 0dd375308h
+dd 087179b78h
+dd 0de9b3155h
+dd 02671f264h
+dd 0055a97c9h
+dd 0669b0c3eh
+dd 0e529d57eh
+dd 09235d2f0h
+dd 036789cach
+dd 007edd6afh
+dd 0c3ebddeeh
+dd 066129fddh
+dd 054c92196h
+dd 065e944fdh
+dd 0513121a8h
+dd 083d0a7f2h
+dd 09b7ce7d5h
+dd 0f8d52852h
+dd 00d525010h
+dd 0a2333e86h
+dd 043bfa57ah
+dd 006a3a694h
+dd 0f66f95eah
+dd 0670b66d9h
+dd 040013b35h
+dd 05f96075fh
+dd 07e6a070ah
+dd 0328a0e0fh
+dd 05ead2f1eh
+dd 07b50ca91h
+dd 05907551ah
+dd 0bc577ed2h
+dd 089694eeeh
+dd 0e6d3e3c5h
+dd 0d28b092ah
+dd 081305ebfh
+dd 08c820ad2h
+dd 03df5c5e4h
+dd 0a57585b8h
+dd 044246e39h
+dd 0c1c00e10h
+dd 0b238f21ah
+dd 02abf8debh
+dd 0e1dac2fdh
+dd 0b85b9673h
+dd 0167e2a27h
+dd 00166384bh
+dd 07b8fd9a9h
+dd 0198db121h
+dd 0a31c0319h
+dd 0d4e00916h
+dd 02e859662h
+dd 006218e7fh
+dd 0881f0766h
+dd 09c11465dh
+dd 0e41ebb96h
+dd 06a0a9eeah
+dd 06938e31dh
+dd 0ae5845f7h
+dd 0bcb1858ch
+dd 0f1fa1663h
+dd 0de04f3a6h
+dd 01392dcb9h
+dd 0414d36d8h
+dd 0583d9f3dh
+dd 0669b8c77h
+dd 024dabe37h
+dd 07d6e92e8h
+dd 0db6c8e04h
+dd 0c087ee86h
+dd 0c00fa42bh
+dd 08b418e09h
+dd 0740c530ch
+dd 063955898h
+dd 0b03f290ah
+dd 031ca0e76h
+dd 0e74a45bfh
+dd 086fd1023h
+dd 0bc3e4fd6h
+dd 034a7743eh
+dd 0457007c8h
+dd 06388dc68h
+dd 09907d82dh
+dd 0b7f78b3ch
+dd 0ca095dc2h
+dd 0cd7ce085h
+dd 040c375cch
+dd 0d95109dah
+dd 05c121a38h
+dd 0ea67f587h
+dd 042984d7fh
+dd 0ea9df650h
+dd 0f26861bah
+dd 09aff7b8ah
+dd 0d576814fh
+dd 099c08556h
+dd 0e2250eb4h
+dd 08bed4a24h
+dd 087c3354ch
+dd 01dcc53a9h
+dd 056c1ab7dh
+dd 0a8c5441dh
+dd 005da0c2ch
+dd 094941070h
+dd 0394b96f6h
+dd 0d4a2cbfeh
+dd 0c297e0a9h
+dd 002550b68h
+dd 040407bceh
+dd 084d8d147h
+dd 04aa07a2dh
+dd 0b4e64fd9h
+dd 042f8a061h
+dd 094a539aah
+dd 0e33805fch
+dd 0c7b76ee5h
+dd 06345b9d8h
+dd 00cc67e9ah
+dd 09f6f4198h
+dd 062b093fah
+dd 020386679h
+dd 0acda6ed5h
+dd 0855a2612h
+dd 0a8cfaaf0h
+dd 082b4f7edh
+dd 0f61df1a7h
+dd 0bdc674b8h
+dd 04c2c0b8dh
+dd 0c1fac457h
+dd 05f6c2ed1h
+dd 0aa4d153ch
+dd 033da7439h
+dd 068a1d19fh
+dd 0dff21436h
+dd 02bc3d890h
+dd 0f3b1b693h
+dd 09eecae68h
+dd 05d6b7d1ah
+dd 0d4b61721h
+dd 01bbf0667h
+dd 067a391c6h
+dd 00656ca3bh
+dd 0b9d51bc4h
+dd 0a3007d0eh
+dd 07b20d098h
+dd 0df2e84bfh
+dd 0e341dc6ch
+dd 006dc9be4h
+dd 03298450eh
+dd 0ccad09f1h
+dd 063e449b5h
+dd 08a2f479ch
+dd 0e9c6714eh
+dd 031bffa86h
+dd 052730665h
+dd 097409a97h
+dd 0cd0b65cch
+dd 03557f2cch
+dd 03bb72070h
+dd 08dee0f2bh
+dd 0d5aba5a6h
+dd 08a5c4701h
+dd 0d15fd5bfh
+dd 0485102a8h
+dd 03d946e5fh
+dd 00d6f32a4h
+dd 0cb5590e5h
+dd 09edf5968h
+dd 0e9da3ef1h
+dd 057c84389h
+dd 0aa1a49eeh
+dd 0f7b982c1h
+dd 0ab731043h
+dd 0b0286529h
+dd 0e78d9105h
+dd 0183beee8h
+dd 09e738c2bh
+dd 0bc2e28bch
+dd 0a8396e20h
+dd 0de9960b3h
+dd 0ddb51547h
+dd 0e116ef15h
+dd 0c7808ea5h
+dd 0bac44611h
+dd 086786eaah
+dd 0794b35f8h
+dd 03b0cf9dfh
+dd 033cc5ff6h
+dd 07041c9f3h
+dd 0262569fbh
+dd 0f4da4bc5h
+dd 02f9f3f92h
+dd 053be9196h
+dd 0d1e75d9dh
+dd 05756e459h
+dd 06d69d0dah
+dd 098d7217fh
+dd 07619b9e5h
+dd 0c6ea6408h
+dd 01d78f6a5h
+dd 0a6700437h
+dd 0e4392acdh
+dd 031e5a387h
+dd 0969bfbf6h
+dd 0a4060ad3h
+dd 09120e95ch
+dd 022fa49b3h
+dd 0883de516h
+dd 05fc315afh
+dd 0342ae268h
+dd 008611e6ch
+dd 0719b02b7h
+dd 0178af495h
+dd 036db4eech
+dd 02091359fh
+dd 057bedcc8h
+dd 0cd55a974h
+dd 0ed4331a8h
+dd 036a3c1bah
+dd 082095d41h
+dd 0787d3e89h
+dd 0bad3deb2h
+dd 0d34edd40h
+dd 05aea2285h
+dd 0ff75ed83h
+dd 00bad8b95h
+dd 09fdf1382h
+dd 0f9ae6cd9h
+dd 00c5e1ec4h
+dd 0674951cah
+dd 00180ee63h
+dd 06a249a26h
+dd 09e90860eh
+dd 0568cd406h
+dd 05a383eaah
+dd 0174722c7h
+dd 01087932bh
+dd 09bfc8b68h
+dd 0f0320e27h
+dd 059574591h
+dd 0c6fe49c5h
+dd 07611acc0h
+dd 07b92c029h
+dd 0967eaec1h
+dd 0a9fdd4e7h
+dd 0c1e58f40h
+dd 0cfde01a5h
+dd 0fb904440h
+dd 0f3094185h
+dd 0fceaffa3h
+dd 0404c1b9bh
+dd 0420af62bh
+dd 03be91caeh
+dd 0060037d2h
+dd 001958c2ch
+dd 06682931dh
+dd 0ac74567dh
+dd 0e5c26d40h
+dd 07584bd5bh
+dd 0fa7b7586h
+dd 0d43be2f6h
+dd 06dc37863h
+dd 0d95146abh
+dd 0639487e4h
+dd 00f19c8c5h
+dd 0e1bd3937h
+dd 0ccd14f37h
+dd 0a4d2056ah
+dd 0d2a677e8h
+dd 063ca4e6fh
+dd 084ca592fh
+dd 0e58ab471h
+dd 08b3b49fch
+dd 02921235bh
+dd 0ca128738h
+dd 047315709h
+dd 01af100e3h
+dd 083fcc3e6h
+dd 09fe64a30h
+dd 062a242b6h
+dd 0e062f9b0h
+dd 0c14e6929h
+dd 050e6b831h
+dd 075901a75h
+dd 0618b5e49h
+dd 092e413cdh
+dd 0d382a99eh
+dd 013e9336bh
+dd 05a9fa0b5h
+dd 03cc1fca4h
+dd 0365d302ch
+dd 0cd4cd113h
+dd 0ea7aa73fh
+dd 02623b8f9h
+dd 0d3a7a960h
+dd 084ff3c0bh
+dd 0c9eeca49h
+dd 0831f2428h
+dd 0378bc522h
+dd 0a5e68532h
+dd 046fffbffh
+dd 04479a130h
+dd 032c520e9h
+dd 048e75225h
+dd 0cf150877h
+dd 011ce514bh
+dd 02cb14e9ah
+dd 01b6d35eeh
+dd 0928bbac8h
+dd 0eed0bbf1h
+dd 014cb223ch
+dd 0e5553f41h
+dd 0dbda12abh
+dd 099d06a86h
+dd 0722f4b97h
+dd 06dd645b2h
+dd 0c0a7bb16h
+dd 08c9c4fe6h
+dd 02bb3ac6fh
+dd 011dea4bfh
+dd 003532each
+dd 030ab5c91h
+dd 0c246d1d9h
+dd 06cdc0926h
+dd 070e6dbf5h
+dd 096753351h
+dd 0b93f4fa8h
+dd 00fe00f8fh
+dd 0ef9aa7aeh
+dd 04f6b7bfbh
+dd 0832ef101h
+dd 0f07c2612h
+dd 0b1ffbb28h
+dd 0d1037d0dh
+dd 0f3af8590h
+dd 0ec45127eh
+dd 04327d46ah
+dd 0d9390a47h
+dd 05e70e8c7h
+dd 0ccf0afbah
+dd 03b6021bch
+dd 08618e290h
+dd 0ff4c64c6h
+dd 073413cb7h
+dd 02cd52fech
+dd 07bce8bc7h
+dd 0fa9b089fh
+dd 0107df930h
+dd 06b378907h
+dd 03b904e75h
+dd 0247f090eh
+dd 09da46a8ch
+dd 0633de3d0h
+dd 049a03fdfh
+dd 0d5ee002ah
+dd 0d1823836h
+dd 063cb1f89h
+dd 0e66ac302h
+dd 0639d0c6dh
+dd 0db64d848h
+dd 0746be76ch
+dd 0ef1d8f4bh
+dd 0462cdd94h
+dd 0f9ecb76fh
+dd 094838ffch
+dd 0bb3250b8h
+dd 004abee0eh
+dd 05cb7f8adh
+dd 06810f2a9h
+dd 0f6fbd735h
+dd 0afe6a86ch
+dd 057f2bc81h
+dd 097b38b7dh
+dd 08213eccdh
+dd 01f5ff561h
+dd 056923b97h
+dd 034394c59h
+dd 0dd308977h
+dd 01e122e19h
+dd 0b1f7f80fh
+dd 0ee9843f1h
+dd 0cdd21f1eh
+dd 09d3ec2a0h
+dd 01d4f772bh
+dd 0dee68fc5h
+dd 0995b771ch
+dd 07f428494h
+dd 0b4142370h
+dd 039ee97c4h
+dd 0e57c1848h
+dd 0f680ef35h
+dd 03dcef435h
+dd 063784bd2h
+dd 009fa3f3ah
+dd 04a2ae40dh
+dd 018d99613h
+dd 00b20a1e0h
+dd 07a1e8f1fh
+dd 047f876aah
+dd 076febb0ah
+dd 0d418b3eeh
+dd 07529e672h
+dd 044db876ch
+dd 0b51976f4h
+dd 037b6e887h
+dd 0cfe99cf5h
+dd 0b00b035bh
+dd 03564e220h
+dd 0b52dd45ch
+dd 078c16884h
+dd 0561661e2h
+dd 003036501h
+dd 0cdf807bch
+dd 0dbf4c648h
+dd 0c95a2636h
+dd 0d7770a73h
+dd 0600d082fh
+dd 007d0064eh
+dd 0af58a16fh
+dd 0dbf00e4ch
+dd 081f9346fh
+dd 0794e0b9ch
+dd 0e16857d0h
+dd 065cf7ec6h
+dd 08eb041a7h
+dd 06cd14f97h
+dd 04269f87bh
+dd 0c45bd2bah
+dd 0b601b57ch
+dd 09908d19eh
+dd 02808ed01h
+dd 06979b789h
+dd 0e6c8cc9dh
+dd 02adc185dh
+dd 09674e46ah
+dd 02797e46dh
+dd 0cec8e4bbh
+dd 0f840f44ah
+dd 0a7ed0697h
+dd 0a1175387h
+dd 07d42793ch
+dd 0b5fcfa31h
+dd 07fb0a6a0h
+dd 06a02e729h
+dd 0401978d9h
+dd 0317bf7ddh
+dd 02a7ceb25h
+dd 064743b3ah
+dd 0b5fdd433h
+dd 03692d938h
+dd 0abcceb73h
+dd 09898251bh
+dd 07978a9fbh
+dd 070c010c5h
+dd 0a0d49bc6h
+dd 0462e92d4h
+dd 09cebef82h
+dd 03ac5d7a9h
+dd 0cb7f64deh
+dd 0b3a5fd41h
+dd 0310e0985h
+dd 0416ccef4h
+dd 0ee3e1a6ah
+dd 0b7395bcdh
+dd 01490ecf6h
+dd 0d92a8b80h
+dd 0430831afh
+dd 06a8d2eb3h
+dd 0050e8045h
+dd 0204a3229h
+dd 035f9cceah
+dd 0d786a243h
+dd 0cd02352eh
+dd 064665c7ch
+dd 07ff504a0h
+dd 05d1e871ch
+dd 01e8f05e4h
+dd 032718703h
+dd 07a95b4bah
+dd 0a4f9cacbh
+dd 03b44af42h
+dd 077adab05h
+dd 09e88c850h
+dd 04a0457eah
+dd 0af22eff0h
+dd 0ff21d3a4h
+dd 0a54c2620h
+dd 0fdcd7bb7h
+dd 099c5fd5bh
+dd 0e81e4561h
+dd 0b34683aeh
+dd 0e5e98b87h
+dd 0f3e5f6ebh
+dd 085685626h
+dd 019178290h
+dd 0afbdb318h
+dd 0563cc0d4h
+dd 010378de3h
+dd 05440e90eh
+dd 0bbde4266h
+dd 0322a53d3h
+dd 09fdd2e97h
+dd 022706defh
+dd 092309532h
+dd 03fa7b40bh
+dd 01b7810d5h
+dd 0a41b3c80h
+dd 039314351h
+dd 004411506h
+dd 065ca02c0h
+dd 0eac87ed0h
+dd 000bc0b3eh
+dd 00ca08e13h
+dd 0d38630f0h
+dd 0a81d56efh
+dd 003ee2010h
+dd 098f5a839h
+dd 05386ad75h
+dd 0f8fddb38h
+dd 07ac4de66h
+dd 06a69463fh
+dd 00acda9c2h
+dd 0647e0a64h
+dd 01ecba54fh
+dd 01779c744h
+dd 0c8959f12h
+dd 0445aa448h
+dd 0e055eae7h
+dd 0bd717e2ch
+dd 0692bed8dh
+dd 094f1be94h
+dd 0f7e652a0h
+dd 0235a52cah
+dd 0a1558b3eh
+dd 0fa08b04ah
+dd 0767ccbech
+dd 03ef0216bh
+dd 05adbcba9h
+dd 03d05ea40h
+dd 0dd909e36h
+dd 027131c8fh
+dd 021de7188h
+dd 0b9d1a57ch
+dd 0535db349h
+dd 0f439a5f5h
+dd 0349d6793h
+dd 0e9c9fa01h
+dd 057afec96h
+dd 095d0c854h
+dd 080339739h
+dd 016f9eb50h
+dd 0f9e3b223h
+dd 086517348h
+dd 0e1e67e2eh
+dd 0aacd6cb2h
+dd 07af72b7bh
+dd 0d959d58ch
+dd 0cff4991fh
+dd 073a03f8bh
+dd 06f22fff9h
+dd 0db80ee52h
+dd 09b96e4ebh
+dd 07ade7746h
+dd 090f2b7d6h
+dd 018a862e5h
+dd 0b8fcf00eh
+dd 066b7325dh
+dd 0d9df03d9h
+dd 0a54f4180h
+dd 0103ec293h
+dd 0cadbbba0h
+dd 0cd0b6336h
+dd 05b78ebb0h
+dd 0a6ec226ch
+dd 04b5c38d9h
+dd 0ce4faa37h
+dd 099207f99h
+dd 0c137ca62h
+dd 07a09cddbh
+dd 07fa74f0bh
+dd 0420b292eh
+dd 016b99775h
+dd 0d425bb3ch
+dd 024974c3dh
+dd 016ce6b6eh
+dd 045c9df74h
+dd 0bc4b2404h
+dd 0eac5bc7fh
+dd 04a450822h
+dd 059545b8eh
+dd 045a51fb0h
+dd 0d4d72333h
+dd 06c10e127h
+dd 0f8db46a9h
+dd 03602d4cch
+dd 0d1d0ac80h
+dd 02c1d530dh
+dd 015492f66h
+dd 0dc149c50h
+dd 04f03d05bh
+dd 0daa0f4b9h
+dd 0fbc8aa53h
+dd 07c7a7ccah
+dd 0d0c59799h
+dd 0a2fceb09h
+dd 01bf9e2f8h
+dd 0c876dccbh
+dd 0ea030e65h
+dd 019fdd7f6h
+dd 03b7ed602h
+dd 06a118598h
+dd 0684b9af1h
+dd 0f8eb5664h
+dd 09cd6295ch
+dd 0d0de9e56h
+dd 04f404b72h
+dd 0371e3ec1h
+dd 0cfbe1ebfh
+dd 0285de9b1h
+dd 068f3517dh
+dd 0660aaa4fh
+dd 036beb405h
+dd 0eba0731bh
+dd 0100dd741h
+dd 06ae9eddah
+dd 0c42e4000h
+dd 039d00af9h
+dd 0163eda94h
+dd 0b79ab168h
+dd 02f44f76ch
+dd 086f7c724h
+dd 0a39a1c41h
+dd 0a1fcec3eh
+dd 03eb2fcc3h
+dd 037cea3c9h
+dd 0185f2f29h
+dd 046a91fa5h
+dd 0bfdca867h
+dd 06b363f74h
+dd 04bb5cfdch
+dd 0a90343ech
+dd 0ec4f557bh
+dd 086a5bbaah
+dd 0c863de8bh
+dd 0b263067dh
+dd 0b022a7d8h
+dd 03407862dh
+dd 0a24ea7d7h
+dd 0bc12e88bh
+dd 045f55eaeh
+dd 0a140ec0ah
+dd 03c19cd52h
+dd 0a18e8aafh
+dd 0658677ddh
+dd 0a32a3e4fh
+dd 0ba115e5fh
+dd 0a95b6892h
+dd 06a2dd490h
+dd 0e114e2d5h
+dd 040124fa5h
+dd 0f2959b88h
+dd 010694b36h
+dd 0e4bfd29ah
+dd 055f92d0ch
+dd 0233f0f93h
+dd 00d144affh
+dd 08b68cc70h
+dd 04679ca80h
+dd 0daf19bc8h
+dd 0ebfe84bah
+dd 0e7979b5ah
+dd 01a6d25f9h
+dd 0d2f80ed9h
+dd 04961f28bh
+dd 0f259ecebh
+dd 005af08abh
+dd 0afb50768h
+dd 0b07631dch
+dd 01aa07304h
+dd 07113e114h
+dd 01b441ba5h
+dd 08c0c0305h
+dd 0038d1094h
+dd 020da8eceh
+dd 045cfc119h
+dd 007a2e638h
+dd 0827f2581h
+dd 043152f46h
+dd 08b1ad9b1h
+dd 003520175h
+dd 0de33678fh
+dd 02394c33eh
+dd 0d2a41f99h
+dd 0f8af74eah
+dd 042284b1bh
+dd 012680ca5h
+dd 08aa971e2h
+dd 0c106f733h
+dd 01c14942dh
+dd 0f4415787h
+dd 0133049bdh
+dd 08d8debf9h
+dd 0f56003f3h
+dd 0af44c40ah
+dd 05e6b63f9h
+dd 045521771h
+dd 0d7039f1ah
+dd 026a1e1f8h
+dd 0a7ec5a12h
+dd 04698958ch
+dd 0594c1b27h
+dd 04aa1053bh
+dd 067c79027h
+dd 024945183h
+dd 07ae11cbbh
+dd 029b233e1h
+dd 06289d975h
+dd 01341b38fh
+dd 07f26a059h
+dd 0d626823ah
+dd 0ec13fb75h
+dd 04cbc876ah
+dd 03b38c086h
+dd 05410aa23h
+dd 08a1e1fb0h
+dd 08317cf72h
+dd 055ae5946h
+dd 04b17ed05h
+dd 0ca364b36h
+dd 01b1979cah
+dd 0ceb8c95dh
+dd 00f5f7c2bh
+dd 024fa3570h
+dd 0bed3f3dch
+dd 0d1bf51bbh
+dd 07267978eh
+dd 03aa0133ch
+dd 0eadc5c3bh
+dd 0057ba89fh
+dd 0ec343b77h
+dd 008c8b8f4h
+dd 07f9178bch
+dd 0d9f32782h
+dd 088652469h
+dd 09b3474e1h
+dd 00a0f0f3eh
+dd 03d852384h
+dd 056cc96fbh
+dd 0eec69f57h
+dd 07fc6b776h
+dd 067e812bah
+dd 0a2c842b3h
+dd 0ce2a03bah
+dd 0190968a3h
+dd 0a1a6238ch
+dd 00b53857eh
+dd 0ac23cba7h
+dd 00aed1b71h
+dd 07b4acf56h
+dd 0cfd9e494h
+dd 02135de66h
+dd 01d0bc764h
+dd 0287c0e3eh
+dd 07a063954h
+dd 0d70d661ah
+dd 00622c4a8h
+dd 04e6aa986h
+dd 035b38fe2h
+dd 03e2339b6h
+dd 0e37568b8h
+dd 081b5e691h
+dd 0b7953e15h
+dd 02abe923ah
+dd 0afc16545h
+dd 07030d66bh
+dd 01e0622d3h
+dd 0d3fe60b1h
+dd 03add728fh
+dd 0ccb9f173h
+dd 0a184cd80h
+dd 00248079ch
+dd 0ca584ad1h
+dd 0f02c61e9h
+dd 038174acah
+dd 02df71126h
+dd 0f3b81b82h
+dd 0bb0ac84ch
+dd 028fa81bdh
+dd 08529da85h
+dd 032bc957ch
+dd 071847813h
+dd 0f800dc31h
+dd 06bdd3efah
+dd 0a0542f6dh
+dd 02406b07ch
+dd 0afe917c5h
+dd 02a6002f7h
+dd 01468e540h
+dd 0e41ddf9bh
+dd 0fd2d3fc8h
+dd 0e1661fe7h
+dd 04b72c6b4h
+dd 0f1a72b01h
+dd 01b531bbeh
+dd 06eb7bd00h
+dd 0c6c7289fh
+dd 0008e58c7h
+dd 0c57c46f1h
+dd 0a0d672a8h
+dd 0f0758c65h
+dd 0dd4bb9b4h
+dd 06ea2f037h
+dd 03fed9a01h
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679901.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679901.inc
new file mode 100644
index 0000000..70601d7
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679901.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 000000901h ; Patch ID
+dd 004212014h ; DATE
+dd 000030679h ; CPUID
+dd 069c4e6f1h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000901h
+dd 000000000h
+dd 000000000h
+dd 020140418h
+dd 000003201h
+dd 000000001h
+dd 000030679h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0fec66e3bh
+dd 05ea7fdc0h
+dd 09f6aeab4h
+dd 015edd68fh
+dd 074f337d5h
+dd 0bbf39b66h
+dd 072ecedebh
+dd 089c8cbb4h
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 0bc273ff0h
+dd 02b26d23eh
+dd 03df6f8e1h
+dd 08fc664c1h
+dd 039dfe592h
+dd 045861046h
+dd 08f96a999h
+dd 0a458fa1dh
+dd 099fdebd1h
+dd 070ae4dcah
+dd 06aa066e4h
+dd 033535749h
+dd 0f0490fe3h
+dd 061594e81h
+dd 0bdb74bfah
+dd 08222212eh
+dd 056249131h
+dd 0472c727dh
+dd 05706da9ch
+dd 0e9851911h
+dd 00b3b8dd2h
+dd 0c2f052ech
+dd 0955b6b95h
+dd 091f40608h
+dd 0866709a8h
+dd 048124c1eh
+dd 0cf1eea42h
+dd 062d609eah
+dd 08ef621a8h
+dd 00ad6844bh
+dd 04813f6a6h
+dd 039c195fch
+dd 032bcceebh
+dd 03efe8fd6h
+dd 0befaaea9h
+dd 0fcaa53f6h
+dd 0e4109f2ah
+dd 01dd5f3dah
+dd 0a5aa255fh
+dd 0becadadeh
+dd 0128be0f2h
+dd 044f4b96fh
+dd 04e3db131h
+dd 0d34c0713h
+dd 091549068h
+dd 0003ace08h
+dd 0dca3e5b3h
+dd 097ca5495h
+dd 0a4c35559h
+dd 0fd51992eh
+dd 09f8c705dh
+dd 024e8abf3h
+dd 0a10591cbh
+dd 02e12513fh
+dd 0232f15d2h
+dd 028cd7328h
+dd 0f30f3c46h
+dd 00015b87bh
+dd 0650636aah
+dd 0f9bd69beh
+dd 0d61524a3h
+dd 08cf61a11h
+dd 0f6ea29d1h
+dd 0792710ddh
+dd 0082b8a09h
+dd 0853b3690h
+dd 020345ddbh
+dd 0e316d1d1h
+dd 04ed55d9eh
+dd 0323da9b4h
+dd 0fe99eeb5h
+dd 0ca0b9f40h
+dd 019233040h
+dd 0aadd75e1h
+dd 0008d7cfdh
+dd 0b9ed282ch
+dd 0f4278d69h
+dd 0f145792eh
+dd 0850415c0h
+dd 0fc99c5f9h
+dd 0cb249813h
+dd 00ef77115h
+dd 0e8652522h
+dd 07aeb7733h
+dd 06feefd70h
+dd 0a6f009d4h
+dd 05fd075c8h
+dd 06ba8d670h
+dd 0611d2066h
+dd 033b7fcf8h
+dd 007972714h
+dd 0e4e004c2h
+dd 0be894c12h
+dd 01d8d298bh
+dd 068e1bf79h
+dd 094fef7dbh
+dd 009af5803h
+dd 08aef9182h
+dd 0eaa2743eh
+dd 0820778b7h
+dd 045d49401h
+dd 01d23ab0bh
+dd 0b2856fd7h
+dd 0610851c7h
+dd 0805c9a4bh
+dd 083859c6ch
+dd 0dbd7184eh
+dd 0a8aefe7dh
+dd 0174dbe59h
+dd 0b7f5968eh
+dd 0dab2bc51h
+dd 0edfe3a5fh
+dd 0cd6ef4d3h
+dd 0eb04da10h
+dd 0db87dd29h
+dd 0c524dfb7h
+dd 0dcc28dd5h
+dd 03f60e0edh
+dd 0f70cf0adh
+dd 09f0b0950h
+dd 0820c13c9h
+dd 003c64f85h
+dd 0beb4b813h
+dd 01fe4e210h
+dd 046221d5ch
+dd 04318e10eh
+dd 06d35386dh
+dd 0ae47bdd3h
+dd 015f119b4h
+dd 0c7ca18b1h
+dd 07daa619ch
+dd 08acf22cah
+dd 0f1f21ad4h
+dd 0abbf5e0bh
+dd 0469788c0h
+dd 05f708c07h
+dd 07a2b5b9eh
+dd 049ff86b8h
+dd 0e413b41ah
+dd 0c5eb5c08h
+dd 0b54aa4e3h
+dd 092df4488h
+dd 0cf795a07h
+dd 03bc3fdb8h
+dd 05c266617h
+dd 034a74093h
+dd 0c960f84ah
+dd 06e5833a9h
+dd 05c9a8a3eh
+dd 01b9a41f6h
+dd 056150aa7h
+dd 00e2430f9h
+dd 01ffb94e2h
+dd 0c535ba9bh
+dd 09b815140h
+dd 05f019967h
+dd 0ad25b77eh
+dd 003fe5339h
+dd 0790676b8h
+dd 08c97c754h
+dd 0c236fd3dh
+dd 0bb121263h
+dd 012a3acdeh
+dd 0dc94d956h
+dd 0d196163ah
+dd 0fd514421h
+dd 0f705c56dh
+dd 00f21bf7bh
+dd 069b566a2h
+dd 06febb58fh
+dd 0f86bb7a6h
+dd 0a182e7c9h
+dd 05d765684h
+dd 023b29e0ah
+dd 03f537ea6h
+dd 0f4161021h
+dd 03e3c78d8h
+dd 0b87455c3h
+dd 0529b7ed9h
+dd 01129ad28h
+dd 0ad5dfcbfh
+dd 083d707d8h
+dd 0d1f35030h
+dd 0a8ef33cch
+dd 0c297cfb9h
+dd 08cfc5deeh
+dd 0bbd5da2ah
+dd 00bc51140h
+dd 0935d6fa1h
+dd 088c12a5eh
+dd 07f971c52h
+dd 058b8f16ah
+dd 04c4b7ecdh
+dd 0668f98fch
+dd 0e9cee4c0h
+dd 0ea99ac82h
+dd 032383554h
+dd 02fe00823h
+dd 098d184d0h
+dd 0d54a5703h
+dd 08f694bbeh
+dd 094d2d7e1h
+dd 08dd072d7h
+dd 02afba4b7h
+dd 0b83bc9f7h
+dd 04b2ffb42h
+dd 0111acb98h
+dd 08ef264f5h
+dd 05fe3acd6h
+dd 039663fc4h
+dd 01d74be85h
+dd 01f8c9b07h
+dd 02255b4b5h
+dd 018b9dafeh
+dd 09474faf7h
+dd 0164c2032h
+dd 034548d1ch
+dd 0e4589ec3h
+dd 0c4a2c799h
+dd 03abccf3ch
+dd 0efa95b3fh
+dd 01b9219f9h
+dd 079ebfbcfh
+dd 0867d92d2h
+dd 06d48505ah
+dd 018b2bd62h
+dd 0cd1d7322h
+dd 02cdbd1bah
+dd 0a5f44a2fh
+dd 0d6de7e8fh
+dd 0cadca3ech
+dd 0f7ecb50bh
+dd 0c6f3e605h
+dd 0ffdd8ca3h
+dd 077e1cac7h
+dd 08554111dh
+dd 042a51e71h
+dd 0f99c7233h
+dd 080060059h
+dd 07060f2cah
+dd 0357264d2h
+dd 0fc54e34ch
+dd 0bebdd976h
+dd 0c29ee353h
+dd 0b3cf8a2dh
+dd 0b9033c19h
+dd 0baf3ceb3h
+dd 0d56ba21dh
+dd 0a5eafe8dh
+dd 00dd999c1h
+dd 02deec8cfh
+dd 052bdb14ch
+dd 07c191d52h
+dd 04bf38b00h
+dd 0ca25ffb6h
+dd 07c2b92f4h
+dd 0a89318a9h
+dd 074783dbdh
+dd 0725e8632h
+dd 09dc472cah
+dd 001327302h
+dd 01d055661h
+dd 0814b4647h
+dd 0143c3a35h
+dd 0c87574a8h
+dd 015a08196h
+dd 02d83584bh
+dd 0a2c665eah
+dd 0fbf1fefeh
+dd 0bf7dfad5h
+dd 080eeae13h
+dd 07bb41529h
+dd 0ca4fa5e4h
+dd 026536131h
+dd 0830fd8bah
+dd 0ccdfee21h
+dd 0da87272ah
+dd 09c2caa6eh
+dd 05663e79dh
+dd 023d8348ah
+dd 0b841762eh
+dd 04d7116efh
+dd 0d4ba6782h
+dd 045ffdfach
+dd 06238a909h
+dd 0de6338f6h
+dd 08b7dec7eh
+dd 072cfb470h
+dd 08c11a8c7h
+dd 07497d84eh
+dd 00d5e2ac1h
+dd 023c07ce7h
+dd 0d88feecdh
+dd 0d9e6ff20h
+dd 0a0fabc88h
+dd 0fbe445d9h
+dd 0ccfc96f4h
+dd 0997e58e7h
+dd 0c42e2542h
+dd 038d747cch
+dd 0a39c54cch
+dd 0579605d5h
+dd 0a502f5fbh
+dd 05d948827h
+dd 0d6a48c4fh
+dd 069c0b741h
+dd 0f6bd8e61h
+dd 02c455403h
+dd 0759d24f7h
+dd 038dd48e0h
+dd 0b384a44ch
+dd 02c344703h
+dd 0208b6023h
+dd 028cb768ah
+dd 06d8845d4h
+dd 06a1e0efeh
+dd 078846746h
+dd 0f00e0c23h
+dd 05330dd3ah
+dd 0c158a1a6h
+dd 0d389c522h
+dd 03885723bh
+dd 0e8bf785fh
+dd 0abb30babh
+dd 0b7209eb3h
+dd 0693a91bbh
+dd 03cb78bdfh
+dd 032bbd5c2h
+dd 08c923ebdh
+dd 065493730h
+dd 018afcc9ah
+dd 00e41bb60h
+dd 06d6a78a7h
+dd 04d4468d3h
+dd 07da5edc5h
+dd 0bd5a837ah
+dd 0e9745f9fh
+dd 0304ab133h
+dd 0339812c0h
+dd 017e1d2c5h
+dd 00f4f885fh
+dd 0f7d26faeh
+dd 0a21bf73eh
+dd 04c940b0fh
+dd 032d98d1ah
+dd 0edf04824h
+dd 049a98cfbh
+dd 06f75089dh
+dd 04d381479h
+dd 095f770ddh
+dd 0ffdaf88ch
+dd 05b785567h
+dd 091a1e6f4h
+dd 02e9a5a8ch
+dd 03999c1fdh
+dd 0c09df366h
+dd 0c2fca93dh
+dd 07b79222ch
+dd 0d392f863h
+dd 0665ab7dch
+dd 021c043a0h
+dd 092920fcbh
+dd 0a2b17e88h
+dd 05284589dh
+dd 05f18dc9fh
+dd 065d481f4h
+dd 0b953efbfh
+dd 0aa9bda38h
+dd 0f4c4359dh
+dd 043c852a6h
+dd 007000ff8h
+dd 02ca382b4h
+dd 05bdfe47ah
+dd 0c241ad74h
+dd 0b349d815h
+dd 0545023c4h
+dd 0984dd436h
+dd 004d66ac0h
+dd 01fd883dch
+dd 01175b8d4h
+dd 030b479abh
+dd 0e17c2a83h
+dd 0166fe2afh
+dd 0db267d9fh
+dd 0cd1608d0h
+dd 08b7b6eech
+dd 020bd9203h
+dd 02f6e4bfeh
+dd 026507987h
+dd 0f8eee4f9h
+dd 0c82ecd06h
+dd 06a0e6791h
+dd 0afd6aa17h
+dd 0d1509039h
+dd 0f8053d04h
+dd 005e1d85dh
+dd 0138193a2h
+dd 05eea472ch
+dd 0f862a064h
+dd 0cf01dd14h
+dd 079f47367h
+dd 073a7b4f2h
+dd 0893bfeeeh
+dd 00454f38ch
+dd 036b2020fh
+dd 0ff230043h
+dd 031aeec04h
+dd 0fbcd4969h
+dd 0a63bb665h
+dd 0c6a7c586h
+dd 0b5c13cd5h
+dd 070e71edch
+dd 054c6eb30h
+dd 01552a967h
+dd 0a908452eh
+dd 09076f39dh
+dd 0e5f9ba33h
+dd 0c0d5589ah
+dd 00caa9be9h
+dd 0eb46744bh
+dd 040837cfch
+dd 00ae65efah
+dd 0b473d8d1h
+dd 02f882f30h
+dd 083acf8cfh
+dd 0d209d856h
+dd 0e681b2cah
+dd 05155caadh
+dd 075196950h
+dd 053b76677h
+dd 0cdde7adbh
+dd 0af831c13h
+dd 046ee091bh
+dd 0efd3fd87h
+dd 0c23730feh
+dd 062532bcdh
+dd 04b38215fh
+dd 04e8fd7ach
+dd 093475a14h
+dd 0206a1a13h
+dd 0f5adc10fh
+dd 00bf20737h
+dd 020ba375dh
+dd 0e648846ch
+dd 0a421f776h
+dd 056048b34h
+dd 0ed538460h
+dd 08a5c18b1h
+dd 0a1dabb18h
+dd 0056e1c7ch
+dd 0df7cfa46h
+dd 0b7f90c39h
+dd 0bf25c8e9h
+dd 0c55475f7h
+dd 07ca4d57dh
+dd 016cacf49h
+dd 0dde6d75fh
+dd 036ac07f7h
+dd 042016fdbh
+dd 0b0a9bdaah
+dd 0e702ace7h
+dd 044b81e0ah
+dd 0b2865622h
+dd 0cfc15278h
+dd 05d111239h
+dd 08150d689h
+dd 0eefaf4c3h
+dd 097badefeh
+dd 0d9953307h
+dd 0e30cd233h
+dd 026c1c656h
+dd 02e828f37h
+dd 087b475f5h
+dd 051a13d04h
+dd 0c2e8ca1ch
+dd 09b27a25fh
+dd 018f60806h
+dd 02b66904ch
+dd 00c1d5930h
+dd 0667121cfh
+dd 0fef6dbach
+dd 0173b651ah
+dd 09060a76fh
+dd 00e4804c8h
+dd 06bb0c544h
+dd 06d8abb1eh
+dd 0086f6f2fh
+dd 05cb7be6bh
+dd 08dc4c521h
+dd 02dccc4d4h
+dd 08fb6eafdh
+dd 0e339cd25h
+dd 0a20a9762h
+dd 05f91aa48h
+dd 033c838cah
+dd 0101dfd9ch
+dd 01dc6db81h
+dd 0452e7051h
+dd 092e4808fh
+dd 05196e807h
+dd 07d9f0e92h
+dd 073f9a9dfh
+dd 087a1bf8ch
+dd 0147a3ebdh
+dd 0861419eeh
+dd 02e7d07b0h
+dd 0cfad4573h
+dd 0eab236ceh
+dd 07dec3ac7h
+dd 037ac7892h
+dd 0966d7ce0h
+dd 0a5780ff9h
+dd 04c58f538h
+dd 080da4149h
+dd 04830ff67h
+dd 01439263ch
+dd 079616549h
+dd 0a566f022h
+dd 03e5e5a1fh
+dd 03fe89cceh
+dd 0a246748eh
+dd 0623d4785h
+dd 0732662d7h
+dd 022bc4139h
+dd 094d479f8h
+dd 017a53609h
+dd 05e92ba2bh
+dd 0b3616751h
+dd 0e3a838e2h
+dd 0bfc8a011h
+dd 061b83cd5h
+dd 0d5f0c060h
+dd 057f1f763h
+dd 0f9d43db2h
+dd 06cd84f5ah
+dd 035d45138h
+dd 0c7983b48h
+dd 01d5bc571h
+dd 019d23119h
+dd 02146d57bh
+dd 0afb48b10h
+dd 0978b2ca7h
+dd 0e285d951h
+dd 01e528a59h
+dd 084f9fc7eh
+dd 07126b069h
+dd 07d154657h
+dd 039c3cf60h
+dd 0fe679562h
+dd 03aa93622h
+dd 094000d52h
+dd 0401f8161h
+dd 0a6eb6a85h
+dd 0b3a2c04fh
+dd 0b29fccedh
+dd 02361ce8fh
+dd 01b3ba52bh
+dd 0d410c66fh
+dd 0f464b5abh
+dd 0aa587195h
+dd 089792b1dh
+dd 0dcdea5ach
+dd 086704a68h
+dd 0efe11016h
+dd 0b0f9bd2ah
+dd 005d2e9d9h
+dd 086ab1901h
+dd 08249a66dh
+dd 0b074f271h
+dd 01be625f4h
+dd 02fc99d02h
+dd 08ff83fb1h
+dd 092cf4e06h
+dd 06dc37040h
+dd 0bd6ebd58h
+dd 08acf9b62h
+dd 06a569190h
+dd 02ea447c9h
+dd 0875c47d0h
+dd 0203277e7h
+dd 0fcf2617bh
+dd 0e3080caeh
+dd 021255844h
+dd 0aafb7d55h
+dd 0efa0fb92h
+dd 0aa009952h
+dd 008f9fe90h
+dd 095040b57h
+dd 0df254170h
+dd 08e44f9d8h
+dd 0f3f17c9ah
+dd 07b743ad8h
+dd 0563d7ee2h
+dd 0a3aaa64dh
+dd 098934355h
+dd 0021c0dceh
+dd 07364bddeh
+dd 01b140f58h
+dd 0575e5acdh
+dd 023cc641ch
+dd 0c7f9f853h
+dd 064b4b5cfh
+dd 0059b93a4h
+dd 06630bbc0h
+dd 0763d9237h
+dd 028b4e9e5h
+dd 094284f6fh
+dd 0574714e5h
+dd 046dccfa9h
+dd 0788b44e3h
+dd 03aac0b7eh
+dd 045620638h
+dd 0fa867c0dh
+dd 0a609fdb7h
+dd 0bf265407h
+dd 02ac8e73dh
+dd 0361b8d1fh
+dd 0a24c1434h
+dd 09dad036ch
+dd 0f05e3034h
+dd 0ce69520ah
+dd 0edeea982h
+dd 0823fe63bh
+dd 0a7ce0120h
+dd 0a841a6bbh
+dd 0e4d9daa4h
+dd 069fbe092h
+dd 0addf66a1h
+dd 0ab10aed1h
+dd 002e17203h
+dd 0eb9a4688h
+dd 0e9ba11aah
+dd 0c96d00f1h
+dd 0178264a8h
+dd 0e8b671e1h
+dd 049a80b59h
+dd 01fcf93a5h
+dd 0d479f04ch
+dd 093e151e4h
+dd 03fa95543h
+dd 0decadf54h
+dd 0748a911ah
+dd 091f1ef88h
+dd 054bfa2d5h
+dd 0502596b9h
+dd 0ab78d458h
+dd 0a92888c7h
+dd 085f3cfe2h
+dd 0e710f89fh
+dd 03f954396h
+dd 0ee4d7684h
+dd 0030d95e4h
+dd 0e5e017dfh
+dd 0d692a84dh
+dd 072581448h
+dd 0543245b7h
+dd 02a0a2441h
+dd 0bc94df7dh
+dd 0f1718789h
+dd 0be23a461h
+dd 0b46db4cfh
+dd 0897ab27dh
+dd 082aaee2fh
+dd 02663d824h
+dd 01c5b3f04h
+dd 073bdc68ch
+dd 03e7b4b93h
+dd 062124aach
+dd 0bd94c4ebh
+dd 096169253h
+dd 09a4d5c11h
+dd 018de731dh
+dd 041f11764h
+dd 0cde4dc9fh
+dd 0ddcc728fh
+dd 03060b23bh
+dd 0a33df4dah
+dd 08b75261eh
+dd 0be3412adh
+dd 077f4bde5h
+dd 0469eddd2h
+dd 08f837012h
+dd 0d23b7f55h
+dd 0c1285aaah
+dd 035d5e061h
+dd 028a05adch
+dd 06d2af29ah
+dd 0bb9f669bh
+dd 086559b97h
+dd 04f26f8abh
+dd 0171bf9bch
+dd 0cfe392dah
+dd 0e07aa8aah
+dd 06d6f3352h
+dd 05ff9ee5bh
+dd 02501317ch
+dd 008f75888h
+dd 0736d6e3ch
+dd 0c6d32067h
+dd 065b351edh
+dd 0e20de5a9h
+dd 0c17f5a86h
+dd 058576b75h
+dd 0caf413beh
+dd 09e03ebf2h
+dd 041167d18h
+dd 07779e3c6h
+dd 0642d3abch
+dd 03c582365h
+dd 0f90cdb70h
+dd 06ea0dbebh
+dd 05a8e2e63h
+dd 04b14447bh
+dd 0e2f78b33h
+dd 0e4d83df4h
+dd 015d8912dh
+dd 0dc02ff9ah
+dd 020be0e70h
+dd 05feab6e9h
+dd 038dc6c77h
+dd 088473243h
+dd 090824553h
+dd 00d91222eh
+dd 03bdf0fedh
+dd 0cac39f27h
+dd 05cf6015ah
+dd 09815adc4h
+dd 09fa01f7ah
+dd 0bf972fd1h
+dd 0ad9bd934h
+dd 09cf6ecfch
+dd 0af67552bh
+dd 0b33ca957h
+dd 00530f9fch
+dd 08937403ah
+dd 083d3aaech
+dd 090e13fc6h
+dd 063e58d5bh
+dd 06d879bbdh
+dd 05b870ba2h
+dd 0f986db79h
+dd 0d6ca1719h
+dd 0e9d525e9h
+dd 0d23e238ah
+dd 069638edah
+dd 013800243h
+dd 0392db791h
+dd 099eb756bh
+dd 0bb03bbc7h
+dd 05f5e13abh
+dd 0deba3cb7h
+dd 0fa0c7bfbh
+dd 0cc94ef62h
+dd 0eea5dadfh
+dd 0eff3c075h
+dd 08a1020f0h
+dd 05f53546ch
+dd 0673158c9h
+dd 082d5fd68h
+dd 02958c9c6h
+dd 0b4f2a67fh
+dd 04c497f9ch
+dd 0c7aa5ddeh
+dd 078810810h
+dd 052207fc2h
+dd 0f44b7184h
+dd 0a20bebd2h
+dd 0082efd23h
+dd 0b7ce2f7ch
+dd 03afd9b11h
+dd 0baaa9f02h
+dd 067cdc841h
+dd 07fda6124h
+dd 0efc8ac25h
+dd 0ec52e2ech
+dd 0004b7d99h
+dd 011f1193fh
+dd 034792368h
+dd 07d428f51h
+dd 0d9042a6ch
+dd 06d1ef627h
+dd 0c6f9eb68h
+dd 04f99caf3h
+dd 076c5e543h
+dd 03bfde1c4h
+dd 0513139e2h
+dd 0ecbb97bfh
+dd 0e961d1efh
+dd 06b813a5eh
+dd 0d39b8b1dh
+dd 0f557bcech
+dd 037122c04h
+dd 02c851ccbh
+dd 0724d6f54h
+dd 0e27cb301h
+dd 01708e320h
+dd 0d120bd3fh
+dd 0c31ca12ch
+dd 07067cf63h
+dd 0ac6450a6h
+dd 0abcbd232h
+dd 034b31f9ch
+dd 0ea97c037h
+dd 0fd10ea63h
+dd 02ffcb87dh
+dd 0dc25448ah
+dd 018a32c75h
+dd 01102579ah
+dd 03800f950h
+dd 0d1faab90h
+dd 0f76911e8h
+dd 0b7a904d8h
+dd 0a2efb718h
+dd 080bbaa6dh
+dd 06e5698f0h
+dd 0f62adfb5h
+dd 08def238fh
+dd 093ac7dedh
+dd 0ded0be4fh
+dd 00e879b92h
+dd 09bc6b560h
+dd 04dcc8955h
+dd 0af148958h
+dd 0f8c678fdh
+dd 0808101d4h
+dd 04423d243h
+dd 013e43e87h
+dd 02af1d00ah
+dd 0820a2015h
+dd 031ff9b74h
+dd 058cad46fh
+dd 09088a4eeh
+dd 0207550c1h
+dd 0560a757ah
+dd 09b5ec887h
+dd 08291c12bh
+dd 0d684709eh
+dd 0b09585eeh
+dd 078ef353ch
+dd 033db19aah
+dd 0207c4dbch
+dd 0efc1b2a7h
+dd 046d3cc51h
+dd 0954cb272h
+dd 050e2f9edh
+dd 0df82a588h
+dd 08074a242h
+dd 0a3bfe78fh
+dd 0258df0b5h
+dd 08c9efb2ch
+dd 0138d11cch
+dd 079c4d950h
+dd 0bde2abf4h
+dd 0bfed221bh
+dd 0455f528fh
+dd 0d6c539ach
+dd 0215c5db3h
+dd 0148e580eh
+dd 05ad51547h
+dd 0adcb0e1bh
+dd 08de5e916h
+dd 00210fbceh
+dd 03e40378ah
+dd 05603e970h
+dd 0f6487a9bh
+dd 000f7bc43h
+dd 06e0d4770h
+dd 0ead00d8eh
+dd 026f02076h
+dd 0879680b4h
+dd 0ef8b3d8ah
+dd 0a96102dch
+dd 0bc2d8d3eh
+dd 0b3a5486dh
+dd 0d9a60741h
+dd 0b069c32dh
+dd 0a3661d67h
+dd 0506e9e55h
+dd 0ba98804bh
+dd 0389e2028h
+dd 01461bdf2h
+dd 0544f6f0ah
+dd 06520a877h
+dd 0a2706440h
+dd 08de5ca93h
+dd 0d54e77cfh
+dd 072dd4c7fh
+dd 0319986fbh
+dd 0d82cb44ah
+dd 0d1de5182h
+dd 0cdfc852ch
+dd 006aea814h
+dd 0503b3392h
+dd 0f905f653h
+dd 04ff24733h
+dd 09f5090f1h
+dd 05e522bf7h
+dd 0aef3a013h
+dd 0107e4cc0h
+dd 0f2fb35a7h
+dd 08b56df94h
+dd 06e30f671h
+dd 02e59d6cah
+dd 07fc09016h
+dd 0efa7dd64h
+dd 022883cb0h
+dd 04081f541h
+dd 0663b95c1h
+dd 06aae4b2bh
+dd 0d4238c27h
+dd 025a4020ah
+dd 0482d9410h
+dd 0b57b5570h
+dd 043169894h
+dd 09e4c2163h
+dd 065a27eaah
+dd 03bf25b50h
+dd 082706ca6h
+dd 01e6728f4h
+dd 03dc3fdd1h
+dd 08bc21758h
+dd 09a64d42ah
+dd 0b11e2bb2h
+dd 03595f217h
+dd 04ed02304h
+dd 0cb304d8bh
+dd 0f18960c3h
+dd 0a4cf2d49h
+dd 0602e84e7h
+dd 0de05487dh
+dd 03ff4d402h
+dd 03d93b6d3h
+dd 050e463a7h
+dd 067f60143h
+dd 0378b3158h
+dd 014ddd978h
+dd 0f23b3484h
+dd 0a3932ef6h
+dd 017d6d976h
+dd 0717dc382h
+dd 0da7cfac3h
+dd 027a3ff3dh
+dd 048b171a1h
+dd 01a015446h
+dd 08956bd7ch
+dd 04f73beaah
+dd 0d06c22b8h
+dd 0686c849dh
+dd 0883e23b9h
+dd 0cc0b0bfch
+dd 0fecc3821h
+dd 08f3df5afh
+dd 0808b0b9bh
+dd 01229beb2h
+dd 0841087cch
+dd 0a180a347h
+dd 0ed823c59h
+dd 04f42c83ch
+dd 02dc1775eh
+dd 0a2263681h
+dd 01ee32180h
+dd 02c3cdeeeh
+dd 0eaa5feb8h
+dd 0c67f6a23h
+dd 05bdc3b78h
+dd 0aba0670dh
+dd 03fc18789h
+dd 0651e38b6h
+dd 08736313bh
+dd 0817aad52h
+dd 09de49a75h
+dd 020b68a46h
+dd 02e5c738bh
+dd 053709360h
+dd 06758cfb3h
+dd 0fe2585b4h
+dd 0fa07bcd8h
+dd 08be192f0h
+dd 0a3e78c6dh
+dd 07d32ecfeh
+dd 0433f2e75h
+dd 062ac06f1h
+dd 0b78934feh
+dd 08daf99a6h
+dd 05acb5d1ch
+dd 0511d933ah
+dd 0449940c1h
+dd 067363c84h
+dd 017eb23b9h
+dd 08fd3c367h
+dd 0bbd5edd1h
+dd 08ee6ff4bh
+dd 0b6ca7a8bh
+dd 0828305e0h
+dd 0312ede79h
+dd 00fcc481eh
+dd 01eadb8c4h
+dd 089cf005ah
+dd 0e4b8f6a4h
+dd 00a2ed429h
+dd 03e3f483dh
+dd 0bfe96d74h
+dd 09489e70ch
+dd 046f66dcbh
+dd 0f6b787e2h
+dd 059769085h
+dd 0fb273133h
+dd 0544aac6ah
+dd 069c6f75fh
+dd 0aca22ed4h
+dd 0b955ae92h
+dd 0e5682f95h
+dd 013a07332h
+dd 0beed6cech
+dd 0d31ade9eh
+dd 095c5d776h
+dd 0fe737c16h
+dd 0f472257ch
+dd 01933658fh
+dd 0a426c7a1h
+dd 0718abaf7h
+dd 07cb1c95bh
+dd 00491d8c0h
+dd 00759bac0h
+dd 0279c8c0eh
+dd 0685b20c8h
+dd 0bfaef874h
+dd 038d4ac02h
+dd 0fd3f7828h
+dd 00da73e14h
+dd 0d6ab829ch
+dd 0e156b19eh
+dd 075d05159h
+dd 0d906fb5ah
+dd 091ac4bd1h
+dd 04597e16ah
+dd 06ed48c72h
+dd 01df75c77h
+dd 07ecf2611h
+dd 0cb4d8d05h
+dd 08d645f7fh
+dd 008a9375fh
+dd 03e84fdd2h
+dd 0b84fd68dh
+dd 01a76aacdh
+dd 0c1385c10h
+dd 00f445f9bh
+dd 0c400ad2dh
+dd 0115bc2d3h
+dd 0b0bf07cch
+dd 0522843bch
+dd 00c4ed3c2h
+dd 0f978190bh
+dd 0ee19a195h
+dd 0fdbd4dfch
+dd 07a3b6daeh
+dd 000ff06ffh
+dd 000669730h
+dd 08fe6479eh
+dd 027cf0833h
+dd 080152d0ah
+dd 05ea71ee9h
+dd 07021f1cbh
+dd 04331dac7h
+dd 0ed6d0abeh
+dd 05a3dd074h
+dd 0eb9d86b0h
+dd 0c7de94bbh
+dd 03f052aech
+dd 03fd14fcbh
+dd 071209104h
+dd 0a228afb1h
+dd 00f4f09eeh
+dd 065498aa7h
+dd 0aad4decdh
+dd 0cb59496dh
+dd 00977ee93h
+dd 0afd30129h
+dd 0ad94d46ah
+dd 0f00352b9h
+dd 0d460a11fh
+dd 08fd8067ah
+dd 0769af835h
+dd 03018155eh
+dd 0ebb3fe27h
+dd 05f80a9a9h
+dd 087933bc4h
+dd 06ef76b5bh
+dd 03ad27233h
+dd 0f1272dbeh
+dd 082729badh
+dd 03b32675dh
+dd 08d32962eh
+dd 08afe903dh
+dd 022454d9eh
+dd 085a9eba2h
+dd 06432ede1h
+dd 008b7ea28h
+dd 026ba5125h
+dd 0dbba43c1h
+dd 0cddaeb3bh
+dd 0f12ba64dh
+dd 0aafc5f87h
+dd 0343e64cch
+dd 04dc1751bh
+dd 0834eb813h
+dd 0106fbb8ah
+dd 0fbd02db8h
+dd 072451ef3h
+dd 0585f8acah
+dd 09fa98db9h
+dd 04cfc33ech
+dd 0ca842395h
+dd 025c573d6h
+dd 02767f345h
+dd 0fb8e9b26h
+dd 0a4c45bfeh
+dd 048553290h
+dd 093fbaeb8h
+dd 0c681236ah
+dd 01ecc4edch
+dd 0b246c57fh
+dd 020ca4853h
+dd 0260fca8eh
+dd 001fa495ah
+dd 0fd22084bh
+dd 00f682e86h
+dd 08ef8bd5ah
+dd 0fbe823ebh
+dd 0b83e022ch
+dd 059db2c09h
+dd 0bf0f5ea1h
+dd 0e9e5f103h
+dd 0fd3b342ch
+dd 074aa7688h
+dd 08d42805bh
+dd 083ba4f4ah
+dd 082daa3eeh
+dd 00d614a41h
+dd 0db23b1ech
+dd 0b2b8810fh
+dd 070c9d1fdh
+dd 06f1de78dh
+dd 0b153a50ch
+dd 0ad98fc57h
+dd 0b34ed447h
+dd 0707c8217h
+dd 0b1f5912dh
+dd 0b73cf6ech
+dd 028b9fdb4h
+dd 0ed429cc4h
+dd 0bd89a5eeh
+dd 06b91cf62h
+dd 0a653a502h
+dd 02345cb50h
+dd 031389d95h
+dd 06e02faebh
+dd 0913d48d2h
+dd 0c2640314h
+dd 0d6cddda8h
+dd 0703634cah
+dd 04f159a58h
+dd 0ed69f36bh
+dd 02df3ef40h
+dd 02099b4d7h
+dd 096f8bff4h
+dd 092c1625ah
+dd 0bcb04c0ah
+dd 0d6339544h
+dd 0a30ce2ach
+dd 05b46e7fah
+dd 0daede0b6h
+dd 0a14f21dah
+dd 0beb608cch
+dd 0cb42c354h
+dd 0b18d9fc0h
+dd 0c065d5eah
+dd 087218be3h
+dd 068bed0d0h
+dd 098897416h
+dd 032a6d5ceh
+dd 0456b63a0h
+dd 03fb61ac7h
+dd 0041e16feh
+dd 0db6fb6e8h
+dd 039208e87h
+dd 0c226af17h
+dd 001cb5168h
+dd 0a5d48494h
+dd 081697e69h
+dd 0fce04699h
+dd 0debe0c97h
+dd 0f287d887h
+dd 044bd87d9h
+dd 060aedc10h
+dd 0609b2320h
+dd 05c79efe9h
+dd 03b0f6f53h
+dd 05de84d2dh
+dd 0c93500d5h
+dd 0a8105433h
+dd 04f0c35eeh
+dd 078d294cfh
+dd 0c6988c68h
+dd 0d502043ch
+dd 01ca8b8a8h
+dd 0e6672c95h
+dd 0952d43dfh
+dd 06dd54db7h
+dd 07c6d3177h
+dd 00194df56h
+dd 070d0aab8h
+dd 0b6cbd1f5h
+dd 0bd186f20h
+dd 05df5fd59h
+dd 06960e25dh
+dd 0b608ab31h
+dd 0814d9a71h
+dd 012821c8fh
+dd 091bd92c7h
+dd 0c962f2d6h
+dd 045d54babh
+dd 000c6f336h
+dd 05e137c91h
+dd 05b45a01ah
+dd 00081dec1h
+dd 0e9b35d85h
+dd 0241ad442h
+dd 0665a9540h
+dd 051c67584h
+dd 06a4cf4c7h
+dd 0f20d1f4eh
+dd 054cdc57ch
+dd 0ec7ba435h
+dd 05085ace6h
+dd 030af438bh
+dd 0b01ccd6fh
+dd 0efe17df3h
+dd 0e70dc700h
+dd 025319163h
+dd 0d58836b3h
+dd 0136f298ch
+dd 008035793h
+dd 0bfaf8a6dh
+dd 0e974a567h
+dd 0a6b197f2h
+dd 0840c6053h
+dd 0692eeafdh
+dd 09af55ce7h
+dd 0d03d0e1bh
+dd 0c2a87f7fh
+dd 04633467eh
+dd 09a06c797h
+dd 007e31c67h
+dd 070f34124h
+dd 0083aebbbh
+dd 08b44e4c2h
+dd 023fe5721h
+dd 099449570h
+dd 092e73830h
+dd 0b02f8a4ah
+dd 01d54f4a1h
+dd 05a60887ch
+dd 003dc4e6ah
+dd 03be89f68h
+dd 0795e8393h
+dd 0399cc919h
+dd 0a9dfa79eh
+dd 0c228bd36h
+dd 07b05ac64h
+dd 0357c98a2h
+dd 0ad173f9ch
+dd 0f8e9e50bh
+dd 04dc963efh
+dd 0b1f232eeh
+dd 0aea38137h
+dd 09f22be9eh
+dd 02a7a4677h
+dd 0fe79fd1dh
+dd 09a34ed24h
+dd 0c8c10830h
+dd 0f32075b7h
+dd 0151d83bfh
+dd 0ee4ddc11h
+dd 0fc475e7bh
+dd 0690ffafeh
+dd 0f80a822ah
+dd 0473d138eh
+dd 099cf21a0h
+dd 096d88678h
+dd 03ddfda8eh
+dd 01803a189h
+dd 073ce48b0h
+dd 0573484d9h
+dd 04b5900e0h
+dd 0a81e3cffh
+dd 0027c3ad9h
+dd 09bda7184h
+dd 0cccf4cf2h
+dd 0b776056fh
+dd 0f84e02ebh
+dd 07b7875afh
+dd 052ca8f50h
+dd 050523118h
+dd 010244874h
+dd 0c9859916h
+dd 0ef141c91h
+dd 0a65a5796h
+dd 0581379d4h
+dd 0b007cd1bh
+dd 054f61ff9h
+dd 0d0c8b9c3h
+dd 0aa8a1e10h
+dd 02b35b884h
+dd 05471f516h
+dd 0f1473a84h
+dd 03d9e2688h
+dd 00dbd25a6h
+dd 09c1fc999h
+dd 06cc279feh
+dd 0394884d1h
+dd 06dec59aah
+dd 0a59c1b1eh
+dd 0f74b9eb9h
+dd 00461c0c8h
+dd 0135a9829h
+dd 0a8dea02ah
+dd 05ee32da9h
+dd 01d314282h
+dd 059a0e061h
+dd 0ac2e2309h
+dd 0b4f2e8c7h
+dd 0a5cffb05h
+dd 0c9cad241h
+dd 0f926205dh
+dd 0c070b969h
+dd 00a707402h
+dd 0d6235f1fh
+dd 03bea8ab9h
+dd 056d279d8h
+dd 076022369h
+dd 09625c3beh
+dd 00ccd4d6dh
+dd 06bedef04h
+dd 09ba05ccfh
+dd 0777ad1ddh
+dd 072011a82h
+dd 0e6d756e6h
+dd 03968dd70h
+dd 094027175h
+dd 06f5f7659h
+dd 09b4d17a3h
+dd 0a1c22742h
+dd 0c4d6dd23h
+dd 0798c7d1dh
+dd 0b10be5b2h
+dd 0394c7498h
+dd 0f9523185h
+dd 0899b434dh
+dd 032ac52f8h
+dd 0d82fad89h
+dd 01d8c3c61h
+dd 07140ab47h
+dd 005c762ddh
+dd 0eca523e6h
+dd 007bff493h
+dd 0fea35350h
+dd 02ce44525h
+dd 084cae403h
+dd 0cff9dca5h
+dd 06edd79c2h
+dd 048223e6eh
+dd 08b33c651h
+dd 05df5791bh
+dd 095751d87h
+dd 098ba9119h
+dd 08af67b69h
+dd 062ef4b63h
+dd 024f85d41h
+dd 0ec237500h
+dd 0f3e45f59h
+dd 0168501d2h
+dd 0b3f6a8cfh
+dd 0da333d1eh
+dd 0c4581814h
+dd 095fa53a5h
+dd 09407a00bh
+dd 017db3e92h
+dd 08084a186h
+dd 0384da94ah
+dd 0d8149842h
+dd 03b850dddh
+dd 0f6085837h
+dd 0ba7a85cfh
+dd 0c95d6d6fh
+dd 0e9fe27dch
+dd 08b71497ch
+dd 0ee09ebb3h
+dd 0f7a98bf4h
+dd 0aadef8a7h
+dd 00fa8afa0h
+dd 027eaa084h
+dd 032818563h
+dd 06df052a5h
+dd 050bce0cch
+dd 070b7a670h
+dd 051721ce2h
+dd 00106b71fh
+dd 0f3b5932eh
+dd 0d17a251fh
+dd 0e3dd09abh
+dd 0a3806c17h
+dd 0725a84a1h
+dd 0e2a268cfh
+dd 013d6bde3h
+dd 07e6e1da4h
+dd 0060687deh
+dd 007df92c2h
+dd 02d569370h
+dd 0515e2e69h
+dd 037d29d17h
+dd 0ea96dc01h
+dd 0fcfd2e3ah
+dd 081f18860h
+dd 00f293d7ch
+dd 09ce238bdh
+dd 0d8ea0c34h
+dd 09aeaa8dch
+dd 099783aa4h
+dd 09c1b54f6h
+dd 018feabafh
+dd 04b7f55b5h
+dd 02acd5b99h
+dd 00eea5553h
+dd 066dfdcf3h
+dd 0506d2102h
+dd 0238f3aaah
+dd 07e63631ch
+dd 0540595b8h
+dd 026e79971h
+dd 0f2d1fe20h
+dd 0e3677d02h
+dd 06d235a7dh
+dd 0a61de0d1h
+dd 050e7b02dh
+dd 018d7a1fbh
+dd 0ea428ba5h
+dd 0e9809b83h
+dd 0aad155cch
+dd 0e575dab1h
+dd 016957850h
+dd 0cc138981h
+dd 0a2cbfa03h
+dd 029da2b6eh
+dd 020113c1eh
+dd 01247e68fh
+dd 0157a3112h
+dd 09fb36b6eh
+dd 0bb5bdd7eh
+dd 02df70b90h
+dd 0c822a8c6h
+dd 002d65333h
+dd 02a5f96d9h
+dd 0d80e29fch
+dd 0e310829ch
+dd 0aed584aah
+dd 007159fdfh
+dd 0fff910bdh
+dd 0f4d9a450h
+dd 007161122h
+dd 0ad3b04d4h
+dd 0e2427bfbh
+dd 0295328e0h
+dd 0a7e1764eh
+dd 050ed8841h
+dd 0992acd88h
+dd 08e762747h
+dd 06a5d62bah
+dd 0675dadf8h
+dd 0cd9515cch
+dd 0da4d9836h
+dd 0cb8f9f7ch
+dd 05ec39e4eh
+dd 0625bf937h
+dd 00a69708eh
+dd 0ecae438eh
+dd 00c4e43f3h
+dd 0eeccb3a4h
+dd 014d7c099h
+dd 0c08200eeh
+dd 02d009f9dh
+dd 04335ab3eh
+dd 098909e82h
+dd 002e8e4afh
+dd 028a93753h
+dd 03c2dfd9bh
+dd 00593b643h
+dd 07b16102ch
+dd 02eb9068bh
+dd 0c3499094h
+dd 0a33182c9h
+dd 043957cf7h
+dd 08af16199h
+dd 0a03fa636h
+dd 0f1329903h
+dd 078d97911h
+dd 0e06330b4h
+dd 09a1abc89h
+dd 08d34612ah
+dd 0da3a1134h
+dd 05c336618h
+dd 0ef49028bh
+dd 0a9a8c294h
+dd 09cae02d0h
+dd 0711f9e02h
+dd 004329a98h
+dd 0eaaab157h
+dd 09367d0f2h
+dd 00677f162h
+dd 0b8066e65h
+dd 0b3972802h
+dd 0bf81c309h
+dd 06607d9afh
+dd 08edf798ch
+dd 027675a66h
+dd 00ccdc233h
+dd 0aac4612eh
+dd 0353fd89dh
+dd 041b2b201h
+dd 0e4d0f570h
+dd 03ff6980eh
+dd 00cc70d80h
+dd 072c7b58eh
+dd 02fbbef7dh
+dd 0f0103876h
+dd 0ab59f97fh
+dd 042096407h
+dd 0a57fa07ch
+dd 066cebaa7h
+dd 08f078a20h
+dd 073dd7529h
+dd 0676e86a4h
+dd 0ac5b1f27h
+dd 09869a3dch
+dd 0fdd1e1e5h
+dd 0fc9f1f51h
+dd 0081cacafh
+dd 0f9687982h
+dd 083df2388h
+dd 03c242cbah
+dd 0330d2a3eh
+dd 00acde077h
+dd 0a3503d62h
+dd 05b118f27h
+dd 0e0279ab7h
+dd 03e94ab51h
+dd 06a2aa6ddh
+dd 0e4a02eb4h
+dd 05f7de42ah
+dd 01f28eb5ch
+dd 0e9fc2d02h
+dd 0f779f8e1h
+dd 0500fe76fh
+dd 0e7ab981dh
+dd 011e62808h
+dd 015bad08ah
+dd 0bed7bb61h
+dd 0f98dde5ch
+dd 075738bd7h
+dd 05093cfe1h
+dd 00be8aa9fh
+dd 0ddc06455h
+dd 0255e733dh
+dd 0055c9864h
+dd 05d58ac20h
+dd 03ddae957h
+dd 086f35c49h
+dd 00ec58918h
+dd 0b3ef13c3h
+dd 023e4f5b3h
+dd 0b0a987bbh
+dd 0096bd03ch
+dd 030b251dfh
+dd 0dd0128ebh
+dd 0cf435d6dh
+dd 00074ba1fh
+dd 06f1e7908h
+dd 073080ef9h
+dd 0b8f05da6h
+dd 0679b3664h
+dd 000922cc2h
+dd 0f0f940d8h
+dd 0ded449cch
+dd 07fdb8799h
+dd 07499ec8fh
+dd 052c826c8h
+dd 07cd87b65h
+dd 02cdeddcah
+dd 047c40debh
+dd 0a9ff454ah
+dd 0b0225d03h
+dd 0ffce6e23h
+dd 08c5fbaa3h
+dd 09a0aeecch
+dd 0ddd1d5bah
+dd 087b5c81ch
+dd 069d4115fh
+dd 03ec6f899h
+dd 006193164h
+dd 0369bc143h
+dd 0865e9defh
+dd 073547000h
+dd 0d00d1078h
+dd 0b357abedh
+dd 01006b0f3h
+dd 067346efch
+dd 02fff4b6ch
+dd 0447c2297h
+dd 07b25ca38h
+dd 063fd794eh
+dd 066348b0ch
+dd 0627eaea2h
+dd 05cba1fb0h
+dd 01d26eedeh
+dd 087634c2ah
+dd 08ae7dcb9h
+dd 0c305092fh
+dd 029796aa7h
+dd 0f0a13f5fh
+dd 060524ecah
+dd 02d77bacch
+dd 080ec2f86h
+dd 0a17a25b8h
+dd 0accf797ch
+dd 030725dc7h
+dd 06a537e38h
+dd 0e586f4afh
+dd 06390543ch
+dd 05cfca5eeh
+dd 05ca533c4h
+dd 0b419b6bfh
+dd 0c5b06ff3h
+dd 0e4b4aa4fh
+dd 0845dd7bch
+dd 08ceeb56eh
+dd 0a9294eaah
+dd 0d6b01d55h
+dd 059c6cb1ch
+dd 0528c5e9bh
+dd 0b4ba331eh
+dd 0600dd3cfh
+dd 01dc26663h
+dd 056700d3fh
+dd 0da47227fh
+dd 022f3a4abh
+dd 0fec40e7bh
+dd 073dd64ddh
+dd 0118753cdh
+dd 04bcddf67h
+dd 0f0b6d102h
+dd 0606e0befh
+dd 08d735810h
+dd 0d56a050ch
+dd 0bcbd0ab4h
+dd 0e24925fch
+dd 0b669b26fh
+dd 008ecf708h
+dd 0de760aeah
+dd 014ee977eh
+dd 05608ed4eh
+dd 0db49ba75h
+dd 079dd4581h
+dd 098101043h
+dd 0991391ach
+dd 0edb5aaf8h
+dd 01b399d1eh
+dd 0e1fba3b2h
+dd 09f9394a3h
+dd 00e30b812h
+dd 00f20f5a5h
+dd 0c7dc50c3h
+dd 0d280231bh
+dd 022b399a5h
+dd 0d0e019e2h
+dd 0082391e4h
+dd 0cb05d30ah
+dd 068d4222eh
+dd 0dcac9e59h
+dd 0ba7e3bcfh
+dd 00359fe65h
+dd 016cbf644h
+dd 0199bb20ah
+dd 0e68541a7h
+dd 0f96b7341h
+dd 0f931f2eah
+dd 07f0e2d76h
+dd 0e45c448bh
+dd 075373d17h
+dd 065a58d13h
+dd 052f6f7e4h
+dd 0e84a2ee6h
+dd 0d80ece91h
+dd 07848c91fh
+dd 084cd4ae4h
+dd 05c2b40e4h
+dd 0ffaa3764h
+dd 0d8d8b0e7h
+dd 0f5bc4f51h
+dd 0bff53b4bh
+dd 0d0b59606h
+dd 0ee62a589h
+dd 0778e4002h
+dd 08732cc94h
+dd 0d40e8647h
+dd 07edcae42h
+dd 0a2f3f0e9h
+dd 01298f14ch
+dd 01b348131h
+dd 0a20328d7h
+dd 0b3c8f542h
+dd 06a453557h
+dd 047c270efh
+dd 0e4b84359h
+dd 0e9b0627ch
+dd 0e6e207c5h
+dd 02fc8a285h
+dd 02dd9c695h
+dd 06effeffeh
+dd 004c04057h
+dd 017f15819h
+dd 015aaeb44h
+dd 08617069fh
+dd 020872a73h
+dd 074f98394h
+dd 0205b9d83h
+dd 08b72fbeeh
+dd 07c4b2daeh
+dd 043b2bc49h
+dd 07bb06dd8h
+dd 02f54b073h
+dd 0d74fa3c5h
+dd 0fd01945bh
+dd 086e6757fh
+dd 036ec39b2h
+dd 03d94e741h
+dd 0f717c52bh
+dd 033770527h
+dd 0d1cbc9f6h
+dd 066ef6529h
+dd 0e6449b96h
+dd 00f6eb677h
+dd 01639b968h
+dd 0c281d531h
+dd 018df2085h
+dd 0f16ace16h
+dd 065f8bb70h
+dd 08ea71e6dh
+dd 013d79e98h
+dd 01d0d7cf9h
+dd 06bef8a53h
+dd 0763cacf1h
+dd 0f68b5ff6h
+dd 08d3a4d4fh
+dd 0ee909d63h
+dd 08c9e0743h
+dd 00a0fd5c9h
+dd 049ec129bh
+dd 08a3dbeaeh
+dd 0c63cbcd1h
+dd 048e3928bh
+dd 09c1156d0h
+dd 0f325ec7ah
+dd 065cfd2b3h
+dd 04035c032h
+dd 0ff7c2853h
+dd 01b78fa0bh
+dd 0820261f8h
+dd 06ad9a218h
+dd 01a6f1a54h
+dd 0c0aa5260h
+dd 06ae4794fh
+dd 0938b867ch
+dd 04da94765h
+dd 0306c3258h
+dd 0026fe498h
+dd 0c2d3cd77h
+dd 051e54c20h
+dd 02820e3a5h
+dd 053319e67h
+dd 0160c88c7h
+dd 0f04327f3h
+dd 02b89c863h
+dd 0eaa6d851h
+dd 01764bc42h
+dd 01de78adbh
+dd 0861fc704h
+dd 00bd85b1ah
+dd 0563b0f81h
+dd 0a6809504h
+dd 0b4d284d3h
+dd 0c810cd92h
+dd 0e26c4eafh
+dd 0c45c95ach
+dd 0b7427bf5h
+dd 0b4f21710h
+dd 0fbfa3130h
+dd 024801a3dh
+dd 0cb42ca3ah
+dd 0814d5175h
+dd 006184b45h
+dd 0e5c30555h
+dd 042c6d226h
+dd 01b4f4557h
+dd 09b3c2d5eh
+dd 0f5ea3565h
+dd 083e30d37h
+dd 0e2bbdf6ah
+dd 00f5d3a51h
+dd 033c348fch
+dd 0cd0ba7a0h
+dd 0167e7735h
+dd 016c5ce5eh
+dd 07b9d87b7h
+dd 0d48f9208h
+dd 08f04c888h
+dd 096280d4ah
+dd 0f1e2da5bh
+dd 088b46187h
+dd 060bbe8fah
+dd 0bc8a8e3ch
+dd 03c9d9313h
+dd 0ca9394c2h
+dd 0c8715a58h
+dd 0165f2043h
+dd 038bea306h
+dd 0478fe84bh
+dd 08e8cbed2h
+dd 02a1e723dh
+dd 0741f0543h
+dd 0309a2a92h
+dd 085fc9163h
+dd 0fc5a96c4h
+dd 0e982f061h
+dd 0376e68c2h
+dd 0a1b6774fh
+dd 016fa47ach
+dd 05751b01eh
+dd 0a067f7e6h
+dd 085791724h
+dd 068b380dfh
+dd 09c954db5h
+dd 0259471a5h
+dd 0de706c65h
+dd 040fd5df3h
+dd 063502d70h
+dd 001c07a4eh
+dd 0b24fbbc4h
+dd 0e5b9f74ah
+dd 0485cebe0h
+dd 0c0198bf0h
+dd 071148b46h
+dd 03090af74h
+dd 0e971d151h
+dd 02699a581h
+dd 0e493b855h
+dd 01eebad17h
+dd 062490872h
+dd 0ec8b357fh
+dd 0b96343bdh
+dd 02667a575h
+dd 0753a033ah
+dd 074f8fbd0h
+dd 04f63bfa6h
+dd 07fbee4a5h
+dd 08c33d84ch
+dd 0b83868efh
+dd 01582451dh
+dd 0ba9876ffh
+dd 0ec9da14bh
+dd 0078cf587h
+dd 0a633792ch
+dd 09af9d41ch
+dd 09fba8b15h
+dd 05ddbceffh
+dd 0d7b56e25h
+dd 0dead6dcbh
+dd 0bc490398h
+dd 0f3dc6961h
+dd 061782694h
+dd 0e4a58b16h
+dd 0743406d2h
+dd 038976c15h
+dd 02d2cbdc4h
+dd 09c70ad31h
+dd 0e643cd58h
+dd 0339cba76h
+dd 00b490f07h
+dd 029397c35h
+dd 050ef3b10h
+dd 0feaceb82h
+dd 0a2dcff5ah
+dd 05d96d096h
+dd 05f1a9160h
+dd 02af5d465h
+dd 094305b79h
+dd 0dc9162f5h
+dd 0b54b616eh
+dd 06d2401f7h
+dd 0b4b15349h
+dd 0fae5e415h
+dd 0734995b6h
+dd 067a7ad43h
+dd 0279f0a4ch
+dd 0da787fa4h
+dd 0955c3752h
+dd 085087779h
+dd 0ed5a9c47h
+dd 0b8c22acah
+dd 05dcc74eeh
+dd 0d4002f75h
+dd 0d632552bh
+dd 0dd1e64d3h
+dd 0050eeb05h
+dd 0a9c91851h
+dd 0b5e0a047h
+dd 093d7125fh
+dd 047920192h
+dd 0987dd727h
+dd 0923c410eh
+dd 0a0aee476h
+dd 0f1e3a89fh
+dd 04de5573ch
+dd 0a20ba6f4h
+dd 0647fb35bh
+dd 01d4f218bh
+dd 0ec3b0f32h
+dd 00f1ffd1ch
+dd 0705bcfb0h
+dd 08e136af2h
+dd 03f14bb37h
+dd 0a63f3d99h
+dd 0c23841deh
+dd 0ba87a29fh
+dd 0ff177613h
+dd 0c0241659h
+dd 02af0101dh
+dd 0a250e3f7h
+dd 03329bc76h
+dd 0726eaf12h
+dd 020e37717h
+dd 0201b163eh
+dd 06ad69f6ch
+dd 062f4300bh
+dd 0cc17b79ch
+dd 0ba0229eeh
+dd 09e7b6d46h
+dd 0a4267ce9h
+dd 08ab80674h
+dd 009725af1h
+dd 0c115283dh
+dd 0e161b93eh
+dd 0711332e5h
+dd 0ce0ef605h
+dd 0f28e1639h
+dd 0fc9d1a20h
+dd 032b1fd90h
+dd 0011453e4h
+dd 0521ef0beh
+dd 085b3e4adh
+dd 011c9a06ch
+dd 060ff8675h
+dd 07c4557e4h
+dd 08836fafbh
+dd 0e9a126c8h
+dd 016043610h
+dd 0d4512b19h
+dd 073194718h
+dd 0aed50d3fh
+dd 0c1bf2beah
+dd 0589b09beh
+dd 0daefd88bh
+dd 0406ec5dfh
+dd 0e9f4509eh
+dd 00aabeaceh
+dd 0d2b5eed1h
+dd 0d23c0a84h
+dd 04994736bh
+dd 05fe9944ah
+dd 0e72037e5h
+dd 08609c768h
+dd 0eb3aec1ch
+dd 09aad2324h
+dd 046923be8h
+dd 015b8c47ah
+dd 01cec9637h
+dd 08474ec65h
+dd 0cbb0e579h
+dd 090475fd2h
+dd 0753d5755h
+dd 0aec1240fh
+dd 0629b5d6dh
+dd 08c78b2f3h
+dd 08750692ch
+dd 0b0ab8009h
+dd 0b1c28650h
+dd 0e947a226h
+dd 084100772h
+dd 0a2666ce7h
+dd 0ba0b9ccch
+dd 0b52377c6h
+dd 0d909a819h
+dd 07938c0ddh
+dd 02db56171h
+dd 05c28ee24h
+dd 02754345ah
+dd 030ef2606h
+dd 07ea734b7h
+dd 0f387f08fh
+dd 0052e2280h
+dd 00ac4b691h
+dd 06268e74fh
+dd 0dfe166efh
+dd 0069fdbeeh
+dd 07eea85b7h
+dd 0b2aa840eh
+dd 0d669a6d0h
+dd 0d077cc7ch
+dd 02ef94d26h
+dd 04ab1d1e9h
+dd 03471514bh
+dd 063444405h
+dd 0b27b8e40h
+dd 0c42bade7h
+dd 0c5b48c5dh
+dd 0ab08e561h
+dd 03a959897h
+dd 0248984a6h
+dd 03ce56bf2h
+dd 0f6d44089h
+dd 00510f156h
+dd 0ef608d6dh
+dd 0a974c303h
+dd 018bc0dceh
+dd 04f631e34h
+dd 0f8d2e764h
+dd 0b71e20ebh
+dd 04b18ee2dh
+dd 03fd8ec57h
+dd 0a944f6d8h
+dd 0e89344cah
+dd 004783466h
+dd 0e8062e54h
+dd 0ea07f655h
+dd 0a65f427fh
+dd 0b4072836h
+dd 0c3871c73h
+dd 01f6e5d4bh
+dd 00102e703h
+dd 080405fbch
+dd 07bfd9c89h
+dd 067d551a6h
+dd 0243e339ch
+dd 0c1ed0e8bh
+dd 0740cff53h
+dd 03396b67dh
+dd 0dabb3766h
+dd 07c3ce55ch
+dd 003d03be9h
+dd 074492391h
+dd 0f226a6e8h
+dd 0180455c6h
+dd 0aa57411bh
+dd 0e4f72fc4h
+dd 0ae13921bh
+dd 06541d870h
+dd 0cc09cbc7h
+dd 02102bf38h
+dd 0b7f68f23h
+dd 05bfd8836h
+dd 08f729456h
+dd 0fb4c8e4ah
+dd 0d2e1d73ch
+dd 01a1ca472h
+dd 04c8e092dh
+dd 01db20a5ah
+dd 06001a4c8h
+dd 062b052f2h
+dd 03a7672c1h
+dd 0e4a2deaeh
+dd 0f9bcdceeh
+dd 016220d4ch
+dd 0a5ebb502h
+dd 0da390141h
+dd 04cf14fdeh
+dd 056a43ca5h
+dd 02f79308ch
+dd 07b7af26ah
+dd 0ab1d4b73h
+dd 01400f6f4h
+dd 0c73cfc79h
+dd 04f8e57fch
+dd 0418f9420h
+dd 0c4e4fbb4h
+dd 09212b2dbh
+dd 041a31aach
+dd 01389fb7fh
+dd 06d2998a4h
+dd 06a8f1eaeh
+dd 0cb827d16h
+dd 0fd134509h
+dd 0c710088fh
+dd 08f341dd0h
+dd 063000d70h
+dd 0d2baaceah
+dd 00a5ed423h
+dd 044a2b3e3h
+dd 00b10f7f2h
+dd 09bfb80f6h
+dd 0d1fd9e52h
+dd 08054dc01h
+dd 0c6283326h
+dd 031be6f68h
+dd 057103abfh
+dd 0da63c734h
+dd 07e2045aeh
+dd 02bbb5acbh
+dd 0af0f1c01h
+dd 04e6f2bdeh
+dd 04b03953dh
+dd 07a6eecach
+dd 05e5992c7h
+dd 022d93cebh
+dd 0d5f09478h
+dd 02ae6a7d9h
+dd 0a92e3c1ah
+dd 0992df2a8h
+dd 036a6fa1fh
+dd 0fff1c647h
+dd 071cafe69h
+dd 0d6738dcfh
+dd 0fdd0851ch
+dd 0c184e9cch
+dd 09f7a3f99h
+dd 039c195c0h
+dd 08634011ch
+dd 03e755a67h
+dd 002090301h
+dd 0d74cabcch
+dd 005c6140ch
+dd 0b119bc5eh
+dd 0a133ad60h
+dd 000120ee8h
+dd 031db49dfh
+dd 07aee5a85h
+dd 0f27ea3bfh
+dd 04f845d13h
+dd 0e341e5ddh
+dd 080f12205h
+dd 0bc1273a2h
+dd 008680457h
+dd 0b6e16fb9h
+dd 06e80c277h
+dd 06fc00ab9h
+dd 04e8625a4h
+dd 02ff27f85h
+dd 0a6a5ec16h
+dd 0a68ca5bah
+dd 02e7730abh
+dd 0fc0705b2h
+dd 0cbf693a5h
+dd 009847e9eh
+dd 08dcd4each
+dd 01b56c0a9h
+dd 09224460ch
+dd 0a15aeeb3h
+dd 06cd5d383h
+dd 01204c25bh
+dd 094523603h
+dd 0de8e7509h
+dd 08a96e6e9h
+dd 076c5ff80h
+dd 0d6df2de6h
+dd 0354693d5h
+dd 0e1367fe0h
+dd 04edbc099h
+dd 0edb7cd2dh
+dd 0349a7468h
+dd 04887714fh
+dd 015130b63h
+dd 0bbad32e6h
+dd 08510114ch
+dd 0f1fabb13h
+dd 022d50bb7h
+dd 0d16820f2h
+dd 0db7ed34eh
+dd 042ff507ch
+dd 05614b6a6h
+dd 04deb8d82h
+dd 0aec89df1h
+dd 00e56d77eh
+dd 0ed1a7ab4h
+dd 035eb9bb7h
+dd 04f100d72h
+dd 074cb5effh
+dd 08c9f7d1eh
+dd 0fc729fa6h
+dd 0bc813e74h
+dd 0fcac1aa1h
+dd 017dc8fabh
+dd 06ea33e26h
+dd 0ecc00b84h
+dd 0fcae94b9h
+dd 0c42259cch
+dd 0011c4108h
+dd 05d897300h
+dd 05814667bh
+dd 0681af98bh
+dd 089201193h
+dd 0ed531e54h
+dd 0af6d7037h
+dd 0513973c8h
+dd 04ea74fe7h
+dd 072fb8c63h
+dd 0c6bd96e6h
+dd 0c7b7f487h
+dd 0e6cc3a41h
+dd 0ec2e6416h
+dd 0f9ecb083h
+dd 0150d77cfh
+dd 043d1aaa4h
+dd 09a9fcd2eh
+dd 0c0a2d75bh
+dd 0c3a9dc07h
+dd 05d7cabf6h
+dd 0c2554aaah
+dd 0a8d610d4h
+dd 085dc84dbh
+dd 0a63a8e6bh
+dd 0b58b268fh
+dd 0cd04961eh
+dd 0cdbbfab5h
+dd 0d719a5c8h
+dd 07fabfd07h
+dd 0f108eeceh
+dd 06e56b908h
+dd 0166764aah
+dd 09fcaa74bh
+dd 00d6e16e0h
+dd 061951eb3h
+dd 0cd1593bbh
+dd 052132042h
+dd 0f388ae5eh
+dd 0ee8e8e8bh
+dd 010063dd6h
+dd 0bd454ae6h
+dd 084a0e8c2h
+dd 0b31c422eh
+dd 0e94e75dah
+dd 08b2cfecdh
+dd 04c54b552h
+dd 06e61c0e5h
+dd 0c6167938h
+dd 0a37c4c20h
+dd 0647250dch
+dd 0186002cah
+dd 0917adcb4h
+dd 05374f2a9h
+dd 0c89569fbh
+dd 00d649b34h
+dd 070169ee5h
+dd 07489d153h
+dd 0e8e51ea6h
+dd 0d7888bdch
+dd 0f8f8d278h
+dd 0c1f8dd72h
+dd 05a704573h
+dd 019cb6e1eh
+dd 0314f0fffh
+dd 061e37a19h
+dd 05f3fe4c2h
+dd 01ebfa280h
+dd 0c4464d27h
+dd 0ffe13abbh
+dd 0f39897d5h
+dd 01560f15bh
+dd 0cc2a1d87h
+dd 0b1c54440h
+dd 0c05fa19eh
+dd 06557739ah
+dd 06ffd8316h
+dd 0d903b5feh
+dd 09819dec3h
+dd 05b5d4014h
+dd 06669b786h
+dd 0bd3d89b3h
+dd 0045436dbh
+dd 065d43666h
+dd 098875563h
+dd 0125f8d75h
+dd 0185d226eh
+dd 0c57c78adh
+dd 01b5c5a77h
+dd 020231168h
+dd 03deae123h
+dd 06139f68ch
+dd 09dcb9605h
+dd 0e589cae9h
+dd 0a388cb96h
+dd 002c8cab7h
+dd 0c2ed383bh
+dd 0aed155b4h
+dd 0d95e21fbh
+dd 08075fe9ch
+dd 05a151004h
+dd 0a35cb7c6h
+dd 046f89e35h
+dd 07ab46df9h
+dd 006cc0098h
+dd 0aceeb09ah
+dd 04d09861ch
+dd 092795319h
+dd 0134bc53ch
+dd 058a777e8h
+dd 04918c035h
+dd 0de706439h
+dd 0b69c228ch
+dd 045a1012bh
+dd 03896ae54h
+dd 007bbb033h
+dd 0fafb385dh
+dd 06bd4083ah
+dd 04a3b43abh
+dd 0fa93e96bh
+dd 0e6e05fe8h
+dd 02cb8d2d4h
+dd 0ca9853c3h
+dd 002062066h
+dd 0d35edf51h
+dd 0767cb6ddh
+dd 0362d4c6ah
+dd 004eb029ah
+dd 0ce71e88ch
+dd 0bc3d7566h
+dd 00ad04154h
+dd 02817333dh
+dd 0cc5fc580h
+dd 0976e28ach
+dd 042d0fa71h
+dd 0db0c9ce9h
+dd 001ef2031h
+dd 0e332befah
+dd 0eb995626h
+dd 0be313ea7h
+dd 0fae344ddh
+dd 0dc318566h
+dd 07810bad4h
+dd 0fbc8130fh
+dd 020ed36a1h
+dd 0833c0f01h
+dd 0a6eaf8b3h
+dd 03758d9c6h
+dd 046bd090eh
+dd 060b7ecf0h
+dd 0c005d98dh
+dd 0fde8cb02h
+dd 0898489fah
+dd 0b416ab14h
+dd 0749ae96ah
+dd 01a176a51h
+dd 0c8c460aah
+dd 0cbf075c0h
+dd 0cc0e53efh
+dd 033fdfff6h
+dd 099afd2e1h
+dd 0ecb91369h
+dd 0c16666c9h
+dd 09d3c7420h
+dd 024d45cf6h
+dd 003b971a6h
+dd 0ba34ffcbh
+dd 01c0cdf60h
+dd 03301610dh
+dd 059a98142h
+dd 0ac306265h
+dd 02ad59316h
+dd 08671d3f4h
+dd 05caa3c20h
+dd 08dad4ca5h
+dd 016881ceah
+dd 08c4fd55bh
+dd 0c3333c2ah
+dd 0b6721f15h
+dd 080150663h
+dd 044f2c70bh
+dd 056762f88h
+dd 0fe763d24h
+dd 0c6f73b9bh
+dd 01ba23733h
+dd 0633e9e8bh
+dd 0a1896210h
+dd 07105ae74h
+dd 0a9a5438ah
+dd 004c8d87ah
+dd 0457d86b6h
+dd 0842f7345h
+dd 0f673170dh
+dd 0a71ac09fh
+dd 0332c197bh
+dd 04c4aabeeh
+dd 093e46ac9h
+dd 0bed8aab5h
+dd 0cfc8328bh
+dd 0c863bf8eh
+dd 0175e2a5fh
+dd 09c89a243h
+dd 0c21fec35h
+dd 07250677ch
+dd 01fd07366h
+dd 0585bd8c1h
+dd 041ec3df7h
+dd 0189cc8c1h
+dd 098ac8fffh
+dd 05d3c4c43h
+dd 0bce24e18h
+dd 066f36934h
+dd 0f7fb5825h
+dd 02a62e5a0h
+dd 0699fb3ebh
+dd 0540502e9h
+dd 01205d83ch
+dd 048cd7b76h
+dd 0ca8f382eh
+dd 026a2ea32h
+dd 0a4f6f4eah
+dd 0ceb57fbfh
+dd 0245be7ddh
+dd 01b5d3630h
+dd 00352fd48h
+dd 0985f80cah
+dd 0046a5282h
+dd 082dda851h
+dd 0d0d2fd61h
+dd 09168f53eh
+dd 0d0535d6dh
+dd 0eb4636d8h
+dd 086707a1dh
+dd 00023c57ah
+dd 09c35e469h
+dd 0f558807ch
+dd 03a707df4h
+dd 0a163b821h
+dd 062838b60h
+dd 08983a7b9h
+dd 00e28d2a9h
+dd 055206716h
+dd 017195005h
+dd 0e21be0f2h
+dd 0f7101a26h
+dd 0d05d45feh
+dd 0f30c2a90h
+dd 0743ad6beh
+dd 027fe4bebh
+dd 01c098babh
+dd 02ef2d84ch
+dd 013dadb48h
+dd 00b9bd2b3h
+dd 03f3dbf65h
+dd 08040bee9h
+dd 0240abffdh
+dd 0dceb8191h
+dd 0d648af5fh
+dd 0b3acf1aah
+dd 0ffaaa2e2h
+dd 0f756aee1h
+dd 0025747bdh
+dd 02a29bebfh
+dd 0793513a6h
+dd 02367fdadh
+dd 0b4859428h
+dd 0067c6692h
+dd 06a8616eeh
+dd 08710c7fbh
+dd 05080d70ch
+dd 0badf40fdh
+dd 0414483c9h
+dd 00cc6fa5ch
+dd 0ba444b84h
+dd 0acd8e4e1h
+dd 04f5e77d6h
+dd 07919f0d4h
+dd 06aaf5fabh
+dd 08239e063h
+dd 072e28977h
+dd 071d15db7h
+dd 06e66d039h
+dd 002a990bdh
+dd 0a3bbeea4h
+dd 04b274026h
+dd 02bd5edbch
+dd 0153b0387h
+dd 02d814820h
+dd 030223cc1h
+dd 0d945d3a7h
+dd 04dfbb484h
+dd 0cc6009bch
+dd 0ec22744ch
+dd 0a97eff4bh
+dd 057503116h
+dd 0ee509c1ah
+dd 00e834154h
+dd 09d7bcc61h
+dd 0ebd37c2fh
+dd 0815ce06ah
+dd 059d764c2h
+dd 092d56d4ch
+dd 0bedb473dh
+dd 0677379f8h
+dd 06a7ce64ah
+dd 073d342dbh
+dd 09f6e6a0fh
+dd 0826b6c3dh
+dd 0776b9016h
+dd 0bcdbf780h
+dd 03a68e06eh
+dd 0538dfb1ah
+dd 02e32f14dh
+dd 0a089d4c7h
+dd 0b8aa069dh
+dd 0c4ebc508h
+dd 06647cfd8h
+dd 0da22e20bh
+dd 0ee9655d4h
+dd 0533911a8h
+dd 0c0b7421ah
+dd 0732cdef4h
+dd 0051574e5h
+dd 0d73290ebh
+dd 0f4b90a48h
+dd 04f825e59h
+dd 06a4e7cc8h
+dd 0c0b336e6h
+dd 08a43b3ddh
+dd 020baf603h
+dd 0f59b3dd4h
+dd 06f08be3bh
+dd 0d6fd8563h
+dd 0ae629d0bh
+dd 058c49f1bh
+dd 0facfd1f6h
+dd 0f7c58e16h
+dd 07187c993h
+dd 0fc518c01h
+dd 080586c3ah
+dd 0c9254dbch
+dd 0db470cb9h
+dd 07163eecch
+dd 0aa789828h
+dd 023bf3eb6h
+dd 091f5df9fh
+dd 0c7713d86h
+dd 0b8ca0113h
+dd 0036fd6eah
+dd 00343a7f8h
+dd 0319b4391h
+dd 00850fccbh
+dd 0c7058ac7h
+dd 038db2d17h
+dd 0bb4e2516h
+dd 03ecd90f4h
+dd 0babd2497h
+dd 0aa5e5c91h
+dd 00118972dh
+dd 0af892367h
+dd 072310225h
+dd 0237efb69h
+dd 04267d6c5h
+dd 0728a57dbh
+dd 0efe66fbbh
+dd 00f92f39fh
+dd 0bbe6049eh
+dd 09c07d99bh
+dd 079340ae7h
+dd 0003c421fh
+dd 0dd01a9d3h
+dd 02adace7fh
+dd 0b69d99f1h
+dd 034cb73ebh
+dd 0c9f01c89h
+dd 09a3b3155h
+dd 0b2d34ae7h
+dd 09305fc98h
+dd 056c7c69eh
+dd 006cb847bh
+dd 0f49c6cb0h
+dd 0048b4b60h
+dd 063402e11h
+dd 0a8c6c6eeh
+dd 0b06b9babh
+dd 09949e233h
+dd 098cbc114h
+dd 07fdd0fach
+dd 0041d9a2bh
+dd 07d66b37fh
+dd 0715e37d4h
+dd 0e440b8e0h
+dd 0d389071ch
+dd 06e6b7ce6h
+dd 09f43b800h
+dd 0a81bbec0h
+dd 010ac6bfdh
+dd 0e03b7e3ah
+dd 02a0d6a3ch
+dd 0ab71eb38h
+dd 01e1d7143h
+dd 03d23cedbh
+dd 07be591ceh
+dd 0586b382fh
+dd 05778ca88h
+dd 00ef55bbeh
+dd 05d5b7a48h
+dd 0610347b6h
+dd 07194e091h
+dd 03d54ee18h
+dd 0177985e1h
+dd 0ae89d460h
+dd 018c6445dh
+dd 05464f4c6h
+dd 0337bc33ch
+dd 06ff98c9fh
+dd 0f1b865d3h
+dd 048641f72h
+dd 0e8a2e1dbh
+dd 0331a6581h
+dd 0615b10cfh
+dd 0944feff4h
+dd 0053869c4h
+dd 0582a1e80h
+dd 045d032c9h
+dd 0b8f55263h
+dd 0aab81c73h
+dd 046652a3bh
+dd 005d287adh
+dd 01316b4a6h
+dd 0a671c98ch
+dd 07879b45ch
+dd 0a49bb886h
+dd 0a0b482b4h
+dd 00c0826e3h
+dd 07c131b82h
+dd 03141152ah
+dd 0a8024b09h
+dd 08b86a156h
+dd 08181a3a8h
+dd 08e871588h
+dd 02ab19b74h
+dd 0162aab8bh
+dd 0d1bfe0fbh
+dd 06622efabh
+dd 069919dd5h
+dd 018605b97h
+dd 09da345dbh
+dd 01d77316eh
+dd 0a0d673a3h
+dd 0c0694d21h
+dd 086c8cfa4h
+dd 014b3a830h
+dd 00c678b55h
+dd 03365b97ch
+dd 0bd1d6c9ch
+dd 0a820ae3bh
+dd 08526796ah
+dd 016685d1ah
+dd 094f685d0h
+dd 0017136cfh
+dd 0d7c28c90h
+dd 070ed7e9ah
+dd 08c97191eh
+dd 05ec277bfh
+dd 027a69850h
+dd 05d092921h
+dd 0c7815ccbh
+dd 0618a88a2h
+dd 00f4bdfc9h
+dd 01c51200fh
+dd 053bb166ah
+dd 080eb26dah
+dd 0c290019ah
+dd 053f72f37h
+dd 0cb8eaee1h
+dd 0311e4ee5h
+dd 05a937b96h
+dd 0d6268cd5h
+dd 015554a7dh
+dd 0fd1ef4a8h
+dd 0538b7a73h
+dd 0653ba3b2h
+dd 067ef047dh
+dd 09c1b49fdh
+dd 09cc2e6ffh
+dd 055434254h
+dd 0e302c550h
+dd 0c40a40d8h
+dd 0fedf176fh
+dd 0179fe38bh
+dd 0b655306bh
+dd 0f345c420h
+dd 0e47eef6ch
+dd 02bfb1c82h
+dd 076d419abh
+dd 0d6760454h
+dd 09c09d1a6h
+dd 0dacf3a22h
+dd 05693a4bdh
+dd 0a5633d40h
+dd 00e60832bh
+dd 0dbe0e545h
+dd 0f93c3210h
+dd 0785f6780h
+dd 0729dcc6ah
+dd 0bcb6d7f0h
+dd 0afbb2f12h
+dd 0d053efafh
+dd 080b606a6h
+dd 00b1ee913h
+dd 0dd64a495h
+dd 05790ae54h
+dd 0071c2ef1h
+dd 0006b80deh
+dd 0ca0489ceh
+dd 0a327ef44h
+dd 00a5ef814h
+dd 0a7d01bbch
+dd 0a46398a1h
+dd 0ab4eb17bh
+dd 0f37ffec3h
+dd 0e05f911ch
+dd 07fa045fah
+dd 0b81b47abh
+dd 0ae185933h
+dd 080e291bch
+dd 0c6b87ad2h
+dd 0ec0f9af7h
+dd 001b5540dh
+dd 0eeaa70f8h
+dd 004b5c144h
+dd 08c33d260h
+dd 0bb1af0e2h
+dd 0b9a34cadh
+dd 01870f9e8h
+dd 03b0e81b3h
+dd 0b35d883fh
+dd 0a4f69068h
+dd 0f9fa6885h
+dd 090963d50h
+dd 022c49d70h
+dd 04f2cf011h
+dd 0ce5b3057h
+dd 05172e0c1h
+dd 03d0c8b3bh
+dd 042d7a83dh
+dd 0a66a95e5h
+dd 016f194f3h
+dd 057a2da07h
+dd 0251b5bfdh
+dd 0773d4b35h
+dd 0367f58c2h
+dd 03c08a86fh
+dd 00a8a8b6bh
+dd 082bcce71h
+dd 066559e79h
+dd 025656ed6h
+dd 09ee2803dh
+dd 083d81d0ah
+dd 07e488678h
+dd 04e60805dh
+dd 0543c53f7h
+dd 0c228c453h
+dd 0b90c5cdbh
+dd 03abb1f21h
+dd 09045fdc7h
+dd 0d9c29e40h
+dd 05bff50ceh
+dd 04bcc2b14h
+dd 0758d5f47h
+dd 03a4f4bdch
+dd 00006231fh
+dd 08a863d86h
+dd 049fd8c5ah
+dd 043fa61c7h
+dd 0888feea2h
+dd 056be8d5eh
+dd 0410e149ah
+dd 0cb0dc0f5h
+dd 05f6e7804h
+dd 07faa2b6ch
+dd 0d6b14c9eh
+dd 05dee7440h
+dd 06e104fbbh
+dd 05942fa9ah
+dd 0c245a3efh
+dd 0a0d36c80h
+dd 0d2fb1af5h
+dd 0a7023565h
+dd 0c2faf6cdh
+dd 0856b75dfh
+dd 092f19eb8h
+dd 052260bbah
+dd 053381beah
+dd 0153fdf4eh
+dd 09c55afcch
+dd 0ba1d7211h
+dd 0383fab36h
+dd 08d218d19h
+dd 0397bdd5bh
+dd 0cfd3e83bh
+dd 082683eeah
+dd 09dfcd86eh
+dd 009edfebfh
+dd 05eb713e5h
+dd 0c9f2b9dbh
+dd 070d893f6h
+dd 0148bed7bh
+dd 050ae8ce9h
+dd 0d1361d59h
+dd 03c3355bah
+dd 0ad8c0420h
+dd 0eae60471h
+dd 05a33a108h
+dd 0cf16c46dh
+dd 0fb8d1d43h
+dd 00eb84d3fh
+dd 05df6e33ah
+dd 0f53bc9deh
+dd 0123777e1h
+dd 09e6e9d8bh
+dd 0f499357ah
+dd 0502429a6h
+dd 07782b6b7h
+dd 0ce207ce5h
+dd 070ebf43ch
+dd 0d33d0df0h
+dd 0bd00a39dh
+dd 01854b2a4h
+dd 04b317362h
+dd 06d2cbec5h
+dd 077eb97f2h
+dd 0b9341385h
+dd 00873ba9eh
+dd 05151017ah
+dd 0e46a41a3h
+dd 0b7c0547ch
+dd 0c7832035h
+dd 0daff565ch
+dd 0e3d4f41ch
+dd 0b0f4fe6fh
+dd 0d172c9a8h
+dd 01c76b16dh
+dd 000342f4bh
+dd 0aa6ab1fah
+dd 025017f43h
+dd 0aca23b0ch
+dd 06f0f6889h
+dd 02a43487eh
+dd 00a5f460eh
+dd 078c73c94h
+dd 0f7565107h
+dd 053912446h
+dd 0fb17c0cbh
+dd 02ef9e60dh
+dd 0f4bc80f3h
+dd 088a73297h
+dd 094dc016eh
+dd 05a272953h
+dd 0b81a97ech
+dd 0781197eah
+dd 0eecbe3c1h
+dd 0afc098e5h
+dd 0a963cac5h
+dd 08c8d0106h
+dd 0d04654c5h
+dd 0294ce018h
+dd 04ba99dd1h
+dd 0d46d5374h
+dd 0ecbb3798h
+dd 00ba1bb64h
+dd 0e61038a6h
+dd 07c498921h
+dd 0a0e5b9fah
+dd 0ed6702deh
+dd 0584ab9bfh
+dd 0fb527e37h
+dd 06f01f5c8h
+dd 080014bd3h
+dd 02c945e2ah
+dd 008fea62ch
+dd 05efd52fdh
+dd 08b832fcch
+dd 0c773eb7ah
+dd 092288343h
+dd 04b68442ah
+dd 0227b8a0dh
+dd 07a34849bh
+dd 086ddfeach
+dd 018ed6a96h
+dd 08e4aeb66h
+dd 0b1080189h
+dd 0acca13dah
+dd 0c2f2c036h
+dd 0855dd8e2h
+dd 04e9f1fc5h
+dd 0b0e19495h
+dd 09f920707h
+dd 0309dfa63h
+dd 08010462bh
+dd 08d6f5618h
+dd 0a72ee140h
+dd 06379e383h
+dd 0b6ead0a8h
+dd 00d7042b2h
+dd 0b1ec28d9h
+dd 0736d5d6fh
+dd 0485d3f60h
+dd 034cf0249h
+dd 04f7f479ah
+dd 02022281bh
+dd 011ae4536h
+dd 023adac09h
+dd 079e472f7h
+dd 0b6b6c5d3h
+dd 003adab09h
+dd 041febfdch
+dd 02ae271c9h
+dd 0860c0a36h
+dd 056e92e10h
+dd 01c226291h
+dd 00bf3596ah
+dd 07a278596h
+dd 0ba83c26dh
+dd 0e37cfdcfh
+dd 0667e480eh
+dd 07b80ddd4h
+dd 0f2d06b68h
+dd 092334ac4h
+dd 086fa2264h
+dd 02bd61667h
+dd 00434c72ah
+dd 07fe78fc8h
+dd 0016e9bc4h
+dd 0471f018fh
+dd 05dacb15bh
+dd 0e8a40b1dh
+dd 0c7d0b07eh
+dd 04e1bb09dh
+dd 0cbacbd6ch
+dd 00d1c6fd4h
+dd 0e924cc96h
+dd 054f2badbh
+dd 0d6455c9ch
+dd 0fdad5a32h
+dd 0fb3896cah
+dd 0f336eb1ah
+dd 05b29e88bh
+dd 0ab0b5d70h
+dd 0e3b5ea9ch
+dd 08e28b55eh
+dd 0fc61ecd7h
+dd 0fa3abb69h
+dd 04b1660adh
+dd 01cc235c4h
+dd 088ab79ebh
+dd 0f4585a14h
+dd 0ea301eaeh
+dd 083719829h
+dd 032042a0ah
+dd 037aa0d16h
+dd 0e995e214h
+dd 0c9158397h
+dd 08ff823f3h
+dd 036514de2h
+dd 04dd26eaeh
+dd 0f82c814ah
+dd 03a5de4d1h
+dd 047448964h
+dd 053047df4h
+dd 0025ffbb6h
+dd 0a25b6834h
+dd 02202708ch
+dd 03b7dec4dh
+dd 0dca035f0h
+dd 00221809ah
+dd 05f7de2c3h
+dd 00f582819h
+dd 05c8fa6eah
+dd 08cd8aa46h
+dd 0193791fah
+dd 032b2b04fh
+dd 0fb8a633ah
+dd 08a06d24ch
+dd 0984c6ef2h
+dd 05e3cdae9h
+dd 0bd41adc7h
+dd 080c21c3fh
+dd 08698ca1fh
+dd 080ff77a7h
+dd 07362a71ch
+dd 03f12636ah
+dd 0b47fd846h
+dd 0972528d9h
+dd 0bf069eabh
+dd 01448243eh
+dd 0803365d9h
+dd 0767dab48h
+dd 0818ed965h
+dd 0e37e0406h
+dd 031ceb729h
+dd 06cd994aeh
+dd 08f9e6f85h
+dd 06b1b8f15h
+dd 00b57e19dh
+dd 07de64ccah
+dd 07f90096fh
+dd 052e191c8h
+dd 07cc96768h
+dd 0d4b2a502h
+dd 015c7e7f2h
+dd 046daf684h
+dd 01de503d6h
+dd 03cb337d8h
+dd 06a8dde70h
+dd 0dfd98d59h
+dd 0a6a729edh
+dd 0620fda42h
+dd 076c23f89h
+dd 0063ab456h
+dd 0054f9d94h
+dd 0342dde7dh
+dd 0324c3f8bh
+dd 0afc0c9cch
+dd 0d1bdfd01h
+dd 0df3c3a2ah
+dd 0543476b6h
+dd 02d867773h
+dd 08fd59db9h
+dd 020cfd69ah
+dd 0b8a8802fh
+dd 06d351bc1h
+dd 0cbe4da4ah
+dd 093d608e8h
+dd 0d205863eh
+dd 0b2bf5c00h
+dd 01d6e96feh
+dd 05a363b71h
+dd 02ffc124dh
+dd 06b286416h
+dd 00a1fd4b5h
+dd 05fd12044h
+dd 0bc06e163h
+dd 06941fec2h
+dd 0c440f4e5h
+dd 073aec07fh
+dd 0a13bba35h
+dd 05781227ah
+dd 007c150fch
+dd 072f4d12bh
+dd 0d63dd0a9h
+dd 012a6d162h
+dd 0e6553cf9h
+dd 032a67766h
+dd 07b4d87cdh
+dd 0f1a16ba7h
+dd 0a8a8822dh
+dd 0ef305ea6h
+dd 0cfac8ee4h
+dd 0df4a7a4dh
+dd 0696f278ch
+dd 01092220eh
+dd 000b19600h
+dd 073ae39a0h
+dd 06b5d24eah
+dd 0260da50eh
+dd 0cf80b499h
+dd 01ea89e15h
+dd 0a4f545fah
+dd 0d811d4afh
+dd 0d50c19e1h
+dd 0ff5ce8c9h
+dd 0a17e031eh
+dd 0e641bef4h
+dd 06d1cfd48h
+dd 0022fd524h
+dd 01fb98037h
+dd 007dd318eh
+dd 0152b391dh
+dd 05d9d7eb0h
+dd 0bc195bf0h
+dd 03dd0524fh
+dd 0a0f66c84h
+dd 0e6d2514dh
+dd 0b94a14e4h
+dd 08a55f9a8h
+dd 07c00eadbh
+dd 0bd270f77h
+dd 02fe095efh
+dd 0dba91bc0h
+dd 0070dd88ah
+dd 069fc9b03h
+dd 0432e5d8fh
+dd 002ff4086h
+dd 04d2f8731h
+dd 00e3859b9h
+dd 068827a02h
+dd 0d6d79df3h
+dd 09f19847ch
+dd 01478978fh
+dd 081b43068h
+dd 0335e4946h
+dd 05289c6d5h
+dd 036362c6fh
+dd 09de2e08dh
+dd 0390b3fc0h
+dd 00d9154bch
+dd 050af46fah
+dd 0c84215e8h
+dd 0f81f2d46h
+dd 0cca929b2h
+dd 0004b236ah
+dd 07d856fc9h
+dd 0552f930ah
+dd 0a7cb7fbdh
+dd 065d937f9h
+dd 053fd0cc9h
+dd 0f650f12fh
+dd 0a8405a0fh
+dd 0f9ff5b80h
+dd 0dd6e0592h
+dd 0266632f6h
+dd 0b27183e1h
+dd 058e59c9bh
+dd 0177e2d25h
+dd 0fafdb7fbh
+dd 0e975f23ch
+dd 0e60bdc8dh
+dd 09f31837eh
+dd 0efe11ec6h
+dd 0d65117eeh
+dd 03c3267e2h
+dd 0159022d7h
+dd 09cda9c4ah
+dd 0a9301784h
+dd 044dc24d9h
+dd 0ee2c9f61h
+dd 0022017b5h
+dd 0df440121h
+dd 098a9fdf6h
+dd 0b05cf764h
+dd 07501d53ch
+dd 064357ddch
+dd 0bd940eadh
+dd 0d576c818h
+dd 04e123275h
+dd 01f84993bh
+dd 019622c1ah
+dd 0e8ffd5e7h
+dd 0edb0769fh
+dd 018794363h
+dd 0cef1142bh
+dd 0c31c8a89h
+dd 04c3fd4fah
+dd 0b2dc5adeh
+dd 066019d8bh
+dd 00c37f2b4h
+dd 04b2e211dh
+dd 08f05551fh
+dd 0ad79bc26h
+dd 014101d68h
+dd 0bdd0dde0h
+dd 07d6b254ch
+dd 09ee86872h
+dd 02d5622a4h
+dd 02653a5d7h
+dd 043e95569h
+dd 09fb0cc86h
+dd 00e3a1303h
+dd 09d39e22fh
+dd 06d1d60d9h
+dd 08b8b12ddh
+dd 0f6512218h
+dd 084ce41a0h
+dd 09fc45b5bh
+dd 06f4dd6bah
+dd 0cf4f59a7h
+dd 0ffe9dcb6h
+dd 0bce4c769h
+dd 0706dd183h
+dd 03e59c241h
+dd 0c7552d28h
+dd 0f9ddcdcdh
+dd 0305185d9h
+dd 027a0fc83h
+dd 0199a3732h
+dd 0fe8dfaf8h
+dd 059d02007h
+dd 0b7a7a2cbh
+dd 086e6b4eah
+dd 0ac018622h
+dd 0f0450b66h
+dd 0aa3bdeech
+dd 083d94740h
+dd 08f2eed4ch
+dd 00c1daa77h
+dd 0a5d66c7eh
+dd 05860e080h
+dd 0af7bd295h
+dd 0d6331407h
+dd 031d4d3c7h
+dd 04a635678h
+dd 0d894b8a1h
+dd 01ddcae2fh
+dd 046a8051eh
+dd 0a77fbca9h
+dd 0025ea10ch
+dd 05163c9bch
+dd 079c983b4h
+dd 0be819623h
+dd 0a04b3524h
+dd 0313a745ch
+dd 05879d77eh
+dd 018d7a420h
+dd 06f98377bh
+dd 033e2a943h
+dd 0b01e0902h
+dd 01cf2dbebh
+dd 09b06d2ffh
+dd 08416196fh
+dd 066261e11h
+dd 0dd42db8ah
+dd 066b86df2h
+dd 02ad483ffh
+dd 00e8ad2c7h
+dd 009f91bech
+dd 0d94b4310h
+dd 0c0e80464h
+dd 03fd430aeh
+dd 09ea515f4h
+dd 066caae3dh
+dd 05b61bee1h
+dd 03f2ddb04h
+dd 0b3333ba5h
+dd 09c47d65fh
+dd 067fe5fabh
+dd 0efaada2ch
+dd 02e7f0861h
+dd 00ca005d8h
+dd 05656d811h
+dd 05437aec1h
+dd 07d8ce31fh
+dd 0cd2c8e10h
+dd 073176e3ch
+dd 00db72e51h
+dd 05f2b1486h
+dd 094c26e82h
+dd 025306a95h
+dd 083e0048bh
+dd 0bfd39cd6h
+dd 01690f304h
+dd 072b162f3h
+dd 0d0660496h
+dd 039310a23h
+dd 0ba8f3719h
+dd 018355f33h
+dd 0a3296a20h
+dd 079554682h
+dd 04b68e4c1h
+dd 04667c09ah
+dd 0e138011fh
+dd 0ae9a5a87h
+dd 0fa8ded35h
+dd 0c3590c03h
+dd 01880edb3h
+dd 018fa912eh
+dd 0489c7393h
+dd 0d3d02e17h
+dd 007297213h
+dd 026044e8eh
+dd 07923f747h
+dd 0b74ec58bh
+dd 0b7e95786h
+dd 09ccf7204h
+dd 0daf32414h
+dd 07f0083dfh
+dd 00c81aa87h
+dd 0e1e6140eh
+dd 0dfcf0d9dh
+dd 0b096769eh
+dd 0aac619e0h
+dd 09dfc66a8h
+dd 0f21f9ac1h
+dd 0fadf87b1h
+dd 0e1da0a22h
+dd 0d0b6de16h
+dd 05e03bb57h
+dd 03f708480h
+dd 0498bcaabh
+dd 0a8f67a57h
+dd 09ff00f52h
+dd 01f71873dh
+dd 0a254221dh
+dd 0bed561e1h
+dd 038702823h
+dd 0482e7211h
+dd 053617cdch
+dd 0d93a957eh
+dd 090ca9717h
+dd 0cdde6bd5h
+dd 0323497f7h
+dd 08f960458h
+dd 025ad88b6h
+dd 013e1a5fdh
+dd 0842c4d58h
+dd 0742dc0c5h
+dd 0b935627bh
+dd 0cf12176ch
+dd 09577efb8h
+dd 0d014d426h
+dd 08853704bh
+dd 0335272a5h
+dd 06aeb294eh
+dd 0b6322f4eh
+dd 096ed9649h
+dd 0888fb945h
+dd 08c82ed67h
+dd 07bafe734h
+dd 03f104056h
+dd 002f6ac6ah
+dd 0f7854d35h
+dd 03e98e8f6h
+dd 0dde26814h
+dd 0cb2daeach
+dd 09af2bcd3h
+dd 09f7976a1h
+dd 066bda157h
+dd 05d497179h
+dd 04cacdf44h
+dd 0f643c632h
+dd 0197bcc57h
+dd 06e7ee1feh
+dd 074f90515h
+dd 02014efbah
+dd 0d20c933bh
+dd 0ad2cfd65h
+dd 0a51ace92h
+dd 007084f73h
+dd 015a8a565h
+dd 04c4d12a7h
+dd 04b68d91ah
+dd 0c033eb32h
+dd 0ca491f76h
+dd 0889ab410h
+dd 08e19aff0h
+dd 0323b17d7h
+dd 0ce000b64h
+dd 00bd6ffd3h
+dd 020cb923ah
+dd 06bcfec71h
+dd 0e4491c7ch
+dd 0fc1c40c7h
+dd 04124f5f3h
+dd 0c9766773h
+dd 0679660e8h
+dd 0c906bb8ch
+dd 08ef621c8h
+dd 0ac677c82h
+dd 004a7980ah
+dd 0bc621ed7h
+dd 0e0e19f34h
+dd 089ba56ach
+dd 048af6bd3h
+dd 00668af54h
+dd 043f1b2aeh
+dd 09bd74702h
+dd 057b327fdh
+dd 03d1b13ech
+dd 041ccfed9h
+dd 09339cbfdh
+dd 059c161ech
+dd 0b66b1a91h
+dd 0d1859e84h
+dd 0d194475eh
+dd 0b51c773ch
+dd 00356c4dbh
+dd 09060ef76h
+dd 05e50fa4bh
+dd 0d93f2b59h
+dd 0bf9b5005h
+dd 052b26627h
+dd 0fd6ab6d9h
+dd 06ab20fe8h
+dd 0b30da91eh
+dd 0e9e2b161h
+dd 03a959958h
+dd 0eabdc308h
+dd 0513939e6h
+dd 07071dbd2h
+dd 0f23170aah
+dd 04ee4fc5ah
+dd 006e413edh
+dd 08f38f72ah
+dd 08c4e25c6h
+dd 05a6e843ah
+dd 02984de49h
+dd 061237956h
+dd 0eb85faa9h
+dd 05da0974dh
+dd 0724c80bdh
+dd 0be103f9eh
+dd 039cbc694h
+dd 09c72a238h
+dd 0f63318f7h
+dd 0596db3b9h
+dd 0cc747a8dh
+dd 0595b9d4dh
+dd 05a739aaah
+dd 0efc1ba4eh
+dd 0eec973f0h
+dd 00fead238h
+dd 0617f2487h
+dd 0fd0d112eh
+dd 06c8447cah
+dd 0d403fdbch
+dd 0968e05eah
+dd 02896cb40h
+dd 0c51ba3aeh
+dd 0d9059df3h
+dd 02dec6b24h
+dd 0a1ef14b5h
+dd 09d296158h
+dd 0d0f98e14h
+dd 0bc335e1fh
+dd 0ef794e44h
+dd 03021d652h
+dd 02b2891f3h
+dd 060d8fc93h
+dd 0e665306ch
+dd 0b19d738ah
+dd 07fcdf651h
+dd 0c45aa02dh
+dd 0e0b6f8e8h
+dd 02ab6ad48h
+dd 07a680c8ch
+dd 0e77cc32dh
+dd 08b193b99h
+dd 0468c0031h
+dd 06794503eh
+dd 014664a51h
+dd 011157ccah
+dd 038ca3b5dh
+dd 0ee88813ah
+dd 067dac7edh
+dd 0e73f243dh
+dd 038929f20h
+dd 067bcb403h
+dd 0d15efbbeh
+dd 0ef604e64h
+dd 0de218070h
+dd 048f9a8e7h
+dd 0799ac68eh
+dd 07f5de6ddh
+dd 0f8f30423h
+dd 0fb436661h
+dd 000b84373h
+dd 05a162f10h
+dd 016568f84h
+dd 0ef425da8h
+dd 0f8fc25c7h
+dd 0507a2063h
+dd 07c820fa1h
+dd 0c4113dd2h
+dd 02fe63298h
+dd 0a89de9e7h
+dd 055132e49h
+dd 00d2a8863h
+dd 0e6e2b2beh
+dd 02dc2fd02h
+dd 0026e691ah
+dd 0dbf62198h
+dd 0b44cf3adh
+dd 05142272bh
+dd 0884a0ec4h
+dd 05ad0227bh
+dd 0e24b5742h
+dd 06de64d00h
+dd 01ca4d4cch
+dd 0df6398d1h
+dd 0ae65192fh
+dd 021728d86h
+dd 04685cf07h
+dd 0342dba3fh
+dd 0cd659eb3h
+dd 00ef25b42h
+dd 050e11ba6h
+dd 030351d19h
+dd 09852974fh
+dd 081f8e137h
+dd 07ff55dd4h
+dd 06d40babah
+dd 059543806h
+dd 09752104bh
+dd 0dff56916h
+dd 041dbf80fh
+dd 067368d25h
+dd 019fb9285h
+dd 088daf320h
+dd 08c2ec18bh
+dd 036ed4742h
+dd 0ecd76a9dh
+dd 08b8a1226h
+dd 07985d0bfh
+dd 0cb2f4e08h
+dd 0dcb57992h
+dd 04d65333ah
+dd 01cc9401eh
+dd 03d950a8fh
+dd 0066cd9dfh
+dd 037d70387h
+dd 000321fcah
+dd 04a2eec60h
+dd 0204a81a8h
+dd 0a850996dh
+dd 0ea38244bh
+dd 08065cac6h
+dd 0adf4f299h
+dd 04350dc42h
+dd 0b710ec1bh
+dd 049a344ceh
+dd 01159b3a6h
+dd 0eca48335h
+dd 0c1f9bc65h
+dd 0f53a5cd2h
+dd 02f2272cbh
+dd 07183cb97h
+dd 09b5cf785h
+dd 037d6b103h
+dd 04c29806fh
+dd 04239db3bh
+dd 0d96c1291h
+dd 05cb3fbd3h
+dd 051722a75h
+dd 0d286d85eh
+dd 0061dc919h
+dd 0413d887ah
+dd 031930a55h
+dd 07e611f37h
+dd 076375461h
+dd 0a2024bafh
+dd 074ca90a3h
+dd 0c506d199h
+dd 08d2d8c3fh
+dd 07e46ca01h
+dd 0070fe520h
+dd 0b3dc0ea4h
+dd 017032bddh
+dd 0e44263f9h
+dd 0aee3a694h
+dd 048144317h
+dd 0b0a79e78h
+dd 0f6fbb47bh
+dd 05f9d8303h
+dd 0236cf813h
+dd 086beefc6h
+dd 0d21c899fh
+dd 045f53a3eh
+dd 057041d0bh
+dd 0cf801e48h
+dd 03ad16b40h
+dd 03bb677b2h
+dd 0bd995dfbh
+dd 06309ea6fh
+dd 06ec1485bh
+dd 03d0bc10ah
+dd 0d488d3cfh
+dd 02b507ae0h
+dd 0c6ca6644h
+dd 01dc321aah
+dd 060a06b80h
+dd 0c7ba75f1h
+dd 070f1e9feh
+dd 09eafd138h
+dd 07a0f1faeh
+dd 0b4ed5262h
+dd 0c1563cb2h
+dd 0732ee1edh
+dd 02de24757h
+dd 02889b5c3h
+dd 0746758afh
+dd 0878b6e9bh
+dd 06e01f2eah
+dd 0909afad1h
+dd 082586a98h
+dd 06480e6dfh
+dd 069ea5756h
+dd 03ebb7b23h
+dd 02227e201h
+dd 0e128bdb7h
+dd 0c8985db7h
+dd 06aeeec31h
+dd 0e1601d86h
+dd 0bbbee8ebh
+dd 06a6035dch
+dd 0450a7f44h
+dd 031d6509fh
+dd 09234abcah
+dd 0d35c0376h
+dd 071a3849dh
+dd 0555ab551h
+dd 0d4ab3f26h
+dd 0b59aff62h
+dd 03ae31e8bh
+dd 0ebe985dch
+dd 010df7104h
+dd 06fbcca29h
+dd 0077a4647h
+dd 03331e76eh
+dd 08f5c6f53h
+dd 0bda4f215h
+dd 0afe8d72ah
+dd 0b49b1a63h
+dd 02255e79ch
+dd 08e008d22h
+dd 0c205fc86h
+dd 054b02655h
+dd 05cd9b98dh
+dd 0d4c7a2deh
+dd 0d2ad3613h
+dd 0ce431590h
+dd 02a5d852ah
+dd 04d057e4ch
+dd 04fab7e96h
+dd 02d935ccah
+dd 0419910ech
+dd 0aa2b75f1h
+dd 09da3b3d4h
+dd 06a8899d9h
+dd 056d86c1ah
+dd 048631fb1h
+dd 0641ba260h
+dd 0ca6744eah
+dd 02569db51h
+dd 0a933eef8h
+dd 06cce74c6h
+dd 0a434a85fh
+dd 0adb8f217h
+dd 0e09cab2eh
+dd 00827d40ah
+dd 00d74a6d8h
+dd 0e64f4c16h
+dd 0c5129d1fh
+dd 0ee12fb3eh
+dd 024e7f0edh
+dd 0ba80887eh
+dd 08450c5e9h
+dd 0f0e9d6d9h
+dd 0aec34e8fh
+dd 011aa6a2dh
+dd 081000e48h
+dd 052c1b628h
+dd 09c6101eeh
+dd 02cd6dd79h
+dd 062ea174bh
+dd 070fba6edh
+dd 0243967d3h
+dd 08644e802h
+dd 0ec660d4ch
+dd 05ccdb89ah
+dd 0eba60f34h
+dd 0f69ddbf8h
+dd 037292bc7h
+dd 02cdf9cc0h
+dd 02902a67bh
+dd 02b611853h
+dd 01777a008h
+dd 0cae5cf81h
+dd 0e9b0a332h
+dd 08e51cc03h
+dd 098bd8510h
+dd 0729e0616h
+dd 0f21fa06ah
+dd 04523510bh
+dd 01ab5e65ch
+dd 07d348bb5h
+dd 0a53dad0dh
+dd 0e3aac57bh
+dd 05886a881h
+dd 0747a85d9h
+dd 08751b94fh
+dd 0db4530e0h
+dd 03adc4dbeh
+dd 0f774be68h
+dd 0ace46396h
+dd 0d2a7314dh
+dd 0fd702a7ah
+dd 0ece6dd03h
+dd 09a2f7e82h
+dd 09d67cf17h
+dd 0e8ef4ab3h
+dd 0beae5a08h
+dd 0e354f3cfh
+dd 0974a7518h
+dd 0f6a4c410h
+dd 0044e1db2h
+dd 063af938eh
+dd 064a56e22h
+dd 0a808366ch
+dd 06568a99fh
+dd 0b620f424h
+dd 0e3314a7dh
+dd 0622785b7h
+dd 0f552c7d1h
+dd 09f1afebch
+dd 0ba44cde3h
+dd 069660d80h
+dd 0fc5d4508h
+dd 04babbd2bh
+dd 0a5b08ccch
+dd 0d3d58c26h
+dd 01bbe0c2bh
+dd 0e057cd40h
+dd 0220f9c93h
+dd 072135ab8h
+dd 09b31066ch
+dd 00145e92bh
+dd 09d08139eh
+dd 07a02f02dh
+dd 0848abb47h
+dd 0b0340266h
+dd 06cc4056ah
+dd 068b69edeh
+dd 0ecf0be2fh
+dd 0db91738eh
+dd 021d75b87h
+dd 0f55be5a1h
+dd 0aa45dc31h
+dd 093a80febh
+dd 0f8fbf036h
+dd 06dcfda8eh
+dd 06415c161h
+dd 0fc55e69fh
+dd 018843734h
+dd 00abb32e0h
+dd 0496c995eh
+dd 0b36b57aah
+dd 09df9f188h
+dd 06b2a5608h
+dd 00e90d7a4h
+dd 05043123dh
+dd 0ba8409f1h
+dd 01f44af65h
+dd 045eb2983h
+dd 069301cfah
+dd 04189c1d9h
+dd 00480f26bh
+dd 0259fd832h
+dd 0ebe07a10h
+dd 070ea3bf2h
+dd 06f7c9b70h
+dd 0b7c16b7fh
+dd 0cba12968h
+dd 021ec0f77h
+dd 04ed6c46dh
+dd 019727da3h
+dd 0041a55e5h
+dd 0670047cdh
+dd 07e20d681h
+dd 0062abc81h
+dd 076dc3053h
+dd 0a26a8bbeh
+dd 00ef98050h
+dd 0df3e397fh
+dd 036401937h
+dd 09ebf191bh
+dd 0fc60f54fh
+dd 0347620ebh
+dd 0e926a52fh
+dd 0d4ac489ch
+dd 0b0e69b9bh
+dd 0809274fah
+dd 087b55f71h
+dd 0597f2850h
+dd 0c642bd04h
+dd 0d24f67f8h
+dd 07ede4f61h
+dd 0942848f0h
+dd 085a202a4h
+dd 092308154h
+dd 04a470ef5h
+dd 0150342fah
+dd 0a9827ffeh
+dd 0ddbf5d83h
+dd 0cd0a5408h
+dd 07d51baabh
+dd 08e437c19h
+dd 0c6c2693fh
+dd 0b0601bdfh
+dd 0c5b1c4bch
+dd 0537e96bbh
+dd 0e32b2e8ah
+dd 0f40684b7h
+dd 05b68ca6ch
+dd 06c517728h
+dd 0b2fd5931h
+dd 0a2f0483fh
+dd 05aedc288h
+dd 0301573e8h
+dd 0ef137422h
+dd 00e61b550h
+dd 06dd7e7d0h
+dd 0e9a8b868h
+dd 00616252fh
+dd 068caa30bh
+dd 04606473fh
+dd 0e8b773a4h
+dd 086c56ea3h
+dd 02e79410fh
+dd 0fe80f34eh
+dd 026768d93h
+dd 04a91f5bdh
+dd 0265c6bdeh
+dd 0156e3026h
+dd 0bc23b1fbh
+dd 03fa8d39ch
+dd 0361b625dh
+dd 0e71e399ch
+dd 08ed12109h
+dd 0c2361a26h
+dd 04358cf28h
+dd 01bdb651bh
+dd 02a15cf28h
+dd 0528430d1h
+dd 03c80a96ah
+dd 0bfc7118fh
+dd 0bc7e7942h
+dd 0f31024d0h
+dd 079c7b456h
+dd 0d988e722h
+dd 027e6fec3h
+dd 0ed3d67a1h
+dd 01dd389a3h
+dd 035385647h
+dd 0a33b964eh
+dd 039c1cb2ah
+dd 02575da70h
+dd 0a3adb339h
+dd 02bf920dfh
+dd 0870ef81fh
+dd 04cdb47f8h
+dd 02b0aaeefh
+dd 04f9d1342h
+dd 0d8a911d3h
+dd 0cbcf4cc5h
+dd 09c937c3bh
+dd 073fceeb2h
+dd 00b680849h
+dd 0ab60f130h
+dd 060be5aa1h
+dd 04bcccd31h
+dd 07e455d2bh
+dd 0d5cc64a2h
+dd 093c9df73h
+dd 0aa345ca7h
+dd 0ce2c301bh
+dd 05335c9d5h
+dd 04fca8269h
+dd 0c6fa3cf8h
+dd 0675d23b1h
+dd 0b90f7825h
+dd 08c4faf78h
+dd 02e41b176h
+dd 0a7fe9a13h
+dd 0e3eb1c29h
+dd 0195527bdh
+dd 0d800c318h
+dd 0822f5033h
+dd 060d0f186h
+dd 0f72333c8h
+dd 0777bd5c8h
+dd 0822c8a92h
+dd 089d3a99bh
+dd 09cf44249h
+dd 0cdabc504h
+dd 0b38afac5h
+dd 0d536493eh
+dd 0166c5a6ch
+dd 0827ff969h
+dd 0292c7e27h
+dd 0b1845a4fh
+dd 0606d54cch
+dd 0e18d7d88h
+dd 0480c98beh
+dd 0bb83b56fh
+dd 022da0d8fh
+dd 0e54bed64h
+dd 06d3abed3h
+dd 0b2325561h
+dd 0f7870b26h
+dd 0d91549b5h
+dd 04c462292h
+dd 0fbb547d4h
+dd 09d3cef08h
+dd 0aaeb681eh
+dd 0490bd616h
+dd 0afc5b567h
+dd 0fa905defh
+dd 08531fdf2h
+dd 08d8303dbh
+dd 0aeffff17h
+dd 084423043h
+dd 058f8dcabh
+dd 0669d01fah
+dd 0f891a880h
+dd 0ac98284bh
+dd 03d116c67h
+dd 03c2b1d71h
+dd 017373259h
+dd 050bb2d91h
+dd 093d3af55h
+dd 00e4c13deh
+dd 0b7d1f1aah
+dd 0075a9797h
+dd 0ab6c6eb6h
+dd 0c1540ffbh
+dd 08463ae6dh
+dd 05b5a4004h
+dd 03f05df95h
+dd 01c375f12h
+dd 032c35666h
+dd 05f260158h
+dd 0005f36cfh
+dd 0a500c331h
+dd 0ca17762ah
+dd 0bb79ce65h
+dd 0ed6bc94ch
+dd 0492ff81ah
+dd 003a1fefeh
+dd 01e4f0549h
+dd 0751834b9h
+dd 0dc5279b3h
+dd 02e0db41dh
+dd 0e55431e2h
+dd 0cd8b4e5ah
+dd 074b767edh
+dd 056eb3966h
+dd 0f9a6b3a4h
+dd 0968491c0h
+dd 0ff615229h
+dd 094f2b008h
+dd 033335754h
+dd 0655b92ffh
+dd 016e97278h
+dd 0d85255bdh
+dd 00d05725dh
+dd 0d726f11ch
+dd 0656dfc9dh
+dd 09876103bh
+dd 051299f0bh
+dd 01349a1ebh
+dd 0f15a065ch
+dd 0ea50ddb5h
+dd 08c4047beh
+dd 06da79d3ch
+dd 0d6aafbbah
+dd 018012befh
+dd 02af97ba9h
+dd 0d6b2d0f2h
+dd 07dbfc839h
+dd 00f811730h
+dd 0bd3a5835h
+dd 0700d432fh
+dd 0a6a9087dh
+dd 066c50443h
+dd 0d9be5f29h
+dd 0c82b4107h
+dd 0bcd83d83h
+dd 0c8a386f0h
+dd 0186483f0h
+dd 03a5a9885h
+dd 0c9de20d6h
+dd 07afc813ch
+dd 0b5adfb08h
+dd 01269d555h
+dd 08af4636eh
+dd 0b98c173eh
+dd 0d2c543afh
+dd 07ec983ceh
+dd 00c01590bh
+dd 0e8f10678h
+dd 01ba0ed5ch
+dd 065d5bf0ch
+dd 0a9be3412h
+dd 05badf6adh
+dd 03fc8c568h
+dd 07deb5c7bh
+dd 0f5d3bc55h
+dd 06ee01f1eh
+dd 0e5bcc9e6h
+dd 03d56b595h
+dd 03d971803h
+dd 050b7c4c2h
+dd 040ff9782h
+dd 07b832312h
+dd 0a3fe6482h
+dd 0df709a1eh
+dd 0ff57ed69h
+dd 00dbb9895h
+dd 0a6c74716h
+dd 0eae9f1c2h
+dd 0d7777fc4h
+dd 08083085eh
+dd 046cfb731h
+dd 08519ca7ah
+dd 0d7ca1beah
+dd 0cbfb8a05h
+dd 0f99f9205h
+dd 0fa855c2dh
+dd 0ededb219h
+dd 001d56bfbh
+dd 08709eaa0h
+dd 05aae8d4bh
+dd 0840dbcc9h
+dd 0ff41182dh
+dd 0b3bbb458h
+dd 0c194345fh
+dd 0cf9f48ceh
+dd 0e3ee48f0h
+dd 0fb6c148ah
+dd 0ce2f5dcbh
+dd 0abc84df2h
+dd 0f4229aach
+dd 0e08b0e1ch
+dd 0e282198fh
+dd 0b6be9a97h
+dd 090de612eh
+dd 0d1ec9670h
+dd 0666032e6h
+dd 031c3b2f6h
+dd 0635803c8h
+dd 0f748ac23h
+dd 0968a6acch
+dd 07c842a6dh
+dd 0fc2dcde3h
+dd 0094f22cbh
+dd 04d257452h
+dd 03b515210h
+dd 0044a24ddh
+dd 08738582bh
+dd 0f923b624h
+dd 0e429de1ch
+dd 0abdc6ff8h
+dd 04aeefbf3h
+dd 0b54c8034h
+dd 0bed1d2e4h
+dd 05904eee3h
+dd 028148ebah
+dd 06714d6d0h
+dd 0a8743d49h
+dd 00cb333dah
+dd 0760408efh
+dd 0a2864f6ch
+dd 0f6c51739h
+dd 0d12b0514h
+dd 0700fd1c5h
+dd 0b52eb73eh
+dd 07db03929h
+dd 0482a72cfh
+dd 0a8150633h
+dd 07efb7b79h
+dd 0bd4a609ch
+dd 005a02c61h
+dd 0eedb6b71h
+dd 0f9f59880h
+dd 06313594ah
+dd 01fa289bdh
+dd 0ea87375eh
+dd 0a1ffcb2ah
+dd 0147f90ffh
+dd 02192ca42h
+dd 035a2154dh
+dd 0bce9d476h
+dd 03be38020h
+dd 03dbd3764h
+dd 067425b3dh
+dd 05b65c99ah
+dd 0565a7b85h
+dd 03d3bb98dh
+dd 0905cc4e1h
+dd 0e1b37208h
+dd 02b533549h
+dd 028864c31h
+dd 0037d3ca4h
+dd 0b36864bah
+dd 01d6b0593h
+dd 0b41ae660h
+dd 0575999b6h
+dd 047b037cdh
+dd 02bd90cc5h
+dd 090869a25h
+dd 0a38486c7h
+dd 086413896h
+dd 04db2bcd9h
+dd 00a9fb331h
+dd 05faebb0fh
+dd 0da709a86h
+dd 04f71f080h
+dd 0ea0c0750h
+dd 05cb24326h
+dd 0e3014c16h
+dd 024867dc7h
+dd 0b447f048h
+dd 0712cbd0ch
+dd 0b2130b4ch
+dd 0a4c47f66h
+dd 0cf288c84h
+dd 053394405h
+dd 02953bdfdh
+dd 0b7e7ea3ah
+dd 02ddea0eah
+dd 0e8e68b49h
+dd 01f396396h
+dd 085c7558dh
+dd 0b68ac620h
+dd 0cc9175fch
+dd 02473755fh
+dd 04f680da3h
+dd 0339ccb6ch
+dd 0ae740ce9h
+dd 0ddc08b48h
+dd 0141a2308h
+dd 0fda753e2h
+dd 0ccb19691h
+dd 09642a525h
+dd 047ba700fh
+dd 033a2e09eh
+dd 0bfe7c243h
+dd 05778922dh
+dd 02e79de1fh
+dd 0348159c0h
+dd 02361ac7ah
+dd 0f769da39h
+dd 084322399h
+dd 082e49458h
+dd 06cb16f39h
+dd 0184555cch
+dd 0de4c7861h
+dd 07d0d2bf1h
+dd 064eee7f1h
+dd 0af3ea953h
+dd 02c292d14h
+dd 0a06bc352h
+dd 0207d03d9h
+dd 0f060ba9eh
+dd 02016044ah
+dd 0d2a06254h
+dd 03b66e69ah
+dd 017fe5d0ah
+dd 0f7f80793h
+dd 0d22f53c3h
+dd 093330bd2h
+dd 02d0fd482h
+dd 0ca9f133bh
+dd 08f94c06eh
+dd 09e623414h
+dd 09fa729a5h
+dd 0ee7e603ah
+dd 00e78ee07h
+dd 0aca507a4h
+dd 086d6d8bah
+dd 0a7018488h
+dd 044e921f2h
+dd 0c661bae8h
+dd 0c4abcac3h
+dd 089be10d6h
+dd 0fe32540eh
+dd 0a2448bb3h
+dd 08d8ba465h
+dd 0914404cch
+dd 06a113a25h
+dd 03a0ac296h
+dd 06e41bf13h
+dd 031a280bdh
+dd 0a62044c9h
+dd 0eae6fe8fh
+dd 0902cbd35h
+dd 014c3bb39h
+dd 0a5812976h
+dd 03bdb1772h
+dd 06107ce8ah
+dd 06a50e231h
+dd 0eb79d6f1h
+dd 09b8a0babh
+dd 0042fffaah
+dd 0fd0205f4h
+dd 065a16ae5h
+dd 0a3228541h
+dd 02e21b12fh
+dd 0c40251c2h
+dd 006da39aeh
+dd 000d408e7h
+dd 05dc5dffeh
+dd 039fc13cfh
+dd 0f33fcc77h
+dd 0e57e0bb7h
+dd 02e73e257h
+dd 032fdea54h
+dd 0333851eeh
+dd 05e682f2fh
+dd 064b6c817h
+dd 002ab224bh
+dd 0ca514968h
+dd 071408467h
+dd 09ec0c327h
+dd 0d329f136h
+dd 0bc1bd7f5h
+dd 029611d25h
+dd 06a1bd76ch
+dd 0421d5e97h
+dd 0162f1489h
+dd 0420a256ch
+dd 09b205890h
+dd 0c63b717fh
+dd 02c7cfa7bh
+dd 0cca5a5e6h
+dd 05f4da790h
+dd 046259079h
+dd 042003ed4h
+dd 01925b1c3h
+dd 0af12fa2ah
+dd 0c6ad1af1h
+dd 02297e55eh
+dd 03c402b80h
+dd 00c2182a2h
+dd 043c85876h
+dd 0681fa888h
+dd 0d9fcb825h
+dd 058307d96h
+dd 0c8eacb1eh
+dd 0c30d1f9bh
+dd 0ac19dd16h
+dd 0a79a273ch
+dd 077805cedh
+dd 015b9032ch
+dd 005d60c3bh
+dd 0f0ee7736h
+dd 03eb7ddddh
+dd 012557a40h
+dd 029b1cbb8h
+dd 0970f6f7dh
+dd 0f01ee496h
+dd 0a8bc1b7dh
+dd 03b6aa27fh
+dd 02ad45e02h
+dd 05b96eaceh
+dd 00b02104ah
+dd 03278c4c3h
+dd 0f2441617h
+dd 013a0ba75h
+dd 020bd6a43h
+dd 0a80f00c7h
+dd 0133e1203h
+dd 011f7803bh
+dd 0b50144eeh
+dd 0b457bb34h
+dd 02c07fdb7h
+dd 043b35cfbh
+dd 0c13bedf6h
+dd 053293bd8h
+dd 0b6bb8592h
+dd 0b3afe9b9h
+dd 02283ef23h
+dd 0e31e1146h
+dd 080e85e1bh
+dd 098464b99h
+dd 0a18b3411h
+dd 0d0a08c35h
+dd 017e5e1f9h
+dd 015011558h
+dd 09c9cb631h
+dd 0141a9db5h
+dd 0f41a6d73h
+dd 04ffbb6a2h
+dd 0ad98f36dh
+dd 0c6e15e5fh
+dd 0ab009e49h
+dd 033460265h
+dd 0f60aaf32h
+dd 0c3cdae61h
+dd 07623dc19h
+dd 032111c06h
+dd 0313eeb09h
+dd 071d2ed53h
+dd 017d50a28h
+dd 097627d16h
+dd 07a63da11h
+dd 012d5e5feh
+dd 01b45ba86h
+dd 003ddc49ah
+dd 04afe09aeh
+dd 054b11f01h
+dd 08d9fde5dh
+dd 0bc7eb766h
+dd 0c45d8f34h
+dd 0c538d889h
+dd 0446c07d1h
+dd 06b7c20b7h
+dd 044f18e28h
+dd 030bcdb4dh
+dd 01a18b38ah
+dd 09ccda9b3h
+dd 02f4cdae8h
+dd 025ea515fh
+dd 03c8b6925h
+dd 042bed8e5h
+dd 01a463390h
+dd 0566bab08h
+dd 05e4eefd3h
+dd 04cf1fe22h
+dd 0d2cbe640h
+dd 0d9d02380h
+dd 0a14f62d3h
+dd 0d68e0505h
+dd 0d4299e7fh
+dd 02090672dh
+dd 038948abdh
+dd 0e17a2cfch
+dd 0ce62ff43h
+dd 0de60c9a5h
+dd 0418711cah
+dd 052f63f1dh
+dd 0fa82ad7ah
+dd 0b1c2057eh
+dd 0b5d660aah
+dd 011c0441bh
+dd 089d48e3dh
+dd 09f56e533h
+dd 0f99d4c95h
+dd 0ec3e3f6ah
+dd 068085e18h
+dd 03219260bh
+dd 09decbc4ah
+dd 0b5011ae9h
+dd 01b39cb2dh
+dd 091c72326h
+dd 0b7ee5440h
+dd 0cf59f839h
+dd 034208a83h
+dd 0d408b489h
+dd 0d96d9758h
+dd 03cc90d13h
+dd 04c6fc3d7h
+dd 03479a565h
+dd 049453687h
+dd 0781b9e5eh
+dd 0003e8c59h
+dd 03cd56712h
+dd 0dc5b6512h
+dd 0eca87b75h
+dd 026728920h
+dd 069841f12h
+dd 0e81cb14dh
+dd 0ce57446ch
+dd 099578c40h
+dd 084deaf0dh
+dd 0f903e834h
+dd 0e20bc4e6h
+dd 0291d6076h
+dd 08928386fh
+dd 02d60a760h
+dd 0868f9f0eh
+dd 001de2bd0h
+dd 0f240be6bh
+dd 08de1c7cfh
+dd 08d28bb18h
+dd 08d589376h
+dd 02cbfb593h
+dd 06d887a25h
+dd 02b9444a4h
+dd 06d0bc3ddh
+dd 0c63f730ch
+dd 00cfbc759h
+dd 0e128741eh
+dd 01753e900h
+dd 089b7b28bh
+dd 018d9e8d1h
+dd 0be969de7h
+dd 072cfaecdh
+dd 02f29101fh
+dd 00c155085h
+dd 0fb30c03ah
+dd 06fed40a7h
+dd 04b94ca86h
+dd 00266b31ch
+dd 0bd10a2b7h
+dd 0613a94e3h
+dd 017ee6e3ah
+dd 093c2e326h
+dd 0547d5848h
+dd 00a253c2eh
+dd 0ca39519fh
+dd 061e8a84bh
+dd 07d180f31h
+dd 033f60ef3h
+dd 092857096h
+dd 0ed19822ch
+dd 0097780bah
+dd 0212c4db8h
+dd 0315e3d68h
+dd 04fd5737ch
+dd 0bbf6a920h
+dd 0fc1b578ch
+dd 0b313f518h
+dd 0fd643098h
+dd 0d81cc6fbh
+dd 0d773d434h
+dd 04163c1e0h
+dd 01ab2513ah
+dd 024fd7f3fh
+dd 0890dd233h
+dd 0842bed92h
+dd 0753f1d71h
+dd 0d2d13744h
+dd 097b9ff19h
+dd 0d259fc03h
+dd 0e04c3cd7h
+dd 0e18b041ch
+dd 0e6701c3eh
+dd 0ddc83221h
+dd 072318896h
+dd 089eb7c9eh
+dd 060bdc903h
+dd 0888f286ah
+dd 0e3b2699bh
+dd 02023de21h
+dd 0802fc47eh
+dd 031149cfah
+dd 0e9471442h
+dd 0b822b482h
+dd 0b6531d69h
+dd 0cdfaade5h
+dd 002fdd158h
+dd 02dac665eh
+dd 05a612010h
+dd 071aaa5f1h
+dd 014f3e99ah
+dd 00f78a861h
+dd 0c2d035fdh
+dd 07fcb0a6dh
+dd 0cca36586h
+dd 0aefd8d63h
+dd 007d57cf7h
+dd 0aa6c899eh
+dd 026fe23f0h
+dd 008d48a13h
+dd 0a9d2a3d4h
+dd 008213920h
+dd 07a9b254eh
+dd 0a2844029h
+dd 0a7dc3d35h
+dd 00b0d4e6bh
+dd 07f3bcb2eh
+dd 0f6b5722eh
+dd 0ddb009bdh
+dd 0abdde24dh
+dd 057afbb27h
+dd 04b04c093h
+dd 049f19f0ch
+dd 06d49065eh
+dd 0155066aeh
+dd 008162e42h
+dd 07cc706fbh
+dd 05c81497fh
+dd 06965b374h
+dd 04db3c697h
+dd 09d1d17b2h
+dd 0a7835cd8h
+dd 0d45c5ed9h
+dd 0af6f4b47h
+dd 0cca87642h
+dd 0daf9eb3eh
+dd 004943c37h
+dd 025b1e50fh
+dd 0d1e54021h
+dd 0f95dfd99h
+dd 09a4b621bh
+dd 04df077d2h
+dd 0a065d357h
+dd 087f5fe49h
+dd 0f03a8c1eh
+dd 08574824dh
+dd 0d4705a07h
+dd 078955675h
+dd 073ee039dh
+dd 0cfbf5629h
+dd 0ff3d5cc4h
+dd 024f35ee1h
+dd 00be28943h
+dd 065a4b6b2h
+dd 0f3ba3f86h
+dd 046fb0375h
+dd 0c8f4d841h
+dd 0e5041f87h
+dd 06b4577b6h
+dd 02d9306c8h
+dd 0ce86d599h
+dd 0e633ad94h
+dd 0b8436a99h
+dd 053f27f4ch
+dd 0ea681e44h
+dd 0f654243fh
+dd 05a92337bh
+dd 0d7565aedh
+dd 0f5f240fah
+dd 0f0607a3eh
+dd 03be5ba45h
+dd 07d7b23c3h
+dd 00ae66f3dh
+dd 01571f17eh
+dd 0b2dbf86dh
+dd 00a24d126h
+dd 03dd27273h
+dd 02e536757h
+dd 0582c2ea7h
+dd 0142f0d2ah
+dd 0c229d074h
+dd 0018bcf1bh
+dd 0e4d73d51h
+dd 040640a80h
+dd 0bea8f3e0h
+dd 02acd51f9h
+dd 08eeb9557h
+dd 00b458433h
+dd 00e97e746h
+dd 0c34a43b4h
+dd 0b1948146h
+dd 05b5562c5h
+dd 019cbd976h
+dd 0ad9c10dfh
+dd 02facf157h
+dd 015af0712h
+dd 0dacfd719h
+dd 09b064cfbh
+dd 0c4026830h
+dd 076dcaee8h
+dd 097ab7001h
+dd 0d6999bd1h
+dd 09493e67fh
+dd 020ddb660h
+dd 0dfad4c18h
+dd 00d1bc8d4h
+dd 0fdbf8e00h
+dd 0945c61fdh
+dd 0305a3a81h
+dd 0346938b3h
+dd 00d13545ch
+dd 06f6b0abeh
+dd 0cb27b191h
+dd 0ffbb0772h
+dd 026ac6c17h
+dd 067e10b45h
+dd 016355653h
+dd 01bedf5d6h
+dd 08b17ce90h
+dd 0ba8ee280h
+dd 08c53df4dh
+dd 0727a03b8h
+dd 0ffa6aaceh
+dd 0dcab0e3eh
+dd 0b675f32ah
+dd 0bff3fdfah
+dd 03036bb24h
+dd 054dad6bch
+dd 0ce7593c5h
+dd 0c9089d4eh
+dd 07e055379h
+dd 08b3def81h
+dd 0211764cbh
+dd 00033b78fh
+dd 02fddf107h
+dd 074a312dah
+dd 0ff8f00aeh
+dd 0acaa06d1h
+dd 0a3594f5ah
+dd 0efd41be0h
+dd 04e2cffe1h
+dd 000458cd5h
+dd 041803e28h
+dd 064ecc7b2h
+dd 0247f0781h
+dd 046d64f30h
+dd 0304355b5h
+dd 073e68f09h
+dd 0ba76599eh
+dd 0c4c1242eh
+dd 07fd0fa3dh
+dd 00bfa643dh
+dd 05fc6a978h
+dd 03f342c28h
+dd 0ff105875h
+dd 050713e36h
+dd 06ce92b69h
+dd 05905cc62h
+dd 0c1e8b9b7h
+dd 0bfbe5ae3h
+dd 06e708df2h
+dd 0da319beah
+dd 0012776d4h
+dd 0fd5406ceh
+dd 07e080ac1h
+dd 0cc13e80eh
+dd 0cf6463c6h
+dd 03a14a856h
+dd 06cfceab8h
+dd 0a4255108h
+dd 0b3528775h
+dd 06ef78dfdh
+dd 00a553c48h
+dd 038fb55c1h
+dd 074831820h
+dd 019958c11h
+dd 079ad1d2eh
+dd 0e248b645h
+dd 0a4a6ee32h
+dd 0bd3b3773h
+dd 0b1e178ceh
+dd 00b15b649h
+dd 0d7316f82h
+dd 07277b2f5h
+dd 0db7c4676h
+dd 0758924abh
+dd 0c2528cc9h
+dd 092791e33h
+dd 0b93ccab7h
+dd 0dea8fb65h
+dd 026f19d8dh
+dd 04146b3afh
+dd 0cf7e6283h
+dd 011576f4fh
+dd 0bdb1180ah
+dd 0567e9fbfh
+dd 0142a535bh
+dd 0277f1c2ch
+dd 0a376baaah
+dd 0c1b41900h
+dd 008ec0dadh
+dd 01007090ah
+dd 00324099dh
+dd 0f4637f4bh
+dd 09214a2ddh
+dd 08a9dc75ah
+dd 003636353h
+dd 007cfaa8bh
+dd 02a4ee5d0h
+dd 0bc65af06h
+dd 00d257617h
+dd 045a7b7e3h
+dd 02e9cd93eh
+dd 0f172facdh
+dd 09cc1e228h
+dd 096d62e97h
+dd 0be3802c4h
+dd 00841ae2eh
+dd 0c2eedb16h
+dd 004b5aae5h
+dd 0ecb052b7h
+dd 07a028c90h
+dd 0f506675dh
+dd 01f4bc65dh
+dd 0bb1260dah
+dd 000ba23d8h
+dd 0107a2221h
+dd 0f7a5c899h
+dd 03c863ee1h
+dd 065ad7172h
+dd 0c01f3437h
+dd 02f204fedh
+dd 0964839e9h
+dd 022a2518ch
+dd 08d6130c7h
+dd 0c78af361h
+dd 0a0be7b07h
+dd 0d08e06f7h
+dd 0f4efe09fh
+dd 0630af209h
+dd 000b62c69h
+dd 04c335b96h
+dd 00a6dd1e4h
+dd 0d476fdabh
+dd 05d86bbceh
+dd 0e379ae52h
+dd 0c42cbe54h
+dd 0cf0fdacah
+dd 0da1e53dch
+dd 0075a6f0fh
+dd 09b6ec245h
+dd 0dac5651bh
+dd 0ce357e74h
+dd 053f3e828h
+dd 0dca4148bh
+dd 072c4fe70h
+dd 0f5666738h
+dd 09dc62e45h
+dd 060103deah
+dd 04ba8d04ah
+dd 0047e9474h
+dd 06e731d24h
+dd 054710867h
+dd 06c9f42a8h
+dd 081faf693h
+dd 0e848aec8h
+dd 0917bc38bh
+dd 03c2b413ch
+dd 0a06e9b5ah
+dd 07c26b177h
+dd 09e4c654eh
+dd 015bef83ah
+dd 01acc1f0ch
+dd 011e953ddh
+dd 04df73341h
+dd 0ea78b419h
+dd 0e6595093h
+dd 0431c2d60h
+dd 0c50d2fefh
+dd 08e326c60h
+dd 0f934cb3bh
+dd 01739e4d3h
+dd 03234b1a4h
+dd 0b7a02ce3h
+dd 0f7f42ce7h
+dd 04640e689h
+dd 0875766f7h
+dd 068eb2c0eh
+dd 0bf2603adh
+dd 0df55f20dh
+dd 0d75be3fbh
+dd 038d72a45h
+dd 008ed1d15h
+dd 0b4f87749h
+dd 0e68c0dfbh
+dd 05e4dba55h
+dd 0b682c4ach
+dd 0cc745f68h
+dd 086cc3d48h
+dd 06c6c3409h
+dd 01304fb1bh
+dd 0504c45c8h
+dd 0fbb70aedh
+dd 085dc60bdh
+dd 0f7e74c2dh
+dd 0174d377eh
+dd 04bdec497h
+dd 08e1f248eh
+dd 083ba630ch
+dd 005662bfeh
+dd 0b6e6160dh
+dd 0c75db6d2h
+dd 0d1044957h
+dd 053360157h
+dd 072bbbb02h
+dd 0e751a9a1h
+dd 0c8e4062eh
+dd 0e20c8aafh
+dd 0d53251e4h
+dd 04b0035c3h
+dd 091a1807ah
+dd 032fbab70h
+dd 078ae6d0eh
+dd 02d88ae47h
+dd 02c0ffb2fh
+dd 04915fbfbh
+dd 07b2a5d3fh
+dd 034bef99dh
+dd 019799bb6h
+dd 0d4541a05h
+dd 0d922783eh
+dd 08b98f383h
+dd 080a3f6f4h
+dd 00dc92e38h
+dd 0e637ec19h
+dd 0900bda41h
+dd 0e6bfed63h
+dd 02bca3fb5h
+dd 0b8ba1741h
+dd 05d4911e7h
+dd 0cf66b093h
+dd 0b76a43fah
+dd 04324ebafh
+dd 07e6a2a84h
+dd 001fddb92h
+dd 0abc83655h
+dd 082617087h
+dd 0e49ab195h
+dd 03b24a520h
+dd 03a6e7dd1h
+dd 0bc05c7ach
+dd 0774f1202h
+dd 0605ad2cdh
+dd 0d0cff227h
+dd 00b2763abh
+dd 0c7500d5dh
+dd 03b466b62h
+dd 0676c1c8dh
+dd 0d9ae8fcdh
+dd 0025ec1deh
+dd 0a73cadeeh
+dd 0b6b1e635h
+dd 0754940a3h
+dd 0994d0ca4h
+dd 0a7af2abah
+dd 0c843d59fh
+dd 065ca7f73h
+dd 062b825f8h
+dd 0458102edh
+dd 0c0b59aa1h
+dd 0c9f45c7ah
+dd 0495a2729h
+dd 0aebf704eh
+dd 0f77a8da6h
+dd 0add42740h
+dd 072f7f1c0h
+dd 0f27b85b1h
+dd 0416bf3efh
+dd 0bed1ef1ch
+dd 0f1699560h
+dd 0ba454a5eh
+dd 02ef58239h
+dd 023da6226h
+dd 060e19599h
+dd 01a6c23a5h
+dd 022be3dfch
+dd 09e62cfe2h
+dd 0bbe92719h
+dd 05d2c0c89h
+dd 0a5741a9bh
+dd 06da38dd9h
+dd 0244f39d6h
+dd 0eff308eah
+dd 0323754d7h
+dd 0f2cf082ch
+dd 00e4238b3h
+dd 0e4be4e95h
+dd 0f8fa628fh
+dd 084100030h
+dd 095f40962h
+dd 01d15f34bh
+dd 024e59f54h
+dd 0cc33a2f0h
+dd 0f620953dh
+dd 06475bbc3h
+dd 0b8f64b72h
+dd 0584736f0h
+dd 0c20c788ch
+dd 0681d0485h
+dd 0d6184c00h
+dd 0ed0a1b7eh
+dd 04b7615e5h
+dd 0a86e643fh
+dd 0d7a414fah
+dd 04470191dh
+dd 081dcedf3h
+dd 01e1aa98ah
+dd 04f6c2516h
+dd 0dfc09981h
+dd 0ac509abfh
+dd 0090f8a56h
+dd 06402b02ch
+dd 039d12fd7h
+dd 06f350527h
+dd 0f300cacbh
+dd 05083d4d1h
+dd 00e82ead9h
+dd 08f5cef8ch
+dd 013448f20h
+dd 0f44acca8h
+dd 0455d92d3h
+dd 0be25cbcah
+dd 0f078c4f5h
+dd 06a85982dh
+dd 05ca12c9bh
+dd 0c0f966a8h
+dd 08c9a1ed1h
+dd 03535f6ech
+dd 0e5b8af26h
+dd 087215807h
+dd 02c2de968h
+dd 0d1321770h
+dd 09d7ea1cfh
+dd 0cc3d92cbh
+dd 03509fdc6h
+dd 0f7f34929h
+dd 01e9c812fh
+dd 0963248eah
+dd 035a334b2h
+dd 0f174e1e3h
+dd 04ce2792eh
+dd 02634bbceh
+dd 02e1cb1c7h
+dd 0120cc509h
+dd 0ec6b771ah
+dd 0e25bb79eh
+dd 05bc76f90h
+dd 0bca051a9h
+dd 0cb847906h
+dd 08714f4eeh
+dd 0bb712d59h
+dd 0750d836dh
+dd 053da1593h
+dd 05d744afch
+dd 0dc8756f5h
+dd 0e754d541h
+dd 03c87f4d9h
+dd 047016851h
+dd 03228a370h
+dd 09b6b4a51h
+dd 00c1d22dbh
+dd 0f2048a5dh
+dd 0e7d2d056h
+dd 0111424eah
+dd 08ef9dd2fh
+dd 0a44d114fh
+dd 0cede085bh
+dd 072eb1d4ah
+dd 0d7c6058ah
+dd 06f551254h
+dd 0d89940b3h
+dd 0dd949a76h
+dd 09df7e5a5h
+dd 0ecd8ee2ah
+dd 02461c3b2h
+dd 037a24940h
+dd 001469814h
+dd 04257591ah
+dd 092024964h
+dd 0d28c0c63h
+dd 046bbe655h
+dd 0ab060d6ah
+dd 0b4110b2bh
+dd 0406e617ch
+dd 0ce3aad88h
+dd 0324e1ed5h
+dd 0fd1ab909h
+dd 0eb5ae1e7h
+dd 089ef5000h
+dd 09d503043h
+dd 0582dcb12h
+dd 0f55da68ah
+dd 0fe7b3a6ah
+dd 0630a1113h
+dd 0e321036eh
+dd 0caaf0de0h
+dd 0282ae071h
+dd 0469917bbh
+dd 087c26ea4h
+dd 07f408aech
+dd 0b1ece471h
+dd 0f1eaa39ah
+dd 02886c6cch
+dd 002d093c5h
+dd 03a00c7adh
+dd 00bb56642h
+dd 0ee83183ch
+dd 085b8cc6dh
+dd 06d947c41h
+dd 08c6bd0beh
+dd 0ae5a3c33h
+dd 0ee545eb0h
+dd 0d5a8d716h
+dd 0e411472ch
+dd 04897f977h
+dd 0e31c4feah
+dd 0a57b0799h
+dd 05802fe3eh
+dd 05919dfd6h
+dd 0c40284a6h
+dd 0f946fb17h
+dd 0437fdd84h
+dd 055ad4327h
+dd 0ab18364ch
+dd 0fb706e06h
+dd 04027aea7h
+dd 08393faabh
+dd 023f35035h
+dd 01604df12h
+dd 0683545f1h
+dd 0a3192ea7h
+dd 0036f8f85h
+dd 016c67cf1h
+dd 0bd87e54ah
+dd 0ff2aa718h
+dd 0e0967e3ah
+dd 0facb2f74h
+dd 00c8c97f2h
+dd 047469b1ch
+dd 07cdfd5eah
+dd 0626800a4h
+dd 0adf7f14fh
+dd 08af89eadh
+dd 06006e1f2h
+dd 035148e40h
+dd 0ace4fc54h
+dd 0562a363bh
+dd 0745f2131h
+dd 0da9b3caah
+dd 0dfdb209eh
+dd 06ace5f0dh
+dd 06f972c28h
+dd 02682dc0eh
+dd 01f113f37h
+dd 061c0983eh
+dd 05d5568f2h
+dd 05749c92bh
+dd 0d889a9aeh
+dd 0ba719c50h
+dd 04c4a3112h
+dd 018fd63f7h
+dd 03a086c75h
+dd 0bf520021h
+dd 0ec87a5c8h
+dd 00b6f31adh
+dd 0ef25dc8bh
+dd 0c226d897h
+dd 0e074222bh
+dd 0c03dd8b2h
+dd 08c648a75h
+dd 0ed48f098h
+dd 018ee49c0h
+dd 090aea786h
+dd 0742ecdb2h
+dd 0faa505bfh
+dd 0009e5699h
+dd 0f32eef91h
+dd 09131a70fh
+dd 07703be8fh
+dd 05b1933d8h
+dd 0912cf9a8h
+dd 0870d18d5h
+dd 00464e678h
+dd 0292c93a6h
+dd 065707663h
+dd 0be972521h
+dd 0a53f4471h
+dd 0e7f7f0c7h
+dd 00f5d00eeh
+dd 0e14e553fh
+dd 0c321e90ch
+dd 065aaf711h
+dd 0033683abh
+dd 0ac836522h
+dd 00f2702dch
+dd 0edcc2a58h
+dd 04e3a87e4h
+dd 0b5f18947h
+dd 0e06a55e4h
+dd 0e316b12dh
+dd 08e00cf4dh
+dd 0ef8e8494h
+dd 05048dd33h
+dd 011e33e76h
+dd 0ec9d128dh
+dd 0b54a5837h
+dd 0f1a7722ah
+dd 0ba2c81c3h
+dd 0f2d2288bh
+dd 0f13edb0ah
+dd 0ed39c177h
+dd 006d024a0h
+dd 0f46fb577h
+dd 0f10e7a23h
+dd 06668c070h
+dd 0498b673fh
+dd 0e43c8b75h
+dd 03cba6fach
+dd 026525f42h
+dd 01cb66c73h
+dd 08e90336dh
+dd 0b871b22dh
+dd 0e2b9a057h
+dd 0ebc8a0afh
+dd 0ac7066e1h
+dd 0548d3501h
+dd 0e7581429h
+dd 018b5db20h
+dd 0edbe0e75h
+dd 063e37c3bh
+dd 0da2f14abh
+dd 05c7c822fh
+dd 02f3cb6e4h
+dd 05015b225h
+dd 0a4d8a7d9h
+dd 035020d9ah
+dd 096e9cb6ch
+dd 032a816bdh
+dd 06e6b8c40h
+dd 057704e26h
+dd 0cc5162f7h
+dd 0aa92b210h
+dd 0085ce344h
+dd 0a17200e1h
+dd 0f9f99684h
+dd 0b04df1f3h
+dd 0040d3e90h
+dd 0abbd7c43h
+dd 0f6a5bb94h
+dd 047b53cd9h
+dd 09c5b8c6ch
+dd 07c1defdah
+dd 0035324c9h
+dd 0557032b8h
+dd 01ff9b417h
+dd 057ed0996h
+dd 0ef2f6a27h
+dd 0967d54d6h
+dd 0a3e245d8h
+dd 01ce117dbh
+dd 065186be0h
+dd 00128ac91h
+dd 0bfb29974h
+dd 0083ec1fch
+dd 0d73a2c4dh
+dd 0e151f533h
+dd 0c709947dh
+dd 056ebc9afh
+dd 02893b9d1h
+dd 03fb086fbh
+dd 0b1216638h
+dd 07d9137c9h
+dd 06a7949d0h
+dd 048981bb6h
+dd 00d856c6eh
+dd 0bbeecc9ah
+dd 0f6ff3523h
+dd 078c84cbah
+dd 031024171h
+dd 0abc5f8e2h
+dd 09dd1f09ah
+dd 0f55cec28h
+dd 0b7c86a75h
+dd 0490af1beh
+dd 04c244508h
+dd 041e7731dh
+dd 0e2b86290h
+dd 0edf74fdah
+dd 06749b802h
+dd 0ce2bfa1dh
+dd 098de9fa3h
+dd 0144175b9h
+dd 08c12d1f1h
+dd 0f5894afeh
+dd 0b42a757fh
+dd 01f0579c0h
+dd 09203289dh
+dd 0b605448eh
+dd 06b11789ah
+dd 028c9cc93h
+dd 084c42394h
+dd 0552bd0d9h
+dd 00632298bh
+dd 055a81b4eh
+dd 0ac3d168bh
+dd 081720986h
+dd 0154eed5fh
+dd 06f98a9a3h
+dd 0fdb1ce6ah
+dd 0a6a44098h
+dd 0a59b15b9h
+dd 036a0a643h
+dd 048b1c648h
+dd 0e3031b74h
+dd 035fa3420h
+dd 0268e23a2h
+dd 086d1d2cbh
+dd 054223a54h
+dd 0c4e0be52h
+dd 09bf0863dh
+dd 0f1c0b291h
+dd 045b7c3bch
+dd 09a84742fh
+dd 041c73003h
+dd 01bb383beh
+dd 0e3b1e02bh
+dd 0909528b5h
+dd 059150ed7h
+dd 0efd55e57h
+dd 0ad5d0926h
+dd 065b03d24h
+dd 0bbf6ee7dh
+dd 08129d165h
+dd 0433449edh
+dd 0521dbb8bh
+dd 0ebce9cadh
+dd 0e047239dh
+dd 07f13ca6ch
+dd 0bb0b4717h
+dd 0702e3c7eh
+dd 0e431f0f8h
+dd 036fd9f08h
+dd 04b8a1854h
+dd 059caa30dh
+dd 0422f5089h
+dd 0a6658811h
+dd 0032f8d18h
+dd 02221b3bah
+dd 07ece7d8bh
+dd 0f2dc60d5h
+dd 01f4c663bh
+dd 0ec7858c7h
+dd 0823e4824h
+dd 0adc3985fh
+dd 0b6edf830h
+dd 0a4170575h
+dd 06346b726h
+dd 02ccf924ah
+dd 0ea2e1434h
+dd 0264b4374h
+dd 0532195efh
+dd 095b19b49h
+dd 08b89ef0eh
+dd 0df9670c8h
+dd 0796ab0ebh
+dd 09de0856fh
+dd 00d2c5861h
+dd 023fa67f0h
+dd 0acdd00e8h
+dd 00b56945dh
+dd 038343c7bh
+dd 0926d65f8h
+dd 00f742ebbh
+dd 0e9d11939h
+dd 01997e54ah
+dd 08ec38498h
+dd 0f3c833abh
+dd 01ee16f2bh
+dd 0e18f91bbh
+dd 0df9db878h
+dd 05a26ff28h
+dd 02fe41b8dh
+dd 01f52aec7h
+dd 0631a0259h
+dd 0b0b2fec8h
+dd 04db8adf4h
+dd 0add02716h
+dd 0b9542fdfh
+dd 08c37346ch
+dd 0685a9019h
+dd 04ab71a75h
+dd 0b334c84ah
+dd 0a0a88204h
+dd 07e72a53fh
+dd 0e6567ec6h
+dd 062faa7e9h
+dd 04b628c13h
+dd 02194fa8ch
+dd 08ae57b77h
+dd 09c4a7ea7h
+dd 0c6807831h
+dd 0ecdb4a78h
+dd 024f64af2h
+dd 0cf147bcah
+dd 03aca3307h
+dd 02bfaf84dh
+dd 097de37e7h
+dd 028ad2182h
+dd 067853112h
+dd 0b5d14311h
+dd 0965e786dh
+dd 06f70b496h
+dd 0944ab562h
+dd 0f4c8c32ch
+dd 0ba9c50f4h
+dd 038183b01h
+dd 08fc230ebh
+dd 078e4dcafh
+dd 0e2b979b0h
+dd 055e2fdf7h
+dd 068e69d36h
+dd 0b3acea51h
+dd 0b157481ah
+dd 0995715dch
+dd 0b52b3114h
+dd 01556e988h
+dd 03ca0ae3bh
+dd 0b7f151dah
+dd 097c8a92bh
+dd 060b2ac02h
+dd 02966d145h
+dd 05c12f469h
+dd 07fd614b8h
+dd 0db1f37d9h
+dd 01695be2ah
+dd 0a54743cbh
+dd 06dfa9984h
+dd 0af5c8d54h
+dd 0a8a9aeeah
+dd 03e0d05d2h
+dd 097d0ffe7h
+dd 0c5dd4313h
+dd 00436062ch
+dd 0590486d4h
+dd 0587e7de9h
+dd 04995032bh
+dd 032bb9a7fh
+dd 09ee49aceh
+dd 0c82b9f6ah
+dd 0746e2cf4h
+dd 0a344cca2h
+dd 059ee86a5h
+dd 0f1af6894h
+dd 0449faa9bh
+dd 047fa72c6h
+dd 08d89af81h
+dd 047072ebeh
+dd 06cec6825h
+dd 00879295ah
+dd 0845aa4a3h
+dd 0c8b0e786h
+dd 0d053d625h
+dd 024d91d2eh
+dd 01d40b8b8h
+dd 0112a13b6h
+dd 0890a3863h
+dd 09c7a4570h
+dd 03c349955h
+dd 0fc6ee5dfh
+dd 009c64773h
+dd 04b25a0d2h
+dd 0f8efb9ddh
+dd 01298f82fh
+dd 04c0bfbc3h
+dd 06db5bcaah
+dd 0d767a18eh
+dd 081af5830h
+dd 04739c190h
+dd 0bc66d0d2h
+dd 0c2a78791h
+dd 0c74b3feah
+dd 00c8f55deh
+dd 0c2873355h
+dd 090ae52feh
+dd 0c9dfe955h
+dd 0a9760c28h
+dd 0bb9f0222h
+dd 0b6ec5d69h
+dd 0cb56e137h
+dd 0d0d86c63h
+dd 0a1354731h
+dd 01ec3976bh
+dd 035da9059h
+dd 0e31062a3h
+dd 046a81a73h
+dd 091459f3eh
+dd 08319311ch
+dd 014ca051bh
+dd 0ce6663d2h
+dd 0c68f1035h
+dd 06ac0c76eh
+dd 0ce9e47e5h
+dd 01a43daabh
+dd 0b9a376e8h
+dd 054ec0673h
+dd 0d7dbc28ah
+dd 0925602b6h
+dd 09182e060h
+dd 071572dbdh
+dd 08bc063aeh
+dd 0d0597fb5h
+dd 0d2a4b7a0h
+dd 0455597a1h
+dd 0ff6f24d4h
+dd 0e7c341b5h
+dd 0759f5780h
+dd 0a59b0f35h
+dd 09cfd67c1h
+dd 0373b75a4h
+dd 0a2324461h
+dd 025522a8ch
+dd 08d40cbcah
+dd 049b192c6h
+dd 0e319eb44h
+dd 04a67369eh
+dd 0a5e32142h
+dd 0807984c8h
+dd 0e78b1822h
+dd 0db543b9fh
+dd 0a9b330cah
+dd 06c02234fh
+dd 0dd63c51ah
+dd 0be9def0ch
+dd 0e45917deh
+dd 044aca188h
+dd 0d09e24dbh
+dd 02827cfcch
+dd 0cd9549c5h
+dd 055f51014h
+dd 03c538ae6h
+dd 0b7c463bfh
+dd 0130c8953h
+dd 0a3961650h
+dd 074566909h
+dd 0625e6749h
+dd 0ac9f85d5h
+dd 074aadf62h
+dd 08f7e83c2h
+dd 0bdd69356h
+dd 0f77d4b6ch
+dd 014346719h
+dd 0f6236543h
+dd 0a46f47d7h
+dd 0aa3d121ch
+dd 08d4160f1h
+dd 0e0c722b0h
+dd 0ef8d79a0h
+dd 0edae8a90h
+dd 0d00c42abh
+dd 0a2832bb4h
+dd 057929b77h
+dd 0fddad08bh
+dd 0c88c0817h
+dd 0577f70e5h
+dd 037cb957eh
+dd 0fe75092fh
+dd 07196c6f6h
+dd 0c82adb9ah
+dd 0f6ad4497h
+dd 0b4594f53h
+dd 04c6a1270h
+dd 02fc54d09h
+dd 001ca1bebh
+dd 02b873984h
+dd 09323eba9h
+dd 0e66e4693h
+dd 051a7effah
+dd 0bc787540h
+dd 0f39566f9h
+dd 06c91e8ech
+dd 0be5e5590h
+dd 0e8b5bbd4h
+dd 028031e52h
+dd 0447a3e73h
+dd 025d1386bh
+dd 0f6c478afh
+dd 0778ea602h
+dd 008deb3f0h
+dd 0a755706bh
+dd 09dc873e1h
+dd 0e802d5f8h
+dd 02a72f80ah
+dd 0c7d7b50ch
+dd 04334fd67h
+dd 0f6e1ecc3h
+dd 06a47e3d1h
+dd 09eb6516ch
+dd 001674d1eh
+dd 0d89e0bd3h
+dd 0cfb2e0cah
+dd 0cf077a10h
+dd 0e85f999eh
+dd 09e9abe96h
+dd 08ca47996h
+dd 0fd43e956h
+dd 0a2eb4058h
+dd 0e8723190h
+dd 048780e03h
+dd 03c0baa01h
+dd 093ee3034h
+dd 0674e07d9h
+dd 07cda76bah
+dd 08a1f65ach
+dd 00f637647h
+dd 0e6c35c33h
+dd 001a596f1h
+dd 0abd54639h
+dd 09b212195h
+dd 023b9c1d5h
+dd 00d868aeah
+dd 0e3d88cb6h
+dd 095e12f42h
+dd 0168122eeh
+dd 07cc03579h
+dd 0a877a7f9h
+dd 0115fbb5eh
+dd 05cf89acah
+dd 06a10ed2ch
+dd 0e2469783h
+dd 009a178b2h
+dd 084c60ad8h
+dd 092dc50adh
+dd 0fc0613cbh
+dd 03b95b503h
+dd 0379073a1h
+dd 0a5ecd2b3h
+dd 0857c17a2h
+dd 01e941d33h
+dd 0f160d707h
+dd 055e691afh
+dd 0689c8537h
+dd 0e73f3fa9h
+dd 0270c8cfdh
+dd 02672aafbh
+dd 091b6ebf9h
+dd 0ba978f37h
+dd 08a11f7bfh
+dd 0dddddce2h
+dd 0c631cbbbh
+dd 0d0390c69h
+dd 084b77da8h
+dd 0e3f7e871h
+dd 021ca3060h
+dd 0fd520e4ah
+dd 07d50fbfbh
+dd 08cf82b16h
+dd 0c44126aah
+dd 0b8c9f98dh
+dd 098622623h
+dd 0dd9dc4c3h
+dd 0f8af85d2h
+dd 0d67d863bh
+dd 0a13be80bh
+dd 07c794a0fh
+dd 0374d931ch
+dd 024cb0f0eh
+dd 0bbd4a4a0h
+dd 080e1c9a4h
+dd 02213151fh
+dd 0e0bcb944h
+dd 093eb7f04h
+dd 08acf053eh
+dd 089e4b3a9h
+dd 055daf043h
+dd 0e2dbcd6fh
+dd 03a6202a4h
+dd 0f4d28a5ch
+dd 0fb52eaf7h
+dd 0504ba13dh
+dd 0bd4988bfh
+dd 040a45cb4h
+dd 091d69328h
+dd 021eed8f6h
+dd 025cfc09dh
+dd 05ae76bfah
+dd 09e2127ebh
+dd 0840b169bh
+dd 084d36718h
+dd 0156f535bh
+dd 07ee9c9dah
+dd 09301291dh
+dd 0934a3d68h
+dd 02d9e444ch
+dd 01bdc3e49h
+dd 0aaa3e38ah
+dd 051ca493ah
+dd 0651c75d6h
+dd 016f94e17h
+dd 01d8e1194h
+dd 0ebadc60bh
+dd 0cdb0c449h
+dd 064856604h
+dd 0399fe3c9h
+dd 055759019h
+dd 00ecb2003h
+dd 0db43a632h
+dd 0c5eda94bh
+dd 0eeaf11ceh
+dd 05cc471ceh
+dd 007c7e0ebh
+dd 03fd2d148h
+dd 0fb4c70b2h
+dd 0ba7cb994h
+dd 0b44c93aah
+dd 0f35b377eh
+dd 0b7879f7ch
+dd 026bd4eb3h
+dd 05558edb1h
+dd 03f8d45ddh
+dd 0d01b07cfh
+dd 08c180432h
+dd 0b0594974h
+dd 04807eb20h
+dd 03732861bh
+dd 04aad6fc3h
+dd 0576802deh
+dd 0b278c274h
+dd 09e74e07bh
+dd 0dc9518d6h
+dd 0a2559350h
+dd 0090c89abh
+dd 012f40e21h
+dd 0f37846aeh
+dd 03baf0536h
+dd 078b311c1h
+dd 03e17f081h
+dd 0e91ac64ah
+dd 0d3bbfe2eh
+dd 0b0558aech
+dd 0dbad605ch
+dd 0a77fab19h
+dd 0abb05bbfh
+dd 02bdb557bh
+dd 0b0b546a2h
+dd 0ad9c7370h
+dd 00ccabc20h
+dd 0a3982a15h
+dd 072a8adb1h
+dd 0eb01a4f3h
+dd 081b469b1h
+dd 032e62410h
+dd 08aec85b2h
+dd 038bcf742h
+dd 06592cee6h
+dd 0a119ce05h
+dd 0ec529ef8h
+dd 037f3d62dh
+dd 0860eb381h
+dd 00dc89a45h
+dd 049fd83fah
+dd 0eb36bac0h
+dd 0908cafaeh
+dd 0ec1e62abh
+dd 098e94ee9h
+dd 0973a690fh
+dd 09e589a5dh
+dd 0a6799e43h
+dd 02da25e56h
+dd 090e0d860h
+dd 04f2821a0h
+dd 0ab8ed54dh
+dd 00ce8cb35h
+dd 0b8676c38h
+dd 041ff60b2h
+dd 0c285269bh
+dd 0863dc337h
+dd 0272b922bh
+dd 0d219eb1ah
+dd 0433c509dh
+dd 0e26cff0fh
+dd 03b3900f4h
+dd 01b80be70h
+dd 02e13fb8ch
+dd 0c68117bbh
+dd 0e280afbeh
+dd 0c7645a2ah
+dd 0bb7e2cc0h
+dd 07b0c878fh
+dd 0e5ccfe6bh
+dd 08351888dh
+dd 06a1b2c4fh
+dd 00a6c3e0ah
+dd 0d87ad1b7h
+dd 0b03b597dh
+dd 0a20ee0b1h
+dd 0e03d558dh
+dd 0c5f8ec07h
+dd 0fd3a0cdeh
+dd 0a093f140h
+dd 099010377h
+dd 0a0468045h
+dd 0d97cb621h
+dd 03bf86e83h
+dd 080355653h
+dd 0c3cbda4eh
+dd 010d46312h
+dd 04270212bh
+dd 060d83a4eh
+dd 0cc7615d5h
+dd 0f7a84b71h
+dd 02c102ee0h
+dd 0fc7087b3h
+dd 0260f2734h
+dd 0c059aae7h
+dd 01c46a317h
+dd 0807966e6h
+dd 074d05e9dh
+dd 0daf26841h
+dd 0f8fcfedeh
+dd 01c03b3c6h
+dd 0f0d4c427h
+dd 0bee5515eh
+dd 01cb80cf9h
+dd 07c3fff26h
+dd 0195dc2abh
+dd 087565ed6h
+dd 09529eea5h
+dd 0b145e5c4h
+dd 0b9fa8401h
+dd 095434fa4h
+dd 0daf6ae2ah
+dd 0a082a633h
+dd 04d8a875fh
+dd 04e8a800bh
+dd 0e19054b9h
+dd 002394b4eh
+dd 0075481a1h
+dd 0f8d46937h
+dd 038399481h
+dd 0d2448b0dh
+dd 01403c989h
+dd 0b3e279b7h
+dd 09aa2cf1ah
+dd 0e24de53eh
+dd 050843c20h
+dd 0da24bffdh
+dd 01bc99b8bh
+dd 00657a241h
+dd 0a3749babh
+dd 0a3a6ea6fh
+dd 016c450edh
+dd 08924ca5dh
+dd 0018dd5f9h
+dd 003296857h
+dd 05c3351d9h
+dd 0f223a355h
+dd 04b0cc1e6h
+dd 065a28309h
+dd 0fa7edf50h
+dd 079b050c5h
+dd 0e50c671eh
+dd 08e1374cah
+dd 01811e0a7h
+dd 0e3d21c4dh
+dd 0d7733bcdh
+dd 001d5c0c5h
+dd 069b256ddh
+dd 017f26bbch
+dd 0e94e09a3h
+dd 0216e4e79h
+dd 0dffd97c0h
+dd 0701b1a19h
+dd 0455ca4e6h
+dd 09e89a147h
+dd 0555afe29h
+dd 014ab88afh
+dd 0c0be050ah
+dd 06170c905h
+dd 0a354760bh
+dd 0b757b3fch
+dd 0ec7e6531h
+dd 041edaeb5h
+dd 05ea40ec7h
+dd 0af756009h
+dd 0886b23f5h
+dd 00c312963h
+dd 051afbde1h
+dd 0d0539056h
+dd 0d0fc7976h
+dd 0460dc704h
+dd 066d5e2cch
+dd 0c7e81603h
+dd 09cdf1c39h
+dd 0035b0447h
+dd 0f0bf63ach
+dd 0e9dd7b1ah
+dd 0bf25a7a5h
+dd 0e951c16dh
+dd 0f43d2af0h
+dd 049c601fbh
+dd 02f0e69a6h
+dd 0dfa561d5h
+dd 039fc0ebeh
+dd 0d67d5fd3h
+dd 0122ebeddh
+dd 03738408fh
+dd 016e1921ch
+dd 0deec471bh
+dd 05d5dd7abh
+dd 0a3c5393bh
+dd 0e2818abch
+dd 0efaeea5bh
+dd 08df20612h
+dd 02e85a17ah
+dd 0f29eeb96h
+dd 07b1a9130h
+dd 0f982edc1h
+dd 0efdc4009h
+dd 02421c607h
+dd 0a537c41eh
+dd 09e0a8e68h
+dd 0a25268c2h
+dd 05a98bb01h
+dd 0269a4255h
+dd 09d320bc9h
+dd 04f5818f6h
+dd 09dfbd41eh
+dd 0315260feh
+dd 0d31008c2h
+dd 0bc6bf67ch
+dd 08410f1adh
+dd 0e97c6980h
+dd 0b6573447h
+dd 019e662d1h
+dd 0782b454eh
+dd 0dddb9dd3h
+dd 03adb9185h
+dd 0e7b825b2h
+dd 0e9558820h
+dd 0f060a8efh
+dd 087e996ddh
+dd 0f18f4a07h
+dd 0b105f51ch
+dd 0d5b7d778h
+dd 029ccd18ch
+dd 0c3f525aeh
+dd 06001db4fh
+dd 03ef0cec4h
+dd 004579c9ah
+dd 0852d0347h
+dd 05fb68634h
+dd 015b5ecd3h
+dd 0e487bd58h
+dd 021f408a4h
+dd 0467e57cah
+dd 0df21e9a5h
+dd 0a15a295ah
+dd 01f573fe5h
+dd 0d49d3fc0h
+dd 0c4a0d6f1h
+dd 0e1161071h
+dd 099590d30h
+dd 0f2ee21c3h
+dd 0949e6696h
+dd 0c6f82529h
+dd 0536409f7h
+dd 00214d265h
+dd 0ab62746fh
+dd 086e96e82h
+dd 06c6004fdh
+dd 046d25455h
+dd 0cf8bd9b3h
+dd 0629d7e23h
+dd 072412282h
+dd 07d60ea35h
+dd 0ebbb4281h
+dd 0dddd0ecbh
+dd 03b23a9c0h
+dd 05a09be64h
+dd 0859eb3f8h
+dd 0290b2ddeh
+dd 0a1d7e269h
+dd 056f13767h
+dd 04f0d5ef8h
+dd 0fbef94c1h
+dd 0038c01edh
+dd 008193a87h
+dd 0a85dfaa4h
+dd 02f81ebf6h
+dd 09c81e404h
+dd 09ba189d1h
+dd 099446994h
+dd 0155254d0h
+dd 0e8621f37h
+dd 0dede0822h
+dd 0adf349cbh
+dd 0ac542619h
+dd 0491f6cf3h
+dd 0c4f03aebh
+dd 00ad2bf54h
+dd 0aa856fb8h
+dd 05d43943dh
+dd 0eda1a931h
+dd 020062bd0h
+dd 044bc440bh
+dd 01f1a86b4h
+dd 0845260b4h
+dd 072e4831ch
+dd 0707e5d05h
+dd 054b97b71h
+dd 0bde8d844h
+dd 05df79abdh
+dd 0e38d8d06h
+dd 0ad735be2h
+dd 0603cf28dh
+dd 09bca5040h
+dd 0d700c086h
+dd 08de9a967h
+dd 033b87b43h
+dd 015a06ce2h
+dd 01b3753cch
+dd 04c2acea0h
+dd 020c2bf83h
+dd 00e5292c3h
+dd 016f3d738h
+dd 05c950148h
+dd 06e08bdceh
+dd 0eb8e3b6ah
+dd 02a3bd683h
+dd 0406151cfh
+dd 08a640d3fh
+dd 0572cb658h
+dd 0fabff37eh
+dd 0286697a6h
+dd 0555c3a8fh
+dd 0a3baa342h
+dd 0239cebedh
+dd 08cc877b4h
+dd 0bcc7d763h
+dd 0260edd2bh
+dd 021987bfeh
+dd 08159fe31h
+dd 0a82554dbh
+dd 0c4b316c7h
+dd 097156f0ah
+dd 007a0a834h
+dd 04f61b036h
+dd 056c86283h
+dd 0b9520f5eh
+dd 0d7b49893h
+dd 00f59c5c5h
+dd 0db5df54ah
+dd 05892c51eh
+dd 0f62202afh
+dd 06c7b2ccch
+dd 0813041f0h
+dd 0cd5bc11ah
+dd 0a809bff0h
+dd 0c03bd2bdh
+dd 07fd75ed7h
+dd 01e6a1c55h
+dd 048ca8053h
+dd 0440af3f5h
+dd 013ffec88h
+dd 00c13f8a5h
+dd 0c00db67ch
+dd 0a16bb29eh
+dd 06830883fh
+dd 0a3b954d9h
+dd 0307ac895h
+dd 0680cccefh
+dd 0807033f7h
+dd 03723b11eh
+dd 07f5a5c12h
+dd 0e6fea025h
+dd 0474a9a43h
+dd 0fa17ac02h
+dd 0531e585dh
+dd 0bed7b9afh
+dd 0be9e4f91h
+dd 0e8c4f582h
+dd 08a83297dh
+dd 0acc3d6e8h
+dd 016f89211h
+dd 05112fadbh
+dd 0afef9d23h
+dd 0d0484a8dh
+dd 0a7f58ba4h
+dd 0d24971aeh
+dd 06890349ch
+dd 0c3f6e1e7h
+dd 03a77288ch
+dd 06e6241d4h
+dd 096d7fb81h
+dd 0c0d89735h
+dd 0ef9ef3b8h
+dd 0c740fabah
+dd 0a93ae5e4h
+dd 026c878b6h
+dd 0f42fc81ah
+dd 0bba07f9eh
+dd 05925bbe8h
+dd 0964e4e06h
+dd 00ff1e6b0h
+dd 03deee09ah
+dd 0420b9b7dh
+dd 0dfc5d1adh
+dd 0a0f895f0h
+dd 0ae72f130h
+dd 0f6ddca61h
+dd 03297e84ch
+dd 0549b0906h
+dd 0e7661201h
+dd 0ea6cc7beh
+dd 0f2d2f8f7h
+dd 01b7fbbdfh
+dd 0f73b00bbh
+dd 077365d42h
+dd 0c838effdh
+dd 0404bbeadh
+dd 0c2534763h
+dd 08ce83ae5h
+dd 08cdc1417h
+dd 035dd88b7h
+dd 00efaafcbh
+dd 0caa6bdffh
+dd 0c61cf9e1h
+dd 01a122df9h
+dd 07502269ah
+dd 0cac1b245h
+dd 0b6087a70h
+dd 006b18d2ah
+dd 09468dfa7h
+dd 0519718e7h
+dd 0b0596220h
+dd 0eadf37deh
+dd 0bece68e4h
+dd 074d77624h
+dd 09ff08716h
+dd 020af062ch
+dd 02d74fa60h
+dd 055a3ac81h
+dd 0a18a88efh
+dd 0887c84c1h
+dd 060610332h
+dd 0b579a729h
+dd 030e8d947h
+dd 05f3df8b9h
+dd 01be6a43fh
+dd 001498f03h
+dd 0604b80dah
+dd 0ff9f1c23h
+dd 07b517080h
+dd 0706c4e2ah
+dd 09af88594h
+dd 032f8577bh
+dd 0cdd4920dh
+dd 0ba0eaa04h
+dd 09ac4f5dch
+dd 02e773a3bh
+dd 0032edfe9h
+dd 0398b37deh
+dd 009bfdf3bh
+dd 0df9007a6h
+dd 0c02688ddh
+dd 01db4e33dh
+dd 0bcf5c368h
+dd 0d493f0d6h
+dd 0c042bd41h
+dd 0ba9182c6h
+dd 02546f912h
+dd 053a75caeh
+dd 09d91bd0ah
+dd 03c4d8bf4h
+dd 02ac8c057h
+dd 0cb54a45bh
+dd 0ff945aceh
+dd 047ab3caeh
+dd 02338a34ah
+dd 0e8fffa1ah
+dd 0c636417dh
+dd 09483e22bh
+dd 0ee0276fbh
+dd 00013eb39h
+dd 068ae2bd1h
+dd 0c0a0b7e4h
+dd 0064cf994h
+dd 082bf8a04h
+dd 035e4b34eh
+dd 0bf7ad06fh
+dd 06c6371d4h
+dd 09f296c5ch
+dd 0439e2a70h
+dd 08f3539f2h
+dd 09835dc82h
+dd 02b576ac7h
+dd 01178b448h
+dd 0d892e51dh
+dd 0a6648a25h
+dd 01cd8619bh
+dd 00f9c4ff4h
+dd 037357b73h
+dd 0f8eee0c6h
+dd 091fe9e16h
+dd 0a3c94c83h
+dd 01726d467h
+dd 09c94dfa3h
+dd 0f301462eh
+dd 029076321h
+dd 04c8ab67bh
+dd 04796487eh
+dd 0b37991fah
+dd 0078758f2h
+dd 0dbeedd4fh
+dd 02d611f7ah
+dd 0d08757b5h
+dd 00115eeafh
+dd 0c6b9e7b3h
+dd 09e4c80bah
+dd 0e095aed4h
+dd 06d4f52ach
+dd 04f91cf58h
+dd 09dbd57e0h
+dd 07f90acf3h
+dd 0326d3ab0h
+dd 08c786022h
+dd 055a5aa4ch
+dd 0f0a34c98h
+dd 047f72921h
+dd 0348ed6c8h
+dd 079817ca8h
+dd 02b4180a4h
+dd 0825de163h
+dd 0dfe3cb41h
+dd 0d2761adfh
+dd 0de1c0cc6h
+dd 02cf24876h
+dd 011fcd4ach
+dd 04fd0b906h
+dd 0ed161c99h
+dd 07f7c41cbh
+dd 04b609c47h
+dd 0c5e28255h
+dd 0e7c0f940h
+dd 0be13d6c2h
+dd 0be766c13h
+dd 0bb80e791h
+dd 01bd06320h
+dd 08cd6e5c4h
+dd 036f46268h
+dd 0a24465a5h
+dd 0832a025dh
+dd 0d03523f7h
+dd 05090e885h
+dd 016633089h
+dd 0bb14051fh
+dd 0bb0f08a5h
+dd 0e469732ah
+dd 03dafc3eah
+dd 0a50776cah
+dd 09a3d745ch
+dd 08c72fe7fh
+dd 02fb08f9eh
+dd 0b4eac5a0h
+dd 02877ab0fh
+dd 09158b94ch
+dd 096d5792eh
+dd 065cc8c01h
+dd 00ff6580bh
+dd 029b6a22ch
+dd 089a56e04h
+dd 0b7ac303bh
+dd 0bc3fa08bh
+dd 0b61925f2h
+dd 0212fb78ch
+dd 089ee2d20h
+dd 0210dd0f9h
+dd 0076dc92eh
+dd 01bc5834bh
+dd 0cc32fea9h
+dd 067928f1dh
+dd 0842a431ah
+dd 06838826dh
+dd 01d1f91c7h
+dd 051bb21cbh
+dd 0f156243ch
+dd 00d39031ah
+dd 057290525h
+dd 0366d6120h
+dd 03851b84fh
+dd 0209ed6cdh
+dd 04b85b742h
+dd 068468e15h
+dd 00e770363h
+dd 04d6ce296h
+dd 0a527b571h
+dd 01d9d3111h
+dd 087f2756dh
+dd 0af9eba1dh
+dd 0e8fcd4cch
+dd 0a1cfd9f5h
+dd 01d8ffde9h
+dd 03431f4b6h
+dd 0abbb4c2dh
+dd 0a3d40413h
+dd 07a97057ah
+dd 06fbf73e7h
+dd 040a5ba30h
+dd 0da04f261h
+dd 0baaaa5c5h
+dd 0487e95b9h
+dd 0f3da6232h
+dd 064145178h
+dd 0324eb02ah
+dd 0b6969dc8h
+dd 013692414h
+dd 0c96f834bh
+dd 0054f0ff5h
+dd 01c222dffh
+dd 0bf1b4ac1h
+dd 091455ee0h
+dd 0a17ac5f4h
+dd 0796b5d93h
+dd 06dec7808h
+dd 0d93745dfh
+dd 047fb828ah
+dd 009da1065h
+dd 071a4a237h
+dd 0323f6f21h
+dd 053c3ba40h
+dd 0f03d27bdh
+dd 0793ea592h
+dd 015c3e154h
+dd 0f09e4f49h
+dd 046a206f2h
+dd 059ed36b5h
+dd 0acd890bdh
+dd 0db65cde7h
+dd 070ae2815h
+dd 0eab399a9h
+dd 0b91636fch
+dd 0b80f6bf2h
+dd 0e9f2260dh
+dd 0f3eb44bfh
+dd 0fd860d69h
+dd 06825a2bfh
+dd 070820c76h
+dd 0140a1eb5h
+dd 01e319d3fh
+dd 0128384ach
+dd 0991410fch
+dd 0a4e23f55h
+dd 03e0f6b6ah
+dd 07908976fh
+dd 0351ee82bh
+dd 040ac4461h
+dd 0ea511450h
+dd 041a48a26h
+dd 04f12cfc6h
+dd 04004f96bh
+dd 07c58fa08h
+dd 04ef04bc0h
+dd 03ab0bf25h
+dd 0dbf64137h
+dd 032282426h
+dd 0f071f05bh
+dd 0b963648dh
+dd 03c500e50h
+dd 0ce68941ah
+dd 08fd1235dh
+dd 03c16f8f2h
+dd 09f517e0dh
+dd 0d1edf098h
+dd 07da912ddh
+dd 02de239bah
+dd 0e2ac1cc9h
+dd 0984620b2h
+dd 02da4ea87h
+dd 0dccf6879h
+dd 076882ae3h
+dd 03a329967h
+dd 0f32ef25dh
+dd 0d7df74a6h
+dd 0cb1761b4h
+dd 096a99482h
+dd 0173b7dach
+dd 0d66dc030h
+dd 09475823bh
+dd 00a77d81ch
+dd 020326d02h
+dd 007e8efb9h
+dd 0ad3bd7b3h
+dd 08f8fc768h
+dd 0ea138a8fh
+dd 09095fb1fh
+dd 06fef9ce9h
+dd 03d12cd03h
+dd 040b81bfbh
+dd 0517df3afh
+dd 061519b19h
+dd 0563d2c84h
+dd 0a03a1ef3h
+dd 06ed38e21h
+dd 0f8d3bb16h
+dd 088603a73h
+dd 040425cedh
+dd 0f94dac29h
+dd 020567665h
+dd 0d8af4516h
+dd 0a21aafb9h
+dd 0b0a6d3dah
+dd 0567b00a1h
+dd 029a509e7h
+dd 080d8a751h
+dd 0d72c8ae5h
+dd 05a91c179h
+dd 085f83df6h
+dd 0f97be883h
+dd 08e81e333h
+dd 036013c3eh
+dd 0da84b659h
+dd 0d42836c0h
+dd 09f223efch
+dd 00eb3fd67h
+dd 0c5e765e9h
+dd 0202326cdh
+dd 0a9701c17h
+dd 07185d685h
+dd 06ad7a41dh
+dd 0d354e859h
+dd 0bd288413h
+dd 076e70408h
+dd 01e128e94h
+dd 0d9d30c41h
+dd 0a33448dch
+dd 0107faaech
+dd 0a393296dh
+dd 03d8417feh
+dd 023c68e51h
+dd 0f1f7c370h
+dd 0b8098d41h
+dd 0f62b2704h
+dd 0c65a6fbbh
+dd 0b53b9986h
+dd 0b6af28aeh
+dd 0a21bfa1ah
+dd 0371923f1h
+dd 056889c59h
+dd 0af85eb47h
+dd 0600cdf6ch
+dd 0ee9880c0h
+dd 047aa6ea2h
+dd 03cadceabh
+dd 0a967e572h
+dd 049601954h
+dd 024d32e50h
+dd 0c173872ch
+dd 085a009b1h
+dd 04755a2e8h
+dd 0a0683fe1h
+dd 031b6ce08h
+dd 03f1b4c02h
+dd 0831b70b1h
+dd 00a2a60e3h
+dd 02b099d2dh
+dd 00b96f955h
+dd 077b7ae1eh
+dd 09d2b42cbh
+dd 05b4e4815h
+dd 0e50a043bh
+dd 07dc35168h
+dd 012e099beh
+dd 0321c73dfh
+dd 0c2dda4f2h
+dd 0b1a7184fh
+dd 071d544f2h
+dd 00338a120h
+dd 00e7bf7cfh
+dd 0bac0326ah
+dd 0c196b96dh
+dd 0a1dbb383h
+dd 09eb68702h
+dd 0232113c8h
+dd 06611f51ch
+dd 0684ee5eah
+dd 0a874c964h
+dd 07bdd6a4dh
+dd 0c37ba858h
+dd 0a99907a7h
+dd 0f65e57d6h
+dd 05fbe679ch
+dd 0f2e765e5h
+dd 0112d606ch
+dd 02b33a247h
+dd 0c0a7e358h
+dd 09245b04bh
+dd 01e3399b8h
+dd 0631b6928h
+dd 004b3a535h
+dd 084860e59h
+dd 023ce8b39h
+dd 0a7d1e5a6h
+dd 0451094beh
+dd 0c7a14882h
+dd 0b3f0f0e2h
+dd 0f9aced8fh
+dd 0a02f41e9h
+dd 08903ddfch
+dd 09acaad0ah
+dd 0a5fa2e59h
+dd 0caf7325bh
+dd 0b21b3359h
+dd 0b1de3e8ch
+dd 0ad147d32h
+dd 0dee06eafh
+dd 0625301bah
+dd 0772a1e33h
+dd 0709b75d0h
+dd 0521d0ed8h
+dd 091b7248fh
+dd 0bf5a7ba7h
+dd 013bbc00dh
+dd 01386d222h
+dd 00eac79f5h
+dd 052028ffbh
+dd 0dfe47370h
+dd 005aaa428h
+dd 0375e667eh
+dd 02e685984h
+dd 04407ce17h
+dd 09754c155h
+dd 0ed06d5f0h
+dd 00f2e40e4h
+dd 0364b96ebh
+dd 0facdf8adh
+dd 0b208e451h
+dd 0751f8fach
+dd 0ab7eda21h
+dd 0a684bed8h
+dd 07fde89b8h
+dd 0baccb7a3h
+dd 06f09922eh
+dd 041a7de51h
+dd 0b7b6c84bh
+dd 0161e9d50h
+dd 0d28016a5h
+dd 067065794h
+dd 003525fach
+dd 0a5456891h
+dd 062412b1eh
+dd 0f15bf539h
+dd 0154c3c90h
+dd 08e145309h
+dd 00ed0ebe0h
+dd 0df9f65cbh
+dd 0234657d3h
+dd 0cfe3974dh
+dd 01eb6f449h
+dd 063700044h
+dd 03724a320h
+dd 033de5d7ch
+dd 0df45718ch
+dd 0046bb89dh
+dd 00cdcb619h
+dd 0066dae18h
+dd 0471ce1a7h
+dd 04bd460bfh
+dd 05b0b67f8h
+dd 061e3e8e9h
+dd 0d792ea6bh
+dd 0f3fbb5ddh
+dd 06a3a49feh
+dd 0ca0e01e0h
+dd 0e9582547h
+dd 0888243d3h
+dd 000f8df67h
+dd 0bc9ef9dch
+dd 060e45085h
+dd 0f24bf7d4h
+dd 0bf01d89ch
+dd 0c4fca569h
+dd 0390aca70h
+dd 06b15a28ch
+dd 01f453d7ch
+dd 0c8cd8c68h
+dd 025e56fcfh
+dd 0e67697c3h
+dd 09f26712dh
+dd 02d00ac9bh
+dd 077d54bdbh
+dd 0ad71ffaah
+dd 0ee80a899h
+dd 01379e7c4h
+dd 0a4de584fh
+dd 03c5bd3b0h
+dd 0d65cddb7h
+dd 0e0888f36h
+dd 09734151ah
+dd 06a681aa6h
+dd 0c09fb2b4h
+dd 0885160a2h
+dd 04806bcf1h
+dd 0bd7cadb2h
+dd 0142f58ach
+dd 0c0bab3dfh
+dd 0f3d59f07h
+dd 0e56e33fbh
+dd 0ac7ad1dbh
+dd 03da55d5ch
+dd 09ed6d589h
+dd 0c01f4507h
+dd 04ceef353h
+dd 0cc081efdh
+dd 002a746cfh
+dd 036e4b4e9h
+dd 0983de125h
+dd 0ab739a80h
+dd 0945eb207h
+dd 0395784d5h
+dd 0f131b17eh
+dd 03cd8e5d3h
+dd 0686aa45fh
+dd 0052b8d17h
+dd 0162fee94h
+dd 00bbec675h
+dd 071627101h
+dd 0a8909735h
+dd 0c4164a75h
+dd 0f5e76ba2h
+dd 02eb098d9h
+dd 007714925h
+dd 03af742b8h
+dd 0a080f634h
+dd 05d308caeh
+dd 09c239b5bh
+dd 09d002b0fh
+dd 0800244feh
+dd 026115d14h
+dd 08b2c106dh
+dd 0b6892b40h
+dd 0400c589ah
+dd 0a900aa91h
+dd 074893da0h
+dd 0a1262a4dh
+dd 002825bb7h
+dd 064076016h
+dd 02ebb1e21h
+dd 0d993bd28h
+dd 0cfd21865h
+dd 008d35b6dh
+dd 0d75e2c38h
+dd 0a30a9ea2h
+dd 03af99cf8h
+dd 016b0a074h
+dd 0f512a63ch
+dd 0f14c0624h
+dd 05d7a7447h
+dd 0dc7529d2h
+dd 01b6e693ch
+dd 05a0a4d0eh
+dd 0a4d11837h
+dd 0a45ecc1fh
+dd 03b0935abh
+dd 0ea0306b5h
+dd 05fc65036h
+dd 0c58e8532h
+dd 004d57da8h
+dd 033587c68h
+dd 042de362ah
+dd 08a86b69ch
+dd 072108de7h
+dd 062b35e67h
+dd 0fc7ce664h
+dd 0b705abcdh
+dd 07632e272h
+dd 05357ddc7h
+dd 0093b9f40h
+dd 07d5893fah
+dd 0ff8ceb99h
+dd 009fcc5b6h
+dd 0a2a299cah
+dd 0e983557fh
+dd 0d25cd52fh
+dd 0d05da638h
+dd 0a2926da1h
+dd 01f026f28h
+dd 0c31916d7h
+dd 0f3611c7dh
+dd 0e97c50f7h
+dd 0ee3e2a6ch
+dd 0aea25310h
+dd 08e253eb6h
+dd 0a435f386h
+dd 0327bb0b5h
+dd 0386a150dh
+dd 012547553h
+dd 0d242a576h
+dd 0855af226h
+dd 0ab8a03fch
+dd 00c6ad9a9h
+dd 08ad07585h
+dd 00c5c8024h
+dd 05006ea39h
+dd 039c5edb2h
+dd 03447f31dh
+dd 0958372f7h
+dd 096017ce1h
+dd 0469a0754h
+dd 037fc525ch
+dd 035d4d209h
+dd 05d8df219h
+dd 01136dc92h
+dd 056a77f4fh
+dd 0f028a119h
+dd 01d3d273eh
+dd 0c90963ffh
+dd 06c21342ch
+dd 084c14cbah
+dd 08cb37388h
+dd 0dbfc84cdh
+dd 0501ede3eh
+dd 074fb6c28h
+dd 048d517efh
+dd 08427e101h
+dd 0cedf6553h
+dd 06d1108e8h
+dd 017619f61h
+dd 0f522a3aah
+dd 08a261ec8h
+dd 005df0383h
+dd 0a3ff51e2h
+dd 08131b486h
+dd 00bb16a1fh
+dd 0738fc460h
+dd 0df99a2f0h
+dd 0351a1f31h
+dd 0d1311bcfh
+dd 054eebb67h
+dd 0232fe24bh
+dd 041b3cbe1h
+dd 0738177ceh
+dd 0d45d5c49h
+dd 067b59725h
+dd 027da1bdah
+dd 089924045h
+dd 0bf90825fh
+dd 014573d9bh
+dd 03e2f735ah
+dd 0755ac79eh
+dd 0aea562a0h
+dd 0096d9b1dh
+dd 063c683a9h
+dd 03b86c10fh
+dd 013c146efh
+dd 0a21765afh
+dd 0a4ca903ah
+dd 00969c3c1h
+dd 09585a616h
+dd 0da5137d8h
+dd 005e165f9h
+dd 08fc0a2f0h
+dd 0cb835aafh
+dd 0a285efb1h
+dd 031a394b9h
+dd 0d278dcd0h
+dd 02a8a27ebh
+dd 05d162ae2h
+dd 09c991f3fh
+dd 0892d7c5bh
+dd 0bdafa9a0h
+dd 04eb22dc4h
+dd 0f49e1c06h
+dd 01bc709bfh
+dd 08c19142eh
+dd 081e16587h
+dd 04d88b66eh
+dd 055e71ba9h
+dd 0e33f208dh
+dd 07456e280h
+dd 038ba390bh
+dd 0bc68cb12h
+dd 05ddcdbf0h
+dd 0ab1b5fb9h
+dd 03c66e77ch
+dd 058c67d22h
+dd 0b7af46cdh
+dd 0c32791afh
+dd 03538a70bh
+dd 0f0233b61h
+dd 0376f9e59h
+dd 03b46e6b5h
+dd 0887c5549h
+dd 002b404b1h
+dd 0666a27d5h
+dd 0dae08ca6h
+dd 09f9e225dh
+dd 006222959h
+dd 0a5181de7h
+dd 043be2736h
+dd 04d1f93a1h
+dd 0642f289bh
+dd 07de329a4h
+dd 01c805429h
+dd 07dfff878h
+dd 07e99d072h
+dd 0103f33b6h
+dd 049aeb09dh
+dd 072699d84h
+dd 0525f10f3h
+dd 0963f4142h
+dd 052c6b2ddh
+dd 0952d8099h
+dd 098f5edeeh
+dd 0665878fdh
+dd 01a7b3ad1h
+dd 0fd595a22h
+dd 076227219h
+dd 0806c019ah
+dd 04e2fd2f4h
+dd 0b99f735ah
+dd 08e48a3bah
+dd 07a3c91cfh
+dd 0655ff07fh
+dd 0e3cf5e0bh
+dd 0dedba786h
+dd 05b25e12dh
+dd 0921adcbah
+dd 0c438bee8h
+dd 0fba23ff1h
+dd 0cd9468d4h
+dd 003958bc4h
+dd 05458718eh
+dd 09afe033ah
+dd 0085b3e01h
+dd 088f4464fh
+dd 01d18277eh
+dd 0589b15ech
+dd 0807b97c4h
+dd 0844745cdh
+dd 04237aabbh
+dd 0a3aa4e12h
+dd 0f94e4166h
+dd 04e4b511eh
+dd 0e6d078e9h
+dd 043c6d846h
+dd 055c816d3h
+dd 0b7d94db8h
+dd 05d462251h
+dd 0ac9dc534h
+dd 04306f1a6h
+dd 049390bd8h
+dd 02d6f5307h
+dd 00ac3bc4fh
+dd 0b6a4a88ah
+dd 0efe52bdch
+dd 0781c3ebch
+dd 0bd1e5dc2h
+dd 0ed9b9196h
+dd 01b9337dbh
+dd 07178076eh
+dd 01bf62bfbh
+dd 04896659ah
+dd 0dca7cdech
+dd 0236be879h
+dd 02983c1f1h
+dd 010058359h
+dd 0dbfedcf1h
+dd 0842b7ddch
+dd 0d1afe741h
+dd 01d02a8ech
+dd 0fbd41273h
+dd 0b5ee457ah
+dd 01e8afcbfh
+dd 0247c4d49h
+dd 0954aa8c2h
+dd 0dd0d0a46h
+dd 0d5db447eh
+dd 0bffd0921h
+dd 0c2746355h
+dd 06cf76b61h
+dd 0b6e73a8bh
+dd 0d1fc2c0eh
+dd 06c0b3765h
+dd 013b9fbf1h
+dd 00976c581h
+dd 0adad2c4ch
+dd 0cca374fch
+dd 0056355c9h
+dd 038484616h
+dd 012fbf75eh
+dd 0f4b90ec9h
+dd 0203a3572h
+dd 0c81ebc46h
+dd 01629b1d3h
+dd 00e5ec451h
+dd 0b2531b06h
+dd 0aa3f201ah
+dd 054305e4eh
+dd 05818ffbah
+dd 0a09853b6h
+dd 0a8ecb4d5h
+dd 04c844956h
+dd 06c6f1c2eh
+dd 03cc528f8h
+dd 0ba659568h
+dd 0181bf176h
+dd 0ae40fd5dh
+dd 0f6ab981dh
+dd 0462c32c9h
+dd 0ad0426a2h
+dd 05bba4027h
+dd 0be85eb99h
+dd 040332ab5h
+dd 0b75fde3fh
+dd 0013a0e5eh
+dd 04593f660h
+dd 03dfdf637h
+dd 06d0084d0h
+dd 02ba6c326h
+dd 06a201b16h
+dd 07e4c222ah
+dd 0605ca493h
+dd 007cecdfah
+dd 058407b2eh
+dd 00ad1793ch
+dd 0c89b93d7h
+dd 00fe3a2bch
+dd 0216c2bf2h
+dd 0e1c503bbh
+dd 051360bf3h
+dd 0f440bb2fh
+dd 0d8c85080h
+dd 045e08386h
+dd 0084d02e6h
+dd 00c0bdc81h
+dd 0e323d98ch
+dd 017f78ddfh
+dd 0f6d6f8b1h
+dd 0469246b0h
+dd 05879ea79h
+dd 07d3d74e3h
+dd 0d3cae183h
+dd 002fda7eah
+dd 0c0eb3a4dh
+dd 051ef63bah
+dd 0cae1cdd5h
+dd 08313df1bh
+dd 0702d46bbh
+dd 06c3777b7h
+dd 0b22d385ah
+dd 0ff4fd4aeh
+dd 093dd0f13h
+dd 023bcd81eh
+dd 097723c1fh
+dd 01592e7f3h
+dd 03901bcaah
+dd 01e5a0050h
+dd 0c782ca55h
+dd 0b88c7758h
+dd 078a4582eh
+dd 00bff4c4ch
+dd 01fa2443ch
+dd 0678d108fh
+dd 0231b2158h
+dd 01a1833d2h
+dd 069b1469eh
+dd 0953a5337h
+dd 0efdfbd33h
+dd 038f97d77h
+dd 039828adah
+dd 0eb2baf45h
+dd 03eb01336h
+dd 0f405aee6h
+dd 0a23037e3h
+dd 0f3df651eh
+dd 0d2a0647ah
+dd 0a53c2779h
+dd 0b5160a58h
+dd 0b5391bc5h
+dd 0e37beacch
+dd 0ffcad929h
+dd 0cf7a37f7h
+dd 04474c20bh
+dd 0a46b8bb6h
+dd 0bbcb5ca7h
+dd 0059ff6dbh
+dd 05201bee8h
+dd 028dc9b56h
+dd 046e7ebb8h
+dd 0798e3943h
+dd 066f5dea7h
+dd 01c1f9ec9h
+dd 0879ce23bh
+dd 0684b4c6eh
+dd 02e7ba3b8h
+dd 09c0f9784h
+dd 0724e8d17h
+dd 06fec72ach
+dd 04de06208h
+dd 06db6cd85h
+dd 0b9fef2d6h
+dd 0c299d210h
+dd 0a1741ad9h
+dd 0bc971683h
+dd 0408203d0h
+dd 006ed9abeh
+dd 008bb08e8h
+dd 0ac2f4649h
+dd 0be2ffb7eh
+dd 0b96e271eh
+dd 0b5973bf8h
+dd 0bbf45437h
+dd 00ccb4944h
+dd 066282acfh
+dd 06d0e8404h
+dd 051659b9dh
+dd 022f7503bh
+dd 04cf1f7d8h
+dd 0f685a69bh
+dd 000ed6bcfh
+dd 024290141h
+dd 0987eb282h
+dd 0e5d64175h
+dd 0cc815bfah
+dd 03749d491h
+dd 0dd7cd246h
+dd 0bf0a5791h
+dd 0971e9e95h
+dd 066dae97eh
+dd 0a58328f8h
+dd 080b3af87h
+dd 08a811c76h
+dd 0ad110818h
+dd 070495d09h
+dd 019ee1d75h
+dd 04682439fh
+dd 042c6a332h
+dd 0984bb3b3h
+dd 0560f45abh
+dd 0fd6f9a53h
+dd 03e5639b3h
+dd 0938c80e8h
+dd 0ef9eadc7h
+dd 0706bc30dh
+dd 049e77812h
+dd 06b043de8h
+dd 021e77d98h
+dd 00de01521h
+dd 0d3ef097ah
+dd 0f1c4568eh
+dd 01b35ded5h
+dd 0c273eb98h
+dd 0b9ebec9bh
+dd 0d99889b1h
+dd 04519e03eh
+dd 016a1ee20h
+dd 05cb56b84h
+dd 0c524f6b7h
+dd 063747b6fh
+dd 0ad86b9cbh
+dd 0413c5c54h
+dd 0bdbf54d7h
+dd 0ec4841fch
+dd 0dc892f31h
+dd 0374389e2h
+dd 05be26778h
+dd 0dfc611ebh
+dd 0ac21b79fh
+dd 02b9643a8h
+dd 0d42f24efh
+dd 06c4bcf6fh
+dd 0518920eah
+dd 06fc821d5h
+dd 0287af608h
+dd 09c9b2007h
+dd 08929e46eh
+dd 0420edc9fh
+dd 0dbb79437h
+dd 08a398a03h
+dd 0b8b439b3h
+dd 01913626dh
+dd 03f719d6bh
+dd 034ff3735h
+dd 0af0bff3fh
+dd 002e3c0a5h
+dd 0daa8df8fh
+dd 04bdede50h
+dd 0b2d08e44h
+dd 05dbf7821h
+dd 04b83dcf7h
+dd 0aaf16297h
+dd 0659b7a08h
+dd 065c93c7fh
+dd 01a011ccdh
+dd 02707634ch
+dd 0c4085975h
+dd 0fd8035e3h
+dd 0640701cah
+dd 0b5597b67h
+dd 0d382d1b3h
+dd 039d7c255h
+dd 0df676f8ch
+dd 058b5f610h
+dd 076ee34f0h
+dd 0e2090054h
+dd 0df3e34e6h
+dd 08e50f295h
+dd 0c9229c2ah
+dd 07ee7425dh
+dd 0236d2182h
+dd 0da67ad10h
+dd 06e7ec78eh
+dd 0b03b8aa8h
+dd 06ddc104eh
+dd 0cf2dfaf3h
+dd 0e753be59h
+dd 0c158f725h
+dd 0f5fe422ch
+dd 0dc5d57bah
+dd 050bf3504h
+dd 087d090d3h
+dd 05902236eh
+dd 064c7e3f7h
+dd 0f46fc152h
+dd 05a10a6f2h
+dd 08f18f031h
+dd 02c58f283h
+dd 01d52732bh
+dd 03203326bh
+dd 099387fcbh
+dd 0d33cf217h
+dd 0d2477dabh
+dd 040135f53h
+dd 017a20e70h
+dd 03bf8f4bch
+dd 07044ea16h
+dd 0f718a676h
+dd 0936e2130h
+dd 0d7cf806eh
+dd 0e56a70cfh
+dd 07d4566d7h
+dd 07713bc0eh
+dd 04909b1dch
+dd 02091672fh
+dd 0dfabc65ch
+dd 0614d7565h
+dd 069ab3d1ah
+dd 08e9b348fh
+dd 03b83bb95h
+dd 080b28855h
+dd 023a90f0fh
+dd 0f50e2521h
+dd 04725bc73h
+dd 0e5ab7dcdh
+dd 07a739547h
+dd 0902eb982h
+dd 0e59d6f89h
+dd 0d7e68aa1h
+dd 0e3fdeffeh
+dd 057056b34h
+dd 08a067cdch
+dd 051ed6e4eh
+dd 0637cf04fh
+dd 045b415ddh
+dd 076868097h
+dd 012094a30h
+dd 05374e07fh
+dd 09945e6b9h
+dd 08d7ba5d7h
+dd 006d54f7fh
+dd 0e4196722h
+dd 0e151c2e6h
+dd 05deea17eh
+dd 087b75160h
+dd 0406e0bb0h
+dd 006dbab6bh
+dd 094c05f72h
+dd 0d2c65ff3h
+dd 03e6c7d4eh
+dd 0f418a7a5h
+dd 0b43ff617h
+dd 01cf19bc3h
+dd 0f9328380h
+dd 08679c0d2h
+dd 00e13bf57h
+dd 06d65f5e1h
+dd 0b6432ab5h
+dd 04557109ah
+dd 04c2cc2afh
+dd 0458a5bebh
+dd 00c3d1539h
+dd 077b4f155h
+dd 05d7d944ah
+dd 0b3e3de83h
+dd 0c1e1d1c3h
+dd 0474ddcc6h
+dd 031a593fbh
+dd 0092900eah
+dd 09e8ae595h
+dd 0ee5344f1h
+dd 08a7ffee7h
+dd 04ebfb76eh
+dd 003da74fdh
+dd 0cf94a9e2h
+dd 01a32c64eh
+dd 0d8a2c427h
+dd 076deecfah
+dd 0bc53bad4h
+dd 0c391b222h
+dd 086d7da32h
+dd 02b17c8edh
+dd 0e5cbf698h
+dd 0c5f90704h
+dd 094783e0eh
+dd 02a56c468h
+dd 0e4db6422h
+dd 0c1458a93h
+dd 028542cb0h
+dd 0318bdf31h
+dd 02392b4efh
+dd 0b3be0aadh
+dd 0a22ce09ch
+dd 0d5e60679h
+dd 0559fbe2fh
+dd 050d4fe3dh
+dd 054589f9ah
+dd 0aa7191a9h
+dd 00f91dddeh
+dd 0bd27773eh
+dd 05fe349bfh
+dd 0595c43fbh
+dd 061a42c87h
+dd 0e5c29396h
+dd 017799f4dh
+dd 04b499bbfh
+dd 0ce95b64ch
+dd 029261cc2h
+dd 0b2b2eaach
+dd 06c68a830h
+dd 0e3859ec0h
+dd 00499cfe3h
+dd 04ddbd039h
+dd 051c4e073h
+dd 03fd6b564h
+dd 0a37777c2h
+dd 08e2d2791h
+dd 0dcb11d51h
+dd 075611a9dh
+dd 0c0837e9ch
+dd 069710360h
+dd 0c648d2e9h
+dd 0104fd054h
+dd 091727899h
+dd 0f542eec3h
+dd 08d6fd2bbh
+dd 04caba07fh
+dd 0107f1e1eh
+dd 0bd040b17h
+dd 092d746dfh
+dd 0a56478b1h
+dd 074102c83h
+dd 080397817h
+dd 0ea754f17h
+dd 041039892h
+dd 0ef43ca7ah
+dd 02d6e1a85h
+dd 0d7fb5da2h
+dd 003ff4cf8h
+dd 063653d8ah
+dd 0c804ff8fh
+dd 0da59c39ah
+dd 045b1a758h
+dd 041e7c157h
+dd 0985a73bch
+dd 099c11b17h
+dd 03742709fh
+dd 072defb1eh
+dd 09189b479h
+dd 0957dd6a7h
+dd 0699786e9h
+dd 0be4d32f6h
+dd 0530a3617h
+dd 004f73121h
+dd 040b8f75ch
+dd 0351e1053h
+dd 0b68b1ce7h
+dd 064fa101ch
+dd 08358aa28h
+dd 077331dc4h
+dd 06a55c3e6h
+dd 0f00c14a5h
+dd 0b624021eh
+dd 0f586beaah
+dd 0f420b500h
+dd 060a56a34h
+dd 0f9aee87dh
+dd 0a0e4192ah
+dd 072272abeh
+dd 0173c6593h
+dd 08c3dc52eh
+dd 033eaa5d0h
+dd 0d76f5e98h
+dd 01c6500d3h
+dd 06715ce72h
+dd 001905516h
+dd 04591456eh
+dd 013c4af2dh
+dd 0cc14f528h
+dd 0949e1b2dh
+dd 070578b79h
+dd 0f87ad23bh
+dd 0e97b43d5h
+dd 032dec10bh
+dd 0438cf583h
+dd 02383964ah
+dd 033f53c87h
+dd 001f5b844h
+dd 0dc31aa8ch
+dd 044129690h
+dd 011587e25h
+dd 04d4c1cfbh
+dd 040f50372h
+dd 0eb94229dh
+dd 096983e53h
+dd 034f20b67h
+dd 00a4ddeefh
+dd 0e046e8ach
+dd 01f42a116h
+dd 0790ea4e6h
+dd 01c860f8bh
+dd 06a41b863h
+dd 06379bc80h
+dd 006cc5b03h
+dd 036863a2fh
+dd 0a8b4de4ah
+dd 0981f7a52h
+dd 065e30a6dh
+dd 093ee30d4h
+dd 0886e4da5h
+dd 05928499eh
+dd 02a5e436dh
+dd 0df36f3f3h
+dd 048fe8987h
+dd 047386804h
+dd 02c0135ebh
+dd 07f783f79h
+dd 098fc4916h
+dd 07ae2aa4dh
+dd 037ef99a8h
+dd 0e374a80ah
+dd 05f9877e8h
+dd 08e167738h
+dd 049afd9bch
+dd 0a0d45b92h
+dd 0a43e65d7h
+dd 0c156731ah
+dd 0bb5ccf53h
+dd 00a663e5bh
+dd 0313892ceh
+dd 0b211ea42h
+dd 007c685cbh
+dd 04bef4fcbh
+dd 0928eac33h
+dd 0e80e8ec6h
+dd 004f328dah
+dd 0586a4634h
+dd 059d63e4eh
+dd 0d5373c43h
+dd 0118f5d6eh
+dd 0d7c10623h
+dd 0262956b8h
+dd 0be807285h
+dd 0c978697fh
+dd 0f87e12b6h
+dd 080f18f84h
+dd 0085d173fh
+dd 08236eac9h
+dd 01b40f8a7h
+dd 0ee043a07h
+dd 06e3cd475h
+dd 0e8703e19h
+dd 08fe76e9eh
+dd 0f91dda5eh
+dd 0d14ee553h
+dd 05c7aa594h
+dd 023c96dd6h
+dd 0870f1c12h
+dd 0d0937f63h
+dd 08f65b552h
+dd 03234ca34h
+dd 04d2d26edh
+dd 0bfc8c3e7h
+dd 0b19b5105h
+dd 0b63573a2h
+dd 057a3eb8ah
+dd 0f9eeeda9h
+dd 015d5da06h
+dd 0ca5802cch
+dd 03d5ab80dh
+dd 0e7eedb4eh
+dd 0fac1fd8eh
+dd 01cf9f153h
+dd 0bd737b36h
+dd 0885278c9h
+dd 091ec4680h
+dd 082cb7012h
+dd 02bc25c6ah
+dd 0c4f6567ch
+dd 07f0a1409h
+dd 046df62a3h
+dd 091a74b79h
+dd 017f380c2h
+dd 08e218c0ah
+dd 0c78bd18fh
+dd 07027119dh
+dd 075c6944ah
+dd 0866e8fd0h
+dd 0a2780920h
+dd 02488bb08h
+dd 0748aa3edh
+dd 0ed646339h
+dd 0e5faf34ch
+dd 08accbbd1h
+dd 0548be638h
+dd 0899efe49h
+dd 06f2a370fh
+dd 0ec0682cbh
+dd 0df516c68h
+dd 0a2fb213dh
+dd 0dcadd5eeh
+dd 00498b08ch
+dd 06c4b147bh
+dd 0c5721bc3h
+dd 08afce1b2h
+dd 0df409469h
+dd 0064748a1h
+dd 09848d6bfh
+dd 09fd8c787h
+dd 0e2061fddh
+dd 01b534890h
+dd 06f7ab93fh
+dd 012fb79ech
+dd 07f57811ah
+dd 0867cfef6h
+dd 0352457fah
+dd 07e60d10eh
+dd 0e43d8285h
+dd 091f48826h
+dd 041536fcdh
+dd 0e244c955h
+dd 021544ad9h
+dd 008ebb043h
+dd 0652cc5abh
+dd 0644e623fh
+dd 0a722ecaah
+dd 008c16f0bh
+dd 0548a5e0bh
+dd 0256df3b9h
+dd 030e231f5h
+dd 043534018h
+dd 0b19cf9adh
+dd 0bb519877h
+dd 041c5ae93h
+dd 084b86483h
+dd 06af6149eh
+dd 025669f38h
+dd 09a3bd494h
+dd 002b0f3d9h
+dd 02136b234h
+dd 0029e5980h
+dd 0f0a0b47ah
+dd 05c8b42b0h
+dd 0f7de1085h
+dd 03f747128h
+dd 0c30b0d35h
+dd 09a1de6dbh
+dd 06c3c7b78h
+dd 031242780h
+dd 0d3efd62eh
+dd 0b4c877cfh
+dd 06c401fa2h
+dd 0fcaa82cbh
+dd 0493a1b45h
+dd 0e69afd4bh
+dd 04867b84bh
+dd 042d5fb03h
+dd 0fdd49a32h
+dd 056e76107h
+dd 0881ef307h
+dd 0442faae6h
+dd 05b3409c2h
+dd 03aab0e25h
+dd 0b1b31027h
+dd 003b40b71h
+dd 03c081c92h
+dd 0cb5ce294h
+dd 05542346bh
+dd 0d30115dah
+dd 08cc90d3eh
+dd 0daad092ch
+dd 08602bfefh
+dd 01c1fc4deh
+dd 02de06538h
+dd 0e6151221h
+dd 051433ebdh
+dd 0c0abb9a3h
+dd 0b208b99ah
+dd 00851345ch
+dd 071a87501h
+dd 05bd11136h
+dd 02a3b7354h
+dd 0a6fd7be5h
+dd 0d37e503bh
+dd 00710cdcdh
+dd 00dfc1453h
+dd 08076f53eh
+dd 09efd1f18h
+dd 04fe6a727h
+dd 08406787ah
+dd 011dffac8h
+dd 0315b4113h
+dd 0d9dc53ceh
+dd 087864855h
+dd 0cc708b85h
+dd 037780614h
+dd 02f013f0fh
+dd 06b63f041h
+dd 0522f8d1ch
+dd 000c3ac9dh
+dd 07678b263h
+dd 01736c2e1h
+dd 05679c502h
+dd 02c1da985h
+dd 0a4e74007h
+dd 00cab9e61h
+dd 0ca54f210h
+dd 001cac89eh
+dd 0f490d0dfh
+dd 0ac84c0bah
+dd 08e16f8a1h
+dd 014e1a07fh
+dd 0ac1c2b28h
+dd 0be83128eh
+dd 03b8b109eh
+dd 0097aebc6h
+dd 0a343d6f8h
+dd 067fa4a3bh
+dd 07c307f3eh
+dd 03719fba5h
+dd 08b17000bh
+dd 0f8697301h
+dd 0fffce1afh
+dd 0547f9829h
+dd 0d5fc5c96h
+dd 04720360eh
+dd 030fc3dd0h
+dd 032bd4095h
+dd 0e68e682ch
+dd 0c1d9326ch
+dd 08a273559h
+dd 0c9c4b611h
+dd 0d52b2069h
+dd 014e148ceh
+dd 02ec25b9ch
+dd 071fc923eh
+dd 0e25776b7h
+dd 03ffd3292h
+dd 037d6db76h
+dd 0bf2f671dh
+dd 02707cb4dh
+dd 08c8319e7h
+dd 0c39bb43dh
+dd 08346d977h
+dd 04f21826dh
+dd 0cb513dddh
+dd 086f4233ch
+dd 08d3c2546h
+dd 0d1897034h
+dd 01229ef7fh
+dd 0b43c1deeh
+dd 0bd8cda10h
+dd 0acb37271h
+dd 01741c295h
+dd 052bdd160h
+dd 052952b1bh
+dd 02967ac20h
+dd 05b531436h
+dd 0db440883h
+dd 0170631d9h
+dd 0aef08034h
+dd 0df142e8eh
+dd 010c2024ah
+dd 0444194f5h
+dd 016520b68h
+dd 041f95f5bh
+dd 0178c1f92h
+dd 0fa128079h
+dd 05598dd43h
+dd 0e7405e72h
+dd 037acbbb3h
+dd 0ec21ef44h
+dd 0e0cfcb7fh
+dd 023ce3006h
+dd 0ddb5393fh
+dd 0dcf7b3f0h
+dd 0d5efbd51h
+dd 0ecb7e0f5h
+dd 098232c3ah
+dd 05cade400h
+dd 032fa1740h
+dd 07e565c20h
+dd 0e946c670h
+dd 01b29c081h
+dd 00c05c533h
+dd 0a658a4edh
+dd 0fd68c8a6h
+dd 070f2701bh
+dd 04ecd61b6h
+dd 0a9972b32h
+dd 022f57215h
+dd 0fd924700h
+dd 07032d201h
+dd 05f337b66h
+dd 02d14a35dh
+dd 01d83deb7h
+dd 066e83697h
+dd 098d8700ah
+dd 073b3d116h
+dd 06b1abd70h
+dd 0ff0a1775h
+dd 0af718de9h
+dd 0849682b9h
+dd 02409aaedh
+dd 051c167bch
+dd 097475b15h
+dd 08cd0c863h
+dd 0b5c51178h
+dd 0e848a384h
+dd 08a1a846dh
+dd 007370edch
+dd 047d4ef3dh
+dd 0baf378ach
+dd 01676ac44h
+dd 036791468h
+dd 04ffef6c3h
+dd 0130b55e3h
+dd 03e59bb1dh
+dd 0e024deeeh
+dd 043ec3539h
+dd 06905a3e0h
+dd 03f22a066h
+dd 0c641b732h
+dd 03551e3d9h
+dd 069317977h
+dd 087a07984h
+dd 0a23374cfh
+dd 07a96d691h
+dd 0fde2ae34h
+dd 051c068fdh
+dd 0faca7563h
+dd 0bfa0d7e5h
+dd 026df3c1ah
+dd 0b665074fh
+dd 0e28ddd89h
+dd 013a8bf0eh
+dd 0c0915b8ah
+dd 09a5498d6h
+dd 0b4cfe24eh
+dd 0a5d4dbc2h
+dd 09babe2d0h
+dd 0e8a46597h
+dd 0ac320f88h
+dd 0cd0ff3f0h
+dd 0541c0274h
+dd 04f94d6a1h
+dd 0a80b2725h
+dd 04807dd75h
+dd 0697b0e77h
+dd 0d2fddad6h
+dd 084ea5402h
+dd 00eb67e42h
+dd 0b122a4f5h
+dd 0e3c0fb53h
+dd 07c0270b4h
+dd 0de9ef03fh
+dd 00091ccbeh
+dd 0a83e2dbah
+dd 06c5a2986h
+dd 00e69a8f3h
+dd 08e193f50h
+dd 0bada9874h
+dd 003fd044ch
+dd 0cbfdbcceh
+dd 0621b67ech
+dd 06ef398ebh
+dd 05d093dcfh
+dd 0e17b62fch
+dd 082a46a7ah
+dd 014f86149h
+dd 039dfa982h
+dd 02881b6eah
+dd 05e1018e6h
+dd 0804e3e60h
+dd 0a10523d4h
+dd 0b096b52ah
+dd 0f84bef66h
+dd 0318a2dbeh
+dd 010fd7175h
+dd 0734ed36ah
+dd 0692ec977h
+dd 0d02908f7h
+dd 033ca3b24h
+dd 0b29918a4h
+dd 0d14738adh
+dd 0c9856032h
+dd 06af7321eh
+dd 0329093e5h
+dd 01771f82eh
+dd 08b59d0edh
+dd 0b60a5b0fh
+dd 02e973d84h
+dd 002fdedbdh
+dd 0d281f2f6h
+dd 019866f80h
+dd 0f7e6d4c0h
+dd 0e252c7c7h
+dd 08c8eb14ch
+dd 0c79b10a3h
+dd 09fd3c9b3h
+dd 0891bed5fh
+dd 0a6f46bf5h
+dd 037adf91eh
+dd 0007dd2b6h
+dd 02f0e2ed6h
+dd 0761f7c42h
+dd 0e308b764h
+dd 094801be6h
+dd 0cf40c158h
+dd 0fd8bedc9h
+dd 021839d54h
+dd 05a497f88h
+dd 05e96929bh
+dd 0234fdd19h
+dd 016a9fa48h
+dd 0d2886953h
+dd 055f5415ch
+dd 0987add78h
+dd 0f18ac952h
+dd 0a7a01aafh
+dd 0189c2d47h
+dd 030ec7250h
+dd 02a8c8dcbh
+dd 03128ca20h
+dd 0f01d7454h
+dd 0645e48deh
+dd 0d49e71deh
+dd 014fae4d0h
+dd 0088ee6dbh
+dd 06b2fb5c4h
+dd 08181477ch
+dd 08556e15ch
+dd 05797bf20h
+dd 090dccc01h
+dd 040a5593fh
+dd 038d5df09h
+dd 03a31d596h
+dd 0b5a5b811h
+dd 0a6b485b1h
+dd 0acebb880h
+dd 08578bfdch
+dd 0edd8781fh
+dd 02855843fh
+dd 07b04108fh
+dd 0c48e0431h
+dd 0826cb108h
+dd 0ce1282efh
+dd 0b6127ebah
+dd 0ddb427bbh
+dd 06b360c88h
+dd 0e91390bbh
+dd 0fc9a0e68h
+dd 0d48d9c63h
+dd 0a999a867h
+dd 05896d995h
+dd 0f60ecdcdh
+dd 0aef95bd3h
+dd 0ff39dc73h
+dd 0d6cd5911h
+dd 01a820e82h
+dd 0ac303b23h
+dd 0785135a5h
+dd 00b068a50h
+dd 069ebf870h
+dd 06acdd67dh
+dd 0acbdbac9h
+dd 0c9862895h
+dd 080d7a420h
+dd 07d7afecah
+dd 0224d564ah
+dd 08683c823h
+dd 0bad3dc95h
+dd 0c603e757h
+dd 01da6fabah
+dd 001f715d5h
+dd 008dc3416h
+dd 05c1b72afh
+dd 0e4524bdbh
+dd 0f2c754cbh
+dd 0d164df1bh
+dd 0768a797eh
+dd 041670620h
+dd 0c1ceca1eh
+dd 024e25b2dh
+dd 09c03ec8eh
+dd 0f2cfada2h
+dd 02a34be6ah
+dd 0cb9c9215h
+dd 0295a4adeh
+dd 03327efb0h
+dd 08ee3e651h
+dd 0d5def788h
+dd 0123d7c9ah
+dd 055cd0201h
+dd 00da65f1eh
+dd 0700be143h
+dd 00570c617h
+dd 08b15606dh
+dd 051c3eb03h
+dd 0547487c1h
+dd 075644899h
+dd 0631de368h
+dd 06411f44eh
+dd 02d795012h
+dd 0b7b2dbe2h
+dd 0df1a043fh
+dd 0a11c0fc0h
+dd 065b0f60bh
+dd 096141d58h
+dd 091f2ab6bh
+dd 01a40ab0ch
+dd 0025a3037h
+dd 0f025b0d8h
+dd 063d8aad9h
+dd 0278c3733h
+dd 0ab4be6fch
+dd 09afc44b9h
+dd 01ab71c42h
+dd 00e1aafeah
+dd 0e42ac608h
+dd 06831e74bh
+dd 070709095h
+dd 0ddf3407bh
+dd 01e3b27a0h
+dd 0275d99e4h
+dd 06f45aab6h
+dd 085adefbbh
+dd 0d90e65dfh
+dd 0ece8fdcdh
+dd 0b3a93b8fh
+dd 045aa8a6ch
+dd 0578c93bbh
+dd 0f3fc262dh
+dd 0005ec81fh
+dd 0088e3330h
+dd 0ad2a50e3h
+dd 0ba2805feh
+dd 0e488c825h
+dd 0fd246213h
+dd 0068dfbe3h
+dd 02014528bh
+dd 0b049488dh
+dd 079558a12h
+dd 02dd55b48h
+dd 0d5d7ce46h
+dd 02dbb22e9h
+dd 05322d576h
+dd 0c0366497h
+dd 0e664fac3h
+dd 097fa00f9h
+dd 02ddbf81eh
+dd 0e9b6a879h
+dd 058b0f21fh
+dd 0cb59dd61h
+dd 0d9ffea76h
+dd 09b82addah
+dd 0c69b92afh
+dd 0f061147fh
+dd 0571e5428h
+dd 0ca2322dbh
+dd 0f31aa4b5h
+dd 03cfe3d96h
+dd 0eeaf32f3h
+dd 0c17012f0h
+dd 0d5f0ff37h
+dd 06d73dba8h
+dd 0ce8a6bbfh
+dd 027980b06h
+dd 059a34fe0h
+dd 05b408384h
+dd 0af566752h
+dd 016d13bf9h
+dd 0dc2df8aah
+dd 0460e803dh
+dd 05ca362a4h
+dd 0e33622b6h
+dd 034ba42abh
+dd 03a6062b6h
+dd 0a04ea2e8h
+dd 09b87134bh
+dd 015f27102h
+dd 0bc7e22b7h
+dd 05ab7851ch
+dd 089f9a706h
+dd 071a0585ah
+dd 062ba27f0h
+dd 049d14039h
+dd 02e164c17h
+dd 099f81017h
+dd 0e08406e5h
+dd 0ee8289e5h
+dd 0a59f3bcbh
+dd 03dd75d54h
+dd 0213da342h
+dd 0d83ece14h
+dd 0e7c31f15h
+dd 0656aa96fh
+dd 042161360h
+dd 048561120h
+dd 06336fee2h
+dd 0abb98b61h
+dd 08ce02f9bh
+dd 0116790ceh
+dd 01be1fbb9h
+dd 0a2c079ceh
+dd 0b50d3276h
+dd 06d95b8d2h
+dd 01bba8f3ch
+dd 0fd5c7ddah
+dd 0de0f9379h
+dd 0b3aa1e7bh
+dd 0980019e4h
+dd 048c66ce4h
+dd 0fa576579h
+dd 05d5c1fe6h
+dd 0df1a3485h
+dd 086c41ca0h
+dd 0f8f86014h
+dd 08c48e80dh
+dd 0985457c3h
+dd 0b160badah
+dd 0dee9006eh
+dd 077e2e18dh
+dd 0e067efd7h
+dd 0779a206fh
+dd 010c82e58h
+dd 0ccf63646h
+dd 00de6d96bh
+dd 0fc05ea64h
+dd 07a9f0f58h
+dd 08c21180fh
+dd 04a620f24h
+dd 02f25fc0ah
+dd 039c825b0h
+dd 0c3afa5e6h
+dd 03422e3d5h
+dd 00ced0cf3h
+dd 0cf32f090h
+dd 0b859fdb6h
+dd 0b8aef12eh
+dd 0e63f5dddh
+dd 09d908aa1h
+dd 0e1e9c365h
+dd 0f9d221e8h
+dd 0ce467195h
+dd 02e8cea86h
+dd 09ca579eah
+dd 08cffbb91h
+dd 07fabef50h
+dd 019098c4ah
+dd 0d8affa11h
+dd 0b963343fh
+dd 00ae5e080h
+dd 08584ccdbh
+dd 08b057c3fh
+dd 01f4efa4ch
+dd 0ed6788ffh
+dd 0e9f6f26bh
+dd 0afaa1da6h
+dd 0ecee18b7h
+dd 034f8e4efh
+dd 07d72c4d0h
+dd 0f07d78ech
+dd 0f5e1bf85h
+dd 0fcaf2973h
+dd 095edc0f4h
+dd 095b4a8a6h
+dd 0061cbdb3h
+dd 0090a8ed3h
+dd 047f7e326h
+dd 0b3ced56bh
+dd 0c812ef5eh
+dd 0661d01d1h
+dd 02a69ddb1h
+dd 0c79412bah
+dd 00fcbddf7h
+dd 06128bd4dh
+dd 008b49db2h
+dd 021b41f05h
+dd 08c5ffda4h
+dd 0d0a3d51ah
+dd 042ee5ad9h
+dd 0b80322d5h
+dd 07869e7c4h
+dd 025ee8057h
+dd 080628fc3h
+dd 005db4b0eh
+dd 0c30dafdeh
+dd 0c09ddacah
+dd 01b20ddf7h
+dd 0677be0ffh
+dd 0d5f486e4h
+dd 02ab3a072h
+dd 022118c51h
+dd 035db40c2h
+dd 0095a7b1dh
+dd 0f53666a2h
+dd 0fb16b7e1h
+dd 0d9d05891h
+dd 00eb6e3fbh
+dd 0dc007cd3h
+dd 0da151655h
+dd 0ede3fdc7h
+dd 0aeb694ach
+dd 0a7d687cch
+dd 06c0d010dh
+dd 07240bce1h
+dd 0af4c8a8dh
+dd 0421338f4h
+dd 0ddc8efe3h
+dd 0ba88be64h
+dd 05896ac0eh
+dd 0c6870ed1h
+dd 0f523c28dh
+dd 043d5adbbh
+dd 07683d23ah
+dd 053d568bah
+dd 00d62e5bch
+dd 05e3ddc1ah
+dd 0fe274da6h
+dd 019680865h
+dd 0622cb880h
+dd 0cdb591ffh
+dd 01adfca97h
+dd 05cd4b02ch
+dd 0ca8735a7h
+dd 0eeecffdah
+dd 088389e29h
+dd 0f216c1b4h
+dd 099e2aed7h
+dd 077d1339ch
+dd 0c986f68ah
+dd 0b6456bbah
+dd 08876fe47h
+dd 008d9491eh
+dd 0a8701372h
+dd 0c9ff2012h
+dd 0bddc62ebh
+dd 063a45542h
+dd 02e30ef13h
+dd 037c19b61h
+dd 0df9f36ceh
+dd 02ded1d3ah
+dd 09e70dc88h
+dd 086b1104bh
+dd 01aba2e58h
+dd 01b1008b5h
+dd 08379826eh
+dd 055575eb2h
+dd 0c5ba299fh
+dd 0616494ddh
+dd 05572b8a6h
+dd 0761f4792h
+dd 093af61ach
+dd 0e79a0e67h
+dd 08f27ccb3h
+dd 014f174b6h
+dd 051b71656h
+dd 0b2697852h
+dd 0c37e84b6h
+dd 008f5947ch
+dd 0512edddeh
+dd 023e022e3h
+dd 0785df43eh
+dd 0ce4858c9h
+dd 03c243cd5h
+dd 056845d64h
+dd 0de0c511ch
+dd 0e5d23a24h
+dd 0e4c2fafah
+dd 0fcd83ac2h
+dd 077e51f48h
+dd 0c8fd731fh
+dd 08c38f54ch
+dd 0470cfb8ah
+dd 00e7e9ae3h
+dd 0a0329e43h
+dd 026f13a1ah
+dd 0cfdb0dddh
+dd 0bbe7ef56h
+dd 0506c52a4h
+dd 07c8d1e1fh
+dd 05827ff6fh
+dd 0c8c7cfa9h
+dd 08830ed9ah
+dd 01f791914h
+dd 0c60610c4h
+dd 0b4ff65e6h
+dd 001c0cfe0h
+dd 0f779c25ah
+dd 0e844da8dh
+dd 05d3ba66bh
+dd 0855ecd11h
+dd 00356b387h
+dd 08674b5fch
+dd 0be1bdf64h
+dd 0b9cef91dh
+dd 0875156c2h
+dd 030476bbbh
+dd 043a70ba6h
+dd 034a50cb5h
+dd 0f0ec4e22h
+dd 0e3d1cb8ah
+dd 0f6222affh
+dd 0204bb900h
+dd 02418bbb2h
+dd 0676fafe3h
+dd 05c1ddb78h
+dd 05eaadfa3h
+dd 0591a3ab2h
+dd 0d1284623h
+dd 0b1b6a046h
+dd 04d357b6dh
+dd 0184bf1d7h
+dd 07adb2c49h
+dd 0b15f0e4bh
+dd 0eb0d213bh
+dd 0b185ba82h
+dd 02777afe5h
+dd 092285edeh
+dd 0b696baf4h
+dd 0e0fd1110h
+dd 0b0656eb9h
+dd 0552df7b3h
+dd 056cb8843h
+dd 01d80f809h
+dd 0deec4e53h
+dd 0cf330fa3h
+dd 0c5f55424h
+dd 0a1f1325fh
+dd 0eb08d0d1h
+dd 0065fb2adh
+dd 05f3732eah
+dd 0cd4c7371h
+dd 09ce489c9h
+dd 00d565fb4h
+dd 0080ded49h
+dd 09413cf5ch
+dd 015dd1551h
+dd 015628746h
+dd 04fe8e620h
+dd 0eaaeded5h
+dd 0f2d459e5h
+dd 0d0441c1eh
+dd 00326589fh
+dd 07db190adh
+dd 0c9266cf1h
+dd 0f008077fh
+dd 0e1b9b0feh
+dd 00ef253b8h
+dd 05cfff316h
+dd 0baf68917h
+dd 0aab36b23h
+dd 0cb2c6f90h
+dd 014885c25h
+dd 0b22c769dh
+dd 0b6e24628h
+dd 022854fa3h
+dd 0fec20225h
+dd 0e5d38a69h
+dd 07581c809h
+dd 0b686eedbh
+dd 0d1674126h
+dd 099d3e5cch
+dd 059f9a378h
+dd 0c815a5a0h
+dd 05cdbc236h
+dd 07f03ec5dh
+dd 0ad58a556h
+dd 0b5217aa1h
+dd 0a39602cah
+dd 0b4703a96h
+dd 04ee43327h
+dd 04995974fh
+dd 0a08b73f3h
+dd 0d1f2af60h
+dd 076d16ef6h
+dd 09b8d658fh
+dd 02bfc831eh
+dd 07cd5a328h
+dd 0d7c6501dh
+dd 06e284f43h
+dd 050f9d6bbh
+dd 075bffe5bh
+dd 02a3966e3h
+dd 07b8d32bdh
+dd 0d92a0af1h
+dd 039445059h
+dd 0b82c3fach
+dd 0d93fcd28h
+dd 0d9a67637h
+dd 06eb2c25ah
+dd 0431f1725h
+dd 0e7e020fbh
+dd 0f06545dah
+dd 038d40ccfh
+dd 0f91f4ff5h
+dd 057243233h
+dd 0628436aah
+dd 0d9cf0a54h
+dd 032ff1f33h
+dd 0b4b3668bh
+dd 0a74ca719h
+dd 0687b03e3h
+dd 01acfdda4h
+dd 0e6d4df48h
+dd 0452730e0h
+dd 00a2f5221h
+dd 0f81c9f3bh
+dd 0d2a17d2fh
+dd 01a2be0d1h
+dd 0ef34d889h
+dd 07c323bc0h
+dd 06f102ba3h
+dd 00934fb2bh
+dd 0b11d007fh
+dd 034a3d99ah
+dd 0d35e2e0fh
+dd 083a56310h
+dd 0d209b06ch
+dd 0210567e9h
+dd 084b1cadfh
+dd 02bdd2ad0h
+dd 0f22177fah
+dd 07828776eh
+dd 0cdf0c511h
+dd 0ed8d221dh
+dd 08b4ad854h
+dd 06f13bbffh
+dd 019469a48h
+dd 0d7d91cf5h
+dd 0ffcd1866h
+dd 092586876h
+dd 011f1bcfeh
+dd 0860aee02h
+dd 09eddff77h
+dd 0bf0363d3h
+dd 019864aedh
+dd 027eb6001h
+dd 017e07a0bh
+dd 0a819397eh
+dd 0ca650c1bh
+dd 09aefc7c8h
+dd 0483e59ddh
+dd 0981b0948h
+dd 07953d15ah
+dd 08641f5f9h
+dd 03f4d068ch
+dd 0453bf209h
+dd 0501fbfb1h
+dd 0113cfedeh
+dd 006359c3dh
+dd 08acb8a32h
+dd 0ccd1efc0h
+dd 02c473e7fh
+dd 0c85508bdh
+dd 0ea332dc3h
+dd 0addfaeb2h
+dd 03f5e9c5fh
+dd 0b6b7fa39h
+dd 01c51583dh
+dd 006e6dc74h
+dd 0f27559cah
+dd 08c32dc7ah
+dd 036cff2a7h
+dd 01dc18490h
+dd 0fdcc5fa2h
+dd 0e991550fh
+dd 06d2a917ch
+dd 03856cd6bh
+dd 0514d1774h
+dd 06488f3e4h
+dd 0724f5a54h
+dd 0e7bc79adh
+dd 0a33ef268h
+dd 05e45292ch
+dd 0e7e3dcb2h
+dd 0bd2259f7h
+dd 013d8d962h
+dd 0f9daa92eh
+dd 017ba4495h
+dd 00df53610h
+dd 034073d00h
+dd 01df9e26dh
+dd 04e6dde12h
+dd 0c9776fbeh
+dd 0e0f7c6cdh
+dd 00869bcb7h
+dd 09a980281h
+dd 0c4ecb181h
+dd 06bc0c4beh
+dd 07e20ae57h
+dd 0edf89b0dh
+dd 033d22ff8h
+dd 0b4996e62h
+dd 03da45b77h
+dd 0b357befdh
+dd 0aee0139eh
+dd 0cb719e8fh
+dd 081b1e522h
+dd 046969a87h
+dd 0b6029fa5h
+dd 064ea5b31h
+dd 08e992dfch
+dd 08a35eef3h
+dd 069045f46h
+dd 0d1305eaeh
+dd 0eac56786h
+dd 0f197374dh
+dd 0c11991ddh
+dd 026755c8ah
+dd 09be4dbefh
+dd 075bfa8cbh
+dd 09865c531h
+dd 01a3789b0h
+dd 03087b850h
+dd 0eae9048bh
+dd 0346276beh
+dd 011b389b5h
+dd 0dda286ach
+dd 0d4b9caf3h
+dd 06ee89283h
+dd 02d4c9f45h
+dd 0429e6edch
+dd 0b67dfc38h
+dd 0553f1cbeh
+dd 0b17b8287h
+dd 0ae2dfbd3h
+dd 0b95cf629h
+dd 068e88e28h
+dd 05c83ef44h
+dd 06df91254h
+dd 0630ab98dh
+dd 096b89e61h
+dd 0d0459181h
+dd 0cc4f334ch
+dd 0d1298db2h
+dd 08e8c1971h
+dd 0c71e7acbh
+dd 0c811d967h
+dd 051b4e583h
+dd 08314dc18h
+dd 0fcd7d274h
+dd 05b40befeh
+dd 0d765181bh
+dd 0e0de2a55h
+dd 04543e262h
+dd 0362a774ch
+dd 0a5fa7b04h
+dd 0c3618984h
+dd 04cf2f286h
+dd 0e9b15d3fh
+dd 0c7d9c448h
+dd 0022c90d7h
+dd 0c6b8dfa0h
+dd 029a16cb1h
+dd 050a3f07dh
+dd 00b57e258h
+dd 0a5ef0a6ch
+dd 0be358a2ch
+dd 073ab55d1h
+dd 0add10108h
+dd 069c43a91h
+dd 0118239c6h
+dd 0ecab4aa4h
+dd 0fd91f974h
+dd 0d0232412h
+dd 07df7d7d1h
+dd 0ff8ecfech
+dd 0bbfdec59h
+dd 03fd75cb8h
+dd 08dba10bdh
+dd 0b280980ch
+dd 047babccah
+dd 0ef711ec1h
+dd 00b8757cbh
+dd 00f03293ah
+dd 0014cff0bh
+dd 0159362f2h
+dd 0e9b18666h
+dd 03508b5d2h
+dd 06ceb24ech
+dd 0887e3cb2h
+dd 0c1355a04h
+dd 02721b65fh
+dd 0f731cc2dh
+dd 07bcd475ch
+dd 05cb75910h
+dd 02dd1d6e2h
+dd 0daf0c86bh
+dd 09ce8ad30h
+dd 02262b035h
+dd 047133ad1h
+dd 08a2fbbach
+dd 0cb8afcb7h
+dd 09b84dd2eh
+dd 07a15748dh
+dd 04d8d2d56h
+dd 08b9493a3h
+dd 04c909bb8h
+dd 039ee8e41h
+dd 0ae9828d4h
+dd 0da1c0e63h
+dd 00461c596h
+dd 030c816ddh
+dd 0c29eae89h
+dd 0b2ad1c1eh
+dd 0b873eab8h
+dd 0d57aaaabh
+dd 056b94a65h
+dd 013bbb217h
+dd 02a6564b0h
+dd 0cf9798bfh
+dd 09e9bbbaah
+dd 04f65a038h
+dd 0bf78c38bh
+dd 064985511h
+dd 051ee93d1h
+dd 0f8fe8338h
+dd 08b451d46h
+dd 0221b5bc3h
+dd 0df150057h
+dd 043a0182bh
+dd 083ee4aabh
+dd 09eff0b4eh
+dd 0d6af3d32h
+dd 0ed69ec8bh
+dd 086d84618h
+dd 0bd44d90eh
+dd 0604a2b9ah
+dd 0d5162613h
+dd 071c8f386h
+dd 06567ee76h
+dd 0ccf271e9h
+dd 061c7aaabh
+dd 08b47bf59h
+dd 079ee830dh
+dd 0e1a18308h
+dd 0cd6046bbh
+dd 0d57bc724h
+dd 031f555edh
+dd 0bc8deafah
+dd 03dc1ecdfh
+dd 0ef5b5e28h
+dd 012cc147bh
+dd 05c6dcb68h
+dd 0a8a0b707h
+dd 0456e3dafh
+dd 02362ebbch
+dd 07ba8ea1eh
+dd 098990fbfh
+dd 0972f58f7h
+dd 0252f1dceh
+dd 0959550d8h
+dd 0ba29671fh
+dd 036ccfce3h
+dd 01bd5a27ch
+dd 07c322ca9h
+dd 06490b4e1h
+dd 0e987cce3h
+dd 00150c082h
+dd 01258859dh
+dd 002da7c0ah
+dd 032760165h
+dd 0966e221bh
+dd 00aaaffd4h
+dd 02ee4a5c5h
+dd 0e135ba04h
+dd 06d60f639h
+dd 0628a6623h
+dd 01505679fh
+dd 09a0da64fh
+dd 01139bdc8h
+dd 0c8205dd9h
+dd 0a83a48feh
+dd 02fead0bah
+dd 0e83c443ah
+dd 0f0d95738h
+dd 07c091645h
+dd 0e36ed998h
+dd 025975211h
+dd 09038c985h
+dd 081114647h
+dd 01de2fbf6h
+dd 0929a93dah
+dd 0d2d3f31bh
+dd 0625338f5h
+dd 084779331h
+dd 09e6db8a7h
+dd 00bf8bb42h
+dd 00a393caah
+dd 0bfd5b7f4h
+dd 0e73ac4b1h
+dd 0e8ccef59h
+dd 0db8598b6h
+dd 078f36f2ah
+dd 0b3ecf620h
+dd 02b5ed55ch
+dd 0545f34cbh
+dd 0c8d8f16fh
+dd 02a6f76a6h
+dd 01ef2b380h
+dd 081a09ab6h
+dd 04b5d687bh
+dd 06d35842bh
+dd 068c9f7c8h
+dd 0cb8295ddh
+dd 09d32e32ah
+dd 0a1e08428h
+dd 0586dbacfh
+dd 006fa0fe8h
+dd 004819e1dh
+dd 0dd5fcbb1h
+dd 0e84cf3dfh
+dd 02d6bd4a3h
+dd 03e699a22h
+dd 0adffc102h
+dd 0d71028b5h
+dd 01ff9a594h
+dd 0870f41b2h
+dd 0dfab27b8h
+dd 06fca08d6h
+dd 04d1e09b1h
+dd 078ebb775h
+dd 0ea510dc4h
+dd 05942c6e8h
+dd 06080b3a2h
+dd 0204d28d3h
+dd 0f7f1bcc7h
+dd 00b300b38h
+dd 0aad09f46h
+dd 0a8e4f039h
+dd 0616cb558h
+dd 03e3c2ae4h
+dd 0d6baaf95h
+dd 05cf189d9h
+dd 099d8f912h
+dd 08b1841aah
+dd 0dda7f05eh
+dd 0a6220de5h
+dd 09e0bdaceh
+dd 062fde053h
+dd 0414e974fh
+dd 002416878h
+dd 0aac63b74h
+dd 0ff473a97h
+dd 0fd9da048h
+dd 0e1465581h
+dd 0a9f06e34h
+dd 0d9f0b9d8h
+dd 0290a991fh
+dd 0a3cdb71ch
+dd 0b543b293h
+dd 0b4981208h
+dd 020051c8bh
+dd 03f564067h
+dd 0bb7512adh
+dd 04cb5ae82h
+dd 03e02dbceh
+dd 0e37592fah
+dd 0df1819ach
+dd 044fc5f39h
+dd 0e01720e5h
+dd 06b23889bh
+dd 0e79f2247h
+dd 07806e0afh
+dd 05568501bh
+dd 0680ed96ch
+dd 0a03263eeh
+dd 0a8106980h
+dd 056482bf4h
+dd 04053ba99h
+dd 0d6680f8ah
+dd 0e042747ah
+dd 0b943f501h
+dd 0292aaed3h
+dd 07f6e0082h
+dd 081c5f384h
+dd 0c6255c94h
+dd 0a0e7eb08h
+dd 092b244a5h
+dd 09b4128a8h
+dd 0ec3d3617h
+dd 01d1372f7h
+dd 026ffed59h
+dd 0c9945dd0h
+dd 0b90bf086h
+dd 01c08ce45h
+dd 0636c9125h
+dd 0291088bch
+dd 0da112ca5h
+dd 0912a6b84h
+dd 0cfa20258h
+dd 081e48d4ah
+dd 06484412bh
+dd 0ee046cfch
+dd 06c0f3cf2h
+dd 016aa70c4h
+dd 0aa8f165fh
+dd 0ed444e54h
+dd 01d2de066h
+dd 0326d31e4h
+dd 09a04aa5fh
+dd 0c199b5a3h
+dd 0c0d51217h
+dd 0f649c022h
+dd 09864cf0dh
+dd 0ff76d959h
+dd 07bd22957h
+dd 0367d6620h
+dd 01beb945eh
+dd 02a919ffeh
+dd 0d7c8315bh
+dd 066447596h
+dd 07f38b7b5h
+dd 0487f55e6h
+dd 06b0895c0h
+dd 038dd7618h
+dd 013d23bbeh
+dd 0f86e952ah
+dd 0dce6cd59h
+dd 0146fef79h
+dd 09cac79d4h
+dd 0a62ab14fh
+dd 027ac7317h
+dd 0b7799ac9h
+dd 02e9c3188h
+dd 0b0717101h
+dd 0442132e9h
+dd 0fa5fad89h
+dd 095e0bc66h
+dd 04aeafee7h
+dd 0067e4567h
+dd 056a9854ch
+dd 030afee91h
+dd 0b33f9a8eh
+dd 0739d0204h
+dd 0bbae1d83h
+dd 0485d1015h
+dd 09b535d85h
+dd 09ab041e0h
+dd 0bbd1d264h
+dd 0f149323ch
+dd 0461a609eh
+dd 09561c0f6h
+dd 050a50493h
+dd 0541eba07h
+dd 0bc1ce4e0h
+dd 061a56b68h
+dd 04e17a192h
+dd 09e71ae8dh
+dd 02a736373h
+dd 016571ce3h
+dd 0ac27ea75h
+dd 04be2dc20h
+dd 03acbd0cdh
+dd 0dce71075h
+dd 07587436bh
+dd 00787c87dh
+dd 0a8837809h
+dd 0ba53069ah
+dd 0398bb5a5h
+dd 070fedfb4h
+dd 05453bf3dh
+dd 0c8be9612h
+dd 0f7a6fe6ah
+dd 06269395ah
+dd 02397c544h
+dd 049761900h
+dd 000674788h
+dd 00602bbceh
+dd 06453cbc6h
+dd 0a908ab01h
+dd 0109ac1efh
+dd 0b7dbb398h
+dd 01f0d2979h
+dd 0e1ceb1eeh
+dd 0b03e5d15h
+dd 033d31a0dh
+dd 044afcbbeh
+dd 09e4c49cbh
+dd 0927dbafah
+dd 0d2380a8fh
+dd 0d7ad1ad7h
+dd 0988e8996h
+dd 0002ee2fah
+dd 0e98cdf5ch
+dd 09e9812ech
+dd 0d635e2c0h
+dd 03badff35h
+dd 058e70706h
+dd 0c7876c14h
+dd 093c041d4h
+dd 0ed23ba94h
+dd 0469102f9h
+dd 07856a5b2h
+dd 0725a57d9h
+dd 0ea77d9c8h
+dd 0e9e14e3eh
+dd 0f0149592h
+dd 0810b7b94h
+dd 020a05976h
+dd 07794881eh
+dd 0c38ffc47h
+dd 06b0026bah
+dd 05a9bba11h
+dd 0c0e76e29h
+dd 0075962b9h
+dd 026ae20ceh
+dd 0fd4f5cabh
+dd 0db7bfbc8h
+dd 0924ab909h
+dd 0135d9596h
+dd 01c5a16cch
+dd 053487759h
+dd 01cd233d0h
+dd 0fe48b7fch
+dd 0494aa1cch
+dd 0dbbdc3f7h
+dd 041d69916h
+dd 06ff27d5ah
+dd 06fb90d80h
+dd 096e9063fh
+dd 0ec5ecb32h
+dd 0a309edcfh
+dd 0506e0f59h
+dd 06a42dee0h
+dd 05d031888h
+dd 0a14d863eh
+dd 0a5f51599h
+dd 0010e9f0ch
+dd 01ee839c0h
+dd 02e7041bdh
+dd 0f391ebedh
+dd 03e81bb58h
+dd 04f8dd858h
+dd 0b9eb9acch
+dd 0f6b1161fh
+dd 0239a2820h
+dd 02df574fch
+dd 0fe4161f7h
+dd 08ea3eeefh
+dd 037ab64b2h
+dd 099d16157h
+dd 001c315a6h
+dd 086254a85h
+dd 00d89e5ech
+dd 047736825h
+dd 0cf005bddh
+dd 0090b38dch
+dd 057f97936h
+dd 062f1288dh
+dd 07920198dh
+dd 0758501c5h
+dd 02bdce784h
+dd 012ba0168h
+dd 0e96ef40fh
+dd 07a7f9705h
+dd 041d10428h
+dd 0f1ae662dh
+dd 01e6db912h
+dd 036ee0fbdh
+dd 03eeb61ebh
+dd 0a6defa3bh
+dd 0ad51c4ech
+dd 06d497c6ah
+dd 09340dfa9h
+dd 03beb53bah
+dd 0f040c16fh
+dd 0450b0ea1h
+dd 062ac7771h
+dd 075b05fcfh
+dd 0d38453f1h
+dd 0d25669e7h
+dd 0d03cfe6bh
+dd 0b176c1d4h
+dd 0a4ca837bh
+dd 0281ccb6fh
+dd 043d21370h
+dd 05fb40383h
+dd 0ec7e2177h
+dd 0cfb4045fh
+dd 047af77edh
+dd 05bc0e84eh
+dd 04909d584h
+dd 01501f34ah
+dd 0faad3665h
+dd 0430046e3h
+dd 0f589d042h
+dd 00a3b7b6eh
+dd 04f553fa3h
+dd 0f4a7f9b2h
+dd 0d4e01e8bh
+dd 09474b775h
+dd 074f88450h
+dd 061552ad1h
+dd 092c72ce2h
+dd 0a47cb3c5h
+dd 07f5f32d3h
+dd 02ea41d94h
+dd 013af3f5fh
+dd 00984324dh
+dd 0d301fe2eh
+dd 04e2b7454h
+dd 06a957cd0h
+dd 05659f657h
+dd 06ef61a6ch
+dd 010f7a2e0h
+dd 0fbc50fe9h
+dd 03890bbaah
+dd 0538fb7b1h
+dd 0efd73522h
+dd 03dca2154h
+dd 0e723d4c2h
+dd 04ffe440dh
+dd 0c74b10cbh
+dd 06d798ec6h
+dd 03656f4c9h
+dd 00ac319d0h
+dd 028afbd14h
+dd 051161a8ch
+dd 05135ab90h
+dd 07dda199fh
+dd 0227a989bh
+dd 08b38498dh
+dd 0e33ac889h
+dd 00822a4afh
+dd 0a3549bf2h
+dd 0be5cbc83h
+dd 060c950e2h
+dd 0212a902ch
+dd 0d0427005h
+dd 081e1fc6ch
+dd 0bc5a9acah
+dd 07b9c7343h
+dd 0b730aadch
+dd 05f0a8f65h
+dd 024353afch
+dd 00401d4f1h
+dd 09b0e1b61h
+dd 087280ef5h
+dd 0f173d10fh
+dd 07e59e9a0h
+dd 0e4a00cd7h
+dd 038726566h
+dd 05d156b4ch
+dd 0601c0246h
+dd 08ab9abf6h
+dd 083ca8e8bh
+dd 0c6b1a663h
+dd 0db610700h
+dd 0990328b9h
+dd 0553f5968h
+dd 0ffca1575h
+dd 08ee5502ch
+dd 06dab2c51h
+dd 07ddde2ebh
+dd 00ffe27e6h
+dd 04bdc851ch
+dd 0e9147a86h
+dd 0d0f85250h
+dd 03bfb4b8ch
+dd 0847e0477h
+dd 05a4f0c65h
+dd 08fe6288fh
+dd 0bb2302e5h
+dd 0d5078fd3h
+dd 05d052419h
+dd 001a8890ah
+dd 09698bb9eh
+dd 0e0c7c7d4h
+dd 078a4de6eh
+dd 02a0aec74h
+dd 0e1ac704dh
+dd 098c0571fh
+dd 046e4ca9ah
+dd 00259692dh
+dd 0bb677b0bh
+dd 08dcdc1f2h
+dd 04092999dh
+dd 0c16f9102h
+dd 034f3b69eh
+dd 0c45cb4e7h
+dd 03bb95511h
+dd 03210108ah
+dd 04b01a171h
+dd 0e8b41bf0h
+dd 07188a304h
+dd 047d9d757h
+dd 08bd2b9a7h
+dd 0d069793fh
+dd 0a424ca3ah
+dd 099c4d4f9h
+dd 08bfe2022h
+dd 031f8b194h
+dd 0fa19f942h
+dd 024d3be68h
+dd 0dc0ba515h
+dd 0d4b99de2h
+dd 06844b47fh
+dd 079d1823dh
+dd 049a83647h
+dd 009bc4dc0h
+dd 0ba4e7c79h
+dd 0e6096e7ah
+dd 056f50437h
+dd 0d10c20e0h
+dd 05ad52dc5h
+dd 0f07109c8h
+dd 0fb1cc0e6h
+dd 0bbe75780h
+dd 05e506bd3h
+dd 00110d885h
+dd 04b289f56h
+dd 0cd324df4h
+dd 0e560688bh
+dd 0e5cd5ba6h
+dd 03a745ce5h
+dd 0aa1c8a9ah
+dd 02b1df9d3h
+dd 0e90675b2h
+dd 058633182h
+dd 0754586beh
+dd 016b99b80h
+dd 053bc78c9h
+dd 08d372547h
+dd 06207e530h
+dd 0246f5867h
+dd 0b6fca901h
+dd 0b9c5f6e9h
+dd 044987119h
+dd 0d4fab99fh
+dd 050b4c408h
+dd 0acb9454ah
+dd 07bf24830h
+dd 0304a7c07h
+dd 00493ea4ah
+dd 016222a3bh
+dd 01980f53ch
+dd 020cff184h
+dd 08eb60ecah
+dd 0c55b7750h
+dd 0a7aef7d1h
+dd 02761e48ah
+dd 013b3ed54h
+dd 0b0af45f8h
+dd 0d398f361h
+dd 087b936f5h
+dd 012699e0bh
+dd 04e262fdbh
+dd 0db6fe478h
+dd 089dafb41h
+dd 01fe83ff0h
+dd 0f11e7c18h
+dd 01b72bc17h
+dd 08b8ccf41h
+dd 0b11f019bh
+dd 05551eb1ah
+dd 0fafea0d0h
+dd 085ef5167h
+dd 0c78dd8d5h
+dd 011518210h
+dd 0297508fch
+dd 0adff3de3h
+dd 08f67826eh
+dd 0b145cb50h
+dd 02b58ccd5h
+dd 0f5b1f45dh
+dd 076024f6fh
+dd 0b6ec6acdh
+dd 02b60c680h
+dd 0202a86afh
+dd 0ae182588h
+dd 016cffb69h
+dd 08881e3f3h
+dd 07655b3a7h
+dd 0b7b70ee4h
+dd 088209a87h
+dd 0954f9455h
+dd 0f27276cfh
+dd 05c1a54c4h
+dd 03aad096eh
+dd 0fd5d0738h
+dd 093c6d62eh
+dd 03901fac4h
+dd 021381c67h
+dd 0c55d8d03h
+dd 0523c7909h
+dd 0be31a9b6h
+dd 0e9793d45h
+dd 011cdd6ech
+dd 0ae0f0f96h
+dd 09f354976h
+dd 08f6e7619h
+dd 07db57f4ah
+dd 0cb4687b1h
+dd 02e493f8ch
+dd 00a221ab9h
+dd 0369e88aah
+dd 052b46c24h
+dd 05f1ef6a7h
+dd 0079efbf9h
+dd 0560d7cefh
+dd 024008d4fh
+dd 0a2d22d08h
+dd 0f191c0a8h
+dd 0216146d7h
+dd 08a9dc710h
+dd 00b740033h
+dd 080371f6dh
+dd 01c730ff6h
+dd 00388d5f2h
+dd 082b8806ah
+dd 0fac4d9d5h
+dd 0e79bfc3dh
+dd 0fb48fe9dh
+dd 0887e7eedh
+dd 0dcdbd5cdh
+dd 0d4675b48h
+dd 05f719fd1h
+dd 0996a7dceh
+dd 0973548edh
+dd 02bb50e2fh
+dd 058c34675h
+dd 0cccbf154h
+dd 07938f95dh
+dd 008376979h
+dd 0f140ba8eh
+dd 05c5e708fh
+dd 0c14f15d1h
+dd 065ac999fh
+dd 0221d2db9h
+dd 09a8ec907h
+dd 05542a121h
+dd 03887c678h
+dd 0da94d97ch
+dd 0738ed7bah
+dd 097593d46h
+dd 00911a783h
+dd 08689bb53h
+dd 0c58dbd15h
+dd 098191f7eh
+dd 01b39c5a8h
+dd 062c9abc5h
+dd 054bda0d9h
+dd 09242f648h
+dd 057054177h
+dd 09371db09h
+dd 07c5735f8h
+dd 0fd320ffdh
+dd 0e45f8d57h
+dd 0a3328219h
+dd 0a42a335eh
+dd 047266bceh
+dd 00e74bceah
+dd 0ba45e5f8h
+dd 0426c7dcdh
+dd 043f07627h
+dd 0c986043fh
+dd 0b9d9a7eeh
+dd 01d677367h
+dd 047340408h
+dd 0a7960829h
+dd 02d5ed0e5h
+dd 000dd0117h
+dd 0a231ace2h
+dd 06661a9c7h
+dd 0c2d0f6afh
+dd 07f8373fdh
+dd 00659d90bh
+dd 03ed0bbdbh
+dd 014624093h
+dd 0ef27488eh
+dd 04bafc767h
+dd 0fbee832eh
+dd 0ea5778ach
+dd 0ba05376ah
+dd 0ad94660eh
+dd 07bf57c5bh
+dd 0ab02b312h
+dd 05ac602e3h
+dd 0e4706ab8h
+dd 03b3c8c55h
+dd 00e9e6b51h
+dd 0ac04a414h
+dd 0f65b12c2h
+dd 0594a007bh
+dd 099167865h
+dd 0c2f155b4h
+dd 00c7b1f1fh
+dd 0a8250280h
+dd 07ac72e38h
+dd 0eed8f331h
+dd 0bdcadbeeh
+dd 073ea956bh
+dd 0503f3a7ah
+dd 0d110b849h
+dd 03c0782b6h
+dd 0101f9736h
+dd 0e1c5ee10h
+dd 0cf54939bh
+dd 02ac60d22h
+dd 00710900fh
+dd 007aa4b20h
+dd 01e8c028bh
+dd 042ff4f7eh
+dd 0f43f1219h
+dd 0f0d41902h
+dd 0e05a35fdh
+dd 025c0e882h
+dd 09da1da04h
+dd 084eb651dh
+dd 0aea62a28h
+dd 056eedb40h
+dd 0466b6b90h
+dd 0802211e1h
+dd 0cb9d1a03h
+dd 08c8edd61h
+dd 0644f5042h
+dd 0d956b21ch
+dd 0f3489456h
+dd 0c29cd09eh
+dd 05dfecf52h
+dd 06412d2a0h
+dd 0666a75adh
+dd 067307442h
+dd 070746abch
+dd 0e6b85039h
+dd 000eca462h
+dd 099a24317h
+dd 0cadb9a65h
+dd 052b80672h
+dd 0f06c6b15h
+dd 090ca4ca5h
+dd 0b889f7d4h
+dd 0867e7e17h
+dd 03ef1196bh
+dd 0d1dffad7h
+dd 0bc1aef68h
+dd 0eb02d8bah
+dd 023a60238h
+dd 07489b043h
+dd 03989bc23h
+dd 067bbe28eh
+dd 08e1cc1bdh
+dd 0e3f4fb2eh
+dd 04fbd50c5h
+dd 023697efbh
+dd 0208dd79fh
+dd 036fc3802h
+dd 000dd33a7h
+dd 0d232e51ah
+dd 097e4f483h
+dd 0dd4c0fcah
+dd 0f24d203bh
+dd 0f284500dh
+dd 06a2fda15h
+dd 0c31d4b90h
+dd 05ece1874h
+dd 0ee8f2528h
+dd 0b79202bch
+dd 0442900f2h
+dd 075037273h
+dd 04c738624h
+dd 02b178318h
+dd 0b6a0dde1h
+dd 082ad1e8eh
+dd 0657de418h
+dd 0a178819bh
+dd 0afa05102h
+dd 0c377855ah
+dd 02fe35c1ch
+dd 03e632002h
+dd 0e89d0cc9h
+dd 0b7c53ce6h
+dd 0914c337fh
+dd 0da700efeh
+dd 0e65cf00ah
+dd 00df70685h
+dd 05c88ee52h
+dd 0d53b721ch
+dd 00bfa47c5h
+dd 0de83f1eah
+dd 086e0f65bh
+dd 08e2b6d43h
+dd 07ed97a3dh
+dd 0066a769bh
+dd 0790e1e02h
+dd 0e6ba17ddh
+dd 0a87e6004h
+dd 0a674d1b8h
+dd 01698b9c3h
+dd 0fdf12b9fh
+dd 0c9b12165h
+dd 08f3e37c6h
+dd 0662d479ch
+dd 04a621fa7h
+dd 03d92af14h
+dd 035672652h
+dd 03ebba0a0h
+dd 0d2528dbah
+dd 0148ac754h
+dd 08f70d04dh
+dd 0336c0c19h
+dd 06319ccbfh
+dd 0c802d53eh
+dd 092a16607h
+dd 0574572e1h
+dd 039132732h
+dd 063e17860h
+dd 070c5e08dh
+dd 017dde8d8h
+dd 0314b6bceh
+dd 075a141b3h
+dd 009a18d8bh
+dd 0e6bd7d55h
+dd 0c1dd6348h
+dd 02dfd45d3h
+dd 09fb439beh
+dd 0a9ca460bh
+dd 034232a57h
+dd 09ee8d767h
+dd 07b948e65h
+dd 04a99fe6ah
+dd 09e76bd17h
+dd 049594b05h
+dd 00cb30d85h
+dd 0b66bac20h
+dd 0b70e4850h
+dd 0a0bb6ee0h
+dd 07f49b7ach
+dd 0c5b5ad1dh
+dd 06e36334dh
+dd 04ad55985h
+dd 0f56ece7ch
+dd 03fd3feffh
+dd 0c7b99576h
+dd 062d0c2beh
+dd 084c0a192h
+dd 0480122e0h
+dd 0ee8bf0feh
+dd 08717eec3h
+dd 0b65171beh
+dd 088e8c886h
+dd 0513dae4ch
+dd 06a68b8beh
+dd 0b952b2a4h
+dd 0d3cfd854h
+dd 0a7b0388dh
+dd 0f851802fh
+dd 008083eebh
+dd 04aefd67bh
+dd 0d050386dh
+dd 06e798b71h
+dd 0da1caa20h
+dd 04ae32a0ah
+dd 04d6b781fh
+dd 0e35cf61eh
+dd 0f00d715ah
+dd 0a7568061h
+dd 04c796318h
+dd 035e28eb9h
+dd 0fefa2796h
+dd 00ddcc948h
+dd 01797a033h
+dd 0e1c185c9h
+dd 09702cd0dh
+dd 0149f55d8h
+dd 0f7ff2509h
+dd 03be4c61eh
+dd 04303bdeah
+dd 0304c22dfh
+dd 0d0e26015h
+dd 05e2a0711h
+dd 0ecab3954h
+dd 0d29a5368h
+dd 04400227eh
+dd 0a685128ah
+dd 0a5d42817h
+dd 0e1ccd7f9h
+dd 07d759767h
+dd 01e10c965h
+dd 04a13406eh
+dd 052f23b2ah
+dd 0c3d15958h
+dd 037702dd4h
+dd 082f119e5h
+dd 09fa02ca5h
+dd 007a2b8a4h
+dd 0fa5a2c3eh
+dd 08115dda2h
+dd 0a6c143fch
+dd 0bf3707c1h
+dd 0276019c3h
+dd 02c60aedbh
+dd 09dbbb8a8h
+dd 0aee492d0h
+dd 08f558bd0h
+dd 0e1c1b041h
+dd 04c932365h
+dd 0819d332ch
+dd 04e233f90h
+dd 0f6df4cb2h
+dd 0ff56e098h
+dd 05a913d7fh
+dd 096fad187h
+dd 0097df8fbh
+dd 01e244395h
+dd 067f77d5dh
+dd 0302a0881h
+dd 0a05c6e20h
+dd 055dd783ch
+dd 06ff14e3ch
+dd 086dadc0ch
+dd 00853b641h
+dd 0d91f0004h
+dd 01b7a6451h
+dd 0a6a6ebd0h
+dd 0046d5beah
+dd 0870304e6h
+dd 07eb28b0dh
+dd 03234cf68h
+dd 02d4c5ad0h
+dd 0b6f2c123h
+dd 0341b2417h
+dd 09acab1ebh
+dd 08d447af3h
+dd 09872e6ech
+dd 0e5a88704h
+dd 0efbcb0fch
+dd 07127be31h
+dd 03ce5bc82h
+dd 09248b885h
+dd 06e1cbcdah
+dd 0ddbc2afah
+dd 0c067dfd1h
+dd 0e8edf116h
+dd 0b7161affh
+dd 070558c0dh
+dd 02be8fb51h
+dd 0cc72bb8bh
+dd 0daba2923h
+dd 03cb38530h
+dd 0b10478b5h
+dd 0b094e7b0h
+dd 08227c115h
+dd 089f87e60h
+dd 0ee2d810fh
+dd 0ef98cdf4h
+dd 0f0b652b9h
+dd 01d33585ah
+dd 02363c45eh
+dd 0ea575012h
+dd 0f60f2c62h
+dd 0d2063188h
+dd 0eaff3dfbh
+dd 023023edch
+dd 0dab57aa9h
+dd 0ad004665h
+dd 0a6673193h
+dd 0a9d24e37h
+dd 018b77e93h
+dd 0251150d9h
+dd 0d896b01ah
+dd 0bc0c9e7ch
+dd 0e07c97e4h
+dd 09d0ff1c5h
+dd 0bb50d134h
+dd 0968a4e96h
+dd 0d29aca45h
+dd 0ccd48246h
+dd 03f7f541ah
+dd 0f6a7fc48h
+dd 0a6c4bcd7h
+dd 0ae997dd9h
+dd 0c1abf0d8h
+dd 0c01dcc66h
+dd 06e31db97h
+dd 0ab2c388ah
+dd 0746cbdbfh
+dd 01c1b8da4h
+dd 02e549926h
+dd 0917649fdh
+dd 01f9dcefah
+dd 089daefb9h
+dd 0c21fbd4bh
+dd 0c1aff892h
+dd 0dd7eb343h
+dd 03246de6dh
+dd 03bef1939h
+dd 0e1785389h
+dd 07bf2be87h
+dd 033bf11f4h
+dd 0fea56b65h
+dd 03953268bh
+dd 049179050h
+dd 0641fde3bh
+dd 03f27cad6h
+dd 0f0ba6c89h
+dd 026281294h
+dd 0f59bea34h
+dd 03b04d315h
+dd 070ff32f3h
+dd 06ed7952bh
+dd 0a39ba757h
+dd 063f0c171h
+dd 05bc31fe7h
+dd 043ee078fh
+dd 012c68a04h
+dd 013c5aa65h
+dd 0b76eea68h
+dd 0d5de30f7h
+dd 034fb0244h
+dd 05c79ac70h
+dd 016058069h
+dd 0f369b8b1h
+dd 000bd4b6fh
+dd 0787744e7h
+dd 0f49764a3h
+dd 009ed591ch
+dd 04a2d99b2h
+dd 0d3a1c693h
+dd 010ced311h
+dd 073a6f0deh
+dd 0993d6ee8h
+dd 0258e46f1h
+dd 013fd72b2h
+dd 06f4207d4h
+dd 062704995h
+dd 0e1dad1cah
+dd 0783a485ah
+dd 0a541db0bh
+dd 02bf39928h
+dd 096ac8bbbh
+dd 03bc20350h
+dd 0adfb8ff8h
+dd 0d25b15f4h
+dd 0df88ea4dh
+dd 0acbf0755h
+dd 06f06bd86h
+dd 0883d997ch
+dd 0fa6ead89h
+dd 06294c92dh
+dd 01d4a638dh
+dd 0d712d3ebh
+dd 049858afch
+dd 024ccf626h
+dd 001c5c6dfh
+dd 0c4c11596h
+dd 0ef9382a4h
+dd 04d4eaa52h
+dd 0b126117ch
+dd 08fce10edh
+dd 05957d139h
+dd 0717fddf6h
+dd 0f5864d2fh
+dd 0d4a41d15h
+dd 0d45d17d9h
+dd 04201d2b2h
+dd 01875fe20h
+dd 0a85257f3h
+dd 0fc7eae37h
+dd 03ad810c2h
+dd 059f59f5dh
+dd 0211de933h
+dd 04d71c7d1h
+dd 099758ca9h
+dd 0cd0ce58eh
+dd 0b1a347c7h
+dd 01753bc9dh
+dd 029e15ac2h
+dd 07e64b351h
+dd 00644aa25h
+dd 0353b126eh
+dd 02fe18fcch
+dd 0926d9cdfh
+dd 0446b1effh
+dd 0cfd394c2h
+dd 077be8d45h
+dd 04ab67681h
+dd 05b89aa4dh
+dd 0759dcc5eh
+dd 06509571bh
+dd 0b7bb63d5h
+dd 084977b29h
+dd 05bfd2941h
+dd 02debbe77h
+dd 057b2ba82h
+dd 098d755cah
+dd 0fa3d414dh
+dd 028452127h
+dd 0a4948d91h
+dd 08118dce9h
+dd 0620ea017h
+dd 070fe38ffh
+dd 0868857f0h
+dd 07e56fc99h
+dd 09e8e7289h
+dd 02e197a26h
+dd 02a98165eh
+dd 059f9a15dh
+dd 03574403ch
+dd 085fe5c9ch
+dd 0136962a7h
+dd 0575c14b1h
+dd 0a8aa4d17h
+dd 01aef8704h
+dd 096b8d711h
+dd 0e8cc48cdh
+dd 0f1ef4c46h
+dd 06bf3c0bdh
+dd 07b95dcffh
+dd 0f93342b9h
+dd 04b9fdd61h
+dd 07cfec1fbh
+dd 05e19f045h
+dd 05122c9d7h
+dd 0b1a54b6ch
+dd 0a0a580c7h
+dd 02092fce8h
+dd 0ed21caa7h
+dd 005ab2ea8h
+dd 0600a05d6h
+dd 00e3fbf68h
+dd 0e84a2150h
+dd 0766b3eb8h
+dd 00c3335a4h
+dd 0272de6efh
+dd 08404b4d3h
+dd 03c566ae9h
+dd 0b29632c9h
+dd 0951853d1h
+dd 0046eb75dh
+dd 07a821b49h
+dd 0f4fc60f1h
+dd 07c73824bh
+dd 073de723ch
+dd 049e69619h
+dd 0599cd7d2h
+dd 0193526b1h
+dd 0240e66b8h
+dd 06d99074bh
+dd 02d25df71h
+dd 0705af958h
+dd 023a81886h
+dd 026972394h
+dd 0802ad9d6h
+dd 06b2a14d8h
+dd 075318cc9h
+dd 0592ba5fah
+dd 0e1de1fe9h
+dd 0fffba1d9h
+dd 09aa5638dh
+dd 07790bde0h
+dd 0dadd1cbbh
+dd 0a1fe57adh
+dd 01406af32h
+dd 08d2e65eah
+dd 0b3f72ea0h
+dd 020074407h
+dd 05406c5bah
+dd 09d30325eh
+dd 05b9d4a44h
+dd 0f49f5d9ch
+dd 045f70e6bh
+dd 0751f8f24h
+dd 0e8e2877dh
+dd 081064927h
+dd 0497b2afch
+dd 0732e1dd8h
+dd 09492b076h
+dd 07eb21245h
+dd 0f1c272cdh
+dd 04fbad341h
+dd 08d6852c7h
+dd 077202ac2h
+dd 0a21ca045h
+dd 056bab582h
+dd 039c0129fh
+dd 00f1bcc44h
+dd 03d35b8e8h
+dd 00bd8260ch
+dd 07e914be5h
+dd 07e72df62h
+dd 0be91e0fch
+dd 03c5fca79h
+dd 0262122ech
+dd 0014df04dh
+dd 0d06675cdh
+dd 034b49e83h
+dd 015346d9bh
+dd 037a6fd61h
+dd 07b724935h
+dd 009711144h
+dd 0d23e1c9dh
+dd 0e8fc3c2ch
+dd 09dcd2a2eh
+dd 09d12a94bh
+dd 0efef14beh
+dd 000e0075dh
+dd 039f38120h
+dd 0c20baf1dh
+dd 0c398d074h
+dd 0a7591e30h
+dd 0426b69fdh
+dd 087334dfch
+dd 03c9dc0a5h
+dd 0d8e4b0f8h
+dd 0513ed6adh
+dd 019b31558h
+dd 016857eech
+dd 07831d9c8h
+dd 01d9e1bdfh
+dd 0467d1022h
+dd 0cb9aa9a3h
+dd 05938fcffh
+dd 0d46105d0h
+dd 03f3283b3h
+dd 03a03b7f6h
+dd 0a081f790h
+dd 072cef2f5h
+dd 0f3fdb36eh
+dd 05b0ac28ch
+dd 0669c7cc9h
+dd 0de5a1395h
+dd 071048824h
+dd 0035bb69bh
+dd 07f9cb181h
+dd 05d0f0d70h
+dd 0b53737d1h
+dd 03b130766h
+dd 0d6e7e4fbh
+dd 0fe454f3ch
+dd 0c18267fdh
+dd 0290eaa93h
+dd 0e2ec805eh
+dd 0879c6016h
+dd 034a88b23h
+dd 0b4a4dd1dh
+dd 0f6be076dh
+dd 0a62d4223h
+dd 0640e4a03h
+dd 04d2dbd9fh
+dd 071bff929h
+dd 0a7a59c00h
+dd 033d483f4h
+dd 00b605bcch
+dd 0eb92c26bh
+dd 0015decbbh
+dd 047ed453eh
+dd 03c01191fh
+dd 0ac22eb9bh
+dd 01e825eabh
+dd 0820d43a1h
+dd 084668dd8h
+dd 0200ae7f8h
+dd 01477264eh
+dd 099027432h
+dd 00d9d7bc8h
+dd 05ac7e761h
+dd 07c007f96h
+dd 04c3ff9e1h
+dd 0a5c3a111h
+dd 05f7beebbh
+dd 05f64efd1h
+dd 051ba1a14h
+dd 000426970h
+dd 036569471h
+dd 02fe7ddc9h
+dd 0b85d95c5h
+dd 03052efdbh
+dd 09b4717bdh
+dd 0d59b1553h
+dd 0c2bd7808h
+dd 0079ddd9fh
+dd 019a567afh
+dd 07783caadh
+dd 051188413h
+dd 0f664f497h
+dd 0819374eah
+dd 0368b0147h
+dd 0dbffcf42h
+dd 012f16623h
+dd 07d7580e2h
+dd 087dc2674h
+dd 0bc5252cdh
+dd 07ddabde5h
+dd 08e8a72c9h
+dd 082cd088eh
+dd 0087c7966h
+dd 0060e60e1h
+dd 0b9219114h
+dd 01b0eeaf9h
+dd 0900ddac3h
+dd 084b618deh
+dd 00188560ch
+dd 03831e858h
+dd 053e53ffeh
+dd 0604e2bc5h
+dd 01cb0afb6h
+dd 0a6fb5491h
+dd 0f2b2abddh
+dd 0acae8e01h
+dd 0d440967ch
+dd 0dc867c9ch
+dd 014d5b841h
+dd 03373d28bh
+dd 02e847ff0h
+dd 058785eb7h
+dd 0d3870199h
+dd 0a6f36e31h
+dd 0da2af2fah
+dd 000613595h
+dd 0d63aedd0h
+dd 0bd51993dh
+dd 0221baad4h
+dd 011ada6f3h
+dd 0486e7f79h
+dd 0388542b2h
+dd 0206c4691h
+dd 0d06975f1h
+dd 0b3d1d562h
+dd 0e4693d5ah
+dd 0979d866dh
+dd 05d4ea882h
+dd 0dd5ca4f6h
+dd 09ac18187h
+dd 0b870ac0dh
+dd 012479ae7h
+dd 0c0b81746h
+dd 046f86731h
+dd 0777b6e9ch
+dd 0080e0bc6h
+dd 0c17958d8h
+dd 097a5e32bh
+dd 0f1daa606h
+dd 097569180h
+dd 0de2b45a3h
+dd 0d611fd9ch
+dd 0f841be69h
+dd 024dbcaebh
+dd 053cb5d31h
+dd 0593e5fc3h
+dd 0f3edb2d5h
+dd 0d5593844h
+dd 0a5f6547dh
+dd 018c1dadch
+dd 0bdec67e7h
+dd 076fb17d0h
+dd 0ebb4e7d0h
+dd 0f4b89b8dh
+dd 09a7d7bceh
+dd 0a2b4c092h
+dd 01b8e5dcdh
+dd 092d5836fh
+dd 0682b7fc1h
+dd 0c7b9da2ch
+dd 08404e7b6h
+dd 0c674fee5h
+dd 0d24777e8h
+dd 04e5a8d22h
+dd 0e203de9dh
+dd 034ba149ah
+dd 0ca291247h
+dd 05323be69h
+dd 00a0c4574h
+dd 00d65ebd1h
+dd 000145078h
+dd 072234f1ch
+dd 0fbb6a11fh
+dd 03872e5aah
+dd 03b6624d7h
+dd 03fc4f505h
+dd 054c22b40h
+dd 03a7f8768h
+dd 091c6e657h
+dd 053ef510ah
+dd 033275ab6h
+dd 0711f4357h
+dd 08830b7ceh
+dd 0af61c703h
+dd 0812554b4h
+dd 0ee3f9323h
+dd 0c86f724dh
+dd 0894d47e6h
+dd 060a71648h
+dd 06e8df697h
+dd 06fa492b8h
+dd 0c0cbff1fh
+dd 0a2c6f963h
+dd 0f745ec19h
+dd 01a5d0fadh
+dd 0046143e1h
+dd 0bf0bdb02h
+dd 0f24d8aa8h
+dd 0410306cah
+dd 08145ef7bh
+dd 070e1fabbh
+dd 03a8df9edh
+dd 0102d97c3h
+dd 0a5a708ceh
+dd 0324855f2h
+dd 080422cb2h
+dd 0a79512f5h
+dd 0f276feaah
+dd 0d6af0305h
+dd 01f19c0adh
+dd 0a8a688f7h
+dd 04de4dd32h
+dd 02283142eh
+dd 086ddf4e4h
+dd 05f2f01a8h
+dd 08e0d9568h
+dd 0b79fba40h
+dd 0cb78f2efh
+dd 0bb9ef2f1h
+dd 07032275fh
+dd 0b66adb54h
+dd 0d6762c03h
+dd 0baa8b728h
+dd 0ece46ee0h
+dd 06fc3b495h
+dd 0bda495f8h
+dd 07b6a886eh
+dd 06263ca29h
+dd 0124ab45ah
+dd 00b4b2b12h
+dd 0752b5477h
+dd 05b355442h
+dd 01656a88bh
+dd 02227f078h
+dd 0f4322cadh
+dd 0be568b7ah
+dd 02bfe66dah
+dd 015c51810h
+dd 0243b968eh
+dd 0fad42c49h
+dd 08baa8d8eh
+dd 020a9f9bbh
+dd 00b171c5eh
+dd 0bcac555bh
+dd 0a98ca096h
+dd 0018e6287h
+dd 0de9caf7dh
+dd 063732b40h
+dd 0b5b54d70h
+dd 081e5d34eh
+dd 099bc760bh
+dd 0019762eeh
+dd 0f1fe6c97h
+dd 020b82e22h
+dd 05541ae1eh
+dd 0a0392cceh
+dd 0ffe380fch
+dd 021496046h
+dd 0391e41a6h
+dd 0d4344fc6h
+dd 00d6d50c2h
+dd 08ec97591h
+dd 039e9412bh
+dd 08827619fh
+dd 0b21747e8h
+dd 0183d5fddh
+dd 08ccf1c01h
+dd 0bc6d7cd4h
+dd 0e42427c4h
+dd 067b8cd4eh
+dd 065fcc288h
+dd 021f34671h
+dd 0d0e26c42h
+dd 094458721h
+dd 082207594h
+dd 0f9ee96ach
+dd 0438faabfh
+dd 02999594bh
+dd 0df670cc4h
+dd 01983f8c2h
+dd 080b7136ch
+dd 0f3dd3103h
+dd 0931f1403h
+dd 01d2b79c8h
+dd 006e5cba5h
+dd 0364a4268h
+dd 09b7afe35h
+dd 001b02dc4h
+dd 000e6c5a2h
+dd 0218f9f2eh
+dd 012f93377h
+dd 0b063b124h
+dd 070320071h
+dd 02ac5a5e5h
+dd 055848cf0h
+dd 003026b9fh
+dd 0108b04fah
+dd 099f82efbh
+dd 0ef1eb8e9h
+dd 0b31dd9c5h
+dd 010db4b60h
+dd 0b3baa230h
+dd 01a3475bfh
+dd 055bb0916h
+dd 0ec074dfeh
+dd 0e5befa0fh
+dd 0e139b3bfh
+dd 00e3cf4b3h
+dd 08e4dcd66h
+dd 0865a2b75h
+dd 0eacf0899h
+dd 0884b7d23h
+dd 0d1784c1eh
+dd 0b74c9141h
+dd 02121d7e2h
+dd 07ec65c81h
+dd 0b42df3fbh
+dd 0c350abd4h
+dd 0a48c8f5bh
+dd 05d22f0d7h
+dd 058256675h
+dd 0506c58e1h
+dd 021d0adb9h
+dd 04f647514h
+dd 00f1e4d7dh
+dd 09d5478b0h
+dd 0aed4ed64h
+dd 0b117aae9h
+dd 0aa2433e0h
+dd 0dabd30adh
+dd 074b6272fh
+dd 0fa7958f6h
+dd 060735d5bh
+dd 086539075h
+dd 0f8d3ecc2h
+dd 0df663537h
+dd 0e123deb7h
+dd 074578091h
+dd 080231686h
+dd 08d799b44h
+dd 0b535aaaah
+dd 057c7720ch
+dd 05f444fdah
+dd 0b79630a8h
+dd 0af2d0086h
+dd 02b834977h
+dd 0ab1ba6f3h
+dd 0a128eb5fh
+dd 01076ee26h
+dd 0b6405c5ah
+dd 014eec942h
+dd 0b6b8dbc4h
+dd 06a93671fh
+dd 0be6bb5e1h
+dd 0b9f627e0h
+dd 059b03fe6h
+dd 032c78bc8h
+dd 049de1131h
+dd 05a30c235h
+dd 00417f9cbh
+dd 0652b79bdh
+dd 0d253de36h
+dd 09e42dee2h
+dd 073ad0ab9h
+dd 0a473f4a9h
+dd 0434a05cah
+dd 0a3fa84a9h
+dd 062fbdde8h
+dd 0c80461c3h
+dd 047e6e795h
+dd 0847e4317h
+dd 04f070ca2h
+dd 0799b60b5h
+dd 07b3b8c46h
+dd 0203ebcc0h
+dd 0fa948c36h
+dd 01935ff04h
+dd 02e1bb060h
+dd 0b2d03a4ah
+dd 033468b4dh
+dd 0675edcb1h
+dd 0bec0147eh
+dd 0e6cda658h
+dd 0d98089c8h
+dd 0861ccab4h
+dd 0bc137ce1h
+dd 02877fb3eh
+dd 018baecadh
+dd 05fb29a36h
+dd 0ec4fa7cdh
+dd 0aac6c4e9h
+dd 011025955h
+dd 0c51e19beh
+dd 0cdfb8fedh
+dd 04fd83beah
+dd 0c5e7fde1h
+dd 09f8a785ch
+dd 058b8a731h
+dd 0a81553d6h
+dd 0d66ebe62h
+dd 091beb804h
+dd 02f8a5473h
+dd 0e6cbf993h
+dd 05c69e8cah
+dd 0668c67eah
+dd 0bf518261h
+dd 0fc2089beh
+dd 03368f7f4h
+dd 0e78bad15h
+dd 0b09ccf5ch
+dd 0b94f6a8dh
+dd 0c046a9e1h
+dd 03176fe00h
+dd 02a0cbf6ah
+dd 09db3fb72h
+dd 0ac5bbd72h
+dd 0959c677dh
+dd 0f7ce5caah
+dd 03809f66dh
+dd 064de089fh
+dd 073fd3ab1h
+dd 019cce261h
+dd 0105e4831h
+dd 0535f122eh
+dd 0b61a0274h
+dd 0f453fd43h
+dd 07a7506e5h
+dd 001d24b45h
+dd 016799484h
+dd 03b459ec8h
+dd 0cd2423a9h
+dd 08a606736h
+dd 05f64e228h
+dd 0adf1e117h
+dd 061d200a3h
+dd 0d32f66c9h
+dd 0f5957798h
+dd 002036cadh
+dd 0c37cd455h
+dd 0cd5962e9h
+dd 07dce670dh
+dd 037cbbc07h
+dd 0a5613df4h
+dd 0a53171bdh
+dd 07fdc6b68h
+dd 0e4d570d5h
+dd 01a33f99fh
+dd 06e1d9dach
+dd 0682a70a1h
+dd 0b975574ah
+dd 0414662a5h
+dd 041d25bf6h
+dd 0906fc12ah
+dd 05a3b41e3h
+dd 019a0ff17h
+dd 07adc469dh
+dd 0b681302ah
+dd 09ee27c85h
+dd 0c40a64e6h
+dd 038b54564h
+dd 01c7e3dadh
+dd 066c3799bh
+dd 01f3662f4h
+dd 0f67e09d1h
+dd 0f6681ccah
+dd 06701f3b5h
+dd 0d8234ac1h
+dd 022cd0dc1h
+dd 032c32f2ah
+dd 0333525fbh
+dd 0b5f0fd65h
+dd 0d87a4b40h
+dd 04d6fbaa9h
+dd 0c069a5abh
+dd 07324a5bah
+dd 0a827460eh
+dd 06394f5c5h
+dd 04e6c2e36h
+dd 06d482a4bh
+dd 04bc35902h
+dd 0f173c428h
+dd 076b73b50h
+dd 037c5c0c5h
+dd 0c125b2a8h
+dd 062c2a3eeh
+dd 095d46d57h
+dd 041da1a57h
+dd 0c7d07c9fh
+dd 0cd6a49d7h
+dd 000eafe05h
+dd 09e1b2041h
+dd 0fc947ac7h
+dd 0cbcdbbe9h
+dd 0113fb257h
+dd 04e830408h
+dd 0c76b3bd0h
+dd 07e0b0101h
+dd 011ab9813h
+dd 05546c116h
+dd 0325e6e3ch
+dd 0d9cb0b42h
+dd 032a04780h
+dd 05e4e0cf7h
+dd 0ac763e2ah
+dd 03c22d3edh
+dd 0718dbabbh
+dd 016992abah
+dd 030f9831bh
+dd 05bf2934ch
+dd 0c91c7379h
+dd 0aa5e9277h
+dd 0dde6feb2h
+dd 01b2af101h
+dd 09fd097d7h
+dd 09b61631dh
+dd 0afda042bh
+dd 0cd5fa5cah
+dd 0528c62c4h
+dd 001570f93h
+dd 0d8b29302h
+dd 02029e800h
+dd 0603f4f3ch
+dd 0ea90096ch
+dd 04f8607ech
+dd 0320465fdh
+dd 0df68db5bh
+dd 06388139dh
+dd 08c92062ah
+dd 03e9df6e0h
+dd 0e5da1053h
+dd 0a7c0d25bh
+dd 04f765d77h
+dd 014ddaad8h
+dd 05078ba20h
+dd 0d2ab8a35h
+dd 0f0e22c19h
+dd 0cb9f02feh
+dd 08970789ah
+dd 01ad82b03h
+dd 05b743320h
+dd 0e76db311h
+dd 04334e638h
+dd 038a1a626h
+dd 0f04c1bfeh
+dd 0542e8c8eh
+dd 08289d6d8h
+dd 073fd8b1fh
+dd 04d2e1311h
+dd 0b3977421h
+dd 02aae82a8h
+dd 0e6505389h
+dd 047240458h
+dd 013357e02h
+dd 0fdec239bh
+dd 0c8bf6803h
+dd 0beb52b1fh
+dd 038171de8h
+dd 05d6a1769h
+dd 01d53e0b4h
+dd 045b199c8h
+dd 0ef9ad09fh
+dd 054b8f6abh
+dd 0dc56182fh
+dd 028e08641h
+dd 03bb5aa02h
+dd 01fc03102h
+dd 0940d3d54h
+dd 0227920bch
+dd 069da61efh
+dd 0246705e1h
+dd 07280fd67h
+dd 0e22684c9h
+dd 0425163c7h
+dd 0854818ffh
+dd 0f3913f65h
+dd 01dcdb51ah
+dd 0d9f73d13h
+dd 00050b367h
+dd 0560c88b5h
+dd 0b3c4e421h
+dd 00c277367h
+dd 05da7301ch
+dd 0bd8c0b36h
+dd 03e14fa0eh
+dd 08e295c02h
+dd 0714bea8bh
+dd 0e9653490h
+dd 0f41c5299h
+dd 0e757182eh
+dd 074672613h
+dd 0f6d2f672h
+dd 0fca4a136h
+dd 0708ee3f0h
+dd 0d713d6c9h
+dd 05c045b76h
+dd 0e790ea28h
+dd 0b36f7699h
+dd 0a83cb9cdh
+dd 0e92af84eh
+dd 0bb3d08fah
+dd 0c66b0d28h
+dd 0f4f9a65fh
+dd 05ec93282h
+dd 064ae99e8h
+dd 0b7bc5797h
+dd 0bf3f9a7bh
+dd 06397e57eh
+dd 08f1e7c70h
+dd 0cf269bb0h
+dd 0f430b139h
+dd 0ca3cb157h
+dd 0bcc33194h
+dd 0784f0703h
+dd 040821077h
+dd 02ecf4322h
+dd 09bc0f179h
+dd 0d751702dh
+dd 00e6e891eh
+dd 08ac9a3fch
+dd 0179d3f03h
+dd 05ffa848ah
+dd 0596def54h
+dd 08d034feah
+dd 03a0fde37h
+dd 06ddf0f29h
+dd 03f9da987h
+dd 027905303h
+dd 0726a3a42h
+dd 0efd45117h
+dd 018e60733h
+dd 036f881ffh
+dd 03bf6f8efh
+dd 014f0d75fh
+dd 0847e2a5dh
+dd 02ac2b19bh
+dd 002690fd9h
+dd 0404d5953h
+dd 07c77062ah
+dd 0d945b0bfh
+dd 04246993ah
+dd 0c9b13b5dh
+dd 0c2e0eb92h
+dd 063d15113h
+dd 0514e161dh
+dd 0f6ac6f64h
+dd 07c57095ah
+dd 0e2f8671dh
+dd 0dfae5758h
+dd 077f82543h
+dd 0d904b140h
+dd 044227b41h
+dd 054714a94h
+dd 0b27d8846h
+dd 0f6725c8eh
+dd 05d10e4b1h
+dd 0a65539e2h
+dd 0f758c432h
+dd 0fcadb0c5h
+dd 00883b445h
+dd 05491decch
+dd 072fc4ca8h
+dd 01077f6c4h
+dd 0c9d6a519h
+dd 083eafe18h
+dd 0f5b331f7h
+dd 0c9636ed2h
+dd 048ef6938h
+dd 0d662b970h
+dd 0a34b2b5fh
+dd 0c3a9d55dh
+dd 0a697fc1eh
+dd 00d83be09h
+dd 0d3721d79h
+dd 08a94f253h
+dd 006c7bdf5h
+dd 0b0aeb6a5h
+dd 00edb356ch
+dd 03bc312c3h
+dd 0957aca6dh
+dd 0ae0a899fh
+dd 0fd8d3075h
+dd 09b23e27dh
+dd 00c4230f5h
+dd 0b7f985e0h
+dd 059c3482dh
+dd 0effcd1a8h
+dd 069963fcbh
+dd 0381f49dfh
+dd 0d0fd9fc5h
+dd 092da5c99h
+dd 03b7ff3deh
+dd 074b556e0h
+dd 0d4af6e67h
+dd 03693bdd4h
+dd 002da3adah
+dd 056f70c29h
+dd 0affd1e99h
+dd 0a2ba702fh
+dd 01aed5c51h
+dd 099a10faah
+dd 0e09ef077h
+dd 040d8c3afh
+dd 0a0ade579h
+dd 054a20079h
+dd 0b75ca64ch
+dd 08fbaeab3h
+dd 0e017cd98h
+dd 077d479e1h
+dd 0392f0de8h
+dd 04c3b9fd8h
+dd 0dda03c8dh
+dd 0b17ad8d1h
+dd 0548d36f9h
+dd 0d8de85e8h
+dd 0f7c700d5h
+dd 074039104h
+dd 0be67647ch
+dd 0ce58d05ah
+dd 0b885885fh
+dd 0c9a3a408h
+dd 0943a5890h
+dd 0364c9f36h
+dd 0a990bdafh
+dd 00083ec6eh
+dd 07777d11fh
+dd 062a58baah
+dd 069195324h
+dd 052e3ea64h
+dd 0c5727e6fh
+dd 047225ecah
+dd 03d3311eeh
+dd 033b2964eh
+dd 0db459ccch
+dd 03b9b7d37h
+dd 07f8917ach
+dd 0f72c4f8dh
+dd 008667803h
+dd 0b90cd72eh
+dd 0fc21b5abh
+dd 02483ae27h
+dd 005dffe99h
+dd 0f4f260fah
+dd 07024fe60h
+dd 0934199d9h
+dd 00c1f4aceh
+dd 0503280dfh
+dd 038e57377h
+dd 0261746e3h
+dd 01ab31f8fh
+dd 0a04b0be2h
+dd 0d06b7a24h
+dd 0293cf333h
+dd 05d673405h
+dd 0bd7ef49dh
+dd 016d486cbh
+dd 0e0bda6fch
+dd 0283e11c2h
+dd 076d364ach
+dd 0e02349d3h
+dd 07c938f12h
+dd 0b6764bc7h
+dd 02c8753b6h
+dd 0238ec705h
+dd 01ace2e48h
+dd 0a84dcd17h
+dd 0205a0f46h
+dd 06e67a3a9h
+dd 00a837607h
+dd 0a564579ch
+dd 0f2f00b7ch
+dd 0bed493e1h
+dd 02011b731h
+dd 0fed8ee4bh
+dd 077bc2684h
+dd 09d5f669fh
+dd 0be002b4eh
+dd 0af65d32dh
+dd 089585f01h
+dd 08b28bd92h
+dd 07a3bda4bh
+dd 005062bebh
+dd 0846adcaah
+dd 02f1715f7h
+dd 0dfde0f1bh
+dd 042d2cc17h
+dd 0b2ea11d5h
+dd 01c9b8275h
+dd 0b761580fh
+dd 0cb389322h
+dd 00dacd5cah
+dd 0b98bed95h
+dd 02bc619e7h
+dd 081c7502eh
+dd 0c92c4940h
+dd 0c2e8c37ah
+dd 0f1be8148h
+dd 0a8b05983h
+dd 03e71a8d0h
+dd 004db0838h
+dd 0f9127e84h
+dd 0b2e58ed2h
+dd 0817a7fc7h
+dd 0aee5892eh
+dd 041662995h
+dd 06a4af455h
+dd 0116dc122h
+dd 0ecd5a91fh
+dd 0561a133bh
+dd 07639116bh
+dd 0a9167605h
+dd 0323181f4h
+dd 023be3f00h
+dd 0f49f2a08h
+dd 0184ddbd0h
+dd 00217be84h
+dd 07812c5c9h
+dd 02ec65b9fh
+dd 05dbe9156h
+dd 0797c2fc1h
+dd 0c98d4fa8h
+dd 0dbb8b2a9h
+dd 0e396b90ah
+dd 095215ad2h
+dd 0e24a5891h
+dd 007a4e011h
+dd 0ef14af9fh
+dd 02d8bcf7eh
+dd 092b3d164h
+dd 04eb59282h
+dd 0d8c7c7aeh
+dd 0c6eef1edh
+dd 0a8a06491h
+dd 044221316h
+dd 058770707h
+dd 09530f532h
+dd 08bd23680h
+dd 023fa3455h
+dd 03f9c8666h
+dd 09535503ah
+dd 088637087h
+dd 0f8405531h
+dd 0c9f04853h
+dd 01a45e7fbh
+dd 0967c1d49h
+dd 073d40aa7h
+dd 0c175795dh
+dd 0b0991ca5h
+dd 0d82003dch
+dd 035099a25h
+dd 076ee5df1h
+dd 0bcd480b0h
+dd 0f711861dh
+dd 02dc1b664h
+dd 058b15b11h
+dd 085f8e61ah
+dd 0bbdd7b9bh
+dd 0a07b1074h
+dd 03f43c25eh
+dd 0b89851c0h
+dd 0cc21394eh
+dd 0eee466f8h
+dd 0525b4edfh
+dd 0fc0bdc93h
+dd 0eb57599fh
+dd 062b9ebffh
+dd 0035884b2h
+dd 0dfcb6af1h
+dd 0e72309dah
+dd 063867d2bh
+dd 05eeaf7eeh
+dd 03580465ch
+dd 0b4eef51bh
+dd 0d0aa04cfh
+dd 00b3498a8h
+dd 01023f358h
+dd 01b900265h
+dd 0a6451e15h
+dd 076810a4eh
+dd 0405e2d31h
+dd 0d92da8b0h
+dd 094f16174h
+dd 0c75c955dh
+dd 068c326bch
+dd 0a545cc26h
+dd 0fb46f3ffh
+dd 082adbdcdh
+dd 0e7a60d1fh
+dd 04dbe0068h
+dd 013341a93h
+dd 04aa171d4h
+dd 046de3a77h
+dd 0298a5f52h
+dd 0227b6f41h
+dd 0cdb0c275h
+dd 03419be5ah
+dd 02d5087bbh
+dd 0818256b1h
+dd 0f6abc195h
+dd 0cc711949h
+dd 02314c1bah
+dd 0fb5caf0dh
+dd 00975e3b5h
+dd 04163b32eh
+dd 0f3cf8417h
+dd 0dfc5ebdch
+dd 02f1210dbh
+dd 02970edbbh
+dd 00665b6b7h
+dd 00728732bh
+dd 0624652b5h
+dd 0d411c237h
+dd 005df3007h
+dd 022989ee0h
+dd 0510991d6h
+dd 0f246edc6h
+dd 0d67c7dfch
+dd 04df76a8dh
+dd 03db19746h
+dd 078b65979h
+dd 09ec1679ch
+dd 0896e6896h
+dd 0983e977fh
+dd 0869775e5h
+dd 00148ba42h
+dd 0706f4105h
+dd 05e5ca887h
+dd 039af218fh
+dd 027e84cc6h
+dd 057f858f6h
+dd 082a2753bh
+dd 0443381f6h
+dd 02cdb9a0eh
+dd 0b359ca46h
+dd 0d54f2c2fh
+dd 0efe37e1ah
+dd 0ce02321eh
+dd 0575b13c4h
+dd 0112d7922h
+dd 044a099e3h
+dd 080c55394h
+dd 079a59d63h
+dd 055962380h
+dd 05389b6b1h
+dd 0ce7c67bdh
+dd 0fda06391h
+dd 07e5b6c76h
+dd 01d28ed46h
+dd 0f291ec99h
+dd 09c49b37dh
+dd 093972bbfh
+dd 07d8811b1h
+dd 075e00639h
+dd 01c1f219eh
+dd 06857f116h
+dd 0c37474d2h
+dd 07ab21388h
+dd 05ace9333h
+dd 0e6ee3ae7h
+dd 0066805feh
+dd 0faf04bfeh
+dd 09b5206e1h
+dd 099907d31h
+dd 0c443add2h
+dd 01f8f61bdh
+dd 03fe1d877h
+dd 0c00bc1d4h
+dd 0fe35a330h
+dd 051b2a4d7h
+dd 08275c684h
+dd 03e72c01bh
+dd 0d2de1c7ah
+dd 0ce4f66f6h
+dd 044c8d82bh
+dd 041c77c96h
+dd 08ebfb68ch
+dd 0d99dc4b8h
+dd 01d2267c1h
+dd 0b7b9655ch
+dd 043b2321fh
+dd 02fb02957h
+dd 0552af276h
+dd 0f722ef22h
+dd 068e1cdabh
+dd 013053b27h
+dd 0471bccb8h
+dd 0e778e3f0h
+dd 0b389e1c3h
+dd 0c4904034h
+dd 0c32fac3ch
+dd 09a74062ah
+dd 07d6126b0h
+dd 074e7bb26h
+dd 0d3085db1h
+dd 0ede7296bh
+dd 05f14b534h
+dd 0696f0f74h
+dd 0a395db7eh
+dd 05ff95df5h
+dd 01e1c0625h
+dd 02e2d1945h
+dd 09abbf6deh
+dd 08a183855h
+dd 044f77f2fh
+dd 07ee59265h
+dd 0eb02c3dfh
+dd 00af76485h
+dd 0c62ff281h
+dd 0b7f7d31eh
+dd 0984eb73eh
+dd 09b64ff84h
+dd 023525340h
+dd 0a59619a8h
+dd 0970b0bb3h
+dd 0de01a79ch
+dd 0f291bd45h
+dd 0324ee907h
+dd 07f0ff6b2h
+dd 0ec8ad6c3h
+dd 00f459622h
+dd 079715631h
+dd 06050a15fh
+dd 09371de6ah
+dd 020e3a67ch
+dd 04cf331b2h
+dd 05127391eh
+dd 01400b53fh
+dd 0672463ffh
+dd 05bf733ffh
+dd 0dfdcf265h
+dd 0f74f46fah
+dd 0ab17fd1fh
+dd 05481c334h
+dd 0fc6e9072h
+dd 0d59b642fh
+dd 035c84953h
+dd 0dae7836ch
+dd 021f90f9eh
+dd 0d46dadf2h
+dd 08185fa5ah
+dd 0dcee6d2dh
+dd 084ce82f5h
+dd 0a8df7ddah
+dd 026db8564h
+dd 0e9854587h
+dd 0a1b0bb13h
+dd 08dbb8342h
+dd 058cc4816h
+dd 0dae5fa69h
+dd 02cbcd7a5h
+dd 056e2fcd7h
+dd 0b75ae2c2h
+dd 0af04c67eh
+dd 006e3fd1eh
+dd 0c52e4236h
+dd 05dbde978h
+dd 05934a6bfh
+dd 0bdfd2e05h
+dd 0ebd2c9fbh
+dd 0ee29b7d8h
+dd 01bfd8d88h
+dd 07f684ab6h
+dd 0b205bd9eh
+dd 0ed282c62h
+dd 0f8ff0138h
+dd 0e1856247h
+dd 03d5f2e26h
+dd 0c477bad6h
+dd 0fe63568dh
+dd 0c5b39b4bh
+dd 0b2df0919h
+dd 07970db40h
+dd 00da19927h
+dd 0a7552e1eh
+dd 01f5597e5h
+dd 013f9384dh
+dd 0351b2b97h
+dd 0b67ef792h
+dd 05edbdcb2h
+dd 08e4275e2h
+dd 0536b130fh
+dd 0ba551b32h
+dd 0f1edf770h
+dd 047e01fc4h
+dd 0f59f2e33h
+dd 01521373ch
+dd 08dc8a12eh
+dd 04494a03eh
+dd 0a06630e9h
+dd 0f5706666h
+dd 0d05395eeh
+dd 082ee17a8h
+dd 081d93fdeh
+dd 0b7b2c5f6h
+dd 057388ee8h
+dd 010b660ech
+dd 0f71a0e4bh
+dd 04f14aaceh
+dd 003878f0ah
+dd 0d79c96d7h
+dd 03a6a940ah
+dd 0e47af7c6h
+dd 01df70538h
+dd 06063d5d5h
+dd 0f57ce3beh
+dd 03b4a52fah
+dd 06206ba68h
+dd 0ee3c15dfh
+dd 01af25459h
+dd 031dbae05h
+dd 063490e34h
+dd 0db159112h
+dd 0a2b91d27h
+dd 0a64f9870h
+dd 00704af7dh
+dd 0d111cd5fh
+dd 0c1560f75h
+dd 00134a9f1h
+dd 01aca3a3ah
+dd 02e156d8ah
+dd 08de5659ch
+dd 045d8aff0h
+dd 0eaf6be3ah
+dd 07effe1e6h
+dd 0497d40f8h
+dd 071a2de45h
+dd 0ca315654h
+dd 0dfd7fa73h
+dd 0470ee621h
+dd 0d53fd83bh
+dd 04e39b412h
+dd 0b13147bah
+dd 0a0796278h
+dd 0abd6c697h
+dd 0b2de9125h
+dd 075bf334bh
+dd 0bfb52f77h
+dd 0d50f06e9h
+dd 08629756ah
+dd 0d49030dfh
+dd 05505e79dh
+dd 04d2e1c47h
+dd 077f00553h
+dd 0adabbdf2h
+dd 093d04e2ah
+dd 0a829e036h
+dd 0b1a5b717h
+dd 088a675ceh
+dd 039b87783h
+dd 072a81f73h
+dd 0d15ef463h
+dd 08cdd0b01h
+dd 0a1cb6643h
+dd 0b2b199d8h
+dd 0348a9a83h
+dd 06e171449h
+dd 02fc4fe58h
+dd 071d1ecb3h
+dd 047528ba8h
+dd 0fbbaecbfh
+dd 001239665h
+dd 022785a7bh
+dd 06f05b108h
+dd 0b5f60c6fh
+dd 08400be5dh
+dd 072b18032h
+dd 0e41379c7h
+dd 07ef698a2h
+dd 0c2f53121h
+dd 001b5b9b9h
+dd 0efb7307fh
+dd 0b6cdd855h
+dd 0de0d0c3bh
+dd 0b65c9abfh
+dd 0ab39ba50h
+dd 02a874107h
+dd 0a47e2169h
+dd 0ca124badh
+dd 0a05ddd14h
+dd 06b0b225dh
+dd 0b556039dh
+dd 06ad30896h
+dd 0ca65f7deh
+dd 09c81557dh
+dd 002a17cb5h
+dd 0762c2a9fh
+dd 07d9cfc5eh
+dd 0332b9542h
+dd 09b74e2c8h
+dd 06b7dff2eh
+dd 064aa1c21h
+dd 00c6e84ech
+dd 0259311f3h
+dd 01d7fbf31h
+dd 0b5ad4f98h
+dd 040016736h
+dd 09aae1964h
+dd 05666201ch
+dd 0357dcb86h
+dd 0083532bdh
+dd 06501975fh
+dd 092777721h
+dd 0418580c8h
+dd 0e085baech
+dd 040324b0bh
+dd 009860da7h
+dd 0f21389c6h
+dd 0ba5b4167h
+dd 06900af26h
+dd 0274b9781h
+dd 052690692h
+dd 0e7a26a5fh
+dd 0b950fa0dh
+dd 0ad5ce6c1h
+dd 0669d3bb9h
+dd 0f88f6cadh
+dd 01053888eh
+dd 0ebe1775fh
+dd 050b7cc2dh
+dd 03af3188fh
+dd 00752d46ah
+dd 0f5851292h
+dd 0abd3d2f3h
+dd 06f99e21bh
+dd 09708c39bh
+dd 01456c8c7h
+dd 0cab088ceh
+dd 0c7fea555h
+dd 071e87005h
+dd 03b5fcd50h
+dd 0a4a923b7h
+dd 0d86f2f8ch
+dd 0c5fc0b3ah
+dd 01c18750bh
+dd 083e495e5h
+dd 0017f3a06h
+dd 014449816h
+dd 03c25749ch
+dd 0ee7d62d9h
+dd 03fa98a0bh
+dd 07e3c9fefh
+dd 0dd196718h
+dd 0551931b0h
+dd 017f4fc4fh
+dd 01c639b51h
+dd 056b45c29h
+dd 034424958h
+dd 0c8afeb81h
+dd 0dc2f0002h
+dd 0e74480b2h
+dd 078e88226h
+dd 01b286fb8h
+dd 0779c8f10h
+dd 0a58c3699h
+dd 033758824h
+dd 00e6f6737h
+dd 0af0f2371h
+dd 04491688eh
+dd 072e9bb81h
+dd 068abdbc8h
+dd 0d93e5acah
+dd 02c628d87h
+dd 05b7a2105h
+dd 049e8e77ch
+dd 08f571604h
+dd 06a023bc4h
+dd 0bdc8ab86h
+dd 0ddc5fdf0h
+dd 05c668416h
+dd 083d767f1h
+dd 0218fd500h
+dd 0599592b4h
+dd 0e42c5770h
+dd 05c98e6bfh
+dd 0cedc1b05h
+dd 0fe7f30a9h
+dd 02c90a92fh
+dd 0bc6df7d8h
+dd 04447cd6dh
+dd 07768b4ech
+dd 0400aac18h
+dd 064808a6fh
+dd 0e2f5df66h
+dd 01a995da5h
+dd 00be7d7fch
+dd 0d77f9cadh
+dd 0a61574b7h
+dd 0a9341176h
+dd 079406ea7h
+dd 05f8acae9h
+dd 0c17e62dbh
+dd 0a8d58c32h
+dd 0c678f3c3h
+dd 0a2e95a7fh
+dd 0264e145ah
+dd 0f878b7c4h
+dd 05f211019h
+dd 078a0291dh
+dd 075758c72h
+dd 0c97b01c2h
+dd 001061a20h
+dd 09b931eeah
+dd 0435fd87eh
+dd 0ce3a8992h
+dd 0d51376b9h
+dd 0b17ee4a3h
+dd 0b7a6a2aeh
+dd 08edeb445h
+dd 0123d4e86h
+dd 04bb80e30h
+dd 0a16f2457h
+dd 00006e5f9h
+dd 0af68fbc5h
+dd 0710270ffh
+dd 0dfe6cf4eh
+dd 04e3f5f19h
+dd 08bfadc9bh
+dd 006a5cc1bh
+dd 01e6ee90eh
+dd 00320724dh
+dd 05ae1ffe6h
+dd 0d592a3c3h
+dd 02feac4edh
+dd 04ebcc21ch
+dd 0d3de33f1h
+dd 0e5ce4b58h
+dd 04840e563h
+dd 0a27ff534h
+dd 046b806e6h
+dd 00ccede82h
+dd 01742c27bh
+dd 0c39a5bf4h
+dd 0919994d9h
+dd 0ef2a26bch
+dd 0ecbb4979h
+dd 063057ef3h
+dd 0a0dc6b71h
+dd 05b3f53efh
+dd 0e0b453fah
+dd 0615a3697h
+dd 091d24cbfh
+dd 03f9c9cc6h
+dd 020d4ddb5h
+dd 06750a692h
+dd 0cef3634ah
+dd 0a30431f5h
+dd 0a8fc5300h
+dd 0b172f9b8h
+dd 00447b77eh
+dd 035efc22bh
+dd 00f521b49h
+dd 0be7bf680h
+dd 01ac96fd3h
+dd 098bcab8bh
+dd 0a7a43addh
+dd 0e4ac0510h
+dd 065a1e0afh
+dd 005e01e92h
+dd 088e8059dh
+dd 0ee13794eh
+dd 0b80c6943h
+dd 0a1754c63h
+dd 0081dcaf2h
+dd 08534456fh
+dd 0f4b5621ah
+dd 0a8082669h
+dd 09a7c8376h
+dd 0b26c2f22h
+dd 0723388bch
+dd 0f7eb85c7h
+dd 0276ab121h
+dd 00b86d75ah
+dd 0ecc2fed5h
+dd 0adae73a5h
+dd 00bd90b9ch
+dd 08d5d3bech
+dd 063123a39h
+dd 005ddcdd0h
+dd 029784708h
+dd 08030bbd4h
+dd 0800e58d1h
+dd 0ae8d4e61h
+dd 0329a787eh
+dd 089253b27h
+dd 0978d36e5h
+dd 002b6b18dh
+dd 02d4906bdh
+dd 0a0ac6067h
+dd 0786a17eeh
+dd 01c0244ceh
+dd 020c7354dh
+dd 085813dcch
+dd 0a2052075h
+dd 00347dbffh
+dd 0b17117f0h
+dd 0bf8accfch
+dd 0bc3bcaadh
+dd 039472a2ch
+dd 0b80f0d97h
+dd 054ca29a8h
+dd 0a71d30c4h
+dd 081316da5h
+dd 00157a924h
+dd 0eed160b7h
+dd 071f087eah
+dd 0df32bcfah
+dd 02e145f46h
+dd 00c8f99e0h
+dd 0f6ed2369h
+dd 0daeb1d3ah
+dd 08d90883eh
+dd 05af56970h
+dd 06713d60ch
+dd 044e01812h
+dd 058327199h
+dd 077c460bbh
+dd 0577899e3h
+dd 048cae9c4h
+dd 083b2e64bh
+dd 0e070de1bh
+dd 05de1f3b0h
+dd 01cb1cf40h
+dd 079089ebbh
+dd 0e732c7c4h
+dd 0d369a12ah
+dd 033f2bfa2h
+dd 05ce350aah
+dd 0e389092dh
+dd 09da5396fh
+dd 0c5697b7ah
+dd 0bb5261e6h
+dd 0c04ec769h
+dd 0c37bea46h
+dd 0f63ac959h
+dd 0996f030ah
+dd 044826995h
+dd 0f81acae0h
+dd 03c486535h
+dd 028cebc8ah
+dd 07027326bh
+dd 0b6978e18h
+dd 004468777h
+dd 0368d2993h
+dd 05e0f4abch
+dd 0407936bfh
+dd 0ef0699f6h
+dd 05b97b5f2h
+dd 040ec6859h
+dd 07652e7d0h
+dd 089b002dfh
+dd 04822b760h
+dd 09a1ede32h
+dd 0f9b02be5h
+dd 00237b3f4h
+dd 047cdb487h
+dd 0c56ac831h
+dd 007651077h
+dd 0fd46ec20h
+dd 00adc8650h
+dd 0fc33ceadh
+dd 07ae48e89h
+dd 0f98a6f3ch
+dd 00060a2b4h
+dd 05bd6118fh
+dd 084223df8h
+dd 022bf12e5h
+dd 0afd8a724h
+dd 0cd94b112h
+dd 00af530a5h
+dd 021f6641fh
+dd 047f06061h
+dd 0993c228fh
+dd 09f80e0c7h
+dd 0952a3199h
+dd 02b9b725ch
+dd 0b7e5f64ah
+dd 0a45d6e8ch
+dd 00374a093h
+dd 05d2afb89h
+dd 0fb7c34ebh
+dd 05078120dh
+dd 0b58d27c3h
+dd 072346e45h
+dd 0962b1c73h
+dd 0d1d81e84h
+dd 01a67d85eh
+dd 026428116h
+dd 02a93c34ch
+dd 003146b55h
+dd 0607254c8h
+dd 0360a3452h
+dd 03c24b878h
+dd 01eace39ch
+dd 0d4647c99h
+dd 00d2f8125h
+dd 02fb8d35ch
+dd 02bd0fcaeh
+dd 08a6285dah
+dd 02d3e9e3bh
+dd 01be98047h
+dd 0e95a26bbh
+dd 02ea66746h
+dd 04347de7fh
+dd 08a2c2daeh
+dd 0d672f2bdh
+dd 0f15b0e49h
+dd 03145768fh
+dd 061caa859h
+dd 0a05197c3h
+dd 0dbed7797h
+dd 02ea99dc8h
+dd 068b946fdh
+dd 0213438d5h
+dd 06ced6c91h
+dd 05e4cc19fh
+dd 02e99ff91h
+dd 077d59cd5h
+dd 019dacdf5h
+dd 0294fed99h
+dd 04dd830eah
+dd 02db78b86h
+dd 0d8193ecdh
+dd 07e27baefh
+dd 02b5f899bh
+dd 0ae7075b6h
+dd 0fb3b967bh
+dd 0339df5b7h
+dd 0a20d2cc8h
+dd 0bc0e3c71h
+dd 06d9be1d2h
+dd 04fcbd7fdh
+dd 08da84204h
+dd 0e8e7e258h
+dd 02b9f177bh
+dd 042340112h
+dd 0d1c2d1bbh
+dd 079d2e7c4h
+dd 095cdb4ddh
+dd 0ad54a218h
+dd 0466387b2h
+dd 0aba7dc4bh
+dd 07897dc94h
+dd 003e748b6h
+dd 0b60ed0eeh
+dd 06bdd02abh
+dd 05d11253eh
+dd 033dbce45h
+dd 003246c90h
+dd 0ca497845h
+dd 0d9f2a6feh
+dd 06eb52f25h
+dd 0b439be2bh
+dd 0e8945ca3h
+dd 051259504h
+dd 0123a73adh
+dd 08239bf40h
+dd 04237cb30h
+dd 0da49c1d6h
+dd 0209fd2b6h
+dd 0ebb8f89dh
+dd 0f5656070h
+dd 07f5b91fah
+dd 0cac0bdd2h
+dd 02a464c0ah
+dd 0eef88e28h
+dd 0db7ca22fh
+dd 03fb711eah
+dd 0429f905eh
+dd 0f564d706h
+dd 0aaea2d1eh
+dd 0e8dbe5fah
+dd 0a820c70eh
+dd 0b675d68fh
+dd 0de95ee58h
+dd 0a41cfd19h
+dd 073d10843h
+dd 051c28418h
+dd 05ee4ff56h
+dd 0dc6b1c96h
+dd 012255844h
+dd 08a956ab7h
+dd 03fc3cd12h
+dd 084c7e5deh
+dd 0fbe9bb8dh
+dd 032f527e3h
+dd 0ca71b2efh
+dd 0a5dcecedh
+dd 0f3608e79h
+dd 04a192dcfh
+dd 0d05f27eeh
+dd 0126ffed8h
+dd 0d87bce30h
+dd 09ee2173eh
+dd 0bfc41e35h
+dd 0ac9236e2h
+dd 0b10ab60bh
+dd 0c28d8160h
+dd 001a8aedfh
+dd 01f16fe1ah
+dd 053cbfb72h
+dd 061e68293h
+dd 0df4f0556h
+dd 04b1b26e6h
+dd 0c746e797h
+dd 01b415762h
+dd 09dacbbf0h
+dd 08e47d68fh
+dd 00f693e20h
+dd 043da5897h
+dd 077de6eefh
+dd 0e5c95fe8h
+dd 0ed15538eh
+dd 09a6f9c47h
+dd 0b8a8eaech
+dd 0856f624fh
+dd 0ad2e9ce7h
+dd 08c7fe914h
+dd 0f01fb52bh
+dd 04536736bh
+dd 0098a579eh
+dd 0dc4d42cfh
+dd 019bb15b3h
+dd 0173783c4h
+dd 082ca9038h
+dd 02da50af0h
+dd 0982f659eh
+dd 07731ea87h
+dd 0aa6bcc7ah
+dd 0b45e1c53h
+dd 0f5b1856ah
+dd 092011c7bh
+dd 0d7c8320bh
+dd 091575c73h
+dd 0c4ebc186h
+dd 0111536a4h
+dd 026ce7b0ch
+dd 09c805713h
+dd 077b882a3h
+dd 0eda0f9a4h
+dd 007e930cah
+dd 0653c7d27h
+dd 064ba0bech
+dd 0a99a16f5h
+dd 05b30a1b8h
+dd 0a35940bbh
+dd 0ca324da4h
+dd 01b14b076h
+dd 0c2c1ac7bh
+dd 01c3c2751h
+dd 0afd7f4f8h
+dd 08d677802h
+dd 06763d304h
+dd 01e7bed38h
+dd 07a32458ah
+dd 04f3219ddh
+dd 02f95a536h
+dd 0431f6697h
+dd 0561867e2h
+dd 09344b31eh
+dd 021de0887h
+dd 07d9e0f08h
+dd 0a0130d07h
+dd 04fa6542ch
+dd 05127ef86h
+dd 0e8873af8h
+dd 0fa4118f6h
+dd 02614de0ah
+dd 086a0cce1h
+dd 039a4a996h
+dd 0e0538f64h
+dd 0f46c8a37h
+dd 07d3c4a89h
+dd 01a03f19bh
+dd 0d0ff0a2fh
+dd 08d048846h
+dd 0649b15ech
+dd 0ac03b128h
+dd 0a5672746h
+dd 00fc38a27h
+dd 000f15b3eh
+dd 0c20a86ddh
+dd 0ea9d4e38h
+dd 05be6ab55h
+dd 098d095bch
+dd 0bd775290h
+dd 064e2478bh
+dd 0c582ccf4h
+dd 0efe7068fh
+dd 06423fbf2h
+dd 0450cf713h
+dd 03c08ebc5h
+dd 02ee94e6ch
+dd 09c71f7b2h
+dd 012328819h
+dd 0c8221f61h
+dd 0c02e748ch
+dd 09f085015h
+dd 03d93c5c6h
+dd 08aab6a1ah
+dd 0c073ac27h
+dd 05de68b4bh
+dd 00f7ac125h
+dd 03872eed1h
+dd 0df7ba454h
+dd 0e7d8f29bh
+dd 0f1733822h
+dd 0985f82b0h
+dd 0a5a66362h
+dd 0de2b736eh
+dd 0bc6024cbh
+dd 058675b19h
+dd 0c0b2ea74h
+dd 0339c5010h
+dd 0c25351adh
+dd 0097dc7a9h
+dd 09ebc8155h
+dd 006295ae8h
+dd 006d6ec19h
+dd 08144d022h
+dd 05c28cc2ah
+dd 0c7be014bh
+dd 0c4ef4679h
+dd 09b4fcc3fh
+dd 0bae21177h
+dd 0b9019576h
+dd 0a5d35e56h
+dd 0c2e0a2a6h
+dd 012f2c92fh
+dd 07fdca11dh
+dd 0514a351eh
+dd 0bf70f042h
+dd 0fe03f696h
+dd 099a81ea1h
+dd 0445ca6efh
+dd 03d3b9f30h
+dd 023dee7a4h
+dd 0f0ecc00fh
+dd 0015d13edh
+dd 084625211h
+dd 0985753e1h
+dd 048692346h
+dd 0f375f3bbh
+dd 05339d033h
+dd 0ac407305h
+dd 0bd088d1fh
+dd 04a9be1d3h
+dd 0e874a0d1h
+dd 0c1b3f7e8h
+dd 0cce7f481h
+dd 0e43cfb7eh
+dd 0fe8d7b2dh
+dd 07d1b5cc3h
+dd 043b281a9h
+dd 0f23ddc56h
+dd 073dd0c7bh
+dd 03b9220bah
+dd 0209646e4h
+dd 05aa09999h
+dd 0c9e658d5h
+dd 0346e2a1bh
+dd 040ad031ah
+dd 0a927d4eah
+dd 0eaf1bddfh
+dd 058c7b9e9h
+dd 0743ecee1h
+dd 03c01e32eh
+dd 047e6fd37h
+dd 051f42875h
+dd 0639616dbh
+dd 0635959c1h
+dd 0e0037748h
+dd 0fc249864h
+dd 0c457e5f4h
+dd 0fb0cff26h
+dd 09514c6a6h
+dd 0a8f86fbfh
+dd 02f6c931eh
+dd 018031728h
+dd 023366216h
+dd 0a93af47ch
+dd 0bdb944cfh
+dd 0e9bb05eeh
+dd 0964336bch
+dd 05ac3c9fah
+dd 027426670h
+dd 074bc0042h
+dd 0f3c147c8h
+dd 0cf523b39h
+dd 0372adf67h
+dd 063868224h
+dd 03744c685h
+dd 0c41fa90ch
+dd 08885abbbh
+dd 0ec400d17h
+dd 0d770526ah
+dd 099cb73d8h
+dd 01ee461c4h
+dd 0cb5dfb68h
+dd 0d3085817h
+dd 06c5dc7b3h
+dd 0a359865fh
+dd 0cdf24a16h
+dd 025d21e49h
+dd 0d474b721h
+dd 0e0445ffch
+dd 06511765ah
+dd 084b79483h
+dd 0935962a3h
+dd 02982db23h
+dd 019fcad18h
+dd 0aadc867ah
+dd 019a45937h
+dd 0a0b63682h
+dd 06bb76e86h
+dd 06d93e340h
+dd 073f527a3h
+dd 049a99307h
+dd 0acfb1155h
+dd 07a01a87ah
+dd 033249d86h
+dd 06803b89fh
+dd 04ad1b8d9h
+dd 0170a5f72h
+dd 04d0cec50h
+dd 0bbd38bebh
+dd 0c0d78567h
+dd 06f838298h
+dd 0654e160ch
+dd 08a70ffa7h
+dd 0ed7d4b3fh
+dd 0e4370216h
+dd 0051155fah
+dd 01db4fe7dh
+dd 0d55701f6h
+dd 000bb63f8h
+dd 0496bd923h
+dd 0ea0eb8c8h
+dd 0bba795d3h
+dd 0990bcba6h
+dd 03ed5e2dah
+dd 099564d37h
+dd 031a7e8edh
+dd 082ebe264h
+dd 09afcaf3ah
+dd 0183dda03h
+dd 0e8905877h
+dd 04ca94238h
+dd 014393c86h
+dd 003ccf84ch
+dd 02c3d0dc4h
+dd 0334351b5h
+dd 057c45412h
+dd 0591779aeh
+dd 0c4f7eb7eh
+dd 03193accah
+dd 044a1f9b3h
+dd 0a40a43f9h
+dd 08c0341c2h
+dd 09910487bh
+dd 060f5fa6fh
+dd 0d2464950h
+dd 041fbd15ah
+dd 069d14e4ch
+dd 034c93113h
+dd 0aaef02fch
+dd 0e5659b51h
+dd 02b15eba2h
+dd 02686b7e3h
+dd 0e21cccf6h
+dd 0c6d9a6abh
+dd 06777116ch
+dd 070a9a13bh
+dd 0b20f32abh
+dd 0c9e67aa1h
+dd 030b8f807h
+dd 07cf85217h
+dd 01616ddcah
+dd 0189b2281h
+dd 01bc9f1b8h
+dd 0f9102ef6h
+dd 0821afb40h
+dd 0cad0ee6fh
+dd 0313f5b37h
+dd 0e21e95cch
+dd 0840abcdbh
+dd 0d9f9cac3h
+dd 0e2f7e451h
+dd 0dac22c6ch
+dd 0974a9986h
+dd 036605158h
+dd 0ffe180a6h
+dd 038542583h
+dd 0f0da04e3h
+dd 04b5cf9abh
+dd 068b8eceeh
+dd 056ca58f2h
+dd 0451f3bc6h
+dd 0077c63e4h
+dd 02a05d84bh
+dd 0bd5d5101h
+dd 0a6dcd3a3h
+dd 0ed5f5679h
+dd 0daab2704h
+dd 0000f64ebh
+dd 041d4344fh
+dd 0a0f35a13h
+dd 04dce86adh
+dd 030cada83h
+dd 0ab59aed9h
+dd 09add9eadh
+dd 04da818bbh
+dd 0aeb76391h
+dd 01356c468h
+dd 09772eb4eh
+dd 050aac012h
+dd 08c960300h
+dd 023a672b8h
+dd 0c0339ba3h
+dd 05541934ch
+dd 0e4cc8b65h
+dd 0078c7cfah
+dd 0c6812606h
+dd 0e3dc91d0h
+dd 0f01c426bh
+dd 092ae6a72h
+dd 0884f3e62h
+dd 0b4504bd7h
+dd 0e710640ah
+dd 0808915e6h
+dd 04cf75629h
+dd 07cc8185eh
+dd 04de2d66fh
+dd 054f6fd8ah
+dd 09a858a92h
+dd 030ceed55h
+dd 0ef59a863h
+dd 08cee824bh
+dd 0a425da6eh
+dd 0442db3f8h
+dd 0f0b747dch
+dd 0d3c6f15fh
+dd 05257c88eh
+dd 099dccdfbh
+dd 0330eb986h
+dd 09e67fee9h
+dd 0ee3c93f6h
+dd 099cf5470h
+dd 0f38fca7fh
+dd 07cadbb06h
+dd 02f6f5a1ah
+dd 0d9efff1eh
+dd 0a825ae1ah
+dd 04f8694c5h
+dd 0f49cf28dh
+dd 0ee223b37h
+dd 098c77cfdh
+dd 0a518302dh
+dd 0076f8031h
+dd 01eceadaeh
+dd 0b26db59eh
+dd 0026a7e99h
+dd 090d06a3fh
+dd 0dfde138dh
+dd 050b1b36fh
+dd 03cfe15bdh
+dd 054e6b635h
+dd 044da9cfdh
+dd 019418677h
+dd 0538fb47ah
+dd 0912fcff0h
+dd 0fe55c916h
+dd 00065ae06h
+dd 061999611h
+dd 0cc274ccfh
+dd 0ae0c50e0h
+dd 00a4f1b36h
+dd 071feea95h
+dd 0a0e2c89eh
+dd 0e8afd6afh
+dd 0806b4b42h
+dd 010182e4bh
+dd 01942473bh
+dd 044ea2a14h
+dd 0864165f3h
+dd 00b6ca83bh
+dd 0c2653f83h
+dd 079eb476dh
+dd 04021dd62h
+dd 0fb704ad9h
+dd 04f61a18ch
+dd 05a2f4bafh
+dd 0864da949h
+dd 0fff8bcd1h
+dd 018817575h
+dd 04396244dh
+dd 0e3d09819h
+dd 0d2a53891h
+dd 05d28c325h
+dd 0c3f0af94h
+dd 08a22b5a3h
+dd 0b73794d1h
+dd 085e521efh
+dd 03c4f7e1bh
+dd 01d9841d6h
+dd 018e702b4h
+dd 0c0294486h
+dd 0be01a5deh
+dd 0bd246810h
+dd 07e9c02fah
+dd 0b1c5d724h
+dd 014af2f39h
+dd 0804bd3c6h
+dd 04872aecdh
+dd 0d8a2cd8fh
+dd 0557da44eh
+dd 07ea05961h
+dd 00e232173h
+dd 028cb8a89h
+dd 0ef68e71eh
+dd 0ceb5d518h
+dd 0521365adh
+dd 065b2b1cdh
+dd 050463451h
+dd 015b650ach
+dd 084833ae6h
+dd 016276680h
+dd 0798aa182h
+dd 0aaefa7a5h
+dd 09c5b147ah
+dd 0017f9e84h
+dd 08bd59867h
+dd 0b7900504h
+dd 0e338eac5h
+dd 09cc701c8h
+dd 0375519bbh
+dd 00cbb8b92h
+dd 06cccdb38h
+dd 0002d3978h
+dd 09ab91a7ah
+dd 08916b17ah
+dd 02666a15dh
+dd 0c14ffc01h
+dd 069f3aa73h
+dd 08f9fe34ah
+dd 0a3a71556h
+dd 0fa133397h
+dd 0a89badc7h
+dd 005988ad5h
+dd 096d100f6h
+dd 08a7ecf2ah
+dd 0191278a9h
+dd 0d1bf602fh
+dd 0ed49dd73h
+dd 06224e908h
+dd 0f68a087ch
+dd 07b76ecc0h
+dd 0471a3d81h
+dd 05f9154c8h
+dd 08398c138h
+dd 08b94683dh
+dd 004390137h
+dd 0863d677dh
+dd 0467e349ah
+dd 01648b689h
+dd 057a1eee2h
+dd 0437b9e9ch
+dd 032488988h
+dd 0e20c424eh
+dd 0a2a98cffh
+dd 087fd52c1h
+dd 0827640fbh
+dd 0048480e2h
+dd 06e6f384ch
+dd 049d93c05h
+dd 0485ff508h
+dd 024769bf8h
+dd 0083ae437h
+dd 0ae62bcf9h
+dd 0516fd7a6h
+dd 02504404eh
+dd 0101f18dah
+dd 0860c19adh
+dd 023cd5269h
+dd 045c21f1ch
+dd 09b44d344h
+dd 065b88323h
+dd 054b89bfeh
+dd 0c5905974h
+dd 04105be34h
+dd 04d10c03eh
+dd 099eb80dah
+dd 066f2b3f0h
+dd 0a7f9ca29h
+dd 03b71fff4h
+dd 05cc9d3ebh
+dd 0d923221bh
+dd 04b9a8014h
+dd 029cf8edeh
+dd 049f24021h
+dd 0f438a99dh
+dd 08d617653h
+dd 0b9c6e145h
+dd 09bcbe4cdh
+dd 0a265ad1dh
+dd 0c37c5647h
+dd 045815f28h
+dd 02df20d08h
+dd 0bd70f561h
+dd 05810c954h
+dd 072347a59h
+dd 0a799214eh
+dd 0430bbc54h
+dd 04bdfe1bbh
+dd 0a04308dfh
+dd 070fa7f00h
+dd 0ce69a944h
+dd 0adaa102bh
+dd 008fb7f33h
+dd 06c4976d1h
+dd 0630d9ae8h
+dd 0c5b03f95h
+dd 01ccbcfc3h
+dd 0a56ea992h
+dd 0f459e7bdh
+dd 0df8a7e49h
+dd 06c518badh
+dd 0f26769fbh
+dd 0a43190dch
+dd 0b40a206ah
+dd 051893fd9h
+dd 0de2ae228h
+dd 04d1c4cf5h
+dd 0f025638bh
+dd 0bb6f94a7h
+dd 04d4aed76h
+dd 0d28d806bh
+dd 006446386h
+dd 0a54c04a5h
+dd 01a59d0e0h
+dd 05d4517d8h
+dd 0aa1d0dc0h
+dd 05008c4c7h
+dd 0fd25e0e2h
+dd 0ad9bba74h
+dd 06d230c55h
+dd 06649b429h
+dd 07682bddch
+dd 06d58b6c4h
+dd 00f2e70b1h
+dd 0a615bfaeh
+dd 0d71c2f7dh
+dd 0248bcc9ch
+dd 04288fed2h
+dd 08804e71fh
+dd 0229be8ffh
+dd 041ef0076h
+dd 0e59e5675h
+dd 0c065f089h
+dd 08b0c8ddah
+dd 029632927h
+dd 065152499h
+dd 0c9c81c61h
+dd 0f11574c6h
+dd 0fb41cff0h
+dd 0ea66f038h
+dd 067ff3dc1h
+dd 03e7204bch
+dd 0b78d6f8fh
+dd 0be1a8294h
+dd 07ac5a545h
+dd 074243c0ch
+dd 058a30ad8h
+dd 074185ef9h
+dd 0aa5842afh
+dd 01d2c5f32h
+dd 02c3415cbh
+dd 0cf7ad740h
+dd 0fd72adefh
+dd 05e3454b1h
+dd 000df8495h
+dd 0872371d0h
+dd 09b327d6dh
+dd 0ebf28f8ch
+dd 07843d9ebh
+dd 09dae0b8bh
+dd 0c36bcdeeh
+dd 0696a9a52h
+dd 08fdc7e79h
+dd 09fef4548h
+dd 0f883d0a0h
+dd 00b8ccd14h
+dd 004f75e77h
+dd 0f0b4831fh
+dd 0dfaf4700h
+dd 06fddf6ebh
+dd 057550aadh
+dd 0d1ee9b9ah
+dd 039c88497h
+dd 04076fbc5h
+dd 03c99b3e0h
+dd 0e0fef9aah
+dd 046679759h
+dd 04a67e079h
+dd 0caffb582h
+dd 0564a8e60h
+dd 021df81dbh
+dd 08283553ah
+dd 043c6a717h
+dd 0d22b11d9h
+dd 021312a2eh
+dd 036082a85h
+dd 0d8ab2556h
+dd 01c62f857h
+dd 040dd647dh
+dd 00f928d2ah
+dd 099e3e35fh
+dd 0d8ed8644h
+dd 0a25566d3h
+dd 057158523h
+dd 010b696a0h
+dd 0376cd306h
+dd 087fbd105h
+dd 036ea3a95h
+dd 0c1ae8d16h
+dd 0859521bbh
+dd 07caa175fh
+dd 0ae78d335h
+dd 0ff83e176h
+dd 0105fecd6h
+dd 0c167da4bh
+dd 088918596h
+dd 09f5528b3h
+dd 0933e4f83h
+dd 05beb87abh
+dd 05cb4bda8h
+dd 09f57816eh
+dd 0e4e7fe07h
+dd 06fa06a42h
+dd 040dc8073h
+dd 08e61cb27h
+dd 09419d405h
+dd 095658798h
+dd 0a7cd6e4eh
+dd 0839754d0h
+dd 01c2db621h
+dd 0668d0585h
+dd 02066b3beh
+dd 04f565734h
+dd 0ee1290c2h
+dd 0020df340h
+dd 0e06499a1h
+dd 033e7f4e6h
+dd 03ff99d62h
+dd 090be8a95h
+dd 02a3d4cabh
+dd 0d326c655h
+dd 0e50ccd63h
+dd 0e18a2f83h
+dd 020bcc58dh
+dd 050050bcdh
+dd 0eb65eefeh
+dd 0a709830bh
+dd 03c62a9dah
+dd 05a1be5b5h
+dd 023930cf0h
+dd 0277c896bh
+dd 0372dd10bh
+dd 0e68a2ff4h
+dd 00517b848h
+dd 092935e15h
+dd 030a20cb4h
+dd 036d88c79h
+dd 007ebe758h
+dd 0d6b22ecah
+dd 0bc298423h
+dd 06cb260dbh
+dd 0d85f55cah
+dd 01c7a90ach
+dd 04af50723h
+dd 04241b474h
+dd 0aa20d644h
+dd 08d20f0abh
+dd 028f00489h
+dd 0eb314f26h
+dd 06e579650h
+dd 088cc0c47h
+dd 0c2681dedh
+dd 024f1dd03h
+dd 018ec7b50h
+dd 088592b26h
+dd 0e230b5b9h
+dd 02867acd1h
+dd 0877a403ah
+dd 0308c3092h
+dd 08faf9473h
+dd 050dd7342h
+dd 07d7abd1ah
+dd 0744e3728h
+dd 0184b4087h
+dd 054249bcfh
+dd 06058a12dh
+dd 0ad1d15fbh
+dd 052e5c5d7h
+dd 09499a458h
+dd 0b67faa7dh
+dd 02d03c7f5h
+dd 06c159c19h
+dd 048672ce4h
+dd 057b5b97ah
+dd 0b8027854h
+dd 059a006c6h
+dd 021ff893dh
+dd 022eccd4fh
+dd 0d27a08b1h
+dd 05abe2155h
+dd 08f61d95bh
+dd 0e7bcaa93h
+dd 0320cbe28h
+dd 049c1e8cah
+dd 0c33682e9h
+dd 08c45bee4h
+dd 0380a5a80h
+dd 0b7ce00b3h
+dd 04236cb1dh
+dd 0037ed833h
+dd 03a7bc181h
+dd 0d49cb5f8h
+dd 0eb00d39eh
+dd 0b6ac995eh
+dd 05e5624abh
+dd 02ad7e9a7h
+dd 0f27cf992h
+dd 017a91fb6h
+dd 0ea6741bch
+dd 0f6d1375ch
+dd 0f30052cdh
+dd 0f1cd8dc4h
+dd 0e43fa93bh
+dd 0ec5c04f5h
+dd 0dede9ac0h
+dd 05359efdeh
+dd 0086b7c1dh
+dd 07ccdf277h
+dd 0ab305d02h
+dd 0a8536b20h
+dd 05f334081h
+dd 0b15117edh
+dd 0b665c29fh
+dd 0bab256dch
+dd 0dadd606fh
+dd 037782df9h
+dd 091dc6035h
+dd 0fd4001edh
+dd 05e1a0712h
+dd 0ba7d7e39h
+dd 0b8899c8dh
+dd 0f3e3795fh
+dd 038d5ad41h
+dd 09e55ceafh
+dd 0aabc5689h
+dd 069418576h
+dd 01d219dach
+dd 0472f9d1dh
+dd 02fcfc8a4h
+dd 060a0df0bh
+dd 03b5fca35h
+dd 0c524c51eh
+dd 0ad6e9b85h
+dd 05052bdb3h
+dd 0f5fb1616h
+dd 0385d8ed1h
+dd 0a7061b8bh
+dd 02b1a6e9bh
+dd 0729c8e12h
+dd 0b72b67bbh
+dd 034020bd5h
+dd 0c3751ffeh
+dd 0a32d0640h
+dd 0e35a877bh
+dd 01c1a40cah
+dd 05e186816h
+dd 054260025h
+dd 038b04e31h
+dd 0e38b3ad0h
+dd 08c7b7186h
+dd 02485d51bh
+dd 092a37be1h
+dd 02dd190afh
+dd 06efe3a7bh
+dd 063b9d2cah
+dd 0fe4512b9h
+dd 0f6c9c7e0h
+dd 0d53b8bf9h
+dd 007d25b30h
+dd 0d1153571h
+dd 009d07746h
+dd 02842e320h
+dd 049d82861h
+dd 0df20b65fh
+dd 0414227e3h
+dd 0cd4e81d3h
+dd 0a7033322h
+dd 054f0a4cbh
+dd 0b04aa373h
+dd 0ceb44f87h
+dd 043fd0e39h
+dd 0127a0a49h
+dd 0669d5aa4h
+dd 080cd80deh
+dd 0aabe369ah
+dd 0fca0fc2ch
+dd 01d4d1f23h
+dd 0d2fac104h
+dd 08d3ad85ah
+dd 0831f93c2h
+dd 0613ff697h
+dd 09c02a638h
+dd 076e24de3h
+dd 08ba29f69h
+dd 0152e8d45h
+dd 00177b567h
+dd 0b45a3849h
+dd 00c7b4109h
+dd 0937b8918h
+dd 049576f51h
+dd 0ffa87845h
+dd 03edafb52h
+dd 08adda12dh
+dd 06a612ef2h
+dd 06eab0678h
+dd 068668892h
+dd 06f057eafh
+dd 05959a3d9h
+dd 0160baef6h
+dd 03d212da4h
+dd 0bea18b92h
+dd 02a8e1fb6h
+dd 0c8e33566h
+dd 0056ff7bah
+dd 0b04e3d69h
+dd 031605469h
+dd 02b7e4200h
+dd 0bd63e597h
+dd 07fd45728h
+dd 088a6aa28h
+dd 0a8c51ef9h
+dd 09f2819d1h
+dd 0dfc11d72h
+dd 04ec940dch
+dd 087d9e367h
+dd 0801314d2h
+dd 02370db1bh
+dd 0f35841a8h
+dd 0a8a23756h
+dd 00807f834h
+dd 01623457dh
+dd 0841fdd7ch
+dd 03a63d1e1h
+dd 086f8d982h
+dd 0c79c77adh
+dd 0f985aed2h
+dd 0c97a460ch
+dd 0f5d5c127h
+dd 066be281bh
+dd 0d559d734h
+dd 0c96eb5bch
+dd 020301c17h
+dd 0ce1943ach
+dd 0c2e8c168h
+dd 0cd63b43ch
+dd 0bb65a078h
+dd 014b38851h
+dd 0fa6d56c8h
+dd 0fc9430c9h
+dd 00014a228h
+dd 02da65191h
+dd 0c6408967h
+dd 027ed2350h
+dd 0aa909208h
+dd 01d3b7f32h
+dd 0c89b3d7eh
+dd 0f54f662ch
+dd 0a78de532h
+dd 047fd98e9h
+dd 0d0110448h
+dd 04cdb9792h
+dd 0ef582018h
+dd 0930a1ce2h
+dd 071272da3h
+dd 066941991h
+dd 0df9486dbh
+dd 08cf06162h
+dd 0a07dff3ah
+dd 05e86241eh
+dd 0bf7e2fdeh
+dd 07304571fh
+dd 0a320c33eh
+dd 0b661843ah
+dd 0731e1c3eh
+dd 08ea72a86h
+dd 03fa7c974h
+dd 0ab730909h
+dd 0fdb18f24h
+dd 03cb7b1ebh
+dd 0d0c38cabh
+dd 0863a0da8h
+dd 092491cb8h
+dd 010bb149fh
+dd 0133b28efh
+dd 016c40a06h
+dd 0788c7603h
+dd 0353b1aabh
+dd 027cff7a8h
+dd 0e4ee7b94h
+dd 031476ddbh
+dd 0d4eb6cbch
+dd 002cde339h
+dd 09a35ed9ch
+dd 005a95833h
+dd 0af1bf3a4h
+dd 02c57bb56h
+dd 0decb8c0ah
+dd 06f1201e7h
+dd 0421a24adh
+dd 0dfaf6bd6h
+dd 0777ae05bh
+dd 0eea2a84fh
+dd 09e822affh
+dd 022a47abeh
+dd 04cb9a98bh
+dd 078e9fc20h
+dd 07b488680h
+dd 0281dbf66h
+dd 0374b9a0eh
+dd 0b63658dfh
+dd 08c01eba6h
+dd 016efa5f6h
+dd 05fb8b3cfh
+dd 0cc1ebca8h
+dd 0ab25593ch
+dd 04a6d921ch
+dd 07c74e260h
+dd 075b09e62h
+dd 023eacfbdh
+dd 0aa3c4410h
+dd 09a5a005dh
+dd 0b135624ah
+dd 0b30ab756h
+dd 07fb98cffh
+dd 08b8a8242h
+dd 058206933h
+dd 0ad83e74ch
+dd 099c0d108h
+dd 0df7943b1h
+dd 0dd245dd6h
+dd 085054514h
+dd 0d75004bbh
+dd 0876277c8h
+dd 0b6b92eeah
+dd 0e2734dc4h
+dd 0af6d38cbh
+dd 0a186369dh
+dd 08b318cb5h
+dd 053be7f28h
+dd 03545d8e8h
+dd 08fef17bfh
+dd 0ff2f3398h
+dd 0bb8c095eh
+dd 0a714cc9eh
+dd 0bc6d3608h
+dd 060880255h
+dd 09f869ec0h
+dd 0e7439aa2h
+dd 0acdae99bh
+dd 0100a75a1h
+dd 0a58dfdb2h
+dd 0cfc180f3h
+dd 03cff8760h
+dd 01cd29bd6h
+dd 0e5ed147eh
+dd 09f40edc0h
+dd 01058f212h
+dd 03ed6443fh
+dd 0ab0c7b9eh
+dd 01bc79ccbh
+dd 0a56eb618h
+dd 0353c8480h
+dd 0eda740f1h
+dd 03d32fb89h
+dd 0406c320ah
+dd 029aff9e3h
+dd 06593c5f6h
+dd 017203aadh
+dd 0e21c6d90h
+dd 01f0e36d3h
+dd 0dd076304h
+dd 0e8f10f29h
+dd 032960a91h
+dd 0a771f45ch
+dd 0101c3254h
+dd 0a34f9212h
+dd 0e6873dffh
+dd 0187668b1h
+dd 05585a6a2h
+dd 0bdd3211ah
+dd 0f9d69510h
+dd 0d0259b34h
+dd 04ac96681h
+dd 09e836c00h
+dd 0e4b49400h
+dd 001f911ddh
+dd 0f0e7401ch
+dd 0876c9450h
+dd 055eabc52h
+dd 09c6ab820h
+dd 0f26d387bh
+dd 03d8fd4ddh
+dd 07a411d42h
+dd 089e05270h
+dd 04e3ac48eh
+dd 083ca7461h
+dd 08e2d716bh
+dd 051e16a56h
+dd 0a1688dc3h
+dd 0874ed6f7h
+dd 087d4539fh
+dd 06154985eh
+dd 02b7ed221h
+dd 040bfb9dbh
+dd 0cca52628h
+dd 086d7a46ch
+dd 0b8081538h
+dd 039d8ffd8h
+dd 0865b5fa8h
+dd 03da57fb3h
+dd 08f6f90e4h
+dd 00a9e32c7h
+dd 0aa7262e5h
+dd 0e87bb9e7h
+dd 0dc486abdh
+dd 0919f5e93h
+dd 0133e3102h
+dd 0368e6b02h
+dd 093529a93h
+dd 0a5a125e1h
+dd 036d1276bh
+dd 0e70a523dh
+dd 00913bc7ah
+dd 0f6503f18h
+dd 0d55e5708h
+dd 0724c2c1dh
+dd 02921680eh
+dd 036eb5c65h
+dd 04983501ah
+dd 0d934e03bh
+dd 05f3cf84bh
+dd 0d0202559h
+dd 0c2a0655fh
+dd 0354ad7cah
+dd 05a604e5ch
+dd 0a3603b97h
+dd 05bc19f30h
+dd 01f78a33eh
+dd 072316cb5h
+dd 0758d9f26h
+dd 09392faebh
+dd 036bff89fh
+dd 07204bc27h
+dd 0d188184ah
+dd 0c1478b59h
+dd 073302dbah
+dd 00a311bf7h
+dd 00953dbb9h
+dd 0f8fa5f06h
+dd 04b6021ebh
+dd 044568760h
+dd 048cd766fh
+dd 057637447h
+dd 0b5902ebfh
+dd 07de6407dh
+dd 0ec117fe8h
+dd 0189f40c5h
+dd 0fefe0499h
+dd 04f644597h
+dd 0129f08e1h
+dd 055f749dch
+dd 09635cdf0h
+dd 00293e6e9h
+dd 03b9a9b41h
+dd 015630a3fh
+dd 0285e718bh
+dd 054de3e36h
+dd 02fa741cdh
+dd 0fea9af0bh
+dd 0c72502d0h
+dd 007048d6eh
+dd 0b900f1d1h
+dd 09c2ed00ch
+dd 0fd2f0a76h
+dd 01ef0c66ah
+dd 0576e22d2h
+dd 075bda7e7h
+dd 0af05ec0bh
+dd 0c9d6b472h
+dd 05b0fdf54h
+dd 034bbb2bch
+dd 0f24b3620h
+dd 0df4cc29fh
+dd 0282f4583h
+dd 0b7484273h
+dd 034bf98c6h
+dd 0dc8c32eeh
+dd 033ff4b8eh
+dd 0cddaada1h
+dd 0c868af07h
+dd 0255d4bc3h
+dd 00d1a618eh
+dd 085ffb8cbh
+dd 0436d7c07h
+dd 0a3b2fe95h
+dd 0fcff35b4h
+dd 07aca5eefh
+dd 05a04f60fh
+dd 0ba479644h
+dd 0995c7975h
+dd 03644519ch
+dd 0d974beabh
+dd 08df180d1h
+dd 076eededch
+dd 07b0f55a9h
+dd 009e1c8b4h
+dd 06216b280h
+dd 00c7a408ah
+dd 0135b24a6h
+dd 0ac446fa1h
+dd 0d367dbb3h
+dd 0fe5c330bh
+dd 075e878d8h
+dd 028dfd681h
+dd 041118744h
+dd 0a5ad6d6ah
+dd 0d0fc977fh
+dd 0797fe87eh
+dd 0fabcc5ddh
+dd 0db6327fch
+dd 012921ab1h
+dd 0cc7aba94h
+dd 049874249h
+dd 01f0719d2h
+dd 0c2c41bd9h
+dd 026c3d54ah
+dd 09722ea54h
+dd 0a5bc16dbh
+dd 03f7f3233h
+dd 0c7b887c4h
+dd 0948dca54h
+dd 055566f4ch
+dd 011391cf5h
+dd 033149337h
+dd 0566850f6h
+dd 0f8935a6bh
+dd 0b9508938h
+dd 0b56352dfh
+dd 0ea56cfd4h
+dd 0e247a38dh
+dd 0399a0af2h
+dd 04c8e6b1ah
+dd 055dfe32ch
+dd 0789e2638h
+dd 062977adch
+dd 0dca3739eh
+dd 0a76fde57h
+dd 0f573259ch
+dd 09e629134h
+dd 0fe529400h
+dd 0d1dd348ah
+dd 0abf91d70h
+dd 00c383540h
+dd 06de1256fh
+dd 0de14a90ch
+dd 0067a27f9h
+dd 0e31f1fcah
+dd 0b6c5ae95h
+dd 0973e617ah
+dd 00776e752h
+dd 0f09f22d7h
+dd 01610305fh
+dd 0c142e1d4h
+dd 0cb39a929h
+dd 0cad16de9h
+dd 0c0ae53c9h
+dd 01ec302bfh
+dd 076501302h
+dd 0cb1d934fh
+dd 0d30c284bh
+dd 093a4cde0h
+dd 0041c8370h
+dd 03c149281h
+dd 03b4af9c9h
+dd 0d1a1ed13h
+dd 0ad392cc6h
+dd 011544a75h
+dd 016e43ce4h
+dd 0101bac95h
+dd 0dd611287h
+dd 08a3af379h
+dd 024323877h
+dd 00f48b298h
+dd 0d439f12dh
+dd 03be553d7h
+dd 0537bd8bah
+dd 07fc17c97h
+dd 071bbc4ach
+dd 0f2b5e6bdh
+dd 0ae626520h
+dd 0869031e0h
+dd 0013590cfh
+dd 00615ed56h
+dd 06c55f464h
+dd 00fbe0bb9h
+dd 0e502ef2dh
+dd 09b5a629bh
+dd 0ce6c0896h
+dd 0abd0d139h
+dd 0d6c5858ch
+dd 0409019a8h
+dd 0e270c723h
+dd 0d03b30f5h
+dd 00736a851h
+dd 08919fa5ah
+dd 0ffb4818ah
+dd 0a4e6241bh
+dd 01480b54ch
+dd 0317deebbh
+dd 0fd718275h
+dd 0f5c39b25h
+dd 0ebc6f9b3h
+dd 0864f8cbdh
+dd 0357ac266h
+dd 004291ca4h
+dd 0e38c84c9h
+dd 07616a29bh
+dd 00855f618h
+dd 0567563e5h
+dd 0c0211e03h
+dd 0773c9ec0h
+dd 06f85105fh
+dd 097a63e9bh
+dd 00be2afd8h
+dd 0e15b7f44h
+dd 068164b5ch
+dd 0c14cf471h
+dd 0c6d03786h
+dd 0812018bdh
+dd 0b421421eh
+dd 003a412d3h
+dd 0962c9df4h
+dd 0e1f96f68h
+dd 046b7f9a3h
+dd 090aeae3ch
+dd 031b1bff2h
+dd 037eb2358h
+dd 06ddc4ecdh
+dd 0d8657f3ah
+dd 0d3e94bbbh
+dd 02e9b93d7h
+dd 0373ad071h
+dd 03af60fa3h
+dd 057cb7cdeh
+dd 0ba31a08eh
+dd 04d99b3bch
+dd 0fbd61880h
+dd 010367a1ch
+dd 0730590ach
+dd 08950d09ah
+dd 05e7dd1e2h
+dd 0a7b91678h
+dd 0c1a5ccffh
+dd 00c9aaa9fh
+dd 0e699beadh
+dd 0e17ede06h
+dd 08189ace4h
+dd 03c42ef29h
+dd 0d29a2132h
+dd 0b8426680h
+dd 076b02a41h
+dd 096514cfeh
+dd 07c50c282h
+dd 07c7b8cd5h
+dd 09adc9efeh
+dd 0e9c6e489h
+dd 06922124fh
+dd 0f1b2aef0h
+dd 0c0fbf477h
+dd 0642469e6h
+dd 098c1646eh
+dd 055a479afh
+dd 098ede201h
+dd 0b0c17e89h
+dd 035dda0f7h
+dd 05eecba92h
+dd 07e7bf193h
+dd 0902bf8fbh
+dd 0c5328d16h
+dd 0c0611b74h
+dd 0b5b9f5b0h
+dd 071fb5705h
+dd 0897e93cah
+dd 02b2a65adh
+dd 0c821219ah
+dd 0ca89d134h
+dd 0a3d17d03h
+dd 09201653eh
+dd 0a7baef4dh
+dd 050377606h
+dd 0b4d1d448h
+dd 000f42adah
+dd 0631df77dh
+dd 0464c0b3eh
+dd 0bc45c628h
+dd 02854b129h
+dd 05805e134h
+dd 0d6cd6611h
+dd 064a359c2h
+dd 0210f7edch
+dd 035ee2cb0h
+dd 09bf35530h
+dd 0d2507ab7h
+dd 0843c142ch
+dd 00ce30379h
+dd 0a8208e01h
+dd 0264a5bf9h
+dd 01143c838h
+dd 098300c1fh
+dd 0e7955a53h
+dd 0dd140273h
+dd 0530ff9b0h
+dd 0d1c55f62h
+dd 0762d1f2ch
+dd 051539b7ch
+dd 0f485c25ch
+dd 0f4b5630fh
+dd 0579dd590h
+dd 0fc130214h
+dd 0b7741ad2h
+dd 03bd85ff8h
+dd 0941ef2d9h
+dd 030cdefbbh
+dd 00ff99150h
+dd 0fc475c8dh
+dd 04a365594h
+dd 074f289efh
+dd 041f01a90h
+dd 03ad02c78h
+dd 0811f6f08h
+dd 0dbb49ee0h
+dd 06c14a8f7h
+dd 071828941h
+dd 00c48bee8h
+dd 029c3badfh
+dd 0cd99b85fh
+dd 0e825cafdh
+dd 0d8b394e9h
+dd 0e3ed9922h
+dd 0121534c0h
+dd 087eb2801h
+dd 019f6cfd5h
+dd 038ba9b77h
+dd 05766981eh
+dd 05cc12ac2h
+dd 009f39a91h
+dd 0f41dcdd3h
+dd 09a2db2b4h
+dd 017060c21h
+dd 0e0f92357h
+dd 02893b7b7h
+dd 08d733e61h
+dd 042790539h
+dd 05889d448h
+dd 0c00cd8f9h
+dd 05c9af616h
+dd 03477516dh
+dd 0fa072f01h
+dd 0e129837ah
+dd 0c3226b58h
+dd 0b9960dddh
+dd 0f9d5560ch
+dd 0a30a4160h
+dd 0465497d1h
+dd 0fa42c1d2h
+dd 05ba73bb1h
+dd 0216c040bh
+dd 0e0b4af03h
+dd 0ce5d6f34h
+dd 096fa08d1h
+dd 03c96cad1h
+dd 08a83f573h
+dd 04f734f4bh
+dd 0a730d4a1h
+dd 081a3cdd0h
+dd 0eecffe64h
+dd 0808404c5h
+dd 051b2bfd3h
+dd 0f9828908h
+dd 0eeaa8323h
+dd 0488f9c9bh
+dd 032213f62h
+dd 063e65a0fh
+dd 09a95323ch
+dd 0cc9efda1h
+dd 04c0e2df6h
+dd 030d990e6h
+dd 086a2e76bh
+dd 066005d82h
+dd 0ca9410e5h
+dd 0b8ff9ac9h
+dd 0ea222283h
+dd 0136529e7h
+dd 0860c042ch
+dd 04f2ef635h
+dd 084ba466fh
+dd 0a3b0cd25h
+dd 022ecb6e8h
+dd 0d0f86c5bh
+dd 08a5fd8cfh
+dd 0331618f0h
+dd 0b7c06253h
+dd 0605c9558h
+dd 07369a3c5h
+dd 0eb044d87h
+dd 0df422aa4h
+dd 094d9d54bh
+dd 0f31461eeh
+dd 0cbce1c67h
+dd 02224aef0h
+dd 04280c970h
+dd 01a2aedf9h
+dd 0c9f0606bh
+dd 07433b104h
+dd 002a0fb96h
+dd 04516488bh
+dd 0a2985131h
+dd 09a0bc865h
+dd 0d95d4731h
+dd 03a5c5ce9h
+dd 0432dc2e3h
+dd 065956512h
+dd 0966fecabh
+dd 015e34694h
+dd 0832f55a6h
+dd 096255e29h
+dd 09f2d6a8bh
+dd 00eb1ef71h
+dd 01299302dh
+dd 07928dde3h
+dd 0509fd3abh
+dd 0904aa9cfh
+dd 0b782d261h
+dd 06f242b06h
+dd 062717b61h
+dd 0fdff2836h
+dd 0a5c8c893h
+dd 02ac744aah
+dd 0ff8bb711h
+dd 04a875982h
+dd 0fdbc6b18h
+dd 09573bf37h
+dd 0a782856fh
+dd 01bd2fd65h
+dd 0b56c1053h
+dd 04a1ebebfh
+dd 0ac9ed91eh
+dd 063370b67h
+dd 0b2b75d24h
+dd 0bed98475h
+dd 0092047c3h
+dd 0abdd2b57h
+dd 06c40e717h
+dd 04eeae079h
+dd 0d39f7774h
+dd 01ac5d092h
+dd 006d00818h
+dd 06be7c146h
+dd 0f48be440h
+dd 02573e161h
+dd 0b27a431dh
+dd 0381cf5ach
+dd 02cab9ec1h
+dd 008739502h
+dd 0bb40cc0bh
+dd 05f8103f6h
+dd 07165669ch
+dd 09f537d6ah
+dd 01b94f357h
+dd 05c1df87ah
+dd 0b02714adh
+dd 023d688c1h
+dd 0030001ach
+dd 0f6cdf41fh
+dd 0464450fah
+dd 06cba2564h
+dd 0fa69ff27h
+dd 01356da26h
+dd 0690afcb6h
+dd 03e855511h
+dd 06e1cb8bah
+dd 00979c13dh
+dd 0d909b207h
+dd 05495268bh
+dd 08187fc73h
+dd 0822c1cfch
+dd 087f02d57h
+dd 0e5b51bb7h
+dd 002d2f955h
+dd 0af5d526fh
+dd 0f9557711h
+dd 0bbe1cc52h
+dd 00eed89a7h
+dd 047ca1313h
+dd 078d8bde8h
+dd 0cb8d7ec3h
+dd 0fc71b953h
+dd 0800a5443h
+dd 0a784233dh
+dd 02d99ac25h
+dd 0c831ef7ah
+dd 0fd4a29b1h
+dd 07848a3b0h
+dd 01dcae996h
+dd 0cd9ba182h
+dd 0df2bcd08h
+dd 0351e68d2h
+dd 05ffa322dh
+dd 0b2c8c0c7h
+dd 09d08cdeeh
+dd 055434097h
+dd 09d53340bh
+dd 0f34dce37h
+dd 0dc529359h
+dd 0294f7306h
+dd 0d8b57af4h
+dd 0a4a95eb1h
+dd 02fed92fdh
+dd 0bdbd1095h
+dd 04bd340b7h
+dd 04ae9c3bah
+dd 003bcef52h
+dd 0cb7abd40h
+dd 04f3af81bh
+dd 098c6763dh
+dd 08313697eh
+dd 0aee485ech
+dd 046a4e955h
+dd 03babc31fh
+dd 0fe12ea6ah
+dd 0844aab8fh
+dd 02873cd69h
+dd 036725a93h
+dd 03794f5c3h
+dd 08b7d3ab7h
+dd 0e0540fbah
+dd 0fcaae7e8h
+dd 0e6ad826fh
+dd 0f0ca6cedh
+dd 06cc4dddfh
+dd 03efc6307h
+dd 08f488e77h
+dd 0ce4dcc0bh
+dd 05898918fh
+dd 01a7dbca7h
+dd 0ea4e95d4h
+dd 058547b51h
+dd 035583f6ch
+dd 06df760d9h
+dd 0a765bef5h
+dd 0d9663613h
+dd 04ff93144h
+dd 07df4edcch
+dd 0f81fb26eh
+dd 0efdf58b8h
+dd 0efefbe15h
+dd 06a6b1b9ah
+dd 0da0e8964h
+dd 02913382ah
+dd 0bb020366h
+dd 01c005cc6h
+dd 0e44b9a04h
+dd 012b1a1fch
+dd 099a081b0h
+dd 0f817223ah
+dd 0efa2a9eeh
+dd 09c121977h
+dd 04750917ch
+dd 0163efeb3h
+dd 04815c3f1h
+dd 06ba784fah
+dd 0515bafd7h
+dd 0144ce20dh
+dd 03d26a789h
+dd 0febf9d5ah
+dd 0e30aa97eh
+dd 01d2a1ac2h
+dd 03e3aef65h
+dd 0a01ffd90h
+dd 09b0daa69h
+dd 078574ab4h
+dd 0b334ed5dh
+dd 01786d7a0h
+dd 061768191h
+dd 0691854f9h
+dd 0730296a0h
+dd 01a894d02h
+dd 07a6d9fbch
+dd 004ac0b63h
+dd 0e5ff86d1h
+dd 040d6600dh
+dd 001475ec0h
+dd 075d772bah
+dd 00c7cecach
+dd 06de78016h
+dd 0693d156bh
+dd 0c160bdbch
+dd 0c6d61e3eh
+dd 05b970597h
+dd 082c03caah
+dd 0d023d7bdh
+dd 0d9bd0b7ch
+dd 01484cf2bh
+dd 0ea2d7b78h
+dd 0613592afh
+dd 0a294ade4h
+dd 0a1835fa8h
+dd 0cfdde01dh
+dd 08b916fd9h
+dd 061147b61h
+dd 086e3d3b1h
+dd 05d0bd8e8h
+dd 03ed5da40h
+dd 085b28fcdh
+dd 0ae4bfb46h
+dd 056c44528h
+dd 05112268bh
+dd 0553092f4h
+dd 01edbd099h
+dd 081c77c0dh
+dd 0f60ab29bh
+dd 01cd81671h
+dd 02148f5d7h
+dd 0d0b24ebah
+dd 075b2f6aeh
+dd 0cf96a73ch
+dd 00c360788h
+dd 04b4887d8h
+dd 038ec6670h
+dd 0522126f7h
+dd 0c59cde5eh
+dd 00cb08e6bh
+dd 0afb76455h
+dd 0d1df2647h
+dd 095fe2194h
+dd 0e5f90fcch
+dd 0897eca10h
+dd 0e66067b7h
+dd 00aa5a33dh
+dd 0823fcdf9h
+dd 03c1db01eh
+dd 07163ae13h
+dd 0e6479712h
+dd 0043522abh
+dd 0e9c77899h
+dd 059e27c1fh
+dd 062b17fb1h
+dd 0800eacd1h
+dd 017fd4be0h
+dd 0ac9e7d19h
+dd 0326a5859h
+dd 0efe83674h
+dd 0c51e8bc2h
+dd 0c70daf83h
+dd 02e698283h
+dd 04841f017h
+dd 0d35aee31h
+dd 073b989feh
+dd 07a464801h
+dd 0ef166a1ah
+dd 0cd0b40b6h
+dd 03670ae53h
+dd 09386256bh
+dd 0cabeedb6h
+dd 086b6f02fh
+dd 046c3f0e6h
+dd 09cf90f0eh
+dd 06e9a368dh
+dd 01d41107dh
+dd 0bccabc2eh
+dd 0d33574a6h
+dd 0631590f9h
+dd 04f163f36h
+dd 0151b1af0h
+dd 00fa1b693h
+dd 068c0f081h
+dd 03d42b889h
+dd 01a71eb60h
+dd 098bf454eh
+dd 01e5e8424h
+dd 0f7d791dah
+dd 0b17a1e56h
+dd 0de83a151h
+dd 0a629bf73h
+dd 0840fb2cdh
+dd 03dabd546h
+dd 0bcef01ceh
+dd 004be098dh
+dd 02eee4abfh
+dd 07b3af0adh
+dd 0614c45bch
+dd 048716483h
+dd 04a839eech
+dd 026785211h
+dd 009b07e2ch
+dd 0f4e3d7c6h
+dd 0d2ef8bbeh
+dd 0a842ccd3h
+dd 01eb44204h
+dd 006356489h
+dd 072c51dfdh
+dd 0bc40b374h
+dd 06c6f6f68h
+dd 08921b948h
+dd 0e68bf8e8h
+dd 0bf1d59fch
+dd 07836458bh
+dd 0ccd81feah
+dd 0d9579d65h
+dd 00cf901b5h
+dd 031b0d6a6h
+dd 078832d18h
+dd 090d6a8d6h
+dd 0b6c21964h
+dd 089303d52h
+dd 01c973cc2h
+dd 015409943h
+dd 06630b2a4h
+dd 0a56c1e83h
+dd 01086c103h
+dd 0b5f4d1d6h
+dd 03d8a9728h
+dd 0ba0e62dch
+dd 0aa6ff8c1h
+dd 006d9c4f6h
+dd 0f3856ff0h
+dd 0bfa12f23h
+dd 02acc80cfh
+dd 0b2a59965h
+dd 0adcdd4c2h
+dd 092eb8702h
+dd 0d64ddc5ch
+dd 0d4b6a934h
+dd 024134b6dh
+dd 037a8216dh
+dd 037600200h
+dd 0a825a280h
+dd 026b275adh
+dd 041374a41h
+dd 062094db7h
+dd 0b5243b36h
+dd 0954204b5h
+dd 0a1c1010ah
+dd 0c810a190h
+dd 0e5eebd53h
+dd 053aa31adh
+dd 05fcc85fbh
+dd 0f3b080dfh
+dd 00fcbd37ah
+dd 0d68bc6b5h
+dd 0f85f1889h
+dd 029465441h
+dd 0e7df5aadh
+dd 052170639h
+dd 06c109c2eh
+dd 0dfa052bfh
+dd 079ef2c9dh
+dd 09da4eb99h
+dd 02cb35944h
+dd 07bfd98dch
+dd 0742f1fd8h
+dd 0539fa58ah
+dd 07f851718h
+dd 0bfe3795fh
+dd 010c8b7c4h
+dd 0dc9d3a9eh
+dd 015f14a72h
+dd 0e3391212h
+dd 049c8333ch
+dd 04db4abd8h
+dd 0b7670d60h
+dd 04c6ba0eah
+dd 0a67bfe20h
+dd 04b682c50h
+dd 07dd312f2h
+dd 03a883d41h
+dd 0ec83bc5ah
+dd 06ebb1231h
+dd 0e0b3e127h
+dd 00885dcf6h
+dd 04f2c60feh
+dd 0ce4bb3a5h
+dd 089d6034dh
+dd 0c223cbdah
+dd 013b50fa0h
+dd 0a86e6078h
+dd 0cf3ed48fh
+dd 02a2d0790h
+dd 0b9b1c7fch
+dd 051c9fe7fh
+dd 025bc4b68h
+dd 074031ac2h
+dd 016a0068fh
+dd 0eadf280eh
+dd 0003ada40h
+dd 059a0738ch
+dd 0ef65d5c0h
+dd 0816cbb13h
+dd 0ecc2276eh
+dd 0439a4c2fh
+dd 013451baeh
+dd 08ab33897h
+dd 0e1c35755h
+dd 0abc692a2h
+dd 0ea8cf7d0h
+dd 0f70264b9h
+dd 0041a286ch
+dd 0f9878794h
+dd 014079fe5h
+dd 04604136fh
+dd 063e2124bh
+dd 073e0e5cah
+dd 079e2f000h
+dd 047c6039bh
+dd 0721b142ah
+dd 012e1d119h
+dd 0dfb6b397h
+dd 0826c2b3ch
+dd 03691115bh
+dd 04c08e257h
+dd 00dbc54e9h
+dd 078fafbcdh
+dd 071b5c6adh
+dd 022910b01h
+dd 0d6766623h
+dd 022c85824h
+dd 04a38b8cbh
+dd 001fd2c66h
+dd 0d2506c09h
+dd 06b675949h
+dd 0319fb5f8h
+dd 04d2a91adh
+dd 06efa872eh
+dd 092201830h
+dd 0012cbfc0h
+dd 0a7bfb402h
+dd 0ac8d20ddh
+dd 0a24d174ch
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679906.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679906.inc
new file mode 100644
index 0000000..9efb20a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679906.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 000000906h ; Patch ID
+dd 008142015h ; DATE
+dd 000030679h ; CPUID
+dd 0cf3c9be1h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000906h
+dd 000000000h
+dd 000000000h
+dd 020150814h
+dd 000003201h
+dd 000000001h
+dd 000030679h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 043a2ddb5h
+dd 03caab5a4h
+dd 027483746h
+dd 081710109h
+dd 0b410307fh
+dd 0c4c17cf5h
+dd 0376abbdfh
+dd 0f9f11abeh
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 0dcf2a922h
+dd 099601e38h
+dd 03f84f919h
+dd 0ad75fad6h
+dd 0699d8509h
+dd 0c92fafb6h
+dd 05adbc7b9h
+dd 0446728fah
+dd 094a6d10ah
+dd 0dc2ef7a3h
+dd 0ced37d60h
+dd 0ba66136dh
+dd 0862f88c6h
+dd 013d75d7bh
+dd 02959b2efh
+dd 03da0532dh
+dd 045c3d27ch
+dd 0b169f2d0h
+dd 0290ba31eh
+dd 0361c39ceh
+dd 080a68737h
+dd 061712566h
+dd 077278923h
+dd 034841240h
+dd 0cc144c56h
+dd 04ad89374h
+dd 0fe97692ah
+dd 018e716c6h
+dd 0cb33dbcdh
+dd 02205f208h
+dd 0f8cdf6cfh
+dd 0da9ef66fh
+dd 0c3c5d535h
+dd 08261cf3ah
+dd 00728c010h
+dd 0daf3159eh
+dd 04403b013h
+dd 0803ae7f9h
+dd 076575a0ch
+dd 0205da6e8h
+dd 0b4d7093fh
+dd 02643e9a0h
+dd 08756676bh
+dd 0ad9863e0h
+dd 04a755796h
+dd 03c42f484h
+dd 0e747d25bh
+dd 0e3f4e06bh
+dd 05275a6f5h
+dd 0694d8fa2h
+dd 03b136bdbh
+dd 0e3c0aab5h
+dd 006b79758h
+dd 0a57895dch
+dd 02c57bc4ch
+dd 0949db760h
+dd 046f2766fh
+dd 02bf900b7h
+dd 0b6efba6ch
+dd 092d9d2ddh
+dd 03c2f8beah
+dd 0c70b3f57h
+dd 05fa352deh
+dd 08c4d7d96h
+dd 0bf828c06h
+dd 077af99c0h
+dd 081432b56h
+dd 038d7b5b2h
+dd 002dce03ah
+dd 08f0bc12bh
+dd 0a9e5991ch
+dd 06c40c7ffh
+dd 0da63e699h
+dd 0b06744b0h
+dd 0e368d9ddh
+dd 06b134e9dh
+dd 0ed130163h
+dd 0457d2715h
+dd 0d4d7b3cch
+dd 0c84fd4dfh
+dd 0766841c3h
+dd 0fab269e4h
+dd 0a52341ceh
+dd 0474c6568h
+dd 07fe27854h
+dd 0027b1fefh
+dd 0fe3e5da1h
+dd 0caae061fh
+dd 0d2e6b847h
+dd 015091b2eh
+dd 035b2be89h
+dd 0fc237111h
+dd 06e84cf0fh
+dd 0a30a39c0h
+dd 076ded1bah
+dd 09f87eb21h
+dd 0881066d2h
+dd 047f19706h
+dd 055607448h
+dd 0e81b7f48h
+dd 07517f40fh
+dd 0fe63518fh
+dd 068641512h
+dd 03edcab45h
+dd 052177596h
+dd 0499ee92ch
+dd 0770ba30eh
+dd 0a884b5a9h
+dd 04b821a3dh
+dd 092a3f5b2h
+dd 0103425a3h
+dd 01fe0bac2h
+dd 0db177405h
+dd 030ff0831h
+dd 02a623b88h
+dd 09baa6f0ah
+dd 0a77759bfh
+dd 059ed67dfh
+dd 00cf899b1h
+dd 08a7e0ff0h
+dd 0059ad186h
+dd 001500960h
+dd 07239ea55h
+dd 0583e4cc5h
+dd 03da9c9a6h
+dd 0bd8a8705h
+dd 07d5c5247h
+dd 0eb0ed83eh
+dd 01547381eh
+dd 0abfc21b0h
+dd 03488c5a0h
+dd 06302a52dh
+dd 05069400ah
+dd 07bb15ff5h
+dd 038758f04h
+dd 031e2c1c2h
+dd 096d30d67h
+dd 05f62e791h
+dd 0f05024e2h
+dd 0d906091ah
+dd 07d8641b0h
+dd 0caeb5a30h
+dd 0384a76b4h
+dd 0f120888ch
+dd 059d8f006h
+dd 09d94eba5h
+dd 0117d34ffh
+dd 0f46aa4d8h
+dd 020a3cfcch
+dd 086b9e933h
+dd 0e8f7ac98h
+dd 0cd4a75eeh
+dd 04fbfa177h
+dd 0408696a5h
+dd 089b8dcc1h
+dd 078651cd8h
+dd 05fab601ah
+dd 038050043h
+dd 0d50c6bedh
+dd 037d07ef2h
+dd 09140c304h
+dd 0f578b861h
+dd 074eb25c6h
+dd 0000cdf40h
+dd 0a76077f8h
+dd 0b86c9382h
+dd 0df24a72ch
+dd 045e687c5h
+dd 0039216efh
+dd 064ef2d9fh
+dd 09117958dh
+dd 05e697b9bh
+dd 04d7aa241h
+dd 0a87f5765h
+dd 0c58c7c2eh
+dd 054a973beh
+dd 009fe2325h
+dd 01ab4c3ceh
+dd 0088c3b33h
+dd 09bf759a1h
+dd 0fef93b8eh
+dd 0418c91ceh
+dd 0503a1318h
+dd 021311c95h
+dd 09793baabh
+dd 0efb2b73bh
+dd 095d7b8d7h
+dd 069342d36h
+dd 0e453e781h
+dd 066239448h
+dd 00eca817fh
+dd 000cea457h
+dd 06ddf770dh
+dd 06b0b4a26h
+dd 0630040ceh
+dd 0f56bec33h
+dd 000612225h
+dd 0d066bdefh
+dd 01564f86bh
+dd 0aa65543ch
+dd 0fb53e2bch
+dd 0d6785b00h
+dd 072d52d3fh
+dd 07aff3024h
+dd 0941747dfh
+dd 0da370b59h
+dd 0c330480eh
+dd 008854f3bh
+dd 0d72ee3cah
+dd 09f51535ah
+dd 05e3d0818h
+dd 060a654c1h
+dd 055da024dh
+dd 00d91b4cbh
+dd 01cac0271h
+dd 05a5597fdh
+dd 0c2b9c32ch
+dd 0a7ec0508h
+dd 0cdfdf4b2h
+dd 0bab58048h
+dd 0ba633a43h
+dd 0d15fcfd5h
+dd 072b3d8a1h
+dd 0be37b808h
+dd 082a6b4d6h
+dd 033ac0247h
+dd 09907c6bfh
+dd 08e518ebeh
+dd 00d3de871h
+dd 02c9d0affh
+dd 061f63a60h
+dd 0a29c8052h
+dd 0d97a4ddah
+dd 0c662be19h
+dd 036547eb9h
+dd 0a0f7d51ah
+dd 068109fc3h
+dd 0b1cdcc1bh
+dd 050790f31h
+dd 02fd558a2h
+dd 0d107c74dh
+dd 034dde6feh
+dd 0a99904cfh
+dd 010d26990h
+dd 0e73d8a37h
+dd 0b80227f7h
+dd 02cad046dh
+dd 0ecef383fh
+dd 003870adbh
+dd 0a527f1d2h
+dd 079ba67cdh
+dd 0f92fb908h
+dd 0d50bcf4fh
+dd 0a54a00d8h
+dd 05a989ff5h
+dd 0ce717558h
+dd 07526024eh
+dd 061a97db4h
+dd 00c93235eh
+dd 038d3587eh
+dd 0e08c51cdh
+dd 0729fb27ch
+dd 08c424380h
+dd 06856623dh
+dd 04b1b4d2eh
+dd 0b148ec9eh
+dd 095fa4748h
+dd 0a452ea62h
+dd 073bc551bh
+dd 05e4d431fh
+dd 0089eece0h
+dd 006ae03efh
+dd 0cbab30abh
+dd 016234e7ch
+dd 0a7030ad5h
+dd 06b8a8469h
+dd 03d8259bch
+dd 08ee5662fh
+dd 0c8b1aebah
+dd 09a8dc39dh
+dd 0fc0aebebh
+dd 075db9b91h
+dd 065f2b2dch
+dd 0b5336b3fh
+dd 093c3ff9fh
+dd 0507f91d0h
+dd 0fad12ec2h
+dd 0a0ebd5b0h
+dd 0738cc6ffh
+dd 06d57cab7h
+dd 0e3707f1ah
+dd 0de405a88h
+dd 08c4bfb28h
+dd 0961f6a0bh
+dd 0536d059ah
+dd 05136874fh
+dd 0e884e61ah
+dd 0279356eah
+dd 0a9dd876eh
+dd 0e5f53a3ch
+dd 0c32c73e7h
+dd 02e3b35b7h
+dd 0da9ec5e7h
+dd 03c07e6c5h
+dd 0d0038105h
+dd 04af9d14ah
+dd 04b2cce9ah
+dd 0c2e4cb30h
+dd 065a97282h
+dd 07db6cc1dh
+dd 04c3d52c6h
+dd 0253a20bfh
+dd 08388a3fah
+dd 08fe9e5cah
+dd 024c2a337h
+dd 06d4d67d0h
+dd 0cf6d1b58h
+dd 0a7442317h
+dd 08befda10h
+dd 0dd5678e9h
+dd 00b4cb243h
+dd 03f4c3311h
+dd 0ea13299ch
+dd 0b31e6932h
+dd 0684b5ef8h
+dd 00a022b34h
+dd 064653145h
+dd 03e6ba487h
+dd 06cb8c09dh
+dd 07cbbec6ch
+dd 0de8be0e9h
+dd 00483591dh
+dd 0729f921ch
+dd 092ce2ea0h
+dd 05a2e5c7ah
+dd 0ca6cf2efh
+dd 0e73897f5h
+dd 07df9df4eh
+dd 051727a47h
+dd 0843cf81dh
+dd 04016043eh
+dd 043542c1ah
+dd 054b5f366h
+dd 07b7ffd1fh
+dd 05deab9a1h
+dd 022ae4942h
+dd 03a5f6bddh
+dd 0ab3e630dh
+dd 0dedaba07h
+dd 083087152h
+dd 0037c895ch
+dd 0cf0a95b7h
+dd 0b10e4537h
+dd 0ef3da98ah
+dd 00b6495d6h
+dd 0676da78dh
+dd 0df1e15cah
+dd 0110d5739h
+dd 0f22954ach
+dd 00bd5f8deh
+dd 0764e4b7fh
+dd 0edc954d1h
+dd 04bba12b7h
+dd 00d04ad2ah
+dd 03d976ddbh
+dd 0470e9dfah
+dd 05b59b1e6h
+dd 0b2886512h
+dd 0b680fb69h
+dd 03a011db0h
+dd 056b6fd17h
+dd 0c9f5bb82h
+dd 04d5244a4h
+dd 018b91769h
+dd 0c154ed77h
+dd 0b3d5b3aah
+dd 034e418dfh
+dd 0106f7813h
+dd 020701132h
+dd 09f442006h
+dd 069a486dch
+dd 0294107e6h
+dd 0d761af32h
+dd 0de2f154ah
+dd 07a4b098ah
+dd 02fb2c047h
+dd 05e590b82h
+dd 009063a2ah
+dd 09a24e7c9h
+dd 0e86bdb46h
+dd 00ed587f4h
+dd 04b8d224dh
+dd 04d64ad7ch
+dd 0dabc5aa9h
+dd 0685cca1ch
+dd 0a007469bh
+dd 04880abd5h
+dd 05371bfadh
+dd 0e499177ch
+dd 0ac529286h
+dd 00d212b80h
+dd 032e85613h
+dd 04784e1edh
+dd 0643e5e67h
+dd 0130bdc71h
+dd 0012bbb67h
+dd 07ceb635ah
+dd 0428620c0h
+dd 01fc7eafch
+dd 0486d38afh
+dd 0f0c1dfd5h
+dd 0f59926c3h
+dd 05db95ef4h
+dd 0dacb1984h
+dd 0547b5a86h
+dd 0f04c7265h
+dd 0408bc500h
+dd 0c2380006h
+dd 0df9908b5h
+dd 0de4de61ch
+dd 0e526a591h
+dd 083a335fdh
+dd 0b4e15865h
+dd 07881a968h
+dd 0497538f0h
+dd 0d46ac765h
+dd 0bd98a5bah
+dd 0127eeb78h
+dd 0faea6048h
+dd 019509c93h
+dd 02af9f6f3h
+dd 09c537416h
+dd 01dd28e76h
+dd 05d8df7b7h
+dd 0e1c2e71ah
+dd 04152c80ch
+dd 0548a4399h
+dd 07dae43a6h
+dd 07cf5a60eh
+dd 07e9c4506h
+dd 033aa9719h
+dd 05f68a698h
+dd 051bbcbfdh
+dd 0adf797f1h
+dd 00f9dc624h
+dd 0e50532a7h
+dd 08058f8ffh
+dd 086c379d2h
+dd 0da84fd42h
+dd 0990a6381h
+dd 077935252h
+dd 0efbf6cech
+dd 08ef15205h
+dd 0e07b8aech
+dd 0ffc82d16h
+dd 006c28c9bh
+dd 0d43f62b2h
+dd 0e723a5cah
+dd 008f3d54ch
+dd 0a6514692h
+dd 027ba1fdeh
+dd 0a8fde31dh
+dd 021ba5808h
+dd 059933296h
+dd 00aef048dh
+dd 0eca5de3ch
+dd 08db52913h
+dd 0929a33d6h
+dd 076ac6926h
+dd 06524ec26h
+dd 09258528bh
+dd 0a239aa20h
+dd 0ec3caa74h
+dd 01005904dh
+dd 0cb422f4fh
+dd 085280f8fh
+dd 06316f7bfh
+dd 0627472d7h
+dd 0b535c753h
+dd 029b4dfa2h
+dd 086d5f761h
+dd 0597398cdh
+dd 04ee1301ch
+dd 03163ae95h
+dd 06d492d12h
+dd 0373d1cfbh
+dd 095b6baeah
+dd 0d0725426h
+dd 03eb8804ah
+dd 0f0abda3eh
+dd 077ea41afh
+dd 0b46456e8h
+dd 055faac7ch
+dd 0674107e7h
+dd 0f068fb8ch
+dd 0c65c721ah
+dd 000bd4cefh
+dd 096b45638h
+dd 0f8acea70h
+dd 0cdff3413h
+dd 0c2a66951h
+dd 0a29e917bh
+dd 04e0c62dch
+dd 0219ff902h
+dd 01a9c1368h
+dd 06480c9cah
+dd 08e88b924h
+dd 0e4affe50h
+dd 0990b0027h
+dd 070a15b59h
+dd 05adbf7cfh
+dd 063474e15h
+dd 08ff5c795h
+dd 0b132d158h
+dd 0a544f79fh
+dd 08519868fh
+dd 0f29add8ch
+dd 06fa89192h
+dd 02d6feb4ah
+dd 088fe236ch
+dd 0660b4d18h
+dd 05bf1a1e1h
+dd 0f1f02c99h
+dd 0dc59b602h
+dd 0fbdedb59h
+dd 09d96ce2eh
+dd 08c6965b5h
+dd 01f07b1a4h
+dd 0e800f072h
+dd 0c7c4474fh
+dd 0fbbc1990h
+dd 0f592a539h
+dd 0ad6d6988h
+dd 05c895b5eh
+dd 02dc96c72h
+dd 052a2f88ch
+dd 011a8be1eh
+dd 0c6032973h
+dd 008eea7cbh
+dd 09ff61892h
+dd 006204ca8h
+dd 0485236e8h
+dd 089771a1dh
+dd 0a0d0fe97h
+dd 02a3efc4ah
+dd 01bb70a92h
+dd 0abaf6893h
+dd 056078c6fh
+dd 0a74e0d5ch
+dd 0d6e28c61h
+dd 0234f95d1h
+dd 0e1ad79fbh
+dd 0c4a6682fh
+dd 008e9fdf5h
+dd 09ad48e7ch
+dd 09c0336b8h
+dd 0b6a753b2h
+dd 0475a1a25h
+dd 0e8217b86h
+dd 0e7c1b2aah
+dd 0d06323cah
+dd 0e8cbb5a5h
+dd 08b6a9360h
+dd 0748486b6h
+dd 0858c0260h
+dd 05824ef29h
+dd 0ca542c94h
+dd 0ecf90d58h
+dd 03bb8c521h
+dd 0db22bb95h
+dd 083c45f59h
+dd 092637f9eh
+dd 055c9a1c6h
+dd 0c1118e8eh
+dd 0f1de4411h
+dd 0abb8d254h
+dd 01891c2aah
+dd 08dfc3111h
+dd 0a9ab2134h
+dd 0d1fc8dach
+dd 08817f2a1h
+dd 0fb4aba5bh
+dd 0008772c1h
+dd 01c162050h
+dd 0b92b6e58h
+dd 0c1523dcdh
+dd 08f2b1afch
+dd 0902eaf22h
+dd 03a9b06c1h
+dd 08490040eh
+dd 073729bf2h
+dd 0f082d482h
+dd 0e0206db2h
+dd 01732da6ch
+dd 06ff53a20h
+dd 089973673h
+dd 04c9a7778h
+dd 061fcca1ch
+dd 087c12ea5h
+dd 00b4e39c0h
+dd 00020544fh
+dd 0958ce2b3h
+dd 065458c3eh
+dd 0b63fa446h
+dd 0ee36c16ah
+dd 0832d01deh
+dd 0743f5ad5h
+dd 0e6f1ac48h
+dd 038c83fe4h
+dd 05281debch
+dd 07b4e1b0dh
+dd 0857dcfd9h
+dd 04a21d31ch
+dd 0c8618dc9h
+dd 0a2474177h
+dd 08b23a6a0h
+dd 087afabc3h
+dd 0fe48c380h
+dd 042ce06cbh
+dd 043d65802h
+dd 0ab2d9c64h
+dd 006fb3129h
+dd 012da3f6ch
+dd 02ea6890dh
+dd 070fc521dh
+dd 02831d62ah
+dd 04981db12h
+dd 0293b7cb6h
+dd 086cb4166h
+dd 0a9fb2890h
+dd 0299268a3h
+dd 0ce2d9b77h
+dd 0a37d5734h
+dd 069c36b45h
+dd 096f1f082h
+dd 04d937dafh
+dd 0369cdeb8h
+dd 075beccceh
+dd 033a16d9bh
+dd 00fadfe1eh
+dd 0595a9650h
+dd 079f4ac20h
+dd 079d5396fh
+dd 0ab6c92b8h
+dd 049c34e67h
+dd 0d28f69c0h
+dd 0d8f5369dh
+dd 0bf2e0985h
+dd 0fedb0010h
+dd 03cbef973h
+dd 0627a43c0h
+dd 0ed201c80h
+dd 00221afffh
+dd 0d286679eh
+dd 02c1de7bch
+dd 003c0a4beh
+dd 0e5acd110h
+dd 08f61588bh
+dd 096bfdac0h
+dd 0903e3e63h
+dd 08441ef21h
+dd 084fd3c65h
+dd 0a8a34258h
+dd 0c5405ef1h
+dd 0d2d51b0fh
+dd 0332b4547h
+dd 01a7908d6h
+dd 02030fbf4h
+dd 047ceff88h
+dd 038b512a9h
+dd 0d4f1fb30h
+dd 03915ce36h
+dd 055472a60h
+dd 0443f41b2h
+dd 00de2ec0dh
+dd 028cc4799h
+dd 036389e94h
+dd 0191fe6eeh
+dd 07cc8368ah
+dd 0ce5c09c9h
+dd 05acc0eb0h
+dd 0c9638e36h
+dd 012a9a36fh
+dd 0dcb18a9fh
+dd 09bd776e4h
+dd 026f12716h
+dd 0d75b0272h
+dd 0212dead0h
+dd 0a3fc1348h
+dd 096e01e96h
+dd 0b7e536bdh
+dd 03a5ec3f4h
+dd 009ffa9f3h
+dd 0639d65c7h
+dd 08c24c202h
+dd 086663ffeh
+dd 0cc6a215fh
+dd 0bd3cba56h
+dd 07452709eh
+dd 01750ff94h
+dd 021ee4256h
+dd 0d1bd2815h
+dd 07d1bef97h
+dd 07e547d80h
+dd 0be49a1c5h
+dd 049ab62cah
+dd 008e0a6d1h
+dd 08d7c9d83h
+dd 0330e4faeh
+dd 05c8cd563h
+dd 0838e5c85h
+dd 05a69de4eh
+dd 0aa72fdb7h
+dd 095acfe03h
+dd 03e19d633h
+dd 07e031b62h
+dd 0bbc916e9h
+dd 0f287db9ch
+dd 071e3a547h
+dd 08d633743h
+dd 0f2d00b8fh
+dd 0fd007eceh
+dd 07187c894h
+dd 05b466b5fh
+dd 07792d52bh
+dd 02f315a77h
+dd 006cfcb53h
+dd 05d4d21b1h
+dd 0a3c9cdeeh
+dd 036ce157ch
+dd 0426ded65h
+dd 063c19af4h
+dd 0dad1f180h
+dd 0d5d87973h
+dd 0fc6baee4h
+dd 0f6fa3878h
+dd 0bf015206h
+dd 0181cf192h
+dd 05b950517h
+dd 05407a13fh
+dd 0d997431dh
+dd 04313fb22h
+dd 00bbe60b2h
+dd 07ef3a929h
+dd 017fe6033h
+dd 0fc9a006ah
+dd 0e403e10dh
+dd 0e0f8d108h
+dd 0a9deffb4h
+dd 0ce7c401fh
+dd 05e97b144h
+dd 0efafd54ch
+dd 04bd367b2h
+dd 0dc1187fah
+dd 0ff9e8c77h
+dd 06724f27eh
+dd 00a2f7367h
+dd 0857300abh
+dd 0927809cah
+dd 0dd2a04ffh
+dd 076ca47adh
+dd 0b78eb6f3h
+dd 04419cfefh
+dd 07aaf0f91h
+dd 01e41867ah
+dd 049afe227h
+dd 03437fb30h
+dd 07526738fh
+dd 056eb98d2h
+dd 04ec5c397h
+dd 0e1fe2bebh
+dd 0f035db54h
+dd 0be6bef82h
+dd 05c6bc7e7h
+dd 001a06ebfh
+dd 064d93cfch
+dd 0c5e802abh
+dd 0ebaa820ah
+dd 0790610b4h
+dd 0577b85a2h
+dd 079d3b443h
+dd 09bbd4b17h
+dd 0ce45a8ceh
+dd 0b632b762h
+dd 0120b4352h
+dd 0d51b0c2ch
+dd 0fcb66f33h
+dd 02be658a1h
+dd 06dbadd73h
+dd 0941980bch
+dd 015e25d3dh
+dd 0cead946eh
+dd 07c2b0321h
+dd 0330541f6h
+dd 0ca4f8294h
+dd 00a30e86eh
+dd 02a272781h
+dd 0022c66c2h
+dd 0321821a7h
+dd 080dd9594h
+dd 0d886b92bh
+dd 0013432f2h
+dd 0f5a48b56h
+dd 08d17f0b9h
+dd 095800966h
+dd 098afb1abh
+dd 06d845b03h
+dd 099ec97d0h
+dd 0200d2458h
+dd 07a6d4cd8h
+dd 0e18e4a4eh
+dd 0093036e5h
+dd 0fa899a8fh
+dd 0b52b4472h
+dd 0f5564f0eh
+dd 03e1159b6h
+dd 092c9adceh
+dd 0c3b6bffdh
+dd 0a8dacccdh
+dd 01d1d738ah
+dd 0a271d2c7h
+dd 0221e7fa7h
+dd 0cd6f691bh
+dd 0445f7b6fh
+dd 0c6b09f8eh
+dd 01634d8f1h
+dd 0d01e6c90h
+dd 0879411c9h
+dd 02e7f184ch
+dd 088d91f45h
+dd 01799b8bbh
+dd 0dfd5a95bh
+dd 08a176c2fh
+dd 02f81ae93h
+dd 0bbec14b9h
+dd 0ddfa43b1h
+dd 017e4b7a3h
+dd 00ef2517ah
+dd 05b2dcc62h
+dd 0ff9f2bf4h
+dd 0200c60f6h
+dd 076de06eah
+dd 0e9bddba8h
+dd 0916a9419h
+dd 0423f1a00h
+dd 0e5708295h
+dd 0a5973036h
+dd 03a488e5bh
+dd 00abecfebh
+dd 0067bf261h
+dd 0c29821d3h
+dd 02934511eh
+dd 0a3852173h
+dd 036cb957eh
+dd 0cd75cce9h
+dd 000a14b12h
+dd 03d734b83h
+dd 01ed4fcd1h
+dd 0da810d32h
+dd 08c505c43h
+dd 0f6ce54f9h
+dd 0fd1b05fah
+dd 0e69e6cech
+dd 004bd79edh
+dd 02f4f4dc1h
+dd 0062c09e4h
+dd 0f736652ah
+dd 098be0b40h
+dd 04055de8dh
+dd 01797eb49h
+dd 0a9dc73adh
+dd 02107537ch
+dd 0cab0f41fh
+dd 040ca9fd0h
+dd 03a2279e7h
+dd 00e70029fh
+dd 0b86e08ech
+dd 0575c062eh
+dd 076f046e4h
+dd 0986bae69h
+dd 08d2445d5h
+dd 067447218h
+dd 0f0be4a44h
+dd 09ef91a75h
+dd 0e4794977h
+dd 0301db791h
+dd 0691fe129h
+dd 053a1b797h
+dd 0a3e5295eh
+dd 0fff2ec88h
+dd 02afa54e7h
+dd 0043a99c6h
+dd 0abd1267dh
+dd 06749fc04h
+dd 0b60c401eh
+dd 021755168h
+dd 014020580h
+dd 08f3dbca4h
+dd 0d91cd7c9h
+dd 0802fd1c0h
+dd 0248b04f3h
+dd 045157229h
+dd 0e7634202h
+dd 01ba2abf9h
+dd 06920ca24h
+dd 042d6beaeh
+dd 05d97beb5h
+dd 06732d509h
+dd 014e280feh
+dd 0c218a6beh
+dd 08217a870h
+dd 0ea7b607fh
+dd 01aa294cfh
+dd 0862a66c7h
+dd 0377afc3eh
+dd 0308e7a87h
+dd 062500026h
+dd 06c5ace14h
+dd 0adbad0c9h
+dd 0c1804dfch
+dd 003680698h
+dd 00db7dbcch
+dd 03f4e6d31h
+dd 0eee4be02h
+dd 048d67cfah
+dd 07d6a9d33h
+dd 0b70b1c4eh
+dd 01d0df2ebh
+dd 07b04ad6eh
+dd 04fe1b627h
+dd 0acf1c121h
+dd 0bb048c8bh
+dd 03d095dc0h
+dd 0fef38cfeh
+dd 01df7cd2ah
+dd 0e854be52h
+dd 0eb17890ah
+dd 0f4511e1bh
+dd 0fae2853ch
+dd 00b2476b1h
+dd 0d717c48fh
+dd 080b52cadh
+dd 0f9ac4478h
+dd 0dc1bef73h
+dd 0d9aeb256h
+dd 004e0a4bbh
+dd 0b108e15ah
+dd 0ced26979h
+dd 08e84019bh
+dd 0aa7fa1a4h
+dd 0ac9ba460h
+dd 0e047c539h
+dd 007f90518h
+dd 0740c456ch
+dd 0fae0778eh
+dd 096d89cd8h
+dd 02e5205adh
+dd 0362e5666h
+dd 070c6ac53h
+dd 00264eaa5h
+dd 0e8df9cb3h
+dd 0c6bf17eeh
+dd 0fc8f7b6eh
+dd 0a8d53e25h
+dd 02bcfb5b0h
+dd 023be03d9h
+dd 02d086901h
+dd 051582dfch
+dd 02effafbbh
+dd 0f47c133eh
+dd 02d640594h
+dd 0d059d918h
+dd 03727c239h
+dd 0df5e057ah
+dd 045e2b487h
+dd 0df616c89h
+dd 06a19cd85h
+dd 04c723bfdh
+dd 088d8b24dh
+dd 0fda19c5ch
+dd 05d3c09b7h
+dd 07ee12267h
+dd 042c280f2h
+dd 016c2f186h
+dd 019437ecdh
+dd 0c9210b0fh
+dd 03e537ac4h
+dd 060027fe3h
+dd 0c894729eh
+dd 0dd09cb68h
+dd 043dbd830h
+dd 07c8a6ca4h
+dd 09b3fa3ech
+dd 0c4fe6da9h
+dd 0641b28e3h
+dd 048f3288eh
+dd 015ca3588h
+dd 0e9a3f7c1h
+dd 0db278700h
+dd 0dde022a1h
+dd 0d1637600h
+dd 07d642242h
+dd 0d130470dh
+dd 06ff1acabh
+dd 0bfc3f4cch
+dd 0e757cae4h
+dd 0f2e77946h
+dd 0c5fcc6c6h
+dd 01e64b1c5h
+dd 0e826f804h
+dd 0101f8e23h
+dd 06d936186h
+dd 0dfd270eeh
+dd 0727528bdh
+dd 01e4e9852h
+dd 07ef7fbe9h
+dd 0978eb738h
+dd 040905a15h
+dd 0481bf8bah
+dd 0b1760badh
+dd 044d658abh
+dd 073157cf7h
+dd 0b984269fh
+dd 040c528beh
+dd 0c2f297cah
+dd 0a1c12971h
+dd 0721c9929h
+dd 0ecdeedaah
+dd 0e1c61ceeh
+dd 0bd92bc7fh
+dd 0606986e9h
+dd 0ee3bc1eeh
+dd 06fb4d879h
+dd 0909327f4h
+dd 07ef425f9h
+dd 0ee7f9845h
+dd 05a869dd6h
+dd 0c9ab3f75h
+dd 0ba97ad42h
+dd 010089d79h
+dd 00eb3bf45h
+dd 081ffe178h
+dd 06b2eada4h
+dd 0997d785ah
+dd 0e8306550h
+dd 01b1cadc7h
+dd 017c42c59h
+dd 02fe7fda6h
+dd 092fd14fch
+dd 07f1870beh
+dd 01b0a1e45h
+dd 0aaa9f9c1h
+dd 02e07b189h
+dd 042b119edh
+dd 002c53a8ch
+dd 0e8a2f070h
+dd 061081867h
+dd 0bceed442h
+dd 045c7dc8ch
+dd 08ee1d432h
+dd 0528b3f21h
+dd 0662bb033h
+dd 0837d379ch
+dd 0d7b0e14eh
+dd 0f0dc566ah
+dd 03095066bh
+dd 0b744d989h
+dd 0d2236c05h
+dd 0c0cdae70h
+dd 0134012ech
+dd 0fc04662ch
+dd 090b27026h
+dd 056074c29h
+dd 046a8cf7fh
+dd 051772cd8h
+dd 0b27fcc19h
+dd 074543b71h
+dd 0d789fff2h
+dd 0286e3441h
+dd 0596000a5h
+dd 099acaef3h
+dd 0ffc4603eh
+dd 0a8d1d864h
+dd 061d29604h
+dd 001257d45h
+dd 08c6d1bb5h
+dd 06922ef67h
+dd 0a3a6a468h
+dd 0bc0e0975h
+dd 0e9b31a3fh
+dd 0dfaa9429h
+dd 0c097352dh
+dd 0e7114584h
+dd 0ec8eae91h
+dd 0dfc237beh
+dd 006da051bh
+dd 09284bfe4h
+dd 0cc1197bfh
+dd 0aa45468fh
+dd 0d4e0778ch
+dd 02ed12bd7h
+dd 0c0be0f00h
+dd 08e9c0214h
+dd 033397af5h
+dd 01940ce82h
+dd 02c245881h
+dd 09d2757dbh
+dd 03d048980h
+dd 03163952dh
+dd 096d4aa79h
+dd 0c3b8c37ch
+dd 09d083e46h
+dd 049e4ddc6h
+dd 00cfe3e61h
+dd 000772e49h
+dd 03760eea0h
+dd 0d75c1ab6h
+dd 0a17248fch
+dd 00388ec57h
+dd 02ac55f86h
+dd 073d32bd8h
+dd 031cc70beh
+dd 08cbb64e6h
+dd 0c63745a3h
+dd 05ab78feah
+dd 0c9c0cb27h
+dd 0044a8a75h
+dd 050922882h
+dd 06845fcb3h
+dd 0f94eca13h
+dd 0e12ac093h
+dd 0eb583c64h
+dd 0bae81167h
+dd 0f7218a4eh
+dd 0eee4732ch
+dd 0791a83eah
+dd 0d445e66ch
+dd 0eeb8e67fh
+dd 02c46c599h
+dd 06226af1ch
+dd 011c0c6ebh
+dd 02d76f427h
+dd 031085460h
+dd 01ba91f1ah
+dd 038dbeec7h
+dd 05d324651h
+dd 034f10817h
+dd 0986e836fh
+dd 04fddf364h
+dd 09780c711h
+dd 092ce12beh
+dd 046193676h
+dd 06390c944h
+dd 0b85c87aah
+dd 0407fa47fh
+dd 0d8236306h
+dd 053292d54h
+dd 08c8e51bdh
+dd 007d089fah
+dd 05da87d76h
+dd 060a17538h
+dd 08afa8f0ch
+dd 028182d2fh
+dd 008406512h
+dd 0010a3eech
+dd 0856c2a0bh
+dd 0d34ddf25h
+dd 0fa776f87h
+dd 0ef38c556h
+dd 01ec1729eh
+dd 056839045h
+dd 015417a58h
+dd 0782f31f2h
+dd 0accb5480h
+dd 084568c6bh
+dd 0f0c4396bh
+dd 0da7978cfh
+dd 0a941f769h
+dd 03435ccc1h
+dd 03296e193h
+dd 0ae36d7a8h
+dd 05fc0a6edh
+dd 0528e0212h
+dd 089c4a85eh
+dd 0bb8e0504h
+dd 0bc03b6b2h
+dd 0c91bc389h
+dd 05a827e95h
+dd 09f76ed2bh
+dd 09ab609ddh
+dd 077d04037h
+dd 0ff6417e3h
+dd 04e1ab381h
+dd 0427d0029h
+dd 0c7910b70h
+dd 017019b7ah
+dd 065fe4e96h
+dd 0046064cch
+dd 02a0167e1h
+dd 07fff286fh
+dd 0ae0ce236h
+dd 0819ff124h
+dd 02ba4b8afh
+dd 00e8aae49h
+dd 040bdb258h
+dd 0df651232h
+dd 08b31939eh
+dd 0baef0750h
+dd 0830a9f06h
+dd 0f0cd09feh
+dd 07c709af0h
+dd 0cc70adf2h
+dd 03a28cf5bh
+dd 024e250e0h
+dd 07a6e9214h
+dd 03e33a19ch
+dd 0e1b1c47fh
+dd 0f9f55101h
+dd 0bec77cdbh
+dd 094541132h
+dd 05acecc52h
+dd 0e4189b69h
+dd 0054fb1ebh
+dd 067766185h
+dd 054edda7ch
+dd 0a350584bh
+dd 0d04482bah
+dd 0aebbddc5h
+dd 0bdb7ecb5h
+dd 0dee5a8e3h
+dd 035cd883bh
+dd 0e02b7ac9h
+dd 0a5216af4h
+dd 085a0cd7bh
+dd 03855f6dbh
+dd 052a3de3dh
+dd 0252d1291h
+dd 072e13dadh
+dd 01ab6eb34h
+dd 056ee26b9h
+dd 0ee94a847h
+dd 0c8caa0ech
+dd 0f9e58e71h
+dd 06390a4e2h
+dd 03a99855ch
+dd 0442dd66bh
+dd 07e830f4dh
+dd 03200621ah
+dd 06cf85826h
+dd 04cd32693h
+dd 0d8759908h
+dd 0fd7d2f61h
+dd 044ea5526h
+dd 0acbb7ed1h
+dd 035131dbeh
+dd 071d975fch
+dd 0a8040ba0h
+dd 06360c501h
+dd 006353194h
+dd 096044cc1h
+dd 0e73383e9h
+dd 05192f5cbh
+dd 01be9c8cdh
+dd 0ce717d82h
+dd 04a9e7359h
+dd 0d4918aaah
+dd 0b89641cbh
+dd 005268bcbh
+dd 0f427ade3h
+dd 0ffd4076ah
+dd 037aaefe6h
+dd 047447330h
+dd 05bd61c2ah
+dd 0168f637fh
+dd 0bed87108h
+dd 0ecdd6b3ah
+dd 017cd6cb6h
+dd 0a3428215h
+dd 058e303dbh
+dd 0dbfffd01h
+dd 03b3d5caeh
+dd 0d449a28ah
+dd 08fbbde2dh
+dd 093e5f8b4h
+dd 0405684d8h
+dd 03b5094dbh
+dd 04ffc1128h
+dd 07a73bf06h
+dd 0e94ee5cdh
+dd 0fe6c5af1h
+dd 08bf1bfa0h
+dd 06571c40dh
+dd 040e53ed3h
+dd 0f05c7632h
+dd 0003035dbh
+dd 0411f557ah
+dd 0ce89905dh
+dd 036d1fbf2h
+dd 086043742h
+dd 0806953cdh
+dd 0df5b601eh
+dd 0451e18d7h
+dd 00caadacfh
+dd 04435a974h
+dd 00bc62b9fh
+dd 0c83703f7h
+dd 057ede9b8h
+dd 059de1dc0h
+dd 0ac0f23d9h
+dd 03c66d6b5h
+dd 0e5052d36h
+dd 0a203fb4eh
+dd 052f6d723h
+dd 0014d3696h
+dd 0e5162993h
+dd 0d25d6f28h
+dd 09f9d7762h
+dd 0e65d04b6h
+dd 0863b9006h
+dd 0fabcd278h
+dd 0796e4e51h
+dd 088e92cd5h
+dd 09af82cbeh
+dd 09175fd0fh
+dd 0c1d9c938h
+dd 01763b029h
+dd 057a3d61ch
+dd 051480d60h
+dd 094541c0eh
+dd 014079960h
+dd 0f6f7311ch
+dd 0b211c397h
+dd 036b97de9h
+dd 03bdf1ddeh
+dd 05e285739h
+dd 0b25d7cd0h
+dd 0cca75b49h
+dd 068e6497dh
+dd 0c52fd0cdh
+dd 09ea9a6b3h
+dd 0f9c4a8f0h
+dd 0fa0753e4h
+dd 06084b402h
+dd 0e18ef692h
+dd 03ded7438h
+dd 0af49571dh
+dd 05f508d9eh
+dd 02a6e8604h
+dd 010306b57h
+dd 0bb153c04h
+dd 0cc4058d5h
+dd 0e1369188h
+dd 049af1032h
+dd 006bbb188h
+dd 095ed02ceh
+dd 00170c7d0h
+dd 03b45e733h
+dd 0ff4878aeh
+dd 0b879b357h
+dd 03dd3a514h
+dd 0d18c6d09h
+dd 0ef67404dh
+dd 0d5b09e25h
+dd 04bd94fcfh
+dd 0b5a4e019h
+dd 0cfea0331h
+dd 011285c6eh
+dd 05b9aa290h
+dd 03c236c10h
+dd 077ee35d5h
+dd 07d1cb144h
+dd 04ac1d300h
+dd 0153b60e3h
+dd 0a0d5d0b9h
+dd 00b88b732h
+dd 0db3db4c4h
+dd 0b88d397bh
+dd 072c01531h
+dd 0bc09c05eh
+dd 08bb57390h
+dd 039e3b991h
+dd 0f7fba472h
+dd 01de81b25h
+dd 0b7a346cbh
+dd 06f791591h
+dd 0aec41056h
+dd 0f6df220ah
+dd 060eb48c8h
+dd 09d0246a6h
+dd 072ea9dcah
+dd 04ac6f0f7h
+dd 065ccc759h
+dd 099a3d2d7h
+dd 0e2882519h
+dd 07e372471h
+dd 0e29543cdh
+dd 08cba1444h
+dd 0042d87d4h
+dd 04a292cech
+dd 0dea41b0ah
+dd 0312d4736h
+dd 0a61d3109h
+dd 0c987069dh
+dd 03ad10f13h
+dd 040c82862h
+dd 0ec956e35h
+dd 01d69392ch
+dd 05eecba0ch
+dd 0cf4bf409h
+dd 0eabded9ch
+dd 0c37d016ah
+dd 0076afffch
+dd 0a4778ba5h
+dd 08addf4c8h
+dd 0e1700c63h
+dd 0f7985e9bh
+dd 08fcbb919h
+dd 041d46077h
+dd 0cff564a0h
+dd 0c343c906h
+dd 01228f225h
+dd 073194008h
+dd 0493378eeh
+dd 09f65c7b4h
+dd 043e50736h
+dd 09e72bf98h
+dd 004ca0390h
+dd 0decb5d74h
+dd 0abf57bc8h
+dd 0c0a70641h
+dd 0ac044504h
+dd 07864ffa5h
+dd 05f1386cbh
+dd 07628d9ceh
+dd 05baabb99h
+dd 0c0cfa88fh
+dd 0df7bd62dh
+dd 05d756464h
+dd 0ccdd228fh
+dd 0e07663d2h
+dd 092fd2d78h
+dd 09c292bd6h
+dd 0791642d5h
+dd 0ff44d414h
+dd 0ce1587fah
+dd 0765ccec7h
+dd 03377e6e1h
+dd 0a52ee563h
+dd 06d78d1d0h
+dd 0469c364fh
+dd 0614d2360h
+dd 0c39be2fah
+dd 0b77bcad0h
+dd 0a66253b9h
+dd 00be1eaa7h
+dd 04da05dc7h
+dd 07927511ch
+dd 083d58bfbh
+dd 0904c28bfh
+dd 060554d2fh
+dd 0f4ccc8f0h
+dd 03c7a161bh
+dd 0befc810bh
+dd 0853a6d52h
+dd 060a54a94h
+dd 0728c4773h
+dd 0750cb112h
+dd 0d9252e3eh
+dd 0c53ff3efh
+dd 0f72c6bd4h
+dd 0bfce98e9h
+dd 0d985b1f4h
+dd 04fd3f2f4h
+dd 04e6ae6cah
+dd 0f82ea61dh
+dd 0370393f0h
+dd 030a3558ah
+dd 0d7836286h
+dd 07228b3cch
+dd 071c222f7h
+dd 002ff02a3h
+dd 00ff6c6f5h
+dd 0f7dab264h
+dd 088d2e46bh
+dd 0586d4fbdh
+dd 0ff99db3bh
+dd 0261d63f6h
+dd 0cadd3597h
+dd 0b06a8115h
+dd 08c82717bh
+dd 035fddf7dh
+dd 07f56d0b8h
+dd 066952599h
+dd 0fe24e424h
+dd 02a551e04h
+dd 0048adccdh
+dd 006dd860eh
+dd 06a069a41h
+dd 0024db176h
+dd 00dc81f01h
+dd 01df940aah
+dd 0ef00b0c5h
+dd 0a06dfbaeh
+dd 040aa0f28h
+dd 0c72891ffh
+dd 0d54f2db7h
+dd 0c34804eeh
+dd 0480ecacfh
+dd 0d9c28801h
+dd 00ba0e089h
+dd 02bb3157dh
+dd 0f0b439f6h
+dd 0f739a2ceh
+dd 006f4b488h
+dd 0b5c5cabfh
+dd 02ccbbfb2h
+dd 0ac538fech
+dd 0dc903137h
+dd 0b0be865ch
+dd 0b21454c7h
+dd 02e7e8b1fh
+dd 0ff9ff22bh
+dd 0d4dc0798h
+dd 08caf3af9h
+dd 04b4fc837h
+dd 0f7ff5c25h
+dd 08530aef1h
+dd 0f42d7dd2h
+dd 0ca44e3dfh
+dd 0426fb112h
+dd 0df834b24h
+dd 085b0bf74h
+dd 04edb56eah
+dd 07671ae22h
+dd 07fce7f68h
+dd 0033f6940h
+dd 0cfbe87f0h
+dd 01b429fb5h
+dd 0c079d830h
+dd 001385446h
+dd 0dc30e428h
+dd 08732387dh
+dd 0ca320f13h
+dd 0871e6e15h
+dd 055e9ff25h
+dd 037b61ee4h
+dd 094fef710h
+dd 04c6d0f52h
+dd 0af3886f7h
+dd 00705d45fh
+dd 0cbc2893bh
+dd 0424db48bh
+dd 04538a575h
+dd 0905d2685h
+dd 0b324bcbfh
+dd 0fc16f5e6h
+dd 00d9aaa75h
+dd 0666d0530h
+dd 0bbbaf62ch
+dd 0d1311c24h
+dd 056a4533eh
+dd 0d3c55ac6h
+dd 0665357adh
+dd 00888a099h
+dd 0675d2c76h
+dd 033fde768h
+dd 031c5e3bfh
+dd 046e9c5e9h
+dd 096880482h
+dd 08a65e4d5h
+dd 08c82cb2eh
+dd 0653bf848h
+dd 0de552dbdh
+dd 01d237c95h
+dd 01424f583h
+dd 028d61507h
+dd 0436cb5eeh
+dd 0009faf16h
+dd 0efb4f971h
+dd 044e33263h
+dd 0ed729617h
+dd 089fb2785h
+dd 0273224f0h
+dd 058caf857h
+dd 014646bc0h
+dd 061801ebdh
+dd 0ef84b6ddh
+dd 03bc3f64dh
+dd 0c44c0151h
+dd 0b8912d78h
+dd 0eef86b57h
+dd 0ec9e0ff1h
+dd 0db82fef5h
+dd 0c4359a55h
+dd 069ec8406h
+dd 0f86ea71fh
+dd 01f1a38a8h
+dd 0b021b38bh
+dd 0076f92f0h
+dd 0169cec6eh
+dd 058afff86h
+dd 014a6fb1bh
+dd 0f7385fbbh
+dd 05e487cf1h
+dd 0e838e1cah
+dd 099533a23h
+dd 058ade83ch
+dd 09a979dd0h
+dd 0c3931726h
+dd 04ec6528dh
+dd 014d9c480h
+dd 0b6289985h
+dd 028a82cb0h
+dd 082f5cea8h
+dd 0da165c19h
+dd 066fd0c83h
+dd 0685eddc2h
+dd 0783c4a4eh
+dd 012df2aa4h
+dd 01f74a3f3h
+dd 0c136f98dh
+dd 0b4002206h
+dd 01370a8f1h
+dd 03b74023eh
+dd 03330fb49h
+dd 02a006cd7h
+dd 0ea146f1eh
+dd 0ea698684h
+dd 0a78c1a9fh
+dd 04fd777f7h
+dd 04f705e3eh
+dd 0774192e7h
+dd 09a180a3ah
+dd 0a9d7cb47h
+dd 0c161ac5ch
+dd 07e58a330h
+dd 0716ff902h
+dd 0836c6ac4h
+dd 0fd59edd9h
+dd 034a37f17h
+dd 0c019050dh
+dd 0f744d1fdh
+dd 0d98d07e7h
+dd 0c77d6867h
+dd 07a6377b9h
+dd 04da88acfh
+dd 07d139518h
+dd 032ccb3feh
+dd 0bf7dc211h
+dd 07280b5e8h
+dd 09791ccf4h
+dd 0f2b9806ch
+dd 04361ef0fh
+dd 08c69da9ah
+dd 085f5d940h
+dd 00259ce71h
+dd 04b787e98h
+dd 0994bd28ch
+dd 03b9d1fddh
+dd 081d67f2eh
+dd 027edbbcbh
+dd 0ee8e3e19h
+dd 0b7f82846h
+dd 05ed3e242h
+dd 089d59bfch
+dd 0d6b4cb89h
+dd 00dc381b5h
+dd 054ca9051h
+dd 042db8983h
+dd 0ecd4c594h
+dd 0abac9652h
+dd 09def6db2h
+dd 0e01d9301h
+dd 0265f225eh
+dd 004c15a63h
+dd 01c5aadd4h
+dd 03102c5f6h
+dd 09fcd9d6fh
+dd 0663d98d0h
+dd 043aea6bdh
+dd 04e7f59eeh
+dd 08dca9998h
+dd 023bf8439h
+dd 0e41bab1dh
+dd 049e92b41h
+dd 032cdd352h
+dd 02cd0e4e1h
+dd 03e6a1eafh
+dd 0b538f5d1h
+dd 09a31dcffh
+dd 03e373e07h
+dd 0cbb62acfh
+dd 09439d29bh
+dd 0cc7be7a9h
+dd 0d9ad7a97h
+dd 04c837ab4h
+dd 0f87c51d0h
+dd 0fd4479aah
+dd 0a0b0c651h
+dd 0393c4dcah
+dd 03604d55bh
+dd 095ecf819h
+dd 0ee622c1dh
+dd 060958aceh
+dd 05133ae6fh
+dd 09d1a1870h
+dd 021888e83h
+dd 0da4cf248h
+dd 0bef510b0h
+dd 0ca14e15dh
+dd 09e7e6ae8h
+dd 0b958505ah
+dd 022465f1ch
+dd 0074ab287h
+dd 01228ce33h
+dd 008c2b2ffh
+dd 0513ccf4eh
+dd 009cfd1c7h
+dd 0d11bef89h
+dd 07bfa78cch
+dd 01de7b8d8h
+dd 0e607d5f1h
+dd 05cfe418bh
+dd 04c4cadabh
+dd 07152166fh
+dd 08c6dfd50h
+dd 096a85814h
+dd 005618bceh
+dd 044b8967ah
+dd 025b29c0eh
+dd 070bb73c8h
+dd 0c6565122h
+dd 06b965974h
+dd 0838e6f29h
+dd 02de326c2h
+dd 066c7afbeh
+dd 0fc05569ah
+dd 05415dc52h
+dd 0c1963b08h
+dd 0c1ffed53h
+dd 0a4a31ad1h
+dd 0f6eea552h
+dd 0691ebe27h
+dd 09ba94e5ch
+dd 07ffa3c21h
+dd 0adf8a412h
+dd 0b7716c09h
+dd 07db86a5ah
+dd 061cb8416h
+dd 0a3143219h
+dd 07ce8a0d0h
+dd 0fddad0efh
+dd 03e66cb3eh
+dd 0a652e957h
+dd 0487db2cah
+dd 001501919h
+dd 0e81d66d8h
+dd 0fb7f2e98h
+dd 0beb6c81dh
+dd 0b63f9f81h
+dd 06c82cac6h
+dd 0eedc0418h
+dd 0e95d82f9h
+dd 0b227ce91h
+dd 0b1cada31h
+dd 0928e6581h
+dd 0f203c0c6h
+dd 0d80baee4h
+dd 05173f922h
+dd 0ce9354c1h
+dd 04f4ba916h
+dd 05bb2f0dbh
+dd 0abbbfdceh
+dd 0e5dbaa69h
+dd 0f8fd3594h
+dd 065add11dh
+dd 0e12cfca5h
+dd 0a976ab62h
+dd 036d2d5b0h
+dd 011bbcf79h
+dd 06ffe8c95h
+dd 09aeabd8dh
+dd 0d87ac362h
+dd 04d582878h
+dd 0f1475e3ah
+dd 0f754b5e7h
+dd 070b4e4f5h
+dd 0425ea0e1h
+dd 0bb692b43h
+dd 038c237a3h
+dd 097f4640eh
+dd 038eea3feh
+dd 098528a11h
+dd 00e9e9279h
+dd 05d4d9a1fh
+dd 0650a54a2h
+dd 03aac96bah
+dd 000a51481h
+dd 0cbacd6c4h
+dd 06a63bdb6h
+dd 0e3928c7ch
+dd 0196e21c8h
+dd 0c10c276dh
+dd 055369ec3h
+dd 0e668c8dfh
+dd 04eb0f236h
+dd 0bc329135h
+dd 0744bd550h
+dd 0fe18b2b7h
+dd 0e5ac1073h
+dd 0357f7933h
+dd 026eae17ch
+dd 073db1306h
+dd 0b25d1e23h
+dd 0369f951ch
+dd 0746d84c1h
+dd 032270875h
+dd 078608929h
+dd 0512604fah
+dd 0a2500afah
+dd 0d376af4eh
+dd 07e150bc2h
+dd 0d3b27f2ah
+dd 0c54c8814h
+dd 0e6ffe1c1h
+dd 02418ee51h
+dd 01dcb2550h
+dd 0ff54e693h
+dd 03bb3b71eh
+dd 00207756fh
+dd 0a2b735fch
+dd 02cbcade6h
+dd 085d3a860h
+dd 03b5e4914h
+dd 0778e6944h
+dd 08c7e7e6ch
+dd 0af026473h
+dd 0d5509d91h
+dd 0d20fcc70h
+dd 0e5764bcch
+dd 04d16e51eh
+dd 0f223c56eh
+dd 076b1d7c0h
+dd 07e8e16d9h
+dd 0e8ce21e5h
+dd 0c9433a8dh
+dd 07446e928h
+dd 0aadfadb1h
+dd 017be5609h
+dd 001572731h
+dd 025830e21h
+dd 0f050405ah
+dd 055d2a337h
+dd 07a482167h
+dd 0146aca1ah
+dd 064f398f7h
+dd 0c0932aebh
+dd 0c2f83a2ah
+dd 0a17e2e2dh
+dd 0bc762d46h
+dd 0c1d26af9h
+dd 0887d7aach
+dd 0efbc6bb7h
+dd 0d3be8b71h
+dd 0dc4e98cbh
+dd 007b8c7bbh
+dd 058c46472h
+dd 06ee25511h
+dd 032d8bb09h
+dd 075e70619h
+dd 09235d90ah
+dd 04ec1d095h
+dd 015a48c46h
+dd 04c036047h
+dd 05e68cdbbh
+dd 07a2b2e46h
+dd 082755ce6h
+dd 04bd71ccdh
+dd 07e31ecb2h
+dd 0f55cdef2h
+dd 00710ff53h
+dd 00fd9265ah
+dd 00d4469cch
+dd 0b8eb7f6ch
+dd 0b961b25ah
+dd 0790ffa2eh
+dd 0174507e7h
+dd 079b77e33h
+dd 0c74010b4h
+dd 0fa4fea67h
+dd 06864a6f9h
+dd 05d5e193eh
+dd 06d7540c6h
+dd 0f4387fb3h
+dd 07523b848h
+dd 0349b5e76h
+dd 026af2eefh
+dd 0abce3fc7h
+dd 03e22e3ech
+dd 03e2600e4h
+dd 0763b5137h
+dd 008ceba07h
+dd 0b3760227h
+dd 000ff9cd3h
+dd 094848581h
+dd 05c10bc0ah
+dd 0b2def28ah
+dd 0ca1e8509h
+dd 0e051a69eh
+dd 035fec5e7h
+dd 0dbf40803h
+dd 03896eddeh
+dd 0e4fbbbd8h
+dd 0e4b88c0dh
+dd 0fcaa081ch
+dd 098924f81h
+dd 0e73e956eh
+dd 03fe7e538h
+dd 0710a84a3h
+dd 06d54f4c6h
+dd 0c96c971bh
+dd 07f0fb939h
+dd 01f300be7h
+dd 08ebfcf9eh
+dd 02c6d5fefh
+dd 04b13aacah
+dd 0b782a03ch
+dd 0ddee6155h
+dd 04c09dc46h
+dd 0fb547fdbh
+dd 0ac5a0416h
+dd 06c90dfadh
+dd 05611726ah
+dd 0cd7855e4h
+dd 0d410ad34h
+dd 00e42df9ah
+dd 0b4ca2b69h
+dd 0bf5a4e79h
+dd 087c64327h
+dd 0415e955dh
+dd 01e76d7e4h
+dd 025c9196ah
+dd 0045f2f7fh
+dd 05624d57eh
+dd 0b45f59d5h
+dd 07833748ah
+dd 0768d2923h
+dd 01bb96367h
+dd 0bb374fc2h
+dd 0ef56e430h
+dd 012504239h
+dd 0b5083590h
+dd 0db3dcddbh
+dd 07126cb7dh
+dd 063dc1e8eh
+dd 0a65c0c49h
+dd 03ad0dbaah
+dd 0bcf05235h
+dd 0afaf106bh
+dd 0321d5966h
+dd 098531a5ch
+dd 0d8165631h
+dd 0c227fb64h
+dd 0774483ffh
+dd 01e070166h
+dd 0e37565d6h
+dd 05e64e2a2h
+dd 0af4c4bd1h
+dd 021c32415h
+dd 04d74adf9h
+dd 0382545dch
+dd 0ade8d8fah
+dd 09abd878ah
+dd 038b5c80ah
+dd 0010c19dah
+dd 0f3777ed1h
+dd 09fdb42e6h
+dd 05178be41h
+dd 0c9962dc6h
+dd 002fa3116h
+dd 017a712b9h
+dd 00483c8deh
+dd 0c623bfc6h
+dd 0f6e9953ch
+dd 06515661fh
+dd 0d9b5f364h
+dd 053714191h
+dd 0b2169075h
+dd 08b224c1eh
+dd 0c0e4749bh
+dd 0ed742b51h
+dd 06a029237h
+dd 03ba9a6a0h
+dd 067d8f0c0h
+dd 0135412b2h
+dd 0305df6d4h
+dd 06723af41h
+dd 04d3a548ah
+dd 0d086ab6fh
+dd 0c92141f8h
+dd 061a7df5eh
+dd 0ebb510e6h
+dd 0617ba3ech
+dd 018af84f7h
+dd 0e8fcb405h
+dd 014579a32h
+dd 047931969h
+dd 08a55babdh
+dd 02815d28eh
+dd 0579f6f44h
+dd 066264e17h
+dd 0b7472dc5h
+dd 0c80c95ceh
+dd 05ec594a1h
+dd 041df3ca8h
+dd 03cd89916h
+dd 02fa241c2h
+dd 06fb6214bh
+dd 0174dc6f5h
+dd 0f6c0abb6h
+dd 02bf4d2b6h
+dd 070508647h
+dd 060cfd551h
+dd 0801d2192h
+dd 0ea0df36bh
+dd 0129e6da6h
+dd 09704a7e2h
+dd 0d399bd6eh
+dd 030575f41h
+dd 027cdc7b3h
+dd 0933bc6deh
+dd 0049fe696h
+dd 00bbf304ch
+dd 0c85dc13fh
+dd 06721b881h
+dd 0f95bf70ah
+dd 0c4dd1f88h
+dd 0bb847fa4h
+dd 02764ce06h
+dd 093495444h
+dd 064093a3eh
+dd 083d2c754h
+dd 032a76c78h
+dd 0ffd4b3bbh
+dd 06527fdf8h
+dd 00c140316h
+dd 0a5bf9bf7h
+dd 08af567d0h
+dd 087421dfdh
+dd 08c7cb970h
+dd 078361aeeh
+dd 0e153192fh
+dd 0210c9d5ah
+dd 0a570e2cch
+dd 08d5650d7h
+dd 0f5f7f36dh
+dd 022c778ffh
+dd 02f2a65bfh
+dd 0ec56fa9ah
+dd 06ff5e832h
+dd 003ce6578h
+dd 007165307h
+dd 0a1ca59dbh
+dd 033099e22h
+dd 07fcf5f30h
+dd 0d7ec3279h
+dd 02319f0c8h
+dd 0b751c48ah
+dd 04f87dd29h
+dd 0c7ef00b0h
+dd 030bd26ebh
+dd 0af3a58dch
+dd 0eeca1ee8h
+dd 07df37c98h
+dd 0d0bb8296h
+dd 0237e7d74h
+dd 0e41df42dh
+dd 07291c122h
+dd 08b1ef4c5h
+dd 01edd7444h
+dd 01fd96186h
+dd 0546f7050h
+dd 0fa577680h
+dd 03809f132h
+dd 0d34c2976h
+dd 0ed348c83h
+dd 04ed198bfh
+dd 048aeb337h
+dd 012326f24h
+dd 0913c6965h
+dd 0275048b6h
+dd 0e59bdfb1h
+dd 04ba87857h
+dd 07eb577f6h
+dd 03b027228h
+dd 035c1a131h
+dd 042a207b7h
+dd 0014a1f4ah
+dd 0349a6b72h
+dd 09e6999deh
+dd 0ae7d4506h
+dd 07aecfb54h
+dd 0993b557eh
+dd 0aa3745e2h
+dd 0bed295b3h
+dd 0539392cbh
+dd 01fd2c853h
+dd 00829a579h
+dd 0e1219fdeh
+dd 0b75d55e2h
+dd 0f01f95d6h
+dd 0484e8468h
+dd 0feb9ccc7h
+dd 0a04ce2aeh
+dd 035ed6e22h
+dd 085dd1c7eh
+dd 0622eeebch
+dd 0d8466468h
+dd 05eaf9852h
+dd 08664baafh
+dd 0cc34538ch
+dd 05f349384h
+dd 0a81fc9aeh
+dd 0a92a3e89h
+dd 0e37bdb46h
+dd 09cf90a65h
+dd 068134155h
+dd 0c7867559h
+dd 08ac43474h
+dd 011d9fe81h
+dd 01807ee17h
+dd 0d9803d20h
+dd 0c5b6fbd6h
+dd 02ee29031h
+dd 0dda90332h
+dd 03ede396ah
+dd 0c5e05ec5h
+dd 0429e1062h
+dd 024fed5fah
+dd 029c7e855h
+dd 0f2726423h
+dd 081080614h
+dd 0638aa7c8h
+dd 0afd61c48h
+dd 00c14f319h
+dd 0a18a2d46h
+dd 0a2728f8fh
+dd 0133c2cf7h
+dd 00672ab5ch
+dd 0f111e406h
+dd 0287fa523h
+dd 049d669fbh
+dd 0efe65836h
+dd 0910f7e8eh
+dd 0bd11e355h
+dd 08183c15eh
+dd 06288aba1h
+dd 0a73e9dceh
+dd 0378e4d4fh
+dd 0639c5634h
+dd 0cb7d375fh
+dd 0a83a368eh
+dd 08f3f98d2h
+dd 0698581abh
+dd 038856320h
+dd 0a2d0a917h
+dd 096c132d8h
+dd 0b53f3cbah
+dd 009c4e33bh
+dd 0fe74040fh
+dd 0f3dffcb0h
+dd 01e7141cah
+dd 07cd2ed57h
+dd 0cb32a902h
+dd 03c967835h
+dd 014009362h
+dd 079eebd72h
+dd 088ad1c02h
+dd 06c8af7beh
+dd 0198e420ah
+dd 02e78f5d4h
+dd 04a5b82a3h
+dd 0c8a49f21h
+dd 000abb6d1h
+dd 01e938cd8h
+dd 02b2b09a6h
+dd 0c9fd6df2h
+dd 0d57ac7f5h
+dd 0edfdddb9h
+dd 0902755efh
+dd 0f4abc0bch
+dd 06903ab87h
+dd 0d415c82eh
+dd 04a6c2012h
+dd 02269bdbdh
+dd 02fe84afbh
+dd 02bf3ee96h
+dd 0ecaa77f5h
+dd 0c7cfdf51h
+dd 09b3bafb4h
+dd 06b9435a7h
+dd 0828eb55ah
+dd 00d1e4f90h
+dd 0effebe89h
+dd 062f8c256h
+dd 0b73976a8h
+dd 072b505a3h
+dd 0302ebca0h
+dd 0b0efea2ch
+dd 0bfed7e9ch
+dd 0dfd45570h
+dd 0bfc34822h
+dd 02b1bf510h
+dd 02f9fb516h
+dd 0097d9015h
+dd 09eb6232ah
+dd 001023687h
+dd 07f4065bbh
+dd 0de19d3fch
+dd 0d608289bh
+dd 0edb49334h
+dd 0d043de03h
+dd 04aa500c6h
+dd 0e182fccbh
+dd 081b92982h
+dd 09403bba8h
+dd 09d077c27h
+dd 084480310h
+dd 06b05b22bh
+dd 008c27f0ah
+dd 015a28314h
+dd 0a4db18dah
+dd 03e8409e3h
+dd 08c6f3066h
+dd 093bdb9b7h
+dd 00f4ecf96h
+dd 062894e39h
+dd 0fd08911ch
+dd 093eb391fh
+dd 0f34ae0e5h
+dd 066e1643fh
+dd 0430df837h
+dd 07f7388bbh
+dd 08e421293h
+dd 0db4f76f3h
+dd 0c8b27e2eh
+dd 010344b63h
+dd 0d8d8ae95h
+dd 023feaa54h
+dd 0d2b91a1ah
+dd 027e4ebf6h
+dd 09281c63bh
+dd 0583260cdh
+dd 0c8a27853h
+dd 044abc6fah
+dd 0e68e8b32h
+dd 0d285fc9bh
+dd 042702fcdh
+dd 04d8922a1h
+dd 07e60197dh
+dd 0487f0663h
+dd 054e471a0h
+dd 073e855a9h
+dd 0a621a7fch
+dd 0c034e9fah
+dd 0f8dbe17eh
+dd 001fa9277h
+dd 029647459h
+dd 0b8a63ba7h
+dd 05bf557dah
+dd 0a1a95890h
+dd 0b5ea0a0eh
+dd 06d1fa5c9h
+dd 0607e06f8h
+dd 09fd59e00h
+dd 0c258c338h
+dd 083f7c98fh
+dd 0344778c1h
+dd 0563bf3f1h
+dd 06a041845h
+dd 079f76241h
+dd 04469fdfdh
+dd 0c84d413eh
+dd 0277f2cadh
+dd 09a3bf078h
+dd 0997de306h
+dd 0d105d320h
+dd 0f067f88fh
+dd 0cd0e06f8h
+dd 098d06613h
+dd 00a2e6778h
+dd 039bc45e1h
+dd 0dec678e8h
+dd 0de5c66a7h
+dd 0ed50cc67h
+dd 0ab513449h
+dd 0aba7c28dh
+dd 04cbb649bh
+dd 030444d43h
+dd 0244051a9h
+dd 006658bbeh
+dd 0b7cfb99eh
+dd 0637b0bc6h
+dd 0101709aah
+dd 0f8ebc501h
+dd 0999829c1h
+dd 0e7fd5260h
+dd 0f7e22973h
+dd 07b26aa88h
+dd 06c1afff5h
+dd 0d1dd5223h
+dd 0c312bdd6h
+dd 0f05b9e90h
+dd 0907cc6b2h
+dd 07cf6e7f4h
+dd 020819163h
+dd 0f7a50209h
+dd 03957808bh
+dd 0e3d76d15h
+dd 014b871e4h
+dd 0bedd43eeh
+dd 06e453871h
+dd 0d37035ddh
+dd 0063c2515h
+dd 0770e28b1h
+dd 052d09798h
+dd 00a673fbdh
+dd 06547b86bh
+dd 062807b37h
+dd 0b4691db1h
+dd 09665237dh
+dd 0a506e8a6h
+dd 0eaa4e7dbh
+dd 073907f98h
+dd 00520fedbh
+dd 02e90581ch
+dd 062894434h
+dd 031dcf93ch
+dd 0bc67af1ah
+dd 0dc5d125ch
+dd 096328b3dh
+dd 0112afba0h
+dd 0deca8b0dh
+dd 05e0d14b7h
+dd 0b47f32d0h
+dd 0af36d48ch
+dd 096b04659h
+dd 024b23001h
+dd 03513dbb6h
+dd 003fd8c6dh
+dd 04d0fee58h
+dd 01bc4a204h
+dd 0f0576923h
+dd 085fbbde8h
+dd 03a2568f6h
+dd 0907038dah
+dd 0a19031d6h
+dd 0bf692c82h
+dd 0ce7f2c8ch
+dd 06a1b099dh
+dd 0a0db7a17h
+dd 0dd2e3a41h
+dd 01971dcaah
+dd 0051ff5abh
+dd 00257c597h
+dd 055e075e8h
+dd 0864a1125h
+dd 08c482725h
+dd 00d50aa64h
+dd 0c7976017h
+dd 060b1621ah
+dd 036c9c07dh
+dd 0c890206ch
+dd 0de83b95ah
+dd 0931778eeh
+dd 0ffd6ba36h
+dd 0b5f13a1bh
+dd 0f26a3454h
+dd 064049cf6h
+dd 0b0047d88h
+dd 0e91bff39h
+dd 06154a3deh
+dd 02654a31fh
+dd 016f02d55h
+dd 08f505bcfh
+dd 051dbe84ch
+dd 0558ad42bh
+dd 0fc04188ch
+dd 0cc4e75cch
+dd 055539d47h
+dd 070f8957bh
+dd 077e827a5h
+dd 0781a2b5ah
+dd 0c8078813h
+dd 08fd09ca0h
+dd 0f22799eah
+dd 068fd2d0bh
+dd 0917536e1h
+dd 0d4231022h
+dd 088e777afh
+dd 00a6b0cc7h
+dd 00ced0248h
+dd 0792a1788h
+dd 0acc00fe5h
+dd 0129d4ebbh
+dd 04481b3a0h
+dd 08f28bbf5h
+dd 07c826f39h
+dd 0ec9ec0eah
+dd 0b6c40617h
+dd 070cfc120h
+dd 02a585d8fh
+dd 0abfc0e93h
+dd 09efe9f2bh
+dd 0bb0552c5h
+dd 020e6cc10h
+dd 06af05450h
+dd 035cd3c0ch
+dd 01f5857c5h
+dd 0d2fdecd7h
+dd 011764083h
+dd 05ff715deh
+dd 0a4c8f69ah
+dd 0e2d84fa4h
+dd 0c9af6d71h
+dd 0856b1b6bh
+dd 0b50e8345h
+dd 0ba36f0d2h
+dd 01d36501eh
+dd 082f124ceh
+dd 035ed35f9h
+dd 03df6c72bh
+dd 034f2ae78h
+dd 097f8fa80h
+dd 044ec7c01h
+dd 0eef8ac8dh
+dd 0fd1b0356h
+dd 0b0d1f7feh
+dd 0189aa6fch
+dd 03973052dh
+dd 0451f80b9h
+dd 0fd4457ffh
+dd 09e85be7dh
+dd 0a7fab710h
+dd 0e58c8859h
+dd 0eb9b5acdh
+dd 0ad9e40d0h
+dd 0eafb5356h
+dd 00cec68f7h
+dd 017266f87h
+dd 06aa89541h
+dd 01ea14bedh
+dd 05d0ad663h
+dd 01b90f7e1h
+dd 06cd04582h
+dd 095039a10h
+dd 05ba4c2a6h
+dd 045275942h
+dd 009c5096dh
+dd 0947b86a3h
+dd 04a47d00fh
+dd 0d964dbceh
+dd 0a3a63b30h
+dd 050190417h
+dd 0da05e275h
+dd 052a0557eh
+dd 07a8025aeh
+dd 03859a4c5h
+dd 09f16fe49h
+dd 02e4bc4f4h
+dd 0b51c1e39h
+dd 0f3011f70h
+dd 006c3ea18h
+dd 03ffd94a0h
+dd 0408781bbh
+dd 0ee3b4f85h
+dd 0bf783374h
+dd 05bdb1c50h
+dd 0112b4d19h
+dd 08128e799h
+dd 08a9f8b89h
+dd 0f36e2b8bh
+dd 004886e25h
+dd 01c178d80h
+dd 02dc635d6h
+dd 0c83d7a8bh
+dd 0c2509302h
+dd 02d64cf14h
+dd 0afb1e240h
+dd 0edddf7fch
+dd 04959b388h
+dd 0d3e1d867h
+dd 0ab1a729ah
+dd 07ad6cebeh
+dd 026e3db09h
+dd 0a6adaaeah
+dd 08332af4eh
+dd 01402b6c3h
+dd 0785f82aeh
+dd 0396a7ba3h
+dd 02d02e5d2h
+dd 0d21c6761h
+dd 07880188ch
+dd 08bfc98aah
+dd 0b7a147e9h
+dd 010f801d1h
+dd 0d03b4a5eh
+dd 0ad60ba1ch
+dd 0037d987ah
+dd 09a79a2aeh
+dd 0dcadbbb5h
+dd 055799a61h
+dd 0df84106ch
+dd 02a186695h
+dd 0e03855dbh
+dd 09eb61233h
+dd 084efe060h
+dd 0a300d5f6h
+dd 05e99e056h
+dd 04f24d002h
+dd 05e06c20ah
+dd 0d4e4f80ah
+dd 0991ed516h
+dd 01af2139bh
+dd 03be37120h
+dd 0f63ca021h
+dd 0cc6f96a7h
+dd 0733d486ah
+dd 07f8ff71ch
+dd 032453386h
+dd 08f22a35eh
+dd 0bbaf3e1ah
+dd 04bbd05eah
+dd 0e246893dh
+dd 0351e34a7h
+dd 0b4c0a111h
+dd 02ad10c8eh
+dd 066006023h
+dd 0da845d09h
+dd 077f25cc3h
+dd 0b52db45bh
+dd 00295b018h
+dd 099821dfdh
+dd 05a8dd079h
+dd 0a98c8d43h
+dd 0b46aa47ah
+dd 0bef82f2fh
+dd 0e2b0d802h
+dd 0b833e854h
+dd 0f21ce38eh
+dd 07b645474h
+dd 0e95b70ffh
+dd 04ba53c1ah
+dd 0196f89f6h
+dd 0969bd0dch
+dd 08840fefch
+dd 0ac6f929fh
+dd 03062117bh
+dd 0b356cb10h
+dd 07c088fcah
+dd 08a04ce44h
+dd 0cf6eca5fh
+dd 0382df71bh
+dd 09335699ah
+dd 07e0ac6b7h
+dd 0293dfdaah
+dd 07fdd5d72h
+dd 0c388e74eh
+dd 0a9829b34h
+dd 02e2866e4h
+dd 0dbc5f8ach
+dd 0819b9930h
+dd 003c0eab2h
+dd 0e0c25eb7h
+dd 03577833dh
+dd 042c35b64h
+dd 07d5599aah
+dd 02af910cah
+dd 04163f1a7h
+dd 00c115650h
+dd 0037884fdh
+dd 0945fcafdh
+dd 0f7c44ecdh
+dd 0763e1a2eh
+dd 093c3f233h
+dd 0ac8a8ceah
+dd 086296c2bh
+dd 01169f2a2h
+dd 07da8389fh
+dd 0ef69a482h
+dd 05e465bach
+dd 014537140h
+dd 013469852h
+dd 048f2f75dh
+dd 0402cd3f6h
+dd 007b9dd93h
+dd 021fb5818h
+dd 0d48fed64h
+dd 0d162052ah
+dd 0f5b2b141h
+dd 06ff8a55bh
+dd 0a37ba675h
+dd 0a9b935beh
+dd 0f3f34bb0h
+dd 0e9b79d67h
+dd 05715f75dh
+dd 06dd723e8h
+dd 0e99f130bh
+dd 0d86bd67eh
+dd 09bbe27a5h
+dd 01f986031h
+dd 0627bbd9dh
+dd 0ef697950h
+dd 00b686ca4h
+dd 0d9f3252fh
+dd 084686e08h
+dd 01edca624h
+dd 027205f77h
+dd 0b11ab13ah
+dd 097d038beh
+dd 047cdb4f2h
+dd 0a408228bh
+dd 031651446h
+dd 0be670a39h
+dd 0f2ccec61h
+dd 07a711e36h
+dd 08c628bc8h
+dd 0f939f878h
+dd 07e567a07h
+dd 039711c1ch
+dd 01bc0bad4h
+dd 0f9f8bd81h
+dd 011a0e47dh
+dd 0f960cdb6h
+dd 0773c8f61h
+dd 05143c943h
+dd 0839569b0h
+dd 00df88c1fh
+dd 043a81a9fh
+dd 09a4f81f0h
+dd 02dd377a2h
+dd 0a0b6b7aah
+dd 038388a1fh
+dd 046adfca1h
+dd 032e09b89h
+dd 0c11ff52ch
+dd 0ccd72448h
+dd 075a76948h
+dd 0b831c259h
+dd 078b5a7e5h
+dd 04c0d099ch
+dd 04b0b6edfh
+dd 0f6741bfbh
+dd 0eea957ach
+dd 05ffd00abh
+dd 0c0972298h
+dd 021f0ef35h
+dd 0ee0e9187h
+dd 0d9c26904h
+dd 0598725b7h
+dd 067c21927h
+dd 012a2bf20h
+dd 0c96efa04h
+dd 020dc6f73h
+dd 0704dfcb3h
+dd 077c7cdf8h
+dd 07c987857h
+dd 021e815d6h
+dd 0bea394f3h
+dd 0066f6f1eh
+dd 03c2d82edh
+dd 0009a3e2ah
+dd 0382476f8h
+dd 0d198f282h
+dd 0ae2b5235h
+dd 086c043e5h
+dd 007d4e7bdh
+dd 0063b2d7ch
+dd 0d2607c2ah
+dd 0f2b2a592h
+dd 00d0675cah
+dd 0016c5e71h
+dd 065d4e4f7h
+dd 06d5b5265h
+dd 076bd7010h
+dd 085ce4540h
+dd 04510cac2h
+dd 0ee96a709h
+dd 053e85a07h
+dd 0f62b92ceh
+dd 03ad51f02h
+dd 01a65cd81h
+dd 0a3fd8747h
+dd 04214f785h
+dd 054c9823bh
+dd 006a57adch
+dd 0456b185dh
+dd 0cf81aadfh
+dd 0286945bdh
+dd 0e436a946h
+dd 058f60eaeh
+dd 0524d77c2h
+dd 0ed9263e0h
+dd 013e473c6h
+dd 0517340c6h
+dd 07acad401h
+dd 0be32163ch
+dd 0126198d7h
+dd 03e60e2eeh
+dd 0b1bcc4a4h
+dd 000a64307h
+dd 03093ac54h
+dd 0afcb71ebh
+dd 099f3bb74h
+dd 01b91d31ah
+dd 029c26cf5h
+dd 004c0fc5ah
+dd 06d9aded4h
+dd 024776128h
+dd 05fdf2c92h
+dd 085977fcch
+dd 0a15d0ad8h
+dd 03247b3ffh
+dd 07d253842h
+dd 00abf4266h
+dd 072130034h
+dd 04f8bb1b0h
+dd 08984e635h
+dd 0e6926e5bh
+dd 0745d7657h
+dd 08ebb5bcdh
+dd 0daeb7cf2h
+dd 0818011a7h
+dd 023182affh
+dd 0b4b57ed9h
+dd 0438a9df0h
+dd 095d4d063h
+dd 04fd44853h
+dd 04aa3fd0ah
+dd 0feb7e0a0h
+dd 002e94734h
+dd 084b06ddfh
+dd 0e2482133h
+dd 0f39f24b3h
+dd 0c5dad923h
+dd 0be2084e2h
+dd 0bd31d575h
+dd 063425c4eh
+dd 0e4d30991h
+dd 04fe9ad08h
+dd 097d1f180h
+dd 087bac907h
+dd 0c9447645h
+dd 08ca772deh
+dd 0dac12891h
+dd 003c8c7c8h
+dd 0b2fa9f74h
+dd 03ff2d1bbh
+dd 060100ee7h
+dd 005a06d03h
+dd 05cfe2367h
+dd 00c0caf84h
+dd 072e5ae39h
+dd 0a1c83d13h
+dd 0e861fb0ch
+dd 0010ad7adh
+dd 02d69f56fh
+dd 004bba202h
+dd 0d0416bceh
+dd 06472e230h
+dd 00aaf7945h
+dd 080cedb27h
+dd 0d670a065h
+dd 06343480ch
+dd 0de504833h
+dd 03a7860a0h
+dd 031ebc434h
+dd 0ee7e234bh
+dd 0f4fa7f78h
+dd 059080b99h
+dd 0fe883c77h
+dd 0f3e63037h
+dd 0be46764dh
+dd 09b02a55fh
+dd 0f89276c3h
+dd 059dfbc97h
+dd 009c64ed5h
+dd 0c8b195f5h
+dd 063e2fa3ah
+dd 05827d40ah
+dd 092267e96h
+dd 0e317cf50h
+dd 0d9178ebch
+dd 01d6ab9d1h
+dd 092f8458bh
+dd 0772b443eh
+dd 0efd7dc69h
+dd 061fdfb63h
+dd 03d12ca4ah
+dd 011b49269h
+dd 0c8a77852h
+dd 055d34550h
+dd 0bb4ec5a4h
+dd 0c4ec41adh
+dd 0e1fe7fbah
+dd 06cc6daafh
+dd 09a223f06h
+dd 07fbd89cah
+dd 0ac7e9b3ah
+dd 0bdf5edf3h
+dd 0283c3c0eh
+dd 0eea5b2efh
+dd 083b5e054h
+dd 05c03ab67h
+dd 08f864e61h
+dd 0caf29873h
+dd 03d073789h
+dd 0ad944685h
+dd 0a409a1edh
+dd 01e5d9861h
+dd 087d587b6h
+dd 0000545d8h
+dd 0ac100b95h
+dd 03c54c234h
+dd 01fafe0beh
+dd 044453810h
+dd 04733aebch
+dd 0273d60d6h
+dd 0be618841h
+dd 0cdcc7889h
+dd 0daac39eeh
+dd 00485f087h
+dd 04c0b22ech
+dd 024ac2ecah
+dd 0ecb111ddh
+dd 0cbcdabffh
+dd 0450816d2h
+dd 084d11001h
+dd 0499c0465h
+dd 09cc54c0bh
+dd 05abfe0cfh
+dd 044818f31h
+dd 0d8a87ea1h
+dd 09fdc7b4ch
+dd 03f89786dh
+dd 0277760c9h
+dd 09c0f7bc7h
+dd 0c18ccc71h
+dd 0dd7daf93h
+dd 073e7c613h
+dd 0d6a5b176h
+dd 09a5db57fh
+dd 0eb672dcfh
+dd 04963f716h
+dd 0649519cah
+dd 0756d4833h
+dd 0909a9a28h
+dd 044351049h
+dd 03cafea59h
+dd 05e9315fdh
+dd 047758c14h
+dd 0a4947f9ch
+dd 08bb7e90ch
+dd 0cab46df2h
+dd 0b9a5c866h
+dd 0a8955ebeh
+dd 0e43cd151h
+dd 0beab6125h
+dd 043949a14h
+dd 0cfdeeb1ch
+dd 013845891h
+dd 0e243d9e8h
+dd 069800bbfh
+dd 04b256db6h
+dd 0194fbeb4h
+dd 0764717ech
+dd 0c31a81d8h
+dd 0e49b8aa3h
+dd 0d5ecd578h
+dd 0aed24cc8h
+dd 08ef359e9h
+dd 047a5cc0dh
+dd 012140b88h
+dd 0689ce84bh
+dd 03b3a5fdch
+dd 0aa222937h
+dd 0da727c26h
+dd 07c85b66eh
+dd 0ce22ad84h
+dd 018ca1a8fh
+dd 02c96b544h
+dd 096eb5132h
+dd 0603cc829h
+dd 074517515h
+dd 0e78dda51h
+dd 0122803f5h
+dd 08d885455h
+dd 03dc11ae7h
+dd 023d83bdfh
+dd 0d41ab5d9h
+dd 090e456cah
+dd 090feb9e7h
+dd 024dba594h
+dd 06a040b9dh
+dd 06f1cdfa4h
+dd 0ca86adb5h
+dd 0cf0de7f9h
+dd 0bb1155d6h
+dd 0da9d9fc2h
+dd 0fa9e1cc3h
+dd 0caf8749bh
+dd 0a4a562e5h
+dd 0c3ed0274h
+dd 03a95b7a8h
+dd 01f0a80bbh
+dd 05f9c35fbh
+dd 0c22296d5h
+dd 0f581e9cah
+dd 03f900edfh
+dd 0a4b93739h
+dd 034faab00h
+dd 06de21ebbh
+dd 05db672b7h
+dd 088f8dce1h
+dd 05ffdc0b7h
+dd 041773574h
+dd 00e5369fdh
+dd 0b096a9b0h
+dd 0a15dbd9ch
+dd 0922c915ah
+dd 0e5143a3eh
+dd 01e0737dah
+dd 01668b1ebh
+dd 0794aadcch
+dd 00245f86bh
+dd 022d0cbd2h
+dd 08f0fa7aeh
+dd 052ba9b45h
+dd 01aa6a9ach
+dd 06eb14cedh
+dd 0bd403d0dh
+dd 0abc779a8h
+dd 048a93656h
+dd 09d3bba8ah
+dd 016c642a0h
+dd 045bc7debh
+dd 0cb362a63h
+dd 00b8107a0h
+dd 03630bde7h
+dd 00f3c6f6bh
+dd 07c5f7e6ah
+dd 04fc44964h
+dd 0f3639d94h
+dd 0c92d64ebh
+dd 099e65c18h
+dd 0fa7c6e6ch
+dd 047c2ad48h
+dd 03718192ah
+dd 0bd29b2adh
+dd 0cf672ee2h
+dd 0c03206c8h
+dd 0c51db31dh
+dd 0a192bc3dh
+dd 05ddc4125h
+dd 0a8f3427ah
+dd 08d55e892h
+dd 0508352c3h
+dd 09b371bc4h
+dd 025c4fe69h
+dd 05602f970h
+dd 03be443b8h
+dd 0d78625e7h
+dd 030cf747dh
+dd 046523bf0h
+dd 0ab1be69ah
+dd 0711bc7aeh
+dd 0731d0165h
+dd 011ab6a49h
+dd 001bfa764h
+dd 093ab281bh
+dd 034a55d40h
+dd 0d973ddc6h
+dd 0636dded5h
+dd 0db21ba8ah
+dd 0889612e2h
+dd 094941d90h
+dd 0d3f8451ah
+dd 0ced9d97eh
+dd 06aa9bc8ch
+dd 0ea7205c0h
+dd 04d4dc2e5h
+dd 05224d1d4h
+dd 0cdddf9d1h
+dd 0ca705631h
+dd 0964a0f5ch
+dd 095a434cch
+dd 0b536dc69h
+dd 0afebe11dh
+dd 078d115c9h
+dd 073e792cah
+dd 0b9d6b35bh
+dd 0e8bfa003h
+dd 0f0a60530h
+dd 098361803h
+dd 01908cffbh
+dd 03f7e1295h
+dd 0134fc1a1h
+dd 0461ae98eh
+dd 011bea8aah
+dd 0db982f77h
+dd 0595cd5d5h
+dd 062dc0810h
+dd 0521c6916h
+dd 0c22761d1h
+dd 0cd78fb20h
+dd 07a296833h
+dd 0763a50d8h
+dd 0de28a9d3h
+dd 0e796fd1eh
+dd 07899d67eh
+dd 038035ddeh
+dd 0f8e390f8h
+dd 0b843137bh
+dd 04e5b3723h
+dd 0f7fc882bh
+dd 09922d595h
+dd 0870dbd71h
+dd 0d57db9ceh
+dd 0b066fff4h
+dd 0122ca9d9h
+dd 06ceecb48h
+dd 0fff7e0abh
+dd 08c36fb76h
+dd 0a6f78758h
+dd 05863177eh
+dd 0380efdcbh
+dd 0f079b011h
+dd 005d76ab2h
+dd 0d9212894h
+dd 0b2bebcb9h
+dd 0a62886adh
+dd 0746bafabh
+dd 06f4c2f60h
+dd 0fb4be4e6h
+dd 0ca7e3012h
+dd 0e800d848h
+dd 074f05da9h
+dd 0e8dde558h
+dd 09f040941h
+dd 0b1ca6f8eh
+dd 0d4618a8bh
+dd 0c9ea6c3eh
+dd 052680fb2h
+dd 04bffb81eh
+dd 08ded6976h
+dd 0714bcf55h
+dd 0ae1bf34eh
+dd 06e929b5dh
+dd 05353be3ah
+dd 011da8d31h
+dd 0430f218fh
+dd 0d0b57debh
+dd 059d7ec2ah
+dd 0167fce01h
+dd 00eafe9e5h
+dd 099ce846ch
+dd 0d48f106eh
+dd 0bccf971fh
+dd 0dc23dd3dh
+dd 05a14501dh
+dd 0ed219f1ch
+dd 03f9f2109h
+dd 0c37d4697h
+dd 02d771aach
+dd 09a2daa8dh
+dd 08d274ab4h
+dd 02f5ca7bfh
+dd 075509638h
+dd 0533f290eh
+dd 0d55d41fbh
+dd 0b6b4969eh
+dd 047eb135bh
+dd 08645fe86h
+dd 02dfc3271h
+dd 0988e5fa3h
+dd 015ac5857h
+dd 07390f426h
+dd 0590dc8a1h
+dd 02e23f7deh
+dd 0db6824aeh
+dd 078c3c16bh
+dd 0dfb015d2h
+dd 0e9a266d1h
+dd 01e4d6a40h
+dd 01e03caadh
+dd 03974e46ch
+dd 0b08e203eh
+dd 002d4f72eh
+dd 0a44358fch
+dd 0524a0b29h
+dd 05d38d4a8h
+dd 0e69bc8dbh
+dd 03bc56fbbh
+dd 0aa6f5d08h
+dd 064d13055h
+dd 0df1b4168h
+dd 090a3c355h
+dd 0ee7d074dh
+dd 00886de4ch
+dd 099d52085h
+dd 0538372dah
+dd 002ddf26bh
+dd 0e5ee6e2ch
+dd 07fcd3387h
+dd 00f11b97dh
+dd 007b8836ah
+dd 0a3c655ach
+dd 075429711h
+dd 080a4d638h
+dd 0edfe70a9h
+dd 04240e9f3h
+dd 0137d076fh
+dd 095cd9711h
+dd 078d1c261h
+dd 05a6699dbh
+dd 0b57a9e31h
+dd 06460310ch
+dd 01da98bbfh
+dd 04062d600h
+dd 0c1e9b5d6h
+dd 0536635a1h
+dd 0efb73417h
+dd 0e6e06e52h
+dd 0e07a47dbh
+dd 02799acb6h
+dd 0c0766afbh
+dd 0553cb882h
+dd 0072e22e6h
+dd 0145cc9fah
+dd 05bfda186h
+dd 09b100ca9h
+dd 04f14e4d7h
+dd 0f5901ea6h
+dd 0d3a4a552h
+dd 012b8450ah
+dd 06ebbca89h
+dd 049dd5c0ch
+dd 09b9af9cch
+dd 0ecbcc902h
+dd 069bbdfc9h
+dd 0cb1f6e68h
+dd 0d60a3b06h
+dd 01d03efbdh
+dd 02b99bb70h
+dd 040c9eba6h
+dd 0411b9464h
+dd 06d4b9f81h
+dd 04767ece1h
+dd 0951af084h
+dd 04a25b287h
+dd 004defbb4h
+dd 0a04cfc8bh
+dd 055fe5b12h
+dd 004e4a670h
+dd 0dc1fbf93h
+dd 08490b13bh
+dd 0f11b42a1h
+dd 087b3c870h
+dd 059b533ech
+dd 0a8d5a62bh
+dd 0cb3b3a2dh
+dd 05305182bh
+dd 03540c9afh
+dd 0ca83e224h
+dd 03e45dc3ch
+dd 0e30590d6h
+dd 08a882b13h
+dd 004619418h
+dd 07b2e521ah
+dd 090970181h
+dd 057f0e702h
+dd 08826dfe3h
+dd 02a043faah
+dd 0e44e3252h
+dd 02f306887h
+dd 0a732e54eh
+dd 0e7b64cceh
+dd 0fa54c451h
+dd 07674b0e1h
+dd 031e7902dh
+dd 077a2400fh
+dd 0858ca21fh
+dd 069f27fbdh
+dd 0c5236644h
+dd 0ed92fa9ah
+dd 01d3647dfh
+dd 046a29acdh
+dd 020fe1cb4h
+dd 06cada350h
+dd 0ed7668aah
+dd 04211abcbh
+dd 05517537dh
+dd 0cfe3e756h
+dd 03b4cd497h
+dd 023ea0449h
+dd 05c9415cdh
+dd 07ffc4d4ch
+dd 04bb66440h
+dd 075edf70ah
+dd 06dad5161h
+dd 0df289859h
+dd 0a71a10a1h
+dd 011fa2014h
+dd 00fd2c010h
+dd 01eb613f2h
+dd 0126ef937h
+dd 02fac9f46h
+dd 0b0e66bc3h
+dd 099ffef0bh
+dd 0a1a4af8fh
+dd 091749e4fh
+dd 0ade37c8eh
+dd 041c0c469h
+dd 030693d87h
+dd 0239410d5h
+dd 05a8afb3dh
+dd 0fccb7de2h
+dd 0921ad5c5h
+dd 068c47a1ah
+dd 0068529efh
+dd 0cdec9c5bh
+dd 0dc1105d5h
+dd 082cf6057h
+dd 0052cbd26h
+dd 0b2327ea1h
+dd 080124e9ah
+dd 0cf228771h
+dd 09806ae5bh
+dd 04460a19eh
+dd 0f7833a9ch
+dd 0d407bab5h
+dd 03e5ea783h
+dd 039f87466h
+dd 03aff9b18h
+dd 0b50268bdh
+dd 03c756923h
+dd 009c7c2d2h
+dd 0343ebe32h
+dd 0ea6154ebh
+dd 006053131h
+dd 027f9eefdh
+dd 0cc114631h
+dd 0dc71a4efh
+dd 023d0e504h
+dd 07b92a1d9h
+dd 0d50d7dc8h
+dd 020ae85d6h
+dd 06030148ch
+dd 0f2dfbae4h
+dd 0b4251b00h
+dd 08cd4f96ah
+dd 08a9384e3h
+dd 078dee38fh
+dd 08c3c303bh
+dd 086a031d7h
+dd 0bd1fe778h
+dd 00de8d169h
+dd 01027aa95h
+dd 09cf0b860h
+dd 055005ec3h
+dd 09d1965c4h
+dd 0eff454a9h
+dd 0320abf49h
+dd 0efefedf1h
+dd 09ffb5551h
+dd 01c410540h
+dd 06054227eh
+dd 069370c9fh
+dd 05efbb12ah
+dd 098339dbdh
+dd 0b4067003h
+dd 02164ad8dh
+dd 06c932e87h
+dd 0d5b27631h
+dd 05ea83140h
+dd 004b205e6h
+dd 08844cc77h
+dd 0e2f1ef74h
+dd 00c60518fh
+dd 06344f1ddh
+dd 0a69fe456h
+dd 0d3bd81f0h
+dd 07b71585eh
+dd 08c03010fh
+dd 041b3dd02h
+dd 0166e83cbh
+dd 024de0b7dh
+dd 063f78598h
+dd 0c2d0bf54h
+dd 08a95fef3h
+dd 0c2b8ab70h
+dd 09016a753h
+dd 09c30a08ah
+dd 0ecc07f79h
+dd 08536fea2h
+dd 004319ffdh
+dd 064b0139eh
+dd 05eec5d74h
+dd 0ba27f734h
+dd 0e1e9c071h
+dd 0556192d1h
+dd 02ebb8802h
+dd 0574599e2h
+dd 0a6e610c1h
+dd 0b7ccd90ch
+dd 005ba94b8h
+dd 02705b8ffh
+dd 0700f446eh
+dd 09841fde4h
+dd 0a18fd4d1h
+dd 02d2e78d6h
+dd 0f70eb03ah
+dd 0b9549fffh
+dd 0f33b9dcdh
+dd 087d72728h
+dd 01f186840h
+dd 030ead2c4h
+dd 0207b1721h
+dd 07b061bf5h
+dd 010f32f22h
+dd 090e14c77h
+dd 0610dec91h
+dd 09bda8f42h
+dd 0e02f3d7ch
+dd 0e75bedf6h
+dd 05e4829ffh
+dd 05c96d440h
+dd 0d41836deh
+dd 054b328a3h
+dd 09e245b43h
+dd 0f6f0d629h
+dd 072148ba3h
+dd 017e97bcbh
+dd 071962f58h
+dd 0c32b26a8h
+dd 0e7315811h
+dd 0cdfaec37h
+dd 0369a4324h
+dd 0aa533416h
+dd 0f90ff003h
+dd 098275b1fh
+dd 0e4e7c954h
+dd 0cdb181bbh
+dd 06db05ed7h
+dd 0710af89ch
+dd 068cdd528h
+dd 07168608bh
+dd 056ff076eh
+dd 0f5c1101ah
+dd 03ea8bfbfh
+dd 0af66aea8h
+dd 04652cfb1h
+dd 0c3556fe9h
+dd 016015978h
+dd 07eab9fc3h
+dd 02833ef47h
+dd 0e00735bbh
+dd 0cbecedc9h
+dd 094024ffbh
+dd 0e8b8f895h
+dd 00a96affeh
+dd 0cc082da0h
+dd 0cb434938h
+dd 0e430a2b3h
+dd 010d419a1h
+dd 063dc5790h
+dd 0ff3f55a6h
+dd 020037ab8h
+dd 04c150803h
+dd 0a92050a1h
+dd 0cbe1c417h
+dd 001c7fd32h
+dd 0831db571h
+dd 0feb5011fh
+dd 0682a1649h
+dd 0d35c065eh
+dd 04d249ff0h
+dd 0622e7e18h
+dd 04237e0abh
+dd 02e4ca552h
+dd 07c24c3d5h
+dd 0afa37953h
+dd 01d393ec1h
+dd 0c9467134h
+dd 077199d9fh
+dd 034dbe522h
+dd 00a0189f3h
+dd 02d1f6840h
+dd 0c059c72dh
+dd 05c480aa3h
+dd 03d8464e8h
+dd 06ada4ff2h
+dd 0dd7da13dh
+dd 0b660e2e0h
+dd 0940d2321h
+dd 09ad7b96eh
+dd 0aac517a5h
+dd 022f48b8fh
+dd 097ae80beh
+dd 0f70327a0h
+dd 0dba20844h
+dd 0005994cch
+dd 09de9e982h
+dd 050936d9fh
+dd 059f94739h
+dd 027d22338h
+dd 0e84c5307h
+dd 052c09dadh
+dd 0d9a3de0eh
+dd 00ec15119h
+dd 02fc3ed35h
+dd 0e7e95988h
+dd 08b51eff4h
+dd 0accba940h
+dd 0545f8928h
+dd 0e318d021h
+dd 0c9fae0a2h
+dd 029f6263bh
+dd 0c4760611h
+dd 0d3531b94h
+dd 0761c661dh
+dd 00a489c83h
+dd 062ee4399h
+dd 0b1e85a0ch
+dd 0e5f05e51h
+dd 0cf97aad6h
+dd 0c51cab24h
+dd 06768bb6ch
+dd 0828dbbf3h
+dd 061114ccch
+dd 0c7e27357h
+dd 0ec380c46h
+dd 0ad9208e2h
+dd 0db3ab208h
+dd 0f50631e2h
+dd 0e7025d82h
+dd 07f8239f4h
+dd 043748e81h
+dd 0f52fa887h
+dd 05fc61675h
+dd 052ddf7c7h
+dd 0111bb06fh
+dd 0a4a63affh
+dd 08a2e6569h
+dd 024999c77h
+dd 0117a2321h
+dd 0c62e0908h
+dd 029aa8acbh
+dd 0db6db816h
+dd 02bc04e9ch
+dd 090928edah
+dd 0d2a2728ch
+dd 026a7a69ch
+dd 0d71242e8h
+dd 00e4137a7h
+dd 0a6839c47h
+dd 0280dfd4fh
+dd 023e640b2h
+dd 0a8d4dcc6h
+dd 0cb0e8042h
+dd 0a5fae6c9h
+dd 0ff58eaafh
+dd 00dce5483h
+dd 0a35a79f4h
+dd 0a7718dd4h
+dd 0a1cd53d2h
+dd 0d736e0dbh
+dd 00f364a0eh
+dd 0efb9aacbh
+dd 070a34c9ah
+dd 0fe3ac1c1h
+dd 0a09a5fa8h
+dd 0e12a3e55h
+dd 0b137209ch
+dd 09420918ch
+dd 023a4dd11h
+dd 02f295ad6h
+dd 02b79cc3fh
+dd 0c4f06192h
+dd 026556157h
+dd 039d4fe99h
+dd 0cb8e65dbh
+dd 0eb749696h
+dd 0c1c40be2h
+dd 081249ddah
+dd 084402fbeh
+dd 004c34b24h
+dd 055617fcch
+dd 0642a2676h
+dd 09fcfeb78h
+dd 05959efa3h
+dd 03166ff48h
+dd 059f03910h
+dd 06eb79800h
+dd 0cd8f86d5h
+dd 0fbc50cf5h
+dd 0bd9d3179h
+dd 07f799949h
+dd 0500fe78eh
+dd 00ec0012eh
+dd 097edd118h
+dd 0d79c3807h
+dd 0961dd6eeh
+dd 0e4dbfd26h
+dd 0867bbcdfh
+dd 0fe84a49ah
+dd 050066871h
+dd 0029797b0h
+dd 08db81925h
+dd 019d0d018h
+dd 0f202212eh
+dd 0392913a4h
+dd 00d2fd4cbh
+dd 0102f7ef0h
+dd 0e263dda5h
+dd 0deb0644eh
+dd 0605b5418h
+dd 0d70e9f87h
+dd 09f7009b5h
+dd 0d7da2177h
+dd 0b09be37eh
+dd 00f0244b8h
+dd 029477023h
+dd 0ba9f87b9h
+dd 068c2fea6h
+dd 099b0af33h
+dd 077cbbc20h
+dd 00c09cb5ah
+dd 08d74a04eh
+dd 0037dcb02h
+dd 01b868d6fh
+dd 0fd92f92ch
+dd 0a1f9434ah
+dd 02416006ch
+dd 058b856e7h
+dd 0181517c2h
+dd 03553b977h
+dd 02edae7e4h
+dd 05d37441ch
+dd 091b14634h
+dd 00ce9b1f1h
+dd 0723eeb35h
+dd 07d952be2h
+dd 031a2a865h
+dd 0ccd53b17h
+dd 0deb1ee86h
+dd 002b5d678h
+dd 0831bdacch
+dd 0e19f4330h
+dd 08bd6b58ch
+dd 0b8839c7eh
+dd 0318f8bb6h
+dd 0e49163d8h
+dd 099cb1f29h
+dd 0ce0075e9h
+dd 0e663fec3h
+dd 05aaf8479h
+dd 03ae628d0h
+dd 04f3be658h
+dd 07e5c4162h
+dd 0bd017df1h
+dd 0f0f8f397h
+dd 059986516h
+dd 023b7dd7ch
+dd 062e4cd91h
+dd 0dc4e858bh
+dd 04ceb0a3bh
+dd 02c41fe48h
+dd 0990993aah
+dd 04fb1e9cdh
+dd 0310eaa5ch
+dd 0cc70448dh
+dd 0fdc8d98fh
+dd 01a14eb48h
+dd 0c9071fa9h
+dd 08d632adbh
+dd 0fc2b70d8h
+dd 0eb7b44d6h
+dd 0db974509h
+dd 0b9895465h
+dd 0069e4ff6h
+dd 0ef3d8c81h
+dd 0551f35f2h
+dd 09f23a647h
+dd 0df6874ffh
+dd 074eb8d52h
+dd 0e01f93b8h
+dd 0bae870cdh
+dd 002023b07h
+dd 0b0771883h
+dd 01abc6e24h
+dd 06ef16a9ah
+dd 044892dcbh
+dd 056d4e2a7h
+dd 034c20ae8h
+dd 0eb2ef79eh
+dd 00e9c0892h
+dd 0dad9b3fdh
+dd 05a9e00d3h
+dd 0958adc62h
+dd 0619409cfh
+dd 036b499c9h
+dd 0e4cd3351h
+dd 053faf388h
+dd 0941565a4h
+dd 0adc75054h
+dd 054cbfac7h
+dd 02cc5ead7h
+dd 024fd1b76h
+dd 0428ff63bh
+dd 0f4cb9153h
+dd 04e2700c4h
+dd 07dbca1f1h
+dd 03abd781ch
+dd 0d2706df4h
+dd 04114e2a1h
+dd 0e98b9c13h
+dd 003f6bd0dh
+dd 03e8a7329h
+dd 00eb0e5abh
+dd 099bde2a6h
+dd 0e31c67dah
+dd 05d684eefh
+dd 0c348a0c9h
+dd 0d9ca0c18h
+dd 08bf9b732h
+dd 06400bf06h
+dd 06986ffa6h
+dd 0a52d90bfh
+dd 0e1a168c1h
+dd 0bcf53001h
+dd 015512330h
+dd 09648204fh
+dd 0ed2cc94ch
+dd 02c5ee34dh
+dd 092e19a7dh
+dd 0f123d789h
+dd 03bd95b0ch
+dd 09428912fh
+dd 05e7bba2eh
+dd 09464ed2bh
+dd 02df252a6h
+dd 020c1b912h
+dd 0d11c6baah
+dd 07908839eh
+dd 07cb35279h
+dd 0da4dfb4bh
+dd 079142673h
+dd 0ba4dc252h
+dd 0998d7e46h
+dd 0db48f521h
+dd 042c02099h
+dd 0a52e3928h
+dd 0082f05eah
+dd 02fa3aca0h
+dd 09756ef67h
+dd 06efba93eh
+dd 04a7a972dh
+dd 0f6d0c24ch
+dd 069c08bedh
+dd 0bf878869h
+dd 06a955443h
+dd 09ba2c7cdh
+dd 08e67435eh
+dd 090eccd8ch
+dd 0bfd4002fh
+dd 0e3315a88h
+dd 0a4a4d8edh
+dd 003751001h
+dd 049555b25h
+dd 0de1457c8h
+dd 080784888h
+dd 018c6ba8dh
+dd 068a8b28ah
+dd 08882b2bah
+dd 08d18f73ch
+dd 09b7dc393h
+dd 086043167h
+dd 0d575a6fdh
+dd 0e3ae6b0ah
+dd 0a92dee1bh
+dd 040ef6a37h
+dd 0262cf6a0h
+dd 0147a7d79h
+dd 074fdbd92h
+dd 002f6225ch
+dd 08692a9e8h
+dd 0e8f1b9dbh
+dd 0c79c81a5h
+dd 0c4d07e29h
+dd 0f076affbh
+dd 07124554ah
+dd 061b69c5fh
+dd 024497360h
+dd 082b3899fh
+dd 07f99f9fbh
+dd 0b7da0fdbh
+dd 003f15cebh
+dd 0ee3c2a60h
+dd 0f54d4acah
+dd 0cb9b8721h
+dd 083b1066ch
+dd 0038d5587h
+dd 0a2a2ac4fh
+dd 0fb13b963h
+dd 07d88aa36h
+dd 09dc9356dh
+dd 097d9d13fh
+dd 0e0ced8bdh
+dd 062a43e6ah
+dd 0b6f7139ah
+dd 0fe2f792bh
+dd 061e84300h
+dd 0a6110cebh
+dd 0bc27f18eh
+dd 0d421ae3bh
+dd 0f1bc9056h
+dd 0c235a8f4h
+dd 04cedb107h
+dd 006dd65c0h
+dd 07262d003h
+dd 0db992012h
+dd 0b1858942h
+dd 05e49ff72h
+dd 070c9aaf0h
+dd 0693d4cd3h
+dd 049010517h
+dd 020b2cac6h
+dd 03d574235h
+dd 04f2be09bh
+dd 0444d50b0h
+dd 0a4c7426eh
+dd 0deae2c8ch
+dd 01268937ah
+dd 04d15fee3h
+dd 07f35a903h
+dd 09820d7adh
+dd 0dcae4163h
+dd 0cbfc5fffh
+dd 04363060eh
+dd 048b7bab7h
+dd 0fc9e797eh
+dd 0d14cb40bh
+dd 02bc40196h
+dd 0169fabf9h
+dd 039593074h
+dd 0221b1e93h
+dd 06c9bcaaeh
+dd 0ecaed2bah
+dd 01fa3e519h
+dd 03c6863b5h
+dd 056c712a3h
+dd 0f9f5af8eh
+dd 04e3eb256h
+dd 0b2af0ab5h
+dd 0cc15ea93h
+dd 0074ba7a8h
+dd 07b0def6bh
+dd 0a39e8626h
+dd 0513ccf0eh
+dd 0a5714316h
+dd 0708abd00h
+dd 0101212b9h
+dd 0211b97d3h
+dd 0c0fbbdbeh
+dd 0bb8caeb8h
+dd 07fc30d93h
+dd 06a678031h
+dd 026eb0bfah
+dd 0a8a24739h
+dd 064a7e875h
+dd 0a14b0c71h
+dd 0cfa98ee8h
+dd 0edaec6beh
+dd 0a9ac3151h
+dd 0869833a9h
+dd 049dc9c66h
+dd 0a2c4f132h
+dd 08562c0a0h
+dd 04d34fc80h
+dd 026768770h
+dd 07840dd7ah
+dd 0bcdd502dh
+dd 01c58407eh
+dd 0a292e332h
+dd 0a3abaefch
+dd 08c4dc980h
+dd 05b2f375bh
+dd 0c8eabaf0h
+dd 0b97c9d6bh
+dd 0f2ea6721h
+dd 0399ed9b9h
+dd 0a85351c9h
+dd 09f38a1a6h
+dd 04a1e2202h
+dd 03bd02a89h
+dd 0d97c2114h
+dd 0cdae47ddh
+dd 0e301b8a6h
+dd 00f23cb99h
+dd 022b1f775h
+dd 025b6c6eeh
+dd 05060e7f8h
+dd 023563079h
+dd 0bf76b480h
+dd 0fa6d3c68h
+dd 076b1e1e3h
+dd 0effde7eeh
+dd 0858ed5cch
+dd 041d25590h
+dd 0c0e8325bh
+dd 0fe20cb78h
+dd 07ad1b05dh
+dd 04a1a42f8h
+dd 04135e34bh
+dd 0db9e8435h
+dd 04f6359b0h
+dd 0767b11d2h
+dd 0c002eb9fh
+dd 02da3b5deh
+dd 04c938714h
+dd 0539976b9h
+dd 01da7d0e0h
+dd 0834edc6ah
+dd 08300f1afh
+dd 08329786fh
+dd 0b741313ch
+dd 0f72a858dh
+dd 0595c9618h
+dd 06f698b65h
+dd 0027fba22h
+dd 074350133h
+dd 0d5c437b9h
+dd 0323e4188h
+dd 0c76e0b79h
+dd 0983c1544h
+dd 020f21f46h
+dd 00d87ac68h
+dd 09fa00735h
+dd 0e326c18fh
+dd 003651042h
+dd 091553237h
+dd 01a31a194h
+dd 0394efb38h
+dd 01b0b75dbh
+dd 098e61753h
+dd 05d0bdfb0h
+dd 002f6d7c3h
+dd 075f73ebbh
+dd 08f21fd34h
+dd 0ec32ea91h
+dd 0e715a79eh
+dd 0dc7d7809h
+dd 009e68b07h
+dd 09439fcd8h
+dd 0c5bf71deh
+dd 05cce403dh
+dd 0bcfad4e8h
+dd 06f737c44h
+dd 0e439cc72h
+dd 0db86d277h
+dd 08cdf06a3h
+dd 081024353h
+dd 0b63a642ch
+dd 0f3baff38h
+dd 068621ab8h
+dd 0b5fa3ee2h
+dd 0e74d1a68h
+dd 00d922c59h
+dd 06eba04a3h
+dd 0d972008bh
+dd 0a6b61cfdh
+dd 00c7ec75ch
+dd 075fa400eh
+dd 0ae4c39a7h
+dd 046e78af4h
+dd 006320404h
+dd 054ca2823h
+dd 086cacf67h
+dd 0f799e260h
+dd 022e8d9b9h
+dd 04064f239h
+dd 04d2f6179h
+dd 05bb4ff68h
+dd 0c416bc58h
+dd 0f92a548eh
+dd 03d25b7f7h
+dd 06c050e82h
+dd 0640a13edh
+dd 046234051h
+dd 00e0b3affh
+dd 04a6c1b50h
+dd 0c5212e37h
+dd 0415ca1fbh
+dd 0a1435476h
+dd 0dd65e02fh
+dd 01a34fc84h
+dd 0c6f9dfc2h
+dd 084022f1fh
+dd 094c96258h
+dd 0f7c7273fh
+dd 06e3eaadch
+dd 0640d4b32h
+dd 03b55e14fh
+dd 00c8f0b0dh
+dd 08f0294a9h
+dd 04305d80dh
+dd 0929b0f2fh
+dd 003c0667fh
+dd 0858f461ah
+dd 0c03c538dh
+dd 03aa038ceh
+dd 0667cd7f0h
+dd 0e78b1550h
+dd 088d7b842h
+dd 04e0aca4eh
+dd 0433dfc4dh
+dd 02a04370dh
+dd 0f7251ba7h
+dd 0aa9cdcd4h
+dd 025da221bh
+dd 0cda0baefh
+dd 0497550a6h
+dd 067327d83h
+dd 0ff6bc855h
+dd 013e4c835h
+dd 0a900248eh
+dd 00f773006h
+dd 02ddfada8h
+dd 0f2b2d8a2h
+dd 0e5d467a2h
+dd 008f7f295h
+dd 03e97fb06h
+dd 0d1d7219dh
+dd 01250feeeh
+dd 09a596f3ah
+dd 05b9b1f82h
+dd 00b751000h
+dd 0152bd8abh
+dd 05093c650h
+dd 08474a8e4h
+dd 01554e862h
+dd 0af0e1a11h
+dd 0660a31e5h
+dd 08ba520eeh
+dd 0c964127eh
+dd 03c1f6141h
+dd 0ba440087h
+dd 0b6423de7h
+dd 0329136e0h
+dd 048115f55h
+dd 0acc042c1h
+dd 039f8e9e7h
+dd 04a61978bh
+dd 0dc334698h
+dd 09f041140h
+dd 01560ca92h
+dd 041de4816h
+dd 0820876f8h
+dd 0d71e53d1h
+dd 04d6a79cah
+dd 0560529f2h
+dd 0d08f1006h
+dd 071b62693h
+dd 0ef2be8e2h
+dd 0ab73f9aeh
+dd 03442cbb9h
+dd 0e7d65bdah
+dd 047b11c7fh
+dd 04552effeh
+dd 09485d00dh
+dd 0bb344610h
+dd 06d773472h
+dd 0f3bca06ch
+dd 0338fc6e6h
+dd 052e19798h
+dd 078ecc70fh
+dd 066e64adbh
+dd 0875a801fh
+dd 0910846d1h
+dd 09f61d1d0h
+dd 03467ac3bh
+dd 05e477ea5h
+dd 09c8ac455h
+dd 0ce98c771h
+dd 016f4b218h
+dd 0b950d83ah
+dd 07f224894h
+dd 02b76264dh
+dd 027ffa850h
+dd 0c51c8d01h
+dd 0e082b233h
+dd 0b9fa1c8eh
+dd 0cd9e11e7h
+dd 0c6380948h
+dd 019fe63d4h
+dd 0187aea60h
+dd 0f7b575fbh
+dd 07f78f246h
+dd 003d46886h
+dd 0b03430cah
+dd 09598f6e0h
+dd 078d7a63eh
+dd 08c2d9129h
+dd 0559b6800h
+dd 05ae0b8c1h
+dd 05a19ba15h
+dd 0459d8319h
+dd 04b5889deh
+dd 053ce1a7dh
+dd 04d8ccd00h
+dd 022f9cc0eh
+dd 06241d9c8h
+dd 0ecd7d06bh
+dd 0fa293138h
+dd 03a23d900h
+dd 0c00734a3h
+dd 043e94595h
+dd 03a9edc82h
+dd 0519ac29ch
+dd 0289a916bh
+dd 0dbc43b70h
+dd 0435dc764h
+dd 0828c4f84h
+dd 07117fccfh
+dd 03463cad0h
+dd 0e45e4bbdh
+dd 0e564b5ddh
+dd 08944a03ch
+dd 066ff7661h
+dd 0f5ecd581h
+dd 0b3f98b52h
+dd 051642f00h
+dd 0e2fb0792h
+dd 07b85fa82h
+dd 0f7925849h
+dd 09c4376e6h
+dd 0e44eb380h
+dd 0a7a5bd0fh
+dd 0749ca69bh
+dd 00deebfe8h
+dd 0f9c4b310h
+dd 0edd23107h
+dd 0d7a66d26h
+dd 098c7710ah
+dd 0b6dec218h
+dd 09783be84h
+dd 046f3142eh
+dd 0ee051c19h
+dd 07cd76b3ch
+dd 0f3a6dc06h
+dd 01137a2bbh
+dd 03100c942h
+dd 079f040e8h
+dd 0df369474h
+dd 0472a98c3h
+dd 019fa36bfh
+dd 091101e56h
+dd 050de0d98h
+dd 09bc35839h
+dd 0598995d0h
+dd 00ca89ce4h
+dd 07da083b0h
+dd 08ef13ed4h
+dd 078fa6a12h
+dd 00da456cdh
+dd 0a07cc997h
+dd 00c0c64b1h
+dd 0bc24c9ceh
+dd 091c2fee8h
+dd 0abe42d92h
+dd 0af80060eh
+dd 0d6858d2ah
+dd 0771292b0h
+dd 0489fde1dh
+dd 0ed85d406h
+dd 05ca85034h
+dd 0e56be551h
+dd 08f610c4ah
+dd 0014f97ebh
+dd 0af1c2491h
+dd 014430350h
+dd 0230fceffh
+dd 0bc84c637h
+dd 06c9ac883h
+dd 0c58e26aah
+dd 01696cb33h
+dd 0c71d63ach
+dd 0c0233099h
+dd 0e1171786h
+dd 0bb540f24h
+dd 0f317298ah
+dd 03df47634h
+dd 05dabe812h
+dd 01dd40877h
+dd 083c2f523h
+dd 065adafceh
+dd 0404868dch
+dd 0fcb57bc6h
+dd 098c18965h
+dd 0c85db461h
+dd 0b4ad3fa2h
+dd 0f2de79f6h
+dd 0e9500f22h
+dd 01ab042f8h
+dd 01ef56c4dh
+dd 065eda4fah
+dd 0356648fdh
+dd 0566a69eah
+dd 0efa56d63h
+dd 01ea610f5h
+dd 02b880d2ah
+dd 054402e5ch
+dd 0b633824dh
+dd 0593851a3h
+dd 0057122fch
+dd 00b5d0520h
+dd 0ed74a3fch
+dd 08df18438h
+dd 036f749c4h
+dd 02244d62fh
+dd 0771b7b70h
+dd 0fba12750h
+dd 001d80d35h
+dd 0d38e5758h
+dd 08d3deb40h
+dd 041078a5bh
+dd 0aef6ecfch
+dd 059b7e90dh
+dd 0970c3b23h
+dd 0fa074e28h
+dd 03d5f2e69h
+dd 0f4b65602h
+dd 07414ddech
+dd 0b2165232h
+dd 08936a735h
+dd 0e1933d87h
+dd 0505a6fa2h
+dd 047966b75h
+dd 039529f65h
+dd 08352374fh
+dd 0bec93959h
+dd 0a09be5cch
+dd 02a3098d3h
+dd 0801614c1h
+dd 0eb32dd7ch
+dd 0a9649db1h
+dd 07d619762h
+dd 0515a0751h
+dd 02546a26eh
+dd 00e5b0b00h
+dd 01dd420c4h
+dd 013dff0c0h
+dd 06ddc3af2h
+dd 0ca611ab3h
+dd 0839784b5h
+dd 046ed7095h
+dd 0f35f0200h
+dd 0d7594122h
+dd 0c688bae2h
+dd 06dd378f5h
+dd 027af3289h
+dd 0a05da9cdh
+dd 08c76f135h
+dd 061758bdbh
+dd 06bd0adc9h
+dd 04957e2f8h
+dd 0af25545dh
+dd 0f58c1a44h
+dd 0f2935892h
+dd 064555fadh
+dd 0ea2eec85h
+dd 0877d30edh
+dd 0bc60bfadh
+dd 06259e19fh
+dd 07e47b383h
+dd 011e33607h
+dd 0c3c622deh
+dd 00b77cfeah
+dd 02061839ah
+dd 09971fe59h
+dd 03497f23fh
+dd 0d0f8f6c6h
+dd 0f550cac6h
+dd 097b61cd5h
+dd 0448f7527h
+dd 0ce580d37h
+dd 0593264b8h
+dd 027538e48h
+dd 071f0ef68h
+dd 0e8427b0eh
+dd 07c52f9b8h
+dd 08a50256ah
+dd 0eb91d934h
+dd 0e459ace1h
+dd 07d604e1bh
+dd 09086a90dh
+dd 0b5ab5a03h
+dd 088930458h
+dd 08d1e453ch
+dd 09c17f2b5h
+dd 0b30ce0e6h
+dd 006ea6401h
+dd 0952c6ac0h
+dd 0a4a6b5b6h
+dd 05f73c157h
+dd 0b597e562h
+dd 079bbab90h
+dd 08f1bd5c5h
+dd 0d719a205h
+dd 0d060e370h
+dd 00aca3fdch
+dd 0a6c7d561h
+dd 06480709ah
+dd 094232471h
+dd 083ac4799h
+dd 0681c1368h
+dd 0f1d684ech
+dd 0a95dc10fh
+dd 0c3e6898ah
+dd 0cbe1de60h
+dd 0142320cch
+dd 01bd6f549h
+dd 0ecdaaadbh
+dd 0c12db33ah
+dd 0b792e455h
+dd 02cecbdc7h
+dd 05fad745eh
+dd 0c40f56bfh
+dd 06a053b6fh
+dd 0b1a76783h
+dd 02b0b9e2ch
+dd 03b41c2e4h
+dd 0e510603ah
+dd 0cb8d0bb7h
+dd 0ddd4d5ceh
+dd 065ee953ah
+dd 0794055edh
+dd 0408137a7h
+dd 01de416f2h
+dd 0bed0ae6eh
+dd 0a057a079h
+dd 085bb3a74h
+dd 0b4886d4ch
+dd 0c30eb0a5h
+dd 0b4ba6e4fh
+dd 0caec6571h
+dd 0e48a56b4h
+dd 0d837a52ah
+dd 0f1c70c90h
+dd 069cde592h
+dd 094bf6044h
+dd 030ebcdc8h
+dd 0908c80b6h
+dd 0737c145ah
+dd 09d349e68h
+dd 0072e4717h
+dd 004d69ea4h
+dd 0a348f325h
+dd 06c806258h
+dd 0096cdfd9h
+dd 0821f3465h
+dd 05a0a8c6ch
+dd 0525c09e5h
+dd 064313d00h
+dd 0408310fch
+dd 044e7477dh
+dd 072426968h
+dd 07c5409b7h
+dd 0d303d28dh
+dd 084f5b759h
+dd 0b3d1bab4h
+dd 0b35de089h
+dd 0315bf36bh
+dd 001ad17dch
+dd 019617b3dh
+dd 092441e93h
+dd 0162a7dbfh
+dd 00b4c2f7eh
+dd 02a8ca7c9h
+dd 0f0ad2e39h
+dd 027f8b4ddh
+dd 0c6babf39h
+dd 094abac3eh
+dd 0f0114041h
+dd 01bfff01ch
+dd 03f3c2f4ah
+dd 0f13bb493h
+dd 04513c5d8h
+dd 0d0de01a6h
+dd 0ca01eeeeh
+dd 0feffc730h
+dd 046498d71h
+dd 00a2d26f5h
+dd 0ee57c419h
+dd 0471c49f7h
+dd 0ab922c15h
+dd 08af8ca6eh
+dd 076d7ae81h
+dd 0d5adc01ch
+dd 0ccc2d20eh
+dd 0e7f150e6h
+dd 02ad80730h
+dd 0c883ac88h
+dd 0920b20cdh
+dd 06b808278h
+dd 08afa8044h
+dd 081aefd4fh
+dd 0e4a02f55h
+dd 0af483a9ah
+dd 01511f541h
+dd 00759d236h
+dd 0e63a9a8dh
+dd 028606a2ch
+dd 0f84918d6h
+dd 088d0001bh
+dd 094fec214h
+dd 0f116ad84h
+dd 01bc4abbeh
+dd 02d0c9f6ch
+dd 0d861235eh
+dd 02b4ab855h
+dd 013bfb868h
+dd 08689204ah
+dd 05b985482h
+dd 05bd0b1cbh
+dd 077d6afdah
+dd 05c78f7aeh
+dd 0206998aeh
+dd 0dc691eb2h
+dd 080f74478h
+dd 0a4b70b0eh
+dd 09748a949h
+dd 0a6daeeafh
+dd 023eaa739h
+dd 0709777b9h
+dd 0248a9ba2h
+dd 0d0301867h
+dd 0484b3b34h
+dd 0f42c165fh
+dd 06db4737eh
+dd 0f300a46fh
+dd 00ea39097h
+dd 02b22cb70h
+dd 06785b972h
+dd 019bff667h
+dd 076abab97h
+dd 0b38a4975h
+dd 06e67a23eh
+dd 0243a2c2dh
+dd 08a932440h
+dd 07730d5adh
+dd 0f1b64df9h
+dd 03a7db140h
+dd 0daeac505h
+dd 0ae97d899h
+dd 0e274dd1ah
+dd 040880980h
+dd 0e86cd928h
+dd 060164971h
+dd 0acf2c34eh
+dd 0d5e3964dh
+dd 07511490ch
+dd 000288802h
+dd 0adfcd781h
+dd 0442918edh
+dd 08b6cc6adh
+dd 0c50ad24dh
+dd 0df0321e4h
+dd 0515ac00dh
+dd 056ae952fh
+dd 0028b4f9ch
+dd 084f75554h
+dd 0e2082f2bh
+dd 0de247402h
+dd 0a3ecee0bh
+dd 0b4c5a52ch
+dd 04d263c15h
+dd 081cb26dch
+dd 089b53b85h
+dd 0d4667495h
+dd 075e8e0c5h
+dd 0c17b686eh
+dd 0350700e4h
+dd 0f70a8402h
+dd 06fca330bh
+dd 083d4dd6ch
+dd 0168e66f0h
+dd 0f32fa00ch
+dd 0a88530a7h
+dd 026f6d763h
+dd 01528011bh
+dd 06660a1a5h
+dd 0e17fb36dh
+dd 0bcf597e9h
+dd 059a4c1f5h
+dd 02ac1ae4eh
+dd 0c52107cdh
+dd 01b0e0ed9h
+dd 058400d43h
+dd 06d4ec59fh
+dd 0b31b97aeh
+dd 07ed2134bh
+dd 0e523d310h
+dd 0f350fc1ah
+dd 06f62f88ah
+dd 072bb94f3h
+dd 0d81530c7h
+dd 0ab403cb8h
+dd 0b07b90b5h
+dd 04903c10eh
+dd 0c886b442h
+dd 07ae72de0h
+dd 0156dbcf2h
+dd 0234beadeh
+dd 0f11bb453h
+dd 08b09bae0h
+dd 038322c3eh
+dd 0aef62b73h
+dd 0371d068ch
+dd 070c04200h
+dd 0f52f267bh
+dd 07c452376h
+dd 065abc2d0h
+dd 0d24564e1h
+dd 0f5d30071h
+dd 084d14a62h
+dd 07da6c3b2h
+dd 0a64b2e56h
+dd 0dd045ec3h
+dd 087f1d4b7h
+dd 0dfa93507h
+dd 01bc7403ah
+dd 0a56da682h
+dd 06348acfdh
+dd 0c4e45dadh
+dd 002668497h
+dd 0aac7a375h
+dd 0fac70ebfh
+dd 0a3a19c0ah
+dd 0b7fede2bh
+dd 03cf8cca5h
+dd 0c5730295h
+dd 0ba559075h
+dd 082969300h
+dd 0904414fbh
+dd 0cb784f19h
+dd 08d17a93dh
+dd 0d8f0bd2ch
+dd 04b974aech
+dd 0d8107983h
+dd 000d33eafh
+dd 0920312f4h
+dd 0292d09bah
+dd 0da03c812h
+dd 074b3b84ah
+dd 05a54e7d7h
+dd 085be9f3bh
+dd 063522a2bh
+dd 0132a97e5h
+dd 0ca4961abh
+dd 0a4b8a189h
+dd 06c33669bh
+dd 0ebd27523h
+dd 0f5e8de58h
+dd 08f567599h
+dd 0a9f34feeh
+dd 069a3740fh
+dd 0fb208e35h
+dd 0fe5124b0h
+dd 0dbf958cch
+dd 04a4c61d2h
+dd 08af5405eh
+dd 0cf0b6a66h
+dd 019a14d67h
+dd 076f86c64h
+dd 04a88bbc9h
+dd 0f3c4c835h
+dd 07d0d8e53h
+dd 07a14aeffh
+dd 088419e08h
+dd 08969f5f5h
+dd 05c8835e8h
+dd 0d1f315bdh
+dd 0fc9b3915h
+dd 01e2c299ch
+dd 0f10733e7h
+dd 0714e1b21h
+dd 045395668h
+dd 00d0fdf85h
+dd 02b6577a0h
+dd 003d7c419h
+dd 01135b405h
+dd 0b8baea87h
+dd 0bb8dc3f6h
+dd 0de2e2169h
+dd 0c3aa6b58h
+dd 081afee6ah
+dd 0a3ba1730h
+dd 0c6fd5bb4h
+dd 0d5867d58h
+dd 0f0bd8f79h
+dd 072f38101h
+dd 0cfb8f4d5h
+dd 07d4c68a0h
+dd 0bb6e2d20h
+dd 08054bd99h
+dd 001e1301fh
+dd 053874e7bh
+dd 06ef70257h
+dd 0d6bf0bf3h
+dd 05a2987cch
+dd 0389933e9h
+dd 01920d636h
+dd 0d34ce73ch
+dd 05c61ce30h
+dd 0072d87c5h
+dd 0433adb39h
+dd 0d8720d5ah
+dd 0be8cdeb2h
+dd 04a0586c8h
+dd 0db08d7b3h
+dd 0f19f5136h
+dd 042b0a1c4h
+dd 0e49057a5h
+dd 0fdc61c99h
+dd 0a0250a1eh
+dd 00f48d6afh
+dd 0cb9b3392h
+dd 0bad74df0h
+dd 01ab2762ch
+dd 00858b3a5h
+dd 081fe8b71h
+dd 05b0723a8h
+dd 0d2d70180h
+dd 007acec51h
+dd 03fdcc956h
+dd 0f82a7776h
+dd 052c2b7fch
+dd 0eca88bfch
+dd 07f176887h
+dd 0fb6d712bh
+dd 030fb09dbh
+dd 0efdcdc10h
+dd 098f01dbeh
+dd 04913090bh
+dd 0a47904b6h
+dd 0017703a6h
+dd 0dabee865h
+dd 0623e4bb1h
+dd 05208c0d0h
+dd 0f175f7cfh
+dd 01adfd53ch
+dd 00b949f95h
+dd 01b2d9cabh
+dd 044d7cbd4h
+dd 020c41f8eh
+dd 02ed19f72h
+dd 0b5c34194h
+dd 0d05dcf50h
+dd 0e1bca208h
+dd 021f88edbh
+dd 0ef613c70h
+dd 0fd552baah
+dd 035b3e134h
+dd 09d9531e7h
+dd 0f61d82bbh
+dd 0390a8526h
+dd 0ac96b13dh
+dd 02c41a366h
+dd 0a89e482fh
+dd 0a06fe0fbh
+dd 077b09533h
+dd 00df0f92eh
+dd 0edf455c4h
+dd 0808d1834h
+dd 0b62e9cbah
+dd 034b4cbech
+dd 05a72ef74h
+dd 042cf07edh
+dd 0a3db334fh
+dd 041dc8685h
+dd 08968480ah
+dd 06fe1bda5h
+dd 078dd4f29h
+dd 0822c0292h
+dd 0eb29de42h
+dd 0614941bbh
+dd 078b4003bh
+dd 08a4c54deh
+dd 0a7cb5fbfh
+dd 006481d94h
+dd 059f002f1h
+dd 0626bf2efh
+dd 025ec8704h
+dd 064c79a16h
+dd 0f838f746h
+dd 0bef8e1cfh
+dd 01b464149h
+dd 00dab477fh
+dd 0b6b3a04ah
+dd 028b6a611h
+dd 084ba8e8bh
+dd 0fd680298h
+dd 0724a794ch
+dd 048b3f034h
+dd 053931e81h
+dd 03b363ae4h
+dd 0ec314c99h
+dd 09187a7dah
+dd 0ea21da57h
+dd 01f15556fh
+dd 0284df523h
+dd 05aca8e0fh
+dd 0a4334c92h
+dd 0250e825dh
+dd 045393b5dh
+dd 0a6120ed9h
+dd 0d21029d8h
+dd 063eb9a2fh
+dd 0f5e8a73ch
+dd 0c9946158h
+dd 0d03268fdh
+dd 090737dddh
+dd 01133f74eh
+dd 0eab6967bh
+dd 003799acch
+dd 09b6c3daah
+dd 0b5174dc5h
+dd 09654e707h
+dd 01cee5a94h
+dd 074c0f7dch
+dd 047ceacd2h
+dd 050f79bach
+dd 0fd74aa47h
+dd 074e19a3ah
+dd 06c890b94h
+dd 036d80a1dh
+dd 0dfc7d8f0h
+dd 0f5b0e032h
+dd 0a44b04ddh
+dd 084f44a04h
+dd 0c06ddb81h
+dd 023d46713h
+dd 0fb21ef8dh
+dd 07873ba41h
+dd 094b49f39h
+dd 00aae38afh
+dd 0f198d964h
+dd 0db3ba283h
+dd 0e5fc5585h
+dd 073d5b29eh
+dd 036da5aadh
+dd 0cf02d378h
+dd 01fa31764h
+dd 096c1ba70h
+dd 01e65b44fh
+dd 0af649ee5h
+dd 0d9a28cd7h
+dd 067df752ah
+dd 086453fb9h
+dd 08cd1a83ah
+dd 0c99083dah
+dd 079f86563h
+dd 01221308bh
+dd 0a8962299h
+dd 0cde7c02bh
+dd 09d5d9c70h
+dd 0962b1e16h
+dd 0dd823d0bh
+dd 0b13c503bh
+dd 0a36cb680h
+dd 008f3303dh
+dd 028e0d5deh
+dd 0964e761ch
+dd 0c5cc2681h
+dd 07143280ah
+dd 04286e931h
+dd 082d5cd42h
+dd 058daeafeh
+dd 01dca24cfh
+dd 0c82a1fd0h
+dd 0eacbbf00h
+dd 03606c62ah
+dd 09fc8194ch
+dd 0ba9044a8h
+dd 0d3401c45h
+dd 0afee5498h
+dd 048beb96fh
+dd 00db05905h
+dd 03201972ah
+dd 08c758bc4h
+dd 0d477a799h
+dd 046557950h
+dd 0012b23f3h
+dd 0bed65bf7h
+dd 083d2cd2bh
+dd 063b944c9h
+dd 0fb44a39dh
+dd 0b7562880h
+dd 0599cd5d4h
+dd 0950cac62h
+dd 010d5611ah
+dd 056e4c271h
+dd 0bae76bb5h
+dd 00f04efb3h
+dd 035a3ef05h
+dd 0deefd06eh
+dd 06507132eh
+dd 02cc9c6dfh
+dd 08ec3d851h
+dd 014278913h
+dd 0c2a31bcdh
+dd 026aa2713h
+dd 09ecc53c6h
+dd 02f57c0e8h
+dd 0c3d5a70ch
+dd 0cd02862ch
+dd 0afb9c387h
+dd 0b3035cd8h
+dd 03260d4d8h
+dd 02dcc029eh
+dd 0ba7fdcfch
+dd 036ebe2c0h
+dd 093745f3eh
+dd 01afeeb9bh
+dd 0bf60158fh
+dd 0e132a7d6h
+dd 06e0224ffh
+dd 06d71c776h
+dd 0597a07d0h
+dd 067b96f18h
+dd 04eedf30eh
+dd 0779c84e3h
+dd 055a8c336h
+dd 025116107h
+dd 03da32db2h
+dd 039264da6h
+dd 002dbb060h
+dd 03a833018h
+dd 0a9a201f2h
+dd 03d1948afh
+dd 0edf781ech
+dd 07810d988h
+dd 0327069e6h
+dd 08a584da6h
+dd 0c2cd8469h
+dd 0a313fe7eh
+dd 0b67222ech
+dd 0a30bf3aeh
+dd 07dc57b3fh
+dd 01d304558h
+dd 005bf1728h
+dd 0900f5efah
+dd 07b24bf32h
+dd 0c3a5aae4h
+dd 046f5228dh
+dd 030a59f5fh
+dd 0417ad558h
+dd 002774e2ah
+dd 067d8c772h
+dd 0a0511928h
+dd 0bf216211h
+dd 096dfa3ceh
+dd 049a7e588h
+dd 08b9a51c2h
+dd 071f75426h
+dd 0b845a8a0h
+dd 07ca490e0h
+dd 0027879b5h
+dd 0ceb2cb4ah
+dd 0ff3a11f0h
+dd 07eb7516ch
+dd 027ddbd38h
+dd 003148628h
+dd 07c597d7bh
+dd 056c76ffeh
+dd 079f3d509h
+dd 0a6d58cf8h
+dd 0e12dca8dh
+dd 0902738cdh
+dd 0f3ffffbah
+dd 08f6ccbe7h
+dd 079f9542ch
+dd 05be4a41ch
+dd 0ec981eafh
+dd 0b74b93a1h
+dd 0eebc7c10h
+dd 068a1a256h
+dd 0301090a5h
+dd 0fef7806dh
+dd 0c2e34717h
+dd 0ccae528bh
+dd 04600b84ah
+dd 037a9135fh
+dd 014136472h
+dd 0c30e51eah
+dd 089a81201h
+dd 0e3e2ea82h
+dd 0cef15373h
+dd 029d07606h
+dd 0c6b2d3a0h
+dd 088180694h
+dd 0699375d9h
+dd 0a361d95fh
+dd 004045b7ch
+dd 0a350b23bh
+dd 0bd994fc6h
+dd 0056c210bh
+dd 02b0f26d8h
+dd 02c3b0c4bh
+dd 08aef317fh
+dd 0666b777fh
+dd 02f87d223h
+dd 0b89cdfd2h
+dd 0a9bd022bh
+dd 0bb314764h
+dd 07beae49ah
+dd 0b6fd259ch
+dd 0dcd1d9d4h
+dd 0286b3bb5h
+dd 0106fbc08h
+dd 08ee9615fh
+dd 0ed857b1ch
+dd 0d3a6e744h
+dd 0b9ea053ch
+dd 0db01f133h
+dd 06ca03f5fh
+dd 02c29ad9fh
+dd 04953b75ch
+dd 097b8a67dh
+dd 0f6191930h
+dd 077423285h
+dd 0eed1bae2h
+dd 0c549eb5eh
+dd 0a0c98d8ch
+dd 093f9ebb8h
+dd 06a22b69eh
+dd 08b25d81fh
+dd 0da1145cch
+dd 07f25d2f3h
+dd 04b2c74edh
+dd 04e34ad2fh
+dd 035d82353h
+dd 0b170e54ah
+dd 05c24a912h
+dd 0962ac8c1h
+dd 0227b88f6h
+dd 029c31c30h
+dd 00dac65f4h
+dd 03b0fa2dch
+dd 04a196ee6h
+dd 0c11be753h
+dd 07450f067h
+dd 03106b7bdh
+dd 072ff21a5h
+dd 0f9cdad22h
+dd 0b5eacd63h
+dd 06fe5632eh
+dd 0b9e78ea2h
+dd 01290b1c5h
+dd 0c02b06bah
+dd 015da20a6h
+dd 0bc74ca21h
+dd 04248d266h
+dd 0f88ca179h
+dd 0c7904373h
+dd 03c891afch
+dd 006a67023h
+dd 0bc055111h
+dd 06c52e90fh
+dd 07d362f0fh
+dd 0433dbbcdh
+dd 0bc39fbebh
+dd 02c70726ch
+dd 0c98e165fh
+dd 07fe526f8h
+dd 0f7304eb4h
+dd 05634c81eh
+dd 07b765081h
+dd 077a5223dh
+dd 0d0a0e822h
+dd 0a0a59d7ah
+dd 0eab5163bh
+dd 09025ffdeh
+dd 070b413fch
+dd 076d5054ah
+dd 0ced1f0ech
+dd 0d250ff56h
+dd 0f8c3dc6ch
+dd 090673f04h
+dd 0ac2c6387h
+dd 07616d403h
+dd 0f320f4f4h
+dd 0f91995cfh
+dd 04be7539ch
+dd 0e6271fc6h
+dd 059dc521fh
+dd 0329135a1h
+dd 02685e2a8h
+dd 024925471h
+dd 0acbc7310h
+dd 04aeb5827h
+dd 02548fdcbh
+dd 08bb76872h
+dd 0f317ca94h
+dd 0f00bc40ch
+dd 0ca2f4f33h
+dd 03e24acc3h
+dd 0591be9d8h
+dd 08071a233h
+dd 09401b766h
+dd 01be7662ch
+dd 08b368176h
+dd 0c22d44b5h
+dd 0a39d68e3h
+dd 01cd51003h
+dd 03a93d829h
+dd 04ca20a72h
+dd 0e87f4131h
+dd 01dffc1cah
+dd 0370c83d7h
+dd 0e089fd26h
+dd 01612ae60h
+dd 02d4a762fh
+dd 0c4631a60h
+dd 0345e2012h
+dd 03bc72c1ch
+dd 09c8387eeh
+dd 09e21349fh
+dd 0c1ae9564h
+dd 0c833eaa7h
+dd 062253d15h
+dd 08dc2a053h
+dd 0250875f3h
+dd 0d59aa7d7h
+dd 07e1a6679h
+dd 010d25e13h
+dd 097404b52h
+dd 02e7ab34ah
+dd 02046eba8h
+dd 09f16b1dbh
+dd 06a5b5b09h
+dd 0da5aec5ch
+dd 069982cf0h
+dd 0efdede0bh
+dd 08e7a74d2h
+dd 0ba69ab26h
+dd 0744abb5ah
+dd 0f7646989h
+dd 0714413a5h
+dd 0f7320953h
+dd 0a18e3697h
+dd 017542f59h
+dd 0b6cc38f9h
+dd 0da2d4759h
+dd 01f226093h
+dd 070b44a6eh
+dd 0a002551eh
+dd 0f238ecdeh
+dd 037525087h
+dd 02a20b3a6h
+dd 05bc6e3e6h
+dd 0dad80353h
+dd 0867d43b5h
+dd 0e56d3e50h
+dd 0f9e8374ch
+dd 0d1e6e301h
+dd 062ce77a1h
+dd 0df010abbh
+dd 042ae082eh
+dd 0d64a0138h
+dd 04f730d35h
+dd 06740551eh
+dd 06b1ba2ech
+dd 04332dd75h
+dd 01e769a6dh
+dd 01aa8a140h
+dd 0eaf2ffeeh
+dd 0a9ecc909h
+dd 0e672627ch
+dd 0da8fd728h
+dd 0bbfe487bh
+dd 07a9404ach
+dd 00d5232f1h
+dd 0498c5291h
+dd 0540e4b2fh
+dd 0bd2c68f8h
+dd 0e21db0eeh
+dd 037057e60h
+dd 02c7d0d3dh
+dd 0bb1f5654h
+dd 0e3f97bf6h
+dd 0f94f799ah
+dd 0c24721e1h
+dd 07b3ffa41h
+dd 0995301c1h
+dd 09efe1cd5h
+dd 002bd0261h
+dd 0da30a10dh
+dd 02dae9e36h
+dd 023edc4cdh
+dd 036a8e25ch
+dd 089e6d768h
+dd 0e9fed903h
+dd 014480a96h
+dd 06a6925e3h
+dd 0f1cad52eh
+dd 01ad5dd4dh
+dd 0aaf87290h
+dd 090b922f1h
+dd 0b5751103h
+dd 021551806h
+dd 010549b36h
+dd 0da08e05eh
+dd 01aead18bh
+dd 0e79961ffh
+dd 0f17744b4h
+dd 0144088bbh
+dd 0e1a0fce8h
+dd 000cd40e5h
+dd 0a35c9f9fh
+dd 0e7450a1fh
+dd 09cc2f68ch
+dd 023b2f3ech
+dd 0e314d01dh
+dd 031491dd4h
+dd 0eb053493h
+dd 0014c736ch
+dd 063c59615h
+dd 082a754b9h
+dd 0b5d89bdbh
+dd 01dbe39aeh
+dd 062457640h
+dd 016acb4f8h
+dd 0116af050h
+dd 0155dc448h
+dd 020b79f0dh
+dd 0810cc24ah
+dd 0c3fe6714h
+dd 0e9dea605h
+dd 01c57e81eh
+dd 0b9691b1ch
+dd 039d541a1h
+dd 0b2fecdfdh
+dd 086483d7dh
+dd 0d302c7c7h
+dd 0f7589efdh
+dd 01212a37dh
+dd 0eefa9596h
+dd 0e2a1609bh
+dd 0fc2ab30fh
+dd 0f795fb0ah
+dd 0e025fdf8h
+dd 01121cb48h
+dd 01d7e2bc4h
+dd 08c5bde27h
+dd 017d0c480h
+dd 0049b526bh
+dd 07caf8308h
+dd 0347eb2edh
+dd 0be60b29ah
+dd 0621b3836h
+dd 01e5e879eh
+dd 0a1967c26h
+dd 054f5c802h
+dd 0f0344ed0h
+dd 03f744080h
+dd 06792e6c8h
+dd 0e83a6a01h
+dd 05258fdcah
+dd 02982d5ebh
+dd 0b1ac415dh
+dd 0ce9528a1h
+dd 07f95de4eh
+dd 001111dcah
+dd 0e08ea3c9h
+dd 035214afah
+dd 0a9a6397ah
+dd 00c4e8ae4h
+dd 0939b2fbah
+dd 0b8edac46h
+dd 08b77d350h
+dd 0259ec9b9h
+dd 0e98191f1h
+dd 0c55174e0h
+dd 0dcdc9effh
+dd 00423311fh
+dd 0220d600bh
+dd 0ad06b2eeh
+dd 00477f92eh
+dd 07d51382ah
+dd 092b118dfh
+dd 0d9f75305h
+dd 08e55aa43h
+dd 0aa4b8880h
+dd 037c8f77bh
+dd 07cf0935bh
+dd 000c1d3c3h
+dd 0cd65471eh
+dd 040107f29h
+dd 011f390d6h
+dd 0bcf849deh
+dd 056f1b91ch
+dd 0268d67d5h
+dd 04801edd0h
+dd 06f0f90a4h
+dd 00127e3bah
+dd 0e11cae4ch
+dd 0b3372100h
+dd 014640332h
+dd 0dd5ed3e3h
+dd 0018111c6h
+dd 05b9e0c44h
+dd 0ed15eaa8h
+dd 05c655f1dh
+dd 04d3410efh
+dd 0b350c1c5h
+dd 02b9684b8h
+dd 0204428b0h
+dd 02fd497b7h
+dd 0045d00dah
+dd 004405fdeh
+dd 0ad4a3754h
+dd 0654843e9h
+dd 0c4d3f2f9h
+dd 003b00a35h
+dd 0c08f7348h
+dd 0bfbbc7a5h
+dd 030ce094eh
+dd 01b84efb5h
+dd 041f82a4bh
+dd 0d8bf8721h
+dd 007fe8087h
+dd 03b2551d6h
+dd 010b60491h
+dd 066df3127h
+dd 0a1033b33h
+dd 04cce9a3dh
+dd 01912dd36h
+dd 0d9fbf335h
+dd 0b06de015h
+dd 08a150877h
+dd 09aabedbeh
+dd 08fac022fh
+dd 019cfe25ah
+dd 01d5a4c6dh
+dd 0106d9ef4h
+dd 08e8c9c54h
+dd 0bad9f944h
+dd 0521328d9h
+dd 00f7d5c60h
+dd 0d637cc10h
+dd 08a0dcd4ah
+dd 0991a813dh
+dd 09715501fh
+dd 065b0cbach
+dd 0b57e52f9h
+dd 0ef86f4c5h
+dd 02bb60d14h
+dd 0c720fce0h
+dd 0ed61c8eeh
+dd 0b33c04bah
+dd 0437d6afah
+dd 0b6610325h
+dd 074be6d28h
+dd 057e1eb41h
+dd 04196ce42h
+dd 072987360h
+dd 096cf0549h
+dd 054c238e3h
+dd 0edcd5cedh
+dd 057a36d75h
+dd 0be4a8657h
+dd 0f60322ach
+dd 074dbc734h
+dd 01e5f9a2fh
+dd 02c538ef8h
+dd 0cb246ee5h
+dd 08aae7ff4h
+dd 079a74395h
+dd 0283e974eh
+dd 01d80dd30h
+dd 0dbab3a7fh
+dd 0ee93fca7h
+dd 07ba83d9dh
+dd 00d1195d8h
+dd 09faf7439h
+dd 0f00f79c1h
+dd 051e08418h
+dd 040a0ab00h
+dd 045e1ec10h
+dd 014cd07a3h
+dd 0fa4d52eeh
+dd 0828f16e4h
+dd 0cbdc2dbdh
+dd 0ca1b466ch
+dd 0a3bca76ah
+dd 0d472781fh
+dd 0cd30a19dh
+dd 0b0bbb004h
+dd 0ce1ac952h
+dd 00589a905h
+dd 03adcddeah
+dd 04bd65915h
+dd 01668b248h
+dd 0d18b996dh
+dd 033939d8bh
+dd 0b0d464d1h
+dd 01260bed1h
+dd 05d87c583h
+dd 0f440a909h
+dd 0eae46724h
+dd 08cd43e18h
+dd 0a211cf29h
+dd 0fd9f3d82h
+dd 0a86df2a1h
+dd 0877b68c2h
+dd 0cf4a3a71h
+dd 051a91f2fh
+dd 0734c1fc0h
+dd 0dc8df7abh
+dd 0f8f79232h
+dd 0a77aa680h
+dd 0fadb1a25h
+dd 04a7e5a28h
+dd 0c0f71f42h
+dd 047901e05h
+dd 0fa8ce940h
+dd 0489540e3h
+dd 002aa1859h
+dd 0f91b9e19h
+dd 08c205c38h
+dd 076f556adh
+dd 0f20f1234h
+dd 0bef338a9h
+dd 04f7393c3h
+dd 00cd39f60h
+dd 0f74ca9e8h
+dd 0d71af831h
+dd 08f5c295ch
+dd 08ae7d241h
+dd 0d7bd3806h
+dd 0d2e53850h
+dd 0ba5b96e7h
+dd 0f488b77eh
+dd 0dd9b5af2h
+dd 0cf26357bh
+dd 0f48b1c16h
+dd 03f544f0eh
+dd 0f55ce24eh
+dd 06f66cbe0h
+dd 0588c5020h
+dd 03ca50679h
+dd 002d11576h
+dd 06fc5675ch
+dd 0056ef2c9h
+dd 06bd78bd1h
+dd 0c4d8e83ah
+dd 0de411eafh
+dd 092e00f8ah
+dd 01c30f24eh
+dd 0fbf3f6b8h
+dd 08ed505c7h
+dd 0646daa6fh
+dd 05b801acah
+dd 0e9292b57h
+dd 0a4384c94h
+dd 00f5c2ea7h
+dd 0e4ef9c57h
+dd 0d4b65c21h
+dd 03183c522h
+dd 0abf312bdh
+dd 084387afeh
+dd 01593c678h
+dd 03b05fc6ch
+dd 06a10012ah
+dd 0251b9777h
+dd 0b6578741h
+dd 071a7bcb7h
+dd 0181a03eah
+dd 03516f40dh
+dd 070cf3c9fh
+dd 0f7a2c020h
+dd 02fa29447h
+dd 0cac22084h
+dd 043951ee5h
+dd 0824d519ah
+dd 05d0d3761h
+dd 01f84d8ebh
+dd 0dba38f1eh
+dd 086cc63d8h
+dd 088f0ad8ch
+dd 0b887f3c1h
+dd 0cb751each
+dd 0af706e2dh
+dd 09abc0125h
+dd 05004ea6bh
+dd 087fa6017h
+dd 0911b9021h
+dd 029900ecdh
+dd 045721dafh
+dd 039e1b535h
+dd 0a6d8ac55h
+dd 0257d3510h
+dd 09dcb1f33h
+dd 050d84f4fh
+dd 06581b343h
+dd 08ff3ce61h
+dd 06dba014ch
+dd 0f00f22e8h
+dd 0ee43b999h
+dd 0fecba69bh
+dd 09ee410a0h
+dd 07821cddbh
+dd 03dc0e689h
+dd 0a8e56b8eh
+dd 060d99814h
+dd 066e202f1h
+dd 0ba8a0397h
+dd 0827acd8eh
+dd 0d7551d1ah
+dd 0cb6d306ch
+dd 00542eed6h
+dd 0c81c5954h
+dd 0f4162b52h
+dd 0dbd829adh
+dd 0cfa9f05bh
+dd 0c767fde2h
+dd 059db3737h
+dd 02e079092h
+dd 035e96b10h
+dd 0240652e1h
+dd 03c5a22eeh
+dd 05aeb18f6h
+dd 00075ed23h
+dd 0b7e085f2h
+dd 02cc8772fh
+dd 0410100c2h
+dd 056c89e98h
+dd 0fd481e6dh
+dd 03debf405h
+dd 0fe2ef04bh
+dd 056308517h
+dd 0a3435605h
+dd 07cbd67c1h
+dd 010d08ac7h
+dd 08b4212beh
+dd 0a97049d4h
+dd 09f50222eh
+dd 06154b3d9h
+dd 0ae3c03b5h
+dd 00abc347ch
+dd 057ae2d72h
+dd 08ae487abh
+dd 012451496h
+dd 05289710eh
+dd 0370915f3h
+dd 0fde1ce56h
+dd 05a815554h
+dd 0dcc3595ch
+dd 0f893555dh
+dd 0cc350af4h
+dd 00048ac16h
+dd 0ad8d24dch
+dd 0220b4654h
+dd 0be3064edh
+dd 03cab9195h
+dd 054987a29h
+dd 023af6760h
+dd 0424f1c1bh
+dd 00051cedch
+dd 0ac1dd13ah
+dd 0b14a6bcfh
+dd 001a92c6fh
+dd 0aa1b402fh
+dd 0a06bc07ch
+dd 0c72c6100h
+dd 0083cb214h
+dd 0803c5a45h
+dd 08c1e4578h
+dd 0fab8a646h
+dd 04e98a55ah
+dd 0404d2f4dh
+dd 0a1f43d3eh
+dd 015dbad4fh
+dd 008a4982eh
+dd 0fd61ca2eh
+dd 0ffa71b2eh
+dd 00b955a80h
+dd 0f7961680h
+dd 0ca506fcfh
+dd 01de97e9ch
+dd 0843d90e1h
+dd 030a60cd0h
+dd 0c2a0bb75h
+dd 06c1b2a06h
+dd 0df921c27h
+dd 0d888dfb0h
+dd 06980ffbch
+dd 071e19eb8h
+dd 0dc2043bch
+dd 09ee6c174h
+dd 0ecd3c3f0h
+dd 013e07f2dh
+dd 0c5c09709h
+dd 0fb39145ah
+dd 0eb42fc9fh
+dd 0fba5386ch
+dd 0e99198f3h
+dd 045cbad21h
+dd 07a3514efh
+dd 0ce55dafch
+dd 0da266851h
+dd 0f3ab01c4h
+dd 0951ff70ch
+dd 0cd92b437h
+dd 0c975c0a1h
+dd 081250142h
+dd 0e115bfb9h
+dd 0b0a92535h
+dd 0e8500c65h
+dd 05b792860h
+dd 0bedfb4adh
+dd 0b15966fdh
+dd 0b49a5f66h
+dd 0bf8cbeeeh
+dd 0e6626f1bh
+dd 094550cc5h
+dd 07d34dfd2h
+dd 0336eb0c5h
+dd 0b8f3b9c1h
+dd 09972102ah
+dd 00f2c521ah
+dd 06c3913beh
+dd 00dcd40efh
+dd 0b8435ff3h
+dd 01d7979a9h
+dd 0f33c83a5h
+dd 035ebe447h
+dd 04c1ef7e7h
+dd 0011072dfh
+dd 0b6297b1eh
+dd 0bb9de037h
+dd 0d63ac22eh
+dd 0842bd918h
+dd 03022853bh
+dd 0169be31ah
+dd 0d8ea03adh
+dd 04eb8af62h
+dd 0344862fdh
+dd 0507fc77ah
+dd 0be6dfe5fh
+dd 01977d83eh
+dd 0bd7b4b10h
+dd 03f9b9945h
+dd 0df8c827eh
+dd 02833b531h
+dd 0b838f204h
+dd 0bdfa4bd8h
+dd 0f7293bfch
+dd 09e2b7c51h
+dd 0ac6aafd3h
+dd 0ba3ce0eeh
+dd 09d0aedb9h
+dd 00bd9202ch
+dd 094d1da70h
+dd 0e25881fah
+dd 06d413327h
+dd 0b3ead1e1h
+dd 074705019h
+dd 0eaac6619h
+dd 0de2dfc22h
+dd 075c2b80fh
+dd 0c99158d7h
+dd 0e3712c02h
+dd 0c221bb6dh
+dd 0cbc5155dh
+dd 0351d3d68h
+dd 058995587h
+dd 04cd1a1bfh
+dd 05521da17h
+dd 0b22d64d4h
+dd 0bd499134h
+dd 02c917c3bh
+dd 0b499c866h
+dd 034fc7305h
+dd 0ed4f3317h
+dd 0208cd244h
+dd 07f8cf650h
+dd 0486590ebh
+dd 0703f35d0h
+dd 0639f830dh
+dd 09aa95fb3h
+dd 09d7a7957h
+dd 0b660e25ch
+dd 0e4322620h
+dd 03b20c202h
+dd 06ea3edbbh
+dd 0aa16100dh
+dd 029134050h
+dd 00b857233h
+dd 07bd1f45ch
+dd 07233712ah
+dd 03366f47fh
+dd 03552bc22h
+dd 045307ca4h
+dd 0d28eea31h
+dd 020833a12h
+dd 05ade1baah
+dd 0d5ab09c5h
+dd 048f125adh
+dd 094e60883h
+dd 0348be53ch
+dd 0c45d9d8bh
+dd 0fd3d5c24h
+dd 044691a85h
+dd 0c8d5e7f9h
+dd 02765b53fh
+dd 0c677f599h
+dd 08d0bdb98h
+dd 0c79704d6h
+dd 01f911e9ch
+dd 0b0b46aeah
+dd 03cfe5a84h
+dd 0ffaa7030h
+dd 08f500287h
+dd 0ca484915h
+dd 09809f72bh
+dd 0e97492fdh
+dd 0538b12abh
+dd 070290222h
+dd 065aa9b11h
+dd 056478864h
+dd 0a7eebda6h
+dd 0ec60005ah
+dd 0a9382cf3h
+dd 0804d87f1h
+dd 0fa7aded2h
+dd 01ead54c7h
+dd 0c819cbe4h
+dd 0199a6755h
+dd 0f57be25ch
+dd 06cbe8574h
+dd 043ee12fah
+dd 00f6f487fh
+dd 0096d6d12h
+dd 0add0bcfbh
+dd 009be8150h
+dd 0a93900beh
+dd 0a31212fch
+dd 01fe9a70ah
+dd 0dd1dc6c4h
+dd 0c6cafb1eh
+dd 0d932089ah
+dd 0b08b899dh
+dd 0cf02005dh
+dd 001c9ae19h
+dd 0ed040db8h
+dd 050fcdedbh
+dd 06aa06cb5h
+dd 06b7aa590h
+dd 0932b3905h
+dd 07dfddc62h
+dd 0ee119745h
+dd 024421009h
+dd 0aac54759h
+dd 06feeb0a4h
+dd 0b3fc94cbh
+dd 0bb7311aeh
+dd 049febb9ch
+dd 08a1359c2h
+dd 02fd3d87fh
+dd 0a1f4dfeeh
+dd 0c40d9a74h
+dd 040d6acbah
+dd 025bc493dh
+dd 0d2395709h
+dd 05a76d343h
+dd 054310187h
+dd 02f651eb9h
+dd 0257934bch
+dd 07d320028h
+dd 02b379dech
+dd 08795deb5h
+dd 09035b939h
+dd 0af5fc4d3h
+dd 06b48eca3h
+dd 0604757deh
+dd 0fcd64944h
+dd 0152ee3cah
+dd 06ecc71d6h
+dd 08025e252h
+dd 0a09e0f92h
+dd 084f6dc14h
+dd 07271c0fdh
+dd 0ccb9be8dh
+dd 01790db79h
+dd 005e48680h
+dd 09748cbach
+dd 0150769b4h
+dd 01091bc0ah
+dd 047716a89h
+dd 0a88dd24bh
+dd 07f97f18ah
+dd 0fad109a5h
+dd 061b0fd25h
+dd 0acb0e55dh
+dd 0b67069d9h
+dd 015c6f6bah
+dd 0a6575d41h
+dd 081d012fch
+dd 0d3a13d69h
+dd 0c2e5c50ch
+dd 0360678d6h
+dd 0bea26c75h
+dd 0d8b523a6h
+dd 0f7f430fdh
+dd 0951933d7h
+dd 01f60b55eh
+dd 0a4fbc65ah
+dd 0c92e2d87h
+dd 0207bab1ah
+dd 0f2ecbb29h
+dd 0b79373e3h
+dd 001aa0afbh
+dd 013ff987fh
+dd 0896c52c7h
+dd 0cf9b1d3bh
+dd 0484104afh
+dd 0e4b1dcd6h
+dd 0c3cb3935h
+dd 0ea2b69c0h
+dd 05e516b7dh
+dd 0d39f2ee1h
+dd 03b021791h
+dd 080c38bf7h
+dd 084b5253ch
+dd 068a7911dh
+dd 03d0cbf37h
+dd 0e3623e25h
+dd 0ef82e906h
+dd 0d749aefdh
+dd 014e607bch
+dd 0b856b74ah
+dd 0e840b762h
+dd 054f1999ch
+dd 01b9989b5h
+dd 0ff142fcah
+dd 082a9ad17h
+dd 0d4ad52eah
+dd 098ccb115h
+dd 0e40d425bh
+dd 0a5a2e71dh
+dd 0b55dfc41h
+dd 01d336cd5h
+dd 002167971h
+dd 092d7d192h
+dd 0d788bb4ah
+dd 08b57468dh
+dd 0b939449dh
+dd 096614367h
+dd 0a71b4696h
+dd 0b4cab2c0h
+dd 0c3eccbe7h
+dd 0891f1d5dh
+dd 092874740h
+dd 08e8ccc9ah
+dd 0ef65e9b7h
+dd 0cbb9fac7h
+dd 0afa7c53dh
+dd 002a4dd1ch
+dd 010f9023ch
+dd 0add12366h
+dd 0261841a6h
+dd 086c40706h
+dd 05641cf95h
+dd 01768d1f5h
+dd 057171be4h
+dd 0736f76b1h
+dd 0d079643ch
+dd 0a97b850ah
+dd 0c94d0a4ch
+dd 0009b54f9h
+dd 0ab85116eh
+dd 0305ff544h
+dd 0841a128bh
+dd 08701ac6bh
+dd 0fecfad60h
+dd 00c3f3675h
+dd 0513c467bh
+dd 013f75369h
+dd 0aa772774h
+dd 03038f2a1h
+dd 0779481b6h
+dd 01141f429h
+dd 0a71d224fh
+dd 0b2fa9ab5h
+dd 0e254d13ah
+dd 0e5408c1bh
+dd 0883c8cf5h
+dd 054e51720h
+dd 0f2d1a341h
+dd 00f46cc35h
+dd 04277f7a8h
+dd 08632457ah
+dd 0e38b39a3h
+dd 08bc6f0e9h
+dd 00963d672h
+dd 0707403f5h
+dd 07059eae2h
+dd 07b537bb3h
+dd 090a6efeah
+dd 07b0ad2cch
+dd 03cc7656fh
+dd 05770ef71h
+dd 06fb08f15h
+dd 0767520a3h
+dd 00cdcf826h
+dd 02a177393h
+dd 05cdd4cech
+dd 073c6e9b1h
+dd 0971cf799h
+dd 04d95baf0h
+dd 0c486aa34h
+dd 0d24c4213h
+dd 0dc64ba57h
+dd 09af78514h
+dd 08033eed5h
+dd 0dcaf1831h
+dd 06ce2a261h
+dd 0e53c31b3h
+dd 0d1e0a6bfh
+dd 086408c58h
+dd 01108aa0ah
+dd 037a546d0h
+dd 01444c93bh
+dd 0d918c383h
+dd 04a0ddd6bh
+dd 07eec4848h
+dd 03bb0bb9ch
+dd 0a34a535fh
+dd 09e356d80h
+dd 0d64efe2dh
+dd 028de3262h
+dd 014e6faf2h
+dd 01c209814h
+dd 04910988ch
+dd 0e64b2a4bh
+dd 080d218f9h
+dd 0ca99a850h
+dd 0635e646bh
+dd 0718977bch
+dd 0f48b3b88h
+dd 0cd5fa6c8h
+dd 042683859h
+dd 09f88a893h
+dd 05fd706c9h
+dd 0e51ad1a0h
+dd 083b28f26h
+dd 08feed7a0h
+dd 0d95e7da8h
+dd 032d0e583h
+dd 093dc4ad3h
+dd 069ab2bbfh
+dd 02fc1aa54h
+dd 0e3b15854h
+dd 0b3ca513bh
+dd 0bc0db73fh
+dd 00867cb84h
+dd 07c8ffee8h
+dd 0aa7ef37dh
+dd 0aeedfeffh
+dd 0d4e9c0e0h
+dd 0e529e7eeh
+dd 02abfd51bh
+dd 03e05ed58h
+dd 078ea086ch
+dd 08b5444bdh
+dd 0bfa45b49h
+dd 0f22c9e49h
+dd 040b6371bh
+dd 084fa2a14h
+dd 059981818h
+dd 055a0b22fh
+dd 0f4e111b1h
+dd 0bcd4f9d4h
+dd 065236b36h
+dd 077566657h
+dd 02a7f57afh
+dd 0c77c0dc1h
+dd 0b46c28bah
+dd 0595800a2h
+dd 001cf121ch
+dd 09a5ca905h
+dd 02a0049e9h
+dd 079561d9bh
+dd 05a94ed56h
+dd 0e721def9h
+dd 0e8f350beh
+dd 0096aed54h
+dd 04c375f46h
+dd 0719b16e2h
+dd 0279818fah
+dd 01dfb8550h
+dd 04a3f8878h
+dd 05ed6f554h
+dd 019de242ch
+dd 0a2362e62h
+dd 009542f22h
+dd 0bff58011h
+dd 00f159877h
+dd 0118c7468h
+dd 0a5727ac8h
+dd 08f9fe1c5h
+dd 0b82017b1h
+dd 052f9eafah
+dd 001e0510bh
+dd 09f92a6e2h
+dd 0a4b0c0e4h
+dd 03b78d43dh
+dd 0cca3a664h
+dd 00cd4e5d2h
+dd 0675b4252h
+dd 005ada240h
+dd 0c19e91dfh
+dd 0a9a2a9b7h
+dd 00003a049h
+dd 0bf0a3b80h
+dd 0ece7229dh
+dd 0c9f7b8b9h
+dd 0ec2dd23fh
+dd 0c5c8ea0bh
+dd 0a936d834h
+dd 0ebfc9a9ch
+dd 0a0581b63h
+dd 099437c25h
+dd 09df419a6h
+dd 05ca5436ch
+dd 037435d8bh
+dd 07316624dh
+dd 0a61733e7h
+dd 0fc8cec82h
+dd 01a8df6b8h
+dd 0644c7ac2h
+dd 074518000h
+dd 0c0cfa547h
+dd 0a54d0a30h
+dd 0192116cbh
+dd 044cc4c34h
+dd 0501c79dah
+dd 05f1ad35ch
+dd 09bb416e3h
+dd 0065338ffh
+dd 07f2b25bah
+dd 0f3ef05b6h
+dd 08af9f543h
+dd 0999c00d8h
+dd 0ca494224h
+dd 033481cd2h
+dd 069541fcah
+dd 0aafa8d0eh
+dd 00cd2397ch
+dd 00437eaedh
+dd 04d7c3385h
+dd 0103a03fdh
+dd 08b460581h
+dd 0a4d39939h
+dd 05c6db4aeh
+dd 0142f43a6h
+dd 0261f5642h
+dd 0d8e6d6d1h
+dd 08d28adf8h
+dd 009abd9deh
+dd 06bd45cb2h
+dd 0dc114975h
+dd 0df253a56h
+dd 0acd1b8b0h
+dd 0fd3a6f16h
+dd 0e53afce3h
+dd 0df405bf4h
+dd 0d571c12dh
+dd 08d744bd7h
+dd 00143a89ch
+dd 047fedf8eh
+dd 08f492817h
+dd 0e50e475ch
+dd 0da612478h
+dd 089b505a2h
+dd 00d03574ch
+dd 0e0cdc352h
+dd 0abffbe2bh
+dd 0654762b6h
+dd 057f8d2bch
+dd 09132ea56h
+dd 086f1aa5ch
+dd 0ece8e935h
+dd 0caef0511h
+dd 0715c478bh
+dd 0adee68f7h
+dd 05c360405h
+dd 0d46dd5efh
+dd 06a1acec8h
+dd 05b702aa6h
+dd 0211e8f05h
+dd 011e9e63fh
+dd 090bdec73h
+dd 0c203934ah
+dd 00958327fh
+dd 05acc2b22h
+dd 06c99f251h
+dd 00d2c398fh
+dd 0f36d3f5fh
+dd 05b3ddd77h
+dd 0baf9ffc0h
+dd 0b53fa080h
+dd 0145beeb9h
+dd 039f4b03ah
+dd 0821c3c2fh
+dd 06cb04fe8h
+dd 0386809a6h
+dd 0a7c8bfefh
+dd 0e593824fh
+dd 0ddda457eh
+dd 07ad8b10eh
+dd 0f2227a49h
+dd 05327d472h
+dd 0af57cd44h
+dd 0876fae85h
+dd 042f96f0fh
+dd 0b49ea9e7h
+dd 07dc987d0h
+dd 09ff3e7cbh
+dd 004a66a4dh
+dd 08244d334h
+dd 0db3b6e6eh
+dd 0efc6a436h
+dd 02a57b05fh
+dd 0a7b53c56h
+dd 04d7a529ah
+dd 0ceaf1430h
+dd 0ac104105h
+dd 04c7da8b9h
+dd 023f1c24fh
+dd 0941cdaa9h
+dd 0884ab3b3h
+dd 085d2b025h
+dd 049617a84h
+dd 0dbe618e8h
+dd 0d90eee68h
+dd 08df9cd09h
+dd 00709c6efh
+dd 0f54a0c53h
+dd 0c71f4362h
+dd 0015badbah
+dd 0f9a4d4f7h
+dd 020faa641h
+dd 0f845a160h
+dd 0ad14c72eh
+dd 018dcef54h
+dd 0a86147fah
+dd 0e4c6077ah
+dd 06bfd527ah
+dd 0bcfbb4d3h
+dd 04ea03719h
+dd 0178348f0h
+dd 0751e7ee5h
+dd 0a38111a9h
+dd 04be535cbh
+dd 047073b1bh
+dd 063214885h
+dd 0b02f0c8eh
+dd 088bb5412h
+dd 0ae5194fah
+dd 09537f9b4h
+dd 05a455b67h
+dd 0a086030bh
+dd 074ad7effh
+dd 03fe8b9c6h
+dd 07f4dc622h
+dd 046379b38h
+dd 0e080a040h
+dd 058618ceeh
+dd 0391890e4h
+dd 02d1f587ch
+dd 0507cf8a3h
+dd 02f2ae6bbh
+dd 02dcbc3a9h
+dd 0c0897c73h
+dd 0f6488fdah
+dd 0e40e6823h
+dd 0024ce77bh
+dd 062b8d3f3h
+dd 0c5923aa3h
+dd 0f64a0342h
+dd 0faf98050h
+dd 049d09e03h
+dd 05bc56a4ah
+dd 0635a70cdh
+dd 00532545ah
+dd 06e6ed043h
+dd 098241945h
+dd 067f2f803h
+dd 07f6e1861h
+dd 05f485608h
+dd 076e7b415h
+dd 0eecb2d51h
+dd 0de7bdfbbh
+dd 0f5a5c8d4h
+dd 0e7831bcch
+dd 0c4fa5a8ch
+dd 04ab0288dh
+dd 0ac0a5a75h
+dd 05e89b2e3h
+dd 062dd7adah
+dd 091734204h
+dd 0f5dad503h
+dd 026896fa8h
+dd 0b672a875h
+dd 0c6710cc5h
+dd 01d416f19h
+dd 0b1155759h
+dd 04e29c90bh
+dd 01f4929d1h
+dd 00b787584h
+dd 0d7e81805h
+dd 0d2163733h
+dd 07068149eh
+dd 0108f3dfeh
+dd 04a0b21dch
+dd 0ba9df71ah
+dd 006d24588h
+dd 092310b3dh
+dd 0ecf9e164h
+dd 0de04ece4h
+dd 0ff97207eh
+dd 05de6d476h
+dd 017658bd5h
+dd 019d7fe22h
+dd 0f95ac71bh
+dd 00c5a7950h
+dd 0d0b2fe75h
+dd 0d810e1b7h
+dd 0e33720e3h
+dd 0f0af287eh
+dd 0e2bee632h
+dd 063d3b63dh
+dd 0995f19f9h
+dd 0f8fae17bh
+dd 096c90224h
+dd 0009fa99ah
+dd 0a9f2522ch
+dd 04ffba7ceh
+dd 00e039f8bh
+dd 0a0df441eh
+dd 033c5476dh
+dd 02a78e792h
+dd 08b9813d2h
+dd 0ce5a04b4h
+dd 080a30025h
+dd 0bea24cd1h
+dd 0cb9ee166h
+dd 068d73d80h
+dd 00a68572dh
+dd 03a578b34h
+dd 025651e43h
+dd 0d6027013h
+dd 0c4f22807h
+dd 010d1405dh
+dd 0d7145875h
+dd 0a97a36b2h
+dd 0cef63fefh
+dd 03e61e00eh
+dd 080de7ecfh
+dd 0ead3f195h
+dd 0dace61edh
+dd 05dd2f6cdh
+dd 036a84335h
+dd 01431f3a1h
+dd 07a11988fh
+dd 0d5446df0h
+dd 02c7cd65ah
+dd 03e957e06h
+dd 095c292e4h
+dd 09b3c11cfh
+dd 015ed6276h
+dd 0903a0782h
+dd 0862ef5d0h
+dd 0a4daa4b1h
+dd 093e31743h
+dd 0d782fe43h
+dd 01e725cf9h
+dd 043e93ca8h
+dd 0b5177df4h
+dd 074ae7d8eh
+dd 0406ea406h
+dd 0bee2b3d3h
+dd 053adb033h
+dd 0e4c7e606h
+dd 0e332dddah
+dd 027bfccfch
+dd 03add733bh
+dd 0237e1fe2h
+dd 01c6fb79ah
+dd 02009b071h
+dd 0539ab2d6h
+dd 005d998ceh
+dd 0fbf147d2h
+dd 0533c9653h
+dd 082b185c3h
+dd 07976c320h
+dd 03a33a58ah
+dd 0f2054d67h
+dd 0542c2df9h
+dd 0181a2063h
+dd 0f5a970efh
+dd 0e493c394h
+dd 076d10326h
+dd 0661bec93h
+dd 06b55d0ach
+dd 092080effh
+dd 04d680990h
+dd 034c6547dh
+dd 0e0ae018ch
+dd 0e6def90dh
+dd 00ae1e83ah
+dd 00ebe1155h
+dd 046025d62h
+dd 0430578aah
+dd 0f0223e82h
+dd 03c587f57h
+dd 09d9d9d7fh
+dd 0950cd0e5h
+dd 04dbaebb0h
+dd 02ad3ef08h
+dd 0010150beh
+dd 05850eab6h
+dd 0e5ebf70dh
+dd 0f5b4075ah
+dd 006a6a573h
+dd 0dffe687bh
+dd 06419305ah
+dd 0325c0bd1h
+dd 026dc1998h
+dd 02b1675b6h
+dd 0a72a1438h
+dd 0ac6c9724h
+dd 0b2759583h
+dd 0564b6e03h
+dd 0bd16eb3ch
+dd 08950525dh
+dd 0d6522d31h
+dd 00d654671h
+dd 0bf7177f6h
+dd 03a6bc921h
+dd 0dd9784d2h
+dd 0acb544fch
+dd 04495229ch
+dd 04e4999e4h
+dd 0d4c533c2h
+dd 04b5df076h
+dd 0b94097c9h
+dd 055c50816h
+dd 09ef0864eh
+dd 0544210d7h
+dd 0998f64c6h
+dd 0598cf916h
+dd 0348fa9a7h
+dd 0b8c10f14h
+dd 083b277b8h
+dd 057fa9923h
+dd 0db69f805h
+dd 01a1c2337h
+dd 09a06195dh
+dd 0734043bdh
+dd 0667d1547h
+dd 06b195ccah
+dd 06dd9f133h
+dd 0a3547ca8h
+dd 00bc13472h
+dd 0af54ae18h
+dd 0d40631adh
+dd 09b8cddadh
+dd 0fe243961h
+dd 018068878h
+dd 04c63f5f4h
+dd 0bcb487e6h
+dd 000e176a6h
+dd 04d0253c3h
+dd 0f293c4c8h
+dd 0c0b40433h
+dd 01a397d4fh
+dd 0da27e378h
+dd 0bb642816h
+dd 031f53f77h
+dd 0ee07e77fh
+dd 066fc1beah
+dd 0e14325aeh
+dd 03ae4f2e1h
+dd 092bdf789h
+dd 00dcd7effh
+dd 0b18feebah
+dd 0bfb9bd0fh
+dd 09f1236f7h
+dd 09a6be081h
+dd 0d347fd04h
+dd 0c8f453dbh
+dd 0075156d9h
+dd 032852124h
+dd 032161076h
+dd 043fe2232h
+dd 013cea042h
+dd 0efb74f1dh
+dd 0844aace1h
+dd 0d2bd99bbh
+dd 0809b4ee6h
+dd 0908808d3h
+dd 07c402878h
+dd 0f67a4ea4h
+dd 09d54ff84h
+dd 00412973fh
+dd 09a6e8217h
+dd 078fffd19h
+dd 0a2c54c47h
+dd 020ff2f98h
+dd 0a3e1b178h
+dd 0d48788d4h
+dd 02e079dc7h
+dd 017220618h
+dd 0fe86789ch
+dd 029688c9bh
+dd 0eceb6379h
+dd 0c4822c13h
+dd 0744ea3f5h
+dd 0f0ced4a9h
+dd 0e2c43724h
+dd 0e6547673h
+dd 0f93d57f5h
+dd 0061bd69ch
+dd 09b2b725bh
+dd 043b19247h
+dd 006d4d6deh
+dd 0113524d5h
+dd 0d041f056h
+dd 0fc7d953bh
+dd 07f74e1d5h
+dd 0bbb62869h
+dd 06b838cf9h
+dd 0ccd5a4e5h
+dd 08b592e70h
+dd 05f251e9eh
+dd 00feec1d0h
+dd 082490337h
+dd 0fc738d98h
+dd 0f99974c9h
+dd 04ab22afeh
+dd 07f01a142h
+dd 0df5e89bah
+dd 005171568h
+dd 0cec7181eh
+dd 0056579e2h
+dd 0069681b5h
+dd 06404c941h
+dd 07fd7ec55h
+dd 09f12863fh
+dd 0bd260abeh
+dd 07945a6dah
+dd 09b31c592h
+dd 01158644dh
+dd 00be321b2h
+dd 021aaa60fh
+dd 098836f5ah
+dd 08a3b8129h
+dd 0d0f19fbch
+dd 009b912a1h
+dd 0574ecab4h
+dd 0079f7eafh
+dd 099c972c3h
+dd 0fab7f983h
+dd 0c838677ch
+dd 06f12692dh
+dd 0680e1166h
+dd 0eab56609h
+dd 088273c39h
+dd 0a73ba717h
+dd 0ac7aad48h
+dd 027997104h
+dd 09fe238b8h
+dd 04c052bebh
+dd 067aed2e9h
+dd 0abff8756h
+dd 0a5bbfecch
+dd 0b3692102h
+dd 0d28e426ch
+dd 0e93f134dh
+dd 0c8bd6bf1h
+dd 0468cd366h
+dd 0852d081eh
+dd 0a2df5c22h
+dd 03294e4cch
+dd 0dbd18ca0h
+dd 04775c542h
+dd 007bebc9bh
+dd 021a9f3d9h
+dd 03b34f2ddh
+dd 0faad2084h
+dd 015488b39h
+dd 0fb143dfeh
+dd 08ac2cdfdh
+dd 016e7cbdeh
+dd 090f96d87h
+dd 01725df9ah
+dd 00e4f2803h
+dd 040594597h
+dd 06ca2b873h
+dd 01ab63e34h
+dd 022820357h
+dd 0993c3e18h
+dd 0e8c58c87h
+dd 05d15a586h
+dd 07a3e709ch
+dd 05e3755a6h
+dd 08959f89ch
+dd 0e74a49c2h
+dd 08f8da8dah
+dd 07a35daddh
+dd 0e7ae7736h
+dd 00b3f179bh
+dd 06844a20dh
+dd 09ba51f23h
+dd 03f976174h
+dd 0552da277h
+dd 08e626c18h
+dd 03b5efae1h
+dd 0f7032058h
+dd 0d37ecf5eh
+dd 0bbe50112h
+dd 0e738c90ah
+dd 07fc4b790h
+dd 091d598ddh
+dd 0206fbb8fh
+dd 057e3d0ffh
+dd 00c413ae2h
+dd 0d5daa87ah
+dd 0052e7820h
+dd 0e9c38f4ah
+dd 0fd5d252dh
+dd 025429822h
+dd 077efb9cah
+dd 05669b5bch
+dd 0d6405f09h
+dd 0b5069814h
+dd 0cf67cdafh
+dd 090bb18fah
+dd 0d47abac1h
+dd 00b595733h
+dd 088347562h
+dd 0dbe79e38h
+dd 0681cdbdah
+dd 0128e853ah
+dd 052d84c2bh
+dd 0b435838ch
+dd 06c0a296ch
+dd 094a1265fh
+dd 003359944h
+dd 020ca10f7h
+dd 0b181f7c5h
+dd 0650e5d83h
+dd 0381339deh
+dd 0017cb54bh
+dd 03230eeb5h
+dd 07d0412dah
+dd 0805334dfh
+dd 02b5347bah
+dd 0b0b9aa15h
+dd 0f1dec74dh
+dd 05fad9927h
+dd 0b7c26ba2h
+dd 05961690fh
+dd 05ef06e80h
+dd 0de31c250h
+dd 04f45b267h
+dd 0eb063b37h
+dd 008acaf19h
+dd 01074b7d2h
+dd 05e9a0b20h
+dd 0575d54a7h
+dd 086785381h
+dd 03876b4c4h
+dd 0fe632c44h
+dd 02c1b7d89h
+dd 00ee63185h
+dd 0765e7b75h
+dd 0c471a58eh
+dd 02e0b91c8h
+dd 04d9131dch
+dd 05a8acf48h
+dd 039398779h
+dd 0fe55e89ch
+dd 00037758ch
+dd 09b62236ch
+dd 0b9f85c0dh
+dd 00922314eh
+dd 0d7da4be5h
+dd 025d6c3abh
+dd 06a754d51h
+dd 042cacd9ch
+dd 06667353ch
+dd 0aac4e956h
+dd 014c302e4h
+dd 0f51fb242h
+dd 05dbf2f2ch
+dd 01621a269h
+dd 05a910f6bh
+dd 0584b6a89h
+dd 0072df22eh
+dd 060e798d2h
+dd 0758612c8h
+dd 09c9161e5h
+dd 0a2639a2ah
+dd 00d64f20dh
+dd 052edc12bh
+dd 05368b58bh
+dd 0a852fcf6h
+dd 0a2cd5b8dh
+dd 0778f020bh
+dd 09a8d3248h
+dd 0c5841417h
+dd 02bfe38b2h
+dd 0821dddf9h
+dd 0aa29ae49h
+dd 0621b6ce6h
+dd 057a9a822h
+dd 0e0a3e437h
+dd 0b4ac65a8h
+dd 0973d982dh
+dd 0b10cbda1h
+dd 0a4ff9d29h
+dd 0b2b2bc3eh
+dd 03a61b856h
+dd 0916370f3h
+dd 0fc2e3590h
+dd 0fbb91c44h
+dd 03addf21eh
+dd 03482f3d5h
+dd 0d201ee8fh
+dd 0af23ca43h
+dd 031395d2ch
+dd 0c8128a3eh
+dd 01dd3e290h
+dd 082d93026h
+dd 017001e6bh
+dd 00124bd9dh
+dd 09b1f0fdeh
+dd 0f836aed5h
+dd 0186a36a7h
+dd 048f772d4h
+dd 0553ac030h
+dd 0be8b8424h
+dd 01ce5a4e3h
+dd 099fdad7bh
+dd 0fcc03cc2h
+dd 00f894badh
+dd 0b7cee63bh
+dd 0888c5207h
+dd 0fe4c38bbh
+dd 004630282h
+dd 05cd5bde4h
+dd 05af9357ah
+dd 070e664e3h
+dd 0d2467f1ah
+dd 03f0de597h
+dd 0ab45a04ah
+dd 0de5d9c18h
+dd 0ffd752a9h
+dd 05a4daed8h
+dd 076bbb4fch
+dd 01bb2ca3eh
+dd 0a90115e8h
+dd 0338259c6h
+dd 06cc12aaeh
+dd 0239a88e6h
+dd 0a25be299h
+dd 0d7b2bdf8h
+dd 017cdeca5h
+dd 0577b9d52h
+dd 0e4b88b94h
+dd 02bf19b80h
+dd 0260e0b64h
+dd 0ec509c5ch
+dd 0a71f0b59h
+dd 0bc6bb510h
+dd 0e7facf3ah
+dd 0a7c5cbeeh
+dd 062ccba46h
+dd 0350a2caah
+dd 0330715adh
+dd 072ec99b5h
+dd 083e4eb48h
+dd 05c2df7ech
+dd 0035133cch
+dd 040b0e661h
+dd 0a0642d72h
+dd 09789ae27h
+dd 07f297ea6h
+dd 09bc724feh
+dd 0d034ce41h
+dd 03075bf88h
+dd 090ad954ah
+dd 0fd5fa208h
+dd 099ae403ch
+dd 0b3e3728bh
+dd 08c1821edh
+dd 0a2fcb6edh
+dd 012988780h
+dd 0b8cd673dh
+dd 00633b3d9h
+dd 0842e7e44h
+dd 028bf8181h
+dd 017db87b6h
+dd 065eb6d12h
+dd 003c49137h
+dd 0ff937d55h
+dd 009e76945h
+dd 03723e4c2h
+dd 03a731773h
+dd 0d16bcea1h
+dd 0f85e19deh
+dd 0472632b2h
+dd 002a09ec9h
+dd 069d27b8ah
+dd 0ceea2387h
+dd 087dffbefh
+dd 0ae5d45a2h
+dd 0c7a98b4ch
+dd 0e99fe0c9h
+dd 0c5b51db2h
+dd 09b3a8b0eh
+dd 0d489948ch
+dd 0d13398ebh
+dd 0da675806h
+dd 0b9ae87a1h
+dd 01838277ch
+dd 058a22625h
+dd 06f67639fh
+dd 05522b8d9h
+dd 0930623f4h
+dd 0ea73a6c3h
+dd 018f22e99h
+dd 088beeae0h
+dd 052693a7bh
+dd 04d24f017h
+dd 06aac5425h
+dd 09ca3b698h
+dd 0bd64e408h
+dd 0eb738eb7h
+dd 00987cd7fh
+dd 0f7d8e940h
+dd 017750344h
+dd 0cd3b97a5h
+dd 000dccdb5h
+dd 00ddb7f0ch
+dd 09dd77250h
+dd 097e0e716h
+dd 0f9d6a39ah
+dd 0b3922c03h
+dd 03263218ch
+dd 0bfd0304fh
+dd 06895540eh
+dd 06e18582fh
+dd 0c0e710cch
+dd 08064efceh
+dd 072e4b6edh
+dd 0001fcb2fh
+dd 0e158fe2eh
+dd 0e07c0891h
+dd 06370b7e7h
+dd 066c228b2h
+dd 0c6661617h
+dd 09ade7549h
+dd 0fa7595cdh
+dd 0ad9b6d3ch
+dd 0ee93f4deh
+dd 07c64e652h
+dd 02525f7f8h
+dd 04890dfddh
+dd 0babcdda0h
+dd 088fd0cf6h
+dd 0c0258a2eh
+dd 027533679h
+dd 094e30da9h
+dd 0a7997345h
+dd 052034ea5h
+dd 026194c32h
+dd 0280141a6h
+dd 0ac4edb85h
+dd 02904d707h
+dd 02f9cfdb0h
+dd 00211479eh
+dd 091b9c16fh
+dd 07d90aadah
+dd 0715cc919h
+dd 0a80e414eh
+dd 042a97daeh
+dd 0ccb08c34h
+dd 0b0fe4205h
+dd 0410321a2h
+dd 0f8424ebch
+dd 0b0e64592h
+dd 0dd7c7320h
+dd 0ca41cc5eh
+dd 092d751a0h
+dd 03de511d3h
+dd 04fe719c2h
+dd 084c20070h
+dd 09baee101h
+dd 06c1bc17eh
+dd 05e93f752h
+dd 0195f979eh
+dd 00fb3d458h
+dd 0f67e259ah
+dd 04093e2cfh
+dd 028878dfeh
+dd 0cc50956eh
+dd 015469a30h
+dd 05843b289h
+dd 0a2fd3b46h
+dd 03bcfe6fbh
+dd 029ec5c49h
+dd 05b7d7400h
+dd 04ae71274h
+dd 0924ce08ch
+dd 0713daa6fh
+dd 013566ac2h
+dd 05b90e9c4h
+dd 0021ccb48h
+dd 00ed55ab6h
+dd 0e789928fh
+dd 020710529h
+dd 0d7d7bc5ch
+dd 0ba27d0e0h
+dd 0bdddd29bh
+dd 03eff0bb8h
+dd 00efe7810h
+dd 0dbf24fc8h
+dd 0431ff4ech
+dd 0b8e08c4ch
+dd 01dad5ba7h
+dd 04bb9d371h
+dd 08a4e9736h
+dd 0cd216e03h
+dd 017154caeh
+dd 0a70bc362h
+dd 088538413h
+dd 0bff1bed4h
+dd 0c7bf4abeh
+dd 0311b3a57h
+dd 072b6bd6fh
+dd 0d03f559dh
+dd 0305ec50ch
+dd 0339932c1h
+dd 0c437090ah
+dd 0bdb1f0d3h
+dd 08efec0c5h
+dd 06beadd7bh
+dd 0d5f7bb70h
+dd 096cd28ach
+dd 091eda5e0h
+dd 02a9c65bbh
+dd 0229169fch
+dd 077b1e110h
+dd 0e9430365h
+dd 0bee8411dh
+dd 0d0dbdd79h
+dd 0e8d2210bh
+dd 080213d17h
+dd 07a0d8159h
+dd 080c752d2h
+dd 08d31fea1h
+dd 06d8ca0afh
+dd 08f8d1c78h
+dd 0ea3abc46h
+dd 0c9934301h
+dd 088139c73h
+dd 008759a13h
+dd 08f0ae7a5h
+dd 001da07efh
+dd 03e7fc5b6h
+dd 0e074de8ah
+dd 0d628f486h
+dd 053547d01h
+dd 01bd69e26h
+dd 080c62065h
+dd 047e5fb07h
+dd 00e3ab1ech
+dd 04631fe70h
+dd 0f285877dh
+dd 0b0e388bch
+dd 038477504h
+dd 0340ccf29h
+dd 0d3f58030h
+dd 00c627523h
+dd 03fdf9f51h
+dd 0e7966ed2h
+dd 039e48d31h
+dd 0ca7a9623h
+dd 08b70136bh
+dd 0d47502a1h
+dd 0fdb5561ah
+dd 0136fa9dfh
+dd 0e2393781h
+dd 0600eb7d4h
+dd 083168874h
+dd 0108bc644h
+dd 033237380h
+dd 0a0d16f31h
+dd 0e1c35a33h
+dd 00155aa68h
+dd 023fcd233h
+dd 06d7b0813h
+dd 05b752f89h
+dd 0f058fb6fh
+dd 0a56f55f3h
+dd 0df0c0e1ch
+dd 0d11a29bch
+dd 02d20744eh
+dd 0afdb81f6h
+dd 0e47585d2h
+dd 08c32f2e1h
+dd 0762e681bh
+dd 0fca71cb6h
+dd 0654ac225h
+dd 0d7aa7ee8h
+dd 03e62a4b1h
+dd 044c1afcdh
+dd 0f06c9de1h
+dd 068f388a3h
+dd 0be02bfb0h
+dd 0a3f8e3a2h
+dd 06bc309bdh
+dd 0f66f6589h
+dd 0a1566dc0h
+dd 0008ab3b6h
+dd 0551abafdh
+dd 07adbba9eh
+dd 09029cee0h
+dd 0acef45e1h
+dd 0c810c4d0h
+dd 01d6f3b89h
+dd 060d5a55eh
+dd 01972fe0eh
+dd 0ea579776h
+dd 03ba7e364h
+dd 0808b39a0h
+dd 0e54830bch
+dd 070bc049fh
+dd 05e187709h
+dd 02784595fh
+dd 07ba54e96h
+dd 017e159b9h
+dd 00dfe0713h
+dd 092cd100dh
+dd 00cf7c2ech
+dd 0e7fdd78fh
+dd 0fa168c23h
+dd 0eea50a3fh
+dd 030be548ah
+dd 028a34f70h
+dd 0b6cb1c5ch
+dd 030098099h
+dd 0cd7696ffh
+dd 0c6b4744bh
+dd 0522e2e04h
+dd 0f4f525a3h
+dd 0ae25e79ch
+dd 050e96a10h
+dd 0a12f247ah
+dd 0e26e14d1h
+dd 01744c60dh
+dd 0cfad04deh
+dd 0d2dba5b6h
+dd 08ec8ce65h
+dd 0cddca112h
+dd 0bf2394bdh
+dd 04ad58928h
+dd 0f14844bbh
+dd 03623ae75h
+dd 04f0cc32dh
+dd 06eae508ah
+dd 0288372f4h
+dd 013ba4c8bh
+dd 0f5a4e953h
+dd 0048dde5ch
+dd 0531b8ae9h
+dd 0fe61d93bh
+dd 0154abb2dh
+dd 0c6a3e907h
+dd 0cc99d98bh
+dd 08c671a1ch
+dd 06aacc2b6h
+dd 0dbd0d7a0h
+dd 03db1992bh
+dd 0a6ab6294h
+dd 0a5cf0962h
+dd 019e502eeh
+dd 06c4750e0h
+dd 0ae738e2ah
+dd 046a6e36dh
+dd 078c039cbh
+dd 02f203a53h
+dd 0b50feb3ch
+dd 0461fb317h
+dd 04618449bh
+dd 06647c264h
+dd 0bef0da2bh
+dd 0a07c44c9h
+dd 080de84e6h
+dd 0c66ac58dh
+dd 05abfe07ch
+dd 009abfa66h
+dd 006198424h
+dd 0cfff8e65h
+dd 087c3767bh
+dd 07d7d3907h
+dd 0228af4b3h
+dd 0305fa983h
+dd 092c18e91h
+dd 0b8a5540fh
+dd 03056662ah
+dd 09e291e40h
+dd 097280e4fh
+dd 0e7e0c9a0h
+dd 049a00a8ah
+dd 0fe308d68h
+dd 0a62ecadeh
+dd 0a71051afh
+dd 005a56596h
+dd 084be3580h
+dd 0b258c46fh
+dd 0c7efdfafh
+dd 0cd65af47h
+dd 05c4c4242h
+dd 069d1d9b0h
+dd 0ed9fc026h
+dd 0a98f22eeh
+dd 038c02f8bh
+dd 01cf64c5eh
+dd 0288df8c9h
+dd 0166f185ah
+dd 0c18c24e4h
+dd 0f630f4dch
+dd 03cb6d210h
+dd 088e67401h
+dd 0a4db80eeh
+dd 095db35bbh
+dd 0c549ac26h
+dd 0a91182f4h
+dd 0352878e5h
+dd 0b2f65fe3h
+dd 013498d47h
+dd 09aceae8eh
+dd 0459bf42bh
+dd 0369be43ah
+dd 0a55fd5ech
+dd 0a8d07e53h
+dd 0ab07d993h
+dd 0faf393f9h
+dd 0a2994f3dh
+dd 036903ce2h
+dd 0a56a89b4h
+dd 0b0407aebh
+dd 030e0836bh
+dd 01e5df263h
+dd 0771c8ac7h
+dd 07ba8d5beh
+dd 0dc116697h
+dd 091cdd831h
+dd 0d441df72h
+dd 03700502ah
+dd 0613aedfah
+dd 0a032d5c4h
+dd 08c6817aah
+dd 079b5be71h
+dd 0325d4187h
+dd 0dbf1001ch
+dd 0fcded3a2h
+dd 009fb7e26h
+dd 07e96d455h
+dd 0ebf50c72h
+dd 08b47b9c9h
+dd 0b685d931h
+dd 0929865ceh
+dd 06b8808f4h
+dd 0e4212ff7h
+dd 0284884fbh
+dd 053acda2fh
+dd 0cb92e62ch
+dd 090911890h
+dd 029a0a131h
+dd 00b834420h
+dd 0931e397fh
+dd 01d7558f0h
+dd 0f7e38895h
+dd 09fb89117h
+dd 09696d3c5h
+dd 0e1bcc8d4h
+dd 0ae6415d2h
+dd 051de11b5h
+dd 0098a9b14h
+dd 0f884b6a4h
+dd 0cd2e2a8eh
+dd 0cd9dadaeh
+dd 0cd249b24h
+dd 06be638c2h
+dd 02efd18c4h
+dd 03c330280h
+dd 0f64a3873h
+dd 08d22f038h
+dd 0f778743ch
+dd 0da6d826fh
+dd 045bff840h
+dd 0c978647dh
+dd 0f41c8f8ah
+dd 0f0bb4b05h
+dd 0c29acdb3h
+dd 0a3e0917eh
+dd 0d8b1f4f3h
+dd 06fbc6bc8h
+dd 0f8ca0f5bh
+dd 014c36a26h
+dd 09ee0cd05h
+dd 02aab2fb4h
+dd 0213c520bh
+dd 0edf60345h
+dd 01d13ebb3h
+dd 0bbbbf44bh
+dd 0571795b1h
+dd 092cc3efah
+dd 09bd300f3h
+dd 0f77ce747h
+dd 045678992h
+dd 0a48b6810h
+dd 0aa645b05h
+dd 0bbaa3aa5h
+dd 00af8c533h
+dd 0745d7df9h
+dd 0d48e7f0ch
+dd 07c0a99bbh
+dd 04e616ecah
+dd 0248638d4h
+dd 0ff5dba47h
+dd 0e4cb4391h
+dd 00ae97f49h
+dd 07a18da7bh
+dd 0ac463760h
+dd 07a3e3a35h
+dd 07e190e9ah
+dd 054613c74h
+dd 05c200a71h
+dd 0d3c08a4ah
+dd 0f66e1ac1h
+dd 0f5f49e61h
+dd 069329361h
+dd 002e8a5cah
+dd 03c2d91ddh
+dd 023fe8064h
+dd 025106654h
+dd 0cd2b2d22h
+dd 007510115h
+dd 0cd73caa5h
+dd 05d52a2e9h
+dd 01cee704eh
+dd 0b96aca56h
+dd 04055fa26h
+dd 02934de40h
+dd 00673ff59h
+dd 0109e25f3h
+dd 017b4720bh
+dd 0cc094ae7h
+dd 03f80a641h
+dd 021679027h
+dd 086645668h
+dd 0ff8df267h
+dd 009fa2dafh
+dd 04012a7b8h
+dd 0a35c9f69h
+dd 0781323bdh
+dd 06b1761d2h
+dd 0ba861c06h
+dd 067152b38h
+dd 09e3c301ah
+dd 0dea88e62h
+dd 08643e190h
+dd 0c3c34f67h
+dd 0f54a8d3ch
+dd 06d957fdfh
+dd 0d8a2e8fch
+dd 0e7e88a60h
+dd 09c6ad84eh
+dd 04df7ccf6h
+dd 070e88286h
+dd 05ca52cf2h
+dd 05e66047eh
+dd 06e1c7ca6h
+dd 05b98bfcbh
+dd 02669cbd2h
+dd 04fae34b1h
+dd 0d990e038h
+dd 0e58d9dedh
+dd 0f309de06h
+dd 0f9a53832h
+dd 0fc292423h
+dd 07cd71592h
+dd 071f5fb75h
+dd 077779101h
+dd 07cdfbdc9h
+dd 011351c01h
+dd 0d16e91dbh
+dd 0be257e29h
+dd 09908fbf1h
+dd 01b4b6969h
+dd 031dd783bh
+dd 080160d6ch
+dd 08f7debaah
+dd 066764a21h
+dd 0bb9624dbh
+dd 0d824705eh
+dd 05579c76eh
+dd 032f08ff8h
+dd 026a06482h
+dd 0da879586h
+dd 0cb3de572h
+dd 039f5f1cfh
+dd 06eef2250h
+dd 0840c0427h
+dd 08487e64ah
+dd 0b2214314h
+dd 0add6ae97h
+dd 0fa0566cdh
+dd 0d9c21dbeh
+dd 0d74f7f22h
+dd 0b8c46562h
+dd 0db98a335h
+dd 03566d948h
+dd 0ca63c456h
+dd 013884beeh
+dd 02ac06be1h
+dd 024b9b34ah
+dd 028dc75e1h
+dd 07fece17ch
+dd 0bfca5790h
+dd 02d84e9b1h
+dd 00caac44ah
+dd 04b4125cch
+dd 0c7059804h
+dd 0bbec524bh
+dd 06eb214b7h
+dd 0e2afcb84h
+dd 0cc9553aeh
+dd 003a52122h
+dd 0cac4f908h
+dd 0bd1a7e1fh
+dd 07e6e064ah
+dd 018ed83c7h
+dd 06483d44eh
+dd 0007a775dh
+dd 0351c286ah
+dd 0201134c4h
+dd 093eb1caeh
+dd 0504ae29bh
+dd 0ff508795h
+dd 0f81b2b3eh
+dd 07d4af49dh
+dd 04680691ah
+dd 015a36118h
+dd 0d49882abh
+dd 0f0891bd0h
+dd 05f93bf8ah
+dd 09fbd90deh
+dd 0f782319eh
+dd 00aa420aeh
+dd 056395dd7h
+dd 0d845066ch
+dd 093f60a46h
+dd 048d83f1dh
+dd 0bcd062d1h
+dd 0921e060dh
+dd 0bca7449dh
+dd 0cc521181h
+dd 046bafd83h
+dd 0ffd86cc5h
+dd 0c00cd608h
+dd 04597cb76h
+dd 05e6d2b86h
+dd 0029d1586h
+dd 03380ef93h
+dd 0374c6b08h
+dd 08cce70f0h
+dd 0d74c3b76h
+dd 022861f5eh
+dd 0ff9ca6dah
+dd 038e4d97fh
+dd 09971290fh
+dd 0513c753dh
+dd 020a75548h
+dd 0a9fd2754h
+dd 09c8b57b0h
+dd 0c8c01347h
+dd 0d90e2d39h
+dd 089b7113eh
+dd 0870b0ce3h
+dd 0a50b9ca2h
+dd 0567fd2adh
+dd 0527b342ch
+dd 00fbb50fch
+dd 0907981ddh
+dd 032a48214h
+dd 0466049d9h
+dd 003cc816fh
+dd 0405d89a4h
+dd 04c028580h
+dd 034c2ce44h
+dd 03a2fdf0eh
+dd 056f02748h
+dd 017abe462h
+dd 018b7f498h
+dd 0b1394e3dh
+dd 0cd35dffch
+dd 08e4d1ccdh
+dd 05cadb702h
+dd 0181f18fbh
+dd 058c3b640h
+dd 0b20261ceh
+dd 06340fa84h
+dd 07536a5e7h
+dd 07e577038h
+dd 04a6bdef9h
+dd 001f856a0h
+dd 0fcc9a1eah
+dd 0e2a84711h
+dd 042bffa6bh
+dd 057ed2fb6h
+dd 01d93d1e1h
+dd 0f345f24dh
+dd 0cb52d182h
+dd 0a7aa1f9ch
+dd 055616846h
+dd 03e69f9cah
+dd 0a4875b9ch
+dd 0e802e71eh
+dd 0d6fa5e8bh
+dd 0e08c8ecch
+dd 0bdb233feh
+dd 0e1d8825eh
+dd 0fa6f3f0ch
+dd 05a5d8080h
+dd 0da8d7d5ah
+dd 0f55abb91h
+dd 0c2384ddch
+dd 0ff952576h
+dd 0ad01090bh
+dd 05b7d2f74h
+dd 0132a0bf4h
+dd 0773a5595h
+dd 06587f670h
+dd 0086456d9h
+dd 0f8e00bc9h
+dd 0de69d376h
+dd 037fed24fh
+dd 058f332c4h
+dd 0b1002012h
+dd 03493e504h
+dd 0f83ba228h
+dd 00d4ad25ch
+dd 023cfc0e3h
+dd 08ed5b86ah
+dd 076688b64h
+dd 0cb3e6d9eh
+dd 0d0ebe478h
+dd 071b0d50ah
+dd 0141eb5bch
+dd 0c111c5b2h
+dd 0675c23aeh
+dd 02a99bb0ch
+dd 0c91d131ch
+dd 0d2ab8c7dh
+dd 004a3dbe5h
+dd 03c041c34h
+dd 07056626ch
+dd 0d7ece6bfh
+dd 0f6e33a9eh
+dd 07d25a470h
+dd 06c24a490h
+dd 0e8a7af69h
+dd 0939adc54h
+dd 05a91799bh
+dd 0d6882da8h
+dd 01e0dfecch
+dd 028fee09ah
+dd 06ac70885h
+dd 01c731dcdh
+dd 06066b7b4h
+dd 05d748498h
+dd 0c66c4bc3h
+dd 0e1225a8fh
+dd 08bed391dh
+dd 0fc43dcaeh
+dd 03ec8a6f8h
+dd 0d9de03b9h
+dd 04c14b12fh
+dd 089b26a13h
+dd 08ae56555h
+dd 02377bdceh
+dd 06c8d8e98h
+dd 0e1248956h
+dd 04ad96307h
+dd 0a60f4a5eh
+dd 09e60ab5dh
+dd 054a4c23bh
+dd 07c99fbeah
+dd 0607c6884h
+dd 046b6700fh
+dd 0c39695c5h
+dd 0a3694f9dh
+dd 0b76a0305h
+dd 031d3d5cah
+dd 0a0b153c2h
+dd 0d8f7a8eah
+dd 0ea0b6c36h
+dd 0895970feh
+dd 050388fb6h
+dd 0e12a0419h
+dd 050e28188h
+dd 0f3345a51h
+dd 0d397d51eh
+dd 0b21ee244h
+dd 030989ca9h
+dd 0e2b79a35h
+dd 0155d231dh
+dd 00634e686h
+dd 0ca421ebeh
+dd 0abd63238h
+dd 0122f5fe9h
+dd 06a643fa2h
+dd 0020f1d36h
+dd 0fcc52909h
+dd 09649d614h
+dd 07528319ch
+dd 0daafc87eh
+dd 0fb5afbd5h
+dd 0df4105cah
+dd 01d83712ch
+dd 093a1add8h
+dd 00a18406bh
+dd 00000156ah
+dd 070e6884fh
+dd 0b120bd36h
+dd 08a932750h
+dd 0727634ech
+dd 0130a0f34h
+dd 099140935h
+dd 08dd5a8f8h
+dd 008e020cbh
+dd 007fdfcadh
+dd 0f8ff7c0eh
+dd 06abcae69h
+dd 035655a76h
+dd 0388bf9ebh
+dd 03c3a4adbh
+dd 0793df1b8h
+dd 09a4104d5h
+dd 0b1d44c71h
+dd 0f65040fch
+dd 0c1f8b283h
+dd 006d9ee62h
+dd 0a340bdedh
+dd 02cddb5c7h
+dd 0217726ach
+dd 09aa7aaf5h
+dd 035eb332eh
+dd 0655f38c4h
+dd 0785c2046h
+dd 07eac8747h
+dd 08f2483feh
+dd 0a27c47fdh
+dd 0b8b876e0h
+dd 04daad2a3h
+dd 0dbcbf2f0h
+dd 0942d23a8h
+dd 06bbcf297h
+dd 01518d89ch
+dd 08c31e6d4h
+dd 07486778bh
+dd 0ac62e131h
+dd 05d60161dh
+dd 02b80be00h
+dd 079bc7010h
+dd 086192ceah
+dd 0bda9ae58h
+dd 0e743763fh
+dd 0dffa35a8h
+dd 01bb7882dh
+dd 018325bfdh
+dd 0571363c7h
+dd 03ec50b9eh
+dd 04ba92c29h
+dd 0abe31418h
+dd 0e6a37b90h
+dd 045828117h
+dd 01f1f1261h
+dd 05b276450h
+dd 0d34475f7h
+dd 0f8fcec55h
+dd 0716198bfh
+dd 02ce29184h
+dd 00385eac1h
+dd 0ea498a1eh
+dd 0f35a7149h
+dd 0690954d1h
+dd 0c032c9c2h
+dd 02c66f1c6h
+dd 05453cf78h
+dd 01e02b16ch
+dd 0f8e8e444h
+dd 0515423bdh
+dd 0d38c73b4h
+dd 0f9ee7c6ah
+dd 03eb8a08dh
+dd 06aa65d6dh
+dd 0fa852c0bh
+dd 0a4cff20fh
+dd 0ea569d46h
+dd 08f27907eh
+dd 0527bcf31h
+dd 0a5a52c3bh
+dd 05c65d693h
+dd 0a9ec5ae5h
+dd 0328e09cah
+dd 031953d5ch
+dd 069b28d1ah
+dd 03efa738fh
+dd 0be47ef05h
+dd 022edde80h
+dd 082592e0bh
+dd 0f81d7e94h
+dd 09759196fh
+dd 02fde579ch
+dd 07be28b7ch
+dd 0fcbb5c90h
+dd 02c2e2423h
+dd 062412037h
+dd 08437228ch
+dd 04dba1dfbh
+dd 0ceabbe2eh
+dd 05021acbdh
+dd 07c6534c6h
+dd 04699bd92h
+dd 005aabd72h
+dd 04192a437h
+dd 0514448c9h
+dd 0a4ddba99h
+dd 01438269bh
+dd 0a879c6a7h
+dd 013f48e5ah
+dd 0888bc644h
+dd 0a9c78568h
+dd 0f73dca3fh
+dd 01d0bfb3eh
+dd 0e38458edh
+dd 0d08e723ch
+dd 0c3f73702h
+dd 0ee7cc22bh
+dd 0a77d7d2ch
+dd 03263d521h
+dd 07261356dh
+dd 0ab639658h
+dd 06b331994h
+dd 0f9275e77h
+dd 0df3cabb2h
+dd 05af59dc9h
+dd 01627208bh
+dd 0ae844683h
+dd 0b1bb1e69h
+dd 089308198h
+dd 026be831ah
+dd 0ddb2a489h
+dd 03b17b08ah
+dd 02aa78abdh
+dd 0fec332e0h
+dd 01bc56098h
+dd 0c3e2c885h
+dd 097deccb3h
+dd 0cf093e7fh
+dd 0427a3105h
+dd 0b3f86135h
+dd 0e97c77d3h
+dd 0cef21bfeh
+dd 0a7b285bfh
+dd 0f0521a7bh
+dd 0f9932b53h
+dd 0785de527h
+dd 0ed48277eh
+dd 0a7bf0ae7h
+dd 02ec0089bh
+dd 0ddc462ech
+dd 02bb43e37h
+dd 08a39eb9ah
+dd 018538ad9h
+dd 00a20eae0h
+dd 09ef5af34h
+dd 04709255ch
+dd 0c2e03e7fh
+dd 0fb287a37h
+dd 0358162f8h
+dd 0c0bc868bh
+dd 01ce5bd9ch
+dd 039d53393h
+dd 00ff9c9e2h
+dd 026cbaffeh
+dd 03ee3c11bh
+dd 05134fa3ch
+dd 00c40eaddh
+dd 00e34cde0h
+dd 04dd3311fh
+dd 015786573h
+dd 0faadf31dh
+dd 03ee0a55eh
+dd 0e9f1400eh
+dd 035468443h
+dd 08c5876f4h
+dd 0f725effdh
+dd 0e4ec8fbeh
+dd 097bbe7bch
+dd 0769cf847h
+dd 092301166h
+dd 09cd8991dh
+dd 04a7fb590h
+dd 0faaaab06h
+dd 0bda413d6h
+dd 05e368c83h
+dd 018203da7h
+dd 0a0f68b0ch
+dd 0136c3e0ch
+dd 02a815df8h
+dd 0b6ff37abh
+dd 097635602h
+dd 000c4b9e2h
+dd 07deac8eah
+dd 045ec542eh
+dd 0d653f093h
+dd 03279447dh
+dd 04c4e2a04h
+dd 047e9d25bh
+dd 0f8b66d4ch
+dd 01b7bf0b7h
+dd 06a3ef5c3h
+dd 0c086cbe6h
+dd 01a6658fdh
+dd 0bfb6c075h
+dd 0dd91bfadh
+dd 02551a7a7h
+dd 017e83004h
+dd 0250d7205h
+dd 0f586c826h
+dd 0d947736ah
+dd 01cb0623ah
+dd 0cde99f96h
+dd 02886d79ch
+dd 054fbcba6h
+dd 046fa0dd3h
+dd 0e76ca7b7h
+dd 0aaeba884h
+dd 009685a3ah
+dd 0fd26b3a0h
+dd 00f68767ah
+dd 09f74dbe2h
+dd 0a54e81ebh
+dd 01ba76708h
+dd 0c7d8596ah
+dd 0d2174b5ch
+dd 017b428a4h
+dd 0435a72b7h
+dd 08655098ch
+dd 01ed89d71h
+dd 02994e87fh
+dd 0cb1eb726h
+dd 0ceb874b8h
+dd 031d5e8d3h
+dd 0e90b4378h
+dd 072a8bfeeh
+dd 0eefc5295h
+dd 060da75afh
+dd 0d9ed1de4h
+dd 048b178d8h
+dd 0930ea010h
+dd 0c1b98652h
+dd 030c2c43dh
+dd 058cb5b45h
+dd 05c6794cch
+dd 0b0078e71h
+dd 0a2265c0dh
+dd 0810ad90fh
+dd 0c9622275h
+dd 057ee672ch
+dd 06f5e5806h
+dd 05bb4b734h
+dd 06748ea3ch
+dd 0bb835de7h
+dd 03cf0da27h
+dd 0ad30d104h
+dd 05eb60a42h
+dd 028e722d3h
+dd 0579a064eh
+dd 0addfc62ah
+dd 01083916ch
+dd 09ce6d6e7h
+dd 06fdfd6efh
+dd 06a032d9dh
+dd 0c16d115eh
+dd 01588bc75h
+dd 05e29d78fh
+dd 0c003835fh
+dd 0d6a5f73bh
+dd 072b6f3f4h
+dd 0f2e90c27h
+dd 004aa69d2h
+dd 0351aacd8h
+dd 0b36a486fh
+dd 092e82e05h
+dd 026497d7eh
+dd 025c4e45eh
+dd 061f072ffh
+dd 0d1fa5dfbh
+dd 03cbb4f60h
+dd 080327e4bh
+dd 0a720ebdch
+dd 0a7b5c165h
+dd 0340f8a3bh
+dd 07389661bh
+dd 0756664fch
+dd 0d7742439h
+dd 089f508aeh
+dd 07edcf40ah
+dd 090ed37ddh
+dd 05ad46ecfh
+dd 0a659f537h
+dd 0f5bfd1a3h
+dd 0e8577d04h
+dd 02f1cfb53h
+dd 08ed70274h
+dd 0268b31b5h
+dd 0d30fa371h
+dd 0ffed0116h
+dd 019c60339h
+dd 037b895b7h
+dd 06957696ch
+dd 07ef4407ch
+dd 0a1205105h
+dd 07db5e6a0h
+dd 02cde5f5fh
+dd 0cd4f6d0ch
+dd 04cd7b9f1h
+dd 0c3b8345fh
+dd 0a9be7bcfh
+dd 081011d08h
+dd 0dd016ba3h
+dd 06c9368ddh
+dd 0cfd5ab72h
+dd 0e5f666e9h
+dd 0e3df2f05h
+dd 08c02ff2dh
+dd 06b86c799h
+dd 07cfbdb1fh
+dd 033990754h
+dd 0c35e79e4h
+dd 0a77ee6b9h
+dd 07d9765cch
+dd 094fe2f03h
+dd 0232d0604h
+dd 03cea3ea3h
+dd 0932c37b5h
+dd 0a9d4e7ech
+dd 0792a0be0h
+dd 0618394d6h
+dd 0d5b4ded1h
+dd 00abf7646h
+dd 01d398dbeh
+dd 07e2a795eh
+dd 05e0164dfh
+dd 0c9c5c786h
+dd 0b2abbdadh
+dd 0165392b2h
+dd 09276bd29h
+dd 037425131h
+dd 0cb11981eh
+dd 03c47dd1dh
+dd 03c1c10aeh
+dd 0a43e4a8bh
+dd 084631610h
+dd 03a039aadh
+dd 04e38b7f0h
+dd 03b517394h
+dd 0e717f4c0h
+dd 0ca8c7170h
+dd 0c5b8de9eh
+dd 05faa4a56h
+dd 0ca2d998ch
+dd 049c17fc9h
+dd 0eb2b58a7h
+dd 023983b58h
+dd 0429da86fh
+dd 038f90700h
+dd 06596346ah
+dd 04dc51b48h
+dd 0b9934463h
+dd 0261e69b7h
+dd 02fd56670h
+dd 0b2bd4018h
+dd 0f607501bh
+dd 0c76ed384h
+dd 0cf9c06e1h
+dd 021a9c58bh
+dd 0fbf6d0d7h
+dd 05f06cec0h
+dd 01212a9b1h
+dd 0d989431dh
+dd 0d2879312h
+dd 0bdcb0b7bh
+dd 011082c01h
+dd 078fdde72h
+dd 0de3bda9fh
+dd 01a8d2138h
+dd 0b2e106c6h
+dd 01d167c17h
+dd 0d872a27ch
+dd 0a5d9a337h
+dd 02ce267beh
+dd 00143e409h
+dd 0d79ab6c8h
+dd 00ed845e9h
+dd 07f3acf40h
+dd 0557ff179h
+dd 04b5575d6h
+dd 05ade4081h
+dd 0249b06f4h
+dd 083dc646ch
+dd 06d49f5b9h
+dd 0f7c7ca26h
+dd 0046a1c20h
+dd 0585da72ch
+dd 00d2b0c22h
+dd 0f8cebbc0h
+dd 0367b5f7ch
+dd 007ab80deh
+dd 0a6d2d0dbh
+dd 0e34d2298h
+dd 058bbb230h
+dd 06bf87203h
+dd 0a76ad40ah
+dd 0af469e0ah
+dd 0b0a50976h
+dd 09a52d2fch
+dd 035a3aee6h
+dd 0a33304bch
+dd 014ee3dc9h
+dd 0842cfc4fh
+dd 0b199cb31h
+dd 0000f0c76h
+dd 005c7557dh
+dd 0a051ac51h
+dd 02a135781h
+dd 07ee1aef7h
+dd 0391d632ch
+dd 0138e1b8eh
+dd 0dbf2735eh
+dd 003b0f709h
+dd 0fefccf5ch
+dd 0c41f8806h
+dd 032351019h
+dd 064a3c58ch
+dd 077c52d37h
+dd 0905bf17bh
+dd 0a1ac41efh
+dd 09bdc90f3h
+dd 0d400417ch
+dd 07d5cadd6h
+dd 03ec6a7d8h
+dd 04497400eh
+dd 0da3b4813h
+dd 05472b894h
+dd 04b65191bh
+dd 0ad072d74h
+dd 07012d549h
+dd 09d655197h
+dd 0c5a61120h
+dd 0956b5728h
+dd 0bc2dc99fh
+dd 07b4d084ch
+dd 06b22d9d5h
+dd 01eee1191h
+dd 085f55b96h
+dd 07847b4bah
+dd 04be69d98h
+dd 080c51c6ch
+dd 0418ff6d3h
+dd 0d2098512h
+dd 0c0a1aec8h
+dd 00133f9adh
+dd 0883864a9h
+dd 087612a3dh
+dd 0eee42c02h
+dd 0263ecd8fh
+dd 05dae008eh
+dd 0c3f84bf4h
+dd 0d66e45d1h
+dd 042168fc2h
+dd 09a2fb09ah
+dd 05d1ec9e1h
+dd 05c6e32d0h
+dd 0e2fb796eh
+dd 0f26070d9h
+dd 0215a1dbdh
+dd 0763dae66h
+dd 091b84cdah
+dd 0e3a485d1h
+dd 03ea18fd0h
+dd 0b12d19ech
+dd 0c0521014h
+dd 02f8429deh
+dd 0476bd68fh
+dd 0b8556eddh
+dd 033fd9a94h
+dd 02a6c6454h
+dd 0950d79b3h
+dd 00811d272h
+dd 0784936a8h
+dd 05f299689h
+dd 04f59ec77h
+dd 0b2d11a10h
+dd 0ff8e7859h
+dd 0998b909bh
+dd 00ce76c9ch
+dd 0e21e4ec3h
+dd 054e8df4fh
+dd 0849a361dh
+dd 0b68a7a51h
+dd 01fc4ad43h
+dd 0e2937cffh
+dd 03ce046f0h
+dd 0ecc8bba2h
+dd 00225b13ah
+dd 036c85c07h
+dd 04e1a47f0h
+dd 0399dbad6h
+dd 0fa9b4c7ch
+dd 0caa3a1d4h
+dd 0a3237597h
+dd 0b91d1142h
+dd 0101e7fe0h
+dd 030526fffh
+dd 07aa1dab4h
+dd 0a97b50c5h
+dd 0aaa9c590h
+dd 01bc1654ah
+dd 0a59e018eh
+dd 00198b62dh
+dd 07a70f1d1h
+dd 05d9b8111h
+dd 08114f02ah
+dd 0c45d2f61h
+dd 09ea36566h
+dd 0b614809fh
+dd 0d6194939h
+dd 02267559ch
+dd 072a82acdh
+dd 0cffc2ff0h
+dd 0b8318d80h
+dd 03f5994d1h
+dd 03a06b313h
+dd 09391d5cfh
+dd 026fe2a0dh
+dd 091a7dc59h
+dd 091ea3135h
+dd 0152ee665h
+dd 0094a128eh
+dd 0432cc7c1h
+dd 084118cebh
+dd 0dc0347a7h
+dd 0e2fe94b0h
+dd 08c2fb456h
+dd 044723420h
+dd 0dbe93d78h
+dd 0703b13ach
+dd 0a4154aeah
+dd 0ec27b0f1h
+dd 02a8b5780h
+dd 0fc0f84fdh
+dd 0bf0529dbh
+dd 0035a417dh
+dd 0011cb7dbh
+dd 04e06dce9h
+dd 095b1bfb8h
+dd 02841e180h
+dd 00029f6ddh
+dd 016e00f32h
+dd 052855421h
+dd 07049592ch
+dd 0f763c4b2h
+dd 0e58dcc59h
+dd 098992688h
+dd 01a55eee1h
+dd 0f3205e54h
+dd 0da5a6d33h
+dd 0a8b783f9h
+dd 0f9bf18a7h
+dd 07c6a2af2h
+dd 08078353eh
+dd 0d343d765h
+dd 0519bc9d8h
+dd 0ab34d731h
+dd 0acb01165h
+dd 019ef18a5h
+dd 0fb49868dh
+dd 014e7dc22h
+dd 028e9ca6bh
+dd 030aafd91h
+dd 0c5734d1fh
+dd 06d4dc7cch
+dd 09e5495c7h
+dd 0c689dbd8h
+dd 01e079115h
+dd 047df5d42h
+dd 0cd36b8e6h
+dd 0c25edaa0h
+dd 02756aeb9h
+dd 0eb3ef072h
+dd 04e3e6acah
+dd 0126cde17h
+dd 04a0573f9h
+dd 0a8dce6e6h
+dd 0eee9103bh
+dd 09b9b0b84h
+dd 0b4b2d457h
+dd 0ef3215a5h
+dd 0c11ec1eeh
+dd 016a32d1bh
+dd 03d874990h
+dd 09af1e344h
+dd 0102b5baeh
+dd 0e45debb3h
+dd 01fd16307h
+dd 0fa046159h
+dd 079781333h
+dd 06784473ch
+dd 04d473bcdh
+dd 09ec662e4h
+dd 04a3b31beh
+dd 00b1d27d5h
+dd 010372c41h
+dd 098e0ed99h
+dd 0cd022453h
+dd 0615ab292h
+dd 0fca9725ch
+dd 0c0e45fb2h
+dd 0bcb00d51h
+dd 06ddc84a0h
+dd 024a387cch
+dd 0954af727h
+dd 006087b0dh
+dd 032dcfa76h
+dd 041018fd8h
+dd 0361a6bfbh
+dd 0f74939bch
+dd 0642944d3h
+dd 0850655dah
+dd 08c28d07dh
+dd 062a91d84h
+dd 0953852d8h
+dd 046599bc4h
+dd 08006041eh
+dd 0de4575d0h
+dd 08d81bac2h
+dd 0dc3d79e0h
+dd 0a9f60b16h
+dd 066640828h
+dd 0012058fbh
+dd 026312803h
+dd 0f3355e0bh
+dd 0f398fa63h
+dd 091daf097h
+dd 080949779h
+dd 0e6028f2bh
+dd 0ff0f98f4h
+dd 095609043h
+dd 0b231c446h
+dd 0e73e19cch
+dd 0ccbfa2a5h
+dd 0d550d746h
+dd 03bf47d21h
+dd 047fad385h
+dd 0ad7a4a40h
+dd 02aec29d6h
+dd 02320fe5bh
+dd 05e491186h
+dd 0d54b70edh
+dd 0e254e1e6h
+dd 0af72a611h
+dd 0e2ffb568h
+dd 04f8513d8h
+dd 0139def6eh
+dd 029bf9d07h
+dd 08fa751a5h
+dd 072c96807h
+dd 0238be900h
+dd 0bc4ad16bh
+dd 002404554h
+dd 029d7b27dh
+dd 02ca42a79h
+dd 01c02134ah
+dd 018e45188h
+dd 0c50ec6cch
+dd 090c3ba9ah
+dd 05a1864b0h
+dd 001fa29d0h
+dd 08ec956f9h
+dd 0d8268ed9h
+dd 0d3ce88d4h
+dd 00b9885adh
+dd 0adb6bcfdh
+dd 0130df984h
+dd 0e8ca084ah
+dd 060744954h
+dd 00a7a6484h
+dd 0240830d0h
+dd 0e4a79286h
+dd 09211645bh
+dd 092e41364h
+dd 0d85f5b83h
+dd 0facdedc6h
+dd 0adc628d5h
+dd 0f823f3f6h
+dd 04901765ah
+dd 087a6d14ah
+dd 023fce15eh
+dd 0c9800d07h
+dd 0f95f88bbh
+dd 04ee02a85h
+dd 05a997cc6h
+dd 047d48bb4h
+dd 030745e50h
+dd 0c7ec4534h
+dd 0866d2adeh
+dd 0abf53485h
+dd 0f0af156eh
+dd 0a6dc0964h
+dd 032880643h
+dd 0d30f8973h
+dd 063805289h
+dd 055fc2b14h
+dd 0f0168268h
+dd 0e65185deh
+dd 0442da935h
+dd 0aaff2f65h
+dd 05186915dh
+dd 02f797a67h
+dd 0ba22ab09h
+dd 0aab13a26h
+dd 0dd6733a0h
+dd 0c7750178h
+dd 00f8ca378h
+dd 0a22d6bd6h
+dd 0402ac806h
+dd 05f336fc0h
+dd 0f128fa8bh
+dd 0b71175dah
+dd 08708b6a6h
+dd 08179a6dah
+dd 0c6c75e81h
+dd 0c1f78aach
+dd 06b673fb8h
+dd 02e27dd11h
+dd 0d2b899c4h
+dd 0f76ca1bfh
+dd 09e74592ah
+dd 0195d21d4h
+dd 04b5426d9h
+dd 068b5a28bh
+dd 0e1d0591ch
+dd 09c881032h
+dd 0988df45bh
+dd 06c66b9cfh
+dd 0d00edc07h
+dd 09d3fe573h
+dd 063b74960h
+dd 0a929b452h
+dd 0d2e0042eh
+dd 0e1fa2388h
+dd 01c3d7468h
+dd 0ed4c957bh
+dd 07e65dca0h
+dd 09e5d48bah
+dd 05cd37e40h
+dd 0388fb29fh
+dd 04fcf8fe5h
+dd 008491264h
+dd 013662aa6h
+dd 069f801ebh
+dd 05ee0e93eh
+dd 0334f79dbh
+dd 0037fe1f0h
+dd 0b44b959ah
+dd 0110a2a50h
+dd 0e1043abdh
+dd 06f67b63fh
+dd 0fd103708h
+dd 079e28c63h
+dd 0b3d43fddh
+dd 05eb87214h
+dd 02da42903h
+dd 01b46d455h
+dd 09df8f718h
+dd 0d46cb271h
+dd 082c87d2ah
+dd 082d20dd9h
+dd 068302077h
+dd 043f0d56fh
+dd 0f2a51792h
+dd 023aac0d3h
+dd 024020ee0h
+dd 082f2ef3fh
+dd 01c002c4ah
+dd 073a8f023h
+dd 02253110ah
+dd 0b2fbed29h
+dd 0fecb3c1ah
+dd 014eb6fdeh
+dd 0c548248ah
+dd 05e52b167h
+dd 06075977ch
+dd 0b23becf5h
+dd 05b67bcc8h
+dd 076dd2276h
+dd 0ee1858d7h
+dd 067cd5f68h
+dd 0be3b6c48h
+dd 0ec9c5a98h
+dd 0f6b2edbdh
+dd 04d9252f4h
+dd 015138b7dh
+dd 013d4880eh
+dd 00f45d385h
+dd 03b2acb87h
+dd 006fbc9ceh
+dd 09b4e68fdh
+dd 00293efcbh
+dd 0172297d2h
+dd 05b616a22h
+dd 075e5efc4h
+dd 0e787b9d4h
+dd 06c516b4ch
+dd 0843df74bh
+dd 0d763bbdbh
+dd 02cb46b11h
+dd 049a5a52fh
+dd 01124b46dh
+dd 0be8ea4ebh
+dd 0f5c5e20bh
+dd 095482181h
+dd 00c09e48fh
+dd 020cf25ebh
+dd 0f0886a68h
+dd 0ceb2c229h
+dd 0df4cf05bh
+dd 0a49c53d5h
+dd 00fe9249dh
+dd 07125ce74h
+dd 0afed9a6dh
+dd 02c319528h
+dd 02c7847bbh
+dd 0fcbbb768h
+dd 0aa9786beh
+dd 0819e3e98h
+dd 0e226f086h
+dd 095bd0715h
+dd 02171d117h
+dd 061fd38b7h
+dd 0a250c231h
+dd 0f127264fh
+dd 0c0ab99c8h
+dd 0fb9272b4h
+dd 09e366672h
+dd 0798d1b5eh
+dd 0a3cba6d3h
+dd 0c8b6119eh
+dd 0e55be52ah
+dd 02928dceah
+dd 059b62a00h
+dd 0c89f0719h
+dd 04a34186eh
+dd 0dac775fbh
+dd 054b2755eh
+dd 0e2177e7eh
+dd 046b9916fh
+dd 0614cc2edh
+dd 0bd49d255h
+dd 0046398e0h
+dd 0c89b81f1h
+dd 0d2684b2eh
+dd 08eaf3cd3h
+dd 0b7daa0a6h
+dd 0fe87c040h
+dd 00e3004f3h
+dd 0ede79905h
+dd 086a80f71h
+dd 063e99c6ch
+dd 09a9e264eh
+dd 0049bc99dh
+dd 06cbab5bah
+dd 0407fe593h
+dd 0f9494c15h
+dd 084d2d2eah
+dd 060d873f7h
+dd 0135e72e7h
+dd 01290a710h
+dd 0b658bfach
+dd 0c5aa25aeh
+dd 004fc7fa7h
+dd 0076f8b8eh
+dd 03dc03f3bh
+dd 0b1f64926h
+dd 0421ade48h
+dd 03f144735h
+dd 058e4bfdeh
+dd 02037c42bh
+dd 097694ba8h
+dd 0d3743692h
+dd 01a6b0229h
+dd 04e464a93h
+dd 0d807195dh
+dd 013c84f54h
+dd 07689e466h
+dd 082f3e6dfh
+dd 0964d75a8h
+dd 0083fe599h
+dd 06e111d3ch
+dd 05d001425h
+dd 059a33ee8h
+dd 04679c694h
+dd 07a48b703h
+dd 0cb5d538ch
+dd 08133f3b5h
+dd 0ad479886h
+dd 0a6d337e3h
+dd 0b992d5c0h
+dd 0dbbe2841h
+dd 008465f99h
+dd 05f1d264bh
+dd 0a2946bf1h
+dd 0bcfe5e00h
+dd 0ce922469h
+dd 03d22fcd0h
+dd 09e766d2fh
+dd 0b0377763h
+dd 07f29d8dch
+dd 0bd33f88ah
+dd 0d2bfcea7h
+dd 0e2e4683dh
+dd 07e39017dh
+dd 0cd11f5f4h
+dd 0950cb7a9h
+dd 0e42fd9deh
+dd 054c2b192h
+dd 05c969b92h
+dd 066d344dfh
+dd 0e46e4f99h
+dd 05dc423e0h
+dd 0cb5a05bdh
+dd 08319afd3h
+dd 0bacd5771h
+dd 0e37d16c0h
+dd 0dcc64bfeh
+dd 0e8e7a809h
+dd 04268dd5eh
+dd 08f7d4e55h
+dd 08ddc11b3h
+dd 076ec2ceeh
+dd 01eab94d9h
+dd 0b292737dh
+dd 032113ee2h
+dd 0f74cc611h
+dd 07bd7db38h
+dd 0ee8dc5cdh
+dd 07d5a81a7h
+dd 0dd68441ah
+dd 085f853b7h
+dd 01dab4b0ah
+dd 02f2db96fh
+dd 0c116ccc8h
+dd 0f127fc5eh
+dd 0abfa34b9h
+dd 09457c677h
+dd 022e772e8h
+dd 0950e2011h
+dd 0a03d1a0dh
+dd 0c5f0917ch
+dd 089401f9fh
+dd 01270000dh
+dd 00fdd22bfh
+dd 08645d7eeh
+dd 04a96ec0dh
+dd 0611b687eh
+dd 06d0a8149h
+dd 01990931bh
+dd 02050fe18h
+dd 048d2fe3ch
+dd 0a341828ah
+dd 0956eee95h
+dd 03d668606h
+dd 0666e61d0h
+dd 0d4fd3aceh
+dd 047b6b71bh
+dd 0173adc8ah
+dd 05e451ca9h
+dd 0178ba652h
+dd 0916402bah
+dd 0fe039987h
+dd 0aa816472h
+dd 0d6eda8a2h
+dd 0165db4feh
+dd 017e59f85h
+dd 09ac1c2d9h
+dd 08511ce34h
+dd 04700b405h
+dd 0d38e631ah
+dd 0e70e1e13h
+dd 08a8067e9h
+dd 074c18184h
+dd 0c57a8a79h
+dd 00e6497c2h
+dd 04cb201c6h
+dd 0b1c5d159h
+dd 021c79a16h
+dd 0327f4078h
+dd 044e1daafh
+dd 01e64fdeeh
+dd 03b35d98dh
+dd 0c16f4a22h
+dd 03ec30fdah
+dd 01d424c27h
+dd 0f2a38ac6h
+dd 07aa30d0dh
+dd 0032359e2h
+dd 0fdc0f0aah
+dd 090ce8a83h
+dd 041cfd0e6h
+dd 0421031b5h
+dd 0b0ea2756h
+dd 0fd7746feh
+dd 08dc17883h
+dd 0df838b42h
+dd 0bc6b12dch
+dd 0f789ca0fh
+dd 07673c479h
+dd 062c5c99ch
+dd 0d78eda90h
+dd 0c5aaef19h
+dd 08640adbah
+dd 0b9da0c14h
+dd 0a5e6a89ch
+dd 0c5fe5048h
+dd 061c44e85h
+dd 08668e34dh
+dd 05bbb6132h
+dd 0bd982511h
+dd 0e0f6c676h
+dd 0b58eeea6h
+dd 016e32c8dh
+dd 006e9004fh
+dd 0d277187ah
+dd 06beeec29h
+dd 0c8756a05h
+dd 0a39421ffh
+dd 02c75b522h
+dd 0b8ce855ah
+dd 084a2c3b7h
+dd 0be586249h
+dd 0bb90fe16h
+dd 04ede0d1ah
+dd 0401aaeeah
+dd 0b70fc62dh
+dd 03a75562bh
+dd 0d8dab127h
+dd 068b09a2dh
+dd 04c813332h
+dd 03737e966h
+dd 0f9c285aah
+dd 05ea135cah
+dd 094afb816h
+dd 004f42668h
+dd 02a73e591h
+dd 06dafee12h
+dd 0d4d3b6d2h
+dd 068275b07h
+dd 0785a4751h
+dd 047482d7fh
+dd 040dfdb1dh
+dd 0410471ddh
+dd 044437e75h
+dd 0b2e6e940h
+dd 0d7094dfah
+dd 0207b4d72h
+dd 095ef6b85h
+dd 0240c183fh
+dd 09fd5ebc6h
+dd 0b30f8629h
+dd 0c22d8f14h
+dd 0e569c278h
+dd 0fe5fe327h
+dd 0879b07dbh
+dd 07571610ch
+dd 01e96ef7eh
+dd 076ff585dh
+dd 003aac3b1h
+dd 0cb341796h
+dd 093386092h
+dd 0dc999988h
+dd 0b2097ad1h
+dd 02e9ac577h
+dd 0ec9396fbh
+dd 0f8a11003h
+dd 0acd05each
+dd 0b0f8faeah
+dd 019d29764h
+dd 0f4b79d67h
+dd 022d08b84h
+dd 012c85c82h
+dd 051ee55f5h
+dd 0c272ef94h
+dd 0c0c5ee90h
+dd 09b3cb015h
+dd 033a1e46bh
+dd 08d6ee719h
+dd 04c18c1d7h
+dd 059931af2h
+dd 085513832h
+dd 041fa7072h
+dd 0449c9d1dh
+dd 002561204h
+dd 0bb293e08h
+dd 025425c49h
+dd 08e03d675h
+dd 0562a79fah
+dd 081f5682eh
+dd 090e77656h
+dd 00e300974h
+dd 0f73334dfh
+dd 0694a3ef3h
+dd 0f85a34a8h
+dd 08548fb03h
+dd 03cfea906h
+dd 008342120h
+dd 03a602c4dh
+dd 0471e9bc2h
+dd 09093465eh
+dd 06f43a8f3h
+dd 003ffd76fh
+dd 0a11c35c1h
+dd 06ddc10d2h
+dd 00c9f06d4h
+dd 01559c74ch
+dd 0b3585166h
+dd 0d5daf652h
+dd 01eb1db64h
+dd 0a574ef63h
+dd 0b3097db4h
+dd 0671a3a31h
+dd 0f417f0b2h
+dd 0f22e7046h
+dd 0cf851233h
+dd 08b045bd2h
+dd 0920bd8feh
+dd 003d53c42h
+dd 083c03a7fh
+dd 0b1387c99h
+dd 05e0ed85eh
+dd 0cd817e3bh
+dd 08440d370h
+dd 063d92525h
+dd 03b5c054bh
+dd 05911bafbh
+dd 03ab6e998h
+dd 0f3972f1fh
+dd 0a1bb961bh
+dd 0acee00d4h
+dd 0737981f8h
+dd 005a07dc2h
+dd 08490fc7fh
+dd 0c2b41529h
+dd 0bbcf3c72h
+dd 07e6361f8h
+dd 056776886h
+dd 0d149b92ah
+dd 0fd9cf577h
+dd 0fe5293a9h
+dd 0d8a979adh
+dd 0c33818c2h
+dd 0ca141c22h
+dd 0df2c1ac9h
+dd 03d4246e5h
+dd 01ac5355fh
+dd 0a93e1475h
+dd 028ecd628h
+dd 09ed078ech
+dd 06dcc600bh
+dd 01e16c064h
+dd 07e83910fh
+dd 0e1a8fe6fh
+dd 02785ffa5h
+dd 0602b8dfeh
+dd 0cbfffcd8h
+dd 04dc3bea3h
+dd 0e08a5d07h
+dd 009ce73d8h
+dd 09f09e7e5h
+dd 02dcdf80ch
+dd 0973ff39ch
+dd 00dae272eh
+dd 0d50706e4h
+dd 040441310h
+dd 073f7da3eh
+dd 0592734d8h
+dd 0f6484d4ch
+dd 0936009eeh
+dd 0b3063a7ah
+dd 0c27d7d75h
+dd 054739f49h
+dd 00713de4fh
+dd 0e004aa6ah
+dd 0fb23ccc3h
+dd 0fbe48b01h
+dd 08fbfd637h
+dd 00c93b739h
+dd 072a486e4h
+dd 0ad748f41h
+dd 03a8015d9h
+dd 03594e4e4h
+dd 0a8635047h
+dd 0097e5c7bh
+dd 0f7263019h
+dd 0ff775da7h
+dd 0bbba1dd8h
+dd 083c7151bh
+dd 01f5dece5h
+dd 0b0e70008h
+dd 0fe0047e3h
+dd 0ee9091cfh
+dd 011333224h
+dd 0902b4000h
+dd 0a9726e40h
+dd 0bf5d0fa0h
+dd 0ed36fa10h
+dd 0984cbda0h
+dd 082b40828h
+dd 0ad2180e9h
+dd 0d03b8827h
+dd 0e7b473fah
+dd 0821fd881h
+dd 09c976f63h
+dd 04fcdca93h
+dd 0a457b9edh
+dd 0ce34624ch
+dd 0c8204d5ch
+dd 0f85b9389h
+dd 040e9183dh
+dd 0d57e9922h
+dd 0e1e8697bh
+dd 06627887ah
+dd 00806dad9h
+dd 018ed93c8h
+dd 0dcfee643h
+dd 047b02384h
+dd 094e7f8b7h
+dd 00fde9d63h
+dd 088066f60h
+dd 065e88d6ch
+dd 03b805b82h
+dd 04e76531ah
+dd 0622bfb4ah
+dd 091a5f4dbh
+dd 04e4d2969h
+dd 0b9eb3757h
+dd 0241551dah
+dd 0827881d0h
+dd 017c2b15ch
+dd 0060fc533h
+dd 00b002684h
+dd 0e0e630b7h
+dd 092096685h
+dd 03701272ch
+dd 01c4a926dh
+dd 0c5a22990h
+dd 09667c76bh
+dd 091f20e6ch
+dd 08bc95c37h
+dd 05bed93f6h
+dd 09d8aad90h
+dd 0e8e2c7bch
+dd 0adee04deh
+dd 0f2f3f8a9h
+dd 039efb6b9h
+dd 0b22b45f4h
+dd 099d82245h
+dd 0d9f7b9c0h
+dd 012e833c3h
+dd 016fcd095h
+dd 076c09379h
+dd 06ac9d2e2h
+dd 04af0b69dh
+dd 033d13e72h
+dd 04519eaf8h
+dd 016412daah
+dd 00a439337h
+dd 0b2b3c9beh
+dd 02a12e91ah
+dd 09dd6d4b6h
+dd 02022f129h
+dd 09e417ab4h
+dd 0e01185f6h
+dd 02dd7914ch
+dd 01fb7d5fah
+dd 047646d5fh
+dd 066225384h
+dd 07695f703h
+dd 0f87ca237h
+dd 0476048bdh
+dd 003a653e8h
+dd 02af6e7d6h
+dd 04807e278h
+dd 08e9c0d40h
+dd 07b6ab9abh
+dd 079f8a43bh
+dd 0976db53dh
+dd 05ac29fc2h
+dd 07416ae17h
+dd 08745b4c3h
+dd 0d014b978h
+dd 04891b3d6h
+dd 0582d08bbh
+dd 069a76cd1h
+dd 0ea3046d6h
+dd 07226866eh
+dd 02a5077a2h
+dd 0f8bb4a31h
+dd 0a243e69bh
+dd 03744d2afh
+dd 0efd372edh
+dd 099b5eebch
+dd 0b9384503h
+dd 00bbb57e0h
+dd 079bab5eah
+dd 0f205f6f7h
+dd 07bed9b55h
+dd 0b86ceeb1h
+dd 075993fd5h
+dd 06c41dcc2h
+dd 0512380a2h
+dd 0fa0ea5b8h
+dd 077626f99h
+dd 03aa82397h
+dd 0fcbcde1eh
+dd 05b0eb348h
+dd 008e88d1ah
+dd 08e2405a9h
+dd 0a325e544h
+dd 01161f669h
+dd 06d87e854h
+dd 0db6db24ch
+dd 0809dcc41h
+dd 021bffa21h
+dd 0fd5fd861h
+dd 053e6af6bh
+dd 0eef65732h
+dd 038997ff2h
+dd 04f94c0f7h
+dd 0cdee3ecbh
+dd 0b1f5e16bh
+dd 012b51f67h
+dd 04fa427e4h
+dd 0b32713d1h
+dd 07cd1411eh
+dd 0e7534b9bh
+dd 09c05d8b1h
+dd 020be5d8dh
+dd 0d34bde95h
+dd 05aba80d5h
+dd 0cfbe2633h
+dd 08b2e9a04h
+dd 0110962b9h
+dd 047fa2933h
+dd 0b6ecb4e1h
+dd 05f68a353h
+dd 0755d3a28h
+dd 0e2124618h
+dd 0bf0d5cd7h
+dd 041229eafh
+dd 09d6eb536h
+dd 0b4550624h
+dd 0cc01f55bh
+dd 09af885a2h
+dd 0af41f309h
+dd 0ff0b6e94h
+dd 0fc3f116eh
+dd 0e78bfec1h
+dd 099a6a5d0h
+dd 0324ef5e9h
+dd 0f882c96eh
+dd 08d06cb48h
+dd 066020bb6h
+dd 079af9124h
+dd 04ea600feh
+dd 03baed466h
+dd 0b5c8c9c4h
+dd 0fcc53b0eh
+dd 03adb76ceh
+dd 0ea40167eh
+dd 0008a474eh
+dd 08225b155h
+dd 0785d1e26h
+dd 050099a46h
+dd 02cd80d05h
+dd 0f4fc0f9ah
+dd 009a7ed7eh
+dd 076850c65h
+dd 0d129baa2h
+dd 0e2aa85f0h
+dd 0e18451d4h
+dd 0623306b2h
+dd 01c4e70adh
+dd 043aa41f9h
+dd 09934baeah
+dd 0917fbb70h
+dd 0d5d169e6h
+dd 0b0fb5b74h
+dd 0445114aeh
+dd 014b65e68h
+dd 0c4bdeff3h
+dd 0c00263d0h
+dd 0178fdf54h
+dd 01484a01bh
+dd 0640c963dh
+dd 04349e545h
+dd 0152a5681h
+dd 036b225a4h
+dd 0eea71457h
+dd 011deafeeh
+dd 07dfd8292h
+dd 099d152e9h
+dd 0e2fa55bah
+dd 098a6142fh
+dd 007c1f8ach
+dd 022559020h
+dd 0816ee002h
+dd 060055d83h
+dd 006c3f33ch
+dd 0431b6f9dh
+dd 048a72472h
+dd 0cab429cfh
+dd 016467687h
+dd 0aede0564h
+dd 09d1c6076h
+dd 035e9ed95h
+dd 0d0adb35dh
+dd 0808790cfh
+dd 0188dd8b3h
+dd 0f123fee9h
+dd 014fe7872h
+dd 0914f892eh
+dd 077ba0900h
+dd 046b97be0h
+dd 07fd89e82h
+dd 0f0b10442h
+dd 03ba23c13h
+dd 0e14e2191h
+dd 0a4dd6c73h
+dd 06b46e1f9h
+dd 0b0c3ea68h
+dd 02feefe0bh
+dd 0e681f89eh
+dd 030007444h
+dd 08c27a5b6h
+dd 0f00e6a7dh
+dd 09b8cea9dh
+dd 0ac14621fh
+dd 04d0870dfh
+dd 040f4453ah
+dd 0f511fb76h
+dd 0b5320b9eh
+dd 0f79d06b4h
+dd 01487b092h
+dd 01c00cd1ch
+dd 0cda44a56h
+dd 0eaf5787dh
+dd 0c808ee71h
+dd 02c30f14ch
+dd 07f1d952eh
+dd 03b527796h
+dd 03992382bh
+dd 0b695fd04h
+dd 081a61fbch
+dd 01cd82ad9h
+dd 0d2ce5e8bh
+dd 0b7812f82h
+dd 043406a4eh
+dd 099f1aa19h
+dd 0ec23d986h
+dd 06c49e321h
+dd 09d889f20h
+dd 0d3a917e5h
+dd 03c41d39ch
+dd 06f379f3ch
+dd 0d8a28b11h
+dd 04ff0d82ch
+dd 0bf8170f5h
+dd 03dd6904ch
+dd 0031ad656h
+dd 0918acdb2h
+dd 035e41823h
+dd 0ff0274bdh
+dd 0b550e36fh
+dd 06876bd1bh
+dd 00dbfa858h
+dd 0fe5bd51fh
+dd 058a612fdh
+dd 0c9f3204bh
+dd 0807e636eh
+dd 04573979bh
+dd 04def38ceh
+dd 067dec29ch
+dd 003088827h
+dd 0186f96adh
+dd 0d0507ac8h
+dd 0bb375d2dh
+dd 0a375265dh
+dd 08dcb9338h
+dd 05e8ca716h
+dd 0b2b58472h
+dd 05415a790h
+dd 067a78567h
+dd 06fd8f973h
+dd 0b03b6a14h
+dd 0409c6ecch
+dd 0b6f008b9h
+dd 010e1a48fh
+dd 0aa57c494h
+dd 001cd2150h
+dd 05568530eh
+dd 07d457f3fh
+dd 014c14692h
+dd 0f6e8e553h
+dd 02a3e6e17h
+dd 065fbd833h
+dd 01e01071bh
+dd 0e254c8aah
+dd 0d9f94329h
+dd 03ea61c6eh
+dd 09d85c6a4h
+dd 09a9a8bf4h
+dd 0c9fd274ch
+dd 0616bf11bh
+dd 093090b69h
+dd 0e1fc8a81h
+dd 0a6d4677eh
+dd 0ec3be581h
+dd 01559d4f9h
+dd 0a288da23h
+dd 0b50ac29bh
+dd 0063eda75h
+dd 0589eb577h
+dd 0f0ecc0fah
+dd 0454749cah
+dd 00e026930h
+dd 0aa4157e9h
+dd 043bffaf0h
+dd 05cd69caah
+dd 055e005c3h
+dd 0861ba9e2h
+dd 0ffea6c3ah
+dd 0879a5dd7h
+dd 0348eb53bh
+dd 00f37d180h
+dd 0b23e2bb0h
+dd 0362afecdh
+dd 0628e23edh
+dd 01450e335h
+dd 0dc489e63h
+dd 0e8d1569eh
+dd 063e16197h
+dd 01e22fc28h
+dd 005b4d10ah
+dd 03c12c3bfh
+dd 04006447dh
+dd 04c1ad85dh
+dd 09056176dh
+dd 0d90aa692h
+dd 09a2f8005h
+dd 04ab45ab6h
+dd 0dd766073h
+dd 06f50566eh
+dd 0370a3ec9h
+dd 01add3371h
+dd 09b8216deh
+dd 037b8995ah
+dd 06bf5733ch
+dd 0797931b0h
+dd 0e6ddc656h
+dd 050947433h
+dd 0e25d35dah
+dd 0d6154118h
+dd 07ed030f1h
+dd 02248096bh
+dd 02ab4d6a8h
+dd 02334c91ch
+dd 0dc209b64h
+dd 04673addah
+dd 0dee76ca7h
+dd 07c2be19dh
+dd 0be5bac3ah
+dd 07d3ebbe7h
+dd 0204553a9h
+dd 0dd693ca0h
+dd 0c834f894h
+dd 0ea579e4ch
+dd 0fe3c212fh
+dd 0de2f798ch
+dd 0fd715e23h
+dd 09a6cfa07h
+dd 08ba18c37h
+dd 0abdd443ah
+dd 0659d3727h
+dd 0b4e74433h
+dd 0983ce90ah
+dd 0253bb2f6h
+dd 0f3d65367h
+dd 00c84a731h
+dd 0a42e1fabh
+dd 013a5b7eeh
+dd 0719d0944h
+dd 0b1883296h
+dd 01225e585h
+dd 05b11c892h
+dd 06c73dd08h
+dd 0f2eba198h
+dd 037df4cb8h
+dd 03a18f0f3h
+dd 04c0b5122h
+dd 06a1d2defh
+dd 02efba459h
+dd 0d1e6042ch
+dd 05ea1d3adh
+dd 027f40823h
+dd 06a563795h
+dd 02851cfc5h
+dd 0b85185dch
+dd 09ad2af83h
+dd 0995f224fh
+dd 026a3de02h
+dd 0db08273ch
+dd 0841cbadah
+dd 069bc0abfh
+dd 055231753h
+dd 0a472b4f9h
+dd 01b830a29h
+dd 0b46edf7ah
+dd 04b193250h
+dd 0f5f5d731h
+dd 0c1d469afh
+dd 057a85d3eh
+dd 053b4e8f3h
+dd 0bae20367h
+dd 063daf20ah
+dd 062e5a23eh
+dd 039664e57h
+dd 0eaabcc83h
+dd 0f1bc093eh
+dd 072507c46h
+dd 01853031dh
+dd 08015028fh
+dd 053b74dbdh
+dd 0fc499504h
+dd 0e7990417h
+dd 0919e88d4h
+dd 0623030eah
+dd 0413fb644h
+dd 0999f0462h
+dd 039d2173ch
+dd 076223f4eh
+dd 0bbbdf039h
+dd 071b91ed6h
+dd 01fc8f6bch
+dd 04c0f9a2fh
+dd 0b1b537a4h
+dd 0027c827eh
+dd 00bbbc311h
+dd 0ab5121c0h
+dd 05119a99ah
+dd 052ee96a3h
+dd 03b14c8b5h
+dd 031f28a15h
+dd 02ffcd3c7h
+dd 06869999ah
+dd 083aadda3h
+dd 0254c539fh
+dd 026af40edh
+dd 09067313eh
+dd 06b4a4149h
+dd 0215ccb89h
+dd 0c9de3b6eh
+dd 07a281350h
+dd 03c58221fh
+dd 0a4882e03h
+dd 055e01c78h
+dd 0774e104eh
+dd 00591f2b8h
+dd 0641f824eh
+dd 09ce0e75ch
+dd 0ee0232b1h
+dd 03efd1513h
+dd 0cc1cdaafh
+dd 071450f54h
+dd 0786b01b9h
+dd 08f3d6058h
+dd 06b0efc76h
+dd 0d9e601c9h
+dd 0258a04adh
+dd 0ced2a051h
+dd 032a18f59h
+dd 0e8dc2cf5h
+dd 0f3db0c6ah
+dd 095e83805h
+dd 05f9c57aah
+dd 09036cc5eh
+dd 0e0b63933h
+dd 0c4360688h
+dd 0c819aba7h
+dd 0c9d1a439h
+dd 0e3190dcch
+dd 08bafb6fah
+dd 0730d6a40h
+dd 082a5881ah
+dd 0782c941bh
+dd 063d3c49ch
+dd 0e2249b78h
+dd 092a5b60eh
+dd 0fa810221h
+dd 04aa2688fh
+dd 07e1cce30h
+dd 0be6bf9cbh
+dd 08e884865h
+dd 095be8ff4h
+dd 034cb699fh
+dd 0b8341168h
+dd 0054e2686h
+dd 0c6f2e03dh
+dd 0a4d1f5a7h
+dd 09a785799h
+dd 0b9704190h
+dd 046980f8ah
+dd 0cf9f1682h
+dd 03937b97bh
+dd 023b7bf8dh
+dd 0a78a0dcah
+dd 0ace357c6h
+dd 092bbb653h
+dd 0b2f19e77h
+dd 0ed8ab1ddh
+dd 080c3b5aah
+dd 07fcec739h
+dd 0a9f8ffc3h
+dd 068900aa5h
+dd 00d0ddb71h
+dd 066bcf124h
+dd 05f2dfa2bh
+dd 06e2ffdb8h
+dd 0af00ac6ch
+dd 03de6866eh
+dd 04bab5ae2h
+dd 01bf65c9ch
+dd 0b4559407h
+dd 06e0796b3h
+dd 02bfaec7dh
+dd 01551a2c2h
+dd 06fdb27a1h
+dd 06d6ab6d3h
+dd 0b40c99dch
+dd 05e51424ch
+dd 0787d2d9ch
+dd 00e59fb00h
+dd 023644ee8h
+dd 034132e93h
+dd 03a3d3901h
+dd 063c7c89ah
+dd 0ccc7dc4fh
+dd 0f6ca8720h
+dd 0be68c489h
+dd 0e3d6ce1ah
+dd 0b09ebb61h
+dd 0c006d61eh
+dd 0cf7a99d9h
+dd 02d6d3875h
+dd 0be2fc682h
+dd 02fcd9989h
+dd 0ad728707h
+dd 0be3c6e34h
+dd 092cedc95h
+dd 0a7e4f9aeh
+dd 0b9188f8ch
+dd 099fedf8fh
+dd 0e593fddbh
+dd 06d5c3e1ch
+dd 09af38575h
+dd 0e4e202b2h
+dd 0ce3eb3aeh
+dd 0910be1d1h
+dd 09081e103h
+dd 0ddc19b19h
+dd 033a3edbfh
+dd 0c0c32803h
+dd 07b294f28h
+dd 0e94718fbh
+dd 020e3fb02h
+dd 04686983ah
+dd 0b849f9f0h
+dd 07e720016h
+dd 0e586580ah
+dd 0f7e060f2h
+dd 097892fe2h
+dd 07d1622b1h
+dd 09becf1e0h
+dd 07ffc6c59h
+dd 00b6e2b7dh
+dd 04d80073eh
+dd 05c4d1a02h
+dd 0ddfc816ch
+dd 0f863cb08h
+dd 0d731ea76h
+dd 0b8a210efh
+dd 0f5d8e17ah
+dd 0f73f0b67h
+dd 0df87434eh
+dd 0a8dc6e4fh
+dd 02516abbeh
+dd 09712277eh
+dd 0498fcdefh
+dd 0996532cdh
+dd 000bcfb45h
+dd 04b29ee2ch
+dd 025c6ec51h
+dd 029b90cf5h
+dd 011067ca0h
+dd 0d9e9ed0ch
+dd 06d77b9e1h
+dd 06d290d12h
+dd 0276ecd77h
+dd 0765b2b42h
+dd 0e84fc85eh
+dd 07619033fh
+dd 0489e19c3h
+dd 09e97f8e1h
+dd 07388fb56h
+dd 0116067abh
+dd 064fc708ah
+dd 009e77c8ah
+dd 077bf3176h
+dd 0ae9dfe40h
+dd 033c2dee9h
+dd 050ec6ca2h
+dd 03cc606e8h
+dd 083ff7f3ah
+dd 067f79fc3h
+dd 01c39a365h
+dd 09a1a8c49h
+dd 03ba90a1ch
+dd 04142a07dh
+dd 0a43584fch
+dd 0808649aeh
+dd 0a5f5f2e5h
+dd 0045082f5h
+dd 00fe48bech
+dd 0a3be3754h
+dd 0471554d0h
+dd 0be95c1d1h
+dd 0249087c4h
+dd 0f1c4129eh
+dd 0701611f7h
+dd 072c78a61h
+dd 0a51e97e5h
+dd 09dc815adh
+dd 064b9edd3h
+dd 0a2c327e7h
+dd 08bc75e30h
+dd 0667dd6b5h
+dd 0bc440831h
+dd 02b56331fh
+dd 0f90a61cbh
+dd 0cb772e8eh
+dd 06bb6fc8ah
+dd 0fe688a7ah
+dd 0bb1225adh
+dd 0453208f0h
+dd 0fca08fa6h
+dd 00beed912h
+dd 0e1d8f213h
+dd 0f195c393h
+dd 08830dd2ah
+dd 0d22d5292h
+dd 0a9a099d7h
+dd 0f433fbfeh
+dd 08568a642h
+dd 0528c168bh
+dd 0e5590a52h
+dd 00b008125h
+dd 06991e514h
+dd 05821dc52h
+dd 0a937f5abh
+dd 0095191d0h
+dd 04de7284ah
+dd 0be59c96dh
+dd 0248b723eh
+dd 08e485127h
+dd 0dbcf4371h
+dd 0e464a865h
+dd 0cf770545h
+dd 0bd7d3732h
+dd 0eb518593h
+dd 0c2d85873h
+dd 073e74679h
+dd 003a1a981h
+dd 065e11746h
+dd 05b539498h
+dd 0c4d6e72bh
+dd 0f49b6518h
+dd 060872c9bh
+dd 03d362109h
+dd 0431d484bh
+dd 07a3f956fh
+dd 083d5d9b7h
+dd 0a3e86402h
+dd 0767d8777h
+dd 0b3db41fch
+dd 0c945c62fh
+dd 0c80432dah
+dd 0ac43f57ch
+dd 0a6839eb9h
+dd 095babfbdh
+dd 0641d11cdh
+dd 0da5c0440h
+dd 0b2beff17h
+dd 0a43d508ch
+dd 054dc9b92h
+dd 0ab854bb9h
+dd 08c323130h
+dd 0bce9cd25h
+dd 0b17a3837h
+dd 025268b55h
+dd 0b53f71b1h
+dd 028e49c47h
+dd 0cc43e89dh
+dd 064179f1eh
+dd 0f904683ch
+dd 0a93ccaedh
+dd 049de7b51h
+dd 0d3abc3b2h
+dd 01af5abf9h
+dd 091cad926h
+dd 06e9ded52h
+dd 0237a3a08h
+dd 0107acc88h
+dd 0d844baa2h
+dd 048e1f640h
+dd 05be0dc02h
+dd 0912bf6c9h
+dd 0d3735877h
+dd 0a801197eh
+dd 0f801e6e4h
+dd 0c378ac3eh
+dd 03c38b596h
+dd 03d03733fh
+dd 05e617581h
+dd 0602f6345h
+dd 01253cea6h
+dd 0e01206c9h
+dd 002a681e4h
+dd 0edbdffc6h
+dd 067e23325h
+dd 054079abfh
+dd 0b55ddb5eh
+dd 0e637c2cch
+dd 013bbfdb1h
+dd 0aad47ec5h
+dd 099d9dc3eh
+dd 038a3eecbh
+dd 05e70c0d6h
+dd 0752f7dd7h
+dd 0edaac44dh
+dd 00cddc39ch
+dd 0170d218ah
+dd 0e20ceeefh
+dd 0196a885fh
+dd 0b2f25c35h
+dd 0507a2948h
+dd 05ceca381h
+dd 054f8704fh
+dd 06b45f498h
+dd 0963302d2h
+dd 03fee35dch
+dd 0e483bd08h
+dd 04d8bf74ah
+dd 08b8d7b95h
+dd 08d3b707dh
+dd 0d62ee27bh
+dd 0e302d454h
+dd 09f4e0f11h
+dd 0032616b1h
+dd 03a09cd1ch
+dd 0eb9cbac3h
+dd 0e2b74393h
+dd 0fab4f7f4h
+dd 01374db3dh
+dd 056f345f1h
+dd 0b43c98bdh
+dd 043b30a2dh
+dd 02c5038dbh
+dd 08dce67b3h
+dd 0a4f06870h
+dd 04c78343fh
+dd 0604e4f30h
+dd 06e85b6b2h
+dd 02d24c953h
+dd 0acfc4048h
+dd 0ab5a7a2eh
+dd 0aaa298e7h
+dd 0e841ba51h
+dd 0a7697972h
+dd 0273008eeh
+dd 0fc21a2e8h
+dd 012e6de72h
+dd 0d60976b2h
+dd 0e012fc92h
+dd 00ef0e08bh
+dd 0e23eef23h
+dd 02ed8e5ebh
+dd 01afb7ee2h
+dd 01e753cfbh
+dd 07dc96978h
+dd 057998849h
+dd 0f355f837h
+dd 0851d3867h
+dd 0461abdc9h
+dd 02351d7bah
+dd 0ec04c879h
+dd 0d0fea37bh
+dd 097025d28h
+dd 094b64252h
+dd 0cb42880fh
+dd 09a85622dh
+dd 074d82748h
+dd 0522eaac2h
+dd 0ebc4fcb7h
+dd 0ca666649h
+dd 0fed8394ch
+dd 0bae0f52eh
+dd 0a95f8340h
+dd 04719fbf5h
+dd 07c6834fdh
+dd 0f8a040fch
+dd 019a4e070h
+dd 0590c1146h
+dd 0ac8d5fb9h
+dd 00e540d91h
+dd 099791380h
+dd 0cc0fa871h
+dd 0b9ddfdabh
+dd 013c240a5h
+dd 051ca1f76h
+dd 0fd3f50bah
+dd 09ac30cd9h
+dd 07086eac8h
+dd 0a381ff5bh
+dd 0d5dee9dfh
+dd 0a4d1cbf3h
+dd 0acda2fd4h
+dd 07c239cf9h
+dd 08fcdac19h
+dd 0a1a0ec37h
+dd 040310089h
+dd 01895c661h
+dd 0911da135h
+dd 0c037a5a4h
+dd 09ed4f4d9h
+dd 0c509d855h
+dd 06c49d345h
+dd 0376080d5h
+dd 08dd9e968h
+dd 0e78d983dh
+dd 0ddda546ch
+dd 0b6b1027dh
+dd 003a5ad55h
+dd 0769df315h
+dd 0d314f15bh
+dd 0f4db9e39h
+dd 0fe87b4fch
+dd 072aa5eddh
+dd 0ce97bfbdh
+dd 0a6732e0ch
+dd 0d9b53b31h
+dd 0ab77b15fh
+dd 0a34ceef3h
+dd 072fdf92dh
+dd 0e9b1686eh
+dd 017e8d73bh
+dd 0c199210ah
+dd 0c51049e2h
+dd 04358177ch
+dd 031912cc9h
+dd 076c52fc9h
+dd 0cf710fd5h
+dd 03c1b553dh
+dd 0104c70bfh
+dd 031922dech
+dd 077e5eafdh
+dd 0c437e016h
+dd 0e94e2bd0h
+dd 06e0ee2a9h
+dd 0394815dch
+dd 06577e144h
+dd 01a6f86d9h
+dd 0c5f86c21h
+dd 053faef4ah
+dd 05d578cf1h
+dd 09064732dh
+dd 08ca94b3dh
+dd 054b6a5dah
+dd 0e6d25b23h
+dd 0773dffe8h
+dd 0f2e4dd47h
+dd 04c38849eh
+dd 00beee4f1h
+dd 064b48e6ch
+dd 0fd93999bh
+dd 0690f3854h
+dd 010346d17h
+dd 071a37ad3h
+dd 012b5af91h
+dd 0c2f1707dh
+dd 0cdef0a5ch
+dd 0a6d09327h
+dd 039d2db23h
+dd 0f73ac37fh
+dd 0865c0285h
+dd 0518356b0h
+dd 013d6e843h
+dd 0cd61d32dh
+dd 0179e4384h
+dd 0e83dd5a2h
+dd 0d2256b87h
+dd 0fd09a101h
+dd 0a541f563h
+dd 0bcfa9e86h
+dd 09aea838dh
+dd 01c17d085h
+dd 085dac259h
+dd 07370a9b5h
+dd 0213dc763h
+dd 0172b334ch
+dd 058f68635h
+dd 011657708h
+dd 0e1c007bfh
+dd 0c8d37067h
+dd 0c805597fh
+dd 06fd4f0e4h
+dd 03fcdf3dch
+dd 064500104h
+dd 094dcb4c0h
+dd 07e0d2d25h
+dd 02ab20bedh
+dd 0f6221a6dh
+dd 0509ad1d1h
+dd 01665cb75h
+dd 09da9d62eh
+dd 0319590edh
+dd 0a2a115deh
+dd 09b6b0882h
+dd 05b5de5b6h
+dd 0000628abh
+dd 02baaed56h
+dd 05f6a4a46h
+dd 03be3549dh
+dd 04a2dfeb4h
+dd 0f204f071h
+dd 05d211cbch
+dd 060a8023ah
+dd 097345967h
+dd 0e5ac4d6bh
+dd 0f3dafdc7h
+dd 005ceb16eh
+dd 08f914c60h
+dd 0d7ae7f05h
+dd 00afd6926h
+dd 0e15b42c4h
+dd 01b552418h
+dd 0b169b60dh
+dd 0603a7ff8h
+dd 0f0f643ach
+dd 0b1e41c34h
+dd 0be83fc6bh
+dd 0bf5f7dc5h
+dd 006ae73beh
+dd 05a1024e7h
+dd 0b2dde926h
+dd 03ade51c2h
+dd 0b6b39dbdh
+dd 0217c3f6ch
+dd 0a960bb7ch
+dd 02b1d4713h
+dd 0712a703ah
+dd 06c37a437h
+dd 0d0848e64h
+dd 065042e0ch
+dd 09fc81578h
+dd 03572fc0eh
+dd 0a3619efch
+dd 019d51f49h
+dd 09bce7bb7h
+dd 05df8daa5h
+dd 04ac76ce6h
+dd 0f59ee6fdh
+dd 0bcbc7983h
+dd 0a2429807h
+dd 0c3df1b23h
+dd 0de09476ah
+dd 02e3b2b44h
+dd 0c608df2fh
+dd 0fcd4d73ah
+dd 0c67676ebh
+dd 08954b8ddh
+dd 013589c58h
+dd 0ab1f8941h
+dd 0ff645521h
+dd 03a977440h
+dd 04fe60f9fh
+dd 05ad43098h
+dd 003dabe53h
+dd 012605146h
+dd 075126ff5h
+dd 083910603h
+dd 05fb285b1h
+dd 0ffc40c58h
+dd 0324b56e5h
+dd 06caf8c5fh
+dd 0fa9ecef3h
+dd 06626e867h
+dd 08f78d320h
+dd 066174e95h
+dd 064abdb97h
+dd 08978bdb7h
+dd 04210c873h
+dd 05d2abcc2h
+dd 0ffbace74h
+dd 09e300db8h
+dd 0898e49d9h
+dd 0a1a03cd0h
+dd 0c834a6c7h
+dd 0f57612d9h
+dd 04808fb67h
+dd 07e6d907ah
+dd 0b52f1970h
+dd 0ad86a018h
+dd 0701227c2h
+dd 022867a22h
+dd 0108c46b7h
+dd 0100d9123h
+dd 06f02521dh
+dd 07c212290h
+dd 0fb450ac6h
+dd 0c030f9b5h
+dd 0d71eba79h
+dd 0c7f93e69h
+dd 044fceaf7h
+dd 0f7dcf8b7h
+dd 082e31ad9h
+dd 0d769b04fh
+dd 07a5cb242h
+dd 035de1569h
+dd 068e0c83fh
+dd 09e3f6016h
+dd 0e3a452b9h
+dd 089ffb17eh
+dd 0d1101each
+dd 03b7f481fh
+dd 0770765f0h
+dd 00908fe69h
+dd 0ffa6d1beh
+dd 01855b692h
+dd 0511d7d36h
+dd 012611c66h
+dd 0f2604672h
+dd 0a7acf800h
+dd 03869bad2h
+dd 0c9fcd350h
+dd 04f74a119h
+dd 05169642dh
+dd 046cd888bh
+dd 07e7cd11eh
+dd 05197de67h
+dd 0ce779527h
+dd 0a924cfa4h
+dd 0b1c0f162h
+dd 06c8660cah
+dd 033b3f169h
+dd 001327058h
+dd 018ee340ah
+dd 050b0558ah
+dd 0e3e2253eh
+dd 0243a04b0h
+dd 0e1b9f563h
+dd 0d78af848h
+dd 0b643f733h
+dd 03dac667ch
+dd 038577e58h
+dd 056b52af0h
+dd 06cb2618eh
+dd 01f713021h
+dd 09ebfd376h
+dd 050f2e938h
+dd 07e427cb8h
+dd 0560fbdc5h
+dd 0b72d0354h
+dd 09271e9feh
+dd 032653a48h
+dd 0034ca7cbh
+dd 0f7b1e1dbh
+dd 02c799c91h
+dd 053543463h
+dd 0bcb09d1ch
+dd 0094902c3h
+dd 0316d229bh
+dd 02b842a7bh
+dd 05df1f935h
+dd 0164e6529h
+dd 01d3103f6h
+dd 03c859e32h
+dd 0a26105b7h
+dd 0c746501eh
+dd 0f7c64611h
+dd 0e64f14bch
+dd 0c3697802h
+dd 00ded774fh
+dd 0f9a8dbe0h
+dd 00d3e947eh
+dd 06c4ed56dh
+dd 05efcf5dch
+dd 0d52a682eh
+dd 0f97678e7h
+dd 0bf0319f5h
+dd 0d38034dfh
+dd 0bd7d7a35h
+dd 0c591261dh
+dd 03362f50dh
+dd 0be737e0fh
+dd 0d9b55306h
+dd 0a64a08b1h
+dd 024bd0616h
+dd 00440cef3h
+dd 0699dcaa2h
+dd 04770841ah
+dd 047632ae7h
+dd 0ed464b92h
+dd 031bf9caeh
+dd 0e852884eh
+dd 0ee41b8f0h
+dd 021166b60h
+dd 0c3e8b3d3h
+dd 0aa8b0268h
+dd 073b2f429h
+dd 0fe8ae641h
+dd 04aa89018h
+dd 0805f3cc0h
+dd 043df26eah
+dd 0ceb39691h
+dd 03ed61a25h
+dd 064246e06h
+dd 0072a46a7h
+dd 0805e1ac7h
+dd 05c119aafh
+dd 0bd974183h
+dd 08690ca81h
+dd 0b438c84ah
+dd 02b510476h
+dd 0f380ad88h
+dd 0d5210526h
+dd 07266fef9h
+dd 097af7dabh
+dd 0fa793e79h
+dd 0f019d219h
+dd 0dfd7d512h
+dd 09ac4b301h
+dd 04ec31b43h
+dd 0b8c78667h
+dd 09076be4dh
+dd 04c711080h
+dd 09cbfa0f7h
+dd 0a721ec25h
+dd 0a75e007ah
+dd 07e394513h
+dd 0a2fc27c8h
+dd 025fc371eh
+dd 0f5a5d71ah
+dd 063dd3677h
+dd 0963ae409h
+dd 0a7c5a042h
+dd 0d16e9ab4h
+dd 03428b1c2h
+dd 07bc7c0e7h
+dd 064aade5dh
+dd 0332828a0h
+dd 0d8bf07fdh
+dd 0ad620161h
+dd 0c0c2f338h
+dd 0a5ef05a0h
+dd 01a7b7d5bh
+dd 06d9a9ca0h
+dd 0d777623fh
+dd 0b18988efh
+dd 03855c3c7h
+dd 023268c4eh
+dd 0762998eeh
+dd 0ab7de70bh
+dd 0311be2b4h
+dd 0c6045bb3h
+dd 0009194f9h
+dd 0bb9369c2h
+dd 039b40de6h
+dd 086e963feh
+dd 021e47c01h
+dd 0b0334b2dh
+dd 01b7058feh
+dd 08224d3aah
+dd 0a2f0d428h
+dd 0aa1128b4h
+dd 0bb3f1b72h
+dd 095505473h
+dd 070045e97h
+dd 0e798a6c6h
+dd 0c1b83eb4h
+dd 06007f70bh
+dd 0fecea0a1h
+dd 09771ef09h
+dd 0c682b6beh
+dd 03245c37eh
+dd 0ff2f3093h
+dd 0118a6183h
+dd 004f7dd08h
+dd 066a54476h
+dd 03424eb1fh
+dd 0d809c71ah
+dd 02de6acebh
+dd 073677b66h
+dd 0fe92cd5dh
+dd 0685f21c0h
+dd 01e67c045h
+dd 090975e6bh
+dd 017af26e6h
+dd 0acc81da4h
+dd 0e2972b5dh
+dd 0e8a0c608h
+dd 0799c8f1fh
+dd 0e8616d42h
+dd 05df475f3h
+dd 057c91bc9h
+dd 0162837c1h
+dd 0ea6c7de3h
+dd 000dfe068h
+dd 07f7888d1h
+dd 03d83b927h
+dd 00d822ff5h
+dd 04970779fh
+dd 0e9d2beb6h
+dd 047bbb25dh
+dd 01bab0c6eh
+dd 0e9456421h
+dd 09dac471bh
+dd 06116f22bh
+dd 00cb81256h
+dd 0086f414dh
+dd 0b166477eh
+dd 0a0511ca8h
+dd 04e4b5373h
+dd 093b9c167h
+dd 0cc33a718h
+dd 032f22f0fh
+dd 06cf3fcbch
+dd 015aebcb6h
+dd 0729624efh
+dd 0238bca05h
+dd 0e255f45ah
+dd 0158ece62h
+dd 0534aea27h
+dd 06ae7b966h
+dd 07ca46c14h
+dd 02b20bf25h
+dd 0dcebbe7dh
+dd 08c6babe4h
+dd 0e365bc10h
+dd 0b9187988h
+dd 08fe04014h
+dd 0f3ef7a07h
+dd 01a58f952h
+dd 070bf9e5fh
+dd 09aba41d4h
+dd 0632a34deh
+dd 08fdab2b0h
+dd 005ca46d0h
+dd 0ae018deah
+dd 0f152ad35h
+dd 0c7dec38eh
+dd 0f23affedh
+dd 0357b4935h
+dd 0e74edbb3h
+dd 0761497fah
+dd 0356364d4h
+dd 0550e2c5fh
+dd 0e12c2fa4h
+dd 06a5d162dh
+dd 055f29ba0h
+dd 0403145b6h
+dd 042e29117h
+dd 027b4f5d7h
+dd 02e63e1feh
+dd 00e927e35h
+dd 0d5e1f1afh
+dd 0f3775c5bh
+dd 070695e28h
+dd 06fbe1e7eh
+dd 0c51f6763h
+dd 0e4ec8f9fh
+dd 0caeb7702h
+dd 034f903b3h
+dd 0951384f5h
+dd 014ed286ah
+dd 00b3fd88bh
+dd 09ab7cd3dh
+dd 07692311ah
+dd 04fa26288h
+dd 05c9a47f7h
+dd 0200865b2h
+dd 051a2ed51h
+dd 0f00fd038h
+dd 0c725a91dh
+dd 0b8c49daeh
+dd 0f9f966b0h
+dd 0426b24bch
+dd 09404b0dfh
+dd 0b90e0693h
+dd 06eb3aa56h
+dd 0c72918beh
+dd 02ec2386dh
+dd 02b8738e5h
+dd 09f2ac81dh
+dd 079b7bfdfh
+dd 0a915ff64h
+dd 037423286h
+dd 01e0e9c15h
+dd 035729ac7h
+dd 052d61015h
+dd 030ca0c4dh
+dd 0d8296175h
+dd 0fbaa418eh
+dd 08646d4f5h
+dd 0b58afe46h
+dd 04c0255bfh
+dd 0d93c3b5ah
+dd 070c81695h
+dd 036910209h
+dd 086f0f834h
+dd 0e712d474h
+dd 0fc8abbfch
+dd 0c9fdc065h
+dd 00da3be7bh
+dd 092c7a382h
+dd 01c765e61h
+dd 008d7777ah
+dd 08e0b72e5h
+dd 08a1683fch
+dd 0aaa0e629h
+dd 0f9bcbcd4h
+dd 0ec809b27h
+dd 061830345h
+dd 09ba85d53h
+dd 07fc880b2h
+dd 04de5c9cdh
+dd 0d06b29d4h
+dd 09784ae68h
+dd 02fcfe034h
+dd 0cbf0c986h
+dd 0f3dd8991h
+dd 0a6df0860h
+dd 02fca1028h
+dd 0ae00a1d9h
+dd 08b8e7d52h
+dd 014b75fefh
+dd 0de08dbc0h
+dd 05d759399h
+dd 0eb22081dh
+dd 0eb45dbe2h
+dd 0b47bbab6h
+dd 0eb3371cfh
+dd 0e83b15a4h
+dd 044e20262h
+dd 03a384722h
+dd 0e1e19660h
+dd 01719b917h
+dd 0732e0bb3h
+dd 054203db2h
+dd 0d126aef2h
+dd 06bbeebfeh
+dd 01f8b6fdah
+dd 0da8cf4d7h
+dd 0e4120a9ah
+dd 0b47cfd01h
+dd 0f379308bh
+dd 0fd3a48e7h
+dd 07b7edd9eh
+dd 05ee0dca0h
+dd 06d6be2c5h
+dd 09a199580h
+dd 09f8ea4d2h
+dd 09d4e650eh
+dd 087388858h
+dd 04b8fd8e8h
+dd 0037ddb5eh
+dd 04e7ce6e6h
+dd 0e3f6a73ah
+dd 02682f26dh
+dd 03989a3b5h
+dd 0f8d90c8fh
+dd 059bb1f4dh
+dd 081951d63h
+dd 0c723bffbh
+dd 0dc6d5636h
+dd 05c0cbd30h
+dd 040266ad2h
+dd 020ae6c40h
+dd 08a4b6b95h
+dd 048e38c61h
+dd 070c9fe5dh
+dd 0c41e558eh
+dd 0e9e31b3ah
+dd 0ff0e6a02h
+dd 0abee77b0h
+dd 0d9a8db8bh
+dd 00301d664h
+dd 0e8a49a71h
+dd 0a48a49f5h
+dd 0103ebeadh
+dd 00eb08f64h
+dd 084fe0f25h
+dd 01c862efch
+dd 03572003ch
+dd 08af8c00ch
+dd 0b1a5e81ah
+dd 0448bac40h
+dd 0b2d2ebbeh
+dd 04ba23070h
+dd 01381f91ch
+dd 061febb23h
+dd 09c626acah
+dd 0aa252ad0h
+dd 005c7c011h
+dd 053e7cabdh
+dd 08025abf7h
+dd 03b5ec825h
+dd 0e16c3939h
+dd 0363271d3h
+dd 0a13f7c74h
+dd 0601eb951h
+dd 02ffd482eh
+dd 0dc8b7fa1h
+dd 016b2038fh
+dd 024be9386h
+dd 0583addd7h
+dd 0e5e53070h
+dd 043ace0bfh
+dd 013add0dfh
+dd 00ba99bf1h
+dd 039d27337h
+dd 0474d1263h
+dd 0a77eccd9h
+dd 0df5c5d1ah
+dd 00f1aa305h
+dd 006e914f5h
+dd 07b26b13dh
+dd 00d7750f1h
+dd 0f602c171h
+dd 038965d5dh
+dd 097ce6c55h
+dd 06717c288h
+dd 02a576d6ch
+dd 02c026511h
+dd 0cc24f359h
+dd 0c61e8af0h
+dd 02f9b5ff6h
+dd 04545afdbh
+dd 0b9c5fc2bh
+dd 0c9bd8f20h
+dd 0e540d124h
+dd 0411ef33ch
+dd 0843b0ed4h
+dd 07a9bf3dch
+dd 05690b0d9h
+dd 03abd33afh
+dd 088039f88h
+dd 07fabe14ah
+dd 0bb5a2c6ch
+dd 0318f4aeah
+dd 01b62943ah
+dd 07942a20ch
+dd 04c08cad7h
+dd 07127be23h
+dd 072f40436h
+dd 03b4bcf8eh
+dd 03e8892dch
+dd 0b81742dbh
+dd 09fd9b04dh
+dd 0bc8ff649h
+dd 0f7890d79h
+dd 0b99aa95dh
+dd 0cead56e7h
+dd 097ff9cb0h
+dd 08f65e54dh
+dd 07d9e949eh
+dd 0cc043a0fh
+dd 085b7272dh
+dd 0a867d1e6h
+dd 0db1be56dh
+dd 0f8c97436h
+dd 05cc425a7h
+dd 063b1ae29h
+dd 046ad1968h
+dd 008498a86h
+dd 0974412f0h
+dd 0b953ce5bh
+dd 0c5554b30h
+dd 0f4395a11h
+dd 03c31a48fh
+dd 015b6ec00h
+dd 09d543cafh
+dd 0e7230f89h
+dd 00aecd620h
+dd 0bacf7129h
+dd 044376a6fh
+dd 097795bbfh
+dd 0ee6cc0e8h
+dd 0c003af3dh
+dd 05db5e254h
+dd 0f15f04fbh
+dd 037a52f28h
+dd 0b7159449h
+dd 00d67eb36h
+dd 0e3fc693fh
+dd 0d5cfcc14h
+dd 07636d481h
+dd 0570f01e8h
+dd 0f1b4dda2h
+dd 0894d1bf6h
+dd 010f29b94h
+dd 0da7fda55h
+dd 0991ea40dh
+dd 0494cc00ah
+dd 0b8eae0d3h
+dd 038e8ae74h
+dd 0a48e7cc1h
+dd 07fe80b1fh
+dd 021d71544h
+dd 058f0e4dfh
+dd 0ff6abbdah
+dd 015f684feh
+dd 03d7bc834h
+dd 0acab0f3eh
+dd 0071e6731h
+dd 045790559h
+dd 0296e1d23h
+dd 0c0525e89h
+dd 0b86a31efh
+dd 01c574c2bh
+dd 0e1e623beh
+dd 095b3caf0h
+dd 0689a0849h
+dd 0bb324e87h
+dd 07826dbd9h
+dd 0056a4191h
+dd 036bc83aah
+dd 05e923613h
+dd 005b0fe06h
+dd 0b668d48ah
+dd 06c1d78f5h
+dd 04fe2589bh
+dd 0b66ca5b4h
+dd 0dcde65d1h
+dd 023c4fd1fh
+dd 012d36e94h
+dd 0b8214b43h
+dd 03af4bc24h
+dd 09a58aa03h
+dd 03c101923h
+dd 0156f4590h
+dd 0e3e94b8ah
+dd 0138f72c4h
+dd 0a4806769h
+dd 03e612ba3h
+dd 0072a833bh
+dd 0b8b2b355h
+dd 0d3fd7186h
+dd 06c82cb00h
+dd 0c7819321h
+dd 00a885a18h
+dd 0aa99d580h
+dd 09094d978h
+dd 014ba3295h
+dd 04c789b11h
+dd 0649ee8c7h
+dd 07da4039ah
+dd 071473b2bh
+dd 023263e74h
+dd 0fdd7c847h
+dd 0502dd819h
+dd 09acace9bh
+dd 06411873eh
+dd 019d0ef9dh
+dd 0355f199fh
+dd 0d2b0674dh
+dd 009a6d975h
+dd 0eac04924h
+dd 08bd1d7dah
+dd 0754fed4eh
+dd 040cb055fh
+dd 04695c309h
+dd 048806367h
+dd 06d14c0b3h
+dd 0b0166c24h
+dd 0b2564d4bh
+dd 0a37ea0e8h
+dd 0e7230724h
+dd 0214e8a21h
+dd 09050869ah
+dd 0c5219557h
+dd 081655cf1h
+dd 087d2e08ch
+dd 0bc5ad16fh
+dd 04c412f08h
+dd 01bb894f0h
+dd 09eb23dadh
+dd 0e8aaed14h
+dd 0c8d2a017h
+dd 0de2eecedh
+dd 0d1821743h
+dd 07b07d454h
+dd 0386ce85ah
+dd 038219aa2h
+dd 04a32bbe7h
+dd 082495030h
+dd 04b3d2764h
+dd 099a9ac89h
+dd 0c646a55fh
+dd 0e62e65a2h
+dd 0f3024c30h
+dd 013be3a0dh
+dd 001a35b25h
+dd 037771fb8h
+dd 00f213049h
+dd 00d5bc241h
+dd 01295c89ch
+dd 01a9c8a38h
+dd 08528d7fbh
+dd 0b3331244h
+dd 0efc7315eh
+dd 03eb8ceaeh
+dd 0894d60ddh
+dd 0c6bb2422h
+dd 0b1c1c632h
+dd 0aaf7d661h
+dd 08c473e6bh
+dd 037de19e3h
+dd 03abac886h
+dd 07462affdh
+dd 0fe3acad2h
+dd 0470d4c4fh
+dd 097207dabh
+dd 0393014ffh
+dd 0c8eef298h
+dd 07723117ch
+dd 0c689fce3h
+dd 056159993h
+dd 08fdfe314h
+dd 032459625h
+dd 0cfea5847h
+dd 03531eb76h
+dd 0caa4c662h
+dd 01dd5b795h
+dd 0a0b0b174h
+dd 08e018850h
+dd 0830297c1h
+dd 02be5443dh
+dd 0efd240e8h
+dd 0e2991d8dh
+dd 079079503h
+dd 0da7e09e1h
+dd 0b024526ch
+dd 037c20140h
+dd 00938d62eh
+dd 01117f3a2h
+dd 04ddb16d8h
+dd 0f392d164h
+dd 0ebfd6f77h
+dd 0481cb6cbh
+dd 06c67e8b8h
+dd 08f393d28h
+dd 0084505b2h
+dd 0bf08ebcdh
+dd 05be75c58h
+dd 0de0f412fh
+dd 0edf87837h
+dd 0c0332dfdh
+dd 06c1e7797h
+dd 0b8f398feh
+dd 0a6cb0ebbh
+dd 0ff789960h
+dd 06269fea7h
+dd 094795e7bh
+dd 0d5f78a48h
+dd 0ae8d4f74h
+dd 0021ffdbbh
+dd 094fa27d2h
+dd 0b0e697a8h
+dd 0848f56cdh
+dd 0c9672613h
+dd 0996f4294h
+dd 059996107h
+dd 07583784dh
+dd 043418117h
+dd 0809db3c1h
+dd 06c0d8748h
+dd 09f5da0f3h
+dd 0fbfe90beh
+dd 061399d44h
+dd 0be041b37h
+dd 04cb674b6h
+dd 02b65a515h
+dd 0830375fch
+dd 0fd172870h
+dd 02ed0bf39h
+dd 0d3df9c95h
+dd 0c3bfdb3eh
+dd 0f567b15fh
+dd 00e16a9c6h
+dd 00a2f4017h
+dd 085980b93h
+dd 088ebb05fh
+dd 099af6ecch
+dd 012b20bf7h
+dd 027a3ec89h
+dd 06eee2d41h
+dd 050bddbc4h
+dd 0902a8cfah
+dd 0a1b4ea02h
+dd 038a60c15h
+dd 04e7a343fh
+dd 0c9db1e92h
+dd 05de000f9h
+dd 0b4f67295h
+dd 0765a79eah
+dd 099783de8h
+dd 059278541h
+dd 0023215b6h
+dd 00cad38b3h
+dd 0e493175ch
+dd 05ca25747h
+dd 078b0f291h
+dd 05b7ee660h
+dd 04a0e4111h
+dd 019e89ea6h
+dd 060db49c5h
+dd 06de5d8dch
+dd 07348adbah
+dd 0969bda43h
+dd 03136fe7ch
+dd 035034b07h
+dd 0c585e1f6h
+dd 080df2919h
+dd 0df963930h
+dd 0c46f7ab1h
+dd 0c112e29ch
+dd 0e3064129h
+dd 0bd9a40cfh
+dd 0dff8fcc4h
+dd 01a591418h
+dd 03bd59ec8h
+dd 007fa54cah
+dd 0e7d29a11h
+dd 05d193a5ch
+dd 0aed03f2ch
+dd 07636d072h
+dd 000fc71dbh
+dd 0d81f4c6ah
+dd 0e717c1d7h
+dd 0c1d55110h
+dd 0ed1499b5h
+dd 02393fafah
+dd 0b7cb6562h
+dd 0dea6b454h
+dd 05cf172dah
+dd 058ff08f9h
+dd 06f909505h
+dd 03aed1641h
+dd 08e24f24eh
+dd 068d3c4e1h
+dd 092f02fd9h
+dd 0a4c1bd9dh
+dd 0eeed5ec5h
+dd 04d3bfd6ah
+dd 0a17f30bch
+dd 09858da8ah
+dd 0c847986ch
+dd 030acf5f2h
+dd 04f321c9bh
+dd 0b00eee5fh
+dd 089a47c4bh
+dd 0c2dbddf0h
+dd 0658d246dh
+dd 06d91e7b5h
+dd 0e01d3a3eh
+dd 0db69f74ah
+dd 02337adffh
+dd 05c36e05bh
+dd 0ddde1508h
+dd 0c8da4c48h
+dd 0440e6ad7h
+dd 0a0cfbbcdh
+dd 0393a1866h
+dd 0b930a575h
+dd 0fcf45383h
+dd 0c1cd1fc5h
+dd 0d82de156h
+dd 025ae6e1bh
+dd 0d5fb786fh
+dd 008ab8202h
+dd 060136d77h
+dd 0bf6d2383h
+dd 01107a19fh
+dd 063713ba7h
+dd 0e3bd5cdbh
+dd 04cff1e66h
+dd 0733ac20bh
+dd 0e598d24fh
+dd 0c6023884h
+dd 0f7cfd09dh
+dd 007ffc5ech
+dd 0eebdff5dh
+dd 0b396d77bh
+dd 0136e4a80h
+dd 0a6f8ad1bh
+dd 09b09a6a6h
+dd 057078f65h
+dd 09bbe4042h
+dd 066d673b9h
+dd 0530fe926h
+dd 08026039dh
+dd 0f3602e33h
+dd 0f5370e27h
+dd 0babc3f3fh
+dd 0837a5edbh
+dd 09e25c68bh
+dd 02da83ebch
+dd 03772dd07h
+dd 0c19267bdh
+dd 09796217ch
+dd 08b11e0a2h
+dd 05fb7bfe3h
+dd 07b6636ebh
+dd 0506054b6h
+dd 0cc4e50ffh
+dd 012b3c352h
+dd 08bc05921h
+dd 06be7e7edh
+dd 00a8c6605h
+dd 0166eb315h
+dd 004e9781eh
+dd 0a820828dh
+dd 0f737af0ah
+dd 0ce43552fh
+dd 010bb821fh
+dd 05b74d061h
+dd 0f1187d24h
+dd 08e31406fh
+dd 082970562h
+dd 07e604557h
+dd 082a4da2fh
+dd 00365f04dh
+dd 0ea0ef6c7h
+dd 08f4b5b7ah
+dd 0cdc51fdfh
+dd 057c04e16h
+dd 0506309bdh
+dd 0884262eeh
+dd 0eb6906adh
+dd 035906804h
+dd 0d957d111h
+dd 078c90760h
+dd 085dc4280h
+dd 0dd706443h
+dd 0909b0f8eh
+dd 0a47f09f2h
+dd 009aa5d7eh
+dd 0d1ff2e47h
+dd 0ff3e732eh
+dd 00a86ee0bh
+dd 03206b2d7h
+dd 088b56595h
+dd 0296ad98ah
+dd 08b84b683h
+dd 08987a33ah
+dd 0aceb3b47h
+dd 015bafa71h
+dd 07271881ah
+dd 02568922fh
+dd 02ede1233h
+dd 0620faae7h
+dd 013af9e1fh
+dd 0a05d7477h
+dd 0392b355eh
+dd 0de75c2fbh
+dd 0e9855e8ah
+dd 0f13d8399h
+dd 0d952064ch
+dd 0daa3b504h
+dd 013e19712h
+dd 07eca0c9dh
+dd 0c65a41d4h
+dd 0a6ea96f7h
+dd 0209ac2b2h
+dd 01c01e8ddh
+dd 019b12eaah
+dd 0b2fc5701h
+dd 0fd6a2879h
+dd 047c567dah
+dd 0cd36abcfh
+dd 0fdcbf124h
+dd 04693892eh
+dd 03d213aa0h
+dd 010a253aeh
+dd 0dc09a7fah
+dd 0ab78b6eah
+dd 00c3e8000h
+dd 01ff64832h
+dd 0ae5914a4h
+dd 00745c71ah
+dd 007630223h
+dd 0b93b1039h
+dd 0a6821f01h
+dd 056e5a806h
+dd 0af312723h
+dd 01c476504h
+dd 0b800a842h
+dd 0908d787ah
+dd 07f009ab3h
+dd 094ad74beh
+dd 0ed115ad8h
+dd 0106cc71dh
+dd 09be24622h
+dd 0068839a6h
+dd 0d341dc70h
+dd 08030ccaeh
+dd 08d5588c3h
+dd 0e87d4fb4h
+dd 0fae3d007h
+dd 02601edc0h
+dd 0351a8214h
+dd 00d3d1649h
+dd 01edcce86h
+dd 0896549f4h
+dd 074ea228eh
+dd 014c441deh
+dd 0d332537dh
+dd 0d0323578h
+dd 0a9757d26h
+dd 0a0825a3eh
+dd 088e32ff1h
+dd 04b5e3e21h
+dd 07bbc9480h
+dd 0ffccb5a8h
+dd 02ad1c8deh
+dd 0e2b8f1dbh
+dd 029194ebbh
+dd 0af45ba2dh
+dd 0055378d4h
+dd 0c424c38dh
+dd 0d5b1ccd3h
+dd 0afcd2934h
+dd 0f5730090h
+dd 0e606bc31h
+dd 036a32932h
+dd 098309bb0h
+dd 031990472h
+dd 01af60129h
+dd 03db737c7h
+dd 06ea3eab7h
+dd 0303aab67h
+dd 0f3275ba7h
+dd 0ef650265h
+dd 0ca6103c6h
+dd 0d5650e8dh
+dd 0ac8ef0f1h
+dd 0260646deh
+dd 08a2d2b91h
+dd 0ea96e661h
+dd 027c0faf7h
+dd 0e66031d5h
+dd 0d4c618abh
+dd 066ab5fafh
+dd 0ef410ecdh
+dd 03d561d5bh
+dd 08759ae71h
+dd 0a0d266d2h
+dd 0426ca15ah
+dd 0d459a26fh
+dd 0d4d0f8c1h
+dd 029dfe43dh
+dd 0740d78d9h
+dd 0aeb22067h
+dd 099843397h
+dd 02d0b0b44h
+dd 0c9c6caddh
+dd 0cd2dff55h
+dd 0461e5ff6h
+dd 0381408feh
+dd 0add887feh
+dd 07c3c82f6h
+dd 0ae745a4bh
+dd 0669dd781h
+dd 0c5f43384h
+dd 0b9001abdh
+dd 07599e403h
+dd 065090f7dh
+dd 0fc775907h
+dd 07bafb3c1h
+dd 0d19cfdcch
+dd 0e7e73757h
+dd 0f1db749ah
+dd 093fce453h
+dd 0267c7c73h
+dd 0dcfd5197h
+dd 010ace881h
+dd 085f802adh
+dd 00ed03e28h
+dd 0e2cb81d0h
+dd 0e1cf6d55h
+dd 0ab784183h
+dd 0681577c6h
+dd 04338a94ch
+dd 099e8c8fah
+dd 0a1426875h
+dd 0e11c449bh
+dd 008f53efah
+dd 06f8263f3h
+dd 05a1d18b1h
+dd 08eb3bf50h
+dd 07ec9b47eh
+dd 0d3ffe489h
+dd 0e97ad39dh
+dd 03a7581e7h
+dd 0ee96de5bh
+dd 0f258a209h
+dd 01775fd56h
+dd 0747fb6c1h
+dd 0c36f54bch
+dd 0790104f2h
+dd 0aef55fefh
+dd 0b486e596h
+dd 0a1bf4252h
+dd 069ca2a26h
+dd 05819f33bh
+dd 03aa33f94h
+dd 077f38111h
+dd 08ea7ae9ch
+dd 0c28d7a14h
+dd 040993d40h
+dd 0fa09270ch
+dd 0bfdc62aeh
+dd 0d8f9cec4h
+dd 02748d687h
+dd 04d9546cdh
+dd 00bb5df38h
+dd 0cf1a83aeh
+dd 0d685149ch
+dd 032ffce39h
+dd 0467c2636h
+dd 05978051fh
+dd 00a29f36ch
+dd 013109904h
+dd 065fec5cdh
+dd 0fd9073e4h
+dd 012b4a361h
+dd 07114dc30h
+dd 03ecc3b50h
+dd 0f38bdeach
+dd 03da8bf19h
+dd 09ca5790eh
+dd 0f6f795c6h
+dd 0fb15ea1fh
+dd 07a7bcd85h
+dd 0d0261fe3h
+dd 04e57e154h
+dd 083e5df99h
+dd 0571588e0h
+dd 0eafbe0b9h
+dd 0a4bb3263h
+dd 0f0fa0c53h
+dd 0fea192dfh
+dd 07c1c6d32h
+dd 0e94e29fah
+dd 0c7ce5982h
+dd 061609351h
+dd 02c05afc3h
+dd 0fa2c61c8h
+dd 04d95abc3h
+dd 09ccc36a2h
+dd 0a05a49ech
+dd 021dceb11h
+dd 0f30441f7h
+dd 01756eecah
+dd 067509e3ch
+dd 06aa720dfh
+dd 01090ddd4h
+dd 061d73427h
+dd 0e2ed01f8h
+dd 0ce4d75bfh
+dd 0201089f8h
+dd 0ff5ff4b2h
+dd 053b6cc91h
+dd 0ff38a037h
+dd 051734abah
+dd 09b098190h
+dd 0fa7ebc8fh
+dd 0daa15e89h
+dd 024769e24h
+dd 0a3f9b6f3h
+dd 0afc64c36h
+dd 09a099690h
+dd 04d58e6d0h
+dd 0c761c332h
+dd 0bbb10fdbh
+dd 071aa5b15h
+dd 064a69bd5h
+dd 0af103a9fh
+dd 03b1d53f0h
+dd 094b202eah
+dd 0cda3983bh
+dd 0230e4c57h
+dd 03142c4bch
+dd 0c0589715h
+dd 092453348h
+dd 07121c675h
+dd 0cfa844c6h
+dd 06da08d0fh
+dd 0611b5a9ch
+dd 07a14153ah
+dd 0d94ddadah
+dd 0653cc20ch
+dd 07215398fh
+dd 0e5cdc031h
+dd 0e83e4dd1h
+dd 0faaf4e70h
+dd 09be2657ch
+dd 0c039d511h
+dd 0870957d8h
+dd 03075b048h
+dd 0ee086d00h
+dd 0eff6e7b5h
+dd 006208fe5h
+dd 0672c045ch
+dd 09fe6eb97h
+dd 00c90f69fh
+dd 0853c5ff6h
+dd 05c28285ch
+dd 088cfae6dh
+dd 06b8f9289h
+dd 016c89262h
+dd 061901c71h
+dd 0d47609b1h
+dd 05dd1c0cfh
+dd 0ead02b64h
+dd 056fd2b86h
+dd 02220ede9h
+dd 05ba868b8h
+dd 0a15893cfh
+dd 01ab4d12eh
+dd 05dc98e7dh
+dd 06aab1358h
+dd 0731f2e54h
+dd 0b529d180h
+dd 0d1b5a67fh
+dd 0845d0fb9h
+dd 0ff7980e7h
+dd 0cdc0b564h
+dd 0d00dd9edh
+dd 0a2d1c19bh
+dd 0259ba76eh
+dd 0358a76c3h
+dd 04ed7d3beh
+dd 0fab9ddd6h
+dd 0a789e354h
+dd 049a7bd15h
+dd 02eb29862h
+dd 05b638615h
+dd 03acf3274h
+dd 047752ba6h
+dd 04ab899aeh
+dd 0578267a4h
+dd 0b97b8ca0h
+dd 09b64062fh
+dd 0d6feab5ah
+dd 0be112fcfh
+dd 01cc3e6ech
+dd 031f2a5e0h
+dd 06f9ea759h
+dd 0871efa87h
+dd 0a2b2d59bh
+dd 01c6c4343h
+dd 0a047bfc9h
+dd 0c81e2b75h
+dd 00c2b612eh
+dd 0b3bc67d6h
+dd 0174781b8h
+dd 038c061e0h
+dd 058c88c20h
+dd 08634c60dh
+dd 008dddd9dh
+dd 0834672f8h
+dd 0079d7828h
+dd 00e71f26ah
+dd 082d4f63eh
+dd 0ea42041eh
+dd 0efd0ebe4h
+dd 088a7a88eh
+dd 0bd2396eeh
+dd 02984ebc9h
+dd 041a82418h
+dd 09d0217d0h
+dd 0fd3d25f0h
+dd 0248bc791h
+dd 05d62517fh
+dd 050541b10h
+dd 05ff0790fh
+dd 0ecce836ah
+dd 007d40b33h
+dd 0e351fa95h
+dd 0623a132ch
+dd 00e83b2a4h
+dd 0fd351bb9h
+dd 0b7754886h
+dd 0c798ebe2h
+dd 01f7db797h
+dd 0564fb51fh
+dd 0038fc814h
+dd 0f9027968h
+dd 0b987c6b9h
+dd 021836916h
+dd 08e974666h
+dd 0fac82bbah
+dd 04ec8ed5bh
+dd 01e28dc1ah
+dd 0023f4d91h
+dd 0bcdf1e94h
+dd 062316b55h
+dd 0d15d4876h
+dd 06e719ab9h
+dd 0e69438d7h
+dd 0e5802524h
+dd 089b6db6ch
+dd 0bfff5162h
+dd 0671cfcc1h
+dd 013054848h
+dd 061bb71e6h
+dd 0b12e2da9h
+dd 00cf45d2dh
+dd 0a4252ad8h
+dd 0517fbfc4h
+dd 05cb3d75bh
+dd 02f0f8624h
+dd 050b13dfch
+dd 047140af5h
+dd 016316c31h
+dd 09b8af31ch
+dd 01f992b25h
+dd 0459ad7f2h
+dd 0eb055921h
+dd 0b84d851dh
+dd 0499c1d96h
+dd 03fc94278h
+dd 0e25de464h
+dd 0cbf0d552h
+dd 01e4c3805h
+dd 0b8bb6206h
+dd 000f1d01fh
+dd 04f6e9acah
+dd 0a98e2731h
+dd 0ef4cffb3h
+dd 0c12c61ddh
+dd 0c7806d61h
+dd 0e503cd35h
+dd 038f5aedfh
+dd 077493220h
+dd 0ba2a22b6h
+dd 033ea4fb3h
+dd 0941ae0e5h
+dd 0caecfd52h
+dd 068f742c7h
+dd 04d83d1ech
+dd 01a78f5dfh
+dd 016ade6ebh
+dd 0a4304c71h
+dd 0675466deh
+dd 01a82f94ch
+dd 09465601bh
+dd 09558b4cah
+dd 0e5140c22h
+dd 09827b28dh
+dd 0f5320501h
+dd 097dc7770h
+dd 0e0a21337h
+dd 08db358d5h
+dd 0a8243d87h
+dd 01d072b6ch
+dd 056e05e61h
+dd 02e6572c9h
+dd 050a96b03h
+dd 0b8fc16adh
+dd 079a6bfb2h
+dd 037b464b7h
+dd 05348e078h
+dd 07d33396ah
+dd 0b721a361h
+dd 068a4d358h
+dd 094689d7bh
+dd 09fb33093h
+dd 0efb382deh
+dd 09129dd9ch
+dd 0e3920855h
+dd 0fa92be47h
+dd 0115f218bh
+dd 0d32a2f02h
+dd 090e2398bh
+dd 089848a7dh
+dd 0671196c7h
+dd 079c1ed8bh
+dd 0ef690082h
+dd 0e296daf6h
+dd 0b51066b8h
+dd 0a8dc41f9h
+dd 0897adde2h
+dd 0ba375d45h
+dd 0c92fac97h
+dd 0bae69e7ch
+dd 0f1e0b940h
+dd 0ad73b4c1h
+dd 0daf3f4eeh
+dd 0f780f1c0h
+dd 0eded5b4fh
+dd 001852a8ah
+dd 00d25f578h
+dd 060cf6617h
+dd 0c1ca2a68h
+dd 084dbbe76h
+dd 0be6a3d9ch
+dd 0be2b4a2fh
+dd 00790376ch
+dd 0c3675ad0h
+dd 0e8a8260eh
+dd 000705944h
+dd 0225de395h
+dd 074469131h
+dd 026fdfe16h
+dd 09009fd83h
+dd 0dfbe5906h
+dd 0368c1ef7h
+dd 08cc4d6d0h
+dd 0278aaceeh
+dd 0ed446ad0h
+dd 052429563h
+dd 0a0c0d43ch
+dd 011e0a53eh
+dd 0ca9d577ah
+dd 0235235c5h
+dd 0e00cf88bh
+dd 0567788a3h
+dd 0327e9e42h
+dd 02b648c51h
+dd 0645d8f5fh
+dd 0b95bf2fch
+dd 056d1dd3fh
+dd 01b649c07h
+dd 0c321af35h
+dd 05d1b8410h
+dd 06b2078f9h
+dd 0988ee98eh
+dd 04899674ah
+dd 013ce7842h
+dd 044187e68h
+dd 0e5058984h
+dd 0f8e28088h
+dd 01bfc3336h
+dd 05c9ee765h
+dd 06a18322fh
+dd 0bf84dd64h
+dd 03ec00a0bh
+dd 058860522h
+dd 01ae72b9eh
+dd 08fb91ce7h
+dd 06bc3cc11h
+dd 0a94469beh
+dd 09062a5d3h
+dd 0814c3081h
+dd 00cf792d5h
+dd 0af44cb63h
+dd 0ef9599deh
+dd 046eed18fh
+dd 08b2b953fh
+dd 0029fa265h
+dd 08e6b0837h
+dd 0bcf02cach
+dd 05fdb7c5ah
+dd 075feb8e4h
+dd 0b31da748h
+dd 0fc7648c7h
+dd 0c2880c03h
+dd 03371a49eh
+dd 0c8f814aah
+dd 03fd730f2h
+dd 056d589b3h
+dd 0684b2cebh
+dd 0c364e9d5h
+dd 00f555bf4h
+dd 083375bbch
+dd 0a7059337h
+dd 062c17955h
+dd 0374033edh
+dd 05fee820fh
+dd 068923d5eh
+dd 04c14ef53h
+dd 003a20037h
+dd 094f47932h
+dd 057df1d2bh
+dd 064a73efah
+dd 073074041h
+dd 063f950f5h
+dd 020b72b24h
+dd 0a9870bb6h
+dd 0a1272627h
+dd 08e9b6078h
+dd 066979545h
+dd 0dfcc33d4h
+dd 016bf6ae7h
+dd 0a06b2dach
+dd 071795dcch
+dd 01304515bh
+dd 0d427418ch
+dd 03daaefd4h
+dd 01e09fac8h
+dd 0c2d55d7bh
+dd 0e9bb5465h
+dd 0c1ed657ah
+dd 0691cb57fh
+dd 0510c27b2h
+dd 00365e6e5h
+dd 0f081d7cdh
+dd 0ad169c0ah
+dd 0ac73e860h
+dd 09fba9b1dh
+dd 03b7aa74ah
+dd 04e1ec4aeh
+dd 0b12f7ef7h
+dd 02e0eff85h
+dd 0e0b113e3h
+dd 0344c52cfh
+dd 0828505a1h
+dd 0ea63f1f0h
+dd 0ffebe718h
+dd 037f81b43h
+dd 0f7d4af57h
+dd 0dec4220bh
+dd 01181aad7h
+dd 09b007a77h
+dd 094bbb0c2h
+dd 0e325c9e1h
+dd 0aa056d19h
+dd 089e75127h
+dd 0d4cf1074h
+dd 05fa61b96h
+dd 0c8393268h
+dd 05b85c1b8h
+dd 0bda872f2h
+dd 07b614cc4h
+dd 08c93903eh
+dd 0a8767ea3h
+dd 01d356ecah
+dd 0bd32e6f6h
+dd 0697f3e6ah
+dd 053ce936ch
+dd 048fe441ch
+dd 043909cd5h
+dd 00cca20c2h
+dd 0636edf99h
+dd 05f81159fh
+dd 086385e4dh
+dd 0b514df6bh
+dd 029359b49h
+dd 0c6c9eafeh
+dd 023a0a942h
+dd 067a7d0b9h
+dd 09c00b2e4h
+dd 05a6a2c7ch
+dd 0e0faff4bh
+dd 0ad51ab92h
+dd 0ef780159h
+dd 0f24f3119h
+dd 0d3d9d3c7h
+dd 08cfa5d3fh
+dd 00071fe59h
+dd 0ed12c724h
+dd 0cc45b69ah
+dd 077f13f16h
+dd 0f4ee1bb6h
+dd 055440642h
+dd 0c7013f84h
+dd 0d49ddc6fh
+dd 0803d6f38h
+dd 0699e8f5eh
+dd 0d5434553h
+dd 06aebf057h
+dd 0fab49263h
+dd 089fa5375h
+dd 02e264dbdh
+dd 02ccf2cffh
+dd 02c058416h
+dd 018c54333h
+dd 04a191ecdh
+dd 035db4a02h
+dd 0378eb046h
+dd 085a2ba45h
+dd 0426f140dh
+dd 09036506fh
+dd 06eff46c3h
+dd 09ad41e07h
+dd 045299bdeh
+dd 0afac2ae4h
+dd 046da7df2h
+dd 0ad9d27f0h
+dd 06ca668ebh
+dd 064727949h
+dd 0587f6fc0h
+dd 08ac65dd7h
+dd 0f1822bbeh
+dd 0e2542b9bh
+dd 08a6f2dedh
+dd 0603dacfdh
+dd 08052653ah
+dd 0c72df97fh
+dd 0f5731bafh
+dd 025e6946ah
+dd 0f112edd9h
+dd 08d3709aah
+dd 089914834h
+dd 02f048913h
+dd 0f302e74eh
+dd 0dff07157h
+dd 0180955b8h
+dd 04245ec75h
+dd 0cf47cdb5h
+dd 0cbb8ca46h
+dd 0ee2176abh
+dd 077a2ee9ch
+dd 08ef899f0h
+dd 030c9a20ch
+dd 07ed8349fh
+dd 0ae79f039h
+dd 024392c67h
+dd 0cf9d6034h
+dd 052ee0d76h
+dd 0425b4d06h
+dd 0afa0d9eeh
+dd 02e6b3160h
+dd 086cf3237h
+dd 0e78d6cd5h
+dd 00beaa809h
+dd 08d14cb1dh
+dd 0dd35d983h
+dd 03b871324h
+dd 0af8cb318h
+dd 0bf38094eh
+dd 0fa9a4f25h
+dd 0bccb05dbh
+dd 0763d7855h
+dd 00ce1d284h
+dd 0060e6af0h
+dd 08b3d40dch
+dd 0b1a44d15h
+dd 07ec5ebf4h
+dd 003bd46f9h
+dd 072296f33h
+dd 040d6a350h
+dd 0e6769daeh
+dd 0e2c0271bh
+dd 0c9a35d49h
+dd 07ace2163h
+dd 0df374251h
+dd 0ebdf0ec4h
+dd 06d473a55h
+dd 0321d59a9h
+dd 0ce13d98ah
+dd 05abe9137h
+dd 0faf4ada1h
+dd 055bc1929h
+dd 016cb51e2h
+dd 0e0e1d9cdh
+dd 07f041ee3h
+dd 0b1b81307h
+dd 0bf13051ch
+dd 0d262c401h
+dd 0bb9575f5h
+dd 0adfb1fb3h
+dd 0bf7d49c8h
+dd 0e680286dh
+dd 029ef971eh
+dd 0bb3e6dd0h
+dd 087de26b8h
+dd 04a1bef92h
+dd 0fe7acdeeh
+dd 0c518900ch
+dd 02fdc8219h
+dd 05e0dccc1h
+dd 003591e42h
+dd 02de98fcah
+dd 06a2d85d9h
+dd 088bc07d9h
+dd 02bd6bed6h
+dd 0062271a6h
+dd 0bed49b50h
+dd 08d0d3e73h
+dd 0b2451597h
+dd 0d265b297h
+dd 0708de16bh
+dd 0471e1a7ah
+dd 0c657b2d8h
+dd 0af7bfe2fh
+dd 0247d00cbh
+dd 028a0b245h
+dd 025e670a5h
+dd 01569389fh
+dd 09611987ah
+dd 0a3e95e1eh
+dd 06b0bb8a9h
+dd 0cde0f69bh
+dd 08e61ea01h
+dd 0cbc85cb9h
+dd 0cf897780h
+dd 024a1dceeh
+dd 0c2d53f41h
+dd 0ff609841h
+dd 03e68322ch
+dd 05ac9d3e5h
+dd 0b47921f4h
+dd 0511e385fh
+dd 04422877dh
+dd 0421c74b9h
+dd 0b31637cch
+dd 06b6dfb69h
+dd 00ad750b1h
+dd 0670d204ch
+dd 0f80eba72h
+dd 0c36d0ad5h
+dd 0e019b6eeh
+dd 06862dbe6h
+dd 00f6c8e96h
+dd 0c799428ch
+dd 0fbf829e1h
+dd 063cdd510h
+dd 0a7721ec0h
+dd 0c73f06c6h
+dd 076c0acadh
+dd 0755028ech
+dd 03b743875h
+dd 09ffcf2fah
+dd 02a9dbf1ah
+dd 05af63e8fh
+dd 0c6fabf1dh
+dd 05cce5602h
+dd 05d3c1dcah
+dd 098adbeddh
+dd 08e6a297fh
+dd 0b3b67368h
+dd 0299267dch
+dd 0528ca51ch
+dd 096119fd1h
+dd 0aae4a9ddh
+dd 0537fee3dh
+dd 0f50c2cf9h
+dd 0615211c8h
+dd 0501086eeh
+dd 0d80d5a5bh
+dd 0bda474bch
+dd 06c7432dbh
+dd 04f998db5h
+dd 0da6cde79h
+dd 060fc7570h
+dd 00da88c9ah
+dd 0652c2a79h
+dd 06fc986fah
+dd 04d0bd8d5h
+dd 0db1431d5h
+dd 0ab846141h
+dd 056cfaf37h
+dd 082269bfch
+dd 0af759968h
+dd 03c6352bch
+dd 0e239bca6h
+dd 0ed04968fh
+dd 0fd0070bfh
+dd 0d9b1fe34h
+dd 08ca94289h
+dd 07685adffh
+dd 04d713156h
+dd 0c58f8e6fh
+dd 0a70d9902h
+dd 04a1c39b6h
+dd 003619c80h
+dd 0881024bdh
+dd 02e627439h
+dd 0f0d78254h
+dd 005f52f5ch
+dd 0e83031bch
+dd 08e563cd8h
+dd 06cefa522h
+dd 06fe0af2ah
+dd 05a2a6aaah
+dd 0eab8801fh
+dd 02e76b1bdh
+dd 07a1e1ed5h
+dd 006ca8758h
+dd 004af45ffh
+dd 0e774ce3ah
+dd 059af92fch
+dd 0234535c5h
+dd 0b13ffe62h
+dd 08b430916h
+dd 02a1a6a19h
+dd 0a6193fb5h
+dd 09009d6f2h
+dd 08214eb9eh
+dd 01d0ff8a3h
+dd 0ba969fdeh
+dd 06c24b55dh
+dd 070387b59h
+dd 0ffb0e424h
+dd 055b0921fh
+dd 055ec804ch
+dd 0c0561d85h
+dd 0a3e44723h
+dd 046078f86h
+dd 0f48a2ca6h
+dd 0aceecedah
+dd 039c035c9h
+dd 06c65aeafh
+dd 0a06c5aafh
+dd 0cda1fff1h
+dd 09b0fae25h
+dd 046092561h
+dd 0d4c064edh
+dd 00a67cfc2h
+dd 084692174h
+dd 0125122c7h
+dd 0276e642bh
+dd 093325ce4h
+dd 079bd8d0fh
+dd 0e3d11c73h
+dd 0fd1e116ah
+dd 0ed5cf39dh
+dd 02a1ee4f9h
+dd 0709acf62h
+dd 0b8794d98h
+dd 022850107h
+dd 04374636ch
+dd 0b69aa19dh
+dd 01bffa698h
+dd 07aba9435h
+dd 04f7e7386h
+dd 02d0608a4h
+dd 067a9a578h
+dd 022822ebeh
+dd 0f7d038a1h
+dd 005605d3eh
+dd 01deb0458h
+dd 0c8faa1cch
+dd 00be9a668h
+dd 094a10de6h
+dd 0f9431e49h
+dd 0ad75c029h
+dd 03920bd21h
+dd 05dd18f55h
+dd 02a1a6da0h
+dd 0e38f654dh
+dd 09195f0e9h
+dd 07da1058ch
+dd 08edc2cb3h
+dd 04dba3f0ah
+dd 0d34c55dch
+dd 0b8a5b5b2h
+dd 0c5d05003h
+dd 083127bdah
+dd 0d90cfacfh
+dd 0536872fch
+dd 0dd3ee538h
+dd 09668a227h
+dd 0f810479dh
+dd 0f1b8fcb7h
+dd 0e5128f13h
+dd 0097f98f9h
+dd 0c6fcd073h
+dd 0512d1cd3h
+dd 0b8031d9dh
+dd 012104f23h
+dd 06b266b41h
+dd 0df225a05h
+dd 045c201c7h
+dd 09930c768h
+dd 03b389df0h
+dd 0e86b9e9dh
+dd 040d3da1ch
+dd 0e5e4dc46h
+dd 0153dcb23h
+dd 0e6910c1fh
+dd 06847c300h
+dd 0cab9ab93h
+dd 02a41d0abh
+dd 07e1274a2h
+dd 07aa5191ah
+dd 0f244bda8h
+dd 053526b48h
+dd 0475362f9h
+dd 084f92d81h
+dd 0599fcf07h
+dd 06b036777h
+dd 062ab9545h
+dd 0f21b610eh
+dd 094d1add1h
+dd 02f9cc839h
+dd 001ab230fh
+dd 0da1d31c6h
+dd 0afd09adeh
+dd 0d9b7ae0dh
+dd 03e086e68h
+dd 05ca4feb3h
+dd 05bb2004fh
+dd 00459eb19h
+dd 0e18fbeadh
+dd 027922a93h
+dd 0fdedc4f8h
+dd 03a29f1abh
+dd 06fbc3e65h
+dd 0cb0911e6h
+dd 04ec1d5a1h
+dd 08b74fd38h
+dd 0a2d944a3h
+dd 00e772c1ah
+dd 027f4061eh
+dd 09a12c282h
+dd 0fa9cbf27h
+dd 03a68a8a3h
+dd 02e38178bh
+dd 07cbaa335h
+dd 04d979ccch
+dd 075861196h
+dd 0aaa59efch
+dd 03ebdd08eh
+dd 0f75de081h
+dd 05c617132h
+dd 054460440h
+dd 0716b177fh
+dd 01916f797h
+dd 05917bbb4h
+dd 011b30bceh
+dd 028846ed2h
+dd 0d30efb96h
+dd 0ce2566bfh
+dd 0711d403bh
+dd 0b49011cch
+dd 0a5f7adbbh
+dd 0132887f6h
+dd 0dc6fb491h
+dd 05ffb14e9h
+dd 0f72c6db4h
+dd 09b77e451h
+dd 01adfb1b1h
+dd 066a7098eh
+dd 03e0ada59h
+dd 0ddf9fa0fh
+dd 06ef71581h
+dd 09fda97f3h
+dd 059cdfb25h
+dd 0086393b1h
+dd 0ca398087h
+dd 01b6fff57h
+dd 007e9f97bh
+dd 0fb8556dch
+dd 099f30565h
+dd 0d0231c06h
+dd 08d25bdcdh
+dd 0d01777cch
+dd 004974812h
+dd 08907f210h
+dd 044ebb8edh
+dd 04e55d538h
+dd 0cd3cb094h
+dd 0d873bd07h
+dd 0627b1146h
+dd 0d66dc6abh
+dd 0fdf5451fh
+dd 02a9f1aeah
+dd 000392269h
+dd 04717eaddh
+dd 026072309h
+dd 0a5f671d1h
+dd 0ec47f6f1h
+dd 05116cd96h
+dd 0e1c42a1bh
+dd 0774b5f0bh
+dd 0b1b43e0ch
+dd 0eac2cde4h
+dd 0f3339324h
+dd 00a3723e1h
+dd 020085077h
+dd 0cdee2e4bh
+dd 0b99e20a1h
+dd 0f7b78282h
+dd 07439003ah
+dd 0bccc7b28h
+dd 09f746b7dh
+dd 099183a03h
+dd 0ff47af02h
+dd 0d5313076h
+dd 0b6b4c196h
+dd 084bf7b5ah
+dd 0556bf791h
+dd 09ec04771h
+dd 0a846e7f1h
+dd 0df8b950dh
+dd 0903d58f4h
+dd 0ac55dcafh
+dd 04d3a9182h
+dd 08875ccf8h
+dd 08795ac61h
+dd 0ec062bc5h
+dd 02497b23fh
+dd 04e147939h
+dd 0a9cc570eh
+dd 04e0e4836h
+dd 0b76903e0h
+dd 05d43ef0ah
+dd 011f66683h
+dd 08aed0b1fh
+dd 023c0278ah
+dd 091a73879h
+dd 0e55c181dh
+dd 0908d02b2h
+dd 030e268afh
+dd 0441ce4a6h
+dd 06cfa2173h
+dd 0080f71e1h
+dd 0648c01fch
+dd 070082a27h
+dd 04d09ba71h
+dd 06ca29532h
+dd 026509a51h
+dd 0b9418e13h
+dd 09b5ab904h
+dd 0127581e3h
+dd 0b2a50327h
+dd 0010395bch
+dd 0312aa59bh
+dd 09e47bbf3h
+dd 0c1f907c0h
+dd 0fc601c3dh
+dd 0f4944f00h
+dd 01d2b5dd7h
+dd 08f685a69h
+dd 02641f559h
+dd 0adbeea16h
+dd 0fe3fa01fh
+dd 08709ad91h
+dd 0ecef3d4dh
+dd 09ed18958h
+dd 09c414a19h
+dd 0dfc7d81ch
+dd 0d6abadc3h
+dd 07395fbd3h
+dd 020798f72h
+dd 07e30ffdbh
+dd 07918bd02h
+dd 0a71572bbh
+dd 007d84ff7h
+dd 02147c98ch
+dd 07ad382e3h
+dd 04583194ch
+dd 078c4229eh
+dd 05e0dfc1fh
+dd 04457a8a8h
+dd 0b27f5552h
+dd 06058c912h
+dd 0bbd81255h
+dd 04999981bh
+dd 0414ca715h
+dd 030d6aad5h
+dd 0c4d26625h
+dd 030362c5bh
+dd 0bc2dca11h
+dd 08a4eafc7h
+dd 0102316eeh
+dd 08038cf01h
+dd 06f68050dh
+dd 0a9608b99h
+dd 010a3d34eh
+dd 061643e4fh
+dd 01c38310bh
+dd 07023df31h
+dd 06e26b193h
+dd 0316599cbh
+dd 0f1d8136ah
+dd 03b7c2ed4h
+dd 0a97336f3h
+dd 01d12c96bh
+dd 074e336fah
+dd 0ee20f520h
+dd 0c80c370ah
+dd 03d09cd42h
+dd 0ea0d1dc8h
+dd 08b36126bh
+dd 01e2d2c55h
+dd 0a6369796h
+dd 089a3b73eh
+dd 08e322662h
+dd 07b8ed615h
+dd 04c98c38ch
+dd 056d1083dh
+dd 047d6b5c7h
+dd 0e746ef7ch
+dd 0cdc8453dh
+dd 03d05c65ch
+dd 02a1f090eh
+dd 0dbb514feh
+dd 01857477ah
+dd 0cceb47bdh
+dd 0496f70d4h
+dd 0203290f0h
+dd 051a3aa6ah
+dd 0d0630c86h
+dd 02df4ff24h
+dd 08a4a650eh
+dd 09d44cd2ah
+dd 00d9ba8f5h
+dd 0f2a21379h
+dd 05e7617d5h
+dd 08bd761f5h
+dd 00f17451eh
+dd 0512469b5h
+dd 044ea7a37h
+dd 088a2945bh
+dd 083e85ad9h
+dd 090562ff2h
+dd 05394171ch
+dd 0d8584db8h
+dd 042d26231h
+dd 097c00064h
+dd 00f1c0a9eh
+dd 05d25399dh
+dd 0e8b43737h
+dd 0875cd109h
+dd 0cb16248ah
+dd 01bc839f3h
+dd 0f4d87d0fh
+dd 0e4d62614h
+dd 0899b1400h
+dd 0b9248449h
+dd 05d8184b4h
+dd 0e5f1f251h
+dd 09e8cd2d3h
+dd 04c14a49eh
+dd 0d40fa8cch
+dd 0568fc9e1h
+dd 0dbba7bb0h
+dd 041709d00h
+dd 055badbe7h
+dd 095bbd473h
+dd 075f128edh
+dd 005a3eb91h
+dd 029beca42h
+dd 0f1e9fea8h
+dd 01484fb7fh
+dd 05ac9feb9h
+dd 0a61054d0h
+dd 00a62dd0dh
+dd 0ce3608b7h
+dd 0f84a7699h
+dd 0c084a834h
+dd 01f123f91h
+dd 0143111a1h
+dd 0c3eec6c1h
+dd 05c89a4cfh
+dd 0fa68ca7ah
+dd 04d769675h
+dd 030251d67h
+dd 025b5f324h
+dd 05fd1b2c4h
+dd 0c33214a1h
+dd 001969554h
+dd 0f0fc43b6h
+dd 092d641b5h
+dd 01c7b3133h
+dd 0200a515ch
+dd 07b26baa7h
+dd 07c44ee71h
+dd 09dd45d35h
+dd 0bb0c3678h
+dd 05ce9a365h
+dd 0492753e8h
+dd 019034c05h
+dd 0a784a165h
+dd 099a7cba0h
+dd 00728cb95h
+dd 05c72a122h
+dd 0b6f9f441h
+dd 03ca06686h
+dd 0c3dd94edh
+dd 038f33186h
+dd 02cff2513h
+dd 0c527176bh
+dd 00c949274h
+dd 090529ebdh
+dd 02ca73495h
+dd 0edc76d4eh
+dd 0b1d1d29fh
+dd 021052b87h
+dd 0b1fe51bah
+dd 03234df6dh
+dd 08ff092dbh
+dd 0fc951f8ch
+dd 0deb277a5h
+dd 07097b732h
+dd 0be6d9ae7h
+dd 0bf4d68f3h
+dd 0c2d2e6c2h
+dd 0dd53843fh
+dd 03cce5f4bh
+dd 0855a0bc5h
+dd 01985f2f5h
+dd 0ee594d60h
+dd 01ec357a1h
+dd 0fbb5aa0ch
+dd 0650f8ed1h
+dd 0b5b0ced0h
+dd 0a25067cdh
+dd 04eb18349h
+dd 0dba62d04h
+dd 044482862h
+dd 0174e2e8dh
+dd 028da9e88h
+dd 0032e004ch
+dd 05441fbe6h
+dd 079d32a59h
+dd 0c39dc4edh
+dd 05888edf6h
+dd 0209a43ach
+dd 0b0222e1eh
+dd 023d8b2bah
+dd 0331c8798h
+dd 01b7a3b8dh
+dd 028c30ab5h
+dd 0b117e305h
+dd 07bc7a259h
+dd 0920f9a17h
+dd 0ae4588ddh
+dd 008d8520ch
+dd 0ce8b1445h
+dd 02a7bb01ch
+dd 047e1d23bh
+dd 0b1acafefh
+dd 07ae27ca3h
+dd 00f7126feh
+dd 0999832dfh
+dd 0df81b143h
+dd 04bb12350h
+dd 04bd3fc57h
+dd 07033a7b3h
+dd 0e4ed80a0h
+dd 046b232a2h
+dd 04acf3765h
+dd 0ea8b2e7bh
+dd 01ddd0524h
+dd 0f42b75e4h
+dd 08ea3f3beh
+dd 0cd506749h
+dd 042224147h
+dd 013a07305h
+dd 01c85e229h
+dd 0c86da83ch
+dd 0889d5356h
+dd 05d1ef917h
+dd 003d618fch
+dd 09e8dcbd4h
+dd 0e607ab44h
+dd 06d95bd60h
+dd 02df44fdbh
+dd 0971f67d5h
+dd 00c7458b5h
+dd 0ed544006h
+dd 09e4525cdh
+dd 0cffb6959h
+dd 0dbdb75b9h
+dd 0d3b92832h
+dd 048e14d38h
+dd 0a247da2bh
+dd 076253916h
+dd 0a78c115bh
+dd 0d4bb555bh
+dd 09bce5f21h
+dd 05baa90b6h
+dd 001fd682ch
+dd 0a723e989h
+dd 04699a4cdh
+dd 0e142cfb5h
+dd 042fec6c6h
+dd 072b27096h
+dd 094de84ach
+dd 080e8cdadh
+dd 0fc35a639h
+dd 006e8105ah
+dd 06eb4c47dh
+dd 07a338228h
+dd 0fa5caf65h
+dd 0857c3bbfh
+dd 058a49f87h
+dd 00bfd4cb3h
+dd 02dec0fech
+dd 07289d0cch
+dd 080ef421ch
+dd 01467bbd0h
+dd 09298ecf9h
+dd 0856133feh
+dd 0f32a5fdfh
+dd 06e7869e7h
+dd 05e3a29bdh
+dd 0b9bbc479h
+dd 0fda49317h
+dd 0ddd9eb04h
+dd 0f66e560fh
+dd 060e14697h
+dd 07393cb92h
+dd 081f52dd6h
+dd 0ad98685eh
+dd 075a399a9h
+dd 014139074h
+dd 0a2ea3447h
+dd 09712f783h
+dd 0369c625dh
+dd 01ac368f7h
+dd 0e946998ah
+dd 07f2cfcf7h
+dd 053747276h
+dd 015303eafh
+dd 00eff1768h
+dd 01c250937h
+dd 0978828d1h
+dd 0abe78350h
+dd 08bbc5a7dh
+dd 0a29d5fb8h
+dd 0a128c5a0h
+dd 0652fda5ch
+dd 0bbefb969h
+dd 0a0a8e11bh
+dd 03f933c0eh
+dd 018a6ae86h
+dd 0a107ac98h
+dd 010dcb62dh
+dd 065fa4a1eh
+dd 0ce859f64h
+dd 076d4dc23h
+dd 0006d21a9h
+dd 0a6a67c97h
+dd 00f973d7fh
+dd 0a81edf35h
+dd 01eed80f3h
+dd 09fb11c8eh
+dd 031c08269h
+dd 0e2c5c4c7h
+dd 0e9510f28h
+dd 0a49679eah
+dd 00b8ac2bdh
+dd 014865b0bh
+dd 04d66584bh
+dd 0aa7c2d53h
+dd 0e10d0f54h
+dd 0752b1841h
+dd 00daa732bh
+dd 0f294c6d3h
+dd 0ac781c6fh
+dd 01e00e70ah
+dd 031837bfbh
+dd 092f826deh
+dd 0644edb86h
+dd 0d2fd3d50h
+dd 01ae9fb51h
+dd 06a356909h
+dd 07ab2d54fh
+dd 085c3c2f1h
+dd 060214806h
+dd 0cfdc25bch
+dd 0221f3150h
+dd 0fc0549deh
+dd 07d4c8730h
+dd 00c7241a8h
+dd 0119471bfh
+dd 02411dbf3h
+dd 0e917dcc2h
+dd 0e711c917h
+dd 0eb3556cfh
+dd 076321f10h
+dd 06bf66633h
+dd 000516bb3h
+dd 0bb40ca7bh
+dd 0c7f76482h
+dd 0eeff6923h
+dd 087a4677eh
+dd 0b26e6b2ch
+dd 08a003652h
+dd 0f7d20ed7h
+dd 0d9e04d9eh
+dd 0fac95d92h
+dd 038164a56h
+dd 017641640h
+dd 0830b0c8ch
+dd 0764a53e4h
+dd 085493aedh
+dd 0e648a823h
+dd 0ca483ea3h
+dd 0462420d8h
+dd 09279ec34h
+dd 083b9278ch
+dd 022ac0d08h
+dd 0c5e925c8h
+dd 0406d13aah
+dd 0783ed9cch
+dd 0b6154e00h
+dd 019a230a9h
+dd 07a8970d1h
+dd 0ad1e321eh
+dd 001c91221h
+dd 0fb9b6612h
+dd 00d92d2a4h
+dd 0397ee68dh
+dd 066828f47h
+dd 0bdd4e684h
+dd 005e267d5h
+dd 0881b02ebh
+dd 07991d231h
+dd 0fe525970h
+dd 08d875029h
+dd 0e8c1f1e5h
+dd 09a8662d2h
+dd 0106cb69eh
+dd 0ae108789h
+dd 0b2430736h
+dd 016020251h
+dd 005dcc9ddh
+dd 00287a37fh
+dd 05e388794h
+dd 0776db8ddh
+dd 026b8059fh
+dd 05ac22e8ch
+dd 064d2feb4h
+dd 0f1a27d1fh
+dd 0441df2a5h
+dd 07d4444aah
+dd 077982e47h
+dd 02ed39ccch
+dd 0ec3d5e69h
+dd 0dad72a46h
+dd 0673539f8h
+dd 07417ddcah
+dd 09f5f5ebdh
+dd 0cf1689adh
+dd 02b38e625h
+dd 02d07009bh
+dd 071603c35h
+dd 015d62278h
+dd 075cc92b7h
+dd 0178ba187h
+dd 00b70c333h
+dd 0b3c59f87h
+dd 019239684h
+dd 04eccc065h
+dd 0d71cfe51h
+dd 0c30503cfh
+dd 073919868h
+dd 065539a5ah
+dd 0f86b81c8h
+dd 0016ac07ah
+dd 0802142bdh
+dd 013ea48bdh
+dd 09880a237h
+dd 040eac4f4h
+dd 04810e2a4h
+dd 04327db92h
+dd 0139edb5ah
+dd 034ed842eh
+dd 093970ed7h
+dd 04f4214d8h
+dd 0c3db8da9h
+dd 0b82e7fdbh
+dd 05c003ac8h
+dd 0b3fa7e3bh
+dd 0cd913bddh
+dd 08d304d7fh
+dd 0f6419905h
+dd 0e80231c3h
+dd 096a43a65h
+dd 0ca059624h
+dd 0a3bc8ed1h
+dd 059c070d8h
+dd 0b9e37dc5h
+dd 0db6d19cah
+dd 0f19917d8h
+dd 0a1a0f075h
+dd 0fe61a9d4h
+dd 0388d4abbh
+dd 079da3f5fh
+dd 06be05f3fh
+dd 0a45d271ah
+dd 057540b57h
+dd 06a4a1bdfh
+dd 00ee8b1aeh
+dd 06a05a463h
+dd 0d92bde48h
+dd 0fd6881b0h
+dd 0e6ca6652h
+dd 048c11371h
+dd 05cc00882h
+dd 08ae5c86ah
+dd 0df0543f9h
+dd 00f44ac23h
+dd 081b662e8h
+dd 00f537a25h
+dd 0df300180h
+dd 03782e433h
+dd 06a053b75h
+dd 06a87f395h
+dd 009a2a5a8h
+dd 01991788eh
+dd 03c28a3ach
+dd 0e03902a4h
+dd 041d18ceah
+dd 0c6c686b5h
+dd 0b5b30405h
+dd 09f64dbadh
+dd 0616c1af1h
+dd 0889d7f14h
+dd 0478fbb73h
+dd 00509b499h
+dd 04985d18ah
+dd 02bc1ae77h
+dd 0a6462d7eh
+dd 07fe3bb31h
+dd 0ec09b255h
+dd 0f36cdb03h
+dd 01d37f4c4h
+dd 0effa4524h
+dd 0d5c41774h
+dd 042369595h
+dd 0d67e544dh
+dd 00fd1f4c4h
+dd 07b1300e8h
+dd 02bd7600eh
+dd 03c2f18dbh
+dd 0fc0cdd45h
+dd 0486ef8dah
+dd 0d9d0ae1bh
+dd 0495bd579h
+dd 0ab6ed04ch
+dd 07d2464f4h
+dd 0060cd7b1h
+dd 091b64032h
+dd 0e577d7e2h
+dd 07f50325eh
+dd 0fd50db1ch
+dd 00a474974h
+dd 0fae8838dh
+dd 05b13c1c1h
+dd 07b75bd83h
+dd 0b9eedd10h
+dd 053e41f1fh
+dd 018995f8dh
+dd 00427b57fh
+dd 08674681ah
+dd 0728d177dh
+dd 0949dd6bfh
+dd 0519c80e5h
+dd 042fd8afeh
+dd 05b1d086eh
+dd 0149b92e9h
+dd 0984e7872h
+dd 04f087ea5h
+dd 0f3441ee2h
+dd 080bc7af7h
+dd 00165e8a3h
+dd 00ab2f132h
+dd 057c9a489h
+dd 0cd82c9f5h
+dd 0bb062be1h
+dd 08c240bb1h
+dd 06f830b5fh
+dd 06f7526feh
+dd 03c527f2fh
+dd 0fdeca1c5h
+dd 07f45649fh
+dd 0eb104bf0h
+dd 029db5767h
+dd 0106a668ah
+dd 0a9cf4c6dh
+dd 061fce98fh
+dd 001f5eb03h
+dd 096022c95h
+dd 01a7da8d3h
+dd 0d668fcb7h
+dd 033102daah
+dd 0ffee9c54h
+dd 0c39fdcf2h
+dd 0fecd9f39h
+dd 04e731cf9h
+dd 0f2c109f0h
+dd 0baa84d24h
+dd 04cc7b931h
+dd 0d5981c04h
+dd 01df538bah
+dd 00181eb5ch
+dd 0bb1337aah
+dd 0de5b6497h
+dd 042bbcc29h
+dd 03ecb93cah
+dd 045bd909bh
+dd 0f3fee312h
+dd 0d3addccah
+dd 0158238b7h
+dd 069ba85a5h
+dd 0289025c9h
+dd 041a93c66h
+dd 0fe94d25bh
+dd 043963713h
+dd 061451bf7h
+dd 0ae719095h
+dd 050fd7bcah
+dd 006e1ff6eh
+dd 00a870b77h
+dd 08c4f0967h
+dd 04b423db0h
+dd 0b8d0973bh
+dd 0746429edh
+dd 0b531c646h
+dd 020ba79b4h
+dd 0e949b149h
+dd 06cd957d2h
+dd 091016992h
+dd 015f05efch
+dd 082da1a37h
+dd 074cb415eh
+dd 0335c6d2bh
+dd 0c41b738ch
+dd 0920a8837h
+dd 05f6178bfh
+dd 068ad7c09h
+dd 0670e6749h
+dd 05262d15fh
+dd 00d5f0cd6h
+dd 0975c1dd5h
+dd 08425d0cfh
+dd 08ff6d4a3h
+dd 0ccf888d7h
+dd 01e59f5b3h
+dd 07eec151fh
+dd 04dc7b208h
+dd 00ecc40c6h
+dd 0cbc39cfdh
+dd 0c131c111h
+dd 0b009a054h
+dd 0a468daceh
+dd 02e538d69h
+dd 0f9978e7fh
+dd 0525059f8h
+dd 0f8bd8436h
+dd 0e53b2b93h
+dd 03bec6addh
+dd 078f87619h
+dd 0e0ac96e7h
+dd 0f23b6683h
+dd 0f5117313h
+dd 071d07f8fh
+dd 0a2e8cfb0h
+dd 04a0c0177h
+dd 0870de46eh
+dd 09d575f51h
+dd 0383e49bbh
+dd 0e30ccb87h
+dd 09fc55a50h
+dd 0572c87f4h
+dd 079d44af1h
+dd 09610d344h
+dd 07482e11fh
+dd 024b5dcebh
+dd 0e7280ed6h
+dd 03d456dd9h
+dd 0c572ef77h
+dd 00fb938d4h
+dd 06bc47456h
+dd 0cf0ae594h
+dd 073f776aah
+dd 0a6dce0aeh
+dd 092cb4f24h
+dd 05d31dc48h
+dd 07ae8b74bh
+dd 085f2230eh
+dd 050ca908fh
+dd 033e3f940h
+dd 064b48f1ch
+dd 0df9e2f7eh
+dd 05bd75f8dh
+dd 01b7141d6h
+dd 027a4cfcdh
+dd 0e09128e0h
+dd 0214152c4h
+dd 03f934563h
+dd 03ddd1c3eh
+dd 067dde8aah
+dd 08ec33e3bh
+dd 09f3d8d14h
+dd 0fc848816h
+dd 02034f858h
+dd 0177b63ebh
+dd 068f35f67h
+dd 0fc85b4c4h
+dd 04a107f4eh
+dd 04f7cddf3h
+dd 04aa13e86h
+dd 06566d48dh
+dd 05656e3a2h
+dd 0bbd122d3h
+dd 057e195c5h
+dd 0b3f2286bh
+dd 09cec6592h
+dd 0457139b7h
+dd 08fccbdc6h
+dd 07ea77bd7h
+dd 07bfa7623h
+dd 0cb614856h
+dd 013b030c7h
+dd 0ffc4bc5eh
+dd 0e52d865ah
+dd 024eea138h
+dd 06f715ed3h
+dd 0fbc0e136h
+dd 08ddd3a4eh
+dd 009cac651h
+dd 00cfd35f2h
+dd 0996ba05eh
+dd 0ea2c53f8h
+dd 0888575f5h
+dd 0f13c9135h
+dd 03b2f52c9h
+dd 09f3b5003h
+dd 053c36911h
+dd 019934307h
+dd 01804582fh
+dd 0521e5ce2h
+dd 0c7452ef8h
+dd 00be31c3eh
+dd 011ef47e8h
+dd 04ddffb48h
+dd 0eb532afeh
+dd 0e939726fh
+dd 0284fc3b1h
+dd 0baa367b8h
+dd 09b7ccd97h
+dd 0287d76d5h
+dd 0cebbd9a2h
+dd 0e9ac70e0h
+dd 08378186fh
+dd 030ff9d57h
+dd 020525253h
+dd 0d4869f1ah
+dd 0575b0470h
+dd 0a9bdaba0h
+dd 00bfe8468h
+dd 0bfec9de1h
+dd 0d9530432h
+dd 0d492c963h
+dd 0a15e72c6h
+dd 05e5c218bh
+dd 0836febddh
+dd 0688ee694h
+dd 09bad23e8h
+dd 010ca349eh
+dd 041870e6ch
+dd 087df22e7h
+dd 029c9b8cch
+dd 06835e00fh
+dd 0f85cc6b4h
+dd 09da0dc93h
+dd 0b7bec450h
+dd 07c726926h
+dd 0c23f6e25h
+dd 025005660h
+dd 03618c843h
+dd 0f0f2e9ffh
+dd 04ff7f090h
+dd 072bdf56ah
+dd 0c5c41ae4h
+dd 0b4262ef1h
+dd 0eec5c01bh
+dd 06cafbf59h
+dd 05a39311ch
+dd 055c16058h
+dd 052640197h
+dd 00d65fcc2h
+dd 0b82ca833h
+dd 0d44ac187h
+dd 08d3e6934h
+dd 0e534e202h
+dd 000cf981fh
+dd 0d0b8c6cdh
+dd 0c263874ah
+dd 09fccc717h
+dd 054c9043bh
+dd 052f8dc79h
+dd 03658a0b1h
+dd 0301b8d14h
+dd 04eaf8012h
+dd 01c218bb3h
+dd 07ce32466h
+dd 0e446f14bh
+dd 0a62f1256h
+dd 0bb425ddch
+dd 046afa475h
+dd 06ae39a73h
+dd 088ba3edch
+dd 0ebd4c417h
+dd 0972664deh
+dd 07755fc2ch
+dd 018c58ec3h
+dd 04e5981a4h
+dd 09cc19182h
+dd 0da4ccf03h
+dd 0db566e8bh
+dd 042013a99h
+dd 02ed49d45h
+dd 045033ab3h
+dd 05d1c3d8ah
+dd 0adc5d89bh
+dd 02f9edf62h
+dd 0440b63d2h
+dd 0e4db08b7h
+dd 008b7c8cah
+dd 03facda9bh
+dd 0aee7743ch
+dd 037a1d095h
+dd 0673b5c1fh
+dd 06be9b997h
+dd 0e0662cc0h
+dd 0e0ac4247h
+dd 0e0e99d8bh
+dd 0b3ee318dh
+dd 00fcff290h
+dd 059658341h
+dd 014f87fb5h
+dd 0dc85399dh
+dd 0bfc8cb9ch
+dd 0caa1c260h
+dd 0e79c4b77h
+dd 0bd5aa34eh
+dd 01d8aaa0ah
+dd 087631e2dh
+dd 03c1cb2e6h
+dd 06d0bbbe0h
+dd 07fa8e401h
+dd 0c6eced17h
+dd 022454e0ah
+dd 0bfa65726h
+dd 079b5c75eh
+dd 035dd07f7h
+dd 05c3d0a41h
+dd 0a30483a0h
+dd 080322b24h
+dd 0f9a6e989h
+dd 0d3964b8bh
+dd 0f0f3cae9h
+dd 0cdb62502h
+dd 0420abec9h
+dd 02e72674eh
+dd 0537fc842h
+dd 043a06390h
+dd 00638b634h
+dd 02cb9ad8dh
+dd 0f4be0ff5h
+dd 093838212h
+dd 0726adeebh
+dd 0403a112fh
+dd 0cad92bb3h
+dd 0e86be4dbh
+dd 050117ed9h
+dd 074a38c4eh
+dd 0b602dc3fh
+dd 06cbb7396h
+dd 01fc4d77dh
+dd 02c231241h
+dd 0b72721f3h
+dd 0fcf2c074h
+dd 059a0464ah
+dd 0d98adb9ah
+dd 0889283a2h
+dd 00cef2c9dh
+dd 0db6c7137h
+dd 01e10966dh
+dd 0ac5e0466h
+dd 0830a7c52h
+dd 0d3cbfcb7h
+dd 0c86ad739h
+dd 08d39d692h
+dd 0b37e9cd3h
+dd 03ec754c4h
+dd 05835e14eh
+dd 0c29eeed5h
+dd 06c8f26d5h
+dd 00be325bah
+dd 08c428240h
+dd 0112b6f78h
+dd 090f3b820h
+dd 00ebfe4fah
+dd 0f4b86d8eh
+dd 06515dfc8h
+dd 09472d03ah
+dd 07672fedbh
+dd 0b5a9a7bfh
+dd 03c55a131h
+dd 0ada5c94eh
+dd 0e3bbf289h
+dd 0804407a2h
+dd 0d330be53h
+dd 0f923b19fh
+dd 03bd56407h
+dd 02a91de0eh
+dd 0a20ce325h
+dd 0d9c4bfb2h
+dd 084ecc08ah
+dd 094416f9eh
+dd 0a807d2afh
+dd 0d758ad05h
+dd 085f518dfh
+dd 0bf2fc6d3h
+dd 01c97cc7eh
+dd 05b1bb6c6h
+dd 0df3661c5h
+dd 0a83e4972h
+dd 0134049dah
+dd 032dedb8dh
+dd 01e029e8dh
+dd 01e047c4ch
+dd 0bd972e71h
+dd 07fba2961h
+dd 0aee7fc45h
+dd 0c9f22ea7h
+dd 0947a910eh
+dd 01f7f1382h
+dd 0c7f5ca50h
+dd 0fa44ccefh
+dd 04e9d6375h
+dd 05e5f1288h
+dd 0473df1d4h
+dd 078e2a7aeh
+dd 0adb7bb21h
+dd 08837f818h
+dd 089314ccfh
+dd 09f0ee3ebh
+dd 09c76f488h
+dd 077c4542ah
+dd 00c91d86ch
+dd 075aad4d8h
+dd 04f5e9e0fh
+dd 04e0ace61h
+dd 0d20cd11fh
+dd 04bdf8dcah
+dd 0df51d963h
+dd 0a8c71d78h
+dd 025c4dd62h
+dd 004163025h
+dd 0657b506ah
+dd 069db3629h
+dd 0bb662f69h
+dd 0fe6551abh
+dd 02a43d269h
+dd 023634746h
+dd 045100298h
+dd 004db56f4h
+dd 05859dbe6h
+dd 0a511d5beh
+dd 0cd8891e5h
+dd 0dcba26bfh
+dd 01566fe08h
+dd 09f00ea2eh
+dd 06e4660a6h
+dd 0b3ca59f4h
+dd 0876feb5ch
+dd 0e1d48fdch
+dd 01c35a413h
+dd 037d90084h
+dd 03695f585h
+dd 03f6a038ah
+dd 04e1a7b2ch
+dd 015f19498h
+dd 0e665fa31h
+dd 0a891fec7h
+dd 061a1e5feh
+dd 0680e6c27h
+dd 0446df6feh
+dd 0623931ffh
+dd 0dcf241fah
+dd 076161eedh
+dd 0343340a4h
+dd 0cbd72c22h
+dd 033955ce5h
+dd 0594c6650h
+dd 0fa9fb2ffh
+dd 0f4bf7a98h
+dd 0bf5d56bfh
+dd 033caca71h
+dd 01b027c23h
+dd 02fde2b45h
+dd 03605d034h
+dd 013d19d4eh
+dd 0d4da71cah
+dd 0aac5bcc4h
+dd 06cb27314h
+dd 0547bbd01h
+dd 0678f4084h
+dd 06b281c4ah
+dd 041ff4acdh
+dd 0b33a8131h
+dd 0aa03a88dh
+dd 03c9aaa60h
+dd 0a791ef90h
+dd 0a1e15a91h
+dd 06eea2f77h
+dd 0b123fe09h
+dd 0ad939d7fh
+dd 05ca06e87h
+dd 0d995b984h
+dd 038b5e6b8h
+dd 07b92b2c0h
+dd 01d24d7b7h
+dd 0f9fa64b6h
+dd 0e3a8e5cch
+dd 0df83c73eh
+dd 08bae9eaah
+dd 0906c1b29h
+dd 06a96d036h
+dd 02908048ch
+dd 005aae3f3h
+dd 0d285f2f5h
+dd 02f91af32h
+dd 0cc18177bh
+dd 0fd372918h
+dd 099fb5288h
+dd 03e992412h
+dd 0dce9364ch
+dd 0625b399fh
+dd 0ca703829h
+dd 06e9da3c6h
+dd 0b5292d4ch
+dd 0196dd174h
+dd 01d1f78a0h
+dd 00c521651h
+dd 0ea568c73h
+dd 0be10f631h
+dd 0bb739af1h
+dd 06ab2f7d9h
+dd 0f02da751h
+dd 0d57ca47bh
+dd 06ef9c202h
+dd 040c50f93h
+dd 07eb06bb6h
+dd 000af0e1ah
+dd 0b2f643b9h
+dd 033af96e3h
+dd 0aa67d45eh
+dd 03bc4448ch
+dd 0b67022a8h
+dd 0d3927961h
+dd 015430a2fh
+dd 06c215632h
+dd 088267bc3h
+dd 0e50cec3eh
+dd 0a186b8bah
+dd 046e9b776h
+dd 0cd5fe3f0h
+dd 020f36f48h
+dd 0a227987ah
+dd 055b5969eh
+dd 016eca3e8h
+dd 0dc8c47f8h
+dd 04de1fad8h
+dd 0cfc8308ah
+dd 00115e799h
+dd 0b8c9c99fh
+dd 0da972f6dh
+dd 00a9621b4h
+dd 0e53207a5h
+dd 0d86a24f1h
+dd 04e05f294h
+dd 0448754cdh
+dd 013a7844ch
+dd 02ed261f3h
+dd 0a6aec65bh
+dd 05d70720bh
+dd 0276cdf31h
+dd 0a13ee4f7h
+dd 08b895c46h
+dd 01c5a91eeh
+dd 0dd58b5ddh
+dd 0ba6c4c45h
+dd 011db5d6fh
+dd 0cbbf5aa5h
+dd 0863a2750h
+dd 0a79a0e87h
+dd 0c8aebab1h
+dd 06dc5c6bfh
+dd 074f6d187h
+dd 01939d7efh
+dd 0e1d6179ch
+dd 05b36d285h
+dd 0a9e88230h
+dd 0a742867fh
+dd 0854e38c9h
+dd 0504767d5h
+dd 044f31b1ch
+dd 0a0a75dd1h
+dd 0bde52985h
+dd 051aae66ah
+dd 0a41789b1h
+dd 03aaca68fh
+dd 016c845e3h
+dd 05ba7a7f1h
+dd 0e62772f7h
+dd 0fdd391d8h
+dd 0fe18407eh
+dd 0407c6f4fh
+dd 07f93df8fh
+dd 06a83b5edh
+dd 0a00c7728h
+dd 096aea4c5h
+dd 08e5c8999h
+dd 0133b8b08h
+dd 0d80bf930h
+dd 01f295903h
+dd 0e510eb98h
+dd 0817a8b11h
+dd 07bb91376h
+dd 07f3cba8bh
+dd 0f14b2338h
+dd 0aa6f1ed6h
+dd 01b9dfab8h
+dd 026424feah
+dd 0b1f5be45h
+dd 006df4bebh
+dd 00b2b63c7h
+dd 0238bf1b7h
+dd 04b1af7feh
+dd 06cd065ceh
+dd 08e815bcbh
+dd 0b23d62c0h
+dd 091c225feh
+dd 0be874437h
+dd 093896607h
+dd 0baa823b1h
+dd 0981f4910h
+dd 0f16d5ac7h
+dd 007ee20d5h
+dd 07c165090h
+dd 03b66d7bah
+dd 05a908618h
+dd 05739fa97h
+dd 0b98a3ed0h
+dd 07c8d9624h
+dd 03becb9b2h
+dd 056de1f15h
+dd 07a17d559h
+dd 0c6e53f24h
+dd 006474c90h
+dd 06e9952c2h
+dd 016482629h
+dd 037cd6f7ah
+dd 0d9314852h
+dd 0c8e2bbe8h
+dd 07b9645abh
+dd 0c42322c4h
+dd 0fa500867h
+dd 0fd6d09b3h
+dd 0440dcd24h
+dd 073a1a969h
+dd 0727d577ch
+dd 0b677eaa1h
+dd 0b40aae00h
+dd 08d84c22ch
+dd 0085a71c7h
+dd 035b085e8h
+dd 0af4871f5h
+dd 0ed4356dah
+dd 02055a650h
+dd 00020f70bh
+dd 0aad886d7h
+dd 093a0bac4h
+dd 0d90ee3a2h
+dd 0dadeec9fh
+dd 0931a9fa2h
+dd 0604c7c24h
+dd 0479d3c84h
+dd 04bf69784h
+dd 0bac89630h
+dd 0348f872fh
+dd 097b2865fh
+dd 00825f622h
+dd 049453901h
+dd 0361c24fah
+dd 0957d75aah
+dd 0a6a8744ah
+dd 0cbe800a0h
+dd 04c529493h
+dd 06d4fc2dfh
+dd 00e1b9a5ch
+dd 072751dfbh
+dd 0f901c203h
+dd 0f6628a12h
+dd 0791ac3d1h
+dd 0a9e565ach
+dd 06a02862ah
+dd 021a8bc06h
+dd 023b944f6h
+dd 04522f020h
+dd 0533274b9h
+dd 05fcd4831h
+dd 065cec700h
+dd 0099afc5fh
+dd 07dacd9b7h
+dd 01d078c0dh
+dd 06d5205e2h
+dd 02672f7fch
+dd 031ea8e44h
+dd 0822c2653h
+dd 0752e405fh
+dd 0a8e1dc35h
+dd 016a0be2ah
+dd 05acb90eeh
+dd 061aa798ch
+dd 01d2889d5h
+dd 0503341e2h
+dd 0b5e80c51h
+dd 025fd7c81h
+dd 0d75cfe32h
+dd 05f267adch
+dd 0139b7f26h
+dd 03277781bh
+dd 0b8312bc8h
+dd 018db01bdh
+dd 07d8bcb5dh
+dd 0f24fd0dbh
+dd 0a4b86e49h
+dd 0c0398d34h
+dd 06cbdb343h
+dd 0a1a88370h
+dd 0d78fb249h
+dd 06902bfdah
+dd 02c5f875ah
+dd 00fe86855h
+dd 08445c8c1h
+dd 0f99a3c34h
+dd 0b56fc6d5h
+dd 044940f9fh
+dd 09ea3d19ah
+dd 0ec9cdbdah
+dd 0c92733a6h
+dd 0b619622eh
+dd 0c17a62b8h
+dd 0703105dbh
+dd 0536e3c3bh
+dd 0c0433093h
+dd 0ed3e5ec4h
+dd 002e8145ah
+dd 0fed183fdh
+dd 052941a8eh
+dd 0ef8de681h
+dd 0e97819e1h
+dd 0c688c700h
+dd 031ec6aach
+dd 05a98b895h
+dd 098166609h
+dd 0c988a3c3h
+dd 0dea6c52eh
+dd 02c7123adh
+dd 0b78ca0feh
+dd 073891f38h
+dd 0ef8bc773h
+dd 0d6bcebdfh
+dd 02d786ce3h
+dd 0721fd315h
+dd 04b730038h
+dd 051fd027bh
+dd 0d5590151h
+dd 0f7e63209h
+dd 099897c29h
+dd 09dfee55bh
+dd 029c781efh
+dd 0573de164h
+dd 0560b2fa6h
+dd 044702e65h
+dd 01fe7f9f5h
+dd 0d6878ba0h
+dd 0a22d80c9h
+dd 0c872fc3ch
+dd 04a450e4ah
+dd 018f6889ch
+dd 070077ea2h
+dd 0c4672e26h
+dd 032390ceah
+dd 0d6dcc145h
+dd 0290d2c82h
+dd 09bf8c905h
+dd 032098437h
+dd 0981aaf67h
+dd 07982e9ach
+dd 0059ed2a3h
+dd 08cbf8d59h
+dd 01c50c8a6h
+dd 02e50083dh
+dd 0ff19e2b6h
+dd 0c1414508h
+dd 00d890d75h
+dd 081f6e061h
+dd 0ff0bf957h
+dd 0aeb3ee8dh
+dd 09eb3cfb6h
+dd 0a6f06758h
+dd 0a1ce4a9fh
+dd 07bcbfcfah
+dd 056f4fa82h
+dd 0a55956c6h
+dd 078f92654h
+dd 054a78d75h
+dd 0e6ee144ah
+dd 08a1f0bcfh
+dd 01c41e8f4h
+dd 0c145ace2h
+dd 023fd0f99h
+dd 0faa1e402h
+dd 0b16ede8fh
+dd 033a32626h
+dd 006e6ff76h
+dd 0e1557628h
+dd 0c930b618h
+dd 025f45ed4h
+dd 062b88407h
+dd 0fa0d1088h
+dd 09d65e410h
+dd 0d650b06ah
+dd 01c4ad8dbh
+dd 070faae2ah
+dd 0db13066eh
+dd 059a56d68h
+dd 0adce63b0h
+dd 0264e5d4eh
+dd 05a2d4cdch
+dd 0fb86d35dh
+dd 048fce2e7h
+dd 037b5eeaah
+dd 0812d3db8h
+dd 065ecfcc1h
+dd 0e383b579h
+dd 0f8dfb1bfh
+dd 072cf451bh
+dd 0ca6addcah
+dd 0640da822h
+dd 041faac43h
+dd 0e52b054ah
+dd 0f6406509h
+dd 02d360a56h
+dd 07e81950ch
+dd 0db3935b4h
+dd 0fa8df83bh
+dd 09264a32ah
+dd 0258101a2h
+dd 0c31d06d7h
+dd 05959ef17h
+dd 001fbc960h
+dd 06613626fh
+dd 024342bc8h
+dd 0cafbeda8h
+dd 0e79fd7fch
+dd 04915f6bdh
+dd 0da443984h
+dd 0c27a1c22h
+dd 0b174ce1bh
+dd 08064b620h
+dd 07d600642h
+dd 045bfb83ch
+dd 072a200e6h
+dd 0ae24dde5h
+dd 0795d1e62h
+dd 0c8de8280h
+dd 0fa78e3efh
+dd 0e3c3b1a1h
+dd 0edde9dbah
+dd 023abdd1eh
+dd 084fc9137h
+dd 08de78e01h
+dd 0705cea5bh
+dd 0c973cc23h
+dd 028ce71b5h
+dd 0255b626fh
+dd 028b12307h
+dd 0de971939h
+dd 0ca952636h
+dd 04ca52146h
+dd 0f10c4001h
+dd 0ce433845h
+dd 03e71c2bdh
+dd 030fade7eh
+dd 0884942e6h
+dd 084a1db7ah
+dd 0ae25c3e5h
+dd 055948f25h
+dd 0d126e0bch
+dd 068262cd2h
+dd 0b0e16fdeh
+dd 034b49b14h
+dd 0c6be8f5ah
+dd 0bae91cf6h
+dd 079008600h
+dd 03cd8d1a9h
+dd 0b750e5e8h
+dd 0002761fch
+dd 01b036910h
+dd 02add636fh
+dd 0c035a51ch
+dd 0814af297h
+dd 0caaa2bc1h
+dd 0c522e208h
+dd 0b786f64fh
+dd 029301c8fh
+dd 08b0724fdh
+dd 075e38ac6h
+dd 0faed94bfh
+dd 030898caeh
+dd 0cdb9fdf6h
+dd 03f6237b8h
+dd 0cf790384h
+dd 0686cf16ch
+dd 0cbe8622ch
+dd 01c87d222h
+dd 0468c06f7h
+dd 02493ef04h
+dd 0c084a3cah
+dd 0bb232ea0h
+dd 0d14cf6b8h
+dd 0eee4a6c8h
+dd 03fef2419h
+dd 01bf07b7dh
+dd 009fda77eh
+dd 0af2008dbh
+dd 0401f49ddh
+dd 097fbe5dah
+dd 03852fa59h
+dd 0d7e59a9ah
+dd 0bdc336e6h
+dd 04b1d03cch
+dd 0bc945821h
+dd 0be6a906bh
+dd 0da22b324h
+dd 0e99b0b8eh
+dd 05e27ab28h
+dd 054933eb9h
+dd 0018cdf07h
+dd 06d31214fh
+dd 009cf9078h
+dd 0b44d4648h
+dd 06fc2ad03h
+dd 03ffa1660h
+dd 0a8bed62fh
+dd 05d462735h
+dd 0179b3472h
+dd 0be2067b4h
+dd 00e4f8fbbh
+dd 00477ec47h
+dd 0d6b65b37h
+dd 0362475f1h
+dd 010e23819h
+dd 0511c2e64h
+dd 05d2980dah
+dd 0b6391a9bh
+dd 05872cb42h
+dd 0fc02a755h
+dd 05160eb00h
+dd 06c1732fch
+dd 09694ba77h
+dd 0134d1824h
+dd 0849b646eh
+dd 04f08b7e7h
+dd 0f7271f22h
+dd 0591c20c3h
+dd 043cf270fh
+dd 051517d7ch
+dd 02be2b05eh
+dd 020b75dceh
+dd 020d30194h
+dd 07118b067h
+dd 049683879h
+dd 0fa20fd87h
+dd 0b30c6ab9h
+dd 0466bae74h
+dd 06eae9cf5h
+dd 01e307768h
+dd 03c17cf38h
+dd 0f215d14dh
+dd 0dddbc8dah
+dd 06ab133f0h
+dd 0182675f7h
+dd 099583cc3h
+dd 0e7d6ec64h
+dd 06207457ch
+dd 07cf69512h
+dd 0b2c5dc06h
+dd 01334f75ch
+dd 089559453h
+dd 0eba4a69eh
+dd 0e3bf1793h
+dd 01c513da6h
+dd 0f34ffa37h
+dd 047cbfa78h
+dd 04966d7dch
+dd 0d5a698d1h
+dd 000044728h
+dd 089ac0e63h
+dd 032f406d6h
+dd 013b69ec0h
+dd 082602b2ah
+dd 07640423ah
+dd 0d6db87f8h
+dd 0032197a2h
+dd 0e13b7c25h
+dd 0d485e326h
+dd 08d0d6261h
+dd 0c2b757e4h
+dd 0dd195752h
+dd 00e61a2f2h
+dd 0674d9a29h
+dd 0fea434ceh
+dd 0100f00beh
+dd 027e0e700h
+dd 0608dd811h
+dd 0e9fbabefh
+dd 05b5b9ac7h
+dd 087c0bd71h
+dd 06f8b0d12h
+dd 0eb4b7591h
+dd 0cdb117b0h
+dd 008751592h
+dd 02e408590h
+dd 0c4f51ed3h
+dd 0be42dea9h
+dd 01a28bc96h
+dd 0e3e53321h
+dd 00d815d2bh
+dd 016fd2fe9h
+dd 02e604020h
+dd 02898142ah
+dd 0401abf62h
+dd 0189f24b7h
+dd 08e4c8b43h
+dd 06ccffddch
+dd 0d4e86654h
+dd 0207ddf79h
+dd 04eda10eah
+dd 01a414435h
+dd 0fe0eee03h
+dd 0172a5b2eh
+dd 0221fb3c8h
+dd 025e9e910h
+dd 01862b7cbh
+dd 0a667bcech
+dd 026b6df52h
+dd 02b41658eh
+dd 0db3926c4h
+dd 05ef14f45h
+dd 0ec1d5e58h
+dd 089e5233bh
+dd 0ecd39e96h
+dd 06226759eh
+dd 0612bf63fh
+dd 0053a44b5h
+dd 0494a465bh
+dd 0498c24f3h
+dd 05234e9fch
+dd 0e8c658e7h
+dd 0b00ace56h
+dd 040cad084h
+dd 0b76faf47h
+dd 0c04f01eeh
+dd 01a2bde81h
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679907.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679907.inc
new file mode 100644
index 0000000..b6a7afd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679907.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 000000907h ; Patch ID
+dd 011142015h ; DATE
+dd 000030679h ; CPUID
+dd 01bb67b21h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000907h
+dd 000000000h
+dd 000000000h
+dd 020151113h
+dd 000003201h
+dd 000000001h
+dd 000030679h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 09ff20397h
+dd 05cd6681ch
+dd 058f8151fh
+dd 0f4374211h
+dd 072d1f8feh
+dd 09d5a3b36h
+dd 0719e3d4ch
+dd 0a068ff13h
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 06772e846h
+dd 065b29d7ch
+dd 0e524c84ah
+dd 0c553ed94h
+dd 081bf1b4bh
+dd 0a84d1a24h
+dd 066d8c5c3h
+dd 0ed6e6d18h
+dd 092501ebah
+dd 07c67193dh
+dd 07d6fb582h
+dd 006d5d495h
+dd 0b2bfcbdch
+dd 078e96bdch
+dd 064be6d41h
+dd 022ce91e5h
+dd 036769802h
+dd 076828544h
+dd 09a72e3fbh
+dd 07f7642eeh
+dd 09f6315b4h
+dd 0729b95bch
+dd 0ec9b91a6h
+dd 0c5d0e2b9h
+dd 09ce3b12fh
+dd 00ae2ba1eh
+dd 01ae23c9ah
+dd 00622f7ebh
+dd 03cd72040h
+dd 0ff4c6792h
+dd 08d7b60bch
+dd 0c08d8d48h
+dd 035f4d6d1h
+dd 01ceee339h
+dd 07850d61eh
+dd 0887a7d96h
+dd 03b9f1baah
+dd 0fe8b2438h
+dd 0b2aea0b8h
+dd 0fb348e3bh
+dd 0e548dd86h
+dd 032747d88h
+dd 0af3f3a3ah
+dd 0026255ech
+dd 057e4eb50h
+dd 0bfb97676h
+dd 0b00446e8h
+dd 07ea126cbh
+dd 05540c952h
+dd 018d6396bh
+dd 0dc632da8h
+dd 0fdca83f5h
+dd 04e7d1032h
+dd 0e8aed571h
+dd 0f25659adh
+dd 017e858adh
+dd 0b362dab6h
+dd 0323ed666h
+dd 0c73ba100h
+dd 0633e2371h
+dd 09df76e32h
+dd 066f93c2eh
+dd 03088b092h
+dd 03e3bbe42h
+dd 0d50599d4h
+dd 0726a8b63h
+dd 0bf8caabeh
+dd 0f8a0285fh
+dd 08d5710ffh
+dd 013d2a259h
+dd 000bc1929h
+dd 07c8c3961h
+dd 0e365082ah
+dd 08229a4f1h
+dd 08449e2a1h
+dd 0c6d63422h
+dd 013a0a9d6h
+dd 0470c7479h
+dd 02051cd56h
+dd 09e27bbc4h
+dd 019157d70h
+dd 05d44b033h
+dd 014e63baeh
+dd 09c5c3d3ch
+dd 0a915b16eh
+dd 0bd5c2d4ah
+dd 072827158h
+dd 092ac01eah
+dd 03e8d6e8ah
+dd 05a31c4adh
+dd 04501bac6h
+dd 0ac3a3652h
+dd 05ebc6049h
+dd 0826fa656h
+dd 0e9ea06dbh
+dd 035c1f5bch
+dd 0a83995d5h
+dd 06fc5687bh
+dd 09cbe98e2h
+dd 09ac1c38ah
+dd 0eafb2839h
+dd 0abf2724ah
+dd 072ec32beh
+dd 034b92859h
+dd 028ff566bh
+dd 08ec7f2c8h
+dd 0ee68d197h
+dd 010193843h
+dd 04e4292a5h
+dd 0a8e04ab1h
+dd 0a824f746h
+dd 03b97d8deh
+dd 0a200919fh
+dd 0b6b2cbd7h
+dd 07371b52dh
+dd 0ffd77f21h
+dd 087305fa8h
+dd 02e19239eh
+dd 0310f8affh
+dd 0bfddf186h
+dd 02deae0cah
+dd 0a19105cdh
+dd 027387310h
+dd 010f05817h
+dd 08db4bf38h
+dd 0d480ecc0h
+dd 09476493ah
+dd 04a7b2ce8h
+dd 02a8a1af2h
+dd 06f86bac4h
+dd 0d8be8fc8h
+dd 0f8a0e9e0h
+dd 00867ba60h
+dd 0cf95fe73h
+dd 01fb5fa46h
+dd 00fc834abh
+dd 033bd06cdh
+dd 0b53ae2deh
+dd 0535640bbh
+dd 0e8d74879h
+dd 0193e7188h
+dd 0457650f3h
+dd 08e93cfc6h
+dd 0edf290a6h
+dd 0af3e60a1h
+dd 01a8d6871h
+dd 057a0c92fh
+dd 035d68834h
+dd 082aa8e5fh
+dd 0bec43a5ch
+dd 0698f5ae1h
+dd 09e722104h
+dd 0b0bf7dfeh
+dd 072c6b65fh
+dd 06d9cc599h
+dd 0b89aeb2fh
+dd 0041a830eh
+dd 0eb418a1ch
+dd 063a9bde3h
+dd 04731c5cah
+dd 0bb54a1e6h
+dd 01582d41dh
+dd 02ed6fee0h
+dd 06322bcd0h
+dd 0125f0d82h
+dd 0f49ddfc3h
+dd 0688a975ch
+dd 075d2a6d4h
+dd 0d62575aah
+dd 0a5917c9eh
+dd 01f6105adh
+dd 0ec96a88fh
+dd 02c2d009dh
+dd 04200f506h
+dd 0cc735cb0h
+dd 0f3a66223h
+dd 0ad87dbb1h
+dd 00c39082eh
+dd 083d127b8h
+dd 097fc59bah
+dd 096597f9ch
+dd 0b945665ah
+dd 0b21ff57fh
+dd 0552b8b5fh
+dd 07d3ed0bdh
+dd 0c6d87e0dh
+dd 035dd6804h
+dd 02c33324ah
+dd 0d6f92afch
+dd 07647a133h
+dd 0a78d0b5ah
+dd 0c3a178d2h
+dd 032dff4d3h
+dd 096ce6ef0h
+dd 04474bf08h
+dd 0fc7610ebh
+dd 04c60c67ah
+dd 0a9a11088h
+dd 094009264h
+dd 06b35680eh
+dd 0303775efh
+dd 0c3905a9eh
+dd 0cfc050d0h
+dd 06813c180h
+dd 0eb4d3337h
+dd 0cb8b759ah
+dd 07f67506ah
+dd 0a5cb91e0h
+dd 0204d575eh
+dd 0da8607ceh
+dd 0a78cace8h
+dd 064c38cb0h
+dd 00dec9d59h
+dd 0c1905075h
+dd 0a182b8deh
+dd 0b9e341dbh
+dd 00a55ea5bh
+dd 0e6cf8f58h
+dd 0a6fd472fh
+dd 04057533ch
+dd 0a1f71eb0h
+dd 091833141h
+dd 0aade7395h
+dd 0be9c043bh
+dd 0ca8b4abah
+dd 0900a0fc7h
+dd 011d053e3h
+dd 0ae3c4979h
+dd 01dd61bb4h
+dd 056d573bbh
+dd 0ac7bfe08h
+dd 0684921d8h
+dd 0585cfda6h
+dd 0263e0fb9h
+dd 008f37473h
+dd 0b76fd6d9h
+dd 02288db23h
+dd 001771f1bh
+dd 0367c55bbh
+dd 0733d57d8h
+dd 0a7afcfach
+dd 075db5c24h
+dd 0a4e633d6h
+dd 013ce3c62h
+dd 079131bffh
+dd 071b38e06h
+dd 0da1f4b63h
+dd 0f587d188h
+dd 0cd4c52c7h
+dd 0f97f904fh
+dd 0c69eed65h
+dd 095f9f990h
+dd 071e6e5ffh
+dd 0ffe678eeh
+dd 06857aa48h
+dd 0d401541dh
+dd 037591276h
+dd 06b9f82dah
+dd 0abf66670h
+dd 066996535h
+dd 05029bf59h
+dd 0c39431feh
+dd 0ec28e993h
+dd 06a82ea94h
+dd 00e242f25h
+dd 0383129f8h
+dd 0a1569cbdh
+dd 0696d976dh
+dd 00bbbc200h
+dd 050fae2efh
+dd 0d2918371h
+dd 0486585c2h
+dd 0dc8537bah
+dd 0b78b4f59h
+dd 0a0e0a332h
+dd 0df9cacd4h
+dd 0c43eeebdh
+dd 0c5d61e0ch
+dd 0ddb1d25ch
+dd 0e8afd89bh
+dd 0fab89855h
+dd 00f709988h
+dd 07912b1e5h
+dd 0f5efc16bh
+dd 0cd8b4881h
+dd 00fbd6600h
+dd 0c241a081h
+dd 032dbe1b8h
+dd 0100df0d6h
+dd 029f9c953h
+dd 0067453bfh
+dd 0b9750ee9h
+dd 02a544628h
+dd 0841211f8h
+dd 0258d446fh
+dd 0443c30b9h
+dd 0be77ce73h
+dd 0f6879131h
+dd 00184a32fh
+dd 05c51e16ch
+dd 09b810a88h
+dd 0d97b8ff1h
+dd 004e37549h
+dd 0680a537fh
+dd 0fe0953a1h
+dd 05fcf2c5dh
+dd 0b28813fah
+dd 07c2ebc5ah
+dd 0968250d7h
+dd 07f02ab90h
+dd 02500d01eh
+dd 01939ad67h
+dd 0cb910104h
+dd 0ca50276fh
+dd 0da231e37h
+dd 0f2e19c21h
+dd 05f68942ah
+dd 01aa131f4h
+dd 06c913a8fh
+dd 01dd0ad83h
+dd 062c1b715h
+dd 038a6fbc5h
+dd 0261623c9h
+dd 0eb4141c4h
+dd 0381876ebh
+dd 0d31060f5h
+dd 0640b37edh
+dd 01f295c3dh
+dd 06d139d36h
+dd 08f56eb64h
+dd 004fbc2f0h
+dd 0fc08c91ah
+dd 0ecda6752h
+dd 00b7cb772h
+dd 09820d79bh
+dd 014595090h
+dd 0e030b10ah
+dd 065ccd4e9h
+dd 019a14138h
+dd 005781049h
+dd 09b8a4d10h
+dd 0b4328494h
+dd 0b4acd9a4h
+dd 0db8b7001h
+dd 0757b8633h
+dd 0f463ed77h
+dd 0dfd6596ch
+dd 01690f86fh
+dd 01fd540e1h
+dd 04db655fdh
+dd 0d20e262fh
+dd 0d07bb9f5h
+dd 0708b274ah
+dd 05235bcfeh
+dd 0c7b72a40h
+dd 0333e561ch
+dd 0843106deh
+dd 0b162e832h
+dd 07d9efd56h
+dd 0a320c38ch
+dd 028d61a38h
+dd 0ae536073h
+dd 000354d8ah
+dd 03482f59ah
+dd 01c384f9ah
+dd 0a8cd4924h
+dd 0ab08dc8bh
+dd 0f16528e0h
+dd 0994138e5h
+dd 08d798dbch
+dd 0be39756eh
+dd 076043dbch
+dd 0ee350d7eh
+dd 024bef88bh
+dd 024f1a1feh
+dd 0bf0036c9h
+dd 024155e05h
+dd 05c692e4dh
+dd 01dbea48ch
+dd 0d14965f5h
+dd 06ea610b6h
+dd 01d4f64f9h
+dd 0c71fc272h
+dd 0f4685c32h
+dd 05d99467eh
+dd 0b494e498h
+dd 096370fb8h
+dd 0b08ba563h
+dd 0cc8d91c0h
+dd 03dece190h
+dd 0bc69da02h
+dd 02c3cd048h
+dd 0d710f050h
+dd 0efc8334eh
+dd 0fcba6838h
+dd 003b2bba1h
+dd 0d0fa9869h
+dd 054e8c169h
+dd 0a8c561ddh
+dd 0435cae1eh
+dd 0f6245a32h
+dd 0271ccdcch
+dd 020176c28h
+dd 0870bb9e4h
+dd 054579daeh
+dd 01b5cd835h
+dd 0717cea6dh
+dd 02d618f52h
+dd 019e0c87bh
+dd 020a55445h
+dd 0b124f206h
+dd 00e6a958fh
+dd 0dbbd4634h
+dd 05b66e305h
+dd 06de28bf7h
+dd 02b3287fch
+dd 0f80918edh
+dd 09e4c0bb0h
+dd 0021b73adh
+dd 0b01bcc36h
+dd 074e2563eh
+dd 03a88efe1h
+dd 0cfc2c607h
+dd 0a95d0586h
+dd 06d2b3db4h
+dd 0d130405eh
+dd 01909a6b4h
+dd 04c5512bch
+dd 0d24d1f0ch
+dd 0beeefe1ch
+dd 021eb211ch
+dd 0652e7132h
+dd 032d29147h
+dd 0cb3b5de3h
+dd 0b52996e0h
+dd 00c7fa034h
+dd 0c1cf2042h
+dd 053e3b5f6h
+dd 07ba7db1dh
+dd 098eb9c1fh
+dd 033dbf178h
+dd 0d5dc4496h
+dd 0b97b09afh
+dd 0bd836a06h
+dd 077ecbadeh
+dd 05422c8f2h
+dd 08770dc29h
+dd 0d08a78beh
+dd 02c777963h
+dd 0f09ff310h
+dd 0b5583422h
+dd 01a30d528h
+dd 03fce4cd7h
+dd 0e36f5addh
+dd 0fce10784h
+dd 0b84d7d3ah
+dd 07df8e002h
+dd 00b33c1c3h
+dd 0f290492ch
+dd 0ca5c7350h
+dd 02f5de4b9h
+dd 076c2c863h
+dd 068510bfeh
+dd 00d35547ch
+dd 0935cb00ch
+dd 0b17f24eeh
+dd 010c6a240h
+dd 05a0fa022h
+dd 0a61d4ddbh
+dd 08fa88620h
+dd 09631fad9h
+dd 0c7b14c9dh
+dd 00a0fd459h
+dd 0be9422f5h
+dd 00f5d8dbch
+dd 07e8bd9eah
+dd 0dcf31fd3h
+dd 02c63324eh
+dd 0536683b9h
+dd 0e327e2eah
+dd 0f74c331eh
+dd 08791eee5h
+dd 0d85d9d47h
+dd 0a833f7adh
+dd 0efa7c012h
+dd 0497230e8h
+dd 010f2728dh
+dd 071e23633h
+dd 0a02dc1bch
+dd 0292ed5b8h
+dd 0ae464ae9h
+dd 0b4aa2659h
+dd 0809d927ah
+dd 0d9dcac60h
+dd 05e693190h
+dd 006472476h
+dd 05b99c348h
+dd 06c96f917h
+dd 0f0301a3ch
+dd 02da4c050h
+dd 07865e54ah
+dd 0abd4811ah
+dd 02ec89513h
+dd 066c392dfh
+dd 0ac88a190h
+dd 04936f8e2h
+dd 06d679656h
+dd 0a97b507ah
+dd 0abe0f045h
+dd 0bba9682dh
+dd 04e0bd565h
+dd 07cfa84a6h
+dd 0354aa063h
+dd 0ede4730fh
+dd 04cda5918h
+dd 0aafe2d24h
+dd 05f81a2ffh
+dd 0a2ffe504h
+dd 00c5dd530h
+dd 055bc9b55h
+dd 06a718be6h
+dd 0a507cb7dh
+dd 03ec4d3b1h
+dd 042c11b5bh
+dd 008656577h
+dd 0a7d2035fh
+dd 0861cc213h
+dd 04af78b00h
+dd 0f1bbf5e2h
+dd 0bea9e8aeh
+dd 0423dd39bh
+dd 0bda85a43h
+dd 08d958f9eh
+dd 06d567a4ah
+dd 0b456235bh
+dd 0c74fe34bh
+dd 0f7873fach
+dd 0fefb2075h
+dd 0fe4a1f35h
+dd 00d6a4767h
+dd 0888ed164h
+dd 0709dbd71h
+dd 0b6e4a29dh
+dd 0c011c6e7h
+dd 03cf109f0h
+dd 01986b98eh
+dd 0bf2cc274h
+dd 0ce409ffeh
+dd 09c4c8623h
+dd 07b77d7a0h
+dd 0f8bc87ffh
+dd 00b3b2ee4h
+dd 055e87f9ch
+dd 0f35c36fbh
+dd 00070e80ah
+dd 061845539h
+dd 022e97f5ah
+dd 06c61fb52h
+dd 0e86aee1dh
+dd 00c550c43h
+dd 02a53300ah
+dd 049314087h
+dd 0c5a408b7h
+dd 066f41fcch
+dd 0a959cacfh
+dd 0bdb043d7h
+dd 084f4e0a7h
+dd 0dde37e6eh
+dd 0e419f9d5h
+dd 059fc1590h
+dd 0fd66b539h
+dd 0ca253fddh
+dd 04167fc8dh
+dd 018d97991h
+dd 088d308cfh
+dd 058b023e5h
+dd 0e907440ch
+dd 03862ae25h
+dd 00bcfe9afh
+dd 07a9ec29fh
+dd 03d826c23h
+dd 038dd7a60h
+dd 032fd3388h
+dd 0260dc621h
+dd 065e22d36h
+dd 003a5bfb6h
+dd 04ee427bdh
+dd 036f86b5bh
+dd 07452d3e0h
+dd 08f90e7ebh
+dd 09c6c077eh
+dd 04eeb4aa3h
+dd 0f0982864h
+dd 0071a7ec8h
+dd 0b187da9bh
+dd 046f72137h
+dd 07fecc165h
+dd 0a8e80a3dh
+dd 008b01531h
+dd 0a6561acbh
+dd 0046da7d1h
+dd 07f1bcdfah
+dd 04a7453e5h
+dd 0332c7f05h
+dd 0ffeeca13h
+dd 084589c20h
+dd 08d1b21c3h
+dd 0d2818c5ah
+dd 00ccc591eh
+dd 0602fb4e7h
+dd 068c00f51h
+dd 05dfa00d2h
+dd 001321923h
+dd 0e04f531eh
+dd 0b83720cfh
+dd 0fcd46b6bh
+dd 0c3948e3eh
+dd 08ad3e1dbh
+dd 071587d59h
+dd 0e12901ech
+dd 05394beb3h
+dd 0f2f900a4h
+dd 0f99fe16ch
+dd 0f9879125h
+dd 08b70ec24h
+dd 013f4c55fh
+dd 069897c84h
+dd 0ec3fcf9fh
+dd 0ab18ff0ch
+dd 08da7ef4ch
+dd 0046a2635h
+dd 03318e8beh
+dd 0584f6332h
+dd 0dcc8a7c9h
+dd 0e7284f61h
+dd 0e1acd54dh
+dd 02602fc15h
+dd 0a54a8b3fh
+dd 056606005h
+dd 0f1a3b5bdh
+dd 0b9101e85h
+dd 0e553602ah
+dd 08561f96dh
+dd 08ccfd92ch
+dd 044148de2h
+dd 0ea9dd708h
+dd 0611eda18h
+dd 0fc5099b5h
+dd 099c6c8bbh
+dd 02e9743aeh
+dd 0dd230092h
+dd 0a78c0013h
+dd 01769b354h
+dd 02cbb5aa3h
+dd 02b4b98d4h
+dd 0d6836060h
+dd 0bbda494eh
+dd 09da52b37h
+dd 0b47b0f38h
+dd 0601286ebh
+dd 0b538057fh
+dd 08e4969efh
+dd 0b8c8ba83h
+dd 097d64423h
+dd 08b9a784fh
+dd 057b0982dh
+dd 03cee944eh
+dd 0ee7f3d98h
+dd 0469be4aeh
+dd 0cc7dde00h
+dd 07828c594h
+dd 054379e6fh
+dd 0b9b9f4aeh
+dd 019ee466bh
+dd 0e40fb1ddh
+dd 09042d20dh
+dd 0af08f708h
+dd 09be3b23fh
+dd 009e9ac3dh
+dd 054878384h
+dd 0b09b1494h
+dd 074b85923h
+dd 01f22094eh
+dd 01df86ea5h
+dd 0799c6f08h
+dd 0018c330dh
+dd 0f71ba9b2h
+dd 0896c4daah
+dd 0e76999f4h
+dd 0b89e506ah
+dd 024c19e80h
+dd 02a3d5671h
+dd 0bcff7d2bh
+dd 0bf34b35bh
+dd 08dceeb18h
+dd 0674c433eh
+dd 0c8d40449h
+dd 009d233d2h
+dd 0bad23ccah
+dd 08588617ch
+dd 07bce8cf6h
+dd 0f5bfad35h
+dd 0483d1ef6h
+dd 004aeb34ch
+dd 01a2020aah
+dd 09615496fh
+dd 03845930bh
+dd 0f105a616h
+dd 09cc3df57h
+dd 0dfebce7ah
+dd 0672f08b6h
+dd 02b7e6bc3h
+dd 0533f2f59h
+dd 051f83ceeh
+dd 05f17ec76h
+dd 04d3bc7abh
+dd 074d96d8dh
+dd 0e5dd41cah
+dd 05e50ab74h
+dd 0c1f4158ch
+dd 044aa419dh
+dd 0d2a58fcch
+dd 05e4670a5h
+dd 0c630b6bbh
+dd 0067e97fch
+dd 05e77b1a8h
+dd 019c54d1fh
+dd 041dababah
+dd 0d7fab291h
+dd 06b563511h
+dd 0f9527656h
+dd 05e950f1dh
+dd 0dcc2c457h
+dd 0a4d50b66h
+dd 08729c959h
+dd 0ff5a699dh
+dd 0a2c7aa88h
+dd 098853020h
+dd 07e99128eh
+dd 01b18c529h
+dd 03924ae53h
+dd 015d06278h
+dd 032cc2616h
+dd 0b05ef910h
+dd 05ef225bbh
+dd 0ba41b203h
+dd 0d57bdc9bh
+dd 0506010f6h
+dd 0834715f5h
+dd 01f5280e0h
+dd 0cc861e06h
+dd 0e916cab2h
+dd 04b0a5f91h
+dd 0c925438fh
+dd 0c52a5f1ah
+dd 00b5276c9h
+dd 0ca7c71e0h
+dd 06be7c65ah
+dd 08df4621fh
+dd 0e4761ef3h
+dd 06b143a8ch
+dd 02d8c7dc8h
+dd 051e7de8dh
+dd 009dbf48bh
+dd 0d886a6d2h
+dd 09cb516f2h
+dd 0cbcf1e91h
+dd 0112c8465h
+dd 06b6a0e63h
+dd 02e5e9848h
+dd 0e5bc949eh
+dd 0afafb25ch
+dd 0f65e1de3h
+dd 04c070678h
+dd 055bf4477h
+dd 0bfa65513h
+dd 0be658838h
+dd 0b300d9b9h
+dd 011ce2beah
+dd 04d8c22d0h
+dd 0f1d56d81h
+dd 0904065b3h
+dd 04062296ch
+dd 049a15659h
+dd 0c4722640h
+dd 0a70e8342h
+dd 0efa39980h
+dd 0242d0d1bh
+dd 06b0b18c4h
+dd 023bf2822h
+dd 01127d16ah
+dd 0de1116b4h
+dd 0e6b9c834h
+dd 0bbbd01e3h
+dd 0df505e49h
+dd 064289d80h
+dd 0334c42b3h
+dd 098f49973h
+dd 0d2391bc9h
+dd 0007bc4feh
+dd 0d330222ah
+dd 06c1d3461h
+dd 0fb5ea7e7h
+dd 0d7e4ed8ah
+dd 0f4f70cb2h
+dd 00209effbh
+dd 058ef5944h
+dd 0ab457419h
+dd 0a0713ea0h
+dd 04e7bf625h
+dd 0c9d1fcddh
+dd 08a38f452h
+dd 02074f75ah
+dd 0185bfe8fh
+dd 069ce9fa2h
+dd 0e6600abbh
+dd 0d93a3b37h
+dd 0a6190ea0h
+dd 015e5b72dh
+dd 0d9ce771ah
+dd 0179c03bdh
+dd 060544d37h
+dd 0e5a1c39eh
+dd 0844c4377h
+dd 0d9e7220ch
+dd 07361b75fh
+dd 034c44686h
+dd 0b0e749dah
+dd 0a27df403h
+dd 04babe5c4h
+dd 0925a55d3h
+dd 0b9da6597h
+dd 017b54848h
+dd 054b1c205h
+dd 06c992b6eh
+dd 009409644h
+dd 05878fe76h
+dd 07e46e8e9h
+dd 06743e51dh
+dd 0d0ab24d1h
+dd 07296ae41h
+dd 00ae71a52h
+dd 0a330745fh
+dd 044536944h
+dd 0f4ef6b57h
+dd 09d29ae50h
+dd 01f736c61h
+dd 083c04461h
+dd 04dbf32f0h
+dd 049b93c3eh
+dd 02f29ad7eh
+dd 02bc95121h
+dd 0c60847ceh
+dd 0f63ebb93h
+dd 0fff49557h
+dd 0e9d23abch
+dd 00d01655ah
+dd 04fc6960bh
+dd 006ea0ccch
+dd 0aca9e850h
+dd 0b9df2f50h
+dd 0a80ade03h
+dd 0bcc16f69h
+dd 06733c2d8h
+dd 013ac66e9h
+dd 0ea2caccdh
+dd 0223110b1h
+dd 09d802a90h
+dd 070e576d8h
+dd 03ca77c19h
+dd 04203e86bh
+dd 0afc00be2h
+dd 0408f5513h
+dd 0435f1bffh
+dd 0f968496ch
+dd 00bbb07f7h
+dd 0fc4cda2bh
+dd 0cf4cde51h
+dd 0611c36d9h
+dd 05f55fc2bh
+dd 00a4bbddbh
+dd 08f589d4bh
+dd 0024c749ah
+dd 0cddd09d9h
+dd 0fa5fa091h
+dd 049498d2dh
+dd 00595aa35h
+dd 0fa64639ch
+dd 0595e5195h
+dd 09234e6ach
+dd 045a3339eh
+dd 057c04c72h
+dd 0f549d4b9h
+dd 026850fa2h
+dd 0b831ede2h
+dd 0e8d2e9a0h
+dd 0ee65f7cah
+dd 0b6147324h
+dd 082ad1fd9h
+dd 0cf3692abh
+dd 032e15eeah
+dd 058edc810h
+dd 0e0f9fa71h
+dd 0aa7eee7dh
+dd 09b517024h
+dd 0e3d2c9d4h
+dd 05cc96cc5h
+dd 0609b1abfh
+dd 0e7f270c1h
+dd 0385850a8h
+dd 043cb3f86h
+dd 084ca0812h
+dd 09e1d7807h
+dd 0384894bdh
+dd 0d5620a46h
+dd 05232ef0fh
+dd 0ce6419cah
+dd 06eaaecfah
+dd 0c3a71253h
+dd 0cd9ec07eh
+dd 0c1644a0eh
+dd 0be79430eh
+dd 0c01b1c6bh
+dd 09e0f1747h
+dd 0565e6112h
+dd 04601d397h
+dd 0d50cdd6ch
+dd 03ec312b0h
+dd 05816d1d1h
+dd 0299a6011h
+dd 0b4624506h
+dd 0998b9c86h
+dd 08999e5f4h
+dd 0bac9fd84h
+dd 0f6bcd6ddh
+dd 019a29654h
+dd 0d59d07dbh
+dd 076674e24h
+dd 0e5afd8b0h
+dd 052ba4df1h
+dd 0d992ecceh
+dd 0a56cd673h
+dd 04291a755h
+dd 02dd94c84h
+dd 097ed9cf7h
+dd 0dcb95718h
+dd 06bd1dd9ah
+dd 0d4c287cbh
+dd 0c8c547cch
+dd 0786721f6h
+dd 0f6647304h
+dd 0e557f0a3h
+dd 0924b7fc4h
+dd 09656b649h
+dd 00b6f47c8h
+dd 0e4ca5061h
+dd 0ee56e983h
+dd 0172a9584h
+dd 0f401c032h
+dd 024c1e612h
+dd 063ed3387h
+dd 0de2266a9h
+dd 012d3972bh
+dd 054d1933ch
+dd 09f71434ah
+dd 0a8d4945ch
+dd 07d8d1389h
+dd 04d7d2859h
+dd 0a50abeb6h
+dd 0da6384e3h
+dd 061cbd50ah
+dd 0c2dcc310h
+dd 03f4049a6h
+dd 043ad3d76h
+dd 06e79e815h
+dd 028d7fe23h
+dd 0e28158c6h
+dd 0388be7cah
+dd 0a4a6bfech
+dd 062d6f4e9h
+dd 0ae7f9bb4h
+dd 0206ae3bfh
+dd 0dc34109eh
+dd 0f9726481h
+dd 03c5ecfb3h
+dd 035eb9cfdh
+dd 0385d9864h
+dd 02d46e528h
+dd 074f817e6h
+dd 09ac71c9dh
+dd 03d7e9814h
+dd 094738448h
+dd 04de596e3h
+dd 0e2379d2ah
+dd 038c0d290h
+dd 011ae8046h
+dd 02d5cb18ah
+dd 02e37e512h
+dd 02877b618h
+dd 0a855d6ffh
+dd 0a6eb0a8ch
+dd 003e7c342h
+dd 0e2636c99h
+dd 01af75f0ah
+dd 079472c24h
+dd 0ce8e0633h
+dd 08bc1ab59h
+dd 031c460eah
+dd 026a29259h
+dd 0cfdc4150h
+dd 02ce2c6feh
+dd 0096c1411h
+dd 06c90be77h
+dd 0449c8782h
+dd 0c29c1251h
+dd 0dda0a977h
+dd 0cad1683ch
+dd 022960402h
+dd 02473cb10h
+dd 045b20993h
+dd 095b8bf42h
+dd 0c4f911e0h
+dd 0c17d900ah
+dd 0e01d35c3h
+dd 003f08523h
+dd 0222ad2f2h
+dd 02d0f76aah
+dd 0bd28d638h
+dd 0d75bef71h
+dd 050741237h
+dd 0a8286944h
+dd 0d1d488bbh
+dd 08e186ef4h
+dd 0a4d24c22h
+dd 04b95564fh
+dd 0b64a6770h
+dd 04905e99bh
+dd 04582d1afh
+dd 00ce08946h
+dd 04be7d807h
+dd 059276afeh
+dd 0047084a6h
+dd 04a492570h
+dd 0217bf92eh
+dd 003bfab8ah
+dd 016adcd46h
+dd 00302302bh
+dd 097cb2da2h
+dd 06436642ch
+dd 0f5cf21b7h
+dd 02b53aabfh
+dd 082a57391h
+dd 058767c0ah
+dd 0d24baabch
+dd 0ea824c3ch
+dd 0e2ebb1c1h
+dd 0dbd50010h
+dd 0da508817h
+dd 03d217622h
+dd 06656de1ch
+dd 08e0ddbech
+dd 0480df9feh
+dd 0f1d1d4ech
+dd 0b30361a9h
+dd 0025a5c93h
+dd 055e16f8eh
+dd 05d1647d0h
+dd 06ecf0230h
+dd 0602ce59ah
+dd 07571cc62h
+dd 088ebfecah
+dd 0df0a6c82h
+dd 0a1baa54eh
+dd 023275a08h
+dd 094f9f5aah
+dd 0459d59bdh
+dd 0ab84708ch
+dd 0f1ca2affh
+dd 03002fe96h
+dd 085f2224ah
+dd 041b70e71h
+dd 02219943fh
+dd 014a02c0bh
+dd 0ec19666bh
+dd 0f278c41ah
+dd 01f46747dh
+dd 0798c6689h
+dd 059dd9e3bh
+dd 05e421cf5h
+dd 06c246effh
+dd 0ee685b91h
+dd 0512d14a1h
+dd 091994062h
+dd 0495f3f54h
+dd 0f8d57985h
+dd 0e08979f9h
+dd 0873cd298h
+dd 064933a39h
+dd 0cb2963e5h
+dd 0a4d02cf6h
+dd 02ae201aah
+dd 00ec7c65bh
+dd 0e299b41dh
+dd 025dc352eh
+dd 0a4fdd588h
+dd 0124820b9h
+dd 0e8e482e2h
+dd 0f9d344eeh
+dd 0ca74237ch
+dd 0e2fb5895h
+dd 0020cf70dh
+dd 0fbfd8ee7h
+dd 04e26af4ch
+dd 05c957e75h
+dd 05d146aa0h
+dd 0c6abb5cdh
+dd 004386310h
+dd 062f21e38h
+dd 0fd229deeh
+dd 089ed2219h
+dd 0081fc417h
+dd 06542db78h
+dd 0263c3547h
+dd 04bf541d7h
+dd 0c0e3f198h
+dd 0e1a64328h
+dd 0ff4efcb9h
+dd 03806ba30h
+dd 09dfbe2f1h
+dd 0c3038f8ch
+dd 041fa00e3h
+dd 08f4a0b2ah
+dd 088ca66aah
+dd 0c2d97203h
+dd 083321bbfh
+dd 083b87b6dh
+dd 0907f3b07h
+dd 0ab76ea90h
+dd 0373ddf7ah
+dd 0d412b494h
+dd 05e8f782bh
+dd 0cfa86fb7h
+dd 02d49e02eh
+dd 0ccb5302dh
+dd 08cb47c09h
+dd 0087e1426h
+dd 04c8857eah
+dd 0d997bbe1h
+dd 0d6b471d6h
+dd 0e65ef4b9h
+dd 07bd09e70h
+dd 0f791e789h
+dd 0ababa050h
+dd 03ba1bb59h
+dd 08dba954ch
+dd 01aaf6ff0h
+dd 0ea91ba9eh
+dd 096083a20h
+dd 0970d18e9h
+dd 0d17a742ch
+dd 0c3fdd92bh
+dd 0aacc669bh
+dd 00c731e51h
+dd 059fe4a4dh
+dd 091411d26h
+dd 0e2331f43h
+dd 047e837a5h
+dd 081dbf307h
+dd 02632550ch
+dd 0f5e7b58fh
+dd 0c5be27dfh
+dd 077f21ba9h
+dd 061eab9afh
+dd 05083c1c0h
+dd 01ed7ec96h
+dd 0843a7165h
+dd 0e0773d91h
+dd 0b7130d74h
+dd 0994352b7h
+dd 01f0bd596h
+dd 03bcc333ch
+dd 0cc3cfd1fh
+dd 0cde90f22h
+dd 00a2aff13h
+dd 022d13777h
+dd 0bd092728h
+dd 00be3aa66h
+dd 041d87825h
+dd 019aec673h
+dd 00ea0d577h
+dd 066587054h
+dd 0d0382c70h
+dd 0ab372464h
+dd 028868897h
+dd 09ef32ec9h
+dd 0c39fff05h
+dd 0e0a2e7eeh
+dd 0c449c808h
+dd 0c7882984h
+dd 0163d8effh
+dd 015e173fah
+dd 0df2e157ah
+dd 0ac1c19b4h
+dd 026ea9e0ch
+dd 0976bbb5dh
+dd 0e2c12f92h
+dd 0297b723ch
+dd 0d9a647e4h
+dd 0898042e6h
+dd 074a1c2a1h
+dd 0605db8a4h
+dd 0dfcb085fh
+dd 02f181520h
+dd 0eb5b4c75h
+dd 0e05364a0h
+dd 016384920h
+dd 030b917dfh
+dd 08dbe5bf5h
+dd 06b1128dch
+dd 0374c8b7ch
+dd 0a11dea87h
+dd 07eb16882h
+dd 034fec4d4h
+dd 0c210dfe2h
+dd 009a80a24h
+dd 0206d91b0h
+dd 04c936fe9h
+dd 0b475c18ch
+dd 079f28c47h
+dd 0acf691aeh
+dd 0441b9ce0h
+dd 04451b4dah
+dd 0a01cd56fh
+dd 07fd383dah
+dd 0df81bf37h
+dd 08c60fe52h
+dd 07173f3b3h
+dd 0d5696d15h
+dd 02bc8b912h
+dd 08900bbe7h
+dd 00d78ae01h
+dd 06cbef7e3h
+dd 0db9d9832h
+dd 024c11f97h
+dd 0108904d9h
+dd 008fe6671h
+dd 0314c72d2h
+dd 0e09625bdh
+dd 0f9d8b5f7h
+dd 0306ab7cbh
+dd 090e8bbdbh
+dd 0a8ff06e5h
+dd 0c4d83259h
+dd 0a24d06eah
+dd 0ee721c88h
+dd 0f6a91eaeh
+dd 09dc2a550h
+dd 02ff48853h
+dd 00b993b21h
+dd 078f938ebh
+dd 02a8381fbh
+dd 0ae382370h
+dd 0c0d66492h
+dd 0eaae4096h
+dd 00fee014fh
+dd 081e79fd9h
+dd 056b5e8d9h
+dd 091306535h
+dd 0a287220eh
+dd 086f8b790h
+dd 0d0debcd4h
+dd 0eb4a964bh
+dd 0621c2795h
+dd 00d86c812h
+dd 0ca926c19h
+dd 059df4e8eh
+dd 088f30749h
+dd 00259279dh
+dd 04a9a00b9h
+dd 004dfec30h
+dd 0106bf8fbh
+dd 0bc46b994h
+dd 052c75757h
+dd 03d5c6f91h
+dd 0ea80a0d4h
+dd 0ffecce7dh
+dd 057cfdc42h
+dd 0e62bae97h
+dd 0f2d85240h
+dd 00eff5cfbh
+dd 02f97b3ach
+dd 067eadb2fh
+dd 08700fd44h
+dd 056d38d2ch
+dd 0f7722870h
+dd 0ba98df5bh
+dd 01d6c43cdh
+dd 00827f44ch
+dd 08c849bbbh
+dd 084e6c7afh
+dd 0e515aee0h
+dd 0b7be77beh
+dd 08df76554h
+dd 0dec3a5a1h
+dd 037bfd1d7h
+dd 0eeab3d29h
+dd 0ff8539d8h
+dd 0e3b166b9h
+dd 098829077h
+dd 03b7814c8h
+dd 073e73bf4h
+dd 00c4e70c7h
+dd 0b0466d7fh
+dd 07bae9e1eh
+dd 07b0f112eh
+dd 0d48c3e2ch
+dd 0e4638219h
+dd 0e0bf9bf4h
+dd 02b33df1dh
+dd 005d31926h
+dd 03e084f1ch
+dd 0b2958621h
+dd 091ebe9f6h
+dd 0276fd42bh
+dd 0193e908ch
+dd 0c89dc677h
+dd 09655ad49h
+dd 064401e9bh
+dd 09e25af33h
+dd 085d857aeh
+dd 09ad6890fh
+dd 0c4213c1ah
+dd 023358dfah
+dd 09ce7e133h
+dd 0058b6a46h
+dd 05ae71853h
+dd 0a2314ca6h
+dd 09c488b9eh
+dd 012d53dfah
+dd 0fe04b519h
+dd 0ee957708h
+dd 0d719111ah
+dd 0c45dfd92h
+dd 09eb61d16h
+dd 0ca46829bh
+dd 0c764f1a4h
+dd 0b41013fah
+dd 09419767ch
+dd 0d9bfa907h
+dd 04eda6cd7h
+dd 089fd20d2h
+dd 0aba0c3fah
+dd 0bbd45fa3h
+dd 0e7193310h
+dd 0acec3c11h
+dd 0cd2d0b8ah
+dd 05b1a0039h
+dd 006303e80h
+dd 00c8a2ebeh
+dd 0a0616925h
+dd 0e427cf40h
+dd 09d792942h
+dd 0230fa314h
+dd 0d70ad823h
+dd 0b68210bbh
+dd 0c2fd2513h
+dd 0b92e0841h
+dd 0cb1b532ch
+dd 009c9c2d1h
+dd 0add5686bh
+dd 053c0cec7h
+dd 06d9d1195h
+dd 0e15ac88ch
+dd 0664420fdh
+dd 0e7b4d70dh
+dd 0b2e60d93h
+dd 0b76c38f0h
+dd 021738609h
+dd 03eed6aeah
+dd 05a9dc70bh
+dd 09e8cd8b2h
+dd 0bec57f38h
+dd 0243e4b26h
+dd 0d4b562a9h
+dd 0d9c66f6fh
+dd 0d4a9b8a1h
+dd 06312b665h
+dd 0613a3891h
+dd 071851e6bh
+dd 0552090bch
+dd 050cf53bch
+dd 09ae2e84fh
+dd 0eaf68f04h
+dd 09c947d9ah
+dd 0e6ee3ca8h
+dd 05ac8b525h
+dd 011750aa1h
+dd 049a906f6h
+dd 05616b457h
+dd 07ffe0a23h
+dd 01956d673h
+dd 0cbc91998h
+dd 02c9f60eah
+dd 021fef64bh
+dd 09120e74dh
+dd 0cafa39c4h
+dd 02d93ac58h
+dd 0394d9436h
+dd 0deac46d0h
+dd 022bc9584h
+dd 0e7e820dbh
+dd 019167d53h
+dd 024eb968ch
+dd 08cbb0d8fh
+dd 0b8b96124h
+dd 00e9c9e1fh
+dd 0cdf1580eh
+dd 076cb6e19h
+dd 08c19e97ch
+dd 03b06eafbh
+dd 0ac10d806h
+dd 0e2f2aca5h
+dd 02f824227h
+dd 01c58aa17h
+dd 0dcad14b2h
+dd 087a38d6bh
+dd 09bdd663ah
+dd 055e98aa2h
+dd 007567f34h
+dd 079265e75h
+dd 0e3c26cd7h
+dd 07780a380h
+dd 0fcef852ah
+dd 0c5632fc4h
+dd 0040c4fbah
+dd 05f07f32dh
+dd 01be319e1h
+dd 0929cc074h
+dd 01ee60d8fh
+dd 0090d1cfdh
+dd 04bf7030eh
+dd 027c53037h
+dd 01a961389h
+dd 073859adah
+dd 05506060dh
+dd 03915e941h
+dd 04154142fh
+dd 088e624ach
+dd 0c376df71h
+dd 078e788ddh
+dd 04d1582d0h
+dd 0cca187cch
+dd 069541dcah
+dd 01ed1a955h
+dd 0026449a1h
+dd 09d872853h
+dd 006031301h
+dd 09ce8b60fh
+dd 0f5d6886ah
+dd 044d6352ch
+dd 0f87d7864h
+dd 02c64da0ch
+dd 09f550d05h
+dd 0cc86d934h
+dd 0c6a0464dh
+dd 010869516h
+dd 0f0b795b0h
+dd 04a4d3442h
+dd 04dc0bcaeh
+dd 00313cd38h
+dd 0fdf55ef5h
+dd 0109e22a2h
+dd 021dd841ch
+dd 0cacd51c7h
+dd 0924d0ee7h
+dd 046c4fb7ch
+dd 004c546c3h
+dd 0d0c3d0d1h
+dd 00ff8111ah
+dd 092303d4ch
+dd 0e8080686h
+dd 04d9729c6h
+dd 09bbab736h
+dd 0664e95a6h
+dd 07723ddcdh
+dd 0e3d08424h
+dd 07d4b3616h
+dd 04fff5c9fh
+dd 0a4680b51h
+dd 0c0ff663fh
+dd 09967d53fh
+dd 00deee9e0h
+dd 08f803327h
+dd 0f962e091h
+dd 0cdba9401h
+dd 0d658077dh
+dd 06eb7c3e5h
+dd 091ca7c87h
+dd 0a6cac6b1h
+dd 0c190836dh
+dd 0021eefdbh
+dd 0c5b20049h
+dd 0d08fd4b9h
+dd 0ca4464b8h
+dd 044cf324bh
+dd 009f8529dh
+dd 0795a465eh
+dd 03fd154a6h
+dd 04abc0550h
+dd 00985f32fh
+dd 02369a090h
+dd 0ad127956h
+dd 0851810cah
+dd 0e762239dh
+dd 006d2dcf5h
+dd 097deb2d8h
+dd 0f2bfcfc9h
+dd 0b9730b85h
+dd 012e8cca9h
+dd 0c1f5891ch
+dd 025ca930eh
+dd 094729726h
+dd 015106500h
+dd 039c46a3bh
+dd 088a95424h
+dd 04edd2cffh
+dd 02a45900dh
+dd 0098a9fbch
+dd 0ddc4f193h
+dd 00a020c65h
+dd 0df379bfbh
+dd 0bd11722fh
+dd 03de1fc9ch
+dd 059b32cb0h
+dd 094b249e1h
+dd 0d678c4e6h
+dd 0e3d9a80bh
+dd 01c6b8d3eh
+dd 0369a5428h
+dd 0029e385bh
+dd 01131d792h
+dd 0243a0533h
+dd 0e89542fbh
+dd 02c641fc3h
+dd 0b1d7e6cch
+dd 09b6f2519h
+dd 00d3caf05h
+dd 0d776c846h
+dd 00a57cbf3h
+dd 0c119345bh
+dd 01a10afeeh
+dd 03a131524h
+dd 0ffd7e5a5h
+dd 090a7bfdfh
+dd 0c9acb15fh
+dd 06712414bh
+dd 0ae015ffbh
+dd 0605dc844h
+dd 0bef274f5h
+dd 0a35169edh
+dd 016962bc7h
+dd 01f0d407ah
+dd 0fdf5b1afh
+dd 04d3f6d03h
+dd 0646a4200h
+dd 052201510h
+dd 009c2fb16h
+dd 0251ab45eh
+dd 0581dd9bdh
+dd 0da93a523h
+dd 0ed9499e9h
+dd 04cc7dfe1h
+dd 03f29ce2ah
+dd 09ea2fccfh
+dd 081b99e3fh
+dd 0a14db746h
+dd 0c5dd8aa0h
+dd 0cbb34d2eh
+dd 091bd35bbh
+dd 0f07d04cfh
+dd 0c20b009fh
+dd 091d85c09h
+dd 0fd0a8b0eh
+dd 0b22d86dch
+dd 055e01d38h
+dd 09e205bfeh
+dd 093cea698h
+dd 08ac87ee0h
+dd 0e1ac2dedh
+dd 090edf6b5h
+dd 095399aa5h
+dd 03d448739h
+dd 0100b6556h
+dd 0f1018c0ah
+dd 0219c5928h
+dd 0e47f8151h
+dd 04598ac88h
+dd 0557b5d8ah
+dd 0175ba189h
+dd 00ae35704h
+dd 0ffdfcf9eh
+dd 00e29c703h
+dd 09e564cf1h
+dd 0603e9688h
+dd 08de1c57bh
+dd 0c1c05a59h
+dd 0314df329h
+dd 0de0b87d0h
+dd 02216fb58h
+dd 09a793627h
+dd 000abc620h
+dd 0c96a60fdh
+dd 00fc93159h
+dd 0aab33ee9h
+dd 0b1fdf478h
+dd 054b3c0e3h
+dd 02ecb2db0h
+dd 0b1358602h
+dd 03c418460h
+dd 0702326bdh
+dd 081b984ddh
+dd 000ccf450h
+dd 06a3ea1c2h
+dd 0d0d795f1h
+dd 0e4ac68a5h
+dd 0dacc0635h
+dd 0491e7b1ah
+dd 0d43d626bh
+dd 0b23db4d5h
+dd 025b22dbdh
+dd 03c87c05fh
+dd 0e0e0b007h
+dd 040727c8ah
+dd 06114d251h
+dd 0e0cf9ae3h
+dd 0dcd0b1e8h
+dd 08cc89c31h
+dd 01c50b0dbh
+dd 0f90e532dh
+dd 013f09667h
+dd 0e6427c8dh
+dd 0c60f8464h
+dd 03181f195h
+dd 0ee8f1214h
+dd 09476ed06h
+dd 0e1013705h
+dd 06b7013a1h
+dd 03714fa7eh
+dd 08b4088d9h
+dd 02f5fa515h
+dd 0dea62ddfh
+dd 0887863e1h
+dd 03201eba6h
+dd 0759fa4e5h
+dd 029124213h
+dd 0d658b376h
+dd 0e40c43fdh
+dd 01947b5e4h
+dd 02037374dh
+dd 083e06323h
+dd 05e36c3c7h
+dd 0a791c6d2h
+dd 082a77b33h
+dd 07be2f085h
+dd 07b0f276fh
+dd 0d67b2edah
+dd 08c4eaa86h
+dd 041a6cefch
+dd 0d1fdcf4ch
+dd 0587ea1fbh
+dd 05085f948h
+dd 0315fa87fh
+dd 0fc71f9abh
+dd 0a5d64dd2h
+dd 09b0f362ah
+dd 0ec345295h
+dd 08d235fe7h
+dd 0d73dce76h
+dd 07379cf9dh
+dd 037870cd9h
+dd 0b680aa23h
+dd 0a2454f9eh
+dd 0592de2c8h
+dd 025d5749eh
+dd 03eb4de2ch
+dd 026dddeedh
+dd 05fcab814h
+dd 0ee6b2fd4h
+dd 03f80a54eh
+dd 0bb0e2d77h
+dd 0f20f99e7h
+dd 05b7ce402h
+dd 049d1881ch
+dd 05f7543efh
+dd 0ccdd8264h
+dd 062c8a81ah
+dd 00bd39f16h
+dd 00c6019feh
+dd 084372579h
+dd 02946d961h
+dd 059388a07h
+dd 00b68d2feh
+dd 07444b18bh
+dd 01b98e09fh
+dd 057b14c0eh
+dd 0e2ddaebah
+dd 0ec1137ffh
+dd 0b4df031ch
+dd 046934fdbh
+dd 0c0a4fa67h
+dd 042a8fda9h
+dd 03b8aa0d1h
+dd 0e9f675b6h
+dd 0af32ed2eh
+dd 01d9c1654h
+dd 07e04b82ah
+dd 04738a30fh
+dd 0a5edc469h
+dd 03c71474fh
+dd 07cf18681h
+dd 08e0d8ec6h
+dd 0a92f511eh
+dd 0bdea00b2h
+dd 07958e0efh
+dd 0721f52ech
+dd 00f67b7c3h
+dd 00e6ad906h
+dd 0f9d60d83h
+dd 0e7263929h
+dd 0405c3549h
+dd 04b92fa4bh
+dd 0fb0494b1h
+dd 014f1fc4ch
+dd 0ee9bf039h
+dd 0df9e95c5h
+dd 02f3be417h
+dd 037cbb836h
+dd 02067d348h
+dd 01d2d1487h
+dd 00bc0ca4dh
+dd 0e0776a34h
+dd 051c23e83h
+dd 0b80e0a18h
+dd 06f7f82ech
+dd 0b4e589d3h
+dd 0a3663619h
+dd 0efb1de40h
+dd 0b07d28ebh
+dd 0dd2fd759h
+dd 08a1bc016h
+dd 0231af2b2h
+dd 023e7fa78h
+dd 0794b7096h
+dd 0b28efa1ch
+dd 046d97431h
+dd 0a141ebech
+dd 0d62df08ah
+dd 091ccb319h
+dd 0012b45fbh
+dd 0bf645518h
+dd 0be8acaadh
+dd 08d6fc85dh
+dd 0d052876fh
+dd 081425cefh
+dd 0433d0557h
+dd 0025dea84h
+dd 03f05d2b4h
+dd 05bc3f4d5h
+dd 08a2a7f90h
+dd 049c92e78h
+dd 0bfd73f77h
+dd 009e81db7h
+dd 07374d66ah
+dd 016290ffch
+dd 06312017eh
+dd 09f248883h
+dd 07dcf22c2h
+dd 0e023811bh
+dd 070de1523h
+dd 039cfcdd8h
+dd 0dafe8101h
+dd 097af396eh
+dd 04e65770bh
+dd 0179e0caah
+dd 067c33f86h
+dd 04cd41506h
+dd 0e6869be2h
+dd 0ff8d94a1h
+dd 093184e6dh
+dd 02329db40h
+dd 0951c9b4dh
+dd 0f5e70348h
+dd 03f92fffah
+dd 03b1c03c1h
+dd 051b4e88eh
+dd 0508c2831h
+dd 0135d82abh
+dd 0b673141ch
+dd 0ee1db408h
+dd 04e5714b7h
+dd 0da404057h
+dd 061b73d58h
+dd 09a13d2d3h
+dd 09ff3b39fh
+dd 02700cfa0h
+dd 0b8215531h
+dd 0c95c1f4ch
+dd 061b480ddh
+dd 0060846f1h
+dd 07be50a0fh
+dd 0c658822bh
+dd 051a97845h
+dd 09e1b6ac1h
+dd 08eaa7f14h
+dd 0a2c76ec9h
+dd 0cbe93dd0h
+dd 07e31f88dh
+dd 00499610ah
+dd 0b35058a6h
+dd 0f3056bffh
+dd 0925c645fh
+dd 094f969ceh
+dd 0e96a84a1h
+dd 0ca8987afh
+dd 0daa3db08h
+dd 00ca8dd08h
+dd 0d096e3e8h
+dd 0448847d9h
+dd 0bc0677c4h
+dd 092c3562fh
+dd 069ce3200h
+dd 00cb4251eh
+dd 0347ed607h
+dd 055bd4821h
+dd 06468199bh
+dd 00a795579h
+dd 0372bd5eeh
+dd 014b97b6eh
+dd 0363cfe3fh
+dd 046895fe6h
+dd 0a6ad51ach
+dd 001309baeh
+dd 09648fd5bh
+dd 0aaba045dh
+dd 0d86b4c74h
+dd 010c5d6d8h
+dd 04057d225h
+dd 05bac971fh
+dd 0a2237fc3h
+dd 04d1bfa17h
+dd 0120b30edh
+dd 008b471eah
+dd 05ed6eeceh
+dd 04d80db96h
+dd 0ae799d70h
+dd 060665420h
+dd 03421b8bah
+dd 09342d751h
+dd 0c9652ac0h
+dd 076c71e0bh
+dd 0c71fb3f2h
+dd 07740a7cbh
+dd 0e01a0c4fh
+dd 0ea667fc0h
+dd 024120f17h
+dd 0c31ecb4ah
+dd 0de9c7bfch
+dd 0ab06e007h
+dd 004eda59dh
+dd 08be77083h
+dd 0c99196c3h
+dd 0234685edh
+dd 0057ccacfh
+dd 00b702e3dh
+dd 0cbec52fch
+dd 07e1ac7f5h
+dd 04341cce4h
+dd 0b9e26491h
+dd 0d6ab7ffah
+dd 063f05f50h
+dd 081ed5928h
+dd 0ed506b77h
+dd 01ad2153bh
+dd 04e3bf0d2h
+dd 0aff31583h
+dd 0d8b96952h
+dd 03f7cbd31h
+dd 0318e9df9h
+dd 08402f77dh
+dd 0ef568956h
+dd 0b8743dbeh
+dd 015d9be8fh
+dd 0a427e2c4h
+dd 023fb9e68h
+dd 0f13f323dh
+dd 0a6e325e2h
+dd 0943afce1h
+dd 04d5188f9h
+dd 0bd6e1b16h
+dd 05ec22d71h
+dd 0e22caa21h
+dd 0d80e636ch
+dd 0bf1b9c78h
+dd 064d4dd7eh
+dd 089f8792ah
+dd 096f4c0c7h
+dd 00ce839dah
+dd 0397ac16fh
+dd 08e0341edh
+dd 0771e4942h
+dd 0fcfd9700h
+dd 026340825h
+dd 003dad50eh
+dd 03b7567a8h
+dd 0479262f2h
+dd 01382f16bh
+dd 0e64935d3h
+dd 06c8927d1h
+dd 0ba4024bdh
+dd 07d4a18bah
+dd 05c4e535fh
+dd 0ae02fe12h
+dd 0984723e5h
+dd 04873e4b3h
+dd 07aa996adh
+dd 0e45f7e17h
+dd 0c4eba062h
+dd 02e4d4df7h
+dd 023eb6726h
+dd 0806615cah
+dd 024efd6c2h
+dd 06ccd038bh
+dd 0a7d0cd65h
+dd 0027aa102h
+dd 0df735d1eh
+dd 085193d8dh
+dd 0bc244463h
+dd 01122336eh
+dd 0b59b618fh
+dd 02f90572eh
+dd 0eae118fch
+dd 0c5df2753h
+dd 0e0049924h
+dd 0d6157e6ch
+dd 017e0934ch
+dd 07826b772h
+dd 0c5a4e347h
+dd 0abb025f9h
+dd 0fe9e1b86h
+dd 050a21021h
+dd 0cc11d102h
+dd 04b26db01h
+dd 032fd8fc7h
+dd 0ef625bd3h
+dd 00965e2c5h
+dd 0b832dcadh
+dd 0b3ad8473h
+dd 0ed80dd14h
+dd 0a4c9a36eh
+dd 01e204688h
+dd 0e896f443h
+dd 07adedb18h
+dd 097de8293h
+dd 026ea7125h
+dd 059c5e173h
+dd 0fb2803bfh
+dd 0b2014ef5h
+dd 0aa9b7b78h
+dd 03daea5cdh
+dd 0dcc5f7a7h
+dd 0e0634079h
+dd 0e3f25060h
+dd 0bc7a063dh
+dd 0088234cdh
+dd 06a207ccbh
+dd 00b590fdbh
+dd 03d825605h
+dd 023fbaa9dh
+dd 00148de68h
+dd 0145c3dddh
+dd 055e03a15h
+dd 003e59a37h
+dd 068d4a405h
+dd 09d80a335h
+dd 0b6491ab4h
+dd 0f251bbbah
+dd 06be9ada9h
+dd 04e4aed2eh
+dd 0cf042e68h
+dd 0b0a3b83fh
+dd 038e8a671h
+dd 0f924196bh
+dd 072ba2523h
+dd 03c51c94bh
+dd 0c30758b9h
+dd 017c6e5c7h
+dd 00353ebe0h
+dd 0d05ee222h
+dd 056026cd8h
+dd 06a4503bch
+dd 0ce815b98h
+dd 075cf2e9ch
+dd 02d29e1cbh
+dd 0a9e1ae12h
+dd 085c6836fh
+dd 0a348e320h
+dd 055eb7695h
+dd 0faf606adh
+dd 0ea3a2936h
+dd 098b487f5h
+dd 009ebe573h
+dd 0fa5c7ed4h
+dd 00bd77993h
+dd 031a47fb8h
+dd 0081f79a4h
+dd 042d23d00h
+dd 0bc3744e6h
+dd 05a5050aeh
+dd 0ad37a3c5h
+dd 09cbf639ah
+dd 0d86db49fh
+dd 0b6d6d606h
+dd 0657c551dh
+dd 01f759ae1h
+dd 0efe15188h
+dd 020444788h
+dd 0caa5a6bdh
+dd 0d170c5e5h
+dd 0150d52bdh
+dd 04913999ch
+dd 0fb474877h
+dd 014230609h
+dd 056cdff74h
+dd 06a4944f2h
+dd 0e72f82bch
+dd 049f21966h
+dd 0d9f3ec19h
+dd 007ec5603h
+dd 087b054c7h
+dd 0b2c52c0ch
+dd 05985920ah
+dd 0acef3da6h
+dd 0a516102ah
+dd 09a57f959h
+dd 051c72aa3h
+dd 0e7560188h
+dd 085f798fah
+dd 043921f56h
+dd 0443badf8h
+dd 08696d088h
+dd 0046865b7h
+dd 0e53b731dh
+dd 06c0335f8h
+dd 0b64e85d9h
+dd 052e2d3e3h
+dd 01d4535a3h
+dd 0722fef6ch
+dd 0ad8b2dedh
+dd 0c7dacc40h
+dd 02bcf6c02h
+dd 08e7e90d8h
+dd 088cb9d6bh
+dd 016b0b16dh
+dd 05378b688h
+dd 0f5c469f1h
+dd 0fd30d071h
+dd 04de6d0e3h
+dd 05e871b33h
+dd 09b6d1514h
+dd 0f6aa348eh
+dd 027b85e73h
+dd 05e12967dh
+dd 0ad157b75h
+dd 024ab01a5h
+dd 0b0f855c1h
+dd 08ecd499ch
+dd 018718e5ah
+dd 0b18baf74h
+dd 03be98d9eh
+dd 021776807h
+dd 0562bc45ah
+dd 015d94230h
+dd 0e2200ee3h
+dd 076e3a194h
+dd 09545d373h
+dd 0f5d830ceh
+dd 0d4dcafefh
+dd 0b142a267h
+dd 09495dc27h
+dd 02fe5faf8h
+dd 0ffcef6c4h
+dd 0f7edffd0h
+dd 0e6593349h
+dd 0daa1ed1dh
+dd 04dd244b9h
+dd 032b583f4h
+dd 043633940h
+dd 0a9132c31h
+dd 0dc6f61fah
+dd 06b8d315eh
+dd 06a12bb57h
+dd 0173a4379h
+dd 0085daefdh
+dd 0440f3524h
+dd 09c81b942h
+dd 014493e8ch
+dd 05f95fdb8h
+dd 0f31965b6h
+dd 0a76a3703h
+dd 04854b3c7h
+dd 067d475ech
+dd 0e6dd61f8h
+dd 0ecebd975h
+dd 0cae8c3cbh
+dd 0e1476d5eh
+dd 0fc99e4e7h
+dd 06ec22361h
+dd 0c32cfe19h
+dd 073af86deh
+dd 05586def0h
+dd 013630a23h
+dd 0e8ca84e4h
+dd 045e460f1h
+dd 0e2d83a7ch
+dd 07d34a229h
+dd 0e060b5cah
+dd 0142d7c73h
+dd 04e780db6h
+dd 041c24de3h
+dd 027441239h
+dd 0afb72b63h
+dd 0d6800015h
+dd 0b3d68829h
+dd 022425e43h
+dd 02f8526bch
+dd 004e7d72ch
+dd 0b2052a0eh
+dd 09f16411ch
+dd 0031bc407h
+dd 067f74603h
+dd 033676be9h
+dd 0b6c6de54h
+dd 0903c2d8fh
+dd 0fa18e61fh
+dd 013dbdd75h
+dd 0282abac9h
+dd 06993cce9h
+dd 0d7538e2ch
+dd 0201a783fh
+dd 04c019157h
+dd 041d0ebadh
+dd 045ee5a85h
+dd 0cf5a6d99h
+dd 0fe19729fh
+dd 0a226a494h
+dd 0fe049c77h
+dd 041f1a5d8h
+dd 02ecce39ah
+dd 0eea857ceh
+dd 061de6548h
+dd 05c8d4de1h
+dd 084903898h
+dd 07ff7bd81h
+dd 047abaa72h
+dd 0311e1bb1h
+dd 03d943cb2h
+dd 028e4b065h
+dd 062de2f9dh
+dd 01afc4cd6h
+dd 09470ed9dh
+dd 04fe84614h
+dd 0210a667bh
+dd 02f256cc2h
+dd 00724a95eh
+dd 093d12dcch
+dd 0046c8db1h
+dd 012aa8fe0h
+dd 0e16e3684h
+dd 02b34dd53h
+dd 07a9df988h
+dd 033427597h
+dd 0e27e7754h
+dd 030351072h
+dd 0dd7bb7ffh
+dd 0f9f3c367h
+dd 06f39e9d1h
+dd 05f1ae9f7h
+dd 01d9ca01ch
+dd 0ddce8d14h
+dd 094f91248h
+dd 0a8b24b73h
+dd 07466614ch
+dd 09c66e079h
+dd 0a09536cch
+dd 0996b5c96h
+dd 0e6bfb454h
+dd 0e78fff24h
+dd 04dfa27f2h
+dd 00215eeaeh
+dd 04b330722h
+dd 068474d44h
+dd 0ace5c3d1h
+dd 062e935c6h
+dd 083c3fda5h
+dd 00c3642d6h
+dd 0bfd6b10bh
+dd 0b205eb40h
+dd 0c3583d56h
+dd 0491cef37h
+dd 02af0dedbh
+dd 02246955ch
+dd 0d2d79c24h
+dd 0b7f700bch
+dd 0b011d3b9h
+dd 0c0dfeb84h
+dd 06b2977b7h
+dd 00525928fh
+dd 0027f00e3h
+dd 03d9d3645h
+dd 0caf91e1bh
+dd 0f1fa3494h
+dd 0fd915495h
+dd 049ae8d91h
+dd 03de5552ch
+dd 064e6b52bh
+dd 0daa306e3h
+dd 042b5a4e9h
+dd 0e8cffe74h
+dd 066255d31h
+dd 0bd0ece42h
+dd 0092c8bfch
+dd 09c570345h
+dd 062db9401h
+dd 0992ee8aah
+dd 08ac58c63h
+dd 00a585362h
+dd 0a934e1a9h
+dd 06493f07ch
+dd 062270f2ah
+dd 04b0f5e55h
+dd 09945f8cah
+dd 0dc57ff88h
+dd 0b6710f76h
+dd 0b0523b5fh
+dd 0982c76f8h
+dd 00d5fd437h
+dd 04fb5fbceh
+dd 0c09996c9h
+dd 0d88f6354h
+dd 0e96a115dh
+dd 04758120bh
+dd 0a062aa88h
+dd 007b0c78ah
+dd 05d117ca9h
+dd 0e1728e12h
+dd 0a75a5d03h
+dd 015a9165dh
+dd 042f81e9fh
+dd 09cb8238eh
+dd 0c8592db5h
+dd 0f4bb48c0h
+dd 02dc842cah
+dd 05d1885dch
+dd 05f461100h
+dd 0835e02bbh
+dd 0e0ffa09eh
+dd 04f0e4cdah
+dd 081174089h
+dd 0d774307ah
+dd 046858b87h
+dd 086c67093h
+dd 0ecf5a65ch
+dd 035808096h
+dd 02f68b4ddh
+dd 0126b615ah
+dd 054896157h
+dd 05f253f0eh
+dd 0412607d3h
+dd 06880ed8eh
+dd 0c9f1fdb8h
+dd 0bae217b4h
+dd 09234619ch
+dd 021a9c375h
+dd 023027e2eh
+dd 02588a6a9h
+dd 0b90a18efh
+dd 0ff0a55e2h
+dd 01ab643f7h
+dd 06828b092h
+dd 0924a4d2eh
+dd 0f0554009h
+dd 05c1d905bh
+dd 0c1ec1265h
+dd 0f0356d1dh
+dd 01d6a4f11h
+dd 0431fbf40h
+dd 05da27b8eh
+dd 0803dee8ch
+dd 0ca65f55dh
+dd 004394029h
+dd 06773cd27h
+dd 05d5348adh
+dd 0454de5a6h
+dd 0aae3b924h
+dd 01c8701e3h
+dd 0701fe253h
+dd 0e2b24f51h
+dd 048027c93h
+dd 0354d6282h
+dd 0f7a9f2bbh
+dd 082e4b6d7h
+dd 04d6fc721h
+dd 0ea1b0c43h
+dd 01ba35b44h
+dd 0d2e93277h
+dd 015531719h
+dd 054ce2c71h
+dd 0ba53d656h
+dd 0a96153e5h
+dd 098f14375h
+dd 017e5f9a8h
+dd 02905ece8h
+dd 0aaa18146h
+dd 0bb8ddd3eh
+dd 0b711ec8ch
+dd 0c10b6f6bh
+dd 0a756928bh
+dd 08568e8b5h
+dd 02d632d1ah
+dd 08e48dd59h
+dd 0159b524dh
+dd 0ddb0d387h
+dd 0b04e333eh
+dd 0cc38cc8eh
+dd 07d2cd4bch
+dd 0ad857beeh
+dd 0bc1edbf8h
+dd 0e12b24f7h
+dd 0d54a6c93h
+dd 033e1d3f0h
+dd 0101eb215h
+dd 07acd3ce1h
+dd 0b28ad2afh
+dd 0d473f886h
+dd 0df9854e7h
+dd 0c7acdc1ch
+dd 04d2f95a0h
+dd 08def1a9ch
+dd 067d6454ch
+dd 02b8ee11ch
+dd 0ae53e795h
+dd 0c114ccd3h
+dd 0086c9dbch
+dd 0cd31bbb9h
+dd 03dfc8cc3h
+dd 01500f9a0h
+dd 016c51ee7h
+dd 0e46e9989h
+dd 0bbb1a73ch
+dd 02f1db85ch
+dd 01aba3ef8h
+dd 0baf0c7d4h
+dd 04f72a30fh
+dd 014c30ff7h
+dd 0b5c2dd6bh
+dd 0ca735b6bh
+dd 06cb8be7fh
+dd 07c5604dch
+dd 08854eebdh
+dd 0f94ce8a5h
+dd 0d33c922dh
+dd 044fbaf10h
+dd 096a07270h
+dd 086619c56h
+dd 0ee55b973h
+dd 05b32515fh
+dd 001d6e6dbh
+dd 02790a080h
+dd 0bd73e0dch
+dd 0687ea5c4h
+dd 0b7fe368eh
+dd 0c6035fe9h
+dd 072695324h
+dd 014099d7eh
+dd 09f1f89aeh
+dd 0fd0cb071h
+dd 0cfd3d14ah
+dd 01c2ac1b0h
+dd 0ac12aee6h
+dd 01dae5fe5h
+dd 0e124fa41h
+dd 06910ac26h
+dd 02532f607h
+dd 020f06adch
+dd 057e56b73h
+dd 0a4cc81bdh
+dd 0260e970dh
+dd 065eeae00h
+dd 06daa955ah
+dd 02b861de1h
+dd 03e5f4473h
+dd 0c6c7eb9dh
+dd 01693fbb9h
+dd 06b0fc870h
+dd 02e463bdch
+dd 09758e598h
+dd 0bc38c0e3h
+dd 0e2e16b1eh
+dd 071a4736bh
+dd 0e9de086bh
+dd 0c91613c1h
+dd 01fcd3ca0h
+dd 035a75098h
+dd 07f9df6f6h
+dd 01a66845fh
+dd 09c4e1235h
+dd 0ad210058h
+dd 08fccf583h
+dd 0b39962bfh
+dd 00f30a987h
+dd 053acdebfh
+dd 00faa713eh
+dd 04e920fefh
+dd 0fcce5ca0h
+dd 03291e7ddh
+dd 059ab7fd3h
+dd 0f0d09bf0h
+dd 00b5fd4e3h
+dd 032d000d8h
+dd 05945b723h
+dd 082f8bacch
+dd 03e2f48d7h
+dd 02714b619h
+dd 02d071288h
+dd 0d547b5c7h
+dd 0adbb773dh
+dd 065a5a716h
+dd 0b0123561h
+dd 0d841591fh
+dd 0c569c415h
+dd 06848596bh
+dd 023dc78eah
+dd 003caedb7h
+dd 000b475ech
+dd 037089685h
+dd 002e895e2h
+dd 0a75a2d44h
+dd 00a5b501ah
+dd 0750510b7h
+dd 0c6b96a12h
+dd 08189fc30h
+dd 0e6c5d133h
+dd 03e6fb3e7h
+dd 025f02925h
+dd 0a409def7h
+dd 0737b239ah
+dd 0e5b69941h
+dd 0cca50ccdh
+dd 096743c48h
+dd 0e182a018h
+dd 06a6bd349h
+dd 0204f1929h
+dd 0fc366225h
+dd 07c7aa67eh
+dd 0402290f9h
+dd 02cc5ab29h
+dd 009831758h
+dd 034c6878dh
+dd 0aca3dfadh
+dd 02e58a726h
+dd 0596ca422h
+dd 056592730h
+dd 06c733d82h
+dd 09259fdc3h
+dd 051101549h
+dd 0a6267e6fh
+dd 0261ef669h
+dd 0e6111615h
+dd 0d303060ch
+dd 0d9a672d4h
+dd 064cc413bh
+dd 0308fccb2h
+dd 09b111a36h
+dd 0f825632ah
+dd 024c46860h
+dd 084320c77h
+dd 0bc88ec72h
+dd 0a5bb3b83h
+dd 0ca0208a7h
+dd 05e54a532h
+dd 0d0e9225ch
+dd 0f5d9b35ah
+dd 0b7e50790h
+dd 0699be324h
+dd 0cfd93bd3h
+dd 09c6e9ddch
+dd 0d536782bh
+dd 0c86c7c75h
+dd 0cf07e9cah
+dd 0d8c6469eh
+dd 0b9b4cc3bh
+dd 081b66ac6h
+dd 0de129babh
+dd 0b5f06d36h
+dd 05055787fh
+dd 0f3598925h
+dd 00d72723ah
+dd 0944204b4h
+dd 08863e711h
+dd 043690078h
+dd 0261f3294h
+dd 0f9d3e509h
+dd 005cd822fh
+dd 03d65e1deh
+dd 091ecb939h
+dd 0e12e01c9h
+dd 0e5ba85f8h
+dd 093364979h
+dd 08a80132bh
+dd 047c57653h
+dd 044b497c9h
+dd 0d3c381c5h
+dd 08a2dd4bah
+dd 0b5b30149h
+dd 021ee8e96h
+dd 0f25a4577h
+dd 05bfab010h
+dd 0731fd720h
+dd 0ef125457h
+dd 041f505f2h
+dd 0f8b851c5h
+dd 09e3d7712h
+dd 094b46175h
+dd 037215a8eh
+dd 0312384fah
+dd 0142ba2f4h
+dd 08d86ebfch
+dd 0af56f3c3h
+dd 0de00c699h
+dd 02e460398h
+dd 02ad0be35h
+dd 07625f545h
+dd 0fec4873bh
+dd 0bc6f8492h
+dd 07b4585feh
+dd 010ab175ch
+dd 0f47ace06h
+dd 0044ed2ceh
+dd 03baee6c0h
+dd 059d825b1h
+dd 0a94b3692h
+dd 0a442003ah
+dd 065bb0b91h
+dd 021653bf2h
+dd 03dab0f5ch
+dd 051803d3ah
+dd 0e6a513d2h
+dd 0f23e5516h
+dd 03f121334h
+dd 03c2ebbf7h
+dd 005884d17h
+dd 0230b64cch
+dd 0dc3f71c4h
+dd 07c233696h
+dd 0a32917d7h
+dd 0f2f901c3h
+dd 0df9f1863h
+dd 02665e988h
+dd 0673db871h
+dd 0ee9d815eh
+dd 0d15fb903h
+dd 0145dd950h
+dd 0678a3f6ah
+dd 0ae37c323h
+dd 06f3d86e1h
+dd 0ee544b6ch
+dd 0e51a362dh
+dd 0f434e57fh
+dd 0b837c795h
+dd 0e00fe5c9h
+dd 0cc48c397h
+dd 03bd407f0h
+dd 09ff7f9c6h
+dd 0db0ed823h
+dd 0d4a71b92h
+dd 0e1e82aaeh
+dd 07ed1a767h
+dd 01ac47367h
+dd 0dfee8a53h
+dd 0556ee0aah
+dd 0780c1521h
+dd 033e1802eh
+dd 0a31c3699h
+dd 009a57e71h
+dd 0dc229803h
+dd 013267918h
+dd 073f1dd55h
+dd 0be48c0c9h
+dd 0719de4d5h
+dd 0a8c8db8ah
+dd 0610c2081h
+dd 0ed54e36ah
+dd 0488d701ah
+dd 07da749b3h
+dd 0d8434107h
+dd 087ac0e2dh
+dd 008dfacedh
+dd 0e8c664a9h
+dd 03d584838h
+dd 091be1679h
+dd 0633ae57bh
+dd 01f6624e9h
+dd 09b0bd04fh
+dd 0b23dd0bfh
+dd 052405db6h
+dd 0dc0035d3h
+dd 04fa5a573h
+dd 084a9c293h
+dd 02adf14e1h
+dd 0d5080417h
+dd 0310ad5ech
+dd 0b1a1209fh
+dd 001722634h
+dd 02ae3fcbdh
+dd 0ce6a00d8h
+dd 0a5c73297h
+dd 062c13433h
+dd 0fc3bf76eh
+dd 02faeb4bfh
+dd 082dced68h
+dd 013d42124h
+dd 0b07d5fa7h
+dd 0ae998db6h
+dd 0c4b2773bh
+dd 0a25a5f2eh
+dd 07d2ca018h
+dd 069afcfaeh
+dd 0a1a798a7h
+dd 08db51017h
+dd 0423ca6ddh
+dd 0c1f0b9c0h
+dd 003ac986eh
+dd 04cc06e0ah
+dd 01fd3b665h
+dd 07b0c42bbh
+dd 0cde40a2dh
+dd 0fa693907h
+dd 087b15a07h
+dd 0a4f9eb37h
+dd 0702eb375h
+dd 00fb5e3f4h
+dd 0c7132c07h
+dd 0106d9d62h
+dd 0399f2a69h
+dd 05149429dh
+dd 04e6ecc7ch
+dd 0a15af80dh
+dd 0536be9aah
+dd 027e2fbf0h
+dd 0a3cbf479h
+dd 017fe4c3ah
+dd 0065c0031h
+dd 0d99ee72eh
+dd 0a2625617h
+dd 0f8d567eah
+dd 00652586ah
+dd 08d60ff74h
+dd 0da430e8dh
+dd 0a665e446h
+dd 089173a8bh
+dd 000e28df5h
+dd 083ee7074h
+dd 01f08b3f4h
+dd 06cb2b7cah
+dd 0c9039c67h
+dd 0b7e0f3b2h
+dd 0f0e50c7bh
+dd 0c98c4554h
+dd 0d1f9ad10h
+dd 0218641c6h
+dd 024b97ddah
+dd 0f67ac842h
+dd 003ee18cah
+dd 0ad16e3bbh
+dd 01d75adffh
+dd 0312f0ea9h
+dd 041b7f1a4h
+dd 0b292b679h
+dd 0f815c051h
+dd 0e579c21eh
+dd 03af5660bh
+dd 067b173d8h
+dd 0097cbb86h
+dd 01dd35062h
+dd 0af6a27fch
+dd 0092c911bh
+dd 06b333c03h
+dd 0fdab235eh
+dd 097895c4fh
+dd 092dd74c6h
+dd 0df1718fah
+dd 06ea16ca5h
+dd 0fd2c6bech
+dd 078c7ea2fh
+dd 01e2168c4h
+dd 067ac608bh
+dd 0fac82c71h
+dd 041f98043h
+dd 0dc28c5cch
+dd 0fd2d1bc7h
+dd 0c6d408fbh
+dd 036c693d4h
+dd 06c3d78a7h
+dd 06906dfc7h
+dd 0b79d6e71h
+dd 04e1a23afh
+dd 08fd622dah
+dd 0b58431e3h
+dd 0f97f203ch
+dd 06acb1803h
+dd 0d7c8e742h
+dd 0fde19743h
+dd 0a78b176bh
+dd 0e9d879f9h
+dd 00b8068a9h
+dd 0f7c2f43eh
+dd 0d66a3835h
+dd 042b9021ch
+dd 03204327ah
+dd 0f50d212bh
+dd 0b3fedcd2h
+dd 09ee45181h
+dd 06016a03fh
+dd 044c7b220h
+dd 01c9e8656h
+dd 037606b53h
+dd 01c3c6aach
+dd 089b8a97dh
+dd 04d280a51h
+dd 095a8e325h
+dd 0723eae0dh
+dd 094016854h
+dd 035ac8b5ch
+dd 0d57f0395h
+dd 0a124c90dh
+dd 0b665eb06h
+dd 02b4b097eh
+dd 075372834h
+dd 0d976d15dh
+dd 06f260ce3h
+dd 0109a2470h
+dd 02d885226h
+dd 07726b807h
+dd 0bd0c206fh
+dd 035defb7ch
+dd 04e00b27fh
+dd 0cfc9012ch
+dd 0e0c89c55h
+dd 072a5a161h
+dd 0a6e67afeh
+dd 046fd5836h
+dd 09cb0721fh
+dd 0d3626571h
+dd 05225fdc3h
+dd 026af7f4ah
+dd 01082b8d1h
+dd 088a8c8fch
+dd 0a2ad5293h
+dd 03b9b64c9h
+dd 0f8f24e86h
+dd 052ccc340h
+dd 04610c138h
+dd 0e5b9b7f4h
+dd 0377c50d3h
+dd 0771134e0h
+dd 0def6028bh
+dd 00775e561h
+dd 04259ec7dh
+dd 07a7ce620h
+dd 08ad3c849h
+dd 013e57463h
+dd 0019485c4h
+dd 08f13833dh
+dd 024167290h
+dd 0529f97cch
+dd 016057743h
+dd 04840e44ch
+dd 0babbcbfdh
+dd 0d0185319h
+dd 0bd7bd6d4h
+dd 042cae3c3h
+dd 0ef93a9a9h
+dd 0cf3ccf04h
+dd 0fab653ddh
+dd 0bc880767h
+dd 0e3c88d92h
+dd 0f6769945h
+dd 073c3af30h
+dd 01c42a0aah
+dd 0e74a0125h
+dd 02ca05ef1h
+dd 0e6d845a7h
+dd 013fce8f1h
+dd 030535d6eh
+dd 08a626d2ch
+dd 06cb2707ah
+dd 0c8d531e4h
+dd 0f9058f68h
+dd 0cd38af13h
+dd 0973eadceh
+dd 0de929073h
+dd 06b2147f9h
+dd 0cbab7b9ah
+dd 06367fb0fh
+dd 0e89aaaa5h
+dd 0c2ae55f5h
+dd 06e402495h
+dd 092aac1e3h
+dd 000abaeddh
+dd 019d88e9ah
+dd 054f53c72h
+dd 08b9a0b51h
+dd 0500e23b0h
+dd 0f37ae784h
+dd 0e9fbd35ah
+dd 02a5099dah
+dd 07cad7fd8h
+dd 06619d990h
+dd 089d7af47h
+dd 08e5414c7h
+dd 0e84ad41bh
+dd 0b1ffbbb6h
+dd 00f6112e2h
+dd 0a59abea7h
+dd 0a7517a2dh
+dd 0ff5cad58h
+dd 0f2299aa6h
+dd 0be0a6556h
+dd 04811ef60h
+dd 0ad78c841h
+dd 0d0cde799h
+dd 029c642f9h
+dd 004df11dah
+dd 033d8a868h
+dd 001c77d83h
+dd 00fc8c121h
+dd 0c41136ach
+dd 07ac6ff9fh
+dd 0055eb746h
+dd 06f8997a2h
+dd 02913465bh
+dd 0085ec572h
+dd 0f7d06990h
+dd 04dbce212h
+dd 048d38700h
+dd 02034f3cbh
+dd 02df9dab4h
+dd 0d87c2a85h
+dd 0eb470664h
+dd 02c6b8eb0h
+dd 08d923b7fh
+dd 04dbc014ch
+dd 0ea59a7fch
+dd 05c950671h
+dd 078374acfh
+dd 0abef556fh
+dd 0bf7a4407h
+dd 0749fff0ch
+dd 06af12fd4h
+dd 0be4b3fa0h
+dd 0827fc27dh
+dd 00f072e75h
+dd 0a9153557h
+dd 080b066e6h
+dd 0b3c93f99h
+dd 0a9fd3805h
+dd 0be604a5eh
+dd 06290d15ch
+dd 08a5ddd54h
+dd 037104e53h
+dd 0dd6cfb75h
+dd 0cbe1e2a1h
+dd 0977b69a5h
+dd 0aceae371h
+dd 00adaeb78h
+dd 0f0ef0999h
+dd 07c91c9c8h
+dd 067dd2fe5h
+dd 0cd87f099h
+dd 0898efc25h
+dd 0c52e1c90h
+dd 0dd945cd3h
+dd 0f636f22dh
+dd 029f17313h
+dd 0f5e02dfah
+dd 09b444392h
+dd 03c515b66h
+dd 072a5e1ach
+dd 004a65890h
+dd 0f8ec37abh
+dd 03544e822h
+dd 0be9ca776h
+dd 0d80959d9h
+dd 0237a511bh
+dd 03d600531h
+dd 0f51da1f6h
+dd 0632f7c13h
+dd 0cb034644h
+dd 0bf3a761dh
+dd 017681cb7h
+dd 03da9b646h
+dd 07437a446h
+dd 0f26adb96h
+dd 062ac4ba1h
+dd 03e655d69h
+dd 038758999h
+dd 0ff80576ah
+dd 0b45e4158h
+dd 0f9ec07b9h
+dd 0aed6b73ch
+dd 029d84145h
+dd 0ac622548h
+dd 0a834dec4h
+dd 0e71421bch
+dd 0fbac4ef5h
+dd 0f65bb6c5h
+dd 0b63d7b7ch
+dd 09452886ch
+dd 01aac9351h
+dd 0a8e8807eh
+dd 072735e25h
+dd 0445b9371h
+dd 0039b5970h
+dd 02da64072h
+dd 08cb48acch
+dd 01181da4eh
+dd 0db864255h
+dd 0c56d1654h
+dd 0d129807ch
+dd 09ec09ff7h
+dd 056428c41h
+dd 0b8825c04h
+dd 04ec5e32dh
+dd 0ecc6da32h
+dd 075dc5d2ah
+dd 07363be69h
+dd 08e46bf22h
+dd 0d1d552dah
+dd 060f723b1h
+dd 090764d3ch
+dd 06a04005eh
+dd 0822e10d3h
+dd 0ce0be215h
+dd 0ecb52534h
+dd 048fe284bh
+dd 09520946ah
+dd 0ec9a1979h
+dd 0e7696356h
+dd 092128227h
+dd 08160ba3dh
+dd 0e27823f7h
+dd 02c82068eh
+dd 0cb9b6659h
+dd 0091789bch
+dd 01b2dafc6h
+dd 0de579e90h
+dd 097b9d27eh
+dd 04ae66ca0h
+dd 061c5090bh
+dd 05fa6a100h
+dd 07aaa1fa1h
+dd 018e1d1e7h
+dd 087b6eefah
+dd 058415bd0h
+dd 035114c3bh
+dd 06f01c118h
+dd 0af416855h
+dd 0f560d909h
+dd 06a8aa988h
+dd 0e1611d84h
+dd 016a6c454h
+dd 0db15f52eh
+dd 070866faah
+dd 07db9f4a1h
+dd 09719bd54h
+dd 032d2de95h
+dd 003732582h
+dd 0cc65153fh
+dd 0a285d265h
+dd 010f92828h
+dd 0dd90227ah
+dd 00f8e0a7fh
+dd 02d0c4796h
+dd 071b9fd8eh
+dd 036a50f79h
+dd 0f4d2b990h
+dd 02a9b5c61h
+dd 0cef5c45eh
+dd 05c9b48c7h
+dd 0945db42ah
+dd 0cb05bbf7h
+dd 09f148eech
+dd 01c8bbb94h
+dd 0bab36f1ah
+dd 07923d277h
+dd 0d2e9a882h
+dd 0902d73ceh
+dd 0fdcf0871h
+dd 0dad7de03h
+dd 09961e806h
+dd 0b0022c8eh
+dd 081022ccbh
+dd 04fee494ch
+dd 005e7004bh
+dd 069ee28f8h
+dd 0f51ab3aah
+dd 0c0e25e27h
+dd 0237124ech
+dd 01e37edfdh
+dd 01d3f0d44h
+dd 05bd31b20h
+dd 0c1b8e676h
+dd 045c2cc7ch
+dd 0c80304dch
+dd 01b9a532ch
+dd 08d71db80h
+dd 08f7738b7h
+dd 0c2989648h
+dd 08d8e9278h
+dd 00314247fh
+dd 004aab583h
+dd 0fe9ed199h
+dd 081692cc5h
+dd 0644650eeh
+dd 0a3e109abh
+dd 0f99ad9f1h
+dd 001f88739h
+dd 0cd6c666fh
+dd 071abeb41h
+dd 0a2454695h
+dd 07076037dh
+dd 0fa35ae2dh
+dd 02206b682h
+dd 0165e1d76h
+dd 058ad2a0ah
+dd 07bd90697h
+dd 059e64713h
+dd 00a4c4d27h
+dd 05bf1e874h
+dd 05b9b1263h
+dd 057d71a90h
+dd 017b17787h
+dd 0793de644h
+dd 080b4d38bh
+dd 01d8a1007h
+dd 07c3ae002h
+dd 011983e92h
+dd 069b3b4aah
+dd 0082cfe51h
+dd 0e35684dch
+dd 0c4f349feh
+dd 0ebe55429h
+dd 08dee4dc5h
+dd 098df800fh
+dd 057baaa63h
+dd 0bd045de4h
+dd 0924d5db1h
+dd 057958d2ch
+dd 009014da0h
+dd 008a69e30h
+dd 0c63807cbh
+dd 006cddae9h
+dd 01df168eeh
+dd 0bc4d3a69h
+dd 0d68712b1h
+dd 0760e2e1ah
+dd 0aaf2fd10h
+dd 096a87e9ch
+dd 0646a6dfdh
+dd 0bff95db4h
+dd 016b05eb5h
+dd 00bd482ech
+dd 03bd21e8dh
+dd 0b7e038ffh
+dd 0130c339eh
+dd 0c17a537dh
+dd 0ac35cf12h
+dd 0ee906c6eh
+dd 04e504129h
+dd 0a9853378h
+dd 056af11b3h
+dd 072608ac0h
+dd 0f20e4fcdh
+dd 02367073eh
+dd 0f9563dffh
+dd 0a2ce1a16h
+dd 09f75ff2eh
+dd 02c4506a5h
+dd 00119a7a5h
+dd 033aa8e65h
+dd 0d385f36fh
+dd 06bebb657h
+dd 0ffae666dh
+dd 0ed3af5ach
+dd 07606eb74h
+dd 084a77cb4h
+dd 07a49e6fdh
+dd 09bfea4abh
+dd 02f2ef529h
+dd 006df85e7h
+dd 05df6211ah
+dd 097fc39e3h
+dd 094f3f4bfh
+dd 0a9505c63h
+dd 0ac3e99e7h
+dd 068759f16h
+dd 085d0fb9ah
+dd 086fd9037h
+dd 0408c7089h
+dd 08f3708afh
+dd 03ffedd8ch
+dd 07b5e2e51h
+dd 07ec5ca2ch
+dd 0a7492d43h
+dd 0ace12f92h
+dd 06c41f7d0h
+dd 013eaf92ch
+dd 0e2d9ba0fh
+dd 0672828b9h
+dd 0f8d5cd1bh
+dd 0c4b80ed5h
+dd 0afc0e96eh
+dd 0029a101ah
+dd 0c1e033a2h
+dd 0434ecd77h
+dd 0e77698fdh
+dd 0d08fc981h
+dd 0bb356a22h
+dd 0445e97fbh
+dd 0a990e2c5h
+dd 04163f4d2h
+dd 019d8b8cfh
+dd 04a27a766h
+dd 02b2ee094h
+dd 0bca23cdfh
+dd 0afd31d2fh
+dd 057224678h
+dd 0c1620f49h
+dd 0d11ba15eh
+dd 06c1ad023h
+dd 0fa48b3ffh
+dd 0b33b32dah
+dd 08de3fc17h
+dd 0c8bb2489h
+dd 0ae96c637h
+dd 04b965ec3h
+dd 076cb6e69h
+dd 010f9e863h
+dd 06a96bae1h
+dd 00206b0b3h
+dd 014817ef4h
+dd 00ba31526h
+dd 0e2abaebfh
+dd 00f02d5f8h
+dd 0e11e7812h
+dd 0d516abc0h
+dd 0180b0290h
+dd 0d45d8466h
+dd 077a2666eh
+dd 035a57285h
+dd 08c7d79f7h
+dd 05ee78d34h
+dd 0839af886h
+dd 05b8b8464h
+dd 00ea2dcd7h
+dd 04802d657h
+dd 098fee4d8h
+dd 017c7173ah
+dd 0b5356417h
+dd 03547ab52h
+dd 0f5359f6fh
+dd 0aa635f61h
+dd 02923cc48h
+dd 07d89a35ah
+dd 0bb9999eeh
+dd 036bba292h
+dd 08f20408dh
+dd 0e7486fc7h
+dd 045c448e6h
+dd 0e65a2c78h
+dd 0d78032f8h
+dd 058d5f047h
+dd 011faef8dh
+dd 019c32465h
+dd 0f2b5609fh
+dd 09d7d6b9ah
+dd 0141d0e20h
+dd 0a2c8d088h
+dd 069635038h
+dd 087aa64fdh
+dd 01365f0ech
+dd 02b93268ah
+dd 07fc5278bh
+dd 061f5bfcfh
+dd 090d3e14eh
+dd 02aa661cbh
+dd 03f370d49h
+dd 0eef060dch
+dd 08ea87f45h
+dd 06c0d4c80h
+dd 0542bb571h
+dd 0a3b17491h
+dd 031c83cd6h
+dd 02abb5bb6h
+dd 0b07870e4h
+dd 07af626f5h
+dd 0d7a822a7h
+dd 0ac47f3b3h
+dd 0afd73a44h
+dd 07a14b9edh
+dd 02a909343h
+dd 0170fb3bah
+dd 0fe9ac62ah
+dd 0ff55fa41h
+dd 0aab1d188h
+dd 0e336dca3h
+dd 00747bb9ch
+dd 02618ffedh
+dd 080b980fah
+dd 0baa95ad1h
+dd 0df6555cch
+dd 07a09d171h
+dd 0447ded1dh
+dd 0f4f45a51h
+dd 0a232f191h
+dd 06b083338h
+dd 07dbb7807h
+dd 03b440bb5h
+dd 030bf2bc4h
+dd 0da9be10dh
+dd 0d978227ah
+dd 088214598h
+dd 06c565e7fh
+dd 09a698c42h
+dd 0e58230ddh
+dd 08fe6ff57h
+dd 08fa6fa51h
+dd 080e4576eh
+dd 0bc479170h
+dd 0116152dch
+dd 0fbf1011dh
+dd 0a3109419h
+dd 01e2da875h
+dd 03171e735h
+dd 04d6db6bfh
+dd 039f80cd2h
+dd 05000a017h
+dd 0d70c0213h
+dd 0818d7307h
+dd 001e83cc0h
+dd 0af6c33a4h
+dd 07afe6fc8h
+dd 02ec1cb5bh
+dd 0f4fd7e9bh
+dd 09311b6a7h
+dd 062ff29e0h
+dd 0f11fa629h
+dd 072e1b980h
+dd 0bf573eaah
+dd 0d2111dadh
+dd 006c616ceh
+dd 0da2223a9h
+dd 01590b716h
+dd 0c0e8c6c4h
+dd 092e2ec27h
+dd 0b2ba0b83h
+dd 0768f1a94h
+dd 04550769dh
+dd 0d9aad99ch
+dd 09a19df5bh
+dd 0b8598638h
+dd 047961ac2h
+dd 070e9a33ch
+dd 0558494eah
+dd 0482f967eh
+dd 06fa5ae05h
+dd 06e3a9350h
+dd 0ea44f832h
+dd 0865b9200h
+dd 0b020e5e1h
+dd 04275ffddh
+dd 054ee7096h
+dd 06df3cce9h
+dd 05f29ccfdh
+dd 055ac28e3h
+dd 038569a5bh
+dd 05af1caf2h
+dd 0ac9a364fh
+dd 08eebd915h
+dd 039a47bb5h
+dd 067241f14h
+dd 064196902h
+dd 05e21274ah
+dd 0da279804h
+dd 04e85061ch
+dd 0567f1a9ah
+dd 0ad907d22h
+dd 00f7d5d58h
+dd 073071202h
+dd 03f4d6ab7h
+dd 04fd64feeh
+dd 05a94947fh
+dd 0b0bec90eh
+dd 09a5fc8feh
+dd 0ea2ed501h
+dd 008902611h
+dd 0deec7d41h
+dd 0c2f36fb6h
+dd 0ded1c66eh
+dd 0dad90c18h
+dd 0a1ca3e73h
+dd 05d38d69ch
+dd 04ca5cad9h
+dd 0ff268d4dh
+dd 0f7fdf485h
+dd 04f6b1948h
+dd 0a8ed1ccdh
+dd 063c8c7b6h
+dd 0f071365ch
+dd 025447810h
+dd 0b0bc1103h
+dd 00d103f5eh
+dd 051aa8ad8h
+dd 023ebe012h
+dd 0ca359ac2h
+dd 0bf0c79a1h
+dd 0a63c9e3dh
+dd 04a3d778bh
+dd 0024f8b0ch
+dd 034dda079h
+dd 0640278c8h
+dd 073a4f4adh
+dd 0b71db49eh
+dd 034aaf389h
+dd 008c0c710h
+dd 0399d2708h
+dd 0e6ffbbcch
+dd 028e36b30h
+dd 05c4cd452h
+dd 089aecf73h
+dd 01127c8b5h
+dd 0d7be155dh
+dd 01e314e3ah
+dd 06c04d7d9h
+dd 041b75492h
+dd 089820142h
+dd 00d7aa65fh
+dd 0eaa2b985h
+dd 03c7b9b41h
+dd 0391382e8h
+dd 0e8a2f536h
+dd 066d547b4h
+dd 0e3403355h
+dd 032df3231h
+dd 0abded048h
+dd 05891b40bh
+dd 035513575h
+dd 069c5a43ah
+dd 054acb93ch
+dd 067983aa7h
+dd 0e499485eh
+dd 06b811526h
+dd 073b50406h
+dd 06707079ch
+dd 0e85663d2h
+dd 061329353h
+dd 0fb5a17a6h
+dd 0c3f93216h
+dd 0e7b1ca2bh
+dd 0517cc537h
+dd 0e31178e9h
+dd 00b3619b7h
+dd 04823ab51h
+dd 072a3ac39h
+dd 0f851045fh
+dd 024d96810h
+dd 0d8d022f6h
+dd 015603b72h
+dd 0b64181d0h
+dd 0865c2cc1h
+dd 0c9549c5dh
+dd 0de755fdch
+dd 00a1748bfh
+dd 052c5f25bh
+dd 0c14ec467h
+dd 081e2cbe3h
+dd 03c827dach
+dd 054edd9a0h
+dd 091715e8dh
+dd 0d1699b11h
+dd 07750bc81h
+dd 06775ab70h
+dd 0e64d4ee6h
+dd 08fd0dae8h
+dd 0e45c88b0h
+dd 047f04d5dh
+dd 0495a506ah
+dd 0d57909c9h
+dd 0b6cb8bbah
+dd 0af7a3586h
+dd 076e45da3h
+dd 0238d23cch
+dd 0548071eeh
+dd 094204295h
+dd 01206f492h
+dd 0c3dfe5bch
+dd 05559dabfh
+dd 0670611c1h
+dd 007268333h
+dd 079843d92h
+dd 00fe81908h
+dd 02c45cb6eh
+dd 0668240aah
+dd 0197e9e85h
+dd 0995a88bfh
+dd 04309d88eh
+dd 081a51757h
+dd 06789f6c3h
+dd 01b3b4472h
+dd 09a221641h
+dd 040a861aah
+dd 01289f718h
+dd 0e5142c03h
+dd 0eb853b5fh
+dd 050206628h
+dd 0c9d6100bh
+dd 0a6eb3534h
+dd 091a420c6h
+dd 0d3e7ac40h
+dd 087f960a9h
+dd 097e37df1h
+dd 0545638cch
+dd 058b25a1ch
+dd 0a4b955d8h
+dd 0db1d431ah
+dd 0a42f8439h
+dd 0fe9a63fch
+dd 07c2dfff3h
+dd 06676fd0bh
+dd 02c9c18dbh
+dd 06792528ch
+dd 06d8b4e8ah
+dd 0e9c6b928h
+dd 0517949beh
+dd 0715ec7ceh
+dd 0c2c1f396h
+dd 0156ef172h
+dd 0ed9f6a94h
+dd 06347b812h
+dd 0c5285adfh
+dd 0084d96b5h
+dd 0daec3561h
+dd 0200207beh
+dd 09c72cb3fh
+dd 0d42393d2h
+dd 07b245977h
+dd 0a592545eh
+dd 050b6c7eah
+dd 00ca7344ch
+dd 0ddee975ah
+dd 0ed2fbb26h
+dd 025b1c47ch
+dd 0dad89cb8h
+dd 0b2e4f86ch
+dd 013adefafh
+dd 0d7739ac3h
+dd 00c6478cah
+dd 02ebc66e8h
+dd 0e8ffe906h
+dd 07e32aebeh
+dd 0473dbe48h
+dd 01558799bh
+dd 01c1cf4b8h
+dd 069245626h
+dd 0b60f8426h
+dd 0b015b3e1h
+dd 0b369c872h
+dd 0cf619c19h
+dd 06fe30bdbh
+dd 000b548e7h
+dd 0b9d28015h
+dd 0433bfd6dh
+dd 0a7e6025ch
+dd 0990372f9h
+dd 04f6d682ch
+dd 07858daabh
+dd 07cd35216h
+dd 072c92f20h
+dd 05ed39daeh
+dd 03fbc05e8h
+dd 09e2d3524h
+dd 0dea6fe1dh
+dd 05017d8f7h
+dd 034edb248h
+dd 0e688c38ah
+dd 00d728352h
+dd 05afbb409h
+dd 022cb941bh
+dd 01c26f23bh
+dd 09fa029a8h
+dd 022215ea9h
+dd 05a1e3616h
+dd 04b4d55d7h
+dd 0ac420dfch
+dd 04d55242eh
+dd 078fb51ffh
+dd 0a0feeb26h
+dd 038513958h
+dd 0558a3c14h
+dd 07f3b29c2h
+dd 0724baae9h
+dd 0854a42d1h
+dd 081819bffh
+dd 0afeb3ebbh
+dd 0fde16d26h
+dd 07e25db90h
+dd 0b4be357dh
+dd 002acffeah
+dd 0ff889cf7h
+dd 087f3143eh
+dd 0b583c00bh
+dd 0ab95d3cbh
+dd 0b3b34110h
+dd 05077ea08h
+dd 011fc2887h
+dd 0b3d81bf6h
+dd 07bef881fh
+dd 0b4e9b778h
+dd 0f5c1b517h
+dd 0826c5e02h
+dd 01ed8f857h
+dd 0a86658deh
+dd 080ba7c7bh
+dd 0451a2228h
+dd 0bd3ef896h
+dd 0ed15c777h
+dd 060e1a4d3h
+dd 0729dbed4h
+dd 0399f65edh
+dd 0f6b3f07ah
+dd 0343cd8b1h
+dd 00e547628h
+dd 0e844a20ah
+dd 03250f46ah
+dd 0ef08cc52h
+dd 0ef1eb569h
+dd 000783694h
+dd 0d4f5ad80h
+dd 0c5cff9cdh
+dd 05e997d36h
+dd 0d9ef2aa2h
+dd 0ea28aa2fh
+dd 0a24856f1h
+dd 07775398eh
+dd 05a9c445eh
+dd 0dbce46b0h
+dd 0e42e0717h
+dd 058b99994h
+dd 0c1db30b2h
+dd 091bcbdffh
+dd 0850cd6d8h
+dd 0b89c130ah
+dd 0df9ce936h
+dd 04238dc4bh
+dd 0e6a30f32h
+dd 0a3fa5c07h
+dd 0d70b2443h
+dd 0e3a0c6c8h
+dd 0164fa143h
+dd 0fed7d5d7h
+dd 06a6e84bah
+dd 086ab7905h
+dd 0774d08bfh
+dd 05d76c4e8h
+dd 060eed78bh
+dd 0167a4e8ch
+dd 09c2fad2ch
+dd 0088abdd5h
+dd 0d7fdee63h
+dd 0efa12875h
+dd 0022151b7h
+dd 02cea25dah
+dd 0abe65446h
+dd 08969fc4ch
+dd 0529f5384h
+dd 06298f700h
+dd 063410765h
+dd 0eec2e245h
+dd 0a61a7328h
+dd 095639f7eh
+dd 0735855f8h
+dd 0a7c43bd3h
+dd 0a6becd8eh
+dd 0e1e7f049h
+dd 04df56ea2h
+dd 079673efbh
+dd 0aa2f2935h
+dd 014d2a94bh
+dd 0754ad8eah
+dd 0fadacf02h
+dd 0e7471bbdh
+dd 0a0b9e236h
+dd 0879f7798h
+dd 002c54efch
+dd 094428571h
+dd 064c02658h
+dd 0affabbbfh
+dd 0c6b50da0h
+dd 08ef6a7deh
+dd 00f2ed3a2h
+dd 0fd4f9546h
+dd 0f9d266ebh
+dd 0c788fb35h
+dd 0115346a2h
+dd 026f589f9h
+dd 04d21fabdh
+dd 0d5aff095h
+dd 01e04a143h
+dd 027e04077h
+dd 0fb17b19bh
+dd 045063ca6h
+dd 04734b99dh
+dd 04104255fh
+dd 0c1ea3765h
+dd 0fb87f729h
+dd 07ca1f560h
+dd 0e3808fech
+dd 05e16c983h
+dd 036f19f1dh
+dd 08d93438fh
+dd 0d8a140f0h
+dd 03a8a939eh
+dd 074666048h
+dd 0d5152d93h
+dd 065cd3f38h
+dd 003b37d4dh
+dd 03438635fh
+dd 01e76178ah
+dd 012815219h
+dd 058031b37h
+dd 0bacf341eh
+dd 089c64670h
+dd 0fa7a8c43h
+dd 0b0c61badh
+dd 075e7b99bh
+dd 09130704dh
+dd 00dfcd904h
+dd 077bf4e49h
+dd 055180c61h
+dd 06e81884bh
+dd 0811a596ch
+dd 054795915h
+dd 01231e10fh
+dd 0e5a949a9h
+dd 0d1df2240h
+dd 0e210af8eh
+dd 018ad36c4h
+dd 0bf547233h
+dd 02d81440ch
+dd 03dce59c7h
+dd 0298ea71dh
+dd 05022a8dbh
+dd 0dfc855e3h
+dd 01546616eh
+dd 0b6131779h
+dd 00caf7b24h
+dd 0b3e63696h
+dd 0bc822309h
+dd 00b106a19h
+dd 0e98d47a0h
+dd 0b0264ffdh
+dd 09bc4a1a5h
+dd 023cad170h
+dd 06c08546ch
+dd 007632847h
+dd 073c385a1h
+dd 0825ec6aeh
+dd 01372e76ch
+dd 0d7073b46h
+dd 09d932054h
+dd 003fce43eh
+dd 0de11cdc4h
+dd 0b821d565h
+dd 094e80453h
+dd 04a7b708ch
+dd 018c75e45h
+dd 0cf82d010h
+dd 0c15b5320h
+dd 016103b0ch
+dd 0d026cf90h
+dd 078939125h
+dd 0f7241c67h
+dd 06c3da8eah
+dd 0641cbb9ch
+dd 0fdbbf142h
+dd 0a4fbb543h
+dd 030eff6f4h
+dd 0564c03d2h
+dd 0a1607d6fh
+dd 0f3c1adeeh
+dd 0d6f49a31h
+dd 098907e0ch
+dd 094d95506h
+dd 044350a34h
+dd 0bb577db3h
+dd 0b886d078h
+dd 0da970235h
+dd 0810054c8h
+dd 06e661879h
+dd 0b9e02d42h
+dd 09b4dd5beh
+dd 0802ae303h
+dd 093c6d0f0h
+dd 0160fe82fh
+dd 0dbf04159h
+dd 0e8c124a8h
+dd 0577a6ee4h
+dd 0534bfafch
+dd 024ffd8b7h
+dd 01e2eb83ah
+dd 0fdc43203h
+dd 068d59f66h
+dd 0f1abad64h
+dd 0b372c3d9h
+dd 08fc2e65ch
+dd 0640e8aaah
+dd 0bad1ced4h
+dd 0f8c374fah
+dd 0fee9598ah
+dd 0ea479f00h
+dd 05e50c2e7h
+dd 0b97004adh
+dd 075dbab92h
+dd 02b811592h
+dd 0546fb81fh
+dd 0458f2657h
+dd 094c71fe9h
+dd 094beb19bh
+dd 0b9aa0dc4h
+dd 0d5ec5cb7h
+dd 0c8403c29h
+dd 084f207e5h
+dd 09a199fb7h
+dd 0dbcba0a6h
+dd 040d15c50h
+dd 013d2a604h
+dd 079228184h
+dd 00e72e509h
+dd 0de2f2ef4h
+dd 0ca782111h
+dd 080bffc1bh
+dd 0a33827f4h
+dd 0fe05e2d4h
+dd 0ad924c20h
+dd 0c3f416b9h
+dd 09ae97c0dh
+dd 07ff8ee90h
+dd 083414a92h
+dd 08d97d148h
+dd 0bd6ae1e6h
+dd 0aab69e5dh
+dd 024eea0a7h
+dd 050aba55ah
+dd 0b3a43b56h
+dd 0ce082b7fh
+dd 0bec01e64h
+dd 0f3f05a95h
+dd 0abd18946h
+dd 09aae2586h
+dd 0e0a5ed11h
+dd 01edbcbe5h
+dd 0c2910501h
+dd 0eb372b63h
+dd 098a920bch
+dd 04797b633h
+dd 0ae344341h
+dd 08726b892h
+dd 0c323a6dbh
+dd 052d8d2b0h
+dd 01f51f1ddh
+dd 04f7ea9ech
+dd 06856bf8eh
+dd 0069e50eeh
+dd 0a2ec9c8ah
+dd 03e239173h
+dd 05415e719h
+dd 0fd5b3102h
+dd 06052fea3h
+dd 070836b6eh
+dd 068b4fa1ch
+dd 0bcc4cef3h
+dd 066a0a611h
+dd 0ad2e9d12h
+dd 0c1f2d079h
+dd 0d068ab6ah
+dd 05c1343a2h
+dd 0225fe05bh
+dd 0453835bah
+dd 0d8f7967bh
+dd 0c8c6a72bh
+dd 05785b367h
+dd 0a9c1f2edh
+dd 01e53c79bh
+dd 0dabd2ff7h
+dd 0a8d3f2ceh
+dd 0d9a971a4h
+dd 0805ea333h
+dd 03621e3ffh
+dd 0e7f44b97h
+dd 0bed3c270h
+dd 01035ab95h
+dd 065a278d8h
+dd 046875416h
+dd 0d5cf45cah
+dd 0aeb0222bh
+dd 0b755f8f4h
+dd 072b8443fh
+dd 044b86db6h
+dd 0dd170468h
+dd 0888a1872h
+dd 0d030f827h
+dd 01944d609h
+dd 0779f9835h
+dd 0c1c1b733h
+dd 03446e1f6h
+dd 02e710d3ah
+dd 0732ab042h
+dd 0522d5937h
+dd 038bfa234h
+dd 060fa3444h
+dd 0093cfaf1h
+dd 04777ab91h
+dd 0cf249142h
+dd 0bfeeb8a6h
+dd 08ebd2b5dh
+dd 0c442fd3dh
+dd 039da9acdh
+dd 068cf3ebch
+dd 0ac0eb0f5h
+dd 062fc816eh
+dd 0d73784f5h
+dd 09f13b309h
+dd 0884ffc27h
+dd 08a41762dh
+dd 0bcea8dbah
+dd 097745579h
+dd 08ec522d3h
+dd 0c0c56966h
+dd 0a19b9397h
+dd 0fa7269e9h
+dd 0c91e9de6h
+dd 030476a81h
+dd 003f73c69h
+dd 0840d351ch
+dd 053198e32h
+dd 02e409ed2h
+dd 06486b6d4h
+dd 043a17030h
+dd 04af232f3h
+dd 09d51f3f8h
+dd 094f62948h
+dd 0c22ec915h
+dd 09e70094ch
+dd 0796aadach
+dd 0ed216870h
+dd 03f34b8ffh
+dd 04b011aa5h
+dd 013ae3bech
+dd 026fa9126h
+dd 0aa71af50h
+dd 0cbbecb9ch
+dd 0abcfca25h
+dd 08b0ef34fh
+dd 09f617c82h
+dd 06a482c91h
+dd 0cbf9dd8bh
+dd 0c629a31ch
+dd 0d494243ch
+dd 061073c4eh
+dd 0b5461223h
+dd 0f905d71bh
+dd 03d01159bh
+dd 04ddafc78h
+dd 0f52ee642h
+dd 0c0dadcb7h
+dd 0b9fd7eb2h
+dd 0c3c5df09h
+dd 0f286625eh
+dd 06a10eaaeh
+dd 0cdf26978h
+dd 015301be4h
+dd 017e24680h
+dd 06a5f14d2h
+dd 0598ac845h
+dd 0a42e2b89h
+dd 0325452c8h
+dd 046d23610h
+dd 0a645608eh
+dd 0d26df5f4h
+dd 00a14bfb7h
+dd 01460cf28h
+dd 00d6c2b14h
+dd 0e71fe327h
+dd 065d8ce52h
+dd 04afbda4fh
+dd 0cf7b1768h
+dd 0db5bdd2bh
+dd 0a6a00f2bh
+dd 058feca0fh
+dd 0c788bfddh
+dd 0b3d593deh
+dd 0a997e249h
+dd 0ab491077h
+dd 087322c3ch
+dd 01b4d1309h
+dd 09a386437h
+dd 0a4cb8137h
+dd 0e85f66edh
+dd 04659059bh
+dd 039ed3ddch
+dd 000e17665h
+dd 00c152668h
+dd 073171568h
+dd 018ee1b9dh
+dd 0b7a17e77h
+dd 02ba7094bh
+dd 0f9203197h
+dd 0aa1bcc92h
+dd 076b510e6h
+dd 08bcb087fh
+dd 08f78f912h
+dd 0ab7c38a8h
+dd 091d3bf38h
+dd 0b0b1b06ch
+dd 03dd9760bh
+dd 097eceb73h
+dd 045a952f1h
+dd 0c5403dbdh
+dd 0a72a3654h
+dd 0af26e690h
+dd 08cca2da9h
+dd 083aa6578h
+dd 009ceef7dh
+dd 03132172ah
+dd 0a322f3f1h
+dd 003e0cb6dh
+dd 03fc52ea8h
+dd 0ba2f9d60h
+dd 0f8dad07eh
+dd 06820d721h
+dd 0d50202e5h
+dd 0584a3299h
+dd 0b187d55ch
+dd 0a51cde22h
+dd 0f3c6bf8bh
+dd 04232efb4h
+dd 05bea3ab7h
+dd 06c450b20h
+dd 0a90d4aa1h
+dd 0c58aa57ch
+dd 00577181ah
+dd 0e99688d5h
+dd 0cd10bca5h
+dd 0add77034h
+dd 026dc4712h
+dd 0d9727187h
+dd 04bc31d3bh
+dd 0e19484b8h
+dd 08a9cdb39h
+dd 011b902b8h
+dd 030107020h
+dd 0c6b120eah
+dd 03e8a8dd2h
+dd 0759f9dbdh
+dd 039ca71e3h
+dd 06f1a36feh
+dd 0b02fd6edh
+dd 0c9ae6de7h
+dd 0b1ef00d6h
+dd 095ed905fh
+dd 0bdb56f5dh
+dd 0f4c40adbh
+dd 04ea80880h
+dd 0aa505d84h
+dd 054479ce1h
+dd 0eb4788e6h
+dd 0615c5b8eh
+dd 0fe394299h
+dd 01df63498h
+dd 077204a02h
+dd 0ab21fcc3h
+dd 008af456ah
+dd 059832535h
+dd 0ba1e6bf1h
+dd 02354bcb3h
+dd 0296b2dc9h
+dd 0892be054h
+dd 0f19daae6h
+dd 0c0ae388ah
+dd 0f9681a03h
+dd 039d90711h
+dd 04fa7e0d7h
+dd 0597d6c97h
+dd 06b89c73fh
+dd 03cb947a2h
+dd 0c5e8d258h
+dd 0cae26861h
+dd 04d7ace65h
+dd 0e9cbee07h
+dd 0b2674c06h
+dd 0987df506h
+dd 0a13bb62fh
+dd 004e23276h
+dd 098dec9a6h
+dd 09528388ch
+dd 089c64fe7h
+dd 05eef1d2ah
+dd 093240031h
+dd 009e785c1h
+dd 02ddc8ed1h
+dd 0b8de3771h
+dd 04b1ae2abh
+dd 09f017dd1h
+dd 057442795h
+dd 060687b73h
+dd 06c6c0f9eh
+dd 08614b13fh
+dd 0f29788dfh
+dd 0ab28d6f0h
+dd 018a690b2h
+dd 0237dab3ah
+dd 0f17c6705h
+dd 07c125650h
+dd 01ed1cf14h
+dd 03f0524ebh
+dd 04e345496h
+dd 08c8c1d6bh
+dd 0045fcc68h
+dd 09ce717bfh
+dd 0d8e8cf54h
+dd 0520a7f10h
+dd 09f38ca9bh
+dd 085282524h
+dd 0f5ee58d7h
+dd 017d798d8h
+dd 05e04dfeah
+dd 0d7255e16h
+dd 05d5985a6h
+dd 096d637f6h
+dd 06c23caebh
+dd 0c3798036h
+dd 021e8affdh
+dd 066507189h
+dd 080aad76ch
+dd 090567731h
+dd 0d8b4e00dh
+dd 09bde9faeh
+dd 0adde25b4h
+dd 030134741h
+dd 0bd584ecdh
+dd 0b9f084f4h
+dd 013f8fbcbh
+dd 0eee5251ah
+dd 0ea6c45e6h
+dd 07fef56c9h
+dd 0a248c98ah
+dd 0fc1b5b77h
+dd 003ab3997h
+dd 011640b4fh
+dd 06b6eb7b6h
+dd 03e34c99eh
+dd 048c6844fh
+dd 05765e6e1h
+dd 0ecfdf994h
+dd 016466e38h
+dd 0db9bc605h
+dd 040d4b093h
+dd 0613f5a9eh
+dd 0dd805a63h
+dd 0ba236cdbh
+dd 080f6d5c8h
+dd 071727653h
+dd 0a08cdfc0h
+dd 06ffc7e11h
+dd 096877578h
+dd 07275c7b3h
+dd 04e3ce240h
+dd 003a5d782h
+dd 0a895c1aeh
+dd 003fec153h
+dd 0c9e631a1h
+dd 0e1f9bd2ah
+dd 0f5fe86a5h
+dd 00381d6b6h
+dd 09b4bde34h
+dd 00b2ec0d4h
+dd 0cca9cde5h
+dd 017797e1ah
+dd 0f0f0b2b9h
+dd 0031bbdcah
+dd 0717ec118h
+dd 01e7ba307h
+dd 060693da8h
+dd 0286cd64dh
+dd 0026bcc32h
+dd 08da1ac6eh
+dd 0056b167bh
+dd 0fb855d09h
+dd 035c08e93h
+dd 0ff827e1ah
+dd 09eb6bf54h
+dd 03963bb6fh
+dd 029f8eabeh
+dd 09ca00288h
+dd 00add4b60h
+dd 04df89181h
+dd 09ce8a17dh
+dd 0a5b0b964h
+dd 028645b6ah
+dd 0b9a3ee93h
+dd 0e833c421h
+dd 07f424380h
+dd 03a745e60h
+dd 08f80819ch
+dd 07964977ch
+dd 0c698efd7h
+dd 0eecb398bh
+dd 0396ebe89h
+dd 02fc71dd0h
+dd 02792c0e6h
+dd 0f2b3ecc8h
+dd 0413a9d39h
+dd 0a8d1914ah
+dd 0a9ed3ef8h
+dd 001fed4e1h
+dd 066a78c51h
+dd 0e31c3b0ch
+dd 0cd308f82h
+dd 047f6edd3h
+dd 0946812ach
+dd 06c993fddh
+dd 04d5d1e60h
+dd 0cd5678ddh
+dd 00aa716ceh
+dd 0f22d2199h
+dd 0893d2b5eh
+dd 0f62e8ddbh
+dd 0d99db770h
+dd 0383a1a36h
+dd 0e633ecf6h
+dd 051a4c94eh
+dd 03909281ah
+dd 07f6d9d2dh
+dd 0431f4efdh
+dd 039fd5ffdh
+dd 0681d9283h
+dd 0240ddb37h
+dd 00442c977h
+dd 0db6511f1h
+dd 03a10c15ch
+dd 069061dabh
+dd 0b4e82ed1h
+dd 0db0fffa9h
+dd 037ff94a4h
+dd 0c7464f69h
+dd 0335f4bf6h
+dd 025130f52h
+dd 08bb11e14h
+dd 0b7db9ad2h
+dd 04fe28fa6h
+dd 02803433dh
+dd 0990fd4edh
+dd 0f52557dbh
+dd 09b24b0d3h
+dd 07e0330f4h
+dd 0b1a005d1h
+dd 0ab82fe95h
+dd 0c863dc72h
+dd 0fc451b8ch
+dd 0545d3596h
+dd 0980be476h
+dd 0edae7b5fh
+dd 090259bbah
+dd 0b4bb64bdh
+dd 06c1f54f1h
+dd 05a9ba47ch
+dd 040261f11h
+dd 063cb864bh
+dd 009a471feh
+dd 06b3fc03eh
+dd 050a44aaeh
+dd 0aa635152h
+dd 05fab2311h
+dd 044fc85b3h
+dd 007f20169h
+dd 03c77f52fh
+dd 0750a5bd5h
+dd 0e1e03267h
+dd 0ee7d3f77h
+dd 0e9ae70feh
+dd 00d7856d8h
+dd 0e751e0deh
+dd 0d9ff50d9h
+dd 0f737a64dh
+dd 050c6b413h
+dd 02d42ff2eh
+dd 05cc37108h
+dd 06416e6b3h
+dd 0adabb11fh
+dd 046ade278h
+dd 0e43ff644h
+dd 0361d9e1eh
+dd 0a191f7ach
+dd 05318b54fh
+dd 0c3b2d5d0h
+dd 0258672f9h
+dd 0b7da6071h
+dd 0b3d4e5afh
+dd 0f0b7f78bh
+dd 0a56e9ad4h
+dd 0a19416abh
+dd 0b32cc21bh
+dd 0262ccf3fh
+dd 0267c23f3h
+dd 0ba672344h
+dd 01759da5dh
+dd 0861a0320h
+dd 01a8a1b1fh
+dd 05a327714h
+dd 077e86e54h
+dd 01dd747d3h
+dd 04b2045bah
+dd 09a5e0c75h
+dd 049e039deh
+dd 0724c544ah
+dd 0c3767d62h
+dd 044f0b713h
+dd 04ae973e1h
+dd 0887a3364h
+dd 0bd48058eh
+dd 071020ffdh
+dd 01e1e7245h
+dd 08e5acbaeh
+dd 0ec7b1ffbh
+dd 0149a4442h
+dd 043600a62h
+dd 0f1cd1063h
+dd 0e5aa9eb4h
+dd 00c38bf2bh
+dd 00b09b726h
+dd 07edac24dh
+dd 03c691832h
+dd 00f6d86a6h
+dd 0278a99cch
+dd 0659afa57h
+dd 0265ca538h
+dd 0400f112dh
+dd 07270fd75h
+dd 075d647e1h
+dd 0badf0ab4h
+dd 06d89a33eh
+dd 02bc689f2h
+dd 07dfcd4fah
+dd 0260de1e5h
+dd 051f8d51bh
+dd 041e8f596h
+dd 01ee8a436h
+dd 0f9a30b67h
+dd 00e03aa67h
+dd 0bef47755h
+dd 0f30b3b95h
+dd 0c6007d30h
+dd 0e1ab9ebbh
+dd 0cf661987h
+dd 08dc040ebh
+dd 00c7efd74h
+dd 04e86d449h
+dd 00ff808f9h
+dd 04a2ca31eh
+dd 0d09a9ed6h
+dd 031add2aah
+dd 0607af2cch
+dd 0bd5eee41h
+dd 0ccaf1dfeh
+dd 05cf5ce71h
+dd 0de684178h
+dd 047c4a0c4h
+dd 0b3995d31h
+dd 0f370240ch
+dd 035b50290h
+dd 07858b929h
+dd 0e42c8a7ah
+dd 0d56799b4h
+dd 0764d8137h
+dd 0fe153b33h
+dd 08540968ah
+dd 0bb6bd73ch
+dd 034181dfdh
+dd 0fc3d0cbah
+dd 07993d261h
+dd 08f236487h
+dd 0004daf5ah
+dd 01cbfc324h
+dd 088743c9ch
+dd 0f660dd94h
+dd 0a1a044c8h
+dd 0fc2b8befh
+dd 0171c8d0eh
+dd 0d4d2d4d6h
+dd 03b1515ebh
+dd 0f633124fh
+dd 0ac07d38eh
+dd 0f8a79f74h
+dd 0804e7d38h
+dd 0b74e9080h
+dd 077533853h
+dd 0fca97cf7h
+dd 0207903bbh
+dd 096efd83ch
+dd 0918eea05h
+dd 001050eddh
+dd 0ac9e7729h
+dd 06f6ede55h
+dd 0a94d8789h
+dd 0f43aad56h
+dd 0668722d8h
+dd 022bc8798h
+dd 048063a21h
+dd 0af66b44dh
+dd 0e4820f55h
+dd 0e9b94a96h
+dd 02fb3bc0ch
+dd 0852a87adh
+dd 0dd2fef97h
+dd 079bb788eh
+dd 0ea67be95h
+dd 080d1c244h
+dd 06a246b23h
+dd 07930253bh
+dd 093ddc015h
+dd 068034befh
+dd 0656df330h
+dd 0dd376750h
+dd 0e0b593cch
+dd 0ffbf00afh
+dd 0e6a0791ah
+dd 00049ad4dh
+dd 0c8769ae5h
+dd 0b53f53e1h
+dd 09dd6a475h
+dd 017467480h
+dd 0f6e092dch
+dd 07d3ae518h
+dd 0f490119ch
+dd 05aa51164h
+dd 0707a1324h
+dd 0de9fad3fh
+dd 046e3b6dfh
+dd 05cd82172h
+dd 0a42a6e6fh
+dd 0c833de3ah
+dd 07a401094h
+dd 054ab3a95h
+dd 09999de8dh
+dd 0a33cfd7ah
+dd 09bd2921ah
+dd 0ce9a8ea7h
+dd 0645cd195h
+dd 04a31e995h
+dd 0cf48f50ch
+dd 08c5fbf31h
+dd 0b2e6ba5ch
+dd 0a2143b88h
+dd 015971ae2h
+dd 00f0b50bah
+dd 09c84ec34h
+dd 05a8be92eh
+dd 0fbccbda3h
+dd 085fa2210h
+dd 0dcab97bfh
+dd 0e11fbdf5h
+dd 043712d54h
+dd 034d96e89h
+dd 0a12dc4d3h
+dd 04400d913h
+dd 09d617305h
+dd 0bf675030h
+dd 03fb1026fh
+dd 0c86d510ch
+dd 0d9998637h
+dd 0f7668183h
+dd 016dd0d38h
+dd 0db8b0e4ch
+dd 0385aba61h
+dd 02b4acfd5h
+dd 059d33307h
+dd 09d8b4639h
+dd 0c5909e0dh
+dd 0817671e8h
+dd 06aa0d0e2h
+dd 02661438ah
+dd 0ea1ca3a5h
+dd 0c717e203h
+dd 0c39803e0h
+dd 068ee361eh
+dd 0cb78ec6bh
+dd 0ab6eded2h
+dd 06622257dh
+dd 0b28f4ebbh
+dd 06bfac796h
+dd 0a7c35857h
+dd 0519a1fe8h
+dd 06f913703h
+dd 04b08314fh
+dd 06d1fdda0h
+dd 05d1ba37dh
+dd 09250bdbfh
+dd 0221e9f7dh
+dd 0d3d5d1ceh
+dd 0517f398ch
+dd 087854868h
+dd 08bb7892ch
+dd 014b1955ch
+dd 0b724a103h
+dd 06129c2a9h
+dd 025415bd0h
+dd 018a28779h
+dd 01ab8339bh
+dd 084cebe8dh
+dd 02f6944cdh
+dd 0bce2f7c2h
+dd 08b4762eeh
+dd 06827a719h
+dd 0c2819af8h
+dd 042f094deh
+dd 087cc86e7h
+dd 0e8dff61ch
+dd 027723597h
+dd 0cd8c0b5dh
+dd 020ed0d21h
+dd 0635b41a3h
+dd 011c5445ah
+dd 03f550de0h
+dd 01be40691h
+dd 09ce290bbh
+dd 000fb7842h
+dd 045d2c413h
+dd 08ad2a50dh
+dd 03fd0bc33h
+dd 0a2992f62h
+dd 078b80354h
+dd 0bfe555b7h
+dd 077042693h
+dd 0583c1657h
+dd 0de8eadd5h
+dd 063775938h
+dd 0e7e23e84h
+dd 08cfdbbf6h
+dd 0d18604a8h
+dd 04ad0a90ah
+dd 00110a2c3h
+dd 05fea8809h
+dd 00f0699a5h
+dd 04c1eed35h
+dd 09dfb6168h
+dd 060e449dbh
+dd 03c56a1eeh
+dd 0fa220363h
+dd 00786b91dh
+dd 058e71c06h
+dd 0432ac90ah
+dd 0fa7362b8h
+dd 034ff4cc7h
+dd 0f4e254f7h
+dd 0f5922a1dh
+dd 0b9ca4573h
+dd 0ff754f68h
+dd 08dc78ad6h
+dd 02061c27ah
+dd 00ad94928h
+dd 0f1689e9bh
+dd 05ccff061h
+dd 07c27caa8h
+dd 0c264b359h
+dd 0327e690ch
+dd 044169f29h
+dd 031c80c39h
+dd 0c7fcf852h
+dd 05a354a32h
+dd 0d6555224h
+dd 0061e5766h
+dd 09ffc7cffh
+dd 08a961d9ah
+dd 0bdb3d577h
+dd 0128c1102h
+dd 017b86c88h
+dd 0763d8686h
+dd 0898f9e6eh
+dd 07323b316h
+dd 0ea538c54h
+dd 032d96d36h
+dd 0d70ebcc8h
+dd 0b32c5dc5h
+dd 001142a38h
+dd 00a3f340ch
+dd 0cd2270bbh
+dd 05a425c77h
+dd 08c8642c9h
+dd 0f1031c49h
+dd 037bce8e4h
+dd 09b11eb57h
+dd 0401c1f16h
+dd 0903d8178h
+dd 0d45aba64h
+dd 087361a8ch
+dd 09c4fc56ch
+dd 082a938e8h
+dd 0472458cbh
+dd 0f3856594h
+dd 0cab03f51h
+dd 0f3f80712h
+dd 02572312ch
+dd 0734a14d3h
+dd 0b9b97d93h
+dd 0faf01215h
+dd 06fc44401h
+dd 035e67e61h
+dd 0d113bb6ah
+dd 0bf5c73a5h
+dd 0411dc428h
+dd 05bccf34bh
+dd 089db15efh
+dd 0381bfd93h
+dd 07dd22994h
+dd 085232cbeh
+dd 036bfd88ah
+dd 04b8fb147h
+dd 08baf9b43h
+dd 00c5c7b9fh
+dd 0e8633240h
+dd 0eda0a485h
+dd 0872cb72ah
+dd 0e72a96e5h
+dd 06e37ebb2h
+dd 0ea833c02h
+dd 0a52947e1h
+dd 0071f1fefh
+dd 06272ade8h
+dd 0fead7745h
+dd 0ff0774b2h
+dd 0fd5a9d29h
+dd 0cf24ef2dh
+dd 01a32fbb0h
+dd 039caa391h
+dd 09bfb9f54h
+dd 02f1cc100h
+dd 0d22026d5h
+dd 076353c48h
+dd 09333b021h
+dd 034a6196ch
+dd 08e9c9460h
+dd 0b0bcb22eh
+dd 0fb50b977h
+dd 08e2d76e5h
+dd 0d9fa1b49h
+dd 0cac8cb6eh
+dd 0f165668fh
+dd 0faf0761dh
+dd 0d78e7ce0h
+dd 01303c793h
+dd 0926984e3h
+dd 066453684h
+dd 016af2c64h
+dd 04068c65ah
+dd 09c82e4a8h
+dd 0f0a30315h
+dd 0ebd2b7f0h
+dd 0823616ach
+dd 002a9a94dh
+dd 068ab03cbh
+dd 0a35b3995h
+dd 0cba7339ch
+dd 01384eddeh
+dd 05c8d6b9dh
+dd 00b3402b8h
+dd 081fda71eh
+dd 03b3f3199h
+dd 01bad856bh
+dd 0f3be6eebh
+dd 06ba0596eh
+dd 057fdc0fdh
+dd 0e8b96200h
+dd 02a8416bfh
+dd 0a926bd6ch
+dd 0694a4483h
+dd 0f1c1f6a6h
+dd 079a0f52ch
+dd 09b8b3f1ch
+dd 06eaa955ch
+dd 0bd53aecdh
+dd 0db79cedfh
+dd 0edfc0839h
+dd 06d8e5d5eh
+dd 022c715bbh
+dd 0d05baf1ah
+dd 036d578d9h
+dd 0d012f191h
+dd 0fc83de3dh
+dd 0dcd9bf1ah
+dd 0934d2bc4h
+dd 0fd3015b9h
+dd 0b7c882e7h
+dd 0ae3786a7h
+dd 0537a8287h
+dd 04d692a33h
+dd 0477ce72fh
+dd 01efb1043h
+dd 0ed00ced9h
+dd 031814541h
+dd 0243fb52dh
+dd 0c00ae758h
+dd 0c76aae48h
+dd 048159ff9h
+dd 0f47c54b4h
+dd 004e7875dh
+dd 0e681645fh
+dd 0d8b6c44ch
+dd 0d77ce838h
+dd 00c79c79dh
+dd 0d358241ah
+dd 0ddd6b31ch
+dd 05c51426bh
+dd 0f686ade4h
+dd 01f475438h
+dd 00f5299e5h
+dd 06e249904h
+dd 05c56769dh
+dd 017970175h
+dd 029a90756h
+dd 04ae5bafch
+dd 0da9385c9h
+dd 001319c5dh
+dd 0cf77dd80h
+dd 0b7d2c8e8h
+dd 0b961ce40h
+dd 02cba9020h
+dd 02ed57b48h
+dd 04cd94e2eh
+dd 0110d2f3fh
+dd 083d5667bh
+dd 0db931bd9h
+dd 0c36fb07bh
+dd 0a98ac380h
+dd 0de966dffh
+dd 028638047h
+dd 060ef5f25h
+dd 0244aa5efh
+dd 0695cdc74h
+dd 032b04d4bh
+dd 0c12156e1h
+dd 0c5b1c611h
+dd 07a06e430h
+dd 0a6b9d407h
+dd 01ac866c4h
+dd 0c3aa1b3dh
+dd 0d7b9cf9ch
+dd 0e270d113h
+dd 0b003ce43h
+dd 0610f016ah
+dd 0f5a3fc53h
+dd 082ab252ch
+dd 0fc29f709h
+dd 04162709fh
+dd 08ab8536ah
+dd 046123bech
+dd 094fa7769h
+dd 0d4cfcf02h
+dd 07dc2a7e4h
+dd 03deae8e8h
+dd 01cb145e8h
+dd 007258619h
+dd 0d76ccf8ah
+dd 062e18b97h
+dd 04ded1df0h
+dd 01ee8f77fh
+dd 0a66cf3e6h
+dd 0f6a9a022h
+dd 07f8f17cbh
+dd 03953e1e2h
+dd 06fa5712fh
+dd 0093ffd75h
+dd 00230c903h
+dd 082437826h
+dd 081ff1af2h
+dd 0b41334e2h
+dd 0df3013ddh
+dd 0d491cd2eh
+dd 058d5d87fh
+dd 0fe8b8776h
+dd 0a7bb1d8bh
+dd 05d888343h
+dd 0f5aa3b00h
+dd 04a279b29h
+dd 08bc8e569h
+dd 099b4b255h
+dd 0f3832f52h
+dd 074976ca4h
+dd 0602421b0h
+dd 0b4a08530h
+dd 0c99b22dbh
+dd 074773f96h
+dd 0cb7d2647h
+dd 05fcea91fh
+dd 0b5cc3394h
+dd 001a24828h
+dd 0819d0193h
+dd 03e701e42h
+dd 067c221b1h
+dd 007d22acch
+dd 03ae8177fh
+dd 094896a59h
+dd 00471f296h
+dd 0e1eab289h
+dd 03e8044a5h
+dd 04083b05ch
+dd 07409722fh
+dd 0badc5013h
+dd 0e47ace78h
+dd 09903327dh
+dd 05ac23537h
+dd 02eb44505h
+dd 0547d4c3eh
+dd 00185d66eh
+dd 0f8f3b2c9h
+dd 0939c944eh
+dd 0890e9f38h
+dd 0f336ee43h
+dd 0f159c4b3h
+dd 079375117h
+dd 012f72982h
+dd 053de5b21h
+dd 0a0074b4bh
+dd 08399ad90h
+dd 04f49b3aeh
+dd 0ca27f7f6h
+dd 0b6ab8fc2h
+dd 0abcdabddh
+dd 071bffe01h
+dd 0c2b844b2h
+dd 02552450ah
+dd 09a720129h
+dd 0ca357b0ah
+dd 00c3eb2f1h
+dd 017c5f7a5h
+dd 047e5f892h
+dd 05bc53e23h
+dd 0f037b52bh
+dd 075b8f1eah
+dd 004019e28h
+dd 0d3c351dah
+dd 0deadabdfh
+dd 06618a406h
+dd 0472ff84bh
+dd 055060612h
+dd 0e2253515h
+dd 042efcfb8h
+dd 095b207c3h
+dd 0826b8b77h
+dd 0c8406e03h
+dd 0c0de4c6ah
+dd 0f6090e75h
+dd 028ab0608h
+dd 012e9def8h
+dd 0e806b945h
+dd 05d67fb08h
+dd 04ac322aeh
+dd 088dc542fh
+dd 093798ce9h
+dd 018656bb7h
+dd 08f5d0dc7h
+dd 00a138759h
+dd 0ec1c9dd8h
+dd 057e94417h
+dd 0570fdb22h
+dd 09b1e50c7h
+dd 00bdcc9e9h
+dd 0a753851ah
+dd 04c4e5ac1h
+dd 0d540189eh
+dd 08a88c1eah
+dd 04b0a4cbah
+dd 00242d8dah
+dd 0752d1b2dh
+dd 027c106efh
+dd 06ca319d3h
+dd 0929d0bd6h
+dd 0a20dd2deh
+dd 0df3bd200h
+dd 0fe31b496h
+dd 0b8146963h
+dd 0a4024e49h
+dd 031adc4c8h
+dd 0b2f06be5h
+dd 05174f028h
+dd 0f11769d8h
+dd 0839329f7h
+dd 0a5357697h
+dd 033dc2690h
+dd 0573b3b3eh
+dd 0a5187176h
+dd 0612a1804h
+dd 0eae05eabh
+dd 00cccf434h
+dd 0972007ceh
+dd 0955cd178h
+dd 08bd33567h
+dd 03aab3bc2h
+dd 07c843376h
+dd 0fe336dddh
+dd 0c21bdfa1h
+dd 0edbe4e86h
+dd 0385578dah
+dd 086357de8h
+dd 0ffb9221bh
+dd 099081613h
+dd 07058bf63h
+dd 0dd55293eh
+dd 0c768eff0h
+dd 078552651h
+dd 03305b763h
+dd 098b5d7cfh
+dd 08dedf8eeh
+dd 084a80f76h
+dd 055b47563h
+dd 0e573c1a9h
+dd 05617e0beh
+dd 0a6f4d26dh
+dd 0f159ed47h
+dd 03edc2077h
+dd 0412a9c62h
+dd 0c2402078h
+dd 062f5867bh
+dd 00bf45f7dh
+dd 0b05ffb17h
+dd 0bf57c126h
+dd 0e26000bfh
+dd 0528968d9h
+dd 0224c3798h
+dd 0698eea59h
+dd 0814b2e25h
+dd 0e0f23b12h
+dd 00a23563dh
+dd 04e168851h
+dd 0351c2693h
+dd 088aa64a5h
+dd 0cdd91b12h
+dd 0c8ae165ch
+dd 0a946a22fh
+dd 04d9e7815h
+dd 0723bbba4h
+dd 0c9beaf5bh
+dd 0fd931bcdh
+dd 07b42d0e2h
+dd 04e69f556h
+dd 0b25389f4h
+dd 019c80fc5h
+dd 0fa3fafe0h
+dd 0da8be4c3h
+dd 04a870bb8h
+dd 07f8e25f9h
+dd 062439fadh
+dd 04b0ca9fch
+dd 0bfb48448h
+dd 0418aee4dh
+dd 096014d5ch
+dd 05cd849c2h
+dd 032965bbbh
+dd 0c435568bh
+dd 04f7b632bh
+dd 06a8940b8h
+dd 06d64a84ch
+dd 09cbe9646h
+dd 068a93066h
+dd 033455b5ch
+dd 07c7beb29h
+dd 07673f655h
+dd 0cd36dca8h
+dd 04d47f4b4h
+dd 0fba164efh
+dd 04d531814h
+dd 0c53065a7h
+dd 01b64b4dch
+dd 0e57afc8dh
+dd 0a617fc9ah
+dd 043b8da44h
+dd 074f8f180h
+dd 02f76b823h
+dd 00f65b76ch
+dd 0cc050df3h
+dd 0c0e11f1fh
+dd 06d4728bah
+dd 00dbc6f06h
+dd 010e0d797h
+dd 03494d2b2h
+dd 07eaf424ah
+dd 0a52a29e0h
+dd 0e30f45fbh
+dd 02c290c67h
+dd 007b735dbh
+dd 0831c988ah
+dd 0acc3e230h
+dd 0b1c1e9e0h
+dd 0961733a8h
+dd 047f25acfh
+dd 0472f1bc0h
+dd 0ff7956d2h
+dd 0038c38d5h
+dd 0447b2294h
+dd 0a55fb595h
+dd 074e8fa72h
+dd 0500f764ch
+dd 036c27932h
+dd 026300e4bh
+dd 02137eff0h
+dd 04539ed30h
+dd 0e1e6f799h
+dd 07e5585b9h
+dd 0cb99556fh
+dd 0d8764d5ch
+dd 096709f55h
+dd 0c7533f18h
+dd 0ffabda7dh
+dd 0042bec92h
+dd 01b373559h
+dd 0aad568d9h
+dd 0f0a81848h
+dd 05b0bd176h
+dd 0b8dd0ecch
+dd 0b630a786h
+dd 041c795aah
+dd 0544540ddh
+dd 0439f52cch
+dd 0777f5628h
+dd 095dedce9h
+dd 096bfbfcfh
+dd 0fe53121fh
+dd 0d32f8260h
+dd 052d80e2bh
+dd 09b6ce080h
+dd 0cf238d5eh
+dd 005097c57h
+dd 06d9c0696h
+dd 0c841c299h
+dd 0da5daee5h
+dd 0e19e5399h
+dd 046f1ab56h
+dd 03cfb7d91h
+dd 0fa0148e8h
+dd 0267e9b3dh
+dd 082804c40h
+dd 0fe4c703dh
+dd 03d45f7b6h
+dd 07b9b501fh
+dd 00d286b84h
+dd 061fa208dh
+dd 0daf99019h
+dd 09806d06dh
+dd 0e008b1d0h
+dd 0e17f76fdh
+dd 0b90b27a6h
+dd 0d4f8ef1ah
+dd 08fae2176h
+dd 0a4f2f537h
+dd 0036dbc95h
+dd 0fe998ef9h
+dd 0d9c0032bh
+dd 03b4e8b92h
+dd 0bffb9334h
+dd 0473683e5h
+dd 0c12ea942h
+dd 06df1e93ah
+dd 0529d0839h
+dd 0e7a3bf8eh
+dd 027765cc0h
+dd 0ada1420bh
+dd 044bd7327h
+dd 04358f910h
+dd 03b4b9953h
+dd 0058f3f0dh
+dd 034c54547h
+dd 064323c07h
+dd 02584d8e7h
+dd 0fc91ce12h
+dd 099ed5ec4h
+dd 0877bdaach
+dd 0159b8134h
+dd 073bacb44h
+dd 0cce039d9h
+dd 0354d2bd0h
+dd 0ae74212ch
+dd 05551d2d8h
+dd 01decf48ah
+dd 09b0bf7cbh
+dd 0a3757e64h
+dd 05170dbb5h
+dd 07a8f8b97h
+dd 0d20444b7h
+dd 01bf63516h
+dd 0ccb81d8ch
+dd 0364541d1h
+dd 0ad27aa4ch
+dd 077c8ae58h
+dd 0ae835662h
+dd 0fd116d07h
+dd 048bcbbe2h
+dd 052d3c375h
+dd 0f93bdc25h
+dd 0b49700bch
+dd 0961bfad8h
+dd 0be1df0c9h
+dd 0d2939344h
+dd 0be9318dah
+dd 0846c1f74h
+dd 0108d5371h
+dd 0c32ad438h
+dd 05fe9f920h
+dd 011656d3bh
+dd 08d484735h
+dd 0a0e3c49eh
+dd 0986209aah
+dd 06a623877h
+dd 0c0a9a456h
+dd 0c165a879h
+dd 0fa0a598ah
+dd 088b2608dh
+dd 0ac681edbh
+dd 024b7d1d4h
+dd 0474e73dch
+dd 0e8bd7b16h
+dd 0f9fde243h
+dd 0c0d17c84h
+dd 08c4f0349h
+dd 07ef8afe9h
+dd 0833e748bh
+dd 0cdb611b8h
+dd 03eec4635h
+dd 07cb96e85h
+dd 079c5d441h
+dd 002d460adh
+dd 0d6f40f4fh
+dd 057eefb9ah
+dd 0e1e278e6h
+dd 07dd9a153h
+dd 0dc85f822h
+dd 0fd562864h
+dd 0a9b1814ah
+dd 0bad25d26h
+dd 0ecb916efh
+dd 0211db68eh
+dd 06542484fh
+dd 08b4168a6h
+dd 06afe285ch
+dd 06f075c89h
+dd 068462922h
+dd 069081daeh
+dd 0528f3b10h
+dd 09ddc8e34h
+dd 04f079480h
+dd 0ed5b6300h
+dd 0b3d8480eh
+dd 0f44ca485h
+dd 0d28c6ec0h
+dd 035bbb396h
+dd 029680ff8h
+dd 0750e0772h
+dd 0d039f145h
+dd 0ba903caeh
+dd 08db6ea72h
+dd 024f7ba6dh
+dd 04db01b7bh
+dd 042d0cdech
+dd 042b0556ch
+dd 0a93d2d5ch
+dd 0823288e6h
+dd 0dd5a0843h
+dd 0d4e6d4feh
+dd 0fae8a4f6h
+dd 0b69b60d2h
+dd 0badf70dah
+dd 08d1d9d9eh
+dd 0c828494ch
+dd 08379ef74h
+dd 0e671c476h
+dd 06bf8840ah
+dd 0356f0ac9h
+dd 04ad8a3a6h
+dd 0a3124353h
+dd 0f9771302h
+dd 07b17383eh
+dd 0df1f41b7h
+dd 0789ed047h
+dd 004c5edbeh
+dd 0453e9fc6h
+dd 0df6dadb9h
+dd 0875b3067h
+dd 0ad93ee0eh
+dd 04aec42ebh
+dd 0402e792dh
+dd 05081b336h
+dd 0783e5570h
+dd 06bcafac9h
+dd 0e8239510h
+dd 048799092h
+dd 074eabcb1h
+dd 024a049e9h
+dd 0816c41a8h
+dd 0c0565453h
+dd 09fe48c33h
+dd 0b355e80fh
+dd 039d8e9cfh
+dd 01b67714ah
+dd 0a4dc393bh
+dd 0b0f3f2e7h
+dd 065c77096h
+dd 02e58b5d0h
+dd 0af82f48ah
+dd 03de1e84dh
+dd 0499222fch
+dd 0d76845a4h
+dd 0097af49ah
+dd 0f592d956h
+dd 0aab75963h
+dd 0959b1726h
+dd 0c8cb1f68h
+dd 0f3ff67fah
+dd 006243b25h
+dd 09ee30b90h
+dd 03c8c911bh
+dd 05bd64c18h
+dd 0a1b9db86h
+dd 0c0556540h
+dd 0cec8719eh
+dd 07efcaa08h
+dd 0a8cc7bcfh
+dd 0b9e8fedbh
+dd 02f0e69f6h
+dd 07c07dc67h
+dd 0180e1b97h
+dd 05cbdea93h
+dd 079655e99h
+dd 08aef2ae0h
+dd 0f8edd81dh
+dd 097a2e521h
+dd 0d1d7fbd8h
+dd 0a78e776bh
+dd 07e8f8173h
+dd 0c5609cech
+dd 046eca7bdh
+dd 01b2b0f29h
+dd 0f51f9c9bh
+dd 0e020c7dbh
+dd 01cd05740h
+dd 0a8ac3a58h
+dd 073721542h
+dd 0e7c94cd0h
+dd 0dc06f017h
+dd 0c761007ah
+dd 0c6eb9250h
+dd 0c4ab39afh
+dd 0b43432c8h
+dd 054687695h
+dd 06bafbe26h
+dd 02f850777h
+dd 0b31ab826h
+dd 0168f2ef3h
+dd 0d318b20fh
+dd 04e8d1292h
+dd 0e481c8a1h
+dd 0b9979bd9h
+dd 0c4fddd32h
+dd 0e7998478h
+dd 0e6a74dbdh
+dd 09ba43421h
+dd 0f1168f76h
+dd 0a48c1e65h
+dd 03bac95deh
+dd 0ce223dd6h
+dd 0de347d2fh
+dd 0c0ae441fh
+dd 0ef59cf22h
+dd 03d4745e8h
+dd 0b8999624h
+dd 0618269eeh
+dd 02763dfafh
+dd 0ed1e6c4bh
+dd 0f05952d5h
+dd 0d3903cach
+dd 0b991564ah
+dd 0306b05c2h
+dd 019657246h
+dd 0e07f0999h
+dd 0124d2036h
+dd 0059c5faeh
+dd 029df4661h
+dd 0e177372eh
+dd 059f16fd9h
+dd 03c5fa2d6h
+dd 088f19cc3h
+dd 0c33580ceh
+dd 0695c9118h
+dd 0d8ae3663h
+dd 098e64ebah
+dd 09c0c1614h
+dd 0f09d3f5bh
+dd 07ee9ba76h
+dd 0aafee442h
+dd 0d0a87739h
+dd 08f46dc37h
+dd 0c94cb204h
+dd 0cf0dba0bh
+dd 045e3a6bfh
+dd 0e8d1bd44h
+dd 0c64725c9h
+dd 017da8867h
+dd 0b196e759h
+dd 0b40f77e2h
+dd 0d49a2bd9h
+dd 08b1b3dd0h
+dd 02e8c7bd0h
+dd 0843f548ah
+dd 056d4b005h
+dd 0ed7eedfah
+dd 00ffdd352h
+dd 0251f59f9h
+dd 0732f0ba0h
+dd 0357910f0h
+dd 027b2e591h
+dd 004028518h
+dd 01bc5cf8dh
+dd 0070cdbb6h
+dd 0166311f7h
+dd 017bd5d6ah
+dd 081e2760dh
+dd 0c7fa0560h
+dd 04590d716h
+dd 0185a8931h
+dd 0cf719339h
+dd 00c426e53h
+dd 0af2393c4h
+dd 0c77db2d2h
+dd 050c4a2e9h
+dd 0d0cbaad1h
+dd 09793898eh
+dd 0547caa67h
+dd 0ff195623h
+dd 0b5a087ech
+dd 08344be71h
+dd 0967d6506h
+dd 0df204088h
+dd 075a9f2b8h
+dd 00e44e212h
+dd 0b06c96d1h
+dd 00fdebfa7h
+dd 079bf51bbh
+dd 0add70486h
+dd 0a3e7094fh
+dd 0f9bde632h
+dd 028da64c9h
+dd 01ab351a7h
+dd 0e7ee35dbh
+dd 01ae0278ch
+dd 0d438b526h
+dd 0e96bd30dh
+dd 0af706170h
+dd 03bf5183bh
+dd 0d992799ch
+dd 0a4ead95eh
+dd 0247d3447h
+dd 03aeba81bh
+dd 0b2b510a5h
+dd 053713d03h
+dd 02d53917eh
+dd 01c36814ah
+dd 0db3c8d28h
+dd 07cd43d56h
+dd 0b70ecde7h
+dd 06cfbd9feh
+dd 0a867494dh
+dd 05396f778h
+dd 01d5f32f1h
+dd 07eb265c1h
+dd 0f4da923bh
+dd 05a069637h
+dd 0eda8ed86h
+dd 08038c88ah
+dd 00ff59242h
+dd 0c1c9afd9h
+dd 0c8b6b09fh
+dd 00c0ceb14h
+dd 0565ecf26h
+dd 055b098cdh
+dd 060d4401eh
+dd 0a9762387h
+dd 01e20f0b5h
+dd 0f825eb90h
+dd 0a39e23b4h
+dd 0b3696314h
+dd 0ae898877h
+dd 09e624ac6h
+dd 0e0e187d6h
+dd 080316602h
+dd 0f4fd7cd3h
+dd 0909ba9c3h
+dd 070f66d93h
+dd 0b5643034h
+dd 030a5fa65h
+dd 0301916fdh
+dd 03a79895dh
+dd 06376da7ch
+dd 0c378002ah
+dd 027f4af9ch
+dd 0bfb57e7ch
+dd 055ac38a7h
+dd 03852eca3h
+dd 07eb4d650h
+dd 0bee60660h
+dd 0cc35e79ch
+dd 035940b6fh
+dd 02985cdefh
+dd 02dfa495eh
+dd 04ae7563ch
+dd 0953695e5h
+dd 0855443e9h
+dd 09b0f3503h
+dd 07154fc94h
+dd 08e4f03f8h
+dd 0cbf4fa1bh
+dd 0e1759cd9h
+dd 072d50985h
+dd 0a9457e1dh
+dd 0e9702793h
+dd 0840a835ch
+dd 03dfeb3dfh
+dd 0e1709d7eh
+dd 000e88027h
+dd 0908a40e8h
+dd 051304f70h
+dd 0a556070fh
+dd 04f50c510h
+dd 011efc1a6h
+dd 020f0ddeah
+dd 0a7f37879h
+dd 0e172d7f6h
+dd 0fbf58202h
+dd 0bf28a23dh
+dd 0d3edf393h
+dd 07d0f3c1ah
+dd 045558451h
+dd 0971be9bah
+dd 0dd2ce4bah
+dd 0addd7a49h
+dd 02c077d7eh
+dd 09acd1bffh
+dd 018bf2933h
+dd 051345c21h
+dd 0c0e91b5ah
+dd 0f981dbc3h
+dd 0a0c18305h
+dd 08f3d4e13h
+dd 0ea3e9b97h
+dd 0e1eef690h
+dd 08146ce84h
+dd 0ea403c57h
+dd 08d03935bh
+dd 08d54a8a6h
+dd 08621fac6h
+dd 09db24554h
+dd 0a021b1ech
+dd 0da26150dh
+dd 0a2a7c643h
+dd 03f516352h
+dd 089c58c5dh
+dd 0a9c787efh
+dd 0e39c2c35h
+dd 0dce3e77eh
+dd 00253d329h
+dd 01628ccebh
+dd 0dba83da7h
+dd 0b5d86a8dh
+dd 0eed22daeh
+dd 0c908b0e3h
+dd 052150f56h
+dd 02eef49a0h
+dd 0685cbd86h
+dd 03e5e8cd2h
+dd 06cbc8985h
+dd 0e1bbd219h
+dd 0eb40e394h
+dd 0e3eb1e8bh
+dd 04d55574bh
+dd 017be8107h
+dd 0f5a96f91h
+dd 06a883c60h
+dd 09dbb6237h
+dd 076e7886ah
+dd 0b2020b07h
+dd 0dc11b502h
+dd 0d02f0ecbh
+dd 0940d619fh
+dd 0b4395c20h
+dd 0bc840e03h
+dd 047585d10h
+dd 0c2e09ed5h
+dd 0dc0c004ch
+dd 0f9fe1404h
+dd 0a0dbe5e7h
+dd 03a621b31h
+dd 0c8968c9fh
+dd 0cd8daf61h
+dd 09194668dh
+dd 01a610db0h
+dd 0c01cfad7h
+dd 00a26140ch
+dd 05b14e321h
+dd 0b7ca7525h
+dd 09cc2214ch
+dd 0f4ea355dh
+dd 02d268c88h
+dd 0a2d170a3h
+dd 0b68acc81h
+dd 0738c4409h
+dd 0870af4bch
+dd 041382876h
+dd 029ac2f9ah
+dd 0ff4a4c0bh
+dd 031ff9c10h
+dd 01fee9f28h
+dd 079fa2d94h
+dd 0e5841522h
+dd 00a481889h
+dd 0c8f83c3ah
+dd 0bfc57088h
+dd 0cce3d879h
+dd 0c527517ah
+dd 0fff10ef5h
+dd 0a4b714ceh
+dd 0f0df5f81h
+dd 05d924e98h
+dd 0769d074eh
+dd 06fc48dc4h
+dd 0163ec6ffh
+dd 00ab7723bh
+dd 07dac653dh
+dd 038b5092dh
+dd 08944d7cdh
+dd 0d7277895h
+dd 02a8028bdh
+dd 0c8a4d37bh
+dd 0a4f72303h
+dd 0edfde0d2h
+dd 0fdff8011h
+dd 001913e94h
+dd 0bd1b7739h
+dd 0fa2c9f3ch
+dd 0bec13fd4h
+dd 0e7789315h
+dd 075d4df23h
+dd 02fb86673h
+dd 0ca2404f7h
+dd 069272539h
+dd 08de1e492h
+dd 0205698bfh
+dd 0714d30f0h
+dd 03aee0a84h
+dd 036673926h
+dd 021e714fah
+dd 08f039684h
+dd 04dd6753fh
+dd 0685d551ah
+dd 00771fe23h
+dd 076661df9h
+dd 0d3d6263eh
+dd 0873b0d00h
+dd 0af5c5a17h
+dd 0d26c4c23h
+dd 0b1abc31bh
+dd 02043b0eah
+dd 05d115486h
+dd 0b3d33c7dh
+dd 05ea35651h
+dd 0239ae398h
+dd 09cf7351ch
+dd 0ae346f51h
+dd 0e2935245h
+dd 0957c4ff4h
+dd 02018e061h
+dd 082dd3e7dh
+dd 02f351392h
+dd 0ce6b9608h
+dd 0f7bf3c47h
+dd 07999139dh
+dd 09ff6b750h
+dd 0324826f4h
+dd 024cd7f6eh
+dd 08f6e7526h
+dd 01b222be6h
+dd 0be9e60a2h
+dd 086ba889eh
+dd 08bae0555h
+dd 00660097ah
+dd 0f311488ah
+dd 0feb43d10h
+dd 0388ea440h
+dd 07c603586h
+dd 0228df3d2h
+dd 0493b7e29h
+dd 01fa2906ch
+dd 094e27d51h
+dd 001cd9552h
+dd 05e707750h
+dd 07b89218ah
+dd 0a01daca0h
+dd 0bcdd1c22h
+dd 03d65e9a1h
+dd 0cc99aa8ch
+dd 0ba46821ch
+dd 0fcef0aa5h
+dd 0be715c3dh
+dd 0ae8a27e2h
+dd 01391caefh
+dd 0b2cf4e21h
+dd 0d0ac463eh
+dd 0629c02cdh
+dd 099f7c5cch
+dd 0534dba13h
+dd 0b657a801h
+dd 0628091ceh
+dd 0723102cch
+dd 06fc9d970h
+dd 0cf54acceh
+dd 09ea79ee3h
+dd 0636d1d41h
+dd 06a75d90bh
+dd 0690da61ch
+dd 016c5091dh
+dd 06bd3d3ddh
+dd 0a811dd7fh
+dd 0ed44a762h
+dd 091b2471ch
+dd 0846230e1h
+dd 0d0bdff3dh
+dd 0323224f3h
+dd 0978208f1h
+dd 067d2f0a6h
+dd 0f18e50c1h
+dd 09ba2f51dh
+dd 0d27fc3ddh
+dd 0fcccf81ch
+dd 0eaaefccfh
+dd 08fe11bc8h
+dd 0bed7ca2ch
+dd 0e23757e9h
+dd 067067bc6h
+dd 0a8ca8273h
+dd 0cd584a4ah
+dd 0eedd4742h
+dd 0d356bafah
+dd 07acf82deh
+dd 088df0153h
+dd 0eacd576ch
+dd 07506d2adh
+dd 03063c823h
+dd 03cd6161eh
+dd 073104302h
+dd 07e0e6323h
+dd 040e9e0b0h
+dd 0d1c09e09h
+dd 04d857e6eh
+dd 004ae0b5eh
+dd 0850f657ch
+dd 06e0f0c19h
+dd 06cb4556dh
+dd 00be7c097h
+dd 0df2db6bah
+dd 07c86528ch
+dd 050c96350h
+dd 0aff78fa3h
+dd 0a25df3bfh
+dd 0fe90d54eh
+dd 0db80b142h
+dd 0643a1ce3h
+dd 0dd741deeh
+dd 0523c38ffh
+dd 02e25e7d3h
+dd 00f121dcch
+dd 0aecba702h
+dd 0bdc2efcfh
+dd 0f8d1aba1h
+dd 0d67f00beh
+dd 0c708c2b1h
+dd 0180564aeh
+dd 0c3db03c9h
+dd 0739c04feh
+dd 077ab109ch
+dd 0bf4dfb00h
+dd 003ab1fbah
+dd 065274794h
+dd 0e01d6bfah
+dd 0ba82c345h
+dd 0d12de8f9h
+dd 0c1ff976ch
+dd 0828b5505h
+dd 0e561c4e3h
+dd 056400ffdh
+dd 0b431b158h
+dd 078c2a1e0h
+dd 0076cb0e7h
+dd 0dfbbee4ah
+dd 06af204d3h
+dd 0e3971884h
+dd 0187860abh
+dd 0b1af3df3h
+dd 05b02c5dch
+dd 08d2cf6aeh
+dd 07406197ch
+dd 0b946cf5ch
+dd 0108f4dach
+dd 0fb5baa55h
+dd 0168380c4h
+dd 0555bbcf7h
+dd 085c27fe6h
+dd 0ee3ed391h
+dd 046b4e3e5h
+dd 00c8c26cfh
+dd 0e35d7100h
+dd 0b9152456h
+dd 02c5be475h
+dd 00ac4ce78h
+dd 0d852b4b6h
+dd 0e8c7d6e7h
+dd 08174954dh
+dd 079eed3d2h
+dd 054ba313eh
+dd 072c54560h
+dd 00c5c7db7h
+dd 0d2cfbd92h
+dd 033d00200h
+dd 0c5a466b8h
+dd 0eb6dee95h
+dd 0dfa33499h
+dd 06f4953dch
+dd 06bf7cf5bh
+dd 0efe97aa1h
+dd 0eab120a4h
+dd 01cf8be7ch
+dd 06dc87ccah
+dd 01394d8fah
+dd 025fce1f2h
+dd 062d7d1cch
+dd 0c32ca543h
+dd 09462f9b8h
+dd 0c9b95dd0h
+dd 071ed0a76h
+dd 0c6070d8bh
+dd 05125e312h
+dd 02c7ea104h
+dd 05d875955h
+dd 09f9f5a14h
+dd 0cf21dde8h
+dd 09b8d1bc8h
+dd 082b75b88h
+dd 0ed24df93h
+dd 0d5d4dbdeh
+dd 07e508583h
+dd 0a4032e0eh
+dd 08fa4618bh
+dd 0c4a62c45h
+dd 0c54b0c80h
+dd 07a573436h
+dd 044f2888ah
+dd 0e652697ch
+dd 0204828bah
+dd 0cf9c8455h
+dd 0456570fch
+dd 00cf0aa59h
+dd 0174b55e3h
+dd 032a6564dh
+dd 08564d0b7h
+dd 0f562dd8bh
+dd 061eff4e5h
+dd 09ce1d216h
+dd 0a2be51f8h
+dd 092283232h
+dd 0b392b5ffh
+dd 0af8e4eedh
+dd 0494b9792h
+dd 0b84d4db2h
+dd 01a7f5c61h
+dd 0122ac8fdh
+dd 055443642h
+dd 0100c55fch
+dd 01a5cafc8h
+dd 022debe1eh
+dd 0bc3f7c3ah
+dd 0c73d575eh
+dd 09fb38203h
+dd 04f87051fh
+dd 04f403ec0h
+dd 0fb13fd31h
+dd 0a3c5112bh
+dd 0e08a2b16h
+dd 0221186a6h
+dd 0d324b8e1h
+dd 0bbddcf8bh
+dd 07fcdbe4dh
+dd 05a5bc2fdh
+dd 0b1156ed1h
+dd 02f11b555h
+dd 0c21712f1h
+dd 04a9a13d8h
+dd 0a50dd279h
+dd 064b0342ch
+dd 07177fe7ch
+dd 0aaf011d3h
+dd 075cfdd8dh
+dd 01738493fh
+dd 03e199b9bh
+dd 06ffe5d2dh
+dd 02c04f610h
+dd 02df7b2e7h
+dd 09d2fe2ech
+dd 008a74fdfh
+dd 0f8743553h
+dd 0d4a94133h
+dd 05fd309d0h
+dd 0c12229c9h
+dd 0b1b124ebh
+dd 0abe0a926h
+dd 0eca28d28h
+dd 07a2acac2h
+dd 0154cd4dah
+dd 0bb908367h
+dd 0cc8d6f30h
+dd 0588fccf3h
+dd 00074891fh
+dd 0b6eb080bh
+dd 0629999c6h
+dd 0b9cd252dh
+dd 08eed05dbh
+dd 09347e985h
+dd 0c1d46cdeh
+dd 07313c070h
+dd 0f79d327eh
+dd 0d95ca765h
+dd 0e1190b70h
+dd 04dc981f4h
+dd 0da6d94a3h
+dd 0190c2032h
+dd 03ba5ba92h
+dd 03f3ba54fh
+dd 0b7631be7h
+dd 0b0a1748ah
+dd 042490e49h
+dd 061b656d2h
+dd 019a6ec7ch
+dd 074ee1e18h
+dd 0b6ff1e15h
+dd 03f75a8aah
+dd 0637180e9h
+dd 084ddffd3h
+dd 049bf5799h
+dd 0a2e864e6h
+dd 0a31150c2h
+dd 0d79a652dh
+dd 04a41b1f4h
+dd 058a3ccc4h
+dd 0b9d8914dh
+dd 0dabe3075h
+dd 077d12bb5h
+dd 0d2908eafh
+dd 0bbbaecd4h
+dd 06aef9ffch
+dd 0bbe04413h
+dd 0c1b6bb39h
+dd 0b2254c9fh
+dd 0dbefc627h
+dd 06f5eb3b9h
+dd 07a7997aeh
+dd 041fe85ddh
+dd 05eb32fa3h
+dd 004243e06h
+dd 037a8a1deh
+dd 0ab0fdeafh
+dd 04e2c8855h
+dd 091e3b438h
+dd 0aa497e43h
+dd 097d2462dh
+dd 06e8ebdb2h
+dd 0e6a336aeh
+dd 0daf27719h
+dd 0ee42ba46h
+dd 0688c043fh
+dd 092ef965fh
+dd 0d0dd6eeah
+dd 0de9f5338h
+dd 0534cad3ch
+dd 01b3f12dah
+dd 03f14087ch
+dd 025445b99h
+dd 002f2e791h
+dd 0a2ffb313h
+dd 06dc72261h
+dd 048873327h
+dd 0a89af1bbh
+dd 02b3413abh
+dd 04dd2f41dh
+dd 01fe4d895h
+dd 01b005fa8h
+dd 0c517668bh
+dd 026c38783h
+dd 072913ac6h
+dd 0194cd313h
+dd 0927dd817h
+dd 0605c86a9h
+dd 012f5e3bah
+dd 0729f1f60h
+dd 0ef49ba6dh
+dd 006cd624dh
+dd 0c22df42ch
+dd 0d11fe15ah
+dd 0d75fa350h
+dd 0c75d79d7h
+dd 097083140h
+dd 01fb24b1ah
+dd 0f513818ch
+dd 016debc55h
+dd 07023a12fh
+dd 0191c6a5ch
+dd 071253bc1h
+dd 0c3674dd5h
+dd 0d274965dh
+dd 05eb0285bh
+dd 08197de5dh
+dd 0fce4a406h
+dd 07808b430h
+dd 0c8861a17h
+dd 0e5861364h
+dd 061cd048eh
+dd 0ba952b63h
+dd 00f2e809eh
+dd 005537a2bh
+dd 033eac8eeh
+dd 0dc5be0ddh
+dd 0a5004545h
+dd 03d4079c2h
+dd 051fefa1bh
+dd 0ead03280h
+dd 029b398a3h
+dd 0f501dbd6h
+dd 04f454d1eh
+dd 0ea8f8c2fh
+dd 0d9f3f71bh
+dd 047f0d8eah
+dd 04c2c198bh
+dd 0199f93c6h
+dd 0e76663e1h
+dd 0b1167210h
+dd 00e78d7abh
+dd 0ceee4ba2h
+dd 0d4cf044ah
+dd 06b8833e6h
+dd 0154bcf6ah
+dd 0924bd785h
+dd 0fe5833deh
+dd 080fd5d76h
+dd 06d89143ah
+dd 02dfec09ch
+dd 06a515075h
+dd 059aef705h
+dd 02b040bfeh
+dd 035c9d7e1h
+dd 0b6682e7ah
+dd 0324dd827h
+dd 088f6f986h
+dd 09cd979fch
+dd 011fa189fh
+dd 0e109ba0eh
+dd 0c1da4654h
+dd 043a99dc1h
+dd 07ded7afdh
+dd 05db6a9ach
+dd 076693fc9h
+dd 080c7eebfh
+dd 0b4136db7h
+dd 07cfd72f8h
+dd 08577a631h
+dd 0d169188fh
+dd 06fd1955dh
+dd 03d3eb40eh
+dd 0bacdcc5eh
+dd 005288539h
+dd 0bd3fc492h
+dd 08d73361ch
+dd 02a388ba0h
+dd 08692a55dh
+dd 0ee159305h
+dd 0656318f3h
+dd 08ae91555h
+dd 0aa39ef23h
+dd 08940bd1dh
+dd 0bc887fbdh
+dd 04c392311h
+dd 0ae407496h
+dd 01ec3be97h
+dd 082d27a4dh
+dd 0b1c9d8d6h
+dd 073966ca0h
+dd 0f83bc796h
+dd 00a208cd5h
+dd 0b4a6bbbah
+dd 0c87def1bh
+dd 024cf26bah
+dd 0f10acb92h
+dd 0fa132f59h
+dd 058dc4cefh
+dd 0b74c5ed6h
+dd 06d10c448h
+dd 0cb7adb1bh
+dd 07b88a465h
+dd 09bf7b61eh
+dd 080d1f87ah
+dd 05900c9fdh
+dd 0be18ecefh
+dd 08cd80342h
+dd 0a86c75bfh
+dd 0affa116bh
+dd 0ff077650h
+dd 0239eafb2h
+dd 06f2d4fc7h
+dd 0ec338e56h
+dd 029b1bd33h
+dd 073847463h
+dd 0e2af1b0ah
+dd 063c282ddh
+dd 0bafce293h
+dd 04e4996e1h
+dd 067590052h
+dd 0026fe22bh
+dd 0d0321359h
+dd 0465dacc8h
+dd 0448f0817h
+dd 08329a1ech
+dd 0fdc49937h
+dd 09520f647h
+dd 0656ca0edh
+dd 05534cbf2h
+dd 0680c7e11h
+dd 013c2fe74h
+dd 0ff52a6c8h
+dd 040488e33h
+dd 0dcdd90f5h
+dd 0fde93e0ah
+dd 0833de260h
+dd 0a6234db4h
+dd 0370092e1h
+dd 00167e9dch
+dd 07b2734fah
+dd 08bb89a9fh
+dd 02c72fb8ch
+dd 0591f4366h
+dd 0a4f1374ch
+dd 098b5fafbh
+dd 03734ee95h
+dd 036f438d3h
+dd 0bed0d94ch
+dd 0d923adffh
+dd 06f4ddda3h
+dd 0dd534bfdh
+dd 07ac55bdbh
+dd 0a0baf2ddh
+dd 0b1cccefdh
+dd 058540212h
+dd 0ebcf292fh
+dd 00a2dfcebh
+dd 09a50d6b8h
+dd 03107cee7h
+dd 08e538c0dh
+dd 057c05464h
+dd 07a151189h
+dd 059e39ae9h
+dd 0c960c9b7h
+dd 0d61fab1eh
+dd 0378005dah
+dd 0637b8ea0h
+dd 0450d8745h
+dd 0a367b10fh
+dd 0d6fe25adh
+dd 0d8c44408h
+dd 04c1ee4feh
+dd 088b453ddh
+dd 08f6c6c09h
+dd 0b7346a5eh
+dd 0faaa245ch
+dd 01691df39h
+dd 0ae951710h
+dd 080dd0a02h
+dd 06dcd44d6h
+dd 0127c1dfdh
+dd 0ed1691c5h
+dd 06653b1e0h
+dd 05964f590h
+dd 06f7935e0h
+dd 0ed888a69h
+dd 0ca0b7078h
+dd 080a99f0dh
+dd 03fb96863h
+dd 015acfe61h
+dd 01fb282fdh
+dd 0544a698ch
+dd 0f5fc17c3h
+dd 0958ca1c2h
+dd 0ad13302ah
+dd 017ef3ff8h
+dd 09c7b4644h
+dd 0c4b24740h
+dd 0540d92ddh
+dd 0f8e387d4h
+dd 0792ff9f0h
+dd 0438fe413h
+dd 094bf0597h
+dd 03b9ebcfch
+dd 0b2d9126dh
+dd 0b9e15e98h
+dd 03cfa242eh
+dd 06286dd46h
+dd 0dc99c21ch
+dd 0b2401bd2h
+dd 0dda8edeah
+dd 0401abdbfh
+dd 08c0a1a8eh
+dd 0910ba456h
+dd 0e6ec5cf9h
+dd 0017e283ah
+dd 0b907099eh
+dd 054b60933h
+dd 0bb79509ah
+dd 08bb7db36h
+dd 069067cf8h
+dd 0f6e85a77h
+dd 0702933d4h
+dd 075592a2ah
+dd 07a76b028h
+dd 05c1910c1h
+dd 0a5478fbfh
+dd 093ecb9b7h
+dd 07d3c9d20h
+dd 013863d55h
+dd 0de9a5563h
+dd 089bf92f6h
+dd 0db36a24dh
+dd 0c6695d8dh
+dd 0face9109h
+dd 0a7b56184h
+dd 0b454d1f1h
+dd 0bbb3aafdh
+dd 0fdc25929h
+dd 0827b5f1dh
+dd 015df30e7h
+dd 0881c0111h
+dd 062406c01h
+dd 003b3d7f8h
+dd 0f106eca8h
+dd 08aa949dch
+dd 077e273abh
+dd 021e56665h
+dd 086eb6f56h
+dd 0ed70bb29h
+dd 0f9ce63a1h
+dd 0407c925eh
+dd 0f7fecf5ah
+dd 07d27ecefh
+dd 031c0d107h
+dd 030daef63h
+dd 0088eaa52h
+dd 05fc52638h
+dd 0aa0999f0h
+dd 00a93bcdah
+dd 03e466682h
+dd 0f8fc833bh
+dd 0b9df37cch
+dd 0db4ed621h
+dd 0fa4d3b9ch
+dd 036e8fc39h
+dd 00a9f16bfh
+dd 0bd794903h
+dd 0816db3cfh
+dd 051751c38h
+dd 0e14be528h
+dd 0441c10a8h
+dd 04e407901h
+dd 0f377a30eh
+dd 0e9f2b833h
+dd 0179616b7h
+dd 038ebd29ch
+dd 03db07d76h
+dd 07ebf40afh
+dd 0a902a10eh
+dd 059fc5e7ah
+dd 02cb3c4f2h
+dd 0bfd84715h
+dd 046066d99h
+dd 0710eaa77h
+dd 0bbd75539h
+dd 0a27f2bddh
+dd 069f5d508h
+dd 0f22524dah
+dd 078b77cd8h
+dd 0ceb646a8h
+dd 0d1297c04h
+dd 0a5558a03h
+dd 05bc2fa3dh
+dd 0ee60db3eh
+dd 0d1b7ecbbh
+dd 0cd5a0945h
+dd 02155133fh
+dd 08ddf012fh
+dd 0561ee4c1h
+dd 065724d45h
+dd 04dd1a285h
+dd 02dc333a2h
+dd 060324118h
+dd 0533787dah
+dd 095d98430h
+dd 03a0bde3bh
+dd 0c23e5296h
+dd 0f34f92dfh
+dd 064c70eb0h
+dd 06d6713dah
+dd 0bf42bc58h
+dd 06fa02928h
+dd 026a8fb2eh
+dd 0ade1ff00h
+dd 02accb5d6h
+dd 04df93ff5h
+dd 0b65c68cdh
+dd 0dbd7bef9h
+dd 01add4d0bh
+dd 0de48a4e8h
+dd 07c7295c4h
+dd 05260cf68h
+dd 01802cf11h
+dd 008693db6h
+dd 0e2b0c124h
+dd 0c5f5ea75h
+dd 01dc81471h
+dd 03c9196d5h
+dd 0810f31f8h
+dd 0dac3daa1h
+dd 0a535c250h
+dd 089df35d5h
+dd 0f1cd5c83h
+dd 005050a2fh
+dd 03b6bd7d6h
+dd 0d43e203ah
+dd 08fa5d4deh
+dd 0eaad7d7bh
+dd 0e9ea0391h
+dd 03bf3e74eh
+dd 0cee185e7h
+dd 0f633065eh
+dd 0c8b9be70h
+dd 0a57e5d14h
+dd 0a891789eh
+dd 06e914528h
+dd 0fcb6611ah
+dd 065920cd9h
+dd 01de615f9h
+dd 0cec8d5fch
+dd 00125f1a0h
+dd 0b1cc2d6eh
+dd 082cc8e38h
+dd 000ce1995h
+dd 048e1efbdh
+dd 0c2de9213h
+dd 00976e958h
+dd 0181bae5bh
+dd 0439d9269h
+dd 0306b34c2h
+dd 0992e4afah
+dd 03eebb79ah
+dd 05510b13eh
+dd 0df2d6dd1h
+dd 0c5f2707bh
+dd 0917d1855h
+dd 020752c7dh
+dd 0abf3690eh
+dd 0c509255eh
+dd 0a2448e72h
+dd 0be12a6d7h
+dd 05b88bcbah
+dd 036640193h
+dd 064802560h
+dd 0ff89c44bh
+dd 02ae39dffh
+dd 05ec1db98h
+dd 01fc4ea48h
+dd 0c6d253f7h
+dd 0b3ee6136h
+dd 01c4dabdah
+dd 01ad9815dh
+dd 046b66286h
+dd 0c3bd5259h
+dd 0e0698ce3h
+dd 0c17e53c8h
+dd 0b992946ah
+dd 0fe2a4502h
+dd 03cdd068fh
+dd 0060d5a56h
+dd 09141da67h
+dd 09e0948dch
+dd 054bb77b7h
+dd 07377855dh
+dd 063d14afdh
+dd 072669ad4h
+dd 0f180efb2h
+dd 0416ca9c6h
+dd 01cdbe8a6h
+dd 0a3f10067h
+dd 030673d68h
+dd 0000458a4h
+dd 08c5deb5fh
+dd 0689bdc72h
+dd 0b9fa0df4h
+dd 0de000475h
+dd 0b368c47ch
+dd 0b66ee3a3h
+dd 0989d025eh
+dd 0182a63d4h
+dd 04c7d7a52h
+dd 0b91abf62h
+dd 0b1713a7ch
+dd 051c6e9efh
+dd 06221815eh
+dd 076f40bafh
+dd 06e211bb1h
+dd 0dbf3c9cah
+dd 08787069fh
+dd 09b0a23a4h
+dd 03577eec4h
+dd 0b9991009h
+dd 02e9ac8e0h
+dd 0785e4b84h
+dd 0078c209ah
+dd 0e68ff486h
+dd 0ac8b2b1fh
+dd 0413d87c8h
+dd 0e6cc8073h
+dd 056f9801fh
+dd 09e8dcae9h
+dd 0f9daad4bh
+dd 07f538726h
+dd 0192f4e9dh
+dd 0dc4f638ah
+dd 024c3c1a5h
+dd 0181e8f25h
+dd 059e89943h
+dd 07c7e3ae4h
+dd 0cafa72d5h
+dd 039cf4b91h
+dd 0f153ddf2h
+dd 0686112deh
+dd 0cb0a94a4h
+dd 072b7edc8h
+dd 0eb9d084ah
+dd 0e38a30e9h
+dd 05fa597adh
+dd 08cae5388h
+dd 037436d97h
+dd 05a889b91h
+dd 077c35a15h
+dd 02cdbfc5fh
+dd 0b05a33ech
+dd 00dc01841h
+dd 091d2f610h
+dd 0bbb1ad89h
+dd 024c014f5h
+dd 0dc13652dh
+dd 0e243878bh
+dd 027a12fffh
+dd 0388abef4h
+dd 014e64db5h
+dd 0c98826afh
+dd 0acc40dd5h
+dd 020a971dfh
+dd 0b6de5675h
+dd 0f4080a2bh
+dd 07d4847ebh
+dd 0df4492aeh
+dd 0e31612f8h
+dd 00b9e6942h
+dd 0a5e63c95h
+dd 058b5fca3h
+dd 005795476h
+dd 0a76c0895h
+dd 03e309ff2h
+dd 0ae757902h
+dd 0bd5b3b31h
+dd 062d6f8a8h
+dd 038652cf3h
+dd 05845c4a4h
+dd 0aad826e6h
+dd 05e3bb7e7h
+dd 0b27c9521h
+dd 0340a834fh
+dd 0716e3f71h
+dd 020102452h
+dd 0fa2b154fh
+dd 0532afe1eh
+dd 08c265cf4h
+dd 0f3099e56h
+dd 031ef7848h
+dd 0ae8e1977h
+dd 0e0bf5700h
+dd 0011c5471h
+dd 00d51ff1eh
+dd 06d4ad834h
+dd 0a07d7843h
+dd 04cbc4bdch
+dd 0a556569ch
+dd 008097a06h
+dd 0218a6d80h
+dd 0ebf13cffh
+dd 05d43b9beh
+dd 0a354d15dh
+dd 03567cfd4h
+dd 0cb866e37h
+dd 028bc4c11h
+dd 048f6264eh
+dd 0a0b6159eh
+dd 04ccee557h
+dd 0f184a0b9h
+dd 05e38a0d9h
+dd 0d69cd24ch
+dd 0a57e2880h
+dd 0959d6012h
+dd 01c5405c7h
+dd 0a2d29c0bh
+dd 09710af98h
+dd 0c3ce0c0eh
+dd 01662fbdbh
+dd 0c6490537h
+dd 04bd96ce3h
+dd 0b0d4717ah
+dd 0fc1fe509h
+dd 06d2c3cd8h
+dd 03730e632h
+dd 08cc1b787h
+dd 015b174fah
+dd 03ca94530h
+dd 007cc6e14h
+dd 07ff19b32h
+dd 094fa50cch
+dd 07a02e56ah
+dd 09603c79eh
+dd 0cc3e8f9bh
+dd 0b9355356h
+dd 0fa5d0aceh
+dd 0ccd3412bh
+dd 0d8e5206fh
+dd 0e09eabd1h
+dd 00742f0d5h
+dd 07a929642h
+dd 0e029c6e5h
+dd 0cd76b7f7h
+dd 0ae8ec9deh
+dd 0ffe01fffh
+dd 0f0e3e22fh
+dd 08134fe9fh
+dd 02299643fh
+dd 0990e96fdh
+dd 0e4d8ff88h
+dd 033b77d41h
+dd 0e7f133b2h
+dd 0ae56bb9dh
+dd 0bd461627h
+dd 02d6a6a8fh
+dd 0ffcb70dfh
+dd 08183ec64h
+dd 0a2ac97feh
+dd 09f09a848h
+dd 00ed996beh
+dd 0b61624d3h
+dd 0caef3601h
+dd 0ca6c6771h
+dd 000a06b9dh
+dd 00603045ch
+dd 08288a00eh
+dd 0f98e1ad4h
+dd 0f9e3db30h
+dd 0db22e873h
+dd 085f191d7h
+dd 0d639beach
+dd 0b2b8a74eh
+dd 0f19230deh
+dd 07186b9a1h
+dd 0eb7a5083h
+dd 0ba51e43bh
+dd 072c6c757h
+dd 0f7993377h
+dd 0762bef9ch
+dd 02409a0abh
+dd 00d3a334ah
+dd 0b7f9be59h
+dd 03faeb777h
+dd 02b02bc7ch
+dd 0dc5b8299h
+dd 05641436bh
+dd 0d7d986beh
+dd 0819bd8dfh
+dd 0f0015361h
+dd 004205c64h
+dd 006d7a081h
+dd 0b3c55ffah
+dd 0aca2de3dh
+dd 0777cb7f8h
+dd 0bfafb9dbh
+dd 0326f96b2h
+dd 06806efa9h
+dd 0d09f0af8h
+dd 0fc78b646h
+dd 03a78e4a5h
+dd 0cfd05c58h
+dd 0a317d08dh
+dd 09554f45dh
+dd 051a1960fh
+dd 0286cccfbh
+dd 08219b0bbh
+dd 014900bc6h
+dd 0d73ba30dh
+dd 0489e8c3fh
+dd 0eed7ca4bh
+dd 0a0be298fh
+dd 06dd04b43h
+dd 08bee402dh
+dd 0fbfe74f6h
+dd 0dcc2137dh
+dd 0902d108bh
+dd 0b147ee25h
+dd 073f942eeh
+dd 0c0f5bf6ah
+dd 0cd7e3390h
+dd 0fe750b65h
+dd 038205957h
+dd 0de72819bh
+dd 03aa518a8h
+dd 0c076bac9h
+dd 02c30f684h
+dd 0bcac2dbch
+dd 050433ca3h
+dd 0f9cbff05h
+dd 09a8e1746h
+dd 0a72a80b8h
+dd 054ca7cb7h
+dd 032f8acc4h
+dd 072da2963h
+dd 0d4c10b9eh
+dd 0ccd7ba4dh
+dd 0a63514cch
+dd 05df32df6h
+dd 09d4fbf23h
+dd 020c85556h
+dd 0622a368fh
+dd 04a7c3cbeh
+dd 0a21cb17dh
+dd 0d58f5c3ah
+dd 08a59b904h
+dd 0f51ca267h
+dd 07ab5defdh
+dd 0272ea9cbh
+dd 02e2add85h
+dd 0f2030c41h
+dd 09217d037h
+dd 026a4fe52h
+dd 01ef3fd6bh
+dd 08c79cb63h
+dd 0318dd46fh
+dd 09f4408ach
+dd 0e56bfd76h
+dd 0faf6b659h
+dd 01cb67b7dh
+dd 04613928ah
+dd 03049a15fh
+dd 022f20ed0h
+dd 0046d5dbbh
+dd 0be42457eh
+dd 053285356h
+dd 087a27460h
+dd 0feb4f821h
+dd 098231bb9h
+dd 01a7a2872h
+dd 0fbe9dc4eh
+dd 044c01854h
+dd 086ef903bh
+dd 051076238h
+dd 07210ed9fh
+dd 01d4bd6c8h
+dd 079437a39h
+dd 0eb4b53c0h
+dd 0e5806c80h
+dd 00b7d9b30h
+dd 02c29fe0fh
+dd 0503fb5efh
+dd 09181d33ch
+dd 0d96c5acch
+dd 0dd92ca1dh
+dd 05ff07a3fh
+dd 0ab206e79h
+dd 06eda1517h
+dd 09d8bb45bh
+dd 0fea2068ah
+dd 08bd96fe0h
+dd 0ed29a4d7h
+dd 0c48e2ceah
+dd 03ff165b3h
+dd 01c1303a8h
+dd 0db16bc1eh
+dd 05e59851eh
+dd 078b570a3h
+dd 0ba6d03d3h
+dd 08f66970dh
+dd 0282ebf6eh
+dd 08ce453deh
+dd 09c9c8defh
+dd 020a09716h
+dd 02f2f3665h
+dd 047240babh
+dd 06bc16af0h
+dd 0c62ccd68h
+dd 04e76ee8dh
+dd 01bf2c741h
+dd 010d3a789h
+dd 0ebfb1b17h
+dd 0c83f2393h
+dd 08be1724bh
+dd 0a3bd38efh
+dd 03bb2a9e5h
+dd 0a17e4f1fh
+dd 06506d9eeh
+dd 0ad99882fh
+dd 0903793cfh
+dd 006c38e87h
+dd 04733c659h
+dd 0c81eda73h
+dd 0fb3b70cdh
+dd 060f4a0dbh
+dd 0f7232041h
+dd 02348acf5h
+dd 003523dfdh
+dd 0301fb734h
+dd 077700e28h
+dd 03f28b4fah
+dd 07ff466b6h
+dd 0310141d5h
+dd 0ff6bf379h
+dd 0264d4aa9h
+dd 0045a0c10h
+dd 0d28f584fh
+dd 071ad3066h
+dd 06e94a526h
+dd 00109697fh
+dd 0e4e4d882h
+dd 0fdeabf99h
+dd 0b03a7f68h
+dd 0baab996ch
+dd 0a7c78b98h
+dd 03a9cc123h
+dd 0405d9aaeh
+dd 0035a54d0h
+dd 06bda9e4bh
+dd 07e7401fch
+dd 00c95026ch
+dd 0734e9d09h
+dd 08573bc32h
+dd 0a6259c29h
+dd 05c09a3e8h
+dd 023eaca3ah
+dd 0013b3b89h
+dd 026a3e87ch
+dd 01aebeba4h
+dd 059925064h
+dd 0b8bbeed9h
+dd 0b4d88fa8h
+dd 079ed927bh
+dd 089b11eb4h
+dd 08cbfbe50h
+dd 0a9ec6397h
+dd 0cf591386h
+dd 0f41607ebh
+dd 0ee3cd234h
+dd 072437adbh
+dd 0ccb73c19h
+dd 03e6da77eh
+dd 0170d6cd2h
+dd 0fe530708h
+dd 0de9dcbdah
+dd 0b560dabch
+dd 0ae56f764h
+dd 012ed9df1h
+dd 027587769h
+dd 03910589dh
+dd 0ea924e44h
+dd 00fe43fafh
+dd 06074c149h
+dd 01ef2b362h
+dd 0dca0202eh
+dd 0467d1e9dh
+dd 003a7a666h
+dd 0a5adc845h
+dd 04ee7d96ah
+dd 0c896aba0h
+dd 0fbddc1a0h
+dd 066fdd09eh
+dd 04a879c65h
+dd 0d8e1ecf3h
+dd 0d502031bh
+dd 05b0aaba4h
+dd 092ade478h
+dd 06b4011efh
+dd 0ece6023ah
+dd 093a533f7h
+dd 097397aeah
+dd 0b330490fh
+dd 0cd72ca18h
+dd 0702e318eh
+dd 098c85f34h
+dd 0d0ed8ab3h
+dd 08edf7abch
+dd 0579f0b58h
+dd 0b63ed57dh
+dd 000730e1fh
+dd 0fbf22455h
+dd 078032825h
+dd 0e7dadd45h
+dd 0fd381b2fh
+dd 0f048c4d9h
+dd 0cc1b564ch
+dd 00e32d272h
+dd 02b44de23h
+dd 046905b7fh
+dd 05900d8fdh
+dd 09825cae9h
+dd 04eef2755h
+dd 0bdb934c8h
+dd 07d35bc1dh
+dd 01df85626h
+dd 0239454a9h
+dd 039568e33h
+dd 0ac0697c1h
+dd 08d02a60ch
+dd 06d33ef86h
+dd 00728826ch
+dd 094b10fe4h
+dd 00b32e24dh
+dd 0bef8eeb9h
+dd 012566533h
+dd 00318cda2h
+dd 0cde70c48h
+dd 01592c151h
+dd 082c2f268h
+dd 0797609dbh
+dd 01246690fh
+dd 077bfd903h
+dd 0d9041e3fh
+dd 02538613eh
+dd 0603083e5h
+dd 01a819a72h
+dd 063e74a2ah
+dd 09714cd05h
+dd 0ba47be8fh
+dd 0a23ae804h
+dd 0f0175750h
+dd 08e970bbfh
+dd 07bcc78d3h
+dd 05185e3eeh
+dd 051a79250h
+dd 06e9fdd52h
+dd 059e79ed5h
+dd 039f82845h
+dd 08bc80320h
+dd 0a8afb910h
+dd 0c680b80bh
+dd 00dc7bd5bh
+dd 079e1b5e9h
+dd 07e504109h
+dd 0f92b25eeh
+dd 0a92d77eah
+dd 00f3199f0h
+dd 0b0bcfaf6h
+dd 092e338f0h
+dd 03f1a06ach
+dd 0f15616d5h
+dd 0bc354951h
+dd 07d2fd23fh
+dd 0a8064b25h
+dd 0f57728ffh
+dd 06d9948d8h
+dd 0a9e166efh
+dd 06cd49ef7h
+dd 079e99621h
+dd 02d472b52h
+dd 066f0edcfh
+dd 0da8b769ah
+dd 0f43286d4h
+dd 0bfcc7347h
+dd 0f43544ech
+dd 005bef746h
+dd 094d7c52bh
+dd 0811df303h
+dd 0cf0371fbh
+dd 08bb7ed3dh
+dd 04260c39fh
+dd 08ee88022h
+dd 05001254dh
+dd 04de5a78fh
+dd 03fa3da5ch
+dd 085bf524bh
+dd 04f712ab3h
+dd 013907aceh
+dd 060cb0fedh
+dd 09be71887h
+dd 09e6ae274h
+dd 0a025b71fh
+dd 0af638a6eh
+dd 02ab12e33h
+dd 0052ac336h
+dd 0766645cch
+dd 0d104dc95h
+dd 07051f877h
+dd 006694a30h
+dd 0d3e71286h
+dd 0d94c99deh
+dd 04a5e280bh
+dd 03c520be6h
+dd 040d0bfabh
+dd 0b0764c37h
+dd 011f4405eh
+dd 09d8f3fe9h
+dd 0cd5950d5h
+dd 02cbb402ch
+dd 07bc80b1dh
+dd 0a2dc58f2h
+dd 0da266cb6h
+dd 054a8d5eah
+dd 02cabf1edh
+dd 02fbf9223h
+dd 0c9eb8034h
+dd 0abdff1f5h
+dd 017fc3643h
+dd 05e6fbc89h
+dd 012b894f7h
+dd 020023012h
+dd 0f00ef18ch
+dd 08588d755h
+dd 025bf0c5ch
+dd 09b791519h
+dd 0e1d7b652h
+dd 0b5da0b31h
+dd 080fbed07h
+dd 0adbe3a24h
+dd 09b9af9dch
+dd 08a14c5a9h
+dd 0c2c0d212h
+dd 0058047c1h
+dd 0d02472d2h
+dd 0d7b6ce3bh
+dd 04935039eh
+dd 09b3432e1h
+dd 0cf4c5adfh
+dd 02771773eh
+dd 0fa33228ah
+dd 010bb5837h
+dd 03eb1cc85h
+dd 0b755817bh
+dd 0b45cbf85h
+dd 0b0a7a726h
+dd 07aba84cch
+dd 0d78502cch
+dd 01fda16f4h
+dd 00167acffh
+dd 0586fac95h
+dd 00433b13ch
+dd 0d7067440h
+dd 0719ad914h
+dd 0bafdc01ch
+dd 0d1688429h
+dd 0a641a2beh
+dd 079df6f12h
+dd 025ee7588h
+dd 0ba26629fh
+dd 0218e6764h
+dd 03cf50925h
+dd 05198afffh
+dd 008f812e8h
+dd 0e056a98bh
+dd 000db57f4h
+dd 065e48f51h
+dd 08ca860f1h
+dd 0cebd48e4h
+dd 00c070c93h
+dd 01e085c3ch
+dd 014e63acah
+dd 064d631a8h
+dd 08c36c4f7h
+dd 0fe2afe08h
+dd 0817bdf1ah
+dd 0f3d3f617h
+dd 0ece3feb2h
+dd 0c0bb289ch
+dd 075245479h
+dd 03ff66e28h
+dd 0ffbe5943h
+dd 0763a887eh
+dd 05f357d19h
+dd 0549bb463h
+dd 06a743a86h
+dd 070e227bbh
+dd 06d2341d3h
+dd 09343f412h
+dd 0a4e066b4h
+dd 092fb761dh
+dd 0b2d141fah
+dd 0734a8c1dh
+dd 07dddd9b2h
+dd 02534b686h
+dd 023725d42h
+dd 0f66bde15h
+dd 089945a92h
+dd 0481fb12bh
+dd 084badbf6h
+dd 0efd5a7b7h
+dd 0372b9620h
+dd 0efd4d002h
+dd 0c297db8ch
+dd 0e5fea7dch
+dd 0e0449414h
+dd 0293a10ech
+dd 0bdf8517fh
+dd 058675c4dh
+dd 06d44b49eh
+dd 06cf6ba6eh
+dd 0255a3202h
+dd 01a76db8bh
+dd 07ad70d65h
+dd 0bd758e1ch
+dd 0c5af3708h
+dd 0e2df7264h
+dd 00c223038h
+dd 0a3f617f3h
+dd 046a85485h
+dd 00c152a34h
+dd 0d1e9ace4h
+dd 0b2e1f24fh
+dd 08000d5a4h
+dd 05bc8d195h
+dd 0a6c5dfc5h
+dd 07aa96607h
+dd 0c1ceb271h
+dd 06e994380h
+dd 0acb50f62h
+dd 01e0ecc35h
+dd 08be80b9eh
+dd 0fb23d71bh
+dd 06659e0dbh
+dd 0b228798dh
+dd 025155697h
+dd 0a9127d85h
+dd 0bd7544a8h
+dd 0d0aca694h
+dd 0858829dah
+dd 02394039ah
+dd 016ac6caeh
+dd 01f85767ah
+dd 077722770h
+dd 06e3ba550h
+dd 0aa0d10a9h
+dd 064b19040h
+dd 02921ddc5h
+dd 0305e4702h
+dd 0ae5bc61ch
+dd 053027985h
+dd 0b373ea5eh
+dd 0a343431bh
+dd 00fe9ec13h
+dd 0b9c20a47h
+dd 0e34118f6h
+dd 0d75566efh
+dd 0dcdf9219h
+dd 0ab12515fh
+dd 0a351ddb4h
+dd 0317be8c5h
+dd 02d3d5fb6h
+dd 0bf9b0e07h
+dd 055d0ff05h
+dd 046c309f6h
+dd 075bafb65h
+dd 0138010c9h
+dd 0dba5fa7bh
+dd 06630dd49h
+dd 04a528ccdh
+dd 0befcd899h
+dd 02e84cbfeh
+dd 070eb9f73h
+dd 07257c779h
+dd 0683fcde4h
+dd 01923061bh
+dd 0380036d3h
+dd 05a335876h
+dd 0585beeabh
+dd 0ce096846h
+dd 0ccf221deh
+dd 0f5a197a1h
+dd 05a7d2892h
+dd 0f85fa721h
+dd 058005e09h
+dd 0a9f18ba3h
+dd 0ab37ba57h
+dd 064ff4747h
+dd 079b7124ah
+dd 05fdd2dc1h
+dd 0459aa1e7h
+dd 0a77c921bh
+dd 055491488h
+dd 043f85ed3h
+dd 07d3368d0h
+dd 00b333256h
+dd 0894ca365h
+dd 0af9c5e77h
+dd 00f0ac278h
+dd 05c2f1cffh
+dd 08798dddbh
+dd 00de4487fh
+dd 08b1fee54h
+dd 01027d465h
+dd 0e7d0c05fh
+dd 0dce5fc15h
+dd 0be5a8b31h
+dd 019c76078h
+dd 027f5636fh
+dd 0906fbc95h
+dd 0c67cc358h
+dd 068f03443h
+dd 009dc513fh
+dd 0852b1a85h
+dd 0a09d2be8h
+dd 04c5c267dh
+dd 0b1ba8efdh
+dd 01042d583h
+dd 04ab7743fh
+dd 0cac3e07eh
+dd 0dba8a361h
+dd 0ef04b7b0h
+dd 0cdd27c47h
+dd 03662792ah
+dd 0fa3e38fch
+dd 0513beda6h
+dd 0df1e7924h
+dd 06f2e5680h
+dd 0f5a17312h
+dd 021594ec7h
+dd 0e6b37937h
+dd 0f0323f7ah
+dd 0fd0ae649h
+dd 064fed0a5h
+dd 0f654f08eh
+dd 039e65befh
+dd 088e592f6h
+dd 0064e0454h
+dd 015c3273fh
+dd 04a8fbb55h
+dd 040455596h
+dd 0561a0e55h
+dd 03360e3ach
+dd 02f1819ffh
+dd 04cbda586h
+dd 06841da85h
+dd 02c006a98h
+dd 0847385d7h
+dd 09e38af76h
+dd 09e93ad68h
+dd 0f2c6702bh
+dd 088e19e44h
+dd 0ea07c992h
+dd 0e46427bfh
+dd 0fe87b53bh
+dd 02c283d78h
+dd 0204e5345h
+dd 0c28c6510h
+dd 08bc2e74dh
+dd 0a5551c0ah
+dd 06bd6ac2bh
+dd 0e66ca4f0h
+dd 0bd3becb7h
+dd 0a8805e1fh
+dd 0428c05ddh
+dd 01dd53273h
+dd 05523ef3ch
+dd 0b85cb6a3h
+dd 0ca3ae61eh
+dd 0c57a959fh
+dd 0ddc98102h
+dd 078eb6ad2h
+dd 01db2cb58h
+dd 089a133ach
+dd 0e518e77eh
+dd 0e0aa82eeh
+dd 07d04a702h
+dd 0726bab97h
+dd 0b4ed5c52h
+dd 0949534e2h
+dd 0f84baed5h
+dd 0c8d339a3h
+dd 0361b7f06h
+dd 0f3db4bf6h
+dd 0c6dda3e9h
+dd 04cc2c5a4h
+dd 0b53a356eh
+dd 04f143807h
+dd 07f44a247h
+dd 0ceb3689eh
+dd 0fa0ae878h
+dd 02b5840f9h
+dd 0c9c89eb8h
+dd 09d306d2ch
+dd 0fe1c1bd6h
+dd 09a283696h
+dd 0a6fb1761h
+dd 086899fc7h
+dd 0bb4115afh
+dd 0e6c00a9ch
+dd 03d478783h
+dd 05ffafab9h
+dd 0209a576ah
+dd 0e5bdf7d3h
+dd 05ca5af5ch
+dd 0eb19b0c4h
+dd 02e8c89d5h
+dd 00c5c3a77h
+dd 0244e09b0h
+dd 0e3c41189h
+dd 0aa17165ch
+dd 05a1e4deah
+dd 0bb17a94ch
+dd 0633d6d61h
+dd 0a2228ae7h
+dd 02f8e43dfh
+dd 02fa0952ah
+dd 0b122ab7bh
+dd 04bfe107eh
+dd 0b2509941h
+dd 0a3766141h
+dd 06c36eb87h
+dd 02c7cb4dah
+dd 0ed38caf1h
+dd 047a5e0f3h
+dd 058a6177ah
+dd 0f9562b30h
+dd 0d44bc649h
+dd 055124173h
+dd 09e94edech
+dd 01ad2347bh
+dd 01de729fbh
+dd 0013d8373h
+dd 045423903h
+dd 0fb6e9729h
+dd 0823d2843h
+dd 0fe2495e9h
+dd 0909bcd86h
+dd 051869053h
+dd 01d18c24bh
+dd 08bdd5e9eh
+dd 04c3522a4h
+dd 0e2e727c0h
+dd 084dbe28ch
+dd 0ce198dc5h
+dd 0918b5c35h
+dd 061880125h
+dd 01fbb721ch
+dd 069be1a75h
+dd 0d5503320h
+dd 0a43f487ah
+dd 00ef2c3b2h
+dd 0a05b0a1fh
+dd 0ebe2b701h
+dd 01238041ah
+dd 09b270371h
+dd 001652196h
+dd 080d039ceh
+dd 009457f63h
+dd 0ea9ec62dh
+dd 013c1efa4h
+dd 02b0ad3a5h
+dd 0230b3458h
+dd 0365b8a02h
+dd 04485f355h
+dd 0f746146ah
+dd 0794b41d1h
+dd 043a41129h
+dd 0ffcab00dh
+dd 0aee7a85dh
+dd 0570f03bah
+dd 0c2e6aae3h
+dd 04582050bh
+dd 08f15da87h
+dd 0adeee837h
+dd 0c6921132h
+dd 0b1f250a4h
+dd 03c35a7f1h
+dd 0834f702ah
+dd 0f0ee0fceh
+dd 0797a817dh
+dd 035158326h
+dd 0d91c5a36h
+dd 0eed8e2e9h
+dd 055f5d0e8h
+dd 0be3e29b4h
+dd 04b669527h
+dd 01639f4ech
+dd 0e489241ah
+dd 0912f7afbh
+dd 0eb464f52h
+dd 0d4b780c5h
+dd 09fec48fbh
+dd 05dacede9h
+dd 034277e68h
+dd 0fb8bd7d4h
+dd 0a893661ch
+dd 078e20492h
+dd 00a0f032bh
+dd 0de5d1e1ch
+dd 0faca3312h
+dd 0fd238fb2h
+dd 0d9c69e3eh
+dd 097af0d34h
+dd 0d23ea4ech
+dd 01bc08075h
+dd 03133bc98h
+dd 00f92df81h
+dd 02347fa66h
+dd 0746057b5h
+dd 07b0b0b56h
+dd 0510f332bh
+dd 03e38d411h
+dd 063d80324h
+dd 088efa92eh
+dd 04c364f0ah
+dd 0c86e82ffh
+dd 08d592b1ah
+dd 091643327h
+dd 0050cd53eh
+dd 0e970a67fh
+dd 028497c11h
+dd 0e1b27c4fh
+dd 0b8bf4602h
+dd 0b8df9902h
+dd 03310da25h
+dd 092c443c9h
+dd 01285920ch
+dd 04b1d2388h
+dd 038d68cfah
+dd 0d20d8b64h
+dd 09e6aad8dh
+dd 046e2fea6h
+dd 0f460c248h
+dd 0d71cf589h
+dd 03778d845h
+dd 0538ebc7dh
+dd 0d416ae43h
+dd 0d67e53b6h
+dd 03fab2356h
+dd 0f47f06a9h
+dd 0017535e7h
+dd 0de5445b7h
+dd 0eea8b28dh
+dd 0762ae9b1h
+dd 0ad70896eh
+dd 0f0a36652h
+dd 06e4edf90h
+dd 0196d648dh
+dd 07ec2ed4ch
+dd 0b2d9f82bh
+dd 08d7725f5h
+dd 0ab02d5bdh
+dd 000b6ba51h
+dd 0fdb0b54eh
+dd 0f603e57fh
+dd 09e593eb9h
+dd 071607d2eh
+dd 04b88e8ddh
+dd 010351cc9h
+dd 09648e1a8h
+dd 079e08018h
+dd 07d9fc8a4h
+dd 01b2ff6adh
+dd 0d733f26fh
+dd 0b6bfe53bh
+dd 0935d106dh
+dd 0d9970312h
+dd 0c519d4feh
+dd 031665a20h
+dd 03dcb0c4dh
+dd 0091f0eaeh
+dd 02e11b986h
+dd 08c22f2cdh
+dd 0cf88e3a0h
+dd 02ff55674h
+dd 0fe992dedh
+dd 03bf61469h
+dd 0d2aafe00h
+dd 05fd03387h
+dd 0a46e462ch
+dd 031f0cf7fh
+dd 0f0f529a5h
+dd 0a18f9f72h
+dd 0767bf47dh
+dd 04a1f711fh
+dd 006e4e681h
+dd 09f5eb25eh
+dd 01c2362f7h
+dd 0880e4226h
+dd 0423351aeh
+dd 0f3d71a6bh
+dd 0c8a7a6a5h
+dd 02cb2dda1h
+dd 0c3a438b8h
+dd 0fff527b2h
+dd 07ca0866bh
+dd 031454199h
+dd 011353adeh
+dd 098c084c2h
+dd 02d174639h
+dd 056e99787h
+dd 04dbf8752h
+dd 0578166dch
+dd 07a834f51h
+dd 0b2e19808h
+dd 0d4593d92h
+dd 001b5d59bh
+dd 0950cab24h
+dd 00ab2a6d9h
+dd 0e6618f93h
+dd 07f75ff14h
+dd 0aa035028h
+dd 03cc4a7dah
+dd 08c1a83d1h
+dd 08236eee3h
+dd 0140984f1h
+dd 07dfe2539h
+dd 0257c83f0h
+dd 062882210h
+dd 0f49afa17h
+dd 02ac7dce7h
+dd 0f5b04918h
+dd 01f0d3251h
+dd 0eabe3303h
+dd 0e78556c3h
+dd 0e9db6001h
+dd 0807650cah
+dd 03bf4f2d6h
+dd 0d0319a4ch
+dd 0dd6064dfh
+dd 0a3cbc8aeh
+dd 0aabdc852h
+dd 0eec66426h
+dd 0c488324bh
+dd 09ba5ce53h
+dd 034ce6afbh
+dd 0e120dc41h
+dd 006475f6ah
+dd 0f3b5edbbh
+dd 02e32379fh
+dd 05297a044h
+dd 04414b92ah
+dd 0a9adb457h
+dd 06e57fe6ah
+dd 0503bb7aeh
+dd 04bded397h
+dd 016d6c4feh
+dd 080608929h
+dd 0348cfe43h
+dd 0ec2e8483h
+dd 00d178fb0h
+dd 0a732c403h
+dd 0827bfcfeh
+dd 00066f651h
+dd 0413550edh
+dd 08d60b603h
+dd 043d83a8eh
+dd 0d29af94bh
+dd 09f064c61h
+dd 0b64176ceh
+dd 09a6f7ad2h
+dd 07daa0ed4h
+dd 03e140c11h
+dd 051062d35h
+dd 0fcdf7344h
+dd 02f25405dh
+dd 078b85da2h
+dd 03d2cf37dh
+dd 0df6eeff4h
+dd 0a481f8eah
+dd 0189a8be8h
+dd 0b954f57dh
+dd 021b69118h
+dd 0c34aaf55h
+dd 079df398ch
+dd 0db05c2c4h
+dd 0c1c0344bh
+dd 08ff60f8ch
+dd 0d350bc72h
+dd 0b5c8995fh
+dd 08e18a67bh
+dd 0103d8c79h
+dd 0750c8726h
+dd 0c34ba690h
+dd 022b97969h
+dd 0dc5f18bdh
+dd 0711e666bh
+dd 044b5ea0bh
+dd 04a0084beh
+dd 0bb03a83ah
+dd 0f008e8b1h
+dd 0837b7eafh
+dd 0d7392ab1h
+dd 0f4906461h
+dd 0c9370b92h
+dd 029ea7e85h
+dd 078a96c6dh
+dd 0038138a8h
+dd 0578221f4h
+dd 017079afch
+dd 04092734ch
+dd 000ce793eh
+dd 0eb18fd3dh
+dd 0a48f1337h
+dd 067c49498h
+dd 0567d7d50h
+dd 089bcc126h
+dd 05ce487e7h
+dd 0c54c55dfh
+dd 0509a27d2h
+dd 08225175bh
+dd 0a4245dcch
+dd 04cb3af7dh
+dd 06a6cb1d4h
+dd 04791b721h
+dd 04e02e189h
+dd 05e4b0904h
+dd 04b0a0c85h
+dd 03cf37c0ch
+dd 0f726dae4h
+dd 03625a6a1h
+dd 0a2fa0a92h
+dd 038c063bah
+dd 050145916h
+dd 0ae346ccbh
+dd 0834a4629h
+dd 0d573c61ch
+dd 051ea30a5h
+dd 029c55e26h
+dd 076b60be3h
+dd 06c6018bfh
+dd 00fdf123fh
+dd 0d769b61ah
+dd 089c2e0eeh
+dd 0e36b1033h
+dd 00999e300h
+dd 02321315ah
+dd 0b28bdacbh
+dd 086c03e0dh
+dd 0830f7cddh
+dd 0e6d1ecb7h
+dd 0ad02301bh
+dd 09b817b73h
+dd 0453bdda5h
+dd 0329c2f63h
+dd 0b87cb30ah
+dd 02eb97eadh
+dd 04c112d6eh
+dd 094096e58h
+dd 0f20df42ah
+dd 07c210155h
+dd 00c2fb60ah
+dd 0b800713bh
+dd 09d5dc30dh
+dd 01e493739h
+dd 0aa7ff304h
+dd 0afc23369h
+dd 093c5e2f1h
+dd 04eb1668ch
+dd 0432e547dh
+dd 032260d97h
+dd 02f3d9ed4h
+dd 02a7d9dafh
+dd 088547e32h
+dd 0fd501a87h
+dd 0fa58113fh
+dd 0ec38382fh
+dd 01ca31796h
+dd 067c9e216h
+dd 026087109h
+dd 057167a07h
+dd 0e9aba195h
+dd 0b3ba49eah
+dd 0a912ee32h
+dd 06e62492dh
+dd 0ddc7959bh
+dd 0a7b04648h
+dd 0bfe6fa9ch
+dd 0b662f8a9h
+dd 07d163d3eh
+dd 0e3a344a5h
+dd 07ccfcc94h
+dd 0c6f7978bh
+dd 024962b02h
+dd 075bf605bh
+dd 0d13e53bdh
+dd 0d5c73c13h
+dd 082ff5338h
+dd 06bd72bcah
+dd 03d2e55edh
+dd 0d5d233f1h
+dd 0020f2c65h
+dd 09c24c8deh
+dd 0ad2119f6h
+dd 0a3e3a909h
+dd 033e12922h
+dd 009a0af01h
+dd 03f7843c8h
+dd 053a196bah
+dd 0bbb2803dh
+dd 0c39853bfh
+dd 006d36eb6h
+dd 01ddf8fd4h
+dd 027020439h
+dd 0fb80191fh
+dd 0a340e751h
+dd 00c060366h
+dd 00544e39ch
+dd 04b2abc9ah
+dd 00859ce7eh
+dd 0a7987945h
+dd 0103d4445h
+dd 0d1a0f220h
+dd 06e67ac9ch
+dd 06f6ce6b8h
+dd 044a7ba4ch
+dd 05f6cdcech
+dd 03eade95bh
+dd 08bf07a1ah
+dd 052503794h
+dd 026a54795h
+dd 0297a3d3fh
+dd 04f1d57fah
+dd 0114a3200h
+dd 068d53e00h
+dd 038412292h
+dd 09cfac60bh
+dd 038b7dcd4h
+dd 0662d9381h
+dd 0405a5227h
+dd 0b5a439eeh
+dd 0aa6fd64ah
+dd 088cac559h
+dd 0a5218957h
+dd 0f3d093b4h
+dd 01f135d00h
+dd 07b22bf49h
+dd 07d54eaa8h
+dd 0489a5c2eh
+dd 0a7bcaf16h
+dd 0d1a7e834h
+dd 05b0bea5ah
+dd 081e2c382h
+dd 074c337c5h
+dd 02e92e8efh
+dd 004aad64eh
+dd 0d8d857c9h
+dd 081768854h
+dd 0ff5bda61h
+dd 09162117dh
+dd 0c66f04f2h
+dd 098a31db7h
+dd 07fccddf9h
+dd 0464d887ah
+dd 0e2bbbdf0h
+dd 01548d75fh
+dd 066f76cf8h
+dd 0bae488f5h
+dd 0f010d988h
+dd 0b2d446a2h
+dd 0cf872e5bh
+dd 06ca007efh
+dd 05a29bbefh
+dd 00bb6e06bh
+dd 08d4b68a0h
+dd 0a7a44b2eh
+dd 0e6a4ae32h
+dd 002f68ddeh
+dd 0e3ee5497h
+dd 0f31d9cb7h
+dd 0cf9b8192h
+dd 0c112226eh
+dd 004c52effh
+dd 0e3830e97h
+dd 088154ce4h
+dd 01d7aef25h
+dd 08a9e4378h
+dd 002fbbe49h
+dd 032c7dc30h
+dd 07395bf2ah
+dd 051d4b28fh
+dd 082f508b7h
+dd 0072a80bah
+dd 07c4d4b5ah
+dd 0c68f3dach
+dd 0dd8c0cdah
+dd 0efd66e61h
+dd 0ac431d37h
+dd 08811e8d7h
+dd 0ce6c7b19h
+dd 055788b59h
+dd 0c41b0981h
+dd 0415e1173h
+dd 0b509f5afh
+dd 09c8bec62h
+dd 0f9530f07h
+dd 0faace965h
+dd 0b136b946h
+dd 0abed975ah
+dd 0c39390bdh
+dd 0bee0567eh
+dd 01682b0ceh
+dd 09c643f52h
+dd 019595673h
+dd 0da78a4d5h
+dd 04e88495eh
+dd 0b780d7eeh
+dd 02d340f67h
+dd 0f20aeccbh
+dd 0a23a1960h
+dd 0f536b8b9h
+dd 0752d1488h
+dd 0ec20efb6h
+dd 05ac9ec45h
+dd 0207dfa86h
+dd 02b33d3beh
+dd 0ef3522d7h
+dd 0e61edcf3h
+dd 05301e6deh
+dd 0ee88c217h
+dd 03aee9815h
+dd 02be88badh
+dd 06281d1beh
+dd 0ffe341e7h
+dd 0bfee2c7bh
+dd 0fd3f020ch
+dd 057938d22h
+dd 017b91925h
+dd 0c53713b2h
+dd 0c91eeff7h
+dd 02ca0381eh
+dd 0aaa8ac2ah
+dd 09723ad91h
+dd 0454eb939h
+dd 00aa8169ch
+dd 007024fabh
+dd 0e896dd9fh
+dd 0b0827e4ch
+dd 0dd528ee5h
+dd 052515cb3h
+dd 088792cf7h
+dd 0532b5be1h
+dd 05acab337h
+dd 020f82c38h
+dd 00db1a5e9h
+dd 02831acfdh
+dd 031d613d6h
+dd 0b405fa0bh
+dd 0c958d88eh
+dd 0f39bfa48h
+dd 0b3240a6bh
+dd 0d7dea3aeh
+dd 0244194feh
+dd 0c81aa0bfh
+dd 032b0c490h
+dd 049ef06d5h
+dd 02fa5c2f3h
+dd 0297e711eh
+dd 02321039dh
+dd 04768ff4eh
+dd 03279fe87h
+dd 051021ef9h
+dd 0e9c09172h
+dd 05e86c804h
+dd 0d81268e2h
+dd 0eb6dafd7h
+dd 09f238babh
+dd 00775350dh
+dd 04930f2c3h
+dd 047fbce0fh
+dd 0bcbb1e7ch
+dd 0d8f80fdah
+dd 05717e9a2h
+dd 01176dd2ch
+dd 0135ab851h
+dd 05581651ah
+dd 06658ba97h
+dd 027d1027bh
+dd 0ddf8659ah
+dd 08740a4ceh
+dd 0dffe443ch
+dd 0834bba6ch
+dd 0489c0cb3h
+dd 068e3335fh
+dd 01b9d3046h
+dd 0a1e1975eh
+dd 03ccadfd4h
+dd 029237603h
+dd 082e199f4h
+dd 050deb3a8h
+dd 0c540a9d6h
+dd 000420b42h
+dd 0a8e5faebh
+dd 00824f4ffh
+dd 0b6da34d0h
+dd 0f8c9bf0fh
+dd 0aa488c61h
+dd 068a65832h
+dd 046b90e04h
+dd 0f7ade0a3h
+dd 0114637c5h
+dd 081650a64h
+dd 070454457h
+dd 089f64942h
+dd 04b31f644h
+dd 05b456174h
+dd 02d6c0613h
+dd 0c8293d0dh
+dd 08a5fe158h
+dd 031f24e45h
+dd 050d08591h
+dd 0a0209ae9h
+dd 05ed7067ah
+dd 0e99a44d7h
+dd 0d3bbe693h
+dd 0d4762187h
+dd 0d58c3d33h
+dd 0da1d51cbh
+dd 0eecb1c3ch
+dd 0c02e6ce3h
+dd 0874c34e9h
+dd 0bf7a4df5h
+dd 0a3fe1d53h
+dd 00cfa7272h
+dd 058c83d4ch
+dd 063b7133dh
+dd 0b86a99b2h
+dd 00311a2a0h
+dd 0c8b6e995h
+dd 008d70d24h
+dd 036cae092h
+dd 065b74539h
+dd 095c46c43h
+dd 08cf53e33h
+dd 0856f3a46h
+dd 0f99d3e79h
+dd 0db6be89fh
+dd 0d5cbf0fbh
+dd 09029c5dah
+dd 05bfe3a4ch
+dd 009d87a26h
+dd 0bd4e2c66h
+dd 0bec14a6bh
+dd 0c0bce789h
+dd 021774afeh
+dd 081deb448h
+dd 04c16814ch
+dd 047ab3111h
+dd 0e9f761c6h
+dd 065bbd1e1h
+dd 08d04577bh
+dd 05ec599dch
+dd 041365a21h
+dd 06067d8afh
+dd 0d1562d1bh
+dd 0748f6de7h
+dd 09f649c55h
+dd 0c99f2197h
+dd 0433033d5h
+dd 0fac846f8h
+dd 0a03bb68ch
+dd 07008321bh
+dd 0cc954e88h
+dd 061b15516h
+dd 0d1ffe14eh
+dd 09de46c37h
+dd 0f3c78c02h
+dd 0dbe813cch
+dd 087f21297h
+dd 0b9963175h
+dd 042cf2742h
+dd 059c3c3a5h
+dd 03f73b537h
+dd 0b720298eh
+dd 08e19e6e0h
+dd 0e57dccc9h
+dd 0b08f8d8bh
+dd 00e7f8093h
+dd 072c876c4h
+dd 05a5c4ddah
+dd 09883ad4eh
+dd 01827dae5h
+dd 0b6113625h
+dd 037342754h
+dd 0ed285543h
+dd 05785fe37h
+dd 09cac313fh
+dd 0337ce84ch
+dd 0789df183h
+dd 0d674795bh
+dd 00d982ae6h
+dd 05f44350dh
+dd 0ffee2368h
+dd 09cd423fbh
+dd 0efea42ach
+dd 0dbf7f37ch
+dd 064e30347h
+dd 0c7d2ba2fh
+dd 0cac9d66ah
+dd 03466acdeh
+dd 069e0a49ah
+dd 0ed5f3716h
+dd 0faaf375ah
+dd 0f4c7b23ah
+dd 0ba776357h
+dd 09d94a89ch
+dd 00a83ab9eh
+dd 0469fac2eh
+dd 0740d1420h
+dd 0a469e149h
+dd 08b22c829h
+dd 03b110cb1h
+dd 0df6d4897h
+dd 0bdcc68b2h
+dd 0855214eeh
+dd 04e44dbf6h
+dd 007a57129h
+dd 0c10605e2h
+dd 044b8d3aeh
+dd 01fa7d3a7h
+dd 00fa8c80eh
+dd 01eb66439h
+dd 0c3064c66h
+dd 07df0a68ah
+dd 0a4d90b19h
+dd 01e7113a7h
+dd 01a6049c1h
+dd 030b9330eh
+dd 0b024d992h
+dd 055603e3ah
+dd 0db171489h
+dd 03572a59dh
+dd 0cd955c7ah
+dd 03aa120b2h
+dd 0536a4861h
+dd 0ae23e884h
+dd 01352523ah
+dd 0d2fe838fh
+dd 0720fa297h
+dd 07a0ed401h
+dd 06f69a851h
+dd 040e78ef7h
+dd 07df1e3cbh
+dd 072ec3fa0h
+dd 07704c1a3h
+dd 071cce0eeh
+dd 0705027a4h
+dd 08a85a471h
+dd 0c5106c3eh
+dd 0481c7f15h
+dd 035a261e7h
+dd 04400bd7eh
+dd 03a578705h
+dd 0e1ac4b50h
+dd 00ce3b018h
+dd 0c865da87h
+dd 08f219eb0h
+dd 0bcdc4d39h
+dd 0350b8530h
+dd 0df440187h
+dd 0b3868730h
+dd 0c7725e3bh
+dd 0414b82aeh
+dd 0ddbadc08h
+dd 06c600542h
+dd 0981bba0dh
+dd 06a028beah
+dd 06702f80fh
+dd 0de5d344dh
+dd 04be99f3eh
+dd 0ee50512eh
+dd 0e4eb90e6h
+dd 05bf0157eh
+dd 0be16d56fh
+dd 0781f3d11h
+dd 06403468eh
+dd 089c9180ah
+dd 05eba58c8h
+dd 038902265h
+dd 007dd0371h
+dd 0d4dfd59ch
+dd 04bfe901dh
+dd 030ff20e0h
+dd 0d15b52cdh
+dd 05ef1449bh
+dd 0e9375153h
+dd 0276fe706h
+dd 0ba31ef7fh
+dd 059d621afh
+dd 03b53969fh
+dd 00f983beeh
+dd 0fa1e8ff8h
+dd 09290e647h
+dd 038ba8473h
+dd 06368c076h
+dd 08a30eacdh
+dd 0d0fa5df0h
+dd 0cd454395h
+dd 0598dc5a0h
+dd 0ffc2cd82h
+dd 0e6ba0155h
+dd 0d251a01ch
+dd 065dc92b9h
+dd 049f8d298h
+dd 0f75a9e75h
+dd 099a56b3fh
+dd 01a802bbdh
+dd 0e1f74cf2h
+dd 0c94b3f52h
+dd 09fbd0b28h
+dd 083b128aah
+dd 0ceaf418bh
+dd 07cacffa4h
+dd 0f95f55d7h
+dd 00ad7e615h
+dd 0f0ecd9f7h
+dd 01e1847f6h
+dd 04805e1cah
+dd 09a05f37bh
+dd 085e5535fh
+dd 0ded568f1h
+dd 050180478h
+dd 00f1c3c3fh
+dd 0d80e82bbh
+dd 0fde74de8h
+dd 09ce7f8e0h
+dd 03c9db506h
+dd 050e4cd42h
+dd 0cd8e0640h
+dd 0fd419223h
+dd 0fc693eefh
+dd 069a14ce5h
+dd 0ef866d02h
+dd 060590f79h
+dd 0da92aceah
+dd 031a31edbh
+dd 05c79b134h
+dd 0e6825397h
+dd 0d4763538h
+dd 03eba4698h
+dd 0fa6c667dh
+dd 0c0f2c963h
+dd 0510e0bcbh
+dd 0af13de15h
+dd 03d54505bh
+dd 0da8a08f3h
+dd 0a1eea0b0h
+dd 0ae8967a1h
+dd 0e5873602h
+dd 0a8a0e53fh
+dd 0467c082dh
+dd 0fa7d9f1ah
+dd 04f5911c1h
+dd 0e5c9f022h
+dd 0749d5123h
+dd 053f43a06h
+dd 0c4d0de3dh
+dd 07ec9be2fh
+dd 0eda2c394h
+dd 0d9152571h
+dd 0bfc2234eh
+dd 06dabff47h
+dd 0de5c97cch
+dd 0aea5cbb2h
+dd 07df7644fh
+dd 0e3d27011h
+dd 0cf9fecc8h
+dd 0b2b68e54h
+dd 0df36c628h
+dd 06fe6857bh
+dd 0e089aec3h
+dd 0ebb469a7h
+dd 0d3607b3fh
+dd 02190ae99h
+dd 025119532h
+dd 0f7f0d138h
+dd 081395b63h
+dd 08eab4c78h
+dd 0e02aacb9h
+dd 006e4c8d9h
+dd 03e2f9e84h
+dd 01fe746bdh
+dd 04591cc31h
+dd 0287b81cdh
+dd 0f94a235dh
+dd 0f0e88256h
+dd 096b36369h
+dd 0b3c242bfh
+dd 04976b1a6h
+dd 00e6383b0h
+dd 0f9b3bbe2h
+dd 0052181e2h
+dd 01a7c4c52h
+dd 03aab8735h
+dd 04338a4e5h
+dd 03edb1390h
+dd 0b002721ch
+dd 0457c9b05h
+dd 0f8d19aa7h
+dd 0a8cd8d57h
+dd 07d7a6f28h
+dd 09928b829h
+dd 070a4e917h
+dd 056962e29h
+dd 05dcbfe4fh
+dd 09c987ddfh
+dd 0f6f0d233h
+dd 08fa3d91ah
+dd 0cbeb9271h
+dd 04c92c063h
+dd 08df9ad87h
+dd 0bf333400h
+dd 042bd9d1fh
+dd 088138138h
+dd 0bd6d2c03h
+dd 0aabf1672h
+dd 0aa5c40b8h
+dd 086f88e35h
+dd 025e68d0dh
+dd 0cda326dah
+dd 0ed2be002h
+dd 0ad97eebfh
+dd 0514bd99bh
+dd 07dd4e0a3h
+dd 0cec5af07h
+dd 0b86a84f1h
+dd 077da569ch
+dd 00989f4dah
+dd 0f40c0d98h
+dd 03af71f20h
+dd 025d2d7ech
+dd 0f5888b2fh
+dd 016a4fd6ah
+dd 0240e231ch
+dd 011c1716eh
+dd 04ee656d0h
+dd 060a9028bh
+dd 0ee5c3e7bh
+dd 06fc16993h
+dd 0d248c68ch
+dd 0a344105bh
+dd 083d37aech
+dd 07e08dcafh
+dd 0191133b7h
+dd 0f23db7e2h
+dd 07926aae5h
+dd 024008ab6h
+dd 0877641bfh
+dd 09cf4f839h
+dd 096f3c64dh
+dd 04b364c39h
+dd 0e662b284h
+dd 08b7308fdh
+dd 0529379efh
+dd 019cef699h
+dd 077eadef0h
+dd 0322b7bffh
+dd 0ec47009fh
+dd 047843293h
+dd 0ebaa8da6h
+dd 0d9495ca1h
+dd 079e12e9ch
+dd 08c0980d8h
+dd 0e1331359h
+dd 01abf5bf9h
+dd 06341b999h
+dd 029a17567h
+dd 0ae2b3158h
+dd 004025ab0h
+dd 09dee69b3h
+dd 0c83931e3h
+dd 000db8d22h
+dd 06eb00ea9h
+dd 0c20a749dh
+dd 0d077e87fh
+dd 0670ee849h
+dd 04c1b0aaeh
+dd 0212776e0h
+dd 00c01aaa8h
+dd 00ec7b1e1h
+dd 03113cbc4h
+dd 0b1a2e298h
+dd 0db5aeb95h
+dd 08d7ece27h
+dd 0b09f4c0ch
+dd 03e0d60a5h
+dd 0f7011b0bh
+dd 0ff73d0f5h
+dd 0f9318c61h
+dd 07001ca09h
+dd 04abf406fh
+dd 04c6e8c77h
+dd 045d3a582h
+dd 0559b7389h
+dd 0b355809ah
+dd 0f8132788h
+dd 02b132761h
+dd 01d4bcd7dh
+dd 045cd3b69h
+dd 0c7e47bd3h
+dd 050c6fc5ch
+dd 05ca28b10h
+dd 08dbe14e5h
+dd 0e4cb6a0eh
+dd 0be4b1653h
+dd 0c70ff804h
+dd 070e1623dh
+dd 0c17709dch
+dd 0a296e6e4h
+dd 0abe05129h
+dd 0b87bdfe7h
+dd 0f05204edh
+dd 01e4552a0h
+dd 0fadf71efh
+dd 03ba8e1e7h
+dd 0db3e4ff4h
+dd 0d60989dch
+dd 058ca06d1h
+dd 0300ca565h
+dd 064bd9b62h
+dd 01c3ba58ah
+dd 06d471d28h
+dd 0b9ba8e9dh
+dd 0d0cd1876h
+dd 01ddf2687h
+dd 00d203d87h
+dd 08afd0d3fh
+dd 0419c69ach
+dd 099d25f6ch
+dd 0dac84e1ah
+dd 0779d8402h
+dd 0b8179afbh
+dd 030333597h
+dd 0a34c8ff5h
+dd 07933fd8ch
+dd 05f080c56h
+dd 012440f0bh
+dd 0f6d1ab93h
+dd 0e60f61a4h
+dd 0a33e09b2h
+dd 054e73221h
+dd 0ab6d7fa2h
+dd 078eafd1dh
+dd 0fef353a4h
+dd 058219584h
+dd 06e65cc40h
+dd 00231c86bh
+dd 0d9b564bch
+dd 03088d5ebh
+dd 041505daeh
+dd 0e41825cbh
+dd 07dfdecfbh
+dd 0d3f35dd3h
+dd 02fc0f3b1h
+dd 0c8452b67h
+dd 06390ecf1h
+dd 031f71a7eh
+dd 0e5a49195h
+dd 068ba6c8fh
+dd 090159647h
+dd 0dc9cab46h
+dd 09f32ccafh
+dd 0e57d5289h
+dd 0159e8b84h
+dd 0306fa712h
+dd 0b22cd28dh
+dd 0b4eb1f11h
+dd 0bc872b9fh
+dd 0d024114dh
+dd 0165b8882h
+dd 0accc0098h
+dd 0d228b28ah
+dd 0a846db4eh
+dd 07d86a7e3h
+dd 0310f0f6ah
+dd 0e559a30bh
+dd 00d568c23h
+dd 060992e6fh
+dd 0fe404971h
+dd 05c118b2ch
+dd 06a6367b3h
+dd 05539f75eh
+dd 0d40ebd1fh
+dd 0189676eah
+dd 08e9b8722h
+dd 02045c519h
+dd 069b7601dh
+dd 006929c8fh
+dd 078612ee1h
+dd 0604e7d6fh
+dd 03422a487h
+dd 0876142bfh
+dd 03b1b6d13h
+dd 0ec886309h
+dd 08d7ccf12h
+dd 062c49d4fh
+dd 0c12b13c4h
+dd 07eec83bbh
+dd 02e14268ah
+dd 0850db1b2h
+dd 057ac220ah
+dd 08c0f7d58h
+dd 0a16665fch
+dd 0a313a3f9h
+dd 0388e5bdfh
+dd 0d010a43bh
+dd 098cfedcah
+dd 0d4a03d62h
+dd 05171a748h
+dd 08689bc9fh
+dd 05194d675h
+dd 0cab58dddh
+dd 0413e143dh
+dd 092efc623h
+dd 07fc1e8d4h
+dd 0cdf1fc50h
+dd 0542d2065h
+dd 05a5e467fh
+dd 0e98794fch
+dd 05e2b3021h
+dd 06c61cf22h
+dd 08a27b909h
+dd 05a7c8024h
+dd 03a364753h
+dd 07930d4a0h
+dd 0c2223224h
+dd 03cfc1af3h
+dd 0c7159629h
+dd 0a76298bch
+dd 0fc9ffad9h
+dd 0334cdae0h
+dd 085d08640h
+dd 047ef9fcdh
+dd 0f8eba1ach
+dd 0954205e9h
+dd 032a60202h
+dd 0476a562ah
+dd 0e07260deh
+dd 0476fab12h
+dd 0961f961eh
+dd 0ea8cb779h
+dd 054008d17h
+dd 00db46d3ah
+dd 0a7a41f1ch
+dd 016caae04h
+dd 03d3bfcach
+dd 0ef265da9h
+dd 09b6dc57fh
+dd 06248d08ch
+dd 01aa35cf0h
+dd 051841a2fh
+dd 0635fa51fh
+dd 09c688c03h
+dd 02d0875d2h
+dd 0b4bbe36ch
+dd 05c7d78a5h
+dd 0fdd44a28h
+dd 0596145dbh
+dd 0882bfc72h
+dd 0f846884eh
+dd 0d5cc5236h
+dd 02fb367dbh
+dd 0f8fa7aeah
+dd 089199831h
+dd 05db87974h
+dd 05a96d48ch
+dd 0170e41abh
+dd 0fe00603bh
+dd 08400e7efh
+dd 03f3c904dh
+dd 048aa10adh
+dd 03f8f7ddfh
+dd 08830eb06h
+dd 08c6c0cf8h
+dd 07e15451fh
+dd 0fd1710c8h
+dd 0195d4bfah
+dd 03d9f3d18h
+dd 0a82c55a6h
+dd 0f7140994h
+dd 004e7ec0dh
+dd 044a58351h
+dd 0d13fa82ch
+dd 04e64390dh
+dd 0e9209068h
+dd 01b45c68fh
+dd 01b27d16fh
+dd 029e127aah
+dd 08b84967ch
+dd 00fc7ef51h
+dd 00616c48fh
+dd 0172bd4f5h
+dd 080426980h
+dd 00c4b771fh
+dd 0cd94d1aah
+dd 0bd3bcbcdh
+dd 0c92602a3h
+dd 0f79946e9h
+dd 01fade0e7h
+dd 087780e4eh
+dd 08aef8e4ah
+dd 0b5d9b8d7h
+dd 00e5581adh
+dd 0807da4d8h
+dd 02acc313bh
+dd 00a173b28h
+dd 0bb844195h
+dd 0f46e4dcbh
+dd 0f48e3ac5h
+dd 045ba9e1bh
+dd 0460cf70dh
+dd 00424a69ch
+dd 06c596019h
+dd 059c647e4h
+dd 0a389dfbbh
+dd 09c39d511h
+dd 07e6c0df7h
+dd 01b415f2fh
+dd 0233fd855h
+dd 0eea5d349h
+dd 0ce420da3h
+dd 0ab5d7b9dh
+dd 0a0c78a79h
+dd 0517d4254h
+dd 0d93935b9h
+dd 0b00ab1eah
+dd 042caae9bh
+dd 0e491b25dh
+dd 08820576ah
+dd 0b5c39619h
+dd 028459ec4h
+dd 06d1cd9e5h
+dd 08ab1e9ach
+dd 096ef00dch
+dd 09ebeb2abh
+dd 0ce3d8c9ch
+dd 0f9fe7555h
+dd 08815ee55h
+dd 0041ffd54h
+dd 054801fb5h
+dd 070299fa7h
+dd 0e34d942bh
+dd 0a9b28b25h
+dd 00054796dh
+dd 08670e3d8h
+dd 0f8138ee2h
+dd 0686686ach
+dd 023e661eeh
+dd 094228274h
+dd 06405e4b8h
+dd 07a4c67edh
+dd 045936441h
+dd 07576f618h
+dd 0e5daf6cch
+dd 00519772fh
+dd 00d7a6141h
+dd 052248989h
+dd 04ec5e9ebh
+dd 07a04c015h
+dd 011fe6013h
+dd 08e96e997h
+dd 0eca19b96h
+dd 0947ad8a8h
+dd 07128c489h
+dd 00b60b7a3h
+dd 03adab21eh
+dd 06b20ad51h
+dd 0921efa0fh
+dd 04bcc546bh
+dd 0b9381055h
+dd 04a13d356h
+dd 059c304c6h
+dd 094f11d92h
+dd 001890eddh
+dd 0b269a00ah
+dd 052d2cd63h
+dd 051b00e7fh
+dd 0a569b66eh
+dd 0aa44479eh
+dd 06a78dbbbh
+dd 0f8efe2adh
+dd 02f5f7301h
+dd 01113b259h
+dd 0193c9b2ah
+dd 0dc3af6feh
+dd 0d55e937fh
+dd 02cae0741h
+dd 039a3877eh
+dd 065ff9c16h
+dd 04257409ch
+dd 0c1074071h
+dd 085a7c3b7h
+dd 08983c4c4h
+dd 05921f931h
+dd 06829c30dh
+dd 0eaa3ff52h
+dd 0fe8f1497h
+dd 03452e024h
+dd 039f626aah
+dd 039d9c1fch
+dd 0967f6588h
+dd 0f9c4508fh
+dd 0959d88f1h
+dd 0a135ed0ch
+dd 0efec6c43h
+dd 05fa1a9ech
+dd 0df7a8ef4h
+dd 0cc7f7a45h
+dd 039126c7ah
+dd 095af3450h
+dd 00ddb18a7h
+dd 0757f8c14h
+dd 0af2113e7h
+dd 0ec1aa96ch
+dd 08ef2e3d8h
+dd 0282079f1h
+dd 00bded66ch
+dd 0f8b4a508h
+dd 04a3f426ch
+dd 013fdc9abh
+dd 0b52cb3d9h
+dd 0e9f21ca1h
+dd 0d1a8f21ch
+dd 08b809953h
+dd 02f34c441h
+dd 022c38cfch
+dd 01f8a6c88h
+dd 0220d93dah
+dd 07d5a06cbh
+dd 043f22aach
+dd 0c4d540deh
+dd 04917c3bfh
+dd 0b2ef4816h
+dd 084c2a7d7h
+dd 019493566h
+dd 0fcebe20ah
+dd 0167746e9h
+dd 0a58fbc31h
+dd 0a8068beeh
+dd 0f4dd25d2h
+dd 0a530bb1ah
+dd 0d606b8bah
+dd 0c5c58940h
+dd 0e1fc27dah
+dd 0e36d9b04h
+dd 015ba50c7h
+dd 066ce468ah
+dd 0aa446103h
+dd 0714803feh
+dd 07bbcbe1ah
+dd 0e87d3f49h
+dd 0e79b15b2h
+dd 0cb31a36fh
+dd 0c6ab6cb9h
+dd 04e60c038h
+dd 0089102fch
+dd 0d0b9605eh
+dd 013e65946h
+dd 0ccd4ac03h
+dd 0ecdf9f19h
+dd 0eb558d37h
+dd 0a0129476h
+dd 07b34e615h
+dd 09707c992h
+dd 0494907c9h
+dd 0d82b12f8h
+dd 092bc12f4h
+dd 0da978bb7h
+dd 029c3570bh
+dd 0ea0533e5h
+dd 076abf08dh
+dd 0dde30683h
+dd 08f31d7d0h
+dd 0e8cead36h
+dd 0a3404d87h
+dd 0e23b0101h
+dd 0d683ea22h
+dd 0eb413a10h
+dd 0497659b0h
+dd 0bb0aa93dh
+dd 08a5629e3h
+dd 054287f19h
+dd 04865cf0bh
+dd 0f8ad8c9ah
+dd 084d3cadbh
+dd 0a446d1dbh
+dd 016426147h
+dd 09d92ae20h
+dd 0dc450c70h
+dd 0dbfa5729h
+dd 042ccce2ch
+dd 03adeda59h
+dd 01da24bbdh
+dd 0febd4ca5h
+dd 0acae6821h
+dd 07e97fcf3h
+dd 0cb3aa4b8h
+dd 086e373b6h
+dd 09eb97483h
+dd 014859b1ch
+dd 0b55577b2h
+dd 0ad4ba176h
+dd 0f7809e7fh
+dd 0d7aa2778h
+dd 0e7ac8aa3h
+dd 029b0bf09h
+dd 0164c74d8h
+dd 0367de260h
+dd 0689cbbf0h
+dd 0baa16e6ch
+dd 0e0dd2019h
+dd 0969294fdh
+dd 0ba46d2bdh
+dd 05b25b971h
+dd 00ab03e44h
+dd 041564b48h
+dd 00340f56ch
+dd 0757b9a71h
+dd 0eeced65fh
+dd 076993794h
+dd 0c50e0d61h
+dd 0b81e602eh
+dd 01611b3d5h
+dd 0bd331835h
+dd 0770ae271h
+dd 0dd31df1bh
+dd 0501fb7f2h
+dd 00f7b3e64h
+dd 0606e9614h
+dd 05844a92eh
+dd 0197afd18h
+dd 0a82b04c2h
+dd 0a7a8b2a6h
+dd 04dab9155h
+dd 0b37f2ad6h
+dd 0c99f8b47h
+dd 09caa0ffbh
+dd 0c4480884h
+dd 087e8d851h
+dd 086b48209h
+dd 02da8a7f5h
+dd 09fd91c65h
+dd 080c629c4h
+dd 0a4f0e0fah
+dd 088451f34h
+dd 0c5098b35h
+dd 0531bb8eah
+dd 09a610741h
+dd 0a08686fdh
+dd 0748c4323h
+dd 08546e403h
+dd 01e2fcd7ah
+dd 096c82403h
+dd 064b74f0ch
+dd 0cee859a8h
+dd 07bd041c0h
+dd 0d0a0de1dh
+dd 0053a7d0ch
+dd 0b952951ah
+dd 00bc21a79h
+dd 073355c13h
+dd 0b0a11533h
+dd 0bab0f620h
+dd 076b50193h
+dd 0fc96935fh
+dd 0445ab5d2h
+dd 0bd9ecf1ch
+dd 00d35f08ch
+dd 051918fa5h
+dd 0f3e71b25h
+dd 0a30122ceh
+dd 0134735dfh
+dd 01bbbc1e1h
+dd 092a72168h
+dd 0e4471a8bh
+dd 05a761b68h
+dd 0787d856bh
+dd 0663e454bh
+dd 08feabeech
+dd 02fa04a7dh
+dd 0ced38a13h
+dd 0db7fe2a2h
+dd 0b9ce479fh
+dd 0649684dbh
+dd 0fd4897d8h
+dd 09dbf4532h
+dd 0dcbebd16h
+dd 07d036f38h
+dd 0f549c99ch
+dd 02449dabeh
+dd 0520a7c35h
+dd 07c806e9fh
+dd 079d47b54h
+dd 040524951h
+dd 0613e88d1h
+dd 0e69c8604h
+dd 0c89af047h
+dd 023f25c2eh
+dd 001f94ec3h
+dd 0189bb615h
+dd 0c3452b05h
+dd 08f6245a0h
+dd 06f70df7fh
+dd 0263b94aah
+dd 02a1ea952h
+dd 07f7573edh
+dd 07191db6dh
+dd 089622eaeh
+dd 005ad44edh
+dd 0ac87bad9h
+dd 0f3b72552h
+dd 0e1ab27d2h
+dd 02c865cf9h
+dd 0e4b42ff2h
+dd 0966d3734h
+dd 09b971f12h
+dd 035755bb6h
+dd 0ab35ca3bh
+dd 094f99e57h
+dd 029986572h
+dd 0734609c0h
+dd 0ef8ea7deh
+dd 0b08f2451h
+dd 03635884ah
+dd 00c81699ch
+dd 02d2a9e6fh
+dd 0a34fa533h
+dd 097ea04bfh
+dd 0e0921008h
+dd 095b983e7h
+dd 0c481f747h
+dd 0fdde77feh
+dd 0362db4d0h
+dd 0867b38beh
+dd 0d92a07e3h
+dd 08f90b6a3h
+dd 0641914e2h
+dd 04500d777h
+dd 00ad46aa8h
+dd 0c557c4c3h
+dd 026717b3eh
+dd 0ea63f7beh
+dd 02dc66f0dh
+dd 032bf1559h
+dd 0b783ff2ah
+dd 0ed6fcb21h
+dd 0f03b9052h
+dd 040e320e0h
+dd 05c353f0bh
+dd 0c16b7ceeh
+dd 0a8b20f06h
+dd 0fd3d32c0h
+dd 029fbdce1h
+dd 0ce478666h
+dd 084e5463eh
+dd 0faaf4baeh
+dd 0f6a8776ah
+dd 0cb4fd320h
+dd 00e90ecd9h
+dd 0fc2a8a77h
+dd 08ffb591ah
+dd 08047e943h
+dd 0ad33e3d4h
+dd 05922f897h
+dd 0cd711514h
+dd 05c7caa73h
+dd 08af1fc18h
+dd 0b84f8ad4h
+dd 0c0ea09c1h
+dd 0474fdee8h
+dd 07b9a50fdh
+dd 061787090h
+dd 0cd778cfbh
+dd 0fc22713bh
+dd 08c8ba74ch
+dd 0d0595fa3h
+dd 01c99ae45h
+dd 08c49708eh
+dd 0192520b9h
+dd 04b6bc965h
+dd 095fca478h
+dd 0a5b9f1dch
+dd 07a413110h
+dd 03e79f89fh
+dd 0940f03a2h
+dd 0fc3c738ch
+dd 055d9911ch
+dd 0fb8fa6f6h
+dd 04b94d6edh
+dd 0d354a32ah
+dd 045afc76ah
+dd 02acdf3f1h
+dd 093c0624ch
+dd 09b0c4803h
+dd 0b16e240fh
+dd 09f1c4b2ah
+dd 04c629b83h
+dd 0a94da729h
+dd 01d76ae34h
+dd 05370fdafh
+dd 00c176c13h
+dd 00559d462h
+dd 0b3d60767h
+dd 03389827ch
+dd 09a0fdfc8h
+dd 024789116h
+dd 027ec46a4h
+dd 0b3deebc0h
+dd 042301878h
+dd 0b0105df5h
+dd 0e7cac47ah
+dd 06da8031eh
+dd 0f669045bh
+dd 0d0c0a1aah
+dd 08554ece1h
+dd 052cc92bdh
+dd 0ef7d7be5h
+dd 0e6da1c37h
+dd 0024a345ah
+dd 02d20e64fh
+dd 0f7730f55h
+dd 0b7ce7903h
+dd 0036313d8h
+dd 0cb5943dch
+dd 07ae68ee3h
+dd 0da95a82ah
+dd 0dc6ccde6h
+dd 0f10003a5h
+dd 0bfc9ecdah
+dd 0559d55deh
+dd 08d8d98ech
+dd 00b3eaf2dh
+dd 0fb51e2cah
+dd 0e9266dd2h
+dd 0fee50c13h
+dd 01c36d286h
+dd 02b820831h
+dd 0a2282584h
+dd 01b1bb923h
+dd 0e792fb48h
+dd 0da053301h
+dd 0532438b9h
+dd 04782338eh
+dd 0df69ee1ch
+dd 089a8dd28h
+dd 07db89830h
+dd 0f2a4b82fh
+dd 062cacb12h
+dd 043c45000h
+dd 0440f64a9h
+dd 095669256h
+dd 00faff184h
+dd 0b42d61e7h
+dd 0a448a17ch
+dd 040475adeh
+dd 0c809fc04h
+dd 0cdea6811h
+dd 051b8fc3ah
+dd 03a091d48h
+dd 0b31eb0dah
+dd 0566f7dadh
+dd 0e9d81103h
+dd 0f9db9440h
+dd 0a56d4b26h
+dd 011dc5f3ah
+dd 07fe12ecdh
+dd 0c2bfcf50h
+dd 09f41c9fdh
+dd 0be641da6h
+dd 0076578d9h
+dd 0e9f80242h
+dd 0d88ff513h
+dd 0355867aeh
+dd 0ea720cafh
+dd 05e27d2adh
+dd 0b2c1afa0h
+dd 07326f4aeh
+dd 0be959805h
+dd 01ca90445h
+dd 04cbd1a0dh
+dd 0c6dc8679h
+dd 0f8e63fc1h
+dd 0d7bf8047h
+dd 06b44ae44h
+dd 00a300cb7h
+dd 0dca532bah
+dd 094a77a80h
+dd 03b37e845h
+dd 0f6b25c95h
+dd 064cef64fh
+dd 0eb9f5da7h
+dd 0940f9bf9h
+dd 0cf426f1fh
+dd 082703e7fh
+dd 0c2fb5cf0h
+dd 06ad68129h
+dd 08d863100h
+dd 02795ad93h
+dd 02ca7e020h
+dd 0e259f07ah
+dd 06f73dbb4h
+dd 0478aeec1h
+dd 0f2b131eeh
+dd 08b755c07h
+dd 0f8ce96b7h
+dd 03a6858e7h
+dd 0b8d017a4h
+dd 0091170ech
+dd 0146fdbd5h
+dd 0ba5967eeh
+dd 014d35f96h
+dd 0c2ab91a9h
+dd 0a0e131e4h
+dd 05dbd498ch
+dd 0a6273839h
+dd 02f8632a4h
+dd 0961a1ec4h
+dd 0b9c30bbeh
+dd 002f38c3dh
+dd 0da70bc42h
+dd 076df4887h
+dd 0c0510911h
+dd 0745268b1h
+dd 0f626f406h
+dd 0c587ec65h
+dd 0a59c68afh
+dd 079962d60h
+dd 007343619h
+dd 0c704fdb0h
+dd 04ad28aa3h
+dd 06bb3d9fah
+dd 01c713ca1h
+dd 06563384eh
+dd 066a4f8a4h
+dd 07b6e2755h
+dd 06d738f7eh
+dd 0169db46fh
+dd 0115c9c31h
+dd 04cba40afh
+dd 0d44df8e7h
+dd 064d84defh
+dd 0ae07e25ah
+dd 070efa309h
+dd 06b0ea923h
+dd 0f897969ch
+dd 09bd75571h
+dd 0fbc91f13h
+dd 000b56cb4h
+dd 061ebe3eah
+dd 08397e251h
+dd 046bd2239h
+dd 010fa8adbh
+dd 0fcebb033h
+dd 019da433eh
+dd 0518ec32fh
+dd 01cbff397h
+dd 08be63c8ch
+dd 0be50057ch
+dd 0f6e9536ah
+dd 0c6f76cbfh
+dd 058ad38f3h
+dd 0731a0fceh
+dd 0c02e374dh
+dd 0bd1d2829h
+dd 07cbdb0f6h
+dd 02768b285h
+dd 0b2df54a4h
+dd 0ab8db252h
+dd 08af43adfh
+dd 02f3d535fh
+dd 0209d602ah
+dd 0ed3bf7eah
+dd 0b20b355eh
+dd 012bdd295h
+dd 05d3f8c90h
+dd 0881f5171h
+dd 0720f06d2h
+dd 061d118a8h
+dd 0eeebf584h
+dd 04e52ed59h
+dd 09dcb454eh
+dd 0420fe06ch
+dd 010c3e033h
+dd 01941e375h
+dd 0c33c0e14h
+dd 06edabeach
+dd 00c0e454ch
+dd 044efe29ah
+dd 0c7af987ch
+dd 0f53b09a2h
+dd 015cfb6eah
+dd 07e05a6cbh
+dd 0e83c4cf0h
+dd 00ef35ccbh
+dd 094f54f04h
+dd 0f4b5cdc2h
+dd 0170bc6c8h
+dd 0bd8b1c70h
+dd 0623789bfh
+dd 0282ac72ah
+dd 068c977e7h
+dd 052da25cdh
+dd 07beb7e74h
+dd 03f7fee76h
+dd 0dbdca7ffh
+dd 0128ce669h
+dd 01d7ec1eeh
+dd 0a90e7193h
+dd 02c897053h
+dd 099344624h
+dd 00bc05efah
+dd 0cb551f3bh
+dd 0d7c9fea6h
+dd 00608a54fh
+dd 0fb66807fh
+dd 0dce314f9h
+dd 08047811fh
+dd 026f4bfedh
+dd 035a6c2feh
+dd 09af65553h
+dd 00070f4f4h
+dd 0d69ee90bh
+dd 00593a76ch
+dd 0974674b5h
+dd 0df8e0af5h
+dd 03209fc91h
+dd 01144ffb3h
+dd 0d7ec724dh
+dd 0a68b5f33h
+dd 04331391bh
+dd 019cecdf0h
+dd 020345495h
+dd 06545d488h
+dd 0741e7ef4h
+dd 00cb7ced7h
+dd 087815095h
+dd 0f3e965fch
+dd 027fbcd92h
+dd 0a8f62aa1h
+dd 0ba4d75b8h
+dd 019586f43h
+dd 02e953a0eh
+dd 02c8a1791h
+dd 095235ca2h
+dd 044953715h
+dd 075d6ffaeh
+dd 0b57947b7h
+dd 0709b22d9h
+dd 005bd727ch
+dd 0c9e54903h
+dd 064d32d3fh
+dd 0245fe296h
+dd 02cca0f5ch
+dd 0ea816fe5h
+dd 09b9b33eeh
+dd 08c88f9b6h
+dd 0035dea54h
+dd 0c56d13fdh
+dd 0a6d8eb78h
+dd 08fdc657dh
+dd 01a78791fh
+dd 0708e057fh
+dd 05baeca68h
+dd 05ca1179eh
+dd 0347b0d0bh
+dd 0fd8c75ech
+dd 0ee392d2dh
+dd 0646ab472h
+dd 0659c5698h
+dd 0a278f6cfh
+dd 000ae5e1eh
+dd 021ff7c19h
+dd 0001c7ea1h
+dd 03094daf0h
+dd 048a807a0h
+dd 080cde70bh
+dd 077805ac5h
+dd 083d97ebeh
+dd 0cb26665ch
+dd 039663c10h
+dd 0318434c0h
+dd 0346ba048h
+dd 0933ac4d8h
+dd 015dcf594h
+dd 0f42f28d8h
+dd 0bbec8f79h
+dd 06fb59e96h
+dd 0f334b897h
+dd 0b4d46193h
+dd 0dc621945h
+dd 06eaa1194h
+dd 02b50eba9h
+dd 06a69a02fh
+dd 09a10cecfh
+dd 07f18bbbdh
+dd 0863bef0ch
+dd 0930c427dh
+dd 076b4386ah
+dd 0b8d849dch
+dd 0ef2c6534h
+dd 0c7f2381dh
+dd 05d654290h
+dd 0424d41fah
+dd 0303a5579h
+dd 0117a19a1h
+dd 02a89f047h
+dd 0cdc37c7ch
+dd 024e7160dh
+dd 0e0e05e20h
+dd 07aafd2e8h
+dd 0e5e9841bh
+dd 043832b76h
+dd 0f1d4f0e6h
+dd 0297ec413h
+dd 0c8bd25d6h
+dd 074691316h
+dd 0ad634e7fh
+dd 09b58b65fh
+dd 012946953h
+dd 0ad746713h
+dd 034f36944h
+dd 0ac0ae9e0h
+dd 07340a288h
+dd 0e0e70c94h
+dd 02a08f6ceh
+dd 0bf5172afh
+dd 049fc9d56h
+dd 03f8c0523h
+dd 0ce97c8a2h
+dd 0aefa316ah
+dd 004d82a35h
+dd 0687dcc88h
+dd 067025768h
+dd 0ae4c3107h
+dd 0bca6c28ch
+dd 09fbdab3dh
+dd 08179e2deh
+dd 0a8ffc132h
+dd 075b16a82h
+dd 04ae99d76h
+dd 07f31113bh
+dd 006632a36h
+dd 0a0ac2224h
+dd 04d7653fch
+dd 018c4a42ch
+dd 08ad6c25fh
+dd 0c55f4aa7h
+dd 01a049b94h
+dd 0d6690f0fh
+dd 0c4fa75d0h
+dd 001305a96h
+dd 0b54eddb6h
+dd 079695c9bh
+dd 0bfa884fdh
+dd 07d0aa84ch
+dd 07f90fb42h
+dd 00c687057h
+dd 04f718436h
+dd 0b2c350bah
+dd 05b8fed0fh
+dd 02d2ff442h
+dd 074ba987eh
+dd 055d14acfh
+dd 050279733h
+dd 0e0bbbbabh
+dd 01ebab7cah
+dd 0904ce5c3h
+dd 07ce7f82ch
+dd 085c1b37eh
+dd 0c00fbeafh
+dd 02143f96fh
+dd 0a8d39996h
+dd 02e1df5a8h
+dd 0e50bbaaeh
+dd 079f819c5h
+dd 08d9bb873h
+dd 04c99982ch
+dd 0ed88665ch
+dd 01edf4e0ch
+dd 0400c7ad2h
+dd 012618be5h
+dd 0b4cc018bh
+dd 008a6a87dh
+dd 00a2bb003h
+dd 051005cc3h
+dd 07508f633h
+dd 09b8015a2h
+dd 04ee8e234h
+dd 0729124b1h
+dd 0f068909ch
+dd 0927a06a4h
+dd 0e50d26d6h
+dd 0b8b0302eh
+dd 0f43e5a89h
+dd 0a1f20d1dh
+dd 0241afcf5h
+dd 02ea7fe51h
+dd 0f203b2a6h
+dd 0beccb813h
+dd 02e4811c4h
+dd 0439a5240h
+dd 0c685c68eh
+dd 040493331h
+dd 07e075837h
+dd 0d5b551c5h
+dd 0955ad7eeh
+dd 039d8bc1bh
+dd 06693b064h
+dd 028fc6a42h
+dd 010628270h
+dd 0b7b0fd2ch
+dd 042141d2eh
+dd 0973ddb39h
+dd 0a0c52638h
+dd 0d0570150h
+dd 06fcfdad6h
+dd 03ebe9d9bh
+dd 057264cabh
+dd 0fa9fc198h
+dd 010cb2dd1h
+dd 0bab9d373h
+dd 04c21150ch
+dd 0b0367e73h
+dd 082b703b9h
+dd 08c4eacb7h
+dd 0553b0a0dh
+dd 0c74b53cfh
+dd 0aaa66832h
+dd 0d314f9dah
+dd 0b132f833h
+dd 0cf090128h
+dd 038e50b27h
+dd 026e8bbe6h
+dd 0ce72c311h
+dd 0fe68a674h
+dd 0c9b46500h
+dd 0a307c0ffh
+dd 08c5ceabch
+dd 02a795ff9h
+dd 02a3db988h
+dd 0af2e6aa7h
+dd 0bec1dbb6h
+dd 0609cea8ah
+dd 0cb4b7faah
+dd 0c9408db4h
+dd 0d5a8eb5ah
+dd 0a37e7945h
+dd 060406e73h
+dd 02608dc40h
+dd 052fb97d4h
+dd 01e75fbcdh
+dd 0f6fdd6ebh
+dd 0d0bb7134h
+dd 033b75b6dh
+dd 0b1cbb602h
+dd 0c4c986d0h
+dd 03e868504h
+dd 0a4918387h
+dd 0092ce657h
+dd 0155c3837h
+dd 0c86ae796h
+dd 037bd3d09h
+dd 0f970fe1fh
+dd 068fc56e2h
+dd 0689a503ah
+dd 0813e9d01h
+dd 0f1688103h
+dd 0b0b6b2e0h
+dd 0e5e6eee6h
+dd 0d1b08020h
+dd 00caf5ae2h
+dd 013aca6adh
+dd 00e5f75a3h
+dd 0d7eff999h
+dd 067e8cbb0h
+dd 038fed51dh
+dd 056bdb81bh
+dd 0eed04db5h
+dd 08d874d34h
+dd 02f0437f9h
+dd 021c7c59ah
+dd 054dc601ah
+dd 0839a3b64h
+dd 061e36ce6h
+dd 018d7100dh
+dd 0fd90aa31h
+dd 0c2521ef7h
+dd 02eda7edfh
+dd 0d58a06dch
+dd 04b115f09h
+dd 0689b1adbh
+dd 0d6b9ec64h
+dd 09a60136fh
+dd 02a154292h
+dd 0cd59701ah
+dd 0d3924caah
+dd 0e0709abfh
+dd 0c06e9393h
+dd 0676845c8h
+dd 074861105h
+dd 0af89620dh
+dd 0dbaec6ach
+dd 0a0aed33ch
+dd 065cc1ab1h
+dd 035121293h
+dd 009cb80d0h
+dd 0e49b3e1ah
+dd 061ad7237h
+dd 089ce7712h
+dd 0b8093350h
+dd 0a2adc17ch
+dd 0413ee987h
+dd 016fd5b56h
+dd 091db648dh
+dd 019da7687h
+dd 078ea6880h
+dd 0dcd34e8ch
+dd 0664290b9h
+dd 07b3ac6afh
+dd 06b740c12h
+dd 0ae0355aah
+dd 09ac0c8f6h
+dd 0c4ca9073h
+dd 0dd1b6c73h
+dd 05506ed03h
+dd 013aa92a6h
+dd 087255ba9h
+dd 00f14b8eeh
+dd 0b507c997h
+dd 0e1d16566h
+dd 0bc945733h
+dd 032629ac5h
+dd 0fd7b6a0ah
+dd 082e22008h
+dd 0d48249deh
+dd 06f57ce43h
+dd 0cd439fcah
+dd 0d8679443h
+dd 0aa593c51h
+dd 04177a440h
+dd 034f2926ch
+dd 08f912a71h
+dd 075ad2252h
+dd 029780990h
+dd 0c73d2ff8h
+dd 08a10955ch
+dd 016a03294h
+dd 0fbd7131ch
+dd 08e35646ah
+dd 0593ac488h
+dd 0ab4b6c72h
+dd 06dd2a1bbh
+dd 0c6be6f3ah
+dd 0db6e3c60h
+dd 008f60250h
+dd 0f4e6b665h
+dd 025d71199h
+dd 0f1739d1eh
+dd 0b6ac3fadh
+dd 031a37430h
+dd 00d0508ffh
+dd 025d8ef84h
+dd 0619aa40bh
+dd 005c694efh
+dd 034fae695h
+dd 0be2a1042h
+dd 027737abbh
+dd 0e59ffb53h
+dd 0137e3ebfh
+dd 0b938ed35h
+dd 01bb5f02ah
+dd 0643ad559h
+dd 048329677h
+dd 0318d78e3h
+dd 0b3f293e1h
+dd 08544e2eeh
+dd 0eec48886h
+dd 06cfe619ch
+dd 077fc4557h
+dd 0c088b58fh
+dd 0a9738b9bh
+dd 05ca8f4ddh
+dd 0967bf937h
+dd 06d75ef37h
+dd 05589b875h
+dd 0eef2dc4dh
+dd 0a6aadb0dh
+dd 069811853h
+dd 0e1c6179ch
+dd 040666f6dh
+dd 09823c797h
+dd 0d255a5f2h
+dd 00575babeh
+dd 0050e338ah
+dd 033bf73fdh
+dd 056834da8h
+dd 08fd08c92h
+dd 08b862f30h
+dd 0a4aac84dh
+dd 06521ae0eh
+dd 040f15101h
+dd 05b7b331bh
+dd 028278f16h
+dd 0df457c37h
+dd 0cd33a3d5h
+dd 01c45cdf9h
+dd 028d96c38h
+dd 083d2455eh
+dd 0314f227eh
+dd 02251beaeh
+dd 09be4c775h
+dd 0e89c94e3h
+dd 0dfca7b39h
+dd 0770f0e4ch
+dd 0b0d692bah
+dd 06af88892h
+dd 07b7da4e9h
+dd 036c44f34h
+dd 082a6a900h
+dd 017895ed1h
+dd 097e6ca7dh
+dd 0625695a2h
+dd 095b66594h
+dd 09a769fech
+dd 0d4590174h
+dd 0ab718b73h
+dd 0e9cf57fbh
+dd 0082c58fah
+dd 0d321557dh
+dd 0134c64e2h
+dd 013f41143h
+dd 0d051273ch
+dd 08fa5fac9h
+dd 0f34cb936h
+dd 031ff8ccfh
+dd 02789bf5dh
+dd 046c8f882h
+dd 0b8ced28bh
+dd 0e968732ah
+dd 06f06ff9eh
+dd 00c3e3fd9h
+dd 04cff5823h
+dd 0e6e11ca4h
+dd 09a00ea41h
+dd 0cba7c704h
+dd 0547e89a2h
+dd 080c546dbh
+dd 0dfc4a4ech
+dd 04c692009h
+dd 0d08a5ddeh
+dd 0108b9623h
+dd 0ffd5a8fdh
+dd 0b0ebfa6bh
+dd 088b36e59h
+dd 0b5d17d79h
+dd 0f7e5a118h
+dd 07d63588bh
+dd 0dccd18d6h
+dd 01811e5bfh
+dd 0b128ba46h
+dd 036458594h
+dd 05712a50fh
+dd 0542d1f38h
+dd 0c08fd620h
+dd 0a88e0b54h
+dd 0f8f3815eh
+dd 04c9d4055h
+dd 0098f7603h
+dd 098cc9cdfh
+dd 011662b01h
+dd 078d68a9ah
+dd 0b0130334h
+dd 07e18fb08h
+dd 04086203ch
+dd 01ea762cah
+dd 03622e675h
+dd 0e0023030h
+dd 08aced871h
+dd 03424cd15h
+dd 0a8709551h
+dd 0ff15d72ah
+dd 08b3cf361h
+dd 024c91eddh
+dd 088c7a4b1h
+dd 0b46ec3f2h
+dd 007b0a45ah
+dd 0e5c1e775h
+dd 0f937bc29h
+dd 020f37bbch
+dd 08445e3fch
+dd 0d490bfbeh
+dd 0a2e88b8ah
+dd 09c2ac73ah
+dd 0bd40e80dh
+dd 06f1521dah
+dd 0182ca706h
+dd 0a8c6310ch
+dd 08bb8bf8dh
+dd 02003032ch
+dd 076cf917bh
+dd 06681694bh
+dd 0725c4611h
+dd 09cafc12dh
+dd 06d6543ech
+dd 00f3b3107h
+dd 0c1b84723h
+dd 09e22663ah
+dd 08b10193eh
+dd 041c634e7h
+dd 08a5cabc8h
+dd 07e855e29h
+dd 09caccc80h
+dd 06d24fc52h
+dd 09d72d5e0h
+dd 05d7988e7h
+dd 09bb42d86h
+dd 02783de81h
+dd 09143a257h
+dd 000328746h
+dd 0629e6d1dh
+dd 0e2bd1cb6h
+dd 02879c640h
+dd 07b968359h
+dd 027f49c24h
+dd 002ba44d9h
+dd 096cb15f9h
+dd 0f5bd077fh
+dd 0c85dd301h
+dd 0e394d0aeh
+dd 0a37b17fbh
+dd 0dc9bf381h
+dd 0693555abh
+dd 0f291e709h
+dd 061456c86h
+dd 0f8d61ee4h
+dd 055ed0d88h
+dd 0075b6f9ah
+dd 08b165754h
+dd 0a372b613h
+dd 0f26fbaabh
+dd 073c592bbh
+dd 0f45a6bf4h
+dd 0880969b8h
+dd 09274768bh
+dd 0c0f7e253h
+dd 045cdb8a6h
+dd 01bf2c0cch
+dd 007c60522h
+dd 0864ff797h
+dd 0e41f674ah
+dd 06f717820h
+dd 05b823025h
+dd 0a3b30d3bh
+dd 05db7863ch
+dd 0206f0e78h
+dd 0d6f78adfh
+dd 0e3107754h
+dd 0a9707439h
+dd 00141f0b3h
+dd 0ae116520h
+dd 085f3cc30h
+dd 0bfe99217h
+dd 06b15ad80h
+dd 0c7e82573h
+dd 0a899ba88h
+dd 0ce92096dh
+dd 0c734e807h
+dd 05f414e33h
+dd 05068242ch
+dd 0afdf0285h
+dd 0195befb1h
+dd 0a961ef75h
+dd 05bb4e398h
+dd 06f0a9fcbh
+dd 0e02a5f8ch
+dd 08433e416h
+dd 0c1eed07eh
+dd 0428b0e94h
+dd 05bdefc03h
+dd 04f2ddbcah
+dd 062833d0ah
+dd 0698e0393h
+dd 084838cefh
+dd 040cb5f06h
+dd 00edc57ddh
+dd 0422936f0h
+dd 0ab969cb3h
+dd 0f8c39e97h
+dd 09623fb0eh
+dd 075c9a767h
+dd 0c972f2f8h
+dd 062184652h
+dd 0b21d39eah
+dd 0b55ff111h
+dd 054ce3524h
+dd 0f5b8519ch
+dd 019917b8ch
+dd 0fdb4484bh
+dd 05de86498h
+dd 03dcd4098h
+dd 0a44d8fa9h
+dd 0c5037f9ah
+dd 01500e589h
+dd 0b2546d6ch
+dd 0a27a649eh
+dd 0235883b3h
+dd 0b0af9beah
+dd 0369d83a6h
+dd 09212f7ech
+dd 0962b0f17h
+dd 085acb044h
+dd 00e5a47afh
+dd 0dff292a8h
+dd 06eff927eh
+dd 06ca7557ah
+dd 0f8eda697h
+dd 01a568b1ah
+dd 0341906bah
+dd 004a64b2dh
+dd 0fee0ec85h
+dd 035a7b30ah
+dd 012529326h
+dd 07aa94ee7h
+dd 06f58ed33h
+dd 0f38989cah
+dd 043c00248h
+dd 0c83b15efh
+dd 0aa11c532h
+dd 044304c99h
+dd 0418e60f3h
+dd 0c1a32b8bh
+dd 02d0dc427h
+dd 0af54ae56h
+dd 04f3edfb5h
+dd 09d67f17ch
+dd 00d126af7h
+dd 0f02baf28h
+dd 0fb5076f8h
+dd 01293f64eh
+dd 0b1ac282ah
+dd 0d5718de7h
+dd 08893b88ch
+dd 0e8bc257fh
+dd 0da450542h
+dd 01fdc54e6h
+dd 02f96fde6h
+dd 01063f0f4h
+dd 044cd5c9bh
+dd 04f62e360h
+dd 0d8c5389fh
+dd 092f7fce5h
+dd 09cee9b83h
+dd 07a3405b4h
+dd 05e04ccc8h
+dd 09a6b5061h
+dd 0e482363ah
+dd 0e43eca22h
+dd 0c786ff5ah
+dd 0c91a09b9h
+dd 0fb8a8c2fh
+dd 0f99ab2afh
+dd 0193f4a1dh
+dd 04542e79dh
+dd 038a20e1ah
+dd 0cdc6bdc8h
+dd 0017b10f1h
+dd 02a55c71dh
+dd 04f8c6ab4h
+dd 02bb416e7h
+dd 0400806fch
+dd 09dc2fb15h
+dd 0e6c432c5h
+dd 006836ce9h
+dd 096da699eh
+dd 0c7fc687fh
+dd 0528bd167h
+dd 03274a877h
+dd 0e16e0a28h
+dd 0d97b619ah
+dd 0b901d6d8h
+dd 0f1f7c7adh
+dd 0289a34e3h
+dd 08a2dfa8eh
+dd 0b044ca37h
+dd 07ff69964h
+dd 039b3c75fh
+dd 0bd520869h
+dd 0fd71bd27h
+dd 0829d1507h
+dd 0a91b849ch
+dd 062117440h
+dd 0f18edfd7h
+dd 05eccde3eh
+dd 0656a0812h
+dd 06aeee6e8h
+dd 0397c171ch
+dd 03c45ee1bh
+dd 03bb7c05ch
+dd 012a284ech
+dd 01b644a17h
+dd 0e832a77fh
+dd 0cf94fedah
+dd 0d695eba8h
+dd 06d3458b6h
+dd 04f08eeceh
+dd 09453d33eh
+dd 00cf939b3h
+dd 0b344bcb9h
+dd 0346cd71dh
+dd 07147a5f9h
+dd 0eccb8214h
+dd 00a721638h
+dd 0c2bc1e3ah
+dd 0114acd15h
+dd 0926cbc94h
+dd 026bf4ccbh
+dd 0a9f041a1h
+dd 01a33d811h
+dd 0d83ea782h
+dd 088409d12h
+dd 017c11837h
+dd 041a0b39fh
+dd 0916b6851h
+dd 01b5d736fh
+dd 0c9abead9h
+dd 0aa6c3e62h
+dd 07809a1bbh
+dd 0a9fe1148h
+dd 079678a9eh
+dd 097a57e00h
+dd 04413a702h
+dd 090b3c90bh
+dd 0b34fca7bh
+dd 0957dc9ech
+dd 05ac5821ch
+dd 0ab916374h
+dd 0a5b9fab0h
+dd 0886cf654h
+dd 043707921h
+dd 081c5a5cch
+dd 05acfdc4fh
+dd 0dfefbaaah
+dd 082be06d6h
+dd 0332d2bcch
+dd 014cbd77fh
+dd 0ea29361eh
+dd 0946ee7d8h
+dd 0bedf95a8h
+dd 09a91060ch
+dd 008aaa74eh
+dd 0908b173ah
+dd 0a3df564ah
+dd 0871f8ab9h
+dd 0dc9f5aafh
+dd 0c7a39175h
+dd 0308cb5d5h
+dd 0258602d4h
+dd 07921d455h
+dd 0f997f3cch
+dd 0df384b82h
+dd 083242997h
+dd 0739e1109h
+dd 0fec15c94h
+dd 07171b7f4h
+dd 0e8543175h
+dd 0db4007cfh
+dd 0a7b38232h
+dd 0946126cch
+dd 0b391df7ch
+dd 01c9323d1h
+dd 02877bbcfh
+dd 0600541feh
+dd 01de8ccc4h
+dd 03339843bh
+dd 0ca4b7375h
+dd 0f34aa33eh
+dd 0935751b9h
+dd 051b466ebh
+dd 035116a3ah
+dd 06a083d63h
+dd 0e827e631h
+dd 060a1123dh
+dd 08fd20999h
+dd 0fae9986bh
+dd 0ba1de8f5h
+dd 07c3c238dh
+dd 0d417debfh
+dd 06722445ah
+dd 0d4568a22h
+dd 03a7df2fch
+dd 0dd2fef3bh
+dd 057c0c9d0h
+dd 026ddc284h
+dd 012e454cbh
+dd 074d7f601h
+dd 0bb52d378h
+dd 049cb0334h
+dd 0b7926ee1h
+dd 0a6eafd25h
+dd 0a31006a9h
+dd 07ec143cbh
+dd 0cb570f88h
+dd 046889050h
+dd 03dbe5582h
+dd 09abf1dc0h
+dd 02ca5b14bh
+dd 0c0a8c5afh
+dd 04cd143a5h
+dd 0e7fb8ed1h
+dd 014ff185bh
+dd 0a7130991h
+dd 04f2a8fb7h
+dd 082ff9a2eh
+dd 0c34d60f3h
+dd 087dcb577h
+dd 0e36dd1cbh
+dd 067a79a9eh
+dd 08d4cc150h
+dd 0f6913aa5h
+dd 05f9c36f5h
+dd 0e9213469h
+dd 00617d4e7h
+dd 0c0e32adeh
+dd 08afe8333h
+dd 0574ff5ffh
+dd 0bf6b2eb2h
+dd 01dc70c33h
+dd 02dd26605h
+dd 05b6b7263h
+dd 0f91cf44ah
+dd 0c3b9a81dh
+dd 071fbc5d8h
+dd 0f96048cbh
+dd 0321730bdh
+dd 0190330d0h
+dd 03d8c4551h
+dd 07f611529h
+dd 0c01367a7h
+dd 02aebb3aah
+dd 01cabcd35h
+dd 0538295d1h
+dd 0ed142cc4h
+dd 04cc69497h
+dd 0d360483fh
+dd 0bb81e25bh
+dd 066eb5371h
+dd 0508bbe0fh
+dd 0f6f79632h
+dd 0c93bca14h
+dd 095193e5dh
+dd 0a0a9543fh
+dd 0660e353ah
+dd 063eceae0h
+dd 0da0eb4f6h
+dd 0e9a332b4h
+dd 0d36faf8eh
+dd 04a2ae0a5h
+dd 020131882h
+dd 08c01187bh
+dd 024bba1ebh
+dd 0f9052f19h
+dd 0212caa95h
+dd 0f9f23526h
+dd 0c31aa813h
+dd 053b3fe57h
+dd 0ffdffbffh
+dd 07cf2c320h
+dd 0b8cf1cfeh
+dd 02dbbe975h
+dd 04b567024h
+dd 05c90e759h
+dd 000e4d85ah
+dd 0f4ca75f5h
+dd 048a5993ch
+dd 0a904ff93h
+dd 09ae34b49h
+dd 02c5c6d96h
+dd 0f29d43a0h
+dd 084cb2eb4h
+dd 05ae5a05ch
+dd 06d3bbb72h
+dd 0cd123f90h
+dd 0bf7eb655h
+dd 0f08841afh
+dd 0de2838dbh
+dd 0f103860eh
+dd 056b8a335h
+dd 0222b4063h
+dd 07977ab21h
+dd 0a2abfe4eh
+dd 0f2299891h
+dd 0ede59041h
+dd 09b7799bdh
+dd 073cd96bch
+dd 045da5e6dh
+dd 059662b87h
+dd 030cb307ch
+dd 077c8d01ah
+dd 086f38ea8h
+dd 03e7fbf03h
+dd 05586c1a6h
+dd 064279ee3h
+dd 019a10da4h
+dd 09febf501h
+dd 0fd90674bh
+dd 0de1404a5h
+dd 0cf8f7d4dh
+dd 0fbbde628h
+dd 06aae5d34h
+dd 08eb006e7h
+dd 05dd05879h
+dd 02a91eaf6h
+dd 03627bfeeh
+dd 0c1bbddc5h
+dd 0ad9d07dfh
+dd 01f5eea09h
+dd 0873beaddh
+dd 0fd827736h
+dd 01572657eh
+dd 03ac1e3bch
+dd 00ef198d9h
+dd 01beda622h
+dd 041ee57bdh
+dd 0ffa4d68bh
+dd 0f7ac81beh
+dd 089a16a18h
+dd 0b4fb86e9h
+dd 0e098b7b4h
+dd 03b6513a3h
+dd 0014a67ech
+dd 092896d65h
+dd 018401092h
+dd 0fda2eb01h
+dd 063403199h
+dd 0967bc60bh
+dd 022108998h
+dd 0e536a932h
+dd 0f53183eeh
+dd 099bf55ffh
+dd 03358302eh
+dd 02023ea6fh
+dd 0d44a1d26h
+dd 04ea057b3h
+dd 09b538660h
+dd 02391b512h
+dd 00b9c0e17h
+dd 0f59f502ch
+dd 075fa8446h
+dd 035555355h
+dd 0d03d7fc4h
+dd 0a7354af7h
+dd 023568e46h
+dd 02125e5deh
+dd 0536df855h
+dd 04a6dc6c6h
+dd 04172120fh
+dd 06c949da8h
+dd 06adf5420h
+dd 03a155575h
+dd 00744cf91h
+dd 0dee3d071h
+dd 01366c16dh
+dd 04542a432h
+dd 04d570786h
+dd 0de10b06eh
+dd 0ad87cb02h
+dd 0a45dca16h
+dd 00b6a0279h
+dd 0a42ec2b3h
+dd 00f72ad2ah
+dd 072629cc5h
+dd 0bcfc0f8bh
+dd 0118b1390h
+dd 089029694h
+dd 0f4c98d01h
+dd 0e75f7928h
+dd 03170d9a9h
+dd 087b6abdbh
+dd 01a636ca2h
+dd 09005b622h
+dd 081496e81h
+dd 02b2781e8h
+dd 0f3a9d2c2h
+dd 0c7fc1d25h
+dd 0d47c7defh
+dd 0708a2ee9h
+dd 0dbe9415ah
+dd 0c5d1c0e4h
+dd 055149d55h
+dd 0b6af61e6h
+dd 010958187h
+dd 08d070a88h
+dd 006dc2fc8h
+dd 0f1277ee2h
+dd 02e131299h
+dd 0deb9e4beh
+dd 0747b4704h
+dd 0d88456b2h
+dd 09219c0eeh
+dd 05112e8d3h
+dd 0348252fah
+dd 0d72d5b43h
+dd 0cb7356e4h
+dd 067974c9bh
+dd 093e05ddeh
+dd 0dd91e5a2h
+dd 07a7fe2e4h
+dd 0700e4ce9h
+dd 09421395ch
+dd 012422dffh
+dd 01df40a81h
+dd 0c922d3f8h
+dd 05a7df114h
+dd 044ed7aach
+dd 01dd8fcb5h
+dd 00f27eb65h
+dd 0ca767820h
+dd 06e84898ah
+dd 0358241e6h
+dd 0c435a9b5h
+dd 039f388f1h
+dd 0503fcf9ah
+dd 0bade8350h
+dd 0766c6ceah
+dd 09e9d7eceh
+dd 071184622h
+dd 08f10f087h
+dd 03b7aa912h
+dd 0c8de8f7ch
+dd 0246b328fh
+dd 00eb27c61h
+dd 0794aa321h
+dd 0ca707cceh
+dd 08dc6331bh
+dd 06767f092h
+dd 049561cc5h
+dd 0cb12aef5h
+dd 079ffc275h
+dd 01f8185e4h
+dd 0ba9d1c19h
+dd 0bf8c7ec8h
+dd 0d2b4d4afh
+dd 00cafc06fh
+dd 0bac076bbh
+dd 06e33b06fh
+dd 0b99bf546h
+dd 033ed1d40h
+dd 07125a988h
+dd 0c2448d32h
+dd 0ddf494b4h
+dd 02185a6f5h
+dd 0a9cabaffh
+dd 0325dff30h
+dd 086c9dca3h
+dd 0cc7006c1h
+dd 0d4699d4dh
+dd 0d7655836h
+dd 01fefe09ah
+dd 035a8e897h
+dd 0d4b6ac83h
+dd 0b0e76febh
+dd 05ad43773h
+dd 0ec314738h
+dd 0f5e5126ah
+dd 0920f5f5fh
+dd 0f343abb0h
+dd 095f2cf1eh
+dd 02122c7c2h
+dd 07007d902h
+dd 0eb9d8659h
+dd 0edb41ee0h
+dd 0291b6938h
+dd 0cf1eb239h
+dd 0392a2a81h
+dd 06f1c211dh
+dd 03fbf7e02h
+dd 094bc949bh
+dd 0bbefe50bh
+dd 00531c4d4h
+dd 0c445380ah
+dd 0412a66a5h
+dd 0efcb1051h
+dd 0bc927d12h
+dd 048469299h
+dd 0dc4b2c22h
+dd 04fdab34dh
+dd 0fa71c757h
+dd 07a182038h
+dd 0c948b40fh
+dd 096cb173ch
+dd 047c4d576h
+dd 023f36cddh
+dd 0dc150618h
+dd 0f63c136dh
+dd 0f3d7d0beh
+dd 0b6fd42b5h
+dd 0c6f17f83h
+dd 09f628656h
+dd 0a2ee1214h
+dd 03f3fb945h
+dd 0a424c3d6h
+dd 0fb21309bh
+dd 04c6d97f0h
+dd 0a8be02fch
+dd 034f5b7eah
+dd 0ff2a5f0ah
+dd 004d3bbeah
+dd 0f26e2bfch
+dd 0fd44148eh
+dd 0993e686ah
+dd 0484911efh
+dd 02ff0619ch
+dd 023a12d70h
+dd 02a250aa1h
+dd 095a935b4h
+dd 03bd428c8h
+dd 0a1162eebh
+dd 0f1a291edh
+dd 0963a78b1h
+dd 090b16eaeh
+dd 0e5ecb3f5h
+dd 018ecca15h
+dd 04b12d241h
+dd 04d0997feh
+dd 0bc2830b6h
+dd 012f44938h
+dd 00555c260h
+dd 0159fe1beh
+dd 083e810adh
+dd 0e82945cbh
+dd 02f31f65fh
+dd 0a8c381c0h
+dd 0b7c2d751h
+dd 05d794bdfh
+dd 052ce4ae1h
+dd 008519c63h
+dd 09d2631ceh
+dd 0205d00edh
+dd 0e61c250fh
+dd 0ff515010h
+dd 07230ce7ah
+dd 08904492eh
+dd 0c27a67d0h
+dd 0292dc406h
+dd 0b7eac709h
+dd 05258a703h
+dd 091f974dah
+dd 0d8d5bbe8h
+dd 0144fa049h
+dd 04c7734c0h
+dd 0350cfaceh
+dd 09739a2adh
+dd 02a027c24h
+dd 0fd5c7ab8h
+dd 0ca567ed4h
+dd 0188fa4c6h
+dd 05b325f74h
+dd 0de37fd97h
+dd 07a3fee16h
+dd 0a019d194h
+dd 06d9743c9h
+dd 02b776939h
+dd 057ef4e3bh
+dd 018c4b013h
+dd 0d8fe039ah
+dd 02b571123h
+dd 08096deaah
+dd 04cd64cceh
+dd 089071863h
+dd 028bbab00h
+dd 0728e0cd1h
+dd 0837c9655h
+dd 0a4b4b86eh
+dd 04c8a178eh
+dd 046b15d24h
+dd 047c4dd37h
+dd 0ad0a5c26h
+dd 0c7a120fdh
+dd 0a172693ch
+dd 06934f6e8h
+dd 090bc6942h
+dd 0e7edc9e5h
+dd 04f7b8f7bh
+dd 06f4077e7h
+dd 0cca6e217h
+dd 04d1ffa5fh
+dd 0399eededh
+dd 0c70237b8h
+dd 0ee29c48ah
+dd 060806d92h
+dd 0ce6bec91h
+dd 040f2a689h
+dd 013b1b1beh
+dd 08c2fd6d0h
+dd 006f38262h
+dd 0168d5e80h
+dd 08126cec4h
+dd 0a31ca5f1h
+dd 0399ff6d3h
+dd 0c527ee50h
+dd 0d784dbdch
+dd 0c9f44477h
+dd 0bfae50e7h
+dd 032b952aeh
+dd 07ec13378h
+dd 01bf9adb6h
+dd 092a6c786h
+dd 054388bfbh
+dd 0845287eeh
+dd 08a6e6ac6h
+dd 096650e95h
+dd 05f66215ah
+dd 0aa2194b9h
+dd 07bdbbdb2h
+dd 0817230f0h
+dd 09993e722h
+dd 0e9e041b5h
+dd 069bc456ah
+dd 07cddebb6h
+dd 06be151d8h
+dd 097cf8397h
+dd 0a7c7dfafh
+dd 0281d014fh
+dd 093cd70c5h
+dd 00ab82d75h
+dd 099e33dcfh
+dd 0d23a7d90h
+dd 0acadfa91h
+dd 08a579c8ch
+dd 027c7cf61h
+dd 09fe8208bh
+dd 066665a4dh
+dd 00fe0288ch
+dd 0d875161ah
+dd 0a33a797ch
+dd 00f0e21a2h
+dd 009955aaah
+dd 0dc2d94a3h
+dd 0ec768b5fh
+dd 02e7aaa00h
+dd 0215137eah
+dd 06e781b52h
+dd 0f4e1274bh
+dd 0ca322326h
+dd 05196732ah
+dd 082ed42f4h
+dd 07d0df474h
+dd 0954d370fh
+dd 0681c12d6h
+dd 0e4a06adch
+dd 09ae0ef0fh
+dd 02ff36eb0h
+dd 015149545h
+dd 0515b5dc2h
+dd 0f3a839a1h
+dd 003303687h
+dd 00a0f9ae5h
+dd 0c94dc5bfh
+dd 0f14ef869h
+dd 03f450438h
+dd 0ab506897h
+dd 093bebf65h
+dd 073c6b4a0h
+dd 0fd31d55fh
+dd 06df9901bh
+dd 01122c993h
+dd 0146f2326h
+dd 09eaa676dh
+dd 0aa06c01fh
+dd 045a1411eh
+dd 02cb752c9h
+dd 0984f273eh
+dd 00110ba6ch
+dd 0b107308ah
+dd 014813112h
+dd 01709ea82h
+dd 03537784ah
+dd 063947e96h
+dd 066437c95h
+dd 02a4f9c03h
+dd 05a102e73h
+dd 0ce628fbeh
+dd 08454cf7ah
+dd 0f6cbdbc1h
+dd 05031666dh
+dd 0d053ccafh
+dd 069e8549eh
+dd 05a2fcdach
+dd 0c7ba9605h
+dd 0bbd40261h
+dd 001225b14h
+dd 0862d7785h
+dd 0a4d77f15h
+dd 0ebbcb427h
+dd 0e83486bch
+dd 03bf513d7h
+dd 0b92ca2b9h
+dd 09a506ebbh
+dd 087eb84ech
+dd 0f79fa958h
+dd 0566c026eh
+dd 07af12c26h
+dd 0866baa96h
+dd 0a7b532a4h
+dd 067f76142h
+dd 0cbcfb7deh
+dd 001d12be5h
+dd 01362ceedh
+dd 04e70d16bh
+dd 0acc346d4h
+dd 079a99633h
+dd 0ca236ce4h
+dd 0bcb8e01bh
+dd 01814b804h
+dd 001a24db7h
+dd 02de4a71bh
+dd 05288db96h
+dd 0807c4701h
+dd 0edf7844fh
+dd 0403d6e55h
+dd 0a6ca5e2ch
+dd 01f464f78h
+dd 05f9fa7e6h
+dd 045633f22h
+dd 0f989c77dh
+dd 0abeb3c80h
+dd 0ab7ffcc9h
+dd 0b0124314h
+dd 00c6768fbh
+dd 002d53b8dh
+dd 0c0193ab7h
+dd 03bddb450h
+dd 05cbc3444h
+dd 0a1af963ch
+dd 015efae4ch
+dd 06bb5734bh
+dd 027c82d6ch
+dd 09094d209h
+dd 0faaa88dah
+dd 06fd6e758h
+dd 05351d802h
+dd 096d628e0h
+dd 0f4767339h
+dd 0d485b3a0h
+dd 0efd852fch
+dd 01df6f79fh
+dd 037e1d953h
+dd 045deead7h
+dd 0e93b1af6h
+dd 085952b73h
+dd 06a0d2e17h
+dd 0c39e436bh
+dd 03490e6f7h
+dd 0fa3bcf11h
+dd 03678db72h
+dd 01114a728h
+dd 0b141e5a7h
+dd 09b861aa1h
+dd 03a13cc40h
+dd 0df8d5699h
+dd 007548ff8h
+dd 0c666953bh
+dd 0f38aee14h
+dd 04634550ah
+dd 03a9619deh
+dd 0df650ab3h
+dd 0a9060f62h
+dd 0203ea123h
+dd 0f9ba7a67h
+dd 03b8c3485h
+dd 06e887e22h
+dd 006da1a62h
+dd 0d60d4129h
+dd 0c279321dh
+dd 0b51d2ecbh
+dd 0ec4d9e8fh
+dd 014efc739h
+dd 08e38eb1dh
+dd 0ab657848h
+dd 024f76320h
+dd 0269f3013h
+dd 05e179ccbh
+dd 059e6b65dh
+dd 05efe4a2dh
+dd 0b70531f9h
+dd 04b61889ch
+dd 01fd8c2e4h
+dd 034bc47eeh
+dd 0a82aa405h
+dd 0c166a3c7h
+dd 0ba967671h
+dd 0be37feech
+dd 01372f88eh
+dd 058b25379h
+dd 006c04c6bh
+dd 062ef8796h
+dd 013cc9677h
+dd 091b7b3aeh
+dd 096d4c6d8h
+dd 085b40168h
+dd 078bcd775h
+dd 06eeb6e6bh
+dd 0d84387f3h
+dd 0cd5db76eh
+dd 086b64c38h
+dd 0c891bb54h
+dd 0352fc3a4h
+dd 05612bb54h
+dd 0032879aeh
+dd 0f6e36477h
+dd 0a15fab24h
+dd 0019e623eh
+dd 0348fefdeh
+dd 0ffd20beah
+dd 068705e66h
+dd 080d4bd18h
+dd 0f70a5c22h
+dd 02979d996h
+dd 02c0c10eeh
+dd 0a547f8efh
+dd 01cd04d71h
+dd 004e2184eh
+dd 01f8004e8h
+dd 0dd79e79eh
+dd 0ea6f118bh
+dd 0fe946ee4h
+dd 031207c3ah
+dd 0e99a9d05h
+dd 0424f7035h
+dd 097b4d788h
+dd 0e787c490h
+dd 0793c2ce8h
+dd 0e43ba44eh
+dd 00ca398a8h
+dd 090add868h
+dd 085d85d67h
+dd 0d80231cdh
+dd 04fe17a52h
+dd 090f5ec6ch
+dd 0f17c1585h
+dd 08ca83f71h
+dd 0ae71381ah
+dd 01c90a7a6h
+dd 0837ced69h
+dd 028335ad6h
+dd 06d9eb9b9h
+dd 0a1d0aba8h
+dd 0588c8722h
+dd 0e51e1bfch
+dd 0759ec186h
+dd 01b3070e3h
+dd 0dd582031h
+dd 0b6ea86f8h
+dd 02c328768h
+dd 07c09b65bh
+dd 0b20d7145h
+dd 03c0b0f0ah
+dd 003773677h
+dd 098a522ddh
+dd 0b71ca6ach
+dd 098d8a841h
+dd 09c1bfd1ch
+dd 0eefd5e1bh
+dd 076c59bb8h
+dd 084f37b9bh
+dd 06f481ba5h
+dd 02c65bd43h
+dd 0c7422adch
+dd 0e464d9f1h
+dd 076221660h
+dd 0da76b7ech
+dd 009f1eb8dh
+dd 03595e5ffh
+dd 0a2b6a281h
+dd 0880db53dh
+dd 0a046742bh
+dd 0f5b53d8eh
+dd 0940fe6f0h
+dd 091ecc429h
+dd 00587027dh
+dd 05b2a82c9h
+dd 0b1e38c44h
+dd 0d84f76bbh
+dd 0576accc1h
+dd 004a70922h
+dd 0459fe079h
+dd 083b9bb55h
+dd 0d92698d4h
+dd 0e9fda8c4h
+dd 04afe210dh
+dd 0f3ca53bah
+dd 08abdb47fh
+dd 0ac176972h
+dd 040127c98h
+dd 0c4bed306h
+dd 05630e620h
+dd 065a135b9h
+dd 0b9a03edah
+dd 02f54c517h
+dd 0ac6d8e60h
+dd 01ae10a0dh
+dd 0e756a9bfh
+dd 0592a1cech
+dd 03763878fh
+dd 0bf0acc08h
+dd 0fd3f8901h
+dd 0872cad52h
+dd 0fb4fb420h
+dd 09d082996h
+dd 0ff7d8ce3h
+dd 08b4470d1h
+dd 03037ec58h
+dd 0fe498f05h
+dd 0f40516f7h
+dd 00ef395aeh
+dd 07bb92f39h
+dd 0573d251dh
+dd 084d027afh
+dd 09ee90ef4h
+dd 09bbbe6c7h
+dd 08f218523h
+dd 0cb943dc3h
+dd 0269f40b3h
+dd 063daaa84h
+dd 078ac19c5h
+dd 0bdba5ab9h
+dd 093d1e070h
+dd 09a6e4585h
+dd 0ab659061h
+dd 07a9786cah
+dd 061b0f839h
+dd 0309b3f28h
+dd 0b5241e50h
+dd 0e4d6c6b7h
+dd 08fa5e84ah
+dd 0b302102dh
+dd 0287e9859h
+dd 0f4cc6804h
+dd 07742f0a2h
+dd 0877eacb0h
+dd 0460d81b5h
+dd 06e36ad0bh
+dd 0c3373e48h
+dd 0ee227278h
+dd 0ca5132e3h
+dd 0c16d2f63h
+dd 0af27cdb5h
+dd 0502a1537h
+dd 046422003h
+dd 02a5b4a73h
+dd 0384d4f88h
+dd 0edb290e6h
+dd 0f1e2f80ch
+dd 0fba16e5eh
+dd 0f0e3e6ddh
+dd 0ddba642ch
+dd 06176e2b3h
+dd 092578d95h
+dd 02254ebabh
+dd 0812cd77bh
+dd 078db3d42h
+dd 0f277a35dh
+dd 00d6bc263h
+dd 0768bbca5h
+dd 09a5d7d40h
+dd 0aa88d395h
+dd 046e2d43bh
+dd 03bdf0f9eh
+dd 01d8aa695h
+dd 030dc40dah
+dd 0b517fb04h
+dd 06049acbch
+dd 0e44815b2h
+dd 031b83fb1h
+dd 043847b89h
+dd 0298392bah
+dd 01eefc902h
+dd 0fe705b95h
+dd 0e0cede66h
+dd 0baf12800h
+dd 027caabd6h
+dd 049e7c307h
+dd 049f2da81h
+dd 0677bc7fch
+dd 060b52cd9h
+dd 00abc994dh
+dd 068284ffdh
+dd 0e6a05c83h
+dd 0cedfcbf7h
+dd 0503ef22eh
+dd 070ee3db7h
+dd 0d31bc352h
+dd 011f01602h
+dd 00338848fh
+dd 0e88c32bbh
+dd 0fa6cfebah
+dd 01a9311dch
+dd 0aff578cah
+dd 0bf011970h
+dd 069f3b20ch
+dd 0acf581cfh
+dd 01cf40d13h
+dd 0975bbf4eh
+dd 0dc710ec2h
+dd 059dbc777h
+dd 08e591475h
+dd 0818d6b07h
+dd 06a5b45b4h
+dd 0a9439ad3h
+dd 013ec5414h
+dd 04f14bf16h
+dd 000833b87h
+dd 0904ef28ch
+dd 02f23df06h
+dd 057ee725dh
+dd 0a04c7be7h
+dd 0ba937afeh
+dd 00cfea671h
+dd 04e04fbceh
+dd 021f141fah
+dd 09767730ch
+dd 09262d269h
+dd 0001b57a4h
+dd 0a27bcdb6h
+dd 06e9688d0h
+dd 09083ba13h
+dd 0f489d6abh
+dd 0658534a7h
+dd 032af53e1h
+dd 05537afd3h
+dd 0c41a293ah
+dd 0e9d6fed0h
+dd 07a076de7h
+dd 0b7afa53fh
+dd 0230487eah
+dd 0da2dc09bh
+dd 00e579606h
+dd 04c2928c5h
+dd 0b1bc3580h
+dd 097f4ed3fh
+dd 097da854eh
+dd 0d74a8387h
+dd 06444bc4ch
+dd 0152ec37fh
+dd 08387249fh
+dd 0fb30cc74h
+dd 06ae604c0h
+dd 008e5b365h
+dd 007bfc79dh
+dd 053950ee7h
+dd 0534e2c76h
+dd 0767c3706h
+dd 0dd955d41h
+dd 0f2da744ch
+dd 048b29254h
+dd 0c759c32ah
+dd 0ab15d7afh
+dd 0a9bba3eeh
+dd 07d1721dch
+dd 064439bb8h
+dd 005be3fddh
+dd 08fc62d5eh
+dd 01fc945c4h
+dd 05b30a7e2h
+dd 06748433bh
+dd 0ea2f5fd5h
+dd 061388f02h
+dd 0d456568ch
+dd 0104cc0e2h
+dd 0475ea4aeh
+dd 0a05156e6h
+dd 07bd9676fh
+dd 0c91f9d75h
+dd 00ca3bea0h
+dd 0d9322ce6h
+dd 0affa57bbh
+dd 0d67b2040h
+dd 034e50d78h
+dd 01cb8e40fh
+dd 0c5bb3507h
+dd 0030cdc25h
+dd 00bff0939h
+dd 0c4ca0818h
+dd 037830b52h
+dd 0849f72b9h
+dd 01d3cfb24h
+dd 05b0a2ed8h
+dd 0139bf979h
+dd 0132c61e9h
+dd 0e1bce4aeh
+dd 091f6c0b6h
+dd 01cc3d232h
+dd 0f7926f9eh
+dd 05881e986h
+dd 0b53a6433h
+dd 010e01776h
+dd 07eac5bb9h
+dd 041bb560eh
+dd 0eaabdf74h
+dd 09d74f73ch
+dd 039989b11h
+dd 0eaad5c87h
+dd 0d2f32793h
+dd 08a9b5a1bh
+dd 02cdddcfch
+dd 0f60073bbh
+dd 0db2f537bh
+dd 02a3fce0bh
+dd 0ac9da793h
+dd 090368fb8h
+dd 0ed1b2e34h
+dd 0d60cadefh
+dd 0b27519c3h
+dd 0018a5a57h
+dd 068c824a5h
+dd 0f05ee6cdh
+dd 03fc3a997h
+dd 0e4845773h
+dd 0198a4940h
+dd 08d3cc645h
+dd 016249a67h
+dd 098986c04h
+dd 04ccc668eh
+dd 0593350ffh
+dd 022bedf95h
+dd 050bd2424h
+dd 01023882bh
+dd 01e93d6e4h
+dd 0a6e1e455h
+dd 0c6ebbf2dh
+dd 0940cb1e2h
+dd 0e4b6a02bh
+dd 010f6a3bdh
+dd 0edb9cc78h
+dd 0aaa5ec15h
+dd 02518eff3h
+dd 00982ff7fh
+dd 0e992aeb9h
+dd 02a504443h
+dd 07a9a54beh
+dd 0b8979945h
+dd 02ec7884ch
+dd 0f30961cbh
+dd 0019c8757h
+dd 00fd4e7c1h
+dd 003eecb79h
+dd 0c7dfa552h
+dd 00ce2a3b0h
+dd 08206cc11h
+dd 0d4454363h
+dd 0cb7b09b1h
+dd 095bc7041h
+dd 0087f8ea3h
+dd 0baca9ef8h
+dd 048f7f437h
+dd 0b802fd50h
+dd 0d76d026bh
+dd 0f970928eh
+dd 04bd06b3ch
+dd 0d180b6cbh
+dd 061110fe1h
+dd 0fc1130fah
+dd 015193f27h
+dd 063a2be66h
+dd 0114aba22h
+dd 0ca79d673h
+dd 0c7a3889fh
+dd 01ed7ee40h
+dd 02e514b97h
+dd 07b13fec1h
+dd 0084105f0h
+dd 07fb43f22h
+dd 05daed00fh
+dd 0bf2f35d2h
+dd 09a22c2ebh
+dd 029d638ach
+dd 06971ec25h
+dd 06ad83919h
+dd 096b779c8h
+dd 0e1dcf8c7h
+dd 060dcb992h
+dd 0de91523eh
+dd 07e2f6a93h
+dd 09e862d9bh
+dd 0cdf8d024h
+dd 0c980a61bh
+dd 01996830ch
+dd 0dbbb690dh
+dd 04d64a326h
+dd 0fbad02b1h
+dd 0279a05ech
+dd 0b97a47e2h
+dd 054f6e9c2h
+dd 0ed57f2e5h
+dd 06c34cda9h
+dd 05320f2c0h
+dd 03ec0dfb9h
+dd 06873733fh
+dd 0803a1e79h
+dd 0ff80625dh
+dd 026df55dah
+dd 0e340578dh
+dd 013716d2ah
+dd 05600a783h
+dd 0f5a731bbh
+dd 012463f41h
+dd 0fddd0253h
+dd 0431df444h
+dd 0057e5b67h
+dd 08af73a72h
+dd 05132832dh
+dd 0b31984afh
+dd 0325dc03bh
+dd 0941225a9h
+dd 009ecfd92h
+dd 0416534a1h
+dd 0d56d18ech
+dd 0944e2d25h
+dd 0dc07a255h
+dd 0827ce509h
+dd 08d19a805h
+dd 063c270b9h
+dd 013c172a7h
+dd 0a9a425e6h
+dd 0ed800f78h
+dd 0c9fd9153h
+dd 0eee6f840h
+dd 09bf87cd3h
+dd 0b4a4e135h
+dd 0d8142e8eh
+dd 0f5c995f5h
+dd 019cb57e4h
+dd 078c5a17dh
+dd 08084eebah
+dd 09b122666h
+dd 0b349e9b0h
+dd 06b2ba7dfh
+dd 00239f12dh
+dd 001711f04h
+dd 0856dadd7h
+dd 0442da184h
+dd 03b86483ch
+dd 0780d7ad7h
+dd 0336f71c4h
+dd 0b7806c5fh
+dd 01e33bc8dh
+dd 0b9991eb8h
+dd 043f330c0h
+dd 080fa9513h
+dd 0a972c4bbh
+dd 0f3dddbaah
+dd 062111f33h
+dd 0e36aaa62h
+dd 0cef39e32h
+dd 0f9dd633ch
+dd 0a11346f7h
+dd 0445884e6h
+dd 0d954f42bh
+dd 051f04993h
+dd 053237ce4h
+dd 076add3edh
+dd 05a8e146eh
+dd 02ba9c1efh
+dd 097fc942ch
+dd 0dcc06ac9h
+dd 0d339b2a1h
+dd 0072efa56h
+dd 0a59dce5dh
+dd 07ac99fd9h
+dd 057451f15h
+dd 096b2d392h
+dd 0b2adc551h
+dd 002352e47h
+dd 06dcaa9a2h
+dd 0fb3715dfh
+dd 054ee9774h
+dd 0fb882765h
+dd 078f68034h
+dd 02d432662h
+dd 0226019d3h
+dd 08e6daf60h
+dd 019a49b7bh
+dd 01efd10d5h
+dd 09e30d548h
+dd 0d2c0c15fh
+dd 0de418a10h
+dd 028809f0eh
+dd 0b4109754h
+dd 0b39a8dc4h
+dd 0ff7bfc36h
+dd 01578257eh
+dd 007c51cd5h
+dd 01b6821d3h
+dd 0159f2de1h
+dd 0debe39feh
+dd 034eec3dch
+dd 0a9cb20ebh
+dd 0a7b477cdh
+dd 083924b89h
+dd 0ef1c5c2bh
+dd 01ce40052h
+dd 0bb7072f6h
+dd 0614c105dh
+dd 04f0764ebh
+dd 0c2bbf522h
+dd 0cbb7d837h
+dd 0e32d1288h
+dd 0d2ff9c00h
+dd 02bf772e7h
+dd 01af4639ch
+dd 0aee424c4h
+dd 07ab36414h
+dd 09ea7dda6h
+dd 09ac389cfh
+dd 00aba3ef2h
+dd 085a6f3f3h
+dd 083081250h
+dd 0543fe3ach
+dd 01f6d3453h
+dd 0825de73ch
+dd 0f6405055h
+dd 05683454bh
+dd 05b7f611dh
+dd 0d5296dbdh
+dd 0e9ca8967h
+dd 01c7e783dh
+dd 099ac7dafh
+dd 0fe0eae69h
+dd 0892cb6d5h
+dd 0a871b3c1h
+dd 016836c46h
+dd 09c391a4ah
+dd 0e46cd302h
+dd 04a02dccbh
+dd 08d6d9dc6h
+dd 061679288h
+dd 0b4d8a512h
+dd 08b2b1ce0h
+dd 0cd91191eh
+dd 0a8a0ace9h
+dd 08b0f4149h
+dd 0d9266242h
+dd 043359d4bh
+dd 07e827260h
+dd 09dc33760h
+dd 0d157e440h
+dd 0fcd46133h
+dd 0a0c8e47dh
+dd 065018068h
+dd 0b069e0c1h
+dd 0ab38bf71h
+dd 08c4bb64ah
+dd 0f4d6acc0h
+dd 07cbe42e7h
+dd 0ee1ce246h
+dd 0baff07edh
+dd 0e37f8c14h
+dd 045a9c648h
+dd 0c61b568ah
+dd 05fc23838h
+dd 0213dedcfh
+dd 035184587h
+dd 02d91753ah
+dd 01b24a72ch
+dd 06e2f255bh
+dd 0b494c3ffh
+dd 03025f6f4h
+dd 08d0533b9h
+dd 0a59521e6h
+dd 03d2e5409h
+dd 0abbb5bdch
+dd 018fd7bf8h
+dd 0bd15094ah
+dd 0b030eedah
+dd 09b04451ch
+dd 0ef7a0553h
+dd 0b8c15985h
+dd 0ef34bdf4h
+dd 029c40ca7h
+dd 019beec37h
+dd 088002c5dh
+dd 009e2c630h
+dd 0aef5d314h
+dd 042ce2fach
+dd 06e6cb947h
+dd 01131b3e0h
+dd 02519c6efh
+dd 0ae4c5524h
+dd 083ca1c40h
+dd 0df488124h
+dd 07b38364dh
+dd 06b7a9801h
+dd 0f9c89a8fh
+dd 0c31837f9h
+dd 05c60c0f4h
+dd 0330f6035h
+dd 01f9557bbh
+dd 0e33abd01h
+dd 0ad0eb0d6h
+dd 03309905ch
+dd 0acdfafbeh
+dd 0476a49b3h
+dd 0ed066d0eh
+dd 010479aa6h
+dd 09ce9ee4ah
+dd 03b3659dch
+dd 0bd000371h
+dd 0c03f6451h
+dd 0eb91fab2h
+dd 0657f9f37h
+dd 07ce9c639h
+dd 035698d09h
+dd 085309d2ah
+dd 06211dfd4h
+dd 01bf42c5ah
+dd 0101067e8h
+dd 05f117dcch
+dd 092388d32h
+dd 01fd6a7eeh
+dd 0e9c73e57h
+dd 07d111a74h
+dd 028a62eeeh
+dd 03c981b3dh
+dd 0bca4927fh
+dd 0bd5c0262h
+dd 07340d37eh
+dd 088d0b5ddh
+dd 0279b1310h
+dd 09c7f21cch
+dd 0f2529380h
+dd 068161a6dh
+dd 0301ee34eh
+dd 05f1f1ed2h
+dd 01c30376dh
+dd 0af8f6d17h
+dd 0de8f76a7h
+dd 07dbbd1cah
+dd 0efebde24h
+dd 02e7f4a13h
+dd 03dfde8cdh
+dd 056ff9f40h
+dd 04d9cb881h
+dd 0f12edfdah
+dd 00fa470e9h
+dd 00699ca4dh
+dd 082608b94h
+dd 0409c6f88h
+dd 0b5b82a40h
+dd 03d363a3fh
+dd 041f2c531h
+dd 00996826bh
+dd 0523e92f8h
+dd 0c23d6f2ch
+dd 04c1a838bh
+dd 09e7c840fh
+dd 04082ec5dh
+dd 0719599ddh
+dd 087bde0e0h
+dd 023c5abcdh
+dd 0ed647a34h
+dd 055562a62h
+dd 05163a263h
+dd 0d67cff29h
+dd 0a1dfd55dh
+dd 0266f9979h
+dd 0661448deh
+dd 02c78d410h
+dd 09c7de7b6h
+dd 03e85c20dh
+dd 0d01fc8d0h
+dd 087b90b5fh
+dd 08deff427h
+dd 06eb9239ch
+dd 0242afb98h
+dd 0675de1a0h
+dd 0cd17fe93h
+dd 00f1328e6h
+dd 0cc3a84f2h
+dd 0c957bb93h
+dd 0faa37342h
+dd 0f3765926h
+dd 0a48aeebbh
+dd 084efd852h
+dd 0ba7b99b3h
+dd 0b6259536h
+dd 0af397cebh
+dd 024532c87h
+dd 056f900c4h
+dd 05473b31ch
+dd 0588794f4h
+dd 0516609e3h
+dd 0fca80b5ah
+dd 099c469fbh
+dd 063872d31h
+dd 0cd3e34f3h
+dd 03531fde6h
+dd 0208549b3h
+dd 01749855ch
+dd 0aa3e8b32h
+dd 02909841ch
+dd 047fe361ch
+dd 0423e0cfeh
+dd 02d86a856h
+dd 045f96935h
+dd 025da2dc2h
+dd 05b1f4bf8h
+dd 07cc54d00h
+dd 0e2a3008ah
+dd 0749569ach
+dd 089910351h
+dd 036805e76h
+dd 049ccafc7h
+dd 095268404h
+dd 057b0847bh
+dd 05cf0979ch
+dd 047bb79cch
+dd 0b6b4df17h
+dd 0d052e62fh
+dd 03d8d49e1h
+dd 0f8b3a82ch
+dd 0e3e53eb5h
+dd 0b3d25010h
+dd 0e12b57a2h
+dd 034c3d3fch
+dd 0825fa170h
+dd 0dbb02817h
+dd 0fcc50962h
+dd 003564eb4h
+dd 0f1323386h
+dd 097838396h
+dd 0eb5f9536h
+dd 0a8a02d0dh
+dd 0607d5e12h
+dd 00a312adeh
+dd 081a151a3h
+dd 09882226bh
+dd 0ee1c4d8ah
+dd 0b6146b5eh
+dd 057943a2fh
+dd 04cc09d3eh
+dd 02e9b4774h
+dd 0045ad0d3h
+dd 0fa12d268h
+dd 0a4067411h
+dd 039ed4847h
+dd 060cdd541h
+dd 01014c08dh
+dd 02e57e63ah
+dd 05b5c2870h
+dd 014401383h
+dd 05eaef01eh
+dd 0e16b3e00h
+dd 0b5e03a0bh
+dd 045521839h
+dd 00a205558h
+dd 05fd82da1h
+dd 08e8cd035h
+dd 054b0b9b8h
+dd 0b9c231e6h
+dd 0feec0820h
+dd 045b23e8fh
+dd 0b5a1b379h
+dd 003391bech
+dd 0b0576ddah
+dd 05550eecdh
+dd 07e46af25h
+dd 0aef7d526h
+dd 076c27ed9h
+dd 0ab1ea9eeh
+dd 001e961f2h
+dd 07f1d983ch
+dd 0bbcc9dcdh
+dd 0856d1332h
+dd 038b0fd9ch
+dd 0d383ee7fh
+dd 0f2d1e6f6h
+dd 0fc637617h
+dd 0a5d36e0bh
+dd 025086772h
+dd 0ef9cbb2ch
+dd 0416643e4h
+dd 09f9d1fc6h
+dd 0d463c7b5h
+dd 0bf063a21h
+dd 0c16dcebbh
+dd 0634946afh
+dd 0e4973634h
+dd 013afb3a2h
+dd 08fd7fdf7h
+dd 06c0f466ah
+dd 063c9621bh
+dd 007a32b35h
+dd 0d330c891h
+dd 073671166h
+dd 031fc0d28h
+dd 0db442830h
+dd 0bbb347dbh
+dd 05118adc0h
+dd 050ba7999h
+dd 023ba8300h
+dd 0ae0fc725h
+dd 06cb6067ch
+dd 04e0ad265h
+dd 0a2a14898h
+dd 0c7ac5b29h
+dd 037584ce4h
+dd 03023cffeh
+dd 01065ede3h
+dd 02788a4b1h
+dd 008e194e6h
+dd 0f01ba4a8h
+dd 0d397c717h
+dd 0679baefdh
+dd 072e68c6fh
+dd 0809ad8c8h
+dd 071f1718fh
+dd 04d2a5be9h
+dd 017e6f999h
+dd 0d587afa6h
+dd 0870616a9h
+dd 0de93039dh
+dd 06e4ebd89h
+dd 003c92865h
+dd 0b12dcaa3h
+dd 0d8a5776fh
+dd 0b67b379ch
+dd 04fea88b8h
+dd 07f1fb806h
+dd 0e58d5c3ch
+dd 068c4bc3bh
+dd 07ae4aacfh
+dd 0603f2a50h
+dd 0c2948c15h
+dd 027b85a22h
+dd 0680a63aah
+dd 00de2af77h
+dd 08be0fd19h
+dd 0f65a1a17h
+dd 08c1fd881h
+dd 04fbee9fdh
+dd 0b049cd69h
+dd 0c8f33fd8h
+dd 05eb830ech
+dd 079146258h
+dd 0a5951fdah
+dd 0128f1d0bh
+dd 0c265a7cdh
+dd 00bd709b5h
+dd 0e358d176h
+dd 0b2029d7ch
+dd 0e361fdebh
+dd 0c88e4d6eh
+dd 0db9f778bh
+dd 0b145d738h
+dd 04b437a28h
+dd 0ad730af2h
+dd 05c637e89h
+dd 0f1369cdbh
+dd 01135d212h
+dd 0bc61f692h
+dd 0a8d8461eh
+dd 0e2f9d158h
+dd 0894e981fh
+dd 0ae877d3bh
+dd 09fa874edh
+dd 0e314561ch
+dd 010a19814h
+dd 0c3042704h
+dd 030a97b28h
+dd 022512a2fh
+dd 08ad43858h
+dd 0f420b785h
+dd 07ced992ch
+dd 085b83a89h
+dd 060b7d9e1h
+dd 0fc7b090dh
+dd 05a83b1c0h
+dd 051db6525h
+dd 0c0752c8bh
+dd 0ab73b234h
+dd 06bc9774eh
+dd 0f44cd695h
+dd 09d736a46h
+dd 08ef1f232h
+dd 01b6893b9h
+dd 0e3c25922h
+dd 0ad5f3ccdh
+dd 04ba4b793h
+dd 05b34db56h
+dd 0561339cch
+dd 0ce5966a5h
+dd 0d398b29ah
+dd 070c856f7h
+dd 0b1a68a9eh
+dd 0feecf727h
+dd 008cf2eb0h
+dd 0fa6cb03dh
+dd 0465f2262h
+dd 0f4c0bd0ch
+dd 097bc6036h
+dd 087d700b6h
+dd 0eb8b4447h
+dd 0e376ecf2h
+dd 041cc352fh
+dd 070ac07aah
+dd 0b6cfd7c8h
+dd 012df9131h
+dd 0bed65ea3h
+dd 0a050635fh
+dd 0361b2ac9h
+dd 0cd831ee5h
+dd 0fe707fe6h
+dd 044dc302ch
+dd 068ea2027h
+dd 0e3e28989h
+dd 01da6e71eh
+dd 07491e425h
+dd 0e60b3760h
+dd 051f7d94ah
+dd 0559b2698h
+dd 0f57588e3h
+dd 0e5ebdca7h
+dd 0fb1eaf8eh
+dd 0c185a7ach
+dd 0ad8def75h
+dd 0814e4a9ch
+dd 06b4eb105h
+dd 029399794h
+dd 0b5510e8bh
+dd 0fc267dadh
+dd 0a3ac2860h
+dd 048e1ab76h
+dd 08e8cf32ch
+dd 09be56df1h
+dd 073efe9e0h
+dd 0df57a114h
+dd 034f187a4h
+dd 075848090h
+dd 0defdc8c7h
+dd 0a82f7b50h
+dd 08fe35b71h
+dd 0cdcd84e9h
+dd 0d72f6ab8h
+dd 0716d9962h
+dd 0ae9aae41h
+dd 0198532afh
+dd 043bd266eh
+dd 0499125a9h
+dd 056120143h
+dd 0023eb18dh
+dd 05bcc6f66h
+dd 032088575h
+dd 0c367897ah
+dd 0bc243753h
+dd 0dc92d657h
+dd 027fa2b4bh
+dd 045134fa9h
+dd 078f9c7abh
+dd 029062a11h
+dd 01b37a1dch
+dd 09f0db399h
+dd 07d1e1c17h
+dd 028459cbah
+dd 01fb25e71h
+dd 028ad4d82h
+dd 0ecfab077h
+dd 035a0dba8h
+dd 098db2630h
+dd 0d8eb8054h
+dd 037f7dcf6h
+dd 020c7019fh
+dd 0b4795350h
+dd 0568cb6cfh
+dd 0ecd11080h
+dd 0b622a0c0h
+dd 087af9404h
+dd 0bde3a534h
+dd 091db975fh
+dd 0eef8c491h
+dd 0a577c122h
+dd 08cb3b3b3h
+dd 026b0963bh
+dd 0e92ee875h
+dd 01e59256ch
+dd 04782cb79h
+dd 0a3261ab8h
+dd 0922a24e9h
+dd 0f9b52784h
+dd 08f339308h
+dd 0c369680dh
+dd 057cd22ech
+dd 021467d5dh
+dd 07baccd95h
+dd 075d90884h
+dd 04e0cd411h
+dd 0a1e78ff3h
+dd 091bf8d08h
+dd 068a203a6h
+dd 0098a09d9h
+dd 0057168f8h
+dd 0eb119ebah
+dd 07e4e7b19h
+dd 071d60843h
+dd 08393b950h
+dd 0bf079ac2h
+dd 0086807e1h
+dd 0a610d422h
+dd 06c5bdfcfh
+dd 0b2638c79h
+dd 0038292f8h
+dd 008123459h
+dd 06c63a69dh
+dd 074b5a87eh
+dd 066d3569ch
+dd 0635fe89eh
+dd 087179027h
+dd 0b683faf7h
+dd 04831ec11h
+dd 0566a86c5h
+dd 0f8fac91ah
+dd 0cb0d60c8h
+dd 015f8cbb4h
+dd 00ec25365h
+dd 034b28d40h
+dd 0cd2e4530h
+dd 0c33806a5h
+dd 08cdf82ach
+dd 0e60f2ec1h
+dd 089611e28h
+dd 0c09c4d7fh
+dd 09ea7125ch
+dd 0b43fa28dh
+dd 0595e498eh
+dd 07d5052beh
+dd 012565dc7h
+dd 01870a07ch
+dd 0483ce3ffh
+dd 05ac7a9e8h
+dd 029d3a330h
+dd 0ba15da8fh
+dd 0a33ec5d7h
+dd 098d207ddh
+dd 023d78d96h
+dd 03df14a59h
+dd 0a43a5905h
+dd 0678dab2fh
+dd 04e29a43eh
+dd 02cd1c360h
+dd 05b162a1bh
+dd 040d8b5e3h
+dd 0ad78f0e8h
+dd 0f10dcf0bh
+dd 0208ba056h
+dd 0a06a9eb9h
+dd 046a919f1h
+dd 013163b1bh
+dd 0e0ea9106h
+dd 053c7a820h
+dd 03cbd64b8h
+dd 011d1c8eeh
+dd 0cb9c80fch
+dd 048e13052h
+dd 0363f8a96h
+dd 0ee39dbbeh
+dd 0ec8cef96h
+dd 05bd337d1h
+dd 07c6a334bh
+dd 08a00cf8fh
+dd 022a7a465h
+dd 02a918876h
+dd 03105b395h
+dd 05fdfd28bh
+dd 0eb1d1fa2h
+dd 0c388827ch
+dd 0ba48cb11h
+dd 044f40436h
+dd 0f295af56h
+dd 0cf3561e1h
+dd 0e64bb3a7h
+dd 06eb14d10h
+dd 0f9ac94cbh
+dd 020e69b5eh
+dd 0998ddffbh
+dd 0e26da161h
+dd 02b9a73f1h
+dd 0cd6c7e17h
+dd 09330472dh
+dd 08751b8f8h
+dd 0adbdc710h
+dd 05f6444cdh
+dd 01d377a6ah
+dd 03c5260e8h
+dd 09d1131f6h
+dd 0d670a0aah
+dd 037866679h
+dd 0947711e9h
+dd 0d096c442h
+dd 08144299dh
+dd 0bacc40a6h
+dd 0821520c1h
+dd 001a7865dh
+dd 0065a931ch
+dd 0639c7110h
+dd 04f9b8853h
+dd 04764e5f0h
+dd 0838d4ec5h
+dd 0388c9695h
+dd 04c7ae3adh
+dd 01f46d52fh
+dd 00dcce4b2h
+dd 0576c6c31h
+dd 0dad59c37h
+dd 0f01045dbh
+dd 0b6f2715dh
+dd 016647810h
+dd 0dad2ca6fh
+dd 08c90f165h
+dd 0b9d9aa64h
+dd 0c603cc08h
+dd 0f9a0ff57h
+dd 084032db1h
+dd 07ae62be1h
+dd 0851ac93dh
+dd 083a18cd8h
+dd 02c51b3b3h
+dd 0c3710d5bh
+dd 00fed8913h
+dd 03c82b699h
+dd 0d8b663c2h
+dd 0ed186a7eh
+dd 023924cc7h
+dd 01226e903h
+dd 09568b1c3h
+dd 04b3fdaebh
+dd 0519bd776h
+dd 091a7416bh
+dd 087eb38e8h
+dd 0dda30af8h
+dd 09c8fdc49h
+dd 06fc07dadh
+dd 0036e0e0ch
+dd 0b83d539ah
+dd 01e6bd651h
+dd 097c71554h
+dd 07f214596h
+dd 097ddb834h
+dd 04ab600c1h
+dd 029e02d6dh
+dd 0fe897e4fh
+dd 052bd9282h
+dd 0d59a30a4h
+dd 0a451664ah
+dd 0a8ea674eh
+dd 0877fe297h
+dd 0bedb4fd2h
+dd 069c77e36h
+dd 0cfcf0457h
+dd 0088c8ec4h
+dd 0e29ffe56h
+dd 0edf485fbh
+dd 03284c6b0h
+dd 0e7736d22h
+dd 0144ccea1h
+dd 08a180fa5h
+dd 0bf03f033h
+dd 0ea593e27h
+dd 001391aeeh
+dd 076c120cfh
+dd 02e1266efh
+dd 0369e7b19h
+dd 0c56d864dh
+dd 030b5f49ch
+dd 009c36ad5h
+dd 0440f1ff9h
+dd 0e4da4331h
+dd 0c62aba61h
+dd 041323eabh
+dd 02dfe70b0h
+dd 08dd47e8ch
+dd 06b50dd9ch
+dd 076fe52d0h
+dd 0b1871217h
+dd 070bd3fedh
+dd 09437f298h
+dd 063dc81e8h
+dd 0cc5b6d91h
+dd 05a405d5ah
+dd 075ef50f4h
+dd 0e30e9bc9h
+dd 08a0b1ffch
+dd 0d6945ee0h
+dd 04aa50d1fh
+dd 0bc12c4afh
+dd 0f2468583h
+dd 041cd1379h
+dd 092699b02h
+dd 00f4cbc00h
+dd 07f232c87h
+dd 0b31461dah
+dd 067b88ac1h
+dd 0e0fd7c43h
+dd 0cca1ab33h
+dd 02f207df8h
+dd 03c231b57h
+dd 004c9ebd2h
+dd 006a7fc5eh
+dd 0a6aad9a7h
+dd 011ca03dch
+dd 0af005a1bh
+dd 0bd2754f8h
+dd 008e12953h
+dd 08df795aeh
+dd 03c0d8ef3h
+dd 03e6d978fh
+dd 0324f4736h
+dd 072a6968bh
+dd 0bcb15f2fh
+dd 075ee122ch
+dd 0d9658234h
+dd 0b1bacc69h
+dd 0d1312685h
+dd 00180a071h
+dd 03fede3c6h
+dd 04f589afah
+dd 09685e9a3h
+dd 0a60d73d6h
+dd 0af0c3041h
+dd 090d45f7bh
+dd 0378315c9h
+dd 053d72ee0h
+dd 09a5f5b60h
+dd 0fa6c4b68h
+dd 0406818d8h
+dd 0c3e92610h
+dd 0870555d8h
+dd 0dafcd737h
+dd 0ca210014h
+dd 078feef13h
+dd 0ca84316fh
+dd 037baf8a8h
+dd 0295c6af5h
+dd 0a04b2f50h
+dd 0a01b9036h
+dd 038a760dfh
+dd 0f9ccfe6ah
+dd 07d4e6e20h
+dd 075e563e7h
+dd 0e8d23d9eh
+dd 0d93b4c57h
+dd 0d550902bh
+dd 03e83b136h
+dd 02a438a01h
+dd 0cdff44a5h
+dd 07712d194h
+dd 0f4570c35h
+dd 05feee9bdh
+dd 0ee34c6f2h
+dd 0e0336982h
+dd 05add07d8h
+dd 04e6bcee9h
+dd 0d4190438h
+dd 0fa1485c4h
+dd 00b96ec9fh
+dd 0bd532b61h
+dd 08ff6d03bh
+dd 03f57b9a8h
+dd 0a4f11aeeh
+dd 07830a45bh
+dd 0e63344dch
+dd 021029809h
+dd 062b5e284h
+dd 0825c68d0h
+dd 02ae221c8h
+dd 01413592fh
+dd 0f86ccd36h
+dd 0ee84a595h
+dd 00b1cac85h
+dd 0174d1c8eh
+dd 0ff3acdfdh
+dd 0ff4091f5h
+dd 0b2ec0c99h
+dd 0c4b9865ah
+dd 01b96e70bh
+dd 022f00cd1h
+dd 039004edah
+dd 07dac420dh
+dd 0ed68606bh
+dd 08f335b59h
+dd 0d1fb668eh
+dd 00e29765dh
+dd 00dd3b11eh
+dd 05e1d6802h
+dd 0a9485f67h
+dd 0c9fe2036h
+dd 09d12ebcbh
+dd 0907d0d9dh
+dd 0467f6b28h
+dd 0b68460c9h
+dd 09e001d00h
+dd 0043f0d5eh
+dd 0cb75c7fdh
+dd 0aaf6c6fdh
+dd 04d08294fh
+dd 0a7d3fbf8h
+dd 071eb59f8h
+dd 0f07de3a7h
+dd 0ef5ffe9eh
+dd 05416612fh
+dd 0cef56170h
+dd 01457f950h
+dd 0b2c4a9cch
+dd 046282672h
+dd 0bc216c37h
+dd 028d5da4eh
+dd 04511245dh
+dd 01586dcf2h
+dd 086dac99ah
+dd 011325ebch
+dd 08352dfc6h
+dd 0c846138fh
+dd 029904752h
+dd 03bd18fa3h
+dd 07b16817bh
+dd 016ebf2f7h
+dd 05a67e409h
+dd 039abcba4h
+dd 0e812af4ah
+dd 0196c150dh
+dd 08f19eef2h
+dd 0d4617685h
+dd 0fb339fa3h
+dd 07303506fh
+dd 0b6aad3dch
+dd 0fd974d5eh
+dd 01beb8481h
+dd 00e85001eh
+dd 0607e0356h
+dd 039285c1fh
+dd 03f3ddd5fh
+dd 0d52a46f5h
+dd 052d7969eh
+dd 0e49f49e1h
+dd 068185730h
+dd 03df55a89h
+dd 01d417dd3h
+dd 061341a4ah
+dd 0b0f0c495h
+dd 07c88ad5eh
+dd 0ac0338f5h
+dd 070e6caf3h
+dd 0ea51f109h
+dd 03efa2c10h
+dd 03d438457h
+dd 0261858cfh
+dd 0b9fb6c47h
+dd 0b69e48d1h
+dd 07a72f468h
+dd 0a485dcc4h
+dd 02a839490h
+dd 05f72f60fh
+dd 0a0401f7fh
+dd 0d9d971f7h
+dd 020b6c213h
+dd 08e8c4475h
+dd 0c1bfc2feh
+dd 000e407d7h
+dd 0ffb0d5abh
+dd 0ed3c7571h
+dd 0f6fce9d4h
+dd 0d6df4d2ah
+dd 0e8af1927h
+dd 0a6c68deah
+dd 09ca35ef7h
+dd 025079a61h
+dd 0a01011abh
+dd 01e0463bdh
+dd 08bbb39d8h
+dd 0e2fc3b69h
+dd 0f9319098h
+dd 005e121f6h
+dd 008d7cbedh
+dd 08daab40ch
+dd 016efccf1h
+dd 009478906h
+dd 04f3aff0ah
+dd 08122fedeh
+dd 0db4ed62ah
+dd 033979b34h
+dd 0f4b762e0h
+dd 0be62aac8h
+dd 0f184a136h
+dd 05b8d91cbh
+dd 0efa74e84h
+dd 066545878h
+dd 0c29a1380h
+dd 0112b5be4h
+dd 0620a3f97h
+dd 05e25ea5dh
+dd 0c0256991h
+dd 0fa8e57c9h
+dd 007eba73ch
+dd 04b2ec036h
+dd 0a3cacf89h
+dd 0ad071b64h
+dd 07d19e7f9h
+dd 00c75dadbh
+dd 091117f44h
+dd 0397c0f69h
+dd 002a6e9d7h
+dd 09688dd6eh
+dd 0adda032bh
+dd 01e8f28bdh
+dd 07e05707fh
+dd 0737656c8h
+dd 0c0fa74afh
+dd 0ea1ae337h
+dd 054d792d9h
+dd 0221c21e8h
+dd 025d5ae3eh
+dd 0f28efc88h
+dd 02ab0412fh
+dd 07a7fc0f3h
+dd 01dc97737h
+dd 030d23e8ch
+dd 0a44dc682h
+dd 06203ffdeh
+dd 03b506827h
+dd 08ef1bacdh
+dd 0cacc459ah
+dd 0add62fe9h
+dd 0751fa772h
+dd 0666fbdc5h
+dd 09ad5b4beh
+dd 0ab1594e9h
+dd 0c510ddf7h
+dd 06052b10dh
+dd 0719facbbh
+dd 0ba34e4a3h
+dd 027eafd40h
+dd 0408ceb50h
+dd 075f626bah
+dd 0b065e82ch
+dd 066c98e74h
+dd 0fef99064h
+dd 028dadb01h
+dd 039eddfd4h
+dd 0b4b35f64h
+dd 0e09dcbcdh
+dd 0b1fcd7cch
+dd 0acbcdad0h
+dd 0bd0ffd60h
+dd 089928d16h
+dd 039cd0e27h
+dd 0ec48cae1h
+dd 0b6ed42d2h
+dd 0a025ba95h
+dd 0c97def34h
+dd 02406b239h
+dd 01438ab4ah
+dd 00cfafff6h
+dd 09b8cf1e6h
+dd 088ea79c5h
+dd 0ccd3293ch
+dd 0c88d3515h
+dd 09505cae2h
+dd 0595f7a06h
+dd 0bc44ac98h
+dd 0dfcf2ef9h
+dd 047288f2ah
+dd 0278309c7h
+dd 08dc570f7h
+dd 064712465h
+dd 05bf75623h
+dd 06ce38ee3h
+dd 0bd57bc19h
+dd 0f82c43d1h
+dd 09a3d344ch
+dd 0b0940280h
+dd 0f66d9041h
+dd 0c3b51f21h
+dd 0ca72d313h
+dd 08ccb4986h
+dd 08c90a654h
+dd 03918b212h
+dd 09da48d18h
+dd 00b0226f0h
+dd 0f339ca9dh
+dd 07fad851bh
+dd 09f846fe1h
+dd 0146d4dc7h
+dd 02eb74215h
+dd 04f1ae2e2h
+dd 06412c013h
+dd 08579f51ah
+dd 0669fd615h
+dd 0505b47f0h
+dd 050b21d79h
+dd 065cdc416h
+dd 02e17a36ah
+dd 031776250h
+dd 039f150c0h
+dd 05f139086h
+dd 0f5532d6bh
+dd 082c5a8beh
+dd 0c35d0e77h
+dd 06fe3f1c6h
+dd 03d5b2b53h
+dd 04637515fh
+dd 0d74aa816h
+dd 01592421dh
+dd 05f90b084h
+dd 01b7ea498h
+dd 00576b4c8h
+dd 06bc57ff6h
+dd 096562e86h
+dd 0c7b6ebeah
+dd 080ddd42ch
+dd 0d045237ah
+dd 0312af089h
+dd 0fa6b7d75h
+dd 0d72b53e1h
+dd 0e2a9ae0eh
+dd 0a0de004ah
+dd 0434e4154h
+dd 0b723b7f1h
+dd 0bb89b584h
+dd 0cf23b817h
+dd 030845e88h
+dd 0b3be58c6h
+dd 037da5172h
+dd 0940c6c9ch
+dd 0de7f23d6h
+dd 054c22675h
+dd 0409cbe7ah
+dd 039aa15c8h
+dd 0f859235ch
+dd 08ab8ccd2h
+dd 093352cd7h
+dd 0f5c7bab5h
+dd 080590d50h
+dd 0d6e5d163h
+dd 04bfdf243h
+dd 08ba5e7d4h
+dd 0c0832c68h
+dd 0da472637h
+dd 0b5447889h
+dd 06737f4c8h
+dd 0d95bc952h
+dd 0e1d134b1h
+dd 040f3dcf4h
+dd 01fa91804h
+dd 09834f5d5h
+dd 03baa6089h
+dd 09d959e55h
+dd 0345046c9h
+dd 0387cf892h
+dd 059ad0b03h
+dd 0f3655a53h
+dd 0e5f8772ah
+dd 03ebba3dfh
+dd 07b0efb1ch
+dd 0853e5c74h
+dd 07f10db4ah
+dd 0e643ade0h
+dd 010712d2dh
+dd 081422f1dh
+dd 08304ba2eh
+dd 0e31c74f1h
+dd 0d7332c87h
+dd 0d93930f4h
+dd 0774a97feh
+dd 0de65db5bh
+dd 0cf81aea9h
+dd 01df350d9h
+dd 01dba9d4fh
+dd 0693ac286h
+dd 011f11c09h
+dd 051a758e6h
+dd 07612a984h
+dd 052d595cdh
+dd 041cae628h
+dd 05550f249h
+dd 050b3d463h
+dd 0b44ecd5bh
+dd 01f0130cah
+dd 0843ec580h
+dd 03647bd09h
+dd 0c715abbah
+dd 0915c0a24h
+dd 0a4098dc7h
+dd 0e79956e6h
+dd 02a863fa5h
+dd 0769dab4dh
+dd 0c39f9afah
+dd 0353e6059h
+dd 0ca17c72ah
+dd 0d504b646h
+dd 087733f6ch
+dd 0976d038bh
+dd 0e856e6f2h
+dd 0faf93431h
+dd 066c8e407h
+dd 06b4cfe5fh
+dd 0d4f7660bh
+dd 0aec60ef7h
+dd 0654fa370h
+dd 06499895bh
+dd 0c8756dfah
+dd 02b340112h
+dd 09e07976ah
+dd 0b2175e26h
+dd 0505ac668h
+dd 035ec89ffh
+dd 0fe00d41dh
+dd 0d3632444h
+dd 0c75b2528h
+dd 045c0590bh
+dd 09c408431h
+dd 0939a1422h
+dd 031e7c446h
+dd 0dd55f079h
+dd 07e3af637h
+dd 02f6b757eh
+dd 0e0655921h
+dd 00e83d650h
+dd 02267d7ech
+dd 04064cf7ch
+dd 06a06357fh
+dd 03db2e56ah
+dd 07bd9b3f1h
+dd 0f4b80fc1h
+dd 080a1c81dh
+dd 050de0f56h
+dd 0d5b209c3h
+dd 0a345f067h
+dd 0825b9b1ch
+dd 04ed0585ah
+dd 0e6cb0516h
+dd 0e7469db3h
+dd 01c7773fch
+dd 04ead7cb2h
+dd 03c101eb1h
+dd 0c732f8fch
+dd 037f745a4h
+dd 026417063h
+dd 070df2b54h
+dd 09649134ah
+dd 08ab4bbdfh
+dd 08a0c6bd4h
+dd 0f0048565h
+dd 0cf733affh
+dd 04676a3d6h
+dd 02dd86bc7h
+dd 08b0e597fh
+dd 0dc8e1645h
+dd 01e0f98bch
+dd 025bd4cb7h
+dd 0fd1cd58eh
+dd 05065e842h
+dd 0ca3d8d09h
+dd 0fc67c6a1h
+dd 0fef21c4ah
+dd 0c604ac6dh
+dd 01a31060ch
+dd 06beec556h
+dd 037ef2faeh
+dd 034ed7730h
+dd 0583c2bedh
+dd 0bd964770h
+dd 0d79d4b8dh
+dd 04137e958h
+dd 0f64f953dh
+dd 0b71425ddh
+dd 074d9d64bh
+dd 0c5f1e0d6h
+dd 05fa238cdh
+dd 0455731a5h
+dd 0f2052598h
+dd 07187c716h
+dd 042f43bf0h
+dd 09ec43384h
+dd 0a7132b82h
+dd 087a2525eh
+dd 0c47c833eh
+dd 0006324f5h
+dd 02a5c2362h
+dd 07f918642h
+dd 0914b6992h
+dd 08b4249c1h
+dd 05072e4ceh
+dd 049ca7310h
+dd 0e026feadh
+dd 0bfb1b739h
+dd 064b28009h
+dd 0790f0e46h
+dd 021c247b7h
+dd 0130e28d2h
+dd 07faeba6eh
+dd 0e14f5ebfh
+dd 0ae063ad8h
+dd 046716015h
+dd 0e5ae809fh
+dd 0a11e3d9dh
+dd 07359c73ah
+dd 02454e1bch
+dd 028adafd3h
+dd 05903b060h
+dd 0a2f6b115h
+dd 081fc0d86h
+dd 0d8ce3a3ah
+dd 0f40ce617h
+dd 00be18d62h
+dd 018cf2662h
+dd 04bc9aa94h
+dd 0239ee804h
+dd 09eaf47d6h
+dd 0a0c1fa34h
+dd 0587a1082h
+dd 08960f05fh
+dd 0389a89edh
+dd 027c75fa9h
+dd 0e1f0d5feh
+dd 0fbb66dfeh
+dd 0dac05c49h
+dd 0659c6da3h
+dd 0d386e39ah
+dd 0a6911709h
+dd 0dd1996cah
+dd 01b68b1d1h
+dd 09dde3e28h
+dd 059426854h
+dd 003b40adch
+dd 023d8f2abh
+dd 0075470f2h
+dd 064728548h
+dd 06d66495ah
+dd 0ccc4738dh
+dd 03bc2d6c6h
+dd 0c12f4b92h
+dd 00edbe8bdh
+dd 0a502e36bh
+dd 0ee8cd313h
+dd 05b5a9cabh
+dd 01d153f6eh
+dd 0c7ba8ec6h
+dd 0094cb3cah
+dd 040530bddh
+dd 0209b59d7h
+dd 0fde5055ch
+dd 0bd5e9758h
+dd 009983b25h
+dd 065400490h
+dd 09a0b4aa3h
+dd 031fa987bh
+dd 0cad000bah
+dd 017faa6bdh
+dd 0b17e9397h
+dd 0a004ab43h
+dd 0a31f5ea8h
+dd 020c732e7h
+dd 059361143h
+dd 08c1ce280h
+dd 08c3d59c1h
+dd 0b0db0453h
+dd 00775b3cdh
+dd 0485f8999h
+dd 0478001c1h
+dd 0ed54abeah
+dd 0766d32d5h
+dd 09c1a37c1h
+dd 0bb63d2cfh
+dd 0c0ddecf9h
+dd 027b48123h
+dd 097b878ach
+dd 0c41bbd46h
+dd 0fa5d7f0bh
+dd 054c35ae5h
+dd 0e1298bd9h
+dd 02532b57fh
+dd 01dfdf7adh
+dd 06c2ff4e7h
+dd 0fa582be4h
+dd 0858fba31h
+dd 09e043deah
+dd 02bc5faach
+dd 0c18101a5h
+dd 0e60d6aaeh
+dd 02211cf16h
+dd 09ff9afa5h
+dd 0c102119dh
+dd 0a31cf110h
+dd 00580fbabh
+dd 03f351199h
+dd 0610243bbh
+dd 00d40c181h
+dd 043031ce0h
+dd 0462e8b03h
+dd 09d9f913fh
+dd 084c8e1c0h
+dd 0fa7262deh
+dd 0a26e5dc2h
+dd 0b78fe172h
+dd 050b1b888h
+dd 062cd858eh
+dd 07ad3e1f0h
+dd 0e21cef96h
+dd 093812ce3h
+dd 02dff0110h
+dd 056ec6499h
+dd 070af8abeh
+dd 0ea6f411ah
+dd 02a2bb91eh
+dd 0128757a3h
+dd 0b3ca0495h
+dd 0ba75e977h
+dd 08c7491c4h
+dd 066c48030h
+dd 0028a41c8h
+dd 098794df4h
+dd 0cc1b0577h
+dd 0826664ffh
+dd 07feb8260h
+dd 0f3a88628h
+dd 009523188h
+dd 0b0fab9a7h
+dd 0632b6c6fh
+dd 03446eb2ah
+dd 0a2119080h
+dd 02984f42dh
+dd 0a6f839cbh
+dd 0b19c876bh
+dd 01876b4a7h
+dd 06d66b809h
+dd 010b26a70h
+dd 09c686408h
+dd 0d03fcad1h
+dd 084e5c169h
+dd 06e521252h
+dd 0efc5a9e1h
+dd 08bd88556h
+dd 0bcbd8253h
+dd 05bbcd5f8h
+dd 09ded8d8eh
+dd 0c593ccc8h
+dd 0f026e2e1h
+dd 0a97dc1d2h
+dd 04c10cd23h
+dd 02eff6243h
+dd 0c5a9a788h
+dd 073882e8ah
+dd 0741d58d0h
+dd 084801dfah
+dd 0959382a9h
+dd 0e882a331h
+dd 0baac23f4h
+dd 03e6f43bdh
+dd 01495ed00h
+dd 0a86e4d96h
+dd 0cd30e545h
+dd 02d7f067bh
+dd 063fa58e7h
+dd 0737a7682h
+dd 059d9e5a5h
+dd 038daad83h
+dd 0705b81cah
+dd 090b42ecah
+dd 059a79d87h
+dd 01663f33ah
+dd 0438e391ch
+dd 0033303b7h
+dd 00dc677deh
+dd 06830e8a0h
+dd 077c072a0h
+dd 0ccad38d0h
+dd 0f3a69a97h
+dd 00839f54fh
+dd 043b0cd1fh
+dd 013c7cc83h
+dd 0838abb38h
+dd 0beb85c18h
+dd 0a14d5932h
+dd 0731677b5h
+dd 09b1c379bh
+dd 00c4d5571h
+dd 0e0523435h
+dd 02f9217ebh
+dd 0e510f686h
+dd 0c5069721h
+dd 0796c51c2h
+dd 0a5e5f1d9h
+dd 096dd714eh
+dd 081d0ac19h
+dd 0b78f9ecch
+dd 02da5dc3ch
+dd 0b7f0eaa8h
+dd 083887a67h
+dd 0ebcfaf29h
+dd 018bf65beh
+dd 00e908d57h
+dd 0b0201fceh
+dd 0954b46c0h
+dd 065b3a7d8h
+dd 0f8a53c15h
+dd 040448f33h
+dd 023b15f72h
+dd 031fe6602h
+dd 081b6af20h
+dd 09ae7d36ah
+dd 05ade0f4bh
+dd 0efce82d4h
+dd 00db2ebfbh
+dd 05fe2a09bh
+dd 025025eadh
+dd 0c35aa5b8h
+dd 0933682a1h
+dd 0625ec01eh
+dd 07fc10b5fh
+dd 0c11553d4h
+dd 07c4f1d58h
+dd 02efcd071h
+dd 03682b27ah
+dd 03c475820h
+dd 0ad8c7759h
+dd 0c45012a3h
+dd 0704beef5h
+dd 05ef28201h
+dd 04c223d09h
+dd 024a6e2c0h
+dd 081a6f1deh
+dd 07724acc3h
+dd 0dc854468h
+dd 033678b24h
+dd 0d0c45421h
+dd 045541248h
+dd 0536dccdfh
+dd 0668e6498h
+dd 070ff47adh
+dd 0a00ede98h
+dd 063665b70h
+dd 0f5825c58h
+dd 05077fc41h
+dd 0ac02930fh
+dd 057b14dd8h
+dd 0afb37354h
+dd 0e175fc47h
+dd 09fad70fdh
+dd 0d31aacf8h
+dd 072d4442dh
+dd 0acebefd2h
+dd 08cbb12c0h
+dd 09520a6ach
+dd 0b69d90b2h
+dd 019cdf071h
+dd 00826f210h
+dd 053c52b7dh
+dd 0a42c426ah
+dd 05ea08c5dh
+dd 047242cbeh
+dd 0bfe0c7c6h
+dd 084d997a4h
+dd 01ad847c6h
+dd 03deeedcbh
+dd 02cfe2ff3h
+dd 040e66261h
+dd 00096f641h
+dd 038432491h
+dd 097996095h
+dd 09683238dh
+dd 084a8e766h
+dd 0c7db2cb1h
+dd 075161647h
+dd 057f7ec51h
+dd 08d03823ch
+dd 0db211403h
+dd 0ea93efe2h
+dd 0df7388a6h
+dd 0250c9e03h
+dd 01c327255h
+dd 08d72f19dh
+dd 0c057ede6h
+dd 0f239a057h
+dd 0e23b1be3h
+dd 0d25e7155h
+dd 0a500d659h
+dd 034f7a73bh
+dd 0daf729a4h
+dd 0d3da7dffh
+dd 0d987e21ch
+dd 0418530bdh
+dd 02403b2a6h
+dd 041c7d41fh
+dd 03b414492h
+dd 05e3214d9h
+dd 0c3106a48h
+dd 0f091a1abh
+dd 07925cd09h
+dd 0d386bd6fh
+dd 0eaabeaf9h
+dd 01fa1c6cbh
+dd 02eff7ec9h
+dd 0d5494960h
+dd 0008a2073h
+dd 0640d64c5h
+dd 03018fd75h
+dd 0b24128eah
+dd 07dacfc3eh
+dd 087e62b3fh
+dd 0a5b53797h
+dd 023b74678h
+dd 00fd9b5feh
+dd 07e349bbfh
+dd 0889b6294h
+dd 093d90b0eh
+dd 0e6a0a3eah
+dd 02f8d7592h
+dd 02ca9b406h
+dd 091d231eeh
+dd 09e6991cfh
+dd 032a7b539h
+dd 00a663bb6h
+dd 0a1eaffc5h
+dd 068368390h
+dd 07a5d99d1h
+dd 0260c0384h
+dd 049cab162h
+dd 04451fa7eh
+dd 0778b28e7h
+dd 076a73062h
+dd 0dba7e61bh
+dd 00ebca0d2h
+dd 045d836fbh
+dd 0ebb41f26h
+dd 034c48f8fh
+dd 0b43f83fbh
+dd 0434547c7h
+dd 0886a6cdah
+dd 04cbb5916h
+dd 01da19491h
+dd 0f5541107h
+dd 0581fd582h
+dd 051f7a263h
+dd 023a8f746h
+dd 044449704h
+dd 0dcdc0c36h
+dd 032e15274h
+dd 04384a9c9h
+dd 0abd33ad0h
+dd 0845cdc30h
+dd 0738192d3h
+dd 0e1e6b638h
+dd 01e2cda0ch
+dd 0bdd2d94ch
+dd 0b4adcf59h
+dd 05ef373bfh
+dd 0e3a2d1feh
+dd 0bd7f7f7ch
+dd 0a329519bh
+dd 07b870f78h
+dd 056f00421h
+dd 0a4c3bd90h
+dd 0f41be79eh
+dd 005338dd2h
+dd 0e20e55adh
+dd 067408f3ch
+dd 0e5d70dfah
+dd 045f125d6h
+dd 09ed65c3bh
+dd 068b55d64h
+dd 083c6565eh
+dd 0241f1ffbh
+dd 0c372fe2bh
+dd 00928db0ch
+dd 05b910494h
+dd 024660d12h
+dd 00953e5cfh
+dd 06583970bh
+dd 04654a2b4h
+dd 067876eb2h
+dd 0a8e6c683h
+dd 046cbbaaeh
+dd 05fd09ed7h
+dd 06872d0d4h
+dd 0f1fab31bh
+dd 00fbf8ddeh
+dd 052a17b2eh
+dd 005ffc0abh
+dd 0c84fa56ch
+dd 0dcd5ac51h
+dd 07186a165h
+dd 03af919a6h
+dd 0c13545a8h
+dd 09be5eda0h
+dd 04e5ad56bh
+dd 0b88fba5ah
+dd 0e790cc01h
+dd 0cda3eec3h
+dd 09b3e500fh
+dd 05d7d69adh
+dd 0cfca2160h
+dd 0ec0ddd70h
+dd 07f61d711h
+dd 04a86e619h
+dd 0b42a256bh
+dd 0a3db2068h
+dd 0553db59dh
+dd 0b2f40811h
+dd 07eaeae71h
+dd 0faa4f9dfh
+dd 0b9e024a7h
+dd 03208e5efh
+dd 0284dea91h
+dd 039d3024fh
+dd 02b21e015h
+dd 00755722ch
+dd 0ac17e83dh
+dd 036d8cb4fh
+dd 0904b48f9h
+dd 031bf9eebh
+dd 04d0ed9cfh
+dd 071a0d6d3h
+dd 0c327ff3dh
+dd 08e8591b8h
+dd 0ebaeda99h
+dd 08e52c53dh
+dd 096a1feb2h
+dd 008ae2427h
+dd 0a745586ch
+dd 0fcaa4f18h
+dd 0106f4444h
+dd 07d53d1e9h
+dd 0013193b0h
+dd 052e32992h
+dd 0826c424fh
+dd 050781498h
+dd 0fbc022cah
+dd 09040414dh
+dd 0f9c81a98h
+dd 0af34d0b8h
+dd 078a28a6bh
+dd 0b7c70865h
+dd 073fe9362h
+dd 01756f166h
+dd 083cf7906h
+dd 07d25586ah
+dd 051e2ea4dh
+dd 06edc196eh
+dd 047b99d89h
+dd 0ce1c26cbh
+dd 029398d9ch
+dd 0e497a064h
+dd 0abf6ac38h
+dd 0b0eebe07h
+dd 0047fa19bh
+dd 021fa9768h
+dd 04dcb4514h
+dd 01af5796dh
+dd 014126683h
+dd 0b48c2f81h
+dd 0755aa173h
+dd 024df9e5dh
+dd 0b2660b49h
+dd 082c303f5h
+dd 0bc927b9ah
+dd 0d9b46783h
+dd 0a52ef48dh
+dd 012c80d79h
+dd 09711a5e8h
+dd 0e8c39e1fh
+dd 051d5e90fh
+dd 0ebcbfa29h
+dd 0a731a1aah
+dd 08497cec0h
+dd 012240b3fh
+dd 0186dd563h
+dd 0ef7acae2h
+dd 05065f635h
+dd 0c19590e4h
+dd 0f131858dh
+dd 096a65c81h
+dd 0281bf318h
+dd 0bf02a139h
+dd 04132bd96h
+dd 05ff6791bh
+dd 0c00f75b5h
+dd 0aab1417eh
+dd 0f6e0c7e7h
+dd 08b844a29h
+dd 07b87900dh
+dd 01529c487h
+dd 06e9e83d5h
+dd 0d95e6300h
+dd 0918d1bc5h
+dd 02608e634h
+dd 036250808h
+dd 0d6ee5035h
+dd 07e128bc7h
+dd 0c38e422fh
+dd 00e8395afh
+dd 06cfbc8b0h
+dd 089e9b5c0h
+dd 020005db4h
+dd 0e06664ceh
+dd 0a24b248eh
+dd 06345ef17h
+dd 037b0742ch
+dd 09e44158dh
+dd 09dd86aa9h
+dd 0bceb7206h
+dd 0f437a0f5h
+dd 0d22c3b63h
+dd 06acbd182h
+dd 021abe7eah
+dd 0946315feh
+dd 06d3223b2h
+dd 09271f36bh
+dd 0ac349934h
+dd 095497e74h
+dd 092f9f3ffh
+dd 099d516e9h
+dd 0727b9195h
+dd 0ad10e8d3h
+dd 0a5314270h
+dd 0f0d21e04h
+dd 05fa8cc32h
+dd 06316eb2ch
+dd 0c7e7d380h
+dd 0a6331d90h
+dd 0159ba918h
+dd 0440cb521h
+dd 0165a5e29h
+dd 04751abceh
+dd 0346e3b50h
+dd 0df4f2a73h
+dd 08486b3b6h
+dd 0ff7f31a1h
+dd 0ef9264b7h
+dd 0a4ede788h
+dd 05de5cd5ch
+dd 040f24874h
+dd 06b43d312h
+dd 07723156ah
+dd 048040bffh
+dd 0954b128bh
+dd 0931a3255h
+dd 0ef2942edh
+dd 0465aa07eh
+dd 053b52e99h
+dd 078722d5fh
+dd 08f25dd90h
+dd 04619cd6eh
+dd 0701c97abh
+dd 0af1f343dh
+dd 065548549h
+dd 0cfc87319h
+dd 0886097b5h
+dd 00ee04066h
+dd 0f3d95d15h
+dd 0a8854267h
+dd 0e1150572h
+dd 094fcdf5fh
+dd 047333a0dh
+dd 0ffe5bf1dh
+dd 07ef37970h
+dd 05206478ch
+dd 0e3c1d646h
+dd 0b4e10214h
+dd 095762105h
+dd 03950e467h
+dd 060a93b68h
+dd 04eddca97h
+dd 001456659h
+dd 0a6c22647h
+dd 08b350176h
+dd 0b9b477ech
+dd 0a012a966h
+dd 0867d158fh
+dd 0ba21e2a0h
+dd 023bda43ah
+dd 023937e54h
+dd 02a7794aah
+dd 00caca61bh
+dd 06faad2beh
+dd 0945e948ah
+dd 075c7a5eeh
+dd 0896ac6f2h
+dd 02fdeeb89h
+dd 01ce7b4d7h
+dd 0b38b1c6ah
+dd 0012239b9h
+dd 01f19a2c7h
+dd 09ac180f1h
+dd 0786d44c3h
+dd 0c8615f7fh
+dd 0da51a2c6h
+dd 07f507ca2h
+dd 0a1339132h
+dd 09315950ch
+dd 06aa54c34h
+dd 098ea9d32h
+dd 097291173h
+dd 0a447bc32h
+dd 02782b1beh
+dd 0af7a34d3h
+dd 0b41a481ch
+dd 0696e6062h
+dd 06ba28de1h
+dd 025c04382h
+dd 066b005feh
+dd 090c5b0c1h
+dd 0ba07c1d8h
+dd 06a8c5b23h
+dd 094e84fach
+dd 00b8112a0h
+dd 0dee67054h
+dd 0ae17126fh
+dd 0d19a09cbh
+dd 05e65032bh
+dd 017b4f091h
+dd 0f41a1ac2h
+dd 00ec5a8b4h
+dd 0d28e98a5h
+dd 01efa037fh
+dd 0658a65a0h
+dd 0b3c43255h
+dd 0ecfcdc1fh
+dd 0261cf417h
+dd 0fb9eb2d6h
+dd 031f31134h
+dd 02940771bh
+dd 094d0e22eh
+dd 0abda5e9fh
+dd 0f3a944c6h
+dd 0b1f74cdch
+dd 0484730b6h
+dd 0cacf64b0h
+dd 0eedbe489h
+dd 05e3a56b1h
+dd 0a8bc70d3h
+dd 0d817cbe6h
+dd 087cccabfh
+dd 050029476h
+dd 0186a45f2h
+dd 0e473183ch
+dd 00e7d3d0ah
+dd 0b95e14ebh
+dd 0fb488ae8h
+dd 090f21394h
+dd 0004e6e62h
+dd 03ba134b2h
+dd 07993f4cbh
+dd 0ee0c60cfh
+dd 0b89188c7h
+dd 0808e9f79h
+dd 004e6f4dbh
+dd 062088689h
+dd 0db77fb04h
+dd 013bfb10fh
+dd 006a91a3bh
+dd 0459aafadh
+dd 0f76b5248h
+dd 0b3ffd809h
+dd 0811575ceh
+dd 08d5be300h
+dd 029e64905h
+dd 016c33c6dh
+dd 00a308f3dh
+dd 0b590d7dch
+dd 016a31cdeh
+dd 0315f7d73h
+dd 046261b17h
+dd 05da89847h
+dd 050f636eah
+dd 0989088cfh
+dd 0b865ece4h
+dd 0d3374694h
+dd 003819c01h
+dd 01cc2bd5fh
+dd 077be1ea6h
+dd 0a595ea74h
+dd 0d1b88e25h
+dd 0d6c4c8f8h
+dd 066dc1e9ah
+dd 009b31891h
+dd 0b5e99a63h
+dd 03507c4d0h
+dd 032ecddc6h
+dd 0756ad236h
+dd 0998c0186h
+dd 0df66bfe8h
+dd 0a0db45f3h
+dd 0a3700678h
+dd 0fd604ee3h
+dd 0bad43a73h
+dd 0544df02eh
+dd 01fc4b9b1h
+dd 0c2a1cc84h
+dd 09b2709aah
+dd 0417d7934h
+dd 0704c3db9h
+dd 070e99c91h
+dd 05eecd6d0h
+dd 095cc70dch
+dd 080469fd8h
+dd 033fd8c45h
+dd 04b7857c2h
+dd 06493ec29h
+dd 01774718eh
+dd 0df32976dh
+dd 0408465a3h
+dd 0c6b57485h
+dd 08cbb8ea5h
+dd 0ea4dbc81h
+dd 06366391fh
+dd 098fd1d36h
+dd 0465ab320h
+dd 04c7e6a88h
+dd 0c5a1f069h
+dd 05fdeb7d0h
+dd 06187c0bbh
+dd 091f9cea1h
+dd 0a28e4a08h
+dd 05b8cf64dh
+dd 02e4b4bb8h
+dd 07017bfd4h
+dd 0c7f7b494h
+dd 052a70699h
+dd 01f7f8c87h
+dd 05e5a5b38h
+dd 0877c1499h
+dd 0354ac597h
+dd 0d457cbbah
+dd 033975ff8h
+dd 03fc8d2b5h
+dd 0f5f90544h
+dd 0b5600202h
+dd 056850a5ch
+dd 079ad23b6h
+dd 0a3a6428dh
+dd 00658ae35h
+dd 00da6282ch
+dd 0e80e20a0h
+dd 0ce0e9eedh
+dd 02a44e0b7h
+dd 02b0edf1dh
+dd 05decce26h
+dd 02c7b39dah
+dd 0a2d973b0h
+dd 0bd6b859dh
+dd 0a85ce306h
+dd 03e199662h
+dd 018ee2d29h
+dd 07abda9f5h
+dd 03fe72fb6h
+dd 05f77a895h
+dd 0d00ffc1eh
+dd 0f48a33f3h
+dd 078becc06h
+dd 069f6b3afh
+dd 016fef7d9h
+dd 063edbe09h
+dd 03ebbf0a2h
+dd 02fc5f502h
+dd 050e6ae24h
+dd 09b0315f7h
+dd 0896d563fh
+dd 09b4275d5h
+dd 07d20409dh
+dd 0e97d9ca8h
+dd 0f05751deh
+dd 0ae2590d7h
+dd 0b6c45942h
+dd 01762e861h
+dd 073322e6dh
+dd 09dc9b557h
+dd 002db8ea1h
+dd 0be14f3f5h
+dd 05fbf58fah
+dd 0bb951e58h
+dd 0037c9604h
+dd 003d98791h
+dd 0c34bf3dah
+dd 0f0498ea1h
+dd 0633997b7h
+dd 07f968429h
+dd 04ff93273h
+dd 0b5a8e557h
+dd 0f8a6e0e6h
+dd 09fc308bch
+dd 0d83ae7c9h
+dd 0d813a10eh
+dd 006dbcfa9h
+dd 0bbeba1fdh
+dd 0f9e9301ah
+dd 09a02a969h
+dd 02033b444h
+dd 0932d1804h
+dd 072092200h
+dd 0c584f9a7h
+dd 08aaeeeb4h
+dd 017857111h
+dd 04008e706h
+dd 0e51f09b3h
+dd 01acb9c09h
+dd 08cf83dach
+dd 0a30cbda8h
+dd 0c0bb02a2h
+dd 0f19c9719h
+dd 085c35686h
+dd 07bbf9a13h
+dd 0a48e29aeh
+dd 0ae8194abh
+dd 0382c8ee0h
+dd 0ab7d9627h
+dd 04c050811h
+dd 0c5d3a01bh
+dd 023b90f8ah
+dd 082f6549ch
+dd 0463a365fh
+dd 0344b56ech
+dd 018c9538dh
+dd 04296f347h
+dd 04387d63fh
+dd 0cc167f19h
+dd 01cd1032bh
+dd 0534d57cch
+dd 0a31a2d8bh
+dd 0b0c503d4h
+dd 0a6d321ceh
+dd 0be8ac857h
+dd 02bb1d656h
+dd 0c89a4f20h
+dd 038c344fdh
+dd 0e67d4118h
+dd 0bff08255h
+dd 04fd0a97eh
+dd 05de6de7bh
+dd 0b5f5e39fh
+dd 082dd4ea1h
+dd 0baf60183h
+dd 07a73bc24h
+dd 0a8716e5ch
+dd 0c27f0ddbh
+dd 0996e3b24h
+dd 013f14139h
+dd 07436aacah
+dd 086b6251bh
+dd 0339a21fbh
+dd 05727121bh
+dd 023822927h
+dd 0adb8cb44h
+dd 0f96e4eedh
+dd 02d8c33aeh
+dd 0ee31d2a8h
+dd 0f3d8c29bh
+dd 0274dcdceh
+dd 00899bae8h
+dd 04463109ah
+dd 04771f2bdh
+dd 00970540ch
+dd 03368b146h
+dd 090069bd8h
+dd 0402f744bh
+dd 0d54c3d73h
+dd 0776fbb1ah
+dd 0df403f80h
+dd 0bb09d9f8h
+dd 021a9a68fh
+dd 031659608h
+dd 0743109dfh
+dd 0c892eec7h
+dd 02d617242h
+dd 042829f14h
+dd 0c37ec0f8h
+dd 081972599h
+dd 0c0f9f38bh
+dd 079b6d609h
+dd 08f96a119h
+dd 07e195b73h
+dd 03f918ca9h
+dd 0568a203eh
+dd 00bb4b259h
+dd 0ed12d20eh
+dd 02ad092fch
+dd 041b4b1e9h
+dd 03cfc2914h
+dd 08cb36f8ah
+dd 03ed73562h
+dd 0a8acf582h
+dd 00a49bb9eh
+dd 005ed8f71h
+dd 0dc5c35eeh
+dd 08ebc4bf3h
+dd 0ac74decfh
+dd 0707a265ch
+dd 07f6cb630h
+dd 08157659ah
+dd 06842351dh
+dd 001bfded0h
+dd 048897971h
+dd 007b74245h
+dd 0cf2ec066h
+dd 0113e7649h
+dd 00b172fa0h
+dd 0e90ef3bch
+dd 0ecbf9bbah
+dd 0185d916dh
+dd 04f48ddcah
+dd 010bdad8eh
+dd 018384691h
+dd 04fd3ade8h
+dd 0300c6255h
+dd 0a57fd414h
+dd 05fa2c263h
+dd 0f4f21372h
+dd 016a5966dh
+dd 0d14e0ff1h
+dd 0acae2598h
+dd 08a9bcae9h
+dd 0aae2b04bh
+dd 051887f95h
+dd 029de411ah
+dd 06c9e03a0h
+dd 09333c63eh
+dd 08aacb666h
+dd 083d99229h
+dd 0a4ca732dh
+dd 0c206aeb0h
+dd 0158900a4h
+dd 00d05a72bh
+dd 0e6019e6dh
+dd 06f318f90h
+dd 0bbda173fh
+dd 0e3b0868ch
+dd 0f8ebfc89h
+dd 00743dabah
+dd 06f9f6e0fh
+dd 09269f307h
+dd 00e52821ah
+dd 0a9118f72h
+dd 0b7a98a41h
+dd 0d7517fc5h
+dd 0d01cfacfh
+dd 002d9f6f9h
+dd 09a3222dfh
+dd 09382c44ah
+dd 0236e3237h
+dd 087c139bbh
+dd 0fe6d08c9h
+dd 0f8e44713h
+dd 0cb8ee87ah
+dd 07fa080c2h
+dd 00a6b0a7fh
+dd 07df3cf57h
+dd 09d62fd2dh
+dd 04d448a5ah
+dd 0fbca4b93h
+dd 03a6a3b59h
+dd 0cac1629ch
+dd 0dcb2cd0eh
+dd 082fdc2b4h
+dd 0abc0192ch
+dd 079f0ac26h
+dd 04110aa71h
+dd 09525eb8ah
+dd 004f790edh
+dd 0c5f5687dh
+dd 0d5294462h
+dd 047d1d0efh
+dd 0792f68c8h
+dd 0c09c7efeh
+dd 070c9e6aeh
+dd 01e23e933h
+dd 04ddf2047h
+dd 028643f6ah
+dd 06f673b46h
+dd 0e60e9671h
+dd 074d984c6h
+dd 0d2a6019fh
+dd 0c7be8c72h
+dd 015d7202eh
+dd 0114a2a17h
+dd 01ead5341h
+dd 0536ef3b1h
+dd 018f877c2h
+dd 0396dac94h
+dd 0d8912f50h
+dd 0eeb12830h
+dd 047033948h
+dd 0afb5a845h
+dd 05f09b82ch
+dd 04abe3c06h
+dd 03b3ba507h
+dd 0808cd0cfh
+dd 003986781h
+dd 06a72a49fh
+dd 0c8f482a6h
+dd 0bfe8904dh
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M023067221D.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M023067221D.inc
new file mode 100644
index 0000000..39c2a8c
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M023067221D.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 00000021dh ; Patch ID
+dd 008122013h ; DATE
+dd 000030672h ; CPUID
+dd 0a565e78ch ; Checksum
+dd 000000001h ; Loader Version
+dd 000000002h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 00000021dh
+dd 000000000h
+dd 000000000h
+dd 020130812h
+dd 000003211h
+dd 000000001h
+dd 000030672h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0bdaff5c7h
+dd 0e2bd1407h
+dd 0dc3c2e66h
+dd 04e975879h
+dd 0fb634d15h
+dd 0116a8ea1h
+dd 0567041f1h
+dd 0aad1635fh
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 07c23609bh
+dd 0c2d1f56dh
+dd 007ed1e5fh
+dd 0e5620415h
+dd 049291b5bh
+dd 0875ba2e1h
+dd 06fd07e10h
+dd 0f1e105d1h
+dd 015fa6c9ch
+dd 0ae3ccf71h
+dd 09e522f4ch
+dd 015856a66h
+dd 0dd7b1791h
+dd 0c60ee349h
+dd 0f6da5718h
+dd 0771fc66fh
+dd 02d372229h
+dd 0a43962d8h
+dd 08fef5172h
+dd 02e485032h
+dd 0146f65cah
+dd 0af2ce569h
+dd 00f866e68h
+dd 03bc3baa6h
+dd 03a2f704ch
+dd 0b82708d3h
+dd 036555dc9h
+dd 0a941591ch
+dd 028d5d691h
+dd 016bfa496h
+dd 0e5746730h
+dd 0fd084f32h
+dd 0fcc0a027h
+dd 091c6c84bh
+dd 01c50bacch
+dd 0418c5040h
+dd 0cb7c0d60h
+dd 01bfb2d7ch
+dd 0870a7038h
+dd 07e0aae2ah
+dd 0166004d2h
+dd 0ff0de02fh
+dd 0e55dff35h
+dd 0edfac823h
+dd 0baca17c0h
+dd 0d2f8b5c0h
+dd 05d4a237ch
+dd 0fa5655aeh
+dd 0112835dah
+dd 0a93c24f6h
+dd 0446faa2bh
+dd 025c7ef33h
+dd 09ef0ec03h
+dd 01bcda829h
+dd 0a3f014e8h
+dd 0573802f7h
+dd 06528efeah
+dd 088f4a6abh
+dd 058b7af37h
+dd 070e15d25h
+dd 0f9c451fdh
+dd 084b1bf93h
+dd 05b404d92h
+dd 09bc15c8fh
+dd 012ed25efh
+dd 04ef89446h
+dd 01733bc6dh
+dd 0fbfaaa14h
+dd 01cd615b8h
+dd 0687ca4dch
+dd 0dcf43db1h
+dd 0a7c89436h
+dd 065a29bf0h
+dd 076286bb8h
+dd 0acc1a0dch
+dd 044ca0e5bh
+dd 0678cac41h
+dd 02c5121a5h
+dd 0e0a8cbcbh
+dd 0b7fb6623h
+dd 077175b7ch
+dd 09d9a7037h
+dd 02a52142ah
+dd 093333192h
+dd 065d872e9h
+dd 0300698a0h
+dd 0a9ebbd95h
+dd 01dd4dd24h
+dd 097e353d0h
+dd 06ef84ed2h
+dd 09acc7383h
+dd 053e2ac65h
+dd 0a0edd7ceh
+dd 0e1c94139h
+dd 089a10fcch
+dd 08670e782h
+dd 0faf4c336h
+dd 00fc474deh
+dd 0fb6ef3b7h
+dd 081c65489h
+dd 01e7560b1h
+dd 056b65dc3h
+dd 078808b0ch
+dd 09e328e74h
+dd 060f66beah
+dd 00e69aea8h
+dd 0d0b82c44h
+dd 0fa27c93bh
+dd 0784d8455h
+dd 0af6f4b01h
+dd 06b59e568h
+dd 0545d0627h
+dd 0fdeaad9dh
+dd 00d86dafah
+dd 019475f41h
+dd 010ee3f2ah
+dd 027997944h
+dd 036090332h
+dd 0c5c06324h
+dd 0de126cf4h
+dd 05f01cd93h
+dd 088eb4c49h
+dd 00aa01751h
+dd 0649126feh
+dd 0d74b2192h
+dd 0794497a1h
+dd 026114c0ch
+dd 03a22ee80h
+dd 02c0af5ddh
+dd 055639e57h
+dd 07144b6e4h
+dd 07969b969h
+dd 00ff3bdc5h
+dd 0471483b0h
+dd 0104206f6h
+dd 02aa02a6ch
+dd 0a73412f3h
+dd 07f1c2319h
+dd 05d8d74b4h
+dd 08b052a65h
+dd 075440873h
+dd 02a6894a9h
+dd 0863f85f4h
+dd 0865b48eah
+dd 0e6875b9eh
+dd 02d9464eeh
+dd 0a5dc508dh
+dd 0819a5cc3h
+dd 04fa8e809h
+dd 0ae376635h
+dd 0bb38baa6h
+dd 0954dddb7h
+dd 06d996e80h
+dd 014b25f59h
+dd 0912823dfh
+dd 0dbbb400bh
+dd 069aa5295h
+dd 04ad216f5h
+dd 03ceb137bh
+dd 074990a74h
+dd 0206b4420h
+dd 0292875ech
+dd 073bae8cfh
+dd 0e5bb4836h
+dd 0175e3684h
+dd 01d5c6c8fh
+dd 009b96d0dh
+dd 06e2ca086h
+dd 04fdc0cb5h
+dd 048f0f3cdh
+dd 09eb5af6ch
+dd 0b668ebeah
+dd 0c39481e9h
+dd 0e693c108h
+dd 0bac28886h
+dd 036255be2h
+dd 01680b24bh
+dd 0cc33765dh
+dd 0fe24cb3eh
+dd 0b3a83d7bh
+dd 0a28848e4h
+dd 042dbca65h
+dd 091e099e6h
+dd 050d70bc6h
+dd 0d8a1210ah
+dd 06163e1d2h
+dd 0e9d390eeh
+dd 0f51916aah
+dd 0f172448fh
+dd 000457b69h
+dd 08d6ef3d3h
+dd 0140b7510h
+dd 0142b8929h
+dd 01cba76a4h
+dd 0f17080c1h
+dd 0272b17ech
+dd 056c59fb0h
+dd 03eb8b122h
+dd 00c6e5341h
+dd 0d6aa8efch
+dd 0002cb3f9h
+dd 0f57275cch
+dd 04728d1f6h
+dd 0bb4e8f26h
+dd 0eff592cfh
+dd 0680f6ea5h
+dd 0bea4b7beh
+dd 03c099a39h
+dd 0855f3b86h
+dd 05710a9d6h
+dd 0309fa596h
+dd 06beb4892h
+dd 0ad14c3fbh
+dd 00cf78bc4h
+dd 04cc3830bh
+dd 0bb3122dfh
+dd 05b2c37bdh
+dd 046e061fbh
+dd 0c46c40dah
+dd 02efc979eh
+dd 0a441d2b3h
+dd 069b88dfeh
+dd 09da02301h
+dd 0a4c6d01ah
+dd 05c93325fh
+dd 08fc0ff04h
+dd 09992d5f2h
+dd 083ac05ebh
+dd 0a4d84836h
+dd 028fb8f35h
+dd 088c36249h
+dd 0170ca30ah
+dd 042ca807ch
+dd 06bd1c3f2h
+dd 0848d1098h
+dd 0a087b4afh
+dd 01a8a2d18h
+dd 00157b1deh
+dd 048863587h
+dd 089dc237eh
+dd 0def1c726h
+dd 08d1f7faah
+dd 0d49f7f0dh
+dd 0a1380d41h
+dd 05d69a242h
+dd 08214ebe4h
+dd 0926ce123h
+dd 0325488bdh
+dd 060d17367h
+dd 06e61956ch
+dd 0c62110f0h
+dd 06924307fh
+dd 00aeda6eah
+dd 0502b1fdch
+dd 0199c8162h
+dd 0b77a259ah
+dd 03a0f512dh
+dd 04420cda5h
+dd 05e0d05b6h
+dd 0f315c7cah
+dd 00668d1adh
+dd 09c6ca87eh
+dd 0951d7ec4h
+dd 09f8ff697h
+dd 05afb8efch
+dd 06f5ea10bh
+dd 07c489dc7h
+dd 04671fa35h
+dd 038b60bbch
+dd 02d7e56d8h
+dd 0ff244275h
+dd 085742e67h
+dd 0f854422bh
+dd 0117afdc4h
+dd 014d5b52bh
+dd 0660a82dbh
+dd 09c66086ch
+dd 01d7a2981h
+dd 0bb152993h
+dd 0179d1893h
+dd 0e9e761e5h
+dd 025f3251dh
+dd 072f1fb4ah
+dd 0a1464479h
+dd 03f8f790ah
+dd 00590651dh
+dd 022a8d394h
+dd 00e335dabh
+dd 079eda657h
+dd 0e47e4ff6h
+dd 04853d7bah
+dd 04a106ac5h
+dd 09bb75db2h
+dd 053a043abh
+dd 0eb345e80h
+dd 06e72c2c1h
+dd 0681a53c9h
+dd 070e6174ch
+dd 094c0715ch
+dd 06503fa51h
+dd 01c292b14h
+dd 034c4f1ech
+dd 0cf74f92eh
+dd 004da6ecch
+dd 0744073ebh
+dd 0fa0d2b85h
+dd 0f95f6504h
+dd 03e1ae6e9h
+dd 04d6d8647h
+dd 0d3fd0efbh
+dd 053d268abh
+dd 00b4c06bah
+dd 0d1f9f8bfh
+dd 0602e3c00h
+dd 04b4d6a19h
+dd 062ab0987h
+dd 036f4f407h
+dd 0cdaee90eh
+dd 0dbd50b48h
+dd 01f113ce1h
+dd 03375fdaah
+dd 052a3e6ebh
+dd 07c4ec2c8h
+dd 03d7115bch
+dd 013a44dafh
+dd 023e7ddd7h
+dd 07de12b11h
+dd 0c5f33949h
+dd 04ed4a991h
+dd 0b56ddcf4h
+dd 0310e2696h
+dd 00fa4752dh
+dd 025831c2eh
+dd 07a37a282h
+dd 0e29a8c2ch
+dd 04a8df7d6h
+dd 08bcd9ff1h
+dd 09ddf9db6h
+dd 05dd83d7dh
+dd 0051f7f27h
+dd 00c27bce8h
+dd 0bb449a6fh
+dd 05606e9f0h
+dd 03e20c615h
+dd 06f9a9e61h
+dd 02a03fae2h
+dd 081d037bbh
+dd 01645a51fh
+dd 0e94b6d1fh
+dd 0e8e4988fh
+dd 0db668edch
+dd 0d9c7e583h
+dd 0652b8305h
+dd 0777738cah
+dd 01cf07fa7h
+dd 08159a4a1h
+dd 03824ee56h
+dd 0f0cd037eh
+dd 0d7280068h
+dd 00f32c30eh
+dd 08527859eh
+dd 09b21a1abh
+dd 003b0e28eh
+dd 03abe62b9h
+dd 0cb46ea9ch
+dd 05232745ah
+dd 07e1701e3h
+dd 0661f9b6eh
+dd 00585bdd4h
+dd 0cb25c7fch
+dd 049a454cdh
+dd 09fbe9498h
+dd 0fc15132bh
+dd 07364cc5ch
+dd 04a8069edh
+dd 08058ac4ah
+dd 07cc0727fh
+dd 00c1adaddh
+dd 0a8d6f2d9h
+dd 0d2cef81bh
+dd 090ba80aeh
+dd 030a38692h
+dd 0e5aaacfch
+dd 05a82d544h
+dd 061598ae0h
+dd 0fdd6e743h
+dd 043016cb2h
+dd 091c26bb9h
+dd 01191f670h
+dd 04966395dh
+dd 0c6af5110h
+dd 0f912d357h
+dd 0837df077h
+dd 0684a1b08h
+dd 0a5423245h
+dd 0567994c0h
+dd 00c112c86h
+dd 0c6936d14h
+dd 0cef7449eh
+dd 035a2ae71h
+dd 0772dc9f2h
+dd 0b390178ch
+dd 0f3e28cc5h
+dd 0df49598eh
+dd 053b1db11h
+dd 0385e9032h
+dd 0f09cb9e6h
+dd 0d0f1fc8eh
+dd 0bea29822h
+dd 050976066h
+dd 082607db5h
+dd 042b50904h
+dd 0a120d3f9h
+dd 0b326b548h
+dd 00e86a49fh
+dd 038e7cb4ah
+dd 077fa143bh
+dd 06225aa2eh
+dd 00115ee1ch
+dd 0f1bfb075h
+dd 0eae00384h
+dd 02fb56644h
+dd 0a563e31ah
+dd 0097464cah
+dd 0460ed9deh
+dd 09db434beh
+dd 01eba8fa4h
+dd 0b0707236h
+dd 024bc5538h
+dd 090299d95h
+dd 03dee3790h
+dd 07fbef405h
+dd 01e297d42h
+dd 0ed2f3574h
+dd 0445f06a5h
+dd 001858d90h
+dd 0feaa46c9h
+dd 02babaa58h
+dd 0a74aa578h
+dd 0313e89ech
+dd 05b5cd643h
+dd 078fdbb1dh
+dd 0b26a04e0h
+dd 0867fe91eh
+dd 0c3c86272h
+dd 068eaa8bdh
+dd 0a527a0ech
+dd 071f9a3d3h
+dd 0e381e499h
+dd 04b472d7ah
+dd 003c4bc7eh
+dd 0309e143ah
+dd 01e276407h
+dd 0d3fbc437h
+dd 0a70ed10fh
+dd 00d9cd193h
+dd 0271bb55ah
+dd 03c936814h
+dd 0d497f289h
+dd 0c86b8b81h
+dd 0c5448827h
+dd 012b7f846h
+dd 0597d064fh
+dd 0c1aa4632h
+dd 0b952d811h
+dd 034b5cc13h
+dd 0a3efcb55h
+dd 01683927bh
+dd 0e6183492h
+dd 0a7a086deh
+dd 0d46475a3h
+dd 08611e654h
+dd 03dc4ffd3h
+dd 08363b800h
+dd 0fb0b72efh
+dd 035a4ce2fh
+dd 067214d30h
+dd 0988efbbbh
+dd 03e2583a1h
+dd 0c2ba656dh
+dd 04813924dh
+dd 07c22511ch
+dd 038c1d3f9h
+dd 0d48c5972h
+dd 002674279h
+dd 04a815a6ah
+dd 021f04f39h
+dd 00d795182h
+dd 0f9a37603h
+dd 0cedcc661h
+dd 0e47d5938h
+dd 00a7b1a2ah
+dd 06138a727h
+dd 02bdb0c0dh
+dd 0755255bfh
+dd 03388378dh
+dd 0d57b770eh
+dd 044520759h
+dd 0b2137348h
+dd 078cc6ae8h
+dd 04b0549c9h
+dd 01e8c9064h
+dd 0d3521f8fh
+dd 018c23deah
+dd 0bb2f1933h
+dd 004629b1fh
+dd 0f4c06d3ah
+dd 0843e3bfdh
+dd 0943bff33h
+dd 0d02428c6h
+dd 07e658e29h
+dd 093d25cddh
+dd 050fa28c9h
+dd 0cb89c1a6h
+dd 01bcd8274h
+dd 009137b7eh
+dd 0c51aae97h
+dd 0e4782233h
+dd 0ec2d6d73h
+dd 00b72f14eh
+dd 0032bda23h
+dd 07eaa0205h
+dd 08df17765h
+dd 0c3468c8bh
+dd 04b184581h
+dd 05de8bef1h
+dd 01c51081ch
+dd 0a4de1f83h
+dd 0b0b95605h
+dd 06d4f745eh
+dd 00b216672h
+dd 0ad11278eh
+dd 0084f811eh
+dd 07ac9ec09h
+dd 03cc48a5ch
+dd 0fb44b2c7h
+dd 00a2ad534h
+dd 0dfe7aee0h
+dd 0e52c205eh
+dd 0a43bfba7h
+dd 0286d7d8fh
+dd 0d8330d90h
+dd 0c1fbd548h
+dd 03e4f50c7h
+dd 0b1b822dch
+dd 0a959da28h
+dd 018e9e74ch
+dd 0eb5c0f13h
+dd 029e793d6h
+dd 0d953f72dh
+dd 0ec78a243h
+dd 0da8f1908h
+dd 0110d40bch
+dd 003618186h
+dd 087ea7e3ah
+dd 04f63bd0fh
+dd 076e56b75h
+dd 042dbdcaah
+dd 02fd26d0ah
+dd 0bd67af5bh
+dd 039c351f4h
+dd 067c8a4d9h
+dd 0f5a10937h
+dd 01da6a99bh
+dd 06930e2e6h
+dd 002272885h
+dd 0dc35f9efh
+dd 08c4e336ch
+dd 0d3f1f549h
+dd 0deaef863h
+dd 0beb79d2bh
+dd 0e656ba02h
+dd 0ea476245h
+dd 0e0a97b92h
+dd 06e2fa453h
+dd 03ae6a877h
+dd 0c6fa0055h
+dd 0af52fa87h
+dd 05d1b39e0h
+dd 0633714d2h
+dd 07bcff593h
+dd 0ad8c6404h
+dd 0e77daf02h
+dd 036be953ch
+dd 0f2d1ebdfh
+dd 027027e97h
+dd 0a9f11700h
+dd 01f2e5403h
+dd 089efca7ah
+dd 0380219ddh
+dd 060379cd3h
+dd 0196b2680h
+dd 0c0377728h
+dd 04dc5c0c8h
+dd 00bdd268ah
+dd 06fec1647h
+dd 0187e7e69h
+dd 0aa82cfa6h
+dd 0d9868e6eh
+dd 087664609h
+dd 09753db9eh
+dd 020c9438fh
+dd 0eb0f5e79h
+dd 0779ddd88h
+dd 022a0bc08h
+dd 0afe750ech
+dd 064006b30h
+dd 04ba5f34bh
+dd 0f9018582h
+dd 034ae7296h
+dd 0060fd5c9h
+dd 05941354eh
+dd 0ef7ae31bh
+dd 041ffc2c6h
+dd 054812ccfh
+dd 0a3bd5d72h
+dd 0eab8a1ceh
+dd 0d809b967h
+dd 0eb437d82h
+dd 030985b3ah
+dd 0077eab22h
+dd 09da88dc2h
+dd 00c8aa160h
+dd 07cf761c5h
+dd 021695a17h
+dd 0c65b89d6h
+dd 0c4ef7270h
+dd 07aa00cdeh
+dd 0eafc712ah
+dd 07a0eabf8h
+dd 06bb20bedh
+dd 07763d77dh
+dd 039eeb28ah
+dd 0edcf406bh
+dd 08e4de77dh
+dd 0854d70cdh
+dd 04f175ea3h
+dd 00f748132h
+dd 04263a9c3h
+dd 09b0f33fbh
+dd 0a4b065d7h
+dd 06715ccdfh
+dd 07ba3df26h
+dd 04518e868h
+dd 021f5a2d2h
+dd 0c9281fffh
+dd 020b45f37h
+dd 0c7edfbb4h
+dd 0a6e9fef7h
+dd 079689cc5h
+dd 0c07a2217h
+dd 0c8b25c7bh
+dd 0e3b58278h
+dd 00cf99406h
+dd 06e9b58dah
+dd 0780c9fb1h
+dd 0a872cbdbh
+dd 05e7b1fbch
+dd 0c126293dh
+dd 0a98c30ceh
+dd 0ec8248fah
+dd 041d79b1fh
+dd 0442631c0h
+dd 0b912ce24h
+dd 0bf39af5ch
+dd 021aada9bh
+dd 001d9b09ah
+dd 0044c0751h
+dd 0d098704bh
+dd 0b68c68aeh
+dd 04218ad94h
+dd 0a12005b6h
+dd 0587b8ae4h
+dd 0a79b67ebh
+dd 00e0c731eh
+dd 0b1246675h
+dd 0c72b1d24h
+dd 0e7521942h
+dd 024a7e6c5h
+dd 07684acd7h
+dd 0930250feh
+dd 0772222beh
+dd 07a05a374h
+dd 02c3f826ch
+dd 09e11f11fh
+dd 010fcc608h
+dd 073e8cf34h
+dd 0ba84270bh
+dd 0044e8b69h
+dd 0d91d0325h
+dd 0538653abh
+dd 07760bb16h
+dd 0e896f0c3h
+dd 0baeb811dh
+dd 0f1f02b74h
+dd 080b7d01eh
+dd 0c1c915cfh
+dd 096de1dbdh
+dd 0e7f2fa58h
+dd 0a4caf5a0h
+dd 0ecfd163ah
+dd 0018f9af9h
+dd 02127c072h
+dd 060feb728h
+dd 0f2b923f3h
+dd 03709c119h
+dd 055244dc2h
+dd 0f1a5d257h
+dd 0ab4723b4h
+dd 0193166b1h
+dd 09712e5bah
+dd 0a86f0fc2h
+dd 059f6004ah
+dd 0c46c7753h
+dd 0d453dd10h
+dd 012e6b513h
+dd 01f9f9087h
+dd 05f6a6135h
+dd 08191fb50h
+dd 09b9976c8h
+dd 03a3acf41h
+dd 04e0ccdabh
+dd 02bbf47efh
+dd 0d7e5240fh
+dd 0d3d1449eh
+dd 0e1a48338h
+dd 04e35d362h
+dd 0a7877d16h
+dd 02e328a14h
+dd 01d3ffa6eh
+dd 09e751ce9h
+dd 0e172f339h
+dd 0c30d5934h
+dd 0360d32f5h
+dd 0d263cb19h
+dd 0dab6f927h
+dd 0531c6a6fh
+dd 0ca6ab3d4h
+dd 0858ae05dh
+dd 0d5de9e0ah
+dd 0f74c05f1h
+dd 08ee91b3dh
+dd 0bf3ef3f8h
+dd 0d1ab324ah
+dd 0b61823dch
+dd 099158f45h
+dd 0c306485ch
+dd 065aba2afh
+dd 09ea201ebh
+dd 00e1bd817h
+dd 071f90300h
+dd 0a4519c4eh
+dd 0a554f619h
+dd 0a396980dh
+dd 0f2aa0789h
+dd 09c98ea68h
+dd 0f39be6c5h
+dd 0b54aa1d0h
+dd 01ad05a3ah
+dd 0b5764a0ah
+dd 09742299bh
+dd 0ba83e253h
+dd 0c0729455h
+dd 0c45865f6h
+dd 02c8f4ed0h
+dd 0ed002496h
+dd 04b675f76h
+dd 08c34ddc3h
+dd 0d6928b50h
+dd 0d1d6bb3eh
+dd 0a1ace0b2h
+dd 0e0e8a621h
+dd 0759a327eh
+dd 09ca0d140h
+dd 01b6d2da9h
+dd 0a64fd915h
+dd 06a67ab3bh
+dd 02272dc90h
+dd 0cf3c1bc9h
+dd 095317506h
+dd 017d8da47h
+dd 005d27d0eh
+dd 07999bfc7h
+dd 07937cc00h
+dd 069bf1eb5h
+dd 0810bc4e7h
+dd 04f19a1f5h
+dd 02c7363b7h
+dd 00fc66acbh
+dd 0fbfcf703h
+dd 00b8d0153h
+dd 0a90cb14ch
+dd 02179c515h
+dd 08599aed4h
+dd 06f3329beh
+dd 0aedb59c8h
+dd 0ab39d5d0h
+dd 0ffb0ce60h
+dd 0129c38eeh
+dd 0a9131d05h
+dd 08edcf49dh
+dd 031eebaa3h
+dd 07442cbf1h
+dd 07f810115h
+dd 0c06af6fah
+dd 07b57b491h
+dd 0a762d7b4h
+dd 0b2283e9bh
+dd 0964bebf3h
+dd 0155d24b7h
+dd 016f9c7f5h
+dd 0eb2a726ch
+dd 0f24955dah
+dd 07ccfead8h
+dd 0436b8ff9h
+dd 00040bb71h
+dd 0af305f8ah
+dd 0d5948d79h
+dd 0d49c43c5h
+dd 0580793d3h
+dd 05b24d971h
+dd 082be803ah
+dd 07fd358f1h
+dd 031bc8e91h
+dd 003b34511h
+dd 0c66a960ch
+dd 07498fbaah
+dd 02c5ff272h
+dd 0d5ba3161h
+dd 041df980dh
+dd 0bc5aac57h
+dd 026c466eeh
+dd 0b6f85aabh
+dd 023225d9ch
+dd 0a49b113eh
+dd 0e5e16e32h
+dd 0a7a50205h
+dd 0df045bc5h
+dd 01edabf8fh
+dd 06d98ac23h
+dd 0f42d8b33h
+dd 05bddf100h
+dd 0c7fd3201h
+dd 05553a861h
+dd 0299148e0h
+dd 03d6943d7h
+dd 0588cc336h
+dd 05664bd50h
+dd 06e2a8cb2h
+dd 09e7a573ah
+dd 0588502efh
+dd 06a508f31h
+dd 0bb201783h
+dd 009d1524ch
+dd 00f747c31h
+dd 071e6a444h
+dd 0426b76afh
+dd 044629d92h
+dd 04d0644e6h
+dd 053a9a85eh
+dd 06771d820h
+dd 0c6758750h
+dd 0846aba40h
+dd 0ed48ccd9h
+dd 010364300h
+dd 060d54e17h
+dd 0b24a9755h
+dd 0b833d6beh
+dd 0db5bb1e2h
+dd 04db4c568h
+dd 0de70427eh
+dd 0c58bca62h
+dd 05193ad93h
+dd 062360809h
+dd 0cf7d8ae9h
+dd 0e71748a5h
+dd 0a5680f32h
+dd 0ed70ec28h
+dd 0c1f04755h
+dd 01e00f95dh
+dd 0641290c7h
+dd 0d4debe9ah
+dd 03d964defh
+dd 0b877dba1h
+dd 05b4cb73ah
+dd 0ff5665a2h
+dd 0ce20d624h
+dd 0c9c3a6beh
+dd 02f283a7ch
+dd 08f940e8dh
+dd 033d84edeh
+dd 0198d8dc7h
+dd 025b985a5h
+dd 039c8390fh
+dd 0d8b754b5h
+dd 095f1cb04h
+dd 07cab2a27h
+dd 020d3d532h
+dd 0e9cf173dh
+dd 09d9d19a7h
+dd 0ca18c7a3h
+dd 0c055a24eh
+dd 0924aecf5h
+dd 03a0cd802h
+dd 06a676d0ch
+dd 05c1b3f5dh
+dd 08f706b12h
+dd 0d1490cefh
+dd 05b1cdc29h
+dd 095086ef3h
+dd 040d10aaah
+dd 0b4bac159h
+dd 00b221e6eh
+dd 099f58362h
+dd 0676bd53ch
+dd 0d3dd9c1ch
+dd 01d649e74h
+dd 079c1b914h
+dd 08040ab67h
+dd 0ae57a8d4h
+dd 06478d912h
+dd 0e29df8cah
+dd 0ea5a7afeh
+dd 0757ead81h
+dd 0534decc0h
+dd 0d8090006h
+dd 0f4bc5c00h
+dd 0a0a36b87h
+dd 0af94ff15h
+dd 091e62862h
+dd 034a72d6ah
+dd 0c23a09f3h
+dd 0a356ebcah
+dd 0ff1f95c5h
+dd 0dc5ca5b1h
+dd 0efb509c7h
+dd 08a6d7015h
+dd 0d6d7b627h
+dd 0e8b9cbc4h
+dd 0ceb205c7h
+dd 0ba6996c7h
+dd 0a2eae68ah
+dd 00022ba7ah
+dd 0738bfc97h
+dd 07a51d8c2h
+dd 0824e299ch
+dd 09e8d6fa3h
+dd 01fc9a910h
+dd 0cc21d3a5h
+dd 06b25570eh
+dd 045171dc9h
+dd 0fbcfa6c5h
+dd 07d20ce03h
+dd 08a4d98eah
+dd 042dca2f1h
+dd 0255b806fh
+dd 0f630b035h
+dd 0ebcd330dh
+dd 0db808228h
+dd 0a8889b14h
+dd 0cecc0526h
+dd 053f5ce78h
+dd 08db09974h
+dd 0c5d07592h
+dd 01ae0e846h
+dd 07672503ch
+dd 01f3430f6h
+dd 016edb4cch
+dd 0787da115h
+dd 02473abbah
+dd 08b85531bh
+dd 0bb799bebh
+dd 0972f45d7h
+dd 058db65cfh
+dd 0ef23ce3bh
+dd 01d3dcdd1h
+dd 0411f4130h
+dd 06f833316h
+dd 0bf62dfb2h
+dd 09b876963h
+dd 0f522c377h
+dd 05a01b9a4h
+dd 08cf396a9h
+dd 0f1c04881h
+dd 06eb59c7eh
+dd 06edafb2bh
+dd 0de5f4840h
+dd 0510d9b45h
+dd 00f48d508h
+dd 0de74168ah
+dd 069b4cb80h
+dd 006e1095ah
+dd 0c74b2a35h
+dd 07299a1b3h
+dd 0872968cfh
+dd 02ccea926h
+dd 0240c2264h
+dd 0f8185b34h
+dd 08b7836bbh
+dd 034279c1ah
+dd 0c314323ah
+dd 08553a1e5h
+dd 0e54d8625h
+dd 0be1db28ah
+dd 013d5b207h
+dd 09d4e1952h
+dd 0f14998b7h
+dd 09f15fc33h
+dd 062ed7230h
+dd 0e0abbaf5h
+dd 076b87755h
+dd 0c684f66eh
+dd 0c85eeff7h
+dd 0aa9ee6b8h
+dd 0def08025h
+dd 01baa38a5h
+dd 0f844ff9ah
+dd 0dda39781h
+dd 023f838a8h
+dd 081453a32h
+dd 0630df390h
+dd 0343a68fah
+dd 0ec865506h
+dd 090470b64h
+dd 06d542e90h
+dd 069847414h
+dd 02edc023ah
+dd 0f2482298h
+dd 016160406h
+dd 0f38c5cc9h
+dd 07074316fh
+dd 0581cc2fbh
+dd 04f835df5h
+dd 04d3fdaf4h
+dd 0c303a29fh
+dd 0da95c0bbh
+dd 0d075f995h
+dd 09a1369f5h
+dd 0f9db4e5bh
+dd 03b37830ah
+dd 051328b00h
+dd 0f8443592h
+dd 07a55e6d4h
+dd 047dc6777h
+dd 0fd9aa194h
+dd 03b798008h
+dd 0fbf598ddh
+dd 0d42a3ef8h
+dd 006551958h
+dd 09bad31bbh
+dd 0aed9c09ah
+dd 076ba55b2h
+dd 0e62a7d5dh
+dd 0937bd10dh
+dd 000f57d33h
+dd 04f365a80h
+dd 0eaa4b914h
+dd 02f25aeaah
+dd 03a04d2aah
+dd 0afddaaf3h
+dd 098699b32h
+dd 042670459h
+dd 0332e1f51h
+dd 026ec2921h
+dd 089b55348h
+dd 07888c69bh
+dd 0ed7dfa9ah
+dd 07f9b78a7h
+dd 06ad3ef90h
+dd 0895755fah
+dd 004326f90h
+dd 036e2e4ceh
+dd 0d62ffadfh
+dd 0c822fc7ch
+dd 05bddd538h
+dd 01781f66ch
+dd 0e2adae39h
+dd 035a847e6h
+dd 00209c66dh
+dd 08107b1deh
+dd 03d5fd6f2h
+dd 0832a5f80h
+dd 0ab6fab96h
+dd 03ad715eah
+dd 0b2e5898eh
+dd 0edda6ca9h
+dd 01dd98ebch
+dd 09d2fbb66h
+dd 020f1f143h
+dd 03d3b9fabh
+dd 0a84677d9h
+dd 08010406fh
+dd 038826a7ch
+dd 0d6d52e9dh
+dd 08c425f5ah
+dd 0d00ec0ffh
+dd 0c81968b5h
+dd 04f537ff7h
+dd 0c8be2899h
+dd 06091a1d4h
+dd 01684205ch
+dd 0b6d37342h
+dd 03ba79284h
+dd 08d4f786fh
+dd 094977b94h
+dd 0430e9aaah
+dd 06769aebah
+dd 0489e8c05h
+dd 07cd56c4eh
+dd 0a4251a00h
+dd 02fa48e6bh
+dd 002c4687ch
+dd 00f03340eh
+dd 0f92c892fh
+dd 005d24c74h
+dd 01d990195h
+dd 09d0854b0h
+dd 0b0b95621h
+dd 06749696eh
+dd 0dfc9ad63h
+dd 0edb5aaf5h
+dd 070734e9bh
+dd 0692de144h
+dd 019e1d582h
+dd 04026ccadh
+dd 0ba9d323ch
+dd 0e4c045d4h
+dd 08c36dcdbh
+dd 07074c05ch
+dd 020079801h
+dd 05a0c4b46h
+dd 0fc9ca858h
+dd 0d6f34cf0h
+dd 0f4adc642h
+dd 00a955571h
+dd 0c5ab007eh
+dd 09584e303h
+dd 0a329f5c7h
+dd 0c42ef820h
+dd 0262c60d6h
+dd 02359361eh
+dd 05ad32862h
+dd 07ad4fb31h
+dd 0b4ccfa17h
+dd 0caa5d4a5h
+dd 070604dfch
+dd 04ae7c676h
+dd 0543d856ch
+dd 09bd05c68h
+dd 030a5c401h
+dd 08a801848h
+dd 0f7289538h
+dd 0c7c64e92h
+dd 06c7690cbh
+dd 037b83b5fh
+dd 0d4ffa164h
+dd 0ec8242e4h
+dd 0c12a6e26h
+dd 08450ffc6h
+dd 0cf3214e5h
+dd 0a4f71aeeh
+dd 08b4eb315h
+dd 05a12ec45h
+dd 03aeeae92h
+dd 0f040b94ah
+dd 0e67cbe41h
+dd 0bfd2b13bh
+dd 07094f232h
+dd 0a1b71097h
+dd 03f40c4bch
+dd 01134a22ch
+dd 0a6db4c6fh
+dd 098501797h
+dd 0d22c37e6h
+dd 01a5c58ech
+dd 0e9a56217h
+dd 0a868b4a0h
+dd 073c906cfh
+dd 064164b0ch
+dd 0dc07c9ach
+dd 010bbfc20h
+dd 0c1a563b6h
+dd 08ef7f4c6h
+dd 0d115c1efh
+dd 02824a725h
+dd 02c63952eh
+dd 094eaa890h
+dd 032b80c3fh
+dd 0ac349f5dh
+dd 009698bb8h
+dd 006754727h
+dd 0c313a1f6h
+dd 000d75e1fh
+dd 06d286a9ch
+dd 04f78d8fah
+dd 0321eb3ebh
+dd 036a07e46h
+dd 06f7b00bdh
+dd 090237ae0h
+dd 060cba327h
+dd 0e900f464h
+dd 080680580h
+dd 009e5586ch
+dd 0949a53c3h
+dd 03ce5197bh
+dd 04c2e69aeh
+dd 0a6c5da3eh
+dd 064c8a40eh
+dd 059ae2773h
+dd 008dd1673h
+dd 07712afd6h
+dd 0908ca6f6h
+dd 0387b00a5h
+dd 01850347fh
+dd 0438b3171h
+dd 067b5722ch
+dd 0e37b8984h
+dd 0c3f8879dh
+dd 0961c332ch
+dd 087f97bb7h
+dd 08c60d8bdh
+dd 0ba2fa9fah
+dd 0d1d45a77h
+dd 0fcc37c58h
+dd 0a77596e1h
+dd 0371b1897h
+dd 09ebdbe37h
+dd 04f02d044h
+dd 0b504e369h
+dd 05590a3c3h
+dd 0b2249db3h
+dd 064f9faa8h
+dd 0dd95fd94h
+dd 027d7a3c6h
+dd 0dde04710h
+dd 0d48995bch
+dd 0a7324e82h
+dd 03fd963c0h
+dd 056c4cd4ah
+dd 08e1cfaf8h
+dd 026481b4ch
+dd 0c22e42e9h
+dd 01957e933h
+dd 0e8af1e65h
+dd 0ec7d3ae6h
+dd 0fe669282h
+dd 0a3519d1fh
+dd 03bd2f938h
+dd 04cfb47beh
+dd 04deafa4ch
+dd 073d240a7h
+dd 0749402aeh
+dd 036e00f05h
+dd 0d1e74db4h
+dd 03cc9a646h
+dd 08d38149ah
+dd 0c44155a4h
+dd 065087c28h
+dd 0c5a3d68fh
+dd 0911911c9h
+dd 0f8e650dch
+dd 0e3de9c77h
+dd 07048f507h
+dd 07bea7616h
+dd 02d56e0eeh
+dd 0082b86d2h
+dd 0a3c9e8fah
+dd 0588eb1aah
+dd 0e1ee069eh
+dd 02bc1409bh
+dd 044b73fd0h
+dd 09563bf8ch
+dd 0812970a3h
+dd 08622d2ffh
+dd 05b8c8c26h
+dd 0fbbb7c69h
+dd 089219a45h
+dd 09a03300fh
+dd 0d7bc61a8h
+dd 0b7243bdbh
+dd 0cbb087cah
+dd 04f3872e7h
+dd 0ba0ed430h
+dd 0d7a52f58h
+dd 0c48e0e42h
+dd 028671ba5h
+dd 0e3f4a5afh
+dd 02004803bh
+dd 0e65957b8h
+dd 008880bedh
+dd 0285af50ch
+dd 03f2e1a7fh
+dd 003fa1182h
+dd 060792bc7h
+dd 06c63e0b4h
+dd 01aea2511h
+dd 07b5f42dch
+dd 0660349e7h
+dd 0e607d72fh
+dd 019aae259h
+dd 0291e7510h
+dd 0a1da9581h
+dd 0ac785e2ah
+dd 083e6cdabh
+dd 0fd5e0dc8h
+dd 0d4259262h
+dd 0fdf1bc30h
+dd 0803e985dh
+dd 01b3b3ef3h
+dd 07ea473cbh
+dd 018a9ff25h
+dd 0ef96d60ch
+dd 0e39daac4h
+dd 04fb78c29h
+dd 0d31ba31bh
+dd 077eab18ah
+dd 0dbc67105h
+dd 0244d4ffeh
+dd 035700363h
+dd 08736e1c1h
+dd 06b68456ch
+dd 0225fc1b7h
+dd 07ca23d98h
+dd 04ec34266h
+dd 0168cd69eh
+dd 014799321h
+dd 0ebe8dfaah
+dd 0faea2a15h
+dd 0c1144024h
+dd 0eb6beb7fh
+dd 0583f29e6h
+dd 064cbb4a9h
+dd 04c523601h
+dd 04fc165f1h
+dd 0f7fa8afch
+dd 0a218a198h
+dd 0276da418h
+dd 092feca5bh
+dd 062384864h
+dd 06f45061ah
+dd 0fff11e5ch
+dd 0b356cb6ch
+dd 04efb494ch
+dd 0da9c8843h
+dd 0d957aa0ch
+dd 0ed6762d8h
+dd 0cf5368dch
+dd 09135a38bh
+dd 01f0625feh
+dd 0c169a489h
+dd 088de5b86h
+dd 08da8bbadh
+dd 03efdf295h
+dd 009ab812bh
+dd 04ec5b73dh
+dd 05b6ade4dh
+dd 02a8c7db1h
+dd 0214be04fh
+dd 00045548bh
+dd 0b45bb491h
+dd 0a3b8e081h
+dd 090fb0e05h
+dd 04817e8a3h
+dd 0acbf568bh
+dd 084c57db1h
+dd 057712701h
+dd 039a712dch
+dd 056cbcd3eh
+dd 0fcfa11f8h
+dd 0e4b2a84bh
+dd 0cbc3a103h
+dd 0b8c77727h
+dd 09b9becfbh
+dd 00e4aa327h
+dd 04a333d18h
+dd 05f353c15h
+dd 0b28e1036h
+dd 0732ef90ah
+dd 0dfdfdeach
+dd 08330e935h
+dd 0116e2cd9h
+dd 067ded6e8h
+dd 0924f5a7ah
+dd 053a9edd1h
+dd 0ae3a9865h
+dd 0fe5dcbc1h
+dd 06b8b3fbdh
+dd 0e45295f7h
+dd 078ff96ffh
+dd 0fc18151ah
+dd 064b4d666h
+dd 0059872d9h
+dd 05337b45dh
+dd 064a46ae8h
+dd 0f812befdh
+dd 03d38941eh
+dd 0c3466e58h
+dd 0c96d54e7h
+dd 0d68e1761h
+dd 0705eb774h
+dd 0574899a3h
+dd 06ebf73aeh
+dd 02655471bh
+dd 0456fdc78h
+dd 0e92c55cah
+dd 025fafeb9h
+dd 05f03e270h
+dd 008ca354ch
+dd 0722e324ch
+dd 05a465470h
+dd 03d89052ch
+dd 016d738c2h
+dd 02994cd3eh
+dd 006fb50c2h
+dd 0b1e223d1h
+dd 03359cb16h
+dd 062b84ac1h
+dd 03cc8fd25h
+dd 0acbf112eh
+dd 059b93a9dh
+dd 0daa20c0bh
+dd 0a24b9947h
+dd 0e97cfdd9h
+dd 07bdc4ac8h
+dd 011b50159h
+dd 075999b82h
+dd 0df3e07ech
+dd 050e78812h
+dd 084639571h
+dd 05bd51bbah
+dd 0ea98999bh
+dd 06164433fh
+dd 0b76f8a50h
+dd 01b3493a8h
+dd 0ef186e24h
+dd 0015b28ceh
+dd 0d9af63bch
+dd 0efc03e1ch
+dd 0ab83e82fh
+dd 0fd6f2f66h
+dd 05a259c5dh
+dd 0437aa626h
+dd 025b36dabh
+dd 08e11671bh
+dd 005747bddh
+dd 006b1bb1bh
+dd 0cc796aaeh
+dd 05a64bcc5h
+dd 07f72bec3h
+dd 0378bd816h
+dd 07a3aa057h
+dd 06628ad77h
+dd 0b5a33251h
+dd 0c6d6028ch
+dd 0853ddefah
+dd 069b6e1feh
+dd 0d44b98a9h
+dd 0558bf0c6h
+dd 0d30b6b02h
+dd 0fa6859a4h
+dd 0f93b527fh
+dd 05da7bd91h
+dd 079009eb4h
+dd 0d708bb0dh
+dd 06da5f5f7h
+dd 0f873798fh
+dd 01402d899h
+dd 05288fd12h
+dd 08afe9ee5h
+dd 0665695d0h
+dd 01665e8b6h
+dd 02dd4852dh
+dd 0786810d2h
+dd 02e7c007fh
+dd 05e5d97b9h
+dd 0933659b7h
+dd 0c8b42432h
+dd 0d9a8c927h
+dd 0f6908f2ah
+dd 070e912a6h
+dd 0718de148h
+dd 0a84d0276h
+dd 0c59aec68h
+dd 0e8b72b8ah
+dd 0ffff3ab0h
+dd 05713d85ah
+dd 0bd306fafh
+dd 01ffde527h
+dd 0e22a66eeh
+dd 0d9dd5876h
+dd 0a58e51b0h
+dd 091c522afh
+dd 0a2e86ed3h
+dd 0ed517e7ch
+dd 0ec106742h
+dd 009b076dch
+dd 08ec35824h
+dd 01737d9c8h
+dd 06982b53ah
+dd 089b66dfch
+dd 0dd62d4aah
+dd 0ef9d7ce1h
+dd 0e81facfeh
+dd 04ba9dcf6h
+dd 06c290bc2h
+dd 0583df367h
+dd 0083d77d4h
+dd 0d474180eh
+dd 0f5057113h
+dd 02a97fe9ch
+dd 02f8e07b6h
+dd 049909bb4h
+dd 06c9c8552h
+dd 0429cedb4h
+dd 020ac6876h
+dd 0cfdd147dh
+dd 09e8f8f25h
+dd 0c030a931h
+dd 00ac39449h
+dd 0d6666e8ch
+dd 0274c9c87h
+dd 0fe771b34h
+dd 0cfb9ed90h
+dd 04582ac7bh
+dd 0d1d8793ah
+dd 0a75e4e81h
+dd 067b6e469h
+dd 0be0f723ah
+dd 033973244h
+dd 0d59c4955h
+dd 024eebcf9h
+dd 0e535796dh
+dd 01f253584h
+dd 0e1a557d1h
+dd 0269681c0h
+dd 0c1387d43h
+dd 030f0eb0ch
+dd 09618bf63h
+dd 03899cf61h
+dd 01065b14bh
+dd 0fe391881h
+dd 0d943570eh
+dd 07ca138ceh
+dd 08bff4a80h
+dd 0e51f1279h
+dd 0c081b62eh
+dd 0cad368bbh
+dd 034235c9ah
+dd 0a431b835h
+dd 0c5d13205h
+dd 0ec2c6d51h
+dd 0c9e14c72h
+dd 0455a7f4bh
+dd 0623f8ab2h
+dd 0a9dfa0a6h
+dd 0f3270a0eh
+dd 08d5edafah
+dd 072c79a98h
+dd 049a47456h
+dd 094be51c2h
+dd 0478ae82fh
+dd 05912a516h
+dd 0d4bac32dh
+dd 04e056b30h
+dd 0b1df0d8dh
+dd 0760f9736h
+dd 073578d96h
+dd 04176133fh
+dd 0fc092f4fh
+dd 0b21f2d7eh
+dd 004c335e6h
+dd 0f6b5e4feh
+dd 03ed8487ch
+dd 0ea420666h
+dd 03597b70bh
+dd 02eb6b265h
+dd 022f35a7ch
+dd 031ac6e20h
+dd 0ab8b1a3ah
+dd 0b1d3bd98h
+dd 0958eb84bh
+dd 09d1e354ch
+dd 0c396204dh
+dd 0459417deh
+dd 0d877bb26h
+dd 0f5b42fadh
+dd 081a974e7h
+dd 0f7b03790h
+dd 080db669ah
+dd 0bbb8599ah
+dd 02f3aeb07h
+dd 05fa9ec16h
+dd 04496e8c5h
+dd 005c104feh
+dd 078f80bc7h
+dd 0ab67d932h
+dd 00a9c9ea7h
+dd 08436cdf1h
+dd 074e892a0h
+dd 0c1e9b7e1h
+dd 03a8b3055h
+dd 03d09212dh
+dd 0344686c1h
+dd 0be20d9b4h
+dd 00c3926a7h
+dd 0601751d1h
+dd 0c5242f5ah
+dd 0bf638306h
+dd 0606f415ah
+dd 0e5c5fc43h
+dd 07110bd2ah
+dd 053e65903h
+dd 0673cad51h
+dd 0b4384487h
+dd 02f459962h
+dd 04cfa8a4dh
+dd 0dc4d7cd7h
+dd 06bbcfc85h
+dd 0ca25e512h
+dd 006d249a3h
+dd 02f696b23h
+dd 09175901eh
+dd 0853b7772h
+dd 0ba744554h
+dd 0a58c4a0ch
+dd 08abba418h
+dd 04001d201h
+dd 0d78a3514h
+dd 02ddf8a07h
+dd 0a42c12a7h
+dd 0d40d37feh
+dd 08349d2d2h
+dd 0eaf04a48h
+dd 0dee64d00h
+dd 08adc9a48h
+dd 020d68213h
+dd 0725d61aah
+dd 0a8099b0ch
+dd 079001868h
+dd 0a80e9c97h
+dd 033f8cb3bh
+dd 0793dae47h
+dd 06033d2d7h
+dd 0745bab30h
+dd 0790b8effh
+dd 08e4f1b70h
+dd 06e97cc9eh
+dd 0d9151090h
+dd 0ac30692eh
+dd 09d37a70eh
+dd 01aab0baeh
+dd 0380df21bh
+dd 0350c5127h
+dd 0b57a52ffh
+dd 0a5638aabh
+dd 059981e4ch
+dd 0d5712352h
+dd 0d8675570h
+dd 05c7f9b79h
+dd 0a7745516h
+dd 0d257d602h
+dd 01883b940h
+dd 0756733beh
+dd 0e1447e56h
+dd 0427b42dch
+dd 0f585f935h
+dd 0c651f02ch
+dd 0d002d3b7h
+dd 004fcbf77h
+dd 06691eff2h
+dd 0bef72f22h
+dd 0f5cb5035h
+dd 09b368ba7h
+dd 00ee80e3dh
+dd 0889a835bh
+dd 04b363429h
+dd 0bf35c822h
+dd 0f15c478fh
+dd 0f6ce6de2h
+dd 01f25e2eah
+dd 03f5abaa3h
+dd 0f03013d5h
+dd 0301042c0h
+dd 01a1ddccfh
+dd 015e8b956h
+dd 048506239h
+dd 0659596abh
+dd 00a24bea9h
+dd 0469afdc8h
+dd 0093af6a3h
+dd 05dffe395h
+dd 04148d456h
+dd 0822ce25eh
+dd 0c0b1ec03h
+dd 04e9c52f2h
+dd 0a7f9e433h
+dd 08337956bh
+dd 0772b8f0bh
+dd 02e496f54h
+dd 0819c8c10h
+dd 0b3d7b8f1h
+dd 0fcfe0445h
+dd 0d89deb63h
+dd 07ff893f9h
+dd 0b0f3cd46h
+dd 0b17bac0dh
+dd 0aecfdbc8h
+dd 069e0225eh
+dd 0145b5ecbh
+dd 00283421dh
+dd 0046dd84ah
+dd 0822fba50h
+dd 0fb976d1eh
+dd 085d0bf0fh
+dd 05c708b76h
+dd 063511178h
+dd 0117f4590h
+dd 02b9bdda8h
+dd 0c608785fh
+dd 0b2eb962ch
+dd 0f80af6fbh
+dd 0462c06b1h
+dd 07f5032f8h
+dd 07839c9a1h
+dd 05908f285h
+dd 0ef378248h
+dd 042afa902h
+dd 046bfe657h
+dd 06d5561d4h
+dd 07048e7aeh
+dd 09ceb4d3dh
+dd 052aeebcbh
+dd 07f967066h
+dd 00a69ba28h
+dd 05af87919h
+dd 030eab02fh
+dd 0ad34ff34h
+dd 0426eeb3dh
+dd 0f679f89dh
+dd 004b761cfh
+dd 015609a3eh
+dd 00d0082e6h
+dd 004f4a368h
+dd 038a9a169h
+dd 0be8d5c6ah
+dd 07fb74742h
+dd 0306baea8h
+dd 0029e0172h
+dd 079be850ch
+dd 0ecd08426h
+dd 0c5a9b3dbh
+dd 0e40fc847h
+dd 0c0603e5ch
+dd 0503da3f9h
+dd 0ca9a246dh
+dd 061229ce5h
+dd 0173b72fah
+dd 0a6819a7bh
+dd 048fc01eah
+dd 0237816aeh
+dd 0ef2f76b6h
+dd 036093c04h
+dd 0bdd0fc5bh
+dd 0bc95f3c0h
+dd 0a0fc8243h
+dd 00ab06fc3h
+dd 00c73b8fbh
+dd 0f7b67146h
+dd 04e218a61h
+dd 0887ba996h
+dd 0642ab4d9h
+dd 0647d01b5h
+dd 0ce7b1681h
+dd 01684e035h
+dd 0165158eah
+dd 06ffbb1a5h
+dd 0818c6e6bh
+dd 0ff0b6baah
+dd 06ac3c7e7h
+dd 064e4ff1bh
+dd 097809296h
+dd 096559423h
+dd 0457503deh
+dd 0122c32a1h
+dd 0acb5cbd0h
+dd 014629a4bh
+dd 06de6f762h
+dd 0b3724cc2h
+dd 0f0816783h
+dd 0a873288bh
+dd 0fad7a0a6h
+dd 0b055f711h
+dd 05738c3cch
+dd 009f2fa02h
+dd 0cd0b33deh
+dd 01d3014b2h
+dd 0379e0bfah
+dd 0f464b20bh
+dd 01ae97645h
+dd 03c5df9cfh
+dd 08d530d49h
+dd 0ab9819afh
+dd 04d0370b4h
+dd 040912bb8h
+dd 02516c932h
+dd 06a7dd326h
+dd 086d95f14h
+dd 06fff43eeh
+dd 024b67ad5h
+dd 0d2f8870ch
+dd 0ad2551d3h
+dd 0c9a046e8h
+dd 0e74fe10dh
+dd 072cd6774h
+dd 02b654a32h
+dd 00515d5ddh
+dd 077698e31h
+dd 0217a0bb4h
+dd 04fa542ech
+dd 07ceb733eh
+dd 0ff9506f6h
+dd 0dcff64c8h
+dd 03d87dd24h
+dd 03f7d7d4eh
+dd 06f0aa8cbh
+dd 0a02d6fdeh
+dd 043c995adh
+dd 0d6f58ddah
+dd 0fc0ec13dh
+dd 061338da6h
+dd 076f997c2h
+dd 0cf9efa3dh
+dd 0cc705f4fh
+dd 07714e0ech
+dd 0a1e874b4h
+dd 07ca7260eh
+dd 0b3593f28h
+dd 03d1d2ba8h
+dd 09ee6a2d7h
+dd 038bbeaceh
+dd 0f0a210b4h
+dd 07f733fd0h
+dd 0241dc0c7h
+dd 09db8372dh
+dd 0c0c61b66h
+dd 01f412179h
+dd 03d1e8c83h
+dd 03edf09f4h
+dd 06eca0856h
+dd 0e1de303dh
+dd 08bbf0ed1h
+dd 0cc763ac0h
+dd 0f67c4aech
+dd 09f67efd3h
+dd 0e8c74259h
+dd 04d0c5957h
+dd 0956e0496h
+dd 0900b4797h
+dd 0faf94e8ch
+dd 021e3aa4bh
+dd 096b2d822h
+dd 021c6df07h
+dd 0beaa8f15h
+dd 044954a50h
+dd 0d81d5039h
+dd 0679527d1h
+dd 005970dabh
+dd 06f5a6ecfh
+dd 0d76ad3f2h
+dd 00cb20e4fh
+dd 0e11d7cabh
+dd 01cafa78ah
+dd 0a3ef1dfdh
+dd 08b99ec05h
+dd 0f7c82dc0h
+dd 01e4c3e80h
+dd 05b1773ach
+dd 062a63005h
+dd 008e34e10h
+dd 0a57e6436h
+dd 0a040bde1h
+dd 0450bb17fh
+dd 0049928a0h
+dd 0271e6370h
+dd 0994e90abh
+dd 096d39a60h
+dd 0cabf07bfh
+dd 08d713c4dh
+dd 0f6c7d6a4h
+dd 035f065a7h
+dd 00b298576h
+dd 01427f7b3h
+dd 0f11416a2h
+dd 0fec56b87h
+dd 0d4ca89e0h
+dd 0f42438edh
+dd 0d13e1211h
+dd 09c548e19h
+dd 0aa8fbc56h
+dd 09fb6e3e3h
+dd 09dddb009h
+dd 0c2fc9591h
+dd 0c20877f0h
+dd 02ccef4a4h
+dd 0f2fb9cd9h
+dd 0488d97cbh
+dd 072fb5ffeh
+dd 0a402db1ch
+dd 06a5eaed5h
+dd 01144c410h
+dd 03b14d04ch
+dd 0e51a0e01h
+dd 007e9cd34h
+dd 0b10027beh
+dd 0acc60612h
+dd 07e692c87h
+dd 08a9e663bh
+dd 07d35869ah
+dd 05694ec23h
+dd 0524a30d7h
+dd 083008fbeh
+dd 04038b9aah
+dd 067538436h
+dd 00bdf8fa3h
+dd 01b5f835fh
+dd 049e255f1h
+dd 096d3e331h
+dd 0e7176e77h
+dd 01c773943h
+dd 0dc646868h
+dd 0d87f25d4h
+dd 0dc0cb44bh
+dd 0939a7e5bh
+dd 0be9e7dd1h
+dd 0ae6d53a6h
+dd 0060585efh
+dd 03e4fccafh
+dd 07c3ddff0h
+dd 01ed63a63h
+dd 0e2a45c53h
+dd 088288b66h
+dd 08b05e4a1h
+dd 03ae8563eh
+dd 043d67797h
+dd 0bc2a3060h
+dd 084aa7c2ch
+dd 01f01b359h
+dd 07b80d659h
+dd 05e91493ch
+dd 048cdc8e1h
+dd 0ae421876h
+dd 0639f3203h
+dd 0deb87411h
+dd 096a6381dh
+dd 05601be30h
+dd 05cb3100dh
+dd 0f8c122b0h
+dd 0a114e7e7h
+dd 04db2c32eh
+dd 0e6fe78f4h
+dd 06214b44ah
+dd 06897247fh
+dd 0ca205f4dh
+dd 03933fafah
+dd 0d50f6c1eh
+dd 0a0297053h
+dd 081096b20h
+dd 0e6dd4152h
+dd 0c2490addh
+dd 031994d7dh
+dd 0de301357h
+dd 091cf5ce4h
+dd 00012e1b4h
+dd 0f16a1db8h
+dd 0e3134b3bh
+dd 0bd41bef9h
+dd 062d27cf8h
+dd 0006a6522h
+dd 0caea5dd9h
+dd 028346d06h
+dd 0c5327a09h
+dd 0ec4b8e3ch
+dd 098329dc1h
+dd 08c5c1cd8h
+dd 0607aba1ch
+dd 081fcd342h
+dd 06ee680a1h
+dd 04329b684h
+dd 0a2b0610fh
+dd 05a6c272dh
+dd 05c6a54a0h
+dd 0458b20aeh
+dd 06df299f1h
+dd 077777d5eh
+dd 0d53237ffh
+dd 09757c62dh
+dd 085acbd01h
+dd 0f3c740f1h
+dd 007654103h
+dd 0efaa9752h
+dd 00e30f814h
+dd 0fb3445adh
+dd 0c8af376ch
+dd 022a5a4c3h
+dd 013055f7ch
+dd 086574f9eh
+dd 04716e072h
+dd 05f5398edh
+dd 0ab712d6ch
+dd 092bae556h
+dd 0c5348005h
+dd 0d29d2b51h
+dd 04edd3828h
+dd 0b1f5f5b6h
+dd 00eafc184h
+dd 059630706h
+dd 02c4e4c54h
+dd 05c813e5ah
+dd 0c197a48ch
+dd 0cff09b3eh
+dd 0f6c65b84h
+dd 0495dc55eh
+dd 0bb7f3178h
+dd 00057a914h
+dd 066255c65h
+dd 0dd5e24f3h
+dd 0c53add89h
+dd 06adee043h
+dd 06adbae42h
+dd 07d8fa268h
+dd 03f2df259h
+dd 0075c94cbh
+dd 03242b00eh
+dd 0773b8429h
+dd 0553c7dbdh
+dd 09297c762h
+dd 0662c7d2dh
+dd 04b5409d2h
+dd 0f34c711fh
+dd 088f2c77dh
+dd 0f71e954eh
+dd 0dff91ae0h
+dd 09dd45030h
+dd 0f85e994dh
+dd 003a40b7fh
+dd 0cc05606bh
+dd 0691e3084h
+dd 05b09fd00h
+dd 015d117d8h
+dd 03a8149fch
+dd 01e5620b1h
+dd 0fcd8e428h
+dd 050850fc6h
+dd 07a2693c5h
+dd 07be13d39h
+dd 0982e8bfah
+dd 02626376dh
+dd 072fce177h
+dd 09c98fb1eh
+dd 0c7653713h
+dd 0bf5ccad1h
+dd 0cd9e1816h
+dd 0a3459d65h
+dd 0099ad76ch
+dd 0711de13dh
+dd 085c46280h
+dd 04eadf7c8h
+dd 0dc0e5352h
+dd 050b4098dh
+dd 0c24dcb6fh
+dd 01e257306h
+dd 0aa1b6d40h
+dd 05ae4c8a7h
+dd 0a1a92953h
+dd 0d026a39ch
+dd 0b6c79a3fh
+dd 04de08fd8h
+dd 0c4a2462dh
+dd 0542a1d11h
+dd 006be5553h
+dd 0ecfec811h
+dd 06088ca54h
+dd 079fdd722h
+dd 0c5d5802fh
+dd 06bd5b518h
+dd 0c261e28bh
+dd 0ea3fc9e7h
+dd 0d0ae3bcah
+dd 07ce54acch
+dd 05f2534b7h
+dd 0e90259e4h
+dd 0ff585be5h
+dd 0b63c0fa8h
+dd 02e9b437dh
+dd 0fb63ac02h
+dd 0cdfb11b3h
+dd 09ede9e6ah
+dd 0e2a133f9h
+dd 08c53e1f2h
+dd 061f99c1bh
+dd 07dccd638h
+dd 0bc5025f5h
+dd 094d99210h
+dd 0f17a3847h
+dd 010eb80c4h
+dd 0ca155e20h
+dd 003ffb7d0h
+dd 030fee6a2h
+dd 085dec80eh
+dd 011e67411h
+dd 02a985eech
+dd 0439d4dc4h
+dd 0205fadd1h
+dd 0b533fb72h
+dd 09f76a202h
+dd 0ec850bf4h
+dd 04b0ccc82h
+dd 03fefb211h
+dd 0dca04b0fh
+dd 0e7c87224h
+dd 0eb1ab143h
+dd 01953d1eeh
+dd 0f06a34adh
+dd 037ba2a3ah
+dd 06aac90b6h
+dd 031f37f2dh
+dd 012860a68h
+dd 0cfda8bd8h
+dd 0fcae0225h
+dd 011b994c3h
+dd 02935cb23h
+dd 0496c1e0fh
+dd 0d2b8cd9ah
+dd 0639f7594h
+dd 0f6194b37h
+dd 0a3e61105h
+dd 0558749d8h
+dd 02ab5a366h
+dd 0c6e7f7afh
+dd 01bff0b05h
+dd 041a13816h
+dd 0f5da922fh
+dd 0d620cac1h
+dd 0cf87860ah
+dd 0adad91ffh
+dd 07d2ec083h
+dd 06640fd93h
+dd 038f86949h
+dd 0115a731ch
+dd 058f45475h
+dd 0b4aefdd7h
+dd 0082714d3h
+dd 0cedfd7e3h
+dd 012794e8eh
+dd 035c61293h
+dd 01beea2dfh
+dd 06859f2bdh
+dd 0a8f17469h
+dd 098ed97e8h
+dd 0f3874f09h
+dd 008260c0ah
+dd 00ba0a9bdh
+dd 05c65aa4bh
+dd 00a8d7076h
+dd 0dc8265b3h
+dd 023137874h
+dd 090e7a6bah
+dd 046fbf394h
+dd 0868dcf29h
+dd 0e48d7dadh
+dd 0f9175cceh
+dd 0b8c4f046h
+dd 0a39959dfh
+dd 0044b1dbch
+dd 0755a6b74h
+dd 0864d2622h
+dd 0b9f40681h
+dd 070d74e7fh
+dd 0157433afh
+dd 0f5022755h
+dd 0d7a0c54fh
+dd 0fafdeea6h
+dd 0b3b99997h
+dd 03593dc85h
+dd 0003321a1h
+dd 04834b924h
+dd 0546d057bh
+dd 09989eff7h
+dd 0ef62246ah
+dd 05eaeb70fh
+dd 052eabe95h
+dd 0ad5c3134h
+dd 097f1e269h
+dd 0daedf27ch
+dd 0b75b166dh
+dd 000326822h
+dd 0f93732b0h
+dd 08580b2f0h
+dd 01b7b29b9h
+dd 02428a0d9h
+dd 008ccbbf1h
+dd 0dcd40045h
+dd 0162800d4h
+dd 077c247a5h
+dd 0dc94201eh
+dd 02c8c8a56h
+dd 05f71ccf6h
+dd 0b54e0100h
+dd 0abd05595h
+dd 0e6a4e77fh
+dd 01714f791h
+dd 0eca22161h
+dd 0e7dfbdffh
+dd 07eea1221h
+dd 04723dd1ch
+dd 077726107h
+dd 00eedae3fh
+dd 0410beaa0h
+dd 0c1b0d03dh
+dd 0356bd2a1h
+dd 042c86924h
+dd 0720d3fcbh
+dd 05e6d2e28h
+dd 0a34e5246h
+dd 0ade94d30h
+dd 00fcfd51ah
+dd 0445f93abh
+dd 01cda743fh
+dd 0847970ebh
+dd 0e4352f3bh
+dd 0b45cd737h
+dd 074617a7ch
+dd 07a92e223h
+dd 066c1c00ah
+dd 05a8daf4eh
+dd 05bcc74e4h
+dd 0eec1c68eh
+dd 0d0fe1f36h
+dd 07ddaf90bh
+dd 01c3a31beh
+dd 01bf022b8h
+dd 0d8dcb959h
+dd 0249a6222h
+dd 0c3adf677h
+dd 0a8ec528bh
+dd 0507fc48eh
+dd 0c563f495h
+dd 014da39a2h
+dd 0567d9743h
+dd 010008ef7h
+dd 04b65fc06h
+dd 0d13856e0h
+dd 0616db274h
+dd 02ae52d01h
+dd 0d0b0dc9eh
+dd 0d9e92706h
+dd 0ce76feebh
+dd 03a9206a3h
+dd 0af039130h
+dd 0200a18ffh
+dd 068b566a5h
+dd 02bcea34bh
+dd 04a74022eh
+dd 0c66e1328h
+dd 0c2106411h
+dd 0da333499h
+dd 0fcfda4f0h
+dd 06a7a2a89h
+dd 02e2f5bcah
+dd 000894168h
+dd 026971593h
+dd 016506219h
+dd 0f13ac9c7h
+dd 02bdb147eh
+dd 0cf1b136bh
+dd 00da0e74ch
+dd 0a1e68a04h
+dd 01322b0ceh
+dd 0ead5ab84h
+dd 0928b5559h
+dd 0e4905317h
+dd 09b8bd2c2h
+dd 018a995ceh
+dd 03c56b936h
+dd 01eaf3b26h
+dd 0940b1ec6h
+dd 047686cb4h
+dd 0321adcfbh
+dd 07c98ebb1h
+dd 0c57b1345h
+dd 09186841ch
+dd 09d2c8b3eh
+dd 02b6d3135h
+dd 034d80e4ah
+dd 051ac1d3ah
+dd 08d496028h
+dd 067efb1b9h
+dd 0d5f763ach
+dd 0bd2a18d2h
+dd 0a6618582h
+dd 060f7623dh
+dd 0e33e0506h
+dd 03fd62814h
+dd 01dfad3ach
+dd 01e0c1f41h
+dd 0ef9c131ah
+dd 0d0b05ed7h
+dd 0a843e2adh
+dd 08f51b3b6h
+dd 05310e81fh
+dd 03d51e84dh
+dd 01a79f863h
+dd 0ca8486eeh
+dd 08061318fh
+dd 0fa27a84ch
+dd 0ab5f5af8h
+dd 0ab3dc0cch
+dd 0a03db71eh
+dd 0bf1e93a6h
+dd 0475752f0h
+dd 0ee91906ch
+dd 02ae296eeh
+dd 003967798h
+dd 0dfd8a426h
+dd 0c6fb9039h
+dd 0c4105102h
+dd 00c07fb56h
+dd 032e437e4h
+dd 0333d9a60h
+dd 0d7377295h
+dd 03f42f9e9h
+dd 08ad4a72fh
+dd 074c9686eh
+dd 099d765d8h
+dd 033e4ffe8h
+dd 059b96e98h
+dd 05a1fc38dh
+dd 0b48498b3h
+dd 0c42ae3dfh
+dd 01a567b93h
+dd 0562e43f8h
+dd 07ed338fch
+dd 0aaecebc1h
+dd 03ff4a98ch
+dd 0eed2d39fh
+dd 08740a84bh
+dd 0543354cah
+dd 00b14d0e5h
+dd 0dd537df9h
+dd 02c65a342h
+dd 02bf20c2fh
+dd 0d01d126bh
+dd 0e1feba0bh
+dd 047f97b28h
+dd 0105b2f59h
+dd 0e0259c49h
+dd 07ec45f4bh
+dd 07e8e2faah
+dd 0a9c49936h
+dd 080d1f38bh
+dd 085e9073ch
+dd 0398d70bdh
+dd 04cfe02b2h
+dd 0c5b07c38h
+dd 05782f35dh
+dd 0fa47692ch
+dd 050a0b419h
+dd 00d40cee7h
+dd 076496b57h
+dd 066940ba8h
+dd 04e759d45h
+dd 00ae947c5h
+dd 0f344ea7eh
+dd 011c173ebh
+dd 01cb778b9h
+dd 07b37bfe3h
+dd 0cd1e4d30h
+dd 08068fe77h
+dd 09320ec6bh
+dd 06c085924h
+dd 0fe8e3c29h
+dd 0515b9219h
+dd 0ce97ad21h
+dd 0d5c354f4h
+dd 025ddbb93h
+dd 05e756839h
+dd 0789901cfh
+dd 0bfe71217h
+dd 0a1ecd0f0h
+dd 04b134489h
+dd 027175672h
+dd 0ff67eec0h
+dd 09448b3dfh
+dd 099cd7994h
+dd 0f70a37ach
+dd 0c3b6fab1h
+dd 09be31e44h
+dd 02b724a2ch
+dd 04f6bfe15h
+dd 023dea40bh
+dd 075d6b418h
+dd 04d0c8206h
+dd 07d09a3f9h
+dd 0cc945f6fh
+dd 049d60b93h
+dd 02d35d1bch
+dd 0fb05f32dh
+dd 01dbce425h
+dd 0dd45ea78h
+dd 079383aafh
+dd 0eb4c7504h
+dd 016b4e7bah
+dd 0098cd260h
+dd 0c33dc67bh
+dd 0ac31c992h
+dd 096926a10h
+dd 0cfd5ba67h
+dd 03144d575h
+dd 009fb7858h
+dd 0ca6288bch
+dd 0fff313bch
+dd 0717f698eh
+dd 0beac579eh
+dd 0093c436bh
+dd 0a13efdc6h
+dd 004a4f1e3h
+dd 0021acbech
+dd 0c0578bbch
+dd 030e0c9bdh
+dd 08b15274ch
+dd 050046fdeh
+dd 0050f47bbh
+dd 044b57c90h
+dd 001852217h
+dd 091e08e69h
+dd 0e7118918h
+dd 0b043b6aah
+dd 045a326bfh
+dd 02d70b803h
+dd 070e1ea77h
+dd 0e1f8355eh
+dd 0e640925dh
+dd 02cf74272h
+dd 08f29b3cbh
+dd 054e528f9h
+dd 08b8d1d09h
+dd 02f97a17ah
+dd 045d2543fh
+dd 0974245d9h
+dd 05aed43b0h
+dd 010661dcfh
+dd 0d389146eh
+dd 00dc88c7ah
+dd 067221780h
+dd 006bf90bbh
+dd 02e85e08eh
+dd 058c6c728h
+dd 0634f11aeh
+dd 0a2001332h
+dd 045c7f755h
+dd 0c460b084h
+dd 0ec60aa55h
+dd 0a583f0c6h
+dd 05e722cd0h
+dd 0f0de5b2dh
+dd 0ec10b3a6h
+dd 09fee9f01h
+dd 0a382c9dbh
+dd 06a3cf375h
+dd 0adeeea0eh
+dd 03fb2a897h
+dd 00d7ed122h
+dd 09f555672h
+dd 073ffb8c0h
+dd 0af50bbb9h
+dd 0e2130f94h
+dd 0289164a8h
+dd 01889bac1h
+dd 0c06083a4h
+dd 07f48d511h
+dd 0f1284f58h
+dd 0e797027bh
+dd 0c7a6f4ddh
+dd 0cc675baeh
+dd 0ac576c6ah
+dd 0ffe2a8a9h
+dd 090bf90c3h
+dd 07feaf1f6h
+dd 0538cb2c5h
+dd 037f6144dh
+dd 03e6f7575h
+dd 08a294cefh
+dd 03cd60a11h
+dd 05d18e96bh
+dd 0a7252ebfh
+dd 0688deefch
+dd 0bb4d3cabh
+dd 0caf002bfh
+dd 09718964fh
+dd 027442915h
+dd 0f0d4cef9h
+dd 0e02a71c6h
+dd 0f2832518h
+dd 06415bc8eh
+dd 0728f5ed6h
+dd 065f39293h
+dd 0c066b42dh
+dd 0cb4eb957h
+dd 011ec53c0h
+dd 0cf3ef0cdh
+dd 010bd32cbh
+dd 05d2793a7h
+dd 02ed7d512h
+dd 04da1c4cch
+dd 04b3c1625h
+dd 0edf44381h
+dd 0a49099f7h
+dd 0cf334ff1h
+dd 0acc482deh
+dd 08da44bdbh
+dd 0f855d320h
+dd 0e4ef4146h
+dd 07897b406h
+dd 0131ec9b3h
+dd 0281d72eah
+dd 056e498d1h
+dd 0df5a4c9ch
+dd 0cae1025ah
+dd 07a7fc93dh
+dd 00c0c2f4ah
+dd 09b43ab5fh
+dd 019e70771h
+dd 02aff548ch
+dd 0b0086f72h
+dd 04ffa94f5h
+dd 0cd838c76h
+dd 0ca4b76cch
+dd 0159955fdh
+dd 0719b53b7h
+dd 081afdd2eh
+dd 0885aad13h
+dd 0ea98f777h
+dd 075110679h
+dd 0119563a7h
+dd 002d630d4h
+dd 04d336657h
+dd 0f6e089b8h
+dd 07cf4f4b5h
+dd 08b092726h
+dd 07ff9a44ch
+dd 03efd4e23h
+dd 0d3641c4eh
+dd 009b9b655h
+dd 00211e941h
+dd 025171f00h
+dd 0012bd002h
+dd 0d367a0e9h
+dd 0a119790bh
+dd 0f9747f11h
+dd 098ec198dh
+dd 003ade575h
+dd 08aff8e67h
+dd 0df65cd46h
+dd 0eecbb2adh
+dd 01eec7620h
+dd 00d152d21h
+dd 0aa9c9aeah
+dd 023305c98h
+dd 0b7a115a8h
+dd 00bfdbea9h
+dd 08483dbd1h
+dd 000316b7fh
+dd 0a00d90f6h
+dd 0536e3e38h
+dd 0f5ac0870h
+dd 070cb31e8h
+dd 0dbb7822bh
+dd 0a91f0444h
+dd 088f56c82h
+dd 00e9205fch
+dd 02a063394h
+dd 012120fe2h
+dd 0f3a74057h
+dd 031ba39ech
+dd 0679cc411h
+dd 0d067a980h
+dd 0552391b0h
+dd 037d388edh
+dd 037058563h
+dd 071f6f3a5h
+dd 0ad43be42h
+dd 01b290799h
+dd 005fd3c85h
+dd 0d12ad933h
+dd 083478a5bh
+dd 04d949439h
+dd 0b181b7edh
+dd 0f9769891h
+dd 00dbc2412h
+dd 097efcc6dh
+dd 019debfd6h
+dd 0f5c0af88h
+dd 04389ebfbh
+dd 0c2747166h
+dd 0ef903477h
+dd 0f2ab7e1eh
+dd 04552c645h
+dd 06c63c706h
+dd 012dd65d9h
+dd 0a681bf9fh
+dd 058da9da6h
+dd 0e0439d7dh
+dd 07255e396h
+dd 0ddc03281h
+dd 0b4eadb4fh
+dd 0bf01eb12h
+dd 01624d5a9h
+dd 06aae5b1dh
+dd 0fbb53843h
+dd 07bc1a17bh
+dd 0e259fd9bh
+dd 06d925d66h
+dd 0f85e8391h
+dd 0f87632e3h
+dd 0795aef74h
+dd 0475f5d47h
+dd 02e24b504h
+dd 0aa47a510h
+dd 004b9c4d9h
+dd 0c850ebfah
+dd 09b5a3dabh
+dd 066226dadh
+dd 0e586e6d1h
+dd 0ff24c2f9h
+dd 090140f86h
+dd 0ea12d9a1h
+dd 005a046cch
+dd 0bc27a806h
+dd 0c6995fdch
+dd 03b5c11a4h
+dd 051bad897h
+dd 01a8f96fbh
+dd 076ae28e3h
+dd 0a2b0009ch
+dd 04d183985h
+dd 078155824h
+dd 08b7b7da9h
+dd 0a1bfe8c9h
+dd 094b4367bh
+dd 072d114c8h
+dd 0e6871160h
+dd 01e990d88h
+dd 0a207de1dh
+dd 093e5b409h
+dd 0ea1a5190h
+dd 016a20c11h
+dd 00eb8b85ah
+dd 08ea3ea9ah
+dd 00a3ffde9h
+dd 09f13d391h
+dd 020e89018h
+dd 0d5e6c493h
+dd 039a72ee6h
+dd 0f08e6197h
+dd 0fdcd6668h
+dd 04afc4e7ch
+dd 0b0f04929h
+dd 02a168dd8h
+dd 0ad6ede06h
+dd 021616f8eh
+dd 0f21f652bh
+dd 0453acc09h
+dd 091725a97h
+dd 054289b0ah
+dd 088a430c0h
+dd 0023802adh
+dd 059573b61h
+dd 03032a3cbh
+dd 09fb44ccbh
+dd 0b4efbc70h
+dd 0341e3ac2h
+dd 003bd1d79h
+dd 0c3296405h
+dd 01a2d93ach
+dd 0c5567f6bh
+dd 0568f8fe9h
+dd 0b07d230dh
+dd 0df7b01a8h
+dd 0d5636b4dh
+dd 02ae4b317h
+dd 030d8609dh
+dd 0e32931fdh
+dd 0b29f4972h
+dd 016818909h
+dd 030675d26h
+dd 05d946083h
+dd 0474ce528h
+dd 0c8b8d47dh
+dd 0b824999ah
+dd 0c88da754h
+dd 0ff14eb5ch
+dd 0c5fa77bfh
+dd 0c9351d7bh
+dd 0fdcb4262h
+dd 04a88b661h
+dd 07a10a349h
+dd 044ec7fdch
+dd 099ee4528h
+dd 038e933bdh
+dd 054e32872h
+dd 0d8daf6abh
+dd 02672c862h
+dd 09f6f2fe5h
+dd 09c0909e1h
+dd 0ba01f330h
+dd 0e10f16c7h
+dd 030a73470h
+dd 0f8cebdfdh
+dd 024191bach
+dd 0ee2f9f35h
+dd 0c9f1ab06h
+dd 057334dceh
+dd 0a3c14f10h
+dd 0b678a50bh
+dd 0ec9e8a11h
+dd 03a378621h
+dd 046856985h
+dd 04ec07652h
+dd 0d670b777h
+dd 02250a78bh
+dd 0dbe4ca15h
+dd 03c81352dh
+dd 0de718816h
+dd 0f24a7c36h
+dd 0fbfaf10ch
+dd 054b299f3h
+dd 0b2d58723h
+dd 09516b643h
+dd 0c9d342abh
+dd 0e039bf74h
+dd 0e3388ae5h
+dd 0bae5b673h
+dd 09ce8fabbh
+dd 0e7db1e00h
+dd 0d4a8b6bah
+dd 0c842fda4h
+dd 09c5e14cch
+dd 0b26e1c2bh
+dd 097d2f823h
+dd 089570232h
+dd 04db3bf44h
+dd 0efdab235h
+dd 0cf6c1c42h
+dd 01bd4d6d7h
+dd 001251527h
+dd 0452a270dh
+dd 087f4a179h
+dd 0f807c8d6h
+dd 0d7586f17h
+dd 041aa5642h
+dd 09a6b3eaah
+dd 08a5ee4bdh
+dd 0293ed457h
+dd 0ab457d9bh
+dd 002ef3b21h
+dd 020cc1366h
+dd 079b1b4d3h
+dd 0f686f964h
+dd 097ef5d83h
+dd 06b4df264h
+dd 0e282f0fbh
+dd 023462acbh
+dd 0cca28177h
+dd 0138e233ah
+dd 0f1249ce9h
+dd 04cb5cd26h
+dd 0ac95e299h
+dd 098030f23h
+dd 0c736555fh
+dd 03a41b6fch
+dd 0f9facf04h
+dd 0f1e4816ch
+dd 0782c2125h
+dd 03f811ac1h
+dd 0ecf968efh
+dd 0d599c046h
+dd 0e756f38fh
+dd 09cdbc45dh
+dd 077579640h
+dd 0bcb3ca60h
+dd 001eb5ecdh
+dd 022c6ef2ah
+dd 052cf3784h
+dd 0dc15207bh
+dd 05de8964dh
+dd 0f6f6c3f2h
+dd 0a4dac491h
+dd 0c43bc1e1h
+dd 08e4991f1h
+dd 051a2355ch
+dd 029abb7c9h
+dd 045dc3fech
+dd 0bf779237h
+dd 067f11280h
+dd 01127425fh
+dd 072b59cbfh
+dd 030c17d3eh
+dd 0da207c6dh
+dd 05b8d56d2h
+dd 024c90261h
+dd 04f02425eh
+dd 085b7d2ffh
+dd 0d5645b64h
+dd 01a697398h
+dd 0c5709581h
+dd 0c3b02b00h
+dd 093e18355h
+dd 0944e8f5fh
+dd 047dcdbc9h
+dd 0f27cfc46h
+dd 045b29ddeh
+dd 0b7889f18h
+dd 0cc193520h
+dd 05d978f10h
+dd 0a7b19044h
+dd 0921519d8h
+dd 0ac44dfa1h
+dd 085850a7ah
+dd 030024fe8h
+dd 0d67779bdh
+dd 097e971f4h
+dd 0cc7be859h
+dd 07919beabh
+dd 051acd874h
+dd 0510763f6h
+dd 0f65895b9h
+dd 027cb60fah
+dd 0de9c448fh
+dd 0f653d3fbh
+dd 0edb7ce82h
+dd 08a6d171ch
+dd 0ffc64034h
+dd 06ded51d2h
+dd 0027dbb59h
+dd 0ca74d7bah
+dd 0cdf990eah
+dd 0d9960073h
+dd 084746551h
+dd 07cf3ff88h
+dd 0271d1eadh
+dd 07400ac80h
+dd 0597db0eeh
+dd 0a2d08ae8h
+dd 0f47b1e39h
+dd 000836d95h
+dd 0c8f01ae7h
+dd 07fe0e0c2h
+dd 05356ea89h
+dd 04c707feah
+dd 081357875h
+dd 0ce17f62eh
+dd 0c554f6deh
+dd 0942217a9h
+dd 06c72d612h
+dd 081c1b3a2h
+dd 07456c7dbh
+dd 0cf494c38h
+dd 0d7b9b480h
+dd 05623ace7h
+dd 0d48dd0e1h
+dd 06d08ef2ah
+dd 04ba0b5fah
+dd 090aa9458h
+dd 0a16d47dch
+dd 09f9265cdh
+dd 02cc1ef74h
+dd 07a6e844ah
+dd 029dba47ch
+dd 0ffd0d87dh
+dd 0989531f5h
+dd 0735c9987h
+dd 0de6b3012h
+dd 0e677b597h
+dd 0fb566792h
+dd 0efd352edh
+dd 06427ff46h
+dd 063b6cfc6h
+dd 007b19d2ah
+dd 0e2323b60h
+dd 065f77bfch
+dd 06468bb2ah
+dd 0800f1b98h
+dd 0d80e188bh
+dd 0da315803h
+dd 08d5c2c58h
+dd 07f930a74h
+dd 03d9194d8h
+dd 0cb3b4c56h
+dd 0a97aefech
+dd 034d2b760h
+dd 0a6ccda26h
+dd 0c84f8ddeh
+dd 0113b0ff6h
+dd 01969bb67h
+dd 0596701abh
+dd 085de1f06h
+dd 09b132227h
+dd 0a9490208h
+dd 01e357924h
+dd 0116f2222h
+dd 0fdb71170h
+dd 0fd714264h
+dd 0acc72922h
+dd 007ace6aah
+dd 0cf77adf4h
+dd 047d222f6h
+dd 095dc55eeh
+dd 014e31b07h
+dd 0d0f69452h
+dd 0ae2d153ch
+dd 011098664h
+dd 01ebbbe5eh
+dd 037c93bb6h
+dd 0fd5f6390h
+dd 04d4a7322h
+dd 035335543h
+dd 081a7307fh
+dd 08a8b5b77h
+dd 084d64ddfh
+dd 061aa8395h
+dd 09174e8aah
+dd 0eb88e82bh
+dd 042c50916h
+dd 0bc91f5b2h
+dd 06c5d9abch
+dd 0b8c31354h
+dd 0ae10f430h
+dd 0a75e8498h
+dd 0453e0189h
+dd 0acd6873fh
+dd 06af78a0bh
+dd 0af64ab5dh
+dd 01876edf5h
+dd 0d9651e1bh
+dd 0c807104eh
+dd 060afa043h
+dd 004858222h
+dd 0450bacdch
+dd 0009ffed9h
+dd 090639218h
+dd 0ab0b7726h
+dd 00d50c68dh
+dd 0c1c79549h
+dd 07a6fda2bh
+dd 03b9c10a9h
+dd 00874ba6dh
+dd 0de9afd1fh
+dd 073a7c07ah
+dd 0954d38b5h
+dd 05e124cd8h
+dd 04ef51555h
+dd 0585a4bd1h
+dd 01178bca0h
+dd 02411c28ch
+dd 08cfe8528h
+dd 0764ad1a0h
+dd 0406793aeh
+dd 06116b472h
+dd 0a1b4c9cbh
+dd 0ae51c441h
+dd 08d7185dbh
+dd 0164f39d3h
+dd 0f250b159h
+dd 0bb357bd2h
+dd 0a227b644h
+dd 0f021271bh
+dd 0b01857fah
+dd 05b519be0h
+dd 061a5ee6dh
+dd 0e81ba86dh
+dd 03047f6c1h
+dd 092ee8bdch
+dd 0011f923bh
+dd 056df656fh
+dd 0baa49a8ah
+dd 05ca9e6f4h
+dd 0e6576d1ah
+dd 0c4829604h
+dd 055064869h
+dd 06a8d0e55h
+dd 07ce43ecfh
+dd 014d33e75h
+dd 07918b02ah
+dd 01445b2afh
+dd 086bff30fh
+dd 0a5684e26h
+dd 0b9377be1h
+dd 092ec90adh
+dd 04d5e2e8bh
+dd 057108e6fh
+dd 037e87ec0h
+dd 060f0c516h
+dd 00a43e86ch
+dd 0e72ff3fbh
+dd 037d03f85h
+dd 00e3319c1h
+dd 04f316d8eh
+dd 0d8bc56ffh
+dd 050420bc0h
+dd 00832cf3bh
+dd 036a791bfh
+dd 073c94d42h
+dd 00be8e91dh
+dd 0cf14da26h
+dd 064edf5c0h
+dd 0e7c412fch
+dd 05ca5b5dch
+dd 0d3ba3187h
+dd 0090e36d6h
+dd 008cd1eeeh
+dd 017624ee9h
+dd 03e7fc940h
+dd 0850821bfh
+dd 0474c4936h
+dd 030b242e5h
+dd 037551cb9h
+dd 01d556ee0h
+dd 073f52833h
+dd 06b33b5a4h
+dd 059cc5510h
+dd 0feb0e6ech
+dd 01e88318fh
+dd 0ee8e06f1h
+dd 014eed443h
+dd 079c58401h
+dd 0c1b84107h
+dd 0042a3fb0h
+dd 0d59e0f95h
+dd 0b6de24b9h
+dd 06fff02dah
+dd 001dfd7b3h
+dd 00adf386ch
+dd 012e809b2h
+dd 06b5966fbh
+dd 005d464e8h
+dd 0bb438881h
+dd 0399149b5h
+dd 02fd03b23h
+dd 0eb0ca627h
+dd 020f49b5fh
+dd 07dffa772h
+dd 0e5be4988h
+dd 0acd8f850h
+dd 0cd4289a9h
+dd 04aea2cb3h
+dd 0d339eb82h
+dd 0937d086dh
+dd 039038b55h
+dd 0faf17624h
+dd 0ab87d28ah
+dd 02c644656h
+dd 0abea9bebh
+dd 07dd5a079h
+dd 084838355h
+dd 00a3e8b6eh
+dd 0da10d046h
+dd 07f862d36h
+dd 053fc80adh
+dd 0fc8c373eh
+dd 048ed5398h
+dd 0cad9e6a1h
+dd 0facad0afh
+dd 05a9fbeach
+dd 0dffef607h
+dd 0446338f7h
+dd 0a32408d9h
+dd 05daf08dbh
+dd 0d1da1583h
+dd 017605810h
+dd 030facfa6h
+dd 0fd45fa9fh
+dd 07366a648h
+dd 0a3225934h
+dd 0d347db3dh
+dd 0453698dbh
+dd 0c0a85044h
+dd 069c45be7h
+dd 0d910e221h
+dd 012d3c8adh
+dd 036aa4585h
+dd 023a6895ah
+dd 0fe594a77h
+dd 0646abb08h
+dd 0c4359140h
+dd 08beec479h
+dd 0ddecdb9ch
+dd 0e05ffeddh
+dd 01106cb7ah
+dd 0976ad6dfh
+dd 0871d700fh
+dd 0ce891e39h
+dd 0c9cbe5abh
+dd 09cb11445h
+dd 054ee813fh
+dd 092ec2082h
+dd 088abed99h
+dd 086e01415h
+dd 0bf6f2e9bh
+dd 0bd00e339h
+dd 0ea3b4e53h
+dd 023605d2bh
+dd 064ba651ch
+dd 04525e50bh
+dd 0dda8c673h
+dd 0e874af03h
+dd 079f7fbc3h
+dd 09d6c8bf6h
+dd 04408db20h
+dd 09d362669h
+dd 0996db5adh
+dd 0a8ad8cc5h
+dd 0ea4a67e5h
+dd 0df88df37h
+dd 03d8fe318h
+dd 0c55adc5bh
+dd 04244b02ch
+dd 0ad789ee2h
+dd 0eb8c2224h
+dd 06427dbbdh
+dd 086da033ah
+dd 0e888d29ah
+dd 0971c35b3h
+dd 0218f17dah
+dd 0d5a5432eh
+dd 0ee914725h
+dd 025337f58h
+dd 072dc1289h
+dd 04b8cb50ah
+dd 0dcda5865h
+dd 0bab51f80h
+dd 05af84fe7h
+dd 087b553e7h
+dd 033e4a7f8h
+dd 0dbdbf5b4h
+dd 070f36ca8h
+dd 0e208de4ah
+dd 0dcdad8bdh
+dd 0d2ad5f4ch
+dd 0f2703dfch
+dd 03416b570h
+dd 0a61e5009h
+dd 01b0c6e63h
+dd 09ac707c7h
+dd 01fedcf27h
+dd 0a9bb18abh
+dd 0a78b2650h
+dd 01bb604f8h
+dd 09eea4b04h
+dd 00c893f7ah
+dd 09e9d77f6h
+dd 0102dcf74h
+dd 011791abah
+dd 0291ff03dh
+dd 01f2f1f37h
+dd 0cf3f7dafh
+dd 0e93b3945h
+dd 0d76231e3h
+dd 0cfe0ef22h
+dd 027c270b6h
+dd 0b5499c30h
+dd 0f1032a5bh
+dd 070966f5ch
+dd 07d4fe647h
+dd 0366633b7h
+dd 0bcbc8e60h
+dd 0dee8a5ebh
+dd 05c5bbb07h
+dd 0d9c8e1fch
+dd 0dfe9bc12h
+dd 0d662a9f6h
+dd 0c1668c89h
+dd 05847fd95h
+dd 079b1e8bfh
+dd 08c5b0247h
+dd 079d08fd9h
+dd 01477dea2h
+dd 0738032fch
+dd 0b4d73487h
+dd 0ea6f6343h
+dd 073d0f2c0h
+dd 01cd3372fh
+dd 086d52af0h
+dd 020679930h
+dd 0607025c5h
+dd 00c461705h
+dd 002c58852h
+dd 040eeb155h
+dd 07be2babah
+dd 04e9bd2d4h
+dd 086ac73dah
+dd 04c82842fh
+dd 0c5c9ccfeh
+dd 0772d1ca2h
+dd 043741c58h
+dd 0d8617dd9h
+dd 057befeedh
+dd 05b8438a5h
+dd 0a04649ebh
+dd 09eb2c198h
+dd 0fe0a3cc7h
+dd 0039111e1h
+dd 07dafd0fdh
+dd 0f8968e1ah
+dd 01c8cf820h
+dd 02d3aff38h
+dd 0d5bf55d6h
+dd 03a7869b1h
+dd 08cd296fbh
+dd 0c6f8585bh
+dd 031268385h
+dd 09621a416h
+dd 06ef6cb69h
+dd 0f39ba67ch
+dd 050549d65h
+dd 071214205h
+dd 0702d54d5h
+dd 0c600cc26h
+dd 0a881ea4ch
+dd 0106dbf04h
+dd 038511e0bh
+dd 0e85d2019h
+dd 0bf0b6969h
+dd 03c9ef716h
+dd 0a0b51892h
+dd 07c38fadfh
+dd 0b8494069h
+dd 0eb4599efh
+dd 050832d8fh
+dd 0394ffd02h
+dd 0343bec32h
+dd 06ee21ec5h
+dd 00e0baf2ch
+dd 0616d58d0h
+dd 0da208f0fh
+dd 094811580h
+dd 05695eb7eh
+dd 020aca3a0h
+dd 0d81508c2h
+dd 02c619861h
+dd 07b066a08h
+dd 015f6b17eh
+dd 0e1791a15h
+dd 0bb0b6934h
+dd 0ade93745h
+dd 0d87c30e5h
+dd 07876531ah
+dd 0ec368d0dh
+dd 0e17cb75dh
+dd 04a409f0eh
+dd 0f862b72eh
+dd 04252aec9h
+dd 04bbc1f1bh
+dd 0411e1e37h
+dd 021c97e96h
+dd 0c4a28838h
+dd 06bf2ffd5h
+dd 047c08e25h
+dd 075683a64h
+dd 06cec586fh
+dd 0d3304f91h
+dd 08db76424h
+dd 07a5def52h
+dd 0cc9e19b5h
+dd 041aff921h
+dd 0b4fe8f77h
+dd 0ab678666h
+dd 092f5ecabh
+dd 050264efah
+dd 0784ef56eh
+dd 0847e160ah
+dd 01762bbf3h
+dd 09d28116bh
+dd 0dff3a54dh
+dd 00beaa13fh
+dd 09423d2eah
+dd 0fe670c1dh
+dd 0ef15c21ch
+dd 0c323e21bh
+dd 042395a87h
+dd 06c336318h
+dd 0f852506ah
+dd 0a66a6e4ah
+dd 0a8422382h
+dd 07dd1ea12h
+dd 0f3592dc5h
+dd 0b95d7a6ah
+dd 051272b10h
+dd 0453630dah
+dd 099dc162dh
+dd 089e63229h
+dd 031be2fd6h
+dd 04d4bd367h
+dd 04fbd8ddah
+dd 0b8903345h
+dd 05d6b4abah
+dd 037d2e8dch
+dd 00e93b16bh
+dd 0c0eeedc4h
+dd 08489ac9fh
+dd 0f88ed52ah
+dd 0078dd97fh
+dd 075bc5af2h
+dd 0fa5a3211h
+dd 0699beb79h
+dd 0dbac97cdh
+dd 07a668f65h
+dd 0916f5b2eh
+dd 00519cfc4h
+dd 09659bc3dh
+dd 058796a7fh
+dd 06564502fh
+dd 0793bb4f9h
+dd 0c379b47eh
+dd 07d9f5372h
+dd 0377a6b4dh
+dd 05c49990ah
+dd 04e4bdbdbh
+dd 00cada312h
+dd 0809e6289h
+dd 02716dc78h
+dd 02ece89d3h
+dd 00cc1dbddh
+dd 0813ae566h
+dd 0690e3c4fh
+dd 04c1cbef3h
+dd 0148d2b29h
+dd 050d36396h
+dd 0022a06d4h
+dd 0a62be30dh
+dd 023ef74c4h
+dd 015a05be5h
+dd 001eede0bh
+dd 0a3f1e0ddh
+dd 083603d1ah
+dd 08f5356b4h
+dd 0ad577d4fh
+dd 0cd8a67e7h
+dd 02df170adh
+dd 0a4357001h
+dd 0290f21c5h
+dd 09a7be041h
+dd 012721bb8h
+dd 07020d728h
+dd 0e351b023h
+dd 07db80365h
+dd 0793e7861h
+dd 0276a586ch
+dd 0ea2e667bh
+dd 053acded2h
+dd 0a313eaf3h
+dd 092fdb9b8h
+dd 01f4e6503h
+dd 017bc8a98h
+dd 0cf72c6a5h
+dd 011581ee1h
+dd 0103b6a3bh
+dd 027ef8819h
+dd 0cfb0c134h
+dd 076b09339h
+dd 0233dbfbbh
+dd 0e184899eh
+dd 015be4bf5h
+dd 0bc5446edh
+dd 03c4f7385h
+dd 06e4c976ch
+dd 0dab22b1bh
+dd 012dc90f0h
+dd 09e8bdbb0h
+dd 01b8ba036h
+dd 0c01d09a6h
+dd 0b23a6c4fh
+dd 0ea1f461ah
+dd 0760e96f0h
+dd 06eb90188h
+dd 0bfc8a77ah
+dd 09d0eb372h
+dd 006584605h
+dd 0e3dd989bh
+dd 064752e73h
+dd 018eccad3h
+dd 0b760116fh
+dd 0f5f57a11h
+dd 02afde95ah
+dd 0da6f2e6eh
+dd 0a81fd99eh
+dd 0bada66bch
+dd 0df987da6h
+dd 017e611a6h
+dd 064e781c1h
+dd 0444d616fh
+dd 04d21e525h
+dd 0b33a1392h
+dd 023187928h
+dd 0173c68a3h
+dd 054256445h
+dd 0a61b07cch
+dd 0f7dc081fh
+dd 0d2068a6dh
+dd 0707c8276h
+dd 0e972f8cfh
+dd 018422f3fh
+dd 0c511a270h
+dd 0af28ea1bh
+dd 0468e1bb7h
+dd 0d0db9da6h
+dd 072278473h
+dd 0f03e9508h
+dd 0f4b5e34bh
+dd 097b156a3h
+dd 0b44ee5d0h
+dd 06a418308h
+dd 08340bcddh
+dd 030a6e024h
+dd 0a26bb4b4h
+dd 00bedf25dh
+dd 073e70530h
+dd 0c338f9c3h
+dd 0519951b6h
+dd 0b28e7abeh
+dd 0cea6ab1dh
+dd 06e02f147h
+dd 0ed7fcd14h
+dd 032f00100h
+dd 027bfc31ch
+dd 0e58129c5h
+dd 0586f01abh
+dd 07d11f8ddh
+dd 09877f445h
+dd 0b6e12695h
+dd 086eba164h
+dd 071c643dbh
+dd 02d07b4dbh
+dd 0eb4fde4ah
+dd 068e20950h
+dd 0e4e525c7h
+dd 0e2cbeddbh
+dd 0070a9e20h
+dd 025d84f82h
+dd 038d08959h
+dd 027d9dbaeh
+dd 0d37d001bh
+dd 0f796dd92h
+dd 0a9e80517h
+dd 01d09bef2h
+dd 00bd8ebedh
+dd 0fc1b92b9h
+dd 0d314364fh
+dd 0c80357ceh
+dd 0a89992ach
+dd 09b9679cfh
+dd 052b13eebh
+dd 08652f61fh
+dd 05431fa0bh
+dd 04b2e5e28h
+dd 0e3f783b1h
+dd 06372120ah
+dd 018d20da2h
+dd 0e2457ca5h
+dd 0fcd29477h
+dd 067435ea9h
+dd 05cf741f9h
+dd 064b03939h
+dd 0bad43e83h
+dd 0e765a7beh
+dd 08b80b8e1h
+dd 0772bf08ah
+dd 085b5997dh
+dd 0f325419eh
+dd 065a07530h
+dd 0fbfd3889h
+dd 060e0099bh
+dd 0d1a10947h
+dd 0773edddch
+dd 0d404a230h
+dd 0d235a0b9h
+dd 0c23a26b6h
+dd 0a233c623h
+dd 0f6a9ff72h
+dd 00b4ea394h
+dd 0d5579c20h
+dd 000f43c36h
+dd 0a1da244bh
+dd 008f2707ah
+dd 051aacf22h
+dd 0d8ae8cf3h
+dd 0acd1b1d6h
+dd 06dfd5881h
+dd 01095287ah
+dd 045bf5a8ch
+dd 0d32a757bh
+dd 0e37575cah
+dd 082590b48h
+dd 0050cb5cbh
+dd 05693ee32h
+dd 05c8ba578h
+dd 081dac1b8h
+dd 0f0a583edh
+dd 05af10449h
+dd 052d138dfh
+dd 0b59f3af8h
+dd 0030a6213h
+dd 0cde66214h
+dd 0eec77e5bh
+dd 0f4c983c2h
+dd 01e6afd5fh
+dd 076bfaddeh
+dd 0e3e04626h
+dd 0920c2e34h
+dd 0129876a1h
+dd 000a69447h
+dd 0197676d1h
+dd 0376b1a29h
+dd 0c649970ah
+dd 0ac177f3fh
+dd 017fc0014h
+dd 099b12052h
+dd 0104b4fc6h
+dd 03caf4fb8h
+dd 076b4a1d3h
+dd 08b99506dh
+dd 09bb98d2ch
+dd 0c055cb4eh
+dd 0a8b3831ch
+dd 060783e56h
+dd 04c2d9cddh
+dd 005a51af3h
+dd 0192d8ae4h
+dd 03ca0955eh
+dd 0d20dfe17h
+dd 0171e5323h
+dd 0f8b636b9h
+dd 01f0acea2h
+dd 05e73acc4h
+dd 03e49ad93h
+dd 0662a5f55h
+dd 0b67e6c56h
+dd 0bade512ah
+dd 069bc63deh
+dd 08de3154bh
+dd 0d1d317b2h
+dd 045c1776eh
+dd 04ea07e56h
+dd 0f0850f03h
+dd 065d8e1d0h
+dd 061e1907ah
+dd 00f109e7dh
+dd 0b1398b22h
+dd 003e5cf74h
+dd 0cda2a293h
+dd 03dc6b2bfh
+dd 0954cad47h
+dd 0a30277ffh
+dd 0f3f12d54h
+dd 0340c2a2eh
+dd 06f9621fdh
+dd 0a12bef51h
+dd 09fbcbadeh
+dd 02e00ac92h
+dd 0ecf272e4h
+dd 09d422e1ah
+dd 003b13a43h
+dd 06d4e8392h
+dd 044cc3f1eh
+dd 0d733cb36h
+dd 044982db7h
+dd 013bd0e01h
+dd 0d65c742ah
+dd 0ee7e426ch
+dd 0a1ea9358h
+dd 0dc3b64dch
+dd 0eb25ee2fh
+dd 00886be7dh
+dd 0a49819d3h
+dd 0a0a7c544h
+dd 0b12b2c01h
+dd 0a6937bfeh
+dd 0dad12eb8h
+dd 0dc97a803h
+dd 0c2ea7e69h
+dd 0a13e1ee9h
+dd 0a8d3a59ch
+dd 08b878cc5h
+dd 0e15a8f0eh
+dd 00c13a8afh
+dd 04e0bf247h
+dd 02054e24dh
+dd 0e1e419e5h
+dd 093f3fe66h
+dd 0302a0376h
+dd 02c14bcf2h
+dd 0aae2d734h
+dd 00f22f0abh
+dd 023c637abh
+dd 0cf7264fbh
+dd 00e0ee722h
+dd 0ad90ea4fh
+dd 0aca1b0f5h
+dd 0f41dc53fh
+dd 04e44a504h
+dd 04b49ec08h
+dd 02934ed56h
+dd 05ba49c65h
+dd 0a8159ee1h
+dd 0527c42bdh
+dd 00564a13ah
+dd 0929ba951h
+dd 08b40ebd4h
+dd 06112d794h
+dd 09dc2d6d2h
+dd 00fb38dcah
+dd 090885890h
+dd 08be5f523h
+dd 0be1f57b4h
+dd 0e702bf68h
+dd 04cd87bdch
+dd 00484d3f5h
+dd 00eba80c0h
+dd 0302ed4bdh
+dd 039890a7ch
+dd 059468590h
+dd 097493a25h
+dd 0b859568fh
+dd 0ac32055dh
+dd 05422236ch
+dd 0bec40da8h
+dd 04bfa3d85h
+dd 037b10823h
+dd 0964d6118h
+dd 0d4e13174h
+dd 00f2ab0e2h
+dd 0cf42b0bdh
+dd 05d688222h
+dd 0febbf144h
+dd 04c2eefafh
+dd 05fe2e01dh
+dd 0a663691dh
+dd 0c5fc537fh
+dd 04fca899dh
+dd 0901f46cbh
+dd 09a999f97h
+dd 0731e26c1h
+dd 00d5f1bd2h
+dd 01ac15ef2h
+dd 05a224acbh
+dd 0c5c115c2h
+dd 0b56da960h
+dd 08b28dd65h
+dd 07a44cda0h
+dd 0eb1bcf8dh
+dd 09bab9932h
+dd 04e1615f9h
+dd 021eb7eb5h
+dd 099a14cb8h
+dd 0cb2587bfh
+dd 0abd79f71h
+dd 0790a01beh
+dd 068d02167h
+dd 0063d844ah
+dd 0929a8a71h
+dd 08bd72c2fh
+dd 0110356abh
+dd 02e962abah
+dd 0aedc5182h
+dd 0521b3f01h
+dd 031e6a934h
+dd 04a4edca8h
+dd 0b8bde248h
+dd 0e81753cdh
+dd 036cf2c64h
+dd 02d11321ah
+dd 0aaf1fa93h
+dd 044e830b1h
+dd 0534738e0h
+dd 0e8315acah
+dd 0a558cf80h
+dd 03bf72637h
+dd 0c542a7d0h
+dd 0e007eb35h
+dd 05497af82h
+dd 01c0a655dh
+dd 0ab111dbeh
+dd 044593edfh
+dd 001256fc6h
+dd 038655a71h
+dd 013280e8dh
+dd 0e98f69c0h
+dd 063052954h
+dd 00d2d99efh
+dd 0915bcadeh
+dd 0ea927773h
+dd 0f2806a2ch
+dd 0f49194a4h
+dd 001690efah
+dd 0561d8ee4h
+dd 0acd03f7bh
+dd 0a1dde453h
+dd 0a5127d8fh
+dd 0c22e8f20h
+dd 04e4470dfh
+dd 02288655bh
+dd 07c0512f1h
+dd 0e0bbb752h
+dd 014e59694h
+dd 0c7d41de5h
+dd 0655026f1h
+dd 0694669cch
+dd 017150045h
+dd 08e105d53h
+dd 04ade6fd1h
+dd 0440f8acfh
+dd 0fc503611h
+dd 0bcdea107h
+dd 05a63d454h
+dd 027ab4281h
+dd 03a7d7e38h
+dd 0e4f331f1h
+dd 0d830b3a1h
+dd 0377d92f0h
+dd 0ebdd02e8h
+dd 0051d9526h
+dd 0fb9adca6h
+dd 008e482c2h
+dd 06a164de2h
+dd 0914fe9ffh
+dd 05f88de27h
+dd 0545268a1h
+dd 04eb10f83h
+dd 05a4fb383h
+dd 0d4db0713h
+dd 0bc1f1048h
+dd 0615e2491h
+dd 0fa3faa3fh
+dd 0c843a1a6h
+dd 0e2f503bfh
+dd 0e494c06eh
+dd 0e969636fh
+dd 0ba7c2384h
+dd 0ce6191c7h
+dd 08847e07dh
+dd 0cd3f2d7bh
+dd 05ed57e08h
+dd 04233eaadh
+dd 0bc29ea2bh
+dd 0dcc556f4h
+dd 010ac3a4dh
+dd 0dd6a8131h
+dd 0874eb4f0h
+dd 07fdcb757h
+dd 0e076f772h
+dd 05a7e6a37h
+dd 099b57f50h
+dd 0e1eaeee2h
+dd 078096ae4h
+dd 001dfdcb7h
+dd 058268f74h
+dd 0f19ba63bh
+dd 09c90685dh
+dd 0234ce5e6h
+dd 043ab417dh
+dd 093c7329ah
+dd 030da35f9h
+dd 0d87e97ffh
+dd 0ed64b1beh
+dd 05c71a121h
+dd 04049e360h
+dd 0fdb0457bh
+dd 0181bd5d1h
+dd 0d2f4ed23h
+dd 0215977e5h
+dd 015de5497h
+dd 0e3a1f0d2h
+dd 009b5962dh
+dd 0bf04b568h
+dd 0df930e6bh
+dd 0b69cda49h
+dd 078dd62fdh
+dd 074e00d0dh
+dd 008c85568h
+dd 00bb4545dh
+dd 0fccd2ec7h
+dd 0a759bf9bh
+dd 0c1661aedh
+dd 069e5be40h
+dd 0bced885ah
+dd 02aa5b44bh
+dd 0157a9cc4h
+dd 00e6e7e53h
+dd 04712c612h
+dd 046da2564h
+dd 0252d42a5h
+dd 0c2b4a383h
+dd 092b625cdh
+dd 0724dad36h
+dd 06f01d3edh
+dd 058181fa6h
+dd 04c349e60h
+dd 07600e833h
+dd 01d6a7177h
+dd 0dc589718h
+dd 0e9bd3fa7h
+dd 02fe3ff9fh
+dd 0461fd688h
+dd 0775d418ah
+dd 09e1bc1beh
+dd 0ca0718e4h
+dd 0f78768c0h
+dd 03fab217fh
+dd 08077aad5h
+dd 085cc996eh
+dd 0c852b6fah
+dd 04ef37cd6h
+dd 0729fbd98h
+dd 097e0ab51h
+dd 0bf9d9888h
+dd 0c6b733f1h
+dd 099b527aeh
+dd 0392cd11dh
+dd 058f1a313h
+dd 0fc7608a7h
+dd 0a3d735c7h
+dd 07193863ah
+dd 051b32defh
+dd 0f30a4bfah
+dd 0b7c05ef2h
+dd 0b3a37be0h
+dd 0eb04aba7h
+dd 0e28faa66h
+dd 0219afc60h
+dd 0d6c7c798h
+dd 0a30d3fd5h
+dd 0c58b7274h
+dd 06e3639e1h
+dd 05e48a0c7h
+dd 06d9b86abh
+dd 0e581707bh
+dd 0e82437b5h
+dd 082b764e2h
+dd 0a079a836h
+dd 0a58689cch
+dd 0f3e2c2dch
+dd 09b699346h
+dd 016d58b8dh
+dd 0631e1631h
+dd 0837c451ch
+dd 0bbbceab3h
+dd 0041e0878h
+dd 03e6034dah
+dd 04412552dh
+dd 07048a6fdh
+dd 0d395fba1h
+dd 078865830h
+dd 00d2de9bdh
+dd 0a1b1ccf1h
+dd 0394d79edh
+dd 08d5bdedbh
+dd 060ac56b3h
+dd 0fea347ceh
+dd 028d60a0ch
+dd 0f802355ah
+dd 0f9c09feeh
+dd 0eeda4454h
+dd 0d56995d9h
+dd 057a59bfch
+dd 0491e5efeh
+dd 0d26706e9h
+dd 097f9115eh
+dd 080c1d1aeh
+dd 05c5826e2h
+dd 01f0377a0h
+dd 0ccc22cbdh
+dd 0e9807abch
+dd 0f392ba59h
+dd 02211fe53h
+dd 0ecd03dffh
+dd 05f77c4e0h
+dd 029a8219fh
+dd 019178989h
+dd 07bc3f5d5h
+dd 04a0d2582h
+dd 0d39cc749h
+dd 00e2dfebdh
+dd 05585a621h
+dd 01c7ccb7bh
+dd 039f13e54h
+dd 04aa7051fh
+dd 03507278ah
+dd 015864626h
+dd 00b4e693bh
+dd 09995ac1dh
+dd 0c0b9db09h
+dd 0aabaa748h
+dd 02774c205h
+dd 0e79ad54dh
+dd 08718b84bh
+dd 07cde30a8h
+dd 037fdc849h
+dd 038e96baeh
+dd 0e22d2726h
+dd 0206c901fh
+dd 0dbc7cbe7h
+dd 02022711dh
+dd 026d09e2dh
+dd 03f4e6661h
+dd 02f167d55h
+dd 02a7a1ca2h
+dd 02faa3f0eh
+dd 09984a0d0h
+dd 072d9bc15h
+dd 0994b26f1h
+dd 055ef06a8h
+dd 06e18e83eh
+dd 00354a39ah
+dd 03ef0c7abh
+dd 0612b0a7ah
+dd 0900c7a79h
+dd 0def7b832h
+dd 0e64a7f8bh
+dd 0365d059ch
+dd 0d7d4a426h
+dd 0d8421793h
+dd 0f42594b7h
+dd 01c52780ah
+dd 0d6d4b28bh
+dd 04b403ae3h
+dd 02e7a8ac1h
+dd 0137b09f0h
+dd 0f4e4ea43h
+dd 08b226c4bh
+dd 040b59117h
+dd 0f0cedcbeh
+dd 0420c79d4h
+dd 0cb2eb96ch
+dd 05c2777c6h
+dd 03060b71dh
+dd 0309ee4e7h
+dd 0045e146dh
+dd 042d64fcbh
+dd 06f26fea6h
+dd 0bfd6193ah
+dd 00043004ah
+dd 0dc64f2e8h
+dd 0b40869f2h
+dd 007fa19dch
+dd 0fedee0c5h
+dd 0d16d0a33h
+dd 074934993h
+dd 0b0956c3dh
+dd 01f8c54f2h
+dd 09ae53147h
+dd 0abcabf74h
+dd 0beed0010h
+dd 094800949h
+dd 09b8b97fah
+dd 031d0f99dh
+dd 040f6e7bch
+dd 0196904fbh
+dd 053461707h
+dd 0e118cc3fh
+dd 068d8d985h
+dd 084f2b42ah
+dd 0a7cd782eh
+dd 0ea78277ah
+dd 0624c7052h
+dd 08b0b28cbh
+dd 0c3d34254h
+dd 0a9c6b5b4h
+dd 014dd6c27h
+dd 08c8e1b69h
+dd 09faa90f2h
+dd 08b90c4f3h
+dd 075a6fba6h
+dd 0cfab8df8h
+dd 06d2412a6h
+dd 054cb8323h
+dd 00630329bh
+dd 0d95dc57bh
+dd 0f02fef69h
+dd 06b0ec246h
+dd 0f2c92cf1h
+dd 0b440ed03h
+dd 0a614e7cdh
+dd 0f0d1b3a7h
+dd 00a0e460dh
+dd 0d496a098h
+dd 00087552ch
+dd 031b2db2eh
+dd 06e548c96h
+dd 0349abff7h
+dd 0540c7441h
+dd 07d31fe1ch
+dd 0c775d765h
+dd 0aeb9561ah
+dd 0c58926edh
+dd 0faa66972h
+dd 0673346e4h
+dd 0ec7e3323h
+dd 0550e1873h
+dd 0d83aaf67h
+dd 05909b225h
+dd 0e3ef6d41h
+dd 083bb4875h
+dd 042d5d9a2h
+dd 00ea4657eh
+dd 08e6518ddh
+dd 01f45a176h
+dd 0477110adh
+dd 0ac6fc9a3h
+dd 06b1207adh
+dd 0ea2203b3h
+dd 01c6c3aceh
+dd 0a0cda8b6h
+dd 0f5ec0a4ah
+dd 07ec75863h
+dd 0a70a9c5dh
+dd 07d7e2369h
+dd 030126f00h
+dd 03ef65111h
+dd 00aa441b6h
+dd 0359c1973h
+dd 06063745bh
+dd 016b04f71h
+dd 07d41a538h
+dd 002d2d277h
+dd 096c4c58fh
+dd 0a4a921b0h
+dd 08dd30e72h
+dd 05b7ef87eh
+dd 060fd1202h
+dd 0886fce41h
+dd 0854271c6h
+dd 0238933cch
+dd 0c0858628h
+dd 01ede2990h
+dd 01773eaedh
+dd 0765b40e8h
+dd 0a79a1e6eh
+dd 0387a80f4h
+dd 05c7e7d3bh
+dd 06e682159h
+dd 0dc1c27e1h
+dd 0572073b8h
+dd 099f79aeeh
+dd 0a934eb2ah
+dd 0831996bdh
+dd 04b26b425h
+dd 0b4ffd68eh
+dd 0b63e94dch
+dd 0823a0b48h
+dd 047a3a0a0h
+dd 00a0737a9h
+dd 0fa4b4e0fh
+dd 02d18fb0bh
+dd 0b0003d25h
+dd 0b52681d8h
+dd 07599e114h
+dd 06ee977e8h
+dd 00985287fh
+dd 0e4cd2273h
+dd 0a9c46ef8h
+dd 04083caabh
+dd 0f5d290b0h
+dd 0ee54d81fh
+dd 08ff1e918h
+dd 0252a20f9h
+dd 047288501h
+dd 0c7046dc1h
+dd 0b8f2c315h
+dd 0fca028dfh
+dd 070a52cefh
+dd 049e7d10eh
+dd 094935040h
+dd 0df9f72b8h
+dd 0ef27caabh
+dd 030a26cf6h
+dd 0439f2b9dh
+dd 02ad1a5c6h
+dd 0c686279ch
+dd 0556de33dh
+dd 0dde932f5h
+dd 0ccd7e771h
+dd 00e1ec764h
+dd 00eaa0968h
+dd 05e643effh
+dd 0c768fb1fh
+dd 0cd3d4148h
+dd 0d02fe1d1h
+dd 03f8e7c1bh
+dd 054a4404dh
+dd 08399404fh
+dd 09d894b69h
+dd 0f9a7b4e5h
+dd 0c471d8afh
+dd 0b8779f93h
+dd 05905fd87h
+dd 0e97d9e73h
+dd 0ae10e8ebh
+dd 0827a24aah
+dd 012448c14h
+dd 0edd0aed9h
+dd 0d5912de6h
+dd 0454897b4h
+dd 0aa2fcc5bh
+dd 0f475a743h
+dd 07e2fd10ch
+dd 0faddff9ah
+dd 013616ed6h
+dd 0d5ecd4f3h
+dd 00c112eb2h
+dd 09231f74fh
+dd 05352e30ch
+dd 0378c0f28h
+dd 054484e90h
+dd 0dee5b4aah
+dd 01259e69eh
+dd 057418a2fh
+dd 036fd53a5h
+dd 0c8247e6dh
+dd 08bcee438h
+dd 0394a75ceh
+dd 00ae2f986h
+dd 0a14c409dh
+dd 08905b92ah
+dd 0cbf7a4c8h
+dd 05a7317ach
+dd 0b4c06c22h
+dd 0974680f9h
+dd 09f87f7b8h
+dd 0f7d42d6ah
+dd 09e87a8aeh
+dd 05f3c1320h
+dd 0183a1731h
+dd 096ea4582h
+dd 0ebdc5a82h
+dd 09095d85fh
+dd 0fe8de46eh
+dd 0c96215cdh
+dd 0e7479772h
+dd 019397816h
+dd 05a127775h
+dd 06f21db49h
+dd 0bac80d1dh
+dd 03eb6cbfeh
+dd 064e16439h
+dd 0815513bah
+dd 043e17a7eh
+dd 005f25511h
+dd 067f426cfh
+dd 050370f07h
+dd 0b3ac8637h
+dd 01162552eh
+dd 0e4eee01bh
+dd 02022f39eh
+dd 0cf0f6fc7h
+dd 0c288eb49h
+dd 0b51ef45bh
+dd 02d455260h
+dd 0caec2856h
+dd 01b6e4565h
+dd 0c52672dch
+dd 074a86e89h
+dd 09ca38d17h
+dd 0d45de44eh
+dd 01a3e0125h
+dd 0d94f4497h
+dd 0e1aae15fh
+dd 09618e69ch
+dd 06028676fh
+dd 016e47933h
+dd 0a516dceeh
+dd 0e43759a3h
+dd 09e31684ch
+dd 07a5989c5h
+dd 0f4902b7ch
+dd 05b456be2h
+dd 0763b4d6eh
+dd 0c2b678c7h
+dd 03ec3f385h
+dd 0a0f96e0fh
+dd 07da78522h
+dd 0fae72db0h
+dd 06a7a2733h
+dd 08a32b9e5h
+dd 0ffbe85cah
+dd 02ef3f4abh
+dd 00a3678c0h
+dd 0fb604c11h
+dd 039b3be99h
+dd 0cd6d9c23h
+dd 0a38afcfeh
+dd 0b4cfd17bh
+dd 095959befh
+dd 0cc2c3f97h
+dd 0c17cab01h
+dd 0dc98b01ah
+dd 0ee070d15h
+dd 08fc75bfah
+dd 0a39ff4e1h
+dd 01f5743f4h
+dd 0f1398589h
+dd 01f0064d4h
+dd 0a6ab3279h
+dd 051e131e2h
+dd 060869d34h
+dd 03f614e83h
+dd 0113038d7h
+dd 0ececc0afh
+dd 0dcc64231h
+dd 02d3e2f7fh
+dd 06cdbeeadh
+dd 0afc9a65fh
+dd 04d65abe2h
+dd 0f08a913bh
+dd 0f7a9c7c3h
+dd 063d4574eh
+dd 0a28a3481h
+dd 0282ba4a9h
+dd 008f54b79h
+dd 02169d677h
+dd 0116970a3h
+dd 0d90c17beh
+dd 0d70c2593h
+dd 06f6f9d31h
+dd 026a28cbdh
+dd 0fcdab45fh
+dd 00ef24765h
+dd 069445e59h
+dd 0c9022e5eh
+dd 03356a10fh
+dd 02b3c2a20h
+dd 018327e0fh
+dd 0bd56c94ah
+dd 0f3ff1a3dh
+dd 0e67c54ach
+dd 0e6164cd9h
+dd 0d8fb54cfh
+dd 03ec35733h
+dd 0b3bc4c24h
+dd 00be42340h
+dd 0fac4eed0h
+dd 0ba8f4fffh
+dd 07739f5beh
+dd 044550670h
+dd 099268c0dh
+dd 058025812h
+dd 052774d81h
+dd 083fc697ch
+dd 071cc578fh
+dd 0f829bbeeh
+dd 074e5b263h
+dd 0735a7ad7h
+dd 091bbedc1h
+dd 06e85d002h
+dd 0a5f3634bh
+dd 025b433b6h
+dd 060ea9acah
+dd 04eb79443h
+dd 0418d3116h
+dd 079f85e9dh
+dd 02a37719ah
+dd 04a811914h
+dd 0d839f985h
+dd 0d54f417eh
+dd 010e35753h
+dd 067ece998h
+dd 08f18f0b8h
+dd 0fa321e84h
+dd 03fd6a890h
+dd 0b3971b89h
+dd 01e8b0f66h
+dd 023c363ddh
+dd 0355afd63h
+dd 030d83219h
+dd 05dff69b4h
+dd 00aa6f147h
+dd 017b49ed2h
+dd 013a52f9ch
+dd 002c3c219h
+dd 0f8513eaeh
+dd 059b692feh
+dd 090845d73h
+dd 0ebf5f58eh
+dd 09ab3fbb2h
+dd 067a27ea1h
+dd 0360b6ba0h
+dd 079890937h
+dd 0420672ech
+dd 01b8906bbh
+dd 0dd5cbabfh
+dd 0266bcde4h
+dd 0635d8237h
+dd 0ce6b9e8fh
+dd 08d2eec35h
+dd 00d9893a6h
+dd 0012e211ch
+dd 068a4f78bh
+dd 0dbf5c79eh
+dd 0b99921d6h
+dd 07016923ch
+dd 02f89f124h
+dd 01fcc3493h
+dd 0deb3cc89h
+dd 010959de1h
+dd 0bf82b871h
+dd 07aaed0d9h
+dd 0a0ea649ch
+dd 065812fcch
+dd 07336f5ceh
+dd 0c367b207h
+dd 03d394f2dh
+dd 08c7bc945h
+dd 0f727fbb0h
+dd 038449fe1h
+dd 060370ff7h
+dd 0298c6216h
+dd 0db0a8074h
+dd 02550ddb2h
+dd 0036e071ch
+dd 091e90f5bh
+dd 00a88569bh
+dd 0c2fcb54ah
+dd 04ce84f96h
+dd 05dcc21a3h
+dd 087123258h
+dd 0c32250b2h
+dd 0a5226af9h
+dd 05c4182ech
+dd 05c5887e7h
+dd 0400a5f55h
+dd 04b9c0175h
+dd 04972e684h
+dd 06cce6a13h
+dd 0c4e433d5h
+dd 03a4c30f2h
+dd 096d72dfah
+dd 0fd49f647h
+dd 0b040cdf8h
+dd 0a4cc3960h
+dd 0067dd5c6h
+dd 09dcb54b3h
+dd 05b64aa17h
+dd 078fcc44bh
+dd 0d9f9f828h
+dd 06003b732h
+dd 01109bd57h
+dd 07f210585h
+dd 0ea816171h
+dd 00c649b91h
+dd 0cea9c5deh
+dd 0f7fa7dcch
+dd 08363a99dh
+dd 0effeb0efh
+dd 00c6b52b8h
+dd 0d0066498h
+dd 08f46f1a8h
+dd 01df11a53h
+dd 0676194e3h
+dd 0601475afh
+dd 02123441ch
+dd 084e98effh
+dd 0e295917ch
+dd 02d530442h
+dd 08611f2bch
+dd 043bfb488h
+dd 0f9bfb845h
+dd 04f472927h
+dd 064fa65c9h
+dd 0f62f7c68h
+dd 05b4cccdch
+dd 016e7645eh
+dd 0747e40a5h
+dd 037afcb3bh
+dd 0faaca758h
+dd 0f1500f06h
+dd 096a44de6h
+dd 0815ef96dh
+dd 090a745bbh
+dd 05cf8d263h
+dd 0a2fd01e3h
+dd 0d8c65670h
+dd 0098f3a1eh
+dd 0a9652803h
+dd 0eb4a77b2h
+dd 03c067d22h
+dd 01cb15631h
+dd 05e303633h
+dd 09848e6f7h
+dd 0edf0086ch
+dd 02456c1c0h
+dd 06bd19a17h
+dd 046813de9h
+dd 0605ec47bh
+dd 045d23d49h
+dd 06d8f747fh
+dd 0daba4bfdh
+dd 079c01d4ch
+dd 0792e9749h
+dd 029c0ac5fh
+dd 02018208bh
+dd 08770122fh
+dd 0a20f4d38h
+dd 0cd50b3bch
+dd 0e1280fd8h
+dd 071a5482eh
+dd 01bfc25b7h
+dd 051f44008h
+dd 0a71a6136h
+dd 059533d99h
+dd 0ae0ceb55h
+dd 09d12d95fh
+dd 00572f86dh
+dd 01b2a5d44h
+dd 0f1098022h
+dd 0982c89dah
+dd 0d72fae47h
+dd 06021a91ah
+dd 0de65e295h
+dd 01f386ca7h
+dd 077425ae0h
+dd 00585e18bh
+dd 04a83997fh
+dd 054c76fdbh
+dd 071fc9a0ch
+dd 06dc45753h
+dd 0d36d4058h
+dd 06c401f53h
+dd 067af1da0h
+dd 0f2f093c5h
+dd 00fa3d9c2h
+dd 05be8830ah
+dd 017f7a723h
+dd 067b52e1fh
+dd 04e75d3ddh
+dd 0942f23a5h
+dd 07c1e15b2h
+dd 0630a366dh
+dd 03a2dc461h
+dd 064c00ba4h
+dd 08dced95fh
+dd 08d02062ah
+dd 05fae2974h
+dd 0554a95fbh
+dd 0f0a062b5h
+dd 0fa498ba9h
+dd 087a92df2h
+dd 0ce7639feh
+dd 02b040c10h
+dd 0681b96cah
+dd 0a0ee76f9h
+dd 0d50121ceh
+dd 0c4cc99a5h
+dd 08342d742h
+dd 0b6666cc6h
+dd 0bbda34eeh
+dd 082956969h
+dd 05fcae299h
+dd 07b8d4115h
+dd 0649ca93ch
+dd 0ae34377fh
+dd 0916c7240h
+dd 09f33eb0ah
+dd 02fc79ceah
+dd 02e23ab63h
+dd 04a00f045h
+dd 009210b1fh
+dd 02ddd46b2h
+dd 006385025h
+dd 0794c257ah
+dd 0cb1f2a20h
+dd 025350a99h
+dd 081363f97h
+dd 0e4a36629h
+dd 011efaed0h
+dd 037418813h
+dd 080223bcch
+dd 00b8be553h
+dd 048ce6b5ah
+dd 000372168h
+dd 0f232683bh
+dd 0c763f9c4h
+dd 0fb4d41deh
+dd 09e5b450fh
+dd 0a92ab339h
+dd 0aaee679bh
+dd 0929d73e8h
+dd 026a0f9dah
+dd 09c92028bh
+dd 09b3e30e1h
+dd 025dc49a5h
+dd 03b16617fh
+dd 069d45f62h
+dd 0e0db8621h
+dd 0dd2d893ah
+dd 09bcb4d1ch
+dd 004420533h
+dd 06a67e655h
+dd 0eb879efch
+dd 0a402d9b8h
+dd 0dd56fd18h
+dd 02861723bh
+dd 02febee48h
+dd 00485357fh
+dd 0cc3d8a85h
+dd 0883b6261h
+dd 08304b0abh
+dd 01bb6deffh
+dd 04edadc5fh
+dd 0a8980cb7h
+dd 053204853h
+dd 0d80c342bh
+dd 0352a4f51h
+dd 009589f51h
+dd 0f3f76e83h
+dd 054a3e4b0h
+dd 0b8916172h
+dd 02201baceh
+dd 0e443ff0bh
+dd 0daa2a812h
+dd 0fb2e36b0h
+dd 02aff1ec3h
+dd 015e46a97h
+dd 0fb72de0eh
+dd 05bcae560h
+dd 0b2c0dc89h
+dd 0d784226ch
+dd 0d4820da6h
+dd 075dc4a7ah
+dd 031365770h
+dd 02d7578dch
+dd 02653f552h
+dd 052c69656h
+dd 048d64a56h
+dd 0fb23d365h
+dd 02ce0985ch
+dd 09ad4c24dh
+dd 05deb6c8ch
+dd 09e02c665h
+dd 0a8e185ceh
+dd 0b0711a5ch
+dd 060abd9f3h
+dd 0b4adc2d9h
+dd 01ed91b59h
+dd 0d03d112ch
+dd 0ce769e87h
+dd 0d46ce8b7h
+dd 0791bdf04h
+dd 038ba190bh
+dd 0d5f59e94h
+dd 0aa0745f7h
+dd 07a31c925h
+dd 07b3dcf15h
+dd 0707bd7b8h
+dd 0fc8aaf66h
+dd 0bd2b3964h
+dd 0dbbd6473h
+dd 041a46cd8h
+dd 08e5725f7h
+dd 024f91989h
+dd 0710cb022h
+dd 09494a5b0h
+dd 05c6e4b96h
+dd 02423c831h
+dd 06fd86e80h
+dd 081e54fa2h
+dd 0ee94c1cah
+dd 06e44ca27h
+dd 0c66bbff9h
+dd 067dc8278h
+dd 04a7ec391h
+dd 0f5fb0d08h
+dd 038360e51h
+dd 04ce53c73h
+dd 0527f1a5dh
+dd 06fd2435fh
+dd 01c3cd17bh
+dd 021131829h
+dd 0e978a29fh
+dd 0d38d57c1h
+dd 0aaedce42h
+dd 0dae41a51h
+dd 0b65ed188h
+dd 0ec9d1b6dh
+dd 0b91c1e9ah
+dd 0d8629cfbh
+dd 0c44b1c41h
+dd 020285e2ch
+dd 008acb6e6h
+dd 04b345921h
+dd 01eeceab6h
+dd 0ca504fe9h
+dd 0214c8321h
+dd 04327014bh
+dd 0097a08c0h
+dd 0f04bcd03h
+dd 03adbd71eh
+dd 0d47ddd9fh
+dd 0b603ae6ch
+dd 02cdf11e9h
+dd 049f35874h
+dd 0399a6675h
+dd 0fa1ec924h
+dd 0c47ddf3eh
+dd 0a3485429h
+dd 0dfc98ac1h
+dd 0a98145ech
+dd 0ca0e91ebh
+dd 02ba03761h
+dd 0d44854a1h
+dd 0285b30a7h
+dd 067c975aah
+dd 09cef869bh
+dd 06bcae1f2h
+dd 0dcd6398bh
+dd 07300dbbch
+dd 0e1297416h
+dd 046c5e6f8h
+dd 01cbc6a6eh
+dd 0cdda8e68h
+dd 0a92015d9h
+dd 08cafdc01h
+dd 053c1a4a5h
+dd 0ca44ce19h
+dd 00ae46664h
+dd 0ec667ff0h
+dd 046be6a9bh
+dd 00b2e2ab7h
+dd 01b3de1fbh
+dd 054cfd089h
+dd 004e1927dh
+dd 09ba722dah
+dd 0b324578ah
+dd 0dbd456d9h
+dd 0358a262ah
+dd 0be476005h
+dd 01cc3dd56h
+dd 0e7d5dd83h
+dd 075d21889h
+dd 0500314c5h
+dd 079e9674fh
+dd 0b8098348h
+dd 0a75dd2f9h
+dd 0a85c914bh
+dd 056c6db48h
+dd 0dd763344h
+dd 0c7c45fbfh
+dd 0f617331dh
+dd 031b74b6bh
+dd 0d49046a5h
+dd 0eb01f3b3h
+dd 0231c25b2h
+dd 05c39eb88h
+dd 051e71b1ch
+dd 04b8578a2h
+dd 0e43b68b9h
+dd 0e269085ah
+dd 0439d1e12h
+dd 0a47e2168h
+dd 08b45d95ch
+dd 0c4a300feh
+dd 0299e89f4h
+dd 0d04be376h
+dd 0f736a76bh
+dd 04701310eh
+dd 0feefdcf5h
+dd 01a6c1073h
+dd 05e116820h
+dd 0b8b982d7h
+dd 03b901ec1h
+dd 0ca6b1e1bh
+dd 01f5a50ddh
+dd 0f58c9c10h
+dd 03b84f295h
+dd 0153aefa5h
+dd 07aa24c74h
+dd 03a31f76ah
+dd 09bcad109h
+dd 04eb18050h
+dd 0f4bbd909h
+dd 0fead50edh
+dd 03b0c8750h
+dd 078023c36h
+dd 07375dbd3h
+dd 0dcbf2b86h
+dd 0254819f8h
+dd 066cf940bh
+dd 039f16406h
+dd 01cba5a63h
+dd 007b2cc1bh
+dd 0f3c4d9a8h
+dd 0534a4514h
+dd 02156c5b9h
+dd 012ea6bf7h
+dd 0def54312h
+dd 0d4e8381fh
+dd 00d52deefh
+dd 09f20ed0dh
+dd 02d38ec3fh
+dd 099843899h
+dd 04ed94081h
+dd 0a82c49c6h
+dd 0a5dadd52h
+dd 074bdf896h
+dd 0a5292380h
+dd 0d5d7b089h
+dd 00f634857h
+dd 01b8a5f17h
+dd 0ca72f4b3h
+dd 030abf087h
+dd 0ce7239d8h
+dd 0f158c5afh
+dd 0bbb229a5h
+dd 02a2f23dah
+dd 0673167dah
+dd 04af9ccf3h
+dd 01b9c76c5h
+dd 05e1540b7h
+dd 021164351h
+dd 04f0492c8h
+dd 0ead8c268h
+dd 0420f9532h
+dd 0731b8adfh
+dd 0a2315dcfh
+dd 0476d59eah
+dd 096590415h
+dd 0d0c4417bh
+dd 03f23fbe1h
+dd 0cc074c78h
+dd 09271fe8ch
+dd 0d2e024ach
+dd 09f32d6fdh
+dd 0a411b6aeh
+dd 00caf1512h
+dd 0b80dc45ah
+dd 0bb69a925h
+dd 09475d55ch
+dd 09fd6bfcbh
+dd 0e3a0514ah
+dd 03559cad8h
+dd 0dcfae4cdh
+dd 04a6d9b0bh
+dd 0f575e18fh
+dd 0943fef2fh
+dd 05ef7bcfeh
+dd 04f8560ach
+dd 0e454e2bch
+dd 0fa6be279h
+dd 0d40f4d52h
+dd 0a007cd01h
+dd 0a3962275h
+dd 0f44a8722h
+dd 0edd52b43h
+dd 04d526c87h
+dd 026ace106h
+dd 063995d7bh
+dd 0b27a87e0h
+dd 072659791h
+dd 0a199bae0h
+dd 062d6fd13h
+dd 08691b016h
+dd 01ffc8f35h
+dd 042545ccch
+dd 08f454759h
+dd 0d6b458f1h
+dd 0a2c87600h
+dd 060501201h
+dd 0ab92770fh
+dd 04ffec66dh
+dd 0fcbaf8f2h
+dd 02b1edfc6h
+dd 081177ec4h
+dd 084c6eb2ah
+dd 02d619342h
+dd 0e6020c60h
+dd 0d5641ce9h
+dd 0d1a5aa5eh
+dd 0f10240cah
+dd 001fd8773h
+dd 0e6c1ffe5h
+dd 0821157feh
+dd 0a7df27c9h
+dd 0e2f061fdh
+dd 02c846220h
+dd 07921d320h
+dd 00568bc90h
+dd 078e8ebd9h
+dd 0baaded5eh
+dd 0d8adfa86h
+dd 0bb4c5ef8h
+dd 0907cbce4h
+dd 0f5d91b9ch
+dd 0b131fe4ch
+dd 01b9f6ae7h
+dd 0f8a41d6ch
+dd 0e829dd0ah
+dd 0b486694eh
+dd 0cb20a919h
+dd 0e93ccf38h
+dd 01c19d1bch
+dd 031190764h
+dd 0a1bb1b4dh
+dd 0d63830a1h
+dd 0bedddf75h
+dd 0e664d90fh
+dd 09cbf5c92h
+dd 02a5ab460h
+dd 0a607e7c1h
+dd 01778b395h
+dd 00d784291h
+dd 084d07d65h
+dd 0440a35bbh
+dd 0a540dca0h
+dd 0f9bf72cbh
+dd 05ed203b7h
+dd 0a456d11ch
+dd 06cfd2cdbh
+dd 011b62e39h
+dd 0b1e24c4fh
+dd 05cd725ech
+dd 02ed0b4e7h
+dd 0d9772f02h
+dd 0b60646ech
+dd 0ec16581dh
+dd 02f29b28ch
+dd 0b69abc15h
+dd 01df343cch
+dd 0f1dc84edh
+dd 06b9a3ab0h
+dd 0b8be0a01h
+dd 05b44d119h
+dd 0bfdf589ah
+dd 0fd1dc813h
+dd 0012b9a41h
+dd 09ec86fa3h
+dd 02ccd06b1h
+dd 0ff59f989h
+dd 083567a39h
+dd 0a056de43h
+dd 029aa32e3h
+dd 0bd989138h
+dd 011bde358h
+dd 0f7f81da5h
+dd 06664c2dah
+dd 0ffc4f611h
+dd 0af74566dh
+dd 06a18ff91h
+dd 07e0dbe62h
+dd 03428044ch
+dd 0a21edb12h
+dd 0ac2fb3d9h
+dd 046bbf96eh
+dd 013aee88bh
+dd 0cef90e1eh
+dd 097e97c9ch
+dd 0c4a51656h
+dd 067bcc946h
+dd 0a1fec20fh
+dd 063539106h
+dd 08a79e087h
+dd 0416566d7h
+dd 0037adc3ah
+dd 01cb94a5eh
+dd 0dec39e01h
+dd 0baeedd79h
+dd 07eec86b0h
+dd 02a536881h
+dd 0d1359492h
+dd 0c99aa4bdh
+dd 00a1e641ah
+dd 0faf4dd26h
+dd 05959351dh
+dd 0fb8c303fh
+dd 0e9dd4710h
+dd 0ba5e8cebh
+dd 05ff339c9h
+dd 04f34429bh
+dd 086fbdd79h
+dd 0e4cb5066h
+dd 0ee2e6d5ch
+dd 0d4f14e35h
+dd 0b90b1e59h
+dd 0e8ecacf4h
+dd 0ec2a3e4ah
+dd 0b8b8b25bh
+dd 00d36b47eh
+dd 0540e79b5h
+dd 03182bf30h
+dd 023a7033dh
+dd 046b928c4h
+dd 01b464ad5h
+dd 05c4f4c57h
+dd 069b89640h
+dd 00cb082e8h
+dd 083e7dabeh
+dd 0aeda860ah
+dd 06366560fh
+dd 08932fe8eh
+dd 074b2a5d2h
+dd 0f4e6b61fh
+dd 03e3b765fh
+dd 026b93639h
+dd 0c4fc32fah
+dd 0c7024e0ch
+dd 0caa6c037h
+dd 0d0caf497h
+dd 08c5d872eh
+dd 0be8e5b2eh
+dd 00d5aaa00h
+dd 06c5c86a3h
+dd 0874f9990h
+dd 0d21a2918h
+dd 09f8a601dh
+dd 02d19220ch
+dd 0ccf16dfch
+dd 035976aadh
+dd 00b894426h
+dd 0522e71b3h
+dd 0fa322fefh
+dd 08728e484h
+dd 0402ebfb9h
+dd 011b5027ah
+dd 0f809485dh
+dd 0d5aaead1h
+dd 00b8d93dah
+dd 0df6556dch
+dd 0ebd1df2fh
+dd 0514fa59eh
+dd 04c7b49d7h
+dd 090f5f021h
+dd 03501db51h
+dd 04babb866h
+dd 0e469f0c5h
+dd 05d98244bh
+dd 05bebaabdh
+dd 0dc683b3dh
+dd 0a27a0833h
+dd 0e793cbeah
+dd 094c31af7h
+dd 0cff89b7bh
+dd 06adc5258h
+dd 02709ffdeh
+dd 0a89c480ah
+dd 02af0a6d8h
+dd 077fa8fafh
+dd 0bd0855ffh
+dd 0d2328f6fh
+dd 0890c3429h
+dd 08d9332d8h
+dd 0e426ccaeh
+dd 03fec9bcch
+dd 0190ed641h
+dd 0bbe43f4eh
+dd 06b88ed25h
+dd 04cbe53d7h
+dd 05076494fh
+dd 0f832ef83h
+dd 0bef5a5e3h
+dd 0af8710afh
+dd 09c8d58d0h
+dd 0b486f4d7h
+dd 0111cee30h
+dd 02b6251e9h
+dd 08d179efah
+dd 0135d4a13h
+dd 0337c31b7h
+dd 01bf04318h
+dd 07f908799h
+dd 0a75161bbh
+dd 042569b3dh
+dd 0cde15f2dh
+dd 026b1f87eh
+dd 0afabafadh
+dd 011d3ac56h
+dd 09c50d6dfh
+dd 08bf35deeh
+dd 0bc83b9b1h
+dd 0a2a0aac6h
+dd 00dd95140h
+dd 025e58a3dh
+dd 0c963e243h
+dd 085f12d84h
+dd 08b4576f8h
+dd 03e1c2c16h
+dd 04ff144aah
+dd 09aab0343h
+dd 0ee8b52efh
+dd 0b41dbfbbh
+dd 04c65b92ah
+dd 07acf9228h
+dd 087ddc8deh
+dd 08d6b8056h
+dd 0eda9c9f6h
+dd 0e0a3ea5ah
+dd 046a56c6bh
+dd 013dad44fh
+dd 06ab7036dh
+dd 0bd6ff1e1h
+dd 0206f55e5h
+dd 0017b2d33h
+dd 07120cc86h
+dd 0f45809e9h
+dd 0848ad680h
+dd 0b08b3127h
+dd 0421589a1h
+dd 06d66bae0h
+dd 056c3bd36h
+dd 0d32b5d6bh
+dd 000bcafadh
+dd 0d3800018h
+dd 0d4805edbh
+dd 061f5c85ah
+dd 0244c28bfh
+dd 0d7002543h
+dd 059000704h
+dd 0d36ed07dh
+dd 02f27de22h
+dd 01576ccc3h
+dd 0ca445889h
+dd 020582d31h
+dd 043a867c4h
+dd 05416656eh
+dd 0da56113dh
+dd 0f527398dh
+dd 02e53386ah
+dd 01f95103ch
+dd 03a754debh
+dd 0f23a790bh
+dd 06a66e9b0h
+dd 0c0f14b8fh
+dd 0e8ce7063h
+dd 052ca091ah
+dd 00f1c2765h
+dd 08af6c8a4h
+dd 03e56ae7ah
+dd 03b75a680h
+dd 0109504c5h
+dd 08bbe313fh
+dd 0fc139901h
+dd 0deb6fea1h
+dd 04c328edeh
+dd 04210a10fh
+dd 083a5ef03h
+dd 0399fbbd5h
+dd 03e783ad8h
+dd 07fc59c31h
+dd 0657f1250h
+dd 0274b4128h
+dd 0197c85feh
+dd 01ca9173fh
+dd 0fb6ccb77h
+dd 084b3c9cfh
+dd 084e730c0h
+dd 0dcdaec5ch
+dd 0e6cff187h
+dd 029e90d73h
+dd 021b6270ah
+dd 0aee3ae58h
+dd 02e8d3278h
+dd 0f562f0a2h
+dd 014042230h
+dd 0ad5d0352h
+dd 0b5d64740h
+dd 0e4e70c50h
+dd 0967ef65bh
+dd 0d6b9670dh
+dd 0440785b5h
+dd 0b861fe21h
+dd 0e1a66b4bh
+dd 09918c07ch
+dd 07f0bbb01h
+dd 0d72ef308h
+dd 01ee4cadch
+dd 05118ac64h
+dd 0294ddf7eh
+dd 0df5241b7h
+dd 0f6176881h
+dd 0da747961h
+dd 05a49a9b4h
+dd 06d3db5b0h
+dd 0cb28798dh
+dd 057384826h
+dd 09501fe77h
+dd 0b45f5cc6h
+dd 0c91a21dch
+dd 006e9b77eh
+dd 0bc25e4b7h
+dd 0900de7c0h
+dd 0395c2bd0h
+dd 0ccc4e3b2h
+dd 027532fa9h
+dd 03a6ccd3dh
+dd 0b0ec82d9h
+dd 03711ced9h
+dd 046ed2184h
+dd 02fe7c3ffh
+dd 0a84a39f2h
+dd 0eaeda500h
+dd 0314f8dbbh
+dd 0ae73b83ah
+dd 0dea8dcc7h
+dd 0443b2d70h
+dd 0a8ee0f79h
+dd 0ecf9a283h
+dd 042760d7ah
+dd 027fdab21h
+dd 01cb0d01bh
+dd 06c74f802h
+dd 0343f865fh
+dd 066c5e9dbh
+dd 068d09be7h
+dd 0635ba27fh
+dd 0aa421448h
+dd 01c72ee1bh
+dd 054859635h
+dd 0e94ea551h
+dd 024850ea7h
+dd 03f9a5856h
+dd 005acb9b4h
+dd 0b3cf616fh
+dd 0a56eae2eh
+dd 0292ac38bh
+dd 0658b7bfah
+dd 0fe9c06b5h
+dd 078c32104h
+dd 0a548d840h
+dd 0d921b371h
+dd 0574e84d6h
+dd 06e6c020ah
+dd 0d5037133h
+dd 006bdcf1ch
+dd 0e3c1f053h
+dd 0fbb1398fh
+dd 0ea58b84fh
+dd 0f2c7e48ah
+dd 022da5925h
+dd 099a57dcah
+dd 0c30d884ah
+dd 04d6f8dcfh
+dd 009bfcf0bh
+dd 0fff307f1h
+dd 0fc5763fbh
+dd 095aaa4f1h
+dd 0d66bb864h
+dd 03531d9b4h
+dd 01abcd16bh
+dd 0117257bch
+dd 0f7155e4dh
+dd 04821afach
+dd 05da18623h
+dd 02b1921ach
+dd 092de3414h
+dd 0f0f2af95h
+dd 07abd9d54h
+dd 0f02a99eah
+dd 03ad83cf4h
+dd 04508066ah
+dd 07b0abe3bh
+dd 09f1913e3h
+dd 0a5fb4fb3h
+dd 0c92df27bh
+dd 065aede11h
+dd 0851f78eeh
+dd 0ddb4fe8eh
+dd 09bd5c60bh
+dd 0ab4b492ch
+dd 0aff55086h
+dd 0df1c5505h
+dd 072ec3289h
+dd 0e53bd6c2h
+dd 0fc0655deh
+dd 0d743bae3h
+dd 0d860a458h
+dd 05210ecc8h
+dd 08ea62b0ah
+dd 03829444dh
+dd 0ae085c90h
+dd 0674a2543h
+dd 0a4f4f40ah
+dd 0228dc793h
+dd 03d9abebbh
+dd 0b544066ah
+dd 03e9d1792h
+dd 073c9ea0fh
+dd 0661bd7f7h
+dd 02bde7babh
+dd 0b39735fch
+dd 02652744ah
+dd 0666a1fc2h
+dd 0490e83cah
+dd 060c34b8dh
+dd 0778addd8h
+dd 0e2c0b4d2h
+dd 0888c16a0h
+dd 0f1b62effh
+dd 08248fad3h
+dd 06e9b84feh
+dd 02d17cb86h
+dd 02f3ffebeh
+dd 0e5fd0533h
+dd 038e96060h
+dd 0cd7b7f6dh
+dd 0ea294991h
+dd 04d6f9e4fh
+dd 048e1f4dah
+dd 0d081a31bh
+dd 0477a5ca4h
+dd 0c91f5023h
+dd 004f86abah
+dd 00a284828h
+dd 0ff328b56h
+dd 075b9b34fh
+dd 0ff6aaff2h
+dd 0bea916e6h
+dd 0f587a1e5h
+dd 039e7c9c1h
+dd 05dd7f8a2h
+dd 06faf795bh
+dd 011cd7720h
+dd 0d7fcfa82h
+dd 0c6895451h
+dd 01f6d9173h
+dd 08904a0adh
+dd 00b2b3783h
+dd 098460873h
+dd 0143e978fh
+dd 0d544aed2h
+dd 015b67f14h
+dd 0c8f4b494h
+dd 00e254ce6h
+dd 0eb18d517h
+dd 0d30ab582h
+dd 0e2ea6812h
+dd 0afc41f3dh
+dd 080fb0ecdh
+dd 08eccc145h
+dd 0c22edb96h
+dd 00f9bc97ch
+dd 0daa146a1h
+dd 03c312647h
+dd 0c8c49443h
+dd 02fea89bbh
+dd 0f1302f61h
+dd 02b85de3ah
+dd 0d5565c63h
+dd 063c6c117h
+dd 00afbc7e0h
+dd 024df7db4h
+dd 00d272d45h
+dd 0c2741caeh
+dd 0cee3dd62h
+dd 04e4bb27eh
+dd 03e7b297ah
+dd 03144aaech
+dd 0a8258600h
+dd 0b3319f14h
+dd 0773c8262h
+dd 05fa7deaah
+dd 0f07f10aeh
+dd 07df53687h
+dd 066d70a49h
+dd 02eadc05ch
+dd 0f094d561h
+dd 044e22374h
+dd 0d9ff7530h
+dd 0482d940ch
+dd 023f35e38h
+dd 0211b83cah
+dd 0cf91b5fdh
+dd 05e887898h
+dd 0712ce92eh
+dd 05ef8d5e0h
+dd 0ff9d1b38h
+dd 0343c0561h
+dd 0399ce3feh
+dd 0d06a9fb1h
+dd 03edc6f24h
+dd 08fcd41d0h
+dd 03e05abc3h
+dd 0298756a4h
+dd 0a2a46f18h
+dd 000c68befh
+dd 0329e222fh
+dd 0cc87370ch
+dd 0f15d1ba6h
+dd 0a62a654ch
+dd 0f675c14ah
+dd 031fa75c7h
+dd 00f4bcd68h
+dd 07a29cf38h
+dd 0d8cc5401h
+dd 0510a782bh
+dd 01758d610h
+dd 0b5f9f170h
+dd 03d1b8153h
+dd 011b80dd0h
+dd 07125d7f2h
+dd 04db6e77eh
+dd 0f5fe4962h
+dd 05c1f8298h
+dd 0ce6bdeach
+dd 0ca5b029bh
+dd 0e971c6aeh
+dd 084a284f9h
+dd 0c879c910h
+dd 0414dcbbbh
+dd 0e7904478h
+dd 02e190790h
+dd 040f15594h
+dd 067b34a39h
+dd 0a91b8118h
+dd 0219f10b3h
+dd 03bdef187h
+dd 0ba82e8dch
+dd 0c4765d70h
+dd 0f95172f6h
+dd 06c868733h
+dd 0f9003c73h
+dd 01477f2a9h
+dd 0e815a5cbh
+dd 02bfdaf47h
+dd 0a6640118h
+dd 0fbaf0c0ch
+dd 0f9afb329h
+dd 060754cb4h
+dd 0bef1dd57h
+dd 0e4ce0f96h
+dd 0bb80c367h
+dd 02c0d840bh
+dd 09e9ef3a0h
+dd 054e8d319h
+dd 0f343d8c0h
+dd 038e800d2h
+dd 086812008h
+dd 024e4d095h
+dd 000c14dc6h
+dd 09f36f5c3h
+dd 0b35b386dh
+dd 08dca1345h
+dd 047e82829h
+dd 0cd60b030h
+dd 053e4a2fdh
+dd 073bd5a6fh
+dd 027b5e135h
+dd 0f23fe93ah
+dd 027eb5c34h
+dd 030795c12h
+dd 0443fde01h
+dd 0d701939ch
+dd 03e36796eh
+dd 02f35e354h
+dd 020be8c42h
+dd 09bd2be5eh
+dd 0d5c7f051h
+dd 03b3ed7b4h
+dd 09f87ba12h
+dd 0de7599a7h
+dd 04bd7f119h
+dd 05c1fcd6ah
+dd 0a77d1c98h
+dd 0df9abf81h
+dd 07a6cd9c4h
+dd 0c2719508h
+dd 0a7aa2821h
+dd 0a4a23408h
+dd 0d6504d2ch
+dd 063cd335ah
+dd 0ef51616ah
+dd 0d98a0676h
+dd 0423db710h
+dd 0703bf09fh
+dd 07449d9ddh
+dd 01884c23dh
+dd 0e714de2ch
+dd 04bad4d28h
+dd 0a7a69f1fh
+dd 0a414f2b7h
+dd 06d6a573ch
+dd 0c8de14e2h
+dd 055047de2h
+dd 0bacc48f8h
+dd 083106f85h
+dd 07c8f0115h
+dd 04e6fe6ddh
+dd 01cfb0322h
+dd 086cfb88dh
+dd 0550d14cdh
+dd 07f170d92h
+dd 0a7286a5ch
+dd 0e23edbd1h
+dd 0d51b3d61h
+dd 0950fa228h
+dd 029d65513h
+dd 0652964f2h
+dd 0d83004f4h
+dd 0b234f919h
+dd 0fc6bb24eh
+dd 0bab50c92h
+dd 0200f9e65h
+dd 02147b7b9h
+dd 029c07d85h
+dd 0d61af154h
+dd 0b52d805fh
+dd 09c468290h
+dd 09b06c8cch
+dd 040624892h
+dd 0643aeb24h
+dd 016b875bdh
+dd 0778f3b3ah
+dd 08da2861dh
+dd 05052f23bh
+dd 0605788dfh
+dd 0995bc83bh
+dd 006b5c58ah
+dd 0629a9e78h
+dd 0f5cdccf7h
+dd 03e5e71ffh
+dd 025a92e8eh
+dd 0bd9ee9d3h
+dd 045eb83adh
+dd 0df9acb4bh
+dd 074e827c1h
+dd 09ed88a63h
+dd 0fc9e5144h
+dd 06addd944h
+dd 07b3819f4h
+dd 062dce545h
+dd 0be6e3891h
+dd 0727c8a96h
+dd 0018c60c5h
+dd 02cba410ah
+dd 0023cd1c8h
+dd 0b6932c32h
+dd 03b43900bh
+dd 0007e488bh
+dd 0b78461f6h
+dd 0fc322d26h
+dd 05bd46211h
+dd 06c0dc94ah
+dd 05e596666h
+dd 04b6e726bh
+dd 029b9f4a9h
+dd 0b6c0a86bh
+dd 091aa04f1h
+dd 05d365cbeh
+dd 07c516bc4h
+dd 042573d9ch
+dd 06cabb837h
+dd 0e0f3b3a3h
+dd 0e92efaf2h
+dd 058beba62h
+dd 0d62b0904h
+dd 0fea975a8h
+dd 073cd14f8h
+dd 0a6b01db8h
+dd 01ef0d21ch
+dd 026eefd3bh
+dd 055880f18h
+dd 0ce2a2c33h
+dd 0b0f60624h
+dd 00147ae92h
+dd 02dd6f41eh
+dd 010197e26h
+dd 0fdd94df0h
+dd 002045ae0h
+dd 06cc98d23h
+dd 0b779b098h
+dd 06b8f820fh
+dd 066b76509h
+dd 02228ff26h
+dd 08d125a6bh
+dd 02d107604h
+dd 0625498b7h
+dd 029bd3e5ah
+dd 064d43f38h
+dd 062637adfh
+dd 04eff20ffh
+dd 0a010f078h
+dd 01da96665h
+dd 05fbeda81h
+dd 09754940ah
+dd 018ec7ef0h
+dd 096c82ca5h
+dd 018f1e8d5h
+dd 05b9c9e75h
+dd 0b7869b6dh
+dd 047c0c882h
+dd 023af191eh
+dd 05d1e2086h
+dd 0677ba9bah
+dd 015fcc450h
+dd 09ea0ec37h
+dd 06ffe6950h
+dd 08ff79cd5h
+dd 0e548dad2h
+dd 091d18ee5h
+dd 08285e720h
+dd 044f5ff33h
+dd 008b16598h
+dd 0ccf8898dh
+dd 0796f85b7h
+dd 028d981dfh
+dd 03d0648c4h
+dd 0692cd6fch
+dd 0f4866f0ah
+dd 0627503b4h
+dd 0706acd39h
+dd 0b18df6c4h
+dd 08d327a14h
+dd 050f38311h
+dd 05ef88678h
+dd 0a92b873ch
+dd 02fe5ab5ch
+dd 0bcd32541h
+dd 0782f2aaah
+dd 0f2bc6a5ch
+dd 0e32aa117h
+dd 0a508d285h
+dd 08d3fe65ch
+dd 09771100ah
+dd 02f734d44h
+dd 008f53816h
+dd 01b6c57d9h
+dd 053e5277eh
+dd 03b563651h
+dd 04d841375h
+dd 0baa03281h
+dd 0ef10144fh
+dd 0d4424cf8h
+dd 05dcf1a51h
+dd 0394298b7h
+dd 0f6630891h
+dd 0951a4787h
+dd 026e1c3f5h
+dd 009fb99a9h
+dd 0391149f3h
+dd 0ab4128cah
+dd 07761c131h
+dd 0302a9ca1h
+dd 0b4cffabah
+dd 04fe37047h
+dd 0a5924ad5h
+dd 006eccf61h
+dd 061a62670h
+dd 0de90e2b5h
+dd 0f91e20abh
+dd 09dc2ab0eh
+dd 0af4c14b5h
+dd 02e7b2a08h
+dd 03b1ecde9h
+dd 0baebb054h
+dd 0fbd0f3d6h
+dd 0535a4213h
+dd 01368abcah
+dd 0decc14d7h
+dd 074a6e285h
+dd 0bb718ec8h
+dd 07fd205e5h
+dd 0192af423h
+dd 0f20ddd44h
+dd 082aeef95h
+dd 055cd479bh
+dd 07c9c65b8h
+dd 0389dbbe4h
+dd 0b3fe5827h
+dd 0e71b67c0h
+dd 0bdd3fc7ch
+dd 08ffcfebdh
+dd 0b5ebabe9h
+dd 06c3a1410h
+dd 02323624ch
+dd 081bdae08h
+dd 0fabc5bd3h
+dd 0120c6297h
+dd 094790b8eh
+dd 0d13814e0h
+dd 085b92db2h
+dd 010df8d74h
+dd 0485878e3h
+dd 0fba95ebbh
+dd 0b2486f41h
+dd 08f6b8c90h
+dd 02160d28dh
+dd 03e0f494eh
+dd 0519d23c0h
+dd 00f7062c4h
+dd 077c7315fh
+dd 0703c5c09h
+dd 0a7155d23h
+dd 0841bd236h
+dd 0bec58b04h
+dd 0039b8e40h
+dd 066f75b34h
+dd 018dbd9c7h
+dd 06269a6a8h
+dd 0cdbce2ddh
+dd 0ef87813bh
+dd 0d8619ecfh
+dd 0bb6a4660h
+dd 09a641182h
+dd 008811532h
+dd 0c2cc8ffah
+dd 088a2cb14h
+dd 0a6745a49h
+dd 06de94a89h
+dd 0365bf798h
+dd 0662c79efh
+dd 04f87d29fh
+dd 058ef98dfh
+dd 01f154fb4h
+dd 0214af91ch
+dd 024f3aa26h
+dd 06befb574h
+dd 0f5e48df3h
+dd 0dec1f49eh
+dd 056bdb565h
+dd 02c41bb34h
+dd 019e07743h
+dd 015ff56cfh
+dd 05f24b0ach
+dd 064a45d5ah
+dd 0fd702769h
+dd 0f09c9226h
+dd 0557a20f9h
+dd 0e438bfb1h
+dd 073e832f5h
+dd 01567dd92h
+dd 0d984c955h
+dd 030075015h
+dd 0c3bf16b3h
+dd 08a268570h
+dd 081baf9d9h
+dd 02c434e1ah
+dd 0e548dc93h
+dd 0f24e378ch
+dd 068590c49h
+dd 0e7af8654h
+dd 041afb449h
+dd 0871eb7f1h
+dd 0903e46e8h
+dd 0d2f2b94eh
+dd 068fa9df0h
+dd 05cdb7266h
+dd 07b7335deh
+dd 0c45d51dbh
+dd 0d7035c30h
+dd 091996d14h
+dd 0302490c2h
+dd 080c6f917h
+dd 01c9769a2h
+dd 01362c8c3h
+dd 0a9be61d5h
+dd 088dc1276h
+dd 0e84320cbh
+dd 0b6f9eed3h
+dd 0ab5b0735h
+dd 040a2f18fh
+dd 0295d8731h
+dd 049e1ea45h
+dd 04c4fbb1dh
+dd 09a74ca8fh
+dd 02aea3d8bh
+dd 032726eb4h
+dd 075bfc372h
+dd 0cfb12baeh
+dd 02192c957h
+dd 055ddd052h
+dd 059214420h
+dd 03f06e85ah
+dd 0bb3f5c72h
+dd 039f028feh
+dd 02701f730h
+dd 0a4437c5fh
+dd 018eb9729h
+dd 0792fa22bh
+dd 0edc57fb4h
+dd 006ce8130h
+dd 04ce4b9f5h
+dd 00ccdfd3eh
+dd 025d317aeh
+dd 0d855139eh
+dd 0e171c01ah
+dd 0f64f1568h
+dd 07a9426cch
+dd 0dfc48a5eh
+dd 094c6e2e1h
+dd 0ab9f0615h
+dd 0720f0cffh
+dd 0c41ffcc4h
+dd 08743915bh
+dd 0ce4cb6b7h
+dd 096e67749h
+dd 0b2c265f0h
+dd 0c05ffcc6h
+dd 023cf99a2h
+dd 0b64896b1h
+dd 0e58ddfd4h
+dd 0a5485d80h
+dd 071e8e462h
+dd 030f148f6h
+dd 0fc5e26c8h
+dd 05832d4d8h
+dd 0d841a27dh
+dd 0d11a7e33h
+dd 026678583h
+dd 08f1155f9h
+dd 068c1c121h
+dd 059ed7f90h
+dd 0c813e525h
+dd 04b7a9d2ah
+dd 06f95a1f1h
+dd 0163b9489h
+dd 0dee830c0h
+dd 0f7ef9559h
+dd 042fbc494h
+dd 023eb86f1h
+dd 005a7b3e8h
+dd 0816d1a8bh
+dd 00572d429h
+dd 0c2a9c94ch
+dd 01bb2093ah
+dd 086af8a68h
+dd 0c792410ch
+dd 0aa0d3005h
+dd 059349f63h
+dd 0a5b36a94h
+dd 05cdafa73h
+dd 01e6aff3fh
+dd 07843589ch
+dd 058c6d480h
+dd 0de185acch
+dd 073c562f2h
+dd 054bec1a1h
+dd 02f1508b1h
+dd 066c2d52eh
+dd 0a98912ffh
+dd 04467c01ch
+dd 0a58f8a78h
+dd 0ef8dc6d5h
+dd 0d74ad131h
+dd 06a0d0f8ch
+dd 03c3ed657h
+dd 0021150abh
+dd 0f0eb15f2h
+dd 063a6d672h
+dd 069ae3ec9h
+dd 0a8ff511ch
+dd 0264bd9d6h
+dd 0bfab8ec7h
+dd 060b9fd6fh
+dd 01c653f2dh
+dd 02943b0beh
+dd 00829ee06h
+dd 095748228h
+dd 080fa598bh
+dd 0fd6f966ch
+dd 03fde3194h
+dd 039d5281ch
+dd 0790e9ac3h
+dd 07e2c95dah
+dd 099bb80b1h
+dd 0efbaac7ch
+dd 00d34bac1h
+dd 0013341bch
+dd 0da822943h
+dd 03f63e7d9h
+dd 0c6cac280h
+dd 0fec52fa0h
+dd 03cbb1424h
+dd 09a2953e4h
+dd 028cd7cdfh
+dd 0a444d6c1h
+dd 0646e496dh
+dd 0022c0073h
+dd 0b37764e5h
+dd 0f3f24c83h
+dd 08333fc3fh
+dd 0b0a20c82h
+dd 0d54a34bbh
+dd 0c099fe83h
+dd 035827095h
+dd 0819c223dh
+dd 060ffa3f3h
+dd 087c3c697h
+dd 0c81cd282h
+dd 0cbe47812h
+dd 03fcdbf4ch
+dd 017b4947ch
+dd 0918f86f2h
+dd 0ac9d1d1bh
+dd 0a9714f70h
+dd 05942be52h
+dd 0b186b642h
+dd 0a5c23a12h
+dd 094e6261ah
+dd 068d93cc4h
+dd 03627c398h
+dd 0edd84d9ah
+dd 03a0c985dh
+dd 0efbf507ch
+dd 01057384bh
+dd 0d8b38921h
+dd 07f2cc5bah
+dd 06e4233a3h
+dd 0831b2a29h
+dd 099fa7b24h
+dd 0f0313e8dh
+dd 0718396d7h
+dd 0b341c368h
+dd 03bb5463ah
+dd 069a494b9h
+dd 0f2071613h
+dd 0f712d6c9h
+dd 04a23bf6eh
+dd 0072d7009h
+dd 0091bdef6h
+dd 05de31316h
+dd 0336b77f5h
+dd 0d19d243eh
+dd 027c21e1dh
+dd 0f70b014fh
+dd 03929e165h
+dd 07af4acfch
+dd 012944d82h
+dd 038702ab5h
+dd 06a7610d9h
+dd 00eb75c05h
+dd 0caf11009h
+dd 00f022044h
+dd 0b043850dh
+dd 011917fdah
+dd 0e4f96d19h
+dd 05c183bd0h
+dd 0db8acab3h
+dd 0725f3f57h
+dd 04e0f5cc9h
+dd 02adb2cb8h
+dd 0627c35d3h
+dd 0cb9c4a08h
+dd 0206d29bbh
+dd 00cbfa832h
+dd 060675a03h
+dd 047168602h
+dd 04304c52ah
+dd 0c9455936h
+dd 0aafff487h
+dd 0ca416598h
+dd 006c127ach
+dd 0a0a16a9bh
+dd 0ae5847a1h
+dd 0058102fah
+dd 08bb8a008h
+dd 027184789h
+dd 0bd9ae22dh
+dd 0afac303ah
+dd 003424e3ch
+dd 0e6c2abf0h
+dd 0ebaffa08h
+dd 0006f3ad1h
+dd 0de97d8adh
+dd 067949054h
+dd 0a7947d45h
+dd 02049f756h
+dd 0d108d4dch
+dd 0b0ae224dh
+dd 058af17e1h
+dd 09470e054h
+dd 0de1e1c71h
+dd 002ee5be7h
+dd 0be2cf191h
+dd 06909321bh
+dd 063e6708fh
+dd 096c0eaf7h
+dd 062aa1058h
+dd 080edce27h
+dd 0ce38777ch
+dd 0a6e55d46h
+dd 080cba365h
+dd 05c44806dh
+dd 01bf7c18eh
+dd 093edeba7h
+dd 00efbd154h
+dd 0f7fa447ch
+dd 0052695bdh
+dd 0081be433h
+dd 01187a498h
+dd 0869baa1eh
+dd 0ed78c0ddh
+dd 068ee78d6h
+dd 050df4419h
+dd 0cd82a36ch
+dd 0a57e9718h
+dd 05ec26823h
+dd 0d7b2dc92h
+dd 0f5d4a82bh
+dd 0ab2c845eh
+dd 012003597h
+dd 0815fd059h
+dd 0049ac62ah
+dd 0b9611871h
+dd 0a98ece98h
+dd 065a97078h
+dd 0837e1e8eh
+dd 08620a52bh
+dd 028326f65h
+dd 02f226708h
+dd 088bca478h
+dd 010e9a001h
+dd 0ed0bf2f9h
+dd 0efeb16a5h
+dd 0ff08955dh
+dd 0b0675f17h
+dd 0b3bc8f66h
+dd 0b19c8d08h
+dd 0f6ea327bh
+dd 01ebfff29h
+dd 0f4b95616h
+dd 0fee326dfh
+dd 05cfa8fa7h
+dd 00e94d8b1h
+dd 052c5071dh
+dd 0cbbfbf6ah
+dd 0507dd034h
+dd 0eca13dcbh
+dd 0293b5882h
+dd 032b3a89ch
+dd 0e5c87dadh
+dd 0ddb7ac69h
+dd 0e34de5dfh
+dd 0d36291deh
+dd 0ad06368fh
+dd 03adaa408h
+dd 0cae486b4h
+dd 067c18bc1h
+dd 0f4d03236h
+dd 0e19cfc76h
+dd 00f86b639h
+dd 081d51e6ch
+dd 09c364f9ch
+dd 09a862607h
+dd 0a6757c10h
+dd 088f97212h
+dd 0c810d128h
+dd 07848cd4eh
+dd 094e5cab2h
+dd 0e2b4226fh
+dd 035c584d3h
+dd 08f45e1c4h
+dd 065136dc3h
+dd 0e7b485d6h
+dd 09b4c9a6ch
+dd 0ae533bf7h
+dd 08deb89f5h
+dd 03542e99eh
+dd 0152f410bh
+dd 034625d12h
+dd 011c6f61eh
+dd 0e2bd8cb4h
+dd 0f864e640h
+dd 075ea01a9h
+dd 02c9f9600h
+dd 047e05bd3h
+dd 059d5fc22h
+dd 045db53eah
+dd 0056bc099h
+dd 04801042bh
+dd 0790be754h
+dd 0960c5ce6h
+dd 08ed3f9b7h
+dd 039470ce0h
+dd 0edae1b42h
+dd 05283cb1ah
+dd 089004561h
+dd 05a257624h
+dd 02b078365h
+dd 01753bbcdh
+dd 0be897774h
+dd 0700a3732h
+dd 02dba37f2h
+dd 0a66d519bh
+dd 0c515ec23h
+dd 01fe6595bh
+dd 03b9d8f72h
+dd 0b5966caah
+dd 0e052ed15h
+dd 0a9a4e37fh
+dd 00efb0bcah
+dd 0663004bfh
+dd 06ae7f3ddh
+dd 07e53da85h
+dd 09299240eh
+dd 09a00f0d9h
+dd 0e9ba8e05h
+dd 00f296f63h
+dd 0b31fde75h
+dd 0c14948f5h
+dd 00ae28c19h
+dd 02a3f408fh
+dd 0e73aae9ch
+dd 0a61ce806h
+dd 008cb085ah
+dd 08d2a233bh
+dd 0557e3629h
+dd 06204c425h
+dd 03a1fb964h
+dd 02ec2f9cch
+dd 0b414847ah
+dd 0e4b228ffh
+dd 091c96592h
+dd 0f15b5150h
+dd 046bc8d36h
+dd 0be332420h
+dd 0994f60fah
+dd 05a272388h
+dd 07931f687h
+dd 0e1a208a7h
+dd 0aa92775ah
+dd 08a25bfb9h
+dd 021bbb13bh
+dd 0491b1a09h
+dd 0e9507e0ah
+dd 085be6af4h
+dd 009e390c7h
+dd 0d54dd5c9h
+dd 008a419e0h
+dd 0255afc99h
+dd 0931c760ah
+dd 029c8f905h
+dd 03eeb147ah
+dd 03dd7093eh
+dd 0b0cf8799h
+dd 08f05303eh
+dd 0bf11bbcdh
+dd 0ec709521h
+dd 06ff6cb3ah
+dd 011201453h
+dd 02a2d54f2h
+dd 0061d57d9h
+dd 0552f9a0bh
+dd 02044ca6eh
+dd 0798d05dbh
+dd 06783c068h
+dd 00d4d01a2h
+dd 0178ab184h
+dd 0781b8a41h
+dd 0e4ead018h
+dd 03c5cc346h
+dd 021e1970fh
+dd 0d2f0612bh
+dd 0f66a47e1h
+dd 00286f305h
+dd 0c4a9cac6h
+dd 08d684a3bh
+dd 0d537c8bdh
+dd 0e0e4e02fh
+dd 087773bdch
+dd 0cd94eb1dh
+dd 0f10233c7h
+dd 0801ba5eah
+dd 0cf17d28eh
+dd 0e5df42a3h
+dd 096b06d63h
+dd 06f1c710ch
+dd 02af97805h
+dd 0e7545fd3h
+dd 0dc5f570fh
+dd 042f2254ah
+dd 0857e67cbh
+dd 0e17b1133h
+dd 003ec27c3h
+dd 036858f9dh
+dd 004a699e8h
+dd 0d5bc0761h
+dd 0384bee6ah
+dd 0691158bdh
+dd 0be87fbcdh
+dd 0ccf67c27h
+dd 0f59ef8cfh
+dd 085c374d2h
+dd 0be6f3712h
+dd 039c52b0dh
+dd 0bb7f75f6h
+dd 092ad6702h
+dd 0997d3975h
+dd 01dac9debh
+dd 016c777fbh
+dd 032c225f3h
+dd 0c7c4be70h
+dd 0c8880cb6h
+dd 071849db5h
+dd 0fd3ad58bh
+dd 0a301c167h
+dd 0acce6d9dh
+dd 0fe2ae15ch
+dd 07264bb24h
+dd 0781c0d8bh
+dd 01a668ffdh
+dd 06964f887h
+dd 0951b2cc0h
+dd 05de3e2d6h
+dd 06e83eb5dh
+dd 0fdd47a6fh
+dd 07a1914c7h
+dd 09add0177h
+dd 0d8128fb2h
+dd 06a18d15fh
+dd 06b38a5cch
+dd 03070663eh
+dd 0733590b8h
+dd 067c59214h
+dd 0e5cf9adbh
+dd 0f6d3fba0h
+dd 08b54d939h
+dd 05e40131dh
+dd 046d317cfh
+dd 024ce780ah
+dd 0d21ffc5bh
+dd 0d099fdceh
+dd 0e83fd441h
+dd 0ef581721h
+dd 01c2f627fh
+dd 06a73fad2h
+dd 0c684e4cah
+dd 048b30ac6h
+dd 0c4c8c7fch
+dd 08e02cd82h
+dd 0dda0c640h
+dd 0e6fe07e6h
+dd 087b588c6h
+dd 03cab8184h
+dd 0036fb7f4h
+dd 0122a001eh
+dd 0264150a8h
+dd 00a3458bdh
+dd 0bda157e6h
+dd 0e73158f1h
+dd 057cc9027h
+dd 0eb0d9c06h
+dd 0e09e2841h
+dd 01708557ch
+dd 0709eb032h
+dd 032976005h
+dd 07b51dcafh
+dd 09270742ah
+dd 0a59e4345h
+dd 0f2fda02bh
+dd 03d312e6ah
+dd 0fc619afdh
+dd 0b8873bbeh
+dd 0b5cd2d5fh
+dd 0300085afh
+dd 04f62d946h
+dd 05a956e46h
+dd 052f17fe3h
+dd 0718ae91bh
+dd 02b98ee9dh
+dd 0da25f930h
+dd 0a5fb80fdh
+dd 0b4c50bd4h
+dd 0b9cf9271h
+dd 064f28b4bh
+dd 0ed06ff5dh
+dd 0efd4ba1ah
+dd 0aa2bd85ah
+dd 0df1d8410h
+dd 03e89c063h
+dd 0cd4953a7h
+dd 0ac57c022h
+dd 00deb9b23h
+dd 0bf69ab7fh
+dd 06fd5c836h
+dd 0b43d17dfh
+dd 0865e78b2h
+dd 0473abdedh
+dd 074d8d4edh
+dd 0a5f748ddh
+dd 07714440fh
+dd 0933cb8ech
+dd 005b9c6a1h
+dd 04ec0375dh
+dd 0c7e7940dh
+dd 00e7d66c9h
+dd 070f89d50h
+dd 0aa0fc338h
+dd 0ccddb0fbh
+dd 061dc2132h
+dd 070a9c784h
+dd 037152f94h
+dd 06b801d2ch
+dd 0e38a6783h
+dd 09693fee2h
+dd 0525db89bh
+dd 03047321dh
+dd 0b556e3dch
+dd 06da0cbfeh
+dd 07c7cb92fh
+dd 0ff0f39e0h
+dd 088e58253h
+dd 04fbdcb56h
+dd 00867deceh
+dd 0b99fca27h
+dd 0e954568bh
+dd 0104da19fh
+dd 004123f6dh
+dd 0733c195dh
+dd 0df5f6285h
+dd 06ac53653h
+dd 043719229h
+dd 0a73fff34h
+dd 08827602ch
+dd 079523c03h
+dd 0258d0806h
+dd 04fc89f50h
+dd 0147e6a94h
+dd 05fd75fa1h
+dd 01960a7f1h
+dd 0a9e914e6h
+dd 005198e90h
+dd 0941268c3h
+dd 0afba7fe2h
+dd 03bb8172ch
+dd 0984be291h
+dd 0c510da31h
+dd 0cbe609b6h
+dd 02d9f8e1ah
+dd 08bb34aa5h
+dd 07de2a5f7h
+dd 0f5f93aeeh
+dd 0d2b70f5fh
+dd 086a3bf56h
+dd 0e52d3681h
+dd 08274b3ceh
+dd 093ca10b8h
+dd 0d10e8a83h
+dd 023dbda45h
+dd 02a9b12c5h
+dd 02ae5d6f9h
+dd 039d29020h
+dd 0b62a7e8ch
+dd 09966121ch
+dd 0a52bc0ddh
+dd 00079dc48h
+dd 0c6fc594ah
+dd 0b7018abch
+dd 0df0dbeb4h
+dd 07c056fa4h
+dd 08e2acc1ch
+dd 091f89dc0h
+dd 01246f8ach
+dd 0fe2769a0h
+dd 02145de6ah
+dd 0798bae31h
+dd 0b341576ch
+dd 0a5ab58c1h
+dd 08da2ef82h
+dd 00c6d9f8dh
+dd 0c6f73bcch
+dd 0d7f74e91h
+dd 08dd10f41h
+dd 05f9757f5h
+dd 0b273e5c7h
+dd 0f55393f7h
+dd 0bebd2dd5h
+dd 00cedbd28h
+dd 06e2a8f37h
+dd 05a1792d5h
+dd 0da1a5c28h
+dd 0ed34e269h
+dd 0d1dc89d9h
+dd 02f92ca2bh
+dd 0d81c6730h
+dd 0698b3310h
+dd 0ebf23ff3h
+dd 0ede02a56h
+dd 0ad97c174h
+dd 08577b6a6h
+dd 01f961579h
+dd 057b5105fh
+dd 0bee56907h
+dd 08f27c41eh
+dd 04b59dab1h
+dd 0a44d2862h
+dd 0de634e51h
+dd 09a3d0270h
+dd 079bf3462h
+dd 016870f8bh
+dd 0687740dch
+dd 0c0f27d9ah
+dd 0596c3f50h
+dd 06d115a0eh
+dd 0e1cac5e7h
+dd 0c6e5769bh
+dd 0324ba8bbh
+dd 0ef723cbch
+dd 09b17f84bh
+dd 03a0931e0h
+dd 0ee04ccc5h
+dd 0a69ae512h
+dd 07caf9d9ah
+dd 05fb42097h
+dd 007be7d17h
+dd 0c62c35fdh
+dd 09c189cd5h
+dd 0964451b3h
+dd 0a101450fh
+dd 056e4b123h
+dd 03f8c65b8h
+dd 0a2f8916eh
+dd 0f7159f75h
+dd 02623e2f2h
+dd 0b897a84ah
+dd 0d23bb78bh
+dd 04aae685eh
+dd 0dde12e26h
+dd 05d023c9dh
+dd 0b26da578h
+dd 0656c0c20h
+dd 05cba3034h
+dd 0941bf247h
+dd 0bba0e712h
+dd 0eff2b3edh
+dd 000cf5cd9h
+dd 01c808adbh
+dd 01b81852eh
+dd 029b94576h
+dd 04f49133dh
+dd 05f784c37h
+dd 0228c8e9ah
+dd 0fee5b837h
+dd 051202e97h
+dd 0eda8a562h
+dd 08c2b89dch
+dd 031e4439ah
+dd 0879ca0c8h
+dd 057c66a43h
+dd 03c739b77h
+dd 0d8b50c29h
+dd 02036f7b1h
+dd 01b0c20d5h
+dd 0e04ffb60h
+dd 03c990936h
+dd 061484fceh
+dd 0652d4c1fh
+dd 09c9ec58dh
+dd 097a229cfh
+dd 0e07b61c9h
+dd 0da883b78h
+dd 09c56f668h
+dd 0c4e4f5ddh
+dd 0ccdd69edh
+dd 0742b28b6h
+dd 0ba31e876h
+dd 0c6ff1b9ah
+dd 0f556beb4h
+dd 0e1c533efh
+dd 0598087c3h
+dd 087e12114h
+dd 0751f70a7h
+dd 06161d947h
+dd 07b426a26h
+dd 007aa830dh
+dd 06fc173bbh
+dd 0a57414cch
+dd 0a03d0a20h
+dd 04737b946h
+dd 0a5a8c2b2h
+dd 035aa780bh
+dd 00c7cae60h
+dd 04dd2b5e2h
+dd 04c7e1765h
+dd 0f47c9a86h
+dd 09721b07dh
+dd 0e6a955cbh
+dd 0d9dd80ebh
+dd 0df1fd4adh
+dd 078cba0d6h
+dd 04794e295h
+dd 0e343689ch
+dd 0dbff11e8h
+dd 0b0d6b61ch
+dd 0072f4b1bh
+dd 0bb3c505eh
+dd 088300129h
+dd 06ad7a782h
+dd 0d52de565h
+dd 0a2943449h
+dd 0c8a47639h
+dd 0bd3784c7h
+dd 0f27450ach
+dd 0e3f1bf41h
+dd 010ec5a00h
+dd 0d9e7fe8ch
+dd 01f5f1ce9h
+dd 054e4aa50h
+dd 091907923h
+dd 0ca3f32e0h
+dd 0e973cc57h
+dd 0d3dd0637h
+dd 0482ec3e3h
+dd 07f27dce5h
+dd 0b7549609h
+dd 053792728h
+dd 04c72f980h
+dd 0914ac451h
+dd 0336686bah
+dd 07de191c3h
+dd 0e0ab4a79h
+dd 0cc8f67f8h
+dd 0227a68bfh
+dd 0f0b37988h
+dd 07792521bh
+dd 0ced59bb2h
+dd 03b52e015h
+dd 0dec1bd3eh
+dd 03d1c57e4h
+dd 05c1d0bbbh
+dd 052f48760h
+dd 03117c915h
+dd 0fb4d6c9ah
+dd 02bd200ach
+dd 03e53a745h
+dd 05b20d53dh
+dd 0a27c0c67h
+dd 0dc67713ah
+dd 064d2dc5fh
+dd 0bc5ef738h
+dd 017f5b1fah
+dd 0ed2eb1c6h
+dd 0164b1bdfh
+dd 0b49ade62h
+dd 062fefed1h
+dd 04b654244h
+dd 09616828ah
+dd 037de68dfh
+dd 01ccdfeebh
+dd 0d5d54b42h
+dd 0120bf4c6h
+dd 011c63abbh
+dd 04ace5253h
+dd 0f05d9d9bh
+dd 0fbbe88f7h
+dd 099344749h
+dd 09afddb64h
+dd 0992f1577h
+dd 0ef017ff5h
+dd 03543f1edh
+dd 060e6639ch
+dd 0c06e7c72h
+dd 0344c3e7ch
+dd 03ccadafdh
+dd 0c88400dbh
+dd 087529e18h
+dd 046268b44h
+dd 01a8eb171h
+dd 05e0affc5h
+dd 00a63e3d6h
+dd 0c16e4245h
+dd 0f2e06253h
+dd 0db770d41h
+dd 01d093daeh
+dd 012008541h
+dd 0a276e248h
+dd 0ea287e04h
+dd 086d45316h
+dd 061c4dd4ah
+dd 0f8e41322h
+dd 062593ecdh
+dd 071c3e3b1h
+dd 0bdc89b3ah
+dd 0b8e427c5h
+dd 0343032abh
+dd 0351db345h
+dd 051dabfaeh
+dd 067ac8ebah
+dd 0c97c6978h
+dd 047e36800h
+dd 041241a34h
+dd 04f980872h
+dd 0eea1af85h
+dd 07bc1fe23h
+dd 0712f7fcch
+dd 0bd3c1073h
+dd 05c467aa4h
+dd 0e60d4be1h
+dd 0e0204ba4h
+dd 072df3479h
+dd 09acf4103h
+dd 0392cf1c0h
+dd 0fbf188aeh
+dd 0b11b5731h
+dd 0dd825071h
+dd 0d0a4170ch
+dd 070ae03f2h
+dd 0da2bcc1fh
+dd 09bc6c162h
+dd 0d20e8f6ah
+dd 0b259e1fch
+dd 0226a3b1dh
+dd 0756b6686h
+dd 0d7105827h
+dd 0ac42ef17h
+dd 06f02d9b1h
+dd 00f6af4c3h
+dd 0d6d4b863h
+dd 056331e1bh
+dd 03ea550edh
+dd 03c594ea5h
+dd 0277b3856h
+dd 069c8afa3h
+dd 021fecd15h
+dd 0017bfca3h
+dd 0bae14db8h
+dd 0c117e5d2h
+dd 009c3dd85h
+dd 031106fa4h
+dd 09968b912h
+dd 04d9c1f9ah
+dd 01ce17e35h
+dd 0268f3d98h
+dd 0a9e9943fh
+dd 039a763f7h
+dd 0f582e7a8h
+dd 04f62b9afh
+dd 0cfe11bf1h
+dd 06752c896h
+dd 0b059d079h
+dd 09ad43178h
+dd 07ab0c7d5h
+dd 0d28f380ah
+dd 007e92932h
+dd 0c7b5f37ah
+dd 0d73c6b49h
+dd 0c919f177h
+dd 0c59cb3ebh
+dd 0eb917cb2h
+dd 0c20b3f29h
+dd 09687424fh
+dd 095b42346h
+dd 0d07f9fdbh
+dd 04c8d9b01h
+dd 041764fe7h
+dd 0fb1dba6dh
+dd 00026fc16h
+dd 02aa5bca3h
+dd 09cb8a669h
+dd 09c210fdah
+dd 077489de6h
+dd 0e30e54ebh
+dd 016b91452h
+dd 0b515e1aah
+dd 0562a8a3dh
+dd 078f6333eh
+dd 059105066h
+dd 089b24f3ah
+dd 0be43dfffh
+dd 0676856c4h
+dd 0de64aa7dh
+dd 032117586h
+dd 0664ee110h
+dd 0a754c959h
+dd 075a9539ch
+dd 0cfcb01a2h
+dd 030f6022dh
+dd 04f8a11a6h
+dd 0a9930dd7h
+dd 0be8dd445h
+dd 01938d938h
+dd 0defd2ce1h
+dd 0b094d61bh
+dd 0ceb021e9h
+dd 00af0eeebh
+dd 0e0d71900h
+dd 0c81e394dh
+dd 068b6a025h
+dd 03eb0acb0h
+dd 0bab06c18h
+dd 048341cc1h
+dd 0369552d1h
+dd 065fd4a7ch
+dd 04160f7cdh
+dd 03a392ae0h
+dd 077b61a8dh
+dd 0dbe62a4bh
+dd 0e8dc8a24h
+dd 01590a743h
+dd 03e632b76h
+dd 0e2bffb61h
+dd 069f6c23ah
+dd 036ee75bah
+dd 0c620aa4fh
+dd 0ef9e2fe0h
+dd 033b2c839h
+dd 01d93804eh
+dd 0f4e2b99eh
+dd 0b97be138h
+dd 05b003270h
+dd 07cc76e68h
+dd 03f02e095h
+dd 011cd7866h
+dd 02351a9c0h
+dd 0f0b1aeebh
+dd 0d44d9554h
+dd 0ed87a204h
+dd 08e712543h
+dd 0477b1cech
+dd 0c0ddcaedh
+dd 09211c28fh
+dd 02aca1802h
+dd 0bfef465ah
+dd 06b73215bh
+dd 0c7cd3322h
+dd 04dc43c81h
+dd 0b39789edh
+dd 079753df8h
+dd 0783a5209h
+dd 093f2c322h
+dd 0a9d2638ch
+dd 0cc39bdc6h
+dd 013a828feh
+dd 01e028272h
+dd 03dec1994h
+dd 0f4ff29bdh
+dd 0afb7b1fbh
+dd 059b5d41dh
+dd 01435e6edh
+dd 06ac8d1dch
+dd 0f1f928f8h
+dd 02a46246eh
+dd 00966c21ch
+dd 06d17f3f7h
+dd 0bd339401h
+dd 09bed9bc9h
+dd 0d2747ac6h
+dd 023a1fc9fh
+dd 0822eb01fh
+dd 0ec27ed3ch
+dd 0c2e2add0h
+dd 01727f2dbh
+dd 06e62e6fdh
+dd 09a73d19fh
+dd 02b54e29bh
+dd 0aa35aad5h
+dd 0656063d4h
+dd 0eef19a55h
+dd 0869470e3h
+dd 000291da6h
+dd 01d8a2a09h
+dd 0fa4a7812h
+dd 08987a9bfh
+dd 0fe956321h
+dd 0b629f126h
+dd 00446f3fdh
+dd 0d192d5eah
+dd 0a66c7bf2h
+dd 003ee8ddch
+dd 05c3d36b6h
+dd 0ddfefdcdh
+dd 061475093h
+dd 0729071fch
+dd 0b7671029h
+dd 050b7c56dh
+dd 0c44961dfh
+dd 02b7b28d3h
+dd 073e746edh
+dd 028217717h
+dd 0e640ec12h
+dd 0ca4e4eb4h
+dd 013911affh
+dd 0b1f7cb6ch
+dd 01922a68dh
+dd 058848112h
+dd 0f4baa40ah
+dd 047426111h
+dd 026c6c6b3h
+dd 026296440h
+dd 07b33cd2fh
+dd 03ce9bf1ah
+dd 0924d1c4dh
+dd 0164ab675h
+dd 089e78c67h
+dd 096e53761h
+dd 06fbbc1ffh
+dd 072fb0ee5h
+dd 0d8efac89h
+dd 06cf241f4h
+dd 0e49f2b8ch
+dd 0ca054ae4h
+dd 09dda9225h
+dd 0f6a6545bh
+dd 0610a3738h
+dd 0e38f9bd5h
+dd 05e314ab7h
+dd 0ceb2c8e2h
+dd 03b88509ch
+dd 0f3a7427bh
+dd 0c81783cdh
+dd 0ae7a3511h
+dd 007bb0f3dh
+dd 081a751aeh
+dd 0508bdb72h
+dd 064675aa5h
+dd 060447a07h
+dd 061dd4078h
+dd 01d442c16h
+dd 0ed6017b0h
+dd 012cf920ah
+dd 0ef98f419h
+dd 041c19c14h
+dd 071505f7ch
+dd 0248bcd1fh
+dd 018f5c312h
+dd 040f5f931h
+dd 0041a21c8h
+dd 0ac26f95ah
+dd 0591d563ah
+dd 0a5fb6394h
+dd 0619af47dh
+dd 0ec81863ah
+dd 0f08cf14fh
+dd 0e571f9e4h
+dd 06ce0e890h
+dd 03eb1dac6h
+dd 017694db0h
+dd 07bdb0a5bh
+dd 0ed1b0d43h
+dd 0aa8b036fh
+dd 0c2640d5fh
+dd 0a218efefh
+dd 09cdd9a40h
+dd 019b97a98h
+dd 05794cd73h
+dd 03e504f79h
+dd 0f0190a97h
+dd 0bfe095eeh
+dd 0cb42380bh
+dd 0e00228f5h
+dd 0512caebch
+dd 09eae0b5fh
+dd 0ffff5ba6h
+dd 054b5d00ch
+dd 0a12c970eh
+dd 03d13fb48h
+dd 06f36ab2ah
+dd 0ba9b3883h
+dd 00b07d619h
+dd 03827b11dh
+dd 0cb37ecb5h
+dd 0193b5aceh
+dd 0183d84d3h
+dd 0eebdf234h
+dd 020c6b9dbh
+dd 004fc2f2eh
+dd 0b55a5b72h
+dd 082d87560h
+dd 07be18cf7h
+dd 0c288f9b0h
+dd 0f2b1f8a0h
+dd 032860c17h
+dd 003de7b2ch
+dd 0a7e0047bh
+dd 0d88f34c2h
+dd 0dd04322ah
+dd 03571b180h
+dd 020c246bbh
+dd 07900131ah
+dd 0c6bf45f8h
+dd 01108f158h
+dd 0fddfd378h
+dd 0ef72fff0h
+dd 0f5e39800h
+dd 0bfe06e40h
+dd 0115b6c31h
+dd 03afd86cah
+dd 025468d28h
+dd 0fadd4213h
+dd 0546a6ca7h
+dd 0e79726a9h
+dd 0d5ff3f1dh
+dd 06afbe2c1h
+dd 04c614d11h
+dd 0cde39bbah
+dd 03f6daf2bh
+dd 0fe71feedh
+dd 08cdbd8ffh
+dd 0e6c8135eh
+dd 07f73cb92h
+dd 0409b2de6h
+dd 00ab1f6a4h
+dd 0670033c2h
+dd 0c1b4ebcah
+dd 01f205144h
+dd 056ad8b3ch
+dd 0a611b8b6h
+dd 0aa22c6adh
+dd 0e232032ch
+dd 05da81033h
+dd 05d5bb5b6h
+dd 0aac497f8h
+dd 03558658ah
+dd 0801dc8bfh
+dd 03e9682adh
+dd 063bea0adh
+dd 03da5bc47h
+dd 005bc66f0h
+dd 0828932bfh
+dd 098ce9b95h
+dd 02a0c780eh
+dd 074194733h
+dd 05c96f1b2h
+dd 06f7872abh
+dd 0f4f92064h
+dd 051dc5a3bh
+dd 0e6821b99h
+dd 0a81b8d59h
+dd 0c395e456h
+dd 07f0c2090h
+dd 0131d755bh
+dd 0c2c9b5d5h
+dd 0d7f8fa84h
+dd 0f71053f4h
+dd 0e077dd3bh
+dd 059c40534h
+dd 03f7f7951h
+dd 0aadf68cfh
+dd 0205767a7h
+dd 038792ea5h
+dd 02fb3d848h
+dd 077776498h
+dd 0d6b8924bh
+dd 0129fca6ch
+dd 0b6af8cdbh
+dd 06d67d78fh
+dd 0e821cf5eh
+dd 0d5df289eh
+dd 09cca9f19h
+dd 0dca0aeech
+dd 0b9e8fa0ah
+dd 05ed77c4ah
+dd 016980055h
+dd 07558cca7h
+dd 09adb2e20h
+dd 05dd44627h
+dd 0dc3d0df8h
+dd 0f6dedf3ah
+dd 08e155cfbh
+dd 0d7413b8bh
+dd 0f8e1f9abh
+dd 0cffe294dh
+dd 090959402h
+dd 01f0b5a16h
+dd 03ca948f2h
+dd 0782544a3h
+dd 03ebe34aah
+dd 0bd1c3a3bh
+dd 08370f659h
+dd 0abfc69a9h
+dd 0ad946d35h
+dd 058f9d292h
+dd 04154a0a5h
+dd 0742b4906h
+dd 07c704831h
+dd 0ef798173h
+dd 0c99c9028h
+dd 06fcd0b31h
+dd 08d08b03bh
+dd 05156f084h
+dd 00c2b2a99h
+dd 0de5f5ef2h
+dd 08e27824bh
+dd 012ffac7ah
+dd 066c940a4h
+dd 0ddb487a0h
+dd 08a6b86bah
+dd 037cf80ebh
+dd 0435c33c8h
+dd 0e9ee965ah
+dd 0acf83f57h
+dd 03d162e5fh
+dd 0e7411bc5h
+dd 05707b689h
+dd 051f18023h
+dd 0817263b5h
+dd 01cf707cch
+dd 0c21dd455h
+dd 075e9bde5h
+dd 0369259f9h
+dd 0381d55b6h
+dd 011dcf998h
+dd 05c815de6h
+dd 038b612c6h
+dd 01c2eeec8h
+dd 002311197h
+dd 036f0b1e2h
+dd 07bf97ce0h
+dd 056b43b96h
+dd 03ec79760h
+dd 0fbc5b0a0h
+dd 043f08cf6h
+dd 01474d6edh
+dd 0fbf01dcah
+dd 04ea73e5dh
+dd 0d6efbfb2h
+dd 060f2416fh
+dd 0ca12551eh
+dd 04e10e825h
+dd 085b16d0bh
+dd 0493adfeah
+dd 0e5415053h
+dd 0ec2c8cd4h
+dd 0f9086800h
+dd 0c9da4372h
+dd 089d4a245h
+dd 002826e24h
+dd 0f5b68ba3h
+dd 003551279h
+dd 07a1c9f4dh
+dd 0a45f72adh
+dd 03aaebba8h
+dd 03bffe0d1h
+dd 080e957b1h
+dd 0c6ba9e67h
+dd 084cd4d13h
+dd 0cf93bcf1h
+dd 07a2d2e94h
+dd 0711efa3ah
+dd 0124ed3ach
+dd 064613e51h
+dd 0e3f87900h
+dd 03be10ae2h
+dd 09e8fd702h
+dd 0112ff9e4h
+dd 0a8f766c2h
+dd 0a3fb944ch
+dd 09934d893h
+dd 07bc3e68ch
+dd 06135141ch
+dd 0a4ee3d71h
+dd 06b3eb4b1h
+dd 0d8f61895h
+dd 03eef6b9ah
+dd 05910f72dh
+dd 05e48d15fh
+dd 02425908eh
+dd 0bc625174h
+dd 0b229c9e7h
+dd 0bf23cf84h
+dd 0cd7f6ee3h
+dd 0eb5d3b8dh
+dd 04864db89h
+dd 013fa42dbh
+dd 072ab0af7h
+dd 069a10ca4h
+dd 0face9219h
+dd 04c9021f9h
+dd 039c7e8f0h
+dd 02ebecce5h
+dd 0dc249288h
+dd 0d973ed48h
+dd 033168c26h
+dd 01c2e98a6h
+dd 0c931ba50h
+dd 072327b0eh
+dd 0b23d669eh
+dd 0c7d75032h
+dd 08a26c5b1h
+dd 01c52eac9h
+dd 05c0c0075h
+dd 0c7397958h
+dd 0fcf155a4h
+dd 0a6d5f3a3h
+dd 0098ae4efh
+dd 00fe8f6edh
+dd 0c2d4edbeh
+dd 0a0f37852h
+dd 0eeda27a8h
+dd 03eacfa95h
+dd 09d4e79c4h
+dd 01dbcc01fh
+dd 06d453b08h
+dd 07d768e55h
+dd 0fd7b02efh
+dd 0f1c151cah
+dd 08a402df4h
+dd 0ccc98aaeh
+dd 0702cbec1h
+dd 0b3e7fa3ch
+dd 01d36a33ah
+dd 0a3d47452h
+dd 083364d0ch
+dd 01f38a92eh
+dd 034ceec11h
+dd 03f8c3c18h
+dd 0089bfb63h
+dd 0520db388h
+dd 02bcfdda1h
+dd 0087d4c75h
+dd 0ed0f06b1h
+dd 079b9a99bh
+dd 0bfde9e7fh
+dd 0a756a91ch
+dd 0d105602dh
+dd 0c8473b24h
+dd 01e3d3dabh
+dd 0261a9c94h
+dd 01b4074cbh
+dd 051131942h
+dd 0a63d7ce3h
+dd 0f735453eh
+dd 0aea68f26h
+dd 02292b2cfh
+dd 071188dc6h
+dd 06ece3b0dh
+dd 0252005ceh
+dd 0ee8a4cffh
+dd 0a91195adh
+dd 05c0e8f3dh
+dd 0d7512908h
+dd 032171b44h
+dd 0cecf6945h
+dd 05492da3eh
+dd 062e2cb02h
+dd 05ef16b76h
+dd 0fa1ad556h
+dd 0837cbd24h
+dd 0e21e9242h
+dd 0c5da9025h
+dd 01af81faeh
+dd 05a200ddeh
+dd 0bbb96234h
+dd 0aa6471f6h
+dd 0301dc2feh
+dd 085aff1b8h
+dd 046fb00bbh
+dd 02221f84ah
+dd 064f29b21h
+dd 00f52ce7fh
+dd 00cebb71bh
+dd 00b749e15h
+dd 0bc146c14h
+dd 002d3d137h
+dd 0cd2fb2e6h
+dd 0fb520ab3h
+dd 067bda1bch
+dd 07e789148h
+dd 014a13939h
+dd 0d110c24fh
+dd 0123b888bh
+dd 00f649db0h
+dd 0e058ee4bh
+dd 02c0f6415h
+dd 097b654fch
+dd 0b09f4be9h
+dd 0c05761afh
+dd 01dfefeb6h
+dd 0c14d8659h
+dd 043159df1h
+dd 060af8832h
+dd 08ecd70d3h
+dd 06dd726bbh
+dd 0859ab0ebh
+dd 04337ddb8h
+dd 0cc05499ah
+dd 09192e15fh
+dd 07e1dabaah
+dd 02e5dfd11h
+dd 07f45eaddh
+dd 0cfdefcb5h
+dd 04fb88f65h
+dd 0f386a36bh
+dd 066d862a8h
+dd 0c4fc6c2ah
+dd 095a9dd72h
+dd 020458b6ah
+dd 051d660a4h
+dd 04ec9ff72h
+dd 037c147afh
+dd 0da60d94ah
+dd 0eb9d609ah
+dd 0a7578543h
+dd 05bc6c432h
+dd 015590f71h
+dd 003c237e9h
+dd 0b2034949h
+dd 069a844efh
+dd 016da65f9h
+dd 00b6e88cah
+dd 03f86f373h
+dd 0264c7e02h
+dd 0daee59dch
+dd 0cee8c470h
+dd 0740b692bh
+dd 048e83e6ch
+dd 02570ad29h
+dd 03c7cacb8h
+dd 092ca7fd2h
+dd 00229d595h
+dd 01c628e7ch
+dd 0f390a61eh
+dd 04c374fcdh
+dd 08f0c9361h
+dd 0d466dc07h
+dd 01d244019h
+dd 0d17005eeh
+dd 0cf39a23dh
+dd 0a431fce0h
+dd 0e3c936dbh
+dd 0a091fb6dh
+dd 037d37481h
+dd 06b92cef9h
+dd 086c0f16ch
+dd 075415dc0h
+dd 0f93280e0h
+dd 06a0ef095h
+dd 0b3d22789h
+dd 099723df3h
+dd 08b40f941h
+dd 0a5348659h
+dd 07718152ah
+dd 0effc5fd6h
+dd 0f356190bh
+dd 01cffa232h
+dd 035e84a1eh
+dd 072316cc5h
+dd 03a319c99h
+dd 0c9bf3681h
+dd 07e119428h
+dd 0ad5357f1h
+dd 0dd0021b5h
+dd 009fc0e0bh
+dd 029abdceeh
+dd 0ba8fdc04h
+dd 0d0977f8fh
+dd 0a0d3c819h
+dd 0b831b1d1h
+dd 00adbb26dh
+dd 028c3aa53h
+dd 01f835721h
+dd 060aa33c2h
+dd 097323a65h
+dd 073a27026h
+dd 076835d9ch
+dd 02da81796h
+dd 03ac74faeh
+dd 0beb8ee4ah
+dd 01d951480h
+dd 09d1662dch
+dd 01aaa5bf6h
+dd 06e139f85h
+dd 0ae325e20h
+dd 0d60a4fb2h
+dd 00b15e644h
+dd 0f04a39d9h
+dd 0e4642c30h
+dd 06539ac3bh
+dd 0f9c7ed79h
+dd 0e5677da3h
+dd 0d945629ah
+dd 0cc0a3c34h
+dd 01b9e5577h
+dd 0402a684ch
+dd 0fac80bd7h
+dd 0fa24dab0h
+dd 0bfba432bh
+dd 03341a1c9h
+dd 0a58e6121h
+dd 03d21ae7ch
+dd 0ac51a04bh
+dd 080d39fe0h
+dd 068efd1b3h
+dd 0dd6adf44h
+dd 0cc2b1803h
+dd 00de1ac75h
+dd 0437f7ae6h
+dd 049140b09h
+dd 07b80267dh
+dd 020c14c31h
+dd 02be747edh
+dd 01754cbb6h
+dd 09df43c5bh
+dd 0ec6877bfh
+dd 02525b37fh
+dd 0c3c1ba9ah
+dd 0ac68a8afh
+dd 0994b17c6h
+dd 016703f26h
+dd 04b238f22h
+dd 06e579b2eh
+dd 0dd64fe51h
+dd 04ec6cc03h
+dd 01e7454b3h
+dd 0179f6bb8h
+dd 06c30049fh
+dd 0fd3e916ah
+dd 03ab3e40bh
+dd 081d8d82bh
+dd 0ef4a4f1bh
+dd 0a0306334h
+dd 0eb383313h
+dd 0c7ade312h
+dd 08121b8feh
+dd 01be12808h
+dd 0969cdbe0h
+dd 011721c28h
+dd 02187d72dh
+dd 0fbebb26dh
+dd 0573c788eh
+dd 0537b7c40h
+dd 08b20be26h
+dd 0a1363a4ch
+dd 0d09f4039h
+dd 0cc9783ffh
+dd 0bf6c8b7ch
+dd 07786df87h
+dd 039905200h
+dd 01751b3e9h
+dd 0777e90b6h
+dd 04711e13fh
+dd 07f81062bh
+dd 04322b9c0h
+dd 04ceab664h
+dd 06cc56a21h
+dd 047304a8bh
+dd 034313e5fh
+dd 0b09e0acch
+dd 02eb3e778h
+dd 0de47e05bh
+dd 06da96f8dh
+dd 0a4bb2deah
+dd 06642e4fch
+dd 0b76cd86ch
+dd 0f1159f46h
+dd 075bcc4b5h
+dd 00197499eh
+dd 03a54d9a7h
+dd 0c67081a5h
+dd 00dd00ab8h
+dd 0f5833a47h
+dd 051ffa2c3h
+dd 0ef536ca0h
+dd 06bd48d1ah
+dd 05cf3c2cfh
+dd 049326405h
+dd 034aa612eh
+dd 0b878db93h
+dd 0038de602h
+dd 0d20363b2h
+dd 00eeafe17h
+dd 018003d63h
+dd 078fa0adfh
+dd 061a20535h
+dd 017ccb8e9h
+dd 0aa7e9cedh
+dd 0974a4e36h
+dd 076da1676h
+dd 0f40c1e71h
+dd 05b9d19ffh
+dd 0831a85f7h
+dd 0f74d68cfh
+dd 01c48489ah
+dd 05cfd4d52h
+dd 00c4772e9h
+dd 0b4e5c8b0h
+dd 0cfff8cd7h
+dd 05a877c1eh
+dd 0e82a7844h
+dd 08788def9h
+dd 0ccab13abh
+dd 0764532e7h
+dd 0a3d16e40h
+dd 002343c22h
+dd 05ee02c1ah
+dd 07a4c6c3ah
+dd 02e13c50bh
+dd 0f1babe2ch
+dd 0cf527593h
+dd 0d6211909h
+dd 06da281d1h
+dd 060a32c78h
+dd 0f476a650h
+dd 0012de797h
+dd 0f5047255h
+dd 05d0d2926h
+dd 011b303d3h
+dd 0eab5b261h
+dd 0334cf282h
+dd 0c902597eh
+dd 0736d94b1h
+dd 0d29953efh
+dd 03e326ea6h
+dd 05064251ch
+dd 09ece7464h
+dd 053537f23h
+dd 04365436dh
+dd 0c2b1ebd0h
+dd 0c1ba71e8h
+dd 0ec406385h
+dd 0bba73aa3h
+dd 0ee201829h
+dd 0cf102b0ch
+dd 0b31b0813h
+dd 033c1c5f4h
+dd 02a777f1ah
+dd 0d84561d2h
+dd 038cf4409h
+dd 030995ac2h
+dd 0ce891d13h
+dd 0e1f9bccch
+dd 06129d7cbh
+dd 0c4e2dbc3h
+dd 0296406fch
+dd 0d88f340fh
+dd 0a1d79601h
+dd 0cd938886h
+dd 0da7bb17fh
+dd 0547914bch
+dd 0bc07c385h
+dd 0dd44b9d6h
+dd 01c82a762h
+dd 08258f5c9h
+dd 0394e8ff1h
+dd 0752429a3h
+dd 0437941cah
+dd 0d98e679dh
+dd 085c01278h
+dd 0f26c71d9h
+dd 0722c165bh
+dd 0eddefb37h
+dd 0430d1318h
+dd 08535edbeh
+dd 0da17e414h
+dd 08dd73125h
+dd 01c4924f1h
+dd 0322ec320h
+dd 0f48f0feeh
+dd 0b2903dd8h
+dd 0056b91adh
+dd 099bf6749h
+dd 0ed2ff54ch
+dd 02ef36293h
+dd 04e9a6679h
+dd 0c10aaf7ah
+dd 01e1cd303h
+dd 0c0fb0ab8h
+dd 06116d592h
+dd 04264ca4fh
+dd 01cd50083h
+dd 034935db9h
+dd 0ee1ec826h
+dd 00a740504h
+dd 0de103771h
+dd 087aaee5ch
+dd 061e5bb4ah
+dd 03eb34a82h
+dd 0a8496d08h
+dd 03b9288b3h
+dd 0a793ac13h
+dd 022c724beh
+dd 0334d79b0h
+dd 0b0be751dh
+dd 0931b7ffah
+dd 0d4d5cc82h
+dd 038b7e109h
+dd 0d7a38f71h
+dd 064251cf8h
+dd 0bb89fc2ch
+dd 0cb285aa7h
+dd 09d72a011h
+dd 07b8c27fah
+dd 0ed704db8h
+dd 0385cf44eh
+dd 0466b3655h
+dd 03021eec0h
+dd 0ad4e7fd2h
+dd 0acefd57ch
+dd 0df9430f0h
+dd 09569bd6eh
+dd 01d87cdb5h
+dd 0b24fdc93h
+dd 034782cc4h
+dd 0293ddc57h
+dd 066f82eech
+dd 0233254ddh
+dd 0f1dcd36ah
+dd 0cb4d74b0h
+dd 074a48bc8h
+dd 0bd4caf43h
+dd 0be27bd0ch
+dd 03769431bh
+dd 0c17c5436h
+dd 034a31b0eh
+dd 059428671h
+dd 07723c031h
+dd 05c089c9dh
+dd 01e08c3ddh
+dd 0f50fe13ah
+dd 0098fcc4bh
+dd 0bd3f6597h
+dd 0ec06c8d4h
+dd 0286d99bch
+dd 04bd9a720h
+dd 030b011bah
+dd 07ced3e9eh
+dd 0d2be7378h
+dd 0d42c871eh
+dd 0281bafd5h
+dd 0cc18ed14h
+dd 09943e1b6h
+dd 0594cdeach
+dd 0741ad77ah
+dd 0aae8943bh
+dd 05974e89fh
+dd 02ef10649h
+dd 061d6eee3h
+dd 0e6ec0e83h
+dd 023e4ed2eh
+dd 096b4a274h
+dd 032ee8e33h
+dd 02e20e090h
+dd 05894b79dh
+dd 03765fadah
+dd 0da9384bdh
+dd 0d01788b1h
+dd 0c8bbdd4ch
+dd 08595d9c9h
+dd 03f858641h
+dd 0f2315d73h
+dd 0b8ce2ef9h
+dd 0bd00141ah
+dd 0704a4890h
+dd 0c1b3a3d0h
+dd 04a7fc993h
+dd 0db3e6303h
+dd 049419216h
+dd 0f093b87dh
+dd 069e6a0d9h
+dd 0c9ae4411h
+dd 01b1da37bh
+dd 045bfc417h
+dd 0ce694c8ch
+dd 061c6b231h
+dd 08b3735c4h
+dd 0f1708fe1h
+dd 01ac97a64h
+dd 0ad16be93h
+dd 0ceecb6e7h
+dd 0a05d5691h
+dd 0596c3e0ch
+dd 0d6cf5fcah
+dd 030d52e23h
+dd 045842d35h
+dd 050dab3b6h
+dd 08e901c67h
+dd 0a9ffa4e8h
+dd 03c11df7ah
+dd 0b508b0c0h
+dd 035b05e15h
+dd 0ce6d492ah
+dd 0868f8bech
+dd 0ec2f50d1h
+dd 05eea2109h
+dd 0dc83b7f1h
+dd 0b4ecbca9h
+dd 0537b5260h
+dd 072eb6aa9h
+dd 0b21117e3h
+dd 09f18172fh
+dd 0d6109d7dh
+dd 0f9cca696h
+dd 05e028c69h
+dd 0facf0df3h
+dd 0063af9ffh
+dd 0082c93f2h
+dd 0855b4cf0h
+dd 0fb7769c2h
+dd 0669e6292h
+dd 0f6a4a4b8h
+dd 00dd5ad68h
+dd 07ea5b1d4h
+dd 019ea3b03h
+dd 08cf1c9d0h
+dd 080949211h
+dd 014b91481h
+dd 018728919h
+dd 047544831h
+dd 0bc4ab4f9h
+dd 032605443h
+dd 01e0c2da5h
+dd 0f8330e88h
+dd 0821c8fe5h
+dd 04e313da8h
+dd 09587e084h
+dd 090cc33c7h
+dd 0bd5e0e6eh
+dd 0e64cbd19h
+dd 0fc1d42eeh
+dd 0c5fcc230h
+dd 0e2e52317h
+dd 0452c5329h
+dd 07df0ba4ah
+dd 07cb35dd5h
+dd 053e7752dh
+dd 0c43d5477h
+dd 0e268326ah
+dd 0c968c6e6h
+dd 04f2899b0h
+dd 06aadc2cch
+dd 04460be16h
+dd 0d61c4471h
+dd 05b75804bh
+dd 0e9cb999eh
+dd 0301358adh
+dd 059fac3fbh
+dd 042e57ffch
+dd 06062b15eh
+dd 0fb323e2ch
+dd 09fb5f54bh
+dd 05353f0b5h
+dd 0acbfc336h
+dd 0fdcd6e9ch
+dd 0e1dc9108h
+dd 0b033670fh
+dd 075314922h
+dd 0f8c7a125h
+dd 040849b95h
+dd 00320e2d7h
+dd 0c01f5c7fh
+dd 03f31606ah
+dd 0a1083b18h
+dd 08487a0f2h
+dd 060a6a2f1h
+dd 02da09c01h
+dd 0683b2c41h
+dd 0b61486f1h
+dd 0ada06ee5h
+dd 07448587ah
+dd 071adf0c4h
+dd 0f06f3a13h
+dd 0917ca65bh
+dd 032f4558dh
+dd 00ece5675h
+dd 031f9392fh
+dd 0d01fa220h
+dd 00cadcc28h
+dd 0a688b815h
+dd 0c8f3d99fh
+dd 0ae7840ach
+dd 031cf5555h
+dd 0fdabffafh
+dd 029f8f1bfh
+dd 03e8b30dah
+dd 0573236e1h
+dd 0bd719b84h
+dd 0e1cd76c0h
+dd 04be5f8feh
+dd 02787dc8eh
+dd 0f0c7eb34h
+dd 0f3f65656h
+dd 0dda3535eh
+dd 0e9895a52h
+dd 0b9ee6011h
+dd 079be4dfah
+dd 050570ad4h
+dd 02db89c12h
+dd 0571d7584h
+dd 0069c3299h
+dd 02ecd5553h
+dd 03eaf32d2h
+dd 0c453b811h
+dd 0fd524faah
+dd 0d91772b6h
+dd 02006e9dch
+dd 0c5815f55h
+dd 0c1a9e273h
+dd 01193639dh
+dd 0a3b02474h
+dd 0b2c8b732h
+dd 0b12c75ddh
+dd 0cfd00bd8h
+dd 07c20cd7ch
+dd 0bc03688dh
+dd 098227e08h
+dd 09c5e570eh
+dd 002c8a75fh
+dd 0471c9893h
+dd 02cde9011h
+dd 06f1c6ee0h
+dd 0b6801b4bh
+dd 007abf063h
+dd 0580454bfh
+dd 0189bccaeh
+dd 0de20ac64h
+dd 06049d051h
+dd 05a7b87a8h
+dd 05e50aed4h
+dd 02c51bd7dh
+dd 0c2658f76h
+dd 0af782edah
+dd 0b8312bdah
+dd 0a44bc605h
+dd 047f877c8h
+dd 09d39a267h
+dd 0f53b993eh
+dd 02a912cf7h
+dd 05595f996h
+dd 013279cf0h
+dd 0257dca13h
+dd 0c825c3b1h
+dd 0242c7b7ah
+dd 093e3209fh
+dd 01d401655h
+dd 0616d6db9h
+dd 021ce56a8h
+dd 036dde5d4h
+dd 0451267a9h
+dd 0f66d45ddh
+dd 077c605e5h
+dd 0afba528ch
+dd 07d73f982h
+dd 0fc025307h
+dd 0bf6b5930h
+dd 0d80382a8h
+dd 03df0e1cfh
+dd 04537d1a6h
+dd 0c54a6cdah
+dd 0c5c049c1h
+dd 0f656e289h
+dd 04581876dh
+dd 04076caf9h
+dd 0d8d59775h
+dd 0983cfa18h
+dd 0cd29da58h
+dd 0de94b918h
+dd 0e20a7141h
+dd 0c5486fa8h
+dd 0d98988a1h
+dd 092f744d1h
+dd 0fd2ac9d4h
+dd 06780beb4h
+dd 0e298273eh
+dd 0067feb1fh
+dd 04e0cf581h
+dd 07a50ebebh
+dd 0abf9b75ch
+dd 08043643ch
+dd 0438fa641h
+dd 0a7fc8e95h
+dd 0abb65914h
+dd 09e0224afh
+dd 0686f7edeh
+dd 0694a3d6bh
+dd 070c040b4h
+dd 0d20c932eh
+dd 0eb4de51dh
+dd 00f4448b3h
+dd 0836b36b8h
+dd 01e32abbah
+dd 0bf083b10h
+dd 02fa09b38h
+dd 0743dce1dh
+dd 016221443h
+dd 0d1ea2f5fh
+dd 04e8e81a2h
+dd 0587b6bceh
+dd 0bfa56f84h
+dd 016ace68ah
+dd 0b2645e4ch
+dd 0aea612a4h
+dd 01ecac992h
+dd 0b4193008h
+dd 0ed43b7efh
+dd 0d7d58271h
+dd 059b99e62h
+dd 0fc1997d0h
+dd 0d4f9047dh
+dd 002f8bfedh
+dd 0bb021f2ch
+dd 02ee20f88h
+dd 0a35277edh
+dd 0b6b7d74bh
+dd 063e7c927h
+dd 0db75d642h
+dd 0ba6f17bfh
+dd 069a1480bh
+dd 0add9a80fh
+dd 00ad5bfe3h
+dd 01695b9e7h
+dd 0e6eb59dfh
+dd 0d309e34bh
+dd 0eb9ecd35h
+dd 04aa2cec9h
+dd 089337010h
+dd 0a124bfbah
+dd 0dfaf887dh
+dd 02d44a870h
+dd 0d0c36d44h
+dd 0b87ff099h
+dd 0667c7a6eh
+dd 0bb09a38dh
+dd 01d4f0987h
+dd 0227726ddh
+dd 00ec5f96dh
+dd 0cdfe4891h
+dd 0d5d2882ch
+dd 05edc869ch
+dd 0f08aa0beh
+dd 0cb27cb33h
+dd 0bbd673b2h
+dd 0f4acaefch
+dd 01a8e1c8bh
+dd 067b488a9h
+dd 0fc7f15ffh
+dd 0648da577h
+dd 00083b3b9h
+dd 00ef3eb91h
+dd 0af816b13h
+dd 07e482116h
+dd 0aa715cb2h
+dd 09f4c7f2ch
+dd 01d501b30h
+dd 045df046ch
+dd 0f169db36h
+dd 0f179b3cah
+dd 0fa974e81h
+dd 0506ce8ach
+dd 01d918a29h
+dd 00679945bh
+dd 014079a3dh
+dd 0180b29c0h
+dd 079a6b2b8h
+dd 03077d3bdh
+dd 07bcd2733h
+dd 02b486036h
+dd 0dddecaa3h
+dd 023820101h
+dd 003c4b043h
+dd 07b2967fch
+dd 081b9b525h
+dd 0ffc84dc3h
+dd 0007bdab5h
+dd 07446da12h
+dd 09b2e5624h
+dd 0ebc69142h
+dd 0d94b364eh
+dd 06965711fh
+dd 0965200e2h
+dd 0e90d2ca4h
+dd 006edf645h
+dd 09272daadh
+dd 0c3472030h
+dd 0215b19beh
+dd 0302f15cah
+dd 0688ebbdbh
+dd 067d4a98ah
+dd 08c65a6abh
+dd 0d59087d0h
+dd 0afaca79eh
+dd 098540c34h
+dd 08aef9dc6h
+dd 09fc1b89bh
+dd 022c8ed51h
+dd 0fb6614c1h
+dd 093358366h
+dd 0133ccb3ah
+dd 08e5f18b1h
+dd 06cb5401dh
+dd 075e27b48h
+dd 0933d26d5h
+dd 0f3b1bd9fh
+dd 05b54c884h
+dd 0c59d8912h
+dd 0c4573404h
+dd 015fc166ah
+dd 0ce3253b1h
+dd 0d726aa7eh
+dd 06f5d30cah
+dd 07c711c43h
+dd 0362fccddh
+dd 06e0cea75h
+dd 07dc3899fh
+dd 06dc3f826h
+dd 05d8afa92h
+dd 02896936ah
+dd 06700746ah
+dd 0744d2975h
+dd 0c1a79495h
+dd 0c3fe4b14h
+dd 0e8caee15h
+dd 083ed3be2h
+dd 09edac458h
+dd 06e664f25h
+dd 0a2cdb226h
+dd 0bc85a02fh
+dd 0bdf1b834h
+dd 0aaa48dd8h
+dd 05e760774h
+dd 0ad241086h
+dd 0a1fae982h
+dd 0a361fd0ah
+dd 0f04853fch
+dd 0ac3953aeh
+dd 07fcd1720h
+dd 0ebc49b70h
+dd 00619e5fah
+dd 02d50260fh
+dd 075e096b9h
+dd 09346b67fh
+dd 0bddb07aeh
+dd 0e28a93a4h
+dd 0444b6607h
+dd 0de8881bfh
+dd 0e90a3415h
+dd 084651f76h
+dd 014861efdh
+dd 0e5a971beh
+dd 08b7c5c7fh
+dd 050e7e380h
+dd 0bafb6f12h
+dd 030fc4471h
+dd 07b0c8d89h
+dd 016037d31h
+dd 0fd79adfbh
+dd 04ec7d03ah
+dd 0a5bda640h
+dd 0615abc93h
+dd 0d836de6ch
+dd 0e81c459ch
+dd 0b547f766h
+dd 033154cdbh
+dd 03becdd19h
+dd 0706922a3h
+dd 04bf66c31h
+dd 069fc73e8h
+dd 02d6c3c54h
+dd 0b5ceaf73h
+dd 088478638h
+dd 082936733h
+dd 0fc618ee2h
+dd 0af5da33fh
+dd 0dd15b960h
+dd 0196a2f74h
+dd 080174d67h
+dd 0c7831858h
+dd 0e186902dh
+dd 04b09a36fh
+dd 00b5bf5aah
+dd 024b3e51dh
+dd 0020eab0ah
+dd 027ece5e5h
+dd 05d4172fch
+dd 0d137d0e7h
+dd 0e2121e56h
+dd 0016170b5h
+dd 0c3b1ff8ch
+dd 0aa709cb7h
+dd 0ccadf1b0h
+dd 0df0e09d5h
+dd 057e33961h
+dd 0c0886b5fh
+dd 01ff1b3c6h
+dd 0fd258537h
+dd 0d9bce35ah
+dd 0620b48cch
+dd 054ac0465h
+dd 08da33e33h
+dd 040a1d61dh
+dd 09ebda60ah
+dd 05c109d58h
+dd 0b2a3255eh
+dd 0f5b92ef1h
+dd 00b84d294h
+dd 082c829a0h
+dd 0476927e6h
+dd 0aa708effh
+dd 0b44d3ce1h
+dd 031d9dafch
+dd 01020dd55h
+dd 007444f61h
+dd 0a536cb2ch
+dd 0bc14c2dah
+dd 0a08a28e3h
+dd 07049fa71h
+dd 090c0e39dh
+dd 0b2c744d7h
+dd 0eda77d78h
+dd 0383ed904h
+dd 04d538820h
+dd 0351188d9h
+dd 02f222e69h
+dd 067afd3c5h
+dd 09bc41124h
+dd 0c8349aadh
+dd 07711634fh
+dd 0f30fb122h
+dd 081c3009ch
+dd 0b14ea0cbh
+dd 0da3fe3e5h
+dd 013b5346bh
+dd 086e15f57h
+dd 0d0ddeb7ah
+dd 0d190c4dah
+dd 070935ab8h
+dd 03a51d53ah
+dd 079708007h
+dd 0b28c317fh
+dd 02abe0c28h
+dd 0c9c26cf4h
+dd 088ebb853h
+dd 08327e0e6h
+dd 06d914580h
+dd 0e2c1537eh
+dd 09aa2e4d1h
+dd 066740722h
+dd 08bbaa9c6h
+dd 08b465540h
+dd 0a0c77aaeh
+dd 06b46f75fh
+dd 077633133h
+dd 06541a094h
+dd 0a62ff14eh
+dd 05b2b385eh
+dd 059da6f53h
+dd 0961b24cfh
+dd 0fb610ab1h
+dd 09ec6afe8h
+dd 0285aecf2h
+dd 06c0caf29h
+dd 0217a5631h
+dd 08df8dae0h
+dd 0193094f9h
+dd 08bbe9f71h
+dd 0df1cc152h
+dd 0104a697eh
+dd 03e311909h
+dd 027177097h
+dd 0a71374a1h
+dd 05e213275h
+dd 091c50909h
+dd 0d4f431aah
+dd 091728fb2h
+dd 0e49c82f4h
+dd 0b6d3543dh
+dd 09db0879dh
+dd 034563770h
+dd 0905b60bdh
+dd 0c3a89052h
+dd 080340dadh
+dd 0c58da991h
+dd 0d029c861h
+dd 009abb388h
+dd 0a40f2872h
+dd 0b5953101h
+dd 0aede8ac5h
+dd 04715ec79h
+dd 0f4d33d38h
+dd 0a87f86b2h
+dd 02653c3a3h
+dd 017405fedh
+dd 048ed776eh
+dd 0c6b893abh
+dd 05094c4dah
+dd 03ce48252h
+dd 0600cf397h
+dd 0ae7e99b1h
+dd 0c5c60071h
+dd 011806e59h
+dd 05621c808h
+dd 0f260f29dh
+dd 0dbb60b49h
+dd 0b0e5c570h
+dd 0cbead4bfh
+dd 0a05a9844h
+dd 0b6da8775h
+dd 0cded4947h
+dd 09cedef14h
+dd 0b97f7ef5h
+dd 00957e98dh
+dd 01081ef22h
+dd 076468167h
+dd 0cb921390h
+dd 0eeca84dfh
+dd 0e27f1583h
+dd 09cfa3720h
+dd 0779bcd93h
+dd 0d736a5d7h
+dd 0064874f1h
+dd 0c15805beh
+dd 0384cc937h
+dd 0ab6faf39h
+dd 0bb595971h
+dd 0fec70499h
+dd 064abd3d8h
+dd 0a5eb3303h
+dd 06483fbc3h
+dd 0708f6796h
+dd 04e29930ch
+dd 01fc439e6h
+dd 0ef129f5ah
+dd 07001bbech
+dd 029775133h
+dd 06bac28a9h
+dd 0161576cfh
+dd 0eaa9d0f9h
+dd 0c07a3e39h
+dd 09ea8bdceh
+dd 030e648e0h
+dd 0da55ab6fh
+dd 053d5b093h
+dd 0859ffd32h
+dd 055c764d0h
+dd 045cc24feh
+dd 0ce387eech
+dd 0fc4d4534h
+dd 028b10af8h
+dd 0c7ffdd02h
+dd 0b2e1303fh
+dd 069190d70h
+dd 00ec28dc3h
+dd 09cb3410ah
+dd 0fd0b3aefh
+dd 078867f8eh
+dd 028f172dch
+dd 03284b8f9h
+dd 003e564c2h
+dd 081d08700h
+dd 075b680abh
+dd 0f10da3e3h
+dd 0463f2b6eh
+dd 01d027aech
+dd 0edd5d9e5h
+dd 032fea2f2h
+dd 02eed722eh
+dd 0df2bad99h
+dd 068a88282h
+dd 0b25cdb99h
+dd 07abcc905h
+dd 01dc6de20h
+dd 0e8b6cbfbh
+dd 00190f3f4h
+dd 051833418h
+dd 06d1423e1h
+dd 074181d9bh
+dd 010a593c6h
+dd 0bdaed07dh
+dd 0fe9743beh
+dd 0695c1f43h
+dd 0838c05eeh
+dd 0bd055779h
+dd 0b8668d58h
+dd 029a89d43h
+dd 02ce036a8h
+dd 058af4f14h
+dd 001721ec3h
+dd 06ef1eb0fh
+dd 0592097fdh
+dd 00e3005e1h
+dd 0f86c38f8h
+dd 0926185f0h
+dd 0e3998368h
+dd 0581078f2h
+dd 0529ac0bch
+dd 0d5bc9a96h
+dd 05034789dh
+dd 03a92a125h
+dd 0bea15464h
+dd 023f49eabh
+dd 0fcdebf96h
+dd 05a2ae69dh
+dd 0c27f6beah
+dd 04fa8306fh
+dd 044c27babh
+dd 0abdcda37h
+dd 0f55c9845h
+dd 0fda77a8ch
+dd 015e498c5h
+dd 0c44aa51eh
+dd 01f1298bfh
+dd 04cb0b6bbh
+dd 0f6cad60dh
+dd 0f484ac5eh
+dd 0834990b3h
+dd 028519488h
+dd 0614cba1eh
+dd 034aaf346h
+dd 042537232h
+dd 0dfb92f65h
+dd 0a2784ac6h
+dd 09ce779c0h
+dd 00fc4521eh
+dd 0998e3458h
+dd 075b7cccbh
+dd 0e7c9baf9h
+dd 007acabd1h
+dd 0b36d6534h
+dd 0a74250e2h
+dd 0e8dca146h
+dd 0daf79837h
+dd 017f96e70h
+dd 034dcded3h
+dd 0bee4c8ddh
+dd 090d657dch
+dd 012b4902eh
+dd 00597e1abh
+dd 0976cd397h
+dd 01b6bb968h
+dd 03d7efde0h
+dd 0f1a99877h
+dd 054f78b7bh
+dd 083ebbb27h
+dd 094c56f3ch
+dd 062b9e2efh
+dd 0548c6397h
+dd 08200d62ch
+dd 0a36f5f30h
+dd 072254c85h
+dd 0a96c6d3bh
+dd 0bcd0cd28h
+dd 0c0ea048dh
+dd 06abef98fh
+dd 094941a89h
+dd 0e571700eh
+dd 016d2fed5h
+dd 07b31850bh
+dd 0b18e7a66h
+dd 05db07c44h
+dd 0dc6ca356h
+dd 08525ae6dh
+dd 090ac5151h
+dd 001e4dca5h
+dd 0754bc883h
+dd 0af1475dbh
+dd 00e4de4afh
+dd 0aecaf96ch
+dd 00bea001ah
+dd 0943530f2h
+dd 01fda4579h
+dd 0a8ca714fh
+dd 0b004abc7h
+dd 032029884h
+dd 033f4b44dh
+dd 0ce8744e1h
+dd 0f25ba12dh
+dd 0e40af279h
+dd 08662f9a6h
+dd 02896ba79h
+dd 0ab4e6f5bh
+dd 0238ab37dh
+dd 066591745h
+dd 0f4b5f683h
+dd 077848083h
+dd 0798eace2h
+dd 0058fbcf9h
+dd 08476fb2ah
+dd 0c70b52feh
+dd 04d244f48h
+dd 085b99ee2h
+dd 0cbe451ech
+dd 05203e807h
+dd 0c5ff1182h
+dd 02664fa19h
+dd 02e6a2269h
+dd 084610fd8h
+dd 0521e82ddh
+dd 0c5588e89h
+dd 0a6e4e8ech
+dd 0720c7747h
+dd 0c3206798h
+dd 04ef21a40h
+dd 04fd0392bh
+dd 0eac6bd31h
+dd 0efe78d19h
+dd 0bd85a686h
+dd 0963676c4h
+dd 094c8ffafh
+dd 026a437cch
+dd 0b93041b3h
+dd 054d82445h
+dd 01e72058bh
+dd 09ba7eecdh
+dd 0060af3eah
+dd 0fec29c9fh
+dd 00e1f8a17h
+dd 06d295739h
+dd 08aa3b49ah
+dd 076512991h
+dd 0bc54fa9fh
+dd 062f3b51eh
+dd 0dccbb30fh
+dd 02bb223d8h
+dd 049926d21h
+dd 0ca94fad0h
+dd 074f35142h
+dd 00bd4dc3dh
+dd 018cde146h
+dd 07db4dfa1h
+dd 05e7b99afh
+dd 078b65a8ah
+dd 0483dcc92h
+dd 0b20a7da0h
+dd 08e5961fdh
+dd 077b0fa53h
+dd 0ade653abh
+dd 02dce21a5h
+dd 0d9866835h
+dd 08268e13ch
+dd 00e323b71h
+dd 036648ee7h
+dd 077132d52h
+dd 0371dfd4dh
+dd 0920d1c26h
+dd 08dabc1e2h
+dd 0c473b676h
+dd 02c71ef23h
+dd 092cdd5b2h
+dd 0529b628dh
+dd 0ff065032h
+dd 0474283e8h
+dd 04545d78dh
+dd 035fca2adh
+dd 0b5c43965h
+dd 04abb9ddbh
+dd 0f273d7ddh
+dd 09e75efebh
+dd 0f83fe3e3h
+dd 0c2ca71a3h
+dd 04f7b0ccbh
+dd 0e3488958h
+dd 01ff36067h
+dd 084944918h
+dd 0754c6a83h
+dd 0faf9e9fbh
+dd 04ff1b23dh
+dd 011fcf102h
+dd 05be89c77h
+dd 0528edd6ch
+dd 0b67af40dh
+dd 00026420eh
+dd 07a6f1731h
+dd 06f3c8696h
+dd 0be70c6b0h
+dd 01aa493d8h
+dd 0bdc75474h
+dd 0c5b880bah
+dd 042ec891dh
+dd 0f113de77h
+dd 073e853d2h
+dd 0f3fec05fh
+dd 089596fafh
+dd 0971dd129h
+dd 0ec320adfh
+dd 09d7a81a3h
+dd 0db75c2f9h
+dd 04758efbdh
+dd 06053e4e8h
+dd 07d05a956h
+dd 008083269h
+dd 05a7d4db4h
+dd 07e41d315h
+dd 032e0bf39h
+dd 021f28bc8h
+dd 0e34fef0dh
+dd 0b0e46894h
+dd 0f00c2b84h
+dd 0a8f8b975h
+dd 01762ff3eh
+dd 0e8122239h
+dd 006b2c222h
+dd 063cd9ab8h
+dd 0a782a708h
+dd 03d69bdd8h
+dd 036a0b727h
+dd 0f24c668eh
+dd 0e506bc00h
+dd 0b3a1e3efh
+dd 0ce328444h
+dd 068d0ee60h
+dd 0cc1d194bh
+dd 0f7e140c7h
+dd 0c1756aa2h
+dd 05deb7021h
+dd 0e3caf605h
+dd 0210737a1h
+dd 0ff9ed835h
+dd 01b3e7724h
+dd 03cb24323h
+dd 0762590d1h
+dd 0660de09eh
+dd 032a83c9fh
+dd 05c182c9dh
+dd 05422c404h
+dd 03afa568eh
+dd 013ee4fedh
+dd 00f393f4fh
+dd 0a43cf540h
+dd 06dbcdaa8h
+dd 04967e77dh
+dd 066fcc7e4h
+dd 0160cf3e3h
+dd 024d1adcah
+dd 01b5363bdh
+dd 0f2dba8a5h
+dd 029ea7797h
+dd 0bd327d72h
+dd 0a3a75513h
+dd 0592f06a4h
+dd 06e0b39b7h
+dd 0ec2d5b8fh
+dd 02e5d91f5h
+dd 066ccec55h
+dd 05f565dc2h
+dd 05a4ba22dh
+dd 011fd63d5h
+dd 0eede058eh
+dd 01a65ee26h
+dd 0a2102f20h
+dd 0eb4880c1h
+dd 06c4c62bbh
+dd 0da8b692fh
+dd 0b35bb3f6h
+dd 068abf24ch
+dd 085abdb54h
+dd 0685a68fch
+dd 0cf3b41b6h
+dd 0d4814b8ah
+dd 0edabc382h
+dd 0ed9d669bh
+dd 0ebd7cb94h
+dd 04b49ffc7h
+dd 0e4680c49h
+dd 07d5440e1h
+dd 061bbdc4ch
+dd 0cbf74f24h
+dd 0ec86c307h
+dd 014858249h
+dd 00d8916e1h
+dd 0b8bc006bh
+dd 01fe386b0h
+dd 0917ff85fh
+dd 077300a7ch
+dd 0bfda4556h
+dd 01bddd17ah
+dd 0cd1e45b0h
+dd 06ada5f76h
+dd 0b7ff04eah
+dd 0cc1a4cc5h
+dd 0b26fbc1eh
+dd 060d19a57h
+dd 0c456c16eh
+dd 003aaab2dh
+dd 0158eb726h
+dd 03b20863ah
+dd 0cf984582h
+dd 08d8f635eh
+dd 0dc466e43h
+dd 000c3bb90h
+dd 005fd3ba0h
+dd 0e133eb62h
+dd 06a742c14h
+dd 063cd38ach
+dd 0d08c6083h
+dd 028f27f95h
+dd 0b7731517h
+dd 0ec0450ach
+dd 0ddfed411h
+dd 07311420ah
+dd 0a8f9fde2h
+dd 0af8d7797h
+dd 02fa378bdh
+dd 06836da9dh
+dd 05bb3ad30h
+dd 00ec5abcdh
+dd 082b52f08h
+dd 0ef0705e2h
+dd 065edd232h
+dd 02d5a7ee1h
+dd 061659162h
+dd 0ab5c926dh
+dd 09d978f47h
+dd 0f7bd2f32h
+dd 0d826f3aeh
+dd 07581ae20h
+dd 049e34d4dh
+dd 07b518409h
+dd 0ec9716d5h
+dd 059009b0ah
+dd 0670d8642h
+dd 0613025cch
+dd 06b786f97h
+dd 0a508a5eeh
+dd 0cc3ec266h
+dd 0409e08afh
+dd 0e81b1df1h
+dd 0e8683a03h
+dd 0b9636d39h
+dd 0d239eae8h
+dd 0b8e9cf22h
+dd 0d7d04422h
+dd 0e0748eb5h
+dd 09a78944ch
+dd 0606670c0h
+dd 015a004deh
+dd 0e9ed0f37h
+dd 03cdf5372h
+dd 012ac7b47h
+dd 02d433419h
+dd 02b81ed4ch
+dd 029aa91cch
+dd 0018173aeh
+dd 099e5658eh
+dd 038ad688eh
+dd 096991335h
+dd 0fa04ca04h
+dd 03faa666ch
+dd 07c5fdcddh
+dd 0da04904fh
+dd 0ebe4b185h
+dd 032576c46h
+dd 04e5c352ah
+dd 0996919e3h
+dd 0cabe5ab2h
+dd 04188d1fdh
+dd 029054524h
+dd 00e1ea31fh
+dd 0278961e7h
+dd 05bf64c25h
+dd 0e9764ed9h
+dd 0bde9431ah
+dd 0b655b8b1h
+dd 03d78b74eh
+dd 00a8437ddh
+dd 07eee36fch
+dd 0099c408fh
+dd 042a47871h
+dd 0d5939f24h
+dd 070670f26h
+dd 016bd7e19h
+dd 0f61a14b8h
+dd 0be387325h
+dd 0d5e3060eh
+dd 078f4bb51h
+dd 0a27b4e6fh
+dd 0b6f35927h
+dd 06468ffffh
+dd 03eb2e803h
+dd 069bce012h
+dd 03368e4f9h
+dd 021788da4h
+dd 0323af613h
+dd 02c01500dh
+dd 068519d6dh
+dd 02376928eh
+dd 0cc8c6cd8h
+dd 08b957ad0h
+dd 08de9508ch
+dd 0382b282bh
+dd 0097f4c07h
+dd 0744479a7h
+dd 0a05cc54eh
+dd 0e65207a7h
+dd 035c074e8h
+dd 07e9abca9h
+dd 0c2c5db34h
+dd 09820a4a3h
+dd 0902d0ef8h
+dd 083bd5908h
+dd 0321ebebfh
+dd 0788f9127h
+dd 01a67349ah
+dd 0c5faedd8h
+dd 0b14a6c26h
+dd 0b48c1490h
+dd 0f9a045bbh
+dd 0b33de7a7h
+dd 0110cc989h
+dd 07574c755h
+dd 0d44533c1h
+dd 00f95e601h
+dd 092a70f37h
+dd 03ee6a569h
+dd 07c5effe4h
+dd 037055476h
+dd 0b9527787h
+dd 0c3936915h
+dd 0d2bc0f28h
+dd 0a90073f6h
+dd 00ab42324h
+dd 0228cef2ah
+dd 0c94ccd96h
+dd 0c3e5aa62h
+dd 0450b275dh
+dd 0d368d4a5h
+dd 0994982d9h
+dd 096e9ab61h
+dd 06c8019e5h
+dd 06b5e1cd0h
+dd 0cabbd30fh
+dd 0e901cfdeh
+dd 09eaaf51eh
+dd 0d9171504h
+dd 0f2a0c293h
+dd 05d3f52c1h
+dd 057a22429h
+dd 030235003h
+dd 0c43e7be3h
+dd 060a88642h
+dd 03f328b10h
+dd 07e9ed850h
+dd 0af50c933h
+dd 00e7a432fh
+dd 0d8acac14h
+dd 025217adfh
+dd 04c43d506h
+dd 0c10a9761h
+dd 0c93ecbech
+dd 0a33956f3h
+dd 05352a03ah
+dd 006bf5d7dh
+dd 004797d8eh
+dd 00f0f16c3h
+dd 096a8ec60h
+dd 0d70e98e2h
+dd 0e3e466f6h
+dd 073b36529h
+dd 083b466d0h
+dd 0ce288eceh
+dd 0d6f9e65ch
+dd 0c5bbe205h
+dd 01d3ecd8eh
+dd 02e8e5c39h
+dd 0f290db80h
+dd 04a4f70b0h
+dd 004503890h
+dd 0c1e28f84h
+dd 0ca44d249h
+dd 0d3c5996bh
+dd 02e4c52d7h
+dd 0e57baf11h
+dd 01057507eh
+dd 0272c6a79h
+dd 0f2857569h
+dd 0a238eaaeh
+dd 0c87457fch
+dd 06db0dbc0h
+dd 0fe829663h
+dd 061e85ffeh
+dd 0b33e284eh
+dd 010bbbd3ah
+dd 08b548341h
+dd 0ce41dd08h
+dd 0802c8e32h
+dd 0db098025h
+dd 07851d506h
+dd 08c7af993h
+dd 0b8e5f1f0h
+dd 099d21f5ah
+dd 071e85b79h
+dd 06cfa8618h
+dd 0713622ffh
+dd 0dfe35d4ah
+dd 0570e09ddh
+dd 0520ea1beh
+dd 091d122f4h
+dd 0b810f27ch
+dd 04a098af2h
+dd 088609274h
+dd 031857a7dh
+dd 04c9d9c8eh
+dd 002c70d03h
+dd 07d4c7b91h
+dd 0285308bch
+dd 0a6293022h
+dd 0f1fbd775h
+dd 05342c91fh
+dd 07a7e37cdh
+dd 0f315a743h
+dd 0db5610b3h
+dd 0bee136e3h
+dd 0e5a76f21h
+dd 0c205c44eh
+dd 065e949b3h
+dd 0b4f99d13h
+dd 091776e4ah
+dd 07368021bh
+dd 021168a3eh
+dd 0268271e1h
+dd 0228282c9h
+dd 0e481aa5ch
+dd 0e3e377f5h
+dd 01ab7f7d4h
+dd 0317dc488h
+dd 05945f499h
+dd 00bf846fbh
+dd 030a45aefh
+dd 04f37db6ch
+dd 0714a7694h
+dd 001607157h
+dd 00ac62d0ah
+dd 078e1f6c9h
+dd 0b7722652h
+dd 096db1e0fh
+dd 094f5e623h
+dd 0fe3c5be7h
+dd 0e401f1f7h
+dd 070427d94h
+dd 02d29f3cch
+dd 0cd1f9572h
+dd 049521232h
+dd 0acd06411h
+dd 055123343h
+dd 095dcedbch
+dd 0bdce1b65h
+dd 03c19ca34h
+dd 0b345b775h
+dd 0a05fca6dh
+dd 07ac674c6h
+dd 03ea184eah
+dd 0c434abb0h
+dd 05fbb7a22h
+dd 0ebb92d04h
+dd 04417e4bbh
+dd 0c6727eebh
+dd 00e3edc7ah
+dd 00eb09573h
+dd 09ebdf646h
+dd 071fc2e8fh
+dd 022136ebeh
+dd 00de8b500h
+dd 0ef9528cbh
+dd 0ceddbd26h
+dd 018f169ffh
+dd 0f24508bdh
+dd 0f19afae5h
+dd 0c63a3f40h
+dd 0d83d5a34h
+dd 0f06e7059h
+dd 0c3c1ea4ch
+dd 071410a2ah
+dd 0caf49b0eh
+dd 0622e483dh
+dd 06dfaa59eh
+dd 0d0ac7ed6h
+dd 01dd50770h
+dd 0f884de22h
+dd 0fefb09a4h
+dd 0f3426d28h
+dd 0071b4d90h
+dd 0a501c8dfh
+dd 0b446aa9ah
+dd 0852bfe16h
+dd 0182b0f7eh
+dd 01493e2a0h
+dd 097d7ed6fh
+dd 09a7d46aeh
+dd 0e93d84dah
+dd 0a1c48566h
+dd 0c29c119bh
+dd 0302c9283h
+dd 0161c1ab4h
+dd 0429404e0h
+dd 08c1e2334h
+dd 002efc1ech
+dd 0c4788c1eh
+dd 0a61c5f46h
+dd 00df4f8c9h
+dd 0bc064a27h
+dd 0635bfe57h
+dd 0224cc9d8h
+dd 03509d8b2h
+dd 0f5ceee86h
+dd 0225bab84h
+dd 098f2a58ah
+dd 011be8cd1h
+dd 09bacf8beh
+dd 09c5b0398h
+dd 075a9f790h
+dd 0972518c0h
+dd 0425f5026h
+dd 050f37b48h
+dd 0a4973377h
+dd 0d75ecc29h
+dd 0aa298793h
+dd 046553233h
+dd 03f74638dh
+dd 02f354f23h
+dd 01d54d3e2h
+dd 01ef88a77h
+dd 004495576h
+dd 0d9bf9b37h
+dd 081324513h
+dd 0222dd8f5h
+dd 0d39b8dbdh
+dd 06221a880h
+dd 093ad0b06h
+dd 01f3d219dh
+dd 0eb8a3924h
+dd 0bb76cd09h
+dd 03f4df982h
+dd 0566cda2fh
+dd 052750019h
+dd 0820038abh
+dd 0c9ce96b3h
+dd 01d1efdfbh
+dd 0ca124f14h
+dd 0ebbdc36dh
+dd 00224736ch
+dd 092a74759h
+dd 0baaf9304h
+dd 08c69fbb3h
+dd 066392267h
+dd 0c51f5173h
+dd 0e2d0007eh
+dd 0dcae8f15h
+dd 07c1462a9h
+dd 0314de96eh
+dd 09ffdee03h
+dd 0df45fbadh
+dd 06b835794h
+dd 068b88e0dh
+dd 0653b0622h
+dd 0c041af10h
+dd 0afb75b3ch
+dd 019a23e34h
+dd 012292306h
+dd 049d818d4h
+dd 060074274h
+dd 00cebb0cfh
+dd 031a3a624h
+dd 0e30f3e04h
+dd 0508060bch
+dd 0d22ac3dch
+dd 0fba1baf7h
+dd 0ee732b8eh
+dd 0ee0dc2c6h
+dd 023aa002ch
+dd 014c1c849h
+dd 00dca32b0h
+dd 02e07f53eh
+dd 0cc587697h
+dd 0af3386d2h
+dd 0f17d11eah
+dd 0d2334d82h
+dd 0bfcf553bh
+dd 0e180f886h
+dd 08cf362ach
+dd 064e7576eh
+dd 00cb5ed8fh
+dd 017be4c50h
+dd 0fc7a5a03h
+dd 0378d148bh
+dd 0a27cdb1ch
+dd 078dd7845h
+dd 06c0a176eh
+dd 0dd97c0fbh
+dd 06362a719h
+dd 02ba11210h
+dd 070bc8160h
+dd 0d7b57bd8h
+dd 031dde0e2h
+dd 02c3278b5h
+dd 0aa82d00bh
+dd 0fc8d7492h
+dd 01d482812h
+dd 0f55cde6fh
+dd 00afa512eh
+dd 0c37aa8c1h
+dd 0f7eacc52h
+dd 02d423739h
+dd 0ef84e4a1h
+dd 08f8b9642h
+dd 0878aaff0h
+dd 000065aa5h
+dd 0bae7d985h
+dd 043c3f2a0h
+dd 00ca0d0ceh
+dd 0e8ee7c28h
+dd 0abb5313ch
+dd 03a1b046ch
+dd 0aef6dc97h
+dd 01cffb69fh
+dd 0e8d570e9h
+dd 0cdaeb980h
+dd 0d3b27246h
+dd 004d24d5ah
+dd 076771060h
+dd 05a245afdh
+dd 0da58aa79h
+dd 026245d21h
+dd 0216867bfh
+dd 0f2b6028dh
+dd 03a31cdbdh
+dd 01fd90bc0h
+dd 0035009a4h
+dd 00ac3afb2h
+dd 09d6bba06h
+dd 0a83dfa71h
+dd 0b8f24eb1h
+dd 0b18f2a55h
+dd 0e15a7fc5h
+dd 0db25d32ch
+dd 0d7ba5473h
+dd 08dd7cec1h
+dd 04a09fa7ah
+dd 0fa3903f7h
+dd 0f5cc2e92h
+dd 0475c74c0h
+dd 0d2fcad77h
+dd 01a5a9c20h
+dd 0813ddb42h
+dd 0a12a0c50h
+dd 0a1954e69h
+dd 004781cf4h
+dd 09b024296h
+dd 0e08343e1h
+dd 0b87c0d82h
+dd 0c5339ab1h
+dd 0d662a2f5h
+dd 0b07692f3h
+dd 0780b9434h
+dd 0309ec341h
+dd 002c957d8h
+dd 03f847adah
+dd 0008c7538h
+dd 0f3586cb5h
+dd 07531eccdh
+dd 063792f01h
+dd 04c8eaba8h
+dd 0fc976817h
+dd 00647a1d5h
+dd 018a9d6c9h
+dd 0b0bc5820h
+dd 0a3974efch
+dd 0794722ddh
+dd 0cd6e494ah
+dd 06bce6e0ch
+dd 0b5f34d8dh
+dd 06e42a95ch
+dd 02ce446c2h
+dd 06a71b577h
+dd 00bbbf479h
+dd 0aa0c827bh
+dd 0d2c63498h
+dd 02d5dfea0h
+dd 0b37524bbh
+dd 06e969b35h
+dd 088d88ab2h
+dd 0261c503ah
+dd 03813d927h
+dd 050d4d350h
+dd 09c75c211h
+dd 0b96c05b4h
+dd 051fff2e0h
+dd 0046083f6h
+dd 0cbde0dc4h
+dd 0b299664bh
+dd 0ef241028h
+dd 0e619e199h
+dd 01d3109dfh
+dd 02201ae22h
+dd 00f6e4cb4h
+dd 0c002ec4bh
+dd 04878ee51h
+dd 03a04dfd5h
+dd 0e636a5c2h
+dd 00fbc1e33h
+dd 01df835b7h
+dd 0a79c42f6h
+dd 056c0794dh
+dd 0bf9e0ff0h
+dd 056e598e0h
+dd 018f685f6h
+dd 0ef5ef37bh
+dd 0b31a2fbfh
+dd 0b731c8ech
+dd 04058fcd5h
+dd 0d2ab5378h
+dd 0aa29e9fch
+dd 0197e0c15h
+dd 03e4634f0h
+dd 0007e604eh
+dd 09b95af20h
+dd 002103b70h
+dd 01b7d907ch
+dd 06cb37ee1h
+dd 0a8a9f3c1h
+dd 064d328c6h
+dd 03e4eeddch
+dd 0fc074439h
+dd 06349c52eh
+dd 0deea2ee0h
+dd 06d7f3ef1h
+dd 0a6b5dcabh
+dd 04999542ah
+dd 00962d882h
+dd 0c7804b2fh
+dd 05f79caa9h
+dd 073d4e874h
+dd 07e6dddd7h
+dd 06ccebc97h
+dd 0c9591392h
+dd 0ed3cd1c6h
+dd 0f28bf0c7h
+dd 07de3197dh
+dd 056eb3db1h
+dd 0757089a3h
+dd 0d907116fh
+dd 0f9bf87a8h
+dd 0b4079703h
+dd 0d8d7b225h
+dd 0bae9f458h
+dd 089a13ea9h
+dd 03ed95d03h
+dd 04cd7b504h
+dd 0cc276f79h
+dd 0629307a7h
+dd 03298b1dch
+dd 0e2e74f01h
+dd 015610850h
+dd 098925359h
+dd 039244b07h
+dd 064f975f4h
+dd 0bfb85d21h
+dd 034fb9728h
+dd 0a84640a2h
+dd 0043276cah
+dd 089b3a949h
+dd 0f69df28bh
+dd 0dbc0629eh
+dd 0a2094678h
+dd 0e149e3eah
+dd 02a0c20dbh
+dd 08381b64ch
+dd 01da64c97h
+dd 013fceddah
+dd 00aab3c8ah
+dd 08e09867ah
+dd 066af92c1h
+dd 0c81879fdh
+dd 075d32cb4h
+dd 060c1ad56h
+dd 0890665b4h
+dd 038eb8dd9h
+dd 048594dbfh
+dd 03e8fcd2eh
+dd 0b84d4885h
+dd 00761b9d1h
+dd 0abc531fbh
+dd 018618073h
+dd 02b4ab9aeh
+dd 0cbcffeb6h
+dd 02bdd8241h
+dd 0a88d24d1h
+dd 06af1db10h
+dd 04c3cf11dh
+dd 00f174ad2h
+dd 0a761e7edh
+dd 061d743c9h
+dd 0fc2fae0dh
+dd 058ce1bc1h
+dd 05c7a7cc9h
+dd 0098529c0h
+dd 006cd0cabh
+dd 036da5d90h
+dd 0b4f70274h
+dd 0e12dd845h
+dd 0a33990e6h
+dd 0d27e754ch
+dd 0aeeafb43h
+dd 0913c61aah
+dd 093739754h
+dd 0103354d0h
+dd 083995628h
+dd 0e867ac2bh
+dd 0de13ca31h
+dd 093912653h
+dd 0270bd064h
+dd 0a53129a8h
+dd 09ca3e759h
+dd 099f19812h
+dd 05c320cb9h
+dd 0c3515adfh
+dd 0e6806e9ch
+dd 0cd74863fh
+dd 0cd656ac7h
+dd 060a09186h
+dd 02456b703h
+dd 0dd85755fh
+dd 01e67c806h
+dd 0ca283527h
+dd 073e8ba08h
+dd 0dfca56d7h
+dd 07b8bc7b5h
+dd 0f6444ecfh
+dd 094cd4188h
+dd 0ffe7bfbch
+dd 0a287b2ach
+dd 00e275b5fh
+dd 001728a8eh
+dd 053f933b8h
+dd 04a8b8b38h
+dd 033f87625h
+dd 013a4d360h
+dd 02779595eh
+dd 06ede53fch
+dd 01d62ed8dh
+dd 0ad303803h
+dd 0dcd38ea9h
+dd 042202191h
+dd 0ff910379h
+dd 0f5de357ch
+dd 06cb2f51eh
+dd 02a6feb19h
+dd 01fb55ce0h
+dd 0438c354dh
+dd 050b5d35ah
+dd 0cccc3daah
+dd 009d74ea4h
+dd 0dbc7b3dch
+dd 0f8d2fd1bh
+dd 073ecae9dh
+dd 0579a82d3h
+dd 05f23af41h
+dd 0ed8caed1h
+dd 05f213205h
+dd 013e244fbh
+dd 077a717fdh
+dd 0646f12b1h
+dd 0fd0b1f63h
+dd 05cd4667bh
+dd 0b6bb82a2h
+dd 0425316f6h
+dd 0ea867b78h
+dd 0660ee910h
+dd 0ca864238h
+dd 0f88a1726h
+dd 0f247b0c1h
+dd 086e8c4cah
+dd 09e38559eh
+dd 07bd7071dh
+dd 0013a0487h
+dd 0fce07c1ah
+dd 0fcde4ecdh
+dd 039c10a9fh
+dd 034068caah
+dd 0830dc792h
+dd 056eed1b5h
+dd 012579e44h
+dd 0a1c30125h
+dd 035655c3bh
+dd 05745a949h
+dd 0f5442126h
+dd 0e3ee6fe2h
+dd 07183553dh
+dd 0855783fbh
+dd 088399f13h
+dd 08834459dh
+dd 08c6e9dc5h
+dd 0c3c790e6h
+dd 0d5ae74e9h
+dd 018897990h
+dd 096d4a85ah
+dd 0d83cf4dah
+dd 0614c30d6h
+dd 0550dbaa3h
+dd 09487df16h
+dd 0b0b5f4a0h
+dd 0c6d358cch
+dd 0b7abd6bdh
+dd 08d006745h
+dd 0e9c272d9h
+dd 054f5a8d4h
+dd 0cadd3179h
+dd 086e23d21h
+dd 00ac3a83bh
+dd 0b95dbaf6h
+dd 00f674c12h
+dd 01ef103dfh
+dd 051462461h
+dd 01ada50cdh
+dd 0c5719a44h
+dd 023200cbeh
+dd 02e99998ch
+dd 0bc0dfb30h
+dd 03e149809h
+dd 071dbe33ch
+dd 007049e97h
+dd 068c912c2h
+dd 08f2b7ce0h
+dd 0037bccfbh
+dd 0fd163154h
+dd 0c875868eh
+dd 05d1dadddh
+dd 095d9ad46h
+dd 0d93e47d8h
+dd 07671ff9ch
+dd 0eb585c5dh
+dd 07fbb169ch
+dd 096adf97eh
+dd 078edd451h
+dd 082057b50h
+dd 022926951h
+dd 078dc22afh
+dd 046bb442ah
+dd 06c12f133h
+dd 0b5d11826h
+dd 09653b641h
+dd 076e76195h
+dd 0c5a52439h
+dd 09732b7d9h
+dd 0efcf33d1h
+dd 06b6baa48h
+dd 0bfbc8657h
+dd 0e60f9448h
+dd 03b88d517h
+dd 0ddfa85abh
+dd 0bb8b576bh
+dd 0ff92ee20h
+dd 0595e9a20h
+dd 00f1f6f40h
+dd 08752b185h
+dd 041500146h
+dd 0b322eff5h
+dd 037b8394ah
+dd 0e75e9b9eh
+dd 029a63ba6h
+dd 0ae0e89ffh
+dd 00aef6377h
+dd 0128f89ffh
+dd 0bb50721fh
+dd 0368679fdh
+dd 0397e9488h
+dd 0217d84bbh
+dd 028f88319h
+dd 0a68d97d9h
+dd 034e6eae5h
+dd 07a32268fh
+dd 0ede7e718h
+dd 00fdcdeefh
+dd 01fb412eeh
+dd 07d66450ch
+dd 0b1f25769h
+dd 0f7829e9eh
+dd 03c236882h
+dd 01ce5e1c0h
+dd 0cff1b1b5h
+dd 07df00650h
+dd 04f3c2269h
+dd 0f757986ch
+dd 0c956748bh
+dd 0e1fa837eh
+dd 0b38b9cf1h
+dd 015894e79h
+dd 05e27e687h
+dd 06a2aeb25h
+dd 025ff5f3fh
+dd 024767953h
+dd 05a6db113h
+dd 04ebdcc40h
+dd 028e893f1h
+dd 0a38c0621h
+dd 0cb1e9426h
+dd 068586930h
+dd 00d685e79h
+dd 0601a4e1bh
+dd 06106d7b9h
+dd 0881fd2f1h
+dd 09e4619fch
+dd 0646d8211h
+dd 0ac7198cfh
+dd 0f98e773ch
+dd 0b1318038h
+dd 0721ac5c6h
+dd 0e661b3e4h
+dd 0a9bce69dh
+dd 0756106bah
+dd 0826fc21ch
+dd 080b39352h
+dd 0bad4a9c2h
+dd 0406dd3b6h
+dd 0b5d3bd17h
+dd 06ce03274h
+dd 0b32a93bbh
+dd 02613fd2ch
+dd 0a11e3c20h
+dd 030a47456h
+dd 08e8d1edeh
+dd 09ea391d1h
+dd 0ed289695h
+dd 06bc4716fh
+dd 0b9f81d5ah
+dd 00ab9e604h
+dd 08fe24478h
+dd 00d83d4bdh
+dd 0588db8ach
+dd 02f3beec9h
+dd 0c1ce1694h
+dd 0be47cac5h
+dd 0df359d1ch
+dd 069bed12dh
+dd 02937c2d1h
+dd 03024d938h
+dd 017c4128eh
+dd 05dde7e46h
+dd 00489484ah
+dd 08ac08aa4h
+dd 047579521h
+dd 01bb103ebh
+dd 0256d8484h
+dd 0f38d8d1ch
+dd 0865a4071h
+dd 096294f27h
+dd 0ba297be0h
+dd 0120503feh
+dd 02ae23994h
+dd 01f90507ch
+dd 0154063c4h
+dd 0a180cfaeh
+dd 0010654b6h
+dd 00df757d2h
+dd 0b7b68254h
+dd 0f20743afh
+dd 0791e9fbfh
+dd 01fdde0eah
+dd 0b88ded3dh
+dd 0e3911df0h
+dd 03d646bf4h
+dd 08da67df3h
+dd 0bd303ec0h
+dd 0b03d951bh
+dd 03ceb7f51h
+dd 0b9bbfd14h
+dd 01571ca13h
+dd 0027c831eh
+dd 052c21ddfh
+dd 002a08a52h
+dd 0f86c997dh
+dd 0e573daa4h
+dd 07a48e502h
+dd 039579439h
+dd 04e62b9b6h
+dd 0d315ff09h
+dd 086b71e8fh
+dd 0220556dbh
+dd 00cdfda76h
+dd 0345dc24fh
+dd 080b9934ch
+dd 0225e98aeh
+dd 0385a63f0h
+dd 08e6b1d64h
+dd 059b14e99h
+dd 0620cbba1h
+dd 05c3ababeh
+dd 00b39ab1ah
+dd 0e87ceabah
+dd 0a4b4bb24h
+dd 005556927h
+dd 0f48de95ah
+dd 0b3681920h
+dd 0dd4f03cch
+dd 099fef365h
+dd 0551cf285h
+dd 0a6f93d07h
+dd 0f98e14d5h
+dd 0ac359d63h
+dd 0edc70ee8h
+dd 04862ae40h
+dd 0813096adh
+dd 007a64344h
+dd 09e9dd998h
+dd 0a45d3b16h
+dd 03435837bh
+dd 0d151154fh
+dd 0b16eafaeh
+dd 07d6c8d92h
+dd 0e6656af4h
+dd 0a05a5af5h
+dd 0b6f2f2e0h
+dd 0d5ed6cd7h
+dd 0b0848ab2h
+dd 0d9b69d06h
+dd 000e47359h
+dd 02e863528h
+dd 032d4e934h
+dd 040307dfdh
+dd 0fca65e3bh
+dd 003c7e381h
+dd 0c1556a89h
+dd 08b358671h
+dd 0f001428fh
+dd 02b0af6beh
+dd 0ccf9f06dh
+dd 024b9756dh
+dd 0c0f18608h
+dd 0e6b2c8edh
+dd 04bb6d2e7h
+dd 0f8a6f50bh
+dd 0e06d9518h
+dd 0e81c16f6h
+dd 01bd670c8h
+dd 02f627ee9h
+dd 0b1251760h
+dd 047136837h
+dd 0bae633b8h
+dd 0af11652ch
+dd 053d60234h
+dd 021c98e1bh
+dd 0c19a7125h
+dd 040738700h
+dd 05dae80d5h
+dd 0bd5b9767h
+dd 06e2c214ah
+dd 0c565a1e1h
+dd 00f82a048h
+dd 000393222h
+dd 0638581fbh
+dd 04d0e07cdh
+dd 040ae3161h
+dd 092b4572eh
+dd 0f4197106h
+dd 092e85a10h
+dd 09dea164ah
+dd 07259ab31h
+dd 081037c35h
+dd 040efb3ffh
+dd 0a4e920b8h
+dd 09d98a714h
+dd 077b5eaffh
+dd 0064f4fc0h
+dd 014c9f636h
+dd 0ac604a71h
+dd 0a0f13a36h
+dd 074565a8ch
+dd 0d1e1b738h
+dd 04c94f208h
+dd 08598583ch
+dd 041f3bef6h
+dd 0294d4ea0h
+dd 01fffa808h
+dd 07ea634a4h
+dd 05e931e37h
+dd 0ea6ce010h
+dd 0a5bc7417h
+dd 0d28d9c12h
+dd 0e40ba780h
+dd 0a9fe9763h
+dd 0c1e69a17h
+dd 015bb24ceh
+dd 0d825d2e7h
+dd 09d744948h
+dd 07d3d9f8eh
+dd 025798f89h
+dd 02d41b0afh
+dd 07c8a87f9h
+dd 0bf1a6ad5h
+dd 053d4e75ch
+dd 0783bbc06h
+dd 079a645e0h
+dd 03cdc4a98h
+dd 09bf4f103h
+dd 0af413739h
+dd 0da3962d9h
+dd 0f1416313h
+dd 0a1e06261h
+dd 0e152b2c5h
+dd 053557708h
+dd 0ffb29d5bh
+dd 0883b99c4h
+dd 0cd575be8h
+dd 00afaf4cah
+dd 0fb14d9b7h
+dd 022b70cc3h
+dd 0efdb4f44h
+dd 0ecd5f162h
+dd 0a232a619h
+dd 05a8b003ch
+dd 00617a0a5h
+dd 0281e5ca7h
+dd 0abdb10dbh
+dd 0fe55d1cfh
+dd 086b58adfh
+dd 00d26d94ch
+dd 0d2005061h
+dd 025944d3ah
+dd 01f3d581dh
+dd 0abc6353fh
+dd 04fbae118h
+dd 04b3b8b3dh
+dd 0d5128e45h
+dd 0fb4b3d08h
+dd 0718998e0h
+dd 0e31de20ah
+dd 06be34f3bh
+dd 0d3e537ebh
+dd 0654c2738h
+dd 04cfc0e5ah
+dd 0707447b8h
+dd 06fe5aa83h
+dd 08477d8bah
+dd 0d67ca766h
+dd 0c1c5f555h
+dd 00a593c65h
+dd 07bee4439h
+dd 08c72e614h
+dd 0e4b2e162h
+dd 09bfac5b2h
+dd 0bca973c5h
+dd 06586763ch
+dd 08395c957h
+dd 08ddc09d9h
+dd 0e76db77ch
+dd 08324806eh
+dd 0d61a093bh
+dd 0795dbb92h
+dd 0e45d721dh
+dd 0ed92d0f1h
+dd 02ec1a503h
+dd 056e4720eh
+dd 0ec1589efh
+dd 09ef92b50h
+dd 04612b921h
+dd 0681ddb0dh
+dd 04bbe7d8bh
+dd 05df00da8h
+dd 0a1ad8b86h
+dd 04dd5d9cch
+dd 04fa1296bh
+dd 0a52ae1c3h
+dd 0ac6d1933h
+dd 02d0532d3h
+dd 05fff2f9eh
+dd 0131e105ch
+dd 071acc7a9h
+dd 0dd306c71h
+dd 0d049ca05h
+dd 0f92e259dh
+dd 0e4517908h
+dd 0eb62a08dh
+dd 0ce0f7ecfh
+dd 02810a5dbh
+dd 0db052bf2h
+dd 05f5d1dc2h
+dd 075416d47h
+dd 0b31aa8aeh
+dd 0b4e833e1h
+dd 0875cc01bh
+dd 00b55182eh
+dd 0941494d5h
+dd 027b77c6ch
+dd 08e6b220eh
+dd 0dcfe4d05h
+dd 06e0f20d8h
+dd 0fa0e45bch
+dd 033e587a2h
+dd 0e4efd748h
+dd 06b4903d4h
+dd 066fce443h
+dd 06049fd49h
+dd 04c57e396h
+dd 01c08f076h
+dd 099f10ad9h
+dd 0e78a4327h
+dd 0db8bcf90h
+dd 05df578f8h
+dd 0f14f9244h
+dd 08dfdb582h
+dd 0e3fa94a9h
+dd 062b71c04h
+dd 02061cf26h
+dd 087705916h
+dd 02191e93eh
+dd 06d7739a8h
+dd 02b9e432dh
+dd 0150ff8f1h
+dd 04bd8b197h
+dd 05bdf4e7dh
+dd 07365b052h
+dd 08bf13c9fh
+dd 07e2a6e2ah
+dd 0246548f8h
+dd 03af3df80h
+dd 0bdc2b3a8h
+dd 02b6a172fh
+dd 0da7ec206h
+dd 0dac306e0h
+dd 0dd37a0f6h
+dd 0f0fcc457h
+dd 093ee5764h
+dd 0dcd8f7fbh
+dd 092613758h
+dd 06f5d53c4h
+dd 0732fd9bch
+dd 07f44b856h
+dd 0521b7fe0h
+dd 0da965c97h
+dd 06af475b0h
+dd 031fe947ah
+dd 020fe3eb6h
+dd 05d7deb53h
+dd 03e850748h
+dd 0acfb5114h
+dd 023de7873h
+dd 0b4def976h
+dd 0f33d57cdh
+dd 065df9887h
+dd 06d35a746h
+dd 08f550c77h
+dd 033b1d7b6h
+dd 06e184f6bh
+dd 004dffe61h
+dd 05504f2deh
+dd 07779e86bh
+dd 018689928h
+dd 0bcfaede0h
+dd 07bbfafcbh
+dd 0350302f0h
+dd 087329813h
+dd 0f2906179h
+dd 0d52467a2h
+dd 0d1c598d5h
+dd 040281d38h
+dd 06b8407bch
+dd 0e17b345ah
+dd 097d2cbfch
+dd 049068e9fh
+dd 017df1596h
+dd 005d7aa7eh
+dd 01a4133c7h
+dd 0d59d5350h
+dd 038220d20h
+dd 05fea0344h
+dd 03e6c378ch
+dd 03f1bbd81h
+dd 07c973f25h
+dd 064576351h
+dd 0aabf4db3h
+dd 0eae579bfh
+dd 095af3aebh
+dd 0f9123088h
+dd 015dc6c96h
+dd 0f5c66431h
+dd 06c57bc53h
+dd 057eff76dh
+dd 0721814e8h
+dd 0b6d53f67h
+dd 0eb4f0567h
+dd 09cb4daf2h
+dd 04ac99cfch
+dd 0e3a43bfbh
+dd 0fb329fach
+dd 00baad0b6h
+dd 0ae482579h
+dd 02b0c8527h
+dd 03293d313h
+dd 00b84cd8fh
+dd 042ef75ach
+dd 065e8a217h
+dd 0bf33aeeeh
+dd 026afe63dh
+dd 01089674dh
+dd 0443c5c98h
+dd 04553c90eh
+dd 0828d5548h
+dd 056f74d5ah
+dd 078aa1a4eh
+dd 0ffe47383h
+dd 0b4a7f92dh
+dd 04ada2ffbh
+dd 04a86c87fh
+dd 0689675deh
+dd 08747990bh
+dd 0573b17e4h
+dd 0b0643bddh
+dd 03047d72dh
+dd 0b8365488h
+dd 0bec32b30h
+dd 0e96bece3h
+dd 0211e5e60h
+dd 0478fb92ch
+dd 0ff54f8f7h
+dd 0964b2735h
+dd 050d216d9h
+dd 08da29687h
+dd 019facf24h
+dd 0eb56eb62h
+dd 0d23888b1h
+dd 032fa4a98h
+dd 08f8fc009h
+dd 0ed8d758dh
+dd 024f9bb4bh
+dd 022dfa695h
+dd 075af9a8dh
+dd 045bbf02ah
+dd 0dbf29618h
+dd 06b00fec3h
+dd 0c64da938h
+dd 0d54ddbdch
+dd 06107277dh
+dd 0e18b525bh
+dd 0e7640110h
+dd 0e3fe5685h
+dd 034cd9834h
+dd 08ebcca6ah
+dd 0bb0c12ddh
+dd 0dec3e0cfh
+dd 06cd7c1e1h
+dd 05d8df827h
+dd 0e1bfa493h
+dd 0705f476ch
+dd 0fd3eb463h
+dd 08d682b50h
+dd 08f5ddf09h
+dd 073e8b29fh
+dd 00cae9e50h
+dd 0f22cd30ah
+dd 02d848177h
+dd 0727df8efh
+dd 07e8bc136h
+dd 0109791c1h
+dd 061ec55b5h
+dd 06e9f6416h
+dd 093fd95eah
+dd 00547636ch
+dd 08dedccf1h
+dd 0240bc9fbh
+dd 0e74699fch
+dd 0c083c53dh
+dd 0caecca01h
+dd 06903d5d7h
+dd 0c13cdffah
+dd 0526724deh
+dd 094bd35e8h
+dd 0e3af5840h
+dd 06b856350h
+dd 0c142d70eh
+dd 0bf6da4dbh
+dd 01ef41714h
+dd 008af378ah
+dd 0aad4548fh
+dd 0ea1768dbh
+dd 09f3823eah
+dd 07ce867cdh
+dd 0440f98abh
+dd 075744d32h
+dd 0fcc25ea7h
+dd 0a9ad6180h
+dd 097f3b289h
+dd 0a1a2b6c9h
+dd 09b0ba105h
+dd 0fbd90fbbh
+dd 05dbf258ch
+dd 0c2a7f119h
+dd 019d10f03h
+dd 0a6122256h
+dd 05e429069h
+dd 0569b7793h
+dd 0791d1224h
+dd 0a5177f12h
+dd 09c8c0192h
+dd 072e59d18h
+dd 054468ccah
+dd 0b78c9f44h
+dd 09211c7a1h
+dd 02d47a78eh
+dd 0e212a54bh
+dd 0a9364d8ch
+dd 0484b3095h
+dd 086389fa5h
+dd 0ccc09c5bh
+dd 0e9d28ee6h
+dd 07b82988bh
+dd 0ce28dc04h
+dd 0b93b3546h
+dd 01a0955b8h
+dd 02f90898fh
+dd 06fd8cc66h
+dd 08665ddfbh
+dd 0dd7408a1h
+dd 05ab70102h
+dd 07e1523c2h
+dd 048b3fbd2h
+dd 090487019h
+dd 05e31feb8h
+dd 03fff1881h
+dd 0edfa52fah
+dd 0fa1611f0h
+dd 0ce5358bdh
+dd 0d7bd5140h
+dd 0fe8522bbh
+dd 09aa9d59eh
+dd 0b0b894fch
+dd 0b579d49ch
+dd 035cb3a74h
+dd 075c6128fh
+dd 07c703cd3h
+dd 0b8df92d4h
+dd 04acaeb59h
+dd 0e04d6e04h
+dd 0cb751141h
+dd 08d720ee0h
+dd 0fb81cd9ah
+dd 0cdf31268h
+dd 0c5639a27h
+dd 0187b7885h
+dd 01f8d2097h
+dd 08af3a455h
+dd 0b7126f8dh
+dd 061444a93h
+dd 099698ddeh
+dd 09f872495h
+dd 041ef831fh
+dd 05792f980h
+dd 01f589fe7h
+dd 08baf6053h
+dd 081daa5e4h
+dd 0e87e13b2h
+dd 0bd0799afh
+dd 0186a59c2h
+dd 0c26c7569h
+dd 0ebb1efa9h
+dd 09bd1324ah
+dd 059295810h
+dd 077bef0aeh
+dd 073c39ad5h
+dd 050cebb6ah
+dd 00208bc68h
+dd 025c184eah
+dd 0092965a4h
+dd 0b13b6dd0h
+dd 0162f10f5h
+dd 05808183ch
+dd 0d309d578h
+dd 068f138d5h
+dd 045520781h
+dd 078ee0625h
+dd 004cb372ah
+dd 0559afae3h
+dd 0cdcc0cb2h
+dd 085c7ed91h
+dd 089150f1fh
+dd 03274ff44h
+dd 09bfedf0eh
+dd 099d20a7bh
+dd 041346c0ah
+dd 08bf7468ah
+dd 09c9a1f6ah
+dd 0acaf653dh
+dd 0272aa359h
+dd 0c213bff1h
+dd 0ffe4c2b3h
+dd 023076b14h
+dd 04760e3ach
+dd 0427fbf8eh
+dd 07d83e159h
+dd 03657542dh
+dd 05d5476bdh
+dd 05e1b1df2h
+dd 0b0de622bh
+dd 06b0a0389h
+dd 0f9a02400h
+dd 027fc6b93h
+dd 06f246385h
+dd 082047b13h
+dd 0c099402ah
+dd 06fb61ce9h
+dd 0d3317b36h
+dd 0aabb3ab7h
+dd 0e8c3808fh
+dd 0dae24662h
+dd 096f4a4f6h
+dd 0b50d6738h
+dd 0907a1580h
+dd 0a0807fddh
+dd 09a8af0e1h
+dd 08bd5d9f7h
+dd 0f2cbaab2h
+dd 05eac78b5h
+dd 0d286a876h
+dd 0358078bdh
+dd 0bc4d0f3bh
+dd 0551e04c9h
+dd 0efa78b73h
+dd 0be395e96h
+dd 07f5b8f1ah
+dd 0aa112d90h
+dd 0362486cch
+dd 088060c7ch
+dd 0c3c90155h
+dd 02dc48a5eh
+dd 04a10bf23h
+dd 0c122ba29h
+dd 0df076066h
+dd 09ebaf108h
+dd 0ba218c35h
+dd 0a2f818f8h
+dd 06de11ebdh
+dd 020915fe8h
+dd 02cb20625h
+dd 0f8a8cb35h
+dd 04011cbb0h
+dd 0e4068044h
+dd 04e17655ch
+dd 0c6687b66h
+dd 088bcfc18h
+dd 020ba4bedh
+dd 0d02f8279h
+dd 08e760e57h
+dd 067ee5d16h
+dd 04837ed7fh
+dd 0410cb007h
+dd 048ac8805h
+dd 084e30ee4h
+dd 082247341h
+dd 045d6c532h
+dd 0f580b30fh
+dd 0fc170812h
+dd 0fc93cbe2h
+dd 064677bb1h
+dd 0d7651ca8h
+dd 0d5a104bfh
+dd 0e211ed14h
+dd 0822f9fc4h
+dd 0dba1319dh
+dd 0e2f7438ah
+dd 0079859bbh
+dd 0843f4af9h
+dd 0bd500e61h
+dd 038f8e3b4h
+dd 04808bc46h
+dd 06c2d70b8h
+dd 099a68ab2h
+dd 06744b032h
+dd 08420685ah
+dd 0d350b9f8h
+dd 0c691489ah
+dd 0dec5bbb5h
+dd 0f06ce727h
+dd 0a65a92beh
+dd 0d527e7b4h
+dd 0aa8de922h
+dd 093a01780h
+dd 0285e2629h
+dd 019cebee1h
+dd 048998766h
+dd 063ca680ch
+dd 0812a47f6h
+dd 0ff462ec2h
+dd 07b10da4fh
+dd 0912c0f2dh
+dd 0bef0656fh
+dd 04babdfa5h
+dd 07f7360fdh
+dd 0165d1c55h
+dd 0c3846af3h
+dd 023814744h
+dd 084de5de7h
+dd 0350a3e39h
+dd 0874f380eh
+dd 06fdb3010h
+dd 06222787bh
+dd 0113a8432h
+dd 0ab0b5e63h
+dd 0bc3ab91fh
+dd 0e8876fa8h
+dd 00932cd02h
+dd 0db84268ch
+dd 05bfca9bch
+dd 0da0f41ffh
+dd 0997025e9h
+dd 062b237ffh
+dd 04b4fc72fh
+dd 0ff0c390bh
+dd 08194ee35h
+dd 0e5f66e55h
+dd 0c8bc8b85h
+dd 0c47eea80h
+dd 0d1f15614h
+dd 039685d90h
+dd 05ca659d3h
+dd 0e091eca0h
+dd 0ca01949dh
+dd 0d0d86499h
+dd 00f51bf47h
+dd 015b8991ah
+dd 01f477e11h
+dd 045f187f9h
+dd 0f6f26e7eh
+dd 093ec144bh
+dd 0a340f332h
+dd 076ca31ebh
+dd 04927e8d2h
+dd 01b9e43c7h
+dd 0c5510dd2h
+dd 05aa407c6h
+dd 068c8c986h
+dd 0f7500751h
+dd 0c366f5f4h
+dd 08fa59710h
+dd 0b0a4a591h
+dd 04d806576h
+dd 08212815fh
+dd 02511f64ch
+dd 0f7371ccah
+dd 024acc242h
+dd 0578d9db2h
+dd 0a97d4ad0h
+dd 09b2b5dbeh
+dd 029839a36h
+dd 0fa99b410h
+dd 00de188fbh
+dd 0acaf5e5bh
+dd 0b3ca67f9h
+dd 0fe4c9a6dh
+dd 07372e843h
+dd 0b7ded03ch
+dd 0d31759b2h
+dd 0208752eah
+dd 01c6594e7h
+dd 04800304eh
+dd 038c99407h
+dd 01cfcd13eh
+dd 0f455c32bh
+dd 0d68dabe2h
+dd 052606c25h
+dd 014f97d79h
+dd 034a60265h
+dd 0728300cbh
+dd 05dfc07e5h
+dd 032bcec03h
+dd 0da0a8049h
+dd 0880ae5f6h
+dd 0a34a2f47h
+dd 0e0a7d2cah
+dd 076534635h
+dd 03bff2434h
+dd 0aeace090h
+dd 0e71d8903h
+dd 00b89f0e0h
+dd 0ec0cc1b1h
+dd 017cc44d5h
+dd 068bffdf6h
+dd 0bf8353c7h
+dd 0d39b39c2h
+dd 0ab18999eh
+dd 0f1273268h
+dd 0f9582fbah
+dd 0d24f5b68h
+dd 02d71d815h
+dd 0a16acf96h
+dd 0e0f23bbch
+dd 0b92e2792h
+dd 03d5ce8bfh
+dd 0bec5cc78h
+dd 0a5bf260ch
+dd 064f5176ch
+dd 090a81bbbh
+dd 0c8d9a28fh
+dd 0e221677eh
+dd 0e13603dbh
+dd 03e5c3a78h
+dd 0a5642f01h
+dd 0fb163aebh
+dd 074210feah
+dd 00adb3f0eh
+dd 05fa387ech
+dd 068a8d26fh
+dd 02a07ea20h
+dd 0131af689h
+dd 06725e34bh
+dd 006961bc7h
+dd 08489bdb2h
+dd 03c677e0bh
+dd 054ef428ch
+dd 08453237eh
+dd 03531cacdh
+dd 0ed22f7c3h
+dd 05ec0a46dh
+dd 016a84e95h
+dd 09c347112h
+dd 003bd24c1h
+dd 0af93171dh
+dd 084cd371bh
+dd 081237ad9h
+dd 0861a4796h
+dd 0e077b43ah
+dd 029620558h
+dd 09b2dc0c4h
+dd 0d5c8319eh
+dd 0510f8624h
+dd 09728f057h
+dd 09e7d3bb0h
+dd 0d34aaf0fh
+dd 0affecd95h
+dd 0ae86d359h
+dd 051913df4h
+dd 0ac6e0834h
+dd 095241fa4h
+dd 088944b76h
+dd 046153d1ah
+dd 0f7ac8114h
+dd 0221e4c46h
+dd 05f1beaa1h
+dd 00ac6b32dh
+dd 031586e61h
+dd 07f492740h
+dd 0ceeee417h
+dd 0776c3acah
+dd 0ef022990h
+dd 078a84d5ah
+dd 056cb85f1h
+dd 0037937bah
+dd 013f42f32h
+dd 0addbfd51h
+dd 07a890b0ah
+dd 0b0a81274h
+dd 02dda7ae6h
+dd 063da1ac8h
+dd 09fc4f702h
+dd 08ab9b422h
+dd 00998d6ceh
+dd 0394bb924h
+dd 08eed4d1eh
+dd 086f3a925h
+dd 009258d17h
+dd 0eb864d2fh
+dd 0a5045a8eh
+dd 0d69ff5dch
+dd 0d9966ed4h
+dd 082f1b783h
+dd 0540eedfah
+dd 0d2dd55b0h
+dd 0e4d746d6h
+dd 0bcee8aa5h
+dd 0caf57b26h
+dd 0c9c7931ah
+dd 0f1a97b16h
+dd 01a961bd2h
+dd 0a2cf27b7h
+dd 07bcc7e57h
+dd 0f288598dh
+dd 0a98791cah
+dd 006b16724h
+dd 0dcd4cecdh
+dd 0e3f0c65dh
+dd 0e5e4365bh
+dd 023221885h
+dd 0db87fcech
+dd 00bad424ah
+dd 00c4db3d3h
+dd 0fda59cach
+dd 0910945e6h
+dd 075c2140fh
+dd 093c4d124h
+dd 0f2b940e2h
+dd 066e8a3bch
+dd 0cfa1cd27h
+dd 0811f1032h
+dd 028f676f7h
+dd 0724949ceh
+dd 082d2b527h
+dd 02e01302fh
+dd 0eb6ef981h
+dd 052e35f7fh
+dd 01cd364e8h
+dd 0e02a6224h
+dd 050dba8a2h
+dd 0138e6616h
+dd 06dd54a80h
+dd 0a0800f6ah
+dd 0a47096b8h
+dd 0dd1430a0h
+dd 0bacfe71bh
+dd 093fd3747h
+dd 0d41e0a4dh
+dd 00fd3b8bdh
+dd 0d5434232h
+dd 07ac7248bh
+dd 062c578b1h
+dd 045c1257eh
+dd 04f90d0e9h
+dd 0f9141cfbh
+dd 06a0150a0h
+dd 02d7c51d3h
+dd 0ecedc35bh
+dd 05904ceabh
+dd 011a66d38h
+dd 0c1c50264h
+dd 06cc8dd1dh
+dd 0a93f6e52h
+dd 0b8186b41h
+dd 06be9e1e9h
+dd 0971fb31bh
+dd 0445184d2h
+dd 0b9d2e3b5h
+dd 0726853b4h
+dd 04215d583h
+dd 00f97fc56h
+dd 0c0b37b76h
+dd 018ab8cc7h
+dd 041bdcd2eh
+dd 060ddf945h
+dd 07eb4d2f1h
+dd 070853aa5h
+dd 04167816fh
+dd 0deb76b60h
+dd 029826933h
+dd 01232a848h
+dd 069dfe2feh
+dd 05b5bf23ch
+dd 0743f5309h
+dd 08707c229h
+dd 0bbf501b7h
+dd 05e62896fh
+dd 0e4420301h
+dd 0e285a323h
+dd 07ba31e7dh
+dd 0704a3c0fh
+dd 02104005eh
+dd 09edb3ae3h
+dd 0c37f47aah
+dd 0cde5eea2h
+dd 05d550fa9h
+dd 09632aa08h
+dd 0b1b5d2deh
+dd 073206de3h
+dd 060a8c9aeh
+dd 0647042a1h
+dd 0c5ac23a7h
+dd 0919b14d2h
+dd 0220db8dfh
+dd 09dae794eh
+dd 0e750a666h
+dd 03608a500h
+dd 043a73318h
+dd 05ac501a7h
+dd 05f78cc2bh
+dd 00df915e8h
+dd 09df6ce91h
+dd 0b118e2d5h
+dd 0ababb9a8h
+dd 0b3e577a6h
+dd 03bac555dh
+dd 0c0d0957ah
+dd 0e6b9d761h
+dd 08559e27fh
+dd 05d8deeceh
+dd 046cfab25h
+dd 039cf2c7dh
+dd 0d3834d64h
+dd 056c49ac5h
+dd 02f02ec10h
+dd 0b7cd398ch
+dd 06b997793h
+dd 0f8120c34h
+dd 035100fb1h
+dd 0fd0a1032h
+dd 03df2ee72h
+dd 054d5bd0bh
+dd 0af89add7h
+dd 0a3639a86h
+dd 0be0bc5b7h
+dd 0cff349d8h
+dd 04990b6cch
+dd 042ee1077h
+dd 06d80264ch
+dd 0249d70f0h
+dd 0321759a1h
+dd 028292334h
+dd 08a006471h
+dd 096ccdeb9h
+dd 0b88c257ch
+dd 0428f64a0h
+dd 0e6b22807h
+dd 0fec25158h
+dd 0ad098413h
+dd 0ad68ca54h
+dd 0692da457h
+dd 0d107218ch
+dd 04c05bee2h
+dd 076dc21d7h
+dd 0dd57e289h
+dd 048f5cf90h
+dd 0038b02bbh
+dd 010d51216h
+dd 08c86a54fh
+dd 0c4e309afh
+dd 0c56105dfh
+dd 04681d0edh
+dd 0d28ea17dh
+dd 0ee6f271eh
+dd 084707a39h
+dd 0e4dc16e3h
+dd 09fd64a94h
+dd 0234e8a28h
+dd 0c4662905h
+dd 0084d9163h
+dd 056d03134h
+dd 0426e9578h
+dd 0cd2bab48h
+dd 06d71a011h
+dd 060daf06eh
+dd 0855a3a4bh
+dd 04432be59h
+dd 0c54e273eh
+dd 02253fe97h
+dd 0986367aeh
+dd 05a356da8h
+dd 0dc3d1226h
+dd 04bb648f7h
+dd 0e4ab0bf5h
+dd 0ecc3173dh
+dd 0b221c53ch
+dd 0b2561a60h
+dd 08074d36dh
+dd 0548dfaa4h
+dd 09a06e4a0h
+dd 086973d30h
+dd 0be54314bh
+dd 0879b9b9dh
+dd 0fec44fe3h
+dd 0fdced0b0h
+dd 0fc50127fh
+dd 0b8b7dd1eh
+dd 03888efe4h
+dd 04928596eh
+dd 074449fbah
+dd 0f16fd498h
+dd 0a600e78fh
+dd 01b419984h
+dd 0aa3b0dfah
+dd 01a447e98h
+dd 07168cfa4h
+dd 0b3baee76h
+dd 0f4b54a97h
+dd 07830826ah
+dd 0af894792h
+dd 0db057a28h
+dd 00977fd4eh
+dd 00a6723fch
+dd 09681c6eah
+dd 0ca65878ah
+dd 098a53472h
+dd 07dd8f3a9h
+dd 02a9121a7h
+dd 0cbe7b3a1h
+dd 077d951b4h
+dd 07d240bf8h
+dd 09c33d6a7h
+dd 0d00c8551h
+dd 073b2ce21h
+dd 01cff5a2ah
+dd 01f330a84h
+dd 099153023h
+dd 0ca792b24h
+dd 09b2946cah
+dd 0587244f6h
+dd 0f8d9a47dh
+dd 09453551ah
+dd 0564ba000h
+dd 0f9b4e8bch
+dd 0e585aeech
+dd 06b7f2a03h
+dd 03c46b4efh
+dd 082c06214h
+dd 0aea4194ch
+dd 0364ed2edh
+dd 01fa219e8h
+dd 0d140df8ch
+dd 0af584117h
+dd 007c9ed87h
+dd 01f8d4befh
+dd 0bf7242a9h
+dd 05c4df9c1h
+dd 0db592003h
+dd 0b00e1c62h
+dd 03269dc79h
+dd 04caf1c9dh
+dd 05d4b589ch
+dd 0cb9ea691h
+dd 09c727172h
+dd 0123a73b8h
+dd 001682967h
+dd 06be0ad3eh
+dd 0d30299c2h
+dd 0bd45d311h
+dd 052f7ff04h
+dd 07b828874h
+dd 0dbe0b11fh
+dd 02ebd5651h
+dd 07e597d9fh
+dd 0feda9ec1h
+dd 0db4bdba0h
+dd 06daa7bc2h
+dd 0b33cbbdbh
+dd 0c5fffef1h
+dd 031a34f4ah
+dd 0a5487079h
+dd 07db562c0h
+dd 0e46cc33eh
+dd 004445551h
+dd 0539e1371h
+dd 01ae9a2d3h
+dd 08762c3b2h
+dd 0ddaa2873h
+dd 0715646c0h
+dd 07fb16da4h
+dd 0ac20bef6h
+dd 02124aa68h
+dd 0c9f9bf40h
+dd 030abe52eh
+dd 02942c612h
+dd 07154eceah
+dd 004c6e525h
+dd 088c60127h
+dd 02cd4bac0h
+dd 059023a8eh
+dd 0bdc4fb5ch
+dd 00182e87dh
+dd 0304f816eh
+dd 0dd018f74h
+dd 0ac61ef13h
+dd 0dec8a375h
+dd 0212efd1dh
+dd 07e653f4dh
+dd 0a69ee5fch
+dd 073ec448dh
+dd 0c05abc01h
+dd 0f3f862ceh
+dd 02712b99fh
+dd 0b519f1dfh
+dd 05a31c777h
+dd 0817d098ah
+dd 0f6102aa3h
+dd 0b85281e3h
+dd 045d11478h
+dd 045fd06d2h
+dd 02c9151a5h
+dd 0ee8da510h
+dd 06cb80e3dh
+dd 0808f7731h
+dd 07baa7069h
+dd 0308ec80ch
+dd 01694ed17h
+dd 01374f327h
+dd 0b52656e7h
+dd 080240ed8h
+dd 0064fee77h
+dd 0ae624bb4h
+dd 05de48677h
+dd 0ed13e746h
+dd 05deff264h
+dd 004b805f6h
+dd 07038bc61h
+dd 07d8b96f2h
+dd 0fe750186h
+dd 012c69a39h
+dd 052fd2640h
+dd 007e81c84h
+dd 095324690h
+dd 004f3c9dbh
+dd 0a973d059h
+dd 09d540dc2h
+dd 02c33c963h
+dd 025e78964h
+dd 0fdc43e73h
+dd 0d60b77adh
+dd 07abefbdfh
+dd 0135148d3h
+dd 087f1e8aeh
+dd 038c28d6ah
+dd 0812cd962h
+dd 0b64071a6h
+dd 01d8f14e9h
+dd 06a13ff58h
+dd 08cee2924h
+dd 01094dc6eh
+dd 08d5cbd15h
+dd 07bc4b681h
+dd 001056472h
+dd 0d74298f5h
+dd 082a29287h
+dd 0370790edh
+dd 0be70bc37h
+dd 00c450d8fh
+dd 025454af2h
+dd 0d640ebceh
+dd 09c662087h
+dd 00a06158eh
+dd 0df741c2ah
+dd 00cf6f712h
+dd 08f717a20h
+dd 082dd7a38h
+dd 0e72819ffh
+dd 043236e30h
+dd 0dc7cb026h
+dd 025eade97h
+dd 0231cc6deh
+dd 08f7881a7h
+dd 05211da7dh
+dd 0e2e6dae8h
+dd 0452be16bh
+dd 096f51796h
+dd 038ae98a9h
+dd 0f6741767h
+dd 080ab3d6dh
+dd 0f558e841h
+dd 09f721414h
+dd 00d79ec48h
+dd 0e8835d05h
+dd 0fd994cc7h
+dd 046dde65dh
+dd 0178ccebbh
+dd 04cf5357fh
+dd 0a237899bh
+dd 0a311e77bh
+dd 0dadec849h
+dd 0fa230214h
+dd 00123458dh
+dd 091c5cf14h
+dd 087d32e03h
+dd 0a92f707eh
+dd 03d1f8d36h
+dd 02cf379e9h
+dd 011a43e91h
+dd 09a3f37b2h
+dd 0a7fd7999h
+dd 0edbc8f92h
+dd 091bfc5ddh
+dd 0e8ca3cf3h
+dd 03ef08b9ch
+dd 01e467f94h
+dd 04130a5ech
+dd 0840f6253h
+dd 093b85e20h
+dd 05a0a30c2h
+dd 042a81165h
+dd 0dbe12350h
+dd 0266d38ech
+dd 071e8ee14h
+dd 09aa75683h
+dd 0b9f7088eh
+dd 0ba02189ah
+dd 0477ff749h
+dd 02be15c7dh
+dd 01549d411h
+dd 0beea0fe6h
+dd 070acb8dch
+dd 0c9b70cb3h
+dd 0540711c0h
+dd 0134ad00dh
+dd 0297fe787h
+dd 07ae3e16ah
+dd 05f9c4613h
+dd 0bf6c3a7ch
+dd 0804bcfcch
+dd 0e1eda0dch
+dd 0c7af016dh
+dd 062f3a274h
+dd 085eeb79fh
+dd 0a3ddb394h
+dd 0c90e54ach
+dd 03979cfd2h
+dd 09a018bd9h
+dd 07d708c00h
+dd 00ecab63bh
+dd 0c3d377f0h
+dd 0c979b3fah
+dd 0e8c53de7h
+dd 08bd908c1h
+dd 0919b3babh
+dd 081a30fb3h
+dd 0676b9b9eh
+dd 0a9131c45h
+dd 0f7361018h
+dd 00366dabfh
+dd 0a9251d39h
+dd 02296c4afh
+dd 0c37e56e7h
+dd 0d61cddbdh
+dd 0d3611552h
+dd 002268c58h
+dd 0676a6a72h
+dd 0bb200f12h
+dd 0cdaf8c13h
+dd 0031a1b6ch
+dd 037651b48h
+dd 065ec2bcdh
+dd 077180dd4h
+dd 0d170b80eh
+dd 085b44ad3h
+dd 0f4c38e16h
+dd 092532735h
+dd 0c6193878h
+dd 0a437c184h
+dd 0f3fb3288h
+dd 0c0507810h
+dd 09fc5f14ch
+dd 0dceefc78h
+dd 0f553313eh
+dd 0912a199ah
+dd 08bfe6673h
+dd 0b6217a74h
+dd 06350af17h
+dd 02240c6b6h
+dd 01908703ch
+dd 028121939h
+dd 040ce4043h
+dd 039f76c52h
+dd 00967e24eh
+dd 089203989h
+dd 0ca6914a4h
+dd 017c080deh
+dd 0c98fec15h
+dd 070c1e49bh
+dd 0e11e0a9bh
+dd 0fde9612ah
+dd 06d6cabb4h
+dd 03340d257h
+dd 084bb93a0h
+dd 06d7bf694h
+dd 0c7276763h
+dd 0d321c2bbh
+dd 06cd3f7e9h
+dd 0b5dc7548h
+dd 07ee23159h
+dd 0f4dea14eh
+dd 0a585813bh
+dd 0efc4e36ch
+dd 006d40c09h
+dd 040ef722bh
+dd 07ff88124h
+dd 07df6dd6dh
+dd 0a3b0115ah
+dd 0f11955a2h
+dd 0fe42144ah
+dd 08f8d3ac8h
+dd 0a0c4002dh
+dd 07a36d5d6h
+dd 0621c57bch
+dd 0d2d8623fh
+dd 0c6ebcaebh
+dd 09a954820h
+dd 0a4409206h
+dd 00325cc83h
+dd 033f464cfh
+dd 072afe012h
+dd 0812a2dd8h
+dd 0d5286083h
+dd 062f38bc3h
+dd 082eb8899h
+dd 013d28aa1h
+dd 0c35ff1e5h
+dd 0ffd7c448h
+dd 0df55c884h
+dd 099db432eh
+dd 0cf183b89h
+dd 006fcc5b3h
+dd 0d034b461h
+dd 07632755ah
+dd 06d10a549h
+dd 035abb32ch
+dd 0011a9ad4h
+dd 0dd59884ah
+dd 06f10d2e7h
+dd 0b774e839h
+dd 060bb5abfh
+dd 06cb14579h
+dd 060c2b650h
+dd 051f11280h
+dd 00c987c30h
+dd 013d42fd9h
+dd 0531c5ec7h
+dd 0efc0889eh
+dd 0dae47541h
+dd 08be706c2h
+dd 0fe4e95adh
+dd 04aabc9b2h
+dd 0b0442ff6h
+dd 02387bde9h
+dd 0e807a0d5h
+dd 0c06277cch
+dd 036dc9ba9h
+dd 00259912ah
+dd 0f97e8c68h
+dd 0461fd6b1h
+dd 0083c948ch
+dd 00e65a30ch
+dd 009829ee0h
+dd 0a4d67a49h
+dd 0e7babb4fh
+dd 093e91646h
+dd 0fc368256h
+dd 0f67b787bh
+dd 0c7fbf56ah
+dd 0f9ae9da5h
+dd 098bad23ch
+dd 0db6f2e47h
+dd 05aabf027h
+dd 05150f758h
+dd 036ed7cfdh
+dd 0528052e5h
+dd 0f2d3b572h
+dd 00349ce22h
+dd 0d968e9d5h
+dd 0022812c6h
+dd 0810a476bh
+dd 089eced72h
+dd 03ff46c6ah
+dd 00aef089fh
+dd 0b776b847h
+dd 0d3a343adh
+dd 0d6e1df5bh
+dd 0503e9792h
+dd 0bb093bf0h
+dd 01267bac9h
+dd 044c597dch
+dd 06230bfe4h
+dd 054b32b42h
+dd 0894663bah
+dd 0fe7ee8a0h
+dd 0a3152853h
+dd 096e10691h
+dd 077e42586h
+dd 03f9ac92ah
+dd 00900a4d7h
+dd 096a8671dh
+dd 069acdd4fh
+dd 0a6097b04h
+dd 01879a1f7h
+dd 0fc79e351h
+dd 05f33ef83h
+dd 00b058795h
+dd 040539e0dh
+dd 00492dbe6h
+dd 0b11c4695h
+dd 020f788aah
+dd 00eef4d2bh
+dd 046248f46h
+dd 0e376365dh
+dd 0658a0db8h
+dd 034e3b755h
+dd 0ccd8788ch
+dd 04723d9c2h
+dd 0154fa938h
+dd 0d6ba509eh
+dd 0643ef3d2h
+dd 028e2d619h
+dd 02ca2b565h
+dd 0a1881699h
+dd 05c665b66h
+dd 0cf2ef405h
+dd 0afc482d6h
+dd 0d1fcc110h
+dd 017a8e06eh
+dd 0402588a7h
+dd 0cce0f1cch
+dd 0da32a9b3h
+dd 0d8705130h
+dd 07aedb05dh
+dd 0c5fb775ah
+dd 03cce9ab4h
+dd 0ef8328c7h
+dd 0a6bc53e8h
+dd 0b00f1b01h
+dd 0aba43b83h
+dd 018b6543eh
+dd 0a073ed8fh
+dd 09ba63ebah
+dd 032c84d88h
+dd 0712731c3h
+dd 0f37bfbcdh
+dd 0b64c8cfbh
+dd 0ab339b82h
+dd 08a8dd4fah
+dd 0d9cbc25eh
+dd 0eb95fef4h
+dd 02f4a8839h
+dd 034ac660ah
+dd 02b4c259ah
+dd 05e29dbe2h
+dd 01b606be3h
+dd 04f4cbe49h
+dd 0f34054ceh
+dd 0e0fe6dfch
+dd 0fb19f3c9h
+dd 076e01cf5h
+dd 04617a3b7h
+dd 047502428h
+dd 027a9d0b2h
+dd 0ec9b7c7fh
+dd 0a2e8c122h
+dd 08ee13d1bh
+dd 092be7256h
+dd 0118e41d5h
+dd 05b34d65eh
+dd 033e3788eh
+dd 0a982670dh
+dd 0f9ef1f25h
+dd 0c0500f46h
+dd 0728065c6h
+dd 0d7096a5eh
+dd 0998e4a82h
+dd 08a50ea4fh
+dd 0e0fdf77ah
+dd 0ef3679cdh
+dd 041f2ded1h
+dd 068632bedh
+dd 04a9a87e1h
+dd 0b3ba5027h
+dd 0b9375921h
+dd 021ba8a30h
+dd 04af25861h
+dd 017e35133h
+dd 02241c570h
+dd 061c12d2ch
+dd 0c2fb1ba3h
+dd 0176a2de9h
+dd 0d52ad64ch
+dd 06ddd5b25h
+dd 041e61229h
+dd 00e1f7d87h
+dd 0eaae1c3eh
+dd 0abf2e6cbh
+dd 00171a344h
+dd 0c803f3b3h
+dd 0569717b7h
+dd 0619a8665h
+dd 015591107h
+dd 0b9fe2044h
+dd 026b23e31h
+dd 0afd4da80h
+dd 054b2acf4h
+dd 01ff609f4h
+dd 089becb22h
+dd 0f434387eh
+dd 04e83d88eh
+dd 0379e599eh
+dd 0bea30dc4h
+dd 0b8150ed7h
+dd 0433b7f56h
+dd 033a64c3ah
+dd 02813d8bbh
+dd 008143e60h
+dd 005bbff20h
+dd 0a9bca0c0h
+dd 050c32b5eh
+dd 0d9beaaf3h
+dd 0d44b251ch
+dd 075dc3313h
+dd 0102bc7ech
+dd 03dc8832bh
+dd 01888b5ebh
+dd 0795aa713h
+dd 0b98f26a2h
+dd 07372afe9h
+dd 07c3aeb41h
+dd 0ae17fa81h
+dd 067bcc321h
+dd 01e8d33c1h
+dd 084e26ae1h
+dd 08901aaa2h
+dd 0b34b6e33h
+dd 07652cdd0h
+dd 0fbcba87bh
+dd 0ba86b348h
+dd 05d07ce2ch
+dd 0d57798aeh
+dd 0a374e5edh
+dd 0b8803c33h
+dd 01bd697b9h
+dd 0709b9393h
+dd 0cad35e12h
+dd 07ba89611h
+dd 0735df441h
+dd 0e3bb1ceah
+dd 0f5c05a3fh
+dd 00ee45b0dh
+dd 09f73b18ch
+dd 0367d1e35h
+dd 03e07dc74h
+dd 0baf0b95dh
+dd 0907396fbh
+dd 0cbd51954h
+dd 0834ff214h
+dd 0eeb209e4h
+dd 02a188c70h
+dd 024fd8953h
+dd 028fdb065h
+dd 0d1614123h
+dd 07527bcc2h
+dd 06305f833h
+dd 0f605b2b4h
+dd 03ff7aa19h
+dd 0ab096188h
+dd 0ac025067h
+dd 083aa420eh
+dd 0a0330640h
+dd 01f3192fdh
+dd 05750c005h
+dd 0fd7e8581h
+dd 0e2e43473h
+dd 0329441c6h
+dd 07fdcae08h
+dd 0361dd771h
+dd 0ab83bd6ah
+dd 053cf108dh
+dd 057d672b6h
+dd 087772d60h
+dd 065d22fc8h
+dd 0caab91a5h
+dd 0a20fcf39h
+dd 081472c25h
+dd 0919c44a8h
+dd 008d39a35h
+dd 0b05dc81fh
+dd 00f4d3135h
+dd 011c6006bh
+dd 0ffb0611ah
+dd 029a3d39dh
+dd 0354c3d95h
+dd 09e592824h
+dd 0a3dba3e4h
+dd 0d14535feh
+dd 089d9f596h
+dd 069f17ddeh
+dd 0b5d3607fh
+dd 0c3380839h
+dd 00bd48086h
+dd 0e0f19fb8h
+dd 09252c1dch
+dd 05c35eabdh
+dd 03a49b8efh
+dd 0dca8572fh
+dd 01874b2c7h
+dd 026932b75h
+dd 0f4cc8a1dh
+dd 0172e263ch
+dd 0a530847dh
+dd 0c6186aaah
+dd 0319bfadch
+dd 0321db81ch
+dd 03f7482c5h
+dd 0d163cd7ah
+dd 0269aa53dh
+dd 01c938f1eh
+dd 0f0df509bh
+dd 06a391a08h
+dd 0cb3a6e58h
+dd 0eac57498h
+dd 04cb26775h
+dd 0a92b1da9h
+dd 01cdbe3c9h
+dd 02a107b5fh
+dd 0c917669ch
+dd 067f33851h
+dd 0496b1210h
+dd 073159819h
+dd 03f5f539fh
+dd 0c7e38e7ch
+dd 060908760h
+dd 0c3dc3475h
+dd 0e74c8392h
+dd 07377f8a5h
+dd 06f9c517ah
+dd 031086036h
+dd 0fe6989d4h
+dd 050860a30h
+dd 05b1c9877h
+dd 0c78ddacch
+dd 019faa750h
+dd 0cd426fedh
+dd 050f80f3fh
+dd 0a187848bh
+dd 0c0b546e9h
+dd 05ae39eafh
+dd 0def451eeh
+dd 01db089c9h
+dd 0152c8c98h
+dd 061850ec2h
+dd 0d90f1c18h
+dd 04067032eh
+dd 09152ef91h
+dd 08367c70ah
+dd 00dc411ffh
+dd 057cf9ef7h
+dd 08a921b75h
+dd 0d5c8c20fh
+dd 05be58b48h
+dd 08f4f630eh
+dd 079d1c63ah
+dd 03a91ac32h
+dd 00d966547h
+dd 0e894010eh
+dd 0d20fb22fh
+dd 08c38e68bh
+dd 0a39aae93h
+dd 07abd596ah
+dd 040825cdbh
+dd 07cd8f73eh
+dd 006a86308h
+dd 0755a3d47h
+dd 0df9b02b2h
+dd 052810b13h
+dd 079933ee1h
+dd 02644ef67h
+dd 09dd5fe00h
+dd 0e5035b43h
+dd 0f1c28db3h
+dd 08f96f3c0h
+dd 08113c97fh
+dd 08bfeb994h
+dd 09c4cbecfh
+dd 05c565328h
+dd 028c5fc48h
+dd 0d8034712h
+dd 005e345f1h
+dd 06442d1c3h
+dd 08077cfc0h
+dd 061c43412h
+dd 0a0f35f17h
+dd 059739198h
+dd 0faaf5c59h
+dd 030020080h
+dd 02a7f2753h
+dd 0ae481da9h
+dd 05e6a8621h
+dd 087c9c540h
+dd 06d89615ch
+dd 09a20d2adh
+dd 018da945eh
+dd 09ab618b3h
+dd 057d505fbh
+dd 0e3145711h
+dd 003f58516h
+dd 06a71c0b5h
+dd 01279c987h
+dd 03448a823h
+dd 0b5ba0662h
+dd 0e1435901h
+dd 0ef88e574h
+dd 0111372a8h
+dd 02ccde71dh
+dd 0df9747ceh
+dd 0dcb91474h
+dd 0ca1e5d4eh
+dd 03d47494bh
+dd 01fcd1002h
+dd 0912b40efh
+dd 03181a284h
+dd 04ebcdecch
+dd 0c52be98ch
+dd 08b7deb4ah
+dd 0e990721eh
+dd 0dbe91347h
+dd 0337ee28dh
+dd 0f79441fah
+dd 0a56aa1beh
+dd 033547d57h
+dd 0e6a619d2h
+dd 06c87094fh
+dd 0efccd556h
+dd 01dc3fab3h
+dd 0741491ceh
+dd 01f0f4981h
+dd 062700311h
+dd 0b8d16a45h
+dd 0d24319cdh
+dd 0a9888f4fh
+dd 0c245ad52h
+dd 085663c96h
+dd 036d37feah
+dd 095cc4a85h
+dd 0214a1165h
+dd 0d710b02dh
+dd 041223a78h
+dd 086b3d3f7h
+dd 076825587h
+dd 085d17069h
+dd 0c98ef515h
+dd 002cf2aa0h
+dd 0f82bf41ch
+dd 0530d8828h
+dd 03ba14f84h
+dd 020678752h
+dd 01aaa7e55h
+dd 02a898946h
+dd 0374f2d23h
+dd 09bdf5f3eh
+dd 0d661f4a3h
+dd 0b1d96e28h
+dd 081fdf9b6h
+dd 0c3f9a27fh
+dd 05af7af53h
+dd 039b8d517h
+dd 0d41fffbdh
+dd 0fc1642b0h
+dd 04523ea4fh
+dd 0aeee6531h
+dd 034e1b08ah
+dd 01e67f4b1h
+dd 0c63bfd6ah
+dd 06617bdd5h
+dd 03b01df6dh
+dd 0e58175f0h
+dd 0543f4636h
+dd 05d6ff8d1h
+dd 0f662fd94h
+dd 0597df092h
+dd 0a245354fh
+dd 04d1782feh
+dd 0b8ab5306h
+dd 008b1bed3h
+dd 093724849h
+dd 001b8adfdh
+dd 0ac035a88h
+dd 0a391cfc8h
+dd 0c2c040a9h
+dd 032c2682fh
+dd 0a23eb096h
+dd 0b944c135h
+dd 07a237e76h
+dd 0dd1822c8h
+dd 08da21173h
+dd 0b2cf8a77h
+dd 047cdaee3h
+dd 0223d3926h
+dd 03c6e45fbh
+dd 0096a099bh
+dd 0c95dec71h
+dd 03c746384h
+dd 02898ebb1h
+dd 03501e1a8h
+dd 03ec52e89h
+dd 06c4d3382h
+dd 0906797e9h
+dd 0a573eaa3h
+dd 0a8df3f48h
+dd 0a045c055h
+dd 04dfb0ae4h
+dd 025fe61ddh
+dd 0c912b595h
+dd 0dec0d8b4h
+dd 0183e3f7fh
+dd 05f4b29a8h
+dd 029a4b2ddh
+dd 0b145a7f8h
+dd 05c41d282h
+dd 0807c6f43h
+dd 0682cf00fh
+dd 0bc1e4d6eh
+dd 0401aaf3fh
+dd 07946af2fh
+dd 038432b58h
+dd 01894f695h
+dd 0085e099dh
+dd 099dfd7d8h
+dd 0da90d3dbh
+dd 07dc68124h
+dd 02ee948a9h
+dd 09ee6e120h
+dd 014276992h
+dd 0c064b7e7h
+dd 067178d74h
+dd 0fc4d18ffh
+dd 0b5cffbc2h
+dd 024b1ac84h
+dd 00f7e85fah
+dd 0aaa59178h
+dd 0cfec87c0h
+dd 087ed104fh
+dd 0ef3281a2h
+dd 097bfff2dh
+dd 08dac56a4h
+dd 028f29e96h
+dd 0971b1972h
+dd 03462d982h
+dd 05c3a9b13h
+dd 003d390bch
+dd 0456a7125h
+dd 077180d31h
+dd 0dd855238h
+dd 07f386694h
+dd 0083b680ch
+dd 0b776b661h
+dd 02496ae42h
+dd 0d215771ch
+dd 0b4aafd78h
+dd 061bb553ch
+dd 0c46148ceh
+dd 004edd7d0h
+dd 0cf7e15a6h
+dd 01d7d4132h
+dd 02baa893fh
+dd 040bd1e17h
+dd 0de0a1c31h
+dd 06694a729h
+dd 040170057h
+dd 0e37145beh
+dd 01fafb140h
+dd 09bd28581h
+dd 017e2506eh
+dd 08a73f781h
+dd 0414d1472h
+dd 0be0c66efh
+dd 04690572ch
+dd 04214e67eh
+dd 02d15fc7eh
+dd 0c3282676h
+dd 00455c834h
+dd 0486ba619h
+dd 09a996f22h
+dd 062ac5f87h
+dd 05820f202h
+dd 069389b42h
+dd 0f12ce600h
+dd 09c54a4f6h
+dd 06d81eeffh
+dd 0ab59315eh
+dd 029d06a0ch
+dd 096de78b1h
+dd 0002c66c6h
+dd 03344a9cdh
+dd 01a24edf2h
+dd 0eec80642h
+dd 01f83443dh
+dd 0b18f01a4h
+dd 08ffce743h
+dd 05f76b53eh
+dd 07f9a4e9dh
+dd 003d743ech
+dd 0dce66e21h
+dd 09485b589h
+dd 0ee37f454h
+dd 085609abah
+dd 0f3712ffeh
+dd 0f9021968h
+dd 00ee9c081h
+dd 021360fddh
+dd 051449376h
+dd 0d11fedach
+dd 0d3055c4ah
+dd 04d2b2838h
+dd 05b694161h
+dd 0a7d78323h
+dd 0c8d0624eh
+dd 0e31cb064h
+dd 015602d45h
+dd 0b257ef75h
+dd 03d5164a3h
+dd 07f0716d0h
+dd 0359d8408h
+dd 0f29329bah
+dd 0f454fc7eh
+dd 044d95eafh
+dd 0f3cbfe9eh
+dd 038953e52h
+dd 04464a821h
+dd 0c2e1af0dh
+dd 03714c5b3h
+dd 0bba3aa53h
+dd 0266c902ch
+dd 055a2608ah
+dd 06b8f1d42h
+dd 07057d7d3h
+dd 0d6d2d950h
+dd 0503baa4fh
+dd 0b4b1bcfeh
+dd 008039852h
+dd 028425191h
+dd 01ea1fc3ah
+dd 0c696f8e6h
+dd 00f0092d0h
+dd 04da886aeh
+dd 06624760eh
+dd 09fc11093h
+dd 06345f7c5h
+dd 0f58f7717h
+dd 08f1df5eah
+dd 091020b21h
+dd 030b0a7a0h
+dd 0f517586dh
+dd 0a76a15a5h
+dd 015c9ce7ah
+dd 0a60d4d68h
+dd 08511af49h
+dd 001250fe5h
+dd 0d4f8aef0h
+dd 062fad8ech
+dd 08d138a04h
+dd 09dc03955h
+dd 039b6247bh
+dd 04c72eb8ch
+dd 0fa11b548h
+dd 017be4a42h
+dd 021d1f136h
+dd 080fa1037h
+dd 037096214h
+dd 0fee79ac0h
+dd 084005362h
+dd 02760855bh
+dd 05d20610dh
+dd 0ac67da3dh
+dd 030f2b185h
+dd 04cbbad90h
+dd 02d87cf74h
+dd 034e3050bh
+dd 0810a1dcbh
+dd 0e214873ah
+dd 0d2cfd006h
+dd 025e5b460h
+dd 0ccd2d1ffh
+dd 00d57ad2ch
+dd 07e8d6fa4h
+dd 04cc36c41h
+dd 007b7509bh
+dd 05da4743fh
+dd 09642af21h
+dd 04ccf914ch
+dd 00c133a8ah
+dd 0a27bd76fh
+dd 092babb59h
+dd 007cccf18h
+dd 0b5b75283h
+dd 0ac0094b9h
+dd 09e2d736ah
+dd 0e9248f5bh
+dd 0c667e24ch
+dd 0581dc459h
+dd 090d1d1a7h
+dd 0ada6066ch
+dd 0b6ba8736h
+dd 0c50a23d4h
+dd 068da92deh
+dd 05780ede5h
+dd 04270a09eh
+dd 080e1b17dh
+dd 01e5de634h
+dd 0aa783d09h
+dd 0c9c840cah
+dd 0b94a4292h
+dd 09ee09bb2h
+dd 037c56b35h
+dd 0cd7baef7h
+dd 036637263h
+dd 0c3be96f2h
+dd 06238a24ch
+dd 06f913f8ch
+dd 01e323554h
+dd 0bfdc13a4h
+dd 0328e8626h
+dd 08fa15912h
+dd 03fc3532eh
+dd 0e5630f71h
+dd 0fbd78044h
+dd 0c108c857h
+dd 0fb345dd5h
+dd 0d6c45f42h
+dd 0ffefd335h
+dd 0d6218437h
+dd 0a305eba1h
+dd 07188f143h
+dd 095bcd8f5h
+dd 06f8da098h
+dd 077c1b936h
+dd 01210413fh
+dd 010ce4475h
+dd 06ac1b257h
+dd 0de04141eh
+dd 0bd4128c9h
+dd 0f3c8cb93h
+dd 03aa103f1h
+dd 071dfced3h
+dd 0e38b9019h
+dd 0f20826b5h
+dd 000bb3818h
+dd 0aa19e278h
+dd 01ceac753h
+dd 036109c77h
+dd 01f7acbf0h
+dd 06c9aa49fh
+dd 096887fdch
+dd 05af76b70h
+dd 06a8deb78h
+dd 0f071e939h
+dd 0e5eb28d3h
+dd 0a29ac45eh
+dd 0f40b1a03h
+dd 0fb73e604h
+dd 0d432b449h
+dd 0adf11a16h
+dd 02ffdaad1h
+dd 0b061ad0ah
+dd 08a47f5a8h
+dd 06dc4641ch
+dd 00156acceh
+dd 022c3ad9ch
+dd 0ed6223b4h
+dd 023a8d566h
+dd 04231bf9fh
+dd 0759464dfh
+dd 0cca05cbfh
+dd 0e15294dfh
+dd 0c8ab9dc4h
+dd 0ac9ba07ch
+dd 01e865f36h
+dd 0c08d7f5fh
+dd 042547a09h
+dd 0b4d85a66h
+dd 0b3d394a6h
+dd 0194a921bh
+dd 048c8810ah
+dd 03276da50h
+dd 0d7c729cfh
+dd 04f1d50dfh
+dd 00403c9bdh
+dd 008863663h
+dd 01f84ac8eh
+dd 002185294h
+dd 09b37a69ah
+dd 09cfa4ceah
+dd 018aa4613h
+dd 0e6b18d05h
+dd 09fa5a075h
+dd 09f605657h
+dd 036f82604h
+dd 04cbd1299h
+dd 003c29b3dh
+dd 0529a3e08h
+dd 052c3acf1h
+dd 09163eb8ch
+dd 0777bec3dh
+dd 0f55860fah
+dd 0b41692c9h
+dd 0fb3b0317h
+dd 0678c70d7h
+dd 0de29c15eh
+dd 0945e4c59h
+dd 00a50f1f7h
+dd 065016633h
+dd 06b570789h
+dd 051578752h
+dd 0124bd469h
+dd 0844a2174h
+dd 0d8a3dda4h
+dd 0193e18c1h
+dd 077ca7bafh
+dd 0ffeb3b77h
+dd 0930733e6h
+dd 066aace7ch
+dd 0cb997a2ah
+dd 01741eb04h
+dd 0558b63b7h
+dd 0c5859a20h
+dd 085ba46fdh
+dd 025f77a86h
+dd 062a8a101h
+dd 0a041b653h
+dd 0819b0964h
+dd 01a0dc019h
+dd 0e2f93613h
+dd 0cea6829ch
+dd 0ff9755bfh
+dd 0c0a099b4h
+dd 0566547e3h
+dd 060cf12ebh
+dd 0ab52f50ah
+dd 04d707127h
+dd 020eded31h
+dd 0ae8e9d15h
+dd 007366675h
+dd 046547582h
+dd 072ed0fb0h
+dd 0fb1da3e1h
+dd 0ce23d455h
+dd 04495c9d4h
+dd 08a262a16h
+dd 0ab695b20h
+dd 02d0fb229h
+dd 0b450eca6h
+dd 09bfda23bh
+dd 0d0f6dd12h
+dd 0b235c536h
+dd 0b5d94fffh
+dd 06d2bb0cbh
+dd 0a8aed99ah
+dd 01f4b3741h
+dd 006a96bech
+dd 0077b073ch
+dd 0f32afc55h
+dd 0b1d1be89h
+dd 0cab429a7h
+dd 0868f07ech
+dd 05b0ec52eh
+dd 091f6288bh
+dd 0346325efh
+dd 00a5af2a7h
+dd 01fe9ee86h
+dd 05fde5cb3h
+dd 014415053h
+dd 08e7c11ffh
+dd 0cf4512d7h
+dd 09ec120e8h
+dd 0916f0f45h
+dd 0a20d4607h
+dd 09dedd6c5h
+dd 0acada424h
+dd 01cc80ad7h
+dd 05a8a4107h
+dd 076ed6af4h
+dd 0df5056dbh
+dd 034fd40e4h
+dd 0b006b2f8h
+dd 0402426deh
+dd 03771144eh
+dd 096cf9ce9h
+dd 070e6dd52h
+dd 0ba4a7db3h
+dd 02624565ch
+dd 0c5a49ff5h
+dd 0a6c663a0h
+dd 047bcde09h
+dd 08e7f98bbh
+dd 07ac19c4dh
+dd 041004995h
+dd 02b17da4ch
+dd 0e67d1d90h
+dd 00d804523h
+dd 02aadf2a3h
+dd 0df7d6dadh
+dd 0f07da002h
+dd 0b6d40133h
+dd 06b942d67h
+dd 04c8b4fc4h
+dd 001a1515bh
+dd 08b24fbach
+dd 06e01f6b6h
+dd 04f829f4eh
+dd 06791fcdch
+dd 01067925fh
+dd 09ca34b89h
+dd 0dfb011ceh
+dd 03ea4d327h
+dd 064e74bcdh
+dd 00c3bf081h
+dd 0f4cbb872h
+dd 0db2bfd3fh
+dd 058f9b3f7h
+dd 034c26248h
+dd 0577bfcefh
+dd 0a09ed345h
+dd 0b3303d2fh
+dd 0e327e018h
+dd 078d68900h
+dd 0672a3017h
+dd 00e00fed7h
+dd 0755d2985h
+dd 0c1e5826dh
+dd 0033c3d25h
+dd 0b7c744d2h
+dd 0418912e7h
+dd 070b650d3h
+dd 0f79ef9e9h
+dd 084e9ca80h
+dd 0ca86c12eh
+dd 047845fdbh
+dd 07c0f5feeh
+dd 0382e8474h
+dd 0afe313f2h
+dd 02672e5b5h
+dd 0ab22336eh
+dd 040811dd7h
+dd 077ad9015h
+dd 0ad3f9632h
+dd 040f6f879h
+dd 0c35a2205h
+dd 0124c500ah
+dd 011c19bb4h
+dd 03a70b663h
+dd 0989d017ah
+dd 02e1ec258h
+dd 04f4e2abdh
+dd 0efbc4ad2h
+dd 073333df6h
+dd 057a333b5h
+dd 03f59fec9h
+dd 01d1dd0efh
+dd 0d8afa02eh
+dd 012a7f30fh
+dd 09122a5d3h
+dd 0071d962fh
+dd 05ed73efch
+dd 08c05ef90h
+dd 02b6ac6ddh
+dd 072e83ca4h
+dd 055476ddah
+dd 0d4a3d4cch
+dd 039d16494h
+dd 0d9ba1e5dh
+dd 0ccfcfaa3h
+dd 08180ef30h
+dd 0f8b282adh
+dd 0d7c673f7h
+dd 09c92a9b1h
+dd 099582df2h
+dd 0b3f0f0dch
+dd 07649bb00h
+dd 0365b206dh
+dd 03631ccffh
+dd 0842208f8h
+dd 0ca95b19dh
+dd 0017248edh
+dd 05c0d5436h
+dd 0c7048972h
+dd 00a6c187ch
+dd 04819990ah
+dd 08ede35e7h
+dd 090fa6aa2h
+dd 067e3ba62h
+dd 01d7bc6dah
+dd 09c40e69fh
+dd 026f4d015h
+dd 03a7864feh
+dd 00a2d08f0h
+dd 0b1d3ba15h
+dd 0333d308ch
+dd 03646f68ch
+dd 0101f62a0h
+dd 0f8aee989h
+dd 07330e333h
+dd 03ffba223h
+dd 05c411befh
+dd 04362db07h
+dd 00f4ff011h
+dd 04ce68b71h
+dd 025ebb7d3h
+dd 075051da4h
+dd 029151f80h
+dd 0b570f73bh
+dd 09129ee0ch
+dd 0ccdb87bdh
+dd 0877bc550h
+dd 053eca747h
+dd 05b995c06h
+dd 0a56dcc38h
+dd 0fa5c3fb9h
+dd 012b05864h
+dd 0b539b0f0h
+dd 09a162effh
+dd 05909527eh
+dd 062f4e7a6h
+dd 0a6e02b3dh
+dd 085a578a3h
+dd 047a8dd71h
+dd 08f30ce0bh
+dd 08d05c430h
+dd 018d2b358h
+dd 0963cbb56h
+dd 0598466aeh
+dd 06be3c78fh
+dd 0d3d68992h
+dd 082d6b46bh
+dd 08a3b5e52h
+dd 0ededd288h
+dd 0cdd227c9h
+dd 0aefe69b8h
+dd 0fae0b810h
+dd 028173419h
+dd 092c5b7e0h
+dd 06ab038ddh
+dd 0616d1d3fh
+dd 001a26a2dh
+dd 0a646bfffh
+dd 0bf56cde5h
+dd 053fe6460h
+dd 04fcaf817h
+dd 09de8cf63h
+dd 0cb89d377h
+dd 0dfe6a853h
+dd 0b3acb989h
+dd 058312c06h
+dd 07b065377h
+dd 02161f9aah
+dd 041d08614h
+dd 08b79bdd0h
+dd 03796e37ch
+dd 01af4ff84h
+dd 074330623h
+dd 09ac888a8h
+dd 0ca6ab63dh
+dd 0ec3b54bch
+dd 0d7a89246h
+dd 0fa0e2d1eh
+dd 0442e340fh
+dd 0b7b07fbbh
+dd 00c31144ah
+dd 01e7a813bh
+dd 06bd48073h
+dd 033824b9fh
+dd 0e5bedeech
+dd 0f17346e9h
+dd 02edd02f4h
+dd 0b88288d4h
+dd 0bc5f36f7h
+dd 0d565052eh
+dd 05e7a71d7h
+dd 05171ada3h
+dd 099c1ce81h
+dd 0f6379258h
+dd 0ca140d87h
+dd 0ba55f793h
+dd 09d622015h
+dd 0bf6ff731h
+dd 048254b62h
+dd 07ed2cdebh
+dd 0108aacefh
+dd 0cd9dcd42h
+dd 09b2e28eeh
+dd 0b588c5cbh
+dd 0b670ccc3h
+dd 07db8667ah
+dd 0a0c5edd6h
+dd 096ed7da1h
+dd 0b44ea08dh
+dd 008cff6b7h
+dd 0a94b556bh
+dd 06c0b7014h
+dd 02588ce2fh
+dd 02652ab5dh
+dd 0b6a06285h
+dd 080b49756h
+dd 0712e9442h
+dd 06811e560h
+dd 0d597cdceh
+dd 0019e8568h
+dd 0d6267fe4h
+dd 0694f1504h
+dd 0cd36aa27h
+dd 0f457840bh
+dd 042c94e98h
+dd 04a332db6h
+dd 0ebdb24beh
+dd 071aecd9bh
+dd 0fccf60d7h
+dd 0da25de3eh
+dd 0842bcaf9h
+dd 0a7002fcfh
+dd 0544b06e4h
+dd 0c175da53h
+dd 00ddcba78h
+dd 0125a63a0h
+dd 0bb507229h
+dd 06a166005h
+dd 05dc51e3bh
+dd 0cf04e173h
+dd 05d518f14h
+dd 0d8c82de8h
+dd 04a7c7b3eh
+dd 0c4434c15h
+dd 0557d7379h
+dd 07992bccbh
+dd 0303df412h
+dd 0e5f1be1bh
+dd 043e81774h
+dd 0727ed2a2h
+dd 06f06210eh
+dd 06fab1c22h
+dd 00f99171bh
+dd 09932141fh
+dd 01178de63h
+dd 0f92e39f2h
+dd 0778e528dh
+dd 0f413f129h
+dd 05b1c7712h
+dd 07c6b935bh
+dd 0529e7ebfh
+dd 0f66220f4h
+dd 02f7cfaadh
+dd 00bd323bfh
+dd 07f1a1ce6h
+dd 09be83073h
+dd 0bbf00802h
+dd 04f031ca9h
+dd 0ff20a757h
+dd 02ab07545h
+dd 0dec93321h
+dd 07d795f82h
+dd 0b8eacad9h
+dd 0b7581a89h
+dd 0e6012ebah
+dd 095184b86h
+dd 00deea8e9h
+dd 0f019bc73h
+dd 0979b312ch
+dd 08496eab4h
+dd 0756c126fh
+dd 0ed74c377h
+dd 00fc14a95h
+dd 016b2873bh
+dd 00b2c6888h
+dd 0c97545dbh
+dd 043667261h
+dd 0c663cef8h
+dd 0a49bdbd5h
+dd 06202c780h
+dd 02667c204h
+dd 0117d3edah
+dd 05d209a48h
+dd 0f5dc5b2dh
+dd 0d7a80ca0h
+dd 091559a4ch
+dd 01d343465h
+dd 0f90bcd1fh
+dd 0b1dbdeeah
+dd 0f3646984h
+dd 0748a8eafh
+dd 0c2d09969h
+dd 02a7c3d16h
+dd 0d0dddb11h
+dd 06c2848c0h
+dd 097e6ca57h
+dd 08374c0afh
+dd 0f61d5c11h
+dd 0e9fdd234h
+dd 088792c15h
+dd 001ceb094h
+dd 00f72d74dh
+dd 0007b3cb9h
+dd 09fd8da3fh
+dd 0a634e7d8h
+dd 0c0e054e5h
+dd 069584e33h
+dd 04f8266cbh
+dd 0e5d54efah
+dd 03078fff7h
+dd 05b30cd61h
+dd 09307bd38h
+dd 0adefb33dh
+dd 0a39efaf5h
+dd 09b9a4acbh
+dd 050da1cd4h
+dd 0dd22411ah
+dd 051922b47h
+dd 06efc0538h
+dd 082ef7683h
+dd 042821000h
+dd 0baeab632h
+dd 034e7978ah
+dd 034770818h
+dd 07891885ch
+dd 021faf7b3h
+dd 0fe96c46ah
+dd 08f234565h
+dd 088a01387h
+dd 009280c60h
+dd 07909693ah
+dd 02b5bf714h
+dd 07ba65cd2h
+dd 079d8ec99h
+dd 0f3fa7f88h
+dd 0611c2a6ch
+dd 018060f52h
+dd 0abd09afch
+dd 07246b114h
+dd 0333f5ea1h
+dd 0ea99557fh
+dd 0d9c36e7bh
+dd 06b0874b1h
+dd 0f1a3bdd9h
+dd 0dbca07f3h
+dd 00e672dach
+dd 074baf790h
+dd 06e1d4c3ah
+dd 00aeb82d2h
+dd 0098352b0h
+dd 09e9c21c2h
+dd 090882de2h
+dd 0d4e62d73h
+dd 0d20680cbh
+dd 0f0a1bb56h
+dd 0f2790b7bh
+dd 0adf4bbdeh
+dd 0f54a758dh
+dd 0957c0980h
+dd 0e6685fc2h
+dd 010a10887h
+dd 07da3930ah
+dd 0dc60596dh
+dd 00610482ch
+dd 0850796eeh
+dd 07b35e8d4h
+dd 098bcfc9bh
+dd 0e6713e92h
+dd 023d5c995h
+dd 0ebc366a4h
+dd 09b1d1b2fh
+dd 003d11183h
+dd 025047c6fh
+dd 032fdf331h
+dd 0c515f20ah
+dd 03e99cbbeh
+dd 02a653555h
+dd 0e4803237h
+dd 09808948ah
+dd 0dfea57b1h
+dd 073e8a698h
+dd 0ae44c2fah
+dd 0c2cf9d7dh
+dd 04e601d8ch
+dd 0724bc57dh
+dd 047849f91h
+dd 04904ffbah
+dd 000ed5588h
+dd 0ea58864ah
+dd 0403bb73ah
+dd 023fe57b0h
+dd 087cc07beh
+dd 017b8d4c3h
+dd 0726cadf4h
+dd 02e110256h
+dd 05c3b9462h
+dd 0516e72fah
+dd 02ead9055h
+dd 0f0cfeb77h
+dd 09c8b8715h
+dd 0ef547ba1h
+dd 0536fe34dh
+dd 097306356h
+dd 03c7340f3h
+dd 04d566858h
+dd 0a5db7e19h
+dd 0aaf85be7h
+dd 09f8b92c6h
+dd 0cc660a22h
+dd 00b3f8534h
+dd 07c6de344h
+dd 0ca6d4ba6h
+dd 0491299b9h
+dd 065f6d56ch
+dd 034055bfeh
+dd 0aaf19e1ah
+dd 0877ac9f4h
+dd 09e93a53ch
+dd 038670958h
+dd 0dca27388h
+dd 0bc904954h
+dd 032515fb4h
+dd 072d50d03h
+dd 01b21227ah
+dd 0e6cc8af2h
+dd 000a200beh
+dd 0026ed2bdh
+dd 07df87aa3h
+dd 053fbd10eh
+dd 0c4d9000fh
+dd 04efdf17ah
+dd 0c7e4cccdh
+dd 059460b52h
+dd 07a91109ah
+dd 08ec9decah
+dd 04d871712h
+dd 0858d0c10h
+dd 01c90a81ch
+dd 037d9d2feh
+dd 0903f31cch
+dd 0013eeffeh
+dd 0a85500d7h
+dd 02c25cd23h
+dd 051ee221eh
+dd 0a60e354dh
+dd 07fdeeed9h
+dd 04b06ddc1h
+dd 0a696f79ah
+dd 044b5a14ah
+dd 02e11c394h
+dd 0300fb9deh
+dd 00d486a25h
+dd 05709c8bch
+dd 024fa3a70h
+dd 0274881d2h
+dd 0657728e9h
+dd 07c583120h
+dd 0fcaededfh
+dd 08951bbb6h
+dd 053126161h
+dd 002c8f3feh
+dd 0a298f60ah
+dd 09996b169h
+dd 017a7fdb3h
+dd 07dc72ebeh
+dd 0327dfc9fh
+dd 0bd64efd4h
+dd 0122e2197h
+dd 0d5396231h
+dd 040e66e46h
+dd 063e53b26h
+dd 026f6a1fah
+dd 0ed666f05h
+dd 0733f7fefh
+dd 0e7168df2h
+dd 095a4f517h
+dd 0c5e4b1c5h
+dd 064d6041bh
+dd 07335597ah
+dd 08fd171afh
+dd 0a901083ah
+dd 0909d56e1h
+dd 0e51e6f64h
+dd 05a27c81ch
+dd 0261ef8e1h
+dd 0f484f65dh
+dd 0d6048b1ch
+dd 0461763feh
+dd 0269ca8d2h
+dd 0a177aec5h
+dd 0e3f972cfh
+dd 0ef608e2ah
+dd 0cb48067dh
+dd 0811e646dh
+dd 04dd7da0ah
+dd 0d7251b19h
+dd 0a1541175h
+dd 01725ea59h
+dd 028a78846h
+dd 0da90fdf2h
+dd 00c9fcfcch
+dd 072119cadh
+dd 0ea1d8dc5h
+dd 02493d883h
+dd 0b5f7e8ech
+dd 0d5854e66h
+dd 0ec497666h
+dd 0757140b6h
+dd 03221b6feh
+dd 09f11ede9h
+dd 05874687dh
+dd 05c1f78f1h
+dd 0de548b7dh
+dd 0ba4a49deh
+dd 0781d23b3h
+dd 0faef2172h
+dd 09df891cbh
+dd 0bde3f891h
+dd 049b855aeh
+dd 04606e821h
+dd 0342fed2bh
+dd 078b2561ch
+dd 05f493213h
+dd 0d3ef3d37h
+dd 04b83d333h
+dd 0e1b481aeh
+dd 0f00d09b4h
+dd 0dc2a3569h
+dd 01ca29af4h
+dd 071914dc8h
+dd 0fc87cf00h
+dd 039903339h
+dd 0e23271e0h
+dd 0eaa23d4eh
+dd 0c77c3125h
+dd 04876895ch
+dd 05ea721d7h
+dd 0f4ad0f2ch
+dd 0c81b8a8bh
+dd 049c0d377h
+dd 0c4e5cfbeh
+dd 008907900h
+dd 08690cef2h
+dd 02bb60d18h
+dd 0c0c3f7d8h
+dd 0fe2f0d71h
+dd 0b481463dh
+dd 021ccebf1h
+dd 007448c39h
+dd 079ad467bh
+dd 0da1a2b53h
+dd 0fb9d6096h
+dd 064003f97h
+dd 020f2f988h
+dd 0ea83e8abh
+dd 02ae19096h
+dd 0302e0796h
+dd 014a77d90h
+dd 063f47df0h
+dd 0081b9f7ah
+dd 002309b9ch
+dd 0d405393eh
+dd 0c2a24ba4h
+dd 00be5c54dh
+dd 098eb77b5h
+dd 050cefbb3h
+dd 0581791abh
+dd 0f0aa1822h
+dd 005130687h
+dd 0d6843f91h
+dd 0a00bd8f0h
+dd 0db536e16h
+dd 0479cba85h
+dd 0d215a3dch
+dd 00b2be545h
+dd 0d4cb5d1ah
+dd 0b9af053ch
+dd 05d63e838h
+dd 0ce086279h
+dd 07755d540h
+dd 068e8bac3h
+dd 044eef776h
+dd 0c60f1a95h
+dd 08be53318h
+dd 0ece86f4eh
+dd 002485d29h
+dd 09f7aa037h
+dd 0c7ed37d6h
+dd 0d2ca6329h
+dd 0dfc9031eh
+dd 0558dfdddh
+dd 06b6d4205h
+dd 0fd9f29b0h
+dd 0a7ac55ech
+dd 0717d1419h
+dd 0766f8cc6h
+dd 047b97c75h
+dd 032891857h
+dd 0c1da8534h
+dd 0d0f1d73fh
+dd 0dd509f1fh
+dd 0e7a8051bh
+dd 0ae4f13b7h
+dd 0d3f77175h
+dd 0a66d11d1h
+dd 04fad3381h
+dd 03332df06h
+dd 0fef59d9ch
+dd 02beef054h
+dd 00f13ce2ch
+dd 0eaaf4c5dh
+dd 09bd696c1h
+dd 0f275f7c3h
+dd 0e0e6628eh
+dd 07659348bh
+dd 08b1733e7h
+dd 04a0a60cch
+dd 0f2b012b7h
+dd 0c385cc43h
+dd 052c2bd94h
+dd 0d723b443h
+dd 019745088h
+dd 0cbe64dbbh
+dd 0bcfd150ah
+dd 0d840323ch
+dd 0055056b7h
+dd 08185ab92h
+dd 07212f1c2h
+dd 092462db1h
+dd 0b2f0a061h
+dd 0dc7fce27h
+dd 039f7db55h
+dd 04063d202h
+dd 064f4b81ch
+dd 08742f779h
+dd 012555369h
+dd 0f35efb81h
+dd 01603700eh
+dd 0bf23a4ach
+dd 090438392h
+dd 0736c37f2h
+dd 023cec64eh
+dd 0f7f3d17dh
+dd 07980d698h
+dd 080a0cf97h
+dd 03ba0cfd9h
+dd 0306c347bh
+dd 01de194edh
+dd 064dca3fah
+dd 065fdd57ah
+dd 0dfa5c7ceh
+dd 0131f66eah
+dd 033e12016h
+dd 0c3dd47a1h
+dd 00779357bh
+dd 0286cacf1h
+dd 085582cbah
+dd 06a673022h
+dd 05f87f005h
+dd 0272ff57dh
+dd 03be3098eh
+dd 01b05ed49h
+dd 0c7b27ab5h
+dd 04e67bd46h
+dd 03884e60eh
+dd 0334bcb44h
+dd 07fd3486bh
+dd 089ebb3c9h
+dd 05fe7dd26h
+dd 01ea15bdfh
+dd 0932bfa1dh
+dd 09c7802e5h
+dd 051d2261fh
+dd 05dc7d7f5h
+dd 09ee7cd51h
+dd 0e93372c4h
+dd 0b8e9a8aeh
+dd 04b81c1e0h
+dd 09439f894h
+dd 09620d141h
+dd 007fa8996h
+dd 0b13ad360h
+dd 001c91bf9h
+dd 07ad7c550h
+dd 0770a628fh
+dd 0b5ab3c96h
+dd 0d0d27682h
+dd 08449c275h
+dd 0a4677d84h
+dd 04c1f3e7ah
+dd 01724db7eh
+dd 0c99d9628h
+dd 06303cf13h
+dd 02e2b4388h
+dd 07d6b7df6h
+dd 02253d4eah
+dd 0372e3868h
+dd 00013940dh
+dd 045ddbe9fh
+dd 0f1579511h
+dd 0415de1d9h
+dd 014726517h
+dd 0e1be5d1bh
+dd 044907b85h
+dd 0f3e6f689h
+dd 04f77ccc0h
+dd 06ff505c1h
+dd 041bef8bch
+dd 080073050h
+dd 029cd6c7bh
+dd 055074b8eh
+dd 04c724546h
+dd 0e27826f5h
+dd 070b8fe0ch
+dd 031738e1ah
+dd 046c037e4h
+dd 02402bf38h
+dd 003d4fcfch
+dd 0f9e5dbb7h
+dd 0cf44559fh
+dd 0cbbfce55h
+dd 0ce092241h
+dd 0a108a609h
+dd 01151303eh
+dd 06193f573h
+dd 08da5a06ch
+dd 00fea1f86h
+dd 00c28759fh
+dd 0035e49e0h
+dd 0d279a4edh
+dd 00f42382dh
+dd 01aa24db9h
+dd 01d51408dh
+dd 0833b550ah
+dd 09d95ff0ch
+dd 0fdf15205h
+dd 0c61d08b3h
+dd 0ca05f98bh
+dd 02b8b41e5h
+dd 0506e73e1h
+dd 068c8fcfdh
+dd 01708cd6fh
+dd 006825ed2h
+dd 0145f141ch
+dd 045d47556h
+dd 0166205dah
+dd 01917d33ah
+dd 024b51436h
+dd 0ad46a4d9h
+dd 08b8bb9dch
+dd 082612692h
+dd 0799c52bdh
+dd 02c58bdb0h
+dd 08bed91bch
+dd 0fe3ff336h
+dd 06393037fh
+dd 041b73c0eh
+dd 094e9f5c2h
+dd 02ad2433fh
+dd 0fd5fe023h
+dd 0428ca09fh
+dd 018b5491ch
+dd 0e5696c10h
+dd 0f1aca60ah
+dd 0888dc055h
+dd 0ebe949b8h
+dd 0bff7098ah
+dd 0c2062bd7h
+dd 060a2217eh
+dd 0647b80cdh
+dd 031b38617h
+dd 060c3fec0h
+dd 03f506201h
+dd 0b20cada0h
+dd 02c31d464h
+dd 09c7d166ah
+dd 08a774859h
+dd 03ece4563h
+dd 03768f6fbh
+dd 0b08592a8h
+dd 0c3e4bb83h
+dd 001dc6dfbh
+dd 00d77017ch
+dd 07c997f76h
+dd 04fd8ac9dh
+dd 0a35d4281h
+dd 0308629b0h
+dd 041d2038bh
+dd 0e086e9a7h
+dd 0af720ac0h
+dd 0a109390eh
+dd 040dc4dc8h
+dd 0496ab4edh
+dd 0e020497ch
+dd 0a3a7c850h
+dd 0e340e379h
+dd 08307274fh
+dd 0d9d064f1h
+dd 03fb999a5h
+dd 004c45cedh
+dd 08e909edfh
+dd 0c11dda44h
+dd 069802b69h
+dd 00719e397h
+dd 07d7e0d96h
+dd 0a9085519h
+dd 03a56c6a3h
+dd 05d1bdfbbh
+dd 0602cea44h
+dd 0adf823ebh
+dd 08aba3668h
+dd 08b337944h
+dd 063f8758dh
+dd 0ee577349h
+dd 09699addbh
+dd 0cb9cfa3ch
+dd 032fbf7e3h
+dd 08df95103h
+dd 038427e9ch
+dd 04a5ee3deh
+dd 07c938823h
+dd 096e9831bh
+dd 09a9f02afh
+dd 03c0f9076h
+dd 0af5eae38h
+dd 0209453a5h
+dd 065212884h
+dd 0bc7b872dh
+dd 03b1224a5h
+dd 0c4b01736h
+dd 04a7b69f8h
+dd 049efcd48h
+dd 08fac5c87h
+dd 0bce9d34eh
+dd 02aef3840h
+dd 0ac8018f6h
+dd 0ba11e638h
+dd 0c884936fh
+dd 05ec68e6ah
+dd 04fb6b3b4h
+dd 01f779eb2h
+dd 0edd5f0a0h
+dd 0f8ae2930h
+dd 0877b4fb4h
+dd 016a937ffh
+dd 077998249h
+dd 0334ac5bbh
+dd 00e13cb7eh
+dd 0f7ead346h
+dd 0a7daeaddh
+dd 0ca40e7fdh
+dd 0e5181b4dh
+dd 0953d5543h
+dd 005b89fa2h
+dd 0ab19bea8h
+dd 024c24830h
+dd 02f47e85ch
+dd 04c570f61h
+dd 02ce607d4h
+dd 0782ff04ah
+dd 0bdd96771h
+dd 079a62e62h
+dd 08db1d3c6h
+dd 0fe2b8065h
+dd 004d20da9h
+dd 0b6233332h
+dd 0d00d1183h
+dd 02ae586b0h
+dd 083d5e472h
+dd 043ec202bh
+dd 0c6a1234bh
+dd 033b83125h
+dd 042de9584h
+dd 0cb5ce06bh
+dd 0e4edaa8bh
+dd 0e3d91777h
+dd 0d3e61da4h
+dd 08c727999h
+dd 0b1158f1ah
+dd 0861f27f3h
+dd 0e6fd827ch
+dd 00ac77270h
+dd 021297b61h
+dd 018de73fbh
+dd 07c7b8ad2h
+dd 099fd621fh
+dd 09c49460ah
+dd 02a4cc5e2h
+dd 040daf78ah
+dd 07838ca5dh
+dd 063c60428h
+dd 01b54acf3h
+dd 045433c42h
+dd 0c28025c7h
+dd 0ddb37a08h
+dd 0398a3d74h
+dd 0dce6276ah
+dd 035f20047h
+dd 0c59240fdh
+dd 0a76fcd41h
+dd 07c81aa03h
+dd 0d2fc6997h
+dd 09b93a77fh
+dd 02185cd40h
+dd 0f6479b10h
+dd 07886d731h
+dd 01bf4c8aeh
+dd 08f69668eh
+dd 0b273faafh
+dd 0a67401d3h
+dd 00c42746ah
+dd 000217ca1h
+dd 03d96b6c1h
+dd 0c17cdefdh
+dd 0c22be795h
+dd 0ed8a76e8h
+dd 093bd78b5h
+dd 09408a379h
+dd 05b197ad4h
+dd 00f1eceb4h
+dd 07ea94e29h
+dd 0d9413909h
+dd 0c5a82d99h
+dd 0a4a2934fh
+dd 036dcf7e8h
+dd 05c7a4476h
+dd 05eba3b8ch
+dd 0b4c66e4ch
+dd 0de49f80ch
+dd 062699a21h
+dd 0173b4fb8h
+dd 0e30d46c4h
+dd 013cfae6fh
+dd 03ea667f2h
+dd 0596925b8h
+dd 091f26253h
+dd 0982c57f6h
+dd 0b54f533ah
+dd 06f389acfh
+dd 0ad412d85h
+dd 07a1e2690h
+dd 0cf895913h
+dd 0cb5af825h
+dd 08d18e6f5h
+dd 0a2d14a2ah
+dd 0dbd6344eh
+dd 0a6a1184bh
+dd 02cbd37b0h
+dd 09b26cbe9h
+dd 089ca5294h
+dd 053d6142ch
+dd 0291874ebh
+dd 031e83731h
+dd 08b95c381h
+dd 011651591h
+dd 07087a623h
+dd 00fbdc7f8h
+dd 0ca9ef3d0h
+dd 09fe918e1h
+dd 03bb103dfh
+dd 012718b07h
+dd 0576c03c8h
+dd 0e5b2b770h
+dd 064fc7648h
+dd 0caa06fcch
+dd 0ebf353e1h
+dd 02c7001e0h
+dd 0290d27dah
+dd 0540f89a3h
+dd 0113baba5h
+dd 02e227c21h
+dd 054ee805ah
+dd 096943cffh
+dd 0a408f97fh
+dd 0d7eabfc7h
+dd 0e44128aeh
+dd 039bcf2e1h
+dd 0d92a252ch
+dd 0da1e3771h
+dd 084f56356h
+dd 0465dc335h
+dd 00204bc41h
+dd 0e020a097h
+dd 09ab3f4cfh
+dd 02e6d3232h
+dd 0636793d8h
+dd 03854e775h
+dd 06e1f6161h
+dd 074dc5c22h
+dd 0ded9825eh
+dd 05b3b0e79h
+dd 04eb78f02h
+dd 0061d096bh
+dd 02fdd4a67h
+dd 01c9ac924h
+dd 02de721d6h
+dd 0b54482d3h
+dd 0e7b808d1h
+dd 0e226d3d9h
+dd 0a44ef012h
+dd 01e874256h
+dd 01443b0eeh
+dd 0e2c3d37eh
+dd 04e03fbf5h
+dd 02533df16h
+dd 0e43bbcb4h
+dd 09934ccd5h
+dd 0babbae11h
+dd 0d9c1480eh
+dd 0f863f5b4h
+dd 02fb696d6h
+dd 05a5477c5h
+dd 091521f48h
+dd 09e22632bh
+dd 06030ad2eh
+dd 0c50641aeh
+dd 00f1ac512h
+dd 0c95701edh
+dd 0d9ee30b0h
+dd 07014c959h
+dd 03030b492h
+dd 040da4a06h
+dd 0046f972bh
+dd 00412f281h
+dd 0245ba261h
+dd 0aba7b287h
+dd 0bc8239f7h
+dd 0b1e62009h
+dd 0b4dfda80h
+dd 092145bc6h
+dd 0871ff191h
+dd 0964f8df6h
+dd 05c96684dh
+dd 0e8d3adb4h
+dd 0cf1b87dfh
+dd 0b5cfcb83h
+dd 0af3e0b14h
+dd 0cf74de53h
+dd 0ac38b6ech
+dd 0c98c5cbbh
+dd 0719fc79dh
+dd 04b682ea1h
+dd 050d32d89h
+dd 00185f6a4h
+dd 09e15f04fh
+dd 0481a63a4h
+dd 062a7fcdbh
+dd 026bd524ah
+dd 001ffce07h
+dd 030099273h
+dd 0074dcaach
+dd 01a3f8d9ch
+dd 0df7c4298h
+dd 04207345ah
+dd 071607be4h
+dd 00d3e48f2h
+dd 08207a7f7h
+dd 0d5379628h
+dd 0588dc98eh
+dd 0fdfa9885h
+dd 07ce628b7h
+dd 094905084h
+dd 0e44053e5h
+dd 005e71784h
+dd 05f709564h
+dd 09126d899h
+dd 0eb7eceb6h
+dd 07aa44825h
+dd 03598e5b6h
+dd 0aef9e2b9h
+dd 085d10836h
+dd 00bc4da42h
+dd 0fbe5ebd9h
+dd 023bed3c1h
+dd 0d828b093h
+dd 02bb58c3dh
+dd 0edfa1cd7h
+dd 0c5518b20h
+dd 045bc94bah
+dd 02f2c333ch
+dd 04942d92ch
+dd 011ebc233h
+dd 0834ce656h
+dd 074094d42h
+dd 01828d050h
+dd 03948b357h
+dd 0c02bd808h
+dd 0594044c8h
+dd 0508ee65fh
+dd 0e4f6da31h
+dd 069ac7270h
+dd 01f9a2410h
+dd 0ec5b79bbh
+dd 02473743fh
+dd 02504d3ffh
+dd 0b6f70bd3h
+dd 02e46df9ah
+dd 00d270ff5h
+dd 0827670edh
+dd 02667bee9h
+dd 0094a20d7h
+dd 00b71149eh
+dd 0ea38eea4h
+dd 053e6eeb6h
+dd 0e93d2dbeh
+dd 03bce409ah
+dd 01d0151cdh
+dd 0675fef8dh
+dd 012db0716h
+dd 0d26d984dh
+dd 0ecb2fd3dh
+dd 0e9ce5d89h
+dd 06728c606h
+dd 0b4896c54h
+dd 045ed279fh
+dd 0d767344dh
+dd 0b08e469bh
+dd 07398a2a3h
+dd 0bd601e70h
+dd 0787a81afh
+dd 0a7185508h
+dd 0eed43fa4h
+dd 07b5e867fh
+dd 00143e834h
+dd 0b026ef8bh
+dd 04014bfe2h
+dd 011bf138fh
+dd 0d7281a16h
+dd 090c49e3dh
+dd 0ed222b03h
+dd 0f4a05272h
+dd 0cd990df9h
+dd 057bec7bdh
+dd 085db10c4h
+dd 0a12a0929h
+dd 0e82be3f7h
+dd 0e7af8636h
+dd 0573a2ccah
+dd 00c050d56h
+dd 038cb384ch
+dd 0e1214124h
+dd 0b694b9bch
+dd 06ccf9bebh
+dd 0367e3f3ch
+dd 09c8d3d26h
+dd 003718276h
+dd 066c3dc07h
+dd 084a578dbh
+dd 0d1d8b18eh
+dd 0b334d3ebh
+dd 0b9fc65cch
+dd 0c6d1245fh
+dd 003439b7bh
+dd 0f0627144h
+dd 023ea755ah
+dd 094534819h
+dd 0348e16dfh
+dd 02ac4548ah
+dd 07b438111h
+dd 08d5f4b0ah
+dd 04a74526ch
+dd 00e3a5531h
+dd 0edc7cc8eh
+dd 0ec56f3c2h
+dd 087edec65h
+dd 0226ccaabh
+dd 0747c2927h
+dd 052494e25h
+dd 05a53b0e8h
+dd 06655f926h
+dd 0fdc7e154h
+dd 065eb5ce9h
+dd 058832a1bh
+dd 0fb617b61h
+dd 044e63776h
+dd 0fd4c007bh
+dd 0ced0d957h
+dd 082ae85f5h
+dd 019be39c2h
+dd 06966ea9ch
+dd 05fe812bfh
+dd 0797ce4f4h
+dd 09dbb395bh
+dd 0b289075eh
+dd 0fa01e3b4h
+dd 026a050b1h
+dd 0e9365b4ch
+dd 042328737h
+dd 0b2a8b26ch
+dd 0d3d16ba0h
+dd 0f2607ee0h
+dd 02b7605a2h
+dd 0bb5e65e3h
+dd 015742de9h
+dd 06ff58542h
+dd 0e4bd73d6h
+dd 053498f59h
+dd 098911810h
+dd 0f0b28a5fh
+dd 02e28fb75h
+dd 0dd31a6b3h
+dd 0255870dah
+dd 0c6afc8a4h
+dd 0895cacd2h
+dd 05981501ah
+dd 056e52feeh
+dd 0f0b2a42ch
+dd 074a4aa30h
+dd 0b900378bh
+dd 01dc0c112h
+dd 084e110a3h
+dd 03ac50ba0h
+dd 0eeb26582h
+dd 043e1250dh
+dd 05a4896dch
+dd 0f1eecf71h
+dd 0f2e54573h
+dd 078cfea40h
+dd 0c0fe1727h
+dd 02d157e82h
+dd 0fcf62e78h
+dd 00c455a01h
+dd 04a3cef4dh
+dd 06d448a63h
+dd 0df9cbbffh
+dd 073255b95h
+dd 0ba6c5100h
+dd 04225ec98h
+dd 0c0aed5e6h
+dd 06715db0ch
+dd 01883cd47h
+dd 0075196dbh
+dd 02190cae4h
+dd 05778c622h
+dd 089a5091fh
+dd 0e0146b9ah
+dd 0b87aa7abh
+dd 0c10435cfh
+dd 0f8b0d2cah
+dd 0bee0b3fdh
+dd 027fa5d1eh
+dd 05396b012h
+dd 021f673ddh
+dd 07660bb96h
+dd 076501c47h
+dd 0875b99cah
+dd 03d25dc11h
+dd 0ccef34ech
+dd 00e13c437h
+dd 0a8c79fe7h
+dd 03fdc3d9bh
+dd 071761407h
+dd 06cb44f1fh
+dd 06a638524h
+dd 0ceec9645h
+dd 0a8a69f38h
+dd 07b2b17d1h
+dd 001440cedh
+dd 078a5f0b2h
+dd 0688d273ah
+dd 0ad8d46b7h
+dd 064c5f851h
+dd 07c65aa43h
+dd 005ca80a8h
+dd 05b48f5dfh
+dd 0c3f94a83h
+dd 08450b826h
+dd 03c42f0d5h
+dd 0cbedbfe2h
+dd 03e059b35h
+dd 01fe8dd86h
+dd 0cba9e27ah
+dd 05ffecdc8h
+dd 0f6eb97a0h
+dd 0affc62f4h
+dd 064172835h
+dd 0c6d6e426h
+dd 06c90f4b3h
+dd 06f636069h
+dd 063bfab3ch
+dd 0124ff6cfh
+dd 00750779ah
+dd 0866eb6fdh
+dd 04149fd33h
+dd 07c4f7294h
+dd 0897c5aech
+dd 0bd073798h
+dd 05cb48ddfh
+dd 0d8e50b88h
+dd 06049b826h
+dd 00eabbd9dh
+dd 0b199f069h
+dd 0bb939a6eh
+dd 0f253d607h
+dd 0bbc998ebh
+dd 0f342a56dh
+dd 0e43f95ffh
+dd 08f22ecceh
+dd 01bf2ed39h
+dd 0d7fb4c1dh
+dd 0bccc44d5h
+dd 024202f25h
+dd 0c9e62580h
+dd 0962fa55fh
+dd 0c16c0820h
+dd 0bfe6574eh
+dd 06ccf2542h
+dd 03fec2d27h
+dd 033f53c74h
+dd 0bd044015h
+dd 0bc09cd80h
+dd 0e5235ab0h
+dd 08e06f026h
+dd 08ccc0d2eh
+dd 044eba037h
+dd 0d56a8e4ah
+dd 04d65eaddh
+dd 077fd98a6h
+dd 0998e54c4h
+dd 03ebe6d7eh
+dd 0307de79bh
+dd 01cac4fa1h
+dd 0243fde4bh
+dd 09fa44327h
+dd 0fe5199e0h
+dd 01846b78fh
+dd 0f4688be5h
+dd 05dfaf85ah
+dd 06248ad4bh
+dd 09bb5c422h
+dd 0db0cf1d3h
+dd 0d72119b1h
+dd 03990662dh
+dd 09ef3f529h
+dd 016383160h
+dd 0696d1bd0h
+dd 0ed1ae09bh
+dd 00888e29bh
+dd 09bf2fca8h
+dd 04a10b0bbh
+dd 0186a2265h
+dd 064ce6bfeh
+dd 0cea45a21h
+dd 075dd7eddh
+dd 0ca9c4b5fh
+dd 0b7fe2f6bh
+dd 005e1b2dfh
+dd 0ae8ae956h
+dd 0248926a2h
+dd 08d4f3b58h
+dd 0e01e1d89h
+dd 0416cd856h
+dd 0f3c43603h
+dd 0a4ae1d73h
+dd 0c2d21f0bh
+dd 047c68f3ch
+dd 02ff50868h
+dd 087e17fb9h
+dd 047e040d9h
+dd 02c1e9d38h
+dd 0ecbc424ah
+dd 0df1d7402h
+dd 09865e3e2h
+dd 08341d414h
+dd 06824370ah
+dd 0944f5d44h
+dd 0de509e11h
+dd 0b2ddeff5h
+dd 05a5c485eh
+dd 0b3ae14b7h
+dd 007463758h
+dd 072df39b7h
+dd 09122787dh
+dd 07f61781ah
+dd 00cbb0246h
+dd 0f1f6eca6h
+dd 02e3db25fh
+dd 05b34fd53h
+dd 0d664d31dh
+dd 048fa8757h
+dd 095ca429dh
+dd 00cb9369dh
+dd 0954a3f58h
+dd 0f3fe6e33h
+dd 0365ad260h
+dd 04b4a617dh
+dd 0271116a2h
+dd 03b6665a4h
+dd 0da11ecdeh
+dd 0c2d529b3h
+dd 0aa702d2ch
+dd 0d2336864h
+dd 01d4aaed3h
+dd 07b52b871h
+dd 0eed29674h
+dd 0726d3dd3h
+dd 0fc6eb674h
+dd 00e58f6e9h
+dd 0d28a5646h
+dd 0eb51f2ebh
+dd 0280bc160h
+dd 033349aa3h
+dd 0f42c5520h
+dd 0e8baf7a0h
+dd 0f34b9ce2h
+dd 0f173208eh
+dd 054ed0bd9h
+dd 0b5db2159h
+dd 03e622436h
+dd 038c34b50h
+dd 0ab21e174h
+dd 06140323bh
+dd 0b38eff03h
+dd 0b49107beh
+dd 02d339d45h
+dd 0f2cdc404h
+dd 00acba9c7h
+dd 070e1ca01h
+dd 08e9e9630h
+dd 0d8029425h
+dd 0cd3c0877h
+dd 04d2d845dh
+dd 0c1ec6f0fh
+dd 045d92ddch
+dd 03f085aefh
+dd 0495547fdh
+dd 0d3a3373eh
+dd 012f0cdfdh
+dd 0ab25e18dh
+dd 06fe56ef9h
+dd 0db9dad36h
+dd 077fe1b2dh
+dd 04a39d792h
+dd 0804ddda9h
+dd 09357283ch
+dd 03790ec3eh
+dd 062ae9f96h
+dd 082b878b2h
+dd 0990f550ch
+dd 0e9a6d560h
+dd 00d8b15abh
+dd 01ea55bdah
+dd 0c8db788bh
+dd 08abe93f1h
+dd 040aaf1a1h
+dd 0e47facf4h
+dd 05df9526eh
+dd 0f934af93h
+dd 05c79fac4h
+dd 0b9ca1516h
+dd 0c00700c3h
+dd 0bf49c644h
+dd 0804585bbh
+dd 03e97f93fh
+dd 0f8f86c76h
+dd 062fbf838h
+dd 055b04be0h
+dd 0526a7acah
+dd 0d1dfcd9dh
+dd 07893c71eh
+dd 0d909228ah
+dd 0d5be16c3h
+dd 07de3bda2h
+dd 0dfb47b97h
+dd 0e16a6fddh
+dd 064c56a68h
+dd 08bfe1447h
+dd 0e618c293h
+dd 0d0f37166h
+dd 00f263207h
+dd 09166735ah
+dd 0866cb345h
+dd 0e27c803ah
+dd 0ffbd0677h
+dd 09faeec35h
+dd 09cf2cd64h
+dd 0ff9c74d5h
+dd 09ebaac67h
+dd 0230090f3h
+dd 0b6d5be89h
+dd 0e6e02457h
+dd 0f793f79ch
+dd 036010a4ch
+dd 01450dc46h
+dd 0af79a788h
+dd 0139f5398h
+dd 0d24a721fh
+dd 0911e3fb4h
+dd 064e2b31eh
+dd 08961f185h
+dd 0858ab993h
+dd 069db4e40h
+dd 08a28bfbah
+dd 0b7d76b07h
+dd 07c97c8d0h
+dd 040323a61h
+dd 0d1dc171dh
+dd 0043d57cah
+dd 0c7234d48h
+dd 05318a5e5h
+dd 03cde1302h
+dd 0f82ce340h
+dd 0afe6d283h
+dd 09b6e0eb1h
+dd 01f83f118h
+dd 04d14dec3h
+dd 0e6534866h
+dd 060b70d7fh
+dd 041d4969ch
+dd 0c9471b2bh
+dd 0002c8100h
+dd 0e4d0ad70h
+dd 06ccc74feh
+dd 05243044bh
+dd 08aa876a3h
+dd 0f8d7422bh
+dd 03be57817h
+dd 0beee874fh
+dd 07be7528dh
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0F30679909.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0F30679909.inc
new file mode 100644
index 0000000..662f981
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0F30679909.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version

+dd 000000909h ; Patch ID

+dd 009112017h ; DATE

+dd 000030679h ; CPUID

+dd 07f1ab1f1h ; Checksum

+dd 000000001h ; Loader Version

+dd 00000000fh ; Platform ID

+dd 00000cbd0h ; Data size

+dd 00000cc00h ; Total size

+dd 000000000h ; reserved

+dd 000000000h ; reserved

+dd 000000000h ; reserved

+dd 000000000h

+dd 0000000a1h

+dd 000020001h

+dd 000000909h

+dd 000000000h

+dd 000000000h

+dd 020170908h

+dd 000003201h

+dd 000000001h

+dd 000030679h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 0000032f4h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 06f877ed4h

+dd 06c9d48a1h

+dd 0b77c4903h

+dd 0055bf256h

+dd 0409ddef8h

+dd 03d00afcdh

+dd 0347048d8h

+dd 0727e0faeh

+dd 0156866dbh

+dd 0c4bf175ah

+dd 09d00ca4fh

+dd 0b3e89a09h

+dd 07d2c8e19h

+dd 0bf5b667ch

+dd 07a1a7ac0h

+dd 026eebc7dh

+dd 0b2967286h

+dd 0ceb685c8h

+dd 0ffba02e6h

+dd 0144b5468h

+dd 000c428c9h

+dd 06d15dd3ah

+dd 0f9461953h

+dd 01632a092h

+dd 0222335dah

+dd 01fee67d9h

+dd 0a770513ch

+dd 04e83def6h

+dd 0b3d82e5ah

+dd 050f0b89fh

+dd 07fe10d45h

+dd 070f05efdh

+dd 05f575449h

+dd 0ab71a0a3h

+dd 0fb2a6eb5h

+dd 00283b4e2h

+dd 058a95566h

+dd 038a4c957h

+dd 08a682f1bh

+dd 0c49b3009h

+dd 01256e90bh

+dd 033169c52h

+dd 0d91585c4h

+dd 0df78eb29h

+dd 09f403399h

+dd 0a9de58dah

+dd 0fd05c858h

+dd 05a0f11bch

+dd 0c00e7840h

+dd 0b39bd56ah

+dd 0b87f38c7h

+dd 090141c59h

+dd 0325933f9h

+dd 00b0e1332h

+dd 0963c4befh

+dd 0f203d9ach

+dd 03925365bh

+dd 02955f8e7h

+dd 01fc417cbh

+dd 0d840e4e7h

+dd 025e9f7fah

+dd 0fb769b96h

+dd 0c7b8da5eh

+dd 0e81200f0h

+dd 071291c12h

+dd 05989b1e5h

+dd 0c007fdadh

+dd 0d7c9091fh

+dd 06a008197h

+dd 073005539h

+dd 06d8b436ch

+dd 0bc606f43h

+dd 000000011h

+dd 0229a4c80h

+dd 062415396h

+dd 030e7c28ch

+dd 02be27311h

+dd 0fce84979h

+dd 080648b8eh

+dd 03b7f6943h

+dd 0065e4b2bh

+dd 02e8403f3h

+dd 089eb8ab5h

+dd 034c8f63ch

+dd 006df820bh

+dd 03481a047h

+dd 0187b0252h

+dd 05d27a9fdh

+dd 0f661cfaah

+dd 039d2392eh

+dd 0dfa631d4h

+dd 03bb61d38h

+dd 0618ee4d5h

+dd 04b7f7b8bh

+dd 08b36f86bh

+dd 0c518b89dh

+dd 00da63efdh

+dd 019c1ec35h

+dd 0df8610cch

+dd 023e12f6fh

+dd 0ac6d2a79h

+dd 02e8d0934h

+dd 0a581de0eh

+dd 0eb1c71fah

+dd 095b4231dh

+dd 0b784698ah

+dd 0e36e2ea7h

+dd 099a0eb12h

+dd 062ad734dh

+dd 0e0aced88h

+dd 083d9f1afh

+dd 011d38cbeh

+dd 0cf48f949h

+dd 08205465fh

+dd 01f93f1d7h

+dd 057ba67ech

+dd 0273ba831h

+dd 047497d71h

+dd 03df42c47h

+dd 020b09025h

+dd 0c36a645dh

+dd 06f4f0011h

+dd 0abb2235fh

+dd 00adadb31h

+dd 051626207h

+dd 0ffd34a5ch

+dd 09de7db39h

+dd 098500754h

+dd 090749998h

+dd 097bef9d0h

+dd 0622d72c3h

+dd 046e8ff22h

+dd 0f420ff0fh

+dd 044fa364fh

+dd 0abe1df25h

+dd 0df5ab1f8h

+dd 053a7ea86h

+dd 037117e29h

+dd 0592b3894h

+dd 040ec1d58h

+dd 05d16207fh

+dd 00608f826h

+dd 018983338h

+dd 00c15ad4fh

+dd 023928370h

+dd 0712fa039h

+dd 061ed7a67h

+dd 0aa219cabh

+dd 07c7d7c4ah

+dd 0892e3f51h

+dd 05efc6738h

+dd 01c38c429h

+dd 0b11d14feh

+dd 0e927e858h

+dd 00520da44h

+dd 0a05817c7h

+dd 0413ebbd2h

+dd 0d778492ah

+dd 0f50ef833h

+dd 06fa50ebch

+dd 0ec163351h

+dd 0eef0d2abh

+dd 020b5c834h

+dd 024db2ce5h

+dd 0cb6cd5e1h

+dd 0dfb4ad46h

+dd 0ee436c95h

+dd 0bae26f84h

+dd 0014f0529h

+dd 053003a17h

+dd 003b3bb83h

+dd 00f6aecc7h

+dd 0d4503c94h

+dd 0dd2ba743h

+dd 0c977dda7h

+dd 0ed465459h

+dd 0a043ad31h

+dd 0f4015ef8h

+dd 087c96c07h

+dd 07da2fb82h

+dd 000a95b37h

+dd 027707100h

+dd 075161d64h

+dd 083942b1ah

+dd 0f6025636h

+dd 0ed73eeb0h

+dd 00ef705bch

+dd 0088c82b8h

+dd 02cf15285h

+dd 043445bf5h

+dd 017f8b855h

+dd 0de5415a8h

+dd 019f3db1ch

+dd 01ba3b3b7h

+dd 00b185e13h

+dd 0316d583fh

+dd 0262fe281h

+dd 02af0c777h

+dd 0dde0ddb8h

+dd 082d789c9h

+dd 069f46b4dh

+dd 03cf3ee79h

+dd 0c88a7496h

+dd 04e0e4c8dh

+dd 04c09447dh

+dd 0d425171eh

+dd 02c091117h

+dd 0566aad0fh

+dd 05b387140h

+dd 0cc296134h

+dd 06b4084f3h

+dd 0862187bah

+dd 0a828ff65h

+dd 03fe3e23eh

+dd 0aa1e10e5h

+dd 01963ac9fh

+dd 065902396h

+dd 08a0477ach

+dd 0c9208434h

+dd 0c3b71188h

+dd 0b0d57b59h

+dd 0e5639ae0h

+dd 08203d60eh

+dd 0ecefad55h

+dd 0d40c0363h

+dd 0470ffb4fh

+dd 0f47f97abh

+dd 051474d55h

+dd 04e687f00h

+dd 0fa9792dah

+dd 0ca540274h

+dd 099ec8a4ch

+dd 0552f4521h

+dd 039f7666ch

+dd 0b4f0e222h

+dd 09a24dfc4h

+dd 034615810h

+dd 045ce127eh

+dd 07eae94e2h

+dd 063c23e52h

+dd 0f0bcd113h

+dd 06175ca8bh

+dd 06f5f963bh

+dd 015ee06a7h

+dd 06bdf97a0h

+dd 0c51977f8h

+dd 0a2d79c84h

+dd 08caba0c9h

+dd 0f95905dah

+dd 03ab73b0ch

+dd 0f0f3ac5fh

+dd 0e93430d7h

+dd 0c250d436h

+dd 03964cad7h

+dd 01e92a9fbh

+dd 0b41e2eeah

+dd 085c3a15bh

+dd 0ac66c644h

+dd 0a8781df6h

+dd 0fed32da7h

+dd 0e802afa2h

+dd 0fb3ae4fdh

+dd 0480305c8h

+dd 0bcd973a7h

+dd 0ec015b06h

+dd 0f561cabbh

+dd 05e6d3009h

+dd 0521cdcf1h

+dd 06e08bd2ch

+dd 0fb442d2bh

+dd 0da03bdedh

+dd 020c6a97ch

+dd 0b5bb2875h

+dd 00e1cd048h

+dd 05bbc3c03h

+dd 0c9401db1h

+dd 02a1ca604h

+dd 0f7aad4c6h

+dd 0f29476fch

+dd 098830315h

+dd 065b76c11h

+dd 0ea811bb2h

+dd 06a80add0h

+dd 0a37a1c1bh

+dd 08f195cfch

+dd 0160e5837h

+dd 01d87fc28h

+dd 0397d3aaeh

+dd 049ad0d6fh

+dd 0c41d2b15h

+dd 001d50011h

+dd 09997b476h

+dd 0b6c2fd85h

+dd 0fbc580f3h

+dd 0bb28a93ch

+dd 04fab5372h

+dd 071c255d4h

+dd 06386ac75h

+dd 052e5bf26h

+dd 049b52c0ah

+dd 094cd7f55h

+dd 0c0b71609h

+dd 06e04ed52h

+dd 097e69a26h

+dd 0fdfbe297h

+dd 0c968e490h

+dd 0f860324ch

+dd 030a84617h

+dd 0a0d11577h

+dd 0612af531h

+dd 01b2a8a6ch

+dd 071e321b4h

+dd 0a5207c00h

+dd 076025037h

+dd 03b7a99b9h

+dd 0e2305bcch

+dd 0264f0c9fh

+dd 012e06af6h

+dd 03d6e34aeh

+dd 0f47177d3h

+dd 028bf6471h

+dd 07bca9d72h

+dd 078f5aa2ah

+dd 060b52f10h

+dd 0e5958185h

+dd 0f84f0809h

+dd 0b4b5b6d2h

+dd 0cd62ec86h

+dd 0b8574fa6h

+dd 0abe407f8h

+dd 01c9e6185h

+dd 0a83c5620h

+dd 0e37d0a9dh

+dd 00cc4b0d2h

+dd 0d020ff10h

+dd 012a16d23h

+dd 005a2a5ffh

+dd 0fb1a48c2h

+dd 07248f655h

+dd 012d99f8bh

+dd 05293c458h

+dd 002566852h

+dd 0847c7cfch

+dd 015834792h

+dd 07320a50dh

+dd 0243b74e0h

+dd 0655202fah

+dd 07a43dd77h

+dd 0e11fc5c4h

+dd 0bc95cd0ch

+dd 0cdc82560h

+dd 0309d712dh

+dd 0bdb7adb6h

+dd 082b4b46fh

+dd 0e6275281h

+dd 03e5a1344h

+dd 0694bf197h

+dd 0ccbe7ac2h

+dd 017845e2bh

+dd 0ec2d38b6h

+dd 0b1498bc4h

+dd 06b3de63eh

+dd 04624b4edh

+dd 0905f96d4h

+dd 0bd42f0d5h

+dd 0629c879ah

+dd 0ad7e8abfh

+dd 0afd0f98eh

+dd 09b573f58h

+dd 0d3fc0801h

+dd 04c7e3644h

+dd 02672d4f4h

+dd 06cece8a7h

+dd 06928cb97h

+dd 0faf181cch

+dd 03ee5ed7dh

+dd 0dc756360h

+dd 0fc79dc2dh

+dd 0572ca99ch

+dd 0419f04b9h

+dd 04a0cd586h

+dd 06a86c640h

+dd 0731da7ach

+dd 0e9da10b0h

+dd 095f39024h

+dd 0ee53c4f2h

+dd 0730a6776h

+dd 06547d31fh

+dd 092e78143h

+dd 034a7bcdbh

+dd 0724b18a2h

+dd 066f7f1d8h

+dd 0458e5edch

+dd 0a939d333h

+dd 0bd31e818h

+dd 0ca594ac2h

+dd 0e2689066h

+dd 056384e37h

+dd 0d45185bch

+dd 0542df6c4h

+dd 0e02485aah

+dd 0e05f9598h

+dd 046db3db0h

+dd 0df048d76h

+dd 06a1d35a2h

+dd 06650b85fh

+dd 0f2a2d155h

+dd 0787e9118h

+dd 0e33fe185h

+dd 0b4cb8d93h

+dd 006b854dfh

+dd 0396bc751h

+dd 094465503h

+dd 0d4e149d8h

+dd 0379804e9h

+dd 006897926h

+dd 0ceb87c8ah

+dd 042a4143fh

+dd 08be0c1a4h

+dd 089bb337bh

+dd 081b32b9dh

+dd 01f0cd9a7h

+dd 0e68bbb5ah

+dd 0e15428dch

+dd 018c7b57dh

+dd 0a9a719e8h

+dd 01606c2e4h

+dd 04cd0d3d2h

+dd 056488e91h

+dd 00637a90dh

+dd 0a188e12bh

+dd 02bf5d72eh

+dd 0369fc70eh

+dd 0081deba0h

+dd 01d424350h

+dd 0eb4ec772h

+dd 0a37f2b09h

+dd 03c56bd8eh

+dd 0196bea18h

+dd 0f50551e4h

+dd 0124c96a0h

+dd 0ff05569bh

+dd 0b538be85h

+dd 00398311dh

+dd 046e6c840h

+dd 01df31656h

+dd 00f878050h

+dd 071ff9bb8h

+dd 0ba0db477h

+dd 0a8b30e5ah

+dd 0889aa5aah

+dd 0820ed649h

+dd 01975a904h

+dd 01919ebabh

+dd 044d4943fh

+dd 03daa0d6bh

+dd 00225762fh

+dd 0e46ae327h

+dd 0ff2207c3h

+dd 0a8efdbf5h

+dd 0b43cfa43h

+dd 0be1cdcc8h

+dd 0dd4efa8dh

+dd 0008a78f2h

+dd 00b2c41a1h

+dd 06f980a47h

+dd 095e26790h

+dd 026dd7107h

+dd 0e390456fh

+dd 0254ddd6bh

+dd 0d91d292eh

+dd 0b83808e7h

+dd 09b1523eeh

+dd 02923db23h

+dd 088c546ffh

+dd 0f541faa7h

+dd 0983b17fbh

+dd 0461e4bc7h

+dd 01969ee98h

+dd 015c58011h

+dd 0ef7949fdh

+dd 054923a98h

+dd 09edb4eaeh

+dd 067c0d2cbh

+dd 0a6030869h

+dd 07a6ea2edh

+dd 0077370a0h

+dd 07dbbc39bh

+dd 0e353a924h

+dd 067b698f9h

+dd 0729b7a13h

+dd 07cd59604h

+dd 0d65557f3h

+dd 0a2ddf839h

+dd 0757c0935h

+dd 026ae8f36h

+dd 06fe8148eh

+dd 0786af433h

+dd 078333d88h

+dd 0bebf733fh

+dd 09d91f150h

+dd 006f83277h

+dd 0642295fdh

+dd 0a7a43d77h

+dd 0bdd78c3bh

+dd 0936d4f8ch

+dd 0f07e9f47h

+dd 04c540f7ah

+dd 04521c6eeh

+dd 0f212d0b3h

+dd 0c69b35b5h

+dd 011b42c23h

+dd 098e49989h

+dd 010c3c43eh

+dd 0de961024h

+dd 0f94866ach

+dd 084932845h

+dd 095a05b27h

+dd 046e45bdfh

+dd 0b1e1f580h

+dd 0804ce08eh

+dd 0051b97e9h

+dd 0f8842fbfh

+dd 0080220abh

+dd 0b97d114eh

+dd 06ea2f6e8h

+dd 02a93e880h

+dd 06b74df6ch

+dd 0222fa7beh

+dd 0e2c765f5h

+dd 0fd250a6eh

+dd 01e682970h

+dd 0c5acd643h

+dd 0d8afeb2fh

+dd 08dd8cf3bh

+dd 05c6a640bh

+dd 0e65e4852h

+dd 01d711b33h

+dd 0e848bfcbh

+dd 0666c0a8bh

+dd 0af09bd8ch

+dd 04ae097a1h

+dd 0943cc920h

+dd 02025b8e4h

+dd 02db16125h

+dd 044f12a3fh

+dd 0866d7ee1h

+dd 060c1d2a5h

+dd 007b821abh

+dd 086e47fb9h

+dd 0a020f34bh

+dd 07e334c88h

+dd 0a9afb7e3h

+dd 068261764h

+dd 0ffe09884h

+dd 0b5b93c79h

+dd 02a192d38h

+dd 0600f953ah

+dd 0015a696eh

+dd 0ec6b4941h

+dd 0ba7d3af8h

+dd 08e7d71cah

+dd 04e6bb0e9h

+dd 074073c90h

+dd 0e807d9a7h

+dd 03ac8cda9h

+dd 0efda7c7bh

+dd 069b7bd8eh

+dd 00fdcd087h

+dd 05946073eh

+dd 0eea10393h

+dd 055c82f1dh

+dd 023c0cca0h

+dd 038e9915ch

+dd 0f22ced89h

+dd 0c851c660h

+dd 05b235afeh

+dd 03ce25521h

+dd 0c299305fh

+dd 0c086624eh

+dd 00136cd85h

+dd 078921d73h

+dd 018311e47h

+dd 065212ea6h

+dd 07f9ae942h

+dd 053e836cch

+dd 0a366fdech

+dd 0c55682a8h

+dd 0e8839d45h

+dd 0eed11deeh

+dd 022d567ach

+dd 0c05c29b3h

+dd 0a61bd6abh

+dd 0fa60d129h

+dd 0fd0891b9h

+dd 0b447ff4bh

+dd 0f426f8a5h

+dd 076d8f148h

+dd 0bdc00fdfh

+dd 0f4134967h

+dd 073304557h

+dd 05dd9f427h

+dd 0f8d3cfcch

+dd 07fbd7220h

+dd 0b6677041h

+dd 0d8ed760eh

+dd 058cb25e9h

+dd 09fbda06ah

+dd 0c79009d4h

+dd 063cc1bb2h

+dd 05b31b595h

+dd 0f4beadb0h

+dd 04f478e25h

+dd 0b6b2ec16h

+dd 0de6cf0b9h

+dd 045a1fb37h

+dd 011a13b86h

+dd 0a253dd4ch

+dd 0af832f57h

+dd 0e8d3f6a1h

+dd 0da6e7772h

+dd 051c67fbdh

+dd 03d59669dh

+dd 0c11e1873h

+dd 0bf5955afh

+dd 04805a55ah

+dd 0c9c77a89h

+dd 0c867030fh

+dd 0213c839bh

+dd 04fe96985h

+dd 085a9c929h

+dd 05804c48fh

+dd 0ac040f4ch

+dd 0601ac532h

+dd 0ccea7916h

+dd 0714791cbh

+dd 0c8a268b8h

+dd 0395c38a7h

+dd 0dfd011e4h

+dd 0feb9a00ah

+dd 08d75acb1h

+dd 0205bc99bh

+dd 0407f323dh

+dd 0735a6b87h

+dd 012b751f6h

+dd 0859c8f0fh

+dd 0695b3c25h

+dd 03483e53ah

+dd 0f74dc73fh

+dd 07655357dh

+dd 0c8d025f2h

+dd 006ecde33h

+dd 048402227h

+dd 08dc65179h

+dd 09f022d8ah

+dd 0f6f501a7h

+dd 0de5dd25fh

+dd 0cae881fdh

+dd 09675dc3bh

+dd 0f5bebbedh

+dd 0fe8b4c19h

+dd 035414e06h

+dd 0d03523e8h

+dd 0647be5d8h

+dd 0fcd3febdh

+dd 07b4a8809h

+dd 02534e350h

+dd 0c326a685h

+dd 0962223eah

+dd 0b367b565h

+dd 035db1ce9h

+dd 02be2d46ah

+dd 09d1b1cc7h

+dd 09a8ee37bh

+dd 024a7ca72h

+dd 0981e794ch

+dd 07a7ef5ech

+dd 08d62005bh

+dd 0ce64efceh

+dd 0cbf3868ah

+dd 05c20ef63h

+dd 0483ff3c6h

+dd 0c93148f7h

+dd 015edea6ch

+dd 05753dc82h

+dd 030f52e7eh

+dd 0fb113f83h

+dd 0294e925fh

+dd 0365e57ffh

+dd 0e7cdb7f7h

+dd 0f2177792h

+dd 0d3094660h

+dd 077f587afh

+dd 0535d9380h

+dd 02115522fh

+dd 052e56d15h

+dd 065a3ada9h

+dd 01d4999fdh

+dd 06d92a8f7h

+dd 061c8d189h

+dd 09bdd543fh

+dd 0609e207ch

+dd 0f602eb03h

+dd 0731a0753h

+dd 0052db0a0h

+dd 09929111eh

+dd 0fb29b640h

+dd 0346c12fah

+dd 06bd0e2b3h

+dd 03afaf543h

+dd 08a2be82ah

+dd 0b5c18f15h

+dd 0fc87c33fh

+dd 03a9d9f55h

+dd 072cf4a9eh

+dd 091b3a324h

+dd 09a58aa71h

+dd 00d69d708h

+dd 0e96888d1h

+dd 0195fddb5h

+dd 064a74948h

+dd 0a0c0a7cah

+dd 0ca31a0c1h

+dd 018505568h

+dd 0451666bch

+dd 0cd279da9h

+dd 0f869c15dh

+dd 07232b4cah

+dd 094b772dfh

+dd 0c572d90dh

+dd 0bf349b9dh

+dd 0b35e1d35h

+dd 0e04fa5aah

+dd 04bcb9844h

+dd 07b1f6c18h

+dd 0cce5e903h

+dd 0a3797715h

+dd 08f7b0d5ch

+dd 0236ae138h

+dd 09f9a0bd8h

+dd 0f3be2d80h

+dd 020f61568h

+dd 05ac78927h

+dd 01391f810h

+dd 073b80e7fh

+dd 0009647dbh

+dd 0826d21eah

+dd 010662a4eh

+dd 0ae437ecbh

+dd 0332fea4ch

+dd 081711d8fh

+dd 091cf218dh

+dd 041c4e0aah

+dd 0fb02d007h

+dd 084276a5ch

+dd 0b3722b77h

+dd 0f20f8eaeh

+dd 030037020h

+dd 0f6ce21d9h

+dd 059fd45aah

+dd 0c6ad8f28h

+dd 0611d789ah

+dd 020368fbah

+dd 0ecc3d186h

+dd 031350ebbh

+dd 0ccf45e1bh

+dd 0988d6ec7h

+dd 0255a2f66h

+dd 00d4b88e4h

+dd 0eadbb2a3h

+dd 0c78d1ca3h

+dd 01b4b51cbh

+dd 0008fa6aeh

+dd 0a47ef3e0h

+dd 0fd274ed0h

+dd 03bca4f65h

+dd 0d88b5b47h

+dd 0b63f3107h

+dd 083653318h

+dd 0246db8d2h

+dd 0a43b567ch

+dd 0df8c1d76h

+dd 0bbc2ccafh

+dd 03a2b0cceh

+dd 0ea21ba46h

+dd 051589ad0h

+dd 07bdf3ad6h

+dd 0ef0a5805h

+dd 076c23d9ah

+dd 06c65ea57h

+dd 0c0fb5fa8h

+dd 093b549abh

+dd 07c7d445ah

+dd 0c262fc70h

+dd 095a633c9h

+dd 04ba1071fh

+dd 03fc9c197h

+dd 08f781498h

+dd 0fea301fch

+dd 02ab977a6h

+dd 03119ba74h

+dd 0894a2058h

+dd 03fd761f0h

+dd 008af9276h

+dd 065b9547ah

+dd 0cf372f7ch

+dd 051404124h

+dd 0e458da5ch

+dd 001e3ceabh

+dd 09e72c9b4h

+dd 03010c2ebh

+dd 0900eee2fh

+dd 076e8538ah

+dd 04bd32162h

+dd 0d5fce0c1h

+dd 0b3c994e7h

+dd 09ee3676ch

+dd 0e1984781h

+dd 04856ede0h

+dd 0645fa0deh

+dd 064babd91h

+dd 00d1b947eh

+dd 036057399h

+dd 071120795h

+dd 0297af4b6h

+dd 011983790h

+dd 0b86e8982h

+dd 0e5c17305h

+dd 05cb1266bh

+dd 05f82be03h

+dd 0bf66da08h

+dd 06c028d55h

+dd 0091ed50dh

+dd 04d4866d8h

+dd 0a3b534e3h

+dd 00a66e9eeh

+dd 0e31ede89h

+dd 0cb541412h

+dd 0d7eda672h

+dd 03f0ed448h

+dd 0110d791fh

+dd 004f3ca60h

+dd 042a5e8f1h

+dd 061a51eb7h

+dd 0ed5e10a1h

+dd 0218bc348h

+dd 056a3bb26h

+dd 09ada920bh

+dd 038e6408ah

+dd 0c38d67a5h

+dd 0557353adh

+dd 0de0a9ee9h

+dd 05fb60ecch

+dd 0e55dfadfh

+dd 0e7b1e43bh

+dd 0184286f6h

+dd 065e0b403h

+dd 06677844eh

+dd 0d7cc2446h

+dd 04b6ce48ch

+dd 02dc1b470h

+dd 0753707aeh

+dd 04ff7fa77h

+dd 0f4112a67h

+dd 017f4d5e9h

+dd 021142660h

+dd 047f70714h

+dd 087e690b4h

+dd 0e07c7176h

+dd 042c3eb33h

+dd 0bf30867dh

+dd 0ab65a435h

+dd 0324ede73h

+dd 02c49f191h

+dd 05bad32f6h

+dd 0881df069h

+dd 0d216c31ch

+dd 0ddea5edeh

+dd 093fc4960h

+dd 0c5c49f57h

+dd 038d163d5h

+dd 00017eb2ch

+dd 0ab43505dh

+dd 02e7f91ceh

+dd 07b3076e7h

+dd 07a1eb7b7h

+dd 0029cfe8eh

+dd 0599142aah

+dd 0aefbc86ch

+dd 0100f926dh

+dd 009ab8c09h

+dd 0f3f8c47ah

+dd 02c96e550h

+dd 0da8d9459h

+dd 0f805443fh

+dd 055852fb3h

+dd 0b27dc429h

+dd 072b43a37h

+dd 0961164d0h

+dd 0df7fad05h

+dd 0f710bd4eh

+dd 0c12eb542h

+dd 0c2c82850h

+dd 0d1c003cah

+dd 0c1c8ed14h

+dd 05cbc56c8h

+dd 027e9add7h

+dd 0639e7aafh

+dd 081ed20f1h

+dd 026458482h

+dd 09fd6fa93h

+dd 09699f297h

+dd 0cde6b41dh

+dd 0bb520a4dh

+dd 0ec6f71eah

+dd 0bb2de175h

+dd 0a4cdc36bh

+dd 05563d58dh

+dd 051765881h

+dd 0c86bf116h

+dd 0ad664f17h

+dd 0593442f7h

+dd 01ed69c05h

+dd 0a37ee6b9h

+dd 0fb0dc5e4h

+dd 008fb3de8h

+dd 05bc4b0c5h

+dd 0918c8b14h

+dd 0f781bc2ah

+dd 04e697870h

+dd 0a571ba14h

+dd 05373a2a4h

+dd 0e36ec808h

+dd 0d5024164h

+dd 0ebeafbe8h

+dd 0a64fc67ah

+dd 00635472ch

+dd 087814639h

+dd 03172699ch

+dd 022be96b5h

+dd 05d2d03a9h

+dd 0cec6ce8dh

+dd 0b99c3472h

+dd 0bdd59405h

+dd 03a814b62h

+dd 09dbc0c62h

+dd 03c9b3cbch

+dd 0e70cf7c8h

+dd 0269054a7h

+dd 06444e272h

+dd 03e46a539h

+dd 0db100d37h

+dd 0c7497248h

+dd 09a6d74f4h

+dd 06f0e0d53h

+dd 0dfa5f1deh

+dd 024e007eeh

+dd 062f66129h

+dd 07e915ab5h

+dd 0e4ef25f0h

+dd 005fe020dh

+dd 01e7ddaf6h

+dd 03bfc0be9h

+dd 0bdf2c097h

+dd 06b109e84h

+dd 004e71314h

+dd 06a8d6c71h

+dd 0b5885235h

+dd 02c2d87d0h

+dd 0144b053ch

+dd 094e75089h

+dd 03829321dh

+dd 0b3753609h

+dd 072849db6h

+dd 03b1e44ceh

+dd 088c584a1h

+dd 0d3516193h

+dd 088ebf573h

+dd 03dce5e17h

+dd 0cff2bfdch

+dd 06b07b650h

+dd 022cc8ebch

+dd 0ead2f119h

+dd 01ade7f84h

+dd 03065ec75h

+dd 0124d2b33h

+dd 00dda6c3dh

+dd 01293c9c0h

+dd 0598f57c7h

+dd 08de8f7f8h

+dd 0a76d99d6h

+dd 065c48395h

+dd 03f759540h

+dd 08017c035h

+dd 0bf546521h

+dd 06b4d74a2h

+dd 03bf0f2eeh

+dd 08afa405bh

+dd 09c9a7e02h

+dd 0250b0addh

+dd 0028fbee3h

+dd 0dfba8dddh

+dd 0d78b0b65h

+dd 02f704f93h

+dd 00d141683h

+dd 0552bf0c6h

+dd 00d045bb8h

+dd 03c81859ah

+dd 0fff5e5b6h

+dd 04df26d63h

+dd 0216d95fbh

+dd 05dfa9f22h

+dd 02af103b9h

+dd 0a1105569h

+dd 0ea92ee17h

+dd 081ddef2eh

+dd 0ae86a467h

+dd 0dbe0490fh

+dd 0bbfb93b1h

+dd 031eb10b7h

+dd 0210f6492h

+dd 032c709d8h

+dd 06cbdb26ch

+dd 03b6df21bh

+dd 007c5a461h

+dd 03411cf8ah

+dd 04bc0f691h

+dd 0789f8a1ah

+dd 0063598fdh

+dd 017cddb62h

+dd 089a50175h

+dd 08caf6d5eh

+dd 027856f54h

+dd 0d165557ah

+dd 00f35ad16h

+dd 004dd0e27h

+dd 0fb06d811h

+dd 0ab9f083ch

+dd 060b674d9h

+dd 03aafbd4dh

+dd 0ddadeb77h

+dd 06bc8231ch

+dd 057b8ad29h

+dd 0dc6b8b50h

+dd 0cb8f6962h

+dd 08ab94f35h

+dd 04d4c84c8h

+dd 071b5a5c4h

+dd 03ecf23f3h

+dd 091a552e1h

+dd 079ad9db4h

+dd 07647661eh

+dd 08b8e5f99h

+dd 067b4ae6eh

+dd 005493ae9h

+dd 045077f5dh

+dd 0893e3a21h

+dd 0264dd691h

+dd 0a3fd663ah

+dd 03fda3a92h

+dd 07416cd36h

+dd 06a9b53e2h

+dd 03afbd006h

+dd 085e017ffh

+dd 007240975h

+dd 0e4a48a70h

+dd 0bec217f0h

+dd 04a64f264h

+dd 075eb9671h

+dd 01d5ff818h

+dd 06583af96h

+dd 0dbedda7ah

+dd 05fdc8967h

+dd 0b3a688d6h

+dd 0e4a119c3h

+dd 098f3a34ah

+dd 0c73663a1h

+dd 0793ff96ah

+dd 0457e4cefh

+dd 0e69d1633h

+dd 0e358528bh

+dd 058da431dh

+dd 065216ca7h

+dd 0a452f978h

+dd 0eda2a154h

+dd 0c0426dcch

+dd 0db12f489h

+dd 02a11a34ch

+dd 0fa26f397h

+dd 06abc971eh

+dd 09ea225f6h

+dd 0580a36adh

+dd 0aa076f08h

+dd 0be60760fh

+dd 043aff2dbh

+dd 0589a301ah

+dd 0f2e7fc08h

+dd 04f29de9ah

+dd 063b7ccd1h

+dd 097329f14h

+dd 02c78421ch

+dd 0c381e15fh

+dd 0ca68ff10h

+dd 03479c07ah

+dd 068962469h

+dd 090d9b5e2h

+dd 0dc52dc5ah

+dd 0d61c68dch

+dd 0cfe71023h

+dd 088cbbeb0h

+dd 007fd409ch

+dd 0229a1d35h

+dd 01e285b07h

+dd 03f27ba04h

+dd 09e738688h

+dd 07c99a5b9h

+dd 08d2b977bh

+dd 0a3840fb8h

+dd 099aefa1ah

+dd 01dfea0b8h

+dd 02aca5196h

+dd 058927e94h

+dd 0ae82bfabh

+dd 0222fc00ah

+dd 0d1e525e3h

+dd 00a3198e6h

+dd 05e681be8h

+dd 0c4f0c149h

+dd 0232c5e78h

+dd 0ce9c9c24h

+dd 04a956830h

+dd 06de4bd6ch

+dd 03e200562h

+dd 0cb8793a5h

+dd 0dc338a08h

+dd 086f962a7h

+dd 0bc65cf5ch

+dd 040e25f03h

+dd 092e5f82fh

+dd 0a61ed400h

+dd 0a811f061h

+dd 0c88d5382h

+dd 0d2634d1fh

+dd 082b5e0d4h

+dd 088f7f0abh

+dd 0e18b17e5h

+dd 0e6c274ceh

+dd 0d66a9f6bh

+dd 047d665deh

+dd 0d400e7e3h

+dd 02bfc9b16h

+dd 0b6393b9ch

+dd 097d7d31ch

+dd 0ae94e2c8h

+dd 0f001b0b6h

+dd 07487fee9h

+dd 0ddde32e0h

+dd 0ec13489eh

+dd 08ef74527h

+dd 0fe85199ch

+dd 04b60da2eh

+dd 038b516d8h

+dd 090b8160ch

+dd 0198212bch

+dd 02b12769eh

+dd 0361c1d8fh

+dd 0af5e279ah

+dd 081cb5631h

+dd 0a02d6b0fh

+dd 05e29a283h

+dd 06af6c9a7h

+dd 01ba5f698h

+dd 06bda2a41h

+dd 0ce4c6760h

+dd 0dd26e50ah

+dd 07da68c73h

+dd 0932179f0h

+dd 0c236645bh

+dd 0fc604094h

+dd 0ed9e8905h

+dd 0754ad663h

+dd 055216b0ch

+dd 0af1f35a2h

+dd 01e8f5163h

+dd 027bb2e57h

+dd 05005d142h

+dd 033ded6f5h

+dd 02ebe920dh

+dd 05916c60fh

+dd 01ff01c89h

+dd 0048c7080h

+dd 03bf397b6h

+dd 0fd0b8268h

+dd 02fd9e5c3h

+dd 0439065b6h

+dd 044652ba5h

+dd 02a566cafh

+dd 0d5a751b2h

+dd 055c89014h

+dd 080da767eh

+dd 0aa5e9e0fh

+dd 05e78b3c7h

+dd 01465e8b5h

+dd 070510965h

+dd 019ea25d1h

+dd 02b85a96fh

+dd 06f39514fh

+dd 06a0d9517h

+dd 08fe289e3h

+dd 0562b1470h

+dd 0769abd5ah

+dd 0d74fcf66h

+dd 061588c3eh

+dd 0e44bb6c9h

+dd 089ef9963h

+dd 0ec445c2ch

+dd 068ba9690h

+dd 0458209a1h

+dd 01dc642b0h

+dd 0985c9c00h

+dd 0d9ae4fefh

+dd 04da6a67fh

+dd 07fa48817h

+dd 0ba946565h

+dd 05b707f42h

+dd 01f104ea8h

+dd 01b25b71bh

+dd 04a5a3bf9h

+dd 03189d4a5h

+dd 0b12b8c24h

+dd 0dd01310dh

+dd 0a60e4476h

+dd 0e02a9018h

+dd 00af488c0h

+dd 0ec0b84f4h

+dd 062e9bbc0h

+dd 09ea883d6h

+dd 0dd379c46h

+dd 054f34ea0h

+dd 0030e7b27h

+dd 071ecea5eh

+dd 02e8e14bah

+dd 00e0eb990h

+dd 0752fead9h

+dd 01eb48d05h

+dd 0aad0f2b9h

+dd 043f93749h

+dd 0532b4289h

+dd 01525e206h

+dd 07f640aa7h

+dd 0a84a0561h

+dd 0f9329d98h

+dd 09c2164d4h

+dd 0cf79738fh

+dd 0049a5ca7h

+dd 09785506eh

+dd 0245ee14ah

+dd 0cb625db1h

+dd 06e3e952ch

+dd 0dc9dd0a9h

+dd 0268bb02dh

+dd 0c08ca499h

+dd 0f6d5cccch

+dd 0f2c2304eh

+dd 0ffa05e7ch

+dd 0c50073f8h

+dd 08bd77921h

+dd 09f3b1368h

+dd 08ce25c88h

+dd 078883d61h

+dd 04f49ec71h

+dd 0c1e392adh

+dd 0e3323031h

+dd 07e4bb0a2h

+dd 05059bc26h

+dd 0fc29c8e7h

+dd 09169e0c5h

+dd 0116eb9fdh

+dd 0251c50eeh

+dd 073d18b7ch

+dd 06bb982e5h

+dd 07a91df57h

+dd 03a6b29cfh

+dd 0d972dad6h

+dd 0cd9ca135h

+dd 0e69d8d15h

+dd 013f94a43h

+dd 0f5d827c4h

+dd 0e7019ffch

+dd 0bbf087a0h

+dd 09ae0032bh

+dd 07630701dh

+dd 06ad77a92h

+dd 0cb066b04h

+dd 07f494dcch

+dd 013c0310ah

+dd 002eed4b2h

+dd 0ff95adcbh

+dd 02a83f5a4h

+dd 01d3c0c99h

+dd 088aa9ca4h

+dd 06cd3b8e8h

+dd 014c9a0fbh

+dd 00e0338e3h

+dd 0acfb9da8h

+dd 01f7bae2bh

+dd 0acd60ba8h

+dd 0c8276cbch

+dd 0af3ee01eh

+dd 0b6d63b0dh

+dd 0d0eb3055h

+dd 07d660ddbh

+dd 06edbc7b4h

+dd 0079a7e8ch

+dd 0e98fb8e8h

+dd 08a4c94bah

+dd 02fdb53d5h

+dd 0047d7e88h

+dd 074676fc8h

+dd 0343e85a1h

+dd 0d569e1b5h

+dd 03fd6c4d0h

+dd 094ba5c15h

+dd 0d4e76622h

+dd 00c037430h

+dd 0839e1458h

+dd 091274db5h

+dd 04245d2d6h

+dd 011ae93e0h

+dd 00d6e21e3h

+dd 014d984c2h

+dd 0b3f3cf56h

+dd 0a462cd40h

+dd 09118664eh

+dd 00252afb9h

+dd 00f9d0c45h

+dd 0ff709a42h

+dd 04d725db7h

+dd 00ef4c659h

+dd 066c9c1adh

+dd 0bf9981a0h

+dd 004758723h

+dd 012c23db3h

+dd 0a9632f6bh

+dd 082273da1h

+dd 049801675h

+dd 0a4b8f3a7h

+dd 0409e0e1dh

+dd 0f4d2acf8h

+dd 0e0f42ecah

+dd 08cbed265h

+dd 056f0d2b8h

+dd 078562ee9h

+dd 0eff8df72h

+dd 0786c3f95h

+dd 0b34f1ed4h

+dd 07468b74fh

+dd 07f6a0006h

+dd 05cbbc2e0h

+dd 0ddc288e8h

+dd 0074b1548h

+dd 058897df2h

+dd 001b1e388h

+dd 0a3ba7220h

+dd 04ee90d19h

+dd 09cbe74dch

+dd 0827b52fch

+dd 00a3fd39bh

+dd 0564c1e72h

+dd 0768f57ach

+dd 0164bc2a6h

+dd 0a649350ch

+dd 07778030fh

+dd 095e59b18h

+dd 0ed2057e3h

+dd 01f27a560h

+dd 0e7e9177ch

+dd 0f51f3e55h

+dd 00600c818h

+dd 031ab06d3h

+dd 058219293h

+dd 0f67edf48h

+dd 0e7de3cbch

+dd 0937b7e2eh

+dd 0ac51546fh

+dd 06eee24a2h

+dd 06a5d9bdeh

+dd 0d5a1e968h

+dd 05912d524h

+dd 098244e82h

+dd 06622b107h

+dd 0d961b1dah

+dd 04bb1932dh

+dd 01ec47a08h

+dd 0ac8460f6h

+dd 000d0586eh

+dd 028a737dfh

+dd 0d8dfc8a7h

+dd 0484d7a95h

+dd 0fa9a650dh

+dd 0c13c6e94h

+dd 03c400bdbh

+dd 07a10143ch

+dd 0f42b450ch

+dd 047d1b577h

+dd 0f51f6004h

+dd 0e3f630c8h

+dd 021ed2e17h

+dd 014974898h

+dd 0cca8fd63h

+dd 0a718da40h

+dd 05c0b0068h

+dd 05602e294h

+dd 0bd2b1625h

+dd 05b4adabeh

+dd 016250c17h

+dd 08f0563eah

+dd 021729da1h

+dd 0a8da61edh

+dd 0521b0357h

+dd 0804ab638h

+dd 0444f9b71h

+dd 0bfb4d986h

+dd 0a2b4f343h

+dd 068c19578h

+dd 02c23c613h

+dd 0d513a680h

+dd 0cfd3aa01h

+dd 001772257h

+dd 06d9aa086h

+dd 056961dbch

+dd 0234b4bafh

+dd 0032ce314h

+dd 03a05e204h

+dd 0d43d7e81h

+dd 026165df0h

+dd 0694f0070h

+dd 078ce60bch

+dd 01249223dh

+dd 0d0a02f96h

+dd 0ef18b417h

+dd 0b398d8f9h

+dd 08424f984h

+dd 0dc854e41h

+dd 0571e4124h

+dd 0ac96e6cch

+dd 01964a93dh

+dd 052e4da8ah

+dd 0d8a563b0h

+dd 0a58c18dfh

+dd 02bbff6c9h

+dd 0bc87dba1h

+dd 0a4614029h

+dd 08b54ef92h

+dd 0ff984560h

+dd 0c202c26dh

+dd 0829be188h

+dd 0778ae5bfh

+dd 02e433319h

+dd 0bc425735h

+dd 0c87dbfb9h

+dd 0dadda5f5h

+dd 00a21ab16h

+dd 0cda7ad16h

+dd 07fc3abfdh

+dd 0f141b8d5h

+dd 0e6826271h

+dd 0edd06d64h

+dd 05edfc0f9h

+dd 065943b98h

+dd 007a53a85h

+dd 0aba856e7h

+dd 04f28cfa4h

+dd 019b13580h

+dd 0ae76325ch

+dd 046542af0h

+dd 0b3f5c8fdh

+dd 0a53ea4e2h

+dd 0f0142f47h

+dd 0fe74a2dah

+dd 01a95c796h

+dd 0faf0f7f3h

+dd 0f9635a46h

+dd 0c9d8a3d5h

+dd 0eac39155h

+dd 04b145554h

+dd 0cc82a617h

+dd 0ca31217ch

+dd 0b76e61c7h

+dd 0e62bf36bh

+dd 0a0604c65h

+dd 0886f25abh

+dd 0be284e01h

+dd 050967aa8h

+dd 063b93202h

+dd 0b80475f8h

+dd 0d5f58782h

+dd 05ea2ff89h

+dd 09ef82e29h

+dd 09e9cbae2h

+dd 0ed1092eeh

+dd 017dc4693h

+dd 02761f2bbh

+dd 0b62e863fh

+dd 0f75bf4deh

+dd 0f8e1906dh

+dd 0fc9c2257h

+dd 01cab95d0h

+dd 0cd77d9cdh

+dd 007d6f341h

+dd 0a58e0b8eh

+dd 0fbace66bh

+dd 0aa38c9a6h

+dd 06fc4ae5eh

+dd 0335e617bh

+dd 098c12983h

+dd 00d58f517h

+dd 0277b67d7h

+dd 0baa0cd3ch

+dd 05c49e72ch

+dd 09a1365e6h

+dd 00aea4036h

+dd 0cb5ddc9fh

+dd 03b4b4c10h

+dd 01de32ebfh

+dd 0c54dbda3h

+dd 03edbba6ch

+dd 04d7d5374h

+dd 066a6b5cfh

+dd 0297aed7eh

+dd 034243309h

+dd 018719001h

+dd 0deb8affeh

+dd 087ca9325h

+dd 073617157h

+dd 0edde145ch

+dd 02876a346h

+dd 02a6ce8f5h

+dd 09393e7c1h

+dd 0ecfe6926h

+dd 0ef147893h

+dd 0b1396bdch

+dd 00307fe73h

+dd 070b8f022h

+dd 098aabb22h

+dd 0b27d0d43h

+dd 0bd5bc93ah

+dd 0da1be74dh

+dd 00cc1fd28h

+dd 09a9f28d2h

+dd 04e72ea4bh

+dd 027e417d5h

+dd 0c6df4c10h

+dd 092b59d54h

+dd 0f7cb8c39h

+dd 0c0a6eca8h

+dd 02eeb4df3h

+dd 082c99eeah

+dd 0c525e774h

+dd 0bdc53518h

+dd 055ba4d59h

+dd 0a2de9d16h

+dd 022a21412h

+dd 0646eaab1h

+dd 0bf0e7554h

+dd 030d9cdf7h

+dd 0e333b927h

+dd 0cbb7b8d2h

+dd 076f27974h

+dd 04105371eh

+dd 05a2f3c88h

+dd 022d5b5dfh

+dd 0d1fc450ch

+dd 0556bda35h

+dd 0667b676bh

+dd 09364e51dh

+dd 0d62c53b8h

+dd 0186d948ah

+dd 013bafbc4h

+dd 04f53a406h

+dd 07a21ed41h

+dd 01ca415e8h

+dd 005f229abh

+dd 0ec76286ch

+dd 0a2c18921h

+dd 0d3c3a0deh

+dd 044d73544h

+dd 0576e8b86h

+dd 0c06d46abh

+dd 0b9dded90h

+dd 015aaca42h

+dd 02d2894fah

+dd 0a1d342f6h

+dd 0fface671h

+dd 0c9908637h

+dd 06ebf5345h

+dd 0a484b0e2h

+dd 05e165abeh

+dd 0625aac89h

+dd 0d26ec4c0h

+dd 01f66d696h

+dd 07221c646h

+dd 032059030h

+dd 0a06019fbh

+dd 0fb9803fah

+dd 0f6b3d13bh

+dd 0c00779bah

+dd 0c5e97f0eh

+dd 030b2f792h

+dd 0c9a6f23bh

+dd 02d004e9bh

+dd 0f19bd61dh

+dd 0410fe6c7h

+dd 0c1a9443ch

+dd 095c019f1h

+dd 03d033a44h

+dd 0a5cb100dh

+dd 0017a47f5h

+dd 00acad805h

+dd 0136e2dc8h

+dd 09e7948fdh

+dd 05bb96ca1h

+dd 009508760h

+dd 0f88c059eh

+dd 0292fffc3h

+dd 0e2509484h

+dd 08fa78f37h

+dd 08295b68fh

+dd 0d055890bh

+dd 03636527eh

+dd 092ee0595h

+dd 0c291fb9dh

+dd 0765b41dbh

+dd 01e0b5d04h

+dd 0eb5874fdh

+dd 0f2eed2a6h

+dd 07171c2a8h

+dd 023dcd7f6h

+dd 0cc2eb7d2h

+dd 0c9bf44f7h

+dd 0dc343b69h

+dd 0dfc4023bh

+dd 093ee27e1h

+dd 019ce8e1bh

+dd 0e7f32d84h

+dd 0310c3545h

+dd 089fb107eh

+dd 007786e1ch

+dd 0369547d0h

+dd 099c4055ah

+dd 0815a3d21h

+dd 0ea09a5afh

+dd 0d75c9f75h

+dd 014df723eh

+dd 07b904d4ch

+dd 0d252d1b1h

+dd 05da633f1h

+dd 053920c7ah

+dd 08bcef58ah

+dd 00dbe0a8ah

+dd 08a6c3cd4h

+dd 07d63838dh

+dd 07802879dh

+dd 0370a88e0h

+dd 0972c138eh

+dd 037fc6e91h

+dd 02b84c7e4h

+dd 019487257h

+dd 0c9207133h

+dd 0b7253f6ch

+dd 0f62888c7h

+dd 04cfffd55h

+dd 04363416eh

+dd 03e5f1500h

+dd 066e2227ah

+dd 06527b377h

+dd 05bfb635ah

+dd 0ede15cf6h

+dd 0e7a266f8h

+dd 07c397aceh

+dd 06a6a0f7dh

+dd 03fcca028h

+dd 0a1cdf309h

+dd 00dcaa6b0h

+dd 05e7b0ea7h

+dd 0bb4a9f93h

+dd 0c4e6660fh

+dd 013fd947ch

+dd 0d00faca2h

+dd 055c648feh

+dd 050b22bach

+dd 022d76e2fh

+dd 01ba10a22h

+dd 0fb0b0323h

+dd 0eff3db5eh

+dd 0023d4e86h

+dd 0f91d8193h

+dd 0243466feh

+dd 07b4d9fedh

+dd 05a0982e8h

+dd 04be30194h

+dd 0e82e0b2eh

+dd 0110d3170h

+dd 07aafb52eh

+dd 06e29be10h

+dd 0adf636a9h

+dd 08e1d8569h

+dd 0670aaf03h

+dd 0fc303b14h

+dd 09922171fh

+dd 0857ddd93h

+dd 0b292cc7eh

+dd 0d80a5480h

+dd 003af99c7h

+dd 0d18bf133h

+dd 09a025c56h

+dd 07ebd96a6h

+dd 0cfc3d976h

+dd 0a7f85749h

+dd 00842ce96h

+dd 06b4ceb96h

+dd 054ad9a6bh

+dd 08ff4eae3h

+dd 068a21f4bh

+dd 018c92718h

+dd 0aef9e163h

+dd 0aa44362ch

+dd 06afc834ch

+dd 0c318d844h

+dd 0f4a1b6eeh

+dd 093858d74h

+dd 008d83515h

+dd 02c53e65ah

+dd 093094c8ch

+dd 06ac66bb9h

+dd 0c4253c7dh

+dd 039a63f4dh

+dd 0e8a6f1b0h

+dd 06901c8fbh

+dd 05a1fa1c0h

+dd 0be0dc99ah

+dd 0600fb6a4h

+dd 06ee8f97eh

+dd 02fa38aa0h

+dd 0dd3533a4h

+dd 0daf643bah

+dd 057fedcd7h

+dd 0d3da6730h

+dd 038a20df4h

+dd 008af1509h

+dd 02a66f38ch

+dd 0b5c331afh

+dd 02bdf2449h

+dd 0694edea9h

+dd 07001878eh

+dd 0e5fb535bh

+dd 067aaf720h

+dd 05d643a5eh

+dd 02673c476h

+dd 05100e9f6h

+dd 0cbbd9fe5h

+dd 079787e17h

+dd 02b507a1ch

+dd 01fefe993h

+dd 08bc805b4h

+dd 054e3af88h

+dd 037185cefh

+dd 0cd68fccfh

+dd 012da8533h

+dd 015181a9dh

+dd 00d9a3ec1h

+dd 0214c4bd5h

+dd 04f665527h

+dd 0d07162e6h

+dd 0e8cb5f2ah

+dd 083648854h

+dd 0fc5bd72bh

+dd 0bf560579h

+dd 0def183e7h

+dd 069911780h

+dd 0d7aebc22h

+dd 00c2ff7feh

+dd 0eb0a61e7h

+dd 09ad38904h

+dd 081505edah

+dd 06bd369f4h

+dd 0a9ad1191h

+dd 0ecff71bah

+dd 04bb19c88h

+dd 0d1555c02h

+dd 0b11def27h

+dd 085e69920h

+dd 0b880f292h

+dd 0545b3f3eh

+dd 01956d738h

+dd 01da5064fh

+dd 0c38ec3deh

+dd 024f32c93h

+dd 07ffd5e3ah

+dd 08cc399b7h

+dd 0b962db24h

+dd 048faa727h

+dd 05ef30846h

+dd 002c2dc60h

+dd 015d77b36h

+dd 0c21e5d92h

+dd 0e3fabbe9h

+dd 0171d9754h

+dd 0a755c2eeh

+dd 0c8e839e2h

+dd 0d5e62ecch

+dd 045f598d9h

+dd 098ab7ff1h

+dd 0a80353e1h

+dd 0391b85c9h

+dd 097aa7dbbh

+dd 0ca2ccd3fh

+dd 0918115abh

+dd 0f8fe4492h

+dd 0fe34fe1bh

+dd 00ae2c033h

+dd 03f6e6122h

+dd 0716e3bd3h

+dd 0128247d4h

+dd 03e6c8747h

+dd 08a613b44h

+dd 0cff34c90h

+dd 0facd7621h

+dd 0ecd773f7h

+dd 094ea79fah

+dd 03a5fbd79h

+dd 0ca8193aeh

+dd 088394a0bh

+dd 030f2d651h

+dd 0724260beh

+dd 04d267e89h

+dd 0192b8cfch

+dd 062cc66e9h

+dd 01758102fh

+dd 03f0513a2h

+dd 041441ef2h

+dd 0d662f4afh

+dd 0ab178fbdh

+dd 0e08c10c4h

+dd 08ed0dec1h

+dd 01f6a4392h

+dd 002a95d30h

+dd 08777f650h

+dd 08601395ch

+dd 0b4f6d8c8h

+dd 03128da12h

+dd 0f77eb4d0h

+dd 0386bbe75h

+dd 0c7464c9eh

+dd 0a87ebee6h

+dd 0971b5ff2h

+dd 072f2c0c7h

+dd 0832209b7h

+dd 007d09bd1h

+dd 037dc405dh

+dd 0a94c94efh

+dd 065b1a7fdh

+dd 0c603c88ah

+dd 0c913be8bh

+dd 0b7e41b9eh

+dd 03fd882b2h

+dd 0e67e709dh

+dd 01fdae0c2h

+dd 098a9ce65h

+dd 049147909h

+dd 08504a780h

+dd 0d98c4170h

+dd 0fdb04626h

+dd 06bb655d1h

+dd 0aecd5c38h

+dd 040bc5226h

+dd 0db45e89dh

+dd 0c1901197h

+dd 062da0138h

+dd 0487f35dbh

+dd 0ac68d1c9h

+dd 0247c53e4h

+dd 0f1ff8aa3h

+dd 033e11332h

+dd 0f9bf7312h

+dd 004fc5d44h

+dd 00c7763b2h

+dd 07619f813h

+dd 02da97f53h

+dd 05e2c5036h

+dd 083c08c2fh

+dd 01f6bb78ch

+dd 0f0a6a8efh

+dd 0e431927eh

+dd 071f0f7b8h

+dd 08a00a464h

+dd 090e93101h

+dd 096ecd688h

+dd 0b8fe2151h

+dd 0a97c5a44h

+dd 05ca5ad07h

+dd 01ffb9fb8h

+dd 0e60e295bh

+dd 022b9cac3h

+dd 030d37ffah

+dd 0928b2bach

+dd 00e4f8262h

+dd 00596c6eeh

+dd 0309fd1ebh

+dd 0b5480c57h

+dd 0976fb136h

+dd 06873cfddh

+dd 0996e86c3h

+dd 06bc188d5h

+dd 0af5c00d4h

+dd 03d5c7e8ah

+dd 009ca60efh

+dd 0bd2325c5h

+dd 0afe2bf47h

+dd 07fcd46c3h

+dd 0b87e9f7fh

+dd 0742522fch

+dd 02308c2fah

+dd 0e7a23b58h

+dd 0c0c655c4h

+dd 0950db52ah

+dd 06fc8588bh

+dd 0682caa9bh

+dd 07ca15d13h

+dd 0879f5e84h

+dd 00f509989h

+dd 013c0d4c6h

+dd 03f51be01h

+dd 0839093a1h

+dd 07c58b555h

+dd 008d1f806h

+dd 071a8d87dh

+dd 04cd68181h

+dd 0387469e8h

+dd 0fc99db15h

+dd 00a7f4295h

+dd 029e1180bh

+dd 0cff73008h

+dd 0317e8a3fh

+dd 0c94b4e51h

+dd 0f35d116ah

+dd 08f2c1534h

+dd 026c9b8e3h

+dd 0914d808bh

+dd 076b7f07dh

+dd 07ea0de24h

+dd 0f6a8181ah

+dd 064b29333h

+dd 03633cbedh

+dd 084be5b3bh

+dd 0eb6535e5h

+dd 09293b294h

+dd 09868cd31h

+dd 02987a96dh

+dd 0979cacb0h

+dd 0f363bdf1h

+dd 05cd46416h

+dd 09a27f782h

+dd 097e70e37h

+dd 09ba78046h

+dd 0cba22717h

+dd 092afe61ch

+dd 021f0c997h

+dd 03de86221h

+dd 0fe7c2966h

+dd 069db6a63h

+dd 0c54bca2ah

+dd 04e8f0154h

+dd 03ed8c33dh

+dd 0661079f1h

+dd 09aad5421h

+dd 095532191h

+dd 0f3284386h

+dd 0182c548dh

+dd 02d3f418fh

+dd 00d0a8077h

+dd 063e2547bh

+dd 09c7c2134h

+dd 0260d6374h

+dd 0bb004f67h

+dd 0eae9b6d2h

+dd 006a79b8ch

+dd 04da2fc4dh

+dd 028e97b06h

+dd 029251f1ch

+dd 0d3ec9f60h

+dd 0d9e3c0bdh

+dd 028d6355bh

+dd 048eb9d44h

+dd 0e3542dc2h

+dd 0b3fbd311h

+dd 0f76e7665h

+dd 0a6c78ebbh

+dd 0e22d41c6h

+dd 08746e693h

+dd 0dc6a5e6ch

+dd 0649bff78h

+dd 0a231d79ch

+dd 0f5afad07h

+dd 08f418fa3h

+dd 0b00ca666h

+dd 0aaa647b8h

+dd 016375204h

+dd 032199c06h

+dd 008a12a9ah

+dd 075270aa6h

+dd 058bd311bh

+dd 0827ea4a4h

+dd 0fad4199ah

+dd 0666a29bch

+dd 03ddd4355h

+dd 0e9d415beh

+dd 0417b706bh

+dd 0fa227dbdh

+dd 0327f2ec2h

+dd 0544fea98h

+dd 0e6e44cb1h

+dd 0ef41bb05h

+dd 0b649ffb0h

+dd 077ce126ch

+dd 0e7b51b53h

+dd 0b7d70f86h

+dd 0680028e0h

+dd 0478b7a2dh

+dd 03cd633c4h

+dd 0b394d26bh

+dd 0e1264979h

+dd 0f8f86440h

+dd 0fee55d51h

+dd 0ed74ad81h

+dd 0c62c9ad5h

+dd 014f2cc9eh

+dd 0f137644dh

+dd 02498d7bch

+dd 08d0c4c1bh

+dd 087191465h

+dd 08cf7dba6h

+dd 045d67562h

+dd 012de15f7h

+dd 013b51837h

+dd 0390a82e1h

+dd 02b31c0c3h

+dd 03d275c56h

+dd 012aeee4fh

+dd 0ca02a5c3h

+dd 08ca25852h

+dd 0471931e2h

+dd 05d894a19h

+dd 0fa9b2fceh

+dd 02a4be09ch

+dd 02b40e806h

+dd 01506cca6h

+dd 0b11adef4h

+dd 04bdb4ecbh

+dd 0d7e372aah

+dd 0e3f6f9dch

+dd 00e5f325fh

+dd 03866af8ch

+dd 07a5f6098h

+dd 0fbbc99f8h

+dd 0058f80fch

+dd 09a9e74a6h

+dd 0f5de21feh

+dd 0238a3c4fh

+dd 03ecb36d7h

+dd 0bab5b397h

+dd 0133f3f00h

+dd 08da80ca9h

+dd 08e8dabe9h

+dd 097a0e05fh

+dd 0b45a9c75h

+dd 0194bda1dh

+dd 0567640c1h

+dd 01d5ec9f9h

+dd 00e39700bh

+dd 01dd75c96h

+dd 0f9f70b4dh

+dd 02c1bb088h

+dd 0eddc8d82h

+dd 09523ff87h

+dd 0703a64dbh

+dd 09528f52eh

+dd 0e48e3d02h

+dd 09ea7cc27h

+dd 0dbbe3809h

+dd 0c8a4c3a4h

+dd 0a095e500h

+dd 05b46b3e3h

+dd 06eac3a6ch

+dd 0581779c3h

+dd 04f97120bh

+dd 00f56a1e5h

+dd 0b1d9260bh

+dd 09d0c1e7dh

+dd 0bda29c56h

+dd 049d22a75h

+dd 0d3ad377bh

+dd 07b1eccd8h

+dd 022b6dc34h

+dd 02f881562h

+dd 084f52449h

+dd 01bf2192ah

+dd 02582796ch

+dd 0f249f2bah

+dd 073a9387fh

+dd 0d24b302bh

+dd 05453ff68h

+dd 0f7c81343h

+dd 08eeac4d7h

+dd 0a3fc0130h

+dd 05124655eh

+dd 00c0e8ca0h

+dd 0f9ad3147h

+dd 01ecbd3fbh

+dd 091765e20h

+dd 05ddd7e2eh

+dd 0312ec350h

+dd 07f873a9ah

+dd 0e1376c3fh

+dd 04042850dh

+dd 0b56c8c76h

+dd 05521ebe3h

+dd 0d722cf98h

+dd 0e95fc0b8h

+dd 055c05040h

+dd 050d6cfedh

+dd 00084ddb0h

+dd 08dd00605h

+dd 0265e05f0h

+dd 099481c58h

+dd 09df7160ah

+dd 0b739ceb1h

+dd 08bd44197h

+dd 0c18eaa98h

+dd 098654894h

+dd 0b9e3a010h

+dd 0801f4c0dh

+dd 08dbf6b95h

+dd 0a6a83b6fh

+dd 00f02fbfeh

+dd 014cd6be6h

+dd 025bc47beh

+dd 0136f0933h

+dd 01b6c9739h

+dd 099b487f1h

+dd 09b997fd2h

+dd 033603c9fh

+dd 0b46fa08ah

+dd 0529fc307h

+dd 0f3d18176h

+dd 0e1712328h

+dd 0190e4f2eh

+dd 05da5fefdh

+dd 08a5162adh

+dd 0b0bd2b2eh

+dd 081cc9f3fh

+dd 097f7c1f0h

+dd 070a64928h

+dd 03ec89a89h

+dd 03c782fbch

+dd 02724845ah

+dd 07431718fh

+dd 01770f5d2h

+dd 0b5c4ecd3h

+dd 0427352eah

+dd 095200cf3h

+dd 05ff0dfb1h

+dd 0ba83b990h

+dd 071e99c64h

+dd 0408787cfh

+dd 02625b498h

+dd 0a3411659h

+dd 01b1086bdh

+dd 025ce0ea4h

+dd 05f9f9873h

+dd 0049d85f0h

+dd 0fa4df63bh

+dd 027b05506h

+dd 059ed0c39h

+dd 06b4d1052h

+dd 07137bc54h

+dd 0ab806e20h

+dd 0875e2032h

+dd 0494b648ah

+dd 079905361h

+dd 017dded6ah

+dd 068ef5447h

+dd 006b44d65h

+dd 01bf92024h

+dd 0df67ee9bh

+dd 0303d4c2eh

+dd 0e0614a9ah

+dd 0c5f3d508h

+dd 064842949h

+dd 0bc135e3bh

+dd 0f243bd6fh

+dd 088f84c01h

+dd 0cdd43c8ah

+dd 0117f7cafh

+dd 042873addh

+dd 017c3ae54h

+dd 0aa1963fbh

+dd 00d79743eh

+dd 0caf04127h

+dd 00c779230h

+dd 0fff4ff0ch

+dd 01ed7020bh

+dd 0cb41ec63h

+dd 0221df561h

+dd 00638c70bh

+dd 01a056959h

+dd 015ad97a5h

+dd 0bbdfa2eah

+dd 061b5a9f5h

+dd 069f96aech

+dd 0267f4421h

+dd 0a2e93e6eh

+dd 03cac223dh

+dd 0ce14cec6h

+dd 036203b9ch

+dd 06746575eh

+dd 0755d5d0dh

+dd 064b507b4h

+dd 00d6036b6h

+dd 04e7e3fa1h

+dd 033c78be3h

+dd 0a42c974dh

+dd 0113ae269h

+dd 00e4e1ec6h

+dd 0dd598281h

+dd 059279badh

+dd 080d15ef1h

+dd 009ff00b8h

+dd 093ebd021h

+dd 0e541faafh

+dd 077918571h

+dd 0da5c59beh

+dd 03bed894dh

+dd 0beee837ah

+dd 04eb979ech

+dd 056a6d5e7h

+dd 0ca568032h

+dd 016089409h

+dd 07e537446h

+dd 0639f6e2eh

+dd 0e1d9f9e8h

+dd 09c80fa14h

+dd 0914ec9b1h

+dd 017833a19h

+dd 0dc77861eh

+dd 0f6f0631fh

+dd 06ef9c95dh

+dd 0b96a75d1h

+dd 0d2f07c79h

+dd 0ae890443h

+dd 0d09e28c8h

+dd 0c262e569h

+dd 078146132h

+dd 0737fa2f6h

+dd 0e85cb53ah

+dd 0af2e00e6h

+dd 0fef620c5h

+dd 0d73d9429h

+dd 0c408427ch

+dd 0e5b8b022h

+dd 0cbddc21ah

+dd 0df32392dh

+dd 022b5772bh

+dd 03234bd01h

+dd 0db71f461h

+dd 0e93d18bbh

+dd 011bf747ch

+dd 0ca74932bh

+dd 05ff7691ch

+dd 0011c3d0dh

+dd 0e8322470h

+dd 04538ec1dh

+dd 05c29b81dh

+dd 048d98dfdh

+dd 08b5cfba0h

+dd 0a41d60e6h

+dd 0c11b5c0fh

+dd 0ba60b3fbh

+dd 0a7c0347ah

+dd 01623c917h

+dd 029a824bah

+dd 0fd0a8f02h

+dd 09e80de25h

+dd 0e6157190h

+dd 0a8082dcbh

+dd 06007db9fh

+dd 0a09d069dh

+dd 061c9594bh

+dd 036596c35h

+dd 0db229f3bh

+dd 0867662ech

+dd 03f8722e3h

+dd 0dfc7e994h

+dd 064f56292h

+dd 0906bb72dh

+dd 0c053429eh

+dd 047b4bcb0h

+dd 09dabfd41h

+dd 05580d0e8h

+dd 0d34cf123h

+dd 0e1c49df0h

+dd 0f1852671h

+dd 015a955b5h

+dd 0f0aaabcbh

+dd 0dceafb7dh

+dd 015abafd0h

+dd 07f9a654ch

+dd 0eeab04fbh

+dd 07c7eae23h

+dd 06c0f11dfh

+dd 0326ecdbeh

+dd 0dc530e9dh

+dd 043bde353h

+dd 01123b918h

+dd 0911b6c58h

+dd 0d9e12cceh

+dd 0fcec93fbh

+dd 0506c72ceh

+dd 0af39cc46h

+dd 081b60d5fh

+dd 01090580bh

+dd 0a96e0a45h

+dd 07f2abfa7h

+dd 0f25d8deah

+dd 0d9be5a43h

+dd 03ef95b0ah

+dd 05469662ah

+dd 0aa1ed87bh

+dd 0e688a361h

+dd 0476419d9h

+dd 042167cf3h

+dd 005d1ca20h

+dd 045df2bf1h

+dd 08c026c24h

+dd 09330cfa6h

+dd 06fcab21ch

+dd 0b4ef2e19h

+dd 080148b41h

+dd 09e51cdbfh

+dd 0307b8c0ah

+dd 077483cfch

+dd 00341c986h

+dd 0a791bafdh

+dd 034c865b5h

+dd 0ed8c510bh

+dd 0de8719c5h

+dd 0a1e54527h

+dd 0a16dbb2eh

+dd 0fd5f2663h

+dd 03d20d27bh

+dd 0707e8b4eh

+dd 0243cefdfh

+dd 006e642d8h

+dd 0c24ab327h

+dd 02e179a9ah

+dd 038700742h

+dd 0fc0f0322h

+dd 0366292d7h

+dd 08f4a1ad8h

+dd 0c9e9deabh

+dd 0933c791ah

+dd 0cdedef41h

+dd 051309672h

+dd 05a54d2a8h

+dd 0a0258401h

+dd 0380f7d20h

+dd 05505292fh

+dd 0c57bf5e2h

+dd 0deab9611h

+dd 062581924h

+dd 0ef5b09d1h

+dd 0563e7340h

+dd 0859d9ea7h

+dd 030ad5044h

+dd 067615454h

+dd 0d26266ddh

+dd 0f6d5767ch

+dd 012ee145bh

+dd 0b25b28c6h

+dd 08a2f212eh

+dd 056950d56h

+dd 0a06cddceh

+dd 045898a82h

+dd 066a256b7h

+dd 02e10cd11h

+dd 07d1fe6b4h

+dd 09b34622dh

+dd 041e82e60h

+dd 0f84a10cbh

+dd 0c71fba85h

+dd 0383dfcadh

+dd 05c45ce65h

+dd 013bfd200h

+dd 06c99150fh

+dd 06602add1h

+dd 0524d906ch

+dd 0ad9ecfe8h

+dd 0a266a90bh

+dd 0d29a004bh

+dd 00d79163eh

+dd 0d1b51558h

+dd 0ff0fc4edh

+dd 064438aefh

+dd 0fb9d568ch

+dd 05b72ecd9h

+dd 0af47e9d8h

+dd 019d200f9h

+dd 0f98cd647h

+dd 07e0cb281h

+dd 0dcd36d23h

+dd 0c057db8ah

+dd 0efbe918dh

+dd 0560e4375h

+dd 0501646b9h

+dd 0802283c8h

+dd 0d9ee2a8eh

+dd 064532467h

+dd 07cae19a7h

+dd 0b80dccd9h

+dd 05ba93b17h

+dd 03a51432ch

+dd 0fb80333bh

+dd 0cb21df7eh

+dd 094ad7a18h

+dd 0011b3abah

+dd 07289c1fch

+dd 083b12602h

+dd 0bc96539dh

+dd 09c91fde4h

+dd 0d7531fe4h

+dd 08c2fcb81h

+dd 0a57b178bh

+dd 0bf0402d5h

+dd 0edee73efh

+dd 0bc8fca96h

+dd 0aef9d9e4h

+dd 0fdf6c1f6h

+dd 07a23070bh

+dd 0a42c80e3h

+dd 001dedcf2h

+dd 0fe00964fh

+dd 0e8fc9664h

+dd 0bd84d301h

+dd 05a8f883eh

+dd 094eb7e86h

+dd 01c0ccef0h

+dd 0775bf3f0h

+dd 06352af1ah

+dd 00f224ca1h

+dd 0050d54cah

+dd 08ebff0f1h

+dd 0909eccd2h

+dd 09936e162h

+dd 013516881h

+dd 094f8c43dh

+dd 0357013e0h

+dd 086f1cfa5h

+dd 07f8e1c74h

+dd 08109b3d6h

+dd 00b794164h

+dd 059c4d845h

+dd 0c5d13cd9h

+dd 0ec2deb5ch

+dd 0c385053eh

+dd 0da93fb94h

+dd 015cc5213h

+dd 0228201a9h

+dd 0a28ea2e1h

+dd 0e6cf2894h

+dd 0e4c44f80h

+dd 0ad2d3b41h

+dd 0cb05fa30h

+dd 0c9a3843dh

+dd 01b942061h

+dd 0a4d894f4h

+dd 0b6ecb6fdh

+dd 0ddc09ab0h

+dd 03bc39e5bh

+dd 07a2836bbh

+dd 0c55b6dcdh

+dd 0bd9a8216h

+dd 0ab1fc87ah

+dd 069d6239eh

+dd 017cbd3b9h

+dd 022177873h

+dd 04ed5ddc6h

+dd 02b8f52dfh

+dd 05f1ac43ch

+dd 08a5d3405h

+dd 091a4ff50h

+dd 0b3df8a4dh

+dd 08f5093a2h

+dd 0c5a287d4h

+dd 0e541ebbbh

+dd 0956429f9h

+dd 0129b8529h

+dd 08c8a0cf9h

+dd 0c0b62151h

+dd 0638e4abdh

+dd 02189f5f6h

+dd 0f57f83a7h

+dd 03fa94844h

+dd 050304b38h

+dd 02195b3a7h

+dd 0cbfea062h

+dd 0a389df6ah

+dd 0ac3daafbh

+dd 069c7a165h

+dd 0408953f2h

+dd 001a018ceh

+dd 0f2d256ebh

+dd 033694d78h

+dd 0697414e8h

+dd 04e55dbadh

+dd 0b797c53bh

+dd 0a2f7492bh

+dd 0bc8b34f3h

+dd 01c8546c8h

+dd 06711ff20h

+dd 02ce322d3h

+dd 0aa57e661h

+dd 08b751b03h

+dd 0305bbcfch

+dd 0789fafbch

+dd 0661c2242h

+dd 0e026b0d6h

+dd 05b1250e8h

+dd 06f5425e6h

+dd 01c16ba1ah

+dd 007e4e4c5h

+dd 0ab803774h

+dd 0090406a3h

+dd 0097f7317h

+dd 0e6be3ef3h

+dd 08011ae4dh

+dd 0731b49c5h

+dd 0feb87ed4h

+dd 0b87ee674h

+dd 02fafcb97h

+dd 0ff80e744h

+dd 08df666a8h

+dd 0b7db0cc2h

+dd 0fabf53d2h

+dd 07169264ch

+dd 070a4db21h

+dd 090039867h

+dd 08d62517ah

+dd 08cdc1482h

+dd 05f72225fh

+dd 04592ecedh

+dd 0c40b6285h

+dd 02bd98c2bh

+dd 0e1179121h

+dd 08619afa6h

+dd 0440b0ad0h

+dd 05db14172h

+dd 0b46d8330h

+dd 0a740dfbbh

+dd 05d095164h

+dd 0628f4941h

+dd 0da27c007h

+dd 0a68ffae8h

+dd 0094002f1h

+dd 013175c66h

+dd 0365b016eh

+dd 0f88931d9h

+dd 07e5d46b7h

+dd 0ec4a75dfh

+dd 0c92576e9h

+dd 0821bac04h

+dd 03019626dh

+dd 06472e35ah

+dd 0b0ba2197h

+dd 09360bdfbh

+dd 00635833dh

+dd 03f7be076h

+dd 0cbff45b8h

+dd 052cd58cbh

+dd 001db3a7fh

+dd 09beb0abah

+dd 0d584693eh

+dd 047e056d5h

+dd 051ffc613h

+dd 03477d24ch

+dd 034933e3bh

+dd 0a557640dh

+dd 0cd4b51ebh

+dd 00f698783h

+dd 000d21894h

+dd 04bb92951h

+dd 08cfad691h

+dd 0d49dbebdh

+dd 0d6b9f2a8h

+dd 03d0d83b5h

+dd 0f803126bh

+dd 098a03556h

+dd 036f603f2h

+dd 0189c021ch

+dd 0f331dadbh

+dd 0f94cc437h

+dd 0abce2c46h

+dd 0835efba5h

+dd 09a172d35h

+dd 07dfb794ch

+dd 0c7dece5dh

+dd 017d1f9fbh

+dd 09fff7123h

+dd 08cd96546h

+dd 0ad2ff79eh

+dd 02ac02863h

+dd 080632570h

+dd 0d6ce6143h

+dd 02775da6bh

+dd 08d71ee85h

+dd 01555e583h

+dd 0158f7f96h

+dd 0b168cbfch

+dd 067d39775h

+dd 01d639ae2h

+dd 0c8b83c99h

+dd 085bea1a2h

+dd 0c92f71c0h

+dd 01e3934e4h

+dd 09eaf7634h

+dd 07b4a160dh

+dd 04d0e7166h

+dd 06703831bh

+dd 02ce8a9d6h

+dd 09208629bh

+dd 01b3e1069h

+dd 0eb4ed18ah

+dd 05c764b51h

+dd 0757ef91ch

+dd 0d12cc86bh

+dd 022016b77h

+dd 09794c5f6h

+dd 035da4564h

+dd 0faacbce8h

+dd 04268a1bdh

+dd 03f70159ch

+dd 0c3e3392ch

+dd 01719d4bch

+dd 0a0472dbfh

+dd 022802d3ah

+dd 0c052680bh

+dd 0ffb9e13eh

+dd 03be952f5h

+dd 07d2d46bch

+dd 0b6fdee5dh

+dd 01488a815h

+dd 01e396d43h

+dd 0ff47e751h

+dd 038f844adh

+dd 03a386bdbh

+dd 02499dfd7h

+dd 09e14fb1bh

+dd 0c8191490h

+dd 067f460a3h

+dd 08a084be4h

+dd 040ec4655h

+dd 03acf506fh

+dd 068994025h

+dd 0dcd0ec60h

+dd 012d703d2h

+dd 044c48620h

+dd 0e1afc1c4h

+dd 0d6b5d5b7h

+dd 0ae602697h

+dd 03e466757h

+dd 0b542be7eh

+dd 0e906549bh

+dd 0fe3c9303h

+dd 0cf4c579eh

+dd 0fe17c6bbh

+dd 043baab29h

+dd 04fdd8ca4h

+dd 072dfce7ah

+dd 08b4363a3h

+dd 026ccee64h

+dd 00fe3b380h

+dd 05298a8a4h

+dd 0e5ec0fe0h

+dd 00873ce55h

+dd 023e15153h

+dd 08229aaf8h

+dd 0586e3c05h

+dd 06d11ec4eh

+dd 0a3349db6h

+dd 053941c05h

+dd 0178033cah

+dd 032d3192dh

+dd 095073064h

+dd 0dbbd0c78h

+dd 05d8c7622h

+dd 03f1e245dh

+dd 0ab6d4357h

+dd 01c3b917ch

+dd 0e951cca7h

+dd 04b4ef853h

+dd 0c818cfb2h

+dd 0f36cfcbfh

+dd 0a569bb78h

+dd 06b6fdef3h

+dd 0416e7787h

+dd 0253e5447h

+dd 063bfbf0fh

+dd 01b3f2588h

+dd 0ebeb8dbah

+dd 06e1c9aech

+dd 001947193h

+dd 09cc084a3h

+dd 082b7408bh

+dd 0ca30c9bfh

+dd 070cd6609h

+dd 01d3d85f2h

+dd 0456df2f1h

+dd 0f66eeaa2h

+dd 0941a166eh

+dd 0d7301ccdh

+dd 042aef241h

+dd 0f1a58866h

+dd 0fdaa8589h

+dd 0bddffd7fh

+dd 0dc1f2d4ah

+dd 09660a011h

+dd 0d1dbaf8dh

+dd 0e3ff093ch

+dd 0d9796fcbh

+dd 0c99c647ah

+dd 05a2bb3e1h

+dd 0bd89548dh

+dd 0e0d5f887h

+dd 0ecad1dech

+dd 0b6beeb70h

+dd 054cc2957h

+dd 0c0621f58h

+dd 0df3cbd16h

+dd 00ee50209h

+dd 08482de7eh

+dd 0c83d3a2fh

+dd 0bf74e4b7h

+dd 0d0b5dc55h

+dd 0801310ffh

+dd 073738ddfh

+dd 0e4692418h

+dd 011258510h

+dd 0f12e593fh

+dd 02355ed5ch

+dd 092065e5eh

+dd 07843bfech

+dd 0e95df167h

+dd 0c113c6d3h

+dd 094602c8fh

+dd 061728d91h

+dd 02798dee0h

+dd 037d14694h

+dd 0f95c4881h

+dd 05fd6604dh

+dd 032b51cb1h

+dd 073cd8934h

+dd 09e45edaah

+dd 0feaf6ae3h

+dd 04a552369h

+dd 091f3ab04h

+dd 08bf44e8ah

+dd 0206d51d9h

+dd 09112aa10h

+dd 0d10f87ffh

+dd 059b126eah

+dd 013364460h

+dd 05fdfc007h

+dd 0b72b0e36h

+dd 0bf6a2210h

+dd 0dc5f4456h

+dd 02e63f275h

+dd 01ccfae48h

+dd 03e89bd38h

+dd 0daeec0c1h

+dd 0f21dc2b1h

+dd 0e9160dd4h

+dd 093f7e613h

+dd 02b044545h

+dd 052c4a293h

+dd 00a289408h

+dd 04d96bc66h

+dd 09967dbc4h

+dd 0ee655466h

+dd 0ce16c7adh

+dd 01e329b4dh

+dd 014d32b4bh

+dd 06ebab097h

+dd 0b37beac0h

+dd 05eea5d95h

+dd 07c7ada93h

+dd 056f54280h

+dd 01d9eb8a3h

+dd 09062775bh

+dd 0326a8132h

+dd 019a86dcdh

+dd 02c77148bh

+dd 0701b609dh

+dd 030296d23h

+dd 0ac59bd15h

+dd 04f616c8fh

+dd 0787a2ea8h

+dd 0ba7235b3h

+dd 0ad0ff61eh

+dd 004993162h

+dd 011246f98h

+dd 0f7773f50h

+dd 00a99aa1fh

+dd 0b682b9a0h

+dd 033a31837h

+dd 08441368ch

+dd 0b8f8398ah

+dd 081fe6acfh

+dd 0b104d6c1h

+dd 0a7f29339h

+dd 0c13d5fe4h

+dd 0e56b7129h

+dd 06d16f705h

+dd 0fa30fc41h

+dd 021e944b3h

+dd 0c9eeba51h

+dd 09b94ec4ah

+dd 08e1ba5c9h

+dd 05543b5fch

+dd 071f96e37h

+dd 0d81f99efh

+dd 0378f1261h

+dd 0b3e6d35ch

+dd 08e869c97h

+dd 07b576bbah

+dd 00db18cbfh

+dd 0757a7295h

+dd 01428e42bh

+dd 0f9db6f2eh

+dd 043be8e14h

+dd 08b73bc5ah

+dd 0d11219fdh

+dd 0919445d9h

+dd 0ba3a822ah

+dd 00a052138h

+dd 0c12ca058h

+dd 04f4f71aah

+dd 0c095d2b7h

+dd 05f3f9b22h

+dd 0d83ed694h

+dd 036e0c63bh

+dd 022dd418eh

+dd 016a765f3h

+dd 04c57c643h

+dd 0dd28f938h

+dd 0cd4eca42h

+dd 00df910d1h

+dd 0a5f19826h

+dd 0a82d2030h

+dd 0b68e91f4h

+dd 0b071c891h

+dd 093a2aa73h

+dd 0013833cbh

+dd 0e8372b2ah

+dd 07750e9ceh

+dd 03fa2f9c8h

+dd 0cff7d436h

+dd 0f3ea97b1h

+dd 08e883865h

+dd 0fba3f974h

+dd 0511d6143h

+dd 087bd9a1bh

+dd 0566dee39h

+dd 07e72ac21h

+dd 0dd85036dh

+dd 003d474b0h

+dd 0c4ee7abch

+dd 0d9c1b7a0h

+dd 0a8b194cfh

+dd 00496daddh

+dd 0a70b5e13h

+dd 0aded186ch

+dd 095bdf1c4h

+dd 0d931b3adh

+dd 0ad50f8f9h

+dd 05be1a6bch

+dd 0a1c166d7h

+dd 0e396c8fch

+dd 0d8210182h

+dd 0426af5bch

+dd 023f2069dh

+dd 083a5e9fch

+dd 0275af42eh

+dd 0b75823cch

+dd 08612740dh

+dd 09019d782h

+dd 0ce35fdeah

+dd 0bc9d5c57h

+dd 043ffb3bch

+dd 0d07e33b1h

+dd 0c8c4cde0h

+dd 0a44df6c7h

+dd 0b27fb226h

+dd 043741aa8h

+dd 0db0be088h

+dd 04289b768h

+dd 0f666455bh

+dd 012bd99bah

+dd 042885944h

+dd 0c593d3f4h

+dd 00214ed5fh

+dd 0cf069654h

+dd 0ebc6dde9h

+dd 0ed8c67e3h

+dd 0b281921dh

+dd 082a1f504h

+dd 07fb1ff40h

+dd 08a22b6a2h

+dd 0ed5ce77ah

+dd 0b7ff9d16h

+dd 060c2db11h

+dd 090c8073dh

+dd 0bbe96d95h

+dd 074232384h

+dd 07759b271h

+dd 02c87d7dah

+dd 0ca44d897h

+dd 0918fd552h

+dd 0d7fdedb4h

+dd 0e7cca890h

+dd 0bc7460d8h

+dd 08436f580h

+dd 0a9366c2ah

+dd 092d3b118h

+dd 0691ee8c9h

+dd 01fbf0a8ch

+dd 04a4ddc55h

+dd 0ff1d0f3ah

+dd 0c68bffdeh

+dd 037aaaff7h

+dd 0f456529fh

+dd 0a18c8573h

+dd 0d73cd429h

+dd 05583f329h

+dd 0c43f2d99h

+dd 05b82c6f9h

+dd 0578cf2cah

+dd 0f095761dh

+dd 080de4778h

+dd 04d9106cdh

+dd 09dd46fc4h

+dd 05e1e8f8eh

+dd 0265bb37bh

+dd 0ff5a05efh

+dd 0b4d87907h

+dd 00543b5e3h

+dd 0ba09a5f9h

+dd 08417f2f2h

+dd 0f58956f6h

+dd 07f445ff1h

+dd 0a514788fh

+dd 0238c1506h

+dd 060413c86h

+dd 06173270ch

+dd 0bc41e674h

+dd 013412a31h

+dd 00cc2d2cah

+dd 0909343b0h

+dd 07a632bdbh

+dd 03d81b782h

+dd 025b151cdh

+dd 0107eba87h

+dd 037a29056h

+dd 085d6f666h

+dd 08490be2ah

+dd 0c4675b21h

+dd 0ca8fdac0h

+dd 0ccde06f8h

+dd 08143533dh

+dd 029dacfbeh

+dd 00b7f662ch

+dd 049cf9b5ah

+dd 05d1fc01ch

+dd 08e16c77ch

+dd 0ac1ae7d2h

+dd 0a17555cdh

+dd 00ca2cd09h

+dd 0e0e5176ch

+dd 0a14bc7d5h

+dd 0448e3ffah

+dd 010b79b32h

+dd 087e709abh

+dd 07017b9f6h

+dd 08c406194h

+dd 09ec64bc1h

+dd 01296a006h

+dd 0302f0724h

+dd 0a166d129h

+dd 0d5911007h

+dd 04c875b24h

+dd 0fbbd08bah

+dd 0365cac0dh

+dd 03c130923h

+dd 000a6d193h

+dd 0529966dbh

+dd 0546daeaah

+dd 0e287c8c5h

+dd 04f87e2c3h

+dd 08df34ac8h

+dd 0de8ab5c2h

+dd 0e2131c7bh

+dd 036f3d4b4h

+dd 04dcb500bh

+dd 078597fd2h

+dd 02744a59ch

+dd 012d2666dh

+dd 0a97632ceh

+dd 02423e694h

+dd 07344c5c3h

+dd 0fbd59e79h

+dd 001ce6900h

+dd 0666d37fdh

+dd 08e19d644h

+dd 0c10961cah

+dd 00fbb2666h

+dd 0ec950d88h

+dd 0f6a65b5ah

+dd 0bec05f49h

+dd 0ecd27568h

+dd 005c44746h

+dd 09137849eh

+dd 0b0b2a070h

+dd 0eb770fa8h

+dd 096f216bbh

+dd 0616a71f4h

+dd 0b6443d15h

+dd 04e81617fh

+dd 0c5286b0ah

+dd 0d5b40690h

+dd 0236b455ah

+dd 0da4bedf9h

+dd 0550ebf45h

+dd 07f2bab16h

+dd 0bb0b81c5h

+dd 0ee35d867h

+dd 031093e21h

+dd 0abbf0038h

+dd 0a3b6a13ah

+dd 06f5eb527h

+dd 0229eae4ch

+dd 03b34248bh

+dd 0dd685d35h

+dd 0ac68e112h

+dd 09c925d8ch

+dd 06bcf128dh

+dd 0bfc6e044h

+dd 0ba0bebb0h

+dd 02b8b650ah

+dd 0f81e5f10h

+dd 087e4aa0fh

+dd 0a40f32b5h

+dd 0dd8db428h

+dd 07fe8fd95h

+dd 0fb5e407dh

+dd 066eaf2c6h

+dd 00dff9347h

+dd 0f26dd1b0h

+dd 0d984648dh

+dd 02dc8f1a8h

+dd 00a23388eh

+dd 0afbbe371h

+dd 084500184h

+dd 06a44720eh

+dd 0446d7223h

+dd 0c9c8243bh

+dd 0aa704e41h

+dd 0fd95ee50h

+dd 0d40b21e1h

+dd 03e695e77h

+dd 0900086cah

+dd 07fc79d85h

+dd 0a44ba502h

+dd 0aa250c64h

+dd 062e27b7dh

+dd 0b306b8a4h

+dd 098c28c2bh

+dd 0eea569c6h

+dd 0f1796207h

+dd 02e2e79f3h

+dd 014233208h

+dd 057dfeb9ch

+dd 0b419b27ch

+dd 06e10c6beh

+dd 02f07336eh

+dd 0e859eb65h

+dd 0922328a1h

+dd 079cbd6b1h

+dd 0dd3e909fh

+dd 071d3fdfbh

+dd 0f4098ed8h

+dd 02059ecd0h

+dd 0c2865ce8h

+dd 08c7e413eh

+dd 0611dee26h

+dd 07ef5582ch

+dd 07df6edaah

+dd 0e50680a6h

+dd 03ff59175h

+dd 06bfb2900h

+dd 0a67421ebh

+dd 055a29affh

+dd 0a484b928h

+dd 001386a3bh

+dd 0e6a48e23h

+dd 0ee0f585eh

+dd 0c05db5b9h

+dd 04833ed1ah

+dd 0536212e6h

+dd 0dfc9238fh

+dd 07b2454dbh

+dd 00dfda766h

+dd 040baa66dh

+dd 048fe868bh

+dd 00d8f39e4h

+dd 09ed0904ah

+dd 024815c3ah

+dd 03850aea5h

+dd 04b4ce547h

+dd 0329777b1h

+dd 0e036172eh

+dd 0abfb873ch

+dd 0164c7b2fh

+dd 045438cdeh

+dd 0ea672dc2h

+dd 001773f61h

+dd 0bf2e66dbh

+dd 099fc0f55h

+dd 0abdf16f5h

+dd 07d67f502h

+dd 07643bdadh

+dd 06d6e2d24h

+dd 04e0f3a0dh

+dd 050c33a31h

+dd 05e9237a5h

+dd 022f0ac42h

+dd 0c66bf1f0h

+dd 05df4795eh

+dd 0abb2dde7h

+dd 0bf55bb49h

+dd 08bc2557fh

+dd 06fa885e8h

+dd 018b7d851h

+dd 02b98a358h

+dd 02d7566ddh

+dd 094cd5d51h

+dd 05f184e0ch

+dd 0f85a07d0h

+dd 0b44aa23ch

+dd 038173ee6h

+dd 074ec43bfh

+dd 0fafd7552h

+dd 00e0f0d8bh

+dd 0b3b2e3a8h

+dd 074ffe1d6h

+dd 0d541f1d7h

+dd 0e52958a8h

+dd 0eab3ceb9h

+dd 0c205830bh

+dd 082dd90a7h

+dd 0d0616c4ah

+dd 06999a3e0h

+dd 0c97686d9h

+dd 059271865h

+dd 01491d9f4h

+dd 0ea907437h

+dd 03956d767h

+dd 08d729cfch

+dd 0f7588dc1h

+dd 0ab7b7d15h

+dd 04d4ea9c2h

+dd 0be0b002ch

+dd 0f665b86fh

+dd 0bdf8724bh

+dd 0e38c55ddh

+dd 027d42835h

+dd 0f5bf6fe3h

+dd 025d761bch

+dd 03e869b84h

+dd 0d8d1e5bch

+dd 0220baa78h

+dd 01803999fh

+dd 0f64e8546h

+dd 056257b9eh

+dd 0be12c8abh

+dd 0988fd8a2h

+dd 04e98b5e4h

+dd 0d3c10bc9h

+dd 0ef446fc5h

+dd 0469f0c40h

+dd 0591ed066h

+dd 098c087dch

+dd 0822332cbh

+dd 02eb37557h

+dd 01afe56deh

+dd 01ecb0b32h

+dd 06aaf1205h

+dd 00f2a77a4h

+dd 05a64e123h

+dd 04edad51fh

+dd 04ea65b76h

+dd 0d04389b0h

+dd 046285d41h

+dd 09a5d2085h

+dd 08a0bcf33h

+dd 056b2eab2h

+dd 07cadfa99h

+dd 0b970a7ebh

+dd 066e3738eh

+dd 06b8a9a5fh

+dd 0e9f24554h

+dd 056fd31f1h

+dd 09278a536h

+dd 025a15196h

+dd 02ddba52dh

+dd 05ffedba4h

+dd 09527d96dh

+dd 061ef38cdh

+dd 0775512f0h

+dd 09e238788h

+dd 0306b4b25h

+dd 09cd8ec76h

+dd 06b128f67h

+dd 03a30de8ch

+dd 06684c0abh

+dd 0e9a67abch

+dd 0d1164498h

+dd 006d95c0eh

+dd 08325a17ch

+dd 025b88709h

+dd 0b614323eh

+dd 04e500825h

+dd 04ecf926bh

+dd 0f8423753h

+dd 03186a9e7h

+dd 0ee7b0b6ch

+dd 0bc3a3c32h

+dd 09cdfc50ch

+dd 031df305ah

+dd 00ab35479h

+dd 0e8cc14aah

+dd 01f7387a0h

+dd 06c7e8d32h

+dd 0f903c688h

+dd 07001b6c1h

+dd 03da50941h

+dd 0f0915affh

+dd 077aa34bfh

+dd 0942914deh

+dd 06d9d3848h

+dd 0f583fec6h

+dd 05338bed7h

+dd 05e041ec8h

+dd 080066bd6h

+dd 0221d817eh

+dd 06df5ab04h

+dd 01391701bh

+dd 0adf133aeh

+dd 0d319cb9ah

+dd 0dbbb5ebeh

+dd 007d5018bh

+dd 013db11bch

+dd 006aa2b6dh

+dd 0092ad852h

+dd 02e8106c2h

+dd 0cb7bebb5h

+dd 073b3dbbch

+dd 070976b35h

+dd 02f5bae53h

+dd 032f27dcfh

+dd 0661b9c1dh

+dd 0d538b5c3h

+dd 0d3c846b6h

+dd 0aa907ed8h

+dd 05fbdbda9h

+dd 0a17d9227h

+dd 08cead5b3h

+dd 08c451e53h

+dd 0b036844dh

+dd 0fae001ebh

+dd 06801c202h

+dd 0f4a652ddh

+dd 088569fdbh

+dd 07837770bh

+dd 0297fc06ch

+dd 0340eb8a8h

+dd 0addb95cfh

+dd 0c7fc6e96h

+dd 03bd2b597h

+dd 05c40619ch

+dd 01c7406abh

+dd 0112e54b7h

+dd 047c2b97eh

+dd 02b88c46dh

+dd 0823111f7h

+dd 0a9d9a3a8h

+dd 0cc1c5702h

+dd 0b100a7f2h

+dd 0de830029h

+dd 0c632b76fh

+dd 09a024e93h

+dd 0bdf4ec24h

+dd 01e021589h

+dd 0c0b9a66eh

+dd 0d0d76c74h

+dd 0f96cb565h

+dd 0be09d798h

+dd 0ed055062h

+dd 0b4529a5fh

+dd 0d1cb8ba1h

+dd 07337d6fdh

+dd 0649280c2h

+dd 0346c7e02h

+dd 0fe9805abh

+dd 047d7b7eah

+dd 016cca6b0h

+dd 0dead6e76h

+dd 06638e122h

+dd 0cd8883cbh

+dd 0a6644551h

+dd 0142fa9deh

+dd 031097eb0h

+dd 047c4e2fdh

+dd 0bf08887ah

+dd 0c53fd0cch

+dd 08fdf1fa6h

+dd 014fc5384h

+dd 0e6ba0a82h

+dd 08b2996b1h

+dd 0b2f9b58dh

+dd 0fac49e51h

+dd 031a0cdb6h

+dd 063dfe835h

+dd 0d5592f56h

+dd 07d643776h

+dd 0318680c6h

+dd 0c481ab74h

+dd 04e1df3c3h

+dd 0a4ef7e83h

+dd 0e0d739f9h

+dd 0dca9d477h

+dd 03d3f6939h

+dd 0c9980f87h

+dd 08a63f2e3h

+dd 03dcb341ah

+dd 05c8843e3h

+dd 03c47e24fh

+dd 0ca2ec3a8h

+dd 03d099922h

+dd 04e68eafdh

+dd 01245f332h

+dd 01425ee88h

+dd 003b71b5dh

+dd 016bb0693h

+dd 0de87f633h

+dd 000262012h

+dd 02d5a2c6ah

+dd 02c46535bh

+dd 0658c107eh

+dd 09980fb5dh

+dd 0679b91adh

+dd 009f5852bh

+dd 02070eef9h

+dd 0ec3791c9h

+dd 0eb5d1573h

+dd 0a15bc4f6h

+dd 077d59127h

+dd 0859cb048h

+dd 06dd34f3ah

+dd 0901133cdh

+dd 05c31c8eeh

+dd 0de1ef87dh

+dd 08d800182h

+dd 0856286c9h

+dd 0495f7aa8h

+dd 05cb520e8h

+dd 0f9cf13bbh

+dd 0b0217e9fh

+dd 0398c1370h

+dd 0fe9b5093h

+dd 04a7fe82dh

+dd 098ccf9a1h

+dd 0546b9047h

+dd 0c70b6fcbh

+dd 0b1cacae1h

+dd 0e13e6de7h

+dd 06410764ah

+dd 0d2be8f3eh

+dd 0ef486dc7h

+dd 049a90328h

+dd 0c3e69b5dh

+dd 09e18cd7dh

+dd 09582ed01h

+dd 052821e29h

+dd 0ee5872f5h

+dd 032a87ecbh

+dd 0a9cc4099h

+dd 0448eaee4h

+dd 0451a876bh

+dd 07a86d4fch

+dd 094d71e5bh

+dd 057241272h

+dd 0eabe385eh

+dd 0f58d22b3h

+dd 074007c59h

+dd 0105f4662h

+dd 07e968852h

+dd 074b84c3ah

+dd 054c1f62ch

+dd 06debe0f5h

+dd 051385ab7h

+dd 0dc454411h

+dd 0f56f94e7h

+dd 065153707h

+dd 0209c3489h

+dd 016d8dacbh

+dd 0dbc2ef42h

+dd 0972604bdh

+dd 0532d00d9h

+dd 04ccf5b82h

+dd 0ca994eech

+dd 04a944ef6h

+dd 0a7ce7aefh

+dd 092d9ec28h

+dd 044345582h

+dd 00b5c912eh

+dd 076c8d28ch

+dd 000ea9997h

+dd 0aeae686ch

+dd 0b2b993e7h

+dd 01efe4e9ah

+dd 023409a17h

+dd 0cfae3844h

+dd 01942e007h

+dd 009c83618h

+dd 0fddf6f5fh

+dd 087d21653h

+dd 0cc4bef56h

+dd 05be645f1h

+dd 008aaa688h

+dd 09353b3cah

+dd 07ae1031bh

+dd 063f03e2ah

+dd 09736367ch

+dd 02ae947fbh

+dd 00e347816h

+dd 0f809e4b3h

+dd 09e4b9899h

+dd 05d5026ebh

+dd 0725f325ch

+dd 00eb98d6ch

+dd 01dca8b57h

+dd 09a045d5ch

+dd 0cbdb1e98h

+dd 0ac7ac887h

+dd 0850a5b08h

+dd 04597b0fdh

+dd 0efd42007h

+dd 056a70f6ah

+dd 092301270h

+dd 054df14e0h

+dd 07b7321b3h

+dd 072ed1587h

+dd 0be2be3d4h

+dd 09987db27h

+dd 02ca3dcc1h

+dd 0f845b9f6h

+dd 0f2ad22dfh

+dd 0e13cd456h

+dd 06e83ad6ch

+dd 01ce35fe7h

+dd 09af838a7h

+dd 0e7ad69c6h

+dd 09303da18h

+dd 061447ca1h

+dd 0fdf9f171h

+dd 098848d07h

+dd 0c7cba8c7h

+dd 0f1e388b2h

+dd 0718d1a8dh

+dd 02636b180h

+dd 0a2bba8e5h

+dd 06c34262ah

+dd 0816cc684h

+dd 0d18f8aadh

+dd 0b82f3160h

+dd 061a8f8a7h

+dd 04283e1edh

+dd 0a6f7fe65h

+dd 04d779cafh

+dd 03b1a8893h

+dd 03505dc88h

+dd 0548d85b9h

+dd 0e2348532h

+dd 077032f4ah

+dd 0ba816613h

+dd 060bf0b6bh

+dd 0f6cc5f68h

+dd 0827164eah

+dd 06337703ch

+dd 0b698c143h

+dd 0b5f0075eh

+dd 0cf595872h

+dd 0fd8a1b66h

+dd 0831e5ba7h

+dd 065f2a4b0h

+dd 043762bd5h

+dd 03c6923f7h

+dd 0a7150968h

+dd 0f938fab4h

+dd 0ae890c0dh

+dd 0f32a93b4h

+dd 0adcb81b7h

+dd 0b3893dc1h

+dd 09a80af3eh

+dd 0c5220cfeh

+dd 06b148d7fh

+dd 0118babc6h

+dd 076ec1633h

+dd 0843a10f0h

+dd 07f34b877h

+dd 07ebceb0ah

+dd 0a172c5e2h

+dd 0f0dad6e1h

+dd 08a0a7941h

+dd 05c0a2f9ch

+dd 03323026bh

+dd 0d5c42735h

+dd 0a1866067h

+dd 088378bc8h

+dd 04b9e5800h

+dd 04f3b343ch

+dd 003443b1eh

+dd 0527b118ah

+dd 074ee2626h

+dd 0349af22fh

+dd 0e6e67243h

+dd 0f1b4ae23h

+dd 0ab28ed59h

+dd 078f92de4h

+dd 074ba6d4eh

+dd 0178bdef1h

+dd 0ef11bdeeh

+dd 0051b0a53h

+dd 090423e33h

+dd 0336880c2h

+dd 050333c70h

+dd 0166c54e3h

+dd 0a45a9a9dh

+dd 0441438a1h

+dd 00012d91dh

+dd 0b531524bh

+dd 0d5e2206ah

+dd 0a2c5fbb3h

+dd 05184c2bfh

+dd 0ccea1ba9h

+dd 06e605db5h

+dd 0aebc8c88h

+dd 05195a33fh

+dd 008ef33dch

+dd 015e6c1d3h

+dd 0ae2fa789h

+dd 05a79bb0bh

+dd 0aec84728h

+dd 01cfb05afh

+dd 057faf323h

+dd 0a8dfb5c6h

+dd 062dc44d4h

+dd 0bd203f1ch

+dd 03e8e4eb6h

+dd 0a6f585f2h

+dd 0ae893fedh

+dd 0b3d83e33h

+dd 086d770d8h

+dd 0de4de487h

+dd 018c41cc6h

+dd 0be0bef56h

+dd 0b50b0062h

+dd 009a1ffafh

+dd 017fa53c3h

+dd 0cac8f43eh

+dd 08424c806h

+dd 0315295dch

+dd 0cb8de010h

+dd 071eb9fcbh

+dd 0bbd2d6b2h

+dd 0421274ach

+dd 0a05ece4bh

+dd 07d049a06h

+dd 0759c47c5h

+dd 0fa3c36f7h

+dd 0d8ee20beh

+dd 0f9342b01h

+dd 03c9e5773h

+dd 08f34697fh

+dd 0a256eef1h

+dd 08c04909eh

+dd 03ed5a2cah

+dd 0832e8d3bh

+dd 04d20ce82h

+dd 0dfcdf469h

+dd 00da75adeh

+dd 063c620a4h

+dd 0f6b217a4h

+dd 0c35d3362h

+dd 05cbc58bfh

+dd 058d23c31h

+dd 0ed4872b9h

+dd 00147446ch

+dd 0abb1e386h

+dd 01f09758eh

+dd 0d80ab00ch

+dd 0f4d6a7c6h

+dd 02483aadch

+dd 0a8bd655fh

+dd 0db0bd1d5h

+dd 05fb6a619h

+dd 0b0e6d828h

+dd 0902e3bf6h

+dd 0c9f6a593h

+dd 02c9c2179h

+dd 0eb01c935h

+dd 0ec103690h

+dd 04790234fh

+dd 043673c48h

+dd 072bb3c7eh

+dd 03e191e5dh

+dd 0028ca392h

+dd 08964617fh

+dd 0bcea5393h

+dd 01a3fab06h

+dd 0785542dch

+dd 032e46880h

+dd 04dbb6203h

+dd 0ea471b85h

+dd 08daef4d9h

+dd 0d2b22f02h

+dd 0a3fd3e5ch

+dd 0e78112b6h

+dd 0066cd687h

+dd 074f1b931h

+dd 02110770bh

+dd 092d87ab2h

+dd 0d530cb5fh

+dd 03bdaef7bh

+dd 0802bcca0h

+dd 0cb5e7ec6h

+dd 07605f2f6h

+dd 0fa387445h

+dd 064bcdabah

+dd 09f8efc2dh

+dd 0ef3d5591h

+dd 08ac65ae8h

+dd 0945adb67h

+dd 0d3b3ab20h

+dd 09da4231fh

+dd 0bcf72275h

+dd 0f7f29fbfh

+dd 06c8fe7c9h

+dd 0c39db06dh

+dd 0a6f924a3h

+dd 06437a0a8h

+dd 0cde56361h

+dd 03b2b4c14h

+dd 02a8e34f8h

+dd 06ce50809h

+dd 05a6d4550h

+dd 078b205f3h

+dd 0d5076889h

+dd 0699d90cah

+dd 0362f54b2h

+dd 04c5372ech

+dd 02d72921fh

+dd 0a236b9f6h

+dd 0ffef3c7ah

+dd 0d05b36a0h

+dd 010635d59h

+dd 0bef34e0fh

+dd 00979c6d8h

+dd 0ebf0f620h

+dd 00402e2aah

+dd 018bc8547h

+dd 0a333856ah

+dd 01c0539c4h

+dd 0ad34c903h

+dd 0bb29b872h

+dd 0d3a2e1e2h

+dd 02facfc7fh

+dd 032e77ac5h

+dd 0752932ddh

+dd 0ba362cd8h

+dd 07ff58ebdh

+dd 086a5bfaeh

+dd 0a5a3fe68h

+dd 0cb10b5dah

+dd 0c86046e1h

+dd 02c76b33dh

+dd 0a968f0e9h

+dd 0ff7cdecdh

+dd 098600a64h

+dd 015044d71h

+dd 039400d1ch

+dd 01a4599c4h

+dd 00ff13287h

+dd 060adfc24h

+dd 0993ea755h

+dd 00f644333h

+dd 0a776ae12h

+dd 02f79cc76h

+dd 0e5846ddbh

+dd 059c3fa35h

+dd 0b14d23d1h

+dd 0c78ed95ah

+dd 0c78c97d4h

+dd 075f0d2b9h

+dd 0ea3a7390h

+dd 0e4ec4ef1h

+dd 0defb62bfh

+dd 02d2a5c4fh

+dd 05f0d0a70h

+dd 06786697ch

+dd 084ced9a9h

+dd 06cd40e4ch

+dd 0750beef9h

+dd 0c0c4d178h

+dd 04dee1055h

+dd 0b60248c2h

+dd 06cd888c7h

+dd 07c9e9a18h

+dd 05d732bf7h

+dd 002e24370h

+dd 0aab0adddh

+dd 0215b7ec8h

+dd 072e78ce3h

+dd 00833b984h

+dd 03eb2a039h

+dd 0ee52df8eh

+dd 0ea64448fh

+dd 04cbb1dcdh

+dd 03b039d8ch

+dd 036092482h

+dd 04e048256h

+dd 0156d6d92h

+dd 07952918dh

+dd 0ba64cdf0h

+dd 0ea7be090h

+dd 0b229b0f3h

+dd 093d14e97h

+dd 092a684d6h

+dd 0408ee890h

+dd 064d045d0h

+dd 0619a466eh

+dd 0a0df1ad0h

+dd 0ad5e1720h

+dd 034001c31h

+dd 0ade11041h

+dd 060357bb6h

+dd 0c9877118h

+dd 023ae9314h

+dd 0d3326958h

+dd 0cbea0a84h

+dd 0a06ac597h

+dd 0293e8e6ch

+dd 02e8b65fah

+dd 0a62e3bf7h

+dd 084642dfah

+dd 0934df44ch

+dd 0d64ffa8fh

+dd 0eb5c7400h

+dd 096a7339dh

+dd 0a03fb026h

+dd 0f6dd3c40h

+dd 022a09256h

+dd 06219d21eh

+dd 0e92f7df3h

+dd 022d1d3bbh

+dd 0e89444a0h

+dd 077fb900eh

+dd 0feaaaf1ch

+dd 0b2c2a52fh

+dd 068c625f1h

+dd 030f0b1b0h

+dd 07c208828h

+dd 04902c1c3h

+dd 0da14c3bbh

+dd 0d7c55e23h

+dd 0d934719ch

+dd 084b404f0h

+dd 0d3f145a2h

+dd 065126039h

+dd 0f21a1be6h

+dd 0105dae27h

+dd 0e0a7c9deh

+dd 044e6078bh

+dd 04423899eh

+dd 00cbb664eh

+dd 0a02005fdh

+dd 00f464bcah

+dd 057d36150h

+dd 0dbf5f47fh

+dd 0437b6bc7h

+dd 056e90966h

+dd 07f62ca3fh

+dd 02d66cf50h

+dd 0cd14e14eh

+dd 02705df49h

+dd 0e218da89h

+dd 03edca257h

+dd 03ffcbd03h

+dd 07472febah

+dd 0afcd703bh

+dd 082b5c99eh

+dd 0af6d2bcah

+dd 0fbf2cea6h

+dd 02a19c442h

+dd 01c7a1046h

+dd 01da4ad4ah

+dd 009561f84h

+dd 096e9284fh

+dd 005864aach

+dd 043f430e5h

+dd 05ae3d44ah

+dd 0ae86628ah

+dd 03e6c0badh

+dd 0b5095e8ch

+dd 07d2295eeh

+dd 084403eaeh

+dd 0eaee1418h

+dd 029a95174h

+dd 02e390c6fh

+dd 07b83fca1h

+dd 019f1c0a7h

+dd 023bf642ch

+dd 04083d14eh

+dd 0c8407cb5h

+dd 0aaead88fh

+dd 0bef79240h

+dd 017fe90ebh

+dd 0da208904h

+dd 091f7cb50h

+dd 08149b663h

+dd 03f3bcf29h

+dd 001e5fcd7h

+dd 0c9f127eeh

+dd 06493e9ebh

+dd 0201be98bh

+dd 095fc54aah

+dd 0ee7398e1h

+dd 038731195h

+dd 0a8772c23h

+dd 026a06f09h

+dd 0f3ad29e6h

+dd 0bf86e569h

+dd 01acec1f6h

+dd 0c8241823h

+dd 01e454418h

+dd 0b0345451h

+dd 0598c6b77h

+dd 0949537b4h

+dd 00224147fh

+dd 01859d259h

+dd 03b3efb0eh

+dd 020c2d460h

+dd 00a2eda5ah

+dd 058ffc09eh

+dd 0a9efba2dh

+dd 0aa6817e9h

+dd 0ab0040dbh

+dd 0a3a7a2f4h

+dd 0b00f7025h

+dd 0ddf9668bh

+dd 0fa602a92h

+dd 03dbcebd7h

+dd 098370bb7h

+dd 0adfd81e1h

+dd 0d0925bc7h

+dd 07c2894a9h

+dd 038cca04eh

+dd 0a021fd30h

+dd 07f4b1fc4h

+dd 092d181a4h

+dd 0a5b3517dh

+dd 01a9276feh

+dd 0a9e83a4bh

+dd 0d5cbe973h

+dd 03993c0b2h

+dd 0e108ad39h

+dd 0a4146e49h

+dd 01b294706h

+dd 0444fcff4h

+dd 014624907h

+dd 0b7982780h

+dd 0dcb34628h

+dd 08b2bd5fbh

+dd 01d73ff05h

+dd 0a62f04cch

+dd 0b28da84ch

+dd 075c9754ah

+dd 01434cdcbh

+dd 019b74477h

+dd 07fc48befh

+dd 05edaf76eh

+dd 06d55789dh

+dd 00bcf0711h

+dd 0e01240dbh

+dd 0ee061c96h

+dd 066c77fd1h

+dd 0caf76540h

+dd 07e0f7791h

+dd 0e76f60f9h

+dd 0526b3c54h

+dd 044d79680h

+dd 084be45feh

+dd 0e10361bdh

+dd 0c9021807h

+dd 0545102dfh

+dd 0ff85b6d3h

+dd 005a10203h

+dd 0c8fe5be0h

+dd 08fb57b08h

+dd 0a598a1c9h

+dd 0dac0c503h

+dd 0dd2e19edh

+dd 0972d4c95h

+dd 08be9c6efh

+dd 0537b1707h

+dd 01b00826dh

+dd 052887d44h

+dd 077e09021h

+dd 05059f87eh

+dd 0a58fe5afh

+dd 0e9ee8a8ah

+dd 0cc9abc8eh

+dd 068ec09adh

+dd 005b07e04h

+dd 08c52dd3dh

+dd 0ac2ca53ch

+dd 0b54fbfdbh

+dd 091f8607dh

+dd 0d9acad43h

+dd 0b350465dh

+dd 04d7dd0c2h

+dd 019199566h

+dd 09f41d878h

+dd 09053218bh

+dd 0a83e4cd3h

+dd 0f5851010h

+dd 02c1c8a6ah

+dd 0dea8716ah

+dd 0db037961h

+dd 061960184h

+dd 0c287ebb2h

+dd 0ba479939h

+dd 0dcb04647h

+dd 0051af176h

+dd 0f8119d7ch

+dd 0b64d4a16h

+dd 051f2a592h

+dd 097b9ed00h

+dd 0033d6c14h

+dd 062abfd86h

+dd 033a6764bh

+dd 08012edb1h

+dd 05d8259bbh

+dd 00bcb3336h

+dd 0d9605158h

+dd 095e266f8h

+dd 067ad3093h

+dd 0435bb90ah

+dd 04b0c5b3dh

+dd 0dc946e42h

+dd 0fafecfedh

+dd 0c2d44cf1h

+dd 00faf22fdh

+dd 0621c5262h

+dd 0688da8fdh

+dd 0d9e19e44h

+dd 0bce8a339h

+dd 0879ff162h

+dd 0a67cd1f5h

+dd 001680393h

+dd 0a3f6b97eh

+dd 0b12d6a8ah

+dd 0067b6264h

+dd 082afd4f6h

+dd 08c9f22e7h

+dd 0e32ee661h

+dd 077542706h

+dd 0a26ca367h

+dd 016d3f58eh

+dd 08a26ec34h

+dd 091b44ccbh

+dd 0029237eah

+dd 0e1b375ddh

+dd 0a0ba2be9h

+dd 0752c0eeeh

+dd 0dcb8b5c9h

+dd 04b79ff7dh

+dd 0bee8965bh

+dd 0ef579429h

+dd 02c8a53b7h

+dd 0c12a85bbh

+dd 00afacb61h

+dd 07498b14eh

+dd 0f3885df6h

+dd 0a34f42b6h

+dd 04e9da34bh

+dd 086bf021bh

+dd 0a176f969h

+dd 0a6d7e94eh

+dd 015928ce6h

+dd 048bb767bh

+dd 08d695729h

+dd 00c9a2dcah

+dd 050a5c055h

+dd 07be50800h

+dd 0e3dc28d8h

+dd 0a8fc918ah

+dd 0c44ef641h

+dd 0be3cef78h

+dd 0378369b8h

+dd 0c6aec6eeh

+dd 076a0c091h

+dd 0144a39fbh

+dd 0eda9a9d6h

+dd 0fd8926e6h

+dd 01a9e213fh

+dd 03111ee7dh

+dd 03c9633eeh

+dd 0d76bbcb6h

+dd 00f15f230h

+dd 017872d1dh

+dd 0fe80bbf6h

+dd 07eca3d2ch

+dd 05ab14e53h

+dd 0c6e17317h

+dd 0d6a3d90fh

+dd 0776218d7h

+dd 0dca552ceh

+dd 025ae551ch

+dd 019a7d510h

+dd 0ee379a9bh

+dd 0d34c3938h

+dd 04ba6d868h

+dd 0a6a1d9adh

+dd 0c25ce10eh

+dd 059189269h

+dd 0e411a05eh

+dd 06a1cf4a2h

+dd 0628c6425h

+dd 0c9fbbd0ch

+dd 03f2b148eh

+dd 0c4ca192ch

+dd 075b0b440h

+dd 05dedec14h

+dd 0298960a8h

+dd 0043c60b4h

+dd 07fa78f8eh

+dd 0d0684a62h

+dd 0d10727b6h

+dd 046a5870ch

+dd 0332c6d9ah

+dd 086a3643ah

+dd 0b31bd751h

+dd 0d7297a92h

+dd 03db51814h

+dd 01bd56b97h

+dd 0c4db77b7h

+dd 09fba0141h

+dd 04b77ee9eh

+dd 03d43c2ceh

+dd 0d8e86b2dh

+dd 0baca2056h

+dd 05a2874d4h

+dd 01d774039h

+dd 0a4c8b6d5h

+dd 07db32d71h

+dd 0ce1af545h

+dd 031326375h

+dd 0a7f2be33h

+dd 04d9f96cdh

+dd 054ec9a03h

+dd 096aaf25bh

+dd 0aa11ac3ah

+dd 0963f753eh

+dd 0512c93cch

+dd 0178bcb73h

+dd 0da1ed005h

+dd 02dfd4526h

+dd 0405dcd2dh

+dd 0979a34bah

+dd 020b04d5eh

+dd 0ccc62b4ch

+dd 006c4e8f6h

+dd 0eb10a573h

+dd 0698132d3h

+dd 0f00026a3h

+dd 08e279c20h

+dd 0bc9a0335h

+dd 0b7b5c788h

+dd 02da8465fh

+dd 0d5cc3478h

+dd 026dfae79h

+dd 011a3c180h

+dd 09362550dh

+dd 0e1b9a48ch

+dd 01a443903h

+dd 0863d42f1h

+dd 0531667d5h

+dd 037e5dadeh

+dd 0b3fac18eh

+dd 0e814a02fh

+dd 05ef88ea6h

+dd 090116b3bh

+dd 051b95cf7h

+dd 077c05edeh

+dd 0efb43f57h

+dd 07dd3acfah

+dd 098176d9eh

+dd 068043dcdh

+dd 0a0bf10eeh

+dd 0c1a4a62fh

+dd 0527d3afah

+dd 0dffca91ch

+dd 090616132h

+dd 082981f1fh

+dd 0c448b533h

+dd 05608c3dch

+dd 01ebaba85h

+dd 0942eb56dh

+dd 0a2654581h

+dd 0b6804d3ch

+dd 04759c593h

+dd 0d7f9879eh

+dd 085475da0h

+dd 08db3cf90h

+dd 01afd83b6h

+dd 00a885fb0h

+dd 0c3ec8221h

+dd 082fad008h

+dd 0dba47f77h

+dd 0fa11ce1dh

+dd 09c98ba97h

+dd 0339b0959h

+dd 0eac40432h

+dd 051a2d20bh

+dd 09b9319bch

+dd 06f54f47eh

+dd 06eb845a5h

+dd 0f08831a1h

+dd 0b90bbe9ch

+dd 0556bdc54h

+dd 0680fe343h

+dd 02ce5bdcbh

+dd 05f633e92h

+dd 08b607426h

+dd 07e996959h

+dd 0d4d14d48h

+dd 0093095dfh

+dd 037a94fcah

+dd 01fe66c52h

+dd 06cc9b474h

+dd 093365d71h

+dd 08484f72ch

+dd 033722914h

+dd 0a6c05fa9h

+dd 023b847cch

+dd 02481d104h

+dd 0a9413b5eh

+dd 05137c47dh

+dd 053964763h

+dd 03a5c936ch

+dd 018184903h

+dd 0f9920263h

+dd 0f9abc372h

+dd 0c00de1b4h

+dd 097cbbe08h

+dd 0c07432c7h

+dd 0b8c85315h

+dd 0c911353eh

+dd 04bc3ae4ah

+dd 0895bc9bah

+dd 095276c4ch

+dd 065e05634h

+dd 066caedf7h

+dd 0df19e754h

+dd 0c161ddach

+dd 04dafb917h

+dd 0e149babch

+dd 021fe464bh

+dd 0dc2720efh

+dd 09870508dh

+dd 0d7196246h

+dd 0ca55a966h

+dd 02e72f5f3h

+dd 0b70800b0h

+dd 01c086007h

+dd 02ec41c24h

+dd 0f22f9277h

+dd 097aaaeb6h

+dd 02d6e933eh

+dd 0e4f04067h

+dd 073a2c0c3h

+dd 0f7c150c1h

+dd 00ebb7193h

+dd 023806927h

+dd 0335abe07h

+dd 05d00a8fah

+dd 03c381505h

+dd 0309f7be1h

+dd 0d3b9f226h

+dd 0aa564c25h

+dd 0e419bcbfh

+dd 0db3428bch

+dd 0631d0d75h

+dd 0ea6528eah

+dd 02703f165h

+dd 00ed69ae9h

+dd 0130ba0c4h

+dd 056528d34h

+dd 01bf0d319h

+dd 070d7413fh

+dd 0f34b14efh

+dd 0b0a3f750h

+dd 0a24d4ce0h

+dd 0d7b94f5ch

+dd 02eac2addh

+dd 0238a97bah

+dd 0575d65d7h

+dd 0c8835932h

+dd 0310885deh

+dd 07635e74fh

+dd 07a641f28h

+dd 0c53bb16eh

+dd 05ece5fd4h

+dd 0960fd4dch

+dd 0f913c8aah

+dd 0fcdbaaa5h

+dd 0dbabdd89h

+dd 0163e25fbh

+dd 0d0be7fa6h

+dd 0cc80e34fh

+dd 0b92bd949h

+dd 0ca82f046h

+dd 0916e2e51h

+dd 042b7f6f4h

+dd 012dc0027h

+dd 02baed9e8h

+dd 0c7431f5eh

+dd 00473a24eh

+dd 0b08c2c56h

+dd 0729279f9h

+dd 0b615c85bh

+dd 0bdc0dccch

+dd 0a276b22eh

+dd 099e2ed54h

+dd 0d1e0b692h

+dd 0f5bd3142h

+dd 0a9575b24h

+dd 0ca747175h

+dd 039891492h

+dd 0b9d483f3h

+dd 02d6ff6b6h

+dd 03e0b117bh

+dd 06e541629h

+dd 031b45ee1h

+dd 0f631dd45h

+dd 0e259bde4h

+dd 05417fa84h

+dd 01f06549eh

+dd 0b823a46ah

+dd 0a24eed44h

+dd 03e09ef70h

+dd 08726b7eeh

+dd 0561b1071h

+dd 086559bb3h

+dd 069f319b2h

+dd 0d8dbdcb7h

+dd 0d000f60bh

+dd 06de02d3fh

+dd 014e0a0b7h

+dd 0a1baecfeh

+dd 086ac7a17h

+dd 06419d3a6h

+dd 0b5831deah

+dd 07785eeb8h

+dd 0312b42f9h

+dd 03cf26abdh

+dd 0a6acfa99h

+dd 07955bb49h

+dd 087cb4b89h

+dd 05f042188h

+dd 0d185b1d0h

+dd 06b35c7cch

+dd 0dc5fbcb8h

+dd 06526f9e4h

+dd 095856a31h

+dd 00f56d597h

+dd 0c30e4e1dh

+dd 00215af48h

+dd 07ac9eab7h

+dd 0d2ed10bdh

+dd 0d326d3f8h

+dd 04612b109h

+dd 0ff558f3ch

+dd 099ed9ff1h

+dd 0405b2872h

+dd 065cc51c1h

+dd 085e8b952h

+dd 0456a45ffh

+dd 0c12a66e4h

+dd 0d8acbc39h

+dd 0fdc1b781h

+dd 0eda248a1h

+dd 0fa3e450dh

+dd 07ed7fd34h

+dd 0367dc04dh

+dd 09edeec34h

+dd 0a6393d20h

+dd 01af838d6h

+dd 05c52bf41h

+dd 0c85f6bc9h

+dd 076c8407ch

+dd 05f1cd75ah

+dd 00e056b7ch

+dd 0da96be62h

+dd 094a78984h

+dd 0c0c56caeh

+dd 032766930h

+dd 0eb45b27bh

+dd 093a0fce7h

+dd 011fb49e5h

+dd 0e4518650h

+dd 01c881206h

+dd 05aba21ceh

+dd 0ff0ca0bah

+dd 0e0883e0ch

+dd 0d1eb8611h

+dd 0b4150e6ch

+dd 060cb856dh

+dd 01b8c452fh

+dd 00cd1fd56h

+dd 0ffab039ch

+dd 0c4de8373h

+dd 05c25069dh

+dd 0b27a8dafh

+dd 01814d707h

+dd 02f06d336h

+dd 08e0490a3h

+dd 010f964d3h

+dd 0b17132e2h

+dd 057b6a57ch

+dd 0f2ab4d77h

+dd 02e20bb03h

+dd 0b3a79d27h

+dd 093d61200h

+dd 0abb0d957h

+dd 03ae4a20ah

+dd 04eee1b2ch

+dd 082cbb24fh

+dd 0abb399a2h

+dd 0c6038085h

+dd 0aa1a4fc5h

+dd 0f1ca1971h

+dd 03148b3c0h

+dd 0d4b0832ch

+dd 0dd4d5c28h

+dd 057dea344h

+dd 09373eb90h

+dd 0787bda09h

+dd 088c0687ch

+dd 004f82730h

+dd 079ba63c0h

+dd 070c26fb4h

+dd 0d9b11c06h

+dd 091b058d1h

+dd 04a2fe77bh

+dd 0dbc6cc38h

+dd 0165173d6h

+dd 05d41382ch

+dd 0468c6e65h

+dd 006e50c1ch

+dd 0f8336fb4h

+dd 0f440686bh

+dd 006902485h

+dd 066a6ab88h

+dd 09ee68ae7h

+dd 046200a1ah

+dd 033e926b0h

+dd 0fc274816h

+dd 0da8fbef0h

+dd 008159b65h

+dd 00cd6567ah

+dd 0836192cfh

+dd 0d727df32h

+dd 0040bb588h

+dd 0286ac112h

+dd 03da3e412h

+dd 09e02fdbfh

+dd 0e998fdb6h

+dd 046e443a6h

+dd 096191f1bh

+dd 001c6ba40h

+dd 015733858h

+dd 05605c55dh

+dd 0744ed62ch

+dd 04b917a66h

+dd 0d05b823fh

+dd 0e6c9efcch

+dd 0d7c323a6h

+dd 08719d0dfh

+dd 0e59801a2h

+dd 0fc0d38d4h

+dd 079f49bb2h

+dd 00ef518d0h

+dd 072169b02h

+dd 09745966ch

+dd 074bb1107h

+dd 0a367b86dh

+dd 00a015134h

+dd 0b020957fh

+dd 06c3c7bfch

+dd 089a9ef96h

+dd 0229e45a4h

+dd 06e9c365ah

+dd 09f39e32ah

+dd 04d52b866h

+dd 08262a30eh

+dd 076897ab5h

+dd 020e94726h

+dd 0042d5580h

+dd 0a76d4c78h

+dd 088e7f948h

+dd 05e262a32h

+dd 0c87f924fh

+dd 0292e17f9h

+dd 0dc046ed7h

+dd 0f31b63a6h

+dd 0e5516180h

+dd 0240e915fh

+dd 0c807a5f2h

+dd 0bd9aed44h

+dd 001083de0h

+dd 0fde4ae9fh

+dd 0359b7be2h

+dd 09d8f88e2h

+dd 06373be78h

+dd 02cc99ba1h

+dd 0122872d4h

+dd 007852e98h

+dd 0f091faadh

+dd 0063f720fh

+dd 0e2f7e2b7h

+dd 0f9ed22d8h

+dd 0b3520058h

+dd 010d888c4h

+dd 08f210eebh

+dd 01f502982h

+dd 0012da1d2h

+dd 0ac846dcch

+dd 03ed876cah

+dd 053612b00h

+dd 074d4ccebh

+dd 0b247706bh

+dd 09552e43fh

+dd 0b08278c4h

+dd 0f11c0251h

+dd 0ae78fc8dh

+dd 0b7c4ce71h

+dd 02c3f68e3h

+dd 0d626dfa3h

+dd 000335bb1h

+dd 049353d0fh

+dd 063a6cbc8h

+dd 0e948786bh

+dd 07e3b34d0h

+dd 088c0506dh

+dd 095634a84h

+dd 06499cb13h

+dd 0b46248a6h

+dd 0a9b585b6h

+dd 0b690d304h

+dd 0e93bd93eh

+dd 07401cbc1h

+dd 081b059f5h

+dd 039caaf4ah

+dd 0442eab78h

+dd 0c91a2859h

+dd 0bcb909fch

+dd 091f41f56h

+dd 0abb30995h

+dd 00b30f7f6h

+dd 0659f2ba2h

+dd 0c147708dh

+dd 042875e9ch

+dd 0289ad976h

+dd 061c53cb9h

+dd 06fe06bc7h

+dd 093679e5ch

+dd 0210a345fh

+dd 027251879h

+dd 0ed0f9626h

+dd 00a82c054h

+dd 0a39e8649h

+dd 03f25a316h

+dd 08a5904bfh

+dd 084e68710h

+dd 03d979517h

+dd 0171e1208h

+dd 0658b2d23h

+dd 043770421h

+dd 01ab899ebh

+dd 072205257h

+dd 0e9ee5184h

+dd 0a6d45975h

+dd 0aa7ec833h

+dd 0a1d1377bh

+dd 0fd7692b8h

+dd 042f8aea7h

+dd 05e5e7fd8h

+dd 0e08dd1bdh

+dd 0281e921ch

+dd 0f79f7a28h

+dd 06adebceah

+dd 0baaa9488h

+dd 09b425a9ah

+dd 04fb3aa6eh

+dd 00a7b17b5h

+dd 0ee98c054h

+dd 04de1b7ceh

+dd 01a41c399h

+dd 05c98ec4ch

+dd 0ab7cd102h

+dd 070d025adh

+dd 044128974h

+dd 0235a9276h

+dd 0b80acefdh

+dd 054e2e182h

+dd 0b3af3c46h

+dd 0e8f36ba9h

+dd 07a9aca37h

+dd 0632b3f49h

+dd 047f5205eh

+dd 0e30b272dh

+dd 07894a392h

+dd 0e29b3a8bh

+dd 01cd40b43h

+dd 0cefb6b48h

+dd 0e08cc279h

+dd 07d6b3d65h

+dd 04268d1d9h

+dd 062cb8110h

+dd 0453d1557h

+dd 08517381ah

+dd 064ffe559h

+dd 097b126fdh

+dd 03ba82035h

+dd 004baab5eh

+dd 03a454465h

+dd 0de842b6bh

+dd 0a7b95ea4h

+dd 024dab816h

+dd 0441c6b0dh

+dd 06600e3dch

+dd 0b0a23991h

+dd 0d88596b7h

+dd 041647030h

+dd 0735d8c72h

+dd 06c678e5dh

+dd 00315944eh

+dd 0db471680h

+dd 08333bbfeh

+dd 0dfb9ccadh

+dd 093b51ecch

+dd 01a339a13h

+dd 06fed48b1h

+dd 00e485c66h

+dd 033f510e6h

+dd 0801d4a82h

+dd 0f88a96edh

+dd 022188cb2h

+dd 0de163c2ch

+dd 007edfd64h

+dd 02f790e5ah

+dd 08641b5a6h

+dd 09188be9ch

+dd 049d3d3efh

+dd 0b489e0e0h

+dd 0341f5b48h

+dd 0ccb5294bh

+dd 026ec765fh

+dd 0e6187074h

+dd 0519b4e67h

+dd 043190bbeh

+dd 013013351h

+dd 0c191f962h

+dd 030e6ee17h

+dd 0b9903108h

+dd 0bd338721h

+dd 001600cech

+dd 0b48732b9h

+dd 04d68b762h

+dd 0c9678dffh

+dd 01c9e1927h

+dd 094c39442h

+dd 063fe31a3h

+dd 084ce8d5dh

+dd 063efbdf0h

+dd 0a30d10bbh

+dd 0eeaf12ach

+dd 0ebf5f398h

+dd 050153b1ch

+dd 02b6bcb48h

+dd 0db22e432h

+dd 0d9d920e1h

+dd 0195d1f78h

+dd 086292209h

+dd 03db41d6eh

+dd 01238bf81h

+dd 0f3bb59c9h

+dd 0dfcc7d5fh

+dd 0cf1ff16dh

+dd 08fab9135h

+dd 0f0bb0dd1h

+dd 0a7ac23e1h

+dd 0a1117149h

+dd 0de2ac0efh

+dd 071d9046eh

+dd 002a13cb3h

+dd 0bd0d3cc3h

+dd 020230536h

+dd 067f855a1h

+dd 0a3869eb4h

+dd 0203e898eh

+dd 044c3b291h

+dd 087fa39e6h

+dd 0882bbb9dh

+dd 0124f6934h

+dd 02bd85dafh

+dd 05f2f6e2dh

+dd 035d5fc9ah

+dd 0830d126eh

+dd 09a56805eh

+dd 01154a283h

+dd 08c9bb8aeh

+dd 0f490ec82h

+dd 01eedc7e3h

+dd 02852264dh

+dd 0ec957c00h

+dd 013969be4h

+dd 037895503h

+dd 01e5c8888h

+dd 04dfbb299h

+dd 0687a374ah

+dd 090e40db8h

+dd 057d30e09h

+dd 0b7b71cddh

+dd 030cadb45h

+dd 098e130cfh

+dd 056659457h

+dd 07998d64ah

+dd 072f35708h

+dd 0a4d4d692h

+dd 00be5933ch

+dd 0beda1fe7h

+dd 0a3adae35h

+dd 0ef34ce9ch

+dd 07c080e4fh

+dd 01ba9d3a4h

+dd 01b63c320h

+dd 0a6419422h

+dd 00d484009h

+dd 01d413d27h

+dd 0e4af3a82h

+dd 0a401e5edh

+dd 0954b3070h

+dd 05c60c2c1h

+dd 04d406cbah

+dd 0bc4a0ccah

+dd 0ed45bca5h

+dd 0ee1ada7bh

+dd 0ccd5f274h

+dd 04ab6002ch

+dd 06d0cb710h

+dd 0fa6e52c5h

+dd 0989c5cf3h

+dd 0c02bf04ah

+dd 050fcb8d1h

+dd 028287931h

+dd 0ef1dee5ah

+dd 030f3fa5dh

+dd 0834ad084h

+dd 0d48651cch

+dd 08c2417eeh

+dd 0bbbfe25eh

+dd 038427579h

+dd 0437ab089h

+dd 0b5bfecd7h

+dd 0050b89a4h

+dd 046cf61e0h

+dd 0e2eb89c8h

+dd 03a2099c9h

+dd 07bc91672h

+dd 0706ce631h

+dd 07f96bf84h

+dd 0ae61279ch

+dd 005ca4afch

+dd 006ae398bh

+dd 04beba6d5h

+dd 06428b894h

+dd 0c4d02880h

+dd 027624d9fh

+dd 05c7a1f65h

+dd 07f6221c8h

+dd 0982d1b0bh

+dd 0c56c53e0h

+dd 043c25a78h

+dd 06416914bh

+dd 0b4ceb767h

+dd 04f87a8dbh

+dd 03f8a6b89h

+dd 0eb5d746eh

+dd 0c5c87f7dh

+dd 065676fcah

+dd 07b1126b3h

+dd 0095aab68h

+dd 08c8d4743h

+dd 00e973691h

+dd 0cc7e2979h

+dd 07e97f35bh

+dd 09d60506bh

+dd 0046add9ah

+dd 08aa90878h

+dd 09e829cd5h

+dd 0e667217ah

+dd 04b545f4eh

+dd 0e2922511h

+dd 068c03a17h

+dd 08eb9af79h

+dd 0d47ee35eh

+dd 07eef9e23h

+dd 0cf6bbec2h

+dd 0988faae8h

+dd 0365ce11dh

+dd 0fa8f1eaeh

+dd 02f74dc6ch

+dd 0bdff4b22h

+dd 0b8064362h

+dd 063dd96cdh

+dd 0e77cb2cbh

+dd 00abe465ah

+dd 08d5112dch

+dd 02d60a3eah

+dd 0dad4c1bbh

+dd 05bcec5e4h

+dd 020d658c5h

+dd 05bfa1e33h

+dd 09c5f2eb0h

+dd 0c0fa2de7h

+dd 07dd63859h

+dd 01e181c17h

+dd 0b6d0dc9bh

+dd 0d95ba600h

+dd 01956c489h

+dd 091b9bb86h

+dd 0a06ce59fh

+dd 06a84f582h

+dd 02f2ea483h

+dd 00e7d9772h

+dd 069f42c3eh

+dd 061c590f9h

+dd 05f6718fdh

+dd 0d96fcc11h

+dd 0a3d60b49h

+dd 027f87b6fh

+dd 03000233ah

+dd 09d362ce1h

+dd 0db44e506h

+dd 0cb4f9e9eh

+dd 07e6fefa2h

+dd 06a22a599h

+dd 0370bb6fah

+dd 09e897000h

+dd 026ea0902h

+dd 05e8dc025h

+dd 01d1d8095h

+dd 0c8a854bfh

+dd 0bfe46bdfh

+dd 083d1a789h

+dd 0615c2061h

+dd 07d83b0fdh

+dd 03aeff2afh

+dd 0ff0f3de5h

+dd 075210842h

+dd 0af2f40dah

+dd 09cee2991h

+dd 012bfd379h

+dd 03368aed7h

+dd 080da0082h

+dd 0113a0966h

+dd 030ddaf6eh

+dd 0b403754ch

+dd 0d2b51343h

+dd 07a90dbbch

+dd 0c4e3cd43h

+dd 06df0f4a5h

+dd 00dfd5283h

+dd 0357fb861h

+dd 081dd20aeh

+dd 019ca34e2h

+dd 0e4d1dcech

+dd 0f93a68f8h

+dd 0eacea62fh

+dd 003a00fa1h

+dd 00cb3c72eh

+dd 0ba5c2a04h

+dd 06c6a8acah

+dd 0e8e6560eh

+dd 0ce532e22h

+dd 05cb428fdh

+dd 03433963fh

+dd 0916e200ah

+dd 0675c8b56h

+dd 074fb6890h

+dd 04113bcd0h

+dd 0411ca2f7h

+dd 0fe64a568h

+dd 0b1a51ba9h

+dd 0ccececebh

+dd 0276b0a47h

+dd 0322b2fdch

+dd 005717015h

+dd 03cf57e7ah

+dd 04987f541h

+dd 076c6b9ebh

+dd 00a9f46d6h

+dd 021d57541h

+dd 0a8dc9af0h

+dd 025739d3ah

+dd 010e8bea4h

+dd 0cb654903h

+dd 0e5cab22fh

+dd 01bacf32ch

+dd 07038d5cfh

+dd 017805177h

+dd 0a66faec7h

+dd 0a734c875h

+dd 0c5000e7fh

+dd 0ef507d85h

+dd 0b25d909ah

+dd 0170e4bb6h

+dd 00d6da5c1h

+dd 0359a08afh

+dd 071780e78h

+dd 0aa1cbd46h

+dd 07582edfch

+dd 00654f27ah

+dd 0e7e377f8h

+dd 06ae14efch

+dd 0ebc7da68h

+dd 0293936e4h

+dd 0004c1ca9h

+dd 0ca5574f0h

+dd 0ef3033e4h

+dd 055becbc0h

+dd 0e0385110h

+dd 0293b30eeh

+dd 04862dda8h

+dd 0baba6ed0h

+dd 0e4927bach

+dd 09ddb64cch

+dd 057701dfbh

+dd 0ce491a4ch

+dd 03101bb25h

+dd 07795c230h

+dd 0e5ba1e89h

+dd 09d195416h

+dd 0e3d2df9eh

+dd 0ce3d0abbh

+dd 058ed75dbh

+dd 097d8fb40h

+dd 0a8685706h

+dd 0f39fd570h

+dd 0d523241ch

+dd 0890fba37h

+dd 04250caefh

+dd 026c4718fh

+dd 056d6a1b4h

+dd 04d6150bfh

+dd 05b8208ceh

+dd 081067a88h

+dd 0bfc7c896h

+dd 06c556479h

+dd 08b62a676h

+dd 0126b12b9h

+dd 096cfc26ch

+dd 072f7d164h

+dd 0014b9e78h

+dd 0da71c7f1h

+dd 00b07c758h

+dd 0236465e8h

+dd 055e35413h

+dd 0b6900f45h

+dd 0085363c4h

+dd 050e71f6eh

+dd 08a1e77d5h

+dd 0b99149eah

+dd 0452db1c0h

+dd 0fe0b4637h

+dd 0da6f1f64h

+dd 024f8875bh

+dd 0a21fb658h

+dd 0a4f526b1h

+dd 047150f5dh

+dd 0d0ee85b4h

+dd 02a2d92d3h

+dd 007650f05h

+dd 0ff59400dh

+dd 0aefcc2bbh

+dd 061cc939eh

+dd 030e5430dh

+dd 07082191ah

+dd 044e51b92h

+dd 0bee40d62h

+dd 080a0d321h

+dd 022b2207fh

+dd 00ac2a012h

+dd 0262c99e7h

+dd 00806f752h

+dd 09c405425h

+dd 0e17fe8eah

+dd 0e1bd3731h

+dd 0bf4f0a38h

+dd 090962010h

+dd 09187f696h

+dd 039aa1494h

+dd 0cff3984eh

+dd 033aec5ceh

+dd 06f208d1ah

+dd 0a24cc962h

+dd 031624188h

+dd 0b08536c9h

+dd 04f61c4b2h

+dd 0cd67ef9fh

+dd 02d26d62fh

+dd 02e7b004ch

+dd 017b80641h

+dd 063c67d4dh

+dd 03f817817h

+dd 02f299c69h

+dd 05d440dfeh

+dd 0488ec8e9h

+dd 06ae1919fh

+dd 039dd5b50h

+dd 0ece62468h

+dd 01617e4c3h

+dd 063753640h

+dd 08dab6586h

+dd 0dfc60fffh

+dd 015e75cadh

+dd 01ac8003bh

+dd 0984b8175h

+dd 0f9c846d7h

+dd 084462488h

+dd 055afd9bch

+dd 0ea03788fh

+dd 0f9c3a0f5h

+dd 0538c6dbdh

+dd 0e3ad8664h

+dd 05214f381h

+dd 0ab3d6694h

+dd 0caffb428h

+dd 0ed8a8ee4h

+dd 0d889f537h

+dd 051eab98bh

+dd 0e3277486h

+dd 031976dd1h

+dd 0769ef456h

+dd 0dcce96f6h

+dd 0f201dd17h

+dd 03ecfecc8h

+dd 0698af599h

+dd 006c4fa8dh

+dd 005f9c921h

+dd 09acb0305h

+dd 03bcb736dh

+dd 0dd156dd3h

+dd 0b48d9519h

+dd 0f238344ah

+dd 00ec8031bh

+dd 07de67e19h

+dd 0bdab824fh

+dd 0074a4f05h

+dd 0ffd4bf2ah

+dd 00d9dae7ah

+dd 06d6e82b1h

+dd 0fd276a0fh

+dd 06a1792bch

+dd 04c5ce9bbh

+dd 051952245h

+dd 07ee8e2c4h

+dd 0f17f7cf5h

+dd 0f43be4c1h

+dd 0db64cf17h

+dd 00dcb4fbbh

+dd 00e56f3b1h

+dd 0626052a1h

+dd 0ca19a115h

+dd 0dfc3cd89h

+dd 0ed0f6369h

+dd 0b7447610h

+dd 0f1189d7ch

+dd 0e41dc575h

+dd 04277e7b3h

+dd 0cc927c69h

+dd 08512f4cch

+dd 0008fb277h

+dd 0c0593155h

+dd 007bb6296h

+dd 0133767c8h

+dd 01c6903eeh

+dd 006f7dd16h

+dd 07cdb99bch

+dd 0ac94c879h

+dd 08b6b7ecbh

+dd 098c12538h

+dd 015ffdbd5h

+dd 03cf63da0h

+dd 0f7a61c68h

+dd 0bbde92e5h

+dd 0c4d4fd83h

+dd 066e57c46h

+dd 0b5882fa1h

+dd 07d0d43e8h

+dd 01a00994dh

+dd 0fba42874h

+dd 0a76c238eh

+dd 0883ce2c3h

+dd 028c7c0b0h

+dd 051a04850h

+dd 0d06fc8d1h

+dd 03c38f37ch

+dd 0cb3008c1h

+dd 029b1836ch

+dd 0cfd0b28ch

+dd 035e7b918h

+dd 006b44661h

+dd 0ed7b1dbch

+dd 09adeb951h

+dd 0f6826615h

+dd 08b34c763h

+dd 027f672c8h

+dd 056667682h

+dd 0ed884376h

+dd 0c370742dh

+dd 094658cb0h

+dd 0437f71abh

+dd 0c1321fd1h

+dd 00147ecd4h

+dd 00539fba9h

+dd 0971d71c2h

+dd 095b719cdh

+dd 008ae87ebh

+dd 0b7658e0fh

+dd 089a52deah

+dd 0e1b3964ch

+dd 0af3626aeh

+dd 0cc1bfea2h

+dd 0a4c852f0h

+dd 06db4a4dfh

+dd 0f3ba6f35h

+dd 0667c3ec3h

+dd 03f77e665h

+dd 094247945h

+dd 0d51025eeh

+dd 026f26ab8h

+dd 03ab4f4c8h

+dd 05b13f25fh

+dd 0699201a3h

+dd 026251bf1h

+dd 0b1cab4cbh

+dd 0451a5447h

+dd 070a6e56bh

+dd 050a3988fh

+dd 015438598h

+dd 0d17d3bb0h

+dd 03e412d9ah

+dd 00ce64444h

+dd 0cb254f8ah

+dd 0b531f273h

+dd 0690df4fbh

+dd 07b7eb706h

+dd 0abad0161h

+dd 07bd85704h

+dd 014846139h

+dd 0c6f206a7h

+dd 092e28adch

+dd 05c0dea49h

+dd 0a76f2d02h

+dd 029af0d38h

+dd 04e075798h

+dd 0f517af56h

+dd 01ca3a09bh

+dd 0cd35233eh

+dd 03b7cf647h

+dd 09df40159h

+dd 04fe3a6a5h

+dd 07ede63b9h

+dd 0eb05dae9h

+dd 0d26d4bd0h

+dd 0de0c6b0fh

+dd 0755c94dfh

+dd 016dca2adh

+dd 0b0fde1e8h

+dd 0be551e20h

+dd 07dd6fd5dh

+dd 08f09eefbh

+dd 0e26adf05h

+dd 003d7da1ah

+dd 070735b9ah

+dd 049283c93h

+dd 082c6c3d5h

+dd 091f7de14h

+dd 0f711f551h

+dd 09c91f8b1h

+dd 0dd355389h

+dd 00159f854h

+dd 06cfe5f07h

+dd 00c4da4e8h

+dd 0784ea027h

+dd 0917a8755h

+dd 0156f4debh

+dd 025d3f21dh

+dd 078749991h

+dd 095f1190eh

+dd 0b5ea87e8h

+dd 0091ed0e2h

+dd 08cf6b712h

+dd 0efdd562ah

+dd 010df37aah

+dd 019a76f7fh

+dd 098af35fdh

+dd 067ee399fh

+dd 0f2d0a2e9h

+dd 089537a67h

+dd 0fc989fc1h

+dd 0bde8e49eh

+dd 05597e450h

+dd 0e014b8f8h

+dd 00ae31baeh

+dd 00f69e522h

+dd 0e4a438abh

+dd 00f32cf3bh

+dd 09cbe6b23h

+dd 0f2fdc145h

+dd 020114241h

+dd 038995c41h

+dd 0113222ddh

+dd 063bbffbah

+dd 06f3191beh

+dd 0045de1c1h

+dd 0cf7407d7h

+dd 0bbc0cc05h

+dd 068db060ah

+dd 05edc41d9h

+dd 02a813088h

+dd 0c927e13dh

+dd 026d34c58h

+dd 0e3c2bd9ah

+dd 0197be58dh

+dd 0246b0a5bh

+dd 0dda289f1h

+dd 018869620h

+dd 09816627ch

+dd 0e24ba601h

+dd 02ec8ecafh

+dd 05712d203h

+dd 0a9ee9f6ah

+dd 0366c3f08h

+dd 0b5bdc31bh

+dd 00e05de68h

+dd 02853c828h

+dd 0cd91c08eh

+dd 0761be7fch

+dd 0054325cbh

+dd 031f6da59h

+dd 01d36840ch

+dd 00dc5b1b3h

+dd 0d4ff52dbh

+dd 094f4c68eh

+dd 035d0cdech

+dd 0b3a84890h

+dd 0ffd8671fh

+dd 054a0a638h

+dd 04f203cffh

+dd 05349d7d6h

+dd 0135ace55h

+dd 0e5a15e22h

+dd 090e52018h

+dd 01be5e431h

+dd 073b5c8a7h

+dd 05eaefc71h

+dd 07e87618bh

+dd 0a5665a6dh

+dd 0ed040865h

+dd 079631c5dh

+dd 0e7be8dach

+dd 08b3a461ah

+dd 03f5f3d31h

+dd 0fde7605ah

+dd 017651f06h

+dd 0fe73e3e4h

+dd 0501ba646h

+dd 0ac400fb6h

+dd 092f46464h

+dd 0434b6348h

+dd 0f4b34ec4h

+dd 023488968h

+dd 0e227d660h

+dd 0a815cd99h

+dd 095fcec3ch

+dd 0b62b8acbh

+dd 004a7bf35h

+dd 08edfc626h

+dd 0632d1585h

+dd 0f35bdf94h

+dd 0fc3790fch

+dd 0a02aff17h

+dd 0198a62beh

+dd 07f1a564ch

+dd 0c3d5bb0dh

+dd 0aebcb3d6h

+dd 092355893h

+dd 051f7741eh

+dd 057a277ach

+dd 051d26a8fh

+dd 07679f0feh

+dd 0cfd79c35h

+dd 07ab2c81ch

+dd 0d9aa63c7h

+dd 080f63cf7h

+dd 09d3203f7h

+dd 063348750h

+dd 097671c2dh

+dd 004b5f3e2h

+dd 032af5d0ah

+dd 0d0ec85eah

+dd 0946f8cach

+dd 0c949b655h

+dd 0c1f565fbh

+dd 0eccd15abh

+dd 06feac719h

+dd 0b1e8006eh

+dd 0a06c3d13h

+dd 075f0de5ch

+dd 061581915h

+dd 0dd459168h

+dd 0f0d26bdah

+dd 05edcd2cbh

+dd 075bd89c7h

+dd 02e7ffd75h

+dd 055c71a76h

+dd 0834afa3bh

+dd 0c542c40eh

+dd 0c801e312h

+dd 0fee6f014h

+dd 00901a27bh

+dd 011662898h

+dd 0beb49809h

+dd 0ae989e16h

+dd 068e34693h

+dd 0e1d710d6h

+dd 098c69505h

+dd 061c578f3h

+dd 013cbcd8dh

+dd 0fd8aae90h

+dd 057f3f49ch

+dd 094b5a297h

+dd 0b34d0784h

+dd 0a7a36713h

+dd 02af1e8d9h

+dd 0972e4763h

+dd 0890800dfh

+dd 0a12173d3h

+dd 0ac73f9b4h

+dd 08e24a44dh

+dd 09f7eb901h

+dd 0766767f7h

+dd 0f0db0015h

+dd 0fbc46bech

+dd 098d2b077h

+dd 078582169h

+dd 044a16de2h

+dd 01b478062h

+dd 0d8d75209h

+dd 0a7d278e5h

+dd 04c8ffcdeh

+dd 027f24c76h

+dd 093c020e9h

+dd 058812dc0h

+dd 080b129aeh

+dd 0027348bfh

+dd 04908be8ah

+dd 0df181780h

+dd 0ecc207e0h

+dd 00ae9d017h

+dd 0f2d3ca7fh

+dd 0cb088e9eh

+dd 0ea275d14h

+dd 05ce9e0eah

+dd 0e7907ff0h

+dd 095fea519h

+dd 0c5cb3910h

+dd 0c323e804h

+dd 0c3c8bb40h

+dd 040836debh

+dd 02470f10ah

+dd 093471558h

+dd 0b8fc333ah

+dd 026aec4e5h

+dd 0994cbc96h

+dd 0e66e79c0h

+dd 0e1d1610ch

+dd 0a8b11ab3h

+dd 03dc7b207h

+dd 0a47376e5h

+dd 00d377191h

+dd 0b1bf25ech

+dd 0183fa365h

+dd 0b1022fa8h

+dd 0bf6c8762h

+dd 0b73693f9h

+dd 0feefafa0h

+dd 0d80be5eah

+dd 055538b5dh

+dd 0e1b9ca89h

+dd 064fa3304h

+dd 0b43d35d1h

+dd 013016364h

+dd 0c23e869eh

+dd 0f1bd6c59h

+dd 0426dcd21h

+dd 08877cc39h

+dd 06f597cach

+dd 0149c44b3h

+dd 041159946h

+dd 0341107a1h

+dd 09420338dh

+dd 0fac547bbh

+dd 00ba2bda8h

+dd 08e60b634h

+dd 042eaebech

+dd 06fad7bc3h

+dd 0980d0e66h

+dd 0f0476b34h

+dd 02c700078h

+dd 00ea8d937h

+dd 08788d26ah

+dd 040b3fd1dh

+dd 0aa81cdb5h

+dd 079ad5f4bh

+dd 03c91a95dh

+dd 0b1dafc56h

+dd 075f02b73h

+dd 0c0d710deh

+dd 0fabd39f6h

+dd 0ff7ad31ch

+dd 0d7fe643ah

+dd 082445e32h

+dd 0b4ed113ah

+dd 00f8f24d8h

+dd 05c293f07h

+dd 09c4d37a5h

+dd 002a786c4h

+dd 03dce186dh

+dd 0cf148d00h

+dd 08da83baah

+dd 0f01461eah

+dd 09f0f68f5h

+dd 0b1aeba65h

+dd 078901338h

+dd 0a2a5edefh

+dd 0032b15b8h

+dd 0b70cb682h

+dd 029791954h

+dd 0cb41526eh

+dd 02e709f99h

+dd 028e933d1h

+dd 0844e7707h

+dd 074f68d86h

+dd 0e9579621h

+dd 0654b8356h

+dd 07d0c9991h

+dd 027f62d42h

+dd 0ffcd7da5h

+dd 0780d0d08h

+dd 03bbbc5a2h

+dd 02c4ac995h

+dd 04b32cabdh

+dd 0c2018192h

+dd 05da882e2h

+dd 0ed96aec7h

+dd 039bf9a34h

+dd 0dbeab9f1h

+dd 0cea2fe93h

+dd 05b23fab3h

+dd 0214fe5aeh

+dd 09ede5548h

+dd 016851b0bh

+dd 044e91bdch

+dd 0ee6ce483h

+dd 0e2efec58h

+dd 0d7bb3344h

+dd 08f5ac77fh

+dd 04f65a300h

+dd 019358a06h

+dd 0fa2d8ca8h

+dd 0a0a91c7dh

+dd 05cb0cd57h

+dd 08c0e5988h

+dd 06274bc6bh

+dd 074665956h

+dd 05f09a3c9h

+dd 09c4ebbf9h

+dd 02531210dh

+dd 0cc45cb15h

+dd 021bc8254h

+dd 052592baah

+dd 0c1936101h

+dd 0f0096097h

+dd 09c731998h

+dd 0cf93fca3h

+dd 02443c441h

+dd 01e425b16h

+dd 03f720b0eh

+dd 053d0a171h

+dd 0a25fe7f3h

+dd 00746ca53h

+dd 0d5167608h

+dd 09c0398d0h

+dd 03d9110a3h

+dd 029d4e4bah

+dd 0118abb22h

+dd 0696cac27h

+dd 0bb341233h

+dd 0b9fc165fh

+dd 05037a7b0h

+dd 0f410f362h

+dd 044ecab96h

+dd 0a9be1614h

+dd 08cb4a8e9h

+dd 0cd08cc27h

+dd 0546d7447h

+dd 06e3f0f00h

+dd 0cd2a7d3ch

+dd 0ad12616ah

+dd 0f992b0aeh

+dd 076658dd4h

+dd 024ad666ch

+dd 01e2957c2h

+dd 09f230466h

+dd 0e99156ceh

+dd 067fd1932h

+dd 01e3d068dh

+dd 01888bbd5h

+dd 07dcc539bh

+dd 0f57d0013h

+dd 054304f8eh

+dd 0bab1dcf9h

+dd 00cf001f4h

+dd 011e3f28bh

+dd 02ea07c65h

+dd 0ff0a169fh

+dd 0468b6d81h

+dd 0b503e7e7h

+dd 02c24df48h

+dd 0a0710ebch

+dd 071b1ef19h

+dd 0844c98d2h

+dd 09e3a9909h

+dd 0745940d3h

+dd 0119fccadh

+dd 073df14afh

+dd 0e1a50e9bh

+dd 0be9bb4afh

+dd 046de7059h

+dd 0d5110bcbh

+dd 002cd4f06h

+dd 028a2cf1fh

+dd 02b26304ch

+dd 06d5187beh

+dd 015bd7612h

+dd 0e94db45fh

+dd 0a02d3d2bh

+dd 073610d61h

+dd 0053d73c4h

+dd 009a377a3h

+dd 0b0aabb91h

+dd 0a488c411h

+dd 09720e625h

+dd 095ad0788h

+dd 063b42151h

+dd 067f54164h

+dd 0b3d11056h

+dd 0c5cdb70fh

+dd 0b9b911f1h

+dd 0f7856b6eh

+dd 00619fdd9h

+dd 058fda33bh

+dd 0d230c6dfh

+dd 0cb4573cch

+dd 0162e98c6h

+dd 060b30550h

+dd 0f7f0aa1eh

+dd 0b89b461dh

+dd 05f5430e8h

+dd 0078504a4h

+dd 065f782e7h

+dd 04cb7da0bh

+dd 01d515182h

+dd 0d4f2aa9ah

+dd 06b8701b4h

+dd 0d30df7d7h

+dd 05eb2b0d3h

+dd 03fa93c5dh

+dd 0a87f0418h

+dd 0a531e26bh

+dd 03fbcf3c3h

+dd 05b8a5d9eh

+dd 0e19d4349h

+dd 07addd766h

+dd 08340b1e5h

+dd 02bb3318fh

+dd 0db3cf9b9h

+dd 0528c7ba3h

+dd 09a227f5bh

+dd 0a59d63d2h

+dd 088f16b15h

+dd 06dbc9c1dh

+dd 017aee22eh

+dd 0c188d922h

+dd 060c858d6h

+dd 0cb356df0h

+dd 0c03df402h

+dd 0658ba2e1h

+dd 02cecc8dah

+dd 0c93bfefeh

+dd 09050a3a7h

+dd 0bcffd144h

+dd 03a08c3d9h

+dd 0155b411ah

+dd 0a706a319h

+dd 07cb91dfbh

+dd 0d98c5c1dh

+dd 070836c2ah

+dd 017446d14h

+dd 01c5c9efbh

+dd 04296f9e0h

+dd 04f09aafeh

+dd 029ce98d3h

+dd 0638c6235h

+dd 0afba261bh

+dd 0ef18a429h

+dd 07a555891h

+dd 06bdd83e3h

+dd 0ed52e42eh

+dd 09ae62a55h

+dd 0e3daafc2h

+dd 0e5b8b588h

+dd 094dcc093h

+dd 0fd406d05h

+dd 052d4c858h

+dd 0ba80c899h

+dd 08fae0315h

+dd 0a939eb45h

+dd 0cec1300dh

+dd 09a19dfceh

+dd 0b451d79fh

+dd 087fe959ah

+dd 0e3d9c035h

+dd 0cfc43ab3h

+dd 0fba0d048h

+dd 0d2ccd229h

+dd 020ecc0deh

+dd 0ce1ca410h

+dd 035369f91h

+dd 0a3eda0c3h

+dd 079ee95f6h

+dd 02d81f19fh

+dd 0489490f1h

+dd 018ab2493h

+dd 04da60759h

+dd 05f886880h

+dd 09ff742cch

+dd 08c16db1ch

+dd 03bf3b964h

+dd 020ba05feh

+dd 007c5fe62h

+dd 07ae8e1f6h

+dd 0c4da43eeh

+dd 0a55793d7h

+dd 0e9534745h

+dd 0c71fd220h

+dd 0b85e7eb0h

+dd 00a50dd71h

+dd 04f30a00dh

+dd 00eb37ccah

+dd 068b92730h

+dd 0257377a2h

+dd 0ce36b377h

+dd 0a0f97191h

+dd 04f46778ah

+dd 07586a087h

+dd 03689a2ddh

+dd 0b1c2e268h

+dd 0a1f66547h

+dd 036d500b3h

+dd 0b92701e8h

+dd 00333ad10h

+dd 01bd0fde0h

+dd 0957ec2dfh

+dd 094011d6ah

+dd 0cb8733c6h

+dd 0e794942ah

+dd 0a4322ea5h

+dd 058f09d05h

+dd 04d07c048h

+dd 07ae69d1ah

+dd 0ecbbb7b9h

+dd 0c6bd6c87h

+dd 08e44a26ah

+dd 094556d61h

+dd 01356914ch

+dd 07b701555h

+dd 08e4a1cb5h

+dd 032cc9473h

+dd 056caddaah

+dd 019686077h

+dd 0c6aa78beh

+dd 01bc3f46ch

+dd 0a99e9a12h

+dd 0ab523664h

+dd 0e40e8dedh

+dd 0f2ad85f3h

+dd 01b3bdc80h

+dd 09728d847h

+dd 02c3c6d42h

+dd 02503a30eh

+dd 0831b4eb3h

+dd 0606d109fh

+dd 0bc0b9727h

+dd 062cd96d5h

+dd 0c535869bh

+dd 039dbf7cch

+dd 0dcb26e43h

+dd 01c52e92eh

+dd 07c36387bh

+dd 09e89842eh

+dd 096bdd1a8h

+dd 04a5e681ch

+dd 072b0fd8fh

+dd 03227d922h

+dd 051056df2h

+dd 0e416283ch

+dd 04988d4b1h

+dd 0223fcd9ah

+dd 09197d67bh

+dd 044185791h

+dd 09d0f27c5h

+dd 089b12821h

+dd 0b80f1321h

+dd 051399a26h

+dd 054031396h

+dd 00853aae7h

+dd 060be1497h

+dd 03f370f8ch

+dd 0f9a64062h

+dd 019101eb1h

+dd 0ff3f3dd1h

+dd 0e0f679c6h

+dd 0e0878cf1h

+dd 04ae632e0h

+dd 063497196h

+dd 052f12835h

+dd 06a06d1bbh

+dd 0c7dc8f19h

+dd 04de7438fh

+dd 08c5b4c2bh

+dd 0e12ddcfch

+dd 02b704a2dh

+dd 05e51f0a8h

+dd 03b50193eh

+dd 0662dfb63h

+dd 02cdbcaebh

+dd 0bd16de3dh

+dd 0d9bfe41fh

+dd 0b0c01e05h

+dd 0fa42dfb7h

+dd 01f664d33h

+dd 019b22387h

+dd 0c19fba57h

+dd 0cd1ab204h

+dd 014b86fd1h

+dd 0d92fc1e1h

+dd 0c51c9a55h

+dd 03af6a3fdh

+dd 065d71b37h

+dd 0ee21c6a6h

+dd 0218826d1h

+dd 093767f2bh

+dd 05227f4fah

+dd 0a4ef9c5ch

+dd 07f14c215h

+dd 02140be20h

+dd 0d3675dc7h

+dd 0863c8d17h

+dd 0131b5e1ch

+dd 02379e9d0h

+dd 0705d1db5h

+dd 020969d7dh

+dd 04c666527h

+dd 0324ac8b1h

+dd 0fb8d75d1h

+dd 0d1760defh

+dd 08daed20fh

+dd 021631b2eh

+dd 0d2144461h

+dd 04ab0dd20h

+dd 06f5761ach

+dd 04d56a05eh

+dd 06cc31079h

+dd 0feec8e5bh

+dd 0c0d19e42h

+dd 0486fa435h

+dd 0a5bea5edh

+dd 03fd4d476h

+dd 03d1213a6h

+dd 029871faah

+dd 02bb2af1bh

+dd 00b991756h

+dd 03fdfc8e0h

+dd 05f811551h

+dd 03e7ba378h

+dd 05cd47981h

+dd 0602d0f19h

+dd 0331eaa5ah

+dd 0d2a1efd3h

+dd 0b8799487h

+dd 0c4a639cfh

+dd 034d227bch

+dd 0d8b41911h

+dd 070b8480ah

+dd 05cbcb8d2h

+dd 0d15230f9h

+dd 0b0dfcd45h

+dd 059e5ebd0h

+dd 0ff5c7b60h

+dd 0a29f31fdh

+dd 023d476ech

+dd 0a9ebc222h

+dd 0f93b5929h

+dd 03ce30db7h

+dd 0d7223081h

+dd 0fd98a04bh

+dd 0ed68b53dh

+dd 0ffb58eaah

+dd 0fb3ab835h

+dd 08afeaf95h

+dd 0ef8d10d8h

+dd 01b91d21ch

+dd 0ff595967h

+dd 07784b31bh

+dd 01bd01985h

+dd 0825eefb5h

+dd 03ec55195h

+dd 027f36633h

+dd 0395361b3h

+dd 049243ddah

+dd 0ed9e4c4fh

+dd 0ca3ea1d4h

+dd 0e4d17b91h

+dd 0901f4283h

+dd 08d99904ah

+dd 051defbcah

+dd 0ade62eaah

+dd 0ccb0a1c8h

+dd 05156943ch

+dd 0c7b8f927h

+dd 03961caaeh

+dd 05b57a2f7h

+dd 036b94a9dh

+dd 0c1a70596h

+dd 0b47d2990h

+dd 0d4024430h

+dd 04246a6ach

+dd 0805769abh

+dd 05797c408h

+dd 0fc68c632h

+dd 006a59bddh

+dd 0f4ca38c2h

+dd 0eb4614d2h

+dd 04c86f03bh

+dd 0742cf7bbh

+dd 0305734c8h

+dd 0ae6c699ch

+dd 0a12f745fh

+dd 01d232638h

+dd 08768008ah

+dd 0cba669eeh

+dd 0a8da3ce8h

+dd 0c2b844bch

+dd 0c6caf4feh

+dd 01068cd68h

+dd 08f9b965fh

+dd 022a704bbh

+dd 043a7a7cdh

+dd 060a08fbeh

+dd 092739948h

+dd 08e9ed70fh

+dd 03b6b9e3dh

+dd 065de5335h

+dd 0fe0afd96h

+dd 065468fech

+dd 0f052daebh

+dd 0df622282h

+dd 0813ec052h

+dd 0535a5ad7h

+dd 07acb4f21h

+dd 01cefb66eh

+dd 0dca43fd6h

+dd 0e4cb1358h

+dd 0857782b8h

+dd 091cbc74bh

+dd 05f26a5eeh

+dd 0de022dcdh

+dd 0b0205274h

+dd 0bc2823a0h

+dd 07bad8862h

+dd 042485f77h

+dd 09abf96a8h

+dd 0bffc14a1h

+dd 09c5f1164h

+dd 0e5fbc4e7h

+dd 0875c9ac2h

+dd 04479ed1eh

+dd 0b777ace1h

+dd 07aeee541h

+dd 002d1abb7h

+dd 0856d46afh

+dd 065cd08c1h

+dd 00729de35h

+dd 07c6bf592h

+dd 0e63fad05h

+dd 0bc15ef2dh

+dd 0a34521a1h

+dd 0f5ce6c19h

+dd 02f739a88h

+dd 0ac5bcef4h

+dd 001991661h

+dd 0f9db46adh

+dd 061af7a00h

+dd 0b3df6b9fh

+dd 0b1fe9a18h

+dd 0cca2e89fh

+dd 08d97cb44h

+dd 0b174b20bh

+dd 015519ee3h

+dd 098b99b32h

+dd 0bbae8064h

+dd 01bbe3051h

+dd 08f3d3248h

+dd 090af0761h

+dd 0c8ba229eh

+dd 028cd1855h

+dd 0b3bd2dc5h

+dd 03af81baah

+dd 0fb5ef5d5h

+dd 028c6d286h

+dd 070b76ff5h

+dd 03ce4a01ah

+dd 09848e211h

+dd 0499b9debh

+dd 0384d7ee8h

+dd 0150d49e7h

+dd 0cb8246b6h

+dd 0cd52aaf2h

+dd 0ba4f5d39h

+dd 06c6edc9bh

+dd 0305f3c9eh

+dd 0a2fd4802h

+dd 00ef7c36dh

+dd 0cf15798fh

+dd 065b7bdc8h

+dd 097ce3c7dh

+dd 02bd11080h

+dd 0ba3219feh

+dd 0baf1b60bh

+dd 057a5e358h

+dd 0a0e5e990h

+dd 025db38a7h

+dd 092acd0d1h

+dd 0b90e81d3h

+dd 0a1c86cb9h

+dd 0f0d729c4h

+dd 07be30e13h

+dd 09bb86ddah

+dd 079345b79h

+dd 00938ab60h

+dd 045520936h

+dd 070cc541bh

+dd 046444860h

+dd 020a0fd34h

+dd 0880f58c1h

+dd 0b16bacefh

+dd 03da9cc96h

+dd 02cb1d79ch

+dd 0e4c70aa6h

+dd 0300cb2f9h

+dd 0c3980e61h

+dd 07b16d378h

+dd 0105db258h

+dd 00218b6f8h

+dd 0de30ed99h

+dd 06466f9b1h

+dd 0e172e0f2h

+dd 0c5848385h

+dd 094bcd45bh

+dd 02d96a5a4h

+dd 04c012511h

+dd 07ce15e0ch

+dd 0a765821ah

+dd 07bb2a7f2h

+dd 05311c1c5h

+dd 058503a29h

+dd 05c0ae315h

+dd 048d270d9h

+dd 008b966a6h

+dd 09d2c9923h

+dd 0a77b234bh

+dd 03fb028deh

+dd 011e8a7ech

+dd 05fb3e838h

+dd 0de5a2808h

+dd 0e9777469h

+dd 0a19fffb0h

+dd 071a9089fh

+dd 0a997b232h

+dd 0eca813ech

+dd 0c1cf984dh

+dd 00847823ch

+dd 08dfec356h

+dd 0180f0252h

+dd 03a857262h

+dd 08ec59e32h

+dd 01f1536b9h

+dd 099af7c0bh

+dd 04089f983h

+dd 06da4f8e2h

+dd 054f6023ch

+dd 0685f85e4h

+dd 022610e8bh

+dd 00ee01d58h

+dd 0633b1bf8h

+dd 0fd9eb41dh

+dd 0f5b970beh

+dd 08d0ecfa8h

+dd 07bfd79e0h

+dd 0d5072d36h

+dd 0dae1dca3h

+dd 098409d4eh

+dd 0cd62ef70h

+dd 0e4ca91e6h

+dd 0168ff583h

+dd 028c65342h

+dd 0bf839223h

+dd 092556d42h

+dd 0e24d1212h

+dd 09b3c576bh

+dd 0dd45fd1eh

+dd 095761693h

+dd 0684a6b8ch

+dd 0fdd27550h

+dd 0071f5657h

+dd 009829066h

+dd 0c6839206h

+dd 0306396d1h

+dd 0cb8de1f2h

+dd 0a1b16c88h

+dd 062975c0dh

+dd 0a25261a4h

+dd 09c237514h

+dd 0cee21db9h

+dd 0bdbf3624h

+dd 0595893eah

+dd 0ce700b36h

+dd 0ddbd468bh

+dd 0598ce55ch

+dd 02d4ad080h

+dd 02bbd1166h

+dd 00316e1a3h

+dd 00b312135h

+dd 07e1936d9h

+dd 08952b45bh

+dd 0ac613698h

+dd 027583ff5h

+dd 0eaad67c7h

+dd 00ec5830dh

+dd 0a1480343h

+dd 02a2d0456h

+dd 0d82d8ddeh

+dd 07c292287h

+dd 0b8ee9028h

+dd 098dda5f1h

+dd 0ab260b4ah

+dd 03cdb82c4h

+dd 0ea240bb9h

+dd 053978df2h

+dd 04ebfb1f4h

+dd 0ab8e7cb5h

+dd 0413ac243h

+dd 0a9becde4h

+dd 01a04fab3h

+dd 078d4b2e0h

+dd 0561be1a5h

+dd 0e29f38cch

+dd 0c17e6f14h

+dd 0dfb22f93h

+dd 0e1a75d93h

+dd 0e2e0c9c1h

+dd 05c67cd4bh

+dd 0986a7ee9h

+dd 0837d9e03h

+dd 0810180c7h

+dd 0a29b9f8ah

+dd 01e955f7fh

+dd 0a44ce90eh

+dd 084449cf3h

+dd 01256a20dh

+dd 03ce1f12ch

+dd 0000ef0c1h

+dd 0c582068ah

+dd 01f3412ach

+dd 019cb431dh

+dd 01af9b245h

+dd 06678846dh

+dd 0d4b9cb71h

+dd 07ce15eb3h

+dd 094e94c80h

+dd 04beeece1h

+dd 0f5fbbbfch

+dd 076f7f267h

+dd 0d3369aa6h

+dd 0ac79dbb6h

+dd 03463d66bh

+dd 0f3012976h

+dd 09adf313dh

+dd 06300158ch

+dd 0b24e1064h

+dd 0059ed26bh

+dd 0d4fe44c9h

+dd 04c24c236h

+dd 0860f1481h

+dd 058a6bc6ah

+dd 08269c13bh

+dd 09b8bef19h

+dd 05d28cafeh

+dd 0b70c7548h

+dd 00c75c8f6h

+dd 011975486h

+dd 072876918h

+dd 0ab73b109h

+dd 076d70fdch

+dd 0045c2ef1h

+dd 0a1794d57h

+dd 0d5101ee2h

+dd 04a1219d6h

+dd 0eb17af3ah

+dd 07ad714f8h

+dd 0b8241e67h

+dd 0326f1f63h

+dd 01cde44fah

+dd 0ad8c9691h

+dd 08845e1ech

+dd 0081da30ch

+dd 06211315bh

+dd 0189faa0ah

+dd 09fd29da5h

+dd 02267df4bh

+dd 005352e6fh

+dd 0784902c8h

+dd 09c6608e0h

+dd 06d8b00bbh

+dd 00eceaba8h

+dd 0e1e4d20dh

+dd 0d7c12d07h

+dd 0f106081eh

+dd 067ed56e5h

+dd 0a96a154fh

+dd 072dfb1c7h

+dd 00ed50383h

+dd 006673217h

+dd 0bba3a9c2h

+dd 0f1f03bd1h

+dd 02289864ch

+dd 04a80a1b9h

+dd 08ae84367h

+dd 0ae2c2bb7h

+dd 09f0a9e27h

+dd 0f9373f2eh

+dd 045dfc1d7h

+dd 0a72ceb9ch

+dd 09dbde63ch

+dd 0f1921130h

+dd 0238a971ah

+dd 046e6152eh

+dd 0310d0919h

+dd 0bcc2825ah

+dd 0588b30a0h

+dd 09062e997h

+dd 0a08095ffh

+dd 08160231bh

+dd 06aa056ddh

+dd 040c37264h

+dd 0ada5a1deh

+dd 035f0f0d3h

+dd 00265bb39h

+dd 05ca45010h

+dd 0212c4d16h

+dd 0d813eb45h

+dd 0cda511b7h

+dd 0c2195f87h

+dd 02d0cfcf1h

+dd 02126a0e1h

+dd 0c6f146d9h

+dd 04cd4ed69h

+dd 0bfeb29edh

+dd 02dd53be2h

+dd 000feac8ah

+dd 0c6ba247ch

+dd 04b0c1281h

+dd 044aa8840h

+dd 05cdada77h

+dd 0c7c7cb49h

+dd 03fea4deah

+dd 0bcf7bd8eh

+dd 042778797h

+dd 08ae6008ah

+dd 047324185h

+dd 055b4b86fh

+dd 0fc876447h

+dd 03d247914h

+dd 098e432ceh

+dd 03ab28d48h

+dd 029fa9a29h

+dd 0681b5819h

+dd 0ad535f08h

+dd 090a4d76bh

+dd 012337372h

+dd 0e417d544h

+dd 0b64bd8b1h

+dd 0ca55c289h

+dd 0adbc6e06h

+dd 0c50a3700h

+dd 0a003af97h

+dd 073792ec6h

+dd 054ae4e71h

+dd 0cac482c8h

+dd 0e4b41b74h

+dd 05e5851e9h

+dd 0921c467bh

+dd 0d461577ch

+dd 03c760f65h

+dd 0bea8ea44h

+dd 0c968b756h

+dd 0319ab616h

+dd 025543f34h

+dd 06f438fcbh

+dd 01ac69c86h

+dd 0a6fea958h

+dd 072e65c38h

+dd 0f7656bb9h

+dd 009fd0cd1h

+dd 0e2a0d007h

+dd 04cf075efh

+dd 01b8c07a1h

+dd 0a984258ch

+dd 00027b4f5h

+dd 0f893ddfeh

+dd 0badd1665h

+dd 0cad04213h

+dd 03c623d4bh

+dd 054a93b52h

+dd 0e16a12eeh

+dd 03b74136fh

+dd 0526880dah

+dd 05ac9683ah

+dd 07f55d4cdh

+dd 02cd8ac57h

+dd 0b6799470h

+dd 0cec50f7bh

+dd 0e65ff9a4h

+dd 07503e32eh

+dd 053945a48h

+dd 01ef2b71bh

+dd 0be4d4500h

+dd 07f068916h

+dd 02df64914h

+dd 09356ef5ch

+dd 01518e44ch

+dd 0ddeb6f3bh

+dd 07c6d6da1h

+dd 070bc83c6h

+dd 08c022dabh

+dd 0495e8f91h

+dd 0d2370304h

+dd 00faae8deh

+dd 0ba493a92h

+dd 01f017aebh

+dd 0098f007eh

+dd 051a9f615h

+dd 077b9cbceh

+dd 04368cadah

+dd 0c856dfach

+dd 0f81943f8h

+dd 08091f285h

+dd 06bc46aeah

+dd 0f8bfb45dh

+dd 052315829h

+dd 0703739ach

+dd 0d8263bc3h

+dd 02b2cc2deh

+dd 0035f1c04h

+dd 0501aa775h

+dd 0675b6e9dh

+dd 0aa01bfaeh

+dd 007600006h

+dd 05b3dfd47h

+dd 0923e9c2eh

+dd 0cf460cf5h

+dd 05c8a7649h

+dd 08edcabe8h

+dd 0fa88ad4dh

+dd 01efd3ce2h

+dd 06bcd1f24h

+dd 05fa7d29ah

+dd 0f52c4d0ch

+dd 0d883b596h

+dd 0d3c24cb8h

+dd 0abbf5065h

+dd 017b09c59h

+dd 08339ac02h

+dd 03da97c72h

+dd 0c4ab9ee0h

+dd 0e95f2334h

+dd 0ffee471dh

+dd 052e605b7h

+dd 085e492b7h

+dd 09576c79dh

+dd 0fea1cc79h

+dd 0024cc43ah

+dd 05d4e2557h

+dd 015f28392h

+dd 05b4525a7h

+dd 0e786c097h

+dd 039ee9974h

+dd 060aa2e60h

+dd 03290185bh

+dd 035f6f84eh

+dd 0505f18e2h

+dd 04fea6ee1h

+dd 04f82b78ah

+dd 0dc2d0f97h

+dd 055f24ba5h

+dd 0a40c846ch

+dd 06019f72bh

+dd 012b1afadh

+dd 0aafe6730h

+dd 0b9579ee7h

+dd 0f43d8a70h

+dd 02acae3a5h

+dd 02623ee3ch

+dd 0c7cc16b1h

+dd 04d345471h

+dd 030899a27h

+dd 0707f849eh

+dd 00be7d215h

+dd 0d74b37d6h

+dd 03f4be63eh

+dd 0ede61339h

+dd 07932eeb0h

+dd 045ddc3ceh

+dd 093d0b155h

+dd 073fd22b0h

+dd 0b810d2b4h

+dd 0d1c39cb2h

+dd 0207b4560h

+dd 082c7e5ffh

+dd 04a1e868dh

+dd 0d02f5151h

+dd 0b079310ch

+dd 0ebb9167fh

+dd 0acf6f7fah

+dd 0091e7363h

+dd 0289de9b4h

+dd 0a9b02d57h

+dd 04fe8ec21h

+dd 0601ef2ffh

+dd 01042bc57h

+dd 03c9b513dh

+dd 041fe6c69h

+dd 06981ce10h

+dd 04b0fdc84h

+dd 087573244h

+dd 0fe41ccc5h

+dd 0a0616e02h

+dd 058483b7eh

+dd 03555e485h

+dd 0b2a65d49h

+dd 0030f7050h

+dd 01e0780beh

+dd 0812449ebh

+dd 08e8dc161h

+dd 0b6d762c3h

+dd 0e4bf453dh

+dd 08709481ch

+dd 0e6937955h

+dd 033264505h

+dd 088fee019h

+dd 0f123eccfh

+dd 0b99738d4h

+dd 074f6af44h

+dd 00e356f54h

+dd 00f5642fbh

+dd 0f4b68d7bh

+dd 0be170d0bh

+dd 0d9978f2dh

+dd 0aee0aad7h

+dd 08d8bd670h

+dd 0711cd1e7h

+dd 0b8a02e79h

+dd 040cb7351h

+dd 00c2acdf4h

+dd 01ffa6f9bh

+dd 0d202af84h

+dd 0ed811a19h

+dd 0e71d14a9h

+dd 0bfd51d85h

+dd 00bdbe979h

+dd 0422b480eh

+dd 05afecc96h

+dd 0a02fe37ah

+dd 0fbd7c0c8h

+dd 0875d7b28h

+dd 0e27bf55ah

+dd 0db2776f3h

+dd 08fd3c4a5h

+dd 02147c4bfh

+dd 005683a1ch

+dd 0c81340fbh

+dd 02d0a7eech

+dd 01d0b5801h

+dd 013a476f2h

+dd 0d7e52b8ch

+dd 0c23b07eah

+dd 0f74bb074h

+dd 08f0a9addh

+dd 0f648fec8h

+dd 09dddca19h

+dd 015cd41c5h

+dd 0871bf5c0h

+dd 0031aa454h

+dd 076f27e72h

+dd 06b6c6ab0h

+dd 0537964d5h

+dd 041ee1c0bh

+dd 0ae350a83h

+dd 0ddee8f9ch

+dd 0a12cc9c3h

+dd 040b9047eh

+dd 01e33b879h

+dd 09809be98h

+dd 0a7d0c746h

+dd 049b31acdh

+dd 0d3956716h

+dd 0e6e9f031h

+dd 00bdb98e0h

+dd 06e911484h

+dd 064c77d76h

+dd 00263f10ah

+dd 03bdfd2ceh

+dd 0b6eeb8f7h

+dd 09edbd5a7h

+dd 06e22bba5h

+dd 060cf327eh

+dd 0d4cb74c3h

+dd 0cdfa78f8h

+dd 0fc9c8669h

+dd 0c19eb296h

+dd 05e326f9bh

+dd 0a683d45fh

+dd 0e0535210h

+dd 04b970f1ah

+dd 0ecd57a99h

+dd 0fda96b16h

+dd 09a89a380h

+dd 0c9f01dfah

+dd 021b17cd6h

+dd 0ef091ceeh

+dd 0e6ce8bf2h

+dd 08dfd8ef7h

+dd 08bb7bc1bh

+dd 0c7315f09h

+dd 016587ddch

+dd 0884684e1h

+dd 0f0672d1bh

+dd 0292c63c3h

+dd 0ac764328h

+dd 09fc0629ah

+dd 02f47c403h

+dd 022baa542h

+dd 087a6c13bh

+dd 0acb54635h

+dd 021dca1ffh

+dd 031d2ccc8h

+dd 0015fad78h

+dd 0da0e7457h

+dd 067c10356h

+dd 0e8750059h

+dd 01db7db73h

+dd 068c046c7h

+dd 0b66aff8fh

+dd 03c70a09fh

+dd 00acb7d87h

+dd 03b544fbfh

+dd 0d4fc42b9h

+dd 07e2dab61h

+dd 05b3e4b82h

+dd 0cf777a72h

+dd 0a320c1e5h

+dd 08b24e695h

+dd 0fc1c9620h

+dd 06b3c7339h

+dd 0fa0ff1a6h

+dd 073400677h

+dd 02fddb759h

+dd 0020d8f66h

+dd 0d2da32ech

+dd 0318ecabch

+dd 0bf4f4dfdh

+dd 0f92fce84h

+dd 0c72acd71h

+dd 004cfe78dh

+dd 0b1c548ceh

+dd 0222eb537h

+dd 040417dbfh

+dd 05e73a266h

+dd 0e431f0a1h

+dd 0917c36a3h

+dd 0c131c8ceh

+dd 0eebc32c7h

+dd 019842da8h

+dd 0ba14cde0h

+dd 0e13adee5h

+dd 0c876ca85h

+dd 0fa58a746h

+dd 0c995244bh

+dd 0474aab29h

+dd 07ea50348h

+dd 0a4da32e4h

+dd 015afb2d7h

+dd 057f6efadh

+dd 0295cdf6eh

+dd 067f8acb5h

+dd 0186244f4h

+dd 0adb26a2fh

+dd 09a4385a9h

+dd 0815b4222h

+dd 030b559feh

+dd 0dba6575fh

+dd 0870413eeh

+dd 0d7178b31h

+dd 08a159193h

+dd 09bd1a067h

+dd 0865835f5h

+dd 0fe668628h

+dd 015a3f55bh

+dd 0b1c85f91h

+dd 03aab4d32h

+dd 0fc0e9088h

+dd 038d6289dh

+dd 052e7e426h

+dd 0fb03f3afh

+dd 0b653da7ch

+dd 0266335e2h

+dd 0a3619fc2h

+dd 08430fc92h

+dd 0332135f7h

+dd 06d26c4e7h

+dd 001d73c97h

+dd 08919ea2bh

+dd 05a725ebch

+dd 0487117abh

+dd 0d0e63eb6h

+dd 0d4834961h

+dd 02c75675eh

+dd 04a3cf23eh

+dd 071c0d92bh

+dd 00c8b7933h

+dd 0ca7e5d14h

+dd 042168d92h

+dd 0de7e0515h

+dd 04634c5efh

+dd 0f29b0599h

+dd 05c6fda1dh

+dd 0784d0e12h

+dd 0f3b60c1ch

+dd 070b0a178h

+dd 0b5288161h

+dd 0e939e186h

+dd 0f032b0a7h

+dd 029e7d9d5h

+dd 0b0ebbc12h

+dd 02ffb435ah

+dd 032387241h

+dd 0dad30c82h

+dd 098548d66h

+dd 04024eaffh

+dd 08eda967ch

+dd 046808b63h

+dd 01619aa61h

+dd 0663f9506h

+dd 0853f1de6h

+dd 09b850f28h

+dd 057cc0811h

+dd 0e11f1c3dh

+dd 06e38660fh

+dd 0e6412783h

+dd 0aa060f2dh

+dd 03c48946dh

+dd 09eadbaedh

+dd 048582c6ah

+dd 0303c4a07h

+dd 005f9fd60h

+dd 048095e0bh

+dd 06816d6b8h

+dd 03a2a5cc3h

+dd 01ccf7ce1h

+dd 0261ebe17h

+dd 04e879f16h

+dd 07a1fab12h

+dd 0fc90ffe5h

+dd 0746a2583h

+dd 02a9e2b5eh

+dd 013f1a64eh

+dd 0351744b8h

+dd 0991493d1h

+dd 068733b39h

+dd 08a77189eh

+dd 06ad7b236h

+dd 002bd5c18h

+dd 026885b34h

+dd 032f399d0h

+dd 0eacac9c0h

+dd 099aeb149h

+dd 0df34dd96h

+dd 0f566a244h

+dd 010f0ab2eh

+dd 06d035733h

+dd 0d6cc42e1h

+dd 029d8aaadh

+dd 04ca380b9h

+dd 0e3d33f21h

+dd 07a23514bh

+dd 05a7a03a6h

+dd 0ee6eb623h

+dd 00b2782d3h

+dd 0af94ba2fh

+dd 040a39b1ah

+dd 09d16a9d8h

+dd 073399d69h

+dd 08156c5fdh

+dd 039db85dah

+dd 07ae9e597h

+dd 080fff0e0h

+dd 0bf57ca54h

+dd 0d911881bh

+dd 0c506ea46h

+dd 059b98f27h

+dd 0160afe17h

+dd 04a0b8f91h

+dd 081f01084h

+dd 0e6e26a86h

+dd 0d2fa25f7h

+dd 03fec581eh

+dd 0ab374132h

+dd 038a2976bh

+dd 0329250f4h

+dd 0350767c7h

+dd 0dfb92cd4h

+dd 04b1e793fh

+dd 041d6ea57h

+dd 045410ea9h

+dd 05258aee3h

+dd 083a6ed10h

+dd 0ae09625fh

+dd 0700a56b1h

+dd 05f507790h

+dd 0114a6f2bh

+dd 049a9539ch

+dd 0d382a70dh

+dd 065c0852fh

+dd 0efef9ec5h

+dd 0ad1a0269h

+dd 050b967a8h

+dd 0cb88469ch

+dd 0e9d57e52h

+dd 02a1bda6ch

+dd 0fd0a1308h

+dd 002281c5bh

+dd 023c7c7eah

+dd 0313dc498h

+dd 0ed322da9h

+dd 0e2df71e6h

+dd 09963fc35h

+dd 0124ffc55h

+dd 07ce3e6abh

+dd 06b58280fh

+dd 05c05a425h

+dd 0f904f7dfh

+dd 09d83c3a6h

+dd 0bf8fa3a8h

+dd 03ea7addch

+dd 0f097fffdh

+dd 0e27460ech

+dd 07a36bc8dh

+dd 095b3b178h

+dd 0aa91cfb9h

+dd 0a272b688h

+dd 0bb9a0a35h

+dd 0a0963a46h

+dd 0eba4a5b1h

+dd 0e58c503ah

+dd 0b0d6d436h

+dd 0c27092f0h

+dd 0bd624965h

+dd 00e8d315dh

+dd 046ebbc2ah

+dd 015a8e45ah

+dd 00a6884fah

+dd 0c1799133h

+dd 0b049caech

+dd 006e48e78h

+dd 00807c604h

+dd 050d39075h

+dd 0fadd8debh

+dd 0a5d7be0ch

+dd 04d95beaah

+dd 0fa98515fh

+dd 0a0ed295ah

+dd 0e2a817cdh

+dd 094d007eah

+dd 096f4a315h

+dd 064fd4946h

+dd 0dd368df5h

+dd 00fac38feh

+dd 07cbc7740h

+dd 08aba2192h

+dd 02869fe0eh

+dd 0acfdf6ffh

+dd 06bc7cb95h

+dd 064a76f68h

+dd 0a65ad7cdh

+dd 01ccbc024h

+dd 00796d26fh

+dd 06f23514dh

+dd 0628f21e4h

+dd 05b7fa8e5h

+dd 0e5eb98e9h

+dd 0cd108d87h

+dd 019d44b4bh

+dd 02d0e78abh

+dd 0c7375eeeh

+dd 0a3d37236h

+dd 066121c71h

+dd 0ebe67c1ah

+dd 0f21f9b46h

+dd 05fd11910h

+dd 0e2a391ceh

+dd 09308745ah

+dd 0a199e152h

+dd 0cfb2627ch

+dd 0048cafa6h

+dd 010716a2bh

+dd 0ec45cacbh

+dd 0f04175a6h

+dd 0c8aba511h

+dd 0edb1d2f8h

+dd 0b7893787h

+dd 0b36d4674h

+dd 003de788bh

+dd 0018b6dceh

+dd 087b206e2h

+dd 0bb32293ch

+dd 08b8f4969h

+dd 0ef950129h

+dd 008e41e91h

+dd 0678079f6h

+dd 0f7788393h

+dd 04af69bd6h

+dd 0058439dch

+dd 04262c427h

+dd 091c1cc52h

+dd 0c78b94e7h

+dd 0035e4d53h

+dd 0200f9d3fh

+dd 04e99d1b8h

+dd 0af46040dh

+dd 0c445ee45h

+dd 0d9376eadh

+dd 0939d733fh

+dd 0fe3b78ech

+dd 099989858h

+dd 0c9275809h

+dd 04abb6748h

+dd 0dbdc6f39h

+dd 05f58176ch

+dd 0a4c8015ah

+dd 04a5f0de2h

+dd 0cdc89afeh

+dd 0909797f6h

+dd 0ee7918edh

+dd 00cb90d33h

+dd 00b4ce27ch

+dd 0478cf5e5h

+dd 0d553793eh

+dd 036a2a1d4h

+dd 07c872387h

+dd 015e19cech

+dd 00707d58bh

+dd 03a7f6c56h

+dd 0e8a33460h

+dd 07ac15b12h

+dd 0056be370h

+dd 08b86efd8h

+dd 0f276e266h

+dd 01764fa31h

+dd 056ec2158h

+dd 082026680h

+dd 0181fb30fh

+dd 0ab044581h

+dd 073a7dfa1h

+dd 016b22b0eh

+dd 0ca6bafc0h

+dd 0ced5f0f7h

+dd 04760e6b7h

+dd 0d56a9b8eh

+dd 093a84d87h

+dd 089b36681h

+dd 068644e92h

+dd 0e658c6a1h

+dd 009f89cc7h

+dd 0a50dd009h

+dd 0dafd81e6h

+dd 053671177h

+dd 027f03e60h

+dd 0ec8caeb6h

+dd 0c3f059f8h

+dd 0b0bfbc06h

+dd 04fd32176h

+dd 0c51d94efh

+dd 0b0e7cdc4h

+dd 02df06175h

+dd 0720048ebh

+dd 0ca17e0a0h

+dd 0b378c5d6h

+dd 0f4c6b256h

+dd 009a27953h

+dd 0ecadbc95h

+dd 00aee6012h

+dd 0f112cd0dh

+dd 02a61f6ach

+dd 0624752d0h

+dd 0fb7a549ah

+dd 0b0ef4ce9h

+dd 033c07eb6h

+dd 0e6e3db92h

+dd 023a5b016h

+dd 085af96e3h

+dd 08d0ed82eh

+dd 0724ed4f8h

+dd 08590a1bfh

+dd 0cb09c8a1h

+dd 078da1438h

+dd 015b3f6c6h

+dd 0641a4611h

+dd 09c437815h

+dd 037ed40bbh

+dd 080f08633h

+dd 000f7b831h

+dd 0492c144ah

+dd 05fcf6097h

+dd 0894ffa73h

+dd 04b5614ebh

+dd 0249f6384h

+dd 0f1ce3f3dh

+dd 03bd3f9a8h

+dd 0dda84ad7h

+dd 052ccb93dh

+dd 012f8657eh

+dd 0b2284090h

+dd 08c6b6d1ah

+dd 02a373e48h

+dd 0a5cf9784h

+dd 011fe3adch

+dd 03f59218fh

+dd 0f85a888fh

+dd 001decd9fh

+dd 072fa6200h

+dd 029353e33h

+dd 071721105h

+dd 00cd1003ah

+dd 010813758h

+dd 092f70ba7h

+dd 0f78b0f51h

+dd 0c305ef3dh

+dd 0a2170d2dh

+dd 0613a8e83h

+dd 014419052h

+dd 0a67a9ebdh

+dd 0b9e5799eh

+dd 051a256d6h

+dd 0823d372fh

+dd 00c24b5a3h

+dd 05017c452h

+dd 085c4a867h

+dd 0d0d6956fh

+dd 05659c1e4h

+dd 0d52b0549h

+dd 00815b9bdh

+dd 0bd378152h

+dd 0ee901aech

+dd 0695d9965h

+dd 094932ca8h

+dd 04174d764h

+dd 0f3555ee2h

+dd 02351dd40h

+dd 071d2c7b9h

+dd 029c5df42h

+dd 02d038a07h

+dd 0cec46b14h

+dd 034f3df60h

+dd 0fbde7e86h

+dd 071ab91a4h

+dd 03f45e824h

+dd 048f569e0h

+dd 014338548h

+dd 04db4d33ch

+dd 0071370a9h

+dd 033660224h

+dd 071337927h

+dd 0c07eaa10h

+dd 053200c19h

+dd 0effc86c9h

+dd 07f4a852ch

+dd 0089cbb2bh

+dd 0cf84a22bh

+dd 03a334f7dh

+dd 0ab8246f6h

+dd 0c12894e0h

+dd 0c5616a48h

+dd 0f2be1f40h

+dd 028b75056h

+dd 07837407bh

+dd 0ced9342eh

+dd 068e9592ch

+dd 0e1cfde94h

+dd 01399ffa5h

+dd 006610e43h

+dd 07a9bbb94h

+dd 0a1f8a4e4h

+dd 054cb573ch

+dd 088832eddh

+dd 0d5e521dbh

+dd 0277dc2f8h

+dd 0a05bcce5h

+dd 044a5309ah

+dd 0b66c6397h

+dd 0e0d51715h

+dd 0516b1bbeh

+dd 0d1526f56h

+dd 05c472e7bh

+dd 09504ed68h

+dd 011dcfecah

+dd 045d76d33h

+dd 0e66b28d6h

+dd 0b3273af6h

+dd 0f6effa30h

+dd 0f7b4c3ddh

+dd 017df6ac4h

+dd 0acfae661h

+dd 0e04b26e1h

+dd 09e8f7f2dh

+dd 05ed82acah

+dd 077c8d62ch

+dd 019c67f31h

+dd 06e757ac6h

+dd 07dd4ef57h

+dd 0346c5e02h

+dd 0b4a15c36h

+dd 0fa41b889h

+dd 019d886f8h

+dd 098a80581h

+dd 0d5b58ba6h

+dd 0718ae2feh

+dd 0a333caa9h

+dd 0daac9ba6h

+dd 0c76da8a1h

+dd 03d708568h

+dd 0fa5d7f82h

+dd 0d5357c48h

+dd 0033106f3h

+dd 0a04a8667h

+dd 0a83443e2h

+dd 0dce1e348h

+dd 0114f92c9h

+dd 0e595de18h

+dd 0ecff87f6h

+dd 05e7e6c6ah

+dd 07a01e087h

+dd 0a92c0d2eh

+dd 03a980b46h

+dd 0852ea62fh

+dd 0940eaf8fh

+dd 03c47e6e9h

+dd 071d96ba2h

+dd 0401ab395h

+dd 0bbda52bch

+dd 04cc133c3h

+dd 0d2bae1abh

+dd 0a911b282h

+dd 0be5c126ch

+dd 0baa77a9dh

+dd 025e47433h

+dd 0fc8bfef1h

+dd 076096583h

+dd 05b76c421h

+dd 01886baeeh

+dd 01ebc6364h

+dd 08cd83fbdh

+dd 01f2c82c8h

+dd 05313205dh

+dd 04c2f81d6h

+dd 05317f23bh

+dd 07789f39dh

+dd 052530d13h

+dd 07aaf8cb4h

+dd 06c661e39h

+dd 028960017h

+dd 0c99bf511h

+dd 074616373h

+dd 06b925722h

+dd 04ab75355h

+dd 01073a21dh

+dd 05a1a1a9dh

+dd 0cf4dcefdh

+dd 031b7e766h

+dd 05c1ffed4h

+dd 0f3fef658h

+dd 07e5d82a1h

+dd 00a368089h

+dd 0dd309e2fh

+dd 0814caaf5h

+dd 04155032fh

+dd 03df2db51h

+dd 0d6cc1bf5h

+dd 00da3bceeh

+dd 047cfe28eh

+dd 0c23125f5h

+dd 0b7323258h

+dd 0cace055dh

+dd 01ade9d64h

+dd 0a3b1cda5h

+dd 0d521a159h

+dd 025f2c53fh

+dd 0c07f853fh

+dd 013494c9bh

+dd 099c2b2e8h

+dd 0dc747eb3h

+dd 0d526c2afh

+dd 088ea7613h

+dd 09a413063h

+dd 03df0c6f9h

+dd 03261f06dh

+dd 0a87396c6h

+dd 0f86b83afh

+dd 0446204d1h

+dd 09e375d39h

+dd 0eeb8d536h

+dd 013d01c19h

+dd 0834a951fh

+dd 09e94ee51h

+dd 0c21b2f23h

+dd 0b5d6cdffh

+dd 0ad9f2d8eh

+dd 05131000dh

+dd 05ef1fd57h

+dd 0a1038df5h

+dd 02fd2cfe1h

+dd 0d72363ach

+dd 02fe4fccdh

+dd 014ca5551h

+dd 092af610ah

+dd 01da80772h

+dd 02acf36f9h

+dd 0b81b140fh

+dd 06df9d2c2h

+dd 03df85a36h

+dd 0b00e2979h

+dd 0f2371eddh

+dd 0ac89ee90h

+dd 05e0f0315h

+dd 099cbb755h

+dd 0d417fd62h

+dd 0c4b84454h

+dd 077047f3ah

+dd 0a81a60ceh

+dd 07d9a38dfh

+dd 07d492318h

+dd 07a0c5cebh

+dd 0f2d6e7bdh

+dd 0cdfaca25h

+dd 0efd3af49h

+dd 0a491cbd4h

+dd 098321ed1h

+dd 00c9b3800h

+dd 0c6b2122eh

+dd 06f0a88dbh

+dd 09266f7c8h

+dd 062d9ce10h

+dd 09db5d082h

+dd 000081700h

+dd 0d8baf2c4h

+dd 09132ab18h

+dd 0aa7a7acfh

+dd 056d60c38h

+dd 04964b493h

+dd 0a9d618e4h

+dd 057afb5a0h

+dd 0305e8ed5h

+dd 0c59a0830h

+dd 0407d1134h

+dd 0225cb703h

+dd 0ded58e57h

+dd 0b5578acah

+dd 080811833h

+dd 0e304dc6ah

+dd 05b6481edh

+dd 0327d87e2h

+dd 03d3ee900h

+dd 0c2bff5e5h

+dd 076f2d8c3h

+dd 05d1e390ch

+dd 037084c8dh

+dd 0f09c489bh

+dd 083569699h

+dd 0905835c8h

+dd 00529bdadh

+dd 0577890b2h

+dd 04af83a67h

+dd 0ee9e8684h

+dd 09f640606h

+dd 0ccd0e0b9h

+dd 0d2f8ea36h

+dd 0fbdb9a9dh

+dd 05aa017d4h

+dd 03c44b80dh

+dd 06266fdcfh

+dd 01da2152dh

+dd 04d82f675h

+dd 082d7484eh

+dd 04673a53ah

+dd 06467721fh

+dd 0a48d2ae2h

+dd 05afe9807h

+dd 0a18cac80h

+dd 0248d1016h

+dd 0d73595bbh

+dd 0f810fd15h

+dd 0d5f26bf2h

+dd 02ef1c8a5h

+dd 0ed9c3dbbh

+dd 0073d1ecfh

+dd 0236a16deh

+dd 04f4d1a11h

+dd 059544e62h

+dd 03d28ca78h

+dd 05e1642e8h

+dd 07f491a1eh

+dd 0bb0df095h

+dd 0c2eb1d64h

+dd 0316c8a1bh

+dd 02257400fh

+dd 05897c369h

+dd 007f3d634h

+dd 0a5fef6c5h

+dd 0b1052571h

+dd 06c017537h

+dd 08c79419bh

+dd 040bfbb7eh

+dd 0ebcf8b72h

+dd 0c76f61f5h

+dd 0b5b3801dh

+dd 0c1f4a316h

+dd 0afa8fd07h

+dd 04fa87b9ah

+dd 0d70cb27fh

+dd 010d7af67h

+dd 089a13427h

+dd 09d76e1f9h

+dd 0e7571617h

+dd 0a17198d3h

+dd 0f1f52885h

+dd 09d3f58d1h

+dd 021a15d56h

+dd 0a4cd8bb8h

+dd 02e4088cfh

+dd 022d35f40h

+dd 06e060beeh

+dd 0ba9f4277h

+dd 0c60092eeh

+dd 0c1ec1128h

+dd 07daa9dc2h

+dd 0735ea257h

+dd 099a2793ah

+dd 06e4caa03h

+dd 00afc7516h

+dd 08d731d7bh

+dd 0438d6509h

+dd 01256eceah

+dd 068a6cafah

+dd 061e2ed23h

+dd 0e217d32eh

+dd 05f83178bh

+dd 018657ce6h

+dd 063b0f3a4h

+dd 0efc6e4adh

+dd 0f7826774h

+dd 0220215c1h

+dd 0754208e3h

+dd 06706c545h

+dd 027b22eb5h

+dd 0d9f6de83h

+dd 0cb49a33eh

+dd 0b1d67db2h

+dd 06e11f4b4h

+dd 008a463a4h

+dd 0a5e6a606h

+dd 01b2e3300h

+dd 01fd7cf96h

+dd 002dca87dh

+dd 0c8218aa9h

+dd 0958f6a9fh

+dd 0d619a0aeh

+dd 022e48c02h

+dd 00191cfb5h

+dd 00a7e1c23h

+dd 0e2184e93h

+dd 034e03each

+dd 0f95041dah

+dd 066c89645h

+dd 03b9392a6h

+dd 0d7f0fa9eh

+dd 06341760bh

+dd 0a8b61c49h

+dd 08b6e3505h

+dd 010a17364h

+dd 05860eba6h

+dd 0f2421cffh

+dd 09ae44e97h

+dd 0b056c327h

+dd 0584e25efh

+dd 06b2a671bh

+dd 061b55bb2h

+dd 0a603ee3ch

+dd 04df548dbh

+dd 0d701e1feh

+dd 052c7c088h

+dd 0f7ba91b0h

+dd 0c6d30231h

+dd 0d5a6b62dh

+dd 02140448dh

+dd 08ee47c8eh

+dd 08b9165b2h

+dd 09811318ah

+dd 0620fc499h

+dd 0412ef176h

+dd 0e399dd08h

+dd 0e95b3de3h

+dd 0539ac9ceh

+dd 0a5420554h

+dd 02ba5a888h

+dd 0ffe281a3h

+dd 0b0ff6c9ch

+dd 03b198f27h

+dd 085a0c979h

+dd 0178ebfa5h

+dd 0eb8d3116h

+dd 0c46cbd66h

+dd 05fce5b4bh

+dd 09ea7a6b8h

+dd 078b599e0h

+dd 07a125057h

+dd 0fd2a133ch

+dd 088a74223h

+dd 02be4f5a5h

+dd 02fc4c4f1h

+dd 0d791bf3eh

+dd 0388b86f3h

+dd 06de6e130h

+dd 0db559fa1h

+dd 0318f51e7h

+dd 0d0aad861h

+dd 0de3daad8h

+dd 04ab3b97dh

+dd 0b4a149b2h

+dd 08cd7cd6fh

+dd 085f68c23h

+dd 05b82608ch

+dd 0be8d404eh

+dd 0fc0f44f0h

+dd 045bfd074h

+dd 009c528f2h

+dd 06676c89ch

+dd 02804aee3h

+dd 0e7d34a55h

+dd 02a471b89h

+dd 04846549fh

+dd 0396247ceh

+dd 09a37329fh

+dd 0cad82c68h

+dd 036ff776ah

+dd 0a63d1e76h

+dd 0cb181602h

+dd 0666d377ah

+dd 06968e76bh

+dd 0a6ef4d8fh

+dd 0bdbcb4cfh

+dd 057a12c28h

+dd 0d99e3fdeh

+dd 09205472bh

+dd 054e99a0bh

+dd 0dc1cb1d5h

+dd 0caa898eah

+dd 030d63d25h

+dd 029eb30f9h

+dd 0455e8731h

+dd 0f6c7a5aah

+dd 0afb44806h

+dd 06bc61755h

+dd 0b6d64802h

+dd 0c3da206ah

+dd 09f5acee8h

+dd 08ad6844dh

+dd 0f67c73c7h

+dd 03fa9e39ah

+dd 049f34c04h

+dd 06b4dd2b6h

+dd 0d65f68e4h

+dd 032e642a7h

+dd 0a6fe4e80h

+dd 0fa4c6f5fh

+dd 020530e23h

+dd 033fb1112h

+dd 034e7534dh

+dd 0a9390d3ah

+dd 06316c3e5h

+dd 0334d146eh

+dd 055d4316bh

+dd 04ea0e743h

+dd 09709b4a4h

+dd 0b63eb890h

+dd 0a2ea7830h

+dd 039f116c8h

+dd 010829464h

+dd 0f4eaef23h

+dd 048fef484h

+dd 02f2d7bd3h

+dd 033dd324eh

+dd 030ca9193h

+dd 0bc92d3edh

+dd 0f1ae9a32h

+dd 0f042ab40h

+dd 0a7d9bf5ah

+dd 08a84ea6dh

+dd 07b2fd4e4h

+dd 0b5a439e0h

+dd 0f7645d85h

+dd 0825f0a30h

+dd 05dd16d18h

+dd 051be7575h

+dd 0406ca7c1h

+dd 0b06c0de4h

+dd 0fb0de821h

+dd 02367a19ah

+dd 017b49afbh

+dd 081a589e0h

+dd 0e1446cb8h

+dd 056130d19h

+dd 06dd84c7dh

+dd 04a8a7fe8h

+dd 08136bf22h

+dd 089a7c73fh

+dd 023c89e80h

+dd 0db758fd7h

+dd 0b7279bafh

+dd 0e58cd674h

+dd 03949a1d8h

+dd 06cc91c97h

+dd 0a6f4439ah

+dd 01518b643h

+dd 015e5ea47h

+dd 09b6f6a39h

+dd 03d70d4c0h

+dd 06696b125h

+dd 05113d7beh

+dd 0a38f53f8h

+dd 0fca8271fh

+dd 0537d7927h

+dd 086ee6451h

+dd 031be2903h

+dd 05401c7c6h

+dd 0265f406ah

+dd 0e4b56827h

+dd 0f033680ah

+dd 08f0a95bdh

+dd 087a28dc2h

+dd 00929b291h

+dd 0817130e1h

+dd 0bd3bfba9h

+dd 0934793c2h

+dd 0b9eefe55h

+dd 0d47ba197h

+dd 0343f6412h

+dd 0e1acb525h

+dd 0f09e90fah

+dd 09917112dh

+dd 0fa62c74eh

+dd 06ba7627fh

+dd 03de4c55eh

+dd 03fa38604h

+dd 0175f99aah

+dd 0acd54d32h

+dd 0ff131d38h

+dd 07527b09dh

+dd 0071c137eh

+dd 0427a88a8h

+dd 02b9bd408h

+dd 0cab821b9h

+dd 052daae4dh

+dd 0ba40e37fh

+dd 0418dd00ch

+dd 0e30e40dch

+dd 0fd931755h

+dd 03e9f542eh

+dd 0ff4a960ah

+dd 0c4b17d01h

+dd 0870be803h

+dd 0f5e01395h

+dd 0d3b590b4h

+dd 0863b2ea0h

+dd 0829d53c6h

+dd 07cdbf0eah

+dd 072f171a2h

+dd 0a7f819ebh

+dd 003b1527ch

+dd 06990d9b5h

+dd 0d0c923e1h

+dd 01216a47ch

+dd 0f1c1c300h

+dd 0b0574fc0h

+dd 0c08615f3h

+dd 0c953a4deh

+dd 06336c830h

+dd 023742befh

+dd 0135bb944h

+dd 092c4bcb9h

+dd 0bb84b2d7h

+dd 06d3cfd90h

+dd 068bae358h

+dd 08b916324h

+dd 0c18ef4b1h

+dd 02702e717h

+dd 002ce1186h

+dd 0fab4401dh

+dd 018c39f61h

+dd 03eefcaf9h

+dd 0253081e0h

+dd 09bdae46ah

+dd 01396904dh

+dd 05dab6e7eh

+dd 0f0aafcb5h

+dd 0454fb77bh

+dd 04fd667b9h

+dd 009069587h

+dd 0f6260f4eh

+dd 01bdca454h

+dd 00c5f5fd6h

+dd 017a6da72h

+dd 0e7f4dd90h

+dd 023c3c39bh

+dd 022818632h

+dd 00be0478bh

+dd 0748359b8h

+dd 0f2dc9558h

+dd 0493535e7h

+dd 0d8e63f61h

+dd 05d73ad15h

+dd 050411364h

+dd 0d404c3d5h

+dd 06847e2c3h

+dd 095975ddeh

+dd 086209a1ah

+dd 02302563ah

+dd 0249def96h

+dd 04abbd9beh

+dd 043bfb0dah

+dd 08b896080h

+dd 0b0271153h

+dd 07c6901cah

+dd 01f044821h

+dd 07f0d5e25h

+dd 057f0bde8h

+dd 0d6ded8a2h

+dd 00e04ea94h

+dd 0d4801d8bh

+dd 01fb14a91h

+dd 0f91508beh

+dd 031352891h

+dd 0f6d3f161h

+dd 0592455dch

+dd 0cfd4894eh

+dd 090e2fa14h

+dd 02eb095eeh

+dd 02360ad54h

+dd 06a5b6aach

+dd 0a585e85dh

+dd 065282e5ah

+dd 0516bbce5h

+dd 059f3cf24h

+dd 0a7c0a24bh

+dd 08bb30c1bh

+dd 0ad031ef4h

+dd 0e515865ch

+dd 0070cc32bh

+dd 0d59b05cah

+dd 082db681ah

+dd 043ca6b1dh

+dd 08e9e7647h

+dd 02ccc7629h

+dd 0b723ff0ah

+dd 05171d0d0h

+dd 09b410e00h

+dd 00dfd157dh

+dd 08d49c5a2h

+dd 0e3fe8a9bh

+dd 0e71928dah

+dd 064ad4566h

+dd 0e1c7ec66h

+dd 0b325b607h

+dd 0c881b1eah

+dd 018744a39h

+dd 0a69cfd0ah

+dd 0849afecbh

+dd 06d13c8e3h

+dd 03d506a32h

+dd 0e82ee61dh

+dd 0caf702a4h

+dd 09da03193h

+dd 07a3a0ee2h

+dd 06d34ee18h

+dd 000b57a75h

+dd 0b2366f27h

+dd 0a2011aa8h

+dd 052e38047h

+dd 0385ca929h

+dd 07ef4c942h

+dd 05ba92ff6h

+dd 0fd027295h

+dd 03efe6a6ch

+dd 0be1427ach

+dd 0701f41d2h

+dd 03135d9aeh

+dd 0adea3fdbh

+dd 0432539b4h

+dd 0492b762ch

+dd 0345682e6h

+dd 08649f0e3h

+dd 024204468h

+dd 019bb4f72h

+dd 008ed0464h

+dd 05c88793bh

+dd 06a44cb40h

+dd 0c1aabd7eh

+dd 045df16b7h

+dd 0b44acec3h

+dd 06401925ah

+dd 05c49d6afh

+dd 09d471251h

+dd 029341f36h

+dd 0d7b2eb48h

+dd 0ff14a0d9h

+dd 0a68f0a44h

+dd 0b47ddd6bh

+dd 077da2df1h

+dd 02d81bc51h

+dd 0941daa5bh

+dd 04744e6a8h

+dd 0c76f3c60h

+dd 0c199942ch

+dd 02aff0da8h

+dd 0ea2539c9h

+dd 0d5cd308fh

+dd 02bec1cd3h

+dd 0d1704272h

+dd 0c7be25e5h

+dd 0dd8b3ca3h

+dd 0e3d510efh

+dd 07aeb702dh

+dd 0c83c2992h

+dd 05c7520c8h

+dd 0e4286925h

+dd 0bdd3a1c9h

+dd 08b0dace1h

+dd 076a781f4h

+dd 0c82f2a0bh

+dd 081611474h

+dd 03d49f026h

+dd 0b002b675h

+dd 0f3640025h

+dd 000009b24h

+dd 01442966ah

+dd 0bcf686d3h

+dd 080bd31f7h

+dd 00e3f427fh

+dd 00499b331h

+dd 0d7f3bea7h

+dd 0d182a00bh

+dd 0151e167bh

+dd 032c30c22h

+dd 0102437cbh

+dd 072ab6321h

+dd 024c09db1h

+dd 0b5794e57h

+dd 06d03cf2dh

+dd 03db2c03dh

+dd 01e239745h

+dd 08020d35ch

+dd 037164505h

+dd 0304a2ba6h

+dd 01bd174c2h

+dd 03a9722fah

+dd 0b928e6fah

+dd 048df5a57h

+dd 08df4cc10h

+dd 03126d197h

+dd 0e3e0c770h

+dd 0fe029e0ah

+dd 0c524e117h

+dd 045a5ee3ch

+dd 0f0fd2760h

+dd 0ac28703fh

+dd 019270357h

+dd 07926b0e1h

+dd 0554cea6fh

+dd 04899aa96h

+dd 0a93fcb97h

+dd 0341b9cc8h

+dd 032ef1884h

+dd 0480cac56h

+dd 00e1f82afh

+dd 02af9e52eh

+dd 08c347e56h

+dd 06d27cfaah

+dd 0b19ebb2dh

+dd 09a017615h

+dd 00383a921h

+dd 01b4da17eh

+dd 03c2865e6h

+dd 01fe5e04ah

+dd 03d8a6145h

+dd 0cc135c25h

+dd 0523bf241h

+dd 0aaeddbaeh

+dd 08a6f4bf9h

+dd 0d28529f0h

+dd 068b11e42h

+dd 07d567660h

+dd 066bc1062h

+dd 0d7dc986ch

+dd 0a8c113a7h

+dd 04587ab05h

+dd 078e2ee32h

+dd 0affc298ch

+dd 0c2dd2772h

+dd 0c7fdfd87h

+dd 04c8a67a7h

+dd 075f4bc2fh

+dd 0ed085f55h

+dd 0b14743c7h

+dd 04f6ef24ch

+dd 031164a3bh

+dd 0483673deh

+dd 055b28531h

+dd 005f371a5h

+dd 02f65a18ah

+dd 08a2abb4eh

+dd 0e3be2319h

+dd 09a262cf4h

+dd 017ddd0aah

+dd 0899a8679h

+dd 0f03d99dah

+dd 08f0decf3h

+dd 06e31d5bdh

+dd 0355f0039h

+dd 0d23315f3h

+dd 02c3e7a24h

+dd 05e54d839h

+dd 0a61463f3h

+dd 01687668bh

+dd 08d0f8804h

+dd 0026e90cdh

+dd 081ec61c8h

+dd 034b5f115h

+dd 074306c10h

+dd 09fbde125h

+dd 0e423e192h

+dd 0d31071a9h

+dd 017d9bcfdh

+dd 0ca297f5ah

+dd 046f27404h

+dd 026254345h

+dd 0ea60dc61h

+dd 087e06276h

+dd 0a60789c8h

+dd 0d7a2bd05h

+dd 0f3086f8eh

+dd 079419849h

+dd 00b6c6c67h

+dd 01e22588ch

+dd 0d620a0f0h

+dd 0468928c4h

+dd 0f57aec81h

+dd 09c034c57h

+dd 0706d8b4ah

+dd 0ccf65c98h

+dd 04c1d309bh

+dd 0c067a845h

+dd 02262d5aeh

+dd 0ff9f919ch

+dd 0f0b4af27h

+dd 0f8e17385h

+dd 02e69e5f7h

+dd 0eabf3db7h

+dd 0b20475cfh

+dd 04bc8246bh

+dd 02ba82ea2h

+dd 0df9b0b99h

+dd 0e7f18322h

+dd 09d71f27ch

+dd 0dac87dbbh

+dd 0f235cf92h

+dd 00b178b54h

+dd 04f1d846bh

+dd 0603e046ch

+dd 059c4c2ach

+dd 09e202572h

+dd 0020ee4e6h

+dd 01a7a2156h

+dd 0d8442b73h

+dd 048243974h

+dd 0c0e96b61h

+dd 07594761dh

+dd 0ab39b8bdh

+dd 03dcbeb19h

+dd 07e992e05h

+dd 0c64d9cf7h

+dd 0734638ach

+dd 0180d3271h

+dd 05cb0f5c8h

+dd 09cab6ea0h

+dd 065a6813ch

+dd 06f255573h

+dd 07f15c795h

+dd 021411aa1h

+dd 01013dd97h

+dd 0cd181ad8h

+dd 04ad18017h

+dd 0df4ae1bfh

+dd 0efc97477h

+dd 095f3b3ebh

+dd 03031d7aeh

+dd 0ca4b609ah

+dd 07a4a50a9h

+dd 066c50abah

+dd 0eb6bc8ach

+dd 0a081998ch

+dd 0715a1a3bh

+dd 0bdf84224h

+dd 014dcbefdh

+dd 0a649366eh

+dd 0cd2f01e5h

+dd 02e4e13e1h

+dd 01ba0477eh

+dd 02d4f1312h

+dd 0dcb05cd9h

+dd 0da721601h

+dd 0db05c81ch

+dd 0c7810caeh

+dd 0026ccbdbh

+dd 036a28917h

+dd 03d6335b2h

+dd 0ca2930c9h

+dd 00a6304e9h

+dd 0775b5f7ah

+dd 05d1f6bfdh

+dd 01029ce76h

+dd 0ce4f0d88h

+dd 01abf0663h

+dd 014d0ae7ah

+dd 07273fd69h

+dd 0864eb9d7h

+dd 0c23a212ch

+dd 0d461d317h

+dd 0663ed29dh

+dd 04daf5b01h

+dd 0b851729fh

+dd 024fe54a5h

+dd 054e52075h

+dd 0e1ea5b08h

+dd 04d29e28eh

+dd 0b44352dch

+dd 00d481f72h

+dd 0c84f56d6h

+dd 08d344419h

+dd 0a9d1e664h

+dd 0c0c9e98ch

+dd 0cf50a0d0h

+dd 03e754192h

+dd 09b654a6ah

+dd 0c0d680e2h

+dd 08c5ba056h

+dd 0b4fcf1d5h

+dd 066587833h

+dd 04f32d71ah

+dd 0b96b2043h

+dd 0b70dfd7eh

+dd 05d437790h

+dd 0f657b299h

+dd 0e9127fe6h

+dd 00ae59936h

+dd 0ec432a95h

+dd 01c3a0c03h

+dd 0a35dc1a3h

+dd 033913eeeh

+dd 068a88d0ah

+dd 0ae2b2e52h

+dd 0ff94b7ddh

+dd 0c3388566h

+dd 08b6df0f2h

+dd 004b1a39ch

+dd 076685c8fh

+dd 011796212h

+dd 007614427h

+dd 08da998d1h

+dd 02161bcd8h

+dd 098046d3ah

+dd 04a552a62h

+dd 0e4cf307ah

+dd 072daf9bdh

+dd 0a7921b9dh

+dd 06f3b9ab2h

+dd 03bba3735h

+dd 02ee3bdc8h

+dd 06b0cf0b0h

+dd 028034d94h

+dd 056a6e50ch

+dd 0f5aa957eh

+dd 01f2c6e63h

+dd 0f12dfa9fh

+dd 0dd5fc29ch

+dd 0260f04edh

+dd 0fe1ddda0h

+dd 04a53e01bh

+dd 04abb3022h

+dd 073594a30h

+dd 0a1021097h

+dd 011cd78d5h

+dd 047523a7fh

+dd 076041588h

+dd 0b20a0f19h

+dd 0c4ff828bh

+dd 0d42b5a0bh

+dd 0b8295706h

+dd 05ea6a054h

+dd 041dc0a0ah

+dd 052bd8552h

+dd 0bdbf60cfh

+dd 09f16d8deh

+dd 092079925h

+dd 08762d464h

+dd 03e79c7e2h

+dd 089fcdc79h

+dd 0f5c3128eh

+dd 0a03c7686h

+dd 028a050bbh

+dd 065f636bah

+dd 0ce8dc371h

+dd 03e03f78ch

+dd 06fe0cd30h

+dd 053d4838fh

+dd 0623c9de7h

+dd 069d09404h

+dd 056245653h

+dd 0de7cdd05h

+dd 02b90e203h

+dd 05233f500h

+dd 029b89089h

+dd 0f2377884h

+dd 040f1fd8ch

+dd 0c6cba96ah

+dd 05359b7e1h

+dd 0005ab780h

+dd 09bde0332h

+dd 079f28fa9h

+dd 024d5b9cdh

+dd 0f358540bh

+dd 0fe009237h

+dd 0d64e22feh

+dd 0c757652ch

+dd 097c745cbh

+dd 013f18f94h

+dd 01be5061fh

+dd 0428149e1h

+dd 0c2b2687ah

+dd 048b6eb9dh

+dd 0bc6d0906h

+dd 0644488c1h

+dd 0576dd3c5h

+dd 085d0f5d1h

+dd 0fe05cc29h

+dd 0c86a7d51h

+dd 03754548bh

+dd 0744f8339h

+dd 0599cfd76h

+dd 0c3321b60h

+dd 0e6868236h

+dd 0c548e408h

+dd 0da30985ah

+dd 05754900dh

+dd 0e3eefcf1h

+dd 0fcf20e03h

+dd 0918e0fe7h

+dd 01950e856h

+dd 01794e52dh

+dd 08ce858a4h

+dd 09020bd03h

+dd 0aafb50c8h

+dd 01343372bh

+dd 02c9d36eah

+dd 086c00330h

+dd 05a61abd1h

+dd 0d42ca4dbh

+dd 0c54a22cch

+dd 071362a19h

+dd 0ed8c97c3h

+dd 0f031ab27h

+dd 07abe4b4dh

+dd 032244a74h

+dd 02ae4b3afh

+dd 0dca46296h

+dd 01cdf41e8h

+dd 080308c41h

+dd 0ebe33a27h

+dd 07748defch

+dd 02ae257bdh

+dd 0b8abb3f3h

+dd 000b249ffh

+dd 0f15ccc93h

+dd 012d1edefh

+dd 0499dc37eh

+dd 01bcaa80ah

+dd 080acebb0h

+dd 0fdca39b9h

+dd 0c33c1511h

+dd 0ff0d582bh

+dd 012b0cc2bh

+dd 0c3e5286dh

+dd 02b03207dh

+dd 07abd50ebh

+dd 028c8a02ch

+dd 0edc21226h

+dd 09d5905beh

+dd 0e689d398h

+dd 035b10572h

+dd 0da1f7276h

+dd 03d65b206h

+dd 06da7143ah

+dd 02adcdaadh

+dd 08e425bf7h

+dd 0d3537b86h

+dd 07d1d7bc6h

+dd 0f0f5cdb5h

+dd 0699502b7h

+dd 02ebc1527h

+dd 0fc30d6c6h

+dd 0b15ab9adh

+dd 0b3f920cfh

+dd 0b591952fh

+dd 0aa16273ch

+dd 010d39554h

+dd 0cae39b97h

+dd 0eb569a88h

+dd 0b750e691h

+dd 0a1bdb35fh

+dd 0c3747209h

+dd 0e0b8d781h

+dd 0a2fd6743h

+dd 0f0fc3037h

+dd 0f5915109h

+dd 07fa20c7fh

+dd 02512927eh

+dd 08ed54d2fh

+dd 082129672h

+dd 0bca61bf9h

+dd 07d8b4614h

+dd 0b5c767e4h

+dd 02f770ea8h

+dd 016e75836h

+dd 039049bdfh

+dd 02f6f0ebah

+dd 07e7ea841h

+dd 079532a25h

+dd 0c4c7e202h

+dd 08795a299h

+dd 0aff3c4b7h

+dd 007711947h

+dd 0636f37f3h

+dd 0a6e81666h

+dd 082223b4ch

+dd 044cc2667h

+dd 068e5edc6h

+dd 01ee835aah

+dd 09f1ad3c1h

+dd 0154a92a7h

+dd 0c495f5a5h

+dd 04dd5fb2eh

+dd 086fefd56h

+dd 04fd5a82ch

+dd 0826d9070h

+dd 06fd768ceh

+dd 0cf950df2h

+dd 0797dfa89h

+dd 077bf5ac9h

+dd 0b66de0ach

+dd 01761f2bch

+dd 033e8bb61h

+dd 09c0f0da3h

+dd 0b3a71ab8h

+dd 07fb3734fh

+dd 023498965h

+dd 0e81665a2h

+dd 0f3ac1990h

+dd 02ccb1811h

+dd 06c46cc08h

+dd 053b0e012h

+dd 06d33c3f8h

+dd 0a1f5a3b3h

+dd 0be48b0bch

+dd 066c279bch

+dd 0ac11156ch

+dd 01a37823ah

+dd 034a7af61h

+dd 08c1f9bf7h

+dd 01c48b6bdh

+dd 0cf9b77a1h

+dd 0f83328d7h

+dd 06c679f9ch

+dd 0ba5d96c6h

+dd 021029fcfh

+dd 05242c0a9h

+dd 0403bcdaah

+dd 0dd386d1dh

+dd 0657a7000h

+dd 04f4c3137h

+dd 0e7f40433h

+dd 0e4db0bcfh

+dd 0f48feab9h

+dd 05ae01579h

+dd 03d0c3532h

+dd 07c76f9e8h

+dd 025e272bah

+dd 0e29bbdbbh

+dd 007d13999h

+dd 06504945dh

+dd 067b341beh

+dd 0e7b72af4h

+dd 084fe2fb1h

+dd 01af18fd7h

+dd 0065024e5h

+dd 0e05fa571h

+dd 0b6e51134h

+dd 050f9faa4h

+dd 03826c6afh

+dd 00cab2ae1h

+dd 05f950976h

+dd 0215cd81fh

+dd 015de721ch

+dd 0bd3e012eh

+dd 01f751169h

+dd 01618d4c3h

+dd 00af47d9eh

+dd 0f2bf693eh

+dd 0f9c7f675h

+dd 04851bf03h

+dd 019c0cc2bh

+dd 0afad45adh

+dd 0c429a4c9h

+dd 07afffb9eh

+dd 051805df7h

+dd 0dc90a7cch

+dd 07e2dfe83h

+dd 0d41111e2h

+dd 0328613ach

+dd 09b221bb6h

+dd 0fe4019e1h

+dd 0372e679ch

+dd 0023fc31bh

+dd 074584072h

+dd 08121858ch

+dd 08926e7e9h

+dd 0d256f557h

+dd 0002fee6ah

+dd 04ab4e32ch

+dd 089016220h

+dd 0d11d4f6bh

+dd 0f5672726h

+dd 0987e0e74h

+dd 0785cfd35h

+dd 0953d8ad0h

+dd 0f44d1bf1h

+dd 042bdcf2ah

+dd 032b9d361h

+dd 0f69ce052h

+dd 031aaf891h

+dd 0f367acb2h

+dd 03508be93h

+dd 0984b7a75h

+dd 036d70592h

+dd 064c2cbc3h

+dd 0303f926ah

+dd 09b76a052h

+dd 003ee90a5h

+dd 053bc5aa7h

+dd 08725d993h

+dd 095b22665h

+dd 0822efdf4h

+dd 0c15797f6h

+dd 0f6728b6eh

+dd 0d8937212h

+dd 0cc5f207eh

+dd 0003b849eh

+dd 0c1363a9ah

+dd 0b0be00f2h

+dd 0f9eb7361h

+dd 0b33e3336h

+dd 0e883dd43h

+dd 04e74555eh

+dd 07e92ca01h

+dd 08b6b6abah

+dd 0cef27a4ch

+dd 0d01d2082h

+dd 06b09d0e3h

+dd 038bb96ebh

+dd 062b1553fh

+dd 0752f5666h

+dd 0485a841eh

+dd 06ce8681eh

+dd 0483faeb3h

+dd 0499192f4h

+dd 058a794a1h

+dd 09a2acef0h

+dd 085ea1a4dh

+dd 066b08c59h

+dd 03ad22b4dh

+dd 055c57f80h

+dd 06daf8d80h

+dd 0f0239119h

+dd 021704a1ah

+dd 01db60db4h

+dd 07116bb02h

+dd 039e66425h

+dd 00d7e51f3h

+dd 0053c198fh

+dd 00e427bbdh

+dd 010548b5eh

+dd 0b965c721h

+dd 09e65c75ah

+dd 0b6d3e643h

+dd 0d3a45398h

+dd 02bb1caddh

+dd 0fe237dcah

+dd 0e2a02345h

+dd 0cf1daa4ah

+dd 0a5987088h

+dd 0ec704bbah

+dd 0ec78f152h

+dd 02b729b2dh

+dd 04da8a1a0h

+dd 0253c1c39h

+dd 036cff8ach

+dd 03ea92624h

+dd 019e6913ch

+dd 04165f5e4h

+dd 058544c64h

+dd 06def1921h

+dd 005b262fah

+dd 028b92b9ah

+dd 024b398d7h

+dd 03bd17815h

+dd 0415a7f2ch

+dd 07eae9ce3h

+dd 0281f0744h

+dd 02962843eh

+dd 0106025d3h

+dd 0b3ab0c98h

+dd 092a1ce14h

+dd 03efb6813h

+dd 02e06684dh

+dd 09aadb938h

+dd 034b0a907h

+dd 01d08a815h

+dd 0835d4f6ah

+dd 05a2adddah

+dd 07ddbfeb0h

+dd 0ce684ec9h

+dd 093a6d46ah

+dd 0fe22f860h

+dd 0eb670355h

+dd 045050392h

+dd 0e438ceeeh

+dd 06b8e1377h

+dd 04a7deb0dh

+dd 06aaa9308h

+dd 027aedc0bh

+dd 046b85901h

+dd 0f50bde68h

+dd 00bc3a4c3h

+dd 0a6959440h

+dd 032cd63ceh

+dd 0dce3e127h

+dd 00e0b821ch

+dd 0721f49abh

+dd 09737335eh

+dd 01e7af9b9h

+dd 0924865aeh

+dd 05410817ch

+dd 0a7d3f044h

+dd 08e681747h

+dd 0b837dbd5h

+dd 008fa0672h

+dd 0bb31c5a0h

+dd 0ec4a4e05h

+dd 0a4d087d3h

+dd 0d3b38736h

+dd 0e8c3a56ah

+dd 0559a4db3h

+dd 0351c11b1h

+dd 02ab10309h

+dd 0f17ea7b6h

+dd 06e1a6892h

+dd 016d34467h

+dd 0365657a6h

+dd 0cc75d26dh

+dd 0eae1fc6eh

+dd 08fbad695h

+dd 0ef15ee14h

+dd 002e4d89ch

+dd 0cc73cefbh

+dd 01f338863h

+dd 0eb32f15bh

+dd 00d6f333bh

+dd 08f644201h

+dd 0dff7d738h

+dd 08e5adf6eh

+dd 0a0d0d5a6h

+dd 08c10ddd2h

+dd 0b1158ebbh

+dd 0d1fab02ch

+dd 016c06533h

+dd 036605cdch

+dd 01fa6c6f1h

+dd 02ae6bbc8h

+dd 0171227f2h

+dd 05409921ch

+dd 0e767404ah

+dd 08a4f2e44h

+dd 068530951h

+dd 0696c3383h

+dd 0e70ebd86h

+dd 0fe12c893h

+dd 03b38d354h

+dd 0027d1256h

+dd 0b99c2a0eh

+dd 0313cf4a2h

+dd 0f83f2993h

+dd 0fce4e3f7h

+dd 0f1f635f8h

+dd 0d5774e2ah

+dd 03727c52ah

+dd 0c9c94e4ah

+dd 00e553044h

+dd 064cca331h

+dd 0581895d6h

+dd 0d6009789h

+dd 00b08483eh

+dd 0c8cfc356h

+dd 047ee8ed8h

+dd 01745d993h

+dd 00bd4e1dah

+dd 02d31f944h

+dd 050b9c23dh

+dd 059070697h

+dd 0daccbe3fh

+dd 0f2b463d5h

+dd 0de80c149h

+dd 0cbfc32f3h

+dd 01c82a8a7h

+dd 035b94ec7h

+dd 0f9392e40h

+dd 0a7cfaf93h

+dd 0c58a3e83h

+dd 088648796h

+dd 04f69a042h

+dd 02c0582c0h

+dd 0a6f2092dh

+dd 0d990c4dch

+dd 0229697d1h

+dd 0312dffa9h

+dd 0b1d1bb63h

+dd 05ebef241h

+dd 09788db9dh

+dd 078a23deeh

+dd 0d8d5b53ah

+dd 040dd0bcah

+dd 04b2a45c8h

+dd 0ae16b4e0h

+dd 06cc9746eh

+dd 0a4192d84h

+dd 0a1d2eda3h

+dd 0edc9e7a3h

+dd 05841dec8h

+dd 035a407b2h

+dd 09250abd1h

+dd 010d4529dh

+dd 09247a44ah

+dd 098d86372h

+dd 09e709924h

+dd 0107f4f43h

+dd 0171f9942h

+dd 0ee0d3e85h

+dd 0aa4138e4h

+dd 092da2bech

+dd 04de34c8eh

+dd 05d972a2ch

+dd 0668deeb0h

+dd 042f708cfh

+dd 0331c3743h

+dd 0fc9c10bdh

+dd 00e89fbf8h

+dd 0c26fc82fh

+dd 0a2ea722eh

+dd 01c722553h

+dd 03519ce3fh

+dd 0408d7563h

+dd 08b7a0ef5h

+dd 07126d929h

+dd 05b94d560h

+dd 0b0d8be42h

+dd 0060a6614h

+dd 0fb665f46h

+dd 0e30edacah

+dd 0b0ecfaeeh

+dd 0ace6f99ah

+dd 08d296791h

+dd 00caeaaafh

+dd 03a2c459eh

+dd 0660a1d2ah

+dd 0f5ac4c45h

+dd 0d11579ceh

+dd 0a1b5f5a5h

+dd 0001f4153h

+dd 0872065e4h

+dd 0763d1e72h

+dd 08c9744f3h

+dd 0ea863da2h

+dd 0e1e3e841h

+dd 0736888e9h

+dd 088dedce9h

+dd 06aac07bfh

+dd 0fb8ce28bh

+dd 0cad729c3h

+dd 08a04d5e3h

+dd 0bb874e2dh

+dd 0a63ba2b7h

+dd 0609d8e51h

+dd 0ffd40eeeh

+dd 0826d4237h

+dd 0532a752bh

+dd 04bc73a21h

+dd 0636e128bh

+dd 0f07731d8h

+dd 0069faaa7h

+dd 028833187h

+dd 01bb15f3fh

+dd 0b1559106h

+dd 071791f7ch

+dd 0720fb31bh

+dd 0e418bcach

+dd 09b41e2b9h

+dd 0a5d7418dh

+dd 0deaa4456h

+dd 05f23e2aah

+dd 0b4931e4dh

+dd 0f7008d88h

+dd 07447e408h

+dd 07c86d898h

+dd 0760576aeh

+dd 011a654f0h

+dd 030ab80b5h

+dd 0c112ec08h

+dd 0815ecdb5h

+dd 00b0c30feh

+dd 0bb780b05h

+dd 0294640cbh

+dd 0587a25a1h

+dd 0c4fec64bh

+dd 0dd1954a3h

+dd 0d85ce1c3h

+dd 04982259ah

+dd 01c3a3ddeh

+dd 0b30f5259h

+dd 02efd9477h

+dd 00f3204a2h

+dd 03f002ba2h

+dd 01dd9ebe9h

+dd 068290449h

+dd 0ff67aa6dh

+dd 0fdbcf913h

+dd 003135b23h

+dd 009866edch

+dd 081659351h

+dd 096f26ca7h

+dd 0a77f9ce2h

+dd 03fa2583dh

+dd 09047d2fah

+dd 00d4aaae0h

+dd 0f6dd2384h

+dd 02e39e995h

+dd 035196597h

+dd 0762def5ah

+dd 0a0e19d9ah

+dd 0a961a937h

+dd 0617a131bh

+dd 053a5a03ch

+dd 0149b8662h

+dd 0dc735da1h

+dd 02fec8d61h

+dd 0c039e01fh

+dd 00d9b51deh

+dd 0367aed56h

+dd 071050071h

+dd 0092ac134h

+dd 0b60f0c4bh

+dd 0860c208ah

+dd 09678d710h

+dd 0a1b84dc4h

+dd 05bc01fbbh

+dd 0ef5bc651h

+dd 0cf71d7a9h

+dd 06d139a32h

+dd 0d28f8b30h

+dd 08560f098h

+dd 03f1f7182h

+dd 0e672375fh

+dd 07afc3c83h

+dd 05d3fd912h

+dd 0d0868554h

+dd 04c4ca3b4h

+dd 070b9bd06h

+dd 029ad19dah

+dd 0a319a6e3h

+dd 0e315212eh

+dd 06b8338ebh

+dd 0452064dbh

+dd 0b82b1ee7h

+dd 046d16e54h

+dd 02a11c8bbh

+dd 0beb8fecfh

+dd 04876a451h

+dd 0f84a6e6ah

+dd 061496080h

+dd 060589a2dh

+dd 0f0e7bd64h

+dd 05b4ae9e9h

+dd 01284a326h

+dd 05bdc9994h

+dd 0d83696bah

+dd 091604794h

+dd 0d8692479h

+dd 0fabbb590h

+dd 012df99f8h

+dd 03e0ae8b5h

+dd 0c02c5253h

+dd 041d9b886h

+dd 0ab1242b7h

+dd 0b217e79fh

+dd 091ecbdb4h

+dd 051b4dd57h

+dd 0e4d381d7h

+dd 07c7a4190h

+dd 0567fc4cah

+dd 0128f2ef3h

+dd 014c0ac95h

+dd 095b5762dh

+dd 011526220h

+dd 0143484a6h

+dd 008938558h

+dd 084463968h

+dd 067232083h

+dd 0ad061eefh

+dd 05679b166h

+dd 0068f38c7h

+dd 02711962bh

+dd 08ee81470h

+dd 0d7726a6ch

+dd 05ee17545h

+dd 047504363h

+dd 0394bbc43h

+dd 0c9a1138bh

+dd 0aad171bfh

+dd 067cb586ch

+dd 013d4105eh

+dd 07e59ba9eh

+dd 0b89fd4ffh

+dd 05048f478h

+dd 01f8ca6c3h

+dd 04d9af794h

+dd 091326dabh

+dd 083e01096h

+dd 0ca55e17ch

+dd 06df9f4d6h

+dd 03bfdcb4eh

+dd 0ec5de34eh

+dd 017ad4884h

+dd 0cb729c9ah

+dd 0e60a54a3h

+dd 00087efdeh

+dd 054a97708h

+dd 0617ba351h

+dd 0a05b1e61h

+dd 05bbec026h

+dd 082864a6fh

+dd 06733c3fah

+dd 08289d38ch

+dd 03c8cc4a7h

+dd 0d2975c0dh

+dd 0866f0627h

+dd 04c1b2e7dh

+dd 0365723a6h

+dd 0c0ac0753h

+dd 066f61db7h

+dd 03f54992eh

+dd 0a8db7c0eh

+dd 050f6bab4h

+dd 064cf26aah

+dd 08a23f439h

+dd 0b8b89e2dh

+dd 0d8330d3fh

+dd 099f03e89h

+dd 0dfb60776h

+dd 097ad2737h

+dd 0e7aa2836h

+dd 0bf1cb92fh

+dd 034b5c8d4h

+dd 09d3734cdh

+dd 0d0c40552h

+dd 0dbcb4017h

+dd 09f4ef4dch

+dd 0086468eah

+dd 0fda045b8h

+dd 0e03ff082h

+dd 0c5e1cb95h

+dd 055a43949h

+dd 040d5d484h

+dd 09a57ea9fh

+dd 0cbc7f550h

+dd 0d8f41c36h

+dd 0a7edab8fh

+dd 0bc04ea07h

+dd 0f14cb3c8h

+dd 0ea5bd53bh

+dd 091bb6ecbh

+dd 08396a58ch

+dd 03435defdh

+dd 033d370ffh

+dd 0f2eec92fh

+dd 0664b16ceh

+dd 07f03076ah

+dd 066644c09h

+dd 0edab0bd0h

+dd 0d4fbcb5ch

+dd 044a54cc8h

+dd 0ba26e532h

+dd 024c4d60ch

+dd 04db3fecbh

+dd 044363b98h

+dd 0b4c6be67h

+dd 053f4d638h

+dd 0ae0c0dd8h

+dd 0354cf149h

+dd 0ef08c99eh

+dd 0539b4cdah

+dd 0e5e6cbc9h

+dd 082282e4fh

+dd 0e2b805edh

+dd 05f1fb975h

+dd 05fadee21h

+dd 0d1cf072eh

+dd 027506d18h

+dd 0b2855b05h

+dd 038e84625h

+dd 0350a69e6h

+dd 070ba4850h

+dd 0168ef879h

+dd 0756b9754h

+dd 04d0761f7h

+dd 06d060c03h

+dd 089784999h

+dd 04bb6f12fh

+dd 0d19df6d4h

+dd 0c243a200h

+dd 05aa69542h

+dd 0dcef36f1h

+dd 0c786fa74h

+dd 09998fcc9h

+dd 0547733e2h

+dd 0b9e7ddf4h

+dd 006b596bfh

+dd 07f8063f1h

+dd 0e7062d21h

+dd 0059109f5h

+dd 08a6f2772h

+dd 07324d4aah

+dd 0c450542ch

+dd 0ffb7ff9bh

+dd 0890d1209h

+dd 099be20aah

+dd 04c439dbbh

+dd 0e1827009h

+dd 01f62173eh

+dd 007c6b5fch

+dd 0b7438ce4h

+dd 0f4801f92h

+dd 087cbc05dh

+dd 060d4dcdfh

+dd 038e26867h

+dd 0317344bdh

+dd 0b226cf5eh

+dd 001c88e03h

+dd 0be16ad79h

+dd 04a89eec4h

+dd 0984198c0h

+dd 0d3a50b7bh

+dd 07a6ad660h

+dd 0f2440f77h

+dd 0bbd017e4h

+dd 0f506adbeh

+dd 05199970ch

+dd 07c589583h

+dd 0e564f99eh

+dd 0cd0f2100h

+dd 064324ea1h

+dd 08b1c0804h

+dd 0c0c09dcdh

+dd 0635911f0h

+dd 07312c107h

+dd 0eb6776d9h

+dd 0eda2f18eh

+dd 0f8b10834h

+dd 0bab0e392h

+dd 00700d05bh

+dd 0ff85da39h

+dd 0bb19db23h

+dd 09f457a3dh

+dd 05dfc3b09h

+dd 019d0e376h

+dd 071f1caa2h

+dd 0c3d8c20dh

+dd 025882ae9h

+dd 0401abcb2h

+dd 0c9249ba2h

+dd 0a70ab564h

+dd 04f9b9f5fh

+dd 038326739h

+dd 0dad9eaadh

+dd 06b61a387h

+dd 02e0c556eh

+dd 02fc0384fh

+dd 0b9d1d9b7h

+dd 0ef052925h

+dd 085352ec3h

+dd 0256acd95h

+dd 00d4b75b8h

+dd 003f35849h

+dd 050c023b4h

+dd 064437207h

+dd 099bdfabeh

+dd 06cafbc2dh

+dd 02982dff2h

+dd 0d745b8d7h

+dd 0a0b22479h

+dd 08a7a8038h

+dd 002872722h

+dd 091f088d8h

+dd 017837188h

+dd 039747c15h

+dd 05408d629h

+dd 0f6281394h

+dd 0cb1a2218h

+dd 0d449d312h

+dd 029b2f205h

+dd 0519f6397h

+dd 0df92e697h

+dd 05bf51c08h

+dd 062e0f173h

+dd 058e4093ch

+dd 03fb2e8ebh

+dd 0b4137d6fh

+dd 094d808f5h

+dd 0fad20c1ch

+dd 01b6b1fdeh

+dd 04de13d93h

+dd 00a404218h

+dd 062b66a58h

+dd 04a260f47h

+dd 05db4aa54h

+dd 077601fech

+dd 0fedba1d4h

+dd 04c35ac48h

+dd 0361f8f14h

+dd 0e315a449h

+dd 050b79620h

+dd 06072ebe8h

+dd 0b2bff856h

+dd 096dfee2ch

+dd 080aaf20ch

+dd 0a9eb118dh

+dd 09786e370h

+dd 0956046eeh

+dd 06ea807ceh

+dd 0d3c5c5c7h

+dd 05e2183e3h

+dd 02baab875h

+dd 0467e7809h

+dd 0cf449594h

+dd 027b9de72h

+dd 095be145eh

+dd 0a1433271h

+dd 0e210e221h

+dd 0a2ac345ch

+dd 001b0553bh

+dd 008c28a6ah

+dd 00e84d8ech

+dd 08d6f6b1ah

+dd 051d85527h

+dd 0073ec479h

+dd 0939c5781h

+dd 02abf7389h

+dd 02ee4e3fbh

+dd 024011ef0h

+dd 077703ab4h

+dd 0de4fb5cfh

+dd 0d4c2c19ah

+dd 033880d71h

+dd 0a52cb614h

+dd 0cbaa9ae5h

+dd 058a38b2fh

+dd 0d1bedc55h

+dd 08a7f4abch

+dd 0a07963c1h

+dd 062a734aah

+dd 09b2a7792h

+dd 05d15e7fch

+dd 0c36ed9d0h

+dd 0edd69993h

+dd 0c3e7f01fh

+dd 0bcced8bbh

+dd 0b82bc78ch

+dd 020304fbch

+dd 034866d37h

+dd 0d0ef45fch

+dd 06f2bfc19h

+dd 05d3f8a70h

+dd 02a834dedh

+dd 07a83848eh

+dd 035857595h

+dd 0ee6f58a6h

+dd 088745218h

+dd 05fdf37e7h

+dd 0f41db75eh

+dd 0917bd69eh

+dd 099c01f35h

+dd 0c89497e0h

+dd 03dfe0f6fh

+dd 0404ee354h

+dd 030612990h

+dd 034215a6dh

+dd 0133e8739h

+dd 051db9786h

+dd 0613273fdh

+dd 068c6e3dch

+dd 08901452ah

+dd 0b02178f1h

+dd 0b3508504h

+dd 0a329b471h

+dd 0c366f294h

+dd 0fd1b6f2ch

+dd 01cb5e4f8h

+dd 0f658e697h

+dd 0b2aac939h

+dd 0d7485d53h

+dd 0aa3225b6h

+dd 068dee194h

+dd 00147bb97h

+dd 0191095bfh

+dd 03adcef75h

+dd 06f5497b2h

+dd 032c71e59h

+dd 08d6b4b42h

+dd 040f76b77h

+dd 052f865c5h

+dd 0e7d307ach

+dd 03396a3fdh

+dd 06ceba49dh

+dd 09a655b69h

+dd 082acce9dh

+dd 0532f0753h

+dd 0fe975717h

+dd 01f397743h

+dd 05f0fe399h

+dd 0fbc277cch

+dd 0c5fcce8fh

+dd 0bb90f7f4h

+dd 06baa8465h

+dd 02e68d22fh

+dd 0765c9a71h

+dd 0dc464808h

+dd 0fccc731bh

+dd 0dcacecabh

+dd 01e7419a1h

+dd 06e2168fbh

+dd 021f86835h

+dd 0b8ea77ddh

+dd 0a4e0a1adh

+dd 0089f934eh

+dd 0763a6e6ch

+dd 0960c98c8h

+dd 08d441760h

+dd 0d1eacd6fh

+dd 016746ac3h

+dd 0789353aah

+dd 059bfe216h

+dd 0872402bch

+dd 06e2e464bh

+dd 0cbb3c873h

+dd 083f1d1cfh

+dd 053282d3ch

+dd 00418f2efh

+dd 0e4187d33h

+dd 0ef7ac343h

+dd 07e13a3bfh

+dd 02d3c494fh

+dd 018447de2h

+dd 089ed64dah

+dd 0d9d0138ch

+dd 0fa719cd6h

+dd 0b9ad98a3h

+dd 02a15a75dh

+dd 016f9df07h

+dd 088f8fda1h

+dd 0c6654bc8h

+dd 0bffd8864h

+dd 09fada4a4h

+dd 01db106b1h

+dd 09ff39080h

+dd 010bcca21h

+dd 0ecb7510dh

+dd 095074b71h

+dd 0f3130bb3h

+dd 01aac7f22h

+dd 01d06a0a1h

+dd 0a3ecf73eh

+dd 0fec1171ch

+dd 08d82d17dh

+dd 01a85d174h

+dd 0f0c1cf9ah

+dd 00d8cd63eh

+dd 0f64f4cd3h

+dd 0f3366159h

+dd 0bafadb74h

+dd 01fe3f74ah

+dd 0258895dah

+dd 03588b61dh

+dd 0b41304b3h

+dd 0b27fdd11h

+dd 060291e6ah

+dd 0bcf5c7bch

+dd 00aadc345h

+dd 04a479f0bh

+dd 0fa6c3709h

+dd 0b425023dh

+dd 097588652h

+dd 0a96637b6h

+dd 0af84b1b0h

+dd 0691d5930h

+dd 02c8953eah

+dd 08de82916h

+dd 0db20ea90h

+dd 0fabb0d79h

+dd 0bc8d623eh

+dd 06b770e63h

+dd 04f3dfe0dh

+dd 003cdabf0h

+dd 054f8a720h

+dd 0e9cc5169h

+dd 0b7715b69h

+dd 03b947054h

+dd 050402ad6h

+dd 099862be8h

+dd 08e2c91e5h

+dd 01343891dh

+dd 044fb28c2h

+dd 0b34e7735h

+dd 04a4e3db3h

+dd 0d6be5483h

+dd 06e1ff3f4h

+dd 0770bda2ch

+dd 0f759baabh

+dd 06f68be84h

+dd 0a64a819bh

+dd 0226e6d02h

+dd 0877fbf0ah

+dd 0190dd16eh

+dd 0a2b41af6h

+dd 046a9e532h

+dd 041557086h

+dd 041284477h

+dd 033cff17ah

+dd 0f8e38e78h

+dd 083c807fch

+dd 0f3f7eeddh

+dd 0aaf193ffh

+dd 0c76dac87h

+dd 0efc99a98h

+dd 0558d505eh

+dd 0b0a192a8h

+dd 04aabe32eh

+dd 06077dec5h

+dd 0edcce618h

+dd 072383b63h

+dd 02b8387d0h

+dd 0aa80993dh

+dd 0954d99ech

+dd 0c098d822h

+dd 0a83b3227h

+dd 0182aef10h

+dd 05a5489a4h

+dd 09e3ecdc3h

+dd 00fb67272h

+dd 08a65cf2eh

+dd 020db63e3h

+dd 06356fad3h

+dd 00a0ef227h

+dd 0b26f905eh

+dd 08a8f53c5h

+dd 0c692f9e6h

+dd 03af6ec22h

+dd 0de86ce30h

+dd 067b40a33h

+dd 07d1783bdh

+dd 0dd33bf07h

+dd 0bf6339c7h

+dd 0f92e7861h

+dd 0835b8c19h

+dd 017347532h

+dd 001546121h

+dd 093c57be8h

+dd 00aaa7126h

+dd 0ca6bb31dh

+dd 05ff47023h

+dd 05b712983h

+dd 0e479f118h

+dd 08c895b04h

+dd 0183297d0h

+dd 03b31ac48h

+dd 0830e23a0h

+dd 00e3a91dbh

+dd 088491cb5h

+dd 0a868322bh

+dd 0691ff3b8h

+dd 012b92756h

+dd 03428875ch

+dd 08bcd0cefh

+dd 0f33a72d6h

+dd 040e7e348h

+dd 08ba55f51h

+dd 0ae07255fh

+dd 0f8cef1e6h

+dd 06f233d53h

+dd 0d603df69h

+dd 0e7a69a61h

+dd 0f8392d2fh

+dd 0572f6b2ah

+dd 04d4bf576h

+dd 0f9a9953fh

+dd 09352a5a7h

+dd 0c325d8feh

+dd 042ae3e1eh

+dd 0651f9d0ah

+dd 0530bee9ah

+dd 0b7f99966h

+dd 08df1349fh

+dd 07a567f23h

+dd 0d8813ecch

+dd 087c1ff22h

+dd 0e2166b3dh

+dd 075e58695h

+dd 085d969fch

+dd 0bbd85dc3h

+dd 0d9f17839h

+dd 07dec8c06h

+dd 0721668efh

+dd 0fa028ee6h

+dd 07c104738h

+dd 0296e39deh

+dd 0de3226ebh

+dd 0e1eaa722h

+dd 0a2ea2511h

+dd 0d2624643h

+dd 02c9a537bh

+dd 0c2daa8d3h

+dd 0e40aa734h

+dd 09b7b4086h

+dd 04f63b115h

+dd 08ebd6dd5h

+dd 0fe687eb4h

+dd 00bbcb3adh

+dd 0fd8559eah

+dd 0e5bdc25ch

+dd 09dbba777h

+dd 0661caf99h

+dd 0f4236848h

+dd 056174c6fh

+dd 06558ed2fh

+dd 0b3434f30h

+dd 0ec691aefh

+dd 03aedec05h

+dd 09903f3b0h

+dd 0fb435c62h

+dd 0cdc299ebh

+dd 0aaa292e4h

+dd 08fa790aah

+dd 01c623631h

+dd 035889ccfh

+dd 05f7de97bh

+dd 0f4485e15h

+dd 0f6308769h

+dd 018674804h

+dd 00814bbc4h

+dd 08c12be18h

+dd 0e5796ca8h

+dd 05cf4ec49h

+dd 0511512e8h

+dd 00b64f68ah

+dd 003547d00h

+dd 03bd143a2h

+dd 02389d2dah

+dd 032beffb5h

+dd 09ea6bc3dh

+dd 0ce085d73h

+dd 00e029f09h

+dd 0894fe498h

+dd 0953f7cbch

+dd 0e5f2745fh

+dd 0de246a4bh

+dd 0768f81c4h

+dd 0597436c5h

+dd 09947a0b7h

+dd 0c682ef97h

+dd 03521356ch

+dd 046826bc5h

+dd 062aff688h

+dd 02ab3972bh

+dd 0c97693a6h

+dd 0716dd3f1h

+dd 0c0d6424bh

+dd 0b57156e9h

+dd 0bd291f20h

+dd 0785d71c8h

+dd 0f77e2c72h

+dd 05a20eb33h

+dd 0ce83adeah

+dd 068be698ch

+dd 06c75a566h

+dd 06982e1d6h

+dd 078693421h

+dd 03de3669dh

+dd 0e71669e3h

+dd 03045778fh

+dd 05023f335h

+dd 075daed1ch

+dd 088f23bd9h

+dd 0a14e5d55h

+dd 0a77e8290h

+dd 06318bb05h

+dd 02e87dfa4h

+dd 0d1e73236h

+dd 025715965h

+dd 0835da686h

+dd 0dfcb4c22h

+dd 06845340ah

+dd 040881c1dh

+dd 04bfde654h

+dd 051ebb12dh

+dd 0512722c6h

+dd 01f5502f6h

+dd 0b1ee6c5ah

+dd 08cd6cf3eh

+dd 086ebbfcbh

+dd 0334d1b8dh

+dd 0201a9ea4h

+dd 073cefedah

+dd 068713e88h

+dd 0fcffe6b1h

+dd 085c6b1f2h

+dd 09c2f326ch

+dd 0776b575ch

+dd 097107c2ah

+dd 0495b0631h

+dd 04d9c03b2h

+dd 0c038c03fh

+dd 05a3ee910h

+dd 0d7519b92h

+dd 0c05d1a53h

+dd 0c556262eh

+dd 098b339eah

+dd 0c590882bh

+dd 0be407a7bh

+dd 0ceb35696h

+dd 06a03ec59h

+dd 0f1632f42h

+dd 0a07ca18ah

+dd 06b59443bh

+dd 083da0b72h

+dd 047cf9256h

+dd 04146bccah

+dd 0218be603h

+dd 07aee610ah

+dd 049d7fd4bh

+dd 046e08a11h

+dd 08e7f2437h

+dd 00ed4b11fh

+dd 00c5ee373h

+dd 0ddf0f2a0h

+dd 0e98a187fh

+dd 0e7cebb05h

+dd 0b92832cch

+dd 0c690283eh

+dd 07a7d0b9ch

+dd 0ea9f7d45h

+dd 0274b881fh

+dd 06420813bh

+dd 06c137f49h

+dd 01d1fbf51h

+dd 0b10c785eh

+dd 0aef3c791h

+dd 0745f3183h

+dd 018244a9dh

+dd 09d0ddc9dh

+dd 0178c324ah

+dd 0cd7ce71ch

+dd 0e1b54482h

+dd 0ae8eedbeh

+dd 0b4123d79h

+dd 0a204a4fch

+dd 0eeb17db4h

+dd 05e470f66h

+dd 0b7de6ba4h

+dd 059def197h

+dd 0c6560525h

+dd 0a29f8069h

+dd 04d06fda3h

+dd 023bd81c7h

+dd 0a0e0a0e7h

+dd 0b74d4cd3h

+dd 0f9892eb0h

+dd 0dff3febeh

+dd 002812c42h

+dd 0e1768eebh

+dd 0ab3dd0f5h

+dd 0eee20767h

+dd 099c3ef94h

+dd 05580a3a5h

+dd 062d5ddb8h

+dd 01f19f730h

+dd 0c934664ah

+dd 0f0d0b0ffh

+dd 084666544h

+dd 0dfa4d5cdh

+dd 013c75ecfh

+dd 088ac27b7h

+dd 02498af36h

+dd 00622231eh

+dd 0397d7863h

+dd 007285319h

+dd 0916b0a95h

+dd 013034ad4h

+dd 07cd51627h

+dd 09c5fa0f8h

+dd 0599c2067h

+dd 068ace4cfh

+dd 050b69455h

+dd 03295f93ch

+dd 0ade42fd8h

+dd 0bcb588e0h

+dd 061c1b1e1h

+dd 087a203a2h

+dd 001a53cb8h

+dd 06ec57132h

+dd 087fcf01bh

+dd 08e90d119h

+dd 0226f1ed7h

+dd 077003cech

+dd 0c126bcb0h

+dd 06dc2a31eh

+dd 06118bba4h

+dd 00f495f40h

+dd 0c3b80b7ch

+dd 0e61053f4h

+dd 01ea64622h

+dd 02f9d4f11h

+dd 0242a3602h

+dd 082580f12h

+dd 0e77f4ff2h

+dd 0b968d128h

+dd 071727af6h

+dd 001223584h

+dd 02177a9dbh

+dd 0f749a51dh

+dd 04c46efbfh

+dd 0bbe4c7c8h

+dd 0a5a33076h

+dd 0cefd9595h

+dd 047ebef77h

+dd 0885bb5eah

+dd 04a9452f9h

+dd 05cf8da27h

+dd 009a57be7h

+dd 024cade68h

+dd 017ea1be5h

+dd 05bdf15bfh

+dd 09c155e1eh

+dd 0d8a5e1f6h

+dd 020c0f60eh

+dd 0032e8e5bh

+dd 05d0238a7h

+dd 0244c0df2h

+dd 04461e9e3h

+dd 0a4e2788bh

+dd 00974568bh

+dd 09d49343eh

+dd 022d5fea8h

+dd 0afacfcafh

+dd 0b854bc5dh

+dd 0cb39cefch

+dd 0c2bce22bh

+dd 02bc14717h

+dd 06e3eff75h

+dd 09ef6c957h

+dd 0baf31cfbh

+dd 06386f757h

+dd 0f633e134h

+dd 0109898a0h

+dd 02339e976h

+dd 0251ef843h

+dd 09a073ab8h

+dd 001d7119ah

+dd 05de3790ch

+dd 0587f4649h

+dd 08ada6224h

+dd 0ef5a1d56h

+dd 0346c4022h

+dd 0c86106c2h

+dd 070439a88h

+dd 0a79fb68dh

+dd 07ede0ca4h

+dd 05f246d1ch

+dd 0b6403cd8h

+dd 0cbefb7fbh

+dd 0e071e620h

+dd 0dd835f41h

+dd 032ad29c0h

+dd 0616ec8b5h

+dd 0ad8ccb79h

+dd 01c10b6b3h

+dd 052d7d5c8h

+dd 0a9ad9f0dh

+dd 0885ee0e3h

+dd 08435c2b5h

+dd 0ee7bc774h

+dd 0ac04cb5fh

+dd 000b198bdh

+dd 0048b8fcbh

+dd 05ff9bc3eh

+dd 0bcccf4beh

+dd 0b06f5061h

+dd 0dbb46259h

+dd 0a98f0ac4h

+dd 0a7698568h

+dd 0c0373bcdh

+dd 071fbb76eh

+dd 0f2384fe4h

+dd 0de087acfh

+dd 04f8435b4h

+dd 0501ad425h

+dd 0996923dbh

+dd 00f61fa7ch

+dd 037cb69dah

+dd 0a90afdc2h

+dd 0ddc57b91h

+dd 06fe54258h

+dd 038ada72bh

+dd 0274a0e1dh

+dd 0e713e53bh

+dd 035fb4e16h

+dd 094d4d4a3h

+dd 036b55b0eh

+dd 0e24c6b6fh

+dd 09a33ca0eh

+dd 036d92221h

+dd 0b2218b6eh

+dd 05e1d6c6dh

+dd 0ec7aa93fh

+dd 029849259h

+dd 016efdfb4h

+dd 0fab03d93h

+dd 01cc05ddch

+dd 058a7e396h

+dd 08caba802h

+dd 0fe936733h

+dd 050bb7469h

+dd 0d2208749h

+dd 08afc8087h

+dd 0c35b75a1h

+dd 02b49f1b1h

+dd 02bbf17b7h

+dd 08c5fc2d3h

+dd 0159ceca7h

+dd 058bd203ah

+dd 0504b1519h

+dd 00f0e2dcdh

+dd 02b1450e3h

+dd 0ae95239bh

+dd 0cf9efa14h

+dd 06c1529feh

+dd 0ab472c0bh

+dd 0c9f99684h

+dd 0885be22dh

+dd 09dcad838h

+dd 01c508bd5h

+dd 043ca3248h

+dd 00c8cf2c4h

+dd 0e71fb53eh

+dd 074d16785h

+dd 098f93706h

+dd 0c16f90ech

+dd 03a89ee0dh

+dd 0a6fd99e9h

+dd 07e5d9f09h

+dd 0abdfa225h

+dd 07ea91826h

+dd 0119875e8h

+dd 0818eb54eh

+dd 0abc98d92h

+dd 07be1c374h

+dd 0ec7c1cc5h

+dd 09f777dcbh

+dd 053f3f3fch

+dd 0c2ecc7a7h

+dd 04ade9aaah

+dd 0cd39047fh

+dd 0b9a23b87h

+dd 01ede1275h

+dd 02222ac5ch

+dd 03c940b1ah

+dd 0b99ec320h

+dd 0ef3cf080h

+dd 06378a1edh

+dd 039f6c8bah

+dd 07232af6bh

+dd 0d8c5350eh

+dd 0958aa82dh

+dd 0fd647eedh

+dd 0f89d8386h

+dd 055653259h

+dd 075c600cah

+dd 0224dff7ch

+dd 06d3db6c3h

+dd 02574a10ch

+dd 0fd3ec414h

+dd 09404ac95h

+dd 00713ca6fh

+dd 08fb7c272h

+dd 03f52d688h

+dd 0228912bah

+dd 0122eec7dh

+dd 08ad2523eh

+dd 0e4876154h

+dd 009745385h

+dd 0b094c446h

+dd 05983073bh

+dd 0d6143030h

+dd 049893fb7h

+dd 0d996126ch

+dd 020f3d423h

+dd 01e5365a7h

+dd 0238c0aefh

+dd 0b0040fd0h

+dd 0667ccf31h

+dd 0e148cb2bh

+dd 033156feah

+dd 09805033ah

+dd 0a90d69fah

+dd 0a0d2775ch

+dd 03ad50ee1h

+dd 02259bb96h

+dd 0e5b0a3efh

+dd 00ac0d4b5h

+dd 08b398150h

+dd 0e45291dah

+dd 067a15353h

+dd 064772384h

+dd 0d7ee63a6h

+dd 069aa64a4h

+dd 0521fb102h

+dd 06407fa6ch

+dd 04cef9dd6h

+dd 03ae93648h

+dd 082b8f8b0h

+dd 096a57b92h

+dd 07dbab935h

+dd 0b4b899a5h

+dd 0c2471b17h

+dd 04359cb51h

+dd 0b848f10fh

+dd 0a50a5401h

+dd 0d0129637h

+dd 0b9ff7ac0h

+dd 0daed71c5h

+dd 02e4a3d76h

+dd 0246d9a76h

+dd 05fa9371dh

+dd 05efcad57h

+dd 0fdb972b8h

+dd 082fed246h

+dd 0409b2d30h

+dd 0db79205ch

+dd 0376b8917h

+dd 02af42819h

+dd 00dfe2e5eh

+dd 083e15a78h

+dd 0cb8bf795h

+dd 02f4fc267h

+dd 0ccbe5f58h

+dd 0a3f16b88h

+dd 070ad130eh

+dd 02712625ah

+dd 0de28eef2h

+dd 03fe4b8cah

+dd 0b9229bd0h

+dd 0cdb7e37ah

+dd 07500406dh

+dd 04e66d2c2h

+dd 047ef5a94h

+dd 0b1880448h

+dd 074a39fc7h

+dd 018925b44h

+dd 0d6efcd7fh

+dd 0a91d7f18h

+dd 0256e6a0fh

+dd 083931fd0h

+dd 0fc9ee9ddh

+dd 0107e3ca6h

+dd 0ef4773dah

+dd 0754cc20bh

+dd 00aa89bc7h

+dd 0ed64107bh

+dd 08c25f818h

+dd 08c992c41h

+dd 081085065h

+dd 0eb6a89e4h

+dd 0310d810fh

+dd 01f183d93h

+dd 00531771ch

+dd 001fca3a4h

+dd 01f32443dh

+dd 093dd070ch

+dd 0057fe939h

+dd 03a3dfb44h

+dd 0548f2e65h

+dd 0df8f0ad6h

+dd 04e647890h

+dd 08d4f8f13h

+dd 08142e0c0h

+dd 09279b671h

+dd 0c1af017ah

+dd 0124c1b18h

+dd 0a93c8871h

+dd 06f6d8e63h

+dd 0938db0b2h

+dd 07379ede0h

+dd 08ecf90afh

+dd 07e431831h

+dd 07c361225h

+dd 05358582eh

+dd 0ce199dc8h

+dd 02002c352h

+dd 0f801f0c3h

+dd 014bb551ch

+dd 039d07246h

+dd 0d502810bh

+dd 0aa85fde4h

+dd 068018d50h

+dd 002dea3a3h

+dd 007594ad9h

+dd 09447d05dh

+dd 071fdf6a1h

+dd 088b34f3ah

+dd 07494a00dh

+dd 072bc9999h

+dd 059b3dc0eh

+dd 021ae2951h

+dd 01fcc01ach

+dd 061af8baeh

+dd 0dd553597h

+dd 03af9d176h

+dd 0b2daf319h

+dd 01ee43d96h

+dd 040b67ddfh

+dd 06e09f396h

+dd 09298646ch

+dd 0c3298077h

+dd 02bf1f271h

+dd 02a5119f1h

+dd 04d996f20h

+dd 08d0bca49h

+dd 048023487h

+dd 0243bc5e7h

+dd 0256bb4eah

+dd 0233ca818h

+dd 0f1359194h

+dd 08cb5ceceh

+dd 0bbac1793h

+dd 0ff5c16fbh

+dd 00741ebe2h

+dd 0937ed6ebh

+dd 0b59b73f8h

+dd 02c20ac9ch

+dd 0a8087c85h

+dd 0c89de648h

+dd 018ab7907h

+dd 0fb4ed574h

+dd 02678a2e6h

+dd 066853aa6h

+dd 06e799a14h

+dd 0063142f1h

+dd 08c9ec542h

+dd 069292fd1h

+dd 07eeff8a2h

+dd 0a9f409fdh

+dd 0459b1b32h

+dd 0ab8f355eh

+dd 0af4a0827h

+dd 085280799h

+dd 00d8eba3dh

+dd 076d00e90h

+dd 0183a778ch

+dd 0494bf496h

+dd 09fdd0eb4h

+dd 0d46eeacah

+dd 0f707d1feh

+dd 0089e8428h

+dd 0ffae3577h

+dd 00fba2345h

+dd 05987fa9bh

+dd 098eda79eh

+dd 01aa1ca13h

+dd 07c9ead94h

+dd 0791c7eb1h

+dd 05f1cacc6h

+dd 0534711c8h

+dd 092911f4ah

+dd 0b84b91bah

+dd 0c0572d2bh

+dd 01bf8a68ch

+dd 00d63ad5bh

+dd 0ff92bcb1h

+dd 011685ba0h

+dd 0fb33c091h

+dd 07e842636h

+dd 0faed7930h

+dd 0d0aca875h

+dd 014c68aabh

+dd 0582c281eh

+dd 03945a992h

+dd 0ea56a27fh

+dd 0c141ecf4h

+dd 0ab725d3eh

+dd 0899dd7b1h

+dd 05d2b307eh

+dd 0929b7174h

+dd 0cf1874ech

+dd 08a7eef09h

+dd 07b4ce798h

+dd 0b068a48ch

+dd 06d5fcdc0h

+dd 0ea63a7d9h

+dd 09344267fh

+dd 0f35c3791h

+dd 046623150h

+dd 0f3f820e3h

+dd 0fbbdda9ch

+dd 05e672207h

+dd 000e65aafh

+dd 0dad36564h

+dd 035b6d77eh

+dd 002dfdc31h

+dd 0b74ed3c0h

+dd 0dbf17d84h

+dd 00d2690d3h

+dd 0bc39795fh

+dd 0c200c957h

+dd 0da495592h

+dd 08eb51324h

+dd 0476558e0h

+dd 0b33dc29ah

+dd 07bf5f2a0h

+dd 021780361h

+dd 0965172c2h

+dd 0558d128bh

+dd 0665776d2h

+dd 0e9060773h

+dd 085f7ac7dh

+dd 086e2e5cch

+dd 076b68b25h

+dd 0bd29b49bh

+dd 00c523512h

+dd 00badfc12h

+dd 0d38caa12h

+dd 0c7750abah

+dd 0779c158fh

+dd 0ea6be053h

+dd 04c6a4f9fh

+dd 0b01b23c4h

+dd 0ac9ebd3ch

+dd 0bc533278h

+dd 06701f057h

+dd 015403e19h

+dd 022393000h

+dd 0638c84b4h

+dd 03d517b52h

+dd 0fb1a85abh

+dd 0cc075a26h

+dd 051a560a7h

+dd 07deffdf4h

+dd 0048843b1h

+dd 00de6ff51h

+dd 043e714bch

+dd 0ab3cab53h

+dd 0865bf9bah

+dd 045e8a4d3h

+dd 08cc09889h

+dd 0b15fb770h

+dd 01c91c204h

+dd 0f6bf7947h

+dd 0f9e9681bh

+dd 0b98c9743h

+dd 04540e753h

+dd 03b9abf10h

+dd 0fbd42fb2h

+dd 0aab92ca1h

+dd 09c207c68h

+dd 020693bf9h

+dd 0ed2fcf24h

+dd 0e88ed03bh

+dd 0a2b65996h

+dd 045b98d14h

+dd 028fd6bdah

+dd 04c1aa94dh

+dd 0eb9038eeh

+dd 056c7c9d5h

+dd 0017cd4efh

+dd 0f88cf3f4h

+dd 0eee82e66h

+dd 0bb0d876eh

+dd 0d36e362fh

+dd 00591c7ebh

+dd 00cbdccdbh

+dd 01cf16658h

+dd 0d2d8ffdeh

+dd 0020db053h

+dd 009f9cbf0h

+dd 02516f991h

+dd 007a2a9a9h

+dd 0d4017500h

+dd 0cdc9dee4h

+dd 04cddaad4h

+dd 08262ad83h

+dd 00064cecdh

+dd 0b32dec5eh

+dd 05724923dh

+dd 0e3b11c88h

+dd 0bd3f1bcfh

+dd 07da5e6beh

+dd 0ebc354e7h

+dd 073329529h

+dd 0d6f41e3ch

+dd 0fc2f3cbfh

+dd 090578aa2h

+dd 0cb608fa2h

+dd 0b8f2fe0eh

+dd 0f26687fah

+dd 0c3d60fcah

+dd 0e0e94740h

+dd 0f79afe74h

+dd 0b2a3d8f2h

+dd 0ff4fb4b5h

+dd 044c44b8eh

+dd 078d7e7ech

+dd 0d9046ee2h

+dd 0486dec5dh

+dd 0769bc3efh

+dd 053c4acdch

+dd 0d5241d07h

+dd 0d09ceb50h

+dd 019336a65h

+dd 0da57d800h

+dd 06414eb44h

+dd 04feaec1bh

+dd 0ad8aa785h

+dd 070f70cbch

+dd 0dd16df21h

+dd 01f622125h

+dd 0c73ec56ah

+dd 0a8cd9f79h

+dd 07062eae9h

+dd 022265053h

+dd 069ea76f9h

+dd 0f66ed52ch

+dd 09cffb8d7h

+dd 0870193e8h

+dd 0ab588ae4h

+dd 047d4367eh

+dd 0e54058adh

+dd 0c3325206h

+dd 0c08f3865h

+dd 0154d5318h

+dd 0b256d10fh

+dd 092588f20h

+dd 0462cf7b0h

+dd 0cb28fec3h

+dd 0dfeb22fah

+dd 0da186f84h

+dd 02125848ah

+dd 01db8328dh

+dd 0be070fabh

+dd 0b13602e2h

+dd 0c6e40b1ch

+dd 07e7b2430h

+dd 0e651f2e5h

+dd 0b2d150d0h

+dd 05ce573dch

+dd 0472f14cch

+dd 069bade61h

+dd 02ef2788fh

+dd 04c137b87h

+dd 03e108666h

+dd 03ba8d212h

+dd 0ca884547h

+dd 0ca0e6ab0h

+dd 0205ac342h

+dd 0fa7ad042h

+dd 0942b8862h

+dd 089dd7041h

+dd 018bb5587h

+dd 07db3518ah

+dd 0af900ccah

+dd 03c14e8eah

+dd 0f86b73beh

+dd 03612d280h

+dd 03b1e9629h

+dd 02698b1b5h

+dd 0050a89e7h

+dd 0f6139056h

+dd 0c6567ec6h

+dd 04da9cca8h

+dd 06c359664h

+dd 0c09167cbh

+dd 0c0bd69bdh

+dd 00f48258fh

+dd 0fe914018h

+dd 0f9991e0fh

+dd 0dfdcf6cfh

+dd 07d2bc802h

+dd 0be95876bh

+dd 079c378c5h

+dd 010613d98h

+dd 070ded8d7h

+dd 00a790567h

+dd 0f2455700h

+dd 01fb749ffh

+dd 09160cc1dh

+dd 054a7dedfh

+dd 0cc1d9a98h

+dd 088bea175h

+dd 0513c6fb4h

+dd 028ae1a3ch

+dd 077c7780eh

+dd 07057d537h

+dd 06e33598eh

+dd 0158cce16h

+dd 09bc29f91h

+dd 0e0643486h

+dd 06e5ea486h

+dd 0379f4283h

+dd 0ee5e9c9eh

+dd 082644b78h

+dd 0ae8df8fah

+dd 0219a3a34h

+dd 09ee598d0h

+dd 03add6550h

+dd 0c422032ch

+dd 05a86ebcch

+dd 01e91cc7ch

+dd 0efc01c6eh

+dd 08b66f7cch

+dd 077fe35f0h

+dd 016ee5a82h

+dd 08b8c437eh

+dd 0ace04d6fh

+dd 0bc9ecc88h

+dd 0a1b11239h

+dd 0443022e3h

+dd 04f0c12a6h

+dd 02e3e37c0h

+dd 0c7bdd45dh

+dd 0c2fa4b8dh

+dd 0295aa5c7h

+dd 0631e4ac1h

+dd 030ceddd0h

+dd 0e41b66afh

+dd 0b63e2daeh

+dd 0080e7d8fh

+dd 077df35cfh

+dd 03f21cfadh

+dd 033c6fd1bh

+dd 04c5660e8h

+dd 00506a802h

+dd 070e701d0h

+dd 0a2000c45h

+dd 0a1cc412fh

+dd 02a304345h

+dd 0ecedaefah

+dd 0d4d55bafh

+dd 0a1d1f6c7h

+dd 0f22f3823h

+dd 05b44c40dh

+dd 0a7cb61bch

+dd 039e367a4h

+dd 040c5dd1eh

+dd 091c0be42h

+dd 0db019586h

+dd 0ce1153afh

+dd 0ac650abfh

+dd 07283814fh

+dd 04c0a56efh

+dd 058728078h

+dd 06ed7a32fh

+dd 0f5d699eah

+dd 035fc3d03h

+dd 0b4a91fd7h

+dd 0627679b7h

+dd 0b88ea6fah

+dd 0ef64cdcbh

+dd 07d29c7b2h

+dd 055efcae5h

+dd 07ce26d25h

+dd 0828e6af3h

+dd 09eccde37h

+dd 0c1df3726h

+dd 0617bf17ch

+dd 034be03a7h

+dd 02e594ca4h

+dd 0fabee1cdh

+dd 03b15ea52h

+dd 0c5630ed9h

+dd 023991bd0h

+dd 09561f645h

+dd 0a6b614f4h

+dd 0069e82b7h

+dd 0dcb6e998h

+dd 0e6d512a8h

+dd 03038e205h

+dd 0159e7e8bh

+dd 07b4e2bb1h

+dd 0a4262d08h

+dd 0b809877dh

+dd 067135f34h

+dd 0d632537ch

+dd 0914c9f0dh

+dd 0b546c4ech

+dd 064aa2c23h

+dd 0cfeb7b83h

+dd 0ccf6cfech

+dd 0a91a6205h

+dd 06ac79d0ch

+dd 0f17cbf25h

+dd 03b69840ah

+dd 00cda6d82h

+dd 0e053b850h

+dd 08641b102h

+dd 09dbf78f2h

+dd 0aaa6be2fh

+dd 08e147156h

+dd 05d9a049fh

+dd 0b213ad68h

+dd 09dca028bh

+dd 02f80fd45h

+dd 000bb32ech

+dd 02ed95e6ah

+dd 05ea6d8d7h

+dd 0ff2a4fc1h

+dd 0e42ddd4bh

+dd 0ef7f0816h

+dd 01c1edb21h

+dd 035412ab7h

+dd 0d1d56daeh

+dd 01f5c340ah

+dd 056952295h

+dd 051f2bc45h

+dd 0183c0443h

+dd 0f822d861h

+dd 08045967dh

+dd 018e1f1b7h

+dd 0d26e0074h

+dd 096154ccfh

+dd 03184864ah

+dd 0b6cc2cefh

+dd 072e7d386h

+dd 0088ea63bh

+dd 0177024c0h

+dd 04356299ch

+dd 0fdab3875h

+dd 0c119eb5eh

+dd 026bdd5bdh

+dd 0bf172742h

+dd 055cf620eh

+dd 0e5c9e640h

+dd 047350d78h

+dd 0bc58e723h

+dd 0575d4e15h

+dd 08a1052b8h

+dd 0eab15d75h

+dd 0ca24b9ceh

+dd 067a89bdah

+dd 0c42e08bah

+dd 0f2128ae2h

+dd 01ad3d862h

+dd 0b83d158ch

+dd 0d24b9c5dh

+dd 095a69756h

+dd 074f8f807h

+dd 0fa7638ffh

+dd 062a3d040h

+dd 09d91e362h

+dd 018d1842fh

+dd 02c61b8e3h

+dd 0c34e8807h

+dd 0e503e568h

+dd 0e53d77aeh

+dd 04b818b20h

+dd 0fa6300cbh

+dd 031abd00fh

+dd 0602adb14h

+dd 041117223h

+dd 08e9e41f1h

+dd 00b3055deh

+dd 033cf16feh

+dd 01d5c2599h

+dd 0f6cdcf2fh

+dd 01b6dd1ebh

+dd 045f6ffa4h

+dd 0b5ce78dbh

+dd 0469cdb39h

+dd 072e3c6a7h

+dd 001ca186dh

+dd 00d4a408dh

+dd 0ab1c1185h

+dd 0747160e1h

+dd 0b47a146dh

+dd 0f0464807h

+dd 03a369a47h

+dd 00c9ff97bh

+dd 0a8d6fd22h

+dd 0d4122ddfh

+dd 025d5918eh

+dd 0fb22babch

+dd 027fee25fh

+dd 048bffca4h

+dd 0ef27eda4h

+dd 0029c2db7h

+dd 060a05fb1h

+dd 045c1a2a5h

+dd 07382f396h

+dd 037ce1e4ch

+dd 0d0b41aa2h

+dd 00fea85afh

+dd 0f90eda6dh

+dd 03e8e4478h

+dd 0d017cb46h

+dd 0851f509eh

+dd 054e7aa6dh

+dd 0450b1c82h

+dd 077b42926h

+dd 038384989h

+dd 0f57cd6e5h

+dd 07ba05ddch

+dd 0cdd236deh

+dd 0a056a763h

+dd 0a9e6cab7h

+dd 0dc7077cch

+dd 0a79e0233h

+dd 0ff951cb1h

+dd 020da30a5h

+dd 0d63e8f69h

+dd 0ef0ac21bh

+dd 099027f95h

+dd 08ed694c9h

+dd 08821f9c8h

+dd 0be0ee0a0h

+dd 0ef52fdfch

+dd 0c32115abh

+dd 05e4178fah

+dd 0abe99e7fh

+dd 0a09ebcf0h

+dd 0e4588c63h

+dd 0c2197098h

+dd 01161b5deh

+dd 07e23fc8fh

+dd 00f342592h

+dd 023469903h

+dd 0b5bc2914h

+dd 03655d097h

+dd 042808fdeh

+dd 0acb802cdh

+dd 0168e1c96h

+dd 062d334f8h

+dd 06a793593h

+dd 0f00ea0fbh

+dd 0642d0dech

+dd 03ca37965h

+dd 01a8d9534h

+dd 07a90ec39h

+dd 0100d6b95h

+dd 0c20efd7dh

+dd 06918ccdah

+dd 0de107d74h

+dd 0534c9a1ah

+dd 011b992eeh

+dd 0ff41a741h

+dd 0b9ff4c78h

+dd 0ad92255ah

+dd 0a3cce5deh

+dd 0a30bc772h

+dd 0725f051ah

+dd 0bd58c08fh

+dd 04b78ec13h

+dd 098f89df6h

+dd 04ae48002h

+dd 00358ded8h

+dd 046daafcah

+dd 00ae9be32h

+dd 08a292cf0h

+dd 0d501c396h

+dd 096c88312h

+dd 030389ce1h

+dd 0fbc33ac7h

+dd 0619b3a08h

+dd 0af90dcbch

+dd 0752c8b6eh

+dd 095ef74cbh

+dd 07630c46bh

+dd 097d5b32fh

+dd 0cc2dbdbdh

+dd 02f503ba6h

+dd 0122c67a1h

+dd 09ff8a0c8h

+dd 07c62387bh

+dd 0bd753772h

+dd 068dcd877h

+dd 03ba45a00h

+dd 0b73921c3h

+dd 064afefd5h

+dd 07d840d80h

+dd 03f1bc639h

+dd 0c718f6f3h

+dd 0f2ecb16ah

+dd 06f461c25h

+dd 0c3c00f24h

+dd 0388f0985h

+dd 0f3d069afh

+dd 013638974h

+dd 0c52ddf2eh

+dd 0c937f372h

+dd 007c03bedh

+dd 0ac6c04c4h

+dd 0a2cae73ah

+dd 065f7ec5ch

+dd 068b68b59h

+dd 0908d73b1h

+dd 0f40cfa6dh

+dd 05e1a30cfh

+dd 0c769cf27h

+dd 08322c26eh

+dd 00aa87d41h

+dd 02d4adb1eh

+dd 0a103a17fh

+dd 0552c34a2h

+dd 0f91a2200h

+dd 0ae80e923h

+dd 06ed52cebh

+dd 03a82a01ch

+dd 0f28df0a5h

+dd 0a6298df3h

+dd 073deee9ch

+dd 0ceb66e31h

+dd 00cc76006h

+dd 03ce92535h

+dd 0b6d4cabah

+dd 069478079h

+dd 01cee933ch

+dd 00169c179h

+dd 09f00041dh

+dd 00e5664deh

+dd 048d4b31bh

+dd 0f15cf817h

+dd 0c2961c34h

+dd 0445be87bh

+dd 0e38e59bah

+dd 0d20afd20h

+dd 0715de25eh

+dd 0632c76c7h

+dd 0d71ffd4dh

+dd 0c41de3deh

+dd 004027ecfh

+dd 090ce199fh

+dd 09e67dbcah

+dd 00dd67570h

+dd 025c2b939h

+dd 0848f503dh

+dd 06b0b21e6h

+dd 03dbc883ch

+dd 0b1acb3b5h

+dd 0538b6cd4h

+dd 0e4d009beh

+dd 02d8415b5h

+dd 09101394ah

+dd 080b5a258h

+dd 08e5fcc17h

+dd 04e29d8f6h

+dd 08ae6f742h

+dd 0704b511fh

+dd 0891ae343h

+dd 0ba9c6adeh

+dd 0d30f15cbh

+dd 0380fec8fh

+dd 07beb4094h

+dd 0230aecd9h

+dd 089f7d33eh

+dd 0baaf4aedh

+dd 00846d911h

+dd 058420f61h

+dd 04530316bh

+dd 0240f168fh

+dd 0ebe3508ah

+dd 02a6ddb09h

+dd 02ff07944h

+dd 036fb3311h

+dd 047c6ac1fh

+dd 0ec24d125h

+dd 0586e9505h

+dd 023a890a3h

+dd 0bbd53050h

+dd 019d0a99eh

+dd 01ad82eadh

+dd 099e0db03h

+dd 0f9364a6bh

+dd 099a7e407h

+dd 006b591e5h

+dd 0c78e86ffh

+dd 08004884ah

+dd 085d9f106h

+dd 0c3e0e5b7h

+dd 0b860e786h

+dd 04d66d684h

+dd 0db02157dh

+dd 007837e59h

+dd 0f803cd97h

+dd 0032a881ch

+dd 0076a697ah

+dd 099184fafh

+dd 04e693e2eh

+dd 08ecd3dd2h

+dd 05f8d53e3h

+dd 02374117ah

+dd 0c9807a3ah

+dd 0259653c7h

+dd 013f77529h

+dd 0537b840eh

+dd 0a3ba5554h

+dd 06f8d7038h

+dd 074a8288ah

+dd 0eecad2f6h

+dd 0a6848ec7h

+dd 0ac8c534eh

+dd 0f80f7bc5h

+dd 034f436dah

+dd 07901abf1h

+dd 0551d7c9fh

+dd 084ca9c00h

+dd 0b853a215h

+dd 02c8ddb79h

+dd 0bc7759fdh

+dd 059e512ech

+dd 0c6430ac7h

+dd 0a306eeafh

+dd 085cb751eh

+dd 0b044ab16h

+dd 0782c372dh

+dd 0a9f85899h

+dd 09a6bb396h

+dd 0251391a8h

+dd 064f1e7dbh

+dd 0ac5bd12bh

+dd 005cd0bf7h

+dd 03fffe675h

+dd 0dae6b899h

+dd 0b6eb2528h

+dd 06fee6d59h

+dd 0ad0012a8h

+dd 09e16634dh

+dd 08d4547d0h

+dd 087395a2eh

+dd 027243651h

+dd 0a2bf5baeh

+dd 05706dc03h

+dd 00b349d31h

+dd 0e3194c9eh

+dd 06b964dafh

+dd 09c99e226h

+dd 07c2654d5h

+dd 03ee5a3c1h

+dd 0d14852feh

+dd 05f843d0ah

+dd 0e1bc9046h

+dd 0d6547845h

+dd 07dc5b877h

+dd 0af64447fh

+dd 0228c4661h

+dd 0d5b17905h

+dd 0719926d5h

+dd 0a0e48b3dh

+dd 0dc0dd3cfh

+dd 03ebae917h

+dd 054c3a2afh

+dd 0eb85f6b5h

+dd 08a0a6c83h

+dd 0fb3b8156h

+dd 00066cbc8h

+dd 0828a234fh

+dd 09f92c77eh

+dd 0a599b06bh

+dd 0dc568551h

+dd 09e89ae11h

+dd 066815efbh

+dd 006b7519ch

+dd 07e91a580h

+dd 076b8a490h

+dd 0167e3db4h

+dd 0f0ba7f1ah

+dd 035932534h

+dd 098123c6ah

+dd 0ca1fa3bbh

+dd 08b65d88bh

+dd 071006d7dh

+dd 088bfeebbh

+dd 018e2a78ah

+dd 0124d1c15h

+dd 05ca18ebch

+dd 050ff9048h

+dd 0859ef28eh

+dd 098f3e460h

+dd 039a76d07h

+dd 05ccc9c1bh

+dd 0dabfd13ch

+dd 08b592b08h

+dd 0436392deh

+dd 0f6b1592fh

+dd 0be8eb1e1h

+dd 0afa6fd7ah

+dd 00efc0df3h

+dd 067db53d1h

+dd 0155ed38fh

+dd 066e98afch

+dd 077fe9574h

+dd 0d765a35fh

+dd 04216583fh

+dd 0f7a6f828h

+dd 08ee13806h

+dd 045649a42h

+dd 06e170333h

+dd 03d849626h

+dd 051efef0ah

+dd 09fa6b255h

+dd 029bf3c12h

+dd 037033790h

+dd 0886dc758h

+dd 028d5c065h

+dd 001cf5ba9h

+dd 0dc6c6736h

+dd 04af75547h

+dd 0c6123ba8h

+dd 01589e6c4h

+dd 038d01b36h

+dd 0e943d166h

+dd 0608aedf3h

+dd 034306e7ah

+dd 0012e47d5h

+dd 09fa9a729h

+dd 0891b043fh

+dd 0193ee186h

+dd 0baba0241h

+dd 0d3d6b686h

+dd 04de32e3fh

+dd 0bf77b8edh

+dd 04e8ff359h

+dd 095148e7fh

+dd 094a3d2cbh

+dd 0edcf69fch

+dd 010188377h

+dd 049f02950h

+dd 058f35fc9h

+dd 06258996fh

+dd 059f22fd0h

+dd 0782b8901h

+dd 03ec2711ah

+dd 0c00b2b48h

+dd 0fe252397h

+dd 09b6b1e80h

+dd 02f212b9eh

+dd 00c452a87h

+dd 0889b9bdch

+dd 0a6740b7eh

+dd 0347bb4f5h

+dd 0165fa8c6h

+dd 0eefffe67h

+dd 0c09b3c7ch

+dd 06bd0ca16h

+dd 018a00bcbh

+dd 060263564h

+dd 05de332f4h

+dd 012375548h

+dd 027af5a0ch

+dd 09f34ca71h

+dd 016ddaad9h

+dd 0f6cf2a7ah

+dd 0e5e4c282h

+dd 06e913cbeh

+dd 0440e53efh

+dd 024e00203h

+dd 0682f2524h

+dd 01bd95c4ah

+dd 059ffdd05h

+dd 0c178423bh

+dd 0478e8506h

+dd 06868af12h

+dd 0cc845b2dh

+dd 045eba485h

+dd 02c907392h

+dd 00243dae7h

+dd 01678225ah

+dd 0fb74b9eah

+dd 0ed5cfc27h

+dd 07c959891h

+dd 0aa3251d4h

+dd 043d08311h

+dd 034e4ffd5h

+dd 005cf4d34h

+dd 0bcb4ea5fh

+dd 06f035107h

+dd 09833f28eh

+dd 093e8562ah

+dd 0e2370640h

+dd 09cf6f9aeh

+dd 072d31769h

+dd 0ea14ab65h

+dd 01c640ac7h

+dd 06207c054h

+dd 002f3c997h

+dd 0b711250ah

+dd 08b1b6273h

+dd 01c3b4428h

+dd 04ba73067h

+dd 043eb1f9ah

+dd 040cda824h

+dd 07f83b132h

+dd 0b2353225h

+dd 06cd533d0h

+dd 0c60a8efah

+dd 0b1278bech

+dd 023ea14e8h

+dd 08bdcb21ch

+dd 0714ea004h

+dd 0712c9347h

+dd 00cee52f7h

+dd 0ca5375b7h

+dd 0b68a73c1h

+dd 09f3ae370h

+dd 03712c8b8h

+dd 06453bc30h

+dd 08b8c872eh

+dd 0f5c29eb8h

+dd 02d3bf967h

+dd 09f776539h

+dd 078e50390h

+dd 0887d93a1h

+dd 0b3a1f02fh

+dd 07090ffe9h

+dd 06d9b0eabh

+dd 092358ffdh

+dd 071643ef1h

+dd 06d3e3bfah

+dd 0a652440ch

+dd 0d21a5adeh

+dd 0edf9b1fah

+dd 0a34ebb1bh

+dd 01843ea58h

+dd 04cc486d8h

+dd 0ef958a61h

+dd 0e513621ch

+dd 0486fedfdh

+dd 0ea27bbedh

+dd 04d59e6b7h

+dd 06d7a0d42h

+dd 0aa95f60eh

+dd 0e23de673h

+dd 0d1674cdch

+dd 08dd26a4bh

+dd 0d4d23eb9h

+dd 09e30f813h

+dd 02abb3deah

+dd 034e372eah

+dd 06ccc86cah

+dd 0b15ca11dh

+dd 0b136dd10h

+dd 06339ec21h

+dd 068a02f9ch

+dd 07675ab82h

+dd 0be7d4dc5h

+dd 015366506h

+dd 0c679104dh

+dd 00d90d4a4h

+dd 0b3db53c2h

+dd 0f934c59eh

+dd 054dd6444h

+dd 0daea7879h

+dd 06411c866h

+dd 097e1d4c8h

+dd 03c34e66dh

+dd 07dc9ad3eh

+dd 0f2fe6cbch

+dd 01be748d6h

+dd 0af69b460h

+dd 0ef49fc04h

+dd 03e378fddh

+dd 0fd7e055ah

+dd 0c53112d8h

+dd 0ee38b57ah

+dd 0575b169eh

+dd 0b7edf1dfh

+dd 0b95f346dh

+dd 0fd17a6c9h

+dd 023cfdffbh

+dd 057737308h

+dd 0c466c0a7h

+dd 00fbaf24ah

+dd 092ed67dch

+dd 000958568h

+dd 047a8edf5h

+dd 071e7b095h

+dd 0b1a9ca86h

+dd 069bf3fcah

+dd 024213e50h

+dd 0c5327262h

+dd 000b6c508h

+dd 0bdbdc0bdh

+dd 09b76397dh

+dd 0ebd36b96h

+dd 0b93ce1d9h

+dd 0a9da6033h

+dd 0a7bd8d87h

+dd 0db85592ch

+dd 04fb3cda0h

+dd 0ba25eaf9h

+dd 0a0f1b387h

+dd 0214274adh

+dd 05c450a80h

+dd 06b7b6e95h

+dd 0d8a160f2h

+dd 061543af0h

+dd 08622d45ah

+dd 0c0dd297fh

+dd 070fc84e7h

+dd 004d7070ah

+dd 04fa208feh

+dd 0b0a94c4ah

+dd 0ff0cb76eh

+dd 09eb35533h

+dd 02f8b9fa0h

+dd 03cdb97a8h

+dd 0dac070e8h

+dd 0377b2ed5h

+dd 0728ec7e1h

+dd 03618b044h

+dd 0aa472cadh

+dd 0423632d7h

+dd 05e529ae2h

+dd 0dd473b1eh

+dd 0652f1a9fh

+dd 0f783a9ceh

+dd 06e986eb8h

+dd 0ef62cde3h

+dd 04a991242h

+dd 0ecd6dbe5h

+dd 01696150ch

+dd 03aceed41h

+dd 09cf41a7ch

+dd 0cc208258h

+dd 0dde6dd80h

+dd 00cbc8718h

+dd 068602e3eh

+dd 08ba89f95h

+dd 077540af4h

+dd 0e611b04ah

+dd 0592098adh

+dd 047432cdah

+dd 02a780a4ch

+dd 03ef58f42h

+dd 02c7dd2e5h

+dd 0fcb864a6h

+dd 029c2fd5eh

+dd 0563595ceh

+dd 0b398f585h

+dd 0e6c7f9aah

+dd 002bdd097h

+dd 0675fbe6bh

+dd 067df0eadh

+dd 0442218c5h

+dd 0c478277ah

+dd 0d69288b2h

+dd 07a9a9aa5h

+dd 0acb197e2h

+dd 0ce622102h

+dd 0cf5bec11h

+dd 078334d49h

+dd 09e645d7dh

+dd 0f30fc145h

+dd 0ce80d47dh

+dd 066a44c0fh

+dd 0ff03495dh

+dd 0342a9d3fh

+dd 0210279e7h

+dd 050c86a43h

+dd 028c8d51dh

+dd 030e329d7h

+dd 0986ac578h

+dd 048f65c46h

+dd 096e33acah

+dd 0c691f64bh

+dd 0f43643bdh

+dd 075f780cah

+dd 04f193d4eh

+dd 0030133dah

+dd 0ba34cfffh

+dd 06a91f924h

+dd 0106190d5h

+dd 00969d7f1h

+dd 06bd4def1h

+dd 04b743aach

+dd 065b569d2h

+dd 07fde5282h

+dd 002da8165h

+dd 084b011b7h

+dd 020eb02e9h

+dd 03947d478h

+dd 04da03a3bh

+dd 041537678h

+dd 008bc569bh

+dd 0715803e8h

+dd 013e89a5dh

+dd 02e0d8720h

+dd 08647773dh

+dd 0b997445eh

+dd 08163257bh

+dd 0398b8d2bh

+dd 0fa326be8h

+dd 0479bcebdh

+dd 0b99623f7h

+dd 0153757bah

+dd 0a68bb0f7h

+dd 0321b4097h

+dd 0c1d14cc9h

+dd 0d29084b1h

+dd 0eb40711bh

+dd 033e71bf0h

+dd 07f4766e6h

+dd 07e749af6h

+dd 0282e4e36h

+dd 05ceb2aa7h

+dd 0261422aeh

+dd 0fa1eab43h

+dd 01ddb45c7h

+dd 0d410ba56h

+dd 0e7a893deh

+dd 0f950feffh

+dd 05c827f60h

+dd 0433a54e5h

+dd 0fc84394fh

+dd 01b047b7fh

+dd 0e63be852h

+dd 081b8b2c3h

+dd 002dd0d0dh

+dd 043431893h

+dd 0d2d47fa9h

+dd 078eafa51h

+dd 02fa15f50h

+dd 0932fa966h

+dd 032502f55h

+dd 08870f75bh

+dd 0cb06186fh

+dd 00b88cc8fh

+dd 03a879a9eh

+dd 03955121eh

+dd 0e5b7bd29h

+dd 08cc722ech

+dd 00b873aa0h

+dd 03bcb3870h

+dd 0c5251132h

+dd 0451ffab4h

+dd 0be966b03h

+dd 0521a470bh

+dd 0df42d0c4h

+dd 03ea2358eh

+dd 0145fcf4ah

+dd 0e608cd8ah

+dd 07bafdfd0h

+dd 0c2e823fbh

+dd 0e560b513h

+dd 0da771580h

+dd 00fdf4954h

+dd 080bb18dbh

+dd 0ddf0a52ah

+dd 054b31500h

+dd 0ee9c18e6h

+dd 0731f9088h

+dd 06be461aah

+dd 04aa02a94h

+dd 089654ef4h

+dd 0e3d3b81ch

+dd 0195d30c4h

+dd 091fddacbh

+dd 06f371073h

+dd 008b45f4bh

+dd 0f6358c9eh

+dd 04a131834h

+dd 0f41099fdh

+dd 05574cc0fh

+dd 07dabfa3ah

+dd 055c3e946h

+dd 0bb315d04h

+dd 0e4cfa0f3h

+dd 0648cc698h

+dd 041faff97h

+dd 0f9f27e23h

+dd 007d37026h

+dd 0ad21901ch

+dd 03bf725c3h

+dd 0fdaf6bfch

+dd 09b7074afh

+dd 0065d329bh

+dd 00575d689h

+dd 015d0eb8ch

+dd 0f87bee9bh

+dd 060d02134h

+dd 079df6fb1h

+dd 0e5c9f4f7h

+dd 0731c7043h

+dd 0c9d4d614h

+dd 0a326eee5h

+dd 084a263d8h

+dd 0ac460dbeh

+dd 025a8951dh

+dd 0ecd731ffh

+dd 07e0723fch

+dd 005a07ed7h

+dd 04e7dff3fh

+dd 0624559b9h

+dd 0f775c0feh

+dd 0cdfe075bh

+dd 0518c3817h

+dd 0556a7577h

+dd 022f810e3h

+dd 0a3705214h

+dd 030018ea9h

+dd 0e3cec22dh

+dd 08dba8279h

+dd 0ef13726ah

+dd 0a0332653h

+dd 05fe87cfdh

+dd 081aecb6fh

+dd 059d33b59h

+dd 038974beeh

+dd 013d040f4h

+dd 0ddd2edc2h

+dd 051565ec7h

+dd 03e486a1eh

+dd 051a4f72eh

+dd 0b66fab1bh

+dd 06ae18b90h

+dd 0ec4b100bh

+dd 0b3a5b0b4h

+dd 0d5dc5101h

+dd 0126990ffh

+dd 0f31230eeh

+dd 0500667e6h

+dd 0ddce5294h

+dd 066c38ebdh

+dd 08a58be86h

+dd 0d7e5562ah

+dd 0be8638bbh

+dd 0704bc0c0h

+dd 040eb6114h

+dd 0aa548692h

+dd 0aa3476a2h

+dd 0e96e6223h

+dd 0ba3eb54bh

+dd 03265eaa8h

+dd 037f9a062h

+dd 081c04eb9h

+dd 071d39a1fh

+dd 04d6d23efh

+dd 0839e2ea4h

+dd 0afeccf97h

+dd 004b888c4h

+dd 00a1909beh

+dd 0ba19f453h

+dd 0e9856749h

+dd 01aea4f40h

+dd 09f1d872fh

+dd 0f7557dach

+dd 0985f764bh

+dd 0776178bdh

+dd 0f061b614h

+dd 03df8556dh

+dd 0b880023fh

+dd 015640d92h

+dd 0795c0728h

+dd 0acab0f16h

+dd 0b5daaf1ch

+dd 024a6988ah

+dd 0cbe5a9deh

+dd 0707389f9h

+dd 0c2c0146bh

+dd 07a38069eh

+dd 0a2aaf39dh

+dd 0870dc86bh

+dd 03a5f5c1ch

+dd 0e8ac70afh

+dd 0efb2b221h

+dd 01af2bcf2h

+dd 050e5496fh

+dd 035950b02h

+dd 027d53d60h

+dd 047580a6ch

+dd 0e1732396h

+dd 09f666ad2h

+dd 09e6c2dfeh

+dd 04f27eb9fh

+dd 0acb2b539h

+dd 0c2056636h

+dd 06491ff49h

+dd 0511af515h

+dd 0222e308fh

+dd 0abfde846h

+dd 06679c5b8h

+dd 036c2a7d7h

+dd 051c00dbfh

+dd 048371dc9h

+dd 095d9c3c7h

+dd 025b1baach

+dd 05e509976h

+dd 04945a159h

+dd 035477bb0h

+dd 0513e6b97h

+dd 07e409297h

+dd 0c49f0244h

+dd 0a4910637h

+dd 0c02fb996h

+dd 07dd07839h

+dd 0df8a87ebh

+dd 00e73fd4ch

+dd 035f0f606h

+dd 07d07a405h

+dd 06bae093ch

+dd 025bbfa5eh

+dd 03aa983e9h

+dd 0030e92f9h

+dd 0e3e6804dh

+dd 070a9e1e0h

+dd 04c6fde56h

+dd 0952defefh

+dd 0250d445ch

+dd 05ccff8feh

+dd 0da1d954eh

+dd 0275d77d9h

+dd 08d9ab79fh

+dd 08ce5c538h

+dd 0dbbe202bh

+dd 00a0de50dh

+dd 0015bd106h

+dd 0ad8476e9h

+dd 0acd981b3h

+dd 0b280d331h

+dd 0ea47f3a7h

+dd 0aa0fd8b7h

+dd 0cfdff3dch

+dd 01ee3cb3eh

+dd 0281620a9h

+dd 029fa8622h

+dd 08df5f526h

+dd 09da968dfh

+dd 0275c0217h

+dd 01bddb61ah

+dd 0def5f95bh

+dd 04f19d250h

+dd 0475afc1ah

+dd 00b977a23h

+dd 0360a1852h

+dd 0040598ech

+dd 064d62943h

+dd 0d254f7c6h

+dd 0c9879152h

+dd 0a65c66a0h

+dd 0c5ca0f69h

+dd 07b4c3cf1h

+dd 0649c31f2h

+dd 060f441e5h

+dd 03319348ah

+dd 0ac278f14h

+dd 0eb49f246h

+dd 044d2d4cdh

+dd 078469388h

+dd 0d53aedb4h

+dd 03c505f98h

+dd 0b8fd0388h

+dd 068ed0994h

+dd 02452ac22h

+dd 081345262h

+dd 0b9a8a801h

+dd 0d2ddf936h

+dd 0c60f9dbdh

+dd 07529191eh

+dd 03990b67eh

+dd 0202b63afh

+dd 0109e6b56h

+dd 01abd8092h

+dd 082216ddeh

+dd 07c11c774h

+dd 06c484256h

+dd 03fd2dc49h

+dd 017680c19h

+dd 0ef388a3bh

+dd 0096a946bh

+dd 08eab8094h

+dd 0d63fb175h

+dd 09855b76fh

+dd 0c30975e3h

+dd 09d0ffd77h

+dd 0e60a9665h

+dd 0417cbbfah

+dd 0a45b675fh

+dd 00bf737a6h

+dd 059f69f6ah

+dd 0d6d88bc9h

+dd 0c0b45917h

+dd 08e036619h

+dd 030cdf94ch

+dd 014606550h

+dd 0021db9aeh

+dd 0f5f31e6ch

+dd 029905b3dh

+dd 0bf2e03d6h

+dd 0a99bcd13h

+dd 0563ea6c1h

+dd 06323a712h

+dd 0ee6546d8h

+dd 0745b6e10h

+dd 0638ba490h

+dd 064452686h

+dd 00f92117eh

+dd 001a80ebdh

+dd 0f11c1066h

+dd 032f68946h

+dd 0ccdcb87fh

+dd 076ba835bh

+dd 0f5744aa7h

+dd 0dbccc778h

+dd 0c773f46fh

+dd 04f9f61adh

+dd 0b56d736fh

+dd 04d90b2fch

+dd 0bf2ba19fh

+dd 0695f135dh

+dd 06e79cad6h

+dd 081f252cfh

+dd 042504e71h

+dd 033e27da9h

+dd 0abe3936bh

+dd 065cdbca3h

+dd 04a8bd791h

+dd 0dbcac254h

+dd 00862f35eh

+dd 00fa652eeh

+dd 093f6748fh

+dd 01e186c1bh

+dd 0d7ab08efh

+dd 066734b2dh

+dd 0943f4e67h

+dd 0645428d1h

+dd 0b8527daeh

+dd 0b497ec76h

+dd 084de5c2ah

+dd 0c8ab5863h

+dd 097648d5fh

+dd 0629dd9c4h

+dd 045449843h

+dd 04f9d5a12h

+dd 0c857c053h

+dd 046b5861fh

+dd 040cb5a1ah

+dd 0ca9d89ceh

+dd 05fc68ea3h

+dd 067f8360ah

+dd 0855401a0h

+dd 0618c5b40h

+dd 0db1b6946h

+dd 018b4ac19h

+dd 03e63b51fh

+dd 0929b2c8bh

+dd 0227863b2h

+dd 09af058c5h

+dd 039f286ebh

+dd 08729d2bbh

+dd 0a09ae22dh

+dd 008e12250h

+dd 07447b713h

+dd 0d93575c4h

+dd 08096bbd5h

+dd 05a2073f3h

+dd 035c52383h

+dd 0f2566273h

+dd 0141773a1h

+dd 08ccd04dch

+dd 01c3dc9f7h

+dd 0337875d2h

+dd 050f6b82fh

+dd 0b6c569dch

+dd 09baa70c5h

+dd 0eb331626h

+dd 0f6db60e7h

+dd 0779e935fh

+dd 01622f129h

+dd 0ffbd1176h

+dd 00ea5c3c5h

+dd 02b995b36h

+dd 072c00170h

+dd 06da87a3ah

+dd 09916abd9h

+dd 0cda30112h

+dd 096aff7eah

+dd 03a12d33fh

+dd 033928bfah

+dd 08ba4a1d8h

+dd 0160f78fah

+dd 009c5c6a1h

+dd 038a21d68h

+dd 02c08166dh

+dd 0ff2e861dh

+dd 01d6f260dh

+dd 0a774f211h

+dd 0abe4c92bh

+dd 02b31e81eh

+dd 0b1412c6eh

+dd 09634545dh

+dd 0bc425a17h

+dd 0fbb66f48h

+dd 0036f81b2h

+dd 0117b836ah

+dd 0e589b839h

+dd 04a4f11b0h

+dd 04f6debcbh

+dd 075a4dd46h

+dd 0a0e70c51h

+dd 0bbd9ae51h

+dd 04050dd11h

+dd 0dc68b48dh

+dd 06fffb3e1h

+dd 0d079c720h

+dd 036a1f83eh

+dd 006555d35h

+dd 0e7170d37h

+dd 03af079f5h

+dd 026a8b479h

+dd 02a76fdbeh

+dd 031a30b9fh

+dd 039b3eb09h

+dd 00e9c78b4h

+dd 011e020e9h

+dd 0410f116fh

+dd 05d2fe10eh

+dd 02fd8b204h

+dd 081757b9ah

+dd 0394cefb7h

+dd 083975b21h

+dd 0dcc10215h

+dd 07091e42ch

+dd 0a2b510adh

+dd 0b4d4dce7h

+dd 0ed0c4183h

+dd 0832111f7h

+dd 074347573h

+dd 05c7b8b59h

+dd 0a01c09d8h

+dd 06b7009aah

+dd 01fda2b90h

+dd 01f035533h

+dd 0b0170211h

+dd 042fcdf40h

+dd 0fe54cea6h

+dd 0ad868f00h

+dd 021ef6fc2h

+dd 0a8eefc04h

+dd 0dfa5dbffh

+dd 0c5c68ebah

+dd 05b0e9d51h

+dd 04c4bf124h

+dd 077d31a34h

+dd 0797c5cdah

+dd 000f6689ch

+dd 0854d7bd9h

+dd 0723913e9h

+dd 0a79197e9h

+dd 0475092d4h

+dd 09b5f0472h

+dd 0b65ac0c4h

+dd 08710a31fh

+dd 0911e03a2h

+dd 0bb64aa60h

+dd 08b7ae7dah

+dd 0791948feh

+dd 079320587h

+dd 022eb611ah

+dd 09b8c2b40h

+dd 0a3e7921ch

+dd 0f7485274h

+dd 0d224d732h

+dd 0e1b38290h

+dd 0d27069fdh

+dd 0fef934eeh

+dd 0a28cb448h

+dd 0f404ba86h

+dd 0402edb58h

+dd 0ca5f133ah

+dd 07e445aadh

+dd 090077b61h

+dd 01335eda1h

+dd 03d75f8b1h

+dd 0eed74468h

+dd 018c86a86h

+dd 04d1faa6eh

+dd 0130bb86bh

+dd 0dcc7ba6eh

+dd 0da702d18h

+dd 07e40868bh

+dd 03cb41808h

+dd 007ef6de3h

+dd 0cadf2180h

+dd 0bf90062eh

+dd 09dc393b1h

+dd 0c8633d9dh

+dd 082d38f00h

+dd 0a92b9228h

+dd 05fd93804h

+dd 048007070h

+dd 020a1ed8fh

+dd 0c768d32eh

+dd 0e151f67eh

+dd 005d99168h

+dd 06f6c5d34h

+dd 03000a1e6h

+dd 00a0426edh

+dd 070ad8811h

+dd 07b62408fh

+dd 0a7437d49h

+dd 02b9144f6h

+dd 0cb79197dh

+dd 003a91061h

+dd 042c9cc51h

+dd 0151a838ah

+dd 09f05c0c9h

+dd 04fe46d98h

+dd 0ca91a9d9h

+dd 0312d532ah

+dd 06406894ah

+dd 050136297h

+dd 0f574bfach

+dd 0d62cfa4fh

+dd 0f42af2f1h

+dd 014573af4h

+dd 0fdce9499h

+dd 0eb805c45h

+dd 08859c132h

+dd 054106933h

+dd 0c629713eh

+dd 0a5dcdeddh

+dd 0b0a84c87h

+dd 08fdcc956h

+dd 092c94dedh

+dd 02757e99fh

+dd 090c8cff1h

+dd 027adcdf2h

+dd 09c86e0d7h

+dd 0e751a1a3h

+dd 0acdfc34ah

+dd 0cd6c8a26h

+dd 01d0161cch

+dd 018a01132h

+dd 07e69920fh

+dd 05b17fa56h

+dd 035cd0e15h

+dd 05e096242h

+dd 0a2dec636h

+dd 080105586h

+dd 0848610afh

+dd 0ecc81d21h

+dd 0c5044ebch

+dd 0b5b5a569h

+dd 0ed525603h

+dd 0dbf770c4h

+dd 0fe3d6fbch

+dd 09ca5eb58h

+dd 01cba1d59h

+dd 0fce59e2ch

+dd 09b823d10h

+dd 01ec0df8eh

+dd 01084c8a9h

+dd 01003de7ah

+dd 00fa41168h

+dd 01273c0afh

+dd 05a39b2b6h

+dd 0de334836h

+dd 054d44bdah

+dd 03e134353h

+dd 0d3af66eah

+dd 039ac248ch

+dd 04b823fd8h

+dd 034eb3620h

+dd 030723d24h

+dd 0e7ed543ch

+dd 060c7d4c6h

+dd 0957427d2h

+dd 02a8c9436h

+dd 09f2ef161h

+dd 030c58528h

+dd 0cafa954eh

+dd 06aa27f83h

+dd 0ecda0bf2h

+dd 091de50bfh

+dd 05d1492b0h

+dd 0913261cdh

+dd 0e6b0269eh

+dd 0c32d8002h

+dd 0271d7d37h

+dd 069cd6548h

+dd 0cef4576fh

+dd 088d107a4h

+dd 0ec4659cbh

+dd 07a15bee7h

+dd 005576c9bh

+dd 0b287a3d2h

+dd 07197ecdfh

+dd 0e7b98a9ah

+dd 02cfbe928h

+dd 0f504103ah

+dd 0234561dah

+dd 0a51e1a81h

+dd 05039b3f0h

+dd 0a0675ddbh

+dd 04051c9cah

+dd 04f9eb182h

+dd 011f295fch

+dd 0f7bdf19dh

+dd 0a01e9710h

+dd 0b40f5c66h

+dd 06f08710eh

+dd 027a3ac67h

+dd 09ea336f8h

+dd 0851c06cch

+dd 028ce99a8h

+dd 0b05fd954h

+dd 0977b0acdh

+dd 0df4678beh

+dd 0aae4b138h

+dd 04652687dh

+dd 01a02f8f5h

+dd 0d3d3c96bh

+dd 032eb227bh

+dd 0e2ab32a6h

+dd 05703fd9ah

+dd 04575e556h

+dd 0c6b55749h

+dd 0aa80fe6eh

+dd 0813cec63h

+dd 07850d76ch

+dd 0048c76e6h

+dd 056ea1d3bh

+dd 03595f131h

+dd 00ba6928eh

+dd 0d310ceebh

+dd 05f40a315h

+dd 0035f9d26h

+dd 0149bf9b6h

+dd 0daaa7ca1h

+dd 08fbf870ch

+dd 083fe286ch

+dd 0376d5c8bh

+dd 0e22ad00dh

+dd 07bbd25e4h

+dd 053e1192ch

+dd 016b759c2h

+dd 008015ebdh

+dd 08fd1e61ch

+dd 0488a9472h

+dd 055f17200h

+dd 02360f9a4h

+dd 0f0559cbbh

+dd 01c85b3e1h

+dd 0e992f031h

+dd 0c7210289h

+dd 074db13aah

+dd 04ad089cbh

+dd 0d2b5d020h

+dd 075a86998h

+dd 00d3af278h

+dd 04ef4d185h

+dd 0725bd643h

+dd 01fde57dbh

+dd 0dd2bc294h

+dd 0f460cf5bh

+dd 0b6ad1421h

+dd 068d268c8h

+dd 0d13ba098h

+dd 043bc8e3eh

+dd 00852da29h

+dd 0a5720f62h

+dd 0108e86eeh

+dd 0ade9b157h

+dd 00b53c713h

+dd 0aa5700f2h

+dd 04a98c120h

+dd 04c11fc0ah

+dd 08d30c09fh

+dd 0b77eeeedh

+dd 0e0eec721h

+dd 0b9781041h

+dd 02160e228h

+dd 0d910c275h

+dd 0c133475fh

+dd 0d1f1b8e1h

+dd 0cb080a26h

+dd 0f0009d50h

+dd 091563cd0h

+dd 0566bcc4dh

+dd 079d4596eh

+dd 04732406ch

+dd 073737305h

+dd 089c74f7fh

+dd 0ee34af69h

+dd 071c9be11h

+dd 015ce85cah

+dd 0662ae53fh

+dd 029720de0h

+dd 0d2dc5ebbh

+dd 0e21584d0h

+dd 0cdb21ed4h

+dd 09ea3853fh

+dd 033b24041h

+dd 0a9d76766h

+dd 0a67e85d3h

+dd 07306f809h

+dd 0459831ebh

+dd 0566d9452h

+dd 07c84702eh

+dd 07c31a424h

+dd 02b5c52c5h

+dd 071644575h

+dd 0510b7445h

+dd 02b0f81fbh

+dd 0bfa3e8c0h

+dd 0d531b576h

+dd 03b3a689eh

+dd 05ababf3fh

+dd 09399e02ah

+dd 03f802196h

+dd 0cf5b8356h

+dd 072f95bc9h

+dd 087145319h

+dd 052c2f95bh

+dd 03207eccdh

+dd 0ee875f1bh

+dd 049d97362h

+dd 022af5fd8h

+dd 053700ad5h

+dd 01f0e4322h

+dd 0ded814e0h

+dd 04f675075h

+dd 0eaf09ad6h

+dd 0f12b19b3h

+dd 083d6ed0eh

+dd 05ed12bd2h

+dd 02d08c8d1h

+dd 00764071eh

+dd 08bc181a0h

+dd 0ff16efe7h

+dd 0c7595050h

+dd 09b50f76eh

+dd 065c460b3h

+dd 05f4b5dc5h

+dd 042501a3eh

+dd 0e05dc64ah

+dd 0562e75c0h

+dd 071658954h

+dd 0a6f72bc7h

+dd 01ec6df5ch

+dd 0812f998ah

+dd 0331a9055h

+dd 04e8f731eh

+dd 00719b08fh

+dd 08d033bddh

+dd 06d18ef5ch

+dd 00989d438h

+dd 07eaf5bcfh

+dd 08220defah

+dd 0d16a98c3h

+dd 0ba57ca13h

+dd 087fc7874h

+dd 0ab7ec885h

+dd 0f6596db5h

+dd 06aec8adeh

+dd 04d67d24fh

+dd 03914508bh

+dd 0d6797f6eh

+dd 008e981b5h

+dd 0bdf6b693h

+dd 0a125a4f4h

+dd 0fe73bcf9h

+dd 0ec3a1ac3h

+dd 073d8ee54h

+dd 00fe121d3h

+dd 07d74ea43h

+dd 0316f4713h

+dd 0d0ad638ch

+dd 0bb47c73bh

+dd 0ac0391d1h

+dd 0a1652999h

+dd 0fb71a812h

+dd 0fb4f5683h

+dd 0d9824637h

+dd 0d3493b26h

+dd 0ef67a4b5h

+dd 0072e6a89h

+dd 026cc7705h

+dd 0386129cbh

+dd 0655cc60ah

+dd 07da45127h

+dd 040a4cd07h

+dd 01c9805a2h

+dd 0275d89fah

+dd 021dc47a7h

+dd 018b86816h

+dd 02ccf105eh

+dd 0290c87a9h

+dd 057289324h

+dd 090622a75h

+dd 0547e9065h

+dd 0b598664fh

+dd 011628e5ah

+dd 028e04aceh

+dd 04d879450h

+dd 01b787c98h

+dd 045637291h

+dd 0fe4cb4ffh

+dd 09ac9e87ch

+dd 0ca1b37d8h

+dd 05df8aa33h

+dd 0e5f5fd23h

+dd 05b0a7522h

+dd 08162fa52h

+dd 0a41aaaa2h

+dd 07ec55be2h

+dd 0ec225a0ah

+dd 06dfc397bh

+dd 056f70054h

+dd 02b2b9bebh

+dd 05cd97845h

+dd 09151f14ch

+dd 0873c202dh

+dd 092d0643ah

+dd 0e1de318fh

+dd 000d48d53h

+dd 0dce4f4a6h

+dd 0ac4e5d46h

+dd 09ee5404dh

+dd 08ea07942h

+dd 04ec07f30h

+dd 0164fc666h

+dd 08747f688h

+dd 03cc9f717h

+dd 0cafc2985h

+dd 029357049h

+dd 0779b1a76h

+dd 06da7d2a1h

+dd 01fdd869eh

+dd 08e12f76fh

+dd 0b5405e55h

+dd 0f5998fa0h

+dd 06bb17884h

+dd 01b077d71h

+dd 0b4972e5fh

+dd 0e053aa02h

+dd 0fd16b131h

+dd 0cbfc8c7fh

+dd 09ffaf20eh

+dd 0ca11cb65h

+dd 07ed9e0f5h

+dd 0aa55cb1bh

+dd 08cc3db1eh

+dd 0b0656e18h

+dd 0b9d4eccch

+dd 00f80ac73h

+dd 00131767ah

+dd 0e9a51c46h

+dd 0e4f3668eh

+dd 0a498bb53h

+dd 0817da29eh

+dd 078cd04f7h

+dd 06361a36ch

+dd 0b2fdb40dh

+dd 05a4b0345h

+dd 01d8470c3h

+dd 084feb60eh

+dd 0660296c2h

+dd 0ad1b56f4h

+dd 060fd3254h

+dd 0516bc0cah

+dd 054050c87h

+dd 0fe1e5f5eh

+dd 07ae84d13h

+dd 06407e1a3h

+dd 01d9163d1h

+dd 071832ec1h

+dd 0ce033c95h

+dd 041408c7ch

+dd 07acd7f73h

+dd 0251cc6aah

+dd 06991a2c8h

+dd 033d133deh

+dd 0b73785a4h

+dd 05da29031h

+dd 077267de2h

+dd 001e8823ch

+dd 0b88f8f0dh

+dd 07a7c272eh

+dd 0f7372ce2h

+dd 03c77c8e5h

+dd 0be1cf681h

+dd 0a4d05cf0h

+dd 03089c2b5h

+dd 0336cc07fh

+dd 0b38b0173h

+dd 053edd767h

+dd 094d38c7eh

+dd 0133e1500h

+dd 00dca472eh

+dd 06d9ef755h

+dd 0837e7f0ch

+dd 062c189fbh

+dd 061e3abe3h

+dd 099b0086ch

+dd 0a52fc42fh

+dd 0d7873e2dh

+dd 0b86a53bch

+dd 06a46cee6h

+dd 0ef413970h

+dd 0d76d225bh

+dd 04facd927h

+dd 084dbba90h

+dd 0353465ebh

+dd 060529fcah

+dd 0c9905dc9h

+dd 0f8737505h

+dd 0806bd3afh

+dd 0ff0c4496h

+dd 0b658ddc7h

+dd 0df69708eh

+dd 0f6da34d0h

+dd 033942c4dh

+dd 0a5ce5cdah

+dd 07d013b53h

+dd 079c3329fh

+dd 038da1f9ch

+dd 0abd017b3h

+dd 00cf03066h

+dd 09ab9c655h

+dd 04ba793c5h

+dd 0d7478494h

+dd 0b8a4fa15h

+dd 060d25e6ch

+dd 005819285h

+dd 02a314992h

+dd 007d46f12h

+dd 0271c0b18h

+dd 02f983f24h

+dd 0db71ec1eh

+dd 0789df697h

+dd 05cb7f6feh

+dd 0e5ed101dh

+dd 0e9d45d7fh

+dd 083e469d3h

+dd 09f3f11afh

+dd 0551008a8h

+dd 02a3244f0h

+dd 03601b489h

+dd 0a53120c4h

+dd 0e2432abah

+dd 06350d283h

+dd 0cb4489bbh

+dd 0f72ff0cfh

+dd 0b4d1e620h

+dd 0069787ach

+dd 095bfb8c1h

+dd 09f4c9621h

+dd 06ab85bb2h

+dd 0c2725be5h

+dd 061343330h

+dd 0e19089e9h

+dd 0e10fb625h

+dd 005e0a147h

+dd 03c5e69f8h

+dd 07308b8c4h

+dd 00c4ecd6fh

+dd 0bb945183h

+dd 00d49196fh

+dd 02392bb6ch

+dd 01e0253eah

+dd 0d83b41a1h

+dd 06e225ee7h

+dd 012b33116h

+dd 01ffe4688h

+dd 0693f26a6h

+dd 0f18425fch

+dd 00fc90de0h

+dd 0da794135h

+dd 0d0eec6f5h

+dd 0f1c5febbh

+dd 0e7c32bbch

+dd 02b6ec1e5h

+dd 06177ac1dh

+dd 0c5434f3fh

+dd 0677af034h

+dd 0675f4073h

+dd 071da47c9h

+dd 0e42d96ffh

+dd 04cba8629h

+dd 0dc666fefh

+dd 023e68006h

+dd 0b521db44h

+dd 0c118106bh

+dd 023114f08h

+dd 0a33d9eb3h

+dd 0a2008243h

+dd 0f19ca057h

+dd 0f104e3d3h

+dd 07b5ffe4dh

+dd 05b495d9ch

+dd 0703cc169h

+dd 01313f8d1h

+dd 0d989feabh

+dd 0c64cd910h

+dd 0675c7612h

+dd 024c8ceffh

+dd 089ef04cdh

+dd 0436bdc6ah

+dd 0d01c4478h

+dd 041e587deh

+dd 087df2964h

+dd 041c56f11h

+dd 0632ea3bah

+dd 0af0f1242h

+dd 0a9407647h

+dd 014cda821h

+dd 049b8e05ch

+dd 0c025a0edh

+dd 017f89ea8h

+dd 01fa0d49fh

+dd 079a24114h

+dd 0aabef508h

+dd 087591903h

+dd 0b9386be4h

+dd 0111a7d0fh

+dd 02d8c1368h

+dd 0a73e45a4h

+dd 0ff65a58eh

+dd 030a737f3h

+dd 03f817590h

+dd 096a15a53h

+dd 041e4d652h

+dd 00e01113eh

+dd 0acca967bh

+dd 0b913842eh

+dd 094b527dch

+dd 08e7a289bh

+dd 09b2248bah

+dd 08cf9fcabh

+dd 088e21175h

+dd 09af0a25ah

+dd 049dc9c79h

+dd 08087a712h

+dd 01dffb762h

+dd 058430a2dh

+dd 01e2f4c57h

+dd 0a06f9744h

+dd 095c531e8h

+dd 0024b76e2h

+dd 0438be285h

+dd 0cc1206f1h

+dd 0ddc3262bh

+dd 0b3c4b01ch

+dd 012a65db1h

+dd 0feedfb9fh

+dd 08f6bde7eh

+dd 0e629929ah

+dd 06f25b76bh

+dd 09c75d6c7h

+dd 09836140ah

+dd 098c54267h

+dd 0969de8a3h

+dd 028b892eeh

+dd 0ee282ba9h

+dd 0d16aa413h

+dd 0890b3b7ch

+dd 056b05e33h

+dd 0e282da9dh

+dd 0441f253ah

+dd 00f5a30f6h

+dd 0206779dfh

+dd 0d29f4e35h

+dd 0b7b90487h

+dd 07427f3d4h

+dd 09e164593h

+dd 0c45dab7ah

+dd 08871f008h

+dd 03096c49bh

+dd 0c1ddd075h

+dd 0502d019fh

+dd 0da69460fh

+dd 09a57ff86h

+dd 09f7abb8ch

+dd 00914e4ech

+dd 0d6c4c29bh

+dd 0f4e9590ah

+dd 089f9305dh

+dd 09fe236aah

+dd 06d509618h

+dd 0f9670752h

+dd 076d3d11ch

+dd 039bc1b40h

+dd 04f65b3c8h

+dd 0e414265bh

+dd 0830fafb8h

+dd 07707c874h

+dd 02ce85da5h

+dd 0059c24fch

+dd 0cb8f8071h

+dd 06d3598b3h

+dd 031e2e8f3h

+dd 0872dc9cbh

+dd 0e055b639h

+dd 0e02a1dffh

+dd 0d4e586dfh

+dd 0994d8527h

+dd 041e5c206h

+dd 0cd60b5bfh

+dd 0a2cd9f2eh

+dd 07c3d47deh

+dd 0ff563af9h

+dd 0c8831cc5h

+dd 07499ab8ah

+dd 0b7238a5ch

+dd 0bdbc3e18h

+dd 0251c1720h

+dd 0b2dd2cebh

+dd 0c8c6dc14h

+dd 0b2ec416fh

+dd 0f6663e7dh

+dd 0685477abh

+dd 053a34c83h

+dd 02b2f61a5h

+dd 02ee95584h

+dd 0feb71034h

+dd 0e35de415h

+dd 07d454ee6h

+dd 061dad262h

+dd 07c51083bh

+dd 0d947b0d5h

+dd 07db762b2h

+dd 071afac81h

+dd 0aa875759h

+dd 0086d5f5eh

+dd 09d832d0eh

+dd 0fa3788fch

+dd 0a333071fh

+dd 00ef6aeddh

+dd 024f8b3deh

+dd 08d759082h

+dd 00b530533h

+dd 0f5e2282fh

+dd 0d3f51407h

+dd 0c61516a2h

+dd 0d958ed90h

+dd 0b3541a95h

+dd 0ec520d32h

+dd 08c4e6b4bh

+dd 0d65a6f11h

+dd 04bb33321h

+dd 01aab0aach

+dd 0bc20fcf1h

+dd 0ecce6391h

+dd 061e46a5ah

+dd 026cbcb72h

+dd 0c50820dfh

+dd 02bb3eff1h

+dd 0a48f442bh

+dd 0b3702effh

+dd 0301b2e0bh

+dd 00d49cea5h

+dd 02244f2f5h

+dd 0a43b8c34h

+dd 05fe563beh

+dd 07285622ch

+dd 04d7b3262h

+dd 03bdf1fc6h

+dd 03e835196h

+dd 0427fdd16h

+dd 0d0adfe21h

+dd 0912fb69dh

+dd 035986676h

+dd 06ce59bcch

+dd 0e7909e85h

+dd 0c8c32976h

+dd 0ea917a88h

+dd 08896f4ffh

+dd 06ff06df0h

+dd 0aabf8b79h

+dd 0d7c7a68ah

+dd 06fd9ff22h

+dd 0e3622e59h

+dd 07c344408h

+dd 091b9fd94h

+dd 0338db2bah

+dd 09e9b59fdh

+dd 09de655c7h

+dd 059f5f70fh

+dd 04985a080h

+dd 00992d61eh

+dd 0646e2dadh

+dd 0a1ad6146h

+dd 09a706348h

+dd 0df300c0ch

+dd 009362cd0h

+dd 0dc3812bbh

+dd 0d5fc6ac9h

+dd 02ee6d3aeh

+dd 0d371ebd5h

+dd 06f03fc5eh

+dd 0cfe2fbadh

+dd 004896dcbh

+dd 00a028b6eh

+dd 0f6c7615bh

+dd 0cb77de7dh

+dd 00f97f59eh

+dd 0055bed3eh

+dd 00992bbb7h

+dd 075736d5fh

+dd 0fbbf0a6bh

+dd 07f7d0520h

+dd 0f192b430h

+dd 053f1b2bbh

+dd 049ec0392h

+dd 0314f8941h

+dd 09fb95cbdh

+dd 09849e73eh

+dd 0570a2e91h

+dd 056f77f82h

+dd 0e63be3b8h

+dd 0ac16fc44h

+dd 09e21e349h

+dd 0efe8d0c2h

+dd 07e3fe6feh

+dd 0cd01e0feh

+dd 0e282e31dh

+dd 0b0e49729h

+dd 0e1402a75h

+dd 098e75281h

+dd 06a297836h

+dd 0cb31eb0bh

+dd 04f0df95ch

+dd 06fafe4cdh

+dd 0b443dabbh

+dd 070190baah

+dd 008cb1c4fh

+dd 01ba456fah

+dd 0a1838ed5h

+dd 0b121bbebh

+dd 095fc7a60h

+dd 083dd3149h

+dd 0a51551f1h

+dd 06f49288bh

+dd 0e19498e5h

+dd 0520830beh

+dd 096efdb8fh

+dd 0203ed910h

+dd 0c38d2067h

+dd 037870d37h

+dd 0e09aa02dh

+dd 0a9a4a1eah

+dd 0ec3ea916h

+dd 0b4537edeh

+dd 003143240h

+dd 040436981h

+dd 062891656h

+dd 0f44d6b90h

+dd 0213d7236h

+dd 05de29457h

+dd 093f9da19h

+dd 0efdf2993h

+dd 047b0b5cbh

+dd 0bd154153h

+dd 0baa48b2bh

+dd 05d193705h

+dd 0bb1ab326h

+dd 045f0340fh

+dd 05a6848ach

+dd 0b2c0eef7h

+dd 0e5249d40h

+dd 0e0a4109bh

+dd 07f417a1bh

+dd 01801c6a1h

+dd 0c09b0d3ch

+dd 0f032a0c9h

+dd 0450a749fh

+dd 0817cc1f6h

+dd 0aa08f8a0h

+dd 06439864ah

+dd 0c9020a02h

+dd 00e546eedh

+dd 0831b9507h

+dd 05abd6497h

+dd 01171d268h

+dd 0445dc7a7h

+dd 0d81e5a3fh

+dd 06f3358b9h

+dd 054146926h

+dd 05aa67743h

+dd 00beb741bh

+dd 063710afeh

+dd 0782d076dh

+dd 04f58c3d1h

+dd 0feb45223h

+dd 0fdd5fa1ah

+dd 0ea9ae70eh

+dd 0304ad81bh

+dd 0fca9b843h

+dd 029430073h

+dd 0308a1a48h

+dd 094d3b55bh

+dd 07f8019c4h

+dd 08173ff1fh

+dd 08c9f83abh

+dd 08187f834h

+dd 040050463h

+dd 070228781h

+dd 03b30d738h

+dd 0fed93b90h

+dd 04821b246h

+dd 055a48a6ah

+dd 0f364f05ah

+dd 028ee52e2h

+dd 074ef1baeh

+dd 02170e488h

+dd 0fd5ae11ch

+dd 092c269b9h

+dd 0204562f4h

+dd 0b7159442h

+dd 00a1d7ca4h

+dd 09818f89ah

+dd 044df59d0h

+dd 046995355h

+dd 00256191ah

+dd 0ec251097h

+dd 0806152cfh

+dd 0382b91cch

+dd 0893290f0h

+dd 04b85eca6h

+dd 09c3efbefh

+dd 0e52f49efh

+dd 0a6687fddh

+dd 026a8b577h

+dd 0c2d521cbh

+dd 05c9b5a4bh

+dd 0838965d6h

+dd 0daa55b57h

+dd 0a05de0fbh

+dd 036a5d6dbh

+dd 06e2275a3h

+dd 0e2d8bd51h

+dd 0be6c3073h

+dd 0aefeabf8h

+dd 01956e427h

+dd 0eb281538h

+dd 0ec58ca21h

+dd 0d4dde7bfh

+dd 0f402804eh

+dd 03f27ad92h

+dd 09f86d174h

+dd 00f99236fh

+dd 074017d69h

+dd 09a084e81h

+dd 0a6625e47h

+dd 048982debh

+dd 0e16797cbh

+dd 0d2366b76h

+dd 07106606eh

+dd 06488d21fh

+dd 0edafe78bh

+dd 0318362e8h

+dd 0516730adh

+dd 0e4e41a21h

+dd 0fd6bfa25h

+dd 0053f14cah

+dd 045c80069h

+dd 06bbfa0f9h

+dd 0c320a03fh

+dd 037b309b7h

+dd 05260171eh

+dd 001c54d7dh

+dd 0e1fd25f6h

+dd 0999af730h

+dd 01d3ea1e8h

+dd 03a591aceh

+dd 01e73473ah

+dd 01e8c1e2dh

+dd 0c13c32c3h

+dd 0e9d18da5h

+dd 0fadbb8a1h

+dd 0f9652980h

+dd 0a67683b1h

+dd 0ac7bee74h

+dd 0079e2d3eh

+dd 08b74959ch

+dd 081790130h

+dd 0ae97282ch

+dd 0b04d37abh

+dd 09a50fe7fh

+dd 090a5aeb9h

+dd 0815761abh

+dd 05d69479ah

+dd 000fa18e9h

+dd 0712cd3dbh

+dd 03f930a63h

+dd 0c37c423ah

+dd 08c2a11f7h

+dd 014b2ce74h

+dd 0454d5f55h

+dd 018c421c3h

+dd 0524f006fh

+dd 0f946fa11h

+dd 081c4007ch

+dd 005bba400h

+dd 040f4d514h

+dd 0faa01ed1h

+dd 08686743fh

+dd 01dc4402fh

+dd 01adf4bfah

+dd 0c1fa75dch

+dd 05ae807e1h

+dd 022b37048h

+dd 0e22e5ef0h

+dd 02e105291h

+dd 098a71190h

+dd 0a847b67dh

+dd 02c05e0d8h

+dd 0506aa725h

+dd 01e3056eeh

+dd 0ec43d5f5h

+dd 09422fe3dh

+dd 0f034d6bah

+dd 00653de1ah

+dd 08b58fe34h

+dd 0972291b8h

+dd 070b814feh

+dd 0936380d5h

+dd 0cee0ab5bh

+dd 05e60985bh

+dd 0b27f5e36h

+dd 0c90dc225h

+dd 0bd478608h

+dd 0a4007e71h

+dd 08ff6753ah

+dd 096edd95ah

+dd 04bd0f40fh

+dd 0eea54b55h

+dd 0f231fb8bh

+dd 05979704fh

+dd 04fc4ede6h

+dd 045237533h

+dd 0ad73d3a9h

+dd 06943ed67h

+dd 01fd21329h

+dd 05a046cc6h

+dd 0f8eeee61h

+dd 08fa69461h

+dd 0cbfa63d7h

+dd 0769a2717h

+dd 0469b44d5h

+dd 0a4b6baf3h

+dd 09fb08b1fh

+dd 04ddc36a9h

+dd 0cd4a607ah

+dd 08ba9a608h

+dd 0e3e457c5h

+dd 0cad4ee09h

+dd 0e9416ed1h

+dd 0016276f6h

+dd 08b6a7040h

+dd 03cbf0239h

+dd 0ee075337h

+dd 0fe8f45f8h

+dd 0667f2d74h

+dd 0d448855dh

+dd 09d1893e7h

+dd 098f61b4eh

+dd 03f55210eh

+dd 07f63d0bbh

+dd 05cdf02b7h

+dd 0266a6785h

+dd 008c29486h

+dd 07f76e401h

+dd 028c54a3eh

+dd 04d0d330ch

+dd 008070f13h

+dd 0d4f153eeh

+dd 091a295feh

+dd 091d4fea9h

+dd 0ac63594bh

+dd 0517c5ffch

+dd 0d712acb3h

+dd 0ea97e5e3h

+dd 0ac802155h

+dd 042add2e0h

+dd 0606ce8bah

+dd 0331539a7h

+dd 0f5bd3097h

+dd 07d61c89fh

+dd 0dde97aeah

+dd 02ee1d3eah

+dd 00102e452h

+dd 0f9733bbdh

+dd 0d6e57974h

+dd 0b1b2f65fh

+dd 07565461fh

+dd 0b0cb759fh

+dd 04deb2834h

+dd 0a388d3d6h

+dd 0cd19e90ah

+dd 0371922b4h

+dd 025e9fee4h

+dd 0f6371c91h

+dd 0359888cbh

+dd 0819666f1h

+dd 0f328276dh

+dd 07c4fc79dh

+dd 0bde6893ch

+dd 07f605647h

+dd 0ae8a700bh

+dd 0b5012ba4h

+dd 0a52c96bbh

+dd 012818488h

+dd 062ed5c26h

+dd 0321f9a65h

+dd 0008ce339h

+dd 0dee51e27h

+dd 0501cd729h

+dd 00d18da9eh

+dd 082a3ae2fh

+dd 0c164163bh

+dd 054bf5099h

+dd 05ae4b76fh

+dd 03589ca29h

+dd 02788e56bh

+dd 09a17e423h

+dd 0a1ce0553h

+dd 0483849ceh

+dd 0796fa05bh

+dd 01dad48ech

+dd 0d9152588h

+dd 0706a38bfh

+dd 0dce9c8d4h

+dd 03d09588dh

+dd 0cd98f882h

+dd 0806a9aaah

+dd 0ef30653eh

+dd 08586edd9h

+dd 0af3ebb4eh

+dd 0264769adh

+dd 0af2c9c35h

+dd 06da6532bh

+dd 00fbc4a91h

+dd 018298401h

+dd 03080b4d5h

+dd 04ac60519h

+dd 01334b6beh

+dd 0747e0fe0h

+dd 07a3f5f54h

+dd 0208ef09ch

+dd 02ed52711h

+dd 0e7941a40h

+dd 02f3b02bfh

+dd 0c2f6186eh

+dd 0784f4022h

+dd 09fc4dd0bh

+dd 0ea9dafdch

+dd 0b90e0807h

+dd 0aa6a6bb2h

+dd 079cf3545h

+dd 07d646514h

+dd 0949abbc7h

+dd 0bd7e322ch

+dd 0e4e38627h

+dd 007b1391dh

+dd 0bc2188f9h

+dd 0f2c28d1fh

+dd 0f2725dc7h

+dd 0de8d6926h

+dd 0bb1b6934h

+dd 04b3c98d0h

+dd 01ab7bbcfh

+dd 0fc95780ah

+dd 03fd7957ch

+dd 063ddcc93h

+dd 0038c773ch

+dd 097375ca3h

+dd 095d5fcb4h

+dd 0ffe377f7h

+dd 0c627b4d1h

+dd 040f37ef5h

+dd 0e62f6155h

+dd 0eeb36593h

+dd 0c479b2e9h

+dd 004c220deh

+dd 0af34ac85h

+dd 0c690e5a4h

+dd 0d11923f0h

+dd 0f77e6625h

+dd 0fb3f98fdh

+dd 0a60744afh

+dd 0558cb431h

+dd 0d44bcf14h

+dd 059cd5a1eh

+dd 0227c17f1h

+dd 02ef7c98ch

+dd 043757338h

+dd 00b67b2c2h

+dd 0f261c67dh

+dd 0a3fac908h

+dd 047849734h

+dd 00c6e5875h

+dd 0f5b3cf11h

+dd 06d56ca48h

+dd 0c86a218bh

+dd 0df626808h

+dd 00dcc7ea7h

+dd 0081952bch

+dd 00bdfd4c4h

+dd 0dd370375h

+dd 0e39ee09ah

+dd 07ac58b6eh

+dd 04a622ce6h

+dd 04452d063h

+dd 026e92a3ah

+dd 06e001a93h

+dd 0f3e0aeedh

+dd 0834e981dh

+dd 04138f3d2h

+dd 0ffa4ebd0h

+dd 0a3ee2cb7h

+dd 04387adb8h

+dd 0106c9ddbh

+dd 0bea5e5ceh

+dd 0dcb9300fh

+dd 0a48638b7h

+dd 0d4e0a7c2h

+dd 0dba7e28ah

+dd 0ac4d2e2ah

+dd 0104b6da8h

+dd 03091730eh

+dd 03cf23a4eh

+dd 0762139eeh

+dd 0dc644a78h

+dd 08587cdc8h

+dd 088ed1ba7h

+dd 039df5dabh

+dd 012d37786h

+dd 00e0ccc01h

+dd 0649c9b0fh

+dd 01e610116h

+dd 02032d906h

+dd 0d85d4ba7h

+dd 0c0789c47h

+dd 059cb1ac9h

+dd 0c27564fbh

+dd 0e2b9a6cdh

+dd 0f9a24467h

+dd 023b515ceh

+dd 099734a76h

+dd 09cf7ef25h

+dd 066482735h

+dd 082e4f0aah

+dd 0fd817036h

+dd 027615baeh

+dd 021114109h

+dd 0031ec866h

+dd 0ffe499cah

+dd 07765670bh

+dd 024242363h

+dd 0da937e88h

+dd 02ba3dc57h

+dd 0651df580h

+dd 08e863bf3h

+dd 021a93fddh

+dd 0033d8c1ah

+dd 0310d16c6h

+dd 06148b078h

+dd 09a24660eh

+dd 08d4a5a31h

+dd 06c7f79eeh

+dd 02edc0470h

+dd 03a7fc546h

+dd 09c2feee2h

+dd 07050d8e7h

+dd 0f9eee206h

+dd 02b6f3fa8h

+dd 08a9e01ech

+dd 05af0968ch

+dd 0b9c9edf0h

+dd 04d058355h

+dd 0bf60dd5bh

+dd 087bd3907h

+dd 056e5859bh

+dd 047a7d0a4h

+dd 0576536e2h

+dd 0763a6132h

+dd 0ac72daa1h

+dd 081a4c9b0h

+dd 07950206ch

+dd 0001611beh

+dd 08678cceah

+dd 0961b395ah

+dd 0be56a48ah

+dd 0c10fdc93h

+dd 00c3a0ac7h

+dd 0812fa4c5h

+dd 0f0b10150h

+dd 0ce1f51ddh

+dd 0a4d083f1h

+dd 04f8e30f6h

+dd 0f1084f6bh

+dd 076cde213h

+dd 0d5ba6559h

+dd 0d6375912h

+dd 05b8533f4h

+dd 006cc9b4dh

+dd 018fff68fh

+dd 0c9b7acceh

+dd 0dea1455bh

+dd 062c5d786h

+dd 074823ddah

+dd 0c789a1d1h

+dd 0e00c901ch

+dd 08f45e54dh

+dd 0f3aeeab5h

+dd 04afd96dbh

+dd 001514be7h

+dd 0aacb772fh

+dd 09157bd20h

+dd 0136769e9h

+dd 0b423ef42h

+dd 012644499h

+dd 06b5f6d47h

+dd 053489eeeh

+dd 096342c0eh

+dd 09d4294e0h

+dd 0e08e6771h

+dd 0ff9b309ah

+dd 0d60f4d56h

+dd 01f586fb1h

+dd 0db203e81h

+dd 090d83ad2h

+dd 065096e3bh

+dd 029092e24h

+dd 045be596ah

+dd 00e2555f8h

+dd 0cb4acaf1h

+dd 0b663407fh

+dd 091f79d81h

+dd 03d3afcafh

+dd 0d09d7a68h

+dd 037b4ac5bh

+dd 0eca9d8b6h

+dd 01897fc3ah

+dd 038c100deh

+dd 07126cbech

+dd 0d62b443eh

+dd 07cc1a470h

+dd 0c50758a8h

+dd 03ee93424h

+dd 058bad726h

+dd 0811ac2fah

+dd 06bdf88dch

+dd 0b30c139bh

+dd 08e04ec47h

+dd 0c4b81029h

+dd 064a2f0b0h

+dd 0173e53b8h

+dd 059863b17h

+dd 04a082e4ah

+dd 039dc8629h

+dd 07b098f8bh

+dd 0338fe0d4h

+dd 09b8c1ab5h

+dd 07631960fh

+dd 0e5e8a274h

+dd 06cef53bbh

+dd 09dfb5a86h

+dd 08e94180fh

+dd 081a9f3b3h

+dd 0189c4a59h

+dd 0c11c8bc9h

+dd 0ddad0589h

+dd 065c7387eh

+dd 06f2b94a0h

+dd 096b526bbh

+dd 07dcfd73bh

+dd 0ab35e109h

+dd 02bb615e8h

+dd 0927c65deh

+dd 0154268fbh

+dd 04d88bf9ch

+dd 05e14914bh

+dd 0f834901ah

+dd 0a04cd465h

+dd 05e19db1ah

+dd 0765be3e1h

+dd 005238410h

+dd 0423c0c78h

+dd 0e795d5dfh

+dd 0155e6c95h

+dd 01c71f70ah

+dd 04340c880h

+dd 0f6ba5176h

+dd 0d500f6c4h

+dd 0df7a9248h

+dd 0f3fcfe89h

+dd 0a89b5b32h

+dd 05a2c0ba5h

+dd 0da8a78abh

+dd 0a30fb4bah

+dd 0a673ce26h

+dd 0f974c4c0h

+dd 0cc9cb65ah

+dd 013ccf399h

+dd 0518a9846h

+dd 0e2635331h

+dd 0c2290cd8h

+dd 09b13993eh

+dd 0ea2f3ff0h

+dd 0c1405195h

+dd 074aa072ah

+dd 07b285499h

+dd 0c33756bah

+dd 057de723bh

+dd 0f98997b4h

+dd 0dc5fe8b6h

+dd 020be7c93h

+dd 0b8e232a4h

+dd 060593ca5h

+dd 01803e8deh

+dd 03d7ba5e1h

+dd 0681f080ch

+dd 0b790b79bh

+dd 0f3dbf1f0h

+dd 0e6f08cdfh

+dd 0455e9ddbh

+dd 0ec338edch

+dd 036d2163dh

+dd 096dc4b65h

+dd 0a07582adh

+dd 0bb601ebah

+dd 0895129afh

+dd 04ca7633ah

+dd 0ebacb194h

+dd 052cf3ea1h

+dd 05f0f104fh

+dd 05b60a020h

+dd 0ec554303h

+dd 0713a8a35h

+dd 071dc611eh

+dd 0b5d1b8f2h

+dd 0227a2579h

+dd 042f7c251h

+dd 071344816h

+dd 06a5699f3h

+dd 0f8b2b355h

+dd 04de6e308h

+dd 01f5e316dh

+dd 0ad0e4315h

+dd 095418679h

+dd 01c0a819dh

+dd 0ba2b9c4dh

+dd 063668ec1h

+dd 032db84ech

+dd 050e3d065h

+dd 066c84256h

+dd 080a4a392h

+dd 0bd421147h

+dd 0cd5fe6d1h

+dd 09d9670c8h

+dd 08fa1e08dh

+dd 0b5a78b56h

+dd 0b5ae9f2bh

+dd 04661372dh

+dd 00ef33896h

+dd 0aa0962f8h

+dd 02e549369h

+dd 0eea6d67dh

+dd 056be36d9h

+dd 06004619eh

+dd 067c6111eh

+dd 0126d18dbh

+dd 008477704h

+dd 072ed3098h

+dd 0e9a017b4h

+dd 0b0d6d1abh

+dd 09f22efaeh

+dd 03d6e5f23h

+dd 0bf600781h

+dd 0e752a4e8h

+dd 0f7f5d07bh

+dd 06ac71896h

+dd 096d16bfeh

+dd 02d60606fh

+dd 0d68af20ah

+dd 02af6c78fh

+dd 00b25059eh

+dd 01865d867h

+dd 0d8cf0ab4h

+dd 043e3dbe0h

+dd 0166399a3h

+dd 0b8d36f37h

+dd 0d3b1f4a8h

+dd 0d735aefbh

+dd 0692b1a56h

+dd 0fc9e7aach

+dd 03dae66c2h

+dd 09a6f770eh

+dd 05a98f00bh

+dd 06487e2a9h

+dd 085e096e6h

+dd 0337aed52h

+dd 086b0243ah

+dd 0e6ecb26dh

+dd 0462f436bh

+dd 06906f2b0h

+dd 0797c700eh

+dd 019eb6c31h

+dd 0ece62a97h

+dd 02d57cfb2h

+dd 0a5bbd818h

+dd 057e6f51ah

+dd 04f57b77ah

+dd 07e62e24bh

+dd 067f27df4h

+dd 06319ac87h

+dd 019a95fb3h

+dd 0c20a9797h

+dd 0fda20b56h

+dd 0768aecadh

+dd 033b2b53bh

+dd 0e51f5eb3h

+dd 0bffb8951h

+dd 0318a29bfh

+dd 0cd8359bch

+dd 0e1ee69f6h

+dd 09338e324h

+dd 0de17ce79h

+dd 0cfcb2de1h

+dd 0cf095332h

+dd 07d440b24h

+dd 02af3641fh

+dd 03145f173h

+dd 04e8d10ech

+dd 06b809d3ch

+dd 0d8259ff9h

+dd 090e7ff0ah

+dd 0e39de2c9h

+dd 0c151e747h

+dd 08bfa8e08h

+dd 0b7041f5fh

+dd 0b211af4fh

+dd 0ffac5cfah

+dd 0ab197c3ch

+dd 091c7ef35h

+dd 07c756e97h

+dd 0942ac928h

+dd 0391cdb5dh

+dd 0d3391e42h

+dd 022cd25f5h

+dd 00efdac15h

+dd 06e44c259h

+dd 0498e15fah

+dd 050d45befh

+dd 05ff39513h

+dd 0ce14dd35h

+dd 07b84c7a0h

+dd 056eda959h

+dd 0cbb39cb1h

+dd 0e5440377h

+dd 0a54a81e3h

+dd 01e30f1edh

+dd 0d93cd3d0h

+dd 0ab88cd07h

+dd 03156b0d6h

+dd 00c7817ceh

+dd 0afecb783h

+dd 0dde3bdb4h

+dd 022834db6h

+dd 0a952f5c6h

+dd 0838f0cceh

+dd 01de42a1fh

+dd 06b836a8dh

+dd 0b6996236h

+dd 0579e2375h

+dd 0a9d3ba51h

+dd 04585e7b5h

+dd 0993a64b8h

+dd 0198731e9h

+dd 0a75edd02h

+dd 0452b95b2h

+dd 0521e491dh

+dd 093b70febh

+dd 085993e90h

+dd 069bbcb94h

+dd 0f072c986h

+dd 06192736dh

+dd 0aa386ee5h

+dd 04cff7cadh

+dd 0f6fc62bdh

+dd 077516cb0h

+dd 0b9dae575h

+dd 0b72365b4h

+dd 01ed3eea7h

+dd 08c027a97h

+dd 000efe864h

+dd 0637578edh

+dd 0f63bb7c4h

+dd 0fadb2e22h

+dd 0f35b414fh

+dd 04f8194e9h

+dd 03bded4c4h

+dd 08ec5f742h

+dd 085819a8eh

+dd 03f71e666h

+dd 01cbaf66bh

+dd 08c2fc83ch

+dd 0bc9c924fh

+dd 09cf4ecd9h

+dd 0e97bf190h

+dd 03f7d30f7h

+dd 0585d15c3h

+dd 08e45b1c6h

+dd 0bbc5dea2h

+dd 0a96add5dh

+dd 00253eda3h

+dd 0b89b8689h

+dd 08a5bbeb9h

+dd 0e728cc7dh

+dd 0091cb529h

+dd 00b65dcc8h

+dd 08090a5c4h

+dd 00da7deeah

+dd 0a4a4af91h

+dd 0a9cfc02eh

+dd 0b9af5643h

+dd 087679ac8h

+dd 0b6c6d590h

+dd 0095adfdbh

+dd 05b3e041ah

+dd 054c5d58ah

+dd 03ded3537h

+dd 00643272dh

+dd 085c81856h

+dd 0ff2d568eh

+dd 0fe433588h

+dd 01a5dbd8eh

+dd 0502b8252h

+dd 0a4884618h

+dd 04813a812h

+dd 035026c0dh

+dd 012a21792h

+dd 0ab781349h

+dd 09e3db742h

+dd 01e906346h

+dd 0f1aa1c49h

+dd 08c647d4ch

+dd 0195b5493h

+dd 04e63be6fh

+dd 0c2fca42eh

+dd 0283997feh

+dd 07d8ca973h

+dd 0ce5dda5bh

+dd 0220efde7h

+dd 0f04ad0a3h

+dd 01e1befaah

+dd 0cafa51d8h

+dd 099c3f71bh

+dd 0bf4f4ecch

+dd 0fcc69bf7h

+dd 09eac0807h

+dd 03b9a0041h

+dd 0b8ecc83ah

+dd 0497114e9h

+dd 0c67dd7f5h

+dd 041afa1c5h

+dd 05697dcd3h

+dd 0e174f0ceh

+dd 0c0d87975h

+dd 0a617a347h

+dd 097dafbech

+dd 0823a3ab4h

+dd 04b861401h

+dd 0bea89745h

+dd 0c7e3dc9ah

+dd 00b5f1f47h

+dd 0e3307316h

+dd 028f58b85h

+dd 08881937fh

+dd 0027c45c0h

+dd 0a4da49ddh

+dd 019b33ecdh

+dd 071c4ad23h

+dd 059ae36a6h

+dd 0f507d248h

+dd 07d56697ah

+dd 02025d572h

+dd 08b634d20h

+dd 022dce9aah

+dd 0df83d597h

+dd 0f6e5e469h

+dd 04214c0fdh

+dd 03ac10093h

+dd 04f984ce7h

+dd 0061f12b1h

+dd 0f9a1d546h

+dd 03635546fh

+dd 08cb5265fh

+dd 01a861f78h

+dd 092072683h

+dd 09e763f70h

+dd 06fa989dfh

+dd 002737dc4h

+dd 0922f4fa6h

+dd 0173213bfh

+dd 068903ce0h

+dd 0ab645011h

+dd 04233d21dh

+dd 033722e2bh

+dd 0059e2df0h

+dd 05281efa3h

+dd 0286283edh

+dd 04230e5e3h

+dd 0b492b48eh

+dd 07e4ba4bfh

+dd 0a2357854h

+dd 0d988326ah

+dd 0cd2d1173h

+dd 00ab81d03h

+dd 00d5c00a4h

+dd 04dcfff75h

+dd 016ae524ch

+dd 04806289bh

+dd 0207f8075h

+dd 070ae3d1fh

+dd 0c44c0853h

+dd 02edfb318h

+dd 0c5e6b84bh

+dd 05fa7bc40h

+dd 061ea8792h

+dd 06c2cf4b9h

+dd 013cbb131h

+dd 066f72680h

+dd 06d14b3bdh

+dd 0980dbeadh

+dd 0f13b1ca6h

+dd 09f1eb183h

+dd 0e8200caeh

+dd 0f4326a7ah

+dd 0b21b740eh

+dd 0f00b8636h

+dd 0bdb18ee1h

+dd 0394522adh

+dd 07eec2123h

+dd 01d8ab1f3h

+dd 089785884h

+dd 0a5562ce6h

+dd 05f358b29h

+dd 0d92af3c9h

+dd 0a12ff6e4h

+dd 01b32d3aeh

+dd 09fcc3ecfh

+dd 0ac7d5057h

+dd 042a41c31h

+dd 0c082a861h

+dd 0de3c4734h

+dd 06eb48090h

+dd 0193ba047h

+dd 0d56784c0h

+dd 0dd489b11h

+dd 0ee1f5503h

+dd 0ffda7af8h

+dd 073905a84h

+dd 04cd52dcbh

+dd 042715411h

+dd 08862eaa3h

+dd 00ff17621h

+dd 04318b593h

+dd 04ddab6c3h

+dd 0b152fd0bh

+dd 05af9f4f4h

+dd 095cc3cceh

+dd 0e9557e08h

+dd 0a812c6aeh

+dd 012aa963fh

+dd 0980153b5h

+dd 06c14471eh

+dd 0e3035f42h

+dd 03d10f028h

+dd 0717443d0h

+dd 0381c4188h

+dd 0acd18c08h

+dd 0f03a248ah

+dd 041a248d3h

+dd 042bad49bh

+dd 0496cb118h

+dd 08975de52h

+dd 01e3ba0f1h

+dd 0c33a85a2h

+dd 0151edae5h

+dd 060ec7667h

+dd 07736792ch

+dd 0b1adcb1bh

+dd 046058fabh

+dd 09d2c79c3h

+dd 0df0c2dc2h

+dd 0b772b7d7h

+dd 020cdd640h

+dd 02088fa0ah

+dd 0e8f542eeh

+dd 080666385h

+dd 07b0c0893h

+dd 0992b76fbh

+dd 053df5f40h

+dd 065da77e1h

+dd 0df8323c2h

+dd 002394834h

+dd 06ebb468ah

+dd 00049a47fh

+dd 0c26f48bch

+dd 045184684h

+dd 0ea79ce5ch

+dd 0169fd084h

+dd 031274649h

+dd 02c2c5e83h

+dd 0498666bah

+dd 07dd19ce4h

+dd 09a704eeah

+dd 0923002d4h

+dd 06c32dca4h

+dd 0c54d9583h

+dd 047772a07h

+dd 0e831b295h

+dd 0093d38e4h

+dd 0eed58b54h

+dd 060bcf373h

+dd 08669b444h

+dd 0a40e8d75h

+dd 0c7687b5ah

+dd 0affcd7e3h

+dd 0c3e1f83ch

+dd 0aac465b8h

+dd 0d327f2b9h

+dd 0676a671dh

+dd 04a8558e7h

+dd 0570ae9b3h

+dd 035bdc8cdh

+dd 0dabcd81eh

+dd 0c9a0f787h

+dd 0298d7c2fh

+dd 021b2dd32h

+dd 0deb04f6ah

+dd 0eb9b9aa6h

+dd 0bb5a0e88h

+dd 0dd0fb162h

+dd 0f97d97e0h

+dd 0a9f6b85ch

+dd 05446af3ch

+dd 088f8ddc7h

+dd 09b630fd1h

+dd 06ac1c0eeh

+dd 07b143a7ah

+dd 02f30e95ch

+dd 008608136h

+dd 07b21d68bh

+dd 05d2b0554h

+dd 0ea89ed34h

+dd 0ae9e4d44h

+dd 0d999e00ch

+dd 0e5dff64bh

+dd 015cd0191h

+dd 0133e10bch

+dd 05b34ca0bh

+dd 0c3be8953h

+dd 0c0b0695dh

+dd 0877b9fafh

+dd 09eb24dcfh

+dd 0c458718bh

+dd 00ca80b28h

+dd 0565a3099h

+dd 0686398b4h

+dd 03b6c074dh

+dd 0fde98d03h

+dd 02159ca09h

+dd 04452b31ah

+dd 06093a845h

+dd 0f3d725d8h

+dd 094d78a3ch

+dd 093e27823h

+dd 0e79db6bch

+dd 0eb8f1424h

+dd 0b129355fh

+dd 067116ca6h

+dd 02661ce50h

+dd 015843d16h

+dd 04786305eh

+dd 0c6e3ef26h

+dd 092b47aa0h

+dd 0803d5897h

+dd 06b53e86eh

+dd 03fd679bch

+dd 07dac6fd3h

+dd 0e2a1b4b3h

+dd 0077421c9h

+dd 0eb34d643h

+dd 03f7e11f0h

+dd 0aa7e8e5ah

+dd 0be9dc53ah

+dd 03fb7b32ch

+dd 0438ed95ch

+dd 0f5205580h

+dd 0ced33d6ah

+dd 04aefd1ceh

+dd 0ab88d009h

+dd 0172e8e15h

+dd 0aca44c2ch

+dd 04b29b322h

+dd 070904527h

+dd 0be230c51h

+dd 078a60c17h

+dd 0b7e1ba21h

+dd 03ce75e66h

+dd 0f318af51h

+dd 099638638h

+dd 00e18dc56h

+dd 066964208h

+dd 072ae0006h

+dd 00cb9efb1h

+dd 02aea7e53h

+dd 0caede95ch

+dd 0245830e7h

+dd 036459d86h

+dd 0e0572404h

+dd 064fbdc77h

+dd 0b05274feh

+dd 056732ff8h

+dd 01e19e81fh

+dd 0e345671dh

+dd 076f5b524h

+dd 0dd448320h

+dd 0d0ef0740h

+dd 0ac550e46h

+dd 05e56018eh

+dd 042e36bb1h

+dd 057d1dc47h

+dd 0ec024cb4h

+dd 04d39561bh

+dd 015954622h

+dd 03ccc2c23h

+dd 0c66ae477h

+dd 040df93d5h

+dd 084a9e987h

+dd 0789c891fh

+dd 0ae1b4c61h

+dd 04141b9b6h

+dd 07c6580f5h

+dd 0873f3d47h

+dd 078d1f6bch

+dd 0c993c79dh

+dd 00c254c36h

+dd 0f906049dh

+dd 0cbd097d4h

+dd 04057caf8h

+dd 0d91b6d0fh

+dd 06be96f15h

+dd 0dac08e15h

+dd 0a63710a3h

+dd 0b76f217eh

+dd 0ef29db91h

+dd 0a3831cd5h

+dd 0a27a71efh

+dd 0a5ac19aah

+dd 0607b3872h

+dd 02187191ah

+dd 07ccf2fd9h

+dd 0daabd755h

+dd 0304c165ch

+dd 0197241cfh

+dd 0b8b1e8e2h

+dd 09f81381bh

+dd 09ad6b83dh

+dd 087365867h

+dd 066b9801ah

+dd 00a1693deh

+dd 0541e25ceh

+dd 0c2e9adbbh

+dd 0518d2033h

+dd 0f15e1c0eh

+dd 026075b17h

+dd 0e3f2d3adh

+dd 0a64392d5h

+dd 0ab6f67adh

+dd 008154991h

+dd 0066084f4h

+dd 0be71af6fh

+dd 056df4860h

+dd 09c9c1a15h

+dd 0697c0ceah

+dd 01a3c9434h

+dd 0d62965c6h

+dd 03f5fe5a7h

+dd 09afdaf74h

+dd 0cc17d920h

+dd 0c9022cf6h

+dd 0ebe3fdb5h

+dd 01157ee40h

+dd 0d70e1022h

+dd 0fce41be8h

+dd 0b9014483h

+dd 0f9119bedh

+dd 033ce23c2h

+dd 048357714h

+dd 0bc754db2h

+dd 0252b0cf7h

+dd 090c47be5h

+dd 0d2bfea99h

+dd 06a7c4a35h

+dd 030f10351h

+dd 004f9f786h

+dd 00e809abah

+dd 0f4aae824h

+dd 080c90827h

+dd 02d9b1592h

+dd 00cebc278h

+dd 02aa6a527h

+dd 09dd03431h

+dd 08d46e22ch

+dd 0e62dd894h

+dd 0c6675a82h

+dd 0f066d579h

+dd 019869406h

+dd 05f11bb58h

+dd 05014def3h

+dd 01bf25393h

+dd 03926d5a9h

+dd 000868ad7h

+dd 0e6c219ebh

+dd 040792f9fh

+dd 0ce382acah

+dd 049031196h

+dd 09f99e1d0h

+dd 010da299fh

+dd 0e20103fdh

+dd 0cb1ff4bah

+dd 054137653h

+dd 06ccbcae4h

+dd 01b225379h

+dd 0293f0143h

+dd 0077a7d0fh

+dd 0e6e0e7b6h

+dd 025a8c9b5h

+dd 067284ae4h

+dd 035cfc4f1h

+dd 0833ad665h

+dd 09bf4fb0bh

+dd 013b90783h

+dd 0c3a94a2ah

+dd 071b2756fh

+dd 028832cach

+dd 009514869h

+dd 05ad02897h

+dd 0ac973470h

+dd 0ec1e6f9fh

+dd 0fc71febbh

+dd 059a286f7h

+dd 0b448bbf7h

diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/MicrocodeUpdates.inf b/Silicon/Intel/Vlv2SocBinPkg/Microcode/MicrocodeUpdates.inf
new file mode 100644
index 0000000..e5b847d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/MicrocodeUpdates.inf
@@ -0,0 +1,51 @@
+#/*++
+#
+# Copyright (c) 2005  - 2015, Intel Corporation. All rights reserved
+#                                                                                  
+
+# This program and the accompanying materials are licensed and made available under
+
+# the terms and conditions of the BSD License that accompanies this distribution.  
+
+# The full text of the license may be found at                                     
+
+# http://opensource.org/licenses/bsd-license.php.                                  
+
+#                                                                                  
+
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,            
+
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.    
+
+#                                                                                  
+
+#
+#
+#  Module Name:
+#
+#    MicrocodeUpdates.inf
+#
+#  Abstract:
+#
+#    List all of the microcode updates that you want included at build time.
+#
+#--*/
+
+[defines]
+BASE_NAME            = MicrocodeUpdates
+FILE_GUID            = 1FAE4D78-CB33-4f73-8881-A1EA8F5EDFEF
+COMPONENT_TYPE       = Microcode 
+FFS_EXT              = .ffs
+MODULE_TYPE          = USER_DEFINED
+  
+[sources.common]
+M0F30679909.inc
+M0130673321.inc
+M0130678806.inc
+M023067221D.inc
+
+[includes.common]
+
+[libraries.common]
+
+[nmake.common]
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/Microcode/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/E7006X3.EFI b/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/E7006X3.EFI
new file mode 100644
index 0000000000000000000000000000000000000000..d3938f356d356523aba47f4e6dd6e282be1567cc
GIT binary patch
literal 341536
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/RtkUndiDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/RtkUndiDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7a7db48dd71db2722681baa580b404b27c742964
GIT binary patch
literal 78368
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/RtkUndiDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/RtkUndiDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c04e61981131f2ede519b89522b6a89639383223
GIT binary patch
literal 92064
zcmb@v31AdO_CMY;lNka@=zyRB4+a@9h({nEfq+hv3H0a$B8Reyl1MTT1%gQr!pgD}
zCeciqQFe6~-Sxm#clmlR?w4E&6OJSjAb<zp8PL^^<AE0h1?K;GRo#;bhwFa-zw9#A
zRrTuCd#_%-_v+|2?^fae{8#sXZu$SeVScV46y2ZD1JPmOVtbOgw_v~4B-oRA)vFnT
zP+;x`v*VHeo%**n*TmpfOg0Nir&gXNpL&+^_+r8<Tr3D3E|c(Ve8vBx=PQ)rr3!En
z&%~#Z#-q0j!h9p|>Lm#Nv4GW6qnuKwAWXbsX;Gn4hzvyA;RNkQN&xzwli<pV7nIHw
z7*E7o7<H7!|2YBYeP`F;ua=}ue7$1H?}x1UZBSVMqo;2EbDk%^Tz}p5`R2d;VbLwU
zuV1*g--Ba?wQrV`Wj{Uo{M+vQ6Y|&dylrwy=GyP3PI;zeL+QGAa;o-~t(cX+W7*V|
zy|<4X()6@gu;uOgpI`s$)IUBtz3G}qFP`<n=(TA%{~Db4TsXP+h>M=O$2WO<=Pmai
zpS<St74P1fnB%zY-ruGkeCO?cf0-n#zU2C*yy)!T-gQ7*JhkCH-wPSTcMTY7$;_K$
ze({FY`|mg)oR>XUDLEiMKkNffecPjZ?#&-_>0QphkN)`XNmJJUE%JPDYj1m5(^KE9
zfBNA`uU)cm%yFq;;&BL|OAyR`|B*OA+f_7qK+X&2-CkI7{(D2rf<-Xh^O)t~+^U2d
z|8>WhNMJ-l-#G)XJ}*gJ`@qA}dhhgAS+B^uED6Htg&2g{HWDrUngoaaROCYciKc1F
z-BXshX!K0?n=o$X2hOD?Bh8k?G-04{fnZ4-g!DqB=OY~gfPoyq{D9qn9EutTAci3w
zf%Iae!{Z?@F(A`XBLHF~OGlbVvRP&lhWHm>(%Zi~A<;kZr6m91+mijJZ!hp$P`>Yx
z0seP?=<gS|_x2MO`Xl%vr_Db%y_f%SYoh;OBYOJ>-POn6`azO^;o(&O{NE4oANYNm
zKYI8A|Kk%bWO$wej-+1a_+PRP_J@I!@R)%|pqU#@vZo43n3_ppK}Z&&Lb6@>TQc&=
z$aA>DnKr)_@M8j2KRr{qfP8_#aT)owT`7M4OuvM`pKu~7*pY^*JyDO2f!h=o^gm8V
z3Ivma@)VSd01)vkG8mFW`j|of<?B-Y)P%#Eg=m-AE||=KGXu^dM2A@HNb$`7NKWD8
z^ZZ7hw-Ygn-MD$(5Whc;Zld#i!HRa!oY!vnC*_Yst$x1%zWrAJu`Zkc>z{1?FDOM>
z1nD89%aL|{V)H-uJDa~>KbwDVf1CeZr_Jwj+58n|<eQOSYx6(<JkP(3{Bt6&e;M`9
z<?%Xter2-Fzq!KZ4}6V2r|?unJ>^A@UOrV%Z{lh620gtIX@|{!FvI2_9kBUN&H`PZ
z+Wh~nvH4Zd$m+(}{F$f|e}nuXn?D)2Z*|!G7ag|wKLy>Zh?jqZj*w0V@TF3Jz|(<r
z3fc-wZT>z_aeQl0_FO8SL7$1}1^iN^Pg(*07Y?5Q_|zxk>MW=ed7TM$R@5cG4B5Pb
ze*a<fPXqt#S&fs0%=-}B98W6o4w_~mead9>@BYH(-y_)kL;M&MFCQZslUpO;4Lp5j
z*UP}$TPS-CvOaW@kKLGWY<~Z3d<>t&82%3QMWeu-V)M_uz~(O=Z1X>jaeZqw`h?6r
z0WEIG;pX#g{=^rMqJ7{qoBwmYd=KP7bgTs(^$9)O6ca4rz?j{r<LLW*91gvlU_Qgx
zcmP8(U5n>rfy<=>a>+yar|5^$1jz1F^heJz`CB04q;B~qko>>4`OO%c|3(iwpa&U*
z_n^%`e>D1mtZN`o(vg=z$Jf{LK044JqZM%HgVrYj_dIxi`Dwtc<1k+%KNYxM1|J=e
z8$DYv{sTytK${h`Irl>5?}E-5Hh*&k_(r~g@@PZ(6Bsk=akK{w1w_X|&{YV!%z7Sl
zbs#V6b+e!^7m2){m7#t&$_QVdmFRbq&Hqil&Huq9oBzW>(Ba)S|4QI8_p$j$puVdE
z^Qpk*F9g05vyg|*{aeo`fR3Mzfv%rX4m=y3Hh(^NGOe}wdzozhAoOEzJM2WF%|GaU
zoB!wan3K?}gcF>8gU0!w=TpEK^byUU9_`K_M?Md-6YP*9XcI0*9%=Mr<k3&`L-ddI
zXV|7?&@ZB8KVS}kpGwf&`zi2*vUeBS{Jxc-4{g7higs&k{^OA6c~(x>dB9;3fFJey
zVebV$+8~{ZHmP>AU--ZR+X!23OJY8OY~yi)r!xHYu%DZhGuqE@K;zf2J@GcQ12~us
zJ!td)2J`P5jMrGu@+8q|!!z{!DahyROHXMB7^B@Rw0qJCShRf}W4Q^szZ!I}B;9!w
zx(3+ZFY9tZel6+@Ih_0x<bW~hf*fc(yP%807kU~&dI<A%IqX6g?E7;ze}C8l(o+}V
zc0qo?MSA)?<)7zy5q-G;OZ9npex9CDH<@U71-zW2&k68O^Y&}dP4kCRniu3>Zqm~m
zD2;M^(Sg*MkF#h#V*HHxNOoZiU}>)YCKL7zxCpl++2%idE9kxmypaB`viU>ch3M!2
z9n>G$5=ssG@f7;+=)=oW*P?&WPqx1Ua-`I{)aL)olil!7LO(lzgX(Bbi}7`6^RgAT
z9dvY6=(hbC%sD(8vXIe^cqY3_`arxBO_Z8uVcem^!fx2<JvP60h(0D5Bl5vr;LT3F
zeFon2GV@!|>DM^iHyFFy#$XKnd<-q1Eed@}fh;co?!ky_`V~W8o`%fOj%W#d0y~Cz
z_rlH4LFnFRNLl&km<uR3=tzKU4%K(J`37}|fQ!bA;kXfFPdNH=9IPBT4xyacYtY;Q
zzfR8raFL8iE;J6Qu%qPTUPkJNe3=i%vmxW8cp0Of>?<21^M9uY)Rz%6nC3%f=+lT9
zu7$pmZMIC|G#%7wHNm!#Pk9<Ty-tToAQ-?3Qz17h1Ky>0e#!#c25{Q;LJuf5ngN-U
zo!xsLkBx)|o<E7aF&E=)ui2ohfZJkLCqrK_{vyWEOyf^<>t&=Xgn!d*+$K-@1~&Ku
z*!~XzYl1#t&Qg8Hz1@CfRv~l_c7XYne}fL>k3ptnS2s1={7&>0*oe8F51j;#^LyF+
z?Lou<nEUU;POOK$jsDDiR2SOC)0k+`uhVxFG{@6RzQm5PCBJkr<Vfkq$eW;}A0kib
zPw4*};NP?iFnAucA2G@S$hQ(@z2Sd|C$d4HmF(Rb@J#-O{ACn!HJ!xRASM3EzTf2M
z_ML3u+q%8~HFloj>sKF1V(W`P7xZWLpU3~)51gr<`~#H>!}_y!eZ+HFyVJ^r?sAI%
z{~YG{36A3UkE#X#KUbP!ZH@AbClmdLO|(|xG#KT=%s#O)YHwbw`!E1dzEw!>QD3*B
zXTA_)Y~UpLLc}FTp7^=aZ}FR_n*F^KO#a6X3x46z1i!Ev|4=8y{^)rCErzgW84$)=
zNBEenjcCo&4M+GM#k$QXqdZ^77%)i1?s`W5McwqC+MeV2b^XToLwIRD2x9SnS_|_2
z3ID0%F5r*G=|Wc`+Hg3^3x9|oBPs_fKSLQd;FjNu#`wEn7*CT&|32prxw9t*+|TVf
zKJ5>$p1N?KCMd$)!W3bN;1UY)T*#Z9@*9mFpTUcwQA(rH0W;%4OhV$#M*d1Xn1rRV
ze4>f+$+z(O!Dt(eV*f|aQ)x767M`8O>-n!)Sp1vrJk|e8&r@s4kJtANjr@+=40v9@
zV>ZvHLPH2X{dS%=;1xYjy;HqER?q1vm}9{6{119QRmew$S@0C_`Y%)GSJ1x<yOF;J
z`D-dVh8X#I$j_@-9m|&>UlPl6dZN))dVSU;-fp>`R-dK3QZHYwr?Q^%*4@8Ged<~2
z-_F$Oyo#sKj_0Yv&eKzWP3yCkR^<FO=ZU9BrTt;9^WJNE3Bs6OLIO3{QJmVON8Th9
zFS>l@bYVcQut=CEED%bBa<)4-V46@2?OOmHEQUtfg<L$%$8#9~i}7q1a)eSmD<~-i
z+yYjIxj$L2E<!~K6q%aX@w7<r0<cV2$P~MTHMZk<kx+#Cxh(Gm+&sYtsA80zN&<D;
zlLX$XCkb|8F|d~5-$F(S^$)U6MfU6XF}Um|jAkV#9!Mq7zJ&2G7kv>Q(^;PcLh>x9
zo;@r>GMo<5igmyd$h*MmVkWtz1egQvNFMV5Vn;FIpl0Q9%?x=J#Wl6-k|imU>_~bv
zFeKd~{9BA?lEM|#i3AV@!nVW86r-zB#!nBfMguYf0F#9~(Y72<lhBBU_%xD71CT)T
z0C?wr3o3)Q1)%+mSbsInctBZ@1P`b^4dZllMXG2Az^@px{|4M16Xz0WENLC2oGUEF
z@X-+bs{Z~<a6a?Sq?05J8hjrg>R-X?skr{1PdrG&1?B5D1#ZxHx+wtIsZ(?&jLsy%
z4I$2ivbxyQudynp^*DtMOR+GHq|%d^o7v1L2YF=7&H#`P+DoB3CD0q1L}vgYy2<<%
zVghh0z@4|=;cyhA-!mpIG$7n$KI~xdERyL7)`OiqXjqP}XC$0r^j6NP%tr-DZ#t->
zY0gNGk&z*cfs&5HcK(0&#8{ywMX|>5PpHm^B*@}$8+2BtX29H$yCH*3GA5HYm(3Yo
zO2(bL4=&U@g=K)HVIo<PE3sp;QOfgVNVtRG29XR_sc<j)Ad|}7f<cxpAubGzj`7zz
zf<L{gr;qBXUr!74RMyihJ+<p;s-EJog#Bs5dAeUuTlKU~PuJ?{YCZMq>0&)C(9?W9
zb?Rw`p4#;^RZj&yJ?zl?*VFxa+N!5@db(CmtMzoLp3c|PS$Zn#X_lVa^)yjWd2fQy
zN18r8ciN0Oxs%*;a;Ht3I?bLwT`5$2<@O2o;bkNH7;r;R0~pDwipI?@F1mZn?7X7l
z{JZDP_LSUNR#>)d_RL~$iL0z+NpV^3BBg9uerd@fW%j8BSK$27_{*7QpI=yRpIBIA
zpI$O=5hy4traA-v)Wu3k>7r?+3#pgs({g4{Q>c$z*NtOlyBC!x2Ch?0(yxmegwsNo
zGnuk@LqxO{FPfKKyojZE7ND`G<1wc6WMLwVBROVrI3>_@nj74f_Y8*!bNAn={BV3U
ze<uAu#`oV*_-n=`r*z@s(nZCKlqrP^i}eBeHSMO&xG|@6k+)=?d*R{*db{DUHdkP>
zWC)pfI$h2b#*tjf22p^@EfcpnB;_*LEDEQ_0K;hDxDvk^?Dy(!VdH5gjPEtVWy00M
zwWz;L$in}wLP{=;*NjHXt5I?-{zs7AA+Z6GiC(Tn%{533>`+@zNx32ymDz_*u&1Xl
zDJ?0oUpmsB!KabH8J@0`l`NWfCWuKTW#!7*tA**sb4wQ$ogDy^x=fi~Tv#@D{@H=R
z|8%8v@vi{W={+kuFsD=C=klPV6PSD_Lw;_A1Ux68J|Fcn1X(ZnZ=G7V8|1@h7t+xi
zc~)|oI5o#VzEWb@Uu8#JC57`Am6j_da}8@E2<hqRGu=~WOc}}SVwp14JJIL$7MG12
zX&+(FSeh|<q<z8!dqxcZDRyvTVR>;r##Dh}oNYW1_BgzgO3M}&>SKE<+IYA#cg)$t
zcr098R=TjHytv5D?hxqZ?nO%q7eLiKg^T9-3g<DKN>#awitMFc`=pWuyl7f+d2!hi
zG)~WCD%qVMGnQnj!{-$jl@wC@oM}1s+_JJ#TB^|>^v_pTqAauDTvEEAkZd(CcQ2X?
z%206Uf@1s4#bxDsO@3LaQaZPEfq`Vkq#60fGqrT*<n_o)cb1kZ#YKX&pscvCXqmm7
z^cndnrAq9X+RZ3gSZpu#DfCQ#Q%da%3l}fOtcvBq8q88T=UbXPx469A?kZkX0&E1Y
z*e8|x7SS{PF^27P=R<sYy*(xas=v8(fe$@S@-0|EStFlQT2|&;3@WDj6p}OgEcKP4
zD+Yw0TOh1rJ4vB<F7e?iUQ#l*xLX25$28(pZ@>rNKBKhMK7C=K-Wlr1Vd{0$OMY7{
z%v@CNTfCUdikceZpI=x8Bdin~<K-zu!?*#wrLb%fnI6~)3{<xU8Rci|->B#OOe!o{
zz#X?y?kZk@UhT08qkQI~yBC$-yU0Fy!Lr44xoNtO4TO*}dQ9e3S6_2&)>vs`jw^SP
z-tTEP)9@p|X1=)>f$v3y%$3|yQl!kckGE%Lk#xx3m66<Fk#l5e+URS@Ci4k7lFV=h
zhY|#-d~Qie4ES`2@r$4V&_uG|*P#*5&-0ZOQBDwsXJjqCe0auHv7a$Zhi8nT9Dg`9
zWsUH|@hH%01J9VED*;SDR~6aq^f-=wcpq#RFa=Q?Zm_UF*qKQS3g?w`Yn4HNS7mUU
z1zWRxIhnQ7B`~$DWL^m*#--0C!5!6E@R6u=d_5&~HcYN!*ja>mFb8LHcfVv$$&`X<
z2pWboW}f2_GRw?(joD}2il@heU2dPwCgn)`b<q1VPw^s1gO>;fJkQ%NhlPj{{C|L-
zU<dYj%6!r{nr5fzbBqri;0!FV@kBM(*SLTnUQ=WB@c}^`K&-w8Ki!%htH%QfjkWA9
zkBcE<wWrOG?r24iZ+dD)58@bKzc8O^yk|lgu`DPqGCZ@ZWJyVRDGR399Q_aN0Y3AZ
ztCnVtnO3~8uw+qDahZ;Y&*am`<1F~tx~BL}AA-3%rz=G;ptD_imLufLDf{rk^x;J#
z$03cap!E63^#BTm$YDGp!HlJoPWhYZ@t|5)z_?-3CnLvm7WydO$SYo0TDFX&mQ%WT
z8FIIj!2{|Xr~jAzbN%n`dT6?CkrDO8N3r%1BXkwVWI_b-tLVG6xUBRP`gHPsg=BO(
zMnRAe$$!h2!O^dxb9%9I3YqZNF>|03a@v&sPkJ3cP6(08XyD?9inWiI|LIyP2v{Q_
zs*?*B6~S$vfrPX0M|wQ5v=l3XGKxFOXA~knV-xKx6~?@qH+{yLx)J70oPNggU+ACn
zFD<}5WabB``!kg3^C||$%-^rj4<jt%3Nmlnnd$xo`lk67k>5R|h|W@HNU3|@;*|J=
z+Yb_XexWj-IOc&L<z^}+3rdud;&Q?=rL^db<EhV&>n7OC5w;+*Os9<*SMJU3oZLD2
z(hPY{{<NtxrshobaKrlx{29Z|w`KCsp|RNJCgxQA1%z+GX}df!!XjOX41_(4xJ)`*
z&JlziJ9fyy*^b0p<iMA9S^Y^?4`>t-%c}JUlS%M|Tn?uk8d$d{8kN<y=;}wQt}49j
zG89h#DjM~u;d&JLwZ9z|0BxOzGC7p86iLGhRA}dR5i*7)r3OcXvbs+W%Cmq>+h?Mx
z*^Uf3u+=_iOFSL#$-$H&^e=}d>^zP}Rd4$Ghi=M52TxK~ZPzxUKRI~eWCE&s-`5{i
z-=iuteJs_kC2G_g3p~M;%K?#x_JaY@2?!~4)Aa=MI|h={mk_8qv*e&PiQx+SE(GM9
z6Tp>!C0JRACoP`?AH=aQD!)U5noI~KbFUQrgOeBuU6}J_G`fj|K>`{9$;j$k)YAh;
zm}oqxMym-YAsPw_wVzQAIj`bKU*bql?k1$s)eL7(JlAtP2^`OlpsV2y!t)x(<KlQ0
zay%o>j_2r)jGoscjGmVW55=n5-5k&HD66(|JbmNws8(D^APICK0WT7(>>fiox|ZnP
zvBNnX`s4(2uMl7`rTP&13Z?{+p!Kbk3k`gxoe`iQmz()!bhXU%VLwUl3RM5_MVxx&
zaGDc2&Gi_^1{cv>i}J|La-hhO1%j-*Kc)^+mJ#Nl3z`+O{tnOR^TC6>C>=$2(Q{~E
zjt*r9oxM0i8fv-;QMW)dowsel98tH*!C9$taB&*Vl*Jy^o!;VnH31~Z!TfbV(0q~x
z6Z7X=U|zP1SPEnCqpQ=1tE#YAy^(-b>k|O<s8iBCp-P9Jib4a&0UWR`E=M}9KLF!$
zhdr)g6@vmdQoR$8gc!VmYK|atudKF4^D|_XM7MOTf4L*uEH_#Jia)<Ez3xk3^^OGs
z-vwf=%Q0rcH5G!O^qt^EvZD8d5+uJjXTA^O1V-E>2x;JRJ4yWQj0ZdMpl<PmW;+(U
z)!WkCYPsF5enNA0h9h<Q%$skKW=Jz7jKh}&BpO-WOoC8bf%2sjg3!&`42RvYDK2!t
zxy<}Z&fX@j8jOQ?SzYB=2eQ#nK|?Mmmtz(Pasa*?ktZgi>}}v&T(!Z*T3v@$uF%4S
zP1q}hrdB%Y7`A<qx-**ZL_ZAJ%YauImD;mEP+vwK*2-Pcq+L!3TOn@D$NZ&6(?P6h
z%0|4FA_o^Z<k0WTu28Yb74q5T?44p&EvJ41>WNc1G_#;*-*r~P>tQw8D0Iv+N18+>
zK@Kz}LO&;7O1M*Q1Bw>Y(EM4sa!^WjRo|1~tS+%SYqlZj<*Z(2YnBo%-e5_e7Ag6s
zZGy8|>Ya+JH2fQce}i4sh3B_O7v$%-r{#*Z&9b@&1S$i~W~rX;ytplIdvh&KURU-u
zU*yRCYRO6(MdI>=JdS*(X4PqCq7MR*)OVPgksOv^?m<yLE62>0DmnxV9SpnL>VanF
z$4RRVQ^Y{qt-jW+KueB*sWGrK)ES0||I8Y_&S(*9A7}-zH_&SJ1}hzFL7sOkD^kYD
z7+xyKQ+MR5+q$ty>e~!qmP@RCoHua=pCUB>sYQmX@<rA_tn5cbRJ80tD_7RF<rlcB
zuVoBp?sbJGrl3o7!DniImaGnZ`KNA1Yi{UOU40dGXQ)&~Q$Dg<2oZoG4Uc+9x+gdb
zQZ#f_*ZiO?cb9pf`pjJ#BXji=u*=TsbqNf;(bNMG2CF-m#&Ru|>ggy)+)zPuKsuRw
z-N9t&0L>++ZMqz+aK@qVsH<6PYb)%ATiwotDMhEv!kCDwa2GE|cZ+{Na@VEXQ1Xbb
zE-Q&UIaDJvjDIA=TE9eUv!B{mJ;TcN=>>cD9^7ypGj$bBFM>?1;4lGm04=F+T;}3Y
z$YgK(ooL7eydO6afX;hpLiPvDfjF~Rg)6vLxvaY$;EUt36n?Y_*i0;mA!zZZf;<!c
zXB4@r*Jdz^c^A$8(a2eh+GhV4WK)f7a9w&FtQ=ftkIMp6W?Z(}e;IN!ji$~1%aNVZ
zoxK8CS9kVGWZgy<n6r>Kq$Gzbh-?gF7p|vy3~8v=2^4UJxGuRX!c?n!G~M=n2Z0+y
zN2-tohuPXf9&sf@6<Wy<hiX`N%!{fk*~r2#L2uZcwZ4mp2u8US4SS-0n4wSkGu6Y~
zq`;CtkLPGUv>Mv*;c_2J{3wA_z6S}6qqrfz7YYN^r0Ec>;O0cbR`U@MLn#<?Pl%0_
z9IEDm@N=S=GIOFNhBoD=X6E1DLK0n_&y;1qAvb+SxPzBrGFVfoOEpM{7=Z&nM+}tt
zruOM@Du<0G7Wx2?$^p?WXBaJ*zC6`WZo)7)O9A-?i=wzHGn_Gp_6%w~Ds!&0K$=HI
z%)>ov48-3JGQ1}Ug(3yg9n$U6>^XPbe%lsV)umwdur^cD$v0xoK_%cDiCyxehO^zb
zE#_>)k$>@+p9UWxjpDHD?pvbRCO=O-mZxfnWjyM^ysEJ8CRn%K2(uuToemO<^*!YB
zU`Z%Uco2wth6&cjxav8lRCgYRs56g98%#hgR(3Frwgy=Xk0af!CLblIy_)z44eW>3
z#1^20H}KDYYG~wV?H}jx6<ZD?mX#~AX?iPm=+{^l=%w6%q~RlgYSj^9K!*>h`Bdg=
zL|Ndz3_+QOBuh|kMB)?_7m{>AnSj*+Vyo#8DWa@I7Rrrc-QFl;U81BzAa7Fm5Xyn?
z9{A)|J(?xGizFddquB2!ri1}9u^u%*Hnw3du}CNj7{vZ=2y&@)<WaFyfz<)XQh+SG
z6xcgHCTWLdb*DD^3+mH)1SN>X=XHR^lf=$*D3?{EE7DHF7rM#R6Vso&F@4_2Fulkz
zT}YU0pisMwVX}VtJ&ktqQDekcZ9$I|*)rW_kvDi^b1{_i%DY5PfLo9k$exgvWspv?
z!8Ods8X$$;$sk;zfo>$mOl>D#N4wPobcjaXTFs~U9jqaR455K$){Fw|$nP);IjBPE
zWgr18d(>?PN{vun&2&p0cp+n_2WHF{W1hUSnK36t|H#l@1hikmV9Kf*vk}(!SwS03
z?y9erS#rl5k)zG->>tIIqoIGfl}CKZavg?`{`?VhW|-pUe8kNeZuRag#LhBeXK9W;
znK6^CL12W>jjo057TDS;BlG>5%^r1+D|DMl@^_h)LHJEjl0(xict{j;--`5Uz;Fu@
zi=@6KZfMPJQ<h1i+LUSZGb(V*ELPo*>OA$2tI306wie{pAYR98f_wL1&2NW$Pm2`&
z2Z+?j#2yfQ@ez+BJ!1b45O&zE3|dBUyAxY3z}{4R>1R}~CMt6?zjCWx2!K1WMwZnt
z@<MW=JLnG+10n0DD1=Eu!G09DL(blL!F8>8M6#PF9X!!^au|u!?C*<cdURgUUyW>T
z^*WViMD@B=NaWBh3GP7H78mbeW%m>#1!27$nxo`~@|<q94Z*NP@hX$r^bD~U^RnF=
zoZLsO%`qcQMw*DUzgB}=+tRpgV&z1Pjue`?0D#&(STi)N0;9;d#0~qUJrODJi3vgJ
zWgt#lkLtjtS$ND=db_G$c^tGwdNn^lDW+|^_Qu1ksh08tPnZ2KPj}wK(?Z}@A0PyQ
zuJq+)fvzi8BnHB*fiCO4#nQ%n-m#><t7%w!<f`y|?aASq-C7AcmTG=<iW@#cQRv|g
zKx)q>BM4EUmhFI;3<&4RW~cw8t!zIq5H-)lkT|Xfh=Y)bwI9l%dk2cOY{%oDfbdF|
zkE<s|y-iwTwaslg>J9vCEBjd5XeVm0z`$g9S9|tzqpji?tv6QA+IZt|y=}fH_zKes
z^<6xXI%tPJBeXMU$?tK@$WxoOWRx^xHDbZfO-asb#WBrQy}&VDRzHOOjP#`~sI)Ig
zfCvs+wGbXLaEd0@{w!@o@DKY`>DZ6dJL-g_?g~vFDc0`BWc}c43I&{QESv5oH%lO5
zZ4}|P!<~IXIme^6$m%;<=--5zSId@mqAlM8(Fb{vwy;P2E>KL{MMmvZ)MkbweYy<^
zxvem|k}J0Qk;LrB9k*j*dDIWw!Q0p_UcNh&gW&X7Ug*X&cQB_F6kiI8*)o=PS+dB{
zkWX5{JdVq;7%Ts(uriY3o%w)1{uP6k)#L++mZPgv4LCWvMb6$|wvWM!mFcXUw`oNi
zGNA~7&?+>r^$jxUj}p1m)i-#cCF4@}*rj%{s)Nc^>%(XS*vA12wTiB0PG2YDUaA8w
zLW&_BxF#Oq(hJafCUps%RJ-g<D6Z0J%F<~nIt@jC9Yq#UOga;aZ@=VhIdv4HPeaj8
z5TL>d6zB9nLBhgziMVn<GiD?wL<<y4{uOQDJZOJtwxa;HF@FxTje#$-JnCM#YA=n&
zO{p+>2e2`ehh=7VD?I(D$iPyGkA$n?3bn^H7zyYHIRX6PwZpAh-Fv8*T?gD0C>)~@
zPL%85&>2|gS|lDd<s{p4YBi!O!!Ji8oa21(^Kc^#BKbiK;?md2hvdsv9%E&(7>jmF
z-`PhlJY~fJgbhi6)f|Ut=m6_c{f8+4sCr*<crdO7vU&?~WudOKyD<L@UUtF^^xy@8
zagx&@!Nm53Gq9Ympq&G$f%Y#l_j+Byid&IKaWfL^U3-HSvv~o<naJJ2bKmh?0n1qj
zV<*WgWp7p{AWR6QBvICt9rg{Hi0!f7X7AVlA@TLOL0#TEQLc*mmdjCWXl<994kmaf
zstLWRv2TYQcqS2W0#f1={SV9nDq!plnRr40#(gNI6gk)+yGa|4F+=qi6eOtwzuyrL
zm8U}qS`^YC)zBpnLmzCU?$B^=kA|t#ncB{K*n+mmMAkxX&?i}KB6}#iKs;X-RFfN&
zUNzAkGa1erY*8`Q`DJ*s0q@1g@&><%Kf!>Hf%m|lOM545nPSjWJ;NbOHM==cT$khM
z_hO$>j&A`3(yQk6rnA7G5j>#>_zoAQQ5t8Wf?PfcD&K{jOCn6FhblwGSkRo+J+~;D
zO*?JPWY0W;nWhHG1G{RzaMrww4Yv+g%}Hm?N1;U~@HQ)O>?&n&;Mmm&;iT=^+wSe>
ztobmK?5uf*DkBzG&54k-L)w^%UISg`B{pee9Uh(I-c>Gxb7g+F@mWEr7oY;(swU-J
zsV<7GPQA|S8Wz@uV8JK(PYm%5#KicA0$Q9|wdF{}szGSw9QTnjvT-j{)OPhP?Sm81
zDEIS@6L90V!%T&y|B)R03TSgf0d=ppuM8q1)~+F(xi#2AZP#8-Bvot|Yxk>L9vikT
zb944)_-|#FmfM>^DGb1L4cB3!3Pc?U-Rf=XNc6gr!dep=do6IoX#bXWPR|zjz)V~V
zjkSm*K%iT-AlgOdN#cf`giiga;!VLHjW!)jO=@+GJE^3&pzfgUj}Sxzna$YoMD`Of
z+AsigQ08w}=)56AZF*@hLaY(1b~&IdABqhfL&~jzp9hrfbY>}zS;_=M`V*dsNgGVp
zv2jS+4<5H@fB!qGV#5J$DR|OWqZB=el@Fn7sRrAp?b@p(4Jmu8vZ7AtPi$s)DCKnm
zJRf_UPs69&iQkKq*~B7P{jfnpqlz}-6eyZLNky;f7A=S&m0mAE9dc{~qFsCJA7HKs
zMbuZ_<p7|a(00p@S_`Pxc{^z>dp{<QhXF*kCSO(;kbzd<rUF~-vFO6Ezp=f7wD`RO
zJ0kX&;ycHDl{+Tt9CO4~b4Uu^ZX%68H>UAh?oDyld>=`4)%+Z>IBOzj()QfSsB*a>
z@10M_Y5RGkOL~n|(LtK8y$Ja_D~~7_Z8UWHT`lov(rJosnNA0h#j`8x6`BUh^q2~7
z)xNgs`m3qi9vilW>+d_tFs;fa2%!O^(9EkI_BMT;sFkCHsczEYP6}zXJE=fD+^Hgi
z5!$-301r(asm{u;lw|c?mm1bY5EtnKQq<krTu>1c_{EnYRHx}oz`e99|HhQ>)t^AO
zB|;-qW|IOZ29)iJ1M0(pQ~;@mjX2+`SOZ-)Umt$P*aibe;)|*4gKLR4W;jk&*Q2D#
zr>W~fl=?T3oCIG=jNEcEjD~*9@{(v37PItF5o13|aip??WJwLH?`1|^p~;I?gv{S+
z1t1+Nj5nWArVz=yG!M!e6m*A7v_*UASTxEsG_fMO_I{I4_K8l!F6uvn`XxJTpVRp<
zXf)Q6WQuv8)S<dL@CjCC-v)lR_^hE@5+efwKb!G1-5lu?_}QfH6Cc?e-Q092InZ%j
zs-wP>c57SFaU31PbvnvUqeJte<A%kYV(mm%G|KvE($XURSwBr$Y9tZ;_$*lToI>@M
z?l{Jt`F_QA$O4QXbA@sgZDKbC?a?jTGr-I=A+h4;9+GI+J{=jO04H<C(Rt@RXkm<j
zzNg2|DeV{tSIy?ksO0aks9!)b*gUZK5<_zmn>x}Wjz-uJ*r+YOK8>{CfeJ@b0b%l4
zVW}h5M)HAD9dQgbejJ@(427;};NQoaK1s%~C4Kk?3DKo)gFji0dO9Sc!R$DC%3ywW
z%3xyKnMRaC9E@lR*ou>nxM43;H!RipfgGY@mhV{R`%Q;ZF<t}EPXpCp5<yzN?ygRe
zR-AxdOb0mKbLiF=sb;_WlT?=vMC-$(qqBjC&aifAn~y}JN8WO&Ef>R(?}BfXP(`u8
zE*$;9Qub6w2P)Z~jon{g4RZ>*4k*3qC`6466>IlOb+4i@aOh;yAyK;pzzvkA)n^0x
zApy{CE}bufy2aR#U7F?z7TBekh)wKb?RU}}Gz=6_(Cj;=e)O2c{jKsl%x|p%L3%y&
zvcsAnwH@B3gNfdxCjTZzi|@j~CnvFP<wP`nf@73+%Ufc@7elli=pBpnA5lVh#sZI5
zYWgy<o;l!QO<pN!tAXWOKwv}w%K5PDjttbf^_`C%(DB<q&N1`8v<1Xnx2)9V4yQ*g
zV!@+b!lG3lj~@Ce*8aq}#dxSKv9MyFGF1Bug(ov6KyJHW&%8~MMC}0-al5=9xn-22
zrM#h9UfRPjrU?94=9^xG!P5FvsV3~r-s8JCtXZ%b(^}{3L+;no3R50_EO4loWpkjT
z*Qm{sd9yTbb6G#>(#?>|!31*{z!2D*UbTs>*JAf(Xpot{Qpg4YVU$Q&Maym`=(#^)
z%xMfEKJDTWn85^x479iQ2YsR-<|rz|g1ejGQ}mT-5^wk|`pA5L6KNRfl%*R#ba!|R
z|1Rw}z#iSgYzfDYPJA|IWi4Lpw8cipi#-dPi9PvRKLBijrej(c)D|uSWUn7U(Hw|J
zAQva!&X3U5jvZpH8C%z3$WuxRdwWZRGsE7Xl(q%?v0m5MK1%;O!H>$IG*}8rIM79v
zH?S<huAE1SQ%Q~0*O9;?ANm_;`!2(yN{Mb&@LewlSFVLia;r{El$GoFBj(M@SNS7i
z^FPuG2PJisgsd;&8VPc=)``r(1MM5>&0F~+HQ&u2(VRg7z>Y`SPsC$79yR`mo$Qr|
z`C}FysVhdQH)!U3yMpdC;&00iZ(y9+cTP7$y}*zzj4*@sa9)tC0~#d60}`ST2~mfH
zC__S|AR#i45D5tKvGphoMhY>~9*~p@Ip+owr50zx2Z(QwCPKF<O{S<&tev=|0q2~8
z_ws8ha)a^!{7ds5-S0(ufmaIVJI)VNk}fqnFEb6-ENI&7yxfvoEngu8ov9eJzNmLz
zga;cv*zu4^4;R-76cgcT1pQp<4Y&tebej0FztkeoMFfywa|gn#(eavzi8$+1q-y8M
znu&ix5>?G8NRWa8V6ZjYY4Ux=#R@)kRXWXX(A5)eDkU?EN56x{GAn{edmA(hKm8lI
z-j!f%elxi9QxeMS<ouwO7yHhWu*+oAK_m{+gi2X;!;Q~L1qSg?;p&xN!%c~`QnEL=
z@(VoHNNLq8zhn=Cuscw_@*6yB_gqYID+xI`IgN?M6&&Ra-k5-Y*dorc;a?x#muqZk
znu7eC!I1=v;)sR?tkYeZbQs}a*2~nNa-LMV)z`lc;swSzg9)oQctxbIp>CzfP9E&!
z&_3J?d6{;&gD+=b-p~Yhl0}rs+2+#}X9tMg{$@U=(PC)*QadgxGJhkPDW<23fOM^e
zga_5Yisf7{)}_V-bp;F2tu#1NL~arO<1jqqc+CyE$;dtN0QKFjRgGq;v-%ZcMQe}{
zu^(wR`>;>ECK>dRy3#gSyEYwWORD@q>E#W+(jPVYsNaoVat7;m$}sFQTnTMK*rnM$
z?G<RIT^jW#?GdbC(K5}8jm=(c3Pw`&d5Ub9RqAM&*{hMvSYb$Jhlte$)hjNko>WGv
z=n|aBI&!m{d<m7<O5<oS%`p_1ckmfd2O>GruQIG0r2Ns{-l43B!B(<IC4tQ05%z3W
ztTaK)JeR<835*vb4mfpOWR<j9taY2k+C9?iM55Z{4ICOG4cp3e9cCBgij|uM5M3|W
z1-!-Q1mTON?66ox$LE>vd$ZpXE6t>uW9K9&7aZA~AXefu4D+^Xk66`-rz4wF`S$FQ
zrUV63x#~@^Y7dn+p}dtq(bAXV9s8so9E+7Whro=upT^Rgw9T8eJ8~hq0gPDn7lKyz
z5RKlWd%eT{%z%JV5$k@2C-DXu4)3ttko?pHk2)E1ZI^b#Fi0|m(dxUE^)>^)He~|3
zp+3FYTa?kVIyDuZ-|7k7zmk<rwt2<L_{rX1KEN}oi2|OQgv4r-Y}qM~ddK&jK_fyM
zZ|}*2BfT-*CSw3g)Bb~QooPJun{IaLbvt;>rM;i`azhIo2W7Pr_N2s&n_!{eUL}Xh
z2IQeVTgYkWw!@WVH!D`Ry5sw2Wi>C+oxMvrR}M|T%B>!+F}W=}tIcl9JMK{@e7HH6
zmrB*RMcIU%<>@nOCU#Uy;Tm(b)KN1r46tfykT>ezzJJ%`T-zM@Gp2lIb6^c6)q%&5
z)Z}C}2Oh;kv^ww?mLFRk_$wZCn?U9O^Jtb~MtqoQxtJ1UD`;x5n+98WT#I={n&(ls
zA8kUE6*a5?rY6(y$R%W(bJDoFx4P9gm0s+;A<`RTn`6W2d8*b43qU}Got*_9k<2FY
zS&D?+?nM8%s1oNalSzAMeo4(jCY+Edvu0v4JcPMsVhR#V&BVS)5^5%jNUU4xba=R3
z{jMgQdi)$>V^;BH29zK3+~!dW;VX4JCv8lm-ry{j^uup+c@ph5<dNHmSm;~^M>lp1
zo7T{VnUG^PZv+-7|4#a?y&Ik|`zu&z?qSNA#p)ab5ZE=ZH0o=pTDeU-7X}V@+1?{5
zjD27~5??QG;KsqJk;PJ77BH=Mk{#TKXa)GbF1t0)@)_U>(3{PgDU(?QzN%&aAgEF>
z*`Zh0<J(h!Y4TYmbz8&=AWO41$XmKh<+eJytn0OCKuDO&|EDJzO7A+s4uIY{gW0uY
zqGBkhP+KbwLVKbW#{?n&ZQnU!ZL71oHcWg4A8JJs>5HRE%Hs%*@{kM;sHyp_L5|PR
zt-CSH+Np!a>%b_Miht;2Ty9hPV(*Hbs<mq=blo@fxPyiWXXOz1-8f|~$3ez@I5Yo5
zS4gb;=>pyjChypr5@3v(&|@(dg^8|8w^_N)D~-*Ul@2MebVlDYoP@|8gtAT-PSl}Q
z$$6t-ADs4_>IAb?Bjj0{s$KnXM!820{A4Tp_xD=>?<9E7uY~9Ko$VCEV$^X|aKJY}
z*9VDD5z^&II`m31leW`=qh~0j#C;Tl^;x?;lQBp5{G(aI&{9LVxK=IQ@t@nmou}vG
z+F$l|B_I7>fD@g<{iKxxHaD-l1KUue<%-R81I8N|+wb1<VYzNf^C7w)d(&W8cq9q9
z2|xCxMCHQMS-~Vu-@+<CA)ajBTpWlbq9E0`H)5ky*)G<aaMtnQdaN99kc5t#IuhKL
zCcq~GybZ42mF-UO{S95sGE;7>)9iZ$)y@ReZ(;S4*|(DFVgHfzj}ND9P^Herv}g@1
zwV8bvQn;<0SJxZGB<vW?o%w*#7bULXO=%P^55`5F&McJUH15aUWWz~JzN>5GUedVj
zOROi~td@J>R$78ovmMuMFm3iK62CPonGw5M_PC?0)OR>ClHg7{d&PmCduGsd*&2&i
z*nTQqo5m<*$Q8@F=seA>cDmKW@FsBe3cate>~)YBO1X6-7LZfHnAX~id6yuEmUYQh
zN5slUP=-4wVx>wC!Hejq?P58!=5b_MVAZDG4>=)h!Htx@D8!#Xf>Ud&2(D!u{uNB5
z2^{*z>!|Ul`M77j=0$qMSx5nTe)UzlOB414iyU-a1Q%YyOD~hv$>~x(HDvA$n|ZCY
zt%6n30$j?@PdoJ_4~}L5Zk^&dkM6GVGs;uWQF=-NBKQf4&P1>Tx&uOP!P#m9MKRj8
zZCnJufe4~v<r|=u$>Lx15PCSqdb=FFPOHW$h=R6m?mPcXaH_R0{IT=~F(HRuVBCZH
zStJ7D9ddY><ba-EdWDIAF=vQiChmmc0zcq9Do#WA#b@FXVt@qf9`(YPcaa&xdnGYM
zML?9N?v&V3tS+lrXOvX|MeDQ=pTVPbI?Kb=OF>DZ6c^Pjnc*$nC%@$Luor<y9%oZ=
zSMf8z=9M4=>ViY^d$4<Y3C=1<AYX!gw_+OQ!gR>l9dI~^)4-E-kk~>ecTSQ^_r*1<
z244pVi9s~?fY?u<c>jSzY<hxl;I?rbjtv~*Sq>2b1oWl{#3O7NR2n;2sZlQ**Ml{A
zD<YXdF^rU}=C4Iassqmfs3zdWvnN!ZSRME~%g<x^yXEQtjzCa9A9<ikMQ7E4b*!ia
zMObiD2mS|HYz!!Pi3Hx=9kd}c?*tvL@05eMI}x&m5aqb4|N1NeQpke)pF7|S`5P)E
zmQSb#J9yy)q_|vmv#jC<YwV67wxI}$bknWo0pd*sp_TP-Kmwxfdz@WRL*M!ZHDg?8
zO!#1^TRQ!$3#%7xbTw@xHKjo=Fx0f5Tf1y8>1v91M+`OXC65I#d@{9Z4$!q}8me;`
z8HRrEe33>BYTvDz9K|etL18}4-o;EA_1mXLjFq422|BS?DcgIz0g}-;0R4E>L$G45
zQ2Alvev}--&ZgQa2byt7(&NC5G3;fYtIgjGiUMDmTv({uCx&L9f86(hWcdh^{SG59
z!x-ZBLK-aL)COh-^6Oy+u7%LGjZK)p><+n`&bW4I7XnrA4vgL%17H{w*%K<leUre}
zSburyWeztk=KO$`tUoER<+zJo=~5$#=nl=qA_TL!P1_3y8OM`>Z%n>7SoFupZG*kE
zqwkNke-Z#Vpc&eICAa%bqQ{;lv+DbqN&6PEVC;m!2j)`+c8MGABX+(C10!x45U*Q!
zWf4^_r^>yo@_km>%qu5T<?pESe_7>Mta1;pyp$?eQ01dk$&Xt;gf{8|O&Al7+@`;r
z*361wOT$X1%(m~f*H{s$u!4gsc5b<rijZ%XM|~uZYLWN+Ebr;UWgy@GdT5uG?V1-s
zJpqF|9jC6T5Y1p`F}BBjT3n8O2dtu?F&;R;>|KnND>y52YQf6iiItt3u&+`i;AtNz
zjk+JJDY5c=6P`l@GYA@S(b@*8YLnG2Z6U7pvOrx9U6zxV{h2b-t$s8~+>kJ=VJ)yo
z^)Ls3-KnL)Jjj-h<j{g#=;F_*W$yuDJ48s8QyIdY+7P-V92&TvibJyj2sO#%ooN=-
zA*#44$DMtW(Y_f(V|1U{0NQ60?fpPILSU)pT|_b0D%l8)u$wZ$hnIQYjSR!%2n6qV
zOp|cle-83eSqgq9-HRnc*zOIQunsh%>1f|J;^YFvRabx#=*qQ>&V4Xlnja?2Sp(nM
zt`$N;&YI?kc}!Se?$NT2Z2{4m4|;1X@N}I`>v<<L6>d`w{ekQ;Zd{_brH``S4nB{w
z29lfhGtM;gR9v^CTfuT3O=-GCsqU7d{c|&;?(7zERT}mW=}iPX#;Acd59F3gM?O%~
zvo;zsaicMUdn~U!fTJq9b4TzPOhgj0`Uop^t1wX*@O|R_VRT=!YCOTX)fPG0;y;$H
z4661d<m;t!G)y^ZT)WaM^0BLWc|tzkh|6CpR+gbD>yc=-6J@igN4(X5U0n~|W?$uC
zZ@RFXDRf`YP?A=noPddP#Ey);bAS#<2CE$8Yw+-hgPc&VxS`TP-U%g@4(4;Hid-0~
zRyoLt;S#PBePrR5N`{Nw$PM986{8s>jhRD|!ch}y?OMyTMDrsKcJl}H9VWiB_xXB3
z8J|IDt-V}JLLT@KS`z(Kul>26%JfVz&J5mQI75%SsM@1y?(C0!=c2#fh%ZAku?dkf
z1W(#sn88Q3m=rQX*PsC9y^u64q4CP2=?yzO5cp_{joKyeIfk2Q_Y!mlhdzK{t>Hd`
z9>SnuF19d3v8|k-?&46d5!7;mI)<4e*3tsHMY%v8^}Rd$n<WFhL5m#NVwR&jy=uZm
zROkB~M)-2-Rr{In>a2Mu1z%tAGUTaMFd?`EGX{puz;(PQH}&)aiR2+Zf0zDmoR~_%
zNgf;z*FYJX$HW6&&c~HsiQTLt?Lc4)eUYNmu_x2Ad<Z!N0PN7Fg9R!{iItQ<<52=#
zU4FiyyRNL)nYJpu<?Nrtl};9Dz-B(~D1buYHYZKC*nJD!=Hz!dQ{BP)((;0H?RcxQ
z;>*LZBC;wWgeyY)hnUTy=Gfh#8xy71*~B9Cb%)gb#}PTzUjVxFyHc%iJ3x|XytwcZ
zsUei@am?w*5!=&r+YR}UPj=FU+*|%e3UXT(3ue$+I;x<pxuHpQkO{r$VaS3^ef90Y
zXV8>`+lx7N8XN%}<%XuzlVdO@7WLu@KFjJ1;tZ<JV^mFf5-ReKe}aS1&94%g0!Wiw
zZW^h|#;4I<FEps;fS_DkOSNYtyZ%gM|D9OYMR^+84ZoJ`0%9qYk^qtoiehpU&q`3k
znFt#AO9VCkT7s~oA%b2w)4;A+do~F*o{6AJ(xJ0Sh%I^k^S~~h2x6`~otU?^Z=ceM
z;TlGPv#w>^P9cVNgh=`MTgUeyZk&r<A?yZi(eFHCp4^SQ4i#T6CU0}5De^{ahOirc
zQoVzC1NnAZxT-$^L2Q0B(U7VtSzEe!oFAI`IB8-BinZ|u(L}C3H7Z#ZXqM^->uK}j
zo->XsIT@*bIFS*XAuu{}@WnX))BU#5Wk4csP|3}R8y+T4B5nwfXTj<9!{l?2{*_z~
zQZ?SckPCr>ne9j?U&0tNxM?7AwUQ_GaX2$eMB!;Hp~)FEgZoWR{~IF+gzE>pQi)}i
zA?<y9&M&<Uq|V};{Dx6ptKN*1oFT#XpcNiU+w_D^X`IHygpd0t@nn+DkT!6gx!VqX
ziQOZnr4Sa%iX-kGTg8{FK`^2g4;```$PLXixz%rSYrb@4Ei?OW$9nKLxNw_W^Nkz~
z(t$7Dxuhdnl;1=baf9{zq_&=))YkKp+Il*v1tgt21B4E2n=9C>DB4tP$&fF5;Vul>
z*k|aVP7To2QAs^2iLM_4;gg$^K~bP9;ogy<TW}SvO}p~#XtZXx^WuFqo1GW8ILEap
zB5qQRa`r*!-KIT_+6E^{9ho9zq&htp46ME!`qH5FQ+I3cp~hAH%p)kt9rukdeIuRl
zVnNtvBPF|{tGj?gKZI=4UVkeZU1wH4j!clUe^9dW)X!a6jekO0-w31O9=1}@8+x)o
zyEoY#-Ks+=A4{)8aUrIwzW`Xn7jOy`Ka9nhktcNF2h=ol<5dk1hEQXYs&js#Ly#R(
zwI$E;fqT^3zAv2B<F9pFj?01Q__FWO{U+Mz&dWY3-v1k#R&c`^e3J{o_j1R0xQeXt
z)FDPUL;E_3y0c!1ZrG}UGe`1Sl|nP6_OEO!-Zl2Gw8gFr6Kex}uf2u#(OcL)I`;U2
zyj05G;=^@SYX`y)(oK8AZXD;=!!RKnbi(D!swS@5Oueg6UskJ4#g-I^N+(daiuW4f
zNQr7YQQ^gQ9IkRd1cdc{&`zxFivE%0k9W!Bij#Ej>)so@f#^93aMSDwUHuGTr8>qU
zJoPqUXEm&M>m*eA#z1fJW&s94m(^$D%D1tX5g8R5)z9$J5{^){_D37}4Nymael%pQ
zh`RaEKS+e1RxlALBYs&z*$mkCp87B;TulEo?_ScmMnmVu680ngXihZpdk&3!_B8U@
z)5vE}Bh4Ow(6m9qCJ|;e%~M&0kBGfW=OkwkdzG&HZUBz76};DqeZ_o9J?5tOS--=Z
z6=LNlq&f(`{Di9NeX(*c6$D;)Jc<Gw>TJ=o)D^P-(zDe(`y6FM1E2T@39(HJzCuXC
z$}p4-eSw$x^s@MOE|#KMAZk{=gbF=@RU_WNSn&i!4NM~j-cUnLcag57q94AC$X~pu
zr@a*X`Q>a}ZMGJ$CFd?>kVmzS2L|*@U)Ax@<fSE1qz0&m>8R(Ub_kvcFKlZMycE10
zqO#a`La>jl(9ZA)EFNfUGmEIhzTv>fgN(Z9>U4DA!O{uAA*NpDo3i>nUM^7(5Kl~%
z$IkEaS&s;bzP@s_Ne+b5+}W+=36am~bkzDkv>;Kpvo|J>EVJTMB9Zy@iU@uZ<%%Z$
zO3B#RYr89-BhFIZ{~uU2I^5RwK&Bo<>hs-d683hI15uN&p@FPd#M(f!2T157LrcS*
zQfv)Gp6K2kr3G*S-^0QJcq!Jtc-@BGts?En$c*~y^(#iW$<X8*?@=q(LF-sE50(?j
zvRXmoCkHK&-q<w3GFOW3mg~@~fMP)&YgyuCo9hv@eT?ZZmREz~AhLJgi}&lW*)9iD
zBLism;fZ-f{`N!kExLaNI-Q`7zw?5#8=Wp9st;thdM&7m;Qk)-K`J&_Y5t%=dXN2I
zuJ^bTLmy+wXyD&zI574P)u6S!PaQ6u3!M&T_JhQg_B=%EQUg>is}D0qL$CRf!&WI&
zoT1Zp!iHo<y;#&&X%Mpu9ujq~>bYj^NiPk}!>d{Q0JVo-8sHACGULBP2$VKCsHR;e
z2seaQrLvNsnu@I4)M=;N`E6P*-Ud=1rZP0d9wGKs==~t1AKytdwQ23Q^Ykc2+L_g8
zho|)Qas{7p;9=u+Gz4lJ4B~jad&BO2x8X!l+eo?4q?2?%rA>R4<(A+uz75XeHFgyt
z*hu#Yw1dnLw`ms+fg4uI4U4s!l)Xb46gZZk43KaPF9wcTls<uDbmjV(%_rma>eVEB
zS}AUXrG#!^H1SCg)_p6sw(~OrjfBeP>*dVC?nA^%dl0xeA-$SN_W|0p6`+WFeY~Z~
zuX5joaPDq2iWyH_eHARY;+Lq|0nP66w`m7Yki1+B&V|044q-mEB|Yp!34#8Im}Fx|
zOe!Og<x;^XR1!%t&!U7=XBDd~7_f%5A{X%eKpk@wZ?vJy%4U8YL=BLz=^9WGE}biL
z)?+5LX@~FurTXY`oL%?!4ug4WgIf)2Zv($ngFV?c%{PejD7=0MWnM?QSbG#(UX=Sg
z+TtMX2XEk{y(|&~S_7cSD2_fr=pg_?pA<vy>qdVr&?A5%(tH#2E~lW;I=gRh!x%0C
z$#PtK8O!2|sBm?%P~JPT4-wEJw1_eK_I7aHuU|jNeHL${{S&-<X)ky-Hp{U6UC@0X
za|h0_Vs}?#ch4($_}0Y&$k>2h(2x&=S~)u47mdL<d++vJR+5NHt_%{%n%!Zbt<*Mc
zH1aO>uMBD6XRCr&0)DpnhA?zgKQtaAdkOa`ln}W%^D*wp_dIK)i5wU6V#^hS^&Ns<
z371x+z-I~g<^u|_XYcEshlyTErv-RW7Q(jDB^!2eP`mF1XxUfR+?vmEQH$Njab=$<
zcT4``iRC%i^4coZQ9y^YUh55^3usF%iyFgjYRjKT8hVJXs^~x{i~^r@lHPOKimPU2
zwK(}bDpo4!+Y@>!0WI@_*{+(0sHfa<?c)99hXLF~9e6^IFy!vQ7k267o6_sla~|FS
zcoX`U_68I09&y7K%bQJK4A~vY+#NV%lCt+Hi51^&xUeZ9X*-=f_&&f<t~>Ch$=BA@
zIoN;j`kE$wFBrFdo9H%hDA^p!H3bg#8nu0Ihm=^EMO1;7d#iKR_FT2am9=R;N|a<N
z&>F>SX`Ro5irkugpz<92+b*5l+;q_5j&6DDkjt`N^8b`j_UZZrPiRddS^>Zen3J1B
z$vZo69_@~9eyhV}3HyIaEc=AN>4E*P74)XZikXu7rldAW2mzu3UNw-0ZEv8f+DWZc
zikF~<ZEosJl#-f21g`Jr4%<#OVL-argM{n-!!}C{CX6?w0K+QSJ5r-C^&`prV%E?H
z$UX-Cu^1y2Rv)0m8?5Emx3Z5a1-QazQhEnk%|TX2H~N%bfrkh#G0+x8K2aHfiyd_C
z(5~&l<l~jsqb4=3rZ!eX2mVJ590?q{ueydXN_Ax9fQYm^pPwW{#S7s0x?e%*6k4JF
zu`|$^55y<Q*f&k+&C!3ZgHmNiagV-hYUr{h?0o9L4eGx-_oLjIRUby;>x~BrRh6N#
z+DF&Y&`maN7S0T1Ool$2V2*^&5r7pNMvz$(SBl8svWUx(>{bUj_?9s&o67-ftI@tj
z0oJE%+f1v%HEQ@(T)oD&W|Pue3N7o~c>oykxeJGcxFC^VvaU&$#_jf<>&kMPe5rCY
zkPeb$lbV4fGVI7^lR|}QywFaC2)Y7^JfDh$&`k`!7|}pl#ZKVQxFJ{>=|GO6kl>_5
z7LB-qQxfDR%^tiWI4Kz;aG0)!e|1st3bEmeA>Egf+O&!I6peJG#iaCN>(a=jSPGCd
z*=q;U@MFXFST+x98nqd#B`S{e(bCc9CR!cQs3FRu6GV!>_&xKCxQLyfUE{Xa>FaXD
zFJf)|^T3D~d<iiIkya$RnV<4^BBYH_f4aDJQsS=$9KiDV?d;uR<w2B7Y&D~=TEyC2
zl4U1AX@$KbyH%{jnimLLFj6N_jMK=#tLVau>f>VVH!{wGEpLhqj@BXKN_>4m@Het3
zamhpkJG3~-%YIwA1|jl7*t8i7$Ma#oL9N_E>NE){$sTuY-cn^S$AUez8ttU$UeE%y
zSU6r*6A*}2w$Xhqe4h=J{0K@~#9Dk=qLH)B<ViIBz^TWJ7L59;;q3Ct0>^xB@HLVN
z$+>_;%ui~&S46*b9}Z3c`yF{|2fnpYe-4<$DV+2M$yBUuOoa`Qn?6sFEsb?x#g+9M
z%@74=G7q=n!JYjs-gV1Ol=0qYRW=7;Gbg3ucZsy(6|07$RBX5e0;E$qJPj-#*V0RX
zmB!7V7YM)4#_~?F;mRQxC@O+FNyFZ;Y{ok-OrfZ(b0N6(syORHjOHD7xQ_M`yn(M1
zyxE7BnAO9W-OYKpTY0W}OESAgiX-=?Lw4D+TkG{K$tI8FD`9hq2kN+@?s81Ry`^OK
z<T^W1)KtQpak{cb(tIr8^KllNYJmbIn2#ntA7x&cPlYrevv}T#MCZ+m&q$n!KN>tI
zO%g<w#=T6uWWr1wzlW*63lf_ni0$pT(t)+aflT=QuX)(e2OqDAwp8b04`Ev%YFm!u
z_Es#U?z^g<JmdGz26JZM!Wpil<P5GKjFM)jU1+Ani56j*uG@c!>!d^p)_8b3EAA>O
zyI~r;N*cRrN;gXNd#1#N{wdcppY>vsHUp~%(2T{n^g3;_QV4Cw0X`(tr44xo1{!xV
z+q~H)d^gL%7nqoXFEGIdUtsbKzK~904Ze`ZlSCxWtQY1ZQTk}l-2`RvLD~3%g5M7a
zY&U5gP0?uQY*c7}nMM=@s%Z@ZEl8(WUVqL2q7onys{#-XDjuZ@te)-P=cO`ej89;#
z4h>%vSf@WDNDREHKNsM+PJf2w3xxIOrFd>-&y@~8$FJ#G+Im3kVLjW5Y$xC9;JpzE
zpFEhvNcg30yY#MLYk#TR-FiQ3dAIxZ>^h$9(6g`dtia@4=?EhW>vVhxzBhCn6RyRB
z`?2ig%TBv`Ppzeh?QsVUFd}E{(4^u5XBz)d=zVO<o-XU_dThkav^j9VS$&ULJ9><-
z`97JA!DE}Df$)w%m*w6ILo4t_yf$^8wrUdv#aJh|1v<jm%}fsSCS5a0dTm<zEeKM7
zVpO+jjfagz&Q)SnB?|dYp%ltrti1(9?1fLMPD{nk3fhLLh&YzW)-iN1p=cBK*ie)K
zC_cj;MWIx8)nO3H0`+R-)sx0rL(4_4#@l^(3-Y~<wBl*S3ep;g_9@%H$yluJ(;h+<
zXNHz!{eT9mUwyG^p<FEbAF5o0=zr7-JASWR(I3Cpt{8ydaVuz5Fy5C)^ye3HqL(hB
z6!TDjQx^w@{O$!}Bkp6>inZX-r9Sp7ODY~m;%@rH?r!R^Gt=*}>{lxuMJc`)>am19
z!N<riVi7=&%@dS5^5`7!oy_;~otebotmDD7;H(5suy=4)7q)#;-GQc5+*U|KP;T;d
zxbYDTEG}K@Tlkh!G63<CV{jHOB&`g?>3P)mTOeS;sjlpR50emTOBI{RK}bROaak{I
zk$ymt-yKS}xGT0$Eo~l1!QRxBRPmGWlT|2tLkd3n1A5|ZtW+ii{atKf%aOPEi4rsq
z%dDCrAAlT3p*Q#!3NMf_rw94rMV;r#1CuFCHSRmn`<XrNuJGW}zVSWaZTN=mZy&>2
zTbuX>4d<l(>#wH(I03oLulV<!67ZQ=d@6RuXTEY&IkR553+_!B8@fGTs@aE-S=;wI
zoyg;UVY@aSkFHQIJxhI>@fK<$6{uU-8#mg^$V5_dYnmIN{y1;Pm+~4r@C0ZqtLQu)
zpvYj=Zy^;Uc<FVDrCIx2b*pwaia<gck#LLgTKQ1ydvuLjF^0Y&B?h{#U6CH>8b=F|
z@xF^1zl(M76i(K82g!*b%??y-)0+st{wtc8`0fJsZMxA82y|VtViBS3Luj#&FyZ%e
z8sCax%!^@k{2my0Axod!0-h~!YlzlZei#C^c6!0S1{S@MHsO#5!%qQ*tv7}>Q|$uO
zhRQGQ?wv7J9AoOX7*jVjexw;l?t%~zfNuiXZ|QG2YIov$eniB2GE8hi<6=;PpF<^u
zsdl^$wThtDxFAv9wX3>TfdR!HjkF2f2uW-7Z5mJ#Wa}I8p@A@&fv(HM&~Mqp(BC`7
z%2GVSzMd24N?CDJpsSzw;GhJ8vj09u|J1_@T!>Tms}C@I9f=j6gu9~Ar2U=eFu04C
zpAT`1559)wN}y|`_+TlN8RIHGxE7c(_(XIYP>>3OKw9{`ayK3nn3HzxL-<ijPhj_1
zT|)*#s<U%hYkxv3{X<|kM?k|GG9>)?lbS5)uD%x4Oxf^mSh{w5cg00<6_;tQ?g}eI
zNXAF1`&935cz5+@Ur>K!v9Ru@&U$y(ZATqS`Q-Q(*TG!sQ~LhNmEuD~AO~1W2swv8
z^<6#~`F_lj+QkQdgjA3pDpn3deZ%*d%WTsO`~Vdn%X&H}$!-!W`!J#Q79X^*ha~aA
zE;e$5#Hw!zPtC5*PNa<j6p4!(3VH|duuD*MuLRMA+8%t0*0)*{JOQmVQxRw~b$=BF
zokb_%zq&HSRr%~8Q+zOu^>MBE;K$$}>Wc@^6X?noD|fJm@ydA2DY5Dzv}hC_i0k_h
zE{VnZW+SWjor|vcDmSvSQFth>$t%>v3B28ezDQT`{3tT^C)@k%)-E{>wWh#*HEd^a
zi5!7eNJT^?Uscl3O`)RQtVq_OvQgCeEu$Wi>vV(9o<t2ktuvhu)9GD)4c7E7uhj9s
zPes%v`iDwBq;1#PkBR<jm}+jQ$B9)3k3)`!V4whw0nCF*k?QV&39P>dLqYa|tORXL
zV*Vo*Y5X(>JCwoF=1jLC8AKojF<WyIS^j|oh9yi`j*tNELbv)H{|hd4sSnW%7dNaS
zJ0do8_G&uRPu-7q{4wLRFyr?my%)Jyhrg>E9)Jc^8lVn954rVv7cg9EodSAdZmTmD
zyFXBWsGEsDLCua59Ta9zumL6eoae`jRUcBj?=VF=>AulFtu<^1sW2B4$El0D1NW@d
zhiLwZ4TsN3L8&EhY^X9IaO{#5=LC+C4>)%1ir#@^6Mmn7!|7gJrRZBB?b=nK5Y{M2
z{8s)IP5Fo*j(ZRp7RR--I4%i*J>s}_tqc9)`-XZ9)~;#DH*^Pag#H~WD$?nE<TJAF
zKjK?V4XKx~k=80u<ZWOxRCC{k(H5K}|M&6HB}vTv$Za{|9QUEmCI?RTDcdf+n%Z!)
zj*GryXSh>lMH>;2>Px%sRUI~!X`P3#jBSD-D2|;)+1KMuxdYlNXt}D=rZ%>!0>@0^
z{RK4R@kP%{x(R}_2(j{S=o7~iVr3P3uqxAP0{5T=jwjY99NAxY5P*may}9&4cSVPg
z3`GrV<G?!Jgn`xK8|;@N-yLWITP~Vmw5^@v@IZU=Y@6Q#FoqF#@Trsa3DS}Gd!mlK
z8iRi4Ujz-ZBD-T{O(@eF_iTzi)57%$6u~}8AhDn~LFq$uh*kT5s5!6zz2eQ`mPD}<
z>s3ZsDm5xWBQOM)x1N2@@i)kGXjA7CIv``g`3nRL?fh*Nmn)e37%jT|dUB|pc&(@K
zzCu2pVC?_KcIq9(IiskBwJHED>lwwh$m{&Xub26IUMf3AfDX``)`*fUbS{+OyOb|V
z)(_E^F>L4mU|=gjp1K-B!kCQ==@t9$Rq%M<SZ6tFu(5wY`!o2AfnN@AW2N;OT{Rgi
z)j^N~M<$|n{UAbn0;A8K5J@_*@C$3-<KAfu&1cAPG?`IskRq_UgyP04S6o6-9_XL2
z;zDxDxFIF{5ra7HsLzJS{_uP+plPHGjYd$T>nQBJ04>D_X~M#>DSZ)jij{w7xd}d?
z;W&t@Qnb~lY@4?0P;5%KX-&wm4zU1}KzqI5hqcBR)9^hXIx#MLrw7;B@mvoAR?c-V
zw3O;L!Gf<J#6v;cJ;g=87~fwb!$%MsCHgWep1@tG@0<sL$Ib7C1z?2+q7awj)?q$V
z^h=YzO<My6U1w6pWrnkuwu@EYpsqQv5SnkQ4$y&BR)8Wkv2q(KvH}a~xvCz|nR`1)
zVEl+KpqZ5O=%+vZl+sTk{m6kX(<a0i#^M?ZhOx2uQl+}Yp&;TsB4RM(sZCo1CqPSl
zCPt0!H;xHcGg2b6x$rg#Xhd4dkYH@HkdM@F5==-Q*9B};_vm8-SRWJayb_XGZ=z0b
zLTAkZ`W&yR!45u92Iq_qFB`i_o!`GgpB6dGo)R{~__WEy<#&AH2y+K7)Z+-whnF8Q
z3AJ2wDAg4JGoOK1Bk!zkB$Lt{C?)X*8p+t2eD?(!GuT5JXWT+_fQ%D9Z=f9^)gW5}
z!E|UEa`hxmZ`HR-PCc1hXvsnBYaaAn#m+2oAWHA#UQ$Qy!&`M&tb7_I@YMxF5BO$n
z9a!tEMg>2RHPd*kBvP4Zw!cgsrIBQ#Se>}BHIM|h;}}YjVGIAKAU%I0eO<xi%W?Wo
zn0ylm=F37F9+NMFGWP*SSG_jvvzJKqeCIXfZ(*|5{_rt|qNO6*0UpZs>nd$*0LFi6
z;nY1y<GUL=>SLM;)cnp@=2zl|-Fv=}hP@qJLn3vJ{RhPYzLd)FvflVM;Z?{)Y{6G3
zC7-+yu>)KuTZvqW2U>~vaN%gpMF5cMIv^2%d6U*$fV}nz`k_{L=K#xW9-OmlELbrO
zqm#0W16{pW3<`85A>hCQ3ahAowCJ=W;J~6Y0h^5<H0U@rdT*+M{*y<%8+?v{_4JnZ
zJ5(6!$G*#l6ApY+`Qt#>`S+$tb#Uzn^l`}D?yCOB?L^guI#qkVp-rE|^v#f}J0Mf(
z4JTm1l#hmSK14wh@y#I){%0cU`5QJbzX;=^B06YScjG^2)9_t?d^@P0b_uZJE7H)y
zc1<OaP%b?OI=;jC8#cju>Al`Ehk|!}hKm5d10Yg#MFRFY8Y$dC2zvv{@$sJv%LZfV
z-heWwN4vHarIAE1qx}Wp91pgVeHl7k=TfJPE<|#miCrZ80}7?OYk`606y6s{-Wb2w
zO7c3YX^{{Wx&TO-?JrO>J*VyuwDkp1xo8{M&gfM)>+$>(9o>Xns1p)GV@?RpK8{7f
zd(!{M-kXO<RWyCWGns5;;e;Jo0|W_#WgzT9$w0s}I8kI#a6u4=tb)mmpaw{o1d<E`
z;)**8c;ga<s1U-Iu!KN_fXM0sqUae05JX7AHs7zR&zzY=e4hKgzU#fN_Yb*mGpD+$
zyQ{0KtM_WeBz;ZfA(gt~HJpc5^hyHle~W%q9hRO@%t*t&id0eOD03Xl{8@)L$TQDi
zcPHH@?crrd)R@ji^FJ&sq35tQ7Qq1sF10sAOug%fiq!?$A_NxQiq3tSV(6m0VSyC(
z4Tm+gMYji(p(apyym@iuaeHx4F6ZdV_NHg_#-*92`z7YU=w&PnVXjBLq<w82)ztWY
zzRpWkhp2jjs`7-$B-H&Tr_<L<5l$5Kz3KF{b)f`sr!<s)qqT%0iOh{ccoT|nCBsl~
zc?Q^?@XI_Ao^lIuqEF}QOaz>oH#1mBoofwJshK#|+;py`2<CW%i_$rV-;$DcxD?F)
zm|=|f^FT((@fuf6DdK1~z2RDL6AHdp4Ng?cV${%$3Elc{Tr{HKP&GJ8qi#sSmr<ou
za{K9EdvSf&2rpMLw)+G}Qr0xJw8POS+thF5y@c?PXBPcN>#VQPZ<NmZp-3*sUfjTC
z@FtgNdm1+aRn==o8P7$=B8E4(IR#HpgMAg$f`W&s!M?J#q~Lf23(agrAf5MOnI_rV
z`m$?Hs5%;DG=bNl=S(@k_LyH4`;w0*s_%%3OXuaW2L*3cgMFgxPQf1`Sd`shFE+YD
z&>OK9#oERd_Q}+mRZ73X5w;MKDX0E-os6O69{F1??I<`=%O${G+}8C0Od01A<7M$K
zqH0EwsbR<39#PBZ6G%^@sDc5gDgRy+Og((fBKM}?eFzqUCS&N@OjKkAI@=!hC9fKZ
z_6T>kQqxw$?xwIXkpkwQx}wYYLw)wZk7zt7Wlcqjs!Uu@sHtak)*8Q$`B+4B(LSt5
z3<CnRM=v|_9U_nsbcJaVur;l7-M}B_-{P+**bvgWPUDYA8r_)AbqIf0ki%_sr&TRZ
zSA@D7WV%S<xyp;X2^&}RD=<{9O4w`&!UOL_pdtU?_GgfwE7O~v>`g0y(wfP6Jnjt}
zKw)E<!z6DQ64JScaM*C$J%5vWUqatqQ|kRFtiD>Es`UFKObo(w@by(|9#wPS)$8dQ
ziy6|gAlMIkb$iMA7+R9OI$BzG7BaP0x0al=--ttlSX1PWU@7YoWm4T(S~|8aeKeJp
z?m&ps^cx1P(&8ip^3tQJ@Faq%$E;e7rSIVaa2!=S0u<|#e2nZ9fX;E4KhXMAB;#nw
zKjt>p&zCaJAaIvgQM{co3jhL_3Y-I{@G6w!jG#4jK1DVb2){-CA`y+Slw<-WIT9yX
zE0mRlaSr||X1i+?niReGL;Qk`MOvJQKnw!i!;40$WtjntsW4qYF(Cu=wh%1e4%E53
z;20Br?$#&=)uaTKq#K~O27yk}DGkAft10@YTC(~EvHWCp>%$tdnh&fdtDhOC$?7S_
zsj}Mb!_hv(P~f(TR#}0|<NsmoZr6HPaI9!aS@)p$($d@rs?T=P(oax4dv%PIJqIDq
zXFHQnjw;XA<mFF*8ZV=L`H_&1GEU{CpASd86af_V7R?B)-aY`hnVO`ig8(gB#6m=~
z19XmTOZBFF!1dNPBGB~?$o<51fG~6^zk*fkL5ky5tpdhr;)-XS%Hr!j9I@C0IKkpP
zEkRbT+W`God{T?XES?4^#;!vJf<lSmJpf&C7_<1X+Kx#yR#yYmSPc=;5jEx-*vVm>
z%Bp)M6_JZUtj+*Vu=*_{G--|mqUef{rm_JzQ=tmw9n3qPu`gQb4vLIlPKofm!>$qN
z{_WNMrDaPna<f<Wo!7};9Sg547-iY3J4#v4!8S-sCt(O@uf`tCJhlhemKcE$)4C=_
z5~5LQry^Z%L7fkGOv)=&9wugJvDIf3egR8ce^6`th_V`&5qJ)PjW5S>ll}B<WhQzL
zd%50mL=;zf0<b9R@9)>B<|#-@lU+IEv}(36PL<skJ{-x;NG$kT#d5~d<c0U{>H{mX
zo2zBVN>B}O>uHViJb*<LqiL^Yx0rY-A)INT(1rdSTVrT5K<6{K+)oX$72`O|Dlqgu
zB}LmXrov?y0+BGMtU+c6A!-p}9?9hNE!UyYnlitNn6+enh7zMWfKTSL5afJ#uC{rj
zgduhI%r5qBD8ov!kK-;;c88Vu?|GFiA_M$+0Q%M0CB&{(XPXe)zs^1eEQA=(Noo52
z6+o@dnrPXuiC)1twa#w5>t%s!B^@}wI{T5aTAhspR%Ew}5n5{)LeYG6b`;oJbvBYR
zed4MpcM7phvrt?{EXML~gfa<b)vE1jU#?Vb3P8U)Izf?-ATlb7wsF^xVIF-N0m?R@
z#HYP1ig3AvdpKR)rhAc~kvFjG&J$AVYg{LTYu0o)_^egaRaBaqHJy#18Z{k_v})CK
zB<1F<=~v(JikWM=5f#bTI)lAM^0m$i*hv4H-mck9Gbg3h^ge)EO?T0<;hO%OacWK1
z^Wms<z6{W>rmwtB3~DuP1y<DbNk(Wj{TM~_)%1B_Yt{5rqVP4TP7s5CbzOt4ay|nu
z5Y#~D`EtDio^Auwv|xe{M_O<OplI<jBe=z%0%9+~%|}#waaai>LDkT$P^ud~p8^$m
z8)%<KkS&Eq(9)kL#C00OG=EF$LCUpsfy-M{7oG=I4P9tR));$uune?gONyzde7w4l
z^HvRAsDt=^x^Nw&wOaj7*gJn+_);^S_i$30E^Gs+=|USV8`gyn8K>$(kPk<?un3@^
zF8uyx4PBT5tk8u6jL>x9L5k+nh10;+(uF68!lw(Zyk%3H?m04;UR`+Bmn-SQp8z-i
zpjzg`3iW4Pt?hLlNTX~LHSbS2zH02d*Nk64@qKD>1*A3A;xbZn(Vo8Dg`LaR)ZMx;
znOa_j<guZaeUdr~zkc^J60D^SKOv}=Wtfhj8rl$yjB9Db6|#k1ZFpft4Q;pq&`%rA
z6We6$e3s#B#P-*QHGoC+bmOEnZCD3T(}o6GHmnV=GEUWo$~U|$a34T^TttFDF`_hP
zpzD=u7~%K{<5$qs62>6})e^=y%EiA!tR_=hvuXTBrqnBpnHnc-CNBc?6UHejX-#3Q
zMQndztN<){Z!36*=y<HU3ZN#8U@aRK#$v{)!Z?QwFuwudbm07&#y5=B%w#gKBD*gc
zp*4-36wTK(b^}|hX$+!Fy&d9cV!MXXqW)4dS|lScp!RHEz{>jU*arlShJR(zv$1Wb
zX2;S}{zF14i=vTUF<GNDP;b)~X3;q++2C(;Ax6-mFu%Qqg@q_<eQ|9PF_z;6U;9pv
z4ZSSwxM*j8X$s71sJ{Jab)y9j#aG*_>ZfC`uf_cO_Nq2?L@9<=$N9u&65kZU9?lQS
zRFcgkVZW7FWK^VfjPQKF6^wX2(+8!V@M4rT2+uo?rz*7#pnp1lM~9#taQXc!drZ8H
zI~X@{Lrt6+*ov8=E^lOj@M5a-SZC36Ul(P4ihrZ6qxm<(%FB7Wl~!H`)vdGg0*$U%
zEQjh2x|`BQ7@csv1-{%pQxX!a-P}R=vBly9VU*l%x9n_TcQ*%_!F?>HU4lC*B|O0$
zPEmHCjgXst`_4dzfmq9?HN)C+_V;G}Kl;dm*u@i5rmeTJVL{W(WxrtNAZ5{tw7t5K
zw2Uqt*sJSH&ad&oH@op9eHNXVl9qmk#Z!AVjxA*}QJ9o9gFnJ?+>Af!N?CtFM)qpS
z`hvYW$~w?qT~ErkAsTK0r#vn;T~cr37w_?@;6wo`DmY4j)d1bkgUqOg4-nxKRIrNx
z3sjI!EP?n-iZvJ?*B=vk1&i=Fm8|j>lclSmBEWenctU_nRdAmG|D%GN1z4<tp9!!8
zpv!@w0Wy78&2+gyeWZd5)pS%aO@QlEaFPHwso-b<7OCJ+0d5B9YA<p*MLE)0KIC}g
zQG7>=?+W_Xi|@lKleAI_vhP%|>L!CnD1~E~P>LgYCfsFNHk#`XOHMjoS86O}^+AZV
zbQ4y-vCK5T3`<NV=a^p;c1nxaa9AtbeMPjxOg7{2a*ro#r?od0bZ*h^e}z)-6>N6G
zgHeUzf!6a^O88Ewc(HQrWo*NUBL@|V3xL=#YG#eoLJuRf0R9duloG@iTb>1Yrl1{L
zsIUDKSPKBB^ii6ErW9cX;BD%7&T&-Piw3lnPJTL$qMdP1sVs+ag%KBwPT}~i6TKTz
zV;DBh28_cC6^aa4<0}EcX77mQurdRQvte$xn+6>HkghAI5!cK^RAV{NKD!G`Jo`{B
z>`5-}fRq)Ep+mv}Z0!lkWfq~TkKN$PDN{j<0Do4&dj$9tc2J0`t^#~f1zQ6Y#(DX5
zl+8I*&xISXUdlG18WlV0XY*SrC{vI+pMMr1pbHd2m<R}m)a^t-$&Vx~Bos`*P(dn^
zRQduch@|klUxlRUJOW-*N$d|#dd-j()o|ft*p>n~0OsmS!4z(?qNhag(pg~&aD?GB
z2$!OqeM!YVT^skbve%27QX4l#$@k)>*2Ya$mV0s2YU8FUHZN{^ZQOKaEO4g689;CW
zcH-1ise6Dj2*I15@)w|y31Kz)xJ!i+&9F~|QGhiO8UUajzIwl?z1h_ao(1S0f$+zN
ziSRKZe76dk1$a#b`wOsA1>*!5t)|&RfKyd45}@lQ&d4D7E^3VGD$aJP3Z4_7q{jGO
zfUzq0jQ~5U;8uXz3pAYp&^m@%c2YAs_ocL0R$I-&5MnCyN$L91nu>M~uqLG+8L1_!
z><27VZ8NmzzgD%^Db0USwHLg&JE+<?FYXSiHpq*+gR0%_#oa;G!o0XUsM<y69aZfZ
zf;SJswvN_TcQc_+h+i}8Q?)gKH6gA5fI9zK7Ah4~2|dU}H-NYFq-CeLuRjiJgcFp~
zvLt*+S!1!BMf(p+_G7P=b|jX*2Wv{Jj!Rdgig~>;mRF~{O3OY5&E~;abY#PUT$K*U
zQ0(D1;wC^ZGZaLrjbEt)te-jVk8Xht6`oHclNk(yO009A@#7MtRF6zcIjhYdlu|u!
zO51@&|I$p*t_MVBIm#6Pjx+=P7A4V$lE^_4e7=UqFgU#>WjzGd(kN$xl22RF-~{yJ
zwU`fZ<{tEI1$YKibUA~()Uu%N0T>G+f|vFLIETa*;K)&h(gYB0K{{>MlO4Y$IcGj!
z(1L=ipb6fAEImJEYWJfuW(ypzuuuITt#!<qH~DZGpLt|??03{;aVuag({%t$TiQ_@
zY^9#Ye-}Z?j*D~>3+1nsU%Q_a*JjG@BJN=QMA_XcL*&#$T8iTk9Vv-YJOn@_G!O~#
zS4wy(_usvV&f9-?1VCa;tS1C>7ho;L2%_|+=*c5>$AX%!pfNG{2gAPBehRRb?6>~F
zZeL8U+OHXg?y9DD4PY(L6%^B(r$fY~!2##_BEx)qmEq}tMJdNZPsO0Ppb6@RhYB=U
zF>?$bm;C^1Ty|!puVJ=eINO2jxEqZCEc(#vPznrVP5~3_)v1fQer*2?Kn%x({0{*Z
zicETss235H)zMWC8&|B<Y7^Y8tfrKllUrz-@Cv8a1U6Ze&JMUJ`T<czXEym2VJb%*
zqUQA&L0+|f0DvY*69AD`H}E55MB3o`oyIuTM(e%OQYRaU9+=Bj$4l7@0KpKQen=Ri
z^gr1yRjc4k0bU2_vWTv0k%}52P>WS?umE#Zu%`fXRj|DPKLqFsL^^)mlH$xE7}iZa
zV>FLp8nK98WhP*)F2@7lAzDFebwT(6CND-YM8WU%C+`jbbix3{Fy(Pr%L2^WDwKu{
zw}=Id^M1I$1=#rv4z1b|ga>;m?9yUluGe(Xgb{q2;nmoSE@(;cL56RU6=M5Q%<zZ>
zfN^IR@4zx#N-&RmS2C<e`zqk0<1aBhF%dA2;xZVvUINVP+p_^<02m-j@DyWn(LEG2
zpwve&ycLtVg8BpxV)z!?oEVn(V0c{?VCJSRU`>>b0Qkn1AxxTxHpqTka7SU0pXgiw
zoZ}35j|iMX+mKn_VdXGFO@(c+4O2i1FUn4adr(#2@rw%OONMo5mTH<GB7n@$sL?{l
zUls&1X7IFdqAUcA)CFK8<Q959Gw-m-QhAE$_0&E&!x0Qe6U-S7Vz?Q)8a2c22%ro-
zD@BHFm_S$M&9EL|EyF+pycV-En~JY?9p?ye4s9zM{SSbMj%`zg3UF7j!yot>fY9Jo
zq=n9*t!b<pUhLWnUB`2|IE9ajv{(0*vX(#}a8E+Y+Q6v3(o%&#aQEjH?3TS6i<=hI
zs=a!EbrkMW;E5*SHD2#WPX3dt1i*g1`3%_i+LNoEYy**`&h<9hX3ep}jVy4^>gQsu
zs5w^n5m>*}>mqgkvBF6<PU=`;J*C8Bh4(q7nq!4mfc1?PvH?+%IODl0z+#;az*Kku
zOIxBDJjU?&9Kfvh_XF03C-*Y)N(PYJM!EvtMmKa!n{;IIsUgsE*==-~rou}aT`<Ml
zr0dTY!bEfVo=N`DNPe-CAW<P?QbaoYl?_aEO(WU{BBb+-k4kxkNzQ8|Zwrzsek8M*
z<bp;rmq@ng(tRXD;D~q_Q~jw?jSvZ;{d+l5Ixxv!8c8=nlI=$l2og<P65$J@GQHyR
zEM)fA`q6(!oo=C|k^CS?(CoEb*E2~yjbxJ`x#~x<lt~(BB(DpS34SEgnWT|Mk|s!A
z_9Ky*q^?FXT#!JKHD1~?NrXny1tbujh7V$VxQ34uNj&P8#2Iv+nuIQ7Qt=OI68#Zy
z65MvHI-q>bJ^y|Uzm@1W>E828?`0-AtdYDWNU(;Zr80|2j%Xxv1j#->5(|?Y(?~`M
z5?FUFm5xkeA`8qdr#ncfO>s+z0YE0Lfy)MY)f}7P&IFpG-`J!wg93(J7u}W%kTx=r
z*E7l^4B!EvG)q+C4}2w(PzNm^5#%+fZxWq%__qWAhMd~)FP&lE@NWhYqY&JIKB)p+
zyb%EWOpzT1+}{*E2s?-}+!nHE&&m3ReT@K%PS?O~pysfza)BSa=Lm2Pxl6VGfW)A0
zAE{2E=QhNx%|W&StI1=%nhLMPtQM*Cq6<S6%Iknkg&~QE%h*L~JVrhbpdiw93|*&R
z`BtGk{^gqmlcid2Xe%XZqIhg?yD@7u?QJ_?efGAInjzcUP!(wH`V>o3>Ih4<l;`IY
zr@j%^4}i52RscZXrY<{`04jhZ#R}yMQciJWi|?dS*ed^suZxJmqH=Ns6elG70w7c2
z6QmJ5m6#^5>N42lj3xa*FYo$TuP)kgLTCxf0LJ_H?F?Asw{?xA>M^O`s7FU=?||{j
zygQA0enhDMsAoUJzERIshW$o8pCQ11)boxYkiCPDC4jX-$O1yv9QDj#df%w$afW@P
z9t*>Mqn-o=_>X$xn7}vcX%1M+ur2{;UEHAb08pE1rCdp8NFDZ^1w@2A>^ZIi9IG6F
z|A>AwV4(#cL#=9S!MlWQjg&|wUh+@J4#4j=w{<*j+F>m8fexKFT~O_UzqppV9Ps85
zr+Gx@IIO%&t%8P+G$G`v?;B_r?sz|v7yd?KC6fEWMA13u4{`DlH<&@*H5299i(r$>
z`YS8REes(F8hdAj$AQ(PRt|uY2*)98Z=mnKg3r|t-&kNjKdu!VMSTn0-`51~bx9k}
zVUO#QsW1a2bsT{wv!Agggh$cizgIjjz!Fn9GQ{TEc!0dQ=6gb3MJhvpN~t`Gi3~g`
zv3SD&f_SjKS#$f(w=Ly*3NrBCrSQ9>*hX4LO+?E2j0U4s*nS!bp-EZY@Yh}yA}#UI
z__ZohS{lwF*kAe+9NMcSaf!`d6(wbT%pq`a@GTQJn4e^?YA9vz0%R(@Q4HZ4lrwBJ
zdVK)^vmw0C!|>#;fcc)(4gq6q1*~f|QZyA#22`L|{==x&bpT*0fO~cfi*yNI%<$J*
z(%iom(l$y#2;rY*e8zdece(ARP0=vDs^$i`nh}$mP&TSwQ{ExPbQ^lTDViD3p))No
z@KqAHd=r&c5bXL5vN9DO#-V<2R|l!PPEg3E3?xHJqE~L-qC|9<1eglj7UQJyCVLfj
zblwL6Ht|^0I5<oP!|hdfNm*tNf0e_VOG`gR=Gd2&vKMl)JTXJEA<7z&EcmBv_-g0N
z97ODDK??*G!YBw!V&%#V4ni&*gb7x;GFDI_Op8c+U8YSavo9!~gOC&lVV+#BM2m<S
zD19r}5m2L`i2@&@7zEOv!%H{40@X62+vkXdWHk==aZn8oHwr3$4p(zf4Gx!c5R$?)
z-ZhliDQwTGpv+<mHDxI<A@0$p!n3ou!p3kg)fmk*%N3d7mxOwB^{>U=f&r}-1${Jy
z7HXR8x{e~#mDgqcQEGctSIIe^KiWxIbRQ4f>QdHBe0V*1V0rflxV2ZsTF2O{I$68f
zi@(D?KWXu+Xo#jwp};{Z@!u*NZ?Ke*7$!6KfZYfeJx=0P&SENZu(F(~K!jz7Ax@LW
zHH2siqiLNXSeecS&V%elTX+mG^&cIEb3;?^XFOu4%`k!C#yHL|+FBgL=9z$5Sj`zm
zo8d){awVMMGQchf5cgP7t;h_`3mhp|G2qY?N?gc1!$I9Cfncx;w*$EQ%VD}`Rf#BQ
zGY26=$by2_YE(#ljF+L8MJUz<5DM89=v_%Hu>~^-P^QhJ+M?q_qCk%_T#)IFKaAm_
zqz%~aELZw7yek7RR(;BqP7I%&3mB_HxL?b#j^c;8Zr!597ho!foOF!w<#Z{XkZ@w8
zitaSS&lUh?3wV%W-2sU1ail|@LbAGpPkR-X4d}44y{a$P5AY!^eV)Vn&+kvSsk5g8
z@>i6lwCuKtj1?3GcP^-dE?4IAV%%`(fomkvr&?bHF)3q2zBfU~7DQ(FTr^;|6@3AV
zTNH4hAu2Nk`^^}$)>V`Fl#;2((Tqr56i3f+FeSscS}&s;G!=@N#Lmxv*@#{O_kzQt
z*u~-?-MwJ4B~mwS!qAD0Lb!rAZvhVnTyPgO<sc=pn!}I>)i%;`DL07-UlfVV_d=$?
zxjwHxaF;QILk9^mp~+(r<Y&|=^`Rmzk}sgQk0~e~LFz>k-x(Tm*9Vtpo9M19erAXt
zy6`H_b|h5H9|128=mx9n%$M!ek+@A?T@Sb8tJ~l<ef2%Io~3*bTyL-LRB9*Bv-<P_
z*ySOQ8VR`g42mwL_Nf%^j)SKGB&>HI#w}vHFmBt454vw-D=M{9o_cp7?m`nac9_ze
zkyDPkILN*rs??qbbbuQdvgkwaG~sMdz??dzcDlx@cZVPvedRG4?@`RDgAnrB;T||3
zz*aY<D3-hC@FoapkGmcnMGE|4-*Z8Qg%Bs)QjwT`1xZSYBE{gIJ0$=X>Bs8L!h4&%
zjTQHL<K{Oc=K@X1xd5*8_6NIF1FV!cxv?U4=~oX2npP@Q)&CMHO^rmqdSv_#GM2J(
z!5rpb_)EjzawQ;@)Uh+ctmS_`E5?B3%4sWMxU0t)kbFUvE8hX@+chm$b}^hmi%i&8
zC|ACs*xZUg<k%UMF7_2f?AL*%j*T<U1yJK0l(^5D`N44T>w$Vn8+H^WB0hZiLapj#
zQh08rjK9hgvoZdCg+AL8rSPy4P7-IGbnOSewm&}Eu{;XJBptm>ZrtUPbJ5CbO6YY8
zCkO5JeaPv6vJ8QEn4{sG7`RHI?%;rOeinwHVFJJdm~g+)`vZ^X+RjkhQFUyoIZ9CP
z<x(>_(KnNvH%eJ65mTArp~no~Zi>vz4uhO)kLItz@VsV^6`y#$#csr>$$^JCbM1ZU
z6OW9yz;~kh-3s5bAc@B3aPb*~&oTJKtE{p394|ic^qYN(An1$F+4PCz2H<<H`h73H
zGw_W!6LT|(A^Z?C_#sB{Lrma@^2ZNljUUPuKa?eYC_DU6R`{W8@IyJ^hY}Zt;!bz$
zRUgLD8Jng;P!RPADQh!-EGL(kc&~u`WLg}#GJfz_0eK~Tz}YZN&RxEe5;kO#OHx#A
zEPj#=2N6I%NiDgVYk@{|;Yu^JilE%(IpXIf{>fb@pkn;s<$+Md8|Dnu%ek){XN3JU
zAq+d@T*pEB$`vjy9d;vSX|P9&pD6mtwUaMNc8#TE!Cq%<riw?+w@04~kCjb14@We9
zOxwvS%Z?~HVc(n}Iqr}<LXN|^@<Vdvw`RjJi-VOxhHG6*Ldl#Ub6lA_!V*_v#(Pec
zhs=fw5Ezk+#UV!}6G1W&B*&E`JIc(Jhms9g=^fq_M14V&oUnrk4idqRWXC~s<+sU(
zW0(;owtyxkGR1MC*hv(}lN~$Fl?Rgzdq6P;)?hQ$wmIR(oFGfwDR+c9?uNy2%3OIk
z*>K7+H(GXlIUIO7p^}Pmn~G5>J8sLB$IJ$gV|I+}_;d{8FB1ML;V;4;kz9GyY^bz2
zR*fg5V@j+g;Vc#NJQee-*>PU3JYqKd0Rqw|i(`s0nFx}JAUW=Avg5qD@<_7bk0i%z
zJj%9eHi+<UBoX{Y1ivLa{xVk{O*T}b5OeWr#j3eX@jFr6B#PgY9XHKj5^sk{8^_;^
z+Q|TgIbjzS^E4H6m&I|~T=^ZIn#tJAdMRZ~s5B_TOQ5{p8ECNNvIA8!X~(B45opQ%
zlr&B@l-%!(7+}f$avh~<*bB`drGrwH(T_8*9#T;_M7S|^2HxwUc@10-lafdq2eonx
zYbqPc@YMo8vSAnugo6`t3?f@WJTOx5AUg(8lP4zdNlkt&J{^Oo#S;_K#$m09+)yH~
zKv1EGJpjS?a`Iuw0d~hx%n1a5gg8YE9|_}$X~&=#!=Px8Tw>yXc3MvU2{5gX6*KBm
zHiLL0iiL@eYeAxQA|}rZI$<h3uMyr^8I6HHxlIh3A7ZZxwmpi@j^pS>9K9PpUh1X~
zCPx+Uf)VW|Upfo=VNx*<z5v^%Bb^xPGUMh)*sHoMXs*T*79UIfkS}@4-7t*@EwMW>
zrcA#^-Rx0vnsMHJ)HjClt^rh2|BC*&!+aBU%1FG={60k8gHQ7+Vd%cR=X&Ap;g{Q3
zj#Lhzo4~Pd4p)~aw;_lYN*?}{`l&wPL@X2Sn+hwjojP>YFX7Y(bWX*7Jz{NpNy{YU
zLihwPRVMcRm_`y()>@<>n8q39gwi>Y=wbP+y0QoTm>973vbCqsVvx${r8|KqG3&^}
z_=NWj%a!NxsSZatosrVUTSYz97|~cXNbJAc8kJ(Wjfb1UQqLyle3^s%;Z~S_Z0(7<
zmrDI-<Udf0^f_ysq3&ZZ{!`g8h1_d=N@cNjEz+ShCiNMpa^)y+nj5N}-y|jcG$&l;
z_K!wXlp3o#5T2cmb=R&-Rq9d54Z>3%LZa~=&8_V-Z=xQlT1YT!p7wYKc&t%b#duiS
zvq#SKlmV0at$5)T1c{&)BJFIO>v&})tOBN#YV1dlvU(D&TxkqS$1DE+Bg>WE{sdQ7
zsFeUo#464GQ78RSofVxwYCBMVI%09`jo+Ir9`SLSLQJ{2bOzLvlgV$bpx1_enQ}A9
zX(w>sF)o+<vYK*oivgK)bIIX3Ao3Z6pV|1~8H5>U6i_ZxX(qWv)5Do~=B17p%;NVi
z{L1hzg7J*(C_&GKq}i!1yv~~A4x094S`bCJx@8}{&P<+n?BT&1FaG4Rr(Rhg%#Pd)
zFu_i1_hgQuxbUfmWN5?(as%=tLE;tDdb((0dihHL&AFN6S$CK-D<CmCn83MEA|g`3
z41oXB`FcKGUv0vZq56cQQuY~i)oMekicL=>YXV<O3AWyeJuVb|M){)|H<*b!o&>f4
zIF4ujg0E<$6OPv=23*X%L69vNu8Jn5?oaCbADW;Dr=#y+F~aL`CxpyO9kM9l^ye;X
zXyS$tw;^!@y_igST=@%ou8C?MN0ix<5%-{o4c|Ep=;a)^9Q2wecmPt(lkflp*E%8C
zbfSbxDW;#tR=8@tlatm5Q8sqc%6E5Rod@DQVT8dhvy;~Q*hy<PQ$;W6w=GF!?Wl5O
z5;9O7wZdm3hT^UTOx89XcPFr*Lr1kCNNH(fe0U?$hD97$gM?_NXsd${ny?8`-GiCy
z-!P9OgnbOP6<0$ZN5-O%j)O^#)0#`6?+{KU?~K)tjO`RdXN~6lBc-E?sslTRsH$7Z
zRa63&dL2#@OT`uTvbv6gN-ki{J7Xl+FPb6Btt^;`Nlp|9O@$Y+wy-vkyuMuoh4MAx
zxPAs1Em|yzKm)N?#m|3$`VJ#a=vsR{zgZihE0MC#-NwcfiIe@Qy6;!Nm(fhqD=i!q
ze+C(nvXN6vcN0IvXfL8E2-saNIh@3VDf~Eu%sT{1320QOm=0u@{jF`VeG|C}>WLSd
znC*fn<tB(oZi#9UGq6TN@XFQVm)4k6|Kk-(0*+VLvb}fkrRDX{Xa8U}s-f7ioPN9>
zl1?a{kR!ixMt0YQ!<VX|$D=*=8y)zXkF@MvumiBI<TOIONeQQ{Edc80Ka9VT^J%Xn
zT3Xr&D15cCB~nFV-a3I2Lq(SJWvmHLAtO<)awP@;_71{R8)_ZEOyup^WA{u-J)ss#
zo62nuV{w!#KjK$y_2tR{M3C)&=xt}+2as=UdKvz9o4*i$;mUR~NYPQvCzpx$U@04k
zyZ^IYSd4PzRZ6Ibn(CF8y$LxmaCWRiIUIYWqBc@$B)wQr5_OLbL8%w`$JVH*uNu!Y
z9@m_TrL1J6t#S1c67!U1-lpd%QrEk>0}|pm1ZqEVjDU1Bxj&0Yu3(T_93`~oQ^Y1;
z+L#dq{V+Rn3X#8TD8^GEC9PA(?+Gj+qmI{9ULw3rGCMMeLMmEI?#EkUZkZz@a<Cb1
z<<T=Eoy%GS!%6Z35#Q1S7(4I)20WBAIc_UaITv4nzfhdBf*W<OFLF!n_-K>&p&NSC
z=>r88A7@z6k(->)g(dY{-<dcW3P1aXq`vFvkq$hcmb3mfd~kbJzI_toE|xzzCHxg4
zG&yIzn=-_4k)?p^Vy#nhU!i2(-SSKZTo*{&aJx9iWPm5NQr8?Xwl>rnhKJQQGfnu~
zKx+uzB_Tk4HblyPAE^SM+@)+B-N5MCP6Tk7cUsEIM1XjF4JVh=pQH6GEM+CwW~3zS
zur)Wao2a5K$cU788SJ81U~zY*2UBdJroz@p!2M%NLaD7E(}@tGp1{-tfiDtQPRo@C
z5ah0Ba$FR?+2}<$Vx`}wMhMC}PvzM*&klEbaezotHr%m8a=A>S(D{0`G}h!&I}zyJ
zNn+5J`z0l#d<+u%W^%wr3t_fscz0Izj^n1)GW9OFsxAUcM&fWV#P1HlqJ6V3IMrg5
z(;A)BkJEvtK7d^AN08zkJ0(sbkUcsuulF<FO|&>B;k_~p@WlH%)URuP|Hb=X-tloY
zkB=Qc79HlaEAYl1y9M+%`3mKQWgd^=C;N?tsoy6`8(=B$90(w8{!$WhCKrLev83Po
zJ(PzSBhW~^ntUSZ99O9?hAa8b<e{&NwH2l%<Y>Md_45Ppz+P2fa(LR0JU8~Ybx>^)
z?gN3X8n&oH`5DKQ3|H*88{*EOm-~9eeUvp255M_JP^b|e1GSX&BRtfxulq>NQ~hfo
z@!fc=b>~p5wPkGL`3D-4HPJirQGMj2yHb7R-%TACSRY_(QAAsuO2*@)qV$Ohj;X|*
z=i3MoYdnAR^%^HFqX%-ZpCdUF`6Fh*vzW5Yizc@~OG-E>m@ZjjEA>l;>PgE!!3QrC
zDicw9I(G(Nny_Oj_A;^p#UkWB!r>rExzY<boHSIiu8D|lDqLBGxmKiWEGLRf1bmT<
z1|@}HogBw68_aa*!m$>r(7itYg;5v7P=0k`^aNl!k5jJffll)mGK?a2l&wsQ@uRw^
znh#i8=v+w=xd=<i78U9;K-Q3tMN%`Nk=K$<{Ly9pe2Cq<&xy{Y3LQ2L9tM&t^la)p
zyc{aSI7=UU{V5k_FP7Q!^5&vtM<L558Y4l>$SGKR+T2gUU8h9XTI7Z9IgEvI{xPJ6
zLp9~fNi=KzLV^)o*n_}nh1&^0RDEsRE$7aSHjSbNlbCm%EVe5#<9E0nP0a8ZY(dVU
zq3)*m46ub1QU$of0q7m2@S5c*mNtG{ayr6P_!UXz%+2tF%FRc`WNAMpOX<o*K<xP%
zFIg!M5rB$>Htxqz&{L|sjpLansp!|%sX_MJlTwf14}6buK%LTTny%{IT~#;Q`;~f#
z?>H{FDseY;H)O7YO59QII>eLBP~yh2a1F1aeyzzwPrux`?9_7!qXY@0BstEI0I>SJ
z*#p7TV;Le-=a5i$bIvq`pGkDrEu?)%Q~%pe*&rpsGxx^tG;w5}A%C7&l7>)zA1j1%
zfQ51bkSde|$^ZcTkO9u@DJH{3WicIom5R=iOfWk+ia#t91k_2&*+4>Z_f}<s`@mx`
zp`m&TEm4}L;LX`K%pagAf_j2CTTqD->b?w+3EK>IHoTiw%CFsmotHKoF9e%-&kEN`
zN`47VF@@t|HTeejdjo2xu<&Hk#Y0de$C|#Kp$I|?V4^VXxkStN_5&W}0{Fv%eY#l0
zI0Z->2fc^0xT+Xn7l83#NOhWu?ZHiK{IN+4W4A|Wg5-VFMhOA6;}Z7*G<?*Cfj+)8
zUuj<dusnr4Vaij`GS00x&|ESg#eRLZv~UfIUr2Q&ZM>e+uF90RyKRZBv$XLTHL6Bn
z3zv-0`RpbS<^+X9>lwEmX2jJH3XP2=EZlL}S+q?by$2C6#&?%vu%eOds7V4EJc;OD
z+rLDkSXqk#4=tW<>RtrSz{iocB_Ivk77DgY&NOwmq_o4fQPadB9CuwX6NDF7-9g;B
znhMteK_!{^2<g?vBbnH)t@5C;Zly+B@>@jsQJ$ZbD<)9jAR%6kCHi<kJlIg)d{}F@
z<&G+oXP5E|&Pz*0zqd{cHra1ZN`<?po0Dvj9D=<suB}>w0v-=|{h`(xI|}=QHb_q)
zM-Pd=05+8r$4PYCR70r`skQSbjtb@Nj4{|^rHx0~pD-jXZRCo9pt)jrg4h&w;<}8|
zVGpn&(LTtkzLAJY)<+Wau0RrEeLpedH$!5^ZG)}O5a-i)*PyAp1Hb@VxM>U4`B<in
zP4E{Em<|n)XoF2#xZSgCl`x1$+IZNM`Hd=AQ^~KYNi>CjM{_e}v}peH-b1=_5|FC*
z70NvT#EToSh(ip2C^<ML$`+7hi}rtn{@Ut_APktdlXRKi1}P;MLQT$wt&v4i-fkrT
zg{&=g9G~(I#UOmPe>K}Jp5~M`o)lW*z_#4wc#qN#JUI?;CiTG5D7WSeG8k<T?rqBl
zlm=9cNuVLrx7iehzGjT_HsmyJ$Ujg+hH9K{ofcBMNK*|AIeo3RmMzKHL~D##?W9#e
z>rgS?+0IMD<l7<OxuESdFhGk_x?YF*%erO_+e9ZP@IJ3Qbd#r&%vlNbfNG;$qDsa;
z(>v;*Z_tRG?NvR~+u$ezoJ$m!(YABLZBbAx=lno-{q0zq&^hP8WAS#{pv9MIot_w)
zcY~CHX16dn$}3eEQ_n7X2PD*_vH)ViQbwPwa`phoz3BK0%0!}X;tfzn0rc$7yhSs`
zIe}TlwzDD^N~@ukk<tZZXqBeSn;PK~wvDy=LT-cF`)AzPgly5!sIXX|?~Q$aQP{eh
z$+Ed4Hd9I6L7S<V%otcu-hkM-5OlIpWJQB;*8+t9Qy=S-ZTz*Qyfat=N4CyqqPRl0
zQiYQ9=gBaAXqwb&Mo_W%9V7(M=!XJJP;BAxTImhp6d5VrI?Qb<lmKL|qFVb>iJ(;2
zMK*3sDglV2`a(aBIgL<XtQFc3?wyiv{@-Os)0ik0U`<_pG|5j{P0mC=ZN=V1FM6G~
zsyDr(T-C?cmDJ^#N=<(uZB>79V!NjPeuI*!OlghgAN7}yc8F6PIP8EGQRf^X<835k
z1PSNp^s3!FJXjhtYX}~P4J4H^Jp@r9B+d6CT~`F*Fs|0|wgSwy%f!#oQLJzZ!dR3w
zd>@Vy3iVgWp%1r8^jR0gvnA*840dAH1slIZSDwKKEOb^QS5LWe&0DoNAITk{`ttP7
zZ-ylNFegm(N+0-|a*c6bP2H|F4}??x9<&hQoQ2aB>v;pCK2Dx0Mr0$BeF1rETPh@)
z=Zj{GBEe+8u5=iVGFnO1w72>iA_)DaCYeAYA(QEo%;g9DB(p9<%j>F7FxTi(ane=8
zEf_H&mIJl5j~doLt&OXFChXdqyrS-?_AVI7&a}G9D720u>a_60o$P$Dr-@#Yz<Bnl
z8+rO6IWGpA4d0k@49SKc%yHk@&ZFZk9UPHUIyf>19q?}Fw5~b9cnx-!8PB8RQS3hp
zv9pBj(Z^$=rH${?OLcg1HU`}_wM)DW89M;z6g+0xS*fBv4Ex81?^Sjxl=TZ}>FRx2
zIm2`7CP(1+B}(gS2Tg5vnfmXxMbI-ghw&i8RivRl1Ye=dL!4yCk8roX39DH!neWpg
z6dv)$v#Noz;SI5()fO+ieuQXJQQJmoow1N}qY%^?7>?%#NE;VZ6chr_xgMj{tUdIc
zD+jvgIfg}GpB4w0_sb<eM_Zhu^mR=M7oKZo$_p6mj0jCOe20M+o+O5pq>UvI!EajX
zf}#H{3lYuMa)@CU%3(5`ch@0d+i!$f>kNS-o`oG@cIe|($gt)XEjsQg&}n+3SajUA
z`be6lRYRF+;oSOAJjU!53i+Nv_Y&gSiIvyX3;1L0L*b3ik@=`lM*kvyZM@z9`TmM(
z^4sVnKOuMo<93hKFN#`FT_eu^ku<NJWQDWC(xUTf;HxA2?Gdc6s-vo(`x#7jLeV3=
zwRn`9>PhDwpti57xCL{u$S`jzc7hkc5@N~tW8m#o&C;=l(Q1ASc8%v_(H$;N-b1*<
zPV0u0!(*6+lq<$?q;-kDiZBLq|7NdhpZ+~<{$ll};{ra6X`}4+6G;U|aBhy)5r-J*
z2y^H3&uP5`8zu4cSF5Z2edoVLD<|=^<j)I19kJwZTSN(rtA}U{=}W-?+hv1*2w03o
zR2Me;7<d3(qw6sMesdx@H$A4QX|x#6@-eCt${>hCy}XWlBjrjDz;vXM9;6|-EyMH`
z1;epjmw~Jsau=nfrF)IX)dx7!l<YmWU-{0H@(6I=wFZj({rv=YgABwmv2uo^j{|N(
z_{|L8d>b$?LVU__XN~@Ch94uC@eYP*Kqk_Ak>T-|y!h!1`&LvQ1FS7NJiy4VPypJ7
zDOc`gm<G?{XjxZ=^Lhj3gL<tPKKLYHKJ{3aVS0Z{9C^Gwj0$%*ax362>mtMRVCTfC
zwx1Y|jsqM_`5j<5gy?zsX`8@<0r4=>=YT~I@DA4KO@-gUK*oP71{>wdOB!}QuuPW{
zPG?by6&s<h@qt>$ZRJUdyp^_2Q%u>rZQZmvZqW;H0Pmq&^K<$#G0vm)05OqSPpFty
z>bYEmZ=y5*==?Y7(4*qzmPF~bQWGz`2zlK$6PGj=6YxcbeU<$a!^^bFKEUt|t+KZ<
z?5ph08OEVNwX)x1*jL$08BWwHdp^Uy%6<m0R@oC6`HWWC4*^ztv-Frmzlpl(3H7}(
z9!H6`!s|~a%^}PQr2(fl3&upKj)CFKhJbmw>xxXGC?^>AY|E8j7;cPn*>s_>Tsh3J
z1@aV2dOI0zo(Y(n-<J%hjR)MA=vOh^mqfws<Q0bF+5+ZwU}v}+%z!v_oW}6exRNW5
zT~7ooIDLqeb_=y%_%Jbr??URVGbT_#XQ&}SXW~EwHP~hKY0Hwie%eB0(3U`z%;wV;
zKGl653V0`N5iAJ3_bgx*c<5ZN?6}XbuD%9v=eqH}1?N{cY{z_RcS4zi*#0)=X@-3^
z<`IT{Hs(HteQMW-;rlhU>%g#2?V2#`voRrnH8s0FlrpDbji|_Tfc@?0NrtIP%b+qf
z>}cE^wHYh<tefS2c2ok+RM@o+iHst@!rAytm7U?d9>BAyO4G6tdSBCYjMlJ&ky8!R
z(VtM7>4+h<zLV)#@SLAA(7}BuLnSomPNw4&!tbOEzB(&cb`GgoXJ0bxGZm{C_L+)T
z81~hfonfD;NMqPnXA>FrnTnBswK^Nh$Y(U+_6B@s^@C~n$2D4>ary4rpHTitLYw2(
z{3C13H{qzA)>u7)xKiwATPp{MfU9#02-r}dDV|O-*?%=EA9I{th=VYNmqFR8!u%`B
zs}z$B%R(me`YS3|UI4~a*q@p=8=7ehUw<4h?;SkK@Bj@zjNxW(FTOv+_iFe~4F62}
z%<-EsoT%Z$7_NWAi@!dY@*kw(&oO+O%r3`2$*?X0aBEWJeGEra`YeeehG~E&`2U1q
z@7=<3<t@NeacpIs0L0getpBaiL3;ful|zhWQOY!pWDJq;p;?fa!s(H8HheNDpz)L-
z3||jWZ6fQ4xsR=<)>SS`)AaozCN&v6O0XZT^*gn{>|rYO)yDZjB#ll;PL$>cz(NlD
zpkpcaDp~ZQK6w-o1xsQrYh@J`Np&_=uDrwPdEGgbD@%x)RqO?(K26l>ed=;-4eeH@
zaSWk)B=1MH^kt4w;h%oWknmkfU!q{$x|=D;0YpK4b<_ch-AZFllT=gGVXzkCFKC0-
zto|^GW|XKd*<-a&bhG09slU%1{Q6ookrT=%NW@fFAA<_P(_0Mt`uIGCuWKFg3k+vy
z9q}}V_pbBCf0W^F)X{SL7{;)L^pW+mKf?_d0%o~(VtB>`z}yixW0+RuMMoUQ@B>;$
zd_9r)T}ZOw+dt<R?(hO&zW;O*u&CcM=-r(<;zCgPI^qvORjVU5JgezqUrq|P_eGVg
zc1JuB;dipVf`uW(LSfC0xF53Ds<1P2UmvA~?wGJe+Z+LRHjTB`Z$(}5zLn3;pHRLZ
zNIAA6@$og0a)!NroG|_etmXbW0M&Iuxe|#}sJ;<cxw4#NPQjd946ZX7Hd0f=He0#!
zEa2^;gG{2Au*;PvnPMD`!MKlnkl}Tc0P}EupuoRLi@UsC(v<_~g&;AWZ^dvABj6xP
zur9;C@%!z2iAB0yFUIc|0b@y;@807)k$^gif`2QZF=F_(OF*3kZUZ132W^UUc(C_T
z4eScW`i3t#gmvr@P4PtlV#+X;6|)SD*EeN&Lc`wASh9134KJqR3?!`9^>-wSZR)I{
z)Nj_1^^BkTsa^j~s0FmNwDzpwSA^e5{d_8canL<fTAxZ3GE4{kMCsQu>}&BW7@m^t
zt%V$heY1|a4Eu%#Qy4BMmE)oE7>0eb5}Dy;nzZ}Y!pAb~8+tSatf^=?fIGK`aW(fd
z?qu5z44{&?NCaoxoo!>7$Bq$HA)f;lR_Ptmv@KK_*zxxpv@hWpSUpfJaXQ7|*L<fT
z27h6{J(2sl@k}dP1f@P4uuzqIS&wTD5qoIZXvWr5m4<}XRE6}OY?PmpJUQd<N^(pk
ztF0v45q@VS@fB=Ug12DHL9M<zTSx7blx$$NDw#{9Y|B%al>HpyoCGb=qyGaI<8zWE
z%Xk>zJ6E8#7vVS8;CY~$(+Q<6r{(LLZuh6Oy`Fl@m5U7fH1{WleSOsdhJAh2HimtD
z)#nWR`l|OB_Vrau8TR#6^BMN_RnIW&>#N2w?CYx@VA$7J-OI4Auj&d|bQCS94cuYU
z7y$}jUv&*yQLC?dWSXBI(69!5RfS4cyRX`a@H^>&VBt+*Yxh;oetz|y0RSTfv;|~C
zebp=k{BzZM*Tb~Ecr1q*%?_6t_wpRqvDbL5L~m_saR#lck7S&YhwxK$A5vGIhN-x=
zQy|>}`4u5$LJk8`woi(Q)yao&`3TSc(s3p1J<5(_wD2FTe1#@RY$f`gWWZV~`;oU`
zg}SLF*Af#AZelG?ON^}0mL*mgWBu$&EuJr%9hg&q=M!F@Z`Na;TM}C*iLEcOQRc_i
zez1jL2#VRVf~}VS#MYg7vi_YXb<YVRtTxl>2aT6Yf|up^DWc=xN(b;_ao_@4Y0*lR
z39QgZQ#(<%a{vp+%1^)xxeST_7I)C*cfeh@w6?N6JtkJ4lvBqVX2!h%oFB<C>1Bf@
zCf4lPk(_Wa9S3krv^5-mSw)-SY2HB_x21Yqj#RQew#KO8l%{Z2^GG*T@(g?_i*Xy9
z3}dP6*(q0EMR3c8q)C??JMscUa}09!HJf_4k52r_4nBcm^sY0jYvEeH>KTvmnqana
zsqrEp<^62~<URUsWO5o`N;vYyozc5fN%Mj!TW91RAd2>obS}_sm2A(Z3;-5~Tb7bs
z0G*~a_^PrvV_pPn&)=Px<+8PrD}RbFHYfa$)=>5omm0d1;*c7g><7>z*Xh5@o{Gdg
zl;LRG5*bQnymmafc`=^F3O3t|!xTCLg5t{9dNW!aKUw0ACtlkfZEc5(d!|ho{oqLN
zcTgP*hE-a{J<4&8%Y~nQBL0~j<>ty?<U{9VXW$4quFM+F$C2c?64`-69Ld?=Tc5U{
z4Yf$y>cXHBr_E5CW>0ZaPB_&mF>401IfFgv@b!B@&c0ynD&s7$z1m=FFFOb6<M)~q
zcBVBGksEL^JLlYw^?tRKitO28PB@(U4r&Or*bfSj6Lye5N=or!B-*8HFNQ#>ArOo6
z@tE=ExF5}q>9J-<no&OFMl7@AF{sQhw8^2~2jaFl`r${YQu)$p=J{yov>8VTB9k4W
zA)d52eohOMaYDW;w%Oes=_@22jzqEAM-M?#)qXD;#d&HJv?i(4$BYG4A||M~oEVd6
z$z2^oTl&|IH{Tn7t@4EIDVKA<iphceP0j&0G<`tM-4as>P?o+pWj6dE<6IVwJiil@
zfv~h*$};Q&pbm8ba&|FiS}HP~Lz(7MrtdbO9YJb%II@kAqB~A`3wsJ?!ycyJCg|@Y
z`sGAF6ZFZBJ>K)(+lJ~bxv$0?M|?|eR?I>C(k1JOWhQAuupC}yZnsa)T@ten;qZ79
zNjkeFCI<;w5`K~FQ3$}U9?pv=_V8HREQu*2KAcbJhxGV9^K4=pO7ydsVg#a?FX2aa
zT%ppf#Ai~@XEAH}_nny8lpwNMK_vESyx9;O%3qOE)_M#J5!T*XUv|F3j6g^i!d!O|
zh2zzj48%<~T(Ur}bMa}CP^5n<0@CRsE#8V;q^vI}FW8>!y?Emm5oNm)EoCv2b|uW(
zOpe=Wm1I06kUfF1`$OF;Wc&UA_sdjC;i-LyjXKG&KlLn*PO^Om>P>LtmXaOa%=SH@
z7L=N0r3%4C{Q$?19X)EsFgyDA#~>|P2?kwl*-GyZblpWC;cgcy5?x7kS1IdLDu5kc
zZQDzWwu$e4&&43bVhzLJ8B#Wh7c57)exR1kTn7Timg-(VX&X~}fxO?G4!F&lOOkY2
zOb72QM&y=u*c&xD?vhBek&uMLMVMmb>6(H3%#O<huO#?!k^hBoeqk69vAd|2&|7a{
zVUn~s45G$6A5dq&Py_Bu;2pw>y~^s5PzJ7w>M^+MC}<`~Ss#k9iBfg|zF54{M%V<u
z3c-=jjUhGVn-y~!oRLcLFRN4n2CM%EsuX66kew|<C0v})BPPCe_(tixWpbSh<OG2^
zQx_u}QcW-Je^60UdPH=8E!$mBOIfc`uWonMfdeWosSB4EZW8Zt<-(l+KCDe3pFk<=
zb)rz4iK~NG+bj+!gr7K|pOU{clIdw%Fj)soy1F83G=6g+WL9s8w83NmWD3HUIRHbO
zM2u|u=8lRnCIN_r*-xUOj>Q@ILnL&}xg<sbYbNLLyOm>DjCCC(=1I7!+Bd7oh}qHF
zpAk9xdoUsuT@3>_?I=M~S`+W@N((!Iv-oSSb|h44c5>}vnQIn{1VP-Oi9g>(E`&7b
z-vYX&C@yNYJBU8WV@@cZW0ajiaRJEB@%X`5cRdI*Xif`+HQ}%pWw=Txl1ex(Wj92b
zP;gl-xF-TtivoKKulxkd<T}OrdG-XgKWcL%1i0GTZ~r;U)>^PXv8FJ(nkTX_+%5kr
zS)o4<#L1UEMbRjtG-L<h0BJ*&b5J-RftH3;IkMQm0uhQw3RMdXO4xa_3^*t=w*yX}
z)S)eX*?#sE4Xd)hf4)oN#xCGEK(72=jpJ^HDG_3niiq3;h7f509s3Yfj#Cp#GEU@J
z;G94emL;ytYb&T?F`qjiqYrHUt)<;QFT$)1HikLhiJ;mtJBrPfKdXZdGkhV$9VEkA
z29z~Q9e?1eeHMpgY~iBltdQAWYg4n+47*b-b9{?I%SC8VVwT5RH`!2TrrtvBY)~r^
ztPDf)jwfa*@YseHWWq-_U&Dd=)sgIMbx0F&5Cmwm<EraD{Qg(fBvjhja&j2j7LDVR
z9C5Pq#Xt=Dc<}gI9U8dO;4uyQuF$%$w6PB;g1r=J8pT6I@flHUxWBHnVPqsuR}aQX
z{0;Yq<3qy7$T0kQtPcJQl{OAU3!M!mor2~%o|@|zYOBMO0Ln=?W|N5j`a+R$l)xx$
zyoNS>5Lx-FGESkzCh?3X3`-iaLv%{sc9oQ;_S_C3Od(~L9fkZqvZ8g+*modjw;3N>
z@!@Ae-Mx?$f<GkA{#*NL+lGk=nU1iu$n9u{I@4Aj8r8usAeun{8IcwwSDteBL2n4<
zwIm!!4PkSW+EUs!NF72*8v<w$l)c}I(>id#aLj$ot2!2pJ!s@+PPlBA23_{{XXMrb
z@>mH>=5Km30_f;yd?RPx)&aDQv!GoT18pHs9>r$qiyg8)i^qhNePrrAJgNafa`vy*
zzNSsl_%u7dv7p+bl?{JV6BF|Ga^TGmt}5ty0tO+7F(m7IDeFnfe`1z8^jgB1ptX-P
z8}@NtG_=bBajJ##x(|YowjGqgAEl7wH0dn~r_*9hISpelC$pjf@1SA5DJLlgtFMB}
zY$!`MoG~YqrQ@ikNR0}(5(!uwKf)P_w~U4|6YfYylRyNStqo<0y=IkR=lz&?s>Q6h
zOvOB%gcNB+1|=Pmwbxs2oO{$;q#?!dc_P^ZAzGgxL{g-vR4f{+lHEuGycWOGw!wO{
z;ZM=^N*fG3zTJ;$jBO~fV)B+L{#z<{CsR&DjM;u&PX*^WYK?+pW`cstz^5PbmVv!&
z$%a!FL&*>v8XjaZRGaO%JJF8<;yqwEtq&NW9Pg$a+r$@J63(PGGnEF$bhacMvIY&w
zNr!9=C6shRN&3%J#)a6Cfi%SU);s<twW2aoSy{bMR#Hc(8Ec&?0xA1$(mlwrn2>Qo
zGpRh%7kgwhEj1aiBxPd<5Ts)A0rrF+OS%v0ygwRE1hqp;pm-Ph64#E4?xg|ktM~u8
zzB^KpV<<7Lo`3&?QW6cxm&|F)M77?tFgW+z!e9~#tEvri>P8rIcm^NdYBNjQ4#n>s
z;v7tBE7|t|^<S!Ph3hR&M--j(_aGNdOpN|pV<u()&aLw^p7W{BeW*#NMT)hE%1YNq
zNEeLr-0Up_jhG@o#ZM8fC@F_9iZnZRp&8Pld(3m2V3KQ2@K^(BrVEEZvSE)op(6cP
z``JWmCo^t5&7#WnpC2v?<TM|lG`CWk^Jrw6eZkhA$TJY)of&>6D7z5l4x$_hN_f=)
z1M-`4C8YXJ%y>#Za~DmI#a&BGqQ_wa-QxHmITt!%Ki}7EpLj`Ub`Fj;=MGksx1kwW
zMCnU=?C4!ECGwtQrt^ffyd@_b;C|1B?41wyLiru|QjTI!=UtHdP;i!ppCTOG(kYvO
zq_cvV0BF4{u0lRkEhm)Cp=tO#f_ey1ClED1bO-8@Onpp_J1if%E+-sh>h}b76QUkK
z)K75QJKf<ax#42jVGmAqN-1FTLP~Bt281z2|EmO|TzpV~4?@cc6<nF`iiEe3IH{7A
zK)({L5XcV*`5!|54uQ*#J#LJ<u+rfvPU)9m`%C17gNVNOC~KcHzQF5pBu7iaZd+h{
zu{&Lv4(lLv06`>?5hAyE%FT$XQ=aGC;2+zc(g;dfP}U*J?nL<@DBX=y5<+Zu$@bg&
z=NfoLg4G+m{D@<^wlkPYNgKoC%H)Y?`8C|Gc$d%oWW;Y)Rx5jG0_cpmk4A~Va8twk
z7#!xews8_{Kp$Sjn7fD+TPdOL3oBHdOD(y0^-5@!lHyGadWPH4BnE0%NUk#_cZ`xt
z<>V@q{$5%y<(q;sfGCd>r3}iHetm4H{+;f=P(AQXLTQAX*H#SYX?3auY65}it?rb5
z-L36X`o+UhjPuce6bC{}ZTslha!uVq_vv=4KH;b(sOv}*X^!EH%+e$GA}Ecr4=ltN
z_cd6<Y4y@moROfjT_xE*rmY{d{;5U(lxo#ptmi^s6p8hr#DdYF6>{W3Z717H6$8=G
zH3ei@kElY3>Jd=6!}^C{_C;Cl$ur<G$R%l8xU>zE78FBN_dnEurj*H8r6Q%Ar8M?t
zM>R24WcQ&C*{!AQ6mFV$UxsReSnmR=k%B6ns6HmD9iVbI08@=v7bU?OG?BUc9jt*t
ze?9cwUBFl=%D3n}@)0@nd@R@gNt|k?#XMTKeE}IdN8STL<lu|#Md2WwE<?_)vJS9d
zUNfAcIB9z8*vYTGDgzZT><B8v)D|mp*2c1Z?r<HJi5!W;WhcgGSQqsS4~5C3+@2Km
zm3h7|0OBSVK6+#t#v$`$E-lt=i)d7+JSq}?@*fh03F3tJWW|gDIsKzvkG_eIE69;D
zVf}#p_Vb(IyL*c{ohR8j9up)i?PKAXt#Mol`pV}>8b3f8oTK|e8qG)=I5*;v<Nkn0
zw&$n{?`3u)J)|-Hkh{{J@Ci4py`G~p6>{8-yg(^O&x^Yk^|n9VErCpHijE9zXdhN6
zWY0b<V(9Y%`{e}KuzX+ha)saeJKZAVzC+b<QDb{;%~5UE#?FVjgPTiWgY=geeTQ@i
zMxye#oN%0Z?IC!*LcHQM9qgY<g7xYM^r&c3vfZsGgL^02!ugu*WyoO=Qa*`sI+O;h
z1e|!JNSx#$I;R%@W#YB>6zJ$SR|OX^VIQwA(}8rd3n(WvFepl7)*U~}S7bIZaHP5#
zj{u>$jS2N8p-{WD#EzPc+ao7j;yMjQTXK#b2vJ>xFqCJBF3v3{T;-xn0~V;mB&UHS
zr-wL;Yu5UChQ4eH_E3|vqdqT68$zTF;k@#H2a``bU1$~`2Sd-DSR<kiTjv>`C_5}M
zi5UAN?2si392;WgpEtq8IexN%jzdhVVC@>ED~8FVTYhB<d5jh&&!-E#^K+7H3~A)!
z*KZT|jUa%cUettMxrrz>6u|@>NdBY(_9l|qOmbLciBor+WdlgnS{F^6_R)~_W+tLi
zvbj^swjUPBGh7Cb&v(X)VfS9Xje%?NCX_Qnao)fv7X2>5ke!{f>qa9gJ*7k?_LWz)
z`ELl$h7<F468%vmkvEtxI>2iDjs9stA5HY6Bg#jhr+$dl;i2l=PzPE==yvP2N67<D
z+SpvS-v~@2NevQ_e<8kBQsk)=8Rg|J<!^c203DM0ipXh3q4a0+awUZXW>BNm<gqKV
z*(u_sQ@o=TF97in{wV^SBWEJX3HVaZUxz=YgavdZh4c5-FI_Uhu&$h|*CtZyN~v9@
z)V@MI>d3OdMgN`Fy7avoZEt|b7VxFs?;1WvPrfu&GbftVSa8!GjugO3@J$G60+Mtz
z&-?``qScA@m>}StkBkM$FE>DPFOh_hvC}1BQyE&JGA_nw|72@<6B=fg_K|3HRgw##
zfAlZIbq;@F%cQJh_<%M`SqJcu7m$UoT||){gFXc(*J#3}bVt_ci|<Ee8{DRNk2`EY
z0@nA@MF+M<_@CIp6I*%8(^U`<8b|P;zJVREe_=R9{iM}8Ai-7#?U*~wD|rU@8?vJn
zsr+O3u9;v$%>)~Z1g&>_lWLMz2Cg#Tum%b4$P3HbYx@&XHp}+XDEG&*V<^V^Lojr4
zhsnH9M}<)bK{d@iDxNP3*S3k;mK<Nx#@#Gevg0&M@iOK;Qr1}vQ<CX}T-+ol?2)n#
z<HMYAj0B7pNB=Thdl8m0q+dTN>uY@F1-Qp0^-YhNjoz9>dO-OJw#C$ckL@9r=|HnX
z2o<9(5-MRXvs90wV^iu?V)mJ^2Rqp$Pav(YL7=Dr2$V?w6hH5}UPMKi9X(@^oH?P=
zHdl5&62O<{=`tB|J<j@j9BJ8XG7TUEvn{9qjz73s!NKmlz&MoybkWT2GOVf+2S(ZO
zqu`*?oj53>S|Cq_j#g%P$I5Ukav?S(MJ^lgV|Fx*fvBtvsc<Ey10g?hvsR|;qauRC
zr*LmD8NR{}$j;$<C5!kqc;wu`8^kl;Zn=ao*FY2$;+?0nMw-#vVE;8Gsb62)HJV_a
z!UQ<kv73?@r3+9JDUIBu8=;f}Onbx)B_BcVFD<$0H!wg;ztPm}z#>aRg*8Zd1sHQ~
zix{Cl-sVF3Gn|GCV`vsOo@|CT6{X?MKmHR%|M%~|68KjF|4QIr3H&R8e<kp*1pbx4
zzY_RY0{=?jUkUsxfqy0NuLS;;z`qjs2MOTB<7%LWuNt#z?W)36Wvh;_QdU*13SHfF
zb?oZCtL4>WR!><ycXiI{6|2{-E?ix<`uJ)*zPCDbP1KsEYogc0t}(9ZyC!jsyk`8G
zDQhy;<g9sVjV?blKPtazesq3pzA?XVeqz3yKRka-{`mYU`Lpxq=4a&R<iC`^B7bH6
z+Wd9-h55z#W%&p5kLRDxSMo3ASLN$I5B)sq^QNCie;)g}@$-M++Z)^#9{~Y6<H9zV
zgX?r!BrmFr)Q1GDT-fFef_@6n>$^+F$lyBT7s>j`hQI(EVKzP<92OU>57aO06QB=V
z`GC=4Y~mLp8S5DIx|M++24v`r-D|}Sj6U;pyN<fnl@GceO<elPff*m{{Q2tTHD7dJ
zdZb}slc1~@*REU`KESvzD8{%jFk+=4Kpzm$ARa7+r3||A*ZUj$yspDas4k3>RhiX?
zgQd*O?%~Ed!G_U+!3_dNkL=#SSdW0v24Rm(NSiYCnWwF@p6MQCtV@9*4MIjto-}jT
zGn2ZvGPa<Qum+8ir%p_rl{PEI8a;Sc>g-vm6RcAaBhJ{7@P-C$?}(2cJ!Ggkdax<F
zhp~HiW2+{S-Q$h@di3nxr&mv7{G$MScJHBq#?06LukaXY3@0AL8w4glIDABRqp_=C
zxr2}8N2WeAY1W)H!ERFO)aNFrMh~|=HDhYpl*y^ah5EMs;zSJ_7V0Hvggz`_p<b_h
z=lHdU2EO=$WBiUT(On;1f8V74{3)I4k$T@f<;^}>`%*xrt7S^p&XWe)wk~cozkQp>
za)zuqRJnZT$;De*Uq82UZ}8XI+iw|+d)%pG=6z5;M#|k|9yjs6;IJJ*+wOj~)w(Qu
z(@D?InSR%0_sTwv12$hPi<-6U{2z0#CRJXYS~p|Zjj6>=TKu(g=Ejij{hm8JwZ)>R
zEB~{9U&g+tF1_zwHu{tJdlTOO{<nUE_l=Dh6VT{^tDiI&=DCo&<H#c|QUeALdN6cK
z_RBB4I%DbPKNb{kDV%xY{zel`?qwD08w700Z8QD&oO=onese_k(hc)xd(2;(-yTuX
z@~;gIhduk#*~tFq`b59wF8$A2uU7;GK%Mog7V76gBF`IJL%J>72R1b}4h}^t2nq@@
z7&Pr49-ue2B!aqujRPB=`{|ycuV!?f*7J#u6^`avi{48;c*yt=q3Z<>Gs>%n8k4%$
zs=at)cdEUh2A$%&_wL>=&e*+2uU;uVdw1#6Go@FTo+%T1c6n-IpYB~I_nb7LU!VBi
zPfeaYS+LZOSjuSFAb<PdI$IacerL&%2fIIWr0t5l=HD4dQl6~?Ek@+Ja_GvWMT4eT
zt+V@g>o#Z3oUSvyn%{NeteM?rPoFw#c3QWIsWZAkf6x}7;)6}3-%rw?F2>$ndi3cE
zv~j$*{Ca)hDB}p@a4&2OSd{d?raw8=n)W~EU^PY%+YR)3Phfyi=dYq@@la8{u2YAj
zTf6lv&3iNVeD);sZFA53$AcT4A9GjA;5UQ%^jSOo*BQ(2e|7GGe!Y5b9D8xMdzSvO
z+0(NJwv0R5+LiHQlck@$C%rc2=$aD^b}zBMT%I2_ZFAadgQn<LckA7E&~M?DT>?|4
zEPCSW;|Dsw)Z+EDz~rD$H(HuBD_K!o-DmoyrsMXENcj5RnVstm9pu@*E&7kr9gnn#
z4sP_$M(NL8v933+9k6eIB>%1ZcFj9~V1=<_QL{#qo-MswxAN}rq%-fW{q2_liRpo}
z`fM9E^oK9{7B?+;@b$Od&(2)>+<`6kw7jdq14sXC{7u(hbLFqz%zWK_tjF|y_xAs(
z`P!u`CUkoEt)U<MHRj>J&YW7==?UY);3(rlLzS?TVG}|R)6Sqy7g$SJ#?0maS4>ZW
zu^(xxp+OIyt?@IT(W9nJO`Q}yd_t=A`RL>csnaK0XU~{0adPyCS+lHcF1s6h_vq7u
zjASpE%O1T27*F8;6DIwCGmUFPXIS<OsWa{Vh}Ff57X;fP2J1&nI^B3d$c2~Zg%_l4
zj|eLrHe|xe-Hp4ve)wwK${We%w@n!@4cIj5)^A%5y}N65)4T<yyvN7dr}Wso<i5QZ
zpWV{t!MF0#JxK$d%X$>tEq`wN`r=+ot6_J||8?P8E$7Zjj##(#nsm7F;VswW);!er
ziK{n?zMmWLz2|&b^Vg5q3-4;++EDyr;)_4Gj_t7b`X3LEYw_FsSLYXBN-B81-`SG|
zPdSpe_nm!aN=(DO@vB4o92qlp+~M>KC4nPDe}7<Ir^ORPC(N4IXzaOyxaW^WOn5r)
zv0LNv7cVGU^z?(zj;Y@^ux;A|jz2~{t2;2f*O=#C3%xjP{fGJ^Ueov-Ok=9CesCRi
zT+m1#D9om@oi8kaY+_Z(^o<MVj2w2QeV>*Od~o-RQuOQ$Ka+V!^L3Y&M#F%>h*n{`
zkvg01DcxY5iMzg*QeYqk3X6=AW-o$_2AGW+hH*&Bh`~S4A5(Ap(FfjZH##(-f7@wm
zF_K}!INCVU_|VD+S0*pIUo~7XaDO+9Y!zpx&YEPKs2MM)IP@FJ4V@+nY3zdk8+-l#
zvyj~;`kBXn&cRx%nHv`3YFn?+K_25b2P&V7$d8&brdP+IJ)Y~3{zrXNhe6GUeKIq%
zuRONF=qs)<JwIw3zVMSL@)w@Wu$zLHebw?$!=@|Eo@jn~_)FDaj?Nks+ah{v!RHS(
z++F<H8?Uu#@zVFw%{lMAmbN@+-`1@oHU$ljJoU(XD<@otJUg@fiA1SMV%dRJ!*(Qp
z@mBqop`(^<-Lqv=+&$*F);(@cYcuu1x69@a>Upzwa1+O}=)~eL-)e8`uz#;%)wL%M
z{oZ@j3!8?2eYpOiknNkTr+#R)EaS+9rhj#7*m!!kpHh~rYj<`}*6|DHO5zvhKYV}F
zE|;gg7P7zMQtGA8H~+XOdqw9qmiV|!(y&WY7JvQn=pMEYrY)Q{U{(8it1sjq3;ewN
zc;eWVS%+S;Jhi-SGi%Ew_uN-E>7!rQz1_3d`s*7;uI-$8es$2ZW$zXiDb15oe!Xv0
z-K7sN`11Y6D+(4JoO16=?Y{0dZrSi`XQ^}Hlco>;>Kb|a&2MMee%&zj>o$w7ha9?g
zCi&3G{LXVmwrby_&z>10QeRuN?sBgQ)9$)jkdQh2;g5QBx&2{o^`J!^nvVWp;l4-T
zt}?C|)$pVHUT@#6?CxJpuQq!;VBp!;f60Dqz`X-E-`6;G^qKZ;*PnRtcSCTeRh6w?
z8oE;#dGxN_U+VVi@RZ@%Mj!ogu*1rgWBZJ+>icTp>AAD3iY$v3zk2QT=K(`5PTsL$
z)%>ZAZ6Pneef6U)W9?(QFKirZT-Z1UBX?uwoBuCZ(SIDk`^_m<F4WgEqMfT_`Z|X0
z5!#>%lMD>geN&F`?sYLV@WG9Y-Fy)PySELDz9w(#G;U1C^P?MG&h7l?$p_lKv+WaW
zO30D@55L(W?x!gq8Z%e>#gFKo`I<5F<(1<y9@kCLS@FNwy8gOu_}?7<Usv5s-BjH~
zU8-)DE)D;sfTAnlSqLYZDY{93y5V=CZU%lQ=_Z3_0&LU_rksgbvvqSnFlKc9$6?W&
zDU&94n=)}mw@H&zCfH_JyUt9TJ=ec^V^kivP_JveD!Jt2DXmWL%XwLOL;q&jx8F5i
z{Os=U9=`9r_CHSEZyt8GbK~_-_V{A{jb*1jBa_~&?DXaG*0-)y_I%~b)T&*d441}z
z(W!0jusX>nL++ci`p0KNmjB1;sxI7+6x_VylWoV$_+Y`Nzz>(+sJ6@Bg-1ANb^WXQ
z*?ocam%qB=yLX;>E%L)D8E>pMTdrJsVEx!aV~@;`2RHp_%31MidcyZ%_uSL#Qs-AU
zU+&jp(Zun^JqA60_@$+9=$^iMJM;gm=1icW-1|6gW^ALZL)i^A6ycc}vP8*Nj4f+o
zF!m*c2~n7_6t5eSHQj6}C6Q9LY$0WLQIb$d$(Bhfd7l}P+pYJW_uRL0-#h2bndkq^
zdH&CT{?G6Kd_UjsbI!=kwU(-4W$f!W2&&8MuIxML!Ej?b%{uu=(^B;yzpx^g_x+<)
zJ?{BeD8amMbfcbx4U0_Vh@aK7$uZPqul;<L{x_%4k*VEg{Dn!1%~@oGE<i?TuU$SE
z41y*jc7ppbYehh{uZS(+E)ggM_DB0lhNv=bSS>UT(7}=+JHWXGR}F-^YQA(GVaWo6
ze8<1?67e_GgObxz{1T&+9y8!9g`<jY&vTJoY@vY(1MoU1qw&6k`>Axi2v7~MXaKzv
z{J>x^GFT;rLjV(af-op#K9f|IODY9OB|nABzA+UN0E&uf8xX=?8g55G%ZJo7(L!pO
z7$~bNYH3JgfxU9l3TQbwGzye!8qW!S<vCL~PbX;;BEj<r(!|Nv-_5}(lg!o%lBW;o
z&@ETV6HWsE9T|K<*Vin~n4kJ7zYqfeD<j?hb);0PL~4M_>E`U_Kp;9H_Z}s>di%P8
z@JSVB8gK%D0%)nw*q!n;;FMo!%2AuZ@t-nMabWApNQJ(Rblsd9t)vG4SbYE4h35;g
zRt9j!C?h97AyOzGLfy`K5KTFHF0#;(BR{@5?uy%C+fYABsPn(Q+gZwLhQ~yL9xbw0
zfIms74URZ{oB&uB1Dfo!cBdjtH8%F?-%(^PQGc3P(CY_Sh?8@)SUX-(_K{kvx7uM2
z+G)=n+!uw35GE2_5^PDP#qEiDXKL@|;X4TkuWgO|i&0?}&j_EiYbAuXx^VgOi^g2X
zIYt}V7vq-#L{w)ijuuqKsOzg8=w#1e-0c!dajt<SYlcjB;Fi2b(;pOHo(qy>LC^FX
zFea3qVwQgyC|ER+)~Yftt66?&e!#IR7gCFaCkD2Ds;p_&#M^AjfG`+}>93;Z7&ucS
z0LK~<f~X0?AKf~J>~T=GjzP!2)d)VWEzp2<JrwC_M%9)tZ2A`%vge)o!?>5(*7mNQ
zs%PV^`r6WY?*ZoE<ps^PA)pW7GIcWdMQQz43<*{(ShHZMuFxaZUt?+Xcxcs6gZ`SD
zvFWb1L4Upbhe87S_pkK$gT9FXDU&*AB-L8ev=1P~t<8@N41@+ib@gme$R_j;&t`<v
zk#+QT@RQXrGFg)@SE47NwstrakQ2rrh3ND^RdfMW@i3h&oe`*=hiRI63~ZTzDoFs}
zPN1GT(Rood6Djn~eT0U#Ok<}Gu#PkirS2j5z*NuYWQls0yv}Q(pzpRbjO2g*VByIJ
zl+-miH@iQhjL!sCHC_G{^?b4NjfbfPv(y2yCfCO@lh~GdJFXc27B#iK=LW1dFIz9#
zY?e>mYK|jLt8?7HULD#PI;U{r&>q3Lv}3vn#&p*e**8;UkCB`n=il;p(bV?tK@goc
z4$#~xrqccfb}>25a(iXz68-Rz3m9FAC9~_YpG!wiV=L@!)1O$VP0Y5XImgE?yW598
zZP4A2AU>ir$*1e%a6VYnvpypyTjfLOiDdWqz&y{c;fzJ0Pl}Ju&Np6UNsh{``jx+s
zUOoKIt*~=qipX22QOC)J`RWh{OB8#MjFN?aw$ByD820E*<%CO|57Qs9?Mn}9=xDvv
zF?}L@W_Xtm{288@D#lFcFESGLu9_XDdp3?{%1u;WaM~C6^8MxgR~H6-LkJ$;0r{kd
zm*53T6_bq*ACYhRwhGPPiG&D;eH4h6G*!A`)qkJWEG_7y-!A5{ROwg03}I!swo__k
zO(jGZ?iU#JZ@W{R|0MawCH3s)cD}v(Ls5&8={cOvKz9WZgL~!>Oi7E86=)K@Zh5P4
zKvN~f$fqx>tHJEK+n_~l=O9qC)H0_3k+m9cIB{N>Pf@nA{UC$PG;5}jeE&3DLa?VK
zL|&M=ynpADZriv);wc?2P;mOexT9`eEG&5ex5c)-Xy!akeI&oBn!ov$z7hyy!GwcK
z0&=uKn3iy?H2<0E|EEHglxykif7urW>4Jo?D;t_L9orsNe`qnK-bSFUcmf}I`U;aC
z)91y8fbsYmUT!xFb5?P9h4^e$_`uEmO)PnqOO1%T;Wwr%QykQ4rh8rG!gCaKYWj*V
z5)CV%cA}<HxhdBiQjt5Fc3<gJ>n6~jXi&w!9+jHeXj`G;c&+xe+>M#R*Vb&z+J@I(
zdD$gIamW7VG!%$kys*@?H`$>3^|s($B>B<UYdgl}Qo4Q<>FTL?%bNFMN;cR0BI9uP
zus8~cDA&O^wH-DY&Y4x!4d5tbs^#aIFteUf+j;2pHiKra55E*`MDfYqe1Xu0;lh#8
zRwH*|*@3bjHG7vct8cfi3Y7pjQ=8Yxl1EyIwn^Y@3;oFl`r5;)Bh48U((e+A@9NfH
zR2PsmKz0Km<BPf|NCW8qmAd?(?{9Nk1XXHK^cw+|RZV~~f3r?$VXlPZ&G=&bX;F2|
zhw_5?1cs9bOZ5n8aqq$-hR4pk9Z3-JC|zJc`Wf1Azdk<U6YV=^dnzcHTSlfTzAUy}
zdpJSzZTk3W-HdJ@XG<=XUx}es)4F56#?g39Uz0YU6S#ZonYuZ+(a4FuJl6NxwI8v|
zBBxcY)kP`e2tUP){Ut*YJr}s;5owi)I?P8J?v@MJEsk4;#r3PGe8i3FSGgQ(sVriJ
zx2ZA4lat;Ia=!6QucHrTmCcSGi+m3gY`wsNi9FsScRV)nT2kte;3?v?MxyB5w$JpW
zj0>fg5k?C{ypib1Cq)nUu<d`cJ+koOfQ+NJJ&)P>;KqAgJYp8nL0M!N7^6XLXvY0{
z)<4)FWTRNX@Bz-qAjJlQ@`G7D58c)i<iH^km(|gb7k5<n<{k&DERAH6>Ht!8E~yeA
zmHia-{!<%dU}~~rg8+<zw8l<tMQOCAqT+X-`caV`Y2tm<7mTm<34TP-L}?uMcJNqV
z$qWp1PzJhQW-EF?jF)}Q{s9;)7ISEAhXSy&10Vv*U%e(h1ib^01X#XwKqXqxD}qmE
zg+{(?@QSQ_3onSEe!Fwsu~76jKzuC|p*hz~7J!+0JZ#f*yR6l1rYz()<E5=Uj38Ho
zSU~ZCfi5Q<zgs7!hQ>DRdQ6GQE40b|)W%6Dxw_>6axgZJ1AoS>S7r!tScOIE+6#Mj
zo)}Y<an)w6{gZsX3u6ZNA#rw<m5)!GzGfQ;JD{JYYoJkGSa(HKI3oVKR~2barURah
z?W{AHw~mbr;P$*XU%0EeeMFioK6*4U$z5$BP;N;_S@e@qr+-TQXJ--NPL!TITk&pJ
zp-no={e4dhQ5Tjey>0C}70Y}0Ef;R_)eY3O7{Q=QJdXP&W4hiOPjRGgFE?T%xG$fn
zP3SK!+pmdCszknESF&oJBR?01X*m!{?}QO?%3ag#x1IlG(fJ`apPXGB-t!7ghEl+l
zH%nW2iGMFNtb}FX!J6NPWf*{eE$#rrGS=S(8h^;c9ykh@x>`{Bo5uJH&x##sF&GPq
z?kKy$;fIF5Qov2K1Ei649YDcAtP3Eu1Edy!R7}tPy|oLFQUOv}Zpi=RWPwi^#BQ}b
zb+~#t_|u~?jptB7^ClwRWqsv?$pke`gV#<T(BsQ`5>&wUCb?kgjKLQ3jt!k6Wb@B^
zy<JQ>CD_dTJ>;kF8pCDp#%S?MJu?+L+Ws%D-lW6lx-WU)ZyFYk__)7)86@BqkT`g5
zWC`yBv;Z;kk?~N)w4>w1LceQPd!{IydQ)&VHkAy4Upmg8tn!s-J|_4!X{v<ZN6yE-
zj(@m=Q8Ih1<5FPv(wyM<Rh|d8RqE^V<BJGSweD~95VZ|TW)6vHnMLUpU%ibMO4<V-
zvl;2)oJ%cpw`>GZx!emB50aF4V{A*Gu>~s1%h<L)AdLxgK#`Htpn6aKe*Uxe_YT&S
fNp6|+I+paXZFHf6=c)fY@oUpX9cOc-KxqCqlr<LU

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec b/Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec
new file mode 100644
index 0000000..4131517
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec
@@ -0,0 +1,36 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+# Package for support of ValleyView 2 SoC.

+#

+# This package supports IA32 family processors, with CPU DXE module, CPU PEIM, CPU S3 module,

+# SMM modules, related libraries, and corresponding definitions.

+#

+# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>

+#

+#    This software and associated documentation (if any) is furnished

+#    under a license and may only be used or copied in accordance

+#    with the terms of the license. Except as permitted by such

+#    license, no part of this software or documentation may be

+#    reproduced, stored in a retrieval system, or transmitted in any

+#    form or by any means without the express written consent of

+#    Intel Corporation.

+#

+##

+

+[Defines]

+  DEC_SPECIFICATION              = 0x00010005

+  PACKAGE_NAME                   = Vlv2SocBinPkg.dec

+  PACKAGE_GUID                   = 7dbe088f-2e1a-475c-b006-55632c2a5489

+  PACKAGE_VERSION                = 0.9

+

+[Includes]

+  Include

+

+[Ppis]

+  gPeiCachePpiGuid               = { 0xC153205A, 0xE898, 0x4C24, { 0x86, 0x89, 0xA4, 0xB4, 0xBC, 0xC5, 0xC8, 0xA2 }}

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c30e714ac67d96dba819948d823210b86558f550
GIT binary patch
literal 10624
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
a8BX0(d*<w$vwu$eoI`Uu=8T#cI{ytGA^$u8

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf
new file mode 100644
index 0000000..d34bf39
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    CpuPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for CPU module

+#

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = CpuPeim

+  FILE_GUID                  = 01359d99-9446-456d-ada4-50a711c03adb

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimInitializeCpu

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|CpuPeim.efi

+  PEI_DEPEX|CpuPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x27B0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiMasterBootModePpiGuid

+

+

+  gEfiSecPlatformInformationPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.depex
new file mode 100644
index 0000000..4db74a3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.depex
@@ -0,0 +1 @@
+�n�*��4A�V8T��
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c1154aecf2fb54d6856ae9df6c235c748b4b0a85
GIT binary patch
literal 98304
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.inf
new file mode 100644
index 0000000..79dd341
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.inf
@@ -0,0 +1,201 @@
+#/*++

+# This file contains an 'Intel Peripheral Driver' and uniquely

+# identified as "Intel Mobile Silicon Support Module" and is

+# licensed for Intel Mobile CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor. This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#--*/

+#/*++

+#

+# Copyright (c)  2005 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    MemoryInit.inf

+#

+#  Abstract:

+#

+#    Component description file for MemoryInit module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = MemoryInit

+  FILE_GUID                  = D4EE25EA-0B48-43ae-A016-4D6E8B6C43B3

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimMemoryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|MemoryInit.efi

+  PEI_DEPEX|MemoryInit.depex

+

+[PatchPcd.IA32]

+  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|0x00|0x17A30

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|0x01|0x16FF2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|0x01|0x16FF4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|0x01|0x16FF0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|0x01|0x17000

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0x00|0x17A32

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|0x01|0x17008

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|0x02|0x17009

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|0x03|0x16FF3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0x00|0x17A31

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|0x0b|0x16FF1

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|0x0b|0x16FF7

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|0x0c|0x17003

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|0x06|0x17002

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|0x06|0x16FF6

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|0x06|0x16FF5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|0x20|0x17001

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000046|0x17004

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x16FF8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+  gSeCUmaPpiGuid

+

+  gSeCfTPMPpiGuid

+

+  gVlvMmioPolicyPpiGuid

+

+  gPeiCapsulePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiGlobalVariableGuid

+

+  gEfiVlv2VariableGuid

+

+  gEfiMemoryConfigDataGuid

+

+

+  gEfiAcpiVariableGuid

+

+

+  gEfiPlatformInfoGuid

+

+  gEfiSetupVariableGuid

+

+  gEfiMemoryOverwriteControlDataGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/RamDebugLib/RamDebugLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+

+[Depex.IA32]

+#  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Fa$* /Oi /Od /DEFI_MEMORY_INIT /DSMM_SUPPORT  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D LPDDR2_SUPPORT=0 /D DDR3_SUPPORT=1 /D LPDDR3_SUPPORT=0 /D DEBUG_MODE=1 /D SEC_SUPPORT_FLAG /D FTPM_ENABLE /DDDR_DUAL_CHANNEL=1

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..769b1757675d2db405a68807c4c7742257fd642d
GIT binary patch
literal 15040
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
DfH~Uy

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.inf
new file mode 100644
index 0000000..ca923c9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.inf
@@ -0,0 +1,97 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchEarlyInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Early Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchEarlyInitPeim

+  FILE_GUID                  = D9F5B28C-9FF1-47D6-B503-3DC23BD345FF

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchEarlyInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PchEarlyInitPeim.efi

+  PEI_DEPEX|PchEarlyInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x640

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.depex
new file mode 100644
index 0000000..0e34453
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.depex
@@ -0,0 +1 @@
+sF4e��K���a
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..57731f80d57939fa1036087575b0b2717db14453
GIT binary patch
literal 22976
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
F{{wI`;Cui8

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.inf
new file mode 100644
index 0000000..1a508fc
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.inf
@@ -0,0 +1,150 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2016 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitPeim

+  FILE_GUID                  = FD236AE7-0791-48c4-B29E-29BDEEE1A838

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchInitPpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitPeim.efi

+  PEI_DEPEX|PchInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x52B0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x52B8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## CONSUMES

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  ## CONSUMES

+  gPchPlatformPolicyPpiGuid

+

+  gEfiPeiStallPpiGuid

+

+  gPchPeiInitPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## HOB

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPchPlatformPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.depex
new file mode 100644
index 0000000..028e7ac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.depex
@@ -0,0 +1 @@
+5�c�2�I������l�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e97b8aa92af9e2fe4af36a2b85ce205613769e9e
GIT binary patch
literal 7616
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.inf
new file mode 100644
index 0000000..42ac7ea
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.inf
@@ -0,0 +1,144 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusArpDisabled.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus module

+#    This version will NOT include ARP support.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusArpDisabled

+  FILE_GUID                  = D82D57AC-99F9-4c7a-B591-BBCF8A0E7FBE

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbusPeim

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusArpDisabled.efi

+  PEI_DEPEX|PchSmbusArpDisabled.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1C80

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1C88

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  gEfiPeiSmbus2PpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiVLVTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPeiSmbusPolicyPpiGuid    AND gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..58c00cf61b02f232a870397cc94ae73ec5b955cb
GIT binary patch
literal 10304
zcmb_i4Omn6xj!KRqC^t~l~&pvXRx7IM+qX5XhHdycPN4I6+tMH#1N5i!---av|$HY
z!fE>K-gVucuD9);bz9eVom*QK`vszab+y!PU9G*V+K(L<+u6E7wA9?+dk#>vy6)NC
z@yYq0|NDRc@Av!uKV<zz=3jn>|K*wg{)v`+hAC30t{{AhiCPq=n9ZEJ0bq?hG*8Je
zcSbQxPLkYb(a`VeC&wV;5j^hd!HK@^I`C_Ob8cZ65d)TFhAF!i!oLVx#yQ$J%smVp
zNiWis+UXC=Fs@}@dp%drFr71H-5;B1r{m=?%(s`xXiO0XPAvhgi5AV&lfy8>%e;;z
zPlK!z>BcBPm)dDh4#TXes1!K8PH5L_gfe|XFmHZj<>gk@%5bYD@CJWI*?%_b!p}mn
zfx%$=g2)$vH!eIrF68Mob+rS(lb_1l`!HE86zMgASAmT=l^31@;*(W%gi{H0A}?WF
zcoIFe1fQ6Wam<u(z@G2|d9Q~9Wv`E)84ZMidFA}4<oOU)eU=olR=SE1DDE8L9q}mK
zZL^8bq7lMf5nt^784TkOHCF_SHKGg1!NP>0Sd99I3RUM}x<H{?P*z$amPFya&DJ%#
zGr7WL2Q|X=i|xR4brW&h#@@%!ito)~82*sXbzb5qRuh8iCgLs@;~PW5U~OIXK!xzB
zFpGh$f1<*xqo46>88JE@Vhta-$ImeRXLU}~L2cK=;IltT%P>yUFgHJk-n#uaPxND`
z?`yw;P#FmEP8DMvim_NN>xK%{XJQ#<s6g{BGGM4cSBD%DAD#<FZ|`R=M<T+}#lwO7
z9|xP4pMad43KVs&J4s~QM&Xz^8w%M*2coJ0Wo`zvmY`wiVl(#D4wSg^7GWw`qe9#U
zxm+x!R*0MN$sbDCk4*K~4)Eu6)^gz;DDD4T?VTw>&n6<;DucVj9e0qR+ya*#<PQWv
zs+S}YA0QsWWw$bzr%$xFRj%>bV9&S}_{Uf)L<jWZ4;i}pwB19P1g|IX;fS{L06N;e
z!~J4R|7lh7I3x%Z>2-Wqt^Mw!7&3m$_k{y_`Xq^P5(o!XDVAw;XHC*=Yen28@)skV
zJG(f+H&^KI7uDH?^L%P}C%bq)r{xc;O-=fw9sdDDUFaDpMBDXxzE9;=R=QQn!_(<L
zA2T6u+d?50l5z={We6y=`*NcK3S*x$P#6`8-VY`Hb+wzS5h?@a!nuxfl$HKVYHzG$
zworQo1n*)Zk;uz5VyQ6pSuA7}OKFK%GR0$c$4d&}SPSwjzI6XfG5A*aQv5H)Ngu2b
zoQ02$(|9q#T%Bof$E>l=Su}&H0P=zy7t#v(YVE%JBzQm#e+wUO8Yn5T3hxAJ^y*6C
z;xu=bL70l*j&R57>F#U-RCecKC}tDJ%7ter*x=K6<B<}Jv9G&Gzc9zYdqIq)#A2~%
zf6%Ah+h?&>iuXiQjFN*-?o4!<5gT&Osb_(XO&B<Pnw<WcI1d5Z*{AIsA*%ng2XD7Z
zI4UYAdV;~{&=-G&U`%G9(JHc-w(DmAx)>k;?*zss@w)IW4D+XB`LhgX=Fcj)G<xaj
zl}IlQUOvNqOjm>!q46`J8`0!2p?EYb6Vjm3G4LY8s1d8dBK?9A<B?oauf$SPQZk`l
zgwtnKijQNZ6V8){qdVuhYNj+?f)s^@gP|y6-zF3bn+*w+hy-fV>nkdQyROQZ3sWZE
zOr{aOKp3V8kCK()r6lA>=abMqSezh?xV}gBNI@yE1zS}}<hAfhFZ5uXUHzQ#Wf;Ie
zy}<n#m<M986uH_Vp6tkRh$q#tvsEAq8WFJ7?i&$~xnrxGaU)^^XaXz(+`|*Y;Ij|l
zt<ea_x~0AhB{8*oD-)glXVlugIZB#(0&_6+S7?lV!5vA+Q?}=AywikXr!XSK@S=jd
znO-yS@)_L9P?S5W%K7Fg%ytIK^l704?cM>Wvd^h~>Y#StL7Iw*mk0Pk9p4{C@p?dj
zRj@jw1)qHoVu4+Q%yk8EJwAvT>Yi88%vIwRuSS3-Y4?5_EQnI}^{9rrJB>fWv>v%p
zj`HnehS|Q-$ugxZEu~~Eg^SJQVn0kbQKM4v*@GIDU6`Qlx<T&DLp9NMY2?oQ?85ol
zt_Zx@1CGYyLf)8x4=cHud^nbi=EGW_3ZkU(VV(3bx2sQT<1hD<g#L@DZ{^6};IkvL
zR{P+m<j6O$mYmXb^>MRTG3O%+E*3hmiqH(uKPEm86y(5hC{8J)Cf;NiD!6zVgx4%$
z&ZS5MD_`Hv-Trnx%lP7fF;~Js@>PG1L4-S13!qeEpO6?VHn`Or`IR$$v$cD3!~Lh!
z{IDYKd`Qi&jPk|u$5a6z@%=jfFACp@p5g`mi!t21p29?P3^&_<(ZZ?B7N3ScrVc6j
zV>-gcPajfAq+d8hy1g!*L|p!o@{jw*S7P?hYQ*f*u<6;tFCvkyQQth*9$H!U03=6n
zHug=npfF6d-V*nKmZTaNhp5nl`Xhiq%XlcLg@RCQj_c4=dfp5AHd_xrj_JW?siNpF
zP-IhIya3WtF6@tdj-*;VBF2E&S5|28MnIEk{q5<ddH&PybxR+{K3EfiPAmb5*eGzQ
zv>m&{)2r(HQ>u8df3d+*gJEGWWjsGfS-lNXydr1y5Er|jvO1Irc=@Ds&bU8HNPy)6
zhK6k7Ts)-R*Eja|!oK8-k;vWASO_5ptwQ_<Vg8)PijCkd^;c?qF1#-r_B5GB7?VXY
zp7ih1sI~kh(r=e8O3R<em-V*_Sok+6?zYZ8-^~5Q<LtXMkbWEkKavNyKOe{mGydK%
z0#y7lMC+xhBR1nJ*^ecP??XXAZtKKq5+AFtFv6d?3`m051W3>Ql2wl=x}}e-O-bAh
zJ&zEq=N@U~eT{xhqw1DA5#Q3Da*gnM#Ak^3^bsE$@g+rki4k8y#HSODloS#b{t)Xw
zeOU<mcO@}0T}~&H(_ff5Ak(4^GKnL81jh(NQ_ifWl@o@v(#G$dtNl4TWx+>bj|qRi
zO#XyPGN2D-r$F6&H5ES_y}n7WM0(8@cIkxt1pXF=#~QRbxWgWTm&!uQ;Eo!&_8E8u
z7?ZU?I2MQ%A0pWLgnm(#Ol2XOR>OcIv?N$uCGM8-C&z-_(o&h95KyPy{}_Y_Xa#L3
zp5LX$K0(OW1QJ8Dg!><sq|+#m2Gn)6)tj(lWmwChY|lHD$ltVJbGTy{Lopm^(i^yi
z@@9`$O-9ZyuyL^op8(Y$bV-UoPpq_ij|wNSeOuc9zKWdNbDx5WFV;1)(4J}twCl4_
z{Ng*0XgkfYVb`d(GXpIZZ-$S|=F<5{G<RE9giGNgDlFuY815T<M9tmEN9J(z_=t|v
z@evIYe^`7CS|cK(X|4iptU`^;fh*If5@ykhwV<fCh?&S*tbcraYEqOhjc?c6v9Ur^
z!*C0MP=h)4U`1r?cxstGOIfB*5_=&McFSj<rNnO67coAavCovJuUU9x?2W}m`WjR>
zys;qONmUN(d;)aVLtz#MNeVtfMW*9@+VcffvrPlrRjGdpMF}TRpBBhc&jH!^D6A6L
z<V71#u7!I(&+$gPbE-o#gaQ6kn2QqL22L5nEioSHI?1s(MzKArmECzMx*q&;O-H@w
zCFU?GF%{klu2*-Q0ZWB=Kb(V}=s*i1a~W;tyYK>b&g)eh#biJsx}oFn_W*<<=D~bM
zE#xWmyvT6NC_we!ruPl5FxBBGq_|WrjHBWn1b{81ajR-WvBuE??07~c0|~Ejt3h*V
z&>G>-+|mD$I_@q0RBZnlRosYnZyv~<QYeqh-<JL}aZ<@*Kr3#f<5eaqCmgyR9$YG;
zo{8=MNP`J+Z~cQQOjvvZa>1g0G@)ibqU5sqNG!LUk7%(C#L9UKABjTJMP?xBA~U&o
zJ`%^xrs$c$M`mfe9wLjxYzoD=RiTT<k73IMcg)7%29>A+MOl&Hh8S#i;{L$Dst`Yc
zxaf=hXnU}vQmDBV;txRvm62<dyhWklOOiY`9~!abs&3UB^48zTThg+agsFPv1x1aX
zO+8A!!!MBnNZZwq74YnL@p64Yrq7!+y|@A)DX$BxRDwe{${0aNBiC}eWRX@Pn|vC{
zKuRY}rgV3WKK`mT>7gmwClTfoHB35KcAn%G?Wfon!l?_9Ol<<{4dYf51RR;r4Q^Ex
zby##L(cMv#$i_%8L%j&6s%n(72OyMopC}ye0xp;2o@o<*j`{qMf`@e&UtUL~@0J;i
z_xGV}*e{;pX495y=D<wsXu4xU@rbEJ;aJ>29H7F8=mxpC8hygz|8*iK;xNUa@Tt=K
zLQ#7ZvepR$(!N{6AB|Au9!MPwu8&j-mrTRk=et;JuH0E0d#lijA3`%522<ZN9o-)9
zdYHymPK+I)G1Hh&g-v~2d1Zz8<R?@^a7D7InpTAp@rM*6<>RF;I<N?8OQfU-<Jftq
zup>|k`Qx;Hh;JYrv6YJzhR-Hop%~~mHv)A2Mg7}our+gu#5HeYFT+A2D{=ja`WBqa
zgy$rbu0bshd2}Tryr};GQ?R@g6X&YNj?amd_TF=Nmm`1@aCT{{3?iDu!@%f?wFU3f
z(;zKHzd-9&Z89foyZ#HG>BkELFX}~n^~9Q&ai5uQ<32H`a(^+i+(+iLc9nVM?mwA}
zxCC<(r!(K`(<xt5{$0o&4-|}t27jvv9rWM9_|(N;l4#*t%~hPo+{SG++qo@fAJ<@R
z<r2+Skf;ZVEu6;8acXk|_KIHL%rD8INVl2J?<gqjiG`S5H87VIutZ!5L@O;W4NQT9
zKI2x}L?>L&A4=F%S6$n2h*TfwJkC8YDENLgKd25AghNles#xUAn;4Vri5ZCN*E-Jq
z4j)n`2!E;UrAtWIODD!45QSsGDy2ww4#Iu<Q$P#0Da4P_4St6`FiiaxMNqX`Ic$1$
z`(nP2HJ&sb+<s%QkTo4_jSG5D(c+jo7W$5H^cAvk0re4?Cb!~%pT+DVeU`Wt=^R}9
z1-9gz&T@d*1H4i!1K5VI^aGv1bVn(Vin$UfPoJS2z!EqM1w<zdSBke1SUIHpd@v`1
zC6m($4@j~K!xiFe8XL?@i!cXbVY6TXs~n=W4;L^@Nl7m<`+FjtWMI1AQS^2kB4Z3#
zg%hI#3T~dO54;ah4eRa3mpFp8(&iMD*j82(QiW6aY#QReDa2n$hykM$*JBdq=ztRB
zeoy57IEB?gSb|a}MU<v+#-?yK5l+A;(Lu_Jdk_T4N<VJ8jv?#S!bt7emnkkLB^HTA
z7flc2OT1YUM0nHr@ubW$myAU~>z_g!BRe^TH$T2o776RUDXcdpu!O<Cl2+x|KYuE+
zh?8F0#5x!Eqn6Ra`XB@n!p7r`gH8oj`ah$~xb3yV>%lt3*r@Vt;X?l>i5>3~80Q(4
z>BRP%Xj&aj8<sC|Os}^_!<W$;go~k*QeA=awEEOTp<X6OKH)FMoy7fnAfI@e^bFoF
z-H!zEy=vpn&TDJ65A+SB<5~~a!7;i*_>2!LxH)_{3RfREicVY$-6~S9W3Q7yKS53J
z3M*<>6>d)sC3c)efIK#KV&Rd+{ZLyzK6IR;V=lJ8zC`SQg<Z76(clJF2ceT)BV^s<
z&^<I;I<V=!iT+#Y_xdp+2F4+5$K`VXY)^DqFzA8+esNqno62{%B|^E*iA0?1PN;HX
z3DI>O_eCF|>u)4Qg18jikpy$VZdQfxN5Bl?BASlHQ-c84SzJj{c@W+dFT);Eb)MX{
zmy}cl*N4Sj;4kD~5?aO~WW1{za=6nr_CA4D{D@A%2s*0Mw8?*A9MDSO&2=qZ3}v#Z
zIvf>WAv9wol++Q)S)*mVb6t5fx<(%T35^yM`d2f)_k<zrqvhkD>C+vvv2tmYgQj6`
zoas|<Tu?Q~biP%!M^P)etD@@&cXQWq?nYx@mV%of^hQjBtuu1`W^B>_UOONhtR0}s
zT8IUKl3aU;Wl}7x+m0_WmAFbveeFOc_J!n@B-aQb-86+1Gldk|?sjd&!f`L6&vek6
z<T^)~-<raFm#n%UYlc5mWX%zdSt`X$p!VP{PmQg>0+(73{ER95rwPCFWcB1hbpaJ`
zPLq1MJEovVwE}zc(ZLv82jL`I642<oj==PGkZ>n&>}^LYZk61q(rXoJn`HaSSM~r7
zRducrS`e3$xcL&+;0qM-V{e-VT6M0!5tU3DG|(XKluMC%Hf(rc_)6h3;UcyiP>w0J
z0B03Gf*aH#?#=-S7OTZneBmTOo|>@jJc;3fJ`D7-$&l@J9HebRj8LJv3gzS!%F_}G
zm8LTM|42-LP-#zq)Aqwvf&B4HFVHC%vC{$<NXKH~sBm8FLNE9om1smOyrtb22F8EV
zcm8<4IO7Qgr~Evmxa5?=h=LOQuJ>3PT-KIGi=%NH!>ns=<?5T7WRM|+wQ}`d4kyr=
zxmIg_X<1!<!MeKq($eBm)_@_-*UGM9lf5axV3<W;8BCE_He}cA@OZb@Y-`?;UQ^Mu
zJw4B{y|KYj>Ts_0*d3OwTWTu6(y_Cm(Xk`l>S?I4dVHK~ZIiE+b9ieYS`B2Ykwse8
zfGT2H$6D~4kkw%a_p9a3ZzibxR1{UP(j2dc^E7yx*k%vMw)$FHJYLRWXYD=*%Xt7~
zTfCkYhnFRM%i40*>G3t&7tLf05J95f+~BxvH9BkRTOI78Rcu-cyJQIralPTT0($b(
z(*9j`SnJug&C^UKk-x|qj3nQhdM~?#O>0Y&pY#-V737=hGHXj&SA8qHrryq48@DvW
zb6y9{EpNtu0d8fTP4%rVw!yQl#nbF)=Gfa=XMJN6bidAc`sDa@pBoIN`DNv$8|tiO
zxn<?n6hm5D)`UE4J8QUoc?url*#aw9v^F%r?XW!=@;ZE4C)qFt!<ypaqWs(qpt@?+
z?Gl|uU&GKSvttZJj^-_#i@lA#J%u%|Vj-907`y;8l&{-Rwjm|Y(aJT#E{&e%H9n`)
z;Z0$#h}-pYq!u-9_SSoM)=&tncWm=`cLGxCXt8qMnzf#moq$z(>q)^0-~2PY5%1mx
z$0S=u{vf*;4BI`8cJ|g3gc`Pk9`Ck#?yK-C<XqRxIhqQ*_1hejbL%~JUz3z#lY%3a
z^4c7Ej?KO;vgAktIg=?FYbFOsdc)dp=ay!HJ1JY#*vhT1_ijagz=X0WP`a^s3sViB
zZep3QwbwciI6^*5YHe(&k-8F}T)W-tXl+FR!$B0c;Qb}cI0dsn)@evr=zR_UT#MiO
z)&|Kjh6!4e#HAXs78zi7uy&85wfUB*62WpV2Wx5Y$yIBeJsWwIoR-ms?2w<U<+!HN
z5hGVv8m6eZ28@J5T<5oOj%K^Vo`?VNCyPuE1i9!;$FMfuHBpbGLUZ-}s{-jd^U3Z~
zS}_xaU9tuKGC>lArN1d)8(UE+J#16GcZ*arH#=Cbq?d#0BtpyT@KR}S{c4cHR9D-H
zD*v>woSa)$zZoIxX+$7<DPZgz)&Faa!dU-^rX04LYveGM+z#C+WWOrjM4Fn}x-FIl
zdtE_eo5P;Vt?@NB+3NsUU*Fca&9^PLwV|<5CLvGw=lIt<9n)nnOsh3lOF|Ab$o1e_
zLyR;R(y*&p84GeqPRBe-eQ$GplXZ&U2G69##oHa;rur6kI`5?{2?AnE*{M{Qi7x$;
zIGc*31Z_L#y;>lO{(r{)Rau#(j(R(hkeu*!bFQwd8y#NH)pd2!U)QPT6D3rZ{p<Kq
zDwe};SQj03IZQ}3>A|sqc?!SBv74hGJ&#l*ZlV_3GA02(3l16dqi1pq|E0#<iJu*C
z`juMqtl#3>?w$YcjcfMaZCLZ+*3fTooVe0{Qn*Pwq_WLToLp}xN%Hd7lo!@jSku#P
zU*49LS+g$J`2XHWA*Hs-geP`Z1X$K$-;BEw$d!)Y^rvubSrPqB((?dL{=E`i5$f=_
zN>X3Ht(ow1a35ix0ocUfDv`}tC@S~$cinZDee)LJ(ZQ^UXifaB63xBd^HQhH7%e`O
zvp;-%_p!RMpZ~~p-%o2&M~lC|WLd+aWfcc8?-b1)jLz~G{P%{3tbh2!oO{nOF)8^2
zy}e5vPnO=MFL?Bs-+w4<d9{G>uJzmr;38wC(PP|gyvO)`<D<s?#+QtWjF^m@Gm<lw
zW)x<WX1FqTWdt*ZGTz8|F!Qm@_cIT#xVS=@Wy!K<HD;+yi%h8|yXmK<Crsx|qo%ve
zo#q!;4X%1_^~<a2|4+I>|Cedcrs>m{r5B`I(*5Z@>1{^8@d4w*#+ey&Gj7T-EU#L=
zdHJs8A1)tXuFVuOe~|fH=F6GyWPXr&Ia9r2)r!Iu_7%-5dR9EJ;$YVCtar2inze9c
z;mRE=?_T+Xm5;7`X=Pe=c6NDoUH0ACf$U#r_hx^VeJOjcX`w00bf4)#)2~gvrfca<
Gu>S)mr?-v(

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.inf
new file mode 100644
index 0000000..9b80bda
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.inf
@@ -0,0 +1,139 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiPeim

+  FILE_GUID                  = AA652CB9-2D52-4624-9FAE-D4E58B67CA46

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiPeim.efi

+  PEI_DEPEX|PchSpiPeim.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2700

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2708

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSpiPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex
new file mode 100644
index 0000000..05a6cfe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex
@@ -0,0 +1 @@
+H�t���N��ľ���s+�N+1J��V{PD,
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.efi
new file mode 100644
index 0000000000000000000000000000000000000000..9f6d819290b756c9edbc7e6b47587d7463365d23
GIT binary patch
literal 5984
zcmb_g4{#Ibm0u$pD<H4{1De$7EmJ{dNH~LRuq~1Jk7V#+K(=hj0%0RdYp)#Ha#ky2
zQkvM6JydLT?R9c@xlX4?CM3B@dNXaONwAx=0(opF5J*UqBjKh=Q`%V~Pli7e<AQ_w
zdn?-*Lav!yznRsy``+)p@BRDUx2qkynXf(KUt99;Cup-WOif1SZ3;hP=B-+ov6wls
zfMNFGqOn|s`+2xoq&zY#Cc5q%`&Lflz*u-EbNX5PCG@+IkE~#rqhP$1%P{qK1AI-|
zdXei9A=^(r!Y{>F@^8*y8HQgk_&lPAVa)e{0pH7}=Q%K@jA6E|Ps12D7-g_|-}H=W
zc9b#9*m{8r1ifjW$hSDSG|wGn3{x@l>~Kn=UMn5cYovO8Zp^YGRdO?wSuz>YMBk2l
ztU7*i-qmN5+0l{M!Ii1cqi<h5Iwe{3n&zg&sq}Deh(lN{)#x?RH-LtW^XiKLzR=iA
z7$@MQUO`-a0Z(d$J}nMDBoz#nCtTEWW-?lTX6oaK=p>N0%fFbGhpFm|<Uy^y!Qtf9
zh+BJ^bY0$#B9gLWHF{lbJJZha2jRFgWn-mFk>R}8^nm>uLcIeM2mZm)V3+d%=eLn?
z)$YN4nB~V&sF7jqz(lx*Y|44LOdXLk#P$3nxOO>-1oF6gA^aiT7cPddV_LXE5!NNQ
z@IP13uK@uqx>T2jKc!G!OjGo!E-imSq5KC?>h%SYVOBaLQ=WL9be74FgX3~FOCwEt
z_qY;~aZQ7R?^RgRC(>n^YD$_9S95C}DVqUCN07rM;cR34Vo?SeyOI#+2F{1S!9N8#
zo;;WH6|KimWW5&`0p^TtSC6W!+bXMn^JEUgj8^7?$Vh*QB8IWb%uyzk#W2r4`)ssQ
zdyIj9C01?dJ{vzatMDA~kzvg-=<U5Y1X<(jvG3?0u9YrJR*h;Tnw|6VaZ_ckkgZ^n
ziw?gnos=ni1Mvgjw(*pev~4k{QqnQ>eQ*bLut)wBdf^+2L>n2+Ebkj3BS^bxd#>=G
zG6(BYqF!f{)TvsXbjjsHZoloAqqKNd=?`X=QqZB4=dl7Jy&MpiOB!k3)3g_^Bplcg
zn!d-TC@SJg{vc38FU<<ODS}B=WMnGmWwK-EjAu;=Bs+JMK~X7bmumi5*A!J7;|crW
z4{~0H+WJ0S|M~DTY0*9;`e`42`i^Un(`44*GK5d|K~w=0-2#kcDuCZ)10bE2uVD3@
zSKg9NN8Xq(F95#D7~hk?CcYy51?)qJPMr;v^fYc_JJoWxLWu2B%Rj&!MRF8-w?P`O
zmGcSGFjd!{C#h|z+8VfyjAR<)NtI-slK!+e(Kr4Ue2KiOKZl74FXLaOfLV4Ap2IBL
zDQr*k@WLVeN`VZF<n&Wf*`3m>`U@0>Gjb)Z(&+EIL8@{NjpMf=Dx%ZW=zE+oQJ*Id
z0&zIo6?;NY%>H;z|MQsJGxwTT=M4M{Za1FY8huqS<L+>_dA)eW{DAnWd7b!)nHB$R
zE;yKJE_v+t<{B~A91ykUwPCI5P1R>o`Bb!ODmn7YjO2;lhnTQ>*DV!YV#wSm2F*R<
z!)Bk@W)6#9b4b*g?NH%?iZ)SW7Dct$D`uL7@Pb?FVitXm>C*nHt%tK==72kuO4&iv
zq3p9%Ha>t*P}^x&xnzw}V!3-!Q+>nadZPcV_>z<nIj)Y3sH0Vr$)E8BIH!i*0WTd-
zsvB4G&A#zdxItgT{`tf?NM{1#rIoKkqjWmfsFE+y-4ptc0E_ix$bZ0NY&$zNM$cUt
zvCIcmW2QH{zZHqI#`C5V-S@_}vZfQEg)!lyXh3gRcP+WyIPqJGaTPreoEJ^)8AFXQ
z201B~7gNG2KX(npMXha!mIt{+z6SGLxZ6172C{vg>ZE)@AzAc=s>DD_T!c2JmByU%
zn?zQPs&0&wrI>*UQ7b*E*eZ=V<X;eP#8QxAhO!Z}SQV=pwNVId?M!X$AUye@{5C9$
z4CkI|M&s)nreGxO()$yM3~@RC6ou^HK^okLJNd1fsg$c#QsumYO#qOiRk|_<_{uEs
zc?B3XwxXS;kpxsh<IhOrwOQa}1dJMIV9K_=5}C{pmqaG#iJHiyO3Xe6Cwh}>WvWOt
zpIo}ofAH(DV<R<6W07H9-$gic<l6h+c>P<)u_Sg}<icd%IMs#SA%%6)2Ttj`x#(n?
zfm9d=j<}lFE`cd$v44__aR4pnZS?#eo(JRP>>odeX?-`xLFm@;KLnG90ll(g3Urs!
z(v!7PgSHjrva~(7u{CPZYX{DTvxdr0m`Gi&{JR^e6jHSW%Pn$9{{xyq{w6GP(IJd9
zXl?uxN)b!%$TtxQw1noSJ=6-QW7IlgJ0|6mSYNVUm%654<T8E?cC;7l9+WZ5Wn>~^
zM-r%C#fziVKI0T%^HM<WQy}vtM`qLQkn^*U>*Np}^r$FJbbgeeh}q>|2cW<SrAzsr
z;BKfCm5QU}B*BfTWL{sYtRjaImh!(ME}h2U{x@-}w)Q^Agg>O-hh~ZPt~OoXzZgs4
zd@_v*3r&}Wg|W;frc0sBpJy~BHpXGw!0X~S2hNK38so(o;)<A%GL3}pDeE<>neb<5
z^(UGVMuI6`=J6~V_)s32^x!yoxtUf~&by|BlU}Zn<UGENK=;jpmd=8b-R=BtG|NNi
zD5eua9`7dPKh7d$<jr*qXI*cy#$G0!wmIcZfF3><8CLh7#~IZ__`+HIF~aws--B93
z^m~&lsbPtlbvM61zv^)2=KgqiVq`vJjN>S%jcW7*uOpGagNpXmy9dWH%lk=zl&R0j
zP`eWL1}UJ|L{6rtB_-C4#CD{d(sk2V_X?iHTXTEy?!iXPas>&2x$Z;L$?j$RPl#7C
z&09k})3tD>G?HA{;B?6SpG}w7-aQFq{!53=%Qu8t7^b?@FZw+J|D#-*V#sIhqDK(v
z^I<``-EOU`Z?;xdH(TrKcGa;4@WgP4-NLRG@|7=)RbOD{D{Fd7-TQ;W!|smG{Ttnm
zK=(!q*X{RmbzEy@(8t*xZgV?4fdF^F;pg^mv<JOzdoV2Wm4R?b<ODZNbK5w-J8jc?
zFAld*3tPu|gWa5PfZYKVY$;1G66~r4jFtELcW@mQo)A~=^9iM^3wl6hX6Q9sXPd}R
zQ`fFt%UT5?D3r3*o!xNU$98!HPX~u(*`UBWY8<RD$c5O>pvdx`ZjNohDvCO0uCE3|
zowdH9ZfCQ-zP!G{o^L4VDK1D4_8@E6n2$k$xJ!JkoxTMMy(%b>3v)xxRC)XX&c}*D
z7U2ncJtD_;a2-K7-3sdv6NH5PML1WnaI&7~*lGXMezI*ayj2Kxun3tg81Q=!*t-0z
zKg0&OP>2<IPbYpjR^T29`vojzK)CWLjLP`C<&BI&;>iD7ek!grm34@0h^_GWSi8Ti
z6BQ+Jv^ctPuMK^Y2E89wgj-vYl~r3<gP}W!Os&ml3lLT4>+pzQq?6oj_E&d`T%d}w
zOSOoq2?vzYtMRu89^n9$n5Boaa4q3Bkm|Uupdh9zoQl*v!=U;zRBkJ;D~1JBWi|eg
zxWgkn4CBmO*t9uzQSf)RF?(RcUiJ<<cBCtQW?52E9mEstgHXutbt{j`I#j`ws5R_{
ze0Iwgwg7A2q8VpsxA_VEcXjSgkFccsE;L$qmBC=`5xGtu=d<9$nO2?~^n7;B8um7X
z9W8@WP>`<kJLT_4+Ly?ae`)#Y#^R-&jW2w~5SG5psdB|&kPUc*Hjeg13)L=Viu0jp
zkwQBsP-_X@wIJ?{6Lp@MJj{`;_q3oif_@Z?K#B2*R2(y!=W-FO|4V1OJX+iho#-uX
zot*D0;?w0rnZS#TQc7QRXL^I1+2%Hz*VkO-@8NvqVnx^=@HK<5!_(vM2zQi+yncUL
zMOxr1*=zT-a&v7kSh$er$KLb@JMXlF8k+(ATJS0ra9f>_{faECVIO4EDA<uc6{sH~
z!ideS^>zklEZ&9Y9`JOrbJxC~B}1U>es*>Xrj_1*OF6p^n+3Xk;$6DM-`<O~EgFkA
z)o~slsZf$&m=5*>v<<Pz(ci142m1hPXsF&<zcYVMjMBX-|8K?`=M<VbR>VF;yxo<-
zt^=Ss1y5HOmtLCrN^7TsFtaR$eRkl@lX(W0etG&LhUC!grCEauFA&Tacy!U2;o+Nv
z*@x?YL8q(EZn1yx&I?CVXCB$sw{rg0tj$vycuT$AN2UCf6TZGBAf``w+GG}MMZ?x+
zhkawghN7P0P44P)<Ny0bAgy%ft)R<?_ZJ)!%vxM?$JWaF8u}mSB@k!+FQorL&)hTp
ztncVl@NihK25tJkLW-9T4yK>=k3RaSucZw@de5i-2WS2(B-z*cUB)c=$7RPR&pvj#
z`Py^8pEz!M(7)CC472Kc=A-N{0r`k<BU#10RX^JKWBa@BE;;luGe6&&7z|~ti|<^w
z;h&zl_esZhY?k{gHXJh5RV1r_yHe|Z@2U)o(&H#5y>W|iyU}Cx8xI+OYJAT4l5y1d
zzVV82QK7Z4y|B0N-wOXwc&YGu;ie*M(XJwQ(f5j;D0;W(gQAI|8%42A|GMeOrWZG#
z-~6Y|Ofg^lc=3;l7nkTtHkXu_>?>(6NtWCw$tu;AT1vZ0kCgsb>G9H&r58#+E!CJ-
tm<mnLn|@(BWqQvvVPec{%mrq@`4RI^&Ci*K%qPrGJ#^%u87uET{}p(_NTC1#

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf
new file mode 100644
index 0000000..3711a1d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   PchUsb.inf

+#

+# Abstract:

+#

+#   Component description file for PCH USB PEIM

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchUsb

+  FILE_GUID                  = 3B873142-4252-49eb-BF17-105CD6F3E808

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchUsb

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchUsb.efi

+  PEI_DEPEX|PchUsb.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1660

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1668

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiUsbControllerPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gEfiPeiMasterBootModePpiGuid   AND gPchUsbPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.depex
new file mode 100644
index 0000000..95be042
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.depex
@@ -0,0 +1 @@
+=d��I��B������[�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..ce4ee4e782fbb36582b6faff9776c22598621ac8
GIT binary patch
literal 6208
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
AAOHXW

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.inf
new file mode 100644
index 0000000..d0b04fe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.inf
@@ -0,0 +1,132 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmAccess module

+#

+#  Revision History:

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmAccess

+  FILE_GUID                  = B4E0CDFC-30CD-4b29-A445-B0AA95A532E4

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmAccess.efi

+  PEI_DEPEX|PeiSmmAccess.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1780

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSmmAccessPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiMemoryDiscoveredPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c58f8eb1d564d0c0ae61c0a90d61b11e11cfb3bc
GIT binary patch
literal 5120
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.inf
new file mode 100644
index 0000000..6bd7d63
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.inf
@@ -0,0 +1,110 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmControl

+  FILE_GUID                  = FF456B9C-0DC7-4682-9E92-0DE84B6E4067

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlPeiDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmControl.efi

+  PEI_DEPEX|PeiSmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1310

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1318

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.bin b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.bin
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.com b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.com
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex
new file mode 100644
index 0000000..3ec1c91
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex
@@ -0,0 +1 @@
+�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.efi
new file mode 100644
index 0000000000000000000000000000000000000000..97c08c610d236735f889ef606fbcafe793dae3cd
GIT binary patch
literal 7456
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf
new file mode 100644
index 0000000..c3d066f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf
@@ -0,0 +1,116 @@
+#/*++

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    SeCUma.inf

+#

+#  Abstract:

+#

+#    Component description file for SeCUma module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SeCUma

+  FILE_GUID                  = E4CEDF93-672A-4782-A7FD-5FC6D239377D

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SeCUmaEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SeCUma.efi

+  PEI_DEPEX|SeCUma.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1C20

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gSeCUmaPpiGuid

+

+  gPeiSeCPlatformPolicyPpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.efi
new file mode 100644
index 0000000000000000000000000000000000000000..5fe83a95c49542dae9cb0bd0f6cb968947ff491e
GIT binary patch
literal 8864
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
ZM{<~pE7De`@o8Jq>}lK5(5$;X{|m-c33&hj

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf
new file mode 100644
index 0000000..c6565bd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf
@@ -0,0 +1,130 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  SecCore module that implements the SEC phase.

+#  NOTE: This module was replaced by UefiCpuPkg/SecCore/SecCore.inf

+#

+#  This is the first module taking control of the platform upon power-on/reset.

+#  It implements the first phase of the security phase. The entry point function is

+#  _ModuleEntryPoint in PlatformSecLib. The entry point function will switch to

+#  protected mode, setup flat memory model, enable temporary memory and

+#  call into SecStartup().

+#

+# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>

+#

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SecCore

+  FILE_GUID                  = 1BA0062E-C779-4582-8566-336AE8F78F09

+  MODULE_TYPE                = SEC

+  VERSION_STRING             = 1.0

+  MODULE_UNI_FILE            = SecCore.uni

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SecCore.efi

+  BIN|ResetVec.bin

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2188

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## PRODUCES

+  gEfiSecPlatformInformationPpiGuid

+

+  ## PRODUCES

+  gEfiTemporaryRamDonePpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/PlatformHookSerialLib/PlatformHookSerialInitLib.inf

+#  Vlv2TbltDevicePkg/Library/PlatformCmosLib/PlatformCmosLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  DeviceCommonPkg/Library/CmosAccessLib/CmosAccessLib.inf

+#  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  Vlv2TbltDevicePkg/Library/PlatformSecLib/PlatformSecLib.inf

+#  MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf

+#  MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+

+[Depex.IA32]

+

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.depex
new file mode 100644
index 0000000..00c2f8d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.depex
@@ -0,0 +1 @@
+²�}�"rC�,�2Ӧ�;���\�J���B�.
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1ee86b88587a71ca97d0f9596d3b0a3f2a85ca44
GIT binary patch
literal 9120
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
DL@j}%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.inf
new file mode 100644
index 0000000..d95c598
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.inf
@@ -0,0 +1,116 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the VLV Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitPeim

+  FILE_GUID                  = 24169E35-2454-4940-92BC-82321A2C7562

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitPeiEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitPeim.efi

+  PEI_DEPEX|VlvInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2260

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gVlvPolicyPpiGuid

+

+  gVlvPeiInitPpiGuid

+

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  gVlvPolicyPpiGuid     AND gPchPeiInitPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.depex
new file mode 100644
index 0000000..4cbdd53
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.depex
@@ -0,0 +1 @@
+�������G����P���ƣ�^�H���3����HN2��G�,?��f���?n�FO�)�S=Y(mEK�GN��2v؆�}��J&�>����4/4t+p��1A�F������k��a�F{�Z�~�'\������I�K����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.efi
new file mode 100644
index 0000000000000000000000000000000000000000..341ce0934ce3b2e809ded36439f59e1597e063d9
GIT binary patch
literal 32768
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
J^Y?0j{|6F)R8Rl_

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.inf
new file mode 100644
index 0000000..5f1366a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.inf
@@ -0,0 +1,190 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2013 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#  Module Name:

+#

+#  DigitalThermalSensor.inf

+#

+#  Abstract:

+#

+#  Component description file for the DigitalThermalSensor SMM driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = DigitalThermalSensor

+  FILE_GUID                  = 5122FA7B-17A3-4a8b-89AE-A93ADE92EADF

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallDigitalThermalSensor

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|DigitalThermalSensor.efi

+  SMM_DEPEX|DigitalThermalSensor.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x7420

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x7428

+

+

+[Protocols.X64]

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiSmmIoTrapDispatch2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiMpServiceProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/DTSHookLib/Smm/DTSHookLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/PlatSmmIo/PlatSmmIo.inf

+#  Vlv2TbltDevicePkg/Library/CpuIA32Lib/CpuIA32Lib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/Ksc/Smm/SmmKscLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid                   AND gEfiSmmSwDispatch2ProtocolGuid             AND gEfiGlobalNvsAreaProtocolGuid              AND gEfiMpServiceProtocolGuid                  AND gEfiSmmSxDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.depex
new file mode 100644
index 0000000000000000000000000000000000000000..cce1aa8782d7783ac5038e755ab4a29300bbd39a
GIT binary patch
literal 108
zcmV-y0F(a$;%HVLfrQi%yzu~l$2^FE0vPx~WMX4PPPK4-x-s1(Qv!|%m+Rlp#!0?Q
z*#@Pu4u%5VYvBI}VWviVvRa&e#V1?>x`?Y=;^1^fwyn4l_J|zT0`~Bu6G|rVKJwt+
O#S%0xGy?+z0|N-t=rOkd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.efi
new file mode 100644
index 0000000000000000000000000000000000000000..aafb722c55a5312a85cee6643eb44574c59b82d3
GIT binary patch
literal 29120
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf
new file mode 100644
index 0000000..22c4261
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf
@@ -0,0 +1,219 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

+#

+#**/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = Dptf

+  FILE_GUID                  = 1D000AE9-756B-4937-B736-1F3D96A5A8F0

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = DptfDriverEntry

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|Dptf.efi

+  DXE_DEPEX|Dptf.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x69F8

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x69F0

+

+

+[Protocols.X64]

+  # CONSUMED

+  gEfiAcpiSdtProtocolGuid

+

+  # CONSUMED

+  gEfiAcpiTableProtocolGuid

+

+  # CONSUMED

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gDxeVlvPlatformPolicyGuid

+

+  gEfiI2cBusProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/I2CLib/I2CLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/I2cStackLib/I2cDriverLib/I2cDriverLib.inf

+

+[Depex.X64]

+#  (gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiAcpiTableProtocolGuid AND gDxeVlvPlatformPolicyGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  DRIVER_BINDING                =  gSampleDrvDriverBinding

+#  COMPONENT_NAME                =  gSampleDrvComponentName

+#  COMPONENT_NAME2               =  gSampleDrvComponentName2

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..5066c0763638a39ff33c71c6d9759850f116e542
GIT binary patch
literal 162
zcmV;T0A2qAx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
zGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj$Tzs&UD_Wehl)DWogP{EM`bSrSe41h5~henUJ
QxSZsy0|NsC0|NsC2(86PtN;K2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..fbf1d38074937381d012ab4d8187f6d0af621145
GIT binary patch
literal 54272
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
RI{&(j>yY{1&;Ljd{2zvYJU;*c

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.inf
new file mode 100644
index 0000000..4e00475
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.inf
@@ -0,0 +1,265 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = GraphicDxeInitSmm

+  FILE_GUID                  = 99EC6206-AA45-4CAE-B630-866755241C8A

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = GraphicDxeInitSmmEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|GraphicDxeInitSmm.efi

+  SMM_DEPEX|GraphicDxeInitSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xffffffff|0xC618

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xC610

+

+

+[Protocols.X64]

+  gDxeVlvPlatformPolicyGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+#  MdePkg/Library/SmmIoLib/SmmIoLib.inf

+

+[Depex.X64]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex
new file mode 100644
index 0000000..9b2767a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex
@@ -0,0 +1 @@
+�k��a�F{�Z�~�'\������I�K����HN2��G�,?��f���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..f0c854e79bf0fdf023579e7c915c7ff201143963
GIT binary patch
literal 39328
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf
new file mode 100644
index 0000000..5c67ab1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf
@@ -0,0 +1,247 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#   IspDxe.inf

+#

+#  Abstract:

+#

+#

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = ISPDxe

+  FILE_GUID                  = 5A38B969-CD6A-4814-82E6-559F840BBC58

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = ISPDxeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|ISPDxe.efi

+  DXE_DEPEX|ISPDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x9140

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x9148

+

+

+[Protocols.X64]

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.X64]

+#  (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiGlobalNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.depex
new file mode 100644
index 0000000..1b4e8e1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0��������G����P��>2�u�*O���Yj���ƣ�^�H���3������J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.efi
new file mode 100644
index 0000000000000000000000000000000000000000..891abcb07795ab3474742c1a346da6a73f821972
GIT binary patch
literal 26624
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.inf
new file mode 100644
index 0000000..3afb759
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchBiosWriteProtect.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchBiosWriteProtect driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchBiosWriteProtect

+  FILE_GUID                  = B8B8B609-0B6C-4b8c-A731-DE03A6C3F3DC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchBiosWriteProtect

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchBiosWriteProtect.efi

+  SMM_DEPEX|PchBiosWriteProtect.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5E10

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5E18

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gEfiSmmBase2ProtocolGuid            AND gEfiSmmIchnDispatchProtocolGuid     AND gEfiSmmSwDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmBase2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..43c341005a38f080bcfc36c46f223797c713b117
GIT binary patch
literal 126
zcmV-^0D=Dksbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0^Mui{|8~FMtiba
goPNb8Tmp^=m+Rlp#!0?Q*#@Pu4u%5*0|NsC2o*v%X8-^I

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..0f76fbeff785514edb149c1cd8ef1ae9a602933d
GIT binary patch
literal 176256
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
S*dAj5c8TYlf#?8$_4&U`(*gwm

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf
new file mode 100644
index 0000000..4ace397
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf
@@ -0,0 +1,278 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitDxe

+  FILE_GUID                  = DE23ACEE-CF55-4fb6-AA77-984AB53DE823

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchInitEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchInitDxe.efi

+  DXE_DEPEX|PchInitDxe.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x293C0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xf0000043|0x293C8

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..89550b75de68aa683924135d77708ae9cd5b8634
GIT binary patch
literal 162
zcmV;T0A2qAsbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0=K`+^x*dWN1fCV
zsPRz2kpgrpaKa3LF+qn$kF~g*<g5bSYvBI}VWviVvRa&e#V1?>jtH0Q-_OQLzDwB#
QrLqo&0|NsC0|NsC2pfM&K>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..ddd290b4caaa60ed05dcb2eae756f098f22efc95
GIT binary patch
literal 67072
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
J6}u5u;6KmmZ}$KI

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf
new file mode 100644
index 0000000..f2bfa8b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf
@@ -0,0 +1,290 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitSmm

+  FILE_GUID                  = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = PchInitSmmEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchInitSmm.efi

+  SMM_DEPEX|PchInitSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xF010

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xffffffff|0xF018

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..6f989cc9199142f9565a01ca77ca98fc2e1e5354
GIT binary patch
literal 108
zcmV-y0F(a$x4+Ev;P(ATozxJh@le5$0$V^JIhV-VM2PcDNs4dxHUa<yAJZ0n7DK;?
zU}cCqKq~^NWdTdpVIxkUwLZt3E-=*s_VA+<N+$3=^5EXZ5;QL~0(2{I!VG{hL5D_<
OwYZ$*tOElB0|N--m@hg2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7fc92c13dbbe64fe028616b005a3f90b413db02b
GIT binary patch
literal 55808
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
E2a{i|2><{9

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf
new file mode 100644
index 0000000..43501e8
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf
@@ -0,0 +1,251 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchPcieSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for PchPcieSmm driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPcieSmm

+  FILE_GUID                  = acaeaa7a-c039-4424-88da-f42212ea0e55

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchPcieSmm

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchPcieSmm.efi

+  SMM_DEPEX|PchPcieSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xCC10

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xCC18

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiSmmIchnDispatchExProtocolGuid AND gEfiPchInfoProtocolGuid AND gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..116cde64b2536b7b7728963618d7ac58af5ffda0
GIT binary patch
literal 23616
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.inf
new file mode 100644
index 0000000..46b4af1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.inf
@@ -0,0 +1,123 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PchPolicyInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchPolicyInitDxe DXE driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPolicyInitDxe

+  FILE_GUID                  = D6AC4AC2-8BC2-4cdd-8776-280E1469DE02

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchPolicyInitDxeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchPolicyInitDxe.efi

+  DXE_DEPEX|PchPolicyInitDxe.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5478

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5470

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c118b285c2e561a2955bec43b5d6ffc4d29ff1cb
GIT binary patch
literal 29184
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
BV4eT~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf
new file mode 100644
index 0000000..8f249d7
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchReset.inf

+#

+#  Abstract:

+#

+#    Component description file for Reset module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchReset

+  FILE_GUID                  = F5883FC5-F8EE-4e44-B386-6021FB320C9B

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchReset

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchReset.efi

+  DXE_DEPEX|PchReset.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x6820

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x6828

+

+

+[Protocols.X64]

+  gEfiResetArchProtocolGuid

+

+  gEfiPchExtendedResetProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiCapsuleVendorGuid

+

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+#  Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..9e8f03f52d06dcaaf8db6e13b30319f83083d1f8
GIT binary patch
literal 58368
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.inf
new file mode 100644
index 0000000..bdaeb10
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.inf
@@ -0,0 +1,257 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  Component description file for Pch Initialization driver

+#

+#  Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchS3SupportDxe

+  FILE_GUID                  = 14537da0-222a-4bbe-9a5c-212a3cbca9ef

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchS3SupportEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchS3SupportDxe.efi

+  DXE_DEPEX|PchS3SupportDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xDA00

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xf0000043|0xDA08

+

+

+[Protocols.X64]

+  # PROTOCOL ALWAYS_PRODUCED

+  gEfiPchS3SupportProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiFirmwareVolume2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFileProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFile2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleFileSystemProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiFileInfoGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesLib/DxeServicesLib.inf

+#  MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.depex
new file mode 100644
index 0000000..d57f41f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..6dad6ec20a6ec120bc6ed017d9bc862cdd6a3480
GIT binary patch
literal 35328
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
O>k4)mUBz9V2mS|j(<Pq(

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.inf
new file mode 100644
index 0000000..b5b950e
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.inf
@@ -0,0 +1,214 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusDxe

+  FILE_GUID                  = 99796403-CF03-42ec-A817-7183411D79E2

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbus

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchSmbusDxe.efi

+  DXE_DEPEX|PchSmbusDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x82B0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x82B8

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmbusHcProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiSmbusArpMapGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.depex
new file mode 100644
index 0000000000000000000000000000000000000000..a04bdfab3e6c26c51e1b877ec289d7ea324cfbea
GIT binary patch
literal 72
zcmV-O0Jr}Fx4+Ev;P(ATozxJh@le5$0=s^2FB(eJ5t=vvkS9OEO#=4tqZ3Ld@ILb3
e-o+9$FEj#lD{#ULfH6UbMvt|)oaC$n0|N*&`XM<0

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c0defd06e06324f081ebe9a7f826c27d0068d86c
GIT binary patch
literal 53760
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
V524Xvd7nkcf++d-=bxm3{|oWA-U9#t

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.inf
new file mode 100644
index 0000000..75577cb
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.inf
@@ -0,0 +1,181 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmiDispatcher.inf

+#

+#  Abstract:

+#

+#    Component description file for the Pch SMI Dispatch Handlers module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmiDispatcher

+  FILE_GUID                  = 6BE18C9C-BF61-499e-88EC-5CD57430460C

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchSmmDispatcher

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchSmiDispatcher.efi

+  SMM_DEPEX|PchSmiDispatcher.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xB020

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xB028

+

+

+[Protocols.X64]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiSmmPowerButtonDispatch2ProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b1e827522e2745ae4ef4fb672c175618e3e83974
GIT binary patch
literal 50688
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
Tf&1kept%|G|M&S{tAYOm77uDB

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.inf
new file mode 100644
index 0000000..3beb231
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.inf
@@ -0,0 +1,258 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiRuntime.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI Runtime driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiRuntime

+  FILE_GUID                  = C194C6EA-B68C-4981-B64B-9BD271474B20

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchSpiRuntime.efi

+  DXE_DEPEX|PchSpiRuntime.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xBA20

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xBA28

+

+

+[Protocols.X64]

+  gEfiSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/DxeRuntimePciLibPciExpress/DxeRuntimePciLibPciExpress.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.depex
new file mode 100644
index 0000000..6fa9e99
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.depex
@@ -0,0 +1 @@
+�������G����P����J&�>����4/4t+p��1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7f25a851dc624793b8c9336c0f77f6ef03d6b90e
GIT binary patch
literal 54272
zcmeIb3wTu3)jxa^G7v6tqKM-CAc+owI9#+rMJEvOV1ot{F)G#sl8^`_F_}QHP=g7U
zFr=Wht=3Cv)f%f+yi_3GlA;(aRiw6RwQXo^d(y!c@7SvOe!qR2Gcy4%|M&Uc_y2wG
zJkQMDXYIAuZLhud<?M52_T|=B{&arjn*Vhb3uahW*$o5Z2=2E|wuh!3W?4T4c$_Q>
z9f35{gT{QS=UQj&6w6AJ7eh7db5bwaB-H(uHOwnsW{On_q}{JuR#6i2R|kv_mp6t{
zecnCzp+MAK>4BX1*p^i}zOJk^Txwah#{txd@A3Hl3}4SDWLeI5iDtb<8};DJbO*kk
zPsp;m$Ja_kp(Av)((&!~AR!yFtZCyLC0+^4Ygzaqz1_^mJ|W`Ol`pAT2tf&ktpwhl
z7!GqG;Kf7!_v))!V2;!LY>)fG>1guiXYI=_cUq5eT1(TN)~ZaWb;U@h^%^_BwKS05
zS{2N1y(TBWbw$W&o#Xf)ysY3o|8>_C<7Y+XdwKrravS;Ex)y>kbK@;4b8EZG{CKO%
z+(-8y&cm;%%r+MpXF_M+pLaQtW1I;1N5DS<{t@txfPV!1Bj6ud5%NDc2fS;@yGHP?
z5xi?O?;6d!M)R)GylXV?8qK>#@^0PTSL*D-=h8Wl!)blVX?@x0>K))T|9Q}R&i$<~
zzxT7^tG1(j-lb0K?@)eGTmHa4XUb<z>w$XTtSKMYXXdwd&1&u$#9Hq;_e2Nhx4w8`
z+sZ+GpQ7NsyFa<=8?3(Ty^SJaR(vkaZx!sm{la@cb6R%`9=ePv*u6v)lsotLgWxIe
zuXxvg;@R!`cf$4U#oKo|t@&B$PV>GTCz78Pa_>k-W3=XF*-rDyEZbUnxDy%i!Ha;2
z(!cwd6Q$4Qux?QnJVg;`o;vA4G-dcCVmOhEQ*brKNw4=iTaN)8pQhe-@#{p2vK&b-
zicA0FzF`kp)|yU#%iXxlZ_CRHIBg?Jeyx}~5#LG((6^CJB}8){n8a$GYdXVMNikPl
z>ON^;r*8vdllzhZ9F;FbZW}S|=awZ42TruCNg&Yh8}Zwf-{w0Sg&p4_kG71_$h$w$
zI2))CWXjn6Szn*i>J)o4=tX$<*lU&FQ??Bu*ki3-3HEZYnV=PV1FRAiiW-<w=raQ_
z3Z3(SR_IL7N>FGf3OjB`6ouq_kau6!I8ewm!JD8etvb)pk6E?Cz?2Xx48RES`2AXl
z&A}ugx=`5hBPqme3X$KR5R=eWQV7bJXo<ZBri6Ik0E`e5j1Xg!g*cZ&{6q@TjlBE3
z#_?L>_eKcHm?*@215-lO7=RJt0gR>6zkYf~k|nmFu;U&n#B>TVtv?|Ke@$D0GA0V~
zs(~pX{$T({h*OOaqmqS~NFmy#5KklTKBaNImZ&sBP{u?d<{Fq1qTB$C5I?z3TjKWd
zNtXCI3OnwXLQJ6$IsFOo#!PJq%9tp`uMJEI(PIEch!czuM<)vrpb!sAAs$2CeN^LY
za4Q|ndYYjc>l1SgOzUp|hV@U{jsB-6>yN^Yhn4<honu&gI_6&rv=C3BI7xp4)A}2L
z5#j_R#L>w@1SrH~N`K_tM>Wm{Oa^kc$H#V$T+vIkT-k<Y%s6Knn3Bse03+9$d$n<{
z8<%99jVSDRUCMPl<vK1VS1f9sXFPNhiW7~q*}#+#+YP`7VHqL*JvK>*p%mgxDZ~$u
zcfYR%^>&k65dmb>qKt_`j5RPN#CZl_g!tx9wIv#og}4EQ9e<KS96=!tj|ssR;&>v5
z-T+6zptWj<(>(Q==P`t>8pd%a=(PGC#-;Q8FZ=MpFmOMv+-pbUrwX*B#3xPaY(9_@
z9*H6FTyW`lPjcJ@?(UDYR4>6N0`Wc(aJB-IpC<5`MLumA7m~p}AAlLgRt)k*Sz=xh
zbY}z4iFCWOAc(sUWRsXbLv>TJG60#;WPWmtdBoSd0|inB=sc-2UX~mP-v`zm-C(nA
zpy1`3hbnyq1>Vtlh!~E0K^?@V?m`W#0n?MgNbzavZNsmif$7UbROJ-d3i-R3e;0*b
zVuJ*+=zL62no;gFcVgC>(I~QA=`$wn%#U<pB6HnyB;nhNq;I1`<Hn{}t4=_TnXD1<
z-AjamVrT0h$^vPksgpWISKKA0XU}8WMR+tr&MEpjV}u6Q&vn{-PhtMVd6gYWTMN4X
zq{#-X?nE7!bdxA7LgBC*F{gW36s}`oexy5BG^G=Hc^g+|?&NQP&8>>Jp5D19&rq$_
zFw4E@G~I#$IpCEVz~Rt&`aRmO?+B>Q^_rNS>~OXY00(@UdOyW4RS7xITLpy$vs6Bm
z&SH7dmeGbQOu1lLBDQ5*a=5t0+CW~Pd4#yOVZigYBkL<_@}qLMTX3pn(a^xNvn@>A
z&={P<I<3MYZsi!Q!P$~l^VUu>4i6WX+gQb!vX-z0_KnT3U&m#*f)MW`?>1}A9&?X3
zw6e&qxhJ*xK&t3bC&LgOuqJCg&04c{trt||=EJ^NW#wg!Tx%xNtM{!%760QcS)B7W
zA4p#bCpC84fi`mQ10C6grZ|z7tc_%`x^X}47(Nx^zD#lH&R{%)j9-C03?|q$MlrQl
z6`Nhm;sK)Ojm*`;*&H%-FdLswNC=ReG(wOGesUQ0128A%kDZeHaLSBHo$GEE(mIj#
zLK^qBOdz9XC4*C?wQ>-W`F-qesLW4O?<eRDU^zd#50_m%X}~TM*A@U>ZhBWwDnKQu
zSR$4Yrs8%~gdAcI1tJuXN=dVuJ_RuUx4S_NfFd+^*?{gySEMthPJUJ~qh?GUFbIC0
zD!cv3sucG%q()1@rdUW%->UULJ}YoeSHnaBRXXT`F(^1j7NDdH7FRV+JEtq0L2;Wq
z(;-YzbPzR4iTZj^MXdBcjtj(6ui2iH`jvq|QCnVmnnynve-lc-yoztbw%*o4kZBR5
znsfRZhQ-<}`gInxlZWCJ8Qh8$yM#roYy`1Bq1}3c)taISp{x(hs;jl8paZOamX5wX
z$^9$QzI6Xaq>1i739wjuqTP*qa%V}nCusKPo}@<hwMgAhGH?NV7t=k9EiBw(J#07X
z%ZRwRGiCM4w35P^c?DrF#)BS=foP+&5{{u>jP)Ljp#}q%)crWRRI@<qr<K4seGFIy
zaD@U4B?wnjsn9ZSm9tsc*BR*)HMo@q*YG0H!vunV3usc=CeTo}rd79lqYR@9&CKRZ
zH1iP1=}ynmQRZCTj3&yQhA6Xm6Qax#kVTaF(~nT0dNfTeJ;!Nn$!Y@S=#d5@0*!<c
z#!|L{3OtdfP6enGom$%m6!WthVZ)TM%?AcH3_<J92ci{CXAazjKM>-yL4D&7EQ#}n
z6p$6+DsLSsB4By_*!{;)DNQXsqSjiK=T<@+8D!Nc_e}%fD7OY0%h7MksDx1t%~0F>
zJPiZUE8Y63ijco$vj8$I`Zhzp+^r0%9Rr#$+F;ar@B~&7rH@g1fWB>ufvgD7qHGJT
zBHY5iW>F#`?)(};<;jH3^AN&b6@6d0emI*+N;tqIH9VHdfbe)GY2gV>eBsH_vtet*
z+jJ`$l(|eRdWy{1R`ht83t7=4WUfiJ4kL8RA=<G7<r1?5>WHX~`VOH^TRz)T#cGza
zVMVNtYsZqrc075AMAhw>>uwsA(2kE90Ne2ocj$Kf*Gc`fqnL-SewLj@%(*?o^j5&!
z6AdxZNjfR19*WsXW`ew)Rd?Ku3bSlr!2Ja#I>{!~kex(8R3{<SbR1}2Dg7eWNub}8
zS>3?0!lPtab7vrTE9G<|H;WSb&(LE)9g&GMJA9gYholn$4vHCT8Zj<|ulTogW?M~i
z8?FUtu48MPEtCs{`R-)~G*P<!5(7AH)>e#>{4~L!ci*ZFdgqDCpf8H)-;*%M2AH5@
zAf!Rexc@eAI$Ik(;us>m<%2vzR&)%4#NBS-SPzhZAK?auRK>RuydS}`r`x?83VVPA
zjRv0fLJUagk|LUP^`vi0K|N>jPSlVl^FN+HWWdlaF*-Y|yKY9Yf6H$7))*&(Nc3cY
zM4Xz`S%LN`iVi_kDfp~&Eq*~BQT#x<zij{*h%09?*9Tx7$x8{M)z^Xy8jwj!_**KM
z8uqK)fbf*w?~^$xz1$-v=B;vSwXPe^Lw$eKgJ$z@!8Bkfra3~0-tTzoAXr$aLxDvd
zX8NfUy;3uwF;IanBq}h|Uxjh1!la$RzFlK8(+_s<UpbW)4(AgZZ7Iqsq5)^%Hk1cW
z(2Hnc*t8@aKc)Oxz@GxEf7|}lYg;rN;ssWmwNBgmA+i?~WmT>#N}cR}9b{!ApaD?c
zk|N8y-NB|rH&64*lyeXBuXz^AFci^-99G1<SWFuQ1VurVBu_JnD8zcvx7}NOsH;Xn
zcGf1=SS6-b%=R`R_G`DKd}$a6g>Q;!<XO5XC9a4Q$>VfUYFrVglHQ(fgT7STtK5L_
zY01Dr;StF|e?vN58V+5OT$pJJOOp#NQ@EgaTCDkZLu)qkqv)d9edzaHJ;N~3fr;8#
z0uwQ{!Xup3D!acgCCmwNaZ2=9<trpIX%ETl0vVQpCYsgFIE(6HSKr@q6XHug29Wvr
zZ7o@ximfZcL{YcP+IQiQiS6QVyGXfHF(y?u??cQ-tx{8K9=A1At>_W4iJXR+7WTKL
zfzm<!c2z~Py@oWLfetdixjO}sWPW@(u2Lo=R6)o2?B~RY+VMDa+SG=jk_OjN^P@Lt
z9}(7(0T0us@JJ2!1VT=$xCVg$nWFMJ8Y!-F!9gk)XwK=ZOgb<Vt*%;(eTnV$<k4t$
z3=x>M`deB6bpMPNlrt<d%DiVlYLpo$x+t1896!pO_gy{8<cv%jWyT=VbUYwOnHk>$
zr&lzNca-U)4Bs#ePr_tpzFh8$`kQ5aAM4+&>%XLw>PB5e8*Kk{yVIc<8w8#c)^19r
zF{Vf}bh|cC;7$vSJJr7*b0_0EtIl@c1EaV}=RhMLCoAm`W*bO1xzj*VjH-HT1%|J6
ze4n5Y%kf9vqhOD7dql#yn5gLJ`wzjxheM;EzTMX+)?iyv1N&)mFVS%?G6GCu)dDk_
z$-?Np0%J(WU!+~$MgzDjA%#Rk+XteD$-LT82=FQ(=55Rco!IQfCcxHHkl!5%rOgy1
zj3tepPDJMz#EK5gE+G9VrIe|C3u+rIVthM}99Kw~PVl2Q)tv2lYq9T=htQU^@8ZrD
ztx1RLe{ZD$dUxbv7{Cms_a@k&@hI|Fn<+3uW%AyNn!Ta0mXhMfEOtsnq`-huObI=^
zKC3c#u?awICvgi1X6L7=mp2dC#^}OwO5kq8;zf83cM7z!y{!_D(Nf{v*e_lw@NzdF
zn6&5Nkb4#K*-hvfkX0-?nmdD7aCW;BVRpcZA%1al&u7T8t7F@O#pnn?S*Tj3M7km6
z>vms2Q&JJS8Ekqc^;Za@txyM&H}?$V#K}{byE#od@jD;@>%NBiVCvA)Vj#gq2zhoy
zWOE4bL|(YtI>`?t1ITU$7+E`So!phk18fsuiF;Pl*{Gl;7NlB<&nV@TcqK$9R|s58
z7D!1iprjs~6r<+F+_40(QSWx_+GX4hJ}B<JGj=!#@nQ}$pbI$&VG|n4W`9QLx4Dx=
zC`j4<4)-LH$A0d%1H<5gy_vKk@SA%E_&x!|xrJhX3t+jAEA|=lPzlF6%nGJ?pW|M|
zz9Md>_tV|iZG@|TC|&)t4dBy;$U$wyDmy2kyQ2x%4q$?w9^c&&3G%Z7?$zTJGk**3
zOarNedLZuFDdCfuq=pwU8Q^bu0E#o4=5P5Yvb|@a0?FcTM`tmWTMEl!IO#hH`%QhF
zaw-8Xn5n_<L?h-?kXAaL6S17JU1FYq;@(sbEfK*-kydO*0y4FV4A}{k&tS`gu<Lz9
zu#mEex$VnDJ}5nb^5DVgMa#9KWmL4~ki-N^=^==XB(YlTvhyP?6U!qK0mg070o_hS
zSf~=3N6&=mOL%t#brHP8zG-??ob7;3n>GtlN!8$M&UW~Bf3cNQJNF&fS$dm@t%8hR
zEOX!b7_479n$sXB_WrSd?H(_>kL<#tYs%OvDkkq+OHE_36~RIVTj2w0@}`54UXj&e
zMRqQo))YWp$MLKZ{({Xy#E+2ZVTfTv&4Aqya!)iWd2Xe>6M-IWQjg~_2XKqfKw`9h
z$rHy9V1a<>Kbd|WJS;qmi7z~ji4{JFNm_U^lY!yWnWTqLVRCqwGnHUwcqEfyVeI5X
zU^io|vTcKpL{p%FSSHeJIKCp6oV>u~7A=>DczHlH<IPz;B3&;6rTg-KxbG|jsId`d
zn8DPBIhdlePD;ZCsO_p+YeiZF9~%3z6M2D4=_Z2uUT{9z6WQYocp;B>Ur@F_Yd;Fy
z<>@p=@5itY8Fd4OIrj(<CrNAB(B~y_UKl=c&Q^@IIcGG^>b=--?sLxRS~e0*UF;(;
zo1n3{g04Byp^5@8q@mu@_iGxClQ9!_Yj}Gim?Ab8b3nq1o(e!tsE)ghIUxd$0{xuk
zo&#)ul_g0k@EXbiE(Y$o$YQw)gme2kQGPB_abM!xdT!pHi-y835l`Q=<qyfErD%|K
zN2a>>Vq_+U5D_cR6qI(mRe(kxp%)iB+#*I~qi;5MrAKzVyBOzDgzL_9VqXCOHJZ!`
z_HGs9SejPRkp|Rm_hrzNRpgF|s5TD3qy|T)$btMNFhhwI&Sa7j9?oPy_^9ZKP_;;?
zI-5CRvFXgANv-G<UFxPBrhGE&=^SYhbdFT`K00}OEBxVW=wGsP#N5H(@@<gf^=_oF
zE?c6^0)4UXTSn&4y{M~aB%-o42qdfn7#NR&fpYqGcJ0lCYgp%7L%aNsuNRY#uD!zm
zs<jlT6BWAl4h0C_IJ9dhsH6H|Y2eje8&M1!SF!<cXD3dKN+U)ku=)|>i*l^&hvSFb
zzZ9)1nux8|3{Wp80x*AYK=?2wgQUy)8-~gKr-EKsQXpW(OoY^iVPbQc`$7fL8iEFg
zk7qI@Jc7wkNobfv&j9*BP>|>$_X6QdoiMzo<&H(0bmYmF`zP}5Dws!yHB5f^Y3dyn
z?|B1-=UqBj7%Hc)8`GO?Gz=&F+`K9n+J$wm_UnP%Z5s<*?bripfXC59xtmk4fSSx8
zvKegL9r#I}^4=q$x=S|9fYThjOP&fdCv><2gCM5pq_S(SO&bz@4rn5D=s^+|<un*D
z8PL?&iScDW*s}x$3}s_EX_K)`2RHw>PeXha3$J!y@JOba59&o&rMnX??wOU<#x26$
zzX7fAL)i+I$h#jYdtuIkXdq{0*xr@5b;TIyu%v)C#ZOZw7!wd;uxLaRb5B1=k4HM0
zoq1~}e&`DJR+wJovWzzcqT`9ru1<U#sVTF?Dup$(#2x~30p5iv?mTs{xE+%Nbajd$
z$C0NPU`PfygvlI#^UEm4Wsn{b(z6om84Z+TjKi(1tZ}1dkXwV*Fzh6i7|RlyE|rB&
zk0da(3p7Beh=e#at=sLM4?5A)J|C5Sco%R5J5sYpcVUpqG}l?Y4i9H&Xo3{D0oX8b
zVrTT|XxiqK=;7PYfVdxaGCJ-Nh}#o8F*T};zkkrYFF+lGu0zyUVQ1OmSl43ck^2yX
zZ$MLzLpefa2J-GOpotFmqUUtY_B|K^n{h(Nb0)~WA)a7R5<IX51hXZ<VI=qj99|N1
zi%gAE*dRfNN1CA{&p%{RkW*#7S3tvU*7dpt=eSixKxrV(+XQ=8Q@@XZ@6k_*vzOwW
zDapP~vg0(_7v1Mfjq%R&oiJjbGnP`pXXq)*C{_x^!oDBv^K;hUH&Ch5>9Nn~n0>^(
z=44?*R)Z4u=M?rr!+HWO5pw#vo#(rx2=pjUH^BV~N>6_V_das3*4&?R2OW|`jwT`O
zIz^Irk|f3&66BmiRf7%UtWhv}Bu_GjJc?cYvTpba@2XDu)h_g86=ZYRBX&!7%i#76
zy`{f8w|MG|j@1z-@>plBXYr`mJO_GcSuS3|W}V{ls^+q5S3h-b^wb$`>f9BplN1vb
zv*Ngl<Qa<bTo|k0pKi6RD+e8~J)Y9F`m1xUr;f)St-6j_Qukx~-9SK)${C6Vizt&E
z&xN$?rsnM4NI!0e*!$L|WvxrgLg7gCVPh|raSJ~4pZqa<bUE(N5PM~35<NA9o|>Y2
z>SxVxN_Y~TGPMOB^*Y#!9^OrQp^CRfTxT3Zq~Srrc)i`(@x&Ph4Dlb6_+66tJ;=K&
z<A?`IHK*cVA`z<UAuY${HbR2T1GLOP1gVZLN%kU=&5k1*dYdB=d|wJ2XKwe-c)AqV
z(49uQf0A@RydHFajb@42BFG;0Fa9LR`UrZY==kfzzLEPAT%!q;y-fSyU|ztzLE#41
z!T;B$yUQf5Bx%|i`h#_X{>H3-hHM=_kaFHhIkSzN?kQRp{}wqSyGH`zX}-kvYl~+T
z*M2L=Xp3ZYCK)}6{w@vTK7~jo;yy>aoQl?T_kKWPP3h6)w0IWuKV$RpWbvwGv1c_{
zToz+-xndEDaLdkiFT}NJ)?M-Kx&zfb_KIuQ7eKe;BgvzhJU&2Psqx|0lo}XYbD+fE
zaBZ5HXDI{jdozKe$4ed1#K<7F$(+^uxCV6dj0B^(;OF5@IfyO<%Z`gB`x@lkWt#o3
z+yR)`a<#iYD+GLJbT@ZZFmXtY&T`sXaIy<P>Yfkr@Y5p5c8IlX8z%#A%mM=DOEyTN
z3lkI&8ts-BS2zH#ewG4q?wB~9t==cjn1XJJ;)MB63+|suwuqu}GGyHHL*6O#^)^8x
zEkww@lR|)Z$bA5VtAhY0F8*`@o5WZ2O-y%sGBGn4<mN%PC?-L^^99fb(C1E~z^k97
zB$N?09|?>T1V#!l2JT49N{Oc7*V0i>;e328Nv9qJN8O_s8S&i*JdS3zF>rrG$ve)e
zgnQ$-@<eFumSa4Z4t6q51D^<xY~2s8gDoZr>t_sxUEEu62U9o~o={_~X!ZU1R)D!4
zkJWz>AXz^fbvn>R8Gv_!mRp=qKN2bdjh~XnUKGV>++=8cOc~%wq_KuHjx;o|bTDIx
z_FY&nC+0K|(s96q_b_d2{<mce0pY%l!XY^ycds^V#nJtMg(s-4H86Exz0Cl`fpu&l
zjd)?XzWem-C(0(VC#Zgl!j8#O<~fwP<Wq&S!TlInsV8D6Hg%<?>Zzrg{hh=b<8_S}
z!R&jt=r)Ezc3(ld`>3J977L?X(kUdJb0p_izXdvf)6(q{)=GR<%@I$T3Cmc5iSHOB
zF$3A|EW;`GY{O*+rVO;i0L+R0`w$7XL69c*F0sl($B!B4F%)*73$al<DdzcF%nfY3
zAWC>!$7w6#q6O<0x?7;H09*DjfcpzzOB;@Hw)%(+KAa!gVut=SD0W-~7^p8G^}Skx
z=j6QaWf22>FG5wf%Fv=EJB%f_k;oiL<OCAAT@%@rAMt&c#yW^}M;nSUi=Ap<%3^05
zfU(%}25qrx{+;Af*Q2n5`%KX3JF6g0h8AZ7Z)(A2+iaG8^bR`I+dtqKfX;y}=%jw1
z@hVDP-bnEFA9?>}r1Lx?5kAqOP6V?sE=rL^e7B*FGbJsn{sL!l8e&Z(<3>WTHI^>y
zUU#~LFCNCi5n)-FnvQ%W^8@m*$HxY$=bA7r`eU&S<P=ZJr{Y<T=%}35v!Oy@{KN0T
z9p$qNVl9OZIykO>qZf%sK+Kp7UxC+%XCK^6Tq>Cuq3$sW((YgrvyRfd#tUA>!pC?F
zO-hh1pkmv=cF#e}NY9J4?bi)Vwe2?yz_jgc^}21pcOa>4e~QA6-(vEHwtWOcgFE44
z9WIn|$*~(71tCc4yZ&b2-vj(u?5qYzMuQP6LHG<@f$$jQ-Pbg884b8hKJ+sc5#KSO
zhK&;T3)z6PoyBO!k#K>}zRRN4O)MJF&C$JW#MJ_Z^Gj#yIm>Yd|3wczJSP)=aHEb&
z34WU6egILWPJwM9aB$O&lDzv*J4txnN6J|0?!P;hjn3fC_!_Xn-*oRwr1hi$kk*}s
z)`1TbXw?`*CB^jyz?!$4nolRx#HK#)>&X*?!=0`97f=8Cw5!gVj3zrD7R9|A1)4Mw
zpm8*Eo9}x!B5C!Vf~(wZ+;_r!<Zw|m;)t7Q>x_s<d@V@&3dDH=+r1YCNc71q2Bv)S
z1p_cXIp`YglPOyGScE<Tg&myC!FB$LDTaH8#@VpLcO=-SxP^w~8L}lR41ik##cb`i
z5uC@!;@fa+NK77H7QfH9M;LrXAlm>);M>@S0|D0%xIB@-%aAF~N8U03w$5iOG;3Se
z^qdgUfg`SO<+!U12_@7<0~m?GUnhlXHbOmz(<@%BFunT_IK1!hBFu-UpTs~mVh$@t
zGF}jgZ#xpxfPaH@i4FLnfvE-@Y{W1PII~7KU`PuQYrr`u?7)FrHsI+ng!`t(+2G!4
zh%2vtzyN5sKN`Ea@5T2A-CH@!a<^jylH+l<sqUTA{0U?_9+nc^-v|jV*Al#_W<F_?
zI-|JFfN+9nmTqF5K7aFl-I3jAQBzt-FbK%-_ER$0DH&Wy1|Ms2u_eg<j~lw2FX#uw
z)TJyFvjyy-lX<g?sVq0taD~+sZy|}(i{0*^2|A3aji<EeqiSSLTyHe*t9028aSmB%
z05t3fW7rKicqhC@J0wC?Eg!i;+Gu%is}{OZXeEhGlpX0a1Hd^jtUvi_V!Ocx5+kU|
ztJB7wJFSzjr@^7E*8MJKwNxAHbMCT+3*FU*u;O&H0f5tyF-~E_X~#QC5yMHN_3q?|
zhDBBr>fx51AHP`54B`9^kx|~f3L+Cj>T-uU3%RQ}0Pi8d-90=v*nv$zYtl~41U9y@
z%V52LeI)l$DCp@jAx_)38<^@czcT>QWkN8~@Flv-WN5)-UFJj-b{xUEVOz$(8{kj(
zX&gKWyfO<+3f*rQn#x4i7ywL!yAS-ZG3G4Sjd9ohL=$PW-k+lNIOWOdz*^QkuldvU
zX3i6GcS43lO<y-KrRhEcFq)28tTi32`NuS!jKU6EYMMz+pV2r<Q-9l?5UBsw6Sqag
zt;fk!)*z|Yn~c`uIvGCZpxIuJP?<_M+lZ(Pmtz3&h8xL+LkNW3tN(RS!!3pE`P#S8
zSsMjAH_!{0Mkmg3wuu4v;^I7q4`m4_?@Z4XH*?szYk4p2->$}ntc`fM5|bKYM%HIF
zfj<DY1Uw%K;2N5WQtH*}1l>Z|Ot#F|rMwjeAmR%86(b4uUYy7*o7;aNhpYU^EWE{~
z6Fzb!OfRcm_fMtjFGN(h%l#qdkaYC|w;NWFY((rUkg@M)VYJ}+vIQ@yhp|4@6h!PJ
zZ?F}uP~Z+81BAN`ow1VV76Uj^4pDc4rYzboPDEnK_FEy&b`kP$(<Wi8oMR}caiq)u
z815c7^fqaFo^Thk!s3jigDtbq7#RxP6jNRK$dLvRAL-T`$}=@(6Mu9-?0rl$8Mkik
z!_<++)T2{@`vX`@8dY)nnE`+kZq@U{ZhW%g^ya=qZ`5ef+4Kz2xb%#GJH-%Frp`A2
zW$Is{$)u^*XtG{YW0{WqEN+WI>X8Xne*-E@*_GA*X#li(yCHp=CLM3}Oa`+8D~tgb
zk2F~gg>I`MpsaDb0mR!qY-qn2O|*uwdn3IPjvjI+V6yDBd!c)hA*?t}G=O-!4>6p|
zk~nF*_Z}uV@rEhbIr<JM``MISyS~tU7zT)I<!225+|0%S=J9p9IX?VHqFx%UcN1K~
zJ=;(?!*eSRflhJ_io0Q}Ku*6>;$h6g+!C$BGs;s!7~`-v#k*J#UQITxehaSz_!Ov8
zX5~AXhNJSGe{tR(qA;_xu*trY>^65B!pd#77y#X7ura}V2%?E|6LeP5c^o{?Al;`y
zxRGOpuTa;8?lePCHSQ$_5bs96HX3|e^Gfc%e=u(J4@@uP-RLza9@nr@1BiE{g@)4!
zNt}!u)sqwY0+bQ2ix6x5K(t=BRY2YMK~K5L@KGw(82}jLt}#E18~>=)jdV9g8DUPN
zqDJfeH;^?G^m4UiEwKD8Yg9>rbS#b^Q_|~8iR=MkPya=z6=#XP1`zM!ml=VECkdoo
zJh~)_fe<f05<+wnA+8`ui30A^d*Q2d3@_!YWd@*p^)FnagrJOj$KRD15`8rm-S9FC
z>_;3V?m6x=kXx$i9SHYwopTG#)s}G&``Y`O(Ti?de2o%0biTwIx5^sztntfOjVt17
z)XEx9vBnQ&ja=5)Xlgi|y$R>!ZH!8G=n{75;%$6qALc(huQ!vqp!*5xNfpHQ5#CgC
zsXNTDRFk=r3_wigg7BvKr7$D-H@Wlvrpy?d%q>D;$GuXzyQ(4GyBcQ$#i^w@m<x!9
z!hB~_oQ>_ohQ9^ftNW4YS_4xOwHbhs=!Ft3(X)R|lIXW6?08g4bT}m{F%nS@2;+NX
zwU`#tt9XA98<kj722ilN38MKz>g5&ne-Q=~H$ob+{abu{psYBQ-`t&w<#ZvjS9cMe
z$5cK6x|pkAXG`C2EoRq7)BAe=1&Ov1)!jWB%Q`$|!PEV*d%&Eo-NK3CoIm&V@ty{6
zU%^U{S2c3bsY3f!q+m(1XImK+#D1&L2(KSVA#O<S#)jBhDPlJky*d#V`6W>?@!|dy
z9?AguAUD^XWfzOPnMROq^fHei=zA0dn8EsEWNkd=23UZ{GC(pAO^qsYxXOv%0n-+v
zQ)yekz+|N!cfA^F(h63H&r;*3Ay<}*2eL6IG!IeRJ&3@fs!z_Uy4{aadFti&?Dsbe
z#E$NeXc|uZq(xK3zHV$^G2(j|d*_bNQti1NwJ0ZL&V~o@4GE$F1c0wa;8hl_kTvy&
zCWs_%q}x-E_v2}}tA%x@p1}M!Wd20v=gRy^%+GY6z%VL1Sy1+w7Y*PTfygtsZ6j>6
z6igLfgW2wG5vQMqCaIfK)OG~@62rUi8VI8{6fho$h7(%?foREAh%Ma+r;Se@0OUL%
zb4MeRaW<<BNXZp%JK!Ay1k!G|=}p?xcLEFLt^}IacbKZx+zA?32Dj$=Xmqes{evB+
z7k7C4TSCKd%HO$#%ZP~YcK|t&Oa#E2d1qiDCe3sP+ijD*2XpJ#ZuK1oraJd#0}!3t
zhH2iOuRHhO;ef&@v2b$$h4R%vZ5c;m9qBfsO$E+|4s;C0;S7qg8+!**jDdzjOpK!p
zOo=hZ0E`$FMvRhVF|MH)zmojgt_HtPG|mQ?WIMbrSB%HvmTku3mB6?Vvv4U<n4X{T
z-ozFIQxg5a0E|ShT%ir~B6>uEVg7`|j^9a%{!;~hR~w16Vcz;Cz+13mAjNna2#I2R
zYG6u?%w#cU8!;|O7NeMAye`EEQ;ff89IWket0Xqwau+Xl|F03U!E(pIQl9&NbamTW
zl^W$;prvS6|Kp(}(N#vcZ{ZFWV3z^5BXnenJ0JG|b)QLIwlK7x1ypB>?^GlW-1@t4
z(w<2>-6h=R178+4<FH>=?$(i%J~HAnh=MNE$F{rZb%FIB@;gF@;gGD)WofJLbtF3E
zi+dS}TjGA^T5Qp}?_vK<+IlstkZ9{04NTekZUZn)zV|ZS<Zt{jsmb@Du!E;M;PmO0
z;J5rwx-US&^B`Izlqrt<`zBCa(Mexg0mP><HI{<8sFEny0RvNl4NVrzF@jA?7Oaqh
zl}W*B7J=U%HI8%wecvbIyA{p8BQydLN?Cm^{h%%57)m+PNIA_&6zjut4NOT{ZUDx7
zKPlGcyZsMI=KDDcJ61|5cUFL3j*(LLn41~_USlHK6F^8b)~^gqi9uZ@k`d!LBgTki
zF;1Zv*GVy^QH+N*4ns*J{0IhubISXS{rmP@V4-XH(KSv-rRlg7TiOie8E4|EH8<0}
zl3gU?J4I0Rr?@LVqe(!R17=*mZ0xY`h7&ZyY1IFk;dFH#ctmduS^hQc5O!-HK7<yF
zhgjsB%P=iL5&Q8RR8)5ua@-au<S|<g=bbkjm@?bF1|ZCqgMr|!dAjxf_(oFe{R@R1
zFG#ZuEr*!bVpNj@!4BWM*#1N><?@z-i{qMFr+FxIKR80_l;i##)e?pK$iS3vLz0EN
zzzCO{EZkfQ_mUK@8Z$Nb4;p7f$4FrzZcr4w0uy2eUn069-&EJ;dlNfv9bBTp`en;d
zbFmo6d_hWmj**L}1&#+ut`G{rqT>z8u5Td_t2Mh_G(rf0Du@PQv@H<P>3UE`E8UMI
z7Hu&T=1%;oLAZN(gSa28&Oa28NI_pF#q=VT0*QydgK#@mnj<QWXcNT6grC(4(i7{A
z0Ummo@UU*~|N0M?ts&;54m_+hRZ8m!Yw0%$PNul>ZhVe=22@OJxAP55wcA_+Fiy3h
zNIO+4f_lOr`a=|U^hrZLz5tSC|32nacS6(@x{{-XA4=hWmZ@Fob|5E;^nigWk)AOC
zBhn{@TBHwOOA=`iMH&Emz#&Fcq?@$ZF;{Y2-=4lcc+asA2p#9u|Io2ACWmnq@qLP<
zZ(}EYiVf&~00N0(`ixXc%#j9Q#Jt3ad2zCsB`EATOp3X(6k<j-&IZVJH6>{qalVvm
zWxbHAJVCB2`;lv@fhoC~48X|s)Ld=8Ew3h-uN#FOBcxn!l|ZgSBNx3In=QT*U^K}1
zH%iqu;u+iphV4R9#x5jY+igSbMBD8&FeT%g24G}7#>hB4S;j2NI7-SGqKpq|oDCvA
zHzvmC9QP8#;;d~Uw5(fc04L=~GA^tWDlG&tsI(G^#QOg4l!5TtLv-4$h$6oODz<#S
zjbDrvJ8=b<xd};Mfq0C?cAtYZ9-T2CyVU)yfhnC`0}wjfV4FQhx64VIZEPMNL}ABt
zsdN5SP~ZuTgDJw)SyHIKuqQT8oi4Aw3lY&yXW>c&u}iSK23b#}tj4`<_b4MtY_4#M
zfhlpP7=RIXS%DU}_P0rHv>JsS1ybBQz5#KEdBt4^Nnk@I;3`}R0dK~p7X;+BSHK2T
zO|<7415*OtVgN?K-(IW*d<g?bLgeZ}VaF9xz)!A(fQz*fwCCVB0Y8CULclAefNvu4
z3it}DCJOkLfhhq$G5{msWFz4CWC72ofE7}}D=6R#8fOCzElh(5JhX5WT3k-PA{n$B
z%r}tIVdD?6%XX(2uCd0QWnfCQ`37J_yY(V%yYK!c$#!?6u%kwb);S-donb`dHiViB
zomhjCr|>wDl;k1cBpT@%15=XhF#scp-$*hzS(0NZ$u&}vvna_u8i%bo2@=4~c;^%*
z%fuB;b~rmpB;!)qmW1;4wZd9M4f~k2jx#VNBil+UVq{!ATU)Cf<4S_3Ekj{PgOu^6
zD<ETvk&)I?<NE%kDA_PrTWd9N60LQkfhkGuHUJ~Z-h3^|8!snGvJZtF%cUgglw`S<
zR>n=<$5O9$D25}Q4%3+Z4or1|m}t<JTlG{Hn?1hwp<Q!lDmFK81b{b6V{_V7P)W^c
z)gH{MMz<X-J&K7Fyju-SDfTM^5Q^~xZ@N(|HCeIYR7^aC)0T0@<xuQSjRVDcKNStm
zoiq;TTYn}ZH}*9v<ogzKc7#$hwgLyr3TQ4C0YH2{<O7U7Dytd~42IG(<keBQ5*t3a
zR}BNa2i`P5B;!-)ThW?}9X;Q>$a34qza`^0C?6|ca%Q98brfKw0YSvBnT@w+4CBK<
zCD`@N8t`)Dg~(1kBs~C6S^1mUw~ehsVlNEznn4fSm&)Rps(UOxbV)xJKMS@<wD?Q|
zQx?C>0F1@If1!4zjV~p+(vMNtv0b{-Q^m0OxZMhe7RMn1KDv-4*3xQH9CD}Z#7qJE
zUl5YEk+-|KlU9U%DMqY_uLEVYEoR`bEdm%6zUk{q;Yh}9D5ix;8wOub>;YmU*WtXn
z1U0h;;L%l-)uOC57khe~v&d~#?c1>v=d2V0@^m0aW~H+#w&=u$Ud9=K`M1m(=HT&b
zG{^F<LA>LLCpHQXM^3S}HI+}H#sIR+cn>)+cWbyHhXl4<jdBMERDO$6Y&6gt17br5
zur9#le#2GV1o{WI*JMa)gzY`8CnghX4NSG(Z3bWh!E26gy*<B9YQ4Xpuw%GbePr~_
z1HbAQb?foI2zP&i5GX$)hrNB=D>)83T~egK0y$Bn4-8C+l%6co3?tI{$s!d{q!Xn`
zODNJC8i%X;pIj|X*6ebDelxDvw#``L>sQeLX%)b7zbm{Fm(}v}FwEP|b1yOSsaK*_
z8USyn{tO(q!D*Y^yLTx|sJrmk_?iY{qa?8r*qqIDCu1W3unfSs)qv-xLhhzdm3g9v
ziR;Jyt**W8ug^`R@@_P<5*GIad|mRA!uop4MZog?95BXT(I3Wk<HRlpDInjB0<~Si
zKtczj=Z_WciyUx9)Uxt`AqXpWUZgvpr+qWBxV2P>T_53k?g_B4ryWHoKHb1nJBAFv
z1cp^JwXv4}D#^9hqOfDRY{$Ecz;C!V=!RVWv5Z($XLT^NLZX|vf768xASqD<xQP<o
zW?)L92MxeT6rG_Z`s)ix5`Bomj%F#*5tL}PmKt*eu}PG04^y=gpOi1b^I>9(2C%Gk
z-GF5MrU!3S8O1(7%JDzM8+Of|!vV6<?6$j9xq%w+_zJJVP!*r1XtjC7JjiGAP={~a
z=8J^H8;mMxgL43>Mf$bet;10%_Rxa+pY60wjH~FU&0WLAO$8jOa(@p5`bxmP8A6DK
z5N;-knA1GffuS*cKaXE53C_Wln9yEcP8ak221#sR!*&P2LY{UIL1(yusdhNU08G$X
zn5Wy}O2qnvc~CV9^+Pk)7or_L);Js7o6u~MAvbDngE(@d<|g2EoFxpAaS`i0r|V#&
z#uujavI*n&;{tB3A&A(^sf&0S{`NT_$Cr!2_4?+5+%iq>MfW$NQ|mu|=qq5%#ztR1
z`-kpZs3oQK60acfWpHs2{|Sj76C=J1#KoqXxw{+Wq*HDs?!vUo-1EzEZ-}QJlA`Yh
z#g4Nj^_xlkiEd@#7tI3}@>P>~=)04y6q1ogULYg@;(r=5V7#Yi>I}4n75<ugtl^a%
z@l60wJTy?p^V~lo!)cP?XfnJ|Gu#=yB^J~wHtyOEA2W}lIFYn0`PkqGP;VsOSC@FU
z#c}TjC6E2o8Mz8FJXf}L9T~p<yw=dIGc`t&b%D6`Kq*(V(o|V#Dl6TsEB(ryYARu}
zASyMcOJmlv)_JnlAl9nZwO()snOdT8apH=6N?GH4S>v~8X!l%QLzq8^5_BXof#m~O
zZS0>WR~ua@V7D#d(&I6Og#lKqiUQ43p8%e<td4cX8v;;0=r)76G!UBQhrkdwkwvrY
zr<WCwPFqGk1$lIbveM3oug0K`B0=$Hia-P3Lu%v2{7l5tz`Z|KaukqmAe<RP_OF@G
zeQHxV%p1iG%~OvQVqVPxBRnsR%)C(KG9tde<!YIK?LH0xjWWMB1+?mDDuWp@mAMW|
zxqo|3D<kgcItgbO18$WeHUW#LSZ@+BPjC^<HH3tJFA1MQ!fl%HQxp`lFrHi1XHCTg
z=6^U1n68RB$>Y%niGr!AxRAxTBQI_Nm_8eD_kg^|qgA+hayq0qMM}|0DF$gN#Hmj#
zpDaPj-0yeS^-CvAI&G3pBk4TztnL}24d6^dq8OcN{n8mnI-QbEkaU*E)1g<AkcfG4
z&!4*Q08=W+S9qzHd>juN`hg{z^iI|EUJ}7hpJWNTT*_z}z0ZESw;H<1F9i5tHpn+g
zaZ^aX8zY<;RJ!Gz6?rBShunC3a)t?mv<ZSAhGYMhG#*vWCdA>P3qD3rCk_HQd}It)
zDp=Z499rikhm*K_J0r=<R_8Bq{)4>o^n-UI+L4ny%_!sR$)qICc;FE{$t}RQzacQn
zC-kD-;)3B(jxSzY3x0Tw8eba_a9Y!{Fi;E0BEz!8`ITP^=WR`q<$3s5A&tN%F>t~~
z(2dgpt9dLj-8a?bM7VRM`)e~-0jUy9W8m}M?iK}w1@rI*Jq7)-f}-b8ES_m;7|y&n
z-x5lWF^~eYkJz{t5K_By#wkZIzAE9q(-l1aoeq5QgY2y0f4-y(CA>GlgR^M7cC%RD
zl=QRDP$gbd2VxG|rOP9}$FVb#7<UlRPr@hzUm6qf?ZqHPsyUedp(U}}6c0hjY`0te
zbYEZe)F>kN)<Yvc{3IeR`&;rD$r0p1)CR-TBfi>$)4`ji&`@}{ESZjtLb~ank6fe~
zqkZx);EePdMVLF}K8YC%-UCvAVq12AfoN?z%D2@OKw&(;j>YnB>K=0M1u`_@{t@0m
zuvT<g-)rZ<Osp>4*Z;URwGRb6KjnKAMZI_WFbVDC0U~GXeiSh`?s>i|4IiZWe$qh(
z+Y5O9M4UcH|HQlhJw!ukf~vn|bSfJK+_0!h!TW!B;0Chca&YtBle+f$hj#I_7+=P>
zdM^dRy8cK9KoAp7odeSN8`p04Lby6Y9Se%3hc|cPy{X;qgjhi%gF>-7fZE9JP`r$H
z^j^Sx2~GFj*>do|jeJBWY3@W+=ynH^1kP}2ee-lFjMVMApTw62xCN3Y-UxM0m$=P%
zHR%J05;Va%T`P|_SL4p<y6!Mj0axFmKvQ%DVP{b+?A-fLk7)QeuWq-H%pd2g|3Z)$
z?_<Ra55&v0LtSnfp*&MUTQzr1B>p*4Sp5AFU7)KsZ77$gA&ql9ar$uoO48&TOM)?)
zK}j<hqluW*?f#wkTkuL$(hO>vqApAvs;5Sau#y9@GKQeKBazEzZaLpv$XrOY!!(H$
zghc#jrV!Hn-X|EtaP^g31b$e82S)nnkk}4^L*jk-43KhujX;TiiyBy8A@zs&mAF&A
zHj`Ri1Ff*F1R3!E3cgo!M7JJEM9gEwD{92+8wL4jHc%cDC=GEa;z_KM1CRiR2G>Y#
z;wJK?%JJdEnrR+LmqbR)1{v}{1}zoif2rhuj^xk3JQCh0910#)hdw~T;tIy0K-l#k
z7{{YyHO4S-EMuJ`ypVj2{1lL(4c}veI5q@^<BN>slVr6hGhHK%A-tBNe)h3$qAel5
zOk)8FV;B#mQo9`e%s{vM6cFJlSe^q5ufj{ls_6Ixt=;XuM9jy1r$LJ5o>6)0Iy)!?
z$rZTG+@xvqjYpXbDql3({6R_om0StZ?7^B=*(7Xi5>B#7m<s#@jcyb~rJ3d;!6xFl
zX>Aj`KP+vNClpB&^X37dV_t8HS^?k<>d!Kk$KKxr$wx}b%aP^(7C@fy;-Npv5^{G)
zI?X-7<^y>9SK`7W8jOzfVBg}ww#DBijFQWgQCy~sGRHcxzASeC5|E7)qVI?Jr;%v%
zkl5T`>|1pv{&*c7Y}}+h5nnkjAkDas-T@?Qv9ClG23hFH!r({mM1G0?FvL~Y-T`o7
z#*ZxV=F==UhhB)fFprq)dS6Z6hDH)<bs)qDH_CB$e<ZBe+;hJF@r;)y!_oGhkH55#
z3oZ{{yTrr0GY8QRV+8(#0(BP;UhXzYJo!3paU7Y@t0feg1%_hmg?s@IiF{3ae**0v
zp@6y}HU^YPT#wplIfm1xpoQFx1K}LkC&@JT;E%yd!l}`>ayK`5xXe|=@F#cFKsqez
zO;H8nPvua=IVs_z1U(;LO9S)7YfWCf1E%|9j{Dw+qOX2SV8`{<9QRd}5gP-VGW&CY
z=xwg}{U3)7hiwHacrJu=`K-I_;V7_W!Dti^4=en$j0LdwC1gNk(H5X0wtGMhj~EkE
zqi=)kUnvH{MSwOyXLw;EHRMZzvT*gJxPpxvh6<!iAmN3+z6SxP9GDGrcA<T&*z&h*
z0E$P9l^-ad3JI2fC7B>l@Pc2~jazpYtMlYyx>BG<qynPJnR@*Msb_eM)McDk7orv9
zt>b>6P_zb&qqp~#s~~_rAl^%out%z=@8VtxdM4XMX=L*jLV;SHJ0u!%FA}!q1TkSh
zO^_9PlsIc8@4~V=XmAk1{9F-OMRA1TU<X_C3&=_5L1Z&~QVFj|q4lsbTXli4kX<i^
zLvG>XO=vV$D1~pQW(a_*3&X6<6$j)(;zA8X5Xg?+MLbMQ#Vha<^%JV0JhVgZeA`e7
zdSUYBejn2bsss&Du3C+AFB`idqa0ckllygPDQi<H5tg}6OU!0zM_LKhN5)oqh4U`O
z^n0VQ^^@{7rprqBz;7o(*%s`^t-0Cm=wArug0qSjgl$H#+~(R7f)h?dhlB_ZPDjVN
z<T176{uSROCK1`IMx4mWJBU3>xVU?|9P7aZR^i$1RuI6*qFHqtR(}HdjteEL>16ef
zN4=~hB3b?H1j9<xZ|(_kUB9$>>PoEJtnj7o9K$9M@l|p$Hw7;O2Q%@6-)-boD0#g)
z4ZOakdF_b!&h}!H;S|mAKD^Gm1@uwTiY{)R>Q~I(LT#xNnEi)qPA{{k!Jvb$dxQ<I
zCbPpm%zo{~CbM0~EA2Eh8pvZvTtZcU%RK-$Pi;eWD}0^1z({az#J2)K@#l)W`7AUI
z=YId62>KZ%WTsyE=~AkNQmR*Sf%45ql(`>?_`a4*p-50TQBk0zCu>PpJFrVP1OYX~
zK>6}uJ`B>k34rFQF4poC@+okTW`dBf0GJ@;_XLY4xbjy*{)R$UNg>amkiUC4Cge@Y
z6bc1}6^a6dTy>l>rx6n7hzZHOb|T#$!gw}ExiA)|P)B$<F!5(erhv3Zfwm||89&Us
zGAr`MWQC9EDdCIBj9w@Lw8{cR4*dHi*1#owj7=vn^_~LW7EP=H-P~aSE;*4L+ZX#x
z>fc*sd;6cBmD060T`X}&%l2TEb|nl`j4(GJ0}8qqhmR&PK@`qQR&~DKI${7U<3(r`
zu0TdyL01b%{7~;rNO`%VC94Su)72`yl__!7GJ_BE2V_=I7h-{K5CkX>(;@yA{!fLz
z%<#7qcrLTUzTT@37hG;3A-=nq8FY*_X_ycQyWm>;f6QvM)>p9_jG)EbO~Me9>FLXH
zFi2(nEzfyMU|;bsEUMJ@x4iBtJ<Z=TLTO7fWBn~Z@sy5}q<Y5<h;bSp#^O+N3i?~R
zJe7m~8wPj~r}%FWr@9q#KK?|^Lwbq7r5TsKFSAqWmc;~gsBYNaXS^kRp}A^t@wN+7
zh0pKl0=}oyQ-J*#=_9>d%6JN}pRNkTIXlfA|J7v*#89IPviU-L1iJ<-dz9CS*UT#_
zG{<YOgVk^v%XbTtV9yf8BClbQ&;i2ep3wj?SxM|;0xI$v=Ec17OOoFNLB1GyV)lxs
zPQbU5vKU3N1+75M-L^JLT-Sll^uu7?b(D|UDa*soV%fQ{1d{&?<lsQiZq{E51k&sl
zsSFPP$DN^fnV1VEP!$If$WwQ*c-1gV?XL|16f)`t$|RbGY=YELY%U#=lL|gSWzb<1
zNa@|jbJD2Rjw_0^l_~7SbkXuvChKomGB8$xm~+<9*d=1l+99#aLVwHO8Cn#XVs-aU
zU6%S={^%)P=x@2s7eg-dx9kJ!-US}=wPCDEq)2uCmN(O5*!BLFRUTSlM1w)G(uQ!Q
zuGbiLdi^8`RfV;idv<ECk*_ZEI+W>UF?5fUX%bwFY8nPHyNL!wPsD=3u=+F!4RsGo
z0^$X$tSRE;7wN7GWp{lI96zT&c`?6icl`q7RWu-`M{98dDP0Y7wx=K!T84E2w#1B`
z(sjXVP{Nu)6=<9K*E~rMaAOCt01hWcGvb1tm%*QmX_d<ZUAQA9#NRx}C|e=fT6pKX
zmLe9emFRfPN&dNn^U-T0EDVBkCt5m1BTfR*kbYfHS2|zIjse<?`-YHe{$uI0QqV*K
zd=U^;ckm}N!q{!=#XEo9u6NOk)dm0b3JgVL(3BdECecmc%DV_K3QPGRbAj2`l2$^>
zsJRhvE@@@SHVl~Z>2EyCt^Pg;v<|R#c!Ye~cdUY|a?UYUqZqAn7WoQhVbRcnS6??y
zx*D?Ur2uBOMil?ka&iO;xVfoB<aV*j0<;NeV&$i@0Ev!`o;8ekyg&nTN)_{@<{q0a
zhUKenZMlhjmH}jow;2EjrzK1Sr-Kzbrii$fvJ(0C?qy8Wc;Gxla~5p~%r7|N(&V4h
zg;gITCW$k}BcvYY`(w=8eEDKuR{a^27BJgViU=3jL<;!y9<Kts3^_rPJmd@^n+p~y
zS^x#3<B5OBc|sh%(<bY&zR*Pr=e1sMs~Qo$NEB3t>47R=%!I_G37J|AM{*Y%+p$`p
z-fyviAr*_ciG1sy@FahW*sU^P^<IIqP*j1kVcsguoda3zSXGvevaR^yFQ+>Pan?b)
z*hWk-e?$#*`FC76%{(Ms?hG#8<6~zhZm$3FqD;Kei!^30?o7*9G%gTCa>W_D*^74$
z$X8SV2bo+!XZGSfsrixH1s%YPhNtH~A?dt<P9fpb{EyE+E(V9r(lmgtJSiRb&~DG7
z4*o5V2|clIQi~&fmALU)l81}pJX{sz;nHcHkK0Aq_RT{k*c#3XK!X6P0?W>C%Xkgj
zyWEC61&Zik<qpr_MT>fMx%7$NbprrI3w?>^&jg<@*8IdIai&%Sj<EWcLonU^(QmSm
zS%$lzcq_qrm7kTyRub?nN6>T<<q90Cm8ATSUzZ9+L$F2;j1hzl0x$*@Kea!_j~&*J
z;x}>`@Z}V@zp&!OOf)r_5pJz2a<*cw%FlJwS|E?sE9g!(8Bm#8%TCqVQOl2q`5Lk3
z%qlFzHd{B2UdVQgim)mu0V0YO4d3$PQ1Se@ifP@to)HquYsLsUmy&d(E4_ow;3QY-
z#*Co%Vk(Ii>=wfO7fs`-Z#xJM5$>{5>_jUSPlp~g9zYWBxXFI+W{TD3n{uccW+d#^
zx*+`u`xY7D6Avv-G@F*DV#e~YTqn84MdSY$Y#Nvl6Cz5R9_IlZS_^H{zXoF@l4|@<
zvnd4>hR(LQe!+a>SWe4wV0$sTB0my&gaa#z&3IM9mQp1s6n?IVWJ)5q?=35;sVZso
zKBTIxMaoZ9>^AdC&7VXT6*m!tKF8}i@0N7Bpx#hL>H^vSkYa;w&mQW3IxWR)t0|22
zLIXxkiIG3VyU|8X>2)Ed=w3`M+#vGxUWE{37(tp%D5y_b?8Xe30wXz7X)6DkJAlg)
z)?rApNL}<mT(l7Af2fNEo0&IGA+AtO8Pi4?rhA2yYcu5%yDFkOs%~OcXeDXC%zwY+
z0GGQB)$rU0$lt7X9OXWwdkfwPMO8_PQ)5m^xi6i?>)1qh83fQgzKD1;W8$5otNNc_
zpVb8NLZbZ0PC08xl4zhuB4cW;+JCXRgg3w>n<$q2vruWSAOQWDtLm>YbM>AC8~wLQ
zXdgtv=iiD+_}|ljGdvP7B6LDhemv61{tKAu<ekjIPegm5Tk+c8{GhV$MqYWg#^rU~
z*0{IFYJdBJJ!x9ZRllaI(g`?~Wye2=n_eXz<x+e8sK;o=&P(B9omX6;lnQxtjV(g`
zE!$ZH6fRm7ipZjWGacYx^JA94ki6uF*quz}qElo6@*1zc7Jx6)VM8%1oT;nIu7H!B
z2eZKycqx(&9=+%CuplL)A+lxQ<M02_!1p8Z+*_>ux@l0fpP1K};QJM4IlWghh#6y8
zHfUoQ9b+tu)`FSjM#g5vnGl@w?Y$A#Zt)NFO}2zvx#y3-y|m6WptfcFB^#LQzOV1E
zD(X-|w!8}U;-4l((8a4&v^QgDP$R(i@lqp-T1@r|7(XoC>U{Ju&J1k?!d2h6g7^B9
z?@{B1IQ~PJk4?dAg5q!l)Br(V$?g>QVn*I8FK`c24<Cx-20>jxpG`1_5!?%*qq;Lo
ziXm*Z`>p*nDIYg@GXRsUAh))R1IW9}zo$&H!(9tY@hL9(xAdRgC|-OgPCSNi1RxEB
zFr}d|A)FumgfxbBZ9~$8G_qUPI{qeFh-`5#4X4vQe`x>Q#=bs~AB9``SrYkQU?CnE
zI}Mz9+)18gi0Sez2p6wQibt1P>Qatw16{^Zm-}xvx;%-MXH1ugQWx9`p=4iFmjcw%
zx}?VIayoS3A<`@;6OhWBtd+SEta-|me+kIr!0~6bbKLtN<-wJ@?Nlhm^FUDQQsmv=
zeb*@UcYtF`T?rW=!k1L)o2b=~Qapa>aJ!?XElD#6RYWs2GepHSi#w;D<Gu_*53bjC
z>=tymQm^ZfcRz!th~pDGTz{NiYc_lpz3xJ-L+SOa^+|fwqKeS#e)Lw4UNQfpjPWWB
z@c7?Is&u&wFAp%hjE$+pBUiDedgMD_r7!J9t!<xRd%>-f^?6udb)Clm5wiaa9S~lv
zjseB}4_}UZ-XY~LhRhwSrTqJ{z-BRAST)H?kd4XzE}Vki{^j~lCS-)fj?^JFNr(NQ
zDs&hduLIwz%R@shj>rok+|T9%6Ol>wDD}KE9uPplL|hx>zKHUu&wW**>4%d9jo$#q
zpc<f&y4=CdJt@ujyWga9nSwO<{a^AKl3Q3fV{Xw^GiJ`ZYR25T7tgf=h2he0L%luK
z&aNB7dn)2HDhXkXfG<3I{_>i-#q*a|FP}Jnc3FAB;zjfGs}|Ii)~%R-NqI$8UR~9)
z^12z-;kp$CHC5H&`H6t>3l#^MaPoFDzPI3eJHF52+l_C*!pg$hs=}p9k@tS$_)lx7
zT2eND-jZb#ixw;i=anz3S||j{n=$Q@3$B`1I59Zk%*LFv<`<teSzt+wx#bnpYoz4!
zN|!7tUoo$$eEGz}nuYTVYjDSK`jUqFaCzN)u%8e9^Nl3)1=;zz4dI##%Bz(gfxxtj
zFV3Hld(oIcaO%_vW5!s6xGuzq*Vh+9ikL1w2XrQ_Pb}&!`*<rf&2Jse(qFQM{LIUr
zXBQUCvJ2{J!ZizPme|!bVY|Mewzj4&TwZ3EHI&=o8UXFux|-VZI-B?f(=V|rY8tA`
zMh&q75PMd2eYmuGVfpFj;bK~8eYrhqsvR6-pK=Ns`(VY5Gx?bj49a%a^2FJjmj2Q<
zoL;kZX-zfFDRa_r6l7XyoqdWOYz)fJ#4+|%$Z0Nx2-D}<m8JFew9+!Wuxe2?JhiTz
z1(#GWsad$#u2@o9UuiF_Sz23DU0xlwC)gFGRZC!pgOpFy<zD{|1m?~tx@7J}R}~iJ
z7F|+^mTb&XGU?=!{Cs<*9hh+D7<>f(T3CNx{lbNCA+!k%EadH<Z@p$~jr!uuCXrPF
zc`L3x68ayT8hvqoeoghF3mcZ!($Y+)HB?l<RUl&^u&k!4%sy=l+(C%@h3FNQhc!7X
z5V&O4MMW2l@z8}=<=Cg&@O{yKlJ3EHexCfZ%a_*Ft$-GD%WDh6b@MMTud4y<(z;R_
zJQh6i%c~cKEA4ZkQ&76D@L&1E);ir*k}65YLO_TXP!%cf7pa|BULUT4+f~(6OG5G8
z<8$qosL%A8+7<oj^JV2isH$679up~0fB=Es1g+SKK3A?;HL&q4gz2j4`l^NV#pUe!
zg~q^|-lYEndL$OeEi0=ludnxrCLF{A*DM5lW=-AF(r~h`exBdtl`m*m1eFTQ>#9nZ
z&=~VINa!SoJ^PC6(kt!k(m;0En6r@%u@=o*TDqv*DXlJBB6@LR4>=THj(5{)YQo^j
zk*B_>bioqQ0S{IHNfs3rB`XKb7fmbd7k()I7@d+>_X899qp8d5s!NxkoMB>Ozsx8{
z;nMnk%rDx8Kc6FybobmP2+pF<FdX#*6Cw$kdh)^8^hKjEgRmB8Y2nhk(xr1ts~45m
z_ovgMx&7N)*FTg#Y{t0_)#0k8<w<rvM43<ycFxBDHLa$RxvB+r9AJ74hUmJ6h2fey
z1S-sy%Inn3D-JEb9x8>)8^fqjx}>hWv}}cqz8mHYrfi6Hh<YeW;MZ6c))T!%{b$#d
zH7tpn)x{{YF=JQERV~mhnF#mj8<RV`QL{~!S6M5sG+e4f#_4vf!XfCRh*4UZv#J{X
z+FmNu0Jo%i4b{qOaS|?F3b=Gx%qFTUsunfW2?w^r?9^WSYIXV@PA#RzoQ85aD@cqd
zN%9nyE-P1+ysq$hcxXa9;F+*15*IXJc!%8<je~mV7;5l49n-4pC5_{3Gx~|^{_KOn
zUeU@8V{};15Jty}`Dn6S2f<GeFsa@pwPmH@WX(SxFP^X(<dw*n@p`mA)a2meii-O3
z@R(%(m<v~`sY@121&k#5lJVmNOzdBY>m~Ln#uD9?^t@j*WIrx;QBAn2V#Umc>V=$=
zBuBit<%_D&7o_j@Q~zLe#kylUe7~&RE~_c8uRhf*JM3^}xm~cZLC*YVm7Psz3Qlgs
zEIWBTNRA%`Re6o&g_FcUxv;LPHcXXcSM+}bk)<=1Vg63crAy~BxE0l~O_LN%Ae2{L
zRb3Uvh+lQBSQc0q+s7a-#>D^~>zU5XEy~Te#me_=8@_HYzyNO73&CtG|LUt?fWq0c
z?a~SaWyT1PG^0idok{0V?Fual7M4*>lha|+T3S$rvLv+*Nl(w~F(0m~UL;A$d@>z9
zKerWvXMLroh7{k@^Jn|2MUdyJnN^MDWw~LopuP%#*`<wDOB<Hv)-SB8l9XfxD<9sK
z%=OUr(DLV3RWB}wUFyTe9D?5I=V8{jytEEQ)yXX`#8r6HN*6BfAL$}GZa@A$9qZz-
zeeR*vj0vW+lsx&X=S@n7S@mQzt6G>Lz+VT>I*vnl-HLIT!zAnmn0d;f{6*X663oxA
z#w{;{dGe~3Rn=p50F}hT@{80*olDM|+&F3C-14QRRn=wQ_0kuqUszgE?)5S1A5bGm
zf@zIjg$)Za^R2foEv>`Ay2!qydU18l@@o5nB`azxQD4LJ%9oUf%k7z1or@K`hF@A&
z<pmpj#kQ!X27M579LmCvu7`OeChVLoNO*n?b_izF)z#F=>si&yV9YYRpcJDZI4dyr
z1<YoOK;*`P;#J5PaxlJ#yS9h~lDs8@VT_~HgVDQuAvS8PiyOjrO$Dmdi-lUfs%Fir
zS<<ky+@4-jSJzM*w)FMP2BqRfHTLZCvMQw&4*c=LURcQqZW)MBj+xx+Q3P{^`R%;&
z>MB)Ep4bhkm+=tvmSX9QrjZqjFqvhX)AEoWCXw7+5};f)wbZcO1!CjLnl*iPK}=iA
zDw<gocdf@QjWes7n=%-NFnhA+mDkl{v?7DT@`Vj(@)h>Hs+uKYl#-H6pF3Sw6@VGl
zWwf8M1(d=n3p-$eiBsr&vFk}<D?{PWtXd-V*6p7U!!=-qC%IS__MotHwzR4qq+;Il
z`SGg&p;wGtI->(aER+crs=v^e#P-6M3$L+tO`!jUu<3VNpD)Gl63lTCzPtfF#!*rX
zps*TIun@6qx|2J1!dciYlCmJY9a5YAsN39j`Fun4S5>MS&_j?C>Whh@E5Yq$L?817
z1xc=`EPie^dMJ7dM_|7FPF^p<bemWBr?y~D<LR6g>7R+1BTeL$%p|6w5`H8dE-^Ko
ziDhR1nLm@uY@6A$`6GE0vt9-!UN|)?J_UPZTCCDqm9ACkCY5%o^fi^bDz$zi>u0Le
zR%wn(9hDZVv{I!_D&45kO)A~2(oU7`R%wq)_p8);Me$Xst<s=Mb5!c6v{<E;Ds58f
zEh=qS=~k6?tMoOMx+=APEBOW|Oq?|N%(K3hGbMN0^t>4}1A0RW+vIlOTfxQ(e1a7f
z-1QA&zd>(pe%?4*u&`=+MGohFCMP1qq3C1h)X+Z^9yf%w98!z;U)&9~+VRc8+xxPf
zm1XIdj=YjN+zqsj#CI3Ub|sY2mv|qh2W34dn_HMy`19LWPsn+C*ViAJHE!I@g>O~z
z4n>^q|1I}k%)OZLwPgz+5sr6=-`LLu(~I)0Ov_4xF~)Pd1Vw2_K&QLZb=Fcb4q2VB
z(XoKlVHt|imNv_WlJYw1+H0>ZTOfwa9?P-`muQx~SDxk{zW|dSe)hw*15wW9Ea>22
z6RU*yjry9f|2dx@PdM(11>f6q_;=2?Htnpc<DJqTO1Hz8)5O&7;cqPc{hz<J;Nx>{
zn|{-e#vfLFN5_I|Pk87TFKvDFqSowod+*}PRTti$Ir7NSAI@GKU9@ALZ_SP6+kX1s
z2X7ue{jsh7BWC8^yyw#U+t=g`%*<Wmzh(HzX|=Uwt$if}dw1tP^!B^Cz2TnkjC`zm
zO!u?Ci|)T{iu=&K{X^P21$*nm{dWz&@Ra@Mz1#E0=Z=_s#^k3yJNGpA)FHDYD}J~3
zmv`;$oVEX<A4fkuE$>l#`2G1?#y+|J-&-zt>irKdyxy7=ykY;I?lZ>?dVNFm=hJ^;
zPk!aF)2?5$<(XaY_k8&21$VrX+5S#J*Nx$^wZ9zJG$HrfGdKKV>+NqnAi4g3|CfE?
ze0=GrA*4%(TUI*qwMdU2Df3L9K1Sv{kp|IEGJ(VNF?>fN|0L3T@lZeOwj&*Vyk*(Q
zXCZCDOCU&}=~^3W2;`Z*KMJ&vXF4(4vT~50jC2^@ln_Fm=_mL)$TMArBjBvth%}0C
z0rLBhUOL&bijglyx&|Ixg8W*fbyF>?68SLFJ@``2SCHmoXr=s2-^G{k_mTeUe9Nju
zeiu>*AmB_Vt31;Rd>esNiS&mme>>9O<J$!In@BTrWnHFuD$jHUzQkFH^!xa(MSe5V
zLDMXJQmk~OW%yDardt)9Y36jvm+9B=C4LUlg$iDVbccd>BRwNe(g`BnfG_bkB7F~E
z%Ktvn)ESKPDOMWNE_`o6{#m5uGc9Wq@|8%}<J*or)6FW+bT7V?|1G3XT_AaNB8@uI
z2lgTT{e`FloHvnviZAuDz79L!%epI(cHz4f`Dc;t#h2~!7ScQOrOca<evB{ceu8xM
zY|FBdZ$bL+izTm5ke)F|=K0?~>+mJcdZd%*O8;Sc>ZO*|33veMO~n%bW~47(&NBun
z)^4QNUTImoSr=*ZRno6okp2c=+Ugage=M=A*O2c)I;T|1T!i$P1(x7@Jkq=H?E%i+
zNcWXVIMdnXl5YXh9r)G)ryJ=z6%yxtq+_s9ru^fOUXL$vT9BSxjk7h#^FK5$$7qv|
z{CuQmF5|ERe?Yng-vh{RMLMj}5_Fhu!B@bMUUaRrZ2{7;-$XtIypSHgQsN(plz$sa
zn=e87YkVogD@fO`l65yCeE{Efz?nv`gFK+K59yjFS$8ec-S}n#hw0I)Wqu^m5|wBA
z1inqcd6Mw!rCv;bg>NQk?m{}c88ng4LV6#*Hu4W3eHLHRXZohfGyM!-%5Sy6Zul~v
zh4fr}iO+OCzKzJ2A>EBHahT3pBlXQk`a^sJ;B`A;5yUIxneN9Ih7;)#-$CpG{79sA
z8>G*Nkv@Sh{pv}ieoUyC&qR7Fz9G^?I^ag>Z)r&HeF(k^cstU=HcQ{jMEVB4<n<=f
z`yQ702aq;DB5l=z^omE7KOjBoF^Mx0>F@E~in={W|AViM{3l3H{sriRR~FKF_!9oV
zpa1_^AZ2ihHFyEM>#!8-Fs8hormmT$VSFI`*i`G-l*6qQ{GZ*3l+&%0%vAKv;a1Aw
zsn+2sN6UKG0}p=*bvW^HHh(0qMZFPL$`L8n5x>Os@DywKG^80RRt8hTnUe3xNXd`a
z$E8}wrJQP|9F=Mvl`=-cSxz~xN6PvOkdodnk&>UjW=eWLK}vepBW1lmBTdIROE}X7
zNRLjjj^;J#T#uA^CnKd?OnJ?6UN1m8DAgK7JCH8n<V(C0eb$L76Ro3bk181v#5L(p
z`@g`Sb~DZ(2HpGGy*>B3_wK*<z`a&`dV6O3$acFu&>n2hX%DqK?FH?{?IrD%?X~TV
z?M>}#+c&n~(!Qy^y?t~0*7nZ!?)Kg7ueJBIyY2hi542nNfnX2gEaJ+hz@|-`kon)w
I|40k`KR|d??EnA(

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf
new file mode 100644
index 0000000..2f06103
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf
@@ -0,0 +1,251 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI SMM driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiSmm

+  FILE_GUID                  = 27F4917B-A707-4aad-9676-26DF168CBF0D

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PchSpiSmm.efi

+  SMM_DEPEX|PchSpiSmm.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xC610

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xC618

+

+

+[Protocols.X64]

+  gEfiSmmSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.depex
new file mode 100644
index 0000000000000000000000000000000000000000..631980e0f8ec20e495bafea5b893c3835d38bb13
GIT binary patch
literal 54
zcmV-60LlLXk?~=zU#<>Jx%%j7(ul@S0<z4yCPHu25xnOBfX6(DfdcmMqZ3Ld@ILb3
M-o+9$FEj%K2msm{`Tzg`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.efi
new file mode 100644
index 0000000000000000000000000000000000000000..df5fff20fd12dfec73cc8fd975c3e6ca4e74cd37
GIT binary patch
literal 49856
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
Jjvwg$`+pvACb0kj

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.inf
new file mode 100644
index 0000000..2ad6449
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.inf
@@ -0,0 +1,254 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    PciHostBridge.inf

+#

+#  Abstract:

+#

+#    Component description file for PciHostBridge module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PciHostBridge

+  FILE_GUID                  = 9fd2360e-6b48-11d5-8e71-00902707b35e

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PciHostBridgeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PciHostBridge.efi

+  DXE_DEPEX|PciHostBridge.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xB798

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xB790

+

+

+[Protocols.X64]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  gEfiMetronomeArchProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+

+[Depex.X64]

+#  (gEfiCpuIo2ProtocolGuid  AND gEfiMetronomeArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy- /O1=/Od

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.depex
new file mode 100644
index 0000000000000000000000000000000000000000..04a994f69f4355bf96f414fc4c084834ed2e90b8
GIT binary patch
literal 72
zcmV-O0Jr}FsZV5&Q0TEuoZ<^aX^xGg0^(>^9)X0^5xnsLfX6(DfdYuE&nL`A)DfCE
e0FWm?!A%18@S_t-Ch$J;;NHa&G%qv*0|N-S1Rr1k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.efi
new file mode 100644
index 0000000000000000000000000000000000000000..5a87e4b1c0af1e5877defd5e4e2602b783988596
GIT binary patch
literal 35392
zcmeHweSB2ang315KzIogc{6I&3rt`TkpUFLn@&Q28=Xi>0;ClsAqfx(Nt{d|B4BW$
zB@9ul*3wqDQA@;jwX9WvXf^Q#f}$eYO1Enb?z(%^p%trLv8B!L`#tB}J9m;O*zIS3
z`$tD7&pFR|&hvJj^Lo!6a=)ql&7Zcvx#r)mV%|JWE4{OS9K(~^7=3W!P_45>)0)T1
zqLckJtt~M|rX$I3&yRmwjBaqx!Y|0DegR&f8#HZuQjDOj5&9zAe5<Av#L)la)McTv
zx)8V=fX%d%wma>m0A15oUluGa4i#(K1EZkBN_-V$x%KgDnsJ#V({{tP{!QSephZIn
zx{k}LC84kpwl>pNK<CG=X<3)mNxIYo&}@Y+3ihH4mQ_?iclwCFs#mZlot0nubz@4K
z(fFp(_?FS$)z1ijFyIs8Cyj4?^5eqgFC9L7c*#<u@s}vSt|`#J+nDiJqw!RYD`&>%
zHK~Ed_MC9%0M`1%*cBZZXnf<Eri}x-|AK-~esp^IjjVq7lN|yuDLzXBjY8bFUj5|9
zM&l77!zv?$xHn0Ha^oj`5ID;FDn9(@cyWjS)Fb~u;Y){&#(*c;2%pF>A_0%zd<-r(
z8nZpR5#H$0wT<T(k&$<708W%%&(eq}eK~`53p}YdgYcY-;cG2)F)55l$}r?+7|Atm
zW8Znw!}VQ%K*ER=cnrxeimdw?*Q21kqs`s$BV+?j*&eUaH1cGf5^6+TL!dzSj-9Ma
z)lB1BR%^SXEwo&!xoN3cXyYdB2VuRr#zu?^2$h>go<^+7!iRG-Z5kNVzAgT?2bx?1
zR%lx5X3A(v8IH7h)isLdZW;ugQjYw!yW40q3LO?K?x&PeintwRlUNq>*5MxhGM^q}
z8MGdvdK&aC8>bBVzKyUAnrIvJmeI?g=_qWiK-Ylg4<l`^wT!;o{5Hs?FHZy6Q}hs9
zk`jHfjj%=UDYAUIq_^m2QP^4~MUSWGKUg&IrQP~}foQ43`aYESmW{LQw-L4y6Ky5l
zTF~2mDiKunBW<qjONr-TnpA>1_Vh%eEmJ8m(ni=yv@Ewg5$LVNzo4+SRw{8Jl`t(D
zrzh^Um7tD2mDptCloC5^gssGATZx17dwJqgDp4nu*om}R(w7qb1C}SKV^1Yc**K-d
z;ND6+aHHjktlmmIio(`gr4qxb#BVH`yNxhM6KDVEF}8RaHDZMFnS(h7g<tlff*5+H
zwY?NK4tXOkKiEf7X5z1VZ;sDs%1%yW6DLPp<3vds{u=$-iA!Y%%`n0lTJ12I#6Xv9
zG$wcbL<5m16qp%eAR7uKKJ{I9<F6{!B7WUyO!64v*&eMn**KWw(UMsTRC@OSq%csO
zw@*8T!6P!nV~p)EBJGAt(6E}60fm?jK$*q_8wU;3R3-pjp~PTj)53LnckK{kpQTSU
zaax;nN}MkYj!K1E?SN@*UB83I`;*~3^PUSe4U9ct<Vo-D?zS^P>PC6Cr*I{jY1+~K
zr8M%hkD-)@PE4S~GNv6B3UM4wKp}Cyp18=1z<Md%r-f!qsTWA8I;85BRAxLgfLNbG
zraq&)L+~RFIC!GZF$Dtey2&c#S)Xo|O1>|BO;{7pH+oR`!+7a%0DRE;_C&Q0gEBw$
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.inf
new file mode 100644
index 0000000..f2c0505
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.inf
@@ -0,0 +1,227 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  1999 - 2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PlatformCpuPolicy.inf

+#

+#  Abstract:

+#

+#    Platform CPU driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PlatformCpuPolicy

+  FILE_GUID                  = cb933912-df8f-4305-b1f9-7b44fa11395c

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PlatformCpuPolicyEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PlatformCpuPolicy.efi

+  DXE_DEPEX|PlatformCpuPolicy.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x7D80

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x7D88

+

+

+[Protocols.X64]

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiPlatformCpuProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiStatusCodeRuntimeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformCpuInfoGuid

+

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf

+

+[Depex.X64]

+#  (gEfiFirmwareVolumeBlockProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiResetArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..e076777323483e39152c49173d8ba560c7091749
GIT binary patch
literal 36
scmZR2lo2M^*m6a1&qs!a<2D_QOy52%7WPv6VE5_4y`w@V`X<aA06L)%NdN!<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8f11e108911dd6a7c97b8144f690b402aa7dc05b
GIT binary patch
literal 33664
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
OJsf<kZ%Hu&{r)Fn0|QI|

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf
new file mode 100644
index 0000000..9fb78ab
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf
@@ -0,0 +1,207 @@
+#/** @file

+#

+#    Component description file a sinngle segment PCI Host Bridge driver.

+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#

+# Copyright (c)  1999 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PnpDxe

+  FILE_GUID                  = CE7CD764-a1d9-44e5-9857-14fefaae96dd

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePnpSetting

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PnpDxe.efi

+  DXE_DEPEX|PnpDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x6460

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x6468

+

+

+[Protocols.X64]

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiNormalSetupGuid

+

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gEfiVariableArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.depex
new file mode 100644
index 0000000..df1f82f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.depex
@@ -0,0 +1 @@
+�k��a�F{�Z�~�'\������I�K�����������G����P���ƣ�^�H���3����HN2��G�,?��f�����c�,E�9���&^��J&�>����4/4t+p��1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.efi
new file mode 100644
index 0000000000000000000000000000000000000000..906f360be2932d1749f47ad422ffb41de50fcc47
GIT binary patch
literal 75776
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
SiuK1bYuioqf4M#q3;Y)f3m@wM

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.inf
new file mode 100644
index 0000000..a71cffe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.inf
@@ -0,0 +1,270 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#Module Name:

+#

+#  PowerManagement.inf

+#

+#Abstract:

+#

+#  Component description file for Power Management module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PowerManagement2

+  FILE_GUID                  = 41E89AB0-BD3D-44b6-A431-E4836EFBF2CB

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePowerManagement

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PowerManagement2.efi

+  SMM_DEPEX|PowerManagement2.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x11618

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x11610

+

+

+[Protocols.X64]

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gPpmPlatformPolicyProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gPowerManagementAcpiTableStorageGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/IstApplet/Smm/IstApplet.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/ValleyView/Smm/MchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/SouthCluster/Smm/IchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/Silvermont/Smm/SilvermontPpmLib.inf

+

+[Depex.X64]

+#  (gEfiAcpiTableProtocolGuid        AND gEfiAcpiSdtProtocolGuid          AND gEfiSmmBase2ProtocolGuid         AND gEfiSmmSwDispatch2ProtocolGuid   AND gEfiGlobalNvsAreaProtocolGuid    AND gPpmPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4b64a3dd6e15d39502fbbf83d5c0383429b8e817
GIT binary patch
literal 30208
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
byzBK{y}RsP$95T*-?)az-jTZlz<K@?q3-kt

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.inf
new file mode 100644
index 0000000..00e3b68
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.inf
@@ -0,0 +1,204 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   SataController.inf

+#

+# Abstract:

+#

+#   Component description file for PCH SATA controller Driver module.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SataController

+  FILE_GUID                  = BB65942B-521F-4ec3-BAF9-A92540CF60D2

+  MODULE_TYPE                = UEFI_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializeSataControllerDriver

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|SataController.efi

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x6F98

+

+

+[Protocols.X64]

+  gEfiIdeControllerInitProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gSataControllerDriverGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+

+[Depex.X64]

+#  (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.depex
new file mode 100644
index 0000000000000000000000000000000000000000..b1a5ceab3b2eb73466f120b95a1915810dd0401f
GIT binary patch
literal 36
scmZSDU00wl<#k1HmIcEEb^C+9Oy52%7WPv6VE5_4y`w@V`X<aA00;~YUjP6A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..5e689a9b390082fe56621efd91e754b4c73a4ecc
GIT binary patch
literal 25600
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
G<-Y(^-ZfkR

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf
new file mode 100644
index 0000000..ff15e86
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf
@@ -0,0 +1,210 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for the SmmAccess module

+#    {1323C7F8-DAD5-4126-A54B-7A05FBF4151}

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmAccess

+  FILE_GUID                  = 326E9CC6-9839-4885-B2ED-275903B668E1

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+

+[Binaries.X64]

+  PE32|SmmAccess.efi

+  DXE_DEPEX|SmmAccess.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5DE0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5DE8

+

+

+[Protocols.X64]

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7ac00dc993489f35ac55dedbe2f64737329ef2ab
GIT binary patch
literal 27136
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf
new file mode 100644
index 0000000..2f416a8
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf
@@ -0,0 +1,129 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2011 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmControl

+  FILE_GUID                  = DD787473-07CE-4c63-82CE-930B33F39C09

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlDriverEntryInit

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+

+[Binaries.X64]

+  PE32|SmmControl.efi

+  DXE_DEPEX|SmmControl.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x6010

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x6018

+

+

+[Protocols.X64]

+  gEfiSmmControl2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..4bb6074e530b68b05103418ff7a5cc63d3cbbbef
GIT binary patch
literal 126
zcmV-^0D=Dkx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
gGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj%K0|NsC2pp3&(f|Me

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e7fd5bae69e55c6e5912d58c3bf5123ebc0a9fbc
GIT binary patch
literal 55168
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
BkADCF

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf
new file mode 100644
index 0000000..33f7a05
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf
@@ -0,0 +1,259 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitDxe

+  FILE_GUID                  = 93C81A74-B648-4f7f-925E-E4A0CDCC776D

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|VlvInitDxe.efi

+  DXE_DEPEX|VlvInitDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xC620

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xC628

+

+

+[Protocols.X64]

+  gDxeVlvPlatformPolicyGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+

+  gIgdOpRegionProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gBmpImageGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.X64]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..bd23d618afefc089f9d05106958bc03d862aa62e
GIT binary patch
literal 6080
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
G`TQS5A=ugg

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf
new file mode 100644
index 0000000..48f7908
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf
@@ -0,0 +1,123 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    CpuPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for CPU module

+#

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = CpuPeim

+  FILE_GUID                  = 01359d99-9446-456d-ada4-50a711c03adb

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimInitializeCpu

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|CpuPeim.efi

+  PEI_DEPEX|CpuPeim.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiMasterBootModePpiGuid

+

+

+  gEfiSecPlatformInformationPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.depex
new file mode 100644
index 0000000..4db74a3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.depex
@@ -0,0 +1 @@
+�n�*��4A�V8T��
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8330a83cc62be5e5c7900746e5d09a6dd2fa8d71
GIT binary patch
literal 93888
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
Rn$p;MA$=&lI;%G8{{qS9iKqYo

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.inf
new file mode 100644
index 0000000..ce85f09
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.inf
@@ -0,0 +1,196 @@
+#/*++

+# This file contains an 'Intel Peripheral Driver' and uniquely

+# identified as "Intel Mobile Silicon Support Module" and is

+# licensed for Intel Mobile CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor. This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#--*/

+#/*++

+#

+# Copyright (c)  2005 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    MemoryInit.inf

+#

+#  Abstract:

+#

+#    Component description file for MemoryInit module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = MemoryInit

+  FILE_GUID                  = D4EE25EA-0B48-43ae-A016-4D6E8B6C43B3

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimMemoryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|MemoryInit.efi

+  PEI_DEPEX|MemoryInit.depex

+

+[PatchPcd.IA32]

+  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|0x00|0x1693C

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|0x01|0x124D2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|0x01|0x124D4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|0x01|0x124D0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|0x01|0x124E0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0x00|0x1693E

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|0x01|0x124E4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|0x02|0x124E5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|0x03|0x124D3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0x00|0x1693D

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|0x0b|0x124D1

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|0x0b|0x124D7

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|0x0c|0x124E3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|0x06|0x124E2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|0x06|0x124D6

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|0x06|0x124D5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|0x20|0x124E1

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x124D8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+  gSeCUmaPpiGuid

+

+  gSeCfTPMPpiGuid

+

+  gVlvMmioPolicyPpiGuid

+

+  gPeiCapsulePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiGlobalVariableGuid

+

+  gEfiVlv2VariableGuid

+

+  gEfiMemoryConfigDataGuid

+

+

+  gEfiAcpiVariableGuid

+

+

+  gEfiPlatformInfoGuid

+

+  gEfiSetupVariableGuid

+

+  gEfiMemoryOverwriteControlDataGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/RamDebugLib/RamDebugLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+

+[Depex.IA32]

+#  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Fa$* /Oi /Od /DEFI_MEMORY_INIT /DSMM_SUPPORT  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D LPDDR2_SUPPORT=0 /D DDR3_SUPPORT=1 /D LPDDR3_SUPPORT=0 /D SEC_SUPPORT_FLAG /D FTPM_ENABLE /DDDR_DUAL_CHANNEL=1

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..16d8e503f18c112a080a7c865962ff3396eb53b2
GIT binary patch
literal 14752
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
F{0GLHl~Vu!

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.inf
new file mode 100644
index 0000000..685a680
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.inf
@@ -0,0 +1,97 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchEarlyInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Early Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchEarlyInitPeim

+  FILE_GUID                  = D9F5B28C-9FF1-47D6-B503-3DC23BD345FF

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchEarlyInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PchEarlyInitPeim.efi

+  PEI_DEPEX|PchEarlyInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4A0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.depex
new file mode 100644
index 0000000..0e34453
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.depex
@@ -0,0 +1 @@
+sF4e��K���a
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d1907ecad347f4636adeae8dc01f091e90ca335e
GIT binary patch
literal 11776
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.inf
new file mode 100644
index 0000000..e3a25d7
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.inf
@@ -0,0 +1,136 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2016 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitPeim

+  FILE_GUID                  = FD236AE7-0791-48c4-B29E-29BDEEE1A838

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchInitPpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitPeim.efi

+  PEI_DEPEX|PchInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x27A0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## CONSUMES

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  ## CONSUMES

+  gPchPlatformPolicyPpiGuid

+

+  gEfiPeiStallPpiGuid

+

+  gPchPeiInitPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## HOB

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPchPlatformPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.depex
new file mode 100644
index 0000000..028e7ac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.depex
@@ -0,0 +1 @@
+5�c�2�I������l�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.efi
new file mode 100644
index 0000000000000000000000000000000000000000..599f60c27969a0f521cfb0d385a1c84308f570f5
GIT binary patch
literal 3136
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
O$enVR+%136gZ}}f2L;Xm

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.inf
new file mode 100644
index 0000000..9197f31
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusArpDisabled.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus module

+#    This version will NOT include ARP support.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusArpDisabled

+  FILE_GUID                  = D82D57AC-99F9-4c7a-B591-BBCF8A0E7FBE

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbusPeim

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusArpDisabled.efi

+  PEI_DEPEX|PchSmbusArpDisabled.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xAF0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  gEfiPeiSmbus2PpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiVLVTokenSpaceGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPeiSmbusPolicyPpiGuid    AND gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8ae071933bc183caf3f31cd4c5238e456b20ed54
GIT binary patch
literal 4384
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.inf
new file mode 100644
index 0000000..1ff50fd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.inf
@@ -0,0 +1,125 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiPeim

+  FILE_GUID                  = AA652CB9-2D52-4624-9FAE-D4E58B67CA46

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiPeim.efi

+  PEI_DEPEX|PchSpiPeim.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1070

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSpiPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.depex
new file mode 100644
index 0000000..05a6cfe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.depex
@@ -0,0 +1 @@
+H�t���N��ľ���s+�N+1J��V{PD,
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e23277b217824ce7855f4899f29aa0a3f7727872
GIT binary patch
literal 1344
zcmb_bUr19?7(a8<t-Q7y%^Kmug!>Q}Bfa(@i&)Kzl`}TopO);8rDoDU_6KZgY%L#d
zhYJQi^w2}0d#RWHz%r1yYvQz`SWiL_5(KkJRE8L=)_1lk%j!k?!MW$2-}n2z^L^)>
zuk9q-H12QObMuZS4k4pN`dfenR90Il*@pCG2rU#X!|<<x;gJ;x4NPQgguc9>BYfpX
zV{uLYgZ~??fp|4wxDES~`F}y{?-}qzu)1Phq*hX2DKrT6X}i1pT|iF3AhnCd8K!mU
z5t`L{d(K@vUC5E-tN|;TOQA>Tu+5JB42_2v3R@VJ(7ZF(^wTG6TJ=$UD)L?$Uo2aW
zX5{>gFtjW8gHJ6_WN|Y?xm}5u1=#CFa8_U=L-Ef+4L<hedmy}f!kw_<r4BnDri3=i
z+>iPZmiG-n&i0&1gXbgDs*$&WYHX!!%9vLX`6O`#<oI>E0#bD2M5i+mS)#DSia!b#
zM$vB0nf6467<#+I5s<Uu;!Tisq#Gm%;dzL&b#e<rp~Wz;HoMTONJ_aQhNDkMVY{S3
z1uBHU^F~H37-UHlg!dJVMtK7r9;OjUeDX;+>rlqP&IyBR(9!q{<|ye5FIUFmI)lnr
zbv=b&q&r9)upWveW#Jj(Nwm6Fl{W>nI(-G~Zda!>GEF6bP$**-hSHg7Z$&<S0?v+3
zBJ#T7Plb&)RJ?)}6Ux{#8}^6Q*WLseTy+V;-tm*z59rV~R6>N~G9WUQ{Qez~?GrhC
zda*?LSd7e8^zsr`bde*6V-vV<JeS2>Rw+?nZpDoCSrevn?P`Yue{dE=w7`8X5q%Y`
ztL^<Yd8Hy}HbMy_;$;~tW~7)~C0>yApLn+t*Bw0D!i}Tas|O}D4?(d&RKD^$@pxVR
zvGLtwwn0<#UcwPTuZ28N8v(h7QdGgh17iy8WV9G8M$!XL;MV$s^!+Qi&itA=e*sMS
zKG;Vz#oi#7PBzqf3j~SfSzj~3V6gkt8Cb7@^zmpzuA!QJ#7?r)>>NARc&o8s{RL;=
B6m0+i

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf
new file mode 100644
index 0000000..03b67a9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf
@@ -0,0 +1,124 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   PchUsb.inf

+#

+# Abstract:

+#

+#   Component description file for PCH USB PEIM

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchUsb

+  FILE_GUID                  = 3B873142-4252-49eb-BF17-105CD6F3E808

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchUsb

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchUsb.efi

+  PEI_DEPEX|PchUsb.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x470

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiUsbControllerPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gEfiPeiMasterBootModePpiGuid   AND gPchUsbPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.depex
new file mode 100644
index 0000000..95be042
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.depex
@@ -0,0 +1 @@
+=d��I��B������[�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..92cc991d43c41955a987418b243a732554eb6ec9
GIT binary patch
literal 1664
zcmb_cZ)jUp6u(Jcnn(6#-y5NQLOx{hkbxRfUrVV$h+TqHA~tg~%VcY-?bNYONt5A9
zgs|tt=Qa3AKlx!r{V@N){Im{5lD(32qk|TP2!h0_BO?{21&NaF`8!G4)zN(^9=PxP
z&N=s<fA_rm>|wTTy0Gn&+dnuGV=V4){l`I-Id|`HJiyLDUF=xiaxxacD!SW>02r-%
zDc{xJNBSN28auLlAN^M9G5GVtP(@tg{}%-_lW%6=>?~@ex~Nv-n<>E9tHFu!%s7-E
zV^QtrIvi|+B8)8r(~~D&f4Q9_<s5*O_-2YQHvB@8XEd4TG>IS3e1&L_J#=SU7-~#Q
z=CZNkD&2IheOC9F<wCC4zHKhAecI$vO&UFFEw(AySHxkF$2G~kirqMqT>AnWKR+~T
z!KHYUA|B+c#;*-yReB!r{wc&YIdOa}$vyT+oO>V!633+^2~lm2F|StGYtvKXwG*hH
zFV%My5@PL3;J1rerTb#S=~}Mk$h2_wO7<81$Dx#ZDy9F0U~=J9fD3(lO`(TJ`vf!E
zBajwY1Qx+1aH^DaGB9x;xUZvAfmP`I;Qnw*O`k_fvU$i)tP&Bw#kI7d)Gw?<`MnM3
z`>6xV5w*3k9C?tqufi~8`4)-@OSm|K=$dSlM01~LXCQgd0yUKyJ*pR9<i8zhwT~Jb
ze#V#XnnT5TtMs#*N0pFK6^sRz>6-J9vf};$14(_Jv+?=lI;4tw3Ex|fxRkrr&4x!^
z3LNzt6H4fJBd&xTCM3OB9#$L{Vv6X86i(cYyW*xv@rHPr=e+&x_*pM68&xM|;%Q}4
zSB)EYc*Vp%Bkm3DGNWGd`J}=yFk5)dpH{XgqO{_!xTyxg!C0q`hbdjeg;!i_+pCOB
zF<{6mhvubyr5o;{!D-JNnwzgH_8<cKjmv6HL{CzB(Huk)Motr0*2PO!_-f{FbY0k=
zs5P3lZOls+P3fv!h}|+{O&)7@J47D)vv9DnpGTS_T(lD*9&4mhbTyZ3bh<7bGa5n$
zGdb*ZEp=aX9t)SUt9sGmm#ta)Im6EE?%8<)!$P)qcA<sD?9SQ67Lu~A3l8hCqD5DC
zA6ow7tEt87^3&g(JoEMKy#2&^{ey?DEq=G}-QIWHk6Xd-Hy_&xVGOGY@3fxUdmv74
z$Pwt)-xqo}_h5)yvNm-Rrq(+Wpgo<prHZrkwguB|1^F7=khPhanTeNPfxJ$%_c{Hr
VKB>Q<f2f}xI5Y76z()gZ>%Yd}i!cBH

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.inf
new file mode 100644
index 0000000..2b58b58
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.inf
@@ -0,0 +1,119 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmAccess module

+#

+#  Revision History:

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmAccess

+  FILE_GUID                  = B4E0CDFC-30CD-4b29-A445-B0AA95A532E4

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmAccess.efi

+  PEI_DEPEX|PeiSmmAccess.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSmmAccessPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiMemoryDiscoveredPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..0e4ef35820d1b180c1d6139915747adb7faf9d0f
GIT binary patch
literal 960
zcmeZ`VjvrAAX_K-8UtJz7<?F+Q4Dy%z@*5{$j9&iD0%=Yqrk+#0KyDVr3yeM2&01o
zKzXn_paeI%B$O|JLmZp%0-$*^KnVjVjZF<XVtOU16(vB8hkzL5-Um<`NWp;u14D*h
zN@7VOP-G5B6zGNpP#Q$RfCB@=3B97!ocv^nTS0DC07`;rWZ=NS;MDD+!jZuNlnChN
z_#Y?{8F{#y7i8{279i2x>CnK>(D<<7KLf)K1`Y;>wC;;(@3Rzo15F~{Hy<<ra^E(e
zV0v$S;BZ5YiU>mq+YX@98x8{v<q2**P|DhH`u}VGZXXqq){`Z6&6bR%mR%ArX8-^H
zzx6<cF%FC1<|@A5wF&6luEXz)4@4gZn;Z?YhX-!Y%K)HJ$Uef#egF~$#&LrT&`Tmf
zoB?#?1t4Z>KbBbM>+IkAez`O2xss#kx_N;D0YK~n)C0oq&LKXaxH$wA1IL$2ZXQ?<
zP|g4(28|n7+R!V42!Qm0%z^M#s;a6|lG4E%Ap|HrsT!FWSsKkXT4cmyEMP2REMW|h
F0{{UZe!2hv

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.inf
new file mode 100644
index 0000000..fc85b5b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.inf
@@ -0,0 +1,95 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmControl

+  FILE_GUID                  = FF456B9C-0DC7-4682-9E92-0DE84B6E4067

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlPeiDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmControl.efi

+  PEI_DEPEX|PeiSmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x300

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.bin b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.bin
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.com b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.com
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.depex
new file mode 100644
index 0000000..3ec1c91
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.depex
@@ -0,0 +1 @@
+�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8e9fc865872c0c751c0d6c26aaf854a20d6ef3b9
GIT binary patch
literal 1856
zcmbVMZA@EL7(TbXv_M;Kv!G!KN;Q~hVsN3Ri7_S>MM*5Aq*8{pg*k?V=`iHhITGR}
zmnPanlf~?(CSXj=5`XL$+D>P0E&@s%PU6;RqBt@<q~q&{tQJOnP78_*{J}}ieb4iL
zo#%b;$=mn}IrO@8=*Ytddg}@C2*&>;m?MUVEJ7J^i-gQ=TO0;L`0g+j6b=Z!_b#`&
z;K%iry~b^9KR~~q+JSr(FpS{d%KaP;sjHDsy(1&`VbsX$;<a+QdpQW{uIW4>pMdf+
zY+ieETSEM^+=NWk^qqR6_hf-9=j?!$%iYUONL>rP?WbXDw}M=LYRY*ls43QHZSEmG
zq?=#h&v_l{cx5Q4Cx{@Bcm*jV>`yRD5Q72G4!DqqMkAmD@J1erBH%H=DM0oKK9OYj
zfzc<A{je41A6jCW8vK@!V)DL?V`owywL)Gb0wMB|(Z_LC=Op<LHMyx~3~&GD^S361
z5o1GKAvVJ9#~VqYn!9m3hvovb-;I}ZnBf#mNE8=2Tm-!QJWh0)eSoubJuTgtM6^3>
zgX&$VXeN?7myWx+doM6hDNLO>N}sQ4%cbg;qtDn=6>6swp@5FQHM1F95J^fyRgk_`
zI#3*I+{|~5n)AJD&G)W+7tIc&1Kgq6%;CQ@>i}u6BJxYP^b6FZERKUBeouLPoO8df
z-7IGh!be*c2N#G0=j&IJ+;Wwj1O;urJl0f9XIU1&`6Inr$2>U2niTdCq%_uOrzv_(
z{asSOvuigiEZ1U9BkVDlX#Hll2QSVG#-ciIjWrFi9_TOf7Rly3ne<avfb8i??#w`M
z$GOn6r+J!G<X3r4OCMF{&C;0eZDl10X=@9$2k5P!?u))!ZB;e|xm4LO$VJMADQu3;
zvZL^UcR*!CwyDf07pqK=jrib6@IK?mN3+iLum7?V(nW9Fj;56PH6>>XOYsIpA}omn
zbX8s0lE!A#MM19QpCjs`7``v&?^v?I?8ae5nJ!Bkm1z@lMD^wN&}984OeCNVY!W%^
zOmdF?I6*_5>+Ccv8nYL%)m%=^7|#kX;J@p>7Jn<v(zOqd)2ZxNnLMGNmeAFS!3Ca7
zW8xzumm`)5eyg&gej|2KIILRk(211<51{&rwpg;Rp~Q`}kmb)Q7|>DUcGk;<tg}lr
zb5PcpPejTtI!h<-$%Ry$<IneSJUCm62u`56H(Mx3^?;5#{%4)<^;Dg{lxp}`NZeZc
ze!zdWD>eOuOY~f5`}En`Get9)t;$;%Bg5D);pra7!x_d)+i&rfd9lBQFW)ad_p--<
z7(Ns8^RfEPGdzxuB{$^GEF1ymv$&?OFdTU-&r`tF{r&x&ue}a@(Bkv_(b{Kf&pC%&
P@41Fu=Uo?EJHCGdpQ7mr

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf
new file mode 100644
index 0000000..665948b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf
@@ -0,0 +1,101 @@
+#/*++

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    SeCUma.inf

+#

+#  Abstract:

+#

+#    Component description file for SeCUma module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SeCUma

+  FILE_GUID                  = E4CEDF93-672A-4782-A7FD-5FC6D239377D

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SeCUmaEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|SeCUma.efi

+  PEI_DEPEX|SeCUma.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gSeCUmaPpiGuid

+

+  gPeiSeCPlatformPolicyPpiGuid

+

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.efi
new file mode 100644
index 0000000000000000000000000000000000000000..22c7e70676f927d4ce2ec6e41c61b9f6daeb14b1
GIT binary patch
literal 8000
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf
new file mode 100644
index 0000000..45dd9b9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf
@@ -0,0 +1,152 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  SecCore module that implements the SEC phase.

+#  NOTE: This module was replaced by UefiCpuPkg/SecCore/SecCore.inf

+#

+#  This is the first module taking control of the platform upon power-on/reset.

+#  It implements the first phase of the security phase. The entry point function is

+#  _ModuleEntryPoint in PlatformSecLib. The entry point function will switch to

+#  protected mode, setup flat memory model, enable temporary memory and

+#  call into SecStartup().

+#

+# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>

+#

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SecCore

+  FILE_GUID                  = 1BA0062E-C779-4582-8566-336AE8F78F09

+  MODULE_TYPE                = SEC

+  VERSION_STRING             = 1.0

+  MODULE_UNI_FILE            = SecCore.uni

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SecCore.efi

+  BIN|ResetVec.bin

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1CE8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## PRODUCES

+  gEfiSecPlatformInformationPpiGuid

+

+  ## PRODUCES

+  gEfiTemporaryRamDonePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  Vlv2TbltDevicePkg/Library/PlatformCmosLib/PlatformCmosLib.inf

+#  Vlv2TbltDevicePkg/Library/PlatformHookSerialLib/PlatformHookSerialInitLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  DeviceCommonPkg/Library/CmosAccessLib/CmosAccessLib.inf

+#  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  Vlv2TbltDevicePkg/Library/PlatformSecLib/PlatformSecLib.inf

+#  MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf

+#  MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf

+#  MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf

+#  MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+

+[Depex.IA32]

+

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.depex
new file mode 100644
index 0000000..00c2f8d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.depex
@@ -0,0 +1 @@
+²�}�"rC�,�2Ӧ�;���\�J���B�.
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7152888719c4c31ef172a954f6e8d03875e95ac7
GIT binary patch
literal 3104
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.inf
new file mode 100644
index 0000000..a032c7f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.inf
@@ -0,0 +1,101 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the VLV Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitPeim

+  FILE_GUID                  = 24169E35-2454-4940-92BC-82321A2C7562

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitPeiEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitPeim.efi

+  PEI_DEPEX|VlvInitPeim.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gVlvPolicyPpiGuid

+

+  gVlvPeiInitPpiGuid

+

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  gVlvPolicyPpiGuid     AND gPchPeiInitPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.depex
new file mode 100644
index 0000000..4cbdd53
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.depex
@@ -0,0 +1 @@
+�������G����P���ƣ�^�H���3����HN2��G�,?��f���?n�FO�)�S=Y(mEK�GN��2v؆�}��J&�>����4/4t+p��1A�F������k��a�F{�Z�~�'\������I�K����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.efi
new file mode 100644
index 0000000000000000000000000000000000000000..18d5afc9c7ece0cb77ab73bea0dd14b7196b20c0
GIT binary patch
literal 8192
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
bA>+Fc;l;jB5X#Uq<bfd%40&M41C0F(I$^gm

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.inf
new file mode 100644
index 0000000..676b9b3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.inf
@@ -0,0 +1,182 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2013 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#  Module Name:

+#

+#  DigitalThermalSensor.inf

+#

+#  Abstract:

+#

+#  Component description file for the DigitalThermalSensor SMM driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = DigitalThermalSensor

+  FILE_GUID                  = 5122FA7B-17A3-4a8b-89AE-A93ADE92EADF

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallDigitalThermalSensor

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|DigitalThermalSensor.efi

+  SMM_DEPEX|DigitalThermalSensor.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1410

+

+

+[Protocols.X64]

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiSmmIoTrapDispatch2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiMpServiceProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/DTSHookLib/Smm/DTSHookLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/PlatSmmIo/PlatSmmIo.inf

+#  Vlv2TbltDevicePkg/Library/CpuIA32Lib/CpuIA32Lib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/Ksc/Smm/SmmKscLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid                   AND gEfiSmmSwDispatch2ProtocolGuid             AND gEfiGlobalNvsAreaProtocolGuid              AND gEfiMpServiceProtocolGuid                  AND gEfiSmmSxDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.depex
new file mode 100644
index 0000000000000000000000000000000000000000..cce1aa8782d7783ac5038e755ab4a29300bbd39a
GIT binary patch
literal 108
zcmV-y0F(a$;%HVLfrQi%yzu~l$2^FE0vPx~WMX4PPPK4-x-s1(Qv!|%m+Rlp#!0?Q
z*#@Pu4u%5VYvBI}VWviVvRa&e#V1?>x`?Y=;^1^fwyn4l_J|zT0`~Bu6G|rVKJwt+
O#S%0xGy?+z0|N-t=rOkd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.efi
new file mode 100644
index 0000000000000000000000000000000000000000..594c9fa927648a3c174ec7de4ff9f2edbe52c897
GIT binary patch
literal 4384
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf
new file mode 100644
index 0000000..b268a39
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf
@@ -0,0 +1,213 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

+#

+#**/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = Dptf

+  FILE_GUID                  = 1D000AE9-756B-4937-B736-1F3D96A5A8F0

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = DptfDriverEntry

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|Dptf.efi

+  DXE_DEPEX|Dptf.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xCC0

+

+

+[Protocols.X64]

+  # CONSUMED

+  gEfiAcpiSdtProtocolGuid

+

+  # CONSUMED

+  gEfiAcpiTableProtocolGuid

+

+  # CONSUMED

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gDxeVlvPlatformPolicyGuid

+

+  gEfiI2cBusProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/I2CLib/I2CLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/I2cStackLib/I2cDriverLib/I2cDriverLib.inf

+

+[Depex.X64]

+#  (gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiAcpiTableProtocolGuid AND gDxeVlvPlatformPolicyGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  DRIVER_BINDING                =  gSampleDrvDriverBinding

+#  COMPONENT_NAME                =  gSampleDrvComponentName

+#  COMPONENT_NAME2               =  gSampleDrvComponentName2

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..5066c0763638a39ff33c71c6d9759850f116e542
GIT binary patch
literal 162
zcmV;T0A2qAx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
zGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj$Tzs&UD_Wehl)DWogP{EM`bSrSe41h5~henUJ
QxSZsy0|NsC0|NsC2(86PtN;K2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4e34827dbecdb30100a3579e4414bd363441e3cb
GIT binary patch
literal 11264
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.inf
new file mode 100644
index 0000000..88d6d0f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.inf
@@ -0,0 +1,259 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = GraphicDxeInitSmm

+  FILE_GUID                  = 99EC6206-AA45-4CAE-B630-866755241C8A

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = GraphicDxeInitSmmEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|GraphicDxeInitSmm.efi

+  SMM_DEPEX|GraphicDxeInitSmm.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2000

+

+

+[Protocols.X64]

+  gDxeVlvPlatformPolicyGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+#  MdePkg/Library/SmmIoLib/SmmIoLib.inf

+

+[Depex.X64]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex
new file mode 100644
index 0000000..9b2767a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex
@@ -0,0 +1 @@
+�k��a�F{�Z�~�'\������I�K����HN2��G�,?��f���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d2276cfd9ffe33f818ec89d172a439a18e850c0c
GIT binary patch
literal 6880
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf
new file mode 100644
index 0000000..dba2389
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf
@@ -0,0 +1,241 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#   IspDxe.inf

+#

+#  Abstract:

+#

+#

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = ISPDxe

+  FILE_GUID                  = 5A38B969-CD6A-4814-82E6-559F840BBC58

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = ISPDxeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|ISPDxe.efi

+  DXE_DEPEX|ISPDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1670

+

+

+[Protocols.X64]

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.X64]

+#  (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiGlobalNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.depex
new file mode 100644
index 0000000..1b4e8e1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0��������G����P��>2�u�*O���Yj���ƣ�^�H���3������J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d1147d22b2e25247f10bee86e2a3b907da61d163
GIT binary patch
literal 4096
zcmeHJO=uHA6rS3y#<p?ep_qz?s4E185Y43s>Z%n-Ts6fCRzaE)@dtFRMraCRCAM@N
zB2_O63jQ2a5W$05PqzMs5~Nlw6+BeE1QmZ!1VLTDx0|i;Ac_hiW?*;Ud-LA=-uq^D
zXP2#EzdSO(9Qo%1ql*}eca(jT_%)jns2DYlF*19csmk$q`U>1g9#x>bViZC?U4?7=
z!Lu;!4_rs48v~3@8qt1V2qo6HB#>r8DQ;8{_3$k%EWp^tP&}51VTx1lFcfkG%^o^q
zBTKB2C5(&wD@pk}bjB8hTAYM_GQ(i|f%?Ls!>>>;%734MI-a^QoGZs}fe>g|!$mb0
zF%K7;d|V{`Tr>v^5eph(Q`ivAHHJv)T-0&(d_(lDy1RKbZpn>rYt`NJTj(x2(Gm#<
z4(Ej<XY#^{?!0i8HWm3?7|IJ*auE2;9_vY#%W5uxFM%(CFM%(CFM%(CFO#}@z7E(X
zVVgF#X=9r%w&`M<F1G1nn=ZELVw(=O=(l2=r(OiPT+nEwYqc;>#kDZw!n;{TZE5dw
zY-TR13}}%7E|jGZtS-F-R!Q#ZswLzoGgj2YyJ4o$hQQfm7Rn5~jJf@vEsMAJ?3|G!
zG9V?(d1{VI@9C~Fa2gGXr}`{}l_D(nlKiFeic+L*1g~eokM{$#eS1D4M*G}pKVjEb
zqIwiPrw_9z<6$BS*E>**w4nv5n;^tmEr3cdTbAWys0=t60CJE(Wac(p=!0j0f2G5=
z-E+E%^q_|D+Ur>^>NV^RL-RO{Df7S$<*orUY42U{2s7<HYUgRY9!zq{`TG)&y7!Q6
zQTD*kNGlV85gCx3^=&HaX4G(MngSc+Q!^;xDZH=>WmHMpyXtFhsSG&@9@EM=tCjY~
zVT%k{UHvX9wI8P9bTmF_^U1k-X?_V8WRuEC3dgef?EZ-3Yl!`i#xV6dcUHyCon6yc
zoZCOpu-Vt1y?izMZutGD#mDaZ&b*2C9yq(cWa(gR>hj|k=iWXV3O{&s>y-c5x(q+j
zdodzDh$BD47nX)~;p(1@YwXWN6n(zOz~Y7V2A%Jf_|mv%KK<KN;C!}qZOc|WHo#aE
zf_vUap@&J|?wr?c&}%41(~cc5+iOE><jiZWt*!B<4K#ru`UePY%l|m&jQL5=pZgGt
RqsTy!fg%G%2L2%iz5opWS(N|)

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.inf
new file mode 100644
index 0000000..91b1687
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.inf
@@ -0,0 +1,121 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchBiosWriteProtect.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchBiosWriteProtect driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchBiosWriteProtect

+  FILE_GUID                  = B8B8B609-0B6C-4b8c-A731-DE03A6C3F3DC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchBiosWriteProtect

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchBiosWriteProtect.efi

+  SMM_DEPEX|PchBiosWriteProtect.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x800

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gEfiSmmBase2ProtocolGuid            AND gEfiSmmIchnDispatchProtocolGuid     AND gEfiSmmSwDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmBase2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..43c341005a38f080bcfc36c46f223797c713b117
GIT binary patch
literal 126
zcmV-^0D=Dksbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0^Mui{|8~FMtiba
goPNb8Tmp^=m+Rlp#!0?Q*#@Pu4u%5*0|NsC2o*v%X8-^I

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..bfdaadf90d9ddcf4d9ea57f1c72cf1d65f0c4ce6
GIT binary patch
literal 59648
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
bFBE`&LwmnFo~e1}$?ZF~hv{BOpWpuhCE1oB

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.inf
new file mode 100644
index 0000000..6df4e59
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.inf
@@ -0,0 +1,272 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitDxe

+  FILE_GUID                  = DE23ACEE-CF55-4fb6-AA77-984AB53DE823

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchInitEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchInitDxe.efi

+  DXE_DEPEX|PchInitDxe.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xD070

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..89550b75de68aa683924135d77708ae9cd5b8634
GIT binary patch
literal 162
zcmV;T0A2qAsbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0=K`+^x*dWN1fCV
zsPRz2kpgrpaKa3LF+qn$kF~g*<g5bSYvBI}VWviVvRa&e#V1?>jtH0Q-_OQLzDwB#
QrLqo&0|NsC0|NsC2pfM&K>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..a7e8e4545794647efba6f61bde13c05a28f0a84b
GIT binary patch
literal 18432
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
X_zyzBDgG}GTX_nduwA_V!w~o%5FQxC

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.inf
new file mode 100644
index 0000000..40e0abd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.inf
@@ -0,0 +1,284 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitSmm

+  FILE_GUID                  = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = PchInitSmmEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchInitSmm.efi

+  SMM_DEPEX|PchInitSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3400

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..6f989cc9199142f9565a01ca77ca98fc2e1e5354
GIT binary patch
literal 108
zcmV-y0F(a$x4+Ev;P(ATozxJh@le5$0$V^JIhV-VM2PcDNs4dxHUa<yAJZ0n7DK;?
zU}cCqKq~^NWdTdpVIxkUwLZt3E-=*s_VA+<N+$3=^5EXZ5;QL~0(2{I!VG{hL5D_<
OwYZ$*tOElB0|N--m@hg2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..f0b28d728fdde6edd6354bd0de65f1927ba43a8a
GIT binary patch
literal 13312
zcmeHt3v^Ufn(nDoiWGTpN=P)IU}=i(jIrrR=$<^V?>XTV?7|Zb5;4Bf(HflQ3PKeE
zSEmcBf_2WeX6zpNs(p2}ZR>3uz1q`{JZK+P2_zLn2(g7AJ$3@!_KATuLJNqRn(yDI
zibwaX)pzyGnzd#vYpu%JXYYUi@BiQbzbj2QOMmgF^Do}{AK%#Qm!!KlyUs&2E?w>|
z%9|odU&3^uz4Y7#czVtOqjBCj@3~<FgM9m?C^z?Kp68<dGoX^RT9S$Zq^Oc~$)5%O
z{|A^8x@Ua|;Qh1lhZrK+vvOc0K3+*$G3V|(LwDls$4>lF@Fkcl@IB|FNK!iYy261`
zGrpv&Ik{Q;sYp`eob@)sBQ&)fUxKT~_nePHaBJ>ax$19h*+~ZiZtgii7!ut1Ghe*@
zS7~6`jm+4`j6K&T^hp_3H^GckYh8i5Pu6;LBNd1a7qHZ*^Ei8cY_e|bUYvNaAoDpE
zjz9O=9k=)F!e<GKZXdS3Gg*=_@ZNMYGo~}+PB$~|^)O>YIWz9}>c*Xwx^Zu{Zroq1
z8ygg6EMfA?H#HxZzjc2r{%lxrT$8`0uBX379D>u}+fQT%Pj1Z)en9DlmR=wyrNO@p
zWd~gr2JEV2=Fl$2r!x-v9P~NpbI|9Y&q1GqKHs3oFE0V@RYZH0puI}aUX`Q0Do1-&
zj`pe??NvG2t8%ng*|d#;%$<z%apMy30ev!KFKLcN4;36|FB*G~|8wgdq_E?U3AGWZ
z_<VZ)>#oy(^!`+9&n{&tiyrY>_mYsE6qoo!Sfa#>cw>g^0z9nHL?*-9lHn?A3X&p5
z8wy$U>W{w)(1!{DbOa+7-I>9*Q4FnL5<H*z4o$Zm+~BgV17gN|$cnds2b(72jm!0f
z=Bs7VyM47-f0r30b+ji@@;zh)W|Uowx0*pvn1Mm&F-4%E9f`7X0_5pTGtA-o6yStP
z0dS(^A-tUhR#>9NS4}jkC4Ws)?1AYpXGIE#it9EKm4I}PWnjs{XxNvsTmYF%Abde9
zhCc#!>nF4m8d=0T_3IW~(|E_%=jjR8XT+1?BE^8i|NRwuxH4BtlG^2guCR1SaP7K<
z#3SY_dtJ9<?0^h=0N15NWXa5TZ_Nu&#nh{qV$M`o9`b3>a0~T~ezioBU|m?PlJSzO
z2vb{ss1V>EgJ7n4HAWR;HW>=TOtUbSLNmc$8Ad`uzXIOOV@YC(yG|0D(W`%rhYhw5
zBLVi^bHN5|u%R<xdvajA&jot{vyrR0fSL#FcVe`S+zPzz0R2pJwdJ}@5|&7mM6q?7
zBsnqN3gDFhhE_vYM6O;eFkFURkBeQc)*f$eR}<}W*t;TE&k~R`u-!%56J@io?62w1
z*}4*Hs~p_{$KAz@TYcp>EW1%%rrrqsHDk~Hz%IA%WzIpl{lS3(%q*&sBz`jWeldTv
zx>cGYrA9r$=!g=Y-Q~R&manC3#9fyW)Oi4M>^0$@C6lnE$nE=C>QFI{6|M%3=<u;<
zI?u3Qx`zKLU$VyC;BszKliT+MQX|FcHYzuOIE{0&k#BKVIzjq_^2nh}Rk=N>)(^<-
zJLQFG%|zn-z!82Y@`?L_uRuLd0RB&?eH2YQa@3yL?2xR7K@G^i31I$Gbvanl_{TcG
z`esb%&IvX3dw1%nN9B)@#PYV`3)kMKnSDRGq^94hkx4^Cesgzrrcv&QHRJ;>hzuSy
zV!jA*p2$88%~z?!SNgnG{d8>XcvLKJyEFr_Xrr4prbb-Bitb=hD%fb)Q($iQUkORx
zN{zVr7Qv&=U0s;mbO@U>P(yD~8jD3cNnX`>RKT!IH?;69Yz`ZOL&jAc5Sovf2&$6r
zU_OqBHdTkli}zw!YdY|^8eojTDoxdocdw;f2(M2v{*>=A5+}O7S-nHO{f^sjL%yO|
zGYcc5bFFQkXEK0-M^P%RN%p{}T6{Q-bf5c%rSPm4;amI&wkVM4bR{Jwza`@7=a7Z}
zSVM?og+cS1-j|RmbE(SpH8MuR-ztE&0{F~Il~{3Yhi7eT1$$az&C4p^ooOZ)o?<V4
zAB$>YSz&J8kBDMObgqBEg1N*WZ}v0pZ-q`D!bBjNWV9}~tA6ZYiA#vx9uQ@z!+DIq
zEpVT~u^3wzUqV|LQhKO_HS7$zb>3r@pQ2pvZ;jMC*8CmgN~=i;c`D%J7!U#q?Tv2M
zmI*D6)Jq}1+@1%D;NvJ52On+_k6_P2BJMnxqwU&_WzfUUgCP%V*b^!OJ;wK2&!5a>
zM0B5F??r$%@)n0jHCiN(O;*VM9a=D390h8;MJfO>Pat|qS+hN{aGo;vgvPyk;%l2>
zBQ<rT)L)Z<WA&=?54Xz?pCl*XuKF*7#l-iA=`D4*m^p{c1ua_@Ikq1&DqlFRCz^&?
z^qyfd95eh3`DZtL1T0vT;1N=j2m~txAf^*#+XVzx`}_)(wtfC)%w()|ArU=ADR5&a
z)zZEGV;2Pt|2Ru<Do0qtKi=m*PFtAKbdoik3Qbiz5uaGOVVv<jmU#lS6W7UrR9Hhg
zB&(fNi(^@_?z7jXVXgW6wPx#jTEqTh;6Rz^4P^QP(cXL|GLbJo{5$xl@OgzILcR5l
z+iyWobR(bYykt6zRx_yc15G%Du7t)sn9vi7yNP?68s1$~65xtEkSNa68xE|I5v;I*
zH_)(m&9CPsdw%Rd{D^bR6@a3}3Enjc{0isO#c|%2WHQ^ycq$uoHhjqoFq-usl!hRG
z8sk_pB!hY$&=4TYEQi;*4x?eozES}N*b&T7n2R!uwGD>8s`E|HfFxx3?Q9sEr*&R-
z7$d!Ia(I$nx5N#^8H9YQoHcZ>8AZ&qM7|Q>TGB%~fcSy<)-&J*feX{+!{y=ng%lze
zH}N99E-(--4DbbRR;LaTo0G8=wz7GICDioT$Kq`A<jy9MKfE;un>eg`n(>ct#LKZO
z>3nG$lw%bbG_@t=*bEG;jid#`Urn@S)>#T+@QI8Th~vohA<2?xg73W<IN6(lw>0sI
zZKP%SyQx6x!(!d}Nlkwf@5?kV2Z{|qF<D>$itQLcjV}ol{_1TE?}^2)3-bV@fab1*
z(A)k@^NO(^5vNVOm*VvE<76H%)+K7B>smF2B8Dasi0X#j<h-IT;`^+<Iap&oa+V+U
z{A#ZNHCihfZ>q)^`C6^EYVBH-wA>10Sc#@;sWBk^8kGCpP^@u{d#sRkQl#J$Vf<EK
zD;&Xleom*t>2j;y#uzSUol~;#V;8bMr4sssubhX+PW)6yfKbTip)$f7;0FSTT7C>R
z2`!^^wFFh@q6*mNJv-8&sq@e`z=dYP8@y{l)RiMToAE$3bM8Jj*L5AE;5&~8$O3hQ
zsBYfw6?MPhC(FtZIgBU>+Xllkh?yDZ>j4U*ZM5>f^$p_hkC=NGsXBb&3CK@8yK~$j
z^};mR1^X~Bt1Dtg(Ru7Yt8)c5Ypy0W;D9(Cf_?T_CqEJr#3)usZ-P&Th^fB_1#bjL
zd$1xUcO-ET=zlY$${lYXW%s@rgz`0>egnQO=@oleXW7e(MmCndyoj9~X+kon+R65g
z>WR|AK<a}@flPOkb8mp}L|0U<SL}!UVOLYbz`B_NoyL=TMPE}xYAw!^esGn6yQjwv
zkXK~2akeKZxztBKKOK^W^Pzdx2@a)R%{SK>M7;ptMWaA9h7-Qt9h#wvL~ZvNJZ(*e
zv`91W!uWg%<cHQKN4uTI5*Mi*%}*}hU7pQ%;;?VH?95@`mRui1$UO-Jk@clg_$KQv
zif>-_2xj0`<6bC6?r1FTZ7fBFGc}MJF1FtI6d;L`Ut-Ow5H45NYJ>j^rc_}>>w7lP
z_X%j?Gi(sfoaN^#0<Uvjjz_4mX0WE;S}Mr8%4s25D}~{mWlnm5)MaXCxr8AEE*~fE
zTpvN6US*1d8Lsy*%;vUieuP5$F&Wt)OW~E!9S-kk(pfWTs2*@Vix{f2xqcR4m>Rp3
ztl#K?eAeO9Lj1VBlER8jyth$y^fs0`tZo8Gl>7)Q)|W^w?z#oQy-Hb*jq_?Wbr}=s
zm01rVRlZK$2X=pg-F#oB84f(8zAl7Af^B;aQg%WSnZz{^&95MlD!|Xda?PN|Q|RCr
zzfI|NJ&75IRRxSxq$EmS$l_~N`95S`OC>cW{IzIIsO<Ej9XlpOcKr|RMBO&tCFNxg
zKG&6)Lb-t4e*;?Gl9|Ajd2Fjh3U_(1hO}3UY>S+T%;%aTW?Ux$g-ujy8Z&Q(Lt*Dq
zu~W3okS1P&pu#2#<p44W>JNmz9H&wz@=&!T$BqgTv|cuXouWfU$N=VTtXNIcpfBpX
zfVqEGPG5$<l0e!X0Z4*P3Xr_6XKiLG#Yu4+y4;PJa9BmaVC%=o?r()GmDpo>KNOa`
zS8R0s9g$Czy+JBUlw1kmGyUo!8=~5Vc-n^eVCGo}@ME~{^pZAQR}d6;O|yYLHt@_d
z=!Bax^>$IwWb+f{b?*)5Rq|dqup0=~*YhEy`YJgD;|_n~?>}b-Y=8uM6R3oN7Y<VE
z=e@ddPi@Vh%J-0i;Fv6^Nsf{Z$z)ysj6rm{OSJU7<Q4GNtK^jgHDkTAPj#1M!I<H|
z)cwVLgIn&nsW=!N%ac2L5c)ld2QFfWdMFy11>v}MEr_3j2FN=Jpk}biNh~O57?9)t
zOYq!OtMNWm;uo^ICIwYB-wXXK*3u&+P*W}Nc)^a`(Oit-^Q6>fcuGkTCWET;J+QA3
zU&c*X?=$X47DNuZ)z?ht(F)3N*%I-#p4=Tz*&b-6=3wp3rE)9^(Q0p=5+-dtEXHLa
zKf>I;1>#d->W?mlk`N%Z)|WrYWY8o$M%z(f>b}}0E?JvIyHU0gv)CB5obj8>j7B$-
z1+=udn4y*SC)h<Q)r(0eC-uN|l@DpgVz4^Hx(KOa%x#s@iO+FTW^bhI8qPHvNL5O@
zp$0srNTGRZm0Lyq3c^4}Tves`UK~rhv)ej}E=27jhY;+mi6su}Fy`#Ex(khce;3ta
z=<Z!|d-vQy-I=CV{@O%-8p<7>K}*BMS|Z@pok`VHrue=!KTnnY{f%b6W9-7n=}f3h
zZcjIwrH;sHPpGKT)Eo}qXW{ozIq%v9lpwJ;kUHejodbk;aiVkph#vuBx_V&Ffldhl
z?}s1C9XnN|F)|{Wg4ytqB<6}ec<sj#CU<C_Jhk&P)P}*7l^;|qlHom=?WW$>u60&Y
zlN<7tQ(WATy+84SfswffRer>8j<VEmOPlzqniJcI4tyqq_Fv~G0;%`q0BRcNTXKgZ
zh_mBCQ=Jk^D)N(k%ETTe^1A{*RKsTu031?ulV=Cuz0M)s`LE!?NqZE(*=@e9n!Bv$
zVLH_MSE!NC9pT%tjt+<J7UcE;x>djxgEqrW0tAcFxLnX@xCKAzM7LJIf8FB~JuK53
z`SenG^UWe2;JU~Gd?l(wc<}Nw9()_xoF3>@Yz9)jJRg@p1wpk=UiZ_WYRF^%PxKSp
z$#tO43v}L(M_ymP4=RTs9qB&hS6&SJlwk=@(x?1JiqONNUsC#%BUpm5JG!Cp!eDB&
z&{q%{DVXnipgQu2>wzk|^7%!^3F}q7%}Zl)drIYLwc<@xer1s7$K+R14CPIJ&~G@h
z{>J!rEzZ1JTq!r2VJqfdif#hzttb1pkMrNhTYO8%N+#}ESNc}i4go_g!)Zt6Y5$a^
zekU{ILEmz@Bfk#5feu4Lb!uvLQ#AA4SP~eT<tLL9X<q^EOs@BvJ?7hrx!a<=isR56
zh$X|9m{`&3hvbJ}hS+CI>d`)W<uff*ec-2u?97}y&{6Z4Zvfh0&R=W1h}UT50(a{7
z9t~G2ts2NIjh=GIo9PZQdMZzDV^9kAf6(<AtgiDdzG3VIV@qNADi2CY#vk>iF&8Xy
zm^)FjRUym8d{Dc@Yn#yU-B`QDH-tBN^Buqm&9X#kB<QazzCK(9`-ZO13zcMJrB1s(
zFMOeDYS-th^-#tO*fu{S$9{n4M5_K#foILDrtVu>Gsv|nA8yWy<mmG_$YcHCsl-ub
z7g?Wfy1+@LV*bqcV{BHtsKPK|5U3AowC130sTmC79F48QZn%%yxzLS`8nRA{+O-h;
z1Ko6r&6GVEREv^8Iz6A}CyDv&%%ssO!qJ`zB(8U(a$V|RiFpzDd7^YpurBYRukb#W
z(0wf_%R?n?i!~4SgOB@Ka{81z`cfkv{z=g(+O^CXNR(brJ1-IYf^d-*D+886+Sjt_
zcQ__8MW=FV)=Wf|Q9JrugsQo7^f!3m&gWgf+|hDzaZpWtP#9FBhn!S1+ye_}XxwU&
z8o$P^;;L0mS>?4cUnkTfZ+;qo74t#gQVLMY4T)lfs3b8Tth+KEl3x=^4MTzmUmL6o
z#q&a*?Ci>To|yh?Q;X*-^?jlI`I+z)IRuz=!Kz}i?3~F-YJDnn!Te09WTLx%i{NBU
zbPSpJJn{(k7P{bi)%OgTQBQQ|g&6;tZ!2D2lOj%uw|t|Rcl)`1adE{CKi4kKS9yQM
zTMemB+<&5gU$9fFNJ8LAT1DF5kX|>n^K(kiTE)OvK^6~?Izk%n<t?>2RKQ{5`UU;m
zsaEtLB>-iT)c7YTCwER{QPTNo2Sv^SgZ|4d81v-ba;vZe)IWcc+;$Lh@CD`M4<uj8
zawD`GRo++*r%~#A<;@Pz<kytr2uN-k0Z2wo4SR5ZwlC4>NDaHSqGV#BLn}&YMcqgZ
z#)5LiJU!-AIvm)&?pqY36q1^m1PRg_U7<3X9?rffrX62#ocx%k6af%aBaaIE>v*Zu
z07I@qo6&~vv`(DPWQ6~r3Wn`hC@~!LNNC|pAPuf5qzpJ2!xaqH#DV~(lm(|<qE7T^
zaX2rfug$a2F4;M9q6d>p#HsNX@Qb2xJ#L0?={b8<GB%d&Z_DGj4+hU}y309xR-!_3
z9i1vkKe+_SYY0uirk-K2<L3wHUJ++B5}}nw`2dBEL)W;4L87BiWOP4Nt#WOaNH1$k
zacXF@&gK=>z?+yWR=a4AI8i7~;A;K}ysL?OC)DVt`C%9Ot}z*zqDSL9a;to8IWGT|
z*op8}FsIzUMI_HnBXFIJ+-}Dj`AHI(Qit3{1N3LFv9w&7dlVu4;H(+iWn09Zxz3*x
z2~jg&64nCF&@JkTJ|%Pm*@^NV{Yvl{J&|@8IwRe<8^5+;lK9l(D{-g6-=vgRt(m>z
zdY%H)wlJC|>mpGT4%l)+W_^~Ylg@!)MLJmYsKA258M8!tji9~q-=z)oe@Yt+^?@{U
zCl0DN{~hvAp!n2zmOL0EQH&@hc+KGXcqp->;Ue-h(jGhw=gs=*L9NbaEj-1HlG7LG
z#l<tg@zcdqBEWEni{BemDm?7p9L}ES@n%o_%yGT~i3oL{#_3ca#jWMz9x5cyRDl}D
z@)n_OveY|^6ZvE^I&M*bl2EOD2L+FUsZx<CX|h`7fpR;Li}tET1FEs4objvcft)#U
z3h<$LL1MK-?kEU0><E{3;htEsuKax_<9u(^r}Pukn%^j}J4JFXt7PXdWvJa1u4a{@
zmY-7-9D~kC1!Q4##%K){^DWExIFsRv>{Jw<t<-<K&Z~AI2H-ZgBIccMDRH!DaORpp
z0w2TyLn1!|2(^o>hZx!-oPl&<|DdDtohUNDi3(RUyP*r!988VK%$eprPy>EsHHE>O
zQFmHD_ydAGBMxIK({%hKT&*RpgYap^JgM3>p{Y$T^?jrkrW)fI;Y5WJYZu1#>7^*C
zoS?(_0LpNX*h$w93`JzV12t85Xd@N!Qxx;pv7{<L+2g<BfEqcBUmmZ13nzmu0O})1
zW|v6ain$La2slq^C=^`a%~l5ZLx0ebMs;R0630M`>vdoN^whiqf^oI};JP2yWNfbK
z*X>$0@1uY-CHTb!KT6?iPzsy2nsE2M2wa$NYGzC*)U*|;J5l;6@mGa`EiW!>V<=S?
zz$no5P!~#CX#vvGw5h?ilpL$VJauf<in$+sV%*LTg5oc--N6XjT>RXQ4hY>rT8HwQ
zNkfx^4Lx#<&V49pa;{H^eCVJ?p(d%A<0v7Y$6lxhhfOc3DBw&|wr~ywoCmBnx-T6>
zhtPo5N$n)Yz}NJtK^5xyGD<)4&~WJjQ=8@~R(fON-LW8!S6CENu%-t>KL#)*((51{
zHruk)pIrBFO(rV<=~4W<gqk-12F?{RavD0F4xK8sw!T6>o19mWvGvp?xskToQsMEj
zNj4&CK#=zK3-^K#y-^HrklRm-qTIO$%DD=ykQ{pnoSE8HQ)>ESN%Mg1K||z0a1VGj
zMMQ+IT(KPb67K9C03NyhP3nvp(6lF+6F+zF<GQC<-ZnCI?R_=<ksb%R$?N8UvpD7h
z2QbV5hOZGPqL)022S}h`;DL58Kp!b;(F;5|oeUAap9oR>c>}6YNhMU06V`7cl-|;_
z$=!M!#E{B%6`|KZsyk8n^M9or)vB30DClc#_tg?j-oy>`yY91q)cL_c>M-2rO`#hK
ztresg&3q@8`~_T4lAr93eBg*2LU5I=#tx`6+h6t|@^RB{szr*qq0kIWp6?D%L$MH^
z5*hWNT1}oveW=M=kCykgRzJAz4Z7s0r5;4e29gs^6sGj5opRes2u3c_>c_$DQO!-i
z1YB{R8W)2<PJg0&SYekB_HSR`g?{M{$%h)@DvWV&^)Mc&2@)kL*go?!@Ja%-e}c&U
z-;N4WD5BJ^Q&>~^-lII-shpA`AL2eDKX_E`7{Vk^eF)Y<1=iR>n80QI0S{agQMXI~
zj+4W66w|mCvEIQmH8weN*kNX2K;$p{4AVZhLVwRb-#zsAcYV_Ee-?b_`*Wt;_w=^A
zHqLzI=X*MTdaW^gt9Rs^D;`?>qNlvH;zZM?vA^v-;%fW$Jzf9z<&S@L!GfQ4%2O9=
zTLy1@aci44$)mQ(PfWW!fA#9Sjm+{%qXX(IM~|taq2Yfh|Ji+imEP{U_Qjj(tXGze
z7oHgZ;k3nH8vn+z;rDh-o%hvwuT9Lq!uoPy6W_2e-u=UoWMKT2AB=r|h4xeLv={Y`
zs#hO9-LdGkKb%<nuvAmMd3-Q^i{h<&JpHZ~KduMNRVTmR@y4z{44?RX(bK>5Z2hP?
z_3an#aa^<S&WdZF`S~~co|;qrPN-^icX8w@^^t}D`18)Ee)Ezo{h$7&e^so(cOJf9
z!}sg>{x!a}_}1Zj?uV`gDJgju;QN(xSH2kkch$h61uZ(AP|qQ;<o?%|{-=1hFZ=HM
zpZ5vb6kHk+O!oh5J&5{dEX-MBPb|kf^?-BkTDz9u$w$an>~-J9jT`U2>u+fRo9KUU
y=d8{mS}sXP2rm2owgmFU=L-#dp@A<n@Smaq#s1%X_cNYn{!{RMf#koH2L26ZEai0o

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.inf
new file mode 100644
index 0000000..7e4129f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.inf
@@ -0,0 +1,245 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchPcieSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for PchPcieSmm driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPcieSmm

+  FILE_GUID                  = acaeaa7a-c039-4424-88da-f42212ea0e55

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchPcieSmm

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchPcieSmm.efi

+  SMM_DEPEX|PchPcieSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2A00

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiSmmIchnDispatchExProtocolGuid AND gEfiPchInfoProtocolGuid AND gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b943d98dedcce25e022db92fbe6b0fd4fd8790f1
GIT binary patch
literal 2528
zcmeH|U1%It6vyw*=9-x9m_-~B+ThqurI4`ngJKkwow&gfH>F6SP!u*LjW*C!+7(L>
zyfn?`&V+5#*653sHHaXJZT+H(4<(gsvi3!-f{2n9AN(q<A0V<#*8kbrZH|E!Y@tuR
zyK~R){Li^(@4YiSw|k4Y=62$mM_&KHja@?Y<{JJ}=%QF|FEMTtc2tN=EtE09xa!RY
z(6zYD-nx*tWO48ce*6mh)nwHu#Ima;{Lfe-yKPSvW0umIu}-^Yc^O-XXA-?V*&c{C
z_C?7B%kz>#OxOLp00r!cU9)waY*L8M#GbGq?ZL@f9$DU!$n%DNTjh;*W;|cMev1&E
zZ%$N=H45_+F5wM*w(8Vr&)?+4DLJs-!SuYmG++YrHT3DcISi8u<RKXMlL$tonyef-
z&0nJOQII+}he10)eJS4>hed!!yUis8&S2eX-#ilP`(e78C!yZ~nvxTUzJ+`$sm_(5
zp9X2`9`ul(hjH^yM4`Vx`!{1i>?cvp(y!hPRA<W&p9)2)umPFc`~f}mZs=X>zJq)U
zLQ2c&P=5$I!~rtCyf5@(VQfw48KKt(FOdJ>_BwyZ8nwIt3gq|XABio~@~f&pfMmCM
zGG;hsEqmYuGK1bJ@0-jv#G=18IP)>1uVtsqBHcZ9DP>ESh6JC3R)ci4$CTbi!k;ZK
z$`ue(err2SQQnJwEj~qQgW{3fBPrcFgUpn+K7#2h%Iz?+QF)i7_A0u`HA?=*CNH0i
zKTz8BGwQbC?oCM_Su3&PVc3u9?}<9wQ8Mkf_QSYA#Q7cTaCM|RT6(Ol^xXL%%x%YT
zOf`aW&L7I$3A;3AsFgpW$XwUD8D)L}YSD5tB7s~_dGmd~`5-}ATYtgE;=c7Mvb4Mt
zo|iXAFo8ghL-O)gKRuJaN&D$U15-hD=G^7eT4pI>RDO#{IxpA4sIx;;@)yYS+T2_n
zo_0Elk`P~7)EQVjk2I;Y|D@AV8S}7$>NAf7JayY5kAKs%VngA>hl{T!R)1ZXc;n4#
zpw^}1YxY(um1?=10@X_AR9okQ-p;s#@%@bViiP}P#zTzvG0rg_VXPVZj1Mp#WBhJY
z#Za~RA7%V9<5w6DGtM!7iSan&LyQkI9%Fov@d#thct7I<jNfPc0psJ0-(!62GV}Ym
znCTrx7jGsUh0CV*>7sWj&%4PtZU-KHWK%kW{~VpK)w9;wF+jggXXq?$VEtUp;9O5a
yPwWcM#R7aq@vXaeQ$F2Kbvf<~4i5HieHwlNI-RwNXTxzP;nSH~KVN~@)&2!+^McX<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.inf
new file mode 100644
index 0000000..9be8c00
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.inf
@@ -0,0 +1,109 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PchPolicyInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchPolicyInitDxe DXE driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPolicyInitDxe

+  FILE_GUID                  = D6AC4AC2-8BC2-4cdd-8776-280E1469DE02

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchPolicyInitDxeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchPolicyInitDxe.efi

+  DXE_DEPEX|PchPolicyInitDxe.depex

+

+[PatchPcd.X64]

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7fcc3222095f2b04f5a1676c3ceabcdddfa3cda5
GIT binary patch
literal 4608
zcmeHKdu$X%7@zifZ4u5rBh{LqoOB}%CbfvcA}F`*p3cb@k4L2ufg<I=fTr3zg9NqY
zsNOQ!P&F~e7(#p`3jP5xX^#@jJxF>y<fRdOL|$rI+R_V!Vi8?`-)<XPV)z4%F{abp
z%=iAj`ORael~1u7Zt)xT{O244KE`Ta&lwgl!zOq}XWz_NKE%1UD(=QezrjXy_8>E4
z41gX8H)e?VdgRcs*Rva{+u~tt+)%;aq)S4}*Mty5&O=89(cFi_!aR(vEU8@@S_)ND
z7CHzl46d1|m$5W7R+~?KDSm_%ARXGgjFp$Hu>)$PfWWf51`vqLp&4oaK?EdEJau45
zlO`m%p1vyj?J8+mNu!1fE)Qo9yk9+B@Z<unf5Y`dvkfiR<kSA(`mgm)|Fr&kx27lj
zk&}5m(c$RjA9s$@^n;HZ>+;Osq3HeS%96!apapaI<T(7feuOM}<aAyy-=-hw-CDhb
z47~Grq^p#R@@ma+&ctEY#M~O+l)YSc_DhU$@f|3WD8redL09Es(3(ZNzQnMT_AJ*6
zc7RrlIc_rXXnMh?#G7x`;iSMJ1<r~Kf22C>w4^`dNDTPHi3?|FAc)yy`H8REr()H)
zIL;g6FHhj2U>*#(aMfZk=hi_`ZVQ$T3Q|0>r*t9Bjq946Z_h7MD|=}&?H<ajJ0B*e
z#&}rbu~GJ}YUt<!(Z>9~x%0T;^5X2HoC2~l3QABW6(6a|C#eaR>)eexE)Xf4yD?~n
z;^vV=zS+cS%EFm(S<c^LfU|E(Ttw9diN)9-rpb%auxPde6@pB`N<_WTgV_xE`cn<2
zmBxc|ItXG>QH`uCxuMBk82Mo|kjqfzzz}c`IViF76NDTF?(OiP6&e8dDo#(!`CMNo
zV^4+T!YVGhuqh}-F4bpLo#aMk#tak!F)6wXlT)SU%0A@_6vcdwgG#F&jYbubR4$#O
z-gwnaoOMdg`_xs58NNwrSo<!jj-(oe)1{M^F1ac_Berep)~)KKgc^k!HWy$6y(;!8
ziH;m)V<J0VZj8x~pK{nn7krI-r44T)DU5s7jaBDWM_OuGl<__EO?bL0wS2Gir5xeO
zvGI+aa}=>(xpW4()K$q^<=%AoHd{=xyl0bif2-4vhjVt^*?FrXH7D<F<IB<j?QLA<
z8^>fx%?WjS`lTXu(q5F^t2A656Ltk1C%n;D&Ik2HnNF9QeN2s3o$t&cJ+S%?j=(D8
z-FV0hlxiXkwAM_6qGL1)Zn2g&MoStj0wOJmo%DH8q?W@X5$u^|jLi*p2S+C=i0JW)
z1Q$=s0WQ|b)tU&&HQ3bNMcCAu_`$C)^i<(qz`6As6@~t`ihTN5`Spt9mBy@mWPHLZ
zrQls8#;(KmIS9%Oa9Y2{O|WerMO#ofXG6Z5zH-;pC$;o*W9)t1;`sVA<}uS;zn_hT
z*OK4JE3^I=I`JWA`%Lidlc>9R85(RiR>MWQ{SvsK<9CsgT8{Ndt(`8B>S^qQ!#Of*
zQ{`${Vn2gGNufTP>q<JdOBT}{F|#sS>33ih>By2cM2YCnk{Um-+?=nWY(N<BOo=PT
z+~Qyl`UisDKBN4BU?lA(P%T+$uzP0@5Qn-nSOl1349gDnQK$!va=N9~jLSu@iJ%fm
z=8zgix4U|%QV%j(m3pj7JB!-a0=m|IAiO>M-1gjae_@1~l+pdum&^*g`;ysVH;>U#
zL2F2X4;29VT{lr&UMLifWMg%O+d=J!g=9<s(U}YNrR;m!gX=B=zg@Ish_QfTM3Qc?
z-wb%6TLE6|hvE@i;jzVmLGeUeTxf}%cMxY3+;3|mdprxdS>v_t&G|BJvaVu8`U%&g
zhU=xQwHP^#$A7eZHMwlcQB=kyzK>(CM)nkA!b!#sz$F0}#NCGhS0+Nj@qgQ*pB<Wb
z;L)#dd9RE$O`Msi#6(ZhWVc+|m6^TrbKZJ-^@iBydDE&g+a|_#+@m${(544lKR7Y7
zZrlrvN%yP|w@>ZbJwu#+_od6XPENP^-#ELe;!1K3ZT(?w{J8OV;m_(wQNfn7I#$oZ
zY&BcXszBF55(2GS<I-W?HbdvLiO9S0Bjz7yk5$aq=)D|Atid-l{jX4qr-a4J&pmIY
z@!)PCn}PRp%^?4xEr^5nlKz?cdJI;LRBMT)m)EXcTl>rkl9w_@Z|ah|fk0mDPvQsO
S(I7|K2m&Jrj3Dr@An+%;aXCl;

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf
new file mode 100644
index 0000000..03762b6
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchReset.inf

+#

+#  Abstract:

+#

+#    Component description file for Reset module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchReset

+  FILE_GUID                  = F5883FC5-F8EE-4e44-B386-6021FB320C9B

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchReset

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchReset.efi

+  DXE_DEPEX|PchReset.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xC10

+

+

+[Protocols.X64]

+  gEfiResetArchProtocolGuid

+

+  gEfiPchExtendedResetProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiCapsuleVendorGuid

+

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+#  Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..ef5aca82d7128b9557ae29da7316a518dbaa86b6
GIT binary patch
literal 16224
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
TbJEy<{r)9^e@Wo~jRgK1JFE5m

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.inf
new file mode 100644
index 0000000..73d337c
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.inf
@@ -0,0 +1,251 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  Component description file for Pch Initialization driver

+#

+#  Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchS3SupportDxe

+  FILE_GUID                  = 14537da0-222a-4bbe-9a5c-212a3cbca9ef

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchS3SupportEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchS3SupportDxe.efi

+  DXE_DEPEX|PchS3SupportDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x39C0

+

+

+[Protocols.X64]

+  # PROTOCOL ALWAYS_PRODUCED

+  gEfiPchS3SupportProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiFirmwareVolume2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFileProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFile2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleFileSystemProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiFileInfoGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesLib/DxeServicesLib.inf

+#  MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.depex
new file mode 100644
index 0000000..d57f41f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..81a41398ac1c41317dfcb90a297e759eabbee205
GIT binary patch
literal 6848
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.inf
new file mode 100644
index 0000000..6cdb680
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.inf
@@ -0,0 +1,206 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusDxe

+  FILE_GUID                  = 99796403-CF03-42ec-A817-7183411D79E2

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbus

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchSmbusDxe.efi

+  DXE_DEPEX|PchSmbusDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x17C0

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmbusHcProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiSmbusArpMapGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.depex
new file mode 100644
index 0000000000000000000000000000000000000000..a04bdfab3e6c26c51e1b877ec289d7ea324cfbea
GIT binary patch
literal 72
zcmV-O0Jr}Fx4+Ev;P(ATozxJh@le5$0=s^2FB(eJ5t=vvkS9OEO#=4tqZ3Ld@ILb3
e-o+9$FEj#lD{#ULfH6UbMvt|)oaC$n0|N*&`XM<0

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b843e3b610d2f223cad9d04634e05f257110a8eb
GIT binary patch
literal 17920
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.inf
new file mode 100644
index 0000000..7ab0c46
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.inf
@@ -0,0 +1,175 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmiDispatcher.inf

+#

+#  Abstract:

+#

+#    Component description file for the Pch SMI Dispatch Handlers module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmiDispatcher

+  FILE_GUID                  = 6BE18C9C-BF61-499e-88EC-5CD57430460C

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchSmmDispatcher

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchSmiDispatcher.efi

+  SMM_DEPEX|PchSmiDispatcher.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2010

+

+

+[Protocols.X64]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiSmmPowerButtonDispatch2ProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2b748cd00eb5a59734e6e5aa4100877dc7d5d52d
GIT binary patch
literal 13312
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.inf
new file mode 100644
index 0000000..400dfc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.inf
@@ -0,0 +1,252 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiRuntime.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI Runtime driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiRuntime

+  FILE_GUID                  = C194C6EA-B68C-4981-B64B-9BD271474B20

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchSpiRuntime.efi

+  DXE_DEPEX|PchSpiRuntime.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2610

+

+

+[Protocols.X64]

+  gEfiSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/DxeRuntimePciLibPciExpress/DxeRuntimePciLibPciExpress.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.depex
new file mode 100644
index 0000000..6fa9e99
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.depex
@@ -0,0 +1 @@
+�������G����P����J&�>����4/4t+p��1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..26d15d7e69aea17ac98527865191fca3aca6364b
GIT binary patch
literal 11776
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
U9?AZ6!PEa#K9`CAOKRZ10hG8c#Q*>R

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.inf
new file mode 100644
index 0000000..e6e2f11
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.inf
@@ -0,0 +1,245 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI SMM driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiSmm

+  FILE_GUID                  = 27F4917B-A707-4aad-9676-26DF168CBF0D

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PchSpiSmm.efi

+  SMM_DEPEX|PchSpiSmm.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2400

+

+

+[Protocols.X64]

+  gEfiSmmSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.depex
new file mode 100644
index 0000000000000000000000000000000000000000..631980e0f8ec20e495bafea5b893c3835d38bb13
GIT binary patch
literal 54
zcmV-60LlLXk?~=zU#<>Jx%%j7(ul@S0<z4yCPHu25xnOBfX6(DfdcmMqZ3Ld@ILb3
M-o+9$FEj%K2msm{`Tzg`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.efi
new file mode 100644
index 0000000000000000000000000000000000000000..59650eb536d8494bf8b383e2c78ee654cc8b85eb
GIT binary patch
literal 21152
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
Vc-H?<L-DVlze?b*5;%zj{x8mu#1sGk

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.inf
new file mode 100644
index 0000000..62e467e
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.inf
@@ -0,0 +1,248 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    PciHostBridge.inf

+#

+#  Abstract:

+#

+#    Component description file for PciHostBridge module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PciHostBridge

+  FILE_GUID                  = 9fd2360e-6b48-11d5-8e71-00902707b35e

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PciHostBridgeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PciHostBridge.efi

+  DXE_DEPEX|PciHostBridge.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4980

+

+

+[Protocols.X64]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  gEfiMetronomeArchProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+

+[Depex.X64]

+#  (gEfiCpuIo2ProtocolGuid  AND gEfiMetronomeArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)  /O1=/Od

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.depex
new file mode 100644
index 0000000000000000000000000000000000000000..04a994f69f4355bf96f414fc4c084834ed2e90b8
GIT binary patch
literal 72
zcmV-O0Jr}FsZV5&Q0TEuoZ<^aX^xGg0^(>^9)X0^5xnsLfX6(DfdYuE&nL`A)DfCE
e0FWm?!A%18@S_t-Ch$J;;NHa&G%qv*0|N-S1Rr1k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e389a81cf12387eeda40f31c2c60bc69cbdb21d8
GIT binary patch
literal 9344
zcmeHNe{@vUoxd~5gn$V%L;?}Ceab_FQJgv|h5?xe6S<==GDQ|ri-M3uD8Xct84@XL
z6DP5GUZ-+uPY=gscWGDaitCTnElJSo3_+4WiX`<1uI&oA9$yIVqPQZi?d<1!-^^oz
z_Us<d?teT^-o4-N{r<Y&`~80JeV3`cgMH)Y`EShm%^AZLj8#AA8YAE&yG*&jIgu$-
z89Oq;8v4DHu~z(L9t9oxJNIc-&(d9R?%<z+J%0xOb?DWQKbZzDVeI0sBlw26*^!!-
z2zV!A&NNS&d-i-utiss3+0}PP?nb|5JYzd90!_N5@yruotUuG=ijFb^wCOg3r#8UY
z!r3jBK%z^e>8Q<q0z}tXQ&+#%nmhSG0RgqyPXKf)zRSOp;Ku9R7~;v193DG1?i7F8
z7&^7HYE|#x;NbEV+;|J)x5f3m6fgf1H$HE2h04z~d2}NgiX9n8T&MUGqvLhs;4Sej
z<5GXbz^TW-Ty<A3kDVyxV&Q6TxaLn|4BaYp7gE<K^vS09Vl?J~3-Nl;0eoz4Y42c9
z2}`89y?D917|%&^F@bjsL|xo)j^4!m{f+a4rfA(P9}FD{%^gher&8k>i(JsdK2N3i
zjASS$!5z*X#`dPTaB_dLX?(0jNkwveiC*44(Q-m7%}*EmdB?E3y%V_5`hi*)u{%GP
zG3}*PD#bnuiUjX2es=NE&6A&9%ugS!n9<A2_E(5Qd}t(;+QW19WBz%1&QPV;Uoqo%
zq2x$OWyiqiC82mICFOji&FIzq3CIb#7Z2!SfM#-36Nw7{p-oeQ{zUU6jM=0?|DopN
zFmjN0=h#*X*UzQ<bhXrQ3Re<gq!~=O0^g#JL%96t7!G0^<Z;(fG0=U1q8;u$7BT`#
zPaY%z{|gI0<;q-%FZCsAH6!4mS3bSGn!yXmCtU31MpZsH8cMhk_N>4<di6N>y!1D)
z2_qgJzh0Hg*I@E^@kNl!h3f|;q@}PIP=zm%3UglytJ5-$m#<WL<VsL*Q0Q@8<rwD%
zuwec@l9L+|RRQZZu!7Hgc@l6P33vPZ6cVENdC<IqHDS7NZAV}0!P2nNf?EH<$c64M
z?nI2ZyD$g;Ky;LgKFRwecy)guKl-oSANE8KOXN>!c@xqdg%3!3t4ho>U#3!hu6lss
zMd2VEwdIcpBE!`t30(L8NkYPcsx4@v1^vW=nk^_y<{B=;f_`a9@eyRqzZlIv*L`?9
z0-f_8MvG>>)#Rh;bNvu+j5_*UtI&fe;J!yahl6OBqg&hOT0~S1Zd^}t0Ut-*ae%U1
zQcBbkNdgv2?iB#35CfqSk1_vSXaHS=#+YAh;fm1gbA3S4`dn@RWB}~`5*X0BfZ-kQ
zMy_`6ihYU^!<7RJfKMc_Yq|tJmcTOrjO(X^5o;ctLTm1t38=z1fCWEL1bn=(0EpC9
z4lSb-&SoSRE7brO5jBiT;H3hj8@j6KMo=v=mZ=^NC?DZ?qX??-^dk_?(G8>j_vt>B
zm>;G4tI?04Z{Ax-_9Z$Jk?T+tSgU!bjkp9xt^$o<l<V<gA8L_BGYd36@I(jYdpGY3
zstUN-Xdx+8cq+kRm?B)`NMAX+O}Cplw&Vqtm`@5ax={>W|0a_Ka}v3oLD8>ELGj{0
zz$+H{iy)W!lJfoB=%eQIXC+uPe`g~m!Q!WE-sTMNVadBsxHgiy<Pj$q{pOvhdvM4P
zfHLp2C0xd1^Opm~q9s_T8pzuH8XzoD8~Ua<BXUr<l(aA%juOSw2oi<UN!)R4-R5s)
z_y^Tea|V*t`~tW!J|D3W<nvJ^a>nPY>>2zTG}89}(dUnXU;5k~dmQ$f!j_))`(_(K
zey<~P@fE+<pww7C^=CAv{SKZ$h9@?!lSSs4rM5(>X4A4qrSrNWZ1-Wyc|r8eQ#cIC
z+3X#;3EPSJAz;fTrIymSYy>Uj5gcqR{IeOx^g_bVFCs3X^;5VCHIf3b6ghIEtk+{w
zgN6b!Fsa9>2M16u)lUHDu`OyT+caf2lvqA7i_n!UqX&pou_PnWswn6==+Z$CAu{M;
zNf8-@py%$`EYugi0o?!$oksYaelC(E5g5Eg;Krnx7dzrWHU-TiI0IR3xZ0ZT>o#Hv
zB?RpY58J-@B?hGve<$C`kqEhRyUnu3k|Auwtx_dl8}QPC2Sn&PE|!rYMI<~>DdbeW
zR7*;QlQOtc@RE$;GF$PijN-qQiXS#hZ5696ol|W@C_POjcEnBDA@wTBk=)o(H}-te
zFP19F<N2{;ZZRxf9TWpWu?JH<>dq{C7fv)%*ADsqiMb01%TvoOjZfH!1=cLxuLdSc
zb=>`GsDO(@=D*Xvg9A#u@Fb>UzKydwC2YLdu=Om-=-DatY%_1O#isSlw-IOcOtAIj
zlb#1{J)NYd-qthA*7G3_Wl}?0&qxn=u=mIIR>`<+JJFBG+D+$j9)DQfhSq!pJiD>C
zNK7kX{)#XbjjpaX?*-Tm^RSb(tB;{g13`67HysiP{Qz3G$F%^(>y-OP?P|M(trm!&
zTJ84WCC9dt2;{P4Y$d|3c9q&%gvM%j7hWV%8h1H#k4fNS8$k&?2Nl*@r;l*vk~2>y
zuz3Oqi!;3gy=x<=8vX%3%T&Yhwv;C`QZm(0xc*rZ@(l?}wdVkwO|>edY7ll~M@5_m
zQwi7~#JLPaNYkJ@)=S4X;rdGwp{v32{HSyEO(IQ;TRlcxm;x-Eow?4@Cvj%XBsGSV
zq?wO^r?{vRA%uHA!rh;Y6q45hvHsk1h;zpfQ*LAt=Z_)Iq6Aqg=}$IKOB+NvmQg81
zG-dR8&Wb=@ARAy8rG-Bkog$et*+STfS-PEL7!lqUV}3TH41Z#rkj3bbjBvbeJ6@NL
z*HL8k+@>Y)p-$q$a7mj79YD)qRhRyd2hx=><3(e}i?Z}6QqSlPIg41!bu2n=9}1;o
z)I|+@2(QkddW-ZsYV3ITE<iZ$+-f!<C#=AmV}<4#8=**Y=nUc{5=6a@7e9e5&LS%V
znT+58`R*Fk%u<{48jEJCjVPfovJOxW*&<BDn`9o6?^h9f|0&NM3^5e3V&up*G_w{0
zT43)S+Hbs8vLo@RP?p-~E<IitN8$%b*KViB!FsUow3_sNlNKfe;D0SF@D*VJvkt;Y
zKC-JEw#MeQF?V|h7B`JlffTuIC<y<UMw0(<9J&Al_&zB>qltpf@`48<v_v6mi9)nQ
zq0V;od2nUT(W)z7ndYxhR;+0{a1f_y2Fzg;*pV6dR^e@XschmKF?-*)y~NwLs8yaT
z7;9AQ9lpv`X^Vz8t1u5mMyN9SrX;0RYP^a9tBS`GIg%)gaWs9Z%VNYqp1$BHj%8?@
z7eaV9{%{CLI3y}vmEy%Fwn#dB-bi8)nNu@#&Yn5M03qR8qrgdK#S%{6a1YF3r$45J
z2M%YP&+{6mBQl?sf{;jNQu3iTjXZ~*Z<tuqTw)LSRHUBDBF(_7mND^MP40-g>NR8F
zp^={1QjDd3Az@MpYv&GgqK_|AaenAGZwFb%=A3jU=Q?7ad!tk2c2fpUk-(=-dL|^Q
z6q|1hfyBjRTwajPcS>dSr4rlAY3~cVyPWhvB$Blii2EtLY^XM9ICw1S#8B=8!bU#=
zYJBhDXko428THT@kL_`~yBxI`9EAjT*Z8u2zBbuASm7I{s|=B>5PNEa<&z?XJRWd{
zQV9T_=qYzs(Jh!&ZO3qAvR>9-Yd~7Uskyr*L)LKgKcL71=H5X%l8B^lICT1CFS_pM
zfWrkzG?zw44t|tM4Gva9yM(!af8_MYJA{;<X!2vNcW@75gV)j>20qkGL^56L&_R{H
z`EjdIN8fP~wM5=4REop8Na{Efi4okKMDn!H_T)!$L$PD;0qmX$?vT3z1pPcdPpj;B
z_rA+3+J{>%4V`}1H=z6bnl7x>`q<Tsr*IpUfPc<7wwSoANNEr4-<PYh)}yUFezE%5
zJAC?Z>{uR;-!efAV0xmLpZ=JqdUbJF9>S_&=R>)k&K#(SzJ~}<b@8rVb{OU;kxPAv
z%CZBn=l-drvWQfAp)x@#L;mEJ5n9Ubr*~RU==A#`aexmUhnS_jtY3?NHwWvBn;-5D
z4naX=ofbQm&)u*1tT{~QVxQLO<=9R!53Mucu;+4wr=WN^GMnSJDfUH9bS8|CYmSh=
zw`rO$VSC`Jj5$accp#KYR{9S#Zubp@5Y(|g+=2BqO{$G4<S1Ht>8RuKds{Dijf*;*
zy6L++G-OH+`ufKDm7-?1A(HhtHuN5pdwhHZD5L|vVWcy6bBZ~vFRtwdxfmMh$Kf2c
zvj#jU5xDDGf!a8SiYh)nT(^-Zv2YzCC~}i7ZfVd(@o^N6kQma%B_?{hzbKlg`|rq)
zOr%eZ*q)M*Khab)`XPK72njuj*eM(bF)~`S?yA;dfbOeW6m2;S_qul_L*h)TUlS+A
zaq$kk(!3Gc-ar+t@O=iCMk_G4Cjep|k)^tT*BPS_ycyrY&j61Z;+_IFX(?D&{Fp^r
z>E>_gM)AXdXk9L%!ns-(uLs3GDxHdWQykDzMRcn{l?+d7`c@<3VlGgi;WDpw7uE2w
zIiW4rR`9kHVW@?9dC(FPA8W!4icf;#3`}*md#RMhS_0UZW?Eg2?lg3Jz72J$a0y&K
zh_yob;^J^>slsE`D&keVtnMJWvH$WkUk2&_Ks50clWB3iXBQU$^h7V?ZK)Fwy2;JE
zQG4lW9eD+BPO(69_4d%Q8MXOsG_?kfO~BO}Ex2uHSGUR;pyJ9fsW?RUu!e@Ru@H1W
zQ@7Eup%tLEL=gT&7fVj&9VrwpRF!;P^qH+A6ibkajsFeO)bW{gaZtRbiMMoj#X(KH
zZhj%ZLr8!)Y?<cokKnLYJOKZvmU1q7vll~;Z&%5?A@O}BBsP?WM3Xlp-q%)XcdhD$
zl5?Klw13a%G9L?ce?ENw!BwY!RoeZ+@a6eW@)zIRHV+r-CkK9e`EP!@<I0<Vy!nn@
z&m81MU7NSR^iKDwTer{p>r>jXsV^^j>&GV^AN}>MzxZImO*gzy_>}%hdGp(kzA@>s
zxoqnd3zC&Z<&PeC<UQA-e>(HS;1`q1SCaazjyzWE%wtMU9vhF#TDt9|=Mdt4TYet<
z7yPXrpT|DH-^mGitowpI_9^~a3-TB*%wwL3XL(xaEQO~v-EK{{JJRj*={AvWEo#PY
zXEiLsqO2i}I14Yu$XZs<Hlb}~_oc@x!%DcmZvEQ(l+e9%6=mV=;kh%buTqp?)0(=u
zpiyR4&!1V%7~MJ0voW~7>FzakHTwFd$dbl;luPF;rKOwd*H<f7&QiRyEF!$u&RyAD
z-?(Ar#(SHuUAeq&)3wXi)J1|do7S(b32(S(Ww`F{NNs)N#zhTLOa02qh9#S78XMPF
z*I0<zYo)BS_AQA<zQ(}PY=gcZs&2WHO!BsP@sKr@;kin<v3@OPr6}6M+beEcCa03Y
z!5A9S8rFlPMX8J~zh)Ua*UW6OrlKqg|3xSW4E+O2nb~v=jm&JaJW|<^cHh#PhWf_H
z+>D>f@Q^pr%uVZ(Ls#Qb7Tyhw;S3&jMIw#s*EB&(hMf`n;`;h*Iyt5=&Nh=BY(u(7
z)(~8I4!rmrc-c8{*oJRlH&{aOUc#2M3bvHp%yjfu*m&=EuJv7a{S9+&EY}t;3Rc`~
z51@maQ??a<otIgE*<<JX=RI)V1Lr+(-UI(X9$36+ncj+H(MpKV{I-F9!|?+CYfHlF
z#(POK{f6Nr(WHOZuyq=0Ht1$IS_lQdvsi~y>+Cg6O+-(%oNBr?u5RAExq8h#fR!0(
pe1pYDzhRJc>EAaH@A>EdzyqH2Z$Ngg+u5+QWoPTo&Yjs({~H0i8Z7_-

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.inf
new file mode 100644
index 0000000..e88898f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.inf
@@ -0,0 +1,216 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  1999 - 2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PlatformCpuPolicy.inf

+#

+#  Abstract:

+#

+#    Platform CPU driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PlatformCpuPolicy

+  FILE_GUID                  = cb933912-df8f-4305-b1f9-7b44fa11395c

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PlatformCpuPolicyEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PlatformCpuPolicy.efi

+  DXE_DEPEX|PlatformCpuPolicy.depex

+

+[PatchPcd.X64]

+

+[Protocols.X64]

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiPlatformCpuProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiStatusCodeRuntimeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformCpuInfoGuid

+

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf

+

+[Depex.X64]

+#  (gEfiFirmwareVolumeBlockProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiResetArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..e076777323483e39152c49173d8ba560c7091749
GIT binary patch
literal 36
scmZR2lo2M^*m6a1&qs!a<2D_QOy52%7WPv6VE5_4y`w@V`X<aA06L)%NdN!<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..22fb8947db858c0658a135bd0509d89cd7171fc9
GIT binary patch
literal 10080
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf
new file mode 100644
index 0000000..0c16379
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf
@@ -0,0 +1,200 @@
+#/** @file

+#

+#    Component description file a sinngle segment PCI Host Bridge driver.

+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#

+# Copyright (c)  1999 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PnpDxe

+  FILE_GUID                  = CE7CD764-a1d9-44e5-9857-14fefaae96dd

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePnpSetting

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PnpDxe.efi

+  DXE_DEPEX|PnpDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xBD0

+

+

+[Protocols.X64]

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiNormalSetupGuid

+

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gEfiVariableArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.depex
new file mode 100644
index 0000000..df1f82f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.depex
@@ -0,0 +1 @@
+�k��a�F{�Z�~�'\������I�K�����������G����P���ƣ�^�H���3����HN2��G�,?��f�����c�,E�9���&^��J&�>����4/4t+p��1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.efi
new file mode 100644
index 0000000000000000000000000000000000000000..be5dad0460d5eb09b5cc876957421663130a3d06
GIT binary patch
literal 21504
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.inf
new file mode 100644
index 0000000..d823fac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.inf
@@ -0,0 +1,264 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#Module Name:

+#

+#  PowerManagement.inf

+#

+#Abstract:

+#

+#  Component description file for Power Management module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PowerManagement2

+  FILE_GUID                  = 41E89AB0-BD3D-44b6-A431-E4836EFBF2CB

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePowerManagement

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PowerManagement2.efi

+  SMM_DEPEX|PowerManagement2.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4200

+

+

+[Protocols.X64]

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gPpmPlatformPolicyProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gPowerManagementAcpiTableStorageGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/IstApplet/Smm/IstApplet.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/ValleyView/Smm/MchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/SouthCluster/Smm/IchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/Silvermont/Smm/SilvermontPpmLib.inf

+

+[Depex.X64]

+#  (gEfiAcpiTableProtocolGuid        AND gEfiAcpiSdtProtocolGuid          AND gEfiSmmBase2ProtocolGuid         AND gEfiSmmSwDispatch2ProtocolGuid   AND gEfiGlobalNvsAreaProtocolGuid    AND gPpmPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.efi
new file mode 100644
index 0000000000000000000000000000000000000000..025326689d46a6d8f33ec080939cad6d0b797e77
GIT binary patch
literal 4064
zcmeHKeQZ<L6@Q7HZ^8=`>D;xfE_rO$$kITzDv2lXOKf_LUcf1VL@l2!JfNfy5_^OU
z6*DI-FITThJ89FZeWYrc*hn>ms(jFm+D;VW(558nR-jT8t<#pss0%|Y(2aS&^PXL@
z45o>{cP0DWd(OG%`<(Y)%~QgCuhaK^^ZqaTJc6+E#f*OwFe@yz=cO+c!a0J_Z81qx
z>4Ff%FSYF0&~N^l67TTk%_rXDTyPKk-Oypke;9<Rd=uV{=YDV{{#~tpTznlqlb_`K
zTz^TXT@dz^?A+nsfqfHrTnkJdf^(Nk5JpnxMr^_h!Iy+7JVBQrRF$-v0)up>*d-yr
z7t2L_&AS>8JZt()F|dP5aPD$}Z&N+fe$TWI*6B)Sf>r#JX*XLkycM@v3KT8k4NYaS
z$c*JWI}y)Ow6V4Nk*vgR5U#)Zk8N8A-@~e}Wh=tC&$MykWT8J~U1z7X@$0{8*hUO2
zbhVuEss=^RuSJLy{^WK=&-ewlEVNT{2u#aZguF97BT6_e|L?g33jatzFWh1xe`taq
z5zzCyjFVfkD_Y?Y_~gW^EKLx~!YnjY4yB9_F|DD1X-&3z=x<WE*P-YxJL6Xvzjcnv
zhw%$q(`lypPD05@HX$+&LsX*621%?VEFND*8=mp3X~>)4QTP)Mg<rtkM3>#9dO%h5
zb}0y%3SaMlv`%npe#rqgrfrt&b3{&%X5B57dSI&t2i*F)QpU~eWfP2#Bz&c$1!AfV
zqh?_WjF^PSrsl)hrtbJr6PCsLUxaeC0#XC}+<I-AySz?v2DZC9-BP94S0}CXR7L}f
z2kc0`*cVloM^xDvJ>-)4s2seR8F)Y*SehisN!k*VW(_RvU+RGD<rn*JBmg@u%A$Le
z@!^hGAeZ$gJ3XlAo24c%f7<5dEp{*e#LPQfw=u0wD%gk;(;KA$cI;}G5hY57XE)=~
z^KQvuCgU1$+TlMOUz=sbJr4ipgl<3L{jPv8@Q<dIOyanN&;&&GE^xGhGY=Rk`3P~J
zR&OT~=PeuLI+^L;%VylOThVL&!nA4^RNp|c&472fx*V03#q^B{U~bTDt-1hP8+sL6
z8@4|-w{~nN%`I}1vB7FElrr7(XCsfK!N^_{P+9VT3kDekN;GJx+$JqKYM@7C-Dges
zS_$bXiz(c56f)#vQvxC&>$T~ib$S+kC(WN(Y(059U>&ZmNH@C%-L%07LdFn9OD|l8
zlfnm?b_8M6YYrs3s3RD^i69+b$#~5HFwJ6YE4=U(Tv0gmt#P1pj6&}C*q@IwJ7k3Z
zLc+%wKhOA2q%iq$Y>4u<ZR-}JpUvK)zCxuMeU*LQHH+9l+Z8m_G+GRzicPz8s5JT|
z*;cJ974DXhh5R27#T)^8p=z>ubys#Wo*8j?l<4vqUSv#?vwGoUh6D4PP?21$Bj(SA
z)?T{gV-)nw62mwsrDCkCUD1*!4-08!VR<+$eGprL^^?h1!NK?3mGX+_yg8VDh!NO8
zs=%F5_E4A=MGXH@*Ratq6;KH5j9(_{PotI6TQ=6fj7oMaGK=eC@8`1EJIi$I3oJ5~
z!z?3SXUxA)?iZlg%g3j`|9Jv+XMJI~-8PF_Pm6yE{3FbALF}CvZm%UAMp_(=ma>$b
z!np8D<?zhDZ4d@HNP9WyEi+8`CS+g?MqCiW^u<25FIs#@bumPe>MW?9Cpt9bK=l~D
zHB#gHC40TRNj9AH@>_D}w7c`Kj9-I3G4vR+;wei&t=L|KJ*gH$57JJrFP`p!!DfH@
zMM9ver$4*}Z_%^bBdp_Nv~B+vZF?0)dBomfnEbo7`hqHjUt6nNtGtmv<*<D-#qRRo
zlu|6{4y6SvIMa{+PIrlm>FeCg^1gzZ%09cq9-3f9<4k{<;_tPLP5&AY4bWO3_9+q@
zwxlthr7>&V;y&)g^#)wujO(eJ@@MUjKLsbO{x!1L*Zz1nIVARdppH+gp{Ymw*=iz!
zeE>~0;a{Y>D=Pg<RA+8;rr4LOCSnjS_Qi%>HdD>R@ho86$6IalLX9lC7;lt(l*$H5
zrMykvib5?54<?^osIWc8^NVS%c6pOq?Dg(GM`a+N!yrcY(t`}9O}g3-J}0&h04Mfo
zK>&SI!c#T@QnY<k6+M^K@fp<;RYNzkn?J?ipZqNqwQgOmVw6YRdQBRT5t+wSv1&x@
zd+9i+U~WB>r@EanFjd9kCGx=Aga+fG9Mw4k*7xHN$^#VT6!IF7V{t3=j@Dq9*s-yw
z&f%5?cODb*HL7!@Ia6I875he1=UDSMR9VZ8mk|GAwPI!ShftXt$mvhev&L;1!Evl5
z?<|r4HCjR3ivLoxwF@YIHi{oQ@QCD)jh7L|M{Dp1;e{{Z4&E|O1I(<)b$Sosg$GS+
z8-SO_pCUPCRuGl?2*cwr0!)?U8o+qR7(tRSS}?lt2o@QhdlBTyLGKr6w=L9j4O9qU
zujvT;mj){Z{}P@fpH0AgxoDK9%SBP=i2qR*idsMne0nDmgB%=0T<8sj3%s0aG!TzZ
zdbumxt6@qF-s$;4nDXCNVsqPbm#3T7pS=<|Rl00!@hki5b5=h;vFPOrp*yy>*(sd)
zo6^7Mgz~eiXI8EDrN8#epT7FejXmFXohg3foz+EGHlAA1ZL5C!D>Wy=3v#~p)t?`H
zvgwo8F9&z6d*jQiUfVddDpr>qf|n>JSf`Uch#=l|Dan`kJxTa2ym!xC<;ipRJba2L
zMR(nUPJFxe({Hzvpiih4m|zz+2)l%4VXv@5Xv9et>hQCJc0kxK_(3@Ue51i*7remj
z1=i%=E41Mjoru>ixD7eqHF)nwe#(>ogya%EO6_>Rr{Djwo~W)<f+)=GU`~B=OyMkJ
zei~=#c|-x<0{Et&hD?2LltS4>IyWajKu9N@pJ{0UF!YlxCS7W4YuowEZk*}cgT6sZ
sn#_BtZ;aG;2T1>4^CCdsm)$)ldrtRU?77r4)ic|3v!~!K+grr;FEb|x2><{9

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.inf
new file mode 100644
index 0000000..5779ded
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.inf
@@ -0,0 +1,195 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   SataController.inf

+#

+# Abstract:

+#

+#   Component description file for PCH SATA controller Driver module.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SataController

+  FILE_GUID                  = BB65942B-521F-4ec3-BAF9-A92540CF60D2

+  MODULE_TYPE                = UEFI_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializeSataControllerDriver

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|SataController.efi

+

+[PatchPcd.X64]

+

+[Protocols.X64]

+  gEfiIdeControllerInitProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gSataControllerDriverGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+

+[Depex.X64]

+#  (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.depex
new file mode 100644
index 0000000000000000000000000000000000000000..b1a5ceab3b2eb73466f120b95a1915810dd0401f
GIT binary patch
literal 36
scmZSDU00wl<#k1HmIcEEb^C+9Oy52%7WPv6VE5_4y`w@V`X<aA00;~YUjP6A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7b57467368e8fc2162c33438a90d6660d9dcd15e
GIT binary patch
literal 2208
zcmdT_acCQ56#tUunrN3c?Feqp%1r|fq9G#=7LU24Qhga;rIoUFW4LzII*^UhTxu=;
zQ9L_6K8{re3NmF-g`x8g|Bz))@Y2ZEV$ns5b`GUh!ERApSI}0sp6^{Q7zf=S^&fq3
zy!U?Z{oZ}=<=vN-y=={rT{H9F6I+`Z>p9~2N1?0i9=XO{%NW85cPV6|?s9BGWalBf
zQcn2(&a0^m+`<mrBDPxSL^We~trlDZ9#NkfRFSt(<(waTuk4pf%8VV1^mMD;XrFXp
z9M51nn&M?iFg8)PLukl26U1y?#z`j_Yl;k(3Q}H|lSjHz5}3EU1N5&z|NL=-S6dKY
z0evYgrQ*x!0M~OVZPp99%T<f;cJVf@f40kb-fP{!z~Woi_dl7RLg{FOttRq8FHk0E
zbKXUGS1&BS)487#K>K+Mh^8*krDYrenw@B_kg5BBwN-Ei)%>5h1oPN91MQP7`6<x%
zg?t^zmOp%%K*K*rS%zg<u}g4Xx`5t;+tS^jHx?-H5z;{fx1pUpV_A%GA<5_z{k__<
zM_pfc8r)Eot2^!MO)8U_D<JYPV%EL*I~M0k!k76Dl-59I#s=r?H^K%k^6`xWd${3$
z150ru_$I0FBsUt5+g5>xFM_e-HFO}n3`Sc38(d0RW=i+egK(p2K*Wc7J?a4Ho;$#J
zLKZHrnEhXZA&t`eb*Y&u=u$0JH6$;2hO~sSUcGT+DfS0-Xat|Jl@!4JXpT)H=ZX#Z
zKP}<yh$Hwdc|tmZ${Gd2Moc(^g-C{>4lWjNhqL%8mV6wB*cXc8=w<xXnqwx9C!+%@
zHq?sK#GK#Uo=j)V9GhWmmMBS)8=H3Q?A80L>c=iP-l|CtR3zbOK%4yqv<VmJZk!ir
z<1$y0(f(J@B{#cbX1;ued+7|AezH1KgOnAdG~7h_9w`hdQ?V}~-WDC$1V*xT__@t2
zvlBF*2dr_>Oc|86X#eGk(`7w4mWn3A73YhY=aRB34_PlYixbP+`v|%k3fM~tVox+B
zOvwEpfw%_oJJajnW64P_Zi-oW?CmgeNezH9uGZipftZ*-dfl=>zZ=B)(zt~h+V0F8
zgnt3)F%w26Gab0edGy2t{*>RK!9~--mJw5Zn2TL~Tm*L`mJ$Un8rvzVG-Rr|ve&29
zf<4L&DaA}T6n_H4lSm1k!@ct#!$c4{DqAUqh4&6kO$SnE55MsKjbUpCzZQS?>toaP
zuRp{_@7tMcQNw-X>xQ=`UwZWD2ifC4o~q>DZ2J+QeICTA(er<n#~x|tbWe9-6XiSH
zME@21hHO7{=rHw1cXgC<ocnvU?Dv-d6Mgz0jvPp*DWB#-Gm6;p(9qCO&w;1Wr@Nf)
T>PTOSM|ZXDJNGz-{*&?-hgYnM

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.inf
new file mode 100644
index 0000000..234cd77
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.inf
@@ -0,0 +1,198 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for the SmmAccess module

+#    {1323C7F8-DAD5-4126-A54B-7A05FBF4151}

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmAccess

+  FILE_GUID                  = 326E9CC6-9839-4885-B2ED-275903B668E1

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+

+[Binaries.X64]

+  PE32|SmmAccess.efi

+  DXE_DEPEX|SmmAccess.depex

+

+[PatchPcd.X64]

+

+[Protocols.X64]

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2156090e2c2045bd957d417faf3d0e87db95d7f3
GIT binary patch
literal 3584
zcmeHJUuaWT7(d3|xmmNTo0n}W+f`ESQ^=OG)wyAAP1q@<5dTe?FV@w%L6x}1Q9Brc
zn@rNf)uQZ=Fc9`I#(Y|3EOrlGlR;CP3HHH1C|I_ax!T1c`rwr7?>jf?Zu_91KKPIW
zH{bXBeSgmPeH_k7#|P|@m;K0*PcASKW320oh8YQOuoZfv?|H_Ee#SKg7DCcjTcrDH
zz#|jTtLYYa=m)9Zv=8$0+7dcr%e=&6>cP~`z7%rYor@nTh<cbg7N#@yQLw8s)d^G2
z9Q=TgGk6x#vm%U@YA`@b2p`RAK7s#Ngt4|@pPTSyqCrT%S%U-J21|WCg%kL%Se~)&
z%);MpEtVr2xp_UrMcdZ6rJTS4i;E50W8qPrQ(`!3TwH?o8EKZ%Ln0RqG(#_`r2Ah1
zb&}2n&uRBS8P@uR<f6xO+AYG);UrEY0@lJ)=0!ZVief9Ud*M@!M-Uf^T}|Q)$~ZCh
z*PECu7Z-Wf-oJti?HC-m@J~QE8<HRny2RBQQRL=tp>5PEI%`GBTevO6AWN$(A4#hd
zf;FWb#&XKfh)^>>QhKxL000$~rfPFaCm^Z}y0x#74f>-XVe5dPPAp{?@gs^3;^UUy
z4`Evk)$PZM1`={uawL}WHL8%4K}DCL*BVsL0${5Ogv_dSkf-H8FP%6lhznaN^N@LR
zetUkNd(hHWqM>`rFwZ!~NeAuxFlXO8Li+<ThB)0_5!wZ)X2BP>37nCjfz(q{)eTVq
z7?PklY(xKE>aA|TQ3>9z<`NRM$Qb|U1Wt#<xv8c!YEgeVXO@;%+J%j|w_^C$o6+HO
zaN?G>1R^}@BqE@0`z57%s6Sn*K~e~B=Fav=xr|(~%&3~pBfXKw02t4X?^BE+XHvs4
zP&3Cs#aA;m`xTVvzzagVhD>>eyN+7C0$>(e@;a;);s2eWEZ8jhP%fz9X(}p8hB>+%
zG<vNVztSZa%Z{ZM3++ppCS<6?|1Kiq<lNXB_V5sr8UuxYVi`O2lF*W_)0EJ<tL}}(
zO4u&)JkAEKbg`TnPc?e5(AL0py4s+Oo38dXg5GM8jLtG9;7!s!;u|^vQ-QHEhI<s(
zGUh!Ffs=_T%DowzAgPbMn|by4Slf{;1FY}n`%5?9IKC?X)5>_7rw+X}{N2@WKE3ne
z>!p$Q1AiY{cek*fhWgNjD%l{uD>}YeZ_Go3pMb-A>o&#dEu=TB_CC`8fQz_SBo6G}
zBe&7rr>pihMu0;U^NIVmC4qYg@96D?ko{0!u07D--`}-k7a0&F_exeD*$89wF4o>i
Ra;dNS1nLv0PvB{pz<p*ZpjH3?

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.inf
new file mode 100644
index 0000000..1195c83
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.inf
@@ -0,0 +1,122 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2011 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmControl

+  FILE_GUID                  = DD787473-07CE-4c63-82CE-930B33F39C09

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlDriverEntryInit

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+

+[Binaries.X64]

+  PE32|SmmControl.efi

+  DXE_DEPEX|SmmControl.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x800

+

+

+[Protocols.X64]

+  gEfiSmmControl2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..4bb6074e530b68b05103418ff7a5cc63d3cbbbef
GIT binary patch
literal 126
zcmV-^0D=Dkx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
gGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj%K0|NsC2pp3&(f|Me

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..cb40b77629df0437da07b4ecf049020b71ea963a
GIT binary patch
literal 19328
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.inf
new file mode 100644
index 0000000..0dcf3b3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.inf
@@ -0,0 +1,253 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitDxe

+  FILE_GUID                  = 93C81A74-B648-4f7f-925E-E4A0CDCC776D

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|VlvInitDxe.efi

+  DXE_DEPEX|VlvInitDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3910

+

+

+[Protocols.X64]

+  gDxeVlvPlatformPolicyGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+

+  gIgdOpRegionProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gBmpImageGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.X64]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

-- 
2.21.0.windows.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#43075): https://edk2.groups.io/g/devel/message/43075
Mute This Topic: https://groups.io/mt/32267733/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-

Re: [edk2-devel] [edk2-non-osi Patch] Vlv2SocBinPkg: Add initial binaries for Vlv2TbltDevicePkg
Posted by Qian, Yi 4 years, 9 months ago
This patch is good to me.

Thanks
Qian Yi

-----Original Message-----
From: Kinney, Michael D 
Sent: Monday, July 1, 2019 11:07 AM
To: devel@edk2.groups.io
Cc: Sun, Zailiang <zailiang.sun@intel.com>; Qian, Yi <yi.qian@intel.com>
Subject: [edk2-non-osi Patch] Vlv2SocBinPkg: Add initial binaries for Vlv2TbltDevicePkg

Add the initial version of the binaries required to
build Vlv2TbltDevicePkg in the edk2-platform repository

Cc: Zailiang Sun <zailiang.sun@intel.com>
Cc: Yi Qian <yi.qian@intel.com>
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
---
 .../RELEASE_VS2008x86/IA32/IntelGopDriver.efi |   Bin 0 -> 60192 bytes
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../RELEASE_VS2008x86/X64/IntelGopDriver.efi  |   Bin 0 -> 75008 bytes
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../GOP/7.2.1011/VBT/MNW2/Vbt.bin             |   Bin 0 -> 4096 bytes
 .../GOP/7.2.1011/VBT/MNW2/vbt.bsf             |  9216 +++++++++++
 .../IA32DEBUG/IA32/CpuPeim.depex              |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.efi  |   Bin 0 -> 10624 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf  |   137 +
 .../IA32DEBUG/IA32/DigitalThermalSensor.depex |     1 +
 .../IA32DEBUG/IA32/DigitalThermalSensor.efi   |   Bin 0 -> 14848 bytes
 .../IA32DEBUG/IA32/DigitalThermalSensor.inf   |   190 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.depex   |   Bin 0 -> 108 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.efi     |   Bin 0 -> 12704 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf     |   219 +
 .../IA32DEBUG/IA32/GraphicDxeInitSmm.depex    |   Bin 0 -> 162 bytes
 .../IA32DEBUG/IA32/GraphicDxeInitSmm.efi      |   Bin 0 -> 25088 bytes
 .../IA32DEBUG/IA32/GraphicDxeInitSmm.inf      |   265 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.efi   |   Bin 0 -> 17984 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf   |   247 +
 .../IA32DEBUG/IA32/MemoryInit.depex           |     1 +
 .../IA32DEBUG/IA32/MemoryInit.efi             |   Bin 0 -> 98304 bytes
 .../IA32DEBUG/IA32/MemoryInit.inf             |   201 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../IA32DEBUG/IA32/PchBiosWriteProtect.depex  |     1 +
 .../IA32DEBUG/IA32/PchBiosWriteProtect.efi    |   Bin 0 -> 11264 bytes
 .../IA32DEBUG/IA32/PchBiosWriteProtect.inf    |   130 +
 .../IA32DEBUG/IA32/PchEarlyInitPeim.depex     |     1 +
 .../IA32DEBUG/IA32/PchEarlyInitPeim.efi       |   Bin 0 -> 15040 bytes
 .../IA32DEBUG/IA32/PchEarlyInitPeim.inf       |    97 +
 .../IA32DEBUG/IA32/PchInitDxe.depex           |   Bin 0 -> 126 bytes
 .../IA32DEBUG/IA32/PchInitDxe.efi             |   Bin 0 -> 102496 bytes
 .../IA32DEBUG/IA32/PchInitDxe.inf             |   278 +
 .../IA32DEBUG/IA32/PchInitPeim.depex          |     1 +
 .../IA32DEBUG/IA32/PchInitPeim.efi            |   Bin 0 -> 22976 bytes
 .../IA32DEBUG/IA32/PchInitPeim.inf            |   150 +
 .../IA32DEBUG/IA32/PchInitSmm.depex           |   Bin 0 -> 162 bytes
 .../IA32DEBUG/IA32/PchInitSmm.efi             |   Bin 0 -> 35840 bytes
 .../IA32DEBUG/IA32/PchInitSmm.inf             |   290 +
 .../IA32DEBUG/IA32/PchPcieSmm.depex           |   Bin 0 -> 108 bytes
 .../IA32DEBUG/IA32/PchPcieSmm.efi             |   Bin 0 -> 26112 bytes
 .../IA32DEBUG/IA32/PchPcieSmm.inf             |   251 +
 .../IA32DEBUG/IA32/PchPolicyInitDxe.depex     |     1 +
 .../IA32DEBUG/IA32/PchPolicyInitDxe.efi       |   Bin 0 -> 9440 bytes
 .../IA32DEBUG/IA32/PchPolicyInitDxe.inf       |   123 +
 .../IA32DEBUG/IA32/PchReset.depex             |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.efi |   Bin 0 -> 12288 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf |   137 +
 .../IA32DEBUG/IA32/PchS3SupportDxe.depex      |     1 +
 .../IA32DEBUG/IA32/PchS3SupportDxe.efi        |   Bin 0 -> 25760 bytes
 .../IA32DEBUG/IA32/PchS3SupportDxe.inf        |   257 +
 .../IA32DEBUG/IA32/PchSmbusArpDisabled.depex  |     1 +
 .../IA32DEBUG/IA32/PchSmbusArpDisabled.efi    |   Bin 0 -> 7616 bytes
 .../IA32DEBUG/IA32/PchSmbusArpDisabled.inf    |   144 +
 .../IA32DEBUG/IA32/PchSmbusDxe.depex          |     1 +
 .../IA32DEBUG/IA32/PchSmbusDxe.efi            |   Bin 0 -> 15552 bytes
 .../IA32DEBUG/IA32/PchSmbusDxe.inf            |   214 +
 .../IA32DEBUG/IA32/PchSmiDispatcher.depex     |   Bin 0 -> 72 bytes
 .../IA32DEBUG/IA32/PchSmiDispatcher.efi       |   Bin 0 -> 24576 bytes
 .../IA32DEBUG/IA32/PchSmiDispatcher.inf       |   181 +
 .../IA32DEBUG/IA32/PchSpiPeim.depex           |     1 +
 .../IA32DEBUG/IA32/PchSpiPeim.efi             |   Bin 0 -> 10304 bytes
 .../IA32DEBUG/IA32/PchSpiPeim.inf             |   139 +
 .../IA32DEBUG/IA32/PchSpiRuntime.depex        |     1 +
 .../IA32DEBUG/IA32/PchSpiRuntime.efi          |   Bin 0 -> 23552 bytes
 .../IA32DEBUG/IA32/PchSpiRuntime.inf          |   258 +
 .../IA32DEBUG/IA32/PchSpiSmm.depex            |     1 +
 .../IA32DEBUG/IA32/PchSpiSmm.efi              |   Bin 0 -> 24064 bytes
 .../IA32DEBUG/IA32/PchSpiSmm.inf              |   251 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.efi   |   Bin 0 -> 5984 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf   |   137 +
 .../IA32DEBUG/IA32/PciHostBridge.depex        |   Bin 0 -> 54 bytes
 .../IA32DEBUG/IA32/PciHostBridge.efi          |   Bin 0 -> 22336 bytes
 .../IA32DEBUG/IA32/PciHostBridge.inf          |   254 +
 .../IA32DEBUG/IA32/PeiSmmAccess.depex         |     1 +
 .../IA32DEBUG/IA32/PeiSmmAccess.efi           |   Bin 0 -> 6208 bytes
 .../IA32DEBUG/IA32/PeiSmmAccess.inf           |   132 +
 .../IA32DEBUG/IA32/PeiSmmControl.depex        |     1 +
 .../IA32DEBUG/IA32/PeiSmmControl.efi          |   Bin 0 -> 5120 bytes
 .../IA32DEBUG/IA32/PeiSmmControl.inf          |   110 +
 .../IA32DEBUG/IA32/PlatformCpuPolicy.depex    |   Bin 0 -> 72 bytes
 .../IA32DEBUG/IA32/PlatformCpuPolicy.efi      |   Bin 0 -> 17632 bytes
 .../IA32DEBUG/IA32/PlatformCpuPolicy.inf      |   227 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.depex |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.efi   |   Bin 0 -> 17472 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf   |   207 +
 .../IA32DEBUG/IA32/PowerManagement2.depex     |     1 +
 .../IA32DEBUG/IA32/PowerManagement2.efi       |   Bin 0 -> 36352 bytes
 .../IA32DEBUG/IA32/PowerManagement2.inf       |   270 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.bin |   Bin 0 -> 64 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.com |   Bin 0 -> 64 bytes
 .../IA32DEBUG/IA32/SataController.efi         |   Bin 0 -> 12128 bytes
 .../IA32DEBUG/IA32/SataController.inf         |   204 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.efi   |   Bin 0 -> 7456 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf   |   116 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.efi  |   Bin 0 -> 8864 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf  |   130 +
 .../IA32DEBUG/IA32/SmmAccess.depex            |   Bin 0 -> 36 bytes
 .../IA32DEBUG/IA32/SmmAccess.efi              |   Bin 0 -> 10336 bytes
 .../IA32DEBUG/IA32/SmmAccess.inf              |   210 +
 .../IA32DEBUG/IA32/SmmControl.depex           |     1 +
 .../IA32DEBUG/IA32/SmmControl.efi             |   Bin 0 -> 11776 bytes
 .../IA32DEBUG/IA32/SmmControl.inf             |   129 +
 .../IA32DEBUG/IA32/VlvInitDxe.depex           |   Bin 0 -> 126 bytes
 .../IA32DEBUG/IA32/VlvInitDxe.efi             |   Bin 0 -> 26656 bytes
 .../IA32DEBUG/IA32/VlvInitDxe.inf             |   259 +
 .../IA32DEBUG/IA32/VlvInitPeim.depex          |     1 +
 .../IA32DEBUG/IA32/VlvInitPeim.efi            |   Bin 0 -> 9120 bytes
 .../IA32DEBUG/IA32/VlvInitPeim.inf            |   116 +
 .../IA32RELEASE/IA32/CpuPeim.depex            |     1 +
 .../IA32RELEASE/IA32/CpuPeim.efi              |   Bin 0 -> 6080 bytes
 .../IA32RELEASE/IA32/CpuPeim.inf              |   123 +
 .../IA32/DigitalThermalSensor.depex           |     1 +
 .../IA32RELEASE/IA32/DigitalThermalSensor.efi |   Bin 0 -> 6144 bytes
 .../IA32RELEASE/IA32/DigitalThermalSensor.inf |   182 +
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.depex |   Bin 0 -> 108 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.efi   |   Bin 0 -> 3872 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf   |   213 +
 .../IA32RELEASE/IA32/GraphicDxeInitSmm.depex  |   Bin 0 -> 162 bytes
 .../IA32RELEASE/IA32/GraphicDxeInitSmm.efi    |   Bin 0 -> 9216 bytes
 .../IA32RELEASE/IA32/GraphicDxeInitSmm.inf    |   259 +
 .../IA32RELEASE/IA32/ISPDxe.depex             |     1 +
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.efi |   Bin 0 -> 6144 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf |   241 +
 .../IA32RELEASE/IA32/MemoryInit.depex         |     1 +
 .../IA32RELEASE/IA32/MemoryInit.efi           |   Bin 0 -> 93888 bytes
 .../IA32RELEASE/IA32/MemoryInit.inf           |   196 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../IA32/PchBiosWriteProtect.depex            |     1 +
 .../IA32RELEASE/IA32/PchBiosWriteProtect.efi  |   Bin 0 -> 2560 bytes
 .../IA32RELEASE/IA32/PchBiosWriteProtect.inf  |   121 +
 .../IA32RELEASE/IA32/PchEarlyInitPeim.depex   |     1 +
 .../IA32RELEASE/IA32/PchEarlyInitPeim.efi     |   Bin 0 -> 14752 bytes
 .../IA32RELEASE/IA32/PchEarlyInitPeim.inf     |    97 +
 .../IA32RELEASE/IA32/PchInitDxe.depex         |   Bin 0 -> 126 bytes
 .../IA32RELEASE/IA32/PchInitDxe.efi           |   Bin 0 -> 61536 bytes
 .../IA32RELEASE/IA32/PchInitDxe.inf           |   272 +
 .../IA32RELEASE/IA32/PchInitPeim.depex        |     1 +
 .../IA32RELEASE/IA32/PchInitPeim.efi          |   Bin 0 -> 11776 bytes
 .../IA32RELEASE/IA32/PchInitPeim.inf          |   136 +
 .../IA32RELEASE/IA32/PchInitSmm.depex         |   Bin 0 -> 162 bytes
 .../IA32RELEASE/IA32/PchInitSmm.efi           |   Bin 0 -> 18432 bytes
 .../IA32RELEASE/IA32/PchInitSmm.inf           |   284 +
 .../IA32RELEASE/IA32/PchPcieSmm.depex         |   Bin 0 -> 108 bytes
 .../IA32RELEASE/IA32/PchPcieSmm.efi           |   Bin 0 -> 11264 bytes
 .../IA32RELEASE/IA32/PchPcieSmm.inf           |   245 +
 .../IA32RELEASE/IA32/PchPolicyInitDxe.depex   |     1 +
 .../IA32RELEASE/IA32/PchPolicyInitDxe.efi     |   Bin 0 -> 2368 bytes
 .../IA32RELEASE/IA32/PchPolicyInitDxe.inf     |   109 +
 .../IA32RELEASE/IA32/PchReset.depex           |     1 +
 .../IA32RELEASE/IA32/PchReset.efi             |   Bin 0 -> 3584 bytes
 .../IA32RELEASE/IA32/PchReset.inf             |   130 +
 .../IA32RELEASE/IA32/PchS3SupportDxe.depex    |     1 +
 .../IA32RELEASE/IA32/PchS3SupportDxe.efi      |   Bin 0 -> 13472 bytes
 .../IA32RELEASE/IA32/PchS3SupportDxe.inf      |   251 +
 .../IA32/PchSmbusArpDisabled.depex            |     1 +
 .../IA32RELEASE/IA32/PchSmbusArpDisabled.efi  |   Bin 0 -> 3136 bytes
 .../IA32RELEASE/IA32/PchSmbusArpDisabled.inf  |   130 +
 .../IA32RELEASE/IA32/PchSmbusDxe.depex        |     1 +
 .../IA32RELEASE/IA32/PchSmbusDxe.efi          |   Bin 0 -> 4832 bytes
 .../IA32RELEASE/IA32/PchSmbusDxe.inf          |   206 +
 .../IA32RELEASE/IA32/PchSmiDispatcher.depex   |   Bin 0 -> 72 bytes
 .../IA32RELEASE/IA32/PchSmiDispatcher.efi     |   Bin 0 -> 12288 bytes
 .../IA32RELEASE/IA32/PchSmiDispatcher.inf     |   175 +
 .../IA32RELEASE/IA32/PchSpiPeim.depex         |     1 +
 .../IA32RELEASE/IA32/PchSpiPeim.efi           |   Bin 0 -> 4384 bytes
 .../IA32RELEASE/IA32/PchSpiPeim.inf           |   125 +
 .../IA32RELEASE/IA32/PchSpiRuntime.depex      |     1 +
 .../IA32RELEASE/IA32/PchSpiRuntime.efi        |   Bin 0 -> 10240 bytes
 .../IA32RELEASE/IA32/PchSpiRuntime.inf        |   252 +
 .../IA32RELEASE/IA32/PchSpiSmm.depex          |     1 +
 .../IA32RELEASE/IA32/PchSpiSmm.efi            |   Bin 0 -> 9728 bytes
 .../IA32RELEASE/IA32/PchSpiSmm.inf            |   245 +
 .../IA32RELEASE/IA32/PchUsb.depex             |     1 +
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.efi |   Bin 0 -> 1344 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf |   124 +
 .../IA32RELEASE/IA32/PciHostBridge.depex      |   Bin 0 -> 54 bytes
 .../IA32RELEASE/IA32/PciHostBridge.efi        |   Bin 0 -> 9792 bytes
 .../IA32RELEASE/IA32/PciHostBridge.inf        |   248 +
 .../IA32RELEASE/IA32/PeiSmmAccess.depex       |     1 +
 .../IA32RELEASE/IA32/PeiSmmAccess.efi         |   Bin 0 -> 1664 bytes
 .../IA32RELEASE/IA32/PeiSmmAccess.inf         |   119 +
 .../IA32RELEASE/IA32/PeiSmmControl.depex      |     1 +
 .../IA32RELEASE/IA32/PeiSmmControl.efi        |   Bin 0 -> 960 bytes
 .../IA32RELEASE/IA32/PeiSmmControl.inf        |    95 +
 .../IA32RELEASE/IA32/PlatformCpuPolicy.depex  |   Bin 0 -> 72 bytes
 .../IA32RELEASE/IA32/PlatformCpuPolicy.efi    |   Bin 0 -> 8064 bytes
 .../IA32RELEASE/IA32/PlatformCpuPolicy.inf    |   216 +
 .../IA32RELEASE/IA32/PnpDxe.depex             |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.efi |   Bin 0 -> 9664 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf |   200 +
 .../IA32RELEASE/IA32/PowerManagement2.depex   |     1 +
 .../IA32RELEASE/IA32/PowerManagement2.efi     |   Bin 0 -> 18432 bytes
 .../IA32RELEASE/IA32/PowerManagement2.inf     |   264 +
 .../IA32RELEASE/IA32/ResetVec.bin             |   Bin 0 -> 64 bytes
 .../IA32RELEASE/IA32/ResetVec.com             |   Bin 0 -> 64 bytes
 .../IA32RELEASE/IA32/SataController.efi       |   Bin 0 -> 3264 bytes
 .../IA32RELEASE/IA32/SataController.inf       |   195 +
 .../IA32RELEASE/IA32/SeCUma.depex             |     1 +
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.efi |   Bin 0 -> 1856 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf |   101 +
 .../IA32RELEASE/IA32/SecCore.efi              |   Bin 0 -> 8000 bytes
 .../IA32RELEASE/IA32/SecCore.inf              |   152 +
 .../IA32RELEASE/IA32/SmmAccess.depex          |   Bin 0 -> 36 bytes
 .../IA32RELEASE/IA32/SmmAccess.efi            |   Bin 0 -> 1984 bytes
 .../IA32RELEASE/IA32/SmmAccess.inf            |   198 +
 .../IA32RELEASE/IA32/SmmControl.depex         |     1 +
 .../IA32RELEASE/IA32/SmmControl.efi           |   Bin 0 -> 3072 bytes
 .../IA32RELEASE/IA32/SmmControl.inf           |   122 +
 .../IA32RELEASE/IA32/VlvInitDxe.depex         |   Bin 0 -> 126 bytes
 .../IA32RELEASE/IA32/VlvInitDxe.efi           |   Bin 0 -> 16640 bytes
 .../IA32RELEASE/IA32/VlvInitDxe.inf           |   253 +
 .../IA32RELEASE/IA32/VlvInitPeim.depex        |     1 +
 .../IA32RELEASE/IA32/VlvInitPeim.efi          |   Bin 0 -> 3104 bytes
 .../IA32RELEASE/IA32/VlvInitPeim.inf          |   101 +
 .../Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h   |    72 +
 .../Vlv2SocBinPkg/Microcode/M0130673321.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0130678806.inc   | 12800 +++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0130679901.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0130679906.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0130679907.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M023067221D.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0F30679909.inc   | 13056 ++++++++++++++++
 .../Microcode/MicrocodeUpdates.inf            |    51 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../UNDI/I211PcieUndiDxe/X64/E7006X3.EFI      |   Bin 0 -> 341536 bytes
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../UNDI/RtkUndiDxe/IA32/RtkUndiDxe.efi       |   Bin 0 -> 78368 bytes
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../UNDI/RtkUndiDxe/X64/RtkUndiDxe.efi        |   Bin 0 -> 92064 bytes
 Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec |    36 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.efi   |   Bin 0 -> 10624 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf   |   137 +
 .../X64DEBUG/IA32/MemoryInit.depex            |     1 +
 .../X64DEBUG/IA32/MemoryInit.efi              |   Bin 0 -> 98304 bytes
 .../X64DEBUG/IA32/MemoryInit.inf              |   201 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../X64DEBUG/IA32/PchEarlyInitPeim.depex      |     1 +
 .../X64DEBUG/IA32/PchEarlyInitPeim.efi        |   Bin 0 -> 15040 bytes
 .../X64DEBUG/IA32/PchEarlyInitPeim.inf        |    97 +
 .../X64DEBUG/IA32/PchInitPeim.depex           |     1 +
 .../X64DEBUG/IA32/PchInitPeim.efi             |   Bin 0 -> 22976 bytes
 .../X64DEBUG/IA32/PchInitPeim.inf             |   150 +
 .../X64DEBUG/IA32/PchSmbusArpDisabled.depex   |     1 +
 .../X64DEBUG/IA32/PchSmbusArpDisabled.efi     |   Bin 0 -> 7616 bytes
 .../X64DEBUG/IA32/PchSmbusArpDisabled.inf     |   144 +
 .../X64DEBUG/IA32/PchSpiPeim.depex            |     1 +
 .../X64DEBUG/IA32/PchSpiPeim.efi              |   Bin 0 -> 10304 bytes
 .../X64DEBUG/IA32/PchSpiPeim.inf              |   139 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex  |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.efi    |   Bin 0 -> 5984 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf    |   137 +
 .../X64DEBUG/IA32/PeiSmmAccess.depex          |     1 +
 .../X64DEBUG/IA32/PeiSmmAccess.efi            |   Bin 0 -> 6208 bytes
 .../X64DEBUG/IA32/PeiSmmAccess.inf            |   132 +
 .../X64DEBUG/IA32/PeiSmmControl.depex         |     1 +
 .../X64DEBUG/IA32/PeiSmmControl.efi           |   Bin 0 -> 5120 bytes
 .../X64DEBUG/IA32/PeiSmmControl.inf           |   110 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.bin  |   Bin 0 -> 64 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.com  |   Bin 0 -> 64 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex  |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.efi    |   Bin 0 -> 7456 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf    |   116 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.efi   |   Bin 0 -> 8864 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf   |   130 +
 .../X64DEBUG/IA32/VlvInitPeim.depex           |     1 +
 .../X64DEBUG/IA32/VlvInitPeim.efi             |   Bin 0 -> 9120 bytes
 .../X64DEBUG/IA32/VlvInitPeim.inf             |   116 +
 .../X64DEBUG/X64/DigitalThermalSensor.depex   |     1 +
 .../X64DEBUG/X64/DigitalThermalSensor.efi     |   Bin 0 -> 32768 bytes
 .../X64DEBUG/X64/DigitalThermalSensor.inf     |   190 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/Dptf.depex     |   Bin 0 -> 108 bytes
 .../Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.efi |   Bin 0 -> 29120 bytes
 .../Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf |   219 +
 .../X64DEBUG/X64/GraphicDxeInitSmm.depex      |   Bin 0 -> 162 bytes
 .../X64DEBUG/X64/GraphicDxeInitSmm.efi        |   Bin 0 -> 54272 bytes
 .../X64DEBUG/X64/GraphicDxeInitSmm.inf        |   265 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex   |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.efi     |   Bin 0 -> 39328 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf     |   247 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../X64DEBUG/X64/PchBiosWriteProtect.depex    |     1 +
 .../X64DEBUG/X64/PchBiosWriteProtect.efi      |   Bin 0 -> 26624 bytes
 .../X64DEBUG/X64/PchBiosWriteProtect.inf      |   130 +
 .../X64DEBUG/X64/PchInitDxe.depex             |   Bin 0 -> 126 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.efi |   Bin 0 -> 176256 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf |   278 +
 .../X64DEBUG/X64/PchInitSmm.depex             |   Bin 0 -> 162 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.efi |   Bin 0 -> 67072 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf |   290 +
 .../X64DEBUG/X64/PchPcieSmm.depex             |   Bin 0 -> 108 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.efi |   Bin 0 -> 55808 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf |   251 +
 .../X64DEBUG/X64/PchPolicyInitDxe.depex       |     1 +
 .../X64DEBUG/X64/PchPolicyInitDxe.efi         |   Bin 0 -> 23616 bytes
 .../X64DEBUG/X64/PchPolicyInitDxe.inf         |   123 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchReset.efi   |   Bin 0 -> 29184 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf   |   137 +
 .../X64DEBUG/X64/PchS3SupportDxe.depex        |     1 +
 .../X64DEBUG/X64/PchS3SupportDxe.efi          |   Bin 0 -> 58368 bytes
 .../X64DEBUG/X64/PchS3SupportDxe.inf          |   257 +
 .../X64DEBUG/X64/PchSmbusDxe.depex            |     1 +
 .../X64DEBUG/X64/PchSmbusDxe.efi              |   Bin 0 -> 35328 bytes
 .../X64DEBUG/X64/PchSmbusDxe.inf              |   214 +
 .../X64DEBUG/X64/PchSmiDispatcher.depex       |   Bin 0 -> 72 bytes
 .../X64DEBUG/X64/PchSmiDispatcher.efi         |   Bin 0 -> 53760 bytes
 .../X64DEBUG/X64/PchSmiDispatcher.inf         |   181 +
 .../X64DEBUG/X64/PchSpiRuntime.depex          |     1 +
 .../X64DEBUG/X64/PchSpiRuntime.efi            |   Bin 0 -> 50688 bytes
 .../X64DEBUG/X64/PchSpiRuntime.inf            |   258 +
 .../X64DEBUG/X64/PchSpiSmm.depex              |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.efi  |   Bin 0 -> 54272 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf  |   251 +
 .../X64DEBUG/X64/PciHostBridge.depex          |   Bin 0 -> 54 bytes
 .../X64DEBUG/X64/PciHostBridge.efi            |   Bin 0 -> 49856 bytes
 .../X64DEBUG/X64/PciHostBridge.inf            |   254 +
 .../X64DEBUG/X64/PlatformCpuPolicy.depex      |   Bin 0 -> 72 bytes
 .../X64DEBUG/X64/PlatformCpuPolicy.efi        |   Bin 0 -> 35392 bytes
 .../X64DEBUG/X64/PlatformCpuPolicy.inf        |   227 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.depex   |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.efi     |   Bin 0 -> 33664 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf     |   207 +
 .../X64DEBUG/X64/PowerManagement2.depex       |     1 +
 .../X64DEBUG/X64/PowerManagement2.efi         |   Bin 0 -> 75776 bytes
 .../X64DEBUG/X64/PowerManagement2.inf         |   270 +
 .../X64DEBUG/X64/SataController.efi           |   Bin 0 -> 30208 bytes
 .../X64DEBUG/X64/SataController.inf           |   204 +
 .../X64DEBUG/X64/SmmAccess.depex              |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.efi  |   Bin 0 -> 25600 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf  |   210 +
 .../X64DEBUG/X64/SmmControl.depex             |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.efi |   Bin 0 -> 27136 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf |   129 +
 .../X64DEBUG/X64/VlvInitDxe.depex             |   Bin 0 -> 126 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.efi |   Bin 0 -> 55168 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf |   259 +
 .../X64RELEASE/IA32/CpuPeim.depex             |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.efi |   Bin 0 -> 6080 bytes
 .../Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf |   123 +
 .../X64RELEASE/IA32/MemoryInit.depex          |     1 +
 .../X64RELEASE/IA32/MemoryInit.efi            |   Bin 0 -> 93888 bytes
 .../X64RELEASE/IA32/MemoryInit.inf            |   196 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../X64RELEASE/IA32/PchEarlyInitPeim.depex    |     1 +
 .../X64RELEASE/IA32/PchEarlyInitPeim.efi      |   Bin 0 -> 14752 bytes
 .../X64RELEASE/IA32/PchEarlyInitPeim.inf      |    97 +
 .../X64RELEASE/IA32/PchInitPeim.depex         |     1 +
 .../X64RELEASE/IA32/PchInitPeim.efi           |   Bin 0 -> 11776 bytes
 .../X64RELEASE/IA32/PchInitPeim.inf           |   136 +
 .../X64RELEASE/IA32/PchSmbusArpDisabled.depex |     1 +
 .../X64RELEASE/IA32/PchSmbusArpDisabled.efi   |   Bin 0 -> 3136 bytes
 .../X64RELEASE/IA32/PchSmbusArpDisabled.inf   |   130 +
 .../X64RELEASE/IA32/PchSpiPeim.depex          |     1 +
 .../X64RELEASE/IA32/PchSpiPeim.efi            |   Bin 0 -> 4384 bytes
 .../X64RELEASE/IA32/PchSpiPeim.inf            |   125 +
 .../X64RELEASE/IA32/PchUsb.depex              |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.efi  |   Bin 0 -> 1344 bytes
 .../Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf  |   124 +
 .../X64RELEASE/IA32/PeiSmmAccess.depex        |     1 +
 .../X64RELEASE/IA32/PeiSmmAccess.efi          |   Bin 0 -> 1664 bytes
 .../X64RELEASE/IA32/PeiSmmAccess.inf          |   119 +
 .../X64RELEASE/IA32/PeiSmmControl.depex       |     1 +
 .../X64RELEASE/IA32/PeiSmmControl.efi         |   Bin 0 -> 960 bytes
 .../X64RELEASE/IA32/PeiSmmControl.inf         |    95 +
 .../X64RELEASE/IA32/ResetVec.bin              |   Bin 0 -> 64 bytes
 .../X64RELEASE/IA32/ResetVec.com              |   Bin 0 -> 64 bytes
 .../X64RELEASE/IA32/SeCUma.depex              |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.efi  |   Bin 0 -> 1856 bytes
 .../Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf  |   101 +
 .../Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.efi |   Bin 0 -> 8000 bytes
 .../Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf |   152 +
 .../X64RELEASE/IA32/VlvInitPeim.depex         |     1 +
 .../X64RELEASE/IA32/VlvInitPeim.efi           |   Bin 0 -> 3104 bytes
 .../X64RELEASE/IA32/VlvInitPeim.inf           |   101 +
 .../X64RELEASE/X64/DigitalThermalSensor.depex |     1 +
 .../X64RELEASE/X64/DigitalThermalSensor.efi   |   Bin 0 -> 8192 bytes
 .../X64RELEASE/X64/DigitalThermalSensor.inf   |   182 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/Dptf.depex   |   Bin 0 -> 108 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/Dptf.efi     |   Bin 0 -> 4384 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf     |   213 +
 .../X64RELEASE/X64/GraphicDxeInitSmm.depex    |   Bin 0 -> 162 bytes
 .../X64RELEASE/X64/GraphicDxeInitSmm.efi      |   Bin 0 -> 11264 bytes
 .../X64RELEASE/X64/GraphicDxeInitSmm.inf      |   259 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.efi   |   Bin 0 -> 6880 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf   |   241 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../X64RELEASE/X64/PchBiosWriteProtect.depex  |     1 +
 .../X64RELEASE/X64/PchBiosWriteProtect.efi    |   Bin 0 -> 4096 bytes
 .../X64RELEASE/X64/PchBiosWriteProtect.inf    |   121 +
 .../X64RELEASE/X64/PchInitDxe.depex           |   Bin 0 -> 126 bytes
 .../X64RELEASE/X64/PchInitDxe.efi             |   Bin 0 -> 59648 bytes
 .../X64RELEASE/X64/PchInitDxe.inf             |   272 +
 .../X64RELEASE/X64/PchInitSmm.depex           |   Bin 0 -> 162 bytes
 .../X64RELEASE/X64/PchInitSmm.efi             |   Bin 0 -> 18432 bytes
 .../X64RELEASE/X64/PchInitSmm.inf             |   284 +
 .../X64RELEASE/X64/PchPcieSmm.depex           |   Bin 0 -> 108 bytes
 .../X64RELEASE/X64/PchPcieSmm.efi             |   Bin 0 -> 13312 bytes
 .../X64RELEASE/X64/PchPcieSmm.inf             |   245 +
 .../X64RELEASE/X64/PchPolicyInitDxe.depex     |     1 +
 .../X64RELEASE/X64/PchPolicyInitDxe.efi       |   Bin 0 -> 2528 bytes
 .../X64RELEASE/X64/PchPolicyInitDxe.inf       |   109 +
 .../X64RELEASE/X64/PchReset.depex             |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/PchReset.efi |   Bin 0 -> 4608 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf |   130 +
 .../X64RELEASE/X64/PchS3SupportDxe.depex      |     1 +
 .../X64RELEASE/X64/PchS3SupportDxe.efi        |   Bin 0 -> 16224 bytes
 .../X64RELEASE/X64/PchS3SupportDxe.inf        |   251 +
 .../X64RELEASE/X64/PchSmbusDxe.depex          |     1 +
 .../X64RELEASE/X64/PchSmbusDxe.efi            |   Bin 0 -> 6848 bytes
 .../X64RELEASE/X64/PchSmbusDxe.inf            |   206 +
 .../X64RELEASE/X64/PchSmiDispatcher.depex     |   Bin 0 -> 72 bytes
 .../X64RELEASE/X64/PchSmiDispatcher.efi       |   Bin 0 -> 17920 bytes
 .../X64RELEASE/X64/PchSmiDispatcher.inf       |   175 +
 .../X64RELEASE/X64/PchSpiRuntime.depex        |     1 +
 .../X64RELEASE/X64/PchSpiRuntime.efi          |   Bin 0 -> 13312 bytes
 .../X64RELEASE/X64/PchSpiRuntime.inf          |   252 +
 .../X64RELEASE/X64/PchSpiSmm.depex            |     1 +
 .../X64RELEASE/X64/PchSpiSmm.efi              |   Bin 0 -> 11776 bytes
 .../X64RELEASE/X64/PchSpiSmm.inf              |   245 +
 .../X64RELEASE/X64/PciHostBridge.depex        |   Bin 0 -> 54 bytes
 .../X64RELEASE/X64/PciHostBridge.efi          |   Bin 0 -> 21152 bytes
 .../X64RELEASE/X64/PciHostBridge.inf          |   248 +
 .../X64RELEASE/X64/PlatformCpuPolicy.depex    |   Bin 0 -> 72 bytes
 .../X64RELEASE/X64/PlatformCpuPolicy.efi      |   Bin 0 -> 9344 bytes
 .../X64RELEASE/X64/PlatformCpuPolicy.inf      |   216 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.depex |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.efi   |   Bin 0 -> 10080 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf   |   200 +
 .../X64RELEASE/X64/PowerManagement2.depex     |     1 +
 .../X64RELEASE/X64/PowerManagement2.efi       |   Bin 0 -> 21504 bytes
 .../X64RELEASE/X64/PowerManagement2.inf       |   264 +
 .../X64RELEASE/X64/SataController.efi         |   Bin 0 -> 4064 bytes
 .../X64RELEASE/X64/SataController.inf         |   195 +
 .../X64RELEASE/X64/SmmAccess.depex            |   Bin 0 -> 36 bytes
 .../X64RELEASE/X64/SmmAccess.efi              |   Bin 0 -> 2208 bytes
 .../X64RELEASE/X64/SmmAccess.inf              |   198 +
 .../X64RELEASE/X64/SmmControl.depex           |     1 +
 .../X64RELEASE/X64/SmmControl.efi             |   Bin 0 -> 3584 bytes
 .../X64RELEASE/X64/SmmControl.inf             |   122 +
 .../X64RELEASE/X64/VlvInitDxe.depex           |   Bin 0 -> 126 bytes
 .../X64RELEASE/X64/VlvInitDxe.efi             |   Bin 0 -> 19328 bytes
 .../X64RELEASE/X64/VlvInitDxe.inf             |   253 +
 451 files changed, 128555 insertions(+)
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/IntelGopDriver.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/IntelGopDriver.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/Vbt.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/vbt.bsf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.com
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.com
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130673321.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130678806.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679901.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679906.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679907.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M023067221D.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0F30679909.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/MicrocodeUpdates.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/E7006X3.EFI
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/RtkUndiDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/RtkUndiDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.com
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.com
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.inf

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/IntelGopDriver.efi b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/IntelGopDriver.efi
new file mode 100644
index 0000000000000000000000000000000000000000..285f092fc20963aba5ae6be83d80b503df544375
GIT binary patch
literal 60192
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/IntelGopDriver.efi b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/IntelGopDriver.efi
new file mode 100644
index 0000000000000000000000000000000000000000..3237db26f8ffd2d25097673a0c7e196722d70a17
GIT binary patch
literal 75008
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/Vbt.bin b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/Vbt.bin
new file mode 100644
index 0000000000000000000000000000000000000000..6b88c70142d137a2c0ab6487394e47c2ec8ade7c
GIT binary patch
literal 4096
zcmeHJL2TSa6#cf>p7GRSo!LT{ZMt$>7?RMmCcx4|Q70*lNC|XTG+{ZQY*7M2g3^iu
zK|+cv<&d860nx$%7I6T=C5RK^z=2B<m%srDaS1|5RS_rPSeZX#Z)vkEwU8>MD1W8d
zKjZ(O|9}6_jPIHmKM~A~O-&trdS>$IQvnLhK?n~NPvO`t<CDjqoPA{M#Mtck)bS&a
z1z*A)P$(KUYy&Xh$|yhqKq?(*xA#A+_+Xv`6P<Q<>?N4m4(GTGU<ME%96+Q76ltUe
z1i)5v(}zH>6yUp-TDYYBbP(Erpn*n^8w}7(n-YA5MzGM#RT!iAyLlt~1{lI?Ns?P#
z^Ga|Gd9>)EXh7#O4UnAgvtR+3zXU!gR?}+APOks{Ptk=!fr7-*z=DI!N{ToZHGmd?
zN-zpwNGNnbl~<1!^>>;JfP0{OA&a0CKrwBno*`|27o1AZr<>qGMJ2GaY^)ImYvd1O
zxwJX8{8S}Le<t~TdRq?E;CnZUgY{iLZS6_zs(Drh%Xk*OavktWCPQz6^?@zEw)u}X
z`^6U99KOq8_c-ElhtE3f1xLK$@b?||i6g#s_|Fde%@HNS?<VX35z~Y}PuLkE&J+GI
zVV@E41L40C_9qcLDIcNiAu67s{AJ2sqvAcvKc(yoDt@B;cgn6%vDf7fy6mtk=3V}(
z%g(yuLzjQ<vaj5}VbhMx^=ljay68KTB<W7SwrHd~!wanD4YmYs@T6S~;J)TSFc@vm
zD6K7;$QO#Ij)Ts-di^KK+?^oDK!oMxT543TEn2Cghevy7%l87n7{Xz=(11{er%S0-
zwYHc!dJA?X7s5i&sQA*q2EmB+wUHCyqXP@;jf#-X3xCI8#Ey!`lg?_67#=+=!)I4V
zrNom|3ufT}UT=s{xAQRh-0qo`22{g|IID$XGS-J4hLVSe*Z0TmR;4P#Agcw&P>5X}
zLqzgqF?c9ypI+UI2*WxFP_>BlJ?FLUr5ye6&QN=;v9u?wzrEusf~CGJG?RG{!eM!_
zwKNx&8yW2wgN5y=5dLFNYJ|QN!47g{ak&ERdaxt(!XwHH6c1K>o6@|99L&)VmmiMG
zXAX|Y=15g}r3g?|nuiylZY?$GB}p<Qp%p=?<@^1qk<P+bx;HgZpRJ!fHUHuhCtsTX
zA56Mgxc4kL$1VaiS8m>zY!GvU?7JP#O<-t~_@y@ub^NH_XS@ZMto^G1%U9)=Q192L
YKuUAXxZw`yuE*BO76V%hY)S_H0_g|%5C8xG

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/vbt.bsf b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/vbt.bsf
new file mode 100644
index 0000000..c8d2daf
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/vbt.bsf
@@ -0,0 +1,9216 @@
+;    TITLE    BMP.bsf - BMP Scrip File for Video BIOS

+;==============================================================================

+; Advance Graphics ROM BIOS

+;------------------------------------------------------------------------------

+; Copyright (c) Intel Corporation (2000 - 2011).

+;

+; INTEL MAKES NO WARRANTY OF ANY KIND REGARDING THE CODE. THIS CODE IS

+; LICENSED ON AN "AS IS" BASIS AND INTEL WILL NOT PROVIDE ANY SUPPORT,

+; ASSISTANCE, INSTALLATION, TRAINING OR OTHER SERVICES.

+; INTEL DOES NOT PROVIDE ANY UPDATES, ENHANCEMENTS OR EXTENSIONS.

+; INTEL SPECIFICALLY DISCLAIMS ANY WARRANTY OF MERCHANTABILITY,

+; NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY OTHER

+; WARRANTY.

+;

+; Intel disclaims all liability, including liability for infringement of

+; any proprietary rights, relating to use of the code. No license, express

+; or implied, by estoppel or otherwise, to any intellectual property rights

+; is granted herein.

+;

+; File Description:

+;    This file is the script file use by the BMP utility which will allow

+;    OEM's to edit data and select features on a binary file.

+;

+;------------------------------------------------------------------------------

+

+

+;==============================================================================

+; Header - Start of BMP Structure Definition

+;------------------------------------------------------------------------------

+

+StructDef

+

+Find			"BIOS_DATA_BLOCK "

+

+			; The following block will determine the reference

+			; pointer for all table pointer variables.

+

+Find_Ptr_Ref		"BIOS_DATA_BLOCK" ; Reference to beginning of VB VBT data

+

+$BDB_Ver		2 bytes		; BIOS Data Block version number (decimal, e.g.201 = 02.01) 

+$BDB_Header_Size	2 bytes		; BIOS Data Block Header size

+$BDB_Size		2 bytes		; BIOS Data Block size 

+

+;==============================================================================

+; Block 1 - General Bit Definitions

+;------------------------------------------------------------------------------

+

+SKIP               3 bytes              ; Skip block ID and size

+

+        ;

+        ; bmp_Bits_1

+	   ;

+

+$Enable_Panel_Fitting 2 bits            ; Enable / Disable panel fitting

+$Flexaim_Support   1 bit                ; Enable / Disable Flex-aim support

+$Msg_Enable        1 bit                ; Disable signon and copyright

+$Cls_After_Signon  3 bits               ; Clear screen after display message and pause

+$bmp_DVO_A_Color_Flip 1 bit             ; Flat color flip

+ALIGN

+

+        ;

+        ; bmp_Bits_2

+	   ;

+$Download_Ext_VBT  		1 bit                ; Download external VBT flag

+$Enable_SSC        		1 bit                ; Enable/Disable SSC

+$SSC_Freq          		1 bit                ; SSC Frequency

+$Enable_LFPOn_Override  1 bit            ; Enable/Disable LFP ON Override

+$Disable_SSC_DDT   		1 bit                ; Disable SSC in Dual Display Twin

+$Override_VGA_720p 		1 bit           ; Enable/Disable Override 720p for VGA modes

+$Enable_Dynamic_CDClock 1 bit           ; Enables Dynamic CD clock feature

+$Hotplug_Support_Enb 	1 bit              ; Hot Plug support in DOS

+

+ALIGN

+        ;

+        ; bmp_Bits_3

+        ;   

+SKIP							2 bits

+$180_Deg_Rotation_Enable      	1 bit		 ; 180 Degree Rotation Enable bit

+SKIP               				5 bits

+ALIGN

+

+$bmp_Legacy_Monitor_Detect 1 bit        ; Use legacy monitor detect algorithm

+SKIP               7 bits

+ALIGN

+

+            ;

+            ; Int_Displays_Support

+            ;

+$Int_CRT_Support   1 bit                 ; Integrated CRT support

+$Int_TV_Support    1 bit                 ; Integrated TV support

+$Int_EFP_Support   1 bit                 ; Integrated EFP support

+$DP_SSC_Enb        1 bit                 ; DP SSC Enable bit

+$DP_SSC_Freq       1 bit                 ; DP SSC Frequency bit

+$DP_SSC_Dongle_Enb 1 bit                 ; DP SSC dongle Enable/Disable

+SKIP               2 bits

+

+ALIGN

+

+

+;==============================================================================

+; Block 253 - PRD Boot Algorithm Table

+;------------------------------------------------------------------------------

+

+SKIP			3 bytes		; Skip block ID and size

+

+SKIP                        1 byte

+$ChildDevice1Primary        1 byte

+$ChildDevice1Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice2Primary        1 byte

+$ChildDevice2Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice3Primary        1 byte

+$ChildDevice3Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice4Primary        1 byte

+$ChildDevice4Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice5Primary        1 byte

+$ChildDevice5Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice6Primary        1 byte

+$ChildDevice6Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice7Primary        1 byte

+$ChildDevice7Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice8Primary        1 byte

+$ChildDevice8Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice9Primary        1 byte

+$ChildDevice9Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice10Primary       1 byte

+$ChildDevice10Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice11Primary       1 byte

+$ChildDevice11Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice12Primary       1 byte

+$ChildDevice12Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice13Primary       1 byte

+$ChildDevice13Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice14Primary       1 byte

+$ChildDevice14Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice15Primary       1 byte

+$ChildDevice15Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice16Primary       1 byte

+$ChildDevice16Secondary     1 byte

+

+SKIP                        2 bytes        ; No of entries

+

+;==============================================================================

+; Block 2 - General Data Definitions

+;------------------------------------------------------------------------------

+

+SKIP               3 bytes              ; Skip block ID and size

+

+$CRT_DDC_GMBUS_Pin 1 byte               ; CRT DDC GMBUS pin pair

+

+$DPMS_ACPI_Bit     1 bit                ; Apply ACPI DPMS CRT Power States

+$Skip_Boot_CRT_Detect 1 bit             ; Disable/Enable skip boot CRT detect

+$DPMS_AIM_Bit      1 bit                ; Apply DPMS to AIM devices

+SKIP               5 bits

+ALIGN

+

+

+$Boot_Display      2 bytes              ; Boot display type

+$size_ChildStruc   1 byte

+

+

+$Int_LFP1_DID      2 bytes              ; Skip Device Handle

+$Int_LFP1_Type     2 bytes              ; Device type

+SKIP               7 bytes              ; Skip

+SKIP               1 byte               ; Skip

+$Int_LFP1_Priority 1 byte                ; primary/secondary panel select

+ALIGN

+SKIP               3 bytes              ; Skip

+$Int_LFP1_Port     1 byte               ; eDP port select

+SKIP               2 bytes              ; Skip remaining Data structure

+$Int_LFP1_DDC_Pin 1 byte               ; LFP DDC GMBUS pin pair

+SKIP               5 bytes

+$Int_LFP1_AUX_Channel 1 byte            ; DP AUX channel

+SKIP               7 bytes

+

+

+$Int_LFP2_DID      2 bytes              ; Skip Device Handle

+$Int_LFP2_Type     2 bytes              ; Device type

+SKIP               7 bytes              ; Skip

+SKIP               1 byte               ; Skip

+$Int_LFP2_Priority 8 bits                ; primary/secondary panel select

+ALIGN

+SKIP               3 bytes              ; Skip

+$Int_LFP2_Port      1 byte               ; eDP port select

+SKIP               2 bytes              ; Skip remaining Data structure

+$Int_LFP2_DDC_Pin 1 byte               ; LFP DDC GMBUS pin pair

+SKIP               5 bytes

+$Int_LFP2_AUX_Channel 1 byte            ; DP AUX channel

+SKIP               7 bytes

+

+

+$Int_EFP1_DID      2 bytes              ; Skip Device Handle

+$Int_EFP1_Type     2 bytes              ; Device type

+SKIP               1 byte              ; Skip I2C Speed

+$EFP1_OnBoard_PreEmph_Level     3 bits		; EFP1 On Board Dp Redriver PreEmphasis Level

+$EFP1_OnBoard_VSwing_Level      3 bits		; EFP1 On Board Dp Redriver VSwing Level

+$EFP1_OnBoard_Redriver_Present  1 bit		; Is OnBoard Redriver Present for EFP1

+SKIP							1 bit		; Reserved

+$EFP1_OnDock_PreEmph_Level     3 bits		; EFP1 On Dock Dp Redriver PreEmphasis Level

+$EFP1_OnDock_VSwing_Level      3 bits		; EFP1 On Dock Dp Redriver VSwing Level

+$EFP1_OnDock_Redriver_Present  1 bit		; Is On Dock Redriver Present for EFP1

+SKIP							1 bit		; Reserved

+$Int_EFP1_HDMI_LS_Type			5 bits		; HDMI Level shifter configuration

+SKIP					3 bits		; Reserved

+ALIGN

+SKIP					2 bytes		; Skip EDIDless DTD offset

+$EFP1_EDIDless_en			1 bit		; EDIDless enable bit

+SKIP					7 bits		; Skip remaining bits

+SKIP					3 bytes		; Skip Reserved_1

+SKIP					2 bytes		; skip Addin module table offset

+$Int_EFP1_Port     1 byte               ; EFP1 port

+SKIP               2 bytes              ; Skip

+$Int_EFP1_DDC_Pin  1 byte               ; EFP1 DDC Pin

+SKIP               3 bytes

+$Int_EFP1_Docked_Port  1 bit            ; HDMI/DP Docked Port

+SKIP 				   1 bit			; Skip Enabling Lane Reversal Bit

+SKIP			 	   6 bits			; Reserved

+$Int_EFP1_HDMI_Compat 1 bit             ; HDMI combatibility

+$Int_EFP1_Conn_Info 3 bits              ; Connector information

+SKIP               4 bits

+$Int_EFP1_AUX_Channel 1 byte            ; DP AUX channel

+$Int_EFP1_Dongle_Detect 1 byte          ; Dongle Detect

+SKIP               6 bytes              ; Skip

+

+$Int_EFP2_DID      2 bytes              ; Skip Device Handle

+$Int_EFP2_Type     2 bytes              ; Device type

+SKIP               1 byte              ; Skip I2C Speed

+$EFP2_OnBoard_PreEmph_Level     3 bits		; EFP2 On Board Dp Redriver PreEmphasis Level

+$EFP2_OnBoard_VSwing_Level      3 bits		; EFP2 On Board Dp Redriver VSwing Level

+$EFP2_OnBoard_Redriver_Present  1 bit		; Is OnBoard Redriver Present for EFP2

+SKIP							1 bit		; Reserved

+$EFP2_OnDock_PreEmph_Level     3 bits		; EFP2 On Dock Dp Redriver PreEmphasis Level

+$EFP2_OnDock_VSwing_Level      3 bits		; EFP2 On Dock Dp Redriver VSwing Level

+$EFP2_OnDock_Redriver_Present  1 bit		; Is On Dock Redriver Present for EFP2

+SKIP							1 bit		; Reserved

+$Int_EFP2_HDMI_LS_Type			5 bits		; HDMI Level shifter configuration

+SKIP					3 bits		; Reserved

+ALIGN

+SKIP					2 bytes		; Skip EDIDless DTD offset

+$EFP2_EDIDless_en			1 bit		; EDIDless enable bit

+SKIP					7 bits		; Skip remaining bits

+SKIP					3 bytes		; Skip Reserved_1

+SKIP					2 bytes		; skip Addin module table offset

+$Int_EFP2_Port     1 byte               ; EFP1 port

+SKIP               2 bytes              ; Skip

+$Int_EFP2_DDC_Pin  1 byte               ; EFP1 DDC Pin

+SKIP               3 bytes

+$Int_EFP2_Docked_Port 1 bit            ; HDMI/DP Docked Port

+SKIP 				  1 bit			; Skip Enabling Lane Reversal Bit

+SKIP 				  6 bits			; Reserved

+$Int_EFP2_HDMI_Compat 1 bit             ; HDMI combatibility

+$Int_EFP2_Conn_Info 3 bits              ; Connector information

+SKIP               4 bits

+$Int_EFP2_AUX_Channel 1 byte            ; DP AUX channel

+$Int_EFP2_Dongle_Detect 1 byte          ; Dongle Detect

+SKIP               6 bytes              ; Skip

+

+;==============================================================================

+; Block 3 - Original Display Toggle List

+;------------------------------------------------------------------------------

+

+SKIP			3 bytes		; Skip block ID and size

+

+$bmp_Display_Detect	1 byte		; Display must be attached or not

+

+;==============================================================================

+; Block 9 - PSR Feature Table

+;------------------------------------------------------------------------------

+

+SKIP			3 bytes		; Skip block ID and size

+

+SKIP			96 bytes	     ; PSR Table data

+

+;==============================================================================

+	  

+	  

+;==============================================================================

+; Block 10 - Modes Removal Table.

+;------------------------------------------------------------------------------

+

+SKIP            	3 bytes        ; Skip block ID and size

+SKIP				1 byte		   ; Skip EntrySize

+$Mode_Rem_Table    	200 bytes      ; Mode Removal Table

+SKIP 				2 bytes		   ; Skip Terminator

+

+;==============================================================================

+; Block 12 - Driver default boot display

+;------------------------------------------------------------------------------ 

+

+SKIP               3 bytes        ; Skip block ID and size

+$Driver_Boot_Device    1 bit

+$Block_Disp_Switch    1 bit

+$Allow_FDOS_Disp_Switch 1 bit        ; Allow FS DOS display switching

+$Hot_Plug_DVO        1 bit

+$Dual_View_Zoom        1 bit

+$Drv_Int15_hook        1 bit

+$DVD_Sprite_Clone    1 bit

+$Use_110h_for_LFP    1 bit 

+ALIGN

+

+$Driver_Boot_Mode_X    2 bytes        ; X resolution

+$Driver_Boot_Mode_Y    2 bytes        ; Y resolution

+$Driver_Boot_Mode_BPP     1 byte        ; Pixel depth

+$Driver_Boot_Mode_RR      1 byte        ; Refresh rate

+; bmp_Ext_Driver_Bits

+

+$Enable_LFP_Primary    1 bit

+$GTF_Mode_Pruning    1 bit

+SKIP            1 bit        ; DISABLE_DFGT

+SKIP            1 bit        ; DISABLE_DFGT

+$NT4_Dual_Dsp_Clone_Spt 1 bit        ; Dual display clone support for NT4

+$Default_Power_Scheme    1 bit

+$Sprite_Display_Assign    1 bit        ; Sprite Display Assignment for when Overlay is Active in Clone Mode

+$CUI_Maintain_Aspect    1 bit        ; Display "Maintain Aspect Ratio" via CUI

+$Preserve_Aspect_Ratio    1 bit        ; Preserve Aspect Ratio

+$SDVO_Device_Power_Down    1 bit        ; SDVO device power down

+$Hot_Plug_CRT        1 bit        ; CRT hot plug

+$LVDS_Config        2 bits        ; LVDS configuration

+$Hot_Plug_TV        1 bit        ; Hot plug TV enable/disable

+$INT_HDMI_Config    2 bits        ; Integrated HDMI Configuration

+ALIGN

+

+			; bmp_Driver_Flags_1

+

+$CUIHotK_Static_Display    1 bit

+SKIP               7 bits

+$Legacy_Monitor_Max_X    2 bytes

+$Legacy_Monitor_Max_Y    2 bytes

+$Legacy_Monitor_Max_RR    1 bytes

+ALIGN

+

+; bmp_Ext2_Driver_Bits

+

+$Enable_Int_Src_Term    1 bit        ; Enable Internal Source Termination for HDMI

+SKIP               7 bits

+ALIGN

+

+$VBT_Customization_Version 1 byte    ; Customization VBT version number

+ALIGN

+

+			; bmp_Driver_Feature_Flags

+

+SKIP               		5 bits

+$PM_DRRS_Enable			1 bit		; Intel � Display Refresh Rate Switching (DRRS) Enable/Disable Flag.

+SKIP					3 bits

+$Panel_Self_Refresh     1 bit       ; Panel Self refresh feature (PSR)

+SKIP               		2 bits

+$DMRRS             		1 bit       ; Dynamic Media Refresh Rate Enable/Disable

+SKIP               		3 bits

+

+;==============================================================================

+; Block 13 - Driver Persistence Algorithm

+;------------------------------------------------------------------------------

+

+SKIP                  3 bytes        ; Skip block ID and size

+

+$Driver_Persist_Hotkey          1 bit

+$Driver_Persist_Lid_Switch    1 bit

+$Driver_Persist_PM          1 bit

+$PersistHotkeyRestoreCloneMDS     1 bit

+$PersistHotkeyRestoreRefreshrate 1 bit

+$PersistHotkeyRestorePipe    1 bit

+$PersistHotkeyRestoreMode    1 bit

+$PersistEDIDRestoreMode        1 bit

+$PersistHotPlugRestoreMode    1 bit

+$Driver_Persist_Docking        1 bit

+SKIP                   6 bits

+ALIGN

+$PersistMaxConfig        1 byte

+

+;==============================================================================

+; Block 16 - VBIOS/Driver Toggle list, capabilities tables

+;------------------------------------------------------------------------------

+

+SKIP        		     3 bytes     ; Skip block ID and size

+SKIP					 3 bytes	 ; Skip number of entries and entry size

+$Toggle_List1            48 bytes    ; Toggle list 1

+SKIP					 3 bytes	 ; Skip number of entries and entry size

+$Toggle_List2            24 bytes    ; Toggle list 2

+SKIP					 3 bytes	 ; Skip number of entries and entry size

+$Toggle_List3            24 bytes    ; Toggle list 3

+SKIP				 	 3 bytes	 ; Skip number of entries and entry size

+$Toggle_List4            24 bytes    ; Toggle list 4

+ALIGN

+

+;==============================================================================

+; Block 17 - Test Feature

+;------------------------------------------------------------------------------

+

+SKIP            3 bytes        ; Skip block ID and size

+

+$SV_Dis_Arbiter        1 bit        ; Disable VGA fast arbiter

+$SV_Setmode_No_DVO    1 bit        ; Do Setmode without reprogramming DVO

+$SV_Special_GMBus    1 bit        ; Special GMBus support

+$SV_Wait_Timeout_Hang    1 bit

+SKIP            4 bits

+ALIGN

+SKIP            7 bytes        ; Skip reserved space

+

+

+;==============================================================================

+; Block 18 - Driver Rotation Configuration

+;------------------------------------------------------------------------------

+

+SKIP            				3 bytes      ; Skip block ID and size

+$Rotation_Support_Enable        1 bit        ; Driver Rotation Feature Support bit

+SKIP           		 			7 bits        

+$Rot_Flags        				1 byte

+SKIP            				10 bytes 

+

+

+;==============================================================================

+; Block 19 - Removed Display Configurations

+;------------------------------------------------------------------------------

+

+SKIP           			3  bytes        ; Skip block ID and size

+SKIP            		2  bytes        ; Table Row/Size Data

+$Dev_Removed_Table		30  bytes       ; Removed displays table

+

+;==============================================================================

+; Block 20 - OEM Customizable Modes

+;------------------------------------------------------------------------------

+

+SKIP            3  bytes        ; Skip ID

+SKIP            2  bytes        ; Table Row/Size Data

+

+$OEM_Mode_Flags1    1 byte

+$OEM_Display_Flags1    1 byte

+$OEM_Mode_X1        2 bytes

+$OEM_Mode_Y1        2 bytes

+$OEM_Mode_Color1    1 byte

+$OEM_Mode_RRate1    1 byte

+$OEM_Mode_DTD1        18 bytes

+

+$OEM_Mode_Flags2    1 byte

+$OEM_Display_Flags2    1 byte

+$OEM_Mode_X2        2 bytes

+$OEM_Mode_Y2        2 bytes

+$OEM_Mode_Color2    1 byte

+$OEM_Mode_RRate2    1 byte

+$OEM_Mode_DTD2        18 bytes

+

+$OEM_Mode_Flags3    1 byte

+$OEM_Display_Flags3    1 byte

+$OEM_Mode_X3        2 bytes

+$OEM_Mode_Y3        2 bytes

+$OEM_Mode_Color3    1 byte

+$OEM_Mode_RRate3    1 byte

+$OEM_Mode_DTD3        18 bytes

+

+$OEM_Mode_Flags4    1 byte

+$OEM_Display_Flags4    1 byte

+$OEM_Mode_X4        2 bytes

+$OEM_Mode_Y4        2 bytes

+$OEM_Mode_Color4    1 byte

+$OEM_Mode_RRate4    1 byte

+$OEM_Mode_DTD4        18 bytes

+

+$OEM_Mode_Flags5    1 byte

+$OEM_Display_Flags5    1 byte

+$OEM_Mode_X5        2 bytes

+$OEM_Mode_Y5        2 bytes

+$OEM_Mode_Color5    1 byte

+$OEM_Mode_RRate5    1 byte

+$OEM_Mode_DTD5        18 bytes

+

+$OEM_Mode_Flags6    1 byte

+$OEM_Display_Flags6    1 byte

+$OEM_Mode_X6        2 bytes

+$OEM_Mode_Y6        2 bytes

+$OEM_Mode_Color6    1 byte

+$OEM_Mode_RRate6    1 byte

+$OEM_Mode_DTD6        18 bytes

+

+;==============================================================================

+; Block 26 - TV Options

+;------------------------------------------------------------------------------

+

+SKIP			3  bytes	; Skip ID and size

+$Under_Over_Scan_Via_YPrPb 2 bits	; Underscan/overscan for HDTV via YPrPb

+SKIP			10 bits

+$Under_Over_Scan_Via_DVI 2 bits		; Underscan/overscan for HDTV via DVI

+$Add_Overscan_Mode 	1 bit		; Add modes to avoid overscan issue

+$D_Connector		1 bit		; D-Connector Support

+ALIGN

+      

+;==============================================================================

+; Block #27 - eDP Power Sequencing

+;------------------------------------------------------------------------------

+SKIP            3 bytes        ; Skip block ID and size

+

+	; Panel#1 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_01				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_01		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_01	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_01		2 bytes

+$eDP_PowerCycle_Delay_01 				2 bytes

+

+	; Panel#2 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_02				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_02		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_02	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_02		2 bytes

+$eDP_PowerCycle_Delay_02 				2 bytes

+

+	; Panel#3 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_03				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_03		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_03	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_03		2 bytes

+$eDP_PowerCycle_Delay_03 				2 bytes

+

+	; Panel#4 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_04				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_04		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_04	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_04		2 bytes

+$eDP_PowerCycle_Delay_04 				2 bytes

+

+	; Panel#5 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_05				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_05		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_05	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_05		2 bytes

+$eDP_PowerCycle_Delay_05 				2 bytes

+

+	; Panel#6 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_06				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_06		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_06	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_06		2 bytes

+$eDP_PowerCycle_Delay_06 				2 bytes

+

+	; Panel#7 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_07				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_07		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_07	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_07		2 bytes

+$eDP_PowerCycle_Delay_07 				2 bytes

+

+	; Panel#8 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_08				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_08		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_08	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_08		2 bytes

+$eDP_PowerCycle_Delay_08 				2 bytes

+

+	; Panel#9 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_09				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_09		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_09	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_09		2 bytes

+$eDP_PowerCycle_Delay_09				2 bytes

+

+	; Panel#10 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_10				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_10		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_10	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_10		2 bytes

+$eDP_PowerCycle_Delay_10 				2 bytes

+

+	; Panel#11 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_11				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_11		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_11	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_11		2 bytes

+$eDP_PowerCycle_Delay_11 				2 bytes

+

+	; Panel#12 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_12				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_12		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_12	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_12		2 bytes

+$eDP_PowerCycle_Delay_12 				2 bytes

+

+	; Panel#13 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_13				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_13		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_13	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_13		2 bytes

+$eDP_PowerCycle_Delay_13 				2 bytes

+

+	; Panel#14 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_14				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_14		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_14	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_14		2 bytes

+$eDP_PowerCycle_Delay_14 				2 bytes

+

+	; Panel#15 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_15				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_15		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_15	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_15		2 bytes

+$eDP_PowerCycle_Delay_15 				2 bytes

+

+	; Panel#16 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_16				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_16		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_16	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_16		2 bytes

+$eDP_PowerCycle_Delay_16 				2 bytes

+

+$eDP_Panel_Color_Depth_01    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_02    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_03    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_04    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_05    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_06    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_07    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_08    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_09    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_10    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_11    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_12    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_13    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_14    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_15    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_16    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+

+$eDP_Link_DataRate_01        4 bits    ; Panel #1 Link Data Rate

+$eDP_Link_LaneCount_01       4 bits    ; Panel #1 Link Lane Count

+$eDP_Link_PreEmp_Level_01    4 bits    ; Panel #1 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_01    4 bits    ; Panel #1 Link Voltage Swing Level

+

+$eDP_Link_DataRate_02        4 bits    ; Panel #2 Link Data Rate

+$eDP_Link_LaneCount_02       4 bits    ; Panel #2 Link Lane Count

+$eDP_Link_PreEmp_Level_02    4 bits    ; Panel #2 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_02    4 bits    ; Panel #2 Link Voltage Swing Level

+

+$eDP_Link_DataRate_03        4 bits    ; Panel #3 Link Data Rate

+$eDP_Link_LaneCount_03       4 bits    ; Panel #3 Link Lane Count

+$eDP_Link_PreEmp_Level_03    4 bits    ; Panel #3 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_03    4 bits    ; Panel #3 Link Voltage Swing Level

+

+$eDP_Link_DataRate_04        4 bits    ; Panel #4 Link Data Rate    

+$eDP_Link_LaneCount_04       4 bits     ; Panel #4 Link Lane Count    

+$eDP_Link_PreEmp_Level_04    4 bits    ; Panel #4 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_04    4 bits    ; Panel #4 Link Voltage Swing Level

+

+$eDP_Link_DataRate_05        4 bits    ; Panel #5 Link Data Rate

+$eDP_Link_LaneCount_05       4 bits    ; Panel #5 Link Lane Count

+$eDP_Link_PreEmp_Level_05    4 bits    ; Panel #5 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_05    4 bits    ; Panel #5 Link Voltage Swing Level

+

+$eDP_Link_DataRate_06        4 bits    ; Panel #6 Link Data Rate

+$eDP_Link_LaneCount_06       4 bits    ; Panel #6 Link Lane Count

+$eDP_Link_PreEmp_Level_06    4 bits    ; Panel #6 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_06    4 bits    ; Panel #6 Link Voltage Swing Level

+

+$eDP_Link_DataRate_07        4 bits    ; Panel #7 Link Data Rate

+$eDP_Link_LaneCount_07       4 bits    ; Panel #7 Link Lane Count

+$eDP_Link_PreEmp_Level_07    4 bits    ; Panel #7 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_07    4 bits    ; Panel #7 Link Voltage Swing Level

+

+$eDP_Link_DataRate_08        4 bits    ; Panel #8 Link Data Rate

+$eDP_Link_LaneCount_08       4 bits    ; Panel #8 Link Lane Count

+$eDP_Link_PreEmp_Level_08    4 bits    ; Panel #8 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_08    4 bits    ; Panel #8 Link Voltage Swing Level

+

+$eDP_Link_DataRate_09        4 bits    ; Panel #9 Link Data Rate

+$eDP_Link_LaneCount_09       4 bits    ; Panel #9 Link Lane Count

+$eDP_Link_PreEmp_Level_09    4 bits    ; Panel #9 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_09    4 bits    ; Panel #9 Link Voltage Swing Level

+

+$eDP_Link_DataRate_10        4 bits    ; Panel #10 Link Data Rate

+$eDP_Link_LaneCount_10       4 bits    ; Panel #10 Link Lane Count

+$eDP_Link_PreEmp_Level_10    4 bits    ; Panel #10 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_10    4 bits    ; Panel #10 Link Voltage Swing Level

+

+$eDP_Link_DataRate_11        4 bits    ; Panel #11 Link Data Rate

+$eDP_Link_LaneCount_11       4 bits    ; Panel #11 Link Lane Count

+$eDP_Link_PreEmp_Level_11    4 bits    ; Panel #11 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_11    4 bits    ; Panel #11 Link Voltage Swing Level

+

+$eDP_Link_DataRate_12        4 bits    ; Panel #12 Link Data Rate

+$eDP_Link_LaneCount_12       4 bits    ; Panel #12 Link Lane Count

+$eDP_Link_PreEmp_Level_12    4 bits    ; Panel #12 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_12    4 bits    ; Panel #12 Link Voltage Swing Level

+

+$eDP_Link_DataRate_13        4 bits    ; Panel #13 Link Data Rate

+$eDP_Link_LaneCount_13       4 bits    ; Panel #13 Link Lane Count

+$eDP_Link_PreEmp_Level_13    4 bits    ; Panel #13 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_13    4 bits    ; Panel #13 Link Voltage Swing Level

+

+$eDP_Link_DataRate_14        4 bits    ; Panel #14 Link Data Rate

+$eDP_Link_LaneCount_14       4 bits    ; Panel #14 Link Lane Count

+$eDP_Link_PreEmp_Level_14    4 bits    ; Panel #14 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_14    4 bits    ; Panel #14 Link Voltage Swing Level

+

+$eDP_Link_DataRate_15        4 bits    ; Panel #15 Link Data Rate

+$eDP_Link_LaneCount_15       4 bits    ; Panel #15 Link Lane Count

+$eDP_Link_PreEmp_Level_15    4 bits    ; Panel #15 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_15    4 bits    ; Panel #15 Link Voltage Swing Level

+

+$eDP_Link_DataRate_16        4 bits    ; Panel #16 Link Data Rate

+$eDP_Link_LaneCount_16       4 bits    ; Panel #16 Link Lane Count

+$eDP_Link_PreEmp_Level_16    4 bits    ; Panel #16 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_16    4 bits    ; Panel #16 Link Voltage Swing Level

+

+$eDP_sDRRS_MSA_Delay_01        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_02        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_03        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_04        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_05        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_06        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_07        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_08        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_09        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_10        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_11        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_12        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_13        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_14        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_15        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_16        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+

+SKIP            2 bytes        ; S3D Feature

+$eDP_T3_Optimization_01	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #01

+$eDP_T3_Optimization_02	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #02

+$eDP_T3_Optimization_03	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #03

+$eDP_T3_Optimization_04	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #04

+$eDP_T3_Optimization_05	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #05

+$eDP_T3_Optimization_06	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #06

+$eDP_T3_Optimization_07	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #07

+$eDP_T3_Optimization_08	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #08

+$eDP_T3_Optimization_09	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #09

+$eDP_T3_Optimization_10	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #10

+$eDP_T3_Optimization_11	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #11

+$eDP_T3_Optimization_12	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #12

+$eDP_T3_Optimization_13	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #13

+$eDP_T3_Optimization_14	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #14

+$eDP_T3_Optimization_15	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #15

+$eDP_T3_Optimization_16	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #16

+

+$eDP_VswingPreEmph_1       4 bits; eDp selects Vswing Preemph table for panel #1

+$eDP_VswingPreEmph_2       4 bits; eDp selects Vswing Preemph table for panel #2

+$eDP_VswingPreEmph_3       4 bits; eDp selects Vswing Preemph table for panel #3

+$eDP_VswingPreEmph_4       4 bits; eDp selects Vswing Preemph table for panel #4

+$eDP_VswingPreEmph_5       4 bits; eDp selects Vswing Preemph table for panel #5

+$eDP_VswingPreEmph_6       4 bits; eDp selects Vswing Preemph table for panel #6

+$eDP_VswingPreEmph_7       4 bits; eDp selects Vswing Preemph table for panel #7

+$eDP_VswingPreEmph_8       4 bits; eDp selects Vswing Preemph table for panel #8

+$eDP_VswingPreEmph_9       4 bits; eDp selects Vswing Preemph table for panel #9

+$eDP_VswingPreEmph_10       4 bits; eDp selects Vswing Preemph table for panel #10

+$eDP_VswingPreEmph_11       4 bits; eDp selects Vswing Preemph table for panel #11

+$eDP_VswingPreEmph_12       4 bits; eDp selects Vswing Preemph table for panel #12

+$eDP_VswingPreEmph_13       4 bits; eDp selects Vswing Preemph table for panel #13

+$eDP_VswingPreEmph_14       4 bits; eDp selects Vswing Preemph table for panel #14

+$eDP_VswingPreEmph_15       4 bits; eDp selects Vswing Preemph table for panel #15

+$eDP_VswingPreEmph_16       4 bits; eDp selects Vswing Preemph table for panel #16

+

+$Fast_Link_Training_Supported_01 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #1

+$Fast_Link_Training_Supported_02 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #2 

+$Fast_Link_Training_Supported_03 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #3

+$Fast_Link_Training_Supported_04 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #4

+$Fast_Link_Training_Supported_05 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #5

+$Fast_Link_Training_Supported_06 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #6

+$Fast_Link_Training_Supported_07 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #7

+$Fast_Link_Training_Supported_08 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #8

+$Fast_Link_Training_Supported_09 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #9

+$Fast_Link_Training_Supported_10 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #10

+$Fast_Link_Training_Supported_11 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #11

+$Fast_Link_Training_Supported_12    1 bit  ; eDP Selects Fast Link Training if supported for Panel #12

+$Fast_Link_Training_Supported_13 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #13

+$Fast_Link_Training_Supported_14 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #14

+$Fast_Link_Training_Supported_15 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #15

+$Fast_Link_Training_Supported_16 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #16

+

+SKIP 	2 bytes ;Skip Enable Power State at DPCD 600h

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_01 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#1

+$eDP_Bklt_Disable_To_PwmOff_Delay_01	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#1

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_02 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#2

+$eDP_Bklt_Disable_To_PwmOff_Delay_02	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#2

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_03 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#3

+$eDP_Bklt_Disable_To_PwmOff_Delay_03	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#3

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_04 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#4

+$eDP_Bklt_Disable_To_PwmOff_Delay_04	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#4

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_05 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#5

+$eDP_Bklt_Disable_To_PwmOff_Delay_05	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#5

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_06 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#6

+$eDP_Bklt_Disable_To_PwmOff_Delay_06	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#6

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_07 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#7

+$eDP_Bklt_Disable_To_PwmOff_Delay_07	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#7

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_08 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#8

+$eDP_Bklt_Disable_To_PwmOff_Delay_08	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#8

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_09 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#9

+$eDP_Bklt_Disable_To_PwmOff_Delay_09	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#9

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_10 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#10

+$eDP_Bklt_Disable_To_PwmOff_Delay_10	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#10

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_11 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#11

+$eDP_Bklt_Disable_To_PwmOff_Delay_11	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#11

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_12 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#12

+$eDP_Bklt_Disable_To_PwmOff_Delay_12	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#12

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_13 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#13

+$eDP_Bklt_Disable_To_PwmOff_Delay_13	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#13

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_14 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#14

+$eDP_Bklt_Disable_To_PwmOff_Delay_14	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#14

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_15 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#15

+$eDP_Bklt_Disable_To_PwmOff_Delay_15	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#15

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_16 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#16

+$eDP_Bklt_Disable_To_PwmOff_Delay_16	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#16

+

+;==============================================================================

+; Block 28 - EDID-less EFP support - Panel data

+;------------------------------------------------------------------------------

+SKIP			3 bytes		; Skip block ID and size

+

+				; Panel for Device 1

+$EFP1_DTD		18 bytes	; DTD for Device 1 DP/DVI panel

+				; Panel for Device 2

+$EFP2_DTD		18 bytes	; DTD for Device 2 DP/DVI panel

+				; Panel for Device 3

+$EFP3_DTD		18 bytes	; DTD for Device 3 DP/DVI panel

+

+

+;==============================================================================

+; Block 40 - Start of LVDS BMP Structure Definition

+;------------------------------------------------------------------------------

+

+SKIP            3 bytes        ; Skip block ID and size

+

+$bmp_Panel_type        1 byte        ; Flat panel type

+SKIP            1 byte        ; Obsoleted

+SKIP            6 bits

+$bmp_Panel_EDID        1 bit        ; LVDS panel EDID enable/disable bit

+SKIP            1 bit

+SKIP            1 byte

+

+        ; INT_LVDS_Panel_Channel_Bits

+    

+$Int_LVDS_Panel_1_Channel_Type    2 bits    ; Bits [2:3] = Panel #1

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_2_Channel_Type    2 bits    ; Bits [2:3] = Panel #2

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_3_Channel_Type    2 bits    ; Bits [2:3] = Panel #3

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_4_Channel_Type    2 bits    ; Bits [2:3] = Panel #4

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_5_Channel_Type    2 bits    ; Bits [2:3] = Panel #5

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_6_Channel_Type    2 bits    ; Bits [2:3] = Panel #6

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_7_Channel_Type    2 bits    ; Bits [2:3] = Panel #7

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_8_Channel_Type    2 bits    ; Bits [2:3] = Panel #8

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_9_Channel_Type    2 bits    ; Bits [2:3] = Panel #9

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_10_Channel_Type    2 bits    ; Bits [2:3] = Panel #10

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_11_Channel_Type    2 bits    ; Bits [2:3] = Panel #11

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_12_Channel_Type    2 bits    ; Bits [2:3] = Panel #12

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_13_Channel_Type    2 bits    ; Bits [2:3] = Panel #13

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_14_Channel_Type    2 bits    ; Bits [2:3] = Panel #14

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_15_Channel_Type    2 bits    ; Bits [2:3] = Panel #15

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_16_Channel_Type    2 bits    ; Bits [2:3] = Panel #16

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+      

+                    ; LVDS Spread Spectrum Clock

+                    ; Enabel/Disable SSC

+$Enable_SSC01        1 bit        ; Panel #01, 0=No, 1=Yes

+$Enable_SSC02        1 bit        ; Panel #02, 0=No, 1=Yes

+$Enable_SSC03        1 bit        ; Panel #03, 0=No, 1=Yes

+$Enable_SSC04        1 bit        ; Panel #04, 0=No, 1=Yes

+$Enable_SSC05        1 bit        ; Panel #05, 0=No, 1=Yes

+$Enable_SSC06        1 bit        ; Panel #06, 0=No, 1=Yes

+$Enable_SSC07        1 bit        ; Panel #07, 0=No, 1=Yes

+$Enable_SSC08        1 bit        ; Panel #08, 0=No, 1=Yes

+$Enable_SSC09        1 bit        ; Panel #09, 0=No, 1=Yes

+$Enable_SSC10        1 bit        ; Panel #10, 0=No, 1=Yes

+$Enable_SSC11        1 bit        ; Panel #11, 0=No, 1=Yes

+$Enable_SSC12        1 bit        ; Panel #12, 0=No, 1=Yes

+$Enable_SSC13        1 bit        ; Panel #13, 0=No, 1=Yes

+$Enable_SSC14        1 bit        ; Panel #14, 0=No, 1=Yes

+$Enable_SSC15        1 bit        ; Panel #15, 0=No, 1=Yes

+$Enable_SSC16        1 bit        ; Panel #16, 0=No, 1=Yes

+

+                    ; LVDS Spread Spectrum Clock Frequency

+                    ; SSC Frequency

+$SSC_Freq01        1 bit        ; Panel #01, 0=48MHz, 1=66MHz

+$SSC_Freq02        1 bit        ; Panel #02, 0=48MHz, 1=66MHz

+$SSC_Freq03        1 bit        ; Panel #03, 0=48MHz, 1=66MHz

+$SSC_Freq04        1 bit        ; Panel #04, 0=48MHz, 1=66MHz

+$SSC_Freq05        1 bit        ; Panel #05, 0=48MHz, 1=66MHz

+$SSC_Freq06        1 bit        ; Panel #06, 0=48MHz, 1=66MHz

+$SSC_Freq07        1 bit        ; Panel #07, 0=48MHz, 1=66MHz

+$SSC_Freq08        1 bit        ; Panel #08, 0=48MHz, 1=66MHz

+$SSC_Freq09        1 bit        ; Panel #09, 0=48MHz, 1=66MHz

+$SSC_Freq10        1 bit        ; Panel #10, 0=48MHz, 1=66MHz

+$SSC_Freq11        1 bit        ; Panel #11, 0=48MHz, 1=66MHz

+$SSC_Freq12        1 bit        ; Panel #12, 0=48MHz, 1=66MHz

+$SSC_Freq13        1 bit        ; Panel #13, 0=48MHz, 1=66MHz

+$SSC_Freq14        1 bit        ; Panel #14, 0=48MHz, 1=66MHz

+$SSC_Freq15        1 bit        ; Panel #15, 0=48MHz, 1=66MHz

+$SSC_Freq16        1 bit        ; Panel #16, 0=48MHz, 1=66MHz

+

+                    ; Disable SSC in Dual Display Twin

+$Disable_SSC_DDT01    1 bit        ; panel #01, 0=Disable, 1=Enable

+$Disable_SSC_DDT02    1 bit        ; panel #02, 0=Disable, 1=Enable

+$Disable_SSC_DDT03    1 bit        ; panel #03, 0=Disable, 1=Enable

+$Disable_SSC_DDT04    1 bit        ; panel #04, 0=Disable, 1=Enable

+$Disable_SSC_DDT05    1 bit        ; panel #05, 0=Disable, 1=Enable

+$Disable_SSC_DDT06    1 bit        ; panel #06, 0=Disable, 1=Enable

+$Disable_SSC_DDT07    1 bit        ; panel #07, 0=Disable, 1=Enable

+$Disable_SSC_DDT08    1 bit        ; panel #08, 0=Disable, 1=Enable

+$Disable_SSC_DDT09    1 bit        ; panel #09, 0=Disable, 1=Enable

+$Disable_SSC_DDT10    1 bit        ; panel #10, 0=Disable, 1=Enable

+$Disable_SSC_DDT11    1 bit        ; panel #11, 0=Disable, 1=Enable

+$Disable_SSC_DDT12    1 bit        ; panel #12, 0=Disable, 1=Enable

+$Disable_SSC_DDT13    1 bit        ; panel #13, 0=Disable, 1=Enable

+$Disable_SSC_DDT14    1 bit        ; panel #14, 0=Disable, 1=Enable

+$Disable_SSC_DDT15    1 bit        ; panel #15, 0=Disable, 1=Enable

+$Disable_SSC_DDT16    1 bit        ; panel #16, 0=Disable, 1=Enable

+      

+$INT_Panel_Color_Depth01    1 bit        ; Panel #01, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth02    1 bit        ; Panel #02, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth03    1 bit        ; Panel #03, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth04    1 bit        ; Panel #04, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth05    1 bit        ; Panel #05, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth06    1 bit        ; Panel #06, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth07    1 bit        ; Panel #07, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth08    1 bit        ; Panel #08, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth09    1 bit        ; Panel #09, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth10    1 bit        ; Panel #10, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth11    1 bit        ; Panel #11, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth12    1 bit        ; Panel #12, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth13    1 bit        ; Panel #13, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth14    1 bit        ; Panel #14, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth15    1 bit        ; Panel #15, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth16    1 bit        ; Panel #16, 0 = 18bpps, 1 = 24bpps

+

+$DPS_Panel_Type_01        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_02        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_03        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_04        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_05        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_06        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_07        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_08        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_09        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_10        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_11        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_12        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_13        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_14        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_15        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_16        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+     

+$Blt_Control_01        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_02        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_03        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_04        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_05        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_06        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_07        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_08        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_09        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_10        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_11        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_12        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_13        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_14        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_15        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_16        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+

+

+;==============================================================================

+; Block 41 - Flat Panel Data Tables Pointers

+;------------------------------------------------------------------------------

+

+SKIP			3 bytes		; SKIP block ID and size

+SKIP			1 byte		; Skip entries number byte

+

+$LVDS_Tbl_Ptr_01	2 bytes

+$LVDS_Tbl_Size_01	1 byte

+$LVDS_Tbl_01,		$LVDS_Tbl_Ptr_01, $LVDS_Tbl_Size_01, Offset 4 bytes

+$DVO_Tbl_Ptr_01		2 bytes

+$DVO_Tbl_Size_01	1 byte

+$DVO_Tbl_01,		$DVO_Tbl_Ptr_01, $DVO_Tbl_Size_01, Offset 0 byte

+$LVDS_PnP_ID_Ptr_01	2 bytes

+$LVDS_PnP_ID_Size_01	1 byte

+$LVDS_PnP_ID_01,	$LVDS_PnP_ID_Ptr_01, $LVDS_PnP_ID_Size_01, Offset 0 byte

+

+$LVDS_Tbl_Ptr_02	2 bytes

+$LVDS_Tbl_Size_02	1 byte

+$LVDS_Tbl_02,		$LVDS_Tbl_Ptr_02, $LVDS_Tbl_Size_02, Offset 4 bytes

+$DVO_Tbl_Ptr_02		2 bytes

+$DVO_Tbl_Size_02	1 byte

+$DVO_Tbl_02,		$DVO_Tbl_Ptr_02, $DVO_Tbl_Size_02, Offset 0 byte

+$LVDS_PnP_ID_Ptr_02	2 bytes

+$LVDS_PnP_ID_Size_02	1 byte

+$LVDS_PnP_ID_02,	$LVDS_PnP_ID_Ptr_02, $LVDS_PnP_ID_Size_02, Offset 0 byte

+

+$LVDS_Tbl_Ptr_03	2 bytes

+$LVDS_Tbl_Size_03	1 byte

+$LVDS_Tbl_03,		$LVDS_Tbl_Ptr_03, $LVDS_Tbl_Size_03, Offset 4 bytes

+$DVO_Tbl_Ptr_03		2 bytes

+$DVO_Tbl_Size_03	1 byte

+$DVO_Tbl_03,		$DVO_Tbl_Ptr_03, $DVO_Tbl_Size_03, Offset 0 byte

+$LVDS_PnP_ID_Ptr_03	2 bytes

+$LVDS_PnP_ID_Size_03	1 byte

+$LVDS_PnP_ID_03,	$LVDS_PnP_ID_Ptr_03, $LVDS_PnP_ID_Size_03, Offset 0 byte

+

+$LVDS_Tbl_Ptr_04	2 bytes

+$LVDS_Tbl_Size_04	1 byte

+$LVDS_Tbl_04,		$LVDS_Tbl_Ptr_04, $LVDS_Tbl_Size_04, Offset 4 bytes

+$DVO_Tbl_Ptr_04		2 bytes

+$DVO_Tbl_Size_04	1 byte

+$DVO_Tbl_04,		$DVO_Tbl_Ptr_04, $DVO_Tbl_Size_04, Offset 0 byte

+$LVDS_PnP_ID_Ptr_04	2 bytes

+$LVDS_PnP_ID_Size_04	1 byte

+$LVDS_PnP_ID_04,	$LVDS_PnP_ID_Ptr_04, $LVDS_PnP_ID_Size_04, Offset 0 byte

+

+$LVDS_Tbl_Ptr_05	2 bytes

+$LVDS_Tbl_Size_05	1 byte

+$LVDS_Tbl_05,		$LVDS_Tbl_Ptr_05, $LVDS_Tbl_Size_05, Offset 4 bytes

+$DVO_Tbl_Ptr_05		2 bytes

+$DVO_Tbl_Size_05	1 byte

+$DVO_Tbl_05,		$DVO_Tbl_Ptr_05, $DVO_Tbl_Size_05, Offset 0 byte

+$LVDS_PnP_ID_Ptr_05	2 bytes

+$LVDS_PnP_ID_Size_05	1 byte

+$LVDS_PnP_ID_05,	$LVDS_PnP_ID_Ptr_05, $LVDS_PnP_ID_Size_05, Offset 0 byte

+

+$LVDS_Tbl_Ptr_06	2 bytes

+$LVDS_Tbl_Size_06	1 byte

+$LVDS_Tbl_06,		$LVDS_Tbl_Ptr_06, $LVDS_Tbl_Size_06, Offset 4 bytes

+$DVO_Tbl_Ptr_06		2 bytes

+$DVO_Tbl_Size_06	1 byte

+$DVO_Tbl_06,		$DVO_Tbl_Ptr_06, $DVO_Tbl_Size_06, Offset 0 byte

+$LVDS_PnP_ID_Ptr_06	2 bytes

+$LVDS_PnP_ID_Size_06	1 byte

+$LVDS_PnP_ID_06,	$LVDS_PnP_ID_Ptr_06, $LVDS_PnP_ID_Size_06, Offset 0 byte

+

+$LVDS_Tbl_Ptr_07	2 bytes

+$LVDS_Tbl_Size_07	1 byte

+$LVDS_Tbl_07,		$LVDS_Tbl_Ptr_07, $LVDS_Tbl_Size_07, Offset 4 bytes

+$DVO_Tbl_Ptr_07		2 bytes

+$DVO_Tbl_Size_07	1 byte

+$DVO_Tbl_07,		$DVO_Tbl_Ptr_07, $DVO_Tbl_Size_07, Offset 0 byte

+$LVDS_PnP_ID_Ptr_07	2 bytes

+$LVDS_PnP_ID_Size_07	1 byte

+$LVDS_PnP_ID_07,	$LVDS_PnP_ID_Ptr_07, $LVDS_PnP_ID_Size_07, Offset 0 byte

+

+$LVDS_Tbl_Ptr_08	2 bytes

+$LVDS_Tbl_Size_08	1 byte

+$LVDS_Tbl_08,		$LVDS_Tbl_Ptr_08, $LVDS_Tbl_Size_08, Offset 4 bytes

+$DVO_Tbl_Ptr_08		2 bytes

+$DVO_Tbl_Size_08	1 byte

+$DVO_Tbl_08,		$DVO_Tbl_Ptr_08, $DVO_Tbl_Size_08, Offset 0 byte

+$LVDS_PnP_ID_Ptr_08	2 bytes

+$LVDS_PnP_ID_Size_08	1 byte

+$LVDS_PnP_ID_08,	$LVDS_PnP_ID_Ptr_08, $LVDS_PnP_ID_Size_08, Offset 0 byte

+

+$LVDS_Tbl_Ptr_09	2 bytes

+$LVDS_Tbl_Size_09	1 byte

+$LVDS_Tbl_09,		$LVDS_Tbl_Ptr_09, $LVDS_Tbl_Size_09, Offset 4 bytes

+$DVO_Tbl_Ptr_09		2 bytes

+$DVO_Tbl_Size_09	1 byte

+$DVO_Tbl_09,		$DVO_Tbl_Ptr_09, $DVO_Tbl_Size_09, Offset 0 byte

+$LVDS_PnP_ID_Ptr_09	2 bytes

+$LVDS_PnP_ID_Size_09	1 byte

+$LVDS_PnP_ID_09,	$LVDS_PnP_ID_Ptr_09, $LVDS_PnP_ID_Size_09, Offset 0 byte

+

+$LVDS_Tbl_Ptr_10	2 bytes

+$LVDS_Tbl_Size_10	1 byte

+$LVDS_Tbl_10,		$LVDS_Tbl_Ptr_10, $LVDS_Tbl_Size_10, Offset 4 bytes

+$DVO_Tbl_Ptr_10		2 bytes

+$DVO_Tbl_Size_10	1 byte

+$DVO_Tbl_10,		$DVO_Tbl_Ptr_10, $DVO_Tbl_Size_10, Offset 0 byte

+$LVDS_PnP_ID_Ptr_10	2 bytes

+$LVDS_PnP_ID_Size_10	1 byte

+$LVDS_PnP_ID_10,	$LVDS_PnP_ID_Ptr_10, $LVDS_PnP_ID_Size_10, Offset 0 byte

+

+$LVDS_Tbl_Ptr_11	2 bytes

+$LVDS_Tbl_Size_11	1 byte

+$LVDS_Tbl_11,		$LVDS_Tbl_Ptr_11, $LVDS_Tbl_Size_11, Offset 4 bytes

+$DVO_Tbl_Ptr_11		2 bytes

+$DVO_Tbl_Size_11	1 byte

+$DVO_Tbl_11,		$DVO_Tbl_Ptr_11, $DVO_Tbl_Size_11, Offset 0 byte

+$LVDS_PnP_ID_Ptr_11	2 bytes

+$LVDS_PnP_ID_Size_11	1 byte

+$LVDS_PnP_ID_11,	$LVDS_PnP_ID_Ptr_11, $LVDS_PnP_ID_Size_11, Offset 0 byte

+

+$LVDS_Tbl_Ptr_12	2 bytes

+$LVDS_Tbl_Size_12	1 byte

+$LVDS_Tbl_12,		$LVDS_Tbl_Ptr_12, $LVDS_Tbl_Size_12, Offset 4 bytes

+$DVO_Tbl_Ptr_12		2 bytes

+$DVO_Tbl_Size_12	1 byte

+$DVO_Tbl_12,		$DVO_Tbl_Ptr_12, $DVO_Tbl_Size_12, Offset 0 byte

+$LVDS_PnP_ID_Ptr_12	2 bytes

+$LVDS_PnP_ID_Size_12	1 byte

+$LVDS_PnP_ID_12,	$LVDS_PnP_ID_Ptr_12, $LVDS_PnP_ID_Size_12, Offset 0 byte

+

+$LVDS_Tbl_Ptr_13	2 bytes

+$LVDS_Tbl_Size_13	1 byte

+$LVDS_Tbl_13,		$LVDS_Tbl_Ptr_13, $LVDS_Tbl_Size_13, Offset 4 bytes

+$DVO_Tbl_Ptr_13		2 bytes

+$DVO_Tbl_Size_13	1 byte

+$DVO_Tbl_13,		$DVO_Tbl_Ptr_13, $DVO_Tbl_Size_13, Offset 0 byte

+$LVDS_PnP_ID_Ptr_13	2 bytes

+$LVDS_PnP_ID_Size_13	1 byte

+$LVDS_PnP_ID_13,	$LVDS_PnP_ID_Ptr_13, $LVDS_PnP_ID_Size_13, Offset 0 byte

+

+$LVDS_Tbl_Ptr_14	2 bytes

+$LVDS_Tbl_Size_14	1 byte

+$LVDS_Tbl_14,		$LVDS_Tbl_Ptr_14, $LVDS_Tbl_Size_14, Offset 4 bytes

+$DVO_Tbl_Ptr_14		2 bytes

+$DVO_Tbl_Size_14	1 byte

+$DVO_Tbl_14,		$DVO_Tbl_Ptr_14, $DVO_Tbl_Size_14, Offset 0 byte

+$LVDS_PnP_ID_Ptr_14	2 bytes

+$LVDS_PnP_ID_Size_14	1 byte

+$LVDS_PnP_ID_14,	$LVDS_PnP_ID_Ptr_14, $LVDS_PnP_ID_Size_14, Offset 0 byte

+

+$LVDS_Tbl_Ptr_15	2 bytes

+$LVDS_Tbl_Size_15	1 byte

+$LVDS_Tbl_15,		$LVDS_Tbl_Ptr_15, $LVDS_Tbl_Size_15, Offset 4 bytes

+$DVO_Tbl_Ptr_15		2 bytes

+$DVO_Tbl_Size_15	1 byte

+$DVO_Tbl_15,		$DVO_Tbl_Ptr_15, $DVO_Tbl_Size_15, Offset 0 byte

+$LVDS_PnP_ID_Ptr_15	2 bytes

+$LVDS_PnP_ID_Size_15	1 byte

+$LVDS_PnP_ID_15,	$LVDS_PnP_ID_Ptr_15, $LVDS_PnP_ID_Size_15, Offset 0 byte

+

+$LVDS_Tbl_Ptr_16	2 bytes

+$LVDS_Tbl_Size_16	1 byte

+$LVDS_Tbl_16,		$LVDS_Tbl_Ptr_16, $LVDS_Tbl_Size_16, Offset 4 bytes

+$DVO_Tbl_Ptr_16		2 bytes

+$DVO_Tbl_Size_16	1 byte

+$DVO_Tbl_16,		$DVO_Tbl_Ptr_16, $DVO_Tbl_Size_16, Offset 0 byte

+$LVDS_PnP_ID_Ptr_16	2 bytes

+$LVDS_PnP_ID_Size_16	1 byte

+$LVDS_PnP_ID_16,	$LVDS_PnP_ID_Ptr_16, $LVDS_PnP_ID_Size_16, Offset 0 byte

+

+SKIP                    2 bytes       ;LfpPanelNameTable Offset

+SKIP                    1 byte        ;LfpPanelName Length

+

+    

+

+;==============================================================================

+; Block 42 - Flat Panel Data Tables

+;------------------------------------------------------------------------------

+

+SKIP            3 bytes        ; Skip block ID and size

+

+            ; Flat Panel #1

+

+$Panel_Width_01        2 bytes        ; Panel Width

+$Panel_Height_01    2 bytes        ; Panel Height

+

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither01                1 bit    ; Panel #01, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ; address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_01        13 bits    ; Power on Backlight Enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_01                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ; address-0x6120C or 0x0C720C (for ILM) -Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_01    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_01                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM) -Panel power cycle delay and reference divider

+$PowerCycleDelay_01                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+ALIGN

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #2

+

+$Panel_Width_02        2 bytes            ; Panel Width

+$Panel_Height_02    2 bytes        ; Panel Height

+

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither02                1 bit    ; Panel #02, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_02        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_02                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_02    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_02                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_02                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #3

+

+$Panel_Width_03        2 bytes        ; Panel Width

+$Panel_Height_03    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither03                1 bit    ; Panel #03, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_03        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_03                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_03    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_03                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;aaddress-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_03                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #4

+

+$Panel_Width_04        2 bytes        ; Panel Width

+$Panel_Height_04    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither04                1 bit    ; Panel #04, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_04        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_04                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_04    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_04                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_04                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #5

+

+$Panel_Width_05        2 bytes        ; Panel Width

+$Panel_Height_05    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither05                1 bit    ; Panel #05, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_05        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_05                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_05    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_05                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_05                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP            2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #6

+

+$Panel_Width_06        2 bytes        ; Panel Width

+$Panel_Height_06    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither06                1 bit    ; Panel #06, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_06        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_06                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_06    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_06                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_06                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #7

+

+$Panel_Width_07        2 bytes        ; Panel Width

+$Panel_Height_07    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither07                1 bit    ; Panel #07, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_07        13 bits    ; Power on Backlight enable delay delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_07                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_07    13 bits    ; Backlight off delay power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_07                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_07                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #8

+

+$Panel_Width_08        2 bytes        ; Panel Width

+$Panel_Height_08    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither08                1 bit    ; Panel #08, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_08        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_08                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_08    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_08                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_08                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #9

+

+$Panel_Width_09        2 bytes        ; Panel Width

+$Panel_Height_09    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither09                1 bit    ; Panel #09, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_09        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_09                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_09    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_09                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_09                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #10

+

+$Panel_Width_10        2 bytes        ; Panel Width

+$Panel_Height_10    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither10                1 bit    ; Panel #10, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_10        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_10                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_10    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_10                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_10                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #11

+

+$Panel_Width_11        2 bytes        ; Panel Width

+$Panel_Height_11    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither11                1 bit    ; Panel #11, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_11        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_11                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_11    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_11                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_11                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #12

+

+$Panel_Width_12        2 bytes        ; Panel Width

+$Panel_Height_12    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither12                1 bit    ; Panel #12, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_12        13 bits    ; Powen on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_12                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_12    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_12                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_12                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #13

+

+$Panel_Width_13        2 bytes        ; Panel Width

+$Panel_Height_13    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither13                1 bit    ; Panel #13, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_13        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_13                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_13    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_13                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_13                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #14

+

+$Panel_Width_14        2 bytes        ; Panel Width

+$Panel_Height_14    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither14                1 bit    ; Panel #14, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_14        13 bits    ; Power on baklight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_14                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_14    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_14                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_14                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #15

+

+$Panel_Width_15        2 bytes        ; Panel Width

+$Panel_Height_15    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither15                1 bit    ; Panel #15, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_15        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_15                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_15    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_15                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_15                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #16

+

+$Panel_Width_16        2 bytes        ; Panel Width

+$Panel_Height_16    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither16                1 bit    ; Panel #16, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_16        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_16                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_16    13 bits    ; backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_16                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_16                5 bits    ; Power cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+$Panel_Name_01		13 bytes	; LFP Panel Name

+$Panel_Name_02		13 bytes	; LFP Panel Name

+$Panel_Name_03		13 bytes	; LFP Panel Name

+$Panel_Name_04		13 bytes	; LFP Panel Name

+$Panel_Name_05		13 bytes	; LFP Panel Name

+$Panel_Name_06		13 bytes	; LFP Panel Name

+$Panel_Name_07		13 bytes	; LFP Panel Name

+$Panel_Name_08		13 bytes	; LFP Panel Name

+$Panel_Name_09		13 bytes	; LFP Panel Name

+$Panel_Name_10		13 bytes	; LFP Panel Name

+$Panel_Name_11		13 bytes	; LFP Panel Name

+$Panel_Name_12		13 bytes	; LFP Panel Name

+$Panel_Name_13		13 bytes	; LFP Panel Name

+$Panel_Name_14		13 bytes	; LFP Panel Name

+$Panel_Name_15		13 bytes	; LFP Panel Name

+$Panel_Name_16		13 bytes	; LFP Panel Name

+

+$Enable_Scaling_01 		1 bit ; Scaling Enable bit for Panel#1

+$Enable_Scaling_02 		1 bit ; Scaling Enable bit for Panel#2

+$Enable_Scaling_03 		1 bit ; Scaling Enable bit for Panel#3

+$Enable_Scaling_04 		1 bit ; Scaling Enable bit for Panel#4

+$Enable_Scaling_05 		1 bit ; Scaling Enable bit for Panel#5

+$Enable_Scaling_06 		1 bit ; Scaling Enable bit for Panel#6

+$Enable_Scaling_07 		1 bit ; Scaling Enable bit for Panel#7

+$Enable_Scaling_08 		1 bit ; Scaling Enable bit for Panel#8

+$Enable_Scaling_09 		1 bit ; Scaling Enable bit for Panel#9

+$Enable_Scaling_10 		1 bit ; Scaling Enable bit for Panel#10

+$Enable_Scaling_11 		1 bit ; Scaling Enable bit for Panel#11

+$Enable_Scaling_12 		1 bit ; Scaling Enable bit for Panel#12

+$Enable_Scaling_13 		1 bit ; Scaling Enable bit for Panel#13

+$Enable_Scaling_14 		1 bit ; Scaling Enable bit for Panel#14

+$Enable_Scaling_15 		1 bit ; Scaling Enable bit for Panel#15

+$Enable_Scaling_16 		1 bit ; Scaling Enable bit for Panel#16

+

+$Seamless_DRRS_Min_RR_01 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#1

+$Seamless_DRRS_Min_RR_02 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#2

+$Seamless_DRRS_Min_RR_03 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#3

+$Seamless_DRRS_Min_RR_04 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#4

+$Seamless_DRRS_Min_RR_05 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#5

+$Seamless_DRRS_Min_RR_06 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#6

+$Seamless_DRRS_Min_RR_07 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#7

+$Seamless_DRRS_Min_RR_08 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#8

+$Seamless_DRRS_Min_RR_09 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#9

+$Seamless_DRRS_Min_RR_10 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#10

+$Seamless_DRRS_Min_RR_11 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#11

+$Seamless_DRRS_Min_RR_12 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#12

+$Seamless_DRRS_Min_RR_13 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#13

+$Seamless_DRRS_Min_RR_14 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#14

+$Seamless_DRRS_Min_RR_15 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#15

+$Seamless_DRRS_Min_RR_16 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#16

+

+;==============================================================================

+; Block 43 - BLC (Backlight Control) Support

+;------------------------------------------------------------------------------

+

+SKIP            3  bytes    ; Skip block ID and size

+SKIP            1  byte        ; Skip row size

+

+            ; Flat Panel #1

+$BLC_Inv_Type_1        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_1    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_1    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_1    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_1    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_1    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_1        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_1    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #2

+$BLC_Inv_Type_2        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_2    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_2    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_2    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_2    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_2    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_2        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_2    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #3

+$BLC_Inv_Type_3        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_3    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_3    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_3    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_3    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_3    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_3        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_3    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #4

+$BLC_Inv_Type_4        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_4    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_4    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_4    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_4    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_4    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_4        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_4    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #5

+$BLC_Inv_Type_5        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_5    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_5    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_5    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_5    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_5    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_5        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_5    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #6

+$BLC_Inv_Type_6        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_6    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_6    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_6    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_6    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_6    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_6        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_6    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #7

+$BLC_Inv_Type_7        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_7    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_7    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_7    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_7    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_7    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_7        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_7    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #8

+$BLC_Inv_Type_8        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_8    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_8    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_8    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_8    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_8    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_8        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_8    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #9

+$BLC_Inv_Type_9        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_9    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_9    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_9    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_9    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_9    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_9        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_9    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #10

+$BLC_Inv_Type_10        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_10    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_10    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_10    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_10    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_10    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_10    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_10    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #11

+$BLC_Inv_Type_11    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_11    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_11    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_11    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_11    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_11    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_11    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_11    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #12

+$BLC_Inv_Type_12    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_12    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_12    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_12    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_12    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_12    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_12    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_12    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #13

+$BLC_Inv_Type_13    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_13    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_13    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_13    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_13    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_13    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_13    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_13    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #14

+$BLC_Inv_Type_14    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_14    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_14    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_14    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_14    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_14    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_14    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_14    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #15

+$BLC_Inv_Type_15        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_15    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_15    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_15    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_15    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_15    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_15    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_15    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #16

+$BLC_Inv_Type_16    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_16    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_16    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_16    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_16    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_16    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_16    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_16    1  byte        ; I2C inverter command code

+

+$POST_BL_Brightness_01	1 byte		; Intial brightness value at POST for Flat Panel #1

+  $POST_BL_Brightness_02	1 byte		; Intial brightness value at POST for Flat Panel #2

+  $POST_BL_Brightness_03	1 byte		; Intial brightness value at POST for Flat Panel #3

+  $POST_BL_Brightness_04	1 byte		; Intial brightness value at POST for Flat Panel #4

+  $POST_BL_Brightness_05	1 byte		; Intial brightness value at POST for Flat Panel #5

+  $POST_BL_Brightness_06	1 byte		; Intial brightness value at POST for Flat Panel #6

+  $POST_BL_Brightness_07	1 byte		; Intial brightness value at POST for Flat Panel #7

+  $POST_BL_Brightness_08	1 byte		; Intial brightness value at POST for Flat Panel #8

+  $POST_BL_Brightness_09	1 byte		; Intial brightness value at POST for Flat Panel #9

+  $POST_BL_Brightness_10	1 byte		; Intial brightness value at POST for Flat Panel #10

+  $POST_BL_Brightness_11	1 byte		; Intial brightness value at POST for Flat Panel #11

+  $POST_BL_Brightness_12	1 byte		; Intial brightness value at POST for Flat Panel #12

+  $POST_BL_Brightness_13	1 byte		; Intial brightness value at POST for Flat Panel #13

+  $POST_BL_Brightness_14	1 byte		; Intial brightness value at POST for Flat Panel #14

+  $POST_BL_Brightness_15	1 byte		; Intial brightness value at POST for Flat Panel #15

+  $POST_BL_Brightness_16	1 byte		; Intial brightness value at POST for Flat Panel #16

+

+  $Lfp_Pwm_Source_Selection_01 		4 bits  ; Pwm Source Selection for Panel #1

+  $Lfp_Pwm_Controller_Selection_01  4 bits  ; Pwm Controller Selection for Panel #1

+

+  $Lfp_Pwm_Source_Selection_02 		4 bits  ; Pwm Source Selection for Panel #2

+  $Lfp_Pwm_Controller_Selection_02  4 bits  ; Pwm Controller Selection for Panel #2

+

+  $Lfp_Pwm_Source_Selection_03 		4 bits  ; Pwm Source Selection for Panel #3

+  $Lfp_Pwm_Controller_Selection_03  4 bits  ; Pwm Controller Selection for Panel #3

+  

+  $Lfp_Pwm_Source_Selection_04 		4 bits  ; Pwm Source Selection for Panel #4

+  $Lfp_Pwm_Controller_Selection_04  4 bits  ; Pwm Controller Selection for Panel #4

+  

+  $Lfp_Pwm_Source_Selection_05 		4 bits  ; Pwm Source Selection for Panel #5

+  $Lfp_Pwm_Controller_Selection_05  4 bits  ; Pwm Controller Selection for Panel #5

+

+  $Lfp_Pwm_Source_Selection_06 		4 bits  ; Pwm Source Selection for Panel #6

+  $Lfp_Pwm_Controller_Selection_06  4 bits  ; Pwm Controller Selection for Panel #6

+

+  $Lfp_Pwm_Source_Selection_07 		4 bits  ; Pwm Source Selection for Panel #7

+  $Lfp_Pwm_Controller_Selection_07  4 bits  ; Pwm Controller Selection for Panel #7

+  

+  $Lfp_Pwm_Source_Selection_08 		4 bits  ; Pwm Source Selection for Panel #8

+  $Lfp_Pwm_Controller_Selection_08  4 bits  ; Pwm Controller Selection for Panel #8

+

+  $Lfp_Pwm_Source_Selection_09 		4 bits  ; Pwm Source Selection for Panel #9

+  $Lfp_Pwm_Controller_Selection_09  4 bits  ; Pwm Controller Selection for Panel #9

+

+  $Lfp_Pwm_Source_Selection_10 		4 bits  ; Pwm Source Selection for Panel #10

+  $Lfp_Pwm_Controller_Selection_10  4 bits  ; Pwm Controller Selection for Panel #10

+  

+  $Lfp_Pwm_Source_Selection_11 		4 bits  ; Pwm Source Selection for Panel #11

+  $Lfp_Pwm_Controller_Selection_11  4 bits  ; Pwm Controller Selection for Panel #11

+

+  $Lfp_Pwm_Source_Selection_12 		4 bits  ; Pwm Source Selection for Panel #12

+  $Lfp_Pwm_Controller_Selection_12  4 bits  ; Pwm Controller Selection for Panel #12

+

+  $Lfp_Pwm_Source_Selection_13 		4 bits  ; Pwm Source Selection for Panel #13

+  $Lfp_Pwm_Controller_Selection_13  4 bits  ; Pwm Controller Selection for Panel #13

+

+  $Lfp_Pwm_Source_Selection_14 		4 bits  ; Pwm Source Selection for Panel #14

+  $Lfp_Pwm_Controller_Selection_14  4 bits  ; Pwm Controller Selection for Panel #14

+  

+  $Lfp_Pwm_Source_Selection_15 		4 bits  ; Pwm Source Selection for Panel #15

+  $Lfp_Pwm_Controller_Selection_15  4 bits  ; Pwm Controller Selection for Panel #15

+

+  $Lfp_Pwm_Source_Selection_16 		4 bits  ; Pwm Source Selection for Panel #16

+  $Lfp_Pwm_Controller_Selection_16  4 bits  ; Pwm Controller Selection for Panel #16

+

+;==============================================================================

+; Block 44 - BIA (Backlight Image Adaption) Support

+;------------------------------------------------------------------------------

+

+SKIP            3  bytes    ; Skip block ID and size

+

+$BIA_Enable        1  bit        ; DPST support enable bit

+$BIA_Aggress_Level    3  bits        ; Power Conservation Preference level

+SKIP            3  bits        ; Reserved

+$ALS_Enable        1  bit        ; ALS enable bit

+$ALS_Response_Data    20  bytes    ; ALS Response Data

+

+ ;==============================================================================

+    ; Block 46 - Chromaticity  Support

+    ;------------------------------------------------------------------------------

+

+    SKIP			3  bytes	; Skip block ID and size

+

+

+	$Chromacity_Enable_1	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_1    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_1		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_1		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_1			1 byte			; Red x coordinate at 1Bh

+	$Red_y_1			1 byte			; Red y coordinate at 1Ch

+	$Green_x_1		1 byte			; Green x coordinate at 1Dh

+	$Green_y_1		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_1			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_1			1 byte			; Blue y coordinate at 20h

+	$White_x_1		1 byte			; White x coordiante at 21h

+	$White_y_1		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_2	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_2    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_2		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_2		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_2			1 byte			; Red x coordinate at 1Bh

+	$Red_y_2			1 byte			; Red y coordinate at 1Ch

+	$Green_x_2		1 byte			; Green x coordinate at 1Dh

+	$Green_y_2		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_2			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_2			1 byte			; Blue y coordinate at 20h

+	$White_x_2		1 byte			; White x coordiante at 21h

+	$White_y_2		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_3	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_3    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_3		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_3		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_3			1 byte			; Red x coordinate at 1Bh

+	$Red_y_3			1 byte			; Red y coordinate at 1Ch

+	$Green_x_3		1 byte			; Green x coordinate at 1Dh

+	$Green_y_3		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_3			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_3			1 byte			; Blue y coordinate at 20h

+	$White_x_3		1 byte			; White x coordiante at 21h

+	$White_y_3		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_4	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_4    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_4		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_4		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_4			1 byte			; Red x coordinate at 1Bh

+	$Red_y_4			1 byte			; Red y coordinate at 1Ch

+	$Green_x_4		1 byte			; Green x coordinate at 1Dh

+	$Green_y_4		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_4			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_4			1 byte			; Blue y coordinate at 20h

+	$White_x_4		1 byte			; White x coordiante at 21h

+	$White_y_4		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_5	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_5    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_5		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_5		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_5			1 byte			; Red x coordinate at 1Bh

+	$Red_y_5			1 byte			; Red y coordinate at 1Ch

+	$Green_x_5		1 byte			; Green x coordinate at 1Dh

+	$Green_y_5		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_5			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_5			1 byte			; Blue y coordinate at 20h

+	$White_x_5		1 byte			; White x coordiante at 21h

+	$White_y_5		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_6	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_6    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_6		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_6		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_6			1 byte			; Red x coordinate at 1Bh

+	$Red_y_6			1 byte			; Red y coordinate at 1Ch

+	$Green_x_6		1 byte			; Green x coordinate at 1Dh

+	$Green_y_6		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_6			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_6			1 byte			; Blue y coordinate at 20h

+	$White_x_6		1 byte			; White x coordiante at 21h

+	$White_y_6		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_7	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_7    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_7		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_7		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_7		1 byte			; Red x coordinate at 1Bh

+	$Red_y_7			1 byte			; Red y coordinate at 1Ch

+	$Green_x_7		1 byte			; Green x coordinate at 1Dh

+	$Green_y_7		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_7			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_7			1 byte			; Blue y coordinate at 20h

+	$White_x_7		1 byte			; White x coordiante at 21h

+	$White_y_7		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_8	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_8    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_8		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_8		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_8			1 byte			; Red x coordinate at 1Bh

+	$Red_y_8			1 byte			; Red y coordinate at 1Ch

+	$Green_x_8		1 byte			; Green x coordinate at 1Dh

+	$Green_y_8		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_8			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_8			1 byte			; Blue y coordinate at 20h

+	$White_x_8		1 byte			; White x coordiante at 21h

+	$White_y_8		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_9	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_9    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_9		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_9		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_9			1 byte			; Red x coordinate at 1Bh

+	$Red_y_9			1 byte			; Red y coordinate at 1Ch

+	$Green_x_9		1 byte			; Green x coordinate at 1Dh

+	$Green_y_9		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_9			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_9			1 byte			; Blue y coordinate at 20h

+	$White_x_9		1 byte			; White x coordiante at 21h

+	$White_y_9		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_10	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_10    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_10		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_10		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_10			1 byte			; Red x coordinate at 1Bh

+	$Red_y_10			1 byte			; Red y coordinate at 1Ch

+	$Green_x_10		1 byte			; Green x coordinate at 1Dh

+	$Green_y_10		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_10			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_10			1 byte			; Blue y coordinate at 20h

+	$White_x_10		1 byte			; White x coordiante at 21h

+	$White_y_10		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_11	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_11    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_11		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_11		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_11			1 byte			; Red x coordinate at 1Bh

+	$Red_y_11			1 byte			; Red y coordinate at 1Ch

+	$Green_x_11		1 byte			; Green x coordinate at 1Dh

+	$Green_y_11		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_11			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_11			1 byte			; Blue y coordinate at 20h

+	$White_x_11		1 byte			; White x coordiante at 21h

+	$White_y_11		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_12	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_12    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_12		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_12		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_12			1 byte			; Red x coordinate at 1Bh

+	$Red_y_12			1 byte			; Red y coordinate at 1Ch

+	$Green_x_12		1 byte			; Green x coordinate at 1Dh

+	$Green_y_12		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_12			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_12			1 byte			; Blue y coordinate at 20h

+	$White_x_12		1 byte			; White x coordiante at 21h

+	$White_y_12		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_13	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_13    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_13		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_13		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_13			1 byte			; Red x coordinate at 1Bh

+	$Red_y_13			1 byte			; Red y coordinate at 1Ch

+	$Green_x_13		1 byte			; Green x coordinate at 1Dh

+	$Green_y_13		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_13			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_13			1 byte			; Blue y coordinate at 20h

+	$White_x_13		1 byte			; White x coordiante at 21h

+	$White_y_13		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_14	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_14    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_14		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_14		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_14			1 byte			; Red x coordinate at 1Bh

+	$Red_y_14			1 byte			; Red y coordinate at 1Ch

+	$Green_x_14		1 byte			; Green x coordinate at 1Dh

+	$Green_y_14		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_14			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_14			1 byte			; Blue y coordinate at 20h

+	$White_x_14		1 byte			; White x coordiante at 21h

+	$White_y_14		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_15	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_15    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_15		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_15		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_15			1 byte			; Red x coordinate at 1Bh

+	$Red_y_15			1 byte			; Red y coordinate at 1Ch

+	$Green_x_15		1 byte			; Green x coordinate at 1Dh

+	$Green_y_15		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_15			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_15			1 byte			; Blue y coordinate at 20h

+	$White_x_15		1 byte			; White x coordiante at 21h

+	$White_y_15		1 byte			; White y coordinate at 22h

+

+

+	$Chromacity_Enable_16	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_16    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_16		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_16		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_16			1 byte			; Red x coordinate at 1Bh

+	$Red_y_16			1 byte			; Red y coordinate at 1Ch

+	$Green_x_16		1 byte			; Green x coordinate at 1Dh

+	$Green_y_16		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_16			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_16			1 byte			; Blue y coordinate at 20h

+	$White_x_16		1 byte			; White x coordiante at 21h

+	$White_y_16		1 byte			; White y coordinate at 22h

+

+;==============================================================================

+; Block 51 - Fixed Mode

+;------------------------------------------------------------------------------

+

+SKIP			3  bytes	; Skip block ID and size

+$Feature_Enable  1 byte   ; enable or disable the feature

+$X_res          4 bytes ; X resolution

+$Y_res          4 bytes ; Y resolution

+

+;==============================================================================

+; Block 54 - RGB Palette enteries

+;------------------------------------------------------------------------------

+SKIP 				3 bytes				;block ID/size

+

+$Enable_Correction 	1 bit

+SKIP 				7 bits

+

+$Red_Table			256 bytes

+$Green_Table		256 bytes

+$Blue_Table			256 bytes

+

+EndStruct

+

+;==============================================================================

+; List Definitions

+;------------------------------------------------------------------------------

+

+List &Disabled_Enabled_List

+    Selection    0,    "Disabled"

+    Selection    1,    "Enabled"

+EndList

+

+List &Pwr_Pref_List

+    Selection    0x01,    "1 - Maximum Quality with No DPST"

+    Selection    0x02,    "2"

+    Selection    0x03,    "3"

+    Selection    0x04,    "4"

+    Selection    0x05,    "5"

+    Selection    0x06,    "6 - Maximum Battery"

+EndList

+

+List &Cls_After_Signon_List

+    Selection    0x00,    "No CLS"

+    Selection    0x01,    "0.5 Second Delay + CLS"

+    Selection    0x02,    "1.0 Second Delay + CLS"

+    Selection    0x03,    "1.5 Second Delay + CLS"

+    Selection    0x04,    "2.0 Second Delay + CLS"

+    Selection    0x05,    "2.5 Second Delay + CLS"

+    Selection    0x06,    "3.0 Second Delay + CLS"

+    Selection    0x07,    "3.5 Second Delay + CLS"

+EndList

+

+List &Int_CRT_Device_Type_List

+    Selection    0x0000, "No Device"

+    Selection    0x0001, "CRT"

+    ;Selection    0x0011, "DVI with CRT"

+EndList

+

+List &Int_EFP_Device_Type_List

+    Selection    0x0000, "No Device"

+    Selection    0x68C6, "DisplayPort"

+    Selection    0x60D2, "HDMI/DVI"

+    Selection	 0x68D2, "Integrated DVI Only"

+    Selection    0x60D6, "DisplayPort with HDMI/DVI Compatible"

+    Selection    0x68D6, "DisplayPort with DVI Compatible"

+   ; Selection    0x68D3, "DVI with CRT"

+EndList

+

+List &CRT_Device_Id_List

+    Selection    01h, "CRT"

+EndList

+

+List &EFP1_Device_Id_List

+    Selection    04h, "EFP 1"

+    Selection    40h, "EFP 2"

+    Selection    08h, "LFP"

+    ;Selection    80h, "LFP 2"

+EndList

+

+List &EFP2_Device_Id_List

+    Selection    04h, "EFP 1"

+    Selection    40h, "EFP 2"

+    Selection    08h, "LFP"

+    ;Selection    80h, "LFP 2"

+EndList

+

+List &LVDS_Device_Id_List

+    Selection    08h, "LFP"

+EndList

+

+List &DOS_Boot_Mode_List

+        Selection    0x03,    "03h"

+        Selection    0x12,    "12h"

+        Selection    0x13,    "13h"

+           Selection    0x30,    "30h"

+           Selection    0x32,    "32h"

+           Selection    0x34,    "34h"

+           Selection    0x40,    "40h"

+           Selection    0x41,    "41h"

+           Selection    0x42,    "42h"

+           Selection    0x43,    "43h"

+           Selection    0x44,    "44h"

+           Selection    0x45,    "45h"

+           Selection    0x50,    "50h"

+           Selection    0x52,    "52h"

+        Selection    0x54,    "54h"

+EndList

+       

+List &LFP_Port_list

+    Selection    0x07,    "eDP Port B"

+    Selection    0x08,    "eDP Port C"

+    ;Selection    0x15,    "MIPI Port A"

+    ;Selection    0x17,    "MIPI Port C"

+    

+EndList

+

+List &LVDS_eDP_Port_List

+    Selection    0x04,    "LVDS"

+    Selection    0x07,    "Port B"

+    Selection    0x08,    "Port C"

+EndList

+

+

+

+List &Int_EFP_Port_List

+	Selection	0x00,	"N/A"

+	Selection	0x01,	"Port B"

+	Selection	0x02,	"Port C"

+	

+EndList	

+

+List &Int_eDP_AUX_Channel_List

+	Selection	0x00,	"N/A"

+	Selection	0x10,	"eDP-B AUX Channel"

+	Selection	0x20,	"eDP-C AUX Channel"

+EndList

+

+List &Int_DP_AUX_Channel_List

+	Selection	0x00,	"N/A"

+	Selection	0x10,	"DisplayPort-B AUX Channel"

+	Selection	0x20,	"DisplayPort-C AUX Channel"

+EndList

+	

+

+

+List &GPIO_Pin_List

+    Selection    0x00,    "N/A"

+    Selection    0x05,    "Integrated HDMI-B DDC GPIO Pins"

+    Selection    0x04,    "Integrated HDMI-C DDC GPIO Pins"

+    Selection    0x01,    "I2C GPIO pins"

+    Selection    0x02,    "Analog CRT DDC GPIO pins"

+EndList             

+

+

+List &GMBus_Speed_List

+    Selection    0x01,    "50 KHz"

+    Selection    0x00,    "100 KHz"

+    Selection    0x02,    "400 KHz"

+    Selection    0x03,    "1 MHz"

+EndList             

+

+

+List &Inv_Type_List

+    Selection    0x00,    "None/External"

+    Selection    0x01,    "I2C"

+    Selection    0x02,    "PWM"

+EndList

+

+List &Inv_Polarity_List

+    Selection    0x00,    "Normal"

+    Selection    0x01,    "Inverted"

+EndList

+

+List &IntXXh_List

+    Selection    0x00,    "Disabled"

+    Selection    0x01,    "Use Interrupt 15h"

+EndList

+

+List &LVDS_Channel_List

+    Selection    0x00,    "Single Channel"

+    Selection    0x01,    "Dual Channel"

+EndList

+

+List &INT_LVDS_Channel_List

+    Selection    0x00,    "Automatic Selection"

+    Selection    0x01,    "Single Channel"

+    Selection    0x02,    "Dual Channel"

+EndList

+

+List &LVDS_Config_List

+    Selection    0x00,    "No Device"

+    Selection    0x1020,  "LVDS"

+EndList

+

+List &eDP_Config_List

+    Selection    0x00,    "No Device"

+    Selection    0x1806,  "eDP"

+ ;   Selection    0x1400,    "MIPI"

+EndList

+

+List &eDP_LVDS_Config_List

+    Selection    0x00,    "No Device"

+    Selection    0x1020,  "LVDS"

+    Selection    0x1806,  "eDP"

+EndList

+

+

+List &No_Yes_List

+    Selection    0,    "No"

+    Selection    1,    "Yes"

+EndList

+

+List &Off_On_List

+    Selection    0,    "Off"

+    Selection    1,    "On"

+EndList

+

+List &OS_Driver_List

+    Selection    0,    "OS Default Algorithm"

+    Selection    1,    "Driver Algorithm"

+EndList

+

+List &OS_DriverP_List

+    Selection    0,    "OS Default Algorithm"

+    Selection    1,    "Driver Persistence Algorithm"

+EndList

+

+List &Panel_Color_Depth_List

+    Selection    0x00,    "18-bit Color Depth"

+    Selection    0x01,    "24-bit Color Depth"

+EndList

+

+List &eDP_Panel_Color_Depth_List

+    Selection    0x00,    "18-bit Color Depth"

+    Selection    0x01,    "24-bit Color Depth"

+    Selection    0x02,    "30-bit Color Depth"

+EndList

+

+List &eDP_Vswing_Preemph_table_List

+    Selection    0x00,    "Low power Swing Setting"

+    Selection    0x01,    "Default Swing Setting"

+EndList

+

+List &eDP_Link_DataRate_List

+    Selection    0x00,    "1.62 Gbps"

+    Selection    0x01,    "2.70 Gbps"

+EndList

+

+List &eDP_Link_LaneCount_List

+    Selection    0x00,    "x1"

+    Selection    0x01,    "x2"

+    Selection    0x03,    "x4"

+EndList

+

+List &eDP_Link_PreEmp_List

+    Selection    0x00,    "Level 0"

+    Selection    0x01,    "Level 1"

+    Selection    0x02,    "Level 2"

+    Selection    0x03,    "Level 3"    

+EndList

+

+List &eDP_Link_VSwing_List

+    Selection    0x00,    "Level 0"

+    Selection    0x01,    "Level 1"

+    Selection    0x02,    "Level 2"

+    Selection    0x03,    "Level 3"    

+EndList

+      

+

+List &Panel_Connector_List

+    Selection    0x00,    "SPGW"

+    Selection    0x01,    "OpenLDI"

+EndList

+

+List &Panel_List

+    Selection    0x00,    "PANEL #01"

+    Selection    0x01,    "PANEL #02"

+    Selection    0x02,    "PANEL #03"

+    Selection    0x03,    "PANEL #04"

+    Selection    0x04,    "PANEL #05"

+    Selection    0x05,    "PANEL #06"

+    Selection    0x06,    "PANEL #07"

+    Selection    0x07,    "PANEL #08"

+    Selection    0x08,    "PANEL #09"

+    Selection    0x09,    "PANEL #10"

+    Selection    0x0A,    "PANEL #11"

+    Selection    0x0B,    "PANEL #12"

+    Selection    0x0C,    "PANEL #13"

+    Selection    0x0D,    "PANEL #14"

+    Selection    0x0E,    "PANEL #15"

+    Selection    0x0F,    "PANEL #16"

+EndList

+

+

+List &Panel_Stretch_List

+    Selection    0x00,    "Disable Panel Fitting"

+    Selection    0x01,    "Enabled for Text Modes Only"

+    Selection    0x02,    "Enabled for Graphics Modes Only"

+    Selection    0x03,    "Enabled for Both Text and Graphics Modes"

+EndList

+

+List &PCI_BIOS_Disabled_Enabled_List

+    Selection    0x00,    "Disabled"

+    Selection    0x01,    "Resize to 0.5K boundary"

+    Selection    0x20,    "Resize to 16K boundary"

+EndList

+

+List &RelStage

+    Selection    1,    "Production"

+    Selection    254,    "Evaluation"

+EndList

+

+List &Power_Scheme_List

+    Selection    0,    "CUI"

+    Selection    1,    "3rd Party Application"

+EndList

+

+List &Render_Freq_List

+    Selection    0,    "High Frequency"

+    Selection    1,    "Low Frequency"

+EndList

+

+List &SSC_List

+    Selection    0,    "96 MHz"

+    Selection    1,    "100 MHz"

+EndList

+

+List &SDVO_Panel_List

+    Selection    0x00,    "PANEL #01"

+    Selection    0x01,    "PANEL #02"

+    Selection    0x02,    "PANEL #03"

+    Selection    0x03,    "PANEL #04"

+EndList

+

+List &Yes_No_List

+    Selection    0,    "Yes"

+    Selection    1,    "No"

+EndList

+

+List &Sprite_Display_List

+    Selection    0,    "Secondary Display"

+    Selection    1,    "Primary Display"

+EndList

+

+List &Under_Over_List

+    Selection    0x0,    "Enable Underscan and Overscan modes"

+    Selection    0x1,    "Enable only overscan modes"

+    Selection    0x2,    "Enable only underscan modes"

+EndList

+

+List &Inter_Exter_List

+    Selection    0,    "External Termination"

+    Selection    1,    "Internal Termination"

+EndList

+

+List &DPS_Panel_Type_List

+        Selection       0x00,    "Static DRRS"

+        Selection       0x02,    "Seamless"

+EndList

+

+List &MSA_TimingDelay_List

+        Selection       0x00,    "Line 1"

+        Selection       0x01,    "Line 2"

+        Selection       0x02,    "Line 3"

+    Selection    0x03,     "Line 4"

+EndList

+

+List &Blt_Control_Type_List

+        ;Selection       0x00,    "Default"

+        Selection       0x01,    "CCFL Backlight"

+        Selection       0x02,    "LED Backlight"

+EndList

+

+

+List &Mode_Preferred_List

+        Selection       0x00,    "Mode Timing"

+        Selection       0x01,    "Preferred Timing"

+EndList

+

+List &DisplayList

+  Selection       0x08, "LFP"

+;  Selection       0x80, "LFP 2"

+  Selection       0x01, "CRT"

+  Selection       0x04, "EFP 1"

+  Selection       0x40, "EFP 2"

+;  Selection       0x20, "EFP 3"

+  Selection       0x00, "None"        

+EndList

+

+List &Dither_Select_Bit

+    Selection 0,  "Dithering in Panel controller"

+    Selection 1,  "Dithering in Display Controller"

+EndList

+

+List &MIPI_Bridge_Ref_Clock_List

+    Selection 0,  "19.2"

+    Selection 1,  "26"

+EndList

+

+List &Panel_Identifier_List

+	Selection 0x0,  "Use Sequence Block"

+	Selection 0x1,  "MIPI DSI Panel-1"

+	Selection 0x2,  "MIPI DSI Panel-2"

+	Selection 0x3,  "MIPI DSI Panel-3"

+	Selection 0x4,  "MIPI DSI Panel-4"

+	Selection 0x5,  "MIPI DSI Panel-5"

+	Selection 0x6,  "MIPI DSI Panel-6"

+	Selection 0x7,  "MIPI DSI Panel-7"

+	Selection 0x8,  "MIPI DSI Panel-8"

+	;Selection 0x9,  "MIPI DSI Panel-9"

+	;Selection 0xA,  "MIPI DSI Panel-10"

+	;Selection 0xB,  "MIPI DSI Panel-11"

+	;Selection 0xC,  "MIPI DSI Panel-12"	

+	;Selection 0xD,  "MIPI DSI Panel-13"

+	;Selection 0xE,  "MIPI DSI Panel-14"

+	;Selection 0xF,  "MIPI DSI Panel-15"

+	;Selection 0x10, "MIPI DSI Panel-16"

+EndList

+

+List &Panel_Type_List

+	Selection 0,  "Native MIPI DSI"

+	Selection 1,  "MIPI DSI to LVDS Bridge"

+EndList

+

+List &MIPI_DSI_Panel_Architecture_Type_List

+	Selection 0x0,  "Type 1"

+	Selection 0x1,	"Type 2"

+	Selection 0x2,	"Type 3"

+	Selection 0x3,	"Type 4"

+EndList

+

+List &Video_Command_Mode_List

+	Selection 0,  "Video Mode"

+	Selection 1,  "Command Mode"

+EndList

+

+List &Packet_Sequence_Video_Mode_List

+	;Selection 0x0, "Reserved"

+	Selection 0x1,  "Non-burst with sync pulse"

+	Selection 0x2,  "Non-burst with sync events"

+	Selection 0x3,  "Burst Mode"

+EndList

+

+List &Colour_Format_Video_Mode_List

+	Selection 0x1,  "RGB565"

+	Selection 0x2,  "RGB666"

+	Selection 0x3,  "RGB 666(Loosely Packed Format)"  

+	Selection 0x4,  "RGB888"

+EndList  

+

+List &Panel_Rotation_List

+	Selection 0x0,  "0 degree"

+	Selection 0x1,  "90 degree"

+	Selection 0x2,  "180 degree"

+	Selection 0x3,  "270 degree"

+EndList

+

+List &Enable_Disable_List

+	Selection 0,  "Enable"

+	Selection 1,  "Disable"

+EndList

+

+List &EscapeClk_List

+	Selection 0x0,  "20 MHz"

+	Selection 0x1,	"10 MHz"

+	Selection 0x2,	"5 MHz"

+	;Selection 0x3, "Undefined"

+EndList

+

+List &DPhyParamFlag_List

+	Selection 0,  "Dphy Param is not valid"

+	Selection 1,  "Dphy Param is valid"

+EndList

+

+List &MIPI_DSI_Panel_Color_Depth_List

+	Selection 0x0,  "18Bpp"

+	Selection 0x1,	"24Bpp"

+EndList

+

+List &Lane_Count_List

+	Selection 0x0,	"1"

+	Selection 0x1,	"2"

+	Selection 0x2,	"3"

+	Selection 0x3,  "4"

+EndList

+

+List &Dual_Link_List

+	Selection 0x0,  "Dual Link Not Supported"

+	Selection 0x1,  "Dual Link Front Back Mode"

+	Selection 0x2,  "Dual Link Pixel Alternative Mode"

+	;Selection 0x3,  "Reserved"

+EndList

+

+List &Hdmi_LS_List_VLV

+  Selection	0x00,	"1000mV -2.0dB"

+  Selection     0x01,	"1000mV 0.0dB"

+  Selection	0x02,	"800mV 0.0dB"

+  Selection	0x03,	"600mV 2.0dB"

+  Selection	0x04,	"600mV 0.0dB"

+EndList

+

+List &Edp_Pwm_Source_List

+  Selection 0x1,  "LPSS PWM"

+  Selection 0x2,  "DISPLAY PWM"

+EndList

+

+;==============================================================================

+; Page Definitions

+;------------------------------------------------------------------------------

+

+BeginInfoBlock

+    PPVer    "2.01"

+    Image EOF Thru EOF At EOF

+EndInfoBlock

+

+

+;==============================================================================

+; Page - VBT version

+;------------------------------------------------------------------------------

+

+Page "VBT version"

+

+  Title   "PLATFORM : Valleyview"

+  Title   "VBT version: 191"        

+

+EndPage		; VBT version

+

+

+

+;==============================================================================

+; Page - UEFI GOP Driver Configuration

+;------------------------------------------------------------------------------

+

+Page "UEFI GOP Driver Configuration"

+

+    ;Combo	$Hotplug_Support_Enb, " Hot Plug Support:", &Disabled_Enabled_List,

+    ;Help	"This feature is to enable/disable Hot Plug Suppport for CRT/DP/HDMI displays "

+

+  Title   "Child Device Configuration"    

+  Link    "Child Device List", "Child Device List"

+

+Title   "Fixed Mode"    

+Link    "Fixed Mode Feature", "Fixed Mode Feature"

+

+    ;==============================================================================

+    ; Page - Boot Display Algorithm

+    ;------------------------------------------------------------------------------

+

+  Page "Child Device List"

+    

+    Title   "Select the child devices that the GOP driver should enumerate if detected." 

+    Title   "Note: The child devices are listed here in decreasing order of priority. In case the system BIOS does not specify "

+    "the child device to start, then GOP driver selects the highest priority child device" 

+    

+    Link	"Close Window", ".."

+	

+    Title   "Child Device 1"

+    Combo   $ChildDevice1Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice1Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+	

+    Title   " "

+    Title   "Child Device 2"

+    Combo   $ChildDevice2Primary, " Primary display:"  , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice2Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 3"

+    Combo   $ChildDevice3Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice3Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 4"

+    Combo   $ChildDevice4Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice4Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 5"

+    Combo   $ChildDevice5Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice5Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 6"

+    Combo   $ChildDevice6Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice6Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+	

+    Title   " "

+    Title   "Child Device 7"

+    Combo   $ChildDevice7Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice7Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 8"

+    Combo   $ChildDevice8Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice8Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 9"

+    Combo   $ChildDevice9Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice9Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 10"

+    Combo   $ChildDevice10Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice10Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 11"

+    Combo   $ChildDevice11Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice11Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 12"

+    Combo   $ChildDevice12Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice12Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 13"

+    Combo   $ChildDevice13Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice13Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 14"

+    Combo   $ChildDevice14Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice14Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 15"

+    Combo   $ChildDevice15Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice15Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 16"

+    Combo   $ChildDevice16Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice16Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+  EndPage    ;"Child Device List"

+

+;============================================================================

+; Page - Fixed Mode Configuration

+;----------------------------------------------------------------------------

+

+Page    "Fixed Mode Feature"

+        Link    "Close Table", ".."

+          Combo   $Feature_Enable, "Enable Feature:",  &No_Yes_List,

+        Help    "Fixed Mode Feature allows user to fix a mode during POST such that only that particular mode will be always set.\r\n"

+"This field specifies if user wants to enable/disable the feature.\r\n"

+"When enabled user is expected to provide a valid input."

+

+        EditNum $X_res, "Horizontal Pixels:", DEC,

+        Help    "This value specifies the horizontal pixels of the mode. It should be always less than or equal to the native horizontal resolution.\r\n"

+

+        EditNum $Y_res, "Vertical Pixels:", DEC,

+        Help    "This value specifies the vertical pixels of the mode. It should be always less than or equal to the native vertical resolution.\r\n"

+	 

+EndPage

+EndPage    ; "UEFI GOP Driver Configuration"

+

+

+;============================================================================

+; Page - Windows Graphics Driver Configuration

+;----------------------------------------------------------------------------

+

+Page "Windows Graphics Driver Configuration"

+

+    Link "General Features" , "General Features"

+    Link "Display Features" , "Display Features"

+    Link "Power Conservation" , "Power Conservation"

+

+    Page    "General Features"

+        Link    "Close Table" , ".."

+

+    EditNum    $VBT_Customization_Version, "  VBT Customization Version:", DEC,

+    Help    "This feature allows the OEM to have a customized VBT version "

+        "number. The permissible values for VBT Customization version "

+        "is from 0 to 255.\r\n"

+        

+    Combo    $Driver_Boot_Device, "  First Boot Display Device:", &OS_Driver_List,

+    Help    "This feature allows the OEM to select which algorithm to "

+        "follow on the first boot after the driver has been "

+        "installed.\r\n"

+        "\r\n"

+        "OS Default - If this is selected, the operating system's "

+        "algorithm will be used.\r\n"

+        "\r\n"

+        "Driver Default - If this is selected, the boot device will "

+        "follow the driver algorithm.  The expected behavior can be "

+        "found in the Driver PRD chapter:  'First Boot Default "

+        "Display Resolutions'."

+

+     ;Combo    $Allow_FDOS_Disp_Switch, "  Allow Full Screen DOS Display Switching:", &No_Yes_List,

+     ;Help    "This feature allows display switching when the system is in "

+     ;   "full screen DOS.  When set to yes, display switching will be "

+      ;  "allowed while system is in full screen DOS.  When set to no, "

+       ; "display switching will be blocked when system is in full "

+        ;"screen DOS."

+

+    ;Combo    $Hot_Plug_DVO, "  DVO/SDVO Hot Plug:", &Disabled_Enabled_List,

+    ;Help    "This feature allows the OEM to disable the DVO/SDVO Hot Plug "

+    ;    "capability."

+

+    Combo    $Hot_Plug_CRT, "  CRT Hot Plug:", &Disabled_Enabled_List,

+    Help    "This feature allows the OEM to disable the CRT Hot Plug "

+        "capability. This is applicalbe only for driver hotplug in driver environment and not DOS (VBIOS mode)"

+

+    Combo    $Use_110h_for_LFP, "  Use _DOD 00000110h ID for Primary LFP:", &No_Yes_List,

+    Help    "This feature when set to yes will use the legacy value "

+        "00000110h as the ID for primary LFP in the ACPI _DOD, _DGS "

+        "method.  The ID is passed to the system BIOS through INT10h function 5F64h  "

+        "The ID 00000110h is the backwards compatible ACPI ID "

+        "for LFP, which may be necessary in where Microsoft* WindowsXP "

+        "TabletPC*'s Graphical User Interface is required for Backlight "

+        "Control(hardcoded by some Windows OSes). In all other cases, "

+        "the default new ID is strongly preferred."

+      

+

+    ;Combo    $DVD_Sprite_Clone, "  Disable Sprite (DVD) in Clone Mode:", &Yes_No_List,

+    ;Help    "This feature when selected 'No', will allow the sprite to be "

+       ; "active during DVD playback when the platform is in a Dual "

+       ; "Display Clone configuration.  Otherwise, when selected 'Yes', "

+       ; "the overlay sprite will be disabled during DVD playback when the "

+       ; "platform is in a Dual Display Clone configuration."

+

+    Combo    $GTF_Mode_Pruning, "  Selective Mode Pruning:", &Disabled_Enabled_List,

+    Help    "This feature when enabled will instruct driver software not "

+        "to enumerate or set specific display modes determined as "

+        "unsupported according to the EDID capabilities of the "

+        "display. If the display indicates support for all GTF/DMTS "

+        "timings in the display's EDID, then all modes supported by "

+        "the graphics host will be enumerated.  If the display does "

+        "NOT indicate support for GTF/DMTS timings in the display's "

+        "EDID, then some modes/timings that may have been enumerated "

+        "by the display driver shall not be set."

+        "\r\n"

+        "\r\n"

+        "Note: This option applies for all display types.  And in the "

+        "absence of other platform configuration information (e.g. "

+        "OEM Customizable Mode) requiring inclusion of that display "

+        "mode/timings."

+

+    ;Combo    $Sprite_Display_Assign, "  Sprite Display Assignment for When Overlay is Active in Clone Mode:", &Sprite_Display_List,

+    ;Help    "This feature when set to Primary Display, the driver will "

+     ;   "assign the Sprite (2ndary overlay) to the primary display "

+      ;  "defined in the current Dual Display Clone configuration, "

+       ; "otherwise when this feature is set to Secondary Display, the "

+        ;"driver will assign the Sprite (2ndary overlay) to the "

+        ;"secondary display defined in the current Dual Display Clone "

+        ;"configuration. Note:  This bit will have no affect if an "

+        ;"application is using the VMR API. "

+

+

+        

+    Combo    $CUIHotK_Static_Display, "  Display must be attached for CUI/Hot Key:", &Yes_No_List,

+    Help    "This feature allows a selectable option to determine whether "

+        "the display device must be attached for CUI Hot Key.\r\n"

+        "\r\n"

+        "With the 'No' option the display devices do not have to be "

+        "attached when enabling the displays via CUI Devices Pages, "

+        "CUI Hot Key.  Note: This feature may cause the user to have "

+        "a blank display device due to switching to a display that is "

+        "not attached.\r\n"

+        "\r\n"

+        "With the 'Yes' option the display device must be attached or "

+        "the display switch attempt will be blocked."

+    EndPage

+

+    Page    "Display Features"

+        Link    "Close Table" , ".."

+

+     Combo    $CUI_Maintain_Aspect, "  Enable 'Maintain Aspect Ratio':", &No_Yes_List,

+    Help    "This feature allows the OEM to enable or disable the 'Maintain "

+        "Aspect Ratio' feature.  When the option is set to Yes, the "

+        "feature will be enabled and CUI will show for end user "

+        "selection 'Maintain Aspect Ratio'.  When the option is set to "

+        "No, the complete 'Maintain Aspect Ratio' feature will be disabled."

+

+    Combo    $Preserve_Aspect_Ratio, "  Preserve Aspect Ratio:", &Disabled_Enabled_List,

+    Help    "This feature allows the OEM to configure the default option "

+        "for aspect ratio settings. When enabled, the CUI will reflect "

+        "preserve the aspect ratio as active setting.  Otherwise, when "

+        "disabled, the CUI will use the setting 'Panel Fitting Initial "

+        "States' as default aspect ratio setting.  This option will "

+        "only be available for initial boot value. Any subsequent "

+        "change in CUI will have higher priority."

+      

+    Title      "    "

+    TitleB      "Legacy Monitor Mode Limit"

+

+    EditNum    $Legacy_Monitor_Max_X, "  Maximum X Resolution (Pixels):", DEC,

+    Help    "This feature allows the limiting of selectable display modes "

+        "when a legacy monitor is detected.  The maximum resolution is "

+        "specified by a maximum number of horizontal active pixels."

+        "\r\n"

+        "Note: A legacy monitor is defined as a monitor with no DDC "

+        "available."

+

+    EditNum    $Legacy_Monitor_Max_Y, "  Maximum Y Resolution (Pixels):", DEC,

+    Help    "This feature allows the limiting of selectable display modes "

+        "when a legacy monitor is detected.  The maximum resolution is "

+        "specified by a maximum number of vertical active pixels."

+        "\r\n"

+        "Note: A legacy monitor is defined as a monitor with no DDC "

+        "available."

+

+    EditNum    $Legacy_Monitor_Max_RR, "  Maximum Refresh Rate (Hz):", DEC,

+    Help    "This feature allows the limiting of selectable display modes "

+        "when a legacy monitor is detected.  The maximum refresh rate "

+        "is specified in Hz."

+        "\r\n"

+        "Note: A legacy monitor is defined as a monitor with no DDC "

+        "available."

+

+		

+	Title      "    "

+    TitleB      "Rotation Support Configuration"

+    

+	

+    Combo    $Rotation_Support_Enable, "Support Rotation Feature:", &No_Yes_List,

+    Help    "This feature when set to yes, can cause the graphics driver to "

+			"support rotation feature, otherwise rotation feature support "

+			"will be disabled."

+			"\r\n"

+			"Note: Setting this field to Yes is a necessary condition for driver to " 

+			"support rotation feature, but it is not sufficient."

+			

+		

+    Title      "    "

+    TitleB      "Graphics Mode to Boot on Windows"

+	

+	

+    EditNum    $Driver_Boot_Mode_X, "  X Resolution (Pixels):", DEC,

+    Help    "This feature allows the OEM to select which resolution the "

+        "system will use on the first reboot after the driver has "

+        "been installed.\r\n"

+        "\r\n"

+        "X Resolution (Pixels)\r\n"

+        "\r\n"

+        "Note: This feature is only used when the Boot Display "

+        "Algorithm is set to Driver Default."

+

+    EditNum    $Driver_Boot_Mode_Y, "  Y Resolution (Pixels):", DEC,

+    Help    "This feature allows the OEM to select which resolution the "

+        "system will use on the first reboot after the driver has "

+        "been installed.\r\n"

+        "\r\n"

+        "Y Resolution (Pixels)\r\n"

+        "\r\n"

+        "Note: This feature is only used when the Boot Display "

+        "Algorithm is set to Driver Default."

+

+    EditNum    $Driver_Boot_Mode_BPP, "  Color Depth (Bits/Pixel):", DEC,

+    Help    "This feature allows the OEM to select which resolution the "

+        "system will use on the first reboot after the driver has "

+        "been installed.\r\n"

+        "\r\n"

+        "Color Depth (BPP)\r\n"

+        "\r\n"

+        "Note: This feature is only used when the Boot Display "

+        "Algorithm is set to Driver Default."

+

+    EditNum    $Driver_Boot_Mode_RR, "  Refresh Rate (Hz):", DEC,

+    Help    "This feature allows the OEM to select which resolution the "

+        "system will use on the first reboot after the driver has "

+        "been installed.\r\n"

+        "\r\n"

+        "Refresh Rate (Hz)\r\n"

+        "\r\n"

+        "Note: This feature is only used when the Boot Display "

+        "Algorithm is set to Driver Default."

+Title      "     "

+TitleB      "TV features"

+

+    Combo	$Under_Over_Scan_Via_DVI, "  Enable underscanned modes for HDTV via HDMI:", &Under_Over_List,

+    Help	"When 720p is found in the EDID structure of the active HDMI "

+    "display and enable underscan modes is selected, 1184x666 will "

+    "be available and be centered in 720p timings when enabled. "

+    "\r\n"

+    "When 1080i or 1080p is found in the EDID structure of the "

+    "active DVI display and enable underscan modes is selected, "

+    "1776x1000 will be centered in appropriate 1080 timings. "

+

+    Title	"\r\n"

+    Title	"  Add 1776x1000 when 1080i is selected and add 1184x666 when 720p is selected for HDTV via HDMI:"

+    Combo	$Add_Overscan_Mode, " ", &Disabled_Enabled_List,

+    Help	"For 1080i format, 1776x1000 will be made available in CUI "

+    "along with native resolution 1920x1080.  For 720p format, "

+    "1184x666 will be made available in CUI along with native "

+    "resolution 1280x720. These resolutions are exposed to get the "

+    "HDMI image under scanned with task bar visible."

+  EndPage	; Display features

+

+

+    

+    

+    Page    "Power Conservation"

+        Link    "Close Table" , ".."

+    

+    ;Combo    $SDVO_Device_Power_Down, "  SDVO device power down:", &Disabled_Enabled_List,

+    ;Help    "This feature powers down the SDVO device when the system is "

+        "running in battery mode (DC) and the corresponding display "

+        "not connected."

+

+    Combo    $BIA_Enable, "  Intel � Display Power Saving Technology Support for the LFP:", &Disabled_Enabled_List,

+    Help    "This feature determines whether the Intel � Display Power "

+        "Savings Technology (DPST) is enabled or disabled.  Intel � DPST "

+        "is a display power savings technology that changes the "

+        "intensity of colors in order to conserve backlight power."

+        "\r\n\r\nNote: This technology is only active when the system "

+        "is running in battery mode and the LFP is the only active "

+        "display device."

+

+    Combo    $BIA_Aggress_Level, "  Power Conservation Preference Level for the LFP:", &Pwr_Pref_List,

+    Help    "This feature defines the Intel � Display Power Saving Technology "

+        "aggressiveness level if and only if the feature Intel � Display Power Saving "

+        "Technology is enabled."   

+        "\r\n\r\nThe following are the definitions for each level:"

+        "\r\n1 - Maximum Quality - shall use no DPST "

+        "\r\n2 - Provides  the user the maximum "

+        "brightness for their embedded Local Flat Panel (LFP)while DPST is in use"

+        "\r\n3 - This level defines maximum amount of brightness with "

+        "minimal power savings"

+        "\r\n4 - This level defines an intermediate value for brightness amount"

+        "\r\n5 - This level defines an intermediate value for the brightness amount"

+        "\r\n6 - Maximum Battery - Provided the user with the minimum amount of "

+        "brightness capable for their LFP with the maximum power savings"

+		

+	Combo	$Panel_Self_Refresh, "  Panel Self Refresh (PSR):", &Disabled_Enabled_List,

+    Help	"This feature determines whether Panel Self Refresh (PSR) feature is to be enabled. "

+	

+	Combo   $PM_DRRS_Enable, "  Intel � Display Refresh Rate Switching (DRRS):", &Disabled_Enabled_List,

+    Help	"This feature determines whether Intel � Display Refresh Rate Switching (DRRS) is to be "

+			"enabled or not. "

+

+    Combo    $ALS_Enable, "  Intel � Automatic Display Brightness Support for the LFP:", &Disabled_Enabled_List,

+    Help    "This feature determines whether Intel � Automatic Display Brightness is to be "

+        "enabled.  Intel � Automatic Display Brightness adjusts the brightness of the "

+        "embedded Local Flat Panel (LFP) depending on the current "

+        "ambient light environment.  When enabled, the driver and VBIOS"

+        " will control the backlight brightness of the LFP depending "

+        "on the ambient environment if and only if the LFP is the only "

+        "active display.  When disabled, the driver and VBIOS will "

+        "perform no action."

+

+    Combo $DMRRS, "  Dynamic Media Refresh Rate Switching (DMRRS):", &Disabled_Enabled_List,

+	Help	"This feature determines whether Dynamic Media Refresh Rate Switching feature is to be enabled. "

+

+    Link "Ambient Light Response Data" , "Ambient Light Response Data"

+

+        Page    "Ambient Light Response Data"

+            Link    "Close Table" , ".."

+

+            Table    $ALS_Response_Data " Ambient Light Response Data",

+            Column    "Backlight Adjust", 2 bytes, EHEX

+            Column    "Lux", 2 bytes, EHEX,

+            Help    "This feature defines values used to calibrate the "

+                "Intel � Automatic Display Brightness policy's "

+                "response to account for specific hardware implementation "

+                "details such as sensor placement and optics.  Up to five "

+                "points can be specified, where each point indicates a given "

+                "ambient light illuminance to display luminance mapping "

+                "specified as (<%BacklightAdjust>, <Lux>).  Points should be "

+                "listed in monotonically increasing order by ambient light "

+                "illuminance (lux).  A minimum of two points are required "

+                "(min and max)."

+        EndPage

+

+    EndPage

+ EndPage    

+;==============================================================================

+; Page - Display Configuration

+;------------------------------------------------------------------------------

+

+Page "Display Configuration"

+

+    Link "LFP" , "LFP"

+    Link "CRT" , "CRT"

+    Link "EFP 1" , "EFP 1"

+    Link "EFP 2" , "EFP 2"

+	

+	TitleB "DisplayPort SSC configuration: " 

+    Combo	$DP_SSC_Enb, " DisplayPort (External Connectors) Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature allow OEMs to enable/disable SSC for external DisplayPort.  "

+    "This feature is valid only the attached DisplayPort panel support SSC. "

+    "\r\n"

+

+    Combo	$DP_SSC_Dongle_Enb, " DisplayPort Spread Spectrum Clock Enable/Disable for Dongles:", &Disabled_Enabled_List,

+    Help "This feature is to enable or disable DisplayPort Dongle Spread Spectrum Clock when dongle are used "

+    "and the attached DisplayPort panel should support SSC\r\n"

+

+	

+    Page    "LFP"

+        Link    "Close Table", ".."

+		

+        Combo    $Int_LFP1_Type , "Active Local Flat Panel Configuration", &eDP_Config_List,

+        Help    "This option select Device type. Save the configuration after selecting this field to see display related settings."

+

+       ; #IF	($Int_LFP1_Type == 0x1806)

+		Combo	$Int_LFP1_Port, "Select Output Port:", &LFP_Port_list,

+		Help	"This feature specifies which DVO port the device is "

+		;#ENDIF

+				

+		 Combo	$Int_LFP1_AUX_Channel, "Select AUX Channel:", &Int_eDP_AUX_Channel_List,

+		 Help	"This feature specifies the AUX Channel for int-DisplayPort. "

+			"This field is valid only if integrated DP is selected for Device Type."			

+			

+        ;Combo    $Int_LFP1_Priority, "Primary LFP panel: ", &Yes_No_List,

+        ;Help    "This feature will select if the panel is primary or not. "

+        ;        "The VLV platform has only one panel fitter. So, stretched mode will be only applicable "

+        ;        "to primary panel . In secondary panel only native mode or "

+        ;        "centering modes will be supported."

+		

+        Combo    $bmp_Panel_type, "Select Panel Type:", &Panel_List, 

+        Help    "This feature selects the Local Flat Panel (LFP) the VBIOS "

+                "and driver is to enable.\r\n" 

+                "\r\n"

+                "Note, a valid return from the system BIOS hook 5F40h will "

+                "replace this default value.\r\n"

+                "\r\n"

+                "Default LFP parameter values:\r\n"

+                "\tPANEL #01: 640x480 LVDS\r\n"

+                "\tPANEL #02: 800x600 LVDS\r\n"

+                "\tPANEL #03: 1024x768 LVDS\r\n"

+                "\tPANEL #04: 1280x1024 LVDS\r\n "

+                "\tPANEL #05: 1400x1050 Reduced Blanking LVDS\r\n"

+                "\tPANEL #06: 1400x1050 Non-Reduced Blanking LVDS\r\n"

+                "\tPANEL #07: 1600x1200 LVDS\r\n"

+                "\tPANEL #08: 1280x768 LVDS\r\n"

+                "\tPANEL #09: 1680x1050 LVDS\r\n"

+                "\tPANEL #10: 1920x1200 LVDS\r\n"

+                "\tPANEL #11: Reserved\r\n"

+                "\tPANEL #12: Reserved\r\n "

+                "\tPANEL #13: Reserved\r\n"

+                "\tPANEL #14: 1280x800 LVDS\r\n"

+                "\tPANEL #15: 1280x600 LVDS\r\n"

+                "\tPANEL #16: Reserved"      

+				

+        Combo   $bmp_Panel_EDID, "Local Flat Panel (LFP) EDID Support: ", &Disabled_Enabled_List,

+        Help    "This feature, when enabled, will activate support for a LFP "

+                "with an EDID.  The video BIOS and drivers will load the EDID "

+                "and use its data to set appropriate timing on current panel.  "

+                "If disabled, there will be no attempt to read an EDID and other methods "

+                "will be used to set panel timing."

+                "\r\n\r\nNote:  The backlight data may need to be updated." 

+                "\r\n       The <LFP DDC GPIO pin pair> option on page General"

+                " Features must be correct for platform."

+		

+		Combo    $180_Deg_Rotation_Enable, "Enable 180 Degree Rotation:", &No_Yes_List,

+		Help    "This feature when set to yes, will enable 180 Degree rotation  "

+				"otherwise, the rotation functionality will be disabled."

+		

+		Combo	$Enable_Correction, "Gamma/Brightness/Contrast Correction Enable:", &Disabled_Enabled_List,

+		Help	"This option will allow users to disable/enable Gamma/Brightness/Contrast correction feature for eDP. By default it will be disabled.\r\n"

+				"On enabling one can find option for entering values for Red/Blue/Green Palette Table under LFP Panel configuration.\r\n"

+				"Each Red/Blue/Green Palette Table has 256 entries/rows of 1-byte each. Enter required values in these fields.\r\n"

+				

+    EndPage  

+	

+	

+

+    Page "CRT"

+        Link    "Close Window" , ".."

+

+        Combo    $Int_CRT_Support, "CRT Device:", &Int_CRT_Device_Type_List,

+        Help    "This option select CRT Device."

+

+		Combo	$CRT_DDC_GMBUS_Pin, "Select DDC Bus GPIO Pin Pair:", &GPIO_Pin_List,

+		Help	"This feature specifies the GPIO pin pair "

+			"used as DDC bus by this device.  If this device "

+			"doesn't support DDC bus, this field will be ignored."

+

+    EndPage

+

+    Page "EFP 1"

+        Link    "Close Window" , ".."

+

+        Combo    $Int_EFP1_Type, "Device Type", &Int_EFP_Device_Type_List,

+        Help    "This option specifies the Device Type."

+

+		Combo	$Int_EFP1_Port, "Select Output Port:", &Int_EFP_Port_List,

+		Help	"This feature specifies which DVO port the device is "

+

+		Combo	$Int_EFP1_DDC_Pin, "Select DDC Bus GPIO Pin Pair:", &GPIO_Pin_List,

+		Help	"This feature specifies the GPIO pin pair "

+			"used as DDC bus by this device.  If this device "

+			"doesn't support DDC bus, this field will be ignored."

+		

+		Combo	$Int_EFP1_AUX_Channel, "Select AUX Channel:", &Int_DP_AUX_Channel_List,

+		 Help	"This feature specifies the AUX Channel for int-DisplayPort. "

+		        "This field is valid only if integrated DP is selected for Device Type."	

+		

+        Combo	$Int_EFP1_HDMI_LS_Type, "Select HDMI level shifter configuration:", &Hdmi_LS_List_VLV,

+		Help	"This feature specifies the Level shifter configuration for HDMI. "

+				"This field is valid only if HDMI is selected for Device Type."

+				

+		;Combo    $Int_EFP1_Dongle_Detect, "Select Dongle Detect:", &Disabled_Enabled_List,

+        ;Help    "This option Enables/Disables detection of type of dongle connected to DP port.\r\n"

+        ;       "This option is used only by the GFX driver."

+

+	    Combo	$Int_EFP1_Docked_Port, "Dockable: ", &No_Yes_List,

+		Help	"This field describes if the Display Port is routed through Dock or not."	

+		

+		Link "DisplayPort Redriver Configuration" , "DisplayPort Redriver Configuration"

+		

+		Page	"DisplayPort Redriver Configuration"

+

+			Combo	$EFP1_OnBoard_Redriver_Present, "Non-dock topology:", &No_Yes_List,

+			Help	"This feature will describe if Non-dock topology/OnBoard Redriver DP Link is present or not."

+

+			Combo	$EFP1_OnBoard_PreEmph_Level, "  Pre-Emphasis Level:", &eDP_Link_PreEmp_List,

+			Help	"This feature allows for the selection of "

+					"Pre-emphasis level for the OnBoard redriver DP link.\n"

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+ 

+			Combo	$EFP1_OnBoard_VSwing_Level, "  Voltage Swing Level:", &eDP_Link_VSwing_List,

+			Help	"This feature allows for the selection of "

+					"Voltage Swing level for the OnBoard redriver DP link.\n"

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+					

+			Title	"	"

+

+			Combo	$EFP1_OnDock_Redriver_Present, "Dock Topology: (Mobile only)", &No_Yes_List,

+			Help	"This feature will describe if Dock Topology/Dock Redriver DP Link is present or not.\r\n\r\n"

+					"Note: For Dock Topology to work SBIOS should implement a GOP Policy Protocol to provide the"

+					" docking status of the platform to GOP.\n"

+					

+			Combo	$EFP1_OnDock_PreEmph_Level, "  Pre-Emphasis Level:", &eDP_Link_PreEmp_List,

+			Help	"This feature allows for the selection of "

+					"Pre-emphasis level for the Dock redriver DP link."

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+			Combo	$EFP1_OnDock_VSwing_Level, "  Voltage Swing Level:", &eDP_Link_VSwing_List,

+			Help	"This feature allows for the selection of "

+					"Voltage Swing level for the Dock redriver DP link."

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+		EndPage		; "DisplayPort Redriver Configuration"

+				

+    EndPage

+

+    

+    Page "EFP 2"

+        Link    "Close Window" , ".."

+

+        Combo    $Int_EFP2_Type, "Device Type:", &Int_EFP_Device_Type_List,

+        Help    "This option specifies the Device Type."

+

+		Combo	$Int_EFP2_Port, "Select Output Port:", &Int_EFP_Port_List,

+		Help	"This feature specifies which DVO port the device is "

+		

+		Combo	$Int_EFP2_DDC_Pin, "Select DDC Bus GPIO Pin Pair:", &GPIO_Pin_List,

+		Help	"This feature specifies the GPIO pin pair "

+			"used as DDC bus by this device.  If this device "

+			"doesn't support DDC bus, this field will be ignored."

+		

+		 Combo	$Int_EFP2_AUX_Channel, "Select AUX Channel:", &Int_DP_AUX_Channel_List,

+		 Help	"This feature specifies the AUX Channel for int-DisplayPort. "

+		        "This field is valid only if integrated DP is selected for Device Type."	

+

+        Combo	$Int_EFP2_HDMI_LS_Type, "Select HDMI level shifter configuration:", &Hdmi_LS_List_VLV,

+		Help	"This feature specifies the Level shifter configuration for HDMI. "

+				"This field is valid only if HDMI is selected for Device Type."

+        

+        ;Combo    $Int_EFP2_Dongle_Detect, "Select Dongle Detect:", &Disabled_Enabled_List,

+        ;Help    "This option Enables/Disables detection of type of dongle connected to DP port.\r\n"

+               ; "This option is used only by the GFX driver."

+			   

+	    Combo	$Int_EFP2_Docked_Port, "Dockable: ", &No_Yes_List,

+		Help	"This field describes if the Display Port is routed through Dock or not."	

+		

+		Link "DisplayPort Redriver Configuration" , "DisplayPort Redriver Configuration"

+		

+		Page	"DisplayPort Redriver Configuration"

+

+			Combo	$EFP2_OnBoard_Redriver_Present, "Non-dock topology:", &No_Yes_List,

+			Help	"This feature will describe if Non-dock topology/OnBoard Redriver DP Link is present or not."

+

+			Combo	$EFP2_OnBoard_PreEmph_Level, "  Pre-Emphasis Level:", &eDP_Link_PreEmp_List,

+			Help	"This feature allows for the selection of "

+					"Pre-emphasis level for the OnBoard redriver DP link.\n"

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+ 

+			Combo	$EFP2_OnBoard_VSwing_Level, "  Voltage Swing Level:", &eDP_Link_VSwing_List,

+			Help	"This feature allows for the selection of "

+					"Voltage Swing level for the OnBoard redriver DP link.\n"

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+					

+			Title	"	"

+

+			Combo	$EFP2_OnDock_Redriver_Present, "Dock Topology: (Mobile only)", &No_Yes_List,

+			Help	"This feature will describe if Dock Topology/Dock Redriver DP Link is present or not.\r\n\r\n"

+					"Note: For Dock Topology to work SBIOS should implement a GOP Policy Protocol to provide the"

+					" docking status of the platform to GOP.\n"

+

+			Combo	$EFP2_OnDock_PreEmph_Level, "  Pre-Emphasis Level:", &eDP_Link_PreEmp_List,

+			Help	"This feature allows for the selection of "

+					"Pre-emphasis level for the Dock redriver DP link."

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+			Combo	$EFP2_OnDock_VSwing_Level, "  Voltage Swing Level:", &eDP_Link_VSwing_List,

+			Help	"This feature allows for the selection of "

+					"Voltage Swing level for the Dock redriver DP link."

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+		EndPage		; "DisplayPort Redriver Configuration"

+				

+    EndPage

+    

+    

+EndPage

+

+

+;============================================================================

+; Page - LFP Panel configuration

+;----------------------------------------------------------------------------

+Page "LFP Panel configuration"

+    Link "Panel #1 ", "Panel #1 "

+    Link "Panel #2 ", "Panel #2 "

+    Link "Panel #3 ", "Panel #3 "

+    Link "Panel #4 ", "Panel #4 "

+    Link "Panel #5 ", "Panel #5 "

+    Link "Panel #6 ", "Panel #6 "

+    Link "Panel #7 ", "Panel #7 "

+    Link "Panel #8 ", "Panel #8 "

+    Link "Panel #9 ", "Panel #9 "

+    Link "Panel #10 ", "Panel #10 "

+    Link "Panel #11 ", "Panel #11 "

+    Link "Panel #12 ", "Panel #12 "

+    Link "Panel #13 ", "Panel #13 "

+    Link "Panel #14 ", "Panel #14 "

+    Link "Panel #15 ", "Panel #15 "

+    Link "Panel #16 ", "Panel #16 "

+#if($Enable_Correction == 1)

+	Link "RGB Palette Table ", "RGB Palette Table "

+#endif	

+

+;==============================================================================

+; Page - Panel #1 (640x480) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #1 "

+

+    TitleB  "Common LFP Features" 

+	

+	EditText   $Panel_Name_01, "\tLFP Panel Name:", 

+	Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_01, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_01, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_01, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+

+    Combo    $DPS_Panel_Type_01, "\tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_01, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+

+    Combo    $Blt_Control_01, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+	

+	Combo	$Enable_SSC01, "\teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_01, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+     

+	Combo    $eDP_VswingPreEmph_1, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_01, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+				

+		EditNum    $eDP_Vcc_To_Hpd_Delay_01, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_01, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_01, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_01, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_01, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_01, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_01, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_01, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."        

+        

+        Combo    $eDP_Link_DataRate_01, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_01, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_01, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-Emphasis Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+				         

+        Combo    $eDP_Link_Vswing_Level_01, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+				

+    EndPage

+	

+    #endif

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_01 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_01 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_1, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_01, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_1, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_1, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+		EditNum    $POST_BL_Brightness_01, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_1, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+

+    EndPage

+    

+	

+EndPage

+

+;==============================================================================

+; Page - Panel #2 (800x600) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #2 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_02, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_02, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_02, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_02, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_02, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_02, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_02, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+	

+    Combo	$Enable_SSC02, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_02, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_2, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+	Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_02, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_02, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_02, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_02, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_02, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_02, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_02, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_02, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+		

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_02, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_02, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_02, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_02, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+        Combo    $eDP_Link_Vswing_Level_02, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+    #endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_02 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_02 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_2, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_02, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_2, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_2, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+		EditNum    $POST_BL_Brightness_02, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_2, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+	

+

+EndPage

+

+

+;==============================================================================

+; Page - Panel #3 (1024x768 LVDS) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #3 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_03, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_03, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_03, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_03, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_03, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_03, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_03, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+		   

+			

+    #if ($Int_LFP1_Type == 0x1806)			

+    TitleB   "Integrated eDP Features"	

+			   

+    Combo	$Enable_SSC03, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+      

+

+	Combo    $eDP_Panel_Color_Depth_03, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_3, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+				   

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_03, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+		"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+		"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_03, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_03, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_03, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_03, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_03, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_03, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_03, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_03, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_03, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_03, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_03, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level value for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_03, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+    #endif

+

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_03 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_03 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_3, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_03, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_3, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_3, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_03, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_3, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+        EndPage

+		

+

+EndPage

+

+

+;==============================================================================

+; Page - Panel #4 (1280x1024 LVDS) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #4 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_04, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_04, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_04, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_04, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_04, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_04, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_04, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+

+

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+				   			   

+    Combo	$Enable_SSC04, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+

+	Combo    $eDP_Panel_Color_Depth_04, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_4, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+				   

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+		Combo	$eDP_T3_Optimization_04, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+            "When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+            "When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_04, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_04, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_04, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_04, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_04, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_04, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_04, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_04, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_04, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_04, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_04, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+        Combo    $eDP_Link_Vswing_Level_04, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+    #endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_04 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_04 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_4, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_04, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_4, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_4, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_04, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_4, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+	

+EndPage

+

+

+;==============================================================================

+; Page - Panel #5 (1400x1050 LVDS - Reduced Blank) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #5 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_05, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_05, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_05, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_05, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_05, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_05, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_05, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+    

+   

+    #if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+

+    Combo	$Enable_SSC05, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+        

+	

+

+	Combo    $eDP_Panel_Color_Depth_05, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_5, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+		Combo	$eDP_T3_Optimization_05, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_05, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_05, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_05, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_05, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_05, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_05, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_05, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_05, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_05, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_05, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_05, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_05, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+    #endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_05 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_05 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_5, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_05, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_5, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_5, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_05, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_5, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+	

+

+EndPage

+

+

+;==============================================================================

+; Page - Panel #6 (1400x1050) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #6 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_06, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_06, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_06, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_06, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_06, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_06, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_06, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+		   

+    Combo	$Enable_SSC06, "\teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+      

+	

+	Combo    $eDP_Panel_Color_Depth_06, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_6, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_06, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_06, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_06, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_06, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_06, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_06, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_06, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_06, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+   

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_06, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_06, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_06, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_06, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_06, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_06 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_06 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_6, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_06, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_6, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_6, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_06, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_6, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+	

+

+

+EndPage

+

+

+

+;==============================================================================

+; Page - Panel #7 (1600x1200) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #7 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_07, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_07, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_07, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_07, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_07, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_07, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_07, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+    

+	#if ($Int_LFP1_Type == 0x1806)

+	TitleB   "Integrated eDP Features"

+					  

+    Combo	$Enable_SSC07, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+

+	Combo    $eDP_Panel_Color_Depth_07, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_7, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_07, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_07, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_07, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_07, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_07, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_07, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_07, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_07, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+   

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_07, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_07, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_07, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_07, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_07, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_07 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_07 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_7, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_07, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_7, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_7, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_07, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_7, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+

+;==============================================================================

+; Page - Panel #8 (1280x768) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #8 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_08, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_08, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_08, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_08, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_08, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_08, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_08, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+    		   

+    Combo	$Enable_SSC08, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	

+	Combo    $eDP_Panel_Color_Depth_08, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_8, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_08, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_08, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_08, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_08, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_08, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_08, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_08, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_08, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+   

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_08, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_08, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_08, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_08, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+            

+        Combo    $eDP_Link_Vswing_Level_08, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+		

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_08 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_08 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_8, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_08, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_8, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_8, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+		EditNum    $POST_BL_Brightness_08, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_8, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+

+;==============================================================================

+; Page - Panel #9 (1680x1050) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #9 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_09, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_09, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_09, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_09, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_09, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_09, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_09, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)	

+    TitleB   "Integrated eDP Features"

+    	   

+    Combo	$Enable_SSC09, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_09, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_9, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_09, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+			

+		EditNum    $eDP_Vcc_To_Hpd_Delay_09, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_09, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_09, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_09, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_09, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_09, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_09, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+   

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_09, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_09, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_09, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_09, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+  

+        Combo    $eDP_Link_Vswing_Level_09, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_09 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_09 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_9, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_09, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_9, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_9, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_09, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_9, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+   

+EndPage

+

+

+;==============================================================================

+; Page - Panel #10 (1920x1200) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #10 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_10, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_10, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_10, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_10, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_10, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_10, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_10, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+ 	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"	

+	

+    Combo	$Enable_SSC10, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	Combo    $eDP_Panel_Color_Depth_10, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_10, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+		Combo	$eDP_T3_Optimization_10, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_10, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_10, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_10, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_10, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_10, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_10, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_10, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_10, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_10, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_10, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_10, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+        Combo    $eDP_Link_Vswing_Level_10, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_10 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_10 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_10, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_10, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_10, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_10, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_10, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_10, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+;==============================================================================

+; Page - Panel #11 (Reserved) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #11 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_11, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_11, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_11, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_11, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_11, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_11, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_11, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+	

+	Combo	$Enable_SSC11, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_11, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+			"This feature selects the Vswing Pre-emph settings to be used.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_11, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_11, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_11, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_11, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_11, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_11, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_11, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_11, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+        Combo	$Fast_Link_Training_Supported_11, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+				

+        Combo    $eDP_Link_DataRate_11, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_11, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_11, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_11, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_11 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_11 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_11, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_11, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_11, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_11, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_11, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_11, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+         

+EndPage

+

+;==============================================================================

+; Page - Panel #12 (Reserved) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #12 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_12, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_12, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_12, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_12, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_12, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_12, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_12, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+    

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+	

+	Combo	$Enable_SSC12, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+

+	Combo    $eDP_Panel_Color_Depth_12, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_12, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+			

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_12, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_12, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_12, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_12, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_12, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_12, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_12, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_12, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_12, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_12, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_12, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_12, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_12, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_12 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_12 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_12, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_12, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_12, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_12, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_12, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_12, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+   

+EndPage

+

+;==============================================================================

+; Page - Panel #13 (Reserved) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #13 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_13, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_13, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_13, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_13, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_13, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_13, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_13, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+					   

+	Combo	$Enable_SSC13, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+

+	Combo    $eDP_Panel_Color_Depth_13, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_13, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+

+				   	

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_13, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_13, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_13, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_13, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_13, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_13, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_13, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_13, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_13, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_13, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_13, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_13, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_13, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_13 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_13 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_13, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_13, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_13, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_13, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_13, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_13, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+;==============================================================================

+; Page - Panel #14 (1280x800) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #14 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_14, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_14, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_14, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_14, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_14, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_14, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_14, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"	

+					   

+	Combo	$Enable_SSC14, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_14, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_14, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_14, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+				

+		EditNum    $eDP_Vcc_To_Hpd_Delay_14, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_14, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_14, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_14, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_14, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_14, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_14, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_14, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_14, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_14, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_14, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+            

+        Combo    $eDP_Link_Vswing_Level_14, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+		

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_14 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_14 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_14, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_14, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_14, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_14, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_14, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_14, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+;==============================================================================

+; Page - Panel #15 (1280x600) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #15 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_15, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_15, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_15, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_15, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_15, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_15, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_15, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"	

+		   

+	Combo	$Enable_SSC15, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+

+	Combo    $eDP_Panel_Color_Depth_15, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_15, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_15, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+				

+		EditNum    $eDP_Vcc_To_Hpd_Delay_15, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_15, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_15, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_15, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_15, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_15, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_15, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_15, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_15, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_15, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_15, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+        Combo    $eDP_Link_Vswing_Level_15, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_15 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_15 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_15, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_15, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_15, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_15, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_15, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+

+        EditNum    $PWM_Frequency_15, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+;==============================================================================

+; Page - Panel #16 (Reserved) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #16 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_16, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_16, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_16, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_16, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_16, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_16, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_16, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"	

+	   

+	Combo	$Enable_SSC16, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_16, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_16, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_16, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_16, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_16, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_16, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_16, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_16, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_16, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_16, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_16, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_16, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_16, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_16, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+            

+        Combo    $eDP_Link_Vswing_Level_16, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_16 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_16 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_16, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_16, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_16, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_16, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_16, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_16, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+     

+EndPage

+

+;==============================================================================

+; Page - RGB Palette Table

+;------------------------------------------------------------------------------

+#if($Enable_Correction == 1)

+Page "RGB Palette Table"

+	Link    "Red Palette Table" , 	"Red Palette Table"

+	Link    "Green Palette Table",  "Green Palette Table"

+	Link    "Blue Palette Table", 	"Blue Palette Table"

+	

+	Page "Red Palette Table"

+		Link    "Close Table" , ".."

+		Table    $Red_Table "Red Palette Table",

+			Column "Red", 1 byte, EHEX,

+		Help	"Enter values for Red Palette. Allowed range for entering values in each row is 0-FF (in decimal 0-255). Input format is of type Hexadecimal."

+	EndPage

+	

+	Page "Green Palette Table"

+		Link    "Close Table" , ".."

+		Table    $Green_Table "Green Palette Table",

+			Column "Green", 1 byte, EHEX,

+		Help	"Enter values for Green Palette. Allowed range for entering values in each row is 0-FF (in decimal 0-255). Input format is of type Hexadecimal."

+	EndPage

+	

+	Page "Blue Palette Table"

+		Link    "Close Table" , ".."

+		Table    $Blue_Table "Blue Palette Table",

+			Column "Blue", 1 byte, EHEX,

+		Help	"Enter values for Blue Palette. Allowed range for entering values in each row is 0-FF (in decimal 0-255). Input format is of type Hexadecimal."

+	EndPage

+EndPage	

+#endif

+

+	

+EndPage ; "Integrated LFP Features"

+

+	  

+	  

+;==============================================================================

+; Page - Display Device Toggle Lists

+;------------------------------------------------------------------------------

+

+Page "Display Device Toggle Lists"

+

+    Link "Toggle/Capabilities List 1" , "Display Toggle List 1"

+    Link "Toggle/Capabilities List 2" , "Display Toggle List 2"

+    Link "Toggle/Capabilities List 3" , "Display Toggle List 3"

+    Link "Toggle/Capabilities List 4" , "Display Toggle List 4"

+

+    Page "Display Toggle List 1"

+

+        Link    "Close Table" , ".."

+

+        Table    $Toggle_List1 "Display Toggle List 1",

+            Column "Display Select", 2 bytes, EHEX

+            Column "Reserved", 1 byte, DEC,

+        Help    "These toggle lists are used by the video BIOS and "

+            "device drivers to help support the system BIOS with "

+            "switch display device Hot Keys.  The basic algorithm "

+            "in the current display is found on the list and the "

+            "next settable display combination is set.  If no "

+            "settable display combinations are found the function "

+            "returns fail.\r\n"

+            "\r\n"

+            "The video BIOS will 'OR' the bits of the two pipes "

+            "together to create a single pipe display device.  "

+            "The Intel developed drivers will use the display "

+            "lists as they are.  The divers also use this list to "

+            "get pipe information for ACPI switch display device "

+            "Hot Keys. Four lists are given to allow for multiple "

+            "Hot Keys or creative solutions.\r\n"

+            "\r\n"

+            "Display Select (Refer to VBIOS HLD for valid "

+            "selections):\r\n"

+            "\r\n"

+            "\tPipe A: Bits 7-0, Pipe B: Bits 15-8\r\n"

+            "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+            ;"\tLFP2\tEFP2\tTV2\tCRT2\tLFP\tEFP\tTV\tCRT"

+            "\tLFP2\tEFP2\tEFP3\tCRT2\tLFP\tEFP\tTV\tCRT"

+

+    EndPage

+

+    Page "Display Toggle List 2"

+

+        Link    "Close Table" , ".."

+

+        Table    $Toggle_List2 "Display Toggle List 2",

+            Column "Display Select", 2 bytes, EHEX

+            Column "Reserved", 1 byte, DEC,

+        Help    "These toggle lists are used by the video BIOS and "

+            "device drivers to help support the system BIOS with "

+            "switch display device Hot Keys.  The basic algorithm "

+            "in the current display is found on the list and the "

+            "next settable display combination is set.  If no "

+            "settable display combinations are found the function "

+            "returns fail.\r\n"

+            "\r\n"

+            "The video BIOS will 'OR' the bits of the two pipes "

+            "together to create a single pipe display device.  "

+            "The Intel developed drivers will use the display "

+            "lists as they are.  The divers also use this list to "

+            "get pipe information for ACPI switch display device "

+            "Hot Keys. Four lists are given to allow for multiple "

+            "Hot Keys or creative solutions.\r\n"

+            "\r\n"

+            "Display Select (Refer to VBIOS HLD for valid "

+            "selections):\r\n"

+            "\r\n"

+            "\tPipe A: Bits 7-0, Pipe B: Bits 15-8\r\n"

+            "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+            ;"\tLFP2\tEFP2\tTV2\tCRT2\tLFP\tEFP\tTV\tCRT"

+            "\tLFP2\tEFP2\tEFP3\tCRT2\tLFP\tEFP\tTV\tCRT"

+

+    EndPage

+

+    Page "Display Toggle List 3"

+

+        Link    "Close Table" , ".."

+

+        Table    $Toggle_List3 "Display Toggle List 3",

+            Column "Display Select", 2 bytes, EHEX

+            Column "Reserved", 1 byte, DEC,

+        Help    "These toggle lists are used by the video BIOS and "

+            "device drivers to help support the system BIOS with "

+            "switch display device Hot Keys.  The basic algorithm "

+            "in the current display is found on the list and the "

+            "next settable display combination is set.  If no "

+            "settable display combinations are found the function "

+            "returns fail.\r\n"

+            "\r\n"

+            "The video BIOS will 'OR' the bits of the two pipes "

+            "together to create a single pipe display device.  "

+            "The Intel developed drivers will use the display "

+            "lists as they are.  The divers also use this list to "

+            "get pipe information for ACPI switch display device "

+            "Hot Keys. Four lists are given to allow for multiple "

+            "Hot Keys or creative solutions.\r\n"

+            "\r\n"

+            "Display Select (Refer to VBIOS HLD for valid "

+            "selections):\r\n"

+            "\r\n"

+            "\tPipe A: Bits 7-0, Pipe B: Bits 15-8\r\n"

+            "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+            ;"\tLFP2\tEFP2\tTV2\tCRT2\tLFP\tEFP\tTV\tCRT"

+            "\tLFP2\tEFP2\tEFP3\tCRT2\tLFP\tEFP\tTV\tCRT"

+

+    EndPage

+

+    Page "Display Toggle List 4"

+

+        Link    "Close Table" , ".."

+

+        Table    $Toggle_List4 "Display Toggle List 4",

+            Column "Display Select", 2 bytes, EHEX

+            Column "Reserved", 1 byte, DEC,

+        Help    "These toggle lists are used by the video BIOS and "

+            "device drivers to help support the system BIOS with "

+            "switch display device Hot Keys.  The basic algorithm "

+            "in the current display is found on the list and the "

+            "next settable display combination is set.  If no "

+            "settable display combinations are found the function "

+            "returns fail.\r\n"

+            "\r\n"

+            "The video BIOS will 'OR' the bits of the two pipes "

+            "together to create a single pipe display device.  "

+            "The Intel developed drivers will use the display "

+            "lists as they are.  The divers also use this list to "

+            "get pipe information for ACPI switch display device "

+            "Hot Keys. Four lists are given to allow for multiple "

+            "Hot Keys or creative solutions.\r\n"

+            "\r\n"

+            "Display Select (Refer to VBIOS HLD for valid "

+            "selections):\r\n"

+            "\r\n"

+            "\tPipe A: Bits 7-0, Pipe B: Bits 15-8\r\n"

+            "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+            "\tLFP2\tEFP2\tRsvd\tRsvd\tLFP\tEFP\tRsvd\tCRT"

+    EndPage

+

+EndPage

+

+;==============================================================================

+; Page - Modes Removal Table

+;------------------------------------------------------------------------------

+

+Page "Modes Removal Table"

+

+    Table    $Mode_Rem_Table "Modes Removal Table",

+        Column "X-Resolution", 2 bytes, DEC

+        Column "Y-Resolution", 2 bytes, DEC 

+        Column "BPP", 1 byte, DEC 

+        Column "Refresh Rate", 2 bytes, EHEX 

+        Column "Removal Flags", 1 byte, EHEX 

+        Column "Panel Type", 2 bytes, EHEX,

+    Help    "This feature allows removing support for selected modes "

+        "resolutions.\r\n"

+        "\r\n"

+        "X-Resolution, Y-Resolution, and BPP in Decimal or "

+        "Hexadecimal (0FFFFh or 0FFh means disable all).\r\n"

+        "\r\n"

+        "Refresh Rate bitmap selection (0 = Do not remove, 1 = "

+        "Remove):\r\n"

+        "\r\n"

+        "\tBit           15-9   8   7  6  5  4  3  2  1   0 \r\n"

+        "\tRRate(Hz) Reserved 120 100 85 75 72 70 60 56 43i \r\n"

+        "\r\n"

+        "Removal Flags bitmap selection (0 = Do not remove, 1 = "

+        "Remove):\r\n"

+        "\r\n"

+        "\tBit                   7       6         5     4       3       2       1        0    \r\n"

+        "\tComponent  Rsvd  Rsvd  LFP  EFP  Rsvd  CRT  Driver  VBIOS \r\n"

+        "\r\n"

+        "\tNote: 1) In order to remove mode from both Windows and DOS, "

+        "both Bit 1 and Bit 0 must be set to 1.\r\n"

+        "\r\n"

+        "(Mobile only) Panel Type bitmap selection (0 = Do not "

+        "remove, 1 = Remove if panel is active):/r/n"

+        "\r\n"

+        "\tBit  15 14 13 12 11 10  9 8 7 6 5 4 3 2 1 0 \r\n"

+        "\tType 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 \r\n"

+        "\r\n"

+        "\tNote: Default is to remove a mode resolution from all "

+        "panel types."

+EndPage

+

+

+;==============================================================================

+; Page - Display Configuration Removal Table

+;------------------------------------------------------------------------------

+

+Page "Display Configuration Removal Table"

+

+    Table    $Dev_Removed_Table " Display Device Configuration Removal Table",

+        Column "Pipe B" , 1 byte , BIN

+        Column "Pipe A" , 1 byte , BIN, 

+        

+    Help    "This feature allows blocking selected display configurations "

+        "by the video BIOS and driver.\r\n"

+        "\r\n"

+        "Display Devices are specified in the following bit patterns "

+        "(pipe A and B use the same bit pattern):\r\n"

+        "\r\n"

+        "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+        "\tLFP2\tEFP2\tRsvd\tRsvd\tLFP\tEFP\tRsvd\tCRT\r\n"

+        "\r\n"

+        "Examples:\r\n"

+        "\tPipe B      Pipe A\r\n"

+        "\t00000000b,  00000101b  ; EFP & CRT on Pipe A\r\n"

+        "\t00001100b,  00000001b  ; EFP & LFP on Pipe B and CRT on "

+        "Pipe A"

+EndPage

+

+

+;==============================================================================

+; Page - OEM Customizable Mode 2.0

+;------------------------------------------------------------------------------

+

+Page "OEM Customizable Modes 2.0"

+

+    Link    "OEM Mode 1 Configuration", "OEM Mode #1"

+    Link    "OEM Mode 2 Configuration", "OEM Mode #2"

+    Link    "OEM Mode 3 Configuration", "OEM Mode #3"

+    Link    "OEM Mode 4 Configuration", "OEM Mode #4"

+    Link    "OEM Mode 5 Configuration", "OEM Mode #5"

+    Link    "OEM Mode 6 Configuration", "OEM Mode #6"    

+

+    Page "OEM Mode #1"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 60h / VESA mode 160h"

+        Title    "    16 bpp = VGA mode 61h / VESA mode 161h"

+        Title    "    32 bpp = VGA mode 62h / VESA mode 162h"

+

+        EditNum    $OEM_Mode_Flags1, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+    

+        EditNum    $OEM_Display_Flags1, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+        EditNum    $OEM_Mode_X1, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y1, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color1, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate1, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD1 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+    

+    Page "OEM Mode #2"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 63h / VESA mode 163h"

+        Title    "    16 bpp = VGA mode 64h / VESA mode 164h"

+        Title    "    32 bpp = VGA mode 65h / VESA mode 165h"

+

+            EditNum    $OEM_Mode_Flags2, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+        

+        EditNum    $OEM_Display_Flags2, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X2, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y2, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color2, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate2, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD2 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+

+    Page "OEM Mode #3"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 66h / VESA mode 166h"

+        Title    "    16 bpp = VGA mode 67h / VESA mode 167h"

+        Title    "    32 bpp = VGA mode 68h / VESA mode 168h"

+

+        EditNum    $OEM_Mode_Flags3, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+        

+        EditNum    $OEM_Display_Flags3, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X3, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y3, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color3, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate3, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD3 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+

+    Page "OEM Mode #4"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 69h / VESA mode 169h"

+        Title    "    16 bpp = VGA mode 6Ah / VESA mode 16Ah"

+        Title    "    32 bpp = VGA mode 6Bh / VESA mode 16Bh"

+

+        EditNum    $OEM_Mode_Flags4, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+    

+        EditNum    $OEM_Display_Flags4, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X4, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y4, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color4, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate4, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD4 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+

+    Page "OEM Mode #5"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 6Ch / VESA mode 16Ch"

+        Title    "    16 bpp = VGA mode 6Dh / VESA mode 16Dh"

+        Title    "    32 bpp = VGA mode 6Eh / VESA mode 16Eh"

+

+        EditNum    $OEM_Mode_Flags5, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+    

+        EditNum    $OEM_Display_Flags5, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X5, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y5, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color5, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate5, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD5 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+

+    Page "OEM Mode #6"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 6Fh / VESA mode 16Fh"

+        Title    "    16 bpp = VGA mode 70h / VESA mode 170h"

+        Title    "    32 bpp = VGA mode 71h / VESA mode 171h"

+

+        EditNum    $OEM_Mode_Flags6, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+        

+        EditNum    $OEM_Display_Flags6, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X6, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y6, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color6, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate6, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD6 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+EndPage

+

+

+;============================================================================

+; End of File

+;------------------------------------------------------------------------------

+    

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..6d9f0920760d41f1a425eee15835ac4143fe01e2
GIT binary patch
literal 10624
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf
new file mode 100644
index 0000000..d34bf39
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    CpuPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for CPU module

+#

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = CpuPeim

+  FILE_GUID                  = 01359d99-9446-456d-ada4-50a711c03adb

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimInitializeCpu

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|CpuPeim.efi

+  PEI_DEPEX|CpuPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x27B0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiMasterBootModePpiGuid

+

+

+  gEfiSecPlatformInformationPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.depex
new file mode 100644
index 0000000..4cbdd53
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.depex
@@ -0,0 +1 @@
+�������G����P���ƣ�^�H���3����HN
2��G�,?��f���?n�FO�)�S=Y(mEK�GN��2v؆�}��J&�>����4/4t+p�
�1A�F������k��
a�F{�Z�~�'\������I�K���
�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1b79539126654b4f83681b91fcd448ded483949f
GIT binary patch
literal 14848
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
S&!mN=sj)_UfBpYsf&T@bfgYd$

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.inf
new file mode 100644
index 0000000..da142b4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.inf
@@ -0,0 +1,190 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2013 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#  Module Name:

+#

+#  DigitalThermalSensor.inf

+#

+#  Abstract:

+#

+#  Component description file for the DigitalThermalSensor SMM driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = DigitalThermalSensor

+  FILE_GUID                  = 5122FA7B-17A3-4a8b-89AE-A93ADE92EADF

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallDigitalThermalSensor

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|DigitalThermalSensor.efi

+  SMM_DEPEX|DigitalThermalSensor.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3410

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x3418

+

+

+[Protocols.IA32]

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiSmmIoTrapDispatch2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiMpServiceProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/DTSHookLib/Smm/DTSHookLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/PlatSmmIo/PlatSmmIo.inf

+#  Vlv2TbltDevicePkg/Library/CpuIA32Lib/CpuIA32Lib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/Ksc/Smm/SmmKscLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid                   AND gEfiSmmSwDispatch2ProtocolGuid             AND gEfiGlobalNvsAreaProtocolGuid              AND gEfiMpServiceProtocolGuid                  AND gEfiSmmSxDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.depex
new file mode 100644
index 0000000000000000000000000000000000000000..cce1aa8782d7783ac5038e755ab4a29300bbd39a
GIT binary patch
literal 108
zcmV-y0F(a$;%HVLfrQi%yzu~l$2^FE0vPx~WMX4PPPK4-x-s1(Qv!|%m+Rlp#!0?Q
z*#@Pu4u%5VYvBI}VWviVvRa&e#V1?>x`?Y=;^1^fwyn4l_J|zT0`~Bu6G|rVKJwt+
O#S%0xGy?+z0|N-t=rOkd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d465a82187a61a6dcf1db699b7397c9cd366a1c6
GIT binary patch
literal 12704
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
H1mgN%Uoh)<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf
new file mode 100644
index 0000000..a59b48b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf
@@ -0,0 +1,219 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

+#

+#**/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = Dptf

+  FILE_GUID                  = 1D000AE9-756B-4937-B736-1F3D96A5A8F0

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = DptfDriverEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|Dptf.efi

+  DXE_DEPEX|Dptf.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2D48

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2D40

+

+

+[Protocols.IA32]

+  # CONSUMED

+  gEfiAcpiSdtProtocolGuid

+

+  # CONSUMED

+  gEfiAcpiTableProtocolGuid

+

+  # CONSUMED

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gDxeVlvPlatformPolicyGuid

+

+  gEfiI2cBusProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/I2CLib/I2CLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/I2cStackLib/I2cDriverLib/I2cDriverLib.inf

+

+[Depex.IA32]

+#  (gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiAcpiTableProtocolGuid AND gDxeVlvPlatformPolicyGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  DRIVER_BINDING                =  gSampleDrvDriverBinding

+#  COMPONENT_NAME                =  gSampleDrvComponentName

+#  COMPONENT_NAME2               =  gSampleDrvComponentName2

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..5066c0763638a39ff33c71c6d9759850f116e542
GIT binary patch
literal 162
zcmV;T0A2qAx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
zGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj$Tzs&UD_Wehl)DWogP{EM`bSrSe41h5~henUJ
QxSZsy0|NsC0|NsC2(86PtN;K2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1f7153584303ac31daecf26a42d761b0dfd759c7
GIT binary patch
literal 25088
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
FzX1F6Cma9(

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.inf
new file mode 100644
index 0000000..6ed856b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.inf
@@ -0,0 +1,265 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = GraphicDxeInitSmm

+  FILE_GUID                  = 99EC6206-AA45-4CAE-B630-866755241C8A

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = GraphicDxeInitSmmEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|GraphicDxeInitSmm.efi

+  SMM_DEPEX|GraphicDxeInitSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xffffffff|0x5A08

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5A00

+

+

+[Protocols.IA32]

+  gDxeVlvPlatformPolicyGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+#  MdePkg/Library/SmmIoLib/SmmIoLib.inf

+

+[Depex.IA32]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex
new file mode 100644
index 0000000..9b2767a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
�HN
2��G�,?��f���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..50cfe9408ed8127208c3d13f2fc79e4b5f4f80eb
GIT binary patch
literal 17984
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf
new file mode 100644
index 0000000..0806799
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf
@@ -0,0 +1,247 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#   IspDxe.inf

+#

+#  Abstract:

+#

+#

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = ISPDxe

+  FILE_GUID                  = 5A38B969-CD6A-4814-82E6-559F840BBC58

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = ISPDxeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|ISPDxe.efi

+  DXE_DEPEX|ISPDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4110

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x4118

+

+

+[Protocols.IA32]

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.IA32]

+#  (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiGlobalNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.depex
new file mode 100644
index 0000000..4db74a3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.depex
@@ -0,0 +1 @@
+�n�*��4A�V8T��
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.efi
new file mode 100644
index 0000000000000000000000000000000000000000..db022f8a560918e06a23ccc9b629f19243021987
GIT binary patch
literal 98304
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.inf
new file mode 100644
index 0000000..79dd341
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.inf
@@ -0,0 +1,201 @@
+#/*++

+# This file contains an 'Intel Peripheral Driver' and uniquely

+# identified as "Intel Mobile Silicon Support Module" and is

+# licensed for Intel Mobile CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor. This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#--*/

+#/*++

+#

+# Copyright (c)  2005 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    MemoryInit.inf

+#

+#  Abstract:

+#

+#    Component description file for MemoryInit module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = MemoryInit

+  FILE_GUID                  = D4EE25EA-0B48-43ae-A016-4D6E8B6C43B3

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimMemoryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|MemoryInit.efi

+  PEI_DEPEX|MemoryInit.depex

+

+[PatchPcd.IA32]

+  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|0x00|0x17A30

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|0x01|0x16FF2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|0x01|0x16FF4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|0x01|0x16FF0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|0x01|0x17000

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0x00|0x17A32

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|0x01|0x17008

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|0x02|0x17009

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|0x03|0x16FF3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0x00|0x17A31

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|0x0b|0x16FF1

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|0x0b|0x16FF7

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|0x0c|0x17003

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|0x06|0x17002

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|0x06|0x16FF6

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|0x06|0x16FF5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|0x20|0x17001

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000046|0x17004

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x16FF8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+  gSeCUmaPpiGuid

+

+  gSeCfTPMPpiGuid

+

+  gVlvMmioPolicyPpiGuid

+

+  gPeiCapsulePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiGlobalVariableGuid

+

+  gEfiVlv2VariableGuid

+

+  gEfiMemoryConfigDataGuid

+

+

+  gEfiAcpiVariableGuid

+

+

+  gEfiPlatformInfoGuid

+

+  gEfiSetupVariableGuid

+

+  gEfiMemoryOverwriteControlDataGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/RamDebugLib/RamDebugLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+

+[Depex.IA32]

+#  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Fa$* /Oi /Od /DEFI_MEMORY_INIT /DSMM_SUPPORT  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D LPDDR2_SUPPORT=0 /D DDR3_SUPPORT=1 /D LPDDR3_SUPPORT=0 /D DEBUG_MODE=1 /D SEC_SUPPORT_FLAG /D FTPM_ENABLE /DDDR_DUAL_CHANNEL=1

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.depex
new file mode 100644
index 0000000..1b4e8e1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0��������G����P��>2
�u�*O���Yj���ƣ�^�H���3������J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e0abf0507c9fbfd7bdcd403ae23e393b2f6844e0
GIT binary patch
literal 11264
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.inf
new file mode 100644
index 0000000..c2f27b2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchBiosWriteProtect.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchBiosWriteProtect driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchBiosWriteProtect

+  FILE_GUID                  = B8B8B609-0B6C-4b8c-A731-DE03A6C3F3DC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchBiosWriteProtect

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchBiosWriteProtect.efi

+  SMM_DEPEX|PchBiosWriteProtect.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2800

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2808

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gEfiSmmBase2ProtocolGuid            AND gEfiSmmIchnDispatchProtocolGuid     AND gEfiSmmSwDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmBase2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e1d3f2ba8b4f5a06fa636ff2ba72ac3d2590d37c
GIT binary patch
literal 15040
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.inf
new file mode 100644
index 0000000..ca923c9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.inf
@@ -0,0 +1,97 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchEarlyInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Early Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchEarlyInitPeim

+  FILE_GUID                  = D9F5B28C-9FF1-47D6-B503-3DC23BD345FF

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchEarlyInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PchEarlyInitPeim.efi

+  PEI_DEPEX|PchEarlyInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x640

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..43c341005a38f080bcfc36c46f223797c713b117
GIT binary patch
literal 126
zcmV-^0D=Dksbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0^Mui{|8~FMtiba
goPNb8Tmp^=m+Rlp#!0?Q*#@Pu4u%5*0|NsC2o*v%X8-^I

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1f919ddd9de3ce11af2bff35a05d4e2ccb1d1e7a
GIT binary patch
literal 102496
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.inf
new file mode 100644
index 0000000..472d880
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.inf
@@ -0,0 +1,278 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitDxe

+  FILE_GUID                  = DE23ACEE-CF55-4fb6-AA77-984AB53DE823

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchInitEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitDxe.efi

+  DXE_DEPEX|PchInitDxe.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x16C50

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xf0000043|0x16C58

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.depex
new file mode 100644
index 0000000..0e34453
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.depex
@@ -0,0 +1 @@
+sF4e��K���
a
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..22abdeb78bed52592e160b3590c58991c4e645c5
GIT binary patch
literal 22976
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
HLVx}rzk1^5

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.inf
new file mode 100644
index 0000000..1a508fc
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.inf
@@ -0,0 +1,150 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2016 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitPeim

+  FILE_GUID                  = FD236AE7-0791-48c4-B29E-29BDEEE1A838

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchInitPpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitPeim.efi

+  PEI_DEPEX|PchInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x52B0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x52B8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## CONSUMES

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  ## CONSUMES

+  gPchPlatformPolicyPpiGuid

+

+  gEfiPeiStallPpiGuid

+

+  gPchPeiInitPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## HOB

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPchPlatformPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..89550b75de68aa683924135d77708ae9cd5b8634
GIT binary patch
literal 162
zcmV;T0A2qAsbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0=K`+^x*dWN1fCV
zsPRz2kpgrpaKa3LF+qn$kF~g*<g5bSYvBI}VWviVvRa&e#V1?>jtH0Q-_OQLzDwB#
QrLqo&0|NsC0|NsC2pfM&K>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2f6d5ea0201bbcd1de1d1d2cf341a88ec05a25d2
GIT binary patch
literal 35840
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.inf
new file mode 100644
index 0000000..6a3e4ef
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.inf
@@ -0,0 +1,290 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitSmm

+  FILE_GUID                  = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = PchInitSmmEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitSmm.efi

+  SMM_DEPEX|PchInitSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x7A00

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xffffffff|0x7A08

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..6f989cc9199142f9565a01ca77ca98fc2e1e5354
GIT binary patch
literal 108
zcmV-y0F(a$x4+Ev;P(ATozxJh@le5$0$V^JIhV-VM2PcDNs4dxHUa<yAJZ0n7DK;?
zU}cCqKq~^NWdTdpVIxkUwLZt3E-=*s_VA+<N+$3=^5EXZ5;QL~0(2{I!VG{hL5D_<
OwYZ$*tOElB0|N--m@hg2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..a3810160d89994bc12a4491f2bc1d6fbc71ddbf8
GIT binary patch
literal 26112
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.inf
new file mode 100644
index 0000000..c523356
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.inf
@@ -0,0 +1,251 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchPcieSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for PchPcieSmm driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPcieSmm

+  FILE_GUID                  = acaeaa7a-c039-4424-88da-f42212ea0e55

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchPcieSmm

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchPcieSmm.efi

+  SMM_DEPEX|PchPcieSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5E00

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5E08

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiSmmIchnDispatchExProtocolGuid AND gEfiPchInfoProtocolGuid AND gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..f7e1f3bd74f719ef64ad3002469333823ae662d8
GIT binary patch
literal 9440
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
IkniyPH=<8$%K!iX

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.inf
new file mode 100644
index 0000000..963eb82
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.inf
@@ -0,0 +1,123 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PchPolicyInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchPolicyInitDxe DXE driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPolicyInitDxe

+  FILE_GUID                  = D6AC4AC2-8BC2-4cdd-8776-280E1469DE02

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchPolicyInitDxeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchPolicyInitDxe.efi

+  DXE_DEPEX|PchPolicyInitDxe.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2048

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2040

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.efi
new file mode 100644
index 0000000000000000000000000000000000000000..5cfc8fb17fb6566dc3842e74e7fa65cbf6ce83d7
GIT binary patch
literal 12288
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
Q2&aW#3vb|8rZ4*QKUF@r1^@s6

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf
new file mode 100644
index 0000000..c683936
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchReset.inf

+#

+#  Abstract:

+#

+#    Component description file for Reset module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchReset

+  FILE_GUID                  = F5883FC5-F8EE-4e44-B386-6021FB320C9B

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchReset

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchReset.efi

+  DXE_DEPEX|PchReset.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2C10

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2C18

+

+

+[Protocols.IA32]

+  gEfiResetArchProtocolGuid

+

+  gEfiPchExtendedResetProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiCapsuleVendorGuid

+

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+#  Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2bc94cca082a5c15da4490592ba12c7767a2e1f3
GIT binary patch
literal 25760
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
B!?*wd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.inf
new file mode 100644
index 0000000..92b2912
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.inf
@@ -0,0 +1,257 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  Component description file for Pch Initialization driver

+#

+#  Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchS3SupportDxe

+  FILE_GUID                  = 14537da0-222a-4bbe-9a5c-212a3cbca9ef

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchS3SupportEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchS3SupportDxe.efi

+  DXE_DEPEX|PchS3SupportDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x6020

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xf0000043|0x6028

+

+

+[Protocols.IA32]

+  # PROTOCOL ALWAYS_PRODUCED

+  gEfiPchS3SupportProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiFirmwareVolume2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFileProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFile2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleFileSystemProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiFileInfoGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesLib/DxeServicesLib.inf

+#  MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.depex
new file mode 100644
index 0000000..028e7ac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.depex
@@ -0,0 +1 @@
+5�c�2�I������l�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.efi
new file mode 100644
index 0000000000000000000000000000000000000000..fdbf25f45fbf5c255759286b689c2568a76aee59
GIT binary patch
literal 7616
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.inf
new file mode 100644
index 0000000..42ac7ea
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.inf
@@ -0,0 +1,144 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusArpDisabled.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus module

+#    This version will NOT include ARP support.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusArpDisabled

+  FILE_GUID                  = D82D57AC-99F9-4c7a-B591-BBCF8A0E7FBE

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbusPeim

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusArpDisabled.efi

+  PEI_DEPEX|PchSmbusArpDisabled.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1C80

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1C88

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  gEfiPeiSmbus2PpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiVLVTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPeiSmbusPolicyPpiGuid    AND gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.depex
new file mode 100644
index 0000000..d57f41f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..54701ba8721d3374b42dcc92785ee5eeafd0a885
GIT binary patch
literal 15552
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
DNF_s`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.inf
new file mode 100644
index 0000000..633f339
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.inf
@@ -0,0 +1,214 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusDxe

+  FILE_GUID                  = 99796403-CF03-42ec-A817-7183411D79E2

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbus

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusDxe.efi

+  DXE_DEPEX|PchSmbusDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3A40

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x3A48

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmbusHcProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiSmbusArpMapGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.depex
new file mode 100644
index 0000000000000000000000000000000000000000..a04bdfab3e6c26c51e1b877ec289d7ea324cfbea
GIT binary patch
literal 72
zcmV-O0Jr}Fx4+Ev;P(ATozxJh@le5$0=s^2FB(eJ5t=vvkS9OEO#=4tqZ3Ld@ILb3
e-o+9$FEj#lD{#ULfH6UbMvt|)oaC$n0|N*&`XM<0

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.efi
new file mode 100644
index 0000000000000000000000000000000000000000..346a5c92f5c76cca4cb9c3e03b84833dd5cd2ef2
GIT binary patch
literal 24576
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
V(RSTl-GJ^x-7($g(Bt3x`adK;!qNZ$

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.inf
new file mode 100644
index 0000000..37a8491
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.inf
@@ -0,0 +1,181 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmiDispatcher.inf

+#

+#  Abstract:

+#

+#    Component description file for the Pch SMI Dispatch Handlers module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmiDispatcher

+  FILE_GUID                  = 6BE18C9C-BF61-499e-88EC-5CD57430460C

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchSmmDispatcher

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmiDispatcher.efi

+  SMM_DEPEX|PchSmiDispatcher.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5010

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5018

+

+

+[Protocols.IA32]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiSmmPowerButtonDispatch2ProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..948c2851afd39fe7f884555e6b0d8e3f51ee8bc7
GIT binary patch
literal 10304
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
KP1n<#VE+e=@4B1-

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.inf
new file mode 100644
index 0000000..9b80bda
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.inf
@@ -0,0 +1,139 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiPeim

+  FILE_GUID                  = AA652CB9-2D52-4624-9FAE-D4E58B67CA46

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiPeim.efi

+  PEI_DEPEX|PchSpiPeim.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2700

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2708

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSpiPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.efi
new file mode 100644
index 0000000000000000000000000000000000000000..91908a9176f7d63f7b7c27c753b5611a3257ea85
GIT binary patch
literal 23552
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.inf
new file mode 100644
index 0000000..1766c73
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.inf
@@ -0,0 +1,258 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiRuntime.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI Runtime driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiRuntime

+  FILE_GUID                  = C194C6EA-B68C-4981-B64B-9BD271474B20

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiRuntime.efi

+  DXE_DEPEX|PchSpiRuntime.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5610

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5618

+

+

+[Protocols.IA32]

+  gEfiSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/DxeRuntimePciLibPciExpress/DxeRuntimePciLibPciExpress.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.depex
new file mode 100644
index 0000000..6fa9e99
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.depex
@@ -0,0 +1 @@
+�������G����P����J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..301d91edcf54a71e5758c598a836ca289d64d94d
GIT binary patch
literal 24064
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.inf
new file mode 100644
index 0000000..0129198
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.inf
@@ -0,0 +1,251 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI SMM driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiSmm

+  FILE_GUID                  = 27F4917B-A707-4aad-9676-26DF168CBF0D

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiSmm.efi

+  SMM_DEPEX|PchSpiSmm.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5800

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5808

+

+

+[Protocols.IA32]

+  gEfiSmmSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex
new file mode 100644
index 0000000..05a6cfe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex
@@ -0,0 +1 @@
+H�t���N��ľ���s+�N+1J��V{PD,
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.efi
new file mode 100644
index 0000000000000000000000000000000000000000..9593093310385bcda923d6bbe589bcdd756ada1a
GIT binary patch
literal 5984
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf
new file mode 100644
index 0000000..3711a1d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   PchUsb.inf

+#

+# Abstract:

+#

+#   Component description file for PCH USB PEIM

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchUsb

+  FILE_GUID                  = 3B873142-4252-49eb-BF17-105CD6F3E808

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchUsb

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchUsb.efi

+  PEI_DEPEX|PchUsb.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1660

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1668

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiUsbControllerPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gEfiPeiMasterBootModePpiGuid   AND gPchUsbPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.depex
new file mode 100644
index 0000000000000000000000000000000000000000..631980e0f8ec20e495bafea5b893c3835d38bb13
GIT binary patch
literal 54
zcmV-60LlLXk?~=zU#<>Jx%%j7(ul@S0<z4yCPHu25xnOBfX6(DfdcmMqZ3Ld@ILb3
M-o+9$FEj%K2msm{`Tzg`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.efi
new file mode 100644
index 0000000000000000000000000000000000000000..63784d5e9c846b817142870a7af4b457d3e1c426
GIT binary patch
literal 22336
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
A_W%F@

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.inf
new file mode 100644
index 0000000..a9a1ab6
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.inf
@@ -0,0 +1,254 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    PciHostBridge.inf

+#

+#  Abstract:

+#

+#    Component description file for PciHostBridge module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PciHostBridge

+  FILE_GUID                  = 9fd2360e-6b48-11d5-8e71-00902707b35e

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PciHostBridgeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PciHostBridge.efi

+  DXE_DEPEX|PciHostBridge.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x50E8

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x50E0

+

+

+[Protocols.IA32]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  gEfiMetronomeArchProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+

+[Depex.IA32]

+#  (gEfiCpuIo2ProtocolGuid  AND gEfiMetronomeArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.depex
new file mode 100644
index 0000000..95be042
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.depex
@@ -0,0 +1 @@
+=d��I��B������[�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..a368ba810f3bddd4882a8512e781876073b398c9
GIT binary patch
literal 6208
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
G`Tqcf2DzI6

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.inf
new file mode 100644
index 0000000..d0b04fe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.inf
@@ -0,0 +1,132 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmAccess module

+#

+#  Revision History:

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmAccess

+  FILE_GUID                  = B4E0CDFC-30CD-4b29-A445-B0AA95A532E4

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmAccess.efi

+  PEI_DEPEX|PeiSmmAccess.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1780

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSmmAccessPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiMemoryDiscoveredPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2364ed16b3eec1a06a6aced3ddf5727f08c90d80
GIT binary patch
literal 5120
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.inf
new file mode 100644
index 0000000..6bd7d63
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.inf
@@ -0,0 +1,110 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmControl

+  FILE_GUID                  = FF456B9C-0DC7-4682-9E92-0DE84B6E4067

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlPeiDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmControl.efi

+  PEI_DEPEX|PeiSmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1310

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1318

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.depex
new file mode 100644
index 0000000000000000000000000000000000000000..04a994f69f4355bf96f414fc4c084834ed2e90b8
GIT binary patch
literal 72
zcmV-O0Jr}FsZV5&Q0TEuoZ<^aX^xGg0^(>^9)X0^5xnsLfX6(DfdYuE&nL`A)DfCE
e0FWm?!A%18@S_t-Ch$J;;NHa&G%qv*0|N-S1Rr1k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1b0fc15925df044b22576b95bfef24d64698315e
GIT binary patch
literal 17632
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
EA8N$=3jhEB

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.inf
new file mode 100644
index 0000000..71d8f67
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.inf
@@ -0,0 +1,227 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  1999 - 2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PlatformCpuPolicy.inf

+#

+#  Abstract:

+#

+#    Platform CPU driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PlatformCpuPolicy

+  FILE_GUID                  = cb933912-df8f-4305-b1f9-7b44fa11395c

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PlatformCpuPolicyEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PlatformCpuPolicy.efi

+  DXE_DEPEX|PlatformCpuPolicy.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3C70

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x3C78

+

+

+[Protocols.IA32]

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiPlatformCpuProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiStatusCodeRuntimeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf

+

+[Depex.IA32]

+#  (gEfiFirmwareVolumeBlockProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiResetArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..e076777323483e39152c49173d8ba560c7091749
GIT binary patch
literal 36
scmZR2lo2M^*m6a1&qs!a<2D_QOy52%7WPv6VE5_4y`w@V`X<aA06L)%NdN!<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..01061131b8d1b15f36beccdc9976f7cf01e38cba
GIT binary patch
literal 17472
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf
new file mode 100644
index 0000000..3220d19
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf
@@ -0,0 +1,207 @@
+#/** @file

+#

+#    Component description file a sinngle segment PCI Host Bridge driver.

+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#

+# Copyright (c)  1999 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PnpDxe

+  FILE_GUID                  = CE7CD764-a1d9-44e5-9857-14fefaae96dd

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePnpSetting

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PnpDxe.efi

+  DXE_DEPEX|PnpDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x28D0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x28D8

+

+

+[Protocols.IA32]

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiNormalSetupGuid

+

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gEfiVariableArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.depex
new file mode 100644
index 0000000..df1f82f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
��������G����P���ƣ�^�H���3����HN
2��G�,?��f�����c�,E�9���&^��J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.efi
new file mode 100644
index 0000000000000000000000000000000000000000..3eac443d86e3349a72e807ea00c723ed13d4d39f
GIT binary patch
literal 36352
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
J(EpGA{twc??P>r3

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.inf
new file mode 100644
index 0000000..d9ac1f5
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.inf
@@ -0,0 +1,270 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#Module Name:

+#

+#  PowerManagement.inf

+#

+#Abstract:

+#

+#  Component description file for Power Management module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PowerManagement2

+  FILE_GUID                  = 41E89AB0-BD3D-44b6-A431-E4836EFBF2CB

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePowerManagement

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PowerManagement2.efi

+  SMM_DEPEX|PowerManagement2.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x8208

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x8200

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gPpmPlatformPolicyProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gPowerManagementAcpiTableStorageGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/IstApplet/Smm/IstApplet.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/ValleyView/Smm/MchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/SouthCluster/Smm/IchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/Silvermont/Smm/SilvermontPpmLib.inf

+

+[Depex.IA32]

+#  (gEfiAcpiTableProtocolGuid        AND gEfiAcpiSdtProtocolGuid          AND gEfiSmmBase2ProtocolGuid         AND gEfiSmmSwDispatch2ProtocolGuid   AND gEfiGlobalNvsAreaProtocolGuid    AND gPpmPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.bin b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.bin
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.com b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.com
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4a4275b3d3b3334bf83022ade05eebbec60cfb5f
GIT binary patch
literal 12128
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
L->wIdG1vbAR}0>n

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.inf
new file mode 100644
index 0000000..d19a159
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.inf
@@ -0,0 +1,204 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   SataController.inf

+#

+# Abstract:

+#

+#   Component description file for PCH SATA controller Driver module.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SataController

+  FILE_GUID                  = BB65942B-521F-4ec3-BAF9-A92540CF60D2

+  MODULE_TYPE                = UEFI_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializeSataControllerDriver

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|SataController.efi

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2D40

+

+

+[Protocols.IA32]

+  gEfiIdeControllerInitProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gSataControllerDriverGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+

+[Depex.IA32]

+#  (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex
new file mode 100644
index 0000000..3ec1c91
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex
@@ -0,0 +1 @@
+�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.efi
new file mode 100644
index 0000000000000000000000000000000000000000..739908d9501ccb9c90adf378740d93f23cfd4abf
GIT binary patch
literal 7456
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf
new file mode 100644
index 0000000..c3d066f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf
@@ -0,0 +1,116 @@
+#/*++

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    SeCUma.inf

+#

+#  Abstract:

+#

+#    Component description file for SeCUma module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SeCUma

+  FILE_GUID                  = E4CEDF93-672A-4782-A7FD-5FC6D239377D

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SeCUmaEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SeCUma.efi

+  PEI_DEPEX|SeCUma.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1C20

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gSeCUmaPpiGuid

+

+  gPeiSeCPlatformPolicyPpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.efi
new file mode 100644
index 0000000000000000000000000000000000000000..a4eb0be8a5e11db838efa06d00b175ed18c00586
GIT binary patch
literal 8864
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf
new file mode 100644
index 0000000..0d4948f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf
@@ -0,0 +1,130 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  SecCore module that implements the SEC phase.

+#  NOTE: This module was replaced by UefiCpuPkg/SecCore/SecCore.inf

+#

+#  This is the first module taking control of the platform upon power-on/reset.

+#  It implements the first phase of the security phase. The entry point function is

+#  _ModuleEntryPoint in PlatformSecLib. The entry point function will switch to

+#  protected mode, setup flat memory model, enable temporary memory and

+#  call into SecStartup().

+#

+# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>

+#

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SecCore

+  FILE_GUID                  = 1BA0062E-C779-4582-8566-336AE8F78F09

+  MODULE_TYPE                = SEC

+  VERSION_STRING             = 1.0

+  MODULE_UNI_FILE            = SecCore.uni

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  BIN|ResetVec.bin

+  PE32|SecCore.efi

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2188

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## PRODUCES

+  gEfiSecPlatformInformationPpiGuid

+

+  ## PRODUCES

+  gEfiTemporaryRamDonePpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/PlatformHookSerialLib/PlatformHookSerialInitLib.inf

+#  Vlv2TbltDevicePkg/Library/PlatformCmosLib/PlatformCmosLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  DeviceCommonPkg/Library/CmosAccessLib/CmosAccessLib.inf

+#  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  Vlv2TbltDevicePkg/Library/PlatformSecLib/PlatformSecLib.inf

+#  MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf

+#  MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+

+[Depex.IA32]

+

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.depex
new file mode 100644
index 0000000000000000000000000000000000000000..b1a5ceab3b2eb73466f120b95a1915810dd0401f
GIT binary patch
literal 36
scmZSDU00wl<#k1HmIcEEb^C+9Oy52%7WPv6VE5_4y`w@V`X<aA00;~YUjP6A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b4135828b2b34ce38bd9fe8a126070d2ccac8dfa
GIT binary patch
literal 10336
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
V&?syY9D+;m2pxhbbX^p{{|7=cHTM7j

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.inf
new file mode 100644
index 0000000..2d56330
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.inf
@@ -0,0 +1,210 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for the SmmAccess module

+#    {1323C7F8-DAD5-4126-A54B-7A05FBF4151}

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmAccess

+  FILE_GUID                  = 326E9CC6-9839-4885-B2ED-275903B668E1

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|SmmAccess.efi

+  DXE_DEPEX|SmmAccess.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2630

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2638

+

+

+[Protocols.IA32]

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..3d7c0f4253e68d3b0346df94b62216469f1c36a9
GIT binary patch
literal 11776
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.inf
new file mode 100644
index 0000000..262dfd4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.inf
@@ -0,0 +1,129 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2011 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmControl

+  FILE_GUID                  = DD787473-07CE-4c63-82CE-930B33F39C09

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|SmmControl.efi

+  DXE_DEPEX|SmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2A00

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2A08

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..4bb6074e530b68b05103418ff7a5cc63d3cbbbef
GIT binary patch
literal 126
zcmV-^0D=Dkx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
gGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj%K0|NsC2pp3&(f|Me

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b9d8eaa0745668fa3fe26fb93792d84a300968fb
GIT binary patch
literal 26656
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
I{>bP50Gu++MgRZ+

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.inf
new file mode 100644
index 0000000..f1ea1ca
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.inf
@@ -0,0 +1,259 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitDxe

+  FILE_GUID                  = 93C81A74-B648-4f7f-925E-E4A0CDCC776D

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitDxe.efi

+  DXE_DEPEX|VlvInitDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5AB0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5AB8

+

+

+[Protocols.IA32]

+  gDxeVlvPlatformPolicyGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+

+  gIgdOpRegionProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gBmpImageGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.depex
new file mode 100644
index 0000000..00c2f8d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.depex
@@ -0,0 +1 @@
+²�}�"rC�,�2Ӧ�;���\�J���B�.
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..dc3944f7b2b19c0c364a26349c84e937b8ee5883
GIT binary patch
literal 9120
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
F{{i6Vgu4I$

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.inf
new file mode 100644
index 0000000..d95c598
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.inf
@@ -0,0 +1,116 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the VLV Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitPeim

+  FILE_GUID                  = 24169E35-2454-4940-92BC-82321A2C7562

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitPeiEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitPeim.efi

+  PEI_DEPEX|VlvInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2260

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gVlvPolicyPpiGuid

+

+  gVlvPeiInitPpiGuid

+

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  gVlvPolicyPpiGuid     AND gPchPeiInitPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..bd23d618afefc089f9d05106958bc03d862aa62e
GIT binary patch
literal 6080
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
G`TQS5A=ugg

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.inf
new file mode 100644
index 0000000..48f7908
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.inf
@@ -0,0 +1,123 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    CpuPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for CPU module

+#

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = CpuPeim

+  FILE_GUID                  = 01359d99-9446-456d-ada4-50a711c03adb

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimInitializeCpu

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|CpuPeim.efi

+  PEI_DEPEX|CpuPeim.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiMasterBootModePpiGuid

+

+

+  gEfiSecPlatformInformationPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.depex
new file mode 100644
index 0000000..4cbdd53
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.depex
@@ -0,0 +1 @@
+�������G����P���ƣ�^�H���3����HN
2��G�,?��f���?n�FO�)�S=Y(mEK�GN��2v؆�}��J&�>����4/4t+p�
�1A�F������k��
a�F{�Z�~�'\������I�K���
�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.efi
new file mode 100644
index 0000000000000000000000000000000000000000..aa1d1570a8f7f290a84c4863268a0eb68365f1f5
GIT binary patch
literal 6144
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
Ho8Er_(>dG+

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.inf
new file mode 100644
index 0000000..a3ea3da
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.inf
@@ -0,0 +1,182 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2013 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#  Module Name:

+#

+#  DigitalThermalSensor.inf

+#

+#  Abstract:

+#

+#  Component description file for the DigitalThermalSensor SMM driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = DigitalThermalSensor

+  FILE_GUID                  = 5122FA7B-17A3-4a8b-89AE-A93ADE92EADF

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallDigitalThermalSensor

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|DigitalThermalSensor.efi

+  SMM_DEPEX|DigitalThermalSensor.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1010

+

+

+[Protocols.IA32]

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiSmmIoTrapDispatch2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiMpServiceProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/DTSHookLib/Smm/DTSHookLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/PlatSmmIo/PlatSmmIo.inf

+#  Vlv2TbltDevicePkg/Library/CpuIA32Lib/CpuIA32Lib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/Ksc/Smm/SmmKscLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid                   AND gEfiSmmSwDispatch2ProtocolGuid             AND gEfiGlobalNvsAreaProtocolGuid              AND gEfiMpServiceProtocolGuid                  AND gEfiSmmSxDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.depex
new file mode 100644
index 0000000000000000000000000000000000000000..cce1aa8782d7783ac5038e755ab4a29300bbd39a
GIT binary patch
literal 108
zcmV-y0F(a$;%HVLfrQi%yzu~l$2^FE0vPx~WMX4PPPK4-x-s1(Qv!|%m+Rlp#!0?Q
z*#@Pu4u%5VYvBI}VWviVvRa&e#V1?>x`?Y=;^1^fwyn4l_J|zT0`~Bu6G|rVKJwt+
O#S%0xGy?+z0|N-t=rOkd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.efi
new file mode 100644
index 0000000000000000000000000000000000000000..031e5ddb43d697d0d436d86b6f26d42e4e6ff38e
GIT binary patch
literal 3872
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf
new file mode 100644
index 0000000..113299d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf
@@ -0,0 +1,213 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

+#

+#**/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = Dptf

+  FILE_GUID                  = 1D000AE9-756B-4937-B736-1F3D96A5A8F0

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = DptfDriverEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|Dptf.efi

+  DXE_DEPEX|Dptf.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xB40

+

+

+[Protocols.IA32]

+  # CONSUMED

+  gEfiAcpiSdtProtocolGuid

+

+  # CONSUMED

+  gEfiAcpiTableProtocolGuid

+

+  # CONSUMED

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gDxeVlvPlatformPolicyGuid

+

+  gEfiI2cBusProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/I2CLib/I2CLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/I2cStackLib/I2cDriverLib/I2cDriverLib.inf

+

+[Depex.IA32]

+#  (gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiAcpiTableProtocolGuid AND gDxeVlvPlatformPolicyGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  DRIVER_BINDING                =  gSampleDrvDriverBinding

+#  COMPONENT_NAME                =  gSampleDrvComponentName

+#  COMPONENT_NAME2               =  gSampleDrvComponentName2

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..5066c0763638a39ff33c71c6d9759850f116e542
GIT binary patch
literal 162
zcmV;T0A2qAx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
zGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj$Tzs&UD_Wehl)DWogP{EM`bSrSe41h5~henUJ
QxSZsy0|NsC0|NsC2(86PtN;K2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1fc80255dd734f38cef7e260fe2d8326b7b9b7c5
GIT binary patch
literal 9216
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
VaH;?d5p?)SiTrM)@cYv5e*o^9)=~ff

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.inf
new file mode 100644
index 0000000..f2b4db6
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.inf
@@ -0,0 +1,259 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = GraphicDxeInitSmm

+  FILE_GUID                  = 99EC6206-AA45-4CAE-B630-866755241C8A

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = GraphicDxeInitSmmEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|GraphicDxeInitSmm.efi

+  SMM_DEPEX|GraphicDxeInitSmm.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1E00

+

+

+[Protocols.IA32]

+  gDxeVlvPlatformPolicyGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+#  MdePkg/Library/SmmIoLib/SmmIoLib.inf

+

+[Depex.IA32]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.depex
new file mode 100644
index 0000000..9b2767a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
�HN
2��G�,?��f���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..075a559246893a37c7d8aeb76c8dfc5dc89a8944
GIT binary patch
literal 6144
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf
new file mode 100644
index 0000000..500ea05
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf
@@ -0,0 +1,241 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#   IspDxe.inf

+#

+#  Abstract:

+#

+#

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = ISPDxe

+  FILE_GUID                  = 5A38B969-CD6A-4814-82E6-559F840BBC58

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = ISPDxeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|ISPDxe.efi

+  DXE_DEPEX|ISPDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x13F0

+

+

+[Protocols.IA32]

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.IA32]

+#  (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiGlobalNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.depex
new file mode 100644
index 0000000..4db74a3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.depex
@@ -0,0 +1 @@
+�n�*��4A�V8T��
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.efi
new file mode 100644
index 0000000000000000000000000000000000000000..721187cc03f1f27f44a7e7e7a8c4ffb190e39377
GIT binary patch
literal 93888
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%0A2L>vd2&9Oyo1{?#
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
PW9x<Vq4esk+N}Qz-Rz35

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.inf
new file mode 100644
index 0000000..ce85f09
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.inf
@@ -0,0 +1,196 @@
+#/*++

+# This file contains an 'Intel Peripheral Driver' and uniquely

+# identified as "Intel Mobile Silicon Support Module" and is

+# licensed for Intel Mobile CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor. This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#--*/

+#/*++

+#

+# Copyright (c)  2005 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    MemoryInit.inf

+#

+#  Abstract:

+#

+#    Component description file for MemoryInit module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = MemoryInit

+  FILE_GUID                  = D4EE25EA-0B48-43ae-A016-4D6E8B6C43B3

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimMemoryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|MemoryInit.efi

+  PEI_DEPEX|MemoryInit.depex

+

+[PatchPcd.IA32]

+  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|0x00|0x1693C

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|0x01|0x124D2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|0x01|0x124D4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|0x01|0x124D0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|0x01|0x124E0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0x00|0x1693E

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|0x01|0x124E4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|0x02|0x124E5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|0x03|0x124D3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0x00|0x1693D

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|0x0b|0x124D1

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|0x0b|0x124D7

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|0x0c|0x124E3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|0x06|0x124E2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|0x06|0x124D6

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|0x06|0x124D5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|0x20|0x124E1

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x124D8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+  gSeCUmaPpiGuid

+

+  gSeCfTPMPpiGuid

+

+  gVlvMmioPolicyPpiGuid

+

+  gPeiCapsulePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiGlobalVariableGuid

+

+  gEfiVlv2VariableGuid

+

+  gEfiMemoryConfigDataGuid

+

+

+  gEfiAcpiVariableGuid

+

+

+  gEfiPlatformInfoGuid

+

+  gEfiSetupVariableGuid

+

+  gEfiMemoryOverwriteControlDataGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/RamDebugLib/RamDebugLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+

+[Depex.IA32]

+#  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Fa$* /Oi /Od /DEFI_MEMORY_INIT /DSMM_SUPPORT  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D LPDDR2_SUPPORT=0 /D DDR3_SUPPORT=1 /D LPDDR3_SUPPORT=0 /D SEC_SUPPORT_FLAG /D FTPM_ENABLE /DDDR_DUAL_CHANNEL=1

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.depex
new file mode 100644
index 0000000..1b4e8e1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0��������G����P��>2
�u�*O���Yj���ƣ�^�H���3������J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.efi
new file mode 100644
index 0000000000000000000000000000000000000000..fa71de44a19eef51c06869e976f52233d27a93ca
GIT binary patch
literal 2560
zcmeHIUr19?7(cTaSDd<sK_Wd&S|uUloL1mN%Fr%Ksa?Z{6BJ#JF2f4u9oQ&RZiC%U
zD|-wo8Y?i6=pn18n#|G%pTdNo2Ym=e_!5X1EN|a;?}F(|!``$H?)m=xzHh&C?z!JO
zddZIE?T#z|y-*SfX}9d#(rB5K)RtQ+2`PcFHJ`GB#>ZLUV}84MA&{>r-=53+*rsTq
zgq#NOfRm7eMHl@Y=vIQG3c!{uupptrz2?iEgvjopL1hqp2jU=L;P!(q5HBI~?r?DU
z>P3?)0nP?aC;)*8xaO^q|K4snfeU<<i$bD9P=f+V-EtDbMO#<uIv63sy{F`Auu@~N
z=o3=}vw|E4Ptql;I_t>d_3O*{-ra%NT<KF-;lhpivdy6Uv2>(1dk+w?^tCdz5wqk*
zX$o~n&tv>abo(>B;w9+Y<2k^%HsglQ0K2X(wQ&+ML}@W0YA~0F*_<XUA?BonxG^Vg
z;Fl{U5iV=+aY(v7IR%a$5lp_-o;3f~hi%nW8<hE^ByP>K?vv{fXKYcOwZ+n-H@TSO
zUe`JilrXO#kWE@)k+Hdtk9Ut%k;7zD*R_)vNg;Womn?u~HcH09l#zf>Zh%#bZ0M3=
z_N{vDwP@lR&<5&jl0j2`Y;sm->pbaxB&sVeYqo~KQTn;VrPXL*s}>cskWCBNwKEP+
zT3^ZZ^!D%?9=7tRz(Y13u<HQ_R1`1E2yHrE{vk4P?A+AdPyUcSw(#ct!rJosuhvJ4
z_Q@a8%>Cy<%h{#DL!D2io8}(6>F2K>Q`O)5=i8Dq(;n@o_Mn)bs{qgdJg=PaY@0<8
zE?Qb!y4!K~;S4n9q3iM$qu2?r9E?A+PXfOl{jfO<@lrRS9~c<{W$+k4-^jb7(dba%
z5+?SNz&YaoR3$w?Yv~bsg0|64I!qO+Qcj=I7j%(+p)1tF%Ggm>&lqcAZLEWxXMHTd
PWEN)$wwI1;x9#;eSH1a7

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.inf
new file mode 100644
index 0000000..b3e8c5d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.inf
@@ -0,0 +1,121 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchBiosWriteProtect.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchBiosWriteProtect driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchBiosWriteProtect

+  FILE_GUID                  = B8B8B609-0B6C-4b8c-A731-DE03A6C3F3DC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchBiosWriteProtect

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchBiosWriteProtect.efi

+  SMM_DEPEX|PchBiosWriteProtect.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x600

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gEfiSmmBase2ProtocolGuid            AND gEfiSmmIchnDispatchProtocolGuid     AND gEfiSmmSwDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmBase2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..16d8e503f18c112a080a7c865962ff3396eb53b2
GIT binary patch
literal 14752
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
F{0GLHl~Vu!

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.inf
new file mode 100644
index 0000000..685a680
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.inf
@@ -0,0 +1,97 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchEarlyInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Early Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchEarlyInitPeim

+  FILE_GUID                  = D9F5B28C-9FF1-47D6-B503-3DC23BD345FF

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchEarlyInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PchEarlyInitPeim.efi

+  PEI_DEPEX|PchEarlyInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4A0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..43c341005a38f080bcfc36c46f223797c713b117
GIT binary patch
literal 126
zcmV-^0D=Dksbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0^Mui{|8~FMtiba
goPNb8Tmp^=m+Rlp#!0?Q*#@Pu4u%5*0|NsC2o*v%X8-^I

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..3a7ea1d04c1ff16c9ae1cd1f8c232075d83483f2
GIT binary patch
literal 61536
zcmdSC3wTu3)dqa#l4M8*W`IFPjXIja#)>pD(FPOk1d<SI#0eo2qH@uX#{5%1wK#*=
zLYa7ym@~&wd-JQks@ShsZHu;FxL6@WFbPmDf_GYtcsm%8;3b5Mng3mTpEEfp2|;c9
zKhMwekU3}Xwb$Nz?X}lld+oi}x%PVDEB{;jl}mp0f`L*&s4!U!2)YIH`B|oMLUgwv
zw4KYdR+<IDga41bz~4Riq5nhwE$-!Tl%6#-Q+;=yB7LOfNB$`Yf14l({(lHU_DBF<
zF>PA-JIli;OMRq%X}@}O9zm#|w&bSpO-SrTXIS6ugEY`!{esXnZRvMzz5Ty<TdB=$
zXfyrl{{e1hutpAho$?B=U7qK4#Y@ge&KS7UI-~ziyYzy1z>+v<{^WN(8B#}l#pLAY
z(hHwFeo`*++7~Ts|2zLzb7>n2+vEzbUD^(4l&SgTNdW#~{-SoEq#SEdaid;5*_7Mq
zp|`2;?lk2Of5l_R!ghIP(dxf}obt>9X>1!kjP1p!N|V;(d80q-5LR!+)1#jvF=idV
z#vE~R2$r(mY!!q$$vS>x7l1Y>`vpN+_-Fjt`HUbOOl%i~YWYL)oqq8{x46V>72+jc
zTUB+iCV&U8G}Z~41Rka8LqdH&3Wv<e2iKsH;#OBvo1^6{lOXu^OE-G6XWZ!ZIGRr&
z3ng6vkRh8DNap{Xl}`rdBh9lx7)U1NbEpU6R(s5Ea<nQfCEkgwv59wGa^uCl=#u=m
zi%ak`ML3yEN@z*WF=SLw#$PWE(9cgVo`;{DBS@Z44=>c=iHPA?*F}%zcx-qpniP=G
zHbua1pt5o<DDDl`B*We!Mrm<tcF1<Ua_EnO(9{;Lja7Ij%IHc+2y_UhmU2_4AH)+(
z)b9E=v^Z}4IVVQ)L7M#HR_840dLecFp0s2#$$J|1x|4ytT3_3ug$r(w-(AqYehfIa
z=ZN@W?xWOkc`S_;s0`jJs*#V!7v{?rP~R<}t1fwVcAwx3+d50UZVzga)8q5J?kv2C
z72fQmln(l42SP$HWUf`NZ^h`!WggHH9Y@iIw~~tlq0etJh0`0h2~isSIUaep^1U<A
zhE)Zo$c1uQ`B*`)2vS*jXIYVB;O(SbR^n)FlgdhXmWQ&UtFACb@|8dR3H|K1toS;J
z5I_}TBDYR{;n0-io5|$i_0G;c1F|p$J^utK1<PudaI3eZ5}n(vT>1!_KhIl^7N3h2
z%DV%~cFf}F3hx<0ZN%14;dKd+F3Q!clJu2l$+N9}LV9EZG2g~RXVRc4B1WgS7Bp}H
z<4jZoj76Nsb}M^+gG_n>ZVc<Zpi=oL<1C&=Nde{En=y3ryxAx}5!I=W-FKxPXZV2?
zRQ2^q7TJQL*@0jck#{BLAUK^N+oPtvPxBI;LWh9fh5r?mz-)EVNR%#SBhmJRfQb<<
zMZt+3_-_gX>mg(YeA_zG=+~s=FwFM#9$_+#x@WZ$$pH5Nk{+q{<X>1<fP4Xni_F|W
zWqrjsOygHy2i4wtQtRo|jnhFF(5mJs23NqjG`MLJ#9uIEt2aSpCIk84cVNkvUk2zQ
zl&-BM4i&fNwu>Ly<zf$$09CPClVe@L>{w^RAby;9&zW_krmksQWK3PtUPmKDf#7KE
z*?iMJK}futrg3SkCK;P;ihYyjvZHmoWv8RHBc9!*lSGNP?UvUzG)IX{7EH>z!i1v<
zZ$k9=Ig!g7`y$ihGQEOc6HIk7+R#SR0Z)~96uV4yk|`uq`nDA-??HBf&OK=ai`Jk{
zOFO1S092Fmlun)vHk%-X&#%MCx;ScJK>uBUWN3cN;lxghc&pcKax{Gtj0}qS+CUR~
zI|QR#oF{&W>1e8QG-9R+@zPJ9Er1jZ#7p}%u?R*nh{Oj0SK~|0SlRDrZoqReUV1Vh
zmwsB6%wMlbLZEMITfQh>ssPi6_}`2F?*Qs#AQ>nC$NBo?(%!;mVXq)WE|E(=ENr&Y
z;{|f5QrK*x$I0<#JASE5$P_9<=aYeKloUIh4Fik8eM_I4UAVG;X~V)r=nqLDj4@=6
zqxE~Hn$UR*67RVr^g5Iwzp+5RlEe}d!Il$sa)wI!^+|}$x*4EY_>MYxcDkCp#u>gT
zeqDadL}T4T6rIQ^s?2#BOHhgTJQ|xT9IX(<)*0F`O4b>S_B2|PecLRZ#b~mUjS_&a
zOWf*p*-+F)I2+p{TN>I)GKhyTDhn|x4IL!P)L|+&43qewvr2x!x4&Ax)teoR%{0|W
znCreIVOlQ$i@alBcT=h0XvzUq<e7FyE989QEn7pP8^aSTDadfN_F9hUS@k`;<w$%^
zg=``Y9Ap}rl%cg?gZqDqk}TK5ay>)<%B`T>IrCW7RF*YW%es_hak7;&vX!f3o6K_j
zDV{Iqe5z&_D@U<j$L~k~F>};uF^_}H;~0vS7a7Qd01>yAr=Z*%%B?~DiJ;~z8L8nv
zK^CMMM1))Hbj}i!e#bqVuv8y~!s!INUCznlXr1Ss*pLWE$8vT_9B^4)kj;!tW_51O
zB|^*sJ`Aijo18S8Dl6qlCm}zoVy`vrjpVS&P)`YS>us1+$p<05s1T;cT^ur2YJ02>
z0CK5)bv=G#rOwB0W$&)lcd&Q&V`282{aA$kdLCQG^1Z>;%ke;S4|BEUoF#Y()VD!s
z&Fx704qmd86XfcXSi<FN`{iEcaq54^LN-xY!^96=qz6H~=OzOsw8msVM+y)rM%mij
zuO2e@UqJ_aeKVi{IGVTNnNbAt$5WlmUu&5BjuyyYT6A1o8FI7+Ol$%|U37t}@@!kI
zJUy21T8d1OEBg}GNP&Fc#D55xg4{UqRs4wE16c`)KO^Twp0kJLw6Pp|CTz+z7(;n>
z9>iE=Dq7^xT3^2wvtCd2amtIc09xVoC{LFNLRleo<Q|fWT$d5Ix@a7sE~+GQgFq3R
zN*_0o#+^bwg0}b~ktaC=ZE`esaq`&pnxauYI$9nF4Avy4pxnNRRJ7$j-6U;DkUm%`
zo2CeDOi5(Rbf7Y1s@yQE?CLz_zflG)Cf!@P68i!6a3WoO`1Mcl5Jr{@U~(CwPL6(T
zhfya@`LI|m{MNB#a&{s0<DLR0j7Yv}iu622oGL~drW<>qBzjtIB(0D!lAj3W=Y*;n
zNvr-08$6ULfKFZHX#NM@Hj~<nQcfaQ$xy|b%^63_CIF(7PDg98Dbel1q@2(6O+4Jl
zd23Qi&a(_!3%D|h)j)2XPMWu-a?gVnJ)JAmZBs~(29^pWky<X_H=SwUok%Os*)3Ig
z^JITMUffiORB!w+ZM|_i)7H_b90Dfxa|e{Gk7Ex2)~}TVkj67h<+<hG?XoMsdyLgm
zf-GmWz_j#hvVW=^u*L)u=n&_wroCY-4q*qB)$ev?DiIFvfzIysZ3|hiM?<{6B%pJd
z;D^|6k1R#56SFuQ|J`zxJ$4PY95YRF_zGvh(P|DPmzGl#@LY05MlhgMp(u!$2XH_B
z7s!?N*ww5E2M>G026*oY^rgbPMBM6!{LH1c6hnfFADE~$)D}n6ZQv2Y*^t-@j;_R7
zA)BDEMFnUykd>4FfGSsb=V2J*cX{RXAe4J#Td~=ymC}{|Cs>QHxZ8ofKrZ%TCWo&C
zl`5D*o<|Bfh)Y}*&{mr=6pE#zh~4Si*1}LKf7T%)B<AqBXw^JwPt0UDwU}Zi-!?@u
zKw*kZ?GvowGugU9pkkMWH+wMvsmb>@qEpb)Se}*Vm8f}hoS2`h(0z&JQ*STQ<Ijy2
z2$A#Ra~AXRQ<8@Xl)%h-Ff`T{F2-(g<1?u1BQz?{x2>V$BwmPE%1hXiqA49EUI(p0
z<M1%f13lm2+XjLJ6`$Ii>&kgOpso<*_51=wK?O$LV(dPgksv5LKYmvMQg2L~x7Hz8
zx_rsX8jKn1x||MOl#k3pUTv_3?ZpCwDIEjhM-%*knxMQ#`2+7oE|yg#Tqy{%*hHqe
zjZI^b<DQGKzePPxWl<j&vTOljYvrSE?7f5Xk*2oD1@-jI1;((Y@)8CZzxJeb*<!3~
zmGNu)E9?6q*#k+ZeudjY&Fff5lB%+jHlLS~Fz_8>k^#F=`8RB8v($#SN#1aoQEY>r
z=)`|lpFhJA$)oYkqVcXKRtT9FNG5rwQuTX5XmALAHV*Qvf~@DISp^3hN#klJ(~{Vq
zbTroEwK{nj85Niyc$91s)%7sx2%$+KOEuGAJ!Dt729WXlAJHnpc$qO9cvZ^(B5#wG
z@^;D@HDdR%kWeFKD0`5Oq04RPa3U}GtRQqJ<()b0U;xabXDByA-dQ7drE~a4D5b&+
zy{q9V=r~YRr+ff8Cw67lNi4;;4e0#EIqh|FlpyFWjUK>L0p%uMyaL4=Ggxu4>kc46
zVR~nUD^S?CAH^vJ#VgY2Ay5@ia;Wq??|i1N-DBnTi(S?_iM;^UnMSDr-?pkivGVEf
zwAObYtD?@njf5)cTt-1gK**|m_CMgkhOTF<Tx^Rj&N#`(gsWk-wS45UJCTn_D=?^}
z9k|xf(&}hAj5#5f*<$_-=p1H8)0_0pOii2*8i=Y>h^Sz3r`+JeYeRyDp>m4Q%T{2w
zY^tdon{I^|XLI-}G!k2PNbXJ5*Ug*F)@FH^@*=iU;#MbP0cg#YNJ=1ySN80ysF&5a
zSx6%|msE6S{JZ@;H-6_yme*;$s8^^>*SF7gDSs2UTNnt6>9Qp)TUR_IMHcKK9^C`o
zu&Ua3NPaCV?L|Dp^mm+gNcf*Ef7bI~iTAAX{jVaUX<K-q+)Usggj;SVU_8;*+8vM+
zQ<4rrIQr_@ZHa^Sqpw;LeA<$xNF(EHYP;JbU$z2_UncKLyk(Ue2vb%A!@|-dKjTxA
zwN##EO-(;xal{jUs4)t)&OEnzE}MO|l396WHJfz@pQ90L7Ld<o8|M2LoNX~cVnz|-
zjGF42kog8oDtQOkYz0t*7qc;^kQ-#fFYl<P33U@?Wym{dLRAw>22u&#$5_I*kPw8R
z*&$6+e0bJPcW~-__Md1{(PKw9qn_V_Sv`U<xMvVQ^pXxfeZPDx<b(p{S-@x<5>V7z
zldSPGdZtuqcXYW$2s=2z$pUxq$LJWWX5M5Rf1pX`3i2e9Il#cAP-XItuP5)gkpETg
ze3;lZ5VC|!$+_8BWJ*w7egNBRYsiG^+<2Ycf&UNylqMhz>qfa0_Ii+oO`r+GOo@2Q
z9W0m4HGfhl0(s)rsRQle^Hy{xJ9;7=O8`?K$qeIVD&&VASQ*FwTiWmI<9*poHisa_
zMQ3POe#?wV|FU_iaiM1D{$hFlsf`Qb%3dMj5?6jWDKbu6sR$99eC<i)0Z9C^!btzp
zr+9NCpK3--Rk^LK#FRLuyn`i}<OKwnpl8&v#M5#j(QPHJj<WgDyoPwHfo6@={1iRU
zw#EeS;v#<}q&P?`+C+SXPROk;Jn-(q)I4-&auv)R4ev9FK8fmSc#lL*;(%2ar1jTf
zu|Pf^*H)>IHu)abfQA|*(B_5upc4l{`DrKiu<?dj_)Fp(3p#LOBheweqBK8(`7p<(
z=`<!T&F(<z#{9fJ19L;dT-iJp(wQ{0)s&=EArm9G5LOnLBVGg7I$CF$U_N7dxLec1
zv)QC}wEn;(Uy{<r6Ysl}`>%!2fPzd&Vb2X`V#)Ks4(sW;5Kn#~9;cRCb|Z!BYu?Z8
zX)UC$z4lu+`>~ScHYC~v6gP=o8CaB=@dBL4>|LZ%{TYx122H6U5hcZ@!s`Y$ZZDXU
zgc=Hi0W*y?66h@ZhV|$hz@y76fHs_l1**p)cAr>H>BB3S!<(XQ7Wt;X%C|pQBP}>t
zP&>oX_#}-FTU0iu<h+zUBYu}A-)l7aerd1&YJ+^Yj@OMJ%IMxYt(W!+Ukcj#rJ!wJ
z3c7I^G}Ecr$j9$r9vuf#LXZkh8Y4V7v08$br6*}FS7AY11dFfbH(<g0=W*a9rltV~
z00(|e09FPt7JCIF5&$F!;GtUyV7F`*yFZuA^mBrKnE77!4r2nnX>FLRG@`J$HE+>E
z)piKWO^RJbua_NO9AQiKb3!@nott~x%G0H(XXyq-+OUV1QLjPJ{+}n13c=U64r%I{
z&!Th&&wx(kOmyR%tUarj0VLitXT2=_Xs{?tl^z~~T)NWrPi&KksiaG?@hDB5@f`i?
z8erL7?Q4S)f~oNMuM9czBq}Zah>*r>PU_0Y8r#tdZ`qFN1mh1K-(a^xh;A?<YDf?Y
z=^R4$Ed8lc;e08$jYKepqFQpz*xb9dT+imGqgny){*S1m`ex4a77)!|-UNIZoLsCT
z9gOt!C^VbIXy($-D$8zPvW9hX*)O%qo+A{j2`b547sacsx=Qr)@-uqD&_VR#n5Gh@
zK~}Q7R8>RfLg_N1l`;;wSWmh9s8tOrm6ag6HMKI3SxIlR%7a9+%EkFHVT~!01Kad@
zYdqmB$i=HaXIm@E>l6H8TgXzYT!u7X8?6N-rlFb~VFnsIHe_!6cgkh?_;Eq=!$#22
zc(nzMdg>=6<`-Pt9==diOyTqCPj>tP(yp*TKse)c08$fspzD6YC2<)l^n||=zxNS>
z*$H*OQ!sViTB1w?K>Xgv2UDToMin<J=0@GrPJjFXR?LL=%Bo67>mBA!6O|U<bI3ar
z@7WXuY6{2Fuqy)yfM4E;V~;&Z$3Bw}#&aq0`mAuZAZ%juGy9_WN<DKA;|SR6dGXZz
zl(H|<k1l4XxZTG1HZ^5AM-H9s(m9Ny*uVnG(7D)<paxclgc~Nd=d|-l=|Bf~Wt)bv
z*`@K|so2agElGaXD$oC1!^9>bYoTSAIv2U9P##Ue#Dg{l(P<rzHtDBT{QD;@yEgS^
zKapN7soM(%siza4k;BVEk`*)@fR1ytVLPx|8PT$zQ03gl)c6dW@!}MsoWSP<jwJK-
z3!i0skoEBG|Ir%y)u$xK^e|yEOvxadl1!i~KR_;~BvT`pUKrf;>+_(DhOG72lGC9g
zvZm76>r|FqPe+r<z+!PLsl?grsPUc$)T2gru;y&9<b%AicS(6VBPU-`7|Swl4c62%
z<{^I76oUv?3_wLaKU&pM0l&H!DkHx_F%Y5|;Ql4r`oe+o^+;4s<x7Bp-7Pz{^&<R`
zMs7a-9N0A@Uag-`df{i_N_7#KX2fFIT~A_<XR0DFD+RKt_YRdj#y&|}<54$j45L*@
z&{tkGA}z-IQrZ{Gx9r}GIx?gYh@nke9jz@p8RLb1HWDTH%6Up+7*+z680Q-i@s(3g
z5YB+dan#0J5wGrN&88ifVVI0FL~a<=6;2_>IvI%XObs)qR?&FQ3A#S>LD85|mtond
z_Tq-Y=0$k(w1x4~FUK1bQi%B2>>5sr!&r$_Qmj;GgMkjD2H$GXCS+~4kRZz73%8MW
zB;Ep0-A*Ol@;Pl#4_zE!${bYI{$$o3mO-M;CNR+!FitVH9()CYW)61pixYGt{z_o;
zuOG1y2>P282-Zc`pJBX3^qE(l&RO78L`sRCXaD$rP&ycup8Mlvnx=%SD>?hJUSd?5
zr%`DmEz6v^!<J4q`!>-EA*p(qzGllVmG|EKk)ekMB{ukF<kCY%M2z$JDjEM_zh$>t
z-5n{Y!M3Zi2iCPsz4HyMml9K~k3%M<DxXHsVv881n7Yqu(T^a+)%>C2>U5-HGOP7L
z5Q>Rx9XeIpKP90?;;H{8M1wn;QxIx)3Tlv0#8^b68x2I#$ft?)k!a=SOfmwk+&TN$
z77VO)N`l=ulwh2pxO{h=sq2ho2cuOCi#1P;-#JvERSjV(+7qd;seO@UyUH%bDMYLT
zmJ#OPxhas%B(pi(j%S5gxXDQhKuC}bEyP@WXB1hba@E5$adaJnB39IJfM%vT2j9`=
zAgAnT(~m2$*~aO|=ydb_#!47_eHETM(}?I4JoQOjs}7vR+no(|@(yRGQ74`%sYW1?
zD@CHAdu>t^yhGVYH}5nW`S$CG4sDx}sW8=U*66Pwqd1;V?$i3uJI|B@NGC=v%We*|
zD+TndFjM6xF1d+Te>Ko*R5BItN=6_PRC>-yOj{jhmmpgGbttWjJ0T;PcJh|HQZ0{v
z#Z`~v`MYc&lRD{Gp1SS%10cXc%1b!4B{S~j&<VwUljHtN*n`#afH$QjYOCV2Li*s0
zG^iZ3JPQAHYV|=CUWPK5k8bh6XX5rWwjv7urEZBh&4<lKBlYwwwsXP6=X0Ltd&hk-
zt>e!Q+dG~aulhoJ$7;s05@FKqhxRcRtJdv_ZUF>rz3S=FskSr08fJ}R8yb}fb#~6%
zRRzv)EG1jj&9-hkqgT#x>P6cbJq<vA>}?F{n{hv*FAs~3X8)2jat)i7I_&!PWLtL9
zhR$I8TA0G}9BpJ6s%ow?!=jtgQ@)u3<3nt)-CB0R;Kuekn#k7++mSXku$f`kqH8Ah
z-n6q3x9CTC*tS|F3t#!N$Lq>lwzGkMu;r9A**LhR;Pld21xL~oN{y)a-Uh}Fsz;rN
z7o<Q2O#w{%)VFN7fo9~*jlRsto14+6mA<@XyE+hzC_lJYBg&@K60H~FIx@<-&3HD3
zbtt#wrBE>%jzpBPDUkRNts^i?X9G>{VVfKXckE$!Qw%#DJ@cQAmfB7S>_uCd(Y8B7
zSIFVKHgtK^czYyG!riQqnDf?G)+BZ}84y*+Z|mpGmfEfUF$ED{$?3~j4)ntwM>mvQ
zUgclJHZi(%z1>T%O6c}IknTL^KeFZd5UZBHJzt1cBbj1W8xfsC>spzD8r0;qp&W6`
zBX;U#ke*zp+w#y+0CqRLbAz>w%333C4%xKbDuPaoI67*5747r~gy^(8p6V3TV9SZK
zM%(e6np9tC$3yhO=H~SDI^Bln;d`_mo_@o_Yol$?2uDGI6e2c{N80dQk^=ev--hRV
z4H}*PMKP6YM0AR&XHG$Zk<_JN<P8sYiTN{5%S|Kb@@`F+XL=~MI66ijb>3+^9v!@8
z7n^q#QH@CPg~r|UnekIv8b)F!O9~NZrX7q-=qlUzpe{Njeq)tZo62#UXxpO+s7v+D
z+wm;ze+=8{k!><hkFtAyj_qxRt$t6?qO7Y-J^p0&tIL=nKi{y8-$DLT7o^($C8pg_
zT?=?#|DmC7%P#2>(nXm<N*WhH)}=r+R<gjz0P~xH9JG~rygZ#v%#lc_7v`#j8kwgK
zB|k_uY#%FRa=Yl`{|>(Tbfuw}dJXK$@zs+?L?h@3QVK%T5hU6@uQ4bHQoi9>P<L#o
zs!@zI&mBr0Qq7^yjuljw5hw`xIWJ}HW0P);Mx4QQL!<pLja8>poqFNhvEnNbYA9RL
z5#l{YM5mBaH>RKlJD@FmPYt2iC^E{)1su2W;f$3}rks~pvP!C_{@tW{<Og4YR3pi%
z8Y7}pkm}MD)F7#tg0S|B(@AA6oh_8OiBT!VQfr6PNiWP*i#lT_R*>1*HKsFc$5olW
z{QF;lP9w3@H;jl*L8mb(s6jeuEM+udu||(-$Ksl}q@x$>GU@0!FU4=SX6@s0(50Wv
zBigVSz2Xt8x{DsNk5Ns&bM8JRrF6@~>8uL26c)WzfvtP`<A}GG8!FRAkYv^RFV0b;
z*o?&k158G(*BFY?PR~m`K_{0^tr+-HtsSNq=tx7d{4}P85AHH_+p@!GR@jlsel~T_
zh%ITvLPQ(f)6!L_QElkepf9-C;mQ#s(dq7jd?6A!Q%&bgI*Hct)9qPCl1H7(3?!=N
zI+LDverJTxs6h1DYM{@kn&qgx!wIwX-@!XaBU*ok@y@9i|B(dHpHhezg*D#c^r=-I
zNM$pFFM~1g4lKPxd1ts)MW+j>;%5Xk$u*Jzc+e1bib;mcFzO658m#z5mOWvOOkdpu
z%rP|+CcO!`T7M;`9=S08YPZywTeW;pemzKj6{Y#)RDu6){CCo&v~Y%!_0MFoXAJJ9
zr761)Y6rw@-C;E5a=b{dud9YGBf*C#>?(B)<w&wOY{%XK6Nl_|y5UNpG;DLOB>lWI
zjiwqi<QuSAc1`Te>Es6XrFUxB#16i*!M$Kr4|QESnt{~G_R3EEHNYu@$hO)!FYZb;
zB7-fA{J!AHrKt5Xx_XM*7$7JN_cuq=W3c#=E0T?F;nfU!rENzEy5O880DyOYkgqnS
z4l;~)MpCrV^Y_T)Hr&P{a*NyZ)Z^D7JEs&<1HsvbDAm_=V>>L{HG(gMQ%v%ES`Sj4
z*U7{$L2}^w%P?Hr{+eouMs>j6ORy{?fL3oqrw|39iS+Ocnna|30H!fG^Md&BL#d$)
zkh_#QD9CAVMsS&1@Q0kgY}_3sgiFjdDd#U7B#<LUO+C9sZx2~&2A#jk07(vBs4=4k
zUKZrx1-p5M^3ff@2uBO515RExxFf*}fII*xKV8{H`5DNCONzvbk|w`?uoU8N_@|8n
z3YXY6jd^kXGF7De*kF++qyi0mNv~3!`|d;vYcY~}qjBZU!~Qe3o`XN4>!umZ@n$jT
z<J$)Nx2ux(m-n?Y)z`|wzWRxlcUig9r`pkUB~5K|{5mJ<<L*@{2TBTE11Ch@OXk^0
zz1)jbq$!`*)4AUAG@R-Ea1Qm9-zO!f0om^-(-p$CtWupUe@&=B(D(z7V>D4*_Ll$>
zP;R=|8m;7>56d`i!Zw_OwS)sM<5ar1h+@HPmWqowjf+&*3MHR_SerrSRGZJ`c;mC3
zzGNrrgU@0Od15GO$QX^<J>$TOQP1a?<zO;!ArlcyJ|I$rFov_L74A}+bE-~4thtSK
z^<WkWh;)n?a5)-}qjqw1Jr7={xJhiKI7*$(k0AA#CG{Dd%|syli+(W{{y%`?2xAEU
zPD9N^ZW_A|=Md%{PnpA*_r!mviVP?H8<fe4=$W?*si;B6ysbzXm7HUuo)e&@73c;j
z$)>wAaxuA_!Pn9}w`S1gYzeOeWo&~ETlRMHK4ZR~;dkQ?(Iaj}|9I~goA=AtlM7lF
z!byQ@Rd9A%Ku%~oG3}4unxX;up^+CNroFr~SVewluTic_Hv&gl<@v!9MykQ{@`)5Y
zM^ErSLmEgXoy(9a&3M)5RmEoQkjb72E+=>Y53>=vr78$ttq<iR_^ZTT$KQ7X!DNu4
zxL_V~4}9)q509>zfG;__CS<JvggaiE>?low=gF503E6U~O)C8q?q6^<Z?B14o19=H
zObE)Oh%;(I_?!h6@lX{!N(CI`5;gM2G;QHl=JFkayPFg97_H7mSQx+RCWn)M@-ufv
zSHVrrQqvP*0j21i4z6(?Xgqq?xIpr*uP5)ikpETY-)wM=gV(IM)q~Y9yYMz=WP%iQ
zOLMa2*%!h)NuK?6smxn=TOK7BNOOu<vY#cFpg~UVT?X$w%mnv9dnvV;Il|2bQE{dY
zM>rSvQ$@Evu8|M2F7e<8yi3)|YTl*g*8qo;dHvbBg8;d#^;{-)C4Jipf9Q;)%VlnP
zPIloB^XRcao>NpAi0uPYehW(sZwR6SFt0rOK>KX9DNBDs&49P8HpHJIm;?Fa@z_7C
zTnL^WdUrfW3+@t9aEq1w%T}sRdBY?AEFk94JLc&l{=^@0LS>W9g{8fbi{xe(UJ6S;
zjGQYsyV;`>nJ71Bv&VP1%iaLi9I<15!@ye9y>v5+_apLd4SMfs9_1{^8+j($SZ^T9
zNA1oNygOhQNAvx7MnM*<!#%uLw;+#2AJG57$Pn-GU`DB~VaO5Bi1!Tuk@MBgK`2Hh
zsl5ZT$QZ0BcBRkIzl{`e!|AwZDfmPiJD298$a+csiHMxkoC_jlHBZIgaEbg-0e)o%
zPnE2h@<T;xLLPou!hAKMTuZo7O$hLWK^m_{Xg|gkPVqY@;kVe2(fkzuDSp#QxDoPp
z1>j=mLSw2=hOCGfv<UV04}q;ofy%ukDf;ftlE?myG@@i>UTwob8kU;yCWLNco{Nai
zN9#rv0$;$l5cAxgSmL$2R3Cl{Qj;&M#|?vLb(+tim#vF&3}~hRSHsFmfEUS)S21`0
z9aG5D-*Ol@^AWt`sv!|Src#=KfF4RVEe<G1vZOCOzi(E$B|JS|>Qq;F_@4xB0he5B
zg&gG$g;2sO;ZF#~gJO0~M=r9e5d`REd51DTi@h>5S=B6Q2c%ss^rky)zP+?A+rn9h
zJhv)6Zr$Q|GBH!^u!_g6OW*CAm4@gYh?}#*>j`H__gxhx7q^#yGcplNxW(jX{5|-U
z_>YChC_)?#4?<+r9fEVd*oC-eZ6qj3c!^tz>JEc>Qvs5kb$sdECLXihc_Gyl_VksU
zX)?tcuUdj?K>tXZ<H@cbi{md{Ej+DQJZ4?Gn>FArGywIwr+l6SXW;>LQ9bdwYCS9*
z1<0RUto-gfoB$R?;b0X}?3Am%PnE1|8%vv)I*GrFE8rFyzKW5m00ahgDI(gGW2j`1
zzI!=7jEJg9ai>;gBTx73o!MBG7P&V50QnS>Ws`!Cuz(h%aQzfeXeq?1y<v+7Iu#sT
z;pM7Ex-ctY%CGR2`1TUS7z$1@v&V{*0%}$SD_0n)QFN)xf>f_m8kUO-;4Uf^7ogto
zq`DbZ-iT#x53t5yvQ@@|R1|%VxrDgetK`?^7sL~Y5z$CvH^{_rq-8hl9IeOUO#8kK
zPP&->@+%G7dxcr)4ZHC-!+02>T8u{aMPO552)yAg5Vt(=hP9(|<u_!N+S4-`PC^^%
z;d`e19SMj~Hr}x=Xtunp{EG4su`}|9a?b(+-Q;-*WH@eJnYO8$#0cxlpgR`b;lk0E
z(Gg4CDq3e5_Me(1g*93&rz1_Lb%rootANAs>oL|@8RBvCid*C}HVDON@ozE1<)C%L
z1@!V`_F~&WCxuEAd$Di0fL@lf7v~1Leye<!y|^}9Krai~i+h7mf|pA6lD**qdMUvR
zIf<&#<#bNX2s9V=W+SdpUvU}>$>xfj<!kF~oaO}o(Lb>FG;&`(SPOQ80^%0pzotCP
z8?ps4Pre?1j&dynJRTj?aX0+8C@P~gkwtU_BX%Ifo6vI(LN=<fm~$>lMEpQCh#h8C
zhHo3DOEJYMz%TZbb<inS-^`{TVgybUu<{@hWu08?K|YrdbyBe>9;eyJrwW&7W8ZMG
zDM#|`W{w~pU%`Q75_Dpho$r`RwA}j)xvD4mg~(O;LhwV?B>zZuy$XGjo*3DTU^4QC
zc2FT6*u{!BY~KZ%^1_H=F*t#6#G-qH;GC*5n`u@?{C?U#L7Y@q!p9KhNfbyoG0MQV
znB|4c^DC=qd*7wpuI1QRj&u>qQHdHY-Otj+?ry;ItRgMTZJ~;$+>3ZO@J>fAr&G3;
zpUv{c?oS{<Qn>?*2L~xUh9oP7t_N!pMXAt4AX-2Jx|hRB7gtrY(4AZOyHbD}H93O~
z${=AVvczVDK^2&_P})Fbhk5)a{S=IU*D4v#u4V0{gsz#r$s^>D4@^Md2z2-*4OE@J
zX9Bmu62xkZ|G=g%lYgdmJs4NAZsOi?sq+$s$msb#-2AH5N)7yAuz@&?He9<z>x}+M
zxI~E>4GlCF$REF{*KeSXv0*qiq6NU{O=h%~X>Ah^oM3$sw`Yw+w&4x)8ym(bXCNEe
zwq}&J4X<V7hS92`&d1?JMxxl7FVL{H|Bi+oU^^BP6kn`iYfsxS9sMwnn|h;$W)81q
zWQvIg{;UqAXLym3C>A|!!*G6QXo``|hSze6hHW?V`7(@Is8#w~da68JZ){l6c;ga{
zlOSAmAFW|VJ;LbHqj5gT3aje&_3#iuKU84MKy`-sIIMu74#YUIUPSto8r};E6-7dI
zDLwO`7SBw#$cm$JoE2i2nRcOLUq<XS6Nf76hO|Vbi2Vt@Eac|!C(wMs(YOiIMENlg
z7jALf`!rrSH|c_U7}_>6Lfr`kq!r@m@c}cGJk>FV{fUeXEzlvA)m2*MBa|MwUUr9C
zIS&!n;@8+&L{;X-Z>A6%!OAIQ+(8g9T(LsJZsqRl`Fbe-6w;02_W2({tc}Vb-7H#w
zytwRaU=Uc|PCy+RE7+VuWssK4-Aa*GxCAgL+-AZARttMr;d!aTN3o!c6+E!Is)dua
zg#A_kV6aRxr{qO@lh6>vt~|+9_(6DV(;+O16i9Gf3g_QZ1R!y_1*KS?kfznQmZ1x$
z>dUkX$+7qYrNr0fFI2+TrbDnRm^w`u&+)v2D>Qr+O@xoEyKidv7HfISSzS|-=MDC)
zM9W)(yqKxOlmtEmWtd8BxQ2|{*nD)qIhM|2wC*}7Po57dv+OBJMoeLR3gGa3wR4Nv
zNIZvTnh|GCCFcvsjmzDG#XlcNj`brt0}X2>wR}LO>+dx@y$lbs4#OVKJ1irQw%T#o
z#xY^zR5v4VAy5P>BN-sJP3TEOk)tSr0lq=Qb&}y4Y|czVw8D#cPxknA#W7Q*_n6%j
zY@zTv%7w^_UpEt3F_X8`Zmm?)$EnEfDv7204#9Gn{s7`<DMxE~zppC=c%Qu^Sk2MA
zsil`8e4_(t)j=TNrl$VHPs3vFG#B*>NrVd{P3@07kIY-*R@=dkFa_utrmiY29^ig9
zjS#))ZWD|J@_kqNVKzWi`D3$_h$nBdLT~432=$~m<M)>!+p-&b;hA_qzzVJ@PuY#l
zsn})1{uE8R9Mw`ZKY|1Z<D;YCb;uH~22NrCk81$H;cH_>i<RR+D!W$8qO!kDfcDg#
zHz@C+0Oh?hw~Dr`=Gsp4qT6<5DecG-w-&)nO7<Fr(Wo@RATt=}8sYH}Ww*}{D@Gu`
zj{0c%IQ{_Z47@>bE`V4#4c~$8xQdRr(9|}O*BJt0SnZI42$H2I5sn{Gd-w^IGKW>_
z=Fz4QVI*!v{4y4nnte~fgCL7X5S0>9;&v*ZVwS~%>AwB7u>-ZS9np8JVOwkqh2D#p
zpEfnV6V8ktutblW@McCFSVSY)h!W9bIQm?M2f1kvT7Z4hIJxOn_T*@Mn9}#nfXrW(
zD_ei&fi+3C7T^SWqHI^+W*`ob*yThp?wN&vTl%W}iM&tVAzR}rbk?5YLTrYX9opdh
z8m2QEs}#>cthzoZ-#EV(2QruL;&r1O0LAV$i8Tc)!T^QFJKIoKR>w@#MSz7bEPWUK
z$X+%<wyTv<W3oCZpBn94mW`q=)@aIM6sFQ>sB`H%yqoeT6sm~zSZy~iP{7;m)VEu@
zc1XL4j8w_54V4TCv#1i}p^|$si@~=hi9M*VsFA()6h@Dk5efTeXd?!I$S!yJwu^6>
zd|gtUz5eV)mPKR3v%W=H^vdU)vz@jbp>+AkB1GAfo4b*d(}~zJ9{hLVzpc|u+vA=y
zI?Xs)5qidTnltG)z0+*RFE8QSCU(1}D~f%G$V%oB`<>y5Vn3M(-C?U#(BqbJ<<EQ0
zpm)jLlS#jwm}?kMn|zF;SmQyeE1WLnhQ8Hfm29C^@%vfZP1jdqOtZGIJ>L%H2UuR?
z53vsKz!4Bdo$joji=cxyBSYK@USDtnMV7CY5B8N}GA*qN`ugIfwi<Z=n{lVSOMXKv
zu!YYMPuT7pFBVu<*=2l2quudj2kJ+h@ir@gi6^XJ#ZotQ=WMaxx-v7-ZSf@?Pj>d$
z<JRZ9A-u7Pe=;FG(?-46*oD7~7D}<d<M)OIkfZGg<<nP&`e)1cyo1CkNz4V`w!V^a
zCextBj+yFu<d^~o@hwMR88Xuy8xIOSR>#I8g2akSEPEj&VvYQo@~3M+bhc@XZ*0W&
z*3nvJ5)&&ZLU%8dlnq-1+TxSYfMA1mK#L#=r{cLpAiJ+k956e6)rN!Ya-3v)(td-=
zk&i9wc^pFC0V#Fx2NV-|aCh2}cm!x2t$QiL`gWKptXRd^`XdC``jh-K)yS)Qxsp|d
zaq#M{tx(IxAX1ln5b@V;^-guPt~ALDoRI34;~OcozqG>Zt&{J45DkK*6uat%x7yfq
z8%(CTb%k3Z8NRlI|4p0vQbfkJMW)2B3qu+*Lx&m!_y$yskt{(^8^Ew;q37@Mdw<2S
zY{SUrAt)dCY^-nxs>1^W#914o$S&L-S<*MlYzi+FyEkWTp}d}|zF8J${JJqQQ`qV~
z-eb0>p(?)AeHvgr#AgROOn1cZ!siIcmV<0qWU->w;T-S<4g%W@3kkeME8*WHph8+w
z$N-$xfpvwiQK*w5I=TbZ%s~Ak6yS?8&ptKeEr0~w=)ecv22%MmhHI9EVuglmi}2>T
z_(aSCqt%5VjyrBI^z8-Q%zX!%_C&@b$%CWjm?dIcV+)V(F~=-kle`OEsoU3Gm!*`=
z0?RCIgZAL9W6?(up7`hs@pTVUg>S7w-|_VV>PuIhG|sn;x?8O5y$;QPKy4H6!IU-(
zau)31Iy3x}0K<xeV;OrL49f_Jxid`PF)32)80Xra4EYsBL_IiuMReU>rKBA2JC)Gy
zlS#)qi0_8ZpCVT#MM(ITZ<_=T@l%}butUz+h&0o_14sAf?2#rH7w%m8Hr?Jp>C357
zbQ+by$ehR5PK-E?Yf~Q$P{sp@06Ms&^fGQPrYK!C2-1Z^p{ms75em}f;g>4p<5eLi
z&QHx%IK1=WyorueJc!7d+tlZ1$%7PdtfRQ&w|jvCw-@k<7NHolqamU%gG{ZHO6hFN
z6{xCK?#D_8M-tyQoC#w(sBkzJA!8y|1+p`R0K?Bg+;Y392;m8$f{D4FKC#lnY*al&
z6X1vSA4@Ds@-qh5{;4VM;)mx3l;2}*a<rDwVTsu70ETb|{;c)%nAbX4G5UH199lm@
z(<btA4?|Xpdm+?NydK3-be4F+?6@Za=}2A4Mx<ek2VFeLE)L*Sdo!R|A8CT1+sK$o
z-K5Id@is_@p{L+YIH{v68v$`^?jZTgtN6DGn4H5fkWL8O;`c~|RM&N)FXJ4bG`=^{
zSok1B4IdvID$fV6v`uLPJAi#}1Su#q`FuWL2=@#*5z1mwR_Ti+9`ZupVPPB+h|69e
zLYPY+hY+e@pU|KgN)q*O1z23R0swu7Cds*6GuWE=G~Ny%YS524m}A|m;A3DD-~JZ3
zW-2+(z)0V4;J3g1{B6{d4HYL_<KavCte0BDnY2kqbVg+0-L1ac)OQ<3YP*MCip9gG
z$X4h!?oiwHNGJe)uUu@;*#aHUn+1-QitXrl0sF*3wb*9IQ9ilt{0>b-F|U}wE(mSN
z15h6Nh<M@O=L1U#K$1r#b5XE5pe#lX3eg8TpocF8X(1K*$}BeaohPW$(9x5QB<7$;
zU>|-eCIH4`gAA6ny@$REg*#V75(1EHs4F{A4IZGcMBPWr9a;_ohYD%|P$ZRm0a3*I
zAnz92yl6`uppeMs^D7`P4yZ2fklz4!9_WxS_i}=EIvV$Zk}<60Ys}%?HMWR%GwJ+m
ztl_gAt@d;AVrSFyM)9p~3l<<2#y&Teh0k74w{}xs`V!8tMci#h-2ZP8t>wmxreao4
z`3AUN?D9zbm2w&qlwsM)Xqt=mAp|cE(%AZKE?RhTHx*ANfAUFICrZ;BFHKJ)m0ph0
zfWXNoNw0kBZSndjIyQ?sY*8rGKhhmd>1Yx}LkUc{JCNmREHj5QLVhBn2P1_qa%FYV
zGksF0JhHH_%#3_-8+|AM`DQD<nAI0zvu#%O#YrzV^#zBX;x?!H;-?o6f5Ay&CT-Ce
zYj|jY>!g-0w3CL4jh}B@8od|e7R>6aS*K{AW5rgxxuqClkIF#GP<(Qc@+l5JSQ#*2
zZK#rStJv+VTac%_9)sx&?zxfuXLsSW_^;(`>s2X_rReqefRy^h7kaB47RLT|4u&f*
z;*?*JzPUPzzx3f3`s9>c>RkOG`*j6Z{}d0j>%x(GXIcwh&}DqwWiig(Dm&ADj)Wyh
z=uCSAPnmd1j@QS*-$*^<aqywx;l6+>-n&h8g(Y5lcwA^nt#WNK_71e!Ie<Tl&TgCX
z5q5%U6R-i}is3Q&^$_mu)#K9RI*fWPqIzen&p>uhxonYlNwXJo4F#teh_4In<VPyh
z_&Rx<W8Jofw+65_WBKlJL$`C9A`T9Zd9q%fy+pDQ4f)m;A2b8O@FgxZmVFC=UIXl+
z!7w8F7%Y7Y;L0`VJbep5y6h=>s_(*79P&kgwdF(!zFVbDawR@h)!$iqaxsz9*B7kE
zmZqCj)kwc`=WL?64PPh2E`bu2n~>sYEj^j&wvFu-tQl(X*kJu06~GSw5h0OzxJ@i3
zwXSOY0U=vY=up>1%Q=+MqIj8Cy-v_6oC#topO>+T8!yY<bOC}sOL=Ox@{XF(<Y_=u
z<jy{eGZ4O#pLpXYLI-l=@#P4Zj72Ihc@*<{_eNTFXr6+bRRwPgR6)!Qs<Wrix4%<B
z9VX7=jVTOhTRut?5|qwMmCi|(Mu20I)s?ew1z|hN(HR@S`qFLTyW{b#ENnCB%yiri
z8za$firRcNs55<jqg+#U#~{zQcS9QnL7GG(u)cROs5_SE4z#O@ygWmiL}`^QMJa@}
ztTrSlKKkv+*5XA|#lUW3p`!m(%H<%w2ZJqS1y+6af@%w`0_p;dYpQ-M(BnduD#(@a
z;8j%$#}APZh{q{(Hd~{!2|b|Z@ovrG_~T730-z7RRHVie-4T>aRDigZW5A69kOeqW
zl*u9p$irkj-o{|Cpmh`FNeaoPELvOLY}is^t%HL_II%YhUco+UksPg|U96$HMy|dG
zpQB_{5|_}CbbJqQ1*Y#RpmfP5w!9B%!afvXUt593KQ11>mX(3AZdK3OSnR$QYy1W!
zHMU1EE){BKW;=+-cQ<G78o@Z()IIdyg?n8#61sAFRy+ITBXyU3X5<zXcvqED1e-aK
z;9NYY{D}6C&<|)tIDdn?!I2whVbs`tJ?I<bFjfV`4-T#BUm_bl_0m@niNv7+TCQAj
zdQQSvZ7%_02oQWu*-CX`k*^E{XkEz@+iU^Fi9~U$o7C>xpbLMo&isN}2elNK9qY<%
z*dC5iUMOT~IE*j1DMx;hOjbe4RsuV^Cien5w+a<vvMayFXPDF~Phbte%3R><o4!Am
z;dMZNo)ETP0iz1UdF)kX1(0%qj<3v30Ax|fbOWw&Tmjn9^+&fLCTyVr(&J7s#)oGz
z0&L2FU^;joRR=b0JTp95Zv4hPj48XbBk^adWBT3}d@HT7-O)Icw=EmM6YAvI^rcQm
z>y|p$GwP)4@ByR`<lTvPY2@?d=b<ncjfG&v$31W(OL-7IlzVH5sAm$E=K(c!tQq<8
zZi2{DZX1Mvh+>VJzL!XvP;8FY{@C|SkgQW1`y7pbq3rKjvHQzI^@!77I5jWgh?V4}
z7bU|Ju=_0R4`&T*x#H!e-3RXlEM2+z$O4V#b33$rKibfkhBi3XReYXF+u4%OZI&+3
zt03`~83R`(TOUH}@`<2iZFgirZDe=J3zTjBYB!b#nF<9E#e;@3TnrPE3oKn=8vjh7
zBdjnO{*g#bw2Xn016%eeL{S>q=y9v#o<||+(9s)xeJySP(#3U>u?Td|WNgBZ?v}8x
zD(U7ogwPtEflseMA!m{QJJDNYJb(;MufaD6NDLYk8*Oh|-o6PO9_^9nLpu5;4WCtk
zv9bp21<gBXg6*awLr_99(2`fh6X`2*<vG?qQ#$UY$BAV$s}ZyW-sZ8W63y!Q2FT%(
zchx9cK{!$_#>r(?d^jN;)?rIWh6%V<W+90_mP+r~v*F+mX8bR8ANWyp8cpT*fzxXa
zw%{GIC!6ltp8iU3>E-$>!61|$gHROPM^DO|xb%%zd?Ym&UHNz36226y#kZ*ZTXb{<
z`~R!^xpzRrOx@27<3+unyPQ3;`?)LFqk2F0HgKp&_j7a8PIEsO;|8Kz$=JbFJNaX%
zru(bv%W>sQI#+Zg#p|p|X`xjY`uy(9^)MAj4?clm!%{)t(_x>7b7M1atp(ROS{ji>
zgGpO_7bXMU$fc#8?fE@O$VGyiL}=UcHjI}$IwKaD6)zqaUH+L6xm2#V%I+DrTbE|t
zWu0-}vNY*D>2|9ea9j4t^Rp-ZbH+mJU0F-5GtRg(O*#W@`-=%)HPPiC$HHw)J%yVK
zzQOVx3|QlSN8@$))piE1cCLEM%`Ko;R`Y%MOILM&j$gW}OR4N;?yuB@2epLtYQh>V
z;csffTAnaSZn~<=r-S?&)IcZM=hYJ+`2%Lsz^Upr5QTTr_KoZS9-6!{6MY#K{(Ebz
zj>g59=4+Nm#uY{H%<L;RSsaaXkRmsJlXkAm*T;hQxhcbxm)khzrc|i8gX+`GfNbcr
zqM&7f*~Kzaeobc-0VxauG$0KLCxIN9LLVa;bZz>C7Det2h3{7}^KmyN4O)yzf~t<J
z6pWnOIhd&)ghwA4exlEzu$FLl*5PG=81Xad#Is?$S-_E<?%bZy5di*F1^OEcooVD<
zNKH}Q%uxSu{A&2M@k6>Zx~m)7>jxwI1G-M8LXUP_Vd(s@(9)^aWGKHRP<W4&V=#37
zUq}t&>j%uQ>?&m$UfIF`&o4h)6#OLR*aw|*4@&5wJSz__H0<wD_V+OR`zHIlnf+Zw
ze;1nu_|NAJu;*aA(G&0<#m8XbO=l-0xNSJMGU}nyA#>C-N_qA2ZmsefRu`-pDn9VE
z?vQg9V{etA$%20YYI1_Ts2UXm?MHsbaU8sYxCYz}5XRkJypP1)PHYh1v!~<k3_yar
z3HMO$E}-Rakh=*4+--2&n?xW+?lw~r2Dme7#m3D-G{##Ry{N0U@@4@N2YDQ9Si&a2
za28X!vt=~)FJZhqyey$T9s8H3Dj1dhQU7rKmhD<lM#qr;j6MTW^R|Nd*H#!JGj4^1
z;s9W6)-i*-XUiiQ%*hrS6Ak}E1kK5>xmt=y(#?P{UbPv3!3XzOu>WN5$;Zd$i2aXp
z7Br8-faFc~K%>VFM;WkSjh+Q3poSD1TMw41oCsLPi5KFXo3>ByQ>pSIiVow&r=Yax
zc#%Mc@}fi_MqXS-Nu%>(6@h#iUVQLB&5I8{GAb{k{?T|*yv*32e}NYZQm97cMYL1T
zi<ty%<i(@;23}O~dTL&DFkU>&dC>~j&_O?b<TzTdF(uw|;rlF+3mUdG=3)G|8~HE>
z?BK(L&(U_PF;f5tW5D0zebDz)UFb)2Uye~p=voHJmCYp=cW=EAb#P|cOp7C%pPPDr
z4vv5lq6MQU(#JR$e$Uq!2$cKyNJZl}1C4&%fzf+9>6Lqma0|NSdzeCD*}iaMM@|Qi
z4G{Ec{o(q+7i5-PCb)9B;Np=N>_$wwl{=V<d{(QxH(lj`pyr%8_%T7hDvjRc9AFzo
z8u=qRkVby+z)*LXCR9L7P^3yBz<gCHMCgaEh!+CAP6`poP$^^~5Tg|8y%b5KOQD?v
z@@1sZBmZeB^oW5QbsWV*PN4qLq|oPi#{PUk#u{lwd?tlzL@9)J>ZMR4K^vve_mHGp
z5pTxpsihEK5jS%lbe@t2qXp4Bi3bBC@Sq75=y?z@UzG<5{ZJl!>>KFepjJj8LwRr&
zff#x4R!SP32d^fOFT;at{?k0TW^^7z{iE^V-P4Ty`4@O_S_;*OJcxGcc~Br|BM%<B
z#K41Z;PrGoxQg?j=af9y=f^E5V#38EFyRW+Kumb0DhL7drJ2x%ve+6B`k_pC4$$kE
zkU)kq;qj>{Drg(u_bF*~CfrIOUxo?S{->F6?dVL1`bT5JPcJt1=U-sLCsL?JWJ0u4
z&xAi9Xd@HWBS|L+Yw>z&CLBlV7<Rp!3;m;Up_y^v9V2jI-`9;?2$-+Rg@k@67yb{>
z>$s3WhH_z;K#ZdBCQ2He3$G%OFT;iF|I=K!esnHG{iAW=Z5J8)^Dl5=P72kCT!?n+
zx$v{x6#2Cc>H#F_xNsj{Ps@d>(It9nE<|{v#@Ucp5Q-}tjhfWMaSP)&Gjc}Wg!=i3
zsV=b3EH3p>bQr&Vje0Y<^b!d8&0y}c4t7|RdPlxyB>opL_xVR-r+<gJ&p$dlq5hHB
ziP;=37}A~5d1+L0-zygyD5KjnaQlX8?n7ghrwDYIx$hyQ>Uim1ylT9Jfn}z?l)10x
zzu5-!b1v7I$#1cV+58rpn9*;siCOIyn>P1c1<7{;D=Qt>G20&6gCv56b#EAa%A}W$
z24K|{uN6$EW>vq*$^@np>@#%#^86H|zy!>f7MN+AfeHOkfmsLiItC_?p#pOjffxm5
z9wm(~Fvk+eml2rdqjC7Z!=hI{I)|hFkvLql=w0bG_Gfe^=RF6jkF<aJI7dS@qQFEu
z^#XG%K^vFtr;(&%^2hM1F}ZV?MK4QbZ?NDf_B_AI##qoZ0t?Ore!b=hn6Ju$gnlRs
zzI_2YI4DC2WGD-^5r~lm|42!rvtW!sz6=Wn{?jZN7@Y-C|7a|@@qA-{{sk7iJ%wsS
z7DPMsELcp?Mi!igBpnN$hu71x;8C!kbu=mHWGt9B0t;^Ta28x-MoVz20T{-D<#-=?
z8OKDRa}C`x{x!g2^Fru{vfyH%*Rddh3}wM93B<^PU#BF-f^;FxborR)=q-(2v~!IN
z4pLz-AXXTTKHfPGSPWbm7|sOhp~U>r7_?&esRvAkJoR*T!$7J6y~S~ujR*A)Z=3Ne
zLz7b7(Kt&V;r<Ipx>S!dI?pu_=T!Q@eCPweB2XifN=VW%>G$z!WKzAYQI(U2!K9;D
z8vP~@V^aSJOnMgZlbqC;6fj?vNeTT>CVloCbZ}5k639>{{W*acnY4+LMrYESIml>C
z`Yi(af=s&jKh30zN0*|g|8z`xN4D0Te+QFZkiw=rp3})sRcS@Dm7`~;21wieyn`ei
zlfH!4(=zFsVA4~YBC+Ekd-(q}2EZaO&qeSj*-W>Wan-=AM1Y@|v`UqvfMHBZ_Ho>P
z#bJl)oWt)w@R*4tNvj6$Kb*}aDWM;Le+{&7tuvFUe}g<q5Gs#WsexTTJBv}EiemWi
z%MWi;3g=KO9S@tMT#Vuc*VpM#Gr=K<K^X*thZG%z_$@&&{(QE#{t-3U$~^A~l2m$l
zkD$TwBM#&7%fCa4)}Mkw`PWob=G3CYutumdlz;hg@0nTy|0V9^$eL2fhB7D1S9udH
zR&F3jin*B@&8v}u$ec7x=PE^bVT_pyqd9`~+ziI_z(CXn8V}wOf-@toL!rY*YS{g7
zT!vNZVNjuaO@9S1(M?Fix%4V+uP2j~_%})<PcC-(sH%SL3s7qxd<saxx&-h`0Dwze
zvJHQ|QbWB-eXsCNy&8^+Ew>^;`Tc9`>Y7Wb-H!*x9(0$F5rW)4|2Ez!U_V!u*YG~=
z+1ahUbVt+qymq%%d&~YIwVwlk=PIbmmy{nk@IyhvGS{ck6)tifi<f2ANegWo3jTrX
zGU>Cb=FXFDvxd@dC`^R2swxA@_ZHD*S9{33{^~jNDmu%Yr6t!)m&&r?gjbg9+dIEb
zD$Dn^g`D`kd?x-}h5v#1A^QUS&Xwj&mFARem{ne!7qZkz!J_${WiAi?b(Xo&0->|a
z<4vD{H*X7j%Uk>_N-Tho5~LscJIl&Jd7-Yetimj`ES%F(b{$~nCD9EaTPVLkNXu@F
zm(}C)ut&NL*cVp?uJ+U-2yMVB)t_wGg5vO>LqLG#X3O(pk16s_$acN2P5RAW39;0?
z2|u&(+kxMZ6TP|rZ+Mb^)5ZS&9e<HYcewELI)38Kz4+VNOym0qds>UXj5N*b@x(gN
z+=eIWL!Go~D}FkgX&%F1iLNxih#&Okp_lR7(fkVjdODl`fgkD?b?E+g@B+c)k^a<;
zC*XJwKb_4A{$4$OmgffauAKEQffV!(4mYfKAE0;OL{A{O%nDZX1mSogZgt{5Ulo$Q
zU}tZ=8~nj}B^juoOgMZ{R0i^UbjONKxL8_igM&9Bxh8`()%=PX?!IQr#|bs=39Dz&
zaHxYw3uPJ|>i&cl@q6?DR!gJI)RYq*oMzxSX$hGip_$JlLQtM7kEIZ>93#vgUiQDz
zgXYN{JqvL=cPf-acO?P_q+^>(R~B6XiazPV|2!r5M|L3>*T`K`I-B)FFa<nXDr!d&
z+&jj9x<lg8y6<jB4L0Vq9RD_)XiV{?&e*vK_SG+!<~F>aJdEj5V2X@^bC?s4JEHJy
zodLbihmdT$U4qbZE*xS(=%A9o8wPJG0#3y5_TWzViIxo9e9vQ^5RW4hem@|$T#Yc1
zZBurC0_bmBFWwP8S3GD6yRN3c@N$J(-eVst*zuD#mIy6>+XkQ<%083+IOtCrLS6K@
z#4dM_L+r}!$rQT^;G}&tNr89la6lhRjjbU!%#5m<V&y_=S}B5r+Nm$@8S|}?iHP{I
zE$CfU6>LdY(vgo$eydk?qMBs=ryx|tUTfN``B72A++i+2*U1brR%(0f8H{DD)c)9C
z*snAA*kAFWI!?8mvlcIb`g&ZOoZFH1G+wfk6ZC#kKc+@@XkmukRq~DATseUYs&YAE
zONYpBpF9Y2<CWGvvuQ!NNcJ7Y<aG*>=@3b`;v)F-NDoiIWONE}5$?cD$d6bYPwp-j
zw>aVL3IzF)e~>`#G5eCfK1XZ7q*E6Y2W$;ny1~YlmlFrzvSS^;ft=RKpSCa&8OPAd
zyY_XDK`hRrgr!V8WQuHTN|L*v$+x!y=!NsiTLhOXC|};rgIg!wnuz=CxS(CH3iWqw
zmJbr|+U3S+euUB)OLG~q3F#S0^YD|^1wnNmd-TiO(U;E1EM(0`)&@cF3r&eIMem#z
zKmyu_02>tCkluQ-RJf)@#L1hC@?$IqA4e_V{;6n~n*y>HkOCBt{r1>AQ$`H8*_Af|
zfn0Ejlk)mXOzGzE9YB|B8HWhi!gAqCK`0O+3mQ78Cf_#8XLMaOmTq@~h1$oXG)4z(
z)R0h+Z`q0a@!T<lf(${LQ7D>X<re^Ct}EWdzHKcmG`rGFh2cVt!twZvRG1kUF?-Bx
z_S8`sC|}6OZ1oJZiRguMCZtn75xWSN^JTi6pS6*`Dj_FwwiIp&+sHu`fp)SuTZ>!W
z%)=W!q+8GOaytUAJ6aV->k)Y;{M#+yhu7(@e?xmWC}DXGn5XL4LyK;k%NAz#mU!E4
zc@4up5n3IEwyFdj&zSp6cH&)^^5g_^Xdt)msdP0O3$F#@<KXfPL4a@9Cx`^K1Qlc(
z+<UUIA!oMgPceHpCVxrsqUr&at3r91A5zN8bQhrDNs@;EM<t<t@+8Su0THhWqB37Y
z_d5<)1ZU<?(Y1|m+x-O4eigciLHjl6y8sP7n7=W(>LmQU8*@L!fWU=hJ!Gg*2R9vT
z*THmPM3Zpz)wA1j5|%{#nhNx^oDgQ=mmwrqEc6Cy)BIZH0w4|fua937K=D8)yeMdH
zX?}5l32@)I8>tYn$q}rH=-d*t*#*i$$J}`K<yVAJ+6@_vWl0*J!k=5KYytR2A!;HA
zyj*H{Tz(Z@1-O?*|M@)0Jh_HY@IERPMyM&2$_F?~6`?Ye%0nq+@KQs_8KhEv2x^on
zp>D+G7kOO;T8DUNN_c0`yOLtXgHo6v^EZ;(i5kjLx&l|!2jF152NWh3mI2nta(D?-
z3VK-)Kx}n!53pCWJ;wfVsJaaj0EOpMgub}!;SHWg-9!Sz0QWc)p0B#G|1S!GesPfo
zu&?B3x(QKV@N5!#%u;T^x2-x*tYD4<$c}8QCp-b@J=8P&x}vDP$4)7$kOD#L!YI;0
z36~M@K@Ku7<}Ti4j~d)!I!EW*`&>5_0w@YXDjv0m#?(TbW)f!bgwW%^cuTlIR4n0(
zAfm%((I1LW5b+X3CPAD_4q`oSdQYeKar8t=B;v>bG3E#-d(QLvcFYAEp^2Vi<$obz
z)vn=+{nIE2;&=!N5riDdasdcOWHZvd)NS7(OFJh^2xT{(hp1s_KJ*Oo^2;U~*+4?b
zpv6EY&#Ktai$TaqATCbCjxi>O`Df5P7qW5^lpyx|my)ma=b!~%9jzrtZHexQ%sty3
zzXpTHz5LJt?&${)c_s-yfFeLr4{mhuqnavT4fm~LQ^3(`B3TotR;Hc903cy9Iw%lr
z&sm%s5dh4N*vH)8??M#|VgsPq1UUdKGYN|s7{<co$Jh2;FZxX##4uqhyU<Alqs|D~
z=4)@{JC69uY92X{!@E>{BkyqpF~VE?8iZ#^@rGeU)R{dQjluGU-cWTa0(hM3sv?*3
z!K%pToL3cHaWpNuG*#7i;Z;iUHB?S4o<e=#JiuaXcrgDEeIhG0{0M6GF-8n>#l;G3
zAdQK35QK$zIWZWyf)@^<Fue32>=1nmk{H0=_>&}BP(ls7kl+zLNG?~CA>eY9!GO)f
zisM+95Zj2JkPLecZKTVWcyTvv3FiQtJ6`EoPib0AaIDLI!f<R1Yci0OY$P2}OdxKK
z2@NE2HEoGp&fgHm2K)~`WOJ3MpiM%R)K6jlfXF@RyvdAl9gR@qsC`~Bah6urvLiHx
zxgu(aM?kg+$guk6ZFrM7Wee$IQ!V=l16m7FPJzyefMVB};yM;*Why8#7nr6hIVc<Y
zoRQIwHs_;ko<_jDER}$?UNHiG285_-amXxg@ytJrZG}G>|A`Hgbpu2n4Oo$EMk$Kr
zLdzCH&7qcxTIFwyZg~`B*%Thfx{F9D5JgdFe1rR)6<&Plr^0J>G?MOxCz}Ey3mB<(
zL=CXwYYy$9^XB(h$}QWPwyiqWj<_{eA!3me?S<RJ$1q6Nxs}S?0NWljZJBgjW(1fE
zOFpqRJm{>xwjK)tw~;q`5MlY{kChi7;+xtKN3kzFCKylxz))MekX)0F$j3ug`Q=*W
zPaGsGD8GUL$Rgelw48!XAw~?MxxK8!4FET*0Q8A~clw!L^MQQjdMMY3vKbNNMgFG!
z;WOk_C5W=q2&)$yP$!j%TU>>oEIrKVLVG}J;deXWu2tX!C!^UPkaIqK^H1U%BdlBa
z3`WEjvegr>CIk7&h?6BJBPWB&z+&wgAO1jpMb!hp{ZVR0!*Z;XX5r3srv9{JGm*CO
z1IR`Y(Z<TvcSCWaAylzHxRpi%y4n{kzULIh87+<|A45EDh=O6ExH#4+;`6pT`K3d0
z|Nqlb2X^x94J}!SO&(;vy!&Whe38k50CkCv+zoG28tf(3!q=9a$%=H5I++v-ci)+Y
z@k^T{AM1IOsHYF{9BZ&e9i;Y^i~VEoy2#NQ{pMfMS8vnV`0=&1BTPv<;#;?eEckE5
z|1|th$A8=W_6JYEUv>ch&45kE|4jTJhyN4sAG(&wY_?de*0i+rbQ&IctPS%xC|^pA
z#F$;N9-S0AN(W#^C_PCLjf<_84yeJdkVW1ObIxPel68p+fj{L+tK1=v5w}>R$}|=*
zL7v3$ZR&!p1EHbT&9uoA65aNIvJMtC`qow*87~>oruBdUyY5nciM(3;ej9nj$(3;{
zj0E&m3AnTN14?HOTYm1NR6}$*Hf$4>8K5P5@9;ZK$|}6owzK!bG&`Wez7S9-PZ1Qo
z*Vc;Id7R1Xm%BnPr5>RYc~*x%)3lmUgTTCl(Yv#-O#uP$^?)`@5K(b9P`7~4hB?5I
zY*<6hTWXglC@;CS#7#dZFgU_?%*--%%p7l0HXx6BSdX5v_Mw{{{_#{7%qGNSN&q0w
zl1ccvHT$t+u1*G=@Kwjm#>mv9Od={-Of@0$kIsh?0vnz@d0$PiBklh{Fq4u8JRw(5
znE|a(-0FdB%MMi5zk$);K%`V|L60$XtM>pJnQrMa>NLk&Q~xUJ)=}Hhf_Xt;6Imb@
z*n_x(CK@WR81#<DwRnW?<F0=Z2nSs_A4amWVlrZro6x5qbqA|XHrvG91cWemQh|^w
zlnzlq#u%^saz|P#>%*-m7jhwOs<QMN3=lzXTJ(STM)<3E3fAXRD+9N(^!mTEB!$Ky
za4T9;E^f_VO{2}T|AFlKY%05+mqO<Uw{njX86ZqEIRTP^l3G>_(EyQp{fx_~!tfa*
z)C)8-E~C1UYiI&1&vL11<kC-2t6j^DUP;3xgr{&mHwBYy9FhTVFu0M}K)K}%wF}}_
ze32=9e)LKrju3VyFQeWeW*8uexXP7)M1}b13b@J1852Aun|+6BKy+v9HN<y?!W}X#
zjLc`2ISc?kY{+Jqbx}=qkknFU&~j2l7(~xQ6KGVO8~#8KY`($@+Tk~kt&{GsNcCx*
zGp%gZ1B_&@lfDmuh`GMhS|=)IN9zd)Ny~uzPuddO<FhS=U3V@)#cp!Zc0+H<76S2E
zR<#8J8S^|MKG4#(yb%jF*$v!5WhWF$Hdh?${5J9g&Snj!2T+N(35AIFu!NUd>m)S5
zEPWsHiUcaM*rLh-**ukJVxFq;UX&8>7(?&div=i|$LKvM*^2GhOi0C6TGg1KWHg8+
z5MD9*eW%b;nhcjkzn>{EsX5!Xzu@}u;qi(LNy96Ql_p!R9}j{!)_t1-8dwHYN+j-@
zET3h01MO5Oc4E(%SeHUy4wPS&+tsgQQGKjw@(U#A!g<l<nL_yMvhCs*WWN=%2z|JC
zOCW9?A5fm2gsEaB%^{R_y|Nl_L=)a<awCRTaBQ7Pe9N-;{n(q)_KC3_$|clDvf^i~
zhoTehxyIMlvfv}g`w!WNypAGxkyLsD-v*Ob9_}pt1Ph!{*c-NoCI*7aYJBYqtR`1G
z<8vlDS~~;Eg-0QDA=>COSfm`KzS}f%<!h;{y2>lCkd06^8Z<)fQ-;;P2BCnd_H96$
zsvVPnL@HLSBkN4_bGqaYsPpFi(RK&AKaE<@-;~t4e<POBI+`ZnB#O2-8Na#sJ)0&;
z%Z=U%u)0k|j0t<l5vWlfD`Nz3v>uIL=Lq6V<U+K7^jUhf>{2FEgK80y?3-$fQk=*}
zLw@b)iO|55C+M?_Ix<`)e&-WG{LTp>G=`A_)bA+$Xri>>u(a}MiuzM{<>>EgD4*&t
z_(lBC^Yqs+*2k6WhG4E^V|88%|2V?m%|`ltHqt#%Cpt<Gd@W?{EPWfAnIM%OmP(H*
z*M5ecfVJl2K<o44C0^QH%bIc?7~vPCoDuN#OtmS*bdJ_-iMP@arepeE3xb6pG(a$(
z-=#BuCEl}JpoGTC#(7s2nH@h(TrIwZP#KrHdR)=t$uL-|E9Sa1dfXY#M5@VqGNMd}
zSOZ>){qa_shP5W{GN3(Rx4hu%+dw<<^-!;bIyBVlSa%He*U64`y>*3Quak_OC6lqg
z=t>+!*twIiq(t@-5!>tJL{EQZRWNoe_Bs<l>hamp#CzyWyQLSEhs<+h`{MaLdMfKi
zY`3xmOppCaZEfA4ZH}UH#KN%KcHv_mtpn5dQupM;-Xn>3ZFUnvfw)_c(1HIfQZ=h;
z6SbLH1kvCbz*tw<5&llBWX8D0Hpj!A1G}T|XH4G@W_0Rk>1h4L@)=r!54xc`%aPbF
z<wY=^)*ggU?xL!_M^LL)BO;RE<8^3WHX*y>&1HWc*g{`Ph1huBMs158KhM#83%a!k
zU&mQ^0}sss!gQ2)Gu2aPMk5bqfQ~wqBM|2>7^Aipdj-{Kc{K(H6zRt(d~*U?`2?LV
zXqguy)6oiBy>D-|+!NalVkO>owZIgNW2bD*YRbPIj0x(pw9}T6$cCwkkKk|vJCYDj
z8UsKevDagW6pDVjV}3@*wt+5h25hqv4Mf~$c?pJk%L`=A&W2rsY{9v)SCl-p`Qgj4
z9-+H?(C*AsyTcynKNAEBMDtCj-4F6i0F}S#jFn{KwFQ3%+NtU*ZuCxE_5cncvVD7j
zJa-_`(5{hN?OgO2NPZSb&M+>BWNd^PDB5!t!|WlXb#et!Y}?TU9qdGU<t>o2Pz(4c
z6Jm+!Nun!RofGe;89H~^a#%+99F`Z@DFokM;~;_?uwpX@=>qlwWzb}N{WT1dRd~+=
z5iW+dNMjhD!W~i_tvj$UiRT~WrfQl8AIl|q_9rMnV)(nP&o0*I4UAt6$lgHQCx&cl
z3Yi`g=Dy`)5cyJs5^YmIC59Ir&SwTXqe&3!OyW<h@hozT9kM=lWO~xk+9!Y1684TG
z)_KoW1F`MiObntU2xix%Y<3~W<4<UwmRvdx3bco28RL#YD(Ff<pRs(Nc;9Y0rV^3j
zs)C5&t2n7%!OSyjeY+5&=ru*Ir+|6j8OSVj=?aQ_JLNnQOcedL;tCt4-~?UIeuP%=
z)(&*yQ?PtKQV&>vui*V<A04yP?4__rKwALqqD}11sGE_#>=}gX>-l3PLdI{K-d9!4
z#jvFd1j!;n?BXA`s)-kM$sg(ZhHiyCH&~8wqS0K_WnzlCh=M7y;XNEAq7lK`2X;i?
z&X}$b|LkaeMV(EtnOU)$Gh^Q#Q)G*r(fCeeLi8Bout$%1BDPi&8a1)UihfKS=)B^@
zvQ0ESQoY6@J2k`6bSHY<*cTZWyZ1#570z(jFW24K$ipr+ffjoC7#iv%Jw@J5P4?g^
zaWFIbRtDbOU`z;yZ^|8b$tKDsluR$>0L)3IX)nOdMQL|^EqW~Nt_wifXOm=y{lxL-
zaHG@Fnvl2W>~Q?KqS0A+WEr-_leu<D$3R6?yQ6glPQVVr7D*>3yP-;ZV*Mb0%L?xq
z5(E(JOk||bBSJ!GT8`)lEaQw2a}xtSb?E$DfM)CGCuZj)Ut8=|%+PFNI}c{)e9TY@
zYI1B3rq$la893aUbj7QVdnTeR53-YwCte@cF~jO5r_1NYZnGtNoUltRCMik>`~@wy
zdM7&?e+ObxGCoT93-!_LXzGV{Kw-b;d2a;sO`~Z#<s{>2>;Ui%p?j-bfJSyfZcm<3
z;;j!aDk$+TaWu~X5)|`dpzA@=@3v*u&2YK#R)A<d^N_Y~p3_`cxG$Vhhp_p15&Fzw
zeXPW3z2bRC<D(d#B79<x$#ozZNL*3jU9$8qAOLi=Y2GJDC^{O0XkFvB2tt*WOv^>n
z*s(XYD>sIbh~4N7#9j%x8Rd2;PeN-&45>W8vBlfbn1kYS*Typ7dag{tvN8{WNFj`9
zisd{{Z&?VPh<8e)DBd_HU<v6574#0h61UjC`)a1I4Qs(<lVxAs4D-tK<xbr7apQ{<
z|8I9+9$(YZ|9`WHkVIlni3n1ZTh6{Oi6*fn8bna7okpsqng|*dC5T%~i&CZdqK&GZ
z#x4;{N)WX)YKx_9B0N%CNs-@s&b{fA$19%S_wVn#?&O@AIWuRL&-=5?Oy;0}1B<&t
zq~Po@a>Vk{oNEC-c{tV{4aHgO2fdsbnjwYcupVz>J&ugnvSY)V%wy8Q8B&P{fH6C-
z1W{mm<*1KH&SnF}L(R7a(?30!ba<3^PBAGd%(^30h#(Y%A&K*!@dbL-ffKdSIgL??
zexQ%{vQbWh05SxjNj}y{_^00@&yjTJ5S{xcfy@k$gxPTzreBh3L4Wg4-}~>#8Vc41
zUD0bRqay;m6jUS08v~k7IB?}_qXWEAn-Gu$_bA6b2`7oQ_azORdfk@hfpug2Q42nD
zcN8Gf^HnTs*>Y}qsRiS`rd}got$dW@mh?KwvxgknPBOMS(<--0j%;+uKRL)Drg+=i
zm4pFGXgjh+jIH!l(xB(L5MXispWcEpRYFuDl5Eir=!j%<cC3coQ%gy^qA<SRfTspk
z$G{MUIKs$?E4lvGE+0paz&U+!rWzKK@iay(JEthXr(kxj&uO1uo@ZmzK|C}<96@%W
z)O{OSkBL=s#*<GDk49xAa;@~_wBymJfaEygit1OK0=YBoP{{O)s9+Gj2pAQJHFjG?
zMpR&_)uALBvc*nVgC%c*z#wMqL9XXV35SAwNg)Pzmy*GVa~g#IOmb`BaY1AUMd<7t
zCl|5!T>%;cnK<=m5nhF=H?}lakMf=nCR>9%o}dj)dl#48C*)aJRRbg&)f^G36S3q_
z!3eb~Qq{I3#@G4X!$c48>4B||fPIF7s5!D^gwG-4prBi&zE~~f93><M;Wq<wN~}|c
z!F2+`0a(00%pad|jBxY~%=z6L`@yY#&+#ckVIhd|xknylf6hn=O!R=(+jby%aT9<V
zMYaXjgQowK#Ak*j(Xau79A~Vf#&Ih-PNCyt`#6st#~ngk@q;HIkpc_?#vUz*R>2r?
zQZC_)K3JfDJ`jR!3y4nYgd&Y<i%fL?&oWn5DKjWzCXrzoS!53=(JpMsK90_TuaZ_}
zbPi1ac>+FDidjG+DZ#ibNlC6mOC;83P;O5$h5@q=_KC-6K`qIK(0bzd3!UIng`vq4
zBc~KCz^WqjJExgLh?&qUG1_omuFqj?Nx&5p?WAR&9GpdsPgPqsj7Nz@1}r`fPBex{
zn<dfEr)1wt-Nf4ci#HWlRCJzNv2uo+ZQK>t)uLFdB~gJ+k+mFEw?3HN7RGurVqHfP
zKGwg#=9S!%)JVx4-vk{W3d`y^rjfAwA{(nW#f^c~X@>$};neF%woo+fO&%(K^&XgI
zTxd(oS|GA9i3}-j1KLFC`yNzOVDbrrh`?5uxOlKNDdV39e<1IV!clX+&hCy1BnBfi
zPis=Bci-6;95KMc84D3loQUu!uX1<`Q5(x0o%=yS4zpFRBK3*y*>h_U-kFc%r2Ky@
zBln;{!==u-rl_z!QjzS7C6i(eoX8P_HIYD~)@7Xrkr~h^L1aXw^f?CVGQ0;4vZh|F
zNwS0@Oci4Ce91r4xz6aD&giO}Jc%9?1U-hi2yl?OxdyiVWT~q!=rn{JfNv*%g0RY)
z8@q}Wi&Of*5JS;Tuu*G2&z)*U^p1#2E^y$Cy<a@;Li*LWsn7gp*0aDK8YDw=ScNf7
zoAmtC<l0y<t^mjaOIxK)diH7ZD_A0U?#RQ(1T34p3^qAT{H&bPixw&36#Qczzd|nw
zRnMdhP>=i1#G;QaP4-T%6+Tt&)u~TZl6SazeEgkKH(dN@F0@kXCf}Qu<AKHPFpnG@
zR4va)t_L>AJx9$Xm}7*WB{d6I^Tyv)kEaYL`8VKgL7mid&{RN0rEh`rYSVH&6FrMN
z-$d7=V;rX)T|JAJAVjDNEeKjgI+ILzqtEPQj@%xLQbH@nVqVjk6o7uBfIob4g-o^f
zCFcqb!rn9|C|4CD4$}q=c9WZ3c^InVk5RrApKF1q6d${I?3sjb_I7gjDDcmMij<Rl
zn=DWq%yqb_?#WHDI-z#LHavV6O6}wgz7X!KcJfX3*zA_eWaq9bbG{-tf!xG8X`tV~
zX@bOpw6QRFuebm$L(|AdHGJa}$Qp#T1{vV`aCkJnv~>aVOX)Zg@k{h_Iux?GxH^)(
z$qB2|a7#WFZoLA8w-VYxm30K1GF~6!RysT}U{2)rgb64;wzw|~z{V6*%!w(S7IU`3
zaVC-Kmx#5)Lq{X?Ks%U+$}i5t0e;g)+$P)qrj2-jS>wp<8Iy}+9e7nnav2W&j=+Nz
z0gg!U-=NYOJE6p-Rh@&3z?vtiUm70!U(|01so!2#{jwNRze3cnXj;sr3di}xwpRV}
zk46@N6Qh1-i`!cDd*Irhxc6ve8L7EdKU7Y`J*iybzbofDRy@wKTT(+49KVvDv}V~M
z+(}ixAytJH!`^ZBW}laJ=44bBbm*#WEmB)+iJP2XiY5Pw-PUTAMCuID1rvn)+XGSb
z!-_w|A|&#L09kKa7|$3TI-HQNJr*X*ScH;blT5%h75VJZ&UQqQ4{iLrmkAlifqO)w
zEiT$f@`bK37;~$2vA9{+H5%l(=v+jQ{R#j7W}W<xW-&N8^*@_cNhhv0!Blg$X?YQz
zJQRTXN2A`c@cr;kZ)?kM9QOE(4voY61JIrTLNrdUMsRQKa`wfuUI@iykiT3BrZ+1v
zdA_WlBd>hVW9&5<={R%8QMNPeu`TWHoZg<~v+S73I^#HUH>ac)Q9nKYE_H)4eiY=F
zd%bY(kt56ZMK51?al{XYbD1u|J!&#jS9Si(ZZ_DkbmS$QXY(_SCO3NHz^uU|W~pKA
zx6La~{iXZFsF|6Wg;##_YwuRCZ@ZCQA9Z%jxE~yTza!b<R0MA$WH%U~B@R>lmcx4A
zKUYG0A<m$U#FGJUQ6)?|t7VliDX&$Pa1GptRtb}hQbeC5j+9puzBLKJ;UB<kq`WpH
z07t^4ytX6&N5Z7M*GK@4go$hCyjbOt+xD(7)?+MZcU?)NiF@67!3Pzcu7m4Z&votS
zx{|gMN9ssiGv~#IZ8Vl^;JQ|pi$ycbRbHD^NpJ39Z*H>(*RThB+Jimp!S428H+!(n
z-ppnX@>m$;zA(sbVUTTMQ=7es&F*fq2iCL)df5YO*aJQ7fgbiicYC0lJ<w)vY_m7A
z*&EvI4Q%%MHhVpry{^q3V6&5c8}1s%Oy@Pk`TEM**}`534}Kx+48HKUvJYQ~{wElV
zPKtvkbW)w`hqSlheKByPj+L&muPehZUdJL&(tjy;0@709JzeFx-Sf274YS#5E%mfD
z3$wYucqQo#!))HJYfU1XsyerFXMVR^)^p?wCja4F<$3&b{la?AtupK?w+0DU)}!i`
z^iLYb1y#0fc8wEhb0rOu`|8|aWEc+rvi?m#+Gu$17y7pn8`YIb;>M!DB>0z=I{^u)
z@L?$1W~0a-%aL+lmWMo$hQ#UcFMDPd63ChH<X?|pEZ2%6(bc&5$g>b0ziQnQBrJm`
z^!Q@ARq5`<%qx*+4Lp9;x=bYe08i-n#c~O6dYRjdJlo;%tJdvA!d`eXzAu(bc-+fe
zHu4;T$FEvP^qhQnLKjubt>o#|W<q2E@|=aouUc1#giG*g)s*|PJfxr^B;JI7*)zpR
zxD7w6nsTkEYHNet^vLr79=~ecV<bF<pI=S6|BW7Oc-|BKW#xJ!%@=+N{EPkj-{>I#
z&o_X7S-F8o3xZz>|6;lSjUGbqd?@_O%594@$P-&8{EOuhS^P3b;du`JW#vjpBii3)
z_!rBql$X_&9fs#4;9pj57o<hQ?}R7i{(AkBp-<GW-}quhhdLiD-#v6vvrRir?cCNQ
z<JHWNYwsmY?zTQ4utBRwF;h$5J#xE7`sX8deY^4DrMhoy-|1g3Dq`W!_1DZQ7+bq>
zr`>&)YCpamzOC>2%=8GafbewxCG}f+jvYHZqhhdENkRCgJNLp%l8WZ~{5<pe;=<q_
zYcDKL8MYwNb7)TVrl7NLMXry0e{aqS=6>Mz4_?bVRHMiG{&MlA__Erztq-GjCajJA
z=Jr;@jCEhSpG!NH@U9~!OHMtRpsd*csBCrpZmr9Vdqr0c*W)^J;rZ=?6R+!CHXU6V
zpWDOx<9*MycExRK$2caQpLKBcwd~996;;$6@@>?|Ti;st$>BC{&-GqhdiB(iuKT-R
z@LIdI&Wx^Qn^u)RYZtLCr2hKotoD09E6?h@@4=&PpW0YzM%mAK(f8z(UlyFLyHv5w
zZ)4`fWF5$VQ1s|o=jCSuGXIRt`FuCGp@#dI2Avjlh*>GmZNF>X2)FL%hqUUka))tr
zSqJJ|)iEmqL09TLX}F&czY=~kd^S9>S@3^`k<lSlbJ?ta92$$L5Ns+U{{MpO{6<_f
z!P+}$OoyZq6OwS9jBu+{u5jr4ACPtuGj(ij#0?*kGz8%Q$og1ZJB)Ki5M4W)gol3g
z5iVB$kiK%JhfbO_Y5350NkTPlC*r<iHZwmmdzmB5ai);D%#<=^ObFYWeVrZ1j$|jW
zv)OhW%f)gZaw*(0eyflr<OvsqtAZj972g$ENteb-E2QtG9nwC@TlSOvlzNI?)zlBw
z$?B)-EcI)3wYpy2rtVR5)#K_J^^#hm-c=u|jkFG$ti7+LYjd@~wC9?v$LRy~S^9i^
ztDdDdG=hwHW3n;L$TAKX*Nj_6neoslH#|+UA|C;;FJm&9jm$RYFmn?1e#UsR_1R!H
znVrJsa4q=O{9Jws{{z3B&*6{or}$s^BK|l2U;KUEM`$cif+9o+BZLXUbYZqIUsxh6
z7j6i5gb&2?;(hUN@m=YEr0=8?QX@HBj*_G0x8#xX=kgMHyL?f;D?gA&DdUt>WvVh>
zO;bNp7pkk&Z`Doec6Fb6P(7udRWGa8)l#)geWto=K3ahGiWaQ3*C@2t&^l|;T7PYz
z_O3QsYp+v!FTJlmOi$30^vU`h{TqFgzFp7O59`PE^ZFJ2re2~y*FB6{MxfEmXl)2a
zXCvC^XS`#KF(w+bj5)?v#y7_I#y0fQA>)QoY&<ZY7!^isv%VQ<+D*aK%r0h(8E=j>
z$D1FU8RmL(t7!{?Y=F=@M_r{JQstBv?L#-9o6)W5_H-B>N%y4V>9^^jbRs>LPNo;o
z%jwnhCVD%)k3K<Prmxd~(2r<0rWVtPY07k9SVm(anO;m^CYhPSIGFj&m&|gE&IaZH
z^AmH5xyTeTCCn417F&l6Vmq)L8^iVjWqrzi#ja&Hus^bU*hB0I_B?wLpJu<u{>|Dr
zFV2^1$Ti_Qfc9iAlIzCx=7w=e+(a&o`;1%6t>V7tHgP+-Z0;~uz+K?3bANCTxF?)9
z@5k5YU*TKwZFq^-`8W7pd|!SrKbD`$&)`4jm-CtYW_~ZI;uxsnB7c*=!{6iGg_=Tu
z&`4-1v=CYg9R*J4EW9c75rzmOg)zbuP{<--nUE=L6ZQy)gr9`-!bRbxa94ONJQIAy
zx?&Ttl}L%27%TP>hX56$#c^Vam?ox+OT?Apx8hbYOUxDv#B1X3;vMmc=qdS1fl@Q+
zHHnr4$&|WC@zP*vyp$$=CVeg~2KB9%HcPouo^(>WEM1pMrN1R#xvtzu4w4yJ16B5v
z<K;o}aCxjeQBId<%d6!~IZNIvACynX=Ru{n<$Lm9vX|ncG*ChnUQrZNiBtwCBb4#V
z$4Z*wQ06Pkl(oth<wxbLazQCp?kM+_CyKjTQw>x@)YdAaifV+~Lmi@yRNq%8s?*iE
z>QZ%$x=!5*IzIwBzo-_e<!XgWD7=x@LTjgW)WWn#t-JP?Hb_g*CTJPJ_5$rIZIhOz
z9oCL%r?f)tvR0zq1KvIKrh16pQRj3;kJMxJKKi@*XnmYMRiB~H(^ptH*sUMb&jJNE
z^gs1SdWG(31Q@RvuNv(v6bvv18zYU;Mv9SY%r(9=mKmAG2IEKLh;iPyXk0h$7){KU
zz<>x0bT?zo{^n5gJ#(x%%ba6=WqxC>F~2vrnLEu><^}VrS!$M<PfRdG3j77ws71X(
z1yiq56xEsPNhMH8R4SED&88Mm%c!-~_f!_OmpV=rQ0J*j)Nj-+>N({>*P<KJP3TrM
zOGnUM=^k_+`aK|MBK-+Hhh9uCqu0_K>AiFgeVRURq38~MpMDA?)nghn&0I)|X5L|j
z0!eAiY~bi?<~!yGW+#)w90QWBGB?4UA2NS4ZftGVpKZjpVQE%m-(b72J=r1bI5q|R
zdJ(&v{gz!1RAsX#*$eD-_7C<x`<V6Q{J7>^drs#%aXo;i{@ieGl!d9;+&pd(w}xBC
zZRHMfXShP(=^^)ws{<?rf|s`EIbf*=kTi<_h@Zkw=V$Ya_;2{t{Ez$|V5xvV$6o<=
zt>8U{T7tjus)eBlp(`--mM}~h4Nf~*SO6}&PS_}H7Y;y%oDi-6LnRi5yu?Og8__P(
zqA13QeZ>UveISV7XRf$dTrFmbx#9`&f_O!|Dc%Byek|6K>Pn5JR#ICaC|v3#^_2!n
ziBhsOMRG`sq@~h2X`_@SWlQ<eX`rV}dMdfeHRXD8Q#nMYWdRuKF2~CK<x%n^d5Sz8
z2wDjQ{V4B|v*nZW8Tpd@oBXHzNDfdMDlL@Oid_+vFd!&i8K?|b#wy9mC(2x9g|bFj
zuWVBeDL*Oal&i{3VCb>psrsp}sKKhLhN;nNPqnW)RDDk!3t2JC!q5se6Bx=<PpIeA
zUm+*%LrT=t0=1S}8%st+YTbaI_qB=IC)#vvp0-3=u5Hw|X}h#M?Syt-`yKM~sph4>
zqPMW{qwAgY?vS1%^f7umu(MGAAN@OhgT7PG(U0iA=$G{CF8uf#Ar^WlBg%+1h5$X|
zfSxoX15#wAvDw%SDRRR2*(ii0xo!MuxSKUiKQqW|VYV|B3qyU(0p^F69GPn_HCLFK
z<`#3GdBiL<ubcleADHE41;J35%|`5{T2up|s2$aj;;9I#E7gk{N_|94pe9q(sIREi
z)OKnYwVygl<x_>!HR=v^kMf}d=;m}N-3}Pi=x{oY?oSVLp(ul1O0S^T(CdMqBlL0l
zB3(q^rvIeNX%EJqX~4V&1SyOOSrp6kX9hB3m=tC*GXoN7F;KLV*~jEFzcAOBznG`M
zk3ZXhZ3aDu0e+%^o_E-xYy$fco61gQzhD;wLqD)v*xl?gNTnhm=o#zI)#Ms;L0ntz
zbxz<+t~<1%5nLiSp8J@a3aPY+Tgt8HwsE^4la2vJH!O)%6Bug7vz9dKYGG(FKbrrL
z&)^sEEBH11_xx61D4YM8zr<g+G?b^juMh-D)KN$grV2BJdBQ?r4Un@#*e@Iv@`dZd
zAHrY4Q^8&I78^qLP@*J;i*Jf?;yb|2WT0k__$8#yM#!5|@uB!!^pNU9-h@i8L)xfP
zZ>gV@AiXbrBu$iN057W{ZMH}UrK3`TR3zP%{*pXoUm&HGJWfuPJ19ey1ZA1}lX_C+
zHB&3q>g$1eBJ`D}#xP@)QO9g#CYkx>GcxW_Oo<&$#(O9=m-?FemfAv{1#k4EC3+N{
zLQkXT(YwI?F3~qJb`R-iv=>tc+^;#)lSyUfg3p~`&RBZr@5~ZNYa*qu@HhC|{GWU|
z_=~sTCv*_vgn`0v;RE3lVH&u~5@D6_EoAdf;jnN_=qbjFsc6?yXr-H^?a)dOOBbXo
z(jU@oiO9r8N>il`@XQ0xy_CMnV93OAN{TWAGVx1grLs=hsAMU7l|1Eya$dQnlqnAt
zH`Pn654qR^a*<PIwUgRejaLV#!_`shICYYm;llL~>K01}EC8~vs5hYJK5*%PjVyGt
zngsdSO^eqCXrr_bv=l8>o2AXszSO?f)<8<`(XzFC?X-49yP@6H9%#=rcRfIF2%NWe
zAw3c}?+>IW>M43EwB<Sa*ZN9*oxV}utsl_y^b?lWcuT*l|E=2~EgKpwpfz%aY;=Om
zj5Ycg12JkuW=@0l_&KEJYDmrP#xCQaanyKZJU9HzdXSoJfc8G-Ky#S+kvYMfZq758
zn9I#|=0-EmJYk+UFIw`_HW)TLhTRWXDq|nAm$+M8Z9bk)fu?nkf5f+u3~4_2@foR5
z+Jv4d*GNm=)IZRX2}TOBKNNZ-J%&!ACqYJj2^qPD{(;^>AEfi?Gtf2HGTWKm&?8SX
zze4uiVu*zE;Qje};KkjP7V2xzNlu}+-C<3rT9npPOVSo;tF->mBW8jZE=KQU>Ra?(
z&?JuO_w*-v7o(Te)&k?IansV4YnXM+re+AVgmAR^EpxD$2o9HKer|qgE;BbkUp{31
zWL`3_nYYcyrY#Ni2939;&QZTot!awRrSl-suh2Ij%^%aAj33hk^sF*rOdR;oAZ8RZ
z33~AYW(o5RvkC3l2O7V^{Lb8i9DkjSX9qw7-pjtp#c}U|n~dS6aMQW@+*jPU;3h}8
ze6EQ5jVpyb_Tqi`=6opMj#v3GzAN9KPvpn(pYSvJUC?7ocv?_}RPc+1!V2(<&EOX~
zz(b*MS$HBm7wU-h#aG1U;1;|XE%tOt+415G@QSa&EjEaIAYDsDP3k0_lYW(MKx#ge
zYRI*rbvBpnkeV@aFW5ov$sfue%b&p>S}T7qZ<cf9Bl0Qvs$3>NmOT|e=$Q%1`%1QQ
zMCq>%RNqyTpgTJ8v0B}%?odyw=ha(4#zSb10a`=tHH;i*p`y1o45LR7@wt|(-PZop
zA|cm^_IDfO_FS)H)Hj+NZ4KT~U>gpA1(ak=GNv1gjHSj#SU|gsW5y}Su3}g~Zjf7z
zVEK$QQ_SP$X~LW4JLg@8Q=_PH)D&tuwGc9BEwz!_LuEsUyJlHJHo7+5ln$XeTBc1p
z78=|@`U83jJrh>YGWsOO_Zh7+;mj7;%m-k3o?&h<#mocPpF|&P&r)mz+m(Hj?awB%
zW7sq{oprFw*j4N{b|-tBEr2ZfgKfgC<}$gboI7-=rO=@^^E>#%;B@Ets}`U06Y9YV
zX)loRj23#rPE8cXx+K90jO$L=ASZ+hp|#jvoC0o7EQ!_<D@m{;Vx<1kP-%>mWZ{lz
zLEEMM(kbbzR4m<*?n|C>Eoeb4WmZ<@&d`89mDkA|Wp~9}*{|eUmOzQ}FQr`ZPy?XD
z(5j$zQ{PnksDq%tB&(_F9CZ;adcx;+tH&%0pj7=!ZKL(jdTZZl8#H3cPSiiq=jscf
z!)NL{^!?yS7r~Dn=;hGg8yZc(kr<3%n9&oXI0&PdW~3YQp}prD_l?I!wAstFt+a;A
z=0W*E2X6)afuq8pKg3gms1)eo^QlFUEo&|PAsae)A$5hiOFf{TQGT#uThgyX+KjNI
zOiQLcQ1}+mHwl*GdhP&M!rkZU@&h1&*JCbYuW(Q}2Za14{7d*-aDzns0vczTXp^>B
z+TbDiCmElC+l;wikkCbX1hW-3?K$Q)<{SLjdKmFHEbZYO`ztu$Uu;uo*sZuW(6T$i
za_x?HehpidSgALG;b)v5bb(gT2Ew2T^y7!{6ZmxK(o3NU?Bg%<fAbA7>Voiw5F_*!
z`UA;_G1qcecmM=f2sK4tv7XpMB;!s{+|82siQ<Q_HK&NP#ChT(ak+)$ZNTy&F<(3f
zJU<dE#9%23vov{931qvc{5ovNE|}9ulE0B}$eXntT20+o9|C!jkFk2HyJ2SGD`<b^
zMz|SelF6kBXge8)WT56Cb&~1`e2l>CKsXZxJ!=><k6FkZfDPY~Q@CVMUbHd{_T^%Q
z%!>rUGHk06$!EeMOb0*Sg4vCe`WgMQ-qxTE(a<27h5*B>pnWRf!Gp|V=#sVq%u(RI
ZepGAf0CkwUNj;?xvH9$9Xitc?{Xag8t~CGv

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.inf
new file mode 100644
index 0000000..96cb49b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.inf
@@ -0,0 +1,272 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitDxe

+  FILE_GUID                  = DE23ACEE-CF55-4fb6-AA77-984AB53DE823

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchInitEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitDxe.efi

+  DXE_DEPEX|PchInitDxe.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xD1F0

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.depex
new file mode 100644
index 0000000..0e34453
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.depex
@@ -0,0 +1 @@
+sF4e��K���
a
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d1907ecad347f4636adeae8dc01f091e90ca335e
GIT binary patch
literal 11776
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.inf
new file mode 100644
index 0000000..e3a25d7
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.inf
@@ -0,0 +1,136 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2016 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitPeim

+  FILE_GUID                  = FD236AE7-0791-48c4-B29E-29BDEEE1A838

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchInitPpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitPeim.efi

+  PEI_DEPEX|PchInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x27A0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## CONSUMES

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  ## CONSUMES

+  gPchPlatformPolicyPpiGuid

+

+  gEfiPeiStallPpiGuid

+

+  gPchPeiInitPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## HOB

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPchPlatformPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..89550b75de68aa683924135d77708ae9cd5b8634
GIT binary patch
literal 162
zcmV;T0A2qAsbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0=K`+^x*dWN1fCV
zsPRz2kpgrpaKa3LF+qn$kF~g*<g5bSYvBI}VWviVvRa&e#V1?>jtH0Q-_OQLzDwB#
QrLqo&0|NsC0|NsC2pfM&K>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d3f7d28ba40071611f5bc590efe0b6637f00f132
GIT binary patch
literal 18432
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.inf
new file mode 100644
index 0000000..4db596e
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.inf
@@ -0,0 +1,284 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitSmm

+  FILE_GUID                  = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = PchInitSmmEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitSmm.efi

+  SMM_DEPEX|PchInitSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3600

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..6f989cc9199142f9565a01ca77ca98fc2e1e5354
GIT binary patch
literal 108
zcmV-y0F(a$x4+Ev;P(ATozxJh@le5$0$V^JIhV-VM2PcDNs4dxHUa<yAJZ0n7DK;?
zU}cCqKq~^NWdTdpVIxkUwLZt3E-=*s_VA+<N+$3=^5EXZ5;QL~0(2{I!VG{hL5D_<
OwYZ$*tOElB0|N--m@hg2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4dd842abba362f452427248b677943489bb0bc85
GIT binary patch
literal 11264
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.inf
new file mode 100644
index 0000000..08e3bd1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.inf
@@ -0,0 +1,245 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchPcieSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for PchPcieSmm driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPcieSmm

+  FILE_GUID                  = acaeaa7a-c039-4424-88da-f42212ea0e55

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchPcieSmm

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchPcieSmm.efi

+  SMM_DEPEX|PchPcieSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2600

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiSmmIchnDispatchExProtocolGuid AND gEfiPchInfoProtocolGuid AND gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..9e8ef235023b5a735ae32e612d4abd04318ad855
GIT binary patch
literal 2368
zcmeH|e{7RQ7{~AJ-rI__&={H+rDn#rhQy_TyHhbCrkR2mtD+1=5#4~zWkF`Pn&1?D
zX-D_AV>0<21@qcYWya_xQ_-N=6!(G{Lx>uUG3lHb7ne8@b*67upXcphM=~|p-(GUx
z``q(9ckew<-@bRp17yanXT~dMzHr4-LLy4ZMH^&^>#Etx9MbP1q*^Vy%7L+G&(FbJ
ze$lGpBs{AahqKw!_|fG12m5qp-A%|*aGWY7Wd3vkGqi=GwVR``_V8q0m@DQdw{k-2
zLmO(MHDGLo5@GJ<<S5652{|5Ws@>SQzIawVb3X*&D7P>nmF>4^YKDLVz?~T{0|+n4
z*f5S@=&JV7yI0<8{si-s{~1v2&y@FR7(HcaH0qx!<`|Sh|30rBtg~nr*c9TKZ_z_Q
z=t&pdIdcn!pHMuC;cS!&=wR@;w46m>2YL$KCzUjYnK2N4T0h~kXb+$deZzT+9s#I^
zUTM*zFl3>-{aZoxp`1PpJM{zG@KoIO81N``iyjBX(|))SBzaw*WBd#>>d-0BF^9eY
zJqODz`Zdrv&>$TF>NcFD4d={<)Trty`B~K_JT5&L2e-|?)q|LTojRGuvp2BSb(#GD
zb(!Zuk6Z?l4756Gp!&Bv+UZz!gIe?es86|6F#-<)8U89zs3_)6%k<?oHI^3)_r!n|
zcH=wW5%%eSsZBpNxCZGehzVMBH4Nk6GXj`RGH?#`{#2><>m?r<rOV<Y%HwCv$H4Yp
zg#r~it9u(^as?)lhfMQn^qE**J?I9twF%veHJGdAJifZ5w;qfs@9$tqJ5fWniN(@~
z;#$cd-2~nVEk8){S5a4{(bcikuE$rRJ`2ZM@sbT_(H}s^U~W+YgzvaTRUpjD2t<LB
z{>`9<^Qh!nyU>YWqWCf2Lu=a4to;~xs&&^Yw|`Z0^_}M1H(3Wl3%@keU9X@w;#(9e
z6bjDv2^|QYgO5t+*H%v1D<obl@r@G4$W;6`iQ^KtN}Q0mO=3ghq{KTU?v(fqcfqAk
zp7~9Q_e#7^;%yQqB;GCY9*K8Kyi4LviJz0WO=3ghXC>Yt@nMPkB<_{?Es1+B@YJvS
z@8kt{HFOm|U)cX|(^ufuo2w$_@bcr`;@mUZqnj`i|CCwy6r8_P`r#kD5bU9*;w6J$
z?s@26*W8TpSmWvoeyydYWy88h(D5G)@5>+yvFq6~7GYIv4O`C|*%NFFi?I~j!(L!7
zvu@VQ-eCjm6ZSbf&AwsZv0?TL`;FyTfl)q-&*Ag<<@`#n@dZ4@8DGqo@JfCgzl+!K
z2HwP<<Xd@yZ|6Jte*Plw;;->O{yrbzXZR=|<9~3Q`$RxoBPzrqaf1kph`2}GCmt3J
cqFJ<vm}nCnVwcz_4vJSruXtB{Ac{%-4G7G=*Z=?k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.inf
new file mode 100644
index 0000000..9bcc7fe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.inf
@@ -0,0 +1,109 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PchPolicyInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchPolicyInitDxe DXE driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPolicyInitDxe

+  FILE_GUID                  = D6AC4AC2-8BC2-4cdd-8776-280E1469DE02

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchPolicyInitDxeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchPolicyInitDxe.efi

+  DXE_DEPEX|PchPolicyInitDxe.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.efi
new file mode 100644
index 0000000000000000000000000000000000000000..606715b3059cb3749369e676c38e5f2bb523fc19
GIT binary patch
literal 3584
zcmeHJZ%k8H6u)hsiu&+%5hovDvRNnD7V>znZm_usN?o0>lp$2+08xBv8r+z)1`WoN
z+KlJTi<o80V$32s69fC8n*-EMTfmk$w+S=q+!mD}77Lc?0u?K7=e`!xIg=UpNweF&
zbMHClcg{WM-1GkAy@MWkv^}!re>XH45Xx0){^sa1Qa?LgH3Ol^Af_U!5-rT+N{R5w
zS{+@-PFcW2ZRl8e%$m4)=)odX3*bE|2qitV(Z2)JZ0l-l0MkzbLIR4(b;3FYAxm0C
zxvd-oxhfzaKqTjBaK(%)gu2o;tgHNBZ6sC%F)O(H3IMppF=qcSpP&j9nXyf$#kD#b
zuh1n(IZw-(<JDAVsG1hLoxK{*fcn<{z!cFd)y|ghiru%q2;&?bT~^w0Ix@`ZZZM9+
zxjI@r1!%A_-)aV6)5@|Aa7i>&kv|bi1|02gf_}uqu8~cX{8l3KmUiI98AX=UDbTb=
zAXX&Ccfx#}bRvFpp(S}12(?AxtZzXo#=C*;>muX~5P4@OLa31lEoTWy1!6^(q==E+
zK-A7owzNaR$P36mvMDFZ5fk8wi#rPOpmQ)uGW=<h41K0X#kVQ3xY*@p>TiM%rp0ib
z?<puUJKbugC2zpGuyl09nyB&A7lIrl{?QS_4Ddb0qkrHF^@V=duQmY`*92_u)BLhM
zuitT7ZPzia-UAwYvbBQmDH|Pi_1I^C<U|9MMd7Hgk^@tj7SHyEwGbQA(*D|ojma-u
ztS`CdxJ}z>VX4>9uM$LiUtrp}r#`PgpaIprkgY1&q{G7y_DIdEI9>}b8WVsBxGu}V
zAf~me?utW3=mdGx3AkIpJ|W1oc01eE!VuHyp6-+K)k3fgj%5|TT0*LlpI>C=WqecI
z684{jBiVNW{JGrrX>C&xats_p2>H-5!`lUoL}3<dC}rWxiW3sx0ON^N%8oNh*_0&_
z)}~158xDeDOoV1L7IPp(#klSY8kc1Y0=Q_TV^CNmX+$w35z(l{OEY{~S%+uBHimGl
zcgYZnuu5N<Elm)QRcj%AHPIItWu?(Hor83d*-Di{2Z;7CGy%9GO#r==0h6T)h-_k=
zoe7Y8jsJ(cvK$lF{q=>CYR(Pe;kthLye!xKh+ym8D{-jq8rj{Z8e^t1DeicL&}z{T
z!iEs@oZIQ4uouoG2yoa8dxI|7rn=)ZgaC$|TSCY-76}*bK&p@*dhsN)O(ZJ6%C;2<
z<N6plr8v;1OzTQ5@0JQug&@8onf1!~O4WL2msY^%grH<*716vPlu;^Rh2RkcO(@`>
z1?&-mQ4BRSPrf9}@#GyQEvHC$@g%xnS*cj5qgQ2C>f&r;B^~}Fa9~Gn!;9mf8bCKF
z>IUfJCe);lwi{?@{3&fv07oG0fZ8@w2^GTuXB(juS|ny0k18%E-|!j2kPBoThOBuv
zIV1(`bjO(*$=z?IWYbGgk@lY=I#xvR7Se}`k+U;J>FaylVok7424~Jr+U4Fv@$P^I
z8^UDAjsXY(Dce~hy#O$HRuJivGU~tlY5wV@XP?@Yfg0v7^5j8Ymq~7W!pDZ+vV3hk
z+FQA;?el`n!r|umZHJ!Ebr@|sUOBq=(xR%Q4_)or<@*l4Jow#0-22(av6<;zzGWX>
z-?1dzp8qNFF)`*O&3OiX3R!~6Q5C92c2tShp+Z<!fW!vt9Az$_FnYjD?w2aKeoKMt
zzHgZaz|k8^R^*azq!Lh0d^eHr!SnF&Q+VC__Z2(vx0+z0-%P84f0ytZA_DT_fj>%H
zQ(X;{vOkF<qStNSyt!h{dqnX#4yZ>h#9hxy>?iDAwwXP|wy?)oFZ(@vhCR<-XNTDk
zJI>Bd-<5tU{rB|VbdFojt>9L1<=lF%n%l~4<92epx&2%d_YK#@b#s@wt6YFf;^*?I
o{OkN;zK7qUZ`L2yAJ_Zz-TI6AKK+1R*3Vs#y5Mmv*OM0WUs8CWPyhe`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.inf
new file mode 100644
index 0000000..c6a3d2d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchReset.inf

+#

+#  Abstract:

+#

+#    Component description file for Reset module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchReset

+  FILE_GUID                  = F5883FC5-F8EE-4e44-B386-6021FB320C9B

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchReset

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchReset.efi

+  DXE_DEPEX|PchReset.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xA10

+

+

+[Protocols.IA32]

+  gEfiResetArchProtocolGuid

+

+  gEfiPchExtendedResetProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiCapsuleVendorGuid

+

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+#  Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..04bbf370588214096fd0bcca55cf18143921e44a
GIT binary patch
literal 13472
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.inf
new file mode 100644
index 0000000..cfc7783
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.inf
@@ -0,0 +1,251 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  Component description file for Pch Initialization driver

+#

+#  Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchS3SupportDxe

+  FILE_GUID                  = 14537da0-222a-4bbe-9a5c-212a3cbca9ef

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchS3SupportEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchS3SupportDxe.efi

+  DXE_DEPEX|PchS3SupportDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3120

+

+

+[Protocols.IA32]

+  # PROTOCOL ALWAYS_PRODUCED

+  gEfiPchS3SupportProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiFirmwareVolume2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFileProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFile2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleFileSystemProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiFileInfoGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesLib/DxeServicesLib.inf

+#  MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.depex
new file mode 100644
index 0000000..028e7ac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.depex
@@ -0,0 +1 @@
+5�c�2�I������l�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.efi
new file mode 100644
index 0000000000000000000000000000000000000000..599f60c27969a0f521cfb0d385a1c84308f570f5
GIT binary patch
literal 3136
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
O$enVR+%136gZ}}f2L;Xm

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.inf
new file mode 100644
index 0000000..9197f31
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusArpDisabled.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus module

+#    This version will NOT include ARP support.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusArpDisabled

+  FILE_GUID                  = D82D57AC-99F9-4c7a-B591-BBCF8A0E7FBE

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbusPeim

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusArpDisabled.efi

+  PEI_DEPEX|PchSmbusArpDisabled.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xAF0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  gEfiPeiSmbus2PpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiVLVTokenSpaceGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPeiSmbusPolicyPpiGuid    AND gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.depex
new file mode 100644
index 0000000..d57f41f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7f128e565566bf9fdc4cd00e5fa4e145b422f1b6
GIT binary patch
literal 4832
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.inf
new file mode 100644
index 0000000..ac9ef01
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.inf
@@ -0,0 +1,206 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusDxe

+  FILE_GUID                  = 99796403-CF03-42ec-A817-7183411D79E2

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbus

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusDxe.efi

+  DXE_DEPEX|PchSmbusDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1100

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmbusHcProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiSmbusArpMapGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.depex
new file mode 100644
index 0000000000000000000000000000000000000000..a04bdfab3e6c26c51e1b877ec289d7ea324cfbea
GIT binary patch
literal 72
zcmV-O0Jr}Fx4+Ev;P(ATozxJh@le5$0=s^2FB(eJ5t=vvkS9OEO#=4tqZ3Ld@ILb3
e-o+9$FEj#lD{#ULfH6UbMvt|)oaC$n0|N*&`XM<0

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.efi
new file mode 100644
index 0000000000000000000000000000000000000000..fc0ea42e5b0964b037455378364e8be6513946cc
GIT binary patch
literal 12288
zcmeHN4|r2mmVZfKOWLL;K*56W8EDWd43jn~rcH`1G%X;l0os%*ZINX<wdja#!XJg2
z?rXKLm#lSnW_BHQMn+wkS@&D#AOHL_X^U+|v=wotqwEL{qpt>}P7w-L-u}*eNeN7=
z?(BTK-_Ga#zW46A=l<@!=bn4cz30B9=r-;zPJ932mjCmHZWqTb*Th`b(J@XtD^YV5
z$EARstX5SRk<(*Q%L=Ux)6v;l6nK@97|oBOshh8y+#L5y4aeo)%yBcma-%N?&i8(6
zix)8S)p(IWG}o})pp<0dxSILv@9^G%Qa)iUcqZYwLXcdJ>zQBot-J2|J5^Q=GIOMx
z`FNsIF2^m3Dt=A=4Qaqr#=K@D+h*3Y5_57Of2y2yv7XNwuGfoi3h&3X4`_#;2~7~Y
z0^6>ZKNsH|dU}NAoAp(dorly^mL5c79b0bJiwA*5o3f#Q1MsJ-t2)so)$ksPyis}#
zFE-eGc5AHk?i7$+m7S&Rq;OKt7CAj)QVm?idNxorEKXSqa)qbnNe9P0wH~zS8<yLi
zqvo#Rn!CVo%Wgj4I^*6+wVs+FfGWTfaE*w*5jR7n?AEi=5osC5azE7uAnHadTqD8(
zd%G0-)DBcsvOiXIdS2cLvOBf~Z+NcXBW;A(<;_9gEGZRZHwU-I3prHFZI6A5@><y=
ziG(TNNyW-emSlvl?M%k2nl<M74V+<5aE@QbH2MIL<|m+*<gYOSQp?p`2iauzHsOGN
zZwfe1DX$rzq+NirDbz~nu$&sDgdWXlX$R`8!Ooq8-cPSklCWj9))$+##O94>oTI~c
z8ufeO%YH@0Cx(TS^MvJQooo#vOP296$*WrO%{npPY^=sB8P5zNOnB0Wn5RhUDT4wM
z_Qs>Df!XLVfR$cRyS6q?cH1C!b8yQaXz`g#&nk>;s5VZ_v%w;aLbttq=ovB==F_p_
z5pl^HykQY~#=ky{^%57AfErP#)r9Nj@)xaK%nC+?;R%L^eugEG&CMS`y|7Td&|v2b
zJN^+&P#VL-EuaD(UK+%{rgZvRV5MH#qC*K?32WWlz{`MKYFef?jWYy_6v~P27ORxj
z5Xb^W-R(qo`*WRWh&ct8>TA=aQn1QHKcSv}jfLb`v0XSX`>wOTnkU_NQI=sA6Y?Cr
zb$^1J6x#`=A`DF@fOhm69y*F#x>bQ1T6$5Sk#3@qYA{mhyCi>LB`=w2E*N*i3VT{(
z$6nM4?fQYOvMh(EG1m}i3pXF0sA6l=2n}3gheT%cEb+0V<=wgN?@Z&k0Xn3^&F5_^
zh4Qku-%8`}33tHq?1D6JLmx(b@+L^LBMj!YrIDr|m`&hTfcLjSpn(&ZhH$^0+iVi<
z*KwPt6I!(s*=;XZEUv2Zc5<i4tcq!%*QB*Lmz#s$S%%%Y%5H%XYtx|N#twfr<UVbL
zmZg4x6jR7`Z<?dZ9Vjsy0}XoCD`{gnt|{nygcZ19lJVdi0w=_m$$jPF<&u_y!(7Q!
z6xw-FXAKVA4gEb0&Ax}{hRNsx&%fgNBc4gHE*n`GHmc^szBtumSOQzbi+Ma-#xt#`
zfhW;6MLy()-^`P(hmqOk)(&L(a$^p8AU&%}J!Q4)TT0AMvBaETjn@)9ZX!zXtRZ4;
zIqI)AG?l>MnqM_E<sxU_pw>&p<>r*e&xtfN%_6qq{eg-RagBL~(7~UYy;#3XV`%;%
zR@5p7>W#ue*=t~LNW~LKF@~mQR1^wbdO_CK{eci^gh&Kpo`UdxTdmd9eJI?&M&pa^
z$~RxF!78lM!>gUr1_Rb0B7q;BVeCLX&*lei(PJ6xk{|I_Q_#DHEiS=Q-iSt~6|3aF
zz+$^Qfc?TPuUah}FotHc4Scwp=9{4XP*H7Mpx*wxraZ9CY#Mq7eWI7CXkv1E<W)8j
zro22Xj@r=I#4u^L*o`slSnUbYF^nDJS75CrdmNMlWzn4X!XEwG5Dj@_rAMH&Dr>N^
zLbbo}=E<J|R=1ymAK?z3OYQJx=1|1sy*`J6MDMg5ilMxT*fg*0*1&$a&Tb7wRLC$U
zW$2gd6lQUquuY!n@YXqWhVKSDSFE5lXE~$0eq%T1zly7ksqV&(I+J6Yjn%A>Z~TB8
zk!8c49u!Ipd-_+i5EeT*RjPJKz8S1@&ImS^YO%0HRPi`8gdQyzJS#Bm()cDJ6OQ$Y
z1tubTGzzhP7w^4+6|8RxZb?Lz<cE-A!TNo>?tnWzLyiPEMiGu(1im(AH4Ub#7H{RN
z#j27jXsNtB`oLn1`8coUa8M}Awf%%cf4)2q%cQyOGhRP>tUc)E66jbHdSa?Yr6Ape
z(W+UbB8g7Va8+d|Daa82lCr11E=|V?!d{m?03vdvVSR?#xff`CQimEZDvQB8hJ3No
z4<QN|v`G5PDhg;zRF=1~mow1`$+Pa$sh>5<w6MOL)w=3akg^)v^WdeSpiIMPX^#8{
zSw0PMnn;}2NhJe1kfDnzWR-`G-j^vRZtn6<R++!hfH_B&KbKF3v>EU2|2fotvURxW
zUGLOL$5F?1V%KR{i_x&VxAJyT*NOGurKuQVUtbnBQ$3A)DP)LRfohg(Ch5=h!D`6f
z+6Ur=;~I3as+0{_U-hv64Ado+1-9$vzSGKEv*UbAS>cGI;G8dyO>h)^=F83#y7jad
zoY&U<KCo<#6}wizXIj+CPs`T8<_bm}dFOn|EY6YlnJ-D%7uxlX3w7^dQiq|5){fi5
zyWWabu<+m2YOCP3w4dl}xu0vWr;I?=<ut-+jqk(2Ei;5H*_%+S`ME}VpK8LVfVy*H
zU(^Qf<*UN&GY+Hui_z_?ln5-m&9+DN^?gFoae_K{o2M+`8fKrk!%?0R{;>-+bi<L|
zHEKL^8{$9zLalG5zd@t%Ew2_Dw0fVbv4QW)i%IY~t*>Sk>wKC12EE4jO@Bj@#&-iC
zSH<~ew^mLx?0z$Q#@n-SBKh>K1;%XtZ4+qk<csZoDDwDTYzY4F%nZBR8UKnI)#3ze
zFf>2{de|pr>_VV)gcbABGP2S*LE^j<1qowixkh|9?q7`tp=k`^Co1$*F?GL%c(MD3
zVH34!IM?1sv;_r5rtLvg>>BaZ%)=~ejv-*GIYN}5sHcf)BWedxYl-p_wGosW9zz{+
z+w(BfntW7*1LT_Lm3oRrW%pX)KrT=iq-G64YWkupYhH|M=8mor4ww`nRm1m`(IEv7
z%T~+ef1|EvA}?26_Klp^X}jpEJ{@rwQ)BOf>);CAqnzyO(U8|R+EVCPe~OLvn7vn~
zU30X_`o=eO@Kgqm3-A24#$NAQ4RtHgwoXSwXQVF5N3qq8HnE)Qlgt{$@=wlKh2^xq
zTgF}!D+a}iGc0ayr=h6|K8sZ|G#x~jL^OW{j$wBJZ`fTt!LZvCXV~2kE4qfk(#`Gk
zZUx3$Ot0&g;O)D!{djE5K{jRd$O!0r+mGvGiiR1VfKfuOaRJppU{eTPJ1(LXfZf4I
z#nLmPYY+m&Lym5j1OYj*;$&;lur<g^rL*lOUo7ijr6&!~bi8$JV5T|&9SP~6*Ibg+
zdyOFRSjz&Qap(;>=^&REU1vgOl?!RF235`IJP7GPwn7vC-SJt`U}_KUYpETHJp+$I
z)Uf7ekq|TJm8{4UPx9z%V?x?mZFwjL@po%MykU=rZ*j>O6;l<?$M`1sx638~>f&LI
zf@A_a;2L!Aq?=T&CZ=PRdj(4(vk&B%-SUcg!hw`8)lh2bnN-(cVux4z3r$sJYo`)l
z&}MbgPBzj~DwkR1ZdV`a*}q*!6NneL4~yG-#O;T~?MFn{39qTO=mcrMZ&dq76z#Kv
zSS{8cnmukk>p%DAxwpikGr~fRF9rM9u(9u=&){!}kMqShzUHUJEjpvF_6fsom;5OD
zbR89oFs>vPVcC^|uUvL^l~{Tb3p=;h&?G=|VE{(mgU*O({wWS>7<4SURg79J(xJ#J
z0~PD2O$!i!dhepwf~86;FCFhiy7ptSF&(Oj2lVaAbyzX+Gce%P&P3Os$R`Xe`4Vi{
z+Ee=zD+a5@83_Yde@O!v|Lp#Rioq6OLt&GKA&>#7Rz0`fYa$z(s#>qB2RRmqZQ+@#
z2T|+xL!q-uRfrIOX4UKhgB_4KslQEx@4&ysiXO4_5RH&cuNyG}43;-EZ@~D}dkPK$
z<~oGS#K7tZYoJ)As>PH6x`6`Mk}^OyQ0fvA&+Yc6QFqtUYZCfQAgQMygbPhz?Xdh{
zF048f$GSu3ST}iqSb9Pjj!~}$a0;<#*l9BSeH#`NjuG~Q(i3Ew5nJDmrPq0{X)VGP
z>Cd+W*yGG`tIi!h_ZC?jITvj-ItF8N^)naj?P$1F|EQH8RjeGQ#!64nHlq3-bnhF!
z<dkJ@c%z5hk@f-Cp+wh76_{Gl1AU9GLjhNh3XgG}sMRQVD4&{GgaelFk-UnP>#c`N
zJumg)KrLfib?j5to!IF!vOL~Vz;B*a7soV?xcX_1g}zuvCGRyZ61t4S1zlagHAvxK
zXUyRM|2EXd#k>;w7;z82iv>2@5v}aRVU9abGSg{pU4mV3V&QW7%26AKj~w_KMpq1$
zm+Z*n>ykH5V0lJ|rY=#q!^l0a5$;IlIx~XNp|)~q*q4uRd+(Fji5fqopxgScutX;d
zOZ2jsA_P-%Xv5lel4a6`@FjYM+(N_Z3BH0ru}zw!h+}B-Dpr%L6Na_*4=_(ID|T)O
zrew7}hsJeNH|w%mc7fWY7nNL8__Ch{WnIkT_|*4Y)=VmGy1%v1%#sLf9?6<X%{Q0t
z=boH%T^;W@xVgCTJon23yf+(pjTrAWBk!9u*?X1apf5w5`8?pE8$%cMn(kPlAru#y
zuGgw1xGfjb>toasU8(lbmA|FXEG3@B?Jz+pN{2s{<*b=|(cJLh!vM7wnpjd0Mf1&B
zGY=r&eEWXxKs=`i<Ze9wFX+R&5Q5yR<-BRg5q5efK_Htx*d5!01_&Lw&~<vhTA~mj
zl%mg7OSnREp#+u2<(PYUmm-o0OT83=AiGD&luN<T8Cl*(0Ht&TDimW;7F|QP)4gPH
zp=tYb5gj=?ywh{2T$kkNsE-$dMsI?s3B{}57I2Hi_k@AdpUW~tjbZJbve(S7Tp`te
zgbynR^h!~(LZb3=mTVTMi*>wspH8gRi|dTyvSe#eKCXN!6tyggJ`{?}cyXdQg~-m%
z)wiu?(^(zQ?$fbaJzHm#*CoT)Smq9>!+N-koo_zt&Dhz768k8yMCZ7Zue)Y5@5ri~
z!pe0q(^#H<GF(Nfn*!!%b%sSkyUFpJy8aB+JD%5s&QX|4-%*v1J}WPM2HeUc2#!Hq
zOHnHV;Y?+aH>B;bR1dEE2}%QeBns)2s9knj$}7v2>mmC@s=|c#(Rb47)ON!jNq9w9
z&E7`fcV|~MjLCYqc70{zhv<o8z30vbsx&eEY^eR?ltx_OWUl$Fk9YiT(=???Pvddo
zIeP13G1u5)c0Tl;vRb%1JieOsTzFwvPvPfV2qpLC4s-s~fmJ+(s>9$Rc*I5PY`exA
z^I1r9p_+ALXX%7&f3xX@hK=8xzU;`vAK1CJ>u+u^!bFc<Ia&A0TT6)dKEC9|;e&M~
z5uaRrEIv7XgpXxa65+}HBYa~NpL{jK53@PKlh=;LC;uIbPre-CJLg1tQghfvL=<j3
znvmnwMe}LilxUt>e2$N<Q!2uIqND4^qyHK>>cfVI$9FtR<Bb)~SCQ&ZgnZKFZKzJ^
z4}40|?Z%^3<fZ;dPkw*jMIH+_O4Fhujn_vsUqxQtAH}~KEHw3}&}0lq(e1{gBkPt1
z{8;lfh55+7Qh#5BqdG-@5kp5A+cd}HOLVk+qd4#>Mc0i-e~la4m%rA_*Loov_*+Wj
z?E%qzns0P@Jo^6<M`J7J<rT6LpAywkqP!o!2k_Xeqvt{VqhbCiPBRWJ%pb*R$H9g9
zqqvxHaAE!^?u+E3U<OH<#}~;Ljr$_`qH$j&Ul<pyvuK)RiayV&tei)P>&C=^&&?zh
zQnGs9s)ca7YsYB^e&n3}D(4;bso?N4(wK69A4v)h=lz&CiUV+EjbN1=*VN0(xV~Oi
z#<ljcGH#fZBJ$I%^0G2+o6%*ug+`Yz2otYKO?kGUrS9>vhe~swSeTLcim&a)Tc7)f
z!{xQc=0lCQc#lo~-s?+ud^BLL+?e&wNX)^<f4F?wvd7|1-Cy|F?@MpbHD&#C&pY`o
zL(7-8-g9ojo?jn2bL{Nrg-;wY?)t>t{z!S+-L6}96&C;a<BU!H4?eoxJ9lG;-k+ZL
zP{G5$+WYv4=Z<zgmGV(#&yt<(zp{$w#YaEC=k_Q6<Do^x-+Ogk+HU92kSgt^_d8SZ
zcQ5>xY%2aMK>2v7F<d_*6~8g#xiTs10#%K<E>Rj*aESlL#DO2tJ84;qe{)=kqj8BJ
zNp>pZxe`aqqOO#RRB%`9Csd>0B7>r=;Lvc){-QcmaJbBjiK9zSI4QU>^rDO#r56P^
zhF%n0I9{eM72Fv1ui(i3!%4v*Mjlf>x+F#8#?Z6U-<5iXYmC`nlt(G!j&UDS`U5|b
z6de9&Ic9%Rf5235xUi3j13!`!+!*&4W!&)ng|G^4jD1GIMeQ>R4)>@r#|_`FB4bB#
z8fGJ&BRAuj8{z)%=Y@+)meYSjD=>8A|DqKrcayKv|3}Ste@BrD&Nv8NNB%21h_6>0
zVY~C|)IX1|#XP*!$GZA@!qdEHermn>zWeT5zwX;q@pbzDs{z;r{pW#MzHfQL@?*;{
zEI~_`Wx%3MPfDMho}QkSz9ik9UYdSqdVTtq^as*g(;rU%Zu*bXf0F)EdPn-qj7=H-
zj3+aatqs;6SYNXqwd!qiZ7!Q&d(`%U?IYXAwm;d<+Ai2G+O(PZnM*Ps%zPyCiOk6h
zZd>qA3yv-*xapRgH1;_AZ2LTWjeVQ_1^aL9AKE{)r(}I2t2k?Q)|M<Gt0n8#*<IOF
z9J3s`j(Z)=jvbEY96xjHcD&#SI$m)cbo4roIDY4N&vD9e-XS}T&Z*8BPP5bET;MEp
zmO0lszvFzs`H1sz=Pu_jod=x1asJ6U;*8JPn$wW;gPb4byqMFTGqCXNLM)$2we2;Q
z^_CV(n`NJ+-BOp)knvc?zi0d=<1XvHRzGI=W9zfl-&&7b2dt;9pIT#VSJ|dwwkvE^
zw!3YcY|XYd+mCF|+WIl~Gd3<WKJ&)R!p!2#vdmv)zLeRM`C;a#nc0~8h6TO_6!75x
zblg0P#gcDXVp(HZYw=pPSax9Sr!BiIFJc{zSo$qTEu52g>YRFKnsXlJWur!a#q?j~
Cw5>P*

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.inf
new file mode 100644
index 0000000..56171fe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.inf
@@ -0,0 +1,175 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmiDispatcher.inf

+#

+#  Abstract:

+#

+#    Component description file for the Pch SMI Dispatch Handlers module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmiDispatcher

+  FILE_GUID                  = 6BE18C9C-BF61-499e-88EC-5CD57430460C

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchSmmDispatcher

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmiDispatcher.efi

+  SMM_DEPEX|PchSmiDispatcher.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1C10

+

+

+[Protocols.IA32]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiSmmPowerButtonDispatch2ProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8ae071933bc183caf3f31cd4c5238e456b20ed54
GIT binary patch
literal 4384
zcmb_feQaCR6~E7Zab994@3nD@*LvX6m(eOw7h=RpQ`!XbLAOBN=BuG;QbzGAi)|3z
zgRV+9r#B9HzIY&w0h2mu)8G%rG<6$FQc#f{w@uP+(2qYhs5BBZz}ahPpc6H1>bKv0
zPP<ZR(uDS``*qH_=bm%!`MAFSLGqQqgI{^)SKk<FAf#Dveu=>pajb9)rKGl$kmLep
zpM#J9+D;`82w>pt#xJlaPsicz8<7j^1s4AWdjlB!`~XF<iI4xUZ;kfI9u3T@pd;6d
z>&nOLzW^b-*X(*odkDY-Xk7PSEsPkheYJ#4tm%E^(H}m%AS1T{$6~zxt0m-~_70}0
z3hPrntX1_U>X%w~<(?4l%0A&SPSFpXsTs$GSIk1=SfcMH>xyye!prllUiI{Jr~jP)
zI&M#5v&5QJk8vE-*wb<0H4y%GTTi+pb8iVDEE}`*!qFlattZ`{*zC!ygcOM;?|2~;
zh#E~2SSsU9BG;!Q#3XBrud}neC(V{T2FR~9bnWcZLxWN9+E1b~VJB1nRKhhWy=T-f
z6B4dDsV%MLy)t_9!rH~x`bJj5S<tYUXEW{!wS+c}H%fwwknu*37eb9UDqR>@e=9hb
zlbmH4gD*qCV6r<s3P+4~r|CIQOItg8uY-LNy)5+>+u)f`KooH%>Q!GTBJQ5Yg+)k2
zz>l<aWTpym?2%Qmq&$=Y9W?aPtR)Y;j)gotk;=GI(_;BN_#4ftLbH;*{}=qw*~DX6
zo2eg66XNR7bv&QB%5%@-u(ywXVQIV9ZT9GkSt^y0)-{#rQffw7x4Bd+p+}{fPoDZV
z$Q1J+H!p5EK$Bv`*&Y#{N3Z94=QXa&nF}&%UhGm0K_01d7(y@^HX0pf!6?*=_H^&q
zPLFufZR}kCIU)dZN$M@Mtzq`HL+lu_EbA?f3AG24p%6DmXzP~DX>q|Cdp7hR7C_U|
zSRc}>qlaCX3;OElVYfXAutW(a{nO}3qE4wf_EgEmffBxhfGfO+Ux+EQ21y=y#)cab
zE{c7)BfX{N#tXUvgW}poc&y->%7T-@*)5@lp=Nb?^e3{bZA)95{PSd+Je&;S#@1Yw
zQ63t@2KIL5#bQDRlJdYG_;T<d`tri4Wzh-Iuvcu5-)1?1Om}mg<=E5zp>#fHStSI{
zw?O+-PRmkss*q-g_N|JeS|!>Fw54e7ilh3fL!c1M6&Rw#T!x{Rm}M9O#PncLh*^L^
zB3yW`PlSYS&>;d*Y_HqnfK_(%Z105cdRthR8fZhL_o=J$)`*>z2WF665>1|(v?lL<
z4kx#SGUqQtyCa@3YZT>?WH^@mQSm6^DLOL-+65?`DC9V!QRIO5Am8fo4B2CTB@b^_
z<l%dr;ncJgc25M)$|EUuB5Vvk57IC@6=wEqs7tLhx>SFn$IF~FBWPdaT@gC{wusYo
zL>$|~XQsmLlcq0TuU6ug!p>w^er-%188hltf0&)*aGF+fNt$vDVZL7KeLZZv@B+>W
zp2jhJ5`XU)FcP}OyepG%u3sKD6Acb$GG0HP9U55k5~s@#&RN=bK2WMZa5b`>TeosA
z-fC&;`i@Ky46zW_zsHS30Pngcj~qLYUo1fo%CTqji>2$DO6AyoEP|(5{rLdRI<;b&
zEz}BVR@OzXKg}xkWN|EMk7c<u7Y|8B-oFh_&jwFIv~uefLQ+$nSW<J}P39~?6aOTb
zlJNpZ2G7D%XAAS5dYCKHs#e-b37yK`31v3mRy#X!nLiphtCs=2*haH=GIz`agV^Rl
z1$-yZDv6FjMA|{u73-z)@IBeoltd>4_k=0Ybq>9dPKwA^K02n*SwVj{-XTXXxwIwm
zCS|=#D~(<XY2x~j?xB;C>7<hir$q~}!6T6DRqohw?A0q!3|Z3{oB(j(tX7Owz_3Xm
zT^R(cf?)B%d7#w`L-vT<v_otpS#Dj18yWU8pWf{X!3>_i`=@yVkN4YK-ygEaU=k|g
z-WJlAH;v;&HpH_+nAKhNbeHYv=><p$Bqg?=*TK*8EguqlT%#~{G#yOxG)VuE<;8*R
zKo*Mb^GFD?H#uWCs7I#fFpKU}95Vd?v(O&}b|Nz(64E)4)QfF4Gj9VCA=RgW`DGrX
zee_1wL&#`tmPF6fF>#j7^?wva{!6r1&4RBt@jw-w${~<=<v1UIn(OKjqWk=0$ewHd
zJWTZ<COixCiykqLwe-q(n}?mS^i`IwT6)0J{g&>tbg!i=85~36&vK6RNFX|$V{<lN
z8=@^<;B}!GeDmDGcr_@nr}sQNcFoG$c{+x1+SzC96pM3vWWIwc!*gjr7RcT_)LU4a
z!pCyn`FQ7M4PJUHp-6b!SluqRX_r~b>RQ>RR@24my4a?!d??I_hz49WLcwtKr+Ajd
zPD3(pWt+BPmYNas*gVdVD&joEah_4kip?^*PeLtW4IZP)EMak;m#}cYZAjfakTBI2
z_O3j9yp5%Jeo9S=>@}`KJB;sRnlBI^Sk2kN{C-1ISHa3MuAPIphLdo$7%F`VBhNY{
zB5sSgI%%#{tD?CAts?fhc3aJywzB3^?G~Dov}H86NLxa4il)$<2S)fy=Id|;_(%cY
zFTlk2A!4gS=qlL>KKMgOM>{hw!PjB@N_s@0eLk;4ucCcwE9xnRW}+<zQ8Qw?HPK;R
zJY9jj;A~ZWnVkst&R}w;90ErB)b&JHg2|eCwR!p3i)U7Lsm-Q{g3%1dA^s-hS|{G%
z!PoyWFYgI)S<U#9V#OuX!7fAA$H5M=E&{7E2Xb3Z&<lcA6Rd32_7+5Hd(0v>PN%Y(
zgJnTePqbTulQB#4<4NL+i?<KeuU6t{bv5tw&H+}*5AFW|CkaNI#M2f0W#F_t@CLso
z*c|o@8x11lQ;)@X`N8{9@bjv=#CD?l(CfvZG7E#rS`(Gf)>7MmT$b2u(dmuu32Y9a
z6ypu%o{)#@)wOg=a8BmuwW(?M#lJ02mJ{59d!m1mIBK)z?KnCBx1-aA|I-$dH4<Dn
zW{YU<q&cT{7tIxFchH=yeG_KVR??h9yP4*SG%w8+YckEbQ6S&~Fk*@RB%H=9f*NcB
zI!s1fw$_Ozi%xBXChipSvYnwCTw&JWf_Q2~$ZW%rNH5w(+tm6}+tdn7iXysN84?$9
zGyjX5Sm;xI&c7O%RlG09mcf-~K1OD?)1c|Gv(vSR=FdKrN5)XA>cmsHgB{`#Vf3k0
z1E;m+5#_<)Bslrr;u?=59l&y=E+U!Uh}azobRtZA5eE=HxDnYNoJC-%D;`DGZ&p`@
znYaOpz|Sf%#8TRiGhHA%#B*MFWePBwlsFa@f0mtmlRpMmp22Z`HkR0n5|^6st-K7E
zt&C0TVomnRWnp$^ww#l}tNl+D#3r@EO<>?R{|+jZ9u@Ess-mrGfav$ZZmasQByTGs
z^8Q}zG4JG#Ot{6glK5D08p+N(ByKQ0p!B*=xQ~Yo&j$B<2$afj?5ySn`C362tCObV
zppbtdtLd8Kx|5~S2tX0f-xoi#-&J<OIHx2U=8T4U)-W#%5^MM@(U#r1+kPC@&f9-}
zn(+ifH5O5~oU9?slWArQlA-(;vWb~$Snz6@dX>}?q6Jw0K>*90c$^ycl=X9lcR%>b
zoGd?|Ojjq<_6b`u_d}A-&U8zA#{u}&r8jw{;nrev`FfLR5yP|cNER@5?0jmb=<}4I
zIWL>Sr7#=s>E50O+b?}D?SAGrT@{~i{@FLyJiKB}`xuZ@Un00}f&YSJC)xoe-<s}i
zZRY=RcK~+v|1bYve+Gp1TK)bHfU^JR1~|>af8Qwf`}w*z58(WEUR$es_wL>G-S1(2
e_2aa^tA49GT`dHQgEs|l4weU})_%B_<Npm)m7Ns;

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.inf
new file mode 100644
index 0000000..1ff50fd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.inf
@@ -0,0 +1,125 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiPeim

+  FILE_GUID                  = AA652CB9-2D52-4624-9FAE-D4E58B67CA46

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiPeim.efi

+  PEI_DEPEX|PchSpiPeim.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1070

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSpiPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.efi
new file mode 100644
index 0000000000000000000000000000000000000000..f35ad8df74009109a59cc1e41ec0a792eb1933f1
GIT binary patch
literal 10240
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
I|J7#oS6LdV&;S4c

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.inf
new file mode 100644
index 0000000..979fac0
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.inf
@@ -0,0 +1,252 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiRuntime.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI Runtime driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiRuntime

+  FILE_GUID                  = C194C6EA-B68C-4981-B64B-9BD271474B20

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiRuntime.efi

+  DXE_DEPEX|PchSpiRuntime.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2010

+

+

+[Protocols.IA32]

+  gEfiSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/DxeRuntimePciLibPciExpress/DxeRuntimePciLibPciExpress.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.depex
new file mode 100644
index 0000000..6fa9e99
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.depex
@@ -0,0 +1 @@
+�������G����P����J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..44e569fb2ac7f4ebb0f9cee92e9fa97df9c801fd
GIT binary patch
literal 9728
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
Oq(;O~2YUa%KK}`wA{7__

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.inf
new file mode 100644
index 0000000..ecc8cf3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.inf
@@ -0,0 +1,245 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI SMM driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiSmm

+  FILE_GUID                  = 27F4917B-A707-4aad-9676-26DF168CBF0D

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiSmm.efi

+  SMM_DEPEX|PchSpiSmm.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2000

+

+

+[Protocols.IA32]

+  gEfiSmmSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.depex
new file mode 100644
index 0000000..05a6cfe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.depex
@@ -0,0 +1 @@
+H�t���N��ľ���s+�N+1J��V{PD,
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e23277b217824ce7855f4899f29aa0a3f7727872
GIT binary patch
literal 1344
zcmb_bUr19?7(a8<t-Q7y%^Kmug!>Q}Bfa(@i&)Kzl`}TopO);8rDoDU_6KZgY%L#d
zhYJQi^w2}0d#RWHz%r1yYvQz`SWiL_5(KkJRE8L=)_1lk%j!k?!MW$2-}n2z^L^)>
zuk9q-H12QObMuZS4k4pN`dfenR90Il*@pCG2rU#X!|<<x;gJ;x4NPQgguc9>BYfpX
zV{uLYgZ~??fp|4wxDES~`F}y{?-}qzu)1Phq*hX2DKrT6X}i1pT|iF3AhnCd8K!mU
z5t`L{d(K@vUC5E-tN|;TOQA>Tu+5JB42_2v3R@VJ(7ZF(^wTG6TJ=$UD)L?$Uo2aW
zX5{>gFtjW8gHJ6_WN|Y?xm}5u1=#CFa8_U=L-Ef+4L<hedmy}f!kw_<r4BnDri3=i
z+>iPZmiG-n&i0&1gXbgDs*$&WYHX!!%9vLX`6O`#<oI>E0#bD2M5i+mS)#DSia!b#
zM$vB0nf6467<#+I5s<Uu;!Tisq#Gm%;dzL&b#e<rp~Wz;HoMTONJ_aQhNDkMVY{S3
z1uBHU^F~H37-UHlg!dJVMtK7r9;OjUeDX;+>rlqP&IyBR(9!q{<|ye5FIUFmI)lnr
zbv=b&q&r9)upWveW#Jj(Nwm6Fl{W>nI(-G~Zda!>GEF6bP$**-hSHg7Z$&<S0?v+3
zBJ#T7Plb&)RJ?)}6Ux{#8}^6Q*WLseTy+V;-tm*z59rV~R6>N~G9WUQ{Qez~?GrhC
zda*?LSd7e8^zsr`bde*6V-vV<JeS2>Rw+?nZpDoCSrevn?P`Yue{dE=w7`8X5q%Y`
ztL^<Yd8Hy}HbMy_;$;~tW~7)~C0>yApLn+t*Bw0D!i}Tas|O}D4?(d&RKD^$@pxVR
zvGLtwwn0<#UcwPTuZ28N8v(h7QdGgh17iy8WV9G8M$!XL;MV$s^!+Qi&itA=e*sMS
zKG;Vz#oi#7PBzqf3j~SfSzj~3V6gkt8Cb7@^zmpzuA!QJ#7?r)>>NARc&o8s{RL;=
B6m0+i

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf
new file mode 100644
index 0000000..03b67a9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf
@@ -0,0 +1,124 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   PchUsb.inf

+#

+# Abstract:

+#

+#   Component description file for PCH USB PEIM

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchUsb

+  FILE_GUID                  = 3B873142-4252-49eb-BF17-105CD6F3E808

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchUsb

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchUsb.efi

+  PEI_DEPEX|PchUsb.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x470

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiUsbControllerPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gEfiPeiMasterBootModePpiGuid   AND gPchUsbPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.depex
new file mode 100644
index 0000000000000000000000000000000000000000..631980e0f8ec20e495bafea5b893c3835d38bb13
GIT binary patch
literal 54
zcmV-60LlLXk?~=zU#<>Jx%%j7(ul@S0<z4yCPHu25xnOBfX6(DfdcmMqZ3Ld@ILb3
M-o+9$FEj%K2msm{`Tzg`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.efi
new file mode 100644
index 0000000000000000000000000000000000000000..80adced7c1c66dc59c3958a615ce31f35deebb47
GIT binary patch
literal 9792
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
NL)*(XynM~)zW^x}w+sLP

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.inf
new file mode 100644
index 0000000..7a975fa
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.inf
@@ -0,0 +1,248 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    PciHostBridge.inf

+#

+#  Abstract:

+#

+#    Component description file for PciHostBridge module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PciHostBridge

+  FILE_GUID                  = 9fd2360e-6b48-11d5-8e71-00902707b35e

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PciHostBridgeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PciHostBridge.efi

+  DXE_DEPEX|PciHostBridge.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2120

+

+

+[Protocols.IA32]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  gEfiMetronomeArchProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+

+[Depex.IA32]

+#  (gEfiCpuIo2ProtocolGuid  AND gEfiMetronomeArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.depex
new file mode 100644
index 0000000..95be042
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.depex
@@ -0,0 +1 @@
+=d��I��B������[�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..92cc991d43c41955a987418b243a732554eb6ec9
GIT binary patch
literal 1664
zcmb_cZ)jUp6u(Jcnn(6#-y5NQLOx{hkbxRfUrVV$h+TqHA~tg~%VcY-?bNYONt5A9
zgs|tt=Qa3AKlx!r{V@N){Im{5lD(32qk|TP2!h0_BO?{21&NaF`8!G4)zN(^9=PxP
z&N=s<fA_rm>|wTTy0Gn&+dnuGV=V4){l`I-Id|`HJiyLDUF=xiaxxacD!SW>02r-%
zDc{xJNBSN28auLlAN^M9G5GVtP(@tg{}%-_lW%6=>?~@ex~Nv-n<>E9tHFu!%s7-E
zV^QtrIvi|+B8)8r(~~D&f4Q9_<s5*O_-2YQHvB@8XEd4TG>IS3e1&L_J#=SU7-~#Q
z=CZNkD&2IheOC9F<wCC4zHKhAecI$vO&UFFEw(AySHxkF$2G~kirqMqT>AnWKR+~T
z!KHYUA|B+c#;*-yReB!r{wc&YIdOa}$vyT+oO>V!633+^2~lm2F|StGYtvKXwG*hH
zFV%My5@PL3;J1rerTb#S=~}Mk$h2_wO7<81$Dx#ZDy9F0U~=J9fD3(lO`(TJ`vf!E
zBajwY1Qx+1aH^DaGB9x;xUZvAfmP`I;Qnw*O`k_fvU$i)tP&Bw#kI7d)Gw?<`MnM3
z`>6xV5w*3k9C?tqufi~8`4)-@OSm|K=$dSlM01~LXCQgd0yUKyJ*pR9<i8zhwT~Jb
ze#V#XnnT5TtMs#*N0pFK6^sRz>6-J9vf};$14(_Jv+?=lI;4tw3Ex|fxRkrr&4x!^
z3LNzt6H4fJBd&xTCM3OB9#$L{Vv6X86i(cYyW*xv@rHPr=e+&x_*pM68&xM|;%Q}4
zSB)EYc*Vp%Bkm3DGNWGd`J}=yFk5)dpH{XgqO{_!xTyxg!C0q`hbdjeg;!i_+pCOB
zF<{6mhvubyr5o;{!D-JNnwzgH_8<cKjmv6HL{CzB(Huk)Motr0*2PO!_-f{FbY0k=
zs5P3lZOls+P3fv!h}|+{O&)7@J47D)vv9DnpGTS_T(lD*9&4mhbTyZ3bh<7bGa5n$
zGdb*ZEp=aX9t)SUt9sGmm#ta)Im6EE?%8<)!$P)qcA<sD?9SQ67Lu~A3l8hCqD5DC
zA6ow7tEt87^3&g(JoEMKy#2&^{ey?DEq=G}-QIWHk6Xd-Hy_&xVGOGY@3fxUdmv74
z$Pwt)-xqo}_h5)yvNm-Rrq(+Wpgo<prHZrkwguB|1^F7=khPhanTeNPfxJ$%_c{Hr
VKB>Q<f2f}xI5Y76z()gZ>%Yd}i!cBH

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.inf
new file mode 100644
index 0000000..2b58b58
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.inf
@@ -0,0 +1,119 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmAccess module

+#

+#  Revision History:

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmAccess

+  FILE_GUID                  = B4E0CDFC-30CD-4b29-A445-B0AA95A532E4

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmAccess.efi

+  PEI_DEPEX|PeiSmmAccess.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSmmAccessPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiMemoryDiscoveredPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..0e4ef35820d1b180c1d6139915747adb7faf9d0f
GIT binary patch
literal 960
zcmeZ`VjvrAAX_K-8UtJz7<?F+Q4Dy%z@*5{$j9&iD0%=Yqrk+#0KyDVr3yeM2&01o
zKzXn_paeI%B$O|JLmZp%0-$*^KnVjVjZF<XVtOU16(vB8hkzL5-Um<`NWp;u14D*h
zN@7VOP-G5B6zGNpP#Q$RfCB@=3B97!ocv^nTS0DC07`;rWZ=NS;MDD+!jZuNlnChN
z_#Y?{8F{#y7i8{279i2x>CnK>(D<<7KLf)K1`Y;>wC;;(@3Rzo15F~{Hy<<ra^E(e
zV0v$S;BZ5YiU>mq+YX@98x8{v<q2**P|DhH`u}VGZXXqq){`Z6&6bR%mR%ArX8-^H
zzx6<cF%FC1<|@A5wF&6luEXz)4@4gZn;Z?YhX-!Y%K)HJ$Uef#egF~$#&LrT&`Tmf
zoB?#?1t4Z>KbBbM>+IkAez`O2xss#kx_N;D0YK~n)C0oq&LKXaxH$wA1IL$2ZXQ?<
zP|g4(28|n7+R!V42!Qm0%z^M#s;a6|lG4E%Ap|HrsT!FWSsKkXT4cmyEMP2REMW|h
F0{{UZe!2hv

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.inf
new file mode 100644
index 0000000..fc85b5b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.inf
@@ -0,0 +1,95 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmControl

+  FILE_GUID                  = FF456B9C-0DC7-4682-9E92-0DE84B6E4067

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlPeiDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmControl.efi

+  PEI_DEPEX|PeiSmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x300

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.depex
new file mode 100644
index 0000000000000000000000000000000000000000..04a994f69f4355bf96f414fc4c084834ed2e90b8
GIT binary patch
literal 72
zcmV-O0Jr}FsZV5&Q0TEuoZ<^aX^xGg0^(>^9)X0^5xnsLfX6(DfdYuE&nL`A)DfCE
e0FWm?!A%18@S_t-Ch$J;;NHa&G%qv*0|N-S1Rr1k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c0fc28af4378b0b889e86ad45942f1000c2dbfe0
GIT binary patch
literal 8064
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.inf
new file mode 100644
index 0000000..8293690
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.inf
@@ -0,0 +1,216 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  1999 - 2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PlatformCpuPolicy.inf

+#

+#  Abstract:

+#

+#    Platform CPU driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PlatformCpuPolicy

+  FILE_GUID                  = cb933912-df8f-4305-b1f9-7b44fa11395c

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PlatformCpuPolicyEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PlatformCpuPolicy.efi

+  DXE_DEPEX|PlatformCpuPolicy.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiPlatformCpuProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiStatusCodeRuntimeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf

+

+[Depex.IA32]

+#  (gEfiFirmwareVolumeBlockProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiResetArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..e076777323483e39152c49173d8ba560c7091749
GIT binary patch
literal 36
scmZR2lo2M^*m6a1&qs!a<2D_QOy52%7WPv6VE5_4y`w@V`X<aA06L)%NdN!<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..40ccc6bf5a77af4a365c924dfe20d741503b8491
GIT binary patch
literal 9664
zcmeI2e{7U@9mk*c?)rn?@wD_8<;PmGTf~^4YqO<yROnbcSk^_5LJJCI10umG1nveB
zG~Ifr<%VM1AB#~#S4_mYWSWSJA?~`8g1Q(siKvOOGh5Pm7>O7~bL@P-pXc7?a}65{
zCL|{PCg11#eLbJg_t)q9>+@Xu=w|1(!%Mea^7ad^?RK1=l0Z=flTPW9s*<_RwhG7T
zT<D9wSn4<}h=X%{Zb8C0Gi2`Z_4vMOrm(=(@A3X-ueYJTUI<P^9cR(a6mIj~vc%4V
z36x!fF>+iSD^nX<9B0?E9gig*!^^V^{IO3KQmfbLIOmt`+xf(v?S5a`=WS46YD1^v
ztlHR@PDHEIhoj+iZ?x`MS3^Gb?*3rx+WzqH>qCDIjJ;EO^?TX!;fZ618}rwPU%z@X
zm+p#&2eyvC=7+v}Gbmh<?umwne+g}r>AU&@6o1e^FpjqsP!EothqZ<y89dVubc~+$
z()Q8UkWM{a?l|v+%N%Dz`trK<>BVR8a%1|w=P<A5x^wLAST-2jl5>aN3^`6;x;q!h
z40cR7$wgjv=<r0)NmeT#cHGntp$Bfu2Qo){CMvTP?&&f2g>&zYc}nq~iHaxx>Sfbi
z6Ty3&d_F(=JI9&yUZLhPH}$0wuLiH7d2VWt!A3W=&0w{gT4!*bn_6XXy_;$?xWP>=
zHrVT?<{IpBQ+bS5-Pr7=t{4ousXrJDxv5_ntaVdo3^ur_7Y)|CsqY$`@20+PFzluV
z4L+YpstetT-O4_c7*KX~qF34e#KX#-N~}<JO`=WN{=`ycPb3yAyFD>a*-eS^pP}*U
zY&DazY$cOmwzTaHX#DF^Amg46Pk72>Z(<%XVO3*elND93MrfST3!Jz5i~j804fR(z
zo$hH&yH^M^9RAH@)dfND?sMK;537tf#j`W+*#~R?&dqpDww6;}o((ezWkXC#yncLu
zDd!=;-CLMWb$@muWr;gCkvHGEA7tZ>6!vYtJIC|==_UWk=LfcaD*g7Baohz@T|Nmf
zU}N90BcIOY^RMupUwf=O_w(=I?b;Du9lM>rT?wSa$y|Qz$A-?<9myOF#ge(i62A=I
zv&0SMK`8s0N4vi^u(czQ3{QOn%Wmje$$^$^up^jkI2Yo@bD{~CPlz{B29%xO5lS}s
ze0(k?)TxFyF}3F3`FvZZ(Bq-Eu8r`DYx~8<;m8GK`qFzlkNh*ykUrRzzBI)XIh9G)
zJ}~rZ-SS`W``gQ?YH(mH3x9U3F5T5$J<39Dne1QEk>hA#<XJq9K2<U3I_~MrnxSiv
z10Qxz4>sX#K6>POC3VN!GM(eQOZ&%n2M~jZA;dDoivIEAe}v8?;#-JQh?fzsApQdp
zyRD?OG!O^|L!q*=5jK4!lbkcvh6B{2@sVwKx4bmDWMl_3tAfeKkzHP{A{iNZ!pnt|
zftO0gTQlRV@Mht`-+txt$?Q)a8F_o<iu->YIR%|b>e0ju>;1&RMd-x>dcIW!d?1GR
z(s>55N^dCducLar%J7(v*wApJJ#u}0G1t`<b8T%g&zo1wH8sUt4X2W0VqpEQTg-DY
z`&J$f7jqSsmzB@KtXt-|Epv>P%i&g8E`x_<IRq!kaxhrT0c<lXFNH5^xddRD;}o|b
zzW{@l`%30iO1=d7=H_CybCiL+3I)(5FJ$m62Ute;JZ8$c80}Fmu7~|CM+)^xj^R(s
zsb|ZRZF#aSPqyWmxB6tOPiCYI*gmGlX-0or47(6wil^n&!4N!Vxkf|=mgkZu=khB(
zW;wnaM5G)`#~Tk!Jk9LiM-8)omf1fsmZDeQvMo=!El+0ok07%B2%^;|TYa)^&jl|o
zd`z)Cxrv(wL0pghXt{>QL6AJcP8hDF(F}(;X@<2HS)Nr{eX`XjTYYSGry1u*3sROR
z>pT$Gpg(L<%=OGJk#Tf5&3EB}AhzSDeBlC5JT15Opu7?7GpM|^59PIdAV^MoaSUP?
z=MRI}+K)x63g?aFw2v)cj`M^;a%(S^4-_`P<ko(iO74FK%E@;bdyu(aWG^z;3+I9Q
z9J(z}rv6GJr@qQ_DcSu-Zp3-dA+SDjgc}Y)Oj%2Tmm_UN<C;&h?j7orSzP<K1Nmm?
z=ktDjWS*Z4)F<=&WFUVWQTKs3!cBr8=KWxq_k(4fpVH^~Z{<AyE%W@htn*#vb-s(K
ztNCAnJjcgCIl0iB$D9Y+8^fPw+Rrl2JIgFjrkPl$?q4zQUj{Mvn`Pd=mUaJ1pZBko
z>pqp7_nnn%z9{FsYk!M_Fb3C`m}MErH0?tCPDOi(7hpeIZi4?~c|PoAxe*7vW%(<r
zPyUM7+KcVWUy<DQpK|#tl3ROGE`LRGtxqx6r|qBo7s=(nh^@U@zx)@;<-dsKzli0(
zh~>YC<-dsKzlgQI#aiEDbjce}KhjP_*2i!w-T<9mMB0LZoI})l6zjZro=O=${IHry
z#?SNF%}0h0KRm=F<LCJ-bjy)_#j-E^JBiN79%9uXmi@%Cmss`@%YLU&(Ne_bLWSh^
z8N3Lr`;2n3?k}<IMW+39pNn-LiFIFz>0dICqloi)Ng!-OwBr|3#x}(ozgXiJYy4u3
ze>3X1fXKbS5|P}ASda6m%<vp2uszAO|Hx|*)t(ryru8XT`;y!CDKEz+;@Xv5`%$d<
z7i<5Db)SfN-}4AugXlbrySCcz&-Z8W3Gg5Wrv8c5o)~K0c*Gj7SoRldeA`iuhHS=p
z&2xf0iS|^#m}<1ISoMk3o>=`AtGzDN@l{0KmtyKOh^cRx^;>5DEbG2idG^oBee$1N
z$~xcqhOF~ltn*#0^Ifd<CD!>a)_jU}zKgX!#5&K#I&Z`}Z^Sy!#X8T$I?u&A&&8TQ
zvF2N>`4nsZ#F}3*)4~)wEy&-__o&KeP=5A%^oIY9qiyzkv~b_>7@%vZ`%A3*OKiU{
zsc*lR$XaXE$I<&ge~-T3_a|Lt-c|ghV0(0>XTL{b1O(cHQ#<=T>aR)KgWsqBkKdy$
z=r{XMKW+AV)SpkfF?2;{zekJhA^%18k^dr=|00(EB9{Lmmj5D_|00(EB9{Lm#uRyX
zLO;?@MERGu;ye94+Vl6=flJ@KSo5v8bNoXq#~wvj@%NgYPQpn#dyDd)#M|x89_LA<
z`<yROaYo=zUMzDl>c<)4X<YqaZ%+#hwFPhVe>41lpe%kw@;Lgr&r_LyGrZD-cZL6%
z*^7F6SZ1I9f`8znuf6Q?{rjoUcG<o!j~+U7XvgE9q2LyQ->+Y8eWvx<)^E4|sP*O6
z^X-?~|I{9gg=6=|?u#vtJrdgx+Z5XqI~aR0_S4vz*c-9m$F9dp;-PqDJQA;o*T<K}
T?~ixHyW^jTZ;C$`x6S<*9S2K|

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf
new file mode 100644
index 0000000..9387335
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf
@@ -0,0 +1,200 @@
+#/** @file

+#

+#    Component description file a sinngle segment PCI Host Bridge driver.

+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#

+# Copyright (c)  1999 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PnpDxe

+  FILE_GUID                  = CE7CD764-a1d9-44e5-9857-14fefaae96dd

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePnpSetting

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PnpDxe.efi

+  DXE_DEPEX|PnpDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xA90

+

+

+[Protocols.IA32]

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiNormalSetupGuid

+

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gEfiVariableArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.depex
new file mode 100644
index 0000000..df1f82f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
��������G����P���ƣ�^�H���3����HN
2��G�,?��f�����c�,E�9���&^��J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.efi
new file mode 100644
index 0000000000000000000000000000000000000000..433b3355e8cf20c6fae4566bb5397bbe07761497
GIT binary patch
literal 18432
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
Ke*Qn?z<&c2pw2}A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.inf
new file mode 100644
index 0000000..68cb2c9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.inf
@@ -0,0 +1,264 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#Module Name:

+#

+#  PowerManagement.inf

+#

+#Abstract:

+#

+#  Component description file for Power Management module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PowerManagement2

+  FILE_GUID                  = 41E89AB0-BD3D-44b6-A431-E4836EFBF2CB

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePowerManagement

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PowerManagement2.efi

+  SMM_DEPEX|PowerManagement2.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3A00

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gPpmPlatformPolicyProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gPowerManagementAcpiTableStorageGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/IstApplet/Smm/IstApplet.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/ValleyView/Smm/MchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/SouthCluster/Smm/IchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/Silvermont/Smm/SilvermontPpmLib.inf

+

+[Depex.IA32]

+#  (gEfiAcpiTableProtocolGuid        AND gEfiAcpiSdtProtocolGuid          AND gEfiSmmBase2ProtocolGuid         AND gEfiSmmSwDispatch2ProtocolGuid   AND gEfiGlobalNvsAreaProtocolGuid    AND gPpmPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.bin b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.bin
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.com b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.com
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b6a61862966501978a99661518e38ad954307d92
GIT binary patch
literal 3264
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.inf
new file mode 100644
index 0000000..c379a00
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.inf
@@ -0,0 +1,195 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   SataController.inf

+#

+# Abstract:

+#

+#   Component description file for PCH SATA controller Driver module.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SataController

+  FILE_GUID                  = BB65942B-521F-4ec3-BAF9-A92540CF60D2

+  MODULE_TYPE                = UEFI_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializeSataControllerDriver

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|SataController.efi

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+  gEfiIdeControllerInitProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gSataControllerDriverGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+

+[Depex.IA32]

+#  (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.depex
new file mode 100644
index 0000000..3ec1c91
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.depex
@@ -0,0 +1 @@
+�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8e9fc865872c0c751c0d6c26aaf854a20d6ef3b9
GIT binary patch
literal 1856
zcmbVMZA@EL7(TbXv_M;Kv!G!KN;Q~hVsN3Ri7_S>MM*5Aq*8{pg*k?V=`iHhITGR}
zmnPanlf~?(CSXj=5`XL$+D>P0E&@s%PU6;RqBt@<q~q&{tQJOnP78_*{J}}ieb4iL
zo#%b;$=mn}IrO@8=*Ytddg}@C2*&>;m?MUVEJ7J^i-gQ=TO0;L`0g+j6b=Z!_b#`&
z;K%iry~b^9KR~~q+JSr(FpS{d%KaP;sjHDsy(1&`VbsX$;<a+QdpQW{uIW4>pMdf+
zY+ieETSEM^+=NWk^qqR6_hf-9=j?!$%iYUONL>rP?WbXDw}M=LYRY*ls43QHZSEmG
zq?=#h&v_l{cx5Q4Cx{@Bcm*jV>`yRD5Q72G4!DqqMkAmD@J1erBH%H=DM0oKK9OYj
zfzc<A{je41A6jCW8vK@!V)DL?V`owywL)Gb0wMB|(Z_LC=Op<LHMyx~3~&GD^S361
z5o1GKAvVJ9#~VqYn!9m3hvovb-;I}ZnBf#mNE8=2Tm-!QJWh0)eSoubJuTgtM6^3>
zgX&$VXeN?7myWx+doM6hDNLO>N}sQ4%cbg;qtDn=6>6swp@5FQHM1F95J^fyRgk_`
zI#3*I+{|~5n)AJD&G)W+7tIc&1Kgq6%;CQ@>i}u6BJxYP^b6FZERKUBeouLPoO8df
z-7IGh!be*c2N#G0=j&IJ+;Wwj1O;urJl0f9XIU1&`6Inr$2>U2niTdCq%_uOrzv_(
z{asSOvuigiEZ1U9BkVDlX#Hll2QSVG#-ciIjWrFi9_TOf7Rly3ne<avfb8i??#w`M
z$GOn6r+J!G<X3r4OCMF{&C;0eZDl10X=@9$2k5P!?u))!ZB;e|xm4LO$VJMADQu3;
zvZL^UcR*!CwyDf07pqK=jrib6@IK?mN3+iLum7?V(nW9Fj;56PH6>>XOYsIpA}omn
zbX8s0lE!A#MM19QpCjs`7``v&?^v?I?8ae5nJ!Bkm1z@lMD^wN&}984OeCNVY!W%^
zOmdF?I6*_5>+Ccv8nYL%)m%=^7|#kX;J@p>7Jn<v(zOqd)2ZxNnLMGNmeAFS!3Ca7
zW8xzumm`)5eyg&gej|2KIILRk(211<51{&rwpg;Rp~Q`}kmb)Q7|>DUcGk;<tg}lr
zb5PcpPejTtI!h<-$%Ry$<IneSJUCm62u`56H(Mx3^?;5#{%4)<^;Dg{lxp}`NZeZc
ze!zdWD>eOuOY~f5`}En`Get9)t;$;%Bg5D);pra7!x_d)+i&rfd9lBQFW)ad_p--<
z7(Ns8^RfEPGdzxuB{$^GEF1ymv$&?OFdTU-&r`tF{r&x&ue}a@(Bkv_(b{Kf&pC%&
P@41Fu=Uo?EJHCGdpQ7mr

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf
new file mode 100644
index 0000000..665948b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf
@@ -0,0 +1,101 @@
+#/*++

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    SeCUma.inf

+#

+#  Abstract:

+#

+#    Component description file for SeCUma module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SeCUma

+  FILE_GUID                  = E4CEDF93-672A-4782-A7FD-5FC6D239377D

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SeCUmaEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|SeCUma.efi

+  PEI_DEPEX|SeCUma.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gSeCUmaPpiGuid

+

+  gPeiSeCPlatformPolicyPpiGuid

+

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.efi
new file mode 100644
index 0000000000000000000000000000000000000000..22c7e70676f927d4ce2ec6e41c61b9f6daeb14b1
GIT binary patch
literal 8000
zcmb_h4|G#in!kDPwFzy?4Q<pgty(2@P!vN`gpwkuZL~Xr7Fr4wEdGJ0Rf^lb$c*EZ
zbRJd1wH<cc8OIgRAPhSqtJAY*4<>b>F9h4---3!A+2h8dH6?{sU?G%}x8L`Y{t+6^
z?C3ow@4NTAzx#dn`*ZKRH*e8><R32He|Y2%A6V)jWT7VcdxC<5yDn8TnPmTj5H}a=
zdLWgMtx%V<V(n}o_`A5+uZ`i54?`v_h6%Y7GatBykp0l*zM7D@>WP8>Pwq@{&Cf*`
zBkSUJ#p!r4*@Qg0s@$=>eAN<14RoLn+;IwIv}BLsN|*c<j0*xzj?+;PR1i0_cHQa+
z#Rmy`d@C3PJe2|&E!l`uQH1<K6Z84jI2{E+#ZE})%-S_ita~`-BlJ}e_(;bWJ0W+J
zy>jH}-)=#TUXVoSHrm=VwJx1z2h#|Im0lmDZ(Xqsx>p1~z*4b{iDm<P#;j-MW@A(F
zl}diJPRNhc={*Of9^T)_o!SxBdfJ<wxk|a<Ie6+%!>rh>UsV+w{lN#zX2~#E#}=CP
zp7#I^W0sxT1;96!uR_c+fTMU7aq10d=~TX|T<wREDhAXe&Qttx#8dw9aL*Y}1d!h!
zzw46mOIg44b%dpbz@&!$g<$h*{ZMVSyD2H#BuuGT_B!V>#`@JBFDDS<^axWz2cwE2
ztv1_9lV~o1N-=q-6NXk_zshz>)K}}uDnef(WWQc&*GU5!SE#AjT;eG<U+JZw#|brX
znAr%_fEH{Sq8ihyY?0ox&^*1`yc_{p%wYhMeYP8(X669%%r_^I{fYvWJl+q_xgaB}
z6vpIr6vJc+2nj)slFC(8E7&*p2No|bV=K*urgF2e6oPfP!0L>lyLdv_6J|r>aToPG
zVKz$7n2kg{hpf=8U>}P#Dx&D^0&{GGV2i1=B9tDprNOCJ6lH_7fK+qKLA~*rTS}X1
zOe?DO>~r>E=m<!bI`l=-yZTDN{3?VpJu4wLE5R6mKi&zzYCZo^s0AlcY&O{+m-UsJ
zBIAukrf||;)LBucd{zkt+`po-G7yW9)NiU-CiUyV4rAz6RI*>cWw}2z$*h4%=!ZtS
zj3{&=ShQcy4*HMjs%h1<!?we&6z2DbjC6Mwe;8}Rw03DISro9x-)ETik^d`!_XCSI
zz7EclB0mwQOOb2DX;LIdyhe)LBu<qgw}?h5GEbyZ<aRMdiWG=RQe=VamsICdaB1Yi
zL`*r#S%^)!ISU#FphjF47~L4g;tQ%!Hpqsg-U}Y^y9d|L2uSU<NWIYnJpe>6n&Q&j
zu<nS+pATz>R$1jLjJMQpV1?Ob><jB5NDqiSx`!2-mqH-2GWKDMzFlak@ML((1kY09
zSt`8D2AA>Q!Gu01Qo9zPy%8JCY<*^JvQ0Fb)@N+GC&T@fMl`VsQ^OF1pRCXHPKHem
zLnQ4t1XzW!p$GZWkg4_?tIQwH=wK1B!Jx|d1mu*1ocA}~nO?w)x&nbV?glqo<&6jE
z@8l-oT@$qUcB>-EJn9b)vrZUoZbO+&Gp)nc;hMw>1zX2c&xOJ3Lap1X@cs;dfC2-3
zt_Fa$I@><_+-j(8s^p(vX*Rph8!+ocEx5^??%M9IPv`f>B)W{!!vdMsZfkEU)QNmk
zq2S@e8Pb}Icn-q&)FMIDF$YO?2(DDvVGQhK-)FEEta9H4AhGmp=y!t!70X~P8rV=N
zWT`$>3%!-VFjYTU8Zw?&6bPKLvJ$dW2dmWtk;n>dfsH`jKtF<JIRYRZVqFc;g-q`v
zI5If%lU+Lc_MHWMdzfSGz6zD6bEVU_OOlygH^VQ<)A@FfHf(5^i|=Yz60=VaAD4bg
zR;g)$)9g1{WzW(`na9!ZaSVDKr#l?OpoB2TFx|G8Es7lFJQ}v>G?1yw*`mQ%vmeM5
zfT+8P?L8OI`~gKY3riM<lymC#rY_NbQ-`BJbA@GXhhs2vg>_Dc<Mi6h6?x7MM+AAp
znJaRC7WywxxAj$cMaw}xC232n;yVv(R{xxn9X!!g7<IC)T=_)P;tNsv#3fL@7E#rc
z?`vAr9}0r7Y5}Ulq0g|IexL6FkQnNOhE>M3fUdS4dQDLxQGbxnUo5PjQY++Z>QX%#
zZxW=hXR#3QXyDl>i|P0ZY8?h>>5Q(B5z?g6DhJ9c*mr6GtVfn5ia}OWX*QeJsL+iv
zI1>ZHcT`VbG2?H1ApBS?8nkgotV?K3h1oTn!xxQsWy3jqr;6DP=T<)p)C6Nq5Z?Ek
z;O10TA~tQt%_w}8FBM?U{1TJv3ikX)U^Q*VvmoR6cIjO5dck_gDuW5djfX@#TOwE$
zsLW|9F-X4{=3HhepFDLfEFM0<w>Qka=Z;wx@ur5ki^}gU60dHUyQHkROf*OxS&~1?
zHdOn8RfZQwK$1=2vyyBKpOj=n_;_nX4+nzc2yqWc`vfm%>52|W@-@Efce|pD<S1=X
zB@HH|*`5tO-sjz2(M?2e*oGCR$@w`fgzYL+Bl!(!4S*bJ1|!=oC_^K4YSfz7?WRE(
ztl5T@Km|M5ctA9T)9-1$09n%idbW6GlSbNi{zPHp8P_q`^8z4kTsd--*2qIntK2NV
z(AnJWC4<fKBR6avR0t_J=Ayn#*r(6z*NBD3fHl~n>2*8zZiZKmb0*aoX}0W?I(d4%
z4CftZ8Xmsjz~eQM=I&;>IoKR(?sD$^y^2<D9y%Q!9;Y~7ZQ**|Eqt$g@BhN#j@Cr`
zUVx4kq1PRA;ir&w1Fgg8P1x|rK#bcp#<eF4+BkO{7EGT2Ye)iY%Op_t5C}wNA)qZO
zz^IEenqil2N$qv_ZGsA|k1D-hJ4De5dIy|vlyO2hodeERL2w>-&L>8(!gm$uqPaN)
zQqxu9!}BD~Wf67~0<0m_;;Tll<oZLp90E>d-M+`;3_}jINov4)$oDdivZ#Yu2RlqH
zUNlD4ipR>J6I?LhMYChP!JqO|RNkH&K~3L43L$Of5dRJ>F?2;cv>ZHrz$9%iWrEH*
z>@LBREOqF5PW#X`D#ID$oKhRlV{aQ~qmyZ!I|(PIJ6UJk&K%_^*v$OSodOZ(g1?^J
zyt&2M`_J%9#roG!)4SDntnY^J_n9|fyKNXIB~e|A(tBO+YtGh3(S>P5=N$0b&&LgG
z(V&A*I9uNwfK9Ef1m?rEI|(rmQJbSE1Byp$mG|m2T~SZ+UcE}j3u;prkX8zQ>(P4M
zBXMgXs?f^^l5Q-S1jkr)-FA<q7b%=5kp?r0k}pZR<2wnQBk9Hz*n1|H^A7YA9}L#+
z2|{}H{RWaQ0WxC)BBuc|g#vQTWss^&MCKvVmKZt3J|eRUky8>Qb&zwhc|MQGZ((UB
znCF;9|B1*wiIFhPxXk}X<ckTBF-_x^_}~pimoD++ERtYKu-$+n7_-L#cg4P&5-NHp
zHYG%^LnPj-6UkH^g2<N<c^H<~#7Oo(G1YiY?fc7wuseRFj6yl%GAefpXq=x=<2z#+
zwGxpTmqDry#Eg0tk$n@c3sw7AMztWaEirN|qrO1o?=FKJ%@ZLVkdG%u#=?iIX(l2I
z6C!^=MyY0wWz<Wks2h_0(&($mv5fK~@~y<ktkH}LBXVOx<VZ%PX8`Q}31LM)QbwVi
zaT&D{HHNhl8LJ}4GU_cv`Y(eV&8TifzLXd_#Xhn}aYjI{O^h7NsGAX4bQz?o9rL6D
zky8^RW8p)j8<7L>qP{fH6MOsb-lJ64jb&6HDtb1dqH%jv#ub2EnHV{iQS%X*n-DpY
zQL7P_Iw7q1N6ILaGcKbJqsEuvCUL1(RpeMkkt+eY?lQ>HjJgStj>O2Zj4DTDW@6-6
zM%5$oJ0ambVHL*TWv?T$BQbI;qYfeR)r80&ut%w`8_Osg97y}}5-J*(QEL#Hk{CIb
zQNKZCkWb{0k&N1nFg#&i9AB$^>B)U?I&Zl25Jg*qnz~6X$<Eeu`V-+O9(TRvcpk$u
zoOdeR0|wM%xsQQsX|6OxXyXB_)_f5^iTjVGJEb1D_?{g3N46&9WFJ`%Iq9zVXw6AB
zdm-F<*_Y0DEO7bE<WD)Jb`zVgGOsR%F8(~N57GLQ`FHAFNsSdI*WIitOFFNJtEGCQ
zMoeN=*<p(mu-K}y>!vcj^^v0)Qov{vtght7a;xCVk^=gkK|nPG6xeGTj*^I?@TY8N
zYyTX+j@BQ^uM(d6id6};<_N9n_5A{7&)Ox~Vm(AH;ZCn^<lKrD_ZKLxV&Bd1vhczU
zTWN*g2Dm8Paxr7(#f)1oVkqCV5k4685{I66v`h<r*4IXSQPqodcenp2*AT#em8`P$
zkQ9i{q;E4VBo(!|zKj1|mqSh|3S3Pf``vWg&DnIfY&}DFwcqnv33yHFOoodL-p{G!
zH9Ig$&UV4+9&9`8)5N%?==YeTI~%?tL{Z>O5BK;axZ7z6@1Jpi*7VVuZd&s#t?!;D
zi;vR!Z|Pq@ZUtM&Cq1^Vr&8#i&UlOMqcwvgI($58s1Nh+<K=0_As+{A{(V{>lsc2B
z1)NUn2WNm_pkXP%(V8%=KMFh^ct^wk61PyDFSz#_P)KvZMOW3P!IRW!(_n&N7+iQ^
z%E}+94(`11zb4@(PAzOc`hcaO;r_m4?+z#)EqyB@b=Z5(j3PN|8U8+$^X|BB$9=nO
zcMZFQo=8~V($(t@M_Uf!Q%!XB!E#VMpM&CQ{Q<iB!^N~-E~WLI{*bA(Mc?ag3u1oE
zX&Y9FG8^&AY{ZBDDWoXsWoa;)3<lsI4-e2uU;y06F9b#}eNs?RzKJc|Pe(66EO5!f
zW&Q!>8@z1dRTC**Hj9zMZOzyMd?*H__O56t^5I{Ng-GSD=yIfFFuD?HX;*X*s75{*
zwPPE0q7tOAMQ6kKtpkJzKw&>23RlW4=PJ2JxyQI_?s4u3ZY@{Ct>Xx%;W&=x1TKk7
z=CquSo5ZDXshplm<0f;IGjLP5bS{Hy`jZ)_#qh?h7EC<y+m9g!fxZ%_FUIM=#pvW$
zFh`;PMRkb!SU^f)Rp6H>IN?Ltz`3tgD+wOCV9Z)LnSQMRzFEO1nGR9G?|o2ro1nfQ
z>QI8}GiifLf^WDZ|MB(eh1+lV^^;rn6&`aZ6F9Mhhj@5lLzz9}g>|Q+O~t>i_$qVi
zVZ-`@M|XWx(SOU&b|%})hVIz{FPo8qiwDM$2&{D(tg(-Ds5C9*b|__Q9xf9ftQB2P
zrhyg>tl9{AeIJe;E0{U3RLNGDGybsLRaCxkD=fA_sE>U6+YDp7VCPfY=Cw75!*6_8
z8Tsy4xNy<E#g3RK@!MXEU%KSpaz|0Qqj*)U7xaK{(BhHrd+0Yew&UONFvC}>{V@jq
zM~c?Ye5kGth&oT4^UPZ8H$VOK)2knP1UtqRJJkO@_ubq-Shrif);-oQt#9UCH=EDb
z=g-WalV6qpueN=*K3he>BL&&>?ejmsU9(`uf~5;KEZDi=lLZ*WjWE8z;<RkGyluI0
zR@tmy&HD4KgR{=h%E@ic_2%~EPO|>ey2JXh^_+ED-lDwqdBMDt*?F^9%>Hop+1c0K
zcK2<r+x~dlf!lKDteo@goHyr`&wXs}y1CEf@5tYs|3Utt{GIduGVjxQU(D0lCfnxP
dZnyom;P(Y`!Ty3z3%Uz}1z#78Gh~A5{{eR8%n1Mh

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.inf
new file mode 100644
index 0000000..45dd9b9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.inf
@@ -0,0 +1,152 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  SecCore module that implements the SEC phase.

+#  NOTE: This module was replaced by UefiCpuPkg/SecCore/SecCore.inf

+#

+#  This is the first module taking control of the platform upon power-on/reset.

+#  It implements the first phase of the security phase. The entry point function is

+#  _ModuleEntryPoint in PlatformSecLib. The entry point function will switch to

+#  protected mode, setup flat memory model, enable temporary memory and

+#  call into SecStartup().

+#

+# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>

+#

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SecCore

+  FILE_GUID                  = 1BA0062E-C779-4582-8566-336AE8F78F09

+  MODULE_TYPE                = SEC

+  VERSION_STRING             = 1.0

+  MODULE_UNI_FILE            = SecCore.uni

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SecCore.efi

+  BIN|ResetVec.bin

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1CE8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## PRODUCES

+  gEfiSecPlatformInformationPpiGuid

+

+  ## PRODUCES

+  gEfiTemporaryRamDonePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  Vlv2TbltDevicePkg/Library/PlatformCmosLib/PlatformCmosLib.inf

+#  Vlv2TbltDevicePkg/Library/PlatformHookSerialLib/PlatformHookSerialInitLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  DeviceCommonPkg/Library/CmosAccessLib/CmosAccessLib.inf

+#  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  Vlv2TbltDevicePkg/Library/PlatformSecLib/PlatformSecLib.inf

+#  MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf

+#  MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf

+#  MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf

+#  MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+

+[Depex.IA32]

+

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.depex
new file mode 100644
index 0000000000000000000000000000000000000000..b1a5ceab3b2eb73466f120b95a1915810dd0401f
GIT binary patch
literal 36
scmZSDU00wl<#k1HmIcEEb^C+9Oy52%7WPv6VE5_4y`w@V`X<aA00;~YUjP6A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7577e8f0bfe5b91ec182baae4f77a4981d6a7883
GIT binary patch
literal 1984
zcmd5-Z%kWN6u)g>M;QfLt+NSgy5uFxQY53-I%-{{wW2fKB4f1R!oSI|>V~ZC!woTM
ze4x9zG!k7hW6%uIWV*SaiLPWWzVb-BkbMA0bV{-igIZ)76tkfLp69k*(k<)@pS;Pv
z_uO;N@7(k6-M8ymwC*vyZshub&pd&USEaedzzkAvE>IPr8DLAQjOaBrLKc{4L*{IO
zjm_JKl$X^5LBZ|9?AdS!{#xv2u=f-QD&gMy)>2p}uPl7vNEonJAVwA!i!~izjy(%P
zfwI<?a0~G2SRTNK=IoxMhAI)dSQb2R@a5++zA~SiL4obLqY@#v&rid=fp+tHx|cUa
zJ)0EAYKU_zh4f@n{7Dm^Q!jozpGOkW?t7ILGP(HCGWGEKrbhWvX86k`0PCoi*OPJ3
z28@64G$?*r*CYd12kP8V06Zmy&9G9}qeHFfy<+Gf?5Tet*g57^ExjhrE>&08)cX7{
z1_BW#{6JBZdOV%fveQHMP)j|zzlRCN07WNKlWbe)y<Xg-fjmTgx)GL>)HJYrB*9pG
z&ZpLVmpYx*60S1MAK)%AVWyW!m^V2d=nQ=GE?}a&4d+k7e&G}>v0+%OtJbU5KdcGj
zf&93Z+$>LoE2gex;wk2+if{$g#Su>dM_oF?ZKW<f@oa?yXca|wTBz%9;whR1n8~>*
zcmYojvbbvk$6yUu*uo+q_pn=&TE<<5nkTh=K)t{*svoFN($sOFR)A_tYMHYLDgEr@
z6vqs`($Tya;3D(+Sen<yihyitY}iMCZjhm(oX?LHdc)CW?yQYIT|rgi3|Ej8D#?y3
z&|^vM6s!tZN@^#7S}4^R?;v?lV-z?44grh#D&pd*#JI&7GzZT%CEP|8mKrmc;p>i|
zxwEteuJTg{P11T!oY^2=L_(qX>nfFrL(IP`2R_}j5AZ0B_ky#4KWy$SiB?xcjvA3r
zA#UWVsGB2hP8_v351WIjq?S1j9s?-jJ_nW0x^LAO6E1_QQI0{UN3uTop+5~YXpaA)
zb!-pi#k4G0253za*z~1zV5%NVWIOb<*v)fD(9pQ-91s7agn4dHb?V1uMG?pJa<)GQ
zo1p+T;HjV3JAkA|Dtnc139a+c%OeJ0q#D2?bf2k895p#_1b@rcBwdo15+>>~8-^GX
z>NPjWh+aw9n0g;tJ$;f#6sX9&zD-=>!qCEQwPvFDoVv{!7p`GRrlT@dIn_c5)WYfJ
zgu9{poNk=}&8T;}^@3(tCEFyKWr&T*KR-KkY09wkeEaL4uSAp`-oG5LeE-gr@x4b-
z|CYz%yTaCvQGKM`^=8#uU&aPz&ty<*uZ6(wfSF=Z!u&stCm-MIW$z_R{>`_P{Uct5
zZzFx?54ETL1;4j3o$Nch?dCa{VX*2RWAgo>5YuOIvY5-#a=xppt9AeLOpr6!|KJT<
zpY6D9z&2t_+P<|d*mzuu%kjgw55J91-~s$0K84TVFYs6RYb@ae9><e-kG;X(Za-l^
MX+LYvF?S33A3kizCIA2c

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.inf
new file mode 100644
index 0000000..7594dfb
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.inf
@@ -0,0 +1,198 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for the SmmAccess module

+#    {1323C7F8-DAD5-4126-A54B-7A05FBF4151}

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmAccess

+  FILE_GUID                  = 326E9CC6-9839-4885-B2ED-275903B668E1

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|SmmAccess.efi

+  DXE_DEPEX|SmmAccess.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..68e0be94306ae6fed83efe8eb978dc7b3dc24a67
GIT binary patch
literal 3072
zcmeHIU1%It6u!IN)unOW#gMXKk%?^DfFa&HlhCaw4M~GmQb|ZUH3rwVNw<@wMrkIJ
zh9aYrMR%{EkrpZFgRu%id}u1-QXy<JF}pDjr7xv@GEl{>G2KA56tNx8xwHA%z8LC@
zv>v!;&i_5%oilTHze4Vr()XPC?-N^_32AX{C@C~g+?8dnM+xzO85dHpxFl47P<IQd
zlr?}_%z32Lv!Y?@x``5EKya%>$mVq?{c~WgesEBSun0oOhSp*&rb~oqwLSaw{pfZ9
z1B1ZqgXbD*AS73N<lx~qx}9DL^eo~wt_cDW;u=dW|7-Wl3Gj}vkGF(9YCZ&zK=S3k
zM`0;(^Qbo;M{y=<@y3X%os?j%s)5Bx(yzmF5{HGq_^h_29E?FVS#cPwN&lO`PY)tH
z1<d|%nh-LEM(q=1Az*Q$RXIuaD7wvQ8nr}>U61?NtvibvrhwMjX^mk?Z5UV_EH#e$
zeyRGwvT9C;tUdg<wl-dY<3HvBrt)`*5g_RXBQVcNm0?4NpMqUKI?{YA>pccyZ(V<P
ztJqn&DX^;AIDBRCpoUnJegk5%UhJXrF_duoZXw~$10W^qM?rE>i9)JqS@VHa!*qM}
z3_-xvd}+Zu`7nHXdACa(GynNjt6k;w*i-7tUUP=V_@zaD%e+v@vxQ0gHWPRBO}qjF
zCS2weedib3zHNhZ!7b08I}3GF*7f1p<rs)qbfQ5jn<=~&RWe<cV@VVE8^j9B?z*`2
za)JA?vUwi%y|`%R+yy0L8OOpwqCb=d_=d%IhJEdc%z)RJvljv|Ey2XB9x}JP2Fg>R
z{At^^6PZDOYOd>A9mpc53oH0mDqMRT99Rab6pO~P<m}h5lhcZ7PI+RBfp0UDHoTuN
zT?0EDdyLPlcI#GVWBmN8?pYNjGiR@$s#Y>9a^$X@XG$v8iL|x&s|+|!Ggn!NTE)@B
zX%?dg!wA0nh2{~6lzndaiSfC{6MIu+@P_*Mo~7}v>4_~Z#tZuKZRbAw@zh&?ma|-T
z*L%MnZ~AMh?W6U8_e0P=Sf5L<?z(%xyl#5FsiOt&I=u75{TF_{Pb5p?ZX(NfT?6Pf
z;HW*~Tz>dBilBa=zaJi=kA0{Me|TtUsOP{TbUere=V}1{rzoWn+Du=f9ki21X)o=g
z{d9<q&=d4yI!3>u6ZAWpp+C?I^eW9$!pc|$+svM1PqTWqo$X*vY!}<j+F6wKuwK^3
tPO@*<6?T>V!Q65{9+AJ0&&U~hPQEPvB>yhEm4LEUsZk!}qyH~p{~Ltch>QRL

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.inf
new file mode 100644
index 0000000..fd21028
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.inf
@@ -0,0 +1,122 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2011 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmControl

+  FILE_GUID                  = DD787473-07CE-4c63-82CE-930B33F39C09

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|SmmControl.efi

+  DXE_DEPEX|SmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x800

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..4bb6074e530b68b05103418ff7a5cc63d3cbbbef
GIT binary patch
literal 126
zcmV-^0D=Dkx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
gGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj%K0|NsC2pp3&(f|Me

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8b0ce5fd00d5326aa8bb6357937791a851a66b62
GIT binary patch
literal 16640
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
H+wK1cQZt-6

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.inf
new file mode 100644
index 0000000..448e0f9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.inf
@@ -0,0 +1,253 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitDxe

+  FILE_GUID                  = 93C81A74-B648-4f7f-925E-E4A0CDCC776D

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitDxe.efi

+  DXE_DEPEX|VlvInitDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x30D0

+

+

+[Protocols.IA32]

+  gDxeVlvPlatformPolicyGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+

+  gIgdOpRegionProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gBmpImageGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.depex
new file mode 100644
index 0000000..00c2f8d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.depex
@@ -0,0 +1 @@
+²�}�"rC�,�2Ӧ�;���\�J���B�.
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7152888719c4c31ef172a954f6e8d03875e95ac7
GIT binary patch
literal 3104
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.inf
new file mode 100644
index 0000000..a032c7f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.inf
@@ -0,0 +1,101 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the VLV Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitPeim

+  FILE_GUID                  = 24169E35-2454-4940-92BC-82321A2C7562

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitPeiEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitPeim.efi

+  PEI_DEPEX|VlvInitPeim.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gVlvPolicyPpiGuid

+

+  gVlvPeiInitPpiGuid

+

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  gVlvPolicyPpiGuid     AND gPchPeiInitPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h b/Silicon/Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h
new file mode 100644
index 0000000..b14d40e
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h
@@ -0,0 +1,72 @@
+//

+// This file contains an 'Intel Peripheral Driver' and is

+// licensed for Intel CPUs and chipsets under the terms of your

+// license agreement with Intel or your vendor.  This file may

+// be modified by the user, subject to additional terms of the

+// license agreement

+//

+/** @file

+

+

+  Cache PPI definition.

+

+Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>

+This software and associated documentation (if any) is furnished

+under a license and may only be used or copied in accordance

+with the terms of the license. Except as permitted by such

+license, no part of this software or documentation may be

+reproduced, stored in a retrieval system, or transmitted in any

+form or by any means without the express written consent of

+Intel Corporation.

+

+**/

+

+#ifndef _PEI_CACHE_PPI_H_

+#define _PEI_CACHE_PPI_H_

+

+#define PEI_CACHE_PPI_GUID \

+  { \

+    0xc153205a, 0xe898, 0x4c24, {0x86, 0x89, 0xa4, 0xb4, 0xbc, 0xc5, 0xc8, 0xa2 } \

+  }

+

+typedef struct _PEI_CACHE_PPI PEI_CACHE_PPI;

+

+//

+// EFI_MEMORY_CACHE_TYPE

+//

+typedef INT32 EFI_MEMORY_CACHE_TYPE;

+

+//

+// PEI_SET_CACHE_PPI

+//

+typedef

+EFI_STATUS

+(EFIAPI *PEI_SET_CACHE_PPI) (

+  IN  EFI_PEI_SERVICES       **PeiServices,

+  IN  PEI_CACHE_PPI          *This,

+  IN  EFI_PHYSICAL_ADDRESS   MemoryAddress,

+  IN  UINT64                 MemoryLength,

+  IN  EFI_MEMORY_CACHE_TYPE  MemoryCacheType

+  );

+

+//

+// PEI_RESET_CACHE_PPI

+//

+typedef

+EFI_STATUS

+(EFIAPI *PEI_RESET_CACHE_PPI) (

+  IN  EFI_PEI_SERVICES   **PeiServices,

+  IN  PEI_CACHE_PPI      *This

+  );

+

+//

+// PEI_CACHE_PPI

+//

+struct _PEI_CACHE_PPI {

+  PEI_SET_CACHE_PPI    SetCache;

+  PEI_RESET_CACHE_PPI  ResetCache;

+};

+

+extern EFI_GUID gPeiCachePpiGuid;

+

+#endif

diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130673321.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130673321.inc
new file mode 100644
index 0000000..aefa4e2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130673321.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 000000321h ; Patch ID
+dd 001142014h ; DATE
+dd 000030673h ; CPUID
+dd 0984d6012h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000321h
+dd 000000000h
+dd 000000000h
+dd 020140114h
+dd 000003211h
+dd 000000001h
+dd 000030673h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 059dea1b4h
+dd 02e5fc512h
+dd 0c554500dh
+dd 006c63b24h
+dd 0318a5bfeh
+dd 0edfe01ceh
+dd 0e8d70ae7h
+dd 047549329h
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 044137a8fh
+dd 029005d14h
+dd 0743a2d49h
+dd 0966fca78h
+dd 042db0d75h
+dd 04409b7b6h
+dd 03332cf27h
+dd 0b2ce94d8h
+dd 040bc2abch
+dd 0533bd172h
+dd 0926ae103h
+dd 0b7e5a4efh
+dd 076bd81e6h
+dd 03e02cc62h
+dd 0740fe383h
+dd 061523c4bh
+dd 0122208e6h
+dd 0fc82559ch
+dd 0ec30b2c8h
+dd 04bc10bfeh
+dd 0b3163138h
+dd 0ba1e7a18h
+dd 07803d0abh
+dd 06f0e1231h
+dd 09473b670h
+dd 051304d21h
+dd 0cb8a3f42h
+dd 0274d8dc3h
+dd 0bab640e9h
+dd 0bdc8eaafh
+dd 07b27b4f9h
+dd 0959a4209h
+dd 091f9f6b0h
+dd 0be221773h
+dd 00d0c89bbh
+dd 0d8f2be21h
+dd 0f425fd3ch
+dd 0fa9d1483h
+dd 05550ba30h
+dd 0073f6d29h
+dd 088cd7754h
+dd 027f3e5d1h
+dd 038f182d8h
+dd 020d74f0ah
+dd 0f325988ah
+dd 07c1a8c23h
+dd 0127ed099h
+dd 0227585a0h
+dd 00d4c1384h
+dd 06050179fh
+dd 01bc4c817h
+dd 0aa2c8a10h
+dd 049f125f4h
+dd 0f7eec20fh
+dd 09094ac21h
+dd 01f24e098h
+dd 01ebc2c8dh
+dd 077eaa301h
+dd 0e4f27bcdh
+dd 0b77a5198h
+dd 0eeca5c82h
+dd 0d3e5bfc6h
+dd 0cb8e6dbfh
+dd 0a17ad515h
+dd 0d48c9da2h
+dd 0e860957ch
+dd 08381a08eh
+dd 012f45e6dh
+dd 0c0c974f4h
+dd 06514ca9bh
+dd 0b02db319h
+dd 04f416593h
+dd 089dc0bf6h
+dd 02f5ae82ch
+dd 0b5222df9h
+dd 0e4764bd1h
+dd 005ff9df8h
+dd 0c0961525h
+dd 0b2158879h
+dd 09a76b6f4h
+dd 0a54d18e4h
+dd 0c33702eah
+dd 03153d9a7h
+dd 035d6ba7eh
+dd 0271124d2h
+dd 03a7fb73ah
+dd 0042be3fch
+dd 0ac855278h
+dd 088c44de4h
+dd 0c9f89abch
+dd 0586f9720h
+dd 0f4caecdah
+dd 06bd26b96h
+dd 007e80235h
+dd 0db27b333h
+dd 0627c15b6h
+dd 0c3da1297h
+dd 0b132e584h
+dd 02f60ccabh
+dd 076f825dch
+dd 036130a3eh
+dd 072523a7ah
+dd 077c9a891h
+dd 03c0db69dh
+dd 01ac55117h
+dd 0aa0bbc3eh
+dd 05cc10cd9h
+dd 0908089d1h
+dd 0b2a44ba7h
+dd 03ca2b50dh
+dd 065459262h
+dd 0cdb9043bh
+dd 0f214c194h
+dd 054dd52e4h
+dd 09357bf93h
+dd 0ea16fff0h
+dd 029a7f034h
+dd 0b797e60ah
+dd 0b5db4b85h
+dd 074668766h
+dd 00f1ebed7h
+dd 09d4800ech
+dd 058019cd9h
+dd 0bf81705fh
+dd 0ceae7c04h
+dd 070d2ee70h
+dd 00953fe99h
+dd 0d5f45a9dh
+dd 0418d40bah
+dd 09c943a99h
+dd 0ea03cae1h
+dd 0531bcc2ah
+dd 0682f1024h
+dd 07ea64718h
+dd 020bbb4d3h
+dd 001dabf1ch
+dd 098699ec6h
+dd 0eb482890h
+dd 080b1e5a1h
+dd 015dc554ch
+dd 08dbb23e3h
+dd 02d7d4577h
+dd 033e1bec3h
+dd 09a88e5ach
+dd 0e329a607h
+dd 0d039f854h
+dd 02a844500h
+dd 01e8261a0h
+dd 0036ae83ch
+dd 057f49669h
+dd 0738f514dh
+dd 02e63482ch
+dd 06f34043eh
+dd 0636f99e9h
+dd 0f26125beh
+dd 04d3a7dfdh
+dd 074b9e096h
+dd 04db03091h
+dd 0dd16a2b6h
+dd 07a60884ah
+dd 01ac2711dh
+dd 045ff88f5h
+dd 04d9cb40dh
+dd 06674c00eh
+dd 09b9194c5h
+dd 0dab4b661h
+dd 07700ac4ah
+dd 0e40f707bh
+dd 0dbfa7e4ch
+dd 064c142f1h
+dd 0548d3b6eh
+dd 004a5e462h
+dd 01e1efe78h
+dd 0e2bfc448h
+dd 018a53169h
+dd 01d3e4e61h
+dd 0216ec478h
+dd 071714481h
+dd 0aa67f149h
+dd 0b0aad35fh
+dd 03104bda8h
+dd 0637a1dd0h
+dd 099a03c9bh
+dd 001b9e213h
+dd 0f2a70918h
+dd 0795f0405h
+dd 0437be927h
+dd 0500889aah
+dd 07767e789h
+dd 092b2d130h
+dd 0845d8810h
+dd 0a75f5291h
+dd 0ec18bab4h
+dd 0eb0e6d38h
+dd 0f849805ch
+dd 0914a53d5h
+dd 07afb5a07h
+dd 0133a6302h
+dd 0827a89abh
+dd 02db38072h
+dd 08564095dh
+dd 0d944b3a9h
+dd 0ecd9cf6bh
+dd 06ed577dbh
+dd 063dba68ah
+dd 03e9bf12fh
+dd 03725aff7h
+dd 0906001aeh
+dd 0812cd9d6h
+dd 045affa4fh
+dd 0dd685182h
+dd 0efb44da8h
+dd 09f2288ddh
+dd 023aacd23h
+dd 056df5266h
+dd 0e0f5fe9bh
+dd 02b2aede2h
+dd 074a0ee04h
+dd 09dc03808h
+dd 0303ef215h
+dd 0cd286863h
+dd 02e5a5b48h
+dd 01d331d85h
+dd 0d748beech
+dd 00bb1235dh
+dd 05f693f2dh
+dd 08147c39dh
+dd 06b42c7a9h
+dd 049ded5b9h
+dd 0ef35df0dh
+dd 0a38ee3d7h
+dd 0213449fbh
+dd 02e8816c5h
+dd 0a43b196dh
+dd 0ac3eb42bh
+dd 078581b9eh
+dd 0efa6b45ah
+dd 096dd675bh
+dd 05a480576h
+dd 09bb555cbh
+dd 07e4de6c0h
+dd 0104699d8h
+dd 09f6c36f6h
+dd 0ae98cbe8h
+dd 01290b5e8h
+dd 0d2620e30h
+dd 0285b174ch
+dd 0411030b5h
+dd 0ad9310b4h
+dd 0e9c43a4ch
+dd 0b68db761h
+dd 04283b03fh
+dd 08d4ce3b3h
+dd 01f7b123bh
+dd 0930f7187h
+dd 08a7274aeh
+dd 0f365c277h
+dd 0cd9f1bb3h
+dd 05ddd6e16h
+dd 0d7938e92h
+dd 0f776d413h
+dd 0eafe7dfeh
+dd 0d47e7394h
+dd 04d381df4h
+dd 062cef825h
+dd 08be02ad1h
+dd 05bafcda3h
+dd 00108b85dh
+dd 0e032ef17h
+dd 0201eeba4h
+dd 05f9f672bh
+dd 078bd1a70h
+dd 0e26f30ech
+dd 00211573ah
+dd 0debc689ah
+dd 0ba8dbd4ah
+dd 089a092afh
+dd 0092833cfh
+dd 07f12d5f1h
+dd 04cf54ba7h
+dd 0bc9f3554h
+dd 08e7c249bh
+dd 0fa771dc4h
+dd 026d4c4d7h
+dd 004f04f68h
+dd 0d065ed16h
+dd 025435a45h
+dd 0bd028613h
+dd 05df1bf12h
+dd 0c31387b5h
+dd 0f396bde6h
+dd 013dbddf7h
+dd 0ca132f70h
+dd 07552a2bdh
+dd 06a209cbfh
+dd 092a17170h
+dd 04470d8e4h
+dd 074ccbbc3h
+dd 067953857h
+dd 0c512caf2h
+dd 07748bdcch
+dd 05168464dh
+dd 0a13a08aeh
+dd 017b01112h
+dd 09d620d9fh
+dd 00726bc0ch
+dd 0fbc852efh
+dd 0a1952973h
+dd 0dc379bb0h
+dd 014c61fabh
+dd 0bab0264bh
+dd 0c6249027h
+dd 050a20196h
+dd 0f1ef2888h
+dd 0e56d9081h
+dd 0f8fd313fh
+dd 048f9cd7bh
+dd 0d9256a72h
+dd 0c5ad02e1h
+dd 03a76f23bh
+dd 0bc4d28c9h
+dd 089afcb82h
+dd 0cb29d3a0h
+dd 014108ec7h
+dd 0ce3a2543h
+dd 0568e708eh
+dd 0afa8854fh
+dd 059d51a84h
+dd 05e314738h
+dd 01223b520h
+dd 0a6ca13a3h
+dd 09983272ah
+dd 052a8ee3dh
+dd 09b9cab64h
+dd 01f37c019h
+dd 08490a443h
+dd 0f386741bh
+dd 084152a61h
+dd 0853a1781h
+dd 09688e176h
+dd 068a66da2h
+dd 0a9643ce8h
+dd 07156e986h
+dd 003a0ac25h
+dd 09f121ceeh
+dd 09406532ch
+dd 0d2ce7729h
+dd 00e69128eh
+dd 051d94115h
+dd 028a57a6dh
+dd 046decabfh
+dd 0fce80274h
+dd 08b298562h
+dd 08667b056h
+dd 0db71e9beh
+dd 0182bfcceh
+dd 047885e11h
+dd 0c139663ch
+dd 05b6161a7h
+dd 0914c98d9h
+dd 0b6cdebc9h
+dd 06680a868h
+dd 048777de6h
+dd 038b4bbd5h
+dd 073767219h
+dd 047980ea0h
+dd 04b26b765h
+dd 0f1b4dd39h
+dd 086ccb26ah
+dd 098d97a4dh
+dd 02b0ef509h
+dd 04c154015h
+dd 00c264cfbh
+dd 02a8a8049h
+dd 006255ecbh
+dd 0a7cf7624h
+dd 08bab69fah
+dd 0cb504859h
+dd 037a55ec5h
+dd 02c39c48bh
+dd 023be04e0h
+dd 0ea664b8bh
+dd 051f363ffh
+dd 0b9fb6870h
+dd 028d49894h
+dd 0fc9ec15fh
+dd 0ab2b0ec1h
+dd 090b06098h
+dd 01f2f8632h
+dd 0b1b5317fh
+dd 097065393h
+dd 0fba79b8eh
+dd 09f77b3a5h
+dd 097360db9h
+dd 08e7aeab7h
+dd 0367e1180h
+dd 069fb19a1h
+dd 0c75d0dfeh
+dd 07578f3a7h
+dd 015918127h
+dd 07ebe4eb2h
+dd 05d365605h
+dd 0b24fe92fh
+dd 06ecbeb2dh
+dd 0c47427d4h
+dd 013e185e5h
+dd 05dea26fah
+dd 03edfe8ddh
+dd 0b90e9800h
+dd 085a9e163h
+dd 08fd84785h
+dd 00935fc1bh
+dd 0297d8bb8h
+dd 07e92d438h
+dd 099e4175ah
+dd 098e2e683h
+dd 0c5b902b5h
+dd 03f506d77h
+dd 08e2610d6h
+dd 0a7d2d357h
+dd 08d08e2d3h
+dd 0d5026f9eh
+dd 0274bf543h
+dd 01c30e3c9h
+dd 07745a863h
+dd 0b29c1150h
+dd 0364d3579h
+dd 09463c55bh
+dd 09ea7aa95h
+dd 0eb30c705h
+dd 064424503h
+dd 0bcde415ch
+dd 03d5dcabfh
+dd 07b887d29h
+dd 095e98bdbh
+dd 068c1f9a8h
+dd 05e54c79bh
+dd 057ba68ddh
+dd 02967e0c2h
+dd 070933985h
+dd 00e1e1dcch
+dd 01d3796d6h
+dd 032acd90fh
+dd 0052ceba5h
+dd 037a327dch
+dd 09560ef9ah
+dd 04b6d12f5h
+dd 0850883d2h
+dd 0df69d81fh
+dd 0c79e216fh
+dd 0794c99edh
+dd 022d116e9h
+dd 083e4647ch
+dd 0950dd315h
+dd 02fe851b4h
+dd 00bf1de94h
+dd 0125aae60h
+dd 002cd09beh
+dd 05edb1efah
+dd 0a4bfd2c7h
+dd 0620e57aah
+dd 0ffbaba2ah
+dd 0f51d3f9bh
+dd 0e704cd2eh
+dd 0c9980a09h
+dd 0664ca4abh
+dd 0aaea5080h
+dd 0aa79308eh
+dd 0d9de330dh
+dd 02c3e3cf5h
+dd 00438c8b3h
+dd 0abc8246bh
+dd 03b48ae58h
+dd 0a21354a6h
+dd 0ea65dea3h
+dd 0e04dfd2ch
+dd 0a8208656h
+dd 0070fe3fbh
+dd 00297abd9h
+dd 09a4815fbh
+dd 0dd3d6352h
+dd 0a438ba26h
+dd 0414a8f11h
+dd 08c4c86edh
+dd 050448b2fh
+dd 0e77568a5h
+dd 08c1d58eah
+dd 0088a3d5dh
+dd 0398c3319h
+dd 02ce02392h
+dd 012dfafb3h
+dd 03340facbh
+dd 0f8957ebeh
+dd 076a791adh
+dd 03fe7c578h
+dd 09b3b8fd2h
+dd 0c082b6afh
+dd 0bf09ee8ah
+dd 0c4a3aacbh
+dd 026895d18h
+dd 021c81f50h
+dd 00e7e1d84h
+dd 06ff4c9efh
+dd 0b363512dh
+dd 038917ba2h
+dd 0a1303ee9h
+dd 07f851aceh
+dd 09cc1e017h
+dd 0c0a2e294h
+dd 083b66868h
+dd 08f68b451h
+dd 07d219e94h
+dd 0f4d18ac3h
+dd 011cc03a7h
+dd 07397bd90h
+dd 0eefee7e7h
+dd 053ea0849h
+dd 08b8c19adh
+dd 04c61c003h
+dd 048a4f4e6h
+dd 097f2548bh
+dd 013371c12h
+dd 01c93843eh
+dd 0a727a587h
+dd 0a0323bafh
+dd 042906cf7h
+dd 09749023fh
+dd 03857315fh
+dd 0b0ea532ah
+dd 0071060f8h
+dd 052500ef8h
+dd 03d31e4e4h
+dd 0a76f5773h
+dd 07902d542h
+dd 08d751514h
+dd 0a5b0f9fch
+dd 0ceab6c24h
+dd 0a4560b74h
+dd 063d06b2ah
+dd 0b63f6df9h
+dd 04cb3a2deh
+dd 04a572aa2h
+dd 0b51a33c2h
+dd 0aa405323h
+dd 03280f649h
+dd 0b437a3cdh
+dd 0de7ce094h
+dd 0c59b1c19h
+dd 06536ff15h
+dd 05a0b9ca5h
+dd 0d8f54f39h
+dd 0f6aebe2bh
+dd 02ad194a2h
+dd 01a0c440fh
+dd 0f05319f6h
+dd 03cad1a52h
+dd 0ecce3ef8h
+dd 0e5496ee3h
+dd 0f83c36dfh
+dd 0293f77bah
+dd 00c79888dh
+dd 01d3e67b0h
+dd 0b8085108h
+dd 063cd6fa7h
+dd 0138d1d93h
+dd 0d8cc5a38h
+dd 00d9639ddh
+dd 0572291ech
+dd 069c74b8fh
+dd 0060dfc5eh
+dd 0e1c504cch
+dd 052862864h
+dd 084ced224h
+dd 06577d282h
+dd 0cea27ec7h
+dd 0fc7b526ch
+dd 032d4f4f5h
+dd 0532027f7h
+dd 0a9459126h
+dd 03784e9e5h
+dd 08f791358h
+dd 01a7670b4h
+dd 0cefdbbdch
+dd 0935dbfa2h
+dd 0b833487ch
+dd 069367eb0h
+dd 085004724h
+dd 0268175f4h
+dd 004717425h
+dd 06263ca85h
+dd 02694fdffh
+dd 0d167485bh
+dd 0ee91ebe0h
+dd 0290efc2fh
+dd 08a962840h
+dd 045df8fe8h
+dd 05f6d4839h
+dd 0908dd2d8h
+dd 09f580b17h
+dd 0f2605928h
+dd 0d59d9707h
+dd 06aa96b3ah
+dd 05fbc60dbh
+dd 0ad15f292h
+dd 0a078f85ch
+dd 046fc6394h
+dd 0696e15b7h
+dd 09148e068h
+dd 0f5bc948eh
+dd 0844b7e4eh
+dd 0774c39a7h
+dd 004a3392bh
+dd 0c8b2026ah
+dd 0c0264f01h
+dd 06a099f38h
+dd 00ef96de5h
+dd 0a4f00791h
+dd 09751f947h
+dd 0ffcac883h
+dd 069a8a9e3h
+dd 07fb68c63h
+dd 033f1c506h
+dd 09e0996a2h
+dd 069af59d2h
+dd 05efadb75h
+dd 088ac9360h
+dd 0214c25d1h
+dd 0f0b697f8h
+dd 0cfe6a6c3h
+dd 0f8ef7f73h
+dd 090159d1ch
+dd 0fe2a51c3h
+dd 01eed7a8fh
+dd 06ab12ccfh
+dd 0c5982d2fh
+dd 011a51030h
+dd 07fc93158h
+dd 0f1849f64h
+dd 0a875cbcfh
+dd 02300415fh
+dd 08c88c82bh
+dd 0d7de0545h
+dd 01719fde2h
+dd 0e3d77b0bh
+dd 0fa8542ech
+dd 05cb6586ch
+dd 0192d1df5h
+dd 0d31d88e3h
+dd 0acf46c00h
+dd 096df4af6h
+dd 03be059f2h
+dd 073a69680h
+dd 07547ef57h
+dd 0b592ba35h
+dd 0499feec7h
+dd 01b4f4228h
+dd 05346f7ddh
+dd 00b8926cdh
+dd 080f95c86h
+dd 0bbc17229h
+dd 05232ae64h
+dd 0471be56ah
+dd 0dcef427bh
+dd 0404d052ah
+dd 08d5e577fh
+dd 08aaf2639h
+dd 0f730f1deh
+dd 0ec7aec4bh
+dd 03a80998dh
+dd 068158d21h
+dd 02585e8f7h
+dd 03fad7786h
+dd 0b216c1cdh
+dd 031312638h
+dd 0e3c39ba2h
+dd 072045c70h
+dd 0746ef0eah
+dd 0bf969d6eh
+dd 0694de528h
+dd 0deccb9c4h
+dd 0349dbecah
+dd 036ff1084h
+dd 017e155d6h
+dd 02ca9b2e5h
+dd 0b776fc5dh
+dd 053c6ae1eh
+dd 0893e0d2fh
+dd 026b0007fh
+dd 0bc2e8be8h
+dd 0d080659ch
+dd 0a90ac2e6h
+dd 0405ac57ch
+dd 0ee671670h
+dd 0e28bcf44h
+dd 0931d2d40h
+dd 05f58813eh
+dd 08e439554h
+dd 0a7e707aah
+dd 05f11b5a3h
+dd 005b34f50h
+dd 068a4ce38h
+dd 0cd624621h
+dd 0fbc5e664h
+dd 0b55a2c73h
+dd 0ffd05d3fh
+dd 037a55094h
+dd 0f3cb2068h
+dd 0e3f2b77ah
+dd 06890a1fdh
+dd 005f19507h
+dd 008513274h
+dd 0badb805bh
+dd 0aa6bce31h
+dd 005403473h
+dd 03174f8e9h
+dd 0d1fbd62fh
+dd 0b63c978ah
+dd 00da9980fh
+dd 0e51298bah
+dd 0b629bc0ch
+dd 02baff5f9h
+dd 00bb887f5h
+dd 0134cfca5h
+dd 09673054ch
+dd 005f47453h
+dd 03c696160h
+dd 00aa1777eh
+dd 047979c49h
+dd 00e2ddea5h
+dd 0e438ec37h
+dd 013db13a0h
+dd 0128d37f0h
+dd 0e8187d9ah
+dd 07dbe1c2fh
+dd 0658011f7h
+dd 0440e0548h
+dd 0d7447da9h
+dd 0a35e614dh
+dd 01957eb17h
+dd 0d16fcbc5h
+dd 01213fceah
+dd 0cc2738c6h
+dd 0e3d22cd2h
+dd 07aa9a7f4h
+dd 055f5007dh
+dd 0f0c0ca56h
+dd 0f2900f92h
+dd 099b24335h
+dd 0cd742913h
+dd 02952bc4bh
+dd 0ced3d608h
+dd 04426918bh
+dd 04c0c927ch
+dd 0a6c31c4dh
+dd 0f640585fh
+dd 015025736h
+dd 02836e519h
+dd 01d07621ah
+dd 091ae6682h
+dd 09b525ddah
+dd 0c2728dd4h
+dd 041df48c9h
+dd 08754fbd0h
+dd 03a2e2c97h
+dd 01f25ac3dh
+dd 0883c226fh
+dd 0928ee0c6h
+dd 0cc42491ah
+dd 0e856ab2dh
+dd 060d5749ch
+dd 0e1ae690fh
+dd 0bae1191fh
+dd 0920dbfc4h
+dd 03e56c12ah
+dd 0dabd1e8dh
+dd 028646dc3h
+dd 0849757bbh
+dd 0dfeb3745h
+dd 031ff727ah
+dd 0c966438ch
+dd 01c2e262ah
+dd 0909d70b6h
+dd 04741f54eh
+dd 01c012831h
+dd 0b119e611h
+dd 09ff4a224h
+dd 07ed0a64bh
+dd 086425266h
+dd 003d2b787h
+dd 0d3bdc829h
+dd 0934a74fch
+dd 0c7eef804h
+dd 0de606db4h
+dd 0d7457685h
+dd 0d6bf1502h
+dd 0e7964615h
+dd 04818d61bh
+dd 038ba60c0h
+dd 08c61666dh
+dd 05275676ah
+dd 0590d7921h
+dd 07781fb01h
+dd 0e03547f6h
+dd 0aee48273h
+dd 0191fb9abh
+dd 0d9f2cfffh
+dd 00cea35e8h
+dd 0af4acf47h
+dd 032edbafbh
+dd 0c8f73581h
+dd 0528ab477h
+dd 04842d2fch
+dd 09af3119dh
+dd 0fcbd9c13h
+dd 08a1a5f75h
+dd 0541a3f14h
+dd 00884d660h
+dd 0b9cad52eh
+dd 0965301afh
+dd 0974d949eh
+dd 038d0fdc2h
+dd 04ae751d1h
+dd 0f1240fb8h
+dd 004815377h
+dd 0f5cb3dddh
+dd 056f2e63ah
+dd 0e1933a8eh
+dd 08b1d6f20h
+dd 0156ba835h
+dd 04da19fb7h
+dd 031fedaf2h
+dd 0e74567b6h
+dd 00da9e4fbh
+dd 08fed367ch
+dd 06f1f46a1h
+dd 0acc04each
+dd 037b33396h
+dd 084732189h
+dd 0f0648f05h
+dd 0fb4e2342h
+dd 0bb9f8693h
+dd 08095a791h
+dd 0d18aec1ch
+dd 040263cdah
+dd 0ecb8bc4ah
+dd 0ca820b06h
+dd 0117ce54dh
+dd 0967cc4d4h
+dd 05d7a7d6ah
+dd 00a1645f7h
+dd 0e49df5edh
+dd 034bd743bh
+dd 08807528ch
+dd 0a8ae753eh
+dd 0d677f673h
+dd 00bfc4ee0h
+dd 0716f53c4h
+dd 00b4f38fdh
+dd 00f5f87efh
+dd 070e1445eh
+dd 0048d3178h
+dd 00f2d2c31h
+dd 00f640be8h
+dd 0c95e19dbh
+dd 030aadacdh
+dd 025724e7bh
+dd 002ecdc74h
+dd 049fcb952h
+dd 07c222984h
+dd 0bb07a0e5h
+dd 0e7231714h
+dd 01bbc2288h
+dd 0d24714a7h
+dd 030cb937ch
+dd 0db66b7a5h
+dd 0cb94005bh
+dd 0ad7567d2h
+dd 01a8cabb4h
+dd 005a50b87h
+dd 0df14fb1dh
+dd 0f991ec5fh
+dd 001cd686eh
+dd 094b19e13h
+dd 0ee6b3a88h
+dd 082042fe3h
+dd 0228edc92h
+dd 095c4f3cfh
+dd 0cea7f80bh
+dd 07e99d845h
+dd 04172b203h
+dd 0eef9c7a2h
+dd 05e54bf7bh
+dd 0b6753137h
+dd 0a8396457h
+dd 0d596b6cbh
+dd 06d518011h
+dd 0a24a8636h
+dd 077689acah
+dd 0362e665ah
+dd 0bd09ce61h
+dd 03dd572f3h
+dd 04418b6e0h
+dd 0b3b4a59dh
+dd 0c6f793e1h
+dd 06349fce0h
+dd 093a1778ah
+dd 09a328691h
+dd 010f50007h
+dd 042769521h
+dd 0ebd062eah
+dd 0b5d7281fh
+dd 016d7a6bch
+dd 07c98b706h
+dd 09a361a65h
+dd 093d15d5ch
+dd 05d968eddh
+dd 0362d065bh
+dd 0cce7dbc2h
+dd 065d44aebh
+dd 060cd23e0h
+dd 0426933c1h
+dd 03bbb83e9h
+dd 0583a89b5h
+dd 0c9c9c7feh
+dd 05f199232h
+dd 05a03af1dh
+dd 03ea9d06ah
+dd 061e187e9h
+dd 0da46c606h
+dd 03c03ab3ch
+dd 016bc0072h
+dd 0bd8c2a8ah
+dd 0ee62fd47h
+dd 00de5582bh
+dd 0ea1bfccch
+dd 041f20ef9h
+dd 0301ebf81h
+dd 0a600061ah
+dd 0d6d526c0h
+dd 05dd8e3e9h
+dd 051edae84h
+dd 086dc6260h
+dd 0cf5e5fcch
+dd 01307aefbh
+dd 03f231eabh
+dd 06ad82191h
+dd 09b495cach
+dd 0a5b54b39h
+dd 06202e0deh
+dd 05f7aa07bh
+dd 0d527b631h
+dd 08b7b796eh
+dd 00630497ah
+dd 0bae74432h
+dd 031e60600h
+dd 04d2d7bcfh
+dd 087707adfh
+dd 04f677443h
+dd 0e07d248eh
+dd 026ddb9e1h
+dd 087f83c4fh
+dd 04a0da291h
+dd 0a7c01e96h
+dd 093f70c5eh
+dd 08f4182f2h
+dd 0234bf1efh
+dd 048c9d0e4h
+dd 04761d35ch
+dd 068ebd37eh
+dd 014cebbb8h
+dd 071b8ac1bh
+dd 057db7182h
+dd 0a413bf65h
+dd 00bcabb3eh
+dd 0689a6e0bh
+dd 045d90217h
+dd 0fa7b765dh
+dd 0b3815f54h
+dd 0bd5df0b3h
+dd 0f5cc2655h
+dd 0801dd907h
+dd 0e1c182a4h
+dd 04fa41412h
+dd 06ab49095h
+dd 034454410h
+dd 05fe0c00ah
+dd 00cabff6bh
+dd 0bbd0e2d2h
+dd 08b7a55ech
+dd 036e0ee0dh
+dd 010c2b1e9h
+dd 07eb7fc02h
+dd 00fc53662h
+dd 091a74a90h
+dd 0d5905eb8h
+dd 00ee96b03h
+dd 0145724ceh
+dd 0dbf47490h
+dd 0dcb9caadh
+dd 0fb606de4h
+dd 0e3658d31h
+dd 07c725e82h
+dd 01201fa98h
+dd 0c34a836ah
+dd 0eafcba7ch
+dd 0afe5a4cbh
+dd 0699cd70ch
+dd 07fed1c2bh
+dd 0fa61877ch
+dd 09e672fe0h
+dd 0e2fe430ah
+dd 0874a63d2h
+dd 0cc8c2219h
+dd 00fa19d07h
+dd 0ebcad31bh
+dd 051a4ff78h
+dd 0713bb7d7h
+dd 03fe9d076h
+dd 0a92506abh
+dd 0db0b90bdh
+dd 048cab528h
+dd 015699395h
+dd 0aef6f93fh
+dd 05f066cc9h
+dd 07ed0f560h
+dd 082a462efh
+dd 0d88681f6h
+dd 0883ba5efh
+dd 0a746b591h
+dd 00263115eh
+dd 0901a95fah
+dd 0870eb02ch
+dd 07cf70d00h
+dd 0db7c55dfh
+dd 0c280088bh
+dd 09ac2b6c1h
+dd 0030d11dah
+dd 06322f576h
+dd 0bf998862h
+dd 093b82053h
+dd 03f97f947h
+dd 003294a91h
+dd 0ba56b806h
+dd 07a1a266eh
+dd 0af197f36h
+dd 00a4ea724h
+dd 026a56b2dh
+dd 0381fd6b1h
+dd 0407b7f2fh
+dd 05e46d472h
+dd 069e56c4bh
+dd 089b6ee73h
+dd 0ecd1937dh
+dd 0cc8eee4ch
+dd 02ef1fd8dh
+dd 01e88316eh
+dd 00a30f4adh
+dd 053cc94a6h
+dd 08e136700h
+dd 095bb1269h
+dd 01a279a41h
+dd 0f521edabh
+dd 0be52de14h
+dd 0a48bc142h
+dd 0b338c212h
+dd 034a618b5h
+dd 0dc532a63h
+dd 0962bca64h
+dd 00f9d5f9dh
+dd 0677160ech
+dd 0acb2d852h
+dd 09e77d3d2h
+dd 056bf098ah
+dd 03f6fd73eh
+dd 0734f591bh
+dd 0fbca87bah
+dd 05f6b4ebeh
+dd 0413c43a7h
+dd 017e1e625h
+dd 0e8221dafh
+dd 0dcc3918bh
+dd 0fba8da97h
+dd 017a3f57eh
+dd 0b1ca7235h
+dd 097474901h
+dd 06fec9976h
+dd 032c3e1cdh
+dd 09b6d7653h
+dd 003e7ef63h
+dd 06ff3b56ch
+dd 0318ab29fh
+dd 097141533h
+dd 041fdef7ah
+dd 0409a06eah
+dd 03356b572h
+dd 0d62d3373h
+dd 0fa6a8c83h
+dd 0abff3312h
+dd 08f77f931h
+dd 0ec849e1bh
+dd 0dfdeecf9h
+dd 003d97021h
+dd 0755cfab0h
+dd 09a94d076h
+dd 097853c16h
+dd 04ac3c0f4h
+dd 0e27c5dfah
+dd 01e6f236ah
+dd 078c66030h
+dd 008cd33a9h
+dd 09f2b57a7h
+dd 0ae124926h
+dd 0a6a04b1ch
+dd 0a4ad796ch
+dd 09c7a0c6ch
+dd 0531e5938h
+dd 02698c3f7h
+dd 00074dda0h
+dd 096bb342dh
+dd 0aacffdceh
+dd 0f49b1d9ah
+dd 0d9d32665h
+dd 02c6dcf0ah
+dd 0c7b18980h
+dd 07ef10775h
+dd 0bf1412d1h
+dd 0d46e74f6h
+dd 05e14841ch
+dd 09b20da7ah
+dd 0e0a1fa7bh
+dd 08b376b79h
+dd 010c352a1h
+dd 055988373h
+dd 095fee1b1h
+dd 0f0f44dd3h
+dd 02463b9e8h
+dd 0e007663bh
+dd 02b477a3bh
+dd 01303e5e1h
+dd 0a7179878h
+dd 03e6fc840h
+dd 02f6a9571h
+dd 0031a7ae5h
+dd 0f0b5d8b3h
+dd 0e144d40dh
+dd 0e357ca7bh
+dd 041c69ca3h
+dd 0014d788eh
+dd 0972c45e0h
+dd 0d54c327dh
+dd 0415bedfch
+dd 0c0bccfaah
+dd 0314c948bh
+dd 078d99fb8h
+dd 0ee7aff87h
+dd 0d7d774f6h
+dd 0181869dch
+dd 089f7b289h
+dd 0a6a49636h
+dd 0331cde84h
+dd 0e4473639h
+dd 0e1b45eebh
+dd 010f0afd2h
+dd 087169267h
+dd 09d630366h
+dd 02c0c3bfbh
+dd 05cac643dh
+dd 0c8f34ff0h
+dd 001cb3aadh
+dd 0fe91c1bah
+dd 04f7aee63h
+dd 0f1a56569h
+dd 0f9e99e06h
+dd 0e84b513bh
+dd 0e6258dc6h
+dd 03b93071ch
+dd 075b9ea16h
+dd 090378cefh
+dd 0b2782f70h
+dd 0bdd00420h
+dd 07f93f7d4h
+dd 0bbfabd3ah
+dd 015429926h
+dd 0abb8b08ah
+dd 0551ad3adh
+dd 0a74425c1h
+dd 05b529a8ah
+dd 0956ac237h
+dd 0ba7ef75bh
+dd 02c34637ch
+dd 071f04060h
+dd 06bfa07e1h
+dd 0d08ccb1ch
+dd 0b2b1b1ebh
+dd 0c88a006bh
+dd 0ef9cbe0dh
+dd 05736da87h
+dd 07c443cfeh
+dd 0030aea25h
+dd 055396c4bh
+dd 02ec36360h
+dd 00afc692eh
+dd 040a1ce54h
+dd 069d77932h
+dd 097d14df0h
+dd 00231f7e8h
+dd 0c09761c9h
+dd 01f021037h
+dd 0702047cdh
+dd 0324c7fc5h
+dd 0203347bfh
+dd 05065cae2h
+dd 0630764efh
+dd 0a966e11ch
+dd 0d0a0c0a8h
+dd 091b99433h
+dd 01dc7735eh
+dd 0d3f50589h
+dd 0bdf62a3ah
+dd 032c300a7h
+dd 081ebe514h
+dd 05fa19862h
+dd 0cf3b4cf1h
+dd 043f930c3h
+dd 074607430h
+dd 0247635e3h
+dd 0f18e713dh
+dd 09da85f75h
+dd 03869b064h
+dd 0e86b93deh
+dd 0ab01a1c4h
+dd 0ed216cfah
+dd 0cfe247a4h
+dd 041d60ebah
+dd 0eef58d1fh
+dd 0e9be5414h
+dd 0bb581103h
+dd 0236bfdb6h
+dd 00cb712d7h
+dd 02ce7c40eh
+dd 079679d26h
+dd 0cd7ea721h
+dd 09bd78a8ah
+dd 04d08c430h
+dd 06b6d505ch
+dd 01459fa0ah
+dd 061943e6ah
+dd 0f462654fh
+dd 0784a51e4h
+dd 068fb3139h
+dd 06e232fc8h
+dd 0ab1001f1h
+dd 08c55ac52h
+dd 0171bb473h
+dd 023f16eafh
+dd 08f3662f8h
+dd 0b674ca10h
+dd 0bb78cb1fh
+dd 086c90e3ah
+dd 0427cc24dh
+dd 09c6a9268h
+dd 07cf4516ch
+dd 0edec923bh
+dd 040d985bfh
+dd 0b2ec6963h
+dd 0874b939ah
+dd 038a52d44h
+dd 0a3920a9ah
+dd 0eb746038h
+dd 0e89996e7h
+dd 06e751f24h
+dd 0293add56h
+dd 05a38dbd2h
+dd 08ce43148h
+dd 0c516c7d3h
+dd 0079f2162h
+dd 019c4e1d0h
+dd 0b5922578h
+dd 0b02078ceh
+dd 047ff52f4h
+dd 0719988f3h
+dd 042049a1eh
+dd 0c8827531h
+dd 017cb3c78h
+dd 072547863h
+dd 00aa0d117h
+dd 0327beac8h
+dd 011ed1dcah
+dd 08fe96797h
+dd 06f97e483h
+dd 0bbd84981h
+dd 04b4d019bh
+dd 0aad49d48h
+dd 08f4b5c95h
+dd 072fe96c2h
+dd 037facf2ch
+dd 062536b64h
+dd 02a61d6cfh
+dd 01bb959feh
+dd 0bb13521eh
+dd 0e06297b3h
+dd 0e64a478eh
+dd 02b614f40h
+dd 0feecf4cah
+dd 02a378268h
+dd 0ee24af58h
+dd 055dcb052h
+dd 05d3f5646h
+dd 081ce05cah
+dd 063c29520h
+dd 068acb5b2h
+dd 0d61bf7ffh
+dd 094fce44ah
+dd 0d59fba18h
+dd 0c7d3b8b8h
+dd 0710de0b8h
+dd 093400f75h
+dd 0d5388268h
+dd 01ab9970ah
+dd 0106c14c8h
+dd 0b22708dch
+dd 0b7202781h
+dd 0dde44e43h
+dd 0b5f3f621h
+dd 03b5b42f6h
+dd 0bf6ad1cbh
+dd 0cac099eeh
+dd 009f25cfdh
+dd 0bd348eceh
+dd 0521ec7a9h
+dd 01bbac833h
+dd 0d11f27e0h
+dd 0149f2863h
+dd 02d5cb784h
+dd 000d54b41h
+dd 0ab71edb5h
+dd 07f4ce2dah
+dd 0bfc5f822h
+dd 08e0f7332h
+dd 075387d4dh
+dd 0e4a8a949h
+dd 029af1541h
+dd 01dcefff0h
+dd 00f744131h
+dd 06d9af52fh
+dd 094526c10h
+dd 002ec3f61h
+dd 0b42a1f52h
+dd 0c0c262b8h
+dd 051ab7337h
+dd 0fa7ad9c1h
+dd 087a31232h
+dd 05fbeecd2h
+dd 0a8b3c175h
+dd 0fad37836h
+dd 01b9e19ddh
+dd 052bd96abh
+dd 0aac90f0eh
+dd 0441c8ef0h
+dd 0943b5b21h
+dd 0335b43c4h
+dd 0ba70fe3eh
+dd 06a344f73h
+dd 0d1038667h
+dd 0beb27cbfh
+dd 05c61444bh
+dd 02eb53fc6h
+dd 025e9f05dh
+dd 08f1e67adh
+dd 07355b424h
+dd 06c76cce3h
+dd 0e77acbf1h
+dd 0db4da0b4h
+dd 027daa957h
+dd 057cbd53fh
+dd 0d807f8cdh
+dd 0631274e7h
+dd 0fba7060fh
+dd 0d44b5856h
+dd 04d8bcbbch
+dd 0eff24ea1h
+dd 0350f80f1h
+dd 09c5397ech
+dd 0d8ae35f3h
+dd 0ed71e05ah
+dd 0cd57fcbah
+dd 0dae06132h
+dd 03a5d5dddh
+dd 0ef602801h
+dd 09ecde564h
+dd 03a2213a9h
+dd 0a0331916h
+dd 0d5819f48h
+dd 07559e9c1h
+dd 05e639a6fh
+dd 0176bda40h
+dd 06987f764h
+dd 0bbbbe43eh
+dd 0de6e722ch
+dd 0b3b771ech
+dd 02edfdee0h
+dd 08b664380h
+dd 075c2f7b3h
+dd 05487344dh
+dd 05ffc7d17h
+dd 099481561h
+dd 02e448b9ah
+dd 040535829h
+dd 0f32c6b8dh
+dd 066dc408bh
+dd 0b5c93e0fh
+dd 071bebc5dh
+dd 0c5be4942h
+dd 07fbe1debh
+dd 0d2ac656dh
+dd 0b5855599h
+dd 094d03e67h
+dd 0115e1624h
+dd 05899fb41h
+dd 0a0846086h
+dd 086bb1221h
+dd 03b83c628h
+dd 0679d004dh
+dd 06202a059h
+dd 0a7a4e53bh
+dd 09cf49e3eh
+dd 085424364h
+dd 089babd3dh
+dd 0fe464f73h
+dd 02fc1cb20h
+dd 0e83e42f2h
+dd 0163bd372h
+dd 0bba02330h
+dd 014732df4h
+dd 036f838d3h
+dd 047c6f8f3h
+dd 056f098bch
+dd 0bb41cbb3h
+dd 0cc914a7ch
+dd 0b9ff7debh
+dd 0411ee306h
+dd 0227743a2h
+dd 09e2ef004h
+dd 0c1347030h
+dd 04a9a4ce5h
+dd 054dcd14dh
+dd 0a12a595eh
+dd 07809a185h
+dd 011a226d0h
+dd 0daa86129h
+dd 05d6fa112h
+dd 09349387ah
+dd 0edd26335h
+dd 070908362h
+dd 057a1d0e8h
+dd 01bb6497bh
+dd 00fcf2d99h
+dd 0fc9eda9bh
+dd 092fdd553h
+dd 0d3c8a0d8h
+dd 03118d6b6h
+dd 088e5c037h
+dd 02fb85c28h
+dd 0af4b7950h
+dd 0526791dfh
+dd 08491acf7h
+dd 07426c8d0h
+dd 0088e6fd8h
+dd 0f6be57f9h
+dd 022cd82c9h
+dd 0ed25a416h
+dd 055ae5752h
+dd 05c295448h
+dd 02b18fac6h
+dd 08a63c922h
+dd 0585c8b01h
+dd 063fa76b9h
+dd 07c4103c6h
+dd 0cb20424eh
+dd 0da688b73h
+dd 0c4affcdfh
+dd 025a480f1h
+dd 04b92132ah
+dd 0cba5491eh
+dd 0c569cd21h
+dd 0bb2ba96ch
+dd 00c7aeb47h
+dd 06122be7ah
+dd 0b9b70824h
+dd 0285525feh
+dd 09c125d1fh
+dd 01c852652h
+dd 0c7f6fc2eh
+dd 05608fd6ah
+dd 0b8e227bdh
+dd 06a57961ch
+dd 061affccbh
+dd 0a1e9121ch
+dd 0ab4b55c3h
+dd 06d79e99bh
+dd 0302691ebh
+dd 00a186c32h
+dd 0f56f5d91h
+dd 0f892e1f1h
+dd 0749447e8h
+dd 0fa6c2bb4h
+dd 0686b022ah
+dd 047798070h
+dd 002e25ed7h
+dd 0fcd2f522h
+dd 05c31efd6h
+dd 0b874e4f6h
+dd 0ab63723eh
+dd 05951e220h
+dd 0a4fe2fa8h
+dd 0cbe780feh
+dd 0d27a03edh
+dd 00995d78eh
+dd 0a920e262h
+dd 0bc0d46e7h
+dd 0e33d6dafh
+dd 02e2b0efah
+dd 0b132c6f2h
+dd 0c80f9e92h
+dd 0ff9431a0h
+dd 027b0d255h
+dd 0c001248bh
+dd 02333e0eah
+dd 0e12bec5ah
+dd 0e5cbf5b1h
+dd 0efb08effh
+dd 0c0ecbe20h
+dd 03b615c2ah
+dd 0f682945ch
+dd 08be9340fh
+dd 0b1383004h
+dd 001fc5f7bh
+dd 00f6ac117h
+dd 046010f4eh
+dd 070dfc3f0h
+dd 0bdaf822ah
+dd 078177d8dh
+dd 0a33488dah
+dd 006998858h
+dd 083ef3752h
+dd 016e9adf2h
+dd 0b7831177h
+dd 09be08845h
+dd 05c58ce84h
+dd 054bf88fbh
+dd 04926e26fh
+dd 006fa0f70h
+dd 09f9ee007h
+dd 08b57d1cah
+dd 0251d647ah
+dd 05eb59397h
+dd 0cc8cb80ch
+dd 0262283bdh
+dd 05c56f058h
+dd 098215446h
+dd 069024136h
+dd 01b2884c5h
+dd 02ff02326h
+dd 04eb5effch
+dd 0194ed5e1h
+dd 03a1ef010h
+dd 043d992cfh
+dd 0348c6c70h
+dd 01160ad66h
+dd 0f61495feh
+dd 0550e5e49h
+dd 0c40bb8f3h
+dd 0599a608fh
+dd 0f1b5c27bh
+dd 0b95fcc89h
+dd 0da5d619ah
+dd 02abea9cah
+dd 088982e3eh
+dd 0d9159a55h
+dd 0737b3a96h
+dd 098a759dch
+dd 0bf2c18a6h
+dd 0a709362bh
+dd 0b110f926h
+dd 00d305affh
+dd 01a07f8aeh
+dd 0ffcfb400h
+dd 0896c072ch
+dd 09659dceeh
+dd 07e2ff9fah
+dd 012293ddeh
+dd 006822d12h
+dd 029829d7ch
+dd 02b703334h
+dd 074f12798h
+dd 0c7db7093h
+dd 051e7dc48h
+dd 0de5c8a11h
+dd 009b092bch
+dd 0fcfbe49fh
+dd 07fee3da6h
+dd 0db8850ebh
+dd 009641a3dh
+dd 0dd03a4d0h
+dd 0f15d0857h
+dd 0f6e3d792h
+dd 08022dfbeh
+dd 00902e201h
+dd 06ea23fc9h
+dd 0f7d9f7a5h
+dd 06d9ba167h
+dd 0a627394ah
+dd 0747bd121h
+dd 02cbcf6a7h
+dd 0d1eefb87h
+dd 0a027803fh
+dd 0fc685aa0h
+dd 0044c0c25h
+dd 0c47d8243h
+dd 0552046bbh
+dd 059c2d28eh
+dd 07ed2f052h
+dd 086e891bah
+dd 05b6e4d6ch
+dd 00f5b2d4ch
+dd 0d070570ch
+dd 0457958f2h
+dd 0718d04dch
+dd 03bb84e2bh
+dd 00634e270h
+dd 0f4b19e30h
+dd 0b7ec9a1ah
+dd 02ecb99d0h
+dd 0aad119f1h
+dd 03808de2eh
+dd 035268824h
+dd 094ebc51dh
+dd 093094eceh
+dd 00f52fffch
+dd 0f025816ah
+dd 0072dfb11h
+dd 0fa1823bbh
+dd 026c1cd67h
+dd 032591caeh
+dd 070e08d38h
+dd 0cbcd7850h
+dd 004b485c2h
+dd 064d1dfcbh
+dd 04590f4e2h
+dd 08b27f342h
+dd 05a2f3fc7h
+dd 028620d00h
+dd 0004dddf0h
+dd 0f82ea728h
+dd 0852be6f3h
+dd 0e28cf42ch
+dd 0229b0d84h
+dd 00f2e0f15h
+dd 094a07a74h
+dd 0ee3879c9h
+dd 01a245a46h
+dd 0ff40ec21h
+dd 05d3971c7h
+dd 054d9c5e3h
+dd 028eff0eeh
+dd 0ee0ed25bh
+dd 0097d14f9h
+dd 09cff9ccah
+dd 03f7085f1h
+dd 0c733db46h
+dd 0010192a9h
+dd 07a2c6680h
+dd 043fc88bbh
+dd 011e169e1h
+dd 05c4a7d0dh
+dd 0f7a33d39h
+dd 048121958h
+dd 09d8dd7ffh
+dd 04188a6cch
+dd 0afe39deah
+dd 0f3a776ebh
+dd 0795fa4b1h
+dd 0bac45acbh
+dd 06f9e3c6eh
+dd 033961718h
+dd 00f0b9d60h
+dd 06b8d4aabh
+dd 06c3e18cdh
+dd 074f785efh
+dd 00eba4828h
+dd 01e429e3bh
+dd 01cc1bcc6h
+dd 05b9e2924h
+dd 0cc4dd52fh
+dd 0d77d3d4ah
+dd 00d20f598h
+dd 0a18fde8eh
+dd 038c539c9h
+dd 0719d4e0ch
+dd 01cdd5725h
+dd 09d11cc5fh
+dd 048db7300h
+dd 0f585d0a8h
+dd 085bc65c1h
+dd 022802d14h
+dd 062d0a6ebh
+dd 09a075dbbh
+dd 032bd8756h
+dd 04dce5394h
+dd 047db8d9ah
+dd 0da73dc7ch
+dd 049c22498h
+dd 08263844ch
+dd 0bad7ab3eh
+dd 0d0ddaf61h
+dd 00eb4d697h
+dd 0356aac41h
+dd 08952582eh
+dd 058d12607h
+dd 0a3f0e5f8h
+dd 0ee8e50b6h
+dd 0a875676ch
+dd 032dd16cbh
+dd 0bf45ce1bh
+dd 01731739fh
+dd 0704bbaffh
+dd 0b8634f18h
+dd 0e0a09347h
+dd 009ef8e41h
+dd 01129a228h
+dd 066f7434ch
+dd 09bd83563h
+dd 0c29667deh
+dd 070906c07h
+dd 0fbc15e21h
+dd 0a3cf20e0h
+dd 006042a1dh
+dd 03058aca9h
+dd 03c88c5e5h
+dd 065558cb8h
+dd 0a8bdc521h
+dd 0ea46ccbdh
+dd 00df194c9h
+dd 0af13a7b3h
+dd 09248f0ebh
+dd 0f38eceb7h
+dd 0068dc52ch
+dd 02b96dc12h
+dd 03ac575f0h
+dd 09c464b18h
+dd 07d7a6f4bh
+dd 0c8fbcddfh
+dd 066cf5c81h
+dd 0786799e1h
+dd 0e2de22cbh
+dd 0850f894bh
+dd 08428f3aah
+dd 09b02ff0dh
+dd 0b30e83b7h
+dd 09282d1d8h
+dd 00fd35814h
+dd 009c93275h
+dd 00bfa610eh
+dd 01f533a31h
+dd 0b46dca69h
+dd 09f12b02bh
+dd 03a9a59b7h
+dd 033a5db80h
+dd 03c686c4ah
+dd 04f1aa1fdh
+dd 0e64e8a79h
+dd 05a981864h
+dd 0ae1a908dh
+dd 09f3b1c63h
+dd 0d270f243h
+dd 069210501h
+dd 094806e04h
+dd 026bdf4a4h
+dd 00d4c3cb5h
+dd 00d93ed4ah
+dd 04d7c1b54h
+dd 029c126a1h
+dd 0b4e8db46h
+dd 00b3f8242h
+dd 0a9bd97e2h
+dd 0b25cabcch
+dd 0a46dac30h
+dd 05f0a614ah
+dd 070fc2171h
+dd 0b68da730h
+dd 022afcce0h
+dd 07221a7aah
+dd 02e53185ah
+dd 0c37e99adh
+dd 07883b677h
+dd 04b00c6f3h
+dd 0419198fdh
+dd 07ede89f1h
+dd 076076922h
+dd 0cfa3540bh
+dd 032863046h
+dd 05933c084h
+dd 0f999653eh
+dd 0c3a42824h
+dd 0161e7adah
+dd 03b89efe0h
+dd 050a6b1bah
+dd 00ddbf410h
+dd 0ec8ac903h
+dd 0578862afh
+dd 0c8cd060bh
+dd 03f15097ah
+dd 0f4cbfad2h
+dd 0a636b77dh
+dd 090cd673ah
+dd 06f232213h
+dd 0669de80fh
+dd 0070d5c37h
+dd 05740c278h
+dd 06f5ee0f5h
+dd 0191db8c0h
+dd 0bbd1ecd6h
+dd 00e8208ddh
+dd 0fdc2f76ch
+dd 0a0e88ee4h
+dd 0546ae861h
+dd 0d138571ah
+dd 073e60149h
+dd 083252f27h
+dd 02ce58a93h
+dd 0773ec09ah
+dd 009b9bb53h
+dd 0d30e7d3ch
+dd 0d761230ch
+dd 0dca11a74h
+dd 07c08f1ceh
+dd 052b515b2h
+dd 06d2dad61h
+dd 0b925ed16h
+dd 0c690d182h
+dd 08fef5349h
+dd 06b3fa61bh
+dd 046ec3628h
+dd 094defdc9h
+dd 088f1af9bh
+dd 062e30c73h
+dd 03bbd7170h
+dd 0c2c04891h
+dd 0698a326dh
+dd 086898266h
+dd 0aa8a5ac0h
+dd 0eac1990dh
+dd 07a2280e0h
+dd 0bac3c6a6h
+dd 001c4e037h
+dd 0a6b9bb9bh
+dd 046424d30h
+dd 01aa57a77h
+dd 0c7e95621h
+dd 008d1e4deh
+dd 0bc237a33h
+dd 0ddbdab67h
+dd 0910afb33h
+dd 0298b11e7h
+dd 0aebe8fc1h
+dd 067e6445fh
+dd 0e4400d71h
+dd 0c52e0fdah
+dd 09cc41f8fh
+dd 0b474ba5bh
+dd 0f2d66178h
+dd 0468ac5d9h
+dd 0fd87ee6bh
+dd 0530f74c6h
+dd 003593e29h
+dd 0eb5ecf6dh
+dd 0bd2a06d9h
+dd 0e4abced6h
+dd 008579512h
+dd 03d9cb79ch
+dd 0cdb47e7eh
+dd 07cdcf397h
+dd 0a11998c0h
+dd 04062660bh
+dd 0d7f55369h
+dd 0c5bb0c33h
+dd 00f8061f4h
+dd 07154f20eh
+dd 0e5601ed9h
+dd 03b774e9eh
+dd 0cd060bc6h
+dd 0b2ec62b3h
+dd 09ff54646h
+dd 08a9052b7h
+dd 085ab72d5h
+dd 04b3e8a38h
+dd 050d9a7d6h
+dd 023d6d7bbh
+dd 04adb593dh
+dd 03bac945bh
+dd 053dca97dh
+dd 0bc5ff0ddh
+dd 0351526c5h
+dd 01f4a3461h
+dd 03aab40d9h
+dd 0c897f7b0h
+dd 07f0a7a55h
+dd 0f13fe080h
+dd 0c559f784h
+dd 0cd8ca2b9h
+dd 0717b6eadh
+dd 05851601dh
+dd 0263089fch
+dd 0bfa5488ch
+dd 0ff208467h
+dd 0d951a85ah
+dd 075a2f72ch
+dd 0f1f35802h
+dd 0bf66b3cdh
+dd 055fb95b2h
+dd 09d90d41fh
+dd 02ead9831h
+dd 0e88d2c33h
+dd 0b395ed80h
+dd 0b6075a91h
+dd 0e8b1849bh
+dd 071d7b2fbh
+dd 069eee3e1h
+dd 068fab928h
+dd 0432c2567h
+dd 01a1722f2h
+dd 02f623e6ah
+dd 066397c4eh
+dd 0c648cde8h
+dd 0abce89dch
+dd 0b81000deh
+dd 0ebfbc4f2h
+dd 0f2f1a069h
+dd 04fdede5dh
+dd 08fc7c67ch
+dd 057204f9fh
+dd 067520dbch
+dd 0b8863642h
+dd 07f61fd57h
+dd 043b34099h
+dd 05a136d31h
+dd 00db83e1dh
+dd 03c14b706h
+dd 0620e87a4h
+dd 099c4737fh
+dd 053447cbah
+dd 0cc600517h
+dd 0c69623f8h
+dd 07984fa3ah
+dd 06a68b144h
+dd 0415be985h
+dd 0fb270658h
+dd 043cbf4a9h
+dd 091de8e13h
+dd 09cab2c1bh
+dd 0ebcec047h
+dd 00a6fa324h
+dd 0893aaaa9h
+dd 0abe43dbah
+dd 0041a9508h
+dd 096998dddh
+dd 093654dfdh
+dd 04bfe8020h
+dd 007f7d869h
+dd 0f3358f2dh
+dd 0243b031bh
+dd 08c96142fh
+dd 0d633c74dh
+dd 08b60fbf1h
+dd 0dd06cbfeh
+dd 030258cafh
+dd 0936fa5d4h
+dd 0935514c6h
+dd 00c5c5e7bh
+dd 09f51836eh
+dd 0a20ea6a5h
+dd 0b0d12480h
+dd 0dadad67bh
+dd 07917484bh
+dd 0a3c1a25dh
+dd 01580f0c5h
+dd 0e1d97808h
+dd 082dfc462h
+dd 0611f1c93h
+dd 086354a42h
+dd 068585a2dh
+dd 0ae4c2e76h
+dd 018039b20h
+dd 0f5fd9a35h
+dd 0ef7196b2h
+dd 071c88bc5h
+dd 06b58e023h
+dd 04cb2378ah
+dd 037f18fbfh
+dd 0427b120ch
+dd 0358c9c0bh
+dd 0a1c461e1h
+dd 09287a43bh
+dd 08f2b5f2eh
+dd 072b59ff0h
+dd 0f5495314h
+dd 0bde0e305h
+dd 07191a598h
+dd 0b0caaf18h
+dd 04b4feabah
+dd 073ee7146h
+dd 069b179deh
+dd 0df2240e1h
+dd 04da693c4h
+dd 058fbbe03h
+dd 069ff058ah
+dd 06e99c754h
+dd 0b5a3cd48h
+dd 0dc7f2088h
+dd 029e36107h
+dd 04083acd9h
+dd 0410404ach
+dd 0b6741f14h
+dd 083753b9bh
+dd 03eaca089h
+dd 00a56b07ch
+dd 0290ad7fah
+dd 0b8610112h
+dd 0bca3690bh
+dd 04afb1a2eh
+dd 0d447119ah
+dd 0de10bb8ch
+dd 035c5e0d5h
+dd 031ba010bh
+dd 0019c380eh
+dd 0aa4da5deh
+dd 00bf3ad95h
+dd 0bb9335ffh
+dd 05660ecabh
+dd 02376a054h
+dd 0a6d6a11ah
+dd 06eb61009h
+dd 00db20d2bh
+dd 0cd48420dh
+dd 0f058d8d4h
+dd 03747f56ah
+dd 0a3d3e354h
+dd 0040e6a45h
+dd 0d1f453bbh
+dd 0f736e713h
+dd 01859f5bdh
+dd 021bc6032h
+dd 021a638a5h
+dd 0c055ffc2h
+dd 07ba29a11h
+dd 0fec2cbcdh
+dd 0c67b9b52h
+dd 06fcf9fabh
+dd 0ccfee866h
+dd 02777be96h
+dd 026fc2e7fh
+dd 012fc38d6h
+dd 04ee4b7e3h
+dd 091b70d7fh
+dd 0755cecb1h
+dd 0a2a8a43eh
+dd 04b9bc698h
+dd 063c27464h
+dd 09733c27bh
+dd 057192a74h
+dd 0538ad436h
+dd 0d56fc0a6h
+dd 0c70540d2h
+dd 0b56ebb86h
+dd 0a4dc3dd0h
+dd 0bf543a86h
+dd 03602ee03h
+dd 00bca2097h
+dd 0a0cb252eh
+dd 0932a87bdh
+dd 00c075003h
+dd 0b87041b5h
+dd 084a121beh
+dd 0b840f2e8h
+dd 0a5345a78h
+dd 058dd1609h
+dd 05da32b5ch
+dd 0617bd29bh
+dd 05d3ffccah
+dd 069935cf7h
+dd 0e15ee8c7h
+dd 03069d8ddh
+dd 064f09d5ah
+dd 02c8ccf6dh
+dd 02a0e582dh
+dd 030a16945h
+dd 0135fca94h
+dd 0259901a9h
+dd 0f4e6234ch
+dd 0312b417ch
+dd 061f69378h
+dd 040f45530h
+dd 090e093fdh
+dd 08276d69dh
+dd 0d5c95e7ah
+dd 05a1c6d1ch
+dd 08d59d564h
+dd 04eac3dcfh
+dd 01c34b252h
+dd 06debf86ah
+dd 04131930ch
+dd 0313c74f4h
+dd 0049f3541h
+dd 0565b320ch
+dd 013dda087h
+dd 01b39e9dah
+dd 0cbfa24f2h
+dd 0f63d55beh
+dd 0137a4187h
+dd 0a16ab3bch
+dd 030ccbea8h
+dd 062f04498h
+dd 0b2b53f43h
+dd 08ba82266h
+dd 086d3fc8bh
+dd 0d716b7d0h
+dd 064a3d86eh
+dd 014ffc4eah
+dd 02d44ff0eh
+dd 00eb0ba27h
+dd 0be17b3c8h
+dd 033ddcd3eh
+dd 0c3a40521h
+dd 00e359a90h
+dd 00d4a0a68h
+dd 0b762a9aeh
+dd 0bf518da0h
+dd 09df49aefh
+dd 06bdde85ah
+dd 03635f2a9h
+dd 076278b6ah
+dd 0c5aa7bb4h
+dd 09ac65750h
+dd 073d2ce97h
+dd 0919dd324h
+dd 04610e8c4h
+dd 088d8246ah
+dd 06577da23h
+dd 05b73c5a8h
+dd 091189ea1h
+dd 0837bdc1fh
+dd 0763fb398h
+dd 03d9406abh
+dd 0a1586dcch
+dd 0e4425e51h
+dd 038ca1cb0h
+dd 0595996cfh
+dd 020f0dbbah
+dd 0f113388fh
+dd 09237c11fh
+dd 004c134bah
+dd 0f9abd809h
+dd 0e4d074dfh
+dd 00342201ch
+dd 0a0b8ec6ah
+dd 09f4e02c8h
+dd 03381ec97h
+dd 049457667h
+dd 0c625ad6dh
+dd 02decfe1ah
+dd 01ee675b6h
+dd 0211a85d7h
+dd 0a3761b3ah
+dd 07b58c72ah
+dd 08b23b812h
+dd 03673a254h
+dd 0ca1e50b4h
+dd 015e71891h
+dd 069598bc3h
+dd 0154cb21bh
+dd 0b4eb16fbh
+dd 0e120091dh
+dd 0f02fe75eh
+dd 0dc722319h
+dd 038216f7ch
+dd 0bd236314h
+dd 0dff1eb0eh
+dd 07d2cf91dh
+dd 0f4ad4253h
+dd 09e8d2e9ah
+dd 0abd77160h
+dd 0c6a1824ah
+dd 022d26c01h
+dd 044312af4h
+dd 0c98c2564h
+dd 02d272e8bh
+dd 04fd73aabh
+dd 032059dc0h
+dd 002541306h
+dd 0f9b279f7h
+dd 0abd940a1h
+dd 03c973545h
+dd 043e8ce5ah
+dd 0995c9df0h
+dd 092092096h
+dd 04c13245bh
+dd 0aed91c21h
+dd 04709fb00h
+dd 0d38cb831h
+dd 08992e3c3h
+dd 0edc7df6eh
+dd 0fa9dd550h
+dd 0763fc1edh
+dd 06af4611ch
+dd 09dce6f51h
+dd 004d91cadh
+dd 0509a6bc4h
+dd 09a4bb9f6h
+dd 0eb845efeh
+dd 00d1d0dc9h
+dd 02be10cf5h
+dd 046e87e56h
+dd 0061bafb8h
+dd 0e90fa7dfh
+dd 03924b85dh
+dd 0b4ff5ac6h
+dd 0110ed8d4h
+dd 0f0206289h
+dd 064359f3dh
+dd 0add328cah
+dd 05aaa3121h
+dd 0b10183c2h
+dd 0f229ee3fh
+dd 076e1482ch
+dd 0e0dbce4fh
+dd 09f354a65h
+dd 0b6a0c0a5h
+dd 0c5ee378bh
+dd 09f4aa9e5h
+dd 01cda6a6eh
+dd 017204d98h
+dd 09cbcd24dh
+dd 062fc7a61h
+dd 01ae2fc26h
+dd 050067874h
+dd 068e3f141h
+dd 053b70bebh
+dd 022bfa822h
+dd 0896ec957h
+dd 0c9d43b98h
+dd 051f78c26h
+dd 073595fdah
+dd 00e44f5e0h
+dd 07159d68ah
+dd 01276d76bh
+dd 0aeb83701h
+dd 08ac3b9f9h
+dd 0f89de5d4h
+dd 0ef5e16ebh
+dd 04771bea7h
+dd 081b79ee5h
+dd 0f55b3e32h
+dd 0d9554394h
+dd 0cac09bb7h
+dd 0befb4bb6h
+dd 0be662f8ch
+dd 0f37238cch
+dd 0e0a6b0dch
+dd 026017084h
+dd 0d11a5172h
+dd 02386d90ah
+dd 019aea1bdh
+dd 006f6960ch
+dd 03946ce26h
+dd 018160c72h
+dd 0bc8ef0ffh
+dd 05d99ccach
+dd 0bd41be81h
+dd 0c4da44bbh
+dd 015fc9503h
+dd 065183a61h
+dd 0ab5fe007h
+dd 0504c2f59h
+dd 0b280c031h
+dd 0aea32c14h
+dd 07d68f010h
+dd 073780464h
+dd 06d26e61fh
+dd 0fbde01dch
+dd 00b8a0d80h
+dd 0efe6bab6h
+dd 0698811cbh
+dd 0ae93af38h
+dd 008c78c21h
+dd 0b7aac7b6h
+dd 0aefbc88dh
+dd 0e7d8b28ch
+dd 00bc39b4fh
+dd 0caaa539fh
+dd 06837f31ah
+dd 07ddb859ah
+dd 08aa391e4h
+dd 060bddf22h
+dd 06500cb9fh
+dd 0734fe669h
+dd 0031a792fh
+dd 0180d2f9ah
+dd 05b49662ah
+dd 0f6f51d3ch
+dd 0e1f2638eh
+dd 0a3ec4eceh
+dd 047b12bcdh
+dd 02c292c05h
+dd 06f884c69h
+dd 0df51ec7dh
+dd 0d428b06dh
+dd 02ac4bcbch
+dd 06192e8f0h
+dd 013c25b0fh
+dd 0864c67c1h
+dd 05306261bh
+dd 04747c5cbh
+dd 0f6da9e6eh
+dd 0f63c0da6h
+dd 0d900cd6fh
+dd 01fc29490h
+dd 003872cc1h
+dd 0f5147539h
+dd 085fe6264h
+dd 04d9203a7h
+dd 02f5894d3h
+dd 0d4c11c97h
+dd 0be04995ah
+dd 00c766c8ah
+dd 05ff435f8h
+dd 0b1bf3049h
+dd 0d82fd196h
+dd 04b2b049bh
+dd 0eb788593h
+dd 0fffd5a33h
+dd 0d8ed1731h
+dd 00434569ch
+dd 06af60c09h
+dd 06128b694h
+dd 02ddd304ch
+dd 00f292657h
+dd 0c51e1b39h
+dd 099d7523ch
+dd 02be48a31h
+dd 06b4845b6h
+dd 0fb184a73h
+dd 017c12b57h
+dd 03b489b9dh
+dd 00cc581fdh
+dd 0f6028bc1h
+dd 0f1c982a7h
+dd 0c03296b1h
+dd 0f4a6bdf2h
+dd 0583c8acfh
+dd 09e725a3bh
+dd 0bc152427h
+dd 084e9029ch
+dd 0d0f13b5dh
+dd 08c69b6eeh
+dd 04e1dba83h
+dd 09d7cb39eh
+dd 0968b0854h
+dd 0b73ccb08h
+dd 08abb91fbh
+dd 0bf43e4a4h
+dd 0c3b1d2e8h
+dd 0e61bb709h
+dd 0b46ec17bh
+dd 03c05404bh
+dd 04cb0b678h
+dd 0892237b5h
+dd 0fe0943d3h
+dd 0985c0279h
+dd 0dad2a1abh
+dd 045874414h
+dd 05f1e9cf7h
+dd 05b9533c0h
+dd 05ce68c9ah
+dd 0bee5ba1bh
+dd 0cc959f2bh
+dd 09847cd4bh
+dd 08ea7bb11h
+dd 0fc28c6f1h
+dd 0268e8670h
+dd 0cdea61f6h
+dd 06f286461h
+dd 0b82230a8h
+dd 07d16eeb4h
+dd 077d2f817h
+dd 00bb7a988h
+dd 07f6a9d81h
+dd 0e734b3f1h
+dd 0d22c449ah
+dd 04d4e6b6bh
+dd 026fb2455h
+dd 0fa7df19fh
+dd 035323317h
+dd 08251fd51h
+dd 0eae4da3ah
+dd 04c1b3221h
+dd 02a8796a7h
+dd 06c5470bbh
+dd 04965db49h
+dd 0322c55e1h
+dd 0f58b6777h
+dd 065670f59h
+dd 039e91811h
+dd 048d800a5h
+dd 0e70e4a9fh
+dd 0c7e5091eh
+dd 035011f39h
+dd 0ec5790dbh
+dd 08a7a4d87h
+dd 07586e70dh
+dd 04af5f37eh
+dd 0ca994696h
+dd 042874dbah
+dd 065675ea4h
+dd 078124345h
+dd 0959adfb3h
+dd 03873f6cah
+dd 0bd324ef6h
+dd 00f2ff6c8h
+dd 0394ca326h
+dd 0640e6e4fh
+dd 0b84210f8h
+dd 067d90b2ch
+dd 085efccf2h
+dd 0a62adf36h
+dd 0e31d3d57h
+dd 0517a390fh
+dd 0e7678e59h
+dd 0c5c9df88h
+dd 081be2ba4h
+dd 036f6365fh
+dd 0399d0b32h
+dd 0c57e3d24h
+dd 06600a54ch
+dd 01aecf572h
+dd 036ffa33bh
+dd 03f1dd6dah
+dd 023b9a2f4h
+dd 0b2ca3057h
+dd 003923ad6h
+dd 01a9082a3h
+dd 0894b8d6ch
+dd 0b46c3372h
+dd 00073dfcah
+dd 03010e653h
+dd 07621a309h
+dd 0efc46bf3h
+dd 070874e30h
+dd 08cc98f7eh
+dd 094ef0996h
+dd 0ee65c9b3h
+dd 05f446908h
+dd 0e82399cdh
+dd 03bc3ea7ah
+dd 02ebf01d4h
+dd 0784dda7dh
+dd 0f4a32b94h
+dd 08eeae543h
+dd 01c18207ah
+dd 04330f98ch
+dd 0ce285364h
+dd 0acfc42aeh
+dd 017bf33dah
+dd 0a3786284h
+dd 0b4c92501h
+dd 03befca62h
+dd 0f2d95ce5h
+dd 0c7cd4070h
+dd 02b903146h
+dd 0dfaa38d2h
+dd 0c9a4da86h
+dd 07a9afaa4h
+dd 00227d8a3h
+dd 0831ce2d2h
+dd 0162aef0ch
+dd 06edd844ah
+dd 0c122eb56h
+dd 00553bfbah
+dd 041d5e761h
+dd 016728594h
+dd 0e584e060h
+dd 0f1a06200h
+dd 0dddc5e1fh
+dd 00b9b3403h
+dd 0301f5d49h
+dd 0f40bd4dfh
+dd 07d1fd739h
+dd 03fb25bf8h
+dd 05baf35edh
+dd 076a3f5ddh
+dd 000fc8175h
+dd 036a16b5eh
+dd 0fda9a204h
+dd 036b61446h
+dd 0cf2faff0h
+dd 02614d538h
+dd 0383e82a2h
+dd 06c5c871bh
+dd 033f82157h
+dd 0e421ed9eh
+dd 0a510b2dch
+dd 0207c4bbbh
+dd 01b566259h
+dd 04026e2f3h
+dd 0d7eec8d9h
+dd 0cea1890fh
+dd 0333458f5h
+dd 0a02bb939h
+dd 07a32358fh
+dd 056e6c166h
+dd 004956b63h
+dd 0cdf4c66fh
+dd 024c0f444h
+dd 04ba2fccch
+dd 020db1151h
+dd 01292c376h
+dd 06f85e9dfh
+dd 0728f47a9h
+dd 0a1fc70eeh
+dd 038f4fab5h
+dd 07631904ah
+dd 0b6fe3c2eh
+dd 08a372287h
+dd 042266e1fh
+dd 082d635cbh
+dd 019f4e852h
+dd 0f3532d8ah
+dd 0d9f53e41h
+dd 085f490e6h
+dd 0e45309d3h
+dd 0619c3f1eh
+dd 048385ca4h
+dd 02a41735fh
+dd 0c7b61ffah
+dd 04a08af3ch
+dd 0f9ded1dch
+dd 0eac71dc7h
+dd 0625cc945h
+dd 01525969ch
+dd 0900aa166h
+dd 0bf58ef15h
+dd 00aa5a792h
+dd 0d8288e32h
+dd 0b1d9eb84h
+dd 051776b19h
+dd 0d0603e1ch
+dd 0a00856e5h
+dd 0ac061e93h
+dd 07e5b90d9h
+dd 0e80a996dh
+dd 03c147d53h
+dd 0f56afa5bh
+dd 0f7cc6917h
+dd 06281c4d0h
+dd 03685dd8eh
+dd 04564c52ah
+dd 09f296072h
+dd 0c722ca9eh
+dd 0a228baefh
+dd 00c998bc6h
+dd 03392de83h
+dd 02cf24541h
+dd 001388476h
+dd 017b5c868h
+dd 04a59f6ffh
+dd 0f0053873h
+dd 099cc0632h
+dd 0f5197ed6h
+dd 0ab82b4a5h
+dd 0efbe2a22h
+dd 003ea4190h
+dd 035017389h
+dd 0ac1fa64eh
+dd 059e1eef0h
+dd 0084d665fh
+dd 0099efdd8h
+dd 0cb1b31b5h
+dd 07b5d8941h
+dd 0a0c21e6ah
+dd 09d61cc14h
+dd 03d3dd978h
+dd 0178c95aah
+dd 0a9f50ee2h
+dd 0fb673599h
+dd 0eb9262adh
+dd 06a2b2138h
+dd 06812ee61h
+dd 0d58e1ca2h
+dd 01e04f62ch
+dd 019e00009h
+dd 084a6441ch
+dd 0c5db8a53h
+dd 0d503fbd0h
+dd 04653723bh
+dd 0ab9e5c44h
+dd 0f2332880h
+dd 03e8e130ch
+dd 041a4289dh
+dd 03af5c1bdh
+dd 0a3265acdh
+dd 0b30ed350h
+dd 0f2a173cbh
+dd 0d8e0ca31h
+dd 060e7badeh
+dd 0f8b70374h
+dd 05e8ac69dh
+dd 0d0408319h
+dd 0eab9547fh
+dd 0e082632eh
+dd 019ff871eh
+dd 0619c3058h
+dd 08eef5f90h
+dd 0e58d8c3bh
+dd 00900055eh
+dd 0f1216a50h
+dd 05036f04bh
+dd 04cdf70b1h
+dd 035c34071h
+dd 0142f1c1bh
+dd 0fef560edh
+dd 035f9669bh
+dd 09d219ab8h
+dd 02d514657h
+dd 02f72c50bh
+dd 05c3d7799h
+dd 09a62ad3bh
+dd 00cb97d20h
+dd 08d630983h
+dd 09d3c8c30h
+dd 0b7279d9dh
+dd 030526245h
+dd 0137738a2h
+dd 08ddfa919h
+dd 001cfa45eh
+dd 03891de99h
+dd 0a329ecbeh
+dd 0e569a394h
+dd 09740c3f1h
+dd 09caec718h
+dd 083062402h
+dd 08bf8dc5ch
+dd 03de39da4h
+dd 0b6511d51h
+dd 0d838399fh
+dd 0f541eca1h
+dd 0921fbc84h
+dd 02baec46dh
+dd 0f0576869h
+dd 084bfc7ach
+dd 059a8d5f9h
+dd 05bdd61a8h
+dd 03f877076h
+dd 0657825e4h
+dd 0fbcd5059h
+dd 06f974b02h
+dd 056b80115h
+dd 0989a6558h
+dd 06d9237b5h
+dd 0eba1d6d0h
+dd 090be8255h
+dd 020b0e65fh
+dd 06f695022h
+dd 0a932252ch
+dd 0a5f5ee02h
+dd 018344eabh
+dd 0f9fad49fh
+dd 0f66adb3ch
+dd 016a1fd59h
+dd 067f02998h
+dd 089b7a6a1h
+dd 038e66508h
+dd 074e8f1cch
+dd 0649bb03eh
+dd 0105c10aeh
+dd 028ebaebbh
+dd 0362da88ah
+dd 0894b72dch
+dd 07150fddeh
+dd 079cd9ad3h
+dd 0bc9010f7h
+dd 00c721b47h
+dd 0850bad87h
+dd 0096e41ebh
+dd 0c96a5443h
+dd 0854a3b8ah
+dd 0fdbefd28h
+dd 07a974b7bh
+dd 0415c0f6fh
+dd 08604b427h
+dd 0a95d9dd0h
+dd 02c092ebeh
+dd 05476c8a2h
+dd 0c5824aaeh
+dd 09a22438fh
+dd 0bf2405a8h
+dd 0c0fbde12h
+dd 06235ddfbh
+dd 05523d9d3h
+dd 0536f04c0h
+dd 01bfc8433h
+dd 0e0e32040h
+dd 078b77de7h
+dd 0338473f2h
+dd 03c10b31dh
+dd 034d6217dh
+dd 0fd4ed5a5h
+dd 0c9c01cb4h
+dd 029f6b290h
+dd 058b798dah
+dd 032108358h
+dd 029600ae3h
+dd 0f9dd11b4h
+dd 052b919c4h
+dd 063beb18bh
+dd 04dbcf703h
+dd 01eb61ee7h
+dd 05425d8e9h
+dd 097d8b626h
+dd 0de0c9e9eh
+dd 08ebdee7fh
+dd 07da044feh
+dd 021eb0422h
+dd 01f38eb74h
+dd 06633c151h
+dd 0de019812h
+dd 01340a2d3h
+dd 0631297afh
+dd 0846ec994h
+dd 0c5f183a8h
+dd 00926f45fh
+dd 037f2f09ah
+dd 00a4a5677h
+dd 01f597d6eh
+dd 008e3aeefh
+dd 05b1e22f1h
+dd 0171758a6h
+dd 0ff18cf5bh
+dd 0ccbee12fh
+dd 032b27468h
+dd 04320c113h
+dd 09d839ad9h
+dd 040bd1445h
+dd 0673043deh
+dd 02a1146efh
+dd 0ac7c0763h
+dd 05538926eh
+dd 0aa434d0ah
+dd 06c904fd0h
+dd 0411c87d4h
+dd 0f5d28822h
+dd 0d95dfe1fh
+dd 044669a51h
+dd 0b534a1f4h
+dd 06123b403h
+dd 0c331836fh
+dd 0b616df7bh
+dd 027bf28e2h
+dd 0dddfbc03h
+dd 09adef70fh
+dd 0f9578ad9h
+dd 0d2163f9fh
+dd 0dbbc5c68h
+dd 082328e9dh
+dd 095f3cc63h
+dd 0a9b6d873h
+dd 0b20b994ch
+dd 091cc7720h
+dd 0efd6467ah
+dd 03a63fcf2h
+dd 0c1cc6ec0h
+dd 09d477124h
+dd 0a0518697h
+dd 0c505ff17h
+dd 03d48f363h
+dd 0b59507c4h
+dd 015539bb5h
+dd 0d2bff28bh
+dd 039731f72h
+dd 0ee20c99ah
+dd 089868473h
+dd 088cf0030h
+dd 085316cd0h
+dd 0958bdf38h
+dd 0678f4c16h
+dd 0cd4deecch
+dd 0746ac5dah
+dd 0a6847425h
+dd 0eff6e2c0h
+dd 0f2772ecbh
+dd 0b055777ah
+dd 06e7b0111h
+dd 06ecddbe7h
+dd 0ff2edb55h
+dd 01c24a94bh
+dd 04915be19h
+dd 0ded7a0fah
+dd 01d429e65h
+dd 0d5c9737fh
+dd 0fa43045bh
+dd 0307bb61dh
+dd 08c3e4e80h
+dd 0876fd8b7h
+dd 0aca6d255h
+dd 09c3b7e95h
+dd 0ddb35ae6h
+dd 0d2507ea8h
+dd 0c29e9ce3h
+dd 019e66186h
+dd 039f7f635h
+dd 01f3b46c6h
+dd 0de199edah
+dd 079ad26a9h
+dd 03f8956dch
+dd 0d5c4a3f7h
+dd 09d9eb165h
+dd 0c9f336c3h
+dd 07432c605h
+dd 055c39784h
+dd 099a20bf6h
+dd 00493a06eh
+dd 0aed281f7h
+dd 088b3b8abh
+dd 0c37f457ch
+dd 09326b3f3h
+dd 0df7f4e47h
+dd 0498af137h
+dd 091b9a429h
+dd 0996d1737h
+dd 0ad03b8a0h
+dd 0e894c04eh
+dd 06077c884h
+dd 0b92d4b1dh
+dd 0a553ec0ch
+dd 0a279caedh
+dd 00e7c9d04h
+dd 0861eaaafh
+dd 06df20654h
+dd 0da4cfa1ah
+dd 033e52040h
+dd 0c812d10ah
+dd 048ca439bh
+dd 03b949e49h
+dd 049256a59h
+dd 00c6425b1h
+dd 04864ad0fh
+dd 083ca275ah
+dd 0cd1a40e5h
+dd 089b8cbb7h
+dd 00ec1f57bh
+dd 07c26e7a7h
+dd 0a4b67e03h
+dd 0861bf56fh
+dd 03adfb5d1h
+dd 0897e4dd4h
+dd 0dba89687h
+dd 014d4cd26h
+dd 0e28bd8d2h
+dd 045f6689ah
+dd 04e50c115h
+dd 02192c27bh
+dd 0eedcd5edh
+dd 0fa3b6d57h
+dd 0a28b43a2h
+dd 0ee184620h
+dd 06c13276fh
+dd 0814e2510h
+dd 0b0302f82h
+dd 0e33decbeh
+dd 071f7b804h
+dd 0cc1b2315h
+dd 0b5221871h
+dd 06686f4d2h
+dd 0ccbc8c02h
+dd 077ed9cf5h
+dd 0e86c3b87h
+dd 0bb7263a3h
+dd 09e59541bh
+dd 0bb5385bah
+dd 0f782de09h
+dd 0b829d4b5h
+dd 0693a6234h
+dd 0ccf6b771h
+dd 015785d48h
+dd 0f3503791h
+dd 0ca4834c7h
+dd 0d13876e3h
+dd 0e3fe4e2ch
+dd 01534a51eh
+dd 08923e7edh
+dd 01375da3ah
+dd 03e4898aeh
+dd 00d323c11h
+dd 0d4d705cdh
+dd 0f5b7d215h
+dd 005a7c31dh
+dd 05d7011e7h
+dd 0072b5f1ah
+dd 0ecadbfe5h
+dd 00619a9dah
+dd 0552a72beh
+dd 038ae937bh
+dd 0c7a9352ah
+dd 02b21f688h
+dd 04b35aa8ah
+dd 0c096b2e9h
+dd 004defbc5h
+dd 079514b31h
+dd 01b95c9e9h
+dd 054c97777h
+dd 0e2909ee6h
+dd 0a25d7ce2h
+dd 0f5232498h
+dd 05b306b4ch
+dd 07c1ee168h
+dd 00dc090dah
+dd 06ca0c6fbh
+dd 05aebe77fh
+dd 033e61ef4h
+dd 07573f715h
+dd 056a464bah
+dd 03cec6260h
+dd 09e372105h
+dd 00208d3e1h
+dd 0c577bf57h
+dd 0aadd9359h
+dd 0a8359ebfh
+dd 062fa875eh
+dd 04d2cd8cfh
+dd 0629b0824h
+dd 05ea4accdh
+dd 01f6032f1h
+dd 0014ebec4h
+dd 04c6982dch
+dd 04016c29bh
+dd 014db1c99h
+dd 0ad823758h
+dd 0e640e13eh
+dd 03613dd8dh
+dd 0b7f4552ah
+dd 06d006a9bh
+dd 01fa01b02h
+dd 03f8e903dh
+dd 0c7b3ad3ch
+dd 01dbcb367h
+dd 0e4a63de5h
+dd 0ac5a9c3dh
+dd 073626598h
+dd 03a7ce9e6h
+dd 02b80114dh
+dd 054679d12h
+dd 016aafd66h
+dd 07527d91eh
+dd 06faa5378h
+dd 0559ab56bh
+dd 0510141e8h
+dd 0219e3746h
+dd 00beedfa9h
+dd 093e7f048h
+dd 0ad1cc82ch
+dd 0ee1cdad3h
+dd 0c2cfdd70h
+dd 0cb8b813fh
+dd 0540badabh
+dd 04967dab3h
+dd 0a7720ed2h
+dd 0c883cde1h
+dd 0474a4b47h
+dd 08d8145d2h
+dd 0d10ff1cdh
+dd 0bbd77fdeh
+dd 063f3bfe3h
+dd 0186e1912h
+dd 0f7a7fe49h
+dd 068f97f37h
+dd 000ed113ch
+dd 02129100bh
+dd 093ecab09h
+dd 0105c2310h
+dd 010449844h
+dd 0e7cfaf25h
+dd 0da048031h
+dd 0d7befb02h
+dd 0d6079f44h
+dd 0161d7a6fh
+dd 056e32daeh
+dd 069f9202fh
+dd 0c72aaccch
+dd 0b34239adh
+dd 069416a57h
+dd 0111ed280h
+dd 0a9fd1c24h
+dd 0ad52b0a6h
+dd 01d793738h
+dd 0f5e81b4fh
+dd 06b9bf8b9h
+dd 0b38ff61eh
+dd 08dddd377h
+dd 0fcb38904h
+dd 034f54591h
+dd 0c3020c69h
+dd 0935c5135h
+dd 02f1035cfh
+dd 051680ad5h
+dd 0e01eda1bh
+dd 0cdc6c272h
+dd 02806efc7h
+dd 0d4821df2h
+dd 04d1bc270h
+dd 0644165c5h
+dd 0507dc65fh
+dd 00ecdaccch
+dd 01174897fh
+dd 0d03633a3h
+dd 0ba829ee4h
+dd 01404d63fh
+dd 003f3cffdh
+dd 0bf01ee93h
+dd 07abbe879h
+dd 0b126a7f4h
+dd 0aba37014h
+dd 0da6c7fdah
+dd 05a37c063h
+dd 0baf27842h
+dd 0a93378bfh
+dd 0ef31f80dh
+dd 0861de9fdh
+dd 0345ce823h
+dd 0e25ae78eh
+dd 0cc470d6fh
+dd 043e4f23ah
+dd 03274b96ch
+dd 0e9783761h
+dd 07c58db5ch
+dd 0a56b4afdh
+dd 04f16b2f7h
+dd 0dac0a38eh
+dd 00fe57199h
+dd 04ffc3424h
+dd 0062a6ba5h
+dd 0322d6122h
+dd 05c6b66fdh
+dd 0d5056352h
+dd 08fb5b29bh
+dd 0cdc4fcb0h
+dd 0d38c6fdah
+dd 0d12b6004h
+dd 0712bf9dch
+dd 02216e94dh
+dd 05de065ebh
+dd 02ce5c7eah
+dd 087cb30e3h
+dd 000e306e4h
+dd 075451c0fh
+dd 0d31ecdfch
+dd 0fdea0e98h
+dd 0a7cb80a6h
+dd 0c536bdd6h
+dd 0d44a0c75h
+dd 0605e7395h
+dd 022841199h
+dd 0b4337a2bh
+dd 01daa150ah
+dd 008365a0eh
+dd 01ffee443h
+dd 055e9c54ch
+dd 015c80593h
+dd 00ed7ea0ah
+dd 0ac70fe70h
+dd 0fea1800fh
+dd 052881494h
+dd 09ae5df75h
+dd 04be287f1h
+dd 0f703491ch
+dd 07cd045ebh
+dd 09be4ac5bh
+dd 047c879dch
+dd 06516ceb4h
+dd 0e116b172h
+dd 0183680fdh
+dd 044362d5ch
+dd 013a66981h
+dd 03c88e81eh
+dd 07bc816cah
+dd 06883d19ch
+dd 0397f35beh
+dd 0adceaa6dh
+dd 0a3305f36h
+dd 0c9ab9a6fh
+dd 0581f9ef4h
+dd 00f350775h
+dd 08065f490h
+dd 05389c689h
+dd 04e3d507eh
+dd 0672f7299h
+dd 0266cfb4dh
+dd 07fee0ee8h
+dd 066d1159bh
+dd 00a24cf8fh
+dd 0ecd0e717h
+dd 0afff6769h
+dd 0bf4d28e2h
+dd 070e5b7c3h
+dd 0db690d2dh
+dd 0edf539f3h
+dd 0af05604ah
+dd 02b5d2c25h
+dd 0c74ccb5fh
+dd 0b9e3902bh
+dd 0170030b8h
+dd 088bb0ff7h
+dd 00dc28e29h
+dd 0f40b8887h
+dd 07eb0a87ch
+dd 0d9ad634dh
+dd 099905d9bh
+dd 084d82e6ah
+dd 0d0f7301ah
+dd 016f61cd4h
+dd 0cc9ed21dh
+dd 02b16d356h
+dd 0b0b1b4cch
+dd 01a412bcah
+dd 0c8ad6305h
+dd 08ec45518h
+dd 0dec2cec1h
+dd 0cc98b86bh
+dd 0d2537914h
+dd 0abdba440h
+dd 024ee88ceh
+dd 0b09fd5eeh
+dd 0c186299fh
+dd 084e79338h
+dd 0b544cf64h
+dd 0c39564b0h
+dd 0f952fbcah
+dd 0b4437ed6h
+dd 0687fe1a9h
+dd 0a17be616h
+dd 07c506035h
+dd 0121a53d0h
+dd 01fcc55b4h
+dd 04bd2cacfh
+dd 063043f51h
+dd 0af52b425h
+dd 0a8a8e493h
+dd 07715f28bh
+dd 092ca8132h
+dd 0160904a1h
+dd 0e501168eh
+dd 04a73794bh
+dd 0e9b00acbh
+dd 073dba38ah
+dd 01febcd92h
+dd 0dd9d9f18h
+dd 0f71b53dfh
+dd 0f90a1113h
+dd 01f754e11h
+dd 012b15657h
+dd 093cfd242h
+dd 02a6ecf80h
+dd 041ed4db1h
+dd 098542bc2h
+dd 0ed645a18h
+dd 0e9af46f7h
+dd 0cd9c6ab0h
+dd 027987d9eh
+dd 033bdd26fh
+dd 0b6bdcdd1h
+dd 0ea4393cbh
+dd 07166d213h
+dd 087709918h
+dd 0f2ac9415h
+dd 0845e63e8h
+dd 0979bd0f2h
+dd 05df65247h
+dd 03901c594h
+dd 0a258fe9dh
+dd 0fb728393h
+dd 0c894b8f4h
+dd 0c6fcded4h
+dd 0cffc2a19h
+dd 0aa6a7565h
+dd 012a77016h
+dd 095ec4037h
+dd 02387145bh
+dd 05811e576h
+dd 089eea511h
+dd 0c18ad968h
+dd 0d2df2b73h
+dd 07f425218h
+dd 09388b276h
+dd 0b0f10a0ah
+dd 019fd5ca3h
+dd 0d841db68h
+dd 0ef99a8dch
+dd 00b556896h
+dd 0f99fee66h
+dd 0213aa9f1h
+dd 0d0df6710h
+dd 022292c63h
+dd 09221ca1ch
+dd 0f19ca762h
+dd 069343c48h
+dd 0339612dfh
+dd 0f0ecbd35h
+dd 07345e8d9h
+dd 08480e771h
+dd 075b6a315h
+dd 00685929eh
+dd 025dac56fh
+dd 02e436b8ah
+dd 056578404h
+dd 0d8f8d01ch
+dd 0c2dea4e8h
+dd 00c57660bh
+dd 04a230beah
+dd 0dac0e77eh
+dd 09b84e6cbh
+dd 019dcc770h
+dd 03d2c6ad9h
+dd 0c1e82b56h
+dd 0ca29888dh
+dd 040ff8f54h
+dd 0fa875251h
+dd 0c9e23e7bh
+dd 0c44d89cfh
+dd 0ae46a1e9h
+dd 0d9fa000ch
+dd 03bab93d2h
+dd 063da3ee2h
+dd 0dbdbbcdeh
+dd 07df98378h
+dd 0cccebdddh
+dd 04cc7dc23h
+dd 00dd25a5fh
+dd 0c505a8fah
+dd 023293068h
+dd 0bf6d9d8eh
+dd 061b75523h
+dd 0e54219e4h
+dd 0270760dch
+dd 056dad833h
+dd 03d3ecafch
+dd 02bed8196h
+dd 06b049bdbh
+dd 04799f777h
+dd 09f907babh
+dd 054338bd7h
+dd 0d8a9496eh
+dd 07a151f90h
+dd 06c632230h
+dd 079280969h
+dd 073d876b8h
+dd 034993952h
+dd 0a493e591h
+dd 043517d6eh
+dd 0e5bb7e54h
+dd 0b792cb79h
+dd 0095c0f22h
+dd 02bc02245h
+dd 0462c2ebdh
+dd 01194a080h
+dd 0dae8a99fh
+dd 0d236685ah
+dd 0a2041ca1h
+dd 05a01a7f7h
+dd 0146efedbh
+dd 0b8bb9031h
+dd 0657017d0h
+dd 071c8fc4ah
+dd 0a93c32ach
+dd 0d83db0c2h
+dd 0ff03f01fh
+dd 03d334bf2h
+dd 0d4193258h
+dd 07577f56bh
+dd 01e3de018h
+dd 0a03eaa98h
+dd 018b7299fh
+dd 02e8152aeh
+dd 0e906ccd8h
+dd 022413205h
+dd 0bfacdf3ch
+dd 071af6cf7h
+dd 03a8b4ecfh
+dd 04e566f5ah
+dd 0309b88fdh
+dd 00fa57a96h
+dd 0e0113a0eh
+dd 0182639a0h
+dd 03bc60c5bh
+dd 0b8e97093h
+dd 0637268d3h
+dd 01aed9813h
+dd 0d8f61c3bh
+dd 02bbaa6c5h
+dd 0a1ade9bfh
+dd 0c05aa8d5h
+dd 01be7309ah
+dd 0f94a4b11h
+dd 020036791h
+dd 04611f52bh
+dd 0288b1387h
+dd 0ee7e328eh
+dd 01cced865h
+dd 056ba706fh
+dd 0fb3b4c00h
+dd 091ebe63eh
+dd 0d121e677h
+dd 08395ee43h
+dd 018082f44h
+dd 081ba042ch
+dd 05a0473b3h
+dd 03e379537h
+dd 028382766h
+dd 0305e4394h
+dd 0e78226f7h
+dd 0808dee3ch
+dd 0eb2599f6h
+dd 0b7727ef1h
+dd 096241df6h
+dd 019d11550h
+dd 01e4697c3h
+dd 0aec84039h
+dd 019219669h
+dd 0b4de7d59h
+dd 0e5d5fabdh
+dd 0d917b1d3h
+dd 06675363eh
+dd 0fcc6c0c5h
+dd 02517ffcch
+dd 09d490fd0h
+dd 0a898a847h
+dd 03231c90ch
+dd 0bd7cc82bh
+dd 07ed38fcch
+dd 0e63403aah
+dd 0732c15dfh
+dd 00ce4acc0h
+dd 0eb6d94b7h
+dd 0202b47d2h
+dd 061c4ebb4h
+dd 05feb8faah
+dd 052de2121h
+dd 0f905f44eh
+dd 00b6b2450h
+dd 01f8d338ah
+dd 030e55a2dh
+dd 01973ef31h
+dd 0f4c0d8c9h
+dd 0754f0128h
+dd 0ade1aac1h
+dd 08b1c7ecbh
+dd 03fd1a12bh
+dd 03dd93defh
+dd 0268b61c3h
+dd 05e503a90h
+dd 01a3d3638h
+dd 09ae20633h
+dd 0268c8a39h
+dd 03d1ba9a8h
+dd 06d721668h
+dd 029015413h
+dd 0a6507a13h
+dd 0a514fdf9h
+dd 07938f33dh
+dd 0b2dcad13h
+dd 067a5f533h
+dd 0e3ea16bch
+dd 0e9c45033h
+dd 07b568507h
+dd 06e18600bh
+dd 0913e788ch
+dd 0a309118ah
+dd 057f245bdh
+dd 089e0b99fh
+dd 0795e2437h
+dd 0fae7ed9ah
+dd 0503ba446h
+dd 0e2fb9afch
+dd 070d7a9beh
+dd 0f130ec5fh
+dd 0e475f106h
+dd 0c40c3e4eh
+dd 098b3d479h
+dd 07ade6c49h
+dd 0d164e786h
+dd 0a41fda0fh
+dd 05a385ca1h
+dd 074fc5747h
+dd 0dfb77fadh
+dd 00159e5e2h
+dd 0434a3163h
+dd 0100690fah
+dd 00bb9cfd3h
+dd 0fef2251fh
+dd 0cc4a6154h
+dd 07a019207h
+dd 0535b3152h
+dd 0e5be6955h
+dd 00f724e37h
+dd 074e77f38h
+dd 039b9e374h
+dd 05f9a7babh
+dd 0babb979ah
+dd 07b7cde03h
+dd 009b3486ah
+dd 0b5db9d9fh
+dd 0c3260dd4h
+dd 0188bc7c5h
+dd 0f16a8ffbh
+dd 090080923h
+dd 09fc3c2c0h
+dd 0133a469eh
+dd 06bd9d968h
+dd 0283496e9h
+dd 0c986ce58h
+dd 0c2ac942dh
+dd 06c57d311h
+dd 01b5cc2ach
+dd 0f49d21a1h
+dd 081d9f744h
+dd 04e6889dbh
+dd 0a78a37e8h
+dd 08a7a54feh
+dd 080e96e8dh
+dd 05b5c177eh
+dd 09ea80577h
+dd 03d176624h
+dd 0d68bdffch
+dd 0a94182fdh
+dd 02155561ah
+dd 02a70b9b3h
+dd 0e067c378h
+dd 035f77066h
+dd 085283c55h
+dd 0c48c369ch
+dd 0185640f3h
+dd 0c62c4aa6h
+dd 0a31b486bh
+dd 0897e7cc7h
+dd 04f7fd64dh
+dd 05c988ca3h
+dd 0b1fecca4h
+dd 0f602fe88h
+dd 0e9a9a935h
+dd 0ad378762h
+dd 0f1c606eah
+dd 0c39cc69eh
+dd 08a4edcd9h
+dd 0fa5e2a93h
+dd 047c78754h
+dd 002ba695ah
+dd 0bb6fc0a1h
+dd 0e1087946h
+dd 0693d4f09h
+dd 02d684cd4h
+dd 062da4a27h
+dd 01f0f66dah
+dd 0e78a60c8h
+dd 0a3fe344fh
+dd 08e9a969fh
+dd 06a8f8b78h
+dd 002831b06h
+dd 0b8d5ec3ch
+dd 09fc46732h
+dd 002a6fb9ah
+dd 0309343d7h
+dd 0535cbe7eh
+dd 0e6893c26h
+dd 09f0dc124h
+dd 042f55600h
+dd 0cb565330h
+dd 0d4c7e463h
+dd 03ea482e7h
+dd 09ea4e56fh
+dd 08ae8f1bah
+dd 0d8fa1d72h
+dd 02ff2d849h
+dd 0c42b5a10h
+dd 0162dcd89h
+dd 02215dd0eh
+dd 0128dc5d8h
+dd 04fbe5f9bh
+dd 0d9e7bdefh
+dd 01130ab3ah
+dd 044ddc938h
+dd 0931c612ah
+dd 0ab8f61c5h
+dd 04eed4328h
+dd 036e1c1aah
+dd 03c206df6h
+dd 0bca9c336h
+dd 03754abceh
+dd 0b267b49eh
+dd 09ddd7190h
+dd 024c5cf9bh
+dd 00c69942fh
+dd 02d1d2c6dh
+dd 0b9d4d397h
+dd 062f5f30ah
+dd 0fca5dfa1h
+dd 0a0f0055eh
+dd 0adf2db7bh
+dd 01ec154cbh
+dd 042e7e610h
+dd 0b653f031h
+dd 0a992f220h
+dd 065f373d2h
+dd 0a1b2deb8h
+dd 08d47df75h
+dd 0169da79eh
+dd 0657f2000h
+dd 0aeb8b5a4h
+dd 0d6a66f1ch
+dd 0e2610488h
+dd 0d41efac7h
+dd 040d78a5eh
+dd 0c66343d5h
+dd 07465f009h
+dd 0c9cf383fh
+dd 04b079f8bh
+dd 01b8889d0h
+dd 04357cd53h
+dd 09f88bfcbh
+dd 0b9ede108h
+dd 0b230ce7fh
+dd 03b077021h
+dd 0ccd6ef29h
+dd 03d41c312h
+dd 0c51e1f18h
+dd 06c230b94h
+dd 0e9780491h
+dd 0df70fae6h
+dd 0d745a7c3h
+dd 0ec3579e8h
+dd 09cd68859h
+dd 00aa9d554h
+dd 0b8d12acah
+dd 0f08ddeaeh
+dd 069fc2a80h
+dd 01172b481h
+dd 09915c9dah
+dd 098115310h
+dd 02fbd1c00h
+dd 06a5077d8h
+dd 0e32171d8h
+dd 003f2da53h
+dd 02138ac24h
+dd 0b8386662h
+dd 0a27b7fd6h
+dd 07b9e9885h
+dd 098565210h
+dd 0967a7c1fh
+dd 0c40dafcbh
+dd 0d0547f06h
+dd 080c34ca4h
+dd 020716182h
+dd 009079b5dh
+dd 054a5557ch
+dd 025a4fb67h
+dd 0a8509a65h
+dd 03f9431f0h
+dd 02ef3a925h
+dd 0ee879bd9h
+dd 041dece1ch
+dd 0bef7a14ch
+dd 05b5c4530h
+dd 026976aa3h
+dd 04df72538h
+dd 0263b671fh
+dd 0094c9681h
+dd 056fd5355h
+dd 044253112h
+dd 0199dd8f9h
+dd 060e962feh
+dd 0c2b6f8a3h
+dd 0087e8f88h
+dd 0d6ee8a22h
+dd 0df820798h
+dd 098c9a11dh
+dd 0e3295d2eh
+dd 05f37858dh
+dd 0c9ed4985h
+dd 094ec3ab5h
+dd 042f2a418h
+dd 0806cc253h
+dd 03a173582h
+dd 0a2f54374h
+dd 0ce4a551ch
+dd 034892b7bh
+dd 069bb2c82h
+dd 048503c92h
+dd 0fd2916efh
+dd 0ce49bd4eh
+dd 0bf43e08dh
+dd 0a2cd089bh
+dd 02cd0b736h
+dd 04dc3ccb4h
+dd 025af4c61h
+dd 036671c7ah
+dd 0d073585bh
+dd 09b6f7754h
+dd 06fe1805fh
+dd 09b2d4d7fh
+dd 09314d3c2h
+dd 030b6711dh
+dd 0b5f9ae9eh
+dd 0bdbcaacdh
+dd 0adf9f1e7h
+dd 0cac63724h
+dd 02100b72ah
+dd 0ee534d32h
+dd 07003996ch
+dd 03821c987h
+dd 00ef11f53h
+dd 06e87a946h
+dd 0ffd2816bh
+dd 0e92e298eh
+dd 035e64e74h
+dd 0c9cb6a22h
+dd 0f30b2d82h
+dd 0604ca438h
+dd 0e06501d7h
+dd 0663dbc8eh
+dd 0d941cd4ch
+dd 0c2bc86bfh
+dd 0e231be27h
+dd 0fd3475e5h
+dd 0843237a1h
+dd 07e4ee4abh
+dd 066b0e7f6h
+dd 0af93c9d5h
+dd 07c372cf5h
+dd 0236801d5h
+dd 02b9de977h
+dd 0d3c8dbceh
+dd 0098c754bh
+dd 0ce59a3e8h
+dd 0a5126942h
+dd 08b4fa91ah
+dd 0d4b4830ah
+dd 0fd58377fh
+dd 0b87cf469h
+dd 0f394dc7eh
+dd 0e797128eh
+dd 0dfcdf9f5h
+dd 0329f1ac3h
+dd 07e1a890ch
+dd 0b41351dch
+dd 041afdddfh
+dd 0af4800adh
+dd 07dc18d4bh
+dd 03a51c1c4h
+dd 01c290be7h
+dd 0e75d0403h
+dd 01fad69e5h
+dd 02f9a1501h
+dd 0b5be1b68h
+dd 036590bd2h
+dd 067c0b4bch
+dd 019776b7dh
+dd 016d77acdh
+dd 061e248ach
+dd 0d751ef6ah
+dd 030ec8c76h
+dd 0228de54eh
+dd 08b031909h
+dd 0fa436852h
+dd 02e17f9feh
+dd 0adf79b0fh
+dd 0b4fe6e94h
+dd 00110c901h
+dd 07b0d5aa5h
+dd 0662e61b7h
+dd 0b89f0840h
+dd 077e55f13h
+dd 0c10b1469h
+dd 0135a6199h
+dd 03ba9df4ah
+dd 05383bd3eh
+dd 0ae050f8fh
+dd 0c57947a3h
+dd 0c1bf78bfh
+dd 0f33c32beh
+dd 037b4e96dh
+dd 0ebf30a39h
+dd 0d9e8368bh
+dd 0fe3138f5h
+dd 040f3f821h
+dd 031f80e92h
+dd 08472dddah
+dd 0b1f0ff7ah
+dd 0989e3b0ch
+dd 036d90d2dh
+dd 01abe7df3h
+dd 074ed86adh
+dd 03199dc48h
+dd 0f1898061h
+dd 0c4f1bb4ch
+dd 0646b9bdch
+dd 09d1ba139h
+dd 0b7044fc5h
+dd 037cae825h
+dd 08aef7270h
+dd 0001310c0h
+dd 0722e3860h
+dd 092103dd2h
+dd 0f26ff243h
+dd 0500ff084h
+dd 0ac03aa34h
+dd 04f7d81e7h
+dd 0985d713bh
+dd 0467bff8fh
+dd 08d29fb2ch
+dd 0797c9359h
+dd 0c29ab3aeh
+dd 050196b38h
+dd 063cf90dfh
+dd 0007f550fh
+dd 0b1a35ad1h
+dd 0a9e29383h
+dd 0bea9026ch
+dd 07a9ecf9eh
+dd 0cc01bcceh
+dd 0b8926917h
+dd 07e3c4478h
+dd 05ed66f5eh
+dd 07c8e9752h
+dd 0048a41dch
+dd 0fd0b7c4bh
+dd 04e0a1360h
+dd 01146b0eah
+dd 09317c843h
+dd 021e940cbh
+dd 01876b186h
+dd 06176ed4fh
+dd 0b0e452e3h
+dd 0c484e2bfh
+dd 0fbf4a2a7h
+dd 0145771d9h
+dd 0a91022e8h
+dd 0a5f733abh
+dd 073b99194h
+dd 0e7e096b9h
+dd 0f617c198h
+dd 07b859235h
+dd 03397d3beh
+dd 07b3e740bh
+dd 00850eb48h
+dd 0a3add111h
+dd 0bd8c6323h
+dd 002f82f8bh
+dd 00fce91c4h
+dd 09ec9ec60h
+dd 0a0c76f0eh
+dd 03de27f72h
+dd 007c47924h
+dd 0e9283e73h
+dd 039ec2b34h
+dd 0d4e8a8ffh
+dd 09d9f8144h
+dd 0a399f87bh
+dd 084c16733h
+dd 043e7b414h
+dd 0dd1a603eh
+dd 00aa2f763h
+dd 05617b195h
+dd 054d255eah
+dd 0f697ef76h
+dd 0758479b9h
+dd 09a439191h
+dd 03c7a1857h
+dd 077a30e13h
+dd 0bb508a00h
+dd 09710dea2h
+dd 0bc4fecbch
+dd 0656dcaa4h
+dd 054820626h
+dd 01c6cc0e9h
+dd 0b7949b93h
+dd 05278a58fh
+dd 06fd638a0h
+dd 0b386a738h
+dd 009abc109h
+dd 0a4844a5dh
+dd 09943d7a4h
+dd 010b3896ah
+dd 031173babh
+dd 090466524h
+dd 0ed387d6dh
+dd 025f6bf3ch
+dd 0fd634603h
+dd 0c03e2553h
+dd 0da65f521h
+dd 07e8d3078h
+dd 0be9e2c53h
+dd 0b6b74c25h
+dd 0f59f4f1dh
+dd 069622efeh
+dd 075ec9d89h
+dd 024e4716ah
+dd 0aa437d1ch
+dd 073e65d0bh
+dd 03d3fd9cdh
+dd 037e74e09h
+dd 091861434h
+dd 00b3bb8bfh
+dd 0436957b7h
+dd 063cad581h
+dd 03ba4ca0eh
+dd 097d60595h
+dd 088c79788h
+dd 07d0f6775h
+dd 0dcb585d0h
+dd 06e19909ah
+dd 048d8200ah
+dd 018df9ec9h
+dd 0c7d33b1dh
+dd 00bf7f669h
+dd 0217fff3ch
+dd 03bb5728fh
+dd 016ce1804h
+dd 093b414f8h
+dd 018967071h
+dd 008528268h
+dd 0d9a9b21dh
+dd 06c8f3897h
+dd 0572ba946h
+dd 0da25fbbeh
+dd 07c899153h
+dd 08a945719h
+dd 09f19bc8ch
+dd 0014bb2bdh
+dd 077bbf2deh
+dd 0098cfde8h
+dd 0376e2d3dh
+dd 0bddac4edh
+dd 0842e8af0h
+dd 0d74a2b89h
+dd 0b23c1888h
+dd 07bcb81a3h
+dd 030c25fb3h
+dd 04e3b00aeh
+dd 0d5b10693h
+dd 096fbd533h
+dd 0f5bfcd8ch
+dd 0c352ccc5h
+dd 02033969eh
+dd 0c8f8bdbdh
+dd 079de1432h
+dd 0e56ace48h
+dd 03a10715ah
+dd 04a261903h
+dd 03f8cd2dch
+dd 0f3b69687h
+dd 0444f2185h
+dd 071a1a3eah
+dd 075749734h
+dd 01ce80671h
+dd 096fabc9dh
+dd 097db0537h
+dd 0888a9ef8h
+dd 034e60329h
+dd 0dafdb987h
+dd 02bf65661h
+dd 091302012h
+dd 0325f99dch
+dd 071322e87h
+dd 0a915152dh
+dd 07884e674h
+dd 004ef0860h
+dd 083faf508h
+dd 0cca4f3a8h
+dd 0ddfa005fh
+dd 085494bdah
+dd 0c922cd69h
+dd 026c0704fh
+dd 0b4c01cf3h
+dd 006216596h
+dd 0666cd2bdh
+dd 035f474b5h
+dd 0f2eb3692h
+dd 0f8df34dfh
+dd 05d5074f5h
+dd 060248e71h
+dd 0c0cd7983h
+dd 03ba1af5fh
+dd 0c751cc79h
+dd 0078e0348h
+dd 0ea67f7cbh
+dd 071add0d6h
+dd 05d366b0bh
+dd 03be4e7d9h
+dd 06605abc7h
+dd 068571d8bh
+dd 080aefc5eh
+dd 0c27d8625h
+dd 0f8abc484h
+dd 0d9e2dbe5h
+dd 0c2a172d3h
+dd 0232fdbc3h
+dd 0508e6297h
+dd 039b06622h
+dd 0ffb67ef3h
+dd 07bad5edch
+dd 09d17efb3h
+dd 067f04744h
+dd 0e2706da6h
+dd 020740bf9h
+dd 03d4cad01h
+dd 01183f6cdh
+dd 0233467b4h
+dd 0e9808d74h
+dd 081ae6650h
+dd 0c98d4a92h
+dd 0d915b84dh
+dd 04ffcc31eh
+dd 06e8fd736h
+dd 0d4c497eeh
+dd 030d35da4h
+dd 069070176h
+dd 02c0fb72dh
+dd 01d3f390fh
+dd 0ad18b567h
+dd 048be59c7h
+dd 04271a153h
+dd 0e2f48ca4h
+dd 0ccffaa44h
+dd 000ec5eefh
+dd 0657ac63fh
+dd 0b37968adh
+dd 0328a3f1eh
+dd 038b8910dh
+dd 045ccbae7h
+dd 02dc74189h
+dd 05723d6bfh
+dd 0e6c687f6h
+dd 09ca2e723h
+dd 04d52eb44h
+dd 0e938f850h
+dd 0164c5c79h
+dd 0eb04943bh
+dd 079f6f949h
+dd 0121f1233h
+dd 06afdecf2h
+dd 00a21ffd0h
+dd 07024ecafh
+dd 0e616fa46h
+dd 0cae26033h
+dd 07c3ac857h
+dd 08ccbc3fch
+dd 0262f4e9dh
+dd 09724832dh
+dd 0bad55993h
+dd 0fc1226feh
+dd 095e614bch
+dd 0f7e1e075h
+dd 02e678628h
+dd 0fe7c5211h
+dd 019163c6dh
+dd 05b9d4978h
+dd 0b56e9304h
+dd 086058bfeh
+dd 0b98d782ah
+dd 0a72b626ah
+dd 0361f6d7fh
+dd 0764eac53h
+dd 0edb65752h
+dd 02143d387h
+dd 09bfa6f35h
+dd 0e8368630h
+dd 0dbdc0d51h
+dd 0b74a7091h
+dd 0b2d030f0h
+dd 0472e0625h
+dd 039326542h
+dd 051905a42h
+dd 0aac110afh
+dd 0caf8ad43h
+dd 0c8d37576h
+dd 049723b08h
+dd 010e45179h
+dd 0fac178b5h
+dd 0cf5223e0h
+dd 0710e4372h
+dd 044549328h
+dd 03e0ca9b5h
+dd 031928e40h
+dd 0fcdaaddbh
+dd 0d107e4d3h
+dd 008b973c1h
+dd 07a065a6bh
+dd 097cd8fe4h
+dd 0b7cfc907h
+dd 05bf33caah
+dd 0983d3daah
+dd 0e160aaa4h
+dd 0e6544d67h
+dd 068376593h
+dd 0b5bf9faah
+dd 0212c9e10h
+dd 08b1e965bh
+dd 046b05481h
+dd 095d4a1ffh
+dd 03bf126ffh
+dd 058ddfcdfh
+dd 095a9eed4h
+dd 0f72aea11h
+dd 040a6aa43h
+dd 0d045205dh
+dd 0d8cf2d6dh
+dd 028dc9f9fh
+dd 0ddabc62dh
+dd 04b7fc13fh
+dd 0a5435f6dh
+dd 04052a529h
+dd 012b194bdh
+dd 063d0ab31h
+dd 05d6d417dh
+dd 0cdec2ae1h
+dd 0b2351be3h
+dd 0c422a9fbh
+dd 0166e8603h
+dd 009c6f9efh
+dd 0c493bb9bh
+dd 05a0d3ee8h
+dd 05cac10c9h
+dd 037ddcffbh
+dd 02dee7d01h
+dd 0ae6fd201h
+dd 00dcca99ah
+dd 05e935059h
+dd 09db930f0h
+dd 0748976adh
+dd 06778e93dh
+dd 05bf9ab63h
+dd 007f27e5fh
+dd 00defcf86h
+dd 0a4343fa3h
+dd 09cf2f733h
+dd 04a3ba471h
+dd 04dc3de27h
+dd 0a329d424h
+dd 009535d12h
+dd 0939c0546h
+dd 00eec8e74h
+dd 042909935h
+dd 078a7c59bh
+dd 00310563ah
+dd 0bbb8988ah
+dd 02abcb639h
+dd 0a37ace50h
+dd 0ff90dc56h
+dd 06cb44e81h
+dd 0df5aeb2bh
+dd 0bf99416ch
+dd 0056d12cah
+dd 0b72984a1h
+dd 03777e35ah
+dd 04fe47fa9h
+dd 0f83b2e14h
+dd 0f2eaea7ah
+dd 0a244fa13h
+dd 0ca4ed9ech
+dd 07cbcfe3dh
+dd 0d84e0641h
+dd 07898d4a8h
+dd 04e478c71h
+dd 05705b462h
+dd 0b8b874b5h
+dd 0048f7abbh
+dd 070400d40h
+dd 0a4001b37h
+dd 0a97e39b3h
+dd 06302cb90h
+dd 089272bb2h
+dd 0e4a7e2deh
+dd 09a383040h
+dd 0ad7867dah
+dd 08173c6fbh
+dd 044a11704h
+dd 080d5982fh
+dd 0953cb7d4h
+dd 02965a374h
+dd 013d61957h
+dd 05a57fe86h
+dd 0e5d82179h
+dd 08409f5d2h
+dd 071f39b40h
+dd 041f31eech
+dd 018ba6390h
+dd 03939ee16h
+dd 0481e59d5h
+dd 07de5fe33h
+dd 07d9fa252h
+dd 0b8b3c2e0h
+dd 07447d91eh
+dd 01d21a72fh
+dd 0aed09ea5h
+dd 07b0fcc19h
+dd 0b2d2b2b1h
+dd 0214de7b0h
+dd 021682301h
+dd 07eb71637h
+dd 028bda90eh
+dd 0217bc7a3h
+dd 048b18bf8h
+dd 0f38e7ae7h
+dd 06ba60764h
+dd 0c84de3c7h
+dd 055043e93h
+dd 09f9af524h
+dd 0db0e6a7ch
+dd 0cb41fc7ch
+dd 0e2a2a667h
+dd 002d4471bh
+dd 0bd7ddd18h
+dd 00094362ch
+dd 0c30eaeach
+dd 0ae76b6fch
+dd 05d8e2319h
+dd 0a0126a39h
+dd 0e355be2dh
+dd 094f3d876h
+dd 0a1bbe76ah
+dd 0854a6659h
+dd 0836f85efh
+dd 00a5991eeh
+dd 06a9d3711h
+dd 09fd769ffh
+dd 07559c7e4h
+dd 0d9d9fec9h
+dd 089379821h
+dd 0da319613h
+dd 08783b219h
+dd 0826b0ea3h
+dd 0314f851dh
+dd 0ebb55d74h
+dd 099ec3f1ch
+dd 0f019905ah
+dd 038eeaa48h
+dd 0560d9d18h
+dd 0e4f3859fh
+dd 062dbd6c9h
+dd 0d1dd9cd0h
+dd 01cdba963h
+dd 0598eb415h
+dd 04877ad0fh
+dd 0d41642c9h
+dd 048430217h
+dd 01ff7a239h
+dd 0017b3e18h
+dd 03a434549h
+dd 039bf2b10h
+dd 054f680c1h
+dd 0ae0912a9h
+dd 01d9e8d37h
+dd 0482df81eh
+dd 06ad11c10h
+dd 0fd0f6b16h
+dd 0617f0640h
+dd 03d669e81h
+dd 0effdbf68h
+dd 0d3cf773eh
+dd 035e8544ah
+dd 0fdb4aef7h
+dd 00e04363dh
+dd 047fb9e56h
+dd 0928f4791h
+dd 02386493fh
+dd 0136c45e4h
+dd 09f0d53d7h
+dd 09037cd84h
+dd 0a332a7ffh
+dd 0343240f7h
+dd 032df5e90h
+dd 029b77cc0h
+dd 065649854h
+dd 0b01b16cch
+dd 054107623h
+dd 02e6e0140h
+dd 064a7d402h
+dd 0d73e9ca1h
+dd 046d20632h
+dd 047703cb1h
+dd 0b9563a74h
+dd 00104f99fh
+dd 0dcd7a34bh
+dd 08ba67007h
+dd 01d6645cch
+dd 0aa7fb4d0h
+dd 09b3ee14fh
+dd 0d02f810eh
+dd 01d18ca41h
+dd 0da61d235h
+dd 0d031c483h
+dd 002cc0098h
+dd 0bf886ea7h
+dd 089331a4eh
+dd 0f881af65h
+dd 0e2883e11h
+dd 0a78e7013h
+dd 0aa69b90eh
+dd 09e684524h
+dd 06a1af70ah
+dd 0af9e7af1h
+dd 0349cf59dh
+dd 0d5a0e867h
+dd 037554273h
+dd 0ea2635d4h
+dd 06a8564c0h
+dd 0d2ee1c7ch
+dd 0989eb33eh
+dd 077b82936h
+dd 0b1c472f4h
+dd 093b48a0fh
+dd 034f95160h
+dd 0ac73c4b9h
+dd 030ae430fh
+dd 01327bd82h
+dd 043f250d7h
+dd 00937a4afh
+dd 0f402c96dh
+dd 059f80fffh
+dd 0ded541c4h
+dd 0260acb7ch
+dd 07be0e51fh
+dd 0cf7a1751h
+dd 055d5f185h
+dd 08123d3a3h
+dd 0bda93b60h
+dd 00d9d5768h
+dd 08c340349h
+dd 0c455b773h
+dd 0cfe7b66ch
+dd 048d41a78h
+dd 01e973451h
+dd 01e0befbch
+dd 0bf6d9329h
+dd 0e48f83f6h
+dd 05551a317h
+dd 0930835eah
+dd 0e86b82cch
+dd 0f0ad048ch
+dd 01890346fh
+dd 00d2404aah
+dd 0283387b5h
+dd 06a4c3fd0h
+dd 01ee8fd09h
+dd 0702af7fch
+dd 00d361d88h
+dd 0abab1dbah
+dd 0f865498dh
+dd 0be68febbh
+dd 04e9bdc42h
+dd 0ded953f0h
+dd 0eacf66a3h
+dd 0da6933e2h
+dd 0e3b4a1ceh
+dd 08e706e3eh
+dd 019d95ca6h
+dd 00642f000h
+dd 03972f8e7h
+dd 0eafb5e91h
+dd 0b1d2e20ch
+dd 07f82b9d2h
+dd 03d914a5dh
+dd 05b43f90ch
+dd 0e7ae164bh
+dd 04e8a5d20h
+dd 0eafa1eb2h
+dd 0baa66462h
+dd 09d1ee325h
+dd 006ad2258h
+dd 03c85ad87h
+dd 003d6396ah
+dd 013ee465ch
+dd 08176cd3bh
+dd 06c77f614h
+dd 082dc4f0bh
+dd 0631d3df3h
+dd 0e8d60058h
+dd 05db5f0f3h
+dd 07a5968dbh
+dd 0128ab6cbh
+dd 02ff14f7fh
+dd 0ac580024h
+dd 00207c8ddh
+dd 039c3c7d7h
+dd 0960ef60bh
+dd 05bfea59ah
+dd 02c949561h
+dd 0b45f36e9h
+dd 020d008cah
+dd 0891e386eh
+dd 031cc8ecfh
+dd 023d8342ch
+dd 0da3b812ch
+dd 0aa9f6ecfh
+dd 0bb8a3d28h
+dd 0ae159b62h
+dd 090fd0fddh
+dd 0df4fe8bfh
+dd 0b5ef6e3ch
+dd 0ee22bf95h
+dd 027a4dbbbh
+dd 03f84675ch
+dd 05e6dc0e3h
+dd 0619bb147h
+dd 03e30c0b1h
+dd 0cd1bf2c3h
+dd 08cc0ccbch
+dd 05963087bh
+dd 02a6ae9abh
+dd 0dcc5f2d4h
+dd 00a0a1b9ch
+dd 02958de60h
+dd 07f486e3ch
+dd 0568ab638h
+dd 09084c1b9h
+dd 0e92b7d83h
+dd 0d050c79dh
+dd 03b4a3b38h
+dd 0d2711db8h
+dd 0d6eee3a0h
+dd 00902e159h
+dd 06fce2740h
+dd 0dee8ad15h
+dd 0a2a88719h
+dd 073aa75f3h
+dd 009823a98h
+dd 035374065h
+dd 0abafc905h
+dd 0bac7cd89h
+dd 0ecbacb84h
+dd 0f31e5bd6h
+dd 089279f18h
+dd 01c9fd23ah
+dd 001102400h
+dd 0cbc78058h
+dd 0791f4001h
+dd 0c4cbfdf1h
+dd 07a0fe823h
+dd 036d140f2h
+dd 0ec25cc6bh
+dd 052d424f5h
+dd 027edab03h
+dd 011a16755h
+dd 030ce10a9h
+dd 06966d2dfh
+dd 097375685h
+dd 0272b9364h
+dd 0a1c953e8h
+dd 036bb14a6h
+dd 0db2d06feh
+dd 02be3c52ah
+dd 0f42d77ffh
+dd 0a72d30feh
+dd 087410a21h
+dd 0eb709028h
+dd 034dd53ffh
+dd 07277e359h
+dd 0ba1ac449h
+dd 028eae630h
+dd 020c2aa27h
+dd 0b8cbd494h
+dd 06a6aef7dh
+dd 070c0cbe0h
+dd 08d540b92h
+dd 09c884a7fh
+dd 0ed916bcbh
+dd 0722936eah
+dd 0b17a1f3dh
+dd 03da2d45fh
+dd 079a25a2dh
+dd 050767538h
+dd 0051dee62h
+dd 0ceebc90ch
+dd 024b5f47ah
+dd 0db2b03c9h
+dd 01df3811bh
+dd 0ed47b498h
+dd 00f2c0340h
+dd 06cac8dd3h
+dd 08853e5e6h
+dd 0f8fff6d9h
+dd 04c347426h
+dd 0961f0795h
+dd 0d80ec84bh
+dd 05db902e3h
+dd 0fe75a207h
+dd 0664b0a07h
+dd 07da00eefh
+dd 0b48c96d8h
+dd 0938b2752h
+dd 0656dd9a0h
+dd 02f0ebc69h
+dd 0a0d0be4fh
+dd 0cd35e698h
+dd 03437e1cfh
+dd 02ee341c5h
+dd 0a3043031h
+dd 0ef53798ch
+dd 036a54aech
+dd 0985f503bh
+dd 06d66673eh
+dd 0db32ff9ah
+dd 0b834dd39h
+dd 08b4bd53bh
+dd 0e6367914h
+dd 0334a1848h
+dd 0b660bc02h
+dd 0bb9f7deah
+dd 015e9e859h
+dd 0d765fb30h
+dd 00081466ch
+dd 05cf7a204h
+dd 0b8c8cda3h
+dd 09b181598h
+dd 0fed0f6e0h
+dd 0929dccbeh
+dd 05c529ae0h
+dd 0545e27b0h
+dd 0ef8dc985h
+dd 098e6d8d3h
+dd 028d359e1h
+dd 0760fb3cah
+dd 0ed86f41eh
+dd 043d306a5h
+dd 028d40d89h
+dd 0ac0ffce3h
+dd 066215225h
+dd 041b03d0bh
+dd 044a43e3ah
+dd 0397491deh
+dd 081ac8cbeh
+dd 0971b816ch
+dd 069e75061h
+dd 09a0a824ah
+dd 0386718adh
+dd 0ceaed95dh
+dd 04cd2a2a2h
+dd 01d065ee5h
+dd 03691ad41h
+dd 0ff73c47dh
+dd 0858ed384h
+dd 075a9fa68h
+dd 020de1111h
+dd 05fa4f7a3h
+dd 0cb2b8996h
+dd 05b08098ah
+dd 0e9e9aad6h
+dd 0cae06d88h
+dd 0c5e4d97ch
+dd 097c40314h
+dd 079b2779ah
+dd 00e172609h
+dd 07a426948h
+dd 0b4597dfeh
+dd 07c85b6a6h
+dd 01b85781bh
+dd 0046a80a9h
+dd 073368b0ah
+dd 0f4f4ccebh
+dd 0d18a1da6h
+dd 0c3b1925bh
+dd 0a7b9328dh
+dd 0f5e50984h
+dd 06108c72dh
+dd 036a180ffh
+dd 0a13a0335h
+dd 0684018aah
+dd 08b5d53cdh
+dd 0e2910611h
+dd 0e87fddc6h
+dd 04d5c614dh
+dd 0afde0696h
+dd 054f8799dh
+dd 0c875f657h
+dd 0465dd7b1h
+dd 055295310h
+dd 0cef31a41h
+dd 04797845bh
+dd 03e05ed85h
+dd 0391d76f2h
+dd 030ea2704h
+dd 0653aea16h
+dd 094f99160h
+dd 022e6194ch
+dd 01a754b81h
+dd 07bd49348h
+dd 0bab5c9e9h
+dd 030f4a637h
+dd 00b4a38afh
+dd 0387b196ah
+dd 04c17da5ch
+dd 0f6905835h
+dd 027811780h
+dd 091515fa0h
+dd 0e98da0edh
+dd 0c37aef37h
+dd 08c6219f5h
+dd 0a34e1b05h
+dd 0ad32c284h
+dd 065234351h
+dd 03a3f7b69h
+dd 02d2509cch
+dd 02546ef5dh
+dd 04d80c69eh
+dd 0ef8d68ceh
+dd 09eeea75eh
+dd 062e283c6h
+dd 0a045cfc5h
+dd 07af6fdf7h
+dd 03368351ch
+dd 0a8bb835dh
+dd 023a88f93h
+dd 0e3032ef7h
+dd 0ab8aeb7bh
+dd 094eb0335h
+dd 0111e6649h
+dd 08d5bc893h
+dd 0cf41603bh
+dd 077a00086h
+dd 05a7e45b5h
+dd 0076c1975h
+dd 0a77ef942h
+dd 062cd70beh
+dd 0fd7f70a7h
+dd 07bdec96dh
+dd 06bcc9498h
+dd 04fd80c64h
+dd 0bf1514c6h
+dd 025c605d2h
+dd 039821de8h
+dd 031b7eca9h
+dd 0f2a2a5f8h
+dd 04fe57342h
+dd 045dde379h
+dd 08c20a588h
+dd 039f8e4e9h
+dd 0d456cf6dh
+dd 077b24316h
+dd 0991fc965h
+dd 0d5bf44a6h
+dd 0e48ce62fh
+dd 080d30b8dh
+dd 074b2b426h
+dd 0191b03eah
+dd 0595f5c87h
+dd 0f783b8fbh
+dd 050e27f33h
+dd 05da02d8dh
+dd 09e0f9b7eh
+dd 068007cdah
+dd 04c6eebedh
+dd 0b2b56a46h
+dd 0c18dd411h
+dd 04e1561a7h
+dd 0cc9f117eh
+dd 07c5ce7c6h
+dd 02ae02f2dh
+dd 0ec25cdc9h
+dd 0f468cec0h
+dd 060a6e650h
+dd 0e415e86ch
+dd 04e9ed6cbh
+dd 01e9ffc61h
+dd 0ba884b69h
+dd 00503e6e9h
+dd 00630bd35h
+dd 060c390f2h
+dd 0a729437fh
+dd 06bcc1dbfh
+dd 00ba7d95ah
+dd 06de677a0h
+dd 0709c4278h
+dd 085ea02bfh
+dd 089f6ae8bh
+dd 047c53152h
+dd 0093dcb6fh
+dd 0322eec5fh
+dd 053f0f670h
+dd 0d610224fh
+dd 0d02a57d5h
+dd 08e2cca1fh
+dd 0d76a286eh
+dd 0b0dfe282h
+dd 0ee2b9c37h
+dd 0db0b8d9dh
+dd 0ccc1cc99h
+dd 080459060h
+dd 08c1c972dh
+dd 0e6910256h
+dd 00e78058bh
+dd 07299a562h
+dd 05faeba78h
+dd 0439137bah
+dd 0cc6e93cch
+dd 0af74f4b7h
+dd 04971253eh
+dd 0c7d0a8a7h
+dd 05f390b7bh
+dd 02f4b55d8h
+dd 0f6249837h
+dd 03884a801h
+dd 054b9ca5eh
+dd 082b9f621h
+dd 04196824dh
+dd 043c11049h
+dd 0465285b3h
+dd 0b9afbf67h
+dd 0ccc933ffh
+dd 0c5f78c50h
+dd 0fe376fc6h
+dd 0d319ebceh
+dd 051d6ace5h
+dd 0e29dc2a4h
+dd 00e6b3911h
+dd 0e68f7b08h
+dd 02082b52eh
+dd 0cddf06b0h
+dd 07134f63bh
+dd 0ef2e87d9h
+dd 0e44c4345h
+dd 0be0813abh
+dd 0e594d143h
+dd 01af92dc2h
+dd 08db542c7h
+dd 0484de76ah
+dd 03ffa6a49h
+dd 04123ca6fh
+dd 0ca4a1b8dh
+dd 00e0d2724h
+dd 08cb3f9b3h
+dd 0775302cdh
+dd 0ff28ae62h
+dd 02ad64f37h
+dd 0fdc720ach
+dd 0711d1de9h
+dd 03d5cb41bh
+dd 077cdaa26h
+dd 0b0df8bach
+dd 0f55c0022h
+dd 0908f53e3h
+dd 071dbbf51h
+dd 0b2a2656eh
+dd 0ece8ff68h
+dd 0c5f4e9e0h
+dd 0398d3e8ah
+dd 03a1cb703h
+dd 0b3cbf19ah
+dd 0ad525837h
+dd 06392db05h
+dd 02079ebabh
+dd 0bdca4b77h
+dd 02ec8aa20h
+dd 0ab0e877fh
+dd 065ef817ah
+dd 0647feaech
+dd 0eb2f91c1h
+dd 08a65e4b5h
+dd 03a626062h
+dd 0c1ec584dh
+dd 0191a40d6h
+dd 0473e721ch
+dd 0b3f5b754h
+dd 07f3b5a08h
+dd 0d01af17fh
+dd 084f6abc1h
+dd 052438821h
+dd 058e1481ah
+dd 0739a808ah
+dd 09a0cfd7dh
+dd 0adf8e4f1h
+dd 0c2842488h
+dd 00cfc6102h
+dd 033234ca7h
+dd 0c94968a0h
+dd 0b95bbb5ch
+dd 05026dccbh
+dd 08d6b744bh
+dd 065bdc837h
+dd 0b8b02e03h
+dd 07a3bfffdh
+dd 0e36ad08bh
+dd 08a7756e1h
+dd 060e90979h
+dd 0ca8d6524h
+dd 0c71d95e4h
+dd 0009caee2h
+dd 0c4df40c6h
+dd 06f7f0bc9h
+dd 03c0351ach
+dd 0d73ded97h
+dd 027616e9dh
+dd 08633351dh
+dd 04e62d23eh
+dd 0ebe0dda2h
+dd 0d3218e5fh
+dd 0e432057fh
+dd 0447f96fdh
+dd 076e1b69ah
+dd 04b64720fh
+dd 046fd7134h
+dd 05697e3cbh
+dd 04224a5d7h
+dd 00668d6c1h
+dd 014e2585ah
+dd 0e76d51adh
+dd 0b823c2c1h
+dd 0d73ab6c1h
+dd 0a5fce79bh
+dd 027da0ba5h
+dd 0c8f56506h
+dd 0338990dch
+dd 004d65adbh
+dd 0c138de7ch
+dd 09f9c8f97h
+dd 0de33ba0eh
+dd 0d5ea86c9h
+dd 003a8208ch
+dd 07800a841h
+dd 084477342h
+dd 0fabffbe0h
+dd 0e2e41c14h
+dd 0b36a4f9ch
+dd 097b0278ch
+dd 0f74e833ch
+dd 07810351fh
+dd 01e8a226eh
+dd 040f8c8a6h
+dd 00316fb1ah
+dd 07f4e2f06h
+dd 0b4c3ed6dh
+dd 0dc36a231h
+dd 025c145a4h
+dd 02f31ee75h
+dd 05933bce4h
+dd 0b77fef67h
+dd 0b7311b48h
+dd 0cacc0988h
+dd 0daedc34fh
+dd 08feb1d2dh
+dd 05c8147bbh
+dd 008890be4h
+dd 0cf70f3efh
+dd 0bb93761ah
+dd 045927195h
+dd 0a8f44d79h
+dd 0d7f1b5e3h
+dd 05472dfe2h
+dd 0b21073b3h
+dd 0b08636fah
+dd 0047cf485h
+dd 02478fc41h
+dd 0cf03efc1h
+dd 0386bdbb8h
+dd 0bb0a551fh
+dd 010da51a9h
+dd 0dd4c9da6h
+dd 0cc27f920h
+dd 0530d8d8dh
+dd 039831e1eh
+dd 00fc24974h
+dd 0ec6ca6f2h
+dd 02d107693h
+dd 0def095ebh
+dd 041e973cdh
+dd 0895c9f3bh
+dd 0e96f1ab5h
+dd 0f059e73eh
+dd 0560dd725h
+dd 023087824h
+dd 07a9f54d3h
+dd 0faa8fb10h
+dd 0a8c9abb5h
+dd 08e1f7bceh
+dd 09596a053h
+dd 0e1ee4af8h
+dd 0a0e0f9c7h
+dd 0674caaa2h
+dd 0009d8743h
+dd 0c830ce43h
+dd 02cce5757h
+dd 0b930f5b3h
+dd 0299174d3h
+dd 07515aaa3h
+dd 0b09ed90ch
+dd 09c8e6cd9h
+dd 034a0adcah
+dd 0da4c030eh
+dd 0b4b9ac67h
+dd 01ef29ebdh
+dd 002c07fb1h
+dd 08accbf0eh
+dd 0c3138d0eh
+dd 0a398ae61h
+dd 0bb068b98h
+dd 02ea9d9a1h
+dd 01771c6abh
+dd 0a00564e6h
+dd 07bd054e5h
+dd 0487ead0ah
+dd 0850970c0h
+dd 05dffd930h
+dd 03500ddc2h
+dd 0896f2a7dh
+dd 0c891f0f2h
+dd 092ba2a1ah
+dd 0e5905dc9h
+dd 0d2e98eeeh
+dd 06522f2a3h
+dd 067facc61h
+dd 0d097dda1h
+dd 048060f2ah
+dd 0f5c9bc6ah
+dd 07a0da39dh
+dd 00e59685ch
+dd 0bbebf066h
+dd 04c2def05h
+dd 0897401e9h
+dd 01e121dd6h
+dd 0dc00fe78h
+dd 0afa2d0c3h
+dd 06b5b982ch
+dd 05862469ch
+dd 0a231c237h
+dd 08d61ae84h
+dd 0c3a67dc5h
+dd 0058052c1h
+dd 0961c90d7h
+dd 0d5306fddh
+dd 04b4741c2h
+dd 0e1f2cc72h
+dd 03541b837h
+dd 035c4a1abh
+dd 05d701448h
+dd 0b43f97fch
+dd 0c76abf27h
+dd 0a11c97b3h
+dd 071ca9256h
+dd 05ff00b4dh
+dd 0b67e663eh
+dd 01c07cd66h
+dd 011bd35b4h
+dd 0de3c6bcdh
+dd 08086550eh
+dd 0f54b30e6h
+dd 0d023aa06h
+dd 07c8b9058h
+dd 07811b766h
+dd 029daa1edh
+dd 0d2a0658fh
+dd 0e8ff2faah
+dd 078196e23h
+dd 0591659c9h
+dd 09e92521fh
+dd 0c4855115h
+dd 04e95b22eh
+dd 0dfd90a07h
+dd 00663f6f5h
+dd 09fe3688ah
+dd 083a900f8h
+dd 09355dd1bh
+dd 0234d23b4h
+dd 013d7a239h
+dd 0d61e4e6ah
+dd 0c26ad021h
+dd 06eab0907h
+dd 0aafa519bh
+dd 0e422db8bh
+dd 0eadc5dd5h
+dd 0a4ce30ebh
+dd 051f89397h
+dd 0e3164924h
+dd 002c340afh
+dd 028d11534h
+dd 0395b972ch
+dd 08f23d7c2h
+dd 09e88429fh
+dd 01c0a10e3h
+dd 03c7e8ac0h
+dd 050c8ff0eh
+dd 058cf8dcch
+dd 0be5a42ceh
+dd 0b178d248h
+dd 0fadbf993h
+dd 029ff099fh
+dd 0a311f408h
+dd 0e0961251h
+dd 01b1d1817h
+dd 0fcbce13fh
+dd 0792f52f0h
+dd 05b70d6f5h
+dd 0cb867d42h
+dd 02297082eh
+dd 02c41711dh
+dd 0601c57c8h
+dd 00e1725c4h
+dd 0122c1f6dh
+dd 0922c0908h
+dd 0191ea5beh
+dd 0ee6270ech
+dd 056edf0cfh
+dd 002f117fch
+dd 01def1741h
+dd 0fb2fb99fh
+dd 00361b23ah
+dd 0fa0a0a02h
+dd 064f32288h
+dd 0c143169eh
+dd 0a9934005h
+dd 0ad361629h
+dd 0e6ea4229h
+dd 093e1c2a8h
+dd 09b910aedh
+dd 0d2559e77h
+dd 0acfce7e8h
+dd 0a0d1acb2h
+dd 028a23868h
+dd 05c3bf024h
+dd 0c02061f4h
+dd 02ee342d2h
+dd 029fa8f72h
+dd 0baa78143h
+dd 00753bc82h
+dd 07e861dbah
+dd 07fc565a4h
+dd 0c28d42bdh
+dd 0c90a52fch
+dd 01f519595h
+dd 0c7d252bch
+dd 0155009fdh
+dd 03a239637h
+dd 0045b135fh
+dd 094d70fb8h
+dd 064c7dc28h
+dd 028866c9fh
+dd 09e08a92bh
+dd 01bd48d7ch
+dd 0c6b9709eh
+dd 04f77f5e9h
+dd 0e6e45a6fh
+dd 0887013feh
+dd 010198239h
+dd 0561348b5h
+dd 0ddcb2b4ch
+dd 05fc1b5f9h
+dd 048fd1a39h
+dd 0367eec87h
+dd 085b0924dh
+dd 0994d4c8fh
+dd 024c4feb3h
+dd 0ffed62b5h
+dd 0b3ce7787h
+dd 027b02308h
+dd 0cc6f8a1ch
+dd 01b946dc4h
+dd 027eb508dh
+dd 055bda6e2h
+dd 055a89be4h
+dd 0a5f0f790h
+dd 07a161555h
+dd 0273fc094h
+dd 0ce249e3ch
+dd 031261d42h
+dd 040f4a290h
+dd 0c2c18d67h
+dd 0b74d28c1h
+dd 01c079bfah
+dd 0e3ed6bfbh
+dd 027e78367h
+dd 082b42a5bh
+dd 08fbccdbah
+dd 0e65ef419h
+dd 02ab64855h
+dd 0d1803d60h
+dd 044de3714h
+dd 010834665h
+dd 0c8680d25h
+dd 01e794162h
+dd 06fc74a44h
+dd 05281c60ah
+dd 018489d65h
+dd 0115bd20eh
+dd 0c8ed9098h
+dd 093983455h
+dd 03025ffd9h
+dd 0dc406745h
+dd 03915a7f3h
+dd 0b79299b3h
+dd 0497d46d1h
+dd 0ef37e78dh
+dd 0156d0595h
+dd 0ac9a60f4h
+dd 0c5ac751fh
+dd 0051d4cb1h
+dd 0247ebbbch
+dd 0c09a3b44h
+dd 0b8dd0159h
+dd 03cc8808eh
+dd 0c2775172h
+dd 0c952f455h
+dd 0668110fch
+dd 0578670c1h
+dd 0323ac6dbh
+dd 0eee4b5d1h
+dd 062a2d304h
+dd 002169fcfh
+dd 0704fe4dah
+dd 08714c0d1h
+dd 0a650a53eh
+dd 0dbc4e989h
+dd 076faca36h
+dd 03c05964ch
+dd 053a16fd6h
+dd 064edb26ah
+dd 0ac6b316eh
+dd 0422d7350h
+dd 029978e14h
+dd 07642a473h
+dd 0c222d184h
+dd 0c5cb9d45h
+dd 0f24cd776h
+dd 0b5c62d93h
+dd 00ee9e62ah
+dd 025855ec4h
+dd 0957a9bc4h
+dd 0bd9aae73h
+dd 0d0d5de8fh
+dd 0892674deh
+dd 024aae2dah
+dd 0aa126fceh
+dd 05186996ah
+dd 03cc34d01h
+dd 0a6b47645h
+dd 0bf7e950ah
+dd 09f640092h
+dd 0c33a299dh
+dd 09c6dba1fh
+dd 0c749ead0h
+dd 0267dd661h
+dd 0602fece3h
+dd 0103efab4h
+dd 0ca34be3ah
+dd 0804b924ah
+dd 06e536900h
+dd 023d3b911h
+dd 0c6c7b680h
+dd 0d94109e7h
+dd 0a9a57475h
+dd 094780530h
+dd 0a8c534a7h
+dd 034e80f7dh
+dd 0b54e6460h
+dd 04d351b36h
+dd 04d0a71c2h
+dd 031559c63h
+dd 0d93db5bdh
+dd 08467902ch
+dd 0451d638ah
+dd 03d508c54h
+dd 06f024812h
+dd 0d52ed40eh
+dd 036009e40h
+dd 02ddda35fh
+dd 057ae77c7h
+dd 02bd13722h
+dd 0bf529864h
+dd 04b545d49h
+dd 085fd2647h
+dd 0524873f9h
+dd 03f76dc0dh
+dd 02d05088ah
+dd 06606afbdh
+dd 0065a9a86h
+dd 08e872346h
+dd 009057ae3h
+dd 0fc2ed6d5h
+dd 05c819a18h
+dd 0a36080fbh
+dd 042191faah
+dd 020b39d6bh
+dd 052103ba7h
+dd 0bc4656d4h
+dd 071b79f82h
+dd 0e6b3c3c5h
+dd 086caaac9h
+dd 07f30c65bh
+dd 0628ab236h
+dd 073cf2291h
+dd 06a27035ah
+dd 0430807a7h
+dd 0111ad9efh
+dd 034f6a59ch
+dd 00bcc5f04h
+dd 061915247h
+dd 086005a47h
+dd 0f10ca944h
+dd 0a3a496a2h
+dd 0fb548179h
+dd 0c2541f02h
+dd 06d37adb3h
+dd 03aec26f3h
+dd 03fc9b551h
+dd 044880d83h
+dd 043e43bc0h
+dd 036b5c259h
+dd 0716eb179h
+dd 00098ce37h
+dd 08c5577d7h
+dd 077ddb8f3h
+dd 0cf4f24b4h
+dd 000dc2245h
+dd 022541051h
+dd 045cbe090h
+dd 0c86e0de1h
+dd 0db8e7d73h
+dd 0b80629b8h
+dd 0365d25fch
+dd 0475028d0h
+dd 09e073540h
+dd 06c2479fbh
+dd 0a3b8e981h
+dd 0fcaef3c8h
+dd 0d0a90ff9h
+dd 093e3a670h
+dd 0d8adbe21h
+dd 0b3809d63h
+dd 0a40d1f6dh
+dd 046bdd3e3h
+dd 04b7c202fh
+dd 06c4063efh
+dd 0eb1d8557h
+dd 07dbc679dh
+dd 07e1ce0b8h
+dd 0bb09549eh
+dd 04ba0c0b9h
+dd 0344f80d9h
+dd 0f956c6fdh
+dd 05aff59cch
+dd 08354a63fh
+dd 0222e83f5h
+dd 086ecd4c3h
+dd 0cb3c30c8h
+dd 02a250294h
+dd 02498882dh
+dd 0b6e29867h
+dd 0e870565ah
+dd 04b7fae06h
+dd 00d72c8c2h
+dd 01690e06fh
+dd 0f23a2e44h
+dd 015e3aeaah
+dd 02b20a7c1h
+dd 003368fbbh
+dd 064041f1eh
+dd 0cb0494aeh
+dd 045229df9h
+dd 0e044eea6h
+dd 0dab87f89h
+dd 059d8c2efh
+dd 04bfba800h
+dd 093641b10h
+dd 05856cb32h
+dd 0117b6ea0h
+dd 049c39654h
+dd 09902c83ch
+dd 0e557f334h
+dd 0c7915d31h
+dd 02eb1a5b8h
+dd 0f6ddc5c3h
+dd 060ab1579h
+dd 067b10b39h
+dd 0e3d32a28h
+dd 0a1df241eh
+dd 0c222727fh
+dd 06a019fe5h
+dd 08c49c5f7h
+dd 0c9923ebbh
+dd 053898485h
+dd 0ad587644h
+dd 0f4c97c86h
+dd 03e37a885h
+dd 02b823faah
+dd 05955c6ddh
+dd 0277b780fh
+dd 05996af32h
+dd 0219bd1a3h
+dd 03e2a6f2dh
+dd 02545b536h
+dd 01afe7d3fh
+dd 008c296a7h
+dd 0edd27747h
+dd 0fd6ec628h
+dd 064517b16h
+dd 0fd5d89eeh
+dd 0b9f3ff35h
+dd 05b39b890h
+dd 07f79f880h
+dd 0968159d4h
+dd 0fadd47c0h
+dd 086532982h
+dd 0097d223dh
+dd 019e2bd74h
+dd 06ffaeb06h
+dd 074ad606ch
+dd 07114835bh
+dd 0fd29797bh
+dd 0519dc7edh
+dd 0727e3d97h
+dd 003ccd058h
+dd 0450322b4h
+dd 01033563eh
+dd 0b191814ah
+dd 09beb315dh
+dd 063f9cd39h
+dd 07c907edah
+dd 00cbfd97eh
+dd 093407528h
+dd 01c5bc178h
+dd 0297df4d4h
+dd 028ec1356h
+dd 01ca7b1b5h
+dd 049aab60ah
+dd 0c6fde28fh
+dd 057999fb0h
+dd 0380505d5h
+dd 09e9c312eh
+dd 02227c5c1h
+dd 0e73974ddh
+dd 0d7d7aaaah
+dd 041b6774bh
+dd 0eccbf77ch
+dd 027f9e538h
+dd 0cb42f814h
+dd 0e2863992h
+dd 06112ffbah
+dd 0c70d7c7bh
+dd 0b5c3958fh
+dd 0ec6d4679h
+dd 0252ec653h
+dd 0fff4e686h
+dd 0927a870eh
+dd 025093addh
+dd 06539334dh
+dd 0a8645d44h
+dd 0104552bah
+dd 06e6bc826h
+dd 0bb639196h
+dd 05a6922a3h
+dd 0b2a16d86h
+dd 04001fb9eh
+dd 07fd8f39dh
+dd 07f573110h
+dd 027105467h
+dd 0a65e039fh
+dd 092740b70h
+dd 0e904182dh
+dd 010971243h
+dd 0dd92537dh
+dd 0bd33e6feh
+dd 03b779922h
+dd 06e9b43d9h
+dd 04025a2eeh
+dd 038688b36h
+dd 069c221cch
+dd 0fd3ff54dh
+dd 054794476h
+dd 0f48de8aah
+dd 0d20d12fdh
+dd 0e4490e7fh
+dd 0862a0ad1h
+dd 03a076837h
+dd 04f7904a6h
+dd 02bab14f7h
+dd 0e67c7beeh
+dd 0c140facbh
+dd 0a62f6f20h
+dd 0b9352fe8h
+dd 0613f6e53h
+dd 05221bedbh
+dd 07d8b1805h
+dd 07514c623h
+dd 07313ed15h
+dd 008df5a5ch
+dd 0c138e574h
+dd 0e5fef844h
+dd 0a5b3e427h
+dd 0412ebc83h
+dd 0eac8e8a0h
+dd 0038c17eeh
+dd 0709efb89h
+dd 0ce10e174h
+dd 05ada59e7h
+dd 0d78b9f26h
+dd 0fd977c8bh
+dd 02e2b0864h
+dd 0b1ba98cah
+dd 0a02f8085h
+dd 0fef3fa3ch
+dd 054bb5751h
+dd 0ac50cb19h
+dd 0be9e4773h
+dd 055d00918h
+dd 06b4b2dd7h
+dd 02b722cc1h
+dd 0748810edh
+dd 0a30b7b04h
+dd 0bbfd3a66h
+dd 03df9c784h
+dd 0b738bc28h
+dd 0000762a6h
+dd 00769f866h
+dd 022241e93h
+dd 08e275a82h
+dd 0dccfb094h
+dd 011f06024h
+dd 0a39194cfh
+dd 04778943eh
+dd 05bd58adfh
+dd 059a271cbh
+dd 094b1f331h
+dd 0d5b38504h
+dd 082818533h
+dd 03f23eef0h
+dd 0b6bf7246h
+dd 03f11057fh
+dd 0980bcc11h
+dd 098de0c3eh
+dd 04fd2c706h
+dd 079b81b7ah
+dd 0244e668ah
+dd 031ff4a3bh
+dd 0f72a2f1fh
+dd 045d09162h
+dd 062d242d7h
+dd 0addcd988h
+dd 012895570h
+dd 016e78c9ch
+dd 0282688cah
+dd 09e276bach
+dd 088868f57h
+dd 076e90602h
+dd 0d8661dfch
+dd 0603e82f1h
+dd 04799e8efh
+dd 06221c653h
+dd 0b0a1e331h
+dd 0a5e89cdah
+dd 08efd4e43h
+dd 09e630a9eh
+dd 090b23cb8h
+dd 08d687852h
+dd 0a2988ee1h
+dd 00ca96619h
+dd 02ea1b5e7h
+dd 0649ad751h
+dd 0333dc91dh
+dd 09a34578eh
+dd 03d2034e4h
+dd 0df29078fh
+dd 06665c493h
+dd 09974cd8bh
+dd 0aac342c7h
+dd 06e111a8bh
+dd 0184e2f18h
+dd 06bd1e828h
+dd 0094f0ef8h
+dd 0faf8bbc8h
+dd 082a0071ah
+dd 082258ca8h
+dd 015900928h
+dd 003d72618h
+dd 050227f96h
+dd 027cc5367h
+dd 06a9bcf67h
+dd 02855a1e0h
+dd 0dc8f15d2h
+dd 01c746e47h
+dd 0189a0efeh
+dd 0fac5f29ah
+dd 09ea9679ch
+dd 06eb56671h
+dd 02dfc9561h
+dd 02c78b569h
+dd 0c4e79267h
+dd 04163c37bh
+dd 04b0023bah
+dd 085e335b3h
+dd 07d21816bh
+dd 06b40c12eh
+dd 027de8fb2h
+dd 0f07bded4h
+dd 00525523eh
+dd 0df31f043h
+dd 0e5cd81cdh
+dd 07cc192c7h
+dd 028c1c4a4h
+dd 05f2f2475h
+dd 0565e029dh
+dd 0cb810c36h
+dd 05b40583ah
+dd 0ebdf11e1h
+dd 008aaf422h
+dd 0ed2ffe44h
+dd 0ef4d9926h
+dd 02e92fc0ch
+dd 0ac96e208h
+dd 09c2fdf00h
+dd 07069bd33h
+dd 0bfda7169h
+dd 0f71e7775h
+dd 0785c104dh
+dd 063c7478dh
+dd 09559783bh
+dd 011a1e87dh
+dd 04c04cba3h
+dd 0136ba86bh
+dd 0a52fee67h
+dd 05ad1ec61h
+dd 087559ad5h
+dd 0c4c0bcc1h
+dd 08b1d1d9eh
+dd 08a4eb079h
+dd 0b052d6f7h
+dd 035dbbdf2h
+dd 03863d2bdh
+dd 03c8f3442h
+dd 01b70ab94h
+dd 02119ecf3h
+dd 0e691778ch
+dd 04df7868ah
+dd 0038910cch
+dd 0a674c951h
+dd 0ca9ec4d3h
+dd 0ce905179h
+dd 0cd4c3cc4h
+dd 0860c1049h
+dd 0f75fb7adh
+dd 0df42d0b9h
+dd 07d9fe687h
+dd 0d7b1bf35h
+dd 0269227b4h
+dd 02285c118h
+dd 0cc5ee55bh
+dd 01f0e019ah
+dd 0aa295affh
+dd 07da99714h
+dd 04261861fh
+dd 0a68a3b3ah
+dd 0eeb692c7h
+dd 06dd415b9h
+dd 09fe96c2dh
+dd 0050094fbh
+dd 09fb0fddfh
+dd 045214b41h
+dd 009b7210ah
+dd 04e80736eh
+dd 0350ff5e6h
+dd 024c8f776h
+dd 08a6a931eh
+dd 0818cd347h
+dd 04b5d0c17h
+dd 07aef94b8h
+dd 088e1a9b7h
+dd 049be4517h
+dd 0271bee2ch
+dd 0e2a42a68h
+dd 0dbf717ceh
+dd 0553f2306h
+dd 04b0e1096h
+dd 025e37183h
+dd 0bae8ac3fh
+dd 09cfc8f9eh
+dd 077f01a6dh
+dd 0f87eee56h
+dd 0842c2794h
+dd 06c68ced3h
+dd 02723dc50h
+dd 0a042e832h
+dd 0a920e8dbh
+dd 09bcbc11eh
+dd 0ca5cbd36h
+dd 0f7637b03h
+dd 0353ac7f6h
+dd 0f5bae7c6h
+dd 03caeefb3h
+dd 02ce57fefh
+dd 085009b23h
+dd 01413ea87h
+dd 0adf90ca6h
+dd 06dca7da3h
+dd 0f48d64dch
+dd 05b6d146ch
+dd 01cd50468h
+dd 0ed7742ach
+dd 0dfad9efeh
+dd 0bc202b8ah
+dd 022ece9d6h
+dd 0f9839a11h
+dd 0640631e3h
+dd 021589034h
+dd 0398f2eceh
+dd 09e81d604h
+dd 0693612a2h
+dd 04ea35062h
+dd 06ff5e862h
+dd 08b12c3d6h
+dd 04333bdddh
+dd 07ed57935h
+dd 000dcf7a3h
+dd 02a51da5dh
+dd 04038bccbh
+dd 0f586d277h
+dd 0c86f5e07h
+dd 0c889975fh
+dd 010dc0e7ch
+dd 0d811fae6h
+dd 018eb78f2h
+dd 077dab3adh
+dd 04ce491b4h
+dd 00364a871h
+dd 03997361bh
+dd 06d6da8a8h
+dd 02457b9eah
+dd 05fb5f697h
+dd 0fcb3c60ah
+dd 0eebe5f98h
+dd 09dd67a32h
+dd 007415e21h
+dd 0f04d613dh
+dd 092d404b8h
+dd 089919c85h
+dd 0d8bc31fch
+dd 03c07a662h
+dd 0518678a4h
+dd 0764b23feh
+dd 0f2be3e63h
+dd 074877d86h
+dd 07cc12b9fh
+dd 056e618e7h
+dd 0206fef38h
+dd 0694e9500h
+dd 0c00f1e02h
+dd 075bd3bd6h
+dd 0bbb3af23h
+dd 0b0ebfea4h
+dd 03f16eabah
+dd 0832f5b4fh
+dd 0d0ac8df5h
+dd 0fdcbbfb1h
+dd 0ca58861bh
+dd 0b0da514bh
+dd 0339b91f3h
+dd 0c05a1905h
+dd 00a4dc527h
+dd 014f78626h
+dd 0e7f4da49h
+dd 020fdabb2h
+dd 0162b7e49h
+dd 0486f3ebeh
+dd 0a5b2a0f9h
+dd 0b4cfca80h
+dd 07d09eefch
+dd 01c44a62fh
+dd 0d95ba646h
+dd 0fe5b8326h
+dd 09f3b8408h
+dd 01e9deb16h
+dd 086cc81cah
+dd 08e0a56efh
+dd 0e6455322h
+dd 03d708402h
+dd 0f706479dh
+dd 0d8c29a83h
+dd 06e2e0f96h
+dd 085cfd58dh
+dd 048f46ad1h
+dd 0a275a85ch
+dd 006c0a39ch
+dd 0251687b8h
+dd 045493105h
+dd 001c4b171h
+dd 0e6808d45h
+dd 040207315h
+dd 0c375de2ch
+dd 0385f83b5h
+dd 08061e969h
+dd 00c96ae46h
+dd 0433bea03h
+dd 0798b3c58h
+dd 00be99826h
+dd 0a01416d1h
+dd 0aa61dcaeh
+dd 0056c0b97h
+dd 0bec42229h
+dd 0cd97488dh
+dd 06b9b7c85h
+dd 0a1c264f6h
+dd 054c0ee3dh
+dd 0b4cb9a1ah
+dd 01fa39df1h
+dd 0db3dfba2h
+dd 076aac08ch
+dd 0c48b3cc1h
+dd 0711aeaf8h
+dd 010b11316h
+dd 0ef417e4fh
+dd 0f143771dh
+dd 0baf20244h
+dd 0ac9789ach
+dd 0b398d586h
+dd 0f28058a6h
+dd 00f9705abh
+dd 0ea44949fh
+dd 072469468h
+dd 068ca03fbh
+dd 04972376ah
+dd 069c74a41h
+dd 0811871d8h
+dd 04e946814h
+dd 087478d7eh
+dd 064f63f59h
+dd 04745913ah
+dd 0a62ef101h
+dd 074c352deh
+dd 0751cf06eh
+dd 0b09f8b46h
+dd 0ef1fe2e5h
+dd 0440fb3aeh
+dd 02582ab7bh
+dd 054cd2fe7h
+dd 0e21abb6eh
+dd 0842988aah
+dd 0adaf34feh
+dd 06c43d2fah
+dd 029d153e4h
+dd 06c3bba8ah
+dd 031cf3fcdh
+dd 05f1963d4h
+dd 00a691addh
+dd 0670a1df6h
+dd 065c8e82ch
+dd 0d17e9ed6h
+dd 0fbfd2951h
+dd 06fc46868h
+dd 01bfad17dh
+dd 0c7a72d20h
+dd 028c3a95ah
+dd 0724c64dch
+dd 0f7af4f57h
+dd 022c84e46h
+dd 0f240e2cch
+dd 09169e640h
+dd 09f927f83h
+dd 0eeccf1cbh
+dd 0c0ce8a99h
+dd 0e6eaafafh
+dd 024dc3787h
+dd 0815290adh
+dd 03c75bb0eh
+dd 0d790373ch
+dd 0879c6033h
+dd 06525dfb7h
+dd 04723d624h
+dd 0d46905cdh
+dd 0e7141727h
+dd 0a728fcach
+dd 0f0d7a519h
+dd 05665b9e9h
+dd 0d87d912dh
+dd 03bbccc2eh
+dd 02db8f1ebh
+dd 01b601fe2h
+dd 061258f16h
+dd 0d70de6f0h
+dd 0fdbc0522h
+dd 020ddf3c7h
+dd 01a553c64h
+dd 094899d5fh
+dd 0faf1ff32h
+dd 0d8e1d8cfh
+dd 087c7768ah
+dd 095751959h
+dd 05d370219h
+dd 0e3026466h
+dd 05039a9f1h
+dd 045bee1c2h
+dd 07365f43dh
+dd 0e1198427h
+dd 029dce46dh
+dd 06f4118b4h
+dd 0232092c5h
+dd 026d2c6a6h
+dd 0b783a936h
+dd 033f7ccdah
+dd 02bf67ae2h
+dd 0481bb468h
+dd 0a5d655afh
+dd 01afaedbfh
+dd 04169a72ah
+dd 02acb3d78h
+dd 0b0d7d17bh
+dd 073b7d15ch
+dd 0b2167d68h
+dd 040f059b6h
+dd 010b3e4d5h
+dd 0e45321feh
+dd 06d3e0cach
+dd 00218f63eh
+dd 0394bac39h
+dd 01bf98abah
+dd 0c02f4213h
+dd 0ef5a6a2fh
+dd 099229017h
+dd 0007578a1h
+dd 079c97d48h
+dd 0b6f34ad9h
+dd 0a76fc8c6h
+dd 08720a5c7h
+dd 0dd5c650fh
+dd 0e993586bh
+dd 0ac928286h
+dd 0e65a5737h
+dd 079752eabh
+dd 01ea2b26fh
+dd 0974e342bh
+dd 0c3ecd3c8h
+dd 0a77272c3h
+dd 077a5e6d0h
+dd 006efbe35h
+dd 0bfc899b3h
+dd 058ea6bbch
+dd 072f12156h
+dd 05ad067a3h
+dd 02a3332f1h
+dd 084444135h
+dd 0af2a0c56h
+dd 0858a15c4h
+dd 04acb4005h
+dd 062867c24h
+dd 0d14b1c31h
+dd 0db61bdf2h
+dd 08fc8f4e9h
+dd 0d98296cbh
+dd 00547c04ah
+dd 0ed2138f7h
+dd 0bce72fe1h
+dd 05bf613e6h
+dd 0bc63b203h
+dd 078ec58b8h
+dd 054aebbb9h
+dd 07e7248cah
+dd 063e3671ah
+dd 07defda74h
+dd 067540f6bh
+dd 0842348f1h
+dd 01a494916h
+dd 08b553b25h
+dd 00952f611h
+dd 0da6e5d45h
+dd 02fbf1a12h
+dd 09d5e4c57h
+dd 01d4a6d31h
+dd 01e17bc1eh
+dd 0a557054ah
+dd 055304bc0h
+dd 0288a3848h
+dd 0a3a349a7h
+dd 02813c688h
+dd 0b124479ah
+dd 02bbb6e3fh
+dd 03a66e008h
+dd 0ae3dadd5h
+dd 086dd2f52h
+dd 02bd91ff2h
+dd 0306acef2h
+dd 080da8098h
+dd 0d7269d81h
+dd 0d91a0427h
+dd 07e3ba601h
+dd 0105d9c05h
+dd 0766737b5h
+dd 0115dd852h
+dd 03c7c7abch
+dd 0a69b9f91h
+dd 0ce364edfh
+dd 05c09080bh
+dd 02f503e8ah
+dd 0cbf73b10h
+dd 05bbde47ch
+dd 053978630h
+dd 01207023fh
+dd 0e7c30721h
+dd 082b24db1h
+dd 0fa405b22h
+dd 076da7559h
+dd 0669505f6h
+dd 0c4e1ab5dh
+dd 054f6c505h
+dd 0a57bce97h
+dd 003d1d906h
+dd 0a34caacah
+dd 0e9888fdeh
+dd 07117e9e6h
+dd 0b3776c69h
+dd 0197971cbh
+dd 0d9cf39fch
+dd 0903db863h
+dd 03742d4d8h
+dd 0ed823193h
+dd 0907a037ah
+dd 07cca792ah
+dd 02a029729h
+dd 0bd201957h
+dd 091a8fd35h
+dd 0d8f70ca5h
+dd 0669cffa5h
+dd 0533ec75ah
+dd 0af67e482h
+dd 07414a403h
+dd 08d91aee6h
+dd 0a1668857h
+dd 0725fe46eh
+dd 09f5fcef0h
+dd 0e6da578bh
+dd 02e0ca906h
+dd 0aaf3e051h
+dd 01020f52eh
+dd 0d200d797h
+dd 04d3e85aah
+dd 08ba52db4h
+dd 0d1a57839h
+dd 0ed476b3ch
+dd 006dcfd25h
+dd 05d845cf6h
+dd 06fcfe0b7h
+dd 05611e71ah
+dd 0fed8d42eh
+dd 0f2488277h
+dd 023d60616h
+dd 0c876769ah
+dd 05ddc5cedh
+dd 070961385h
+dd 059d3d730h
+dd 00ed52408h
+dd 0a2a12d8ah
+dd 0ee5bce41h
+dd 0a544ad83h
+dd 087a87da2h
+dd 055e8959ch
+dd 0e7f7da96h
+dd 0ab8e4ec6h
+dd 0084a0272h
+dd 07f9915a2h
+dd 0102535a8h
+dd 07b170310h
+dd 0ee23e9feh
+dd 00dffb87eh
+dd 00d79c4e4h
+dd 065227c9dh
+dd 037ce8de3h
+dd 02d551853h
+dd 00a4ef9c6h
+dd 026e48821h
+dd 0546a1929h
+dd 07f8f2064h
+dd 05c521b90h
+dd 0e7c976c6h
+dd 07083f885h
+dd 0a234b0e3h
+dd 08b8d39a4h
+dd 06c29549ah
+dd 0da743b60h
+dd 02e930d10h
+dd 01ba2d321h
+dd 0a4d7d951h
+dd 0ad805e18h
+dd 06dc49105h
+dd 0f6569fa5h
+dd 05987f367h
+dd 0fd783421h
+dd 05f722c21h
+dd 07116f9fdh
+dd 0ed89b61fh
+dd 05507f7b3h
+dd 072dd97e7h
+dd 0244c160eh
+dd 0f082e6d7h
+dd 0c84d1823h
+dd 0a3146b72h
+dd 01a557c70h
+dd 0ee96bbcah
+dd 0ca49f5e2h
+dd 0494f7b24h
+dd 0fc365e98h
+dd 03c8e9ca2h
+dd 0b9d2c4f6h
+dd 0a9ae8268h
+dd 0510ce236h
+dd 0b9dd09beh
+dd 0055ec06dh
+dd 0a39a5900h
+dd 060e9e598h
+dd 09147cfd9h
+dd 024c5d733h
+dd 0f4ecc533h
+dd 014b08b34h
+dd 0d0eac9bch
+dd 0dfb2a2bch
+dd 09c9ee722h
+dd 0a9bda04bh
+dd 043bb273eh
+dd 09b1c77fbh
+dd 0036404deh
+dd 0746f960dh
+dd 0765d0f8ch
+dd 0844290bah
+dd 055ede2fdh
+dd 00682a5efh
+dd 0d1187569h
+dd 0dc172dd9h
+dd 04a2e00e0h
+dd 032ee66c8h
+dd 0c10432c3h
+dd 0dc689816h
+dd 007541782h
+dd 03b490c8fh
+dd 0703a6c8eh
+dd 0845c9efah
+dd 0363a89f6h
+dd 02541bc40h
+dd 0e1b90a44h
+dd 0a210677ah
+dd 000dc44beh
+dd 046e6bd75h
+dd 0b8c107e9h
+dd 0e97b705ah
+dd 0b5182d0ch
+dd 0da323a1fh
+dd 05822598ch
+dd 05754ddd3h
+dd 011526407h
+dd 0d129bf9fh
+dd 0864fc721h
+dd 02a189af7h
+dd 01866e0f6h
+dd 0a75c995ch
+dd 089e3d5e5h
+dd 08dc987aeh
+dd 048d34bceh
+dd 05f4e6551h
+dd 0817257c5h
+dd 081049555h
+dd 083d99118h
+dd 0e101d1e9h
+dd 0d359722eh
+dd 005f059e0h
+dd 0be0e99b0h
+dd 0fa17edd2h
+dd 0b1e3957dh
+dd 00a2242bch
+dd 0fa56e0f4h
+dd 05f064c80h
+dd 0f8bb63e1h
+dd 030384b5ch
+dd 04b677b01h
+dd 0c84638a0h
+dd 0af22b995h
+dd 0026d501bh
+dd 00cef07d6h
+dd 0fc89c60eh
+dd 02254e313h
+dd 0591de91eh
+dd 0dc665dc3h
+dd 012f57b64h
+dd 00b2539cbh
+dd 0a5b9352fh
+dd 0944e28d7h
+dd 0c8886373h
+dd 03786a7b0h
+dd 026fb416eh
+dd 0cdb35222h
+dd 0801e6e41h
+dd 01e7afb10h
+dd 0ae321623h
+dd 041d07d9eh
+dd 0979fa539h
+dd 0b60aae56h
+dd 03bffb645h
+dd 0894b562ah
+dd 046b31e3bh
+dd 02c321562h
+dd 0a665dc05h
+dd 02ec88d05h
+dd 05e884071h
+dd 05c5d35adh
+dd 0209dca28h
+dd 00dc314c5h
+dd 088c3c5ddh
+dd 05291757fh
+dd 0dd175ac9h
+dd 0c593136bh
+dd 0d64563c2h
+dd 0b84f9cf0h
+dd 091f7a4cch
+dd 02ca1fb95h
+dd 0311a1e6eh
+dd 07c617d85h
+dd 002628ceah
+dd 0b80d5428h
+dd 0d104fc92h
+dd 08b67d595h
+dd 0a5db270ah
+dd 0f509e24fh
+dd 0133dc53ah
+dd 03eeb8a86h
+dd 0ce5d299fh
+dd 079fcb988h
+dd 08661ce4bh
+dd 0282705d4h
+dd 0f3183cc6h
+dd 0541077edh
+dd 03eb22f48h
+dd 079cd7e9dh
+dd 0bc59c692h
+dd 0f61e76bah
+dd 0512f545ah
+dd 0f9efc5fbh
+dd 0a45ca264h
+dd 0701905ebh
+dd 0b358a067h
+dd 02c918e36h
+dd 072742c2fh
+dd 060be5c58h
+dd 063c11659h
+dd 0fd3cd740h
+dd 097b2c486h
+dd 00fa02cd6h
+dd 02fc332f2h
+dd 01ff90af9h
+dd 0d20d2098h
+dd 0547061dfh
+dd 04dd613ech
+dd 0465e3682h
+dd 0d9865397h
+dd 0e9b4d28dh
+dd 0f378b435h
+dd 0afc8b871h
+dd 0ae5ef29dh
+dd 0ddf8c802h
+dd 09171c06dh
+dd 073136dceh
+dd 020e8b060h
+dd 0bd638d0eh
+dd 02128e65fh
+dd 055e3096eh
+dd 0bebaad87h
+dd 00bb0a859h
+dd 0ba10fba0h
+dd 0de65dba1h
+dd 03ef3c370h
+dd 0dfcc2659h
+dd 01695f045h
+dd 0a282cc68h
+dd 07339fc2fh
+dd 0592992dbh
+dd 01661922ch
+dd 00d35ea12h
+dd 03be49df3h
+dd 0d8b9f510h
+dd 0b470ea53h
+dd 0df88c89eh
+dd 0fcd56ed3h
+dd 090391002h
+dd 0fc566b16h
+dd 0443bfd6fh
+dd 0da6c5f96h
+dd 0ed60f2f3h
+dd 01aae50dfh
+dd 00856aa77h
+dd 0c547995bh
+dd 0368f7c80h
+dd 03d8f5f38h
+dd 0d5ed5177h
+dd 04a75e356h
+dd 07657bba4h
+dd 0134f6b04h
+dd 0fab7cf86h
+dd 0d76f2942h
+dd 002122481h
+dd 05c9fd537h
+dd 0fcc20862h
+dd 0949dadb7h
+dd 030f56362h
+dd 0a7392935h
+dd 06c104786h
+dd 0b1e7275ah
+dd 01113d2bah
+dd 0586158bdh
+dd 0f1986674h
+dd 014ff80f6h
+dd 03a6594e1h
+dd 0a5c4e2feh
+dd 079fc78dfh
+dd 0bba59bd9h
+dd 0f7b13cc3h
+dd 0907d610ah
+dd 0e432749eh
+dd 041152056h
+dd 0ca19ebc6h
+dd 0c130071ah
+dd 0b0502d0ch
+dd 018efd957h
+dd 0a8d499bdh
+dd 0756db055h
+dd 0a07dd5ebh
+dd 0cfba7e62h
+dd 0b12f3755h
+dd 021702245h
+dd 03535fc2ch
+dd 04f2b27f1h
+dd 0c24becadh
+dd 0ab40fdc9h
+dd 0355c7439h
+dd 05b530adfh
+dd 0a76a8b55h
+dd 0ddccb638h
+dd 012300220h
+dd 0e434e247h
+dd 0e6801a62h
+dd 01d7949ceh
+dd 017f56954h
+dd 038e10a2ah
+dd 0efc0fc08h
+dd 0b199094eh
+dd 0c14498eeh
+dd 0c4e2aa9fh
+dd 0fed2e957h
+dd 081ed905ah
+dd 0343e6784h
+dd 0c94e77bdh
+dd 07aa51f16h
+dd 0d206dcaeh
+dd 0d0db59abh
+dd 04cc3478fh
+dd 0a51f43f2h
+dd 07e01ecd7h
+dd 080e70025h
+dd 069e8d43eh
+dd 0c0a00a56h
+dd 095f19e3ah
+dd 071313ca8h
+dd 0ec7a3bd6h
+dd 081b41d9ah
+dd 08eb63314h
+dd 06c7d9bb7h
+dd 084b61007h
+dd 0939104f8h
+dd 0f2908832h
+dd 04b44f304h
+dd 0958e08c3h
+dd 017b3c0b3h
+dd 041659fadh
+dd 0f5ab0533h
+dd 070d3f0f8h
+dd 08107264bh
+dd 04e27e91bh
+dd 0da92be39h
+dd 0e0599f7ch
+dd 0e31b5651h
+dd 051d366eeh
+dd 014f53879h
+dd 0f2b01096h
+dd 06e17b81dh
+dd 0a4175fbeh
+dd 0893ca869h
+dd 05af810e6h
+dd 0717f7187h
+dd 025fd1fa2h
+dd 0a2ae8607h
+dd 0a9aa942ah
+dd 0ffc461cch
+dd 00445c73dh
+dd 0095aa823h
+dd 0ecffdd49h
+dd 0c343917bh
+dd 016e31ad7h
+dd 0a40098f5h
+dd 09be2ee79h
+dd 08f68a383h
+dd 00575f8aah
+dd 09bab6608h
+dd 0a9285310h
+dd 087aeef3dh
+dd 00ca1d3a8h
+dd 0b73910c7h
+dd 07dd3c21bh
+dd 0135f8106h
+dd 0540ddfc7h
+dd 08ff191adh
+dd 07e52fe88h
+dd 01bce6011h
+dd 0f3e686dch
+dd 00a259076h
+dd 06e52f1dch
+dd 07251a51bh
+dd 02ed58742h
+dd 03a693769h
+dd 099132d22h
+dd 0e03ed8c8h
+dd 076b962b5h
+dd 071586d2dh
+dd 0b94ac002h
+dd 0af821323h
+dd 0abfd4e69h
+dd 07d58b325h
+dd 0dcc6e381h
+dd 056a334afh
+dd 021880e27h
+dd 045835629h
+dd 044c25ebah
+dd 0fb00f37dh
+dd 0da8ff9bfh
+dd 08a5ba089h
+dd 033f0a72fh
+dd 08d5beb4ah
+dd 05e56e364h
+dd 04a104b89h
+dd 07ae08939h
+dd 0ba09ecb1h
+dd 06428e55ah
+dd 0eac49cc3h
+dd 0b64448e5h
+dd 0efeeda93h
+dd 0ec6c2d48h
+dd 08b6e5860h
+dd 0d759d68eh
+dd 0b2d1130bh
+dd 018661a80h
+dd 04f3ba82dh
+dd 05b5230efh
+dd 099f6f931h
+dd 09860ef06h
+dd 064cec7ffh
+dd 0d6174f09h
+dd 028ef3577h
+dd 015ae454bh
+dd 0056b3cd9h
+dd 02617817bh
+dd 088140d22h
+dd 0938b4f7dh
+dd 0591092bch
+dd 03e8ef107h
+dd 08b2121e6h
+dd 0e15629afh
+dd 0ec3b5f09h
+dd 0e637eac2h
+dd 06adadf12h
+dd 0d43015f4h
+dd 0138495dah
+dd 0bdc1f834h
+dd 01196021fh
+dd 085567c13h
+dd 0af09cec9h
+dd 021a044f4h
+dd 09fcc2a12h
+dd 09e7de9b1h
+dd 01673d146h
+dd 0c8ec0f46h
+dd 03befb1ffh
+dd 001b26584h
+dd 070c1c4dah
+dd 00f09f5e8h
+dd 048bbc5a7h
+dd 08c5859e1h
+dd 031b66ce2h
+dd 030710cb3h
+dd 01dde40e6h
+dd 054fcddfeh
+dd 0c60c71c6h
+dd 0124bf9fbh
+dd 06940c33ah
+dd 09362eb33h
+dd 0cf1cd2c4h
+dd 0b5f9d64dh
+dd 07a504137h
+dd 06c5d9bc3h
+dd 0937d31ddh
+dd 007b88dd5h
+dd 0048838f8h
+dd 0cd936d42h
+dd 0af36e9a3h
+dd 09d01b725h
+dd 0c0805e5fh
+dd 03830a1ach
+dd 08a6c4342h
+dd 0ed7d12bah
+dd 05030debeh
+dd 05886c2d4h
+dd 0507dc846h
+dd 0765f6683h
+dd 0a3c2d3aeh
+dd 074b0b963h
+dd 0a078eecch
+dd 0250d6492h
+dd 04d58bc81h
+dd 0e5515ab3h
+dd 01ce6e3feh
+dd 0d5eddb8dh
+dd 01df51ef9h
+dd 06254cd11h
+dd 0a7fe99c4h
+dd 094005dc2h
+dd 075feeee5h
+dd 018a3f198h
+dd 0cf106b39h
+dd 0b5d267d0h
+dd 0250c5784h
+dd 03757d2f1h
+dd 0ab1d6890h
+dd 00f8c41b4h
+dd 0f33e150bh
+dd 0178a0f60h
+dd 0e7afcea9h
+dd 0102d40f4h
+dd 0a7f7372fh
+dd 023060e6bh
+dd 04185830eh
+dd 0a77d55e7h
+dd 03232f834h
+dd 008c435e4h
+dd 0b1328906h
+dd 0938f8c70h
+dd 0e4f590f7h
+dd 004439539h
+dd 050d1063eh
+dd 0cf512dc7h
+dd 0aaa627cah
+dd 0dbe4c5f1h
+dd 09f554383h
+dd 0857f3277h
+dd 08e1abc09h
+dd 0d5b606c8h
+dd 01774f9f1h
+dd 0770f073fh
+dd 07101142fh
+dd 0eb9957dbh
+dd 00ff49606h
+dd 017cac7a2h
+dd 06d71e119h
+dd 0fe793bebh
+dd 05c0bf69eh
+dd 0b674e935h
+dd 0f2780da7h
+dd 084c2b572h
+dd 0ff62af69h
+dd 0e53f6328h
+dd 0ace37c5fh
+dd 068db738bh
+dd 0d593e5a1h
+dd 01c60251fh
+dd 0f49f6ec4h
+dd 03db9f777h
+dd 0a2499fdbh
+dd 0352e692fh
+dd 0cb39efc0h
+dd 04a74eaefh
+dd 01543e489h
+dd 042f7cb04h
+dd 06f2ccadfh
+dd 0d28530b1h
+dd 041fe4dfdh
+dd 086d16d82h
+dd 0ca367678h
+dd 05d5fa2e2h
+dd 05244037eh
+dd 0f44a10f0h
+dd 0175ec180h
+dd 0ff8d40a9h
+dd 06a0cd0bch
+dd 005dac8d9h
+dd 0f05d3768h
+dd 06578e5ebh
+dd 068051857h
+dd 0a28a8b36h
+dd 0e768fd40h
+dd 09686421dh
+dd 022c754f7h
+dd 049f5a5a9h
+dd 0d35d8963h
+dd 000663b6eh
+dd 096d0905eh
+dd 07b24fc9ah
+dd 0bd0bdd92h
+dd 09619ab9ah
+dd 0c44d40eah
+dd 0dd1e88ffh
+dd 0498e29f6h
+dd 017ee7d54h
+dd 045490dc4h
+dd 0bf39e780h
+dd 023691758h
+dd 0b985d23dh
+dd 017b345e1h
+dd 04f4c04efh
+dd 07c88f008h
+dd 03055d3f7h
+dd 084a06cf4h
+dd 03b019dcch
+dd 023a92eddh
+dd 0834ee40dh
+dd 0386b1271h
+dd 0ece81a78h
+dd 0f004dcedh
+dd 03f036b51h
+dd 063cb0ac0h
+dd 049c4d141h
+dd 0db39a6b3h
+dd 0e8032955h
+dd 0d7f0acfdh
+dd 0acf2f958h
+dd 05f71adb7h
+dd 025202909h
+dd 0f2d2b7c9h
+dd 0a86c2a2ch
+dd 0b1434464h
+dd 03e0783beh
+dd 0835d2da8h
+dd 05fba6610h
+dd 091f8b840h
+dd 066ccdb04h
+dd 0c986dcddh
+dd 0b795aaadh
+dd 073050a94h
+dd 0d0718c56h
+dd 06fdc9e3ch
+dd 06bb001bah
+dd 08d8ecb8dh
+dd 073714f36h
+dd 0f6274330h
+dd 06b4d4f5ah
+dd 09ac4fd33h
+dd 07646385ch
+dd 03c622120h
+dd 0cd9ebce0h
+dd 0ebb428feh
+dd 04697ec22h
+dd 029876710h
+dd 0dae857dfh
+dd 08fec372dh
+dd 090ef4ce6h
+dd 06e2eda6fh
+dd 01593583ah
+dd 099968747h
+dd 0e665e9d7h
+dd 0da87a1b1h
+dd 0ac4b1d23h
+dd 0cd0601c8h
+dd 0e6b30ea2h
+dd 03bf14aeah
+dd 05245196fh
+dd 035996961h
+dd 0877de776h
+dd 026445ac0h
+dd 0243e9be4h
+dd 0decd86dfh
+dd 069420312h
+dd 0f18f3772h
+dd 0881bd27eh
+dd 0223e633eh
+dd 0db6f1dcah
+dd 021e5cc76h
+dd 0e59b7fc0h
+dd 012fa301ah
+dd 07a6b7cc0h
+dd 02e9d3ee6h
+dd 04d663c30h
+dd 0906f344dh
+dd 059099275h
+dd 08ddec064h
+dd 019f76bdch
+dd 0beffe9bfh
+dd 021b68efah
+dd 06098c575h
+dd 0ea5d96cch
+dd 0e9fbe395h
+dd 0b715af88h
+dd 097a9f506h
+dd 05b0a76c7h
+dd 015b5e8e5h
+dd 0c5c04136h
+dd 0375b21e1h
+dd 02acb6e3ah
+dd 018be9fc2h
+dd 086ed4f4bh
+dd 0619d46e2h
+dd 03483ed46h
+dd 0dd082812h
+dd 0dc9b4d63h
+dd 081c46903h
+dd 066fccc58h
+dd 018eac5d2h
+dd 03a66f2bch
+dd 03bc571beh
+dd 099696aafh
+dd 01069bb45h
+dd 06a4ef2e0h
+dd 0453a3ce4h
+dd 01fd0c059h
+dd 0796f0d45h
+dd 08aee2a4bh
+dd 042d2bb97h
+dd 025d4d57ch
+dd 0b701e098h
+dd 0fe4b5a34h
+dd 081e12515h
+dd 09874eceeh
+dd 0fe45b9c3h
+dd 05fd11141h
+dd 09bab853eh
+dd 09a22e2d3h
+dd 0172e9d78h
+dd 08804d0ebh
+dd 00ab35bfch
+dd 046862e64h
+dd 0158aec99h
+dd 0665f59c9h
+dd 0c90b8014h
+dd 0beec8c5ch
+dd 0ca53f5dfh
+dd 04ad9195bh
+dd 09e80b0f0h
+dd 0ce2e543bh
+dd 0c51b7266h
+dd 0322972afh
+dd 02a7c663ah
+dd 07fce6d2bh
+dd 02d632644h
+dd 0cd25bf16h
+dd 042eb1804h
+dd 0b6ff5881h
+dd 075933a66h
+dd 016be615eh
+dd 0b8a021cdh
+dd 035b73a83h
+dd 09d989c85h
+dd 02a770d0eh
+dd 0cc364e17h
+dd 04afc559eh
+dd 0daf9d156h
+dd 07b2e04e6h
+dd 0e137ed91h
+dd 0c4f3e5f1h
+dd 0ec72e108h
+dd 0cc46f6b3h
+dd 0d07623e1h
+dd 0a0322b03h
+dd 06dec2795h
+dd 02fd9a82ch
+dd 0ecad2727h
+dd 02d087b75h
+dd 029322734h
+dd 07818cee0h
+dd 0d224b797h
+dd 00c2894a9h
+dd 0a8bbf92ah
+dd 0ae756beah
+dd 0b9e83065h
+dd 0dcc221edh
+dd 0e3c0e897h
+dd 0736fd3a2h
+dd 075f2000fh
+dd 047fed738h
+dd 06da149cfh
+dd 0ecd4bf60h
+dd 0ce34238bh
+dd 051079eb5h
+dd 01020e227h
+dd 0e50e379bh
+dd 033d0bc91h
+dd 0caed0407h
+dd 0fc235330h
+dd 000df3df1h
+dd 08189e188h
+dd 0db48f11ah
+dd 026fb8ad6h
+dd 0ba6171bah
+dd 0a5e783d9h
+dd 0b6d2efb9h
+dd 0a80c2776h
+dd 07f04a408h
+dd 0a08ce7fbh
+dd 055d7b099h
+dd 08c66179ch
+dd 0775cc4a7h
+dd 0fd8bdba9h
+dd 04418d15ah
+dd 06db71025h
+dd 00884ad92h
+dd 098b93affh
+dd 0afafdb20h
+dd 090cca2ffh
+dd 0f91cf15eh
+dd 0cb2eed13h
+dd 0087c09bbh
+dd 0865470b8h
+dd 038d8f88fh
+dd 06ce7ff17h
+dd 0a63b5fa9h
+dd 02fd36f04h
+dd 0e8e30a0eh
+dd 0100b28b0h
+dd 09519ce49h
+dd 039263ddeh
+dd 08ff3bdf8h
+dd 07b3e39bch
+dd 0b914a482h
+dd 0ab498c73h
+dd 04cb732d7h
+dd 06cf9993dh
+dd 0b00561f9h
+dd 0e8d5d68eh
+dd 00f6785b0h
+dd 02001a4f3h
+dd 071d84465h
+dd 094862a9dh
+dd 0360e76fah
+dd 0a2554ad0h
+dd 0aafba910h
+dd 0382d9923h
+dd 00d34dd16h
+dd 0d7128d91h
+dd 013f4aad1h
+dd 07572ae7eh
+dd 087822c01h
+dd 0d1a815c7h
+dd 0a8245f10h
+dd 07275f5e3h
+dd 017825448h
+dd 03366b273h
+dd 09c298485h
+dd 0fe1e87e0h
+dd 086bf0aa7h
+dd 06e15349dh
+dd 025bbff86h
+dd 02dd2561fh
+dd 0dec39a59h
+dd 0dfdfbcc4h
+dd 0af665ac5h
+dd 0576b8098h
+dd 082942034h
+dd 079260b3fh
+dd 09a1bc449h
+dd 0cf2742deh
+dd 0ced3de19h
+dd 07113ab4ch
+dd 0ec223b00h
+dd 092d35ff1h
+dd 0ef4a68c1h
+dd 0c6570b54h
+dd 02d1fb05eh
+dd 03a64744eh
+dd 0f8844091h
+dd 07cd69f60h
+dd 0d271fbb9h
+dd 0eef9ca98h
+dd 07535ccb2h
+dd 034ff0209h
+dd 0dbe5de44h
+dd 00e321486h
+dd 09364f2f2h
+dd 0c27d3621h
+dd 0768fda51h
+dd 0b88253bdh
+dd 04e1207b2h
+dd 005223466h
+dd 043f543cfh
+dd 069a245c5h
+dd 01efd8165h
+dd 01fac6e4ah
+dd 0921ed1c2h
+dd 07d28009eh
+dd 0f6b3fcebh
+dd 0fff42275h
+dd 021c72f77h
+dd 0ed13012ch
+dd 0656ef054h
+dd 02bff5abah
+dd 08181ad5eh
+dd 04804c30ch
+dd 06998fc66h
+dd 0e6309c78h
+dd 05727f823h
+dd 0df9c3466h
+dd 009fdb045h
+dd 09da066e7h
+dd 07d995d52h
+dd 003e796a5h
+dd 0eac311e5h
+dd 0d339f6c7h
+dd 02ccf1486h
+dd 0edbbe992h
+dd 06101cb24h
+dd 030a6e33ch
+dd 03169bb09h
+dd 0991f7cb6h
+dd 0ccc04239h
+dd 07092c267h
+dd 0691ce0a9h
+dd 09c0cf953h
+dd 09bf96bc9h
+dd 011997e18h
+dd 00c3c9faeh
+dd 05dbb13eeh
+dd 02b230f77h
+dd 03ad968e4h
+dd 05dc7eca2h
+dd 02d03e1f6h
+dd 0a3f0655dh
+dd 0dad9a145h
+dd 04e558dd5h
+dd 047df98c2h
+dd 0d4bfc96bh
+dd 07c44bc11h
+dd 0432917b9h
+dd 0db09380ah
+dd 00d98dd99h
+dd 0c06abe4ah
+dd 06c57a3ech
+dd 0280caa14h
+dd 03c90858dh
+dd 064def2ceh
+dd 02170971dh
+dd 0de522854h
+dd 0f7bb7696h
+dd 078dad371h
+dd 04ca69f66h
+dd 0273c9fc1h
+dd 07cc4016fh
+dd 0b9d0d8e0h
+dd 0ee680cbah
+dd 03c60873ch
+dd 080a774e6h
+dd 036b0b2dch
+dd 0daabe2b3h
+dd 00400f4d2h
+dd 02ac9957bh
+dd 0ae1eee1ch
+dd 03e316557h
+dd 038fb2dfeh
+dd 0ff54244dh
+dd 0c9be3a4dh
+dd 045e49089h
+dd 09fb8c00bh
+dd 0f53ee7c3h
+dd 06c12bb85h
+dd 06592edd0h
+dd 0db97d269h
+dd 028236c79h
+dd 08be44907h
+dd 01700b32ah
+dd 05a5b27d2h
+dd 0abb6354ah
+dd 0f8ca610fh
+dd 0f9b525b1h
+dd 0e0969b16h
+dd 0f6e87f48h
+dd 036f231c8h
+dd 081c034c7h
+dd 07cb42e83h
+dd 02bcbdffbh
+dd 0c252e855h
+dd 0a74e56d4h
+dd 0130ef4d2h
+dd 05af53acah
+dd 09cb82f1ch
+dd 00ab5f986h
+dd 01e9efd12h
+dd 07db69914h
+dd 08932685ah
+dd 03dfb2726h
+dd 02e22e848h
+dd 014833321h
+dd 074cab20ch
+dd 08f20f946h
+dd 032f0e872h
+dd 043d6162eh
+dd 0b7963126h
+dd 0afb02bb3h
+dd 0604fca3ah
+dd 062556520h
+dd 025864abbh
+dd 0caeed906h
+dd 0780cea25h
+dd 054613b82h
+dd 04bb79557h
+dd 0e8e1f043h
+dd 0f88166feh
+dd 07e3c1575h
+dd 03b3cd3d4h
+dd 0def23abah
+dd 09f18e049h
+dd 053aeca46h
+dd 064006fd8h
+dd 0860611abh
+dd 041ebc5f0h
+dd 09b800c8ah
+dd 096b37436h
+dd 046b9637ch
+dd 04989982fh
+dd 0beced127h
+dd 06e2bf4f7h
+dd 0a2d81876h
+dd 0f7e795f2h
+dd 03b8eaf3bh
+dd 001954c27h
+dd 05ac640afh
+dd 0663512f9h
+dd 09c4ee1f8h
+dd 02832afc9h
+dd 08e797bdfh
+dd 024230355h
+dd 0a3baa21ah
+dd 015d4d55dh
+dd 0df586f8dh
+dd 0eac8ddb7h
+dd 0023d666bh
+dd 062d60abdh
+dd 0a8dfd0c1h
+dd 080e80dbfh
+dd 0022ae364h
+dd 0e9c71501h
+dd 0de74b530h
+dd 0080b42bbh
+dd 0f904cb3fh
+dd 02f831f84h
+dd 0125dad67h
+dd 0518a7f75h
+dd 0eff523eeh
+dd 095f09009h
+dd 054b4ac8eh
+dd 0cbbd4d11h
+dd 0cb15061dh
+dd 07fcb63fah
+dd 079da4b62h
+dd 0fb6f2ff5h
+dd 07249cb33h
+dd 0e720086ah
+dd 07373b599h
+dd 0b0e724d6h
+dd 0d7cae31bh
+dd 04fd98adfh
+dd 010ccc0d9h
+dd 0af515a4ah
+dd 0d782f529h
+dd 0fe41897bh
+dd 0621e64f0h
+dd 0852ae44fh
+dd 044fc4cc0h
+dd 04fb4b45ah
+dd 0c1755ccfh
+dd 06bec0526h
+dd 062199daeh
+dd 049fe74d2h
+dd 0a3a582c1h
+dd 0ce2bb777h
+dd 0f5f471a6h
+dd 0c45091d9h
+dd 069471df5h
+dd 023218fa5h
+dd 085d49abah
+dd 0bbf0c82ch
+dd 0ae8dd050h
+dd 046745e74h
+dd 0b61976a9h
+dd 038c2a516h
+dd 0c0b5f499h
+dd 0ac239c4bh
+dd 052cc898eh
+dd 041c57a35h
+dd 0812b270fh
+dd 026433663h
+dd 076588fdch
+dd 01978a66ah
+dd 004c51b08h
+dd 06ecdac92h
+dd 0b8c3a7ach
+dd 0ddbb5ddah
+dd 090744c3ch
+dd 096e4409ah
+dd 0bd89a69bh
+dd 08c6102cah
+dd 0c66a61b5h
+dd 05f02d2e1h
+dd 0b719284dh
+dd 07ed90c08h
+dd 09753d8b5h
+dd 0c435b232h
+dd 0afe90538h
+dd 0bf00dfcah
+dd 0e66242fdh
+dd 032101d31h
+dd 0feeff8adh
+dd 028817fd3h
+dd 0421b28aeh
+dd 09f904cd3h
+dd 0e490a726h
+dd 0b3b59e19h
+dd 09c58cae9h
+dd 0432405c5h
+dd 01dc6d8d4h
+dd 08c2a9af4h
+dd 0120a9ab6h
+dd 06eab3a4ah
+dd 06ceba8a0h
+dd 0b8ec692ah
+dd 09fcd456fh
+dd 0201733aeh
+dd 02c8533b6h
+dd 0fd001527h
+dd 094adada5h
+dd 0208e4da1h
+dd 0f885699bh
+dd 0d5f54bbbh
+dd 03ba9ec33h
+dd 0f333c6bfh
+dd 064771b4eh
+dd 0b5fc4da3h
+dd 0757152a6h
+dd 0866e61a5h
+dd 0b1c4ab47h
+dd 0dbe25b37h
+dd 03a29a728h
+dd 0704ef266h
+dd 074001c52h
+dd 0e1248c58h
+dd 0c4669523h
+dd 08434c799h
+dd 0e88460deh
+dd 05b0994ach
+dd 0d622162eh
+dd 07ec71bc2h
+dd 09328b409h
+dd 097a54b20h
+dd 016cc0694h
+dd 046877405h
+dd 05307bcd4h
+dd 0c027679ch
+dd 079706a65h
+dd 04f05a992h
+dd 0799710dbh
+dd 0f6608d11h
+dd 0fc6be2c1h
+dd 08d64d21ah
+dd 07380d0f0h
+dd 018eec255h
+dd 040620281h
+dd 0528194aah
+dd 063781b7ch
+dd 09c0fcc4bh
+dd 0e2784314h
+dd 0edd0b008h
+dd 0b59ce527h
+dd 091a58ed1h
+dd 0554ab91eh
+dd 06b0d573eh
+dd 059ca62fdh
+dd 0694791b4h
+dd 07804d7cah
+dd 0034e8983h
+dd 07f4bb098h
+dd 0d2d9f342h
+dd 0faa96d74h
+dd 05331a8c7h
+dd 04b4cc8dch
+dd 0011d4eb1h
+dd 014e806a9h
+dd 09ab56270h
+dd 01e0cc290h
+dd 058275e62h
+dd 0ceab1ff2h
+dd 079882132h
+dd 0f09f5207h
+dd 0d275faf8h
+dd 059b38c35h
+dd 0ba616d23h
+dd 06fc281e9h
+dd 053968f6eh
+dd 0fe4b7adeh
+dd 071a44369h
+dd 001e86222h
+dd 012d8d6edh
+dd 05b790a28h
+dd 0bbb4b01ch
+dd 0149d12dch
+dd 07a80c032h
+dd 0645b340eh
+dd 0ba062155h
+dd 0981b6ebbh
+dd 0a8062c81h
+dd 0a2421e41h
+dd 0cd84e074h
+dd 0bff5e0deh
+dd 0a2c234f0h
+dd 073595cf0h
+dd 03afcee22h
+dd 09da4e1ech
+dd 0dd05656bh
+dd 07961d271h
+dd 0446a1a21h
+dd 0cf87f8cfh
+dd 080bfd58eh
+dd 05c13f477h
+dd 0d5cf4863h
+dd 0be5c38a5h
+dd 057214f18h
+dd 0cb3315d5h
+dd 057d691c9h
+dd 0a9a36568h
+dd 0a8cd60ach
+dd 0ed49a9dah
+dd 0e7ba8f17h
+dd 09781e20ah
+dd 05d7835dah
+dd 0a90a677ah
+dd 0cc2faf85h
+dd 07bbd9897h
+dd 0162ce22fh
+dd 0c0c0d7d9h
+dd 0d61e7ce8h
+dd 02a01eee2h
+dd 06c041a7bh
+dd 093aab521h
+dd 018aa1fddh
+dd 022e66d75h
+dd 06b26854fh
+dd 0f15e3d29h
+dd 022d446c8h
+dd 04095a7bfh
+dd 02482f03ch
+dd 086c7d40ah
+dd 068ce288ch
+dd 0755ed6f1h
+dd 0b136b807h
+dd 07adf31c6h
+dd 01cb33f42h
+dd 0afdc2825h
+dd 093ab28b0h
+dd 0a5392189h
+dd 010b91f65h
+dd 0aca24affh
+dd 079797a6ch
+dd 003f2d775h
+dd 037cfdd07h
+dd 0dfd5db1dh
+dd 0c34ec427h
+dd 0950a9a8bh
+dd 0974d4186h
+dd 0582624dch
+dd 0699bc027h
+dd 002e60880h
+dd 06b3abc14h
+dd 029f88969h
+dd 081faec96h
+dd 06670dd79h
+dd 0c100f579h
+dd 0bd969fa4h
+dd 0c7cadf11h
+dd 008d577b0h
+dd 0334716cfh
+dd 0893e73e9h
+dd 0cea78602h
+dd 0fb8c70f6h
+dd 01ee4a10eh
+dd 0aaded606h
+dd 09fd399edh
+dd 029ea22a0h
+dd 01861b4a8h
+dd 0f716e13fh
+dd 0c3ed7e24h
+dd 0195f2bb1h
+dd 0dc31346eh
+dd 07f798226h
+dd 054cc7d96h
+dd 0411eb93fh
+dd 041a0a803h
+dd 0813cd640h
+dd 0b96badc9h
+dd 070614ecbh
+dd 092ee6dech
+dd 0a7a775a8h
+dd 0a6ad8288h
+dd 08eeede98h
+dd 0ec2c5d32h
+dd 0926803c4h
+dd 0d571a696h
+dd 0e7f2918eh
+dd 07c2a5c81h
+dd 0b0d929a8h
+dd 08598baf8h
+dd 0c2702defh
+dd 0a1fd7f9ah
+dd 031d09914h
+dd 00c7212ebh
+dd 08f5df451h
+dd 0492a2824h
+dd 0d245befdh
+dd 015e509e9h
+dd 05504103fh
+dd 0be0429ebh
+dd 0480217a0h
+dd 0945db32bh
+dd 0f1fbdf06h
+dd 038140a98h
+dd 0c4733081h
+dd 0e591151fh
+dd 0e65f9475h
+dd 0bc7db757h
+dd 00c98eefdh
+dd 0d89435b6h
+dd 0e5c4e592h
+dd 01205dcafh
+dd 0c7dfb6e7h
+dd 0bbbdbe19h
+dd 07b2fd8b0h
+dd 04090670ch
+dd 04070a5ech
+dd 07866be25h
+dd 073fecdb7h
+dd 0600c7d01h
+dd 05c70415ch
+dd 0606280efh
+dd 0c8e08d44h
+dd 0868bf9c5h
+dd 08070cbf8h
+dd 032492e95h
+dd 07cc0033ch
+dd 0a1230e89h
+dd 0cf856537h
+dd 01403535ah
+dd 0ef63f4d7h
+dd 02260984bh
+dd 033c9a6b7h
+dd 06e3e4981h
+dd 0e73692c1h
+dd 0a6398a86h
+dd 0ac1a6e95h
+dd 04ee184bdh
+dd 07677d546h
+dd 04085bc12h
+dd 05b3613b8h
+dd 08099eca1h
+dd 0383cc90eh
+dd 02c7fa143h
+dd 00d2f3b53h
+dd 037ec8b16h
+dd 09944b01eh
+dd 06ab9da31h
+dd 01e35bf24h
+dd 04cd54198h
+dd 0a559e670h
+dd 0dce70646h
+dd 03201b875h
+dd 097142262h
+dd 07e397394h
+dd 00c8744ech
+dd 0a0a95424h
+dd 04271543ah
+dd 030bd5e91h
+dd 0c9ed1a03h
+dd 0fd98dc03h
+dd 0294ead9eh
+dd 005261b5fh
+dd 05a7619b7h
+dd 0bdde76fah
+dd 050f67cd5h
+dd 06e5a2242h
+dd 0fd7f7ef7h
+dd 0f1402703h
+dd 0b574da19h
+dd 07dc4c0e6h
+dd 0830c2e1dh
+dd 0f007f619h
+dd 07ff9510fh
+dd 0b31f5700h
+dd 0151dead7h
+dd 0b777b9bbh
+dd 031e5facbh
+dd 0e3cbe569h
+dd 09961f18dh
+dd 014af0baeh
+dd 076ba2edfh
+dd 075a503fdh
+dd 02a37c283h
+dd 0021f3824h
+dd 09932e6bfh
+dd 0e83be9d9h
+dd 0f70b18e6h
+dd 0ed4da12fh
+dd 068f2d93ah
+dd 0f79172fch
+dd 0c16bef9fh
+dd 0cc367162h
+dd 0e0b3e2c6h
+dd 09fd819e4h
+dd 0d66eb503h
+dd 017641a70h
+dd 03e500c77h
+dd 06888e249h
+dd 0c08d0578h
+dd 0a4b26da6h
+dd 01f93a194h
+dd 0529b41feh
+dd 09cf1708dh
+dd 02a01665eh
+dd 08d5fc3fbh
+dd 0de26a739h
+dd 0271ed34bh
+dd 0fdb242ach
+dd 0a3cb14d8h
+dd 0d20ff490h
+dd 06f209d29h
+dd 09a88ba57h
+dd 06135b601h
+dd 0c5bfe8bdh
+dd 0ace20614h
+dd 094f306aah
+dd 059acb30fh
+dd 034c9cefdh
+dd 00617c4b2h
+dd 0d60df770h
+dd 0e7d6fb73h
+dd 0923ce760h
+dd 0340c76d1h
+dd 043b1d87ah
+dd 0d483b8c1h
+dd 0e15cda60h
+dd 0afd594d1h
+dd 046193e7eh
+dd 0d9ae9a85h
+dd 0dab29e7fh
+dd 0359c732ah
+dd 009dff277h
+dd 06821a852h
+dd 05af49ea5h
+dd 039188814h
+dd 09590eb4ch
+dd 045132c73h
+dd 0436ae2edh
+dd 04f0b482ch
+dd 08941492ch
+dd 050db2b0ch
+dd 077b1a8e5h
+dd 080a4017bh
+dd 02125995dh
+dd 030274030h
+dd 0dafd9bf7h
+dd 057f69561h
+dd 0ce79a204h
+dd 021b5c2cch
+dd 05c887d81h
+dd 0b87aaf90h
+dd 0cb5a5b8bh
+dd 0c160d173h
+dd 01c68d3a3h
+dd 0a4ec8f8ch
+dd 0d4f80bc7h
+dd 0e9df4b3ah
+dd 0fff31c75h
+dd 0b3f89d80h
+dd 0c40aea07h
+dd 09ebd724fh
+dd 005dd5ab5h
+dd 0e7c78ef3h
+dd 0b1480c07h
+dd 0085d3427h
+dd 0899116b7h
+dd 0451379e0h
+dd 0326c16c4h
+dd 03e1f91d2h
+dd 0f0470d72h
+dd 034ba1af6h
+dd 0695077e2h
+dd 004bda600h
+dd 0c07ab2edh
+dd 0f84cf937h
+dd 074262d00h
+dd 0c6c30949h
+dd 0f0b0f0d7h
+dd 02cf1af12h
+dd 04f94017eh
+dd 0145ae675h
+dd 074f6411fh
+dd 06350a7dah
+dd 0f7749e75h
+dd 0da143ab2h
+dd 0b5187c2ch
+dd 0409695beh
+dd 03970d70dh
+dd 01588f043h
+dd 0b8d132d2h
+dd 06671cfaeh
+dd 07969921dh
+dd 095978c34h
+dd 065ec549eh
+dd 0516917fch
+dd 00a3d6121h
+dd 0cd6e5350h
+dd 0cbaa54c2h
+dd 03f5a74b0h
+dd 0582f05f9h
+dd 0cf766b75h
+dd 0f6950a4dh
+dd 0d7332ebbh
+dd 018be1c1ch
+dd 04314b876h
+dd 0ed102b65h
+dd 0fb903722h
+dd 0db4a1229h
+dd 08afe1005h
+dd 02a749f77h
+dd 0d9d6a69fh
+dd 0df727d47h
+dd 0fc135db9h
+dd 09575fd11h
+dd 0aa57932fh
+dd 07d80abcdh
+dd 0910fa7d9h
+dd 062f0b06bh
+dd 0286bc203h
+dd 03a9122a8h
+dd 08682f659h
+dd 0502ddeb8h
+dd 06ae376d9h
+dd 05a9737a4h
+dd 0a077f634h
+dd 09d606addh
+dd 010c8973bh
+dd 0ca36ebe6h
+dd 092baa2f1h
+dd 0ff144435h
+dd 0f3d1c177h
+dd 06423e939h
+dd 080cd1730h
+dd 0676aea22h
+dd 06387423bh
+dd 0cc0bbda1h
+dd 03a998dfbh
+dd 0ff34c581h
+dd 05b750e3ch
+dd 071240ef3h
+dd 098d6cc24h
+dd 005b73c9fh
+dd 0fd931bf8h
+dd 0f48bc8d5h
+dd 03b12408eh
+dd 0c0fcefa4h
+dd 006631505h
+dd 05b7e39ffh
+dd 070aa40eeh
+dd 0216e5e05h
+dd 0052ea029h
+dd 0dc5d6d19h
+dd 0df0fcfd1h
+dd 0d2bf11ech
+dd 02436a8c1h
+dd 0b137849dh
+dd 0cd9eb5ddh
+dd 03f7ef0c7h
+dd 043304d1ah
+dd 0eebdab55h
+dd 0fc0fbea9h
+dd 0bfefa591h
+dd 018c5659ah
+dd 0129a41b0h
+dd 08f62fd98h
+dd 0865d8559h
+dd 05988a8ach
+dd 094766486h
+dd 0b48a5429h
+dd 02a958293h
+dd 012224ffbh
+dd 0ca19c530h
+dd 077284c10h
+dd 035f9c6e9h
+dd 08ce11459h
+dd 06be89416h
+dd 088eab4cdh
+dd 0f5686034h
+dd 0322cd5efh
+dd 0781ffc85h
+dd 0ca7f7806h
+dd 058923a62h
+dd 0739d4230h
+dd 09f386a5dh
+dd 0333127e3h
+dd 0c8b2e4d6h
+dd 07c5ba261h
+dd 014c7b1bdh
+dd 0713c5d97h
+dd 0ffa9a9e0h
+dd 07638e4ach
+dd 02fa59e92h
+dd 056ac30c7h
+dd 08a063995h
+dd 0927cf54eh
+dd 07ecc0b9eh
+dd 0dd1854f5h
+dd 0ac2f6b83h
+dd 00e2e8407h
+dd 0acd9590bh
+dd 090faa916h
+dd 0256ca3e0h
+dd 0640e7f50h
+dd 0e2f4cc14h
+dd 06b51b448h
+dd 087b20979h
+dd 045c6f265h
+dd 082667ce4h
+dd 0ce1c972fh
+dd 0c2db0111h
+dd 0953f8559h
+dd 01c64719ch
+dd 06ba8d0feh
+dd 07e79a1d1h
+dd 0aff61063h
+dd 02e193451h
+dd 0701f26b0h
+dd 0fa6eff7bh
+dd 06a199d3fh
+dd 02a8c4576h
+dd 0aeb0cc32h
+dd 0f185ed07h
+dd 0aae1ac66h
+dd 0953a0c3eh
+dd 030780cffh
+dd 046a4161dh
+dd 0e21f688dh
+dd 06b294e90h
+dd 0f91613aah
+dd 080c8db22h
+dd 01d09bdf9h
+dd 059955c4bh
+dd 0feac02d2h
+dd 02fdc5595h
+dd 031565547h
+dd 020e23749h
+dd 0dbbb2806h
+dd 01607a9fah
+dd 005cef0f3h
+dd 063461a5eh
+dd 0e4223753h
+dd 0ef81bc10h
+dd 098232410h
+dd 014e337aah
+dd 0818ef33dh
+dd 089ad2a7dh
+dd 02d3a55c6h
+dd 0d9d423ebh
+dd 0b85987c2h
+dd 0121af640h
+dd 09cf0e72bh
+dd 04323539fh
+dd 07688e4a2h
+dd 0411b1daah
+dd 042dc064ah
+dd 07900979bh
+dd 03ccd9899h
+dd 021ce8ad7h
+dd 0d7d56db3h
+dd 0fde3434ch
+dd 02834142ah
+dd 001170f6ch
+dd 0839988dah
+dd 027992b3dh
+dd 03f517cc6h
+dd 0a8612b9eh
+dd 07f8c2e56h
+dd 0b804cdf6h
+dd 0691ab3c2h
+dd 07cb13208h
+dd 02337ae84h
+dd 004d6b46dh
+dd 03da41ea3h
+dd 04a44e21eh
+dd 0591b9e64h
+dd 0bddc9f03h
+dd 02b68fe66h
+dd 0729d991fh
+dd 0c5da8d04h
+dd 0144d7eddh
+dd 00d626aabh
+dd 0f4cdc05ch
+dd 0c539355dh
+dd 0b5c1c5bah
+dd 0bbdb593dh
+dd 057aad46ch
+dd 0eaf59b1dh
+dd 0ab881425h
+dd 0d44207aeh
+dd 0bb362c29h
+dd 0308cc5dah
+dd 0729e4d55h
+dd 033e74bb3h
+dd 01d364d55h
+dd 032cfe2d0h
+dd 0ed2be604h
+dd 0b982ad94h
+dd 0a3e8f349h
+dd 0fcc39062h
+dd 089fb062ah
+dd 0b8ac00aeh
+dd 0ebb6d2afh
+dd 0f0af6a5fh
+dd 0ff95a459h
+dd 01f00897eh
+dd 069945446h
+dd 02c962dbfh
+dd 05df6c64fh
+dd 04c61c9e6h
+dd 0c99e54e5h
+dd 0286a9dd6h
+dd 0bbf1c8edh
+dd 070edfdfah
+dd 0f72e9529h
+dd 05778ab7dh
+dd 09261efb9h
+dd 0d08e547ah
+dd 0c21fefcch
+dd 040d8b996h
+dd 036316820h
+dd 07c5b9f85h
+dd 06c6921b4h
+dd 0f7674e0ch
+dd 02b5d312fh
+dd 0d9637096h
+dd 0e3f0126eh
+dd 022eeca61h
+dd 0abeecf53h
+dd 0464945b6h
+dd 0d1c7c13bh
+dd 0e479015eh
+dd 03d774396h
+dd 08d26048ch
+dd 0a8ba8cd9h
+dd 0b70f805ch
+dd 0f4ca04cfh
+dd 051b97edah
+dd 0f2562b68h
+dd 007ea017fh
+dd 01e91fc07h
+dd 0d6abcf77h
+dd 06d4f2d2ah
+dd 015e0ca08h
+dd 0cdf62245h
+dd 0330e3fedh
+dd 0331c6072h
+dd 05eaba0ceh
+dd 0aae893fbh
+dd 083561fb6h
+dd 02bfb3f4ah
+dd 0c98ef346h
+dd 002c58907h
+dd 009598ab1h
+dd 0b5c1657ah
+dd 0543e4440h
+dd 0abaac88dh
+dd 01dff1d81h
+dd 03eb163f7h
+dd 028e63b35h
+dd 0121950ach
+dd 0953f3fe3h
+dd 0effad345h
+dd 097fae2bch
+dd 0c9e28232h
+dd 0218f9ac4h
+dd 01f0daa44h
+dd 0c97a8e10h
+dd 0abde1823h
+dd 00eafadfch
+dd 06c2b21bdh
+dd 0fab0e895h
+dd 004fc4b5ch
+dd 05aec95f7h
+dd 09caa21ach
+dd 0dcdcd666h
+dd 081e01064h
+dd 0a531930dh
+dd 00dfc716fh
+dd 0d1fd2553h
+dd 0bf87602bh
+dd 0852f1a4dh
+dd 07e5109a0h
+dd 02e592251h
+dd 0d02eb8ach
+dd 080796a6bh
+dd 0068b23f3h
+dd 02bbb65b3h
+dd 06b9822c1h
+dd 0c86e3bbfh
+dd 0160f5bach
+dd 056c22993h
+dd 05a9b0460h
+dd 05c3a6edah
+dd 005a91cedh
+dd 05b396c2eh
+dd 05a2a07b3h
+dd 0c4faa470h
+dd 0dec40eafh
+dd 0c6a1f3c5h
+dd 0068b0040h
+dd 046c12508h
+dd 04fdf47dch
+dd 023d7908dh
+dd 0aaabd2f5h
+dd 0715f535dh
+dd 0f027310ah
+dd 04bbea527h
+dd 0b1d33c9ah
+dd 0e35c7768h
+dd 04a8a0672h
+dd 08ced3d8ah
+dd 0a2179cd8h
+dd 09deedc38h
+dd 0a3747a20h
+dd 0b87aefd9h
+dd 094f4f615h
+dd 029806885h
+dd 03de6be79h
+dd 0f4354a12h
+dd 0e014a4bbh
+dd 0c46075d7h
+dd 04a8706bfh
+dd 09c6ddfb1h
+dd 083e8beceh
+dd 0e1cc0fbbh
+dd 0ad7d7862h
+dd 0ffe4150ch
+dd 0870fe0cdh
+dd 038fe3efah
+dd 07b8de773h
+dd 036221b01h
+dd 04297c27fh
+dd 0e1ffe58fh
+dd 0be0dcf29h
+dd 0c8733586h
+dd 0ff34694bh
+dd 041022526h
+dd 02462561fh
+dd 090158314h
+dd 07aa113d6h
+dd 02225fd54h
+dd 0c80dc0f5h
+dd 0d00b0ec0h
+dd 00961dd59h
+dd 090c45f0fh
+dd 0f07afd76h
+dd 0faad3be5h
+dd 0d08a2798h
+dd 09428e283h
+dd 00b72a825h
+dd 0cdbdef2dh
+dd 0a46662edh
+dd 0a4b4d0f8h
+dd 0b1070ab9h
+dd 02d04cc1fh
+dd 055704f52h
+dd 0a11d70dbh
+dd 0cb478325h
+dd 04f55d4d0h
+dd 0d3c5d598h
+dd 0f13c5b3eh
+dd 0526b623eh
+dd 06e9ea0adh
+dd 0af09c55eh
+dd 04e9ef602h
+dd 0e6bbccech
+dd 0d3584da3h
+dd 0f700306ch
+dd 09302a564h
+dd 058efa47ah
+dd 0560ca2cbh
+dd 0341465c7h
+dd 0a6231a1fh
+dd 0e78c9764h
+dd 0cd8db226h
+dd 0ce6880feh
+dd 05aae3aa6h
+dd 071ef3377h
+dd 0af443f77h
+dd 093d406c2h
+dd 05d512ce2h
+dd 0322672aah
+dd 0c2228935h
+dd 09f89bcf8h
+dd 01a6e39b5h
+dd 0cddbd8e2h
+dd 082c347bdh
+dd 0b5e5c8b4h
+dd 020d3396ah
+dd 03cf9ba3ch
+dd 04fa5b939h
+dd 0b26caef7h
+dd 0bc6b008dh
+dd 00e66dcf1h
+dd 0784e2e0eh
+dd 0286156c3h
+dd 0a43c5423h
+dd 01fe20fd1h
+dd 057907defh
+dd 0345d5493h
+dd 00444c35bh
+dd 02db761c5h
+dd 0b2b60c3fh
+dd 0ddf2aaebh
+dd 0e76641f9h
+dd 0bd2a2764h
+dd 0acc8c9b3h
+dd 0e165e669h
+dd 009768cfbh
+dd 03a50e41ah
+dd 092cc5614h
+dd 0b1ec35d4h
+dd 02bfb898bh
+dd 04911e769h
+dd 0f7a717f4h
+dd 061923c16h
+dd 066bf972bh
+dd 0c6474e4ch
+dd 0c1e4bb73h
+dd 0397187eah
+dd 09bcbbb70h
+dd 0ecd84c60h
+dd 0ca51e0e8h
+dd 0d3c8afc8h
+dd 0dc42a48bh
+dd 0a1532906h
+dd 0b16d6e48h
+dd 0106a2856h
+dd 042844758h
+dd 083f372aeh
+dd 0983750efh
+dd 0cb412359h
+dd 0e055f35dh
+dd 0c331f681h
+dd 02c74271ah
+dd 089611f0dh
+dd 09b98545ch
+dd 0ab7f3fb3h
+dd 05c2f6b6bh
+dd 016b1e5dch
+dd 096d1f6f3h
+dd 03ae16a0fh
+dd 0d50b55bbh
+dd 01f307ffch
+dd 04ed34c32h
+dd 03a6d0277h
+dd 0714c148fh
+dd 06a39c168h
+dd 007b4faf8h
+dd 0a9241772h
+dd 074c9379eh
+dd 003eedc2dh
+dd 0bd62ad84h
+dd 0f997dcbah
+dd 015501656h
+dd 0d1884a49h
+dd 0cf19d6cch
+dd 0b89893bfh
+dd 0fdfb8961h
+dd 0a3fe92ceh
+dd 01cb79a91h
+dd 06b6815bdh
+dd 021c45475h
+dd 0c60db197h
+dd 0e46c5423h
+dd 0716a117eh
+dd 00caca908h
+dd 08675311ah
+dd 07006cae5h
+dd 0d8e64753h
+dd 05da4daa7h
+dd 07027de6ch
+dd 03a9ca17fh
+dd 0f61c5534h
+dd 06e22df19h
+dd 009bb6188h
+dd 07d4ea6efh
+dd 0e48241c1h
+dd 03ea7c291h
+dd 0e231e131h
+dd 09cf78297h
+dd 03f63fa00h
+dd 078369a8eh
+dd 07e22623ch
+dd 09ced4dd5h
+dd 08649ace0h
+dd 0b01eb24dh
+dd 07c111549h
+dd 04adfc7e9h
+dd 0e6a2a893h
+dd 0619515f8h
+dd 0b0cb12b6h
+dd 087b2638ch
+dd 0cb241aa8h
+dd 0268f1819h
+dd 07c8ed8e7h
+dd 0d86d6b6bh
+dd 0ccd3088eh
+dd 0a5d57bc9h
+dd 0e5073ef1h
+dd 04e2e2569h
+dd 0c494e1e2h
+dd 070c0b5f8h
+dd 0710cb2b0h
+dd 0abb8ba63h
+dd 0299a246ch
+dd 0621164c7h
+dd 0981be5d8h
+dd 0be7af00eh
+dd 05c7d8c46h
+dd 051ee1a6ah
+dd 09d1424d1h
+dd 07cf55c95h
+dd 0a7735ed0h
+dd 0c1c161ddh
+dd 02964f058h
+dd 07aeccb8eh
+dd 0ae98a714h
+dd 03bd61a62h
+dd 067698411h
+dd 095a6cd7bh
+dd 0ee0a7ec1h
+dd 01bf97cfbh
+dd 01710ccc2h
+dd 024c63a60h
+dd 05782b645h
+dd 0607e8522h
+dd 005052725h
+dd 072330ad7h
+dd 0dd001b60h
+dd 0f5078889h
+dd 0b8979a55h
+dd 05ae5ce73h
+dd 02b7b8013h
+dd 06960cde4h
+dd 0496ea74ch
+dd 05f2a8476h
+dd 01f0d24cdh
+dd 0df2204dch
+dd 0d118c853h
+dd 0655b07b6h
+dd 097a28d2ah
+dd 0582b5d72h
+dd 086ada96fh
+dd 01ec2f559h
+dd 00e86a4e5h
+dd 0b2411349h
+dd 07735b640h
+dd 0acad268ch
+dd 085986e62h
+dd 0a5a06ca4h
+dd 0bc64b8e1h
+dd 0fd6a8aa5h
+dd 0cb044998h
+dd 026b64cd4h
+dd 0c303f2b4h
+dd 0a781faf9h
+dd 004b2526fh
+dd 09a7bb27bh
+dd 0c46075a5h
+dd 005893ee1h
+dd 056bde8bbh
+dd 07014280ah
+dd 087268442h
+dd 069c9d83fh
+dd 0678ce87ah
+dd 09512de48h
+dd 0c02d3dfdh
+dd 0384fd558h
+dd 0f8368c94h
+dd 0cff7170bh
+dd 0b12f5c01h
+dd 015b9da47h
+dd 0e09cc39fh
+dd 06d572763h
+dd 05c35990ch
+dd 07a538316h
+dd 043a76264h
+dd 09391c46fh
+dd 0c79c6e99h
+dd 03a13f898h
+dd 044de1edch
+dd 00a19d4d0h
+dd 0a92155e3h
+dd 09533b68fh
+dd 0a3a73682h
+dd 0f01903dbh
+dd 04ca62794h
+dd 0fa569154h
+dd 0b6f87f36h
+dd 020518f6bh
+dd 0df32557bh
+dd 070371ed0h
+dd 00950f0c3h
+dd 0ae76646fh
+dd 02f383080h
+dd 02ab32820h
+dd 05450146dh
+dd 0fb4dc715h
+dd 08d69f2c2h
+dd 0454701feh
+dd 0953078f1h
+dd 0d836f638h
+dd 0b32f58d2h
+dd 07cf035fbh
+dd 0d2bf31f8h
+dd 0014c251eh
+dd 007f081f9h
+dd 026debf5fh
+dd 0e352afb6h
+dd 02359c155h
+dd 0e8788d7ch
+dd 0f793c2cfh
+dd 01cd497d5h
+dd 0d6b60514h
+dd 04a59e72fh
+dd 003a3eed5h
+dd 073bf733eh
+dd 055898587h
+dd 0d544d5eah
+dd 01abcd66ah
+dd 0c722c25fh
+dd 0f042b076h
+dd 0862861edh
+dd 0a146a00eh
+dd 03a9dabcch
+dd 0eb59f0a6h
+dd 08052faf2h
+dd 08cd5e839h
+dd 04b4aa01fh
+dd 0146557cfh
+dd 0b1417af9h
+dd 089d7fb80h
+dd 00aca426eh
+dd 0e1895d00h
+dd 0fba53d78h
+dd 08d34b06dh
+dd 01e79afb5h
+dd 094dffaa2h
+dd 0948936b5h
+dd 0fb0fc85eh
+dd 05cbf2073h
+dd 0b7a52ca2h
+dd 0f706cc12h
+dd 07fcd7c07h
+dd 09795e5f6h
+dd 002b85748h
+dd 0db640e5eh
+dd 0c649b353h
+dd 0431b9c23h
+dd 0b58fc686h
+dd 0a15358f4h
+dd 06c8727b7h
+dd 00f08e507h
+dd 06cd1e329h
+dd 033c02e81h
+dd 02274f636h
+dd 02ddce201h
+dd 0f68cbb43h
+dd 006547a8eh
+dd 006767f3ah
+dd 0142f28d1h
+dd 0fffb6c9ah
+dd 0c20a4c3dh
+dd 0dc9323c6h
+dd 0ae7e0d18h
+dd 03fb3b14fh
+dd 099ceee92h
+dd 0ebbd75d3h
+dd 099f6bc40h
+dd 06ad16056h
+dd 026fc5ffbh
+dd 0ad08f75bh
+dd 01f393f8bh
+dd 09586575eh
+dd 0c7e62fc6h
+dd 076aa1f22h
+dd 0c0b4211fh
+dd 0fb2b1c35h
+dd 09b0ab28ah
+dd 0b998b548h
+dd 04d5c5142h
+dd 0b5f42526h
+dd 037f481d1h
+dd 0bae3f4e7h
+dd 06104dcceh
+dd 09b5e908ah
+dd 0146d43e9h
+dd 0894857b7h
+dd 096eb80eeh
+dd 0d3bdd738h
+dd 0048db57dh
+dd 0ba3c1530h
+dd 096380e9bh
+dd 02b966ddah
+dd 039542890h
+dd 012d3b39ah
+dd 0fcf4d06fh
+dd 0e80092e0h
+dd 0e01123a1h
+dd 0013fe3c4h
+dd 051658c29h
+dd 097950792h
+dd 00fcb1cd6h
+dd 01158f6a9h
+dd 0d49eca2fh
+dd 00610d31ch
+dd 0d5f9d476h
+dd 08a550f19h
+dd 0005c7919h
+dd 014b74c46h
+dd 0ff77aa84h
+dd 00fe9e550h
+dd 028efae5eh
+dd 076dc4c58h
+dd 0d2451ff8h
+dd 06b355615h
+dd 02bf8e0a4h
+dd 08803ae09h
+dd 021054450h
+dd 041018246h
+dd 04c29c5bfh
+dd 0c835a788h
+dd 035411909h
+dd 086166435h
+dd 0247fc4d0h
+dd 0a0aabb25h
+dd 01bbe1a15h
+dd 0f89d6198h
+dd 003284ab3h
+dd 0fe156d76h
+dd 0fe7a008fh
+dd 038624a68h
+dd 0f3366363h
+dd 04e479322h
+dd 0724d3f08h
+dd 0a289b82ah
+dd 03d200c7eh
+dd 0c7fa5d62h
+dd 02b15df17h
+dd 09f6acebeh
+dd 00c39734eh
+dd 00518e421h
+dd 0349945c7h
+dd 0b6f0b221h
+dd 002acfb2bh
+dd 09c3aaf31h
+dd 078abf3a6h
+dd 0926a98edh
+dd 0de0d6052h
+dd 0dc7133fdh
+dd 0876a63e2h
+dd 0d3322913h
+dd 06f210766h
+dd 00a505f31h
+dd 0056cf694h
+dd 03b6cd578h
+dd 0f34735f3h
+dd 04444c24dh
+dd 0102c88beh
+dd 0b765ecaeh
+dd 06db40687h
+dd 06a4f0a47h
+dd 03ad517beh
+dd 06e211d0dh
+dd 023ff12ddh
+dd 0f0bd5dbbh
+dd 05bc2024ah
+dd 07de8f132h
+dd 044c3c927h
+dd 0d6fc8c20h
+dd 0459aa97bh
+dd 07ba1b2d0h
+dd 0e396f836h
+dd 09c67ef1fh
+dd 08cc2edeah
+dd 03c20ed4bh
+dd 07e4e5c95h
+dd 065e77925h
+dd 0f7385600h
+dd 0bf84febeh
+dd 02db64391h
+dd 0253504ech
+dd 012ac1525h
+dd 064792e3fh
+dd 02b1e104bh
+dd 0c43d2ce7h
+dd 0ae1457c3h
+dd 0e0e2049fh
+dd 0235292beh
+dd 03f15ae8fh
+dd 03fc2b64dh
+dd 024388819h
+dd 05f76c492h
+dd 0d3b3b0b6h
+dd 0b6062500h
+dd 00e224f31h
+dd 0d8bc091ah
+dd 036e42e59h
+dd 04ab4caa0h
+dd 02f1f4938h
+dd 0218aa8edh
+dd 059e77519h
+dd 07188afb9h
+dd 002d01633h
+dd 092015763h
+dd 0eb77c2c9h
+dd 0a548c95dh
+dd 00e851576h
+dd 088de1773h
+dd 0fde601f3h
+dd 0ecf26b35h
+dd 09aeaf1a6h
+dd 049b726c0h
+dd 0c570e54bh
+dd 09c259c79h
+dd 0aea54954h
+dd 0d3fdf26ch
+dd 0d608b1a9h
+dd 092ee1d4bh
+dd 0a9971e90h
+dd 0018e9a92h
+dd 08a5eac7dh
+dd 04484eeb2h
+dd 02c7c5939h
+dd 07b61ac73h
+dd 02009b0dah
+dd 027db6ba5h
+dd 0eb1bfcf9h
+dd 05a277a07h
+dd 01e9433a9h
+dd 06cda23a7h
+dd 0164fa417h
+dd 0d9db7a0ch
+dd 0c1265268h
+dd 01ac83e09h
+dd 0d743daa1h
+dd 012b57a49h
+dd 03a5ec37dh
+dd 0abc11edeh
+dd 04b9bf703h
+dd 0af3f6f88h
+dd 03622dd9ah
+dd 037d91ffch
+dd 0cb967f9dh
+dd 09c70793bh
+dd 040ef44b6h
+dd 02dbe625ah
+dd 09f4edee3h
+dd 07f1f7ad9h
+dd 022e5abb2h
+dd 0fe360a2fh
+dd 04e8f887dh
+dd 037cd946bh
+dd 0fb2cd44bh
+dd 0f0505df7h
+dd 0d2f83353h
+dd 0c3584b11h
+dd 02cb18addh
+dd 0e65fe2f2h
+dd 0b24da348h
+dd 08b10838bh
+dd 090aad0d3h
+dd 05574dfe4h
+dd 00d682953h
+dd 02be6b4eeh
+dd 088f3b0f1h
+dd 09c0e82aah
+dd 0accaeb18h
+dd 017e2b3a7h
+dd 097dc0aach
+dd 0ccfbca63h
+dd 090f6dd43h
+dd 098c95f69h
+dd 03a4a45f9h
+dd 01964a6cch
+dd 04461c2a0h
+dd 0219b2d3ah
+dd 0f285a8c6h
+dd 085b77277h
+dd 0c38a1bffh
+dd 01ed93247h
+dd 07815d42ah
+dd 07477ec92h
+dd 053304ed0h
+dd 0104b2b21h
+dd 093b84903h
+dd 04aaaa808h
+dd 010813e8ah
+dd 053dac8c7h
+dd 0b4f2188ch
+dd 09fbc414ch
+dd 09aa9ca88h
+dd 0ea6cafaeh
+dd 09bf36dadh
+dd 0b031e1cfh
+dd 0f0df6f0bh
+dd 0d0d7f36fh
+dd 0d97ce3b4h
+dd 07f91cf3eh
+dd 06df4e69ch
+dd 0b610288eh
+dd 0ed824e55h
+dd 01604e26ch
+dd 0ac19ce12h
+dd 00cd7999ah
+dd 04a2fc340h
+dd 0bfbcc0e8h
+dd 045ee5015h
+dd 0c9f69071h
+dd 0a85d54a4h
+dd 00fbd9d49h
+dd 0681fa046h
+dd 05dd44e48h
+dd 0766054ech
+dd 05f4d3478h
+dd 0f5acb880h
+dd 073e554adh
+dd 007b3655eh
+dd 0df6b3146h
+dd 0923468c2h
+dd 039a330a9h
+dd 002aa7ed2h
+dd 060f57e74h
+dd 05c225637h
+dd 0958d1914h
+dd 0632a6da7h
+dd 0ce6e7df0h
+dd 0f028c06dh
+dd 0d509c73dh
+dd 09a9fb83eh
+dd 0ab90a2a1h
+dd 06f25ec95h
+dd 0e087eda4h
+dd 082f9ff34h
+dd 016beddbch
+dd 06d733db1h
+dd 093e9e10bh
+dd 070d9a420h
+dd 0e1ec3c2fh
+dd 028981a3bh
+dd 07cc3177ch
+dd 0d9e78a89h
+dd 0b582b94dh
+dd 0ea2f57dah
+dd 0727b488ch
+dd 07b510e78h
+dd 016846bf5h
+dd 01301086eh
+dd 094a4c601h
+dd 0b6bc06d8h
+dd 0e946140ah
+dd 0b743192eh
+dd 0bbfa07c2h
+dd 0e35d3ab8h
+dd 02849cf6dh
+dd 04d0847edh
+dd 01783c760h
+dd 0d6a23c57h
+dd 03c69aecah
+dd 0c01d0546h
+dd 00bf67ea8h
+dd 000f3087dh
+dd 035e2945eh
+dd 03d63a370h
+dd 0f3fe91a9h
+dd 0aed3ba66h
+dd 00c210104h
+dd 0d05dd7c2h
+dd 04fe4690dh
+dd 003a6da94h
+dd 01f026e7ch
+dd 06530e882h
+dd 0a144fe38h
+dd 05b33e952h
+dd 0678511ddh
+dd 0dd81e069h
+dd 07c9fbfc7h
+dd 0975b5f62h
+dd 02fa95d7fh
+dd 04747fb99h
+dd 03a477b28h
+dd 0ea1c0d9ah
+dd 09b95df38h
+dd 09f578b72h
+dd 0b48e0978h
+dd 04c67e465h
+dd 009dfa8ceh
+dd 02807cc0ah
+dd 0b646a988h
+dd 08d5b8593h
+dd 0d84f01ceh
+dd 0d649a2d4h
+dd 0cbe67767h
+dd 06cec3789h
+dd 0e877e5e2h
+dd 0cb3afe5dh
+dd 0b4ac1b3ch
+dd 0f7660273h
+dd 035359cdch
+dd 0f9a644fch
+dd 095b589f0h
+dd 012dd2a29h
+dd 0da557441h
+dd 00d0d11eah
+dd 0c976ebf6h
+dd 0fc727b3ch
+dd 0face1968h
+dd 0e8245312h
+dd 08d037f16h
+dd 034580e4ch
+dd 030e6d992h
+dd 0230cab43h
+dd 0583a922bh
+dd 08b6cc7aeh
+dd 0285cf4a8h
+dd 0ede43d35h
+dd 09663dcf8h
+dd 0b00abb8ch
+dd 02f5576dah
+dd 0829de50fh
+dd 04eb553d4h
+dd 0661ed2c5h
+dd 0c8d8c379h
+dd 06f25cab2h
+dd 0e2ad32edh
+dd 066815b51h
+dd 0b9091b74h
+dd 0ec91f503h
+dd 03265d328h
+dd 006da1d02h
+dd 0cf016e00h
+dd 09ba1cee8h
+dd 023f4bc02h
+dd 0ea0f0f55h
+dd 020813e30h
+dd 023ad84f8h
+dd 081b3211bh
+dd 0faf323a7h
+dd 06f56ff38h
+dd 06de639b0h
+dd 05d2d0ccdh
+dd 070c32d51h
+dd 034e13388h
+dd 05fea8bd1h
+dd 0dd228d99h
+dd 0255df9b1h
+dd 00dfa92dbh
+dd 017454fadh
+dd 03a57620fh
+dd 061c86fb4h
+dd 0e2cc3375h
+dd 0b46ff423h
+dd 0d9b779d4h
+dd 029cad47eh
+dd 0b74db160h
+dd 0bea88da4h
+dd 0a606a05dh
+dd 03e0b1a69h
+dd 0ca2fe58ah
+dd 0f11fd452h
+dd 0b22f4dc3h
+dd 0af9d04d4h
+dd 0e9c166dbh
+dd 05329d6bdh
+dd 0392d29e4h
+dd 09ffc2783h
+dd 094560792h
+dd 0acd5bd45h
+dd 08ab95cc7h
+dd 00487d63eh
+dd 08f4ac866h
+dd 06290fc9fh
+dd 079301c32h
+dd 0c7602e75h
+dd 0e663d3abh
+dd 0cf491a2bh
+dd 0d692e572h
+dd 01d74e27fh
+dd 05d083883h
+dd 0151c872bh
+dd 06433f22fh
+dd 0c91870c5h
+dd 01976c455h
+dd 05cd6173ch
+dd 0a729ef3ah
+dd 03cbdd7b4h
+dd 00621479dh
+dd 0bfbc53bch
+dd 0ca455cb2h
+dd 041981354h
+dd 0569616b5h
+dd 0d9b49acah
+dd 0e4668ed5h
+dd 0efea4cd9h
+dd 09ec99ff7h
+dd 0149889b5h
+dd 06520f0cch
+dd 0432d72e9h
+dd 0b0d23a7eh
+dd 0395d1a02h
+dd 049f73c01h
+dd 09f984c9eh
+dd 0aec80018h
+dd 0c94792afh
+dd 0ca558ccfh
+dd 0295ebea1h
+dd 02d0179e1h
+dd 05db2be33h
+dd 0835169adh
+dd 070da2f0eh
+dd 0550b71c8h
+dd 07ce3ef02h
+dd 024f52dcch
+dd 055a4338eh
+dd 02fe7a7cfh
+dd 0d1e2798ch
+dd 06e75af8eh
+dd 09e502b79h
+dd 05d589f4fh
+dd 03c238fceh
+dd 00ebf6b6fh
+dd 0e0fb5a1bh
+dd 047ce724dh
+dd 0ee9ff09ah
+dd 0d61350c0h
+dd 0d9bb69efh
+dd 0d56ec9fbh
+dd 023b7d35ah
+dd 093d9ce8fh
+dd 0f2e77aebh
+dd 036110e60h
+dd 0f974635bh
+dd 07bf195f8h
+dd 0edfabc28h
+dd 0a1878193h
+dd 0327e70dch
+dd 0d309ee60h
+dd 0099a868fh
+dd 0f5c78993h
+dd 0cecd94b1h
+dd 099d9b541h
+dd 03ba8a6e3h
+dd 01b1d86c1h
+dd 029a15397h
+dd 071ebfd04h
+dd 07db84642h
+dd 04302e36dh
+dd 09a277728h
+dd 03997358dh
+dd 03fb13f94h
+dd 089da5c0bh
+dd 06b89f23dh
+dd 0bbf88bb5h
+dd 0262c70c5h
+dd 072191dfbh
+dd 0951a7e77h
+dd 00f620322h
+dd 020a6337bh
+dd 013a3d9d1h
+dd 0bb3f5727h
+dd 0b30494d5h
+dd 0acea8fbah
+dd 0f9ea639eh
+dd 03dce0c90h
+dd 05f1c9b26h
+dd 0ba8f0578h
+dd 0de84d502h
+dd 0bcdfad6dh
+dd 0ef02cf42h
+dd 0ebdd8782h
+dd 0f7935cd8h
+dd 014cb1fffh
+dd 09977cf40h
+dd 0a9e5ab00h
+dd 0422e847ch
+dd 0c6c8005ah
+dd 00d62b926h
+dd 096c4d620h
+dd 01f2081b7h
+dd 031a9937bh
+dd 0ec354778h
+dd 06f61068dh
+dd 0dcc6b8bah
+dd 0fad0b0f8h
+dd 05e34619ah
+dd 030069fcch
+dd 0d1928e18h
+dd 01c323931h
+dd 028438891h
+dd 036be791eh
+dd 064db8a8eh
+dd 05265d49eh
+dd 048d4dc4bh
+dd 01277d0b0h
+dd 0a3c61366h
+dd 0dacc9c82h
+dd 07e00306ah
+dd 08da10d8ah
+dd 0ebbc089bh
+dd 02620aa22h
+dd 0ebb17809h
+dd 06a79227bh
+dd 0443eb921h
+dd 0fe84e4e5h
+dd 01fb25eaah
+dd 0c7364982h
+dd 03cc2a30ch
+dd 0ab1fc061h
+dd 0bafdef97h
+dd 040d016e9h
+dd 061091d56h
+dd 0736bddafh
+dd 00c6ffda2h
+dd 0e2a3c388h
+dd 0ed86710dh
+dd 0aa670984h
+dd 0a9f0404dh
+dd 005f4d2e0h
+dd 082df254dh
+dd 0f83f37cdh
+dd 04bd1d7f8h
+dd 07b8fddb8h
+dd 06f03cd3ch
+dd 00f7d0901h
+dd 0e925a184h
+dd 01c003c6fh
+dd 01fec3242h
+dd 0269c09a6h
+dd 094bccb4dh
+dd 049e00349h
+dd 00b9679b8h
+dd 06be21729h
+dd 0c6840927h
+dd 06ba53ed0h
+dd 0dc1855c3h
+dd 0974e0bb1h
+dd 08dc9f515h
+dd 0687476c3h
+dd 0dffcf786h
+dd 08a016171h
+dd 0fa13615fh
+dd 06b2120beh
+dd 04268425eh
+dd 06a765190h
+dd 09de00efdh
+dd 053aa79a1h
+dd 0838327beh
+dd 0b5479d29h
+dd 035667ad2h
+dd 0a4409334h
+dd 0b23bb6a9h
+dd 067699306h
+dd 0c484d3cah
+dd 0f4d9d5feh
+dd 06531f8cbh
+dd 0de978dd6h
+dd 07bac723eh
+dd 049a9a17ah
+dd 0574a93c9h
+dd 0ef8e6cb2h
+dd 05bebe2dah
+dd 0c5501bbch
+dd 08d0f40beh
+dd 0e5b7aea2h
+dd 08cc5c49fh
+dd 06f423513h
+dd 0b538fbd0h
+dd 07a5cb3bch
+dd 06437a5b6h
+dd 004b9b4dah
+dd 05245050fh
+dd 02bc9d1c5h
+dd 0367b6db4h
+dd 0e6c5052bh
+dd 0fed3e3f3h
+dd 09d3e5dcfh
+dd 07ec62c74h
+dd 0e9181fb1h
+dd 057ec087fh
+dd 02b9239b5h
+dd 0f7477432h
+dd 02ea4c5efh
+dd 0fef27b1bh
+dd 084fff766h
+dd 05d46bbdeh
+dd 0df53d5eeh
+dd 0082a7370h
+dd 0ff4dc067h
+dd 00ef90261h
+dd 08432b65eh
+dd 0741af3ebh
+dd 01008501bh
+dd 01b3f463ch
+dd 07e073604h
+dd 0ff55791bh
+dd 076502f4ah
+dd 06d8b34cfh
+dd 0795bea60h
+dd 0c9c22b38h
+dd 016755779h
+dd 02ea44d1dh
+dd 0a3f82910h
+dd 0901884fah
+dd 0e778e508h
+dd 030be5280h
+dd 0a5c93c6ch
+dd 0bbe053cfh
+dd 06edf377dh
+dd 08c28857ah
+dd 02227414fh
+dd 0b94a723fh
+dd 0aba23d37h
+dd 02125bd32h
+dd 0ad181271h
+dd 06d31e925h
+dd 0c19a417bh
+dd 0e06f99b1h
+dd 001fcdb55h
+dd 043546437h
+dd 0d863df8ch
+dd 004514c36h
+dd 01158fb95h
+dd 04269d088h
+dd 06eee70b4h
+dd 013eb8d8dh
+dd 030d1a677h
+dd 039001cb5h
+dd 0db9249fbh
+dd 0ab43ec45h
+dd 0b88287e5h
+dd 01fb2d834h
+dd 07aeabb10h
+dd 0b6af14b8h
+dd 0777c667dh
+dd 051bacb91h
+dd 01d36ef67h
+dd 00534ea80h
+dd 0b9ae1f63h
+dd 042024589h
+dd 02c5cc63ah
+dd 0d938c570h
+dd 0c23eb1ddh
+dd 0f8f898ceh
+dd 032e8b6aeh
+dd 0c4a6deb7h
+dd 09157d416h
+dd 06b99c42bh
+dd 099f35536h
+dd 06dcdf4b0h
+dd 0ee49d56dh
+dd 0315f340eh
+dd 0fc6d5af5h
+dd 0aa87a6deh
+dd 0fb9e5812h
+dd 0e6fb4e17h
+dd 00a3ed1f1h
+dd 018460c53h
+dd 0e81ef1d5h
+dd 0632d95feh
+dd 0695963feh
+dd 0720b767ch
+dd 0f096b8aeh
+dd 0ce2df893h
+dd 07e11671bh
+dd 0dfc7359bh
+dd 029db53f3h
+dd 0af7652a8h
+dd 01b892599h
+dd 036bf1539h
+dd 071bc5ea6h
+dd 0ece3d804h
+dd 005a5966ah
+dd 06b6dfadbh
+dd 0f8baf67bh
+dd 0723197f8h
+dd 095260f14h
+dd 0242bfff8h
+dd 0fa1740ffh
+dd 0189beee3h
+dd 09b26865dh
+dd 075afcbd8h
+dd 09ccfb7e9h
+dd 02bfe5ffch
+dd 0d63a498ah
+dd 0805d192dh
+dd 040bddf3ah
+dd 079c58e72h
+dd 05e133c7dh
+dd 07eb54b7dh
+dd 03e09f0fdh
+dd 042957295h
+dd 037dd0570h
+dd 072e9143dh
+dd 0c75a5a7ch
+dd 0a290b7fah
+dd 05dc0fbb4h
+dd 0e06ca8f9h
+dd 01f6a19adh
+dd 0ba66dcafh
+dd 06d9289c1h
+dd 0efc510bah
+dd 0e03a0a07h
+dd 0541555f8h
+dd 0a4c1100ah
+dd 0154aedfch
+dd 0375ff2a1h
+dd 0991d5acch
+dd 04a63a0c1h
+dd 06f8190dah
+dd 00befea32h
+dd 0cb100285h
+dd 0766f5feah
+dd 011b603fbh
+dd 005925547h
+dd 0e00f9d7ah
+dd 05032e2c7h
+dd 0dcf2babch
+dd 002dd527bh
+dd 09f2b5fedh
+dd 062e0fdb8h
+dd 05d87bc32h
+dd 0dae663b2h
+dd 0b151f9beh
+dd 08a30f6c5h
+dd 0223b41e8h
+dd 0a8df5372h
+dd 0fcf60423h
+dd 0dda7352eh
+dd 05c1c1a0bh
+dd 0076cc3bdh
+dd 0ab438c09h
+dd 07705bc02h
+dd 03b630cc5h
+dd 02fc0d024h
+dd 09a2366e6h
+dd 060bb173fh
+dd 0c7f1c102h
+dd 0e7c67a3eh
+dd 023782562h
+dd 00cd1426ah
+dd 01fa5ed0dh
+dd 0afd7374bh
+dd 03e589623h
+dd 0159e7396h
+dd 093168a6ch
+dd 03b716b79h
+dd 0272ce970h
+dd 0fa1731d5h
+dd 034f61c35h
+dd 0eb3aa590h
+dd 012b228bfh
+dd 07adbd4d1h
+dd 0769852d9h
+dd 0708a9504h
+dd 018103532h
+dd 098dbe9a5h
+dd 098650852h
+dd 01d4704fbh
+dd 0e5bd1416h
+dd 05a740ec7h
+dd 095a81db9h
+dd 0e07410a3h
+dd 024c06599h
+dd 0c61ebc88h
+dd 05da3be50h
+dd 0f03c2356h
+dd 0a26caab3h
+dd 0f173403eh
+dd 0bad5d6d3h
+dd 0dd7b03c2h
+dd 0a18740c0h
+dd 0dff163d0h
+dd 095778e49h
+dd 0a7a446dfh
+dd 08b314d8eh
+dd 09fcf2e25h
+dd 068b7824fh
+dd 0fb0e3a54h
+dd 0939e8dbbh
+dd 0d39e5c3fh
+dd 0c985d91fh
+dd 00dd8f761h
+dd 0ce4a9c45h
+dd 05dc8eb57h
+dd 068222368h
+dd 02d013228h
+dd 04e553911h
+dd 04479b9d6h
+dd 093aff066h
+dd 0f9fc6fb0h
+dd 0773ca921h
+dd 0668c6972h
+dd 0def847aeh
+dd 0a4735848h
+dd 0b6a055abh
+dd 00e5d5dd1h
+dd 0ac9ae6a8h
+dd 0ca442eeeh
+dd 0d2f42cd9h
+dd 0a9dc7ae2h
+dd 06ad11793h
+dd 0ca33d171h
+dd 0eb3fa8b1h
+dd 03f88cdc1h
+dd 08878a35bh
+dd 07a9ee4ddh
+dd 0f4d5c497h
+dd 0d3a4695dh
+dd 0c76d61f3h
+dd 050afd8e5h
+dd 062c59847h
+dd 06ff20cf0h
+dd 0328e4acdh
+dd 0dc554096h
+dd 0234153cfh
+dd 0c83af46ah
+dd 0efbb0df1h
+dd 0abe4c1f1h
+dd 07dd610dfh
+dd 099e3e02bh
+dd 0eba1fb9fh
+dd 0f033b7d8h
+dd 0bba6e7e3h
+dd 07873d156h
+dd 03723c1a6h
+dd 0907e9933h
+dd 0c85d15b6h
+dd 0afb430f7h
+dd 08999a62bh
+dd 041b87e1fh
+dd 0b2a8acb9h
+dd 02610b894h
+dd 0f0ce3391h
+dd 01f4d712ch
+dd 04ddc9e16h
+dd 0724a9a78h
+dd 03eb37e13h
+dd 0455c86f1h
+dd 011ec76c1h
+dd 04ef0d286h
+dd 0475dfbe4h
+dd 0ed84982ch
+dd 05922884ch
+dd 08daa8c13h
+dd 0bfef67b6h
+dd 05da02ad1h
+dd 0e29b19a7h
+dd 060da3a6eh
+dd 02fa5ba01h
+dd 09825aa84h
+dd 05dbcf27ch
+dd 0b6713f18h
+dd 03af29cd1h
+dd 0f126311fh
+dd 0913b4448h
+dd 0310020b5h
+dd 0929fba38h
+dd 0adec9421h
+dd 07fb08791h
+dd 053ce38b4h
+dd 0aa759647h
+dd 0708c45c8h
+dd 08ec226bdh
+dd 0d8930af6h
+dd 02ad8550eh
+dd 0abe0add9h
+dd 0975ca629h
+dd 05a80b9a2h
+dd 021179062h
+dd 06ea832b4h
+dd 0aaf0cce1h
+dd 07851a850h
+dd 035bb223bh
+dd 0e78b1ad5h
+dd 0bb937d09h
+dd 0ed1561ach
+dd 0a3a8d51bh
+dd 0105e8828h
+dd 02897cc2eh
+dd 00011a532h
+dd 0b5a5d766h
+dd 037903bbbh
+dd 065890668h
+dd 0048b9c21h
+dd 0d7e3561ch
+dd 0d0f2563fh
+dd 0837917b4h
+dd 0203f0dcch
+dd 076c69191h
+dd 0bedf7532h
+dd 08b0e8f83h
+dd 0cc9a42e2h
+dd 00b562a2ah
+dd 00afa16f7h
+dd 057c70ed5h
+dd 05cc67d20h
+dd 0c51d92fbh
+dd 04411ee68h
+dd 03e80a337h
+dd 02ee0d8afh
+dd 02bf38019h
+dd 02d2c543bh
+dd 0b50cc896h
+dd 015c8adedh
+dd 06ad8ebc8h
+dd 0bbed7f19h
+dd 0498b470fh
+dd 0376cbd52h
+dd 036074af9h
+dd 0e36b0b61h
+dd 0d9b95fa8h
+dd 05c195777h
+dd 08f395ed0h
+dd 0bdf95438h
+dd 006dc0a03h
+dd 082aa61c3h
+dd 0eefe8bd5h
+dd 0a0fc7f2bh
+dd 02145b229h
+dd 02e266cd7h
+dd 08c985114h
+dd 09f6f948eh
+dd 01cb8bf45h
+dd 01f2c6134h
+dd 0dca0c8eah
+dd 0746003e9h
+dd 04fa883a0h
+dd 0c5cb2892h
+dd 084d044a4h
+dd 03fd401bdh
+dd 031bfe7bfh
+dd 0db18872fh
+dd 0b44e6fbfh
+dd 0b9da5985h
+dd 0e3bc818eh
+dd 0bdaa4acbh
+dd 063fcee9eh
+dd 0ab35b509h
+dd 070741b3ch
+dd 049c6838eh
+dd 03c50ee15h
+dd 03a1e456ah
+dd 0009724feh
+dd 0ed003d9eh
+dd 05562df6bh
+dd 0b7c9363ch
+dd 0ff3d040dh
+dd 06102677bh
+dd 0075e6300h
+dd 0065730e0h
+dd 097ab1882h
+dd 01d00f3a7h
+dd 05a48ed2fh
+dd 0083dd52fh
+dd 0248021c4h
+dd 0ff92d447h
+dd 0a61d52c3h
+dd 0dae1f8e4h
+dd 032243803h
+dd 0158c44b4h
+dd 07e60315bh
+dd 0d59507cdh
+dd 031b6141ch
+dd 018a11ce7h
+dd 0d9f7f911h
+dd 0cd62e481h
+dd 0c0bdd679h
+dd 06944965eh
+dd 025076509h
+dd 037316a50h
+dd 053b58957h
+dd 0ccdfc7e7h
+dd 003e0e523h
+dd 0638a8127h
+dd 0c19db337h
+dd 08bc98864h
+dd 070c90b85h
+dd 05b977e13h
+dd 09a0732ceh
+dd 0da5619a7h
+dd 0b3353937h
+dd 0ebe8469eh
+dd 099f73984h
+dd 04d481cb2h
+dd 0b3799b11h
+dd 077356e04h
+dd 0f748935ah
+dd 0b8e9c379h
+dd 0d1891ccbh
+dd 046796aa5h
+dd 0d0b9d7e4h
+dd 051a6f0e5h
+dd 08fdce6a3h
+dd 04c5702e9h
+dd 0a4afd7e7h
+dd 00f27992ah
+dd 056ff6958h
+dd 07129e840h
+dd 0a4a00154h
+dd 0e1d84693h
+dd 045d8e252h
+dd 010f98837h
+dd 0d55fa254h
+dd 05d8a78dfh
+dd 0f2ff2612h
+dd 00ca6dfd2h
+dd 0d9f982b3h
+dd 0cbb69e69h
+dd 09039502fh
+dd 0cf40e9aah
+dd 08cf811b1h
+dd 0f085b4b0h
+dd 088c064c6h
+dd 0159f8e97h
+dd 05d5d8bd3h
+dd 0c4e4db42h
+dd 023e88999h
+dd 05f2b8935h
+dd 02ad19f11h
+dd 09de7b763h
+dd 012434531h
+dd 0f3c2ea48h
+dd 02219dcf9h
+dd 0ac74cc69h
+dd 07cc344a2h
+dd 0da8f5570h
+dd 06b718040h
+dd 0d2f8d59eh
+dd 018392dbfh
+dd 0772145a3h
+dd 0237c6165h
+dd 0124853e3h
+dd 0aae39486h
+dd 0d6d1a409h
+dd 019dfa0b3h
+dd 02685db7dh
+dd 0a0fb2496h
+dd 09f30597eh
+dd 080c226beh
+dd 06821c974h
+dd 0542a8973h
+dd 046c24cb7h
+dd 03246445fh
+dd 0772c9178h
+dd 0490c9ce8h
+dd 0c4956c7fh
+dd 003c91a4ch
+dd 0a23cc181h
+dd 046cb49d8h
+dd 0e42fbd01h
+dd 005072291h
+dd 0e90a24edh
+dd 0366718f8h
+dd 05291fdd3h
+dd 03ec1c5e5h
+dd 01c066d20h
+dd 004ea5644h
+dd 06e6207dch
+dd 08db99d35h
+dd 060c6b421h
+dd 0c7e5f0d9h
+dd 08e1d274eh
+dd 03eeb4909h
+dd 0c2f1bf3ah
+dd 0398791aeh
+dd 0bd0f1692h
+dd 0d3ac32bah
+dd 0e4f66f4eh
+dd 0b82f97b6h
+dd 00e4601c8h
+dd 00c6bb0ceh
+dd 0d0b38d49h
+dd 013c0d0c8h
+dd 0b0a4eff6h
+dd 0cdad865bh
+dd 01626aa1bh
+dd 02885c331h
+dd 0a70d052ch
+dd 0492a3dbfh
+dd 023b388fdh
+dd 096f3e984h
+dd 0e782818eh
+dd 096d206bdh
+dd 0f580c310h
+dd 0b093b4e5h
+dd 03d772902h
+dd 0b9bd3a57h
+dd 0bda8e77ch
+dd 0d8499a24h
+dd 0b5fa6d95h
+dd 0eba57614h
+dd 0d9b68b41h
+dd 0a8b5e14ah
+dd 0451e35dfh
+dd 0bf8a5df6h
+dd 048db33dch
+dd 024f09326h
+dd 0515b0409h
+dd 0627347f2h
+dd 0d2aa75a6h
+dd 008cada52h
+dd 08bb2e8d3h
+dd 04c2f3d14h
+dd 010486f61h
+dd 0f45dd12ah
+dd 023720b1dh
+dd 0767efd05h
+dd 011a32407h
+dd 0a74db897h
+dd 0209e82c2h
+dd 0f17e1721h
+dd 030f8cc67h
+dd 0cafea12ah
+dd 002fc3c80h
+dd 0e88554e5h
+dd 070b66818h
+dd 0fa3ea15ch
+dd 0fcc66d3fh
+dd 00e35b9e1h
+dd 03adeef53h
+dd 0e564aed8h
+dd 01ebcb05bh
+dd 044491f07h
+dd 0cecef154h
+dd 08da6a1e2h
+dd 0d533e788h
+dd 042448fdfh
+dd 0f91886ddh
+dd 0af534876h
+dd 012105066h
+dd 0afcba4edh
+dd 05dad54e8h
+dd 090b8febdh
+dd 0bf6b7a59h
+dd 04f56d97eh
+dd 06c013f58h
+dd 0d172b733h
+dd 095b87833h
+dd 031d7c12bh
+dd 0e6053794h
+dd 0d3cd0d3ch
+dd 0b4cf4052h
+dd 0fc5fd5c8h
+dd 09222a281h
+dd 097051537h
+dd 0cc5f894bh
+dd 0d3190220h
+dd 0d8a2fb9eh
+dd 0ca278fe9h
+dd 0616c0958h
+dd 097ef94dfh
+dd 0559108d4h
+dd 0a3d659ddh
+dd 04c5538d3h
+dd 03516c945h
+dd 060588806h
+dd 0a2a5fe7bh
+dd 02237e6c4h
+dd 0df27f3cah
+dd 0c1d9f692h
+dd 07a699d8bh
+dd 0821f47b5h
+dd 03f1b6dedh
+dd 03c253e32h
+dd 069ae63e7h
+dd 0b847b33bh
+dd 0d9fbd28ch
+dd 077578422h
+dd 031d097b1h
+dd 010b8766ch
+dd 0aee96f67h
+dd 00b3316b3h
+dd 00539715ch
+dd 06ebcf5adh
+dd 006f2d235h
+dd 0b658063eh
+dd 00fe35cbbh
+dd 01861edd9h
+dd 00bb903a9h
+dd 0b4526cb2h
+dd 089397263h
+dd 081cba7a1h
+dd 0fce9a426h
+dd 00d8f4236h
+dd 023daa016h
+dd 06a224257h
+dd 09a0333f7h
+dd 06e63b6c1h
+dd 0dc7adbffh
+dd 0ab624a3ah
+dd 0f08a36c5h
+dd 01fa1a8e8h
+dd 07f8bde65h
+dd 00ccbc9b3h
+dd 0a91b3968h
+dd 0fe0e8c2fh
+dd 0069a1537h
+dd 0031eb158h
+dd 05adb0b8ah
+dd 056945015h
+dd 035768942h
+dd 0f11aa2ffh
+dd 01d53b290h
+dd 028ca0a81h
+dd 0c466cae0h
+dd 0c92b392ah
+dd 049c0f540h
+dd 06f6623d5h
+dd 028ee1341h
+dd 082d1a6ech
+dd 0817911d7h
+dd 0e9d3dc83h
+dd 060aae628h
+dd 047f62ab5h
+dd 0cf82abb9h
+dd 0d96815adh
+dd 087abe72ch
+dd 042f33725h
+dd 0050b78cch
+dd 02663a175h
+dd 09cb5dabbh
+dd 0d834d532h
+dd 07c61d13fh
+dd 0fffe81f8h
+dd 0c1e2fe70h
+dd 0bebcd86eh
+dd 00e0ce7e5h
+dd 0ba2cc351h
+dd 02ea51c21h
+dd 0e59e530fh
+dd 0bbfc4f75h
+dd 0468073c4h
+dd 0ddf6eb09h
+dd 055880271h
+dd 01a93765eh
+dd 0e9db72f7h
+dd 08a36f0bch
+dd 0d08ce352h
+dd 080652317h
+dd 08e2bbb93h
+dd 0fc8dc466h
+dd 03346d998h
+dd 07be71bb1h
+dd 08a3dfe94h
+dd 0340b63b3h
+dd 07d308c8dh
+dd 088c2003eh
+dd 093058c28h
+dd 0566dd40ch
+dd 09dc8c17fh
+dd 004902a7bh
+dd 0cd3a3b1ah
+dd 038c612a7h
+dd 0225ea3b4h
+dd 043b68811h
+dd 09c9373f0h
+dd 04754a8b8h
+dd 09441cf82h
+dd 04e243d8eh
+dd 07115095bh
+dd 025c7c82ch
+dd 013ef4ed0h
+dd 0e4d3404ch
+dd 0754eff1ch
+dd 04fe82388h
+dd 02fe24329h
+dd 00a258c2ah
+dd 029a9494bh
+dd 091f9419eh
+dd 02e07aec1h
+dd 0b357da89h
+dd 0699fc29bh
+dd 02eedb91ch
+dd 0eade61dah
+dd 017cd93afh
+dd 0bc95b951h
+dd 0e1325dc3h
+dd 01f9889b9h
+dd 0317b4420h
+dd 02ca071e1h
+dd 08f0faa4eh
+dd 0f7ccc004h
+dd 0c1730fadh
+dd 0d7530bf5h
+dd 0c9ecbe19h
+dd 0824a3acch
+dd 0e90afdd1h
+dd 0f84b390eh
+dd 03eafbe8ch
+dd 0144e0be4h
+dd 04adf10a0h
+dd 00d57d6cbh
+dd 03fca2dbeh
+dd 0b2127e57h
+dd 0e0dde3afh
+dd 06ef039a2h
+dd 0f0b8c3ech
+dd 0b2700d03h
+dd 042cb5f79h
+dd 0e1e96b36h
+dd 088a2221eh
+dd 0f4576a5eh
+dd 06f19ae60h
+dd 081a452a0h
+dd 02ba93e8ah
+dd 01d306ebdh
+dd 0ad170ccfh
+dd 0cd100fb6h
+dd 03cdac0cah
+dd 096df4078h
+dd 0c4824d26h
+dd 0ccc009b5h
+dd 0d7498764h
+dd 01c60d16fh
+dd 006ee0e16h
+dd 02968c91dh
+dd 06113793ah
+dd 0ffe93176h
+dd 08e716cc9h
+dd 060d438a3h
+dd 0db98bc48h
+dd 0390d5a1fh
+dd 0e1fa4304h
+dd 0fbdbcb5ah
+dd 0df8269aah
+dd 04e11281ch
+dd 070009433h
+dd 028f12aa9h
+dd 00928a0a1h
+dd 06246c939h
+dd 0a82930f7h
+dd 0fa905362h
+dd 038bb22e5h
+dd 0f68b2fd9h
+dd 0801f7085h
+dd 0d17989dah
+dd 041726e9ch
+dd 0da6bf2e4h
+dd 0d9365339h
+dd 02fcbe34ah
+dd 0534de980h
+dd 03117859dh
+dd 05121b0e5h
+dd 0223149a4h
+dd 019ebd513h
+dd 0448e6ae5h
+dd 0a6ce0533h
+dd 09a08aecah
+dd 0f9339175h
+dd 0a2638499h
+dd 0787b77c3h
+dd 064151743h
+dd 087413a7eh
+dd 065cdcb24h
+dd 05afff652h
+dd 008d32ac2h
+dd 074e75214h
+dd 0744176d0h
+dd 0750b395fh
+dd 01a3f9819h
+dd 0189580cbh
+dd 0cd1c02ach
+dd 0bf150c84h
+dd 095a76693h
+dd 0f0bc1cafh
+dd 027823ea0h
+dd 07a7ad0a2h
+dd 0b7c384adh
+dd 0033b9f4ch
+dd 0ba7ab8b5h
+dd 0d1b2b78dh
+dd 03b4ebbe6h
+dd 08d43ef06h
+dd 0a0a4a375h
+dd 062086ef7h
+dd 009a83748h
+dd 0160a65c1h
+dd 0172eac46h
+dd 099028b59h
+dd 0d2659e09h
+dd 0e2422d60h
+dd 054010d08h
+dd 04ca231a0h
+dd 06d832f0ch
+dd 098fb77cbh
+dd 0deeb3e94h
+dd 0beaccb9ah
+dd 0f66bc584h
+dd 07d352257h
+dd 060931755h
+dd 0f4abcf2fh
+dd 0bf7cf20dh
+dd 0b15a8841h
+dd 07e9693eeh
+dd 0f3472567h
+dd 0a15000c7h
+dd 092322c09h
+dd 035e7ac97h
+dd 0a3c139afh
+dd 0c5ecb46ch
+dd 08416e66ch
+dd 0f00bacd9h
+dd 0ef57104ch
+dd 0fae57251h
+dd 062eb0b58h
+dd 0c01da6f8h
+dd 0e4a19883h
+dd 07a364d69h
+dd 056d4e3beh
+dd 09820cfe0h
+dd 083a78af6h
+dd 0940d1a78h
+dd 0656f4279h
+dd 06520497fh
+dd 0003d214ah
+dd 00ee92f7bh
+dd 0f7deb516h
+dd 0f0d11224h
+dd 0ad6538e8h
+dd 0b41353d7h
+dd 05e4b72f0h
+dd 0d6d62662h
+dd 0fc047131h
+dd 0550e2517h
+dd 040e2022dh
+dd 0c2722834h
+dd 0a23456b5h
+dd 0b3f6a938h
+dd 09b957859h
+dd 0955c855dh
+dd 047c399efh
+dd 00ee776fch
+dd 0a8fefdd7h
+dd 030908feeh
+dd 00c0fc3f4h
+dd 0fd4ac649h
+dd 0325cee89h
+dd 0a0271ccfh
+dd 092d7d6c1h
+dd 0cdc49a0dh
+dd 095d347efh
+dd 0852974efh
+dd 0b64a2101h
+dd 0bb2539dah
+dd 089f3000ah
+dd 01627dfa9h
+dd 0d3e8d755h
+dd 0a4f56eb2h
+dd 005a37719h
+dd 0a9f252a6h
+dd 067451899h
+dd 07f21b679h
+dd 048679146h
+dd 066847df9h
+dd 00533114dh
+dd 0ad62dfb2h
+dd 069c2a29bh
+dd 04f71dde6h
+dd 09ffd43c5h
+dd 099bb314ah
+dd 01a32e6f1h
+dd 06d3735eeh
+dd 0bf98fd94h
+dd 08bb3610ch
+dd 0ab7d436ch
+dd 01277699bh
+dd 075664268h
+dd 0da460121h
+dd 06aa47dd1h
+dd 0bf7099e0h
+dd 0652bf975h
+dd 01d8c14bfh
+dd 03da6f68ch
+dd 035061fffh
+dd 078e4ba70h
+dd 0d78af916h
+dd 04c0c6174h
+dd 09cd8984ah
+dd 0dd75c24ah
+dd 0542912e3h
+dd 0a87447deh
+dd 0570bdd58h
+dd 0c3ab10f1h
+dd 03cf093a4h
+dd 0f1ed3582h
+dd 0e70f3574h
+dd 071c060f5h
+dd 0b2e6e66dh
+dd 0984025fdh
+dd 0435efcb4h
+dd 0242b4fd1h
+dd 00d946385h
+dd 0b534407bh
+dd 050e14a40h
+dd 0ab71b05eh
+dd 0612569f4h
+dd 0bf4dc747h
+dd 036c04ed2h
+dd 0f198e6c5h
+dd 05d8ee52fh
+dd 0b002837bh
+dd 08ff7216eh
+dd 09317c87fh
+dd 0c3260367h
+dd 0288c47d6h
+dd 09170e271h
+dd 08830b39ah
+dd 0de98fdffh
+dd 050690d1bh
+dd 0b1831ff1h
+dd 09d546a43h
+dd 0f9b7fd33h
+dd 0701a788dh
+dd 03dd96da2h
+dd 067f32579h
+dd 07da3403dh
+dd 06adcfbbeh
+dd 02c639eaeh
+dd 00df8b084h
+dd 019b087e2h
+dd 0a6db99a7h
+dd 0cc138c72h
+dd 0ad488c6ah
+dd 0af2f2b39h
+dd 0cc675af7h
+dd 0829eff16h
+dd 0cc9a273ch
+dd 0c3d8fdech
+dd 0e8614859h
+dd 09f5823c9h
+dd 0caaffed2h
+dd 002fd08efh
+dd 06751009eh
+dd 023bdbf5dh
+dd 0503d7356h
+dd 0979a02f2h
+dd 07fbc0967h
+dd 0718470f6h
+dd 05d28efb3h
+dd 0f5265a02h
+dd 0918ab86ah
+dd 0b4fe0ebfh
+dd 0d041bacch
+dd 005fcabeah
+dd 0be9d8f71h
+dd 093a7bf34h
+dd 082b9e891h
+dd 0aaa127dah
+dd 0d7b3e46ah
+dd 0530e67eah
+dd 03d0e2b31h
+dd 017f60b4eh
+dd 09f9ff76bh
+dd 0c6519fa6h
+dd 025489551h
+dd 0dd3fd5a2h
+dd 0c93365f3h
+dd 0fa8dd09ch
+dd 002fb6668h
+dd 0ae8c51c7h
+dd 05fb397a6h
+dd 0108c50f0h
+dd 06f959857h
+dd 0df6fbee0h
+dd 030682cc7h
+dd 00b3f17f6h
+dd 0fe97a462h
+dd 065c6ff21h
+dd 090da9c29h
+dd 0c5dc29e4h
+dd 05c3ea1fdh
+dd 01079d749h
+dd 0e2ab3f2bh
+dd 04ea5d41dh
+dd 0fab09939h
+dd 0c1772021h
+dd 05ca069fdh
+dd 0fc8a0b10h
+dd 0f750dbfeh
+dd 059cd971eh
+dd 0a870569eh
+dd 080b1fceah
+dd 0051fc188h
+dd 00cef72efh
+dd 0bb32ac44h
+dd 0c0364501h
+dd 0eead2b75h
+dd 04074f503h
+dd 06c49e46bh
+dd 025fa885ah
+dd 03fed6a51h
+dd 094a57710h
+dd 028ad3ab0h
+dd 0490f821eh
+dd 09f62b9eeh
+dd 09739f87eh
+dd 08b5d02abh
+dd 06f71e3d1h
+dd 0388c7c38h
+dd 05e2d9ee2h
+dd 03084d175h
+dd 0e3cf836ch
+dd 051fc1d64h
+dd 09b3f8aceh
+dd 08e389cdfh
+dd 061addbc8h
+dd 04c8e2f10h
+dd 048d50f21h
+dd 03ded7efdh
+dd 04a6c3a2ch
+dd 045e41563h
+dd 01d3e088ah
+dd 0874fab4eh
+dd 0616ac854h
+dd 0cf70d9f6h
+dd 04e5c8151h
+dd 09f5c4279h
+dd 035167e9ah
+dd 002638442h
+dd 0a210117ch
+dd 02629bc98h
+dd 0c8df52ach
+dd 04c5fe6efh
+dd 0a3220937h
+dd 0058ab4ddh
+dd 0fe4a5e8bh
+dd 0455036e6h
+dd 00fe195edh
+dd 07e32ef09h
+dd 0a04d321eh
+dd 0b240908dh
+dd 0e1e65c9dh
+dd 0727f6ba3h
+dd 03132e07dh
+dd 01fc7e9dbh
+dd 03fcd75edh
+dd 0415f6c07h
+dd 0a045fac1h
+dd 07afe87c8h
+dd 06d4794a4h
+dd 01dc47f2ah
+dd 09b2eda03h
+dd 01d2f61e1h
+dd 020f58c15h
+dd 01bc16b4fh
+dd 04b624c76h
+dd 04be668b2h
+dd 00d0bd7b0h
+dd 06f98498ch
+dd 086e5577ch
+dd 07de5a055h
+dd 095e33d1ch
+dd 026cce02ch
+dd 0e8739a3eh
+dd 0692e441bh
+dd 0ce53bf60h
+dd 0419f7660h
+dd 04c0483e5h
+dd 0eaa2d229h
+dd 0b604f78ch
+dd 0f36bd7f0h
+dd 091ca9a05h
+dd 056e07408h
+dd 090f62dc9h
+dd 046baee54h
+dd 00ba9afb4h
+dd 060d57aa6h
+dd 0abe1091dh
+dd 047f7f5c8h
+dd 0aeeb5117h
+dd 06b2cda1ch
+dd 0133ac02ch
+dd 09e65371ch
+dd 0e922f757h
+dd 0156b69a2h
+dd 0209f8bf8h
+dd 076c3148fh
+dd 0c04be8deh
+dd 08ed80c37h
+dd 0a42d6af6h
+dd 0a1efeabch
+dd 0d21313fbh
+dd 0cfae35ffh
+dd 0ab2e9222h
+dd 0e89b2961h
+dd 01179e975h
+dd 08d7bb8bfh
+dd 06894a0bbh
+dd 0abe6fe6fh
+dd 022a67c9fh
+dd 0461f79cch
+dd 00e84983bh
+dd 0cbab0159h
+dd 0b20009c1h
+dd 02ab0470ch
+dd 0a528e3f1h
+dd 068b062e2h
+dd 057b76d7fh
+dd 0ddbb575eh
+dd 0a2f639fch
+dd 085d6a56ah
+dd 0d90179fah
+dd 0eecb083bh
+dd 0b436afdch
+dd 0c0573626h
+dd 006fc83f6h
+dd 00d1209e6h
+dd 0a1870414h
+dd 0b8065076h
+dd 0ded0eef2h
+dd 0fdbf2db1h
+dd 0db2caeb9h
+dd 0c78b1878h
+dd 080946a1eh
+dd 036025fd5h
+dd 046cbdb0fh
+dd 027c7936eh
+dd 0fb86dd4ah
+dd 0c49a37ffh
+dd 0bd33dabbh
+dd 043b0c2a2h
+dd 04bd00650h
+dd 0475f339fh
+dd 09ebcc817h
+dd 02648d254h
+dd 0bc560332h
+dd 081491de4h
+dd 0a4742cc3h
+dd 0e9e454b6h
+dd 0dc37741fh
+dd 014deb868h
+dd 012f83214h
+dd 042d8070ch
+dd 093926e66h
+dd 070044e22h
+dd 042aae093h
+dd 030c3c1fah
+dd 08612bfaeh
+dd 05b4ba81ch
+dd 00aac8057h
+dd 02c0fb817h
+dd 0b4000e7ch
+dd 0b6623401h
+dd 09e071126h
+dd 08c8440e3h
+dd 01c88757ah
+dd 05575d797h
+dd 0add6b991h
+dd 052956dc3h
+dd 0dbf61068h
+dd 0fba22363h
+dd 094982058h
+dd 0d2d75102h
+dd 01100a6d7h
+dd 0654a413ah
+dd 0bc03ac72h
+dd 070ea5064h
+dd 0db7aed4ah
+dd 0621e943ah
+dd 055783892h
+dd 05d99e710h
+dd 0ac3af2d7h
+dd 0333b1420h
+dd 08fea0d76h
+dd 063a68778h
+dd 0a9c0d540h
+dd 06618d725h
+dd 09e17280dh
+dd 0a08a4ddfh
+dd 08b56d05ch
+dd 0641a6a95h
+dd 06faf2605h
+dd 0a71a2707h
+dd 0b5a33feeh
+dd 080fa53edh
+dd 06da1779bh
+dd 046f70a31h
+dd 03635e5a6h
+dd 059d1f973h
+dd 022898b01h
+dd 06b2e14a5h
+dd 04b60929eh
+dd 0ef27f040h
+dd 0f3328673h
+dd 00838ab58h
+dd 0824737cbh
+dd 0c3965196h
+dd 02d281764h
+dd 0a96ce0dah
+dd 064fecf3ch
+dd 02a654ef5h
+dd 0be4852beh
+dd 0842cf2a6h
+dd 036333df6h
+dd 097c93b01h
+dd 0fc93f170h
+dd 05db10e2eh
+dd 0a85df499h
+dd 0ae8e51d0h
+dd 076f42ceah
+dd 06c66a63dh
+dd 04c703673h
+dd 02e112bbfh
+dd 04a10fe2dh
+dd 0a0b7c33dh
+dd 05158fb10h
+dd 049f11946h
+dd 05dcb7387h
+dd 06dd4bb5dh
+dd 092de8034h
+dd 0191cfdedh
+dd 0821e2c5ch
+dd 0e2616973h
+dd 083bad5d6h
+dd 063bdd80fh
+dd 006db714dh
+dd 0b6f0197fh
+dd 07d078cdah
+dd 09870ed46h
+dd 0e2138c60h
+dd 025bcdef8h
+dd 098e25a6eh
+dd 065433c52h
+dd 0b043fc31h
+dd 02c9dc8e6h
+dd 0394c871fh
+dd 01f9bf042h
+dd 0aa6fead4h
+dd 07492ffaeh
+dd 0b9cb1ee2h
+dd 05a4c8342h
+dd 01a2b2291h
+dd 00808c0e0h
+dd 054436821h
+dd 0e3850eebh
+dd 080b6f071h
+dd 058c56d27h
+dd 0e73d2f12h
+dd 00addad03h
+dd 0a28678a2h
+dd 0d9cdf446h
+dd 0b506cbc3h
+dd 0f8bb17e4h
+dd 093fe5987h
+dd 0df3bf374h
+dd 00c302cc2h
+dd 0103a0a53h
+dd 068350191h
+dd 04ceeb0dch
+dd 08db55509h
+dd 0a8e42d02h
+dd 059d9083dh
+dd 0c2e5f35dh
+dd 0fb3c20b5h
+dd 0afa928a6h
+dd 0b11c8b6bh
+dd 0cbcf3328h
+dd 0bba524abh
+dd 0b9d01097h
+dd 01c7bd716h
+dd 03f2f9060h
+dd 0d848e7f6h
+dd 0d7b1166dh
+dd 0bd470d15h
+dd 07dc0614ah
+dd 0bb14b06ah
+dd 02b915fedh
+dd 0458803beh
+dd 045c17945h
+dd 0b5cebf1ch
+dd 083bc33b2h
+dd 0b788ebf6h
+dd 05cb4815dh
+dd 05018208fh
+dd 0292075e4h
+dd 09babfba0h
+dd 0add8aaaeh
+dd 0a2cf4dceh
+dd 0fd279ca1h
+dd 083b15187h
+dd 0077fed81h
+dd 066858346h
+dd 063cf9862h
+dd 0a7a56722h
+dd 0c9093430h
+dd 063a17cf4h
+dd 006c4488dh
+dd 0381b7db7h
+dd 0b8f7ad30h
+dd 0a29d9328h
+dd 0410778a8h
+dd 06592ff16h
+dd 043742e76h
+dd 0681c29dbh
+dd 004b7d9d1h
+dd 0db26d98eh
+dd 0460c6a76h
+dd 0f434d253h
+dd 0ea1b7e8ah
+dd 086080d8fh
+dd 02bcf52e1h
+dd 03535f7e6h
+dd 015c87895h
+dd 0d92651f6h
+dd 01973ff61h
+dd 057e7c373h
+dd 08056e977h
+dd 07357f8f0h
+dd 0cece951ah
+dd 0cbd7f96dh
+dd 0893c31ach
+dd 0367ab414h
+dd 02e225130h
+dd 096a9f9b1h
+dd 038a3bc8eh
+dd 02284e06dh
+dd 08d8c05d3h
+dd 02b4af3ach
+dd 0389e6221h
+dd 08ac04943h
+dd 088a4cb55h
+dd 0b18a783ah
+dd 00bba25e2h
+dd 0c563f2c4h
+dd 05fa4d937h
+dd 0b56fd702h
+dd 03c5df295h
+dd 0a2a53ff9h
+dd 07aa7f142h
+dd 04b05dd61h
+dd 0af2b03a9h
+dd 035fbb2f9h
+dd 0de28ca02h
+dd 071452ea2h
+dd 08f60f13fh
+dd 03a05e3a6h
+dd 08417b792h
+dd 0d1b610ech
+dd 0386c59fch
+dd 0cb5b65f7h
+dd 01053f786h
+dd 0c943d65bh
+dd 0cc30b6e7h
+dd 006b72b81h
+dd 0791e3419h
+dd 0bcc63306h
+dd 05436c9d4h
+dd 0eb0a3ab0h
+dd 05d9ba6d9h
+dd 0c253a0c9h
+dd 0c246f9edh
+dd 0e4f45990h
+dd 06da5bbdeh
+dd 0e2f2d58bh
+dd 0ecf9badbh
+dd 0a37f78aeh
+dd 02266b1b1h
+dd 09571bf82h
+dd 0e2fc27a2h
+dd 09c281aa7h
+dd 0cc85da12h
+dd 06074352dh
+dd 00f148cfdh
+dd 0c43fcd99h
+dd 0dcb4b35bh
+dd 08ad7441ch
+dd 00b122ba7h
+dd 03f7de1f3h
+dd 05ea3ceadh
+dd 07c2a1730h
+dd 0f9e7fb11h
+dd 058358947h
+dd 0350aad75h
+dd 0f63e09bch
+dd 06b1bde10h
+dd 0665de6b6h
+dd 0ec7e056dh
+dd 02c2a2668h
+dd 010257193h
+dd 07b5c5c9fh
+dd 0793cfc3dh
+dd 09e295fb7h
+dd 07fedd79bh
+dd 01c12426dh
+dd 042f12846h
+dd 0cc5d7c31h
+dd 0ecb1b47dh
+dd 067319adfh
+dd 0a64f4049h
+dd 04f50df4fh
+dd 0839e907fh
+dd 0555e822eh
+dd 004db2bcah
+dd 082e8be00h
+dd 0d5ab85c5h
+dd 0de31c754h
+dd 0e553ab41h
+dd 00eb4c266h
+dd 050eaf2d3h
+dd 0fe35a3e3h
+dd 02e14e148h
+dd 026126b25h
+dd 005c4657ch
+dd 0e99dde84h
+dd 0afa6555dh
+dd 0b7646badh
+dd 04f5c4a5fh
+dd 01d0ac0d6h
+dd 01e760d85h
+dd 05bb4cf2eh
+dd 04aeb83c0h
+dd 09ec1f0dfh
+dd 076450ed4h
+dd 0806977b0h
+dd 0dab996cch
+dd 0f8dc80bch
+dd 07e661709h
+dd 0217fc496h
+dd 03af28d75h
+dd 0aa0f5dcdh
+dd 0c60ae68bh
+dd 0b2cd46d3h
+dd 0680f7a33h
+dd 06c0c1ad8h
+dd 096aa352dh
+dd 01471fa65h
+dd 06458a6f2h
+dd 0e838f34dh
+dd 0dbe561c0h
+dd 001f332b8h
+dd 09d6796bah
+dd 07797af49h
+dd 0f28be39ch
+dd 0c2c1e1d7h
+dd 0120abf15h
+dd 065b52af2h
+dd 01cf997ceh
+dd 09c5d9072h
+dd 0187bce4fh
+dd 08c8801e7h
+dd 004f8abb4h
+dd 0047c2696h
+dd 06d838b4eh
+dd 02051aeddh
+dd 01daafcd2h
+dd 078e46e01h
+dd 0e101e1b0h
+dd 0841e88c3h
+dd 0a58e9609h
+dd 07f2fc3dah
+dd 0a6ff2949h
+dd 034d1658fh
+dd 0adc1c865h
+dd 052cabd2ch
+dd 0ff8b04d0h
+dd 0c7e84fbah
+dd 0452fc1abh
+dd 098ac7cfeh
+dd 0404b6ed4h
+dd 0c78f622bh
+dd 01156c061h
+dd 0913975fdh
+dd 01d268c29h
+dd 07e4360c4h
+dd 08ae28cc1h
+dd 0c63781a6h
+dd 05cb1a2aeh
+dd 00a04bc50h
+dd 0ebd940b5h
+dd 00860d85bh
+dd 0f759952fh
+dd 0f6500064h
+dd 078360f8fh
+dd 003cac094h
+dd 0a6106323h
+dd 092c07b64h
+dd 0bbe2d4e6h
+dd 050ff5357h
+dd 0c555a475h
+dd 0ee778e59h
+dd 0da7b9ecdh
+dd 08fa98a2ch
+dd 05a150a65h
+dd 0b6e98e8fh
+dd 0838e9e60h
+dd 0ec2d1368h
+dd 056f91adeh
+dd 07365ba83h
+dd 021f504fbh
+dd 0121cff89h
+dd 0eada5b4dh
+dd 09d2b9359h
+dd 064df5fd7h
+dd 03af90d73h
+dd 0c1a2baf6h
+dd 00e2b1df5h
+dd 061719d81h
+dd 002da3daeh
+dd 0a23a4fe3h
+dd 025726812h
+dd 0023ada67h
+dd 0fc5ac60eh
+dd 0f7866e06h
+dd 0779b1a51h
+dd 00a16db74h
+dd 0095d9625h
+dd 0132b6214h
+dd 02cd71686h
+dd 06c4d9f1ch
+dd 08d10c005h
+dd 02700b740h
+dd 0b0722910h
+dd 0e571a161h
+dd 01e886f36h
+dd 0176029e6h
+dd 04b08f9e9h
+dd 091186b3eh
+dd 08dd61d6dh
+dd 02ae31c19h
+dd 00fa0af49h
+dd 0fb5eeb5ah
+dd 05dc45de3h
+dd 02561f114h
+dd 062d65deeh
+dd 008ddc769h
+dd 03bd99e00h
+dd 0b2705fbch
+dd 0694a7d31h
+dd 018134579h
+dd 0fbb655cdh
+dd 06b1dc170h
+dd 035d20863h
+dd 098fcadbbh
+dd 0c8f5624eh
+dd 0fe5b86a2h
+dd 04cea75d8h
+dd 02492c920h
+dd 070173397h
+dd 0b62d3ad0h
+dd 05b2d2400h
+dd 01ce4aa3eh
+dd 099ba6a38h
+dd 019d2f9cah
+dd 0e31cbb90h
+dd 00c28973ah
+dd 0452be131h
+dd 0a3c20065h
+dd 023055cc2h
+dd 0188ce90eh
+dd 0ba5436a7h
+dd 03c0e0b37h
+dd 096746650h
+dd 05e785344h
+dd 0c3cf03e4h
+dd 0e6f87b34h
+dd 03b08540eh
+dd 0b2aecc57h
+dd 0b6a93983h
+dd 0e3fef61ch
+dd 0bffacf06h
+dd 0a25180f4h
+dd 0a10de0afh
+dd 0e76af133h
+dd 06c46def0h
+dd 0f22c8bbfh
+dd 0a9b1ad70h
+dd 0f36d522bh
+dd 02b505512h
+dd 02cff1db7h
+dd 0d5ee0e83h
+dd 0ed921f9fh
+dd 0db036804h
+dd 0a26524cdh
+dd 0658a360bh
+dd 08163eacch
+dd 03bf40d45h
+dd 040dba324h
+dd 00f9093b0h
+dd 0a63637b7h
+dd 0a5e63c2fh
+dd 0169a8fadh
+dd 0691f6eb4h
+dd 058c833e6h
+dd 0985660cah
+dd 0993b7b2fh
+dd 094f3732eh
+dd 00c93108dh
+dd 07f408f38h
+dd 0b110c839h
+dd 01b5c2843h
+dd 02fa60065h
+dd 09a170befh
+dd 0a8314bc9h
+dd 025e412b3h
+dd 095e9dc2ah
+dd 0fc9473f6h
+dd 021f33d5fh
+dd 0940dc372h
+dd 0b5492c1ah
+dd 0e11c630fh
+dd 0fa835ac3h
+dd 07eea66fah
+dd 06dffa1dah
+dd 0be2b8a10h
+dd 0f5fd8180h
+dd 00936d839h
+dd 003b3f63ah
+dd 0c6ff0a28h
+dd 0a982a5e3h
+dd 07d0d92d4h
+dd 0a57a806bh
+dd 0d23f180fh
+dd 07c7ae097h
+dd 035311654h
+dd 0ac738bd0h
+dd 04e77e7a3h
+dd 014fb4229h
+dd 0df6ea583h
+dd 091659b21h
+dd 03d2c9e1fh
+dd 0ba306ac2h
+dd 0889ad442h
+dd 0caf67e1fh
+dd 09bf0cfbah
+dd 004ffb8cch
+dd 0b05f3ebch
+dd 09532d71dh
+dd 06c8c76bch
+dd 03dd8e179h
+dd 03a0e5d7eh
+dd 0b53273a6h
+dd 0f1c0f5bch
+dd 0e3b35d0ah
+dd 00e07c6c9h
+dd 0d4b5cac2h
+dd 00c81cb01h
+dd 066e3fc73h
+dd 087c245ech
+dd 0df198fe2h
+dd 07dd6016fh
+dd 0642c9e93h
+dd 006509787h
+dd 0d661261ah
+dd 0b7b6ccaeh
+dd 03d10480ch
+dd 0ed44239dh
+dd 0b28e2946h
+dd 00989fbcah
+dd 0ff589bf4h
+dd 0c100d796h
+dd 022dd8b5bh
+dd 06ae6889eh
+dd 02a8f2898h
+dd 044650023h
+dd 0fdb60e0ch
+dd 0854a1b23h
+dd 074e91886h
+dd 0e86a055fh
+dd 0d585c6d9h
+dd 07f485e1ah
+dd 0001eaaa2h
+dd 06f72dfa4h
+dd 0f2fa494ah
+dd 05bdbac64h
+dd 06e39de92h
+dd 0fd15accdh
+dd 0fadc856eh
+dd 02daf5519h
+dd 0aee40c96h
+dd 0843b7edbh
+dd 074f67a39h
+dd 0e3f2162bh
+dd 0203ea4fbh
+dd 05e277261h
+dd 0f20570fch
+dd 0093b4b1eh
+dd 06f9326e8h
+dd 0d7be5523h
+dd 0bcce6349h
+dd 092b8969bh
+dd 03da593f6h
+dd 04dae7531h
+dd 02a75cb4fh
+dd 09c6a7a5bh
+dd 0d4a14989h
+dd 0eae4edf9h
+dd 076bc3224h
+dd 0a66f6ddeh
+dd 0c863c705h
+dd 0c95c0dech
+dd 044dd238ah
+dd 033cdcfefh
+dd 0632f51f2h
+dd 05f1b7be8h
+dd 03a3304d6h
+dd 06b7f719eh
+dd 0be9da865h
+dd 0b6b9f3e6h
+dd 0e8bfb6eeh
+dd 056167b00h
+dd 0ef6bd2a8h
+dd 0a08a064fh
+dd 0ccac9f22h
+dd 0933175dbh
+dd 0cbe7c9dbh
+dd 0cfaf3dfah
+dd 02200122ah
+dd 0cb3b975ah
+dd 0071fa7dbh
+dd 06affec38h
+dd 0d7048d20h
+dd 0955c8e30h
+dd 0e35989f2h
+dd 0edf0c8d8h
+dd 0b3cc2bcfh
+dd 078b214aeh
+dd 0921daeach
+dd 0741eacddh
+dd 0a8169ad3h
+dd 03b08dedeh
+dd 0e83d15b0h
+dd 0e4dbe321h
+dd 0579c013ch
+dd 0c854f791h
+dd 0fbdf9b63h
+dd 009e07a40h
+dd 0bf29b10dh
+dd 0d1676255h
+dd 094357616h
+dd 0fd8163a4h
+dd 026bf4479h
+dd 02812b8d2h
+dd 0e82d8e9dh
+dd 07518de5dh
+dd 0c1412136h
+dd 0456faf7bh
+dd 0a6582e37h
+dd 022189420h
+dd 0e1428a0ch
+dd 048b8ed78h
+dd 0cf0b7be6h
+dd 0ed0c6af4h
+dd 054f52eb0h
+dd 062b438cfh
+dd 00a96a3d5h
+dd 03ca608c0h
+dd 0f3603ebfh
+dd 05c517615h
+dd 009db2ce9h
+dd 0505245a5h
+dd 0f172adf6h
+dd 068aa3261h
+dd 051e3b73fh
+dd 0d867e6beh
+dd 0091f0b6ch
+dd 03ddec8d7h
+dd 0db8e1477h
+dd 0ac3515a0h
+dd 049dda4f6h
+dd 0ef02b5d2h
+dd 0757d11b7h
+dd 00960cf6ah
+dd 0ab0dd276h
+dd 0e68740e3h
+dd 0b6dc69e4h
+dd 01e1b120dh
+dd 0ed0b18f8h
+dd 05d0b6f9ch
+dd 09a81bc94h
+dd 0c375e5c3h
+dd 0095b199ch
+dd 0f2a135e2h
+dd 0905f7b34h
+dd 0950adb83h
+dd 0cecb2c46h
+dd 08ceeebfbh
+dd 0a665d968h
+dd 0e77284dbh
+dd 0061c174bh
+dd 0356965e2h
+dd 006d92996h
+dd 0ccbdd9d6h
+dd 0e17eebd9h
+dd 09f821e7eh
+dd 031a9f173h
+dd 0bec32243h
+dd 05bb481c3h
+dd 0a4b39b90h
+dd 0e5784261h
+dd 05f434377h
+dd 09f71f15dh
+dd 020c0d5e3h
+dd 0ec73b5ech
+dd 06655b887h
+dd 09dc61738h
+dd 0e9bf0dd4h
+dd 0dd9b1b0eh
+dd 0675bf625h
+dd 07c02a718h
+dd 0bf1c7d04h
+dd 0a9e3a783h
+dd 072321f23h
+dd 0ab37aa16h
+dd 0b08e6baah
+dd 085304023h
+dd 039415810h
+dd 01148e229h
+dd 0424b535eh
+dd 0926135a2h
+dd 082695944h
+dd 0f6695ba1h
+dd 0b0f3c40ch
+dd 045c71581h
+dd 01b9c7bb4h
+dd 006f29a8bh
+dd 0aa31e946h
+dd 0a19835bfh
+dd 012af5a82h
+dd 00ac5da3dh
+dd 0533b8178h
+dd 0d69aa933h
+dd 0ca514ca5h
+dd 07623fe2fh
+dd 065fa51edh
+dd 016e087f1h
+dd 033c8097dh
+dd 0b9f40244h
+dd 09d493edeh
+dd 03c945734h
+dd 0094e0292h
+dd 0539139f3h
+dd 0e702faa8h
+dd 039230773h
+dd 0c313b3deh
+dd 0e774b413h
+dd 0d6b193eah
+dd 02d2fa897h
+dd 0f14adbbch
+dd 0e80f5365h
+dd 0ebfe34eeh
+dd 049cdb604h
+dd 069b83142h
+dd 0ba74e371h
+dd 01335a749h
+dd 0c71e38f4h
+dd 010baf64ah
+dd 036d883cah
+dd 09d8f2ab5h
+dd 01ecf8deeh
+dd 09926eabdh
+dd 066b75b1fh
+dd 0a65369c8h
+dd 0b283411ah
+dd 07f54d591h
+dd 0bf6ce979h
+dd 05cab7904h
+dd 062c1cabbh
+dd 01f4ab718h
+dd 0aaa5dd78h
+dd 0443b8948h
+dd 088d5bfd0h
+dd 075011b1dh
+dd 0b6884d26h
+dd 0f40da5f7h
+dd 09fb02a49h
+dd 0881f9a3eh
+dd 0cac2270ch
+dd 02176694eh
+dd 08fae8cbdh
+dd 0419ba2d3h
+dd 00074942eh
+dd 0f9604996h
+dd 0adc067b6h
+dd 03ad9856bh
+dd 036b754b3h
+dd 07597460fh
+dd 0feeede21h
+dd 05d393a2dh
+dd 06c6a54e9h
+dd 003098ad9h
+dd 0305b3617h
+dd 0b5518a03h
+dd 08c1ac53ch
+dd 0bae69f10h
+dd 0c0c93899h
+dd 0083a14c7h
+dd 05ee68d19h
+dd 01817332dh
+dd 054bc5640h
+dd 04da12b55h
+dd 0b1f69fafh
+dd 0fa1c619ah
+dd 0611b9cf8h
+dd 0d07d28b6h
+dd 00be92d95h
+dd 03e9fea91h
+dd 0876181adh
+dd 021bdbe2dh
+dd 04c13fe4fh
+dd 0d220dec1h
+dd 033bf4b7fh
+dd 0aac911b2h
+dd 0cef6a8c9h
+dd 00d2f647bh
+dd 01c08ebf3h
+dd 00141d9fdh
+dd 0e877ed57h
+dd 09021034dh
+dd 00c1d9460h
+dd 00169e2e8h
+dd 07e834464h
+dd 0f85f52f4h
+dd 0f89f5d15h
+dd 0ccb82d89h
+dd 087b0463dh
+dd 0d7ca7e73h
+dd 019ce3997h
+dd 0a4b020fah
+dd 0370eac08h
+dd 043c517cfh
+dd 0064a12a6h
+dd 09a778a7dh
+dd 0bd404e92h
+dd 07ed7ca26h
+dd 0e691ae42h
+dd 0f65baae5h
+dd 0c2e2d1fdh
+dd 018b7f226h
+dd 08921bcdeh
+dd 05cca9eddh
+dd 064d6263dh
+dd 00cde703eh
+dd 05ff25697h
+dd 086219458h
+dd 0d1bce9e0h
+dd 0f360de5eh
+dd 0b0909019h
+dd 0d68a1114h
+dd 05007567eh
+dd 0e022d215h
+dd 04c6f9abdh
+dd 067c5f870h
+dd 00f1a0216h
+dd 034f6ec0eh
+dd 0c2061352h
+dd 08506ab5fh
+dd 0b8988de6h
+dd 0b81988e1h
+dd 0155dd7afh
+dd 04ace9fe0h
+dd 081bd438ch
+dd 0a57a7c8eh
+dd 01da0e371h
+dd 0a6c21c1dh
+dd 00733ffc0h
+dd 05f81846bh
+dd 0cde0ff7ch
+dd 01279f349h
+dd 0d6957354h
+dd 02c47e9d7h
+dd 0f009fd66h
+dd 0f88a1562h
+dd 06fc20c94h
+dd 038710076h
+dd 0f6a298bah
+dd 040f60919h
+dd 0f03b5f25h
+dd 03f200391h
+dd 066d19fb0h
+dd 04ea50853h
+dd 0ed3f767ch
+dd 0081ab26ch
+dd 0cccec6fdh
+dd 019b9e88dh
+dd 027db6a97h
+dd 052e36947h
+dd 0dbcfe168h
+dd 0d178e7fdh
+dd 0936bef5fh
+dd 0100a2acfh
+dd 0bf78ff7ch
+dd 0ea3a5709h
+dd 0f2977386h
+dd 069849516h
+dd 0fad83cedh
+dd 0aecc1f3dh
+dd 07d26bb02h
+dd 0088e2fa6h
+dd 0b6579489h
+dd 067afb453h
+dd 0c730ed47h
+dd 080ea1454h
+dd 0b4ba19a7h
+dd 0e797eeabh
+dd 0dc5c45ebh
+dd 0718ed535h
+dd 0c04b11c1h
+dd 0eaeb2504h
+dd 03078e47eh
+dd 086ab4fedh
+dd 0eeee9e59h
+dd 0dae2e304h
+dd 0b1d2bdd2h
+dd 05a9f7e5dh
+dd 0bb53ea43h
+dd 04519d5d8h
+dd 0decc45d2h
+dd 078fbef54h
+dd 0df63818fh
+dd 057a74530h
+dd 06c568b64h
+dd 07403d83fh
+dd 046daac12h
+dd 0f21b0abah
+dd 0bf95a544h
+dd 0c14dd9c1h
+dd 072f99b95h
+dd 01a4f9ba3h
+dd 0caf82a38h
+dd 06bbfbe5fh
+dd 037e1a67eh
+dd 0da553404h
+dd 07afe8bf7h
+dd 01f3f3a08h
+dd 0e3649f55h
+dd 0b6719498h
+dd 0640850e3h
+dd 0f0c1e2b1h
+dd 0c17acd97h
+dd 07758e285h
+dd 07e1b7419h
+dd 0897bd1d4h
+dd 095f3d761h
+dd 01abcc5aeh
+dd 0952d65ceh
+dd 0454e18f2h
+dd 096360436h
+dd 0654979c2h
+dd 087b55a0bh
+dd 0b35fd23bh
+dd 06e05b868h
+dd 0a4559e2bh
+dd 079e2e098h
+dd 09687693eh
+dd 03a15377ch
+dd 0bdd8734dh
+dd 0cb9818a2h
+dd 0b49fefa5h
+dd 07724ed1eh
+dd 07ac5d157h
+dd 0a344918ch
+dd 08726491dh
+dd 01d2549e7h
+dd 02b3bb441h
+dd 0cdc84d02h
+dd 0c8cb94e8h
+dd 062507412h
+dd 083611334h
+dd 0f20dab65h
+dd 0deb05ab7h
+dd 04442921ah
+dd 011a190a0h
+dd 08a4b798ch
+dd 0be0a6804h
+dd 02f8c0a70h
+dd 08d1cd034h
+dd 058919b3dh
+dd 03d0d0e5eh
+dd 03c229cbfh
+dd 07649b48eh
+dd 0aaa74173h
+dd 0590292b0h
+dd 021a0b425h
+dd 0eed332cah
+dd 0b877b82ah
+dd 032065103h
+dd 04e06963bh
+dd 05d95f74ch
+dd 07ea455f6h
+dd 0dcd7c910h
+dd 09202071eh
+dd 0b37fd264h
+dd 0966d6a0fh
+dd 05be4c002h
+dd 05f7d554bh
+dd 093f1fc39h
+dd 07c162e71h
+dd 04d8beaa9h
+dd 0ab308053h
+dd 0242d4f0eh
+dd 06f1046c8h
+dd 09706ef9dh
+dd 05deed2d3h
+dd 0be57be5bh
+dd 09598b104h
+dd 0585197c2h
+dd 0931c5a97h
+dd 03504c0a4h
+dd 0991cd09fh
+dd 04f79f7b3h
+dd 07b5c73deh
+dd 0619adda8h
+dd 0ad86647eh
+dd 0a6494154h
+dd 0e745d0b3h
+dd 028dcc7a6h
+dd 03560ad89h
+dd 0b649044eh
+dd 00ddad55bh
+dd 0dbc7765bh
+dd 0c64a9dach
+dd 09c9bcb92h
+dd 097940396h
+dd 06d2b87f9h
+dd 0b29f9280h
+dd 0cfaf443dh
+dd 094a320b5h
+dd 0358169c2h
+dd 071fbef00h
+dd 0cb4c5485h
+dd 0e5f1f0ech
+dd 0d4c8db2eh
+dd 0bbc63191h
+dd 0bb3e55c4h
+dd 0f1df56a5h
+dd 0921d3d30h
+dd 0a86da895h
+dd 0b0524d6eh
+dd 061d95672h
+dd 0a7a7c35bh
+dd 0e35e21d3h
+dd 0ae018e55h
+dd 045c01950h
+dd 0f27a3a5dh
+dd 0627a95c1h
+dd 0e1be4bbdh
+dd 0d7fdc63bh
+dd 0562ed4b0h
+dd 08edd602fh
+dd 0e9146d40h
+dd 0d7698c69h
+dd 0943bf5afh
+dd 0d882edb3h
+dd 05dc00eeeh
+dd 04167f32ah
+dd 01da6c5d1h
+dd 0d716ecedh
+dd 01c25a420h
+dd 0999a24fch
+dd 057ebef68h
+dd 0ddb16535h
+dd 0379eb4f6h
+dd 0dcb2b81ch
+dd 0648a8e31h
+dd 0b82cc131h
+dd 0465d4f2ch
+dd 03ad531eeh
+dd 05c770236h
+dd 066537de2h
+dd 0ade933cdh
+dd 04545bfceh
+dd 0375427d6h
+dd 02c425f44h
+dd 0922a6ba1h
+dd 01906f79fh
+dd 08aeb288eh
+dd 03643052dh
+dd 08294bd2bh
+dd 0eaa9450ah
+dd 09c55effbh
+dd 08d2d2d74h
+dd 033b3a7a9h
+dd 0bb528f83h
+dd 07809e914h
+dd 097167503h
+dd 00af78c5ah
+dd 0cd30b2e6h
+dd 01b2f0780h
+dd 0441d314eh
+dd 087c358d1h
+dd 0c4fea7f1h
+dd 0f1dd3b04h
+dd 094a643aah
+dd 07b81b56ah
+dd 0f055a4a4h
+dd 0840fa777h
+dd 0a7c88769h
+dd 0ca903a9fh
+dd 0ac3370fbh
+dd 023e29bb2h
+dd 0628de5adh
+dd 06b9b99fdh
+dd 05369950eh
+dd 05005be32h
+dd 0e007b56ah
+dd 041109113h
+dd 0b09cfaa7h
+dd 05d35e513h
+dd 06d8ebd88h
+dd 0ab499f8fh
+dd 09f852c5ah
+dd 08ff1ab43h
+dd 0b3ba1870h
+dd 06af5933eh
+dd 091defb50h
+dd 055fc4a9fh
+dd 0d2283121h
+dd 022fee9f1h
+dd 0f1cf9e16h
+dd 0bd22451fh
+dd 04c1c5a1eh
+dd 03a20f58dh
+dd 01b4e5281h
+dd 0758d1690h
+dd 0d50e7e30h
+dd 0eef13170h
+dd 0a24c7761h
+dd 00801d211h
+dd 01f2b050ah
+dd 0499c5568h
+dd 00747f526h
+dd 0ef230595h
+dd 07a8ccb39h
+dd 0ecc87827h
+dd 09ff380b5h
+dd 0aaa1737ah
+dd 019e4e1d2h
+dd 020e2406eh
+dd 0158a1c68h
+dd 0bab448feh
+dd 0bac58296h
+dd 0d75f9fffh
+dd 0a13e92cch
+dd 09432bf30h
+dd 0ccdbf065h
+dd 0bcdfcf69h
+dd 09e2d22c1h
+dd 06658a0ebh
+dd 0040dc5fch
+dd 046fbd9b9h
+dd 019bc4763h
+dd 0b829a24dh
+dd 0d8474290h
+dd 0a83bed64h
+dd 03c390057h
+dd 0975756bch
+dd 025e3cf22h
+dd 0b7a70441h
+dd 046491e8bh
+dd 02f00c5e2h
+dd 0ecf0a382h
+dd 064f8952fh
+dd 0f23203d1h
+dd 0ebbce8c2h
+dd 0e2443696h
+dd 0a312cab2h
+dd 081da78a9h
+dd 066ef5663h
+dd 07e5e562ch
+dd 008640860h
+dd 0ea8bc056h
+dd 0820b3033h
+dd 0b8d5b5eeh
+dd 0eb2c7fa5h
+dd 0b8e61056h
+dd 0b3caf78ah
+dd 0e4ed426ch
+dd 075630b3ah
+dd 0687076d7h
+dd 062416ad5h
+dd 0ad8fe183h
+dd 0105a4aach
+dd 016eccd8ch
+dd 0720f7ab5h
+dd 046f8e145h
+dd 0aef602dbh
+dd 0a302c028h
+dd 0e9af4a73h
+dd 06778a892h
+dd 0f3763e72h
+dd 05086b172h
+dd 0e197c8e4h
+dd 0ae067f88h
+dd 0d4ba52d1h
+dd 07368e65eh
+dd 064e60265h
+dd 0eb080b60h
+dd 0c3f65aa1h
+dd 0929213b0h
+dd 07f6709eeh
+dd 031523b0eh
+dd 09350af9ch
+dd 09c2a877eh
+dd 0ea316204h
+dd 099caedf8h
+dd 010a5649ah
+dd 02a51c3efh
+dd 0ff6611a2h
+dd 07a83b402h
+dd 00d1f81ffh
+dd 03216dcb8h
+dd 0f2f32d97h
+dd 08642a9dch
+dd 09ca79936h
+dd 02d28f0beh
+dd 04a50af10h
+dd 0174ffde4h
+dd 0aaadcc24h
+dd 00098461bh
+dd 0778ee081h
+dd 060f158e3h
+dd 04c417394h
+dd 0638963f0h
+dd 0d71ace0fh
+dd 05b45ba39h
+dd 0e8266b79h
+dd 0dae5b0c1h
+dd 033a9d5e6h
+dd 0048d36b0h
+dd 09eb384d2h
+dd 0f308ed2ch
+dd 0d18ba58ch
+dd 0d5de88cfh
+dd 0dcfc2a4ch
+dd 039910170h
+dd 08ec7917dh
+dd 044192eafh
+dd 023c37fddh
+dd 08560a3f6h
+dd 0bf83dc91h
+dd 02c9f8918h
+dd 0941615c1h
+dd 09ef8c93dh
+dd 0d8c52c06h
+dd 0046f0ebeh
+dd 0731ac0a8h
+dd 0c7176165h
+dd 09dafb580h
+dd 0df7ff7ddh
+dd 035768333h
+dd 08eec2b17h
+dd 00aaa97f9h
+dd 0b8f1e918h
+dd 0e41bafe6h
+dd 0b3e06e47h
+dd 0dbb825deh
+dd 0588e32b0h
+dd 0a517f3cch
+dd 07bd950b8h
+dd 07def38eeh
+dd 02493e267h
+dd 082de0f7ch
+dd 056bc8a69h
+dd 03606e514h
+dd 006ecb446h
+dd 01d653182h
+dd 092d5c881h
+dd 0f96b8366h
+dd 0a7f301e5h
+dd 0f2275230h
+dd 077b3a1ffh
+dd 0b8af69c5h
+dd 09a7dde0ch
+dd 0bb2ca721h
+dd 0b1a1fd48h
+dd 0efb94142h
+dd 0323a4b4eh
+dd 000766492h
+dd 00b5aa0eeh
+dd 0cbc921e8h
+dd 016f8f28fh
+dd 04158a277h
+dd 01e5826dch
+dd 051c65da6h
+dd 0d200ba9fh
+dd 0eea7a94fh
+dd 09fbe73c1h
+dd 0f63db07dh
+dd 0911b66b9h
+dd 06900153bh
+dd 03fe01063h
+dd 0b80dbeffh
+dd 03a0d8815h
+dd 04f722b8fh
+dd 0a99df8dfh
+dd 08c1405ceh
+dd 0bb4c6170h
+dd 0fd71d74ah
+dd 0e5824f26h
+dd 0d4aad2c4h
+dd 016cb20fch
+dd 099ec1174h
+dd 0443a6709h
+dd 0b1b092d4h
+dd 0ab81ba03h
+dd 0aa6f73e2h
+dd 0ccefb6b9h
+dd 0cb0314ddh
+dd 0e44b9060h
+dd 05e57bf68h
+dd 0816c89eah
+dd 001db42a6h
+dd 03398a7ceh
+dd 0e47f6481h
+dd 025b1690ch
+dd 047d90ae0h
+dd 0bb7aa888h
+dd 061a4d44ah
+dd 03b25334eh
+dd 0a629b782h
+dd 05c14d971h
+dd 0e13f80eah
+dd 0a5bec92fh
+dd 0ca474cf4h
+dd 0c23c1c8dh
+dd 042b04cfch
+dd 08e3d6682h
+dd 0ca2ff823h
+dd 0661b0831h
+dd 06b30102fh
+dd 087a4a123h
+dd 0fb173460h
+dd 048988103h
+dd 02e63be7ch
+dd 0974a9516h
+dd 0822cd2d9h
+dd 036efb30eh
+dd 045d6110bh
+dd 042658032h
+dd 05755f57dh
+dd 056a8619ch
+dd 0625b8b7ah
+dd 0e1356aefh
+dd 041ece2f4h
+dd 04226ff3bh
+dd 0d62676d0h
+dd 0c129f436h
+dd 0fb17ebbbh
+dd 0d173dae9h
+dd 061790ba2h
+dd 0ef726b10h
+dd 0a531fd14h
+dd 0914d4940h
+dd 0c0314d8fh
+dd 068ceee60h
+dd 0960c5969h
+dd 0b4b22513h
+dd 0093e0ac5h
+dd 07ea141f9h
+dd 0814f1d59h
+dd 0c43c6840h
+dd 084dabf18h
+dd 0db7d97a0h
+dd 035ac53f3h
+dd 0988d7748h
+dd 037b1e27dh
+dd 0330fed8ch
+dd 0a4d38a7bh
+dd 000482509h
+dd 0c12c88cfh
+dd 014ea0c80h
+dd 0d463d878h
+dd 0db7bf5c9h
+dd 005bd666eh
+dd 003c21ad2h
+dd 00ef45171h
+dd 02f219974h
+dd 04ef06b97h
+dd 0f147457ch
+dd 0ec4f6148h
+dd 0ad7e646ah
+dd 0eeaa76f1h
+dd 04b30f631h
+dd 0762ff335h
+dd 02e5d2bb2h
+dd 09ad104f4h
+dd 0d568c45fh
+dd 048f6271eh
+dd 0203f0366h
+dd 0f92abf7dh
+dd 0c7d6556ah
+dd 053b5ea5ch
+dd 0ca3ccb55h
+dd 0aeadf037h
+dd 015bfad85h
+dd 080ff7941h
+dd 0dc6d4ec8h
+dd 0dc40f9cbh
+dd 06bba765ch
+dd 083f4f2bch
+dd 0ec706cc4h
+dd 07ab95a0dh
+dd 026540965h
+dd 06becf0e9h
+dd 0855e0defh
+dd 0e9326514h
+dd 02f0265e4h
+dd 023440f1ah
+dd 0e5211943h
+dd 036d1f731h
+dd 0752ba3ffh
+dd 0b182f83ch
+dd 02acfb87bh
+dd 0c7032d37h
+dd 086b03a4dh
+dd 0b0cd3cc6h
+dd 027c0b462h
+dd 04662309ah
+dd 0182e21d5h
+dd 0cd4c4e1bh
+dd 09642952ah
+dd 048f70b83h
+dd 08e10a53ah
+dd 0ce9a73b3h
+dd 0bf80bcbdh
+dd 07e8788dah
+dd 04f9f0b66h
+dd 01b36bc87h
+dd 06087ca4ah
+dd 0df7697c4h
+dd 07bed7095h
+dd 06dbfdbf9h
+dd 006dc5963h
+dd 041f0cbd8h
+dd 0031a410ah
+dd 08893a23ch
+dd 08f22d6d9h
+dd 068fb4974h
+dd 03d5bbec9h
+dd 07a6ff6f1h
+dd 00c741801h
+dd 0abdbe5a7h
+dd 0e2a1663fh
+dd 09449dfa1h
+dd 0c4735ae0h
+dd 082a01123h
+dd 035fb8e95h
+dd 03d900070h
+dd 0be7aa29eh
+dd 0f877568ch
+dd 091cfecebh
+dd 06438bac4h
+dd 035768fedh
+dd 07b392c75h
+dd 0c53b140ah
+dd 08ff76ac4h
+dd 05e9d3fb1h
+dd 02d586d88h
+dd 0ce32fc3eh
+dd 084d5d167h
+dd 064121f24h
+dd 03bd75402h
+dd 0d6bcde6ah
+dd 0b2b6b09eh
+dd 09f98e02bh
+dd 04d8a7fd8h
+dd 07e492cc4h
+dd 04f88552fh
+dd 015951079h
+dd 055d2c774h
+dd 08f6d1764h
+dd 0b1dcdc64h
+dd 0d2b52c50h
+dd 0f57111a8h
+dd 0d2328d26h
+dd 0827ab54dh
+dd 0b8d19b04h
+dd 0fb889821h
+dd 030961004h
+dd 02e913c5ah
+dd 023076db5h
+dd 02c13b410h
+dd 01868b939h
+dd 085d7f33fh
+dd 07aec32cch
+dd 09972a62bh
+dd 0de54b250h
+dd 06f974082h
+dd 0aec4c0feh
+dd 09e7d069dh
+dd 0d0a04895h
+dd 0ade8baadh
+dd 0987c890eh
+dd 0c1acb3cch
+dd 0782989d7h
+dd 04d653200h
+dd 019e05eb6h
+dd 0738d71e8h
+dd 0e7509102h
+dd 0c46c9af2h
+dd 07915940dh
+dd 0a573f4b7h
+dd 0244413a3h
+dd 0e83b90abh
+dd 0e5d11c1fh
+dd 0a702bf78h
+dd 0dd67c50dh
+dd 0e7033be4h
+dd 05cc1881eh
+dd 0af36a563h
+dd 09fcd116bh
+dd 058db9865h
+dd 0c0b1dee8h
+dd 05b2c01c2h
+dd 0af89de8fh
+dd 0a73c578dh
+dd 00961fb18h
+dd 079cf7382h
+dd 07492d9a5h
+dd 06d44135ah
+dd 06278f246h
+dd 0133ad276h
+dd 05eb4f25eh
+dd 041f2f181h
+dd 01b7b5a6ah
+dd 017cae80ch
+dd 02889a05eh
+dd 0459a958bh
+dd 0592fc687h
+dd 0a62e2701h
+dd 0b2caf504h
+dd 0e499b639h
+dd 00bc0f5ddh
+dd 05e154106h
+dd 089db7274h
+dd 0e1ff2122h
+dd 08707f9e5h
+dd 00b53703bh
+dd 00d07c748h
+dd 0408d4325h
+dd 0773d5e0eh
+dd 092d98f07h
+dd 0abaf31e1h
+dd 095ce1abdh
+dd 058052fb5h
+dd 0faf4f45fh
+dd 0bee8f5feh
+dd 080687569h
+dd 05b8952a9h
+dd 0ee5f3cd2h
+dd 0d41bd068h
+dd 0958473bdh
+dd 011fcbbe3h
+dd 02621a8d1h
+dd 063140f97h
+dd 09a53fa74h
+dd 03311b424h
+dd 08375c515h
+dd 04d6ea7b9h
+dd 02174b6c8h
+dd 0465cc5a9h
+dd 0866d04e6h
+dd 05f207245h
+dd 04f95aa66h
+dd 099842b03h
+dd 0d940513eh
+dd 0fc699af8h
+dd 07f1d0b23h
+dd 01dcccce3h
+dd 0b644758bh
+dd 0dc894968h
+dd 09c184124h
+dd 0d92aa10dh
+dd 03638490ah
+dd 0317c0c90h
+dd 0aa4db12fh
+dd 0f1109a31h
+dd 0d091cb82h
+dd 0d51bb412h
+dd 045df11f1h
+dd 04c1e7180h
+dd 09aecc71eh
+dd 0318984ddh
+dd 0239fb463h
+dd 0f1ee8739h
+dd 068ee3558h
+dd 0449c0f86h
+dd 05086919fh
+dd 05fb5edc7h
+dd 021d67cdbh
+dd 0d9252d41h
+dd 0fbac7df4h
+dd 04bdd9bffh
+dd 0f0dcfd92h
+dd 000b1c284h
+dd 09f0e9389h
+dd 0d08ea4beh
+dd 039bb6893h
+dd 0b84ea70eh
+dd 0445a4696h
+dd 0c61d9d69h
+dd 0f1e12163h
+dd 0cbc65ac3h
+dd 09519ebf9h
+dd 030b69557h
+dd 02467b8e3h
+dd 0e4015ea4h
+dd 00098ca5bh
+dd 0c4905ca5h
+dd 05bb62575h
+dd 0e86b637eh
+dd 0638aa865h
+dd 04e14c8dah
+dd 0e0feaf14h
+dd 0b37d4718h
+dd 091c90cd3h
+dd 04683d3d6h
+dd 0aee752dah
+dd 0c3bfbd3fh
+dd 070626765h
+dd 0817da552h
+dd 0c32f7169h
+dd 0a5167d05h
+dd 02d1a1db1h
+dd 01fb11f17h
+dd 044305f4dh
+dd 00703a2c2h
+dd 0ac0707e6h
+dd 00371b5e1h
+dd 042ecf313h
+dd 0b20d22b3h
+dd 0bf37ccbah
+dd 0d3f70ec9h
+dd 065b8ce6dh
+dd 0464c518dh
+dd 03273bb26h
+dd 09c47bac7h
+dd 0589ed283h
+dd 0ba5dcae0h
+dd 0f321d5bdh
+dd 00d43c1b3h
+dd 0b185683bh
+dd 0478330d8h
+dd 09da7bf8eh
+dd 0bb30669eh
+dd 09dbb9c53h
+dd 064b458fdh
+dd 042b1ccd2h
+dd 0765cb88ch
+dd 03b9e91a3h
+dd 0bd2cbed4h
+dd 04c893af7h
+dd 039d73332h
+dd 0ea4b7ac0h
+dd 00b59353ah
+dd 0d2260cd8h
+dd 0c81c7716h
+dd 08fdaf779h
+dd 036757cd3h
+dd 09b1e87f6h
+dd 040cb3716h
+dd 0790cf075h
+dd 08975303ah
+dd 07b7cd09ch
+dd 06daaebdch
+dd 078beaed9h
+dd 0d31d500dh
+dd 0ea36fd59h
+dd 0aed1dae2h
+dd 01d02b310h
+dd 0830e2c74h
+dd 012e6fc3ah
+dd 0876e51a4h
+dd 09aac4e23h
+dd 01a175515h
+dd 060c4f92fh
+dd 03633ebb5h
+dd 049986bbeh
+dd 0c069ee57h
+dd 0e3dadcadh
+dd 053affa8dh
+dd 0517a4fb5h
+dd 0d29261a4h
+dd 0ad078596h
+dd 04a286c24h
+dd 0ad5e710ch
+dd 0fdd71c5dh
+dd 05d9847f6h
+dd 06c952a06h
+dd 0804a7aabh
+dd 0a7e37ac3h
+dd 0c21fa55fh
+dd 074d1bcc5h
+dd 0fb6ee158h
+dd 0e98b15c0h
+dd 0dc4ae699h
+dd 029ee5df0h
+dd 051634f89h
+dd 0f6e5c008h
+dd 0b094fc23h
+dd 0e8702da8h
+dd 05d70aab5h
+dd 0bb2effc0h
+dd 0a517214eh
+dd 085554baeh
+dd 07b659744h
+dd 00abe71f0h
+dd 016c64417h
+dd 0860af3b9h
+dd 0949b5284h
+dd 0ec1fb181h
+dd 0be3da500h
+dd 088a5d1b7h
+dd 0db8e4bdfh
+dd 07fb38b52h
+dd 0f6e4bf4ah
+dd 0087f627ch
+dd 018d1cb6ch
+dd 050378684h
+dd 036bea875h
+dd 06985b8a1h
+dd 0778570c2h
+dd 02285891bh
+dd 08c5735bfh
+dd 0f74699cah
+dd 03dffd165h
+dd 07ee21178h
+dd 06c842981h
+dd 05b8e0efch
+dd 03d793f01h
+dd 007042324h
+dd 080424681h
+dd 086c22d11h
+dd 040cd474eh
+dd 070f8c809h
+dd 025ddcf82h
+dd 0283a26aeh
+dd 0cab6964dh
+dd 0b45d0f0bh
+dd 01cec312ch
+dd 023f7a2edh
+dd 00462749bh
+dd 0d22487b9h
+dd 0d9b877d3h
+dd 0d9f1819dh
+dd 0c6a34f19h
+dd 077ac88d9h
+dd 076c7f058h
+dd 033ad2c8dh
+dd 083a4e332h
+dd 0ce1e90d5h
+dd 0fbf3a8d6h
+dd 02ac4d551h
+dd 0e81bcb24h
+dd 066025bc2h
+dd 0110745beh
+dd 0798e11d0h
+dd 0467d507fh
+dd 09cd19ebfh
+dd 01d6204dah
+dd 0a17ba8d2h
+dd 041b11aach
+dd 0ea512b95h
+dd 0cf70f205h
+dd 0cc79479eh
+dd 0d1bf38aah
+dd 0f342793ah
+dd 04b5bc5f8h
+dd 08290a44dh
+dd 027059861h
+dd 05dd91467h
+dd 0d67bf55ch
+dd 043ef7a3ah
+dd 0f09d605ch
+dd 0b17ae94fh
+dd 09cf62bb0h
+dd 067eb159bh
+dd 0e7f610d4h
+dd 0e7ec2777h
+dd 0fd026ae6h
+dd 09b5fecb8h
+dd 042c031a3h
+dd 04d88bdb1h
+dd 011d13953h
+dd 061688695h
+dd 0110f4deah
+dd 0d85b6243h
+dd 01530b2cdh
+dd 082e13b73h
+dd 0cad1cab5h
+dd 053e9f3fch
+dd 00e10316dh
+dd 094a455dah
+dd 0ac574e58h
+dd 08017f6c4h
+dd 00cf19407h
+dd 009904716h
+dd 0be89862fh
+dd 00d467b5ch
+dd 0b0530411h
+dd 0800eab06h
+dd 067265be0h
+dd 0c451bf92h
+dd 0af9f5f16h
+dd 0bca4eb50h
+dd 0b78fcc24h
+dd 065fe69cfh
+dd 0667edb00h
+dd 0278f7e9dh
+dd 02de3605eh
+dd 0115c726ah
+dd 002fe37c4h
+dd 0988f5688h
+dd 0d364359ch
+dd 0fbe18f31h
+dd 0d4fc750bh
+dd 065489fadh
+dd 01a511ef0h
+dd 06cf7d247h
+dd 004d53e24h
+dd 0a3e8413eh
+dd 05549fbaeh
+dd 07fcfbae9h
+dd 0eb9ac0f8h
+dd 0f6857aaah
+dd 0a57053b7h
+dd 0d84452b8h
+dd 07d8f5400h
+dd 0e4497b17h
+dd 0c1e924b6h
+dd 0205e0a79h
+dd 06faceeaah
+dd 078686090h
+dd 0d0f62409h
+dd 09e1f4ed5h
+dd 0182553c4h
+dd 01bfa647eh
+dd 0ac158c68h
+dd 05b1ef0d6h
+dd 0c69628c1h
+dd 0a408c562h
+dd 0bc878b96h
+dd 013bf5e6eh
+dd 0eb74e610h
+dd 04171e065h
+dd 0f02d6201h
+dd 032cb0171h
+dd 003c79f08h
+dd 0523e2a37h
+dd 09185d2a8h
+dd 0ff87275ch
+dd 0c8b67ab2h
+dd 08bd9cebeh
+dd 0dcbd268ah
+dd 0b6ea45d8h
+dd 01b892f1ch
+dd 06ab75e09h
+dd 08b7e239fh
+dd 0407d5d52h
+dd 0300ef886h
+dd 00463a951h
+dd 0287d70d9h
+dd 070ce7951h
+dd 093e4f730h
+dd 0d4eaddebh
+dd 021914e14h
+dd 085e7e1d6h
+dd 0c9117e37h
+dd 06fb4157ah
+dd 0e042d93ch
+dd 0824efb71h
+dd 0d802455fh
+dd 0288a2f5bh
+dd 085ea9283h
+dd 0174c042eh
+dd 088b66a29h
+dd 0eb809dbch
+dd 0466df992h
+dd 0f8416eaeh
+dd 0012747eah
+dd 093fd65b5h
+dd 000341b51h
+dd 00746f601h
+dd 046f1766ah
+dd 092891ed4h
+dd 0c942f774h
+dd 0451f081ah
+dd 0ed02af27h
+dd 0e1253e99h
+dd 01424dffah
+dd 095e1e07eh
+dd 0894febb1h
+dd 051155526h
+dd 09de9554ah
+dd 0201bbb13h
+dd 01b18f893h
+dd 0d57e693fh
+dd 0f9a07d03h
+dd 0d41253d5h
+dd 04d6fda7bh
+dd 07c360840h
+dd 0b1d42f1ah
+dd 04a48a2fch
+dd 0fa55320eh
+dd 0e0a312b6h
+dd 0d857a96dh
+dd 00728d730h
+dd 06365403ch
+dd 0518ae477h
+dd 0f4515abfh
+dd 05b3b0605h
+dd 02fc41daah
+dd 0adc67e76h
+dd 0b30dc8d1h
+dd 06000bbc7h
+dd 0657e4f8dh
+dd 0997a7916h
+dd 03b7bc9c8h
+dd 000497810h
+dd 06b35e42fh
+dd 0b31d270ah
+dd 0e84e1362h
+dd 02980a4d7h
+dd 0bf5e9c56h
+dd 09835e63ah
+dd 04f412399h
+dd 00ca168b1h
+dd 0a0a20453h
+dd 0f71ca00bh
+dd 07828f436h
+dd 09e9233cch
+dd 0a642264ah
+dd 0ee6b0a15h
+dd 029d9b2c0h
+dd 0456f1935h
+dd 061e564cfh
+dd 0cbb97da9h
+dd 0b13f3139h
+dd 0f5cf91f0h
+dd 0d32de8f1h
+dd 01654c8deh
+dd 036c6826ah
+dd 06ea1bb65h
+dd 0613d2cf8h
+dd 0eeb9b5ffh
+dd 0320bcd80h
+dd 047124374h
+dd 0d09e399fh
+dd 07d7f045fh
+dd 0579bee8dh
+dd 0ab634b7dh
+dd 0f45e2b4bh
+dd 01274f8d8h
+dd 03fb9f224h
+dd 0d61d64b0h
+dd 04a34f66dh
+dd 0423f1d0eh
+dd 0a26b9d27h
+dd 05ef740d9h
+dd 0397dbe06h
+dd 038287dcfh
+dd 09060fc6bh
+dd 05f9214f0h
+dd 01fc201aeh
+dd 0db0c3338h
+dd 0d63461cbh
+dd 0c36dc4f0h
+dd 07727c41ah
+dd 0d4b2413bh
+dd 03f3a261fh
+dd 02529cf13h
+dd 08c6e263ah
+dd 056cab9f2h
+dd 0288a71a2h
+dd 053c48bebh
+dd 0669ba833h
+dd 0ccb459a8h
+dd 044e93d27h
+dd 06e010557h
+dd 04dc7afe0h
+dd 0ac48a5afh
+dd 09b1577c6h
+dd 0c8b4f7f9h
+dd 04cdec216h
+dd 0a2eb554bh
+dd 0a4b80064h
+dd 0e8d5be55h
+dd 01b571107h
+dd 08b20925ch
+dd 0d73ba1dfh
+dd 0c5126192h
+dd 0afe97b1ah
+dd 08cc3244dh
+dd 01da29263h
+dd 0e9ed6252h
+dd 043647fd2h
+dd 0a26cb79ch
+dd 0a8cd9b1ah
+dd 0e1f1cf44h
+dd 092690e58h
+dd 04b434e5eh
+dd 0d512f000h
+dd 076db04a4h
+dd 0bcab495dh
+dd 0420cbe13h
+dd 01fdb4c62h
+dd 068fc4255h
+dd 0dd51adaah
+dd 0154125f3h
+dd 0dba74677h
+dd 05af3c8eah
+dd 0b79c433bh
+dd 09f3dafc0h
+dd 06e4769c0h
+dd 019bb3cceh
+dd 070088743h
+dd 0d38bba9bh
+dd 04878dcfah
+dd 066f08055h
+dd 021be6ac8h
+dd 0d13f8923h
+dd 0c18e0adeh
+dd 0bf35fae5h
+dd 0d2fbc10ah
+dd 060ffa511h
+dd 039615fc4h
+dd 0bf7e6a33h
+dd 06e69deb8h
+dd 0c9ccffcfh
+dd 0266a4dd5h
+dd 0553f1eeeh
+dd 01d5ac5a4h
+dd 0dd5a6d19h
+dd 062b54800h
+dd 0fe9a550fh
+dd 00c7107ech
+dd 03adc7158h
+dd 076e9b646h
+dd 0d193e3d2h
+dd 01d450e27h
+dd 05684ef93h
+dd 05f359dach
+dd 00787dd3fh
+dd 0468c5f15h
+dd 00f5b065ch
+dd 000d728b3h
+dd 0f4543679h
+dd 01ad2223ch
+dd 0e3aede4ah
+dd 089b36444h
+dd 036d1f867h
+dd 0a727c000h
+dd 09950d802h
+dd 03e99a752h
+dd 07b783ce3h
+dd 065191599h
+dd 0d65b8ddch
+dd 03ea724ceh
+dd 0f8bf6048h
+dd 0c3a8622eh
+dd 04d665ee0h
+dd 0398aa805h
+dd 061687dbbh
+dd 0d1261f32h
+dd 046c32641h
+dd 0271457afh
+dd 0950ff5fdh
+dd 0a836a177h
+dd 0971d2e0ch
+dd 003b49031h
+dd 0da95d56bh
+dd 0660aaaaeh
+dd 0864935bfh
+dd 0e9e84443h
+dd 05f00a9c1h
+dd 0f73584f5h
+dd 0d1d26282h
+dd 08d85fb79h
+dd 0cd4c31efh
+dd 0077b57abh
+dd 0ea8c02f7h
+dd 07f5e1b1fh
+dd 0c9cffe16h
+dd 03f871ae9h
+dd 0deadb146h
+dd 0205ca43ah
+dd 0b435a41dh
+dd 0be093e67h
+dd 0e401c53bh
+dd 0b5c8af60h
+dd 0e53bb812h
+dd 004060802h
+dd 06a7667f1h
+dd 0ddba0fe9h
+dd 03029d64ah
+dd 0e7101c3dh
+dd 0ae579e95h
+dd 00b7fe856h
+dd 0825e2aa3h
+dd 0cd2bd047h
+dd 024e34eech
+dd 021c6eb25h
+dd 0ffaf072dh
+dd 025ef6088h
+dd 0b7ed0281h
+dd 0f5c9411fh
+dd 0dbf45994h
+dd 00d97f56dh
+dd 039d2909ah
+dd 0854aa149h
+dd 0402001d2h
+dd 097c5ec10h
+dd 003cc833dh
+dd 0f1ae4f42h
+dd 0cc77000dh
+dd 002cb1521h
+dd 01dcb6997h
+dd 0ddb9d6d6h
+dd 01b68e5a6h
+dd 0a4824d86h
+dd 0e0de9055h
+dd 0ce85092bh
+dd 0a3cc7416h
+dd 01bc329dch
+dd 03d46b6eah
+dd 04877d47ch
+dd 0f9e0d68ch
+dd 0fa05c951h
+dd 0fc964aa5h
+dd 07b02a955h
+dd 06c58885dh
+dd 02856e6e6h
+dd 00f53b395h
+dd 03b9fa145h
+dd 098601ab6h
+dd 0c5b4352bh
+dd 0618d8bd3h
+dd 0031f039fh
+dd 0144781b1h
+dd 0a0268767h
+dd 06acc0e0fh
+dd 053b96ab0h
+dd 050692c99h
+dd 0e050f539h
+dd 094f47e96h
+dd 01785078bh
+dd 0db4d525fh
+dd 0860917ffh
+dd 01bd25854h
+dd 0befc959fh
+dd 06f14aacbh
+dd 076a2606eh
+dd 0dcee7a89h
+dd 077be5f4eh
+dd 0e2f3ca61h
+dd 0865cc58ch
+dd 0bed0c080h
+dd 0a4ed062eh
+dd 08d62ab38h
+dd 025600c42h
+dd 00801f5d0h
+dd 0099d4d8ah
+dd 0063ffe25h
+dd 05c0aa303h
+dd 032325813h
+dd 04482465ch
+dd 0b62cc6f4h
+dd 0a79d8435h
+dd 05729e8efh
+dd 041a7c6cah
+dd 09434227fh
+dd 0808b820bh
+dd 00a9016e2h
+dd 035979adfh
+dd 09ec970a9h
+dd 084571f45h
+dd 081edb846h
+dd 0e4e9805dh
+dd 0b21177f7h
+dd 035e2a1e3h
+dd 01edcecdah
+dd 0a874d2feh
+dd 0bbf383d6h
+dd 07ed16a8fh
+dd 07fb0bd4ah
+dd 06521111bh
+dd 0163d4181h
+dd 046390a55h
+dd 08265b5f0h
+dd 0ae384b7eh
+dd 016b2f928h
+dd 07cd558cch
+dd 04d92b875h
+dd 0912e55f3h
+dd 0b038ac1ch
+dd 0cbf54db2h
+dd 081c9bad6h
+dd 0410ed586h
+dd 092055f61h
+dd 0128af63dh
+dd 0cfa7ab01h
+dd 0d9b2cd3eh
+dd 0b603c01eh
+dd 0ed281399h
+dd 0ed1bb858h
+dd 0c2e9a2fah
+dd 0093fe560h
+dd 030f3be39h
+dd 0539574d8h
+dd 0bb2837bbh
+dd 061926a10h
+dd 0391682e7h
+dd 02f290abfh
+dd 025187cfch
+dd 0b27b2bb0h
+dd 0eed17566h
+dd 028e4ab34h
+dd 0f809d3d9h
+dd 098e72a8dh
+dd 0e68edd55h
+dd 0f0c072e2h
+dd 0787d27d2h
+dd 045ec0781h
+dd 04ca85379h
+dd 001cea4f6h
+dd 011570c9dh
+dd 06b23f0cah
+dd 035ef95ebh
+dd 07d9abfc8h
+dd 0ee7221e4h
+dd 0f161808bh
+dd 0d6d8343ch
+dd 0f96727beh
+dd 0715697bdh
+dd 0c254bb78h
+dd 09836cbfbh
+dd 005dfbc2fh
+dd 0599f5cf8h
+dd 082205074h
+dd 0e0e2f8fch
+dd 0a0695e9bh
+dd 0f7e2fe67h
+dd 0161d47ebh
+dd 06cc372c2h
+dd 0f58ffa1ah
+dd 0d92e6b0eh
+dd 054c4b558h
+dd 00754eb5ah
+dd 0ad545e92h
+dd 0f63ffa83h
+dd 0831958c4h
+dd 0fdae7430h
+dd 0d64bc760h
+dd 02bbbf911h
+dd 08a8733feh
+dd 021431478h
+dd 06753263ch
+dd 05fa3b8e3h
+dd 09fe66561h
+dd 0d08fe5fah
+dd 086bed2aeh
+dd 0f7d29fa2h
+dd 0ece43756h
+dd 0c8e9386eh
+dd 0ef9f9d59h
+dd 03bd53516h
+dd 0e08ed74eh
+dd 014f264e2h
+dd 0aa816efdh
+dd 0821702ach
+dd 06c80a17ah
+dd 055968653h
+dd 07d7fbf59h
+dd 08cf52cf4h
+dd 005c66281h
+dd 0a9c57610h
+dd 0b9980a6bh
+dd 067b72e89h
+dd 0352c7b75h
+dd 086cfbd3dh
+dd 0c3190e2bh
+dd 0acdf3918h
+dd 081e7c9f4h
+dd 019a2546fh
+dd 0ee9dad8dh
+dd 065a3a999h
+dd 0a5a641ach
+dd 0f35dc012h
+dd 0112ab525h
+dd 054a6a4b8h
+dd 052317ab4h
+dd 07fac16ech
+dd 06770b90eh
+dd 0ddeeb36fh
+dd 03ed095fch
+dd 0860524bdh
+dd 033bd64c5h
+dd 05a05e8b3h
+dd 025ae7eb9h
+dd 0347d7f9ah
+dd 0657d91e9h
+dd 03b9da6f1h
+dd 0a4b620bfh
+dd 08be91a38h
+dd 02e221291h
+dd 00c31c531h
+dd 050286f1fh
+dd 0089c03bah
+dd 09b0c85e9h
+dd 03d13a0d4h
+dd 04d77003fh
+dd 00979b3d4h
+dd 037d5b037h
+dd 0421bab45h
+dd 067e83727h
+dd 0cb107732h
+dd 00db86da7h
+dd 0c6ab1c97h
+dd 0d14b4a4dh
+dd 0d568b26fh
+dd 0bd5b7efch
+dd 05981107bh
+dd 009fcfb66h
+dd 02272f7d6h
+dd 0fbb2e179h
+dd 0b9c14a07h
+dd 03f3ec248h
+dd 0e09d9de9h
+dd 019976b5ah
+dd 03ff9e469h
+dd 0ea97d42fh
+dd 024adc791h
+dd 018cc2b41h
+dd 0ec7b1685h
+dd 056b0e485h
+dd 003048791h
+dd 06511cc72h
+dd 011b11255h
+dd 05ced5df4h
+dd 026193986h
+dd 0b7e798a0h
+dd 0b5eda1a8h
+dd 051a67a15h
+dd 0e78e5fb0h
+dd 0954c3982h
+dd 012affa77h
+dd 014b47797h
+dd 094b72659h
+dd 05a802148h
+dd 05a8e5e22h
+dd 08e42a3ceh
+dd 08c4a7145h
+dd 0b907ba5bh
+dd 02d78bc1eh
+dd 08e96def2h
+dd 0b7729e67h
+dd 040dfe3d9h
+dd 0a2247fa4h
+dd 0489d8d01h
+dd 090705aefh
+dd 0f4efde68h
+dd 07181d28fh
+dd 06811d116h
+dd 0d8f87d9ah
+dd 03111c0a5h
+dd 094226d96h
+dd 02f372a72h
+dd 06e0a5b4ah
+dd 01340b72ch
+dd 0e2bb8236h
+dd 0b9e5ff16h
+dd 0f2d8747bh
+dd 0be66ff05h
+dd 0d82b32d1h
+dd 0a1dffa78h
+dd 06da1b359h
+dd 09be0f496h
+dd 089ec03eeh
+dd 0936ef772h
+dd 0acc18382h
+dd 0aaf9598bh
+dd 0c9fc2d81h
+dd 04fa738e9h
+dd 00f1fb965h
+dd 0297b7926h
+dd 0096e6063h
+dd 0d4519018h
+dd 0255ce233h
+dd 037ca8991h
+dd 0e58a3bb2h
+dd 0321f7f04h
+dd 03dbb80bah
+dd 055f41e99h
+dd 0b4146503h
+dd 0c55abd6ch
+dd 0eb9d8a82h
+dd 0a4d34aa7h
+dd 0c58b1a52h
+dd 06e2e3987h
+dd 01002ff0ah
+dd 0c0ca4904h
+dd 0e0c59150h
+dd 03f7d42eah
+dd 08d935368h
+dd 08271cfaeh
+dd 0fc3196d4h
+dd 096a2d944h
+dd 0ac131c26h
+dd 03bc30d9ah
+dd 0fdbb4e5fh
+dd 078eb38efh
+dd 0403604e2h
+dd 0ae1800b8h
+dd 0a4ac177eh
+dd 0a55c633dh
+dd 0426abd80h
+dd 02b9f8a69h
+dd 0b9b0a275h
+dd 08584b798h
+dd 040d94bcdh
+dd 0f6e13b9fh
+dd 0b864d681h
+dd 06f57fdfah
+dd 049597f63h
+dd 060ceaac2h
+dd 0d0b18e34h
+dd 07722e740h
+dd 058cad177h
+dd 0831a4652h
+dd 0830befefh
+dd 0a51e9277h
+dd 01be6ec17h
+dd 048942a41h
+dd 07eb0ea27h
+dd 0ebee3af2h
+dd 05a050320h
+dd 0309bc008h
+dd 0a1a00164h
+dd 08a304eech
+dd 028c6fa78h
+dd 09812288ch
+dd 06da84067h
+dd 06ce16757h
+dd 0f9af667ah
+dd 01d3864c9h
+dd 0ac30630ch
+dd 0c3d43306h
+dd 0e895515ch
+dd 0ba928c0ch
+dd 0344843d7h
+dd 0ce5e2f45h
+dd 0871fb24dh
+dd 091ff7e73h
+dd 00c844b55h
+dd 0f3dc7356h
+dd 0b6e024f1h
+dd 094f23ad2h
+dd 05ea208c2h
+dd 0006c049fh
+dd 06db4f1abh
+dd 0c94663e3h
+dd 01551d4b3h
+dd 0346ca5f2h
+dd 0695d8767h
+dd 05b93007ch
+dd 03244ee88h
+dd 0adcccdceh
+dd 004cc6ad9h
+dd 0c1bc34edh
+dd 0b6f29ac7h
+dd 04044bfb7h
+dd 0a85086aeh
+dd 0a2a9377bh
+dd 0d19ba671h
+dd 02f0051ebh
+dd 00dd8d19dh
+dd 003a49711h
+dd 0743e1d31h
+dd 0f4c07772h
+dd 0adb0a3e9h
+dd 060eb85b4h
+dd 0d9ea30b5h
+dd 0213c61ddh
+dd 0ae1e672fh
+dd 025129afah
+dd 0441e9e63h
+dd 053101449h
+dd 059deee0ch
+dd 004b415e5h
+dd 0a97de1f2h
+dd 0f0753274h
+dd 0b17d2a72h
+dd 0786f65a7h
+dd 018c8cb7dh
+dd 058eae671h
+dd 0d4f922adh
+dd 0a4f8d5d2h
+dd 00ea7b115h
+dd 019c49209h
+dd 0ded64f82h
+dd 07e3e015eh
+dd 0e285e510h
+dd 06fd44123h
+dd 086a1759dh
+dd 0cfdabcech
+dd 078137b20h
+dd 065678a67h
+dd 0654d91b9h
+dd 0abc88975h
+dd 099645582h
+dd 03015409bh
+dd 0ea052ffbh
+dd 0547cae14h
+dd 0289ba335h
+dd 0c5f9b117h
+dd 01c9e79e9h
+dd 087a89bd0h
+dd 041de90a0h
+dd 007c2297ch
+dd 0b043c344h
+dd 0ff44a292h
+dd 0d8d64573h
+dd 0b8997236h
+dd 0c53f5718h
+dd 0088ae203h
+dd 0d3aaebb7h
+dd 0768d0505h
+dd 0016c309eh
+dd 0b1c28ed1h
+dd 032c086b0h
+dd 05666082eh
+dd 0a4feeabdh
+dd 01a184760h
+dd 032c64c7eh
+dd 022f912c7h
+dd 01ab09de1h
+dd 0a0eca85bh
+dd 0ea989a56h
+dd 0bf26c608h
+dd 0ed09a05ch
+dd 0d34f7c1ah
+dd 0a7297421h
+dd 08f66638dh
+dd 0137bcee4h
+dd 063fd9616h
+dd 05092d878h
+dd 059a2f1a3h
+dd 07b7529deh
+dd 0779678ddh
+dd 00e1eb138h
+dd 0d1fa97adh
+dd 08b02b1c2h
+dd 0936ff25ah
+dd 0b6b27ae0h
+dd 0df5c28eah
+dd 07d7ca727h
+dd 0fd709c51h
+dd 08cceee17h
+dd 04170350ah
+dd 05391bd5eh
+dd 030a97babh
+dd 04052934fh
+dd 0acb6cea6h
+dd 0135689efh
+dd 0718c6667h
+dd 0f51a28f7h
+dd 0e57d5420h
+dd 02a268006h
+dd 075573d9eh
+dd 08b4a6157h
+dd 0c53269a7h
+dd 0c595a63ch
+dd 039fd09a2h
+dd 0b63d08e8h
+dd 0a53c30f8h
+dd 0c915ca4fh
+dd 0f6121112h
+dd 0e81e11c1h
+dd 0865a2e2ah
+dd 00d86271dh
+dd 0da53d6ach
+dd 058b45da9h
+dd 07d957bf6h
+dd 084bae80dh
+dd 05382b071h
+dd 01ad77bb6h
+dd 0ae8e75bbh
+dd 096886fc1h
+dd 0d8ffd017h
+dd 0b3d8c933h
+dd 0f8900134h
+dd 04b2a987eh
+dd 0df60dd76h
+dd 0cfee6ad6h
+dd 0a9a2e63bh
+dd 0871ba836h
+dd 0fcea136bh
+dd 0482be1e5h
+dd 088699ea4h
+dd 0c892f5b8h
+dd 081d03fcah
+dd 005bea0b3h
+dd 0841662aah
+dd 056161cd1h
+dd 022549319h
+dd 080ec6a78h
+dd 028c9bf70h
+dd 04d70c7ffh
+dd 093219761h
+dd 0d776d48ch
+dd 0f35fbcddh
+dd 0e458b4c3h
+dd 074ed41c0h
+dd 05aacbfach
+dd 0d6d65cf0h
+dd 0fd428b2bh
+dd 091102926h
+dd 007fbf393h
+dd 09aae45dfh
+dd 04ddd4d93h
+dd 0d952c861h
+dd 0657ef5f8h
+dd 0a8b1f108h
+dd 02b319be9h
+dd 0745a419ch
+dd 09cb7b507h
+dd 081a7eec2h
+dd 0c043f500h
+dd 03239bddbh
+dd 00e996144h
+dd 0a6eeaf25h
+dd 08eba20aah
+dd 022c5bca0h
+dd 0e64e9dafh
+dd 08e7dda3fh
+dd 003cea44fh
+dd 0706e3f94h
+dd 05b9ee1fah
+dd 01bea4fbfh
+dd 0d0d7b630h
+dd 0c6f4d417h
+dd 0764e7baah
+dd 0d26d5a71h
+dd 0f05afda4h
+dd 04b2fcc1fh
+dd 04cb5de3dh
+dd 0c3413123h
+dd 037042cdeh
+dd 04698d620h
+dd 0c0270230h
+dd 087813d3bh
+dd 0f8fdd6bdh
+dd 092b46e58h
+dd 0a13ebf39h
+dd 08ef7de0ah
+dd 087b769b5h
+dd 07bf3c9d9h
+dd 0aeb6b311h
+dd 0149ebf1eh
+dd 0313deba2h
+dd 0e1ce4dfbh
+dd 0bc923098h
+dd 0fc961b7ah
+dd 0e7699da4h
+dd 09a9a9196h
+dd 02b432670h
+dd 02eaf2aa7h
+dd 0eb8e1550h
+dd 07f0e243eh
+dd 0d5fb00f2h
+dd 0dd277d7fh
+dd 0f7d37568h
+dd 0040aa7a7h
+dd 0d4e6f489h
+dd 05b843413h
+dd 083428569h
+dd 04a5a4061h
+dd 0dc4e48a3h
+dd 091a08766h
+dd 0306a9428h
+dd 017a0b73ah
+dd 0e9f3c304h
+dd 0552c5fffh
+dd 0e3122b19h
+dd 0e41e5db2h
+dd 051d8a19dh
+dd 0f4d8a98ch
+dd 072a10841h
+dd 04648a998h
+dd 02ec6a0bdh
+dd 03e05ad27h
+dd 003ad286ah
+dd 0adb82de5h
+dd 085d2a4abh
+dd 0b5c1605ch
+dd 0d05a9753h
+dd 0a9fb26c0h
+dd 084358804h
+dd 06b7c82dbh
+dd 0e2d96767h
+dd 085ae1e77h
+dd 0bc5cfc00h
+dd 0313d0e07h
+dd 088a9e493h
+dd 045326de7h
+dd 03293f86eh
+dd 0e4a1eb29h
+dd 063f19f3eh
+dd 020cc8e54h
+dd 0f15c2f37h
+dd 07ee7276dh
+dd 05d41484bh
+dd 0f1240879h
+dd 01893b27dh
+dd 0a204c075h
+dd 021b2a72fh
+dd 07c15d907h
+dd 0beb428fdh
+dd 0ddff5b35h
+dd 0b3ddc725h
+dd 05b02bb91h
+dd 0eaf25e6bh
+dd 09ce669d9h
+dd 0f8bce59fh
+dd 08dc526d0h
+dd 08c1e16e1h
+dd 09d6c130bh
+dd 0ad6fb821h
+dd 074bda48eh
+dd 03343fdd4h
+dd 069509d2ch
+dd 089a68a99h
+dd 03a1e16dbh
+dd 0bcf4f8f8h
+dd 0dce0220bh
+dd 0f929fcf3h
+dd 03804f262h
+dd 0ae88d98eh
+dd 06aa787dfh
+dd 075fb7002h
+dd 0c1009511h
+dd 0546c2c0ah
+dd 0673955fah
+dd 044285238h
+dd 0b8346c55h
+dd 0a25ed8a0h
+dd 07b2ca745h
+dd 0f0abcbceh
+dd 0d2a29290h
+dd 0adde2888h
+dd 054b60f6dh
+dd 0322bfc56h
+dd 08b8dbc0ch
+dd 0b38ee203h
+dd 025830ef5h
+dd 0bfe420f3h
+dd 077064aa7h
+dd 09a62e8d6h
+dd 059460ac0h
+dd 03f1ed5bch
+dd 05865f423h
+dd 03d091150h
+dd 0b37dd169h
+dd 04a7feb01h
+dd 0b12b8d1bh
+dd 02194719dh
+dd 0c2504298h
+dd 00d2564a9h
+dd 0e854f9abh
+dd 0ccd0bd91h
+dd 0967a2d07h
+dd 03a066badh
+dd 097140ef5h
+dd 0f1e70cd5h
+dd 088e13f68h
+dd 0e6a77097h
+dd 093af1c3ah
+dd 02d7507f2h
+dd 028dc203bh
+dd 01a7360beh
+dd 049043eafh
+dd 0e84ebeefh
+dd 066ac99e1h
+dd 0a97837d4h
+dd 02508eafah
+dd 0b7afaafeh
+dd 0970f1889h
+dd 08ef1312dh
+dd 0ba44aabdh
+dd 0d7e01066h
+dd 0bd60869dh
+dd 0906f92e9h
+dd 01b6cdcc1h
+dd 0299cd545h
+dd 063bd7be8h
+dd 02387d939h
+dd 0491e1aech
+dd 0a96f44cfh
+dd 0d02010ceh
+dd 0fb4c0591h
+dd 075e7011fh
+dd 0b3f433cah
+dd 09a153914h
+dd 085e512e2h
+dd 0290f9067h
+dd 0dd61df39h
+dd 085d7be7eh
+dd 045569f12h
+dd 0cc3f0ee7h
+dd 06bf1fbc6h
+dd 02fe55a03h
+dd 021925660h
+dd 0655186f6h
+dd 0bea795b8h
+dd 0d66d33b6h
+dd 02cf10bach
+dd 034fef58eh
+dd 073a293dch
+dd 09f7a050eh
+dd 0d95b65a7h
+dd 099032447h
+dd 03de819ceh
+dd 0aeea6e10h
+dd 0ebb4a57fh
+dd 071f25a80h
+dd 0df2117f8h
+dd 023ec2cb5h
+dd 07d99594dh
+dd 083a70308h
+dd 077271379h
+dd 0484f7b46h
+dd 095db2059h
+dd 06f25d7d4h
+dd 00d40cd8bh
+dd 08da2c6cfh
+dd 03bde689bh
+dd 04c59b916h
+dd 099f04a92h
+dd 0618745e0h
+dd 0af633393h
+dd 0015c5ae2h
+dd 024405985h
+dd 0f24b44b6h
+dd 014ad8f3eh
+dd 08c339a66h
+dd 0bbf30069h
+dd 0b1aeec60h
+dd 0918fed41h
+dd 04370b198h
+dd 0f6bba062h
+dd 0819ccc14h
+dd 0ba384de6h
+dd 07bef7c0fh
+dd 0b36c1ec9h
+dd 010f0cbddh
+dd 00ac2212fh
+dd 0d088c164h
+dd 09ce8abdfh
+dd 00cf7b013h
+dd 09b0c320dh
+dd 033e1aecfh
+dd 063404606h
+dd 0ee4b9c87h
+dd 0c842e423h
+dd 0d05a0766h
+dd 0c513f209h
+dd 093dcb051h
+dd 02390f72eh
+dd 0d6bf52dfh
+dd 06c081f89h
+dd 01ac3ab07h
+dd 02850dfddh
+dd 01322b211h
+dd 0e7f0df2ch
+dd 0b4cb9b4ah
+dd 096668e86h
+dd 05176f8e1h
+dd 09854048bh
+dd 041a05f3dh
+dd 058f814f7h
+dd 05866fd8fh
+dd 02da43f19h
+dd 0d1acc949h
+dd 0cea7a530h
+dd 0af885991h
+dd 085159be3h
+dd 099ec24dbh
+dd 0adb43718h
+dd 0d9f7c011h
+dd 0d4805d75h
+dd 00c21c893h
+dd 0b92fbccah
+dd 0800952cfh
+dd 0ce38c384h
+dd 007399629h
+dd 04be2ac4bh
+dd 068dc939fh
+dd 00f8e09c2h
+dd 0f6c8fa8fh
+dd 0aa939450h
+dd 08c347666h
+dd 0d8387836h
+dd 03c996059h
+dd 0b1ff851bh
+dd 095b8361ch
+dd 06e18a21dh
+dd 00649ac32h
+dd 0c527d090h
+dd 0d26b7fe0h
+dd 0e8452bd0h
+dd 0cd3c9678h
+dd 01136c3cah
+dd 0abfde2a8h
+dd 087d9585ch
+dd 08f5fd194h
+dd 00d2e3103h
+dd 05ffb7d33h
+dd 0f09a6d35h
+dd 0e22fcb3dh
+dd 0e328b0b3h
+dd 05b659346h
+dd 0fc62c2deh
+dd 08c6cc859h
+dd 076517388h
+dd 095557927h
+dd 0c8e16131h
+dd 0b9489415h
+dd 072aed7fbh
+dd 0375cf9f0h
+dd 0bd8cd4cch
+dd 01fbe6595h
+dd 0095578fbh
+dd 09e1e48c2h
+dd 0c1b21714h
+dd 081706508h
+dd 01a07f27dh
+dd 0d0b44a12h
+dd 0e42f5770h
+dd 03af99156h
+dd 0dad0bbb4h
+dd 0ab257b21h
+dd 070baa12dh
+dd 0bd489d02h
+dd 0b3fa6609h
+dd 0086d9970h
+dd 0cdbe238bh
+dd 0beb6c774h
+dd 029fcd0dch
+dd 03c3a836ch
+dd 0c6f721bdh
+dd 03405e8a2h
+dd 01cba47d0h
+dd 04e6ff186h
+dd 07b2a3ffbh
+dd 027c0da5fh
+dd 0868f1633h
+dd 0cf503981h
+dd 0d64297b9h
+dd 080c88936h
+dd 057913976h
+dd 06cf08921h
+dd 0080deb54h
+dd 0eb00d01eh
+dd 0e75114abh
+dd 018476ab5h
+dd 0496c8203h
+dd 0e2dc3f32h
+dd 0ebda71e3h
+dd 0ddf11d5bh
+dd 0da513515h
+dd 01bc3c554h
+dd 00475e813h
+dd 0fbb8edaah
+dd 053fb898ah
+dd 02b166a97h
+dd 00d104250h
+dd 00996f6c8h
+dd 0cba48ffeh
+dd 09fe78529h
+dd 01a337b7ah
+dd 0bd27b274h
+dd 06a38c23dh
+dd 0680d0b0eh
+dd 06d5ea0d2h
+dd 01ff7c1feh
+dd 0b2251278h
+dd 0f972ce34h
+dd 078186f09h
+dd 08fda5eb3h
+dd 08b7ddec2h
+dd 04ed98b0fh
+dd 0bd5d4ebeh
+dd 08a022d7dh
+dd 004afc8f2h
+dd 0c6010d21h
+dd 06652a505h
+dd 0f206a2a8h
+dd 0de4391b6h
+dd 0d8021327h
+dd 0e00a92adh
+dd 05fea8f59h
+dd 05815280bh
+dd 045e88acdh
+dd 0b1077f67h
+dd 0fc1ece40h
+dd 0bf0d4e72h
+dd 009842132h
+dd 08a642ea0h
+dd 07b9ed839h
+dd 0cda27140h
+dd 0fc088e49h
+dd 05c49fb2fh
+dd 0d0094588h
+dd 01436b264h
+dd 0e950ac9ah
+dd 05cc41423h
+dd 011dd58fch
+dd 0ef8aa95fh
+dd 0909fc6dbh
+dd 02d7c248fh
+dd 0073b323eh
+dd 064e5df99h
+dd 0cb0762cah
+dd 0b12db387h
+dd 040102eb9h
+dd 01034d6bfh
+dd 03244398fh
+dd 00d6e179eh
+dd 0f3c3a776h
+dd 0ec696047h
+dd 03d5b752bh
+dd 095735b46h
+dd 0bc0d1d2eh
+dd 00c02278ch
+dd 09a875d36h
+dd 0d98d9332h
+dd 0a30a6872h
+dd 05cef06dfh
+dd 0353dac18h
+dd 030034e98h
+dd 0d60d828ah
+dd 000655734h
+dd 0a64fb4f1h
+dd 00d95d045h
+dd 051cd5ac8h
+dd 09441e0afh
+dd 0c37d5187h
+dd 06cf0a69ah
+dd 007d7eafdh
+dd 0090769bch
+dd 0a2f43e45h
+dd 0559dff48h
+dd 050755ce6h
+dd 044a518f9h
+dd 0ae9819a5h
+dd 04c5fbadah
+dd 0f76d9120h
+dd 0df8af592h
+dd 05208ab34h
+dd 0180bcaf5h
+dd 0d550b780h
+dd 0bebac875h
+dd 065c2655bh
+dd 0cf35cd55h
+dd 0b228e769h
+dd 02add77cbh
+dd 0b8da443ch
+dd 094541c7ch
+dd 021d1c5efh
+dd 04982ad4ah
+dd 0021f3ac9h
+dd 0bf26b5f0h
+dd 025454677h
+dd 08b202ec2h
+dd 010a94e4eh
+dd 0738d5d36h
+dd 09fa9717dh
+dd 0b56ac768h
+dd 04b2d4fb5h
+dd 0cf12494bh
+dd 018e4dc5ah
+dd 0af23f746h
+dd 06c8bd0a7h
+dd 0e7da71b3h
+dd 0daf81b9dh
+dd 01776d568h
+dd 0f37081dbh
+dd 0d0b93717h
+dd 0328bf8cch
+dd 00079a817h
+dd 0ea0f96aah
+dd 0b7a5aa48h
+dd 07e4c9327h
+dd 0d978adc0h
+dd 082401945h
+dd 0fcc21bd7h
+dd 0c406d252h
+dd 0b31467e5h
+dd 08187499fh
+dd 0d1b3e502h
+dd 0b5b3b068h
+dd 08c5f708bh
+dd 09fd63072h
+dd 08a128212h
+dd 06bcde058h
+dd 0458379c3h
+dd 0cb0d7e5fh
+dd 047081d12h
+dd 09db03435h
+dd 029998d98h
+dd 0b8899e91h
+dd 011848ee7h
+dd 0cbd3e62eh
+dd 0bebbfbf9h
+dd 04d409301h
+dd 0c799a3a1h
+dd 0a32585ech
+dd 0b0869b0ch
+dd 02c45bf94h
+dd 07adf162bh
+dd 0dbd0cb07h
+dd 0367a155ah
+dd 02aad3860h
+dd 0fee63e1dh
+dd 0f93aec5ah
+dd 04d07f860h
+dd 07f2b7633h
+dd 07038d1e0h
+dd 09bff5ad6h
+dd 075350cf1h
+dd 042ec83a6h
+dd 06d5165eah
+dd 08a31dda2h
+dd 0741839d7h
+dd 04070c3f1h
+dd 094987929h
+dd 02d440c2dh
+dd 0b8a3c83fh
+dd 01c7d63b9h
+dd 09b53e58eh
+dd 0082c0202h
+dd 0a380585eh
+dd 09c685302h
+dd 0fafa72a6h
+dd 093d6e6f9h
+dd 0e9e02bc6h
+dd 02c47569eh
+dd 0c38b0f48h
+dd 002eb8596h
+dd 0b19ea1e4h
+dd 0cecb4e21h
+dd 09aa1de47h
+dd 0a95da83fh
+dd 0d20cda22h
+dd 04fdb3acah
+dd 05092c91ch
+dd 027815507h
+dd 0da3a661eh
+dd 0ea29e25dh
+dd 0bdbab28bh
+dd 0036e3ec2h
+dd 01aa1cd7ch
+dd 08f611864h
+dd 0cbb7aa3ch
+dd 00ef7e122h
+dd 0f57b5bb5h
+dd 0a999c6d3h
+dd 0a75ca92dh
+dd 0d394bc8eh
+dd 0263e4777h
+dd 07c3dbe79h
+dd 0197a6607h
+dd 040e6056dh
+dd 085e3b9efh
+dd 041902656h
+dd 0edd3b749h
+dd 005c4d992h
+dd 00f179393h
+dd 0c169101ah
+dd 020e6c049h
+dd 04f01ada0h
+dd 08a6602c4h
+dd 064f74709h
+dd 04647cce6h
+dd 0224022feh
+dd 057f817edh
+dd 0ba7ddd70h
+dd 03ac74713h
+dd 02e9bd618h
+dd 04194795ch
+dd 0f3734bech
+dd 0beab97fch
+dd 0b7f2f3bbh
+dd 01cd43086h
+dd 0267524beh
+dd 0059d0deeh
+dd 0351b832bh
+dd 04ada4106h
+dd 005e06c52h
+dd 0a31406dbh
+dd 0544451b8h
+dd 0cfef50e5h
+dd 04b1f9750h
+dd 07b7ba67fh
+dd 05c614b83h
+dd 0d2d0209bh
+dd 04df6fd4bh
+dd 08b494616h
+dd 04d55cc33h
+dd 0d09ae83dh
+dd 01e4b3e61h
+dd 066af92a5h
+dd 0b42c114eh
+dd 0b79fe657h
+dd 0fe3ba8fdh
+dd 04dc4f5c8h
+dd 0e3bd76ebh
+dd 0688583eeh
+dd 0499e1bebh
+dd 092386bfbh
+dd 025638678h
+dd 0d27f6812h
+dd 0af0c2ff6h
+dd 0d4ef525bh
+dd 080b21e4dh
+dd 0fc98ac89h
+dd 01e2ca365h
+dd 0531efcd5h
+dd 0ec5c17c2h
+dd 0d33d1bfeh
+dd 0f5eb1058h
+dd 013c50cb6h
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130678806.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130678806.inc
new file mode 100644
index 0000000..e5c50e8
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130678806.inc
@@ -0,0 +1,12800 @@
+dd 000000001h ; Header Version
+dd 000000806h ; Patch ID
+dd 011262013h ; DATE
+dd 000030678h ; CPUID
+dd 014d372a6h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000c7d0h ; Data size
+dd 00000c800h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000806h
+dd 000000000h
+dd 000000000h
+dd 020131125h
+dd 0000031f1h
+dd 000000001h
+dd 000030678h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000031f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 06fbddad0h
+dd 097b60ec8h
+dd 08252afd4h
+dd 0e61f6d91h
+dd 03542ee8ch
+dd 084b597b4h
+dd 0ec4d4fd9h
+dd 0ffb27814h
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 060645febh
+dd 01ffee1f9h
+dd 00a21ab72h
+dd 0d3ee4551h
+dd 0a842647ah
+dd 0da703d41h
+dd 0c09db538h
+dd 054443633h
+dd 00079362eh
+dd 018c35b48h
+dd 027f0100ah
+dd 0e629b421h
+dd 027258ddah
+dd 0a95d2e47h
+dd 02868b622h
+dd 09eaed6f4h
+dd 0fb51d446h
+dd 00a5547bfh
+dd 090f85256h
+dd 09f6b525bh
+dd 0ac62ec50h
+dd 0627c86ffh
+dd 0be0815a5h
+dd 001df99d4h
+dd 03184d9e8h
+dd 0e3039c8ch
+dd 085f7a6c8h
+dd 067f110fdh
+dd 0f2fd9d81h
+dd 0ab7b3bb0h
+dd 01a6e554ah
+dd 0563f13ebh
+dd 0cfaf6911h
+dd 0421cb07bh
+dd 0e431acc3h
+dd 09599030fh
+dd 0f7dd2410h
+dd 0165b6eceh
+dd 01b3c1d57h
+dd 0fca8f45ch
+dd 02cdc850ah
+dd 07f43bf16h
+dd 0475bf40dh
+dd 02a5dc508h
+dd 00fc75ddeh
+dd 0597fd3cfh
+dd 0e03cfbddh
+dd 024ce56feh
+dd 0c072278fh
+dd 080dee58ch
+dd 0ea01969bh
+dd 01adf77b6h
+dd 0ddc31a66h
+dd 00c01ae9ah
+dd 000153551h
+dd 061f687bbh
+dd 0262dd297h
+dd 0fcdb49e6h
+dd 0aa02d465h
+dd 00b3b3febh
+dd 064fcc5d2h
+dd 04985f57fh
+dd 0a1fd2e9ch
+dd 07273a596h
+dd 025073a02h
+dd 08f51a6deh
+dd 051cbe0c8h
+dd 01d2909fah
+dd 022dd31afh
+dd 0951049fah
+dd 0f3eb3c6dh
+dd 025ba0ccah
+dd 079f1dfa3h
+dd 028ac0c22h
+dd 09d9a5861h
+dd 0da816e5ch
+dd 0b01eeb09h
+dd 067267d24h
+dd 0cd011000h
+dd 0d97381b9h
+dd 04619e6fbh
+dd 02d128f6ah
+dd 03c337500h
+dd 0ee36d015h
+dd 0043418c8h
+dd 0e17e9105h
+dd 0382a6d5fh
+dd 028c9910eh
+dd 084500f2dh
+dd 01bcb7bf2h
+dd 0c665b9ech
+dd 036ee8d54h
+dd 0fe7b4281h
+dd 0f7f72cc9h
+dd 084b4c103h
+dd 00d2058e5h
+dd 0311c43beh
+dd 0d65f4a12h
+dd 0e15a30ach
+dd 059de1115h
+dd 08776bd64h
+dd 0526c65beh
+dd 0b81bc7d0h
+dd 0b07bcf82h
+dd 08c46be72h
+dd 0baafd289h
+dd 0eea32c0fh
+dd 0be6cf0a7h
+dd 0a5408ba4h
+dd 099553266h
+dd 0dbb1793dh
+dd 07122b692h
+dd 0e4ca943fh
+dd 07cbcb1a7h
+dd 091356937h
+dd 0639071e8h
+dd 03b471c53h
+dd 0f4d203bch
+dd 092a4b37eh
+dd 08a17dd59h
+dd 01ee0119fh
+dd 012564562h
+dd 076f71eb2h
+dd 00be2a9d2h
+dd 0eb7f334ch
+dd 0cf5aaddfh
+dd 03809df7bh
+dd 0cc631c13h
+dd 0bc492d5dh
+dd 0dc530396h
+dd 083a338bah
+dd 01f851a37h
+dd 038399297h
+dd 0b207617fh
+dd 0dce032ddh
+dd 0e26e263bh
+dd 0d26d3bc2h
+dd 03b3fd4d5h
+dd 01bbf0808h
+dd 0533e9587h
+dd 03bfb23efh
+dd 077b98bbdh
+dd 0462f21f9h
+dd 0d703227ch
+dd 0d483c101h
+dd 042f8c03eh
+dd 0deadce64h
+dd 095a18240h
+dd 09838570fh
+dd 05e23160eh
+dd 0f314656fh
+dd 0b4673b36h
+dd 0a2c96eb4h
+dd 09b9b4b46h
+dd 0488ea5ceh
+dd 09ee2df56h
+dd 03a12d3adh
+dd 0778cb2b9h
+dd 091defb53h
+dd 0e52c98d6h
+dd 0cce15191h
+dd 056bb1e6dh
+dd 00bd55e7ch
+dd 07cb9cfach
+dd 05c60faa7h
+dd 0afdd0058h
+dd 0b8ecfc50h
+dd 06d57d708h
+dd 08ed47620h
+dd 0a14c2fefh
+dd 07dc40e6ah
+dd 0339f18a9h
+dd 074598e5bh
+dd 0d6653ce5h
+dd 055e8b4c2h
+dd 0527d4c39h
+dd 099802f39h
+dd 092e28f57h
+dd 092cf27b3h
+dd 027d74162h
+dd 02b5d41bah
+dd 07b792bbeh
+dd 0f44caffdh
+dd 0ded543fah
+dd 08a86ffaeh
+dd 0fd5a80efh
+dd 08226a131h
+dd 0552df4ebh
+dd 0ad97ef85h
+dd 0d2f5db1bh
+dd 08fbc0944h
+dd 08f90c9b4h
+dd 078c2b95ch
+dd 097cdcca5h
+dd 08436c209h
+dd 0b28a3e5ah
+dd 06df895ach
+dd 06ccfb633h
+dd 03c9e0dd2h
+dd 015360e69h
+dd 0c8d8707eh
+dd 0b4be6ffch
+dd 0ee04e2edh
+dd 06057da1eh
+dd 016bac3a4h
+dd 07c86c93ch
+dd 0d1b101ffh
+dd 06705e2f0h
+dd 0b8e4975ch
+dd 0d0ddf64ch
+dd 0f723e500h
+dd 0e4354620h
+dd 06f30d64dh
+dd 08403c25bh
+dd 00cf0aa7dh
+dd 033dd7626h
+dd 0bc86e30ah
+dd 0ed644a2fh
+dd 02c659757h
+dd 0f09665c9h
+dd 097b10624h
+dd 01c2b862eh
+dd 029e48039h
+dd 0b9edf104h
+dd 08eda9381h
+dd 02f3bfda0h
+dd 05b22b6fbh
+dd 04c49187bh
+dd 0052b174dh
+dd 049658814h
+dd 0baa96bbbh
+dd 09ab7cc73h
+dd 02359306fh
+dd 0d41dc0beh
+dd 09add4409h
+dd 0aa5ba714h
+dd 0c9e0b4a1h
+dd 06715e370h
+dd 0ca09e12dh
+dd 04fd677cch
+dd 0420fb220h
+dd 02c840841h
+dd 0cc9cccb3h
+dd 0b71263c7h
+dd 0106db8cah
+dd 0f2034d9fh
+dd 047fddce7h
+dd 005f1a665h
+dd 06637669dh
+dd 086edb08eh
+dd 09f1ea1e1h
+dd 03c841e26h
+dd 01e01b5b5h
+dd 0e698f005h
+dd 0567ab631h
+dd 06defd9cfh
+dd 0bded983ah
+dd 0d4d3aa76h
+dd 02fa0da6bh
+dd 0fd462121h
+dd 0d5c59880h
+dd 00c7ac655h
+dd 00003bfe5h
+dd 07b82f0eah
+dd 0511a80f6h
+dd 07bdf22e9h
+dd 01a264cb9h
+dd 07cea9884h
+dd 0a57fa918h
+dd 04a9e30c9h
+dd 0359329e1h
+dd 0dbfeba09h
+dd 0aa92c164h
+dd 05c7b1332h
+dd 0b45e7af6h
+dd 0c0498491h
+dd 01d8c0d9fh
+dd 0345c1faah
+dd 082d47489h
+dd 04ac36a21h
+dd 0bbc002dah
+dd 040f3630fh
+dd 0eb4952dah
+dd 0a8e0a27ah
+dd 03812e2e7h
+dd 0b4cb6cd2h
+dd 0f9685315h
+dd 01a3df98fh
+dd 0ae202570h
+dd 02d0d0bd6h
+dd 08f36e21fh
+dd 07c9e670bh
+dd 0217b448eh
+dd 0eff45463h
+dd 03fe60d24h
+dd 0c56e1bc7h
+dd 016fcb27ah
+dd 05c38d70dh
+dd 0e3d922fch
+dd 06d58835fh
+dd 0ea4f5bf3h
+dd 023cab2d7h
+dd 02f740fe1h
+dd 0be8a4cbeh
+dd 092e99824h
+dd 0b36fe4fbh
+dd 0c91a0585h
+dd 0274521c6h
+dd 02a317555h
+dd 0a20e5dd9h
+dd 0f5bc620dh
+dd 08c38dbc2h
+dd 01c04b7b8h
+dd 07be0eb0bh
+dd 05af7e22fh
+dd 02a4c5410h
+dd 0b0a4acbfh
+dd 019a4a806h
+dd 05d6628aah
+dd 0647b8dd8h
+dd 0e527e08fh
+dd 057d6e267h
+dd 0308b5a09h
+dd 098fc3295h
+dd 010164272h
+dd 058a58345h
+dd 0d8815520h
+dd 0fc97a79eh
+dd 0fd81998eh
+dd 0cac87913h
+dd 026d266a4h
+dd 0dbcc3cfbh
+dd 0b8bd804ah
+dd 0c5c42f8dh
+dd 0ea687526h
+dd 0eed4ba4ch
+dd 0749037e9h
+dd 0d878c58dh
+dd 01859fbd0h
+dd 0788e102bh
+dd 04b1520d1h
+dd 04c72375ch
+dd 0fb3b9b84h
+dd 0cb080812h
+dd 0d347e887h
+dd 08069f561h
+dd 07a404d74h
+dd 0ba1544adh
+dd 0a71c35d8h
+dd 0a815b466h
+dd 0f194fc2eh
+dd 0be98cffeh
+dd 00690bb5dh
+dd 02704d4eah
+dd 08c7fc64bh
+dd 0c7e19764h
+dd 0bf1aef96h
+dd 04b93688dh
+dd 0c8a63fc6h
+dd 05f9fc0efh
+dd 0131faed4h
+dd 08ea1eb5ch
+dd 05439096fh
+dd 0baebc248h
+dd 00c2dcb60h
+dd 0c5c19fadh
+dd 02844ae8bh
+dd 0d82196d5h
+dd 0f4a8cc31h
+dd 0d38a121ah
+dd 0f02c67e4h
+dd 07d258c87h
+dd 076ad6233h
+dd 090628338h
+dd 0b5c55000h
+dd 002b35f3dh
+dd 0d5eb33e6h
+dd 09eff4770h
+dd 04d1bd63bh
+dd 0dc0313bfh
+dd 057c608a7h
+dd 07265cfaah
+dd 08c45074fh
+dd 07c14dff4h
+dd 022fb50a0h
+dd 0aa79c31bh
+dd 07364553ah
+dd 0f98f8ccah
+dd 03069a48ah
+dd 05291a8cfh
+dd 0cef82223h
+dd 07c8488b6h
+dd 035acc425h
+dd 06be32eaah
+dd 0519d9d03h
+dd 06eb28283h
+dd 0a6b6d7f5h
+dd 00ba263a0h
+dd 01f4a9931h
+dd 04e671e0bh
+dd 0c83556beh
+dd 0b51ca80fh
+dd 009d1f47bh
+dd 082aaf404h
+dd 0817f6859h
+dd 0b4fe2f22h
+dd 0034a9c5fh
+dd 05188bd68h
+dd 0e509012bh
+dd 0bbf47204h
+dd 047f89125h
+dd 0a5f9ccfah
+dd 0b850955eh
+dd 062f5ded9h
+dd 06251a69dh
+dd 0831a1640h
+dd 0e5f88acdh
+dd 0b74cd12ch
+dd 09c7daff4h
+dd 0a33b0ebah
+dd 07e2895b0h
+dd 0b43fec35h
+dd 0e39b4b1dh
+dd 08d46ecdah
+dd 063ad0ee1h
+dd 0665a2db0h
+dd 09ae2e517h
+dd 0002469cch
+dd 0a8f4bbf7h
+dd 0ecb5c629h
+dd 0503660dah
+dd 0553f92eah
+dd 0a0936ec2h
+dd 0cfdd63a7h
+dd 0d7b12818h
+dd 0b7cc2b68h
+dd 0deea6682h
+dd 0bb8eededh
+dd 0b8df15d6h
+dd 079d0359eh
+dd 07c917bd0h
+dd 03befd44ch
+dd 0400fc45eh
+dd 0710a1a11h
+dd 02ab163e7h
+dd 09938486dh
+dd 0f4f9fb4bh
+dd 02825f0cch
+dd 0bcfc3928h
+dd 0451b592dh
+dd 0267da467h
+dd 00016c489h
+dd 034e1f298h
+dd 004678047h
+dd 06910c868h
+dd 08a5eb252h
+dd 0248c3193h
+dd 00f627de0h
+dd 0ff897c22h
+dd 0df9739a2h
+dd 030919bc0h
+dd 0f611a9bbh
+dd 06a318eb9h
+dd 070be822ah
+dd 0453b1643h
+dd 02de85e73h
+dd 0eb2169bch
+dd 0395017feh
+dd 04d68a51fh
+dd 096b56903h
+dd 0eb15a1ceh
+dd 0a6c03886h
+dd 05077c669h
+dd 02b039794h
+dd 0f0a28e79h
+dd 08e9d9bcfh
+dd 0648cb2dch
+dd 0cd7c4919h
+dd 0018b359fh
+dd 03ab248f4h
+dd 0066c2618h
+dd 0b5792835h
+dd 08cd96edbh
+dd 06a7db9b4h
+dd 07051273bh
+dd 08188e68ch
+dd 01abb13b4h
+dd 03bfef596h
+dd 05af9c1f8h
+dd 065ddb0bah
+dd 08e4ada2eh
+dd 0242158f5h
+dd 0e9eb7178h
+dd 09781d14eh
+dd 03ed46094h
+dd 0ef31cd83h
+dd 080418bfah
+dd 01e324919h
+dd 08455f586h
+dd 092eaf909h
+dd 013232ba5h
+dd 03dd00acdh
+dd 0c8c29d3fh
+dd 0450e15cch
+dd 02f19f626h
+dd 0e2c293cdh
+dd 098f1e8fbh
+dd 037c5d122h
+dd 0ad4aa1c8h
+dd 0ac381b79h
+dd 073ae5b3ch
+dd 0bc8c2838h
+dd 07c896b4dh
+dd 030e10b1ch
+dd 03de17342h
+dd 0a4bf968bh
+dd 024192899h
+dd 05e7fc726h
+dd 059640a8ch
+dd 0d93961a1h
+dd 08d987eceh
+dd 0f67bc244h
+dd 033040203h
+dd 0e8802107h
+dd 08a0c18a5h
+dd 0337549d8h
+dd 043e96edeh
+dd 019d4205ah
+dd 0917eb170h
+dd 0653d24ceh
+dd 0c52e02c2h
+dd 0624b89e3h
+dd 0f730a4e7h
+dd 0180bb3e6h
+dd 0754d08feh
+dd 0f5ed20a1h
+dd 0e4e2c946h
+dd 044f729adh
+dd 08e732d0fh
+dd 0549ec213h
+dd 0dfb59337h
+dd 028fbe1d7h
+dd 0a760d248h
+dd 0e42213a5h
+dd 0b2e3f175h
+dd 0ef45fca7h
+dd 04279e3a3h
+dd 0065bd9bch
+dd 0cf71b829h
+dd 041dd0da2h
+dd 08a9c2a3dh
+dd 010bf115ah
+dd 0f36f83f5h
+dd 0d4726d3eh
+dd 0b4fd032eh
+dd 0091dddc2h
+dd 0eebce195h
+dd 009aeae2fh
+dd 065486f2eh
+dd 070641c6ah
+dd 080a3bda5h
+dd 0f2df69f0h
+dd 00fd8e661h
+dd 054c9a33ah
+dd 0742f03b2h
+dd 0035cd879h
+dd 063e0bce1h
+dd 061127af8h
+dd 03b0dea4fh
+dd 0a4f290f5h
+dd 0cdf0f8d9h
+dd 078e2d394h
+dd 0e8ccef4bh
+dd 02820772ch
+dd 0ec43cf60h
+dd 0896e462bh
+dd 08479a48eh
+dd 0a0e60ca2h
+dd 0a569c67dh
+dd 0ea4cf600h
+dd 0fcb4d230h
+dd 02481c897h
+dd 033605d51h
+dd 08cbe88c6h
+dd 0cfe4295ch
+dd 0e2641bb7h
+dd 034c7eb0dh
+dd 0912541f1h
+dd 04d1261ffh
+dd 03c566a64h
+dd 00c02731fh
+dd 09767db75h
+dd 04847b152h
+dd 015aa4594h
+dd 02a29b7d9h
+dd 0f0506c7ch
+dd 03d2bc6c9h
+dd 0bd874420h
+dd 0757147b6h
+dd 03a18e9efh
+dd 001cc29a0h
+dd 05aec8207h
+dd 008a56907h
+dd 08f9b4b06h
+dd 04fc09786h
+dd 02ce3b6b8h
+dd 04926a640h
+dd 0e097d6f1h
+dd 0f9b17578h
+dd 0aa264717h
+dd 0c4a39b6dh
+dd 0dec81f11h
+dd 0262b87f3h
+dd 091348e12h
+dd 0a3c3dca8h
+dd 0be3055a0h
+dd 08813797eh
+dd 08ce38e44h
+dd 072428f58h
+dd 00c54d809h
+dd 064f7a6e2h
+dd 065aad17fh
+dd 086751b20h
+dd 05fad7c6fh
+dd 05520d15dh
+dd 099d4693ah
+dd 077eeea74h
+dd 070a2b444h
+dd 05e3cd8a3h
+dd 05a7a55fah
+dd 0363fbf81h
+dd 0e89a6146h
+dd 02bbb2d03h
+dd 057893d5fh
+dd 0986a1199h
+dd 0e2810248h
+dd 03be19133h
+dd 06bcd700ch
+dd 0090a7a53h
+dd 0d92874f7h
+dd 0083aba16h
+dd 056afd431h
+dd 03c858a64h
+dd 09b22091eh
+dd 0fcb587a7h
+dd 024c11e59h
+dd 07daac380h
+dd 038d8fc06h
+dd 0d36cf3cch
+dd 0d24b2adfh
+dd 029501efch
+dd 030b5afd9h
+dd 0a4ad1b26h
+dd 0a36986b0h
+dd 0616a40c2h
+dd 05dd81f3ch
+dd 08dc2f634h
+dd 051a24dbch
+dd 06e17ae92h
+dd 0de27486ah
+dd 086d84506h
+dd 059f6446bh
+dd 01bdf1514h
+dd 02e74070fh
+dd 03877e374h
+dd 02cdcfbb3h
+dd 0eedc87b9h
+dd 02686f3e4h
+dd 0343cb338h
+dd 0facf51ceh
+dd 0e49df959h
+dd 00ca6d91bh
+dd 093bc7c7ch
+dd 07b1608bah
+dd 01b80ed50h
+dd 022ecb70dh
+dd 072954274h
+dd 03a4a2408h
+dd 0d7ce43e8h
+dd 0b4f72946h
+dd 076608130h
+dd 0949536bbh
+dd 0d6817091h
+dd 072bc5c84h
+dd 02ce0c9f6h
+dd 054399742h
+dd 076ecfc9bh
+dd 0300a3e94h
+dd 01bb388f4h
+dd 0aad47b39h
+dd 03af56982h
+dd 0c3df758ch
+dd 00f25103eh
+dd 03e0e983ah
+dd 07060a1b8h
+dd 0b9ba7db0h
+dd 0ef64f8c4h
+dd 0d71829e6h
+dd 05336931eh
+dd 0c020e103h
+dd 0d207dc99h
+dd 0fd855d76h
+dd 0761559c4h
+dd 0d6e2d70fh
+dd 042824debh
+dd 066908021h
+dd 0162ac268h
+dd 0e9d87d0ah
+dd 0496bfb77h
+dd 078724239h
+dd 0234b5541h
+dd 048003a0ch
+dd 032207492h
+dd 01cda4805h
+dd 02855fe9fh
+dd 08a2fbc81h
+dd 0a4530ce6h
+dd 0199719a5h
+dd 0448993ddh
+dd 0b7daa2a2h
+dd 0a0a70aabh
+dd 0001d6fe2h
+dd 000674004h
+dd 004bb7364h
+dd 02049e64ch
+dd 0f9120369h
+dd 0621c6cbfh
+dd 053ae2ef7h
+dd 05c323b4fh
+dd 09bf61038h
+dd 0bd642100h
+dd 04f51428fh
+dd 07be23ef8h
+dd 07027ad2eh
+dd 04f169cech
+dd 038f9a613h
+dd 090f7aa76h
+dd 090478d01h
+dd 0e66f8187h
+dd 0f6842b0bh
+dd 03ca1d996h
+dd 02844159fh
+dd 01d0f3e1bh
+dd 06015d208h
+dd 08a5c12cch
+dd 03f861535h
+dd 009b035c0h
+dd 06f0e6ea5h
+dd 072d338ddh
+dd 053829332h
+dd 0a3735e2dh
+dd 0c200fee8h
+dd 038729a11h
+dd 0f843348eh
+dd 05886cbfeh
+dd 0cc355cd8h
+dd 0bfa220c6h
+dd 0ecdea45fh
+dd 0f927ff57h
+dd 06549d9dah
+dd 0c0326c6bh
+dd 01e03eb73h
+dd 0a2bab382h
+dd 00a2dda45h
+dd 0bbe86fc8h
+dd 0e805e81ah
+dd 011f58edbh
+dd 0cc3abe98h
+dd 02e648474h
+dd 00638a5c0h
+dd 02c81ccdah
+dd 098bd27a3h
+dd 0e297099dh
+dd 0edaa3a4fh
+dd 084484270h
+dd 0973a7ebch
+dd 0233cc880h
+dd 078771f15h
+dd 098976ccfh
+dd 024d4902ah
+dd 07e291531h
+dd 078e8e494h
+dd 0631a5902h
+dd 02d05ede7h
+dd 0acbd00cbh
+dd 0343db082h
+dd 0352c2c3fh
+dd 020a6bb78h
+dd 00adf340ch
+dd 0324acd3dh
+dd 0f2d62e6fh
+dd 0c16a86bfh
+dd 04f30c4e7h
+dd 0b751ee7fh
+dd 0c8cfac35h
+dd 080b83f1eh
+dd 019a727e4h
+dd 08c461fd2h
+dd 01e95a743h
+dd 0817e17edh
+dd 01cf95bf1h
+dd 07d34a557h
+dd 015bffdbeh
+dd 0f22bb67fh
+dd 0bbe0eb7dh
+dd 017f53813h
+dd 0b35433cfh
+dd 0e34eb370h
+dd 02c42a5d1h
+dd 04f90a981h
+dd 0f4efc085h
+dd 0cb7e2132h
+dd 096dd6227h
+dd 0d06f4ad0h
+dd 0acff64f1h
+dd 05cb3ae8fh
+dd 0c1dc68eeh
+dd 0bbdfd1ach
+dd 0ad31a4cch
+dd 0e8d39a1ch
+dd 0a55cd5d9h
+dd 030dd7fb9h
+dd 0197731d2h
+dd 0da1dc3fch
+dd 0d68aaa34h
+dd 05f18b2e0h
+dd 0a2c98f75h
+dd 0b27ae707h
+dd 0e6f66269h
+dd 051380f23h
+dd 0328eb658h
+dd 0f061b642h
+dd 0364a9293h
+dd 06f8b6565h
+dd 0b34e6ab3h
+dd 0ba0f6aach
+dd 0ea53f017h
+dd 0b9975768h
+dd 06bb175f9h
+dd 010ec8f94h
+dd 088a31c5ah
+dd 0b9781fd7h
+dd 06bab3b81h
+dd 04a57dcdbh
+dd 063e97ba4h
+dd 02b53ad10h
+dd 0153881b9h
+dd 0e4c1bc5dh
+dd 01c251f45h
+dd 0971bfdc7h
+dd 0e62ad0edh
+dd 09f42969eh
+dd 0fc631bf5h
+dd 0d848a1d6h
+dd 04835f6a7h
+dd 0e07a60beh
+dd 0a4b755e8h
+dd 0834cd767h
+dd 04e75286eh
+dd 0c5be428ah
+dd 07f4e8876h
+dd 0db914ccch
+dd 0f3bd251dh
+dd 0513c5824h
+dd 085c66e22h
+dd 00f0b4046h
+dd 078756b7eh
+dd 0fd6fc5c6h
+dd 00ff93d90h
+dd 0d02037beh
+dd 0f73ca6c7h
+dd 071c78276h
+dd 0c0393f2dh
+dd 0a009d648h
+dd 02bde0291h
+dd 08631d86ah
+dd 0de846842h
+dd 0c3c51b77h
+dd 0d60f36cfh
+dd 053f2de9bh
+dd 00ec05c00h
+dd 0d68024e1h
+dd 06ebbb40eh
+dd 0203a7b82h
+dd 0742be17ch
+dd 048e65125h
+dd 09637cb06h
+dd 0f4af0721h
+dd 0a9fd16dah
+dd 0fdac905eh
+dd 089875497h
+dd 0851abc51h
+dd 0d9db28e3h
+dd 0b6c085d2h
+dd 07b5abe5dh
+dd 080448827h
+dd 09cdc5ff6h
+dd 06805d354h
+dd 02597b0cah
+dd 08a778ef7h
+dd 03b2be728h
+dd 09b81381ch
+dd 0b480a98ch
+dd 08d6cce6eh
+dd 05f481b90h
+dd 0a423922ah
+dd 0ca344226h
+dd 0c985947dh
+dd 0dd35e12dh
+dd 0d61a90eah
+dd 0e4286fc7h
+dd 08fa22422h
+dd 07e112837h
+dd 0f972e31dh
+dd 088704d7bh
+dd 0cfe84d5ch
+dd 0d45c18a4h
+dd 05e0145cah
+dd 074173602h
+dd 033446d21h
+dd 05a97d03eh
+dd 05210e62eh
+dd 05c8ff4a9h
+dd 099977c09h
+dd 05bd42481h
+dd 007870f5dh
+dd 0ac5f11d0h
+dd 078d27855h
+dd 0255aed48h
+dd 0ca2115a6h
+dd 02655bcedh
+dd 04fcf091dh
+dd 0afecb5d7h
+dd 01acdd13fh
+dd 028279c61h
+dd 0fe164faah
+dd 0552b6d57h
+dd 04b2b3ee0h
+dd 039fed963h
+dd 0de45e0b9h
+dd 01564ba92h
+dd 0376a3908h
+dd 0ee99ec84h
+dd 061c36245h
+dd 0fd58e48ch
+dd 01cc55466h
+dd 0eb2d083bh
+dd 027699382h
+dd 0fdb01f0bh
+dd 0e3c882c2h
+dd 0aee01afdh
+dd 031bda803h
+dd 0191fcb6ch
+dd 0a51d7093h
+dd 033eb0192h
+dd 07faf81e9h
+dd 03b665559h
+dd 00441f63eh
+dd 0cc3ba582h
+dd 055ed988eh
+dd 040ab5ed6h
+dd 08b1c3544h
+dd 0b7b9f7cch
+dd 03b580587h
+dd 07caf28e3h
+dd 0cd562ec6h
+dd 0303d40eah
+dd 01af262f1h
+dd 076879103h
+dd 0d1e26ebfh
+dd 0ba951ac4h
+dd 0d17d6664h
+dd 0036ec0ach
+dd 0f150a2efh
+dd 03f3be75dh
+dd 0045df903h
+dd 0dd5c4fa6h
+dd 0807496cah
+dd 04dcb2b93h
+dd 066515945h
+dd 086338d29h
+dd 05db5d46dh
+dd 0c57347cch
+dd 0ac580fd9h
+dd 0d86f9d4fh
+dd 0f4b19d90h
+dd 0083176b9h
+dd 042687d29h
+dd 0e8ff6f29h
+dd 009ca8819h
+dd 0f972c88bh
+dd 0f40bab99h
+dd 0dd59e623h
+dd 0913a6ec7h
+dd 0d9cd321eh
+dd 06fe8af71h
+dd 039a87a05h
+dd 031894241h
+dd 0055f0ee3h
+dd 042d5f426h
+dd 05e8d4387h
+dd 0099bbb43h
+dd 07c4f6ee9h
+dd 0c9c3b8e1h
+dd 07d262cdeh
+dd 0c0ac9950h
+dd 0f3a4aeb6h
+dd 0c55f3511h
+dd 0a91cd97dh
+dd 03a3b1a1fh
+dd 0957565ach
+dd 088d0219eh
+dd 0c0f59beah
+dd 06a37a1aeh
+dd 0eb75cc22h
+dd 0762f73cfh
+dd 03edb98feh
+dd 036d61627h
+dd 00155860fh
+dd 082713e61h
+dd 0df9a10fbh
+dd 065c8858dh
+dd 07c9255b4h
+dd 021d48f00h
+dd 07c34b55eh
+dd 0cba3810fh
+dd 0439e97efh
+dd 0333dcb04h
+dd 0e983c6bfh
+dd 022a28b65h
+dd 018391d72h
+dd 06fd827eeh
+dd 0560add3ch
+dd 0a096360eh
+dd 0a7be4822h
+dd 0aae559b0h
+dd 02e83c6d7h
+dd 00b0a0a9ah
+dd 001ca1ad1h
+dd 071627636h
+dd 035aa8f28h
+dd 0dd925331h
+dd 07fea9810h
+dd 04f5e1894h
+dd 00af624dbh
+dd 0e6377719h
+dd 0f1de01ach
+dd 022078903h
+dd 0684b0f3ah
+dd 0a992ad82h
+dd 0470e0145h
+dd 01f8d2819h
+dd 0c3712ad1h
+dd 0847435eeh
+dd 07ea509b3h
+dd 0c5b76943h
+dd 0588fe4b7h
+dd 0bb2ef234h
+dd 092e6b25bh
+dd 068c1804ch
+dd 0cdb267f6h
+dd 0c26c22b3h
+dd 05507df6eh
+dd 03cbf8a37h
+dd 0ed82e5e9h
+dd 006b3b58eh
+dd 0014274e2h
+dd 09d224a32h
+dd 0572e318eh
+dd 08ccf8962h
+dd 06df6f33fh
+dd 0275134e7h
+dd 0b3c794c3h
+dd 01d36b520h
+dd 022cd1c27h
+dd 04c8cf08fh
+dd 0a8ff4705h
+dd 024be13efh
+dd 0f1bec68ah
+dd 035b0f980h
+dd 0eff72503h
+dd 0206e9d4bh
+dd 0860e4a17h
+dd 019d8a2dah
+dd 0bac31fceh
+dd 03132cae8h
+dd 0526ce9b0h
+dd 001e37f17h
+dd 03bc75c05h
+dd 0c4b46613h
+dd 02748222ch
+dd 01bea30b0h
+dd 01907d3cah
+dd 03787e362h
+dd 0655fecc9h
+dd 02e406416h
+dd 0b486fd30h
+dd 06f870fadh
+dd 03b10bdb6h
+dd 06b77a63ch
+dd 032fdba89h
+dd 079062661h
+dd 03f5611ach
+dd 04d0a8a51h
+dd 090d72d11h
+dd 0ec7fe623h
+dd 08fe02c0ch
+dd 0543ca2b0h
+dd 0c7187c22h
+dd 00739104eh
+dd 014667d2eh
+dd 09a3dc125h
+dd 0b06d1260h
+dd 009fd07a7h
+dd 0db78474bh
+dd 071d366c2h
+dd 07264fe6bh
+dd 0a730ee05h
+dd 0d2642d4ch
+dd 091948802h
+dd 0c9c47aa1h
+dd 0aecb6816h
+dd 0fa9630ffh
+dd 04922bca2h
+dd 0aaf3d578h
+dd 0eea8eaadh
+dd 0aa01a781h
+dd 0d21b8804h
+dd 0eff376aah
+dd 000e32df6h
+dd 08847069ch
+dd 0092f9adfh
+dd 0f338851ah
+dd 0d8a59bf0h
+dd 0737ed096h
+dd 006f1af2fh
+dd 0f733dd73h
+dd 0fbf54a14h
+dd 0b203efadh
+dd 0a28952ech
+dd 0f3871469h
+dd 04cd19e86h
+dd 010e9e05bh
+dd 0a0e5bfd3h
+dd 0da3b5cb1h
+dd 06110d2a5h
+dd 05040c284h
+dd 036645957h
+dd 0921030f4h
+dd 0ceffb555h
+dd 0161b7da5h
+dd 0fc81b6b9h
+dd 0720668e2h
+dd 06dbf45f8h
+dd 0979b537ah
+dd 03f611e9ch
+dd 08ddcd579h
+dd 04255c91fh
+dd 0c96d8564h
+dd 08d022c2bh
+dd 034d11467h
+dd 0097973e5h
+dd 076b2047eh
+dd 05231b316h
+dd 04e965b6fh
+dd 0d6af73fbh
+dd 027240037h
+dd 0f4d91304h
+dd 09a8b75a5h
+dd 0f83554f7h
+dd 0f4af1010h
+dd 09d9405a5h
+dd 05585ceeah
+dd 01a4b98a3h
+dd 023d19358h
+dd 0a524820eh
+dd 0cb093573h
+dd 07a258cedh
+dd 003067957h
+dd 0eccbeab9h
+dd 083443a98h
+dd 0b8bd450dh
+dd 08773f8adh
+dd 0067151f6h
+dd 0182f8cafh
+dd 067d8bfe8h
+dd 0f4327589h
+dd 0d82790c5h
+dd 005bae688h
+dd 06511f23dh
+dd 0871d291bh
+dd 0025ec708h
+dd 00c0afb6dh
+dd 0a1f9ce87h
+dd 034c0072fh
+dd 05628baeah
+dd 0c492992ah
+dd 02cee38b1h
+dd 034a7c77eh
+dd 00c48c9aeh
+dd 059afe189h
+dd 0f99c162fh
+dd 0f3e9038bh
+dd 06098cdfdh
+dd 000e04bfeh
+dd 0b0abef18h
+dd 07d322a31h
+dd 023439068h
+dd 055e6e9d6h
+dd 0a90ef87ch
+dd 053a3e36ch
+dd 0d539e784h
+dd 0e7539dbfh
+dd 04d2ca4dfh
+dd 0c6b3218eh
+dd 02f4e5182h
+dd 037a747fbh
+dd 096f2ccdeh
+dd 039a9da1ah
+dd 0c072db6eh
+dd 021566f00h
+dd 040fd52aah
+dd 0f96ce975h
+dd 02ed83b45h
+dd 0fb59663bh
+dd 0130add48h
+dd 01d8753cah
+dd 0e664062bh
+dd 03039a4e0h
+dd 06169705ch
+dd 0c8dd713dh
+dd 0b0e70121h
+dd 007f08407h
+dd 0d05405efh
+dd 0336f86b5h
+dd 04176ed5ch
+dd 055ddc366h
+dd 0977fa206h
+dd 0fe0ce1aeh
+dd 0f0d58256h
+dd 09ccc333dh
+dd 057365c01h
+dd 07b7a5378h
+dd 0c6b9660dh
+dd 0112e58bbh
+dd 08d2ae632h
+dd 0a9b6dfc5h
+dd 04f030b15h
+dd 0c2295b48h
+dd 083cbe218h
+dd 05933c506h
+dd 0a2037475h
+dd 0badd9d29h
+dd 0320849bfh
+dd 05ab6215bh
+dd 0e53cf0b1h
+dd 035358178h
+dd 0ffbae52ch
+dd 0798bb3bch
+dd 0a6a1db1dh
+dd 0320d6cc4h
+dd 09a169ec3h
+dd 05daf1006h
+dd 0eb39fef5h
+dd 0f205fcd7h
+dd 07d9fc2c8h
+dd 00d23d86ah
+dd 0719499f3h
+dd 09d469c36h
+dd 0d0994e42h
+dd 0c454399eh
+dd 0bf4c97c0h
+dd 073b769f9h
+dd 0e5360dach
+dd 07cce6aa5h
+dd 0fcf8cd9ah
+dd 04d24da55h
+dd 03d6b94fbh
+dd 0c6a33f7fh
+dd 01046140ah
+dd 0b1753c40h
+dd 0cabe4249h
+dd 04b3efc88h
+dd 0bdbc8af2h
+dd 0545b7324h
+dd 03b4f94e2h
+dd 09008fc5ah
+dd 0c475320dh
+dd 04c0f1f6dh
+dd 0398ea8eeh
+dd 0022d6646h
+dd 0b48fe1d5h
+dd 0669ddebfh
+dd 07b635582h
+dd 02f49a23ch
+dd 02b029069h
+dd 0c1aefa9fh
+dd 0cef02421h
+dd 0568bba29h
+dd 06783618eh
+dd 044a568c9h
+dd 08d12277eh
+dd 09fc6f0a4h
+dd 07974027ch
+dd 044cf7ba2h
+dd 022947595h
+dd 049ceac32h
+dd 0a43e09e3h
+dd 089a76358h
+dd 0c3a00a06h
+dd 08ccce149h
+dd 0e12720a9h
+dd 01ba7f0e8h
+dd 0dbedf64eh
+dd 09e085eeeh
+dd 01ca3c42bh
+dd 0ba2df81bh
+dd 08bb25f09h
+dd 088145dc0h
+dd 08868df8dh
+dd 0619988f8h
+dd 022bb8a58h
+dd 0072041b0h
+dd 065a8ac59h
+dd 00644228ah
+dd 01b353367h
+dd 0b895206dh
+dd 075b6036eh
+dd 07f96938bh
+dd 0b4110328h
+dd 024448091h
+dd 05381584ah
+dd 080325959h
+dd 04bb0c5bbh
+dd 044f50f8fh
+dd 0d59ba91ch
+dd 08082e509h
+dd 035df8150h
+dd 0f6e91578h
+dd 065d397d3h
+dd 038213750h
+dd 0aca00b0ah
+dd 022ef272ah
+dd 0ee8f2b72h
+dd 0a8e598c8h
+dd 0f3a83e14h
+dd 074fb44d9h
+dd 03a62c1d0h
+dd 03f2c6735h
+dd 0f8955872h
+dd 0e39cc38dh
+dd 075280c1dh
+dd 035177f33h
+dd 0f644a7dbh
+dd 01c91c4b2h
+dd 0c41e1bb8h
+dd 02f55644fh
+dd 04fa7789fh
+dd 065870461h
+dd 0d8d89019h
+dd 0529fea86h
+dd 0809a341ah
+dd 087500c92h
+dd 07c1700d7h
+dd 0cb6370c7h
+dd 0b45fafebh
+dd 0784e9741h
+dd 0070ca597h
+dd 012a4f27bh
+dd 096d55780h
+dd 061fcd39fh
+dd 0fe432875h
+dd 048213939h
+dd 0fc01b444h
+dd 0f997981eh
+dd 0cff054a3h
+dd 04fafbcb2h
+dd 010cfddd9h
+dd 0d30af5cch
+dd 0305fe122h
+dd 0fd163edah
+dd 0c40559f5h
+dd 0f81f9f50h
+dd 07e6d18bfh
+dd 067e39718h
+dd 013155f1dh
+dd 00ad41098h
+dd 07c3d93c8h
+dd 06c4ea0cbh
+dd 03cdf9616h
+dd 0e08d7ab6h
+dd 0c541c79dh
+dd 01d8df38bh
+dd 030300b7fh
+dd 0302a0b65h
+dd 0a894b94fh
+dd 0a66db78ah
+dd 01c06353ch
+dd 02c0d592fh
+dd 007d8509ch
+dd 005bd358bh
+dd 09d08a589h
+dd 07e580b0bh
+dd 0e3226bffh
+dd 07e99719ah
+dd 0e6ccd469h
+dd 0ad772d58h
+dd 031f57ec7h
+dd 01ef8266ah
+dd 0c3277f85h
+dd 0e87f506ah
+dd 09f1f4e9dh
+dd 0a646c1d0h
+dd 0da246092h
+dd 088664914h
+dd 0da3afa44h
+dd 0b174efa8h
+dd 0fa41e85bh
+dd 04b6cb6edh
+dd 091a85b2ch
+dd 02ec67d3dh
+dd 059c98b3eh
+dd 09711a6a8h
+dd 08e9b4ac3h
+dd 06c933723h
+dd 07ff49d49h
+dd 0dfc3c114h
+dd 08f1a6066h
+dd 062e9f35fh
+dd 0b9f11f4dh
+dd 0e7a5ee7fh
+dd 0a5ba3141h
+dd 0124fae87h
+dd 0a412b57fh
+dd 02d0d5786h
+dd 0380d2b51h
+dd 0c0f33e49h
+dd 0dd056a5dh
+dd 0741ba790h
+dd 086b3005ch
+dd 0d495076ah
+dd 0397bb54eh
+dd 09f7bb7a7h
+dd 05d0de6e5h
+dd 0fba05946h
+dd 0b6e32d40h
+dd 00cd0f2a0h
+dd 070e83432h
+dd 06a37350dh
+dd 0251fcc50h
+dd 0489ce833h
+dd 0286ad3d1h
+dd 0897bf264h
+dd 0980d9bddh
+dd 0ab06c01eh
+dd 089f3da38h
+dd 0e0ddc8feh
+dd 0045c6228h
+dd 0eec7d603h
+dd 0c7d2b00eh
+dd 0fd3349e1h
+dd 0815dfc55h
+dd 0db56fd7eh
+dd 0faf23255h
+dd 0bced1979h
+dd 0edac9e11h
+dd 076ee9b84h
+dd 004b7d37bh
+dd 0cf19ad4fh
+dd 05f83b228h
+dd 0489efe07h
+dd 0687ed0d1h
+dd 03976ac17h
+dd 0fd4c959bh
+dd 0e5599024h
+dd 01c7f713ch
+dd 08e1fc524h
+dd 013c836f1h
+dd 0c4ca06d7h
+dd 0fb58aa79h
+dd 0146e74d7h
+dd 085126649h
+dd 0b45fc37dh
+dd 0937eeaa7h
+dd 0ec2fc8a1h
+dd 084cc789ch
+dd 0e494e51eh
+dd 0e50ea512h
+dd 0bc32b5b5h
+dd 0124167b2h
+dd 0b04b1fb1h
+dd 071e21367h
+dd 088f98608h
+dd 0c935c24eh
+dd 028205410h
+dd 0ae79af98h
+dd 0cf3bdfach
+dd 018f75f15h
+dd 02a88b63fh
+dd 08f8e9e7eh
+dd 091befa78h
+dd 01d526ed5h
+dd 05e987f54h
+dd 03be4c607h
+dd 0d36673bch
+dd 0cf6893d3h
+dd 087df6f93h
+dd 02f417fcdh
+dd 09a97c78ah
+dd 08856bd47h
+dd 00b30941fh
+dd 06e459ba1h
+dd 00a3a05a4h
+dd 04b2717e5h
+dd 09bc6194ch
+dd 06d229bech
+dd 0e5ef2e2ch
+dd 09df4ccabh
+dd 0db70880dh
+dd 0ce179e59h
+dd 02e30a029h
+dd 0011dfed0h
+dd 0587dc96ch
+dd 0e965ef45h
+dd 0797e7916h
+dd 0733e03a2h
+dd 06163a9aah
+dd 0b103e672h
+dd 0146515a7h
+dd 0ff7dec2ch
+dd 01f6a112bh
+dd 0e6f22b99h
+dd 03afbceadh
+dd 0a21d4acbh
+dd 0b1847998h
+dd 08835a084h
+dd 0517f3a7fh
+dd 080cf485eh
+dd 0e2bff2d2h
+dd 0f7c4a892h
+dd 01cf148a9h
+dd 01c3fb593h
+dd 037a166e9h
+dd 054ec3a85h
+dd 00524f6bfh
+dd 03e262cb2h
+dd 04b945ba5h
+dd 0835480e1h
+dd 0c023011ch
+dd 052ffc683h
+dd 0c10b4c6dh
+dd 0a38c7218h
+dd 077d1191ah
+dd 0b433fad5h
+dd 075beeac5h
+dd 082c8352eh
+dd 09ac7f9fah
+dd 08fe47b70h
+dd 0210790e6h
+dd 0676fa74ah
+dd 0c37696fdh
+dd 023e7a558h
+dd 04171b89ah
+dd 096868a5ch
+dd 018faf62bh
+dd 06b086908h
+dd 0cbb08b52h
+dd 041fc3c45h
+dd 0141d3ba2h
+dd 0e88d0932h
+dd 09533ffcah
+dd 0a78159c6h
+dd 022f1fcefh
+dd 0835779e2h
+dd 0c8866352h
+dd 033ac8689h
+dd 0fb0dffbah
+dd 0fe287695h
+dd 0684ee022h
+dd 03c790778h
+dd 03e85c505h
+dd 0484e6013h
+dd 0eb70fdfbh
+dd 0e268fbe0h
+dd 00d98b998h
+dd 0b7c7cf76h
+dd 031ec9bd7h
+dd 0c13e7103h
+dd 0ff40b0eeh
+dd 0765a1e7fh
+dd 0f1f50c4ch
+dd 0ff045998h
+dd 00e27ed0ch
+dd 0297ed3a8h
+dd 05df5a67dh
+dd 0618edc80h
+dd 0d60b974fh
+dd 06fe1fdb2h
+dd 0ad145adch
+dd 04a3b76a2h
+dd 0c9f4b6f4h
+dd 0b3eb3a5ah
+dd 0ede3154bh
+dd 00804c61ah
+dd 0090a245ch
+dd 02c4d3ca0h
+dd 0fa77da24h
+dd 021b088b5h
+dd 0903d979fh
+dd 006abbec3h
+dd 0a165dbc8h
+dd 0cb9f8c22h
+dd 08edc5c50h
+dd 0d24e11cfh
+dd 00de601e1h
+dd 0e4ad2b9fh
+dd 0c30461d2h
+dd 0599057d4h
+dd 0a45d2356h
+dd 082597b7ch
+dd 0bd6d88ddh
+dd 06c607948h
+dd 0f333349eh
+dd 0e559f751h
+dd 074e351d5h
+dd 0fb7a31cah
+dd 01324d22dh
+dd 0905b9be1h
+dd 06c0e0f24h
+dd 00073bdf5h
+dd 039585110h
+dd 04e4c44d7h
+dd 08ad2241dh
+dd 0eb5450c6h
+dd 0b1ff7b37h
+dd 09f90125fh
+dd 0e7303661h
+dd 0090fc5e1h
+dd 0ae4a9a7eh
+dd 08e408d71h
+dd 0117cb559h
+dd 0d4c94295h
+dd 09143f3b5h
+dd 0eaae4aeeh
+dd 01cca3e1bh
+dd 0902707d5h
+dd 0e0854e3fh
+dd 02baac5d1h
+dd 01f99e5eah
+dd 0d9e2dabbh
+dd 0b9a58987h
+dd 0a7e6b8a3h
+dd 00b882e4eh
+dd 0c7ce5337h
+dd 0acfe03cah
+dd 01a755005h
+dd 01dd30cd6h
+dd 046a1834ch
+dd 060b61120h
+dd 00b9a2393h
+dd 0243cd786h
+dd 0afc8e274h
+dd 07d65e027h
+dd 0b9787215h
+dd 0afe1f47ch
+dd 0483112a5h
+dd 056fea453h
+dd 06fcfad25h
+dd 0447e1222h
+dd 04fcac8c6h
+dd 0e2961f7ch
+dd 030b1fe15h
+dd 00e110cd5h
+dd 0c0eaf5e2h
+dd 09610add4h
+dd 0b76bcb9bh
+dd 02afa74a8h
+dd 073d1d4c7h
+dd 022c0401fh
+dd 08cbcfc87h
+dd 0372d3129h
+dd 04f86f5bbh
+dd 0150ff475h
+dd 0c0c8602fh
+dd 0dcfbf4b6h
+dd 006ae023ah
+dd 013211ee9h
+dd 0141c51a2h
+dd 0b6e25bd0h
+dd 0d3bb2187h
+dd 09b93ffc7h
+dd 08c2fa2d5h
+dd 0656bc048h
+dd 0a17b7e99h
+dd 0271625d3h
+dd 0db9481a8h
+dd 0ad8b3ea0h
+dd 019945e11h
+dd 0a72afafah
+dd 0ae3e6483h
+dd 0e236b965h
+dd 085707ab2h
+dd 0bb3e67eah
+dd 02a55ce42h
+dd 03d1570d7h
+dd 0747f98dah
+dd 06fb8303ch
+dd 0b053f4e1h
+dd 0abf937cbh
+dd 0699b55ddh
+dd 0de2f687eh
+dd 09de9ec8ch
+dd 0bae65b40h
+dd 0afe10a60h
+dd 0450ddf24h
+dd 0269dcf25h
+dd 0dcf0c500h
+dd 07a405068h
+dd 0e5c17116h
+dd 06e7236f9h
+dd 0aaea6cd5h
+dd 05deda42ah
+dd 013cd74beh
+dd 0bddca074h
+dd 03f4f4816h
+dd 0dd2458efh
+dd 05be10a30h
+dd 02454a438h
+dd 0947c2ad7h
+dd 03840382ah
+dd 02553f906h
+dd 057d4cbcch
+dd 07c05179fh
+dd 04d0eb65ah
+dd 0e9b8a4d0h
+dd 0ad7a56edh
+dd 00d46e165h
+dd 049063550h
+dd 0501f6750h
+dd 0ef95a1f2h
+dd 044bc3ab0h
+dd 0c31dce63h
+dd 0c3ec5337h
+dd 0bddfd31dh
+dd 034b3a915h
+dd 0cc06961fh
+dd 07bcc476dh
+dd 0fe116df2h
+dd 00ce52647h
+dd 0e997fe1dh
+dd 0a83d6ef7h
+dd 03dc425afh
+dd 03bd3665bh
+dd 00cd0f83fh
+dd 0c6da3eafh
+dd 0a91e0acah
+dd 09573cf88h
+dd 0c4a10b2ch
+dd 0027fdc1eh
+dd 087f0e555h
+dd 04416703bh
+dd 0f53fabc0h
+dd 0304baac4h
+dd 08d711222h
+dd 0599d94b1h
+dd 0f8a277c6h
+dd 0b3bf8b50h
+dd 0b2edd0e4h
+dd 0d6fbb6cdh
+dd 0c868689bh
+dd 09f4d387ah
+dd 0d7ad19c8h
+dd 0736a07b4h
+dd 0dd366594h
+dd 0e49166b2h
+dd 0e1826b65h
+dd 0cf612678h
+dd 0436ff326h
+dd 0c5e11f1ch
+dd 09ba95474h
+dd 0bb66d280h
+dd 038717e22h
+dd 008e0a1e5h
+dd 08b5387f4h
+dd 06c363268h
+dd 013042222h
+dd 0cda5d4edh
+dd 0801d49c1h
+dd 0a3f873fbh
+dd 0456ebf30h
+dd 02ab49746h
+dd 0f6e77c9ah
+dd 000441d17h
+dd 0ed2239bdh
+dd 0b9f952ceh
+dd 01dac55eeh
+dd 05ebf42b8h
+dd 0ff1c26eah
+dd 06406accch
+dd 0d8e11c3bh
+dd 085dd5e81h
+dd 061ce10d9h
+dd 00ba9eddch
+dd 0436ee33eh
+dd 070e9c83dh
+dd 067913642h
+dd 0500df040h
+dd 01c299c79h
+dd 03e386881h
+dd 0e55ab288h
+dd 04f2ff0d5h
+dd 01a86978dh
+dd 048ba0106h
+dd 03a51c521h
+dd 07de1d5d3h
+dd 02471b5bbh
+dd 0a7a26d96h
+dd 0b076ef7bh
+dd 04873cad2h
+dd 0251475f4h
+dd 02bfcd8d2h
+dd 0da2ee11ah
+dd 0932925c3h
+dd 07eca9393h
+dd 02c93e42ch
+dd 06578b5c0h
+dd 023c13832h
+dd 01c91c046h
+dd 0b005c671h
+dd 098073aa8h
+dd 06d45aeaah
+dd 06e6695c1h
+dd 03feafe58h
+dd 0f6b48a14h
+dd 02cf28a63h
+dd 01e8843c6h
+dd 05caa8578h
+dd 09abbd51eh
+dd 0bc2fe123h
+dd 00f538787h
+dd 0f41621beh
+dd 0a737a84dh
+dd 0670c3d1ah
+dd 07e6ab050h
+dd 0c4549a51h
+dd 08c8385aeh
+dd 0faaa93c6h
+dd 09e2044fdh
+dd 0d920f1bfh
+dd 0b61895cah
+dd 0d787d86fh
+dd 0b1cfef9eh
+dd 0ab1d00d6h
+dd 0e0ce4336h
+dd 04477a19ch
+dd 09091ff04h
+dd 0a2491f6fh
+dd 092b1da3ah
+dd 06f49b2dbh
+dd 07014b37fh
+dd 09c2aeebch
+dd 04ae92758h
+dd 0e13208b5h
+dd 03aee037ah
+dd 08e80a014h
+dd 0461620d5h
+dd 0625360bbh
+dd 0126d8ed9h
+dd 053813a3ah
+dd 03fdbf280h
+dd 017d6be9bh
+dd 0696cd7b4h
+dd 0ce7dd951h
+dd 0673834d0h
+dd 0a1e8db62h
+dd 07dc10ae6h
+dd 09b91e5dfh
+dd 09b8927a4h
+dd 08c38cc31h
+dd 0c0ae701ch
+dd 0d7722d74h
+dd 0b75b675fh
+dd 051973491h
+dd 0ca19143bh
+dd 006ced9b5h
+dd 0cb65276eh
+dd 04d5b43b4h
+dd 0a906edd1h
+dd 0ed76a093h
+dd 0876794a1h
+dd 0beee70cdh
+dd 02f93e095h
+dd 0ce15c5a8h
+dd 0a010219dh
+dd 017001a24h
+dd 0904feaf1h
+dd 09aca7653h
+dd 0b913af79h
+dd 01211fd5eh
+dd 0126f5ee0h
+dd 0f92ed52ah
+dd 0558bfb90h
+dd 0d0630794h
+dd 0ecd2fe31h
+dd 0151eb0c6h
+dd 0a270ee5ch
+dd 00550e945h
+dd 0bf0b93cfh
+dd 0cb43bc28h
+dd 024c0dc76h
+dd 0a7ef4576h
+dd 0c8cd4d54h
+dd 06019f5f4h
+dd 065ebb68fh
+dd 049402ab1h
+dd 03824ac0eh
+dd 0ac401c8bh
+dd 09be68147h
+dd 0b4e3af3ah
+dd 0d2af6e56h
+dd 038bfdb5ah
+dd 085be6772h
+dd 0da67692bh
+dd 0119e0c94h
+dd 0923f8e5dh
+dd 06f7f7c37h
+dd 087a6f238h
+dd 0e3d04b22h
+dd 002be4615h
+dd 084691eceh
+dd 0e1fd715eh
+dd 04bf72600h
+dd 0f90a8f1eh
+dd 0aa570d67h
+dd 075d94237h
+dd 028467fe0h
+dd 002c7a325h
+dd 02592a2eeh
+dd 0474bb6a9h
+dd 03916f471h
+dd 0f5c4b8d8h
+dd 0ae926d2bh
+dd 0f94b4b85h
+dd 01b9ec51dh
+dd 0cad150d0h
+dd 0ed58faedh
+dd 0fd59beebh
+dd 0faece252h
+dd 08b238593h
+dd 052ab460eh
+dd 06a0fdb2fh
+dd 09568ff4dh
+dd 0c7934bdah
+dd 00479a114h
+dd 06fdcb394h
+dd 00f5d05d3h
+dd 082c55246h
+dd 0993d1f74h
+dd 05608b0deh
+dd 014c897c4h
+dd 05faf4f7dh
+dd 08a6e8a4ah
+dd 0bdbecbf5h
+dd 09f58bf4fh
+dd 03963a035h
+dd 0ba4c5a57h
+dd 0131dd922h
+dd 0922cae94h
+dd 0d169b6f6h
+dd 091fc6f74h
+dd 03a4b8c1ah
+dd 06fd5456ah
+dd 087d1b576h
+dd 0dc87169ch
+dd 0fd23a988h
+dd 074c4b8e0h
+dd 0c215d0bah
+dd 0992614e4h
+dd 0c1b5da65h
+dd 0d59fbec7h
+dd 0ff4e4e15h
+dd 04b2c51d5h
+dd 0501b737dh
+dd 0ff8b187bh
+dd 0907df4c8h
+dd 0a1dfda90h
+dd 010507d1bh
+dd 0c18f63f5h
+dd 099dafc73h
+dd 008fb00d4h
+dd 0ca1135c2h
+dd 063be7bdah
+dd 0b1f3016dh
+dd 016c79246h
+dd 09a7d0d86h
+dd 080b6069dh
+dd 00f0a848ah
+dd 068615cfch
+dd 01fc91942h
+dd 01233f8f2h
+dd 04994bb08h
+dd 0c7895a0ch
+dd 00e27fc32h
+dd 0752656bfh
+dd 0e89897eah
+dd 07586f63ah
+dd 0f3d1e5d8h
+dd 00cc36de6h
+dd 0773b9864h
+dd 0195d2381h
+dd 01926038eh
+dd 0c12fd0f4h
+dd 00be571b1h
+dd 0b2aded34h
+dd 094ac6c52h
+dd 0df7dc8cbh
+dd 00b520each
+dd 0bfac2ae4h
+dd 06b179e94h
+dd 0525424d0h
+dd 0c7132381h
+dd 0aa4edba1h
+dd 06f5c009ch
+dd 0ac7a0a01h
+dd 0d5a9e87ah
+dd 0807d4597h
+dd 0d31e4989h
+dd 0e6da2d32h
+dd 0c034780dh
+dd 061bd96deh
+dd 03fe08373h
+dd 0d23f857ch
+dd 0428aca95h
+dd 036f518ech
+dd 00a046265h
+dd 0fad10f8eh
+dd 0daf812fdh
+dd 0667872ddh
+dd 0e3fd2d06h
+dd 07871f2d0h
+dd 08b4ea3fah
+dd 0f08b133dh
+dd 0b476f20bh
+dd 051455c3eh
+dd 014b44323h
+dd 0dcd00102h
+dd 08af31fe4h
+dd 03ee96729h
+dd 014395892h
+dd 049a32cfch
+dd 0ddbe40e7h
+dd 054e854b6h
+dd 0dcdf9310h
+dd 0ae879ef4h
+dd 0396095bfh
+dd 05c02262bh
+dd 03ddf5bc9h
+dd 066f8b479h
+dd 0d3ddea42h
+dd 07e748b8ch
+dd 0fe14a25bh
+dd 06bd4f8c9h
+dd 0ced0d556h
+dd 0b9c25bbdh
+dd 00d9cf381h
+dd 0f82a799dh
+dd 09f12d53dh
+dd 0988c3b5bh
+dd 0910b6000h
+dd 02e798e93h
+dd 0168ecf65h
+dd 018c15e16h
+dd 08fabd341h
+dd 0db29c3cdh
+dd 0e7ae2c22h
+dd 07cea36e7h
+dd 06e964b7ah
+dd 098776376h
+dd 032ae644ch
+dd 04aa21a8dh
+dd 01f136da5h
+dd 0829caf26h
+dd 01b2dae0ch
+dd 0495f1e41h
+dd 0c6757de1h
+dd 0fe1a8035h
+dd 01c9d1341h
+dd 09f51087ch
+dd 07ed8575dh
+dd 03146ed53h
+dd 0e4b7aa0ch
+dd 03369b6cdh
+dd 08eae0856h
+dd 0f351e599h
+dd 07b93f3f3h
+dd 0f0946af9h
+dd 092ba00bbh
+dd 08fe51fcch
+dd 0c1ac80f3h
+dd 079dd44b7h
+dd 04bbb2851h
+dd 0e4736578h
+dd 063fb8771h
+dd 0eae937bah
+dd 0e8a4fd59h
+dd 04fbcce80h
+dd 0df61c168h
+dd 0fc4bbe00h
+dd 0aa4922c4h
+dd 009eb9877h
+dd 034f00e08h
+dd 071b92a93h
+dd 064eca884h
+dd 0cb32c6feh
+dd 0a2c611f7h
+dd 0c690ffd4h
+dd 095c19a90h
+dd 0a879090bh
+dd 0fe40a718h
+dd 02739203dh
+dd 01eea81dfh
+dd 0c7fb844eh
+dd 05025bf8fh
+dd 0434933dfh
+dd 05c8c05eeh
+dd 0158f438dh
+dd 035d9e3bah
+dd 0f504972bh
+dd 094135597h
+dd 07b6ab4cfh
+dd 0846cfb8dh
+dd 01214f2bch
+dd 061e50d06h
+dd 0a97365aeh
+dd 001552d73h
+dd 0edcea08eh
+dd 0224898b8h
+dd 012f27555h
+dd 0d18e1508h
+dd 09a409c53h
+dd 0624d58c0h
+dd 00464511bh
+dd 094975ac9h
+dd 09e40cae7h
+dd 0fee6e0e6h
+dd 0cf0a36e7h
+dd 069ea7e98h
+dd 06423cff1h
+dd 07cd17a28h
+dd 0a9a21eceh
+dd 0c2025dc5h
+dd 0697fe4fdh
+dd 0819e9520h
+dd 02d9b321bh
+dd 07543be78h
+dd 01bfcad8ah
+dd 05a4c4229h
+dd 0f24703a8h
+dd 0744c2726h
+dd 07357f136h
+dd 0f9a8640dh
+dd 062db76d1h
+dd 05eb6a32ch
+dd 054dd908eh
+dd 050a3c5d7h
+dd 03c5bd3ffh
+dd 08d575245h
+dd 0c1cd05bch
+dd 0eb4705ebh
+dd 004cfdbfeh
+dd 03bdee2dah
+dd 04e52da1ch
+dd 01340b7cah
+dd 06e7ae3d6h
+dd 0756c8c97h
+dd 00fa407a5h
+dd 0dd095d93h
+dd 023cdd2a1h
+dd 098b4a76bh
+dd 0a3a8829ch
+dd 0ca3ce904h
+dd 0758044e9h
+dd 0f486ec76h
+dd 0b3104f9fh
+dd 0ab0c3fd8h
+dd 08583b199h
+dd 0cc9de25dh
+dd 0a8ff2818h
+dd 010eef768h
+dd 0ff6b58a7h
+dd 09c25788dh
+dd 05dd7edbfh
+dd 0712e2bcah
+dd 0b1b7121ah
+dd 0312c51c7h
+dd 00aa36f3bh
+dd 0475bad9eh
+dd 0e9f6d6fdh
+dd 027955654h
+dd 02eae7bb2h
+dd 00e31c41dh
+dd 03b123f02h
+dd 015342aefh
+dd 099726142h
+dd 0d057cc3fh
+dd 0609ac20dh
+dd 0057aa9f5h
+dd 0b1456d37h
+dd 03f922b67h
+dd 06b4413bdh
+dd 056a55f57h
+dd 0627a4080h
+dd 04689312bh
+dd 0cf2f13a9h
+dd 0f9bd83b2h
+dd 06967467ah
+dd 0da31695bh
+dd 03049f5b1h
+dd 0ad2e0f8ch
+dd 04cbb86c0h
+dd 02589550ah
+dd 09f09c169h
+dd 08b2da587h
+dd 016258aa2h
+dd 054c9dc6ah
+dd 034c83773h
+dd 00bc3d727h
+dd 0e39f7795h
+dd 0fbd007f1h
+dd 0cf174688h
+dd 07643af86h
+dd 047710109h
+dd 06bcb622fh
+dd 0fc9282cdh
+dd 0f5fbf654h
+dd 089883415h
+dd 0f0170bbfh
+dd 017c93f05h
+dd 01a1acdafh
+dd 0efc0401dh
+dd 0754aa412h
+dd 0d038425eh
+dd 02ebcfb4ah
+dd 062de78ceh
+dd 00d080f64h
+dd 00629f116h
+dd 08e441758h
+dd 034b71e69h
+dd 056e05684h
+dd 0e66476fbh
+dd 0327f6195h
+dd 024200df2h
+dd 01daf1dd2h
+dd 0ba6437e5h
+dd 0a49b77dch
+dd 0160d39a9h
+dd 0bd018921h
+dd 08542345bh
+dd 0a171f392h
+dd 0a960cc6eh
+dd 08ab660beh
+dd 05d143486h
+dd 0fcdd943bh
+dd 06a7fb65eh
+dd 0fdb2e027h
+dd 0b68133d5h
+dd 0086eb4b4h
+dd 07be568c8h
+dd 0b8b3c340h
+dd 056b020a5h
+dd 0d1f8befch
+dd 0b63ab127h
+dd 01dcdf38dh
+dd 0cd40e960h
+dd 0cb5e19c2h
+dd 03d554958h
+dd 0708ff28fh
+dd 0c5061905h
+dd 0ca985cf0h
+dd 0b8566326h
+dd 0c4bc7af5h
+dd 0b4fd6fc6h
+dd 0dc1c8ee0h
+dd 08caaa991h
+dd 0e2569db6h
+dd 0f22b8f07h
+dd 097243335h
+dd 0a101d08dh
+dd 0ac60fcb5h
+dd 09bfad760h
+dd 0a4c30795h
+dd 0eeeb2d4bh
+dd 051f1f899h
+dd 0df6362aeh
+dd 03281e607h
+dd 0645579f4h
+dd 0527169ddh
+dd 005c2eb21h
+dd 0aeabc83fh
+dd 007a1104dh
+dd 005a4f0dbh
+dd 067119afeh
+dd 08a053588h
+dd 0a3ce8014h
+dd 0dfda31abh
+dd 0a1a0056eh
+dd 0089b7b70h
+dd 0a34d4537h
+dd 013ca085eh
+dd 0775a615ah
+dd 07a4d13f3h
+dd 039d77d15h
+dd 02a317fb3h
+dd 016b8d008h
+dd 03e540740h
+dd 05d6c5588h
+dd 061d452d2h
+dd 03d598acbh
+dd 09f4c0bb5h
+dd 0b73a0b1fh
+dd 09fd348fah
+dd 0374bd670h
+dd 0d233b625h
+dd 0dc2b1212h
+dd 07cb25817h
+dd 031a2b8ebh
+dd 07cfadb96h
+dd 04d8f7801h
+dd 0e6c78b20h
+dd 0aed2e8a1h
+dd 00d494229h
+dd 0d758086bh
+dd 058a9e353h
+dd 090cb09b9h
+dd 00c254f3ch
+dd 071270ddah
+dd 0ae5120e6h
+dd 0f331aecch
+dd 0c9488cdeh
+dd 041b35c1fh
+dd 0a38f3c30h
+dd 0641403d9h
+dd 04c16c64eh
+dd 0fee8ffefh
+dd 0144e92deh
+dd 09a298a2ch
+dd 02e5cd723h
+dd 0f382e475h
+dd 03dc3f1ceh
+dd 064f6ba97h
+dd 077b91183h
+dd 0b8f0a59bh
+dd 06de5087dh
+dd 0d3919c82h
+dd 02acca602h
+dd 0ad611f67h
+dd 086062e8bh
+dd 08bfdb69bh
+dd 02fae7018h
+dd 0eae14e84h
+dd 0b8debd34h
+dd 07330f984h
+dd 09b3623dch
+dd 0c6942739h
+dd 0e3ec0f8ch
+dd 0af896a3fh
+dd 01c13347eh
+dd 0de6b46ffh
+dd 0ebb21978h
+dd 023dac90eh
+dd 0f7daf390h
+dd 09b09afd5h
+dd 0d9673562h
+dd 040c1471eh
+dd 02c0e0de4h
+dd 0907cc072h
+dd 02994860ch
+dd 0d998b146h
+dd 0f1bf86dah
+dd 0b0a3cf7eh
+dd 09c980b64h
+dd 012bca992h
+dd 003a40d32h
+dd 03698c30bh
+dd 097f162e5h
+dd 0ceaadae4h
+dd 0888750c8h
+dd 0c3addfe0h
+dd 03a47a675h
+dd 0d9a0dd0fh
+dd 08b2aeb25h
+dd 043779bach
+dd 0da49a937h
+dd 0cc5eff84h
+dd 0f6f38002h
+dd 0b40599bdh
+dd 014e8915bh
+dd 05b89818ah
+dd 0aef7350bh
+dd 0b783934ch
+dd 0b032ccc3h
+dd 0c1aab399h
+dd 0b60fca4eh
+dd 0c6c94361h
+dd 0edc2b7a1h
+dd 0b0d54e69h
+dd 0cbbb2270h
+dd 030e0b892h
+dd 08136d828h
+dd 00c43177ah
+dd 05806b5ebh
+dd 092804218h
+dd 0a9bf5cbeh
+dd 002ae1aa2h
+dd 0e9489014h
+dd 001aef05bh
+dd 065bccbc8h
+dd 0f5c4f919h
+dd 03ff71a7ah
+dd 027a5f1c9h
+dd 0fbd5ccbch
+dd 063fbfadbh
+dd 023aa4080h
+dd 07f6da4e0h
+dd 013d3e2ffh
+dd 023c796ddh
+dd 0a3965af4h
+dd 026a03dcdh
+dd 05abb5eedh
+dd 07979d9b6h
+dd 0edd78f19h
+dd 090a7e37ch
+dd 08abab06eh
+dd 044bc6bd0h
+dd 0b8df4627h
+dd 0579c2930h
+dd 093cde43ah
+dd 0fe3fe253h
+dd 0468236aeh
+dd 058950563h
+dd 019a55235h
+dd 0e82bd7e8h
+dd 03550c29fh
+dd 0d31749fbh
+dd 02a5ff046h
+dd 0711f9d3fh
+dd 0adba5da0h
+dd 086225c3bh
+dd 01726f567h
+dd 09194b36bh
+dd 00fc4a3d2h
+dd 0fe3f9287h
+dd 0694c5ce7h
+dd 07ed91650h
+dd 050edcbf3h
+dd 05f261c34h
+dd 038b8b74bh
+dd 0b8f98cf4h
+dd 04df50deah
+dd 010010245h
+dd 0423843a6h
+dd 0237fe6f7h
+dd 05fd9384bh
+dd 0ceafcaf0h
+dd 021a1ea74h
+dd 0e2f8b8a4h
+dd 0949aa088h
+dd 0db8fb006h
+dd 0f8537e9fh
+dd 0c41d105eh
+dd 0209f2645h
+dd 020775739h
+dd 03388d35fh
+dd 0dc349df8h
+dd 05817737eh
+dd 06298ea83h
+dd 018cf9299h
+dd 027d9aa34h
+dd 0ef126d29h
+dd 069aaf229h
+dd 03ea47035h
+dd 0e1b11979h
+dd 0c1ba30ddh
+dd 0468c67adh
+dd 0196f0332h
+dd 096a325a7h
+dd 0c2a946fdh
+dd 07cf7b2b6h
+dd 02affb7b2h
+dd 06867cf76h
+dd 087771048h
+dd 041041686h
+dd 07742fb9eh
+dd 0479945f3h
+dd 0b31f7892h
+dd 057304e37h
+dd 09d66618fh
+dd 0a2b275c7h
+dd 026f09347h
+dd 0fcc19486h
+dd 02b4e90d2h
+dd 053fcefafh
+dd 03c1a14e9h
+dd 071466f1bh
+dd 0843b55ffh
+dd 044572f85h
+dd 0ef2ade27h
+dd 0cb92fe82h
+dd 0d147acfch
+dd 0dd6c179ah
+dd 0b40351b1h
+dd 0ffd4f55ch
+dd 0242f3b5bh
+dd 03390cd3bh
+dd 0921b2cc2h
+dd 0cea73dd1h
+dd 0953f0282h
+dd 0cfd34dfah
+dd 0a4caa4fbh
+dd 0b2b07141h
+dd 0af9b0473h
+dd 07820b228h
+dd 00ea05789h
+dd 0327a32c5h
+dd 0badc5153h
+dd 069374662h
+dd 0aad34cadh
+dd 03ce14a7bh
+dd 0e754adc0h
+dd 03e71bee0h
+dd 094e98262h
+dd 0cc445017h
+dd 092235ddfh
+dd 00fdb4089h
+dd 0ebeb0902h
+dd 0c003618ah
+dd 0cf55abcdh
+dd 052e3907bh
+dd 09ce62b72h
+dd 02b8a3230h
+dd 0fded7a6bh
+dd 01b45db92h
+dd 039ec9d90h
+dd 01384b6c0h
+dd 0afedf5adh
+dd 0b2cc7031h
+dd 04cefda09h
+dd 04fafb5c7h
+dd 061e6be6bh
+dd 0092d184bh
+dd 0c92dcd8ah
+dd 0b83470bch
+dd 03ecb0e1bh
+dd 0b377e7beh
+dd 02ce651d1h
+dd 0891b6f1bh
+dd 02482807bh
+dd 017ffdbd1h
+dd 094812646h
+dd 0f2eb6878h
+dd 035a73cebh
+dd 07173f858h
+dd 0a6bff9c7h
+dd 0d284b345h
+dd 0203be165h
+dd 0bd316ea9h
+dd 0e97d9761h
+dd 0e1234821h
+dd 01f875704h
+dd 0a59c8bdeh
+dd 0f1f49997h
+dd 0723b0b48h
+dd 0e69480c2h
+dd 0f206ce49h
+dd 084ac12c0h
+dd 08df51316h
+dd 073fb2d0bh
+dd 0683cacb1h
+dd 0becba59ah
+dd 04af2149ch
+dd 0a98c19c1h
+dd 008f5001ah
+dd 0a3664014h
+dd 01adf3920h
+dd 08b5ffe97h
+dd 023640494h
+dd 0205062b3h
+dd 095af03f8h
+dd 0032c9c96h
+dd 04525b49ch
+dd 00eb9e652h
+dd 0ba7bae66h
+dd 0a1c50e55h
+dd 00125feb9h
+dd 0a99dc6e4h
+dd 0d53948efh
+dd 06be38451h
+dd 0e2977176h
+dd 09589a25fh
+dd 0e00d28c4h
+dd 026bfedbbh
+dd 04e9e4c8dh
+dd 0975ad7deh
+dd 052c345e0h
+dd 0729d5494h
+dd 06b0324a0h
+dd 0be14f868h
+dd 0b5250ac8h
+dd 0257a2d33h
+dd 0a95e9a70h
+dd 0891ee0e8h
+dd 04625ff3bh
+dd 004941ec0h
+dd 0d005a568h
+dd 0b5e8ca7ah
+dd 0931179a6h
+dd 04d34bd7ch
+dd 0e8f2f1d4h
+dd 05d195123h
+dd 00737db8bh
+dd 0ab17d630h
+dd 0fe649b89h
+dd 0e62e940fh
+dd 028ba5c6bh
+dd 063c4dcd0h
+dd 02eb4ff33h
+dd 0ac92d122h
+dd 0460deca0h
+dd 00e340138h
+dd 0509f72feh
+dd 0f3a4ecb2h
+dd 099da0141h
+dd 056e24eadh
+dd 08c78aa08h
+dd 0aa06bd2fh
+dd 0918e7c71h
+dd 0c3d7635eh
+dd 06463f078h
+dd 08d81d820h
+dd 0836a81c0h
+dd 0c434cba3h
+dd 09c91ffc8h
+dd 0446371c6h
+dd 0f3f56e68h
+dd 0b35f3ac5h
+dd 0abdd0cf9h
+dd 0f2e9dacfh
+dd 071261930h
+dd 07b0d9a36h
+dd 05547b05ah
+dd 00c0557f7h
+dd 0833f668ah
+dd 0420e284fh
+dd 043ab2e40h
+dd 0bf1398ach
+dd 051ba49ffh
+dd 0a5756972h
+dd 04602906dh
+dd 0683d2253h
+dd 030031e93h
+dd 0c4beaf12h
+dd 06696130ch
+dd 0ef1df8d7h
+dd 0d3afd884h
+dd 07ddcdb85h
+dd 0dfaafe30h
+dd 0347ccfc7h
+dd 09666d864h
+dd 0db087d12h
+dd 0bcd82800h
+dd 0893d8276h
+dd 00b05429dh
+dd 03b7add6bh
+dd 0d995e9f5h
+dd 0f0ae3897h
+dd 08dbe90feh
+dd 0e7f57e6fh
+dd 0acacfefbh
+dd 0a1a0eb6ah
+dd 09296e85fh
+dd 0a7651421h
+dd 0c3fff82fh
+dd 0c6caeecch
+dd 0559e05d7h
+dd 0bbc4966dh
+dd 097112c30h
+dd 0376f5f8eh
+dd 0714c67c3h
+dd 0dee1688eh
+dd 08665e91ah
+dd 028b5c9aeh
+dd 0731fde91h
+dd 0ad7d880ah
+dd 0af72cf6bh
+dd 058933e93h
+dd 0b2997eddh
+dd 0d8138898h
+dd 082d2b17ah
+dd 0ff6b3004h
+dd 06ba2a338h
+dd 0808e7360h
+dd 0750a86ach
+dd 078c4fb63h
+dd 03418f296h
+dd 00e16fec6h
+dd 04d6b1994h
+dd 00652ebd3h
+dd 0e6de531dh
+dd 06d512c1fh
+dd 069643ecbh
+dd 0800f06cfh
+dd 0fd42578ah
+dd 03bae7c93h
+dd 024262cfdh
+dd 04331d563h
+dd 03dde0146h
+dd 0240a584dh
+dd 05f9db493h
+dd 0293ba353h
+dd 0dc639976h
+dd 03cab575bh
+dd 09ea5270ch
+dd 09fd0563bh
+dd 004e96bb7h
+dd 0bcb06281h
+dd 0ff9b5002h
+dd 0af5589f3h
+dd 07718f765h
+dd 0abf4ea9ah
+dd 00b1c411ch
+dd 01d9be873h
+dd 003e7206ch
+dd 0c29baea8h
+dd 06c9300e4h
+dd 0d46d24c9h
+dd 0a4abd95dh
+dd 0e7fb0ebeh
+dd 0d699dd2ah
+dd 02d268d4bh
+dd 0422987cdh
+dd 0fe8ad321h
+dd 00cfb8b8ah
+dd 029cdac1fh
+dd 07c933a89h
+dd 05d093cf8h
+dd 09d535516h
+dd 07eca3b81h
+dd 023399fb9h
+dd 01bf7004eh
+dd 017bf4c9dh
+dd 0a2c80511h
+dd 078862e00h
+dd 0ba4dcbc5h
+dd 07a2313ddh
+dd 0712597c3h
+dd 04e65e216h
+dd 0485778f4h
+dd 06acd451ah
+dd 071508597h
+dd 0eadb2c83h
+dd 0fe1a7635h
+dd 03b88273eh
+dd 010784ccbh
+dd 07d6e16f8h
+dd 079caab21h
+dd 0e53cae47h
+dd 02f0ae38fh
+dd 002a9a18ch
+dd 05e3ef877h
+dd 025077cb9h
+dd 03bae0319h
+dd 045e1b045h
+dd 0991f9a1ah
+dd 077aa8baah
+dd 0047acdadh
+dd 03543e81eh
+dd 05094c67ch
+dd 07c637394h
+dd 065fa2f0dh
+dd 0f7353d5ch
+dd 06a663606h
+dd 05a18af4fh
+dd 016570703h
+dd 019351446h
+dd 0e1893120h
+dd 0574062c8h
+dd 056563c9dh
+dd 0b85f566fh
+dd 08fb0a50ch
+dd 070f182dbh
+dd 0212927a4h
+dd 0c24d7308h
+dd 0ff286f72h
+dd 0bf531db8h
+dd 05ba68795h
+dd 05f13e236h
+dd 04c241c55h
+dd 0d8990eaah
+dd 058ee1b1bh
+dd 0648b5ea0h
+dd 0054ebc75h
+dd 065b214c7h
+dd 0898f973ch
+dd 0fb66e080h
+dd 0062513cdh
+dd 0e149be59h
+dd 0e0ba79d4h
+dd 0fdc167f9h
+dd 04a61a33dh
+dd 035d8dc69h
+dd 0649b8244h
+dd 012888e17h
+dd 057a8fd25h
+dd 0db3e7f6bh
+dd 011af7f90h
+dd 0cb911652h
+dd 038a55485h
+dd 08d6178ach
+dd 0df8a4bc6h
+dd 04d360f48h
+dd 06d15a0e7h
+dd 0df7ce625h
+dd 0d25b7afah
+dd 0527cbcaeh
+dd 00c78e15ah
+dd 08faedabdh
+dd 0028de7c8h
+dd 0a9998251h
+dd 0e1db374eh
+dd 007624953h
+dd 00eb9b79dh
+dd 0b795a781h
+dd 0823e006ah
+dd 08928e542h
+dd 051bef57ah
+dd 056ce47d9h
+dd 03912781eh
+dd 0cc4ebd12h
+dd 0599bc667h
+dd 0e92552c7h
+dd 0e1a2ba69h
+dd 0d4e1ae2eh
+dd 0f1fcc4a9h
+dd 048abcba1h
+dd 0b2bde26ah
+dd 065c0fd3fh
+dd 02ee24e8eh
+dd 0096706a5h
+dd 04ae64a28h
+dd 081938b15h
+dd 058d7e9abh
+dd 0def132f2h
+dd 034ad2656h
+dd 034d4c56ah
+dd 0cde546fbh
+dd 01244b241h
+dd 0319a5334h
+dd 0f1977af1h
+dd 0608350a7h
+dd 00e3b148ah
+dd 02d81da45h
+dd 05adf995ah
+dd 012e581f8h
+dd 0d8149157h
+dd 091d589adh
+dd 01ecba6e4h
+dd 068e48409h
+dd 030d0afe5h
+dd 0f9b01363h
+dd 02f50cbfch
+dd 0ce7469edh
+dd 09a4b9938h
+dd 0a83f80cbh
+dd 0a240b37dh
+dd 0702e8312h
+dd 044fe4590h
+dd 0490b00e4h
+dd 0efc7c4abh
+dd 0d2e59883h
+dd 0c27444bfh
+dd 088770006h
+dd 0ab1f08c5h
+dd 0501dac8eh
+dd 000407ff2h
+dd 0e79d2414h
+dd 07e43921ah
+dd 0fc98f358h
+dd 0e69b7718h
+dd 088d3884eh
+dd 0fd0fe2adh
+dd 07dc72c51h
+dd 08bbcfdbeh
+dd 0d90140b1h
+dd 07e28969dh
+dd 0695f25beh
+dd 027d825c2h
+dd 0fd927467h
+dd 04e10a59ah
+dd 048c13cc1h
+dd 0cfb89241h
+dd 0fe37b5a6h
+dd 004e48aeah
+dd 02e451558h
+dd 06897b81bh
+dd 0a681e849h
+dd 03a0b2c49h
+dd 09e3ab9e1h
+dd 09de98dc8h
+dd 03c28049bh
+dd 0b6ed1800h
+dd 0ba7bed5dh
+dd 090343c27h
+dd 04e322d67h
+dd 07ab4effeh
+dd 01f48a972h
+dd 0f4d2b193h
+dd 094a5c8d4h
+dd 0019609d7h
+dd 022b36ef4h
+dd 00b4510cfh
+dd 051bf4d7fh
+dd 09fe48141h
+dd 0402cdd7fh
+dd 0bf693fd5h
+dd 04142932ch
+dd 073f9a67ch
+dd 0f6c8af9ah
+dd 097c02628h
+dd 02f4fb4b1h
+dd 0949c5ffch
+dd 09d979629h
+dd 09653affbh
+dd 080facf0ch
+dd 0c61ac731h
+dd 09e53744ah
+dd 0dedafe49h
+dd 0641b324eh
+dd 003fbf7e8h
+dd 0fb5a462eh
+dd 0ef3ddfc4h
+dd 05680bfb7h
+dd 0a813ebb2h
+dd 004ff1a8eh
+dd 086bc3f4eh
+dd 0d34f6b6ah
+dd 041e10616h
+dd 0b502338dh
+dd 0871d7a05h
+dd 04d7589aeh
+dd 0d0b8b892h
+dd 0ebac696ch
+dd 098ea49b2h
+dd 067f66301h
+dd 0ac815f5eh
+dd 07622fc4bh
+dd 0de9b95c1h
+dd 03369ccd7h
+dd 01aa4d543h
+dd 0eb6fbe34h
+dd 0ec443ee5h
+dd 0526b4e48h
+dd 0d5950c66h
+dd 0cedec9d1h
+dd 0c933220bh
+dd 0eedbf3bbh
+dd 04e4f7950h
+dd 082a97dd7h
+dd 07121660bh
+dd 04a283338h
+dd 0f5f0a7c3h
+dd 0c5a2d869h
+dd 07874580bh
+dd 0a84b9a31h
+dd 0d989f426h
+dd 0c6105172h
+dd 0f058014fh
+dd 0eec67560h
+dd 08ebf1cd1h
+dd 0fd85d91dh
+dd 0c943fca8h
+dd 02ddba9c6h
+dd 0ba89270bh
+dd 098ab2c9eh
+dd 0399f5a2fh
+dd 0f42a4446h
+dd 083aa2204h
+dd 017f9cae0h
+dd 0ce387e92h
+dd 0fc2ede64h
+dd 0726345a1h
+dd 06f01aa9ch
+dd 0c9727178h
+dd 0fdbfb514h
+dd 072eaf9f8h
+dd 055244d23h
+dd 0bb091fc5h
+dd 0f14e54a2h
+dd 0a846da0ah
+dd 0c37b9ecah
+dd 0bc79dff8h
+dd 012a0491ah
+dd 01e5bd685h
+dd 011223e7eh
+dd 0c976c9dah
+dd 0555d3be0h
+dd 04e6a4c97h
+dd 03486001ch
+dd 0063ce8e2h
+dd 0b97d1239h
+dd 01bf966a8h
+dd 0335468bfh
+dd 0fe6b7beah
+dd 0fb1a4cfeh
+dd 07e808ba1h
+dd 0184274b4h
+dd 0e22914b9h
+dd 0b4b2b06ch
+dd 0710598cah
+dd 0094ce8c6h
+dd 065485c6bh
+dd 00633e18ch
+dd 03b4e5e23h
+dd 0e4741d54h
+dd 073e27e6fh
+dd 0caa0cfe5h
+dd 0325a8cf0h
+dd 0924b1e6eh
+dd 0a803471ah
+dd 07ac049a9h
+dd 0171e8bc5h
+dd 0fd07f270h
+dd 047674839h
+dd 056bc362fh
+dd 031aabf67h
+dd 02bce086bh
+dd 02fcab4e9h
+dd 0824464c7h
+dd 0f33c8732h
+dd 0f60c4355h
+dd 0607423feh
+dd 0863dbcf6h
+dd 0ed1db510h
+dd 02f4a5fd3h
+dd 02662d20dh
+dd 0abb113b9h
+dd 03b633a57h
+dd 0cfc65677h
+dd 098240347h
+dd 05ac0d8f7h
+dd 0da57f5a4h
+dd 0c1fc7ee3h
+dd 0967a5f1ah
+dd 07f176d94h
+dd 0809018eeh
+dd 0b395a5e5h
+dd 09730ae31h
+dd 01de7db08h
+dd 05584b695h
+dd 0960f6baeh
+dd 0980a427eh
+dd 0984d5bech
+dd 041b170cbh
+dd 0459c0ee2h
+dd 0553a2cbeh
+dd 070331caeh
+dd 0a12685b1h
+dd 02dc419c8h
+dd 0c9c4202ch
+dd 0b8389a8ah
+dd 0775a52dbh
+dd 0aa04cafeh
+dd 0c13e3039h
+dd 0a04ff427h
+dd 068199b09h
+dd 0df0e9a3dh
+dd 032727eb6h
+dd 048729724h
+dd 0c079f70fh
+dd 0047e66b5h
+dd 0a7fec709h
+dd 017eadd3eh
+dd 0a149be3eh
+dd 0adb215c0h
+dd 009347e0fh
+dd 04b9dfdf0h
+dd 04c7dd717h
+dd 0083b6e73h
+dd 0b969596ah
+dd 0545bb3aah
+dd 057709fe3h
+dd 0e5dab3c5h
+dd 0ea3e9b8eh
+dd 034f606e6h
+dd 06061e09fh
+dd 05d6c9f2bh
+dd 01582b763h
+dd 0d25ef0a5h
+dd 0b2fb3681h
+dd 07e3924bbh
+dd 00439c732h
+dd 0389135bfh
+dd 012ac009bh
+dd 0351986aah
+dd 048707afch
+dd 02f09a020h
+dd 06d86b89dh
+dd 0c12c5886h
+dd 0d26c8bbch
+dd 0d821dae7h
+dd 007445d2bh
+dd 04dff268eh
+dd 034d8da5ch
+dd 09297336ch
+dd 071a94505h
+dd 0ef2aac9eh
+dd 0e2549109h
+dd 086b696c2h
+dd 09ec9ea4dh
+dd 02de9fdb4h
+dd 0941abf73h
+dd 0c734e634h
+dd 00697c803h
+dd 0bf605402h
+dd 0a9102144h
+dd 01dc302d6h
+dd 015e36269h
+dd 057e07bceh
+dd 0ea07a77bh
+dd 0801e8fdeh
+dd 03bcaf37eh
+dd 080a43877h
+dd 0aa7ae0c0h
+dd 0a8cc0cbah
+dd 0895ba1aeh
+dd 06cd91ed3h
+dd 0a4d94348h
+dd 0ad96e261h
+dd 03efdefb4h
+dd 0a1ba8868h
+dd 0e5d4068ch
+dd 00f4b8f35h
+dd 0872f0f28h
+dd 05cff2259h
+dd 011cff8f8h
+dd 0e54a28f6h
+dd 052cabe89h
+dd 04c0a1edeh
+dd 029208ce4h
+dd 0cffc3504h
+dd 08c61cec8h
+dd 027851c0bh
+dd 07ab46c13h
+dd 0226aadc4h
+dd 00cd237c9h
+dd 025b7f740h
+dd 066ee7c3eh
+dd 0024f678fh
+dd 00263b5a1h
+dd 01d9b5037h
+dd 099040219h
+dd 03eb87e35h
+dd 07057068bh
+dd 09e5c4c94h
+dd 0fa0fbce3h
+dd 0d6b44cedh
+dd 0cd6f619ah
+dd 06bb5b3ddh
+dd 0830cf9a2h
+dd 0659e23cdh
+dd 0534be989h
+dd 0d83f0a8ah
+dd 06e47bcb3h
+dd 06307e876h
+dd 017bb9c1fh
+dd 0b6416c1fh
+dd 0e4d9538ah
+dd 0d0fd9788h
+dd 07f603f46h
+dd 09568f71bh
+dd 03a4222e6h
+dd 0defbe7cch
+dd 0fcd411a0h
+dd 04b20df3ah
+dd 085466dd0h
+dd 0783fb1f9h
+dd 01610df96h
+dd 09e4bebach
+dd 046d7ed1dh
+dd 0f82a2c29h
+dd 0174652c8h
+dd 047830619h
+dd 028db31dbh
+dd 05e888581h
+dd 0517afcf1h
+dd 079382f6fh
+dd 0aab619cbh
+dd 05f293884h
+dd 013ba5b38h
+dd 023eadddch
+dd 060c4bfc1h
+dd 02183a45ah
+dd 047ee8640h
+dd 0bca5f226h
+dd 0813301c4h
+dd 07a356bedh
+dd 06fcf2127h
+dd 02f51d18ah
+dd 0cc72b357h
+dd 0fa62e5ebh
+dd 01f87d896h
+dd 0e1fbe719h
+dd 08c8ab445h
+dd 0b36b704ah
+dd 058f39deah
+dd 0428364b3h
+dd 0f0b6a59ah
+dd 0cf3ec132h
+dd 046617506h
+dd 068da9879h
+dd 0ae08cf35h
+dd 0339342c5h
+dd 0734a9437h
+dd 0f6c723dch
+dd 0aa95d7dfh
+dd 0fd9096a6h
+dd 0a8bc0ff5h
+dd 080d79f78h
+dd 0fa1f07a1h
+dd 0a145c957h
+dd 0fdfac5a2h
+dd 00bfb2703h
+dd 0065c74fbh
+dd 03dec9c1eh
+dd 0c52bf102h
+dd 0b67a155fh
+dd 0524406bdh
+dd 06b160410h
+dd 0260c4206h
+dd 0e143e1efh
+dd 00d33787eh
+dd 0f367d825h
+dd 08bbfbe59h
+dd 0e703cc8ch
+dd 08af14ad5h
+dd 0bc198f4bh
+dd 0c17dc3f5h
+dd 0b0f679fbh
+dd 006110302h
+dd 010d99aa4h
+dd 0a2f0b602h
+dd 066920b59h
+dd 0198bdcf9h
+dd 05f3036b7h
+dd 0314ad7adh
+dd 0645de76fh
+dd 02e305a42h
+dd 0eb1f6782h
+dd 079dd226bh
+dd 0c836ac95h
+dd 04e96a62ah
+dd 088ced82ch
+dd 0d2a5a2afh
+dd 0d067ce33h
+dd 0b4e3da9eh
+dd 02e062efah
+dd 0c09a33b8h
+dd 0cebf084dh
+dd 078f8d2a7h
+dd 0a997d39dh
+dd 02942628eh
+dd 0fb43e914h
+dd 05d06d36ch
+dd 02eedb9d1h
+dd 0395ff413h
+dd 0777c37deh
+dd 01b640e8ah
+dd 07baf815ch
+dd 01288fd9dh
+dd 03e13ce60h
+dd 09639a8f0h
+dd 0448e8da7h
+dd 0d621d975h
+dd 001bc911ah
+dd 0dfbd87beh
+dd 05230885dh
+dd 0e75bd6c6h
+dd 0ced973adh
+dd 0c371c657h
+dd 01f7e8c1ch
+dd 0e70c6458h
+dd 0a032fdd4h
+dd 0770f70b1h
+dd 09a620a0bh
+dd 0c67faf94h
+dd 077497ef0h
+dd 099a46661h
+dd 0ac7e9702h
+dd 02f7253b5h
+dd 05ac810e7h
+dd 08dab82eeh
+dd 0eeeb4f8ch
+dd 032b1f68dh
+dd 0f2535ffch
+dd 094c35f25h
+dd 05322e814h
+dd 0d9bd16efh
+dd 0718046a0h
+dd 065cfcd30h
+dd 083ad7573h
+dd 0202538d8h
+dd 08af963b2h
+dd 07f0a5564h
+dd 0f41a5cd7h
+dd 0ac926692h
+dd 0013d582ah
+dd 0f7fa51edh
+dd 0fe20a734h
+dd 0d98c5eb7h
+dd 0599c50aah
+dd 07bb0370ch
+dd 071a6b657h
+dd 0298586d2h
+dd 09c35953ah
+dd 0f9df810dh
+dd 070aa1428h
+dd 0e924194ch
+dd 0e81655ech
+dd 002dd9914h
+dd 0ac685c5dh
+dd 02f3001c6h
+dd 04a18a391h
+dd 0cc64d9b7h
+dd 0e866db45h
+dd 0756a8aebh
+dd 08c9cd2eah
+dd 04dbcdb6ch
+dd 0b9e6977ah
+dd 07cb187f7h
+dd 08c3b9840h
+dd 07dbb0081h
+dd 0d8fdd8ceh
+dd 095b35178h
+dd 0d369a925h
+dd 0ac0824e3h
+dd 0ecc34bf9h
+dd 0d1b5d494h
+dd 0a43ef6f3h
+dd 009cfa19fh
+dd 02b4cf7b5h
+dd 05f71dab3h
+dd 0404b0990h
+dd 0c8e28aa8h
+dd 086a0f028h
+dd 08044ef39h
+dd 0df552627h
+dd 0eeba6e31h
+dd 0e79968a5h
+dd 0ccdd7d14h
+dd 09be9bbbfh
+dd 0b4780d3eh
+dd 0f51f0cb6h
+dd 0fd05819ch
+dd 05994eca7h
+dd 03f18cf2dh
+dd 0239ec1a9h
+dd 05c77756fh
+dd 0698ef025h
+dd 0ba3dd63eh
+dd 056070b6fh
+dd 07bf2675ah
+dd 0f030f5d9h
+dd 06bcf5270h
+dd 0d6d2d6bdh
+dd 0049da022h
+dd 021e1363ah
+dd 06a0feac9h
+dd 0862a67e1h
+dd 0c7389788h
+dd 096c9575eh
+dd 0acef6185h
+dd 0416bffa1h
+dd 0592fd4eeh
+dd 05f66da48h
+dd 0d7e7b341h
+dd 0095e52c6h
+dd 0ca2988f4h
+dd 0434c15d1h
+dd 0ca134e4bh
+dd 00e858d77h
+dd 0531039cch
+dd 045e8fac6h
+dd 07cbba998h
+dd 0a697b39dh
+dd 0ca6428f5h
+dd 0d7ad86a7h
+dd 0bfff82cch
+dd 096b27046h
+dd 018dd2639h
+dd 0f2202f77h
+dd 0962f0663h
+dd 0616d35b4h
+dd 04f87479dh
+dd 05ca350e7h
+dd 0b0b84c93h
+dd 0e2467377h
+dd 0858ac35fh
+dd 04e729b0eh
+dd 09519b78bh
+dd 030650ce6h
+dd 012b6e90ah
+dd 01b13ec90h
+dd 011a9df52h
+dd 0206666a0h
+dd 0fa5c6774h
+dd 049a8633bh
+dd 035bbd244h
+dd 056e50c64h
+dd 059914407h
+dd 029840ed7h
+dd 01713b7cch
+dd 0bff5ff10h
+dd 089fadf0eh
+dd 0620dff09h
+dd 061b63886h
+dd 023856c03h
+dd 0f842129ch
+dd 0443a6b76h
+dd 0ba0cb803h
+dd 00d6eaa58h
+dd 01ab6cc70h
+dd 0102ea599h
+dd 08b0dc364h
+dd 0ac6cf0cbh
+dd 03c5cee69h
+dd 0de4010cch
+dd 0d58d7a12h
+dd 0a24f57f9h
+dd 0091c7ae8h
+dd 018116416h
+dd 047876426h
+dd 00d10e8e8h
+dd 01e910e97h
+dd 0340bf63ah
+dd 09c95ddfch
+dd 0f911eb28h
+dd 08ed22896h
+dd 07e6a6026h
+dd 0ad71bacch
+dd 0bc59d664h
+dd 0f4112ab9h
+dd 06364931eh
+dd 0e99f2526h
+dd 017fa582ch
+dd 0cc1e9303h
+dd 0a9e2ce39h
+dd 0947e6000h
+dd 066826670h
+dd 028323ee8h
+dd 01d3242c2h
+dd 09882e4c6h
+dd 0381bbdefh
+dd 0eed65336h
+dd 04710cb44h
+dd 028689d56h
+dd 0ec736dfbh
+dd 00071cc54h
+dd 0c80a7791h
+dd 0bd150d15h
+dd 0a2d456edh
+dd 073a5cfe4h
+dd 032a52328h
+dd 0e61f6982h
+dd 03e9ee34dh
+dd 0a82122f8h
+dd 00dbda63ah
+dd 0d77c297ch
+dd 0ddb1c3adh
+dd 089a03914h
+dd 0f8f227a3h
+dd 0712ffbd4h
+dd 0f0ba929ah
+dd 084c074f5h
+dd 0420e0704h
+dd 0c1f6759ah
+dd 00ff562a0h
+dd 08f85232ah
+dd 03d744e56h
+dd 086261296h
+dd 0ddf0e3d5h
+dd 08ea3dfeah
+dd 017d2cd27h
+dd 05efe2d1ah
+dd 031f30ae8h
+dd 07d39a094h
+dd 0985a9ee3h
+dd 0a1b1826eh
+dd 0304339e0h
+dd 06a6fe000h
+dd 0b93dcb7eh
+dd 08b1f5f2ch
+dd 0f94a7739h
+dd 0725bf694h
+dd 06c78a3b8h
+dd 06c2a8dc1h
+dd 05847759ah
+dd 0598eeca0h
+dd 050c8232fh
+dd 04982ee5ch
+dd 01da3791fh
+dd 04339f202h
+dd 0c0a240bdh
+dd 046fd0d30h
+dd 09ea753cah
+dd 05b93719ah
+dd 07825ca43h
+dd 07c000903h
+dd 0b420a2a5h
+dd 059565a81h
+dd 0e8991453h
+dd 07c24afc7h
+dd 0101ef090h
+dd 05e119e00h
+dd 0d2b65eeah
+dd 0e922ffb9h
+dd 00046b53fh
+dd 0f205cfe3h
+dd 08243527eh
+dd 05d5fb8d6h
+dd 072478f63h
+dd 04e8109a7h
+dd 0dc75b4bdh
+dd 0c8fc6c13h
+dd 0afdb2a7dh
+dd 09ea6e417h
+dd 0431a3dd8h
+dd 09959d104h
+dd 0e6ffc9d4h
+dd 0234f70beh
+dd 01b7d1db8h
+dd 06302737dh
+dd 04fec35cbh
+dd 0986daed4h
+dd 0362e2e6dh
+dd 07fb42505h
+dd 02a0e236dh
+dd 0ce1e741bh
+dd 0cb84df80h
+dd 0d3bb3fabh
+dd 010fe73b0h
+dd 03cf0c986h
+dd 0afaca6b4h
+dd 036479c0ch
+dd 0c58d813ch
+dd 0bb2fff02h
+dd 015f35b25h
+dd 055b5f5c5h
+dd 0d6308dfah
+dd 0e54005cdh
+dd 0611d9958h
+dd 0fb9aa83eh
+dd 00da998dbh
+dd 02416358fh
+dd 03c10cffeh
+dd 0bdb23389h
+dd 0e092a945h
+dd 03a09a64dh
+dd 03f5ede61h
+dd 0b7e15684h
+dd 0a4073d11h
+dd 026331b32h
+dd 0e116920dh
+dd 0db1a3b11h
+dd 0f12558d8h
+dd 0319b3e7fh
+dd 0b52e074eh
+dd 07763ce84h
+dd 036dd1734h
+dd 0590249b4h
+dd 095d63ad1h
+dd 05c43e5a8h
+dd 0498d3138h
+dd 0f94782f6h
+dd 081cac29ch
+dd 03e56caadh
+dd 0065d0b79h
+dd 0dfaf3605h
+dd 0d5424cffh
+dd 04fab313fh
+dd 0a4aa2e21h
+dd 037ae6ea2h
+dd 0f849b59ah
+dd 07a7ab19eh
+dd 003a48f6bh
+dd 0023d4bebh
+dd 0e7f02b0ch
+dd 01cd4899bh
+dd 0356ffc34h
+dd 0d32717eah
+dd 09c0ec514h
+dd 00a0a96f3h
+dd 07d9d40ddh
+dd 0235efca5h
+dd 0268d1fb8h
+dd 0921b7331h
+dd 0b46b7f66h
+dd 0c79f135ch
+dd 01a4dc5d9h
+dd 09199b6b0h
+dd 0449ef831h
+dd 0fec2fae4h
+dd 021005edah
+dd 0791f9812h
+dd 09c1401fah
+dd 02b77d6fah
+dd 019e60ef4h
+dd 0a18ea58eh
+dd 0ebf8853fh
+dd 071c7336eh
+dd 08cf7deb4h
+dd 01c21e80eh
+dd 06070e4bah
+dd 095250130h
+dd 0b83ce675h
+dd 0a1883965h
+dd 02d1dd43ah
+dd 051a28782h
+dd 0f94a3852h
+dd 00b13e532h
+dd 0225e8da7h
+dd 0fbb496abh
+dd 0a57f29f3h
+dd 0572cbf47h
+dd 01bf609ddh
+dd 020cb4c4eh
+dd 0137911bbh
+dd 0a7d373d0h
+dd 0535a6a1fh
+dd 065536672h
+dd 01fae48fch
+dd 0f8573b48h
+dd 08e1a1b2fh
+dd 02b95ebd6h
+dd 07ea9d14dh
+dd 0acfc15a9h
+dd 0710a135eh
+dd 0ce6c2eb3h
+dd 04cda33c3h
+dd 0821b8816h
+dd 0e44e3a3ch
+dd 0a0f1c0d6h
+dd 074502a6fh
+dd 0dc053b61h
+dd 09a9050b9h
+dd 096003e74h
+dd 0d2ac41a2h
+dd 0c4e4497dh
+dd 07721c726h
+dd 0b5747011h
+dd 015485eebh
+dd 0355712ach
+dd 03d9597e1h
+dd 061d1fa9bh
+dd 0d7198aach
+dd 00b98ca73h
+dd 0fec0054ch
+dd 0d8d3e860h
+dd 0bbb9109ah
+dd 0244bf93ch
+dd 0b8ebcfa9h
+dd 03eaccf6eh
+dd 0975789c0h
+dd 00fc30c41h
+dd 039b75054h
+dd 0640b8ac7h
+dd 07c849e64h
+dd 0a49165b7h
+dd 08b53fdeah
+dd 04c5d28d2h
+dd 04203f460h
+dd 06ada627eh
+dd 04f162326h
+dd 021631cf6h
+dd 005e5b4b5h
+dd 07507b565h
+dd 0648763e2h
+dd 0c7b9545ah
+dd 0cde5db90h
+dd 01c69a8b5h
+dd 09a48c45ch
+dd 08f0d068dh
+dd 016eab85ah
+dd 017d4af13h
+dd 03871f0f5h
+dd 07c770a7fh
+dd 0b655a8cch
+dd 0c4ec4623h
+dd 05b3d6a6ah
+dd 04a437948h
+dd 06220b50ch
+dd 0c93c3f9bh
+dd 08e6cc756h
+dd 01033d020h
+dd 0a8550446h
+dd 0e522af67h
+dd 0ec2bb71ch
+dd 001f225bah
+dd 06c93061fh
+dd 054182f27h
+dd 0a93e2a76h
+dd 03bc0e0f3h
+dd 0f36445bah
+dd 0353bc883h
+dd 0832a555ah
+dd 0af0e2ff6h
+dd 081d626d9h
+dd 0c6980c0eh
+dd 07af354e4h
+dd 0f734e15bh
+dd 0f8224e5fh
+dd 02e8180bfh
+dd 034a1e34bh
+dd 0ec83e225h
+dd 0a666c1ech
+dd 05c738992h
+dd 0e91a23abh
+dd 0cdd0650dh
+dd 0b80a9055h
+dd 027bfd4deh
+dd 0d77674feh
+dd 0298dd180h
+dd 0bb385236h
+dd 0032de090h
+dd 0187246c6h
+dd 01344fa55h
+dd 0df219ee8h
+dd 031748ec7h
+dd 0ce783563h
+dd 0bdc7bc35h
+dd 07848b013h
+dd 058471b88h
+dd 0b81ab454h
+dd 02f638abch
+dd 02bc3be1bh
+dd 08610afb6h
+dd 01f08cc8ah
+dd 071cc73f8h
+dd 0012249e6h
+dd 06973c20eh
+dd 044f8f0bbh
+dd 0bd833e48h
+dd 044461276h
+dd 003425d33h
+dd 0a9e1d570h
+dd 0d8153e40h
+dd 0a0c87ae4h
+dd 0908ef81ch
+dd 0301954f3h
+dd 0af581912h
+dd 086813a3bh
+dd 0bebd6561h
+dd 028741ecdh
+dd 08f38e50dh
+dd 0d88c491dh
+dd 0e6c0d0bah
+dd 077febcedh
+dd 0f22cb7cdh
+dd 0e4cee51ah
+dd 05449cd22h
+dd 094c20a8fh
+dd 00aa1f132h
+dd 072d83f15h
+dd 07d68333fh
+dd 0ef3112a3h
+dd 0cffd2b79h
+dd 01fd038f7h
+dd 01bb360ceh
+dd 0edc78a7ch
+dd 09e783539h
+dd 012b6de4fh
+dd 07c425834h
+dd 0cb5b7343h
+dd 0147bb3f0h
+dd 08dd583e0h
+dd 0e0ceec1ah
+dd 0a787fcb1h
+dd 0763f663bh
+dd 076475543h
+dd 0a4e766b7h
+dd 0a593916fh
+dd 0df26bdabh
+dd 0b5dd576bh
+dd 0f7f361c3h
+dd 0f2ed5b59h
+dd 07acc19ech
+dd 08fe1d706h
+dd 0113ba8fch
+dd 01cc7c10eh
+dd 0e5a6b8e6h
+dd 0ab7fb016h
+dd 0cc61cc2ch
+dd 08d7eeefah
+dd 06026749fh
+dd 0da78e985h
+dd 09fc1f992h
+dd 06c92ae94h
+dd 05b6497a3h
+dd 0070b2fd0h
+dd 01d90917eh
+dd 0feca0d82h
+dd 05ea9913bh
+dd 0a4791bd1h
+dd 01397360fh
+dd 05d4526ech
+dd 06ed1f7f8h
+dd 074d86818h
+dd 0efee5993h
+dd 079b78220h
+dd 04b2c606bh
+dd 0d29ba7c3h
+dd 08e21c7d5h
+dd 02692557ch
+dd 058d5d11ah
+dd 045a6f5cfh
+dd 09f66387eh
+dd 089d301e7h
+dd 04e00949ch
+dd 0a4f77f0ah
+dd 0fefaef03h
+dd 0bd3c9f64h
+dd 06943499bh
+dd 05f3c05c4h
+dd 000f32871h
+dd 0d2287892h
+dd 02d757f8bh
+dd 0354cfc16h
+dd 0fc4c716fh
+dd 08d1a6e82h
+dd 04d51598dh
+dd 0a885e4a8h
+dd 0fdd8d993h
+dd 053aeab9dh
+dd 0167dcec1h
+dd 0a9388197h
+dd 09340ca02h
+dd 0cc02962dh
+dd 0cfc4fd1ah
+dd 014eb430eh
+dd 0187b84abh
+dd 031f022aah
+dd 0924048cbh
+dd 01b02628fh
+dd 00997876ah
+dd 0a217eb21h
+dd 03c79939ah
+dd 0f741e1e9h
+dd 054562c3bh
+dd 000ba0134h
+dd 0e4407f05h
+dd 0f8edc284h
+dd 0765e832dh
+dd 0b4d7f408h
+dd 03a895bdch
+dd 0a29c4a1bh
+dd 0d81c68cch
+dd 00c1c2bc2h
+dd 0e9b3a5eeh
+dd 01886f8d0h
+dd 00d821a73h
+dd 07c3e8643h
+dd 098c0d9fah
+dd 0a7eae0fdh
+dd 03ddc2ddch
+dd 087fc1884h
+dd 0267c484eh
+dd 068289362h
+dd 0f3aa7aach
+dd 0d38babebh
+dd 07a934434h
+dd 0daf68dbch
+dd 09483a2a2h
+dd 0cb3d0035h
+dd 0644db8d1h
+dd 0d5b59579h
+dd 09e8a6d0eh
+dd 0f7e39ca9h
+dd 0c4554b55h
+dd 048a6c027h
+dd 06ddec899h
+dd 02a6b31b5h
+dd 08663e41eh
+dd 06d3f4070h
+dd 0adf24566h
+dd 0cd95246ch
+dd 03dba0d10h
+dd 0ad260477h
+dd 0cf2b8659h
+dd 0567872d2h
+dd 0bcd5a740h
+dd 09ab4c161h
+dd 0cad08fdfh
+dd 06750e2adh
+dd 06c0c917eh
+dd 00eef0c92h
+dd 04909c964h
+dd 06d506477h
+dd 0924e4829h
+dd 0d4820326h
+dd 0af2d5934h
+dd 07289b7e9h
+dd 08b76089dh
+dd 00be0ee2dh
+dd 096bc09a3h
+dd 0825354e0h
+dd 036a6b725h
+dd 0c2f04ab3h
+dd 0693a5048h
+dd 0205360d0h
+dd 091c0e360h
+dd 07ccbc3aah
+dd 03ec3bad3h
+dd 0bb3f310fh
+dd 0fcd44f4fh
+dd 03da10de7h
+dd 04266ca3eh
+dd 0b035b5c9h
+dd 0c4db1950h
+dd 0d9a40883h
+dd 0fbb0ff37h
+dd 06ce2deeeh
+dd 011320043h
+dd 08f4b48e7h
+dd 09cfa2ed7h
+dd 0fd855e87h
+dd 052665a2bh
+dd 0273f4952h
+dd 031d2acceh
+dd 05d9dc0f6h
+dd 04393783bh
+dd 0f3bc99ddh
+dd 04c5ed6e5h
+dd 0c807bef8h
+dd 02506b125h
+dd 0f9ab8fb9h
+dd 01d390399h
+dd 050d5ecefh
+dd 07140519ah
+dd 00ac88fbdh
+dd 05dfed108h
+dd 0db69d9bbh
+dd 0dfecc6bah
+dd 06143f4beh
+dd 02fb1e2fch
+dd 01778575ah
+dd 0d3942889h
+dd 06444e955h
+dd 00adddcdfh
+dd 0ae5dd4d0h
+dd 03cf65353h
+dd 0dd180681h
+dd 086431f7ah
+dd 07c230776h
+dd 0244b0bb0h
+dd 0f3137b43h
+dd 0531f566eh
+dd 0d75ccf36h
+dd 08311a6aah
+dd 01b4075efh
+dd 072747dbbh
+dd 0505de260h
+dd 041105b4fh
+dd 0a5a6bcb5h
+dd 077e99df0h
+dd 0c70a9d42h
+dd 081b46325h
+dd 0076df310h
+dd 0a63c4c39h
+dd 0079458cfh
+dd 0f7d5eec9h
+dd 06cccc4cbh
+dd 0c3342361h
+dd 0a157c968h
+dd 03c234909h
+dd 0fb703521h
+dd 077bea136h
+dd 0944dc0f1h
+dd 07559eaaeh
+dd 0561b8c04h
+dd 0188dc796h
+dd 08547d3fch
+dd 0e2e2255dh
+dd 05002c11fh
+dd 0653076f2h
+dd 095f69797h
+dd 085f79e40h
+dd 01f246484h
+dd 0f484393dh
+dd 01a1fe9d7h
+dd 0465d9031h
+dd 0786a166eh
+dd 03f83cfaah
+dd 07772236ah
+dd 027fdfc5eh
+dd 0e30d1229h
+dd 02f7c7192h
+dd 01dd9c3aah
+dd 062c9db9ch
+dd 027fa2f4ch
+dd 04b5b96cch
+dd 09f4c5847h
+dd 00b956567h
+dd 0668b8fd6h
+dd 0efd96525h
+dd 05c6cf255h
+dd 0bdc27a04h
+dd 08cfee340h
+dd 0c4a32275h
+dd 044ce0679h
+dd 08e68e081h
+dd 0bddc1f53h
+dd 0d3eed666h
+dd 075501327h
+dd 0cfb48ed6h
+dd 0193ee69eh
+dd 07a4cf484h
+dd 0d0ad8df0h
+dd 0fee68285h
+dd 046895f32h
+dd 021abae3ah
+dd 06af19343h
+dd 0c2c3f224h
+dd 04fe84b72h
+dd 048dbc39dh
+dd 09498b28fh
+dd 0b760a2ffh
+dd 0c8aba4f9h
+dd 021cafcfah
+dd 04f0894c4h
+dd 012023fc4h
+dd 025f3e60ah
+dd 01c34e48eh
+dd 0ab8860ach
+dd 05a0e9055h
+dd 039c36b72h
+dd 03f0618b8h
+dd 097a60016h
+dd 023dc3044h
+dd 044f14b16h
+dd 0a7f9ad41h
+dd 053a5cb28h
+dd 038d0b1fdh
+dd 067d61ae9h
+dd 08774487ch
+dd 03b3c711ah
+dd 0eb1dcbd3h
+dd 03da64c42h
+dd 0668b420ch
+dd 0ab76da5ch
+dd 00e272412h
+dd 0be5ccd8ch
+dd 0f765fb5fh
+dd 0df25bef0h
+dd 0b9d70c65h
+dd 015e2bd21h
+dd 0687ac647h
+dd 05ff1ad47h
+dd 05c8e968ch
+dd 0b8f0e61eh
+dd 0eea01e7ch
+dd 07736a7cfh
+dd 045b80f31h
+dd 0c7a19ce4h
+dd 01d01e6f7h
+dd 0fde7f89dh
+dd 082cb5fddh
+dd 0b725155eh
+dd 08e41c5ach
+dd 05d64458fh
+dd 05b1fbdb6h
+dd 05049d7a3h
+dd 05f109c92h
+dd 01f907441h
+dd 0ba210abdh
+dd 0ea5fc983h
+dd 039d61569h
+dd 02d40681eh
+dd 06c4421c5h
+dd 0c335f68ch
+dd 094eecaadh
+dd 05474a72ch
+dd 0c2cbfc4dh
+dd 0f41f936ch
+dd 0e17c340fh
+dd 0762ffd70h
+dd 0d71960eeh
+dd 0557fc649h
+dd 041e956e3h
+dd 0a48f1991h
+dd 0c398144dh
+dd 0fd074a41h
+dd 0312fc714h
+dd 0266e907dh
+dd 05c925ee2h
+dd 077104114h
+dd 012d57108h
+dd 04b7919a7h
+dd 0e6f92197h
+dd 07e97eab5h
+dd 046082bfdh
+dd 0e2c92f90h
+dd 0432957b8h
+dd 013711de4h
+dd 0a10f98efh
+dd 00620cce2h
+dd 0380e2f90h
+dd 02f6348cbh
+dd 0292fe1aeh
+dd 0555c936bh
+dd 031e7cbf0h
+dd 06c9e9d3fh
+dd 0d89596f7h
+dd 0189d7130h
+dd 081c19f1fh
+dd 02496d1a6h
+dd 098ddb2c4h
+dd 02e2683cch
+dd 023dbc79eh
+dd 0642fd724h
+dd 051e27a34h
+dd 058953639h
+dd 0107cad7fh
+dd 0118211e1h
+dd 0d5267d38h
+dd 0e8bf6d22h
+dd 0147acd77h
+dd 060a76068h
+dd 01220f6b0h
+dd 038a2ed98h
+dd 056ddf69ch
+dd 0a9d0b665h
+dd 0513bc71ch
+dd 0c4a888feh
+dd 027e777d8h
+dd 057a2004ah
+dd 0832be2c8h
+dd 0cdaed07dh
+dd 041e9ec54h
+dd 0ed7f3de7h
+dd 072be14dbh
+dd 0f535ae1eh
+dd 084a23968h
+dd 0291f81c6h
+dd 04f7a1e14h
+dd 0e75c814dh
+dd 02015d56ah
+dd 0de6e0540h
+dd 0147a5e12h
+dd 007a9a6ebh
+dd 04f1b948fh
+dd 00fe6d324h
+dd 039a0cabbh
+dd 014a4e70fh
+dd 049f33bb1h
+dd 06feb8937h
+dd 09c572bbeh
+dd 08e09a637h
+dd 094db7bc0h
+dd 04a291694h
+dd 0c804d186h
+dd 0bc5ea077h
+dd 085db0a79h
+dd 06da6ff44h
+dd 0293fedadh
+dd 0bfd36607h
+dd 06841a79ch
+dd 04f227efah
+dd 03e629501h
+dd 05dda5c50h
+dd 0250177bch
+dd 0365e25ebh
+dd 0ef3b4513h
+dd 019f44255h
+dd 0af580d43h
+dd 09931699dh
+dd 01f4d2b12h
+dd 05d86755ch
+dd 03201cfeah
+dd 0303813c4h
+dd 02fa19530h
+dd 0ade287c9h
+dd 0a3ce9a70h
+dd 0d463ebd2h
+dd 079d37438h
+dd 080ce55bdh
+dd 02bf7e0fdh
+dd 0ed3beac6h
+dd 0f80499cch
+dd 0bff07a57h
+dd 099554f3bh
+dd 0bba1dd0eh
+dd 0c3388fa3h
+dd 06e18c1d0h
+dd 0ba388c6dh
+dd 08f96eba3h
+dd 0c34db840h
+dd 0a1c6384dh
+dd 0ef165721h
+dd 071374467h
+dd 01aad6a10h
+dd 0c0fb646eh
+dd 0ab581b06h
+dd 0f334a852h
+dd 0a938c12bh
+dd 006080bd4h
+dd 0d630f9e2h
+dd 00bc92fcdh
+dd 005eccea2h
+dd 095292175h
+dd 008d0e3cbh
+dd 067974121h
+dd 0a4b01b15h
+dd 051e7607eh
+dd 098de0f0ah
+dd 0ba24fc98h
+dd 0ba642affh
+dd 003774cfdh
+dd 05f708aa9h
+dd 0b1c34782h
+dd 020e038b3h
+dd 0dfa749d3h
+dd 004e6b4aeh
+dd 05f1165fbh
+dd 09142109dh
+dd 021fcbaceh
+dd 0e8e85453h
+dd 05c22fa29h
+dd 06c75fa5bh
+dd 09f4bb83fh
+dd 05b63f02ch
+dd 0de9efd9eh
+dd 059167510h
+dd 058abc9e6h
+dd 0c3fe5bach
+dd 08dc94452h
+dd 0d44c9c57h
+dd 00e85eedah
+dd 039e33308h
+dd 0a220b990h
+dd 0a03deb5ah
+dd 08522a87bh
+dd 028fc867ch
+dd 0005f6d71h
+dd 03beeeaa6h
+dd 099f8abf2h
+dd 09c7c005ch
+dd 0e2f8b789h
+dd 037a61d5ah
+dd 05d262827h
+dd 00a210368h
+dd 0c84d6baeh
+dd 0e3dddaa3h
+dd 073767bbeh
+dd 086e9f881h
+dd 0a9e137f8h
+dd 09428fd79h
+dd 07a708c96h
+dd 0ce2491c9h
+dd 0b4cb050fh
+dd 017b31cbbh
+dd 0da5902c1h
+dd 0a130fef7h
+dd 0daf617c1h
+dd 078707cffh
+dd 05de14f79h
+dd 0f1dda086h
+dd 0ab8f496dh
+dd 054efadfdh
+dd 03570c9a5h
+dd 08b56cbe6h
+dd 028acc059h
+dd 0eae6dd77h
+dd 08a649198h
+dd 0aa3cede0h
+dd 090a93238h
+dd 0b8459f93h
+dd 05b64de1ch
+dd 0024f4422h
+dd 0a2fc1e5fh
+dd 04a3ab4eah
+dd 01f7a8a1ch
+dd 0c36b0c3ah
+dd 04399325eh
+dd 0ea7aeda3h
+dd 065f2f9d3h
+dd 067d5a311h
+dd 0be5ca0d6h
+dd 0427b863ch
+dd 07129ef8dh
+dd 0c72886f2h
+dd 06ef1b416h
+dd 022549743h
+dd 0164fb233h
+dd 0449139d0h
+dd 0a4b38508h
+dd 00567ef38h
+dd 0f43e0b4ah
+dd 02ff13894h
+dd 0e413db97h
+dd 031c6b11ch
+dd 084539765h
+dd 03b9b82c7h
+dd 049c87813h
+dd 0f5e8692dh
+dd 008cc39fbh
+dd 0ae97612bh
+dd 0de0bae14h
+dd 01f859b2eh
+dd 03b9eafe3h
+dd 0ed8d76a1h
+dd 096eec8deh
+dd 0abba9831h
+dd 09e172dc0h
+dd 0362079e5h
+dd 0751b6444h
+dd 0bf4f1418h
+dd 094145e80h
+dd 0fa63689eh
+dd 01528f5d1h
+dd 0bdf82df4h
+dd 0eeaf9e31h
+dd 0634b65c8h
+dd 016358a26h
+dd 02d729ec1h
+dd 09a910902h
+dd 068205bf5h
+dd 0d971a53dh
+dd 098a0b35ah
+dd 020aa97f4h
+dd 02f3f1683h
+dd 085b0e6cbh
+dd 05a439670h
+dd 0f517e166h
+dd 09cc98a5ch
+dd 026813c74h
+dd 081fc91f5h
+dd 09e8141e2h
+dd 069e39f8eh
+dd 09f4b6c62h
+dd 0a959055dh
+dd 03c4d05cdh
+dd 03ff133c2h
+dd 05cae30fch
+dd 0b5909d2dh
+dd 023b3557bh
+dd 00df4270fh
+dd 0649b4a0ch
+dd 0fd510bd2h
+dd 00c452dd7h
+dd 093df255eh
+dd 0bc6c557bh
+dd 01f546638h
+dd 0e823a9ebh
+dd 0073430f0h
+dd 05855e3b9h
+dd 02e463c44h
+dd 089e2e85ch
+dd 0c4e9ce24h
+dd 0f4929c7ch
+dd 0071ff6dah
+dd 003381e8fh
+dd 03e60448bh
+dd 0e507730fh
+dd 00a6e15d5h
+dd 041997588h
+dd 0631847fdh
+dd 0dfe356aah
+dd 042cd84ffh
+dd 00a93b85bh
+dd 0fecd364bh
+dd 0355d22f6h
+dd 007a4b501h
+dd 0e4e7518eh
+dd 058a3b5e2h
+dd 0285c263dh
+dd 065590f6eh
+dd 082568230h
+dd 0ef05bffdh
+dd 0683937b3h
+dd 07fa67cebh
+dd 0a36cb5beh
+dd 01bef3304h
+dd 0220fec23h
+dd 0cc55d408h
+dd 0960c2101h
+dd 0fa399ca8h
+dd 0d905a312h
+dd 03de94ccch
+dd 0e1452f5ah
+dd 0faf914edh
+dd 08a83be64h
+dd 0ed80550dh
+dd 0e7ae96e8h
+dd 01683b7aah
+dd 0c7844518h
+dd 08c8d169eh
+dd 001d0b20fh
+dd 0c7866893h
+dd 00966c274h
+dd 02ed66909h
+dd 09d60a7c7h
+dd 0c8a0a8a4h
+dd 0ef52f4a7h
+dd 00b801ba3h
+dd 044140e43h
+dd 0ceccbcffh
+dd 07aa953d1h
+dd 025475710h
+dd 05bf91490h
+dd 01036c635h
+dd 0297fe902h
+dd 084d43da6h
+dd 0d118b921h
+dd 084018ca5h
+dd 0984b9c9ch
+dd 0fe4b716eh
+dd 0e860be25h
+dd 04aa5e028h
+dd 0f47888b7h
+dd 0a8eb7ae9h
+dd 05b179260h
+dd 0d517a24fh
+dd 0bbd43371h
+dd 047b97aedh
+dd 05c36dea4h
+dd 0e8d7bf76h
+dd 0b1e5f0f3h
+dd 04d5cb4e4h
+dd 03aa3bc36h
+dd 0a3a36269h
+dd 0711ec46bh
+dd 07888c355h
+dd 04a2ed839h
+dd 0172581dah
+dd 08b9d7901h
+dd 0eb18aa76h
+dd 019cd4dc0h
+dd 01bb164cfh
+dd 0f5908ad0h
+dd 0b142d428h
+dd 0f4ae6c6bh
+dd 0b264bcd7h
+dd 08c95eccbh
+dd 0f19aa2f8h
+dd 0bacb129bh
+dd 0aef3ef57h
+dd 027f86716h
+dd 0274fc433h
+dd 05160a6c1h
+dd 0db289616h
+dd 098eb9d84h
+dd 01ceb4068h
+dd 0726aebbch
+dd 00b1d5342h
+dd 07f69ec1ch
+dd 00b72515fh
+dd 0d342446ch
+dd 0cdf255fah
+dd 0c1cd1d58h
+dd 06f5935bdh
+dd 07e6754dah
+dd 0305850edh
+dd 04abece29h
+dd 0b8379880h
+dd 02b39a69eh
+dd 0641e5a71h
+dd 016e8d105h
+dd 09e3bb0d2h
+dd 033df667fh
+dd 05d8ea259h
+dd 0a00621ebh
+dd 049a6a748h
+dd 07ebce9a4h
+dd 020830e24h
+dd 019309f05h
+dd 0cc7bab21h
+dd 022498abeh
+dd 0e0b9746ah
+dd 0750504c4h
+dd 029992060h
+dd 0fba80855h
+dd 0f9d8b412h
+dd 0efb65d43h
+dd 026cb04bdh
+dd 0781f27b0h
+dd 08cc682dfh
+dd 0c9fb6fc5h
+dd 07140f580h
+dd 02a30fadch
+dd 0f196a5cch
+dd 0d0165f0bh
+dd 0ca98121dh
+dd 0168d8747h
+dd 06a882effh
+dd 03c6f99dfh
+dd 04d90d8dah
+dd 0c2f8b0f4h
+dd 01464bda2h
+dd 0efb1f713h
+dd 0d742427fh
+dd 07cb3db69h
+dd 09acd6a6dh
+dd 0e6a34f52h
+dd 095b037a9h
+dd 0cafbca0ch
+dd 0db5b4c69h
+dd 0619bf361h
+dd 082b9aeb0h
+dd 05ee687c9h
+dd 0b01f0c95h
+dd 0302ce459h
+dd 08f1fd7a2h
+dd 0e90954bfh
+dd 0a5493a72h
+dd 0769bf49dh
+dd 0b4e89b37h
+dd 0f4b649cfh
+dd 02fac1ef0h
+dd 0c771965ah
+dd 0cbc41255h
+dd 0bc99c44fh
+dd 0b5e017f3h
+dd 0e68275adh
+dd 075750eb7h
+dd 083cdd31ah
+dd 0644bb92dh
+dd 00bcf527eh
+dd 0fc865ffch
+dd 032a4afa0h
+dd 09fe08c37h
+dd 0ef9d334ch
+dd 077cab154h
+dd 0a74e7a0dh
+dd 0b7cd2cc3h
+dd 0761d903ah
+dd 0b3d69646h
+dd 02636da1fh
+dd 0668f0508h
+dd 0f1efa220h
+dd 0cd541ac3h
+dd 0f843df11h
+dd 043e2dd32h
+dd 0705c2155h
+dd 0a60465a9h
+dd 0a49e3d41h
+dd 09569dc5ch
+dd 0dd24b2d0h
+dd 078730a79h
+dd 0b6a77e86h
+dd 075905962h
+dd 03ed9a627h
+dd 07509c0b8h
+dd 04257a6b1h
+dd 0d48d110fh
+dd 0d6b2b6feh
+dd 0458ea071h
+dd 0b166949bh
+dd 043033ccbh
+dd 0832946ebh
+dd 06126db6bh
+dd 05bb06f42h
+dd 09c6b2adah
+dd 034d43bc7h
+dd 06d3e7a66h
+dd 0cb46cf8ah
+dd 0a4ee7ed6h
+dd 0b74a5304h
+dd 09d14c1b3h
+dd 0a776f1aah
+dd 0c250999fh
+dd 065aa9e34h
+dd 05117f96eh
+dd 0b83a1615h
+dd 01da90d9ah
+dd 03b9db8cdh
+dd 02b759cach
+dd 08c6274f5h
+dd 0e11d3082h
+dd 0eca1267ch
+dd 069d6b052h
+dd 0aec7ef9fh
+dd 0df3d7458h
+dd 0ea63d7c2h
+dd 021e9c104h
+dd 08a1b75bah
+dd 01061e5f2h
+dd 083621119h
+dd 0b074e55fh
+dd 0574c955fh
+dd 0db163d47h
+dd 0fa71bcc6h
+dd 0909b05d4h
+dd 0e59d2647h
+dd 0d9b63afah
+dd 054ee0792h
+dd 055b2ced5h
+dd 0e0a3617bh
+dd 0db8c6f24h
+dd 0e21e0a16h
+dd 0c4cad5eah
+dd 067d250e2h
+dd 00bbb6ecfh
+dd 058193632h
+dd 07118d877h
+dd 0612963c5h
+dd 03e9bd7ddh
+dd 0a1794bd4h
+dd 01085b70ch
+dd 053b100e5h
+dd 0972b4e40h
+dd 038623727h
+dd 029b6a246h
+dd 02ea09c87h
+dd 0cd2fbdd9h
+dd 0a287bbd5h
+dd 0069bb435h
+dd 060e6011ah
+dd 05da41990h
+dd 04c5e7de2h
+dd 035222f58h
+dd 0caa96391h
+dd 0ab6383a0h
+dd 0c40d4ea9h
+dd 067008e51h
+dd 042be74a5h
+dd 0d741734ah
+dd 03b040a1ah
+dd 0bfc59e10h
+dd 00481e744h
+dd 09371535fh
+dd 0ff043c30h
+dd 0646e0280h
+dd 06c06cfdah
+dd 0fc789d60h
+dd 083730252h
+dd 010127585h
+dd 09016695fh
+dd 041d3bd67h
+dd 070c43311h
+dd 0845731f3h
+dd 03bb5f34ah
+dd 09945f86eh
+dd 0c3332ce2h
+dd 02cc6f3f9h
+dd 0ee335730h
+dd 09aa67811h
+dd 0b94dbb05h
+dd 0cb70bcd1h
+dd 079beb49bh
+dd 0f9b8031bh
+dd 0d8472991h
+dd 0b7dda535h
+dd 02bcae73eh
+dd 0cb05fe64h
+dd 00b0ecf6bh
+dd 01542d7b3h
+dd 0c51f20c7h
+dd 0f84a170ah
+dd 088a32743h
+dd 047a4540eh
+dd 098330213h
+dd 0cc5d0064h
+dd 0f5092ae4h
+dd 02540e12bh
+dd 0d1caa6cah
+dd 0de8804dfh
+dd 0dd572ad5h
+dd 0e9e91ee4h
+dd 00f57c2f7h
+dd 03c7e0ab8h
+dd 0a1e7a54ch
+dd 0e5862188h
+dd 0c45be47ch
+dd 01223494bh
+dd 015859d19h
+dd 098031dd9h
+dd 05fa39297h
+dd 09afd1cafh
+dd 012298665h
+dd 01f0c06a1h
+dd 061bff995h
+dd 030552565h
+dd 02eacea2eh
+dd 09eca552fh
+dd 01b770645h
+dd 0cf0db765h
+dd 0df704556h
+dd 0b8dc93a0h
+dd 05603fc40h
+dd 05772ffdfh
+dd 0b1f8d4c2h
+dd 0c9f217a2h
+dd 0188fdf26h
+dd 0df268aa7h
+dd 09b24d2a1h
+dd 00db83f49h
+dd 08419be3dh
+dd 092778733h
+dd 08ca4c261h
+dd 081797bb3h
+dd 0a7e36d84h
+dd 0cdb31849h
+dd 0a917132ch
+dd 03bc0fdf1h
+dd 07d611bf7h
+dd 0c6829bddh
+dd 000e293d7h
+dd 04772fe31h
+dd 070953516h
+dd 0f8d5d6beh
+dd 05ce05ae9h
+dd 0cc0c4c83h
+dd 07553a3e7h
+dd 0b351e8e8h
+dd 00d970fd0h
+dd 022c34772h
+dd 03bc8fb27h
+dd 0fa0ab737h
+dd 06bf16a47h
+dd 0f7348bb2h
+dd 0fac9a9c1h
+dd 09a4fc48bh
+dd 026e174b7h
+dd 0869acd3bh
+dd 0e891caceh
+dd 04bdbc356h
+dd 0448197f5h
+dd 0c2a18eceh
+dd 04f5153a6h
+dd 0720b4263h
+dd 0f276e6bfh
+dd 0ce7ff292h
+dd 08cfdd32eh
+dd 0ad376390h
+dd 06638ee3ah
+dd 08e5e05bdh
+dd 05966db12h
+dd 0fefd5c7bh
+dd 0db11fba3h
+dd 083525a76h
+dd 099236a9eh
+dd 034a8cc7fh
+dd 0cfe961b1h
+dd 0ba9a28dah
+dd 0293f117eh
+dd 077fc8726h
+dd 0ec486de3h
+dd 06a2cebc3h
+dd 096b4eea9h
+dd 039bbb20ch
+dd 0b761a4c3h
+dd 0ed5fd3f5h
+dd 0acaa4d6bh
+dd 08d64e2abh
+dd 07894f7e3h
+dd 0d49c8937h
+dd 015992892h
+dd 0e1c2047ch
+dd 0fee75c1eh
+dd 07daba210h
+dd 0e115a089h
+dd 0497a87c6h
+dd 0c6478f7fh
+dd 04654aeaeh
+dd 0de888644h
+dd 0de7c3ce6h
+dd 0739125cdh
+dd 065bdde84h
+dd 02753e10fh
+dd 010c60b52h
+dd 0b0e90a5ch
+dd 0f3c90700h
+dd 059539b63h
+dd 0049f9bebh
+dd 0ff0a483fh
+dd 062375132h
+dd 0fd15768ch
+dd 02843c6d0h
+dd 0cefb95c5h
+dd 0778df39ah
+dd 0d1d96cd7h
+dd 0e3f6573eh
+dd 0b3ffb324h
+dd 057741213h
+dd 0b08fb2bbh
+dd 090c1424dh
+dd 0a78fe7e4h
+dd 09247e0fch
+dd 0d5d985cah
+dd 0cbdc1740h
+dd 0e172e1bbh
+dd 052694253h
+dd 04829f7aeh
+dd 0bb9b1b9ch
+dd 0e2cb8457h
+dd 0d039f30bh
+dd 033bbade3h
+dd 0f9fee3b0h
+dd 0bcfab722h
+dd 01f6bcc8dh
+dd 010321a99h
+dd 077839871h
+dd 07fec8174h
+dd 08acfb06bh
+dd 0ed13a9b2h
+dd 0d4889bbbh
+dd 0b5ff2dfah
+dd 05e01224ah
+dd 066dd2760h
+dd 03058da18h
+dd 03c3f974ch
+dd 05fbbe665h
+dd 0e041aaa8h
+dd 0003c113eh
+dd 00a212912h
+dd 065533aceh
+dd 0bb76ebf2h
+dd 075bcd5e1h
+dd 0dfce67e4h
+dd 0de9bd347h
+dd 0bfcd48f1h
+dd 00bd5bc72h
+dd 09a9ba2b9h
+dd 0d744b1f3h
+dd 01929db18h
+dd 0b315aad1h
+dd 0bd6aa198h
+dd 0549cda7ch
+dd 035909a18h
+dd 0b349117bh
+dd 04b3cfa45h
+dd 02d47b9e8h
+dd 0af11b9fah
+dd 0b6c66d21h
+dd 0e10d0a1ch
+dd 0dd799ac5h
+dd 0aa772e00h
+dd 093fb68a8h
+dd 07f97fc3bh
+dd 09a94c044h
+dd 03ebefd11h
+dd 038e2b495h
+dd 0479aa087h
+dd 07bb724f7h
+dd 068e63215h
+dd 0d4818540h
+dd 02997d6cah
+dd 035fc4a6ah
+dd 0db34b133h
+dd 07211b68eh
+dd 0ba3df3dfh
+dd 0ba84330fh
+dd 0604de666h
+dd 01ac4a661h
+dd 0a8a35835h
+dd 0d02bdf0dh
+dd 026de1d7ah
+dd 02a59c7ebh
+dd 0b2f68f02h
+dd 0904b65f9h
+dd 0862f41eeh
+dd 053dddf4bh
+dd 0407a0e90h
+dd 0ac897e56h
+dd 0c76395b8h
+dd 0f87fbc90h
+dd 01e1f3c10h
+dd 036994d13h
+dd 0a913c365h
+dd 0706d9261h
+dd 085e40981h
+dd 08015ffd1h
+dd 0487715aeh
+dd 041790edeh
+dd 0d2e6a39fh
+dd 0a20985d2h
+dd 099dc0fe6h
+dd 00ff9e240h
+dd 04219ce90h
+dd 0fbd5bdf7h
+dd 0a904f396h
+dd 01c21d33eh
+dd 09f1f2e79h
+dd 095e9cfd4h
+dd 07e8ec479h
+dd 06400f389h
+dd 036a41651h
+dd 0979cd555h
+dd 03b8137c6h
+dd 06ed3a55dh
+dd 036739ce1h
+dd 00a6f4e2fh
+dd 0cddafe67h
+dd 0797c8a6eh
+dd 06adb496dh
+dd 05c563cf8h
+dd 0ced015e7h
+dd 0e2403074h
+dd 0e9431b9fh
+dd 0d9fbcc35h
+dd 09512ba14h
+dd 034500950h
+dd 00004c9b7h
+dd 01713410eh
+dd 0c8aff03dh
+dd 03675ba43h
+dd 0317273d4h
+dd 065e9d0c1h
+dd 0d0b12c9fh
+dd 041ebdc31h
+dd 02a7b5ae6h
+dd 0cedec8edh
+dd 014fade73h
+dd 0b165107bh
+dd 009dd259eh
+dd 09a9781f1h
+dd 03017693bh
+dd 04cb1b36ch
+dd 0deb4bd23h
+dd 09773c33bh
+dd 096bdde08h
+dd 02db3a976h
+dd 0d21d9d25h
+dd 05bb1a944h
+dd 041203b7ah
+dd 074849ac2h
+dd 0e7a893c9h
+dd 047b34a81h
+dd 0949c7dffh
+dd 0c1c0428ch
+dd 051cd068ah
+dd 02dfdd132h
+dd 032b42193h
+dd 0c8e01878h
+dd 04d34252dh
+dd 0138d26dah
+dd 01b5924f7h
+dd 0e6655a9ch
+dd 0ca1ff280h
+dd 0157f2539h
+dd 01ea9dc1bh
+dd 06163eb45h
+dd 0256f4ae3h
+dd 0a3b0d77ah
+dd 04e6ddb47h
+dd 061d70df5h
+dd 06f9f13f2h
+dd 0d2ef8d10h
+dd 0a97cc379h
+dd 0fed31f88h
+dd 009670f94h
+dd 0038c434ch
+dd 0e201674eh
+dd 048f3df77h
+dd 0a808b5c0h
+dd 0c60dda2eh
+dd 038bccc3eh
+dd 0be9bcbbfh
+dd 05c23161dh
+dd 054325dbbh
+dd 086521978h
+dd 073ce0148h
+dd 0faf10368h
+dd 0bf19342dh
+dd 0fd7d9e8bh
+dd 04aa61e97h
+dd 088a726e8h
+dd 0ba9f5d8bh
+dd 042b3597ah
+dd 0fa7e686bh
+dd 0fa885fa1h
+dd 0bb454017h
+dd 03355d784h
+dd 06ed7cf51h
+dd 007739aabh
+dd 07ecf1a7ch
+dd 0b260791ch
+dd 00e7edfcbh
+dd 09fcde726h
+dd 01a6a434bh
+dd 0607cc3c5h
+dd 08c99e0f3h
+dd 0c3a70a5bh
+dd 018aeadc4h
+dd 09a36538fh
+dd 097151350h
+dd 07829caa1h
+dd 018b8fba0h
+dd 08888d116h
+dd 094cdac0ah
+dd 0b33bcfd7h
+dd 0d284d828h
+dd 087d762c0h
+dd 0affd9626h
+dd 03d77047dh
+dd 06109f400h
+dd 03e75ca26h
+dd 066a4aaf4h
+dd 0eda868b3h
+dd 0a027bc5fh
+dd 05ebf7228h
+dd 088209c72h
+dd 064bc34bah
+dd 029e761c3h
+dd 026c18a82h
+dd 083bd9334h
+dd 09fb2ea2ch
+dd 003d97e59h
+dd 0ac56600ch
+dd 092bc55eeh
+dd 066f3098fh
+dd 0431da218h
+dd 0f99a8ecbh
+dd 02e6099c0h
+dd 072f8fd2eh
+dd 002713544h
+dd 02e36a89bh
+dd 037740743h
+dd 0d05cb4afh
+dd 00fae2c59h
+dd 000ed3d4fh
+dd 02fb5fc70h
+dd 02c7bca00h
+dd 023534e1eh
+dd 03e4d5d47h
+dd 0c8cb3ffeh
+dd 03b3e699bh
+dd 00d9fa959h
+dd 07c3e98ddh
+dd 0d6aad378h
+dd 0c997437bh
+dd 0bd81334ah
+dd 0af02c854h
+dd 05cbe9955h
+dd 0de45d5dbh
+dd 09496dacbh
+dd 0c8778ebch
+dd 0c155baa1h
+dd 06861207ch
+dd 0ed1b8565h
+dd 08b5b44a1h
+dd 06add5507h
+dd 06c35f64bh
+dd 0343d1770h
+dd 05d72b7b6h
+dd 00496a419h
+dd 048d6b909h
+dd 0c508b7d3h
+dd 0b67e4bb3h
+dd 06d7b6f80h
+dd 0f7d56f7bh
+dd 009b7d781h
+dd 04f98e186h
+dd 02faa5919h
+dd 0935f8e51h
+dd 0503e9aedh
+dd 04869196dh
+dd 0e5f045e2h
+dd 00198695ah
+dd 0b52196ech
+dd 0494713d5h
+dd 0a812a062h
+dd 0bf2c6045h
+dd 061187188h
+dd 045d3506ch
+dd 0a2ea29f7h
+dd 0642ccd68h
+dd 0b13f1922h
+dd 0c92caf24h
+dd 051342fc3h
+dd 0743cfefdh
+dd 0d32f747ah
+dd 09d9c53ach
+dd 0f335d9e5h
+dd 0393ac95dh
+dd 0541f5f93h
+dd 0986b05eeh
+dd 0720fdb83h
+dd 0d2e9e37eh
+dd 0ef30cb88h
+dd 0b3ad703bh
+dd 0384b7fbbh
+dd 089320aa2h
+dd 09daf1bdah
+dd 0365621d4h
+dd 08f8d5287h
+dd 0f51645e7h
+dd 0faa61feeh
+dd 0287debf9h
+dd 0961778dah
+dd 0a80eadbfh
+dd 06bd3be6ch
+dd 0666a6419h
+dd 00e0f3cfch
+dd 0c53b174ah
+dd 0fd8efd6eh
+dd 0d948b2b5h
+dd 03559460bh
+dd 0dce2bfdeh
+dd 091c56e08h
+dd 0d0cfc80fh
+dd 0bfeba8e8h
+dd 056fd2a40h
+dd 09766c1f4h
+dd 09e760660h
+dd 089927ebah
+dd 04b3de39fh
+dd 0cabb81fch
+dd 07adebc59h
+dd 0e9d793fdh
+dd 054678b9dh
+dd 00e1e2e0bh
+dd 0d5b835feh
+dd 0aa5bfcd1h
+dd 0a971491fh
+dd 072d418ech
+dd 001439110h
+dd 04187b7dch
+dd 0952717bdh
+dd 041cdcc83h
+dd 079c5fa34h
+dd 0d8634fa0h
+dd 033d09b9fh
+dd 08337a674h
+dd 02bdca775h
+dd 030be9992h
+dd 02853b2d2h
+dd 0e5b7763bh
+dd 0e057785dh
+dd 0c05f2ef7h
+dd 0fa6c5f0ah
+dd 023599705h
+dd 0fcd850c6h
+dd 010134884h
+dd 0acbaaef9h
+dd 074e15027h
+dd 01368c17ah
+dd 070876c50h
+dd 0741a0bdbh
+dd 04320c2deh
+dd 051d8b95dh
+dd 0b2bb1830h
+dd 0b2549faah
+dd 059e38b88h
+dd 060959ad3h
+dd 0a4902224h
+dd 01a6e6990h
+dd 08faa6ce0h
+dd 07479da3dh
+dd 0fa2bfe65h
+dd 0e1cd484eh
+dd 05f985407h
+dd 0fc5b884dh
+dd 0fd4b7490h
+dd 0d39e48c3h
+dd 0009073a1h
+dd 08aa9df11h
+dd 091b1bb8ch
+dd 0c79c6c93h
+dd 0b815d304h
+dd 03633118ch
+dd 0cec15860h
+dd 061bf051bh
+dd 07b2eddaeh
+dd 0e1ae6e3ch
+dd 0b4d9abcbh
+dd 0a3bf3141h
+dd 0ed83e396h
+dd 0c0ff3c93h
+dd 01747086dh
+dd 048aeab6dh
+dd 039aab3b2h
+dd 02e83b324h
+dd 0334f9e0eh
+dd 07e2c2290h
+dd 0dee96e42h
+dd 069832617h
+dd 00bb7dad2h
+dd 0611abad3h
+dd 077ff317ah
+dd 029208a64h
+dd 0ff4741f1h
+dd 076b7d07ch
+dd 0db8a7e4ch
+dd 05f1a9325h
+dd 0c814b9fbh
+dd 067febafah
+dd 0bc008e59h
+dd 0d7574be1h
+dd 01df049b3h
+dd 06733bb5dh
+dd 0efe07e55h
+dd 07c941f9eh
+dd 0fdd9ae6bh
+dd 05719df54h
+dd 05817548ah
+dd 0f4813435h
+dd 0069ee86ch
+dd 0e576f694h
+dd 03c6f93bbh
+dd 0e68ec984h
+dd 00eb63effh
+dd 01d6b328bh
+dd 019fbaf1eh
+dd 0dccfabc1h
+dd 06b1a0d4fh
+dd 040d84c51h
+dd 09ae4dbceh
+dd 0c074b8c3h
+dd 0f106f7f1h
+dd 0b8ec2f62h
+dd 0b527f650h
+dd 04469aff7h
+dd 056eda807h
+dd 072db80f9h
+dd 0ecfa821bh
+dd 0909cce0ch
+dd 0eeecbbadh
+dd 0f4df100ch
+dd 03633d4efh
+dd 0ec5849c8h
+dd 08b1ebb4ah
+dd 0a3fcb213h
+dd 02322e312h
+dd 01da389f2h
+dd 0154e0df9h
+dd 0ab422c04h
+dd 09b1da234h
+dd 0c3d469e5h
+dd 05cb4823bh
+dd 023eb689ah
+dd 03840e0ech
+dd 08efb29b6h
+dd 0b3f9a3feh
+dd 038bd623dh
+dd 0a58afbcah
+dd 07c3b37f5h
+dd 0d2b0dd5ah
+dd 0cd40a009h
+dd 0244332d1h
+dd 008160ebeh
+dd 0e96a0707h
+dd 0c25ead54h
+dd 0288727feh
+dd 0a92c111fh
+dd 079c50c09h
+dd 099ac2089h
+dd 0ae44a0edh
+dd 01185ac7fh
+dd 0a50e3633h
+dd 0a0b177c5h
+dd 05aaea626h
+dd 06448b5a6h
+dd 0965be5b5h
+dd 0536bd6edh
+dd 0b457314bh
+dd 0e3ca700eh
+dd 05050ab30h
+dd 0546ba214h
+dd 09d004261h
+dd 09e96ae34h
+dd 0abcbe069h
+dd 0650c96d1h
+dd 08206b2c0h
+dd 0d5194373h
+dd 0461ef3e5h
+dd 04854c1b0h
+dd 09be5e13eh
+dd 097ed9e27h
+dd 031e6633ah
+dd 0a48ea82bh
+dd 032b46726h
+dd 099a15e59h
+dd 05a975659h
+dd 0d73f865ah
+dd 0acd31f3bh
+dd 0c64a4997h
+dd 00adc9ce2h
+dd 03ed70211h
+dd 04f7c365eh
+dd 0db794ef7h
+dd 0e0436fb7h
+dd 08df83245h
+dd 02af1dbb0h
+dd 02f6d777ah
+dd 0c6dca567h
+dd 0715bdb63h
+dd 0c6d98559h
+dd 059f0e8bfh
+dd 09cf45fc2h
+dd 0b7063d6dh
+dd 034d9f78eh
+dd 0f58a9fb4h
+dd 09f304f6ch
+dd 08c84d05eh
+dd 038aa73d4h
+dd 0a5cc70c3h
+dd 0e234f8cdh
+dd 00d396d3dh
+dd 06c76daa6h
+dd 0d50eda10h
+dd 09829c5abh
+dd 069ce8a5bh
+dd 03f5e6c09h
+dd 011ca0edch
+dd 01c7ff2e7h
+dd 05374277ch
+dd 0fc2c3f11h
+dd 05e19402bh
+dd 00780d82ah
+dd 0a4027be6h
+dd 050a08e33h
+dd 0586e6915h
+dd 0dd8b23d5h
+dd 069034f57h
+dd 03f0f0edfh
+dd 0b0537491h
+dd 0373f80f6h
+dd 020df2d5fh
+dd 004854112h
+dd 066f01975h
+dd 03fb59eceh
+dd 0a1bd71d8h
+dd 0d401bc18h
+dd 0b92f4608h
+dd 0e3355e1dh
+dd 07db702cdh
+dd 0e5daea07h
+dd 0ff3ae187h
+dd 08a819393h
+dd 0ca17fe02h
+dd 0a25c0ac4h
+dd 02826df16h
+dd 0272ba6c8h
+dd 07255a979h
+dd 09ee353d8h
+dd 07fd60dcch
+dd 0c4f46ce0h
+dd 06bd9669bh
+dd 050a57fcbh
+dd 01529ec41h
+dd 0885f8fa3h
+dd 0e7cec144h
+dd 03b179389h
+dd 072324957h
+dd 0f94d357bh
+dd 0f2420dbah
+dd 073e4b2bbh
+dd 0cd4f0e20h
+dd 0dbbc14e9h
+dd 074217abbh
+dd 06fe3f7b4h
+dd 0ab1e0ec1h
+dd 0958de6b1h
+dd 0c33230d2h
+dd 00ddf9d94h
+dd 09e3ad2d6h
+dd 093afbb72h
+dd 05b57bc26h
+dd 01eb4b7b4h
+dd 0d1ca1302h
+dd 0e7eb8bd8h
+dd 0b9114c2eh
+dd 0386db21dh
+dd 018c61e70h
+dd 0d97b5ac5h
+dd 08cc398fah
+dd 0f9b09013h
+dd 011cead08h
+dd 0129c710eh
+dd 08bdbc9b3h
+dd 038d84315h
+dd 0b112695ah
+dd 0ea11366eh
+dd 02fc097c3h
+dd 0f1016ffdh
+dd 064c14700h
+dd 0842368a2h
+dd 0826971f9h
+dd 0fd896d29h
+dd 0ee9aaca1h
+dd 06be680a6h
+dd 0cd341c5ah
+dd 066cfb7e6h
+dd 035ec68f2h
+dd 0e769ff1bh
+dd 0a6c1ac0fh
+dd 01dbe02ddh
+dd 0223b3888h
+dd 0c4c45061h
+dd 0e0ec2036h
+dd 09bf557b1h
+dd 0772d3e17h
+dd 08abf090eh
+dd 008609c08h
+dd 0834108f1h
+dd 07cbedf34h
+dd 0844a5429h
+dd 084a25e19h
+dd 06082bb5eh
+dd 04f87e88ch
+dd 06f53eafah
+dd 0f8cef5eah
+dd 0bfff22e0h
+dd 02f0274e3h
+dd 03d5c1dech
+dd 07253aa3fh
+dd 0d9d29884h
+dd 041733522h
+dd 051729b17h
+dd 092941a0dh
+dd 02eec52e4h
+dd 042202d61h
+dd 0c5cfa159h
+dd 05abd04ech
+dd 0a63dca46h
+dd 0eb8ba6c9h
+dd 00d9b40c3h
+dd 0359c3999h
+dd 072535c82h
+dd 0b4f944efh
+dd 0fd890144h
+dd 0d90e990fh
+dd 050701fadh
+dd 0ec5fd8b7h
+dd 048f81945h
+dd 02e93ebb6h
+dd 0b4755247h
+dd 0edc9e4cah
+dd 0c1e86135h
+dd 0eae4342fh
+dd 084f5ea89h
+dd 051be01cdh
+dd 0669cfb09h
+dd 0c70386a5h
+dd 0b70f1c3ch
+dd 0ee2ed211h
+dd 056931cb9h
+dd 0170b0093h
+dd 0df299e43h
+dd 0447d2bach
+dd 0c5b50a65h
+dd 0ba8da42fh
+dd 0726bc65ah
+dd 01706c8edh
+dd 01d640f4fh
+dd 0f6382066h
+dd 0d1d08e5bh
+dd 0cfb22a94h
+dd 01f178af0h
+dd 0cc27dbedh
+dd 0058b9e57h
+dd 001f9a20ah
+dd 0faa39849h
+dd 001cef6efh
+dd 0f86575ddh
+dd 084b9a1ffh
+dd 0bd49598ch
+dd 0782b7c7ch
+dd 04759bebbh
+dd 0e67f396dh
+dd 01e139ab7h
+dd 0e958f35ah
+dd 0be72446ch
+dd 0c9daba9dh
+dd 09eaac2a3h
+dd 0c05cf26bh
+dd 09a7f7d4bh
+dd 0f0d0262eh
+dd 01f8e4594h
+dd 03e1a81c7h
+dd 0ca81a618h
+dd 0ffa46638h
+dd 0a5cb25c2h
+dd 0a9047cfdh
+dd 0640c1030h
+dd 076e7370ah
+dd 08aff110bh
+dd 0af1de81fh
+dd 0d533d898h
+dd 0b28e1256h
+dd 0fcebd595h
+dd 0daf624afh
+dd 094521636h
+dd 0446c950dh
+dd 0f5dfd009h
+dd 00dc40f09h
+dd 09c67a694h
+dd 04f2cbf57h
+dd 020d5f1d4h
+dd 087821ae1h
+dd 044c8f1f1h
+dd 0ccb081e1h
+dd 05b1049fbh
+dd 08cdef2e0h
+dd 08ca73d88h
+dd 0bad2c7dfh
+dd 033af19d2h
+dd 0154eb30bh
+dd 0734c0bdah
+dd 0fc086fedh
+dd 0dbd6ba8bh
+dd 0aa64c0a4h
+dd 0672a37dah
+dd 0a07ba56dh
+dd 0440e367bh
+dd 03123f9e9h
+dd 041b62799h
+dd 0c9952558h
+dd 04e8cebcah
+dd 034709da0h
+dd 0c4c20497h
+dd 09b777f01h
+dd 0d89eafafh
+dd 05a248498h
+dd 08263152dh
+dd 09e42c212h
+dd 0b6f29ee7h
+dd 0204c1153h
+dd 093588addh
+dd 065adb52eh
+dd 02e30248bh
+dd 0e342ea0fh
+dd 05f0ac381h
+dd 016d7a46bh
+dd 0b00485e4h
+dd 04ac08077h
+dd 0e1926bd7h
+dd 0fe7d60bfh
+dd 0666e7e7fh
+dd 055dcaa98h
+dd 045c93edbh
+dd 019fcde7dh
+dd 0e549202bh
+dd 069fe1144h
+dd 0e3098669h
+dd 0d7a77d9ah
+dd 014dffe07h
+dd 02dc65a11h
+dd 010c33574h
+dd 04ac390a0h
+dd 04bcb0c80h
+dd 0290a7cc6h
+dd 01def3d1ah
+dd 09ba64993h
+dd 00fbbadf4h
+dd 0978899cbh
+dd 00ac521dah
+dd 0ae9d923dh
+dd 038d4ce33h
+dd 02608b60fh
+dd 05a6c368bh
+dd 0636b5a53h
+dd 0ab23084ah
+dd 08833c60fh
+dd 0f561cbedh
+dd 0bbfb46e5h
+dd 0969b43abh
+dd 092a35bfah
+dd 065a851d0h
+dd 0066d553eh
+dd 0500eba38h
+dd 0833bcf3bh
+dd 0855515adh
+dd 0ce800172h
+dd 0234b6baah
+dd 06d9e3a61h
+dd 0878dc5d9h
+dd 08c8fb979h
+dd 0a8edda91h
+dd 0fbc0f74ah
+dd 03e8b2dedh
+dd 074897168h
+dd 0f2ac91a5h
+dd 052c48ffeh
+dd 0dc430c35h
+dd 0cdd0c9f2h
+dd 0fb8b8be3h
+dd 0a189ba91h
+dd 0f5e28990h
+dd 0465fa933h
+dd 00e0a7cd2h
+dd 000b82675h
+dd 0efe2ce16h
+dd 065de3c98h
+dd 0ac6a83a9h
+dd 0a262f013h
+dd 0f672a6d6h
+dd 039ecea8fh
+dd 0561aadd6h
+dd 0d19e7ba8h
+dd 049b00f25h
+dd 0363d22a0h
+dd 03256d7cbh
+dd 0e980a702h
+dd 0fa0d1ee2h
+dd 0bb85a894h
+dd 01c174672h
+dd 0c390eb86h
+dd 09a03e3d8h
+dd 096b32729h
+dd 03ad6cf2eh
+dd 0800a1cach
+dd 09e7d061ah
+dd 06acbd9d3h
+dd 0acc35ff3h
+dd 013724ed6h
+dd 0e4025830h
+dd 0f58fc8bdh
+dd 05252ef84h
+dd 0336dab47h
+dd 03ebe09b8h
+dd 0df43eed9h
+dd 0bf161039h
+dd 02a8a00e2h
+dd 032b2d900h
+dd 02be4e127h
+dd 0d3555275h
+dd 0cf2645dfh
+dd 0afdca93ah
+dd 03899682fh
+dd 041a63b3fh
+dd 031ffe40dh
+dd 0db231159h
+dd 0a9b25d5eh
+dd 0a43b498bh
+dd 03549710ah
+dd 0e717c6b0h
+dd 082ea0f86h
+dd 0f663ee9fh
+dd 02f2c5aech
+dd 0afe751feh
+dd 0ea92b8e1h
+dd 0453d654dh
+dd 0a1da795dh
+dd 02a0e1d43h
+dd 05201b717h
+dd 02181b6bbh
+dd 05fff3a1fh
+dd 099bb7836h
+dd 0be6775ebh
+dd 0c2c43882h
+dd 0c2d7748ch
+dd 034c3a298h
+dd 054eb8d73h
+dd 039acaa97h
+dd 0207fe982h
+dd 0e6090eaah
+dd 0728d45e8h
+dd 0f1a237b9h
+dd 010d3916ah
+dd 05f59f234h
+dd 00656d690h
+dd 0c0872c2dh
+dd 081baf69dh
+dd 0f65430dbh
+dd 055907e2dh
+dd 02b0ddbafh
+dd 0dcc5a7ffh
+dd 0376f0957h
+dd 019b00dceh
+dd 0e314ade6h
+dd 0ca6f391dh
+dd 027741da1h
+dd 0bbf2d503h
+dd 06eae59adh
+dd 098a54abah
+dd 052c3baf7h
+dd 0d9b761e0h
+dd 091fd66a4h
+dd 0ad063954h
+dd 066d61652h
+dd 00bd07463h
+dd 07a4101aeh
+dd 08547407ah
+dd 02b0e5847h
+dd 0f495e90ch
+dd 057e92c0fh
+dd 0284ecebch
+dd 028113f04h
+dd 0ea57012eh
+dd 0bd2d51a2h
+dd 062ef6cfah
+dd 005f3b164h
+dd 0d2040411h
+dd 0fc3871d0h
+dd 047fbb732h
+dd 0366be575h
+dd 001cde3dch
+dd 096ccec39h
+dd 0b45cad0dh
+dd 064ae18a4h
+dd 07ff53ab7h
+dd 0e0230656h
+dd 04b34064bh
+dd 0f783eb4fh
+dd 08ce07a95h
+dd 02e044d05h
+dd 0e3a25e8eh
+dd 05882f75fh
+dd 0e5bb4fe2h
+dd 09e846e40h
+dd 0b969bbf3h
+dd 0d328e946h
+dd 0c4828413h
+dd 046cd2912h
+dd 0c5ab2b0bh
+dd 0595ad6a0h
+dd 01c14e5f4h
+dd 0bfa78361h
+dd 0a3952d55h
+dd 04307c2a3h
+dd 097b5ef81h
+dd 04d5ae142h
+dd 068b8c8bch
+dd 0b214e48ah
+dd 0ddedbadfh
+dd 08b9e74fah
+dd 041452148h
+dd 0c57ffeceh
+dd 04e9d5d06h
+dd 04e80ce6ah
+dd 0cdb4967fh
+dd 0fe5c84e3h
+dd 034cfbd96h
+dd 0dbdb1899h
+dd 050c296cbh
+dd 0cad980ddh
+dd 092f53d54h
+dd 0bff5f666h
+dd 06ae6daf2h
+dd 06ea189cbh
+dd 0caf1c7b1h
+dd 0b55df1e2h
+dd 0478ee7d7h
+dd 0f99a6884h
+dd 0a28d6bd9h
+dd 0a6dfa527h
+dd 0eb7f4f9ah
+dd 03d6faafdh
+dd 03b6e2a4eh
+dd 0241adf67h
+dd 03173d544h
+dd 0a97229bbh
+dd 041789934h
+dd 00e910103h
+dd 087d14ec1h
+dd 090fef47fh
+dd 09a764e8ch
+dd 0104b750eh
+dd 0ff1ef233h
+dd 03c707824h
+dd 0341438abh
+dd 0eb08958dh
+dd 05575b3c6h
+dd 06f01c654h
+dd 05c134d08h
+dd 04f67d92ah
+dd 0a103eb83h
+dd 00f14a17ah
+dd 04b2173e4h
+dd 0dd62e57bh
+dd 0ef8f1e26h
+dd 04dc8d3f1h
+dd 00f073a8ah
+dd 09a2b2fefh
+dd 002c88972h
+dd 01a8ee5d9h
+dd 02ebeb22fh
+dd 0c13c0f9bh
+dd 094350a7eh
+dd 0cc806f5bh
+dd 08fe7e49ah
+dd 0732fd6c6h
+dd 031020a58h
+dd 02abefce9h
+dd 04686e30dh
+dd 0153e477dh
+dd 0a201b861h
+dd 0f0038aa1h
+dd 0de624e44h
+dd 06219d827h
+dd 00da96aceh
+dd 037301180h
+dd 0e4eebbcdh
+dd 0be86f022h
+dd 0f6376a2eh
+dd 09d9d54cbh
+dd 0cc54d23ah
+dd 07befeee2h
+dd 0efa4393ch
+dd 09bd540f9h
+dd 00e1f6830h
+dd 00f97dd07h
+dd 0eb1a94e1h
+dd 07c49ee00h
+dd 0deba70a0h
+dd 0c1b1d7e6h
+dd 0a8c3f6deh
+dd 091720e75h
+dd 01cb981abh
+dd 0e3ae0567h
+dd 0d23d4628h
+dd 0eae8fe7eh
+dd 0399fad71h
+dd 0660cbf73h
+dd 0972c3d76h
+dd 0c66ac7f9h
+dd 0f79c7080h
+dd 05683625ah
+dd 026f99948h
+dd 0fc1632d9h
+dd 0b2b89e37h
+dd 07273acceh
+dd 013155389h
+dd 0ee46ead7h
+dd 064b08cb4h
+dd 05aa3cbc6h
+dd 0339bfb6bh
+dd 0b0e425eeh
+dd 095450f76h
+dd 0ea212183h
+dd 0b6bdcaadh
+dd 0f62879f7h
+dd 0e06c4957h
+dd 0021835b1h
+dd 03f0a1e77h
+dd 06b7d70d4h
+dd 0bae74b9dh
+dd 0ab8b702dh
+dd 05ee0a237h
+dd 0f019955ah
+dd 093a91774h
+dd 06532054fh
+dd 0093c6c95h
+dd 0b3802649h
+dd 09d354c31h
+dd 0ef59e020h
+dd 03f82dc60h
+dd 057fae1ddh
+dd 0e55e2d9eh
+dd 0cf6b4011h
+dd 0fde70414h
+dd 074f082e9h
+dd 0e8f29496h
+dd 0f6ff285dh
+dd 01076ef1bh
+dd 06d285b7eh
+dd 0ba723513h
+dd 0f97d33e4h
+dd 0f5f33bdbh
+dd 0344f6d8bh
+dd 06c6c9c21h
+dd 04e61cf8bh
+dd 0f46e0af9h
+dd 092878f73h
+dd 03f5c5b9dh
+dd 05b1a93eah
+dd 09cf3d4ceh
+dd 0fb44f215h
+dd 0bb32a92ah
+dd 07f6bc319h
+dd 029dff5e5h
+dd 0381a117ah
+dd 08efae206h
+dd 0792dc2b8h
+dd 031737ab3h
+dd 041a2c09ah
+dd 0e8f19d93h
+dd 09dbe5462h
+dd 01941e8fdh
+dd 0231dfe98h
+dd 08ff899a5h
+dd 088c17a51h
+dd 04d2228b9h
+dd 0acf5cb8fh
+dd 0f2df6c8fh
+dd 0a586a1a2h
+dd 0c7135517h
+dd 054485672h
+dd 070f50815h
+dd 0d011adbch
+dd 0889fa36dh
+dd 0e8accc76h
+dd 0e67fbd4ch
+dd 0d53ef098h
+dd 06ec2135eh
+dd 04abc92deh
+dd 07768a64ah
+dd 05acc554ah
+dd 0651adf7dh
+dd 02fa8298eh
+dd 04e06dacdh
+dd 0dbb406ffh
+dd 0f265da13h
+dd 00f70e6a5h
+dd 02b38b2f2h
+dd 0e5fe9964h
+dd 0d08caacah
+dd 03d7ae5c5h
+dd 05798d7fah
+dd 00b7b74c2h
+dd 0a680aea8h
+dd 0c81e61b2h
+dd 0bc275bcdh
+dd 06749a228h
+dd 0f54d492eh
+dd 0881ac744h
+dd 0d0fe1800h
+dd 0a3921d14h
+dd 0dc7179a7h
+dd 0aec86dedh
+dd 0944ffedch
+dd 0db0b00f8h
+dd 03f097e91h
+dd 0de37953ch
+dd 0913f7a80h
+dd 01ff9d364h
+dd 0f73db0b0h
+dd 079738d30h
+dd 09bb1e054h
+dd 016435423h
+dd 0460facceh
+dd 0b84f003ch
+dd 0a39addc4h
+dd 0dd77b7d6h
+dd 009b770bah
+dd 037f23b4eh
+dd 020b3afefh
+dd 008043170h
+dd 0f09f0d52h
+dd 05be75fdbh
+dd 05e67477eh
+dd 0c4e6a88dh
+dd 0e7ee4b0ch
+dd 07e9ffd48h
+dd 0970e7d80h
+dd 0002f8d2eh
+dd 0bc323508h
+dd 0b7332512h
+dd 025d414e6h
+dd 0a69db02dh
+dd 0ce53b581h
+dd 0c386dd33h
+dd 03d9d410ch
+dd 0987f3441h
+dd 030d9bb2ah
+dd 0a3ba46beh
+dd 0033093d7h
+dd 03e98f02bh
+dd 006cf478fh
+dd 09be470d3h
+dd 07e7a8082h
+dd 02c4d86ach
+dd 039c82fafh
+dd 005bc6922h
+dd 0c0e68306h
+dd 022b4e57dh
+dd 02d3c0a7dh
+dd 06f9b7bbdh
+dd 0393a50a5h
+dd 0854cb920h
+dd 0f92a3a25h
+dd 012ad6208h
+dd 0c9a68586h
+dd 0248fb395h
+dd 0b66c3d0fh
+dd 040138eb5h
+dd 0ca8e6228h
+dd 09d540777h
+dd 0595e58ddh
+dd 0c764e2edh
+dd 0a5b4ddd5h
+dd 067135bdeh
+dd 0f55cc5b8h
+dd 062656dc8h
+dd 08b69d22dh
+dd 03c31dbdch
+dd 0c6f52a38h
+dd 067f26495h
+dd 09785e403h
+dd 00cb8b07bh
+dd 09e073187h
+dd 08b8cd268h
+dd 0424965d9h
+dd 0f7533355h
+dd 0b785e5edh
+dd 091ebc37eh
+dd 0fde5a57ah
+dd 00244c493h
+dd 035349e39h
+dd 0894c482dh
+dd 0db8016a7h
+dd 06177d267h
+dd 0ad870716h
+dd 06e8c29f8h
+dd 0951f3bffh
+dd 0a764f122h
+dd 0473c0cf2h
+dd 012df262ah
+dd 0b26e4d46h
+dd 0ed6588e7h
+dd 032226fd3h
+dd 09c97f6b4h
+dd 0c65ed804h
+dd 003cc7904h
+dd 0fbd22606h
+dd 0aac2abe1h
+dd 02ab42b80h
+dd 0da63b72ah
+dd 07df31090h
+dd 064799485h
+dd 0c951ecf2h
+dd 08163355eh
+dd 09b1c3bc0h
+dd 0eb3b2b0dh
+dd 09503a99eh
+dd 08ece9146h
+dd 0d36d1dbch
+dd 0e172475bh
+dd 09d397d85h
+dd 01a75f401h
+dd 0b7227c04h
+dd 059d9f22fh
+dd 0017ec303h
+dd 07558f65ch
+dd 04084350bh
+dd 0286fdf7ch
+dd 0af65165fh
+dd 0c35476e0h
+dd 0bd49d89dh
+dd 0099a0d4bh
+dd 0a2fb884dh
+dd 002345bf8h
+dd 03499e4bch
+dd 0fe4c95c5h
+dd 02e32de33h
+dd 003b9035bh
+dd 006f5aaa1h
+dd 0c1bd2561h
+dd 0eb000251h
+dd 07d234295h
+dd 0a80e2351h
+dd 07cdaf745h
+dd 0184df536h
+dd 05df7222ah
+dd 0d210e20eh
+dd 01cbbcbceh
+dd 01a27aef6h
+dd 004f760a1h
+dd 0a2d2e815h
+dd 038d168a5h
+dd 0fcb46c0fh
+dd 09615368eh
+dd 030e4275fh
+dd 077085a20h
+dd 0c33b82e7h
+dd 0c16124d5h
+dd 016d57a86h
+dd 06b87b96ah
+dd 02aa64737h
+dd 03f7b43d3h
+dd 084b5fdcfh
+dd 09df1a65bh
+dd 054a39dd5h
+dd 02a44ed9bh
+dd 0909d140dh
+dd 055a24614h
+dd 06a0080c3h
+dd 0c76cacaah
+dd 00f2b0b8ch
+dd 0527bf7dch
+dd 022e74235h
+dd 026f76702h
+dd 0eb5627d0h
+dd 0f62646b0h
+dd 0ddace0b9h
+dd 08c230470h
+dd 0bf89f91dh
+dd 014b97dc6h
+dd 0d0794e14h
+dd 08962abdfh
+dd 097f68e61h
+dd 000d8a0d3h
+dd 00c2ad0ceh
+dd 000fc5ac8h
+dd 07662f42fh
+dd 03eb6017eh
+dd 0f44fc869h
+dd 00f085a54h
+dd 09efd083ch
+dd 05237ced8h
+dd 09ed110ffh
+dd 058e8cd21h
+dd 0c3f4ca04h
+dd 012d6339eh
+dd 0e439b414h
+dd 06e0c204dh
+dd 0422bd561h
+dd 07c46d3c9h
+dd 004e835bdh
+dd 03e1bfe6bh
+dd 087f99beeh
+dd 0d6c9a771h
+dd 0268ae2f5h
+dd 035018f59h
+dd 0ebef10e3h
+dd 0d503190fh
+dd 01f4e43c4h
+dd 0611ec27fh
+dd 04cf8ec91h
+dd 0bb7968a0h
+dd 0f9627850h
+dd 03f52c332h
+dd 058f6eb13h
+dd 036ab4f34h
+dd 05330293ah
+dd 050cccb38h
+dd 06087279eh
+dd 0431f1d34h
+dd 0cfeeafe0h
+dd 073121bafh
+dd 02bb26131h
+dd 041a682cch
+dd 0824cd612h
+dd 09ff2625dh
+dd 0b9bc9cech
+dd 04359d63ah
+dd 07761e357h
+dd 04f5e7162h
+dd 03e48355ah
+dd 073f44e47h
+dd 0bbed259fh
+dd 044c930d8h
+dd 0a7a5b910h
+dd 0f748b9c9h
+dd 0dc9a54e3h
+dd 01ff33b53h
+dd 03cc0fa07h
+dd 0c5150dd9h
+dd 03bac0cf3h
+dd 06c691eaah
+dd 05571b0b1h
+dd 0883de003h
+dd 0a363f3a5h
+dd 062250025h
+dd 09d17db01h
+dd 0d86033e6h
+dd 02db0dcddh
+dd 01a099037h
+dd 0ae41298eh
+dd 0faad6344h
+dd 05bfbef7fh
+dd 0200c5915h
+dd 0eeb56c43h
+dd 03b7a17e4h
+dd 0d5ff6899h
+dd 0f4d51099h
+dd 00e1baccbh
+dd 076382845h
+dd 0d96b99eah
+dd 084320424h
+dd 0c14975edh
+dd 00521e19fh
+dd 07d5fab51h
+dd 0529e51f3h
+dd 04eb22bc2h
+dd 0f9b11792h
+dd 0716e81b8h
+dd 0cd20c723h
+dd 0bfdb109bh
+dd 0d11f1531h
+dd 0182ba400h
+dd 0b40cf388h
+dd 04784af12h
+dd 0c5bc4ffbh
+dd 0d21caaaah
+dd 0b2ac3e34h
+dd 081f45a0dh
+dd 0c0f670e1h
+dd 0e56fb796h
+dd 0fb42becfh
+dd 0f09cb5e4h
+dd 05affa052h
+dd 0866ce8a3h
+dd 0f4517a93h
+dd 08ab6d47ch
+dd 01986e07fh
+dd 0613f3805h
+dd 0426493d1h
+dd 09d267ef3h
+dd 0a6fb337bh
+dd 037e3df36h
+dd 01756cc29h
+dd 0ccfffc62h
+dd 0305c52d3h
+dd 085b6e9aah
+dd 0a6b98298h
+dd 09a4f0073h
+dd 0b187e9feh
+dd 0569cbca8h
+dd 0888142d4h
+dd 0ac9ea008h
+dd 0d11e5286h
+dd 00611ff3bh
+dd 0ca97bfe0h
+dd 05196262eh
+dd 0bb0b9869h
+dd 07cb0d270h
+dd 00eafa235h
+dd 0dd6e45f1h
+dd 06c74c399h
+dd 098a6aa8fh
+dd 0a9014bffh
+dd 04a2ab1b4h
+dd 02d4f6ce0h
+dd 0a9485b7ah
+dd 076fa28c4h
+dd 02944f6eeh
+dd 0e838b8beh
+dd 030dd54c7h
+dd 04b935c3ah
+dd 09286ec06h
+dd 08ccb5309h
+dd 0e9c49d04h
+dd 0607a698ah
+dd 0f6edb3c6h
+dd 033650849h
+dd 0d9abd2c7h
+dd 076c9ac11h
+dd 00d50c635h
+dd 09519eea9h
+dd 05fa20483h
+dd 0034a6ecch
+dd 02ef94ae5h
+dd 01a89aff7h
+dd 0f023b1f9h
+dd 0d9f61aech
+dd 036246360h
+dd 0e0c7d179h
+dd 005017608h
+dd 0272b18c0h
+dd 01055a153h
+dd 08dc4376dh
+dd 066ed901dh
+dd 03265438bh
+dd 07ca39005h
+dd 08baa2773h
+dd 07f0e5c90h
+dd 0896f4ea7h
+dd 0f06cc23ah
+dd 01d50c0c1h
+dd 0da53cbbbh
+dd 03ed00919h
+dd 0b976c4f9h
+dd 0655eb416h
+dd 0b6d9a8c7h
+dd 08f304168h
+dd 014bfe7adh
+dd 09ba5abbfh
+dd 0b91e81cah
+dd 0ea0efb63h
+dd 0349aa842h
+dd 0d54815b6h
+dd 0196c8372h
+dd 0ea2a3feah
+dd 03c474c27h
+dd 06153c987h
+dd 0fe2ec58ch
+dd 046d27a3ch
+dd 0416af897h
+dd 090bdd1d2h
+dd 019b56740h
+dd 0f15db7adh
+dd 069049e8fh
+dd 01728930ch
+dd 0a80ff960h
+dd 0f6c1a1c4h
+dd 08b0baa4eh
+dd 0b976f2aah
+dd 0bab67562h
+dd 07655b87eh
+dd 0ac8f8eb7h
+dd 07d734697h
+dd 06e3e9e39h
+dd 070ad9ebeh
+dd 0b8375f25h
+dd 03c800aa2h
+dd 00d353fd4h
+dd 0e0ddfee3h
+dd 0266df0edh
+dd 0b55852d7h
+dd 0b8b3ed12h
+dd 0b4a245e9h
+dd 0432574ebh
+dd 0f4a8f197h
+dd 02882b274h
+dd 0d5855fbbh
+dd 0e9671945h
+dd 0b0a45c76h
+dd 089779329h
+dd 03b60219ch
+dd 05e1aeaf7h
+dd 06ba2bdfah
+dd 005f31a88h
+dd 076ac760eh
+dd 02cd46e9ch
+dd 051dc62b5h
+dd 0f81554cch
+dd 0cbfd9e7dh
+dd 09922d7e3h
+dd 0fb7dfa20h
+dd 0d9d22145h
+dd 0a7697580h
+dd 09af4243fh
+dd 09ba89fe4h
+dd 0db295140h
+dd 0b2c4b55ah
+dd 0713b3dbch
+dd 0041c7120h
+dd 0120eb360h
+dd 0ff9d74ebh
+dd 0d53a93fdh
+dd 0b4633766h
+dd 0c67c262eh
+dd 054e0edb4h
+dd 037920694h
+dd 0062dfc73h
+dd 0f7eb91edh
+dd 001b4f04eh
+dd 0caaf40f3h
+dd 01ad8ec2eh
+dd 0a64de8cfh
+dd 05a286d49h
+dd 057c87e92h
+dd 08f0d95aah
+dd 0fc29a37ah
+dd 07fe7aae2h
+dd 0b4858120h
+dd 03d30f32eh
+dd 02af11f7dh
+dd 0b4a89da2h
+dd 0a15c4509h
+dd 0b08f52b0h
+dd 0ee796422h
+dd 099a752d0h
+dd 0313ee151h
+dd 01873b7b4h
+dd 0c496ca60h
+dd 0e54e35eah
+dd 09fd9fe28h
+dd 0d574d5fch
+dd 063f28de2h
+dd 08bf195c8h
+dd 0194a1f89h
+dd 07e8e34dah
+dd 0deb03430h
+dd 066d4700ch
+dd 0646a289eh
+dd 0462804deh
+dd 0f3876d43h
+dd 05c839e2eh
+dd 05a2799d8h
+dd 0c1e01d09h
+dd 0383bdf3ch
+dd 02dbb4e3dh
+dd 0aa8dafc9h
+dd 07c3e6f8dh
+dd 0a9782c5bh
+dd 085af3518h
+dd 0989cbae0h
+dd 0b911e912h
+dd 072c5b51ch
+dd 07300572ch
+dd 05bccf756h
+dd 0e9646f37h
+dd 003e9b155h
+dd 08407c710h
+dd 05929892dh
+dd 094e05b57h
+dd 0144034d0h
+dd 04161c93ah
+dd 027e1a193h
+dd 0f839914ah
+dd 0bb5dc4d8h
+dd 0cc5a99d0h
+dd 07f3550c4h
+dd 010e1e7f8h
+dd 032fa2c60h
+dd 0ab5f9902h
+dd 0161dcd92h
+dd 0fd2941e5h
+dd 04bbc6048h
+dd 0566366b4h
+dd 0d4ec8e44h
+dd 0bd792529h
+dd 0b8267d00h
+dd 0b44ec0d0h
+dd 0883d3918h
+dd 0285f6217h
+dd 0d14a80b3h
+dd 05a6d474eh
+dd 000ca86bbh
+dd 0da861bc1h
+dd 06eb27e9fh
+dd 04d576ac0h
+dd 04210c886h
+dd 0eb3d9e8bh
+dd 0c0c910f0h
+dd 03dadf213h
+dd 01a232c05h
+dd 05c681950h
+dd 0fa07f75eh
+dd 00101287ch
+dd 05c9d5187h
+dd 07867cefeh
+dd 04ddf1c6bh
+dd 06b172c3bh
+dd 086ba76e2h
+dd 0def4365ah
+dd 0e794d928h
+dd 00487fff6h
+dd 06a58557fh
+dd 05aa84c56h
+dd 04f7daa1dh
+dd 003c93ae7h
+dd 0ab350366h
+dd 03e329308h
+dd 083300d10h
+dd 06dc261aeh
+dd 0b3038de0h
+dd 0c9568828h
+dd 03444dcf2h
+dd 024e1f566h
+dd 0fd382635h
+dd 07c933e4bh
+dd 0f0b64a46h
+dd 03e493cc6h
+dd 08bb9dd88h
+dd 04a111e4fh
+dd 0482421b8h
+dd 053b3b915h
+dd 042539840h
+dd 09b4dc50ch
+dd 08383d461h
+dd 094145f46h
+dd 0bc13ce03h
+dd 03aaa3ee1h
+dd 0cfd3a1e9h
+dd 0e4b68dbbh
+dd 078f9eb8eh
+dd 0e4960fd8h
+dd 06e3ccd83h
+dd 06f25afb4h
+dd 0d0b80067h
+dd 0c27f1b4eh
+dd 06afcfefdh
+dd 0260f6f60h
+dd 056c3e17eh
+dd 0235c8a2fh
+dd 059e1c9dfh
+dd 0bec5220dh
+dd 055b4a390h
+dd 0ad78b705h
+dd 0ae423949h
+dd 0469622b3h
+dd 09b47aa84h
+dd 009dd807fh
+dd 0750ecf5ah
+dd 0504399d6h
+dd 08ba6c506h
+dd 08d4d61cah
+dd 02468e40ch
+dd 06acd3042h
+dd 08b9c5be7h
+dd 077b91d69h
+dd 03a0a3573h
+dd 030cfec86h
+dd 07c86d06fh
+dd 0d63ad670h
+dd 0f0b5955dh
+dd 0bc37a3fdh
+dd 0feb139bah
+dd 076f58347h
+dd 0ce0839e7h
+dd 011cdea8bh
+dd 08a1ec6edh
+dd 016769f1fh
+dd 06215395eh
+dd 0a212ed50h
+dd 06e036072h
+dd 02a253398h
+dd 0e03c8fa7h
+dd 0d5489b37h
+dd 03a321555h
+dd 096e9c214h
+dd 049b47c3bh
+dd 086c315c3h
+dd 05be3fb3bh
+dd 051b0d40ch
+dd 06a8a885fh
+dd 0e1268a65h
+dd 094c2461ch
+dd 0f770bb2fh
+dd 0bb7c6d9eh
+dd 0dcb542fch
+dd 021776122h
+dd 020677d43h
+dd 0b32568f1h
+dd 07d7a8ad8h
+dd 05bf32f7ah
+dd 08f355881h
+dd 0957bade2h
+dd 09a007b52h
+dd 09a994d86h
+dd 09b3c4a28h
+dd 0947fe6f8h
+dd 0fdfd88dbh
+dd 0bb7fa086h
+dd 08ef28a63h
+dd 0ba463140h
+dd 00450653ah
+dd 00ac373b0h
+dd 0c1d9c8f4h
+dd 018cc77c1h
+dd 069912ab9h
+dd 003f76367h
+dd 09546861bh
+dd 042d86f7dh
+dd 0162498deh
+dd 0d39793aeh
+dd 06d3c1861h
+dd 01f1e6a16h
+dd 0bdd6dd53h
+dd 0690ccee4h
+dd 0eb38a7cbh
+dd 071f2b5c8h
+dd 0275e457eh
+dd 0d7a1d761h
+dd 042f9d5afh
+dd 08d92889ch
+dd 09554be71h
+dd 04058bfb6h
+dd 09acab37eh
+dd 0302e7368h
+dd 0b1a65770h
+dd 0c5f24fcch
+dd 0834f4670h
+dd 0173c3650h
+dd 00cf0464dh
+dd 0274ee842h
+dd 07e858417h
+dd 0e5972f99h
+dd 09918bcedh
+dd 003b9b2f0h
+dd 0cd6d929fh
+dd 021be9046h
+dd 087974621h
+dd 0567e2c38h
+dd 08ea88fdeh
+dd 0f0ef0fbbh
+dd 0165fb018h
+dd 00f312119h
+dd 0b9ff7b12h
+dd 0f11eaa17h
+dd 0d267a38eh
+dd 0d04e6e01h
+dd 09739d614h
+dd 0c9a588d0h
+dd 0b4b6deb8h
+dd 0844be646h
+dd 0f5b1c3b8h
+dd 0cc7de1d0h
+dd 0d44eca6ah
+dd 0cdbec201h
+dd 078f5806eh
+dd 01dd640e7h
+dd 082e128fbh
+dd 00fa6fda0h
+dd 08fc417b6h
+dd 086382341h
+dd 02b1d8126h
+dd 06627638fh
+dd 07a4161cdh
+dd 073760c39h
+dd 063ffb5e6h
+dd 0ecf78dd1h
+dd 046f1cca6h
+dd 024c23a83h
+dd 020f0c23bh
+dd 0fdef2f63h
+dd 07f7e1c86h
+dd 01c72fcbbh
+dd 000738cbbh
+dd 011cb9752h
+dd 05a7fdc3fh
+dd 02d8454f3h
+dd 02c52d86bh
+dd 091b80634h
+dd 095ae9f08h
+dd 03c51bd91h
+dd 07d80c1cch
+dd 0cf9a9718h
+dd 05caefef1h
+dd 098b23265h
+dd 093009f71h
+dd 0217997bfh
+dd 0644a7bbdh
+dd 010662c10h
+dd 0b2b7132ah
+dd 0ad976c5ch
+dd 0e9228db5h
+dd 0fe9da2feh
+dd 007c69567h
+dd 018259174h
+dd 08297ee06h
+dd 0f7286991h
+dd 09a921f67h
+dd 0bc640189h
+dd 03441f397h
+dd 083c097c0h
+dd 04525bebbh
+dd 085b09918h
+dd 0507400dah
+dd 009960caeh
+dd 06e0ade87h
+dd 001565354h
+dd 03baa4710h
+dd 0a8de464ah
+dd 0481f47b1h
+dd 00dc99fd0h
+dd 088b97322h
+dd 0992f6d2bh
+dd 03d93d465h
+dd 061190d81h
+dd 0bce953e3h
+dd 0c331eb15h
+dd 0f001fc4ch
+dd 01dc7c14bh
+dd 0f25b6fc4h
+dd 0e1c53756h
+dd 0059eec1ah
+dd 018ebeacfh
+dd 03a0052deh
+dd 0d4b1efd5h
+dd 0b81041a0h
+dd 0b1aebaeah
+dd 03b4da447h
+dd 0cf757fc9h
+dd 08242e0b4h
+dd 0bcc83dcbh
+dd 0c3e77227h
+dd 07f4995e1h
+dd 0aa5d3dddh
+dd 01d814b91h
+dd 013b58fbbh
+dd 0baec3192h
+dd 00ad97d3ah
+dd 0732a9f31h
+dd 098782d39h
+dd 0e7f13dbch
+dd 0504f8e03h
+dd 051897649h
+dd 03bf9d520h
+dd 08237cd97h
+dd 028828595h
+dd 0b9ee3bf7h
+dd 046a44bc1h
+dd 00d26b8aah
+dd 03f2e3265h
+dd 09c9a94aah
+dd 0a34b1b7ch
+dd 09aa352aah
+dd 0432cf6c1h
+dd 0e1348852h
+dd 0bf8f1e0ah
+dd 0741ef5e5h
+dd 09f76a9b9h
+dd 044891623h
+dd 09a21a7ach
+dd 0a86234f1h
+dd 05c465753h
+dd 056a91aebh
+dd 02d0bf138h
+dd 0a90f27d8h
+dd 077afb5c9h
+dd 0c88c3d44h
+dd 0fe2539b5h
+dd 02970a997h
+dd 0140fc893h
+dd 05b16cbb4h
+dd 07158398ch
+dd 02f177b5bh
+dd 04313188ch
+dd 0f75ca27bh
+dd 03677828eh
+dd 0c385cd4fh
+dd 057c32ed2h
+dd 0b4ecb7d4h
+dd 055e5c441h
+dd 094172aach
+dd 08db38ec2h
+dd 05fcac379h
+dd 0101c98e7h
+dd 0ca86d9b2h
+dd 01ab184e6h
+dd 0b619d216h
+dd 0a9cbd0b6h
+dd 0c95cbd04h
+dd 0c722c5dbh
+dd 01199c862h
+dd 0e428fcbfh
+dd 098e34ea1h
+dd 006ea3e3ch
+dd 0b04512a4h
+dd 05b43fb4bh
+dd 01c46e0edh
+dd 03eb16131h
+dd 0ada5ecc3h
+dd 024a41e94h
+dd 0d9c2e399h
+dd 0f0f3545ch
+dd 0d77b5dbdh
+dd 04b81e0f9h
+dd 0fcd3e349h
+dd 0164b6c9ah
+dd 0c24f2da4h
+dd 088d45f1eh
+dd 069eefe2eh
+dd 0fd681d05h
+dd 0a297964ah
+dd 08c0441a8h
+dd 079743d23h
+dd 09e3f44f5h
+dd 03aa1a40eh
+dd 0e6b4676eh
+dd 05f6af92fh
+dd 0e8f90b57h
+dd 0a744a033h
+dd 0cc5782b9h
+dd 04789c5abh
+dd 0252a177ah
+dd 00dc306a9h
+dd 0c2532335h
+dd 00376439fh
+dd 0f21063adh
+dd 08d40f57ch
+dd 0bbf44bebh
+dd 022bd5dc4h
+dd 0977078a4h
+dd 0be89f289h
+dd 0ae6e5b5fh
+dd 0fcfa944ah
+dd 0f7ee212fh
+dd 017101e7ch
+dd 0bbf10b6dh
+dd 0aaff5e42h
+dd 07ae8fe1eh
+dd 04ce269f0h
+dd 03f42d904h
+dd 08fad3d25h
+dd 09545c1e2h
+dd 0e3b952d9h
+dd 046b02992h
+dd 063350f48h
+dd 01c0dced9h
+dd 01d22f702h
+dd 0d9a9a56fh
+dd 0edcad587h
+dd 00e11eb7ch
+dd 0bee9c4c8h
+dd 00670ef7ah
+dd 0ea5d1b08h
+dd 02993095ch
+dd 0ce70f50ah
+dd 058aafcdeh
+dd 0e18dc0ach
+dd 075437589h
+dd 0f7ec6905h
+dd 074772575h
+dd 03d10c0b0h
+dd 03ecd7258h
+dd 024abeb2dh
+dd 072eb256eh
+dd 07f175e98h
+dd 0add18ed2h
+dd 0030b2973h
+dd 056067478h
+dd 03e638b07h
+dd 0e1f65361h
+dd 009d74939h
+dd 03566dc6ch
+dd 0b69ef937h
+dd 03316d447h
+dd 0984941e7h
+dd 0c0e7dc0eh
+dd 059afcb3bh
+dd 02ef96b4eh
+dd 0f769aa20h
+dd 095ffbca2h
+dd 0c93a8ac2h
+dd 083e012d1h
+dd 0e41eab88h
+dd 0f4938fd6h
+dd 09bc9d75eh
+dd 042a425b1h
+dd 00c9060ceh
+dd 08852997dh
+dd 0287f8ddbh
+dd 0117be3e6h
+dd 01c70fe8bh
+dd 07fff42adh
+dd 0841a0847h
+dd 0fea9793bh
+dd 02ebd11c2h
+dd 0629a7ee5h
+dd 06fcf5ffeh
+dd 07b811f60h
+dd 00652dfa1h
+dd 0325e0a40h
+dd 08acc5306h
+dd 086a8dbeah
+dd 020af9415h
+dd 05861d8b7h
+dd 0e182c1dch
+dd 0904f89a8h
+dd 0b479c391h
+dd 0dabb0ca0h
+dd 06c98c57eh
+dd 04b2457d8h
+dd 06d3fc95eh
+dd 0e9e4f731h
+dd 06969ec6eh
+dd 0a6949be4h
+dd 08fd850f0h
+dd 0e6eb5b85h
+dd 063cc1a99h
+dd 09bbed0b8h
+dd 0421dbeb5h
+dd 02a372e21h
+dd 0fa916e82h
+dd 0a831d029h
+dd 0e8ec9516h
+dd 054240426h
+dd 04a1c3480h
+dd 0aceca97eh
+dd 0fc4ccf5eh
+dd 00c901ae3h
+dd 0488b5821h
+dd 044832029h
+dd 0536ba217h
+dd 089d6540ah
+dd 073700f80h
+dd 0a058edcch
+dd 05fa2a21dh
+dd 08226fdeeh
+dd 0c29f7d2bh
+dd 09bd40a27h
+dd 0ca778f68h
+dd 0ba0d0d9fh
+dd 00c3d7ab3h
+dd 03fb1f082h
+dd 0a03f9983h
+dd 08e2920e1h
+dd 0cad32ec3h
+dd 003067890h
+dd 014111e80h
+dd 0fe1dee56h
+dd 0b2c53b49h
+dd 0bac5225eh
+dd 0df65335ah
+dd 0fe647c53h
+dd 09290c105h
+dd 078d74e4bh
+dd 0cf666020h
+dd 033a02f44h
+dd 00e08aa2fh
+dd 00173754dh
+dd 0bedf78f9h
+dd 05a74b92ah
+dd 033b79ce1h
+dd 076ad1951h
+dd 03c7f2c88h
+dd 008a53289h
+dd 068a77e24h
+dd 09bb55fech
+dd 0de6bf261h
+dd 0ee2d9de0h
+dd 02d642462h
+dd 06ac36844h
+dd 0f55e9321h
+dd 01765ed96h
+dd 0a350c969h
+dd 093715767h
+dd 0cce45d1eh
+dd 0dc94b5fbh
+dd 01aa20138h
+dd 027e96186h
+dd 0dd5e84bah
+dd 01d72122dh
+dd 057b7e8f8h
+dd 07b81afb3h
+dd 0757c1731h
+dd 04d3738bch
+dd 0f426d79fh
+dd 0823eb716h
+dd 0a2de037eh
+dd 06716d7fch
+dd 0937475b4h
+dd 060872c82h
+dd 0f13ef51ah
+dd 0cfca5eb4h
+dd 039611320h
+dd 0be7a5d46h
+dd 0b1cadaf1h
+dd 04134bf42h
+dd 06aac1880h
+dd 017501207h
+dd 0a85e5c74h
+dd 01352563dh
+dd 06de589e4h
+dd 0d364f4a9h
+dd 0fc8f1a51h
+dd 0b43dd8f1h
+dd 04be57f82h
+dd 0da7bd100h
+dd 098889515h
+dd 0ebc2b5fbh
+dd 0db45fd7ch
+dd 0648fef8ah
+dd 07269a9e6h
+dd 038fefb6ch
+dd 0409b21ffh
+dd 094d8a6b0h
+dd 0e9b81809h
+dd 0b25d8333h
+dd 004981ed0h
+dd 0936f9aa5h
+dd 069d2a1cfh
+dd 01bd52a1fh
+dd 0690d5909h
+dd 0307c923dh
+dd 0e77b0f5ah
+dd 07bd63195h
+dd 09083109eh
+dd 0019f3761h
+dd 05ddacb9eh
+dd 0b85b13d2h
+dd 0b83fa217h
+dd 02744382bh
+dd 03d4693deh
+dd 0f6f925cch
+dd 0418d78d1h
+dd 07969899eh
+dd 0c5312d44h
+dd 0d0a00c6ch
+dd 07b52c003h
+dd 08c8ea723h
+dd 0a9d7d5aah
+dd 000ff0ee8h
+dd 0bad42b4ch
+dd 0ba591551h
+dd 0722ab16ch
+dd 00dc0496fh
+dd 0f9751d3bh
+dd 045f019dah
+dd 05097114ch
+dd 069da3110h
+dd 0ef22837dh
+dd 08a00800dh
+dd 0396e0e30h
+dd 0598490fbh
+dd 0c20b0780h
+dd 05551e4f1h
+dd 03eac3ad7h
+dd 037ccd1e0h
+dd 0ef29cf07h
+dd 0f4b23de8h
+dd 0a7934b5dh
+dd 0740c9ae4h
+dd 0b4174629h
+dd 0391b90b1h
+dd 01fef5cdch
+dd 07d82d3eah
+dd 09c3362a4h
+dd 073644044h
+dd 056ea0aeah
+dd 09ab69f29h
+dd 03de007d0h
+dd 0d5964648h
+dd 06f507374h
+dd 09dfa51c7h
+dd 0de97bcf2h
+dd 056e8443ah
+dd 0ae8ecd75h
+dd 06c8ea634h
+dd 065a51642h
+dd 05469f02dh
+dd 0d982d860h
+dd 06812d97eh
+dd 01c0743c3h
+dd 0d6a5dc6ch
+dd 0ef45f32eh
+dd 0d7eb8ad3h
+dd 0bf9b814fh
+dd 07ba25b43h
+dd 02e501a9ch
+dd 01f90545dh
+dd 01358660fh
+dd 0f58a6754h
+dd 06dbb7829h
+dd 0fa71cd4fh
+dd 0b64094fdh
+dd 0bbcbbd08h
+dd 0fdb98276h
+dd 058f9cc5ah
+dd 0db60868ch
+dd 066935131h
+dd 0f9d1f892h
+dd 02c79a84bh
+dd 0aa0793a1h
+dd 0d40c9109h
+dd 0874c37e2h
+dd 028616808h
+dd 071241822h
+dd 0ce3e02afh
+dd 041a85acfh
+dd 09e908a2eh
+dd 0b28a6d6eh
+dd 0c8791ab7h
+dd 04418bdf5h
+dd 0853feafch
+dd 0b68c2b66h
+dd 03f0fdaf9h
+dd 0a161a9f9h
+dd 00b5f3e1dh
+dd 0a81400e5h
+dd 058c3df40h
+dd 07237fbc7h
+dd 0670d0125h
+dd 02d137ff5h
+dd 0df8363adh
+dd 03347cdd6h
+dd 036ffbfc2h
+dd 09a9ded10h
+dd 037c03206h
+dd 0ac4a1fb5h
+dd 0b5dd536bh
+dd 0a052b071h
+dd 01aa1dd7fh
+dd 06c682d25h
+dd 047aa26d8h
+dd 0a9b12cebh
+dd 0f781d099h
+dd 03065187ch
+dd 001502660h
+dd 0e881aba1h
+dd 0d7f1661ch
+dd 0cf34537bh
+dd 0d0e89ce7h
+dd 06fbdf04fh
+dd 0ad8aaa2bh
+dd 0bd33330ah
+dd 060f3a4abh
+dd 0c8b41838h
+dd 075dcd8f9h
+dd 0122c6d49h
+dd 07a50a948h
+dd 0e80e8a0fh
+dd 061aac714h
+dd 04981b03ch
+dd 067b6532fh
+dd 0d9c94ea6h
+dd 02416968fh
+dd 022809d0eh
+dd 0aa35f63eh
+dd 0fd497b82h
+dd 0cd9046f9h
+dd 025127fbch
+dd 06fc54146h
+dd 0e49f2ceah
+dd 0a40662a4h
+dd 077a0ec7ah
+dd 00439489bh
+dd 0df12abffh
+dd 083e1705eh
+dd 043836e45h
+dd 01220546ah
+dd 0853b04edh
+dd 0e02bc31ch
+dd 06c09924fh
+dd 06930e909h
+dd 0ec91f6ceh
+dd 0cc4dd355h
+dd 0f2de10f8h
+dd 0930f45f9h
+dd 0260429b9h
+dd 0cb5a24cbh
+dd 0716641b2h
+dd 006efd92fh
+dd 02c5ee0bah
+dd 07b1fb33eh
+dd 08031034dh
+dd 0e1bd2422h
+dd 0ed0cbb6ch
+dd 01e0e1bc2h
+dd 0f258d500h
+dd 0cf82da15h
+dd 0eae50b42h
+dd 0e08d650eh
+dd 0f0411c7ch
+dd 0112a98f4h
+dd 0cc615ad8h
+dd 032b7bef3h
+dd 0009586a3h
+dd 0c019e528h
+dd 0ecd35202h
+dd 02694bc1bh
+dd 054e185e9h
+dd 0680e75c5h
+dd 027936baeh
+dd 01a2f15dfh
+dd 0d2e6fb7fh
+dd 048e4cd0bh
+dd 0e3d98315h
+dd 0ff4b19cdh
+dd 012a8c85dh
+dd 0d018e642h
+dd 02735f546h
+dd 0310d1a9bh
+dd 0da9cedfbh
+dd 09de086b0h
+dd 0475b13e4h
+dd 03e5412b3h
+dd 09ef702f8h
+dd 0ddb54595h
+dd 0d0ab18eah
+dd 08cfdb6a5h
+dd 0d93a728fh
+dd 0261d56e9h
+dd 04324263bh
+dd 0ac951782h
+dd 0e9756867h
+dd 0cf76ece3h
+dd 025646295h
+dd 0e7888a87h
+dd 005aed4d1h
+dd 08cba1f20h
+dd 0269c66ceh
+dd 08692d24fh
+dd 083c77a09h
+dd 0369fd986h
+dd 042f81400h
+dd 0bfdca907h
+dd 07c0df624h
+dd 0e254f282h
+dd 084d511dfh
+dd 06bfd01a9h
+dd 077a240adh
+dd 0f25223d6h
+dd 0692c098bh
+dd 05be572cch
+dd 0a56ac784h
+dd 0998d1791h
+dd 000a866f5h
+dd 0a65b21c8h
+dd 072607310h
+dd 0f49849bfh
+dd 0c4659b35h
+dd 017c14360h
+dd 0df003bcfh
+dd 046b5c001h
+dd 042d627dch
+dd 05857feedh
+dd 04757fd9ah
+dd 04c481f0eh
+dd 036a96897h
+dd 0b1697f83h
+dd 097e276eah
+dd 0a5f20e2ch
+dd 0ff4ab052h
+dd 08faebc26h
+dd 0179828fah
+dd 0b04cdc80h
+dd 03ce870cfh
+dd 0ec10d3fdh
+dd 0649ccca5h
+dd 0ad8d7c5ch
+dd 0223f5506h
+dd 0cf6b6ba8h
+dd 0818fc143h
+dd 08a70c6ddh
+dd 042e91e4eh
+dd 08e785498h
+dd 098860ed7h
+dd 00ee918d4h
+dd 07a9192d6h
+dd 08ed46ae8h
+dd 0c8a856fch
+dd 0bc943519h
+dd 00e624302h
+dd 0b517f3beh
+dd 0aec3a37bh
+dd 0332c4ccah
+dd 021331d55h
+dd 08628d4deh
+dd 0e74e80d8h
+dd 093464981h
+dd 0c5aaf654h
+dd 05570cd0fh
+dd 0d2ad48b4h
+dd 08309c92fh
+dd 00b467a7dh
+dd 0992d8c80h
+dd 04c848e05h
+dd 02faa4241h
+dd 0f098b827h
+dd 0b554c065h
+dd 0b95ad922h
+dd 0a5011a74h
+dd 040791c76h
+dd 0a07ae2d4h
+dd 0dc9f18feh
+dd 04866424eh
+dd 03a094bb7h
+dd 0479cd4cfh
+dd 031e83c35h
+dd 0af8690aeh
+dd 04b4e370bh
+dd 046e3c93fh
+dd 05f11b4ceh
+dd 0bb57a2fdh
+dd 0af08df43h
+dd 0020bef3fh
+dd 0568ad4a4h
+dd 07e3243d9h
+dd 0c3fa6f32h
+dd 0e202e3ach
+dd 01cd731a4h
+dd 0a418fdb8h
+dd 07cad0bc6h
+dd 0d134df14h
+dd 062f8b3f7h
+dd 039c19bcfh
+dd 0936de626h
+dd 0b0335b64h
+dd 00278e363h
+dd 014cff5e0h
+dd 0f01fd25fh
+dd 04facf62eh
+dd 037155406h
+dd 09bd1a676h
+dd 00372b717h
+dd 063581c36h
+dd 0afda50b4h
+dd 06ea14286h
+dd 0c7ab0bc9h
+dd 0db4c35c6h
+dd 03c4ca8b6h
+dd 05e66e649h
+dd 0749f6151h
+dd 0eff99626h
+dd 08126a35fh
+dd 0bdaa00ebh
+dd 093f9090fh
+dd 07fdcdc09h
+dd 08fe2ba1bh
+dd 0f9a7cffch
+dd 052906f25h
+dd 07e65973fh
+dd 066be0190h
+dd 0cd5f8cech
+dd 015c150e3h
+dd 02d2c0968h
+dd 048ab301ah
+dd 0827a49e2h
+dd 0c813d573h
+dd 049f8784eh
+dd 047fc8792h
+dd 05a88a78ch
+dd 08e440384h
+dd 0e6e01cf1h
+dd 0571ef749h
+dd 0025d6603h
+dd 04058ee82h
+dd 01a37f3c1h
+dd 014d88141h
+dd 0e2fe6aa0h
+dd 02b7df8d2h
+dd 063bbffe0h
+dd 0a2690547h
+dd 0561a6c29h
+dd 07eb6cd4fh
+dd 08fdda00ch
+dd 0f874d8c8h
+dd 0143ba04bh
+dd 014b3902ah
+dd 05b6162c1h
+dd 09df4a0beh
+dd 06ed03199h
+dd 0181c1e54h
+dd 09e818232h
+dd 0a60625d3h
+dd 0bffb0ed5h
+dd 086120596h
+dd 094e01744h
+dd 0b6eaf683h
+dd 090ac0e30h
+dd 0a6cac643h
+dd 0b54a9ef7h
+dd 0a7ff29a5h
+dd 0a5b5ee5ah
+dd 02810da38h
+dd 0ab53500ch
+dd 0c48d0b97h
+dd 068d49c0bh
+dd 0c3346f98h
+dd 0c2be97c1h
+dd 0984694e1h
+dd 0e70de754h
+dd 024e50260h
+dd 0c64f5e2dh
+dd 0e15d6adah
+dd 05734bed1h
+dd 033789bf8h
+dd 0e1efa6fah
+dd 0e4db7d07h
+dd 0da342fd3h
+dd 0a6983ba7h
+dd 030d91024h
+dd 02508a8fch
+dd 0dc2abddfh
+dd 08b7dc13dh
+dd 07ee81bb7h
+dd 0108f45cfh
+dd 0a7daac93h
+dd 09859a298h
+dd 0a8458ad4h
+dd 0bb04050fh
+dd 0e7e33364h
+dd 0701a46cfh
+dd 0e433869bh
+dd 0131e7d7eh
+dd 079a80801h
+dd 05d9bbdbeh
+dd 0b7aceaabh
+dd 0260cb226h
+dd 0a3cee4e6h
+dd 04fb24489h
+dd 0c2f622d3h
+dd 0b69f2c4ch
+dd 018e55ac9h
+dd 0f3f0ae8ch
+dd 0c0c4186dh
+dd 0cefa80dch
+dd 0e2f4bce8h
+dd 092b5798dh
+dd 09ebf6a24h
+dd 04f5a6f13h
+dd 0146c9ea9h
+dd 09d248186h
+dd 07ecf788fh
+dd 0e5ed6f59h
+dd 0cfa8d24eh
+dd 0fcf2fc57h
+dd 0cf5009ffh
+dd 080a9c682h
+dd 056e51f05h
+dd 0ed3b26a1h
+dd 096f9b35bh
+dd 00583db8eh
+dd 0600d6524h
+dd 0b57eb0b8h
+dd 015da4fc0h
+dd 042847fcdh
+dd 04e14f472h
+dd 05b042d47h
+dd 058e44587h
+dd 0cf158d12h
+dd 0755ce4abh
+dd 0b0e3d19ah
+dd 0956348fdh
+dd 0f91c61efh
+dd 0bff9f9e3h
+dd 0d412086dh
+dd 04a04b976h
+dd 0d1c128a2h
+dd 0b3e5cd2ah
+dd 0538b8464h
+dd 04b2ca947h
+dd 0d03ffd9eh
+dd 0ac650398h
+dd 04299dfddh
+dd 04dba4d15h
+dd 0ee63d86fh
+dd 04c2337cfh
+dd 013c08fd9h
+dd 0d31cd595h
+dd 04be20e3ah
+dd 0545aacedh
+dd 00be8b99ah
+dd 05870ad32h
+dd 034fdd6a9h
+dd 081f1e891h
+dd 0ad3b1783h
+dd 09a0bbd0dh
+dd 0a2ef07feh
+dd 0b1a77d0ch
+dd 07db73548h
+dd 0c84fb5cbh
+dd 00c5c09b8h
+dd 08bb92c7ah
+dd 0b039001ch
+dd 0a9537361h
+dd 0776b7bcbh
+dd 0e08512dah
+dd 0dd7a3f03h
+dd 03927fff6h
+dd 06c11d824h
+dd 0f2af38bah
+dd 0f0702804h
+dd 0ca8e48e9h
+dd 09c4871afh
+dd 04995d1eeh
+dd 0887769edh
+dd 0e4bf6e4dh
+dd 01f67c1f4h
+dd 09c6c64d3h
+dd 0136398b6h
+dd 0dcb2a5eeh
+dd 026ad0674h
+dd 0b56e4f74h
+dd 0e4d8abcbh
+dd 03e21284bh
+dd 024a2f35eh
+dd 0c9a0bc7fh
+dd 035b33768h
+dd 03d420625h
+dd 0395d3686h
+dd 07ff6dad4h
+dd 0c6dbc511h
+dd 020d7d1c5h
+dd 0e3309d0ch
+dd 0a6cbaed3h
+dd 07dc53c12h
+dd 0a7cf7103h
+dd 0165efd1ah
+dd 0a30828b7h
+dd 07ce6e7edh
+dd 040bcc42dh
+dd 07bba211fh
+dd 0ac6ac0f0h
+dd 0ef4fb2a3h
+dd 0e9a0d738h
+dd 0de0e28c9h
+dd 010332426h
+dd 044a902ddh
+dd 0235b1c89h
+dd 01843587ah
+dd 0ac8622ech
+dd 0da0adaa3h
+dd 0f179d1d6h
+dd 03a7dfb5bh
+dd 099a0a7bfh
+dd 0e0787ea2h
+dd 0e0137487h
+dd 06ad069ceh
+dd 0f206d52ch
+dd 0891079f5h
+dd 01e8113a0h
+dd 02f484ec6h
+dd 03ec14c63h
+dd 07da2d4b5h
+dd 00c95b270h
+dd 02719a467h
+dd 00c7dc46ch
+dd 002afd2c4h
+dd 0f3ea830ch
+dd 0562600a9h
+dd 0523eda62h
+dd 07d70ac99h
+dd 013efb751h
+dd 00683f130h
+dd 0a07c063dh
+dd 023bf41b5h
+dd 04f803faah
+dd 0a02fa623h
+dd 0d9b798d7h
+dd 01523f7cch
+dd 090911410h
+dd 0f53cf7d1h
+dd 0cfe7bb1ah
+dd 0a7abdc5ch
+dd 07d3999a1h
+dd 0d45040a1h
+dd 0d99ca2e3h
+dd 0c27f7cddh
+dd 0c047e2fch
+dd 02f3f1caeh
+dd 035a138e9h
+dd 047e9fb6fh
+dd 0470a2054h
+dd 0bab872f6h
+dd 0b1e76693h
+dd 0485a41adh
+dd 0b9097684h
+dd 0a2fc010eh
+dd 087306df3h
+dd 00ba27f0dh
+dd 020cff0e2h
+dd 0845d92e6h
+dd 01a34495bh
+dd 04a72249eh
+dd 09ab53319h
+dd 0ae969f63h
+dd 0b329fc98h
+dd 06d9941a1h
+dd 0a0c63408h
+dd 01570d4ceh
+dd 0133c929bh
+dd 03e7bd7b8h
+dd 0a6b1bfc0h
+dd 08fbdf7c8h
+dd 01487c7cah
+dd 0b0c36c08h
+dd 0bc0f2c07h
+dd 0d94906f0h
+dd 0f8ed970dh
+dd 0eb8a90a6h
+dd 04b33f1efh
+dd 01d75e418h
+dd 0693e2cc4h
+dd 0c880e438h
+dd 00f450112h
+dd 0b3617aech
+dd 0cade3333h
+dd 0b6770e63h
+dd 02f1657c3h
+dd 09d88a1deh
+dd 03aaf7570h
+dd 02327fc35h
+dd 0829e7f78h
+dd 0053b9c75h
+dd 07953d0f4h
+dd 032e63624h
+dd 0b20999adh
+dd 07a0666d7h
+dd 06e29c777h
+dd 0637f11f6h
+dd 0691ef1a1h
+dd 009c5e74bh
+dd 042f4fa1fh
+dd 0ad494fc1h
+dd 0d974ac61h
+dd 000070740h
+dd 0c5bd4effh
+dd 090a29756h
+dd 0151b11e2h
+dd 0ac40cb32h
+dd 01ace8bc1h
+dd 0c4e28b20h
+dd 01f51dc7ah
+dd 0694ea749h
+dd 0177ba3f2h
+dd 00b78399dh
+dd 0fee827cah
+dd 0ae4682ceh
+dd 0b7e8804dh
+dd 08ea58c83h
+dd 058a85466h
+dd 0e80212b0h
+dd 015ca8de4h
+dd 06c9507a0h
+dd 08bb94136h
+dd 04750e52ch
+dd 0e4511387h
+dd 04a998e52h
+dd 090e77e2eh
+dd 06a7dcbf8h
+dd 0f0daee48h
+dd 0e9ad07bah
+dd 09964cd2bh
+dd 0ee107a36h
+dd 088c4735fh
+dd 0da9cea71h
+dd 0f9090d23h
+dd 0c0d8e94ch
+dd 0d1f91164h
+dd 062e8c935h
+dd 028458784h
+dd 0ce10fdb2h
+dd 09ef15640h
+dd 0606eb5e5h
+dd 0510fc922h
+dd 0047f54aah
+dd 05df011c5h
+dd 00a1cbf9eh
+dd 095c63941h
+dd 08b754e03h
+dd 0224150c8h
+dd 0ed9ef9adh
+dd 085793c4dh
+dd 036e5c9bbh
+dd 07aa4750fh
+dd 024c939b3h
+dd 0d1657956h
+dd 0013b8a8bh
+dd 0e83c7516h
+dd 0bde41918h
+dd 065fb84bbh
+dd 0a1da0f77h
+dd 0d57ab797h
+dd 0a056c421h
+dd 016ca7d11h
+dd 0965f4adeh
+dd 03c6f3857h
+dd 0ee8dba6ah
+dd 046c86abch
+dd 05eb96cb8h
+dd 0dc859f20h
+dd 049d2a9bfh
+dd 048c12153h
+dd 076d1d126h
+dd 0ec616ddah
+dd 04cd7859bh
+dd 04403b85bh
+dd 0ccbcc2b2h
+dd 0ad044867h
+dd 0774792f4h
+dd 090ba00e2h
+dd 013515ef9h
+dd 05131cd14h
+dd 0b3b4ef51h
+dd 056c21e6ah
+dd 0fa5e1a7fh
+dd 0d81075edh
+dd 09fb6a034h
+dd 082d49a29h
+dd 05fc95e25h
+dd 0b62c3ddeh
+dd 026efd5d2h
+dd 0574f28f2h
+dd 060f056f2h
+dd 0184a9870h
+dd 0b0b49cc4h
+dd 0f25dbe48h
+dd 0a3e9379fh
+dd 04779e5a3h
+dd 0692598feh
+dd 0baa3cf2ah
+dd 0c17078c6h
+dd 0863a10b7h
+dd 0f6b5e60ah
+dd 0978ae57ah
+dd 0b12b0de9h
+dd 07dea0ab6h
+dd 09ca11284h
+dd 09d0e8ef4h
+dd 0d8c2d154h
+dd 0ee0a428fh
+dd 0db1a46fah
+dd 0171cf1fch
+dd 01e393ba1h
+dd 096bb3d09h
+dd 00aa0f134h
+dd 0ef6f4e46h
+dd 0ef91c126h
+dd 07d2d46f8h
+dd 0d578db97h
+dd 03a6aa5d3h
+dd 03829dc9dh
+dd 0c8149ba0h
+dd 00f668d09h
+dd 032146eb9h
+dd 0da047572h
+dd 0be36515eh
+dd 07a73fc48h
+dd 0831c937ch
+dd 03f9dfe2dh
+dd 0c8810c8bh
+dd 0aa7452bbh
+dd 0ee96a0b8h
+dd 0f338bd1ch
+dd 03519b86bh
+dd 03d03451dh
+dd 0183bd9e4h
+dd 03da5ccfch
+dd 0d762416ah
+dd 082310e76h
+dd 048dda809h
+dd 0fe444a4bh
+dd 0c4562207h
+dd 011c4c7cbh
+dd 0ce10d81bh
+dd 03285c387h
+dd 0150334b9h
+dd 0cd89385fh
+dd 058c7d45ah
+dd 03fabe2f4h
+dd 020978156h
+dd 0dc2f10e5h
+dd 06549a274h
+dd 0d9026c85h
+dd 0c36a6a4eh
+dd 0cefa95aeh
+dd 0ff12ff44h
+dd 077009bd6h
+dd 059f87445h
+dd 0ef9727d4h
+dd 02e44bf94h
+dd 0f88ece16h
+dd 00ce7b830h
+dd 0cd5560aah
+dd 011c03209h
+dd 0a101fea7h
+dd 0dc8652c1h
+dd 01922a7eeh
+dd 0d09b89a5h
+dd 02127426ch
+dd 01c33e3d9h
+dd 09d8d44b8h
+dd 061db72a6h
+dd 028ef86afh
+dd 0c45961d9h
+dd 0e39f011ch
+dd 05a7d708eh
+dd 0cb8cee22h
+dd 03319ccd3h
+dd 0ceb4e028h
+dd 0bbce149fh
+dd 0c8d87810h
+dd 051f378c7h
+dd 0189c271bh
+dd 0ded0bbddh
+dd 06bb32112h
+dd 0004f1c84h
+dd 0232df379h
+dd 020a892ddh
+dd 00b0f2a0bh
+dd 0d0de73e3h
+dd 02f0ddab2h
+dd 0e4bc71b3h
+dd 0fc222a53h
+dd 00967d73fh
+dd 0cf6864abh
+dd 037b3e03ah
+dd 06123e92ah
+dd 02dda0af9h
+dd 049c86a5fh
+dd 0fcf8cac5h
+dd 0e91da38ch
+dd 09fd901e0h
+dd 0728c1805h
+dd 088811e93h
+dd 097902afeh
+dd 083917b38h
+dd 031b7975dh
+dd 0b4aac583h
+dd 01aa8e510h
+dd 0224d120ch
+dd 053e1ddbch
+dd 054296ac2h
+dd 034e70b9fh
+dd 023b99c73h
+dd 031d56f8eh
+dd 0c8309094h
+dd 041bf86cbh
+dd 04b3ca5a6h
+dd 0c4de122ch
+dd 0e17b15f5h
+dd 0e1ef59e0h
+dd 071b65289h
+dd 058f22ac9h
+dd 07d289a1ch
+dd 0ab23d0afh
+dd 0ff8a0d2fh
+dd 0eb247e20h
+dd 0c73d1713h
+dd 0a6bda87bh
+dd 0c45a783ch
+dd 06b1cb598h
+dd 0840ac43dh
+dd 0e144ff72h
+dd 06b9e1f49h
+dd 0ababb151h
+dd 0bb6f5ccfh
+dd 0cb572cc2h
+dd 0a93e4e36h
+dd 0f6a00c64h
+dd 003d75129h
+dd 04522d78dh
+dd 03e76a11eh
+dd 053c555a3h
+dd 0e69cbd35h
+dd 0d4b50abfh
+dd 0c9a00308h
+dd 0f6d64513h
+dd 0e8792d08h
+dd 04fc80863h
+dd 0ec0a73b4h
+dd 070c8b6ceh
+dd 0b33482dah
+dd 0c2f8db3bh
+dd 08739617ch
+dd 0d3730b75h
+dd 0ab1044afh
+dd 036901d71h
+dd 02a325600h
+dd 016ed0a1ch
+dd 07b17b5aeh
+dd 00e583e52h
+dd 00c8d9a83h
+dd 0287a7b99h
+dd 0fd893be4h
+dd 0fe08e34bh
+dd 03b51a322h
+dd 0492e22a9h
+dd 035408f3ch
+dd 03f18d1d1h
+dd 02778cccah
+dd 0dc9604ebh
+dd 0273a8ea2h
+dd 062969871h
+dd 0bc4c209fh
+dd 044fd68bbh
+dd 0224b3f7dh
+dd 0544faac0h
+dd 0ca3994bbh
+dd 07949ba33h
+dd 08705b4a0h
+dd 0344d610ch
+dd 007ab9f5bh
+dd 0448e94a0h
+dd 0507ba1dbh
+dd 07cc951c4h
+dd 0381fc494h
+dd 0d0bf574fh
+dd 09a77e640h
+dd 04f980f70h
+dd 0aaf6ed2dh
+dd 0e5ae2291h
+dd 0119b3be1h
+dd 05d69ac25h
+dd 0dad96acfh
+dd 04a4e7582h
+dd 0acd21d22h
+dd 081675f62h
+dd 0fec63c76h
+dd 077990e09h
+dd 05c5ca643h
+dd 0e5e9f137h
+dd 08f6accedh
+dd 0972c6ae4h
+dd 04bce5c9dh
+dd 02176ed5dh
+dd 00b9708f4h
+dd 062a5384dh
+dd 059b5766fh
+dd 066859180h
+dd 0b28d2c6ah
+dd 00c02f8b0h
+dd 0229f874ah
+dd 0829f6903h
+dd 0a4057f72h
+dd 0083655a6h
+dd 034dc1acbh
+dd 06dd65f8eh
+dd 0a56d40cbh
+dd 028ee2b60h
+dd 02640a501h
+dd 0f6a29919h
+dd 05271da47h
+dd 0ecedc6a7h
+dd 09c36c433h
+dd 0abe2cb6ah
+dd 0acb74c93h
+dd 0d6cb98d1h
+dd 09d7be7b6h
+dd 0fd146f9dh
+dd 0b2d685ebh
+dd 0681416ach
+dd 0eab41e65h
+dd 0e80296afh
+dd 05ffef59ah
+dd 0add696b2h
+dd 0f6b6d9d3h
+dd 0f8954843h
+dd 0fb50fcach
+dd 04149467bh
+dd 0271b723fh
+dd 0e27fbaddh
+dd 00f5fa44eh
+dd 00f4f47e0h
+dd 00523c579h
+dd 0ae517d31h
+dd 0d0a27337h
+dd 07dba9de9h
+dd 0d3fa1f30h
+dd 0c31a8a77h
+dd 06f7c96d1h
+dd 0abd3dbe8h
+dd 0c0fbf1a4h
+dd 097f950adh
+dd 064eb2de8h
+dd 04ad96bbbh
+dd 00468c675h
+dd 02a56bc17h
+dd 0dc9f4502h
+dd 066733922h
+dd 0b8f430cdh
+dd 0217cbbaah
+dd 096e838bdh
+dd 00dfe4408h
+dd 03cafd9bdh
+dd 0956205beh
+dd 05537fb4ch
+dd 0fcced792h
+dd 0157dbc99h
+dd 097d14ccdh
+dd 04c9336dbh
+dd 0c51fe582h
+dd 084a7e84ch
+dd 0bdd5a10fh
+dd 0a1a71d39h
+dd 0f68fba5bh
+dd 0c7e9c52dh
+dd 06776bbcch
+dd 074cf77efh
+dd 0a7c3e1e9h
+dd 015485b99h
+dd 0431a2fa9h
+dd 06e21d518h
+dd 0a12c17f2h
+dd 0f01ca7b9h
+dd 0ce3df3a7h
+dd 009a11ea0h
+dd 0fbb34fcfh
+dd 0b8ff2880h
+dd 05ae52872h
+dd 011a9e6ddh
+dd 0b37a1be0h
+dd 09436c14ch
+dd 0eae72fcdh
+dd 0e75aec79h
+dd 04acebb96h
+dd 0b5bbe660h
+dd 0a4da9fd3h
+dd 0ac7f2413h
+dd 0c2650ba8h
+dd 0f7063d87h
+dd 06521c53eh
+dd 0cb6b3e5ch
+dd 09eb3b81fh
+dd 0e4f1e03eh
+dd 0e5bdec6eh
+dd 059249ff0h
+dd 0fd0f66ffh
+dd 0115b4504h
+dd 0ad237306h
+dd 0e9d36924h
+dd 01e6b0c72h
+dd 0cb0291a3h
+dd 0da4c18ebh
+dd 0ab9b31eah
+dd 0310d8b83h
+dd 0ae6d14a2h
+dd 02e4d401ch
+dd 08d4a7832h
+dd 09c2ffa1ah
+dd 01bdc273dh
+dd 030058f28h
+dd 02da64bafh
+dd 04aa368afh
+dd 033e9a6f5h
+dd 00867e939h
+dd 03087fbf8h
+dd 03684d0b6h
+dd 0829a682dh
+dd 0fecfdca3h
+dd 034ce886fh
+dd 0e0ce90abh
+dd 01ba5b177h
+dd 0f8861051h
+dd 0905f300ch
+dd 08bd77673h
+dd 0934ce31dh
+dd 0064357b1h
+dd 0ac858d1ch
+dd 09f607e8dh
+dd 032484b57h
+dd 0fc8301c3h
+dd 04df14230h
+dd 085deea3fh
+dd 0b5a54272h
+dd 0bb3ca77eh
+dd 0978bcf23h
+dd 09245157dh
+dd 0fd651d1ch
+dd 034ae6c22h
+dd 03d98b1c8h
+dd 005214144h
+dd 0914d11c5h
+dd 0ef0b971ah
+dd 03cc6ac8dh
+dd 09d6f6b8ch
+dd 052bee1e1h
+dd 001965cfdh
+dd 075c49e8eh
+dd 01ffa7bb0h
+dd 0b38c5f60h
+dd 0882c5c97h
+dd 0d3db3f1ah
+dd 0f2f9a7ach
+dd 0b92b016eh
+dd 041a69679h
+dd 0bf26ec26h
+dd 0e652c01eh
+dd 0ee18a6c9h
+dd 0529ded61h
+dd 095ed7dd4h
+dd 010f98aadh
+dd 0f3de7eb9h
+dd 0dc3775dfh
+dd 0a72fbf73h
+dd 00ffed3b2h
+dd 075ac4139h
+dd 02761e138h
+dd 00546bfe0h
+dd 062e1a703h
+dd 0b25e7e78h
+dd 079ed2d10h
+dd 02f098810h
+dd 09b270139h
+dd 0ce8052edh
+dd 0cd836223h
+dd 0ee437a3dh
+dd 0858194ech
+dd 0642627c6h
+dd 061f5e24dh
+dd 038f4e58bh
+dd 0fc18eafeh
+dd 072384c62h
+dd 08bded737h
+dd 0015e079eh
+dd 0e811918fh
+dd 0a01a1294h
+dd 095a31688h
+dd 0275e25f8h
+dd 097639d42h
+dd 046b29f8fh
+dd 0c8dfdf4fh
+dd 07e4ae5a7h
+dd 0cb98675eh
+dd 0b1d833f5h
+dd 05b9bc10dh
+dd 0d2be9668h
+dd 0ee1b79c0h
+dd 0a779c3aeh
+dd 0b5ce3808h
+dd 02bd6adb0h
+dd 04d8e5fb5h
+dd 0c578475eh
+dd 0b065370dh
+dd 078f946adh
+dd 0423193a7h
+dd 0bba4a06eh
+dd 02b6dcf49h
+dd 0add0c6d6h
+dd 0e5b8aec0h
+dd 08a3652ceh
+dd 01aa3d05ah
+dd 08451b06ch
+dd 0e2b9a239h
+dd 0fbcee792h
+dd 09606f460h
+dd 0c4f65564h
+dd 015ff7cb0h
+dd 0d19cfee1h
+dd 0b951a674h
+dd 0f1bad303h
+dd 0c33ed77bh
+dd 04c46bc19h
+dd 041df71a3h
+dd 08536eb21h
+dd 0aedc1611h
+dd 02fb586d4h
+dd 0ee4e9e23h
+dd 037335a5ah
+dd 0db74d1dfh
+dd 0718d59d6h
+dd 0a13e0e1eh
+dd 03efca31eh
+dd 0ebcf3fach
+dd 05b40a614h
+dd 0a6e37fe2h
+dd 03fc2cd39h
+dd 01b0d3447h
+dd 096377ce6h
+dd 01a19b0cdh
+dd 07fbd8c39h
+dd 09992a36ch
+dd 063eff30fh
+dd 08a35f561h
+dd 009d7c70eh
+dd 02b66d3f5h
+dd 090445fbdh
+dd 0f8541e18h
+dd 00e54bff9h
+dd 04d1dc201h
+dd 081c1eed1h
+dd 004a3b667h
+dd 0d6f7721ah
+dd 05a930a6fh
+dd 0c914aaa1h
+dd 078fe2379h
+dd 0d4c13b2ch
+dd 0187aa2fdh
+dd 02fa177d1h
+dd 03e66a5aah
+dd 06fd7d3c9h
+dd 0e8381d1ch
+dd 0b32e70b7h
+dd 0f01b781eh
+dd 047e0dea2h
+dd 0c815c303h
+dd 01629de67h
+dd 09cb2bfcfh
+dd 0d7db7b99h
+dd 052f1740fh
+dd 004cf1fd4h
+dd 04c1a6748h
+dd 0ceb0638ah
+dd 0cf8738b7h
+dd 0151c70bah
+dd 0d6a49b5eh
+dd 01e186bceh
+dd 0bae4b4dfh
+dd 001c76fa0h
+dd 094c0c92dh
+dd 0c95ea8adh
+dd 07571ad22h
+dd 0b3dd6972h
+dd 00d7ef60bh
+dd 0d44850f9h
+dd 0d8c79795h
+dd 05542f65bh
+dd 0e07ec4e6h
+dd 0a12efd89h
+dd 0024d60e7h
+dd 0107fd70dh
+dd 072fd900eh
+dd 02e7fe0b7h
+dd 026aade4dh
+dd 017b028a9h
+dd 0a9fa705dh
+dd 0d5df963ch
+dd 02e36fd28h
+dd 05ecdc643h
+dd 0666d3053h
+dd 052af653eh
+dd 05c807c73h
+dd 0ddd42053h
+dd 08347747fh
+dd 064172fafh
+dd 0aaa8d788h
+dd 024b90332h
+dd 02be8a43bh
+dd 0cad7efd0h
+dd 0b0349ed3h
+dd 01f18511ah
+dd 024aaa068h
+dd 0971f1b7bh
+dd 0a87348b1h
+dd 0936fd04eh
+dd 048a2a14eh
+dd 0a91d14b6h
+dd 075f1cb2fh
+dd 033b87084h
+dd 025e04916h
+dd 07deabb6ch
+dd 015b7ab5bh
+dd 094076f61h
+dd 0069d2cbdh
+dd 0d27388e2h
+dd 0cd640dd5h
+dd 031764c38h
+dd 0a2ce62e8h
+dd 01fed6066h
+dd 089a37428h
+dd 072a2950ah
+dd 06dfaafabh
+dd 06a223b23h
+dd 0cc5d2751h
+dd 0637f0496h
+dd 0c00b3612h
+dd 09462c0b3h
+dd 0e7585b20h
+dd 0f4f8258eh
+dd 04a3baba6h
+dd 011018515h
+dd 07da4f3c8h
+dd 0b6f9a375h
+dd 0a114f487h
+dd 0cec7fce5h
+dd 05e7a9799h
+dd 0b866e661h
+dd 016c69d63h
+dd 02a82c62bh
+dd 0442ed5c6h
+dd 038badcfbh
+dd 05fd49942h
+dd 04474fc42h
+dd 09b7d6707h
+dd 09bfcb523h
+dd 02ddc38fch
+dd 04d4b3004h
+dd 03e7d8aech
+dd 0bb370c29h
+dd 03a21e4cbh
+dd 00b7f4ea5h
+dd 0a6372394h
+dd 02067a20ch
+dd 05de69d63h
+dd 03bcb5115h
+dd 036a9efefh
+dd 07729e79ch
+dd 040e056a9h
+dd 03f079d12h
+dd 0468ae612h
+dd 0bd244bc9h
+dd 000b5e017h
+dd 06f0fa853h
+dd 047ddda20h
+dd 0f5de56cdh
+dd 0a1e02d2dh
+dd 0604b8173h
+dd 0b6b27ce0h
+dd 041d0a7ebh
+dd 0de980519h
+dd 0705b7df2h
+dd 0348b96f8h
+dd 0190c4ee3h
+dd 0c9ad0f40h
+dd 0f9a888dch
+dd 0d6c353f3h
+dd 0876027bfh
+dd 0a4f42f37h
+dd 01e515fcch
+dd 0b8bc42e7h
+dd 0ddcbb462h
+dd 0c48f11aah
+dd 0b88c821dh
+dd 06c727d52h
+dd 06bfe7be1h
+dd 017a3190ch
+dd 092c2b543h
+dd 07c8531fch
+dd 014c9ee86h
+dd 052cbac67h
+dd 09117e845h
+dd 0b09ecd92h
+dd 08c77c2d8h
+dd 06895e5ach
+dd 008ecb036h
+dd 0f73e2c70h
+dd 09d5a0323h
+dd 01d77f9edh
+dd 0153bde85h
+dd 0570a524ch
+dd 01f651ed5h
+dd 0b519dfabh
+dd 0724916f6h
+dd 030f33ed3h
+dd 0a2164735h
+dd 04664cc56h
+dd 0101c8a1eh
+dd 0f70cddb4h
+dd 053c3badch
+dd 01c4c40c7h
+dd 0467a9033h
+dd 0b84e3c92h
+dd 01302fdcdh
+dd 0378df591h
+dd 02a328312h
+dd 093e1d9d9h
+dd 0fd017a2ah
+dd 05964387bh
+dd 06ec29e34h
+dd 07a48783ah
+dd 069385711h
+dd 07ca9a083h
+dd 02cd05af3h
+dd 07f50f0d7h
+dd 0b541da8ch
+dd 01b6bb5d2h
+dd 0713d4573h
+dd 045f97187h
+dd 0626766d9h
+dd 0b1f55006h
+dd 0ef6ac05bh
+dd 037c2e394h
+dd 07aa87d6bh
+dd 09035c84fh
+dd 0c4ac7273h
+dd 048197f69h
+dd 020082b72h
+dd 0f9c12675h
+dd 0ed799289h
+dd 0c7bb3ad3h
+dd 0104cf611h
+dd 065575bc1h
+dd 038f45e2bh
+dd 0b3ef81ebh
+dd 003acc2d6h
+dd 005e8b2d7h
+dd 03ee03908h
+dd 0d122ea67h
+dd 0e442150fh
+dd 083f033fch
+dd 08a3f5d37h
+dd 0c1b5129ch
+dd 0440cdb8ah
+dd 0ced6c30ah
+dd 0a32785ach
+dd 0b39cfa7ah
+dd 0c37c0f12h
+dd 059b4cfd5h
+dd 0ea96fc0eh
+dd 013c33361h
+dd 0179c5598h
+dd 03fda4bd2h
+dd 0bf3749eeh
+dd 0fb49ed98h
+dd 057a88f49h
+dd 034e83803h
+dd 0e4a2edf7h
+dd 069bdd3d1h
+dd 03f471b16h
+dd 038da3daeh
+dd 097568d4eh
+dd 0870f62b6h
+dd 0c2c7c846h
+dd 070277fa7h
+dd 0396e730ah
+dd 04c8ae3a8h
+dd 00e6f4ec0h
+dd 04ff386b7h
+dd 02a7b49ech
+dd 0abb4837ah
+dd 0251fc624h
+dd 06b1b3370h
+dd 04bb88f8eh
+dd 092eac07fh
+dd 00d3d7609h
+dd 0f1573d25h
+dd 0e4a5754dh
+dd 082ab2f8ah
+dd 040a5ff5fh
+dd 0ddfb0a4eh
+dd 08497e753h
+dd 03e306f00h
+dd 0521f3fe4h
+dd 0e640620bh
+dd 0358a8d0bh
+dd 080d6a62dh
+dd 04731f849h
+dd 0b5eeb249h
+dd 0b5eb2336h
+dd 0dd680b92h
+dd 0a8e623efh
+dd 04fbcd180h
+dd 093ebf17dh
+dd 04ccbbac7h
+dd 0b18bf31fh
+dd 06782c4efh
+dd 0529c5e3ah
+dd 078646562h
+dd 0f5b2a519h
+dd 0aee256e5h
+dd 08bd6cd6ch
+dd 07baec1c9h
+dd 064295c93h
+dd 0b0ae1294h
+dd 006ab2d3fh
+dd 0eb8c7e65h
+dd 089b23013h
+dd 02766e83dh
+dd 06fd219f7h
+dd 051144c51h
+dd 058f404b4h
+dd 00061263eh
+dd 0fd208666h
+dd 05edfc11eh
+dd 0c4d25a44h
+dd 0e0fd6a7ch
+dd 0535203a3h
+dd 00ca4e52fh
+dd 06cac9a23h
+dd 0ca36476eh
+dd 0acbe7cf3h
+dd 09d5a49f8h
+dd 0ac1a75b2h
+dd 076925ccch
+dd 040b19da7h
+dd 00aadb908h
+dd 0d6272e3fh
+dd 0bf539ae9h
+dd 01d3f726ch
+dd 042737c93h
+dd 0b3c78822h
+dd 001cb6b45h
+dd 048c860e5h
+dd 08f9f789eh
+dd 0d01c9af4h
+dd 025034895h
+dd 0460d270fh
+dd 0c7736f9fh
+dd 0ff87e1b2h
+dd 0aa8c2d0ch
+dd 0f21a6d89h
+dd 0139affcch
+dd 09e85870eh
+dd 090db77bbh
+dd 0f3dea4b4h
+dd 0db381edeh
+dd 0fc086357h
+dd 07d55ff38h
+dd 0140a9e53h
+dd 0b047887bh
+dd 0fc76f7c3h
+dd 0fd6adec7h
+dd 0e2cf29d8h
+dd 03a5594fbh
+dd 02493866bh
+dd 0e01c7adah
+dd 094f7b056h
+dd 0559f5243h
+dd 0a890abd3h
+dd 03adc68e4h
+dd 035f50e55h
+dd 0bb1bb6c8h
+dd 042ecd66dh
+dd 0c9f927ach
+dd 0b4aaacabh
+dd 074e528d7h
+dd 0fd651cf9h
+dd 0af2fa272h
+dd 070a770ffh
+dd 07b040df4h
+dd 07d4afc18h
+dd 0084a1b25h
+dd 0df6232f2h
+dd 05d875a04h
+dd 0732382b4h
+dd 09c38fd5eh
+dd 0de6ee840h
+dd 0d8dfd526h
+dd 0bac84153h
+dd 0ef010928h
+dd 01ac9eddch
+dd 0130ca20eh
+dd 074c0576fh
+dd 09cd5f5aeh
+dd 0e9549ad1h
+dd 0e0482305h
+dd 06003aac0h
+dd 03e1d57edh
+dd 0f31d9347h
+dd 0d21c818ah
+dd 057bece02h
+dd 0ce69193eh
+dd 0e2978b78h
+dd 0befcac95h
+dd 0d387e5afh
+dd 0dea7ecc2h
+dd 0804ae7f9h
+dd 08e0def16h
+dd 05b8ac0e7h
+dd 045403c68h
+dd 05ebee4a2h
+dd 058f14f5dh
+dd 0bf32807ch
+dd 099e23725h
+dd 0be24c865h
+dd 071018da7h
+dd 0cd1497d6h
+dd 0b0c0020ch
+dd 037191c72h
+dd 0c77c8652h
+dd 0f514be80h
+dd 0ff0975bdh
+dd 0be9fcf7fh
+dd 082d55b6eh
+dd 031294e78h
+dd 02139fb09h
+dd 0eaa7504dh
+dd 0b772587ah
+dd 05b1bc068h
+dd 04d0fc9bdh
+dd 0cc61f81bh
+dd 0458cc355h
+dd 094b0c024h
+dd 033f80f4bh
+dd 0c074d371h
+dd 0cb502cb0h
+dd 0deb98728h
+dd 07d00b78fh
+dd 0f83f0cbeh
+dd 02c9eac3bh
+dd 0f7452c11h
+dd 0bf934d68h
+dd 0d27b2ffch
+dd 091797a34h
+dd 0878fc025h
+dd 0db1e21c7h
+dd 0323488adh
+dd 035759d44h
+dd 0e74a075ah
+dd 0a9c9352ah
+dd 02bc99158h
+dd 05c6f2683h
+dd 0e093c4cbh
+dd 0977226f9h
+dd 0856fc540h
+dd 029fe8d46h
+dd 04bd0ceech
+dd 0e8e7b4d5h
+dd 0a57c3af3h
+dd 09ca14e27h
+dd 0a1f96f28h
+dd 0b4504dfbh
+dd 0452a7951h
+dd 06bf052ech
+dd 035bdf781h
+dd 047aff59dh
+dd 05937cd8ch
+dd 050c0d6cah
+dd 07d9a4565h
+dd 043d1785bh
+dd 077cead5bh
+dd 05e5d3e0dh
+dd 0eb8b4b8bh
+dd 04776e40fh
+dd 05c4ed098h
+dd 002a23c8dh
+dd 007745046h
+dd 005b2cb37h
+dd 0ffdcc8b0h
+dd 0f1c173bfh
+dd 06bc85baeh
+dd 0a7711f1ch
+dd 024271d78h
+dd 0e01ac0a4h
+dd 0899a8814h
+dd 0402dcb11h
+dd 0f807fdbfh
+dd 06540079eh
+dd 0739de2e9h
+dd 0290c1291h
+dd 08da5831eh
+dd 052f2bff2h
+dd 0e5165526h
+dd 0a761eba1h
+dd 0db701076h
+dd 0d752fd0dh
+dd 0dd0e3c40h
+dd 0a736ac2dh
+dd 007f6b4a4h
+dd 009db1393h
+dd 045589909h
+dd 00e6a2ce7h
+dd 089d3d455h
+dd 0962ddbech
+dd 0d05470e7h
+dd 0906bfef0h
+dd 0f1f2561dh
+dd 039c06850h
+dd 085c5f6cdh
+dd 07dbf3ea9h
+dd 048f0f7d4h
+dd 07f6a5ed0h
+dd 010d2eebah
+dd 025e79beah
+dd 059543ceah
+dd 0f5d2daf7h
+dd 062a74baah
+dd 0d16ffa5ch
+dd 08c1c4e3dh
+dd 0435d211bh
+dd 08d36217eh
+dd 0efcf95fdh
+dd 0abf66a7dh
+dd 012c3c9fah
+dd 014124dc3h
+dd 051983745h
+dd 03067a02dh
+dd 002de2e3eh
+dd 03d3a5ad2h
+dd 05a0feab0h
+dd 0b97a9c2dh
+dd 02e656c19h
+dd 0cc66d885h
+dd 00be81133h
+dd 0ea019a9ch
+dd 004eaeac3h
+dd 08c09061dh
+dd 09bb14f9bh
+dd 048cc272fh
+dd 0916f4177h
+dd 0d013fdcdh
+dd 01060794ah
+dd 0c66d5155h
+dd 01b33a789h
+dd 05404fa66h
+dd 02a583ed4h
+dd 0cc86b6edh
+dd 0e85bc14ah
+dd 0c0fb2723h
+dd 0d7658d83h
+dd 0280053d7h
+dd 06c7c47a7h
+dd 02f9d321eh
+dd 08bfc00bah
+dd 090c3d0fdh
+dd 0da3baaa8h
+dd 045a5b2d0h
+dd 08511ffbah
+dd 08890b11eh
+dd 0c4c946dch
+dd 0c1dab56eh
+dd 085808deeh
+dd 087257df3h
+dd 0d21031eah
+dd 0bbaeb127h
+dd 0826a162dh
+dd 0739f0225h
+dd 0ab5e212eh
+dd 09f93bd52h
+dd 05af6e973h
+dd 03a69b7fbh
+dd 0d9e77771h
+dd 06680a4feh
+dd 061c3ead0h
+dd 04ce9f43ah
+dd 09fee3affh
+dd 04ebd18f1h
+dd 015546db8h
+dd 05bf5b381h
+dd 0d55ade9bh
+dd 0f98540c2h
+dd 050aec8cch
+dd 01d9c5215h
+dd 0edc1f27ch
+dd 09e1d0876h
+dd 0bcf6d20ah
+dd 0084e41ddh
+dd 07d59a7bch
+dd 033e8d944h
+dd 0331c4ab9h
+dd 0555d56b9h
+dd 00b7ade17h
+dd 09d522334h
+dd 0c3f7583bh
+dd 0899dae82h
+dd 0314379b7h
+dd 051787284h
+dd 0601f227ah
+dd 0a3a25508h
+dd 02fc100c5h
+dd 08798e672h
+dd 084073946h
+dd 0ba9b0653h
+dd 0b16daea4h
+dd 01d5063deh
+dd 02fb6cff7h
+dd 0c7deedc0h
+dd 03b00f083h
+dd 0960c4063h
+dd 092ca4866h
+dd 047630208h
+dd 0bb3bd450h
+dd 0251d641dh
+dd 0ab3be0cah
+dd 0435ce4eeh
+dd 04246ac89h
+dd 0f03676beh
+dd 029c19110h
+dd 0694df317h
+dd 0a367ef20h
+dd 05e610a80h
+dd 0c078ef46h
+dd 06f77d9cbh
+dd 04688a36bh
+dd 0a85c2906h
+dd 04ea354e4h
+dd 063047f60h
+dd 0110daf5ah
+dd 0c7741834h
+dd 0bb29f34eh
+dd 0cba5adadh
+dd 00095bfefh
+dd 07d261bf9h
+dd 014411380h
+dd 05a086ba3h
+dd 0c0d37b23h
+dd 058cf1091h
+dd 0494041eeh
+dd 05157b7deh
+dd 07d124364h
+dd 09b0887fdh
+dd 0712a4a26h
+dd 058bf7fd4h
+dd 070b1123dh
+dd 06fa1fc9ch
+dd 05ca9fa99h
+dd 0271573d8h
+dd 05e8733f7h
+dd 07df2a2a9h
+dd 0717299ebh
+dd 0c0e76b4bh
+dd 03da8fcc9h
+dd 05c82ef8ah
+dd 04d80c8bfh
+dd 0fbb21a23h
+dd 09a37d761h
+dd 075cc026bh
+dd 06d7d57fdh
+dd 0f38fb37eh
+dd 04c31e288h
+dd 0acb33bd8h
+dd 02bf94cdbh
+dd 0b22d2916h
+dd 0910291ffh
+dd 083a07453h
+dd 082e4f7c9h
+dd 0ad6b7b57h
+dd 08a95193dh
+dd 0210baa68h
+dd 09c1a11f1h
+dd 06e509659h
+dd 0e08a0f3eh
+dd 0289948c9h
+dd 079e4f212h
+dd 0b5a70e9ah
+dd 0d826cb72h
+dd 051cbf52ch
+dd 08675f485h
+dd 07b544c49h
+dd 037599c5ah
+dd 019c8efddh
+dd 089b7cb01h
+dd 0812064f2h
+dd 0d0ccbfd8h
+dd 0ef1af3c5h
+dd 03abc1b09h
+dd 02e028532h
+dd 0d2541a30h
+dd 098317dbah
+dd 058bf8e76h
+dd 0ea9ae3e1h
+dd 0f224b2f3h
+dd 085f32505h
+dd 096fd2d40h
+dd 0262b346eh
+dd 047da14f3h
+dd 0cf9036f1h
+dd 01166f648h
+dd 084b20778h
+dd 0c771179bh
+dd 09f827e60h
+dd 024a0501bh
+dd 0cc37d91dh
+dd 0eb9fcb5ah
+dd 0bfe27d6eh
+dd 0b41283fch
+dd 02656c59bh
+dd 0c906a64fh
+dd 08e9c4a8ch
+dd 00c28256ch
+dd 08b84e3b8h
+dd 091d25abfh
+dd 0ccb70d8bh
+dd 07442b698h
+dd 0bcbceec1h
+dd 01edeacb6h
+dd 024aa28e3h
+dd 0f2dc881ah
+dd 00e0ea265h
+dd 0518b5a94h
+dd 0a483e491h
+dd 09dc8a6d8h
+dd 0d78d501eh
+dd 05a9c5588h
+dd 0f7438fa1h
+dd 0e37cf66bh
+dd 0fc4a76c1h
+dd 0933131c0h
+dd 00eee5d14h
+dd 04128f15fh
+dd 0d7f7cd16h
+dd 03c9f11dfh
+dd 0d28424f0h
+dd 0eff97981h
+dd 0c5f804f4h
+dd 0a5b7f247h
+dd 0316d28f3h
+dd 0aad481e9h
+dd 04ed56e49h
+dd 0bd556f33h
+dd 07e0c9d3bh
+dd 07d77126ch
+dd 0dce5c053h
+dd 01490da1dh
+dd 071b27e2eh
+dd 042d7ee9dh
+dd 036e1df89h
+dd 0093c91cch
+dd 0361d29ceh
+dd 06799bf70h
+dd 056e1ffb8h
+dd 0a4a5cafch
+dd 063b6bb0ah
+dd 008272a09h
+dd 0da713017h
+dd 04ee8e0e4h
+dd 00cfa5790h
+dd 0aa7525a6h
+dd 030347738h
+dd 0a1ebe808h
+dd 040f59dcdh
+dd 055bfb40eh
+dd 0cc68a0a3h
+dd 0f5160505h
+dd 07be43ea4h
+dd 064e161e2h
+dd 0f60e536ch
+dd 0615d4d08h
+dd 086784ebbh
+dd 0facddbf0h
+dd 0bb4a8b3ah
+dd 0a0fe885ch
+dd 0860588e5h
+dd 0b93ab72ah
+dd 04e42c6edh
+dd 07ccca924h
+dd 0ee3a2a1ah
+dd 0c085e84eh
+dd 06758c159h
+dd 06d2e1044h
+dd 0400006f2h
+dd 0024ddc11h
+dd 04a24a8dbh
+dd 06852c703h
+dd 01a84e933h
+dd 0216d79b9h
+dd 0e9779b53h
+dd 0a494e3efh
+dd 00d02a6cbh
+dd 0fcef74e9h
+dd 05e6f72c9h
+dd 0145a12c8h
+dd 0b0ee4c07h
+dd 0469ddaa7h
+dd 0def56ee6h
+dd 08fde5c98h
+dd 093c4b4deh
+dd 076250893h
+dd 06f723f86h
+dd 03ab3998ch
+dd 025085f70h
+dd 0f2f843e1h
+dd 0f47e249fh
+dd 0e7abddcfh
+dd 0d0656debh
+dd 0c7be94b1h
+dd 013b9013fh
+dd 0a3c187ffh
+dd 0f9980a3eh
+dd 09632b8a9h
+dd 0ce298cb3h
+dd 044a08ea0h
+dd 0ea01bdfbh
+dd 0fb0f67e3h
+dd 0fce91ff6h
+dd 050b9b74eh
+dd 00e2a5bd4h
+dd 018cae0a7h
+dd 0e55ce55fh
+dd 008e32fb4h
+dd 014cea2f2h
+dd 08291bf72h
+dd 075e05255h
+dd 039647b30h
+dd 06f4b2199h
+dd 0b1d25567h
+dd 01d372314h
+dd 0178b0d6eh
+dd 04e4ceb23h
+dd 035ae703dh
+dd 0e022e4d9h
+dd 098016e50h
+dd 0f7fbb2edh
+dd 05bef0940h
+dd 09ec65d68h
+dd 0c9868bbah
+dd 07068d952h
+dd 02e366304h
+dd 0e585f1e7h
+dd 0141b545ah
+dd 08be55a5ah
+dd 074827fb4h
+dd 08a6a47c7h
+dd 0f6392c15h
+dd 049639467h
+dd 01e89ea5dh
+dd 0311bec65h
+dd 0c7b74363h
+dd 0b219979bh
+dd 0b4891de4h
+dd 0297f9a22h
+dd 0021874b7h
+dd 08ef7c19bh
+dd 06adb8215h
+dd 088f27a71h
+dd 0652f154eh
+dd 05cab6273h
+dd 0c66761e5h
+dd 0fcb82bdah
+dd 00d5c1607h
+dd 09623f0a2h
+dd 06989c142h
+dd 0d8435c42h
+dd 0dc7f11a3h
+dd 0cfa19a2eh
+dd 04472ffbbh
+dd 08474e00ch
+dd 0d17702c1h
+dd 0be83b04ah
+dd 05683730fh
+dd 0b5b2ab22h
+dd 0296308b5h
+dd 00b99670dh
+dd 0b97323fbh
+dd 02791f1b4h
+dd 051c9049ch
+dd 0eeffc27ah
+dd 0cd12f978h
+dd 06af840d0h
+dd 0547317e5h
+dd 0174737e1h
+dd 0266058efh
+dd 0b64ed81ch
+dd 004701002h
+dd 087a3a80fh
+dd 08a0c432bh
+dd 0a5844051h
+dd 07509e83bh
+dd 0241d82a9h
+dd 0576ace28h
+dd 028cd4ae3h
+dd 0975c22b5h
+dd 09e6ec9c8h
+dd 0e382a961h
+dd 0d551c811h
+dd 027286520h
+dd 0ee01a640h
+dd 0f8228d23h
+dd 04b6e15a0h
+dd 0e231f7edh
+dd 0e215d52dh
+dd 0dc2c9580h
+dd 0feff68c3h
+dd 033bdd9a0h
+dd 0410841dah
+dd 0456958cch
+dd 0246b6dbdh
+dd 051a17478h
+dd 0ef918683h
+dd 048132c8eh
+dd 04e0a12a3h
+dd 0adc98fb3h
+dd 0f1b74a2eh
+dd 0e76c7a51h
+dd 04c459cb2h
+dd 0b98759cah
+dd 09f47f992h
+dd 044df8e44h
+dd 077e1b6f9h
+dd 0a6260fadh
+dd 0691302fah
+dd 07c3fa9dfh
+dd 0d477d96dh
+dd 06196ac9dh
+dd 0034f4492h
+dd 00d82195bh
+dd 040cb943ch
+dd 0f514191ah
+dd 019891d07h
+dd 00690cddbh
+dd 03d410ec2h
+dd 017146198h
+dd 0c9fdf773h
+dd 071667bf4h
+dd 0b7d1384ah
+dd 06447f355h
+dd 0b2213ee7h
+dd 048bf49a5h
+dd 01c812260h
+dd 09267fd82h
+dd 0f3e236f1h
+dd 07c779334h
+dd 0e8b6aa90h
+dd 05c53b261h
+dd 0e1d561dfh
+dd 0ce856273h
+dd 0fd521407h
+dd 051ebf48dh
+dd 0adfd07bch
+dd 010edfe68h
+dd 023d77957h
+dd 0727953e6h
+dd 07396ec60h
+dd 0f8436746h
+dd 039896e4bh
+dd 002f47958h
+dd 0f75d6669h
+dd 0ba75d270h
+dd 0dd3b6871h
+dd 005c20f1bh
+dd 000416d99h
+dd 09a007da0h
+dd 09f49506ah
+dd 090f4eab0h
+dd 0a60912ech
+dd 0a2d008c1h
+dd 062f6e1f4h
+dd 07cf67cb7h
+dd 021b81492h
+dd 0c59c02c3h
+dd 0a450ea08h
+dd 08b99f4f3h
+dd 0a8e098d7h
+dd 0af485b98h
+dd 08cb8ee01h
+dd 09eea88a0h
+dd 071294560h
+dd 09219cb82h
+dd 0c26e6da8h
+dd 0aabe8e15h
+dd 06d81f302h
+dd 08be84c91h
+dd 0d2e1a610h
+dd 0f02ec1e9h
+dd 0417a2637h
+dd 05c8bbdc4h
+dd 0fa7c23ffh
+dd 0d69f1d91h
+dd 003de17f8h
+dd 0c167498fh
+dd 0723cd003h
+dd 02b78b3d6h
+dd 0aeb86f7eh
+dd 0c5e1586ch
+dd 02baad0a7h
+dd 0376c48e9h
+dd 066a313f4h
+dd 0ed705ad1h
+dd 0ba426d8bh
+dd 05faa895fh
+dd 01c756cdch
+dd 0fc43e1dbh
+dd 0463dca25h
+dd 03f6c99f8h
+dd 0447e6155h
+dd 01df468d4h
+dd 02fcccc13h
+dd 0071b666fh
+dd 0788c3b8bh
+dd 04eba57e2h
+dd 03633138dh
+dd 074634322h
+dd 0e75c3601h
+dd 08c830004h
+dd 04fe9594fh
+dd 09479e0edh
+dd 004d961e9h
+dd 03ce7f1c8h
+dd 0b5385033h
+dd 052c7d064h
+dd 052694f01h
+dd 045b13a83h
+dd 08c1da53dh
+dd 03b4fa86eh
+dd 0b1530b85h
+dd 0f56f0058h
+dd 032f41cd6h
+dd 0c6dad080h
+dd 08a592edbh
+dd 0d97b07e7h
+dd 0f06785c7h
+dd 0783f3c5dh
+dd 03e0aefc4h
+dd 00cf0a4e2h
+dd 018845c83h
+dd 01f61d273h
+dd 03ba40759h
+dd 0d81c8869h
+dd 04feebca5h
+dd 04326a44dh
+dd 0e8f10d38h
+dd 0cbcf8193h
+dd 0a74b00ebh
+dd 0102006d2h
+dd 05e4df1d9h
+dd 034474d08h
+dd 032784954h
+dd 0de676bc0h
+dd 05936e8fch
+dd 08eb8e21bh
+dd 0154028fah
+dd 01c945f9ah
+dd 073da2994h
+dd 0e3dd8834h
+dd 0484d3259h
+dd 0b7717216h
+dd 08b29f965h
+dd 0dcb66f90h
+dd 00d43e791h
+dd 0c8a9cb8dh
+dd 055b3d502h
+dd 094ebeaabh
+dd 013cdc8ceh
+dd 0669c69f2h
+dd 0bab6144dh
+dd 000bae4d2h
+dd 0bc2e7ba3h
+dd 09e8c4c07h
+dd 01c70dbffh
+dd 0e36ef1c1h
+dd 057a13b74h
+dd 0d2c461f2h
+dd 0171a445dh
+dd 07bc4c35fh
+dd 0b81d261ah
+dd 0f0249b29h
+dd 02161b056h
+dd 0f795087bh
+dd 02f2026ech
+dd 080f619a1h
+dd 07462ba4eh
+dd 08a268bbdh
+dd 042574bcah
+dd 0f99d1abdh
+dd 0f0487d18h
+dd 01f070318h
+dd 0c17c9fb4h
+dd 0590d8b25h
+dd 084353fabh
+dd 03355e55bh
+dd 03a46cb82h
+dd 09597c3dbh
+dd 0953799ffh
+dd 027d080d1h
+dd 032c85c8ah
+dd 05fed77fdh
+dd 006333289h
+dd 0e0260b35h
+dd 0010f7430h
+dd 0016bcac8h
+dd 00a27ae32h
+dd 085e6e3f2h
+dd 07804d1a0h
+dd 0e727e879h
+dd 019181fb0h
+dd 0f1d41365h
+dd 00480727ah
+dd 023234b06h
+dd 06bd6738fh
+dd 0732534b5h
+dd 0f73262dah
+dd 0862f977dh
+dd 015b99349h
+dd 0680d9e39h
+dd 08044976fh
+dd 0159b2b74h
+dd 0fc13e37dh
+dd 0155b184eh
+dd 0ad468b20h
+dd 0078d9602h
+dd 077ad0bcdh
+dd 0351d333bh
+dd 076605e32h
+dd 09e1022b9h
+dd 089e6e94ch
+dd 06de2cbd5h
+dd 0f0f30919h
+dd 03c70a17ch
+dd 015e1af66h
+dd 074e75994h
+dd 059593a27h
+dd 04ea6652ch
+dd 0fa1079ceh
+dd 0930a02b3h
+dd 06316e910h
+dd 035d5aa5dh
+dd 0197cb510h
+dd 069c78195h
+dd 006e9369ah
+dd 02625738ah
+dd 04df6504fh
+dd 0a046edf4h
+dd 0107cda4ch
+dd 07498b473h
+dd 0619c4623h
+dd 07f64797ch
+dd 06e730aeeh
+dd 0900b9011h
+dd 0b7988744h
+dd 023041191h
+dd 07c1fa0b1h
+dd 0f5b1b1dch
+dd 0e69f78bbh
+dd 0033791f3h
+dd 08b481b4eh
+dd 0b09319cdh
+dd 0095c6f1ah
+dd 037a4721eh
+dd 0ba50ecd5h
+dd 0e4ebf012h
+dd 01b5a300ch
+dd 00184f393h
+dd 02324a2e2h
+dd 0f59330f9h
+dd 070369680h
+dd 07edc63f4h
+dd 0d2cbc997h
+dd 0e36b2ea6h
+dd 002134526h
+dd 0eece3031h
+dd 0b183f9d6h
+dd 050cf5116h
+dd 027e65727h
+dd 026513a54h
+dd 07772b649h
+dd 026e098d4h
+dd 0314bf14dh
+dd 07ef8f2f6h
+dd 089e3f459h
+dd 095ad98a1h
+dd 0a4b25ed4h
+dd 0607e0025h
+dd 0a3543f76h
+dd 07a48eb80h
+dd 0614001cbh
+dd 0955799aah
+dd 08b5d5710h
+dd 0417a7915h
+dd 088606848h
+dd 06ad0748fh
+dd 0eb9392b5h
+dd 0ea859fdch
+dd 0be033811h
+dd 018032826h
+dd 0a4881144h
+dd 0a10361e2h
+dd 0c844eb90h
+dd 03dbefb3ah
+dd 0f2f07089h
+dd 04f0bebech
+dd 0f9457964h
+dd 016a565efh
+dd 0be285dc1h
+dd 0640cef2fh
+dd 0163ec951h
+dd 0a1b910aah
+dd 0c6fc6beeh
+dd 04d573df5h
+dd 08136c55ah
+dd 0e7e854fah
+dd 0f78a4937h
+dd 045e6c172h
+dd 06212a3f7h
+dd 0a00a892bh
+dd 0e5895464h
+dd 0cc9b9cbch
+dd 0e6d777cch
+dd 0c195dea0h
+dd 0d64a4709h
+dd 0f9787653h
+dd 0189f3659h
+dd 005f388b2h
+dd 0884eea7ch
+dd 0c67e76a9h
+dd 0dcd5826dh
+dd 03426b279h
+dd 0ba86febdh
+dd 06ed3c312h
+dd 036fa6102h
+dd 013edf901h
+dd 097e60e74h
+dd 0342ab8dch
+dd 0a2019c9eh
+dd 0f6fcf6d4h
+dd 0c6c5fc47h
+dd 06b062349h
+dd 0711e93a7h
+dd 0082c6bb1h
+dd 0546bd6f9h
+dd 0b06e6010h
+dd 0a9e0300bh
+dd 0acea0f52h
+dd 00dbc8712h
+dd 000be08e2h
+dd 0b177b869h
+dd 0b38e4247h
+dd 09d7cc8feh
+dd 004b35716h
+dd 08e9b5556h
+dd 07c480407h
+dd 086c90b50h
+dd 0573d1896h
+dd 07ef3b083h
+dd 0ec7ee958h
+dd 036f6b6c7h
+dd 05af26f0ch
+dd 0d4e8a502h
+dd 06881b83bh
+dd 09da26379h
+dd 0a7632b67h
+dd 05097b87ah
+dd 0f20d0b9fh
+dd 08415c62eh
+dd 0e20e1c10h
+dd 06aad70a0h
+dd 0a9fb3dd3h
+dd 0173d36b8h
+dd 08f97e230h
+dd 0b75101b5h
+dd 07e0349c9h
+dd 09b2256f9h
+dd 03262723ah
+dd 0a878e998h
+dd 01124f05fh
+dd 092cf2f21h
+dd 090ce49fdh
+dd 0a853a7aeh
+dd 0fdf8dcebh
+dd 06c87c878h
+dd 0d53ed1e2h
+dd 0ae61ca7eh
+dd 0f35fd473h
+dd 0e8486c27h
+dd 0192c7560h
+dd 092156b8eh
+dd 034f350f3h
+dd 071a419e1h
+dd 03ae01f0ah
+dd 022e94c5fh
+dd 067ed5339h
+dd 0edb341f4h
+dd 09773baa2h
+dd 0aaf44e94h
+dd 03b668abbh
+dd 022fcb1c1h
+dd 0b7edf2f7h
+dd 000ea04ceh
+dd 01800d72bh
+dd 0f62c6811h
+dd 0262aaf9bh
+dd 04110b44fh
+dd 0a8787704h
+dd 0fcec632bh
+dd 0e92831f3h
+dd 0d9806d9ch
+dd 0fef65080h
+dd 043ad796dh
+dd 029cdc772h
+dd 03de9453ch
+dd 0f97ad895h
+dd 056f149e4h
+dd 01ac3f541h
+dd 095a13888h
+dd 07f782617h
+dd 0e83b135eh
+dd 0f04c378ch
+dd 09dab8bd6h
+dd 04a0f68afh
+dd 07501d9bdh
+dd 06734bcc5h
+dd 04e233ee6h
+dd 044289c96h
+dd 022b266a5h
+dd 07049c00bh
+dd 0d6e56286h
+dd 03f5b551ch
+dd 0c4d9e53bh
+dd 0ebea7b02h
+dd 019f669feh
+dd 0aebee514h
+dd 0dbd42f5dh
+dd 08354e0eeh
+dd 0e21c98fbh
+dd 0c08cda6ah
+dd 06055f976h
+dd 03c6d3edeh
+dd 0cac28f3ah
+dd 0a930f564h
+dd 0f1f7d8dbh
+dd 0306a63abh
+dd 0b2ed75d0h
+dd 0989b49c2h
+dd 0fd5f3f3eh
+dd 04f8b2d78h
+dd 036eb09a5h
+dd 095401a48h
+dd 0f1082dd1h
+dd 0c3eccb22h
+dd 05910d56ch
+dd 03e3b404bh
+dd 0155e8379h
+dd 07e55f46eh
+dd 0ee3b66c0h
+dd 01861b5a8h
+dd 0fcdd8f41h
+dd 0fed745d4h
+dd 07c5f5d6dh
+dd 083cb0e92h
+dd 061f6f1e6h
+dd 0d601de05h
+dd 0ed0a6e59h
+dd 0e1329ccbh
+dd 0221a9dfah
+dd 0fa1161bdh
+dd 0c49ab2c1h
+dd 01ab65bf1h
+dd 08ce26754h
+dd 0bd65433dh
+dd 08cdca59fh
+dd 01130463fh
+dd 099028db1h
+dd 0f86ece20h
+dd 0b4866a4ah
+dd 0e9fb8356h
+dd 09082241eh
+dd 0b429aad6h
+dd 0ea4a0ba9h
+dd 02f8d7158h
+dd 04329df4bh
+dd 0176280bah
+dd 0b3763da5h
+dd 03693badfh
+dd 01bbb2cb9h
+dd 08f94eaech
+dd 09e627e3ah
+dd 0b2b8f32dh
+dd 0bb762237h
+dd 072fefe14h
+dd 006ee3114h
+dd 0ebc0cc9dh
+dd 0753ee424h
+dd 00f877a0fh
+dd 06a65bcfbh
+dd 0c0ab6ecah
+dd 0000ae326h
+dd 039ee42c1h
+dd 0143752bah
+dd 075aba523h
+dd 040a71fe6h
+dd 0dc755807h
+dd 065841198h
+dd 0bb3c9518h
+dd 0f09dd308h
+dd 0c115bc74h
+dd 0fc732b7dh
+dd 08e733601h
+dd 0469573dbh
+dd 02742581bh
+dd 0547ac994h
+dd 080a35582h
+dd 0378db3e0h
+dd 0bdaf82eeh
+dd 063fd201eh
+dd 01d8f3192h
+dd 09bcd366ch
+dd 0ef899c89h
+dd 0d471deb7h
+dd 0fcc545b1h
+dd 0aa768b60h
+dd 0bd694be2h
+dd 0db2f88f1h
+dd 000e1aa01h
+dd 011d50685h
+dd 01ea030d3h
+dd 0d5bd529ch
+dd 0b38bb3d6h
+dd 02ea48dcfh
+dd 0814c6038h
+dd 0f13d0bc8h
+dd 0450e1f47h
+dd 06cc3f981h
+dd 085b75c4ah
+dd 0b2536348h
+dd 0a7035873h
+dd 0078d520ah
+dd 09d089ef7h
+dd 0aa7361ceh
+dd 096cf507ch
+dd 085505d49h
+dd 01b0d33a9h
+dd 056ca1826h
+dd 0250c730ah
+dd 0f3df08abh
+dd 05d4ee5b2h
+dd 017a872e6h
+dd 02f9d6464h
+dd 031d79fb7h
+dd 0c6d11726h
+dd 0b7f81ff1h
+dd 077d010b5h
+dd 0feaf0f67h
+dd 078cefefdh
+dd 0bfb0fb7fh
+dd 0fb5ccf54h
+dd 0d1fae3bch
+dd 06dcf55c3h
+dd 092223787h
+dd 0bac4b1b3h
+dd 0f74979ech
+dd 07ca809e8h
+dd 072a18a25h
+dd 0b34e4eefh
+dd 09e4151bbh
+dd 088f24a27h
+dd 0d9da4525h
+dd 073130da2h
+dd 0275a5aa3h
+dd 0c6d2ab5eh
+dd 0fcdb38b2h
+dd 08651d9f7h
+dd 00634c1b4h
+dd 065f0f135h
+dd 0efbc7b30h
+dd 0c94c1437h
+dd 0ab09cecfh
+dd 0dbd75e8dh
+dd 05f1548c1h
+dd 049c5ed59h
+dd 001c2f0b2h
+dd 083fe044fh
+dd 07762ab2eh
+dd 0641627ddh
+dd 0affe1331h
+dd 007a51529h
+dd 0034b1cb1h
+dd 0dfcc97dbh
+dd 0728768b4h
+dd 0988254eah
+dd 0667d5451h
+dd 0fde2c1e2h
+dd 051464e81h
+dd 05ba3132ah
+dd 09a853bb8h
+dd 02ef9fc21h
+dd 059699afeh
+dd 0e4d6aa37h
+dd 01f5afbech
+dd 04ff1c7f0h
+dd 08ce0f35bh
+dd 008479c14h
+dd 07900d031h
+dd 0be1b4e81h
+dd 05d2e9f4eh
+dd 096be9270h
+dd 0b5601d9dh
+dd 0fbf87438h
+dd 046652e7ch
+dd 0e3d2d519h
+dd 0a6c90d4bh
+dd 02f6d1b4ah
+dd 07c6f8c29h
+dd 0683d6d4ch
+dd 0101a4c92h
+dd 099aeab21h
+dd 0be27f44fh
+dd 07f442256h
+dd 000d89d42h
+dd 0cfe1bff4h
+dd 090b5aa81h
+dd 015e281e4h
+dd 0aaef85f0h
+dd 04a3870e9h
+dd 0e4a7ebdbh
+dd 01f8b9a38h
+dd 0bab32091h
+dd 033b00d1dh
+dd 091f3fa61h
+dd 04e8fde95h
+dd 039be472ch
+dd 07120e2ebh
+dd 090b49ae9h
+dd 043c2c189h
+dd 0ef4995bbh
+dd 0eb6f3b2ah
+dd 0422cd2cfh
+dd 028341bd0h
+dd 03f56f070h
+dd 0e80bf03fh
+dd 015fff245h
+dd 09b3464c2h
+dd 072bc4880h
+dd 05eb2a954h
+dd 0935bb487h
+dd 0155c9321h
+dd 0a2d63cb3h
+dd 00f969a43h
+dd 01b1ee2a4h
+dd 04e33c958h
+dd 012003426h
+dd 089272e5fh
+dd 0c11533f2h
+dd 0e5898c1ah
+dd 000ef5ed4h
+dd 03d2cacd5h
+dd 04c787790h
+dd 02c7be24fh
+dd 06f3ec85fh
+dd 080cbd7f1h
+dd 092b38d59h
+dd 0d136d31ah
+dd 052bd98ffh
+dd 0450d76bbh
+dd 0de4768efh
+dd 0b6e0e348h
+dd 0f53b59a4h
+dd 0b68974ceh
+dd 0cdf7e997h
+dd 0e09ef475h
+dd 0581039d3h
+dd 04a2fc003h
+dd 04e72c8a9h
+dd 0b131ccaeh
+dd 0af960585h
+dd 0c3649171h
+dd 04be974cfh
+dd 0b9243118h
+dd 07cd8427eh
+dd 0ee18f0c4h
+dd 03e4ed08bh
+dd 0c4dc00e3h
+dd 0a60c1334h
+dd 044df204dh
+dd 02af65370h
+dd 02da8965ch
+dd 0d14d2bbeh
+dd 04b756cf4h
+dd 0e14ecde9h
+dd 0c0c44f70h
+dd 0ba70a9d1h
+dd 0faa2921bh
+dd 051911598h
+dd 07029ca6ch
+dd 03a751d0bh
+dd 0f326c522h
+dd 07c137599h
+dd 0523bffbbh
+dd 0401bfabch
+dd 077118359h
+dd 03fd9ed56h
+dd 021c0bc05h
+dd 0153a1230h
+dd 0b4381d95h
+dd 06dbec943h
+dd 072763661h
+dd 012c361fbh
+dd 053e01802h
+dd 06d42cef6h
+dd 090ae3856h
+dd 0c67fa562h
+dd 0056cd084h
+dd 0d0cb2a51h
+dd 04de7e812h
+dd 0718c17c1h
+dd 00b7a35d3h
+dd 03ea10449h
+dd 09422216eh
+dd 0073028e6h
+dd 02c287290h
+dd 03d27a490h
+dd 0a615b734h
+dd 0a3dabe71h
+dd 0a60672a0h
+dd 0a401e5e0h
+dd 008e82c00h
+dd 0d4206106h
+dd 0f6e8cf64h
+dd 0cbdabd9ch
+dd 0c05f7d6ah
+dd 040fcbc39h
+dd 038ec3b9ah
+dd 0295d9f62h
+dd 0ac29f897h
+dd 05d13e7ddh
+dd 025053efbh
+dd 0e72ccd6bh
+dd 03ac128e5h
+dd 042d3aa46h
+dd 073fa482eh
+dd 0efe31ab1h
+dd 0357b436bh
+dd 0bb2e9895h
+dd 0faadd532h
+dd 0aadcf8eah
+dd 09b5574e7h
+dd 0e643d16eh
+dd 074412f0eh
+dd 038f13eebh
+dd 080e83e80h
+dd 0e1ff5651h
+dd 0b3a3723ah
+dd 09842ab92h
+dd 028fe33bbh
+dd 0f9dd2a23h
+dd 077c6daabh
+dd 0688284cch
+dd 0721586bbh
+dd 031266b03h
+dd 0b53ea864h
+dd 052909418h
+dd 016141260h
+dd 09ffa78d0h
+dd 0b5daa2a3h
+dd 0cb8753d6h
+dd 043e5aee4h
+dd 0e05b3491h
+dd 08a8f4028h
+dd 0627273eah
+dd 09220cbddh
+dd 0269fd06eh
+dd 0556506d9h
+dd 0f85f3479h
+dd 08838d78eh
+dd 07a93b357h
+dd 09c753df0h
+dd 000473d94h
+dd 05015fc51h
+dd 08b8e448eh
+dd 09c915ba3h
+dd 0f3d9f274h
+dd 02621763fh
+dd 0528ab982h
+dd 008ae5c48h
+dd 04431fdb9h
+dd 00f074ec5h
+dd 021a8a096h
+dd 0fb369285h
+dd 025ebb7e9h
+dd 051b14d9ah
+dd 077ea27a8h
+dd 07883a0d0h
+dd 0ee106c0ah
+dd 00de2220ah
+dd 0f6fcdc84h
+dd 096e96488h
+dd 0e457843bh
+dd 0eea35cbdh
+dd 02f9505e8h
+dd 09c81faddh
+dd 0f7aadc88h
+dd 0f75c4a32h
+dd 02dd3aaafh
+dd 01630d749h
+dd 06410d04eh
+dd 0b376ba9fh
+dd 0ea3fddceh
+dd 0a5a77267h
+dd 021c9a930h
+dd 099aaf637h
+dd 00e1969f4h
+dd 07dbc75eeh
+dd 0876bfcf3h
+dd 00185ae63h
+dd 01718ce4ch
+dd 08d93350ah
+dd 03e1ca8d7h
+dd 0cd784ea7h
+dd 084bb5821h
+dd 084a41006h
+dd 0710d3f16h
+dd 0217b5d2eh
+dd 029dd95b5h
+dd 0dd225f32h
+dd 0d1de040ah
+dd 08f8bed96h
+dd 0576ebc40h
+dd 08977a4e7h
+dd 084295c3dh
+dd 081888fc7h
+dd 0ce144218h
+dd 0969cd9a5h
+dd 07bfc42fdh
+dd 09fb7202eh
+dd 0851042b0h
+dd 0ee7dcd3ah
+dd 0b2c46c9eh
+dd 0795d2bf6h
+dd 0cb92369fh
+dd 06a561d60h
+dd 04a80266dh
+dd 09885312fh
+dd 0b59042ech
+dd 0cd822e14h
+dd 09fd9fd94h
+dd 0db0f13abh
+dd 07f75be9bh
+dd 0ce9000deh
+dd 0c2df3b1bh
+dd 0e14fcd98h
+dd 0a395bc44h
+dd 0b2768a13h
+dd 06cb4ce2ch
+dd 061b22a30h
+dd 0f13a44b0h
+dd 0daedd76ah
+dd 0549ec628h
+dd 0c3e591a3h
+dd 05b3af592h
+dd 05aef3317h
+dd 0ad311346h
+dd 04d74c4aeh
+dd 0eafd02f6h
+dd 022ee6037h
+dd 0f7bf8444h
+dd 071fa5acch
+dd 0d880d780h
+dd 007cab0efh
+dd 087d6f09dh
+dd 0e548338bh
+dd 0d49ddb88h
+dd 08805772dh
+dd 08ee445e2h
+dd 07674b4b9h
+dd 0aaa6b3b6h
+dd 03e7ef413h
+dd 0e485e280h
+dd 07e396c5fh
+dd 0e5b5138dh
+dd 042a84be7h
+dd 0020a6437h
+dd 0bcdef2ach
+dd 0ad73e952h
+dd 0127a88a6h
+dd 0e186cad9h
+dd 0402034ddh
+dd 09852d662h
+dd 048f9eaach
+dd 0a5ac18a4h
+dd 0f8af20d9h
+dd 00d83df6fh
+dd 06806d2d3h
+dd 068b51470h
+dd 0148d58ech
+dd 07170d0f5h
+dd 00452f18bh
+dd 01d5f012bh
+dd 09925de75h
+dd 026243b70h
+dd 03b1af65fh
+dd 0ed630fcfh
+dd 0466189b7h
+dd 0eb1a003fh
+dd 049330260h
+dd 094beae51h
+dd 00e260f81h
+dd 036b1e1e6h
+dd 086398768h
+dd 08e6551b3h
+dd 0d6e99c9ah
+dd 01375282dh
+dd 0989ddfa7h
+dd 06b28c7ffh
+dd 01a40ba20h
+dd 0692c5d44h
+dd 0a39ca635h
+dd 098e513a5h
+dd 0f0cb3c2eh
+dd 0869ad5eah
+dd 003eba067h
+dd 0e85828aeh
+dd 0a8fb61a0h
+dd 0ffcc1db9h
+dd 0f1b98f18h
+dd 05a60e2c5h
+dd 03060afceh
+dd 07787810fh
+dd 05ac779ddh
+dd 07777841eh
+dd 0589f504ah
+dd 03d88c7dbh
+dd 031b8fb1fh
+dd 05bee04ech
+dd 0ef91838ah
+dd 0a7a283cfh
+dd 0edced6bbh
+dd 01bdb2adeh
+dd 09a10ced7h
+dd 009360533h
+dd 0ed315fa4h
+dd 035382de3h
+dd 05617f04fh
+dd 074158217h
+dd 00eb06a24h
+dd 0ae847bf4h
+dd 06fbdca84h
+dd 05abf86cfh
+dd 00319fc74h
+dd 0789eff8fh
+dd 0aa1777a4h
+dd 0278e4bc0h
+dd 0b2fe0216h
+dd 0a16ba581h
+dd 06aa6bdd8h
+dd 0f6523245h
+dd 0ea7238a0h
+dd 0afc6f2f0h
+dd 02901688bh
+dd 0054ec92eh
+dd 0b19f7a31h
+dd 0d846f1f9h
+dd 05a31c904h
+dd 0dfca5f97h
+dd 020defb7fh
+dd 0da48fef6h
+dd 0c01d1f48h
+dd 0ef313d20h
+dd 00544d67ah
+dd 0fe5df1ffh
+dd 0c8c80799h
+dd 0ebf39a2bh
+dd 04c5412a0h
+dd 09a1add49h
+dd 018a11110h
+dd 0f1a00491h
+dd 062596eb6h
+dd 004483d4ch
+dd 027d7e6e4h
+dd 0ebefedf7h
+dd 0fdea9809h
+dd 0016e66ffh
+dd 0f76bff6ah
+dd 00a430e72h
+dd 0dcc50fc5h
+dd 08946ad2ch
+dd 057d1604ch
+dd 03f49a6d5h
+dd 0abd329bdh
+dd 0218a6c21h
+dd 019c11daah
+dd 07864e59dh
+dd 08233249dh
+dd 044b33d47h
+dd 098d7d4d9h
+dd 0e48405cdh
+dd 0287c0bc8h
+dd 0cfaa6eddh
+dd 095790290h
+dd 06fe8c4a4h
+dd 00ea0f66bh
+dd 04366fe26h
+dd 04b9444c0h
+dd 01400a0e1h
+dd 06a61788eh
+dd 02774170dh
+dd 065325f3ch
+dd 0b8e740f7h
+dd 0cf740fc0h
+dd 089fe8826h
+dd 09199d9a6h
+dd 0a675870ah
+dd 003825f2ah
+dd 0cdb0f43ch
+dd 03e50fc11h
+dd 0a06cc63bh
+dd 01a79e49ch
+dd 0d8757945h
+dd 0f59d902eh
+dd 0332bbf0ah
+dd 0b23c0cefh
+dd 046f7ebf5h
+dd 0632cdd5bh
+dd 0c9540af1h
+dd 0102fe05fh
+dd 0053d27a0h
+dd 058ae51d9h
+dd 052348525h
+dd 0771a1e12h
+dd 0f5a420c7h
+dd 02c651604h
+dd 085e12964h
+dd 05ede7507h
+dd 0a871d888h
+dd 02778f348h
+dd 09e9a5a59h
+dd 04b65e39ah
+dd 0d5e223cch
+dd 040045c8ch
+dd 057eff080h
+dd 0c3404c71h
+dd 08eeffdbch
+dd 07485fd31h
+dd 097c1de6dh
+dd 02842a8c2h
+dd 0cbc811e0h
+dd 04496acabh
+dd 08c56dab5h
+dd 0dd41f57dh
+dd 0238b4c14h
+dd 01cc76466h
+dd 03df6106dh
+dd 062035511h
+dd 0eb5b8005h
+dd 0588f3b5bh
+dd 02e1fc8f3h
+dd 0fd6bfe98h
+dd 0a4bcf11ch
+dd 0906109fch
+dd 0a82d17d0h
+dd 047394fc5h
+dd 08893a76bh
+dd 02da4c25eh
+dd 044bb3fdeh
+dd 0533cb8c6h
+dd 0972d783eh
+dd 057a7ef06h
+dd 05b9c76e1h
+dd 0ee397a77h
+dd 0b58b5879h
+dd 0dba3d366h
+dd 0f9347a30h
+dd 0c232a55ch
+dd 010a7b406h
+dd 046fc7a20h
+dd 0fc1cfe82h
+dd 06a0842ech
+dd 0131c2b77h
+dd 0f6c63ef6h
+dd 0f35180c2h
+dd 0217963c9h
+dd 0060be044h
+dd 06bad1cffh
+dd 0b62060f1h
+dd 00be3bd7fh
+dd 074abba5ch
+dd 0b560a614h
+dd 0e06b81e7h
+dd 0a8fbc5e6h
+dd 077ba1f4ah
+dd 0b5120f6bh
+dd 0fd9a8607h
+dd 0098c810ch
+dd 0b558eb61h
+dd 08ec72d7ah
+dd 03150d81ch
+dd 0ac439bafh
+dd 01a338a8dh
+dd 049c439f4h
+dd 00645cdeah
+dd 0aeebaf4fh
+dd 0f72d1365h
+dd 02589ee55h
+dd 08c0d6902h
+dd 08fe18d9bh
+dd 00ddfc084h
+dd 08ceea9c8h
+dd 0582b9ae4h
+dd 078328ce7h
+dd 01aa315a7h
+dd 02e8adee3h
+dd 07aa49ce1h
+dd 0d81ddc1bh
+dd 09939a61ah
+dd 0d2e332e9h
+dd 070d7e250h
+dd 0477a944dh
+dd 033166be5h
+dd 070ed9997h
+dd 0f4b74eb6h
+dd 0352f854ch
+dd 0d17171c3h
+dd 0ac65a688h
+dd 0316f2cebh
+dd 04e5df733h
+dd 053c96311h
+dd 0001e5f5bh
+dd 00d86db0fh
+dd 073468907h
+dd 0d646819bh
+dd 02209ac8ch
+dd 0a2c80da8h
+dd 077074b87h
+dd 089f1ebdah
+dd 00ebb0cf4h
+dd 017f7fcfah
+dd 0a4dae0a3h
+dd 07c8f796bh
+dd 05ded6ad9h
+dd 059db05d2h
+dd 0714d44feh
+dd 0899966e5h
+dd 0cceee776h
+dd 02b5f3da8h
+dd 07aed2cafh
+dd 04ffe3dd0h
+dd 0d8003156h
+dd 07d59689dh
+dd 004e76a1dh
+dd 02fe40e99h
+dd 066aac23eh
+dd 0911a0e9ch
+dd 0afda1db8h
+dd 035894941h
+dd 05469a28bh
+dd 0835e2d04h
+dd 0139ea1eah
+dd 073ae21dfh
+dd 0298e11a0h
+dd 0e41fdcbbh
+dd 08be446b9h
+dd 09635a1feh
+dd 0a918c046h
+dd 013de6b06h
+dd 001c63178h
+dd 09e869835h
+dd 03b357958h
+dd 0950eaf3dh
+dd 039c32564h
+dd 0f7b0dc04h
+dd 07e589664h
+dd 0a4a69363h
+dd 0604b3cc1h
+dd 06443f3ceh
+dd 07d8c3beah
+dd 0289022c5h
+dd 0407957f7h
+dd 0a4ea2577h
+dd 056472351h
+dd 0b11687eeh
+dd 0ec5da983h
+dd 03b97c013h
+dd 027f21468h
+dd 062265b27h
+dd 0784097efh
+dd 077aed8eeh
+dd 0b1f3a24bh
+dd 0bd9d8ab8h
+dd 07360b092h
+dd 0acd103d8h
+dd 0b62e08e4h
+dd 08e07e86dh
+dd 0a67abb6ah
+dd 037eba2b0h
+dd 08c0016c7h
+dd 0c39b94f5h
+dd 05e0c575dh
+dd 06e5d2257h
+dd 09eddcc91h
+dd 0f767e016h
+dd 04df6aebch
+dd 0415a7de3h
+dd 0c017a2b9h
+dd 02873b398h
+dd 045d386b5h
+dd 033de9bbeh
+dd 05d5c1227h
+dd 05e736d66h
+dd 0e01d3feah
+dd 0b096b3d8h
+dd 0ae4c632eh
+dd 095d2c38ch
+dd 0d1c00192h
+dd 05a932357h
+dd 022e1f286h
+dd 00da2ef28h
+dd 070b21348h
+dd 0a7a0827ch
+dd 012f4a1aeh
+dd 0097db42dh
+dd 0d2097c05h
+dd 0f792f2dch
+dd 0f0111da2h
+dd 0fe3a058fh
+dd 0c8408f36h
+dd 0285235a6h
+dd 0964d7ca3h
+dd 07a1d8f5fh
+dd 0bf0522f6h
+dd 04b7c9dd7h
+dd 0bd809d3bh
+dd 0d48eb9bdh
+dd 024e50d94h
+dd 0c9dbd749h
+dd 00d1b1064h
+dd 07ea9dce3h
+dd 03cb47b57h
+dd 0a7ebde49h
+dd 01c060482h
+dd 05ce1ab27h
+dd 0c6e4f3c5h
+dd 02a569f90h
+dd 0d7e6ef0eh
+dd 0fa26599ah
+dd 073c94971h
+dd 0f7266389h
+dd 068c3ab00h
+dd 0390d7f57h
+dd 0c5fa9684h
+dd 0d067e2beh
+dd 0e0355b59h
+dd 0104cd3a1h
+dd 02d830ec3h
+dd 0c26bc320h
+dd 0d49b56afh
+dd 006cfd07eh
+dd 090c93246h
+dd 06b4df8e5h
+dd 077a98a1ch
+dd 0dd39b11fh
+dd 0b863c539h
+dd 01689d8abh
+dd 0f4ece4f8h
+dd 0586bbd01h
+dd 0a2e019adh
+dd 022323aa7h
+dd 05b32285ch
+dd 0c0108844h
+dd 069cfa2d5h
+dd 095ae676dh
+dd 07afc8cb8h
+dd 044eff3fch
+dd 0598e8211h
+dd 008b72972h
+dd 033f60334h
+dd 09a52f15bh
+dd 00e36c92eh
+dd 0e7774b16h
+dd 0a4dbf15eh
+dd 08acf79cah
+dd 023337e83h
+dd 085a4260bh
+dd 0c5fed45bh
+dd 05023f7ddh
+dd 00da9bbd7h
+dd 030e182a4h
+dd 07da27060h
+dd 08d5889b1h
+dd 0161ac03ch
+dd 0075aaad3h
+dd 067bd911ah
+dd 0d931cbb4h
+dd 06c1425d7h
+dd 0c52583d7h
+dd 0ff46c85bh
+dd 04a002846h
+dd 0ff6a7a04h
+dd 031690aaeh
+dd 05c4bf73bh
+dd 029959cf5h
+dd 091b64ba8h
+dd 0a8d03d08h
+dd 0dad5b739h
+dd 09d1d8b45h
+dd 0516e336ch
+dd 05ac7b905h
+dd 026a981dch
+dd 0f1ce1361h
+dd 0d5b95749h
+dd 075745e22h
+dd 0d136cba5h
+dd 07747b786h
+dd 0ae8075cbh
+dd 02f2bd1c3h
+dd 04b9592c2h
+dd 0e5acb559h
+dd 02785c92ah
+dd 0246fe6e9h
+dd 01c8fc65fh
+dd 0d918b751h
+dd 0787f7ce4h
+dd 0d46ff47dh
+dd 03d334d3dh
+dd 0e80521e7h
+dd 0e722ffa0h
+dd 066e7fa74h
+dd 06c6e756bh
+dd 0b5530b34h
+dd 0997825d3h
+dd 02e543c2bh
+dd 0e403715ah
+dd 037b7d003h
+dd 0f964ac50h
+dd 0280e3f50h
+dd 04ee4b7c0h
+dd 021a7a107h
+dd 0a9eb01bbh
+dd 03691e887h
+dd 0199c2d30h
+dd 048b633d6h
+dd 00279721ah
+dd 0b299708bh
+dd 0022c5eeeh
+dd 0c72a6316h
+dd 08a580df5h
+dd 0de364294h
+dd 0345eace2h
+dd 0c10c35fch
+dd 07821907bh
+dd 0d9c55942h
+dd 03b3e6686h
+dd 078edc856h
+dd 0a2b9ce69h
+dd 0582ef821h
+dd 0d0f56232h
+dd 0f6c064f1h
+dd 003d3cd70h
+dd 06e35c48dh
+dd 07f912821h
+dd 09139d6bbh
+dd 00de62d85h
+dd 08a95b8dfh
+dd 06fed6813h
+dd 0f01fd0fah
+dd 007221023h
+dd 00ab23badh
+dd 0be66925bh
+dd 0b0f9bebah
+dd 024eb5b42h
+dd 057b68cfeh
+dd 0ae236354h
+dd 0b3d32a95h
+dd 055aa3dd2h
+dd 08aef2865h
+dd 0eeabd927h
+dd 066d3f4d3h
+dd 084492e06h
+dd 0b8ab3f16h
+dd 09df516edh
+dd 0f716fec5h
+dd 0a4851cbdh
+dd 03a86ede8h
+dd 001369c94h
+dd 0a5c66abah
+dd 093d169b0h
+dd 018d22575h
+dd 09707cc9dh
+dd 015f7c06ah
+dd 0a08e3f0ch
+dd 0a6581f76h
+dd 08fb039c7h
+dd 09eacdcfbh
+dd 09c929e8ch
+dd 0a1b826c6h
+dd 0821427dbh
+dd 0312fe40ch
+dd 0fd570737h
+dd 040083ba6h
+dd 06915994dh
+dd 0165fd013h
+dd 01b0fe6d2h
+dd 0f9c7c640h
+dd 08ec6b983h
+dd 02a6390c7h
+dd 05d6944dah
+dd 005895dcch
+dd 0b995f84eh
+dd 05f5ecf23h
+dd 0c56a42f1h
+dd 0faf5529dh
+dd 07ddbf17dh
+dd 00c03c8cch
+dd 09421fa4bh
+dd 09625abddh
+dd 05af9dd2eh
+dd 0113e7727h
+dd 0be5b03b4h
+dd 0edf4f3eeh
+dd 0e93c6325h
+dd 0c5f99ecbh
+dd 073d61262h
+dd 0af259604h
+dd 0909a350ah
+dd 01d751bc0h
+dd 057ab762eh
+dd 0c79cd28ch
+dd 04db113ebh
+dd 06e2637c6h
+dd 07f249ee8h
+dd 02ed21a19h
+dd 03253fa84h
+dd 0e9fff471h
+dd 0155628d2h
+dd 057ce5b0ch
+dd 0397e73e2h
+dd 0a22e0e51h
+dd 0be74fa7fh
+dd 06edd8975h
+dd 0befc7e1dh
+dd 0ed0357c3h
+dd 0cadf2d45h
+dd 057d604fdh
+dd 08c5ba026h
+dd 06f429eadh
+dd 05d93ea99h
+dd 0c398a0d4h
+dd 0da30e836h
+dd 025c6bd85h
+dd 055c79fc5h
+dd 08174eaebh
+dd 00887cb06h
+dd 0fa4feb50h
+dd 0be6979bbh
+dd 060b293e2h
+dd 08a7d183dh
+dd 0a67694a7h
+dd 009c557e9h
+dd 0951430c8h
+dd 06b60f8ddh
+dd 075d371d6h
+dd 0401d6dd8h
+dd 03accfc1eh
+dd 0812694c5h
+dd 0cb9a8f59h
+dd 0fc7f3each
+dd 04f47c614h
+dd 0c3fa4846h
+dd 0c39627d8h
+dd 0584f70e8h
+dd 0477713bbh
+dd 0deb462ebh
+dd 027d100e0h
+dd 0cff37f91h
+dd 0dea89096h
+dd 0083d1fffh
+dd 04727c086h
+dd 06e258c67h
+dd 077298e3dh
+dd 03d649b88h
+dd 0690b2c63h
+dd 0c58d93a7h
+dd 00a5a6762h
+dd 0570f3fd4h
+dd 040d7a3bdh
+dd 0fa21994fh
+dd 06640096ch
+dd 06e7ee6ffh
+dd 02a9fa8cdh
+dd 073c812dbh
+dd 011edc864h
+dd 0ff67f21bh
+dd 0b8fd7af5h
+dd 0e7ded520h
+dd 069b1f578h
+dd 03b57a932h
+dd 092930adah
+dd 0fad8b1f2h
+dd 051eed71ah
+dd 051072e4dh
+dd 069d3526ch
+dd 0b20e6e19h
+dd 0d010a8a9h
+dd 0201fae20h
+dd 072dd3383h
+dd 0900f6020h
+dd 08ad87735h
+dd 01c6a8e31h
+dd 033b83ae2h
+dd 0336842ddh
+dd 074dd559ah
+dd 039321d7ah
+dd 0137d0911h
+dd 0ff68f5b9h
+dd 0a094ba1ch
+dd 092acedd6h
+dd 0d5bd8ccah
+dd 0a09c058eh
+dd 0a7093d4ch
+dd 0a278259eh
+dd 05501af48h
+dd 0ff030c4dh
+dd 01ddcbbfah
+dd 0930e9185h
+dd 0abb0e8d8h
+dd 04923d5e4h
+dd 0f4d7db7dh
+dd 0d1f71fc5h
+dd 0c3cdab80h
+dd 03d58dedfh
+dd 0b0510b79h
+dd 048e1384ah
+dd 0dc9594a6h
+dd 02abf2ca7h
+dd 03bc7546eh
+dd 0bb5f248bh
+dd 0bdcfb80dh
+dd 05b35804ah
+dd 0bd056864h
+dd 0b58f88edh
+dd 07ae37e74h
+dd 04d056937h
+dd 0ae6dc79eh
+dd 040eed468h
+dd 0a6b51e9eh
+dd 052c5930dh
+dd 06eb4791ah
+dd 0ee4f55eah
+dd 00401d7fbh
+dd 01a9dcf0ah
+dd 0a7bf1e26h
+dd 0e766f227h
+dd 049c0ed1dh
+dd 0540ce6c7h
+dd 078a27a04h
+dd 0018f0f67h
+dd 0a87a9ef6h
+dd 040c407dbh
+dd 0242938edh
+dd 012cc78b3h
+dd 07ddab8b9h
+dd 003609d5ah
+dd 051ed3cabh
+dd 07ad1634fh
+dd 0ad27ce11h
+dd 0fe0dcf49h
+dd 0715fc240h
+dd 038dbcc94h
+dd 055e33d5fh
+dd 072edb2cbh
+dd 0c0d615d4h
+dd 037311d1fh
+dd 0dc74c8e5h
+dd 0d94b0263h
+dd 0094a75abh
+dd 0a8a8e9f7h
+dd 0f44dfcd7h
+dd 072097472h
+dd 0938e7a13h
+dd 0bf9fe9e6h
+dd 0fb1b6f57h
+dd 0c7bca4a1h
+dd 0d2f16e00h
+dd 08ba8ff8bh
+dd 0deb39d8eh
+dd 025104c71h
+dd 067d6576fh
+dd 0179b6edah
+dd 040a28544h
+dd 0d7f18219h
+dd 03ea8470ch
+dd 0959264d7h
+dd 0e0792c06h
+dd 08f5e4c48h
+dd 05ab7d639h
+dd 0cc092a55h
+dd 0e0d09dc4h
+dd 0cee5f7c2h
+dd 043d1dd6dh
+dd 09fc92887h
+dd 0fada5efbh
+dd 07611b9a1h
+dd 0f2000077h
+dd 0eb7ec8e7h
+dd 0f1592998h
+dd 0f1e8373eh
+dd 0dad19891h
+dd 05f46d466h
+dd 08ddb4ab6h
+dd 04501687bh
+dd 01332ac4ah
+dd 047a951deh
+dd 0381bbf08h
+dd 047fe8008h
+dd 0d4bfb061h
+dd 0bb6fefcdh
+dd 08c4491f6h
+dd 017286ff5h
+dd 00553d4fah
+dd 066a49068h
+dd 0bfd3c0a6h
+dd 04b2bc98ah
+dd 0f2d65629h
+dd 03558a94ah
+dd 08c93f0e6h
+dd 0e65a8409h
+dd 01cba3ae7h
+dd 02678c9cch
+dd 0a0b4bdaeh
+dd 03252691bh
+dd 040870ca1h
+dd 07224b57ch
+dd 03b4b45b8h
+dd 084a56b43h
+dd 023307f20h
+dd 0fa678f71h
+dd 0c796ee15h
+dd 02ade78fdh
+dd 008132196h
+dd 0e40ae477h
+dd 036eb53f1h
+dd 0086ea19ah
+dd 01a90b2edh
+dd 026cc2bbeh
+dd 05325ec7ch
+dd 03aa07271h
+dd 0e69b1d1ch
+dd 065c54316h
+dd 028a99a56h
+dd 09e351ed8h
+dd 02872c856h
+dd 0be6aae3eh
+dd 0b40ba68dh
+dd 06d33482eh
+dd 0bd18fcb3h
+dd 02b518611h
+dd 0537903deh
+dd 0b6666f98h
+dd 094d29e4ch
+dd 03d9f8f37h
+dd 060aa07fdh
+dd 003c53689h
+dd 08b86cac6h
+dd 0680323b2h
+dd 017b85d64h
+dd 07d8054b0h
+dd 06a570b5eh
+dd 0db54530fh
+dd 0c3da93f7h
+dd 0b19b3264h
+dd 073e862edh
+dd 052bfc7fch
+dd 0e0f00deah
+dd 028903e4ch
+dd 070b48628h
+dd 0cfc50102h
+dd 0c9f9d85eh
+dd 00cdfc162h
+dd 06dfc05f7h
+dd 04d9a913ah
+dd 098397a29h
+dd 01aa72178h
+dd 0b0e88d54h
+dd 0ccf0e78fh
+dd 004333c87h
+dd 0f3a9c3ceh
+dd 0ccea333fh
+dd 04ef10e2ah
+dd 0351514d3h
+dd 0428c2adfh
+dd 03748b7e5h
+dd 0fd8f2254h
+dd 07d3276c2h
+dd 0a35c5b8fh
+dd 005b7cb06h
+dd 0df4d2b3dh
+dd 0bac917b1h
+dd 0d2f3c738h
+dd 0c4d814c7h
+dd 0120814beh
+dd 09d727b33h
+dd 03f63675dh
+dd 05afc39d2h
+dd 0d061e69dh
+dd 015872ba7h
+dd 09c4add9dh
+dd 09a157b9eh
+dd 0bd7bcdcbh
+dd 04352a557h
+dd 0871569ebh
+dd 09a18a10ah
+dd 0a65cdec2h
+dd 0c22e54a1h
+dd 0af3157f9h
+dd 0ce6c82b5h
+dd 090a04970h
+dd 095a4554bh
+dd 09718fa73h
+dd 09fb5fd6fh
+dd 017a9d0e9h
+dd 0f136891eh
+dd 01c619fbeh
+dd 00c898799h
+dd 0c5115883h
+dd 0472317bch
+dd 0a04759aeh
+dd 0fac3e468h
+dd 02f4b6a1ch
+dd 0897f8787h
+dd 09c5bee9ch
+dd 00741fed7h
+dd 06de2fc2bh
+dd 095d443aah
+dd 0a2f17ab5h
+dd 0495cecbch
+dd 059616f09h
+dd 013c4defeh
+dd 0e0b65141h
+dd 09f2b7cdeh
+dd 00dfd1190h
+dd 0980b1ab9h
+dd 0fcdc1700h
+dd 0e867d979h
+dd 0241db0ach
+dd 013f24c9bh
+dd 08cd4e069h
+dd 0a53c4c23h
+dd 0e2f881c7h
+dd 035c51ee1h
+dd 0307f55b7h
+dd 08eb5763dh
+dd 0a5ea9498h
+dd 074681ad5h
+dd 0f8ff71f6h
+dd 036c30878h
+dd 06e23f3e0h
+dd 0d14bbd7ah
+dd 091e20dc6h
+dd 035000580h
+dd 01aca9c28h
+dd 0e953cd46h
+dd 0b8a64c8bh
+dd 0fbb6e48ch
+dd 0a516890ch
+dd 0b8b5da82h
+dd 02c46655ah
+dd 02b4abe9ah
+dd 0af3993ffh
+dd 04ed8feb5h
+dd 0f6388808h
+dd 0ce51b1f3h
+dd 09ae3953fh
+dd 0819f54bch
+dd 0b03932a2h
+dd 06ad4becdh
+dd 03cb72ea9h
+dd 0b3d85caah
+dd 0bb32aa30h
+dd 0818e956ah
+dd 01fc982a4h
+dd 09f629d96h
+dd 0ae187ecch
+dd 0ac5728feh
+dd 016005bb5h
+dd 0c8fd1f71h
+dd 0cf543d25h
+dd 02e4044b6h
+dd 0c813326fh
+dd 073008994h
+dd 014554edeh
+dd 05905099eh
+dd 0a95cf79fh
+dd 06df13519h
+dd 0c9145e07h
+dd 0150b579bh
+dd 0c0eec246h
+dd 0f988994ah
+dd 00cd94796h
+dd 053c22072h
+dd 097dbb837h
+dd 0619a5765h
+dd 04484eedah
+dd 0e96ea079h
+dd 06cf91685h
+dd 01ea92593h
+dd 0c0701744h
+dd 0ca87df0eh
+dd 01aa648d7h
+dd 00640ef9bh
+dd 08b92a53dh
+dd 0f9f9dadeh
+dd 0cc016a6dh
+dd 0c1014e21h
+dd 0cba27306h
+dd 02d04d4c4h
+dd 06237eb2dh
+dd 02421fea3h
+dd 0fb556462h
+dd 045352aa8h
+dd 0954e44feh
+dd 0f0f922a8h
+dd 0663a0dbah
+dd 02faf4417h
+dd 082ca1319h
+dd 0dcf6fcd9h
+dd 0f503d7e5h
+dd 04f466390h
+dd 021d6fa10h
+dd 0c0bb877eh
+dd 03feb77a4h
+dd 023753ba0h
+dd 06251b326h
+dd 09d6fbfe7h
+dd 056a42c03h
+dd 062ba6281h
+dd 08eb8a798h
+dd 0f4ddfdd3h
+dd 05204e65fh
+dd 051ae6694h
+dd 0ed733b79h
+dd 044dfea32h
+dd 0e65dc4a3h
+dd 0619c9910h
+dd 0940a4eb8h
+dd 0c28cf773h
+dd 0bbfaff4eh
+dd 0d82914bfh
+dd 0e6359128h
+dd 02b95df9ah
+dd 0745a0fc1h
+dd 0c8391bcfh
+dd 0010d0b32h
+dd 0bba61f2dh
+dd 0ace4badch
+dd 08c0cf7b7h
+dd 08095ceffh
+dd 048a24863h
+dd 0f62e1378h
+dd 045384cb1h
+dd 08ee4f765h
+dd 03ea10c74h
+dd 018bb4e27h
+dd 0394f2766h
+dd 04c4af4feh
+dd 0e32a7f80h
+dd 0fd70709ah
+dd 0d86d052eh
+dd 0e72ddbf5h
+dd 0aee3c23dh
+dd 05f29711ah
+dd 06bc6ec2eh
+dd 03f7afe60h
+dd 08b36711ch
+dd 08a46eb15h
+dd 07c617166h
+dd 03d1a3026h
+dd 07d4cd671h
+dd 0221a3673h
+dd 0a8f65642h
+dd 059d95c72h
+dd 02f8676a1h
+dd 01428c590h
+dd 098d8f426h
+dd 0cfbf34a1h
+dd 0a4468362h
+dd 005435693h
+dd 07b9e6301h
+dd 0c8215431h
+dd 033a022ffh
+dd 0e5d72867h
+dd 08f2017c3h
+dd 0a419cf6dh
+dd 02891bdb1h
+dd 0a9ca4e7ah
+dd 09b48034fh
+dd 0d2ce5a03h
+dd 03d1d25aah
+dd 057127255h
+dd 0922ef511h
+dd 04bdfe8e7h
+dd 09fea191eh
+dd 0e33568b6h
+dd 01cb3a3f4h
+dd 0e62211b8h
+dd 0e60ac90eh
+dd 0f0bb26bah
+dd 017d244b0h
+dd 03c337bdfh
+dd 0a4d6e89ch
+dd 07bd42e41h
+dd 0a7acf7cdh
+dd 04dc3e688h
+dd 09362f797h
+dd 01c1f82b6h
+dd 00558103fh
+dd 079beb263h
+dd 0efa0d298h
+dd 0ee5b2ec1h
+dd 02bd26f2eh
+dd 0b9660a29h
+dd 0ba47bf12h
+dd 05a168f48h
+dd 0e0499de3h
+dd 0a1a93c78h
+dd 0e91900c8h
+dd 0e4a5abcah
+dd 03e2b2e8ah
+dd 00a62a9cdh
+dd 0bda1324ch
+dd 0f4ec7905h
+dd 03607f19ch
+dd 08802099ch
+dd 011bb3478h
+dd 0efa46c52h
+dd 0b57a37ach
+dd 0138a7fcbh
+dd 00c2ec027h
+dd 0f4c7022dh
+dd 075e3ec31h
+dd 08009d8b2h
+dd 01667bd43h
+dd 0774b44b2h
+dd 0b86549b8h
+dd 035ac0bc2h
+dd 0b70b3492h
+dd 097cbcbbbh
+dd 06b91aebdh
+dd 07fc3c7bch
+dd 082f65747h
+dd 080848a73h
+dd 07941358ah
+dd 0a97bb01dh
+dd 063401c2eh
+dd 020db8133h
+dd 07fbe12e2h
+dd 04b272fe2h
+dd 064500bc3h
+dd 014ec83a1h
+dd 081f765a1h
+dd 011d412d5h
+dd 072af1568h
+dd 0992525b3h
+dd 04aa8655fh
+dd 06f300305h
+dd 0b45bb9ddh
+dd 06e08178bh
+dd 083341e1fh
+dd 062a09cd3h
+dd 01105d90dh
+dd 0814d75f6h
+dd 0813f666ch
+dd 0af0b7854h
+dd 01fc9a5c6h
+dd 03053971fh
+dd 01a946cd2h
+dd 08cd466e4h
+dd 0023f700ch
+dd 09dbf6940h
+dd 0766df2b3h
+dd 0668487ach
+dd 0f6baa3f4h
+dd 04b2c1b97h
+dd 080b0b9e5h
+dd 02fd3bff3h
+dd 02df57b23h
+dd 08dbc024ah
+dd 0f5665f5bh
+dd 085f70afeh
+dd 0acd29da6h
+dd 02b828aaeh
+dd 00c830621h
+dd 0813087d9h
+dd 0854a063ch
+dd 07afe7a49h
+dd 006b2fbc0h
+dd 0f1951060h
+dd 09f84e315h
+dd 0b49be474h
+dd 03e346f6ch
+dd 0d6260253h
+dd 08e0b9f60h
+dd 0feb41647h
+dd 080876ed4h
+dd 0fd833803h
+dd 0aad6c8dfh
+dd 0b498f375h
+dd 02fc7bcbch
+dd 03cbbe6adh
+dd 01c513182h
+dd 08aaf70bbh
+dd 011988e5bh
+dd 0b1e5ce68h
+dd 08d9bb4c8h
+dd 08378d6f2h
+dd 0ad9b12b2h
+dd 06f547878h
+dd 0c3b62319h
+dd 002f5440ah
+dd 009cf73c5h
+dd 0d32ea35bh
+dd 0c3091e73h
+dd 0b6409687h
+dd 0ffd99ee7h
+dd 0d154344ch
+dd 0cd3965bah
+dd 016e9a936h
+dd 0ee606a57h
+dd 0efabc9f1h
+dd 041592467h
+dd 065dac911h
+dd 0c364885ah
+dd 071d63515h
+dd 09e802f47h
+dd 012610532h
+dd 03b88707fh
+dd 08b87bbc3h
+dd 0143bc209h
+dd 06bb9c29bh
+dd 0d0cc0e0bh
+dd 021d4e0a2h
+dd 0f70e0434h
+dd 002f1abefh
+dd 02e43647eh
+dd 0aa420393h
+dd 0f8e13861h
+dd 0020ba01ah
+dd 0fff5ec41h
+dd 059cbf160h
+dd 0795e9880h
+dd 03a6d4e91h
+dd 01250590bh
+dd 0fb68aedeh
+dd 0b1dfe68bh
+dd 0b8928b77h
+dd 06da8e6f6h
+dd 050c1bf9fh
+dd 0777e1b26h
+dd 05168ba1eh
+dd 027e1f09fh
+dd 05be6f0ech
+dd 02c469f03h
+dd 0f4223e74h
+dd 016ebb6f5h
+dd 028e9b28eh
+dd 007676d0fh
+dd 0a20038dah
+dd 06a9cf4f5h
+dd 0644e2ddch
+dd 085217546h
+dd 03e3316e2h
+dd 017cb65cfh
+dd 0df721c77h
+dd 03b75a686h
+dd 0a6680d2dh
+dd 0e5534902h
+dd 0b422946dh
+dd 05d04df09h
+dd 071f5f091h
+dd 075a30378h
+dd 0ea928e37h
+dd 0b564333fh
+dd 02fc0e592h
+dd 056692395h
+dd 09eb9e54fh
+dd 0e7850c04h
+dd 0d4fbffech
+dd 038c2e5a4h
+dd 089c7aa1ah
+dd 0cb05b7b8h
+dd 0328438beh
+dd 01af3834ah
+dd 092fd8107h
+dd 0ab8cbe39h
+dd 0ab54fc5dh
+dd 07cfcee18h
+dd 0d2852584h
+dd 0b4553000h
+dd 052028e29h
+dd 070c3f191h
+dd 00c59ceddh
+dd 0cd80ca8ah
+dd 072d749bdh
+dd 00e6f3676h
+dd 01060d129h
+dd 0593ac1dbh
+dd 0874794bbh
+dd 01a2b8b68h
+dd 053b2e4c5h
+dd 03bb7a3a2h
+dd 0e321a67eh
+dd 0e990d449h
+dd 08a821a6ch
+dd 00095eea9h
+dd 00d6b6dc4h
+dd 02ff18097h
+dd 0bcd7adbbh
+dd 00a67d27ch
+dd 0bf130edeh
+dd 03a07dc1ah
+dd 017374376h
+dd 0209a138dh
+dd 0c3ceb47eh
+dd 0abacfc62h
+dd 0a15c7317h
+dd 0a19c046dh
+dd 0b6abfe69h
+dd 0a1ea12c2h
+dd 0e7f5bc12h
+dd 035866aa0h
+dd 0df81d5bdh
+dd 0209640b5h
+dd 0091e9c9ah
+dd 02f452e73h
+dd 0dbe1e79eh
+dd 019f91e16h
+dd 06666e3c5h
+dd 013583484h
+dd 0f0c2e4cch
+dd 0bd1f1dd2h
+dd 096e92fd4h
+dd 09fffca39h
+dd 0eb68a223h
+dd 0b9c6a4bdh
+dd 00d98aa81h
+dd 074136326h
+dd 02ee09cafh
+dd 0314c9028h
+dd 017e53d90h
+dd 0c8a91183h
+dd 0d68f52e6h
+dd 03abcecd3h
+dd 0753eb54ch
+dd 09f99a1f2h
+dd 0875e5ef4h
+dd 0dbe70e01h
+dd 08461c67dh
+dd 0a96baf35h
+dd 0e637df29h
+dd 000c2ee0ah
+dd 05688d6beh
+dd 0fc021854h
+dd 013151069h
+dd 0cde40c40h
+dd 033a265b8h
+dd 077852b90h
+dd 069f63f5ah
+dd 06555c50ch
+dd 037977549h
+dd 0893f611fh
+dd 01e678665h
+dd 0d246db2bh
+dd 0dc1d2f13h
+dd 08ce16d59h
+dd 0bd332f90h
+dd 0da78dc3fh
+dd 090cb4fe5h
+dd 03cf011a6h
+dd 08b9440beh
+dd 0ac2ebfc6h
+dd 0676c9e66h
+dd 044d7f542h
+dd 00254f1e0h
+dd 00297e167h
+dd 02981c29ch
+dd 01ba17e50h
+dd 09f1ab777h
+dd 0cb01edf7h
+dd 0cab2c20bh
+dd 0b45fd69dh
+dd 0913a8209h
+dd 0420a9f28h
+dd 0dc5bd5c7h
+dd 09da7c9efh
+dd 0ffdaf727h
+dd 0844c6a9ch
+dd 04355460eh
+dd 0bcf384d0h
+dd 07506567fh
+dd 0ec6c2cd9h
+dd 0e08bb981h
+dd 08657ece7h
+dd 0c129f8cdh
+dd 0d0222e23h
+dd 08296f73bh
+dd 03cd0a8c2h
+dd 05c3ce3e1h
+dd 0b56b606eh
+dd 0254bea8bh
+dd 009978133h
+dd 0575f6808h
+dd 030d09777h
+dd 050dd9e0ah
+dd 079304bfeh
+dd 0a929d9b4h
+dd 00e81dbd5h
+dd 051f9ff47h
+dd 03797db87h
+dd 0dcdb005eh
+dd 0e08e3ab3h
+dd 01a98dd66h
+dd 046fec285h
+dd 084cededbh
+dd 060b18f8bh
+dd 003663f9eh
+dd 0caffd93dh
+dd 0d3b17324h
+dd 05bd7cd01h
+dd 097a5f4feh
+dd 05a399b5bh
+dd 0fd70d575h
+dd 04acd2a6dh
+dd 070c41966h
+dd 0782cd668h
+dd 056adbb96h
+dd 079439a79h
+dd 0397e2432h
+dd 0b7b906cfh
+dd 0dfb03df3h
+dd 05d45d142h
+dd 03e164513h
+dd 05aa7a898h
+dd 08c43a507h
+dd 03c1e4ce0h
+dd 09b1e534bh
+dd 0b54774b2h
+dd 0fd5ac20dh
+dd 0bc7a42bah
+dd 0bcab4ca5h
+dd 0bf867eefh
+dd 0f9aa1622h
+dd 0e6c612e1h
+dd 09e1dff69h
+dd 07db3e997h
+dd 06c48758dh
+dd 0dc3a1cf5h
+dd 0c6f22c8eh
+dd 02d975ff5h
+dd 0413450c4h
+dd 0b9253343h
+dd 085659a1ch
+dd 0aa201f6ah
+dd 0aaa0dacfh
+dd 0aaeeb51dh
+dd 090a592a8h
+dd 0baee25c7h
+dd 08239c852h
+dd 06798b637h
+dd 032df1f6ch
+dd 05abfd774h
+dd 0250284b7h
+dd 0a9b52f26h
+dd 00b40603ch
+dd 0ca43759ah
+dd 095ed7ddfh
+dd 0651ed52ch
+dd 00c01d8abh
+dd 08234e02fh
+dd 0e1915e30h
+dd 0b0dcd8d3h
+dd 026260111h
+dd 0afc56ee0h
+dd 002250d74h
+dd 0048f899eh
+dd 01a77f45ah
+dd 02120cb74h
+dd 080eb01d7h
+dd 0085d2c41h
+dd 0acd80e15h
+dd 06248576ch
+dd 0aea23b90h
+dd 0426cd251h
+dd 085864bf8h
+dd 0d025e51eh
+dd 053ea2aa1h
+dd 01b5ba942h
+dd 023ccb571h
+dd 0cc8a1b71h
+dd 0177ac056h
+dd 0002cbdc6h
+dd 0f5be9029h
+dd 0c776372eh
+dd 01727d539h
+dd 036dc016bh
+dd 0397407e6h
+dd 093fe863ah
+dd 0ce2773f7h
+dd 01a9d645fh
+dd 0e427fbc4h
+dd 0a59a6348h
+dd 02386c9cah
+dd 0751f2c80h
+dd 0a3161720h
+dd 08b02d3bch
+dd 0fa77a49ch
+dd 0bec69634h
+dd 0b071518bh
+dd 0209f76fch
+dd 00520a893h
+dd 079085062h
+dd 0136e06fah
+dd 0a559115fh
+dd 0e923cabfh
+dd 011b32e06h
+dd 08e5d662eh
+dd 0cbf42abdh
+dd 0a4d1f451h
+dd 0569ed6a5h
+dd 0581c4c4fh
+dd 04cbfd6b7h
+dd 06c9d15cfh
+dd 07a3c0295h
+dd 0d056574eh
+dd 008d418b8h
+dd 004d136d3h
+dd 058bd0751h
+dd 0dfe738b9h
+dd 035fc3c2eh
+dd 020324f59h
+dd 09b922d93h
+dd 0344e40e0h
+dd 05b476a34h
+dd 0034d7d93h
+dd 0286e2a0ah
+dd 0e8a2bfddh
+dd 00afe454bh
+dd 0a14011c3h
+dd 06fdc7cedh
+dd 00c7803a3h
+dd 006b1ab8dh
+dd 058239d89h
+dd 0bcdd1955h
+dd 0fbb3fca2h
+dd 0a5363c17h
+dd 069e87e03h
+dd 0b0b0b240h
+dd 0a86400f4h
+dd 061a70475h
+dd 0e79608d0h
+dd 0b63e94d1h
+dd 0a5e5af36h
+dd 0fa14306ch
+dd 08a98bed4h
+dd 01e72bb02h
+dd 00795bcf6h
+dd 0e0b3b757h
+dd 0e0ab364eh
+dd 0a5e81ad3h
+dd 0cd079c5ch
+dd 0e3e38224h
+dd 04b9d2c2ah
+dd 0c5e79039h
+dd 075431cdeh
+dd 043915724h
+dd 08384ea0dh
+dd 0ee8658f3h
+dd 0243c6ee3h
+dd 030b2bf47h
+dd 0d91d8f58h
+dd 058ede645h
+dd 040485f28h
+dd 0eaba3491h
+dd 0b1f2ef5dh
+dd 03b8a2d6ah
+dd 0523cc976h
+dd 05cd2fefch
+dd 0cb57a212h
+dd 0f7417e9eh
+dd 0fd4a4bc9h
+dd 019e454d8h
+dd 0bf76ec61h
+dd 0cfa8dedbh
+dd 0e46f5ed9h
+dd 03cbce09ch
+dd 00f2d1c40h
+dd 04100acd7h
+dd 096d668bah
+dd 09be27ea3h
+dd 0321330dfh
+dd 0a38d3270h
+dd 0d37061a7h
+dd 0dd55cef5h
+dd 0db44d22bh
+dd 0fb4512bch
+dd 047d0de7bh
+dd 039b5449fh
+dd 007dac9edh
+dd 0cd249678h
+dd 0d05c3de9h
+dd 09313740ah
+dd 0b4f14ad2h
+dd 0060dd609h
+dd 0c34c0014h
+dd 0079f4975h
+dd 053ea5f5eh
+dd 0c4725811h
+dd 0bab945bfh
+dd 0e6cbd1ddh
+dd 067901229h
+dd 0de49c5b2h
+dd 0f070299ah
+dd 09891e38eh
+dd 0f1a50ac8h
+dd 09979a37dh
+dd 08d0f3e53h
+dd 0e27b13c4h
+dd 0ed3256ach
+dd 0f61d78eeh
+dd 0e11ac91ah
+dd 0ec8e3ef3h
+dd 027989810h
+dd 0a4938dc8h
+dd 04927460ah
+dd 0e95a6390h
+dd 062f64497h
+dd 06b6ab8e7h
+dd 05ac625bbh
+dd 04b4b9714h
+dd 07d4ac21ch
+dd 0dd29a63ch
+dd 00fcc3ecbh
+dd 07c3d79e8h
+dd 094552186h
+dd 0dde6a83eh
+dd 08245ed75h
+dd 015c3a05ah
+dd 0967b54c3h
+dd 08b5cf385h
+dd 0c7ecf1c7h
+dd 0ea794f7ah
+dd 0dbf15c50h
+dd 07fba6b92h
+dd 05fe2e5c0h
+dd 0f74bddd1h
+dd 0a6cda87bh
+dd 0e7b1937dh
+dd 052365088h
+dd 068b8011ah
+dd 08aa84ed6h
+dd 0c33abf80h
+dd 084acaac1h
+dd 0e6523272h
+dd 0ea85cf92h
+dd 00b67e9d4h
+dd 0818ad965h
+dd 0dde7b1b6h
+dd 04c9f8297h
+dd 0b77087dch
+dd 05fbd28f5h
+dd 07e5f75deh
+dd 093aeeff0h
+dd 01f96bedeh
+dd 0ae44454ah
+dd 0035b114ch
+dd 009916cech
+dd 087462120h
+dd 0c50558b7h
+dd 0ff6ca18ah
+dd 0fa9adad1h
+dd 0077d0cc1h
+dd 009460bb2h
+dd 0c86b3b82h
+dd 0c40b052ch
+dd 03ef77e8dh
+dd 0a4534d31h
+dd 09080cf0bh
+dd 04ceac36eh
+dd 050e6a5aah
+dd 0c4ecb23dh
+dd 075acb57ah
+dd 064931d52h
+dd 07b6fe692h
+dd 0fd43a95fh
+dd 0552d7e97h
+dd 0e54289adh
+dd 03f7607cdh
+dd 07d02c729h
+dd 085cda84ah
+dd 03d83dc60h
+dd 0f85f2b26h
+dd 003c1b29ah
+dd 00a5c80afh
+dd 03ca62b5ch
+dd 01cfc8562h
+dd 011ec4230h
+dd 09a7ddc27h
+dd 0490fe432h
+dd 0dc0c1a2ch
+dd 0dfb16853h
+dd 009e6a8c3h
+dd 0ae4d4ba1h
+dd 007e48e0ch
+dd 0ce94b22eh
+dd 09f782918h
+dd 0319043e2h
+dd 0e0e805fdh
+dd 03ee7547bh
+dd 037c512d5h
+dd 016a539d8h
+dd 0875126fdh
+dd 0ba7a6c17h
+dd 0611ab25bh
+dd 080b8fa22h
+dd 0c8b81cdeh
+dd 08e2c3588h
+dd 0723570bah
+dd 0c3bce932h
+dd 0600bd61fh
+dd 023968c2bh
+dd 05e8b33ceh
+dd 04348ea85h
+dd 069dd30d5h
+dd 080712d2ch
+dd 0b40f5143h
+dd 0460a708eh
+dd 0f974252ch
+dd 0fda96407h
+dd 0a42a3daeh
+dd 0e6ed2ec1h
+dd 00d27a67dh
+dd 0210732e6h
+dd 0b46908abh
+dd 0159aac45h
+dd 0e87c2dc9h
+dd 03e31a8e4h
+dd 02b89cb77h
+dd 0d01e7fd7h
+dd 06ac0e87ah
+dd 0a75fa77eh
+dd 06c80b40dh
+dd 050b5d029h
+dd 08932adfdh
+dd 064f3a954h
+dd 0dd6bb0eah
+dd 0db328a99h
+dd 044c8c0b3h
+dd 0492357c5h
+dd 082b3a4eeh
+dd 051712c68h
+dd 0599175b7h
+dd 0e9cf1854h
+dd 0d14b7253h
+dd 0ca815ed3h
+dd 013882ff0h
+dd 0b0314160h
+dd 09e1c7bf8h
+dd 0fd07bb4fh
+dd 058bac384h
+dd 0aba6b72fh
+dd 0309838ddh
+dd 016fb73d6h
+dd 0a7fcb105h
+dd 0d23a239dh
+dd 0ab6b226dh
+dd 0d0adf253h
+dd 0fa86c6c7h
+dd 0734988e7h
+dd 04cca3951h
+dd 05bf9a4c6h
+dd 08b0908f0h
+dd 01e9719ddh
+dd 0c95822b7h
+dd 05aefddaeh
+dd 0b83d5a5dh
+dd 0d1bdb6a3h
+dd 0185e7094h
+dd 0c239a3c0h
+dd 0046c05d9h
+dd 0c01dcb97h
+dd 02d2ecb25h
+dd 077281ce2h
+dd 0c884d5a6h
+dd 0b61942e1h
+dd 02d6d0f05h
+dd 01d5dbe52h
+dd 02711a03bh
+dd 043427b4bh
+dd 076185351h
+dd 0953b3e4eh
+dd 02a094755h
+dd 085f5f6c7h
+dd 03e78c6c4h
+dd 064d0f435h
+dd 0feab17efh
+dd 06c46b4d9h
+dd 06204857bh
+dd 04d32a181h
+dd 06d28e954h
+dd 0d2805795h
+dd 0bdbaea01h
+dd 0249ca30bh
+dd 00707d578h
+dd 011bf7ab0h
+dd 0bd6d36c8h
+dd 058c58ae7h
+dd 082d8ce7fh
+dd 0674ea4f0h
+dd 0d90c99a0h
+dd 0cde18e17h
+dd 0f03f552eh
+dd 0fb13654ch
+dd 08f3e9575h
+dd 07237fc1eh
+dd 02b3a9059h
+dd 0f33704a2h
+dd 06948f2d8h
+dd 034004eeah
+dd 09dbfcb1ch
+dd 04c7c841eh
+dd 0f8065e22h
+dd 0ece042cah
+dd 00e75a604h
+dd 0c0ab1d10h
+dd 07e3b7dc5h
+dd 0c5e165eeh
+dd 0b07a9d5fh
+dd 0c70f2e95h
+dd 0f7523a07h
+dd 0513b2a88h
+dd 0cf3bcc6ch
+dd 02142c753h
+dd 0aca9a4c9h
+dd 0318fa423h
+dd 0d2a32ac1h
+dd 04d4cc6b9h
+dd 0ac290cdeh
+dd 077359d87h
+dd 01dc8caddh
+dd 065c71cbbh
+dd 00bd4d64ch
+dd 0aa2b79bbh
+dd 0ce3906e7h
+dd 05961ba61h
+dd 013401e9ah
+dd 0e95dc4bdh
+dd 0e6149f01h
+dd 0a711bdd3h
+dd 0e849b800h
+dd 0ceab2d69h
+dd 0daadde09h
+dd 03758a70ch
+dd 0e3c55805h
+dd 0de894afch
+dd 0e941d4f1h
+dd 01461bf24h
+dd 0bd17f9b9h
+dd 05ae04094h
+dd 0cc17bdc6h
+dd 044fd7d06h
+dd 0af1fed6eh
+dd 0e94fa066h
+dd 089f81626h
+dd 034046b7eh
+dd 00c5e6ffeh
+dd 06148cd21h
+dd 033f2b86dh
+dd 07a968b7ah
+dd 09d492e3dh
+dd 0141b7001h
+dd 047d5ec36h
+dd 00b331dc0h
+dd 036509f6ch
+dd 0185ce3bah
+dd 06b00b7f5h
+dd 08035cec7h
+dd 0d3bc2f34h
+dd 07d82340eh
+dd 0a17508e8h
+dd 05e94b4dah
+dd 03590921ch
+dd 02548d238h
+dd 0523b28c0h
+dd 0100471c8h
+dd 064e585dfh
+dd 08db92acdh
+dd 00da2bc45h
+dd 0ff18398ch
+dd 03ccd1cc7h
+dd 046be0d19h
+dd 06a0dffc8h
+dd 07f390b83h
+dd 0aaaa774ah
+dd 0ee7523f7h
+dd 07b475359h
+dd 070eb6880h
+dd 004997e7bh
+dd 0ddf73ed6h
+dd 0b225bcceh
+dd 0aa1c7531h
+dd 024f62aa4h
+dd 043fefa49h
+dd 0d02e949ch
+dd 098483919h
+dd 00d65a801h
+dd 0dbbb236ch
+dd 01acbeb2dh
+dd 043641263h
+dd 061b2d4abh
+dd 07ccbcf3fh
+dd 0a650eceeh
+dd 00075eca8h
+dd 09c00f527h
+dd 0377dedc2h
+dd 0990486ceh
+dd 0b72fdd7eh
+dd 01e068dbch
+dd 04dd923d9h
+dd 03bf3cd90h
+dd 0f2d3dcb6h
+dd 01977162ch
+dd 05dc98f98h
+dd 0f6f964e6h
+dd 045004ca7h
+dd 0393ac7c6h
+dd 0d4d71b96h
+dd 03c86ec69h
+dd 0742b094ah
+dd 0a428bf5dh
+dd 013626ea2h
+dd 07bf45302h
+dd 0cc1a379bh
+dd 0f8638f6ch
+dd 05a4fea39h
+dd 02c59fc97h
+dd 0a1623ac0h
+dd 001d7d2feh
+dd 0c33b9739h
+dd 00b8f37deh
+dd 008fd8f01h
+dd 0ae933b8bh
+dd 0aff0375ch
+dd 0de5f2a2fh
+dd 0097157dah
+dd 06ef1da57h
+dd 0cb14703ah
+dd 00ca2323eh
+dd 0a01cd46ch
+dd 09a57777ch
+dd 0a6ae3df5h
+dd 0998a3c94h
+dd 00ba26004h
+dd 04412f897h
+dd 0e6539daah
+dd 0c94ef2e4h
+dd 081849997h
+dd 04488316fh
+dd 044545d0dh
+dd 0bbfa1363h
+dd 006164264h
+dd 054900f45h
+dd 03e32bf2eh
+dd 0fca2197ch
+dd 03e67a958h
+dd 03356399eh
+dd 03a71725fh
+dd 098f0e0c7h
+dd 0061dbd8bh
+dd 0d36d122eh
+dd 01de4362dh
+dd 01d9e34cdh
+dd 04efe4930h
+dd 04b8d2366h
+dd 0c696c4bbh
+dd 0b47b262bh
+dd 0a884dbb6h
+dd 0feeeb18dh
+dd 0e98c4c82h
+dd 0d40a3bfbh
+dd 02a161ea6h
+dd 04792e1c1h
+dd 062b6d17ch
+dd 0fd569ba0h
+dd 0464d86a6h
+dd 0a3470b12h
+dd 0a13f01efh
+dd 0ff8da57dh
+dd 0f3f5ef1eh
+dd 0e3c7ccfbh
+dd 00d05a575h
+dd 03cba3b70h
+dd 0157b3bdeh
+dd 06dd1510bh
+dd 01e13ccdch
+dd 028182bc7h
+dd 0f6ab8302h
+dd 0225e6f61h
+dd 0de7dfadch
+dd 0135f95fdh
+dd 0e4796ad9h
+dd 0042e9c84h
+dd 0af0316cbh
+dd 0e360492bh
+dd 0c608daech
+dd 0605a14d4h
+dd 00da9acb1h
+dd 02a13206fh
+dd 0ae448490h
+dd 095e92796h
+dd 0c41be02eh
+dd 0370e62b4h
+dd 04eed4e03h
+dd 0b9fb657bh
+dd 01b5b88f7h
+dd 018ac2b23h
+dd 03f1d6007h
+dd 0b026ce57h
+dd 0ab307523h
+dd 03581ec69h
+dd 0d4864d3ah
+dd 06585e3f8h
+dd 07dce71d4h
+dd 099fda0bah
+dd 00ef12059h
+dd 0a42c4bfbh
+dd 07384b3e0h
+dd 04782dcb0h
+dd 0b33b5e69h
+dd 0f2c148ceh
+dd 03a7eb51eh
+dd 0cebc01bch
+dd 0e225f9beh
+dd 07ad2f3dah
+dd 0a0f47a4bh
+dd 0eb30b1f0h
+dd 07edd3958h
+dd 068d67b26h
+dd 07a3405c9h
+dd 05a8defa8h
+dd 0c0a27789h
+dd 099223a9ah
+dd 01d1d6fd2h
+dd 08bc82d5fh
+dd 030834654h
+dd 0f86256b1h
+dd 09eb69b86h
+dd 01756a8b9h
+dd 0176936b0h
+dd 06de1be0bh
+dd 0dade682ch
+dd 04d6a8016h
+dd 02b527c88h
+dd 00d203799h
+dd 01bf846c9h
+dd 05c09fb17h
+dd 0fc9b528eh
+dd 0f13c72cch
+dd 0c5c9f328h
+dd 047de3f52h
+dd 06efa9da7h
+dd 050ab8d54h
+dd 0a9365706h
+dd 0cff383f6h
+dd 0b936cf01h
+dd 0eea9a69bh
+dd 0c4e2e93dh
+dd 0efb4e48fh
+dd 0e80c7618h
+dd 08ac5a9adh
+dd 0c791e202h
+dd 0b0810cb7h
+dd 0789a9ba8h
+dd 0c98a0145h
+dd 0831f4e53h
+dd 09535eddbh
+dd 04ef893a1h
+dd 0559f5cc6h
+dd 02a47705eh
+dd 0be42ecb9h
+dd 018b08beeh
+dd 0b16f66adh
+dd 0a5e82770h
+dd 07933e683h
+dd 08c3326e9h
+dd 0d96d0078h
+dd 06b864feeh
+dd 083ebd1f6h
+dd 01ad8f3aah
+dd 04024318ch
+dd 07aa11264h
+dd 0f88ce1c5h
+dd 03fac3f11h
+dd 046a5e3c6h
+dd 044adef62h
+dd 09fe801b8h
+dd 0518e373ch
+dd 07bc38c62h
+dd 0dd375308h
+dd 087179b78h
+dd 0de9b3155h
+dd 02671f264h
+dd 0055a97c9h
+dd 0669b0c3eh
+dd 0e529d57eh
+dd 09235d2f0h
+dd 036789cach
+dd 007edd6afh
+dd 0c3ebddeeh
+dd 066129fddh
+dd 054c92196h
+dd 065e944fdh
+dd 0513121a8h
+dd 083d0a7f2h
+dd 09b7ce7d5h
+dd 0f8d52852h
+dd 00d525010h
+dd 0a2333e86h
+dd 043bfa57ah
+dd 006a3a694h
+dd 0f66f95eah
+dd 0670b66d9h
+dd 040013b35h
+dd 05f96075fh
+dd 07e6a070ah
+dd 0328a0e0fh
+dd 05ead2f1eh
+dd 07b50ca91h
+dd 05907551ah
+dd 0bc577ed2h
+dd 089694eeeh
+dd 0e6d3e3c5h
+dd 0d28b092ah
+dd 081305ebfh
+dd 08c820ad2h
+dd 03df5c5e4h
+dd 0a57585b8h
+dd 044246e39h
+dd 0c1c00e10h
+dd 0b238f21ah
+dd 02abf8debh
+dd 0e1dac2fdh
+dd 0b85b9673h
+dd 0167e2a27h
+dd 00166384bh
+dd 07b8fd9a9h
+dd 0198db121h
+dd 0a31c0319h
+dd 0d4e00916h
+dd 02e859662h
+dd 006218e7fh
+dd 0881f0766h
+dd 09c11465dh
+dd 0e41ebb96h
+dd 06a0a9eeah
+dd 06938e31dh
+dd 0ae5845f7h
+dd 0bcb1858ch
+dd 0f1fa1663h
+dd 0de04f3a6h
+dd 01392dcb9h
+dd 0414d36d8h
+dd 0583d9f3dh
+dd 0669b8c77h
+dd 024dabe37h
+dd 07d6e92e8h
+dd 0db6c8e04h
+dd 0c087ee86h
+dd 0c00fa42bh
+dd 08b418e09h
+dd 0740c530ch
+dd 063955898h
+dd 0b03f290ah
+dd 031ca0e76h
+dd 0e74a45bfh
+dd 086fd1023h
+dd 0bc3e4fd6h
+dd 034a7743eh
+dd 0457007c8h
+dd 06388dc68h
+dd 09907d82dh
+dd 0b7f78b3ch
+dd 0ca095dc2h
+dd 0cd7ce085h
+dd 040c375cch
+dd 0d95109dah
+dd 05c121a38h
+dd 0ea67f587h
+dd 042984d7fh
+dd 0ea9df650h
+dd 0f26861bah
+dd 09aff7b8ah
+dd 0d576814fh
+dd 099c08556h
+dd 0e2250eb4h
+dd 08bed4a24h
+dd 087c3354ch
+dd 01dcc53a9h
+dd 056c1ab7dh
+dd 0a8c5441dh
+dd 005da0c2ch
+dd 094941070h
+dd 0394b96f6h
+dd 0d4a2cbfeh
+dd 0c297e0a9h
+dd 002550b68h
+dd 040407bceh
+dd 084d8d147h
+dd 04aa07a2dh
+dd 0b4e64fd9h
+dd 042f8a061h
+dd 094a539aah
+dd 0e33805fch
+dd 0c7b76ee5h
+dd 06345b9d8h
+dd 00cc67e9ah
+dd 09f6f4198h
+dd 062b093fah
+dd 020386679h
+dd 0acda6ed5h
+dd 0855a2612h
+dd 0a8cfaaf0h
+dd 082b4f7edh
+dd 0f61df1a7h
+dd 0bdc674b8h
+dd 04c2c0b8dh
+dd 0c1fac457h
+dd 05f6c2ed1h
+dd 0aa4d153ch
+dd 033da7439h
+dd 068a1d19fh
+dd 0dff21436h
+dd 02bc3d890h
+dd 0f3b1b693h
+dd 09eecae68h
+dd 05d6b7d1ah
+dd 0d4b61721h
+dd 01bbf0667h
+dd 067a391c6h
+dd 00656ca3bh
+dd 0b9d51bc4h
+dd 0a3007d0eh
+dd 07b20d098h
+dd 0df2e84bfh
+dd 0e341dc6ch
+dd 006dc9be4h
+dd 03298450eh
+dd 0ccad09f1h
+dd 063e449b5h
+dd 08a2f479ch
+dd 0e9c6714eh
+dd 031bffa86h
+dd 052730665h
+dd 097409a97h
+dd 0cd0b65cch
+dd 03557f2cch
+dd 03bb72070h
+dd 08dee0f2bh
+dd 0d5aba5a6h
+dd 08a5c4701h
+dd 0d15fd5bfh
+dd 0485102a8h
+dd 03d946e5fh
+dd 00d6f32a4h
+dd 0cb5590e5h
+dd 09edf5968h
+dd 0e9da3ef1h
+dd 057c84389h
+dd 0aa1a49eeh
+dd 0f7b982c1h
+dd 0ab731043h
+dd 0b0286529h
+dd 0e78d9105h
+dd 0183beee8h
+dd 09e738c2bh
+dd 0bc2e28bch
+dd 0a8396e20h
+dd 0de9960b3h
+dd 0ddb51547h
+dd 0e116ef15h
+dd 0c7808ea5h
+dd 0bac44611h
+dd 086786eaah
+dd 0794b35f8h
+dd 03b0cf9dfh
+dd 033cc5ff6h
+dd 07041c9f3h
+dd 0262569fbh
+dd 0f4da4bc5h
+dd 02f9f3f92h
+dd 053be9196h
+dd 0d1e75d9dh
+dd 05756e459h
+dd 06d69d0dah
+dd 098d7217fh
+dd 07619b9e5h
+dd 0c6ea6408h
+dd 01d78f6a5h
+dd 0a6700437h
+dd 0e4392acdh
+dd 031e5a387h
+dd 0969bfbf6h
+dd 0a4060ad3h
+dd 09120e95ch
+dd 022fa49b3h
+dd 0883de516h
+dd 05fc315afh
+dd 0342ae268h
+dd 008611e6ch
+dd 0719b02b7h
+dd 0178af495h
+dd 036db4eech
+dd 02091359fh
+dd 057bedcc8h
+dd 0cd55a974h
+dd 0ed4331a8h
+dd 036a3c1bah
+dd 082095d41h
+dd 0787d3e89h
+dd 0bad3deb2h
+dd 0d34edd40h
+dd 05aea2285h
+dd 0ff75ed83h
+dd 00bad8b95h
+dd 09fdf1382h
+dd 0f9ae6cd9h
+dd 00c5e1ec4h
+dd 0674951cah
+dd 00180ee63h
+dd 06a249a26h
+dd 09e90860eh
+dd 0568cd406h
+dd 05a383eaah
+dd 0174722c7h
+dd 01087932bh
+dd 09bfc8b68h
+dd 0f0320e27h
+dd 059574591h
+dd 0c6fe49c5h
+dd 07611acc0h
+dd 07b92c029h
+dd 0967eaec1h
+dd 0a9fdd4e7h
+dd 0c1e58f40h
+dd 0cfde01a5h
+dd 0fb904440h
+dd 0f3094185h
+dd 0fceaffa3h
+dd 0404c1b9bh
+dd 0420af62bh
+dd 03be91caeh
+dd 0060037d2h
+dd 001958c2ch
+dd 06682931dh
+dd 0ac74567dh
+dd 0e5c26d40h
+dd 07584bd5bh
+dd 0fa7b7586h
+dd 0d43be2f6h
+dd 06dc37863h
+dd 0d95146abh
+dd 0639487e4h
+dd 00f19c8c5h
+dd 0e1bd3937h
+dd 0ccd14f37h
+dd 0a4d2056ah
+dd 0d2a677e8h
+dd 063ca4e6fh
+dd 084ca592fh
+dd 0e58ab471h
+dd 08b3b49fch
+dd 02921235bh
+dd 0ca128738h
+dd 047315709h
+dd 01af100e3h
+dd 083fcc3e6h
+dd 09fe64a30h
+dd 062a242b6h
+dd 0e062f9b0h
+dd 0c14e6929h
+dd 050e6b831h
+dd 075901a75h
+dd 0618b5e49h
+dd 092e413cdh
+dd 0d382a99eh
+dd 013e9336bh
+dd 05a9fa0b5h
+dd 03cc1fca4h
+dd 0365d302ch
+dd 0cd4cd113h
+dd 0ea7aa73fh
+dd 02623b8f9h
+dd 0d3a7a960h
+dd 084ff3c0bh
+dd 0c9eeca49h
+dd 0831f2428h
+dd 0378bc522h
+dd 0a5e68532h
+dd 046fffbffh
+dd 04479a130h
+dd 032c520e9h
+dd 048e75225h
+dd 0cf150877h
+dd 011ce514bh
+dd 02cb14e9ah
+dd 01b6d35eeh
+dd 0928bbac8h
+dd 0eed0bbf1h
+dd 014cb223ch
+dd 0e5553f41h
+dd 0dbda12abh
+dd 099d06a86h
+dd 0722f4b97h
+dd 06dd645b2h
+dd 0c0a7bb16h
+dd 08c9c4fe6h
+dd 02bb3ac6fh
+dd 011dea4bfh
+dd 003532each
+dd 030ab5c91h
+dd 0c246d1d9h
+dd 06cdc0926h
+dd 070e6dbf5h
+dd 096753351h
+dd 0b93f4fa8h
+dd 00fe00f8fh
+dd 0ef9aa7aeh
+dd 04f6b7bfbh
+dd 0832ef101h
+dd 0f07c2612h
+dd 0b1ffbb28h
+dd 0d1037d0dh
+dd 0f3af8590h
+dd 0ec45127eh
+dd 04327d46ah
+dd 0d9390a47h
+dd 05e70e8c7h
+dd 0ccf0afbah
+dd 03b6021bch
+dd 08618e290h
+dd 0ff4c64c6h
+dd 073413cb7h
+dd 02cd52fech
+dd 07bce8bc7h
+dd 0fa9b089fh
+dd 0107df930h
+dd 06b378907h
+dd 03b904e75h
+dd 0247f090eh
+dd 09da46a8ch
+dd 0633de3d0h
+dd 049a03fdfh
+dd 0d5ee002ah
+dd 0d1823836h
+dd 063cb1f89h
+dd 0e66ac302h
+dd 0639d0c6dh
+dd 0db64d848h
+dd 0746be76ch
+dd 0ef1d8f4bh
+dd 0462cdd94h
+dd 0f9ecb76fh
+dd 094838ffch
+dd 0bb3250b8h
+dd 004abee0eh
+dd 05cb7f8adh
+dd 06810f2a9h
+dd 0f6fbd735h
+dd 0afe6a86ch
+dd 057f2bc81h
+dd 097b38b7dh
+dd 08213eccdh
+dd 01f5ff561h
+dd 056923b97h
+dd 034394c59h
+dd 0dd308977h
+dd 01e122e19h
+dd 0b1f7f80fh
+dd 0ee9843f1h
+dd 0cdd21f1eh
+dd 09d3ec2a0h
+dd 01d4f772bh
+dd 0dee68fc5h
+dd 0995b771ch
+dd 07f428494h
+dd 0b4142370h
+dd 039ee97c4h
+dd 0e57c1848h
+dd 0f680ef35h
+dd 03dcef435h
+dd 063784bd2h
+dd 009fa3f3ah
+dd 04a2ae40dh
+dd 018d99613h
+dd 00b20a1e0h
+dd 07a1e8f1fh
+dd 047f876aah
+dd 076febb0ah
+dd 0d418b3eeh
+dd 07529e672h
+dd 044db876ch
+dd 0b51976f4h
+dd 037b6e887h
+dd 0cfe99cf5h
+dd 0b00b035bh
+dd 03564e220h
+dd 0b52dd45ch
+dd 078c16884h
+dd 0561661e2h
+dd 003036501h
+dd 0cdf807bch
+dd 0dbf4c648h
+dd 0c95a2636h
+dd 0d7770a73h
+dd 0600d082fh
+dd 007d0064eh
+dd 0af58a16fh
+dd 0dbf00e4ch
+dd 081f9346fh
+dd 0794e0b9ch
+dd 0e16857d0h
+dd 065cf7ec6h
+dd 08eb041a7h
+dd 06cd14f97h
+dd 04269f87bh
+dd 0c45bd2bah
+dd 0b601b57ch
+dd 09908d19eh
+dd 02808ed01h
+dd 06979b789h
+dd 0e6c8cc9dh
+dd 02adc185dh
+dd 09674e46ah
+dd 02797e46dh
+dd 0cec8e4bbh
+dd 0f840f44ah
+dd 0a7ed0697h
+dd 0a1175387h
+dd 07d42793ch
+dd 0b5fcfa31h
+dd 07fb0a6a0h
+dd 06a02e729h
+dd 0401978d9h
+dd 0317bf7ddh
+dd 02a7ceb25h
+dd 064743b3ah
+dd 0b5fdd433h
+dd 03692d938h
+dd 0abcceb73h
+dd 09898251bh
+dd 07978a9fbh
+dd 070c010c5h
+dd 0a0d49bc6h
+dd 0462e92d4h
+dd 09cebef82h
+dd 03ac5d7a9h
+dd 0cb7f64deh
+dd 0b3a5fd41h
+dd 0310e0985h
+dd 0416ccef4h
+dd 0ee3e1a6ah
+dd 0b7395bcdh
+dd 01490ecf6h
+dd 0d92a8b80h
+dd 0430831afh
+dd 06a8d2eb3h
+dd 0050e8045h
+dd 0204a3229h
+dd 035f9cceah
+dd 0d786a243h
+dd 0cd02352eh
+dd 064665c7ch
+dd 07ff504a0h
+dd 05d1e871ch
+dd 01e8f05e4h
+dd 032718703h
+dd 07a95b4bah
+dd 0a4f9cacbh
+dd 03b44af42h
+dd 077adab05h
+dd 09e88c850h
+dd 04a0457eah
+dd 0af22eff0h
+dd 0ff21d3a4h
+dd 0a54c2620h
+dd 0fdcd7bb7h
+dd 099c5fd5bh
+dd 0e81e4561h
+dd 0b34683aeh
+dd 0e5e98b87h
+dd 0f3e5f6ebh
+dd 085685626h
+dd 019178290h
+dd 0afbdb318h
+dd 0563cc0d4h
+dd 010378de3h
+dd 05440e90eh
+dd 0bbde4266h
+dd 0322a53d3h
+dd 09fdd2e97h
+dd 022706defh
+dd 092309532h
+dd 03fa7b40bh
+dd 01b7810d5h
+dd 0a41b3c80h
+dd 039314351h
+dd 004411506h
+dd 065ca02c0h
+dd 0eac87ed0h
+dd 000bc0b3eh
+dd 00ca08e13h
+dd 0d38630f0h
+dd 0a81d56efh
+dd 003ee2010h
+dd 098f5a839h
+dd 05386ad75h
+dd 0f8fddb38h
+dd 07ac4de66h
+dd 06a69463fh
+dd 00acda9c2h
+dd 0647e0a64h
+dd 01ecba54fh
+dd 01779c744h
+dd 0c8959f12h
+dd 0445aa448h
+dd 0e055eae7h
+dd 0bd717e2ch
+dd 0692bed8dh
+dd 094f1be94h
+dd 0f7e652a0h
+dd 0235a52cah
+dd 0a1558b3eh
+dd 0fa08b04ah
+dd 0767ccbech
+dd 03ef0216bh
+dd 05adbcba9h
+dd 03d05ea40h
+dd 0dd909e36h
+dd 027131c8fh
+dd 021de7188h
+dd 0b9d1a57ch
+dd 0535db349h
+dd 0f439a5f5h
+dd 0349d6793h
+dd 0e9c9fa01h
+dd 057afec96h
+dd 095d0c854h
+dd 080339739h
+dd 016f9eb50h
+dd 0f9e3b223h
+dd 086517348h
+dd 0e1e67e2eh
+dd 0aacd6cb2h
+dd 07af72b7bh
+dd 0d959d58ch
+dd 0cff4991fh
+dd 073a03f8bh
+dd 06f22fff9h
+dd 0db80ee52h
+dd 09b96e4ebh
+dd 07ade7746h
+dd 090f2b7d6h
+dd 018a862e5h
+dd 0b8fcf00eh
+dd 066b7325dh
+dd 0d9df03d9h
+dd 0a54f4180h
+dd 0103ec293h
+dd 0cadbbba0h
+dd 0cd0b6336h
+dd 05b78ebb0h
+dd 0a6ec226ch
+dd 04b5c38d9h
+dd 0ce4faa37h
+dd 099207f99h
+dd 0c137ca62h
+dd 07a09cddbh
+dd 07fa74f0bh
+dd 0420b292eh
+dd 016b99775h
+dd 0d425bb3ch
+dd 024974c3dh
+dd 016ce6b6eh
+dd 045c9df74h
+dd 0bc4b2404h
+dd 0eac5bc7fh
+dd 04a450822h
+dd 059545b8eh
+dd 045a51fb0h
+dd 0d4d72333h
+dd 06c10e127h
+dd 0f8db46a9h
+dd 03602d4cch
+dd 0d1d0ac80h
+dd 02c1d530dh
+dd 015492f66h
+dd 0dc149c50h
+dd 04f03d05bh
+dd 0daa0f4b9h
+dd 0fbc8aa53h
+dd 07c7a7ccah
+dd 0d0c59799h
+dd 0a2fceb09h
+dd 01bf9e2f8h
+dd 0c876dccbh
+dd 0ea030e65h
+dd 019fdd7f6h
+dd 03b7ed602h
+dd 06a118598h
+dd 0684b9af1h
+dd 0f8eb5664h
+dd 09cd6295ch
+dd 0d0de9e56h
+dd 04f404b72h
+dd 0371e3ec1h
+dd 0cfbe1ebfh
+dd 0285de9b1h
+dd 068f3517dh
+dd 0660aaa4fh
+dd 036beb405h
+dd 0eba0731bh
+dd 0100dd741h
+dd 06ae9eddah
+dd 0c42e4000h
+dd 039d00af9h
+dd 0163eda94h
+dd 0b79ab168h
+dd 02f44f76ch
+dd 086f7c724h
+dd 0a39a1c41h
+dd 0a1fcec3eh
+dd 03eb2fcc3h
+dd 037cea3c9h
+dd 0185f2f29h
+dd 046a91fa5h
+dd 0bfdca867h
+dd 06b363f74h
+dd 04bb5cfdch
+dd 0a90343ech
+dd 0ec4f557bh
+dd 086a5bbaah
+dd 0c863de8bh
+dd 0b263067dh
+dd 0b022a7d8h
+dd 03407862dh
+dd 0a24ea7d7h
+dd 0bc12e88bh
+dd 045f55eaeh
+dd 0a140ec0ah
+dd 03c19cd52h
+dd 0a18e8aafh
+dd 0658677ddh
+dd 0a32a3e4fh
+dd 0ba115e5fh
+dd 0a95b6892h
+dd 06a2dd490h
+dd 0e114e2d5h
+dd 040124fa5h
+dd 0f2959b88h
+dd 010694b36h
+dd 0e4bfd29ah
+dd 055f92d0ch
+dd 0233f0f93h
+dd 00d144affh
+dd 08b68cc70h
+dd 04679ca80h
+dd 0daf19bc8h
+dd 0ebfe84bah
+dd 0e7979b5ah
+dd 01a6d25f9h
+dd 0d2f80ed9h
+dd 04961f28bh
+dd 0f259ecebh
+dd 005af08abh
+dd 0afb50768h
+dd 0b07631dch
+dd 01aa07304h
+dd 07113e114h
+dd 01b441ba5h
+dd 08c0c0305h
+dd 0038d1094h
+dd 020da8eceh
+dd 045cfc119h
+dd 007a2e638h
+dd 0827f2581h
+dd 043152f46h
+dd 08b1ad9b1h
+dd 003520175h
+dd 0de33678fh
+dd 02394c33eh
+dd 0d2a41f99h
+dd 0f8af74eah
+dd 042284b1bh
+dd 012680ca5h
+dd 08aa971e2h
+dd 0c106f733h
+dd 01c14942dh
+dd 0f4415787h
+dd 0133049bdh
+dd 08d8debf9h
+dd 0f56003f3h
+dd 0af44c40ah
+dd 05e6b63f9h
+dd 045521771h
+dd 0d7039f1ah
+dd 026a1e1f8h
+dd 0a7ec5a12h
+dd 04698958ch
+dd 0594c1b27h
+dd 04aa1053bh
+dd 067c79027h
+dd 024945183h
+dd 07ae11cbbh
+dd 029b233e1h
+dd 06289d975h
+dd 01341b38fh
+dd 07f26a059h
+dd 0d626823ah
+dd 0ec13fb75h
+dd 04cbc876ah
+dd 03b38c086h
+dd 05410aa23h
+dd 08a1e1fb0h
+dd 08317cf72h
+dd 055ae5946h
+dd 04b17ed05h
+dd 0ca364b36h
+dd 01b1979cah
+dd 0ceb8c95dh
+dd 00f5f7c2bh
+dd 024fa3570h
+dd 0bed3f3dch
+dd 0d1bf51bbh
+dd 07267978eh
+dd 03aa0133ch
+dd 0eadc5c3bh
+dd 0057ba89fh
+dd 0ec343b77h
+dd 008c8b8f4h
+dd 07f9178bch
+dd 0d9f32782h
+dd 088652469h
+dd 09b3474e1h
+dd 00a0f0f3eh
+dd 03d852384h
+dd 056cc96fbh
+dd 0eec69f57h
+dd 07fc6b776h
+dd 067e812bah
+dd 0a2c842b3h
+dd 0ce2a03bah
+dd 0190968a3h
+dd 0a1a6238ch
+dd 00b53857eh
+dd 0ac23cba7h
+dd 00aed1b71h
+dd 07b4acf56h
+dd 0cfd9e494h
+dd 02135de66h
+dd 01d0bc764h
+dd 0287c0e3eh
+dd 07a063954h
+dd 0d70d661ah
+dd 00622c4a8h
+dd 04e6aa986h
+dd 035b38fe2h
+dd 03e2339b6h
+dd 0e37568b8h
+dd 081b5e691h
+dd 0b7953e15h
+dd 02abe923ah
+dd 0afc16545h
+dd 07030d66bh
+dd 01e0622d3h
+dd 0d3fe60b1h
+dd 03add728fh
+dd 0ccb9f173h
+dd 0a184cd80h
+dd 00248079ch
+dd 0ca584ad1h
+dd 0f02c61e9h
+dd 038174acah
+dd 02df71126h
+dd 0f3b81b82h
+dd 0bb0ac84ch
+dd 028fa81bdh
+dd 08529da85h
+dd 032bc957ch
+dd 071847813h
+dd 0f800dc31h
+dd 06bdd3efah
+dd 0a0542f6dh
+dd 02406b07ch
+dd 0afe917c5h
+dd 02a6002f7h
+dd 01468e540h
+dd 0e41ddf9bh
+dd 0fd2d3fc8h
+dd 0e1661fe7h
+dd 04b72c6b4h
+dd 0f1a72b01h
+dd 01b531bbeh
+dd 06eb7bd00h
+dd 0c6c7289fh
+dd 0008e58c7h
+dd 0c57c46f1h
+dd 0a0d672a8h
+dd 0f0758c65h
+dd 0dd4bb9b4h
+dd 06ea2f037h
+dd 03fed9a01h
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679901.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679901.inc
new file mode 100644
index 0000000..70601d7
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679901.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 000000901h ; Patch ID
+dd 004212014h ; DATE
+dd 000030679h ; CPUID
+dd 069c4e6f1h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000901h
+dd 000000000h
+dd 000000000h
+dd 020140418h
+dd 000003201h
+dd 000000001h
+dd 000030679h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0fec66e3bh
+dd 05ea7fdc0h
+dd 09f6aeab4h
+dd 015edd68fh
+dd 074f337d5h
+dd 0bbf39b66h
+dd 072ecedebh
+dd 089c8cbb4h
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 0bc273ff0h
+dd 02b26d23eh
+dd 03df6f8e1h
+dd 08fc664c1h
+dd 039dfe592h
+dd 045861046h
+dd 08f96a999h
+dd 0a458fa1dh
+dd 099fdebd1h
+dd 070ae4dcah
+dd 06aa066e4h
+dd 033535749h
+dd 0f0490fe3h
+dd 061594e81h
+dd 0bdb74bfah
+dd 08222212eh
+dd 056249131h
+dd 0472c727dh
+dd 05706da9ch
+dd 0e9851911h
+dd 00b3b8dd2h
+dd 0c2f052ech
+dd 0955b6b95h
+dd 091f40608h
+dd 0866709a8h
+dd 048124c1eh
+dd 0cf1eea42h
+dd 062d609eah
+dd 08ef621a8h
+dd 00ad6844bh
+dd 04813f6a6h
+dd 039c195fch
+dd 032bcceebh
+dd 03efe8fd6h
+dd 0befaaea9h
+dd 0fcaa53f6h
+dd 0e4109f2ah
+dd 01dd5f3dah
+dd 0a5aa255fh
+dd 0becadadeh
+dd 0128be0f2h
+dd 044f4b96fh
+dd 04e3db131h
+dd 0d34c0713h
+dd 091549068h
+dd 0003ace08h
+dd 0dca3e5b3h
+dd 097ca5495h
+dd 0a4c35559h
+dd 0fd51992eh
+dd 09f8c705dh
+dd 024e8abf3h
+dd 0a10591cbh
+dd 02e12513fh
+dd 0232f15d2h
+dd 028cd7328h
+dd 0f30f3c46h
+dd 00015b87bh
+dd 0650636aah
+dd 0f9bd69beh
+dd 0d61524a3h
+dd 08cf61a11h
+dd 0f6ea29d1h
+dd 0792710ddh
+dd 0082b8a09h
+dd 0853b3690h
+dd 020345ddbh
+dd 0e316d1d1h
+dd 04ed55d9eh
+dd 0323da9b4h
+dd 0fe99eeb5h
+dd 0ca0b9f40h
+dd 019233040h
+dd 0aadd75e1h
+dd 0008d7cfdh
+dd 0b9ed282ch
+dd 0f4278d69h
+dd 0f145792eh
+dd 0850415c0h
+dd 0fc99c5f9h
+dd 0cb249813h
+dd 00ef77115h
+dd 0e8652522h
+dd 07aeb7733h
+dd 06feefd70h
+dd 0a6f009d4h
+dd 05fd075c8h
+dd 06ba8d670h
+dd 0611d2066h
+dd 033b7fcf8h
+dd 007972714h
+dd 0e4e004c2h
+dd 0be894c12h
+dd 01d8d298bh
+dd 068e1bf79h
+dd 094fef7dbh
+dd 009af5803h
+dd 08aef9182h
+dd 0eaa2743eh
+dd 0820778b7h
+dd 045d49401h
+dd 01d23ab0bh
+dd 0b2856fd7h
+dd 0610851c7h
+dd 0805c9a4bh
+dd 083859c6ch
+dd 0dbd7184eh
+dd 0a8aefe7dh
+dd 0174dbe59h
+dd 0b7f5968eh
+dd 0dab2bc51h
+dd 0edfe3a5fh
+dd 0cd6ef4d3h
+dd 0eb04da10h
+dd 0db87dd29h
+dd 0c524dfb7h
+dd 0dcc28dd5h
+dd 03f60e0edh
+dd 0f70cf0adh
+dd 09f0b0950h
+dd 0820c13c9h
+dd 003c64f85h
+dd 0beb4b813h
+dd 01fe4e210h
+dd 046221d5ch
+dd 04318e10eh
+dd 06d35386dh
+dd 0ae47bdd3h
+dd 015f119b4h
+dd 0c7ca18b1h
+dd 07daa619ch
+dd 08acf22cah
+dd 0f1f21ad4h
+dd 0abbf5e0bh
+dd 0469788c0h
+dd 05f708c07h
+dd 07a2b5b9eh
+dd 049ff86b8h
+dd 0e413b41ah
+dd 0c5eb5c08h
+dd 0b54aa4e3h
+dd 092df4488h
+dd 0cf795a07h
+dd 03bc3fdb8h
+dd 05c266617h
+dd 034a74093h
+dd 0c960f84ah
+dd 06e5833a9h
+dd 05c9a8a3eh
+dd 01b9a41f6h
+dd 056150aa7h
+dd 00e2430f9h
+dd 01ffb94e2h
+dd 0c535ba9bh
+dd 09b815140h
+dd 05f019967h
+dd 0ad25b77eh
+dd 003fe5339h
+dd 0790676b8h
+dd 08c97c754h
+dd 0c236fd3dh
+dd 0bb121263h
+dd 012a3acdeh
+dd 0dc94d956h
+dd 0d196163ah
+dd 0fd514421h
+dd 0f705c56dh
+dd 00f21bf7bh
+dd 069b566a2h
+dd 06febb58fh
+dd 0f86bb7a6h
+dd 0a182e7c9h
+dd 05d765684h
+dd 023b29e0ah
+dd 03f537ea6h
+dd 0f4161021h
+dd 03e3c78d8h
+dd 0b87455c3h
+dd 0529b7ed9h
+dd 01129ad28h
+dd 0ad5dfcbfh
+dd 083d707d8h
+dd 0d1f35030h
+dd 0a8ef33cch
+dd 0c297cfb9h
+dd 08cfc5deeh
+dd 0bbd5da2ah
+dd 00bc51140h
+dd 0935d6fa1h
+dd 088c12a5eh
+dd 07f971c52h
+dd 058b8f16ah
+dd 04c4b7ecdh
+dd 0668f98fch
+dd 0e9cee4c0h
+dd 0ea99ac82h
+dd 032383554h
+dd 02fe00823h
+dd 098d184d0h
+dd 0d54a5703h
+dd 08f694bbeh
+dd 094d2d7e1h
+dd 08dd072d7h
+dd 02afba4b7h
+dd 0b83bc9f7h
+dd 04b2ffb42h
+dd 0111acb98h
+dd 08ef264f5h
+dd 05fe3acd6h
+dd 039663fc4h
+dd 01d74be85h
+dd 01f8c9b07h
+dd 02255b4b5h
+dd 018b9dafeh
+dd 09474faf7h
+dd 0164c2032h
+dd 034548d1ch
+dd 0e4589ec3h
+dd 0c4a2c799h
+dd 03abccf3ch
+dd 0efa95b3fh
+dd 01b9219f9h
+dd 079ebfbcfh
+dd 0867d92d2h
+dd 06d48505ah
+dd 018b2bd62h
+dd 0cd1d7322h
+dd 02cdbd1bah
+dd 0a5f44a2fh
+dd 0d6de7e8fh
+dd 0cadca3ech
+dd 0f7ecb50bh
+dd 0c6f3e605h
+dd 0ffdd8ca3h
+dd 077e1cac7h
+dd 08554111dh
+dd 042a51e71h
+dd 0f99c7233h
+dd 080060059h
+dd 07060f2cah
+dd 0357264d2h
+dd 0fc54e34ch
+dd 0bebdd976h
+dd 0c29ee353h
+dd 0b3cf8a2dh
+dd 0b9033c19h
+dd 0baf3ceb3h
+dd 0d56ba21dh
+dd 0a5eafe8dh
+dd 00dd999c1h
+dd 02deec8cfh
+dd 052bdb14ch
+dd 07c191d52h
+dd 04bf38b00h
+dd 0ca25ffb6h
+dd 07c2b92f4h
+dd 0a89318a9h
+dd 074783dbdh
+dd 0725e8632h
+dd 09dc472cah
+dd 001327302h
+dd 01d055661h
+dd 0814b4647h
+dd 0143c3a35h
+dd 0c87574a8h
+dd 015a08196h
+dd 02d83584bh
+dd 0a2c665eah
+dd 0fbf1fefeh
+dd 0bf7dfad5h
+dd 080eeae13h
+dd 07bb41529h
+dd 0ca4fa5e4h
+dd 026536131h
+dd 0830fd8bah
+dd 0ccdfee21h
+dd 0da87272ah
+dd 09c2caa6eh
+dd 05663e79dh
+dd 023d8348ah
+dd 0b841762eh
+dd 04d7116efh
+dd 0d4ba6782h
+dd 045ffdfach
+dd 06238a909h
+dd 0de6338f6h
+dd 08b7dec7eh
+dd 072cfb470h
+dd 08c11a8c7h
+dd 07497d84eh
+dd 00d5e2ac1h
+dd 023c07ce7h
+dd 0d88feecdh
+dd 0d9e6ff20h
+dd 0a0fabc88h
+dd 0fbe445d9h
+dd 0ccfc96f4h
+dd 0997e58e7h
+dd 0c42e2542h
+dd 038d747cch
+dd 0a39c54cch
+dd 0579605d5h
+dd 0a502f5fbh
+dd 05d948827h
+dd 0d6a48c4fh
+dd 069c0b741h
+dd 0f6bd8e61h
+dd 02c455403h
+dd 0759d24f7h
+dd 038dd48e0h
+dd 0b384a44ch
+dd 02c344703h
+dd 0208b6023h
+dd 028cb768ah
+dd 06d8845d4h
+dd 06a1e0efeh
+dd 078846746h
+dd 0f00e0c23h
+dd 05330dd3ah
+dd 0c158a1a6h
+dd 0d389c522h
+dd 03885723bh
+dd 0e8bf785fh
+dd 0abb30babh
+dd 0b7209eb3h
+dd 0693a91bbh
+dd 03cb78bdfh
+dd 032bbd5c2h
+dd 08c923ebdh
+dd 065493730h
+dd 018afcc9ah
+dd 00e41bb60h
+dd 06d6a78a7h
+dd 04d4468d3h
+dd 07da5edc5h
+dd 0bd5a837ah
+dd 0e9745f9fh
+dd 0304ab133h
+dd 0339812c0h
+dd 017e1d2c5h
+dd 00f4f885fh
+dd 0f7d26faeh
+dd 0a21bf73eh
+dd 04c940b0fh
+dd 032d98d1ah
+dd 0edf04824h
+dd 049a98cfbh
+dd 06f75089dh
+dd 04d381479h
+dd 095f770ddh
+dd 0ffdaf88ch
+dd 05b785567h
+dd 091a1e6f4h
+dd 02e9a5a8ch
+dd 03999c1fdh
+dd 0c09df366h
+dd 0c2fca93dh
+dd 07b79222ch
+dd 0d392f863h
+dd 0665ab7dch
+dd 021c043a0h
+dd 092920fcbh
+dd 0a2b17e88h
+dd 05284589dh
+dd 05f18dc9fh
+dd 065d481f4h
+dd 0b953efbfh
+dd 0aa9bda38h
+dd 0f4c4359dh
+dd 043c852a6h
+dd 007000ff8h
+dd 02ca382b4h
+dd 05bdfe47ah
+dd 0c241ad74h
+dd 0b349d815h
+dd 0545023c4h
+dd 0984dd436h
+dd 004d66ac0h
+dd 01fd883dch
+dd 01175b8d4h
+dd 030b479abh
+dd 0e17c2a83h
+dd 0166fe2afh
+dd 0db267d9fh
+dd 0cd1608d0h
+dd 08b7b6eech
+dd 020bd9203h
+dd 02f6e4bfeh
+dd 026507987h
+dd 0f8eee4f9h
+dd 0c82ecd06h
+dd 06a0e6791h
+dd 0afd6aa17h
+dd 0d1509039h
+dd 0f8053d04h
+dd 005e1d85dh
+dd 0138193a2h
+dd 05eea472ch
+dd 0f862a064h
+dd 0cf01dd14h
+dd 079f47367h
+dd 073a7b4f2h
+dd 0893bfeeeh
+dd 00454f38ch
+dd 036b2020fh
+dd 0ff230043h
+dd 031aeec04h
+dd 0fbcd4969h
+dd 0a63bb665h
+dd 0c6a7c586h
+dd 0b5c13cd5h
+dd 070e71edch
+dd 054c6eb30h
+dd 01552a967h
+dd 0a908452eh
+dd 09076f39dh
+dd 0e5f9ba33h
+dd 0c0d5589ah
+dd 00caa9be9h
+dd 0eb46744bh
+dd 040837cfch
+dd 00ae65efah
+dd 0b473d8d1h
+dd 02f882f30h
+dd 083acf8cfh
+dd 0d209d856h
+dd 0e681b2cah
+dd 05155caadh
+dd 075196950h
+dd 053b76677h
+dd 0cdde7adbh
+dd 0af831c13h
+dd 046ee091bh
+dd 0efd3fd87h
+dd 0c23730feh
+dd 062532bcdh
+dd 04b38215fh
+dd 04e8fd7ach
+dd 093475a14h
+dd 0206a1a13h
+dd 0f5adc10fh
+dd 00bf20737h
+dd 020ba375dh
+dd 0e648846ch
+dd 0a421f776h
+dd 056048b34h
+dd 0ed538460h
+dd 08a5c18b1h
+dd 0a1dabb18h
+dd 0056e1c7ch
+dd 0df7cfa46h
+dd 0b7f90c39h
+dd 0bf25c8e9h
+dd 0c55475f7h
+dd 07ca4d57dh
+dd 016cacf49h
+dd 0dde6d75fh
+dd 036ac07f7h
+dd 042016fdbh
+dd 0b0a9bdaah
+dd 0e702ace7h
+dd 044b81e0ah
+dd 0b2865622h
+dd 0cfc15278h
+dd 05d111239h
+dd 08150d689h
+dd 0eefaf4c3h
+dd 097badefeh
+dd 0d9953307h
+dd 0e30cd233h
+dd 026c1c656h
+dd 02e828f37h
+dd 087b475f5h
+dd 051a13d04h
+dd 0c2e8ca1ch
+dd 09b27a25fh
+dd 018f60806h
+dd 02b66904ch
+dd 00c1d5930h
+dd 0667121cfh
+dd 0fef6dbach
+dd 0173b651ah
+dd 09060a76fh
+dd 00e4804c8h
+dd 06bb0c544h
+dd 06d8abb1eh
+dd 0086f6f2fh
+dd 05cb7be6bh
+dd 08dc4c521h
+dd 02dccc4d4h
+dd 08fb6eafdh
+dd 0e339cd25h
+dd 0a20a9762h
+dd 05f91aa48h
+dd 033c838cah
+dd 0101dfd9ch
+dd 01dc6db81h
+dd 0452e7051h
+dd 092e4808fh
+dd 05196e807h
+dd 07d9f0e92h
+dd 073f9a9dfh
+dd 087a1bf8ch
+dd 0147a3ebdh
+dd 0861419eeh
+dd 02e7d07b0h
+dd 0cfad4573h
+dd 0eab236ceh
+dd 07dec3ac7h
+dd 037ac7892h
+dd 0966d7ce0h
+dd 0a5780ff9h
+dd 04c58f538h
+dd 080da4149h
+dd 04830ff67h
+dd 01439263ch
+dd 079616549h
+dd 0a566f022h
+dd 03e5e5a1fh
+dd 03fe89cceh
+dd 0a246748eh
+dd 0623d4785h
+dd 0732662d7h
+dd 022bc4139h
+dd 094d479f8h
+dd 017a53609h
+dd 05e92ba2bh
+dd 0b3616751h
+dd 0e3a838e2h
+dd 0bfc8a011h
+dd 061b83cd5h
+dd 0d5f0c060h
+dd 057f1f763h
+dd 0f9d43db2h
+dd 06cd84f5ah
+dd 035d45138h
+dd 0c7983b48h
+dd 01d5bc571h
+dd 019d23119h
+dd 02146d57bh
+dd 0afb48b10h
+dd 0978b2ca7h
+dd 0e285d951h
+dd 01e528a59h
+dd 084f9fc7eh
+dd 07126b069h
+dd 07d154657h
+dd 039c3cf60h
+dd 0fe679562h
+dd 03aa93622h
+dd 094000d52h
+dd 0401f8161h
+dd 0a6eb6a85h
+dd 0b3a2c04fh
+dd 0b29fccedh
+dd 02361ce8fh
+dd 01b3ba52bh
+dd 0d410c66fh
+dd 0f464b5abh
+dd 0aa587195h
+dd 089792b1dh
+dd 0dcdea5ach
+dd 086704a68h
+dd 0efe11016h
+dd 0b0f9bd2ah
+dd 005d2e9d9h
+dd 086ab1901h
+dd 08249a66dh
+dd 0b074f271h
+dd 01be625f4h
+dd 02fc99d02h
+dd 08ff83fb1h
+dd 092cf4e06h
+dd 06dc37040h
+dd 0bd6ebd58h
+dd 08acf9b62h
+dd 06a569190h
+dd 02ea447c9h
+dd 0875c47d0h
+dd 0203277e7h
+dd 0fcf2617bh
+dd 0e3080caeh
+dd 021255844h
+dd 0aafb7d55h
+dd 0efa0fb92h
+dd 0aa009952h
+dd 008f9fe90h
+dd 095040b57h
+dd 0df254170h
+dd 08e44f9d8h
+dd 0f3f17c9ah
+dd 07b743ad8h
+dd 0563d7ee2h
+dd 0a3aaa64dh
+dd 098934355h
+dd 0021c0dceh
+dd 07364bddeh
+dd 01b140f58h
+dd 0575e5acdh
+dd 023cc641ch
+dd 0c7f9f853h
+dd 064b4b5cfh
+dd 0059b93a4h
+dd 06630bbc0h
+dd 0763d9237h
+dd 028b4e9e5h
+dd 094284f6fh
+dd 0574714e5h
+dd 046dccfa9h
+dd 0788b44e3h
+dd 03aac0b7eh
+dd 045620638h
+dd 0fa867c0dh
+dd 0a609fdb7h
+dd 0bf265407h
+dd 02ac8e73dh
+dd 0361b8d1fh
+dd 0a24c1434h
+dd 09dad036ch
+dd 0f05e3034h
+dd 0ce69520ah
+dd 0edeea982h
+dd 0823fe63bh
+dd 0a7ce0120h
+dd 0a841a6bbh
+dd 0e4d9daa4h
+dd 069fbe092h
+dd 0addf66a1h
+dd 0ab10aed1h
+dd 002e17203h
+dd 0eb9a4688h
+dd 0e9ba11aah
+dd 0c96d00f1h
+dd 0178264a8h
+dd 0e8b671e1h
+dd 049a80b59h
+dd 01fcf93a5h
+dd 0d479f04ch
+dd 093e151e4h
+dd 03fa95543h
+dd 0decadf54h
+dd 0748a911ah
+dd 091f1ef88h
+dd 054bfa2d5h
+dd 0502596b9h
+dd 0ab78d458h
+dd 0a92888c7h
+dd 085f3cfe2h
+dd 0e710f89fh
+dd 03f954396h
+dd 0ee4d7684h
+dd 0030d95e4h
+dd 0e5e017dfh
+dd 0d692a84dh
+dd 072581448h
+dd 0543245b7h
+dd 02a0a2441h
+dd 0bc94df7dh
+dd 0f1718789h
+dd 0be23a461h
+dd 0b46db4cfh
+dd 0897ab27dh
+dd 082aaee2fh
+dd 02663d824h
+dd 01c5b3f04h
+dd 073bdc68ch
+dd 03e7b4b93h
+dd 062124aach
+dd 0bd94c4ebh
+dd 096169253h
+dd 09a4d5c11h
+dd 018de731dh
+dd 041f11764h
+dd 0cde4dc9fh
+dd 0ddcc728fh
+dd 03060b23bh
+dd 0a33df4dah
+dd 08b75261eh
+dd 0be3412adh
+dd 077f4bde5h
+dd 0469eddd2h
+dd 08f837012h
+dd 0d23b7f55h
+dd 0c1285aaah
+dd 035d5e061h
+dd 028a05adch
+dd 06d2af29ah
+dd 0bb9f669bh
+dd 086559b97h
+dd 04f26f8abh
+dd 0171bf9bch
+dd 0cfe392dah
+dd 0e07aa8aah
+dd 06d6f3352h
+dd 05ff9ee5bh
+dd 02501317ch
+dd 008f75888h
+dd 0736d6e3ch
+dd 0c6d32067h
+dd 065b351edh
+dd 0e20de5a9h
+dd 0c17f5a86h
+dd 058576b75h
+dd 0caf413beh
+dd 09e03ebf2h
+dd 041167d18h
+dd 07779e3c6h
+dd 0642d3abch
+dd 03c582365h
+dd 0f90cdb70h
+dd 06ea0dbebh
+dd 05a8e2e63h
+dd 04b14447bh
+dd 0e2f78b33h
+dd 0e4d83df4h
+dd 015d8912dh
+dd 0dc02ff9ah
+dd 020be0e70h
+dd 05feab6e9h
+dd 038dc6c77h
+dd 088473243h
+dd 090824553h
+dd 00d91222eh
+dd 03bdf0fedh
+dd 0cac39f27h
+dd 05cf6015ah
+dd 09815adc4h
+dd 09fa01f7ah
+dd 0bf972fd1h
+dd 0ad9bd934h
+dd 09cf6ecfch
+dd 0af67552bh
+dd 0b33ca957h
+dd 00530f9fch
+dd 08937403ah
+dd 083d3aaech
+dd 090e13fc6h
+dd 063e58d5bh
+dd 06d879bbdh
+dd 05b870ba2h
+dd 0f986db79h
+dd 0d6ca1719h
+dd 0e9d525e9h
+dd 0d23e238ah
+dd 069638edah
+dd 013800243h
+dd 0392db791h
+dd 099eb756bh
+dd 0bb03bbc7h
+dd 05f5e13abh
+dd 0deba3cb7h
+dd 0fa0c7bfbh
+dd 0cc94ef62h
+dd 0eea5dadfh
+dd 0eff3c075h
+dd 08a1020f0h
+dd 05f53546ch
+dd 0673158c9h
+dd 082d5fd68h
+dd 02958c9c6h
+dd 0b4f2a67fh
+dd 04c497f9ch
+dd 0c7aa5ddeh
+dd 078810810h
+dd 052207fc2h
+dd 0f44b7184h
+dd 0a20bebd2h
+dd 0082efd23h
+dd 0b7ce2f7ch
+dd 03afd9b11h
+dd 0baaa9f02h
+dd 067cdc841h
+dd 07fda6124h
+dd 0efc8ac25h
+dd 0ec52e2ech
+dd 0004b7d99h
+dd 011f1193fh
+dd 034792368h
+dd 07d428f51h
+dd 0d9042a6ch
+dd 06d1ef627h
+dd 0c6f9eb68h
+dd 04f99caf3h
+dd 076c5e543h
+dd 03bfde1c4h
+dd 0513139e2h
+dd 0ecbb97bfh
+dd 0e961d1efh
+dd 06b813a5eh
+dd 0d39b8b1dh
+dd 0f557bcech
+dd 037122c04h
+dd 02c851ccbh
+dd 0724d6f54h
+dd 0e27cb301h
+dd 01708e320h
+dd 0d120bd3fh
+dd 0c31ca12ch
+dd 07067cf63h
+dd 0ac6450a6h
+dd 0abcbd232h
+dd 034b31f9ch
+dd 0ea97c037h
+dd 0fd10ea63h
+dd 02ffcb87dh
+dd 0dc25448ah
+dd 018a32c75h
+dd 01102579ah
+dd 03800f950h
+dd 0d1faab90h
+dd 0f76911e8h
+dd 0b7a904d8h
+dd 0a2efb718h
+dd 080bbaa6dh
+dd 06e5698f0h
+dd 0f62adfb5h
+dd 08def238fh
+dd 093ac7dedh
+dd 0ded0be4fh
+dd 00e879b92h
+dd 09bc6b560h
+dd 04dcc8955h
+dd 0af148958h
+dd 0f8c678fdh
+dd 0808101d4h
+dd 04423d243h
+dd 013e43e87h
+dd 02af1d00ah
+dd 0820a2015h
+dd 031ff9b74h
+dd 058cad46fh
+dd 09088a4eeh
+dd 0207550c1h
+dd 0560a757ah
+dd 09b5ec887h
+dd 08291c12bh
+dd 0d684709eh
+dd 0b09585eeh
+dd 078ef353ch
+dd 033db19aah
+dd 0207c4dbch
+dd 0efc1b2a7h
+dd 046d3cc51h
+dd 0954cb272h
+dd 050e2f9edh
+dd 0df82a588h
+dd 08074a242h
+dd 0a3bfe78fh
+dd 0258df0b5h
+dd 08c9efb2ch
+dd 0138d11cch
+dd 079c4d950h
+dd 0bde2abf4h
+dd 0bfed221bh
+dd 0455f528fh
+dd 0d6c539ach
+dd 0215c5db3h
+dd 0148e580eh
+dd 05ad51547h
+dd 0adcb0e1bh
+dd 08de5e916h
+dd 00210fbceh
+dd 03e40378ah
+dd 05603e970h
+dd 0f6487a9bh
+dd 000f7bc43h
+dd 06e0d4770h
+dd 0ead00d8eh
+dd 026f02076h
+dd 0879680b4h
+dd 0ef8b3d8ah
+dd 0a96102dch
+dd 0bc2d8d3eh
+dd 0b3a5486dh
+dd 0d9a60741h
+dd 0b069c32dh
+dd 0a3661d67h
+dd 0506e9e55h
+dd 0ba98804bh
+dd 0389e2028h
+dd 01461bdf2h
+dd 0544f6f0ah
+dd 06520a877h
+dd 0a2706440h
+dd 08de5ca93h
+dd 0d54e77cfh
+dd 072dd4c7fh
+dd 0319986fbh
+dd 0d82cb44ah
+dd 0d1de5182h
+dd 0cdfc852ch
+dd 006aea814h
+dd 0503b3392h
+dd 0f905f653h
+dd 04ff24733h
+dd 09f5090f1h
+dd 05e522bf7h
+dd 0aef3a013h
+dd 0107e4cc0h
+dd 0f2fb35a7h
+dd 08b56df94h
+dd 06e30f671h
+dd 02e59d6cah
+dd 07fc09016h
+dd 0efa7dd64h
+dd 022883cb0h
+dd 04081f541h
+dd 0663b95c1h
+dd 06aae4b2bh
+dd 0d4238c27h
+dd 025a4020ah
+dd 0482d9410h
+dd 0b57b5570h
+dd 043169894h
+dd 09e4c2163h
+dd 065a27eaah
+dd 03bf25b50h
+dd 082706ca6h
+dd 01e6728f4h
+dd 03dc3fdd1h
+dd 08bc21758h
+dd 09a64d42ah
+dd 0b11e2bb2h
+dd 03595f217h
+dd 04ed02304h
+dd 0cb304d8bh
+dd 0f18960c3h
+dd 0a4cf2d49h
+dd 0602e84e7h
+dd 0de05487dh
+dd 03ff4d402h
+dd 03d93b6d3h
+dd 050e463a7h
+dd 067f60143h
+dd 0378b3158h
+dd 014ddd978h
+dd 0f23b3484h
+dd 0a3932ef6h
+dd 017d6d976h
+dd 0717dc382h
+dd 0da7cfac3h
+dd 027a3ff3dh
+dd 048b171a1h
+dd 01a015446h
+dd 08956bd7ch
+dd 04f73beaah
+dd 0d06c22b8h
+dd 0686c849dh
+dd 0883e23b9h
+dd 0cc0b0bfch
+dd 0fecc3821h
+dd 08f3df5afh
+dd 0808b0b9bh
+dd 01229beb2h
+dd 0841087cch
+dd 0a180a347h
+dd 0ed823c59h
+dd 04f42c83ch
+dd 02dc1775eh
+dd 0a2263681h
+dd 01ee32180h
+dd 02c3cdeeeh
+dd 0eaa5feb8h
+dd 0c67f6a23h
+dd 05bdc3b78h
+dd 0aba0670dh
+dd 03fc18789h
+dd 0651e38b6h
+dd 08736313bh
+dd 0817aad52h
+dd 09de49a75h
+dd 020b68a46h
+dd 02e5c738bh
+dd 053709360h
+dd 06758cfb3h
+dd 0fe2585b4h
+dd 0fa07bcd8h
+dd 08be192f0h
+dd 0a3e78c6dh
+dd 07d32ecfeh
+dd 0433f2e75h
+dd 062ac06f1h
+dd 0b78934feh
+dd 08daf99a6h
+dd 05acb5d1ch
+dd 0511d933ah
+dd 0449940c1h
+dd 067363c84h
+dd 017eb23b9h
+dd 08fd3c367h
+dd 0bbd5edd1h
+dd 08ee6ff4bh
+dd 0b6ca7a8bh
+dd 0828305e0h
+dd 0312ede79h
+dd 00fcc481eh
+dd 01eadb8c4h
+dd 089cf005ah
+dd 0e4b8f6a4h
+dd 00a2ed429h
+dd 03e3f483dh
+dd 0bfe96d74h
+dd 09489e70ch
+dd 046f66dcbh
+dd 0f6b787e2h
+dd 059769085h
+dd 0fb273133h
+dd 0544aac6ah
+dd 069c6f75fh
+dd 0aca22ed4h
+dd 0b955ae92h
+dd 0e5682f95h
+dd 013a07332h
+dd 0beed6cech
+dd 0d31ade9eh
+dd 095c5d776h
+dd 0fe737c16h
+dd 0f472257ch
+dd 01933658fh
+dd 0a426c7a1h
+dd 0718abaf7h
+dd 07cb1c95bh
+dd 00491d8c0h
+dd 00759bac0h
+dd 0279c8c0eh
+dd 0685b20c8h
+dd 0bfaef874h
+dd 038d4ac02h
+dd 0fd3f7828h
+dd 00da73e14h
+dd 0d6ab829ch
+dd 0e156b19eh
+dd 075d05159h
+dd 0d906fb5ah
+dd 091ac4bd1h
+dd 04597e16ah
+dd 06ed48c72h
+dd 01df75c77h
+dd 07ecf2611h
+dd 0cb4d8d05h
+dd 08d645f7fh
+dd 008a9375fh
+dd 03e84fdd2h
+dd 0b84fd68dh
+dd 01a76aacdh
+dd 0c1385c10h
+dd 00f445f9bh
+dd 0c400ad2dh
+dd 0115bc2d3h
+dd 0b0bf07cch
+dd 0522843bch
+dd 00c4ed3c2h
+dd 0f978190bh
+dd 0ee19a195h
+dd 0fdbd4dfch
+dd 07a3b6daeh
+dd 000ff06ffh
+dd 000669730h
+dd 08fe6479eh
+dd 027cf0833h
+dd 080152d0ah
+dd 05ea71ee9h
+dd 07021f1cbh
+dd 04331dac7h
+dd 0ed6d0abeh
+dd 05a3dd074h
+dd 0eb9d86b0h
+dd 0c7de94bbh
+dd 03f052aech
+dd 03fd14fcbh
+dd 071209104h
+dd 0a228afb1h
+dd 00f4f09eeh
+dd 065498aa7h
+dd 0aad4decdh
+dd 0cb59496dh
+dd 00977ee93h
+dd 0afd30129h
+dd 0ad94d46ah
+dd 0f00352b9h
+dd 0d460a11fh
+dd 08fd8067ah
+dd 0769af835h
+dd 03018155eh
+dd 0ebb3fe27h
+dd 05f80a9a9h
+dd 087933bc4h
+dd 06ef76b5bh
+dd 03ad27233h
+dd 0f1272dbeh
+dd 082729badh
+dd 03b32675dh
+dd 08d32962eh
+dd 08afe903dh
+dd 022454d9eh
+dd 085a9eba2h
+dd 06432ede1h
+dd 008b7ea28h
+dd 026ba5125h
+dd 0dbba43c1h
+dd 0cddaeb3bh
+dd 0f12ba64dh
+dd 0aafc5f87h
+dd 0343e64cch
+dd 04dc1751bh
+dd 0834eb813h
+dd 0106fbb8ah
+dd 0fbd02db8h
+dd 072451ef3h
+dd 0585f8acah
+dd 09fa98db9h
+dd 04cfc33ech
+dd 0ca842395h
+dd 025c573d6h
+dd 02767f345h
+dd 0fb8e9b26h
+dd 0a4c45bfeh
+dd 048553290h
+dd 093fbaeb8h
+dd 0c681236ah
+dd 01ecc4edch
+dd 0b246c57fh
+dd 020ca4853h
+dd 0260fca8eh
+dd 001fa495ah
+dd 0fd22084bh
+dd 00f682e86h
+dd 08ef8bd5ah
+dd 0fbe823ebh
+dd 0b83e022ch
+dd 059db2c09h
+dd 0bf0f5ea1h
+dd 0e9e5f103h
+dd 0fd3b342ch
+dd 074aa7688h
+dd 08d42805bh
+dd 083ba4f4ah
+dd 082daa3eeh
+dd 00d614a41h
+dd 0db23b1ech
+dd 0b2b8810fh
+dd 070c9d1fdh
+dd 06f1de78dh
+dd 0b153a50ch
+dd 0ad98fc57h
+dd 0b34ed447h
+dd 0707c8217h
+dd 0b1f5912dh
+dd 0b73cf6ech
+dd 028b9fdb4h
+dd 0ed429cc4h
+dd 0bd89a5eeh
+dd 06b91cf62h
+dd 0a653a502h
+dd 02345cb50h
+dd 031389d95h
+dd 06e02faebh
+dd 0913d48d2h
+dd 0c2640314h
+dd 0d6cddda8h
+dd 0703634cah
+dd 04f159a58h
+dd 0ed69f36bh
+dd 02df3ef40h
+dd 02099b4d7h
+dd 096f8bff4h
+dd 092c1625ah
+dd 0bcb04c0ah
+dd 0d6339544h
+dd 0a30ce2ach
+dd 05b46e7fah
+dd 0daede0b6h
+dd 0a14f21dah
+dd 0beb608cch
+dd 0cb42c354h
+dd 0b18d9fc0h
+dd 0c065d5eah
+dd 087218be3h
+dd 068bed0d0h
+dd 098897416h
+dd 032a6d5ceh
+dd 0456b63a0h
+dd 03fb61ac7h
+dd 0041e16feh
+dd 0db6fb6e8h
+dd 039208e87h
+dd 0c226af17h
+dd 001cb5168h
+dd 0a5d48494h
+dd 081697e69h
+dd 0fce04699h
+dd 0debe0c97h
+dd 0f287d887h
+dd 044bd87d9h
+dd 060aedc10h
+dd 0609b2320h
+dd 05c79efe9h
+dd 03b0f6f53h
+dd 05de84d2dh
+dd 0c93500d5h
+dd 0a8105433h
+dd 04f0c35eeh
+dd 078d294cfh
+dd 0c6988c68h
+dd 0d502043ch
+dd 01ca8b8a8h
+dd 0e6672c95h
+dd 0952d43dfh
+dd 06dd54db7h
+dd 07c6d3177h
+dd 00194df56h
+dd 070d0aab8h
+dd 0b6cbd1f5h
+dd 0bd186f20h
+dd 05df5fd59h
+dd 06960e25dh
+dd 0b608ab31h
+dd 0814d9a71h
+dd 012821c8fh
+dd 091bd92c7h
+dd 0c962f2d6h
+dd 045d54babh
+dd 000c6f336h
+dd 05e137c91h
+dd 05b45a01ah
+dd 00081dec1h
+dd 0e9b35d85h
+dd 0241ad442h
+dd 0665a9540h
+dd 051c67584h
+dd 06a4cf4c7h
+dd 0f20d1f4eh
+dd 054cdc57ch
+dd 0ec7ba435h
+dd 05085ace6h
+dd 030af438bh
+dd 0b01ccd6fh
+dd 0efe17df3h
+dd 0e70dc700h
+dd 025319163h
+dd 0d58836b3h
+dd 0136f298ch
+dd 008035793h
+dd 0bfaf8a6dh
+dd 0e974a567h
+dd 0a6b197f2h
+dd 0840c6053h
+dd 0692eeafdh
+dd 09af55ce7h
+dd 0d03d0e1bh
+dd 0c2a87f7fh
+dd 04633467eh
+dd 09a06c797h
+dd 007e31c67h
+dd 070f34124h
+dd 0083aebbbh
+dd 08b44e4c2h
+dd 023fe5721h
+dd 099449570h
+dd 092e73830h
+dd 0b02f8a4ah
+dd 01d54f4a1h
+dd 05a60887ch
+dd 003dc4e6ah
+dd 03be89f68h
+dd 0795e8393h
+dd 0399cc919h
+dd 0a9dfa79eh
+dd 0c228bd36h
+dd 07b05ac64h
+dd 0357c98a2h
+dd 0ad173f9ch
+dd 0f8e9e50bh
+dd 04dc963efh
+dd 0b1f232eeh
+dd 0aea38137h
+dd 09f22be9eh
+dd 02a7a4677h
+dd 0fe79fd1dh
+dd 09a34ed24h
+dd 0c8c10830h
+dd 0f32075b7h
+dd 0151d83bfh
+dd 0ee4ddc11h
+dd 0fc475e7bh
+dd 0690ffafeh
+dd 0f80a822ah
+dd 0473d138eh
+dd 099cf21a0h
+dd 096d88678h
+dd 03ddfda8eh
+dd 01803a189h
+dd 073ce48b0h
+dd 0573484d9h
+dd 04b5900e0h
+dd 0a81e3cffh
+dd 0027c3ad9h
+dd 09bda7184h
+dd 0cccf4cf2h
+dd 0b776056fh
+dd 0f84e02ebh
+dd 07b7875afh
+dd 052ca8f50h
+dd 050523118h
+dd 010244874h
+dd 0c9859916h
+dd 0ef141c91h
+dd 0a65a5796h
+dd 0581379d4h
+dd 0b007cd1bh
+dd 054f61ff9h
+dd 0d0c8b9c3h
+dd 0aa8a1e10h
+dd 02b35b884h
+dd 05471f516h
+dd 0f1473a84h
+dd 03d9e2688h
+dd 00dbd25a6h
+dd 09c1fc999h
+dd 06cc279feh
+dd 0394884d1h
+dd 06dec59aah
+dd 0a59c1b1eh
+dd 0f74b9eb9h
+dd 00461c0c8h
+dd 0135a9829h
+dd 0a8dea02ah
+dd 05ee32da9h
+dd 01d314282h
+dd 059a0e061h
+dd 0ac2e2309h
+dd 0b4f2e8c7h
+dd 0a5cffb05h
+dd 0c9cad241h
+dd 0f926205dh
+dd 0c070b969h
+dd 00a707402h
+dd 0d6235f1fh
+dd 03bea8ab9h
+dd 056d279d8h
+dd 076022369h
+dd 09625c3beh
+dd 00ccd4d6dh
+dd 06bedef04h
+dd 09ba05ccfh
+dd 0777ad1ddh
+dd 072011a82h
+dd 0e6d756e6h
+dd 03968dd70h
+dd 094027175h
+dd 06f5f7659h
+dd 09b4d17a3h
+dd 0a1c22742h
+dd 0c4d6dd23h
+dd 0798c7d1dh
+dd 0b10be5b2h
+dd 0394c7498h
+dd 0f9523185h
+dd 0899b434dh
+dd 032ac52f8h
+dd 0d82fad89h
+dd 01d8c3c61h
+dd 07140ab47h
+dd 005c762ddh
+dd 0eca523e6h
+dd 007bff493h
+dd 0fea35350h
+dd 02ce44525h
+dd 084cae403h
+dd 0cff9dca5h
+dd 06edd79c2h
+dd 048223e6eh
+dd 08b33c651h
+dd 05df5791bh
+dd 095751d87h
+dd 098ba9119h
+dd 08af67b69h
+dd 062ef4b63h
+dd 024f85d41h
+dd 0ec237500h
+dd 0f3e45f59h
+dd 0168501d2h
+dd 0b3f6a8cfh
+dd 0da333d1eh
+dd 0c4581814h
+dd 095fa53a5h
+dd 09407a00bh
+dd 017db3e92h
+dd 08084a186h
+dd 0384da94ah
+dd 0d8149842h
+dd 03b850dddh
+dd 0f6085837h
+dd 0ba7a85cfh
+dd 0c95d6d6fh
+dd 0e9fe27dch
+dd 08b71497ch
+dd 0ee09ebb3h
+dd 0f7a98bf4h
+dd 0aadef8a7h
+dd 00fa8afa0h
+dd 027eaa084h
+dd 032818563h
+dd 06df052a5h
+dd 050bce0cch
+dd 070b7a670h
+dd 051721ce2h
+dd 00106b71fh
+dd 0f3b5932eh
+dd 0d17a251fh
+dd 0e3dd09abh
+dd 0a3806c17h
+dd 0725a84a1h
+dd 0e2a268cfh
+dd 013d6bde3h
+dd 07e6e1da4h
+dd 0060687deh
+dd 007df92c2h
+dd 02d569370h
+dd 0515e2e69h
+dd 037d29d17h
+dd 0ea96dc01h
+dd 0fcfd2e3ah
+dd 081f18860h
+dd 00f293d7ch
+dd 09ce238bdh
+dd 0d8ea0c34h
+dd 09aeaa8dch
+dd 099783aa4h
+dd 09c1b54f6h
+dd 018feabafh
+dd 04b7f55b5h
+dd 02acd5b99h
+dd 00eea5553h
+dd 066dfdcf3h
+dd 0506d2102h
+dd 0238f3aaah
+dd 07e63631ch
+dd 0540595b8h
+dd 026e79971h
+dd 0f2d1fe20h
+dd 0e3677d02h
+dd 06d235a7dh
+dd 0a61de0d1h
+dd 050e7b02dh
+dd 018d7a1fbh
+dd 0ea428ba5h
+dd 0e9809b83h
+dd 0aad155cch
+dd 0e575dab1h
+dd 016957850h
+dd 0cc138981h
+dd 0a2cbfa03h
+dd 029da2b6eh
+dd 020113c1eh
+dd 01247e68fh
+dd 0157a3112h
+dd 09fb36b6eh
+dd 0bb5bdd7eh
+dd 02df70b90h
+dd 0c822a8c6h
+dd 002d65333h
+dd 02a5f96d9h
+dd 0d80e29fch
+dd 0e310829ch
+dd 0aed584aah
+dd 007159fdfh
+dd 0fff910bdh
+dd 0f4d9a450h
+dd 007161122h
+dd 0ad3b04d4h
+dd 0e2427bfbh
+dd 0295328e0h
+dd 0a7e1764eh
+dd 050ed8841h
+dd 0992acd88h
+dd 08e762747h
+dd 06a5d62bah
+dd 0675dadf8h
+dd 0cd9515cch
+dd 0da4d9836h
+dd 0cb8f9f7ch
+dd 05ec39e4eh
+dd 0625bf937h
+dd 00a69708eh
+dd 0ecae438eh
+dd 00c4e43f3h
+dd 0eeccb3a4h
+dd 014d7c099h
+dd 0c08200eeh
+dd 02d009f9dh
+dd 04335ab3eh
+dd 098909e82h
+dd 002e8e4afh
+dd 028a93753h
+dd 03c2dfd9bh
+dd 00593b643h
+dd 07b16102ch
+dd 02eb9068bh
+dd 0c3499094h
+dd 0a33182c9h
+dd 043957cf7h
+dd 08af16199h
+dd 0a03fa636h
+dd 0f1329903h
+dd 078d97911h
+dd 0e06330b4h
+dd 09a1abc89h
+dd 08d34612ah
+dd 0da3a1134h
+dd 05c336618h
+dd 0ef49028bh
+dd 0a9a8c294h
+dd 09cae02d0h
+dd 0711f9e02h
+dd 004329a98h
+dd 0eaaab157h
+dd 09367d0f2h
+dd 00677f162h
+dd 0b8066e65h
+dd 0b3972802h
+dd 0bf81c309h
+dd 06607d9afh
+dd 08edf798ch
+dd 027675a66h
+dd 00ccdc233h
+dd 0aac4612eh
+dd 0353fd89dh
+dd 041b2b201h
+dd 0e4d0f570h
+dd 03ff6980eh
+dd 00cc70d80h
+dd 072c7b58eh
+dd 02fbbef7dh
+dd 0f0103876h
+dd 0ab59f97fh
+dd 042096407h
+dd 0a57fa07ch
+dd 066cebaa7h
+dd 08f078a20h
+dd 073dd7529h
+dd 0676e86a4h
+dd 0ac5b1f27h
+dd 09869a3dch
+dd 0fdd1e1e5h
+dd 0fc9f1f51h
+dd 0081cacafh
+dd 0f9687982h
+dd 083df2388h
+dd 03c242cbah
+dd 0330d2a3eh
+dd 00acde077h
+dd 0a3503d62h
+dd 05b118f27h
+dd 0e0279ab7h
+dd 03e94ab51h
+dd 06a2aa6ddh
+dd 0e4a02eb4h
+dd 05f7de42ah
+dd 01f28eb5ch
+dd 0e9fc2d02h
+dd 0f779f8e1h
+dd 0500fe76fh
+dd 0e7ab981dh
+dd 011e62808h
+dd 015bad08ah
+dd 0bed7bb61h
+dd 0f98dde5ch
+dd 075738bd7h
+dd 05093cfe1h
+dd 00be8aa9fh
+dd 0ddc06455h
+dd 0255e733dh
+dd 0055c9864h
+dd 05d58ac20h
+dd 03ddae957h
+dd 086f35c49h
+dd 00ec58918h
+dd 0b3ef13c3h
+dd 023e4f5b3h
+dd 0b0a987bbh
+dd 0096bd03ch
+dd 030b251dfh
+dd 0dd0128ebh
+dd 0cf435d6dh
+dd 00074ba1fh
+dd 06f1e7908h
+dd 073080ef9h
+dd 0b8f05da6h
+dd 0679b3664h
+dd 000922cc2h
+dd 0f0f940d8h
+dd 0ded449cch
+dd 07fdb8799h
+dd 07499ec8fh
+dd 052c826c8h
+dd 07cd87b65h
+dd 02cdeddcah
+dd 047c40debh
+dd 0a9ff454ah
+dd 0b0225d03h
+dd 0ffce6e23h
+dd 08c5fbaa3h
+dd 09a0aeecch
+dd 0ddd1d5bah
+dd 087b5c81ch
+dd 069d4115fh
+dd 03ec6f899h
+dd 006193164h
+dd 0369bc143h
+dd 0865e9defh
+dd 073547000h
+dd 0d00d1078h
+dd 0b357abedh
+dd 01006b0f3h
+dd 067346efch
+dd 02fff4b6ch
+dd 0447c2297h
+dd 07b25ca38h
+dd 063fd794eh
+dd 066348b0ch
+dd 0627eaea2h
+dd 05cba1fb0h
+dd 01d26eedeh
+dd 087634c2ah
+dd 08ae7dcb9h
+dd 0c305092fh
+dd 029796aa7h
+dd 0f0a13f5fh
+dd 060524ecah
+dd 02d77bacch
+dd 080ec2f86h
+dd 0a17a25b8h
+dd 0accf797ch
+dd 030725dc7h
+dd 06a537e38h
+dd 0e586f4afh
+dd 06390543ch
+dd 05cfca5eeh
+dd 05ca533c4h
+dd 0b419b6bfh
+dd 0c5b06ff3h
+dd 0e4b4aa4fh
+dd 0845dd7bch
+dd 08ceeb56eh
+dd 0a9294eaah
+dd 0d6b01d55h
+dd 059c6cb1ch
+dd 0528c5e9bh
+dd 0b4ba331eh
+dd 0600dd3cfh
+dd 01dc26663h
+dd 056700d3fh
+dd 0da47227fh
+dd 022f3a4abh
+dd 0fec40e7bh
+dd 073dd64ddh
+dd 0118753cdh
+dd 04bcddf67h
+dd 0f0b6d102h
+dd 0606e0befh
+dd 08d735810h
+dd 0d56a050ch
+dd 0bcbd0ab4h
+dd 0e24925fch
+dd 0b669b26fh
+dd 008ecf708h
+dd 0de760aeah
+dd 014ee977eh
+dd 05608ed4eh
+dd 0db49ba75h
+dd 079dd4581h
+dd 098101043h
+dd 0991391ach
+dd 0edb5aaf8h
+dd 01b399d1eh
+dd 0e1fba3b2h
+dd 09f9394a3h
+dd 00e30b812h
+dd 00f20f5a5h
+dd 0c7dc50c3h
+dd 0d280231bh
+dd 022b399a5h
+dd 0d0e019e2h
+dd 0082391e4h
+dd 0cb05d30ah
+dd 068d4222eh
+dd 0dcac9e59h
+dd 0ba7e3bcfh
+dd 00359fe65h
+dd 016cbf644h
+dd 0199bb20ah
+dd 0e68541a7h
+dd 0f96b7341h
+dd 0f931f2eah
+dd 07f0e2d76h
+dd 0e45c448bh
+dd 075373d17h
+dd 065a58d13h
+dd 052f6f7e4h
+dd 0e84a2ee6h
+dd 0d80ece91h
+dd 07848c91fh
+dd 084cd4ae4h
+dd 05c2b40e4h
+dd 0ffaa3764h
+dd 0d8d8b0e7h
+dd 0f5bc4f51h
+dd 0bff53b4bh
+dd 0d0b59606h
+dd 0ee62a589h
+dd 0778e4002h
+dd 08732cc94h
+dd 0d40e8647h
+dd 07edcae42h
+dd 0a2f3f0e9h
+dd 01298f14ch
+dd 01b348131h
+dd 0a20328d7h
+dd 0b3c8f542h
+dd 06a453557h
+dd 047c270efh
+dd 0e4b84359h
+dd 0e9b0627ch
+dd 0e6e207c5h
+dd 02fc8a285h
+dd 02dd9c695h
+dd 06effeffeh
+dd 004c04057h
+dd 017f15819h
+dd 015aaeb44h
+dd 08617069fh
+dd 020872a73h
+dd 074f98394h
+dd 0205b9d83h
+dd 08b72fbeeh
+dd 07c4b2daeh
+dd 043b2bc49h
+dd 07bb06dd8h
+dd 02f54b073h
+dd 0d74fa3c5h
+dd 0fd01945bh
+dd 086e6757fh
+dd 036ec39b2h
+dd 03d94e741h
+dd 0f717c52bh
+dd 033770527h
+dd 0d1cbc9f6h
+dd 066ef6529h
+dd 0e6449b96h
+dd 00f6eb677h
+dd 01639b968h
+dd 0c281d531h
+dd 018df2085h
+dd 0f16ace16h
+dd 065f8bb70h
+dd 08ea71e6dh
+dd 013d79e98h
+dd 01d0d7cf9h
+dd 06bef8a53h
+dd 0763cacf1h
+dd 0f68b5ff6h
+dd 08d3a4d4fh
+dd 0ee909d63h
+dd 08c9e0743h
+dd 00a0fd5c9h
+dd 049ec129bh
+dd 08a3dbeaeh
+dd 0c63cbcd1h
+dd 048e3928bh
+dd 09c1156d0h
+dd 0f325ec7ah
+dd 065cfd2b3h
+dd 04035c032h
+dd 0ff7c2853h
+dd 01b78fa0bh
+dd 0820261f8h
+dd 06ad9a218h
+dd 01a6f1a54h
+dd 0c0aa5260h
+dd 06ae4794fh
+dd 0938b867ch
+dd 04da94765h
+dd 0306c3258h
+dd 0026fe498h
+dd 0c2d3cd77h
+dd 051e54c20h
+dd 02820e3a5h
+dd 053319e67h
+dd 0160c88c7h
+dd 0f04327f3h
+dd 02b89c863h
+dd 0eaa6d851h
+dd 01764bc42h
+dd 01de78adbh
+dd 0861fc704h
+dd 00bd85b1ah
+dd 0563b0f81h
+dd 0a6809504h
+dd 0b4d284d3h
+dd 0c810cd92h
+dd 0e26c4eafh
+dd 0c45c95ach
+dd 0b7427bf5h
+dd 0b4f21710h
+dd 0fbfa3130h
+dd 024801a3dh
+dd 0cb42ca3ah
+dd 0814d5175h
+dd 006184b45h
+dd 0e5c30555h
+dd 042c6d226h
+dd 01b4f4557h
+dd 09b3c2d5eh
+dd 0f5ea3565h
+dd 083e30d37h
+dd 0e2bbdf6ah
+dd 00f5d3a51h
+dd 033c348fch
+dd 0cd0ba7a0h
+dd 0167e7735h
+dd 016c5ce5eh
+dd 07b9d87b7h
+dd 0d48f9208h
+dd 08f04c888h
+dd 096280d4ah
+dd 0f1e2da5bh
+dd 088b46187h
+dd 060bbe8fah
+dd 0bc8a8e3ch
+dd 03c9d9313h
+dd 0ca9394c2h
+dd 0c8715a58h
+dd 0165f2043h
+dd 038bea306h
+dd 0478fe84bh
+dd 08e8cbed2h
+dd 02a1e723dh
+dd 0741f0543h
+dd 0309a2a92h
+dd 085fc9163h
+dd 0fc5a96c4h
+dd 0e982f061h
+dd 0376e68c2h
+dd 0a1b6774fh
+dd 016fa47ach
+dd 05751b01eh
+dd 0a067f7e6h
+dd 085791724h
+dd 068b380dfh
+dd 09c954db5h
+dd 0259471a5h
+dd 0de706c65h
+dd 040fd5df3h
+dd 063502d70h
+dd 001c07a4eh
+dd 0b24fbbc4h
+dd 0e5b9f74ah
+dd 0485cebe0h
+dd 0c0198bf0h
+dd 071148b46h
+dd 03090af74h
+dd 0e971d151h
+dd 02699a581h
+dd 0e493b855h
+dd 01eebad17h
+dd 062490872h
+dd 0ec8b357fh
+dd 0b96343bdh
+dd 02667a575h
+dd 0753a033ah
+dd 074f8fbd0h
+dd 04f63bfa6h
+dd 07fbee4a5h
+dd 08c33d84ch
+dd 0b83868efh
+dd 01582451dh
+dd 0ba9876ffh
+dd 0ec9da14bh
+dd 0078cf587h
+dd 0a633792ch
+dd 09af9d41ch
+dd 09fba8b15h
+dd 05ddbceffh
+dd 0d7b56e25h
+dd 0dead6dcbh
+dd 0bc490398h
+dd 0f3dc6961h
+dd 061782694h
+dd 0e4a58b16h
+dd 0743406d2h
+dd 038976c15h
+dd 02d2cbdc4h
+dd 09c70ad31h
+dd 0e643cd58h
+dd 0339cba76h
+dd 00b490f07h
+dd 029397c35h
+dd 050ef3b10h
+dd 0feaceb82h
+dd 0a2dcff5ah
+dd 05d96d096h
+dd 05f1a9160h
+dd 02af5d465h
+dd 094305b79h
+dd 0dc9162f5h
+dd 0b54b616eh
+dd 06d2401f7h
+dd 0b4b15349h
+dd 0fae5e415h
+dd 0734995b6h
+dd 067a7ad43h
+dd 0279f0a4ch
+dd 0da787fa4h
+dd 0955c3752h
+dd 085087779h
+dd 0ed5a9c47h
+dd 0b8c22acah
+dd 05dcc74eeh
+dd 0d4002f75h
+dd 0d632552bh
+dd 0dd1e64d3h
+dd 0050eeb05h
+dd 0a9c91851h
+dd 0b5e0a047h
+dd 093d7125fh
+dd 047920192h
+dd 0987dd727h
+dd 0923c410eh
+dd 0a0aee476h
+dd 0f1e3a89fh
+dd 04de5573ch
+dd 0a20ba6f4h
+dd 0647fb35bh
+dd 01d4f218bh
+dd 0ec3b0f32h
+dd 00f1ffd1ch
+dd 0705bcfb0h
+dd 08e136af2h
+dd 03f14bb37h
+dd 0a63f3d99h
+dd 0c23841deh
+dd 0ba87a29fh
+dd 0ff177613h
+dd 0c0241659h
+dd 02af0101dh
+dd 0a250e3f7h
+dd 03329bc76h
+dd 0726eaf12h
+dd 020e37717h
+dd 0201b163eh
+dd 06ad69f6ch
+dd 062f4300bh
+dd 0cc17b79ch
+dd 0ba0229eeh
+dd 09e7b6d46h
+dd 0a4267ce9h
+dd 08ab80674h
+dd 009725af1h
+dd 0c115283dh
+dd 0e161b93eh
+dd 0711332e5h
+dd 0ce0ef605h
+dd 0f28e1639h
+dd 0fc9d1a20h
+dd 032b1fd90h
+dd 0011453e4h
+dd 0521ef0beh
+dd 085b3e4adh
+dd 011c9a06ch
+dd 060ff8675h
+dd 07c4557e4h
+dd 08836fafbh
+dd 0e9a126c8h
+dd 016043610h
+dd 0d4512b19h
+dd 073194718h
+dd 0aed50d3fh
+dd 0c1bf2beah
+dd 0589b09beh
+dd 0daefd88bh
+dd 0406ec5dfh
+dd 0e9f4509eh
+dd 00aabeaceh
+dd 0d2b5eed1h
+dd 0d23c0a84h
+dd 04994736bh
+dd 05fe9944ah
+dd 0e72037e5h
+dd 08609c768h
+dd 0eb3aec1ch
+dd 09aad2324h
+dd 046923be8h
+dd 015b8c47ah
+dd 01cec9637h
+dd 08474ec65h
+dd 0cbb0e579h
+dd 090475fd2h
+dd 0753d5755h
+dd 0aec1240fh
+dd 0629b5d6dh
+dd 08c78b2f3h
+dd 08750692ch
+dd 0b0ab8009h
+dd 0b1c28650h
+dd 0e947a226h
+dd 084100772h
+dd 0a2666ce7h
+dd 0ba0b9ccch
+dd 0b52377c6h
+dd 0d909a819h
+dd 07938c0ddh
+dd 02db56171h
+dd 05c28ee24h
+dd 02754345ah
+dd 030ef2606h
+dd 07ea734b7h
+dd 0f387f08fh
+dd 0052e2280h
+dd 00ac4b691h
+dd 06268e74fh
+dd 0dfe166efh
+dd 0069fdbeeh
+dd 07eea85b7h
+dd 0b2aa840eh
+dd 0d669a6d0h
+dd 0d077cc7ch
+dd 02ef94d26h
+dd 04ab1d1e9h
+dd 03471514bh
+dd 063444405h
+dd 0b27b8e40h
+dd 0c42bade7h
+dd 0c5b48c5dh
+dd 0ab08e561h
+dd 03a959897h
+dd 0248984a6h
+dd 03ce56bf2h
+dd 0f6d44089h
+dd 00510f156h
+dd 0ef608d6dh
+dd 0a974c303h
+dd 018bc0dceh
+dd 04f631e34h
+dd 0f8d2e764h
+dd 0b71e20ebh
+dd 04b18ee2dh
+dd 03fd8ec57h
+dd 0a944f6d8h
+dd 0e89344cah
+dd 004783466h
+dd 0e8062e54h
+dd 0ea07f655h
+dd 0a65f427fh
+dd 0b4072836h
+dd 0c3871c73h
+dd 01f6e5d4bh
+dd 00102e703h
+dd 080405fbch
+dd 07bfd9c89h
+dd 067d551a6h
+dd 0243e339ch
+dd 0c1ed0e8bh
+dd 0740cff53h
+dd 03396b67dh
+dd 0dabb3766h
+dd 07c3ce55ch
+dd 003d03be9h
+dd 074492391h
+dd 0f226a6e8h
+dd 0180455c6h
+dd 0aa57411bh
+dd 0e4f72fc4h
+dd 0ae13921bh
+dd 06541d870h
+dd 0cc09cbc7h
+dd 02102bf38h
+dd 0b7f68f23h
+dd 05bfd8836h
+dd 08f729456h
+dd 0fb4c8e4ah
+dd 0d2e1d73ch
+dd 01a1ca472h
+dd 04c8e092dh
+dd 01db20a5ah
+dd 06001a4c8h
+dd 062b052f2h
+dd 03a7672c1h
+dd 0e4a2deaeh
+dd 0f9bcdceeh
+dd 016220d4ch
+dd 0a5ebb502h
+dd 0da390141h
+dd 04cf14fdeh
+dd 056a43ca5h
+dd 02f79308ch
+dd 07b7af26ah
+dd 0ab1d4b73h
+dd 01400f6f4h
+dd 0c73cfc79h
+dd 04f8e57fch
+dd 0418f9420h
+dd 0c4e4fbb4h
+dd 09212b2dbh
+dd 041a31aach
+dd 01389fb7fh
+dd 06d2998a4h
+dd 06a8f1eaeh
+dd 0cb827d16h
+dd 0fd134509h
+dd 0c710088fh
+dd 08f341dd0h
+dd 063000d70h
+dd 0d2baaceah
+dd 00a5ed423h
+dd 044a2b3e3h
+dd 00b10f7f2h
+dd 09bfb80f6h
+dd 0d1fd9e52h
+dd 08054dc01h
+dd 0c6283326h
+dd 031be6f68h
+dd 057103abfh
+dd 0da63c734h
+dd 07e2045aeh
+dd 02bbb5acbh
+dd 0af0f1c01h
+dd 04e6f2bdeh
+dd 04b03953dh
+dd 07a6eecach
+dd 05e5992c7h
+dd 022d93cebh
+dd 0d5f09478h
+dd 02ae6a7d9h
+dd 0a92e3c1ah
+dd 0992df2a8h
+dd 036a6fa1fh
+dd 0fff1c647h
+dd 071cafe69h
+dd 0d6738dcfh
+dd 0fdd0851ch
+dd 0c184e9cch
+dd 09f7a3f99h
+dd 039c195c0h
+dd 08634011ch
+dd 03e755a67h
+dd 002090301h
+dd 0d74cabcch
+dd 005c6140ch
+dd 0b119bc5eh
+dd 0a133ad60h
+dd 000120ee8h
+dd 031db49dfh
+dd 07aee5a85h
+dd 0f27ea3bfh
+dd 04f845d13h
+dd 0e341e5ddh
+dd 080f12205h
+dd 0bc1273a2h
+dd 008680457h
+dd 0b6e16fb9h
+dd 06e80c277h
+dd 06fc00ab9h
+dd 04e8625a4h
+dd 02ff27f85h
+dd 0a6a5ec16h
+dd 0a68ca5bah
+dd 02e7730abh
+dd 0fc0705b2h
+dd 0cbf693a5h
+dd 009847e9eh
+dd 08dcd4each
+dd 01b56c0a9h
+dd 09224460ch
+dd 0a15aeeb3h
+dd 06cd5d383h
+dd 01204c25bh
+dd 094523603h
+dd 0de8e7509h
+dd 08a96e6e9h
+dd 076c5ff80h
+dd 0d6df2de6h
+dd 0354693d5h
+dd 0e1367fe0h
+dd 04edbc099h
+dd 0edb7cd2dh
+dd 0349a7468h
+dd 04887714fh
+dd 015130b63h
+dd 0bbad32e6h
+dd 08510114ch
+dd 0f1fabb13h
+dd 022d50bb7h
+dd 0d16820f2h
+dd 0db7ed34eh
+dd 042ff507ch
+dd 05614b6a6h
+dd 04deb8d82h
+dd 0aec89df1h
+dd 00e56d77eh
+dd 0ed1a7ab4h
+dd 035eb9bb7h
+dd 04f100d72h
+dd 074cb5effh
+dd 08c9f7d1eh
+dd 0fc729fa6h
+dd 0bc813e74h
+dd 0fcac1aa1h
+dd 017dc8fabh
+dd 06ea33e26h
+dd 0ecc00b84h
+dd 0fcae94b9h
+dd 0c42259cch
+dd 0011c4108h
+dd 05d897300h
+dd 05814667bh
+dd 0681af98bh
+dd 089201193h
+dd 0ed531e54h
+dd 0af6d7037h
+dd 0513973c8h
+dd 04ea74fe7h
+dd 072fb8c63h
+dd 0c6bd96e6h
+dd 0c7b7f487h
+dd 0e6cc3a41h
+dd 0ec2e6416h
+dd 0f9ecb083h
+dd 0150d77cfh
+dd 043d1aaa4h
+dd 09a9fcd2eh
+dd 0c0a2d75bh
+dd 0c3a9dc07h
+dd 05d7cabf6h
+dd 0c2554aaah
+dd 0a8d610d4h
+dd 085dc84dbh
+dd 0a63a8e6bh
+dd 0b58b268fh
+dd 0cd04961eh
+dd 0cdbbfab5h
+dd 0d719a5c8h
+dd 07fabfd07h
+dd 0f108eeceh
+dd 06e56b908h
+dd 0166764aah
+dd 09fcaa74bh
+dd 00d6e16e0h
+dd 061951eb3h
+dd 0cd1593bbh
+dd 052132042h
+dd 0f388ae5eh
+dd 0ee8e8e8bh
+dd 010063dd6h
+dd 0bd454ae6h
+dd 084a0e8c2h
+dd 0b31c422eh
+dd 0e94e75dah
+dd 08b2cfecdh
+dd 04c54b552h
+dd 06e61c0e5h
+dd 0c6167938h
+dd 0a37c4c20h
+dd 0647250dch
+dd 0186002cah
+dd 0917adcb4h
+dd 05374f2a9h
+dd 0c89569fbh
+dd 00d649b34h
+dd 070169ee5h
+dd 07489d153h
+dd 0e8e51ea6h
+dd 0d7888bdch
+dd 0f8f8d278h
+dd 0c1f8dd72h
+dd 05a704573h
+dd 019cb6e1eh
+dd 0314f0fffh
+dd 061e37a19h
+dd 05f3fe4c2h
+dd 01ebfa280h
+dd 0c4464d27h
+dd 0ffe13abbh
+dd 0f39897d5h
+dd 01560f15bh
+dd 0cc2a1d87h
+dd 0b1c54440h
+dd 0c05fa19eh
+dd 06557739ah
+dd 06ffd8316h
+dd 0d903b5feh
+dd 09819dec3h
+dd 05b5d4014h
+dd 06669b786h
+dd 0bd3d89b3h
+dd 0045436dbh
+dd 065d43666h
+dd 098875563h
+dd 0125f8d75h
+dd 0185d226eh
+dd 0c57c78adh
+dd 01b5c5a77h
+dd 020231168h
+dd 03deae123h
+dd 06139f68ch
+dd 09dcb9605h
+dd 0e589cae9h
+dd 0a388cb96h
+dd 002c8cab7h
+dd 0c2ed383bh
+dd 0aed155b4h
+dd 0d95e21fbh
+dd 08075fe9ch
+dd 05a151004h
+dd 0a35cb7c6h
+dd 046f89e35h
+dd 07ab46df9h
+dd 006cc0098h
+dd 0aceeb09ah
+dd 04d09861ch
+dd 092795319h
+dd 0134bc53ch
+dd 058a777e8h
+dd 04918c035h
+dd 0de706439h
+dd 0b69c228ch
+dd 045a1012bh
+dd 03896ae54h
+dd 007bbb033h
+dd 0fafb385dh
+dd 06bd4083ah
+dd 04a3b43abh
+dd 0fa93e96bh
+dd 0e6e05fe8h
+dd 02cb8d2d4h
+dd 0ca9853c3h
+dd 002062066h
+dd 0d35edf51h
+dd 0767cb6ddh
+dd 0362d4c6ah
+dd 004eb029ah
+dd 0ce71e88ch
+dd 0bc3d7566h
+dd 00ad04154h
+dd 02817333dh
+dd 0cc5fc580h
+dd 0976e28ach
+dd 042d0fa71h
+dd 0db0c9ce9h
+dd 001ef2031h
+dd 0e332befah
+dd 0eb995626h
+dd 0be313ea7h
+dd 0fae344ddh
+dd 0dc318566h
+dd 07810bad4h
+dd 0fbc8130fh
+dd 020ed36a1h
+dd 0833c0f01h
+dd 0a6eaf8b3h
+dd 03758d9c6h
+dd 046bd090eh
+dd 060b7ecf0h
+dd 0c005d98dh
+dd 0fde8cb02h
+dd 0898489fah
+dd 0b416ab14h
+dd 0749ae96ah
+dd 01a176a51h
+dd 0c8c460aah
+dd 0cbf075c0h
+dd 0cc0e53efh
+dd 033fdfff6h
+dd 099afd2e1h
+dd 0ecb91369h
+dd 0c16666c9h
+dd 09d3c7420h
+dd 024d45cf6h
+dd 003b971a6h
+dd 0ba34ffcbh
+dd 01c0cdf60h
+dd 03301610dh
+dd 059a98142h
+dd 0ac306265h
+dd 02ad59316h
+dd 08671d3f4h
+dd 05caa3c20h
+dd 08dad4ca5h
+dd 016881ceah
+dd 08c4fd55bh
+dd 0c3333c2ah
+dd 0b6721f15h
+dd 080150663h
+dd 044f2c70bh
+dd 056762f88h
+dd 0fe763d24h
+dd 0c6f73b9bh
+dd 01ba23733h
+dd 0633e9e8bh
+dd 0a1896210h
+dd 07105ae74h
+dd 0a9a5438ah
+dd 004c8d87ah
+dd 0457d86b6h
+dd 0842f7345h
+dd 0f673170dh
+dd 0a71ac09fh
+dd 0332c197bh
+dd 04c4aabeeh
+dd 093e46ac9h
+dd 0bed8aab5h
+dd 0cfc8328bh
+dd 0c863bf8eh
+dd 0175e2a5fh
+dd 09c89a243h
+dd 0c21fec35h
+dd 07250677ch
+dd 01fd07366h
+dd 0585bd8c1h
+dd 041ec3df7h
+dd 0189cc8c1h
+dd 098ac8fffh
+dd 05d3c4c43h
+dd 0bce24e18h
+dd 066f36934h
+dd 0f7fb5825h
+dd 02a62e5a0h
+dd 0699fb3ebh
+dd 0540502e9h
+dd 01205d83ch
+dd 048cd7b76h
+dd 0ca8f382eh
+dd 026a2ea32h
+dd 0a4f6f4eah
+dd 0ceb57fbfh
+dd 0245be7ddh
+dd 01b5d3630h
+dd 00352fd48h
+dd 0985f80cah
+dd 0046a5282h
+dd 082dda851h
+dd 0d0d2fd61h
+dd 09168f53eh
+dd 0d0535d6dh
+dd 0eb4636d8h
+dd 086707a1dh
+dd 00023c57ah
+dd 09c35e469h
+dd 0f558807ch
+dd 03a707df4h
+dd 0a163b821h
+dd 062838b60h
+dd 08983a7b9h
+dd 00e28d2a9h
+dd 055206716h
+dd 017195005h
+dd 0e21be0f2h
+dd 0f7101a26h
+dd 0d05d45feh
+dd 0f30c2a90h
+dd 0743ad6beh
+dd 027fe4bebh
+dd 01c098babh
+dd 02ef2d84ch
+dd 013dadb48h
+dd 00b9bd2b3h
+dd 03f3dbf65h
+dd 08040bee9h
+dd 0240abffdh
+dd 0dceb8191h
+dd 0d648af5fh
+dd 0b3acf1aah
+dd 0ffaaa2e2h
+dd 0f756aee1h
+dd 0025747bdh
+dd 02a29bebfh
+dd 0793513a6h
+dd 02367fdadh
+dd 0b4859428h
+dd 0067c6692h
+dd 06a8616eeh
+dd 08710c7fbh
+dd 05080d70ch
+dd 0badf40fdh
+dd 0414483c9h
+dd 00cc6fa5ch
+dd 0ba444b84h
+dd 0acd8e4e1h
+dd 04f5e77d6h
+dd 07919f0d4h
+dd 06aaf5fabh
+dd 08239e063h
+dd 072e28977h
+dd 071d15db7h
+dd 06e66d039h
+dd 002a990bdh
+dd 0a3bbeea4h
+dd 04b274026h
+dd 02bd5edbch
+dd 0153b0387h
+dd 02d814820h
+dd 030223cc1h
+dd 0d945d3a7h
+dd 04dfbb484h
+dd 0cc6009bch
+dd 0ec22744ch
+dd 0a97eff4bh
+dd 057503116h
+dd 0ee509c1ah
+dd 00e834154h
+dd 09d7bcc61h
+dd 0ebd37c2fh
+dd 0815ce06ah
+dd 059d764c2h
+dd 092d56d4ch
+dd 0bedb473dh
+dd 0677379f8h
+dd 06a7ce64ah
+dd 073d342dbh
+dd 09f6e6a0fh
+dd 0826b6c3dh
+dd 0776b9016h
+dd 0bcdbf780h
+dd 03a68e06eh
+dd 0538dfb1ah
+dd 02e32f14dh
+dd 0a089d4c7h
+dd 0b8aa069dh
+dd 0c4ebc508h
+dd 06647cfd8h
+dd 0da22e20bh
+dd 0ee9655d4h
+dd 0533911a8h
+dd 0c0b7421ah
+dd 0732cdef4h
+dd 0051574e5h
+dd 0d73290ebh
+dd 0f4b90a48h
+dd 04f825e59h
+dd 06a4e7cc8h
+dd 0c0b336e6h
+dd 08a43b3ddh
+dd 020baf603h
+dd 0f59b3dd4h
+dd 06f08be3bh
+dd 0d6fd8563h
+dd 0ae629d0bh
+dd 058c49f1bh
+dd 0facfd1f6h
+dd 0f7c58e16h
+dd 07187c993h
+dd 0fc518c01h
+dd 080586c3ah
+dd 0c9254dbch
+dd 0db470cb9h
+dd 07163eecch
+dd 0aa789828h
+dd 023bf3eb6h
+dd 091f5df9fh
+dd 0c7713d86h
+dd 0b8ca0113h
+dd 0036fd6eah
+dd 00343a7f8h
+dd 0319b4391h
+dd 00850fccbh
+dd 0c7058ac7h
+dd 038db2d17h
+dd 0bb4e2516h
+dd 03ecd90f4h
+dd 0babd2497h
+dd 0aa5e5c91h
+dd 00118972dh
+dd 0af892367h
+dd 072310225h
+dd 0237efb69h
+dd 04267d6c5h
+dd 0728a57dbh
+dd 0efe66fbbh
+dd 00f92f39fh
+dd 0bbe6049eh
+dd 09c07d99bh
+dd 079340ae7h
+dd 0003c421fh
+dd 0dd01a9d3h
+dd 02adace7fh
+dd 0b69d99f1h
+dd 034cb73ebh
+dd 0c9f01c89h
+dd 09a3b3155h
+dd 0b2d34ae7h
+dd 09305fc98h
+dd 056c7c69eh
+dd 006cb847bh
+dd 0f49c6cb0h
+dd 0048b4b60h
+dd 063402e11h
+dd 0a8c6c6eeh
+dd 0b06b9babh
+dd 09949e233h
+dd 098cbc114h
+dd 07fdd0fach
+dd 0041d9a2bh
+dd 07d66b37fh
+dd 0715e37d4h
+dd 0e440b8e0h
+dd 0d389071ch
+dd 06e6b7ce6h
+dd 09f43b800h
+dd 0a81bbec0h
+dd 010ac6bfdh
+dd 0e03b7e3ah
+dd 02a0d6a3ch
+dd 0ab71eb38h
+dd 01e1d7143h
+dd 03d23cedbh
+dd 07be591ceh
+dd 0586b382fh
+dd 05778ca88h
+dd 00ef55bbeh
+dd 05d5b7a48h
+dd 0610347b6h
+dd 07194e091h
+dd 03d54ee18h
+dd 0177985e1h
+dd 0ae89d460h
+dd 018c6445dh
+dd 05464f4c6h
+dd 0337bc33ch
+dd 06ff98c9fh
+dd 0f1b865d3h
+dd 048641f72h
+dd 0e8a2e1dbh
+dd 0331a6581h
+dd 0615b10cfh
+dd 0944feff4h
+dd 0053869c4h
+dd 0582a1e80h
+dd 045d032c9h
+dd 0b8f55263h
+dd 0aab81c73h
+dd 046652a3bh
+dd 005d287adh
+dd 01316b4a6h
+dd 0a671c98ch
+dd 07879b45ch
+dd 0a49bb886h
+dd 0a0b482b4h
+dd 00c0826e3h
+dd 07c131b82h
+dd 03141152ah
+dd 0a8024b09h
+dd 08b86a156h
+dd 08181a3a8h
+dd 08e871588h
+dd 02ab19b74h
+dd 0162aab8bh
+dd 0d1bfe0fbh
+dd 06622efabh
+dd 069919dd5h
+dd 018605b97h
+dd 09da345dbh
+dd 01d77316eh
+dd 0a0d673a3h
+dd 0c0694d21h
+dd 086c8cfa4h
+dd 014b3a830h
+dd 00c678b55h
+dd 03365b97ch
+dd 0bd1d6c9ch
+dd 0a820ae3bh
+dd 08526796ah
+dd 016685d1ah
+dd 094f685d0h
+dd 0017136cfh
+dd 0d7c28c90h
+dd 070ed7e9ah
+dd 08c97191eh
+dd 05ec277bfh
+dd 027a69850h
+dd 05d092921h
+dd 0c7815ccbh
+dd 0618a88a2h
+dd 00f4bdfc9h
+dd 01c51200fh
+dd 053bb166ah
+dd 080eb26dah
+dd 0c290019ah
+dd 053f72f37h
+dd 0cb8eaee1h
+dd 0311e4ee5h
+dd 05a937b96h
+dd 0d6268cd5h
+dd 015554a7dh
+dd 0fd1ef4a8h
+dd 0538b7a73h
+dd 0653ba3b2h
+dd 067ef047dh
+dd 09c1b49fdh
+dd 09cc2e6ffh
+dd 055434254h
+dd 0e302c550h
+dd 0c40a40d8h
+dd 0fedf176fh
+dd 0179fe38bh
+dd 0b655306bh
+dd 0f345c420h
+dd 0e47eef6ch
+dd 02bfb1c82h
+dd 076d419abh
+dd 0d6760454h
+dd 09c09d1a6h
+dd 0dacf3a22h
+dd 05693a4bdh
+dd 0a5633d40h
+dd 00e60832bh
+dd 0dbe0e545h
+dd 0f93c3210h
+dd 0785f6780h
+dd 0729dcc6ah
+dd 0bcb6d7f0h
+dd 0afbb2f12h
+dd 0d053efafh
+dd 080b606a6h
+dd 00b1ee913h
+dd 0dd64a495h
+dd 05790ae54h
+dd 0071c2ef1h
+dd 0006b80deh
+dd 0ca0489ceh
+dd 0a327ef44h
+dd 00a5ef814h
+dd 0a7d01bbch
+dd 0a46398a1h
+dd 0ab4eb17bh
+dd 0f37ffec3h
+dd 0e05f911ch
+dd 07fa045fah
+dd 0b81b47abh
+dd 0ae185933h
+dd 080e291bch
+dd 0c6b87ad2h
+dd 0ec0f9af7h
+dd 001b5540dh
+dd 0eeaa70f8h
+dd 004b5c144h
+dd 08c33d260h
+dd 0bb1af0e2h
+dd 0b9a34cadh
+dd 01870f9e8h
+dd 03b0e81b3h
+dd 0b35d883fh
+dd 0a4f69068h
+dd 0f9fa6885h
+dd 090963d50h
+dd 022c49d70h
+dd 04f2cf011h
+dd 0ce5b3057h
+dd 05172e0c1h
+dd 03d0c8b3bh
+dd 042d7a83dh
+dd 0a66a95e5h
+dd 016f194f3h
+dd 057a2da07h
+dd 0251b5bfdh
+dd 0773d4b35h
+dd 0367f58c2h
+dd 03c08a86fh
+dd 00a8a8b6bh
+dd 082bcce71h
+dd 066559e79h
+dd 025656ed6h
+dd 09ee2803dh
+dd 083d81d0ah
+dd 07e488678h
+dd 04e60805dh
+dd 0543c53f7h
+dd 0c228c453h
+dd 0b90c5cdbh
+dd 03abb1f21h
+dd 09045fdc7h
+dd 0d9c29e40h
+dd 05bff50ceh
+dd 04bcc2b14h
+dd 0758d5f47h
+dd 03a4f4bdch
+dd 00006231fh
+dd 08a863d86h
+dd 049fd8c5ah
+dd 043fa61c7h
+dd 0888feea2h
+dd 056be8d5eh
+dd 0410e149ah
+dd 0cb0dc0f5h
+dd 05f6e7804h
+dd 07faa2b6ch
+dd 0d6b14c9eh
+dd 05dee7440h
+dd 06e104fbbh
+dd 05942fa9ah
+dd 0c245a3efh
+dd 0a0d36c80h
+dd 0d2fb1af5h
+dd 0a7023565h
+dd 0c2faf6cdh
+dd 0856b75dfh
+dd 092f19eb8h
+dd 052260bbah
+dd 053381beah
+dd 0153fdf4eh
+dd 09c55afcch
+dd 0ba1d7211h
+dd 0383fab36h
+dd 08d218d19h
+dd 0397bdd5bh
+dd 0cfd3e83bh
+dd 082683eeah
+dd 09dfcd86eh
+dd 009edfebfh
+dd 05eb713e5h
+dd 0c9f2b9dbh
+dd 070d893f6h
+dd 0148bed7bh
+dd 050ae8ce9h
+dd 0d1361d59h
+dd 03c3355bah
+dd 0ad8c0420h
+dd 0eae60471h
+dd 05a33a108h
+dd 0cf16c46dh
+dd 0fb8d1d43h
+dd 00eb84d3fh
+dd 05df6e33ah
+dd 0f53bc9deh
+dd 0123777e1h
+dd 09e6e9d8bh
+dd 0f499357ah
+dd 0502429a6h
+dd 07782b6b7h
+dd 0ce207ce5h
+dd 070ebf43ch
+dd 0d33d0df0h
+dd 0bd00a39dh
+dd 01854b2a4h
+dd 04b317362h
+dd 06d2cbec5h
+dd 077eb97f2h
+dd 0b9341385h
+dd 00873ba9eh
+dd 05151017ah
+dd 0e46a41a3h
+dd 0b7c0547ch
+dd 0c7832035h
+dd 0daff565ch
+dd 0e3d4f41ch
+dd 0b0f4fe6fh
+dd 0d172c9a8h
+dd 01c76b16dh
+dd 000342f4bh
+dd 0aa6ab1fah
+dd 025017f43h
+dd 0aca23b0ch
+dd 06f0f6889h
+dd 02a43487eh
+dd 00a5f460eh
+dd 078c73c94h
+dd 0f7565107h
+dd 053912446h
+dd 0fb17c0cbh
+dd 02ef9e60dh
+dd 0f4bc80f3h
+dd 088a73297h
+dd 094dc016eh
+dd 05a272953h
+dd 0b81a97ech
+dd 0781197eah
+dd 0eecbe3c1h
+dd 0afc098e5h
+dd 0a963cac5h
+dd 08c8d0106h
+dd 0d04654c5h
+dd 0294ce018h
+dd 04ba99dd1h
+dd 0d46d5374h
+dd 0ecbb3798h
+dd 00ba1bb64h
+dd 0e61038a6h
+dd 07c498921h
+dd 0a0e5b9fah
+dd 0ed6702deh
+dd 0584ab9bfh
+dd 0fb527e37h
+dd 06f01f5c8h
+dd 080014bd3h
+dd 02c945e2ah
+dd 008fea62ch
+dd 05efd52fdh
+dd 08b832fcch
+dd 0c773eb7ah
+dd 092288343h
+dd 04b68442ah
+dd 0227b8a0dh
+dd 07a34849bh
+dd 086ddfeach
+dd 018ed6a96h
+dd 08e4aeb66h
+dd 0b1080189h
+dd 0acca13dah
+dd 0c2f2c036h
+dd 0855dd8e2h
+dd 04e9f1fc5h
+dd 0b0e19495h
+dd 09f920707h
+dd 0309dfa63h
+dd 08010462bh
+dd 08d6f5618h
+dd 0a72ee140h
+dd 06379e383h
+dd 0b6ead0a8h
+dd 00d7042b2h
+dd 0b1ec28d9h
+dd 0736d5d6fh
+dd 0485d3f60h
+dd 034cf0249h
+dd 04f7f479ah
+dd 02022281bh
+dd 011ae4536h
+dd 023adac09h
+dd 079e472f7h
+dd 0b6b6c5d3h
+dd 003adab09h
+dd 041febfdch
+dd 02ae271c9h
+dd 0860c0a36h
+dd 056e92e10h
+dd 01c226291h
+dd 00bf3596ah
+dd 07a278596h
+dd 0ba83c26dh
+dd 0e37cfdcfh
+dd 0667e480eh
+dd 07b80ddd4h
+dd 0f2d06b68h
+dd 092334ac4h
+dd 086fa2264h
+dd 02bd61667h
+dd 00434c72ah
+dd 07fe78fc8h
+dd 0016e9bc4h
+dd 0471f018fh
+dd 05dacb15bh
+dd 0e8a40b1dh
+dd 0c7d0b07eh
+dd 04e1bb09dh
+dd 0cbacbd6ch
+dd 00d1c6fd4h
+dd 0e924cc96h
+dd 054f2badbh
+dd 0d6455c9ch
+dd 0fdad5a32h
+dd 0fb3896cah
+dd 0f336eb1ah
+dd 05b29e88bh
+dd 0ab0b5d70h
+dd 0e3b5ea9ch
+dd 08e28b55eh
+dd 0fc61ecd7h
+dd 0fa3abb69h
+dd 04b1660adh
+dd 01cc235c4h
+dd 088ab79ebh
+dd 0f4585a14h
+dd 0ea301eaeh
+dd 083719829h
+dd 032042a0ah
+dd 037aa0d16h
+dd 0e995e214h
+dd 0c9158397h
+dd 08ff823f3h
+dd 036514de2h
+dd 04dd26eaeh
+dd 0f82c814ah
+dd 03a5de4d1h
+dd 047448964h
+dd 053047df4h
+dd 0025ffbb6h
+dd 0a25b6834h
+dd 02202708ch
+dd 03b7dec4dh
+dd 0dca035f0h
+dd 00221809ah
+dd 05f7de2c3h
+dd 00f582819h
+dd 05c8fa6eah
+dd 08cd8aa46h
+dd 0193791fah
+dd 032b2b04fh
+dd 0fb8a633ah
+dd 08a06d24ch
+dd 0984c6ef2h
+dd 05e3cdae9h
+dd 0bd41adc7h
+dd 080c21c3fh
+dd 08698ca1fh
+dd 080ff77a7h
+dd 07362a71ch
+dd 03f12636ah
+dd 0b47fd846h
+dd 0972528d9h
+dd 0bf069eabh
+dd 01448243eh
+dd 0803365d9h
+dd 0767dab48h
+dd 0818ed965h
+dd 0e37e0406h
+dd 031ceb729h
+dd 06cd994aeh
+dd 08f9e6f85h
+dd 06b1b8f15h
+dd 00b57e19dh
+dd 07de64ccah
+dd 07f90096fh
+dd 052e191c8h
+dd 07cc96768h
+dd 0d4b2a502h
+dd 015c7e7f2h
+dd 046daf684h
+dd 01de503d6h
+dd 03cb337d8h
+dd 06a8dde70h
+dd 0dfd98d59h
+dd 0a6a729edh
+dd 0620fda42h
+dd 076c23f89h
+dd 0063ab456h
+dd 0054f9d94h
+dd 0342dde7dh
+dd 0324c3f8bh
+dd 0afc0c9cch
+dd 0d1bdfd01h
+dd 0df3c3a2ah
+dd 0543476b6h
+dd 02d867773h
+dd 08fd59db9h
+dd 020cfd69ah
+dd 0b8a8802fh
+dd 06d351bc1h
+dd 0cbe4da4ah
+dd 093d608e8h
+dd 0d205863eh
+dd 0b2bf5c00h
+dd 01d6e96feh
+dd 05a363b71h
+dd 02ffc124dh
+dd 06b286416h
+dd 00a1fd4b5h
+dd 05fd12044h
+dd 0bc06e163h
+dd 06941fec2h
+dd 0c440f4e5h
+dd 073aec07fh
+dd 0a13bba35h
+dd 05781227ah
+dd 007c150fch
+dd 072f4d12bh
+dd 0d63dd0a9h
+dd 012a6d162h
+dd 0e6553cf9h
+dd 032a67766h
+dd 07b4d87cdh
+dd 0f1a16ba7h
+dd 0a8a8822dh
+dd 0ef305ea6h
+dd 0cfac8ee4h
+dd 0df4a7a4dh
+dd 0696f278ch
+dd 01092220eh
+dd 000b19600h
+dd 073ae39a0h
+dd 06b5d24eah
+dd 0260da50eh
+dd 0cf80b499h
+dd 01ea89e15h
+dd 0a4f545fah
+dd 0d811d4afh
+dd 0d50c19e1h
+dd 0ff5ce8c9h
+dd 0a17e031eh
+dd 0e641bef4h
+dd 06d1cfd48h
+dd 0022fd524h
+dd 01fb98037h
+dd 007dd318eh
+dd 0152b391dh
+dd 05d9d7eb0h
+dd 0bc195bf0h
+dd 03dd0524fh
+dd 0a0f66c84h
+dd 0e6d2514dh
+dd 0b94a14e4h
+dd 08a55f9a8h
+dd 07c00eadbh
+dd 0bd270f77h
+dd 02fe095efh
+dd 0dba91bc0h
+dd 0070dd88ah
+dd 069fc9b03h
+dd 0432e5d8fh
+dd 002ff4086h
+dd 04d2f8731h
+dd 00e3859b9h
+dd 068827a02h
+dd 0d6d79df3h
+dd 09f19847ch
+dd 01478978fh
+dd 081b43068h
+dd 0335e4946h
+dd 05289c6d5h
+dd 036362c6fh
+dd 09de2e08dh
+dd 0390b3fc0h
+dd 00d9154bch
+dd 050af46fah
+dd 0c84215e8h
+dd 0f81f2d46h
+dd 0cca929b2h
+dd 0004b236ah
+dd 07d856fc9h
+dd 0552f930ah
+dd 0a7cb7fbdh
+dd 065d937f9h
+dd 053fd0cc9h
+dd 0f650f12fh
+dd 0a8405a0fh
+dd 0f9ff5b80h
+dd 0dd6e0592h
+dd 0266632f6h
+dd 0b27183e1h
+dd 058e59c9bh
+dd 0177e2d25h
+dd 0fafdb7fbh
+dd 0e975f23ch
+dd 0e60bdc8dh
+dd 09f31837eh
+dd 0efe11ec6h
+dd 0d65117eeh
+dd 03c3267e2h
+dd 0159022d7h
+dd 09cda9c4ah
+dd 0a9301784h
+dd 044dc24d9h
+dd 0ee2c9f61h
+dd 0022017b5h
+dd 0df440121h
+dd 098a9fdf6h
+dd 0b05cf764h
+dd 07501d53ch
+dd 064357ddch
+dd 0bd940eadh
+dd 0d576c818h
+dd 04e123275h
+dd 01f84993bh
+dd 019622c1ah
+dd 0e8ffd5e7h
+dd 0edb0769fh
+dd 018794363h
+dd 0cef1142bh
+dd 0c31c8a89h
+dd 04c3fd4fah
+dd 0b2dc5adeh
+dd 066019d8bh
+dd 00c37f2b4h
+dd 04b2e211dh
+dd 08f05551fh
+dd 0ad79bc26h
+dd 014101d68h
+dd 0bdd0dde0h
+dd 07d6b254ch
+dd 09ee86872h
+dd 02d5622a4h
+dd 02653a5d7h
+dd 043e95569h
+dd 09fb0cc86h
+dd 00e3a1303h
+dd 09d39e22fh
+dd 06d1d60d9h
+dd 08b8b12ddh
+dd 0f6512218h
+dd 084ce41a0h
+dd 09fc45b5bh
+dd 06f4dd6bah
+dd 0cf4f59a7h
+dd 0ffe9dcb6h
+dd 0bce4c769h
+dd 0706dd183h
+dd 03e59c241h
+dd 0c7552d28h
+dd 0f9ddcdcdh
+dd 0305185d9h
+dd 027a0fc83h
+dd 0199a3732h
+dd 0fe8dfaf8h
+dd 059d02007h
+dd 0b7a7a2cbh
+dd 086e6b4eah
+dd 0ac018622h
+dd 0f0450b66h
+dd 0aa3bdeech
+dd 083d94740h
+dd 08f2eed4ch
+dd 00c1daa77h
+dd 0a5d66c7eh
+dd 05860e080h
+dd 0af7bd295h
+dd 0d6331407h
+dd 031d4d3c7h
+dd 04a635678h
+dd 0d894b8a1h
+dd 01ddcae2fh
+dd 046a8051eh
+dd 0a77fbca9h
+dd 0025ea10ch
+dd 05163c9bch
+dd 079c983b4h
+dd 0be819623h
+dd 0a04b3524h
+dd 0313a745ch
+dd 05879d77eh
+dd 018d7a420h
+dd 06f98377bh
+dd 033e2a943h
+dd 0b01e0902h
+dd 01cf2dbebh
+dd 09b06d2ffh
+dd 08416196fh
+dd 066261e11h
+dd 0dd42db8ah
+dd 066b86df2h
+dd 02ad483ffh
+dd 00e8ad2c7h
+dd 009f91bech
+dd 0d94b4310h
+dd 0c0e80464h
+dd 03fd430aeh
+dd 09ea515f4h
+dd 066caae3dh
+dd 05b61bee1h
+dd 03f2ddb04h
+dd 0b3333ba5h
+dd 09c47d65fh
+dd 067fe5fabh
+dd 0efaada2ch
+dd 02e7f0861h
+dd 00ca005d8h
+dd 05656d811h
+dd 05437aec1h
+dd 07d8ce31fh
+dd 0cd2c8e10h
+dd 073176e3ch
+dd 00db72e51h
+dd 05f2b1486h
+dd 094c26e82h
+dd 025306a95h
+dd 083e0048bh
+dd 0bfd39cd6h
+dd 01690f304h
+dd 072b162f3h
+dd 0d0660496h
+dd 039310a23h
+dd 0ba8f3719h
+dd 018355f33h
+dd 0a3296a20h
+dd 079554682h
+dd 04b68e4c1h
+dd 04667c09ah
+dd 0e138011fh
+dd 0ae9a5a87h
+dd 0fa8ded35h
+dd 0c3590c03h
+dd 01880edb3h
+dd 018fa912eh
+dd 0489c7393h
+dd 0d3d02e17h
+dd 007297213h
+dd 026044e8eh
+dd 07923f747h
+dd 0b74ec58bh
+dd 0b7e95786h
+dd 09ccf7204h
+dd 0daf32414h
+dd 07f0083dfh
+dd 00c81aa87h
+dd 0e1e6140eh
+dd 0dfcf0d9dh
+dd 0b096769eh
+dd 0aac619e0h
+dd 09dfc66a8h
+dd 0f21f9ac1h
+dd 0fadf87b1h
+dd 0e1da0a22h
+dd 0d0b6de16h
+dd 05e03bb57h
+dd 03f708480h
+dd 0498bcaabh
+dd 0a8f67a57h
+dd 09ff00f52h
+dd 01f71873dh
+dd 0a254221dh
+dd 0bed561e1h
+dd 038702823h
+dd 0482e7211h
+dd 053617cdch
+dd 0d93a957eh
+dd 090ca9717h
+dd 0cdde6bd5h
+dd 0323497f7h
+dd 08f960458h
+dd 025ad88b6h
+dd 013e1a5fdh
+dd 0842c4d58h
+dd 0742dc0c5h
+dd 0b935627bh
+dd 0cf12176ch
+dd 09577efb8h
+dd 0d014d426h
+dd 08853704bh
+dd 0335272a5h
+dd 06aeb294eh
+dd 0b6322f4eh
+dd 096ed9649h
+dd 0888fb945h
+dd 08c82ed67h
+dd 07bafe734h
+dd 03f104056h
+dd 002f6ac6ah
+dd 0f7854d35h
+dd 03e98e8f6h
+dd 0dde26814h
+dd 0cb2daeach
+dd 09af2bcd3h
+dd 09f7976a1h
+dd 066bda157h
+dd 05d497179h
+dd 04cacdf44h
+dd 0f643c632h
+dd 0197bcc57h
+dd 06e7ee1feh
+dd 074f90515h
+dd 02014efbah
+dd 0d20c933bh
+dd 0ad2cfd65h
+dd 0a51ace92h
+dd 007084f73h
+dd 015a8a565h
+dd 04c4d12a7h
+dd 04b68d91ah
+dd 0c033eb32h
+dd 0ca491f76h
+dd 0889ab410h
+dd 08e19aff0h
+dd 0323b17d7h
+dd 0ce000b64h
+dd 00bd6ffd3h
+dd 020cb923ah
+dd 06bcfec71h
+dd 0e4491c7ch
+dd 0fc1c40c7h
+dd 04124f5f3h
+dd 0c9766773h
+dd 0679660e8h
+dd 0c906bb8ch
+dd 08ef621c8h
+dd 0ac677c82h
+dd 004a7980ah
+dd 0bc621ed7h
+dd 0e0e19f34h
+dd 089ba56ach
+dd 048af6bd3h
+dd 00668af54h
+dd 043f1b2aeh
+dd 09bd74702h
+dd 057b327fdh
+dd 03d1b13ech
+dd 041ccfed9h
+dd 09339cbfdh
+dd 059c161ech
+dd 0b66b1a91h
+dd 0d1859e84h
+dd 0d194475eh
+dd 0b51c773ch
+dd 00356c4dbh
+dd 09060ef76h
+dd 05e50fa4bh
+dd 0d93f2b59h
+dd 0bf9b5005h
+dd 052b26627h
+dd 0fd6ab6d9h
+dd 06ab20fe8h
+dd 0b30da91eh
+dd 0e9e2b161h
+dd 03a959958h
+dd 0eabdc308h
+dd 0513939e6h
+dd 07071dbd2h
+dd 0f23170aah
+dd 04ee4fc5ah
+dd 006e413edh
+dd 08f38f72ah
+dd 08c4e25c6h
+dd 05a6e843ah
+dd 02984de49h
+dd 061237956h
+dd 0eb85faa9h
+dd 05da0974dh
+dd 0724c80bdh
+dd 0be103f9eh
+dd 039cbc694h
+dd 09c72a238h
+dd 0f63318f7h
+dd 0596db3b9h
+dd 0cc747a8dh
+dd 0595b9d4dh
+dd 05a739aaah
+dd 0efc1ba4eh
+dd 0eec973f0h
+dd 00fead238h
+dd 0617f2487h
+dd 0fd0d112eh
+dd 06c8447cah
+dd 0d403fdbch
+dd 0968e05eah
+dd 02896cb40h
+dd 0c51ba3aeh
+dd 0d9059df3h
+dd 02dec6b24h
+dd 0a1ef14b5h
+dd 09d296158h
+dd 0d0f98e14h
+dd 0bc335e1fh
+dd 0ef794e44h
+dd 03021d652h
+dd 02b2891f3h
+dd 060d8fc93h
+dd 0e665306ch
+dd 0b19d738ah
+dd 07fcdf651h
+dd 0c45aa02dh
+dd 0e0b6f8e8h
+dd 02ab6ad48h
+dd 07a680c8ch
+dd 0e77cc32dh
+dd 08b193b99h
+dd 0468c0031h
+dd 06794503eh
+dd 014664a51h
+dd 011157ccah
+dd 038ca3b5dh
+dd 0ee88813ah
+dd 067dac7edh
+dd 0e73f243dh
+dd 038929f20h
+dd 067bcb403h
+dd 0d15efbbeh
+dd 0ef604e64h
+dd 0de218070h
+dd 048f9a8e7h
+dd 0799ac68eh
+dd 07f5de6ddh
+dd 0f8f30423h
+dd 0fb436661h
+dd 000b84373h
+dd 05a162f10h
+dd 016568f84h
+dd 0ef425da8h
+dd 0f8fc25c7h
+dd 0507a2063h
+dd 07c820fa1h
+dd 0c4113dd2h
+dd 02fe63298h
+dd 0a89de9e7h
+dd 055132e49h
+dd 00d2a8863h
+dd 0e6e2b2beh
+dd 02dc2fd02h
+dd 0026e691ah
+dd 0dbf62198h
+dd 0b44cf3adh
+dd 05142272bh
+dd 0884a0ec4h
+dd 05ad0227bh
+dd 0e24b5742h
+dd 06de64d00h
+dd 01ca4d4cch
+dd 0df6398d1h
+dd 0ae65192fh
+dd 021728d86h
+dd 04685cf07h
+dd 0342dba3fh
+dd 0cd659eb3h
+dd 00ef25b42h
+dd 050e11ba6h
+dd 030351d19h
+dd 09852974fh
+dd 081f8e137h
+dd 07ff55dd4h
+dd 06d40babah
+dd 059543806h
+dd 09752104bh
+dd 0dff56916h
+dd 041dbf80fh
+dd 067368d25h
+dd 019fb9285h
+dd 088daf320h
+dd 08c2ec18bh
+dd 036ed4742h
+dd 0ecd76a9dh
+dd 08b8a1226h
+dd 07985d0bfh
+dd 0cb2f4e08h
+dd 0dcb57992h
+dd 04d65333ah
+dd 01cc9401eh
+dd 03d950a8fh
+dd 0066cd9dfh
+dd 037d70387h
+dd 000321fcah
+dd 04a2eec60h
+dd 0204a81a8h
+dd 0a850996dh
+dd 0ea38244bh
+dd 08065cac6h
+dd 0adf4f299h
+dd 04350dc42h
+dd 0b710ec1bh
+dd 049a344ceh
+dd 01159b3a6h
+dd 0eca48335h
+dd 0c1f9bc65h
+dd 0f53a5cd2h
+dd 02f2272cbh
+dd 07183cb97h
+dd 09b5cf785h
+dd 037d6b103h
+dd 04c29806fh
+dd 04239db3bh
+dd 0d96c1291h
+dd 05cb3fbd3h
+dd 051722a75h
+dd 0d286d85eh
+dd 0061dc919h
+dd 0413d887ah
+dd 031930a55h
+dd 07e611f37h
+dd 076375461h
+dd 0a2024bafh
+dd 074ca90a3h
+dd 0c506d199h
+dd 08d2d8c3fh
+dd 07e46ca01h
+dd 0070fe520h
+dd 0b3dc0ea4h
+dd 017032bddh
+dd 0e44263f9h
+dd 0aee3a694h
+dd 048144317h
+dd 0b0a79e78h
+dd 0f6fbb47bh
+dd 05f9d8303h
+dd 0236cf813h
+dd 086beefc6h
+dd 0d21c899fh
+dd 045f53a3eh
+dd 057041d0bh
+dd 0cf801e48h
+dd 03ad16b40h
+dd 03bb677b2h
+dd 0bd995dfbh
+dd 06309ea6fh
+dd 06ec1485bh
+dd 03d0bc10ah
+dd 0d488d3cfh
+dd 02b507ae0h
+dd 0c6ca6644h
+dd 01dc321aah
+dd 060a06b80h
+dd 0c7ba75f1h
+dd 070f1e9feh
+dd 09eafd138h
+dd 07a0f1faeh
+dd 0b4ed5262h
+dd 0c1563cb2h
+dd 0732ee1edh
+dd 02de24757h
+dd 02889b5c3h
+dd 0746758afh
+dd 0878b6e9bh
+dd 06e01f2eah
+dd 0909afad1h
+dd 082586a98h
+dd 06480e6dfh
+dd 069ea5756h
+dd 03ebb7b23h
+dd 02227e201h
+dd 0e128bdb7h
+dd 0c8985db7h
+dd 06aeeec31h
+dd 0e1601d86h
+dd 0bbbee8ebh
+dd 06a6035dch
+dd 0450a7f44h
+dd 031d6509fh
+dd 09234abcah
+dd 0d35c0376h
+dd 071a3849dh
+dd 0555ab551h
+dd 0d4ab3f26h
+dd 0b59aff62h
+dd 03ae31e8bh
+dd 0ebe985dch
+dd 010df7104h
+dd 06fbcca29h
+dd 0077a4647h
+dd 03331e76eh
+dd 08f5c6f53h
+dd 0bda4f215h
+dd 0afe8d72ah
+dd 0b49b1a63h
+dd 02255e79ch
+dd 08e008d22h
+dd 0c205fc86h
+dd 054b02655h
+dd 05cd9b98dh
+dd 0d4c7a2deh
+dd 0d2ad3613h
+dd 0ce431590h
+dd 02a5d852ah
+dd 04d057e4ch
+dd 04fab7e96h
+dd 02d935ccah
+dd 0419910ech
+dd 0aa2b75f1h
+dd 09da3b3d4h
+dd 06a8899d9h
+dd 056d86c1ah
+dd 048631fb1h
+dd 0641ba260h
+dd 0ca6744eah
+dd 02569db51h
+dd 0a933eef8h
+dd 06cce74c6h
+dd 0a434a85fh
+dd 0adb8f217h
+dd 0e09cab2eh
+dd 00827d40ah
+dd 00d74a6d8h
+dd 0e64f4c16h
+dd 0c5129d1fh
+dd 0ee12fb3eh
+dd 024e7f0edh
+dd 0ba80887eh
+dd 08450c5e9h
+dd 0f0e9d6d9h
+dd 0aec34e8fh
+dd 011aa6a2dh
+dd 081000e48h
+dd 052c1b628h
+dd 09c6101eeh
+dd 02cd6dd79h
+dd 062ea174bh
+dd 070fba6edh
+dd 0243967d3h
+dd 08644e802h
+dd 0ec660d4ch
+dd 05ccdb89ah
+dd 0eba60f34h
+dd 0f69ddbf8h
+dd 037292bc7h
+dd 02cdf9cc0h
+dd 02902a67bh
+dd 02b611853h
+dd 01777a008h
+dd 0cae5cf81h
+dd 0e9b0a332h
+dd 08e51cc03h
+dd 098bd8510h
+dd 0729e0616h
+dd 0f21fa06ah
+dd 04523510bh
+dd 01ab5e65ch
+dd 07d348bb5h
+dd 0a53dad0dh
+dd 0e3aac57bh
+dd 05886a881h
+dd 0747a85d9h
+dd 08751b94fh
+dd 0db4530e0h
+dd 03adc4dbeh
+dd 0f774be68h
+dd 0ace46396h
+dd 0d2a7314dh
+dd 0fd702a7ah
+dd 0ece6dd03h
+dd 09a2f7e82h
+dd 09d67cf17h
+dd 0e8ef4ab3h
+dd 0beae5a08h
+dd 0e354f3cfh
+dd 0974a7518h
+dd 0f6a4c410h
+dd 0044e1db2h
+dd 063af938eh
+dd 064a56e22h
+dd 0a808366ch
+dd 06568a99fh
+dd 0b620f424h
+dd 0e3314a7dh
+dd 0622785b7h
+dd 0f552c7d1h
+dd 09f1afebch
+dd 0ba44cde3h
+dd 069660d80h
+dd 0fc5d4508h
+dd 04babbd2bh
+dd 0a5b08ccch
+dd 0d3d58c26h
+dd 01bbe0c2bh
+dd 0e057cd40h
+dd 0220f9c93h
+dd 072135ab8h
+dd 09b31066ch
+dd 00145e92bh
+dd 09d08139eh
+dd 07a02f02dh
+dd 0848abb47h
+dd 0b0340266h
+dd 06cc4056ah
+dd 068b69edeh
+dd 0ecf0be2fh
+dd 0db91738eh
+dd 021d75b87h
+dd 0f55be5a1h
+dd 0aa45dc31h
+dd 093a80febh
+dd 0f8fbf036h
+dd 06dcfda8eh
+dd 06415c161h
+dd 0fc55e69fh
+dd 018843734h
+dd 00abb32e0h
+dd 0496c995eh
+dd 0b36b57aah
+dd 09df9f188h
+dd 06b2a5608h
+dd 00e90d7a4h
+dd 05043123dh
+dd 0ba8409f1h
+dd 01f44af65h
+dd 045eb2983h
+dd 069301cfah
+dd 04189c1d9h
+dd 00480f26bh
+dd 0259fd832h
+dd 0ebe07a10h
+dd 070ea3bf2h
+dd 06f7c9b70h
+dd 0b7c16b7fh
+dd 0cba12968h
+dd 021ec0f77h
+dd 04ed6c46dh
+dd 019727da3h
+dd 0041a55e5h
+dd 0670047cdh
+dd 07e20d681h
+dd 0062abc81h
+dd 076dc3053h
+dd 0a26a8bbeh
+dd 00ef98050h
+dd 0df3e397fh
+dd 036401937h
+dd 09ebf191bh
+dd 0fc60f54fh
+dd 0347620ebh
+dd 0e926a52fh
+dd 0d4ac489ch
+dd 0b0e69b9bh
+dd 0809274fah
+dd 087b55f71h
+dd 0597f2850h
+dd 0c642bd04h
+dd 0d24f67f8h
+dd 07ede4f61h
+dd 0942848f0h
+dd 085a202a4h
+dd 092308154h
+dd 04a470ef5h
+dd 0150342fah
+dd 0a9827ffeh
+dd 0ddbf5d83h
+dd 0cd0a5408h
+dd 07d51baabh
+dd 08e437c19h
+dd 0c6c2693fh
+dd 0b0601bdfh
+dd 0c5b1c4bch
+dd 0537e96bbh
+dd 0e32b2e8ah
+dd 0f40684b7h
+dd 05b68ca6ch
+dd 06c517728h
+dd 0b2fd5931h
+dd 0a2f0483fh
+dd 05aedc288h
+dd 0301573e8h
+dd 0ef137422h
+dd 00e61b550h
+dd 06dd7e7d0h
+dd 0e9a8b868h
+dd 00616252fh
+dd 068caa30bh
+dd 04606473fh
+dd 0e8b773a4h
+dd 086c56ea3h
+dd 02e79410fh
+dd 0fe80f34eh
+dd 026768d93h
+dd 04a91f5bdh
+dd 0265c6bdeh
+dd 0156e3026h
+dd 0bc23b1fbh
+dd 03fa8d39ch
+dd 0361b625dh
+dd 0e71e399ch
+dd 08ed12109h
+dd 0c2361a26h
+dd 04358cf28h
+dd 01bdb651bh
+dd 02a15cf28h
+dd 0528430d1h
+dd 03c80a96ah
+dd 0bfc7118fh
+dd 0bc7e7942h
+dd 0f31024d0h
+dd 079c7b456h
+dd 0d988e722h
+dd 027e6fec3h
+dd 0ed3d67a1h
+dd 01dd389a3h
+dd 035385647h
+dd 0a33b964eh
+dd 039c1cb2ah
+dd 02575da70h
+dd 0a3adb339h
+dd 02bf920dfh
+dd 0870ef81fh
+dd 04cdb47f8h
+dd 02b0aaeefh
+dd 04f9d1342h
+dd 0d8a911d3h
+dd 0cbcf4cc5h
+dd 09c937c3bh
+dd 073fceeb2h
+dd 00b680849h
+dd 0ab60f130h
+dd 060be5aa1h
+dd 04bcccd31h
+dd 07e455d2bh
+dd 0d5cc64a2h
+dd 093c9df73h
+dd 0aa345ca7h
+dd 0ce2c301bh
+dd 05335c9d5h
+dd 04fca8269h
+dd 0c6fa3cf8h
+dd 0675d23b1h
+dd 0b90f7825h
+dd 08c4faf78h
+dd 02e41b176h
+dd 0a7fe9a13h
+dd 0e3eb1c29h
+dd 0195527bdh
+dd 0d800c318h
+dd 0822f5033h
+dd 060d0f186h
+dd 0f72333c8h
+dd 0777bd5c8h
+dd 0822c8a92h
+dd 089d3a99bh
+dd 09cf44249h
+dd 0cdabc504h
+dd 0b38afac5h
+dd 0d536493eh
+dd 0166c5a6ch
+dd 0827ff969h
+dd 0292c7e27h
+dd 0b1845a4fh
+dd 0606d54cch
+dd 0e18d7d88h
+dd 0480c98beh
+dd 0bb83b56fh
+dd 022da0d8fh
+dd 0e54bed64h
+dd 06d3abed3h
+dd 0b2325561h
+dd 0f7870b26h
+dd 0d91549b5h
+dd 04c462292h
+dd 0fbb547d4h
+dd 09d3cef08h
+dd 0aaeb681eh
+dd 0490bd616h
+dd 0afc5b567h
+dd 0fa905defh
+dd 08531fdf2h
+dd 08d8303dbh
+dd 0aeffff17h
+dd 084423043h
+dd 058f8dcabh
+dd 0669d01fah
+dd 0f891a880h
+dd 0ac98284bh
+dd 03d116c67h
+dd 03c2b1d71h
+dd 017373259h
+dd 050bb2d91h
+dd 093d3af55h
+dd 00e4c13deh
+dd 0b7d1f1aah
+dd 0075a9797h
+dd 0ab6c6eb6h
+dd 0c1540ffbh
+dd 08463ae6dh
+dd 05b5a4004h
+dd 03f05df95h
+dd 01c375f12h
+dd 032c35666h
+dd 05f260158h
+dd 0005f36cfh
+dd 0a500c331h
+dd 0ca17762ah
+dd 0bb79ce65h
+dd 0ed6bc94ch
+dd 0492ff81ah
+dd 003a1fefeh
+dd 01e4f0549h
+dd 0751834b9h
+dd 0dc5279b3h
+dd 02e0db41dh
+dd 0e55431e2h
+dd 0cd8b4e5ah
+dd 074b767edh
+dd 056eb3966h
+dd 0f9a6b3a4h
+dd 0968491c0h
+dd 0ff615229h
+dd 094f2b008h
+dd 033335754h
+dd 0655b92ffh
+dd 016e97278h
+dd 0d85255bdh
+dd 00d05725dh
+dd 0d726f11ch
+dd 0656dfc9dh
+dd 09876103bh
+dd 051299f0bh
+dd 01349a1ebh
+dd 0f15a065ch
+dd 0ea50ddb5h
+dd 08c4047beh
+dd 06da79d3ch
+dd 0d6aafbbah
+dd 018012befh
+dd 02af97ba9h
+dd 0d6b2d0f2h
+dd 07dbfc839h
+dd 00f811730h
+dd 0bd3a5835h
+dd 0700d432fh
+dd 0a6a9087dh
+dd 066c50443h
+dd 0d9be5f29h
+dd 0c82b4107h
+dd 0bcd83d83h
+dd 0c8a386f0h
+dd 0186483f0h
+dd 03a5a9885h
+dd 0c9de20d6h
+dd 07afc813ch
+dd 0b5adfb08h
+dd 01269d555h
+dd 08af4636eh
+dd 0b98c173eh
+dd 0d2c543afh
+dd 07ec983ceh
+dd 00c01590bh
+dd 0e8f10678h
+dd 01ba0ed5ch
+dd 065d5bf0ch
+dd 0a9be3412h
+dd 05badf6adh
+dd 03fc8c568h
+dd 07deb5c7bh
+dd 0f5d3bc55h
+dd 06ee01f1eh
+dd 0e5bcc9e6h
+dd 03d56b595h
+dd 03d971803h
+dd 050b7c4c2h
+dd 040ff9782h
+dd 07b832312h
+dd 0a3fe6482h
+dd 0df709a1eh
+dd 0ff57ed69h
+dd 00dbb9895h
+dd 0a6c74716h
+dd 0eae9f1c2h
+dd 0d7777fc4h
+dd 08083085eh
+dd 046cfb731h
+dd 08519ca7ah
+dd 0d7ca1beah
+dd 0cbfb8a05h
+dd 0f99f9205h
+dd 0fa855c2dh
+dd 0ededb219h
+dd 001d56bfbh
+dd 08709eaa0h
+dd 05aae8d4bh
+dd 0840dbcc9h
+dd 0ff41182dh
+dd 0b3bbb458h
+dd 0c194345fh
+dd 0cf9f48ceh
+dd 0e3ee48f0h
+dd 0fb6c148ah
+dd 0ce2f5dcbh
+dd 0abc84df2h
+dd 0f4229aach
+dd 0e08b0e1ch
+dd 0e282198fh
+dd 0b6be9a97h
+dd 090de612eh
+dd 0d1ec9670h
+dd 0666032e6h
+dd 031c3b2f6h
+dd 0635803c8h
+dd 0f748ac23h
+dd 0968a6acch
+dd 07c842a6dh
+dd 0fc2dcde3h
+dd 0094f22cbh
+dd 04d257452h
+dd 03b515210h
+dd 0044a24ddh
+dd 08738582bh
+dd 0f923b624h
+dd 0e429de1ch
+dd 0abdc6ff8h
+dd 04aeefbf3h
+dd 0b54c8034h
+dd 0bed1d2e4h
+dd 05904eee3h
+dd 028148ebah
+dd 06714d6d0h
+dd 0a8743d49h
+dd 00cb333dah
+dd 0760408efh
+dd 0a2864f6ch
+dd 0f6c51739h
+dd 0d12b0514h
+dd 0700fd1c5h
+dd 0b52eb73eh
+dd 07db03929h
+dd 0482a72cfh
+dd 0a8150633h
+dd 07efb7b79h
+dd 0bd4a609ch
+dd 005a02c61h
+dd 0eedb6b71h
+dd 0f9f59880h
+dd 06313594ah
+dd 01fa289bdh
+dd 0ea87375eh
+dd 0a1ffcb2ah
+dd 0147f90ffh
+dd 02192ca42h
+dd 035a2154dh
+dd 0bce9d476h
+dd 03be38020h
+dd 03dbd3764h
+dd 067425b3dh
+dd 05b65c99ah
+dd 0565a7b85h
+dd 03d3bb98dh
+dd 0905cc4e1h
+dd 0e1b37208h
+dd 02b533549h
+dd 028864c31h
+dd 0037d3ca4h
+dd 0b36864bah
+dd 01d6b0593h
+dd 0b41ae660h
+dd 0575999b6h
+dd 047b037cdh
+dd 02bd90cc5h
+dd 090869a25h
+dd 0a38486c7h
+dd 086413896h
+dd 04db2bcd9h
+dd 00a9fb331h
+dd 05faebb0fh
+dd 0da709a86h
+dd 04f71f080h
+dd 0ea0c0750h
+dd 05cb24326h
+dd 0e3014c16h
+dd 024867dc7h
+dd 0b447f048h
+dd 0712cbd0ch
+dd 0b2130b4ch
+dd 0a4c47f66h
+dd 0cf288c84h
+dd 053394405h
+dd 02953bdfdh
+dd 0b7e7ea3ah
+dd 02ddea0eah
+dd 0e8e68b49h
+dd 01f396396h
+dd 085c7558dh
+dd 0b68ac620h
+dd 0cc9175fch
+dd 02473755fh
+dd 04f680da3h
+dd 0339ccb6ch
+dd 0ae740ce9h
+dd 0ddc08b48h
+dd 0141a2308h
+dd 0fda753e2h
+dd 0ccb19691h
+dd 09642a525h
+dd 047ba700fh
+dd 033a2e09eh
+dd 0bfe7c243h
+dd 05778922dh
+dd 02e79de1fh
+dd 0348159c0h
+dd 02361ac7ah
+dd 0f769da39h
+dd 084322399h
+dd 082e49458h
+dd 06cb16f39h
+dd 0184555cch
+dd 0de4c7861h
+dd 07d0d2bf1h
+dd 064eee7f1h
+dd 0af3ea953h
+dd 02c292d14h
+dd 0a06bc352h
+dd 0207d03d9h
+dd 0f060ba9eh
+dd 02016044ah
+dd 0d2a06254h
+dd 03b66e69ah
+dd 017fe5d0ah
+dd 0f7f80793h
+dd 0d22f53c3h
+dd 093330bd2h
+dd 02d0fd482h
+dd 0ca9f133bh
+dd 08f94c06eh
+dd 09e623414h
+dd 09fa729a5h
+dd 0ee7e603ah
+dd 00e78ee07h
+dd 0aca507a4h
+dd 086d6d8bah
+dd 0a7018488h
+dd 044e921f2h
+dd 0c661bae8h
+dd 0c4abcac3h
+dd 089be10d6h
+dd 0fe32540eh
+dd 0a2448bb3h
+dd 08d8ba465h
+dd 0914404cch
+dd 06a113a25h
+dd 03a0ac296h
+dd 06e41bf13h
+dd 031a280bdh
+dd 0a62044c9h
+dd 0eae6fe8fh
+dd 0902cbd35h
+dd 014c3bb39h
+dd 0a5812976h
+dd 03bdb1772h
+dd 06107ce8ah
+dd 06a50e231h
+dd 0eb79d6f1h
+dd 09b8a0babh
+dd 0042fffaah
+dd 0fd0205f4h
+dd 065a16ae5h
+dd 0a3228541h
+dd 02e21b12fh
+dd 0c40251c2h
+dd 006da39aeh
+dd 000d408e7h
+dd 05dc5dffeh
+dd 039fc13cfh
+dd 0f33fcc77h
+dd 0e57e0bb7h
+dd 02e73e257h
+dd 032fdea54h
+dd 0333851eeh
+dd 05e682f2fh
+dd 064b6c817h
+dd 002ab224bh
+dd 0ca514968h
+dd 071408467h
+dd 09ec0c327h
+dd 0d329f136h
+dd 0bc1bd7f5h
+dd 029611d25h
+dd 06a1bd76ch
+dd 0421d5e97h
+dd 0162f1489h
+dd 0420a256ch
+dd 09b205890h
+dd 0c63b717fh
+dd 02c7cfa7bh
+dd 0cca5a5e6h
+dd 05f4da790h
+dd 046259079h
+dd 042003ed4h
+dd 01925b1c3h
+dd 0af12fa2ah
+dd 0c6ad1af1h
+dd 02297e55eh
+dd 03c402b80h
+dd 00c2182a2h
+dd 043c85876h
+dd 0681fa888h
+dd 0d9fcb825h
+dd 058307d96h
+dd 0c8eacb1eh
+dd 0c30d1f9bh
+dd 0ac19dd16h
+dd 0a79a273ch
+dd 077805cedh
+dd 015b9032ch
+dd 005d60c3bh
+dd 0f0ee7736h
+dd 03eb7ddddh
+dd 012557a40h
+dd 029b1cbb8h
+dd 0970f6f7dh
+dd 0f01ee496h
+dd 0a8bc1b7dh
+dd 03b6aa27fh
+dd 02ad45e02h
+dd 05b96eaceh
+dd 00b02104ah
+dd 03278c4c3h
+dd 0f2441617h
+dd 013a0ba75h
+dd 020bd6a43h
+dd 0a80f00c7h
+dd 0133e1203h
+dd 011f7803bh
+dd 0b50144eeh
+dd 0b457bb34h
+dd 02c07fdb7h
+dd 043b35cfbh
+dd 0c13bedf6h
+dd 053293bd8h
+dd 0b6bb8592h
+dd 0b3afe9b9h
+dd 02283ef23h
+dd 0e31e1146h
+dd 080e85e1bh
+dd 098464b99h
+dd 0a18b3411h
+dd 0d0a08c35h
+dd 017e5e1f9h
+dd 015011558h
+dd 09c9cb631h
+dd 0141a9db5h
+dd 0f41a6d73h
+dd 04ffbb6a2h
+dd 0ad98f36dh
+dd 0c6e15e5fh
+dd 0ab009e49h
+dd 033460265h
+dd 0f60aaf32h
+dd 0c3cdae61h
+dd 07623dc19h
+dd 032111c06h
+dd 0313eeb09h
+dd 071d2ed53h
+dd 017d50a28h
+dd 097627d16h
+dd 07a63da11h
+dd 012d5e5feh
+dd 01b45ba86h
+dd 003ddc49ah
+dd 04afe09aeh
+dd 054b11f01h
+dd 08d9fde5dh
+dd 0bc7eb766h
+dd 0c45d8f34h
+dd 0c538d889h
+dd 0446c07d1h
+dd 06b7c20b7h
+dd 044f18e28h
+dd 030bcdb4dh
+dd 01a18b38ah
+dd 09ccda9b3h
+dd 02f4cdae8h
+dd 025ea515fh
+dd 03c8b6925h
+dd 042bed8e5h
+dd 01a463390h
+dd 0566bab08h
+dd 05e4eefd3h
+dd 04cf1fe22h
+dd 0d2cbe640h
+dd 0d9d02380h
+dd 0a14f62d3h
+dd 0d68e0505h
+dd 0d4299e7fh
+dd 02090672dh
+dd 038948abdh
+dd 0e17a2cfch
+dd 0ce62ff43h
+dd 0de60c9a5h
+dd 0418711cah
+dd 052f63f1dh
+dd 0fa82ad7ah
+dd 0b1c2057eh
+dd 0b5d660aah
+dd 011c0441bh
+dd 089d48e3dh
+dd 09f56e533h
+dd 0f99d4c95h
+dd 0ec3e3f6ah
+dd 068085e18h
+dd 03219260bh
+dd 09decbc4ah
+dd 0b5011ae9h
+dd 01b39cb2dh
+dd 091c72326h
+dd 0b7ee5440h
+dd 0cf59f839h
+dd 034208a83h
+dd 0d408b489h
+dd 0d96d9758h
+dd 03cc90d13h
+dd 04c6fc3d7h
+dd 03479a565h
+dd 049453687h
+dd 0781b9e5eh
+dd 0003e8c59h
+dd 03cd56712h
+dd 0dc5b6512h
+dd 0eca87b75h
+dd 026728920h
+dd 069841f12h
+dd 0e81cb14dh
+dd 0ce57446ch
+dd 099578c40h
+dd 084deaf0dh
+dd 0f903e834h
+dd 0e20bc4e6h
+dd 0291d6076h
+dd 08928386fh
+dd 02d60a760h
+dd 0868f9f0eh
+dd 001de2bd0h
+dd 0f240be6bh
+dd 08de1c7cfh
+dd 08d28bb18h
+dd 08d589376h
+dd 02cbfb593h
+dd 06d887a25h
+dd 02b9444a4h
+dd 06d0bc3ddh
+dd 0c63f730ch
+dd 00cfbc759h
+dd 0e128741eh
+dd 01753e900h
+dd 089b7b28bh
+dd 018d9e8d1h
+dd 0be969de7h
+dd 072cfaecdh
+dd 02f29101fh
+dd 00c155085h
+dd 0fb30c03ah
+dd 06fed40a7h
+dd 04b94ca86h
+dd 00266b31ch
+dd 0bd10a2b7h
+dd 0613a94e3h
+dd 017ee6e3ah
+dd 093c2e326h
+dd 0547d5848h
+dd 00a253c2eh
+dd 0ca39519fh
+dd 061e8a84bh
+dd 07d180f31h
+dd 033f60ef3h
+dd 092857096h
+dd 0ed19822ch
+dd 0097780bah
+dd 0212c4db8h
+dd 0315e3d68h
+dd 04fd5737ch
+dd 0bbf6a920h
+dd 0fc1b578ch
+dd 0b313f518h
+dd 0fd643098h
+dd 0d81cc6fbh
+dd 0d773d434h
+dd 04163c1e0h
+dd 01ab2513ah
+dd 024fd7f3fh
+dd 0890dd233h
+dd 0842bed92h
+dd 0753f1d71h
+dd 0d2d13744h
+dd 097b9ff19h
+dd 0d259fc03h
+dd 0e04c3cd7h
+dd 0e18b041ch
+dd 0e6701c3eh
+dd 0ddc83221h
+dd 072318896h
+dd 089eb7c9eh
+dd 060bdc903h
+dd 0888f286ah
+dd 0e3b2699bh
+dd 02023de21h
+dd 0802fc47eh
+dd 031149cfah
+dd 0e9471442h
+dd 0b822b482h
+dd 0b6531d69h
+dd 0cdfaade5h
+dd 002fdd158h
+dd 02dac665eh
+dd 05a612010h
+dd 071aaa5f1h
+dd 014f3e99ah
+dd 00f78a861h
+dd 0c2d035fdh
+dd 07fcb0a6dh
+dd 0cca36586h
+dd 0aefd8d63h
+dd 007d57cf7h
+dd 0aa6c899eh
+dd 026fe23f0h
+dd 008d48a13h
+dd 0a9d2a3d4h
+dd 008213920h
+dd 07a9b254eh
+dd 0a2844029h
+dd 0a7dc3d35h
+dd 00b0d4e6bh
+dd 07f3bcb2eh
+dd 0f6b5722eh
+dd 0ddb009bdh
+dd 0abdde24dh
+dd 057afbb27h
+dd 04b04c093h
+dd 049f19f0ch
+dd 06d49065eh
+dd 0155066aeh
+dd 008162e42h
+dd 07cc706fbh
+dd 05c81497fh
+dd 06965b374h
+dd 04db3c697h
+dd 09d1d17b2h
+dd 0a7835cd8h
+dd 0d45c5ed9h
+dd 0af6f4b47h
+dd 0cca87642h
+dd 0daf9eb3eh
+dd 004943c37h
+dd 025b1e50fh
+dd 0d1e54021h
+dd 0f95dfd99h
+dd 09a4b621bh
+dd 04df077d2h
+dd 0a065d357h
+dd 087f5fe49h
+dd 0f03a8c1eh
+dd 08574824dh
+dd 0d4705a07h
+dd 078955675h
+dd 073ee039dh
+dd 0cfbf5629h
+dd 0ff3d5cc4h
+dd 024f35ee1h
+dd 00be28943h
+dd 065a4b6b2h
+dd 0f3ba3f86h
+dd 046fb0375h
+dd 0c8f4d841h
+dd 0e5041f87h
+dd 06b4577b6h
+dd 02d9306c8h
+dd 0ce86d599h
+dd 0e633ad94h
+dd 0b8436a99h
+dd 053f27f4ch
+dd 0ea681e44h
+dd 0f654243fh
+dd 05a92337bh
+dd 0d7565aedh
+dd 0f5f240fah
+dd 0f0607a3eh
+dd 03be5ba45h
+dd 07d7b23c3h
+dd 00ae66f3dh
+dd 01571f17eh
+dd 0b2dbf86dh
+dd 00a24d126h
+dd 03dd27273h
+dd 02e536757h
+dd 0582c2ea7h
+dd 0142f0d2ah
+dd 0c229d074h
+dd 0018bcf1bh
+dd 0e4d73d51h
+dd 040640a80h
+dd 0bea8f3e0h
+dd 02acd51f9h
+dd 08eeb9557h
+dd 00b458433h
+dd 00e97e746h
+dd 0c34a43b4h
+dd 0b1948146h
+dd 05b5562c5h
+dd 019cbd976h
+dd 0ad9c10dfh
+dd 02facf157h
+dd 015af0712h
+dd 0dacfd719h
+dd 09b064cfbh
+dd 0c4026830h
+dd 076dcaee8h
+dd 097ab7001h
+dd 0d6999bd1h
+dd 09493e67fh
+dd 020ddb660h
+dd 0dfad4c18h
+dd 00d1bc8d4h
+dd 0fdbf8e00h
+dd 0945c61fdh
+dd 0305a3a81h
+dd 0346938b3h
+dd 00d13545ch
+dd 06f6b0abeh
+dd 0cb27b191h
+dd 0ffbb0772h
+dd 026ac6c17h
+dd 067e10b45h
+dd 016355653h
+dd 01bedf5d6h
+dd 08b17ce90h
+dd 0ba8ee280h
+dd 08c53df4dh
+dd 0727a03b8h
+dd 0ffa6aaceh
+dd 0dcab0e3eh
+dd 0b675f32ah
+dd 0bff3fdfah
+dd 03036bb24h
+dd 054dad6bch
+dd 0ce7593c5h
+dd 0c9089d4eh
+dd 07e055379h
+dd 08b3def81h
+dd 0211764cbh
+dd 00033b78fh
+dd 02fddf107h
+dd 074a312dah
+dd 0ff8f00aeh
+dd 0acaa06d1h
+dd 0a3594f5ah
+dd 0efd41be0h
+dd 04e2cffe1h
+dd 000458cd5h
+dd 041803e28h
+dd 064ecc7b2h
+dd 0247f0781h
+dd 046d64f30h
+dd 0304355b5h
+dd 073e68f09h
+dd 0ba76599eh
+dd 0c4c1242eh
+dd 07fd0fa3dh
+dd 00bfa643dh
+dd 05fc6a978h
+dd 03f342c28h
+dd 0ff105875h
+dd 050713e36h
+dd 06ce92b69h
+dd 05905cc62h
+dd 0c1e8b9b7h
+dd 0bfbe5ae3h
+dd 06e708df2h
+dd 0da319beah
+dd 0012776d4h
+dd 0fd5406ceh
+dd 07e080ac1h
+dd 0cc13e80eh
+dd 0cf6463c6h
+dd 03a14a856h
+dd 06cfceab8h
+dd 0a4255108h
+dd 0b3528775h
+dd 06ef78dfdh
+dd 00a553c48h
+dd 038fb55c1h
+dd 074831820h
+dd 019958c11h
+dd 079ad1d2eh
+dd 0e248b645h
+dd 0a4a6ee32h
+dd 0bd3b3773h
+dd 0b1e178ceh
+dd 00b15b649h
+dd 0d7316f82h
+dd 07277b2f5h
+dd 0db7c4676h
+dd 0758924abh
+dd 0c2528cc9h
+dd 092791e33h
+dd 0b93ccab7h
+dd 0dea8fb65h
+dd 026f19d8dh
+dd 04146b3afh
+dd 0cf7e6283h
+dd 011576f4fh
+dd 0bdb1180ah
+dd 0567e9fbfh
+dd 0142a535bh
+dd 0277f1c2ch
+dd 0a376baaah
+dd 0c1b41900h
+dd 008ec0dadh
+dd 01007090ah
+dd 00324099dh
+dd 0f4637f4bh
+dd 09214a2ddh
+dd 08a9dc75ah
+dd 003636353h
+dd 007cfaa8bh
+dd 02a4ee5d0h
+dd 0bc65af06h
+dd 00d257617h
+dd 045a7b7e3h
+dd 02e9cd93eh
+dd 0f172facdh
+dd 09cc1e228h
+dd 096d62e97h
+dd 0be3802c4h
+dd 00841ae2eh
+dd 0c2eedb16h
+dd 004b5aae5h
+dd 0ecb052b7h
+dd 07a028c90h
+dd 0f506675dh
+dd 01f4bc65dh
+dd 0bb1260dah
+dd 000ba23d8h
+dd 0107a2221h
+dd 0f7a5c899h
+dd 03c863ee1h
+dd 065ad7172h
+dd 0c01f3437h
+dd 02f204fedh
+dd 0964839e9h
+dd 022a2518ch
+dd 08d6130c7h
+dd 0c78af361h
+dd 0a0be7b07h
+dd 0d08e06f7h
+dd 0f4efe09fh
+dd 0630af209h
+dd 000b62c69h
+dd 04c335b96h
+dd 00a6dd1e4h
+dd 0d476fdabh
+dd 05d86bbceh
+dd 0e379ae52h
+dd 0c42cbe54h
+dd 0cf0fdacah
+dd 0da1e53dch
+dd 0075a6f0fh
+dd 09b6ec245h
+dd 0dac5651bh
+dd 0ce357e74h
+dd 053f3e828h
+dd 0dca4148bh
+dd 072c4fe70h
+dd 0f5666738h
+dd 09dc62e45h
+dd 060103deah
+dd 04ba8d04ah
+dd 0047e9474h
+dd 06e731d24h
+dd 054710867h
+dd 06c9f42a8h
+dd 081faf693h
+dd 0e848aec8h
+dd 0917bc38bh
+dd 03c2b413ch
+dd 0a06e9b5ah
+dd 07c26b177h
+dd 09e4c654eh
+dd 015bef83ah
+dd 01acc1f0ch
+dd 011e953ddh
+dd 04df73341h
+dd 0ea78b419h
+dd 0e6595093h
+dd 0431c2d60h
+dd 0c50d2fefh
+dd 08e326c60h
+dd 0f934cb3bh
+dd 01739e4d3h
+dd 03234b1a4h
+dd 0b7a02ce3h
+dd 0f7f42ce7h
+dd 04640e689h
+dd 0875766f7h
+dd 068eb2c0eh
+dd 0bf2603adh
+dd 0df55f20dh
+dd 0d75be3fbh
+dd 038d72a45h
+dd 008ed1d15h
+dd 0b4f87749h
+dd 0e68c0dfbh
+dd 05e4dba55h
+dd 0b682c4ach
+dd 0cc745f68h
+dd 086cc3d48h
+dd 06c6c3409h
+dd 01304fb1bh
+dd 0504c45c8h
+dd 0fbb70aedh
+dd 085dc60bdh
+dd 0f7e74c2dh
+dd 0174d377eh
+dd 04bdec497h
+dd 08e1f248eh
+dd 083ba630ch
+dd 005662bfeh
+dd 0b6e6160dh
+dd 0c75db6d2h
+dd 0d1044957h
+dd 053360157h
+dd 072bbbb02h
+dd 0e751a9a1h
+dd 0c8e4062eh
+dd 0e20c8aafh
+dd 0d53251e4h
+dd 04b0035c3h
+dd 091a1807ah
+dd 032fbab70h
+dd 078ae6d0eh
+dd 02d88ae47h
+dd 02c0ffb2fh
+dd 04915fbfbh
+dd 07b2a5d3fh
+dd 034bef99dh
+dd 019799bb6h
+dd 0d4541a05h
+dd 0d922783eh
+dd 08b98f383h
+dd 080a3f6f4h
+dd 00dc92e38h
+dd 0e637ec19h
+dd 0900bda41h
+dd 0e6bfed63h
+dd 02bca3fb5h
+dd 0b8ba1741h
+dd 05d4911e7h
+dd 0cf66b093h
+dd 0b76a43fah
+dd 04324ebafh
+dd 07e6a2a84h
+dd 001fddb92h
+dd 0abc83655h
+dd 082617087h
+dd 0e49ab195h
+dd 03b24a520h
+dd 03a6e7dd1h
+dd 0bc05c7ach
+dd 0774f1202h
+dd 0605ad2cdh
+dd 0d0cff227h
+dd 00b2763abh
+dd 0c7500d5dh
+dd 03b466b62h
+dd 0676c1c8dh
+dd 0d9ae8fcdh
+dd 0025ec1deh
+dd 0a73cadeeh
+dd 0b6b1e635h
+dd 0754940a3h
+dd 0994d0ca4h
+dd 0a7af2abah
+dd 0c843d59fh
+dd 065ca7f73h
+dd 062b825f8h
+dd 0458102edh
+dd 0c0b59aa1h
+dd 0c9f45c7ah
+dd 0495a2729h
+dd 0aebf704eh
+dd 0f77a8da6h
+dd 0add42740h
+dd 072f7f1c0h
+dd 0f27b85b1h
+dd 0416bf3efh
+dd 0bed1ef1ch
+dd 0f1699560h
+dd 0ba454a5eh
+dd 02ef58239h
+dd 023da6226h
+dd 060e19599h
+dd 01a6c23a5h
+dd 022be3dfch
+dd 09e62cfe2h
+dd 0bbe92719h
+dd 05d2c0c89h
+dd 0a5741a9bh
+dd 06da38dd9h
+dd 0244f39d6h
+dd 0eff308eah
+dd 0323754d7h
+dd 0f2cf082ch
+dd 00e4238b3h
+dd 0e4be4e95h
+dd 0f8fa628fh
+dd 084100030h
+dd 095f40962h
+dd 01d15f34bh
+dd 024e59f54h
+dd 0cc33a2f0h
+dd 0f620953dh
+dd 06475bbc3h
+dd 0b8f64b72h
+dd 0584736f0h
+dd 0c20c788ch
+dd 0681d0485h
+dd 0d6184c00h
+dd 0ed0a1b7eh
+dd 04b7615e5h
+dd 0a86e643fh
+dd 0d7a414fah
+dd 04470191dh
+dd 081dcedf3h
+dd 01e1aa98ah
+dd 04f6c2516h
+dd 0dfc09981h
+dd 0ac509abfh
+dd 0090f8a56h
+dd 06402b02ch
+dd 039d12fd7h
+dd 06f350527h
+dd 0f300cacbh
+dd 05083d4d1h
+dd 00e82ead9h
+dd 08f5cef8ch
+dd 013448f20h
+dd 0f44acca8h
+dd 0455d92d3h
+dd 0be25cbcah
+dd 0f078c4f5h
+dd 06a85982dh
+dd 05ca12c9bh
+dd 0c0f966a8h
+dd 08c9a1ed1h
+dd 03535f6ech
+dd 0e5b8af26h
+dd 087215807h
+dd 02c2de968h
+dd 0d1321770h
+dd 09d7ea1cfh
+dd 0cc3d92cbh
+dd 03509fdc6h
+dd 0f7f34929h
+dd 01e9c812fh
+dd 0963248eah
+dd 035a334b2h
+dd 0f174e1e3h
+dd 04ce2792eh
+dd 02634bbceh
+dd 02e1cb1c7h
+dd 0120cc509h
+dd 0ec6b771ah
+dd 0e25bb79eh
+dd 05bc76f90h
+dd 0bca051a9h
+dd 0cb847906h
+dd 08714f4eeh
+dd 0bb712d59h
+dd 0750d836dh
+dd 053da1593h
+dd 05d744afch
+dd 0dc8756f5h
+dd 0e754d541h
+dd 03c87f4d9h
+dd 047016851h
+dd 03228a370h
+dd 09b6b4a51h
+dd 00c1d22dbh
+dd 0f2048a5dh
+dd 0e7d2d056h
+dd 0111424eah
+dd 08ef9dd2fh
+dd 0a44d114fh
+dd 0cede085bh
+dd 072eb1d4ah
+dd 0d7c6058ah
+dd 06f551254h
+dd 0d89940b3h
+dd 0dd949a76h
+dd 09df7e5a5h
+dd 0ecd8ee2ah
+dd 02461c3b2h
+dd 037a24940h
+dd 001469814h
+dd 04257591ah
+dd 092024964h
+dd 0d28c0c63h
+dd 046bbe655h
+dd 0ab060d6ah
+dd 0b4110b2bh
+dd 0406e617ch
+dd 0ce3aad88h
+dd 0324e1ed5h
+dd 0fd1ab909h
+dd 0eb5ae1e7h
+dd 089ef5000h
+dd 09d503043h
+dd 0582dcb12h
+dd 0f55da68ah
+dd 0fe7b3a6ah
+dd 0630a1113h
+dd 0e321036eh
+dd 0caaf0de0h
+dd 0282ae071h
+dd 0469917bbh
+dd 087c26ea4h
+dd 07f408aech
+dd 0b1ece471h
+dd 0f1eaa39ah
+dd 02886c6cch
+dd 002d093c5h
+dd 03a00c7adh
+dd 00bb56642h
+dd 0ee83183ch
+dd 085b8cc6dh
+dd 06d947c41h
+dd 08c6bd0beh
+dd 0ae5a3c33h
+dd 0ee545eb0h
+dd 0d5a8d716h
+dd 0e411472ch
+dd 04897f977h
+dd 0e31c4feah
+dd 0a57b0799h
+dd 05802fe3eh
+dd 05919dfd6h
+dd 0c40284a6h
+dd 0f946fb17h
+dd 0437fdd84h
+dd 055ad4327h
+dd 0ab18364ch
+dd 0fb706e06h
+dd 04027aea7h
+dd 08393faabh
+dd 023f35035h
+dd 01604df12h
+dd 0683545f1h
+dd 0a3192ea7h
+dd 0036f8f85h
+dd 016c67cf1h
+dd 0bd87e54ah
+dd 0ff2aa718h
+dd 0e0967e3ah
+dd 0facb2f74h
+dd 00c8c97f2h
+dd 047469b1ch
+dd 07cdfd5eah
+dd 0626800a4h
+dd 0adf7f14fh
+dd 08af89eadh
+dd 06006e1f2h
+dd 035148e40h
+dd 0ace4fc54h
+dd 0562a363bh
+dd 0745f2131h
+dd 0da9b3caah
+dd 0dfdb209eh
+dd 06ace5f0dh
+dd 06f972c28h
+dd 02682dc0eh
+dd 01f113f37h
+dd 061c0983eh
+dd 05d5568f2h
+dd 05749c92bh
+dd 0d889a9aeh
+dd 0ba719c50h
+dd 04c4a3112h
+dd 018fd63f7h
+dd 03a086c75h
+dd 0bf520021h
+dd 0ec87a5c8h
+dd 00b6f31adh
+dd 0ef25dc8bh
+dd 0c226d897h
+dd 0e074222bh
+dd 0c03dd8b2h
+dd 08c648a75h
+dd 0ed48f098h
+dd 018ee49c0h
+dd 090aea786h
+dd 0742ecdb2h
+dd 0faa505bfh
+dd 0009e5699h
+dd 0f32eef91h
+dd 09131a70fh
+dd 07703be8fh
+dd 05b1933d8h
+dd 0912cf9a8h
+dd 0870d18d5h
+dd 00464e678h
+dd 0292c93a6h
+dd 065707663h
+dd 0be972521h
+dd 0a53f4471h
+dd 0e7f7f0c7h
+dd 00f5d00eeh
+dd 0e14e553fh
+dd 0c321e90ch
+dd 065aaf711h
+dd 0033683abh
+dd 0ac836522h
+dd 00f2702dch
+dd 0edcc2a58h
+dd 04e3a87e4h
+dd 0b5f18947h
+dd 0e06a55e4h
+dd 0e316b12dh
+dd 08e00cf4dh
+dd 0ef8e8494h
+dd 05048dd33h
+dd 011e33e76h
+dd 0ec9d128dh
+dd 0b54a5837h
+dd 0f1a7722ah
+dd 0ba2c81c3h
+dd 0f2d2288bh
+dd 0f13edb0ah
+dd 0ed39c177h
+dd 006d024a0h
+dd 0f46fb577h
+dd 0f10e7a23h
+dd 06668c070h
+dd 0498b673fh
+dd 0e43c8b75h
+dd 03cba6fach
+dd 026525f42h
+dd 01cb66c73h
+dd 08e90336dh
+dd 0b871b22dh
+dd 0e2b9a057h
+dd 0ebc8a0afh
+dd 0ac7066e1h
+dd 0548d3501h
+dd 0e7581429h
+dd 018b5db20h
+dd 0edbe0e75h
+dd 063e37c3bh
+dd 0da2f14abh
+dd 05c7c822fh
+dd 02f3cb6e4h
+dd 05015b225h
+dd 0a4d8a7d9h
+dd 035020d9ah
+dd 096e9cb6ch
+dd 032a816bdh
+dd 06e6b8c40h
+dd 057704e26h
+dd 0cc5162f7h
+dd 0aa92b210h
+dd 0085ce344h
+dd 0a17200e1h
+dd 0f9f99684h
+dd 0b04df1f3h
+dd 0040d3e90h
+dd 0abbd7c43h
+dd 0f6a5bb94h
+dd 047b53cd9h
+dd 09c5b8c6ch
+dd 07c1defdah
+dd 0035324c9h
+dd 0557032b8h
+dd 01ff9b417h
+dd 057ed0996h
+dd 0ef2f6a27h
+dd 0967d54d6h
+dd 0a3e245d8h
+dd 01ce117dbh
+dd 065186be0h
+dd 00128ac91h
+dd 0bfb29974h
+dd 0083ec1fch
+dd 0d73a2c4dh
+dd 0e151f533h
+dd 0c709947dh
+dd 056ebc9afh
+dd 02893b9d1h
+dd 03fb086fbh
+dd 0b1216638h
+dd 07d9137c9h
+dd 06a7949d0h
+dd 048981bb6h
+dd 00d856c6eh
+dd 0bbeecc9ah
+dd 0f6ff3523h
+dd 078c84cbah
+dd 031024171h
+dd 0abc5f8e2h
+dd 09dd1f09ah
+dd 0f55cec28h
+dd 0b7c86a75h
+dd 0490af1beh
+dd 04c244508h
+dd 041e7731dh
+dd 0e2b86290h
+dd 0edf74fdah
+dd 06749b802h
+dd 0ce2bfa1dh
+dd 098de9fa3h
+dd 0144175b9h
+dd 08c12d1f1h
+dd 0f5894afeh
+dd 0b42a757fh
+dd 01f0579c0h
+dd 09203289dh
+dd 0b605448eh
+dd 06b11789ah
+dd 028c9cc93h
+dd 084c42394h
+dd 0552bd0d9h
+dd 00632298bh
+dd 055a81b4eh
+dd 0ac3d168bh
+dd 081720986h
+dd 0154eed5fh
+dd 06f98a9a3h
+dd 0fdb1ce6ah
+dd 0a6a44098h
+dd 0a59b15b9h
+dd 036a0a643h
+dd 048b1c648h
+dd 0e3031b74h
+dd 035fa3420h
+dd 0268e23a2h
+dd 086d1d2cbh
+dd 054223a54h
+dd 0c4e0be52h
+dd 09bf0863dh
+dd 0f1c0b291h
+dd 045b7c3bch
+dd 09a84742fh
+dd 041c73003h
+dd 01bb383beh
+dd 0e3b1e02bh
+dd 0909528b5h
+dd 059150ed7h
+dd 0efd55e57h
+dd 0ad5d0926h
+dd 065b03d24h
+dd 0bbf6ee7dh
+dd 08129d165h
+dd 0433449edh
+dd 0521dbb8bh
+dd 0ebce9cadh
+dd 0e047239dh
+dd 07f13ca6ch
+dd 0bb0b4717h
+dd 0702e3c7eh
+dd 0e431f0f8h
+dd 036fd9f08h
+dd 04b8a1854h
+dd 059caa30dh
+dd 0422f5089h
+dd 0a6658811h
+dd 0032f8d18h
+dd 02221b3bah
+dd 07ece7d8bh
+dd 0f2dc60d5h
+dd 01f4c663bh
+dd 0ec7858c7h
+dd 0823e4824h
+dd 0adc3985fh
+dd 0b6edf830h
+dd 0a4170575h
+dd 06346b726h
+dd 02ccf924ah
+dd 0ea2e1434h
+dd 0264b4374h
+dd 0532195efh
+dd 095b19b49h
+dd 08b89ef0eh
+dd 0df9670c8h
+dd 0796ab0ebh
+dd 09de0856fh
+dd 00d2c5861h
+dd 023fa67f0h
+dd 0acdd00e8h
+dd 00b56945dh
+dd 038343c7bh
+dd 0926d65f8h
+dd 00f742ebbh
+dd 0e9d11939h
+dd 01997e54ah
+dd 08ec38498h
+dd 0f3c833abh
+dd 01ee16f2bh
+dd 0e18f91bbh
+dd 0df9db878h
+dd 05a26ff28h
+dd 02fe41b8dh
+dd 01f52aec7h
+dd 0631a0259h
+dd 0b0b2fec8h
+dd 04db8adf4h
+dd 0add02716h
+dd 0b9542fdfh
+dd 08c37346ch
+dd 0685a9019h
+dd 04ab71a75h
+dd 0b334c84ah
+dd 0a0a88204h
+dd 07e72a53fh
+dd 0e6567ec6h
+dd 062faa7e9h
+dd 04b628c13h
+dd 02194fa8ch
+dd 08ae57b77h
+dd 09c4a7ea7h
+dd 0c6807831h
+dd 0ecdb4a78h
+dd 024f64af2h
+dd 0cf147bcah
+dd 03aca3307h
+dd 02bfaf84dh
+dd 097de37e7h
+dd 028ad2182h
+dd 067853112h
+dd 0b5d14311h
+dd 0965e786dh
+dd 06f70b496h
+dd 0944ab562h
+dd 0f4c8c32ch
+dd 0ba9c50f4h
+dd 038183b01h
+dd 08fc230ebh
+dd 078e4dcafh
+dd 0e2b979b0h
+dd 055e2fdf7h
+dd 068e69d36h
+dd 0b3acea51h
+dd 0b157481ah
+dd 0995715dch
+dd 0b52b3114h
+dd 01556e988h
+dd 03ca0ae3bh
+dd 0b7f151dah
+dd 097c8a92bh
+dd 060b2ac02h
+dd 02966d145h
+dd 05c12f469h
+dd 07fd614b8h
+dd 0db1f37d9h
+dd 01695be2ah
+dd 0a54743cbh
+dd 06dfa9984h
+dd 0af5c8d54h
+dd 0a8a9aeeah
+dd 03e0d05d2h
+dd 097d0ffe7h
+dd 0c5dd4313h
+dd 00436062ch
+dd 0590486d4h
+dd 0587e7de9h
+dd 04995032bh
+dd 032bb9a7fh
+dd 09ee49aceh
+dd 0c82b9f6ah
+dd 0746e2cf4h
+dd 0a344cca2h
+dd 059ee86a5h
+dd 0f1af6894h
+dd 0449faa9bh
+dd 047fa72c6h
+dd 08d89af81h
+dd 047072ebeh
+dd 06cec6825h
+dd 00879295ah
+dd 0845aa4a3h
+dd 0c8b0e786h
+dd 0d053d625h
+dd 024d91d2eh
+dd 01d40b8b8h
+dd 0112a13b6h
+dd 0890a3863h
+dd 09c7a4570h
+dd 03c349955h
+dd 0fc6ee5dfh
+dd 009c64773h
+dd 04b25a0d2h
+dd 0f8efb9ddh
+dd 01298f82fh
+dd 04c0bfbc3h
+dd 06db5bcaah
+dd 0d767a18eh
+dd 081af5830h
+dd 04739c190h
+dd 0bc66d0d2h
+dd 0c2a78791h
+dd 0c74b3feah
+dd 00c8f55deh
+dd 0c2873355h
+dd 090ae52feh
+dd 0c9dfe955h
+dd 0a9760c28h
+dd 0bb9f0222h
+dd 0b6ec5d69h
+dd 0cb56e137h
+dd 0d0d86c63h
+dd 0a1354731h
+dd 01ec3976bh
+dd 035da9059h
+dd 0e31062a3h
+dd 046a81a73h
+dd 091459f3eh
+dd 08319311ch
+dd 014ca051bh
+dd 0ce6663d2h
+dd 0c68f1035h
+dd 06ac0c76eh
+dd 0ce9e47e5h
+dd 01a43daabh
+dd 0b9a376e8h
+dd 054ec0673h
+dd 0d7dbc28ah
+dd 0925602b6h
+dd 09182e060h
+dd 071572dbdh
+dd 08bc063aeh
+dd 0d0597fb5h
+dd 0d2a4b7a0h
+dd 0455597a1h
+dd 0ff6f24d4h
+dd 0e7c341b5h
+dd 0759f5780h
+dd 0a59b0f35h
+dd 09cfd67c1h
+dd 0373b75a4h
+dd 0a2324461h
+dd 025522a8ch
+dd 08d40cbcah
+dd 049b192c6h
+dd 0e319eb44h
+dd 04a67369eh
+dd 0a5e32142h
+dd 0807984c8h
+dd 0e78b1822h
+dd 0db543b9fh
+dd 0a9b330cah
+dd 06c02234fh
+dd 0dd63c51ah
+dd 0be9def0ch
+dd 0e45917deh
+dd 044aca188h
+dd 0d09e24dbh
+dd 02827cfcch
+dd 0cd9549c5h
+dd 055f51014h
+dd 03c538ae6h
+dd 0b7c463bfh
+dd 0130c8953h
+dd 0a3961650h
+dd 074566909h
+dd 0625e6749h
+dd 0ac9f85d5h
+dd 074aadf62h
+dd 08f7e83c2h
+dd 0bdd69356h
+dd 0f77d4b6ch
+dd 014346719h
+dd 0f6236543h
+dd 0a46f47d7h
+dd 0aa3d121ch
+dd 08d4160f1h
+dd 0e0c722b0h
+dd 0ef8d79a0h
+dd 0edae8a90h
+dd 0d00c42abh
+dd 0a2832bb4h
+dd 057929b77h
+dd 0fddad08bh
+dd 0c88c0817h
+dd 0577f70e5h
+dd 037cb957eh
+dd 0fe75092fh
+dd 07196c6f6h
+dd 0c82adb9ah
+dd 0f6ad4497h
+dd 0b4594f53h
+dd 04c6a1270h
+dd 02fc54d09h
+dd 001ca1bebh
+dd 02b873984h
+dd 09323eba9h
+dd 0e66e4693h
+dd 051a7effah
+dd 0bc787540h
+dd 0f39566f9h
+dd 06c91e8ech
+dd 0be5e5590h
+dd 0e8b5bbd4h
+dd 028031e52h
+dd 0447a3e73h
+dd 025d1386bh
+dd 0f6c478afh
+dd 0778ea602h
+dd 008deb3f0h
+dd 0a755706bh
+dd 09dc873e1h
+dd 0e802d5f8h
+dd 02a72f80ah
+dd 0c7d7b50ch
+dd 04334fd67h
+dd 0f6e1ecc3h
+dd 06a47e3d1h
+dd 09eb6516ch
+dd 001674d1eh
+dd 0d89e0bd3h
+dd 0cfb2e0cah
+dd 0cf077a10h
+dd 0e85f999eh
+dd 09e9abe96h
+dd 08ca47996h
+dd 0fd43e956h
+dd 0a2eb4058h
+dd 0e8723190h
+dd 048780e03h
+dd 03c0baa01h
+dd 093ee3034h
+dd 0674e07d9h
+dd 07cda76bah
+dd 08a1f65ach
+dd 00f637647h
+dd 0e6c35c33h
+dd 001a596f1h
+dd 0abd54639h
+dd 09b212195h
+dd 023b9c1d5h
+dd 00d868aeah
+dd 0e3d88cb6h
+dd 095e12f42h
+dd 0168122eeh
+dd 07cc03579h
+dd 0a877a7f9h
+dd 0115fbb5eh
+dd 05cf89acah
+dd 06a10ed2ch
+dd 0e2469783h
+dd 009a178b2h
+dd 084c60ad8h
+dd 092dc50adh
+dd 0fc0613cbh
+dd 03b95b503h
+dd 0379073a1h
+dd 0a5ecd2b3h
+dd 0857c17a2h
+dd 01e941d33h
+dd 0f160d707h
+dd 055e691afh
+dd 0689c8537h
+dd 0e73f3fa9h
+dd 0270c8cfdh
+dd 02672aafbh
+dd 091b6ebf9h
+dd 0ba978f37h
+dd 08a11f7bfh
+dd 0dddddce2h
+dd 0c631cbbbh
+dd 0d0390c69h
+dd 084b77da8h
+dd 0e3f7e871h
+dd 021ca3060h
+dd 0fd520e4ah
+dd 07d50fbfbh
+dd 08cf82b16h
+dd 0c44126aah
+dd 0b8c9f98dh
+dd 098622623h
+dd 0dd9dc4c3h
+dd 0f8af85d2h
+dd 0d67d863bh
+dd 0a13be80bh
+dd 07c794a0fh
+dd 0374d931ch
+dd 024cb0f0eh
+dd 0bbd4a4a0h
+dd 080e1c9a4h
+dd 02213151fh
+dd 0e0bcb944h
+dd 093eb7f04h
+dd 08acf053eh
+dd 089e4b3a9h
+dd 055daf043h
+dd 0e2dbcd6fh
+dd 03a6202a4h
+dd 0f4d28a5ch
+dd 0fb52eaf7h
+dd 0504ba13dh
+dd 0bd4988bfh
+dd 040a45cb4h
+dd 091d69328h
+dd 021eed8f6h
+dd 025cfc09dh
+dd 05ae76bfah
+dd 09e2127ebh
+dd 0840b169bh
+dd 084d36718h
+dd 0156f535bh
+dd 07ee9c9dah
+dd 09301291dh
+dd 0934a3d68h
+dd 02d9e444ch
+dd 01bdc3e49h
+dd 0aaa3e38ah
+dd 051ca493ah
+dd 0651c75d6h
+dd 016f94e17h
+dd 01d8e1194h
+dd 0ebadc60bh
+dd 0cdb0c449h
+dd 064856604h
+dd 0399fe3c9h
+dd 055759019h
+dd 00ecb2003h
+dd 0db43a632h
+dd 0c5eda94bh
+dd 0eeaf11ceh
+dd 05cc471ceh
+dd 007c7e0ebh
+dd 03fd2d148h
+dd 0fb4c70b2h
+dd 0ba7cb994h
+dd 0b44c93aah
+dd 0f35b377eh
+dd 0b7879f7ch
+dd 026bd4eb3h
+dd 05558edb1h
+dd 03f8d45ddh
+dd 0d01b07cfh
+dd 08c180432h
+dd 0b0594974h
+dd 04807eb20h
+dd 03732861bh
+dd 04aad6fc3h
+dd 0576802deh
+dd 0b278c274h
+dd 09e74e07bh
+dd 0dc9518d6h
+dd 0a2559350h
+dd 0090c89abh
+dd 012f40e21h
+dd 0f37846aeh
+dd 03baf0536h
+dd 078b311c1h
+dd 03e17f081h
+dd 0e91ac64ah
+dd 0d3bbfe2eh
+dd 0b0558aech
+dd 0dbad605ch
+dd 0a77fab19h
+dd 0abb05bbfh
+dd 02bdb557bh
+dd 0b0b546a2h
+dd 0ad9c7370h
+dd 00ccabc20h
+dd 0a3982a15h
+dd 072a8adb1h
+dd 0eb01a4f3h
+dd 081b469b1h
+dd 032e62410h
+dd 08aec85b2h
+dd 038bcf742h
+dd 06592cee6h
+dd 0a119ce05h
+dd 0ec529ef8h
+dd 037f3d62dh
+dd 0860eb381h
+dd 00dc89a45h
+dd 049fd83fah
+dd 0eb36bac0h
+dd 0908cafaeh
+dd 0ec1e62abh
+dd 098e94ee9h
+dd 0973a690fh
+dd 09e589a5dh
+dd 0a6799e43h
+dd 02da25e56h
+dd 090e0d860h
+dd 04f2821a0h
+dd 0ab8ed54dh
+dd 00ce8cb35h
+dd 0b8676c38h
+dd 041ff60b2h
+dd 0c285269bh
+dd 0863dc337h
+dd 0272b922bh
+dd 0d219eb1ah
+dd 0433c509dh
+dd 0e26cff0fh
+dd 03b3900f4h
+dd 01b80be70h
+dd 02e13fb8ch
+dd 0c68117bbh
+dd 0e280afbeh
+dd 0c7645a2ah
+dd 0bb7e2cc0h
+dd 07b0c878fh
+dd 0e5ccfe6bh
+dd 08351888dh
+dd 06a1b2c4fh
+dd 00a6c3e0ah
+dd 0d87ad1b7h
+dd 0b03b597dh
+dd 0a20ee0b1h
+dd 0e03d558dh
+dd 0c5f8ec07h
+dd 0fd3a0cdeh
+dd 0a093f140h
+dd 099010377h
+dd 0a0468045h
+dd 0d97cb621h
+dd 03bf86e83h
+dd 080355653h
+dd 0c3cbda4eh
+dd 010d46312h
+dd 04270212bh
+dd 060d83a4eh
+dd 0cc7615d5h
+dd 0f7a84b71h
+dd 02c102ee0h
+dd 0fc7087b3h
+dd 0260f2734h
+dd 0c059aae7h
+dd 01c46a317h
+dd 0807966e6h
+dd 074d05e9dh
+dd 0daf26841h
+dd 0f8fcfedeh
+dd 01c03b3c6h
+dd 0f0d4c427h
+dd 0bee5515eh
+dd 01cb80cf9h
+dd 07c3fff26h
+dd 0195dc2abh
+dd 087565ed6h
+dd 09529eea5h
+dd 0b145e5c4h
+dd 0b9fa8401h
+dd 095434fa4h
+dd 0daf6ae2ah
+dd 0a082a633h
+dd 04d8a875fh
+dd 04e8a800bh
+dd 0e19054b9h
+dd 002394b4eh
+dd 0075481a1h
+dd 0f8d46937h
+dd 038399481h
+dd 0d2448b0dh
+dd 01403c989h
+dd 0b3e279b7h
+dd 09aa2cf1ah
+dd 0e24de53eh
+dd 050843c20h
+dd 0da24bffdh
+dd 01bc99b8bh
+dd 00657a241h
+dd 0a3749babh
+dd 0a3a6ea6fh
+dd 016c450edh
+dd 08924ca5dh
+dd 0018dd5f9h
+dd 003296857h
+dd 05c3351d9h
+dd 0f223a355h
+dd 04b0cc1e6h
+dd 065a28309h
+dd 0fa7edf50h
+dd 079b050c5h
+dd 0e50c671eh
+dd 08e1374cah
+dd 01811e0a7h
+dd 0e3d21c4dh
+dd 0d7733bcdh
+dd 001d5c0c5h
+dd 069b256ddh
+dd 017f26bbch
+dd 0e94e09a3h
+dd 0216e4e79h
+dd 0dffd97c0h
+dd 0701b1a19h
+dd 0455ca4e6h
+dd 09e89a147h
+dd 0555afe29h
+dd 014ab88afh
+dd 0c0be050ah
+dd 06170c905h
+dd 0a354760bh
+dd 0b757b3fch
+dd 0ec7e6531h
+dd 041edaeb5h
+dd 05ea40ec7h
+dd 0af756009h
+dd 0886b23f5h
+dd 00c312963h
+dd 051afbde1h
+dd 0d0539056h
+dd 0d0fc7976h
+dd 0460dc704h
+dd 066d5e2cch
+dd 0c7e81603h
+dd 09cdf1c39h
+dd 0035b0447h
+dd 0f0bf63ach
+dd 0e9dd7b1ah
+dd 0bf25a7a5h
+dd 0e951c16dh
+dd 0f43d2af0h
+dd 049c601fbh
+dd 02f0e69a6h
+dd 0dfa561d5h
+dd 039fc0ebeh
+dd 0d67d5fd3h
+dd 0122ebeddh
+dd 03738408fh
+dd 016e1921ch
+dd 0deec471bh
+dd 05d5dd7abh
+dd 0a3c5393bh
+dd 0e2818abch
+dd 0efaeea5bh
+dd 08df20612h
+dd 02e85a17ah
+dd 0f29eeb96h
+dd 07b1a9130h
+dd 0f982edc1h
+dd 0efdc4009h
+dd 02421c607h
+dd 0a537c41eh
+dd 09e0a8e68h
+dd 0a25268c2h
+dd 05a98bb01h
+dd 0269a4255h
+dd 09d320bc9h
+dd 04f5818f6h
+dd 09dfbd41eh
+dd 0315260feh
+dd 0d31008c2h
+dd 0bc6bf67ch
+dd 08410f1adh
+dd 0e97c6980h
+dd 0b6573447h
+dd 019e662d1h
+dd 0782b454eh
+dd 0dddb9dd3h
+dd 03adb9185h
+dd 0e7b825b2h
+dd 0e9558820h
+dd 0f060a8efh
+dd 087e996ddh
+dd 0f18f4a07h
+dd 0b105f51ch
+dd 0d5b7d778h
+dd 029ccd18ch
+dd 0c3f525aeh
+dd 06001db4fh
+dd 03ef0cec4h
+dd 004579c9ah
+dd 0852d0347h
+dd 05fb68634h
+dd 015b5ecd3h
+dd 0e487bd58h
+dd 021f408a4h
+dd 0467e57cah
+dd 0df21e9a5h
+dd 0a15a295ah
+dd 01f573fe5h
+dd 0d49d3fc0h
+dd 0c4a0d6f1h
+dd 0e1161071h
+dd 099590d30h
+dd 0f2ee21c3h
+dd 0949e6696h
+dd 0c6f82529h
+dd 0536409f7h
+dd 00214d265h
+dd 0ab62746fh
+dd 086e96e82h
+dd 06c6004fdh
+dd 046d25455h
+dd 0cf8bd9b3h
+dd 0629d7e23h
+dd 072412282h
+dd 07d60ea35h
+dd 0ebbb4281h
+dd 0dddd0ecbh
+dd 03b23a9c0h
+dd 05a09be64h
+dd 0859eb3f8h
+dd 0290b2ddeh
+dd 0a1d7e269h
+dd 056f13767h
+dd 04f0d5ef8h
+dd 0fbef94c1h
+dd 0038c01edh
+dd 008193a87h
+dd 0a85dfaa4h
+dd 02f81ebf6h
+dd 09c81e404h
+dd 09ba189d1h
+dd 099446994h
+dd 0155254d0h
+dd 0e8621f37h
+dd 0dede0822h
+dd 0adf349cbh
+dd 0ac542619h
+dd 0491f6cf3h
+dd 0c4f03aebh
+dd 00ad2bf54h
+dd 0aa856fb8h
+dd 05d43943dh
+dd 0eda1a931h
+dd 020062bd0h
+dd 044bc440bh
+dd 01f1a86b4h
+dd 0845260b4h
+dd 072e4831ch
+dd 0707e5d05h
+dd 054b97b71h
+dd 0bde8d844h
+dd 05df79abdh
+dd 0e38d8d06h
+dd 0ad735be2h
+dd 0603cf28dh
+dd 09bca5040h
+dd 0d700c086h
+dd 08de9a967h
+dd 033b87b43h
+dd 015a06ce2h
+dd 01b3753cch
+dd 04c2acea0h
+dd 020c2bf83h
+dd 00e5292c3h
+dd 016f3d738h
+dd 05c950148h
+dd 06e08bdceh
+dd 0eb8e3b6ah
+dd 02a3bd683h
+dd 0406151cfh
+dd 08a640d3fh
+dd 0572cb658h
+dd 0fabff37eh
+dd 0286697a6h
+dd 0555c3a8fh
+dd 0a3baa342h
+dd 0239cebedh
+dd 08cc877b4h
+dd 0bcc7d763h
+dd 0260edd2bh
+dd 021987bfeh
+dd 08159fe31h
+dd 0a82554dbh
+dd 0c4b316c7h
+dd 097156f0ah
+dd 007a0a834h
+dd 04f61b036h
+dd 056c86283h
+dd 0b9520f5eh
+dd 0d7b49893h
+dd 00f59c5c5h
+dd 0db5df54ah
+dd 05892c51eh
+dd 0f62202afh
+dd 06c7b2ccch
+dd 0813041f0h
+dd 0cd5bc11ah
+dd 0a809bff0h
+dd 0c03bd2bdh
+dd 07fd75ed7h
+dd 01e6a1c55h
+dd 048ca8053h
+dd 0440af3f5h
+dd 013ffec88h
+dd 00c13f8a5h
+dd 0c00db67ch
+dd 0a16bb29eh
+dd 06830883fh
+dd 0a3b954d9h
+dd 0307ac895h
+dd 0680cccefh
+dd 0807033f7h
+dd 03723b11eh
+dd 07f5a5c12h
+dd 0e6fea025h
+dd 0474a9a43h
+dd 0fa17ac02h
+dd 0531e585dh
+dd 0bed7b9afh
+dd 0be9e4f91h
+dd 0e8c4f582h
+dd 08a83297dh
+dd 0acc3d6e8h
+dd 016f89211h
+dd 05112fadbh
+dd 0afef9d23h
+dd 0d0484a8dh
+dd 0a7f58ba4h
+dd 0d24971aeh
+dd 06890349ch
+dd 0c3f6e1e7h
+dd 03a77288ch
+dd 06e6241d4h
+dd 096d7fb81h
+dd 0c0d89735h
+dd 0ef9ef3b8h
+dd 0c740fabah
+dd 0a93ae5e4h
+dd 026c878b6h
+dd 0f42fc81ah
+dd 0bba07f9eh
+dd 05925bbe8h
+dd 0964e4e06h
+dd 00ff1e6b0h
+dd 03deee09ah
+dd 0420b9b7dh
+dd 0dfc5d1adh
+dd 0a0f895f0h
+dd 0ae72f130h
+dd 0f6ddca61h
+dd 03297e84ch
+dd 0549b0906h
+dd 0e7661201h
+dd 0ea6cc7beh
+dd 0f2d2f8f7h
+dd 01b7fbbdfh
+dd 0f73b00bbh
+dd 077365d42h
+dd 0c838effdh
+dd 0404bbeadh
+dd 0c2534763h
+dd 08ce83ae5h
+dd 08cdc1417h
+dd 035dd88b7h
+dd 00efaafcbh
+dd 0caa6bdffh
+dd 0c61cf9e1h
+dd 01a122df9h
+dd 07502269ah
+dd 0cac1b245h
+dd 0b6087a70h
+dd 006b18d2ah
+dd 09468dfa7h
+dd 0519718e7h
+dd 0b0596220h
+dd 0eadf37deh
+dd 0bece68e4h
+dd 074d77624h
+dd 09ff08716h
+dd 020af062ch
+dd 02d74fa60h
+dd 055a3ac81h
+dd 0a18a88efh
+dd 0887c84c1h
+dd 060610332h
+dd 0b579a729h
+dd 030e8d947h
+dd 05f3df8b9h
+dd 01be6a43fh
+dd 001498f03h
+dd 0604b80dah
+dd 0ff9f1c23h
+dd 07b517080h
+dd 0706c4e2ah
+dd 09af88594h
+dd 032f8577bh
+dd 0cdd4920dh
+dd 0ba0eaa04h
+dd 09ac4f5dch
+dd 02e773a3bh
+dd 0032edfe9h
+dd 0398b37deh
+dd 009bfdf3bh
+dd 0df9007a6h
+dd 0c02688ddh
+dd 01db4e33dh
+dd 0bcf5c368h
+dd 0d493f0d6h
+dd 0c042bd41h
+dd 0ba9182c6h
+dd 02546f912h
+dd 053a75caeh
+dd 09d91bd0ah
+dd 03c4d8bf4h
+dd 02ac8c057h
+dd 0cb54a45bh
+dd 0ff945aceh
+dd 047ab3caeh
+dd 02338a34ah
+dd 0e8fffa1ah
+dd 0c636417dh
+dd 09483e22bh
+dd 0ee0276fbh
+dd 00013eb39h
+dd 068ae2bd1h
+dd 0c0a0b7e4h
+dd 0064cf994h
+dd 082bf8a04h
+dd 035e4b34eh
+dd 0bf7ad06fh
+dd 06c6371d4h
+dd 09f296c5ch
+dd 0439e2a70h
+dd 08f3539f2h
+dd 09835dc82h
+dd 02b576ac7h
+dd 01178b448h
+dd 0d892e51dh
+dd 0a6648a25h
+dd 01cd8619bh
+dd 00f9c4ff4h
+dd 037357b73h
+dd 0f8eee0c6h
+dd 091fe9e16h
+dd 0a3c94c83h
+dd 01726d467h
+dd 09c94dfa3h
+dd 0f301462eh
+dd 029076321h
+dd 04c8ab67bh
+dd 04796487eh
+dd 0b37991fah
+dd 0078758f2h
+dd 0dbeedd4fh
+dd 02d611f7ah
+dd 0d08757b5h
+dd 00115eeafh
+dd 0c6b9e7b3h
+dd 09e4c80bah
+dd 0e095aed4h
+dd 06d4f52ach
+dd 04f91cf58h
+dd 09dbd57e0h
+dd 07f90acf3h
+dd 0326d3ab0h
+dd 08c786022h
+dd 055a5aa4ch
+dd 0f0a34c98h
+dd 047f72921h
+dd 0348ed6c8h
+dd 079817ca8h
+dd 02b4180a4h
+dd 0825de163h
+dd 0dfe3cb41h
+dd 0d2761adfh
+dd 0de1c0cc6h
+dd 02cf24876h
+dd 011fcd4ach
+dd 04fd0b906h
+dd 0ed161c99h
+dd 07f7c41cbh
+dd 04b609c47h
+dd 0c5e28255h
+dd 0e7c0f940h
+dd 0be13d6c2h
+dd 0be766c13h
+dd 0bb80e791h
+dd 01bd06320h
+dd 08cd6e5c4h
+dd 036f46268h
+dd 0a24465a5h
+dd 0832a025dh
+dd 0d03523f7h
+dd 05090e885h
+dd 016633089h
+dd 0bb14051fh
+dd 0bb0f08a5h
+dd 0e469732ah
+dd 03dafc3eah
+dd 0a50776cah
+dd 09a3d745ch
+dd 08c72fe7fh
+dd 02fb08f9eh
+dd 0b4eac5a0h
+dd 02877ab0fh
+dd 09158b94ch
+dd 096d5792eh
+dd 065cc8c01h
+dd 00ff6580bh
+dd 029b6a22ch
+dd 089a56e04h
+dd 0b7ac303bh
+dd 0bc3fa08bh
+dd 0b61925f2h
+dd 0212fb78ch
+dd 089ee2d20h
+dd 0210dd0f9h
+dd 0076dc92eh
+dd 01bc5834bh
+dd 0cc32fea9h
+dd 067928f1dh
+dd 0842a431ah
+dd 06838826dh
+dd 01d1f91c7h
+dd 051bb21cbh
+dd 0f156243ch
+dd 00d39031ah
+dd 057290525h
+dd 0366d6120h
+dd 03851b84fh
+dd 0209ed6cdh
+dd 04b85b742h
+dd 068468e15h
+dd 00e770363h
+dd 04d6ce296h
+dd 0a527b571h
+dd 01d9d3111h
+dd 087f2756dh
+dd 0af9eba1dh
+dd 0e8fcd4cch
+dd 0a1cfd9f5h
+dd 01d8ffde9h
+dd 03431f4b6h
+dd 0abbb4c2dh
+dd 0a3d40413h
+dd 07a97057ah
+dd 06fbf73e7h
+dd 040a5ba30h
+dd 0da04f261h
+dd 0baaaa5c5h
+dd 0487e95b9h
+dd 0f3da6232h
+dd 064145178h
+dd 0324eb02ah
+dd 0b6969dc8h
+dd 013692414h
+dd 0c96f834bh
+dd 0054f0ff5h
+dd 01c222dffh
+dd 0bf1b4ac1h
+dd 091455ee0h
+dd 0a17ac5f4h
+dd 0796b5d93h
+dd 06dec7808h
+dd 0d93745dfh
+dd 047fb828ah
+dd 009da1065h
+dd 071a4a237h
+dd 0323f6f21h
+dd 053c3ba40h
+dd 0f03d27bdh
+dd 0793ea592h
+dd 015c3e154h
+dd 0f09e4f49h
+dd 046a206f2h
+dd 059ed36b5h
+dd 0acd890bdh
+dd 0db65cde7h
+dd 070ae2815h
+dd 0eab399a9h
+dd 0b91636fch
+dd 0b80f6bf2h
+dd 0e9f2260dh
+dd 0f3eb44bfh
+dd 0fd860d69h
+dd 06825a2bfh
+dd 070820c76h
+dd 0140a1eb5h
+dd 01e319d3fh
+dd 0128384ach
+dd 0991410fch
+dd 0a4e23f55h
+dd 03e0f6b6ah
+dd 07908976fh
+dd 0351ee82bh
+dd 040ac4461h
+dd 0ea511450h
+dd 041a48a26h
+dd 04f12cfc6h
+dd 04004f96bh
+dd 07c58fa08h
+dd 04ef04bc0h
+dd 03ab0bf25h
+dd 0dbf64137h
+dd 032282426h
+dd 0f071f05bh
+dd 0b963648dh
+dd 03c500e50h
+dd 0ce68941ah
+dd 08fd1235dh
+dd 03c16f8f2h
+dd 09f517e0dh
+dd 0d1edf098h
+dd 07da912ddh
+dd 02de239bah
+dd 0e2ac1cc9h
+dd 0984620b2h
+dd 02da4ea87h
+dd 0dccf6879h
+dd 076882ae3h
+dd 03a329967h
+dd 0f32ef25dh
+dd 0d7df74a6h
+dd 0cb1761b4h
+dd 096a99482h
+dd 0173b7dach
+dd 0d66dc030h
+dd 09475823bh
+dd 00a77d81ch
+dd 020326d02h
+dd 007e8efb9h
+dd 0ad3bd7b3h
+dd 08f8fc768h
+dd 0ea138a8fh
+dd 09095fb1fh
+dd 06fef9ce9h
+dd 03d12cd03h
+dd 040b81bfbh
+dd 0517df3afh
+dd 061519b19h
+dd 0563d2c84h
+dd 0a03a1ef3h
+dd 06ed38e21h
+dd 0f8d3bb16h
+dd 088603a73h
+dd 040425cedh
+dd 0f94dac29h
+dd 020567665h
+dd 0d8af4516h
+dd 0a21aafb9h
+dd 0b0a6d3dah
+dd 0567b00a1h
+dd 029a509e7h
+dd 080d8a751h
+dd 0d72c8ae5h
+dd 05a91c179h
+dd 085f83df6h
+dd 0f97be883h
+dd 08e81e333h
+dd 036013c3eh
+dd 0da84b659h
+dd 0d42836c0h
+dd 09f223efch
+dd 00eb3fd67h
+dd 0c5e765e9h
+dd 0202326cdh
+dd 0a9701c17h
+dd 07185d685h
+dd 06ad7a41dh
+dd 0d354e859h
+dd 0bd288413h
+dd 076e70408h
+dd 01e128e94h
+dd 0d9d30c41h
+dd 0a33448dch
+dd 0107faaech
+dd 0a393296dh
+dd 03d8417feh
+dd 023c68e51h
+dd 0f1f7c370h
+dd 0b8098d41h
+dd 0f62b2704h
+dd 0c65a6fbbh
+dd 0b53b9986h
+dd 0b6af28aeh
+dd 0a21bfa1ah
+dd 0371923f1h
+dd 056889c59h
+dd 0af85eb47h
+dd 0600cdf6ch
+dd 0ee9880c0h
+dd 047aa6ea2h
+dd 03cadceabh
+dd 0a967e572h
+dd 049601954h
+dd 024d32e50h
+dd 0c173872ch
+dd 085a009b1h
+dd 04755a2e8h
+dd 0a0683fe1h
+dd 031b6ce08h
+dd 03f1b4c02h
+dd 0831b70b1h
+dd 00a2a60e3h
+dd 02b099d2dh
+dd 00b96f955h
+dd 077b7ae1eh
+dd 09d2b42cbh
+dd 05b4e4815h
+dd 0e50a043bh
+dd 07dc35168h
+dd 012e099beh
+dd 0321c73dfh
+dd 0c2dda4f2h
+dd 0b1a7184fh
+dd 071d544f2h
+dd 00338a120h
+dd 00e7bf7cfh
+dd 0bac0326ah
+dd 0c196b96dh
+dd 0a1dbb383h
+dd 09eb68702h
+dd 0232113c8h
+dd 06611f51ch
+dd 0684ee5eah
+dd 0a874c964h
+dd 07bdd6a4dh
+dd 0c37ba858h
+dd 0a99907a7h
+dd 0f65e57d6h
+dd 05fbe679ch
+dd 0f2e765e5h
+dd 0112d606ch
+dd 02b33a247h
+dd 0c0a7e358h
+dd 09245b04bh
+dd 01e3399b8h
+dd 0631b6928h
+dd 004b3a535h
+dd 084860e59h
+dd 023ce8b39h
+dd 0a7d1e5a6h
+dd 0451094beh
+dd 0c7a14882h
+dd 0b3f0f0e2h
+dd 0f9aced8fh
+dd 0a02f41e9h
+dd 08903ddfch
+dd 09acaad0ah
+dd 0a5fa2e59h
+dd 0caf7325bh
+dd 0b21b3359h
+dd 0b1de3e8ch
+dd 0ad147d32h
+dd 0dee06eafh
+dd 0625301bah
+dd 0772a1e33h
+dd 0709b75d0h
+dd 0521d0ed8h
+dd 091b7248fh
+dd 0bf5a7ba7h
+dd 013bbc00dh
+dd 01386d222h
+dd 00eac79f5h
+dd 052028ffbh
+dd 0dfe47370h
+dd 005aaa428h
+dd 0375e667eh
+dd 02e685984h
+dd 04407ce17h
+dd 09754c155h
+dd 0ed06d5f0h
+dd 00f2e40e4h
+dd 0364b96ebh
+dd 0facdf8adh
+dd 0b208e451h
+dd 0751f8fach
+dd 0ab7eda21h
+dd 0a684bed8h
+dd 07fde89b8h
+dd 0baccb7a3h
+dd 06f09922eh
+dd 041a7de51h
+dd 0b7b6c84bh
+dd 0161e9d50h
+dd 0d28016a5h
+dd 067065794h
+dd 003525fach
+dd 0a5456891h
+dd 062412b1eh
+dd 0f15bf539h
+dd 0154c3c90h
+dd 08e145309h
+dd 00ed0ebe0h
+dd 0df9f65cbh
+dd 0234657d3h
+dd 0cfe3974dh
+dd 01eb6f449h
+dd 063700044h
+dd 03724a320h
+dd 033de5d7ch
+dd 0df45718ch
+dd 0046bb89dh
+dd 00cdcb619h
+dd 0066dae18h
+dd 0471ce1a7h
+dd 04bd460bfh
+dd 05b0b67f8h
+dd 061e3e8e9h
+dd 0d792ea6bh
+dd 0f3fbb5ddh
+dd 06a3a49feh
+dd 0ca0e01e0h
+dd 0e9582547h
+dd 0888243d3h
+dd 000f8df67h
+dd 0bc9ef9dch
+dd 060e45085h
+dd 0f24bf7d4h
+dd 0bf01d89ch
+dd 0c4fca569h
+dd 0390aca70h
+dd 06b15a28ch
+dd 01f453d7ch
+dd 0c8cd8c68h
+dd 025e56fcfh
+dd 0e67697c3h
+dd 09f26712dh
+dd 02d00ac9bh
+dd 077d54bdbh
+dd 0ad71ffaah
+dd 0ee80a899h
+dd 01379e7c4h
+dd 0a4de584fh
+dd 03c5bd3b0h
+dd 0d65cddb7h
+dd 0e0888f36h
+dd 09734151ah
+dd 06a681aa6h
+dd 0c09fb2b4h
+dd 0885160a2h
+dd 04806bcf1h
+dd 0bd7cadb2h
+dd 0142f58ach
+dd 0c0bab3dfh
+dd 0f3d59f07h
+dd 0e56e33fbh
+dd 0ac7ad1dbh
+dd 03da55d5ch
+dd 09ed6d589h
+dd 0c01f4507h
+dd 04ceef353h
+dd 0cc081efdh
+dd 002a746cfh
+dd 036e4b4e9h
+dd 0983de125h
+dd 0ab739a80h
+dd 0945eb207h
+dd 0395784d5h
+dd 0f131b17eh
+dd 03cd8e5d3h
+dd 0686aa45fh
+dd 0052b8d17h
+dd 0162fee94h
+dd 00bbec675h
+dd 071627101h
+dd 0a8909735h
+dd 0c4164a75h
+dd 0f5e76ba2h
+dd 02eb098d9h
+dd 007714925h
+dd 03af742b8h
+dd 0a080f634h
+dd 05d308caeh
+dd 09c239b5bh
+dd 09d002b0fh
+dd 0800244feh
+dd 026115d14h
+dd 08b2c106dh
+dd 0b6892b40h
+dd 0400c589ah
+dd 0a900aa91h
+dd 074893da0h
+dd 0a1262a4dh
+dd 002825bb7h
+dd 064076016h
+dd 02ebb1e21h
+dd 0d993bd28h
+dd 0cfd21865h
+dd 008d35b6dh
+dd 0d75e2c38h
+dd 0a30a9ea2h
+dd 03af99cf8h
+dd 016b0a074h
+dd 0f512a63ch
+dd 0f14c0624h
+dd 05d7a7447h
+dd 0dc7529d2h
+dd 01b6e693ch
+dd 05a0a4d0eh
+dd 0a4d11837h
+dd 0a45ecc1fh
+dd 03b0935abh
+dd 0ea0306b5h
+dd 05fc65036h
+dd 0c58e8532h
+dd 004d57da8h
+dd 033587c68h
+dd 042de362ah
+dd 08a86b69ch
+dd 072108de7h
+dd 062b35e67h
+dd 0fc7ce664h
+dd 0b705abcdh
+dd 07632e272h
+dd 05357ddc7h
+dd 0093b9f40h
+dd 07d5893fah
+dd 0ff8ceb99h
+dd 009fcc5b6h
+dd 0a2a299cah
+dd 0e983557fh
+dd 0d25cd52fh
+dd 0d05da638h
+dd 0a2926da1h
+dd 01f026f28h
+dd 0c31916d7h
+dd 0f3611c7dh
+dd 0e97c50f7h
+dd 0ee3e2a6ch
+dd 0aea25310h
+dd 08e253eb6h
+dd 0a435f386h
+dd 0327bb0b5h
+dd 0386a150dh
+dd 012547553h
+dd 0d242a576h
+dd 0855af226h
+dd 0ab8a03fch
+dd 00c6ad9a9h
+dd 08ad07585h
+dd 00c5c8024h
+dd 05006ea39h
+dd 039c5edb2h
+dd 03447f31dh
+dd 0958372f7h
+dd 096017ce1h
+dd 0469a0754h
+dd 037fc525ch
+dd 035d4d209h
+dd 05d8df219h
+dd 01136dc92h
+dd 056a77f4fh
+dd 0f028a119h
+dd 01d3d273eh
+dd 0c90963ffh
+dd 06c21342ch
+dd 084c14cbah
+dd 08cb37388h
+dd 0dbfc84cdh
+dd 0501ede3eh
+dd 074fb6c28h
+dd 048d517efh
+dd 08427e101h
+dd 0cedf6553h
+dd 06d1108e8h
+dd 017619f61h
+dd 0f522a3aah
+dd 08a261ec8h
+dd 005df0383h
+dd 0a3ff51e2h
+dd 08131b486h
+dd 00bb16a1fh
+dd 0738fc460h
+dd 0df99a2f0h
+dd 0351a1f31h
+dd 0d1311bcfh
+dd 054eebb67h
+dd 0232fe24bh
+dd 041b3cbe1h
+dd 0738177ceh
+dd 0d45d5c49h
+dd 067b59725h
+dd 027da1bdah
+dd 089924045h
+dd 0bf90825fh
+dd 014573d9bh
+dd 03e2f735ah
+dd 0755ac79eh
+dd 0aea562a0h
+dd 0096d9b1dh
+dd 063c683a9h
+dd 03b86c10fh
+dd 013c146efh
+dd 0a21765afh
+dd 0a4ca903ah
+dd 00969c3c1h
+dd 09585a616h
+dd 0da5137d8h
+dd 005e165f9h
+dd 08fc0a2f0h
+dd 0cb835aafh
+dd 0a285efb1h
+dd 031a394b9h
+dd 0d278dcd0h
+dd 02a8a27ebh
+dd 05d162ae2h
+dd 09c991f3fh
+dd 0892d7c5bh
+dd 0bdafa9a0h
+dd 04eb22dc4h
+dd 0f49e1c06h
+dd 01bc709bfh
+dd 08c19142eh
+dd 081e16587h
+dd 04d88b66eh
+dd 055e71ba9h
+dd 0e33f208dh
+dd 07456e280h
+dd 038ba390bh
+dd 0bc68cb12h
+dd 05ddcdbf0h
+dd 0ab1b5fb9h
+dd 03c66e77ch
+dd 058c67d22h
+dd 0b7af46cdh
+dd 0c32791afh
+dd 03538a70bh
+dd 0f0233b61h
+dd 0376f9e59h
+dd 03b46e6b5h
+dd 0887c5549h
+dd 002b404b1h
+dd 0666a27d5h
+dd 0dae08ca6h
+dd 09f9e225dh
+dd 006222959h
+dd 0a5181de7h
+dd 043be2736h
+dd 04d1f93a1h
+dd 0642f289bh
+dd 07de329a4h
+dd 01c805429h
+dd 07dfff878h
+dd 07e99d072h
+dd 0103f33b6h
+dd 049aeb09dh
+dd 072699d84h
+dd 0525f10f3h
+dd 0963f4142h
+dd 052c6b2ddh
+dd 0952d8099h
+dd 098f5edeeh
+dd 0665878fdh
+dd 01a7b3ad1h
+dd 0fd595a22h
+dd 076227219h
+dd 0806c019ah
+dd 04e2fd2f4h
+dd 0b99f735ah
+dd 08e48a3bah
+dd 07a3c91cfh
+dd 0655ff07fh
+dd 0e3cf5e0bh
+dd 0dedba786h
+dd 05b25e12dh
+dd 0921adcbah
+dd 0c438bee8h
+dd 0fba23ff1h
+dd 0cd9468d4h
+dd 003958bc4h
+dd 05458718eh
+dd 09afe033ah
+dd 0085b3e01h
+dd 088f4464fh
+dd 01d18277eh
+dd 0589b15ech
+dd 0807b97c4h
+dd 0844745cdh
+dd 04237aabbh
+dd 0a3aa4e12h
+dd 0f94e4166h
+dd 04e4b511eh
+dd 0e6d078e9h
+dd 043c6d846h
+dd 055c816d3h
+dd 0b7d94db8h
+dd 05d462251h
+dd 0ac9dc534h
+dd 04306f1a6h
+dd 049390bd8h
+dd 02d6f5307h
+dd 00ac3bc4fh
+dd 0b6a4a88ah
+dd 0efe52bdch
+dd 0781c3ebch
+dd 0bd1e5dc2h
+dd 0ed9b9196h
+dd 01b9337dbh
+dd 07178076eh
+dd 01bf62bfbh
+dd 04896659ah
+dd 0dca7cdech
+dd 0236be879h
+dd 02983c1f1h
+dd 010058359h
+dd 0dbfedcf1h
+dd 0842b7ddch
+dd 0d1afe741h
+dd 01d02a8ech
+dd 0fbd41273h
+dd 0b5ee457ah
+dd 01e8afcbfh
+dd 0247c4d49h
+dd 0954aa8c2h
+dd 0dd0d0a46h
+dd 0d5db447eh
+dd 0bffd0921h
+dd 0c2746355h
+dd 06cf76b61h
+dd 0b6e73a8bh
+dd 0d1fc2c0eh
+dd 06c0b3765h
+dd 013b9fbf1h
+dd 00976c581h
+dd 0adad2c4ch
+dd 0cca374fch
+dd 0056355c9h
+dd 038484616h
+dd 012fbf75eh
+dd 0f4b90ec9h
+dd 0203a3572h
+dd 0c81ebc46h
+dd 01629b1d3h
+dd 00e5ec451h
+dd 0b2531b06h
+dd 0aa3f201ah
+dd 054305e4eh
+dd 05818ffbah
+dd 0a09853b6h
+dd 0a8ecb4d5h
+dd 04c844956h
+dd 06c6f1c2eh
+dd 03cc528f8h
+dd 0ba659568h
+dd 0181bf176h
+dd 0ae40fd5dh
+dd 0f6ab981dh
+dd 0462c32c9h
+dd 0ad0426a2h
+dd 05bba4027h
+dd 0be85eb99h
+dd 040332ab5h
+dd 0b75fde3fh
+dd 0013a0e5eh
+dd 04593f660h
+dd 03dfdf637h
+dd 06d0084d0h
+dd 02ba6c326h
+dd 06a201b16h
+dd 07e4c222ah
+dd 0605ca493h
+dd 007cecdfah
+dd 058407b2eh
+dd 00ad1793ch
+dd 0c89b93d7h
+dd 00fe3a2bch
+dd 0216c2bf2h
+dd 0e1c503bbh
+dd 051360bf3h
+dd 0f440bb2fh
+dd 0d8c85080h
+dd 045e08386h
+dd 0084d02e6h
+dd 00c0bdc81h
+dd 0e323d98ch
+dd 017f78ddfh
+dd 0f6d6f8b1h
+dd 0469246b0h
+dd 05879ea79h
+dd 07d3d74e3h
+dd 0d3cae183h
+dd 002fda7eah
+dd 0c0eb3a4dh
+dd 051ef63bah
+dd 0cae1cdd5h
+dd 08313df1bh
+dd 0702d46bbh
+dd 06c3777b7h
+dd 0b22d385ah
+dd 0ff4fd4aeh
+dd 093dd0f13h
+dd 023bcd81eh
+dd 097723c1fh
+dd 01592e7f3h
+dd 03901bcaah
+dd 01e5a0050h
+dd 0c782ca55h
+dd 0b88c7758h
+dd 078a4582eh
+dd 00bff4c4ch
+dd 01fa2443ch
+dd 0678d108fh
+dd 0231b2158h
+dd 01a1833d2h
+dd 069b1469eh
+dd 0953a5337h
+dd 0efdfbd33h
+dd 038f97d77h
+dd 039828adah
+dd 0eb2baf45h
+dd 03eb01336h
+dd 0f405aee6h
+dd 0a23037e3h
+dd 0f3df651eh
+dd 0d2a0647ah
+dd 0a53c2779h
+dd 0b5160a58h
+dd 0b5391bc5h
+dd 0e37beacch
+dd 0ffcad929h
+dd 0cf7a37f7h
+dd 04474c20bh
+dd 0a46b8bb6h
+dd 0bbcb5ca7h
+dd 0059ff6dbh
+dd 05201bee8h
+dd 028dc9b56h
+dd 046e7ebb8h
+dd 0798e3943h
+dd 066f5dea7h
+dd 01c1f9ec9h
+dd 0879ce23bh
+dd 0684b4c6eh
+dd 02e7ba3b8h
+dd 09c0f9784h
+dd 0724e8d17h
+dd 06fec72ach
+dd 04de06208h
+dd 06db6cd85h
+dd 0b9fef2d6h
+dd 0c299d210h
+dd 0a1741ad9h
+dd 0bc971683h
+dd 0408203d0h
+dd 006ed9abeh
+dd 008bb08e8h
+dd 0ac2f4649h
+dd 0be2ffb7eh
+dd 0b96e271eh
+dd 0b5973bf8h
+dd 0bbf45437h
+dd 00ccb4944h
+dd 066282acfh
+dd 06d0e8404h
+dd 051659b9dh
+dd 022f7503bh
+dd 04cf1f7d8h
+dd 0f685a69bh
+dd 000ed6bcfh
+dd 024290141h
+dd 0987eb282h
+dd 0e5d64175h
+dd 0cc815bfah
+dd 03749d491h
+dd 0dd7cd246h
+dd 0bf0a5791h
+dd 0971e9e95h
+dd 066dae97eh
+dd 0a58328f8h
+dd 080b3af87h
+dd 08a811c76h
+dd 0ad110818h
+dd 070495d09h
+dd 019ee1d75h
+dd 04682439fh
+dd 042c6a332h
+dd 0984bb3b3h
+dd 0560f45abh
+dd 0fd6f9a53h
+dd 03e5639b3h
+dd 0938c80e8h
+dd 0ef9eadc7h
+dd 0706bc30dh
+dd 049e77812h
+dd 06b043de8h
+dd 021e77d98h
+dd 00de01521h
+dd 0d3ef097ah
+dd 0f1c4568eh
+dd 01b35ded5h
+dd 0c273eb98h
+dd 0b9ebec9bh
+dd 0d99889b1h
+dd 04519e03eh
+dd 016a1ee20h
+dd 05cb56b84h
+dd 0c524f6b7h
+dd 063747b6fh
+dd 0ad86b9cbh
+dd 0413c5c54h
+dd 0bdbf54d7h
+dd 0ec4841fch
+dd 0dc892f31h
+dd 0374389e2h
+dd 05be26778h
+dd 0dfc611ebh
+dd 0ac21b79fh
+dd 02b9643a8h
+dd 0d42f24efh
+dd 06c4bcf6fh
+dd 0518920eah
+dd 06fc821d5h
+dd 0287af608h
+dd 09c9b2007h
+dd 08929e46eh
+dd 0420edc9fh
+dd 0dbb79437h
+dd 08a398a03h
+dd 0b8b439b3h
+dd 01913626dh
+dd 03f719d6bh
+dd 034ff3735h
+dd 0af0bff3fh
+dd 002e3c0a5h
+dd 0daa8df8fh
+dd 04bdede50h
+dd 0b2d08e44h
+dd 05dbf7821h
+dd 04b83dcf7h
+dd 0aaf16297h
+dd 0659b7a08h
+dd 065c93c7fh
+dd 01a011ccdh
+dd 02707634ch
+dd 0c4085975h
+dd 0fd8035e3h
+dd 0640701cah
+dd 0b5597b67h
+dd 0d382d1b3h
+dd 039d7c255h
+dd 0df676f8ch
+dd 058b5f610h
+dd 076ee34f0h
+dd 0e2090054h
+dd 0df3e34e6h
+dd 08e50f295h
+dd 0c9229c2ah
+dd 07ee7425dh
+dd 0236d2182h
+dd 0da67ad10h
+dd 06e7ec78eh
+dd 0b03b8aa8h
+dd 06ddc104eh
+dd 0cf2dfaf3h
+dd 0e753be59h
+dd 0c158f725h
+dd 0f5fe422ch
+dd 0dc5d57bah
+dd 050bf3504h
+dd 087d090d3h
+dd 05902236eh
+dd 064c7e3f7h
+dd 0f46fc152h
+dd 05a10a6f2h
+dd 08f18f031h
+dd 02c58f283h
+dd 01d52732bh
+dd 03203326bh
+dd 099387fcbh
+dd 0d33cf217h
+dd 0d2477dabh
+dd 040135f53h
+dd 017a20e70h
+dd 03bf8f4bch
+dd 07044ea16h
+dd 0f718a676h
+dd 0936e2130h
+dd 0d7cf806eh
+dd 0e56a70cfh
+dd 07d4566d7h
+dd 07713bc0eh
+dd 04909b1dch
+dd 02091672fh
+dd 0dfabc65ch
+dd 0614d7565h
+dd 069ab3d1ah
+dd 08e9b348fh
+dd 03b83bb95h
+dd 080b28855h
+dd 023a90f0fh
+dd 0f50e2521h
+dd 04725bc73h
+dd 0e5ab7dcdh
+dd 07a739547h
+dd 0902eb982h
+dd 0e59d6f89h
+dd 0d7e68aa1h
+dd 0e3fdeffeh
+dd 057056b34h
+dd 08a067cdch
+dd 051ed6e4eh
+dd 0637cf04fh
+dd 045b415ddh
+dd 076868097h
+dd 012094a30h
+dd 05374e07fh
+dd 09945e6b9h
+dd 08d7ba5d7h
+dd 006d54f7fh
+dd 0e4196722h
+dd 0e151c2e6h
+dd 05deea17eh
+dd 087b75160h
+dd 0406e0bb0h
+dd 006dbab6bh
+dd 094c05f72h
+dd 0d2c65ff3h
+dd 03e6c7d4eh
+dd 0f418a7a5h
+dd 0b43ff617h
+dd 01cf19bc3h
+dd 0f9328380h
+dd 08679c0d2h
+dd 00e13bf57h
+dd 06d65f5e1h
+dd 0b6432ab5h
+dd 04557109ah
+dd 04c2cc2afh
+dd 0458a5bebh
+dd 00c3d1539h
+dd 077b4f155h
+dd 05d7d944ah
+dd 0b3e3de83h
+dd 0c1e1d1c3h
+dd 0474ddcc6h
+dd 031a593fbh
+dd 0092900eah
+dd 09e8ae595h
+dd 0ee5344f1h
+dd 08a7ffee7h
+dd 04ebfb76eh
+dd 003da74fdh
+dd 0cf94a9e2h
+dd 01a32c64eh
+dd 0d8a2c427h
+dd 076deecfah
+dd 0bc53bad4h
+dd 0c391b222h
+dd 086d7da32h
+dd 02b17c8edh
+dd 0e5cbf698h
+dd 0c5f90704h
+dd 094783e0eh
+dd 02a56c468h
+dd 0e4db6422h
+dd 0c1458a93h
+dd 028542cb0h
+dd 0318bdf31h
+dd 02392b4efh
+dd 0b3be0aadh
+dd 0a22ce09ch
+dd 0d5e60679h
+dd 0559fbe2fh
+dd 050d4fe3dh
+dd 054589f9ah
+dd 0aa7191a9h
+dd 00f91dddeh
+dd 0bd27773eh
+dd 05fe349bfh
+dd 0595c43fbh
+dd 061a42c87h
+dd 0e5c29396h
+dd 017799f4dh
+dd 04b499bbfh
+dd 0ce95b64ch
+dd 029261cc2h
+dd 0b2b2eaach
+dd 06c68a830h
+dd 0e3859ec0h
+dd 00499cfe3h
+dd 04ddbd039h
+dd 051c4e073h
+dd 03fd6b564h
+dd 0a37777c2h
+dd 08e2d2791h
+dd 0dcb11d51h
+dd 075611a9dh
+dd 0c0837e9ch
+dd 069710360h
+dd 0c648d2e9h
+dd 0104fd054h
+dd 091727899h
+dd 0f542eec3h
+dd 08d6fd2bbh
+dd 04caba07fh
+dd 0107f1e1eh
+dd 0bd040b17h
+dd 092d746dfh
+dd 0a56478b1h
+dd 074102c83h
+dd 080397817h
+dd 0ea754f17h
+dd 041039892h
+dd 0ef43ca7ah
+dd 02d6e1a85h
+dd 0d7fb5da2h
+dd 003ff4cf8h
+dd 063653d8ah
+dd 0c804ff8fh
+dd 0da59c39ah
+dd 045b1a758h
+dd 041e7c157h
+dd 0985a73bch
+dd 099c11b17h
+dd 03742709fh
+dd 072defb1eh
+dd 09189b479h
+dd 0957dd6a7h
+dd 0699786e9h
+dd 0be4d32f6h
+dd 0530a3617h
+dd 004f73121h
+dd 040b8f75ch
+dd 0351e1053h
+dd 0b68b1ce7h
+dd 064fa101ch
+dd 08358aa28h
+dd 077331dc4h
+dd 06a55c3e6h
+dd 0f00c14a5h
+dd 0b624021eh
+dd 0f586beaah
+dd 0f420b500h
+dd 060a56a34h
+dd 0f9aee87dh
+dd 0a0e4192ah
+dd 072272abeh
+dd 0173c6593h
+dd 08c3dc52eh
+dd 033eaa5d0h
+dd 0d76f5e98h
+dd 01c6500d3h
+dd 06715ce72h
+dd 001905516h
+dd 04591456eh
+dd 013c4af2dh
+dd 0cc14f528h
+dd 0949e1b2dh
+dd 070578b79h
+dd 0f87ad23bh
+dd 0e97b43d5h
+dd 032dec10bh
+dd 0438cf583h
+dd 02383964ah
+dd 033f53c87h
+dd 001f5b844h
+dd 0dc31aa8ch
+dd 044129690h
+dd 011587e25h
+dd 04d4c1cfbh
+dd 040f50372h
+dd 0eb94229dh
+dd 096983e53h
+dd 034f20b67h
+dd 00a4ddeefh
+dd 0e046e8ach
+dd 01f42a116h
+dd 0790ea4e6h
+dd 01c860f8bh
+dd 06a41b863h
+dd 06379bc80h
+dd 006cc5b03h
+dd 036863a2fh
+dd 0a8b4de4ah
+dd 0981f7a52h
+dd 065e30a6dh
+dd 093ee30d4h
+dd 0886e4da5h
+dd 05928499eh
+dd 02a5e436dh
+dd 0df36f3f3h
+dd 048fe8987h
+dd 047386804h
+dd 02c0135ebh
+dd 07f783f79h
+dd 098fc4916h
+dd 07ae2aa4dh
+dd 037ef99a8h
+dd 0e374a80ah
+dd 05f9877e8h
+dd 08e167738h
+dd 049afd9bch
+dd 0a0d45b92h
+dd 0a43e65d7h
+dd 0c156731ah
+dd 0bb5ccf53h
+dd 00a663e5bh
+dd 0313892ceh
+dd 0b211ea42h
+dd 007c685cbh
+dd 04bef4fcbh
+dd 0928eac33h
+dd 0e80e8ec6h
+dd 004f328dah
+dd 0586a4634h
+dd 059d63e4eh
+dd 0d5373c43h
+dd 0118f5d6eh
+dd 0d7c10623h
+dd 0262956b8h
+dd 0be807285h
+dd 0c978697fh
+dd 0f87e12b6h
+dd 080f18f84h
+dd 0085d173fh
+dd 08236eac9h
+dd 01b40f8a7h
+dd 0ee043a07h
+dd 06e3cd475h
+dd 0e8703e19h
+dd 08fe76e9eh
+dd 0f91dda5eh
+dd 0d14ee553h
+dd 05c7aa594h
+dd 023c96dd6h
+dd 0870f1c12h
+dd 0d0937f63h
+dd 08f65b552h
+dd 03234ca34h
+dd 04d2d26edh
+dd 0bfc8c3e7h
+dd 0b19b5105h
+dd 0b63573a2h
+dd 057a3eb8ah
+dd 0f9eeeda9h
+dd 015d5da06h
+dd 0ca5802cch
+dd 03d5ab80dh
+dd 0e7eedb4eh
+dd 0fac1fd8eh
+dd 01cf9f153h
+dd 0bd737b36h
+dd 0885278c9h
+dd 091ec4680h
+dd 082cb7012h
+dd 02bc25c6ah
+dd 0c4f6567ch
+dd 07f0a1409h
+dd 046df62a3h
+dd 091a74b79h
+dd 017f380c2h
+dd 08e218c0ah
+dd 0c78bd18fh
+dd 07027119dh
+dd 075c6944ah
+dd 0866e8fd0h
+dd 0a2780920h
+dd 02488bb08h
+dd 0748aa3edh
+dd 0ed646339h
+dd 0e5faf34ch
+dd 08accbbd1h
+dd 0548be638h
+dd 0899efe49h
+dd 06f2a370fh
+dd 0ec0682cbh
+dd 0df516c68h
+dd 0a2fb213dh
+dd 0dcadd5eeh
+dd 00498b08ch
+dd 06c4b147bh
+dd 0c5721bc3h
+dd 08afce1b2h
+dd 0df409469h
+dd 0064748a1h
+dd 09848d6bfh
+dd 09fd8c787h
+dd 0e2061fddh
+dd 01b534890h
+dd 06f7ab93fh
+dd 012fb79ech
+dd 07f57811ah
+dd 0867cfef6h
+dd 0352457fah
+dd 07e60d10eh
+dd 0e43d8285h
+dd 091f48826h
+dd 041536fcdh
+dd 0e244c955h
+dd 021544ad9h
+dd 008ebb043h
+dd 0652cc5abh
+dd 0644e623fh
+dd 0a722ecaah
+dd 008c16f0bh
+dd 0548a5e0bh
+dd 0256df3b9h
+dd 030e231f5h
+dd 043534018h
+dd 0b19cf9adh
+dd 0bb519877h
+dd 041c5ae93h
+dd 084b86483h
+dd 06af6149eh
+dd 025669f38h
+dd 09a3bd494h
+dd 002b0f3d9h
+dd 02136b234h
+dd 0029e5980h
+dd 0f0a0b47ah
+dd 05c8b42b0h
+dd 0f7de1085h
+dd 03f747128h
+dd 0c30b0d35h
+dd 09a1de6dbh
+dd 06c3c7b78h
+dd 031242780h
+dd 0d3efd62eh
+dd 0b4c877cfh
+dd 06c401fa2h
+dd 0fcaa82cbh
+dd 0493a1b45h
+dd 0e69afd4bh
+dd 04867b84bh
+dd 042d5fb03h
+dd 0fdd49a32h
+dd 056e76107h
+dd 0881ef307h
+dd 0442faae6h
+dd 05b3409c2h
+dd 03aab0e25h
+dd 0b1b31027h
+dd 003b40b71h
+dd 03c081c92h
+dd 0cb5ce294h
+dd 05542346bh
+dd 0d30115dah
+dd 08cc90d3eh
+dd 0daad092ch
+dd 08602bfefh
+dd 01c1fc4deh
+dd 02de06538h
+dd 0e6151221h
+dd 051433ebdh
+dd 0c0abb9a3h
+dd 0b208b99ah
+dd 00851345ch
+dd 071a87501h
+dd 05bd11136h
+dd 02a3b7354h
+dd 0a6fd7be5h
+dd 0d37e503bh
+dd 00710cdcdh
+dd 00dfc1453h
+dd 08076f53eh
+dd 09efd1f18h
+dd 04fe6a727h
+dd 08406787ah
+dd 011dffac8h
+dd 0315b4113h
+dd 0d9dc53ceh
+dd 087864855h
+dd 0cc708b85h
+dd 037780614h
+dd 02f013f0fh
+dd 06b63f041h
+dd 0522f8d1ch
+dd 000c3ac9dh
+dd 07678b263h
+dd 01736c2e1h
+dd 05679c502h
+dd 02c1da985h
+dd 0a4e74007h
+dd 00cab9e61h
+dd 0ca54f210h
+dd 001cac89eh
+dd 0f490d0dfh
+dd 0ac84c0bah
+dd 08e16f8a1h
+dd 014e1a07fh
+dd 0ac1c2b28h
+dd 0be83128eh
+dd 03b8b109eh
+dd 0097aebc6h
+dd 0a343d6f8h
+dd 067fa4a3bh
+dd 07c307f3eh
+dd 03719fba5h
+dd 08b17000bh
+dd 0f8697301h
+dd 0fffce1afh
+dd 0547f9829h
+dd 0d5fc5c96h
+dd 04720360eh
+dd 030fc3dd0h
+dd 032bd4095h
+dd 0e68e682ch
+dd 0c1d9326ch
+dd 08a273559h
+dd 0c9c4b611h
+dd 0d52b2069h
+dd 014e148ceh
+dd 02ec25b9ch
+dd 071fc923eh
+dd 0e25776b7h
+dd 03ffd3292h
+dd 037d6db76h
+dd 0bf2f671dh
+dd 02707cb4dh
+dd 08c8319e7h
+dd 0c39bb43dh
+dd 08346d977h
+dd 04f21826dh
+dd 0cb513dddh
+dd 086f4233ch
+dd 08d3c2546h
+dd 0d1897034h
+dd 01229ef7fh
+dd 0b43c1deeh
+dd 0bd8cda10h
+dd 0acb37271h
+dd 01741c295h
+dd 052bdd160h
+dd 052952b1bh
+dd 02967ac20h
+dd 05b531436h
+dd 0db440883h
+dd 0170631d9h
+dd 0aef08034h
+dd 0df142e8eh
+dd 010c2024ah
+dd 0444194f5h
+dd 016520b68h
+dd 041f95f5bh
+dd 0178c1f92h
+dd 0fa128079h
+dd 05598dd43h
+dd 0e7405e72h
+dd 037acbbb3h
+dd 0ec21ef44h
+dd 0e0cfcb7fh
+dd 023ce3006h
+dd 0ddb5393fh
+dd 0dcf7b3f0h
+dd 0d5efbd51h
+dd 0ecb7e0f5h
+dd 098232c3ah
+dd 05cade400h
+dd 032fa1740h
+dd 07e565c20h
+dd 0e946c670h
+dd 01b29c081h
+dd 00c05c533h
+dd 0a658a4edh
+dd 0fd68c8a6h
+dd 070f2701bh
+dd 04ecd61b6h
+dd 0a9972b32h
+dd 022f57215h
+dd 0fd924700h
+dd 07032d201h
+dd 05f337b66h
+dd 02d14a35dh
+dd 01d83deb7h
+dd 066e83697h
+dd 098d8700ah
+dd 073b3d116h
+dd 06b1abd70h
+dd 0ff0a1775h
+dd 0af718de9h
+dd 0849682b9h
+dd 02409aaedh
+dd 051c167bch
+dd 097475b15h
+dd 08cd0c863h
+dd 0b5c51178h
+dd 0e848a384h
+dd 08a1a846dh
+dd 007370edch
+dd 047d4ef3dh
+dd 0baf378ach
+dd 01676ac44h
+dd 036791468h
+dd 04ffef6c3h
+dd 0130b55e3h
+dd 03e59bb1dh
+dd 0e024deeeh
+dd 043ec3539h
+dd 06905a3e0h
+dd 03f22a066h
+dd 0c641b732h
+dd 03551e3d9h
+dd 069317977h
+dd 087a07984h
+dd 0a23374cfh
+dd 07a96d691h
+dd 0fde2ae34h
+dd 051c068fdh
+dd 0faca7563h
+dd 0bfa0d7e5h
+dd 026df3c1ah
+dd 0b665074fh
+dd 0e28ddd89h
+dd 013a8bf0eh
+dd 0c0915b8ah
+dd 09a5498d6h
+dd 0b4cfe24eh
+dd 0a5d4dbc2h
+dd 09babe2d0h
+dd 0e8a46597h
+dd 0ac320f88h
+dd 0cd0ff3f0h
+dd 0541c0274h
+dd 04f94d6a1h
+dd 0a80b2725h
+dd 04807dd75h
+dd 0697b0e77h
+dd 0d2fddad6h
+dd 084ea5402h
+dd 00eb67e42h
+dd 0b122a4f5h
+dd 0e3c0fb53h
+dd 07c0270b4h
+dd 0de9ef03fh
+dd 00091ccbeh
+dd 0a83e2dbah
+dd 06c5a2986h
+dd 00e69a8f3h
+dd 08e193f50h
+dd 0bada9874h
+dd 003fd044ch
+dd 0cbfdbcceh
+dd 0621b67ech
+dd 06ef398ebh
+dd 05d093dcfh
+dd 0e17b62fch
+dd 082a46a7ah
+dd 014f86149h
+dd 039dfa982h
+dd 02881b6eah
+dd 05e1018e6h
+dd 0804e3e60h
+dd 0a10523d4h
+dd 0b096b52ah
+dd 0f84bef66h
+dd 0318a2dbeh
+dd 010fd7175h
+dd 0734ed36ah
+dd 0692ec977h
+dd 0d02908f7h
+dd 033ca3b24h
+dd 0b29918a4h
+dd 0d14738adh
+dd 0c9856032h
+dd 06af7321eh
+dd 0329093e5h
+dd 01771f82eh
+dd 08b59d0edh
+dd 0b60a5b0fh
+dd 02e973d84h
+dd 002fdedbdh
+dd 0d281f2f6h
+dd 019866f80h
+dd 0f7e6d4c0h
+dd 0e252c7c7h
+dd 08c8eb14ch
+dd 0c79b10a3h
+dd 09fd3c9b3h
+dd 0891bed5fh
+dd 0a6f46bf5h
+dd 037adf91eh
+dd 0007dd2b6h
+dd 02f0e2ed6h
+dd 0761f7c42h
+dd 0e308b764h
+dd 094801be6h
+dd 0cf40c158h
+dd 0fd8bedc9h
+dd 021839d54h
+dd 05a497f88h
+dd 05e96929bh
+dd 0234fdd19h
+dd 016a9fa48h
+dd 0d2886953h
+dd 055f5415ch
+dd 0987add78h
+dd 0f18ac952h
+dd 0a7a01aafh
+dd 0189c2d47h
+dd 030ec7250h
+dd 02a8c8dcbh
+dd 03128ca20h
+dd 0f01d7454h
+dd 0645e48deh
+dd 0d49e71deh
+dd 014fae4d0h
+dd 0088ee6dbh
+dd 06b2fb5c4h
+dd 08181477ch
+dd 08556e15ch
+dd 05797bf20h
+dd 090dccc01h
+dd 040a5593fh
+dd 038d5df09h
+dd 03a31d596h
+dd 0b5a5b811h
+dd 0a6b485b1h
+dd 0acebb880h
+dd 08578bfdch
+dd 0edd8781fh
+dd 02855843fh
+dd 07b04108fh
+dd 0c48e0431h
+dd 0826cb108h
+dd 0ce1282efh
+dd 0b6127ebah
+dd 0ddb427bbh
+dd 06b360c88h
+dd 0e91390bbh
+dd 0fc9a0e68h
+dd 0d48d9c63h
+dd 0a999a867h
+dd 05896d995h
+dd 0f60ecdcdh
+dd 0aef95bd3h
+dd 0ff39dc73h
+dd 0d6cd5911h
+dd 01a820e82h
+dd 0ac303b23h
+dd 0785135a5h
+dd 00b068a50h
+dd 069ebf870h
+dd 06acdd67dh
+dd 0acbdbac9h
+dd 0c9862895h
+dd 080d7a420h
+dd 07d7afecah
+dd 0224d564ah
+dd 08683c823h
+dd 0bad3dc95h
+dd 0c603e757h
+dd 01da6fabah
+dd 001f715d5h
+dd 008dc3416h
+dd 05c1b72afh
+dd 0e4524bdbh
+dd 0f2c754cbh
+dd 0d164df1bh
+dd 0768a797eh
+dd 041670620h
+dd 0c1ceca1eh
+dd 024e25b2dh
+dd 09c03ec8eh
+dd 0f2cfada2h
+dd 02a34be6ah
+dd 0cb9c9215h
+dd 0295a4adeh
+dd 03327efb0h
+dd 08ee3e651h
+dd 0d5def788h
+dd 0123d7c9ah
+dd 055cd0201h
+dd 00da65f1eh
+dd 0700be143h
+dd 00570c617h
+dd 08b15606dh
+dd 051c3eb03h
+dd 0547487c1h
+dd 075644899h
+dd 0631de368h
+dd 06411f44eh
+dd 02d795012h
+dd 0b7b2dbe2h
+dd 0df1a043fh
+dd 0a11c0fc0h
+dd 065b0f60bh
+dd 096141d58h
+dd 091f2ab6bh
+dd 01a40ab0ch
+dd 0025a3037h
+dd 0f025b0d8h
+dd 063d8aad9h
+dd 0278c3733h
+dd 0ab4be6fch
+dd 09afc44b9h
+dd 01ab71c42h
+dd 00e1aafeah
+dd 0e42ac608h
+dd 06831e74bh
+dd 070709095h
+dd 0ddf3407bh
+dd 01e3b27a0h
+dd 0275d99e4h
+dd 06f45aab6h
+dd 085adefbbh
+dd 0d90e65dfh
+dd 0ece8fdcdh
+dd 0b3a93b8fh
+dd 045aa8a6ch
+dd 0578c93bbh
+dd 0f3fc262dh
+dd 0005ec81fh
+dd 0088e3330h
+dd 0ad2a50e3h
+dd 0ba2805feh
+dd 0e488c825h
+dd 0fd246213h
+dd 0068dfbe3h
+dd 02014528bh
+dd 0b049488dh
+dd 079558a12h
+dd 02dd55b48h
+dd 0d5d7ce46h
+dd 02dbb22e9h
+dd 05322d576h
+dd 0c0366497h
+dd 0e664fac3h
+dd 097fa00f9h
+dd 02ddbf81eh
+dd 0e9b6a879h
+dd 058b0f21fh
+dd 0cb59dd61h
+dd 0d9ffea76h
+dd 09b82addah
+dd 0c69b92afh
+dd 0f061147fh
+dd 0571e5428h
+dd 0ca2322dbh
+dd 0f31aa4b5h
+dd 03cfe3d96h
+dd 0eeaf32f3h
+dd 0c17012f0h
+dd 0d5f0ff37h
+dd 06d73dba8h
+dd 0ce8a6bbfh
+dd 027980b06h
+dd 059a34fe0h
+dd 05b408384h
+dd 0af566752h
+dd 016d13bf9h
+dd 0dc2df8aah
+dd 0460e803dh
+dd 05ca362a4h
+dd 0e33622b6h
+dd 034ba42abh
+dd 03a6062b6h
+dd 0a04ea2e8h
+dd 09b87134bh
+dd 015f27102h
+dd 0bc7e22b7h
+dd 05ab7851ch
+dd 089f9a706h
+dd 071a0585ah
+dd 062ba27f0h
+dd 049d14039h
+dd 02e164c17h
+dd 099f81017h
+dd 0e08406e5h
+dd 0ee8289e5h
+dd 0a59f3bcbh
+dd 03dd75d54h
+dd 0213da342h
+dd 0d83ece14h
+dd 0e7c31f15h
+dd 0656aa96fh
+dd 042161360h
+dd 048561120h
+dd 06336fee2h
+dd 0abb98b61h
+dd 08ce02f9bh
+dd 0116790ceh
+dd 01be1fbb9h
+dd 0a2c079ceh
+dd 0b50d3276h
+dd 06d95b8d2h
+dd 01bba8f3ch
+dd 0fd5c7ddah
+dd 0de0f9379h
+dd 0b3aa1e7bh
+dd 0980019e4h
+dd 048c66ce4h
+dd 0fa576579h
+dd 05d5c1fe6h
+dd 0df1a3485h
+dd 086c41ca0h
+dd 0f8f86014h
+dd 08c48e80dh
+dd 0985457c3h
+dd 0b160badah
+dd 0dee9006eh
+dd 077e2e18dh
+dd 0e067efd7h
+dd 0779a206fh
+dd 010c82e58h
+dd 0ccf63646h
+dd 00de6d96bh
+dd 0fc05ea64h
+dd 07a9f0f58h
+dd 08c21180fh
+dd 04a620f24h
+dd 02f25fc0ah
+dd 039c825b0h
+dd 0c3afa5e6h
+dd 03422e3d5h
+dd 00ced0cf3h
+dd 0cf32f090h
+dd 0b859fdb6h
+dd 0b8aef12eh
+dd 0e63f5dddh
+dd 09d908aa1h
+dd 0e1e9c365h
+dd 0f9d221e8h
+dd 0ce467195h
+dd 02e8cea86h
+dd 09ca579eah
+dd 08cffbb91h
+dd 07fabef50h
+dd 019098c4ah
+dd 0d8affa11h
+dd 0b963343fh
+dd 00ae5e080h
+dd 08584ccdbh
+dd 08b057c3fh
+dd 01f4efa4ch
+dd 0ed6788ffh
+dd 0e9f6f26bh
+dd 0afaa1da6h
+dd 0ecee18b7h
+dd 034f8e4efh
+dd 07d72c4d0h
+dd 0f07d78ech
+dd 0f5e1bf85h
+dd 0fcaf2973h
+dd 095edc0f4h
+dd 095b4a8a6h
+dd 0061cbdb3h
+dd 0090a8ed3h
+dd 047f7e326h
+dd 0b3ced56bh
+dd 0c812ef5eh
+dd 0661d01d1h
+dd 02a69ddb1h
+dd 0c79412bah
+dd 00fcbddf7h
+dd 06128bd4dh
+dd 008b49db2h
+dd 021b41f05h
+dd 08c5ffda4h
+dd 0d0a3d51ah
+dd 042ee5ad9h
+dd 0b80322d5h
+dd 07869e7c4h
+dd 025ee8057h
+dd 080628fc3h
+dd 005db4b0eh
+dd 0c30dafdeh
+dd 0c09ddacah
+dd 01b20ddf7h
+dd 0677be0ffh
+dd 0d5f486e4h
+dd 02ab3a072h
+dd 022118c51h
+dd 035db40c2h
+dd 0095a7b1dh
+dd 0f53666a2h
+dd 0fb16b7e1h
+dd 0d9d05891h
+dd 00eb6e3fbh
+dd 0dc007cd3h
+dd 0da151655h
+dd 0ede3fdc7h
+dd 0aeb694ach
+dd 0a7d687cch
+dd 06c0d010dh
+dd 07240bce1h
+dd 0af4c8a8dh
+dd 0421338f4h
+dd 0ddc8efe3h
+dd 0ba88be64h
+dd 05896ac0eh
+dd 0c6870ed1h
+dd 0f523c28dh
+dd 043d5adbbh
+dd 07683d23ah
+dd 053d568bah
+dd 00d62e5bch
+dd 05e3ddc1ah
+dd 0fe274da6h
+dd 019680865h
+dd 0622cb880h
+dd 0cdb591ffh
+dd 01adfca97h
+dd 05cd4b02ch
+dd 0ca8735a7h
+dd 0eeecffdah
+dd 088389e29h
+dd 0f216c1b4h
+dd 099e2aed7h
+dd 077d1339ch
+dd 0c986f68ah
+dd 0b6456bbah
+dd 08876fe47h
+dd 008d9491eh
+dd 0a8701372h
+dd 0c9ff2012h
+dd 0bddc62ebh
+dd 063a45542h
+dd 02e30ef13h
+dd 037c19b61h
+dd 0df9f36ceh
+dd 02ded1d3ah
+dd 09e70dc88h
+dd 086b1104bh
+dd 01aba2e58h
+dd 01b1008b5h
+dd 08379826eh
+dd 055575eb2h
+dd 0c5ba299fh
+dd 0616494ddh
+dd 05572b8a6h
+dd 0761f4792h
+dd 093af61ach
+dd 0e79a0e67h
+dd 08f27ccb3h
+dd 014f174b6h
+dd 051b71656h
+dd 0b2697852h
+dd 0c37e84b6h
+dd 008f5947ch
+dd 0512edddeh
+dd 023e022e3h
+dd 0785df43eh
+dd 0ce4858c9h
+dd 03c243cd5h
+dd 056845d64h
+dd 0de0c511ch
+dd 0e5d23a24h
+dd 0e4c2fafah
+dd 0fcd83ac2h
+dd 077e51f48h
+dd 0c8fd731fh
+dd 08c38f54ch
+dd 0470cfb8ah
+dd 00e7e9ae3h
+dd 0a0329e43h
+dd 026f13a1ah
+dd 0cfdb0dddh
+dd 0bbe7ef56h
+dd 0506c52a4h
+dd 07c8d1e1fh
+dd 05827ff6fh
+dd 0c8c7cfa9h
+dd 08830ed9ah
+dd 01f791914h
+dd 0c60610c4h
+dd 0b4ff65e6h
+dd 001c0cfe0h
+dd 0f779c25ah
+dd 0e844da8dh
+dd 05d3ba66bh
+dd 0855ecd11h
+dd 00356b387h
+dd 08674b5fch
+dd 0be1bdf64h
+dd 0b9cef91dh
+dd 0875156c2h
+dd 030476bbbh
+dd 043a70ba6h
+dd 034a50cb5h
+dd 0f0ec4e22h
+dd 0e3d1cb8ah
+dd 0f6222affh
+dd 0204bb900h
+dd 02418bbb2h
+dd 0676fafe3h
+dd 05c1ddb78h
+dd 05eaadfa3h
+dd 0591a3ab2h
+dd 0d1284623h
+dd 0b1b6a046h
+dd 04d357b6dh
+dd 0184bf1d7h
+dd 07adb2c49h
+dd 0b15f0e4bh
+dd 0eb0d213bh
+dd 0b185ba82h
+dd 02777afe5h
+dd 092285edeh
+dd 0b696baf4h
+dd 0e0fd1110h
+dd 0b0656eb9h
+dd 0552df7b3h
+dd 056cb8843h
+dd 01d80f809h
+dd 0deec4e53h
+dd 0cf330fa3h
+dd 0c5f55424h
+dd 0a1f1325fh
+dd 0eb08d0d1h
+dd 0065fb2adh
+dd 05f3732eah
+dd 0cd4c7371h
+dd 09ce489c9h
+dd 00d565fb4h
+dd 0080ded49h
+dd 09413cf5ch
+dd 015dd1551h
+dd 015628746h
+dd 04fe8e620h
+dd 0eaaeded5h
+dd 0f2d459e5h
+dd 0d0441c1eh
+dd 00326589fh
+dd 07db190adh
+dd 0c9266cf1h
+dd 0f008077fh
+dd 0e1b9b0feh
+dd 00ef253b8h
+dd 05cfff316h
+dd 0baf68917h
+dd 0aab36b23h
+dd 0cb2c6f90h
+dd 014885c25h
+dd 0b22c769dh
+dd 0b6e24628h
+dd 022854fa3h
+dd 0fec20225h
+dd 0e5d38a69h
+dd 07581c809h
+dd 0b686eedbh
+dd 0d1674126h
+dd 099d3e5cch
+dd 059f9a378h
+dd 0c815a5a0h
+dd 05cdbc236h
+dd 07f03ec5dh
+dd 0ad58a556h
+dd 0b5217aa1h
+dd 0a39602cah
+dd 0b4703a96h
+dd 04ee43327h
+dd 04995974fh
+dd 0a08b73f3h
+dd 0d1f2af60h
+dd 076d16ef6h
+dd 09b8d658fh
+dd 02bfc831eh
+dd 07cd5a328h
+dd 0d7c6501dh
+dd 06e284f43h
+dd 050f9d6bbh
+dd 075bffe5bh
+dd 02a3966e3h
+dd 07b8d32bdh
+dd 0d92a0af1h
+dd 039445059h
+dd 0b82c3fach
+dd 0d93fcd28h
+dd 0d9a67637h
+dd 06eb2c25ah
+dd 0431f1725h
+dd 0e7e020fbh
+dd 0f06545dah
+dd 038d40ccfh
+dd 0f91f4ff5h
+dd 057243233h
+dd 0628436aah
+dd 0d9cf0a54h
+dd 032ff1f33h
+dd 0b4b3668bh
+dd 0a74ca719h
+dd 0687b03e3h
+dd 01acfdda4h
+dd 0e6d4df48h
+dd 0452730e0h
+dd 00a2f5221h
+dd 0f81c9f3bh
+dd 0d2a17d2fh
+dd 01a2be0d1h
+dd 0ef34d889h
+dd 07c323bc0h
+dd 06f102ba3h
+dd 00934fb2bh
+dd 0b11d007fh
+dd 034a3d99ah
+dd 0d35e2e0fh
+dd 083a56310h
+dd 0d209b06ch
+dd 0210567e9h
+dd 084b1cadfh
+dd 02bdd2ad0h
+dd 0f22177fah
+dd 07828776eh
+dd 0cdf0c511h
+dd 0ed8d221dh
+dd 08b4ad854h
+dd 06f13bbffh
+dd 019469a48h
+dd 0d7d91cf5h
+dd 0ffcd1866h
+dd 092586876h
+dd 011f1bcfeh
+dd 0860aee02h
+dd 09eddff77h
+dd 0bf0363d3h
+dd 019864aedh
+dd 027eb6001h
+dd 017e07a0bh
+dd 0a819397eh
+dd 0ca650c1bh
+dd 09aefc7c8h
+dd 0483e59ddh
+dd 0981b0948h
+dd 07953d15ah
+dd 08641f5f9h
+dd 03f4d068ch
+dd 0453bf209h
+dd 0501fbfb1h
+dd 0113cfedeh
+dd 006359c3dh
+dd 08acb8a32h
+dd 0ccd1efc0h
+dd 02c473e7fh
+dd 0c85508bdh
+dd 0ea332dc3h
+dd 0addfaeb2h
+dd 03f5e9c5fh
+dd 0b6b7fa39h
+dd 01c51583dh
+dd 006e6dc74h
+dd 0f27559cah
+dd 08c32dc7ah
+dd 036cff2a7h
+dd 01dc18490h
+dd 0fdcc5fa2h
+dd 0e991550fh
+dd 06d2a917ch
+dd 03856cd6bh
+dd 0514d1774h
+dd 06488f3e4h
+dd 0724f5a54h
+dd 0e7bc79adh
+dd 0a33ef268h
+dd 05e45292ch
+dd 0e7e3dcb2h
+dd 0bd2259f7h
+dd 013d8d962h
+dd 0f9daa92eh
+dd 017ba4495h
+dd 00df53610h
+dd 034073d00h
+dd 01df9e26dh
+dd 04e6dde12h
+dd 0c9776fbeh
+dd 0e0f7c6cdh
+dd 00869bcb7h
+dd 09a980281h
+dd 0c4ecb181h
+dd 06bc0c4beh
+dd 07e20ae57h
+dd 0edf89b0dh
+dd 033d22ff8h
+dd 0b4996e62h
+dd 03da45b77h
+dd 0b357befdh
+dd 0aee0139eh
+dd 0cb719e8fh
+dd 081b1e522h
+dd 046969a87h
+dd 0b6029fa5h
+dd 064ea5b31h
+dd 08e992dfch
+dd 08a35eef3h
+dd 069045f46h
+dd 0d1305eaeh
+dd 0eac56786h
+dd 0f197374dh
+dd 0c11991ddh
+dd 026755c8ah
+dd 09be4dbefh
+dd 075bfa8cbh
+dd 09865c531h
+dd 01a3789b0h
+dd 03087b850h
+dd 0eae9048bh
+dd 0346276beh
+dd 011b389b5h
+dd 0dda286ach
+dd 0d4b9caf3h
+dd 06ee89283h
+dd 02d4c9f45h
+dd 0429e6edch
+dd 0b67dfc38h
+dd 0553f1cbeh
+dd 0b17b8287h
+dd 0ae2dfbd3h
+dd 0b95cf629h
+dd 068e88e28h
+dd 05c83ef44h
+dd 06df91254h
+dd 0630ab98dh
+dd 096b89e61h
+dd 0d0459181h
+dd 0cc4f334ch
+dd 0d1298db2h
+dd 08e8c1971h
+dd 0c71e7acbh
+dd 0c811d967h
+dd 051b4e583h
+dd 08314dc18h
+dd 0fcd7d274h
+dd 05b40befeh
+dd 0d765181bh
+dd 0e0de2a55h
+dd 04543e262h
+dd 0362a774ch
+dd 0a5fa7b04h
+dd 0c3618984h
+dd 04cf2f286h
+dd 0e9b15d3fh
+dd 0c7d9c448h
+dd 0022c90d7h
+dd 0c6b8dfa0h
+dd 029a16cb1h
+dd 050a3f07dh
+dd 00b57e258h
+dd 0a5ef0a6ch
+dd 0be358a2ch
+dd 073ab55d1h
+dd 0add10108h
+dd 069c43a91h
+dd 0118239c6h
+dd 0ecab4aa4h
+dd 0fd91f974h
+dd 0d0232412h
+dd 07df7d7d1h
+dd 0ff8ecfech
+dd 0bbfdec59h
+dd 03fd75cb8h
+dd 08dba10bdh
+dd 0b280980ch
+dd 047babccah
+dd 0ef711ec1h
+dd 00b8757cbh
+dd 00f03293ah
+dd 0014cff0bh
+dd 0159362f2h
+dd 0e9b18666h
+dd 03508b5d2h
+dd 06ceb24ech
+dd 0887e3cb2h
+dd 0c1355a04h
+dd 02721b65fh
+dd 0f731cc2dh
+dd 07bcd475ch
+dd 05cb75910h
+dd 02dd1d6e2h
+dd 0daf0c86bh
+dd 09ce8ad30h
+dd 02262b035h
+dd 047133ad1h
+dd 08a2fbbach
+dd 0cb8afcb7h
+dd 09b84dd2eh
+dd 07a15748dh
+dd 04d8d2d56h
+dd 08b9493a3h
+dd 04c909bb8h
+dd 039ee8e41h
+dd 0ae9828d4h
+dd 0da1c0e63h
+dd 00461c596h
+dd 030c816ddh
+dd 0c29eae89h
+dd 0b2ad1c1eh
+dd 0b873eab8h
+dd 0d57aaaabh
+dd 056b94a65h
+dd 013bbb217h
+dd 02a6564b0h
+dd 0cf9798bfh
+dd 09e9bbbaah
+dd 04f65a038h
+dd 0bf78c38bh
+dd 064985511h
+dd 051ee93d1h
+dd 0f8fe8338h
+dd 08b451d46h
+dd 0221b5bc3h
+dd 0df150057h
+dd 043a0182bh
+dd 083ee4aabh
+dd 09eff0b4eh
+dd 0d6af3d32h
+dd 0ed69ec8bh
+dd 086d84618h
+dd 0bd44d90eh
+dd 0604a2b9ah
+dd 0d5162613h
+dd 071c8f386h
+dd 06567ee76h
+dd 0ccf271e9h
+dd 061c7aaabh
+dd 08b47bf59h
+dd 079ee830dh
+dd 0e1a18308h
+dd 0cd6046bbh
+dd 0d57bc724h
+dd 031f555edh
+dd 0bc8deafah
+dd 03dc1ecdfh
+dd 0ef5b5e28h
+dd 012cc147bh
+dd 05c6dcb68h
+dd 0a8a0b707h
+dd 0456e3dafh
+dd 02362ebbch
+dd 07ba8ea1eh
+dd 098990fbfh
+dd 0972f58f7h
+dd 0252f1dceh
+dd 0959550d8h
+dd 0ba29671fh
+dd 036ccfce3h
+dd 01bd5a27ch
+dd 07c322ca9h
+dd 06490b4e1h
+dd 0e987cce3h
+dd 00150c082h
+dd 01258859dh
+dd 002da7c0ah
+dd 032760165h
+dd 0966e221bh
+dd 00aaaffd4h
+dd 02ee4a5c5h
+dd 0e135ba04h
+dd 06d60f639h
+dd 0628a6623h
+dd 01505679fh
+dd 09a0da64fh
+dd 01139bdc8h
+dd 0c8205dd9h
+dd 0a83a48feh
+dd 02fead0bah
+dd 0e83c443ah
+dd 0f0d95738h
+dd 07c091645h
+dd 0e36ed998h
+dd 025975211h
+dd 09038c985h
+dd 081114647h
+dd 01de2fbf6h
+dd 0929a93dah
+dd 0d2d3f31bh
+dd 0625338f5h
+dd 084779331h
+dd 09e6db8a7h
+dd 00bf8bb42h
+dd 00a393caah
+dd 0bfd5b7f4h
+dd 0e73ac4b1h
+dd 0e8ccef59h
+dd 0db8598b6h
+dd 078f36f2ah
+dd 0b3ecf620h
+dd 02b5ed55ch
+dd 0545f34cbh
+dd 0c8d8f16fh
+dd 02a6f76a6h
+dd 01ef2b380h
+dd 081a09ab6h
+dd 04b5d687bh
+dd 06d35842bh
+dd 068c9f7c8h
+dd 0cb8295ddh
+dd 09d32e32ah
+dd 0a1e08428h
+dd 0586dbacfh
+dd 006fa0fe8h
+dd 004819e1dh
+dd 0dd5fcbb1h
+dd 0e84cf3dfh
+dd 02d6bd4a3h
+dd 03e699a22h
+dd 0adffc102h
+dd 0d71028b5h
+dd 01ff9a594h
+dd 0870f41b2h
+dd 0dfab27b8h
+dd 06fca08d6h
+dd 04d1e09b1h
+dd 078ebb775h
+dd 0ea510dc4h
+dd 05942c6e8h
+dd 06080b3a2h
+dd 0204d28d3h
+dd 0f7f1bcc7h
+dd 00b300b38h
+dd 0aad09f46h
+dd 0a8e4f039h
+dd 0616cb558h
+dd 03e3c2ae4h
+dd 0d6baaf95h
+dd 05cf189d9h
+dd 099d8f912h
+dd 08b1841aah
+dd 0dda7f05eh
+dd 0a6220de5h
+dd 09e0bdaceh
+dd 062fde053h
+dd 0414e974fh
+dd 002416878h
+dd 0aac63b74h
+dd 0ff473a97h
+dd 0fd9da048h
+dd 0e1465581h
+dd 0a9f06e34h
+dd 0d9f0b9d8h
+dd 0290a991fh
+dd 0a3cdb71ch
+dd 0b543b293h
+dd 0b4981208h
+dd 020051c8bh
+dd 03f564067h
+dd 0bb7512adh
+dd 04cb5ae82h
+dd 03e02dbceh
+dd 0e37592fah
+dd 0df1819ach
+dd 044fc5f39h
+dd 0e01720e5h
+dd 06b23889bh
+dd 0e79f2247h
+dd 07806e0afh
+dd 05568501bh
+dd 0680ed96ch
+dd 0a03263eeh
+dd 0a8106980h
+dd 056482bf4h
+dd 04053ba99h
+dd 0d6680f8ah
+dd 0e042747ah
+dd 0b943f501h
+dd 0292aaed3h
+dd 07f6e0082h
+dd 081c5f384h
+dd 0c6255c94h
+dd 0a0e7eb08h
+dd 092b244a5h
+dd 09b4128a8h
+dd 0ec3d3617h
+dd 01d1372f7h
+dd 026ffed59h
+dd 0c9945dd0h
+dd 0b90bf086h
+dd 01c08ce45h
+dd 0636c9125h
+dd 0291088bch
+dd 0da112ca5h
+dd 0912a6b84h
+dd 0cfa20258h
+dd 081e48d4ah
+dd 06484412bh
+dd 0ee046cfch
+dd 06c0f3cf2h
+dd 016aa70c4h
+dd 0aa8f165fh
+dd 0ed444e54h
+dd 01d2de066h
+dd 0326d31e4h
+dd 09a04aa5fh
+dd 0c199b5a3h
+dd 0c0d51217h
+dd 0f649c022h
+dd 09864cf0dh
+dd 0ff76d959h
+dd 07bd22957h
+dd 0367d6620h
+dd 01beb945eh
+dd 02a919ffeh
+dd 0d7c8315bh
+dd 066447596h
+dd 07f38b7b5h
+dd 0487f55e6h
+dd 06b0895c0h
+dd 038dd7618h
+dd 013d23bbeh
+dd 0f86e952ah
+dd 0dce6cd59h
+dd 0146fef79h
+dd 09cac79d4h
+dd 0a62ab14fh
+dd 027ac7317h
+dd 0b7799ac9h
+dd 02e9c3188h
+dd 0b0717101h
+dd 0442132e9h
+dd 0fa5fad89h
+dd 095e0bc66h
+dd 04aeafee7h
+dd 0067e4567h
+dd 056a9854ch
+dd 030afee91h
+dd 0b33f9a8eh
+dd 0739d0204h
+dd 0bbae1d83h
+dd 0485d1015h
+dd 09b535d85h
+dd 09ab041e0h
+dd 0bbd1d264h
+dd 0f149323ch
+dd 0461a609eh
+dd 09561c0f6h
+dd 050a50493h
+dd 0541eba07h
+dd 0bc1ce4e0h
+dd 061a56b68h
+dd 04e17a192h
+dd 09e71ae8dh
+dd 02a736373h
+dd 016571ce3h
+dd 0ac27ea75h
+dd 04be2dc20h
+dd 03acbd0cdh
+dd 0dce71075h
+dd 07587436bh
+dd 00787c87dh
+dd 0a8837809h
+dd 0ba53069ah
+dd 0398bb5a5h
+dd 070fedfb4h
+dd 05453bf3dh
+dd 0c8be9612h
+dd 0f7a6fe6ah
+dd 06269395ah
+dd 02397c544h
+dd 049761900h
+dd 000674788h
+dd 00602bbceh
+dd 06453cbc6h
+dd 0a908ab01h
+dd 0109ac1efh
+dd 0b7dbb398h
+dd 01f0d2979h
+dd 0e1ceb1eeh
+dd 0b03e5d15h
+dd 033d31a0dh
+dd 044afcbbeh
+dd 09e4c49cbh
+dd 0927dbafah
+dd 0d2380a8fh
+dd 0d7ad1ad7h
+dd 0988e8996h
+dd 0002ee2fah
+dd 0e98cdf5ch
+dd 09e9812ech
+dd 0d635e2c0h
+dd 03badff35h
+dd 058e70706h
+dd 0c7876c14h
+dd 093c041d4h
+dd 0ed23ba94h
+dd 0469102f9h
+dd 07856a5b2h
+dd 0725a57d9h
+dd 0ea77d9c8h
+dd 0e9e14e3eh
+dd 0f0149592h
+dd 0810b7b94h
+dd 020a05976h
+dd 07794881eh
+dd 0c38ffc47h
+dd 06b0026bah
+dd 05a9bba11h
+dd 0c0e76e29h
+dd 0075962b9h
+dd 026ae20ceh
+dd 0fd4f5cabh
+dd 0db7bfbc8h
+dd 0924ab909h
+dd 0135d9596h
+dd 01c5a16cch
+dd 053487759h
+dd 01cd233d0h
+dd 0fe48b7fch
+dd 0494aa1cch
+dd 0dbbdc3f7h
+dd 041d69916h
+dd 06ff27d5ah
+dd 06fb90d80h
+dd 096e9063fh
+dd 0ec5ecb32h
+dd 0a309edcfh
+dd 0506e0f59h
+dd 06a42dee0h
+dd 05d031888h
+dd 0a14d863eh
+dd 0a5f51599h
+dd 0010e9f0ch
+dd 01ee839c0h
+dd 02e7041bdh
+dd 0f391ebedh
+dd 03e81bb58h
+dd 04f8dd858h
+dd 0b9eb9acch
+dd 0f6b1161fh
+dd 0239a2820h
+dd 02df574fch
+dd 0fe4161f7h
+dd 08ea3eeefh
+dd 037ab64b2h
+dd 099d16157h
+dd 001c315a6h
+dd 086254a85h
+dd 00d89e5ech
+dd 047736825h
+dd 0cf005bddh
+dd 0090b38dch
+dd 057f97936h
+dd 062f1288dh
+dd 07920198dh
+dd 0758501c5h
+dd 02bdce784h
+dd 012ba0168h
+dd 0e96ef40fh
+dd 07a7f9705h
+dd 041d10428h
+dd 0f1ae662dh
+dd 01e6db912h
+dd 036ee0fbdh
+dd 03eeb61ebh
+dd 0a6defa3bh
+dd 0ad51c4ech
+dd 06d497c6ah
+dd 09340dfa9h
+dd 03beb53bah
+dd 0f040c16fh
+dd 0450b0ea1h
+dd 062ac7771h
+dd 075b05fcfh
+dd 0d38453f1h
+dd 0d25669e7h
+dd 0d03cfe6bh
+dd 0b176c1d4h
+dd 0a4ca837bh
+dd 0281ccb6fh
+dd 043d21370h
+dd 05fb40383h
+dd 0ec7e2177h
+dd 0cfb4045fh
+dd 047af77edh
+dd 05bc0e84eh
+dd 04909d584h
+dd 01501f34ah
+dd 0faad3665h
+dd 0430046e3h
+dd 0f589d042h
+dd 00a3b7b6eh
+dd 04f553fa3h
+dd 0f4a7f9b2h
+dd 0d4e01e8bh
+dd 09474b775h
+dd 074f88450h
+dd 061552ad1h
+dd 092c72ce2h
+dd 0a47cb3c5h
+dd 07f5f32d3h
+dd 02ea41d94h
+dd 013af3f5fh
+dd 00984324dh
+dd 0d301fe2eh
+dd 04e2b7454h
+dd 06a957cd0h
+dd 05659f657h
+dd 06ef61a6ch
+dd 010f7a2e0h
+dd 0fbc50fe9h
+dd 03890bbaah
+dd 0538fb7b1h
+dd 0efd73522h
+dd 03dca2154h
+dd 0e723d4c2h
+dd 04ffe440dh
+dd 0c74b10cbh
+dd 06d798ec6h
+dd 03656f4c9h
+dd 00ac319d0h
+dd 028afbd14h
+dd 051161a8ch
+dd 05135ab90h
+dd 07dda199fh
+dd 0227a989bh
+dd 08b38498dh
+dd 0e33ac889h
+dd 00822a4afh
+dd 0a3549bf2h
+dd 0be5cbc83h
+dd 060c950e2h
+dd 0212a902ch
+dd 0d0427005h
+dd 081e1fc6ch
+dd 0bc5a9acah
+dd 07b9c7343h
+dd 0b730aadch
+dd 05f0a8f65h
+dd 024353afch
+dd 00401d4f1h
+dd 09b0e1b61h
+dd 087280ef5h
+dd 0f173d10fh
+dd 07e59e9a0h
+dd 0e4a00cd7h
+dd 038726566h
+dd 05d156b4ch
+dd 0601c0246h
+dd 08ab9abf6h
+dd 083ca8e8bh
+dd 0c6b1a663h
+dd 0db610700h
+dd 0990328b9h
+dd 0553f5968h
+dd 0ffca1575h
+dd 08ee5502ch
+dd 06dab2c51h
+dd 07ddde2ebh
+dd 00ffe27e6h
+dd 04bdc851ch
+dd 0e9147a86h
+dd 0d0f85250h
+dd 03bfb4b8ch
+dd 0847e0477h
+dd 05a4f0c65h
+dd 08fe6288fh
+dd 0bb2302e5h
+dd 0d5078fd3h
+dd 05d052419h
+dd 001a8890ah
+dd 09698bb9eh
+dd 0e0c7c7d4h
+dd 078a4de6eh
+dd 02a0aec74h
+dd 0e1ac704dh
+dd 098c0571fh
+dd 046e4ca9ah
+dd 00259692dh
+dd 0bb677b0bh
+dd 08dcdc1f2h
+dd 04092999dh
+dd 0c16f9102h
+dd 034f3b69eh
+dd 0c45cb4e7h
+dd 03bb95511h
+dd 03210108ah
+dd 04b01a171h
+dd 0e8b41bf0h
+dd 07188a304h
+dd 047d9d757h
+dd 08bd2b9a7h
+dd 0d069793fh
+dd 0a424ca3ah
+dd 099c4d4f9h
+dd 08bfe2022h
+dd 031f8b194h
+dd 0fa19f942h
+dd 024d3be68h
+dd 0dc0ba515h
+dd 0d4b99de2h
+dd 06844b47fh
+dd 079d1823dh
+dd 049a83647h
+dd 009bc4dc0h
+dd 0ba4e7c79h
+dd 0e6096e7ah
+dd 056f50437h
+dd 0d10c20e0h
+dd 05ad52dc5h
+dd 0f07109c8h
+dd 0fb1cc0e6h
+dd 0bbe75780h
+dd 05e506bd3h
+dd 00110d885h
+dd 04b289f56h
+dd 0cd324df4h
+dd 0e560688bh
+dd 0e5cd5ba6h
+dd 03a745ce5h
+dd 0aa1c8a9ah
+dd 02b1df9d3h
+dd 0e90675b2h
+dd 058633182h
+dd 0754586beh
+dd 016b99b80h
+dd 053bc78c9h
+dd 08d372547h
+dd 06207e530h
+dd 0246f5867h
+dd 0b6fca901h
+dd 0b9c5f6e9h
+dd 044987119h
+dd 0d4fab99fh
+dd 050b4c408h
+dd 0acb9454ah
+dd 07bf24830h
+dd 0304a7c07h
+dd 00493ea4ah
+dd 016222a3bh
+dd 01980f53ch
+dd 020cff184h
+dd 08eb60ecah
+dd 0c55b7750h
+dd 0a7aef7d1h
+dd 02761e48ah
+dd 013b3ed54h
+dd 0b0af45f8h
+dd 0d398f361h
+dd 087b936f5h
+dd 012699e0bh
+dd 04e262fdbh
+dd 0db6fe478h
+dd 089dafb41h
+dd 01fe83ff0h
+dd 0f11e7c18h
+dd 01b72bc17h
+dd 08b8ccf41h
+dd 0b11f019bh
+dd 05551eb1ah
+dd 0fafea0d0h
+dd 085ef5167h
+dd 0c78dd8d5h
+dd 011518210h
+dd 0297508fch
+dd 0adff3de3h
+dd 08f67826eh
+dd 0b145cb50h
+dd 02b58ccd5h
+dd 0f5b1f45dh
+dd 076024f6fh
+dd 0b6ec6acdh
+dd 02b60c680h
+dd 0202a86afh
+dd 0ae182588h
+dd 016cffb69h
+dd 08881e3f3h
+dd 07655b3a7h
+dd 0b7b70ee4h
+dd 088209a87h
+dd 0954f9455h
+dd 0f27276cfh
+dd 05c1a54c4h
+dd 03aad096eh
+dd 0fd5d0738h
+dd 093c6d62eh
+dd 03901fac4h
+dd 021381c67h
+dd 0c55d8d03h
+dd 0523c7909h
+dd 0be31a9b6h
+dd 0e9793d45h
+dd 011cdd6ech
+dd 0ae0f0f96h
+dd 09f354976h
+dd 08f6e7619h
+dd 07db57f4ah
+dd 0cb4687b1h
+dd 02e493f8ch
+dd 00a221ab9h
+dd 0369e88aah
+dd 052b46c24h
+dd 05f1ef6a7h
+dd 0079efbf9h
+dd 0560d7cefh
+dd 024008d4fh
+dd 0a2d22d08h
+dd 0f191c0a8h
+dd 0216146d7h
+dd 08a9dc710h
+dd 00b740033h
+dd 080371f6dh
+dd 01c730ff6h
+dd 00388d5f2h
+dd 082b8806ah
+dd 0fac4d9d5h
+dd 0e79bfc3dh
+dd 0fb48fe9dh
+dd 0887e7eedh
+dd 0dcdbd5cdh
+dd 0d4675b48h
+dd 05f719fd1h
+dd 0996a7dceh
+dd 0973548edh
+dd 02bb50e2fh
+dd 058c34675h
+dd 0cccbf154h
+dd 07938f95dh
+dd 008376979h
+dd 0f140ba8eh
+dd 05c5e708fh
+dd 0c14f15d1h
+dd 065ac999fh
+dd 0221d2db9h
+dd 09a8ec907h
+dd 05542a121h
+dd 03887c678h
+dd 0da94d97ch
+dd 0738ed7bah
+dd 097593d46h
+dd 00911a783h
+dd 08689bb53h
+dd 0c58dbd15h
+dd 098191f7eh
+dd 01b39c5a8h
+dd 062c9abc5h
+dd 054bda0d9h
+dd 09242f648h
+dd 057054177h
+dd 09371db09h
+dd 07c5735f8h
+dd 0fd320ffdh
+dd 0e45f8d57h
+dd 0a3328219h
+dd 0a42a335eh
+dd 047266bceh
+dd 00e74bceah
+dd 0ba45e5f8h
+dd 0426c7dcdh
+dd 043f07627h
+dd 0c986043fh
+dd 0b9d9a7eeh
+dd 01d677367h
+dd 047340408h
+dd 0a7960829h
+dd 02d5ed0e5h
+dd 000dd0117h
+dd 0a231ace2h
+dd 06661a9c7h
+dd 0c2d0f6afh
+dd 07f8373fdh
+dd 00659d90bh
+dd 03ed0bbdbh
+dd 014624093h
+dd 0ef27488eh
+dd 04bafc767h
+dd 0fbee832eh
+dd 0ea5778ach
+dd 0ba05376ah
+dd 0ad94660eh
+dd 07bf57c5bh
+dd 0ab02b312h
+dd 05ac602e3h
+dd 0e4706ab8h
+dd 03b3c8c55h
+dd 00e9e6b51h
+dd 0ac04a414h
+dd 0f65b12c2h
+dd 0594a007bh
+dd 099167865h
+dd 0c2f155b4h
+dd 00c7b1f1fh
+dd 0a8250280h
+dd 07ac72e38h
+dd 0eed8f331h
+dd 0bdcadbeeh
+dd 073ea956bh
+dd 0503f3a7ah
+dd 0d110b849h
+dd 03c0782b6h
+dd 0101f9736h
+dd 0e1c5ee10h
+dd 0cf54939bh
+dd 02ac60d22h
+dd 00710900fh
+dd 007aa4b20h
+dd 01e8c028bh
+dd 042ff4f7eh
+dd 0f43f1219h
+dd 0f0d41902h
+dd 0e05a35fdh
+dd 025c0e882h
+dd 09da1da04h
+dd 084eb651dh
+dd 0aea62a28h
+dd 056eedb40h
+dd 0466b6b90h
+dd 0802211e1h
+dd 0cb9d1a03h
+dd 08c8edd61h
+dd 0644f5042h
+dd 0d956b21ch
+dd 0f3489456h
+dd 0c29cd09eh
+dd 05dfecf52h
+dd 06412d2a0h
+dd 0666a75adh
+dd 067307442h
+dd 070746abch
+dd 0e6b85039h
+dd 000eca462h
+dd 099a24317h
+dd 0cadb9a65h
+dd 052b80672h
+dd 0f06c6b15h
+dd 090ca4ca5h
+dd 0b889f7d4h
+dd 0867e7e17h
+dd 03ef1196bh
+dd 0d1dffad7h
+dd 0bc1aef68h
+dd 0eb02d8bah
+dd 023a60238h
+dd 07489b043h
+dd 03989bc23h
+dd 067bbe28eh
+dd 08e1cc1bdh
+dd 0e3f4fb2eh
+dd 04fbd50c5h
+dd 023697efbh
+dd 0208dd79fh
+dd 036fc3802h
+dd 000dd33a7h
+dd 0d232e51ah
+dd 097e4f483h
+dd 0dd4c0fcah
+dd 0f24d203bh
+dd 0f284500dh
+dd 06a2fda15h
+dd 0c31d4b90h
+dd 05ece1874h
+dd 0ee8f2528h
+dd 0b79202bch
+dd 0442900f2h
+dd 075037273h
+dd 04c738624h
+dd 02b178318h
+dd 0b6a0dde1h
+dd 082ad1e8eh
+dd 0657de418h
+dd 0a178819bh
+dd 0afa05102h
+dd 0c377855ah
+dd 02fe35c1ch
+dd 03e632002h
+dd 0e89d0cc9h
+dd 0b7c53ce6h
+dd 0914c337fh
+dd 0da700efeh
+dd 0e65cf00ah
+dd 00df70685h
+dd 05c88ee52h
+dd 0d53b721ch
+dd 00bfa47c5h
+dd 0de83f1eah
+dd 086e0f65bh
+dd 08e2b6d43h
+dd 07ed97a3dh
+dd 0066a769bh
+dd 0790e1e02h
+dd 0e6ba17ddh
+dd 0a87e6004h
+dd 0a674d1b8h
+dd 01698b9c3h
+dd 0fdf12b9fh
+dd 0c9b12165h
+dd 08f3e37c6h
+dd 0662d479ch
+dd 04a621fa7h
+dd 03d92af14h
+dd 035672652h
+dd 03ebba0a0h
+dd 0d2528dbah
+dd 0148ac754h
+dd 08f70d04dh
+dd 0336c0c19h
+dd 06319ccbfh
+dd 0c802d53eh
+dd 092a16607h
+dd 0574572e1h
+dd 039132732h
+dd 063e17860h
+dd 070c5e08dh
+dd 017dde8d8h
+dd 0314b6bceh
+dd 075a141b3h
+dd 009a18d8bh
+dd 0e6bd7d55h
+dd 0c1dd6348h
+dd 02dfd45d3h
+dd 09fb439beh
+dd 0a9ca460bh
+dd 034232a57h
+dd 09ee8d767h
+dd 07b948e65h
+dd 04a99fe6ah
+dd 09e76bd17h
+dd 049594b05h
+dd 00cb30d85h
+dd 0b66bac20h
+dd 0b70e4850h
+dd 0a0bb6ee0h
+dd 07f49b7ach
+dd 0c5b5ad1dh
+dd 06e36334dh
+dd 04ad55985h
+dd 0f56ece7ch
+dd 03fd3feffh
+dd 0c7b99576h
+dd 062d0c2beh
+dd 084c0a192h
+dd 0480122e0h
+dd 0ee8bf0feh
+dd 08717eec3h
+dd 0b65171beh
+dd 088e8c886h
+dd 0513dae4ch
+dd 06a68b8beh
+dd 0b952b2a4h
+dd 0d3cfd854h
+dd 0a7b0388dh
+dd 0f851802fh
+dd 008083eebh
+dd 04aefd67bh
+dd 0d050386dh
+dd 06e798b71h
+dd 0da1caa20h
+dd 04ae32a0ah
+dd 04d6b781fh
+dd 0e35cf61eh
+dd 0f00d715ah
+dd 0a7568061h
+dd 04c796318h
+dd 035e28eb9h
+dd 0fefa2796h
+dd 00ddcc948h
+dd 01797a033h
+dd 0e1c185c9h
+dd 09702cd0dh
+dd 0149f55d8h
+dd 0f7ff2509h
+dd 03be4c61eh
+dd 04303bdeah
+dd 0304c22dfh
+dd 0d0e26015h
+dd 05e2a0711h
+dd 0ecab3954h
+dd 0d29a5368h
+dd 04400227eh
+dd 0a685128ah
+dd 0a5d42817h
+dd 0e1ccd7f9h
+dd 07d759767h
+dd 01e10c965h
+dd 04a13406eh
+dd 052f23b2ah
+dd 0c3d15958h
+dd 037702dd4h
+dd 082f119e5h
+dd 09fa02ca5h
+dd 007a2b8a4h
+dd 0fa5a2c3eh
+dd 08115dda2h
+dd 0a6c143fch
+dd 0bf3707c1h
+dd 0276019c3h
+dd 02c60aedbh
+dd 09dbbb8a8h
+dd 0aee492d0h
+dd 08f558bd0h
+dd 0e1c1b041h
+dd 04c932365h
+dd 0819d332ch
+dd 04e233f90h
+dd 0f6df4cb2h
+dd 0ff56e098h
+dd 05a913d7fh
+dd 096fad187h
+dd 0097df8fbh
+dd 01e244395h
+dd 067f77d5dh
+dd 0302a0881h
+dd 0a05c6e20h
+dd 055dd783ch
+dd 06ff14e3ch
+dd 086dadc0ch
+dd 00853b641h
+dd 0d91f0004h
+dd 01b7a6451h
+dd 0a6a6ebd0h
+dd 0046d5beah
+dd 0870304e6h
+dd 07eb28b0dh
+dd 03234cf68h
+dd 02d4c5ad0h
+dd 0b6f2c123h
+dd 0341b2417h
+dd 09acab1ebh
+dd 08d447af3h
+dd 09872e6ech
+dd 0e5a88704h
+dd 0efbcb0fch
+dd 07127be31h
+dd 03ce5bc82h
+dd 09248b885h
+dd 06e1cbcdah
+dd 0ddbc2afah
+dd 0c067dfd1h
+dd 0e8edf116h
+dd 0b7161affh
+dd 070558c0dh
+dd 02be8fb51h
+dd 0cc72bb8bh
+dd 0daba2923h
+dd 03cb38530h
+dd 0b10478b5h
+dd 0b094e7b0h
+dd 08227c115h
+dd 089f87e60h
+dd 0ee2d810fh
+dd 0ef98cdf4h
+dd 0f0b652b9h
+dd 01d33585ah
+dd 02363c45eh
+dd 0ea575012h
+dd 0f60f2c62h
+dd 0d2063188h
+dd 0eaff3dfbh
+dd 023023edch
+dd 0dab57aa9h
+dd 0ad004665h
+dd 0a6673193h
+dd 0a9d24e37h
+dd 018b77e93h
+dd 0251150d9h
+dd 0d896b01ah
+dd 0bc0c9e7ch
+dd 0e07c97e4h
+dd 09d0ff1c5h
+dd 0bb50d134h
+dd 0968a4e96h
+dd 0d29aca45h
+dd 0ccd48246h
+dd 03f7f541ah
+dd 0f6a7fc48h
+dd 0a6c4bcd7h
+dd 0ae997dd9h
+dd 0c1abf0d8h
+dd 0c01dcc66h
+dd 06e31db97h
+dd 0ab2c388ah
+dd 0746cbdbfh
+dd 01c1b8da4h
+dd 02e549926h
+dd 0917649fdh
+dd 01f9dcefah
+dd 089daefb9h
+dd 0c21fbd4bh
+dd 0c1aff892h
+dd 0dd7eb343h
+dd 03246de6dh
+dd 03bef1939h
+dd 0e1785389h
+dd 07bf2be87h
+dd 033bf11f4h
+dd 0fea56b65h
+dd 03953268bh
+dd 049179050h
+dd 0641fde3bh
+dd 03f27cad6h
+dd 0f0ba6c89h
+dd 026281294h
+dd 0f59bea34h
+dd 03b04d315h
+dd 070ff32f3h
+dd 06ed7952bh
+dd 0a39ba757h
+dd 063f0c171h
+dd 05bc31fe7h
+dd 043ee078fh
+dd 012c68a04h
+dd 013c5aa65h
+dd 0b76eea68h
+dd 0d5de30f7h
+dd 034fb0244h
+dd 05c79ac70h
+dd 016058069h
+dd 0f369b8b1h
+dd 000bd4b6fh
+dd 0787744e7h
+dd 0f49764a3h
+dd 009ed591ch
+dd 04a2d99b2h
+dd 0d3a1c693h
+dd 010ced311h
+dd 073a6f0deh
+dd 0993d6ee8h
+dd 0258e46f1h
+dd 013fd72b2h
+dd 06f4207d4h
+dd 062704995h
+dd 0e1dad1cah
+dd 0783a485ah
+dd 0a541db0bh
+dd 02bf39928h
+dd 096ac8bbbh
+dd 03bc20350h
+dd 0adfb8ff8h
+dd 0d25b15f4h
+dd 0df88ea4dh
+dd 0acbf0755h
+dd 06f06bd86h
+dd 0883d997ch
+dd 0fa6ead89h
+dd 06294c92dh
+dd 01d4a638dh
+dd 0d712d3ebh
+dd 049858afch
+dd 024ccf626h
+dd 001c5c6dfh
+dd 0c4c11596h
+dd 0ef9382a4h
+dd 04d4eaa52h
+dd 0b126117ch
+dd 08fce10edh
+dd 05957d139h
+dd 0717fddf6h
+dd 0f5864d2fh
+dd 0d4a41d15h
+dd 0d45d17d9h
+dd 04201d2b2h
+dd 01875fe20h
+dd 0a85257f3h
+dd 0fc7eae37h
+dd 03ad810c2h
+dd 059f59f5dh
+dd 0211de933h
+dd 04d71c7d1h
+dd 099758ca9h
+dd 0cd0ce58eh
+dd 0b1a347c7h
+dd 01753bc9dh
+dd 029e15ac2h
+dd 07e64b351h
+dd 00644aa25h
+dd 0353b126eh
+dd 02fe18fcch
+dd 0926d9cdfh
+dd 0446b1effh
+dd 0cfd394c2h
+dd 077be8d45h
+dd 04ab67681h
+dd 05b89aa4dh
+dd 0759dcc5eh
+dd 06509571bh
+dd 0b7bb63d5h
+dd 084977b29h
+dd 05bfd2941h
+dd 02debbe77h
+dd 057b2ba82h
+dd 098d755cah
+dd 0fa3d414dh
+dd 028452127h
+dd 0a4948d91h
+dd 08118dce9h
+dd 0620ea017h
+dd 070fe38ffh
+dd 0868857f0h
+dd 07e56fc99h
+dd 09e8e7289h
+dd 02e197a26h
+dd 02a98165eh
+dd 059f9a15dh
+dd 03574403ch
+dd 085fe5c9ch
+dd 0136962a7h
+dd 0575c14b1h
+dd 0a8aa4d17h
+dd 01aef8704h
+dd 096b8d711h
+dd 0e8cc48cdh
+dd 0f1ef4c46h
+dd 06bf3c0bdh
+dd 07b95dcffh
+dd 0f93342b9h
+dd 04b9fdd61h
+dd 07cfec1fbh
+dd 05e19f045h
+dd 05122c9d7h
+dd 0b1a54b6ch
+dd 0a0a580c7h
+dd 02092fce8h
+dd 0ed21caa7h
+dd 005ab2ea8h
+dd 0600a05d6h
+dd 00e3fbf68h
+dd 0e84a2150h
+dd 0766b3eb8h
+dd 00c3335a4h
+dd 0272de6efh
+dd 08404b4d3h
+dd 03c566ae9h
+dd 0b29632c9h
+dd 0951853d1h
+dd 0046eb75dh
+dd 07a821b49h
+dd 0f4fc60f1h
+dd 07c73824bh
+dd 073de723ch
+dd 049e69619h
+dd 0599cd7d2h
+dd 0193526b1h
+dd 0240e66b8h
+dd 06d99074bh
+dd 02d25df71h
+dd 0705af958h
+dd 023a81886h
+dd 026972394h
+dd 0802ad9d6h
+dd 06b2a14d8h
+dd 075318cc9h
+dd 0592ba5fah
+dd 0e1de1fe9h
+dd 0fffba1d9h
+dd 09aa5638dh
+dd 07790bde0h
+dd 0dadd1cbbh
+dd 0a1fe57adh
+dd 01406af32h
+dd 08d2e65eah
+dd 0b3f72ea0h
+dd 020074407h
+dd 05406c5bah
+dd 09d30325eh
+dd 05b9d4a44h
+dd 0f49f5d9ch
+dd 045f70e6bh
+dd 0751f8f24h
+dd 0e8e2877dh
+dd 081064927h
+dd 0497b2afch
+dd 0732e1dd8h
+dd 09492b076h
+dd 07eb21245h
+dd 0f1c272cdh
+dd 04fbad341h
+dd 08d6852c7h
+dd 077202ac2h
+dd 0a21ca045h
+dd 056bab582h
+dd 039c0129fh
+dd 00f1bcc44h
+dd 03d35b8e8h
+dd 00bd8260ch
+dd 07e914be5h
+dd 07e72df62h
+dd 0be91e0fch
+dd 03c5fca79h
+dd 0262122ech
+dd 0014df04dh
+dd 0d06675cdh
+dd 034b49e83h
+dd 015346d9bh
+dd 037a6fd61h
+dd 07b724935h
+dd 009711144h
+dd 0d23e1c9dh
+dd 0e8fc3c2ch
+dd 09dcd2a2eh
+dd 09d12a94bh
+dd 0efef14beh
+dd 000e0075dh
+dd 039f38120h
+dd 0c20baf1dh
+dd 0c398d074h
+dd 0a7591e30h
+dd 0426b69fdh
+dd 087334dfch
+dd 03c9dc0a5h
+dd 0d8e4b0f8h
+dd 0513ed6adh
+dd 019b31558h
+dd 016857eech
+dd 07831d9c8h
+dd 01d9e1bdfh
+dd 0467d1022h
+dd 0cb9aa9a3h
+dd 05938fcffh
+dd 0d46105d0h
+dd 03f3283b3h
+dd 03a03b7f6h
+dd 0a081f790h
+dd 072cef2f5h
+dd 0f3fdb36eh
+dd 05b0ac28ch
+dd 0669c7cc9h
+dd 0de5a1395h
+dd 071048824h
+dd 0035bb69bh
+dd 07f9cb181h
+dd 05d0f0d70h
+dd 0b53737d1h
+dd 03b130766h
+dd 0d6e7e4fbh
+dd 0fe454f3ch
+dd 0c18267fdh
+dd 0290eaa93h
+dd 0e2ec805eh
+dd 0879c6016h
+dd 034a88b23h
+dd 0b4a4dd1dh
+dd 0f6be076dh
+dd 0a62d4223h
+dd 0640e4a03h
+dd 04d2dbd9fh
+dd 071bff929h
+dd 0a7a59c00h
+dd 033d483f4h
+dd 00b605bcch
+dd 0eb92c26bh
+dd 0015decbbh
+dd 047ed453eh
+dd 03c01191fh
+dd 0ac22eb9bh
+dd 01e825eabh
+dd 0820d43a1h
+dd 084668dd8h
+dd 0200ae7f8h
+dd 01477264eh
+dd 099027432h
+dd 00d9d7bc8h
+dd 05ac7e761h
+dd 07c007f96h
+dd 04c3ff9e1h
+dd 0a5c3a111h
+dd 05f7beebbh
+dd 05f64efd1h
+dd 051ba1a14h
+dd 000426970h
+dd 036569471h
+dd 02fe7ddc9h
+dd 0b85d95c5h
+dd 03052efdbh
+dd 09b4717bdh
+dd 0d59b1553h
+dd 0c2bd7808h
+dd 0079ddd9fh
+dd 019a567afh
+dd 07783caadh
+dd 051188413h
+dd 0f664f497h
+dd 0819374eah
+dd 0368b0147h
+dd 0dbffcf42h
+dd 012f16623h
+dd 07d7580e2h
+dd 087dc2674h
+dd 0bc5252cdh
+dd 07ddabde5h
+dd 08e8a72c9h
+dd 082cd088eh
+dd 0087c7966h
+dd 0060e60e1h
+dd 0b9219114h
+dd 01b0eeaf9h
+dd 0900ddac3h
+dd 084b618deh
+dd 00188560ch
+dd 03831e858h
+dd 053e53ffeh
+dd 0604e2bc5h
+dd 01cb0afb6h
+dd 0a6fb5491h
+dd 0f2b2abddh
+dd 0acae8e01h
+dd 0d440967ch
+dd 0dc867c9ch
+dd 014d5b841h
+dd 03373d28bh
+dd 02e847ff0h
+dd 058785eb7h
+dd 0d3870199h
+dd 0a6f36e31h
+dd 0da2af2fah
+dd 000613595h
+dd 0d63aedd0h
+dd 0bd51993dh
+dd 0221baad4h
+dd 011ada6f3h
+dd 0486e7f79h
+dd 0388542b2h
+dd 0206c4691h
+dd 0d06975f1h
+dd 0b3d1d562h
+dd 0e4693d5ah
+dd 0979d866dh
+dd 05d4ea882h
+dd 0dd5ca4f6h
+dd 09ac18187h
+dd 0b870ac0dh
+dd 012479ae7h
+dd 0c0b81746h
+dd 046f86731h
+dd 0777b6e9ch
+dd 0080e0bc6h
+dd 0c17958d8h
+dd 097a5e32bh
+dd 0f1daa606h
+dd 097569180h
+dd 0de2b45a3h
+dd 0d611fd9ch
+dd 0f841be69h
+dd 024dbcaebh
+dd 053cb5d31h
+dd 0593e5fc3h
+dd 0f3edb2d5h
+dd 0d5593844h
+dd 0a5f6547dh
+dd 018c1dadch
+dd 0bdec67e7h
+dd 076fb17d0h
+dd 0ebb4e7d0h
+dd 0f4b89b8dh
+dd 09a7d7bceh
+dd 0a2b4c092h
+dd 01b8e5dcdh
+dd 092d5836fh
+dd 0682b7fc1h
+dd 0c7b9da2ch
+dd 08404e7b6h
+dd 0c674fee5h
+dd 0d24777e8h
+dd 04e5a8d22h
+dd 0e203de9dh
+dd 034ba149ah
+dd 0ca291247h
+dd 05323be69h
+dd 00a0c4574h
+dd 00d65ebd1h
+dd 000145078h
+dd 072234f1ch
+dd 0fbb6a11fh
+dd 03872e5aah
+dd 03b6624d7h
+dd 03fc4f505h
+dd 054c22b40h
+dd 03a7f8768h
+dd 091c6e657h
+dd 053ef510ah
+dd 033275ab6h
+dd 0711f4357h
+dd 08830b7ceh
+dd 0af61c703h
+dd 0812554b4h
+dd 0ee3f9323h
+dd 0c86f724dh
+dd 0894d47e6h
+dd 060a71648h
+dd 06e8df697h
+dd 06fa492b8h
+dd 0c0cbff1fh
+dd 0a2c6f963h
+dd 0f745ec19h
+dd 01a5d0fadh
+dd 0046143e1h
+dd 0bf0bdb02h
+dd 0f24d8aa8h
+dd 0410306cah
+dd 08145ef7bh
+dd 070e1fabbh
+dd 03a8df9edh
+dd 0102d97c3h
+dd 0a5a708ceh
+dd 0324855f2h
+dd 080422cb2h
+dd 0a79512f5h
+dd 0f276feaah
+dd 0d6af0305h
+dd 01f19c0adh
+dd 0a8a688f7h
+dd 04de4dd32h
+dd 02283142eh
+dd 086ddf4e4h
+dd 05f2f01a8h
+dd 08e0d9568h
+dd 0b79fba40h
+dd 0cb78f2efh
+dd 0bb9ef2f1h
+dd 07032275fh
+dd 0b66adb54h
+dd 0d6762c03h
+dd 0baa8b728h
+dd 0ece46ee0h
+dd 06fc3b495h
+dd 0bda495f8h
+dd 07b6a886eh
+dd 06263ca29h
+dd 0124ab45ah
+dd 00b4b2b12h
+dd 0752b5477h
+dd 05b355442h
+dd 01656a88bh
+dd 02227f078h
+dd 0f4322cadh
+dd 0be568b7ah
+dd 02bfe66dah
+dd 015c51810h
+dd 0243b968eh
+dd 0fad42c49h
+dd 08baa8d8eh
+dd 020a9f9bbh
+dd 00b171c5eh
+dd 0bcac555bh
+dd 0a98ca096h
+dd 0018e6287h
+dd 0de9caf7dh
+dd 063732b40h
+dd 0b5b54d70h
+dd 081e5d34eh
+dd 099bc760bh
+dd 0019762eeh
+dd 0f1fe6c97h
+dd 020b82e22h
+dd 05541ae1eh
+dd 0a0392cceh
+dd 0ffe380fch
+dd 021496046h
+dd 0391e41a6h
+dd 0d4344fc6h
+dd 00d6d50c2h
+dd 08ec97591h
+dd 039e9412bh
+dd 08827619fh
+dd 0b21747e8h
+dd 0183d5fddh
+dd 08ccf1c01h
+dd 0bc6d7cd4h
+dd 0e42427c4h
+dd 067b8cd4eh
+dd 065fcc288h
+dd 021f34671h
+dd 0d0e26c42h
+dd 094458721h
+dd 082207594h
+dd 0f9ee96ach
+dd 0438faabfh
+dd 02999594bh
+dd 0df670cc4h
+dd 01983f8c2h
+dd 080b7136ch
+dd 0f3dd3103h
+dd 0931f1403h
+dd 01d2b79c8h
+dd 006e5cba5h
+dd 0364a4268h
+dd 09b7afe35h
+dd 001b02dc4h
+dd 000e6c5a2h
+dd 0218f9f2eh
+dd 012f93377h
+dd 0b063b124h
+dd 070320071h
+dd 02ac5a5e5h
+dd 055848cf0h
+dd 003026b9fh
+dd 0108b04fah
+dd 099f82efbh
+dd 0ef1eb8e9h
+dd 0b31dd9c5h
+dd 010db4b60h
+dd 0b3baa230h
+dd 01a3475bfh
+dd 055bb0916h
+dd 0ec074dfeh
+dd 0e5befa0fh
+dd 0e139b3bfh
+dd 00e3cf4b3h
+dd 08e4dcd66h
+dd 0865a2b75h
+dd 0eacf0899h
+dd 0884b7d23h
+dd 0d1784c1eh
+dd 0b74c9141h
+dd 02121d7e2h
+dd 07ec65c81h
+dd 0b42df3fbh
+dd 0c350abd4h
+dd 0a48c8f5bh
+dd 05d22f0d7h
+dd 058256675h
+dd 0506c58e1h
+dd 021d0adb9h
+dd 04f647514h
+dd 00f1e4d7dh
+dd 09d5478b0h
+dd 0aed4ed64h
+dd 0b117aae9h
+dd 0aa2433e0h
+dd 0dabd30adh
+dd 074b6272fh
+dd 0fa7958f6h
+dd 060735d5bh
+dd 086539075h
+dd 0f8d3ecc2h
+dd 0df663537h
+dd 0e123deb7h
+dd 074578091h
+dd 080231686h
+dd 08d799b44h
+dd 0b535aaaah
+dd 057c7720ch
+dd 05f444fdah
+dd 0b79630a8h
+dd 0af2d0086h
+dd 02b834977h
+dd 0ab1ba6f3h
+dd 0a128eb5fh
+dd 01076ee26h
+dd 0b6405c5ah
+dd 014eec942h
+dd 0b6b8dbc4h
+dd 06a93671fh
+dd 0be6bb5e1h
+dd 0b9f627e0h
+dd 059b03fe6h
+dd 032c78bc8h
+dd 049de1131h
+dd 05a30c235h
+dd 00417f9cbh
+dd 0652b79bdh
+dd 0d253de36h
+dd 09e42dee2h
+dd 073ad0ab9h
+dd 0a473f4a9h
+dd 0434a05cah
+dd 0a3fa84a9h
+dd 062fbdde8h
+dd 0c80461c3h
+dd 047e6e795h
+dd 0847e4317h
+dd 04f070ca2h
+dd 0799b60b5h
+dd 07b3b8c46h
+dd 0203ebcc0h
+dd 0fa948c36h
+dd 01935ff04h
+dd 02e1bb060h
+dd 0b2d03a4ah
+dd 033468b4dh
+dd 0675edcb1h
+dd 0bec0147eh
+dd 0e6cda658h
+dd 0d98089c8h
+dd 0861ccab4h
+dd 0bc137ce1h
+dd 02877fb3eh
+dd 018baecadh
+dd 05fb29a36h
+dd 0ec4fa7cdh
+dd 0aac6c4e9h
+dd 011025955h
+dd 0c51e19beh
+dd 0cdfb8fedh
+dd 04fd83beah
+dd 0c5e7fde1h
+dd 09f8a785ch
+dd 058b8a731h
+dd 0a81553d6h
+dd 0d66ebe62h
+dd 091beb804h
+dd 02f8a5473h
+dd 0e6cbf993h
+dd 05c69e8cah
+dd 0668c67eah
+dd 0bf518261h
+dd 0fc2089beh
+dd 03368f7f4h
+dd 0e78bad15h
+dd 0b09ccf5ch
+dd 0b94f6a8dh
+dd 0c046a9e1h
+dd 03176fe00h
+dd 02a0cbf6ah
+dd 09db3fb72h
+dd 0ac5bbd72h
+dd 0959c677dh
+dd 0f7ce5caah
+dd 03809f66dh
+dd 064de089fh
+dd 073fd3ab1h
+dd 019cce261h
+dd 0105e4831h
+dd 0535f122eh
+dd 0b61a0274h
+dd 0f453fd43h
+dd 07a7506e5h
+dd 001d24b45h
+dd 016799484h
+dd 03b459ec8h
+dd 0cd2423a9h
+dd 08a606736h
+dd 05f64e228h
+dd 0adf1e117h
+dd 061d200a3h
+dd 0d32f66c9h
+dd 0f5957798h
+dd 002036cadh
+dd 0c37cd455h
+dd 0cd5962e9h
+dd 07dce670dh
+dd 037cbbc07h
+dd 0a5613df4h
+dd 0a53171bdh
+dd 07fdc6b68h
+dd 0e4d570d5h
+dd 01a33f99fh
+dd 06e1d9dach
+dd 0682a70a1h
+dd 0b975574ah
+dd 0414662a5h
+dd 041d25bf6h
+dd 0906fc12ah
+dd 05a3b41e3h
+dd 019a0ff17h
+dd 07adc469dh
+dd 0b681302ah
+dd 09ee27c85h
+dd 0c40a64e6h
+dd 038b54564h
+dd 01c7e3dadh
+dd 066c3799bh
+dd 01f3662f4h
+dd 0f67e09d1h
+dd 0f6681ccah
+dd 06701f3b5h
+dd 0d8234ac1h
+dd 022cd0dc1h
+dd 032c32f2ah
+dd 0333525fbh
+dd 0b5f0fd65h
+dd 0d87a4b40h
+dd 04d6fbaa9h
+dd 0c069a5abh
+dd 07324a5bah
+dd 0a827460eh
+dd 06394f5c5h
+dd 04e6c2e36h
+dd 06d482a4bh
+dd 04bc35902h
+dd 0f173c428h
+dd 076b73b50h
+dd 037c5c0c5h
+dd 0c125b2a8h
+dd 062c2a3eeh
+dd 095d46d57h
+dd 041da1a57h
+dd 0c7d07c9fh
+dd 0cd6a49d7h
+dd 000eafe05h
+dd 09e1b2041h
+dd 0fc947ac7h
+dd 0cbcdbbe9h
+dd 0113fb257h
+dd 04e830408h
+dd 0c76b3bd0h
+dd 07e0b0101h
+dd 011ab9813h
+dd 05546c116h
+dd 0325e6e3ch
+dd 0d9cb0b42h
+dd 032a04780h
+dd 05e4e0cf7h
+dd 0ac763e2ah
+dd 03c22d3edh
+dd 0718dbabbh
+dd 016992abah
+dd 030f9831bh
+dd 05bf2934ch
+dd 0c91c7379h
+dd 0aa5e9277h
+dd 0dde6feb2h
+dd 01b2af101h
+dd 09fd097d7h
+dd 09b61631dh
+dd 0afda042bh
+dd 0cd5fa5cah
+dd 0528c62c4h
+dd 001570f93h
+dd 0d8b29302h
+dd 02029e800h
+dd 0603f4f3ch
+dd 0ea90096ch
+dd 04f8607ech
+dd 0320465fdh
+dd 0df68db5bh
+dd 06388139dh
+dd 08c92062ah
+dd 03e9df6e0h
+dd 0e5da1053h
+dd 0a7c0d25bh
+dd 04f765d77h
+dd 014ddaad8h
+dd 05078ba20h
+dd 0d2ab8a35h
+dd 0f0e22c19h
+dd 0cb9f02feh
+dd 08970789ah
+dd 01ad82b03h
+dd 05b743320h
+dd 0e76db311h
+dd 04334e638h
+dd 038a1a626h
+dd 0f04c1bfeh
+dd 0542e8c8eh
+dd 08289d6d8h
+dd 073fd8b1fh
+dd 04d2e1311h
+dd 0b3977421h
+dd 02aae82a8h
+dd 0e6505389h
+dd 047240458h
+dd 013357e02h
+dd 0fdec239bh
+dd 0c8bf6803h
+dd 0beb52b1fh
+dd 038171de8h
+dd 05d6a1769h
+dd 01d53e0b4h
+dd 045b199c8h
+dd 0ef9ad09fh
+dd 054b8f6abh
+dd 0dc56182fh
+dd 028e08641h
+dd 03bb5aa02h
+dd 01fc03102h
+dd 0940d3d54h
+dd 0227920bch
+dd 069da61efh
+dd 0246705e1h
+dd 07280fd67h
+dd 0e22684c9h
+dd 0425163c7h
+dd 0854818ffh
+dd 0f3913f65h
+dd 01dcdb51ah
+dd 0d9f73d13h
+dd 00050b367h
+dd 0560c88b5h
+dd 0b3c4e421h
+dd 00c277367h
+dd 05da7301ch
+dd 0bd8c0b36h
+dd 03e14fa0eh
+dd 08e295c02h
+dd 0714bea8bh
+dd 0e9653490h
+dd 0f41c5299h
+dd 0e757182eh
+dd 074672613h
+dd 0f6d2f672h
+dd 0fca4a136h
+dd 0708ee3f0h
+dd 0d713d6c9h
+dd 05c045b76h
+dd 0e790ea28h
+dd 0b36f7699h
+dd 0a83cb9cdh
+dd 0e92af84eh
+dd 0bb3d08fah
+dd 0c66b0d28h
+dd 0f4f9a65fh
+dd 05ec93282h
+dd 064ae99e8h
+dd 0b7bc5797h
+dd 0bf3f9a7bh
+dd 06397e57eh
+dd 08f1e7c70h
+dd 0cf269bb0h
+dd 0f430b139h
+dd 0ca3cb157h
+dd 0bcc33194h
+dd 0784f0703h
+dd 040821077h
+dd 02ecf4322h
+dd 09bc0f179h
+dd 0d751702dh
+dd 00e6e891eh
+dd 08ac9a3fch
+dd 0179d3f03h
+dd 05ffa848ah
+dd 0596def54h
+dd 08d034feah
+dd 03a0fde37h
+dd 06ddf0f29h
+dd 03f9da987h
+dd 027905303h
+dd 0726a3a42h
+dd 0efd45117h
+dd 018e60733h
+dd 036f881ffh
+dd 03bf6f8efh
+dd 014f0d75fh
+dd 0847e2a5dh
+dd 02ac2b19bh
+dd 002690fd9h
+dd 0404d5953h
+dd 07c77062ah
+dd 0d945b0bfh
+dd 04246993ah
+dd 0c9b13b5dh
+dd 0c2e0eb92h
+dd 063d15113h
+dd 0514e161dh
+dd 0f6ac6f64h
+dd 07c57095ah
+dd 0e2f8671dh
+dd 0dfae5758h
+dd 077f82543h
+dd 0d904b140h
+dd 044227b41h
+dd 054714a94h
+dd 0b27d8846h
+dd 0f6725c8eh
+dd 05d10e4b1h
+dd 0a65539e2h
+dd 0f758c432h
+dd 0fcadb0c5h
+dd 00883b445h
+dd 05491decch
+dd 072fc4ca8h
+dd 01077f6c4h
+dd 0c9d6a519h
+dd 083eafe18h
+dd 0f5b331f7h
+dd 0c9636ed2h
+dd 048ef6938h
+dd 0d662b970h
+dd 0a34b2b5fh
+dd 0c3a9d55dh
+dd 0a697fc1eh
+dd 00d83be09h
+dd 0d3721d79h
+dd 08a94f253h
+dd 006c7bdf5h
+dd 0b0aeb6a5h
+dd 00edb356ch
+dd 03bc312c3h
+dd 0957aca6dh
+dd 0ae0a899fh
+dd 0fd8d3075h
+dd 09b23e27dh
+dd 00c4230f5h
+dd 0b7f985e0h
+dd 059c3482dh
+dd 0effcd1a8h
+dd 069963fcbh
+dd 0381f49dfh
+dd 0d0fd9fc5h
+dd 092da5c99h
+dd 03b7ff3deh
+dd 074b556e0h
+dd 0d4af6e67h
+dd 03693bdd4h
+dd 002da3adah
+dd 056f70c29h
+dd 0affd1e99h
+dd 0a2ba702fh
+dd 01aed5c51h
+dd 099a10faah
+dd 0e09ef077h
+dd 040d8c3afh
+dd 0a0ade579h
+dd 054a20079h
+dd 0b75ca64ch
+dd 08fbaeab3h
+dd 0e017cd98h
+dd 077d479e1h
+dd 0392f0de8h
+dd 04c3b9fd8h
+dd 0dda03c8dh
+dd 0b17ad8d1h
+dd 0548d36f9h
+dd 0d8de85e8h
+dd 0f7c700d5h
+dd 074039104h
+dd 0be67647ch
+dd 0ce58d05ah
+dd 0b885885fh
+dd 0c9a3a408h
+dd 0943a5890h
+dd 0364c9f36h
+dd 0a990bdafh
+dd 00083ec6eh
+dd 07777d11fh
+dd 062a58baah
+dd 069195324h
+dd 052e3ea64h
+dd 0c5727e6fh
+dd 047225ecah
+dd 03d3311eeh
+dd 033b2964eh
+dd 0db459ccch
+dd 03b9b7d37h
+dd 07f8917ach
+dd 0f72c4f8dh
+dd 008667803h
+dd 0b90cd72eh
+dd 0fc21b5abh
+dd 02483ae27h
+dd 005dffe99h
+dd 0f4f260fah
+dd 07024fe60h
+dd 0934199d9h
+dd 00c1f4aceh
+dd 0503280dfh
+dd 038e57377h
+dd 0261746e3h
+dd 01ab31f8fh
+dd 0a04b0be2h
+dd 0d06b7a24h
+dd 0293cf333h
+dd 05d673405h
+dd 0bd7ef49dh
+dd 016d486cbh
+dd 0e0bda6fch
+dd 0283e11c2h
+dd 076d364ach
+dd 0e02349d3h
+dd 07c938f12h
+dd 0b6764bc7h
+dd 02c8753b6h
+dd 0238ec705h
+dd 01ace2e48h
+dd 0a84dcd17h
+dd 0205a0f46h
+dd 06e67a3a9h
+dd 00a837607h
+dd 0a564579ch
+dd 0f2f00b7ch
+dd 0bed493e1h
+dd 02011b731h
+dd 0fed8ee4bh
+dd 077bc2684h
+dd 09d5f669fh
+dd 0be002b4eh
+dd 0af65d32dh
+dd 089585f01h
+dd 08b28bd92h
+dd 07a3bda4bh
+dd 005062bebh
+dd 0846adcaah
+dd 02f1715f7h
+dd 0dfde0f1bh
+dd 042d2cc17h
+dd 0b2ea11d5h
+dd 01c9b8275h
+dd 0b761580fh
+dd 0cb389322h
+dd 00dacd5cah
+dd 0b98bed95h
+dd 02bc619e7h
+dd 081c7502eh
+dd 0c92c4940h
+dd 0c2e8c37ah
+dd 0f1be8148h
+dd 0a8b05983h
+dd 03e71a8d0h
+dd 004db0838h
+dd 0f9127e84h
+dd 0b2e58ed2h
+dd 0817a7fc7h
+dd 0aee5892eh
+dd 041662995h
+dd 06a4af455h
+dd 0116dc122h
+dd 0ecd5a91fh
+dd 0561a133bh
+dd 07639116bh
+dd 0a9167605h
+dd 0323181f4h
+dd 023be3f00h
+dd 0f49f2a08h
+dd 0184ddbd0h
+dd 00217be84h
+dd 07812c5c9h
+dd 02ec65b9fh
+dd 05dbe9156h
+dd 0797c2fc1h
+dd 0c98d4fa8h
+dd 0dbb8b2a9h
+dd 0e396b90ah
+dd 095215ad2h
+dd 0e24a5891h
+dd 007a4e011h
+dd 0ef14af9fh
+dd 02d8bcf7eh
+dd 092b3d164h
+dd 04eb59282h
+dd 0d8c7c7aeh
+dd 0c6eef1edh
+dd 0a8a06491h
+dd 044221316h
+dd 058770707h
+dd 09530f532h
+dd 08bd23680h
+dd 023fa3455h
+dd 03f9c8666h
+dd 09535503ah
+dd 088637087h
+dd 0f8405531h
+dd 0c9f04853h
+dd 01a45e7fbh
+dd 0967c1d49h
+dd 073d40aa7h
+dd 0c175795dh
+dd 0b0991ca5h
+dd 0d82003dch
+dd 035099a25h
+dd 076ee5df1h
+dd 0bcd480b0h
+dd 0f711861dh
+dd 02dc1b664h
+dd 058b15b11h
+dd 085f8e61ah
+dd 0bbdd7b9bh
+dd 0a07b1074h
+dd 03f43c25eh
+dd 0b89851c0h
+dd 0cc21394eh
+dd 0eee466f8h
+dd 0525b4edfh
+dd 0fc0bdc93h
+dd 0eb57599fh
+dd 062b9ebffh
+dd 0035884b2h
+dd 0dfcb6af1h
+dd 0e72309dah
+dd 063867d2bh
+dd 05eeaf7eeh
+dd 03580465ch
+dd 0b4eef51bh
+dd 0d0aa04cfh
+dd 00b3498a8h
+dd 01023f358h
+dd 01b900265h
+dd 0a6451e15h
+dd 076810a4eh
+dd 0405e2d31h
+dd 0d92da8b0h
+dd 094f16174h
+dd 0c75c955dh
+dd 068c326bch
+dd 0a545cc26h
+dd 0fb46f3ffh
+dd 082adbdcdh
+dd 0e7a60d1fh
+dd 04dbe0068h
+dd 013341a93h
+dd 04aa171d4h
+dd 046de3a77h
+dd 0298a5f52h
+dd 0227b6f41h
+dd 0cdb0c275h
+dd 03419be5ah
+dd 02d5087bbh
+dd 0818256b1h
+dd 0f6abc195h
+dd 0cc711949h
+dd 02314c1bah
+dd 0fb5caf0dh
+dd 00975e3b5h
+dd 04163b32eh
+dd 0f3cf8417h
+dd 0dfc5ebdch
+dd 02f1210dbh
+dd 02970edbbh
+dd 00665b6b7h
+dd 00728732bh
+dd 0624652b5h
+dd 0d411c237h
+dd 005df3007h
+dd 022989ee0h
+dd 0510991d6h
+dd 0f246edc6h
+dd 0d67c7dfch
+dd 04df76a8dh
+dd 03db19746h
+dd 078b65979h
+dd 09ec1679ch
+dd 0896e6896h
+dd 0983e977fh
+dd 0869775e5h
+dd 00148ba42h
+dd 0706f4105h
+dd 05e5ca887h
+dd 039af218fh
+dd 027e84cc6h
+dd 057f858f6h
+dd 082a2753bh
+dd 0443381f6h
+dd 02cdb9a0eh
+dd 0b359ca46h
+dd 0d54f2c2fh
+dd 0efe37e1ah
+dd 0ce02321eh
+dd 0575b13c4h
+dd 0112d7922h
+dd 044a099e3h
+dd 080c55394h
+dd 079a59d63h
+dd 055962380h
+dd 05389b6b1h
+dd 0ce7c67bdh
+dd 0fda06391h
+dd 07e5b6c76h
+dd 01d28ed46h
+dd 0f291ec99h
+dd 09c49b37dh
+dd 093972bbfh
+dd 07d8811b1h
+dd 075e00639h
+dd 01c1f219eh
+dd 06857f116h
+dd 0c37474d2h
+dd 07ab21388h
+dd 05ace9333h
+dd 0e6ee3ae7h
+dd 0066805feh
+dd 0faf04bfeh
+dd 09b5206e1h
+dd 099907d31h
+dd 0c443add2h
+dd 01f8f61bdh
+dd 03fe1d877h
+dd 0c00bc1d4h
+dd 0fe35a330h
+dd 051b2a4d7h
+dd 08275c684h
+dd 03e72c01bh
+dd 0d2de1c7ah
+dd 0ce4f66f6h
+dd 044c8d82bh
+dd 041c77c96h
+dd 08ebfb68ch
+dd 0d99dc4b8h
+dd 01d2267c1h
+dd 0b7b9655ch
+dd 043b2321fh
+dd 02fb02957h
+dd 0552af276h
+dd 0f722ef22h
+dd 068e1cdabh
+dd 013053b27h
+dd 0471bccb8h
+dd 0e778e3f0h
+dd 0b389e1c3h
+dd 0c4904034h
+dd 0c32fac3ch
+dd 09a74062ah
+dd 07d6126b0h
+dd 074e7bb26h
+dd 0d3085db1h
+dd 0ede7296bh
+dd 05f14b534h
+dd 0696f0f74h
+dd 0a395db7eh
+dd 05ff95df5h
+dd 01e1c0625h
+dd 02e2d1945h
+dd 09abbf6deh
+dd 08a183855h
+dd 044f77f2fh
+dd 07ee59265h
+dd 0eb02c3dfh
+dd 00af76485h
+dd 0c62ff281h
+dd 0b7f7d31eh
+dd 0984eb73eh
+dd 09b64ff84h
+dd 023525340h
+dd 0a59619a8h
+dd 0970b0bb3h
+dd 0de01a79ch
+dd 0f291bd45h
+dd 0324ee907h
+dd 07f0ff6b2h
+dd 0ec8ad6c3h
+dd 00f459622h
+dd 079715631h
+dd 06050a15fh
+dd 09371de6ah
+dd 020e3a67ch
+dd 04cf331b2h
+dd 05127391eh
+dd 01400b53fh
+dd 0672463ffh
+dd 05bf733ffh
+dd 0dfdcf265h
+dd 0f74f46fah
+dd 0ab17fd1fh
+dd 05481c334h
+dd 0fc6e9072h
+dd 0d59b642fh
+dd 035c84953h
+dd 0dae7836ch
+dd 021f90f9eh
+dd 0d46dadf2h
+dd 08185fa5ah
+dd 0dcee6d2dh
+dd 084ce82f5h
+dd 0a8df7ddah
+dd 026db8564h
+dd 0e9854587h
+dd 0a1b0bb13h
+dd 08dbb8342h
+dd 058cc4816h
+dd 0dae5fa69h
+dd 02cbcd7a5h
+dd 056e2fcd7h
+dd 0b75ae2c2h
+dd 0af04c67eh
+dd 006e3fd1eh
+dd 0c52e4236h
+dd 05dbde978h
+dd 05934a6bfh
+dd 0bdfd2e05h
+dd 0ebd2c9fbh
+dd 0ee29b7d8h
+dd 01bfd8d88h
+dd 07f684ab6h
+dd 0b205bd9eh
+dd 0ed282c62h
+dd 0f8ff0138h
+dd 0e1856247h
+dd 03d5f2e26h
+dd 0c477bad6h
+dd 0fe63568dh
+dd 0c5b39b4bh
+dd 0b2df0919h
+dd 07970db40h
+dd 00da19927h
+dd 0a7552e1eh
+dd 01f5597e5h
+dd 013f9384dh
+dd 0351b2b97h
+dd 0b67ef792h
+dd 05edbdcb2h
+dd 08e4275e2h
+dd 0536b130fh
+dd 0ba551b32h
+dd 0f1edf770h
+dd 047e01fc4h
+dd 0f59f2e33h
+dd 01521373ch
+dd 08dc8a12eh
+dd 04494a03eh
+dd 0a06630e9h
+dd 0f5706666h
+dd 0d05395eeh
+dd 082ee17a8h
+dd 081d93fdeh
+dd 0b7b2c5f6h
+dd 057388ee8h
+dd 010b660ech
+dd 0f71a0e4bh
+dd 04f14aaceh
+dd 003878f0ah
+dd 0d79c96d7h
+dd 03a6a940ah
+dd 0e47af7c6h
+dd 01df70538h
+dd 06063d5d5h
+dd 0f57ce3beh
+dd 03b4a52fah
+dd 06206ba68h
+dd 0ee3c15dfh
+dd 01af25459h
+dd 031dbae05h
+dd 063490e34h
+dd 0db159112h
+dd 0a2b91d27h
+dd 0a64f9870h
+dd 00704af7dh
+dd 0d111cd5fh
+dd 0c1560f75h
+dd 00134a9f1h
+dd 01aca3a3ah
+dd 02e156d8ah
+dd 08de5659ch
+dd 045d8aff0h
+dd 0eaf6be3ah
+dd 07effe1e6h
+dd 0497d40f8h
+dd 071a2de45h
+dd 0ca315654h
+dd 0dfd7fa73h
+dd 0470ee621h
+dd 0d53fd83bh
+dd 04e39b412h
+dd 0b13147bah
+dd 0a0796278h
+dd 0abd6c697h
+dd 0b2de9125h
+dd 075bf334bh
+dd 0bfb52f77h
+dd 0d50f06e9h
+dd 08629756ah
+dd 0d49030dfh
+dd 05505e79dh
+dd 04d2e1c47h
+dd 077f00553h
+dd 0adabbdf2h
+dd 093d04e2ah
+dd 0a829e036h
+dd 0b1a5b717h
+dd 088a675ceh
+dd 039b87783h
+dd 072a81f73h
+dd 0d15ef463h
+dd 08cdd0b01h
+dd 0a1cb6643h
+dd 0b2b199d8h
+dd 0348a9a83h
+dd 06e171449h
+dd 02fc4fe58h
+dd 071d1ecb3h
+dd 047528ba8h
+dd 0fbbaecbfh
+dd 001239665h
+dd 022785a7bh
+dd 06f05b108h
+dd 0b5f60c6fh
+dd 08400be5dh
+dd 072b18032h
+dd 0e41379c7h
+dd 07ef698a2h
+dd 0c2f53121h
+dd 001b5b9b9h
+dd 0efb7307fh
+dd 0b6cdd855h
+dd 0de0d0c3bh
+dd 0b65c9abfh
+dd 0ab39ba50h
+dd 02a874107h
+dd 0a47e2169h
+dd 0ca124badh
+dd 0a05ddd14h
+dd 06b0b225dh
+dd 0b556039dh
+dd 06ad30896h
+dd 0ca65f7deh
+dd 09c81557dh
+dd 002a17cb5h
+dd 0762c2a9fh
+dd 07d9cfc5eh
+dd 0332b9542h
+dd 09b74e2c8h
+dd 06b7dff2eh
+dd 064aa1c21h
+dd 00c6e84ech
+dd 0259311f3h
+dd 01d7fbf31h
+dd 0b5ad4f98h
+dd 040016736h
+dd 09aae1964h
+dd 05666201ch
+dd 0357dcb86h
+dd 0083532bdh
+dd 06501975fh
+dd 092777721h
+dd 0418580c8h
+dd 0e085baech
+dd 040324b0bh
+dd 009860da7h
+dd 0f21389c6h
+dd 0ba5b4167h
+dd 06900af26h
+dd 0274b9781h
+dd 052690692h
+dd 0e7a26a5fh
+dd 0b950fa0dh
+dd 0ad5ce6c1h
+dd 0669d3bb9h
+dd 0f88f6cadh
+dd 01053888eh
+dd 0ebe1775fh
+dd 050b7cc2dh
+dd 03af3188fh
+dd 00752d46ah
+dd 0f5851292h
+dd 0abd3d2f3h
+dd 06f99e21bh
+dd 09708c39bh
+dd 01456c8c7h
+dd 0cab088ceh
+dd 0c7fea555h
+dd 071e87005h
+dd 03b5fcd50h
+dd 0a4a923b7h
+dd 0d86f2f8ch
+dd 0c5fc0b3ah
+dd 01c18750bh
+dd 083e495e5h
+dd 0017f3a06h
+dd 014449816h
+dd 03c25749ch
+dd 0ee7d62d9h
+dd 03fa98a0bh
+dd 07e3c9fefh
+dd 0dd196718h
+dd 0551931b0h
+dd 017f4fc4fh
+dd 01c639b51h
+dd 056b45c29h
+dd 034424958h
+dd 0c8afeb81h
+dd 0dc2f0002h
+dd 0e74480b2h
+dd 078e88226h
+dd 01b286fb8h
+dd 0779c8f10h
+dd 0a58c3699h
+dd 033758824h
+dd 00e6f6737h
+dd 0af0f2371h
+dd 04491688eh
+dd 072e9bb81h
+dd 068abdbc8h
+dd 0d93e5acah
+dd 02c628d87h
+dd 05b7a2105h
+dd 049e8e77ch
+dd 08f571604h
+dd 06a023bc4h
+dd 0bdc8ab86h
+dd 0ddc5fdf0h
+dd 05c668416h
+dd 083d767f1h
+dd 0218fd500h
+dd 0599592b4h
+dd 0e42c5770h
+dd 05c98e6bfh
+dd 0cedc1b05h
+dd 0fe7f30a9h
+dd 02c90a92fh
+dd 0bc6df7d8h
+dd 04447cd6dh
+dd 07768b4ech
+dd 0400aac18h
+dd 064808a6fh
+dd 0e2f5df66h
+dd 01a995da5h
+dd 00be7d7fch
+dd 0d77f9cadh
+dd 0a61574b7h
+dd 0a9341176h
+dd 079406ea7h
+dd 05f8acae9h
+dd 0c17e62dbh
+dd 0a8d58c32h
+dd 0c678f3c3h
+dd 0a2e95a7fh
+dd 0264e145ah
+dd 0f878b7c4h
+dd 05f211019h
+dd 078a0291dh
+dd 075758c72h
+dd 0c97b01c2h
+dd 001061a20h
+dd 09b931eeah
+dd 0435fd87eh
+dd 0ce3a8992h
+dd 0d51376b9h
+dd 0b17ee4a3h
+dd 0b7a6a2aeh
+dd 08edeb445h
+dd 0123d4e86h
+dd 04bb80e30h
+dd 0a16f2457h
+dd 00006e5f9h
+dd 0af68fbc5h
+dd 0710270ffh
+dd 0dfe6cf4eh
+dd 04e3f5f19h
+dd 08bfadc9bh
+dd 006a5cc1bh
+dd 01e6ee90eh
+dd 00320724dh
+dd 05ae1ffe6h
+dd 0d592a3c3h
+dd 02feac4edh
+dd 04ebcc21ch
+dd 0d3de33f1h
+dd 0e5ce4b58h
+dd 04840e563h
+dd 0a27ff534h
+dd 046b806e6h
+dd 00ccede82h
+dd 01742c27bh
+dd 0c39a5bf4h
+dd 0919994d9h
+dd 0ef2a26bch
+dd 0ecbb4979h
+dd 063057ef3h
+dd 0a0dc6b71h
+dd 05b3f53efh
+dd 0e0b453fah
+dd 0615a3697h
+dd 091d24cbfh
+dd 03f9c9cc6h
+dd 020d4ddb5h
+dd 06750a692h
+dd 0cef3634ah
+dd 0a30431f5h
+dd 0a8fc5300h
+dd 0b172f9b8h
+dd 00447b77eh
+dd 035efc22bh
+dd 00f521b49h
+dd 0be7bf680h
+dd 01ac96fd3h
+dd 098bcab8bh
+dd 0a7a43addh
+dd 0e4ac0510h
+dd 065a1e0afh
+dd 005e01e92h
+dd 088e8059dh
+dd 0ee13794eh
+dd 0b80c6943h
+dd 0a1754c63h
+dd 0081dcaf2h
+dd 08534456fh
+dd 0f4b5621ah
+dd 0a8082669h
+dd 09a7c8376h
+dd 0b26c2f22h
+dd 0723388bch
+dd 0f7eb85c7h
+dd 0276ab121h
+dd 00b86d75ah
+dd 0ecc2fed5h
+dd 0adae73a5h
+dd 00bd90b9ch
+dd 08d5d3bech
+dd 063123a39h
+dd 005ddcdd0h
+dd 029784708h
+dd 08030bbd4h
+dd 0800e58d1h
+dd 0ae8d4e61h
+dd 0329a787eh
+dd 089253b27h
+dd 0978d36e5h
+dd 002b6b18dh
+dd 02d4906bdh
+dd 0a0ac6067h
+dd 0786a17eeh
+dd 01c0244ceh
+dd 020c7354dh
+dd 085813dcch
+dd 0a2052075h
+dd 00347dbffh
+dd 0b17117f0h
+dd 0bf8accfch
+dd 0bc3bcaadh
+dd 039472a2ch
+dd 0b80f0d97h
+dd 054ca29a8h
+dd 0a71d30c4h
+dd 081316da5h
+dd 00157a924h
+dd 0eed160b7h
+dd 071f087eah
+dd 0df32bcfah
+dd 02e145f46h
+dd 00c8f99e0h
+dd 0f6ed2369h
+dd 0daeb1d3ah
+dd 08d90883eh
+dd 05af56970h
+dd 06713d60ch
+dd 044e01812h
+dd 058327199h
+dd 077c460bbh
+dd 0577899e3h
+dd 048cae9c4h
+dd 083b2e64bh
+dd 0e070de1bh
+dd 05de1f3b0h
+dd 01cb1cf40h
+dd 079089ebbh
+dd 0e732c7c4h
+dd 0d369a12ah
+dd 033f2bfa2h
+dd 05ce350aah
+dd 0e389092dh
+dd 09da5396fh
+dd 0c5697b7ah
+dd 0bb5261e6h
+dd 0c04ec769h
+dd 0c37bea46h
+dd 0f63ac959h
+dd 0996f030ah
+dd 044826995h
+dd 0f81acae0h
+dd 03c486535h
+dd 028cebc8ah
+dd 07027326bh
+dd 0b6978e18h
+dd 004468777h
+dd 0368d2993h
+dd 05e0f4abch
+dd 0407936bfh
+dd 0ef0699f6h
+dd 05b97b5f2h
+dd 040ec6859h
+dd 07652e7d0h
+dd 089b002dfh
+dd 04822b760h
+dd 09a1ede32h
+dd 0f9b02be5h
+dd 00237b3f4h
+dd 047cdb487h
+dd 0c56ac831h
+dd 007651077h
+dd 0fd46ec20h
+dd 00adc8650h
+dd 0fc33ceadh
+dd 07ae48e89h
+dd 0f98a6f3ch
+dd 00060a2b4h
+dd 05bd6118fh
+dd 084223df8h
+dd 022bf12e5h
+dd 0afd8a724h
+dd 0cd94b112h
+dd 00af530a5h
+dd 021f6641fh
+dd 047f06061h
+dd 0993c228fh
+dd 09f80e0c7h
+dd 0952a3199h
+dd 02b9b725ch
+dd 0b7e5f64ah
+dd 0a45d6e8ch
+dd 00374a093h
+dd 05d2afb89h
+dd 0fb7c34ebh
+dd 05078120dh
+dd 0b58d27c3h
+dd 072346e45h
+dd 0962b1c73h
+dd 0d1d81e84h
+dd 01a67d85eh
+dd 026428116h
+dd 02a93c34ch
+dd 003146b55h
+dd 0607254c8h
+dd 0360a3452h
+dd 03c24b878h
+dd 01eace39ch
+dd 0d4647c99h
+dd 00d2f8125h
+dd 02fb8d35ch
+dd 02bd0fcaeh
+dd 08a6285dah
+dd 02d3e9e3bh
+dd 01be98047h
+dd 0e95a26bbh
+dd 02ea66746h
+dd 04347de7fh
+dd 08a2c2daeh
+dd 0d672f2bdh
+dd 0f15b0e49h
+dd 03145768fh
+dd 061caa859h
+dd 0a05197c3h
+dd 0dbed7797h
+dd 02ea99dc8h
+dd 068b946fdh
+dd 0213438d5h
+dd 06ced6c91h
+dd 05e4cc19fh
+dd 02e99ff91h
+dd 077d59cd5h
+dd 019dacdf5h
+dd 0294fed99h
+dd 04dd830eah
+dd 02db78b86h
+dd 0d8193ecdh
+dd 07e27baefh
+dd 02b5f899bh
+dd 0ae7075b6h
+dd 0fb3b967bh
+dd 0339df5b7h
+dd 0a20d2cc8h
+dd 0bc0e3c71h
+dd 06d9be1d2h
+dd 04fcbd7fdh
+dd 08da84204h
+dd 0e8e7e258h
+dd 02b9f177bh
+dd 042340112h
+dd 0d1c2d1bbh
+dd 079d2e7c4h
+dd 095cdb4ddh
+dd 0ad54a218h
+dd 0466387b2h
+dd 0aba7dc4bh
+dd 07897dc94h
+dd 003e748b6h
+dd 0b60ed0eeh
+dd 06bdd02abh
+dd 05d11253eh
+dd 033dbce45h
+dd 003246c90h
+dd 0ca497845h
+dd 0d9f2a6feh
+dd 06eb52f25h
+dd 0b439be2bh
+dd 0e8945ca3h
+dd 051259504h
+dd 0123a73adh
+dd 08239bf40h
+dd 04237cb30h
+dd 0da49c1d6h
+dd 0209fd2b6h
+dd 0ebb8f89dh
+dd 0f5656070h
+dd 07f5b91fah
+dd 0cac0bdd2h
+dd 02a464c0ah
+dd 0eef88e28h
+dd 0db7ca22fh
+dd 03fb711eah
+dd 0429f905eh
+dd 0f564d706h
+dd 0aaea2d1eh
+dd 0e8dbe5fah
+dd 0a820c70eh
+dd 0b675d68fh
+dd 0de95ee58h
+dd 0a41cfd19h
+dd 073d10843h
+dd 051c28418h
+dd 05ee4ff56h
+dd 0dc6b1c96h
+dd 012255844h
+dd 08a956ab7h
+dd 03fc3cd12h
+dd 084c7e5deh
+dd 0fbe9bb8dh
+dd 032f527e3h
+dd 0ca71b2efh
+dd 0a5dcecedh
+dd 0f3608e79h
+dd 04a192dcfh
+dd 0d05f27eeh
+dd 0126ffed8h
+dd 0d87bce30h
+dd 09ee2173eh
+dd 0bfc41e35h
+dd 0ac9236e2h
+dd 0b10ab60bh
+dd 0c28d8160h
+dd 001a8aedfh
+dd 01f16fe1ah
+dd 053cbfb72h
+dd 061e68293h
+dd 0df4f0556h
+dd 04b1b26e6h
+dd 0c746e797h
+dd 01b415762h
+dd 09dacbbf0h
+dd 08e47d68fh
+dd 00f693e20h
+dd 043da5897h
+dd 077de6eefh
+dd 0e5c95fe8h
+dd 0ed15538eh
+dd 09a6f9c47h
+dd 0b8a8eaech
+dd 0856f624fh
+dd 0ad2e9ce7h
+dd 08c7fe914h
+dd 0f01fb52bh
+dd 04536736bh
+dd 0098a579eh
+dd 0dc4d42cfh
+dd 019bb15b3h
+dd 0173783c4h
+dd 082ca9038h
+dd 02da50af0h
+dd 0982f659eh
+dd 07731ea87h
+dd 0aa6bcc7ah
+dd 0b45e1c53h
+dd 0f5b1856ah
+dd 092011c7bh
+dd 0d7c8320bh
+dd 091575c73h
+dd 0c4ebc186h
+dd 0111536a4h
+dd 026ce7b0ch
+dd 09c805713h
+dd 077b882a3h
+dd 0eda0f9a4h
+dd 007e930cah
+dd 0653c7d27h
+dd 064ba0bech
+dd 0a99a16f5h
+dd 05b30a1b8h
+dd 0a35940bbh
+dd 0ca324da4h
+dd 01b14b076h
+dd 0c2c1ac7bh
+dd 01c3c2751h
+dd 0afd7f4f8h
+dd 08d677802h
+dd 06763d304h
+dd 01e7bed38h
+dd 07a32458ah
+dd 04f3219ddh
+dd 02f95a536h
+dd 0431f6697h
+dd 0561867e2h
+dd 09344b31eh
+dd 021de0887h
+dd 07d9e0f08h
+dd 0a0130d07h
+dd 04fa6542ch
+dd 05127ef86h
+dd 0e8873af8h
+dd 0fa4118f6h
+dd 02614de0ah
+dd 086a0cce1h
+dd 039a4a996h
+dd 0e0538f64h
+dd 0f46c8a37h
+dd 07d3c4a89h
+dd 01a03f19bh
+dd 0d0ff0a2fh
+dd 08d048846h
+dd 0649b15ech
+dd 0ac03b128h
+dd 0a5672746h
+dd 00fc38a27h
+dd 000f15b3eh
+dd 0c20a86ddh
+dd 0ea9d4e38h
+dd 05be6ab55h
+dd 098d095bch
+dd 0bd775290h
+dd 064e2478bh
+dd 0c582ccf4h
+dd 0efe7068fh
+dd 06423fbf2h
+dd 0450cf713h
+dd 03c08ebc5h
+dd 02ee94e6ch
+dd 09c71f7b2h
+dd 012328819h
+dd 0c8221f61h
+dd 0c02e748ch
+dd 09f085015h
+dd 03d93c5c6h
+dd 08aab6a1ah
+dd 0c073ac27h
+dd 05de68b4bh
+dd 00f7ac125h
+dd 03872eed1h
+dd 0df7ba454h
+dd 0e7d8f29bh
+dd 0f1733822h
+dd 0985f82b0h
+dd 0a5a66362h
+dd 0de2b736eh
+dd 0bc6024cbh
+dd 058675b19h
+dd 0c0b2ea74h
+dd 0339c5010h
+dd 0c25351adh
+dd 0097dc7a9h
+dd 09ebc8155h
+dd 006295ae8h
+dd 006d6ec19h
+dd 08144d022h
+dd 05c28cc2ah
+dd 0c7be014bh
+dd 0c4ef4679h
+dd 09b4fcc3fh
+dd 0bae21177h
+dd 0b9019576h
+dd 0a5d35e56h
+dd 0c2e0a2a6h
+dd 012f2c92fh
+dd 07fdca11dh
+dd 0514a351eh
+dd 0bf70f042h
+dd 0fe03f696h
+dd 099a81ea1h
+dd 0445ca6efh
+dd 03d3b9f30h
+dd 023dee7a4h
+dd 0f0ecc00fh
+dd 0015d13edh
+dd 084625211h
+dd 0985753e1h
+dd 048692346h
+dd 0f375f3bbh
+dd 05339d033h
+dd 0ac407305h
+dd 0bd088d1fh
+dd 04a9be1d3h
+dd 0e874a0d1h
+dd 0c1b3f7e8h
+dd 0cce7f481h
+dd 0e43cfb7eh
+dd 0fe8d7b2dh
+dd 07d1b5cc3h
+dd 043b281a9h
+dd 0f23ddc56h
+dd 073dd0c7bh
+dd 03b9220bah
+dd 0209646e4h
+dd 05aa09999h
+dd 0c9e658d5h
+dd 0346e2a1bh
+dd 040ad031ah
+dd 0a927d4eah
+dd 0eaf1bddfh
+dd 058c7b9e9h
+dd 0743ecee1h
+dd 03c01e32eh
+dd 047e6fd37h
+dd 051f42875h
+dd 0639616dbh
+dd 0635959c1h
+dd 0e0037748h
+dd 0fc249864h
+dd 0c457e5f4h
+dd 0fb0cff26h
+dd 09514c6a6h
+dd 0a8f86fbfh
+dd 02f6c931eh
+dd 018031728h
+dd 023366216h
+dd 0a93af47ch
+dd 0bdb944cfh
+dd 0e9bb05eeh
+dd 0964336bch
+dd 05ac3c9fah
+dd 027426670h
+dd 074bc0042h
+dd 0f3c147c8h
+dd 0cf523b39h
+dd 0372adf67h
+dd 063868224h
+dd 03744c685h
+dd 0c41fa90ch
+dd 08885abbbh
+dd 0ec400d17h
+dd 0d770526ah
+dd 099cb73d8h
+dd 01ee461c4h
+dd 0cb5dfb68h
+dd 0d3085817h
+dd 06c5dc7b3h
+dd 0a359865fh
+dd 0cdf24a16h
+dd 025d21e49h
+dd 0d474b721h
+dd 0e0445ffch
+dd 06511765ah
+dd 084b79483h
+dd 0935962a3h
+dd 02982db23h
+dd 019fcad18h
+dd 0aadc867ah
+dd 019a45937h
+dd 0a0b63682h
+dd 06bb76e86h
+dd 06d93e340h
+dd 073f527a3h
+dd 049a99307h
+dd 0acfb1155h
+dd 07a01a87ah
+dd 033249d86h
+dd 06803b89fh
+dd 04ad1b8d9h
+dd 0170a5f72h
+dd 04d0cec50h
+dd 0bbd38bebh
+dd 0c0d78567h
+dd 06f838298h
+dd 0654e160ch
+dd 08a70ffa7h
+dd 0ed7d4b3fh
+dd 0e4370216h
+dd 0051155fah
+dd 01db4fe7dh
+dd 0d55701f6h
+dd 000bb63f8h
+dd 0496bd923h
+dd 0ea0eb8c8h
+dd 0bba795d3h
+dd 0990bcba6h
+dd 03ed5e2dah
+dd 099564d37h
+dd 031a7e8edh
+dd 082ebe264h
+dd 09afcaf3ah
+dd 0183dda03h
+dd 0e8905877h
+dd 04ca94238h
+dd 014393c86h
+dd 003ccf84ch
+dd 02c3d0dc4h
+dd 0334351b5h
+dd 057c45412h
+dd 0591779aeh
+dd 0c4f7eb7eh
+dd 03193accah
+dd 044a1f9b3h
+dd 0a40a43f9h
+dd 08c0341c2h
+dd 09910487bh
+dd 060f5fa6fh
+dd 0d2464950h
+dd 041fbd15ah
+dd 069d14e4ch
+dd 034c93113h
+dd 0aaef02fch
+dd 0e5659b51h
+dd 02b15eba2h
+dd 02686b7e3h
+dd 0e21cccf6h
+dd 0c6d9a6abh
+dd 06777116ch
+dd 070a9a13bh
+dd 0b20f32abh
+dd 0c9e67aa1h
+dd 030b8f807h
+dd 07cf85217h
+dd 01616ddcah
+dd 0189b2281h
+dd 01bc9f1b8h
+dd 0f9102ef6h
+dd 0821afb40h
+dd 0cad0ee6fh
+dd 0313f5b37h
+dd 0e21e95cch
+dd 0840abcdbh
+dd 0d9f9cac3h
+dd 0e2f7e451h
+dd 0dac22c6ch
+dd 0974a9986h
+dd 036605158h
+dd 0ffe180a6h
+dd 038542583h
+dd 0f0da04e3h
+dd 04b5cf9abh
+dd 068b8eceeh
+dd 056ca58f2h
+dd 0451f3bc6h
+dd 0077c63e4h
+dd 02a05d84bh
+dd 0bd5d5101h
+dd 0a6dcd3a3h
+dd 0ed5f5679h
+dd 0daab2704h
+dd 0000f64ebh
+dd 041d4344fh
+dd 0a0f35a13h
+dd 04dce86adh
+dd 030cada83h
+dd 0ab59aed9h
+dd 09add9eadh
+dd 04da818bbh
+dd 0aeb76391h
+dd 01356c468h
+dd 09772eb4eh
+dd 050aac012h
+dd 08c960300h
+dd 023a672b8h
+dd 0c0339ba3h
+dd 05541934ch
+dd 0e4cc8b65h
+dd 0078c7cfah
+dd 0c6812606h
+dd 0e3dc91d0h
+dd 0f01c426bh
+dd 092ae6a72h
+dd 0884f3e62h
+dd 0b4504bd7h
+dd 0e710640ah
+dd 0808915e6h
+dd 04cf75629h
+dd 07cc8185eh
+dd 04de2d66fh
+dd 054f6fd8ah
+dd 09a858a92h
+dd 030ceed55h
+dd 0ef59a863h
+dd 08cee824bh
+dd 0a425da6eh
+dd 0442db3f8h
+dd 0f0b747dch
+dd 0d3c6f15fh
+dd 05257c88eh
+dd 099dccdfbh
+dd 0330eb986h
+dd 09e67fee9h
+dd 0ee3c93f6h
+dd 099cf5470h
+dd 0f38fca7fh
+dd 07cadbb06h
+dd 02f6f5a1ah
+dd 0d9efff1eh
+dd 0a825ae1ah
+dd 04f8694c5h
+dd 0f49cf28dh
+dd 0ee223b37h
+dd 098c77cfdh
+dd 0a518302dh
+dd 0076f8031h
+dd 01eceadaeh
+dd 0b26db59eh
+dd 0026a7e99h
+dd 090d06a3fh
+dd 0dfde138dh
+dd 050b1b36fh
+dd 03cfe15bdh
+dd 054e6b635h
+dd 044da9cfdh
+dd 019418677h
+dd 0538fb47ah
+dd 0912fcff0h
+dd 0fe55c916h
+dd 00065ae06h
+dd 061999611h
+dd 0cc274ccfh
+dd 0ae0c50e0h
+dd 00a4f1b36h
+dd 071feea95h
+dd 0a0e2c89eh
+dd 0e8afd6afh
+dd 0806b4b42h
+dd 010182e4bh
+dd 01942473bh
+dd 044ea2a14h
+dd 0864165f3h
+dd 00b6ca83bh
+dd 0c2653f83h
+dd 079eb476dh
+dd 04021dd62h
+dd 0fb704ad9h
+dd 04f61a18ch
+dd 05a2f4bafh
+dd 0864da949h
+dd 0fff8bcd1h
+dd 018817575h
+dd 04396244dh
+dd 0e3d09819h
+dd 0d2a53891h
+dd 05d28c325h
+dd 0c3f0af94h
+dd 08a22b5a3h
+dd 0b73794d1h
+dd 085e521efh
+dd 03c4f7e1bh
+dd 01d9841d6h
+dd 018e702b4h
+dd 0c0294486h
+dd 0be01a5deh
+dd 0bd246810h
+dd 07e9c02fah
+dd 0b1c5d724h
+dd 014af2f39h
+dd 0804bd3c6h
+dd 04872aecdh
+dd 0d8a2cd8fh
+dd 0557da44eh
+dd 07ea05961h
+dd 00e232173h
+dd 028cb8a89h
+dd 0ef68e71eh
+dd 0ceb5d518h
+dd 0521365adh
+dd 065b2b1cdh
+dd 050463451h
+dd 015b650ach
+dd 084833ae6h
+dd 016276680h
+dd 0798aa182h
+dd 0aaefa7a5h
+dd 09c5b147ah
+dd 0017f9e84h
+dd 08bd59867h
+dd 0b7900504h
+dd 0e338eac5h
+dd 09cc701c8h
+dd 0375519bbh
+dd 00cbb8b92h
+dd 06cccdb38h
+dd 0002d3978h
+dd 09ab91a7ah
+dd 08916b17ah
+dd 02666a15dh
+dd 0c14ffc01h
+dd 069f3aa73h
+dd 08f9fe34ah
+dd 0a3a71556h
+dd 0fa133397h
+dd 0a89badc7h
+dd 005988ad5h
+dd 096d100f6h
+dd 08a7ecf2ah
+dd 0191278a9h
+dd 0d1bf602fh
+dd 0ed49dd73h
+dd 06224e908h
+dd 0f68a087ch
+dd 07b76ecc0h
+dd 0471a3d81h
+dd 05f9154c8h
+dd 08398c138h
+dd 08b94683dh
+dd 004390137h
+dd 0863d677dh
+dd 0467e349ah
+dd 01648b689h
+dd 057a1eee2h
+dd 0437b9e9ch
+dd 032488988h
+dd 0e20c424eh
+dd 0a2a98cffh
+dd 087fd52c1h
+dd 0827640fbh
+dd 0048480e2h
+dd 06e6f384ch
+dd 049d93c05h
+dd 0485ff508h
+dd 024769bf8h
+dd 0083ae437h
+dd 0ae62bcf9h
+dd 0516fd7a6h
+dd 02504404eh
+dd 0101f18dah
+dd 0860c19adh
+dd 023cd5269h
+dd 045c21f1ch
+dd 09b44d344h
+dd 065b88323h
+dd 054b89bfeh
+dd 0c5905974h
+dd 04105be34h
+dd 04d10c03eh
+dd 099eb80dah
+dd 066f2b3f0h
+dd 0a7f9ca29h
+dd 03b71fff4h
+dd 05cc9d3ebh
+dd 0d923221bh
+dd 04b9a8014h
+dd 029cf8edeh
+dd 049f24021h
+dd 0f438a99dh
+dd 08d617653h
+dd 0b9c6e145h
+dd 09bcbe4cdh
+dd 0a265ad1dh
+dd 0c37c5647h
+dd 045815f28h
+dd 02df20d08h
+dd 0bd70f561h
+dd 05810c954h
+dd 072347a59h
+dd 0a799214eh
+dd 0430bbc54h
+dd 04bdfe1bbh
+dd 0a04308dfh
+dd 070fa7f00h
+dd 0ce69a944h
+dd 0adaa102bh
+dd 008fb7f33h
+dd 06c4976d1h
+dd 0630d9ae8h
+dd 0c5b03f95h
+dd 01ccbcfc3h
+dd 0a56ea992h
+dd 0f459e7bdh
+dd 0df8a7e49h
+dd 06c518badh
+dd 0f26769fbh
+dd 0a43190dch
+dd 0b40a206ah
+dd 051893fd9h
+dd 0de2ae228h
+dd 04d1c4cf5h
+dd 0f025638bh
+dd 0bb6f94a7h
+dd 04d4aed76h
+dd 0d28d806bh
+dd 006446386h
+dd 0a54c04a5h
+dd 01a59d0e0h
+dd 05d4517d8h
+dd 0aa1d0dc0h
+dd 05008c4c7h
+dd 0fd25e0e2h
+dd 0ad9bba74h
+dd 06d230c55h
+dd 06649b429h
+dd 07682bddch
+dd 06d58b6c4h
+dd 00f2e70b1h
+dd 0a615bfaeh
+dd 0d71c2f7dh
+dd 0248bcc9ch
+dd 04288fed2h
+dd 08804e71fh
+dd 0229be8ffh
+dd 041ef0076h
+dd 0e59e5675h
+dd 0c065f089h
+dd 08b0c8ddah
+dd 029632927h
+dd 065152499h
+dd 0c9c81c61h
+dd 0f11574c6h
+dd 0fb41cff0h
+dd 0ea66f038h
+dd 067ff3dc1h
+dd 03e7204bch
+dd 0b78d6f8fh
+dd 0be1a8294h
+dd 07ac5a545h
+dd 074243c0ch
+dd 058a30ad8h
+dd 074185ef9h
+dd 0aa5842afh
+dd 01d2c5f32h
+dd 02c3415cbh
+dd 0cf7ad740h
+dd 0fd72adefh
+dd 05e3454b1h
+dd 000df8495h
+dd 0872371d0h
+dd 09b327d6dh
+dd 0ebf28f8ch
+dd 07843d9ebh
+dd 09dae0b8bh
+dd 0c36bcdeeh
+dd 0696a9a52h
+dd 08fdc7e79h
+dd 09fef4548h
+dd 0f883d0a0h
+dd 00b8ccd14h
+dd 004f75e77h
+dd 0f0b4831fh
+dd 0dfaf4700h
+dd 06fddf6ebh
+dd 057550aadh
+dd 0d1ee9b9ah
+dd 039c88497h
+dd 04076fbc5h
+dd 03c99b3e0h
+dd 0e0fef9aah
+dd 046679759h
+dd 04a67e079h
+dd 0caffb582h
+dd 0564a8e60h
+dd 021df81dbh
+dd 08283553ah
+dd 043c6a717h
+dd 0d22b11d9h
+dd 021312a2eh
+dd 036082a85h
+dd 0d8ab2556h
+dd 01c62f857h
+dd 040dd647dh
+dd 00f928d2ah
+dd 099e3e35fh
+dd 0d8ed8644h
+dd 0a25566d3h
+dd 057158523h
+dd 010b696a0h
+dd 0376cd306h
+dd 087fbd105h
+dd 036ea3a95h
+dd 0c1ae8d16h
+dd 0859521bbh
+dd 07caa175fh
+dd 0ae78d335h
+dd 0ff83e176h
+dd 0105fecd6h
+dd 0c167da4bh
+dd 088918596h
+dd 09f5528b3h
+dd 0933e4f83h
+dd 05beb87abh
+dd 05cb4bda8h
+dd 09f57816eh
+dd 0e4e7fe07h
+dd 06fa06a42h
+dd 040dc8073h
+dd 08e61cb27h
+dd 09419d405h
+dd 095658798h
+dd 0a7cd6e4eh
+dd 0839754d0h
+dd 01c2db621h
+dd 0668d0585h
+dd 02066b3beh
+dd 04f565734h
+dd 0ee1290c2h
+dd 0020df340h
+dd 0e06499a1h
+dd 033e7f4e6h
+dd 03ff99d62h
+dd 090be8a95h
+dd 02a3d4cabh
+dd 0d326c655h
+dd 0e50ccd63h
+dd 0e18a2f83h
+dd 020bcc58dh
+dd 050050bcdh
+dd 0eb65eefeh
+dd 0a709830bh
+dd 03c62a9dah
+dd 05a1be5b5h
+dd 023930cf0h
+dd 0277c896bh
+dd 0372dd10bh
+dd 0e68a2ff4h
+dd 00517b848h
+dd 092935e15h
+dd 030a20cb4h
+dd 036d88c79h
+dd 007ebe758h
+dd 0d6b22ecah
+dd 0bc298423h
+dd 06cb260dbh
+dd 0d85f55cah
+dd 01c7a90ach
+dd 04af50723h
+dd 04241b474h
+dd 0aa20d644h
+dd 08d20f0abh
+dd 028f00489h
+dd 0eb314f26h
+dd 06e579650h
+dd 088cc0c47h
+dd 0c2681dedh
+dd 024f1dd03h
+dd 018ec7b50h
+dd 088592b26h
+dd 0e230b5b9h
+dd 02867acd1h
+dd 0877a403ah
+dd 0308c3092h
+dd 08faf9473h
+dd 050dd7342h
+dd 07d7abd1ah
+dd 0744e3728h
+dd 0184b4087h
+dd 054249bcfh
+dd 06058a12dh
+dd 0ad1d15fbh
+dd 052e5c5d7h
+dd 09499a458h
+dd 0b67faa7dh
+dd 02d03c7f5h
+dd 06c159c19h
+dd 048672ce4h
+dd 057b5b97ah
+dd 0b8027854h
+dd 059a006c6h
+dd 021ff893dh
+dd 022eccd4fh
+dd 0d27a08b1h
+dd 05abe2155h
+dd 08f61d95bh
+dd 0e7bcaa93h
+dd 0320cbe28h
+dd 049c1e8cah
+dd 0c33682e9h
+dd 08c45bee4h
+dd 0380a5a80h
+dd 0b7ce00b3h
+dd 04236cb1dh
+dd 0037ed833h
+dd 03a7bc181h
+dd 0d49cb5f8h
+dd 0eb00d39eh
+dd 0b6ac995eh
+dd 05e5624abh
+dd 02ad7e9a7h
+dd 0f27cf992h
+dd 017a91fb6h
+dd 0ea6741bch
+dd 0f6d1375ch
+dd 0f30052cdh
+dd 0f1cd8dc4h
+dd 0e43fa93bh
+dd 0ec5c04f5h
+dd 0dede9ac0h
+dd 05359efdeh
+dd 0086b7c1dh
+dd 07ccdf277h
+dd 0ab305d02h
+dd 0a8536b20h
+dd 05f334081h
+dd 0b15117edh
+dd 0b665c29fh
+dd 0bab256dch
+dd 0dadd606fh
+dd 037782df9h
+dd 091dc6035h
+dd 0fd4001edh
+dd 05e1a0712h
+dd 0ba7d7e39h
+dd 0b8899c8dh
+dd 0f3e3795fh
+dd 038d5ad41h
+dd 09e55ceafh
+dd 0aabc5689h
+dd 069418576h
+dd 01d219dach
+dd 0472f9d1dh
+dd 02fcfc8a4h
+dd 060a0df0bh
+dd 03b5fca35h
+dd 0c524c51eh
+dd 0ad6e9b85h
+dd 05052bdb3h
+dd 0f5fb1616h
+dd 0385d8ed1h
+dd 0a7061b8bh
+dd 02b1a6e9bh
+dd 0729c8e12h
+dd 0b72b67bbh
+dd 034020bd5h
+dd 0c3751ffeh
+dd 0a32d0640h
+dd 0e35a877bh
+dd 01c1a40cah
+dd 05e186816h
+dd 054260025h
+dd 038b04e31h
+dd 0e38b3ad0h
+dd 08c7b7186h
+dd 02485d51bh
+dd 092a37be1h
+dd 02dd190afh
+dd 06efe3a7bh
+dd 063b9d2cah
+dd 0fe4512b9h
+dd 0f6c9c7e0h
+dd 0d53b8bf9h
+dd 007d25b30h
+dd 0d1153571h
+dd 009d07746h
+dd 02842e320h
+dd 049d82861h
+dd 0df20b65fh
+dd 0414227e3h
+dd 0cd4e81d3h
+dd 0a7033322h
+dd 054f0a4cbh
+dd 0b04aa373h
+dd 0ceb44f87h
+dd 043fd0e39h
+dd 0127a0a49h
+dd 0669d5aa4h
+dd 080cd80deh
+dd 0aabe369ah
+dd 0fca0fc2ch
+dd 01d4d1f23h
+dd 0d2fac104h
+dd 08d3ad85ah
+dd 0831f93c2h
+dd 0613ff697h
+dd 09c02a638h
+dd 076e24de3h
+dd 08ba29f69h
+dd 0152e8d45h
+dd 00177b567h
+dd 0b45a3849h
+dd 00c7b4109h
+dd 0937b8918h
+dd 049576f51h
+dd 0ffa87845h
+dd 03edafb52h
+dd 08adda12dh
+dd 06a612ef2h
+dd 06eab0678h
+dd 068668892h
+dd 06f057eafh
+dd 05959a3d9h
+dd 0160baef6h
+dd 03d212da4h
+dd 0bea18b92h
+dd 02a8e1fb6h
+dd 0c8e33566h
+dd 0056ff7bah
+dd 0b04e3d69h
+dd 031605469h
+dd 02b7e4200h
+dd 0bd63e597h
+dd 07fd45728h
+dd 088a6aa28h
+dd 0a8c51ef9h
+dd 09f2819d1h
+dd 0dfc11d72h
+dd 04ec940dch
+dd 087d9e367h
+dd 0801314d2h
+dd 02370db1bh
+dd 0f35841a8h
+dd 0a8a23756h
+dd 00807f834h
+dd 01623457dh
+dd 0841fdd7ch
+dd 03a63d1e1h
+dd 086f8d982h
+dd 0c79c77adh
+dd 0f985aed2h
+dd 0c97a460ch
+dd 0f5d5c127h
+dd 066be281bh
+dd 0d559d734h
+dd 0c96eb5bch
+dd 020301c17h
+dd 0ce1943ach
+dd 0c2e8c168h
+dd 0cd63b43ch
+dd 0bb65a078h
+dd 014b38851h
+dd 0fa6d56c8h
+dd 0fc9430c9h
+dd 00014a228h
+dd 02da65191h
+dd 0c6408967h
+dd 027ed2350h
+dd 0aa909208h
+dd 01d3b7f32h
+dd 0c89b3d7eh
+dd 0f54f662ch
+dd 0a78de532h
+dd 047fd98e9h
+dd 0d0110448h
+dd 04cdb9792h
+dd 0ef582018h
+dd 0930a1ce2h
+dd 071272da3h
+dd 066941991h
+dd 0df9486dbh
+dd 08cf06162h
+dd 0a07dff3ah
+dd 05e86241eh
+dd 0bf7e2fdeh
+dd 07304571fh
+dd 0a320c33eh
+dd 0b661843ah
+dd 0731e1c3eh
+dd 08ea72a86h
+dd 03fa7c974h
+dd 0ab730909h
+dd 0fdb18f24h
+dd 03cb7b1ebh
+dd 0d0c38cabh
+dd 0863a0da8h
+dd 092491cb8h
+dd 010bb149fh
+dd 0133b28efh
+dd 016c40a06h
+dd 0788c7603h
+dd 0353b1aabh
+dd 027cff7a8h
+dd 0e4ee7b94h
+dd 031476ddbh
+dd 0d4eb6cbch
+dd 002cde339h
+dd 09a35ed9ch
+dd 005a95833h
+dd 0af1bf3a4h
+dd 02c57bb56h
+dd 0decb8c0ah
+dd 06f1201e7h
+dd 0421a24adh
+dd 0dfaf6bd6h
+dd 0777ae05bh
+dd 0eea2a84fh
+dd 09e822affh
+dd 022a47abeh
+dd 04cb9a98bh
+dd 078e9fc20h
+dd 07b488680h
+dd 0281dbf66h
+dd 0374b9a0eh
+dd 0b63658dfh
+dd 08c01eba6h
+dd 016efa5f6h
+dd 05fb8b3cfh
+dd 0cc1ebca8h
+dd 0ab25593ch
+dd 04a6d921ch
+dd 07c74e260h
+dd 075b09e62h
+dd 023eacfbdh
+dd 0aa3c4410h
+dd 09a5a005dh
+dd 0b135624ah
+dd 0b30ab756h
+dd 07fb98cffh
+dd 08b8a8242h
+dd 058206933h
+dd 0ad83e74ch
+dd 099c0d108h
+dd 0df7943b1h
+dd 0dd245dd6h
+dd 085054514h
+dd 0d75004bbh
+dd 0876277c8h
+dd 0b6b92eeah
+dd 0e2734dc4h
+dd 0af6d38cbh
+dd 0a186369dh
+dd 08b318cb5h
+dd 053be7f28h
+dd 03545d8e8h
+dd 08fef17bfh
+dd 0ff2f3398h
+dd 0bb8c095eh
+dd 0a714cc9eh
+dd 0bc6d3608h
+dd 060880255h
+dd 09f869ec0h
+dd 0e7439aa2h
+dd 0acdae99bh
+dd 0100a75a1h
+dd 0a58dfdb2h
+dd 0cfc180f3h
+dd 03cff8760h
+dd 01cd29bd6h
+dd 0e5ed147eh
+dd 09f40edc0h
+dd 01058f212h
+dd 03ed6443fh
+dd 0ab0c7b9eh
+dd 01bc79ccbh
+dd 0a56eb618h
+dd 0353c8480h
+dd 0eda740f1h
+dd 03d32fb89h
+dd 0406c320ah
+dd 029aff9e3h
+dd 06593c5f6h
+dd 017203aadh
+dd 0e21c6d90h
+dd 01f0e36d3h
+dd 0dd076304h
+dd 0e8f10f29h
+dd 032960a91h
+dd 0a771f45ch
+dd 0101c3254h
+dd 0a34f9212h
+dd 0e6873dffh
+dd 0187668b1h
+dd 05585a6a2h
+dd 0bdd3211ah
+dd 0f9d69510h
+dd 0d0259b34h
+dd 04ac96681h
+dd 09e836c00h
+dd 0e4b49400h
+dd 001f911ddh
+dd 0f0e7401ch
+dd 0876c9450h
+dd 055eabc52h
+dd 09c6ab820h
+dd 0f26d387bh
+dd 03d8fd4ddh
+dd 07a411d42h
+dd 089e05270h
+dd 04e3ac48eh
+dd 083ca7461h
+dd 08e2d716bh
+dd 051e16a56h
+dd 0a1688dc3h
+dd 0874ed6f7h
+dd 087d4539fh
+dd 06154985eh
+dd 02b7ed221h
+dd 040bfb9dbh
+dd 0cca52628h
+dd 086d7a46ch
+dd 0b8081538h
+dd 039d8ffd8h
+dd 0865b5fa8h
+dd 03da57fb3h
+dd 08f6f90e4h
+dd 00a9e32c7h
+dd 0aa7262e5h
+dd 0e87bb9e7h
+dd 0dc486abdh
+dd 0919f5e93h
+dd 0133e3102h
+dd 0368e6b02h
+dd 093529a93h
+dd 0a5a125e1h
+dd 036d1276bh
+dd 0e70a523dh
+dd 00913bc7ah
+dd 0f6503f18h
+dd 0d55e5708h
+dd 0724c2c1dh
+dd 02921680eh
+dd 036eb5c65h
+dd 04983501ah
+dd 0d934e03bh
+dd 05f3cf84bh
+dd 0d0202559h
+dd 0c2a0655fh
+dd 0354ad7cah
+dd 05a604e5ch
+dd 0a3603b97h
+dd 05bc19f30h
+dd 01f78a33eh
+dd 072316cb5h
+dd 0758d9f26h
+dd 09392faebh
+dd 036bff89fh
+dd 07204bc27h
+dd 0d188184ah
+dd 0c1478b59h
+dd 073302dbah
+dd 00a311bf7h
+dd 00953dbb9h
+dd 0f8fa5f06h
+dd 04b6021ebh
+dd 044568760h
+dd 048cd766fh
+dd 057637447h
+dd 0b5902ebfh
+dd 07de6407dh
+dd 0ec117fe8h
+dd 0189f40c5h
+dd 0fefe0499h
+dd 04f644597h
+dd 0129f08e1h
+dd 055f749dch
+dd 09635cdf0h
+dd 00293e6e9h
+dd 03b9a9b41h
+dd 015630a3fh
+dd 0285e718bh
+dd 054de3e36h
+dd 02fa741cdh
+dd 0fea9af0bh
+dd 0c72502d0h
+dd 007048d6eh
+dd 0b900f1d1h
+dd 09c2ed00ch
+dd 0fd2f0a76h
+dd 01ef0c66ah
+dd 0576e22d2h
+dd 075bda7e7h
+dd 0af05ec0bh
+dd 0c9d6b472h
+dd 05b0fdf54h
+dd 034bbb2bch
+dd 0f24b3620h
+dd 0df4cc29fh
+dd 0282f4583h
+dd 0b7484273h
+dd 034bf98c6h
+dd 0dc8c32eeh
+dd 033ff4b8eh
+dd 0cddaada1h
+dd 0c868af07h
+dd 0255d4bc3h
+dd 00d1a618eh
+dd 085ffb8cbh
+dd 0436d7c07h
+dd 0a3b2fe95h
+dd 0fcff35b4h
+dd 07aca5eefh
+dd 05a04f60fh
+dd 0ba479644h
+dd 0995c7975h
+dd 03644519ch
+dd 0d974beabh
+dd 08df180d1h
+dd 076eededch
+dd 07b0f55a9h
+dd 009e1c8b4h
+dd 06216b280h
+dd 00c7a408ah
+dd 0135b24a6h
+dd 0ac446fa1h
+dd 0d367dbb3h
+dd 0fe5c330bh
+dd 075e878d8h
+dd 028dfd681h
+dd 041118744h
+dd 0a5ad6d6ah
+dd 0d0fc977fh
+dd 0797fe87eh
+dd 0fabcc5ddh
+dd 0db6327fch
+dd 012921ab1h
+dd 0cc7aba94h
+dd 049874249h
+dd 01f0719d2h
+dd 0c2c41bd9h
+dd 026c3d54ah
+dd 09722ea54h
+dd 0a5bc16dbh
+dd 03f7f3233h
+dd 0c7b887c4h
+dd 0948dca54h
+dd 055566f4ch
+dd 011391cf5h
+dd 033149337h
+dd 0566850f6h
+dd 0f8935a6bh
+dd 0b9508938h
+dd 0b56352dfh
+dd 0ea56cfd4h
+dd 0e247a38dh
+dd 0399a0af2h
+dd 04c8e6b1ah
+dd 055dfe32ch
+dd 0789e2638h
+dd 062977adch
+dd 0dca3739eh
+dd 0a76fde57h
+dd 0f573259ch
+dd 09e629134h
+dd 0fe529400h
+dd 0d1dd348ah
+dd 0abf91d70h
+dd 00c383540h
+dd 06de1256fh
+dd 0de14a90ch
+dd 0067a27f9h
+dd 0e31f1fcah
+dd 0b6c5ae95h
+dd 0973e617ah
+dd 00776e752h
+dd 0f09f22d7h
+dd 01610305fh
+dd 0c142e1d4h
+dd 0cb39a929h
+dd 0cad16de9h
+dd 0c0ae53c9h
+dd 01ec302bfh
+dd 076501302h
+dd 0cb1d934fh
+dd 0d30c284bh
+dd 093a4cde0h
+dd 0041c8370h
+dd 03c149281h
+dd 03b4af9c9h
+dd 0d1a1ed13h
+dd 0ad392cc6h
+dd 011544a75h
+dd 016e43ce4h
+dd 0101bac95h
+dd 0dd611287h
+dd 08a3af379h
+dd 024323877h
+dd 00f48b298h
+dd 0d439f12dh
+dd 03be553d7h
+dd 0537bd8bah
+dd 07fc17c97h
+dd 071bbc4ach
+dd 0f2b5e6bdh
+dd 0ae626520h
+dd 0869031e0h
+dd 0013590cfh
+dd 00615ed56h
+dd 06c55f464h
+dd 00fbe0bb9h
+dd 0e502ef2dh
+dd 09b5a629bh
+dd 0ce6c0896h
+dd 0abd0d139h
+dd 0d6c5858ch
+dd 0409019a8h
+dd 0e270c723h
+dd 0d03b30f5h
+dd 00736a851h
+dd 08919fa5ah
+dd 0ffb4818ah
+dd 0a4e6241bh
+dd 01480b54ch
+dd 0317deebbh
+dd 0fd718275h
+dd 0f5c39b25h
+dd 0ebc6f9b3h
+dd 0864f8cbdh
+dd 0357ac266h
+dd 004291ca4h
+dd 0e38c84c9h
+dd 07616a29bh
+dd 00855f618h
+dd 0567563e5h
+dd 0c0211e03h
+dd 0773c9ec0h
+dd 06f85105fh
+dd 097a63e9bh
+dd 00be2afd8h
+dd 0e15b7f44h
+dd 068164b5ch
+dd 0c14cf471h
+dd 0c6d03786h
+dd 0812018bdh
+dd 0b421421eh
+dd 003a412d3h
+dd 0962c9df4h
+dd 0e1f96f68h
+dd 046b7f9a3h
+dd 090aeae3ch
+dd 031b1bff2h
+dd 037eb2358h
+dd 06ddc4ecdh
+dd 0d8657f3ah
+dd 0d3e94bbbh
+dd 02e9b93d7h
+dd 0373ad071h
+dd 03af60fa3h
+dd 057cb7cdeh
+dd 0ba31a08eh
+dd 04d99b3bch
+dd 0fbd61880h
+dd 010367a1ch
+dd 0730590ach
+dd 08950d09ah
+dd 05e7dd1e2h
+dd 0a7b91678h
+dd 0c1a5ccffh
+dd 00c9aaa9fh
+dd 0e699beadh
+dd 0e17ede06h
+dd 08189ace4h
+dd 03c42ef29h
+dd 0d29a2132h
+dd 0b8426680h
+dd 076b02a41h
+dd 096514cfeh
+dd 07c50c282h
+dd 07c7b8cd5h
+dd 09adc9efeh
+dd 0e9c6e489h
+dd 06922124fh
+dd 0f1b2aef0h
+dd 0c0fbf477h
+dd 0642469e6h
+dd 098c1646eh
+dd 055a479afh
+dd 098ede201h
+dd 0b0c17e89h
+dd 035dda0f7h
+dd 05eecba92h
+dd 07e7bf193h
+dd 0902bf8fbh
+dd 0c5328d16h
+dd 0c0611b74h
+dd 0b5b9f5b0h
+dd 071fb5705h
+dd 0897e93cah
+dd 02b2a65adh
+dd 0c821219ah
+dd 0ca89d134h
+dd 0a3d17d03h
+dd 09201653eh
+dd 0a7baef4dh
+dd 050377606h
+dd 0b4d1d448h
+dd 000f42adah
+dd 0631df77dh
+dd 0464c0b3eh
+dd 0bc45c628h
+dd 02854b129h
+dd 05805e134h
+dd 0d6cd6611h
+dd 064a359c2h
+dd 0210f7edch
+dd 035ee2cb0h
+dd 09bf35530h
+dd 0d2507ab7h
+dd 0843c142ch
+dd 00ce30379h
+dd 0a8208e01h
+dd 0264a5bf9h
+dd 01143c838h
+dd 098300c1fh
+dd 0e7955a53h
+dd 0dd140273h
+dd 0530ff9b0h
+dd 0d1c55f62h
+dd 0762d1f2ch
+dd 051539b7ch
+dd 0f485c25ch
+dd 0f4b5630fh
+dd 0579dd590h
+dd 0fc130214h
+dd 0b7741ad2h
+dd 03bd85ff8h
+dd 0941ef2d9h
+dd 030cdefbbh
+dd 00ff99150h
+dd 0fc475c8dh
+dd 04a365594h
+dd 074f289efh
+dd 041f01a90h
+dd 03ad02c78h
+dd 0811f6f08h
+dd 0dbb49ee0h
+dd 06c14a8f7h
+dd 071828941h
+dd 00c48bee8h
+dd 029c3badfh
+dd 0cd99b85fh
+dd 0e825cafdh
+dd 0d8b394e9h
+dd 0e3ed9922h
+dd 0121534c0h
+dd 087eb2801h
+dd 019f6cfd5h
+dd 038ba9b77h
+dd 05766981eh
+dd 05cc12ac2h
+dd 009f39a91h
+dd 0f41dcdd3h
+dd 09a2db2b4h
+dd 017060c21h
+dd 0e0f92357h
+dd 02893b7b7h
+dd 08d733e61h
+dd 042790539h
+dd 05889d448h
+dd 0c00cd8f9h
+dd 05c9af616h
+dd 03477516dh
+dd 0fa072f01h
+dd 0e129837ah
+dd 0c3226b58h
+dd 0b9960dddh
+dd 0f9d5560ch
+dd 0a30a4160h
+dd 0465497d1h
+dd 0fa42c1d2h
+dd 05ba73bb1h
+dd 0216c040bh
+dd 0e0b4af03h
+dd 0ce5d6f34h
+dd 096fa08d1h
+dd 03c96cad1h
+dd 08a83f573h
+dd 04f734f4bh
+dd 0a730d4a1h
+dd 081a3cdd0h
+dd 0eecffe64h
+dd 0808404c5h
+dd 051b2bfd3h
+dd 0f9828908h
+dd 0eeaa8323h
+dd 0488f9c9bh
+dd 032213f62h
+dd 063e65a0fh
+dd 09a95323ch
+dd 0cc9efda1h
+dd 04c0e2df6h
+dd 030d990e6h
+dd 086a2e76bh
+dd 066005d82h
+dd 0ca9410e5h
+dd 0b8ff9ac9h
+dd 0ea222283h
+dd 0136529e7h
+dd 0860c042ch
+dd 04f2ef635h
+dd 084ba466fh
+dd 0a3b0cd25h
+dd 022ecb6e8h
+dd 0d0f86c5bh
+dd 08a5fd8cfh
+dd 0331618f0h
+dd 0b7c06253h
+dd 0605c9558h
+dd 07369a3c5h
+dd 0eb044d87h
+dd 0df422aa4h
+dd 094d9d54bh
+dd 0f31461eeh
+dd 0cbce1c67h
+dd 02224aef0h
+dd 04280c970h
+dd 01a2aedf9h
+dd 0c9f0606bh
+dd 07433b104h
+dd 002a0fb96h
+dd 04516488bh
+dd 0a2985131h
+dd 09a0bc865h
+dd 0d95d4731h
+dd 03a5c5ce9h
+dd 0432dc2e3h
+dd 065956512h
+dd 0966fecabh
+dd 015e34694h
+dd 0832f55a6h
+dd 096255e29h
+dd 09f2d6a8bh
+dd 00eb1ef71h
+dd 01299302dh
+dd 07928dde3h
+dd 0509fd3abh
+dd 0904aa9cfh
+dd 0b782d261h
+dd 06f242b06h
+dd 062717b61h
+dd 0fdff2836h
+dd 0a5c8c893h
+dd 02ac744aah
+dd 0ff8bb711h
+dd 04a875982h
+dd 0fdbc6b18h
+dd 09573bf37h
+dd 0a782856fh
+dd 01bd2fd65h
+dd 0b56c1053h
+dd 04a1ebebfh
+dd 0ac9ed91eh
+dd 063370b67h
+dd 0b2b75d24h
+dd 0bed98475h
+dd 0092047c3h
+dd 0abdd2b57h
+dd 06c40e717h
+dd 04eeae079h
+dd 0d39f7774h
+dd 01ac5d092h
+dd 006d00818h
+dd 06be7c146h
+dd 0f48be440h
+dd 02573e161h
+dd 0b27a431dh
+dd 0381cf5ach
+dd 02cab9ec1h
+dd 008739502h
+dd 0bb40cc0bh
+dd 05f8103f6h
+dd 07165669ch
+dd 09f537d6ah
+dd 01b94f357h
+dd 05c1df87ah
+dd 0b02714adh
+dd 023d688c1h
+dd 0030001ach
+dd 0f6cdf41fh
+dd 0464450fah
+dd 06cba2564h
+dd 0fa69ff27h
+dd 01356da26h
+dd 0690afcb6h
+dd 03e855511h
+dd 06e1cb8bah
+dd 00979c13dh
+dd 0d909b207h
+dd 05495268bh
+dd 08187fc73h
+dd 0822c1cfch
+dd 087f02d57h
+dd 0e5b51bb7h
+dd 002d2f955h
+dd 0af5d526fh
+dd 0f9557711h
+dd 0bbe1cc52h
+dd 00eed89a7h
+dd 047ca1313h
+dd 078d8bde8h
+dd 0cb8d7ec3h
+dd 0fc71b953h
+dd 0800a5443h
+dd 0a784233dh
+dd 02d99ac25h
+dd 0c831ef7ah
+dd 0fd4a29b1h
+dd 07848a3b0h
+dd 01dcae996h
+dd 0cd9ba182h
+dd 0df2bcd08h
+dd 0351e68d2h
+dd 05ffa322dh
+dd 0b2c8c0c7h
+dd 09d08cdeeh
+dd 055434097h
+dd 09d53340bh
+dd 0f34dce37h
+dd 0dc529359h
+dd 0294f7306h
+dd 0d8b57af4h
+dd 0a4a95eb1h
+dd 02fed92fdh
+dd 0bdbd1095h
+dd 04bd340b7h
+dd 04ae9c3bah
+dd 003bcef52h
+dd 0cb7abd40h
+dd 04f3af81bh
+dd 098c6763dh
+dd 08313697eh
+dd 0aee485ech
+dd 046a4e955h
+dd 03babc31fh
+dd 0fe12ea6ah
+dd 0844aab8fh
+dd 02873cd69h
+dd 036725a93h
+dd 03794f5c3h
+dd 08b7d3ab7h
+dd 0e0540fbah
+dd 0fcaae7e8h
+dd 0e6ad826fh
+dd 0f0ca6cedh
+dd 06cc4dddfh
+dd 03efc6307h
+dd 08f488e77h
+dd 0ce4dcc0bh
+dd 05898918fh
+dd 01a7dbca7h
+dd 0ea4e95d4h
+dd 058547b51h
+dd 035583f6ch
+dd 06df760d9h
+dd 0a765bef5h
+dd 0d9663613h
+dd 04ff93144h
+dd 07df4edcch
+dd 0f81fb26eh
+dd 0efdf58b8h
+dd 0efefbe15h
+dd 06a6b1b9ah
+dd 0da0e8964h
+dd 02913382ah
+dd 0bb020366h
+dd 01c005cc6h
+dd 0e44b9a04h
+dd 012b1a1fch
+dd 099a081b0h
+dd 0f817223ah
+dd 0efa2a9eeh
+dd 09c121977h
+dd 04750917ch
+dd 0163efeb3h
+dd 04815c3f1h
+dd 06ba784fah
+dd 0515bafd7h
+dd 0144ce20dh
+dd 03d26a789h
+dd 0febf9d5ah
+dd 0e30aa97eh
+dd 01d2a1ac2h
+dd 03e3aef65h
+dd 0a01ffd90h
+dd 09b0daa69h
+dd 078574ab4h
+dd 0b334ed5dh
+dd 01786d7a0h
+dd 061768191h
+dd 0691854f9h
+dd 0730296a0h
+dd 01a894d02h
+dd 07a6d9fbch
+dd 004ac0b63h
+dd 0e5ff86d1h
+dd 040d6600dh
+dd 001475ec0h
+dd 075d772bah
+dd 00c7cecach
+dd 06de78016h
+dd 0693d156bh
+dd 0c160bdbch
+dd 0c6d61e3eh
+dd 05b970597h
+dd 082c03caah
+dd 0d023d7bdh
+dd 0d9bd0b7ch
+dd 01484cf2bh
+dd 0ea2d7b78h
+dd 0613592afh
+dd 0a294ade4h
+dd 0a1835fa8h
+dd 0cfdde01dh
+dd 08b916fd9h
+dd 061147b61h
+dd 086e3d3b1h
+dd 05d0bd8e8h
+dd 03ed5da40h
+dd 085b28fcdh
+dd 0ae4bfb46h
+dd 056c44528h
+dd 05112268bh
+dd 0553092f4h
+dd 01edbd099h
+dd 081c77c0dh
+dd 0f60ab29bh
+dd 01cd81671h
+dd 02148f5d7h
+dd 0d0b24ebah
+dd 075b2f6aeh
+dd 0cf96a73ch
+dd 00c360788h
+dd 04b4887d8h
+dd 038ec6670h
+dd 0522126f7h
+dd 0c59cde5eh
+dd 00cb08e6bh
+dd 0afb76455h
+dd 0d1df2647h
+dd 095fe2194h
+dd 0e5f90fcch
+dd 0897eca10h
+dd 0e66067b7h
+dd 00aa5a33dh
+dd 0823fcdf9h
+dd 03c1db01eh
+dd 07163ae13h
+dd 0e6479712h
+dd 0043522abh
+dd 0e9c77899h
+dd 059e27c1fh
+dd 062b17fb1h
+dd 0800eacd1h
+dd 017fd4be0h
+dd 0ac9e7d19h
+dd 0326a5859h
+dd 0efe83674h
+dd 0c51e8bc2h
+dd 0c70daf83h
+dd 02e698283h
+dd 04841f017h
+dd 0d35aee31h
+dd 073b989feh
+dd 07a464801h
+dd 0ef166a1ah
+dd 0cd0b40b6h
+dd 03670ae53h
+dd 09386256bh
+dd 0cabeedb6h
+dd 086b6f02fh
+dd 046c3f0e6h
+dd 09cf90f0eh
+dd 06e9a368dh
+dd 01d41107dh
+dd 0bccabc2eh
+dd 0d33574a6h
+dd 0631590f9h
+dd 04f163f36h
+dd 0151b1af0h
+dd 00fa1b693h
+dd 068c0f081h
+dd 03d42b889h
+dd 01a71eb60h
+dd 098bf454eh
+dd 01e5e8424h
+dd 0f7d791dah
+dd 0b17a1e56h
+dd 0de83a151h
+dd 0a629bf73h
+dd 0840fb2cdh
+dd 03dabd546h
+dd 0bcef01ceh
+dd 004be098dh
+dd 02eee4abfh
+dd 07b3af0adh
+dd 0614c45bch
+dd 048716483h
+dd 04a839eech
+dd 026785211h
+dd 009b07e2ch
+dd 0f4e3d7c6h
+dd 0d2ef8bbeh
+dd 0a842ccd3h
+dd 01eb44204h
+dd 006356489h
+dd 072c51dfdh
+dd 0bc40b374h
+dd 06c6f6f68h
+dd 08921b948h
+dd 0e68bf8e8h
+dd 0bf1d59fch
+dd 07836458bh
+dd 0ccd81feah
+dd 0d9579d65h
+dd 00cf901b5h
+dd 031b0d6a6h
+dd 078832d18h
+dd 090d6a8d6h
+dd 0b6c21964h
+dd 089303d52h
+dd 01c973cc2h
+dd 015409943h
+dd 06630b2a4h
+dd 0a56c1e83h
+dd 01086c103h
+dd 0b5f4d1d6h
+dd 03d8a9728h
+dd 0ba0e62dch
+dd 0aa6ff8c1h
+dd 006d9c4f6h
+dd 0f3856ff0h
+dd 0bfa12f23h
+dd 02acc80cfh
+dd 0b2a59965h
+dd 0adcdd4c2h
+dd 092eb8702h
+dd 0d64ddc5ch
+dd 0d4b6a934h
+dd 024134b6dh
+dd 037a8216dh
+dd 037600200h
+dd 0a825a280h
+dd 026b275adh
+dd 041374a41h
+dd 062094db7h
+dd 0b5243b36h
+dd 0954204b5h
+dd 0a1c1010ah
+dd 0c810a190h
+dd 0e5eebd53h
+dd 053aa31adh
+dd 05fcc85fbh
+dd 0f3b080dfh
+dd 00fcbd37ah
+dd 0d68bc6b5h
+dd 0f85f1889h
+dd 029465441h
+dd 0e7df5aadh
+dd 052170639h
+dd 06c109c2eh
+dd 0dfa052bfh
+dd 079ef2c9dh
+dd 09da4eb99h
+dd 02cb35944h
+dd 07bfd98dch
+dd 0742f1fd8h
+dd 0539fa58ah
+dd 07f851718h
+dd 0bfe3795fh
+dd 010c8b7c4h
+dd 0dc9d3a9eh
+dd 015f14a72h
+dd 0e3391212h
+dd 049c8333ch
+dd 04db4abd8h
+dd 0b7670d60h
+dd 04c6ba0eah
+dd 0a67bfe20h
+dd 04b682c50h
+dd 07dd312f2h
+dd 03a883d41h
+dd 0ec83bc5ah
+dd 06ebb1231h
+dd 0e0b3e127h
+dd 00885dcf6h
+dd 04f2c60feh
+dd 0ce4bb3a5h
+dd 089d6034dh
+dd 0c223cbdah
+dd 013b50fa0h
+dd 0a86e6078h
+dd 0cf3ed48fh
+dd 02a2d0790h
+dd 0b9b1c7fch
+dd 051c9fe7fh
+dd 025bc4b68h
+dd 074031ac2h
+dd 016a0068fh
+dd 0eadf280eh
+dd 0003ada40h
+dd 059a0738ch
+dd 0ef65d5c0h
+dd 0816cbb13h
+dd 0ecc2276eh
+dd 0439a4c2fh
+dd 013451baeh
+dd 08ab33897h
+dd 0e1c35755h
+dd 0abc692a2h
+dd 0ea8cf7d0h
+dd 0f70264b9h
+dd 0041a286ch
+dd 0f9878794h
+dd 014079fe5h
+dd 04604136fh
+dd 063e2124bh
+dd 073e0e5cah
+dd 079e2f000h
+dd 047c6039bh
+dd 0721b142ah
+dd 012e1d119h
+dd 0dfb6b397h
+dd 0826c2b3ch
+dd 03691115bh
+dd 04c08e257h
+dd 00dbc54e9h
+dd 078fafbcdh
+dd 071b5c6adh
+dd 022910b01h
+dd 0d6766623h
+dd 022c85824h
+dd 04a38b8cbh
+dd 001fd2c66h
+dd 0d2506c09h
+dd 06b675949h
+dd 0319fb5f8h
+dd 04d2a91adh
+dd 06efa872eh
+dd 092201830h
+dd 0012cbfc0h
+dd 0a7bfb402h
+dd 0ac8d20ddh
+dd 0a24d174ch
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679906.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679906.inc
new file mode 100644
index 0000000..9efb20a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679906.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 000000906h ; Patch ID
+dd 008142015h ; DATE
+dd 000030679h ; CPUID
+dd 0cf3c9be1h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000906h
+dd 000000000h
+dd 000000000h
+dd 020150814h
+dd 000003201h
+dd 000000001h
+dd 000030679h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 043a2ddb5h
+dd 03caab5a4h
+dd 027483746h
+dd 081710109h
+dd 0b410307fh
+dd 0c4c17cf5h
+dd 0376abbdfh
+dd 0f9f11abeh
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 0dcf2a922h
+dd 099601e38h
+dd 03f84f919h
+dd 0ad75fad6h
+dd 0699d8509h
+dd 0c92fafb6h
+dd 05adbc7b9h
+dd 0446728fah
+dd 094a6d10ah
+dd 0dc2ef7a3h
+dd 0ced37d60h
+dd 0ba66136dh
+dd 0862f88c6h
+dd 013d75d7bh
+dd 02959b2efh
+dd 03da0532dh
+dd 045c3d27ch
+dd 0b169f2d0h
+dd 0290ba31eh
+dd 0361c39ceh
+dd 080a68737h
+dd 061712566h
+dd 077278923h
+dd 034841240h
+dd 0cc144c56h
+dd 04ad89374h
+dd 0fe97692ah
+dd 018e716c6h
+dd 0cb33dbcdh
+dd 02205f208h
+dd 0f8cdf6cfh
+dd 0da9ef66fh
+dd 0c3c5d535h
+dd 08261cf3ah
+dd 00728c010h
+dd 0daf3159eh
+dd 04403b013h
+dd 0803ae7f9h
+dd 076575a0ch
+dd 0205da6e8h
+dd 0b4d7093fh
+dd 02643e9a0h
+dd 08756676bh
+dd 0ad9863e0h
+dd 04a755796h
+dd 03c42f484h
+dd 0e747d25bh
+dd 0e3f4e06bh
+dd 05275a6f5h
+dd 0694d8fa2h
+dd 03b136bdbh
+dd 0e3c0aab5h
+dd 006b79758h
+dd 0a57895dch
+dd 02c57bc4ch
+dd 0949db760h
+dd 046f2766fh
+dd 02bf900b7h
+dd 0b6efba6ch
+dd 092d9d2ddh
+dd 03c2f8beah
+dd 0c70b3f57h
+dd 05fa352deh
+dd 08c4d7d96h
+dd 0bf828c06h
+dd 077af99c0h
+dd 081432b56h
+dd 038d7b5b2h
+dd 002dce03ah
+dd 08f0bc12bh
+dd 0a9e5991ch
+dd 06c40c7ffh
+dd 0da63e699h
+dd 0b06744b0h
+dd 0e368d9ddh
+dd 06b134e9dh
+dd 0ed130163h
+dd 0457d2715h
+dd 0d4d7b3cch
+dd 0c84fd4dfh
+dd 0766841c3h
+dd 0fab269e4h
+dd 0a52341ceh
+dd 0474c6568h
+dd 07fe27854h
+dd 0027b1fefh
+dd 0fe3e5da1h
+dd 0caae061fh
+dd 0d2e6b847h
+dd 015091b2eh
+dd 035b2be89h
+dd 0fc237111h
+dd 06e84cf0fh
+dd 0a30a39c0h
+dd 076ded1bah
+dd 09f87eb21h
+dd 0881066d2h
+dd 047f19706h
+dd 055607448h
+dd 0e81b7f48h
+dd 07517f40fh
+dd 0fe63518fh
+dd 068641512h
+dd 03edcab45h
+dd 052177596h
+dd 0499ee92ch
+dd 0770ba30eh
+dd 0a884b5a9h
+dd 04b821a3dh
+dd 092a3f5b2h
+dd 0103425a3h
+dd 01fe0bac2h
+dd 0db177405h
+dd 030ff0831h
+dd 02a623b88h
+dd 09baa6f0ah
+dd 0a77759bfh
+dd 059ed67dfh
+dd 00cf899b1h
+dd 08a7e0ff0h
+dd 0059ad186h
+dd 001500960h
+dd 07239ea55h
+dd 0583e4cc5h
+dd 03da9c9a6h
+dd 0bd8a8705h
+dd 07d5c5247h
+dd 0eb0ed83eh
+dd 01547381eh
+dd 0abfc21b0h
+dd 03488c5a0h
+dd 06302a52dh
+dd 05069400ah
+dd 07bb15ff5h
+dd 038758f04h
+dd 031e2c1c2h
+dd 096d30d67h
+dd 05f62e791h
+dd 0f05024e2h
+dd 0d906091ah
+dd 07d8641b0h
+dd 0caeb5a30h
+dd 0384a76b4h
+dd 0f120888ch
+dd 059d8f006h
+dd 09d94eba5h
+dd 0117d34ffh
+dd 0f46aa4d8h
+dd 020a3cfcch
+dd 086b9e933h
+dd 0e8f7ac98h
+dd 0cd4a75eeh
+dd 04fbfa177h
+dd 0408696a5h
+dd 089b8dcc1h
+dd 078651cd8h
+dd 05fab601ah
+dd 038050043h
+dd 0d50c6bedh
+dd 037d07ef2h
+dd 09140c304h
+dd 0f578b861h
+dd 074eb25c6h
+dd 0000cdf40h
+dd 0a76077f8h
+dd 0b86c9382h
+dd 0df24a72ch
+dd 045e687c5h
+dd 0039216efh
+dd 064ef2d9fh
+dd 09117958dh
+dd 05e697b9bh
+dd 04d7aa241h
+dd 0a87f5765h
+dd 0c58c7c2eh
+dd 054a973beh
+dd 009fe2325h
+dd 01ab4c3ceh
+dd 0088c3b33h
+dd 09bf759a1h
+dd 0fef93b8eh
+dd 0418c91ceh
+dd 0503a1318h
+dd 021311c95h
+dd 09793baabh
+dd 0efb2b73bh
+dd 095d7b8d7h
+dd 069342d36h
+dd 0e453e781h
+dd 066239448h
+dd 00eca817fh
+dd 000cea457h
+dd 06ddf770dh
+dd 06b0b4a26h
+dd 0630040ceh
+dd 0f56bec33h
+dd 000612225h
+dd 0d066bdefh
+dd 01564f86bh
+dd 0aa65543ch
+dd 0fb53e2bch
+dd 0d6785b00h
+dd 072d52d3fh
+dd 07aff3024h
+dd 0941747dfh
+dd 0da370b59h
+dd 0c330480eh
+dd 008854f3bh
+dd 0d72ee3cah
+dd 09f51535ah
+dd 05e3d0818h
+dd 060a654c1h
+dd 055da024dh
+dd 00d91b4cbh
+dd 01cac0271h
+dd 05a5597fdh
+dd 0c2b9c32ch
+dd 0a7ec0508h
+dd 0cdfdf4b2h
+dd 0bab58048h
+dd 0ba633a43h
+dd 0d15fcfd5h
+dd 072b3d8a1h
+dd 0be37b808h
+dd 082a6b4d6h
+dd 033ac0247h
+dd 09907c6bfh
+dd 08e518ebeh
+dd 00d3de871h
+dd 02c9d0affh
+dd 061f63a60h
+dd 0a29c8052h
+dd 0d97a4ddah
+dd 0c662be19h
+dd 036547eb9h
+dd 0a0f7d51ah
+dd 068109fc3h
+dd 0b1cdcc1bh
+dd 050790f31h
+dd 02fd558a2h
+dd 0d107c74dh
+dd 034dde6feh
+dd 0a99904cfh
+dd 010d26990h
+dd 0e73d8a37h
+dd 0b80227f7h
+dd 02cad046dh
+dd 0ecef383fh
+dd 003870adbh
+dd 0a527f1d2h
+dd 079ba67cdh
+dd 0f92fb908h
+dd 0d50bcf4fh
+dd 0a54a00d8h
+dd 05a989ff5h
+dd 0ce717558h
+dd 07526024eh
+dd 061a97db4h
+dd 00c93235eh
+dd 038d3587eh
+dd 0e08c51cdh
+dd 0729fb27ch
+dd 08c424380h
+dd 06856623dh
+dd 04b1b4d2eh
+dd 0b148ec9eh
+dd 095fa4748h
+dd 0a452ea62h
+dd 073bc551bh
+dd 05e4d431fh
+dd 0089eece0h
+dd 006ae03efh
+dd 0cbab30abh
+dd 016234e7ch
+dd 0a7030ad5h
+dd 06b8a8469h
+dd 03d8259bch
+dd 08ee5662fh
+dd 0c8b1aebah
+dd 09a8dc39dh
+dd 0fc0aebebh
+dd 075db9b91h
+dd 065f2b2dch
+dd 0b5336b3fh
+dd 093c3ff9fh
+dd 0507f91d0h
+dd 0fad12ec2h
+dd 0a0ebd5b0h
+dd 0738cc6ffh
+dd 06d57cab7h
+dd 0e3707f1ah
+dd 0de405a88h
+dd 08c4bfb28h
+dd 0961f6a0bh
+dd 0536d059ah
+dd 05136874fh
+dd 0e884e61ah
+dd 0279356eah
+dd 0a9dd876eh
+dd 0e5f53a3ch
+dd 0c32c73e7h
+dd 02e3b35b7h
+dd 0da9ec5e7h
+dd 03c07e6c5h
+dd 0d0038105h
+dd 04af9d14ah
+dd 04b2cce9ah
+dd 0c2e4cb30h
+dd 065a97282h
+dd 07db6cc1dh
+dd 04c3d52c6h
+dd 0253a20bfh
+dd 08388a3fah
+dd 08fe9e5cah
+dd 024c2a337h
+dd 06d4d67d0h
+dd 0cf6d1b58h
+dd 0a7442317h
+dd 08befda10h
+dd 0dd5678e9h
+dd 00b4cb243h
+dd 03f4c3311h
+dd 0ea13299ch
+dd 0b31e6932h
+dd 0684b5ef8h
+dd 00a022b34h
+dd 064653145h
+dd 03e6ba487h
+dd 06cb8c09dh
+dd 07cbbec6ch
+dd 0de8be0e9h
+dd 00483591dh
+dd 0729f921ch
+dd 092ce2ea0h
+dd 05a2e5c7ah
+dd 0ca6cf2efh
+dd 0e73897f5h
+dd 07df9df4eh
+dd 051727a47h
+dd 0843cf81dh
+dd 04016043eh
+dd 043542c1ah
+dd 054b5f366h
+dd 07b7ffd1fh
+dd 05deab9a1h
+dd 022ae4942h
+dd 03a5f6bddh
+dd 0ab3e630dh
+dd 0dedaba07h
+dd 083087152h
+dd 0037c895ch
+dd 0cf0a95b7h
+dd 0b10e4537h
+dd 0ef3da98ah
+dd 00b6495d6h
+dd 0676da78dh
+dd 0df1e15cah
+dd 0110d5739h
+dd 0f22954ach
+dd 00bd5f8deh
+dd 0764e4b7fh
+dd 0edc954d1h
+dd 04bba12b7h
+dd 00d04ad2ah
+dd 03d976ddbh
+dd 0470e9dfah
+dd 05b59b1e6h
+dd 0b2886512h
+dd 0b680fb69h
+dd 03a011db0h
+dd 056b6fd17h
+dd 0c9f5bb82h
+dd 04d5244a4h
+dd 018b91769h
+dd 0c154ed77h
+dd 0b3d5b3aah
+dd 034e418dfh
+dd 0106f7813h
+dd 020701132h
+dd 09f442006h
+dd 069a486dch
+dd 0294107e6h
+dd 0d761af32h
+dd 0de2f154ah
+dd 07a4b098ah
+dd 02fb2c047h
+dd 05e590b82h
+dd 009063a2ah
+dd 09a24e7c9h
+dd 0e86bdb46h
+dd 00ed587f4h
+dd 04b8d224dh
+dd 04d64ad7ch
+dd 0dabc5aa9h
+dd 0685cca1ch
+dd 0a007469bh
+dd 04880abd5h
+dd 05371bfadh
+dd 0e499177ch
+dd 0ac529286h
+dd 00d212b80h
+dd 032e85613h
+dd 04784e1edh
+dd 0643e5e67h
+dd 0130bdc71h
+dd 0012bbb67h
+dd 07ceb635ah
+dd 0428620c0h
+dd 01fc7eafch
+dd 0486d38afh
+dd 0f0c1dfd5h
+dd 0f59926c3h
+dd 05db95ef4h
+dd 0dacb1984h
+dd 0547b5a86h
+dd 0f04c7265h
+dd 0408bc500h
+dd 0c2380006h
+dd 0df9908b5h
+dd 0de4de61ch
+dd 0e526a591h
+dd 083a335fdh
+dd 0b4e15865h
+dd 07881a968h
+dd 0497538f0h
+dd 0d46ac765h
+dd 0bd98a5bah
+dd 0127eeb78h
+dd 0faea6048h
+dd 019509c93h
+dd 02af9f6f3h
+dd 09c537416h
+dd 01dd28e76h
+dd 05d8df7b7h
+dd 0e1c2e71ah
+dd 04152c80ch
+dd 0548a4399h
+dd 07dae43a6h
+dd 07cf5a60eh
+dd 07e9c4506h
+dd 033aa9719h
+dd 05f68a698h
+dd 051bbcbfdh
+dd 0adf797f1h
+dd 00f9dc624h
+dd 0e50532a7h
+dd 08058f8ffh
+dd 086c379d2h
+dd 0da84fd42h
+dd 0990a6381h
+dd 077935252h
+dd 0efbf6cech
+dd 08ef15205h
+dd 0e07b8aech
+dd 0ffc82d16h
+dd 006c28c9bh
+dd 0d43f62b2h
+dd 0e723a5cah
+dd 008f3d54ch
+dd 0a6514692h
+dd 027ba1fdeh
+dd 0a8fde31dh
+dd 021ba5808h
+dd 059933296h
+dd 00aef048dh
+dd 0eca5de3ch
+dd 08db52913h
+dd 0929a33d6h
+dd 076ac6926h
+dd 06524ec26h
+dd 09258528bh
+dd 0a239aa20h
+dd 0ec3caa74h
+dd 01005904dh
+dd 0cb422f4fh
+dd 085280f8fh
+dd 06316f7bfh
+dd 0627472d7h
+dd 0b535c753h
+dd 029b4dfa2h
+dd 086d5f761h
+dd 0597398cdh
+dd 04ee1301ch
+dd 03163ae95h
+dd 06d492d12h
+dd 0373d1cfbh
+dd 095b6baeah
+dd 0d0725426h
+dd 03eb8804ah
+dd 0f0abda3eh
+dd 077ea41afh
+dd 0b46456e8h
+dd 055faac7ch
+dd 0674107e7h
+dd 0f068fb8ch
+dd 0c65c721ah
+dd 000bd4cefh
+dd 096b45638h
+dd 0f8acea70h
+dd 0cdff3413h
+dd 0c2a66951h
+dd 0a29e917bh
+dd 04e0c62dch
+dd 0219ff902h
+dd 01a9c1368h
+dd 06480c9cah
+dd 08e88b924h
+dd 0e4affe50h
+dd 0990b0027h
+dd 070a15b59h
+dd 05adbf7cfh
+dd 063474e15h
+dd 08ff5c795h
+dd 0b132d158h
+dd 0a544f79fh
+dd 08519868fh
+dd 0f29add8ch
+dd 06fa89192h
+dd 02d6feb4ah
+dd 088fe236ch
+dd 0660b4d18h
+dd 05bf1a1e1h
+dd 0f1f02c99h
+dd 0dc59b602h
+dd 0fbdedb59h
+dd 09d96ce2eh
+dd 08c6965b5h
+dd 01f07b1a4h
+dd 0e800f072h
+dd 0c7c4474fh
+dd 0fbbc1990h
+dd 0f592a539h
+dd 0ad6d6988h
+dd 05c895b5eh
+dd 02dc96c72h
+dd 052a2f88ch
+dd 011a8be1eh
+dd 0c6032973h
+dd 008eea7cbh
+dd 09ff61892h
+dd 006204ca8h
+dd 0485236e8h
+dd 089771a1dh
+dd 0a0d0fe97h
+dd 02a3efc4ah
+dd 01bb70a92h
+dd 0abaf6893h
+dd 056078c6fh
+dd 0a74e0d5ch
+dd 0d6e28c61h
+dd 0234f95d1h
+dd 0e1ad79fbh
+dd 0c4a6682fh
+dd 008e9fdf5h
+dd 09ad48e7ch
+dd 09c0336b8h
+dd 0b6a753b2h
+dd 0475a1a25h
+dd 0e8217b86h
+dd 0e7c1b2aah
+dd 0d06323cah
+dd 0e8cbb5a5h
+dd 08b6a9360h
+dd 0748486b6h
+dd 0858c0260h
+dd 05824ef29h
+dd 0ca542c94h
+dd 0ecf90d58h
+dd 03bb8c521h
+dd 0db22bb95h
+dd 083c45f59h
+dd 092637f9eh
+dd 055c9a1c6h
+dd 0c1118e8eh
+dd 0f1de4411h
+dd 0abb8d254h
+dd 01891c2aah
+dd 08dfc3111h
+dd 0a9ab2134h
+dd 0d1fc8dach
+dd 08817f2a1h
+dd 0fb4aba5bh
+dd 0008772c1h
+dd 01c162050h
+dd 0b92b6e58h
+dd 0c1523dcdh
+dd 08f2b1afch
+dd 0902eaf22h
+dd 03a9b06c1h
+dd 08490040eh
+dd 073729bf2h
+dd 0f082d482h
+dd 0e0206db2h
+dd 01732da6ch
+dd 06ff53a20h
+dd 089973673h
+dd 04c9a7778h
+dd 061fcca1ch
+dd 087c12ea5h
+dd 00b4e39c0h
+dd 00020544fh
+dd 0958ce2b3h
+dd 065458c3eh
+dd 0b63fa446h
+dd 0ee36c16ah
+dd 0832d01deh
+dd 0743f5ad5h
+dd 0e6f1ac48h
+dd 038c83fe4h
+dd 05281debch
+dd 07b4e1b0dh
+dd 0857dcfd9h
+dd 04a21d31ch
+dd 0c8618dc9h
+dd 0a2474177h
+dd 08b23a6a0h
+dd 087afabc3h
+dd 0fe48c380h
+dd 042ce06cbh
+dd 043d65802h
+dd 0ab2d9c64h
+dd 006fb3129h
+dd 012da3f6ch
+dd 02ea6890dh
+dd 070fc521dh
+dd 02831d62ah
+dd 04981db12h
+dd 0293b7cb6h
+dd 086cb4166h
+dd 0a9fb2890h
+dd 0299268a3h
+dd 0ce2d9b77h
+dd 0a37d5734h
+dd 069c36b45h
+dd 096f1f082h
+dd 04d937dafh
+dd 0369cdeb8h
+dd 075beccceh
+dd 033a16d9bh
+dd 00fadfe1eh
+dd 0595a9650h
+dd 079f4ac20h
+dd 079d5396fh
+dd 0ab6c92b8h
+dd 049c34e67h
+dd 0d28f69c0h
+dd 0d8f5369dh
+dd 0bf2e0985h
+dd 0fedb0010h
+dd 03cbef973h
+dd 0627a43c0h
+dd 0ed201c80h
+dd 00221afffh
+dd 0d286679eh
+dd 02c1de7bch
+dd 003c0a4beh
+dd 0e5acd110h
+dd 08f61588bh
+dd 096bfdac0h
+dd 0903e3e63h
+dd 08441ef21h
+dd 084fd3c65h
+dd 0a8a34258h
+dd 0c5405ef1h
+dd 0d2d51b0fh
+dd 0332b4547h
+dd 01a7908d6h
+dd 02030fbf4h
+dd 047ceff88h
+dd 038b512a9h
+dd 0d4f1fb30h
+dd 03915ce36h
+dd 055472a60h
+dd 0443f41b2h
+dd 00de2ec0dh
+dd 028cc4799h
+dd 036389e94h
+dd 0191fe6eeh
+dd 07cc8368ah
+dd 0ce5c09c9h
+dd 05acc0eb0h
+dd 0c9638e36h
+dd 012a9a36fh
+dd 0dcb18a9fh
+dd 09bd776e4h
+dd 026f12716h
+dd 0d75b0272h
+dd 0212dead0h
+dd 0a3fc1348h
+dd 096e01e96h
+dd 0b7e536bdh
+dd 03a5ec3f4h
+dd 009ffa9f3h
+dd 0639d65c7h
+dd 08c24c202h
+dd 086663ffeh
+dd 0cc6a215fh
+dd 0bd3cba56h
+dd 07452709eh
+dd 01750ff94h
+dd 021ee4256h
+dd 0d1bd2815h
+dd 07d1bef97h
+dd 07e547d80h
+dd 0be49a1c5h
+dd 049ab62cah
+dd 008e0a6d1h
+dd 08d7c9d83h
+dd 0330e4faeh
+dd 05c8cd563h
+dd 0838e5c85h
+dd 05a69de4eh
+dd 0aa72fdb7h
+dd 095acfe03h
+dd 03e19d633h
+dd 07e031b62h
+dd 0bbc916e9h
+dd 0f287db9ch
+dd 071e3a547h
+dd 08d633743h
+dd 0f2d00b8fh
+dd 0fd007eceh
+dd 07187c894h
+dd 05b466b5fh
+dd 07792d52bh
+dd 02f315a77h
+dd 006cfcb53h
+dd 05d4d21b1h
+dd 0a3c9cdeeh
+dd 036ce157ch
+dd 0426ded65h
+dd 063c19af4h
+dd 0dad1f180h
+dd 0d5d87973h
+dd 0fc6baee4h
+dd 0f6fa3878h
+dd 0bf015206h
+dd 0181cf192h
+dd 05b950517h
+dd 05407a13fh
+dd 0d997431dh
+dd 04313fb22h
+dd 00bbe60b2h
+dd 07ef3a929h
+dd 017fe6033h
+dd 0fc9a006ah
+dd 0e403e10dh
+dd 0e0f8d108h
+dd 0a9deffb4h
+dd 0ce7c401fh
+dd 05e97b144h
+dd 0efafd54ch
+dd 04bd367b2h
+dd 0dc1187fah
+dd 0ff9e8c77h
+dd 06724f27eh
+dd 00a2f7367h
+dd 0857300abh
+dd 0927809cah
+dd 0dd2a04ffh
+dd 076ca47adh
+dd 0b78eb6f3h
+dd 04419cfefh
+dd 07aaf0f91h
+dd 01e41867ah
+dd 049afe227h
+dd 03437fb30h
+dd 07526738fh
+dd 056eb98d2h
+dd 04ec5c397h
+dd 0e1fe2bebh
+dd 0f035db54h
+dd 0be6bef82h
+dd 05c6bc7e7h
+dd 001a06ebfh
+dd 064d93cfch
+dd 0c5e802abh
+dd 0ebaa820ah
+dd 0790610b4h
+dd 0577b85a2h
+dd 079d3b443h
+dd 09bbd4b17h
+dd 0ce45a8ceh
+dd 0b632b762h
+dd 0120b4352h
+dd 0d51b0c2ch
+dd 0fcb66f33h
+dd 02be658a1h
+dd 06dbadd73h
+dd 0941980bch
+dd 015e25d3dh
+dd 0cead946eh
+dd 07c2b0321h
+dd 0330541f6h
+dd 0ca4f8294h
+dd 00a30e86eh
+dd 02a272781h
+dd 0022c66c2h
+dd 0321821a7h
+dd 080dd9594h
+dd 0d886b92bh
+dd 0013432f2h
+dd 0f5a48b56h
+dd 08d17f0b9h
+dd 095800966h
+dd 098afb1abh
+dd 06d845b03h
+dd 099ec97d0h
+dd 0200d2458h
+dd 07a6d4cd8h
+dd 0e18e4a4eh
+dd 0093036e5h
+dd 0fa899a8fh
+dd 0b52b4472h
+dd 0f5564f0eh
+dd 03e1159b6h
+dd 092c9adceh
+dd 0c3b6bffdh
+dd 0a8dacccdh
+dd 01d1d738ah
+dd 0a271d2c7h
+dd 0221e7fa7h
+dd 0cd6f691bh
+dd 0445f7b6fh
+dd 0c6b09f8eh
+dd 01634d8f1h
+dd 0d01e6c90h
+dd 0879411c9h
+dd 02e7f184ch
+dd 088d91f45h
+dd 01799b8bbh
+dd 0dfd5a95bh
+dd 08a176c2fh
+dd 02f81ae93h
+dd 0bbec14b9h
+dd 0ddfa43b1h
+dd 017e4b7a3h
+dd 00ef2517ah
+dd 05b2dcc62h
+dd 0ff9f2bf4h
+dd 0200c60f6h
+dd 076de06eah
+dd 0e9bddba8h
+dd 0916a9419h
+dd 0423f1a00h
+dd 0e5708295h
+dd 0a5973036h
+dd 03a488e5bh
+dd 00abecfebh
+dd 0067bf261h
+dd 0c29821d3h
+dd 02934511eh
+dd 0a3852173h
+dd 036cb957eh
+dd 0cd75cce9h
+dd 000a14b12h
+dd 03d734b83h
+dd 01ed4fcd1h
+dd 0da810d32h
+dd 08c505c43h
+dd 0f6ce54f9h
+dd 0fd1b05fah
+dd 0e69e6cech
+dd 004bd79edh
+dd 02f4f4dc1h
+dd 0062c09e4h
+dd 0f736652ah
+dd 098be0b40h
+dd 04055de8dh
+dd 01797eb49h
+dd 0a9dc73adh
+dd 02107537ch
+dd 0cab0f41fh
+dd 040ca9fd0h
+dd 03a2279e7h
+dd 00e70029fh
+dd 0b86e08ech
+dd 0575c062eh
+dd 076f046e4h
+dd 0986bae69h
+dd 08d2445d5h
+dd 067447218h
+dd 0f0be4a44h
+dd 09ef91a75h
+dd 0e4794977h
+dd 0301db791h
+dd 0691fe129h
+dd 053a1b797h
+dd 0a3e5295eh
+dd 0fff2ec88h
+dd 02afa54e7h
+dd 0043a99c6h
+dd 0abd1267dh
+dd 06749fc04h
+dd 0b60c401eh
+dd 021755168h
+dd 014020580h
+dd 08f3dbca4h
+dd 0d91cd7c9h
+dd 0802fd1c0h
+dd 0248b04f3h
+dd 045157229h
+dd 0e7634202h
+dd 01ba2abf9h
+dd 06920ca24h
+dd 042d6beaeh
+dd 05d97beb5h
+dd 06732d509h
+dd 014e280feh
+dd 0c218a6beh
+dd 08217a870h
+dd 0ea7b607fh
+dd 01aa294cfh
+dd 0862a66c7h
+dd 0377afc3eh
+dd 0308e7a87h
+dd 062500026h
+dd 06c5ace14h
+dd 0adbad0c9h
+dd 0c1804dfch
+dd 003680698h
+dd 00db7dbcch
+dd 03f4e6d31h
+dd 0eee4be02h
+dd 048d67cfah
+dd 07d6a9d33h
+dd 0b70b1c4eh
+dd 01d0df2ebh
+dd 07b04ad6eh
+dd 04fe1b627h
+dd 0acf1c121h
+dd 0bb048c8bh
+dd 03d095dc0h
+dd 0fef38cfeh
+dd 01df7cd2ah
+dd 0e854be52h
+dd 0eb17890ah
+dd 0f4511e1bh
+dd 0fae2853ch
+dd 00b2476b1h
+dd 0d717c48fh
+dd 080b52cadh
+dd 0f9ac4478h
+dd 0dc1bef73h
+dd 0d9aeb256h
+dd 004e0a4bbh
+dd 0b108e15ah
+dd 0ced26979h
+dd 08e84019bh
+dd 0aa7fa1a4h
+dd 0ac9ba460h
+dd 0e047c539h
+dd 007f90518h
+dd 0740c456ch
+dd 0fae0778eh
+dd 096d89cd8h
+dd 02e5205adh
+dd 0362e5666h
+dd 070c6ac53h
+dd 00264eaa5h
+dd 0e8df9cb3h
+dd 0c6bf17eeh
+dd 0fc8f7b6eh
+dd 0a8d53e25h
+dd 02bcfb5b0h
+dd 023be03d9h
+dd 02d086901h
+dd 051582dfch
+dd 02effafbbh
+dd 0f47c133eh
+dd 02d640594h
+dd 0d059d918h
+dd 03727c239h
+dd 0df5e057ah
+dd 045e2b487h
+dd 0df616c89h
+dd 06a19cd85h
+dd 04c723bfdh
+dd 088d8b24dh
+dd 0fda19c5ch
+dd 05d3c09b7h
+dd 07ee12267h
+dd 042c280f2h
+dd 016c2f186h
+dd 019437ecdh
+dd 0c9210b0fh
+dd 03e537ac4h
+dd 060027fe3h
+dd 0c894729eh
+dd 0dd09cb68h
+dd 043dbd830h
+dd 07c8a6ca4h
+dd 09b3fa3ech
+dd 0c4fe6da9h
+dd 0641b28e3h
+dd 048f3288eh
+dd 015ca3588h
+dd 0e9a3f7c1h
+dd 0db278700h
+dd 0dde022a1h
+dd 0d1637600h
+dd 07d642242h
+dd 0d130470dh
+dd 06ff1acabh
+dd 0bfc3f4cch
+dd 0e757cae4h
+dd 0f2e77946h
+dd 0c5fcc6c6h
+dd 01e64b1c5h
+dd 0e826f804h
+dd 0101f8e23h
+dd 06d936186h
+dd 0dfd270eeh
+dd 0727528bdh
+dd 01e4e9852h
+dd 07ef7fbe9h
+dd 0978eb738h
+dd 040905a15h
+dd 0481bf8bah
+dd 0b1760badh
+dd 044d658abh
+dd 073157cf7h
+dd 0b984269fh
+dd 040c528beh
+dd 0c2f297cah
+dd 0a1c12971h
+dd 0721c9929h
+dd 0ecdeedaah
+dd 0e1c61ceeh
+dd 0bd92bc7fh
+dd 0606986e9h
+dd 0ee3bc1eeh
+dd 06fb4d879h
+dd 0909327f4h
+dd 07ef425f9h
+dd 0ee7f9845h
+dd 05a869dd6h
+dd 0c9ab3f75h
+dd 0ba97ad42h
+dd 010089d79h
+dd 00eb3bf45h
+dd 081ffe178h
+dd 06b2eada4h
+dd 0997d785ah
+dd 0e8306550h
+dd 01b1cadc7h
+dd 017c42c59h
+dd 02fe7fda6h
+dd 092fd14fch
+dd 07f1870beh
+dd 01b0a1e45h
+dd 0aaa9f9c1h
+dd 02e07b189h
+dd 042b119edh
+dd 002c53a8ch
+dd 0e8a2f070h
+dd 061081867h
+dd 0bceed442h
+dd 045c7dc8ch
+dd 08ee1d432h
+dd 0528b3f21h
+dd 0662bb033h
+dd 0837d379ch
+dd 0d7b0e14eh
+dd 0f0dc566ah
+dd 03095066bh
+dd 0b744d989h
+dd 0d2236c05h
+dd 0c0cdae70h
+dd 0134012ech
+dd 0fc04662ch
+dd 090b27026h
+dd 056074c29h
+dd 046a8cf7fh
+dd 051772cd8h
+dd 0b27fcc19h
+dd 074543b71h
+dd 0d789fff2h
+dd 0286e3441h
+dd 0596000a5h
+dd 099acaef3h
+dd 0ffc4603eh
+dd 0a8d1d864h
+dd 061d29604h
+dd 001257d45h
+dd 08c6d1bb5h
+dd 06922ef67h
+dd 0a3a6a468h
+dd 0bc0e0975h
+dd 0e9b31a3fh
+dd 0dfaa9429h
+dd 0c097352dh
+dd 0e7114584h
+dd 0ec8eae91h
+dd 0dfc237beh
+dd 006da051bh
+dd 09284bfe4h
+dd 0cc1197bfh
+dd 0aa45468fh
+dd 0d4e0778ch
+dd 02ed12bd7h
+dd 0c0be0f00h
+dd 08e9c0214h
+dd 033397af5h
+dd 01940ce82h
+dd 02c245881h
+dd 09d2757dbh
+dd 03d048980h
+dd 03163952dh
+dd 096d4aa79h
+dd 0c3b8c37ch
+dd 09d083e46h
+dd 049e4ddc6h
+dd 00cfe3e61h
+dd 000772e49h
+dd 03760eea0h
+dd 0d75c1ab6h
+dd 0a17248fch
+dd 00388ec57h
+dd 02ac55f86h
+dd 073d32bd8h
+dd 031cc70beh
+dd 08cbb64e6h
+dd 0c63745a3h
+dd 05ab78feah
+dd 0c9c0cb27h
+dd 0044a8a75h
+dd 050922882h
+dd 06845fcb3h
+dd 0f94eca13h
+dd 0e12ac093h
+dd 0eb583c64h
+dd 0bae81167h
+dd 0f7218a4eh
+dd 0eee4732ch
+dd 0791a83eah
+dd 0d445e66ch
+dd 0eeb8e67fh
+dd 02c46c599h
+dd 06226af1ch
+dd 011c0c6ebh
+dd 02d76f427h
+dd 031085460h
+dd 01ba91f1ah
+dd 038dbeec7h
+dd 05d324651h
+dd 034f10817h
+dd 0986e836fh
+dd 04fddf364h
+dd 09780c711h
+dd 092ce12beh
+dd 046193676h
+dd 06390c944h
+dd 0b85c87aah
+dd 0407fa47fh
+dd 0d8236306h
+dd 053292d54h
+dd 08c8e51bdh
+dd 007d089fah
+dd 05da87d76h
+dd 060a17538h
+dd 08afa8f0ch
+dd 028182d2fh
+dd 008406512h
+dd 0010a3eech
+dd 0856c2a0bh
+dd 0d34ddf25h
+dd 0fa776f87h
+dd 0ef38c556h
+dd 01ec1729eh
+dd 056839045h
+dd 015417a58h
+dd 0782f31f2h
+dd 0accb5480h
+dd 084568c6bh
+dd 0f0c4396bh
+dd 0da7978cfh
+dd 0a941f769h
+dd 03435ccc1h
+dd 03296e193h
+dd 0ae36d7a8h
+dd 05fc0a6edh
+dd 0528e0212h
+dd 089c4a85eh
+dd 0bb8e0504h
+dd 0bc03b6b2h
+dd 0c91bc389h
+dd 05a827e95h
+dd 09f76ed2bh
+dd 09ab609ddh
+dd 077d04037h
+dd 0ff6417e3h
+dd 04e1ab381h
+dd 0427d0029h
+dd 0c7910b70h
+dd 017019b7ah
+dd 065fe4e96h
+dd 0046064cch
+dd 02a0167e1h
+dd 07fff286fh
+dd 0ae0ce236h
+dd 0819ff124h
+dd 02ba4b8afh
+dd 00e8aae49h
+dd 040bdb258h
+dd 0df651232h
+dd 08b31939eh
+dd 0baef0750h
+dd 0830a9f06h
+dd 0f0cd09feh
+dd 07c709af0h
+dd 0cc70adf2h
+dd 03a28cf5bh
+dd 024e250e0h
+dd 07a6e9214h
+dd 03e33a19ch
+dd 0e1b1c47fh
+dd 0f9f55101h
+dd 0bec77cdbh
+dd 094541132h
+dd 05acecc52h
+dd 0e4189b69h
+dd 0054fb1ebh
+dd 067766185h
+dd 054edda7ch
+dd 0a350584bh
+dd 0d04482bah
+dd 0aebbddc5h
+dd 0bdb7ecb5h
+dd 0dee5a8e3h
+dd 035cd883bh
+dd 0e02b7ac9h
+dd 0a5216af4h
+dd 085a0cd7bh
+dd 03855f6dbh
+dd 052a3de3dh
+dd 0252d1291h
+dd 072e13dadh
+dd 01ab6eb34h
+dd 056ee26b9h
+dd 0ee94a847h
+dd 0c8caa0ech
+dd 0f9e58e71h
+dd 06390a4e2h
+dd 03a99855ch
+dd 0442dd66bh
+dd 07e830f4dh
+dd 03200621ah
+dd 06cf85826h
+dd 04cd32693h
+dd 0d8759908h
+dd 0fd7d2f61h
+dd 044ea5526h
+dd 0acbb7ed1h
+dd 035131dbeh
+dd 071d975fch
+dd 0a8040ba0h
+dd 06360c501h
+dd 006353194h
+dd 096044cc1h
+dd 0e73383e9h
+dd 05192f5cbh
+dd 01be9c8cdh
+dd 0ce717d82h
+dd 04a9e7359h
+dd 0d4918aaah
+dd 0b89641cbh
+dd 005268bcbh
+dd 0f427ade3h
+dd 0ffd4076ah
+dd 037aaefe6h
+dd 047447330h
+dd 05bd61c2ah
+dd 0168f637fh
+dd 0bed87108h
+dd 0ecdd6b3ah
+dd 017cd6cb6h
+dd 0a3428215h
+dd 058e303dbh
+dd 0dbfffd01h
+dd 03b3d5caeh
+dd 0d449a28ah
+dd 08fbbde2dh
+dd 093e5f8b4h
+dd 0405684d8h
+dd 03b5094dbh
+dd 04ffc1128h
+dd 07a73bf06h
+dd 0e94ee5cdh
+dd 0fe6c5af1h
+dd 08bf1bfa0h
+dd 06571c40dh
+dd 040e53ed3h
+dd 0f05c7632h
+dd 0003035dbh
+dd 0411f557ah
+dd 0ce89905dh
+dd 036d1fbf2h
+dd 086043742h
+dd 0806953cdh
+dd 0df5b601eh
+dd 0451e18d7h
+dd 00caadacfh
+dd 04435a974h
+dd 00bc62b9fh
+dd 0c83703f7h
+dd 057ede9b8h
+dd 059de1dc0h
+dd 0ac0f23d9h
+dd 03c66d6b5h
+dd 0e5052d36h
+dd 0a203fb4eh
+dd 052f6d723h
+dd 0014d3696h
+dd 0e5162993h
+dd 0d25d6f28h
+dd 09f9d7762h
+dd 0e65d04b6h
+dd 0863b9006h
+dd 0fabcd278h
+dd 0796e4e51h
+dd 088e92cd5h
+dd 09af82cbeh
+dd 09175fd0fh
+dd 0c1d9c938h
+dd 01763b029h
+dd 057a3d61ch
+dd 051480d60h
+dd 094541c0eh
+dd 014079960h
+dd 0f6f7311ch
+dd 0b211c397h
+dd 036b97de9h
+dd 03bdf1ddeh
+dd 05e285739h
+dd 0b25d7cd0h
+dd 0cca75b49h
+dd 068e6497dh
+dd 0c52fd0cdh
+dd 09ea9a6b3h
+dd 0f9c4a8f0h
+dd 0fa0753e4h
+dd 06084b402h
+dd 0e18ef692h
+dd 03ded7438h
+dd 0af49571dh
+dd 05f508d9eh
+dd 02a6e8604h
+dd 010306b57h
+dd 0bb153c04h
+dd 0cc4058d5h
+dd 0e1369188h
+dd 049af1032h
+dd 006bbb188h
+dd 095ed02ceh
+dd 00170c7d0h
+dd 03b45e733h
+dd 0ff4878aeh
+dd 0b879b357h
+dd 03dd3a514h
+dd 0d18c6d09h
+dd 0ef67404dh
+dd 0d5b09e25h
+dd 04bd94fcfh
+dd 0b5a4e019h
+dd 0cfea0331h
+dd 011285c6eh
+dd 05b9aa290h
+dd 03c236c10h
+dd 077ee35d5h
+dd 07d1cb144h
+dd 04ac1d300h
+dd 0153b60e3h
+dd 0a0d5d0b9h
+dd 00b88b732h
+dd 0db3db4c4h
+dd 0b88d397bh
+dd 072c01531h
+dd 0bc09c05eh
+dd 08bb57390h
+dd 039e3b991h
+dd 0f7fba472h
+dd 01de81b25h
+dd 0b7a346cbh
+dd 06f791591h
+dd 0aec41056h
+dd 0f6df220ah
+dd 060eb48c8h
+dd 09d0246a6h
+dd 072ea9dcah
+dd 04ac6f0f7h
+dd 065ccc759h
+dd 099a3d2d7h
+dd 0e2882519h
+dd 07e372471h
+dd 0e29543cdh
+dd 08cba1444h
+dd 0042d87d4h
+dd 04a292cech
+dd 0dea41b0ah
+dd 0312d4736h
+dd 0a61d3109h
+dd 0c987069dh
+dd 03ad10f13h
+dd 040c82862h
+dd 0ec956e35h
+dd 01d69392ch
+dd 05eecba0ch
+dd 0cf4bf409h
+dd 0eabded9ch
+dd 0c37d016ah
+dd 0076afffch
+dd 0a4778ba5h
+dd 08addf4c8h
+dd 0e1700c63h
+dd 0f7985e9bh
+dd 08fcbb919h
+dd 041d46077h
+dd 0cff564a0h
+dd 0c343c906h
+dd 01228f225h
+dd 073194008h
+dd 0493378eeh
+dd 09f65c7b4h
+dd 043e50736h
+dd 09e72bf98h
+dd 004ca0390h
+dd 0decb5d74h
+dd 0abf57bc8h
+dd 0c0a70641h
+dd 0ac044504h
+dd 07864ffa5h
+dd 05f1386cbh
+dd 07628d9ceh
+dd 05baabb99h
+dd 0c0cfa88fh
+dd 0df7bd62dh
+dd 05d756464h
+dd 0ccdd228fh
+dd 0e07663d2h
+dd 092fd2d78h
+dd 09c292bd6h
+dd 0791642d5h
+dd 0ff44d414h
+dd 0ce1587fah
+dd 0765ccec7h
+dd 03377e6e1h
+dd 0a52ee563h
+dd 06d78d1d0h
+dd 0469c364fh
+dd 0614d2360h
+dd 0c39be2fah
+dd 0b77bcad0h
+dd 0a66253b9h
+dd 00be1eaa7h
+dd 04da05dc7h
+dd 07927511ch
+dd 083d58bfbh
+dd 0904c28bfh
+dd 060554d2fh
+dd 0f4ccc8f0h
+dd 03c7a161bh
+dd 0befc810bh
+dd 0853a6d52h
+dd 060a54a94h
+dd 0728c4773h
+dd 0750cb112h
+dd 0d9252e3eh
+dd 0c53ff3efh
+dd 0f72c6bd4h
+dd 0bfce98e9h
+dd 0d985b1f4h
+dd 04fd3f2f4h
+dd 04e6ae6cah
+dd 0f82ea61dh
+dd 0370393f0h
+dd 030a3558ah
+dd 0d7836286h
+dd 07228b3cch
+dd 071c222f7h
+dd 002ff02a3h
+dd 00ff6c6f5h
+dd 0f7dab264h
+dd 088d2e46bh
+dd 0586d4fbdh
+dd 0ff99db3bh
+dd 0261d63f6h
+dd 0cadd3597h
+dd 0b06a8115h
+dd 08c82717bh
+dd 035fddf7dh
+dd 07f56d0b8h
+dd 066952599h
+dd 0fe24e424h
+dd 02a551e04h
+dd 0048adccdh
+dd 006dd860eh
+dd 06a069a41h
+dd 0024db176h
+dd 00dc81f01h
+dd 01df940aah
+dd 0ef00b0c5h
+dd 0a06dfbaeh
+dd 040aa0f28h
+dd 0c72891ffh
+dd 0d54f2db7h
+dd 0c34804eeh
+dd 0480ecacfh
+dd 0d9c28801h
+dd 00ba0e089h
+dd 02bb3157dh
+dd 0f0b439f6h
+dd 0f739a2ceh
+dd 006f4b488h
+dd 0b5c5cabfh
+dd 02ccbbfb2h
+dd 0ac538fech
+dd 0dc903137h
+dd 0b0be865ch
+dd 0b21454c7h
+dd 02e7e8b1fh
+dd 0ff9ff22bh
+dd 0d4dc0798h
+dd 08caf3af9h
+dd 04b4fc837h
+dd 0f7ff5c25h
+dd 08530aef1h
+dd 0f42d7dd2h
+dd 0ca44e3dfh
+dd 0426fb112h
+dd 0df834b24h
+dd 085b0bf74h
+dd 04edb56eah
+dd 07671ae22h
+dd 07fce7f68h
+dd 0033f6940h
+dd 0cfbe87f0h
+dd 01b429fb5h
+dd 0c079d830h
+dd 001385446h
+dd 0dc30e428h
+dd 08732387dh
+dd 0ca320f13h
+dd 0871e6e15h
+dd 055e9ff25h
+dd 037b61ee4h
+dd 094fef710h
+dd 04c6d0f52h
+dd 0af3886f7h
+dd 00705d45fh
+dd 0cbc2893bh
+dd 0424db48bh
+dd 04538a575h
+dd 0905d2685h
+dd 0b324bcbfh
+dd 0fc16f5e6h
+dd 00d9aaa75h
+dd 0666d0530h
+dd 0bbbaf62ch
+dd 0d1311c24h
+dd 056a4533eh
+dd 0d3c55ac6h
+dd 0665357adh
+dd 00888a099h
+dd 0675d2c76h
+dd 033fde768h
+dd 031c5e3bfh
+dd 046e9c5e9h
+dd 096880482h
+dd 08a65e4d5h
+dd 08c82cb2eh
+dd 0653bf848h
+dd 0de552dbdh
+dd 01d237c95h
+dd 01424f583h
+dd 028d61507h
+dd 0436cb5eeh
+dd 0009faf16h
+dd 0efb4f971h
+dd 044e33263h
+dd 0ed729617h
+dd 089fb2785h
+dd 0273224f0h
+dd 058caf857h
+dd 014646bc0h
+dd 061801ebdh
+dd 0ef84b6ddh
+dd 03bc3f64dh
+dd 0c44c0151h
+dd 0b8912d78h
+dd 0eef86b57h
+dd 0ec9e0ff1h
+dd 0db82fef5h
+dd 0c4359a55h
+dd 069ec8406h
+dd 0f86ea71fh
+dd 01f1a38a8h
+dd 0b021b38bh
+dd 0076f92f0h
+dd 0169cec6eh
+dd 058afff86h
+dd 014a6fb1bh
+dd 0f7385fbbh
+dd 05e487cf1h
+dd 0e838e1cah
+dd 099533a23h
+dd 058ade83ch
+dd 09a979dd0h
+dd 0c3931726h
+dd 04ec6528dh
+dd 014d9c480h
+dd 0b6289985h
+dd 028a82cb0h
+dd 082f5cea8h
+dd 0da165c19h
+dd 066fd0c83h
+dd 0685eddc2h
+dd 0783c4a4eh
+dd 012df2aa4h
+dd 01f74a3f3h
+dd 0c136f98dh
+dd 0b4002206h
+dd 01370a8f1h
+dd 03b74023eh
+dd 03330fb49h
+dd 02a006cd7h
+dd 0ea146f1eh
+dd 0ea698684h
+dd 0a78c1a9fh
+dd 04fd777f7h
+dd 04f705e3eh
+dd 0774192e7h
+dd 09a180a3ah
+dd 0a9d7cb47h
+dd 0c161ac5ch
+dd 07e58a330h
+dd 0716ff902h
+dd 0836c6ac4h
+dd 0fd59edd9h
+dd 034a37f17h
+dd 0c019050dh
+dd 0f744d1fdh
+dd 0d98d07e7h
+dd 0c77d6867h
+dd 07a6377b9h
+dd 04da88acfh
+dd 07d139518h
+dd 032ccb3feh
+dd 0bf7dc211h
+dd 07280b5e8h
+dd 09791ccf4h
+dd 0f2b9806ch
+dd 04361ef0fh
+dd 08c69da9ah
+dd 085f5d940h
+dd 00259ce71h
+dd 04b787e98h
+dd 0994bd28ch
+dd 03b9d1fddh
+dd 081d67f2eh
+dd 027edbbcbh
+dd 0ee8e3e19h
+dd 0b7f82846h
+dd 05ed3e242h
+dd 089d59bfch
+dd 0d6b4cb89h
+dd 00dc381b5h
+dd 054ca9051h
+dd 042db8983h
+dd 0ecd4c594h
+dd 0abac9652h
+dd 09def6db2h
+dd 0e01d9301h
+dd 0265f225eh
+dd 004c15a63h
+dd 01c5aadd4h
+dd 03102c5f6h
+dd 09fcd9d6fh
+dd 0663d98d0h
+dd 043aea6bdh
+dd 04e7f59eeh
+dd 08dca9998h
+dd 023bf8439h
+dd 0e41bab1dh
+dd 049e92b41h
+dd 032cdd352h
+dd 02cd0e4e1h
+dd 03e6a1eafh
+dd 0b538f5d1h
+dd 09a31dcffh
+dd 03e373e07h
+dd 0cbb62acfh
+dd 09439d29bh
+dd 0cc7be7a9h
+dd 0d9ad7a97h
+dd 04c837ab4h
+dd 0f87c51d0h
+dd 0fd4479aah
+dd 0a0b0c651h
+dd 0393c4dcah
+dd 03604d55bh
+dd 095ecf819h
+dd 0ee622c1dh
+dd 060958aceh
+dd 05133ae6fh
+dd 09d1a1870h
+dd 021888e83h
+dd 0da4cf248h
+dd 0bef510b0h
+dd 0ca14e15dh
+dd 09e7e6ae8h
+dd 0b958505ah
+dd 022465f1ch
+dd 0074ab287h
+dd 01228ce33h
+dd 008c2b2ffh
+dd 0513ccf4eh
+dd 009cfd1c7h
+dd 0d11bef89h
+dd 07bfa78cch
+dd 01de7b8d8h
+dd 0e607d5f1h
+dd 05cfe418bh
+dd 04c4cadabh
+dd 07152166fh
+dd 08c6dfd50h
+dd 096a85814h
+dd 005618bceh
+dd 044b8967ah
+dd 025b29c0eh
+dd 070bb73c8h
+dd 0c6565122h
+dd 06b965974h
+dd 0838e6f29h
+dd 02de326c2h
+dd 066c7afbeh
+dd 0fc05569ah
+dd 05415dc52h
+dd 0c1963b08h
+dd 0c1ffed53h
+dd 0a4a31ad1h
+dd 0f6eea552h
+dd 0691ebe27h
+dd 09ba94e5ch
+dd 07ffa3c21h
+dd 0adf8a412h
+dd 0b7716c09h
+dd 07db86a5ah
+dd 061cb8416h
+dd 0a3143219h
+dd 07ce8a0d0h
+dd 0fddad0efh
+dd 03e66cb3eh
+dd 0a652e957h
+dd 0487db2cah
+dd 001501919h
+dd 0e81d66d8h
+dd 0fb7f2e98h
+dd 0beb6c81dh
+dd 0b63f9f81h
+dd 06c82cac6h
+dd 0eedc0418h
+dd 0e95d82f9h
+dd 0b227ce91h
+dd 0b1cada31h
+dd 0928e6581h
+dd 0f203c0c6h
+dd 0d80baee4h
+dd 05173f922h
+dd 0ce9354c1h
+dd 04f4ba916h
+dd 05bb2f0dbh
+dd 0abbbfdceh
+dd 0e5dbaa69h
+dd 0f8fd3594h
+dd 065add11dh
+dd 0e12cfca5h
+dd 0a976ab62h
+dd 036d2d5b0h
+dd 011bbcf79h
+dd 06ffe8c95h
+dd 09aeabd8dh
+dd 0d87ac362h
+dd 04d582878h
+dd 0f1475e3ah
+dd 0f754b5e7h
+dd 070b4e4f5h
+dd 0425ea0e1h
+dd 0bb692b43h
+dd 038c237a3h
+dd 097f4640eh
+dd 038eea3feh
+dd 098528a11h
+dd 00e9e9279h
+dd 05d4d9a1fh
+dd 0650a54a2h
+dd 03aac96bah
+dd 000a51481h
+dd 0cbacd6c4h
+dd 06a63bdb6h
+dd 0e3928c7ch
+dd 0196e21c8h
+dd 0c10c276dh
+dd 055369ec3h
+dd 0e668c8dfh
+dd 04eb0f236h
+dd 0bc329135h
+dd 0744bd550h
+dd 0fe18b2b7h
+dd 0e5ac1073h
+dd 0357f7933h
+dd 026eae17ch
+dd 073db1306h
+dd 0b25d1e23h
+dd 0369f951ch
+dd 0746d84c1h
+dd 032270875h
+dd 078608929h
+dd 0512604fah
+dd 0a2500afah
+dd 0d376af4eh
+dd 07e150bc2h
+dd 0d3b27f2ah
+dd 0c54c8814h
+dd 0e6ffe1c1h
+dd 02418ee51h
+dd 01dcb2550h
+dd 0ff54e693h
+dd 03bb3b71eh
+dd 00207756fh
+dd 0a2b735fch
+dd 02cbcade6h
+dd 085d3a860h
+dd 03b5e4914h
+dd 0778e6944h
+dd 08c7e7e6ch
+dd 0af026473h
+dd 0d5509d91h
+dd 0d20fcc70h
+dd 0e5764bcch
+dd 04d16e51eh
+dd 0f223c56eh
+dd 076b1d7c0h
+dd 07e8e16d9h
+dd 0e8ce21e5h
+dd 0c9433a8dh
+dd 07446e928h
+dd 0aadfadb1h
+dd 017be5609h
+dd 001572731h
+dd 025830e21h
+dd 0f050405ah
+dd 055d2a337h
+dd 07a482167h
+dd 0146aca1ah
+dd 064f398f7h
+dd 0c0932aebh
+dd 0c2f83a2ah
+dd 0a17e2e2dh
+dd 0bc762d46h
+dd 0c1d26af9h
+dd 0887d7aach
+dd 0efbc6bb7h
+dd 0d3be8b71h
+dd 0dc4e98cbh
+dd 007b8c7bbh
+dd 058c46472h
+dd 06ee25511h
+dd 032d8bb09h
+dd 075e70619h
+dd 09235d90ah
+dd 04ec1d095h
+dd 015a48c46h
+dd 04c036047h
+dd 05e68cdbbh
+dd 07a2b2e46h
+dd 082755ce6h
+dd 04bd71ccdh
+dd 07e31ecb2h
+dd 0f55cdef2h
+dd 00710ff53h
+dd 00fd9265ah
+dd 00d4469cch
+dd 0b8eb7f6ch
+dd 0b961b25ah
+dd 0790ffa2eh
+dd 0174507e7h
+dd 079b77e33h
+dd 0c74010b4h
+dd 0fa4fea67h
+dd 06864a6f9h
+dd 05d5e193eh
+dd 06d7540c6h
+dd 0f4387fb3h
+dd 07523b848h
+dd 0349b5e76h
+dd 026af2eefh
+dd 0abce3fc7h
+dd 03e22e3ech
+dd 03e2600e4h
+dd 0763b5137h
+dd 008ceba07h
+dd 0b3760227h
+dd 000ff9cd3h
+dd 094848581h
+dd 05c10bc0ah
+dd 0b2def28ah
+dd 0ca1e8509h
+dd 0e051a69eh
+dd 035fec5e7h
+dd 0dbf40803h
+dd 03896eddeh
+dd 0e4fbbbd8h
+dd 0e4b88c0dh
+dd 0fcaa081ch
+dd 098924f81h
+dd 0e73e956eh
+dd 03fe7e538h
+dd 0710a84a3h
+dd 06d54f4c6h
+dd 0c96c971bh
+dd 07f0fb939h
+dd 01f300be7h
+dd 08ebfcf9eh
+dd 02c6d5fefh
+dd 04b13aacah
+dd 0b782a03ch
+dd 0ddee6155h
+dd 04c09dc46h
+dd 0fb547fdbh
+dd 0ac5a0416h
+dd 06c90dfadh
+dd 05611726ah
+dd 0cd7855e4h
+dd 0d410ad34h
+dd 00e42df9ah
+dd 0b4ca2b69h
+dd 0bf5a4e79h
+dd 087c64327h
+dd 0415e955dh
+dd 01e76d7e4h
+dd 025c9196ah
+dd 0045f2f7fh
+dd 05624d57eh
+dd 0b45f59d5h
+dd 07833748ah
+dd 0768d2923h
+dd 01bb96367h
+dd 0bb374fc2h
+dd 0ef56e430h
+dd 012504239h
+dd 0b5083590h
+dd 0db3dcddbh
+dd 07126cb7dh
+dd 063dc1e8eh
+dd 0a65c0c49h
+dd 03ad0dbaah
+dd 0bcf05235h
+dd 0afaf106bh
+dd 0321d5966h
+dd 098531a5ch
+dd 0d8165631h
+dd 0c227fb64h
+dd 0774483ffh
+dd 01e070166h
+dd 0e37565d6h
+dd 05e64e2a2h
+dd 0af4c4bd1h
+dd 021c32415h
+dd 04d74adf9h
+dd 0382545dch
+dd 0ade8d8fah
+dd 09abd878ah
+dd 038b5c80ah
+dd 0010c19dah
+dd 0f3777ed1h
+dd 09fdb42e6h
+dd 05178be41h
+dd 0c9962dc6h
+dd 002fa3116h
+dd 017a712b9h
+dd 00483c8deh
+dd 0c623bfc6h
+dd 0f6e9953ch
+dd 06515661fh
+dd 0d9b5f364h
+dd 053714191h
+dd 0b2169075h
+dd 08b224c1eh
+dd 0c0e4749bh
+dd 0ed742b51h
+dd 06a029237h
+dd 03ba9a6a0h
+dd 067d8f0c0h
+dd 0135412b2h
+dd 0305df6d4h
+dd 06723af41h
+dd 04d3a548ah
+dd 0d086ab6fh
+dd 0c92141f8h
+dd 061a7df5eh
+dd 0ebb510e6h
+dd 0617ba3ech
+dd 018af84f7h
+dd 0e8fcb405h
+dd 014579a32h
+dd 047931969h
+dd 08a55babdh
+dd 02815d28eh
+dd 0579f6f44h
+dd 066264e17h
+dd 0b7472dc5h
+dd 0c80c95ceh
+dd 05ec594a1h
+dd 041df3ca8h
+dd 03cd89916h
+dd 02fa241c2h
+dd 06fb6214bh
+dd 0174dc6f5h
+dd 0f6c0abb6h
+dd 02bf4d2b6h
+dd 070508647h
+dd 060cfd551h
+dd 0801d2192h
+dd 0ea0df36bh
+dd 0129e6da6h
+dd 09704a7e2h
+dd 0d399bd6eh
+dd 030575f41h
+dd 027cdc7b3h
+dd 0933bc6deh
+dd 0049fe696h
+dd 00bbf304ch
+dd 0c85dc13fh
+dd 06721b881h
+dd 0f95bf70ah
+dd 0c4dd1f88h
+dd 0bb847fa4h
+dd 02764ce06h
+dd 093495444h
+dd 064093a3eh
+dd 083d2c754h
+dd 032a76c78h
+dd 0ffd4b3bbh
+dd 06527fdf8h
+dd 00c140316h
+dd 0a5bf9bf7h
+dd 08af567d0h
+dd 087421dfdh
+dd 08c7cb970h
+dd 078361aeeh
+dd 0e153192fh
+dd 0210c9d5ah
+dd 0a570e2cch
+dd 08d5650d7h
+dd 0f5f7f36dh
+dd 022c778ffh
+dd 02f2a65bfh
+dd 0ec56fa9ah
+dd 06ff5e832h
+dd 003ce6578h
+dd 007165307h
+dd 0a1ca59dbh
+dd 033099e22h
+dd 07fcf5f30h
+dd 0d7ec3279h
+dd 02319f0c8h
+dd 0b751c48ah
+dd 04f87dd29h
+dd 0c7ef00b0h
+dd 030bd26ebh
+dd 0af3a58dch
+dd 0eeca1ee8h
+dd 07df37c98h
+dd 0d0bb8296h
+dd 0237e7d74h
+dd 0e41df42dh
+dd 07291c122h
+dd 08b1ef4c5h
+dd 01edd7444h
+dd 01fd96186h
+dd 0546f7050h
+dd 0fa577680h
+dd 03809f132h
+dd 0d34c2976h
+dd 0ed348c83h
+dd 04ed198bfh
+dd 048aeb337h
+dd 012326f24h
+dd 0913c6965h
+dd 0275048b6h
+dd 0e59bdfb1h
+dd 04ba87857h
+dd 07eb577f6h
+dd 03b027228h
+dd 035c1a131h
+dd 042a207b7h
+dd 0014a1f4ah
+dd 0349a6b72h
+dd 09e6999deh
+dd 0ae7d4506h
+dd 07aecfb54h
+dd 0993b557eh
+dd 0aa3745e2h
+dd 0bed295b3h
+dd 0539392cbh
+dd 01fd2c853h
+dd 00829a579h
+dd 0e1219fdeh
+dd 0b75d55e2h
+dd 0f01f95d6h
+dd 0484e8468h
+dd 0feb9ccc7h
+dd 0a04ce2aeh
+dd 035ed6e22h
+dd 085dd1c7eh
+dd 0622eeebch
+dd 0d8466468h
+dd 05eaf9852h
+dd 08664baafh
+dd 0cc34538ch
+dd 05f349384h
+dd 0a81fc9aeh
+dd 0a92a3e89h
+dd 0e37bdb46h
+dd 09cf90a65h
+dd 068134155h
+dd 0c7867559h
+dd 08ac43474h
+dd 011d9fe81h
+dd 01807ee17h
+dd 0d9803d20h
+dd 0c5b6fbd6h
+dd 02ee29031h
+dd 0dda90332h
+dd 03ede396ah
+dd 0c5e05ec5h
+dd 0429e1062h
+dd 024fed5fah
+dd 029c7e855h
+dd 0f2726423h
+dd 081080614h
+dd 0638aa7c8h
+dd 0afd61c48h
+dd 00c14f319h
+dd 0a18a2d46h
+dd 0a2728f8fh
+dd 0133c2cf7h
+dd 00672ab5ch
+dd 0f111e406h
+dd 0287fa523h
+dd 049d669fbh
+dd 0efe65836h
+dd 0910f7e8eh
+dd 0bd11e355h
+dd 08183c15eh
+dd 06288aba1h
+dd 0a73e9dceh
+dd 0378e4d4fh
+dd 0639c5634h
+dd 0cb7d375fh
+dd 0a83a368eh
+dd 08f3f98d2h
+dd 0698581abh
+dd 038856320h
+dd 0a2d0a917h
+dd 096c132d8h
+dd 0b53f3cbah
+dd 009c4e33bh
+dd 0fe74040fh
+dd 0f3dffcb0h
+dd 01e7141cah
+dd 07cd2ed57h
+dd 0cb32a902h
+dd 03c967835h
+dd 014009362h
+dd 079eebd72h
+dd 088ad1c02h
+dd 06c8af7beh
+dd 0198e420ah
+dd 02e78f5d4h
+dd 04a5b82a3h
+dd 0c8a49f21h
+dd 000abb6d1h
+dd 01e938cd8h
+dd 02b2b09a6h
+dd 0c9fd6df2h
+dd 0d57ac7f5h
+dd 0edfdddb9h
+dd 0902755efh
+dd 0f4abc0bch
+dd 06903ab87h
+dd 0d415c82eh
+dd 04a6c2012h
+dd 02269bdbdh
+dd 02fe84afbh
+dd 02bf3ee96h
+dd 0ecaa77f5h
+dd 0c7cfdf51h
+dd 09b3bafb4h
+dd 06b9435a7h
+dd 0828eb55ah
+dd 00d1e4f90h
+dd 0effebe89h
+dd 062f8c256h
+dd 0b73976a8h
+dd 072b505a3h
+dd 0302ebca0h
+dd 0b0efea2ch
+dd 0bfed7e9ch
+dd 0dfd45570h
+dd 0bfc34822h
+dd 02b1bf510h
+dd 02f9fb516h
+dd 0097d9015h
+dd 09eb6232ah
+dd 001023687h
+dd 07f4065bbh
+dd 0de19d3fch
+dd 0d608289bh
+dd 0edb49334h
+dd 0d043de03h
+dd 04aa500c6h
+dd 0e182fccbh
+dd 081b92982h
+dd 09403bba8h
+dd 09d077c27h
+dd 084480310h
+dd 06b05b22bh
+dd 008c27f0ah
+dd 015a28314h
+dd 0a4db18dah
+dd 03e8409e3h
+dd 08c6f3066h
+dd 093bdb9b7h
+dd 00f4ecf96h
+dd 062894e39h
+dd 0fd08911ch
+dd 093eb391fh
+dd 0f34ae0e5h
+dd 066e1643fh
+dd 0430df837h
+dd 07f7388bbh
+dd 08e421293h
+dd 0db4f76f3h
+dd 0c8b27e2eh
+dd 010344b63h
+dd 0d8d8ae95h
+dd 023feaa54h
+dd 0d2b91a1ah
+dd 027e4ebf6h
+dd 09281c63bh
+dd 0583260cdh
+dd 0c8a27853h
+dd 044abc6fah
+dd 0e68e8b32h
+dd 0d285fc9bh
+dd 042702fcdh
+dd 04d8922a1h
+dd 07e60197dh
+dd 0487f0663h
+dd 054e471a0h
+dd 073e855a9h
+dd 0a621a7fch
+dd 0c034e9fah
+dd 0f8dbe17eh
+dd 001fa9277h
+dd 029647459h
+dd 0b8a63ba7h
+dd 05bf557dah
+dd 0a1a95890h
+dd 0b5ea0a0eh
+dd 06d1fa5c9h
+dd 0607e06f8h
+dd 09fd59e00h
+dd 0c258c338h
+dd 083f7c98fh
+dd 0344778c1h
+dd 0563bf3f1h
+dd 06a041845h
+dd 079f76241h
+dd 04469fdfdh
+dd 0c84d413eh
+dd 0277f2cadh
+dd 09a3bf078h
+dd 0997de306h
+dd 0d105d320h
+dd 0f067f88fh
+dd 0cd0e06f8h
+dd 098d06613h
+dd 00a2e6778h
+dd 039bc45e1h
+dd 0dec678e8h
+dd 0de5c66a7h
+dd 0ed50cc67h
+dd 0ab513449h
+dd 0aba7c28dh
+dd 04cbb649bh
+dd 030444d43h
+dd 0244051a9h
+dd 006658bbeh
+dd 0b7cfb99eh
+dd 0637b0bc6h
+dd 0101709aah
+dd 0f8ebc501h
+dd 0999829c1h
+dd 0e7fd5260h
+dd 0f7e22973h
+dd 07b26aa88h
+dd 06c1afff5h
+dd 0d1dd5223h
+dd 0c312bdd6h
+dd 0f05b9e90h
+dd 0907cc6b2h
+dd 07cf6e7f4h
+dd 020819163h
+dd 0f7a50209h
+dd 03957808bh
+dd 0e3d76d15h
+dd 014b871e4h
+dd 0bedd43eeh
+dd 06e453871h
+dd 0d37035ddh
+dd 0063c2515h
+dd 0770e28b1h
+dd 052d09798h
+dd 00a673fbdh
+dd 06547b86bh
+dd 062807b37h
+dd 0b4691db1h
+dd 09665237dh
+dd 0a506e8a6h
+dd 0eaa4e7dbh
+dd 073907f98h
+dd 00520fedbh
+dd 02e90581ch
+dd 062894434h
+dd 031dcf93ch
+dd 0bc67af1ah
+dd 0dc5d125ch
+dd 096328b3dh
+dd 0112afba0h
+dd 0deca8b0dh
+dd 05e0d14b7h
+dd 0b47f32d0h
+dd 0af36d48ch
+dd 096b04659h
+dd 024b23001h
+dd 03513dbb6h
+dd 003fd8c6dh
+dd 04d0fee58h
+dd 01bc4a204h
+dd 0f0576923h
+dd 085fbbde8h
+dd 03a2568f6h
+dd 0907038dah
+dd 0a19031d6h
+dd 0bf692c82h
+dd 0ce7f2c8ch
+dd 06a1b099dh
+dd 0a0db7a17h
+dd 0dd2e3a41h
+dd 01971dcaah
+dd 0051ff5abh
+dd 00257c597h
+dd 055e075e8h
+dd 0864a1125h
+dd 08c482725h
+dd 00d50aa64h
+dd 0c7976017h
+dd 060b1621ah
+dd 036c9c07dh
+dd 0c890206ch
+dd 0de83b95ah
+dd 0931778eeh
+dd 0ffd6ba36h
+dd 0b5f13a1bh
+dd 0f26a3454h
+dd 064049cf6h
+dd 0b0047d88h
+dd 0e91bff39h
+dd 06154a3deh
+dd 02654a31fh
+dd 016f02d55h
+dd 08f505bcfh
+dd 051dbe84ch
+dd 0558ad42bh
+dd 0fc04188ch
+dd 0cc4e75cch
+dd 055539d47h
+dd 070f8957bh
+dd 077e827a5h
+dd 0781a2b5ah
+dd 0c8078813h
+dd 08fd09ca0h
+dd 0f22799eah
+dd 068fd2d0bh
+dd 0917536e1h
+dd 0d4231022h
+dd 088e777afh
+dd 00a6b0cc7h
+dd 00ced0248h
+dd 0792a1788h
+dd 0acc00fe5h
+dd 0129d4ebbh
+dd 04481b3a0h
+dd 08f28bbf5h
+dd 07c826f39h
+dd 0ec9ec0eah
+dd 0b6c40617h
+dd 070cfc120h
+dd 02a585d8fh
+dd 0abfc0e93h
+dd 09efe9f2bh
+dd 0bb0552c5h
+dd 020e6cc10h
+dd 06af05450h
+dd 035cd3c0ch
+dd 01f5857c5h
+dd 0d2fdecd7h
+dd 011764083h
+dd 05ff715deh
+dd 0a4c8f69ah
+dd 0e2d84fa4h
+dd 0c9af6d71h
+dd 0856b1b6bh
+dd 0b50e8345h
+dd 0ba36f0d2h
+dd 01d36501eh
+dd 082f124ceh
+dd 035ed35f9h
+dd 03df6c72bh
+dd 034f2ae78h
+dd 097f8fa80h
+dd 044ec7c01h
+dd 0eef8ac8dh
+dd 0fd1b0356h
+dd 0b0d1f7feh
+dd 0189aa6fch
+dd 03973052dh
+dd 0451f80b9h
+dd 0fd4457ffh
+dd 09e85be7dh
+dd 0a7fab710h
+dd 0e58c8859h
+dd 0eb9b5acdh
+dd 0ad9e40d0h
+dd 0eafb5356h
+dd 00cec68f7h
+dd 017266f87h
+dd 06aa89541h
+dd 01ea14bedh
+dd 05d0ad663h
+dd 01b90f7e1h
+dd 06cd04582h
+dd 095039a10h
+dd 05ba4c2a6h
+dd 045275942h
+dd 009c5096dh
+dd 0947b86a3h
+dd 04a47d00fh
+dd 0d964dbceh
+dd 0a3a63b30h
+dd 050190417h
+dd 0da05e275h
+dd 052a0557eh
+dd 07a8025aeh
+dd 03859a4c5h
+dd 09f16fe49h
+dd 02e4bc4f4h
+dd 0b51c1e39h
+dd 0f3011f70h
+dd 006c3ea18h
+dd 03ffd94a0h
+dd 0408781bbh
+dd 0ee3b4f85h
+dd 0bf783374h
+dd 05bdb1c50h
+dd 0112b4d19h
+dd 08128e799h
+dd 08a9f8b89h
+dd 0f36e2b8bh
+dd 004886e25h
+dd 01c178d80h
+dd 02dc635d6h
+dd 0c83d7a8bh
+dd 0c2509302h
+dd 02d64cf14h
+dd 0afb1e240h
+dd 0edddf7fch
+dd 04959b388h
+dd 0d3e1d867h
+dd 0ab1a729ah
+dd 07ad6cebeh
+dd 026e3db09h
+dd 0a6adaaeah
+dd 08332af4eh
+dd 01402b6c3h
+dd 0785f82aeh
+dd 0396a7ba3h
+dd 02d02e5d2h
+dd 0d21c6761h
+dd 07880188ch
+dd 08bfc98aah
+dd 0b7a147e9h
+dd 010f801d1h
+dd 0d03b4a5eh
+dd 0ad60ba1ch
+dd 0037d987ah
+dd 09a79a2aeh
+dd 0dcadbbb5h
+dd 055799a61h
+dd 0df84106ch
+dd 02a186695h
+dd 0e03855dbh
+dd 09eb61233h
+dd 084efe060h
+dd 0a300d5f6h
+dd 05e99e056h
+dd 04f24d002h
+dd 05e06c20ah
+dd 0d4e4f80ah
+dd 0991ed516h
+dd 01af2139bh
+dd 03be37120h
+dd 0f63ca021h
+dd 0cc6f96a7h
+dd 0733d486ah
+dd 07f8ff71ch
+dd 032453386h
+dd 08f22a35eh
+dd 0bbaf3e1ah
+dd 04bbd05eah
+dd 0e246893dh
+dd 0351e34a7h
+dd 0b4c0a111h
+dd 02ad10c8eh
+dd 066006023h
+dd 0da845d09h
+dd 077f25cc3h
+dd 0b52db45bh
+dd 00295b018h
+dd 099821dfdh
+dd 05a8dd079h
+dd 0a98c8d43h
+dd 0b46aa47ah
+dd 0bef82f2fh
+dd 0e2b0d802h
+dd 0b833e854h
+dd 0f21ce38eh
+dd 07b645474h
+dd 0e95b70ffh
+dd 04ba53c1ah
+dd 0196f89f6h
+dd 0969bd0dch
+dd 08840fefch
+dd 0ac6f929fh
+dd 03062117bh
+dd 0b356cb10h
+dd 07c088fcah
+dd 08a04ce44h
+dd 0cf6eca5fh
+dd 0382df71bh
+dd 09335699ah
+dd 07e0ac6b7h
+dd 0293dfdaah
+dd 07fdd5d72h
+dd 0c388e74eh
+dd 0a9829b34h
+dd 02e2866e4h
+dd 0dbc5f8ach
+dd 0819b9930h
+dd 003c0eab2h
+dd 0e0c25eb7h
+dd 03577833dh
+dd 042c35b64h
+dd 07d5599aah
+dd 02af910cah
+dd 04163f1a7h
+dd 00c115650h
+dd 0037884fdh
+dd 0945fcafdh
+dd 0f7c44ecdh
+dd 0763e1a2eh
+dd 093c3f233h
+dd 0ac8a8ceah
+dd 086296c2bh
+dd 01169f2a2h
+dd 07da8389fh
+dd 0ef69a482h
+dd 05e465bach
+dd 014537140h
+dd 013469852h
+dd 048f2f75dh
+dd 0402cd3f6h
+dd 007b9dd93h
+dd 021fb5818h
+dd 0d48fed64h
+dd 0d162052ah
+dd 0f5b2b141h
+dd 06ff8a55bh
+dd 0a37ba675h
+dd 0a9b935beh
+dd 0f3f34bb0h
+dd 0e9b79d67h
+dd 05715f75dh
+dd 06dd723e8h
+dd 0e99f130bh
+dd 0d86bd67eh
+dd 09bbe27a5h
+dd 01f986031h
+dd 0627bbd9dh
+dd 0ef697950h
+dd 00b686ca4h
+dd 0d9f3252fh
+dd 084686e08h
+dd 01edca624h
+dd 027205f77h
+dd 0b11ab13ah
+dd 097d038beh
+dd 047cdb4f2h
+dd 0a408228bh
+dd 031651446h
+dd 0be670a39h
+dd 0f2ccec61h
+dd 07a711e36h
+dd 08c628bc8h
+dd 0f939f878h
+dd 07e567a07h
+dd 039711c1ch
+dd 01bc0bad4h
+dd 0f9f8bd81h
+dd 011a0e47dh
+dd 0f960cdb6h
+dd 0773c8f61h
+dd 05143c943h
+dd 0839569b0h
+dd 00df88c1fh
+dd 043a81a9fh
+dd 09a4f81f0h
+dd 02dd377a2h
+dd 0a0b6b7aah
+dd 038388a1fh
+dd 046adfca1h
+dd 032e09b89h
+dd 0c11ff52ch
+dd 0ccd72448h
+dd 075a76948h
+dd 0b831c259h
+dd 078b5a7e5h
+dd 04c0d099ch
+dd 04b0b6edfh
+dd 0f6741bfbh
+dd 0eea957ach
+dd 05ffd00abh
+dd 0c0972298h
+dd 021f0ef35h
+dd 0ee0e9187h
+dd 0d9c26904h
+dd 0598725b7h
+dd 067c21927h
+dd 012a2bf20h
+dd 0c96efa04h
+dd 020dc6f73h
+dd 0704dfcb3h
+dd 077c7cdf8h
+dd 07c987857h
+dd 021e815d6h
+dd 0bea394f3h
+dd 0066f6f1eh
+dd 03c2d82edh
+dd 0009a3e2ah
+dd 0382476f8h
+dd 0d198f282h
+dd 0ae2b5235h
+dd 086c043e5h
+dd 007d4e7bdh
+dd 0063b2d7ch
+dd 0d2607c2ah
+dd 0f2b2a592h
+dd 00d0675cah
+dd 0016c5e71h
+dd 065d4e4f7h
+dd 06d5b5265h
+dd 076bd7010h
+dd 085ce4540h
+dd 04510cac2h
+dd 0ee96a709h
+dd 053e85a07h
+dd 0f62b92ceh
+dd 03ad51f02h
+dd 01a65cd81h
+dd 0a3fd8747h
+dd 04214f785h
+dd 054c9823bh
+dd 006a57adch
+dd 0456b185dh
+dd 0cf81aadfh
+dd 0286945bdh
+dd 0e436a946h
+dd 058f60eaeh
+dd 0524d77c2h
+dd 0ed9263e0h
+dd 013e473c6h
+dd 0517340c6h
+dd 07acad401h
+dd 0be32163ch
+dd 0126198d7h
+dd 03e60e2eeh
+dd 0b1bcc4a4h
+dd 000a64307h
+dd 03093ac54h
+dd 0afcb71ebh
+dd 099f3bb74h
+dd 01b91d31ah
+dd 029c26cf5h
+dd 004c0fc5ah
+dd 06d9aded4h
+dd 024776128h
+dd 05fdf2c92h
+dd 085977fcch
+dd 0a15d0ad8h
+dd 03247b3ffh
+dd 07d253842h
+dd 00abf4266h
+dd 072130034h
+dd 04f8bb1b0h
+dd 08984e635h
+dd 0e6926e5bh
+dd 0745d7657h
+dd 08ebb5bcdh
+dd 0daeb7cf2h
+dd 0818011a7h
+dd 023182affh
+dd 0b4b57ed9h
+dd 0438a9df0h
+dd 095d4d063h
+dd 04fd44853h
+dd 04aa3fd0ah
+dd 0feb7e0a0h
+dd 002e94734h
+dd 084b06ddfh
+dd 0e2482133h
+dd 0f39f24b3h
+dd 0c5dad923h
+dd 0be2084e2h
+dd 0bd31d575h
+dd 063425c4eh
+dd 0e4d30991h
+dd 04fe9ad08h
+dd 097d1f180h
+dd 087bac907h
+dd 0c9447645h
+dd 08ca772deh
+dd 0dac12891h
+dd 003c8c7c8h
+dd 0b2fa9f74h
+dd 03ff2d1bbh
+dd 060100ee7h
+dd 005a06d03h
+dd 05cfe2367h
+dd 00c0caf84h
+dd 072e5ae39h
+dd 0a1c83d13h
+dd 0e861fb0ch
+dd 0010ad7adh
+dd 02d69f56fh
+dd 004bba202h
+dd 0d0416bceh
+dd 06472e230h
+dd 00aaf7945h
+dd 080cedb27h
+dd 0d670a065h
+dd 06343480ch
+dd 0de504833h
+dd 03a7860a0h
+dd 031ebc434h
+dd 0ee7e234bh
+dd 0f4fa7f78h
+dd 059080b99h
+dd 0fe883c77h
+dd 0f3e63037h
+dd 0be46764dh
+dd 09b02a55fh
+dd 0f89276c3h
+dd 059dfbc97h
+dd 009c64ed5h
+dd 0c8b195f5h
+dd 063e2fa3ah
+dd 05827d40ah
+dd 092267e96h
+dd 0e317cf50h
+dd 0d9178ebch
+dd 01d6ab9d1h
+dd 092f8458bh
+dd 0772b443eh
+dd 0efd7dc69h
+dd 061fdfb63h
+dd 03d12ca4ah
+dd 011b49269h
+dd 0c8a77852h
+dd 055d34550h
+dd 0bb4ec5a4h
+dd 0c4ec41adh
+dd 0e1fe7fbah
+dd 06cc6daafh
+dd 09a223f06h
+dd 07fbd89cah
+dd 0ac7e9b3ah
+dd 0bdf5edf3h
+dd 0283c3c0eh
+dd 0eea5b2efh
+dd 083b5e054h
+dd 05c03ab67h
+dd 08f864e61h
+dd 0caf29873h
+dd 03d073789h
+dd 0ad944685h
+dd 0a409a1edh
+dd 01e5d9861h
+dd 087d587b6h
+dd 0000545d8h
+dd 0ac100b95h
+dd 03c54c234h
+dd 01fafe0beh
+dd 044453810h
+dd 04733aebch
+dd 0273d60d6h
+dd 0be618841h
+dd 0cdcc7889h
+dd 0daac39eeh
+dd 00485f087h
+dd 04c0b22ech
+dd 024ac2ecah
+dd 0ecb111ddh
+dd 0cbcdabffh
+dd 0450816d2h
+dd 084d11001h
+dd 0499c0465h
+dd 09cc54c0bh
+dd 05abfe0cfh
+dd 044818f31h
+dd 0d8a87ea1h
+dd 09fdc7b4ch
+dd 03f89786dh
+dd 0277760c9h
+dd 09c0f7bc7h
+dd 0c18ccc71h
+dd 0dd7daf93h
+dd 073e7c613h
+dd 0d6a5b176h
+dd 09a5db57fh
+dd 0eb672dcfh
+dd 04963f716h
+dd 0649519cah
+dd 0756d4833h
+dd 0909a9a28h
+dd 044351049h
+dd 03cafea59h
+dd 05e9315fdh
+dd 047758c14h
+dd 0a4947f9ch
+dd 08bb7e90ch
+dd 0cab46df2h
+dd 0b9a5c866h
+dd 0a8955ebeh
+dd 0e43cd151h
+dd 0beab6125h
+dd 043949a14h
+dd 0cfdeeb1ch
+dd 013845891h
+dd 0e243d9e8h
+dd 069800bbfh
+dd 04b256db6h
+dd 0194fbeb4h
+dd 0764717ech
+dd 0c31a81d8h
+dd 0e49b8aa3h
+dd 0d5ecd578h
+dd 0aed24cc8h
+dd 08ef359e9h
+dd 047a5cc0dh
+dd 012140b88h
+dd 0689ce84bh
+dd 03b3a5fdch
+dd 0aa222937h
+dd 0da727c26h
+dd 07c85b66eh
+dd 0ce22ad84h
+dd 018ca1a8fh
+dd 02c96b544h
+dd 096eb5132h
+dd 0603cc829h
+dd 074517515h
+dd 0e78dda51h
+dd 0122803f5h
+dd 08d885455h
+dd 03dc11ae7h
+dd 023d83bdfh
+dd 0d41ab5d9h
+dd 090e456cah
+dd 090feb9e7h
+dd 024dba594h
+dd 06a040b9dh
+dd 06f1cdfa4h
+dd 0ca86adb5h
+dd 0cf0de7f9h
+dd 0bb1155d6h
+dd 0da9d9fc2h
+dd 0fa9e1cc3h
+dd 0caf8749bh
+dd 0a4a562e5h
+dd 0c3ed0274h
+dd 03a95b7a8h
+dd 01f0a80bbh
+dd 05f9c35fbh
+dd 0c22296d5h
+dd 0f581e9cah
+dd 03f900edfh
+dd 0a4b93739h
+dd 034faab00h
+dd 06de21ebbh
+dd 05db672b7h
+dd 088f8dce1h
+dd 05ffdc0b7h
+dd 041773574h
+dd 00e5369fdh
+dd 0b096a9b0h
+dd 0a15dbd9ch
+dd 0922c915ah
+dd 0e5143a3eh
+dd 01e0737dah
+dd 01668b1ebh
+dd 0794aadcch
+dd 00245f86bh
+dd 022d0cbd2h
+dd 08f0fa7aeh
+dd 052ba9b45h
+dd 01aa6a9ach
+dd 06eb14cedh
+dd 0bd403d0dh
+dd 0abc779a8h
+dd 048a93656h
+dd 09d3bba8ah
+dd 016c642a0h
+dd 045bc7debh
+dd 0cb362a63h
+dd 00b8107a0h
+dd 03630bde7h
+dd 00f3c6f6bh
+dd 07c5f7e6ah
+dd 04fc44964h
+dd 0f3639d94h
+dd 0c92d64ebh
+dd 099e65c18h
+dd 0fa7c6e6ch
+dd 047c2ad48h
+dd 03718192ah
+dd 0bd29b2adh
+dd 0cf672ee2h
+dd 0c03206c8h
+dd 0c51db31dh
+dd 0a192bc3dh
+dd 05ddc4125h
+dd 0a8f3427ah
+dd 08d55e892h
+dd 0508352c3h
+dd 09b371bc4h
+dd 025c4fe69h
+dd 05602f970h
+dd 03be443b8h
+dd 0d78625e7h
+dd 030cf747dh
+dd 046523bf0h
+dd 0ab1be69ah
+dd 0711bc7aeh
+dd 0731d0165h
+dd 011ab6a49h
+dd 001bfa764h
+dd 093ab281bh
+dd 034a55d40h
+dd 0d973ddc6h
+dd 0636dded5h
+dd 0db21ba8ah
+dd 0889612e2h
+dd 094941d90h
+dd 0d3f8451ah
+dd 0ced9d97eh
+dd 06aa9bc8ch
+dd 0ea7205c0h
+dd 04d4dc2e5h
+dd 05224d1d4h
+dd 0cdddf9d1h
+dd 0ca705631h
+dd 0964a0f5ch
+dd 095a434cch
+dd 0b536dc69h
+dd 0afebe11dh
+dd 078d115c9h
+dd 073e792cah
+dd 0b9d6b35bh
+dd 0e8bfa003h
+dd 0f0a60530h
+dd 098361803h
+dd 01908cffbh
+dd 03f7e1295h
+dd 0134fc1a1h
+dd 0461ae98eh
+dd 011bea8aah
+dd 0db982f77h
+dd 0595cd5d5h
+dd 062dc0810h
+dd 0521c6916h
+dd 0c22761d1h
+dd 0cd78fb20h
+dd 07a296833h
+dd 0763a50d8h
+dd 0de28a9d3h
+dd 0e796fd1eh
+dd 07899d67eh
+dd 038035ddeh
+dd 0f8e390f8h
+dd 0b843137bh
+dd 04e5b3723h
+dd 0f7fc882bh
+dd 09922d595h
+dd 0870dbd71h
+dd 0d57db9ceh
+dd 0b066fff4h
+dd 0122ca9d9h
+dd 06ceecb48h
+dd 0fff7e0abh
+dd 08c36fb76h
+dd 0a6f78758h
+dd 05863177eh
+dd 0380efdcbh
+dd 0f079b011h
+dd 005d76ab2h
+dd 0d9212894h
+dd 0b2bebcb9h
+dd 0a62886adh
+dd 0746bafabh
+dd 06f4c2f60h
+dd 0fb4be4e6h
+dd 0ca7e3012h
+dd 0e800d848h
+dd 074f05da9h
+dd 0e8dde558h
+dd 09f040941h
+dd 0b1ca6f8eh
+dd 0d4618a8bh
+dd 0c9ea6c3eh
+dd 052680fb2h
+dd 04bffb81eh
+dd 08ded6976h
+dd 0714bcf55h
+dd 0ae1bf34eh
+dd 06e929b5dh
+dd 05353be3ah
+dd 011da8d31h
+dd 0430f218fh
+dd 0d0b57debh
+dd 059d7ec2ah
+dd 0167fce01h
+dd 00eafe9e5h
+dd 099ce846ch
+dd 0d48f106eh
+dd 0bccf971fh
+dd 0dc23dd3dh
+dd 05a14501dh
+dd 0ed219f1ch
+dd 03f9f2109h
+dd 0c37d4697h
+dd 02d771aach
+dd 09a2daa8dh
+dd 08d274ab4h
+dd 02f5ca7bfh
+dd 075509638h
+dd 0533f290eh
+dd 0d55d41fbh
+dd 0b6b4969eh
+dd 047eb135bh
+dd 08645fe86h
+dd 02dfc3271h
+dd 0988e5fa3h
+dd 015ac5857h
+dd 07390f426h
+dd 0590dc8a1h
+dd 02e23f7deh
+dd 0db6824aeh
+dd 078c3c16bh
+dd 0dfb015d2h
+dd 0e9a266d1h
+dd 01e4d6a40h
+dd 01e03caadh
+dd 03974e46ch
+dd 0b08e203eh
+dd 002d4f72eh
+dd 0a44358fch
+dd 0524a0b29h
+dd 05d38d4a8h
+dd 0e69bc8dbh
+dd 03bc56fbbh
+dd 0aa6f5d08h
+dd 064d13055h
+dd 0df1b4168h
+dd 090a3c355h
+dd 0ee7d074dh
+dd 00886de4ch
+dd 099d52085h
+dd 0538372dah
+dd 002ddf26bh
+dd 0e5ee6e2ch
+dd 07fcd3387h
+dd 00f11b97dh
+dd 007b8836ah
+dd 0a3c655ach
+dd 075429711h
+dd 080a4d638h
+dd 0edfe70a9h
+dd 04240e9f3h
+dd 0137d076fh
+dd 095cd9711h
+dd 078d1c261h
+dd 05a6699dbh
+dd 0b57a9e31h
+dd 06460310ch
+dd 01da98bbfh
+dd 04062d600h
+dd 0c1e9b5d6h
+dd 0536635a1h
+dd 0efb73417h
+dd 0e6e06e52h
+dd 0e07a47dbh
+dd 02799acb6h
+dd 0c0766afbh
+dd 0553cb882h
+dd 0072e22e6h
+dd 0145cc9fah
+dd 05bfda186h
+dd 09b100ca9h
+dd 04f14e4d7h
+dd 0f5901ea6h
+dd 0d3a4a552h
+dd 012b8450ah
+dd 06ebbca89h
+dd 049dd5c0ch
+dd 09b9af9cch
+dd 0ecbcc902h
+dd 069bbdfc9h
+dd 0cb1f6e68h
+dd 0d60a3b06h
+dd 01d03efbdh
+dd 02b99bb70h
+dd 040c9eba6h
+dd 0411b9464h
+dd 06d4b9f81h
+dd 04767ece1h
+dd 0951af084h
+dd 04a25b287h
+dd 004defbb4h
+dd 0a04cfc8bh
+dd 055fe5b12h
+dd 004e4a670h
+dd 0dc1fbf93h
+dd 08490b13bh
+dd 0f11b42a1h
+dd 087b3c870h
+dd 059b533ech
+dd 0a8d5a62bh
+dd 0cb3b3a2dh
+dd 05305182bh
+dd 03540c9afh
+dd 0ca83e224h
+dd 03e45dc3ch
+dd 0e30590d6h
+dd 08a882b13h
+dd 004619418h
+dd 07b2e521ah
+dd 090970181h
+dd 057f0e702h
+dd 08826dfe3h
+dd 02a043faah
+dd 0e44e3252h
+dd 02f306887h
+dd 0a732e54eh
+dd 0e7b64cceh
+dd 0fa54c451h
+dd 07674b0e1h
+dd 031e7902dh
+dd 077a2400fh
+dd 0858ca21fh
+dd 069f27fbdh
+dd 0c5236644h
+dd 0ed92fa9ah
+dd 01d3647dfh
+dd 046a29acdh
+dd 020fe1cb4h
+dd 06cada350h
+dd 0ed7668aah
+dd 04211abcbh
+dd 05517537dh
+dd 0cfe3e756h
+dd 03b4cd497h
+dd 023ea0449h
+dd 05c9415cdh
+dd 07ffc4d4ch
+dd 04bb66440h
+dd 075edf70ah
+dd 06dad5161h
+dd 0df289859h
+dd 0a71a10a1h
+dd 011fa2014h
+dd 00fd2c010h
+dd 01eb613f2h
+dd 0126ef937h
+dd 02fac9f46h
+dd 0b0e66bc3h
+dd 099ffef0bh
+dd 0a1a4af8fh
+dd 091749e4fh
+dd 0ade37c8eh
+dd 041c0c469h
+dd 030693d87h
+dd 0239410d5h
+dd 05a8afb3dh
+dd 0fccb7de2h
+dd 0921ad5c5h
+dd 068c47a1ah
+dd 0068529efh
+dd 0cdec9c5bh
+dd 0dc1105d5h
+dd 082cf6057h
+dd 0052cbd26h
+dd 0b2327ea1h
+dd 080124e9ah
+dd 0cf228771h
+dd 09806ae5bh
+dd 04460a19eh
+dd 0f7833a9ch
+dd 0d407bab5h
+dd 03e5ea783h
+dd 039f87466h
+dd 03aff9b18h
+dd 0b50268bdh
+dd 03c756923h
+dd 009c7c2d2h
+dd 0343ebe32h
+dd 0ea6154ebh
+dd 006053131h
+dd 027f9eefdh
+dd 0cc114631h
+dd 0dc71a4efh
+dd 023d0e504h
+dd 07b92a1d9h
+dd 0d50d7dc8h
+dd 020ae85d6h
+dd 06030148ch
+dd 0f2dfbae4h
+dd 0b4251b00h
+dd 08cd4f96ah
+dd 08a9384e3h
+dd 078dee38fh
+dd 08c3c303bh
+dd 086a031d7h
+dd 0bd1fe778h
+dd 00de8d169h
+dd 01027aa95h
+dd 09cf0b860h
+dd 055005ec3h
+dd 09d1965c4h
+dd 0eff454a9h
+dd 0320abf49h
+dd 0efefedf1h
+dd 09ffb5551h
+dd 01c410540h
+dd 06054227eh
+dd 069370c9fh
+dd 05efbb12ah
+dd 098339dbdh
+dd 0b4067003h
+dd 02164ad8dh
+dd 06c932e87h
+dd 0d5b27631h
+dd 05ea83140h
+dd 004b205e6h
+dd 08844cc77h
+dd 0e2f1ef74h
+dd 00c60518fh
+dd 06344f1ddh
+dd 0a69fe456h
+dd 0d3bd81f0h
+dd 07b71585eh
+dd 08c03010fh
+dd 041b3dd02h
+dd 0166e83cbh
+dd 024de0b7dh
+dd 063f78598h
+dd 0c2d0bf54h
+dd 08a95fef3h
+dd 0c2b8ab70h
+dd 09016a753h
+dd 09c30a08ah
+dd 0ecc07f79h
+dd 08536fea2h
+dd 004319ffdh
+dd 064b0139eh
+dd 05eec5d74h
+dd 0ba27f734h
+dd 0e1e9c071h
+dd 0556192d1h
+dd 02ebb8802h
+dd 0574599e2h
+dd 0a6e610c1h
+dd 0b7ccd90ch
+dd 005ba94b8h
+dd 02705b8ffh
+dd 0700f446eh
+dd 09841fde4h
+dd 0a18fd4d1h
+dd 02d2e78d6h
+dd 0f70eb03ah
+dd 0b9549fffh
+dd 0f33b9dcdh
+dd 087d72728h
+dd 01f186840h
+dd 030ead2c4h
+dd 0207b1721h
+dd 07b061bf5h
+dd 010f32f22h
+dd 090e14c77h
+dd 0610dec91h
+dd 09bda8f42h
+dd 0e02f3d7ch
+dd 0e75bedf6h
+dd 05e4829ffh
+dd 05c96d440h
+dd 0d41836deh
+dd 054b328a3h
+dd 09e245b43h
+dd 0f6f0d629h
+dd 072148ba3h
+dd 017e97bcbh
+dd 071962f58h
+dd 0c32b26a8h
+dd 0e7315811h
+dd 0cdfaec37h
+dd 0369a4324h
+dd 0aa533416h
+dd 0f90ff003h
+dd 098275b1fh
+dd 0e4e7c954h
+dd 0cdb181bbh
+dd 06db05ed7h
+dd 0710af89ch
+dd 068cdd528h
+dd 07168608bh
+dd 056ff076eh
+dd 0f5c1101ah
+dd 03ea8bfbfh
+dd 0af66aea8h
+dd 04652cfb1h
+dd 0c3556fe9h
+dd 016015978h
+dd 07eab9fc3h
+dd 02833ef47h
+dd 0e00735bbh
+dd 0cbecedc9h
+dd 094024ffbh
+dd 0e8b8f895h
+dd 00a96affeh
+dd 0cc082da0h
+dd 0cb434938h
+dd 0e430a2b3h
+dd 010d419a1h
+dd 063dc5790h
+dd 0ff3f55a6h
+dd 020037ab8h
+dd 04c150803h
+dd 0a92050a1h
+dd 0cbe1c417h
+dd 001c7fd32h
+dd 0831db571h
+dd 0feb5011fh
+dd 0682a1649h
+dd 0d35c065eh
+dd 04d249ff0h
+dd 0622e7e18h
+dd 04237e0abh
+dd 02e4ca552h
+dd 07c24c3d5h
+dd 0afa37953h
+dd 01d393ec1h
+dd 0c9467134h
+dd 077199d9fh
+dd 034dbe522h
+dd 00a0189f3h
+dd 02d1f6840h
+dd 0c059c72dh
+dd 05c480aa3h
+dd 03d8464e8h
+dd 06ada4ff2h
+dd 0dd7da13dh
+dd 0b660e2e0h
+dd 0940d2321h
+dd 09ad7b96eh
+dd 0aac517a5h
+dd 022f48b8fh
+dd 097ae80beh
+dd 0f70327a0h
+dd 0dba20844h
+dd 0005994cch
+dd 09de9e982h
+dd 050936d9fh
+dd 059f94739h
+dd 027d22338h
+dd 0e84c5307h
+dd 052c09dadh
+dd 0d9a3de0eh
+dd 00ec15119h
+dd 02fc3ed35h
+dd 0e7e95988h
+dd 08b51eff4h
+dd 0accba940h
+dd 0545f8928h
+dd 0e318d021h
+dd 0c9fae0a2h
+dd 029f6263bh
+dd 0c4760611h
+dd 0d3531b94h
+dd 0761c661dh
+dd 00a489c83h
+dd 062ee4399h
+dd 0b1e85a0ch
+dd 0e5f05e51h
+dd 0cf97aad6h
+dd 0c51cab24h
+dd 06768bb6ch
+dd 0828dbbf3h
+dd 061114ccch
+dd 0c7e27357h
+dd 0ec380c46h
+dd 0ad9208e2h
+dd 0db3ab208h
+dd 0f50631e2h
+dd 0e7025d82h
+dd 07f8239f4h
+dd 043748e81h
+dd 0f52fa887h
+dd 05fc61675h
+dd 052ddf7c7h
+dd 0111bb06fh
+dd 0a4a63affh
+dd 08a2e6569h
+dd 024999c77h
+dd 0117a2321h
+dd 0c62e0908h
+dd 029aa8acbh
+dd 0db6db816h
+dd 02bc04e9ch
+dd 090928edah
+dd 0d2a2728ch
+dd 026a7a69ch
+dd 0d71242e8h
+dd 00e4137a7h
+dd 0a6839c47h
+dd 0280dfd4fh
+dd 023e640b2h
+dd 0a8d4dcc6h
+dd 0cb0e8042h
+dd 0a5fae6c9h
+dd 0ff58eaafh
+dd 00dce5483h
+dd 0a35a79f4h
+dd 0a7718dd4h
+dd 0a1cd53d2h
+dd 0d736e0dbh
+dd 00f364a0eh
+dd 0efb9aacbh
+dd 070a34c9ah
+dd 0fe3ac1c1h
+dd 0a09a5fa8h
+dd 0e12a3e55h
+dd 0b137209ch
+dd 09420918ch
+dd 023a4dd11h
+dd 02f295ad6h
+dd 02b79cc3fh
+dd 0c4f06192h
+dd 026556157h
+dd 039d4fe99h
+dd 0cb8e65dbh
+dd 0eb749696h
+dd 0c1c40be2h
+dd 081249ddah
+dd 084402fbeh
+dd 004c34b24h
+dd 055617fcch
+dd 0642a2676h
+dd 09fcfeb78h
+dd 05959efa3h
+dd 03166ff48h
+dd 059f03910h
+dd 06eb79800h
+dd 0cd8f86d5h
+dd 0fbc50cf5h
+dd 0bd9d3179h
+dd 07f799949h
+dd 0500fe78eh
+dd 00ec0012eh
+dd 097edd118h
+dd 0d79c3807h
+dd 0961dd6eeh
+dd 0e4dbfd26h
+dd 0867bbcdfh
+dd 0fe84a49ah
+dd 050066871h
+dd 0029797b0h
+dd 08db81925h
+dd 019d0d018h
+dd 0f202212eh
+dd 0392913a4h
+dd 00d2fd4cbh
+dd 0102f7ef0h
+dd 0e263dda5h
+dd 0deb0644eh
+dd 0605b5418h
+dd 0d70e9f87h
+dd 09f7009b5h
+dd 0d7da2177h
+dd 0b09be37eh
+dd 00f0244b8h
+dd 029477023h
+dd 0ba9f87b9h
+dd 068c2fea6h
+dd 099b0af33h
+dd 077cbbc20h
+dd 00c09cb5ah
+dd 08d74a04eh
+dd 0037dcb02h
+dd 01b868d6fh
+dd 0fd92f92ch
+dd 0a1f9434ah
+dd 02416006ch
+dd 058b856e7h
+dd 0181517c2h
+dd 03553b977h
+dd 02edae7e4h
+dd 05d37441ch
+dd 091b14634h
+dd 00ce9b1f1h
+dd 0723eeb35h
+dd 07d952be2h
+dd 031a2a865h
+dd 0ccd53b17h
+dd 0deb1ee86h
+dd 002b5d678h
+dd 0831bdacch
+dd 0e19f4330h
+dd 08bd6b58ch
+dd 0b8839c7eh
+dd 0318f8bb6h
+dd 0e49163d8h
+dd 099cb1f29h
+dd 0ce0075e9h
+dd 0e663fec3h
+dd 05aaf8479h
+dd 03ae628d0h
+dd 04f3be658h
+dd 07e5c4162h
+dd 0bd017df1h
+dd 0f0f8f397h
+dd 059986516h
+dd 023b7dd7ch
+dd 062e4cd91h
+dd 0dc4e858bh
+dd 04ceb0a3bh
+dd 02c41fe48h
+dd 0990993aah
+dd 04fb1e9cdh
+dd 0310eaa5ch
+dd 0cc70448dh
+dd 0fdc8d98fh
+dd 01a14eb48h
+dd 0c9071fa9h
+dd 08d632adbh
+dd 0fc2b70d8h
+dd 0eb7b44d6h
+dd 0db974509h
+dd 0b9895465h
+dd 0069e4ff6h
+dd 0ef3d8c81h
+dd 0551f35f2h
+dd 09f23a647h
+dd 0df6874ffh
+dd 074eb8d52h
+dd 0e01f93b8h
+dd 0bae870cdh
+dd 002023b07h
+dd 0b0771883h
+dd 01abc6e24h
+dd 06ef16a9ah
+dd 044892dcbh
+dd 056d4e2a7h
+dd 034c20ae8h
+dd 0eb2ef79eh
+dd 00e9c0892h
+dd 0dad9b3fdh
+dd 05a9e00d3h
+dd 0958adc62h
+dd 0619409cfh
+dd 036b499c9h
+dd 0e4cd3351h
+dd 053faf388h
+dd 0941565a4h
+dd 0adc75054h
+dd 054cbfac7h
+dd 02cc5ead7h
+dd 024fd1b76h
+dd 0428ff63bh
+dd 0f4cb9153h
+dd 04e2700c4h
+dd 07dbca1f1h
+dd 03abd781ch
+dd 0d2706df4h
+dd 04114e2a1h
+dd 0e98b9c13h
+dd 003f6bd0dh
+dd 03e8a7329h
+dd 00eb0e5abh
+dd 099bde2a6h
+dd 0e31c67dah
+dd 05d684eefh
+dd 0c348a0c9h
+dd 0d9ca0c18h
+dd 08bf9b732h
+dd 06400bf06h
+dd 06986ffa6h
+dd 0a52d90bfh
+dd 0e1a168c1h
+dd 0bcf53001h
+dd 015512330h
+dd 09648204fh
+dd 0ed2cc94ch
+dd 02c5ee34dh
+dd 092e19a7dh
+dd 0f123d789h
+dd 03bd95b0ch
+dd 09428912fh
+dd 05e7bba2eh
+dd 09464ed2bh
+dd 02df252a6h
+dd 020c1b912h
+dd 0d11c6baah
+dd 07908839eh
+dd 07cb35279h
+dd 0da4dfb4bh
+dd 079142673h
+dd 0ba4dc252h
+dd 0998d7e46h
+dd 0db48f521h
+dd 042c02099h
+dd 0a52e3928h
+dd 0082f05eah
+dd 02fa3aca0h
+dd 09756ef67h
+dd 06efba93eh
+dd 04a7a972dh
+dd 0f6d0c24ch
+dd 069c08bedh
+dd 0bf878869h
+dd 06a955443h
+dd 09ba2c7cdh
+dd 08e67435eh
+dd 090eccd8ch
+dd 0bfd4002fh
+dd 0e3315a88h
+dd 0a4a4d8edh
+dd 003751001h
+dd 049555b25h
+dd 0de1457c8h
+dd 080784888h
+dd 018c6ba8dh
+dd 068a8b28ah
+dd 08882b2bah
+dd 08d18f73ch
+dd 09b7dc393h
+dd 086043167h
+dd 0d575a6fdh
+dd 0e3ae6b0ah
+dd 0a92dee1bh
+dd 040ef6a37h
+dd 0262cf6a0h
+dd 0147a7d79h
+dd 074fdbd92h
+dd 002f6225ch
+dd 08692a9e8h
+dd 0e8f1b9dbh
+dd 0c79c81a5h
+dd 0c4d07e29h
+dd 0f076affbh
+dd 07124554ah
+dd 061b69c5fh
+dd 024497360h
+dd 082b3899fh
+dd 07f99f9fbh
+dd 0b7da0fdbh
+dd 003f15cebh
+dd 0ee3c2a60h
+dd 0f54d4acah
+dd 0cb9b8721h
+dd 083b1066ch
+dd 0038d5587h
+dd 0a2a2ac4fh
+dd 0fb13b963h
+dd 07d88aa36h
+dd 09dc9356dh
+dd 097d9d13fh
+dd 0e0ced8bdh
+dd 062a43e6ah
+dd 0b6f7139ah
+dd 0fe2f792bh
+dd 061e84300h
+dd 0a6110cebh
+dd 0bc27f18eh
+dd 0d421ae3bh
+dd 0f1bc9056h
+dd 0c235a8f4h
+dd 04cedb107h
+dd 006dd65c0h
+dd 07262d003h
+dd 0db992012h
+dd 0b1858942h
+dd 05e49ff72h
+dd 070c9aaf0h
+dd 0693d4cd3h
+dd 049010517h
+dd 020b2cac6h
+dd 03d574235h
+dd 04f2be09bh
+dd 0444d50b0h
+dd 0a4c7426eh
+dd 0deae2c8ch
+dd 01268937ah
+dd 04d15fee3h
+dd 07f35a903h
+dd 09820d7adh
+dd 0dcae4163h
+dd 0cbfc5fffh
+dd 04363060eh
+dd 048b7bab7h
+dd 0fc9e797eh
+dd 0d14cb40bh
+dd 02bc40196h
+dd 0169fabf9h
+dd 039593074h
+dd 0221b1e93h
+dd 06c9bcaaeh
+dd 0ecaed2bah
+dd 01fa3e519h
+dd 03c6863b5h
+dd 056c712a3h
+dd 0f9f5af8eh
+dd 04e3eb256h
+dd 0b2af0ab5h
+dd 0cc15ea93h
+dd 0074ba7a8h
+dd 07b0def6bh
+dd 0a39e8626h
+dd 0513ccf0eh
+dd 0a5714316h
+dd 0708abd00h
+dd 0101212b9h
+dd 0211b97d3h
+dd 0c0fbbdbeh
+dd 0bb8caeb8h
+dd 07fc30d93h
+dd 06a678031h
+dd 026eb0bfah
+dd 0a8a24739h
+dd 064a7e875h
+dd 0a14b0c71h
+dd 0cfa98ee8h
+dd 0edaec6beh
+dd 0a9ac3151h
+dd 0869833a9h
+dd 049dc9c66h
+dd 0a2c4f132h
+dd 08562c0a0h
+dd 04d34fc80h
+dd 026768770h
+dd 07840dd7ah
+dd 0bcdd502dh
+dd 01c58407eh
+dd 0a292e332h
+dd 0a3abaefch
+dd 08c4dc980h
+dd 05b2f375bh
+dd 0c8eabaf0h
+dd 0b97c9d6bh
+dd 0f2ea6721h
+dd 0399ed9b9h
+dd 0a85351c9h
+dd 09f38a1a6h
+dd 04a1e2202h
+dd 03bd02a89h
+dd 0d97c2114h
+dd 0cdae47ddh
+dd 0e301b8a6h
+dd 00f23cb99h
+dd 022b1f775h
+dd 025b6c6eeh
+dd 05060e7f8h
+dd 023563079h
+dd 0bf76b480h
+dd 0fa6d3c68h
+dd 076b1e1e3h
+dd 0effde7eeh
+dd 0858ed5cch
+dd 041d25590h
+dd 0c0e8325bh
+dd 0fe20cb78h
+dd 07ad1b05dh
+dd 04a1a42f8h
+dd 04135e34bh
+dd 0db9e8435h
+dd 04f6359b0h
+dd 0767b11d2h
+dd 0c002eb9fh
+dd 02da3b5deh
+dd 04c938714h
+dd 0539976b9h
+dd 01da7d0e0h
+dd 0834edc6ah
+dd 08300f1afh
+dd 08329786fh
+dd 0b741313ch
+dd 0f72a858dh
+dd 0595c9618h
+dd 06f698b65h
+dd 0027fba22h
+dd 074350133h
+dd 0d5c437b9h
+dd 0323e4188h
+dd 0c76e0b79h
+dd 0983c1544h
+dd 020f21f46h
+dd 00d87ac68h
+dd 09fa00735h
+dd 0e326c18fh
+dd 003651042h
+dd 091553237h
+dd 01a31a194h
+dd 0394efb38h
+dd 01b0b75dbh
+dd 098e61753h
+dd 05d0bdfb0h
+dd 002f6d7c3h
+dd 075f73ebbh
+dd 08f21fd34h
+dd 0ec32ea91h
+dd 0e715a79eh
+dd 0dc7d7809h
+dd 009e68b07h
+dd 09439fcd8h
+dd 0c5bf71deh
+dd 05cce403dh
+dd 0bcfad4e8h
+dd 06f737c44h
+dd 0e439cc72h
+dd 0db86d277h
+dd 08cdf06a3h
+dd 081024353h
+dd 0b63a642ch
+dd 0f3baff38h
+dd 068621ab8h
+dd 0b5fa3ee2h
+dd 0e74d1a68h
+dd 00d922c59h
+dd 06eba04a3h
+dd 0d972008bh
+dd 0a6b61cfdh
+dd 00c7ec75ch
+dd 075fa400eh
+dd 0ae4c39a7h
+dd 046e78af4h
+dd 006320404h
+dd 054ca2823h
+dd 086cacf67h
+dd 0f799e260h
+dd 022e8d9b9h
+dd 04064f239h
+dd 04d2f6179h
+dd 05bb4ff68h
+dd 0c416bc58h
+dd 0f92a548eh
+dd 03d25b7f7h
+dd 06c050e82h
+dd 0640a13edh
+dd 046234051h
+dd 00e0b3affh
+dd 04a6c1b50h
+dd 0c5212e37h
+dd 0415ca1fbh
+dd 0a1435476h
+dd 0dd65e02fh
+dd 01a34fc84h
+dd 0c6f9dfc2h
+dd 084022f1fh
+dd 094c96258h
+dd 0f7c7273fh
+dd 06e3eaadch
+dd 0640d4b32h
+dd 03b55e14fh
+dd 00c8f0b0dh
+dd 08f0294a9h
+dd 04305d80dh
+dd 0929b0f2fh
+dd 003c0667fh
+dd 0858f461ah
+dd 0c03c538dh
+dd 03aa038ceh
+dd 0667cd7f0h
+dd 0e78b1550h
+dd 088d7b842h
+dd 04e0aca4eh
+dd 0433dfc4dh
+dd 02a04370dh
+dd 0f7251ba7h
+dd 0aa9cdcd4h
+dd 025da221bh
+dd 0cda0baefh
+dd 0497550a6h
+dd 067327d83h
+dd 0ff6bc855h
+dd 013e4c835h
+dd 0a900248eh
+dd 00f773006h
+dd 02ddfada8h
+dd 0f2b2d8a2h
+dd 0e5d467a2h
+dd 008f7f295h
+dd 03e97fb06h
+dd 0d1d7219dh
+dd 01250feeeh
+dd 09a596f3ah
+dd 05b9b1f82h
+dd 00b751000h
+dd 0152bd8abh
+dd 05093c650h
+dd 08474a8e4h
+dd 01554e862h
+dd 0af0e1a11h
+dd 0660a31e5h
+dd 08ba520eeh
+dd 0c964127eh
+dd 03c1f6141h
+dd 0ba440087h
+dd 0b6423de7h
+dd 0329136e0h
+dd 048115f55h
+dd 0acc042c1h
+dd 039f8e9e7h
+dd 04a61978bh
+dd 0dc334698h
+dd 09f041140h
+dd 01560ca92h
+dd 041de4816h
+dd 0820876f8h
+dd 0d71e53d1h
+dd 04d6a79cah
+dd 0560529f2h
+dd 0d08f1006h
+dd 071b62693h
+dd 0ef2be8e2h
+dd 0ab73f9aeh
+dd 03442cbb9h
+dd 0e7d65bdah
+dd 047b11c7fh
+dd 04552effeh
+dd 09485d00dh
+dd 0bb344610h
+dd 06d773472h
+dd 0f3bca06ch
+dd 0338fc6e6h
+dd 052e19798h
+dd 078ecc70fh
+dd 066e64adbh
+dd 0875a801fh
+dd 0910846d1h
+dd 09f61d1d0h
+dd 03467ac3bh
+dd 05e477ea5h
+dd 09c8ac455h
+dd 0ce98c771h
+dd 016f4b218h
+dd 0b950d83ah
+dd 07f224894h
+dd 02b76264dh
+dd 027ffa850h
+dd 0c51c8d01h
+dd 0e082b233h
+dd 0b9fa1c8eh
+dd 0cd9e11e7h
+dd 0c6380948h
+dd 019fe63d4h
+dd 0187aea60h
+dd 0f7b575fbh
+dd 07f78f246h
+dd 003d46886h
+dd 0b03430cah
+dd 09598f6e0h
+dd 078d7a63eh
+dd 08c2d9129h
+dd 0559b6800h
+dd 05ae0b8c1h
+dd 05a19ba15h
+dd 0459d8319h
+dd 04b5889deh
+dd 053ce1a7dh
+dd 04d8ccd00h
+dd 022f9cc0eh
+dd 06241d9c8h
+dd 0ecd7d06bh
+dd 0fa293138h
+dd 03a23d900h
+dd 0c00734a3h
+dd 043e94595h
+dd 03a9edc82h
+dd 0519ac29ch
+dd 0289a916bh
+dd 0dbc43b70h
+dd 0435dc764h
+dd 0828c4f84h
+dd 07117fccfh
+dd 03463cad0h
+dd 0e45e4bbdh
+dd 0e564b5ddh
+dd 08944a03ch
+dd 066ff7661h
+dd 0f5ecd581h
+dd 0b3f98b52h
+dd 051642f00h
+dd 0e2fb0792h
+dd 07b85fa82h
+dd 0f7925849h
+dd 09c4376e6h
+dd 0e44eb380h
+dd 0a7a5bd0fh
+dd 0749ca69bh
+dd 00deebfe8h
+dd 0f9c4b310h
+dd 0edd23107h
+dd 0d7a66d26h
+dd 098c7710ah
+dd 0b6dec218h
+dd 09783be84h
+dd 046f3142eh
+dd 0ee051c19h
+dd 07cd76b3ch
+dd 0f3a6dc06h
+dd 01137a2bbh
+dd 03100c942h
+dd 079f040e8h
+dd 0df369474h
+dd 0472a98c3h
+dd 019fa36bfh
+dd 091101e56h
+dd 050de0d98h
+dd 09bc35839h
+dd 0598995d0h
+dd 00ca89ce4h
+dd 07da083b0h
+dd 08ef13ed4h
+dd 078fa6a12h
+dd 00da456cdh
+dd 0a07cc997h
+dd 00c0c64b1h
+dd 0bc24c9ceh
+dd 091c2fee8h
+dd 0abe42d92h
+dd 0af80060eh
+dd 0d6858d2ah
+dd 0771292b0h
+dd 0489fde1dh
+dd 0ed85d406h
+dd 05ca85034h
+dd 0e56be551h
+dd 08f610c4ah
+dd 0014f97ebh
+dd 0af1c2491h
+dd 014430350h
+dd 0230fceffh
+dd 0bc84c637h
+dd 06c9ac883h
+dd 0c58e26aah
+dd 01696cb33h
+dd 0c71d63ach
+dd 0c0233099h
+dd 0e1171786h
+dd 0bb540f24h
+dd 0f317298ah
+dd 03df47634h
+dd 05dabe812h
+dd 01dd40877h
+dd 083c2f523h
+dd 065adafceh
+dd 0404868dch
+dd 0fcb57bc6h
+dd 098c18965h
+dd 0c85db461h
+dd 0b4ad3fa2h
+dd 0f2de79f6h
+dd 0e9500f22h
+dd 01ab042f8h
+dd 01ef56c4dh
+dd 065eda4fah
+dd 0356648fdh
+dd 0566a69eah
+dd 0efa56d63h
+dd 01ea610f5h
+dd 02b880d2ah
+dd 054402e5ch
+dd 0b633824dh
+dd 0593851a3h
+dd 0057122fch
+dd 00b5d0520h
+dd 0ed74a3fch
+dd 08df18438h
+dd 036f749c4h
+dd 02244d62fh
+dd 0771b7b70h
+dd 0fba12750h
+dd 001d80d35h
+dd 0d38e5758h
+dd 08d3deb40h
+dd 041078a5bh
+dd 0aef6ecfch
+dd 059b7e90dh
+dd 0970c3b23h
+dd 0fa074e28h
+dd 03d5f2e69h
+dd 0f4b65602h
+dd 07414ddech
+dd 0b2165232h
+dd 08936a735h
+dd 0e1933d87h
+dd 0505a6fa2h
+dd 047966b75h
+dd 039529f65h
+dd 08352374fh
+dd 0bec93959h
+dd 0a09be5cch
+dd 02a3098d3h
+dd 0801614c1h
+dd 0eb32dd7ch
+dd 0a9649db1h
+dd 07d619762h
+dd 0515a0751h
+dd 02546a26eh
+dd 00e5b0b00h
+dd 01dd420c4h
+dd 013dff0c0h
+dd 06ddc3af2h
+dd 0ca611ab3h
+dd 0839784b5h
+dd 046ed7095h
+dd 0f35f0200h
+dd 0d7594122h
+dd 0c688bae2h
+dd 06dd378f5h
+dd 027af3289h
+dd 0a05da9cdh
+dd 08c76f135h
+dd 061758bdbh
+dd 06bd0adc9h
+dd 04957e2f8h
+dd 0af25545dh
+dd 0f58c1a44h
+dd 0f2935892h
+dd 064555fadh
+dd 0ea2eec85h
+dd 0877d30edh
+dd 0bc60bfadh
+dd 06259e19fh
+dd 07e47b383h
+dd 011e33607h
+dd 0c3c622deh
+dd 00b77cfeah
+dd 02061839ah
+dd 09971fe59h
+dd 03497f23fh
+dd 0d0f8f6c6h
+dd 0f550cac6h
+dd 097b61cd5h
+dd 0448f7527h
+dd 0ce580d37h
+dd 0593264b8h
+dd 027538e48h
+dd 071f0ef68h
+dd 0e8427b0eh
+dd 07c52f9b8h
+dd 08a50256ah
+dd 0eb91d934h
+dd 0e459ace1h
+dd 07d604e1bh
+dd 09086a90dh
+dd 0b5ab5a03h
+dd 088930458h
+dd 08d1e453ch
+dd 09c17f2b5h
+dd 0b30ce0e6h
+dd 006ea6401h
+dd 0952c6ac0h
+dd 0a4a6b5b6h
+dd 05f73c157h
+dd 0b597e562h
+dd 079bbab90h
+dd 08f1bd5c5h
+dd 0d719a205h
+dd 0d060e370h
+dd 00aca3fdch
+dd 0a6c7d561h
+dd 06480709ah
+dd 094232471h
+dd 083ac4799h
+dd 0681c1368h
+dd 0f1d684ech
+dd 0a95dc10fh
+dd 0c3e6898ah
+dd 0cbe1de60h
+dd 0142320cch
+dd 01bd6f549h
+dd 0ecdaaadbh
+dd 0c12db33ah
+dd 0b792e455h
+dd 02cecbdc7h
+dd 05fad745eh
+dd 0c40f56bfh
+dd 06a053b6fh
+dd 0b1a76783h
+dd 02b0b9e2ch
+dd 03b41c2e4h
+dd 0e510603ah
+dd 0cb8d0bb7h
+dd 0ddd4d5ceh
+dd 065ee953ah
+dd 0794055edh
+dd 0408137a7h
+dd 01de416f2h
+dd 0bed0ae6eh
+dd 0a057a079h
+dd 085bb3a74h
+dd 0b4886d4ch
+dd 0c30eb0a5h
+dd 0b4ba6e4fh
+dd 0caec6571h
+dd 0e48a56b4h
+dd 0d837a52ah
+dd 0f1c70c90h
+dd 069cde592h
+dd 094bf6044h
+dd 030ebcdc8h
+dd 0908c80b6h
+dd 0737c145ah
+dd 09d349e68h
+dd 0072e4717h
+dd 004d69ea4h
+dd 0a348f325h
+dd 06c806258h
+dd 0096cdfd9h
+dd 0821f3465h
+dd 05a0a8c6ch
+dd 0525c09e5h
+dd 064313d00h
+dd 0408310fch
+dd 044e7477dh
+dd 072426968h
+dd 07c5409b7h
+dd 0d303d28dh
+dd 084f5b759h
+dd 0b3d1bab4h
+dd 0b35de089h
+dd 0315bf36bh
+dd 001ad17dch
+dd 019617b3dh
+dd 092441e93h
+dd 0162a7dbfh
+dd 00b4c2f7eh
+dd 02a8ca7c9h
+dd 0f0ad2e39h
+dd 027f8b4ddh
+dd 0c6babf39h
+dd 094abac3eh
+dd 0f0114041h
+dd 01bfff01ch
+dd 03f3c2f4ah
+dd 0f13bb493h
+dd 04513c5d8h
+dd 0d0de01a6h
+dd 0ca01eeeeh
+dd 0feffc730h
+dd 046498d71h
+dd 00a2d26f5h
+dd 0ee57c419h
+dd 0471c49f7h
+dd 0ab922c15h
+dd 08af8ca6eh
+dd 076d7ae81h
+dd 0d5adc01ch
+dd 0ccc2d20eh
+dd 0e7f150e6h
+dd 02ad80730h
+dd 0c883ac88h
+dd 0920b20cdh
+dd 06b808278h
+dd 08afa8044h
+dd 081aefd4fh
+dd 0e4a02f55h
+dd 0af483a9ah
+dd 01511f541h
+dd 00759d236h
+dd 0e63a9a8dh
+dd 028606a2ch
+dd 0f84918d6h
+dd 088d0001bh
+dd 094fec214h
+dd 0f116ad84h
+dd 01bc4abbeh
+dd 02d0c9f6ch
+dd 0d861235eh
+dd 02b4ab855h
+dd 013bfb868h
+dd 08689204ah
+dd 05b985482h
+dd 05bd0b1cbh
+dd 077d6afdah
+dd 05c78f7aeh
+dd 0206998aeh
+dd 0dc691eb2h
+dd 080f74478h
+dd 0a4b70b0eh
+dd 09748a949h
+dd 0a6daeeafh
+dd 023eaa739h
+dd 0709777b9h
+dd 0248a9ba2h
+dd 0d0301867h
+dd 0484b3b34h
+dd 0f42c165fh
+dd 06db4737eh
+dd 0f300a46fh
+dd 00ea39097h
+dd 02b22cb70h
+dd 06785b972h
+dd 019bff667h
+dd 076abab97h
+dd 0b38a4975h
+dd 06e67a23eh
+dd 0243a2c2dh
+dd 08a932440h
+dd 07730d5adh
+dd 0f1b64df9h
+dd 03a7db140h
+dd 0daeac505h
+dd 0ae97d899h
+dd 0e274dd1ah
+dd 040880980h
+dd 0e86cd928h
+dd 060164971h
+dd 0acf2c34eh
+dd 0d5e3964dh
+dd 07511490ch
+dd 000288802h
+dd 0adfcd781h
+dd 0442918edh
+dd 08b6cc6adh
+dd 0c50ad24dh
+dd 0df0321e4h
+dd 0515ac00dh
+dd 056ae952fh
+dd 0028b4f9ch
+dd 084f75554h
+dd 0e2082f2bh
+dd 0de247402h
+dd 0a3ecee0bh
+dd 0b4c5a52ch
+dd 04d263c15h
+dd 081cb26dch
+dd 089b53b85h
+dd 0d4667495h
+dd 075e8e0c5h
+dd 0c17b686eh
+dd 0350700e4h
+dd 0f70a8402h
+dd 06fca330bh
+dd 083d4dd6ch
+dd 0168e66f0h
+dd 0f32fa00ch
+dd 0a88530a7h
+dd 026f6d763h
+dd 01528011bh
+dd 06660a1a5h
+dd 0e17fb36dh
+dd 0bcf597e9h
+dd 059a4c1f5h
+dd 02ac1ae4eh
+dd 0c52107cdh
+dd 01b0e0ed9h
+dd 058400d43h
+dd 06d4ec59fh
+dd 0b31b97aeh
+dd 07ed2134bh
+dd 0e523d310h
+dd 0f350fc1ah
+dd 06f62f88ah
+dd 072bb94f3h
+dd 0d81530c7h
+dd 0ab403cb8h
+dd 0b07b90b5h
+dd 04903c10eh
+dd 0c886b442h
+dd 07ae72de0h
+dd 0156dbcf2h
+dd 0234beadeh
+dd 0f11bb453h
+dd 08b09bae0h
+dd 038322c3eh
+dd 0aef62b73h
+dd 0371d068ch
+dd 070c04200h
+dd 0f52f267bh
+dd 07c452376h
+dd 065abc2d0h
+dd 0d24564e1h
+dd 0f5d30071h
+dd 084d14a62h
+dd 07da6c3b2h
+dd 0a64b2e56h
+dd 0dd045ec3h
+dd 087f1d4b7h
+dd 0dfa93507h
+dd 01bc7403ah
+dd 0a56da682h
+dd 06348acfdh
+dd 0c4e45dadh
+dd 002668497h
+dd 0aac7a375h
+dd 0fac70ebfh
+dd 0a3a19c0ah
+dd 0b7fede2bh
+dd 03cf8cca5h
+dd 0c5730295h
+dd 0ba559075h
+dd 082969300h
+dd 0904414fbh
+dd 0cb784f19h
+dd 08d17a93dh
+dd 0d8f0bd2ch
+dd 04b974aech
+dd 0d8107983h
+dd 000d33eafh
+dd 0920312f4h
+dd 0292d09bah
+dd 0da03c812h
+dd 074b3b84ah
+dd 05a54e7d7h
+dd 085be9f3bh
+dd 063522a2bh
+dd 0132a97e5h
+dd 0ca4961abh
+dd 0a4b8a189h
+dd 06c33669bh
+dd 0ebd27523h
+dd 0f5e8de58h
+dd 08f567599h
+dd 0a9f34feeh
+dd 069a3740fh
+dd 0fb208e35h
+dd 0fe5124b0h
+dd 0dbf958cch
+dd 04a4c61d2h
+dd 08af5405eh
+dd 0cf0b6a66h
+dd 019a14d67h
+dd 076f86c64h
+dd 04a88bbc9h
+dd 0f3c4c835h
+dd 07d0d8e53h
+dd 07a14aeffh
+dd 088419e08h
+dd 08969f5f5h
+dd 05c8835e8h
+dd 0d1f315bdh
+dd 0fc9b3915h
+dd 01e2c299ch
+dd 0f10733e7h
+dd 0714e1b21h
+dd 045395668h
+dd 00d0fdf85h
+dd 02b6577a0h
+dd 003d7c419h
+dd 01135b405h
+dd 0b8baea87h
+dd 0bb8dc3f6h
+dd 0de2e2169h
+dd 0c3aa6b58h
+dd 081afee6ah
+dd 0a3ba1730h
+dd 0c6fd5bb4h
+dd 0d5867d58h
+dd 0f0bd8f79h
+dd 072f38101h
+dd 0cfb8f4d5h
+dd 07d4c68a0h
+dd 0bb6e2d20h
+dd 08054bd99h
+dd 001e1301fh
+dd 053874e7bh
+dd 06ef70257h
+dd 0d6bf0bf3h
+dd 05a2987cch
+dd 0389933e9h
+dd 01920d636h
+dd 0d34ce73ch
+dd 05c61ce30h
+dd 0072d87c5h
+dd 0433adb39h
+dd 0d8720d5ah
+dd 0be8cdeb2h
+dd 04a0586c8h
+dd 0db08d7b3h
+dd 0f19f5136h
+dd 042b0a1c4h
+dd 0e49057a5h
+dd 0fdc61c99h
+dd 0a0250a1eh
+dd 00f48d6afh
+dd 0cb9b3392h
+dd 0bad74df0h
+dd 01ab2762ch
+dd 00858b3a5h
+dd 081fe8b71h
+dd 05b0723a8h
+dd 0d2d70180h
+dd 007acec51h
+dd 03fdcc956h
+dd 0f82a7776h
+dd 052c2b7fch
+dd 0eca88bfch
+dd 07f176887h
+dd 0fb6d712bh
+dd 030fb09dbh
+dd 0efdcdc10h
+dd 098f01dbeh
+dd 04913090bh
+dd 0a47904b6h
+dd 0017703a6h
+dd 0dabee865h
+dd 0623e4bb1h
+dd 05208c0d0h
+dd 0f175f7cfh
+dd 01adfd53ch
+dd 00b949f95h
+dd 01b2d9cabh
+dd 044d7cbd4h
+dd 020c41f8eh
+dd 02ed19f72h
+dd 0b5c34194h
+dd 0d05dcf50h
+dd 0e1bca208h
+dd 021f88edbh
+dd 0ef613c70h
+dd 0fd552baah
+dd 035b3e134h
+dd 09d9531e7h
+dd 0f61d82bbh
+dd 0390a8526h
+dd 0ac96b13dh
+dd 02c41a366h
+dd 0a89e482fh
+dd 0a06fe0fbh
+dd 077b09533h
+dd 00df0f92eh
+dd 0edf455c4h
+dd 0808d1834h
+dd 0b62e9cbah
+dd 034b4cbech
+dd 05a72ef74h
+dd 042cf07edh
+dd 0a3db334fh
+dd 041dc8685h
+dd 08968480ah
+dd 06fe1bda5h
+dd 078dd4f29h
+dd 0822c0292h
+dd 0eb29de42h
+dd 0614941bbh
+dd 078b4003bh
+dd 08a4c54deh
+dd 0a7cb5fbfh
+dd 006481d94h
+dd 059f002f1h
+dd 0626bf2efh
+dd 025ec8704h
+dd 064c79a16h
+dd 0f838f746h
+dd 0bef8e1cfh
+dd 01b464149h
+dd 00dab477fh
+dd 0b6b3a04ah
+dd 028b6a611h
+dd 084ba8e8bh
+dd 0fd680298h
+dd 0724a794ch
+dd 048b3f034h
+dd 053931e81h
+dd 03b363ae4h
+dd 0ec314c99h
+dd 09187a7dah
+dd 0ea21da57h
+dd 01f15556fh
+dd 0284df523h
+dd 05aca8e0fh
+dd 0a4334c92h
+dd 0250e825dh
+dd 045393b5dh
+dd 0a6120ed9h
+dd 0d21029d8h
+dd 063eb9a2fh
+dd 0f5e8a73ch
+dd 0c9946158h
+dd 0d03268fdh
+dd 090737dddh
+dd 01133f74eh
+dd 0eab6967bh
+dd 003799acch
+dd 09b6c3daah
+dd 0b5174dc5h
+dd 09654e707h
+dd 01cee5a94h
+dd 074c0f7dch
+dd 047ceacd2h
+dd 050f79bach
+dd 0fd74aa47h
+dd 074e19a3ah
+dd 06c890b94h
+dd 036d80a1dh
+dd 0dfc7d8f0h
+dd 0f5b0e032h
+dd 0a44b04ddh
+dd 084f44a04h
+dd 0c06ddb81h
+dd 023d46713h
+dd 0fb21ef8dh
+dd 07873ba41h
+dd 094b49f39h
+dd 00aae38afh
+dd 0f198d964h
+dd 0db3ba283h
+dd 0e5fc5585h
+dd 073d5b29eh
+dd 036da5aadh
+dd 0cf02d378h
+dd 01fa31764h
+dd 096c1ba70h
+dd 01e65b44fh
+dd 0af649ee5h
+dd 0d9a28cd7h
+dd 067df752ah
+dd 086453fb9h
+dd 08cd1a83ah
+dd 0c99083dah
+dd 079f86563h
+dd 01221308bh
+dd 0a8962299h
+dd 0cde7c02bh
+dd 09d5d9c70h
+dd 0962b1e16h
+dd 0dd823d0bh
+dd 0b13c503bh
+dd 0a36cb680h
+dd 008f3303dh
+dd 028e0d5deh
+dd 0964e761ch
+dd 0c5cc2681h
+dd 07143280ah
+dd 04286e931h
+dd 082d5cd42h
+dd 058daeafeh
+dd 01dca24cfh
+dd 0c82a1fd0h
+dd 0eacbbf00h
+dd 03606c62ah
+dd 09fc8194ch
+dd 0ba9044a8h
+dd 0d3401c45h
+dd 0afee5498h
+dd 048beb96fh
+dd 00db05905h
+dd 03201972ah
+dd 08c758bc4h
+dd 0d477a799h
+dd 046557950h
+dd 0012b23f3h
+dd 0bed65bf7h
+dd 083d2cd2bh
+dd 063b944c9h
+dd 0fb44a39dh
+dd 0b7562880h
+dd 0599cd5d4h
+dd 0950cac62h
+dd 010d5611ah
+dd 056e4c271h
+dd 0bae76bb5h
+dd 00f04efb3h
+dd 035a3ef05h
+dd 0deefd06eh
+dd 06507132eh
+dd 02cc9c6dfh
+dd 08ec3d851h
+dd 014278913h
+dd 0c2a31bcdh
+dd 026aa2713h
+dd 09ecc53c6h
+dd 02f57c0e8h
+dd 0c3d5a70ch
+dd 0cd02862ch
+dd 0afb9c387h
+dd 0b3035cd8h
+dd 03260d4d8h
+dd 02dcc029eh
+dd 0ba7fdcfch
+dd 036ebe2c0h
+dd 093745f3eh
+dd 01afeeb9bh
+dd 0bf60158fh
+dd 0e132a7d6h
+dd 06e0224ffh
+dd 06d71c776h
+dd 0597a07d0h
+dd 067b96f18h
+dd 04eedf30eh
+dd 0779c84e3h
+dd 055a8c336h
+dd 025116107h
+dd 03da32db2h
+dd 039264da6h
+dd 002dbb060h
+dd 03a833018h
+dd 0a9a201f2h
+dd 03d1948afh
+dd 0edf781ech
+dd 07810d988h
+dd 0327069e6h
+dd 08a584da6h
+dd 0c2cd8469h
+dd 0a313fe7eh
+dd 0b67222ech
+dd 0a30bf3aeh
+dd 07dc57b3fh
+dd 01d304558h
+dd 005bf1728h
+dd 0900f5efah
+dd 07b24bf32h
+dd 0c3a5aae4h
+dd 046f5228dh
+dd 030a59f5fh
+dd 0417ad558h
+dd 002774e2ah
+dd 067d8c772h
+dd 0a0511928h
+dd 0bf216211h
+dd 096dfa3ceh
+dd 049a7e588h
+dd 08b9a51c2h
+dd 071f75426h
+dd 0b845a8a0h
+dd 07ca490e0h
+dd 0027879b5h
+dd 0ceb2cb4ah
+dd 0ff3a11f0h
+dd 07eb7516ch
+dd 027ddbd38h
+dd 003148628h
+dd 07c597d7bh
+dd 056c76ffeh
+dd 079f3d509h
+dd 0a6d58cf8h
+dd 0e12dca8dh
+dd 0902738cdh
+dd 0f3ffffbah
+dd 08f6ccbe7h
+dd 079f9542ch
+dd 05be4a41ch
+dd 0ec981eafh
+dd 0b74b93a1h
+dd 0eebc7c10h
+dd 068a1a256h
+dd 0301090a5h
+dd 0fef7806dh
+dd 0c2e34717h
+dd 0ccae528bh
+dd 04600b84ah
+dd 037a9135fh
+dd 014136472h
+dd 0c30e51eah
+dd 089a81201h
+dd 0e3e2ea82h
+dd 0cef15373h
+dd 029d07606h
+dd 0c6b2d3a0h
+dd 088180694h
+dd 0699375d9h
+dd 0a361d95fh
+dd 004045b7ch
+dd 0a350b23bh
+dd 0bd994fc6h
+dd 0056c210bh
+dd 02b0f26d8h
+dd 02c3b0c4bh
+dd 08aef317fh
+dd 0666b777fh
+dd 02f87d223h
+dd 0b89cdfd2h
+dd 0a9bd022bh
+dd 0bb314764h
+dd 07beae49ah
+dd 0b6fd259ch
+dd 0dcd1d9d4h
+dd 0286b3bb5h
+dd 0106fbc08h
+dd 08ee9615fh
+dd 0ed857b1ch
+dd 0d3a6e744h
+dd 0b9ea053ch
+dd 0db01f133h
+dd 06ca03f5fh
+dd 02c29ad9fh
+dd 04953b75ch
+dd 097b8a67dh
+dd 0f6191930h
+dd 077423285h
+dd 0eed1bae2h
+dd 0c549eb5eh
+dd 0a0c98d8ch
+dd 093f9ebb8h
+dd 06a22b69eh
+dd 08b25d81fh
+dd 0da1145cch
+dd 07f25d2f3h
+dd 04b2c74edh
+dd 04e34ad2fh
+dd 035d82353h
+dd 0b170e54ah
+dd 05c24a912h
+dd 0962ac8c1h
+dd 0227b88f6h
+dd 029c31c30h
+dd 00dac65f4h
+dd 03b0fa2dch
+dd 04a196ee6h
+dd 0c11be753h
+dd 07450f067h
+dd 03106b7bdh
+dd 072ff21a5h
+dd 0f9cdad22h
+dd 0b5eacd63h
+dd 06fe5632eh
+dd 0b9e78ea2h
+dd 01290b1c5h
+dd 0c02b06bah
+dd 015da20a6h
+dd 0bc74ca21h
+dd 04248d266h
+dd 0f88ca179h
+dd 0c7904373h
+dd 03c891afch
+dd 006a67023h
+dd 0bc055111h
+dd 06c52e90fh
+dd 07d362f0fh
+dd 0433dbbcdh
+dd 0bc39fbebh
+dd 02c70726ch
+dd 0c98e165fh
+dd 07fe526f8h
+dd 0f7304eb4h
+dd 05634c81eh
+dd 07b765081h
+dd 077a5223dh
+dd 0d0a0e822h
+dd 0a0a59d7ah
+dd 0eab5163bh
+dd 09025ffdeh
+dd 070b413fch
+dd 076d5054ah
+dd 0ced1f0ech
+dd 0d250ff56h
+dd 0f8c3dc6ch
+dd 090673f04h
+dd 0ac2c6387h
+dd 07616d403h
+dd 0f320f4f4h
+dd 0f91995cfh
+dd 04be7539ch
+dd 0e6271fc6h
+dd 059dc521fh
+dd 0329135a1h
+dd 02685e2a8h
+dd 024925471h
+dd 0acbc7310h
+dd 04aeb5827h
+dd 02548fdcbh
+dd 08bb76872h
+dd 0f317ca94h
+dd 0f00bc40ch
+dd 0ca2f4f33h
+dd 03e24acc3h
+dd 0591be9d8h
+dd 08071a233h
+dd 09401b766h
+dd 01be7662ch
+dd 08b368176h
+dd 0c22d44b5h
+dd 0a39d68e3h
+dd 01cd51003h
+dd 03a93d829h
+dd 04ca20a72h
+dd 0e87f4131h
+dd 01dffc1cah
+dd 0370c83d7h
+dd 0e089fd26h
+dd 01612ae60h
+dd 02d4a762fh
+dd 0c4631a60h
+dd 0345e2012h
+dd 03bc72c1ch
+dd 09c8387eeh
+dd 09e21349fh
+dd 0c1ae9564h
+dd 0c833eaa7h
+dd 062253d15h
+dd 08dc2a053h
+dd 0250875f3h
+dd 0d59aa7d7h
+dd 07e1a6679h
+dd 010d25e13h
+dd 097404b52h
+dd 02e7ab34ah
+dd 02046eba8h
+dd 09f16b1dbh
+dd 06a5b5b09h
+dd 0da5aec5ch
+dd 069982cf0h
+dd 0efdede0bh
+dd 08e7a74d2h
+dd 0ba69ab26h
+dd 0744abb5ah
+dd 0f7646989h
+dd 0714413a5h
+dd 0f7320953h
+dd 0a18e3697h
+dd 017542f59h
+dd 0b6cc38f9h
+dd 0da2d4759h
+dd 01f226093h
+dd 070b44a6eh
+dd 0a002551eh
+dd 0f238ecdeh
+dd 037525087h
+dd 02a20b3a6h
+dd 05bc6e3e6h
+dd 0dad80353h
+dd 0867d43b5h
+dd 0e56d3e50h
+dd 0f9e8374ch
+dd 0d1e6e301h
+dd 062ce77a1h
+dd 0df010abbh
+dd 042ae082eh
+dd 0d64a0138h
+dd 04f730d35h
+dd 06740551eh
+dd 06b1ba2ech
+dd 04332dd75h
+dd 01e769a6dh
+dd 01aa8a140h
+dd 0eaf2ffeeh
+dd 0a9ecc909h
+dd 0e672627ch
+dd 0da8fd728h
+dd 0bbfe487bh
+dd 07a9404ach
+dd 00d5232f1h
+dd 0498c5291h
+dd 0540e4b2fh
+dd 0bd2c68f8h
+dd 0e21db0eeh
+dd 037057e60h
+dd 02c7d0d3dh
+dd 0bb1f5654h
+dd 0e3f97bf6h
+dd 0f94f799ah
+dd 0c24721e1h
+dd 07b3ffa41h
+dd 0995301c1h
+dd 09efe1cd5h
+dd 002bd0261h
+dd 0da30a10dh
+dd 02dae9e36h
+dd 023edc4cdh
+dd 036a8e25ch
+dd 089e6d768h
+dd 0e9fed903h
+dd 014480a96h
+dd 06a6925e3h
+dd 0f1cad52eh
+dd 01ad5dd4dh
+dd 0aaf87290h
+dd 090b922f1h
+dd 0b5751103h
+dd 021551806h
+dd 010549b36h
+dd 0da08e05eh
+dd 01aead18bh
+dd 0e79961ffh
+dd 0f17744b4h
+dd 0144088bbh
+dd 0e1a0fce8h
+dd 000cd40e5h
+dd 0a35c9f9fh
+dd 0e7450a1fh
+dd 09cc2f68ch
+dd 023b2f3ech
+dd 0e314d01dh
+dd 031491dd4h
+dd 0eb053493h
+dd 0014c736ch
+dd 063c59615h
+dd 082a754b9h
+dd 0b5d89bdbh
+dd 01dbe39aeh
+dd 062457640h
+dd 016acb4f8h
+dd 0116af050h
+dd 0155dc448h
+dd 020b79f0dh
+dd 0810cc24ah
+dd 0c3fe6714h
+dd 0e9dea605h
+dd 01c57e81eh
+dd 0b9691b1ch
+dd 039d541a1h
+dd 0b2fecdfdh
+dd 086483d7dh
+dd 0d302c7c7h
+dd 0f7589efdh
+dd 01212a37dh
+dd 0eefa9596h
+dd 0e2a1609bh
+dd 0fc2ab30fh
+dd 0f795fb0ah
+dd 0e025fdf8h
+dd 01121cb48h
+dd 01d7e2bc4h
+dd 08c5bde27h
+dd 017d0c480h
+dd 0049b526bh
+dd 07caf8308h
+dd 0347eb2edh
+dd 0be60b29ah
+dd 0621b3836h
+dd 01e5e879eh
+dd 0a1967c26h
+dd 054f5c802h
+dd 0f0344ed0h
+dd 03f744080h
+dd 06792e6c8h
+dd 0e83a6a01h
+dd 05258fdcah
+dd 02982d5ebh
+dd 0b1ac415dh
+dd 0ce9528a1h
+dd 07f95de4eh
+dd 001111dcah
+dd 0e08ea3c9h
+dd 035214afah
+dd 0a9a6397ah
+dd 00c4e8ae4h
+dd 0939b2fbah
+dd 0b8edac46h
+dd 08b77d350h
+dd 0259ec9b9h
+dd 0e98191f1h
+dd 0c55174e0h
+dd 0dcdc9effh
+dd 00423311fh
+dd 0220d600bh
+dd 0ad06b2eeh
+dd 00477f92eh
+dd 07d51382ah
+dd 092b118dfh
+dd 0d9f75305h
+dd 08e55aa43h
+dd 0aa4b8880h
+dd 037c8f77bh
+dd 07cf0935bh
+dd 000c1d3c3h
+dd 0cd65471eh
+dd 040107f29h
+dd 011f390d6h
+dd 0bcf849deh
+dd 056f1b91ch
+dd 0268d67d5h
+dd 04801edd0h
+dd 06f0f90a4h
+dd 00127e3bah
+dd 0e11cae4ch
+dd 0b3372100h
+dd 014640332h
+dd 0dd5ed3e3h
+dd 0018111c6h
+dd 05b9e0c44h
+dd 0ed15eaa8h
+dd 05c655f1dh
+dd 04d3410efh
+dd 0b350c1c5h
+dd 02b9684b8h
+dd 0204428b0h
+dd 02fd497b7h
+dd 0045d00dah
+dd 004405fdeh
+dd 0ad4a3754h
+dd 0654843e9h
+dd 0c4d3f2f9h
+dd 003b00a35h
+dd 0c08f7348h
+dd 0bfbbc7a5h
+dd 030ce094eh
+dd 01b84efb5h
+dd 041f82a4bh
+dd 0d8bf8721h
+dd 007fe8087h
+dd 03b2551d6h
+dd 010b60491h
+dd 066df3127h
+dd 0a1033b33h
+dd 04cce9a3dh
+dd 01912dd36h
+dd 0d9fbf335h
+dd 0b06de015h
+dd 08a150877h
+dd 09aabedbeh
+dd 08fac022fh
+dd 019cfe25ah
+dd 01d5a4c6dh
+dd 0106d9ef4h
+dd 08e8c9c54h
+dd 0bad9f944h
+dd 0521328d9h
+dd 00f7d5c60h
+dd 0d637cc10h
+dd 08a0dcd4ah
+dd 0991a813dh
+dd 09715501fh
+dd 065b0cbach
+dd 0b57e52f9h
+dd 0ef86f4c5h
+dd 02bb60d14h
+dd 0c720fce0h
+dd 0ed61c8eeh
+dd 0b33c04bah
+dd 0437d6afah
+dd 0b6610325h
+dd 074be6d28h
+dd 057e1eb41h
+dd 04196ce42h
+dd 072987360h
+dd 096cf0549h
+dd 054c238e3h
+dd 0edcd5cedh
+dd 057a36d75h
+dd 0be4a8657h
+dd 0f60322ach
+dd 074dbc734h
+dd 01e5f9a2fh
+dd 02c538ef8h
+dd 0cb246ee5h
+dd 08aae7ff4h
+dd 079a74395h
+dd 0283e974eh
+dd 01d80dd30h
+dd 0dbab3a7fh
+dd 0ee93fca7h
+dd 07ba83d9dh
+dd 00d1195d8h
+dd 09faf7439h
+dd 0f00f79c1h
+dd 051e08418h
+dd 040a0ab00h
+dd 045e1ec10h
+dd 014cd07a3h
+dd 0fa4d52eeh
+dd 0828f16e4h
+dd 0cbdc2dbdh
+dd 0ca1b466ch
+dd 0a3bca76ah
+dd 0d472781fh
+dd 0cd30a19dh
+dd 0b0bbb004h
+dd 0ce1ac952h
+dd 00589a905h
+dd 03adcddeah
+dd 04bd65915h
+dd 01668b248h
+dd 0d18b996dh
+dd 033939d8bh
+dd 0b0d464d1h
+dd 01260bed1h
+dd 05d87c583h
+dd 0f440a909h
+dd 0eae46724h
+dd 08cd43e18h
+dd 0a211cf29h
+dd 0fd9f3d82h
+dd 0a86df2a1h
+dd 0877b68c2h
+dd 0cf4a3a71h
+dd 051a91f2fh
+dd 0734c1fc0h
+dd 0dc8df7abh
+dd 0f8f79232h
+dd 0a77aa680h
+dd 0fadb1a25h
+dd 04a7e5a28h
+dd 0c0f71f42h
+dd 047901e05h
+dd 0fa8ce940h
+dd 0489540e3h
+dd 002aa1859h
+dd 0f91b9e19h
+dd 08c205c38h
+dd 076f556adh
+dd 0f20f1234h
+dd 0bef338a9h
+dd 04f7393c3h
+dd 00cd39f60h
+dd 0f74ca9e8h
+dd 0d71af831h
+dd 08f5c295ch
+dd 08ae7d241h
+dd 0d7bd3806h
+dd 0d2e53850h
+dd 0ba5b96e7h
+dd 0f488b77eh
+dd 0dd9b5af2h
+dd 0cf26357bh
+dd 0f48b1c16h
+dd 03f544f0eh
+dd 0f55ce24eh
+dd 06f66cbe0h
+dd 0588c5020h
+dd 03ca50679h
+dd 002d11576h
+dd 06fc5675ch
+dd 0056ef2c9h
+dd 06bd78bd1h
+dd 0c4d8e83ah
+dd 0de411eafh
+dd 092e00f8ah
+dd 01c30f24eh
+dd 0fbf3f6b8h
+dd 08ed505c7h
+dd 0646daa6fh
+dd 05b801acah
+dd 0e9292b57h
+dd 0a4384c94h
+dd 00f5c2ea7h
+dd 0e4ef9c57h
+dd 0d4b65c21h
+dd 03183c522h
+dd 0abf312bdh
+dd 084387afeh
+dd 01593c678h
+dd 03b05fc6ch
+dd 06a10012ah
+dd 0251b9777h
+dd 0b6578741h
+dd 071a7bcb7h
+dd 0181a03eah
+dd 03516f40dh
+dd 070cf3c9fh
+dd 0f7a2c020h
+dd 02fa29447h
+dd 0cac22084h
+dd 043951ee5h
+dd 0824d519ah
+dd 05d0d3761h
+dd 01f84d8ebh
+dd 0dba38f1eh
+dd 086cc63d8h
+dd 088f0ad8ch
+dd 0b887f3c1h
+dd 0cb751each
+dd 0af706e2dh
+dd 09abc0125h
+dd 05004ea6bh
+dd 087fa6017h
+dd 0911b9021h
+dd 029900ecdh
+dd 045721dafh
+dd 039e1b535h
+dd 0a6d8ac55h
+dd 0257d3510h
+dd 09dcb1f33h
+dd 050d84f4fh
+dd 06581b343h
+dd 08ff3ce61h
+dd 06dba014ch
+dd 0f00f22e8h
+dd 0ee43b999h
+dd 0fecba69bh
+dd 09ee410a0h
+dd 07821cddbh
+dd 03dc0e689h
+dd 0a8e56b8eh
+dd 060d99814h
+dd 066e202f1h
+dd 0ba8a0397h
+dd 0827acd8eh
+dd 0d7551d1ah
+dd 0cb6d306ch
+dd 00542eed6h
+dd 0c81c5954h
+dd 0f4162b52h
+dd 0dbd829adh
+dd 0cfa9f05bh
+dd 0c767fde2h
+dd 059db3737h
+dd 02e079092h
+dd 035e96b10h
+dd 0240652e1h
+dd 03c5a22eeh
+dd 05aeb18f6h
+dd 00075ed23h
+dd 0b7e085f2h
+dd 02cc8772fh
+dd 0410100c2h
+dd 056c89e98h
+dd 0fd481e6dh
+dd 03debf405h
+dd 0fe2ef04bh
+dd 056308517h
+dd 0a3435605h
+dd 07cbd67c1h
+dd 010d08ac7h
+dd 08b4212beh
+dd 0a97049d4h
+dd 09f50222eh
+dd 06154b3d9h
+dd 0ae3c03b5h
+dd 00abc347ch
+dd 057ae2d72h
+dd 08ae487abh
+dd 012451496h
+dd 05289710eh
+dd 0370915f3h
+dd 0fde1ce56h
+dd 05a815554h
+dd 0dcc3595ch
+dd 0f893555dh
+dd 0cc350af4h
+dd 00048ac16h
+dd 0ad8d24dch
+dd 0220b4654h
+dd 0be3064edh
+dd 03cab9195h
+dd 054987a29h
+dd 023af6760h
+dd 0424f1c1bh
+dd 00051cedch
+dd 0ac1dd13ah
+dd 0b14a6bcfh
+dd 001a92c6fh
+dd 0aa1b402fh
+dd 0a06bc07ch
+dd 0c72c6100h
+dd 0083cb214h
+dd 0803c5a45h
+dd 08c1e4578h
+dd 0fab8a646h
+dd 04e98a55ah
+dd 0404d2f4dh
+dd 0a1f43d3eh
+dd 015dbad4fh
+dd 008a4982eh
+dd 0fd61ca2eh
+dd 0ffa71b2eh
+dd 00b955a80h
+dd 0f7961680h
+dd 0ca506fcfh
+dd 01de97e9ch
+dd 0843d90e1h
+dd 030a60cd0h
+dd 0c2a0bb75h
+dd 06c1b2a06h
+dd 0df921c27h
+dd 0d888dfb0h
+dd 06980ffbch
+dd 071e19eb8h
+dd 0dc2043bch
+dd 09ee6c174h
+dd 0ecd3c3f0h
+dd 013e07f2dh
+dd 0c5c09709h
+dd 0fb39145ah
+dd 0eb42fc9fh
+dd 0fba5386ch
+dd 0e99198f3h
+dd 045cbad21h
+dd 07a3514efh
+dd 0ce55dafch
+dd 0da266851h
+dd 0f3ab01c4h
+dd 0951ff70ch
+dd 0cd92b437h
+dd 0c975c0a1h
+dd 081250142h
+dd 0e115bfb9h
+dd 0b0a92535h
+dd 0e8500c65h
+dd 05b792860h
+dd 0bedfb4adh
+dd 0b15966fdh
+dd 0b49a5f66h
+dd 0bf8cbeeeh
+dd 0e6626f1bh
+dd 094550cc5h
+dd 07d34dfd2h
+dd 0336eb0c5h
+dd 0b8f3b9c1h
+dd 09972102ah
+dd 00f2c521ah
+dd 06c3913beh
+dd 00dcd40efh
+dd 0b8435ff3h
+dd 01d7979a9h
+dd 0f33c83a5h
+dd 035ebe447h
+dd 04c1ef7e7h
+dd 0011072dfh
+dd 0b6297b1eh
+dd 0bb9de037h
+dd 0d63ac22eh
+dd 0842bd918h
+dd 03022853bh
+dd 0169be31ah
+dd 0d8ea03adh
+dd 04eb8af62h
+dd 0344862fdh
+dd 0507fc77ah
+dd 0be6dfe5fh
+dd 01977d83eh
+dd 0bd7b4b10h
+dd 03f9b9945h
+dd 0df8c827eh
+dd 02833b531h
+dd 0b838f204h
+dd 0bdfa4bd8h
+dd 0f7293bfch
+dd 09e2b7c51h
+dd 0ac6aafd3h
+dd 0ba3ce0eeh
+dd 09d0aedb9h
+dd 00bd9202ch
+dd 094d1da70h
+dd 0e25881fah
+dd 06d413327h
+dd 0b3ead1e1h
+dd 074705019h
+dd 0eaac6619h
+dd 0de2dfc22h
+dd 075c2b80fh
+dd 0c99158d7h
+dd 0e3712c02h
+dd 0c221bb6dh
+dd 0cbc5155dh
+dd 0351d3d68h
+dd 058995587h
+dd 04cd1a1bfh
+dd 05521da17h
+dd 0b22d64d4h
+dd 0bd499134h
+dd 02c917c3bh
+dd 0b499c866h
+dd 034fc7305h
+dd 0ed4f3317h
+dd 0208cd244h
+dd 07f8cf650h
+dd 0486590ebh
+dd 0703f35d0h
+dd 0639f830dh
+dd 09aa95fb3h
+dd 09d7a7957h
+dd 0b660e25ch
+dd 0e4322620h
+dd 03b20c202h
+dd 06ea3edbbh
+dd 0aa16100dh
+dd 029134050h
+dd 00b857233h
+dd 07bd1f45ch
+dd 07233712ah
+dd 03366f47fh
+dd 03552bc22h
+dd 045307ca4h
+dd 0d28eea31h
+dd 020833a12h
+dd 05ade1baah
+dd 0d5ab09c5h
+dd 048f125adh
+dd 094e60883h
+dd 0348be53ch
+dd 0c45d9d8bh
+dd 0fd3d5c24h
+dd 044691a85h
+dd 0c8d5e7f9h
+dd 02765b53fh
+dd 0c677f599h
+dd 08d0bdb98h
+dd 0c79704d6h
+dd 01f911e9ch
+dd 0b0b46aeah
+dd 03cfe5a84h
+dd 0ffaa7030h
+dd 08f500287h
+dd 0ca484915h
+dd 09809f72bh
+dd 0e97492fdh
+dd 0538b12abh
+dd 070290222h
+dd 065aa9b11h
+dd 056478864h
+dd 0a7eebda6h
+dd 0ec60005ah
+dd 0a9382cf3h
+dd 0804d87f1h
+dd 0fa7aded2h
+dd 01ead54c7h
+dd 0c819cbe4h
+dd 0199a6755h
+dd 0f57be25ch
+dd 06cbe8574h
+dd 043ee12fah
+dd 00f6f487fh
+dd 0096d6d12h
+dd 0add0bcfbh
+dd 009be8150h
+dd 0a93900beh
+dd 0a31212fch
+dd 01fe9a70ah
+dd 0dd1dc6c4h
+dd 0c6cafb1eh
+dd 0d932089ah
+dd 0b08b899dh
+dd 0cf02005dh
+dd 001c9ae19h
+dd 0ed040db8h
+dd 050fcdedbh
+dd 06aa06cb5h
+dd 06b7aa590h
+dd 0932b3905h
+dd 07dfddc62h
+dd 0ee119745h
+dd 024421009h
+dd 0aac54759h
+dd 06feeb0a4h
+dd 0b3fc94cbh
+dd 0bb7311aeh
+dd 049febb9ch
+dd 08a1359c2h
+dd 02fd3d87fh
+dd 0a1f4dfeeh
+dd 0c40d9a74h
+dd 040d6acbah
+dd 025bc493dh
+dd 0d2395709h
+dd 05a76d343h
+dd 054310187h
+dd 02f651eb9h
+dd 0257934bch
+dd 07d320028h
+dd 02b379dech
+dd 08795deb5h
+dd 09035b939h
+dd 0af5fc4d3h
+dd 06b48eca3h
+dd 0604757deh
+dd 0fcd64944h
+dd 0152ee3cah
+dd 06ecc71d6h
+dd 08025e252h
+dd 0a09e0f92h
+dd 084f6dc14h
+dd 07271c0fdh
+dd 0ccb9be8dh
+dd 01790db79h
+dd 005e48680h
+dd 09748cbach
+dd 0150769b4h
+dd 01091bc0ah
+dd 047716a89h
+dd 0a88dd24bh
+dd 07f97f18ah
+dd 0fad109a5h
+dd 061b0fd25h
+dd 0acb0e55dh
+dd 0b67069d9h
+dd 015c6f6bah
+dd 0a6575d41h
+dd 081d012fch
+dd 0d3a13d69h
+dd 0c2e5c50ch
+dd 0360678d6h
+dd 0bea26c75h
+dd 0d8b523a6h
+dd 0f7f430fdh
+dd 0951933d7h
+dd 01f60b55eh
+dd 0a4fbc65ah
+dd 0c92e2d87h
+dd 0207bab1ah
+dd 0f2ecbb29h
+dd 0b79373e3h
+dd 001aa0afbh
+dd 013ff987fh
+dd 0896c52c7h
+dd 0cf9b1d3bh
+dd 0484104afh
+dd 0e4b1dcd6h
+dd 0c3cb3935h
+dd 0ea2b69c0h
+dd 05e516b7dh
+dd 0d39f2ee1h
+dd 03b021791h
+dd 080c38bf7h
+dd 084b5253ch
+dd 068a7911dh
+dd 03d0cbf37h
+dd 0e3623e25h
+dd 0ef82e906h
+dd 0d749aefdh
+dd 014e607bch
+dd 0b856b74ah
+dd 0e840b762h
+dd 054f1999ch
+dd 01b9989b5h
+dd 0ff142fcah
+dd 082a9ad17h
+dd 0d4ad52eah
+dd 098ccb115h
+dd 0e40d425bh
+dd 0a5a2e71dh
+dd 0b55dfc41h
+dd 01d336cd5h
+dd 002167971h
+dd 092d7d192h
+dd 0d788bb4ah
+dd 08b57468dh
+dd 0b939449dh
+dd 096614367h
+dd 0a71b4696h
+dd 0b4cab2c0h
+dd 0c3eccbe7h
+dd 0891f1d5dh
+dd 092874740h
+dd 08e8ccc9ah
+dd 0ef65e9b7h
+dd 0cbb9fac7h
+dd 0afa7c53dh
+dd 002a4dd1ch
+dd 010f9023ch
+dd 0add12366h
+dd 0261841a6h
+dd 086c40706h
+dd 05641cf95h
+dd 01768d1f5h
+dd 057171be4h
+dd 0736f76b1h
+dd 0d079643ch
+dd 0a97b850ah
+dd 0c94d0a4ch
+dd 0009b54f9h
+dd 0ab85116eh
+dd 0305ff544h
+dd 0841a128bh
+dd 08701ac6bh
+dd 0fecfad60h
+dd 00c3f3675h
+dd 0513c467bh
+dd 013f75369h
+dd 0aa772774h
+dd 03038f2a1h
+dd 0779481b6h
+dd 01141f429h
+dd 0a71d224fh
+dd 0b2fa9ab5h
+dd 0e254d13ah
+dd 0e5408c1bh
+dd 0883c8cf5h
+dd 054e51720h
+dd 0f2d1a341h
+dd 00f46cc35h
+dd 04277f7a8h
+dd 08632457ah
+dd 0e38b39a3h
+dd 08bc6f0e9h
+dd 00963d672h
+dd 0707403f5h
+dd 07059eae2h
+dd 07b537bb3h
+dd 090a6efeah
+dd 07b0ad2cch
+dd 03cc7656fh
+dd 05770ef71h
+dd 06fb08f15h
+dd 0767520a3h
+dd 00cdcf826h
+dd 02a177393h
+dd 05cdd4cech
+dd 073c6e9b1h
+dd 0971cf799h
+dd 04d95baf0h
+dd 0c486aa34h
+dd 0d24c4213h
+dd 0dc64ba57h
+dd 09af78514h
+dd 08033eed5h
+dd 0dcaf1831h
+dd 06ce2a261h
+dd 0e53c31b3h
+dd 0d1e0a6bfh
+dd 086408c58h
+dd 01108aa0ah
+dd 037a546d0h
+dd 01444c93bh
+dd 0d918c383h
+dd 04a0ddd6bh
+dd 07eec4848h
+dd 03bb0bb9ch
+dd 0a34a535fh
+dd 09e356d80h
+dd 0d64efe2dh
+dd 028de3262h
+dd 014e6faf2h
+dd 01c209814h
+dd 04910988ch
+dd 0e64b2a4bh
+dd 080d218f9h
+dd 0ca99a850h
+dd 0635e646bh
+dd 0718977bch
+dd 0f48b3b88h
+dd 0cd5fa6c8h
+dd 042683859h
+dd 09f88a893h
+dd 05fd706c9h
+dd 0e51ad1a0h
+dd 083b28f26h
+dd 08feed7a0h
+dd 0d95e7da8h
+dd 032d0e583h
+dd 093dc4ad3h
+dd 069ab2bbfh
+dd 02fc1aa54h
+dd 0e3b15854h
+dd 0b3ca513bh
+dd 0bc0db73fh
+dd 00867cb84h
+dd 07c8ffee8h
+dd 0aa7ef37dh
+dd 0aeedfeffh
+dd 0d4e9c0e0h
+dd 0e529e7eeh
+dd 02abfd51bh
+dd 03e05ed58h
+dd 078ea086ch
+dd 08b5444bdh
+dd 0bfa45b49h
+dd 0f22c9e49h
+dd 040b6371bh
+dd 084fa2a14h
+dd 059981818h
+dd 055a0b22fh
+dd 0f4e111b1h
+dd 0bcd4f9d4h
+dd 065236b36h
+dd 077566657h
+dd 02a7f57afh
+dd 0c77c0dc1h
+dd 0b46c28bah
+dd 0595800a2h
+dd 001cf121ch
+dd 09a5ca905h
+dd 02a0049e9h
+dd 079561d9bh
+dd 05a94ed56h
+dd 0e721def9h
+dd 0e8f350beh
+dd 0096aed54h
+dd 04c375f46h
+dd 0719b16e2h
+dd 0279818fah
+dd 01dfb8550h
+dd 04a3f8878h
+dd 05ed6f554h
+dd 019de242ch
+dd 0a2362e62h
+dd 009542f22h
+dd 0bff58011h
+dd 00f159877h
+dd 0118c7468h
+dd 0a5727ac8h
+dd 08f9fe1c5h
+dd 0b82017b1h
+dd 052f9eafah
+dd 001e0510bh
+dd 09f92a6e2h
+dd 0a4b0c0e4h
+dd 03b78d43dh
+dd 0cca3a664h
+dd 00cd4e5d2h
+dd 0675b4252h
+dd 005ada240h
+dd 0c19e91dfh
+dd 0a9a2a9b7h
+dd 00003a049h
+dd 0bf0a3b80h
+dd 0ece7229dh
+dd 0c9f7b8b9h
+dd 0ec2dd23fh
+dd 0c5c8ea0bh
+dd 0a936d834h
+dd 0ebfc9a9ch
+dd 0a0581b63h
+dd 099437c25h
+dd 09df419a6h
+dd 05ca5436ch
+dd 037435d8bh
+dd 07316624dh
+dd 0a61733e7h
+dd 0fc8cec82h
+dd 01a8df6b8h
+dd 0644c7ac2h
+dd 074518000h
+dd 0c0cfa547h
+dd 0a54d0a30h
+dd 0192116cbh
+dd 044cc4c34h
+dd 0501c79dah
+dd 05f1ad35ch
+dd 09bb416e3h
+dd 0065338ffh
+dd 07f2b25bah
+dd 0f3ef05b6h
+dd 08af9f543h
+dd 0999c00d8h
+dd 0ca494224h
+dd 033481cd2h
+dd 069541fcah
+dd 0aafa8d0eh
+dd 00cd2397ch
+dd 00437eaedh
+dd 04d7c3385h
+dd 0103a03fdh
+dd 08b460581h
+dd 0a4d39939h
+dd 05c6db4aeh
+dd 0142f43a6h
+dd 0261f5642h
+dd 0d8e6d6d1h
+dd 08d28adf8h
+dd 009abd9deh
+dd 06bd45cb2h
+dd 0dc114975h
+dd 0df253a56h
+dd 0acd1b8b0h
+dd 0fd3a6f16h
+dd 0e53afce3h
+dd 0df405bf4h
+dd 0d571c12dh
+dd 08d744bd7h
+dd 00143a89ch
+dd 047fedf8eh
+dd 08f492817h
+dd 0e50e475ch
+dd 0da612478h
+dd 089b505a2h
+dd 00d03574ch
+dd 0e0cdc352h
+dd 0abffbe2bh
+dd 0654762b6h
+dd 057f8d2bch
+dd 09132ea56h
+dd 086f1aa5ch
+dd 0ece8e935h
+dd 0caef0511h
+dd 0715c478bh
+dd 0adee68f7h
+dd 05c360405h
+dd 0d46dd5efh
+dd 06a1acec8h
+dd 05b702aa6h
+dd 0211e8f05h
+dd 011e9e63fh
+dd 090bdec73h
+dd 0c203934ah
+dd 00958327fh
+dd 05acc2b22h
+dd 06c99f251h
+dd 00d2c398fh
+dd 0f36d3f5fh
+dd 05b3ddd77h
+dd 0baf9ffc0h
+dd 0b53fa080h
+dd 0145beeb9h
+dd 039f4b03ah
+dd 0821c3c2fh
+dd 06cb04fe8h
+dd 0386809a6h
+dd 0a7c8bfefh
+dd 0e593824fh
+dd 0ddda457eh
+dd 07ad8b10eh
+dd 0f2227a49h
+dd 05327d472h
+dd 0af57cd44h
+dd 0876fae85h
+dd 042f96f0fh
+dd 0b49ea9e7h
+dd 07dc987d0h
+dd 09ff3e7cbh
+dd 004a66a4dh
+dd 08244d334h
+dd 0db3b6e6eh
+dd 0efc6a436h
+dd 02a57b05fh
+dd 0a7b53c56h
+dd 04d7a529ah
+dd 0ceaf1430h
+dd 0ac104105h
+dd 04c7da8b9h
+dd 023f1c24fh
+dd 0941cdaa9h
+dd 0884ab3b3h
+dd 085d2b025h
+dd 049617a84h
+dd 0dbe618e8h
+dd 0d90eee68h
+dd 08df9cd09h
+dd 00709c6efh
+dd 0f54a0c53h
+dd 0c71f4362h
+dd 0015badbah
+dd 0f9a4d4f7h
+dd 020faa641h
+dd 0f845a160h
+dd 0ad14c72eh
+dd 018dcef54h
+dd 0a86147fah
+dd 0e4c6077ah
+dd 06bfd527ah
+dd 0bcfbb4d3h
+dd 04ea03719h
+dd 0178348f0h
+dd 0751e7ee5h
+dd 0a38111a9h
+dd 04be535cbh
+dd 047073b1bh
+dd 063214885h
+dd 0b02f0c8eh
+dd 088bb5412h
+dd 0ae5194fah
+dd 09537f9b4h
+dd 05a455b67h
+dd 0a086030bh
+dd 074ad7effh
+dd 03fe8b9c6h
+dd 07f4dc622h
+dd 046379b38h
+dd 0e080a040h
+dd 058618ceeh
+dd 0391890e4h
+dd 02d1f587ch
+dd 0507cf8a3h
+dd 02f2ae6bbh
+dd 02dcbc3a9h
+dd 0c0897c73h
+dd 0f6488fdah
+dd 0e40e6823h
+dd 0024ce77bh
+dd 062b8d3f3h
+dd 0c5923aa3h
+dd 0f64a0342h
+dd 0faf98050h
+dd 049d09e03h
+dd 05bc56a4ah
+dd 0635a70cdh
+dd 00532545ah
+dd 06e6ed043h
+dd 098241945h
+dd 067f2f803h
+dd 07f6e1861h
+dd 05f485608h
+dd 076e7b415h
+dd 0eecb2d51h
+dd 0de7bdfbbh
+dd 0f5a5c8d4h
+dd 0e7831bcch
+dd 0c4fa5a8ch
+dd 04ab0288dh
+dd 0ac0a5a75h
+dd 05e89b2e3h
+dd 062dd7adah
+dd 091734204h
+dd 0f5dad503h
+dd 026896fa8h
+dd 0b672a875h
+dd 0c6710cc5h
+dd 01d416f19h
+dd 0b1155759h
+dd 04e29c90bh
+dd 01f4929d1h
+dd 00b787584h
+dd 0d7e81805h
+dd 0d2163733h
+dd 07068149eh
+dd 0108f3dfeh
+dd 04a0b21dch
+dd 0ba9df71ah
+dd 006d24588h
+dd 092310b3dh
+dd 0ecf9e164h
+dd 0de04ece4h
+dd 0ff97207eh
+dd 05de6d476h
+dd 017658bd5h
+dd 019d7fe22h
+dd 0f95ac71bh
+dd 00c5a7950h
+dd 0d0b2fe75h
+dd 0d810e1b7h
+dd 0e33720e3h
+dd 0f0af287eh
+dd 0e2bee632h
+dd 063d3b63dh
+dd 0995f19f9h
+dd 0f8fae17bh
+dd 096c90224h
+dd 0009fa99ah
+dd 0a9f2522ch
+dd 04ffba7ceh
+dd 00e039f8bh
+dd 0a0df441eh
+dd 033c5476dh
+dd 02a78e792h
+dd 08b9813d2h
+dd 0ce5a04b4h
+dd 080a30025h
+dd 0bea24cd1h
+dd 0cb9ee166h
+dd 068d73d80h
+dd 00a68572dh
+dd 03a578b34h
+dd 025651e43h
+dd 0d6027013h
+dd 0c4f22807h
+dd 010d1405dh
+dd 0d7145875h
+dd 0a97a36b2h
+dd 0cef63fefh
+dd 03e61e00eh
+dd 080de7ecfh
+dd 0ead3f195h
+dd 0dace61edh
+dd 05dd2f6cdh
+dd 036a84335h
+dd 01431f3a1h
+dd 07a11988fh
+dd 0d5446df0h
+dd 02c7cd65ah
+dd 03e957e06h
+dd 095c292e4h
+dd 09b3c11cfh
+dd 015ed6276h
+dd 0903a0782h
+dd 0862ef5d0h
+dd 0a4daa4b1h
+dd 093e31743h
+dd 0d782fe43h
+dd 01e725cf9h
+dd 043e93ca8h
+dd 0b5177df4h
+dd 074ae7d8eh
+dd 0406ea406h
+dd 0bee2b3d3h
+dd 053adb033h
+dd 0e4c7e606h
+dd 0e332dddah
+dd 027bfccfch
+dd 03add733bh
+dd 0237e1fe2h
+dd 01c6fb79ah
+dd 02009b071h
+dd 0539ab2d6h
+dd 005d998ceh
+dd 0fbf147d2h
+dd 0533c9653h
+dd 082b185c3h
+dd 07976c320h
+dd 03a33a58ah
+dd 0f2054d67h
+dd 0542c2df9h
+dd 0181a2063h
+dd 0f5a970efh
+dd 0e493c394h
+dd 076d10326h
+dd 0661bec93h
+dd 06b55d0ach
+dd 092080effh
+dd 04d680990h
+dd 034c6547dh
+dd 0e0ae018ch
+dd 0e6def90dh
+dd 00ae1e83ah
+dd 00ebe1155h
+dd 046025d62h
+dd 0430578aah
+dd 0f0223e82h
+dd 03c587f57h
+dd 09d9d9d7fh
+dd 0950cd0e5h
+dd 04dbaebb0h
+dd 02ad3ef08h
+dd 0010150beh
+dd 05850eab6h
+dd 0e5ebf70dh
+dd 0f5b4075ah
+dd 006a6a573h
+dd 0dffe687bh
+dd 06419305ah
+dd 0325c0bd1h
+dd 026dc1998h
+dd 02b1675b6h
+dd 0a72a1438h
+dd 0ac6c9724h
+dd 0b2759583h
+dd 0564b6e03h
+dd 0bd16eb3ch
+dd 08950525dh
+dd 0d6522d31h
+dd 00d654671h
+dd 0bf7177f6h
+dd 03a6bc921h
+dd 0dd9784d2h
+dd 0acb544fch
+dd 04495229ch
+dd 04e4999e4h
+dd 0d4c533c2h
+dd 04b5df076h
+dd 0b94097c9h
+dd 055c50816h
+dd 09ef0864eh
+dd 0544210d7h
+dd 0998f64c6h
+dd 0598cf916h
+dd 0348fa9a7h
+dd 0b8c10f14h
+dd 083b277b8h
+dd 057fa9923h
+dd 0db69f805h
+dd 01a1c2337h
+dd 09a06195dh
+dd 0734043bdh
+dd 0667d1547h
+dd 06b195ccah
+dd 06dd9f133h
+dd 0a3547ca8h
+dd 00bc13472h
+dd 0af54ae18h
+dd 0d40631adh
+dd 09b8cddadh
+dd 0fe243961h
+dd 018068878h
+dd 04c63f5f4h
+dd 0bcb487e6h
+dd 000e176a6h
+dd 04d0253c3h
+dd 0f293c4c8h
+dd 0c0b40433h
+dd 01a397d4fh
+dd 0da27e378h
+dd 0bb642816h
+dd 031f53f77h
+dd 0ee07e77fh
+dd 066fc1beah
+dd 0e14325aeh
+dd 03ae4f2e1h
+dd 092bdf789h
+dd 00dcd7effh
+dd 0b18feebah
+dd 0bfb9bd0fh
+dd 09f1236f7h
+dd 09a6be081h
+dd 0d347fd04h
+dd 0c8f453dbh
+dd 0075156d9h
+dd 032852124h
+dd 032161076h
+dd 043fe2232h
+dd 013cea042h
+dd 0efb74f1dh
+dd 0844aace1h
+dd 0d2bd99bbh
+dd 0809b4ee6h
+dd 0908808d3h
+dd 07c402878h
+dd 0f67a4ea4h
+dd 09d54ff84h
+dd 00412973fh
+dd 09a6e8217h
+dd 078fffd19h
+dd 0a2c54c47h
+dd 020ff2f98h
+dd 0a3e1b178h
+dd 0d48788d4h
+dd 02e079dc7h
+dd 017220618h
+dd 0fe86789ch
+dd 029688c9bh
+dd 0eceb6379h
+dd 0c4822c13h
+dd 0744ea3f5h
+dd 0f0ced4a9h
+dd 0e2c43724h
+dd 0e6547673h
+dd 0f93d57f5h
+dd 0061bd69ch
+dd 09b2b725bh
+dd 043b19247h
+dd 006d4d6deh
+dd 0113524d5h
+dd 0d041f056h
+dd 0fc7d953bh
+dd 07f74e1d5h
+dd 0bbb62869h
+dd 06b838cf9h
+dd 0ccd5a4e5h
+dd 08b592e70h
+dd 05f251e9eh
+dd 00feec1d0h
+dd 082490337h
+dd 0fc738d98h
+dd 0f99974c9h
+dd 04ab22afeh
+dd 07f01a142h
+dd 0df5e89bah
+dd 005171568h
+dd 0cec7181eh
+dd 0056579e2h
+dd 0069681b5h
+dd 06404c941h
+dd 07fd7ec55h
+dd 09f12863fh
+dd 0bd260abeh
+dd 07945a6dah
+dd 09b31c592h
+dd 01158644dh
+dd 00be321b2h
+dd 021aaa60fh
+dd 098836f5ah
+dd 08a3b8129h
+dd 0d0f19fbch
+dd 009b912a1h
+dd 0574ecab4h
+dd 0079f7eafh
+dd 099c972c3h
+dd 0fab7f983h
+dd 0c838677ch
+dd 06f12692dh
+dd 0680e1166h
+dd 0eab56609h
+dd 088273c39h
+dd 0a73ba717h
+dd 0ac7aad48h
+dd 027997104h
+dd 09fe238b8h
+dd 04c052bebh
+dd 067aed2e9h
+dd 0abff8756h
+dd 0a5bbfecch
+dd 0b3692102h
+dd 0d28e426ch
+dd 0e93f134dh
+dd 0c8bd6bf1h
+dd 0468cd366h
+dd 0852d081eh
+dd 0a2df5c22h
+dd 03294e4cch
+dd 0dbd18ca0h
+dd 04775c542h
+dd 007bebc9bh
+dd 021a9f3d9h
+dd 03b34f2ddh
+dd 0faad2084h
+dd 015488b39h
+dd 0fb143dfeh
+dd 08ac2cdfdh
+dd 016e7cbdeh
+dd 090f96d87h
+dd 01725df9ah
+dd 00e4f2803h
+dd 040594597h
+dd 06ca2b873h
+dd 01ab63e34h
+dd 022820357h
+dd 0993c3e18h
+dd 0e8c58c87h
+dd 05d15a586h
+dd 07a3e709ch
+dd 05e3755a6h
+dd 08959f89ch
+dd 0e74a49c2h
+dd 08f8da8dah
+dd 07a35daddh
+dd 0e7ae7736h
+dd 00b3f179bh
+dd 06844a20dh
+dd 09ba51f23h
+dd 03f976174h
+dd 0552da277h
+dd 08e626c18h
+dd 03b5efae1h
+dd 0f7032058h
+dd 0d37ecf5eh
+dd 0bbe50112h
+dd 0e738c90ah
+dd 07fc4b790h
+dd 091d598ddh
+dd 0206fbb8fh
+dd 057e3d0ffh
+dd 00c413ae2h
+dd 0d5daa87ah
+dd 0052e7820h
+dd 0e9c38f4ah
+dd 0fd5d252dh
+dd 025429822h
+dd 077efb9cah
+dd 05669b5bch
+dd 0d6405f09h
+dd 0b5069814h
+dd 0cf67cdafh
+dd 090bb18fah
+dd 0d47abac1h
+dd 00b595733h
+dd 088347562h
+dd 0dbe79e38h
+dd 0681cdbdah
+dd 0128e853ah
+dd 052d84c2bh
+dd 0b435838ch
+dd 06c0a296ch
+dd 094a1265fh
+dd 003359944h
+dd 020ca10f7h
+dd 0b181f7c5h
+dd 0650e5d83h
+dd 0381339deh
+dd 0017cb54bh
+dd 03230eeb5h
+dd 07d0412dah
+dd 0805334dfh
+dd 02b5347bah
+dd 0b0b9aa15h
+dd 0f1dec74dh
+dd 05fad9927h
+dd 0b7c26ba2h
+dd 05961690fh
+dd 05ef06e80h
+dd 0de31c250h
+dd 04f45b267h
+dd 0eb063b37h
+dd 008acaf19h
+dd 01074b7d2h
+dd 05e9a0b20h
+dd 0575d54a7h
+dd 086785381h
+dd 03876b4c4h
+dd 0fe632c44h
+dd 02c1b7d89h
+dd 00ee63185h
+dd 0765e7b75h
+dd 0c471a58eh
+dd 02e0b91c8h
+dd 04d9131dch
+dd 05a8acf48h
+dd 039398779h
+dd 0fe55e89ch
+dd 00037758ch
+dd 09b62236ch
+dd 0b9f85c0dh
+dd 00922314eh
+dd 0d7da4be5h
+dd 025d6c3abh
+dd 06a754d51h
+dd 042cacd9ch
+dd 06667353ch
+dd 0aac4e956h
+dd 014c302e4h
+dd 0f51fb242h
+dd 05dbf2f2ch
+dd 01621a269h
+dd 05a910f6bh
+dd 0584b6a89h
+dd 0072df22eh
+dd 060e798d2h
+dd 0758612c8h
+dd 09c9161e5h
+dd 0a2639a2ah
+dd 00d64f20dh
+dd 052edc12bh
+dd 05368b58bh
+dd 0a852fcf6h
+dd 0a2cd5b8dh
+dd 0778f020bh
+dd 09a8d3248h
+dd 0c5841417h
+dd 02bfe38b2h
+dd 0821dddf9h
+dd 0aa29ae49h
+dd 0621b6ce6h
+dd 057a9a822h
+dd 0e0a3e437h
+dd 0b4ac65a8h
+dd 0973d982dh
+dd 0b10cbda1h
+dd 0a4ff9d29h
+dd 0b2b2bc3eh
+dd 03a61b856h
+dd 0916370f3h
+dd 0fc2e3590h
+dd 0fbb91c44h
+dd 03addf21eh
+dd 03482f3d5h
+dd 0d201ee8fh
+dd 0af23ca43h
+dd 031395d2ch
+dd 0c8128a3eh
+dd 01dd3e290h
+dd 082d93026h
+dd 017001e6bh
+dd 00124bd9dh
+dd 09b1f0fdeh
+dd 0f836aed5h
+dd 0186a36a7h
+dd 048f772d4h
+dd 0553ac030h
+dd 0be8b8424h
+dd 01ce5a4e3h
+dd 099fdad7bh
+dd 0fcc03cc2h
+dd 00f894badh
+dd 0b7cee63bh
+dd 0888c5207h
+dd 0fe4c38bbh
+dd 004630282h
+dd 05cd5bde4h
+dd 05af9357ah
+dd 070e664e3h
+dd 0d2467f1ah
+dd 03f0de597h
+dd 0ab45a04ah
+dd 0de5d9c18h
+dd 0ffd752a9h
+dd 05a4daed8h
+dd 076bbb4fch
+dd 01bb2ca3eh
+dd 0a90115e8h
+dd 0338259c6h
+dd 06cc12aaeh
+dd 0239a88e6h
+dd 0a25be299h
+dd 0d7b2bdf8h
+dd 017cdeca5h
+dd 0577b9d52h
+dd 0e4b88b94h
+dd 02bf19b80h
+dd 0260e0b64h
+dd 0ec509c5ch
+dd 0a71f0b59h
+dd 0bc6bb510h
+dd 0e7facf3ah
+dd 0a7c5cbeeh
+dd 062ccba46h
+dd 0350a2caah
+dd 0330715adh
+dd 072ec99b5h
+dd 083e4eb48h
+dd 05c2df7ech
+dd 0035133cch
+dd 040b0e661h
+dd 0a0642d72h
+dd 09789ae27h
+dd 07f297ea6h
+dd 09bc724feh
+dd 0d034ce41h
+dd 03075bf88h
+dd 090ad954ah
+dd 0fd5fa208h
+dd 099ae403ch
+dd 0b3e3728bh
+dd 08c1821edh
+dd 0a2fcb6edh
+dd 012988780h
+dd 0b8cd673dh
+dd 00633b3d9h
+dd 0842e7e44h
+dd 028bf8181h
+dd 017db87b6h
+dd 065eb6d12h
+dd 003c49137h
+dd 0ff937d55h
+dd 009e76945h
+dd 03723e4c2h
+dd 03a731773h
+dd 0d16bcea1h
+dd 0f85e19deh
+dd 0472632b2h
+dd 002a09ec9h
+dd 069d27b8ah
+dd 0ceea2387h
+dd 087dffbefh
+dd 0ae5d45a2h
+dd 0c7a98b4ch
+dd 0e99fe0c9h
+dd 0c5b51db2h
+dd 09b3a8b0eh
+dd 0d489948ch
+dd 0d13398ebh
+dd 0da675806h
+dd 0b9ae87a1h
+dd 01838277ch
+dd 058a22625h
+dd 06f67639fh
+dd 05522b8d9h
+dd 0930623f4h
+dd 0ea73a6c3h
+dd 018f22e99h
+dd 088beeae0h
+dd 052693a7bh
+dd 04d24f017h
+dd 06aac5425h
+dd 09ca3b698h
+dd 0bd64e408h
+dd 0eb738eb7h
+dd 00987cd7fh
+dd 0f7d8e940h
+dd 017750344h
+dd 0cd3b97a5h
+dd 000dccdb5h
+dd 00ddb7f0ch
+dd 09dd77250h
+dd 097e0e716h
+dd 0f9d6a39ah
+dd 0b3922c03h
+dd 03263218ch
+dd 0bfd0304fh
+dd 06895540eh
+dd 06e18582fh
+dd 0c0e710cch
+dd 08064efceh
+dd 072e4b6edh
+dd 0001fcb2fh
+dd 0e158fe2eh
+dd 0e07c0891h
+dd 06370b7e7h
+dd 066c228b2h
+dd 0c6661617h
+dd 09ade7549h
+dd 0fa7595cdh
+dd 0ad9b6d3ch
+dd 0ee93f4deh
+dd 07c64e652h
+dd 02525f7f8h
+dd 04890dfddh
+dd 0babcdda0h
+dd 088fd0cf6h
+dd 0c0258a2eh
+dd 027533679h
+dd 094e30da9h
+dd 0a7997345h
+dd 052034ea5h
+dd 026194c32h
+dd 0280141a6h
+dd 0ac4edb85h
+dd 02904d707h
+dd 02f9cfdb0h
+dd 00211479eh
+dd 091b9c16fh
+dd 07d90aadah
+dd 0715cc919h
+dd 0a80e414eh
+dd 042a97daeh
+dd 0ccb08c34h
+dd 0b0fe4205h
+dd 0410321a2h
+dd 0f8424ebch
+dd 0b0e64592h
+dd 0dd7c7320h
+dd 0ca41cc5eh
+dd 092d751a0h
+dd 03de511d3h
+dd 04fe719c2h
+dd 084c20070h
+dd 09baee101h
+dd 06c1bc17eh
+dd 05e93f752h
+dd 0195f979eh
+dd 00fb3d458h
+dd 0f67e259ah
+dd 04093e2cfh
+dd 028878dfeh
+dd 0cc50956eh
+dd 015469a30h
+dd 05843b289h
+dd 0a2fd3b46h
+dd 03bcfe6fbh
+dd 029ec5c49h
+dd 05b7d7400h
+dd 04ae71274h
+dd 0924ce08ch
+dd 0713daa6fh
+dd 013566ac2h
+dd 05b90e9c4h
+dd 0021ccb48h
+dd 00ed55ab6h
+dd 0e789928fh
+dd 020710529h
+dd 0d7d7bc5ch
+dd 0ba27d0e0h
+dd 0bdddd29bh
+dd 03eff0bb8h
+dd 00efe7810h
+dd 0dbf24fc8h
+dd 0431ff4ech
+dd 0b8e08c4ch
+dd 01dad5ba7h
+dd 04bb9d371h
+dd 08a4e9736h
+dd 0cd216e03h
+dd 017154caeh
+dd 0a70bc362h
+dd 088538413h
+dd 0bff1bed4h
+dd 0c7bf4abeh
+dd 0311b3a57h
+dd 072b6bd6fh
+dd 0d03f559dh
+dd 0305ec50ch
+dd 0339932c1h
+dd 0c437090ah
+dd 0bdb1f0d3h
+dd 08efec0c5h
+dd 06beadd7bh
+dd 0d5f7bb70h
+dd 096cd28ach
+dd 091eda5e0h
+dd 02a9c65bbh
+dd 0229169fch
+dd 077b1e110h
+dd 0e9430365h
+dd 0bee8411dh
+dd 0d0dbdd79h
+dd 0e8d2210bh
+dd 080213d17h
+dd 07a0d8159h
+dd 080c752d2h
+dd 08d31fea1h
+dd 06d8ca0afh
+dd 08f8d1c78h
+dd 0ea3abc46h
+dd 0c9934301h
+dd 088139c73h
+dd 008759a13h
+dd 08f0ae7a5h
+dd 001da07efh
+dd 03e7fc5b6h
+dd 0e074de8ah
+dd 0d628f486h
+dd 053547d01h
+dd 01bd69e26h
+dd 080c62065h
+dd 047e5fb07h
+dd 00e3ab1ech
+dd 04631fe70h
+dd 0f285877dh
+dd 0b0e388bch
+dd 038477504h
+dd 0340ccf29h
+dd 0d3f58030h
+dd 00c627523h
+dd 03fdf9f51h
+dd 0e7966ed2h
+dd 039e48d31h
+dd 0ca7a9623h
+dd 08b70136bh
+dd 0d47502a1h
+dd 0fdb5561ah
+dd 0136fa9dfh
+dd 0e2393781h
+dd 0600eb7d4h
+dd 083168874h
+dd 0108bc644h
+dd 033237380h
+dd 0a0d16f31h
+dd 0e1c35a33h
+dd 00155aa68h
+dd 023fcd233h
+dd 06d7b0813h
+dd 05b752f89h
+dd 0f058fb6fh
+dd 0a56f55f3h
+dd 0df0c0e1ch
+dd 0d11a29bch
+dd 02d20744eh
+dd 0afdb81f6h
+dd 0e47585d2h
+dd 08c32f2e1h
+dd 0762e681bh
+dd 0fca71cb6h
+dd 0654ac225h
+dd 0d7aa7ee8h
+dd 03e62a4b1h
+dd 044c1afcdh
+dd 0f06c9de1h
+dd 068f388a3h
+dd 0be02bfb0h
+dd 0a3f8e3a2h
+dd 06bc309bdh
+dd 0f66f6589h
+dd 0a1566dc0h
+dd 0008ab3b6h
+dd 0551abafdh
+dd 07adbba9eh
+dd 09029cee0h
+dd 0acef45e1h
+dd 0c810c4d0h
+dd 01d6f3b89h
+dd 060d5a55eh
+dd 01972fe0eh
+dd 0ea579776h
+dd 03ba7e364h
+dd 0808b39a0h
+dd 0e54830bch
+dd 070bc049fh
+dd 05e187709h
+dd 02784595fh
+dd 07ba54e96h
+dd 017e159b9h
+dd 00dfe0713h
+dd 092cd100dh
+dd 00cf7c2ech
+dd 0e7fdd78fh
+dd 0fa168c23h
+dd 0eea50a3fh
+dd 030be548ah
+dd 028a34f70h
+dd 0b6cb1c5ch
+dd 030098099h
+dd 0cd7696ffh
+dd 0c6b4744bh
+dd 0522e2e04h
+dd 0f4f525a3h
+dd 0ae25e79ch
+dd 050e96a10h
+dd 0a12f247ah
+dd 0e26e14d1h
+dd 01744c60dh
+dd 0cfad04deh
+dd 0d2dba5b6h
+dd 08ec8ce65h
+dd 0cddca112h
+dd 0bf2394bdh
+dd 04ad58928h
+dd 0f14844bbh
+dd 03623ae75h
+dd 04f0cc32dh
+dd 06eae508ah
+dd 0288372f4h
+dd 013ba4c8bh
+dd 0f5a4e953h
+dd 0048dde5ch
+dd 0531b8ae9h
+dd 0fe61d93bh
+dd 0154abb2dh
+dd 0c6a3e907h
+dd 0cc99d98bh
+dd 08c671a1ch
+dd 06aacc2b6h
+dd 0dbd0d7a0h
+dd 03db1992bh
+dd 0a6ab6294h
+dd 0a5cf0962h
+dd 019e502eeh
+dd 06c4750e0h
+dd 0ae738e2ah
+dd 046a6e36dh
+dd 078c039cbh
+dd 02f203a53h
+dd 0b50feb3ch
+dd 0461fb317h
+dd 04618449bh
+dd 06647c264h
+dd 0bef0da2bh
+dd 0a07c44c9h
+dd 080de84e6h
+dd 0c66ac58dh
+dd 05abfe07ch
+dd 009abfa66h
+dd 006198424h
+dd 0cfff8e65h
+dd 087c3767bh
+dd 07d7d3907h
+dd 0228af4b3h
+dd 0305fa983h
+dd 092c18e91h
+dd 0b8a5540fh
+dd 03056662ah
+dd 09e291e40h
+dd 097280e4fh
+dd 0e7e0c9a0h
+dd 049a00a8ah
+dd 0fe308d68h
+dd 0a62ecadeh
+dd 0a71051afh
+dd 005a56596h
+dd 084be3580h
+dd 0b258c46fh
+dd 0c7efdfafh
+dd 0cd65af47h
+dd 05c4c4242h
+dd 069d1d9b0h
+dd 0ed9fc026h
+dd 0a98f22eeh
+dd 038c02f8bh
+dd 01cf64c5eh
+dd 0288df8c9h
+dd 0166f185ah
+dd 0c18c24e4h
+dd 0f630f4dch
+dd 03cb6d210h
+dd 088e67401h
+dd 0a4db80eeh
+dd 095db35bbh
+dd 0c549ac26h
+dd 0a91182f4h
+dd 0352878e5h
+dd 0b2f65fe3h
+dd 013498d47h
+dd 09aceae8eh
+dd 0459bf42bh
+dd 0369be43ah
+dd 0a55fd5ech
+dd 0a8d07e53h
+dd 0ab07d993h
+dd 0faf393f9h
+dd 0a2994f3dh
+dd 036903ce2h
+dd 0a56a89b4h
+dd 0b0407aebh
+dd 030e0836bh
+dd 01e5df263h
+dd 0771c8ac7h
+dd 07ba8d5beh
+dd 0dc116697h
+dd 091cdd831h
+dd 0d441df72h
+dd 03700502ah
+dd 0613aedfah
+dd 0a032d5c4h
+dd 08c6817aah
+dd 079b5be71h
+dd 0325d4187h
+dd 0dbf1001ch
+dd 0fcded3a2h
+dd 009fb7e26h
+dd 07e96d455h
+dd 0ebf50c72h
+dd 08b47b9c9h
+dd 0b685d931h
+dd 0929865ceh
+dd 06b8808f4h
+dd 0e4212ff7h
+dd 0284884fbh
+dd 053acda2fh
+dd 0cb92e62ch
+dd 090911890h
+dd 029a0a131h
+dd 00b834420h
+dd 0931e397fh
+dd 01d7558f0h
+dd 0f7e38895h
+dd 09fb89117h
+dd 09696d3c5h
+dd 0e1bcc8d4h
+dd 0ae6415d2h
+dd 051de11b5h
+dd 0098a9b14h
+dd 0f884b6a4h
+dd 0cd2e2a8eh
+dd 0cd9dadaeh
+dd 0cd249b24h
+dd 06be638c2h
+dd 02efd18c4h
+dd 03c330280h
+dd 0f64a3873h
+dd 08d22f038h
+dd 0f778743ch
+dd 0da6d826fh
+dd 045bff840h
+dd 0c978647dh
+dd 0f41c8f8ah
+dd 0f0bb4b05h
+dd 0c29acdb3h
+dd 0a3e0917eh
+dd 0d8b1f4f3h
+dd 06fbc6bc8h
+dd 0f8ca0f5bh
+dd 014c36a26h
+dd 09ee0cd05h
+dd 02aab2fb4h
+dd 0213c520bh
+dd 0edf60345h
+dd 01d13ebb3h
+dd 0bbbbf44bh
+dd 0571795b1h
+dd 092cc3efah
+dd 09bd300f3h
+dd 0f77ce747h
+dd 045678992h
+dd 0a48b6810h
+dd 0aa645b05h
+dd 0bbaa3aa5h
+dd 00af8c533h
+dd 0745d7df9h
+dd 0d48e7f0ch
+dd 07c0a99bbh
+dd 04e616ecah
+dd 0248638d4h
+dd 0ff5dba47h
+dd 0e4cb4391h
+dd 00ae97f49h
+dd 07a18da7bh
+dd 0ac463760h
+dd 07a3e3a35h
+dd 07e190e9ah
+dd 054613c74h
+dd 05c200a71h
+dd 0d3c08a4ah
+dd 0f66e1ac1h
+dd 0f5f49e61h
+dd 069329361h
+dd 002e8a5cah
+dd 03c2d91ddh
+dd 023fe8064h
+dd 025106654h
+dd 0cd2b2d22h
+dd 007510115h
+dd 0cd73caa5h
+dd 05d52a2e9h
+dd 01cee704eh
+dd 0b96aca56h
+dd 04055fa26h
+dd 02934de40h
+dd 00673ff59h
+dd 0109e25f3h
+dd 017b4720bh
+dd 0cc094ae7h
+dd 03f80a641h
+dd 021679027h
+dd 086645668h
+dd 0ff8df267h
+dd 009fa2dafh
+dd 04012a7b8h
+dd 0a35c9f69h
+dd 0781323bdh
+dd 06b1761d2h
+dd 0ba861c06h
+dd 067152b38h
+dd 09e3c301ah
+dd 0dea88e62h
+dd 08643e190h
+dd 0c3c34f67h
+dd 0f54a8d3ch
+dd 06d957fdfh
+dd 0d8a2e8fch
+dd 0e7e88a60h
+dd 09c6ad84eh
+dd 04df7ccf6h
+dd 070e88286h
+dd 05ca52cf2h
+dd 05e66047eh
+dd 06e1c7ca6h
+dd 05b98bfcbh
+dd 02669cbd2h
+dd 04fae34b1h
+dd 0d990e038h
+dd 0e58d9dedh
+dd 0f309de06h
+dd 0f9a53832h
+dd 0fc292423h
+dd 07cd71592h
+dd 071f5fb75h
+dd 077779101h
+dd 07cdfbdc9h
+dd 011351c01h
+dd 0d16e91dbh
+dd 0be257e29h
+dd 09908fbf1h
+dd 01b4b6969h
+dd 031dd783bh
+dd 080160d6ch
+dd 08f7debaah
+dd 066764a21h
+dd 0bb9624dbh
+dd 0d824705eh
+dd 05579c76eh
+dd 032f08ff8h
+dd 026a06482h
+dd 0da879586h
+dd 0cb3de572h
+dd 039f5f1cfh
+dd 06eef2250h
+dd 0840c0427h
+dd 08487e64ah
+dd 0b2214314h
+dd 0add6ae97h
+dd 0fa0566cdh
+dd 0d9c21dbeh
+dd 0d74f7f22h
+dd 0b8c46562h
+dd 0db98a335h
+dd 03566d948h
+dd 0ca63c456h
+dd 013884beeh
+dd 02ac06be1h
+dd 024b9b34ah
+dd 028dc75e1h
+dd 07fece17ch
+dd 0bfca5790h
+dd 02d84e9b1h
+dd 00caac44ah
+dd 04b4125cch
+dd 0c7059804h
+dd 0bbec524bh
+dd 06eb214b7h
+dd 0e2afcb84h
+dd 0cc9553aeh
+dd 003a52122h
+dd 0cac4f908h
+dd 0bd1a7e1fh
+dd 07e6e064ah
+dd 018ed83c7h
+dd 06483d44eh
+dd 0007a775dh
+dd 0351c286ah
+dd 0201134c4h
+dd 093eb1caeh
+dd 0504ae29bh
+dd 0ff508795h
+dd 0f81b2b3eh
+dd 07d4af49dh
+dd 04680691ah
+dd 015a36118h
+dd 0d49882abh
+dd 0f0891bd0h
+dd 05f93bf8ah
+dd 09fbd90deh
+dd 0f782319eh
+dd 00aa420aeh
+dd 056395dd7h
+dd 0d845066ch
+dd 093f60a46h
+dd 048d83f1dh
+dd 0bcd062d1h
+dd 0921e060dh
+dd 0bca7449dh
+dd 0cc521181h
+dd 046bafd83h
+dd 0ffd86cc5h
+dd 0c00cd608h
+dd 04597cb76h
+dd 05e6d2b86h
+dd 0029d1586h
+dd 03380ef93h
+dd 0374c6b08h
+dd 08cce70f0h
+dd 0d74c3b76h
+dd 022861f5eh
+dd 0ff9ca6dah
+dd 038e4d97fh
+dd 09971290fh
+dd 0513c753dh
+dd 020a75548h
+dd 0a9fd2754h
+dd 09c8b57b0h
+dd 0c8c01347h
+dd 0d90e2d39h
+dd 089b7113eh
+dd 0870b0ce3h
+dd 0a50b9ca2h
+dd 0567fd2adh
+dd 0527b342ch
+dd 00fbb50fch
+dd 0907981ddh
+dd 032a48214h
+dd 0466049d9h
+dd 003cc816fh
+dd 0405d89a4h
+dd 04c028580h
+dd 034c2ce44h
+dd 03a2fdf0eh
+dd 056f02748h
+dd 017abe462h
+dd 018b7f498h
+dd 0b1394e3dh
+dd 0cd35dffch
+dd 08e4d1ccdh
+dd 05cadb702h
+dd 0181f18fbh
+dd 058c3b640h
+dd 0b20261ceh
+dd 06340fa84h
+dd 07536a5e7h
+dd 07e577038h
+dd 04a6bdef9h
+dd 001f856a0h
+dd 0fcc9a1eah
+dd 0e2a84711h
+dd 042bffa6bh
+dd 057ed2fb6h
+dd 01d93d1e1h
+dd 0f345f24dh
+dd 0cb52d182h
+dd 0a7aa1f9ch
+dd 055616846h
+dd 03e69f9cah
+dd 0a4875b9ch
+dd 0e802e71eh
+dd 0d6fa5e8bh
+dd 0e08c8ecch
+dd 0bdb233feh
+dd 0e1d8825eh
+dd 0fa6f3f0ch
+dd 05a5d8080h
+dd 0da8d7d5ah
+dd 0f55abb91h
+dd 0c2384ddch
+dd 0ff952576h
+dd 0ad01090bh
+dd 05b7d2f74h
+dd 0132a0bf4h
+dd 0773a5595h
+dd 06587f670h
+dd 0086456d9h
+dd 0f8e00bc9h
+dd 0de69d376h
+dd 037fed24fh
+dd 058f332c4h
+dd 0b1002012h
+dd 03493e504h
+dd 0f83ba228h
+dd 00d4ad25ch
+dd 023cfc0e3h
+dd 08ed5b86ah
+dd 076688b64h
+dd 0cb3e6d9eh
+dd 0d0ebe478h
+dd 071b0d50ah
+dd 0141eb5bch
+dd 0c111c5b2h
+dd 0675c23aeh
+dd 02a99bb0ch
+dd 0c91d131ch
+dd 0d2ab8c7dh
+dd 004a3dbe5h
+dd 03c041c34h
+dd 07056626ch
+dd 0d7ece6bfh
+dd 0f6e33a9eh
+dd 07d25a470h
+dd 06c24a490h
+dd 0e8a7af69h
+dd 0939adc54h
+dd 05a91799bh
+dd 0d6882da8h
+dd 01e0dfecch
+dd 028fee09ah
+dd 06ac70885h
+dd 01c731dcdh
+dd 06066b7b4h
+dd 05d748498h
+dd 0c66c4bc3h
+dd 0e1225a8fh
+dd 08bed391dh
+dd 0fc43dcaeh
+dd 03ec8a6f8h
+dd 0d9de03b9h
+dd 04c14b12fh
+dd 089b26a13h
+dd 08ae56555h
+dd 02377bdceh
+dd 06c8d8e98h
+dd 0e1248956h
+dd 04ad96307h
+dd 0a60f4a5eh
+dd 09e60ab5dh
+dd 054a4c23bh
+dd 07c99fbeah
+dd 0607c6884h
+dd 046b6700fh
+dd 0c39695c5h
+dd 0a3694f9dh
+dd 0b76a0305h
+dd 031d3d5cah
+dd 0a0b153c2h
+dd 0d8f7a8eah
+dd 0ea0b6c36h
+dd 0895970feh
+dd 050388fb6h
+dd 0e12a0419h
+dd 050e28188h
+dd 0f3345a51h
+dd 0d397d51eh
+dd 0b21ee244h
+dd 030989ca9h
+dd 0e2b79a35h
+dd 0155d231dh
+dd 00634e686h
+dd 0ca421ebeh
+dd 0abd63238h
+dd 0122f5fe9h
+dd 06a643fa2h
+dd 0020f1d36h
+dd 0fcc52909h
+dd 09649d614h
+dd 07528319ch
+dd 0daafc87eh
+dd 0fb5afbd5h
+dd 0df4105cah
+dd 01d83712ch
+dd 093a1add8h
+dd 00a18406bh
+dd 00000156ah
+dd 070e6884fh
+dd 0b120bd36h
+dd 08a932750h
+dd 0727634ech
+dd 0130a0f34h
+dd 099140935h
+dd 08dd5a8f8h
+dd 008e020cbh
+dd 007fdfcadh
+dd 0f8ff7c0eh
+dd 06abcae69h
+dd 035655a76h
+dd 0388bf9ebh
+dd 03c3a4adbh
+dd 0793df1b8h
+dd 09a4104d5h
+dd 0b1d44c71h
+dd 0f65040fch
+dd 0c1f8b283h
+dd 006d9ee62h
+dd 0a340bdedh
+dd 02cddb5c7h
+dd 0217726ach
+dd 09aa7aaf5h
+dd 035eb332eh
+dd 0655f38c4h
+dd 0785c2046h
+dd 07eac8747h
+dd 08f2483feh
+dd 0a27c47fdh
+dd 0b8b876e0h
+dd 04daad2a3h
+dd 0dbcbf2f0h
+dd 0942d23a8h
+dd 06bbcf297h
+dd 01518d89ch
+dd 08c31e6d4h
+dd 07486778bh
+dd 0ac62e131h
+dd 05d60161dh
+dd 02b80be00h
+dd 079bc7010h
+dd 086192ceah
+dd 0bda9ae58h
+dd 0e743763fh
+dd 0dffa35a8h
+dd 01bb7882dh
+dd 018325bfdh
+dd 0571363c7h
+dd 03ec50b9eh
+dd 04ba92c29h
+dd 0abe31418h
+dd 0e6a37b90h
+dd 045828117h
+dd 01f1f1261h
+dd 05b276450h
+dd 0d34475f7h
+dd 0f8fcec55h
+dd 0716198bfh
+dd 02ce29184h
+dd 00385eac1h
+dd 0ea498a1eh
+dd 0f35a7149h
+dd 0690954d1h
+dd 0c032c9c2h
+dd 02c66f1c6h
+dd 05453cf78h
+dd 01e02b16ch
+dd 0f8e8e444h
+dd 0515423bdh
+dd 0d38c73b4h
+dd 0f9ee7c6ah
+dd 03eb8a08dh
+dd 06aa65d6dh
+dd 0fa852c0bh
+dd 0a4cff20fh
+dd 0ea569d46h
+dd 08f27907eh
+dd 0527bcf31h
+dd 0a5a52c3bh
+dd 05c65d693h
+dd 0a9ec5ae5h
+dd 0328e09cah
+dd 031953d5ch
+dd 069b28d1ah
+dd 03efa738fh
+dd 0be47ef05h
+dd 022edde80h
+dd 082592e0bh
+dd 0f81d7e94h
+dd 09759196fh
+dd 02fde579ch
+dd 07be28b7ch
+dd 0fcbb5c90h
+dd 02c2e2423h
+dd 062412037h
+dd 08437228ch
+dd 04dba1dfbh
+dd 0ceabbe2eh
+dd 05021acbdh
+dd 07c6534c6h
+dd 04699bd92h
+dd 005aabd72h
+dd 04192a437h
+dd 0514448c9h
+dd 0a4ddba99h
+dd 01438269bh
+dd 0a879c6a7h
+dd 013f48e5ah
+dd 0888bc644h
+dd 0a9c78568h
+dd 0f73dca3fh
+dd 01d0bfb3eh
+dd 0e38458edh
+dd 0d08e723ch
+dd 0c3f73702h
+dd 0ee7cc22bh
+dd 0a77d7d2ch
+dd 03263d521h
+dd 07261356dh
+dd 0ab639658h
+dd 06b331994h
+dd 0f9275e77h
+dd 0df3cabb2h
+dd 05af59dc9h
+dd 01627208bh
+dd 0ae844683h
+dd 0b1bb1e69h
+dd 089308198h
+dd 026be831ah
+dd 0ddb2a489h
+dd 03b17b08ah
+dd 02aa78abdh
+dd 0fec332e0h
+dd 01bc56098h
+dd 0c3e2c885h
+dd 097deccb3h
+dd 0cf093e7fh
+dd 0427a3105h
+dd 0b3f86135h
+dd 0e97c77d3h
+dd 0cef21bfeh
+dd 0a7b285bfh
+dd 0f0521a7bh
+dd 0f9932b53h
+dd 0785de527h
+dd 0ed48277eh
+dd 0a7bf0ae7h
+dd 02ec0089bh
+dd 0ddc462ech
+dd 02bb43e37h
+dd 08a39eb9ah
+dd 018538ad9h
+dd 00a20eae0h
+dd 09ef5af34h
+dd 04709255ch
+dd 0c2e03e7fh
+dd 0fb287a37h
+dd 0358162f8h
+dd 0c0bc868bh
+dd 01ce5bd9ch
+dd 039d53393h
+dd 00ff9c9e2h
+dd 026cbaffeh
+dd 03ee3c11bh
+dd 05134fa3ch
+dd 00c40eaddh
+dd 00e34cde0h
+dd 04dd3311fh
+dd 015786573h
+dd 0faadf31dh
+dd 03ee0a55eh
+dd 0e9f1400eh
+dd 035468443h
+dd 08c5876f4h
+dd 0f725effdh
+dd 0e4ec8fbeh
+dd 097bbe7bch
+dd 0769cf847h
+dd 092301166h
+dd 09cd8991dh
+dd 04a7fb590h
+dd 0faaaab06h
+dd 0bda413d6h
+dd 05e368c83h
+dd 018203da7h
+dd 0a0f68b0ch
+dd 0136c3e0ch
+dd 02a815df8h
+dd 0b6ff37abh
+dd 097635602h
+dd 000c4b9e2h
+dd 07deac8eah
+dd 045ec542eh
+dd 0d653f093h
+dd 03279447dh
+dd 04c4e2a04h
+dd 047e9d25bh
+dd 0f8b66d4ch
+dd 01b7bf0b7h
+dd 06a3ef5c3h
+dd 0c086cbe6h
+dd 01a6658fdh
+dd 0bfb6c075h
+dd 0dd91bfadh
+dd 02551a7a7h
+dd 017e83004h
+dd 0250d7205h
+dd 0f586c826h
+dd 0d947736ah
+dd 01cb0623ah
+dd 0cde99f96h
+dd 02886d79ch
+dd 054fbcba6h
+dd 046fa0dd3h
+dd 0e76ca7b7h
+dd 0aaeba884h
+dd 009685a3ah
+dd 0fd26b3a0h
+dd 00f68767ah
+dd 09f74dbe2h
+dd 0a54e81ebh
+dd 01ba76708h
+dd 0c7d8596ah
+dd 0d2174b5ch
+dd 017b428a4h
+dd 0435a72b7h
+dd 08655098ch
+dd 01ed89d71h
+dd 02994e87fh
+dd 0cb1eb726h
+dd 0ceb874b8h
+dd 031d5e8d3h
+dd 0e90b4378h
+dd 072a8bfeeh
+dd 0eefc5295h
+dd 060da75afh
+dd 0d9ed1de4h
+dd 048b178d8h
+dd 0930ea010h
+dd 0c1b98652h
+dd 030c2c43dh
+dd 058cb5b45h
+dd 05c6794cch
+dd 0b0078e71h
+dd 0a2265c0dh
+dd 0810ad90fh
+dd 0c9622275h
+dd 057ee672ch
+dd 06f5e5806h
+dd 05bb4b734h
+dd 06748ea3ch
+dd 0bb835de7h
+dd 03cf0da27h
+dd 0ad30d104h
+dd 05eb60a42h
+dd 028e722d3h
+dd 0579a064eh
+dd 0addfc62ah
+dd 01083916ch
+dd 09ce6d6e7h
+dd 06fdfd6efh
+dd 06a032d9dh
+dd 0c16d115eh
+dd 01588bc75h
+dd 05e29d78fh
+dd 0c003835fh
+dd 0d6a5f73bh
+dd 072b6f3f4h
+dd 0f2e90c27h
+dd 004aa69d2h
+dd 0351aacd8h
+dd 0b36a486fh
+dd 092e82e05h
+dd 026497d7eh
+dd 025c4e45eh
+dd 061f072ffh
+dd 0d1fa5dfbh
+dd 03cbb4f60h
+dd 080327e4bh
+dd 0a720ebdch
+dd 0a7b5c165h
+dd 0340f8a3bh
+dd 07389661bh
+dd 0756664fch
+dd 0d7742439h
+dd 089f508aeh
+dd 07edcf40ah
+dd 090ed37ddh
+dd 05ad46ecfh
+dd 0a659f537h
+dd 0f5bfd1a3h
+dd 0e8577d04h
+dd 02f1cfb53h
+dd 08ed70274h
+dd 0268b31b5h
+dd 0d30fa371h
+dd 0ffed0116h
+dd 019c60339h
+dd 037b895b7h
+dd 06957696ch
+dd 07ef4407ch
+dd 0a1205105h
+dd 07db5e6a0h
+dd 02cde5f5fh
+dd 0cd4f6d0ch
+dd 04cd7b9f1h
+dd 0c3b8345fh
+dd 0a9be7bcfh
+dd 081011d08h
+dd 0dd016ba3h
+dd 06c9368ddh
+dd 0cfd5ab72h
+dd 0e5f666e9h
+dd 0e3df2f05h
+dd 08c02ff2dh
+dd 06b86c799h
+dd 07cfbdb1fh
+dd 033990754h
+dd 0c35e79e4h
+dd 0a77ee6b9h
+dd 07d9765cch
+dd 094fe2f03h
+dd 0232d0604h
+dd 03cea3ea3h
+dd 0932c37b5h
+dd 0a9d4e7ech
+dd 0792a0be0h
+dd 0618394d6h
+dd 0d5b4ded1h
+dd 00abf7646h
+dd 01d398dbeh
+dd 07e2a795eh
+dd 05e0164dfh
+dd 0c9c5c786h
+dd 0b2abbdadh
+dd 0165392b2h
+dd 09276bd29h
+dd 037425131h
+dd 0cb11981eh
+dd 03c47dd1dh
+dd 03c1c10aeh
+dd 0a43e4a8bh
+dd 084631610h
+dd 03a039aadh
+dd 04e38b7f0h
+dd 03b517394h
+dd 0e717f4c0h
+dd 0ca8c7170h
+dd 0c5b8de9eh
+dd 05faa4a56h
+dd 0ca2d998ch
+dd 049c17fc9h
+dd 0eb2b58a7h
+dd 023983b58h
+dd 0429da86fh
+dd 038f90700h
+dd 06596346ah
+dd 04dc51b48h
+dd 0b9934463h
+dd 0261e69b7h
+dd 02fd56670h
+dd 0b2bd4018h
+dd 0f607501bh
+dd 0c76ed384h
+dd 0cf9c06e1h
+dd 021a9c58bh
+dd 0fbf6d0d7h
+dd 05f06cec0h
+dd 01212a9b1h
+dd 0d989431dh
+dd 0d2879312h
+dd 0bdcb0b7bh
+dd 011082c01h
+dd 078fdde72h
+dd 0de3bda9fh
+dd 01a8d2138h
+dd 0b2e106c6h
+dd 01d167c17h
+dd 0d872a27ch
+dd 0a5d9a337h
+dd 02ce267beh
+dd 00143e409h
+dd 0d79ab6c8h
+dd 00ed845e9h
+dd 07f3acf40h
+dd 0557ff179h
+dd 04b5575d6h
+dd 05ade4081h
+dd 0249b06f4h
+dd 083dc646ch
+dd 06d49f5b9h
+dd 0f7c7ca26h
+dd 0046a1c20h
+dd 0585da72ch
+dd 00d2b0c22h
+dd 0f8cebbc0h
+dd 0367b5f7ch
+dd 007ab80deh
+dd 0a6d2d0dbh
+dd 0e34d2298h
+dd 058bbb230h
+dd 06bf87203h
+dd 0a76ad40ah
+dd 0af469e0ah
+dd 0b0a50976h
+dd 09a52d2fch
+dd 035a3aee6h
+dd 0a33304bch
+dd 014ee3dc9h
+dd 0842cfc4fh
+dd 0b199cb31h
+dd 0000f0c76h
+dd 005c7557dh
+dd 0a051ac51h
+dd 02a135781h
+dd 07ee1aef7h
+dd 0391d632ch
+dd 0138e1b8eh
+dd 0dbf2735eh
+dd 003b0f709h
+dd 0fefccf5ch
+dd 0c41f8806h
+dd 032351019h
+dd 064a3c58ch
+dd 077c52d37h
+dd 0905bf17bh
+dd 0a1ac41efh
+dd 09bdc90f3h
+dd 0d400417ch
+dd 07d5cadd6h
+dd 03ec6a7d8h
+dd 04497400eh
+dd 0da3b4813h
+dd 05472b894h
+dd 04b65191bh
+dd 0ad072d74h
+dd 07012d549h
+dd 09d655197h
+dd 0c5a61120h
+dd 0956b5728h
+dd 0bc2dc99fh
+dd 07b4d084ch
+dd 06b22d9d5h
+dd 01eee1191h
+dd 085f55b96h
+dd 07847b4bah
+dd 04be69d98h
+dd 080c51c6ch
+dd 0418ff6d3h
+dd 0d2098512h
+dd 0c0a1aec8h
+dd 00133f9adh
+dd 0883864a9h
+dd 087612a3dh
+dd 0eee42c02h
+dd 0263ecd8fh
+dd 05dae008eh
+dd 0c3f84bf4h
+dd 0d66e45d1h
+dd 042168fc2h
+dd 09a2fb09ah
+dd 05d1ec9e1h
+dd 05c6e32d0h
+dd 0e2fb796eh
+dd 0f26070d9h
+dd 0215a1dbdh
+dd 0763dae66h
+dd 091b84cdah
+dd 0e3a485d1h
+dd 03ea18fd0h
+dd 0b12d19ech
+dd 0c0521014h
+dd 02f8429deh
+dd 0476bd68fh
+dd 0b8556eddh
+dd 033fd9a94h
+dd 02a6c6454h
+dd 0950d79b3h
+dd 00811d272h
+dd 0784936a8h
+dd 05f299689h
+dd 04f59ec77h
+dd 0b2d11a10h
+dd 0ff8e7859h
+dd 0998b909bh
+dd 00ce76c9ch
+dd 0e21e4ec3h
+dd 054e8df4fh
+dd 0849a361dh
+dd 0b68a7a51h
+dd 01fc4ad43h
+dd 0e2937cffh
+dd 03ce046f0h
+dd 0ecc8bba2h
+dd 00225b13ah
+dd 036c85c07h
+dd 04e1a47f0h
+dd 0399dbad6h
+dd 0fa9b4c7ch
+dd 0caa3a1d4h
+dd 0a3237597h
+dd 0b91d1142h
+dd 0101e7fe0h
+dd 030526fffh
+dd 07aa1dab4h
+dd 0a97b50c5h
+dd 0aaa9c590h
+dd 01bc1654ah
+dd 0a59e018eh
+dd 00198b62dh
+dd 07a70f1d1h
+dd 05d9b8111h
+dd 08114f02ah
+dd 0c45d2f61h
+dd 09ea36566h
+dd 0b614809fh
+dd 0d6194939h
+dd 02267559ch
+dd 072a82acdh
+dd 0cffc2ff0h
+dd 0b8318d80h
+dd 03f5994d1h
+dd 03a06b313h
+dd 09391d5cfh
+dd 026fe2a0dh
+dd 091a7dc59h
+dd 091ea3135h
+dd 0152ee665h
+dd 0094a128eh
+dd 0432cc7c1h
+dd 084118cebh
+dd 0dc0347a7h
+dd 0e2fe94b0h
+dd 08c2fb456h
+dd 044723420h
+dd 0dbe93d78h
+dd 0703b13ach
+dd 0a4154aeah
+dd 0ec27b0f1h
+dd 02a8b5780h
+dd 0fc0f84fdh
+dd 0bf0529dbh
+dd 0035a417dh
+dd 0011cb7dbh
+dd 04e06dce9h
+dd 095b1bfb8h
+dd 02841e180h
+dd 00029f6ddh
+dd 016e00f32h
+dd 052855421h
+dd 07049592ch
+dd 0f763c4b2h
+dd 0e58dcc59h
+dd 098992688h
+dd 01a55eee1h
+dd 0f3205e54h
+dd 0da5a6d33h
+dd 0a8b783f9h
+dd 0f9bf18a7h
+dd 07c6a2af2h
+dd 08078353eh
+dd 0d343d765h
+dd 0519bc9d8h
+dd 0ab34d731h
+dd 0acb01165h
+dd 019ef18a5h
+dd 0fb49868dh
+dd 014e7dc22h
+dd 028e9ca6bh
+dd 030aafd91h
+dd 0c5734d1fh
+dd 06d4dc7cch
+dd 09e5495c7h
+dd 0c689dbd8h
+dd 01e079115h
+dd 047df5d42h
+dd 0cd36b8e6h
+dd 0c25edaa0h
+dd 02756aeb9h
+dd 0eb3ef072h
+dd 04e3e6acah
+dd 0126cde17h
+dd 04a0573f9h
+dd 0a8dce6e6h
+dd 0eee9103bh
+dd 09b9b0b84h
+dd 0b4b2d457h
+dd 0ef3215a5h
+dd 0c11ec1eeh
+dd 016a32d1bh
+dd 03d874990h
+dd 09af1e344h
+dd 0102b5baeh
+dd 0e45debb3h
+dd 01fd16307h
+dd 0fa046159h
+dd 079781333h
+dd 06784473ch
+dd 04d473bcdh
+dd 09ec662e4h
+dd 04a3b31beh
+dd 00b1d27d5h
+dd 010372c41h
+dd 098e0ed99h
+dd 0cd022453h
+dd 0615ab292h
+dd 0fca9725ch
+dd 0c0e45fb2h
+dd 0bcb00d51h
+dd 06ddc84a0h
+dd 024a387cch
+dd 0954af727h
+dd 006087b0dh
+dd 032dcfa76h
+dd 041018fd8h
+dd 0361a6bfbh
+dd 0f74939bch
+dd 0642944d3h
+dd 0850655dah
+dd 08c28d07dh
+dd 062a91d84h
+dd 0953852d8h
+dd 046599bc4h
+dd 08006041eh
+dd 0de4575d0h
+dd 08d81bac2h
+dd 0dc3d79e0h
+dd 0a9f60b16h
+dd 066640828h
+dd 0012058fbh
+dd 026312803h
+dd 0f3355e0bh
+dd 0f398fa63h
+dd 091daf097h
+dd 080949779h
+dd 0e6028f2bh
+dd 0ff0f98f4h
+dd 095609043h
+dd 0b231c446h
+dd 0e73e19cch
+dd 0ccbfa2a5h
+dd 0d550d746h
+dd 03bf47d21h
+dd 047fad385h
+dd 0ad7a4a40h
+dd 02aec29d6h
+dd 02320fe5bh
+dd 05e491186h
+dd 0d54b70edh
+dd 0e254e1e6h
+dd 0af72a611h
+dd 0e2ffb568h
+dd 04f8513d8h
+dd 0139def6eh
+dd 029bf9d07h
+dd 08fa751a5h
+dd 072c96807h
+dd 0238be900h
+dd 0bc4ad16bh
+dd 002404554h
+dd 029d7b27dh
+dd 02ca42a79h
+dd 01c02134ah
+dd 018e45188h
+dd 0c50ec6cch
+dd 090c3ba9ah
+dd 05a1864b0h
+dd 001fa29d0h
+dd 08ec956f9h
+dd 0d8268ed9h
+dd 0d3ce88d4h
+dd 00b9885adh
+dd 0adb6bcfdh
+dd 0130df984h
+dd 0e8ca084ah
+dd 060744954h
+dd 00a7a6484h
+dd 0240830d0h
+dd 0e4a79286h
+dd 09211645bh
+dd 092e41364h
+dd 0d85f5b83h
+dd 0facdedc6h
+dd 0adc628d5h
+dd 0f823f3f6h
+dd 04901765ah
+dd 087a6d14ah
+dd 023fce15eh
+dd 0c9800d07h
+dd 0f95f88bbh
+dd 04ee02a85h
+dd 05a997cc6h
+dd 047d48bb4h
+dd 030745e50h
+dd 0c7ec4534h
+dd 0866d2adeh
+dd 0abf53485h
+dd 0f0af156eh
+dd 0a6dc0964h
+dd 032880643h
+dd 0d30f8973h
+dd 063805289h
+dd 055fc2b14h
+dd 0f0168268h
+dd 0e65185deh
+dd 0442da935h
+dd 0aaff2f65h
+dd 05186915dh
+dd 02f797a67h
+dd 0ba22ab09h
+dd 0aab13a26h
+dd 0dd6733a0h
+dd 0c7750178h
+dd 00f8ca378h
+dd 0a22d6bd6h
+dd 0402ac806h
+dd 05f336fc0h
+dd 0f128fa8bh
+dd 0b71175dah
+dd 08708b6a6h
+dd 08179a6dah
+dd 0c6c75e81h
+dd 0c1f78aach
+dd 06b673fb8h
+dd 02e27dd11h
+dd 0d2b899c4h
+dd 0f76ca1bfh
+dd 09e74592ah
+dd 0195d21d4h
+dd 04b5426d9h
+dd 068b5a28bh
+dd 0e1d0591ch
+dd 09c881032h
+dd 0988df45bh
+dd 06c66b9cfh
+dd 0d00edc07h
+dd 09d3fe573h
+dd 063b74960h
+dd 0a929b452h
+dd 0d2e0042eh
+dd 0e1fa2388h
+dd 01c3d7468h
+dd 0ed4c957bh
+dd 07e65dca0h
+dd 09e5d48bah
+dd 05cd37e40h
+dd 0388fb29fh
+dd 04fcf8fe5h
+dd 008491264h
+dd 013662aa6h
+dd 069f801ebh
+dd 05ee0e93eh
+dd 0334f79dbh
+dd 0037fe1f0h
+dd 0b44b959ah
+dd 0110a2a50h
+dd 0e1043abdh
+dd 06f67b63fh
+dd 0fd103708h
+dd 079e28c63h
+dd 0b3d43fddh
+dd 05eb87214h
+dd 02da42903h
+dd 01b46d455h
+dd 09df8f718h
+dd 0d46cb271h
+dd 082c87d2ah
+dd 082d20dd9h
+dd 068302077h
+dd 043f0d56fh
+dd 0f2a51792h
+dd 023aac0d3h
+dd 024020ee0h
+dd 082f2ef3fh
+dd 01c002c4ah
+dd 073a8f023h
+dd 02253110ah
+dd 0b2fbed29h
+dd 0fecb3c1ah
+dd 014eb6fdeh
+dd 0c548248ah
+dd 05e52b167h
+dd 06075977ch
+dd 0b23becf5h
+dd 05b67bcc8h
+dd 076dd2276h
+dd 0ee1858d7h
+dd 067cd5f68h
+dd 0be3b6c48h
+dd 0ec9c5a98h
+dd 0f6b2edbdh
+dd 04d9252f4h
+dd 015138b7dh
+dd 013d4880eh
+dd 00f45d385h
+dd 03b2acb87h
+dd 006fbc9ceh
+dd 09b4e68fdh
+dd 00293efcbh
+dd 0172297d2h
+dd 05b616a22h
+dd 075e5efc4h
+dd 0e787b9d4h
+dd 06c516b4ch
+dd 0843df74bh
+dd 0d763bbdbh
+dd 02cb46b11h
+dd 049a5a52fh
+dd 01124b46dh
+dd 0be8ea4ebh
+dd 0f5c5e20bh
+dd 095482181h
+dd 00c09e48fh
+dd 020cf25ebh
+dd 0f0886a68h
+dd 0ceb2c229h
+dd 0df4cf05bh
+dd 0a49c53d5h
+dd 00fe9249dh
+dd 07125ce74h
+dd 0afed9a6dh
+dd 02c319528h
+dd 02c7847bbh
+dd 0fcbbb768h
+dd 0aa9786beh
+dd 0819e3e98h
+dd 0e226f086h
+dd 095bd0715h
+dd 02171d117h
+dd 061fd38b7h
+dd 0a250c231h
+dd 0f127264fh
+dd 0c0ab99c8h
+dd 0fb9272b4h
+dd 09e366672h
+dd 0798d1b5eh
+dd 0a3cba6d3h
+dd 0c8b6119eh
+dd 0e55be52ah
+dd 02928dceah
+dd 059b62a00h
+dd 0c89f0719h
+dd 04a34186eh
+dd 0dac775fbh
+dd 054b2755eh
+dd 0e2177e7eh
+dd 046b9916fh
+dd 0614cc2edh
+dd 0bd49d255h
+dd 0046398e0h
+dd 0c89b81f1h
+dd 0d2684b2eh
+dd 08eaf3cd3h
+dd 0b7daa0a6h
+dd 0fe87c040h
+dd 00e3004f3h
+dd 0ede79905h
+dd 086a80f71h
+dd 063e99c6ch
+dd 09a9e264eh
+dd 0049bc99dh
+dd 06cbab5bah
+dd 0407fe593h
+dd 0f9494c15h
+dd 084d2d2eah
+dd 060d873f7h
+dd 0135e72e7h
+dd 01290a710h
+dd 0b658bfach
+dd 0c5aa25aeh
+dd 004fc7fa7h
+dd 0076f8b8eh
+dd 03dc03f3bh
+dd 0b1f64926h
+dd 0421ade48h
+dd 03f144735h
+dd 058e4bfdeh
+dd 02037c42bh
+dd 097694ba8h
+dd 0d3743692h
+dd 01a6b0229h
+dd 04e464a93h
+dd 0d807195dh
+dd 013c84f54h
+dd 07689e466h
+dd 082f3e6dfh
+dd 0964d75a8h
+dd 0083fe599h
+dd 06e111d3ch
+dd 05d001425h
+dd 059a33ee8h
+dd 04679c694h
+dd 07a48b703h
+dd 0cb5d538ch
+dd 08133f3b5h
+dd 0ad479886h
+dd 0a6d337e3h
+dd 0b992d5c0h
+dd 0dbbe2841h
+dd 008465f99h
+dd 05f1d264bh
+dd 0a2946bf1h
+dd 0bcfe5e00h
+dd 0ce922469h
+dd 03d22fcd0h
+dd 09e766d2fh
+dd 0b0377763h
+dd 07f29d8dch
+dd 0bd33f88ah
+dd 0d2bfcea7h
+dd 0e2e4683dh
+dd 07e39017dh
+dd 0cd11f5f4h
+dd 0950cb7a9h
+dd 0e42fd9deh
+dd 054c2b192h
+dd 05c969b92h
+dd 066d344dfh
+dd 0e46e4f99h
+dd 05dc423e0h
+dd 0cb5a05bdh
+dd 08319afd3h
+dd 0bacd5771h
+dd 0e37d16c0h
+dd 0dcc64bfeh
+dd 0e8e7a809h
+dd 04268dd5eh
+dd 08f7d4e55h
+dd 08ddc11b3h
+dd 076ec2ceeh
+dd 01eab94d9h
+dd 0b292737dh
+dd 032113ee2h
+dd 0f74cc611h
+dd 07bd7db38h
+dd 0ee8dc5cdh
+dd 07d5a81a7h
+dd 0dd68441ah
+dd 085f853b7h
+dd 01dab4b0ah
+dd 02f2db96fh
+dd 0c116ccc8h
+dd 0f127fc5eh
+dd 0abfa34b9h
+dd 09457c677h
+dd 022e772e8h
+dd 0950e2011h
+dd 0a03d1a0dh
+dd 0c5f0917ch
+dd 089401f9fh
+dd 01270000dh
+dd 00fdd22bfh
+dd 08645d7eeh
+dd 04a96ec0dh
+dd 0611b687eh
+dd 06d0a8149h
+dd 01990931bh
+dd 02050fe18h
+dd 048d2fe3ch
+dd 0a341828ah
+dd 0956eee95h
+dd 03d668606h
+dd 0666e61d0h
+dd 0d4fd3aceh
+dd 047b6b71bh
+dd 0173adc8ah
+dd 05e451ca9h
+dd 0178ba652h
+dd 0916402bah
+dd 0fe039987h
+dd 0aa816472h
+dd 0d6eda8a2h
+dd 0165db4feh
+dd 017e59f85h
+dd 09ac1c2d9h
+dd 08511ce34h
+dd 04700b405h
+dd 0d38e631ah
+dd 0e70e1e13h
+dd 08a8067e9h
+dd 074c18184h
+dd 0c57a8a79h
+dd 00e6497c2h
+dd 04cb201c6h
+dd 0b1c5d159h
+dd 021c79a16h
+dd 0327f4078h
+dd 044e1daafh
+dd 01e64fdeeh
+dd 03b35d98dh
+dd 0c16f4a22h
+dd 03ec30fdah
+dd 01d424c27h
+dd 0f2a38ac6h
+dd 07aa30d0dh
+dd 0032359e2h
+dd 0fdc0f0aah
+dd 090ce8a83h
+dd 041cfd0e6h
+dd 0421031b5h
+dd 0b0ea2756h
+dd 0fd7746feh
+dd 08dc17883h
+dd 0df838b42h
+dd 0bc6b12dch
+dd 0f789ca0fh
+dd 07673c479h
+dd 062c5c99ch
+dd 0d78eda90h
+dd 0c5aaef19h
+dd 08640adbah
+dd 0b9da0c14h
+dd 0a5e6a89ch
+dd 0c5fe5048h
+dd 061c44e85h
+dd 08668e34dh
+dd 05bbb6132h
+dd 0bd982511h
+dd 0e0f6c676h
+dd 0b58eeea6h
+dd 016e32c8dh
+dd 006e9004fh
+dd 0d277187ah
+dd 06beeec29h
+dd 0c8756a05h
+dd 0a39421ffh
+dd 02c75b522h
+dd 0b8ce855ah
+dd 084a2c3b7h
+dd 0be586249h
+dd 0bb90fe16h
+dd 04ede0d1ah
+dd 0401aaeeah
+dd 0b70fc62dh
+dd 03a75562bh
+dd 0d8dab127h
+dd 068b09a2dh
+dd 04c813332h
+dd 03737e966h
+dd 0f9c285aah
+dd 05ea135cah
+dd 094afb816h
+dd 004f42668h
+dd 02a73e591h
+dd 06dafee12h
+dd 0d4d3b6d2h
+dd 068275b07h
+dd 0785a4751h
+dd 047482d7fh
+dd 040dfdb1dh
+dd 0410471ddh
+dd 044437e75h
+dd 0b2e6e940h
+dd 0d7094dfah
+dd 0207b4d72h
+dd 095ef6b85h
+dd 0240c183fh
+dd 09fd5ebc6h
+dd 0b30f8629h
+dd 0c22d8f14h
+dd 0e569c278h
+dd 0fe5fe327h
+dd 0879b07dbh
+dd 07571610ch
+dd 01e96ef7eh
+dd 076ff585dh
+dd 003aac3b1h
+dd 0cb341796h
+dd 093386092h
+dd 0dc999988h
+dd 0b2097ad1h
+dd 02e9ac577h
+dd 0ec9396fbh
+dd 0f8a11003h
+dd 0acd05each
+dd 0b0f8faeah
+dd 019d29764h
+dd 0f4b79d67h
+dd 022d08b84h
+dd 012c85c82h
+dd 051ee55f5h
+dd 0c272ef94h
+dd 0c0c5ee90h
+dd 09b3cb015h
+dd 033a1e46bh
+dd 08d6ee719h
+dd 04c18c1d7h
+dd 059931af2h
+dd 085513832h
+dd 041fa7072h
+dd 0449c9d1dh
+dd 002561204h
+dd 0bb293e08h
+dd 025425c49h
+dd 08e03d675h
+dd 0562a79fah
+dd 081f5682eh
+dd 090e77656h
+dd 00e300974h
+dd 0f73334dfh
+dd 0694a3ef3h
+dd 0f85a34a8h
+dd 08548fb03h
+dd 03cfea906h
+dd 008342120h
+dd 03a602c4dh
+dd 0471e9bc2h
+dd 09093465eh
+dd 06f43a8f3h
+dd 003ffd76fh
+dd 0a11c35c1h
+dd 06ddc10d2h
+dd 00c9f06d4h
+dd 01559c74ch
+dd 0b3585166h
+dd 0d5daf652h
+dd 01eb1db64h
+dd 0a574ef63h
+dd 0b3097db4h
+dd 0671a3a31h
+dd 0f417f0b2h
+dd 0f22e7046h
+dd 0cf851233h
+dd 08b045bd2h
+dd 0920bd8feh
+dd 003d53c42h
+dd 083c03a7fh
+dd 0b1387c99h
+dd 05e0ed85eh
+dd 0cd817e3bh
+dd 08440d370h
+dd 063d92525h
+dd 03b5c054bh
+dd 05911bafbh
+dd 03ab6e998h
+dd 0f3972f1fh
+dd 0a1bb961bh
+dd 0acee00d4h
+dd 0737981f8h
+dd 005a07dc2h
+dd 08490fc7fh
+dd 0c2b41529h
+dd 0bbcf3c72h
+dd 07e6361f8h
+dd 056776886h
+dd 0d149b92ah
+dd 0fd9cf577h
+dd 0fe5293a9h
+dd 0d8a979adh
+dd 0c33818c2h
+dd 0ca141c22h
+dd 0df2c1ac9h
+dd 03d4246e5h
+dd 01ac5355fh
+dd 0a93e1475h
+dd 028ecd628h
+dd 09ed078ech
+dd 06dcc600bh
+dd 01e16c064h
+dd 07e83910fh
+dd 0e1a8fe6fh
+dd 02785ffa5h
+dd 0602b8dfeh
+dd 0cbfffcd8h
+dd 04dc3bea3h
+dd 0e08a5d07h
+dd 009ce73d8h
+dd 09f09e7e5h
+dd 02dcdf80ch
+dd 0973ff39ch
+dd 00dae272eh
+dd 0d50706e4h
+dd 040441310h
+dd 073f7da3eh
+dd 0592734d8h
+dd 0f6484d4ch
+dd 0936009eeh
+dd 0b3063a7ah
+dd 0c27d7d75h
+dd 054739f49h
+dd 00713de4fh
+dd 0e004aa6ah
+dd 0fb23ccc3h
+dd 0fbe48b01h
+dd 08fbfd637h
+dd 00c93b739h
+dd 072a486e4h
+dd 0ad748f41h
+dd 03a8015d9h
+dd 03594e4e4h
+dd 0a8635047h
+dd 0097e5c7bh
+dd 0f7263019h
+dd 0ff775da7h
+dd 0bbba1dd8h
+dd 083c7151bh
+dd 01f5dece5h
+dd 0b0e70008h
+dd 0fe0047e3h
+dd 0ee9091cfh
+dd 011333224h
+dd 0902b4000h
+dd 0a9726e40h
+dd 0bf5d0fa0h
+dd 0ed36fa10h
+dd 0984cbda0h
+dd 082b40828h
+dd 0ad2180e9h
+dd 0d03b8827h
+dd 0e7b473fah
+dd 0821fd881h
+dd 09c976f63h
+dd 04fcdca93h
+dd 0a457b9edh
+dd 0ce34624ch
+dd 0c8204d5ch
+dd 0f85b9389h
+dd 040e9183dh
+dd 0d57e9922h
+dd 0e1e8697bh
+dd 06627887ah
+dd 00806dad9h
+dd 018ed93c8h
+dd 0dcfee643h
+dd 047b02384h
+dd 094e7f8b7h
+dd 00fde9d63h
+dd 088066f60h
+dd 065e88d6ch
+dd 03b805b82h
+dd 04e76531ah
+dd 0622bfb4ah
+dd 091a5f4dbh
+dd 04e4d2969h
+dd 0b9eb3757h
+dd 0241551dah
+dd 0827881d0h
+dd 017c2b15ch
+dd 0060fc533h
+dd 00b002684h
+dd 0e0e630b7h
+dd 092096685h
+dd 03701272ch
+dd 01c4a926dh
+dd 0c5a22990h
+dd 09667c76bh
+dd 091f20e6ch
+dd 08bc95c37h
+dd 05bed93f6h
+dd 09d8aad90h
+dd 0e8e2c7bch
+dd 0adee04deh
+dd 0f2f3f8a9h
+dd 039efb6b9h
+dd 0b22b45f4h
+dd 099d82245h
+dd 0d9f7b9c0h
+dd 012e833c3h
+dd 016fcd095h
+dd 076c09379h
+dd 06ac9d2e2h
+dd 04af0b69dh
+dd 033d13e72h
+dd 04519eaf8h
+dd 016412daah
+dd 00a439337h
+dd 0b2b3c9beh
+dd 02a12e91ah
+dd 09dd6d4b6h
+dd 02022f129h
+dd 09e417ab4h
+dd 0e01185f6h
+dd 02dd7914ch
+dd 01fb7d5fah
+dd 047646d5fh
+dd 066225384h
+dd 07695f703h
+dd 0f87ca237h
+dd 0476048bdh
+dd 003a653e8h
+dd 02af6e7d6h
+dd 04807e278h
+dd 08e9c0d40h
+dd 07b6ab9abh
+dd 079f8a43bh
+dd 0976db53dh
+dd 05ac29fc2h
+dd 07416ae17h
+dd 08745b4c3h
+dd 0d014b978h
+dd 04891b3d6h
+dd 0582d08bbh
+dd 069a76cd1h
+dd 0ea3046d6h
+dd 07226866eh
+dd 02a5077a2h
+dd 0f8bb4a31h
+dd 0a243e69bh
+dd 03744d2afh
+dd 0efd372edh
+dd 099b5eebch
+dd 0b9384503h
+dd 00bbb57e0h
+dd 079bab5eah
+dd 0f205f6f7h
+dd 07bed9b55h
+dd 0b86ceeb1h
+dd 075993fd5h
+dd 06c41dcc2h
+dd 0512380a2h
+dd 0fa0ea5b8h
+dd 077626f99h
+dd 03aa82397h
+dd 0fcbcde1eh
+dd 05b0eb348h
+dd 008e88d1ah
+dd 08e2405a9h
+dd 0a325e544h
+dd 01161f669h
+dd 06d87e854h
+dd 0db6db24ch
+dd 0809dcc41h
+dd 021bffa21h
+dd 0fd5fd861h
+dd 053e6af6bh
+dd 0eef65732h
+dd 038997ff2h
+dd 04f94c0f7h
+dd 0cdee3ecbh
+dd 0b1f5e16bh
+dd 012b51f67h
+dd 04fa427e4h
+dd 0b32713d1h
+dd 07cd1411eh
+dd 0e7534b9bh
+dd 09c05d8b1h
+dd 020be5d8dh
+dd 0d34bde95h
+dd 05aba80d5h
+dd 0cfbe2633h
+dd 08b2e9a04h
+dd 0110962b9h
+dd 047fa2933h
+dd 0b6ecb4e1h
+dd 05f68a353h
+dd 0755d3a28h
+dd 0e2124618h
+dd 0bf0d5cd7h
+dd 041229eafh
+dd 09d6eb536h
+dd 0b4550624h
+dd 0cc01f55bh
+dd 09af885a2h
+dd 0af41f309h
+dd 0ff0b6e94h
+dd 0fc3f116eh
+dd 0e78bfec1h
+dd 099a6a5d0h
+dd 0324ef5e9h
+dd 0f882c96eh
+dd 08d06cb48h
+dd 066020bb6h
+dd 079af9124h
+dd 04ea600feh
+dd 03baed466h
+dd 0b5c8c9c4h
+dd 0fcc53b0eh
+dd 03adb76ceh
+dd 0ea40167eh
+dd 0008a474eh
+dd 08225b155h
+dd 0785d1e26h
+dd 050099a46h
+dd 02cd80d05h
+dd 0f4fc0f9ah
+dd 009a7ed7eh
+dd 076850c65h
+dd 0d129baa2h
+dd 0e2aa85f0h
+dd 0e18451d4h
+dd 0623306b2h
+dd 01c4e70adh
+dd 043aa41f9h
+dd 09934baeah
+dd 0917fbb70h
+dd 0d5d169e6h
+dd 0b0fb5b74h
+dd 0445114aeh
+dd 014b65e68h
+dd 0c4bdeff3h
+dd 0c00263d0h
+dd 0178fdf54h
+dd 01484a01bh
+dd 0640c963dh
+dd 04349e545h
+dd 0152a5681h
+dd 036b225a4h
+dd 0eea71457h
+dd 011deafeeh
+dd 07dfd8292h
+dd 099d152e9h
+dd 0e2fa55bah
+dd 098a6142fh
+dd 007c1f8ach
+dd 022559020h
+dd 0816ee002h
+dd 060055d83h
+dd 006c3f33ch
+dd 0431b6f9dh
+dd 048a72472h
+dd 0cab429cfh
+dd 016467687h
+dd 0aede0564h
+dd 09d1c6076h
+dd 035e9ed95h
+dd 0d0adb35dh
+dd 0808790cfh
+dd 0188dd8b3h
+dd 0f123fee9h
+dd 014fe7872h
+dd 0914f892eh
+dd 077ba0900h
+dd 046b97be0h
+dd 07fd89e82h
+dd 0f0b10442h
+dd 03ba23c13h
+dd 0e14e2191h
+dd 0a4dd6c73h
+dd 06b46e1f9h
+dd 0b0c3ea68h
+dd 02feefe0bh
+dd 0e681f89eh
+dd 030007444h
+dd 08c27a5b6h
+dd 0f00e6a7dh
+dd 09b8cea9dh
+dd 0ac14621fh
+dd 04d0870dfh
+dd 040f4453ah
+dd 0f511fb76h
+dd 0b5320b9eh
+dd 0f79d06b4h
+dd 01487b092h
+dd 01c00cd1ch
+dd 0cda44a56h
+dd 0eaf5787dh
+dd 0c808ee71h
+dd 02c30f14ch
+dd 07f1d952eh
+dd 03b527796h
+dd 03992382bh
+dd 0b695fd04h
+dd 081a61fbch
+dd 01cd82ad9h
+dd 0d2ce5e8bh
+dd 0b7812f82h
+dd 043406a4eh
+dd 099f1aa19h
+dd 0ec23d986h
+dd 06c49e321h
+dd 09d889f20h
+dd 0d3a917e5h
+dd 03c41d39ch
+dd 06f379f3ch
+dd 0d8a28b11h
+dd 04ff0d82ch
+dd 0bf8170f5h
+dd 03dd6904ch
+dd 0031ad656h
+dd 0918acdb2h
+dd 035e41823h
+dd 0ff0274bdh
+dd 0b550e36fh
+dd 06876bd1bh
+dd 00dbfa858h
+dd 0fe5bd51fh
+dd 058a612fdh
+dd 0c9f3204bh
+dd 0807e636eh
+dd 04573979bh
+dd 04def38ceh
+dd 067dec29ch
+dd 003088827h
+dd 0186f96adh
+dd 0d0507ac8h
+dd 0bb375d2dh
+dd 0a375265dh
+dd 08dcb9338h
+dd 05e8ca716h
+dd 0b2b58472h
+dd 05415a790h
+dd 067a78567h
+dd 06fd8f973h
+dd 0b03b6a14h
+dd 0409c6ecch
+dd 0b6f008b9h
+dd 010e1a48fh
+dd 0aa57c494h
+dd 001cd2150h
+dd 05568530eh
+dd 07d457f3fh
+dd 014c14692h
+dd 0f6e8e553h
+dd 02a3e6e17h
+dd 065fbd833h
+dd 01e01071bh
+dd 0e254c8aah
+dd 0d9f94329h
+dd 03ea61c6eh
+dd 09d85c6a4h
+dd 09a9a8bf4h
+dd 0c9fd274ch
+dd 0616bf11bh
+dd 093090b69h
+dd 0e1fc8a81h
+dd 0a6d4677eh
+dd 0ec3be581h
+dd 01559d4f9h
+dd 0a288da23h
+dd 0b50ac29bh
+dd 0063eda75h
+dd 0589eb577h
+dd 0f0ecc0fah
+dd 0454749cah
+dd 00e026930h
+dd 0aa4157e9h
+dd 043bffaf0h
+dd 05cd69caah
+dd 055e005c3h
+dd 0861ba9e2h
+dd 0ffea6c3ah
+dd 0879a5dd7h
+dd 0348eb53bh
+dd 00f37d180h
+dd 0b23e2bb0h
+dd 0362afecdh
+dd 0628e23edh
+dd 01450e335h
+dd 0dc489e63h
+dd 0e8d1569eh
+dd 063e16197h
+dd 01e22fc28h
+dd 005b4d10ah
+dd 03c12c3bfh
+dd 04006447dh
+dd 04c1ad85dh
+dd 09056176dh
+dd 0d90aa692h
+dd 09a2f8005h
+dd 04ab45ab6h
+dd 0dd766073h
+dd 06f50566eh
+dd 0370a3ec9h
+dd 01add3371h
+dd 09b8216deh
+dd 037b8995ah
+dd 06bf5733ch
+dd 0797931b0h
+dd 0e6ddc656h
+dd 050947433h
+dd 0e25d35dah
+dd 0d6154118h
+dd 07ed030f1h
+dd 02248096bh
+dd 02ab4d6a8h
+dd 02334c91ch
+dd 0dc209b64h
+dd 04673addah
+dd 0dee76ca7h
+dd 07c2be19dh
+dd 0be5bac3ah
+dd 07d3ebbe7h
+dd 0204553a9h
+dd 0dd693ca0h
+dd 0c834f894h
+dd 0ea579e4ch
+dd 0fe3c212fh
+dd 0de2f798ch
+dd 0fd715e23h
+dd 09a6cfa07h
+dd 08ba18c37h
+dd 0abdd443ah
+dd 0659d3727h
+dd 0b4e74433h
+dd 0983ce90ah
+dd 0253bb2f6h
+dd 0f3d65367h
+dd 00c84a731h
+dd 0a42e1fabh
+dd 013a5b7eeh
+dd 0719d0944h
+dd 0b1883296h
+dd 01225e585h
+dd 05b11c892h
+dd 06c73dd08h
+dd 0f2eba198h
+dd 037df4cb8h
+dd 03a18f0f3h
+dd 04c0b5122h
+dd 06a1d2defh
+dd 02efba459h
+dd 0d1e6042ch
+dd 05ea1d3adh
+dd 027f40823h
+dd 06a563795h
+dd 02851cfc5h
+dd 0b85185dch
+dd 09ad2af83h
+dd 0995f224fh
+dd 026a3de02h
+dd 0db08273ch
+dd 0841cbadah
+dd 069bc0abfh
+dd 055231753h
+dd 0a472b4f9h
+dd 01b830a29h
+dd 0b46edf7ah
+dd 04b193250h
+dd 0f5f5d731h
+dd 0c1d469afh
+dd 057a85d3eh
+dd 053b4e8f3h
+dd 0bae20367h
+dd 063daf20ah
+dd 062e5a23eh
+dd 039664e57h
+dd 0eaabcc83h
+dd 0f1bc093eh
+dd 072507c46h
+dd 01853031dh
+dd 08015028fh
+dd 053b74dbdh
+dd 0fc499504h
+dd 0e7990417h
+dd 0919e88d4h
+dd 0623030eah
+dd 0413fb644h
+dd 0999f0462h
+dd 039d2173ch
+dd 076223f4eh
+dd 0bbbdf039h
+dd 071b91ed6h
+dd 01fc8f6bch
+dd 04c0f9a2fh
+dd 0b1b537a4h
+dd 0027c827eh
+dd 00bbbc311h
+dd 0ab5121c0h
+dd 05119a99ah
+dd 052ee96a3h
+dd 03b14c8b5h
+dd 031f28a15h
+dd 02ffcd3c7h
+dd 06869999ah
+dd 083aadda3h
+dd 0254c539fh
+dd 026af40edh
+dd 09067313eh
+dd 06b4a4149h
+dd 0215ccb89h
+dd 0c9de3b6eh
+dd 07a281350h
+dd 03c58221fh
+dd 0a4882e03h
+dd 055e01c78h
+dd 0774e104eh
+dd 00591f2b8h
+dd 0641f824eh
+dd 09ce0e75ch
+dd 0ee0232b1h
+dd 03efd1513h
+dd 0cc1cdaafh
+dd 071450f54h
+dd 0786b01b9h
+dd 08f3d6058h
+dd 06b0efc76h
+dd 0d9e601c9h
+dd 0258a04adh
+dd 0ced2a051h
+dd 032a18f59h
+dd 0e8dc2cf5h
+dd 0f3db0c6ah
+dd 095e83805h
+dd 05f9c57aah
+dd 09036cc5eh
+dd 0e0b63933h
+dd 0c4360688h
+dd 0c819aba7h
+dd 0c9d1a439h
+dd 0e3190dcch
+dd 08bafb6fah
+dd 0730d6a40h
+dd 082a5881ah
+dd 0782c941bh
+dd 063d3c49ch
+dd 0e2249b78h
+dd 092a5b60eh
+dd 0fa810221h
+dd 04aa2688fh
+dd 07e1cce30h
+dd 0be6bf9cbh
+dd 08e884865h
+dd 095be8ff4h
+dd 034cb699fh
+dd 0b8341168h
+dd 0054e2686h
+dd 0c6f2e03dh
+dd 0a4d1f5a7h
+dd 09a785799h
+dd 0b9704190h
+dd 046980f8ah
+dd 0cf9f1682h
+dd 03937b97bh
+dd 023b7bf8dh
+dd 0a78a0dcah
+dd 0ace357c6h
+dd 092bbb653h
+dd 0b2f19e77h
+dd 0ed8ab1ddh
+dd 080c3b5aah
+dd 07fcec739h
+dd 0a9f8ffc3h
+dd 068900aa5h
+dd 00d0ddb71h
+dd 066bcf124h
+dd 05f2dfa2bh
+dd 06e2ffdb8h
+dd 0af00ac6ch
+dd 03de6866eh
+dd 04bab5ae2h
+dd 01bf65c9ch
+dd 0b4559407h
+dd 06e0796b3h
+dd 02bfaec7dh
+dd 01551a2c2h
+dd 06fdb27a1h
+dd 06d6ab6d3h
+dd 0b40c99dch
+dd 05e51424ch
+dd 0787d2d9ch
+dd 00e59fb00h
+dd 023644ee8h
+dd 034132e93h
+dd 03a3d3901h
+dd 063c7c89ah
+dd 0ccc7dc4fh
+dd 0f6ca8720h
+dd 0be68c489h
+dd 0e3d6ce1ah
+dd 0b09ebb61h
+dd 0c006d61eh
+dd 0cf7a99d9h
+dd 02d6d3875h
+dd 0be2fc682h
+dd 02fcd9989h
+dd 0ad728707h
+dd 0be3c6e34h
+dd 092cedc95h
+dd 0a7e4f9aeh
+dd 0b9188f8ch
+dd 099fedf8fh
+dd 0e593fddbh
+dd 06d5c3e1ch
+dd 09af38575h
+dd 0e4e202b2h
+dd 0ce3eb3aeh
+dd 0910be1d1h
+dd 09081e103h
+dd 0ddc19b19h
+dd 033a3edbfh
+dd 0c0c32803h
+dd 07b294f28h
+dd 0e94718fbh
+dd 020e3fb02h
+dd 04686983ah
+dd 0b849f9f0h
+dd 07e720016h
+dd 0e586580ah
+dd 0f7e060f2h
+dd 097892fe2h
+dd 07d1622b1h
+dd 09becf1e0h
+dd 07ffc6c59h
+dd 00b6e2b7dh
+dd 04d80073eh
+dd 05c4d1a02h
+dd 0ddfc816ch
+dd 0f863cb08h
+dd 0d731ea76h
+dd 0b8a210efh
+dd 0f5d8e17ah
+dd 0f73f0b67h
+dd 0df87434eh
+dd 0a8dc6e4fh
+dd 02516abbeh
+dd 09712277eh
+dd 0498fcdefh
+dd 0996532cdh
+dd 000bcfb45h
+dd 04b29ee2ch
+dd 025c6ec51h
+dd 029b90cf5h
+dd 011067ca0h
+dd 0d9e9ed0ch
+dd 06d77b9e1h
+dd 06d290d12h
+dd 0276ecd77h
+dd 0765b2b42h
+dd 0e84fc85eh
+dd 07619033fh
+dd 0489e19c3h
+dd 09e97f8e1h
+dd 07388fb56h
+dd 0116067abh
+dd 064fc708ah
+dd 009e77c8ah
+dd 077bf3176h
+dd 0ae9dfe40h
+dd 033c2dee9h
+dd 050ec6ca2h
+dd 03cc606e8h
+dd 083ff7f3ah
+dd 067f79fc3h
+dd 01c39a365h
+dd 09a1a8c49h
+dd 03ba90a1ch
+dd 04142a07dh
+dd 0a43584fch
+dd 0808649aeh
+dd 0a5f5f2e5h
+dd 0045082f5h
+dd 00fe48bech
+dd 0a3be3754h
+dd 0471554d0h
+dd 0be95c1d1h
+dd 0249087c4h
+dd 0f1c4129eh
+dd 0701611f7h
+dd 072c78a61h
+dd 0a51e97e5h
+dd 09dc815adh
+dd 064b9edd3h
+dd 0a2c327e7h
+dd 08bc75e30h
+dd 0667dd6b5h
+dd 0bc440831h
+dd 02b56331fh
+dd 0f90a61cbh
+dd 0cb772e8eh
+dd 06bb6fc8ah
+dd 0fe688a7ah
+dd 0bb1225adh
+dd 0453208f0h
+dd 0fca08fa6h
+dd 00beed912h
+dd 0e1d8f213h
+dd 0f195c393h
+dd 08830dd2ah
+dd 0d22d5292h
+dd 0a9a099d7h
+dd 0f433fbfeh
+dd 08568a642h
+dd 0528c168bh
+dd 0e5590a52h
+dd 00b008125h
+dd 06991e514h
+dd 05821dc52h
+dd 0a937f5abh
+dd 0095191d0h
+dd 04de7284ah
+dd 0be59c96dh
+dd 0248b723eh
+dd 08e485127h
+dd 0dbcf4371h
+dd 0e464a865h
+dd 0cf770545h
+dd 0bd7d3732h
+dd 0eb518593h
+dd 0c2d85873h
+dd 073e74679h
+dd 003a1a981h
+dd 065e11746h
+dd 05b539498h
+dd 0c4d6e72bh
+dd 0f49b6518h
+dd 060872c9bh
+dd 03d362109h
+dd 0431d484bh
+dd 07a3f956fh
+dd 083d5d9b7h
+dd 0a3e86402h
+dd 0767d8777h
+dd 0b3db41fch
+dd 0c945c62fh
+dd 0c80432dah
+dd 0ac43f57ch
+dd 0a6839eb9h
+dd 095babfbdh
+dd 0641d11cdh
+dd 0da5c0440h
+dd 0b2beff17h
+dd 0a43d508ch
+dd 054dc9b92h
+dd 0ab854bb9h
+dd 08c323130h
+dd 0bce9cd25h
+dd 0b17a3837h
+dd 025268b55h
+dd 0b53f71b1h
+dd 028e49c47h
+dd 0cc43e89dh
+dd 064179f1eh
+dd 0f904683ch
+dd 0a93ccaedh
+dd 049de7b51h
+dd 0d3abc3b2h
+dd 01af5abf9h
+dd 091cad926h
+dd 06e9ded52h
+dd 0237a3a08h
+dd 0107acc88h
+dd 0d844baa2h
+dd 048e1f640h
+dd 05be0dc02h
+dd 0912bf6c9h
+dd 0d3735877h
+dd 0a801197eh
+dd 0f801e6e4h
+dd 0c378ac3eh
+dd 03c38b596h
+dd 03d03733fh
+dd 05e617581h
+dd 0602f6345h
+dd 01253cea6h
+dd 0e01206c9h
+dd 002a681e4h
+dd 0edbdffc6h
+dd 067e23325h
+dd 054079abfh
+dd 0b55ddb5eh
+dd 0e637c2cch
+dd 013bbfdb1h
+dd 0aad47ec5h
+dd 099d9dc3eh
+dd 038a3eecbh
+dd 05e70c0d6h
+dd 0752f7dd7h
+dd 0edaac44dh
+dd 00cddc39ch
+dd 0170d218ah
+dd 0e20ceeefh
+dd 0196a885fh
+dd 0b2f25c35h
+dd 0507a2948h
+dd 05ceca381h
+dd 054f8704fh
+dd 06b45f498h
+dd 0963302d2h
+dd 03fee35dch
+dd 0e483bd08h
+dd 04d8bf74ah
+dd 08b8d7b95h
+dd 08d3b707dh
+dd 0d62ee27bh
+dd 0e302d454h
+dd 09f4e0f11h
+dd 0032616b1h
+dd 03a09cd1ch
+dd 0eb9cbac3h
+dd 0e2b74393h
+dd 0fab4f7f4h
+dd 01374db3dh
+dd 056f345f1h
+dd 0b43c98bdh
+dd 043b30a2dh
+dd 02c5038dbh
+dd 08dce67b3h
+dd 0a4f06870h
+dd 04c78343fh
+dd 0604e4f30h
+dd 06e85b6b2h
+dd 02d24c953h
+dd 0acfc4048h
+dd 0ab5a7a2eh
+dd 0aaa298e7h
+dd 0e841ba51h
+dd 0a7697972h
+dd 0273008eeh
+dd 0fc21a2e8h
+dd 012e6de72h
+dd 0d60976b2h
+dd 0e012fc92h
+dd 00ef0e08bh
+dd 0e23eef23h
+dd 02ed8e5ebh
+dd 01afb7ee2h
+dd 01e753cfbh
+dd 07dc96978h
+dd 057998849h
+dd 0f355f837h
+dd 0851d3867h
+dd 0461abdc9h
+dd 02351d7bah
+dd 0ec04c879h
+dd 0d0fea37bh
+dd 097025d28h
+dd 094b64252h
+dd 0cb42880fh
+dd 09a85622dh
+dd 074d82748h
+dd 0522eaac2h
+dd 0ebc4fcb7h
+dd 0ca666649h
+dd 0fed8394ch
+dd 0bae0f52eh
+dd 0a95f8340h
+dd 04719fbf5h
+dd 07c6834fdh
+dd 0f8a040fch
+dd 019a4e070h
+dd 0590c1146h
+dd 0ac8d5fb9h
+dd 00e540d91h
+dd 099791380h
+dd 0cc0fa871h
+dd 0b9ddfdabh
+dd 013c240a5h
+dd 051ca1f76h
+dd 0fd3f50bah
+dd 09ac30cd9h
+dd 07086eac8h
+dd 0a381ff5bh
+dd 0d5dee9dfh
+dd 0a4d1cbf3h
+dd 0acda2fd4h
+dd 07c239cf9h
+dd 08fcdac19h
+dd 0a1a0ec37h
+dd 040310089h
+dd 01895c661h
+dd 0911da135h
+dd 0c037a5a4h
+dd 09ed4f4d9h
+dd 0c509d855h
+dd 06c49d345h
+dd 0376080d5h
+dd 08dd9e968h
+dd 0e78d983dh
+dd 0ddda546ch
+dd 0b6b1027dh
+dd 003a5ad55h
+dd 0769df315h
+dd 0d314f15bh
+dd 0f4db9e39h
+dd 0fe87b4fch
+dd 072aa5eddh
+dd 0ce97bfbdh
+dd 0a6732e0ch
+dd 0d9b53b31h
+dd 0ab77b15fh
+dd 0a34ceef3h
+dd 072fdf92dh
+dd 0e9b1686eh
+dd 017e8d73bh
+dd 0c199210ah
+dd 0c51049e2h
+dd 04358177ch
+dd 031912cc9h
+dd 076c52fc9h
+dd 0cf710fd5h
+dd 03c1b553dh
+dd 0104c70bfh
+dd 031922dech
+dd 077e5eafdh
+dd 0c437e016h
+dd 0e94e2bd0h
+dd 06e0ee2a9h
+dd 0394815dch
+dd 06577e144h
+dd 01a6f86d9h
+dd 0c5f86c21h
+dd 053faef4ah
+dd 05d578cf1h
+dd 09064732dh
+dd 08ca94b3dh
+dd 054b6a5dah
+dd 0e6d25b23h
+dd 0773dffe8h
+dd 0f2e4dd47h
+dd 04c38849eh
+dd 00beee4f1h
+dd 064b48e6ch
+dd 0fd93999bh
+dd 0690f3854h
+dd 010346d17h
+dd 071a37ad3h
+dd 012b5af91h
+dd 0c2f1707dh
+dd 0cdef0a5ch
+dd 0a6d09327h
+dd 039d2db23h
+dd 0f73ac37fh
+dd 0865c0285h
+dd 0518356b0h
+dd 013d6e843h
+dd 0cd61d32dh
+dd 0179e4384h
+dd 0e83dd5a2h
+dd 0d2256b87h
+dd 0fd09a101h
+dd 0a541f563h
+dd 0bcfa9e86h
+dd 09aea838dh
+dd 01c17d085h
+dd 085dac259h
+dd 07370a9b5h
+dd 0213dc763h
+dd 0172b334ch
+dd 058f68635h
+dd 011657708h
+dd 0e1c007bfh
+dd 0c8d37067h
+dd 0c805597fh
+dd 06fd4f0e4h
+dd 03fcdf3dch
+dd 064500104h
+dd 094dcb4c0h
+dd 07e0d2d25h
+dd 02ab20bedh
+dd 0f6221a6dh
+dd 0509ad1d1h
+dd 01665cb75h
+dd 09da9d62eh
+dd 0319590edh
+dd 0a2a115deh
+dd 09b6b0882h
+dd 05b5de5b6h
+dd 0000628abh
+dd 02baaed56h
+dd 05f6a4a46h
+dd 03be3549dh
+dd 04a2dfeb4h
+dd 0f204f071h
+dd 05d211cbch
+dd 060a8023ah
+dd 097345967h
+dd 0e5ac4d6bh
+dd 0f3dafdc7h
+dd 005ceb16eh
+dd 08f914c60h
+dd 0d7ae7f05h
+dd 00afd6926h
+dd 0e15b42c4h
+dd 01b552418h
+dd 0b169b60dh
+dd 0603a7ff8h
+dd 0f0f643ach
+dd 0b1e41c34h
+dd 0be83fc6bh
+dd 0bf5f7dc5h
+dd 006ae73beh
+dd 05a1024e7h
+dd 0b2dde926h
+dd 03ade51c2h
+dd 0b6b39dbdh
+dd 0217c3f6ch
+dd 0a960bb7ch
+dd 02b1d4713h
+dd 0712a703ah
+dd 06c37a437h
+dd 0d0848e64h
+dd 065042e0ch
+dd 09fc81578h
+dd 03572fc0eh
+dd 0a3619efch
+dd 019d51f49h
+dd 09bce7bb7h
+dd 05df8daa5h
+dd 04ac76ce6h
+dd 0f59ee6fdh
+dd 0bcbc7983h
+dd 0a2429807h
+dd 0c3df1b23h
+dd 0de09476ah
+dd 02e3b2b44h
+dd 0c608df2fh
+dd 0fcd4d73ah
+dd 0c67676ebh
+dd 08954b8ddh
+dd 013589c58h
+dd 0ab1f8941h
+dd 0ff645521h
+dd 03a977440h
+dd 04fe60f9fh
+dd 05ad43098h
+dd 003dabe53h
+dd 012605146h
+dd 075126ff5h
+dd 083910603h
+dd 05fb285b1h
+dd 0ffc40c58h
+dd 0324b56e5h
+dd 06caf8c5fh
+dd 0fa9ecef3h
+dd 06626e867h
+dd 08f78d320h
+dd 066174e95h
+dd 064abdb97h
+dd 08978bdb7h
+dd 04210c873h
+dd 05d2abcc2h
+dd 0ffbace74h
+dd 09e300db8h
+dd 0898e49d9h
+dd 0a1a03cd0h
+dd 0c834a6c7h
+dd 0f57612d9h
+dd 04808fb67h
+dd 07e6d907ah
+dd 0b52f1970h
+dd 0ad86a018h
+dd 0701227c2h
+dd 022867a22h
+dd 0108c46b7h
+dd 0100d9123h
+dd 06f02521dh
+dd 07c212290h
+dd 0fb450ac6h
+dd 0c030f9b5h
+dd 0d71eba79h
+dd 0c7f93e69h
+dd 044fceaf7h
+dd 0f7dcf8b7h
+dd 082e31ad9h
+dd 0d769b04fh
+dd 07a5cb242h
+dd 035de1569h
+dd 068e0c83fh
+dd 09e3f6016h
+dd 0e3a452b9h
+dd 089ffb17eh
+dd 0d1101each
+dd 03b7f481fh
+dd 0770765f0h
+dd 00908fe69h
+dd 0ffa6d1beh
+dd 01855b692h
+dd 0511d7d36h
+dd 012611c66h
+dd 0f2604672h
+dd 0a7acf800h
+dd 03869bad2h
+dd 0c9fcd350h
+dd 04f74a119h
+dd 05169642dh
+dd 046cd888bh
+dd 07e7cd11eh
+dd 05197de67h
+dd 0ce779527h
+dd 0a924cfa4h
+dd 0b1c0f162h
+dd 06c8660cah
+dd 033b3f169h
+dd 001327058h
+dd 018ee340ah
+dd 050b0558ah
+dd 0e3e2253eh
+dd 0243a04b0h
+dd 0e1b9f563h
+dd 0d78af848h
+dd 0b643f733h
+dd 03dac667ch
+dd 038577e58h
+dd 056b52af0h
+dd 06cb2618eh
+dd 01f713021h
+dd 09ebfd376h
+dd 050f2e938h
+dd 07e427cb8h
+dd 0560fbdc5h
+dd 0b72d0354h
+dd 09271e9feh
+dd 032653a48h
+dd 0034ca7cbh
+dd 0f7b1e1dbh
+dd 02c799c91h
+dd 053543463h
+dd 0bcb09d1ch
+dd 0094902c3h
+dd 0316d229bh
+dd 02b842a7bh
+dd 05df1f935h
+dd 0164e6529h
+dd 01d3103f6h
+dd 03c859e32h
+dd 0a26105b7h
+dd 0c746501eh
+dd 0f7c64611h
+dd 0e64f14bch
+dd 0c3697802h
+dd 00ded774fh
+dd 0f9a8dbe0h
+dd 00d3e947eh
+dd 06c4ed56dh
+dd 05efcf5dch
+dd 0d52a682eh
+dd 0f97678e7h
+dd 0bf0319f5h
+dd 0d38034dfh
+dd 0bd7d7a35h
+dd 0c591261dh
+dd 03362f50dh
+dd 0be737e0fh
+dd 0d9b55306h
+dd 0a64a08b1h
+dd 024bd0616h
+dd 00440cef3h
+dd 0699dcaa2h
+dd 04770841ah
+dd 047632ae7h
+dd 0ed464b92h
+dd 031bf9caeh
+dd 0e852884eh
+dd 0ee41b8f0h
+dd 021166b60h
+dd 0c3e8b3d3h
+dd 0aa8b0268h
+dd 073b2f429h
+dd 0fe8ae641h
+dd 04aa89018h
+dd 0805f3cc0h
+dd 043df26eah
+dd 0ceb39691h
+dd 03ed61a25h
+dd 064246e06h
+dd 0072a46a7h
+dd 0805e1ac7h
+dd 05c119aafh
+dd 0bd974183h
+dd 08690ca81h
+dd 0b438c84ah
+dd 02b510476h
+dd 0f380ad88h
+dd 0d5210526h
+dd 07266fef9h
+dd 097af7dabh
+dd 0fa793e79h
+dd 0f019d219h
+dd 0dfd7d512h
+dd 09ac4b301h
+dd 04ec31b43h
+dd 0b8c78667h
+dd 09076be4dh
+dd 04c711080h
+dd 09cbfa0f7h
+dd 0a721ec25h
+dd 0a75e007ah
+dd 07e394513h
+dd 0a2fc27c8h
+dd 025fc371eh
+dd 0f5a5d71ah
+dd 063dd3677h
+dd 0963ae409h
+dd 0a7c5a042h
+dd 0d16e9ab4h
+dd 03428b1c2h
+dd 07bc7c0e7h
+dd 064aade5dh
+dd 0332828a0h
+dd 0d8bf07fdh
+dd 0ad620161h
+dd 0c0c2f338h
+dd 0a5ef05a0h
+dd 01a7b7d5bh
+dd 06d9a9ca0h
+dd 0d777623fh
+dd 0b18988efh
+dd 03855c3c7h
+dd 023268c4eh
+dd 0762998eeh
+dd 0ab7de70bh
+dd 0311be2b4h
+dd 0c6045bb3h
+dd 0009194f9h
+dd 0bb9369c2h
+dd 039b40de6h
+dd 086e963feh
+dd 021e47c01h
+dd 0b0334b2dh
+dd 01b7058feh
+dd 08224d3aah
+dd 0a2f0d428h
+dd 0aa1128b4h
+dd 0bb3f1b72h
+dd 095505473h
+dd 070045e97h
+dd 0e798a6c6h
+dd 0c1b83eb4h
+dd 06007f70bh
+dd 0fecea0a1h
+dd 09771ef09h
+dd 0c682b6beh
+dd 03245c37eh
+dd 0ff2f3093h
+dd 0118a6183h
+dd 004f7dd08h
+dd 066a54476h
+dd 03424eb1fh
+dd 0d809c71ah
+dd 02de6acebh
+dd 073677b66h
+dd 0fe92cd5dh
+dd 0685f21c0h
+dd 01e67c045h
+dd 090975e6bh
+dd 017af26e6h
+dd 0acc81da4h
+dd 0e2972b5dh
+dd 0e8a0c608h
+dd 0799c8f1fh
+dd 0e8616d42h
+dd 05df475f3h
+dd 057c91bc9h
+dd 0162837c1h
+dd 0ea6c7de3h
+dd 000dfe068h
+dd 07f7888d1h
+dd 03d83b927h
+dd 00d822ff5h
+dd 04970779fh
+dd 0e9d2beb6h
+dd 047bbb25dh
+dd 01bab0c6eh
+dd 0e9456421h
+dd 09dac471bh
+dd 06116f22bh
+dd 00cb81256h
+dd 0086f414dh
+dd 0b166477eh
+dd 0a0511ca8h
+dd 04e4b5373h
+dd 093b9c167h
+dd 0cc33a718h
+dd 032f22f0fh
+dd 06cf3fcbch
+dd 015aebcb6h
+dd 0729624efh
+dd 0238bca05h
+dd 0e255f45ah
+dd 0158ece62h
+dd 0534aea27h
+dd 06ae7b966h
+dd 07ca46c14h
+dd 02b20bf25h
+dd 0dcebbe7dh
+dd 08c6babe4h
+dd 0e365bc10h
+dd 0b9187988h
+dd 08fe04014h
+dd 0f3ef7a07h
+dd 01a58f952h
+dd 070bf9e5fh
+dd 09aba41d4h
+dd 0632a34deh
+dd 08fdab2b0h
+dd 005ca46d0h
+dd 0ae018deah
+dd 0f152ad35h
+dd 0c7dec38eh
+dd 0f23affedh
+dd 0357b4935h
+dd 0e74edbb3h
+dd 0761497fah
+dd 0356364d4h
+dd 0550e2c5fh
+dd 0e12c2fa4h
+dd 06a5d162dh
+dd 055f29ba0h
+dd 0403145b6h
+dd 042e29117h
+dd 027b4f5d7h
+dd 02e63e1feh
+dd 00e927e35h
+dd 0d5e1f1afh
+dd 0f3775c5bh
+dd 070695e28h
+dd 06fbe1e7eh
+dd 0c51f6763h
+dd 0e4ec8f9fh
+dd 0caeb7702h
+dd 034f903b3h
+dd 0951384f5h
+dd 014ed286ah
+dd 00b3fd88bh
+dd 09ab7cd3dh
+dd 07692311ah
+dd 04fa26288h
+dd 05c9a47f7h
+dd 0200865b2h
+dd 051a2ed51h
+dd 0f00fd038h
+dd 0c725a91dh
+dd 0b8c49daeh
+dd 0f9f966b0h
+dd 0426b24bch
+dd 09404b0dfh
+dd 0b90e0693h
+dd 06eb3aa56h
+dd 0c72918beh
+dd 02ec2386dh
+dd 02b8738e5h
+dd 09f2ac81dh
+dd 079b7bfdfh
+dd 0a915ff64h
+dd 037423286h
+dd 01e0e9c15h
+dd 035729ac7h
+dd 052d61015h
+dd 030ca0c4dh
+dd 0d8296175h
+dd 0fbaa418eh
+dd 08646d4f5h
+dd 0b58afe46h
+dd 04c0255bfh
+dd 0d93c3b5ah
+dd 070c81695h
+dd 036910209h
+dd 086f0f834h
+dd 0e712d474h
+dd 0fc8abbfch
+dd 0c9fdc065h
+dd 00da3be7bh
+dd 092c7a382h
+dd 01c765e61h
+dd 008d7777ah
+dd 08e0b72e5h
+dd 08a1683fch
+dd 0aaa0e629h
+dd 0f9bcbcd4h
+dd 0ec809b27h
+dd 061830345h
+dd 09ba85d53h
+dd 07fc880b2h
+dd 04de5c9cdh
+dd 0d06b29d4h
+dd 09784ae68h
+dd 02fcfe034h
+dd 0cbf0c986h
+dd 0f3dd8991h
+dd 0a6df0860h
+dd 02fca1028h
+dd 0ae00a1d9h
+dd 08b8e7d52h
+dd 014b75fefh
+dd 0de08dbc0h
+dd 05d759399h
+dd 0eb22081dh
+dd 0eb45dbe2h
+dd 0b47bbab6h
+dd 0eb3371cfh
+dd 0e83b15a4h
+dd 044e20262h
+dd 03a384722h
+dd 0e1e19660h
+dd 01719b917h
+dd 0732e0bb3h
+dd 054203db2h
+dd 0d126aef2h
+dd 06bbeebfeh
+dd 01f8b6fdah
+dd 0da8cf4d7h
+dd 0e4120a9ah
+dd 0b47cfd01h
+dd 0f379308bh
+dd 0fd3a48e7h
+dd 07b7edd9eh
+dd 05ee0dca0h
+dd 06d6be2c5h
+dd 09a199580h
+dd 09f8ea4d2h
+dd 09d4e650eh
+dd 087388858h
+dd 04b8fd8e8h
+dd 0037ddb5eh
+dd 04e7ce6e6h
+dd 0e3f6a73ah
+dd 02682f26dh
+dd 03989a3b5h
+dd 0f8d90c8fh
+dd 059bb1f4dh
+dd 081951d63h
+dd 0c723bffbh
+dd 0dc6d5636h
+dd 05c0cbd30h
+dd 040266ad2h
+dd 020ae6c40h
+dd 08a4b6b95h
+dd 048e38c61h
+dd 070c9fe5dh
+dd 0c41e558eh
+dd 0e9e31b3ah
+dd 0ff0e6a02h
+dd 0abee77b0h
+dd 0d9a8db8bh
+dd 00301d664h
+dd 0e8a49a71h
+dd 0a48a49f5h
+dd 0103ebeadh
+dd 00eb08f64h
+dd 084fe0f25h
+dd 01c862efch
+dd 03572003ch
+dd 08af8c00ch
+dd 0b1a5e81ah
+dd 0448bac40h
+dd 0b2d2ebbeh
+dd 04ba23070h
+dd 01381f91ch
+dd 061febb23h
+dd 09c626acah
+dd 0aa252ad0h
+dd 005c7c011h
+dd 053e7cabdh
+dd 08025abf7h
+dd 03b5ec825h
+dd 0e16c3939h
+dd 0363271d3h
+dd 0a13f7c74h
+dd 0601eb951h
+dd 02ffd482eh
+dd 0dc8b7fa1h
+dd 016b2038fh
+dd 024be9386h
+dd 0583addd7h
+dd 0e5e53070h
+dd 043ace0bfh
+dd 013add0dfh
+dd 00ba99bf1h
+dd 039d27337h
+dd 0474d1263h
+dd 0a77eccd9h
+dd 0df5c5d1ah
+dd 00f1aa305h
+dd 006e914f5h
+dd 07b26b13dh
+dd 00d7750f1h
+dd 0f602c171h
+dd 038965d5dh
+dd 097ce6c55h
+dd 06717c288h
+dd 02a576d6ch
+dd 02c026511h
+dd 0cc24f359h
+dd 0c61e8af0h
+dd 02f9b5ff6h
+dd 04545afdbh
+dd 0b9c5fc2bh
+dd 0c9bd8f20h
+dd 0e540d124h
+dd 0411ef33ch
+dd 0843b0ed4h
+dd 07a9bf3dch
+dd 05690b0d9h
+dd 03abd33afh
+dd 088039f88h
+dd 07fabe14ah
+dd 0bb5a2c6ch
+dd 0318f4aeah
+dd 01b62943ah
+dd 07942a20ch
+dd 04c08cad7h
+dd 07127be23h
+dd 072f40436h
+dd 03b4bcf8eh
+dd 03e8892dch
+dd 0b81742dbh
+dd 09fd9b04dh
+dd 0bc8ff649h
+dd 0f7890d79h
+dd 0b99aa95dh
+dd 0cead56e7h
+dd 097ff9cb0h
+dd 08f65e54dh
+dd 07d9e949eh
+dd 0cc043a0fh
+dd 085b7272dh
+dd 0a867d1e6h
+dd 0db1be56dh
+dd 0f8c97436h
+dd 05cc425a7h
+dd 063b1ae29h
+dd 046ad1968h
+dd 008498a86h
+dd 0974412f0h
+dd 0b953ce5bh
+dd 0c5554b30h
+dd 0f4395a11h
+dd 03c31a48fh
+dd 015b6ec00h
+dd 09d543cafh
+dd 0e7230f89h
+dd 00aecd620h
+dd 0bacf7129h
+dd 044376a6fh
+dd 097795bbfh
+dd 0ee6cc0e8h
+dd 0c003af3dh
+dd 05db5e254h
+dd 0f15f04fbh
+dd 037a52f28h
+dd 0b7159449h
+dd 00d67eb36h
+dd 0e3fc693fh
+dd 0d5cfcc14h
+dd 07636d481h
+dd 0570f01e8h
+dd 0f1b4dda2h
+dd 0894d1bf6h
+dd 010f29b94h
+dd 0da7fda55h
+dd 0991ea40dh
+dd 0494cc00ah
+dd 0b8eae0d3h
+dd 038e8ae74h
+dd 0a48e7cc1h
+dd 07fe80b1fh
+dd 021d71544h
+dd 058f0e4dfh
+dd 0ff6abbdah
+dd 015f684feh
+dd 03d7bc834h
+dd 0acab0f3eh
+dd 0071e6731h
+dd 045790559h
+dd 0296e1d23h
+dd 0c0525e89h
+dd 0b86a31efh
+dd 01c574c2bh
+dd 0e1e623beh
+dd 095b3caf0h
+dd 0689a0849h
+dd 0bb324e87h
+dd 07826dbd9h
+dd 0056a4191h
+dd 036bc83aah
+dd 05e923613h
+dd 005b0fe06h
+dd 0b668d48ah
+dd 06c1d78f5h
+dd 04fe2589bh
+dd 0b66ca5b4h
+dd 0dcde65d1h
+dd 023c4fd1fh
+dd 012d36e94h
+dd 0b8214b43h
+dd 03af4bc24h
+dd 09a58aa03h
+dd 03c101923h
+dd 0156f4590h
+dd 0e3e94b8ah
+dd 0138f72c4h
+dd 0a4806769h
+dd 03e612ba3h
+dd 0072a833bh
+dd 0b8b2b355h
+dd 0d3fd7186h
+dd 06c82cb00h
+dd 0c7819321h
+dd 00a885a18h
+dd 0aa99d580h
+dd 09094d978h
+dd 014ba3295h
+dd 04c789b11h
+dd 0649ee8c7h
+dd 07da4039ah
+dd 071473b2bh
+dd 023263e74h
+dd 0fdd7c847h
+dd 0502dd819h
+dd 09acace9bh
+dd 06411873eh
+dd 019d0ef9dh
+dd 0355f199fh
+dd 0d2b0674dh
+dd 009a6d975h
+dd 0eac04924h
+dd 08bd1d7dah
+dd 0754fed4eh
+dd 040cb055fh
+dd 04695c309h
+dd 048806367h
+dd 06d14c0b3h
+dd 0b0166c24h
+dd 0b2564d4bh
+dd 0a37ea0e8h
+dd 0e7230724h
+dd 0214e8a21h
+dd 09050869ah
+dd 0c5219557h
+dd 081655cf1h
+dd 087d2e08ch
+dd 0bc5ad16fh
+dd 04c412f08h
+dd 01bb894f0h
+dd 09eb23dadh
+dd 0e8aaed14h
+dd 0c8d2a017h
+dd 0de2eecedh
+dd 0d1821743h
+dd 07b07d454h
+dd 0386ce85ah
+dd 038219aa2h
+dd 04a32bbe7h
+dd 082495030h
+dd 04b3d2764h
+dd 099a9ac89h
+dd 0c646a55fh
+dd 0e62e65a2h
+dd 0f3024c30h
+dd 013be3a0dh
+dd 001a35b25h
+dd 037771fb8h
+dd 00f213049h
+dd 00d5bc241h
+dd 01295c89ch
+dd 01a9c8a38h
+dd 08528d7fbh
+dd 0b3331244h
+dd 0efc7315eh
+dd 03eb8ceaeh
+dd 0894d60ddh
+dd 0c6bb2422h
+dd 0b1c1c632h
+dd 0aaf7d661h
+dd 08c473e6bh
+dd 037de19e3h
+dd 03abac886h
+dd 07462affdh
+dd 0fe3acad2h
+dd 0470d4c4fh
+dd 097207dabh
+dd 0393014ffh
+dd 0c8eef298h
+dd 07723117ch
+dd 0c689fce3h
+dd 056159993h
+dd 08fdfe314h
+dd 032459625h
+dd 0cfea5847h
+dd 03531eb76h
+dd 0caa4c662h
+dd 01dd5b795h
+dd 0a0b0b174h
+dd 08e018850h
+dd 0830297c1h
+dd 02be5443dh
+dd 0efd240e8h
+dd 0e2991d8dh
+dd 079079503h
+dd 0da7e09e1h
+dd 0b024526ch
+dd 037c20140h
+dd 00938d62eh
+dd 01117f3a2h
+dd 04ddb16d8h
+dd 0f392d164h
+dd 0ebfd6f77h
+dd 0481cb6cbh
+dd 06c67e8b8h
+dd 08f393d28h
+dd 0084505b2h
+dd 0bf08ebcdh
+dd 05be75c58h
+dd 0de0f412fh
+dd 0edf87837h
+dd 0c0332dfdh
+dd 06c1e7797h
+dd 0b8f398feh
+dd 0a6cb0ebbh
+dd 0ff789960h
+dd 06269fea7h
+dd 094795e7bh
+dd 0d5f78a48h
+dd 0ae8d4f74h
+dd 0021ffdbbh
+dd 094fa27d2h
+dd 0b0e697a8h
+dd 0848f56cdh
+dd 0c9672613h
+dd 0996f4294h
+dd 059996107h
+dd 07583784dh
+dd 043418117h
+dd 0809db3c1h
+dd 06c0d8748h
+dd 09f5da0f3h
+dd 0fbfe90beh
+dd 061399d44h
+dd 0be041b37h
+dd 04cb674b6h
+dd 02b65a515h
+dd 0830375fch
+dd 0fd172870h
+dd 02ed0bf39h
+dd 0d3df9c95h
+dd 0c3bfdb3eh
+dd 0f567b15fh
+dd 00e16a9c6h
+dd 00a2f4017h
+dd 085980b93h
+dd 088ebb05fh
+dd 099af6ecch
+dd 012b20bf7h
+dd 027a3ec89h
+dd 06eee2d41h
+dd 050bddbc4h
+dd 0902a8cfah
+dd 0a1b4ea02h
+dd 038a60c15h
+dd 04e7a343fh
+dd 0c9db1e92h
+dd 05de000f9h
+dd 0b4f67295h
+dd 0765a79eah
+dd 099783de8h
+dd 059278541h
+dd 0023215b6h
+dd 00cad38b3h
+dd 0e493175ch
+dd 05ca25747h
+dd 078b0f291h
+dd 05b7ee660h
+dd 04a0e4111h
+dd 019e89ea6h
+dd 060db49c5h
+dd 06de5d8dch
+dd 07348adbah
+dd 0969bda43h
+dd 03136fe7ch
+dd 035034b07h
+dd 0c585e1f6h
+dd 080df2919h
+dd 0df963930h
+dd 0c46f7ab1h
+dd 0c112e29ch
+dd 0e3064129h
+dd 0bd9a40cfh
+dd 0dff8fcc4h
+dd 01a591418h
+dd 03bd59ec8h
+dd 007fa54cah
+dd 0e7d29a11h
+dd 05d193a5ch
+dd 0aed03f2ch
+dd 07636d072h
+dd 000fc71dbh
+dd 0d81f4c6ah
+dd 0e717c1d7h
+dd 0c1d55110h
+dd 0ed1499b5h
+dd 02393fafah
+dd 0b7cb6562h
+dd 0dea6b454h
+dd 05cf172dah
+dd 058ff08f9h
+dd 06f909505h
+dd 03aed1641h
+dd 08e24f24eh
+dd 068d3c4e1h
+dd 092f02fd9h
+dd 0a4c1bd9dh
+dd 0eeed5ec5h
+dd 04d3bfd6ah
+dd 0a17f30bch
+dd 09858da8ah
+dd 0c847986ch
+dd 030acf5f2h
+dd 04f321c9bh
+dd 0b00eee5fh
+dd 089a47c4bh
+dd 0c2dbddf0h
+dd 0658d246dh
+dd 06d91e7b5h
+dd 0e01d3a3eh
+dd 0db69f74ah
+dd 02337adffh
+dd 05c36e05bh
+dd 0ddde1508h
+dd 0c8da4c48h
+dd 0440e6ad7h
+dd 0a0cfbbcdh
+dd 0393a1866h
+dd 0b930a575h
+dd 0fcf45383h
+dd 0c1cd1fc5h
+dd 0d82de156h
+dd 025ae6e1bh
+dd 0d5fb786fh
+dd 008ab8202h
+dd 060136d77h
+dd 0bf6d2383h
+dd 01107a19fh
+dd 063713ba7h
+dd 0e3bd5cdbh
+dd 04cff1e66h
+dd 0733ac20bh
+dd 0e598d24fh
+dd 0c6023884h
+dd 0f7cfd09dh
+dd 007ffc5ech
+dd 0eebdff5dh
+dd 0b396d77bh
+dd 0136e4a80h
+dd 0a6f8ad1bh
+dd 09b09a6a6h
+dd 057078f65h
+dd 09bbe4042h
+dd 066d673b9h
+dd 0530fe926h
+dd 08026039dh
+dd 0f3602e33h
+dd 0f5370e27h
+dd 0babc3f3fh
+dd 0837a5edbh
+dd 09e25c68bh
+dd 02da83ebch
+dd 03772dd07h
+dd 0c19267bdh
+dd 09796217ch
+dd 08b11e0a2h
+dd 05fb7bfe3h
+dd 07b6636ebh
+dd 0506054b6h
+dd 0cc4e50ffh
+dd 012b3c352h
+dd 08bc05921h
+dd 06be7e7edh
+dd 00a8c6605h
+dd 0166eb315h
+dd 004e9781eh
+dd 0a820828dh
+dd 0f737af0ah
+dd 0ce43552fh
+dd 010bb821fh
+dd 05b74d061h
+dd 0f1187d24h
+dd 08e31406fh
+dd 082970562h
+dd 07e604557h
+dd 082a4da2fh
+dd 00365f04dh
+dd 0ea0ef6c7h
+dd 08f4b5b7ah
+dd 0cdc51fdfh
+dd 057c04e16h
+dd 0506309bdh
+dd 0884262eeh
+dd 0eb6906adh
+dd 035906804h
+dd 0d957d111h
+dd 078c90760h
+dd 085dc4280h
+dd 0dd706443h
+dd 0909b0f8eh
+dd 0a47f09f2h
+dd 009aa5d7eh
+dd 0d1ff2e47h
+dd 0ff3e732eh
+dd 00a86ee0bh
+dd 03206b2d7h
+dd 088b56595h
+dd 0296ad98ah
+dd 08b84b683h
+dd 08987a33ah
+dd 0aceb3b47h
+dd 015bafa71h
+dd 07271881ah
+dd 02568922fh
+dd 02ede1233h
+dd 0620faae7h
+dd 013af9e1fh
+dd 0a05d7477h
+dd 0392b355eh
+dd 0de75c2fbh
+dd 0e9855e8ah
+dd 0f13d8399h
+dd 0d952064ch
+dd 0daa3b504h
+dd 013e19712h
+dd 07eca0c9dh
+dd 0c65a41d4h
+dd 0a6ea96f7h
+dd 0209ac2b2h
+dd 01c01e8ddh
+dd 019b12eaah
+dd 0b2fc5701h
+dd 0fd6a2879h
+dd 047c567dah
+dd 0cd36abcfh
+dd 0fdcbf124h
+dd 04693892eh
+dd 03d213aa0h
+dd 010a253aeh
+dd 0dc09a7fah
+dd 0ab78b6eah
+dd 00c3e8000h
+dd 01ff64832h
+dd 0ae5914a4h
+dd 00745c71ah
+dd 007630223h
+dd 0b93b1039h
+dd 0a6821f01h
+dd 056e5a806h
+dd 0af312723h
+dd 01c476504h
+dd 0b800a842h
+dd 0908d787ah
+dd 07f009ab3h
+dd 094ad74beh
+dd 0ed115ad8h
+dd 0106cc71dh
+dd 09be24622h
+dd 0068839a6h
+dd 0d341dc70h
+dd 08030ccaeh
+dd 08d5588c3h
+dd 0e87d4fb4h
+dd 0fae3d007h
+dd 02601edc0h
+dd 0351a8214h
+dd 00d3d1649h
+dd 01edcce86h
+dd 0896549f4h
+dd 074ea228eh
+dd 014c441deh
+dd 0d332537dh
+dd 0d0323578h
+dd 0a9757d26h
+dd 0a0825a3eh
+dd 088e32ff1h
+dd 04b5e3e21h
+dd 07bbc9480h
+dd 0ffccb5a8h
+dd 02ad1c8deh
+dd 0e2b8f1dbh
+dd 029194ebbh
+dd 0af45ba2dh
+dd 0055378d4h
+dd 0c424c38dh
+dd 0d5b1ccd3h
+dd 0afcd2934h
+dd 0f5730090h
+dd 0e606bc31h
+dd 036a32932h
+dd 098309bb0h
+dd 031990472h
+dd 01af60129h
+dd 03db737c7h
+dd 06ea3eab7h
+dd 0303aab67h
+dd 0f3275ba7h
+dd 0ef650265h
+dd 0ca6103c6h
+dd 0d5650e8dh
+dd 0ac8ef0f1h
+dd 0260646deh
+dd 08a2d2b91h
+dd 0ea96e661h
+dd 027c0faf7h
+dd 0e66031d5h
+dd 0d4c618abh
+dd 066ab5fafh
+dd 0ef410ecdh
+dd 03d561d5bh
+dd 08759ae71h
+dd 0a0d266d2h
+dd 0426ca15ah
+dd 0d459a26fh
+dd 0d4d0f8c1h
+dd 029dfe43dh
+dd 0740d78d9h
+dd 0aeb22067h
+dd 099843397h
+dd 02d0b0b44h
+dd 0c9c6caddh
+dd 0cd2dff55h
+dd 0461e5ff6h
+dd 0381408feh
+dd 0add887feh
+dd 07c3c82f6h
+dd 0ae745a4bh
+dd 0669dd781h
+dd 0c5f43384h
+dd 0b9001abdh
+dd 07599e403h
+dd 065090f7dh
+dd 0fc775907h
+dd 07bafb3c1h
+dd 0d19cfdcch
+dd 0e7e73757h
+dd 0f1db749ah
+dd 093fce453h
+dd 0267c7c73h
+dd 0dcfd5197h
+dd 010ace881h
+dd 085f802adh
+dd 00ed03e28h
+dd 0e2cb81d0h
+dd 0e1cf6d55h
+dd 0ab784183h
+dd 0681577c6h
+dd 04338a94ch
+dd 099e8c8fah
+dd 0a1426875h
+dd 0e11c449bh
+dd 008f53efah
+dd 06f8263f3h
+dd 05a1d18b1h
+dd 08eb3bf50h
+dd 07ec9b47eh
+dd 0d3ffe489h
+dd 0e97ad39dh
+dd 03a7581e7h
+dd 0ee96de5bh
+dd 0f258a209h
+dd 01775fd56h
+dd 0747fb6c1h
+dd 0c36f54bch
+dd 0790104f2h
+dd 0aef55fefh
+dd 0b486e596h
+dd 0a1bf4252h
+dd 069ca2a26h
+dd 05819f33bh
+dd 03aa33f94h
+dd 077f38111h
+dd 08ea7ae9ch
+dd 0c28d7a14h
+dd 040993d40h
+dd 0fa09270ch
+dd 0bfdc62aeh
+dd 0d8f9cec4h
+dd 02748d687h
+dd 04d9546cdh
+dd 00bb5df38h
+dd 0cf1a83aeh
+dd 0d685149ch
+dd 032ffce39h
+dd 0467c2636h
+dd 05978051fh
+dd 00a29f36ch
+dd 013109904h
+dd 065fec5cdh
+dd 0fd9073e4h
+dd 012b4a361h
+dd 07114dc30h
+dd 03ecc3b50h
+dd 0f38bdeach
+dd 03da8bf19h
+dd 09ca5790eh
+dd 0f6f795c6h
+dd 0fb15ea1fh
+dd 07a7bcd85h
+dd 0d0261fe3h
+dd 04e57e154h
+dd 083e5df99h
+dd 0571588e0h
+dd 0eafbe0b9h
+dd 0a4bb3263h
+dd 0f0fa0c53h
+dd 0fea192dfh
+dd 07c1c6d32h
+dd 0e94e29fah
+dd 0c7ce5982h
+dd 061609351h
+dd 02c05afc3h
+dd 0fa2c61c8h
+dd 04d95abc3h
+dd 09ccc36a2h
+dd 0a05a49ech
+dd 021dceb11h
+dd 0f30441f7h
+dd 01756eecah
+dd 067509e3ch
+dd 06aa720dfh
+dd 01090ddd4h
+dd 061d73427h
+dd 0e2ed01f8h
+dd 0ce4d75bfh
+dd 0201089f8h
+dd 0ff5ff4b2h
+dd 053b6cc91h
+dd 0ff38a037h
+dd 051734abah
+dd 09b098190h
+dd 0fa7ebc8fh
+dd 0daa15e89h
+dd 024769e24h
+dd 0a3f9b6f3h
+dd 0afc64c36h
+dd 09a099690h
+dd 04d58e6d0h
+dd 0c761c332h
+dd 0bbb10fdbh
+dd 071aa5b15h
+dd 064a69bd5h
+dd 0af103a9fh
+dd 03b1d53f0h
+dd 094b202eah
+dd 0cda3983bh
+dd 0230e4c57h
+dd 03142c4bch
+dd 0c0589715h
+dd 092453348h
+dd 07121c675h
+dd 0cfa844c6h
+dd 06da08d0fh
+dd 0611b5a9ch
+dd 07a14153ah
+dd 0d94ddadah
+dd 0653cc20ch
+dd 07215398fh
+dd 0e5cdc031h
+dd 0e83e4dd1h
+dd 0faaf4e70h
+dd 09be2657ch
+dd 0c039d511h
+dd 0870957d8h
+dd 03075b048h
+dd 0ee086d00h
+dd 0eff6e7b5h
+dd 006208fe5h
+dd 0672c045ch
+dd 09fe6eb97h
+dd 00c90f69fh
+dd 0853c5ff6h
+dd 05c28285ch
+dd 088cfae6dh
+dd 06b8f9289h
+dd 016c89262h
+dd 061901c71h
+dd 0d47609b1h
+dd 05dd1c0cfh
+dd 0ead02b64h
+dd 056fd2b86h
+dd 02220ede9h
+dd 05ba868b8h
+dd 0a15893cfh
+dd 01ab4d12eh
+dd 05dc98e7dh
+dd 06aab1358h
+dd 0731f2e54h
+dd 0b529d180h
+dd 0d1b5a67fh
+dd 0845d0fb9h
+dd 0ff7980e7h
+dd 0cdc0b564h
+dd 0d00dd9edh
+dd 0a2d1c19bh
+dd 0259ba76eh
+dd 0358a76c3h
+dd 04ed7d3beh
+dd 0fab9ddd6h
+dd 0a789e354h
+dd 049a7bd15h
+dd 02eb29862h
+dd 05b638615h
+dd 03acf3274h
+dd 047752ba6h
+dd 04ab899aeh
+dd 0578267a4h
+dd 0b97b8ca0h
+dd 09b64062fh
+dd 0d6feab5ah
+dd 0be112fcfh
+dd 01cc3e6ech
+dd 031f2a5e0h
+dd 06f9ea759h
+dd 0871efa87h
+dd 0a2b2d59bh
+dd 01c6c4343h
+dd 0a047bfc9h
+dd 0c81e2b75h
+dd 00c2b612eh
+dd 0b3bc67d6h
+dd 0174781b8h
+dd 038c061e0h
+dd 058c88c20h
+dd 08634c60dh
+dd 008dddd9dh
+dd 0834672f8h
+dd 0079d7828h
+dd 00e71f26ah
+dd 082d4f63eh
+dd 0ea42041eh
+dd 0efd0ebe4h
+dd 088a7a88eh
+dd 0bd2396eeh
+dd 02984ebc9h
+dd 041a82418h
+dd 09d0217d0h
+dd 0fd3d25f0h
+dd 0248bc791h
+dd 05d62517fh
+dd 050541b10h
+dd 05ff0790fh
+dd 0ecce836ah
+dd 007d40b33h
+dd 0e351fa95h
+dd 0623a132ch
+dd 00e83b2a4h
+dd 0fd351bb9h
+dd 0b7754886h
+dd 0c798ebe2h
+dd 01f7db797h
+dd 0564fb51fh
+dd 0038fc814h
+dd 0f9027968h
+dd 0b987c6b9h
+dd 021836916h
+dd 08e974666h
+dd 0fac82bbah
+dd 04ec8ed5bh
+dd 01e28dc1ah
+dd 0023f4d91h
+dd 0bcdf1e94h
+dd 062316b55h
+dd 0d15d4876h
+dd 06e719ab9h
+dd 0e69438d7h
+dd 0e5802524h
+dd 089b6db6ch
+dd 0bfff5162h
+dd 0671cfcc1h
+dd 013054848h
+dd 061bb71e6h
+dd 0b12e2da9h
+dd 00cf45d2dh
+dd 0a4252ad8h
+dd 0517fbfc4h
+dd 05cb3d75bh
+dd 02f0f8624h
+dd 050b13dfch
+dd 047140af5h
+dd 016316c31h
+dd 09b8af31ch
+dd 01f992b25h
+dd 0459ad7f2h
+dd 0eb055921h
+dd 0b84d851dh
+dd 0499c1d96h
+dd 03fc94278h
+dd 0e25de464h
+dd 0cbf0d552h
+dd 01e4c3805h
+dd 0b8bb6206h
+dd 000f1d01fh
+dd 04f6e9acah
+dd 0a98e2731h
+dd 0ef4cffb3h
+dd 0c12c61ddh
+dd 0c7806d61h
+dd 0e503cd35h
+dd 038f5aedfh
+dd 077493220h
+dd 0ba2a22b6h
+dd 033ea4fb3h
+dd 0941ae0e5h
+dd 0caecfd52h
+dd 068f742c7h
+dd 04d83d1ech
+dd 01a78f5dfh
+dd 016ade6ebh
+dd 0a4304c71h
+dd 0675466deh
+dd 01a82f94ch
+dd 09465601bh
+dd 09558b4cah
+dd 0e5140c22h
+dd 09827b28dh
+dd 0f5320501h
+dd 097dc7770h
+dd 0e0a21337h
+dd 08db358d5h
+dd 0a8243d87h
+dd 01d072b6ch
+dd 056e05e61h
+dd 02e6572c9h
+dd 050a96b03h
+dd 0b8fc16adh
+dd 079a6bfb2h
+dd 037b464b7h
+dd 05348e078h
+dd 07d33396ah
+dd 0b721a361h
+dd 068a4d358h
+dd 094689d7bh
+dd 09fb33093h
+dd 0efb382deh
+dd 09129dd9ch
+dd 0e3920855h
+dd 0fa92be47h
+dd 0115f218bh
+dd 0d32a2f02h
+dd 090e2398bh
+dd 089848a7dh
+dd 0671196c7h
+dd 079c1ed8bh
+dd 0ef690082h
+dd 0e296daf6h
+dd 0b51066b8h
+dd 0a8dc41f9h
+dd 0897adde2h
+dd 0ba375d45h
+dd 0c92fac97h
+dd 0bae69e7ch
+dd 0f1e0b940h
+dd 0ad73b4c1h
+dd 0daf3f4eeh
+dd 0f780f1c0h
+dd 0eded5b4fh
+dd 001852a8ah
+dd 00d25f578h
+dd 060cf6617h
+dd 0c1ca2a68h
+dd 084dbbe76h
+dd 0be6a3d9ch
+dd 0be2b4a2fh
+dd 00790376ch
+dd 0c3675ad0h
+dd 0e8a8260eh
+dd 000705944h
+dd 0225de395h
+dd 074469131h
+dd 026fdfe16h
+dd 09009fd83h
+dd 0dfbe5906h
+dd 0368c1ef7h
+dd 08cc4d6d0h
+dd 0278aaceeh
+dd 0ed446ad0h
+dd 052429563h
+dd 0a0c0d43ch
+dd 011e0a53eh
+dd 0ca9d577ah
+dd 0235235c5h
+dd 0e00cf88bh
+dd 0567788a3h
+dd 0327e9e42h
+dd 02b648c51h
+dd 0645d8f5fh
+dd 0b95bf2fch
+dd 056d1dd3fh
+dd 01b649c07h
+dd 0c321af35h
+dd 05d1b8410h
+dd 06b2078f9h
+dd 0988ee98eh
+dd 04899674ah
+dd 013ce7842h
+dd 044187e68h
+dd 0e5058984h
+dd 0f8e28088h
+dd 01bfc3336h
+dd 05c9ee765h
+dd 06a18322fh
+dd 0bf84dd64h
+dd 03ec00a0bh
+dd 058860522h
+dd 01ae72b9eh
+dd 08fb91ce7h
+dd 06bc3cc11h
+dd 0a94469beh
+dd 09062a5d3h
+dd 0814c3081h
+dd 00cf792d5h
+dd 0af44cb63h
+dd 0ef9599deh
+dd 046eed18fh
+dd 08b2b953fh
+dd 0029fa265h
+dd 08e6b0837h
+dd 0bcf02cach
+dd 05fdb7c5ah
+dd 075feb8e4h
+dd 0b31da748h
+dd 0fc7648c7h
+dd 0c2880c03h
+dd 03371a49eh
+dd 0c8f814aah
+dd 03fd730f2h
+dd 056d589b3h
+dd 0684b2cebh
+dd 0c364e9d5h
+dd 00f555bf4h
+dd 083375bbch
+dd 0a7059337h
+dd 062c17955h
+dd 0374033edh
+dd 05fee820fh
+dd 068923d5eh
+dd 04c14ef53h
+dd 003a20037h
+dd 094f47932h
+dd 057df1d2bh
+dd 064a73efah
+dd 073074041h
+dd 063f950f5h
+dd 020b72b24h
+dd 0a9870bb6h
+dd 0a1272627h
+dd 08e9b6078h
+dd 066979545h
+dd 0dfcc33d4h
+dd 016bf6ae7h
+dd 0a06b2dach
+dd 071795dcch
+dd 01304515bh
+dd 0d427418ch
+dd 03daaefd4h
+dd 01e09fac8h
+dd 0c2d55d7bh
+dd 0e9bb5465h
+dd 0c1ed657ah
+dd 0691cb57fh
+dd 0510c27b2h
+dd 00365e6e5h
+dd 0f081d7cdh
+dd 0ad169c0ah
+dd 0ac73e860h
+dd 09fba9b1dh
+dd 03b7aa74ah
+dd 04e1ec4aeh
+dd 0b12f7ef7h
+dd 02e0eff85h
+dd 0e0b113e3h
+dd 0344c52cfh
+dd 0828505a1h
+dd 0ea63f1f0h
+dd 0ffebe718h
+dd 037f81b43h
+dd 0f7d4af57h
+dd 0dec4220bh
+dd 01181aad7h
+dd 09b007a77h
+dd 094bbb0c2h
+dd 0e325c9e1h
+dd 0aa056d19h
+dd 089e75127h
+dd 0d4cf1074h
+dd 05fa61b96h
+dd 0c8393268h
+dd 05b85c1b8h
+dd 0bda872f2h
+dd 07b614cc4h
+dd 08c93903eh
+dd 0a8767ea3h
+dd 01d356ecah
+dd 0bd32e6f6h
+dd 0697f3e6ah
+dd 053ce936ch
+dd 048fe441ch
+dd 043909cd5h
+dd 00cca20c2h
+dd 0636edf99h
+dd 05f81159fh
+dd 086385e4dh
+dd 0b514df6bh
+dd 029359b49h
+dd 0c6c9eafeh
+dd 023a0a942h
+dd 067a7d0b9h
+dd 09c00b2e4h
+dd 05a6a2c7ch
+dd 0e0faff4bh
+dd 0ad51ab92h
+dd 0ef780159h
+dd 0f24f3119h
+dd 0d3d9d3c7h
+dd 08cfa5d3fh
+dd 00071fe59h
+dd 0ed12c724h
+dd 0cc45b69ah
+dd 077f13f16h
+dd 0f4ee1bb6h
+dd 055440642h
+dd 0c7013f84h
+dd 0d49ddc6fh
+dd 0803d6f38h
+dd 0699e8f5eh
+dd 0d5434553h
+dd 06aebf057h
+dd 0fab49263h
+dd 089fa5375h
+dd 02e264dbdh
+dd 02ccf2cffh
+dd 02c058416h
+dd 018c54333h
+dd 04a191ecdh
+dd 035db4a02h
+dd 0378eb046h
+dd 085a2ba45h
+dd 0426f140dh
+dd 09036506fh
+dd 06eff46c3h
+dd 09ad41e07h
+dd 045299bdeh
+dd 0afac2ae4h
+dd 046da7df2h
+dd 0ad9d27f0h
+dd 06ca668ebh
+dd 064727949h
+dd 0587f6fc0h
+dd 08ac65dd7h
+dd 0f1822bbeh
+dd 0e2542b9bh
+dd 08a6f2dedh
+dd 0603dacfdh
+dd 08052653ah
+dd 0c72df97fh
+dd 0f5731bafh
+dd 025e6946ah
+dd 0f112edd9h
+dd 08d3709aah
+dd 089914834h
+dd 02f048913h
+dd 0f302e74eh
+dd 0dff07157h
+dd 0180955b8h
+dd 04245ec75h
+dd 0cf47cdb5h
+dd 0cbb8ca46h
+dd 0ee2176abh
+dd 077a2ee9ch
+dd 08ef899f0h
+dd 030c9a20ch
+dd 07ed8349fh
+dd 0ae79f039h
+dd 024392c67h
+dd 0cf9d6034h
+dd 052ee0d76h
+dd 0425b4d06h
+dd 0afa0d9eeh
+dd 02e6b3160h
+dd 086cf3237h
+dd 0e78d6cd5h
+dd 00beaa809h
+dd 08d14cb1dh
+dd 0dd35d983h
+dd 03b871324h
+dd 0af8cb318h
+dd 0bf38094eh
+dd 0fa9a4f25h
+dd 0bccb05dbh
+dd 0763d7855h
+dd 00ce1d284h
+dd 0060e6af0h
+dd 08b3d40dch
+dd 0b1a44d15h
+dd 07ec5ebf4h
+dd 003bd46f9h
+dd 072296f33h
+dd 040d6a350h
+dd 0e6769daeh
+dd 0e2c0271bh
+dd 0c9a35d49h
+dd 07ace2163h
+dd 0df374251h
+dd 0ebdf0ec4h
+dd 06d473a55h
+dd 0321d59a9h
+dd 0ce13d98ah
+dd 05abe9137h
+dd 0faf4ada1h
+dd 055bc1929h
+dd 016cb51e2h
+dd 0e0e1d9cdh
+dd 07f041ee3h
+dd 0b1b81307h
+dd 0bf13051ch
+dd 0d262c401h
+dd 0bb9575f5h
+dd 0adfb1fb3h
+dd 0bf7d49c8h
+dd 0e680286dh
+dd 029ef971eh
+dd 0bb3e6dd0h
+dd 087de26b8h
+dd 04a1bef92h
+dd 0fe7acdeeh
+dd 0c518900ch
+dd 02fdc8219h
+dd 05e0dccc1h
+dd 003591e42h
+dd 02de98fcah
+dd 06a2d85d9h
+dd 088bc07d9h
+dd 02bd6bed6h
+dd 0062271a6h
+dd 0bed49b50h
+dd 08d0d3e73h
+dd 0b2451597h
+dd 0d265b297h
+dd 0708de16bh
+dd 0471e1a7ah
+dd 0c657b2d8h
+dd 0af7bfe2fh
+dd 0247d00cbh
+dd 028a0b245h
+dd 025e670a5h
+dd 01569389fh
+dd 09611987ah
+dd 0a3e95e1eh
+dd 06b0bb8a9h
+dd 0cde0f69bh
+dd 08e61ea01h
+dd 0cbc85cb9h
+dd 0cf897780h
+dd 024a1dceeh
+dd 0c2d53f41h
+dd 0ff609841h
+dd 03e68322ch
+dd 05ac9d3e5h
+dd 0b47921f4h
+dd 0511e385fh
+dd 04422877dh
+dd 0421c74b9h
+dd 0b31637cch
+dd 06b6dfb69h
+dd 00ad750b1h
+dd 0670d204ch
+dd 0f80eba72h
+dd 0c36d0ad5h
+dd 0e019b6eeh
+dd 06862dbe6h
+dd 00f6c8e96h
+dd 0c799428ch
+dd 0fbf829e1h
+dd 063cdd510h
+dd 0a7721ec0h
+dd 0c73f06c6h
+dd 076c0acadh
+dd 0755028ech
+dd 03b743875h
+dd 09ffcf2fah
+dd 02a9dbf1ah
+dd 05af63e8fh
+dd 0c6fabf1dh
+dd 05cce5602h
+dd 05d3c1dcah
+dd 098adbeddh
+dd 08e6a297fh
+dd 0b3b67368h
+dd 0299267dch
+dd 0528ca51ch
+dd 096119fd1h
+dd 0aae4a9ddh
+dd 0537fee3dh
+dd 0f50c2cf9h
+dd 0615211c8h
+dd 0501086eeh
+dd 0d80d5a5bh
+dd 0bda474bch
+dd 06c7432dbh
+dd 04f998db5h
+dd 0da6cde79h
+dd 060fc7570h
+dd 00da88c9ah
+dd 0652c2a79h
+dd 06fc986fah
+dd 04d0bd8d5h
+dd 0db1431d5h
+dd 0ab846141h
+dd 056cfaf37h
+dd 082269bfch
+dd 0af759968h
+dd 03c6352bch
+dd 0e239bca6h
+dd 0ed04968fh
+dd 0fd0070bfh
+dd 0d9b1fe34h
+dd 08ca94289h
+dd 07685adffh
+dd 04d713156h
+dd 0c58f8e6fh
+dd 0a70d9902h
+dd 04a1c39b6h
+dd 003619c80h
+dd 0881024bdh
+dd 02e627439h
+dd 0f0d78254h
+dd 005f52f5ch
+dd 0e83031bch
+dd 08e563cd8h
+dd 06cefa522h
+dd 06fe0af2ah
+dd 05a2a6aaah
+dd 0eab8801fh
+dd 02e76b1bdh
+dd 07a1e1ed5h
+dd 006ca8758h
+dd 004af45ffh
+dd 0e774ce3ah
+dd 059af92fch
+dd 0234535c5h
+dd 0b13ffe62h
+dd 08b430916h
+dd 02a1a6a19h
+dd 0a6193fb5h
+dd 09009d6f2h
+dd 08214eb9eh
+dd 01d0ff8a3h
+dd 0ba969fdeh
+dd 06c24b55dh
+dd 070387b59h
+dd 0ffb0e424h
+dd 055b0921fh
+dd 055ec804ch
+dd 0c0561d85h
+dd 0a3e44723h
+dd 046078f86h
+dd 0f48a2ca6h
+dd 0aceecedah
+dd 039c035c9h
+dd 06c65aeafh
+dd 0a06c5aafh
+dd 0cda1fff1h
+dd 09b0fae25h
+dd 046092561h
+dd 0d4c064edh
+dd 00a67cfc2h
+dd 084692174h
+dd 0125122c7h
+dd 0276e642bh
+dd 093325ce4h
+dd 079bd8d0fh
+dd 0e3d11c73h
+dd 0fd1e116ah
+dd 0ed5cf39dh
+dd 02a1ee4f9h
+dd 0709acf62h
+dd 0b8794d98h
+dd 022850107h
+dd 04374636ch
+dd 0b69aa19dh
+dd 01bffa698h
+dd 07aba9435h
+dd 04f7e7386h
+dd 02d0608a4h
+dd 067a9a578h
+dd 022822ebeh
+dd 0f7d038a1h
+dd 005605d3eh
+dd 01deb0458h
+dd 0c8faa1cch
+dd 00be9a668h
+dd 094a10de6h
+dd 0f9431e49h
+dd 0ad75c029h
+dd 03920bd21h
+dd 05dd18f55h
+dd 02a1a6da0h
+dd 0e38f654dh
+dd 09195f0e9h
+dd 07da1058ch
+dd 08edc2cb3h
+dd 04dba3f0ah
+dd 0d34c55dch
+dd 0b8a5b5b2h
+dd 0c5d05003h
+dd 083127bdah
+dd 0d90cfacfh
+dd 0536872fch
+dd 0dd3ee538h
+dd 09668a227h
+dd 0f810479dh
+dd 0f1b8fcb7h
+dd 0e5128f13h
+dd 0097f98f9h
+dd 0c6fcd073h
+dd 0512d1cd3h
+dd 0b8031d9dh
+dd 012104f23h
+dd 06b266b41h
+dd 0df225a05h
+dd 045c201c7h
+dd 09930c768h
+dd 03b389df0h
+dd 0e86b9e9dh
+dd 040d3da1ch
+dd 0e5e4dc46h
+dd 0153dcb23h
+dd 0e6910c1fh
+dd 06847c300h
+dd 0cab9ab93h
+dd 02a41d0abh
+dd 07e1274a2h
+dd 07aa5191ah
+dd 0f244bda8h
+dd 053526b48h
+dd 0475362f9h
+dd 084f92d81h
+dd 0599fcf07h
+dd 06b036777h
+dd 062ab9545h
+dd 0f21b610eh
+dd 094d1add1h
+dd 02f9cc839h
+dd 001ab230fh
+dd 0da1d31c6h
+dd 0afd09adeh
+dd 0d9b7ae0dh
+dd 03e086e68h
+dd 05ca4feb3h
+dd 05bb2004fh
+dd 00459eb19h
+dd 0e18fbeadh
+dd 027922a93h
+dd 0fdedc4f8h
+dd 03a29f1abh
+dd 06fbc3e65h
+dd 0cb0911e6h
+dd 04ec1d5a1h
+dd 08b74fd38h
+dd 0a2d944a3h
+dd 00e772c1ah
+dd 027f4061eh
+dd 09a12c282h
+dd 0fa9cbf27h
+dd 03a68a8a3h
+dd 02e38178bh
+dd 07cbaa335h
+dd 04d979ccch
+dd 075861196h
+dd 0aaa59efch
+dd 03ebdd08eh
+dd 0f75de081h
+dd 05c617132h
+dd 054460440h
+dd 0716b177fh
+dd 01916f797h
+dd 05917bbb4h
+dd 011b30bceh
+dd 028846ed2h
+dd 0d30efb96h
+dd 0ce2566bfh
+dd 0711d403bh
+dd 0b49011cch
+dd 0a5f7adbbh
+dd 0132887f6h
+dd 0dc6fb491h
+dd 05ffb14e9h
+dd 0f72c6db4h
+dd 09b77e451h
+dd 01adfb1b1h
+dd 066a7098eh
+dd 03e0ada59h
+dd 0ddf9fa0fh
+dd 06ef71581h
+dd 09fda97f3h
+dd 059cdfb25h
+dd 0086393b1h
+dd 0ca398087h
+dd 01b6fff57h
+dd 007e9f97bh
+dd 0fb8556dch
+dd 099f30565h
+dd 0d0231c06h
+dd 08d25bdcdh
+dd 0d01777cch
+dd 004974812h
+dd 08907f210h
+dd 044ebb8edh
+dd 04e55d538h
+dd 0cd3cb094h
+dd 0d873bd07h
+dd 0627b1146h
+dd 0d66dc6abh
+dd 0fdf5451fh
+dd 02a9f1aeah
+dd 000392269h
+dd 04717eaddh
+dd 026072309h
+dd 0a5f671d1h
+dd 0ec47f6f1h
+dd 05116cd96h
+dd 0e1c42a1bh
+dd 0774b5f0bh
+dd 0b1b43e0ch
+dd 0eac2cde4h
+dd 0f3339324h
+dd 00a3723e1h
+dd 020085077h
+dd 0cdee2e4bh
+dd 0b99e20a1h
+dd 0f7b78282h
+dd 07439003ah
+dd 0bccc7b28h
+dd 09f746b7dh
+dd 099183a03h
+dd 0ff47af02h
+dd 0d5313076h
+dd 0b6b4c196h
+dd 084bf7b5ah
+dd 0556bf791h
+dd 09ec04771h
+dd 0a846e7f1h
+dd 0df8b950dh
+dd 0903d58f4h
+dd 0ac55dcafh
+dd 04d3a9182h
+dd 08875ccf8h
+dd 08795ac61h
+dd 0ec062bc5h
+dd 02497b23fh
+dd 04e147939h
+dd 0a9cc570eh
+dd 04e0e4836h
+dd 0b76903e0h
+dd 05d43ef0ah
+dd 011f66683h
+dd 08aed0b1fh
+dd 023c0278ah
+dd 091a73879h
+dd 0e55c181dh
+dd 0908d02b2h
+dd 030e268afh
+dd 0441ce4a6h
+dd 06cfa2173h
+dd 0080f71e1h
+dd 0648c01fch
+dd 070082a27h
+dd 04d09ba71h
+dd 06ca29532h
+dd 026509a51h
+dd 0b9418e13h
+dd 09b5ab904h
+dd 0127581e3h
+dd 0b2a50327h
+dd 0010395bch
+dd 0312aa59bh
+dd 09e47bbf3h
+dd 0c1f907c0h
+dd 0fc601c3dh
+dd 0f4944f00h
+dd 01d2b5dd7h
+dd 08f685a69h
+dd 02641f559h
+dd 0adbeea16h
+dd 0fe3fa01fh
+dd 08709ad91h
+dd 0ecef3d4dh
+dd 09ed18958h
+dd 09c414a19h
+dd 0dfc7d81ch
+dd 0d6abadc3h
+dd 07395fbd3h
+dd 020798f72h
+dd 07e30ffdbh
+dd 07918bd02h
+dd 0a71572bbh
+dd 007d84ff7h
+dd 02147c98ch
+dd 07ad382e3h
+dd 04583194ch
+dd 078c4229eh
+dd 05e0dfc1fh
+dd 04457a8a8h
+dd 0b27f5552h
+dd 06058c912h
+dd 0bbd81255h
+dd 04999981bh
+dd 0414ca715h
+dd 030d6aad5h
+dd 0c4d26625h
+dd 030362c5bh
+dd 0bc2dca11h
+dd 08a4eafc7h
+dd 0102316eeh
+dd 08038cf01h
+dd 06f68050dh
+dd 0a9608b99h
+dd 010a3d34eh
+dd 061643e4fh
+dd 01c38310bh
+dd 07023df31h
+dd 06e26b193h
+dd 0316599cbh
+dd 0f1d8136ah
+dd 03b7c2ed4h
+dd 0a97336f3h
+dd 01d12c96bh
+dd 074e336fah
+dd 0ee20f520h
+dd 0c80c370ah
+dd 03d09cd42h
+dd 0ea0d1dc8h
+dd 08b36126bh
+dd 01e2d2c55h
+dd 0a6369796h
+dd 089a3b73eh
+dd 08e322662h
+dd 07b8ed615h
+dd 04c98c38ch
+dd 056d1083dh
+dd 047d6b5c7h
+dd 0e746ef7ch
+dd 0cdc8453dh
+dd 03d05c65ch
+dd 02a1f090eh
+dd 0dbb514feh
+dd 01857477ah
+dd 0cceb47bdh
+dd 0496f70d4h
+dd 0203290f0h
+dd 051a3aa6ah
+dd 0d0630c86h
+dd 02df4ff24h
+dd 08a4a650eh
+dd 09d44cd2ah
+dd 00d9ba8f5h
+dd 0f2a21379h
+dd 05e7617d5h
+dd 08bd761f5h
+dd 00f17451eh
+dd 0512469b5h
+dd 044ea7a37h
+dd 088a2945bh
+dd 083e85ad9h
+dd 090562ff2h
+dd 05394171ch
+dd 0d8584db8h
+dd 042d26231h
+dd 097c00064h
+dd 00f1c0a9eh
+dd 05d25399dh
+dd 0e8b43737h
+dd 0875cd109h
+dd 0cb16248ah
+dd 01bc839f3h
+dd 0f4d87d0fh
+dd 0e4d62614h
+dd 0899b1400h
+dd 0b9248449h
+dd 05d8184b4h
+dd 0e5f1f251h
+dd 09e8cd2d3h
+dd 04c14a49eh
+dd 0d40fa8cch
+dd 0568fc9e1h
+dd 0dbba7bb0h
+dd 041709d00h
+dd 055badbe7h
+dd 095bbd473h
+dd 075f128edh
+dd 005a3eb91h
+dd 029beca42h
+dd 0f1e9fea8h
+dd 01484fb7fh
+dd 05ac9feb9h
+dd 0a61054d0h
+dd 00a62dd0dh
+dd 0ce3608b7h
+dd 0f84a7699h
+dd 0c084a834h
+dd 01f123f91h
+dd 0143111a1h
+dd 0c3eec6c1h
+dd 05c89a4cfh
+dd 0fa68ca7ah
+dd 04d769675h
+dd 030251d67h
+dd 025b5f324h
+dd 05fd1b2c4h
+dd 0c33214a1h
+dd 001969554h
+dd 0f0fc43b6h
+dd 092d641b5h
+dd 01c7b3133h
+dd 0200a515ch
+dd 07b26baa7h
+dd 07c44ee71h
+dd 09dd45d35h
+dd 0bb0c3678h
+dd 05ce9a365h
+dd 0492753e8h
+dd 019034c05h
+dd 0a784a165h
+dd 099a7cba0h
+dd 00728cb95h
+dd 05c72a122h
+dd 0b6f9f441h
+dd 03ca06686h
+dd 0c3dd94edh
+dd 038f33186h
+dd 02cff2513h
+dd 0c527176bh
+dd 00c949274h
+dd 090529ebdh
+dd 02ca73495h
+dd 0edc76d4eh
+dd 0b1d1d29fh
+dd 021052b87h
+dd 0b1fe51bah
+dd 03234df6dh
+dd 08ff092dbh
+dd 0fc951f8ch
+dd 0deb277a5h
+dd 07097b732h
+dd 0be6d9ae7h
+dd 0bf4d68f3h
+dd 0c2d2e6c2h
+dd 0dd53843fh
+dd 03cce5f4bh
+dd 0855a0bc5h
+dd 01985f2f5h
+dd 0ee594d60h
+dd 01ec357a1h
+dd 0fbb5aa0ch
+dd 0650f8ed1h
+dd 0b5b0ced0h
+dd 0a25067cdh
+dd 04eb18349h
+dd 0dba62d04h
+dd 044482862h
+dd 0174e2e8dh
+dd 028da9e88h
+dd 0032e004ch
+dd 05441fbe6h
+dd 079d32a59h
+dd 0c39dc4edh
+dd 05888edf6h
+dd 0209a43ach
+dd 0b0222e1eh
+dd 023d8b2bah
+dd 0331c8798h
+dd 01b7a3b8dh
+dd 028c30ab5h
+dd 0b117e305h
+dd 07bc7a259h
+dd 0920f9a17h
+dd 0ae4588ddh
+dd 008d8520ch
+dd 0ce8b1445h
+dd 02a7bb01ch
+dd 047e1d23bh
+dd 0b1acafefh
+dd 07ae27ca3h
+dd 00f7126feh
+dd 0999832dfh
+dd 0df81b143h
+dd 04bb12350h
+dd 04bd3fc57h
+dd 07033a7b3h
+dd 0e4ed80a0h
+dd 046b232a2h
+dd 04acf3765h
+dd 0ea8b2e7bh
+dd 01ddd0524h
+dd 0f42b75e4h
+dd 08ea3f3beh
+dd 0cd506749h
+dd 042224147h
+dd 013a07305h
+dd 01c85e229h
+dd 0c86da83ch
+dd 0889d5356h
+dd 05d1ef917h
+dd 003d618fch
+dd 09e8dcbd4h
+dd 0e607ab44h
+dd 06d95bd60h
+dd 02df44fdbh
+dd 0971f67d5h
+dd 00c7458b5h
+dd 0ed544006h
+dd 09e4525cdh
+dd 0cffb6959h
+dd 0dbdb75b9h
+dd 0d3b92832h
+dd 048e14d38h
+dd 0a247da2bh
+dd 076253916h
+dd 0a78c115bh
+dd 0d4bb555bh
+dd 09bce5f21h
+dd 05baa90b6h
+dd 001fd682ch
+dd 0a723e989h
+dd 04699a4cdh
+dd 0e142cfb5h
+dd 042fec6c6h
+dd 072b27096h
+dd 094de84ach
+dd 080e8cdadh
+dd 0fc35a639h
+dd 006e8105ah
+dd 06eb4c47dh
+dd 07a338228h
+dd 0fa5caf65h
+dd 0857c3bbfh
+dd 058a49f87h
+dd 00bfd4cb3h
+dd 02dec0fech
+dd 07289d0cch
+dd 080ef421ch
+dd 01467bbd0h
+dd 09298ecf9h
+dd 0856133feh
+dd 0f32a5fdfh
+dd 06e7869e7h
+dd 05e3a29bdh
+dd 0b9bbc479h
+dd 0fda49317h
+dd 0ddd9eb04h
+dd 0f66e560fh
+dd 060e14697h
+dd 07393cb92h
+dd 081f52dd6h
+dd 0ad98685eh
+dd 075a399a9h
+dd 014139074h
+dd 0a2ea3447h
+dd 09712f783h
+dd 0369c625dh
+dd 01ac368f7h
+dd 0e946998ah
+dd 07f2cfcf7h
+dd 053747276h
+dd 015303eafh
+dd 00eff1768h
+dd 01c250937h
+dd 0978828d1h
+dd 0abe78350h
+dd 08bbc5a7dh
+dd 0a29d5fb8h
+dd 0a128c5a0h
+dd 0652fda5ch
+dd 0bbefb969h
+dd 0a0a8e11bh
+dd 03f933c0eh
+dd 018a6ae86h
+dd 0a107ac98h
+dd 010dcb62dh
+dd 065fa4a1eh
+dd 0ce859f64h
+dd 076d4dc23h
+dd 0006d21a9h
+dd 0a6a67c97h
+dd 00f973d7fh
+dd 0a81edf35h
+dd 01eed80f3h
+dd 09fb11c8eh
+dd 031c08269h
+dd 0e2c5c4c7h
+dd 0e9510f28h
+dd 0a49679eah
+dd 00b8ac2bdh
+dd 014865b0bh
+dd 04d66584bh
+dd 0aa7c2d53h
+dd 0e10d0f54h
+dd 0752b1841h
+dd 00daa732bh
+dd 0f294c6d3h
+dd 0ac781c6fh
+dd 01e00e70ah
+dd 031837bfbh
+dd 092f826deh
+dd 0644edb86h
+dd 0d2fd3d50h
+dd 01ae9fb51h
+dd 06a356909h
+dd 07ab2d54fh
+dd 085c3c2f1h
+dd 060214806h
+dd 0cfdc25bch
+dd 0221f3150h
+dd 0fc0549deh
+dd 07d4c8730h
+dd 00c7241a8h
+dd 0119471bfh
+dd 02411dbf3h
+dd 0e917dcc2h
+dd 0e711c917h
+dd 0eb3556cfh
+dd 076321f10h
+dd 06bf66633h
+dd 000516bb3h
+dd 0bb40ca7bh
+dd 0c7f76482h
+dd 0eeff6923h
+dd 087a4677eh
+dd 0b26e6b2ch
+dd 08a003652h
+dd 0f7d20ed7h
+dd 0d9e04d9eh
+dd 0fac95d92h
+dd 038164a56h
+dd 017641640h
+dd 0830b0c8ch
+dd 0764a53e4h
+dd 085493aedh
+dd 0e648a823h
+dd 0ca483ea3h
+dd 0462420d8h
+dd 09279ec34h
+dd 083b9278ch
+dd 022ac0d08h
+dd 0c5e925c8h
+dd 0406d13aah
+dd 0783ed9cch
+dd 0b6154e00h
+dd 019a230a9h
+dd 07a8970d1h
+dd 0ad1e321eh
+dd 001c91221h
+dd 0fb9b6612h
+dd 00d92d2a4h
+dd 0397ee68dh
+dd 066828f47h
+dd 0bdd4e684h
+dd 005e267d5h
+dd 0881b02ebh
+dd 07991d231h
+dd 0fe525970h
+dd 08d875029h
+dd 0e8c1f1e5h
+dd 09a8662d2h
+dd 0106cb69eh
+dd 0ae108789h
+dd 0b2430736h
+dd 016020251h
+dd 005dcc9ddh
+dd 00287a37fh
+dd 05e388794h
+dd 0776db8ddh
+dd 026b8059fh
+dd 05ac22e8ch
+dd 064d2feb4h
+dd 0f1a27d1fh
+dd 0441df2a5h
+dd 07d4444aah
+dd 077982e47h
+dd 02ed39ccch
+dd 0ec3d5e69h
+dd 0dad72a46h
+dd 0673539f8h
+dd 07417ddcah
+dd 09f5f5ebdh
+dd 0cf1689adh
+dd 02b38e625h
+dd 02d07009bh
+dd 071603c35h
+dd 015d62278h
+dd 075cc92b7h
+dd 0178ba187h
+dd 00b70c333h
+dd 0b3c59f87h
+dd 019239684h
+dd 04eccc065h
+dd 0d71cfe51h
+dd 0c30503cfh
+dd 073919868h
+dd 065539a5ah
+dd 0f86b81c8h
+dd 0016ac07ah
+dd 0802142bdh
+dd 013ea48bdh
+dd 09880a237h
+dd 040eac4f4h
+dd 04810e2a4h
+dd 04327db92h
+dd 0139edb5ah
+dd 034ed842eh
+dd 093970ed7h
+dd 04f4214d8h
+dd 0c3db8da9h
+dd 0b82e7fdbh
+dd 05c003ac8h
+dd 0b3fa7e3bh
+dd 0cd913bddh
+dd 08d304d7fh
+dd 0f6419905h
+dd 0e80231c3h
+dd 096a43a65h
+dd 0ca059624h
+dd 0a3bc8ed1h
+dd 059c070d8h
+dd 0b9e37dc5h
+dd 0db6d19cah
+dd 0f19917d8h
+dd 0a1a0f075h
+dd 0fe61a9d4h
+dd 0388d4abbh
+dd 079da3f5fh
+dd 06be05f3fh
+dd 0a45d271ah
+dd 057540b57h
+dd 06a4a1bdfh
+dd 00ee8b1aeh
+dd 06a05a463h
+dd 0d92bde48h
+dd 0fd6881b0h
+dd 0e6ca6652h
+dd 048c11371h
+dd 05cc00882h
+dd 08ae5c86ah
+dd 0df0543f9h
+dd 00f44ac23h
+dd 081b662e8h
+dd 00f537a25h
+dd 0df300180h
+dd 03782e433h
+dd 06a053b75h
+dd 06a87f395h
+dd 009a2a5a8h
+dd 01991788eh
+dd 03c28a3ach
+dd 0e03902a4h
+dd 041d18ceah
+dd 0c6c686b5h
+dd 0b5b30405h
+dd 09f64dbadh
+dd 0616c1af1h
+dd 0889d7f14h
+dd 0478fbb73h
+dd 00509b499h
+dd 04985d18ah
+dd 02bc1ae77h
+dd 0a6462d7eh
+dd 07fe3bb31h
+dd 0ec09b255h
+dd 0f36cdb03h
+dd 01d37f4c4h
+dd 0effa4524h
+dd 0d5c41774h
+dd 042369595h
+dd 0d67e544dh
+dd 00fd1f4c4h
+dd 07b1300e8h
+dd 02bd7600eh
+dd 03c2f18dbh
+dd 0fc0cdd45h
+dd 0486ef8dah
+dd 0d9d0ae1bh
+dd 0495bd579h
+dd 0ab6ed04ch
+dd 07d2464f4h
+dd 0060cd7b1h
+dd 091b64032h
+dd 0e577d7e2h
+dd 07f50325eh
+dd 0fd50db1ch
+dd 00a474974h
+dd 0fae8838dh
+dd 05b13c1c1h
+dd 07b75bd83h
+dd 0b9eedd10h
+dd 053e41f1fh
+dd 018995f8dh
+dd 00427b57fh
+dd 08674681ah
+dd 0728d177dh
+dd 0949dd6bfh
+dd 0519c80e5h
+dd 042fd8afeh
+dd 05b1d086eh
+dd 0149b92e9h
+dd 0984e7872h
+dd 04f087ea5h
+dd 0f3441ee2h
+dd 080bc7af7h
+dd 00165e8a3h
+dd 00ab2f132h
+dd 057c9a489h
+dd 0cd82c9f5h
+dd 0bb062be1h
+dd 08c240bb1h
+dd 06f830b5fh
+dd 06f7526feh
+dd 03c527f2fh
+dd 0fdeca1c5h
+dd 07f45649fh
+dd 0eb104bf0h
+dd 029db5767h
+dd 0106a668ah
+dd 0a9cf4c6dh
+dd 061fce98fh
+dd 001f5eb03h
+dd 096022c95h
+dd 01a7da8d3h
+dd 0d668fcb7h
+dd 033102daah
+dd 0ffee9c54h
+dd 0c39fdcf2h
+dd 0fecd9f39h
+dd 04e731cf9h
+dd 0f2c109f0h
+dd 0baa84d24h
+dd 04cc7b931h
+dd 0d5981c04h
+dd 01df538bah
+dd 00181eb5ch
+dd 0bb1337aah
+dd 0de5b6497h
+dd 042bbcc29h
+dd 03ecb93cah
+dd 045bd909bh
+dd 0f3fee312h
+dd 0d3addccah
+dd 0158238b7h
+dd 069ba85a5h
+dd 0289025c9h
+dd 041a93c66h
+dd 0fe94d25bh
+dd 043963713h
+dd 061451bf7h
+dd 0ae719095h
+dd 050fd7bcah
+dd 006e1ff6eh
+dd 00a870b77h
+dd 08c4f0967h
+dd 04b423db0h
+dd 0b8d0973bh
+dd 0746429edh
+dd 0b531c646h
+dd 020ba79b4h
+dd 0e949b149h
+dd 06cd957d2h
+dd 091016992h
+dd 015f05efch
+dd 082da1a37h
+dd 074cb415eh
+dd 0335c6d2bh
+dd 0c41b738ch
+dd 0920a8837h
+dd 05f6178bfh
+dd 068ad7c09h
+dd 0670e6749h
+dd 05262d15fh
+dd 00d5f0cd6h
+dd 0975c1dd5h
+dd 08425d0cfh
+dd 08ff6d4a3h
+dd 0ccf888d7h
+dd 01e59f5b3h
+dd 07eec151fh
+dd 04dc7b208h
+dd 00ecc40c6h
+dd 0cbc39cfdh
+dd 0c131c111h
+dd 0b009a054h
+dd 0a468daceh
+dd 02e538d69h
+dd 0f9978e7fh
+dd 0525059f8h
+dd 0f8bd8436h
+dd 0e53b2b93h
+dd 03bec6addh
+dd 078f87619h
+dd 0e0ac96e7h
+dd 0f23b6683h
+dd 0f5117313h
+dd 071d07f8fh
+dd 0a2e8cfb0h
+dd 04a0c0177h
+dd 0870de46eh
+dd 09d575f51h
+dd 0383e49bbh
+dd 0e30ccb87h
+dd 09fc55a50h
+dd 0572c87f4h
+dd 079d44af1h
+dd 09610d344h
+dd 07482e11fh
+dd 024b5dcebh
+dd 0e7280ed6h
+dd 03d456dd9h
+dd 0c572ef77h
+dd 00fb938d4h
+dd 06bc47456h
+dd 0cf0ae594h
+dd 073f776aah
+dd 0a6dce0aeh
+dd 092cb4f24h
+dd 05d31dc48h
+dd 07ae8b74bh
+dd 085f2230eh
+dd 050ca908fh
+dd 033e3f940h
+dd 064b48f1ch
+dd 0df9e2f7eh
+dd 05bd75f8dh
+dd 01b7141d6h
+dd 027a4cfcdh
+dd 0e09128e0h
+dd 0214152c4h
+dd 03f934563h
+dd 03ddd1c3eh
+dd 067dde8aah
+dd 08ec33e3bh
+dd 09f3d8d14h
+dd 0fc848816h
+dd 02034f858h
+dd 0177b63ebh
+dd 068f35f67h
+dd 0fc85b4c4h
+dd 04a107f4eh
+dd 04f7cddf3h
+dd 04aa13e86h
+dd 06566d48dh
+dd 05656e3a2h
+dd 0bbd122d3h
+dd 057e195c5h
+dd 0b3f2286bh
+dd 09cec6592h
+dd 0457139b7h
+dd 08fccbdc6h
+dd 07ea77bd7h
+dd 07bfa7623h
+dd 0cb614856h
+dd 013b030c7h
+dd 0ffc4bc5eh
+dd 0e52d865ah
+dd 024eea138h
+dd 06f715ed3h
+dd 0fbc0e136h
+dd 08ddd3a4eh
+dd 009cac651h
+dd 00cfd35f2h
+dd 0996ba05eh
+dd 0ea2c53f8h
+dd 0888575f5h
+dd 0f13c9135h
+dd 03b2f52c9h
+dd 09f3b5003h
+dd 053c36911h
+dd 019934307h
+dd 01804582fh
+dd 0521e5ce2h
+dd 0c7452ef8h
+dd 00be31c3eh
+dd 011ef47e8h
+dd 04ddffb48h
+dd 0eb532afeh
+dd 0e939726fh
+dd 0284fc3b1h
+dd 0baa367b8h
+dd 09b7ccd97h
+dd 0287d76d5h
+dd 0cebbd9a2h
+dd 0e9ac70e0h
+dd 08378186fh
+dd 030ff9d57h
+dd 020525253h
+dd 0d4869f1ah
+dd 0575b0470h
+dd 0a9bdaba0h
+dd 00bfe8468h
+dd 0bfec9de1h
+dd 0d9530432h
+dd 0d492c963h
+dd 0a15e72c6h
+dd 05e5c218bh
+dd 0836febddh
+dd 0688ee694h
+dd 09bad23e8h
+dd 010ca349eh
+dd 041870e6ch
+dd 087df22e7h
+dd 029c9b8cch
+dd 06835e00fh
+dd 0f85cc6b4h
+dd 09da0dc93h
+dd 0b7bec450h
+dd 07c726926h
+dd 0c23f6e25h
+dd 025005660h
+dd 03618c843h
+dd 0f0f2e9ffh
+dd 04ff7f090h
+dd 072bdf56ah
+dd 0c5c41ae4h
+dd 0b4262ef1h
+dd 0eec5c01bh
+dd 06cafbf59h
+dd 05a39311ch
+dd 055c16058h
+dd 052640197h
+dd 00d65fcc2h
+dd 0b82ca833h
+dd 0d44ac187h
+dd 08d3e6934h
+dd 0e534e202h
+dd 000cf981fh
+dd 0d0b8c6cdh
+dd 0c263874ah
+dd 09fccc717h
+dd 054c9043bh
+dd 052f8dc79h
+dd 03658a0b1h
+dd 0301b8d14h
+dd 04eaf8012h
+dd 01c218bb3h
+dd 07ce32466h
+dd 0e446f14bh
+dd 0a62f1256h
+dd 0bb425ddch
+dd 046afa475h
+dd 06ae39a73h
+dd 088ba3edch
+dd 0ebd4c417h
+dd 0972664deh
+dd 07755fc2ch
+dd 018c58ec3h
+dd 04e5981a4h
+dd 09cc19182h
+dd 0da4ccf03h
+dd 0db566e8bh
+dd 042013a99h
+dd 02ed49d45h
+dd 045033ab3h
+dd 05d1c3d8ah
+dd 0adc5d89bh
+dd 02f9edf62h
+dd 0440b63d2h
+dd 0e4db08b7h
+dd 008b7c8cah
+dd 03facda9bh
+dd 0aee7743ch
+dd 037a1d095h
+dd 0673b5c1fh
+dd 06be9b997h
+dd 0e0662cc0h
+dd 0e0ac4247h
+dd 0e0e99d8bh
+dd 0b3ee318dh
+dd 00fcff290h
+dd 059658341h
+dd 014f87fb5h
+dd 0dc85399dh
+dd 0bfc8cb9ch
+dd 0caa1c260h
+dd 0e79c4b77h
+dd 0bd5aa34eh
+dd 01d8aaa0ah
+dd 087631e2dh
+dd 03c1cb2e6h
+dd 06d0bbbe0h
+dd 07fa8e401h
+dd 0c6eced17h
+dd 022454e0ah
+dd 0bfa65726h
+dd 079b5c75eh
+dd 035dd07f7h
+dd 05c3d0a41h
+dd 0a30483a0h
+dd 080322b24h
+dd 0f9a6e989h
+dd 0d3964b8bh
+dd 0f0f3cae9h
+dd 0cdb62502h
+dd 0420abec9h
+dd 02e72674eh
+dd 0537fc842h
+dd 043a06390h
+dd 00638b634h
+dd 02cb9ad8dh
+dd 0f4be0ff5h
+dd 093838212h
+dd 0726adeebh
+dd 0403a112fh
+dd 0cad92bb3h
+dd 0e86be4dbh
+dd 050117ed9h
+dd 074a38c4eh
+dd 0b602dc3fh
+dd 06cbb7396h
+dd 01fc4d77dh
+dd 02c231241h
+dd 0b72721f3h
+dd 0fcf2c074h
+dd 059a0464ah
+dd 0d98adb9ah
+dd 0889283a2h
+dd 00cef2c9dh
+dd 0db6c7137h
+dd 01e10966dh
+dd 0ac5e0466h
+dd 0830a7c52h
+dd 0d3cbfcb7h
+dd 0c86ad739h
+dd 08d39d692h
+dd 0b37e9cd3h
+dd 03ec754c4h
+dd 05835e14eh
+dd 0c29eeed5h
+dd 06c8f26d5h
+dd 00be325bah
+dd 08c428240h
+dd 0112b6f78h
+dd 090f3b820h
+dd 00ebfe4fah
+dd 0f4b86d8eh
+dd 06515dfc8h
+dd 09472d03ah
+dd 07672fedbh
+dd 0b5a9a7bfh
+dd 03c55a131h
+dd 0ada5c94eh
+dd 0e3bbf289h
+dd 0804407a2h
+dd 0d330be53h
+dd 0f923b19fh
+dd 03bd56407h
+dd 02a91de0eh
+dd 0a20ce325h
+dd 0d9c4bfb2h
+dd 084ecc08ah
+dd 094416f9eh
+dd 0a807d2afh
+dd 0d758ad05h
+dd 085f518dfh
+dd 0bf2fc6d3h
+dd 01c97cc7eh
+dd 05b1bb6c6h
+dd 0df3661c5h
+dd 0a83e4972h
+dd 0134049dah
+dd 032dedb8dh
+dd 01e029e8dh
+dd 01e047c4ch
+dd 0bd972e71h
+dd 07fba2961h
+dd 0aee7fc45h
+dd 0c9f22ea7h
+dd 0947a910eh
+dd 01f7f1382h
+dd 0c7f5ca50h
+dd 0fa44ccefh
+dd 04e9d6375h
+dd 05e5f1288h
+dd 0473df1d4h
+dd 078e2a7aeh
+dd 0adb7bb21h
+dd 08837f818h
+dd 089314ccfh
+dd 09f0ee3ebh
+dd 09c76f488h
+dd 077c4542ah
+dd 00c91d86ch
+dd 075aad4d8h
+dd 04f5e9e0fh
+dd 04e0ace61h
+dd 0d20cd11fh
+dd 04bdf8dcah
+dd 0df51d963h
+dd 0a8c71d78h
+dd 025c4dd62h
+dd 004163025h
+dd 0657b506ah
+dd 069db3629h
+dd 0bb662f69h
+dd 0fe6551abh
+dd 02a43d269h
+dd 023634746h
+dd 045100298h
+dd 004db56f4h
+dd 05859dbe6h
+dd 0a511d5beh
+dd 0cd8891e5h
+dd 0dcba26bfh
+dd 01566fe08h
+dd 09f00ea2eh
+dd 06e4660a6h
+dd 0b3ca59f4h
+dd 0876feb5ch
+dd 0e1d48fdch
+dd 01c35a413h
+dd 037d90084h
+dd 03695f585h
+dd 03f6a038ah
+dd 04e1a7b2ch
+dd 015f19498h
+dd 0e665fa31h
+dd 0a891fec7h
+dd 061a1e5feh
+dd 0680e6c27h
+dd 0446df6feh
+dd 0623931ffh
+dd 0dcf241fah
+dd 076161eedh
+dd 0343340a4h
+dd 0cbd72c22h
+dd 033955ce5h
+dd 0594c6650h
+dd 0fa9fb2ffh
+dd 0f4bf7a98h
+dd 0bf5d56bfh
+dd 033caca71h
+dd 01b027c23h
+dd 02fde2b45h
+dd 03605d034h
+dd 013d19d4eh
+dd 0d4da71cah
+dd 0aac5bcc4h
+dd 06cb27314h
+dd 0547bbd01h
+dd 0678f4084h
+dd 06b281c4ah
+dd 041ff4acdh
+dd 0b33a8131h
+dd 0aa03a88dh
+dd 03c9aaa60h
+dd 0a791ef90h
+dd 0a1e15a91h
+dd 06eea2f77h
+dd 0b123fe09h
+dd 0ad939d7fh
+dd 05ca06e87h
+dd 0d995b984h
+dd 038b5e6b8h
+dd 07b92b2c0h
+dd 01d24d7b7h
+dd 0f9fa64b6h
+dd 0e3a8e5cch
+dd 0df83c73eh
+dd 08bae9eaah
+dd 0906c1b29h
+dd 06a96d036h
+dd 02908048ch
+dd 005aae3f3h
+dd 0d285f2f5h
+dd 02f91af32h
+dd 0cc18177bh
+dd 0fd372918h
+dd 099fb5288h
+dd 03e992412h
+dd 0dce9364ch
+dd 0625b399fh
+dd 0ca703829h
+dd 06e9da3c6h
+dd 0b5292d4ch
+dd 0196dd174h
+dd 01d1f78a0h
+dd 00c521651h
+dd 0ea568c73h
+dd 0be10f631h
+dd 0bb739af1h
+dd 06ab2f7d9h
+dd 0f02da751h
+dd 0d57ca47bh
+dd 06ef9c202h
+dd 040c50f93h
+dd 07eb06bb6h
+dd 000af0e1ah
+dd 0b2f643b9h
+dd 033af96e3h
+dd 0aa67d45eh
+dd 03bc4448ch
+dd 0b67022a8h
+dd 0d3927961h
+dd 015430a2fh
+dd 06c215632h
+dd 088267bc3h
+dd 0e50cec3eh
+dd 0a186b8bah
+dd 046e9b776h
+dd 0cd5fe3f0h
+dd 020f36f48h
+dd 0a227987ah
+dd 055b5969eh
+dd 016eca3e8h
+dd 0dc8c47f8h
+dd 04de1fad8h
+dd 0cfc8308ah
+dd 00115e799h
+dd 0b8c9c99fh
+dd 0da972f6dh
+dd 00a9621b4h
+dd 0e53207a5h
+dd 0d86a24f1h
+dd 04e05f294h
+dd 0448754cdh
+dd 013a7844ch
+dd 02ed261f3h
+dd 0a6aec65bh
+dd 05d70720bh
+dd 0276cdf31h
+dd 0a13ee4f7h
+dd 08b895c46h
+dd 01c5a91eeh
+dd 0dd58b5ddh
+dd 0ba6c4c45h
+dd 011db5d6fh
+dd 0cbbf5aa5h
+dd 0863a2750h
+dd 0a79a0e87h
+dd 0c8aebab1h
+dd 06dc5c6bfh
+dd 074f6d187h
+dd 01939d7efh
+dd 0e1d6179ch
+dd 05b36d285h
+dd 0a9e88230h
+dd 0a742867fh
+dd 0854e38c9h
+dd 0504767d5h
+dd 044f31b1ch
+dd 0a0a75dd1h
+dd 0bde52985h
+dd 051aae66ah
+dd 0a41789b1h
+dd 03aaca68fh
+dd 016c845e3h
+dd 05ba7a7f1h
+dd 0e62772f7h
+dd 0fdd391d8h
+dd 0fe18407eh
+dd 0407c6f4fh
+dd 07f93df8fh
+dd 06a83b5edh
+dd 0a00c7728h
+dd 096aea4c5h
+dd 08e5c8999h
+dd 0133b8b08h
+dd 0d80bf930h
+dd 01f295903h
+dd 0e510eb98h
+dd 0817a8b11h
+dd 07bb91376h
+dd 07f3cba8bh
+dd 0f14b2338h
+dd 0aa6f1ed6h
+dd 01b9dfab8h
+dd 026424feah
+dd 0b1f5be45h
+dd 006df4bebh
+dd 00b2b63c7h
+dd 0238bf1b7h
+dd 04b1af7feh
+dd 06cd065ceh
+dd 08e815bcbh
+dd 0b23d62c0h
+dd 091c225feh
+dd 0be874437h
+dd 093896607h
+dd 0baa823b1h
+dd 0981f4910h
+dd 0f16d5ac7h
+dd 007ee20d5h
+dd 07c165090h
+dd 03b66d7bah
+dd 05a908618h
+dd 05739fa97h
+dd 0b98a3ed0h
+dd 07c8d9624h
+dd 03becb9b2h
+dd 056de1f15h
+dd 07a17d559h
+dd 0c6e53f24h
+dd 006474c90h
+dd 06e9952c2h
+dd 016482629h
+dd 037cd6f7ah
+dd 0d9314852h
+dd 0c8e2bbe8h
+dd 07b9645abh
+dd 0c42322c4h
+dd 0fa500867h
+dd 0fd6d09b3h
+dd 0440dcd24h
+dd 073a1a969h
+dd 0727d577ch
+dd 0b677eaa1h
+dd 0b40aae00h
+dd 08d84c22ch
+dd 0085a71c7h
+dd 035b085e8h
+dd 0af4871f5h
+dd 0ed4356dah
+dd 02055a650h
+dd 00020f70bh
+dd 0aad886d7h
+dd 093a0bac4h
+dd 0d90ee3a2h
+dd 0dadeec9fh
+dd 0931a9fa2h
+dd 0604c7c24h
+dd 0479d3c84h
+dd 04bf69784h
+dd 0bac89630h
+dd 0348f872fh
+dd 097b2865fh
+dd 00825f622h
+dd 049453901h
+dd 0361c24fah
+dd 0957d75aah
+dd 0a6a8744ah
+dd 0cbe800a0h
+dd 04c529493h
+dd 06d4fc2dfh
+dd 00e1b9a5ch
+dd 072751dfbh
+dd 0f901c203h
+dd 0f6628a12h
+dd 0791ac3d1h
+dd 0a9e565ach
+dd 06a02862ah
+dd 021a8bc06h
+dd 023b944f6h
+dd 04522f020h
+dd 0533274b9h
+dd 05fcd4831h
+dd 065cec700h
+dd 0099afc5fh
+dd 07dacd9b7h
+dd 01d078c0dh
+dd 06d5205e2h
+dd 02672f7fch
+dd 031ea8e44h
+dd 0822c2653h
+dd 0752e405fh
+dd 0a8e1dc35h
+dd 016a0be2ah
+dd 05acb90eeh
+dd 061aa798ch
+dd 01d2889d5h
+dd 0503341e2h
+dd 0b5e80c51h
+dd 025fd7c81h
+dd 0d75cfe32h
+dd 05f267adch
+dd 0139b7f26h
+dd 03277781bh
+dd 0b8312bc8h
+dd 018db01bdh
+dd 07d8bcb5dh
+dd 0f24fd0dbh
+dd 0a4b86e49h
+dd 0c0398d34h
+dd 06cbdb343h
+dd 0a1a88370h
+dd 0d78fb249h
+dd 06902bfdah
+dd 02c5f875ah
+dd 00fe86855h
+dd 08445c8c1h
+dd 0f99a3c34h
+dd 0b56fc6d5h
+dd 044940f9fh
+dd 09ea3d19ah
+dd 0ec9cdbdah
+dd 0c92733a6h
+dd 0b619622eh
+dd 0c17a62b8h
+dd 0703105dbh
+dd 0536e3c3bh
+dd 0c0433093h
+dd 0ed3e5ec4h
+dd 002e8145ah
+dd 0fed183fdh
+dd 052941a8eh
+dd 0ef8de681h
+dd 0e97819e1h
+dd 0c688c700h
+dd 031ec6aach
+dd 05a98b895h
+dd 098166609h
+dd 0c988a3c3h
+dd 0dea6c52eh
+dd 02c7123adh
+dd 0b78ca0feh
+dd 073891f38h
+dd 0ef8bc773h
+dd 0d6bcebdfh
+dd 02d786ce3h
+dd 0721fd315h
+dd 04b730038h
+dd 051fd027bh
+dd 0d5590151h
+dd 0f7e63209h
+dd 099897c29h
+dd 09dfee55bh
+dd 029c781efh
+dd 0573de164h
+dd 0560b2fa6h
+dd 044702e65h
+dd 01fe7f9f5h
+dd 0d6878ba0h
+dd 0a22d80c9h
+dd 0c872fc3ch
+dd 04a450e4ah
+dd 018f6889ch
+dd 070077ea2h
+dd 0c4672e26h
+dd 032390ceah
+dd 0d6dcc145h
+dd 0290d2c82h
+dd 09bf8c905h
+dd 032098437h
+dd 0981aaf67h
+dd 07982e9ach
+dd 0059ed2a3h
+dd 08cbf8d59h
+dd 01c50c8a6h
+dd 02e50083dh
+dd 0ff19e2b6h
+dd 0c1414508h
+dd 00d890d75h
+dd 081f6e061h
+dd 0ff0bf957h
+dd 0aeb3ee8dh
+dd 09eb3cfb6h
+dd 0a6f06758h
+dd 0a1ce4a9fh
+dd 07bcbfcfah
+dd 056f4fa82h
+dd 0a55956c6h
+dd 078f92654h
+dd 054a78d75h
+dd 0e6ee144ah
+dd 08a1f0bcfh
+dd 01c41e8f4h
+dd 0c145ace2h
+dd 023fd0f99h
+dd 0faa1e402h
+dd 0b16ede8fh
+dd 033a32626h
+dd 006e6ff76h
+dd 0e1557628h
+dd 0c930b618h
+dd 025f45ed4h
+dd 062b88407h
+dd 0fa0d1088h
+dd 09d65e410h
+dd 0d650b06ah
+dd 01c4ad8dbh
+dd 070faae2ah
+dd 0db13066eh
+dd 059a56d68h
+dd 0adce63b0h
+dd 0264e5d4eh
+dd 05a2d4cdch
+dd 0fb86d35dh
+dd 048fce2e7h
+dd 037b5eeaah
+dd 0812d3db8h
+dd 065ecfcc1h
+dd 0e383b579h
+dd 0f8dfb1bfh
+dd 072cf451bh
+dd 0ca6addcah
+dd 0640da822h
+dd 041faac43h
+dd 0e52b054ah
+dd 0f6406509h
+dd 02d360a56h
+dd 07e81950ch
+dd 0db3935b4h
+dd 0fa8df83bh
+dd 09264a32ah
+dd 0258101a2h
+dd 0c31d06d7h
+dd 05959ef17h
+dd 001fbc960h
+dd 06613626fh
+dd 024342bc8h
+dd 0cafbeda8h
+dd 0e79fd7fch
+dd 04915f6bdh
+dd 0da443984h
+dd 0c27a1c22h
+dd 0b174ce1bh
+dd 08064b620h
+dd 07d600642h
+dd 045bfb83ch
+dd 072a200e6h
+dd 0ae24dde5h
+dd 0795d1e62h
+dd 0c8de8280h
+dd 0fa78e3efh
+dd 0e3c3b1a1h
+dd 0edde9dbah
+dd 023abdd1eh
+dd 084fc9137h
+dd 08de78e01h
+dd 0705cea5bh
+dd 0c973cc23h
+dd 028ce71b5h
+dd 0255b626fh
+dd 028b12307h
+dd 0de971939h
+dd 0ca952636h
+dd 04ca52146h
+dd 0f10c4001h
+dd 0ce433845h
+dd 03e71c2bdh
+dd 030fade7eh
+dd 0884942e6h
+dd 084a1db7ah
+dd 0ae25c3e5h
+dd 055948f25h
+dd 0d126e0bch
+dd 068262cd2h
+dd 0b0e16fdeh
+dd 034b49b14h
+dd 0c6be8f5ah
+dd 0bae91cf6h
+dd 079008600h
+dd 03cd8d1a9h
+dd 0b750e5e8h
+dd 0002761fch
+dd 01b036910h
+dd 02add636fh
+dd 0c035a51ch
+dd 0814af297h
+dd 0caaa2bc1h
+dd 0c522e208h
+dd 0b786f64fh
+dd 029301c8fh
+dd 08b0724fdh
+dd 075e38ac6h
+dd 0faed94bfh
+dd 030898caeh
+dd 0cdb9fdf6h
+dd 03f6237b8h
+dd 0cf790384h
+dd 0686cf16ch
+dd 0cbe8622ch
+dd 01c87d222h
+dd 0468c06f7h
+dd 02493ef04h
+dd 0c084a3cah
+dd 0bb232ea0h
+dd 0d14cf6b8h
+dd 0eee4a6c8h
+dd 03fef2419h
+dd 01bf07b7dh
+dd 009fda77eh
+dd 0af2008dbh
+dd 0401f49ddh
+dd 097fbe5dah
+dd 03852fa59h
+dd 0d7e59a9ah
+dd 0bdc336e6h
+dd 04b1d03cch
+dd 0bc945821h
+dd 0be6a906bh
+dd 0da22b324h
+dd 0e99b0b8eh
+dd 05e27ab28h
+dd 054933eb9h
+dd 0018cdf07h
+dd 06d31214fh
+dd 009cf9078h
+dd 0b44d4648h
+dd 06fc2ad03h
+dd 03ffa1660h
+dd 0a8bed62fh
+dd 05d462735h
+dd 0179b3472h
+dd 0be2067b4h
+dd 00e4f8fbbh
+dd 00477ec47h
+dd 0d6b65b37h
+dd 0362475f1h
+dd 010e23819h
+dd 0511c2e64h
+dd 05d2980dah
+dd 0b6391a9bh
+dd 05872cb42h
+dd 0fc02a755h
+dd 05160eb00h
+dd 06c1732fch
+dd 09694ba77h
+dd 0134d1824h
+dd 0849b646eh
+dd 04f08b7e7h
+dd 0f7271f22h
+dd 0591c20c3h
+dd 043cf270fh
+dd 051517d7ch
+dd 02be2b05eh
+dd 020b75dceh
+dd 020d30194h
+dd 07118b067h
+dd 049683879h
+dd 0fa20fd87h
+dd 0b30c6ab9h
+dd 0466bae74h
+dd 06eae9cf5h
+dd 01e307768h
+dd 03c17cf38h
+dd 0f215d14dh
+dd 0dddbc8dah
+dd 06ab133f0h
+dd 0182675f7h
+dd 099583cc3h
+dd 0e7d6ec64h
+dd 06207457ch
+dd 07cf69512h
+dd 0b2c5dc06h
+dd 01334f75ch
+dd 089559453h
+dd 0eba4a69eh
+dd 0e3bf1793h
+dd 01c513da6h
+dd 0f34ffa37h
+dd 047cbfa78h
+dd 04966d7dch
+dd 0d5a698d1h
+dd 000044728h
+dd 089ac0e63h
+dd 032f406d6h
+dd 013b69ec0h
+dd 082602b2ah
+dd 07640423ah
+dd 0d6db87f8h
+dd 0032197a2h
+dd 0e13b7c25h
+dd 0d485e326h
+dd 08d0d6261h
+dd 0c2b757e4h
+dd 0dd195752h
+dd 00e61a2f2h
+dd 0674d9a29h
+dd 0fea434ceh
+dd 0100f00beh
+dd 027e0e700h
+dd 0608dd811h
+dd 0e9fbabefh
+dd 05b5b9ac7h
+dd 087c0bd71h
+dd 06f8b0d12h
+dd 0eb4b7591h
+dd 0cdb117b0h
+dd 008751592h
+dd 02e408590h
+dd 0c4f51ed3h
+dd 0be42dea9h
+dd 01a28bc96h
+dd 0e3e53321h
+dd 00d815d2bh
+dd 016fd2fe9h
+dd 02e604020h
+dd 02898142ah
+dd 0401abf62h
+dd 0189f24b7h
+dd 08e4c8b43h
+dd 06ccffddch
+dd 0d4e86654h
+dd 0207ddf79h
+dd 04eda10eah
+dd 01a414435h
+dd 0fe0eee03h
+dd 0172a5b2eh
+dd 0221fb3c8h
+dd 025e9e910h
+dd 01862b7cbh
+dd 0a667bcech
+dd 026b6df52h
+dd 02b41658eh
+dd 0db3926c4h
+dd 05ef14f45h
+dd 0ec1d5e58h
+dd 089e5233bh
+dd 0ecd39e96h
+dd 06226759eh
+dd 0612bf63fh
+dd 0053a44b5h
+dd 0494a465bh
+dd 0498c24f3h
+dd 05234e9fch
+dd 0e8c658e7h
+dd 0b00ace56h
+dd 040cad084h
+dd 0b76faf47h
+dd 0c04f01eeh
+dd 01a2bde81h
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679907.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679907.inc
new file mode 100644
index 0000000..b6a7afd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679907.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 000000907h ; Patch ID
+dd 011142015h ; DATE
+dd 000030679h ; CPUID
+dd 01bb67b21h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000907h
+dd 000000000h
+dd 000000000h
+dd 020151113h
+dd 000003201h
+dd 000000001h
+dd 000030679h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 09ff20397h
+dd 05cd6681ch
+dd 058f8151fh
+dd 0f4374211h
+dd 072d1f8feh
+dd 09d5a3b36h
+dd 0719e3d4ch
+dd 0a068ff13h
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 06772e846h
+dd 065b29d7ch
+dd 0e524c84ah
+dd 0c553ed94h
+dd 081bf1b4bh
+dd 0a84d1a24h
+dd 066d8c5c3h
+dd 0ed6e6d18h
+dd 092501ebah
+dd 07c67193dh
+dd 07d6fb582h
+dd 006d5d495h
+dd 0b2bfcbdch
+dd 078e96bdch
+dd 064be6d41h
+dd 022ce91e5h
+dd 036769802h
+dd 076828544h
+dd 09a72e3fbh
+dd 07f7642eeh
+dd 09f6315b4h
+dd 0729b95bch
+dd 0ec9b91a6h
+dd 0c5d0e2b9h
+dd 09ce3b12fh
+dd 00ae2ba1eh
+dd 01ae23c9ah
+dd 00622f7ebh
+dd 03cd72040h
+dd 0ff4c6792h
+dd 08d7b60bch
+dd 0c08d8d48h
+dd 035f4d6d1h
+dd 01ceee339h
+dd 07850d61eh
+dd 0887a7d96h
+dd 03b9f1baah
+dd 0fe8b2438h
+dd 0b2aea0b8h
+dd 0fb348e3bh
+dd 0e548dd86h
+dd 032747d88h
+dd 0af3f3a3ah
+dd 0026255ech
+dd 057e4eb50h
+dd 0bfb97676h
+dd 0b00446e8h
+dd 07ea126cbh
+dd 05540c952h
+dd 018d6396bh
+dd 0dc632da8h
+dd 0fdca83f5h
+dd 04e7d1032h
+dd 0e8aed571h
+dd 0f25659adh
+dd 017e858adh
+dd 0b362dab6h
+dd 0323ed666h
+dd 0c73ba100h
+dd 0633e2371h
+dd 09df76e32h
+dd 066f93c2eh
+dd 03088b092h
+dd 03e3bbe42h
+dd 0d50599d4h
+dd 0726a8b63h
+dd 0bf8caabeh
+dd 0f8a0285fh
+dd 08d5710ffh
+dd 013d2a259h
+dd 000bc1929h
+dd 07c8c3961h
+dd 0e365082ah
+dd 08229a4f1h
+dd 08449e2a1h
+dd 0c6d63422h
+dd 013a0a9d6h
+dd 0470c7479h
+dd 02051cd56h
+dd 09e27bbc4h
+dd 019157d70h
+dd 05d44b033h
+dd 014e63baeh
+dd 09c5c3d3ch
+dd 0a915b16eh
+dd 0bd5c2d4ah
+dd 072827158h
+dd 092ac01eah
+dd 03e8d6e8ah
+dd 05a31c4adh
+dd 04501bac6h
+dd 0ac3a3652h
+dd 05ebc6049h
+dd 0826fa656h
+dd 0e9ea06dbh
+dd 035c1f5bch
+dd 0a83995d5h
+dd 06fc5687bh
+dd 09cbe98e2h
+dd 09ac1c38ah
+dd 0eafb2839h
+dd 0abf2724ah
+dd 072ec32beh
+dd 034b92859h
+dd 028ff566bh
+dd 08ec7f2c8h
+dd 0ee68d197h
+dd 010193843h
+dd 04e4292a5h
+dd 0a8e04ab1h
+dd 0a824f746h
+dd 03b97d8deh
+dd 0a200919fh
+dd 0b6b2cbd7h
+dd 07371b52dh
+dd 0ffd77f21h
+dd 087305fa8h
+dd 02e19239eh
+dd 0310f8affh
+dd 0bfddf186h
+dd 02deae0cah
+dd 0a19105cdh
+dd 027387310h
+dd 010f05817h
+dd 08db4bf38h
+dd 0d480ecc0h
+dd 09476493ah
+dd 04a7b2ce8h
+dd 02a8a1af2h
+dd 06f86bac4h
+dd 0d8be8fc8h
+dd 0f8a0e9e0h
+dd 00867ba60h
+dd 0cf95fe73h
+dd 01fb5fa46h
+dd 00fc834abh
+dd 033bd06cdh
+dd 0b53ae2deh
+dd 0535640bbh
+dd 0e8d74879h
+dd 0193e7188h
+dd 0457650f3h
+dd 08e93cfc6h
+dd 0edf290a6h
+dd 0af3e60a1h
+dd 01a8d6871h
+dd 057a0c92fh
+dd 035d68834h
+dd 082aa8e5fh
+dd 0bec43a5ch
+dd 0698f5ae1h
+dd 09e722104h
+dd 0b0bf7dfeh
+dd 072c6b65fh
+dd 06d9cc599h
+dd 0b89aeb2fh
+dd 0041a830eh
+dd 0eb418a1ch
+dd 063a9bde3h
+dd 04731c5cah
+dd 0bb54a1e6h
+dd 01582d41dh
+dd 02ed6fee0h
+dd 06322bcd0h
+dd 0125f0d82h
+dd 0f49ddfc3h
+dd 0688a975ch
+dd 075d2a6d4h
+dd 0d62575aah
+dd 0a5917c9eh
+dd 01f6105adh
+dd 0ec96a88fh
+dd 02c2d009dh
+dd 04200f506h
+dd 0cc735cb0h
+dd 0f3a66223h
+dd 0ad87dbb1h
+dd 00c39082eh
+dd 083d127b8h
+dd 097fc59bah
+dd 096597f9ch
+dd 0b945665ah
+dd 0b21ff57fh
+dd 0552b8b5fh
+dd 07d3ed0bdh
+dd 0c6d87e0dh
+dd 035dd6804h
+dd 02c33324ah
+dd 0d6f92afch
+dd 07647a133h
+dd 0a78d0b5ah
+dd 0c3a178d2h
+dd 032dff4d3h
+dd 096ce6ef0h
+dd 04474bf08h
+dd 0fc7610ebh
+dd 04c60c67ah
+dd 0a9a11088h
+dd 094009264h
+dd 06b35680eh
+dd 0303775efh
+dd 0c3905a9eh
+dd 0cfc050d0h
+dd 06813c180h
+dd 0eb4d3337h
+dd 0cb8b759ah
+dd 07f67506ah
+dd 0a5cb91e0h
+dd 0204d575eh
+dd 0da8607ceh
+dd 0a78cace8h
+dd 064c38cb0h
+dd 00dec9d59h
+dd 0c1905075h
+dd 0a182b8deh
+dd 0b9e341dbh
+dd 00a55ea5bh
+dd 0e6cf8f58h
+dd 0a6fd472fh
+dd 04057533ch
+dd 0a1f71eb0h
+dd 091833141h
+dd 0aade7395h
+dd 0be9c043bh
+dd 0ca8b4abah
+dd 0900a0fc7h
+dd 011d053e3h
+dd 0ae3c4979h
+dd 01dd61bb4h
+dd 056d573bbh
+dd 0ac7bfe08h
+dd 0684921d8h
+dd 0585cfda6h
+dd 0263e0fb9h
+dd 008f37473h
+dd 0b76fd6d9h
+dd 02288db23h
+dd 001771f1bh
+dd 0367c55bbh
+dd 0733d57d8h
+dd 0a7afcfach
+dd 075db5c24h
+dd 0a4e633d6h
+dd 013ce3c62h
+dd 079131bffh
+dd 071b38e06h
+dd 0da1f4b63h
+dd 0f587d188h
+dd 0cd4c52c7h
+dd 0f97f904fh
+dd 0c69eed65h
+dd 095f9f990h
+dd 071e6e5ffh
+dd 0ffe678eeh
+dd 06857aa48h
+dd 0d401541dh
+dd 037591276h
+dd 06b9f82dah
+dd 0abf66670h
+dd 066996535h
+dd 05029bf59h
+dd 0c39431feh
+dd 0ec28e993h
+dd 06a82ea94h
+dd 00e242f25h
+dd 0383129f8h
+dd 0a1569cbdh
+dd 0696d976dh
+dd 00bbbc200h
+dd 050fae2efh
+dd 0d2918371h
+dd 0486585c2h
+dd 0dc8537bah
+dd 0b78b4f59h
+dd 0a0e0a332h
+dd 0df9cacd4h
+dd 0c43eeebdh
+dd 0c5d61e0ch
+dd 0ddb1d25ch
+dd 0e8afd89bh
+dd 0fab89855h
+dd 00f709988h
+dd 07912b1e5h
+dd 0f5efc16bh
+dd 0cd8b4881h
+dd 00fbd6600h
+dd 0c241a081h
+dd 032dbe1b8h
+dd 0100df0d6h
+dd 029f9c953h
+dd 0067453bfh
+dd 0b9750ee9h
+dd 02a544628h
+dd 0841211f8h
+dd 0258d446fh
+dd 0443c30b9h
+dd 0be77ce73h
+dd 0f6879131h
+dd 00184a32fh
+dd 05c51e16ch
+dd 09b810a88h
+dd 0d97b8ff1h
+dd 004e37549h
+dd 0680a537fh
+dd 0fe0953a1h
+dd 05fcf2c5dh
+dd 0b28813fah
+dd 07c2ebc5ah
+dd 0968250d7h
+dd 07f02ab90h
+dd 02500d01eh
+dd 01939ad67h
+dd 0cb910104h
+dd 0ca50276fh
+dd 0da231e37h
+dd 0f2e19c21h
+dd 05f68942ah
+dd 01aa131f4h
+dd 06c913a8fh
+dd 01dd0ad83h
+dd 062c1b715h
+dd 038a6fbc5h
+dd 0261623c9h
+dd 0eb4141c4h
+dd 0381876ebh
+dd 0d31060f5h
+dd 0640b37edh
+dd 01f295c3dh
+dd 06d139d36h
+dd 08f56eb64h
+dd 004fbc2f0h
+dd 0fc08c91ah
+dd 0ecda6752h
+dd 00b7cb772h
+dd 09820d79bh
+dd 014595090h
+dd 0e030b10ah
+dd 065ccd4e9h
+dd 019a14138h
+dd 005781049h
+dd 09b8a4d10h
+dd 0b4328494h
+dd 0b4acd9a4h
+dd 0db8b7001h
+dd 0757b8633h
+dd 0f463ed77h
+dd 0dfd6596ch
+dd 01690f86fh
+dd 01fd540e1h
+dd 04db655fdh
+dd 0d20e262fh
+dd 0d07bb9f5h
+dd 0708b274ah
+dd 05235bcfeh
+dd 0c7b72a40h
+dd 0333e561ch
+dd 0843106deh
+dd 0b162e832h
+dd 07d9efd56h
+dd 0a320c38ch
+dd 028d61a38h
+dd 0ae536073h
+dd 000354d8ah
+dd 03482f59ah
+dd 01c384f9ah
+dd 0a8cd4924h
+dd 0ab08dc8bh
+dd 0f16528e0h
+dd 0994138e5h
+dd 08d798dbch
+dd 0be39756eh
+dd 076043dbch
+dd 0ee350d7eh
+dd 024bef88bh
+dd 024f1a1feh
+dd 0bf0036c9h
+dd 024155e05h
+dd 05c692e4dh
+dd 01dbea48ch
+dd 0d14965f5h
+dd 06ea610b6h
+dd 01d4f64f9h
+dd 0c71fc272h
+dd 0f4685c32h
+dd 05d99467eh
+dd 0b494e498h
+dd 096370fb8h
+dd 0b08ba563h
+dd 0cc8d91c0h
+dd 03dece190h
+dd 0bc69da02h
+dd 02c3cd048h
+dd 0d710f050h
+dd 0efc8334eh
+dd 0fcba6838h
+dd 003b2bba1h
+dd 0d0fa9869h
+dd 054e8c169h
+dd 0a8c561ddh
+dd 0435cae1eh
+dd 0f6245a32h
+dd 0271ccdcch
+dd 020176c28h
+dd 0870bb9e4h
+dd 054579daeh
+dd 01b5cd835h
+dd 0717cea6dh
+dd 02d618f52h
+dd 019e0c87bh
+dd 020a55445h
+dd 0b124f206h
+dd 00e6a958fh
+dd 0dbbd4634h
+dd 05b66e305h
+dd 06de28bf7h
+dd 02b3287fch
+dd 0f80918edh
+dd 09e4c0bb0h
+dd 0021b73adh
+dd 0b01bcc36h
+dd 074e2563eh
+dd 03a88efe1h
+dd 0cfc2c607h
+dd 0a95d0586h
+dd 06d2b3db4h
+dd 0d130405eh
+dd 01909a6b4h
+dd 04c5512bch
+dd 0d24d1f0ch
+dd 0beeefe1ch
+dd 021eb211ch
+dd 0652e7132h
+dd 032d29147h
+dd 0cb3b5de3h
+dd 0b52996e0h
+dd 00c7fa034h
+dd 0c1cf2042h
+dd 053e3b5f6h
+dd 07ba7db1dh
+dd 098eb9c1fh
+dd 033dbf178h
+dd 0d5dc4496h
+dd 0b97b09afh
+dd 0bd836a06h
+dd 077ecbadeh
+dd 05422c8f2h
+dd 08770dc29h
+dd 0d08a78beh
+dd 02c777963h
+dd 0f09ff310h
+dd 0b5583422h
+dd 01a30d528h
+dd 03fce4cd7h
+dd 0e36f5addh
+dd 0fce10784h
+dd 0b84d7d3ah
+dd 07df8e002h
+dd 00b33c1c3h
+dd 0f290492ch
+dd 0ca5c7350h
+dd 02f5de4b9h
+dd 076c2c863h
+dd 068510bfeh
+dd 00d35547ch
+dd 0935cb00ch
+dd 0b17f24eeh
+dd 010c6a240h
+dd 05a0fa022h
+dd 0a61d4ddbh
+dd 08fa88620h
+dd 09631fad9h
+dd 0c7b14c9dh
+dd 00a0fd459h
+dd 0be9422f5h
+dd 00f5d8dbch
+dd 07e8bd9eah
+dd 0dcf31fd3h
+dd 02c63324eh
+dd 0536683b9h
+dd 0e327e2eah
+dd 0f74c331eh
+dd 08791eee5h
+dd 0d85d9d47h
+dd 0a833f7adh
+dd 0efa7c012h
+dd 0497230e8h
+dd 010f2728dh
+dd 071e23633h
+dd 0a02dc1bch
+dd 0292ed5b8h
+dd 0ae464ae9h
+dd 0b4aa2659h
+dd 0809d927ah
+dd 0d9dcac60h
+dd 05e693190h
+dd 006472476h
+dd 05b99c348h
+dd 06c96f917h
+dd 0f0301a3ch
+dd 02da4c050h
+dd 07865e54ah
+dd 0abd4811ah
+dd 02ec89513h
+dd 066c392dfh
+dd 0ac88a190h
+dd 04936f8e2h
+dd 06d679656h
+dd 0a97b507ah
+dd 0abe0f045h
+dd 0bba9682dh
+dd 04e0bd565h
+dd 07cfa84a6h
+dd 0354aa063h
+dd 0ede4730fh
+dd 04cda5918h
+dd 0aafe2d24h
+dd 05f81a2ffh
+dd 0a2ffe504h
+dd 00c5dd530h
+dd 055bc9b55h
+dd 06a718be6h
+dd 0a507cb7dh
+dd 03ec4d3b1h
+dd 042c11b5bh
+dd 008656577h
+dd 0a7d2035fh
+dd 0861cc213h
+dd 04af78b00h
+dd 0f1bbf5e2h
+dd 0bea9e8aeh
+dd 0423dd39bh
+dd 0bda85a43h
+dd 08d958f9eh
+dd 06d567a4ah
+dd 0b456235bh
+dd 0c74fe34bh
+dd 0f7873fach
+dd 0fefb2075h
+dd 0fe4a1f35h
+dd 00d6a4767h
+dd 0888ed164h
+dd 0709dbd71h
+dd 0b6e4a29dh
+dd 0c011c6e7h
+dd 03cf109f0h
+dd 01986b98eh
+dd 0bf2cc274h
+dd 0ce409ffeh
+dd 09c4c8623h
+dd 07b77d7a0h
+dd 0f8bc87ffh
+dd 00b3b2ee4h
+dd 055e87f9ch
+dd 0f35c36fbh
+dd 00070e80ah
+dd 061845539h
+dd 022e97f5ah
+dd 06c61fb52h
+dd 0e86aee1dh
+dd 00c550c43h
+dd 02a53300ah
+dd 049314087h
+dd 0c5a408b7h
+dd 066f41fcch
+dd 0a959cacfh
+dd 0bdb043d7h
+dd 084f4e0a7h
+dd 0dde37e6eh
+dd 0e419f9d5h
+dd 059fc1590h
+dd 0fd66b539h
+dd 0ca253fddh
+dd 04167fc8dh
+dd 018d97991h
+dd 088d308cfh
+dd 058b023e5h
+dd 0e907440ch
+dd 03862ae25h
+dd 00bcfe9afh
+dd 07a9ec29fh
+dd 03d826c23h
+dd 038dd7a60h
+dd 032fd3388h
+dd 0260dc621h
+dd 065e22d36h
+dd 003a5bfb6h
+dd 04ee427bdh
+dd 036f86b5bh
+dd 07452d3e0h
+dd 08f90e7ebh
+dd 09c6c077eh
+dd 04eeb4aa3h
+dd 0f0982864h
+dd 0071a7ec8h
+dd 0b187da9bh
+dd 046f72137h
+dd 07fecc165h
+dd 0a8e80a3dh
+dd 008b01531h
+dd 0a6561acbh
+dd 0046da7d1h
+dd 07f1bcdfah
+dd 04a7453e5h
+dd 0332c7f05h
+dd 0ffeeca13h
+dd 084589c20h
+dd 08d1b21c3h
+dd 0d2818c5ah
+dd 00ccc591eh
+dd 0602fb4e7h
+dd 068c00f51h
+dd 05dfa00d2h
+dd 001321923h
+dd 0e04f531eh
+dd 0b83720cfh
+dd 0fcd46b6bh
+dd 0c3948e3eh
+dd 08ad3e1dbh
+dd 071587d59h
+dd 0e12901ech
+dd 05394beb3h
+dd 0f2f900a4h
+dd 0f99fe16ch
+dd 0f9879125h
+dd 08b70ec24h
+dd 013f4c55fh
+dd 069897c84h
+dd 0ec3fcf9fh
+dd 0ab18ff0ch
+dd 08da7ef4ch
+dd 0046a2635h
+dd 03318e8beh
+dd 0584f6332h
+dd 0dcc8a7c9h
+dd 0e7284f61h
+dd 0e1acd54dh
+dd 02602fc15h
+dd 0a54a8b3fh
+dd 056606005h
+dd 0f1a3b5bdh
+dd 0b9101e85h
+dd 0e553602ah
+dd 08561f96dh
+dd 08ccfd92ch
+dd 044148de2h
+dd 0ea9dd708h
+dd 0611eda18h
+dd 0fc5099b5h
+dd 099c6c8bbh
+dd 02e9743aeh
+dd 0dd230092h
+dd 0a78c0013h
+dd 01769b354h
+dd 02cbb5aa3h
+dd 02b4b98d4h
+dd 0d6836060h
+dd 0bbda494eh
+dd 09da52b37h
+dd 0b47b0f38h
+dd 0601286ebh
+dd 0b538057fh
+dd 08e4969efh
+dd 0b8c8ba83h
+dd 097d64423h
+dd 08b9a784fh
+dd 057b0982dh
+dd 03cee944eh
+dd 0ee7f3d98h
+dd 0469be4aeh
+dd 0cc7dde00h
+dd 07828c594h
+dd 054379e6fh
+dd 0b9b9f4aeh
+dd 019ee466bh
+dd 0e40fb1ddh
+dd 09042d20dh
+dd 0af08f708h
+dd 09be3b23fh
+dd 009e9ac3dh
+dd 054878384h
+dd 0b09b1494h
+dd 074b85923h
+dd 01f22094eh
+dd 01df86ea5h
+dd 0799c6f08h
+dd 0018c330dh
+dd 0f71ba9b2h
+dd 0896c4daah
+dd 0e76999f4h
+dd 0b89e506ah
+dd 024c19e80h
+dd 02a3d5671h
+dd 0bcff7d2bh
+dd 0bf34b35bh
+dd 08dceeb18h
+dd 0674c433eh
+dd 0c8d40449h
+dd 009d233d2h
+dd 0bad23ccah
+dd 08588617ch
+dd 07bce8cf6h
+dd 0f5bfad35h
+dd 0483d1ef6h
+dd 004aeb34ch
+dd 01a2020aah
+dd 09615496fh
+dd 03845930bh
+dd 0f105a616h
+dd 09cc3df57h
+dd 0dfebce7ah
+dd 0672f08b6h
+dd 02b7e6bc3h
+dd 0533f2f59h
+dd 051f83ceeh
+dd 05f17ec76h
+dd 04d3bc7abh
+dd 074d96d8dh
+dd 0e5dd41cah
+dd 05e50ab74h
+dd 0c1f4158ch
+dd 044aa419dh
+dd 0d2a58fcch
+dd 05e4670a5h
+dd 0c630b6bbh
+dd 0067e97fch
+dd 05e77b1a8h
+dd 019c54d1fh
+dd 041dababah
+dd 0d7fab291h
+dd 06b563511h
+dd 0f9527656h
+dd 05e950f1dh
+dd 0dcc2c457h
+dd 0a4d50b66h
+dd 08729c959h
+dd 0ff5a699dh
+dd 0a2c7aa88h
+dd 098853020h
+dd 07e99128eh
+dd 01b18c529h
+dd 03924ae53h
+dd 015d06278h
+dd 032cc2616h
+dd 0b05ef910h
+dd 05ef225bbh
+dd 0ba41b203h
+dd 0d57bdc9bh
+dd 0506010f6h
+dd 0834715f5h
+dd 01f5280e0h
+dd 0cc861e06h
+dd 0e916cab2h
+dd 04b0a5f91h
+dd 0c925438fh
+dd 0c52a5f1ah
+dd 00b5276c9h
+dd 0ca7c71e0h
+dd 06be7c65ah
+dd 08df4621fh
+dd 0e4761ef3h
+dd 06b143a8ch
+dd 02d8c7dc8h
+dd 051e7de8dh
+dd 009dbf48bh
+dd 0d886a6d2h
+dd 09cb516f2h
+dd 0cbcf1e91h
+dd 0112c8465h
+dd 06b6a0e63h
+dd 02e5e9848h
+dd 0e5bc949eh
+dd 0afafb25ch
+dd 0f65e1de3h
+dd 04c070678h
+dd 055bf4477h
+dd 0bfa65513h
+dd 0be658838h
+dd 0b300d9b9h
+dd 011ce2beah
+dd 04d8c22d0h
+dd 0f1d56d81h
+dd 0904065b3h
+dd 04062296ch
+dd 049a15659h
+dd 0c4722640h
+dd 0a70e8342h
+dd 0efa39980h
+dd 0242d0d1bh
+dd 06b0b18c4h
+dd 023bf2822h
+dd 01127d16ah
+dd 0de1116b4h
+dd 0e6b9c834h
+dd 0bbbd01e3h
+dd 0df505e49h
+dd 064289d80h
+dd 0334c42b3h
+dd 098f49973h
+dd 0d2391bc9h
+dd 0007bc4feh
+dd 0d330222ah
+dd 06c1d3461h
+dd 0fb5ea7e7h
+dd 0d7e4ed8ah
+dd 0f4f70cb2h
+dd 00209effbh
+dd 058ef5944h
+dd 0ab457419h
+dd 0a0713ea0h
+dd 04e7bf625h
+dd 0c9d1fcddh
+dd 08a38f452h
+dd 02074f75ah
+dd 0185bfe8fh
+dd 069ce9fa2h
+dd 0e6600abbh
+dd 0d93a3b37h
+dd 0a6190ea0h
+dd 015e5b72dh
+dd 0d9ce771ah
+dd 0179c03bdh
+dd 060544d37h
+dd 0e5a1c39eh
+dd 0844c4377h
+dd 0d9e7220ch
+dd 07361b75fh
+dd 034c44686h
+dd 0b0e749dah
+dd 0a27df403h
+dd 04babe5c4h
+dd 0925a55d3h
+dd 0b9da6597h
+dd 017b54848h
+dd 054b1c205h
+dd 06c992b6eh
+dd 009409644h
+dd 05878fe76h
+dd 07e46e8e9h
+dd 06743e51dh
+dd 0d0ab24d1h
+dd 07296ae41h
+dd 00ae71a52h
+dd 0a330745fh
+dd 044536944h
+dd 0f4ef6b57h
+dd 09d29ae50h
+dd 01f736c61h
+dd 083c04461h
+dd 04dbf32f0h
+dd 049b93c3eh
+dd 02f29ad7eh
+dd 02bc95121h
+dd 0c60847ceh
+dd 0f63ebb93h
+dd 0fff49557h
+dd 0e9d23abch
+dd 00d01655ah
+dd 04fc6960bh
+dd 006ea0ccch
+dd 0aca9e850h
+dd 0b9df2f50h
+dd 0a80ade03h
+dd 0bcc16f69h
+dd 06733c2d8h
+dd 013ac66e9h
+dd 0ea2caccdh
+dd 0223110b1h
+dd 09d802a90h
+dd 070e576d8h
+dd 03ca77c19h
+dd 04203e86bh
+dd 0afc00be2h
+dd 0408f5513h
+dd 0435f1bffh
+dd 0f968496ch
+dd 00bbb07f7h
+dd 0fc4cda2bh
+dd 0cf4cde51h
+dd 0611c36d9h
+dd 05f55fc2bh
+dd 00a4bbddbh
+dd 08f589d4bh
+dd 0024c749ah
+dd 0cddd09d9h
+dd 0fa5fa091h
+dd 049498d2dh
+dd 00595aa35h
+dd 0fa64639ch
+dd 0595e5195h
+dd 09234e6ach
+dd 045a3339eh
+dd 057c04c72h
+dd 0f549d4b9h
+dd 026850fa2h
+dd 0b831ede2h
+dd 0e8d2e9a0h
+dd 0ee65f7cah
+dd 0b6147324h
+dd 082ad1fd9h
+dd 0cf3692abh
+dd 032e15eeah
+dd 058edc810h
+dd 0e0f9fa71h
+dd 0aa7eee7dh
+dd 09b517024h
+dd 0e3d2c9d4h
+dd 05cc96cc5h
+dd 0609b1abfh
+dd 0e7f270c1h
+dd 0385850a8h
+dd 043cb3f86h
+dd 084ca0812h
+dd 09e1d7807h
+dd 0384894bdh
+dd 0d5620a46h
+dd 05232ef0fh
+dd 0ce6419cah
+dd 06eaaecfah
+dd 0c3a71253h
+dd 0cd9ec07eh
+dd 0c1644a0eh
+dd 0be79430eh
+dd 0c01b1c6bh
+dd 09e0f1747h
+dd 0565e6112h
+dd 04601d397h
+dd 0d50cdd6ch
+dd 03ec312b0h
+dd 05816d1d1h
+dd 0299a6011h
+dd 0b4624506h
+dd 0998b9c86h
+dd 08999e5f4h
+dd 0bac9fd84h
+dd 0f6bcd6ddh
+dd 019a29654h
+dd 0d59d07dbh
+dd 076674e24h
+dd 0e5afd8b0h
+dd 052ba4df1h
+dd 0d992ecceh
+dd 0a56cd673h
+dd 04291a755h
+dd 02dd94c84h
+dd 097ed9cf7h
+dd 0dcb95718h
+dd 06bd1dd9ah
+dd 0d4c287cbh
+dd 0c8c547cch
+dd 0786721f6h
+dd 0f6647304h
+dd 0e557f0a3h
+dd 0924b7fc4h
+dd 09656b649h
+dd 00b6f47c8h
+dd 0e4ca5061h
+dd 0ee56e983h
+dd 0172a9584h
+dd 0f401c032h
+dd 024c1e612h
+dd 063ed3387h
+dd 0de2266a9h
+dd 012d3972bh
+dd 054d1933ch
+dd 09f71434ah
+dd 0a8d4945ch
+dd 07d8d1389h
+dd 04d7d2859h
+dd 0a50abeb6h
+dd 0da6384e3h
+dd 061cbd50ah
+dd 0c2dcc310h
+dd 03f4049a6h
+dd 043ad3d76h
+dd 06e79e815h
+dd 028d7fe23h
+dd 0e28158c6h
+dd 0388be7cah
+dd 0a4a6bfech
+dd 062d6f4e9h
+dd 0ae7f9bb4h
+dd 0206ae3bfh
+dd 0dc34109eh
+dd 0f9726481h
+dd 03c5ecfb3h
+dd 035eb9cfdh
+dd 0385d9864h
+dd 02d46e528h
+dd 074f817e6h
+dd 09ac71c9dh
+dd 03d7e9814h
+dd 094738448h
+dd 04de596e3h
+dd 0e2379d2ah
+dd 038c0d290h
+dd 011ae8046h
+dd 02d5cb18ah
+dd 02e37e512h
+dd 02877b618h
+dd 0a855d6ffh
+dd 0a6eb0a8ch
+dd 003e7c342h
+dd 0e2636c99h
+dd 01af75f0ah
+dd 079472c24h
+dd 0ce8e0633h
+dd 08bc1ab59h
+dd 031c460eah
+dd 026a29259h
+dd 0cfdc4150h
+dd 02ce2c6feh
+dd 0096c1411h
+dd 06c90be77h
+dd 0449c8782h
+dd 0c29c1251h
+dd 0dda0a977h
+dd 0cad1683ch
+dd 022960402h
+dd 02473cb10h
+dd 045b20993h
+dd 095b8bf42h
+dd 0c4f911e0h
+dd 0c17d900ah
+dd 0e01d35c3h
+dd 003f08523h
+dd 0222ad2f2h
+dd 02d0f76aah
+dd 0bd28d638h
+dd 0d75bef71h
+dd 050741237h
+dd 0a8286944h
+dd 0d1d488bbh
+dd 08e186ef4h
+dd 0a4d24c22h
+dd 04b95564fh
+dd 0b64a6770h
+dd 04905e99bh
+dd 04582d1afh
+dd 00ce08946h
+dd 04be7d807h
+dd 059276afeh
+dd 0047084a6h
+dd 04a492570h
+dd 0217bf92eh
+dd 003bfab8ah
+dd 016adcd46h
+dd 00302302bh
+dd 097cb2da2h
+dd 06436642ch
+dd 0f5cf21b7h
+dd 02b53aabfh
+dd 082a57391h
+dd 058767c0ah
+dd 0d24baabch
+dd 0ea824c3ch
+dd 0e2ebb1c1h
+dd 0dbd50010h
+dd 0da508817h
+dd 03d217622h
+dd 06656de1ch
+dd 08e0ddbech
+dd 0480df9feh
+dd 0f1d1d4ech
+dd 0b30361a9h
+dd 0025a5c93h
+dd 055e16f8eh
+dd 05d1647d0h
+dd 06ecf0230h
+dd 0602ce59ah
+dd 07571cc62h
+dd 088ebfecah
+dd 0df0a6c82h
+dd 0a1baa54eh
+dd 023275a08h
+dd 094f9f5aah
+dd 0459d59bdh
+dd 0ab84708ch
+dd 0f1ca2affh
+dd 03002fe96h
+dd 085f2224ah
+dd 041b70e71h
+dd 02219943fh
+dd 014a02c0bh
+dd 0ec19666bh
+dd 0f278c41ah
+dd 01f46747dh
+dd 0798c6689h
+dd 059dd9e3bh
+dd 05e421cf5h
+dd 06c246effh
+dd 0ee685b91h
+dd 0512d14a1h
+dd 091994062h
+dd 0495f3f54h
+dd 0f8d57985h
+dd 0e08979f9h
+dd 0873cd298h
+dd 064933a39h
+dd 0cb2963e5h
+dd 0a4d02cf6h
+dd 02ae201aah
+dd 00ec7c65bh
+dd 0e299b41dh
+dd 025dc352eh
+dd 0a4fdd588h
+dd 0124820b9h
+dd 0e8e482e2h
+dd 0f9d344eeh
+dd 0ca74237ch
+dd 0e2fb5895h
+dd 0020cf70dh
+dd 0fbfd8ee7h
+dd 04e26af4ch
+dd 05c957e75h
+dd 05d146aa0h
+dd 0c6abb5cdh
+dd 004386310h
+dd 062f21e38h
+dd 0fd229deeh
+dd 089ed2219h
+dd 0081fc417h
+dd 06542db78h
+dd 0263c3547h
+dd 04bf541d7h
+dd 0c0e3f198h
+dd 0e1a64328h
+dd 0ff4efcb9h
+dd 03806ba30h
+dd 09dfbe2f1h
+dd 0c3038f8ch
+dd 041fa00e3h
+dd 08f4a0b2ah
+dd 088ca66aah
+dd 0c2d97203h
+dd 083321bbfh
+dd 083b87b6dh
+dd 0907f3b07h
+dd 0ab76ea90h
+dd 0373ddf7ah
+dd 0d412b494h
+dd 05e8f782bh
+dd 0cfa86fb7h
+dd 02d49e02eh
+dd 0ccb5302dh
+dd 08cb47c09h
+dd 0087e1426h
+dd 04c8857eah
+dd 0d997bbe1h
+dd 0d6b471d6h
+dd 0e65ef4b9h
+dd 07bd09e70h
+dd 0f791e789h
+dd 0ababa050h
+dd 03ba1bb59h
+dd 08dba954ch
+dd 01aaf6ff0h
+dd 0ea91ba9eh
+dd 096083a20h
+dd 0970d18e9h
+dd 0d17a742ch
+dd 0c3fdd92bh
+dd 0aacc669bh
+dd 00c731e51h
+dd 059fe4a4dh
+dd 091411d26h
+dd 0e2331f43h
+dd 047e837a5h
+dd 081dbf307h
+dd 02632550ch
+dd 0f5e7b58fh
+dd 0c5be27dfh
+dd 077f21ba9h
+dd 061eab9afh
+dd 05083c1c0h
+dd 01ed7ec96h
+dd 0843a7165h
+dd 0e0773d91h
+dd 0b7130d74h
+dd 0994352b7h
+dd 01f0bd596h
+dd 03bcc333ch
+dd 0cc3cfd1fh
+dd 0cde90f22h
+dd 00a2aff13h
+dd 022d13777h
+dd 0bd092728h
+dd 00be3aa66h
+dd 041d87825h
+dd 019aec673h
+dd 00ea0d577h
+dd 066587054h
+dd 0d0382c70h
+dd 0ab372464h
+dd 028868897h
+dd 09ef32ec9h
+dd 0c39fff05h
+dd 0e0a2e7eeh
+dd 0c449c808h
+dd 0c7882984h
+dd 0163d8effh
+dd 015e173fah
+dd 0df2e157ah
+dd 0ac1c19b4h
+dd 026ea9e0ch
+dd 0976bbb5dh
+dd 0e2c12f92h
+dd 0297b723ch
+dd 0d9a647e4h
+dd 0898042e6h
+dd 074a1c2a1h
+dd 0605db8a4h
+dd 0dfcb085fh
+dd 02f181520h
+dd 0eb5b4c75h
+dd 0e05364a0h
+dd 016384920h
+dd 030b917dfh
+dd 08dbe5bf5h
+dd 06b1128dch
+dd 0374c8b7ch
+dd 0a11dea87h
+dd 07eb16882h
+dd 034fec4d4h
+dd 0c210dfe2h
+dd 009a80a24h
+dd 0206d91b0h
+dd 04c936fe9h
+dd 0b475c18ch
+dd 079f28c47h
+dd 0acf691aeh
+dd 0441b9ce0h
+dd 04451b4dah
+dd 0a01cd56fh
+dd 07fd383dah
+dd 0df81bf37h
+dd 08c60fe52h
+dd 07173f3b3h
+dd 0d5696d15h
+dd 02bc8b912h
+dd 08900bbe7h
+dd 00d78ae01h
+dd 06cbef7e3h
+dd 0db9d9832h
+dd 024c11f97h
+dd 0108904d9h
+dd 008fe6671h
+dd 0314c72d2h
+dd 0e09625bdh
+dd 0f9d8b5f7h
+dd 0306ab7cbh
+dd 090e8bbdbh
+dd 0a8ff06e5h
+dd 0c4d83259h
+dd 0a24d06eah
+dd 0ee721c88h
+dd 0f6a91eaeh
+dd 09dc2a550h
+dd 02ff48853h
+dd 00b993b21h
+dd 078f938ebh
+dd 02a8381fbh
+dd 0ae382370h
+dd 0c0d66492h
+dd 0eaae4096h
+dd 00fee014fh
+dd 081e79fd9h
+dd 056b5e8d9h
+dd 091306535h
+dd 0a287220eh
+dd 086f8b790h
+dd 0d0debcd4h
+dd 0eb4a964bh
+dd 0621c2795h
+dd 00d86c812h
+dd 0ca926c19h
+dd 059df4e8eh
+dd 088f30749h
+dd 00259279dh
+dd 04a9a00b9h
+dd 004dfec30h
+dd 0106bf8fbh
+dd 0bc46b994h
+dd 052c75757h
+dd 03d5c6f91h
+dd 0ea80a0d4h
+dd 0ffecce7dh
+dd 057cfdc42h
+dd 0e62bae97h
+dd 0f2d85240h
+dd 00eff5cfbh
+dd 02f97b3ach
+dd 067eadb2fh
+dd 08700fd44h
+dd 056d38d2ch
+dd 0f7722870h
+dd 0ba98df5bh
+dd 01d6c43cdh
+dd 00827f44ch
+dd 08c849bbbh
+dd 084e6c7afh
+dd 0e515aee0h
+dd 0b7be77beh
+dd 08df76554h
+dd 0dec3a5a1h
+dd 037bfd1d7h
+dd 0eeab3d29h
+dd 0ff8539d8h
+dd 0e3b166b9h
+dd 098829077h
+dd 03b7814c8h
+dd 073e73bf4h
+dd 00c4e70c7h
+dd 0b0466d7fh
+dd 07bae9e1eh
+dd 07b0f112eh
+dd 0d48c3e2ch
+dd 0e4638219h
+dd 0e0bf9bf4h
+dd 02b33df1dh
+dd 005d31926h
+dd 03e084f1ch
+dd 0b2958621h
+dd 091ebe9f6h
+dd 0276fd42bh
+dd 0193e908ch
+dd 0c89dc677h
+dd 09655ad49h
+dd 064401e9bh
+dd 09e25af33h
+dd 085d857aeh
+dd 09ad6890fh
+dd 0c4213c1ah
+dd 023358dfah
+dd 09ce7e133h
+dd 0058b6a46h
+dd 05ae71853h
+dd 0a2314ca6h
+dd 09c488b9eh
+dd 012d53dfah
+dd 0fe04b519h
+dd 0ee957708h
+dd 0d719111ah
+dd 0c45dfd92h
+dd 09eb61d16h
+dd 0ca46829bh
+dd 0c764f1a4h
+dd 0b41013fah
+dd 09419767ch
+dd 0d9bfa907h
+dd 04eda6cd7h
+dd 089fd20d2h
+dd 0aba0c3fah
+dd 0bbd45fa3h
+dd 0e7193310h
+dd 0acec3c11h
+dd 0cd2d0b8ah
+dd 05b1a0039h
+dd 006303e80h
+dd 00c8a2ebeh
+dd 0a0616925h
+dd 0e427cf40h
+dd 09d792942h
+dd 0230fa314h
+dd 0d70ad823h
+dd 0b68210bbh
+dd 0c2fd2513h
+dd 0b92e0841h
+dd 0cb1b532ch
+dd 009c9c2d1h
+dd 0add5686bh
+dd 053c0cec7h
+dd 06d9d1195h
+dd 0e15ac88ch
+dd 0664420fdh
+dd 0e7b4d70dh
+dd 0b2e60d93h
+dd 0b76c38f0h
+dd 021738609h
+dd 03eed6aeah
+dd 05a9dc70bh
+dd 09e8cd8b2h
+dd 0bec57f38h
+dd 0243e4b26h
+dd 0d4b562a9h
+dd 0d9c66f6fh
+dd 0d4a9b8a1h
+dd 06312b665h
+dd 0613a3891h
+dd 071851e6bh
+dd 0552090bch
+dd 050cf53bch
+dd 09ae2e84fh
+dd 0eaf68f04h
+dd 09c947d9ah
+dd 0e6ee3ca8h
+dd 05ac8b525h
+dd 011750aa1h
+dd 049a906f6h
+dd 05616b457h
+dd 07ffe0a23h
+dd 01956d673h
+dd 0cbc91998h
+dd 02c9f60eah
+dd 021fef64bh
+dd 09120e74dh
+dd 0cafa39c4h
+dd 02d93ac58h
+dd 0394d9436h
+dd 0deac46d0h
+dd 022bc9584h
+dd 0e7e820dbh
+dd 019167d53h
+dd 024eb968ch
+dd 08cbb0d8fh
+dd 0b8b96124h
+dd 00e9c9e1fh
+dd 0cdf1580eh
+dd 076cb6e19h
+dd 08c19e97ch
+dd 03b06eafbh
+dd 0ac10d806h
+dd 0e2f2aca5h
+dd 02f824227h
+dd 01c58aa17h
+dd 0dcad14b2h
+dd 087a38d6bh
+dd 09bdd663ah
+dd 055e98aa2h
+dd 007567f34h
+dd 079265e75h
+dd 0e3c26cd7h
+dd 07780a380h
+dd 0fcef852ah
+dd 0c5632fc4h
+dd 0040c4fbah
+dd 05f07f32dh
+dd 01be319e1h
+dd 0929cc074h
+dd 01ee60d8fh
+dd 0090d1cfdh
+dd 04bf7030eh
+dd 027c53037h
+dd 01a961389h
+dd 073859adah
+dd 05506060dh
+dd 03915e941h
+dd 04154142fh
+dd 088e624ach
+dd 0c376df71h
+dd 078e788ddh
+dd 04d1582d0h
+dd 0cca187cch
+dd 069541dcah
+dd 01ed1a955h
+dd 0026449a1h
+dd 09d872853h
+dd 006031301h
+dd 09ce8b60fh
+dd 0f5d6886ah
+dd 044d6352ch
+dd 0f87d7864h
+dd 02c64da0ch
+dd 09f550d05h
+dd 0cc86d934h
+dd 0c6a0464dh
+dd 010869516h
+dd 0f0b795b0h
+dd 04a4d3442h
+dd 04dc0bcaeh
+dd 00313cd38h
+dd 0fdf55ef5h
+dd 0109e22a2h
+dd 021dd841ch
+dd 0cacd51c7h
+dd 0924d0ee7h
+dd 046c4fb7ch
+dd 004c546c3h
+dd 0d0c3d0d1h
+dd 00ff8111ah
+dd 092303d4ch
+dd 0e8080686h
+dd 04d9729c6h
+dd 09bbab736h
+dd 0664e95a6h
+dd 07723ddcdh
+dd 0e3d08424h
+dd 07d4b3616h
+dd 04fff5c9fh
+dd 0a4680b51h
+dd 0c0ff663fh
+dd 09967d53fh
+dd 00deee9e0h
+dd 08f803327h
+dd 0f962e091h
+dd 0cdba9401h
+dd 0d658077dh
+dd 06eb7c3e5h
+dd 091ca7c87h
+dd 0a6cac6b1h
+dd 0c190836dh
+dd 0021eefdbh
+dd 0c5b20049h
+dd 0d08fd4b9h
+dd 0ca4464b8h
+dd 044cf324bh
+dd 009f8529dh
+dd 0795a465eh
+dd 03fd154a6h
+dd 04abc0550h
+dd 00985f32fh
+dd 02369a090h
+dd 0ad127956h
+dd 0851810cah
+dd 0e762239dh
+dd 006d2dcf5h
+dd 097deb2d8h
+dd 0f2bfcfc9h
+dd 0b9730b85h
+dd 012e8cca9h
+dd 0c1f5891ch
+dd 025ca930eh
+dd 094729726h
+dd 015106500h
+dd 039c46a3bh
+dd 088a95424h
+dd 04edd2cffh
+dd 02a45900dh
+dd 0098a9fbch
+dd 0ddc4f193h
+dd 00a020c65h
+dd 0df379bfbh
+dd 0bd11722fh
+dd 03de1fc9ch
+dd 059b32cb0h
+dd 094b249e1h
+dd 0d678c4e6h
+dd 0e3d9a80bh
+dd 01c6b8d3eh
+dd 0369a5428h
+dd 0029e385bh
+dd 01131d792h
+dd 0243a0533h
+dd 0e89542fbh
+dd 02c641fc3h
+dd 0b1d7e6cch
+dd 09b6f2519h
+dd 00d3caf05h
+dd 0d776c846h
+dd 00a57cbf3h
+dd 0c119345bh
+dd 01a10afeeh
+dd 03a131524h
+dd 0ffd7e5a5h
+dd 090a7bfdfh
+dd 0c9acb15fh
+dd 06712414bh
+dd 0ae015ffbh
+dd 0605dc844h
+dd 0bef274f5h
+dd 0a35169edh
+dd 016962bc7h
+dd 01f0d407ah
+dd 0fdf5b1afh
+dd 04d3f6d03h
+dd 0646a4200h
+dd 052201510h
+dd 009c2fb16h
+dd 0251ab45eh
+dd 0581dd9bdh
+dd 0da93a523h
+dd 0ed9499e9h
+dd 04cc7dfe1h
+dd 03f29ce2ah
+dd 09ea2fccfh
+dd 081b99e3fh
+dd 0a14db746h
+dd 0c5dd8aa0h
+dd 0cbb34d2eh
+dd 091bd35bbh
+dd 0f07d04cfh
+dd 0c20b009fh
+dd 091d85c09h
+dd 0fd0a8b0eh
+dd 0b22d86dch
+dd 055e01d38h
+dd 09e205bfeh
+dd 093cea698h
+dd 08ac87ee0h
+dd 0e1ac2dedh
+dd 090edf6b5h
+dd 095399aa5h
+dd 03d448739h
+dd 0100b6556h
+dd 0f1018c0ah
+dd 0219c5928h
+dd 0e47f8151h
+dd 04598ac88h
+dd 0557b5d8ah
+dd 0175ba189h
+dd 00ae35704h
+dd 0ffdfcf9eh
+dd 00e29c703h
+dd 09e564cf1h
+dd 0603e9688h
+dd 08de1c57bh
+dd 0c1c05a59h
+dd 0314df329h
+dd 0de0b87d0h
+dd 02216fb58h
+dd 09a793627h
+dd 000abc620h
+dd 0c96a60fdh
+dd 00fc93159h
+dd 0aab33ee9h
+dd 0b1fdf478h
+dd 054b3c0e3h
+dd 02ecb2db0h
+dd 0b1358602h
+dd 03c418460h
+dd 0702326bdh
+dd 081b984ddh
+dd 000ccf450h
+dd 06a3ea1c2h
+dd 0d0d795f1h
+dd 0e4ac68a5h
+dd 0dacc0635h
+dd 0491e7b1ah
+dd 0d43d626bh
+dd 0b23db4d5h
+dd 025b22dbdh
+dd 03c87c05fh
+dd 0e0e0b007h
+dd 040727c8ah
+dd 06114d251h
+dd 0e0cf9ae3h
+dd 0dcd0b1e8h
+dd 08cc89c31h
+dd 01c50b0dbh
+dd 0f90e532dh
+dd 013f09667h
+dd 0e6427c8dh
+dd 0c60f8464h
+dd 03181f195h
+dd 0ee8f1214h
+dd 09476ed06h
+dd 0e1013705h
+dd 06b7013a1h
+dd 03714fa7eh
+dd 08b4088d9h
+dd 02f5fa515h
+dd 0dea62ddfh
+dd 0887863e1h
+dd 03201eba6h
+dd 0759fa4e5h
+dd 029124213h
+dd 0d658b376h
+dd 0e40c43fdh
+dd 01947b5e4h
+dd 02037374dh
+dd 083e06323h
+dd 05e36c3c7h
+dd 0a791c6d2h
+dd 082a77b33h
+dd 07be2f085h
+dd 07b0f276fh
+dd 0d67b2edah
+dd 08c4eaa86h
+dd 041a6cefch
+dd 0d1fdcf4ch
+dd 0587ea1fbh
+dd 05085f948h
+dd 0315fa87fh
+dd 0fc71f9abh
+dd 0a5d64dd2h
+dd 09b0f362ah
+dd 0ec345295h
+dd 08d235fe7h
+dd 0d73dce76h
+dd 07379cf9dh
+dd 037870cd9h
+dd 0b680aa23h
+dd 0a2454f9eh
+dd 0592de2c8h
+dd 025d5749eh
+dd 03eb4de2ch
+dd 026dddeedh
+dd 05fcab814h
+dd 0ee6b2fd4h
+dd 03f80a54eh
+dd 0bb0e2d77h
+dd 0f20f99e7h
+dd 05b7ce402h
+dd 049d1881ch
+dd 05f7543efh
+dd 0ccdd8264h
+dd 062c8a81ah
+dd 00bd39f16h
+dd 00c6019feh
+dd 084372579h
+dd 02946d961h
+dd 059388a07h
+dd 00b68d2feh
+dd 07444b18bh
+dd 01b98e09fh
+dd 057b14c0eh
+dd 0e2ddaebah
+dd 0ec1137ffh
+dd 0b4df031ch
+dd 046934fdbh
+dd 0c0a4fa67h
+dd 042a8fda9h
+dd 03b8aa0d1h
+dd 0e9f675b6h
+dd 0af32ed2eh
+dd 01d9c1654h
+dd 07e04b82ah
+dd 04738a30fh
+dd 0a5edc469h
+dd 03c71474fh
+dd 07cf18681h
+dd 08e0d8ec6h
+dd 0a92f511eh
+dd 0bdea00b2h
+dd 07958e0efh
+dd 0721f52ech
+dd 00f67b7c3h
+dd 00e6ad906h
+dd 0f9d60d83h
+dd 0e7263929h
+dd 0405c3549h
+dd 04b92fa4bh
+dd 0fb0494b1h
+dd 014f1fc4ch
+dd 0ee9bf039h
+dd 0df9e95c5h
+dd 02f3be417h
+dd 037cbb836h
+dd 02067d348h
+dd 01d2d1487h
+dd 00bc0ca4dh
+dd 0e0776a34h
+dd 051c23e83h
+dd 0b80e0a18h
+dd 06f7f82ech
+dd 0b4e589d3h
+dd 0a3663619h
+dd 0efb1de40h
+dd 0b07d28ebh
+dd 0dd2fd759h
+dd 08a1bc016h
+dd 0231af2b2h
+dd 023e7fa78h
+dd 0794b7096h
+dd 0b28efa1ch
+dd 046d97431h
+dd 0a141ebech
+dd 0d62df08ah
+dd 091ccb319h
+dd 0012b45fbh
+dd 0bf645518h
+dd 0be8acaadh
+dd 08d6fc85dh
+dd 0d052876fh
+dd 081425cefh
+dd 0433d0557h
+dd 0025dea84h
+dd 03f05d2b4h
+dd 05bc3f4d5h
+dd 08a2a7f90h
+dd 049c92e78h
+dd 0bfd73f77h
+dd 009e81db7h
+dd 07374d66ah
+dd 016290ffch
+dd 06312017eh
+dd 09f248883h
+dd 07dcf22c2h
+dd 0e023811bh
+dd 070de1523h
+dd 039cfcdd8h
+dd 0dafe8101h
+dd 097af396eh
+dd 04e65770bh
+dd 0179e0caah
+dd 067c33f86h
+dd 04cd41506h
+dd 0e6869be2h
+dd 0ff8d94a1h
+dd 093184e6dh
+dd 02329db40h
+dd 0951c9b4dh
+dd 0f5e70348h
+dd 03f92fffah
+dd 03b1c03c1h
+dd 051b4e88eh
+dd 0508c2831h
+dd 0135d82abh
+dd 0b673141ch
+dd 0ee1db408h
+dd 04e5714b7h
+dd 0da404057h
+dd 061b73d58h
+dd 09a13d2d3h
+dd 09ff3b39fh
+dd 02700cfa0h
+dd 0b8215531h
+dd 0c95c1f4ch
+dd 061b480ddh
+dd 0060846f1h
+dd 07be50a0fh
+dd 0c658822bh
+dd 051a97845h
+dd 09e1b6ac1h
+dd 08eaa7f14h
+dd 0a2c76ec9h
+dd 0cbe93dd0h
+dd 07e31f88dh
+dd 00499610ah
+dd 0b35058a6h
+dd 0f3056bffh
+dd 0925c645fh
+dd 094f969ceh
+dd 0e96a84a1h
+dd 0ca8987afh
+dd 0daa3db08h
+dd 00ca8dd08h
+dd 0d096e3e8h
+dd 0448847d9h
+dd 0bc0677c4h
+dd 092c3562fh
+dd 069ce3200h
+dd 00cb4251eh
+dd 0347ed607h
+dd 055bd4821h
+dd 06468199bh
+dd 00a795579h
+dd 0372bd5eeh
+dd 014b97b6eh
+dd 0363cfe3fh
+dd 046895fe6h
+dd 0a6ad51ach
+dd 001309baeh
+dd 09648fd5bh
+dd 0aaba045dh
+dd 0d86b4c74h
+dd 010c5d6d8h
+dd 04057d225h
+dd 05bac971fh
+dd 0a2237fc3h
+dd 04d1bfa17h
+dd 0120b30edh
+dd 008b471eah
+dd 05ed6eeceh
+dd 04d80db96h
+dd 0ae799d70h
+dd 060665420h
+dd 03421b8bah
+dd 09342d751h
+dd 0c9652ac0h
+dd 076c71e0bh
+dd 0c71fb3f2h
+dd 07740a7cbh
+dd 0e01a0c4fh
+dd 0ea667fc0h
+dd 024120f17h
+dd 0c31ecb4ah
+dd 0de9c7bfch
+dd 0ab06e007h
+dd 004eda59dh
+dd 08be77083h
+dd 0c99196c3h
+dd 0234685edh
+dd 0057ccacfh
+dd 00b702e3dh
+dd 0cbec52fch
+dd 07e1ac7f5h
+dd 04341cce4h
+dd 0b9e26491h
+dd 0d6ab7ffah
+dd 063f05f50h
+dd 081ed5928h
+dd 0ed506b77h
+dd 01ad2153bh
+dd 04e3bf0d2h
+dd 0aff31583h
+dd 0d8b96952h
+dd 03f7cbd31h
+dd 0318e9df9h
+dd 08402f77dh
+dd 0ef568956h
+dd 0b8743dbeh
+dd 015d9be8fh
+dd 0a427e2c4h
+dd 023fb9e68h
+dd 0f13f323dh
+dd 0a6e325e2h
+dd 0943afce1h
+dd 04d5188f9h
+dd 0bd6e1b16h
+dd 05ec22d71h
+dd 0e22caa21h
+dd 0d80e636ch
+dd 0bf1b9c78h
+dd 064d4dd7eh
+dd 089f8792ah
+dd 096f4c0c7h
+dd 00ce839dah
+dd 0397ac16fh
+dd 08e0341edh
+dd 0771e4942h
+dd 0fcfd9700h
+dd 026340825h
+dd 003dad50eh
+dd 03b7567a8h
+dd 0479262f2h
+dd 01382f16bh
+dd 0e64935d3h
+dd 06c8927d1h
+dd 0ba4024bdh
+dd 07d4a18bah
+dd 05c4e535fh
+dd 0ae02fe12h
+dd 0984723e5h
+dd 04873e4b3h
+dd 07aa996adh
+dd 0e45f7e17h
+dd 0c4eba062h
+dd 02e4d4df7h
+dd 023eb6726h
+dd 0806615cah
+dd 024efd6c2h
+dd 06ccd038bh
+dd 0a7d0cd65h
+dd 0027aa102h
+dd 0df735d1eh
+dd 085193d8dh
+dd 0bc244463h
+dd 01122336eh
+dd 0b59b618fh
+dd 02f90572eh
+dd 0eae118fch
+dd 0c5df2753h
+dd 0e0049924h
+dd 0d6157e6ch
+dd 017e0934ch
+dd 07826b772h
+dd 0c5a4e347h
+dd 0abb025f9h
+dd 0fe9e1b86h
+dd 050a21021h
+dd 0cc11d102h
+dd 04b26db01h
+dd 032fd8fc7h
+dd 0ef625bd3h
+dd 00965e2c5h
+dd 0b832dcadh
+dd 0b3ad8473h
+dd 0ed80dd14h
+dd 0a4c9a36eh
+dd 01e204688h
+dd 0e896f443h
+dd 07adedb18h
+dd 097de8293h
+dd 026ea7125h
+dd 059c5e173h
+dd 0fb2803bfh
+dd 0b2014ef5h
+dd 0aa9b7b78h
+dd 03daea5cdh
+dd 0dcc5f7a7h
+dd 0e0634079h
+dd 0e3f25060h
+dd 0bc7a063dh
+dd 0088234cdh
+dd 06a207ccbh
+dd 00b590fdbh
+dd 03d825605h
+dd 023fbaa9dh
+dd 00148de68h
+dd 0145c3dddh
+dd 055e03a15h
+dd 003e59a37h
+dd 068d4a405h
+dd 09d80a335h
+dd 0b6491ab4h
+dd 0f251bbbah
+dd 06be9ada9h
+dd 04e4aed2eh
+dd 0cf042e68h
+dd 0b0a3b83fh
+dd 038e8a671h
+dd 0f924196bh
+dd 072ba2523h
+dd 03c51c94bh
+dd 0c30758b9h
+dd 017c6e5c7h
+dd 00353ebe0h
+dd 0d05ee222h
+dd 056026cd8h
+dd 06a4503bch
+dd 0ce815b98h
+dd 075cf2e9ch
+dd 02d29e1cbh
+dd 0a9e1ae12h
+dd 085c6836fh
+dd 0a348e320h
+dd 055eb7695h
+dd 0faf606adh
+dd 0ea3a2936h
+dd 098b487f5h
+dd 009ebe573h
+dd 0fa5c7ed4h
+dd 00bd77993h
+dd 031a47fb8h
+dd 0081f79a4h
+dd 042d23d00h
+dd 0bc3744e6h
+dd 05a5050aeh
+dd 0ad37a3c5h
+dd 09cbf639ah
+dd 0d86db49fh
+dd 0b6d6d606h
+dd 0657c551dh
+dd 01f759ae1h
+dd 0efe15188h
+dd 020444788h
+dd 0caa5a6bdh
+dd 0d170c5e5h
+dd 0150d52bdh
+dd 04913999ch
+dd 0fb474877h
+dd 014230609h
+dd 056cdff74h
+dd 06a4944f2h
+dd 0e72f82bch
+dd 049f21966h
+dd 0d9f3ec19h
+dd 007ec5603h
+dd 087b054c7h
+dd 0b2c52c0ch
+dd 05985920ah
+dd 0acef3da6h
+dd 0a516102ah
+dd 09a57f959h
+dd 051c72aa3h
+dd 0e7560188h
+dd 085f798fah
+dd 043921f56h
+dd 0443badf8h
+dd 08696d088h
+dd 0046865b7h
+dd 0e53b731dh
+dd 06c0335f8h
+dd 0b64e85d9h
+dd 052e2d3e3h
+dd 01d4535a3h
+dd 0722fef6ch
+dd 0ad8b2dedh
+dd 0c7dacc40h
+dd 02bcf6c02h
+dd 08e7e90d8h
+dd 088cb9d6bh
+dd 016b0b16dh
+dd 05378b688h
+dd 0f5c469f1h
+dd 0fd30d071h
+dd 04de6d0e3h
+dd 05e871b33h
+dd 09b6d1514h
+dd 0f6aa348eh
+dd 027b85e73h
+dd 05e12967dh
+dd 0ad157b75h
+dd 024ab01a5h
+dd 0b0f855c1h
+dd 08ecd499ch
+dd 018718e5ah
+dd 0b18baf74h
+dd 03be98d9eh
+dd 021776807h
+dd 0562bc45ah
+dd 015d94230h
+dd 0e2200ee3h
+dd 076e3a194h
+dd 09545d373h
+dd 0f5d830ceh
+dd 0d4dcafefh
+dd 0b142a267h
+dd 09495dc27h
+dd 02fe5faf8h
+dd 0ffcef6c4h
+dd 0f7edffd0h
+dd 0e6593349h
+dd 0daa1ed1dh
+dd 04dd244b9h
+dd 032b583f4h
+dd 043633940h
+dd 0a9132c31h
+dd 0dc6f61fah
+dd 06b8d315eh
+dd 06a12bb57h
+dd 0173a4379h
+dd 0085daefdh
+dd 0440f3524h
+dd 09c81b942h
+dd 014493e8ch
+dd 05f95fdb8h
+dd 0f31965b6h
+dd 0a76a3703h
+dd 04854b3c7h
+dd 067d475ech
+dd 0e6dd61f8h
+dd 0ecebd975h
+dd 0cae8c3cbh
+dd 0e1476d5eh
+dd 0fc99e4e7h
+dd 06ec22361h
+dd 0c32cfe19h
+dd 073af86deh
+dd 05586def0h
+dd 013630a23h
+dd 0e8ca84e4h
+dd 045e460f1h
+dd 0e2d83a7ch
+dd 07d34a229h
+dd 0e060b5cah
+dd 0142d7c73h
+dd 04e780db6h
+dd 041c24de3h
+dd 027441239h
+dd 0afb72b63h
+dd 0d6800015h
+dd 0b3d68829h
+dd 022425e43h
+dd 02f8526bch
+dd 004e7d72ch
+dd 0b2052a0eh
+dd 09f16411ch
+dd 0031bc407h
+dd 067f74603h
+dd 033676be9h
+dd 0b6c6de54h
+dd 0903c2d8fh
+dd 0fa18e61fh
+dd 013dbdd75h
+dd 0282abac9h
+dd 06993cce9h
+dd 0d7538e2ch
+dd 0201a783fh
+dd 04c019157h
+dd 041d0ebadh
+dd 045ee5a85h
+dd 0cf5a6d99h
+dd 0fe19729fh
+dd 0a226a494h
+dd 0fe049c77h
+dd 041f1a5d8h
+dd 02ecce39ah
+dd 0eea857ceh
+dd 061de6548h
+dd 05c8d4de1h
+dd 084903898h
+dd 07ff7bd81h
+dd 047abaa72h
+dd 0311e1bb1h
+dd 03d943cb2h
+dd 028e4b065h
+dd 062de2f9dh
+dd 01afc4cd6h
+dd 09470ed9dh
+dd 04fe84614h
+dd 0210a667bh
+dd 02f256cc2h
+dd 00724a95eh
+dd 093d12dcch
+dd 0046c8db1h
+dd 012aa8fe0h
+dd 0e16e3684h
+dd 02b34dd53h
+dd 07a9df988h
+dd 033427597h
+dd 0e27e7754h
+dd 030351072h
+dd 0dd7bb7ffh
+dd 0f9f3c367h
+dd 06f39e9d1h
+dd 05f1ae9f7h
+dd 01d9ca01ch
+dd 0ddce8d14h
+dd 094f91248h
+dd 0a8b24b73h
+dd 07466614ch
+dd 09c66e079h
+dd 0a09536cch
+dd 0996b5c96h
+dd 0e6bfb454h
+dd 0e78fff24h
+dd 04dfa27f2h
+dd 00215eeaeh
+dd 04b330722h
+dd 068474d44h
+dd 0ace5c3d1h
+dd 062e935c6h
+dd 083c3fda5h
+dd 00c3642d6h
+dd 0bfd6b10bh
+dd 0b205eb40h
+dd 0c3583d56h
+dd 0491cef37h
+dd 02af0dedbh
+dd 02246955ch
+dd 0d2d79c24h
+dd 0b7f700bch
+dd 0b011d3b9h
+dd 0c0dfeb84h
+dd 06b2977b7h
+dd 00525928fh
+dd 0027f00e3h
+dd 03d9d3645h
+dd 0caf91e1bh
+dd 0f1fa3494h
+dd 0fd915495h
+dd 049ae8d91h
+dd 03de5552ch
+dd 064e6b52bh
+dd 0daa306e3h
+dd 042b5a4e9h
+dd 0e8cffe74h
+dd 066255d31h
+dd 0bd0ece42h
+dd 0092c8bfch
+dd 09c570345h
+dd 062db9401h
+dd 0992ee8aah
+dd 08ac58c63h
+dd 00a585362h
+dd 0a934e1a9h
+dd 06493f07ch
+dd 062270f2ah
+dd 04b0f5e55h
+dd 09945f8cah
+dd 0dc57ff88h
+dd 0b6710f76h
+dd 0b0523b5fh
+dd 0982c76f8h
+dd 00d5fd437h
+dd 04fb5fbceh
+dd 0c09996c9h
+dd 0d88f6354h
+dd 0e96a115dh
+dd 04758120bh
+dd 0a062aa88h
+dd 007b0c78ah
+dd 05d117ca9h
+dd 0e1728e12h
+dd 0a75a5d03h
+dd 015a9165dh
+dd 042f81e9fh
+dd 09cb8238eh
+dd 0c8592db5h
+dd 0f4bb48c0h
+dd 02dc842cah
+dd 05d1885dch
+dd 05f461100h
+dd 0835e02bbh
+dd 0e0ffa09eh
+dd 04f0e4cdah
+dd 081174089h
+dd 0d774307ah
+dd 046858b87h
+dd 086c67093h
+dd 0ecf5a65ch
+dd 035808096h
+dd 02f68b4ddh
+dd 0126b615ah
+dd 054896157h
+dd 05f253f0eh
+dd 0412607d3h
+dd 06880ed8eh
+dd 0c9f1fdb8h
+dd 0bae217b4h
+dd 09234619ch
+dd 021a9c375h
+dd 023027e2eh
+dd 02588a6a9h
+dd 0b90a18efh
+dd 0ff0a55e2h
+dd 01ab643f7h
+dd 06828b092h
+dd 0924a4d2eh
+dd 0f0554009h
+dd 05c1d905bh
+dd 0c1ec1265h
+dd 0f0356d1dh
+dd 01d6a4f11h
+dd 0431fbf40h
+dd 05da27b8eh
+dd 0803dee8ch
+dd 0ca65f55dh
+dd 004394029h
+dd 06773cd27h
+dd 05d5348adh
+dd 0454de5a6h
+dd 0aae3b924h
+dd 01c8701e3h
+dd 0701fe253h
+dd 0e2b24f51h
+dd 048027c93h
+dd 0354d6282h
+dd 0f7a9f2bbh
+dd 082e4b6d7h
+dd 04d6fc721h
+dd 0ea1b0c43h
+dd 01ba35b44h
+dd 0d2e93277h
+dd 015531719h
+dd 054ce2c71h
+dd 0ba53d656h
+dd 0a96153e5h
+dd 098f14375h
+dd 017e5f9a8h
+dd 02905ece8h
+dd 0aaa18146h
+dd 0bb8ddd3eh
+dd 0b711ec8ch
+dd 0c10b6f6bh
+dd 0a756928bh
+dd 08568e8b5h
+dd 02d632d1ah
+dd 08e48dd59h
+dd 0159b524dh
+dd 0ddb0d387h
+dd 0b04e333eh
+dd 0cc38cc8eh
+dd 07d2cd4bch
+dd 0ad857beeh
+dd 0bc1edbf8h
+dd 0e12b24f7h
+dd 0d54a6c93h
+dd 033e1d3f0h
+dd 0101eb215h
+dd 07acd3ce1h
+dd 0b28ad2afh
+dd 0d473f886h
+dd 0df9854e7h
+dd 0c7acdc1ch
+dd 04d2f95a0h
+dd 08def1a9ch
+dd 067d6454ch
+dd 02b8ee11ch
+dd 0ae53e795h
+dd 0c114ccd3h
+dd 0086c9dbch
+dd 0cd31bbb9h
+dd 03dfc8cc3h
+dd 01500f9a0h
+dd 016c51ee7h
+dd 0e46e9989h
+dd 0bbb1a73ch
+dd 02f1db85ch
+dd 01aba3ef8h
+dd 0baf0c7d4h
+dd 04f72a30fh
+dd 014c30ff7h
+dd 0b5c2dd6bh
+dd 0ca735b6bh
+dd 06cb8be7fh
+dd 07c5604dch
+dd 08854eebdh
+dd 0f94ce8a5h
+dd 0d33c922dh
+dd 044fbaf10h
+dd 096a07270h
+dd 086619c56h
+dd 0ee55b973h
+dd 05b32515fh
+dd 001d6e6dbh
+dd 02790a080h
+dd 0bd73e0dch
+dd 0687ea5c4h
+dd 0b7fe368eh
+dd 0c6035fe9h
+dd 072695324h
+dd 014099d7eh
+dd 09f1f89aeh
+dd 0fd0cb071h
+dd 0cfd3d14ah
+dd 01c2ac1b0h
+dd 0ac12aee6h
+dd 01dae5fe5h
+dd 0e124fa41h
+dd 06910ac26h
+dd 02532f607h
+dd 020f06adch
+dd 057e56b73h
+dd 0a4cc81bdh
+dd 0260e970dh
+dd 065eeae00h
+dd 06daa955ah
+dd 02b861de1h
+dd 03e5f4473h
+dd 0c6c7eb9dh
+dd 01693fbb9h
+dd 06b0fc870h
+dd 02e463bdch
+dd 09758e598h
+dd 0bc38c0e3h
+dd 0e2e16b1eh
+dd 071a4736bh
+dd 0e9de086bh
+dd 0c91613c1h
+dd 01fcd3ca0h
+dd 035a75098h
+dd 07f9df6f6h
+dd 01a66845fh
+dd 09c4e1235h
+dd 0ad210058h
+dd 08fccf583h
+dd 0b39962bfh
+dd 00f30a987h
+dd 053acdebfh
+dd 00faa713eh
+dd 04e920fefh
+dd 0fcce5ca0h
+dd 03291e7ddh
+dd 059ab7fd3h
+dd 0f0d09bf0h
+dd 00b5fd4e3h
+dd 032d000d8h
+dd 05945b723h
+dd 082f8bacch
+dd 03e2f48d7h
+dd 02714b619h
+dd 02d071288h
+dd 0d547b5c7h
+dd 0adbb773dh
+dd 065a5a716h
+dd 0b0123561h
+dd 0d841591fh
+dd 0c569c415h
+dd 06848596bh
+dd 023dc78eah
+dd 003caedb7h
+dd 000b475ech
+dd 037089685h
+dd 002e895e2h
+dd 0a75a2d44h
+dd 00a5b501ah
+dd 0750510b7h
+dd 0c6b96a12h
+dd 08189fc30h
+dd 0e6c5d133h
+dd 03e6fb3e7h
+dd 025f02925h
+dd 0a409def7h
+dd 0737b239ah
+dd 0e5b69941h
+dd 0cca50ccdh
+dd 096743c48h
+dd 0e182a018h
+dd 06a6bd349h
+dd 0204f1929h
+dd 0fc366225h
+dd 07c7aa67eh
+dd 0402290f9h
+dd 02cc5ab29h
+dd 009831758h
+dd 034c6878dh
+dd 0aca3dfadh
+dd 02e58a726h
+dd 0596ca422h
+dd 056592730h
+dd 06c733d82h
+dd 09259fdc3h
+dd 051101549h
+dd 0a6267e6fh
+dd 0261ef669h
+dd 0e6111615h
+dd 0d303060ch
+dd 0d9a672d4h
+dd 064cc413bh
+dd 0308fccb2h
+dd 09b111a36h
+dd 0f825632ah
+dd 024c46860h
+dd 084320c77h
+dd 0bc88ec72h
+dd 0a5bb3b83h
+dd 0ca0208a7h
+dd 05e54a532h
+dd 0d0e9225ch
+dd 0f5d9b35ah
+dd 0b7e50790h
+dd 0699be324h
+dd 0cfd93bd3h
+dd 09c6e9ddch
+dd 0d536782bh
+dd 0c86c7c75h
+dd 0cf07e9cah
+dd 0d8c6469eh
+dd 0b9b4cc3bh
+dd 081b66ac6h
+dd 0de129babh
+dd 0b5f06d36h
+dd 05055787fh
+dd 0f3598925h
+dd 00d72723ah
+dd 0944204b4h
+dd 08863e711h
+dd 043690078h
+dd 0261f3294h
+dd 0f9d3e509h
+dd 005cd822fh
+dd 03d65e1deh
+dd 091ecb939h
+dd 0e12e01c9h
+dd 0e5ba85f8h
+dd 093364979h
+dd 08a80132bh
+dd 047c57653h
+dd 044b497c9h
+dd 0d3c381c5h
+dd 08a2dd4bah
+dd 0b5b30149h
+dd 021ee8e96h
+dd 0f25a4577h
+dd 05bfab010h
+dd 0731fd720h
+dd 0ef125457h
+dd 041f505f2h
+dd 0f8b851c5h
+dd 09e3d7712h
+dd 094b46175h
+dd 037215a8eh
+dd 0312384fah
+dd 0142ba2f4h
+dd 08d86ebfch
+dd 0af56f3c3h
+dd 0de00c699h
+dd 02e460398h
+dd 02ad0be35h
+dd 07625f545h
+dd 0fec4873bh
+dd 0bc6f8492h
+dd 07b4585feh
+dd 010ab175ch
+dd 0f47ace06h
+dd 0044ed2ceh
+dd 03baee6c0h
+dd 059d825b1h
+dd 0a94b3692h
+dd 0a442003ah
+dd 065bb0b91h
+dd 021653bf2h
+dd 03dab0f5ch
+dd 051803d3ah
+dd 0e6a513d2h
+dd 0f23e5516h
+dd 03f121334h
+dd 03c2ebbf7h
+dd 005884d17h
+dd 0230b64cch
+dd 0dc3f71c4h
+dd 07c233696h
+dd 0a32917d7h
+dd 0f2f901c3h
+dd 0df9f1863h
+dd 02665e988h
+dd 0673db871h
+dd 0ee9d815eh
+dd 0d15fb903h
+dd 0145dd950h
+dd 0678a3f6ah
+dd 0ae37c323h
+dd 06f3d86e1h
+dd 0ee544b6ch
+dd 0e51a362dh
+dd 0f434e57fh
+dd 0b837c795h
+dd 0e00fe5c9h
+dd 0cc48c397h
+dd 03bd407f0h
+dd 09ff7f9c6h
+dd 0db0ed823h
+dd 0d4a71b92h
+dd 0e1e82aaeh
+dd 07ed1a767h
+dd 01ac47367h
+dd 0dfee8a53h
+dd 0556ee0aah
+dd 0780c1521h
+dd 033e1802eh
+dd 0a31c3699h
+dd 009a57e71h
+dd 0dc229803h
+dd 013267918h
+dd 073f1dd55h
+dd 0be48c0c9h
+dd 0719de4d5h
+dd 0a8c8db8ah
+dd 0610c2081h
+dd 0ed54e36ah
+dd 0488d701ah
+dd 07da749b3h
+dd 0d8434107h
+dd 087ac0e2dh
+dd 008dfacedh
+dd 0e8c664a9h
+dd 03d584838h
+dd 091be1679h
+dd 0633ae57bh
+dd 01f6624e9h
+dd 09b0bd04fh
+dd 0b23dd0bfh
+dd 052405db6h
+dd 0dc0035d3h
+dd 04fa5a573h
+dd 084a9c293h
+dd 02adf14e1h
+dd 0d5080417h
+dd 0310ad5ech
+dd 0b1a1209fh
+dd 001722634h
+dd 02ae3fcbdh
+dd 0ce6a00d8h
+dd 0a5c73297h
+dd 062c13433h
+dd 0fc3bf76eh
+dd 02faeb4bfh
+dd 082dced68h
+dd 013d42124h
+dd 0b07d5fa7h
+dd 0ae998db6h
+dd 0c4b2773bh
+dd 0a25a5f2eh
+dd 07d2ca018h
+dd 069afcfaeh
+dd 0a1a798a7h
+dd 08db51017h
+dd 0423ca6ddh
+dd 0c1f0b9c0h
+dd 003ac986eh
+dd 04cc06e0ah
+dd 01fd3b665h
+dd 07b0c42bbh
+dd 0cde40a2dh
+dd 0fa693907h
+dd 087b15a07h
+dd 0a4f9eb37h
+dd 0702eb375h
+dd 00fb5e3f4h
+dd 0c7132c07h
+dd 0106d9d62h
+dd 0399f2a69h
+dd 05149429dh
+dd 04e6ecc7ch
+dd 0a15af80dh
+dd 0536be9aah
+dd 027e2fbf0h
+dd 0a3cbf479h
+dd 017fe4c3ah
+dd 0065c0031h
+dd 0d99ee72eh
+dd 0a2625617h
+dd 0f8d567eah
+dd 00652586ah
+dd 08d60ff74h
+dd 0da430e8dh
+dd 0a665e446h
+dd 089173a8bh
+dd 000e28df5h
+dd 083ee7074h
+dd 01f08b3f4h
+dd 06cb2b7cah
+dd 0c9039c67h
+dd 0b7e0f3b2h
+dd 0f0e50c7bh
+dd 0c98c4554h
+dd 0d1f9ad10h
+dd 0218641c6h
+dd 024b97ddah
+dd 0f67ac842h
+dd 003ee18cah
+dd 0ad16e3bbh
+dd 01d75adffh
+dd 0312f0ea9h
+dd 041b7f1a4h
+dd 0b292b679h
+dd 0f815c051h
+dd 0e579c21eh
+dd 03af5660bh
+dd 067b173d8h
+dd 0097cbb86h
+dd 01dd35062h
+dd 0af6a27fch
+dd 0092c911bh
+dd 06b333c03h
+dd 0fdab235eh
+dd 097895c4fh
+dd 092dd74c6h
+dd 0df1718fah
+dd 06ea16ca5h
+dd 0fd2c6bech
+dd 078c7ea2fh
+dd 01e2168c4h
+dd 067ac608bh
+dd 0fac82c71h
+dd 041f98043h
+dd 0dc28c5cch
+dd 0fd2d1bc7h
+dd 0c6d408fbh
+dd 036c693d4h
+dd 06c3d78a7h
+dd 06906dfc7h
+dd 0b79d6e71h
+dd 04e1a23afh
+dd 08fd622dah
+dd 0b58431e3h
+dd 0f97f203ch
+dd 06acb1803h
+dd 0d7c8e742h
+dd 0fde19743h
+dd 0a78b176bh
+dd 0e9d879f9h
+dd 00b8068a9h
+dd 0f7c2f43eh
+dd 0d66a3835h
+dd 042b9021ch
+dd 03204327ah
+dd 0f50d212bh
+dd 0b3fedcd2h
+dd 09ee45181h
+dd 06016a03fh
+dd 044c7b220h
+dd 01c9e8656h
+dd 037606b53h
+dd 01c3c6aach
+dd 089b8a97dh
+dd 04d280a51h
+dd 095a8e325h
+dd 0723eae0dh
+dd 094016854h
+dd 035ac8b5ch
+dd 0d57f0395h
+dd 0a124c90dh
+dd 0b665eb06h
+dd 02b4b097eh
+dd 075372834h
+dd 0d976d15dh
+dd 06f260ce3h
+dd 0109a2470h
+dd 02d885226h
+dd 07726b807h
+dd 0bd0c206fh
+dd 035defb7ch
+dd 04e00b27fh
+dd 0cfc9012ch
+dd 0e0c89c55h
+dd 072a5a161h
+dd 0a6e67afeh
+dd 046fd5836h
+dd 09cb0721fh
+dd 0d3626571h
+dd 05225fdc3h
+dd 026af7f4ah
+dd 01082b8d1h
+dd 088a8c8fch
+dd 0a2ad5293h
+dd 03b9b64c9h
+dd 0f8f24e86h
+dd 052ccc340h
+dd 04610c138h
+dd 0e5b9b7f4h
+dd 0377c50d3h
+dd 0771134e0h
+dd 0def6028bh
+dd 00775e561h
+dd 04259ec7dh
+dd 07a7ce620h
+dd 08ad3c849h
+dd 013e57463h
+dd 0019485c4h
+dd 08f13833dh
+dd 024167290h
+dd 0529f97cch
+dd 016057743h
+dd 04840e44ch
+dd 0babbcbfdh
+dd 0d0185319h
+dd 0bd7bd6d4h
+dd 042cae3c3h
+dd 0ef93a9a9h
+dd 0cf3ccf04h
+dd 0fab653ddh
+dd 0bc880767h
+dd 0e3c88d92h
+dd 0f6769945h
+dd 073c3af30h
+dd 01c42a0aah
+dd 0e74a0125h
+dd 02ca05ef1h
+dd 0e6d845a7h
+dd 013fce8f1h
+dd 030535d6eh
+dd 08a626d2ch
+dd 06cb2707ah
+dd 0c8d531e4h
+dd 0f9058f68h
+dd 0cd38af13h
+dd 0973eadceh
+dd 0de929073h
+dd 06b2147f9h
+dd 0cbab7b9ah
+dd 06367fb0fh
+dd 0e89aaaa5h
+dd 0c2ae55f5h
+dd 06e402495h
+dd 092aac1e3h
+dd 000abaeddh
+dd 019d88e9ah
+dd 054f53c72h
+dd 08b9a0b51h
+dd 0500e23b0h
+dd 0f37ae784h
+dd 0e9fbd35ah
+dd 02a5099dah
+dd 07cad7fd8h
+dd 06619d990h
+dd 089d7af47h
+dd 08e5414c7h
+dd 0e84ad41bh
+dd 0b1ffbbb6h
+dd 00f6112e2h
+dd 0a59abea7h
+dd 0a7517a2dh
+dd 0ff5cad58h
+dd 0f2299aa6h
+dd 0be0a6556h
+dd 04811ef60h
+dd 0ad78c841h
+dd 0d0cde799h
+dd 029c642f9h
+dd 004df11dah
+dd 033d8a868h
+dd 001c77d83h
+dd 00fc8c121h
+dd 0c41136ach
+dd 07ac6ff9fh
+dd 0055eb746h
+dd 06f8997a2h
+dd 02913465bh
+dd 0085ec572h
+dd 0f7d06990h
+dd 04dbce212h
+dd 048d38700h
+dd 02034f3cbh
+dd 02df9dab4h
+dd 0d87c2a85h
+dd 0eb470664h
+dd 02c6b8eb0h
+dd 08d923b7fh
+dd 04dbc014ch
+dd 0ea59a7fch
+dd 05c950671h
+dd 078374acfh
+dd 0abef556fh
+dd 0bf7a4407h
+dd 0749fff0ch
+dd 06af12fd4h
+dd 0be4b3fa0h
+dd 0827fc27dh
+dd 00f072e75h
+dd 0a9153557h
+dd 080b066e6h
+dd 0b3c93f99h
+dd 0a9fd3805h
+dd 0be604a5eh
+dd 06290d15ch
+dd 08a5ddd54h
+dd 037104e53h
+dd 0dd6cfb75h
+dd 0cbe1e2a1h
+dd 0977b69a5h
+dd 0aceae371h
+dd 00adaeb78h
+dd 0f0ef0999h
+dd 07c91c9c8h
+dd 067dd2fe5h
+dd 0cd87f099h
+dd 0898efc25h
+dd 0c52e1c90h
+dd 0dd945cd3h
+dd 0f636f22dh
+dd 029f17313h
+dd 0f5e02dfah
+dd 09b444392h
+dd 03c515b66h
+dd 072a5e1ach
+dd 004a65890h
+dd 0f8ec37abh
+dd 03544e822h
+dd 0be9ca776h
+dd 0d80959d9h
+dd 0237a511bh
+dd 03d600531h
+dd 0f51da1f6h
+dd 0632f7c13h
+dd 0cb034644h
+dd 0bf3a761dh
+dd 017681cb7h
+dd 03da9b646h
+dd 07437a446h
+dd 0f26adb96h
+dd 062ac4ba1h
+dd 03e655d69h
+dd 038758999h
+dd 0ff80576ah
+dd 0b45e4158h
+dd 0f9ec07b9h
+dd 0aed6b73ch
+dd 029d84145h
+dd 0ac622548h
+dd 0a834dec4h
+dd 0e71421bch
+dd 0fbac4ef5h
+dd 0f65bb6c5h
+dd 0b63d7b7ch
+dd 09452886ch
+dd 01aac9351h
+dd 0a8e8807eh
+dd 072735e25h
+dd 0445b9371h
+dd 0039b5970h
+dd 02da64072h
+dd 08cb48acch
+dd 01181da4eh
+dd 0db864255h
+dd 0c56d1654h
+dd 0d129807ch
+dd 09ec09ff7h
+dd 056428c41h
+dd 0b8825c04h
+dd 04ec5e32dh
+dd 0ecc6da32h
+dd 075dc5d2ah
+dd 07363be69h
+dd 08e46bf22h
+dd 0d1d552dah
+dd 060f723b1h
+dd 090764d3ch
+dd 06a04005eh
+dd 0822e10d3h
+dd 0ce0be215h
+dd 0ecb52534h
+dd 048fe284bh
+dd 09520946ah
+dd 0ec9a1979h
+dd 0e7696356h
+dd 092128227h
+dd 08160ba3dh
+dd 0e27823f7h
+dd 02c82068eh
+dd 0cb9b6659h
+dd 0091789bch
+dd 01b2dafc6h
+dd 0de579e90h
+dd 097b9d27eh
+dd 04ae66ca0h
+dd 061c5090bh
+dd 05fa6a100h
+dd 07aaa1fa1h
+dd 018e1d1e7h
+dd 087b6eefah
+dd 058415bd0h
+dd 035114c3bh
+dd 06f01c118h
+dd 0af416855h
+dd 0f560d909h
+dd 06a8aa988h
+dd 0e1611d84h
+dd 016a6c454h
+dd 0db15f52eh
+dd 070866faah
+dd 07db9f4a1h
+dd 09719bd54h
+dd 032d2de95h
+dd 003732582h
+dd 0cc65153fh
+dd 0a285d265h
+dd 010f92828h
+dd 0dd90227ah
+dd 00f8e0a7fh
+dd 02d0c4796h
+dd 071b9fd8eh
+dd 036a50f79h
+dd 0f4d2b990h
+dd 02a9b5c61h
+dd 0cef5c45eh
+dd 05c9b48c7h
+dd 0945db42ah
+dd 0cb05bbf7h
+dd 09f148eech
+dd 01c8bbb94h
+dd 0bab36f1ah
+dd 07923d277h
+dd 0d2e9a882h
+dd 0902d73ceh
+dd 0fdcf0871h
+dd 0dad7de03h
+dd 09961e806h
+dd 0b0022c8eh
+dd 081022ccbh
+dd 04fee494ch
+dd 005e7004bh
+dd 069ee28f8h
+dd 0f51ab3aah
+dd 0c0e25e27h
+dd 0237124ech
+dd 01e37edfdh
+dd 01d3f0d44h
+dd 05bd31b20h
+dd 0c1b8e676h
+dd 045c2cc7ch
+dd 0c80304dch
+dd 01b9a532ch
+dd 08d71db80h
+dd 08f7738b7h
+dd 0c2989648h
+dd 08d8e9278h
+dd 00314247fh
+dd 004aab583h
+dd 0fe9ed199h
+dd 081692cc5h
+dd 0644650eeh
+dd 0a3e109abh
+dd 0f99ad9f1h
+dd 001f88739h
+dd 0cd6c666fh
+dd 071abeb41h
+dd 0a2454695h
+dd 07076037dh
+dd 0fa35ae2dh
+dd 02206b682h
+dd 0165e1d76h
+dd 058ad2a0ah
+dd 07bd90697h
+dd 059e64713h
+dd 00a4c4d27h
+dd 05bf1e874h
+dd 05b9b1263h
+dd 057d71a90h
+dd 017b17787h
+dd 0793de644h
+dd 080b4d38bh
+dd 01d8a1007h
+dd 07c3ae002h
+dd 011983e92h
+dd 069b3b4aah
+dd 0082cfe51h
+dd 0e35684dch
+dd 0c4f349feh
+dd 0ebe55429h
+dd 08dee4dc5h
+dd 098df800fh
+dd 057baaa63h
+dd 0bd045de4h
+dd 0924d5db1h
+dd 057958d2ch
+dd 009014da0h
+dd 008a69e30h
+dd 0c63807cbh
+dd 006cddae9h
+dd 01df168eeh
+dd 0bc4d3a69h
+dd 0d68712b1h
+dd 0760e2e1ah
+dd 0aaf2fd10h
+dd 096a87e9ch
+dd 0646a6dfdh
+dd 0bff95db4h
+dd 016b05eb5h
+dd 00bd482ech
+dd 03bd21e8dh
+dd 0b7e038ffh
+dd 0130c339eh
+dd 0c17a537dh
+dd 0ac35cf12h
+dd 0ee906c6eh
+dd 04e504129h
+dd 0a9853378h
+dd 056af11b3h
+dd 072608ac0h
+dd 0f20e4fcdh
+dd 02367073eh
+dd 0f9563dffh
+dd 0a2ce1a16h
+dd 09f75ff2eh
+dd 02c4506a5h
+dd 00119a7a5h
+dd 033aa8e65h
+dd 0d385f36fh
+dd 06bebb657h
+dd 0ffae666dh
+dd 0ed3af5ach
+dd 07606eb74h
+dd 084a77cb4h
+dd 07a49e6fdh
+dd 09bfea4abh
+dd 02f2ef529h
+dd 006df85e7h
+dd 05df6211ah
+dd 097fc39e3h
+dd 094f3f4bfh
+dd 0a9505c63h
+dd 0ac3e99e7h
+dd 068759f16h
+dd 085d0fb9ah
+dd 086fd9037h
+dd 0408c7089h
+dd 08f3708afh
+dd 03ffedd8ch
+dd 07b5e2e51h
+dd 07ec5ca2ch
+dd 0a7492d43h
+dd 0ace12f92h
+dd 06c41f7d0h
+dd 013eaf92ch
+dd 0e2d9ba0fh
+dd 0672828b9h
+dd 0f8d5cd1bh
+dd 0c4b80ed5h
+dd 0afc0e96eh
+dd 0029a101ah
+dd 0c1e033a2h
+dd 0434ecd77h
+dd 0e77698fdh
+dd 0d08fc981h
+dd 0bb356a22h
+dd 0445e97fbh
+dd 0a990e2c5h
+dd 04163f4d2h
+dd 019d8b8cfh
+dd 04a27a766h
+dd 02b2ee094h
+dd 0bca23cdfh
+dd 0afd31d2fh
+dd 057224678h
+dd 0c1620f49h
+dd 0d11ba15eh
+dd 06c1ad023h
+dd 0fa48b3ffh
+dd 0b33b32dah
+dd 08de3fc17h
+dd 0c8bb2489h
+dd 0ae96c637h
+dd 04b965ec3h
+dd 076cb6e69h
+dd 010f9e863h
+dd 06a96bae1h
+dd 00206b0b3h
+dd 014817ef4h
+dd 00ba31526h
+dd 0e2abaebfh
+dd 00f02d5f8h
+dd 0e11e7812h
+dd 0d516abc0h
+dd 0180b0290h
+dd 0d45d8466h
+dd 077a2666eh
+dd 035a57285h
+dd 08c7d79f7h
+dd 05ee78d34h
+dd 0839af886h
+dd 05b8b8464h
+dd 00ea2dcd7h
+dd 04802d657h
+dd 098fee4d8h
+dd 017c7173ah
+dd 0b5356417h
+dd 03547ab52h
+dd 0f5359f6fh
+dd 0aa635f61h
+dd 02923cc48h
+dd 07d89a35ah
+dd 0bb9999eeh
+dd 036bba292h
+dd 08f20408dh
+dd 0e7486fc7h
+dd 045c448e6h
+dd 0e65a2c78h
+dd 0d78032f8h
+dd 058d5f047h
+dd 011faef8dh
+dd 019c32465h
+dd 0f2b5609fh
+dd 09d7d6b9ah
+dd 0141d0e20h
+dd 0a2c8d088h
+dd 069635038h
+dd 087aa64fdh
+dd 01365f0ech
+dd 02b93268ah
+dd 07fc5278bh
+dd 061f5bfcfh
+dd 090d3e14eh
+dd 02aa661cbh
+dd 03f370d49h
+dd 0eef060dch
+dd 08ea87f45h
+dd 06c0d4c80h
+dd 0542bb571h
+dd 0a3b17491h
+dd 031c83cd6h
+dd 02abb5bb6h
+dd 0b07870e4h
+dd 07af626f5h
+dd 0d7a822a7h
+dd 0ac47f3b3h
+dd 0afd73a44h
+dd 07a14b9edh
+dd 02a909343h
+dd 0170fb3bah
+dd 0fe9ac62ah
+dd 0ff55fa41h
+dd 0aab1d188h
+dd 0e336dca3h
+dd 00747bb9ch
+dd 02618ffedh
+dd 080b980fah
+dd 0baa95ad1h
+dd 0df6555cch
+dd 07a09d171h
+dd 0447ded1dh
+dd 0f4f45a51h
+dd 0a232f191h
+dd 06b083338h
+dd 07dbb7807h
+dd 03b440bb5h
+dd 030bf2bc4h
+dd 0da9be10dh
+dd 0d978227ah
+dd 088214598h
+dd 06c565e7fh
+dd 09a698c42h
+dd 0e58230ddh
+dd 08fe6ff57h
+dd 08fa6fa51h
+dd 080e4576eh
+dd 0bc479170h
+dd 0116152dch
+dd 0fbf1011dh
+dd 0a3109419h
+dd 01e2da875h
+dd 03171e735h
+dd 04d6db6bfh
+dd 039f80cd2h
+dd 05000a017h
+dd 0d70c0213h
+dd 0818d7307h
+dd 001e83cc0h
+dd 0af6c33a4h
+dd 07afe6fc8h
+dd 02ec1cb5bh
+dd 0f4fd7e9bh
+dd 09311b6a7h
+dd 062ff29e0h
+dd 0f11fa629h
+dd 072e1b980h
+dd 0bf573eaah
+dd 0d2111dadh
+dd 006c616ceh
+dd 0da2223a9h
+dd 01590b716h
+dd 0c0e8c6c4h
+dd 092e2ec27h
+dd 0b2ba0b83h
+dd 0768f1a94h
+dd 04550769dh
+dd 0d9aad99ch
+dd 09a19df5bh
+dd 0b8598638h
+dd 047961ac2h
+dd 070e9a33ch
+dd 0558494eah
+dd 0482f967eh
+dd 06fa5ae05h
+dd 06e3a9350h
+dd 0ea44f832h
+dd 0865b9200h
+dd 0b020e5e1h
+dd 04275ffddh
+dd 054ee7096h
+dd 06df3cce9h
+dd 05f29ccfdh
+dd 055ac28e3h
+dd 038569a5bh
+dd 05af1caf2h
+dd 0ac9a364fh
+dd 08eebd915h
+dd 039a47bb5h
+dd 067241f14h
+dd 064196902h
+dd 05e21274ah
+dd 0da279804h
+dd 04e85061ch
+dd 0567f1a9ah
+dd 0ad907d22h
+dd 00f7d5d58h
+dd 073071202h
+dd 03f4d6ab7h
+dd 04fd64feeh
+dd 05a94947fh
+dd 0b0bec90eh
+dd 09a5fc8feh
+dd 0ea2ed501h
+dd 008902611h
+dd 0deec7d41h
+dd 0c2f36fb6h
+dd 0ded1c66eh
+dd 0dad90c18h
+dd 0a1ca3e73h
+dd 05d38d69ch
+dd 04ca5cad9h
+dd 0ff268d4dh
+dd 0f7fdf485h
+dd 04f6b1948h
+dd 0a8ed1ccdh
+dd 063c8c7b6h
+dd 0f071365ch
+dd 025447810h
+dd 0b0bc1103h
+dd 00d103f5eh
+dd 051aa8ad8h
+dd 023ebe012h
+dd 0ca359ac2h
+dd 0bf0c79a1h
+dd 0a63c9e3dh
+dd 04a3d778bh
+dd 0024f8b0ch
+dd 034dda079h
+dd 0640278c8h
+dd 073a4f4adh
+dd 0b71db49eh
+dd 034aaf389h
+dd 008c0c710h
+dd 0399d2708h
+dd 0e6ffbbcch
+dd 028e36b30h
+dd 05c4cd452h
+dd 089aecf73h
+dd 01127c8b5h
+dd 0d7be155dh
+dd 01e314e3ah
+dd 06c04d7d9h
+dd 041b75492h
+dd 089820142h
+dd 00d7aa65fh
+dd 0eaa2b985h
+dd 03c7b9b41h
+dd 0391382e8h
+dd 0e8a2f536h
+dd 066d547b4h
+dd 0e3403355h
+dd 032df3231h
+dd 0abded048h
+dd 05891b40bh
+dd 035513575h
+dd 069c5a43ah
+dd 054acb93ch
+dd 067983aa7h
+dd 0e499485eh
+dd 06b811526h
+dd 073b50406h
+dd 06707079ch
+dd 0e85663d2h
+dd 061329353h
+dd 0fb5a17a6h
+dd 0c3f93216h
+dd 0e7b1ca2bh
+dd 0517cc537h
+dd 0e31178e9h
+dd 00b3619b7h
+dd 04823ab51h
+dd 072a3ac39h
+dd 0f851045fh
+dd 024d96810h
+dd 0d8d022f6h
+dd 015603b72h
+dd 0b64181d0h
+dd 0865c2cc1h
+dd 0c9549c5dh
+dd 0de755fdch
+dd 00a1748bfh
+dd 052c5f25bh
+dd 0c14ec467h
+dd 081e2cbe3h
+dd 03c827dach
+dd 054edd9a0h
+dd 091715e8dh
+dd 0d1699b11h
+dd 07750bc81h
+dd 06775ab70h
+dd 0e64d4ee6h
+dd 08fd0dae8h
+dd 0e45c88b0h
+dd 047f04d5dh
+dd 0495a506ah
+dd 0d57909c9h
+dd 0b6cb8bbah
+dd 0af7a3586h
+dd 076e45da3h
+dd 0238d23cch
+dd 0548071eeh
+dd 094204295h
+dd 01206f492h
+dd 0c3dfe5bch
+dd 05559dabfh
+dd 0670611c1h
+dd 007268333h
+dd 079843d92h
+dd 00fe81908h
+dd 02c45cb6eh
+dd 0668240aah
+dd 0197e9e85h
+dd 0995a88bfh
+dd 04309d88eh
+dd 081a51757h
+dd 06789f6c3h
+dd 01b3b4472h
+dd 09a221641h
+dd 040a861aah
+dd 01289f718h
+dd 0e5142c03h
+dd 0eb853b5fh
+dd 050206628h
+dd 0c9d6100bh
+dd 0a6eb3534h
+dd 091a420c6h
+dd 0d3e7ac40h
+dd 087f960a9h
+dd 097e37df1h
+dd 0545638cch
+dd 058b25a1ch
+dd 0a4b955d8h
+dd 0db1d431ah
+dd 0a42f8439h
+dd 0fe9a63fch
+dd 07c2dfff3h
+dd 06676fd0bh
+dd 02c9c18dbh
+dd 06792528ch
+dd 06d8b4e8ah
+dd 0e9c6b928h
+dd 0517949beh
+dd 0715ec7ceh
+dd 0c2c1f396h
+dd 0156ef172h
+dd 0ed9f6a94h
+dd 06347b812h
+dd 0c5285adfh
+dd 0084d96b5h
+dd 0daec3561h
+dd 0200207beh
+dd 09c72cb3fh
+dd 0d42393d2h
+dd 07b245977h
+dd 0a592545eh
+dd 050b6c7eah
+dd 00ca7344ch
+dd 0ddee975ah
+dd 0ed2fbb26h
+dd 025b1c47ch
+dd 0dad89cb8h
+dd 0b2e4f86ch
+dd 013adefafh
+dd 0d7739ac3h
+dd 00c6478cah
+dd 02ebc66e8h
+dd 0e8ffe906h
+dd 07e32aebeh
+dd 0473dbe48h
+dd 01558799bh
+dd 01c1cf4b8h
+dd 069245626h
+dd 0b60f8426h
+dd 0b015b3e1h
+dd 0b369c872h
+dd 0cf619c19h
+dd 06fe30bdbh
+dd 000b548e7h
+dd 0b9d28015h
+dd 0433bfd6dh
+dd 0a7e6025ch
+dd 0990372f9h
+dd 04f6d682ch
+dd 07858daabh
+dd 07cd35216h
+dd 072c92f20h
+dd 05ed39daeh
+dd 03fbc05e8h
+dd 09e2d3524h
+dd 0dea6fe1dh
+dd 05017d8f7h
+dd 034edb248h
+dd 0e688c38ah
+dd 00d728352h
+dd 05afbb409h
+dd 022cb941bh
+dd 01c26f23bh
+dd 09fa029a8h
+dd 022215ea9h
+dd 05a1e3616h
+dd 04b4d55d7h
+dd 0ac420dfch
+dd 04d55242eh
+dd 078fb51ffh
+dd 0a0feeb26h
+dd 038513958h
+dd 0558a3c14h
+dd 07f3b29c2h
+dd 0724baae9h
+dd 0854a42d1h
+dd 081819bffh
+dd 0afeb3ebbh
+dd 0fde16d26h
+dd 07e25db90h
+dd 0b4be357dh
+dd 002acffeah
+dd 0ff889cf7h
+dd 087f3143eh
+dd 0b583c00bh
+dd 0ab95d3cbh
+dd 0b3b34110h
+dd 05077ea08h
+dd 011fc2887h
+dd 0b3d81bf6h
+dd 07bef881fh
+dd 0b4e9b778h
+dd 0f5c1b517h
+dd 0826c5e02h
+dd 01ed8f857h
+dd 0a86658deh
+dd 080ba7c7bh
+dd 0451a2228h
+dd 0bd3ef896h
+dd 0ed15c777h
+dd 060e1a4d3h
+dd 0729dbed4h
+dd 0399f65edh
+dd 0f6b3f07ah
+dd 0343cd8b1h
+dd 00e547628h
+dd 0e844a20ah
+dd 03250f46ah
+dd 0ef08cc52h
+dd 0ef1eb569h
+dd 000783694h
+dd 0d4f5ad80h
+dd 0c5cff9cdh
+dd 05e997d36h
+dd 0d9ef2aa2h
+dd 0ea28aa2fh
+dd 0a24856f1h
+dd 07775398eh
+dd 05a9c445eh
+dd 0dbce46b0h
+dd 0e42e0717h
+dd 058b99994h
+dd 0c1db30b2h
+dd 091bcbdffh
+dd 0850cd6d8h
+dd 0b89c130ah
+dd 0df9ce936h
+dd 04238dc4bh
+dd 0e6a30f32h
+dd 0a3fa5c07h
+dd 0d70b2443h
+dd 0e3a0c6c8h
+dd 0164fa143h
+dd 0fed7d5d7h
+dd 06a6e84bah
+dd 086ab7905h
+dd 0774d08bfh
+dd 05d76c4e8h
+dd 060eed78bh
+dd 0167a4e8ch
+dd 09c2fad2ch
+dd 0088abdd5h
+dd 0d7fdee63h
+dd 0efa12875h
+dd 0022151b7h
+dd 02cea25dah
+dd 0abe65446h
+dd 08969fc4ch
+dd 0529f5384h
+dd 06298f700h
+dd 063410765h
+dd 0eec2e245h
+dd 0a61a7328h
+dd 095639f7eh
+dd 0735855f8h
+dd 0a7c43bd3h
+dd 0a6becd8eh
+dd 0e1e7f049h
+dd 04df56ea2h
+dd 079673efbh
+dd 0aa2f2935h
+dd 014d2a94bh
+dd 0754ad8eah
+dd 0fadacf02h
+dd 0e7471bbdh
+dd 0a0b9e236h
+dd 0879f7798h
+dd 002c54efch
+dd 094428571h
+dd 064c02658h
+dd 0affabbbfh
+dd 0c6b50da0h
+dd 08ef6a7deh
+dd 00f2ed3a2h
+dd 0fd4f9546h
+dd 0f9d266ebh
+dd 0c788fb35h
+dd 0115346a2h
+dd 026f589f9h
+dd 04d21fabdh
+dd 0d5aff095h
+dd 01e04a143h
+dd 027e04077h
+dd 0fb17b19bh
+dd 045063ca6h
+dd 04734b99dh
+dd 04104255fh
+dd 0c1ea3765h
+dd 0fb87f729h
+dd 07ca1f560h
+dd 0e3808fech
+dd 05e16c983h
+dd 036f19f1dh
+dd 08d93438fh
+dd 0d8a140f0h
+dd 03a8a939eh
+dd 074666048h
+dd 0d5152d93h
+dd 065cd3f38h
+dd 003b37d4dh
+dd 03438635fh
+dd 01e76178ah
+dd 012815219h
+dd 058031b37h
+dd 0bacf341eh
+dd 089c64670h
+dd 0fa7a8c43h
+dd 0b0c61badh
+dd 075e7b99bh
+dd 09130704dh
+dd 00dfcd904h
+dd 077bf4e49h
+dd 055180c61h
+dd 06e81884bh
+dd 0811a596ch
+dd 054795915h
+dd 01231e10fh
+dd 0e5a949a9h
+dd 0d1df2240h
+dd 0e210af8eh
+dd 018ad36c4h
+dd 0bf547233h
+dd 02d81440ch
+dd 03dce59c7h
+dd 0298ea71dh
+dd 05022a8dbh
+dd 0dfc855e3h
+dd 01546616eh
+dd 0b6131779h
+dd 00caf7b24h
+dd 0b3e63696h
+dd 0bc822309h
+dd 00b106a19h
+dd 0e98d47a0h
+dd 0b0264ffdh
+dd 09bc4a1a5h
+dd 023cad170h
+dd 06c08546ch
+dd 007632847h
+dd 073c385a1h
+dd 0825ec6aeh
+dd 01372e76ch
+dd 0d7073b46h
+dd 09d932054h
+dd 003fce43eh
+dd 0de11cdc4h
+dd 0b821d565h
+dd 094e80453h
+dd 04a7b708ch
+dd 018c75e45h
+dd 0cf82d010h
+dd 0c15b5320h
+dd 016103b0ch
+dd 0d026cf90h
+dd 078939125h
+dd 0f7241c67h
+dd 06c3da8eah
+dd 0641cbb9ch
+dd 0fdbbf142h
+dd 0a4fbb543h
+dd 030eff6f4h
+dd 0564c03d2h
+dd 0a1607d6fh
+dd 0f3c1adeeh
+dd 0d6f49a31h
+dd 098907e0ch
+dd 094d95506h
+dd 044350a34h
+dd 0bb577db3h
+dd 0b886d078h
+dd 0da970235h
+dd 0810054c8h
+dd 06e661879h
+dd 0b9e02d42h
+dd 09b4dd5beh
+dd 0802ae303h
+dd 093c6d0f0h
+dd 0160fe82fh
+dd 0dbf04159h
+dd 0e8c124a8h
+dd 0577a6ee4h
+dd 0534bfafch
+dd 024ffd8b7h
+dd 01e2eb83ah
+dd 0fdc43203h
+dd 068d59f66h
+dd 0f1abad64h
+dd 0b372c3d9h
+dd 08fc2e65ch
+dd 0640e8aaah
+dd 0bad1ced4h
+dd 0f8c374fah
+dd 0fee9598ah
+dd 0ea479f00h
+dd 05e50c2e7h
+dd 0b97004adh
+dd 075dbab92h
+dd 02b811592h
+dd 0546fb81fh
+dd 0458f2657h
+dd 094c71fe9h
+dd 094beb19bh
+dd 0b9aa0dc4h
+dd 0d5ec5cb7h
+dd 0c8403c29h
+dd 084f207e5h
+dd 09a199fb7h
+dd 0dbcba0a6h
+dd 040d15c50h
+dd 013d2a604h
+dd 079228184h
+dd 00e72e509h
+dd 0de2f2ef4h
+dd 0ca782111h
+dd 080bffc1bh
+dd 0a33827f4h
+dd 0fe05e2d4h
+dd 0ad924c20h
+dd 0c3f416b9h
+dd 09ae97c0dh
+dd 07ff8ee90h
+dd 083414a92h
+dd 08d97d148h
+dd 0bd6ae1e6h
+dd 0aab69e5dh
+dd 024eea0a7h
+dd 050aba55ah
+dd 0b3a43b56h
+dd 0ce082b7fh
+dd 0bec01e64h
+dd 0f3f05a95h
+dd 0abd18946h
+dd 09aae2586h
+dd 0e0a5ed11h
+dd 01edbcbe5h
+dd 0c2910501h
+dd 0eb372b63h
+dd 098a920bch
+dd 04797b633h
+dd 0ae344341h
+dd 08726b892h
+dd 0c323a6dbh
+dd 052d8d2b0h
+dd 01f51f1ddh
+dd 04f7ea9ech
+dd 06856bf8eh
+dd 0069e50eeh
+dd 0a2ec9c8ah
+dd 03e239173h
+dd 05415e719h
+dd 0fd5b3102h
+dd 06052fea3h
+dd 070836b6eh
+dd 068b4fa1ch
+dd 0bcc4cef3h
+dd 066a0a611h
+dd 0ad2e9d12h
+dd 0c1f2d079h
+dd 0d068ab6ah
+dd 05c1343a2h
+dd 0225fe05bh
+dd 0453835bah
+dd 0d8f7967bh
+dd 0c8c6a72bh
+dd 05785b367h
+dd 0a9c1f2edh
+dd 01e53c79bh
+dd 0dabd2ff7h
+dd 0a8d3f2ceh
+dd 0d9a971a4h
+dd 0805ea333h
+dd 03621e3ffh
+dd 0e7f44b97h
+dd 0bed3c270h
+dd 01035ab95h
+dd 065a278d8h
+dd 046875416h
+dd 0d5cf45cah
+dd 0aeb0222bh
+dd 0b755f8f4h
+dd 072b8443fh
+dd 044b86db6h
+dd 0dd170468h
+dd 0888a1872h
+dd 0d030f827h
+dd 01944d609h
+dd 0779f9835h
+dd 0c1c1b733h
+dd 03446e1f6h
+dd 02e710d3ah
+dd 0732ab042h
+dd 0522d5937h
+dd 038bfa234h
+dd 060fa3444h
+dd 0093cfaf1h
+dd 04777ab91h
+dd 0cf249142h
+dd 0bfeeb8a6h
+dd 08ebd2b5dh
+dd 0c442fd3dh
+dd 039da9acdh
+dd 068cf3ebch
+dd 0ac0eb0f5h
+dd 062fc816eh
+dd 0d73784f5h
+dd 09f13b309h
+dd 0884ffc27h
+dd 08a41762dh
+dd 0bcea8dbah
+dd 097745579h
+dd 08ec522d3h
+dd 0c0c56966h
+dd 0a19b9397h
+dd 0fa7269e9h
+dd 0c91e9de6h
+dd 030476a81h
+dd 003f73c69h
+dd 0840d351ch
+dd 053198e32h
+dd 02e409ed2h
+dd 06486b6d4h
+dd 043a17030h
+dd 04af232f3h
+dd 09d51f3f8h
+dd 094f62948h
+dd 0c22ec915h
+dd 09e70094ch
+dd 0796aadach
+dd 0ed216870h
+dd 03f34b8ffh
+dd 04b011aa5h
+dd 013ae3bech
+dd 026fa9126h
+dd 0aa71af50h
+dd 0cbbecb9ch
+dd 0abcfca25h
+dd 08b0ef34fh
+dd 09f617c82h
+dd 06a482c91h
+dd 0cbf9dd8bh
+dd 0c629a31ch
+dd 0d494243ch
+dd 061073c4eh
+dd 0b5461223h
+dd 0f905d71bh
+dd 03d01159bh
+dd 04ddafc78h
+dd 0f52ee642h
+dd 0c0dadcb7h
+dd 0b9fd7eb2h
+dd 0c3c5df09h
+dd 0f286625eh
+dd 06a10eaaeh
+dd 0cdf26978h
+dd 015301be4h
+dd 017e24680h
+dd 06a5f14d2h
+dd 0598ac845h
+dd 0a42e2b89h
+dd 0325452c8h
+dd 046d23610h
+dd 0a645608eh
+dd 0d26df5f4h
+dd 00a14bfb7h
+dd 01460cf28h
+dd 00d6c2b14h
+dd 0e71fe327h
+dd 065d8ce52h
+dd 04afbda4fh
+dd 0cf7b1768h
+dd 0db5bdd2bh
+dd 0a6a00f2bh
+dd 058feca0fh
+dd 0c788bfddh
+dd 0b3d593deh
+dd 0a997e249h
+dd 0ab491077h
+dd 087322c3ch
+dd 01b4d1309h
+dd 09a386437h
+dd 0a4cb8137h
+dd 0e85f66edh
+dd 04659059bh
+dd 039ed3ddch
+dd 000e17665h
+dd 00c152668h
+dd 073171568h
+dd 018ee1b9dh
+dd 0b7a17e77h
+dd 02ba7094bh
+dd 0f9203197h
+dd 0aa1bcc92h
+dd 076b510e6h
+dd 08bcb087fh
+dd 08f78f912h
+dd 0ab7c38a8h
+dd 091d3bf38h
+dd 0b0b1b06ch
+dd 03dd9760bh
+dd 097eceb73h
+dd 045a952f1h
+dd 0c5403dbdh
+dd 0a72a3654h
+dd 0af26e690h
+dd 08cca2da9h
+dd 083aa6578h
+dd 009ceef7dh
+dd 03132172ah
+dd 0a322f3f1h
+dd 003e0cb6dh
+dd 03fc52ea8h
+dd 0ba2f9d60h
+dd 0f8dad07eh
+dd 06820d721h
+dd 0d50202e5h
+dd 0584a3299h
+dd 0b187d55ch
+dd 0a51cde22h
+dd 0f3c6bf8bh
+dd 04232efb4h
+dd 05bea3ab7h
+dd 06c450b20h
+dd 0a90d4aa1h
+dd 0c58aa57ch
+dd 00577181ah
+dd 0e99688d5h
+dd 0cd10bca5h
+dd 0add77034h
+dd 026dc4712h
+dd 0d9727187h
+dd 04bc31d3bh
+dd 0e19484b8h
+dd 08a9cdb39h
+dd 011b902b8h
+dd 030107020h
+dd 0c6b120eah
+dd 03e8a8dd2h
+dd 0759f9dbdh
+dd 039ca71e3h
+dd 06f1a36feh
+dd 0b02fd6edh
+dd 0c9ae6de7h
+dd 0b1ef00d6h
+dd 095ed905fh
+dd 0bdb56f5dh
+dd 0f4c40adbh
+dd 04ea80880h
+dd 0aa505d84h
+dd 054479ce1h
+dd 0eb4788e6h
+dd 0615c5b8eh
+dd 0fe394299h
+dd 01df63498h
+dd 077204a02h
+dd 0ab21fcc3h
+dd 008af456ah
+dd 059832535h
+dd 0ba1e6bf1h
+dd 02354bcb3h
+dd 0296b2dc9h
+dd 0892be054h
+dd 0f19daae6h
+dd 0c0ae388ah
+dd 0f9681a03h
+dd 039d90711h
+dd 04fa7e0d7h
+dd 0597d6c97h
+dd 06b89c73fh
+dd 03cb947a2h
+dd 0c5e8d258h
+dd 0cae26861h
+dd 04d7ace65h
+dd 0e9cbee07h
+dd 0b2674c06h
+dd 0987df506h
+dd 0a13bb62fh
+dd 004e23276h
+dd 098dec9a6h
+dd 09528388ch
+dd 089c64fe7h
+dd 05eef1d2ah
+dd 093240031h
+dd 009e785c1h
+dd 02ddc8ed1h
+dd 0b8de3771h
+dd 04b1ae2abh
+dd 09f017dd1h
+dd 057442795h
+dd 060687b73h
+dd 06c6c0f9eh
+dd 08614b13fh
+dd 0f29788dfh
+dd 0ab28d6f0h
+dd 018a690b2h
+dd 0237dab3ah
+dd 0f17c6705h
+dd 07c125650h
+dd 01ed1cf14h
+dd 03f0524ebh
+dd 04e345496h
+dd 08c8c1d6bh
+dd 0045fcc68h
+dd 09ce717bfh
+dd 0d8e8cf54h
+dd 0520a7f10h
+dd 09f38ca9bh
+dd 085282524h
+dd 0f5ee58d7h
+dd 017d798d8h
+dd 05e04dfeah
+dd 0d7255e16h
+dd 05d5985a6h
+dd 096d637f6h
+dd 06c23caebh
+dd 0c3798036h
+dd 021e8affdh
+dd 066507189h
+dd 080aad76ch
+dd 090567731h
+dd 0d8b4e00dh
+dd 09bde9faeh
+dd 0adde25b4h
+dd 030134741h
+dd 0bd584ecdh
+dd 0b9f084f4h
+dd 013f8fbcbh
+dd 0eee5251ah
+dd 0ea6c45e6h
+dd 07fef56c9h
+dd 0a248c98ah
+dd 0fc1b5b77h
+dd 003ab3997h
+dd 011640b4fh
+dd 06b6eb7b6h
+dd 03e34c99eh
+dd 048c6844fh
+dd 05765e6e1h
+dd 0ecfdf994h
+dd 016466e38h
+dd 0db9bc605h
+dd 040d4b093h
+dd 0613f5a9eh
+dd 0dd805a63h
+dd 0ba236cdbh
+dd 080f6d5c8h
+dd 071727653h
+dd 0a08cdfc0h
+dd 06ffc7e11h
+dd 096877578h
+dd 07275c7b3h
+dd 04e3ce240h
+dd 003a5d782h
+dd 0a895c1aeh
+dd 003fec153h
+dd 0c9e631a1h
+dd 0e1f9bd2ah
+dd 0f5fe86a5h
+dd 00381d6b6h
+dd 09b4bde34h
+dd 00b2ec0d4h
+dd 0cca9cde5h
+dd 017797e1ah
+dd 0f0f0b2b9h
+dd 0031bbdcah
+dd 0717ec118h
+dd 01e7ba307h
+dd 060693da8h
+dd 0286cd64dh
+dd 0026bcc32h
+dd 08da1ac6eh
+dd 0056b167bh
+dd 0fb855d09h
+dd 035c08e93h
+dd 0ff827e1ah
+dd 09eb6bf54h
+dd 03963bb6fh
+dd 029f8eabeh
+dd 09ca00288h
+dd 00add4b60h
+dd 04df89181h
+dd 09ce8a17dh
+dd 0a5b0b964h
+dd 028645b6ah
+dd 0b9a3ee93h
+dd 0e833c421h
+dd 07f424380h
+dd 03a745e60h
+dd 08f80819ch
+dd 07964977ch
+dd 0c698efd7h
+dd 0eecb398bh
+dd 0396ebe89h
+dd 02fc71dd0h
+dd 02792c0e6h
+dd 0f2b3ecc8h
+dd 0413a9d39h
+dd 0a8d1914ah
+dd 0a9ed3ef8h
+dd 001fed4e1h
+dd 066a78c51h
+dd 0e31c3b0ch
+dd 0cd308f82h
+dd 047f6edd3h
+dd 0946812ach
+dd 06c993fddh
+dd 04d5d1e60h
+dd 0cd5678ddh
+dd 00aa716ceh
+dd 0f22d2199h
+dd 0893d2b5eh
+dd 0f62e8ddbh
+dd 0d99db770h
+dd 0383a1a36h
+dd 0e633ecf6h
+dd 051a4c94eh
+dd 03909281ah
+dd 07f6d9d2dh
+dd 0431f4efdh
+dd 039fd5ffdh
+dd 0681d9283h
+dd 0240ddb37h
+dd 00442c977h
+dd 0db6511f1h
+dd 03a10c15ch
+dd 069061dabh
+dd 0b4e82ed1h
+dd 0db0fffa9h
+dd 037ff94a4h
+dd 0c7464f69h
+dd 0335f4bf6h
+dd 025130f52h
+dd 08bb11e14h
+dd 0b7db9ad2h
+dd 04fe28fa6h
+dd 02803433dh
+dd 0990fd4edh
+dd 0f52557dbh
+dd 09b24b0d3h
+dd 07e0330f4h
+dd 0b1a005d1h
+dd 0ab82fe95h
+dd 0c863dc72h
+dd 0fc451b8ch
+dd 0545d3596h
+dd 0980be476h
+dd 0edae7b5fh
+dd 090259bbah
+dd 0b4bb64bdh
+dd 06c1f54f1h
+dd 05a9ba47ch
+dd 040261f11h
+dd 063cb864bh
+dd 009a471feh
+dd 06b3fc03eh
+dd 050a44aaeh
+dd 0aa635152h
+dd 05fab2311h
+dd 044fc85b3h
+dd 007f20169h
+dd 03c77f52fh
+dd 0750a5bd5h
+dd 0e1e03267h
+dd 0ee7d3f77h
+dd 0e9ae70feh
+dd 00d7856d8h
+dd 0e751e0deh
+dd 0d9ff50d9h
+dd 0f737a64dh
+dd 050c6b413h
+dd 02d42ff2eh
+dd 05cc37108h
+dd 06416e6b3h
+dd 0adabb11fh
+dd 046ade278h
+dd 0e43ff644h
+dd 0361d9e1eh
+dd 0a191f7ach
+dd 05318b54fh
+dd 0c3b2d5d0h
+dd 0258672f9h
+dd 0b7da6071h
+dd 0b3d4e5afh
+dd 0f0b7f78bh
+dd 0a56e9ad4h
+dd 0a19416abh
+dd 0b32cc21bh
+dd 0262ccf3fh
+dd 0267c23f3h
+dd 0ba672344h
+dd 01759da5dh
+dd 0861a0320h
+dd 01a8a1b1fh
+dd 05a327714h
+dd 077e86e54h
+dd 01dd747d3h
+dd 04b2045bah
+dd 09a5e0c75h
+dd 049e039deh
+dd 0724c544ah
+dd 0c3767d62h
+dd 044f0b713h
+dd 04ae973e1h
+dd 0887a3364h
+dd 0bd48058eh
+dd 071020ffdh
+dd 01e1e7245h
+dd 08e5acbaeh
+dd 0ec7b1ffbh
+dd 0149a4442h
+dd 043600a62h
+dd 0f1cd1063h
+dd 0e5aa9eb4h
+dd 00c38bf2bh
+dd 00b09b726h
+dd 07edac24dh
+dd 03c691832h
+dd 00f6d86a6h
+dd 0278a99cch
+dd 0659afa57h
+dd 0265ca538h
+dd 0400f112dh
+dd 07270fd75h
+dd 075d647e1h
+dd 0badf0ab4h
+dd 06d89a33eh
+dd 02bc689f2h
+dd 07dfcd4fah
+dd 0260de1e5h
+dd 051f8d51bh
+dd 041e8f596h
+dd 01ee8a436h
+dd 0f9a30b67h
+dd 00e03aa67h
+dd 0bef47755h
+dd 0f30b3b95h
+dd 0c6007d30h
+dd 0e1ab9ebbh
+dd 0cf661987h
+dd 08dc040ebh
+dd 00c7efd74h
+dd 04e86d449h
+dd 00ff808f9h
+dd 04a2ca31eh
+dd 0d09a9ed6h
+dd 031add2aah
+dd 0607af2cch
+dd 0bd5eee41h
+dd 0ccaf1dfeh
+dd 05cf5ce71h
+dd 0de684178h
+dd 047c4a0c4h
+dd 0b3995d31h
+dd 0f370240ch
+dd 035b50290h
+dd 07858b929h
+dd 0e42c8a7ah
+dd 0d56799b4h
+dd 0764d8137h
+dd 0fe153b33h
+dd 08540968ah
+dd 0bb6bd73ch
+dd 034181dfdh
+dd 0fc3d0cbah
+dd 07993d261h
+dd 08f236487h
+dd 0004daf5ah
+dd 01cbfc324h
+dd 088743c9ch
+dd 0f660dd94h
+dd 0a1a044c8h
+dd 0fc2b8befh
+dd 0171c8d0eh
+dd 0d4d2d4d6h
+dd 03b1515ebh
+dd 0f633124fh
+dd 0ac07d38eh
+dd 0f8a79f74h
+dd 0804e7d38h
+dd 0b74e9080h
+dd 077533853h
+dd 0fca97cf7h
+dd 0207903bbh
+dd 096efd83ch
+dd 0918eea05h
+dd 001050eddh
+dd 0ac9e7729h
+dd 06f6ede55h
+dd 0a94d8789h
+dd 0f43aad56h
+dd 0668722d8h
+dd 022bc8798h
+dd 048063a21h
+dd 0af66b44dh
+dd 0e4820f55h
+dd 0e9b94a96h
+dd 02fb3bc0ch
+dd 0852a87adh
+dd 0dd2fef97h
+dd 079bb788eh
+dd 0ea67be95h
+dd 080d1c244h
+dd 06a246b23h
+dd 07930253bh
+dd 093ddc015h
+dd 068034befh
+dd 0656df330h
+dd 0dd376750h
+dd 0e0b593cch
+dd 0ffbf00afh
+dd 0e6a0791ah
+dd 00049ad4dh
+dd 0c8769ae5h
+dd 0b53f53e1h
+dd 09dd6a475h
+dd 017467480h
+dd 0f6e092dch
+dd 07d3ae518h
+dd 0f490119ch
+dd 05aa51164h
+dd 0707a1324h
+dd 0de9fad3fh
+dd 046e3b6dfh
+dd 05cd82172h
+dd 0a42a6e6fh
+dd 0c833de3ah
+dd 07a401094h
+dd 054ab3a95h
+dd 09999de8dh
+dd 0a33cfd7ah
+dd 09bd2921ah
+dd 0ce9a8ea7h
+dd 0645cd195h
+dd 04a31e995h
+dd 0cf48f50ch
+dd 08c5fbf31h
+dd 0b2e6ba5ch
+dd 0a2143b88h
+dd 015971ae2h
+dd 00f0b50bah
+dd 09c84ec34h
+dd 05a8be92eh
+dd 0fbccbda3h
+dd 085fa2210h
+dd 0dcab97bfh
+dd 0e11fbdf5h
+dd 043712d54h
+dd 034d96e89h
+dd 0a12dc4d3h
+dd 04400d913h
+dd 09d617305h
+dd 0bf675030h
+dd 03fb1026fh
+dd 0c86d510ch
+dd 0d9998637h
+dd 0f7668183h
+dd 016dd0d38h
+dd 0db8b0e4ch
+dd 0385aba61h
+dd 02b4acfd5h
+dd 059d33307h
+dd 09d8b4639h
+dd 0c5909e0dh
+dd 0817671e8h
+dd 06aa0d0e2h
+dd 02661438ah
+dd 0ea1ca3a5h
+dd 0c717e203h
+dd 0c39803e0h
+dd 068ee361eh
+dd 0cb78ec6bh
+dd 0ab6eded2h
+dd 06622257dh
+dd 0b28f4ebbh
+dd 06bfac796h
+dd 0a7c35857h
+dd 0519a1fe8h
+dd 06f913703h
+dd 04b08314fh
+dd 06d1fdda0h
+dd 05d1ba37dh
+dd 09250bdbfh
+dd 0221e9f7dh
+dd 0d3d5d1ceh
+dd 0517f398ch
+dd 087854868h
+dd 08bb7892ch
+dd 014b1955ch
+dd 0b724a103h
+dd 06129c2a9h
+dd 025415bd0h
+dd 018a28779h
+dd 01ab8339bh
+dd 084cebe8dh
+dd 02f6944cdh
+dd 0bce2f7c2h
+dd 08b4762eeh
+dd 06827a719h
+dd 0c2819af8h
+dd 042f094deh
+dd 087cc86e7h
+dd 0e8dff61ch
+dd 027723597h
+dd 0cd8c0b5dh
+dd 020ed0d21h
+dd 0635b41a3h
+dd 011c5445ah
+dd 03f550de0h
+dd 01be40691h
+dd 09ce290bbh
+dd 000fb7842h
+dd 045d2c413h
+dd 08ad2a50dh
+dd 03fd0bc33h
+dd 0a2992f62h
+dd 078b80354h
+dd 0bfe555b7h
+dd 077042693h
+dd 0583c1657h
+dd 0de8eadd5h
+dd 063775938h
+dd 0e7e23e84h
+dd 08cfdbbf6h
+dd 0d18604a8h
+dd 04ad0a90ah
+dd 00110a2c3h
+dd 05fea8809h
+dd 00f0699a5h
+dd 04c1eed35h
+dd 09dfb6168h
+dd 060e449dbh
+dd 03c56a1eeh
+dd 0fa220363h
+dd 00786b91dh
+dd 058e71c06h
+dd 0432ac90ah
+dd 0fa7362b8h
+dd 034ff4cc7h
+dd 0f4e254f7h
+dd 0f5922a1dh
+dd 0b9ca4573h
+dd 0ff754f68h
+dd 08dc78ad6h
+dd 02061c27ah
+dd 00ad94928h
+dd 0f1689e9bh
+dd 05ccff061h
+dd 07c27caa8h
+dd 0c264b359h
+dd 0327e690ch
+dd 044169f29h
+dd 031c80c39h
+dd 0c7fcf852h
+dd 05a354a32h
+dd 0d6555224h
+dd 0061e5766h
+dd 09ffc7cffh
+dd 08a961d9ah
+dd 0bdb3d577h
+dd 0128c1102h
+dd 017b86c88h
+dd 0763d8686h
+dd 0898f9e6eh
+dd 07323b316h
+dd 0ea538c54h
+dd 032d96d36h
+dd 0d70ebcc8h
+dd 0b32c5dc5h
+dd 001142a38h
+dd 00a3f340ch
+dd 0cd2270bbh
+dd 05a425c77h
+dd 08c8642c9h
+dd 0f1031c49h
+dd 037bce8e4h
+dd 09b11eb57h
+dd 0401c1f16h
+dd 0903d8178h
+dd 0d45aba64h
+dd 087361a8ch
+dd 09c4fc56ch
+dd 082a938e8h
+dd 0472458cbh
+dd 0f3856594h
+dd 0cab03f51h
+dd 0f3f80712h
+dd 02572312ch
+dd 0734a14d3h
+dd 0b9b97d93h
+dd 0faf01215h
+dd 06fc44401h
+dd 035e67e61h
+dd 0d113bb6ah
+dd 0bf5c73a5h
+dd 0411dc428h
+dd 05bccf34bh
+dd 089db15efh
+dd 0381bfd93h
+dd 07dd22994h
+dd 085232cbeh
+dd 036bfd88ah
+dd 04b8fb147h
+dd 08baf9b43h
+dd 00c5c7b9fh
+dd 0e8633240h
+dd 0eda0a485h
+dd 0872cb72ah
+dd 0e72a96e5h
+dd 06e37ebb2h
+dd 0ea833c02h
+dd 0a52947e1h
+dd 0071f1fefh
+dd 06272ade8h
+dd 0fead7745h
+dd 0ff0774b2h
+dd 0fd5a9d29h
+dd 0cf24ef2dh
+dd 01a32fbb0h
+dd 039caa391h
+dd 09bfb9f54h
+dd 02f1cc100h
+dd 0d22026d5h
+dd 076353c48h
+dd 09333b021h
+dd 034a6196ch
+dd 08e9c9460h
+dd 0b0bcb22eh
+dd 0fb50b977h
+dd 08e2d76e5h
+dd 0d9fa1b49h
+dd 0cac8cb6eh
+dd 0f165668fh
+dd 0faf0761dh
+dd 0d78e7ce0h
+dd 01303c793h
+dd 0926984e3h
+dd 066453684h
+dd 016af2c64h
+dd 04068c65ah
+dd 09c82e4a8h
+dd 0f0a30315h
+dd 0ebd2b7f0h
+dd 0823616ach
+dd 002a9a94dh
+dd 068ab03cbh
+dd 0a35b3995h
+dd 0cba7339ch
+dd 01384eddeh
+dd 05c8d6b9dh
+dd 00b3402b8h
+dd 081fda71eh
+dd 03b3f3199h
+dd 01bad856bh
+dd 0f3be6eebh
+dd 06ba0596eh
+dd 057fdc0fdh
+dd 0e8b96200h
+dd 02a8416bfh
+dd 0a926bd6ch
+dd 0694a4483h
+dd 0f1c1f6a6h
+dd 079a0f52ch
+dd 09b8b3f1ch
+dd 06eaa955ch
+dd 0bd53aecdh
+dd 0db79cedfh
+dd 0edfc0839h
+dd 06d8e5d5eh
+dd 022c715bbh
+dd 0d05baf1ah
+dd 036d578d9h
+dd 0d012f191h
+dd 0fc83de3dh
+dd 0dcd9bf1ah
+dd 0934d2bc4h
+dd 0fd3015b9h
+dd 0b7c882e7h
+dd 0ae3786a7h
+dd 0537a8287h
+dd 04d692a33h
+dd 0477ce72fh
+dd 01efb1043h
+dd 0ed00ced9h
+dd 031814541h
+dd 0243fb52dh
+dd 0c00ae758h
+dd 0c76aae48h
+dd 048159ff9h
+dd 0f47c54b4h
+dd 004e7875dh
+dd 0e681645fh
+dd 0d8b6c44ch
+dd 0d77ce838h
+dd 00c79c79dh
+dd 0d358241ah
+dd 0ddd6b31ch
+dd 05c51426bh
+dd 0f686ade4h
+dd 01f475438h
+dd 00f5299e5h
+dd 06e249904h
+dd 05c56769dh
+dd 017970175h
+dd 029a90756h
+dd 04ae5bafch
+dd 0da9385c9h
+dd 001319c5dh
+dd 0cf77dd80h
+dd 0b7d2c8e8h
+dd 0b961ce40h
+dd 02cba9020h
+dd 02ed57b48h
+dd 04cd94e2eh
+dd 0110d2f3fh
+dd 083d5667bh
+dd 0db931bd9h
+dd 0c36fb07bh
+dd 0a98ac380h
+dd 0de966dffh
+dd 028638047h
+dd 060ef5f25h
+dd 0244aa5efh
+dd 0695cdc74h
+dd 032b04d4bh
+dd 0c12156e1h
+dd 0c5b1c611h
+dd 07a06e430h
+dd 0a6b9d407h
+dd 01ac866c4h
+dd 0c3aa1b3dh
+dd 0d7b9cf9ch
+dd 0e270d113h
+dd 0b003ce43h
+dd 0610f016ah
+dd 0f5a3fc53h
+dd 082ab252ch
+dd 0fc29f709h
+dd 04162709fh
+dd 08ab8536ah
+dd 046123bech
+dd 094fa7769h
+dd 0d4cfcf02h
+dd 07dc2a7e4h
+dd 03deae8e8h
+dd 01cb145e8h
+dd 007258619h
+dd 0d76ccf8ah
+dd 062e18b97h
+dd 04ded1df0h
+dd 01ee8f77fh
+dd 0a66cf3e6h
+dd 0f6a9a022h
+dd 07f8f17cbh
+dd 03953e1e2h
+dd 06fa5712fh
+dd 0093ffd75h
+dd 00230c903h
+dd 082437826h
+dd 081ff1af2h
+dd 0b41334e2h
+dd 0df3013ddh
+dd 0d491cd2eh
+dd 058d5d87fh
+dd 0fe8b8776h
+dd 0a7bb1d8bh
+dd 05d888343h
+dd 0f5aa3b00h
+dd 04a279b29h
+dd 08bc8e569h
+dd 099b4b255h
+dd 0f3832f52h
+dd 074976ca4h
+dd 0602421b0h
+dd 0b4a08530h
+dd 0c99b22dbh
+dd 074773f96h
+dd 0cb7d2647h
+dd 05fcea91fh
+dd 0b5cc3394h
+dd 001a24828h
+dd 0819d0193h
+dd 03e701e42h
+dd 067c221b1h
+dd 007d22acch
+dd 03ae8177fh
+dd 094896a59h
+dd 00471f296h
+dd 0e1eab289h
+dd 03e8044a5h
+dd 04083b05ch
+dd 07409722fh
+dd 0badc5013h
+dd 0e47ace78h
+dd 09903327dh
+dd 05ac23537h
+dd 02eb44505h
+dd 0547d4c3eh
+dd 00185d66eh
+dd 0f8f3b2c9h
+dd 0939c944eh
+dd 0890e9f38h
+dd 0f336ee43h
+dd 0f159c4b3h
+dd 079375117h
+dd 012f72982h
+dd 053de5b21h
+dd 0a0074b4bh
+dd 08399ad90h
+dd 04f49b3aeh
+dd 0ca27f7f6h
+dd 0b6ab8fc2h
+dd 0abcdabddh
+dd 071bffe01h
+dd 0c2b844b2h
+dd 02552450ah
+dd 09a720129h
+dd 0ca357b0ah
+dd 00c3eb2f1h
+dd 017c5f7a5h
+dd 047e5f892h
+dd 05bc53e23h
+dd 0f037b52bh
+dd 075b8f1eah
+dd 004019e28h
+dd 0d3c351dah
+dd 0deadabdfh
+dd 06618a406h
+dd 0472ff84bh
+dd 055060612h
+dd 0e2253515h
+dd 042efcfb8h
+dd 095b207c3h
+dd 0826b8b77h
+dd 0c8406e03h
+dd 0c0de4c6ah
+dd 0f6090e75h
+dd 028ab0608h
+dd 012e9def8h
+dd 0e806b945h
+dd 05d67fb08h
+dd 04ac322aeh
+dd 088dc542fh
+dd 093798ce9h
+dd 018656bb7h
+dd 08f5d0dc7h
+dd 00a138759h
+dd 0ec1c9dd8h
+dd 057e94417h
+dd 0570fdb22h
+dd 09b1e50c7h
+dd 00bdcc9e9h
+dd 0a753851ah
+dd 04c4e5ac1h
+dd 0d540189eh
+dd 08a88c1eah
+dd 04b0a4cbah
+dd 00242d8dah
+dd 0752d1b2dh
+dd 027c106efh
+dd 06ca319d3h
+dd 0929d0bd6h
+dd 0a20dd2deh
+dd 0df3bd200h
+dd 0fe31b496h
+dd 0b8146963h
+dd 0a4024e49h
+dd 031adc4c8h
+dd 0b2f06be5h
+dd 05174f028h
+dd 0f11769d8h
+dd 0839329f7h
+dd 0a5357697h
+dd 033dc2690h
+dd 0573b3b3eh
+dd 0a5187176h
+dd 0612a1804h
+dd 0eae05eabh
+dd 00cccf434h
+dd 0972007ceh
+dd 0955cd178h
+dd 08bd33567h
+dd 03aab3bc2h
+dd 07c843376h
+dd 0fe336dddh
+dd 0c21bdfa1h
+dd 0edbe4e86h
+dd 0385578dah
+dd 086357de8h
+dd 0ffb9221bh
+dd 099081613h
+dd 07058bf63h
+dd 0dd55293eh
+dd 0c768eff0h
+dd 078552651h
+dd 03305b763h
+dd 098b5d7cfh
+dd 08dedf8eeh
+dd 084a80f76h
+dd 055b47563h
+dd 0e573c1a9h
+dd 05617e0beh
+dd 0a6f4d26dh
+dd 0f159ed47h
+dd 03edc2077h
+dd 0412a9c62h
+dd 0c2402078h
+dd 062f5867bh
+dd 00bf45f7dh
+dd 0b05ffb17h
+dd 0bf57c126h
+dd 0e26000bfh
+dd 0528968d9h
+dd 0224c3798h
+dd 0698eea59h
+dd 0814b2e25h
+dd 0e0f23b12h
+dd 00a23563dh
+dd 04e168851h
+dd 0351c2693h
+dd 088aa64a5h
+dd 0cdd91b12h
+dd 0c8ae165ch
+dd 0a946a22fh
+dd 04d9e7815h
+dd 0723bbba4h
+dd 0c9beaf5bh
+dd 0fd931bcdh
+dd 07b42d0e2h
+dd 04e69f556h
+dd 0b25389f4h
+dd 019c80fc5h
+dd 0fa3fafe0h
+dd 0da8be4c3h
+dd 04a870bb8h
+dd 07f8e25f9h
+dd 062439fadh
+dd 04b0ca9fch
+dd 0bfb48448h
+dd 0418aee4dh
+dd 096014d5ch
+dd 05cd849c2h
+dd 032965bbbh
+dd 0c435568bh
+dd 04f7b632bh
+dd 06a8940b8h
+dd 06d64a84ch
+dd 09cbe9646h
+dd 068a93066h
+dd 033455b5ch
+dd 07c7beb29h
+dd 07673f655h
+dd 0cd36dca8h
+dd 04d47f4b4h
+dd 0fba164efh
+dd 04d531814h
+dd 0c53065a7h
+dd 01b64b4dch
+dd 0e57afc8dh
+dd 0a617fc9ah
+dd 043b8da44h
+dd 074f8f180h
+dd 02f76b823h
+dd 00f65b76ch
+dd 0cc050df3h
+dd 0c0e11f1fh
+dd 06d4728bah
+dd 00dbc6f06h
+dd 010e0d797h
+dd 03494d2b2h
+dd 07eaf424ah
+dd 0a52a29e0h
+dd 0e30f45fbh
+dd 02c290c67h
+dd 007b735dbh
+dd 0831c988ah
+dd 0acc3e230h
+dd 0b1c1e9e0h
+dd 0961733a8h
+dd 047f25acfh
+dd 0472f1bc0h
+dd 0ff7956d2h
+dd 0038c38d5h
+dd 0447b2294h
+dd 0a55fb595h
+dd 074e8fa72h
+dd 0500f764ch
+dd 036c27932h
+dd 026300e4bh
+dd 02137eff0h
+dd 04539ed30h
+dd 0e1e6f799h
+dd 07e5585b9h
+dd 0cb99556fh
+dd 0d8764d5ch
+dd 096709f55h
+dd 0c7533f18h
+dd 0ffabda7dh
+dd 0042bec92h
+dd 01b373559h
+dd 0aad568d9h
+dd 0f0a81848h
+dd 05b0bd176h
+dd 0b8dd0ecch
+dd 0b630a786h
+dd 041c795aah
+dd 0544540ddh
+dd 0439f52cch
+dd 0777f5628h
+dd 095dedce9h
+dd 096bfbfcfh
+dd 0fe53121fh
+dd 0d32f8260h
+dd 052d80e2bh
+dd 09b6ce080h
+dd 0cf238d5eh
+dd 005097c57h
+dd 06d9c0696h
+dd 0c841c299h
+dd 0da5daee5h
+dd 0e19e5399h
+dd 046f1ab56h
+dd 03cfb7d91h
+dd 0fa0148e8h
+dd 0267e9b3dh
+dd 082804c40h
+dd 0fe4c703dh
+dd 03d45f7b6h
+dd 07b9b501fh
+dd 00d286b84h
+dd 061fa208dh
+dd 0daf99019h
+dd 09806d06dh
+dd 0e008b1d0h
+dd 0e17f76fdh
+dd 0b90b27a6h
+dd 0d4f8ef1ah
+dd 08fae2176h
+dd 0a4f2f537h
+dd 0036dbc95h
+dd 0fe998ef9h
+dd 0d9c0032bh
+dd 03b4e8b92h
+dd 0bffb9334h
+dd 0473683e5h
+dd 0c12ea942h
+dd 06df1e93ah
+dd 0529d0839h
+dd 0e7a3bf8eh
+dd 027765cc0h
+dd 0ada1420bh
+dd 044bd7327h
+dd 04358f910h
+dd 03b4b9953h
+dd 0058f3f0dh
+dd 034c54547h
+dd 064323c07h
+dd 02584d8e7h
+dd 0fc91ce12h
+dd 099ed5ec4h
+dd 0877bdaach
+dd 0159b8134h
+dd 073bacb44h
+dd 0cce039d9h
+dd 0354d2bd0h
+dd 0ae74212ch
+dd 05551d2d8h
+dd 01decf48ah
+dd 09b0bf7cbh
+dd 0a3757e64h
+dd 05170dbb5h
+dd 07a8f8b97h
+dd 0d20444b7h
+dd 01bf63516h
+dd 0ccb81d8ch
+dd 0364541d1h
+dd 0ad27aa4ch
+dd 077c8ae58h
+dd 0ae835662h
+dd 0fd116d07h
+dd 048bcbbe2h
+dd 052d3c375h
+dd 0f93bdc25h
+dd 0b49700bch
+dd 0961bfad8h
+dd 0be1df0c9h
+dd 0d2939344h
+dd 0be9318dah
+dd 0846c1f74h
+dd 0108d5371h
+dd 0c32ad438h
+dd 05fe9f920h
+dd 011656d3bh
+dd 08d484735h
+dd 0a0e3c49eh
+dd 0986209aah
+dd 06a623877h
+dd 0c0a9a456h
+dd 0c165a879h
+dd 0fa0a598ah
+dd 088b2608dh
+dd 0ac681edbh
+dd 024b7d1d4h
+dd 0474e73dch
+dd 0e8bd7b16h
+dd 0f9fde243h
+dd 0c0d17c84h
+dd 08c4f0349h
+dd 07ef8afe9h
+dd 0833e748bh
+dd 0cdb611b8h
+dd 03eec4635h
+dd 07cb96e85h
+dd 079c5d441h
+dd 002d460adh
+dd 0d6f40f4fh
+dd 057eefb9ah
+dd 0e1e278e6h
+dd 07dd9a153h
+dd 0dc85f822h
+dd 0fd562864h
+dd 0a9b1814ah
+dd 0bad25d26h
+dd 0ecb916efh
+dd 0211db68eh
+dd 06542484fh
+dd 08b4168a6h
+dd 06afe285ch
+dd 06f075c89h
+dd 068462922h
+dd 069081daeh
+dd 0528f3b10h
+dd 09ddc8e34h
+dd 04f079480h
+dd 0ed5b6300h
+dd 0b3d8480eh
+dd 0f44ca485h
+dd 0d28c6ec0h
+dd 035bbb396h
+dd 029680ff8h
+dd 0750e0772h
+dd 0d039f145h
+dd 0ba903caeh
+dd 08db6ea72h
+dd 024f7ba6dh
+dd 04db01b7bh
+dd 042d0cdech
+dd 042b0556ch
+dd 0a93d2d5ch
+dd 0823288e6h
+dd 0dd5a0843h
+dd 0d4e6d4feh
+dd 0fae8a4f6h
+dd 0b69b60d2h
+dd 0badf70dah
+dd 08d1d9d9eh
+dd 0c828494ch
+dd 08379ef74h
+dd 0e671c476h
+dd 06bf8840ah
+dd 0356f0ac9h
+dd 04ad8a3a6h
+dd 0a3124353h
+dd 0f9771302h
+dd 07b17383eh
+dd 0df1f41b7h
+dd 0789ed047h
+dd 004c5edbeh
+dd 0453e9fc6h
+dd 0df6dadb9h
+dd 0875b3067h
+dd 0ad93ee0eh
+dd 04aec42ebh
+dd 0402e792dh
+dd 05081b336h
+dd 0783e5570h
+dd 06bcafac9h
+dd 0e8239510h
+dd 048799092h
+dd 074eabcb1h
+dd 024a049e9h
+dd 0816c41a8h
+dd 0c0565453h
+dd 09fe48c33h
+dd 0b355e80fh
+dd 039d8e9cfh
+dd 01b67714ah
+dd 0a4dc393bh
+dd 0b0f3f2e7h
+dd 065c77096h
+dd 02e58b5d0h
+dd 0af82f48ah
+dd 03de1e84dh
+dd 0499222fch
+dd 0d76845a4h
+dd 0097af49ah
+dd 0f592d956h
+dd 0aab75963h
+dd 0959b1726h
+dd 0c8cb1f68h
+dd 0f3ff67fah
+dd 006243b25h
+dd 09ee30b90h
+dd 03c8c911bh
+dd 05bd64c18h
+dd 0a1b9db86h
+dd 0c0556540h
+dd 0cec8719eh
+dd 07efcaa08h
+dd 0a8cc7bcfh
+dd 0b9e8fedbh
+dd 02f0e69f6h
+dd 07c07dc67h
+dd 0180e1b97h
+dd 05cbdea93h
+dd 079655e99h
+dd 08aef2ae0h
+dd 0f8edd81dh
+dd 097a2e521h
+dd 0d1d7fbd8h
+dd 0a78e776bh
+dd 07e8f8173h
+dd 0c5609cech
+dd 046eca7bdh
+dd 01b2b0f29h
+dd 0f51f9c9bh
+dd 0e020c7dbh
+dd 01cd05740h
+dd 0a8ac3a58h
+dd 073721542h
+dd 0e7c94cd0h
+dd 0dc06f017h
+dd 0c761007ah
+dd 0c6eb9250h
+dd 0c4ab39afh
+dd 0b43432c8h
+dd 054687695h
+dd 06bafbe26h
+dd 02f850777h
+dd 0b31ab826h
+dd 0168f2ef3h
+dd 0d318b20fh
+dd 04e8d1292h
+dd 0e481c8a1h
+dd 0b9979bd9h
+dd 0c4fddd32h
+dd 0e7998478h
+dd 0e6a74dbdh
+dd 09ba43421h
+dd 0f1168f76h
+dd 0a48c1e65h
+dd 03bac95deh
+dd 0ce223dd6h
+dd 0de347d2fh
+dd 0c0ae441fh
+dd 0ef59cf22h
+dd 03d4745e8h
+dd 0b8999624h
+dd 0618269eeh
+dd 02763dfafh
+dd 0ed1e6c4bh
+dd 0f05952d5h
+dd 0d3903cach
+dd 0b991564ah
+dd 0306b05c2h
+dd 019657246h
+dd 0e07f0999h
+dd 0124d2036h
+dd 0059c5faeh
+dd 029df4661h
+dd 0e177372eh
+dd 059f16fd9h
+dd 03c5fa2d6h
+dd 088f19cc3h
+dd 0c33580ceh
+dd 0695c9118h
+dd 0d8ae3663h
+dd 098e64ebah
+dd 09c0c1614h
+dd 0f09d3f5bh
+dd 07ee9ba76h
+dd 0aafee442h
+dd 0d0a87739h
+dd 08f46dc37h
+dd 0c94cb204h
+dd 0cf0dba0bh
+dd 045e3a6bfh
+dd 0e8d1bd44h
+dd 0c64725c9h
+dd 017da8867h
+dd 0b196e759h
+dd 0b40f77e2h
+dd 0d49a2bd9h
+dd 08b1b3dd0h
+dd 02e8c7bd0h
+dd 0843f548ah
+dd 056d4b005h
+dd 0ed7eedfah
+dd 00ffdd352h
+dd 0251f59f9h
+dd 0732f0ba0h
+dd 0357910f0h
+dd 027b2e591h
+dd 004028518h
+dd 01bc5cf8dh
+dd 0070cdbb6h
+dd 0166311f7h
+dd 017bd5d6ah
+dd 081e2760dh
+dd 0c7fa0560h
+dd 04590d716h
+dd 0185a8931h
+dd 0cf719339h
+dd 00c426e53h
+dd 0af2393c4h
+dd 0c77db2d2h
+dd 050c4a2e9h
+dd 0d0cbaad1h
+dd 09793898eh
+dd 0547caa67h
+dd 0ff195623h
+dd 0b5a087ech
+dd 08344be71h
+dd 0967d6506h
+dd 0df204088h
+dd 075a9f2b8h
+dd 00e44e212h
+dd 0b06c96d1h
+dd 00fdebfa7h
+dd 079bf51bbh
+dd 0add70486h
+dd 0a3e7094fh
+dd 0f9bde632h
+dd 028da64c9h
+dd 01ab351a7h
+dd 0e7ee35dbh
+dd 01ae0278ch
+dd 0d438b526h
+dd 0e96bd30dh
+dd 0af706170h
+dd 03bf5183bh
+dd 0d992799ch
+dd 0a4ead95eh
+dd 0247d3447h
+dd 03aeba81bh
+dd 0b2b510a5h
+dd 053713d03h
+dd 02d53917eh
+dd 01c36814ah
+dd 0db3c8d28h
+dd 07cd43d56h
+dd 0b70ecde7h
+dd 06cfbd9feh
+dd 0a867494dh
+dd 05396f778h
+dd 01d5f32f1h
+dd 07eb265c1h
+dd 0f4da923bh
+dd 05a069637h
+dd 0eda8ed86h
+dd 08038c88ah
+dd 00ff59242h
+dd 0c1c9afd9h
+dd 0c8b6b09fh
+dd 00c0ceb14h
+dd 0565ecf26h
+dd 055b098cdh
+dd 060d4401eh
+dd 0a9762387h
+dd 01e20f0b5h
+dd 0f825eb90h
+dd 0a39e23b4h
+dd 0b3696314h
+dd 0ae898877h
+dd 09e624ac6h
+dd 0e0e187d6h
+dd 080316602h
+dd 0f4fd7cd3h
+dd 0909ba9c3h
+dd 070f66d93h
+dd 0b5643034h
+dd 030a5fa65h
+dd 0301916fdh
+dd 03a79895dh
+dd 06376da7ch
+dd 0c378002ah
+dd 027f4af9ch
+dd 0bfb57e7ch
+dd 055ac38a7h
+dd 03852eca3h
+dd 07eb4d650h
+dd 0bee60660h
+dd 0cc35e79ch
+dd 035940b6fh
+dd 02985cdefh
+dd 02dfa495eh
+dd 04ae7563ch
+dd 0953695e5h
+dd 0855443e9h
+dd 09b0f3503h
+dd 07154fc94h
+dd 08e4f03f8h
+dd 0cbf4fa1bh
+dd 0e1759cd9h
+dd 072d50985h
+dd 0a9457e1dh
+dd 0e9702793h
+dd 0840a835ch
+dd 03dfeb3dfh
+dd 0e1709d7eh
+dd 000e88027h
+dd 0908a40e8h
+dd 051304f70h
+dd 0a556070fh
+dd 04f50c510h
+dd 011efc1a6h
+dd 020f0ddeah
+dd 0a7f37879h
+dd 0e172d7f6h
+dd 0fbf58202h
+dd 0bf28a23dh
+dd 0d3edf393h
+dd 07d0f3c1ah
+dd 045558451h
+dd 0971be9bah
+dd 0dd2ce4bah
+dd 0addd7a49h
+dd 02c077d7eh
+dd 09acd1bffh
+dd 018bf2933h
+dd 051345c21h
+dd 0c0e91b5ah
+dd 0f981dbc3h
+dd 0a0c18305h
+dd 08f3d4e13h
+dd 0ea3e9b97h
+dd 0e1eef690h
+dd 08146ce84h
+dd 0ea403c57h
+dd 08d03935bh
+dd 08d54a8a6h
+dd 08621fac6h
+dd 09db24554h
+dd 0a021b1ech
+dd 0da26150dh
+dd 0a2a7c643h
+dd 03f516352h
+dd 089c58c5dh
+dd 0a9c787efh
+dd 0e39c2c35h
+dd 0dce3e77eh
+dd 00253d329h
+dd 01628ccebh
+dd 0dba83da7h
+dd 0b5d86a8dh
+dd 0eed22daeh
+dd 0c908b0e3h
+dd 052150f56h
+dd 02eef49a0h
+dd 0685cbd86h
+dd 03e5e8cd2h
+dd 06cbc8985h
+dd 0e1bbd219h
+dd 0eb40e394h
+dd 0e3eb1e8bh
+dd 04d55574bh
+dd 017be8107h
+dd 0f5a96f91h
+dd 06a883c60h
+dd 09dbb6237h
+dd 076e7886ah
+dd 0b2020b07h
+dd 0dc11b502h
+dd 0d02f0ecbh
+dd 0940d619fh
+dd 0b4395c20h
+dd 0bc840e03h
+dd 047585d10h
+dd 0c2e09ed5h
+dd 0dc0c004ch
+dd 0f9fe1404h
+dd 0a0dbe5e7h
+dd 03a621b31h
+dd 0c8968c9fh
+dd 0cd8daf61h
+dd 09194668dh
+dd 01a610db0h
+dd 0c01cfad7h
+dd 00a26140ch
+dd 05b14e321h
+dd 0b7ca7525h
+dd 09cc2214ch
+dd 0f4ea355dh
+dd 02d268c88h
+dd 0a2d170a3h
+dd 0b68acc81h
+dd 0738c4409h
+dd 0870af4bch
+dd 041382876h
+dd 029ac2f9ah
+dd 0ff4a4c0bh
+dd 031ff9c10h
+dd 01fee9f28h
+dd 079fa2d94h
+dd 0e5841522h
+dd 00a481889h
+dd 0c8f83c3ah
+dd 0bfc57088h
+dd 0cce3d879h
+dd 0c527517ah
+dd 0fff10ef5h
+dd 0a4b714ceh
+dd 0f0df5f81h
+dd 05d924e98h
+dd 0769d074eh
+dd 06fc48dc4h
+dd 0163ec6ffh
+dd 00ab7723bh
+dd 07dac653dh
+dd 038b5092dh
+dd 08944d7cdh
+dd 0d7277895h
+dd 02a8028bdh
+dd 0c8a4d37bh
+dd 0a4f72303h
+dd 0edfde0d2h
+dd 0fdff8011h
+dd 001913e94h
+dd 0bd1b7739h
+dd 0fa2c9f3ch
+dd 0bec13fd4h
+dd 0e7789315h
+dd 075d4df23h
+dd 02fb86673h
+dd 0ca2404f7h
+dd 069272539h
+dd 08de1e492h
+dd 0205698bfh
+dd 0714d30f0h
+dd 03aee0a84h
+dd 036673926h
+dd 021e714fah
+dd 08f039684h
+dd 04dd6753fh
+dd 0685d551ah
+dd 00771fe23h
+dd 076661df9h
+dd 0d3d6263eh
+dd 0873b0d00h
+dd 0af5c5a17h
+dd 0d26c4c23h
+dd 0b1abc31bh
+dd 02043b0eah
+dd 05d115486h
+dd 0b3d33c7dh
+dd 05ea35651h
+dd 0239ae398h
+dd 09cf7351ch
+dd 0ae346f51h
+dd 0e2935245h
+dd 0957c4ff4h
+dd 02018e061h
+dd 082dd3e7dh
+dd 02f351392h
+dd 0ce6b9608h
+dd 0f7bf3c47h
+dd 07999139dh
+dd 09ff6b750h
+dd 0324826f4h
+dd 024cd7f6eh
+dd 08f6e7526h
+dd 01b222be6h
+dd 0be9e60a2h
+dd 086ba889eh
+dd 08bae0555h
+dd 00660097ah
+dd 0f311488ah
+dd 0feb43d10h
+dd 0388ea440h
+dd 07c603586h
+dd 0228df3d2h
+dd 0493b7e29h
+dd 01fa2906ch
+dd 094e27d51h
+dd 001cd9552h
+dd 05e707750h
+dd 07b89218ah
+dd 0a01daca0h
+dd 0bcdd1c22h
+dd 03d65e9a1h
+dd 0cc99aa8ch
+dd 0ba46821ch
+dd 0fcef0aa5h
+dd 0be715c3dh
+dd 0ae8a27e2h
+dd 01391caefh
+dd 0b2cf4e21h
+dd 0d0ac463eh
+dd 0629c02cdh
+dd 099f7c5cch
+dd 0534dba13h
+dd 0b657a801h
+dd 0628091ceh
+dd 0723102cch
+dd 06fc9d970h
+dd 0cf54acceh
+dd 09ea79ee3h
+dd 0636d1d41h
+dd 06a75d90bh
+dd 0690da61ch
+dd 016c5091dh
+dd 06bd3d3ddh
+dd 0a811dd7fh
+dd 0ed44a762h
+dd 091b2471ch
+dd 0846230e1h
+dd 0d0bdff3dh
+dd 0323224f3h
+dd 0978208f1h
+dd 067d2f0a6h
+dd 0f18e50c1h
+dd 09ba2f51dh
+dd 0d27fc3ddh
+dd 0fcccf81ch
+dd 0eaaefccfh
+dd 08fe11bc8h
+dd 0bed7ca2ch
+dd 0e23757e9h
+dd 067067bc6h
+dd 0a8ca8273h
+dd 0cd584a4ah
+dd 0eedd4742h
+dd 0d356bafah
+dd 07acf82deh
+dd 088df0153h
+dd 0eacd576ch
+dd 07506d2adh
+dd 03063c823h
+dd 03cd6161eh
+dd 073104302h
+dd 07e0e6323h
+dd 040e9e0b0h
+dd 0d1c09e09h
+dd 04d857e6eh
+dd 004ae0b5eh
+dd 0850f657ch
+dd 06e0f0c19h
+dd 06cb4556dh
+dd 00be7c097h
+dd 0df2db6bah
+dd 07c86528ch
+dd 050c96350h
+dd 0aff78fa3h
+dd 0a25df3bfh
+dd 0fe90d54eh
+dd 0db80b142h
+dd 0643a1ce3h
+dd 0dd741deeh
+dd 0523c38ffh
+dd 02e25e7d3h
+dd 00f121dcch
+dd 0aecba702h
+dd 0bdc2efcfh
+dd 0f8d1aba1h
+dd 0d67f00beh
+dd 0c708c2b1h
+dd 0180564aeh
+dd 0c3db03c9h
+dd 0739c04feh
+dd 077ab109ch
+dd 0bf4dfb00h
+dd 003ab1fbah
+dd 065274794h
+dd 0e01d6bfah
+dd 0ba82c345h
+dd 0d12de8f9h
+dd 0c1ff976ch
+dd 0828b5505h
+dd 0e561c4e3h
+dd 056400ffdh
+dd 0b431b158h
+dd 078c2a1e0h
+dd 0076cb0e7h
+dd 0dfbbee4ah
+dd 06af204d3h
+dd 0e3971884h
+dd 0187860abh
+dd 0b1af3df3h
+dd 05b02c5dch
+dd 08d2cf6aeh
+dd 07406197ch
+dd 0b946cf5ch
+dd 0108f4dach
+dd 0fb5baa55h
+dd 0168380c4h
+dd 0555bbcf7h
+dd 085c27fe6h
+dd 0ee3ed391h
+dd 046b4e3e5h
+dd 00c8c26cfh
+dd 0e35d7100h
+dd 0b9152456h
+dd 02c5be475h
+dd 00ac4ce78h
+dd 0d852b4b6h
+dd 0e8c7d6e7h
+dd 08174954dh
+dd 079eed3d2h
+dd 054ba313eh
+dd 072c54560h
+dd 00c5c7db7h
+dd 0d2cfbd92h
+dd 033d00200h
+dd 0c5a466b8h
+dd 0eb6dee95h
+dd 0dfa33499h
+dd 06f4953dch
+dd 06bf7cf5bh
+dd 0efe97aa1h
+dd 0eab120a4h
+dd 01cf8be7ch
+dd 06dc87ccah
+dd 01394d8fah
+dd 025fce1f2h
+dd 062d7d1cch
+dd 0c32ca543h
+dd 09462f9b8h
+dd 0c9b95dd0h
+dd 071ed0a76h
+dd 0c6070d8bh
+dd 05125e312h
+dd 02c7ea104h
+dd 05d875955h
+dd 09f9f5a14h
+dd 0cf21dde8h
+dd 09b8d1bc8h
+dd 082b75b88h
+dd 0ed24df93h
+dd 0d5d4dbdeh
+dd 07e508583h
+dd 0a4032e0eh
+dd 08fa4618bh
+dd 0c4a62c45h
+dd 0c54b0c80h
+dd 07a573436h
+dd 044f2888ah
+dd 0e652697ch
+dd 0204828bah
+dd 0cf9c8455h
+dd 0456570fch
+dd 00cf0aa59h
+dd 0174b55e3h
+dd 032a6564dh
+dd 08564d0b7h
+dd 0f562dd8bh
+dd 061eff4e5h
+dd 09ce1d216h
+dd 0a2be51f8h
+dd 092283232h
+dd 0b392b5ffh
+dd 0af8e4eedh
+dd 0494b9792h
+dd 0b84d4db2h
+dd 01a7f5c61h
+dd 0122ac8fdh
+dd 055443642h
+dd 0100c55fch
+dd 01a5cafc8h
+dd 022debe1eh
+dd 0bc3f7c3ah
+dd 0c73d575eh
+dd 09fb38203h
+dd 04f87051fh
+dd 04f403ec0h
+dd 0fb13fd31h
+dd 0a3c5112bh
+dd 0e08a2b16h
+dd 0221186a6h
+dd 0d324b8e1h
+dd 0bbddcf8bh
+dd 07fcdbe4dh
+dd 05a5bc2fdh
+dd 0b1156ed1h
+dd 02f11b555h
+dd 0c21712f1h
+dd 04a9a13d8h
+dd 0a50dd279h
+dd 064b0342ch
+dd 07177fe7ch
+dd 0aaf011d3h
+dd 075cfdd8dh
+dd 01738493fh
+dd 03e199b9bh
+dd 06ffe5d2dh
+dd 02c04f610h
+dd 02df7b2e7h
+dd 09d2fe2ech
+dd 008a74fdfh
+dd 0f8743553h
+dd 0d4a94133h
+dd 05fd309d0h
+dd 0c12229c9h
+dd 0b1b124ebh
+dd 0abe0a926h
+dd 0eca28d28h
+dd 07a2acac2h
+dd 0154cd4dah
+dd 0bb908367h
+dd 0cc8d6f30h
+dd 0588fccf3h
+dd 00074891fh
+dd 0b6eb080bh
+dd 0629999c6h
+dd 0b9cd252dh
+dd 08eed05dbh
+dd 09347e985h
+dd 0c1d46cdeh
+dd 07313c070h
+dd 0f79d327eh
+dd 0d95ca765h
+dd 0e1190b70h
+dd 04dc981f4h
+dd 0da6d94a3h
+dd 0190c2032h
+dd 03ba5ba92h
+dd 03f3ba54fh
+dd 0b7631be7h
+dd 0b0a1748ah
+dd 042490e49h
+dd 061b656d2h
+dd 019a6ec7ch
+dd 074ee1e18h
+dd 0b6ff1e15h
+dd 03f75a8aah
+dd 0637180e9h
+dd 084ddffd3h
+dd 049bf5799h
+dd 0a2e864e6h
+dd 0a31150c2h
+dd 0d79a652dh
+dd 04a41b1f4h
+dd 058a3ccc4h
+dd 0b9d8914dh
+dd 0dabe3075h
+dd 077d12bb5h
+dd 0d2908eafh
+dd 0bbbaecd4h
+dd 06aef9ffch
+dd 0bbe04413h
+dd 0c1b6bb39h
+dd 0b2254c9fh
+dd 0dbefc627h
+dd 06f5eb3b9h
+dd 07a7997aeh
+dd 041fe85ddh
+dd 05eb32fa3h
+dd 004243e06h
+dd 037a8a1deh
+dd 0ab0fdeafh
+dd 04e2c8855h
+dd 091e3b438h
+dd 0aa497e43h
+dd 097d2462dh
+dd 06e8ebdb2h
+dd 0e6a336aeh
+dd 0daf27719h
+dd 0ee42ba46h
+dd 0688c043fh
+dd 092ef965fh
+dd 0d0dd6eeah
+dd 0de9f5338h
+dd 0534cad3ch
+dd 01b3f12dah
+dd 03f14087ch
+dd 025445b99h
+dd 002f2e791h
+dd 0a2ffb313h
+dd 06dc72261h
+dd 048873327h
+dd 0a89af1bbh
+dd 02b3413abh
+dd 04dd2f41dh
+dd 01fe4d895h
+dd 01b005fa8h
+dd 0c517668bh
+dd 026c38783h
+dd 072913ac6h
+dd 0194cd313h
+dd 0927dd817h
+dd 0605c86a9h
+dd 012f5e3bah
+dd 0729f1f60h
+dd 0ef49ba6dh
+dd 006cd624dh
+dd 0c22df42ch
+dd 0d11fe15ah
+dd 0d75fa350h
+dd 0c75d79d7h
+dd 097083140h
+dd 01fb24b1ah
+dd 0f513818ch
+dd 016debc55h
+dd 07023a12fh
+dd 0191c6a5ch
+dd 071253bc1h
+dd 0c3674dd5h
+dd 0d274965dh
+dd 05eb0285bh
+dd 08197de5dh
+dd 0fce4a406h
+dd 07808b430h
+dd 0c8861a17h
+dd 0e5861364h
+dd 061cd048eh
+dd 0ba952b63h
+dd 00f2e809eh
+dd 005537a2bh
+dd 033eac8eeh
+dd 0dc5be0ddh
+dd 0a5004545h
+dd 03d4079c2h
+dd 051fefa1bh
+dd 0ead03280h
+dd 029b398a3h
+dd 0f501dbd6h
+dd 04f454d1eh
+dd 0ea8f8c2fh
+dd 0d9f3f71bh
+dd 047f0d8eah
+dd 04c2c198bh
+dd 0199f93c6h
+dd 0e76663e1h
+dd 0b1167210h
+dd 00e78d7abh
+dd 0ceee4ba2h
+dd 0d4cf044ah
+dd 06b8833e6h
+dd 0154bcf6ah
+dd 0924bd785h
+dd 0fe5833deh
+dd 080fd5d76h
+dd 06d89143ah
+dd 02dfec09ch
+dd 06a515075h
+dd 059aef705h
+dd 02b040bfeh
+dd 035c9d7e1h
+dd 0b6682e7ah
+dd 0324dd827h
+dd 088f6f986h
+dd 09cd979fch
+dd 011fa189fh
+dd 0e109ba0eh
+dd 0c1da4654h
+dd 043a99dc1h
+dd 07ded7afdh
+dd 05db6a9ach
+dd 076693fc9h
+dd 080c7eebfh
+dd 0b4136db7h
+dd 07cfd72f8h
+dd 08577a631h
+dd 0d169188fh
+dd 06fd1955dh
+dd 03d3eb40eh
+dd 0bacdcc5eh
+dd 005288539h
+dd 0bd3fc492h
+dd 08d73361ch
+dd 02a388ba0h
+dd 08692a55dh
+dd 0ee159305h
+dd 0656318f3h
+dd 08ae91555h
+dd 0aa39ef23h
+dd 08940bd1dh
+dd 0bc887fbdh
+dd 04c392311h
+dd 0ae407496h
+dd 01ec3be97h
+dd 082d27a4dh
+dd 0b1c9d8d6h
+dd 073966ca0h
+dd 0f83bc796h
+dd 00a208cd5h
+dd 0b4a6bbbah
+dd 0c87def1bh
+dd 024cf26bah
+dd 0f10acb92h
+dd 0fa132f59h
+dd 058dc4cefh
+dd 0b74c5ed6h
+dd 06d10c448h
+dd 0cb7adb1bh
+dd 07b88a465h
+dd 09bf7b61eh
+dd 080d1f87ah
+dd 05900c9fdh
+dd 0be18ecefh
+dd 08cd80342h
+dd 0a86c75bfh
+dd 0affa116bh
+dd 0ff077650h
+dd 0239eafb2h
+dd 06f2d4fc7h
+dd 0ec338e56h
+dd 029b1bd33h
+dd 073847463h
+dd 0e2af1b0ah
+dd 063c282ddh
+dd 0bafce293h
+dd 04e4996e1h
+dd 067590052h
+dd 0026fe22bh
+dd 0d0321359h
+dd 0465dacc8h
+dd 0448f0817h
+dd 08329a1ech
+dd 0fdc49937h
+dd 09520f647h
+dd 0656ca0edh
+dd 05534cbf2h
+dd 0680c7e11h
+dd 013c2fe74h
+dd 0ff52a6c8h
+dd 040488e33h
+dd 0dcdd90f5h
+dd 0fde93e0ah
+dd 0833de260h
+dd 0a6234db4h
+dd 0370092e1h
+dd 00167e9dch
+dd 07b2734fah
+dd 08bb89a9fh
+dd 02c72fb8ch
+dd 0591f4366h
+dd 0a4f1374ch
+dd 098b5fafbh
+dd 03734ee95h
+dd 036f438d3h
+dd 0bed0d94ch
+dd 0d923adffh
+dd 06f4ddda3h
+dd 0dd534bfdh
+dd 07ac55bdbh
+dd 0a0baf2ddh
+dd 0b1cccefdh
+dd 058540212h
+dd 0ebcf292fh
+dd 00a2dfcebh
+dd 09a50d6b8h
+dd 03107cee7h
+dd 08e538c0dh
+dd 057c05464h
+dd 07a151189h
+dd 059e39ae9h
+dd 0c960c9b7h
+dd 0d61fab1eh
+dd 0378005dah
+dd 0637b8ea0h
+dd 0450d8745h
+dd 0a367b10fh
+dd 0d6fe25adh
+dd 0d8c44408h
+dd 04c1ee4feh
+dd 088b453ddh
+dd 08f6c6c09h
+dd 0b7346a5eh
+dd 0faaa245ch
+dd 01691df39h
+dd 0ae951710h
+dd 080dd0a02h
+dd 06dcd44d6h
+dd 0127c1dfdh
+dd 0ed1691c5h
+dd 06653b1e0h
+dd 05964f590h
+dd 06f7935e0h
+dd 0ed888a69h
+dd 0ca0b7078h
+dd 080a99f0dh
+dd 03fb96863h
+dd 015acfe61h
+dd 01fb282fdh
+dd 0544a698ch
+dd 0f5fc17c3h
+dd 0958ca1c2h
+dd 0ad13302ah
+dd 017ef3ff8h
+dd 09c7b4644h
+dd 0c4b24740h
+dd 0540d92ddh
+dd 0f8e387d4h
+dd 0792ff9f0h
+dd 0438fe413h
+dd 094bf0597h
+dd 03b9ebcfch
+dd 0b2d9126dh
+dd 0b9e15e98h
+dd 03cfa242eh
+dd 06286dd46h
+dd 0dc99c21ch
+dd 0b2401bd2h
+dd 0dda8edeah
+dd 0401abdbfh
+dd 08c0a1a8eh
+dd 0910ba456h
+dd 0e6ec5cf9h
+dd 0017e283ah
+dd 0b907099eh
+dd 054b60933h
+dd 0bb79509ah
+dd 08bb7db36h
+dd 069067cf8h
+dd 0f6e85a77h
+dd 0702933d4h
+dd 075592a2ah
+dd 07a76b028h
+dd 05c1910c1h
+dd 0a5478fbfh
+dd 093ecb9b7h
+dd 07d3c9d20h
+dd 013863d55h
+dd 0de9a5563h
+dd 089bf92f6h
+dd 0db36a24dh
+dd 0c6695d8dh
+dd 0face9109h
+dd 0a7b56184h
+dd 0b454d1f1h
+dd 0bbb3aafdh
+dd 0fdc25929h
+dd 0827b5f1dh
+dd 015df30e7h
+dd 0881c0111h
+dd 062406c01h
+dd 003b3d7f8h
+dd 0f106eca8h
+dd 08aa949dch
+dd 077e273abh
+dd 021e56665h
+dd 086eb6f56h
+dd 0ed70bb29h
+dd 0f9ce63a1h
+dd 0407c925eh
+dd 0f7fecf5ah
+dd 07d27ecefh
+dd 031c0d107h
+dd 030daef63h
+dd 0088eaa52h
+dd 05fc52638h
+dd 0aa0999f0h
+dd 00a93bcdah
+dd 03e466682h
+dd 0f8fc833bh
+dd 0b9df37cch
+dd 0db4ed621h
+dd 0fa4d3b9ch
+dd 036e8fc39h
+dd 00a9f16bfh
+dd 0bd794903h
+dd 0816db3cfh
+dd 051751c38h
+dd 0e14be528h
+dd 0441c10a8h
+dd 04e407901h
+dd 0f377a30eh
+dd 0e9f2b833h
+dd 0179616b7h
+dd 038ebd29ch
+dd 03db07d76h
+dd 07ebf40afh
+dd 0a902a10eh
+dd 059fc5e7ah
+dd 02cb3c4f2h
+dd 0bfd84715h
+dd 046066d99h
+dd 0710eaa77h
+dd 0bbd75539h
+dd 0a27f2bddh
+dd 069f5d508h
+dd 0f22524dah
+dd 078b77cd8h
+dd 0ceb646a8h
+dd 0d1297c04h
+dd 0a5558a03h
+dd 05bc2fa3dh
+dd 0ee60db3eh
+dd 0d1b7ecbbh
+dd 0cd5a0945h
+dd 02155133fh
+dd 08ddf012fh
+dd 0561ee4c1h
+dd 065724d45h
+dd 04dd1a285h
+dd 02dc333a2h
+dd 060324118h
+dd 0533787dah
+dd 095d98430h
+dd 03a0bde3bh
+dd 0c23e5296h
+dd 0f34f92dfh
+dd 064c70eb0h
+dd 06d6713dah
+dd 0bf42bc58h
+dd 06fa02928h
+dd 026a8fb2eh
+dd 0ade1ff00h
+dd 02accb5d6h
+dd 04df93ff5h
+dd 0b65c68cdh
+dd 0dbd7bef9h
+dd 01add4d0bh
+dd 0de48a4e8h
+dd 07c7295c4h
+dd 05260cf68h
+dd 01802cf11h
+dd 008693db6h
+dd 0e2b0c124h
+dd 0c5f5ea75h
+dd 01dc81471h
+dd 03c9196d5h
+dd 0810f31f8h
+dd 0dac3daa1h
+dd 0a535c250h
+dd 089df35d5h
+dd 0f1cd5c83h
+dd 005050a2fh
+dd 03b6bd7d6h
+dd 0d43e203ah
+dd 08fa5d4deh
+dd 0eaad7d7bh
+dd 0e9ea0391h
+dd 03bf3e74eh
+dd 0cee185e7h
+dd 0f633065eh
+dd 0c8b9be70h
+dd 0a57e5d14h
+dd 0a891789eh
+dd 06e914528h
+dd 0fcb6611ah
+dd 065920cd9h
+dd 01de615f9h
+dd 0cec8d5fch
+dd 00125f1a0h
+dd 0b1cc2d6eh
+dd 082cc8e38h
+dd 000ce1995h
+dd 048e1efbdh
+dd 0c2de9213h
+dd 00976e958h
+dd 0181bae5bh
+dd 0439d9269h
+dd 0306b34c2h
+dd 0992e4afah
+dd 03eebb79ah
+dd 05510b13eh
+dd 0df2d6dd1h
+dd 0c5f2707bh
+dd 0917d1855h
+dd 020752c7dh
+dd 0abf3690eh
+dd 0c509255eh
+dd 0a2448e72h
+dd 0be12a6d7h
+dd 05b88bcbah
+dd 036640193h
+dd 064802560h
+dd 0ff89c44bh
+dd 02ae39dffh
+dd 05ec1db98h
+dd 01fc4ea48h
+dd 0c6d253f7h
+dd 0b3ee6136h
+dd 01c4dabdah
+dd 01ad9815dh
+dd 046b66286h
+dd 0c3bd5259h
+dd 0e0698ce3h
+dd 0c17e53c8h
+dd 0b992946ah
+dd 0fe2a4502h
+dd 03cdd068fh
+dd 0060d5a56h
+dd 09141da67h
+dd 09e0948dch
+dd 054bb77b7h
+dd 07377855dh
+dd 063d14afdh
+dd 072669ad4h
+dd 0f180efb2h
+dd 0416ca9c6h
+dd 01cdbe8a6h
+dd 0a3f10067h
+dd 030673d68h
+dd 0000458a4h
+dd 08c5deb5fh
+dd 0689bdc72h
+dd 0b9fa0df4h
+dd 0de000475h
+dd 0b368c47ch
+dd 0b66ee3a3h
+dd 0989d025eh
+dd 0182a63d4h
+dd 04c7d7a52h
+dd 0b91abf62h
+dd 0b1713a7ch
+dd 051c6e9efh
+dd 06221815eh
+dd 076f40bafh
+dd 06e211bb1h
+dd 0dbf3c9cah
+dd 08787069fh
+dd 09b0a23a4h
+dd 03577eec4h
+dd 0b9991009h
+dd 02e9ac8e0h
+dd 0785e4b84h
+dd 0078c209ah
+dd 0e68ff486h
+dd 0ac8b2b1fh
+dd 0413d87c8h
+dd 0e6cc8073h
+dd 056f9801fh
+dd 09e8dcae9h
+dd 0f9daad4bh
+dd 07f538726h
+dd 0192f4e9dh
+dd 0dc4f638ah
+dd 024c3c1a5h
+dd 0181e8f25h
+dd 059e89943h
+dd 07c7e3ae4h
+dd 0cafa72d5h
+dd 039cf4b91h
+dd 0f153ddf2h
+dd 0686112deh
+dd 0cb0a94a4h
+dd 072b7edc8h
+dd 0eb9d084ah
+dd 0e38a30e9h
+dd 05fa597adh
+dd 08cae5388h
+dd 037436d97h
+dd 05a889b91h
+dd 077c35a15h
+dd 02cdbfc5fh
+dd 0b05a33ech
+dd 00dc01841h
+dd 091d2f610h
+dd 0bbb1ad89h
+dd 024c014f5h
+dd 0dc13652dh
+dd 0e243878bh
+dd 027a12fffh
+dd 0388abef4h
+dd 014e64db5h
+dd 0c98826afh
+dd 0acc40dd5h
+dd 020a971dfh
+dd 0b6de5675h
+dd 0f4080a2bh
+dd 07d4847ebh
+dd 0df4492aeh
+dd 0e31612f8h
+dd 00b9e6942h
+dd 0a5e63c95h
+dd 058b5fca3h
+dd 005795476h
+dd 0a76c0895h
+dd 03e309ff2h
+dd 0ae757902h
+dd 0bd5b3b31h
+dd 062d6f8a8h
+dd 038652cf3h
+dd 05845c4a4h
+dd 0aad826e6h
+dd 05e3bb7e7h
+dd 0b27c9521h
+dd 0340a834fh
+dd 0716e3f71h
+dd 020102452h
+dd 0fa2b154fh
+dd 0532afe1eh
+dd 08c265cf4h
+dd 0f3099e56h
+dd 031ef7848h
+dd 0ae8e1977h
+dd 0e0bf5700h
+dd 0011c5471h
+dd 00d51ff1eh
+dd 06d4ad834h
+dd 0a07d7843h
+dd 04cbc4bdch
+dd 0a556569ch
+dd 008097a06h
+dd 0218a6d80h
+dd 0ebf13cffh
+dd 05d43b9beh
+dd 0a354d15dh
+dd 03567cfd4h
+dd 0cb866e37h
+dd 028bc4c11h
+dd 048f6264eh
+dd 0a0b6159eh
+dd 04ccee557h
+dd 0f184a0b9h
+dd 05e38a0d9h
+dd 0d69cd24ch
+dd 0a57e2880h
+dd 0959d6012h
+dd 01c5405c7h
+dd 0a2d29c0bh
+dd 09710af98h
+dd 0c3ce0c0eh
+dd 01662fbdbh
+dd 0c6490537h
+dd 04bd96ce3h
+dd 0b0d4717ah
+dd 0fc1fe509h
+dd 06d2c3cd8h
+dd 03730e632h
+dd 08cc1b787h
+dd 015b174fah
+dd 03ca94530h
+dd 007cc6e14h
+dd 07ff19b32h
+dd 094fa50cch
+dd 07a02e56ah
+dd 09603c79eh
+dd 0cc3e8f9bh
+dd 0b9355356h
+dd 0fa5d0aceh
+dd 0ccd3412bh
+dd 0d8e5206fh
+dd 0e09eabd1h
+dd 00742f0d5h
+dd 07a929642h
+dd 0e029c6e5h
+dd 0cd76b7f7h
+dd 0ae8ec9deh
+dd 0ffe01fffh
+dd 0f0e3e22fh
+dd 08134fe9fh
+dd 02299643fh
+dd 0990e96fdh
+dd 0e4d8ff88h
+dd 033b77d41h
+dd 0e7f133b2h
+dd 0ae56bb9dh
+dd 0bd461627h
+dd 02d6a6a8fh
+dd 0ffcb70dfh
+dd 08183ec64h
+dd 0a2ac97feh
+dd 09f09a848h
+dd 00ed996beh
+dd 0b61624d3h
+dd 0caef3601h
+dd 0ca6c6771h
+dd 000a06b9dh
+dd 00603045ch
+dd 08288a00eh
+dd 0f98e1ad4h
+dd 0f9e3db30h
+dd 0db22e873h
+dd 085f191d7h
+dd 0d639beach
+dd 0b2b8a74eh
+dd 0f19230deh
+dd 07186b9a1h
+dd 0eb7a5083h
+dd 0ba51e43bh
+dd 072c6c757h
+dd 0f7993377h
+dd 0762bef9ch
+dd 02409a0abh
+dd 00d3a334ah
+dd 0b7f9be59h
+dd 03faeb777h
+dd 02b02bc7ch
+dd 0dc5b8299h
+dd 05641436bh
+dd 0d7d986beh
+dd 0819bd8dfh
+dd 0f0015361h
+dd 004205c64h
+dd 006d7a081h
+dd 0b3c55ffah
+dd 0aca2de3dh
+dd 0777cb7f8h
+dd 0bfafb9dbh
+dd 0326f96b2h
+dd 06806efa9h
+dd 0d09f0af8h
+dd 0fc78b646h
+dd 03a78e4a5h
+dd 0cfd05c58h
+dd 0a317d08dh
+dd 09554f45dh
+dd 051a1960fh
+dd 0286cccfbh
+dd 08219b0bbh
+dd 014900bc6h
+dd 0d73ba30dh
+dd 0489e8c3fh
+dd 0eed7ca4bh
+dd 0a0be298fh
+dd 06dd04b43h
+dd 08bee402dh
+dd 0fbfe74f6h
+dd 0dcc2137dh
+dd 0902d108bh
+dd 0b147ee25h
+dd 073f942eeh
+dd 0c0f5bf6ah
+dd 0cd7e3390h
+dd 0fe750b65h
+dd 038205957h
+dd 0de72819bh
+dd 03aa518a8h
+dd 0c076bac9h
+dd 02c30f684h
+dd 0bcac2dbch
+dd 050433ca3h
+dd 0f9cbff05h
+dd 09a8e1746h
+dd 0a72a80b8h
+dd 054ca7cb7h
+dd 032f8acc4h
+dd 072da2963h
+dd 0d4c10b9eh
+dd 0ccd7ba4dh
+dd 0a63514cch
+dd 05df32df6h
+dd 09d4fbf23h
+dd 020c85556h
+dd 0622a368fh
+dd 04a7c3cbeh
+dd 0a21cb17dh
+dd 0d58f5c3ah
+dd 08a59b904h
+dd 0f51ca267h
+dd 07ab5defdh
+dd 0272ea9cbh
+dd 02e2add85h
+dd 0f2030c41h
+dd 09217d037h
+dd 026a4fe52h
+dd 01ef3fd6bh
+dd 08c79cb63h
+dd 0318dd46fh
+dd 09f4408ach
+dd 0e56bfd76h
+dd 0faf6b659h
+dd 01cb67b7dh
+dd 04613928ah
+dd 03049a15fh
+dd 022f20ed0h
+dd 0046d5dbbh
+dd 0be42457eh
+dd 053285356h
+dd 087a27460h
+dd 0feb4f821h
+dd 098231bb9h
+dd 01a7a2872h
+dd 0fbe9dc4eh
+dd 044c01854h
+dd 086ef903bh
+dd 051076238h
+dd 07210ed9fh
+dd 01d4bd6c8h
+dd 079437a39h
+dd 0eb4b53c0h
+dd 0e5806c80h
+dd 00b7d9b30h
+dd 02c29fe0fh
+dd 0503fb5efh
+dd 09181d33ch
+dd 0d96c5acch
+dd 0dd92ca1dh
+dd 05ff07a3fh
+dd 0ab206e79h
+dd 06eda1517h
+dd 09d8bb45bh
+dd 0fea2068ah
+dd 08bd96fe0h
+dd 0ed29a4d7h
+dd 0c48e2ceah
+dd 03ff165b3h
+dd 01c1303a8h
+dd 0db16bc1eh
+dd 05e59851eh
+dd 078b570a3h
+dd 0ba6d03d3h
+dd 08f66970dh
+dd 0282ebf6eh
+dd 08ce453deh
+dd 09c9c8defh
+dd 020a09716h
+dd 02f2f3665h
+dd 047240babh
+dd 06bc16af0h
+dd 0c62ccd68h
+dd 04e76ee8dh
+dd 01bf2c741h
+dd 010d3a789h
+dd 0ebfb1b17h
+dd 0c83f2393h
+dd 08be1724bh
+dd 0a3bd38efh
+dd 03bb2a9e5h
+dd 0a17e4f1fh
+dd 06506d9eeh
+dd 0ad99882fh
+dd 0903793cfh
+dd 006c38e87h
+dd 04733c659h
+dd 0c81eda73h
+dd 0fb3b70cdh
+dd 060f4a0dbh
+dd 0f7232041h
+dd 02348acf5h
+dd 003523dfdh
+dd 0301fb734h
+dd 077700e28h
+dd 03f28b4fah
+dd 07ff466b6h
+dd 0310141d5h
+dd 0ff6bf379h
+dd 0264d4aa9h
+dd 0045a0c10h
+dd 0d28f584fh
+dd 071ad3066h
+dd 06e94a526h
+dd 00109697fh
+dd 0e4e4d882h
+dd 0fdeabf99h
+dd 0b03a7f68h
+dd 0baab996ch
+dd 0a7c78b98h
+dd 03a9cc123h
+dd 0405d9aaeh
+dd 0035a54d0h
+dd 06bda9e4bh
+dd 07e7401fch
+dd 00c95026ch
+dd 0734e9d09h
+dd 08573bc32h
+dd 0a6259c29h
+dd 05c09a3e8h
+dd 023eaca3ah
+dd 0013b3b89h
+dd 026a3e87ch
+dd 01aebeba4h
+dd 059925064h
+dd 0b8bbeed9h
+dd 0b4d88fa8h
+dd 079ed927bh
+dd 089b11eb4h
+dd 08cbfbe50h
+dd 0a9ec6397h
+dd 0cf591386h
+dd 0f41607ebh
+dd 0ee3cd234h
+dd 072437adbh
+dd 0ccb73c19h
+dd 03e6da77eh
+dd 0170d6cd2h
+dd 0fe530708h
+dd 0de9dcbdah
+dd 0b560dabch
+dd 0ae56f764h
+dd 012ed9df1h
+dd 027587769h
+dd 03910589dh
+dd 0ea924e44h
+dd 00fe43fafh
+dd 06074c149h
+dd 01ef2b362h
+dd 0dca0202eh
+dd 0467d1e9dh
+dd 003a7a666h
+dd 0a5adc845h
+dd 04ee7d96ah
+dd 0c896aba0h
+dd 0fbddc1a0h
+dd 066fdd09eh
+dd 04a879c65h
+dd 0d8e1ecf3h
+dd 0d502031bh
+dd 05b0aaba4h
+dd 092ade478h
+dd 06b4011efh
+dd 0ece6023ah
+dd 093a533f7h
+dd 097397aeah
+dd 0b330490fh
+dd 0cd72ca18h
+dd 0702e318eh
+dd 098c85f34h
+dd 0d0ed8ab3h
+dd 08edf7abch
+dd 0579f0b58h
+dd 0b63ed57dh
+dd 000730e1fh
+dd 0fbf22455h
+dd 078032825h
+dd 0e7dadd45h
+dd 0fd381b2fh
+dd 0f048c4d9h
+dd 0cc1b564ch
+dd 00e32d272h
+dd 02b44de23h
+dd 046905b7fh
+dd 05900d8fdh
+dd 09825cae9h
+dd 04eef2755h
+dd 0bdb934c8h
+dd 07d35bc1dh
+dd 01df85626h
+dd 0239454a9h
+dd 039568e33h
+dd 0ac0697c1h
+dd 08d02a60ch
+dd 06d33ef86h
+dd 00728826ch
+dd 094b10fe4h
+dd 00b32e24dh
+dd 0bef8eeb9h
+dd 012566533h
+dd 00318cda2h
+dd 0cde70c48h
+dd 01592c151h
+dd 082c2f268h
+dd 0797609dbh
+dd 01246690fh
+dd 077bfd903h
+dd 0d9041e3fh
+dd 02538613eh
+dd 0603083e5h
+dd 01a819a72h
+dd 063e74a2ah
+dd 09714cd05h
+dd 0ba47be8fh
+dd 0a23ae804h
+dd 0f0175750h
+dd 08e970bbfh
+dd 07bcc78d3h
+dd 05185e3eeh
+dd 051a79250h
+dd 06e9fdd52h
+dd 059e79ed5h
+dd 039f82845h
+dd 08bc80320h
+dd 0a8afb910h
+dd 0c680b80bh
+dd 00dc7bd5bh
+dd 079e1b5e9h
+dd 07e504109h
+dd 0f92b25eeh
+dd 0a92d77eah
+dd 00f3199f0h
+dd 0b0bcfaf6h
+dd 092e338f0h
+dd 03f1a06ach
+dd 0f15616d5h
+dd 0bc354951h
+dd 07d2fd23fh
+dd 0a8064b25h
+dd 0f57728ffh
+dd 06d9948d8h
+dd 0a9e166efh
+dd 06cd49ef7h
+dd 079e99621h
+dd 02d472b52h
+dd 066f0edcfh
+dd 0da8b769ah
+dd 0f43286d4h
+dd 0bfcc7347h
+dd 0f43544ech
+dd 005bef746h
+dd 094d7c52bh
+dd 0811df303h
+dd 0cf0371fbh
+dd 08bb7ed3dh
+dd 04260c39fh
+dd 08ee88022h
+dd 05001254dh
+dd 04de5a78fh
+dd 03fa3da5ch
+dd 085bf524bh
+dd 04f712ab3h
+dd 013907aceh
+dd 060cb0fedh
+dd 09be71887h
+dd 09e6ae274h
+dd 0a025b71fh
+dd 0af638a6eh
+dd 02ab12e33h
+dd 0052ac336h
+dd 0766645cch
+dd 0d104dc95h
+dd 07051f877h
+dd 006694a30h
+dd 0d3e71286h
+dd 0d94c99deh
+dd 04a5e280bh
+dd 03c520be6h
+dd 040d0bfabh
+dd 0b0764c37h
+dd 011f4405eh
+dd 09d8f3fe9h
+dd 0cd5950d5h
+dd 02cbb402ch
+dd 07bc80b1dh
+dd 0a2dc58f2h
+dd 0da266cb6h
+dd 054a8d5eah
+dd 02cabf1edh
+dd 02fbf9223h
+dd 0c9eb8034h
+dd 0abdff1f5h
+dd 017fc3643h
+dd 05e6fbc89h
+dd 012b894f7h
+dd 020023012h
+dd 0f00ef18ch
+dd 08588d755h
+dd 025bf0c5ch
+dd 09b791519h
+dd 0e1d7b652h
+dd 0b5da0b31h
+dd 080fbed07h
+dd 0adbe3a24h
+dd 09b9af9dch
+dd 08a14c5a9h
+dd 0c2c0d212h
+dd 0058047c1h
+dd 0d02472d2h
+dd 0d7b6ce3bh
+dd 04935039eh
+dd 09b3432e1h
+dd 0cf4c5adfh
+dd 02771773eh
+dd 0fa33228ah
+dd 010bb5837h
+dd 03eb1cc85h
+dd 0b755817bh
+dd 0b45cbf85h
+dd 0b0a7a726h
+dd 07aba84cch
+dd 0d78502cch
+dd 01fda16f4h
+dd 00167acffh
+dd 0586fac95h
+dd 00433b13ch
+dd 0d7067440h
+dd 0719ad914h
+dd 0bafdc01ch
+dd 0d1688429h
+dd 0a641a2beh
+dd 079df6f12h
+dd 025ee7588h
+dd 0ba26629fh
+dd 0218e6764h
+dd 03cf50925h
+dd 05198afffh
+dd 008f812e8h
+dd 0e056a98bh
+dd 000db57f4h
+dd 065e48f51h
+dd 08ca860f1h
+dd 0cebd48e4h
+dd 00c070c93h
+dd 01e085c3ch
+dd 014e63acah
+dd 064d631a8h
+dd 08c36c4f7h
+dd 0fe2afe08h
+dd 0817bdf1ah
+dd 0f3d3f617h
+dd 0ece3feb2h
+dd 0c0bb289ch
+dd 075245479h
+dd 03ff66e28h
+dd 0ffbe5943h
+dd 0763a887eh
+dd 05f357d19h
+dd 0549bb463h
+dd 06a743a86h
+dd 070e227bbh
+dd 06d2341d3h
+dd 09343f412h
+dd 0a4e066b4h
+dd 092fb761dh
+dd 0b2d141fah
+dd 0734a8c1dh
+dd 07dddd9b2h
+dd 02534b686h
+dd 023725d42h
+dd 0f66bde15h
+dd 089945a92h
+dd 0481fb12bh
+dd 084badbf6h
+dd 0efd5a7b7h
+dd 0372b9620h
+dd 0efd4d002h
+dd 0c297db8ch
+dd 0e5fea7dch
+dd 0e0449414h
+dd 0293a10ech
+dd 0bdf8517fh
+dd 058675c4dh
+dd 06d44b49eh
+dd 06cf6ba6eh
+dd 0255a3202h
+dd 01a76db8bh
+dd 07ad70d65h
+dd 0bd758e1ch
+dd 0c5af3708h
+dd 0e2df7264h
+dd 00c223038h
+dd 0a3f617f3h
+dd 046a85485h
+dd 00c152a34h
+dd 0d1e9ace4h
+dd 0b2e1f24fh
+dd 08000d5a4h
+dd 05bc8d195h
+dd 0a6c5dfc5h
+dd 07aa96607h
+dd 0c1ceb271h
+dd 06e994380h
+dd 0acb50f62h
+dd 01e0ecc35h
+dd 08be80b9eh
+dd 0fb23d71bh
+dd 06659e0dbh
+dd 0b228798dh
+dd 025155697h
+dd 0a9127d85h
+dd 0bd7544a8h
+dd 0d0aca694h
+dd 0858829dah
+dd 02394039ah
+dd 016ac6caeh
+dd 01f85767ah
+dd 077722770h
+dd 06e3ba550h
+dd 0aa0d10a9h
+dd 064b19040h
+dd 02921ddc5h
+dd 0305e4702h
+dd 0ae5bc61ch
+dd 053027985h
+dd 0b373ea5eh
+dd 0a343431bh
+dd 00fe9ec13h
+dd 0b9c20a47h
+dd 0e34118f6h
+dd 0d75566efh
+dd 0dcdf9219h
+dd 0ab12515fh
+dd 0a351ddb4h
+dd 0317be8c5h
+dd 02d3d5fb6h
+dd 0bf9b0e07h
+dd 055d0ff05h
+dd 046c309f6h
+dd 075bafb65h
+dd 0138010c9h
+dd 0dba5fa7bh
+dd 06630dd49h
+dd 04a528ccdh
+dd 0befcd899h
+dd 02e84cbfeh
+dd 070eb9f73h
+dd 07257c779h
+dd 0683fcde4h
+dd 01923061bh
+dd 0380036d3h
+dd 05a335876h
+dd 0585beeabh
+dd 0ce096846h
+dd 0ccf221deh
+dd 0f5a197a1h
+dd 05a7d2892h
+dd 0f85fa721h
+dd 058005e09h
+dd 0a9f18ba3h
+dd 0ab37ba57h
+dd 064ff4747h
+dd 079b7124ah
+dd 05fdd2dc1h
+dd 0459aa1e7h
+dd 0a77c921bh
+dd 055491488h
+dd 043f85ed3h
+dd 07d3368d0h
+dd 00b333256h
+dd 0894ca365h
+dd 0af9c5e77h
+dd 00f0ac278h
+dd 05c2f1cffh
+dd 08798dddbh
+dd 00de4487fh
+dd 08b1fee54h
+dd 01027d465h
+dd 0e7d0c05fh
+dd 0dce5fc15h
+dd 0be5a8b31h
+dd 019c76078h
+dd 027f5636fh
+dd 0906fbc95h
+dd 0c67cc358h
+dd 068f03443h
+dd 009dc513fh
+dd 0852b1a85h
+dd 0a09d2be8h
+dd 04c5c267dh
+dd 0b1ba8efdh
+dd 01042d583h
+dd 04ab7743fh
+dd 0cac3e07eh
+dd 0dba8a361h
+dd 0ef04b7b0h
+dd 0cdd27c47h
+dd 03662792ah
+dd 0fa3e38fch
+dd 0513beda6h
+dd 0df1e7924h
+dd 06f2e5680h
+dd 0f5a17312h
+dd 021594ec7h
+dd 0e6b37937h
+dd 0f0323f7ah
+dd 0fd0ae649h
+dd 064fed0a5h
+dd 0f654f08eh
+dd 039e65befh
+dd 088e592f6h
+dd 0064e0454h
+dd 015c3273fh
+dd 04a8fbb55h
+dd 040455596h
+dd 0561a0e55h
+dd 03360e3ach
+dd 02f1819ffh
+dd 04cbda586h
+dd 06841da85h
+dd 02c006a98h
+dd 0847385d7h
+dd 09e38af76h
+dd 09e93ad68h
+dd 0f2c6702bh
+dd 088e19e44h
+dd 0ea07c992h
+dd 0e46427bfh
+dd 0fe87b53bh
+dd 02c283d78h
+dd 0204e5345h
+dd 0c28c6510h
+dd 08bc2e74dh
+dd 0a5551c0ah
+dd 06bd6ac2bh
+dd 0e66ca4f0h
+dd 0bd3becb7h
+dd 0a8805e1fh
+dd 0428c05ddh
+dd 01dd53273h
+dd 05523ef3ch
+dd 0b85cb6a3h
+dd 0ca3ae61eh
+dd 0c57a959fh
+dd 0ddc98102h
+dd 078eb6ad2h
+dd 01db2cb58h
+dd 089a133ach
+dd 0e518e77eh
+dd 0e0aa82eeh
+dd 07d04a702h
+dd 0726bab97h
+dd 0b4ed5c52h
+dd 0949534e2h
+dd 0f84baed5h
+dd 0c8d339a3h
+dd 0361b7f06h
+dd 0f3db4bf6h
+dd 0c6dda3e9h
+dd 04cc2c5a4h
+dd 0b53a356eh
+dd 04f143807h
+dd 07f44a247h
+dd 0ceb3689eh
+dd 0fa0ae878h
+dd 02b5840f9h
+dd 0c9c89eb8h
+dd 09d306d2ch
+dd 0fe1c1bd6h
+dd 09a283696h
+dd 0a6fb1761h
+dd 086899fc7h
+dd 0bb4115afh
+dd 0e6c00a9ch
+dd 03d478783h
+dd 05ffafab9h
+dd 0209a576ah
+dd 0e5bdf7d3h
+dd 05ca5af5ch
+dd 0eb19b0c4h
+dd 02e8c89d5h
+dd 00c5c3a77h
+dd 0244e09b0h
+dd 0e3c41189h
+dd 0aa17165ch
+dd 05a1e4deah
+dd 0bb17a94ch
+dd 0633d6d61h
+dd 0a2228ae7h
+dd 02f8e43dfh
+dd 02fa0952ah
+dd 0b122ab7bh
+dd 04bfe107eh
+dd 0b2509941h
+dd 0a3766141h
+dd 06c36eb87h
+dd 02c7cb4dah
+dd 0ed38caf1h
+dd 047a5e0f3h
+dd 058a6177ah
+dd 0f9562b30h
+dd 0d44bc649h
+dd 055124173h
+dd 09e94edech
+dd 01ad2347bh
+dd 01de729fbh
+dd 0013d8373h
+dd 045423903h
+dd 0fb6e9729h
+dd 0823d2843h
+dd 0fe2495e9h
+dd 0909bcd86h
+dd 051869053h
+dd 01d18c24bh
+dd 08bdd5e9eh
+dd 04c3522a4h
+dd 0e2e727c0h
+dd 084dbe28ch
+dd 0ce198dc5h
+dd 0918b5c35h
+dd 061880125h
+dd 01fbb721ch
+dd 069be1a75h
+dd 0d5503320h
+dd 0a43f487ah
+dd 00ef2c3b2h
+dd 0a05b0a1fh
+dd 0ebe2b701h
+dd 01238041ah
+dd 09b270371h
+dd 001652196h
+dd 080d039ceh
+dd 009457f63h
+dd 0ea9ec62dh
+dd 013c1efa4h
+dd 02b0ad3a5h
+dd 0230b3458h
+dd 0365b8a02h
+dd 04485f355h
+dd 0f746146ah
+dd 0794b41d1h
+dd 043a41129h
+dd 0ffcab00dh
+dd 0aee7a85dh
+dd 0570f03bah
+dd 0c2e6aae3h
+dd 04582050bh
+dd 08f15da87h
+dd 0adeee837h
+dd 0c6921132h
+dd 0b1f250a4h
+dd 03c35a7f1h
+dd 0834f702ah
+dd 0f0ee0fceh
+dd 0797a817dh
+dd 035158326h
+dd 0d91c5a36h
+dd 0eed8e2e9h
+dd 055f5d0e8h
+dd 0be3e29b4h
+dd 04b669527h
+dd 01639f4ech
+dd 0e489241ah
+dd 0912f7afbh
+dd 0eb464f52h
+dd 0d4b780c5h
+dd 09fec48fbh
+dd 05dacede9h
+dd 034277e68h
+dd 0fb8bd7d4h
+dd 0a893661ch
+dd 078e20492h
+dd 00a0f032bh
+dd 0de5d1e1ch
+dd 0faca3312h
+dd 0fd238fb2h
+dd 0d9c69e3eh
+dd 097af0d34h
+dd 0d23ea4ech
+dd 01bc08075h
+dd 03133bc98h
+dd 00f92df81h
+dd 02347fa66h
+dd 0746057b5h
+dd 07b0b0b56h
+dd 0510f332bh
+dd 03e38d411h
+dd 063d80324h
+dd 088efa92eh
+dd 04c364f0ah
+dd 0c86e82ffh
+dd 08d592b1ah
+dd 091643327h
+dd 0050cd53eh
+dd 0e970a67fh
+dd 028497c11h
+dd 0e1b27c4fh
+dd 0b8bf4602h
+dd 0b8df9902h
+dd 03310da25h
+dd 092c443c9h
+dd 01285920ch
+dd 04b1d2388h
+dd 038d68cfah
+dd 0d20d8b64h
+dd 09e6aad8dh
+dd 046e2fea6h
+dd 0f460c248h
+dd 0d71cf589h
+dd 03778d845h
+dd 0538ebc7dh
+dd 0d416ae43h
+dd 0d67e53b6h
+dd 03fab2356h
+dd 0f47f06a9h
+dd 0017535e7h
+dd 0de5445b7h
+dd 0eea8b28dh
+dd 0762ae9b1h
+dd 0ad70896eh
+dd 0f0a36652h
+dd 06e4edf90h
+dd 0196d648dh
+dd 07ec2ed4ch
+dd 0b2d9f82bh
+dd 08d7725f5h
+dd 0ab02d5bdh
+dd 000b6ba51h
+dd 0fdb0b54eh
+dd 0f603e57fh
+dd 09e593eb9h
+dd 071607d2eh
+dd 04b88e8ddh
+dd 010351cc9h
+dd 09648e1a8h
+dd 079e08018h
+dd 07d9fc8a4h
+dd 01b2ff6adh
+dd 0d733f26fh
+dd 0b6bfe53bh
+dd 0935d106dh
+dd 0d9970312h
+dd 0c519d4feh
+dd 031665a20h
+dd 03dcb0c4dh
+dd 0091f0eaeh
+dd 02e11b986h
+dd 08c22f2cdh
+dd 0cf88e3a0h
+dd 02ff55674h
+dd 0fe992dedh
+dd 03bf61469h
+dd 0d2aafe00h
+dd 05fd03387h
+dd 0a46e462ch
+dd 031f0cf7fh
+dd 0f0f529a5h
+dd 0a18f9f72h
+dd 0767bf47dh
+dd 04a1f711fh
+dd 006e4e681h
+dd 09f5eb25eh
+dd 01c2362f7h
+dd 0880e4226h
+dd 0423351aeh
+dd 0f3d71a6bh
+dd 0c8a7a6a5h
+dd 02cb2dda1h
+dd 0c3a438b8h
+dd 0fff527b2h
+dd 07ca0866bh
+dd 031454199h
+dd 011353adeh
+dd 098c084c2h
+dd 02d174639h
+dd 056e99787h
+dd 04dbf8752h
+dd 0578166dch
+dd 07a834f51h
+dd 0b2e19808h
+dd 0d4593d92h
+dd 001b5d59bh
+dd 0950cab24h
+dd 00ab2a6d9h
+dd 0e6618f93h
+dd 07f75ff14h
+dd 0aa035028h
+dd 03cc4a7dah
+dd 08c1a83d1h
+dd 08236eee3h
+dd 0140984f1h
+dd 07dfe2539h
+dd 0257c83f0h
+dd 062882210h
+dd 0f49afa17h
+dd 02ac7dce7h
+dd 0f5b04918h
+dd 01f0d3251h
+dd 0eabe3303h
+dd 0e78556c3h
+dd 0e9db6001h
+dd 0807650cah
+dd 03bf4f2d6h
+dd 0d0319a4ch
+dd 0dd6064dfh
+dd 0a3cbc8aeh
+dd 0aabdc852h
+dd 0eec66426h
+dd 0c488324bh
+dd 09ba5ce53h
+dd 034ce6afbh
+dd 0e120dc41h
+dd 006475f6ah
+dd 0f3b5edbbh
+dd 02e32379fh
+dd 05297a044h
+dd 04414b92ah
+dd 0a9adb457h
+dd 06e57fe6ah
+dd 0503bb7aeh
+dd 04bded397h
+dd 016d6c4feh
+dd 080608929h
+dd 0348cfe43h
+dd 0ec2e8483h
+dd 00d178fb0h
+dd 0a732c403h
+dd 0827bfcfeh
+dd 00066f651h
+dd 0413550edh
+dd 08d60b603h
+dd 043d83a8eh
+dd 0d29af94bh
+dd 09f064c61h
+dd 0b64176ceh
+dd 09a6f7ad2h
+dd 07daa0ed4h
+dd 03e140c11h
+dd 051062d35h
+dd 0fcdf7344h
+dd 02f25405dh
+dd 078b85da2h
+dd 03d2cf37dh
+dd 0df6eeff4h
+dd 0a481f8eah
+dd 0189a8be8h
+dd 0b954f57dh
+dd 021b69118h
+dd 0c34aaf55h
+dd 079df398ch
+dd 0db05c2c4h
+dd 0c1c0344bh
+dd 08ff60f8ch
+dd 0d350bc72h
+dd 0b5c8995fh
+dd 08e18a67bh
+dd 0103d8c79h
+dd 0750c8726h
+dd 0c34ba690h
+dd 022b97969h
+dd 0dc5f18bdh
+dd 0711e666bh
+dd 044b5ea0bh
+dd 04a0084beh
+dd 0bb03a83ah
+dd 0f008e8b1h
+dd 0837b7eafh
+dd 0d7392ab1h
+dd 0f4906461h
+dd 0c9370b92h
+dd 029ea7e85h
+dd 078a96c6dh
+dd 0038138a8h
+dd 0578221f4h
+dd 017079afch
+dd 04092734ch
+dd 000ce793eh
+dd 0eb18fd3dh
+dd 0a48f1337h
+dd 067c49498h
+dd 0567d7d50h
+dd 089bcc126h
+dd 05ce487e7h
+dd 0c54c55dfh
+dd 0509a27d2h
+dd 08225175bh
+dd 0a4245dcch
+dd 04cb3af7dh
+dd 06a6cb1d4h
+dd 04791b721h
+dd 04e02e189h
+dd 05e4b0904h
+dd 04b0a0c85h
+dd 03cf37c0ch
+dd 0f726dae4h
+dd 03625a6a1h
+dd 0a2fa0a92h
+dd 038c063bah
+dd 050145916h
+dd 0ae346ccbh
+dd 0834a4629h
+dd 0d573c61ch
+dd 051ea30a5h
+dd 029c55e26h
+dd 076b60be3h
+dd 06c6018bfh
+dd 00fdf123fh
+dd 0d769b61ah
+dd 089c2e0eeh
+dd 0e36b1033h
+dd 00999e300h
+dd 02321315ah
+dd 0b28bdacbh
+dd 086c03e0dh
+dd 0830f7cddh
+dd 0e6d1ecb7h
+dd 0ad02301bh
+dd 09b817b73h
+dd 0453bdda5h
+dd 0329c2f63h
+dd 0b87cb30ah
+dd 02eb97eadh
+dd 04c112d6eh
+dd 094096e58h
+dd 0f20df42ah
+dd 07c210155h
+dd 00c2fb60ah
+dd 0b800713bh
+dd 09d5dc30dh
+dd 01e493739h
+dd 0aa7ff304h
+dd 0afc23369h
+dd 093c5e2f1h
+dd 04eb1668ch
+dd 0432e547dh
+dd 032260d97h
+dd 02f3d9ed4h
+dd 02a7d9dafh
+dd 088547e32h
+dd 0fd501a87h
+dd 0fa58113fh
+dd 0ec38382fh
+dd 01ca31796h
+dd 067c9e216h
+dd 026087109h
+dd 057167a07h
+dd 0e9aba195h
+dd 0b3ba49eah
+dd 0a912ee32h
+dd 06e62492dh
+dd 0ddc7959bh
+dd 0a7b04648h
+dd 0bfe6fa9ch
+dd 0b662f8a9h
+dd 07d163d3eh
+dd 0e3a344a5h
+dd 07ccfcc94h
+dd 0c6f7978bh
+dd 024962b02h
+dd 075bf605bh
+dd 0d13e53bdh
+dd 0d5c73c13h
+dd 082ff5338h
+dd 06bd72bcah
+dd 03d2e55edh
+dd 0d5d233f1h
+dd 0020f2c65h
+dd 09c24c8deh
+dd 0ad2119f6h
+dd 0a3e3a909h
+dd 033e12922h
+dd 009a0af01h
+dd 03f7843c8h
+dd 053a196bah
+dd 0bbb2803dh
+dd 0c39853bfh
+dd 006d36eb6h
+dd 01ddf8fd4h
+dd 027020439h
+dd 0fb80191fh
+dd 0a340e751h
+dd 00c060366h
+dd 00544e39ch
+dd 04b2abc9ah
+dd 00859ce7eh
+dd 0a7987945h
+dd 0103d4445h
+dd 0d1a0f220h
+dd 06e67ac9ch
+dd 06f6ce6b8h
+dd 044a7ba4ch
+dd 05f6cdcech
+dd 03eade95bh
+dd 08bf07a1ah
+dd 052503794h
+dd 026a54795h
+dd 0297a3d3fh
+dd 04f1d57fah
+dd 0114a3200h
+dd 068d53e00h
+dd 038412292h
+dd 09cfac60bh
+dd 038b7dcd4h
+dd 0662d9381h
+dd 0405a5227h
+dd 0b5a439eeh
+dd 0aa6fd64ah
+dd 088cac559h
+dd 0a5218957h
+dd 0f3d093b4h
+dd 01f135d00h
+dd 07b22bf49h
+dd 07d54eaa8h
+dd 0489a5c2eh
+dd 0a7bcaf16h
+dd 0d1a7e834h
+dd 05b0bea5ah
+dd 081e2c382h
+dd 074c337c5h
+dd 02e92e8efh
+dd 004aad64eh
+dd 0d8d857c9h
+dd 081768854h
+dd 0ff5bda61h
+dd 09162117dh
+dd 0c66f04f2h
+dd 098a31db7h
+dd 07fccddf9h
+dd 0464d887ah
+dd 0e2bbbdf0h
+dd 01548d75fh
+dd 066f76cf8h
+dd 0bae488f5h
+dd 0f010d988h
+dd 0b2d446a2h
+dd 0cf872e5bh
+dd 06ca007efh
+dd 05a29bbefh
+dd 00bb6e06bh
+dd 08d4b68a0h
+dd 0a7a44b2eh
+dd 0e6a4ae32h
+dd 002f68ddeh
+dd 0e3ee5497h
+dd 0f31d9cb7h
+dd 0cf9b8192h
+dd 0c112226eh
+dd 004c52effh
+dd 0e3830e97h
+dd 088154ce4h
+dd 01d7aef25h
+dd 08a9e4378h
+dd 002fbbe49h
+dd 032c7dc30h
+dd 07395bf2ah
+dd 051d4b28fh
+dd 082f508b7h
+dd 0072a80bah
+dd 07c4d4b5ah
+dd 0c68f3dach
+dd 0dd8c0cdah
+dd 0efd66e61h
+dd 0ac431d37h
+dd 08811e8d7h
+dd 0ce6c7b19h
+dd 055788b59h
+dd 0c41b0981h
+dd 0415e1173h
+dd 0b509f5afh
+dd 09c8bec62h
+dd 0f9530f07h
+dd 0faace965h
+dd 0b136b946h
+dd 0abed975ah
+dd 0c39390bdh
+dd 0bee0567eh
+dd 01682b0ceh
+dd 09c643f52h
+dd 019595673h
+dd 0da78a4d5h
+dd 04e88495eh
+dd 0b780d7eeh
+dd 02d340f67h
+dd 0f20aeccbh
+dd 0a23a1960h
+dd 0f536b8b9h
+dd 0752d1488h
+dd 0ec20efb6h
+dd 05ac9ec45h
+dd 0207dfa86h
+dd 02b33d3beh
+dd 0ef3522d7h
+dd 0e61edcf3h
+dd 05301e6deh
+dd 0ee88c217h
+dd 03aee9815h
+dd 02be88badh
+dd 06281d1beh
+dd 0ffe341e7h
+dd 0bfee2c7bh
+dd 0fd3f020ch
+dd 057938d22h
+dd 017b91925h
+dd 0c53713b2h
+dd 0c91eeff7h
+dd 02ca0381eh
+dd 0aaa8ac2ah
+dd 09723ad91h
+dd 0454eb939h
+dd 00aa8169ch
+dd 007024fabh
+dd 0e896dd9fh
+dd 0b0827e4ch
+dd 0dd528ee5h
+dd 052515cb3h
+dd 088792cf7h
+dd 0532b5be1h
+dd 05acab337h
+dd 020f82c38h
+dd 00db1a5e9h
+dd 02831acfdh
+dd 031d613d6h
+dd 0b405fa0bh
+dd 0c958d88eh
+dd 0f39bfa48h
+dd 0b3240a6bh
+dd 0d7dea3aeh
+dd 0244194feh
+dd 0c81aa0bfh
+dd 032b0c490h
+dd 049ef06d5h
+dd 02fa5c2f3h
+dd 0297e711eh
+dd 02321039dh
+dd 04768ff4eh
+dd 03279fe87h
+dd 051021ef9h
+dd 0e9c09172h
+dd 05e86c804h
+dd 0d81268e2h
+dd 0eb6dafd7h
+dd 09f238babh
+dd 00775350dh
+dd 04930f2c3h
+dd 047fbce0fh
+dd 0bcbb1e7ch
+dd 0d8f80fdah
+dd 05717e9a2h
+dd 01176dd2ch
+dd 0135ab851h
+dd 05581651ah
+dd 06658ba97h
+dd 027d1027bh
+dd 0ddf8659ah
+dd 08740a4ceh
+dd 0dffe443ch
+dd 0834bba6ch
+dd 0489c0cb3h
+dd 068e3335fh
+dd 01b9d3046h
+dd 0a1e1975eh
+dd 03ccadfd4h
+dd 029237603h
+dd 082e199f4h
+dd 050deb3a8h
+dd 0c540a9d6h
+dd 000420b42h
+dd 0a8e5faebh
+dd 00824f4ffh
+dd 0b6da34d0h
+dd 0f8c9bf0fh
+dd 0aa488c61h
+dd 068a65832h
+dd 046b90e04h
+dd 0f7ade0a3h
+dd 0114637c5h
+dd 081650a64h
+dd 070454457h
+dd 089f64942h
+dd 04b31f644h
+dd 05b456174h
+dd 02d6c0613h
+dd 0c8293d0dh
+dd 08a5fe158h
+dd 031f24e45h
+dd 050d08591h
+dd 0a0209ae9h
+dd 05ed7067ah
+dd 0e99a44d7h
+dd 0d3bbe693h
+dd 0d4762187h
+dd 0d58c3d33h
+dd 0da1d51cbh
+dd 0eecb1c3ch
+dd 0c02e6ce3h
+dd 0874c34e9h
+dd 0bf7a4df5h
+dd 0a3fe1d53h
+dd 00cfa7272h
+dd 058c83d4ch
+dd 063b7133dh
+dd 0b86a99b2h
+dd 00311a2a0h
+dd 0c8b6e995h
+dd 008d70d24h
+dd 036cae092h
+dd 065b74539h
+dd 095c46c43h
+dd 08cf53e33h
+dd 0856f3a46h
+dd 0f99d3e79h
+dd 0db6be89fh
+dd 0d5cbf0fbh
+dd 09029c5dah
+dd 05bfe3a4ch
+dd 009d87a26h
+dd 0bd4e2c66h
+dd 0bec14a6bh
+dd 0c0bce789h
+dd 021774afeh
+dd 081deb448h
+dd 04c16814ch
+dd 047ab3111h
+dd 0e9f761c6h
+dd 065bbd1e1h
+dd 08d04577bh
+dd 05ec599dch
+dd 041365a21h
+dd 06067d8afh
+dd 0d1562d1bh
+dd 0748f6de7h
+dd 09f649c55h
+dd 0c99f2197h
+dd 0433033d5h
+dd 0fac846f8h
+dd 0a03bb68ch
+dd 07008321bh
+dd 0cc954e88h
+dd 061b15516h
+dd 0d1ffe14eh
+dd 09de46c37h
+dd 0f3c78c02h
+dd 0dbe813cch
+dd 087f21297h
+dd 0b9963175h
+dd 042cf2742h
+dd 059c3c3a5h
+dd 03f73b537h
+dd 0b720298eh
+dd 08e19e6e0h
+dd 0e57dccc9h
+dd 0b08f8d8bh
+dd 00e7f8093h
+dd 072c876c4h
+dd 05a5c4ddah
+dd 09883ad4eh
+dd 01827dae5h
+dd 0b6113625h
+dd 037342754h
+dd 0ed285543h
+dd 05785fe37h
+dd 09cac313fh
+dd 0337ce84ch
+dd 0789df183h
+dd 0d674795bh
+dd 00d982ae6h
+dd 05f44350dh
+dd 0ffee2368h
+dd 09cd423fbh
+dd 0efea42ach
+dd 0dbf7f37ch
+dd 064e30347h
+dd 0c7d2ba2fh
+dd 0cac9d66ah
+dd 03466acdeh
+dd 069e0a49ah
+dd 0ed5f3716h
+dd 0faaf375ah
+dd 0f4c7b23ah
+dd 0ba776357h
+dd 09d94a89ch
+dd 00a83ab9eh
+dd 0469fac2eh
+dd 0740d1420h
+dd 0a469e149h
+dd 08b22c829h
+dd 03b110cb1h
+dd 0df6d4897h
+dd 0bdcc68b2h
+dd 0855214eeh
+dd 04e44dbf6h
+dd 007a57129h
+dd 0c10605e2h
+dd 044b8d3aeh
+dd 01fa7d3a7h
+dd 00fa8c80eh
+dd 01eb66439h
+dd 0c3064c66h
+dd 07df0a68ah
+dd 0a4d90b19h
+dd 01e7113a7h
+dd 01a6049c1h
+dd 030b9330eh
+dd 0b024d992h
+dd 055603e3ah
+dd 0db171489h
+dd 03572a59dh
+dd 0cd955c7ah
+dd 03aa120b2h
+dd 0536a4861h
+dd 0ae23e884h
+dd 01352523ah
+dd 0d2fe838fh
+dd 0720fa297h
+dd 07a0ed401h
+dd 06f69a851h
+dd 040e78ef7h
+dd 07df1e3cbh
+dd 072ec3fa0h
+dd 07704c1a3h
+dd 071cce0eeh
+dd 0705027a4h
+dd 08a85a471h
+dd 0c5106c3eh
+dd 0481c7f15h
+dd 035a261e7h
+dd 04400bd7eh
+dd 03a578705h
+dd 0e1ac4b50h
+dd 00ce3b018h
+dd 0c865da87h
+dd 08f219eb0h
+dd 0bcdc4d39h
+dd 0350b8530h
+dd 0df440187h
+dd 0b3868730h
+dd 0c7725e3bh
+dd 0414b82aeh
+dd 0ddbadc08h
+dd 06c600542h
+dd 0981bba0dh
+dd 06a028beah
+dd 06702f80fh
+dd 0de5d344dh
+dd 04be99f3eh
+dd 0ee50512eh
+dd 0e4eb90e6h
+dd 05bf0157eh
+dd 0be16d56fh
+dd 0781f3d11h
+dd 06403468eh
+dd 089c9180ah
+dd 05eba58c8h
+dd 038902265h
+dd 007dd0371h
+dd 0d4dfd59ch
+dd 04bfe901dh
+dd 030ff20e0h
+dd 0d15b52cdh
+dd 05ef1449bh
+dd 0e9375153h
+dd 0276fe706h
+dd 0ba31ef7fh
+dd 059d621afh
+dd 03b53969fh
+dd 00f983beeh
+dd 0fa1e8ff8h
+dd 09290e647h
+dd 038ba8473h
+dd 06368c076h
+dd 08a30eacdh
+dd 0d0fa5df0h
+dd 0cd454395h
+dd 0598dc5a0h
+dd 0ffc2cd82h
+dd 0e6ba0155h
+dd 0d251a01ch
+dd 065dc92b9h
+dd 049f8d298h
+dd 0f75a9e75h
+dd 099a56b3fh
+dd 01a802bbdh
+dd 0e1f74cf2h
+dd 0c94b3f52h
+dd 09fbd0b28h
+dd 083b128aah
+dd 0ceaf418bh
+dd 07cacffa4h
+dd 0f95f55d7h
+dd 00ad7e615h
+dd 0f0ecd9f7h
+dd 01e1847f6h
+dd 04805e1cah
+dd 09a05f37bh
+dd 085e5535fh
+dd 0ded568f1h
+dd 050180478h
+dd 00f1c3c3fh
+dd 0d80e82bbh
+dd 0fde74de8h
+dd 09ce7f8e0h
+dd 03c9db506h
+dd 050e4cd42h
+dd 0cd8e0640h
+dd 0fd419223h
+dd 0fc693eefh
+dd 069a14ce5h
+dd 0ef866d02h
+dd 060590f79h
+dd 0da92aceah
+dd 031a31edbh
+dd 05c79b134h
+dd 0e6825397h
+dd 0d4763538h
+dd 03eba4698h
+dd 0fa6c667dh
+dd 0c0f2c963h
+dd 0510e0bcbh
+dd 0af13de15h
+dd 03d54505bh
+dd 0da8a08f3h
+dd 0a1eea0b0h
+dd 0ae8967a1h
+dd 0e5873602h
+dd 0a8a0e53fh
+dd 0467c082dh
+dd 0fa7d9f1ah
+dd 04f5911c1h
+dd 0e5c9f022h
+dd 0749d5123h
+dd 053f43a06h
+dd 0c4d0de3dh
+dd 07ec9be2fh
+dd 0eda2c394h
+dd 0d9152571h
+dd 0bfc2234eh
+dd 06dabff47h
+dd 0de5c97cch
+dd 0aea5cbb2h
+dd 07df7644fh
+dd 0e3d27011h
+dd 0cf9fecc8h
+dd 0b2b68e54h
+dd 0df36c628h
+dd 06fe6857bh
+dd 0e089aec3h
+dd 0ebb469a7h
+dd 0d3607b3fh
+dd 02190ae99h
+dd 025119532h
+dd 0f7f0d138h
+dd 081395b63h
+dd 08eab4c78h
+dd 0e02aacb9h
+dd 006e4c8d9h
+dd 03e2f9e84h
+dd 01fe746bdh
+dd 04591cc31h
+dd 0287b81cdh
+dd 0f94a235dh
+dd 0f0e88256h
+dd 096b36369h
+dd 0b3c242bfh
+dd 04976b1a6h
+dd 00e6383b0h
+dd 0f9b3bbe2h
+dd 0052181e2h
+dd 01a7c4c52h
+dd 03aab8735h
+dd 04338a4e5h
+dd 03edb1390h
+dd 0b002721ch
+dd 0457c9b05h
+dd 0f8d19aa7h
+dd 0a8cd8d57h
+dd 07d7a6f28h
+dd 09928b829h
+dd 070a4e917h
+dd 056962e29h
+dd 05dcbfe4fh
+dd 09c987ddfh
+dd 0f6f0d233h
+dd 08fa3d91ah
+dd 0cbeb9271h
+dd 04c92c063h
+dd 08df9ad87h
+dd 0bf333400h
+dd 042bd9d1fh
+dd 088138138h
+dd 0bd6d2c03h
+dd 0aabf1672h
+dd 0aa5c40b8h
+dd 086f88e35h
+dd 025e68d0dh
+dd 0cda326dah
+dd 0ed2be002h
+dd 0ad97eebfh
+dd 0514bd99bh
+dd 07dd4e0a3h
+dd 0cec5af07h
+dd 0b86a84f1h
+dd 077da569ch
+dd 00989f4dah
+dd 0f40c0d98h
+dd 03af71f20h
+dd 025d2d7ech
+dd 0f5888b2fh
+dd 016a4fd6ah
+dd 0240e231ch
+dd 011c1716eh
+dd 04ee656d0h
+dd 060a9028bh
+dd 0ee5c3e7bh
+dd 06fc16993h
+dd 0d248c68ch
+dd 0a344105bh
+dd 083d37aech
+dd 07e08dcafh
+dd 0191133b7h
+dd 0f23db7e2h
+dd 07926aae5h
+dd 024008ab6h
+dd 0877641bfh
+dd 09cf4f839h
+dd 096f3c64dh
+dd 04b364c39h
+dd 0e662b284h
+dd 08b7308fdh
+dd 0529379efh
+dd 019cef699h
+dd 077eadef0h
+dd 0322b7bffh
+dd 0ec47009fh
+dd 047843293h
+dd 0ebaa8da6h
+dd 0d9495ca1h
+dd 079e12e9ch
+dd 08c0980d8h
+dd 0e1331359h
+dd 01abf5bf9h
+dd 06341b999h
+dd 029a17567h
+dd 0ae2b3158h
+dd 004025ab0h
+dd 09dee69b3h
+dd 0c83931e3h
+dd 000db8d22h
+dd 06eb00ea9h
+dd 0c20a749dh
+dd 0d077e87fh
+dd 0670ee849h
+dd 04c1b0aaeh
+dd 0212776e0h
+dd 00c01aaa8h
+dd 00ec7b1e1h
+dd 03113cbc4h
+dd 0b1a2e298h
+dd 0db5aeb95h
+dd 08d7ece27h
+dd 0b09f4c0ch
+dd 03e0d60a5h
+dd 0f7011b0bh
+dd 0ff73d0f5h
+dd 0f9318c61h
+dd 07001ca09h
+dd 04abf406fh
+dd 04c6e8c77h
+dd 045d3a582h
+dd 0559b7389h
+dd 0b355809ah
+dd 0f8132788h
+dd 02b132761h
+dd 01d4bcd7dh
+dd 045cd3b69h
+dd 0c7e47bd3h
+dd 050c6fc5ch
+dd 05ca28b10h
+dd 08dbe14e5h
+dd 0e4cb6a0eh
+dd 0be4b1653h
+dd 0c70ff804h
+dd 070e1623dh
+dd 0c17709dch
+dd 0a296e6e4h
+dd 0abe05129h
+dd 0b87bdfe7h
+dd 0f05204edh
+dd 01e4552a0h
+dd 0fadf71efh
+dd 03ba8e1e7h
+dd 0db3e4ff4h
+dd 0d60989dch
+dd 058ca06d1h
+dd 0300ca565h
+dd 064bd9b62h
+dd 01c3ba58ah
+dd 06d471d28h
+dd 0b9ba8e9dh
+dd 0d0cd1876h
+dd 01ddf2687h
+dd 00d203d87h
+dd 08afd0d3fh
+dd 0419c69ach
+dd 099d25f6ch
+dd 0dac84e1ah
+dd 0779d8402h
+dd 0b8179afbh
+dd 030333597h
+dd 0a34c8ff5h
+dd 07933fd8ch
+dd 05f080c56h
+dd 012440f0bh
+dd 0f6d1ab93h
+dd 0e60f61a4h
+dd 0a33e09b2h
+dd 054e73221h
+dd 0ab6d7fa2h
+dd 078eafd1dh
+dd 0fef353a4h
+dd 058219584h
+dd 06e65cc40h
+dd 00231c86bh
+dd 0d9b564bch
+dd 03088d5ebh
+dd 041505daeh
+dd 0e41825cbh
+dd 07dfdecfbh
+dd 0d3f35dd3h
+dd 02fc0f3b1h
+dd 0c8452b67h
+dd 06390ecf1h
+dd 031f71a7eh
+dd 0e5a49195h
+dd 068ba6c8fh
+dd 090159647h
+dd 0dc9cab46h
+dd 09f32ccafh
+dd 0e57d5289h
+dd 0159e8b84h
+dd 0306fa712h
+dd 0b22cd28dh
+dd 0b4eb1f11h
+dd 0bc872b9fh
+dd 0d024114dh
+dd 0165b8882h
+dd 0accc0098h
+dd 0d228b28ah
+dd 0a846db4eh
+dd 07d86a7e3h
+dd 0310f0f6ah
+dd 0e559a30bh
+dd 00d568c23h
+dd 060992e6fh
+dd 0fe404971h
+dd 05c118b2ch
+dd 06a6367b3h
+dd 05539f75eh
+dd 0d40ebd1fh
+dd 0189676eah
+dd 08e9b8722h
+dd 02045c519h
+dd 069b7601dh
+dd 006929c8fh
+dd 078612ee1h
+dd 0604e7d6fh
+dd 03422a487h
+dd 0876142bfh
+dd 03b1b6d13h
+dd 0ec886309h
+dd 08d7ccf12h
+dd 062c49d4fh
+dd 0c12b13c4h
+dd 07eec83bbh
+dd 02e14268ah
+dd 0850db1b2h
+dd 057ac220ah
+dd 08c0f7d58h
+dd 0a16665fch
+dd 0a313a3f9h
+dd 0388e5bdfh
+dd 0d010a43bh
+dd 098cfedcah
+dd 0d4a03d62h
+dd 05171a748h
+dd 08689bc9fh
+dd 05194d675h
+dd 0cab58dddh
+dd 0413e143dh
+dd 092efc623h
+dd 07fc1e8d4h
+dd 0cdf1fc50h
+dd 0542d2065h
+dd 05a5e467fh
+dd 0e98794fch
+dd 05e2b3021h
+dd 06c61cf22h
+dd 08a27b909h
+dd 05a7c8024h
+dd 03a364753h
+dd 07930d4a0h
+dd 0c2223224h
+dd 03cfc1af3h
+dd 0c7159629h
+dd 0a76298bch
+dd 0fc9ffad9h
+dd 0334cdae0h
+dd 085d08640h
+dd 047ef9fcdh
+dd 0f8eba1ach
+dd 0954205e9h
+dd 032a60202h
+dd 0476a562ah
+dd 0e07260deh
+dd 0476fab12h
+dd 0961f961eh
+dd 0ea8cb779h
+dd 054008d17h
+dd 00db46d3ah
+dd 0a7a41f1ch
+dd 016caae04h
+dd 03d3bfcach
+dd 0ef265da9h
+dd 09b6dc57fh
+dd 06248d08ch
+dd 01aa35cf0h
+dd 051841a2fh
+dd 0635fa51fh
+dd 09c688c03h
+dd 02d0875d2h
+dd 0b4bbe36ch
+dd 05c7d78a5h
+dd 0fdd44a28h
+dd 0596145dbh
+dd 0882bfc72h
+dd 0f846884eh
+dd 0d5cc5236h
+dd 02fb367dbh
+dd 0f8fa7aeah
+dd 089199831h
+dd 05db87974h
+dd 05a96d48ch
+dd 0170e41abh
+dd 0fe00603bh
+dd 08400e7efh
+dd 03f3c904dh
+dd 048aa10adh
+dd 03f8f7ddfh
+dd 08830eb06h
+dd 08c6c0cf8h
+dd 07e15451fh
+dd 0fd1710c8h
+dd 0195d4bfah
+dd 03d9f3d18h
+dd 0a82c55a6h
+dd 0f7140994h
+dd 004e7ec0dh
+dd 044a58351h
+dd 0d13fa82ch
+dd 04e64390dh
+dd 0e9209068h
+dd 01b45c68fh
+dd 01b27d16fh
+dd 029e127aah
+dd 08b84967ch
+dd 00fc7ef51h
+dd 00616c48fh
+dd 0172bd4f5h
+dd 080426980h
+dd 00c4b771fh
+dd 0cd94d1aah
+dd 0bd3bcbcdh
+dd 0c92602a3h
+dd 0f79946e9h
+dd 01fade0e7h
+dd 087780e4eh
+dd 08aef8e4ah
+dd 0b5d9b8d7h
+dd 00e5581adh
+dd 0807da4d8h
+dd 02acc313bh
+dd 00a173b28h
+dd 0bb844195h
+dd 0f46e4dcbh
+dd 0f48e3ac5h
+dd 045ba9e1bh
+dd 0460cf70dh
+dd 00424a69ch
+dd 06c596019h
+dd 059c647e4h
+dd 0a389dfbbh
+dd 09c39d511h
+dd 07e6c0df7h
+dd 01b415f2fh
+dd 0233fd855h
+dd 0eea5d349h
+dd 0ce420da3h
+dd 0ab5d7b9dh
+dd 0a0c78a79h
+dd 0517d4254h
+dd 0d93935b9h
+dd 0b00ab1eah
+dd 042caae9bh
+dd 0e491b25dh
+dd 08820576ah
+dd 0b5c39619h
+dd 028459ec4h
+dd 06d1cd9e5h
+dd 08ab1e9ach
+dd 096ef00dch
+dd 09ebeb2abh
+dd 0ce3d8c9ch
+dd 0f9fe7555h
+dd 08815ee55h
+dd 0041ffd54h
+dd 054801fb5h
+dd 070299fa7h
+dd 0e34d942bh
+dd 0a9b28b25h
+dd 00054796dh
+dd 08670e3d8h
+dd 0f8138ee2h
+dd 0686686ach
+dd 023e661eeh
+dd 094228274h
+dd 06405e4b8h
+dd 07a4c67edh
+dd 045936441h
+dd 07576f618h
+dd 0e5daf6cch
+dd 00519772fh
+dd 00d7a6141h
+dd 052248989h
+dd 04ec5e9ebh
+dd 07a04c015h
+dd 011fe6013h
+dd 08e96e997h
+dd 0eca19b96h
+dd 0947ad8a8h
+dd 07128c489h
+dd 00b60b7a3h
+dd 03adab21eh
+dd 06b20ad51h
+dd 0921efa0fh
+dd 04bcc546bh
+dd 0b9381055h
+dd 04a13d356h
+dd 059c304c6h
+dd 094f11d92h
+dd 001890eddh
+dd 0b269a00ah
+dd 052d2cd63h
+dd 051b00e7fh
+dd 0a569b66eh
+dd 0aa44479eh
+dd 06a78dbbbh
+dd 0f8efe2adh
+dd 02f5f7301h
+dd 01113b259h
+dd 0193c9b2ah
+dd 0dc3af6feh
+dd 0d55e937fh
+dd 02cae0741h
+dd 039a3877eh
+dd 065ff9c16h
+dd 04257409ch
+dd 0c1074071h
+dd 085a7c3b7h
+dd 08983c4c4h
+dd 05921f931h
+dd 06829c30dh
+dd 0eaa3ff52h
+dd 0fe8f1497h
+dd 03452e024h
+dd 039f626aah
+dd 039d9c1fch
+dd 0967f6588h
+dd 0f9c4508fh
+dd 0959d88f1h
+dd 0a135ed0ch
+dd 0efec6c43h
+dd 05fa1a9ech
+dd 0df7a8ef4h
+dd 0cc7f7a45h
+dd 039126c7ah
+dd 095af3450h
+dd 00ddb18a7h
+dd 0757f8c14h
+dd 0af2113e7h
+dd 0ec1aa96ch
+dd 08ef2e3d8h
+dd 0282079f1h
+dd 00bded66ch
+dd 0f8b4a508h
+dd 04a3f426ch
+dd 013fdc9abh
+dd 0b52cb3d9h
+dd 0e9f21ca1h
+dd 0d1a8f21ch
+dd 08b809953h
+dd 02f34c441h
+dd 022c38cfch
+dd 01f8a6c88h
+dd 0220d93dah
+dd 07d5a06cbh
+dd 043f22aach
+dd 0c4d540deh
+dd 04917c3bfh
+dd 0b2ef4816h
+dd 084c2a7d7h
+dd 019493566h
+dd 0fcebe20ah
+dd 0167746e9h
+dd 0a58fbc31h
+dd 0a8068beeh
+dd 0f4dd25d2h
+dd 0a530bb1ah
+dd 0d606b8bah
+dd 0c5c58940h
+dd 0e1fc27dah
+dd 0e36d9b04h
+dd 015ba50c7h
+dd 066ce468ah
+dd 0aa446103h
+dd 0714803feh
+dd 07bbcbe1ah
+dd 0e87d3f49h
+dd 0e79b15b2h
+dd 0cb31a36fh
+dd 0c6ab6cb9h
+dd 04e60c038h
+dd 0089102fch
+dd 0d0b9605eh
+dd 013e65946h
+dd 0ccd4ac03h
+dd 0ecdf9f19h
+dd 0eb558d37h
+dd 0a0129476h
+dd 07b34e615h
+dd 09707c992h
+dd 0494907c9h
+dd 0d82b12f8h
+dd 092bc12f4h
+dd 0da978bb7h
+dd 029c3570bh
+dd 0ea0533e5h
+dd 076abf08dh
+dd 0dde30683h
+dd 08f31d7d0h
+dd 0e8cead36h
+dd 0a3404d87h
+dd 0e23b0101h
+dd 0d683ea22h
+dd 0eb413a10h
+dd 0497659b0h
+dd 0bb0aa93dh
+dd 08a5629e3h
+dd 054287f19h
+dd 04865cf0bh
+dd 0f8ad8c9ah
+dd 084d3cadbh
+dd 0a446d1dbh
+dd 016426147h
+dd 09d92ae20h
+dd 0dc450c70h
+dd 0dbfa5729h
+dd 042ccce2ch
+dd 03adeda59h
+dd 01da24bbdh
+dd 0febd4ca5h
+dd 0acae6821h
+dd 07e97fcf3h
+dd 0cb3aa4b8h
+dd 086e373b6h
+dd 09eb97483h
+dd 014859b1ch
+dd 0b55577b2h
+dd 0ad4ba176h
+dd 0f7809e7fh
+dd 0d7aa2778h
+dd 0e7ac8aa3h
+dd 029b0bf09h
+dd 0164c74d8h
+dd 0367de260h
+dd 0689cbbf0h
+dd 0baa16e6ch
+dd 0e0dd2019h
+dd 0969294fdh
+dd 0ba46d2bdh
+dd 05b25b971h
+dd 00ab03e44h
+dd 041564b48h
+dd 00340f56ch
+dd 0757b9a71h
+dd 0eeced65fh
+dd 076993794h
+dd 0c50e0d61h
+dd 0b81e602eh
+dd 01611b3d5h
+dd 0bd331835h
+dd 0770ae271h
+dd 0dd31df1bh
+dd 0501fb7f2h
+dd 00f7b3e64h
+dd 0606e9614h
+dd 05844a92eh
+dd 0197afd18h
+dd 0a82b04c2h
+dd 0a7a8b2a6h
+dd 04dab9155h
+dd 0b37f2ad6h
+dd 0c99f8b47h
+dd 09caa0ffbh
+dd 0c4480884h
+dd 087e8d851h
+dd 086b48209h
+dd 02da8a7f5h
+dd 09fd91c65h
+dd 080c629c4h
+dd 0a4f0e0fah
+dd 088451f34h
+dd 0c5098b35h
+dd 0531bb8eah
+dd 09a610741h
+dd 0a08686fdh
+dd 0748c4323h
+dd 08546e403h
+dd 01e2fcd7ah
+dd 096c82403h
+dd 064b74f0ch
+dd 0cee859a8h
+dd 07bd041c0h
+dd 0d0a0de1dh
+dd 0053a7d0ch
+dd 0b952951ah
+dd 00bc21a79h
+dd 073355c13h
+dd 0b0a11533h
+dd 0bab0f620h
+dd 076b50193h
+dd 0fc96935fh
+dd 0445ab5d2h
+dd 0bd9ecf1ch
+dd 00d35f08ch
+dd 051918fa5h
+dd 0f3e71b25h
+dd 0a30122ceh
+dd 0134735dfh
+dd 01bbbc1e1h
+dd 092a72168h
+dd 0e4471a8bh
+dd 05a761b68h
+dd 0787d856bh
+dd 0663e454bh
+dd 08feabeech
+dd 02fa04a7dh
+dd 0ced38a13h
+dd 0db7fe2a2h
+dd 0b9ce479fh
+dd 0649684dbh
+dd 0fd4897d8h
+dd 09dbf4532h
+dd 0dcbebd16h
+dd 07d036f38h
+dd 0f549c99ch
+dd 02449dabeh
+dd 0520a7c35h
+dd 07c806e9fh
+dd 079d47b54h
+dd 040524951h
+dd 0613e88d1h
+dd 0e69c8604h
+dd 0c89af047h
+dd 023f25c2eh
+dd 001f94ec3h
+dd 0189bb615h
+dd 0c3452b05h
+dd 08f6245a0h
+dd 06f70df7fh
+dd 0263b94aah
+dd 02a1ea952h
+dd 07f7573edh
+dd 07191db6dh
+dd 089622eaeh
+dd 005ad44edh
+dd 0ac87bad9h
+dd 0f3b72552h
+dd 0e1ab27d2h
+dd 02c865cf9h
+dd 0e4b42ff2h
+dd 0966d3734h
+dd 09b971f12h
+dd 035755bb6h
+dd 0ab35ca3bh
+dd 094f99e57h
+dd 029986572h
+dd 0734609c0h
+dd 0ef8ea7deh
+dd 0b08f2451h
+dd 03635884ah
+dd 00c81699ch
+dd 02d2a9e6fh
+dd 0a34fa533h
+dd 097ea04bfh
+dd 0e0921008h
+dd 095b983e7h
+dd 0c481f747h
+dd 0fdde77feh
+dd 0362db4d0h
+dd 0867b38beh
+dd 0d92a07e3h
+dd 08f90b6a3h
+dd 0641914e2h
+dd 04500d777h
+dd 00ad46aa8h
+dd 0c557c4c3h
+dd 026717b3eh
+dd 0ea63f7beh
+dd 02dc66f0dh
+dd 032bf1559h
+dd 0b783ff2ah
+dd 0ed6fcb21h
+dd 0f03b9052h
+dd 040e320e0h
+dd 05c353f0bh
+dd 0c16b7ceeh
+dd 0a8b20f06h
+dd 0fd3d32c0h
+dd 029fbdce1h
+dd 0ce478666h
+dd 084e5463eh
+dd 0faaf4baeh
+dd 0f6a8776ah
+dd 0cb4fd320h
+dd 00e90ecd9h
+dd 0fc2a8a77h
+dd 08ffb591ah
+dd 08047e943h
+dd 0ad33e3d4h
+dd 05922f897h
+dd 0cd711514h
+dd 05c7caa73h
+dd 08af1fc18h
+dd 0b84f8ad4h
+dd 0c0ea09c1h
+dd 0474fdee8h
+dd 07b9a50fdh
+dd 061787090h
+dd 0cd778cfbh
+dd 0fc22713bh
+dd 08c8ba74ch
+dd 0d0595fa3h
+dd 01c99ae45h
+dd 08c49708eh
+dd 0192520b9h
+dd 04b6bc965h
+dd 095fca478h
+dd 0a5b9f1dch
+dd 07a413110h
+dd 03e79f89fh
+dd 0940f03a2h
+dd 0fc3c738ch
+dd 055d9911ch
+dd 0fb8fa6f6h
+dd 04b94d6edh
+dd 0d354a32ah
+dd 045afc76ah
+dd 02acdf3f1h
+dd 093c0624ch
+dd 09b0c4803h
+dd 0b16e240fh
+dd 09f1c4b2ah
+dd 04c629b83h
+dd 0a94da729h
+dd 01d76ae34h
+dd 05370fdafh
+dd 00c176c13h
+dd 00559d462h
+dd 0b3d60767h
+dd 03389827ch
+dd 09a0fdfc8h
+dd 024789116h
+dd 027ec46a4h
+dd 0b3deebc0h
+dd 042301878h
+dd 0b0105df5h
+dd 0e7cac47ah
+dd 06da8031eh
+dd 0f669045bh
+dd 0d0c0a1aah
+dd 08554ece1h
+dd 052cc92bdh
+dd 0ef7d7be5h
+dd 0e6da1c37h
+dd 0024a345ah
+dd 02d20e64fh
+dd 0f7730f55h
+dd 0b7ce7903h
+dd 0036313d8h
+dd 0cb5943dch
+dd 07ae68ee3h
+dd 0da95a82ah
+dd 0dc6ccde6h
+dd 0f10003a5h
+dd 0bfc9ecdah
+dd 0559d55deh
+dd 08d8d98ech
+dd 00b3eaf2dh
+dd 0fb51e2cah
+dd 0e9266dd2h
+dd 0fee50c13h
+dd 01c36d286h
+dd 02b820831h
+dd 0a2282584h
+dd 01b1bb923h
+dd 0e792fb48h
+dd 0da053301h
+dd 0532438b9h
+dd 04782338eh
+dd 0df69ee1ch
+dd 089a8dd28h
+dd 07db89830h
+dd 0f2a4b82fh
+dd 062cacb12h
+dd 043c45000h
+dd 0440f64a9h
+dd 095669256h
+dd 00faff184h
+dd 0b42d61e7h
+dd 0a448a17ch
+dd 040475adeh
+dd 0c809fc04h
+dd 0cdea6811h
+dd 051b8fc3ah
+dd 03a091d48h
+dd 0b31eb0dah
+dd 0566f7dadh
+dd 0e9d81103h
+dd 0f9db9440h
+dd 0a56d4b26h
+dd 011dc5f3ah
+dd 07fe12ecdh
+dd 0c2bfcf50h
+dd 09f41c9fdh
+dd 0be641da6h
+dd 0076578d9h
+dd 0e9f80242h
+dd 0d88ff513h
+dd 0355867aeh
+dd 0ea720cafh
+dd 05e27d2adh
+dd 0b2c1afa0h
+dd 07326f4aeh
+dd 0be959805h
+dd 01ca90445h
+dd 04cbd1a0dh
+dd 0c6dc8679h
+dd 0f8e63fc1h
+dd 0d7bf8047h
+dd 06b44ae44h
+dd 00a300cb7h
+dd 0dca532bah
+dd 094a77a80h
+dd 03b37e845h
+dd 0f6b25c95h
+dd 064cef64fh
+dd 0eb9f5da7h
+dd 0940f9bf9h
+dd 0cf426f1fh
+dd 082703e7fh
+dd 0c2fb5cf0h
+dd 06ad68129h
+dd 08d863100h
+dd 02795ad93h
+dd 02ca7e020h
+dd 0e259f07ah
+dd 06f73dbb4h
+dd 0478aeec1h
+dd 0f2b131eeh
+dd 08b755c07h
+dd 0f8ce96b7h
+dd 03a6858e7h
+dd 0b8d017a4h
+dd 0091170ech
+dd 0146fdbd5h
+dd 0ba5967eeh
+dd 014d35f96h
+dd 0c2ab91a9h
+dd 0a0e131e4h
+dd 05dbd498ch
+dd 0a6273839h
+dd 02f8632a4h
+dd 0961a1ec4h
+dd 0b9c30bbeh
+dd 002f38c3dh
+dd 0da70bc42h
+dd 076df4887h
+dd 0c0510911h
+dd 0745268b1h
+dd 0f626f406h
+dd 0c587ec65h
+dd 0a59c68afh
+dd 079962d60h
+dd 007343619h
+dd 0c704fdb0h
+dd 04ad28aa3h
+dd 06bb3d9fah
+dd 01c713ca1h
+dd 06563384eh
+dd 066a4f8a4h
+dd 07b6e2755h
+dd 06d738f7eh
+dd 0169db46fh
+dd 0115c9c31h
+dd 04cba40afh
+dd 0d44df8e7h
+dd 064d84defh
+dd 0ae07e25ah
+dd 070efa309h
+dd 06b0ea923h
+dd 0f897969ch
+dd 09bd75571h
+dd 0fbc91f13h
+dd 000b56cb4h
+dd 061ebe3eah
+dd 08397e251h
+dd 046bd2239h
+dd 010fa8adbh
+dd 0fcebb033h
+dd 019da433eh
+dd 0518ec32fh
+dd 01cbff397h
+dd 08be63c8ch
+dd 0be50057ch
+dd 0f6e9536ah
+dd 0c6f76cbfh
+dd 058ad38f3h
+dd 0731a0fceh
+dd 0c02e374dh
+dd 0bd1d2829h
+dd 07cbdb0f6h
+dd 02768b285h
+dd 0b2df54a4h
+dd 0ab8db252h
+dd 08af43adfh
+dd 02f3d535fh
+dd 0209d602ah
+dd 0ed3bf7eah
+dd 0b20b355eh
+dd 012bdd295h
+dd 05d3f8c90h
+dd 0881f5171h
+dd 0720f06d2h
+dd 061d118a8h
+dd 0eeebf584h
+dd 04e52ed59h
+dd 09dcb454eh
+dd 0420fe06ch
+dd 010c3e033h
+dd 01941e375h
+dd 0c33c0e14h
+dd 06edabeach
+dd 00c0e454ch
+dd 044efe29ah
+dd 0c7af987ch
+dd 0f53b09a2h
+dd 015cfb6eah
+dd 07e05a6cbh
+dd 0e83c4cf0h
+dd 00ef35ccbh
+dd 094f54f04h
+dd 0f4b5cdc2h
+dd 0170bc6c8h
+dd 0bd8b1c70h
+dd 0623789bfh
+dd 0282ac72ah
+dd 068c977e7h
+dd 052da25cdh
+dd 07beb7e74h
+dd 03f7fee76h
+dd 0dbdca7ffh
+dd 0128ce669h
+dd 01d7ec1eeh
+dd 0a90e7193h
+dd 02c897053h
+dd 099344624h
+dd 00bc05efah
+dd 0cb551f3bh
+dd 0d7c9fea6h
+dd 00608a54fh
+dd 0fb66807fh
+dd 0dce314f9h
+dd 08047811fh
+dd 026f4bfedh
+dd 035a6c2feh
+dd 09af65553h
+dd 00070f4f4h
+dd 0d69ee90bh
+dd 00593a76ch
+dd 0974674b5h
+dd 0df8e0af5h
+dd 03209fc91h
+dd 01144ffb3h
+dd 0d7ec724dh
+dd 0a68b5f33h
+dd 04331391bh
+dd 019cecdf0h
+dd 020345495h
+dd 06545d488h
+dd 0741e7ef4h
+dd 00cb7ced7h
+dd 087815095h
+dd 0f3e965fch
+dd 027fbcd92h
+dd 0a8f62aa1h
+dd 0ba4d75b8h
+dd 019586f43h
+dd 02e953a0eh
+dd 02c8a1791h
+dd 095235ca2h
+dd 044953715h
+dd 075d6ffaeh
+dd 0b57947b7h
+dd 0709b22d9h
+dd 005bd727ch
+dd 0c9e54903h
+dd 064d32d3fh
+dd 0245fe296h
+dd 02cca0f5ch
+dd 0ea816fe5h
+dd 09b9b33eeh
+dd 08c88f9b6h
+dd 0035dea54h
+dd 0c56d13fdh
+dd 0a6d8eb78h
+dd 08fdc657dh
+dd 01a78791fh
+dd 0708e057fh
+dd 05baeca68h
+dd 05ca1179eh
+dd 0347b0d0bh
+dd 0fd8c75ech
+dd 0ee392d2dh
+dd 0646ab472h
+dd 0659c5698h
+dd 0a278f6cfh
+dd 000ae5e1eh
+dd 021ff7c19h
+dd 0001c7ea1h
+dd 03094daf0h
+dd 048a807a0h
+dd 080cde70bh
+dd 077805ac5h
+dd 083d97ebeh
+dd 0cb26665ch
+dd 039663c10h
+dd 0318434c0h
+dd 0346ba048h
+dd 0933ac4d8h
+dd 015dcf594h
+dd 0f42f28d8h
+dd 0bbec8f79h
+dd 06fb59e96h
+dd 0f334b897h
+dd 0b4d46193h
+dd 0dc621945h
+dd 06eaa1194h
+dd 02b50eba9h
+dd 06a69a02fh
+dd 09a10cecfh
+dd 07f18bbbdh
+dd 0863bef0ch
+dd 0930c427dh
+dd 076b4386ah
+dd 0b8d849dch
+dd 0ef2c6534h
+dd 0c7f2381dh
+dd 05d654290h
+dd 0424d41fah
+dd 0303a5579h
+dd 0117a19a1h
+dd 02a89f047h
+dd 0cdc37c7ch
+dd 024e7160dh
+dd 0e0e05e20h
+dd 07aafd2e8h
+dd 0e5e9841bh
+dd 043832b76h
+dd 0f1d4f0e6h
+dd 0297ec413h
+dd 0c8bd25d6h
+dd 074691316h
+dd 0ad634e7fh
+dd 09b58b65fh
+dd 012946953h
+dd 0ad746713h
+dd 034f36944h
+dd 0ac0ae9e0h
+dd 07340a288h
+dd 0e0e70c94h
+dd 02a08f6ceh
+dd 0bf5172afh
+dd 049fc9d56h
+dd 03f8c0523h
+dd 0ce97c8a2h
+dd 0aefa316ah
+dd 004d82a35h
+dd 0687dcc88h
+dd 067025768h
+dd 0ae4c3107h
+dd 0bca6c28ch
+dd 09fbdab3dh
+dd 08179e2deh
+dd 0a8ffc132h
+dd 075b16a82h
+dd 04ae99d76h
+dd 07f31113bh
+dd 006632a36h
+dd 0a0ac2224h
+dd 04d7653fch
+dd 018c4a42ch
+dd 08ad6c25fh
+dd 0c55f4aa7h
+dd 01a049b94h
+dd 0d6690f0fh
+dd 0c4fa75d0h
+dd 001305a96h
+dd 0b54eddb6h
+dd 079695c9bh
+dd 0bfa884fdh
+dd 07d0aa84ch
+dd 07f90fb42h
+dd 00c687057h
+dd 04f718436h
+dd 0b2c350bah
+dd 05b8fed0fh
+dd 02d2ff442h
+dd 074ba987eh
+dd 055d14acfh
+dd 050279733h
+dd 0e0bbbbabh
+dd 01ebab7cah
+dd 0904ce5c3h
+dd 07ce7f82ch
+dd 085c1b37eh
+dd 0c00fbeafh
+dd 02143f96fh
+dd 0a8d39996h
+dd 02e1df5a8h
+dd 0e50bbaaeh
+dd 079f819c5h
+dd 08d9bb873h
+dd 04c99982ch
+dd 0ed88665ch
+dd 01edf4e0ch
+dd 0400c7ad2h
+dd 012618be5h
+dd 0b4cc018bh
+dd 008a6a87dh
+dd 00a2bb003h
+dd 051005cc3h
+dd 07508f633h
+dd 09b8015a2h
+dd 04ee8e234h
+dd 0729124b1h
+dd 0f068909ch
+dd 0927a06a4h
+dd 0e50d26d6h
+dd 0b8b0302eh
+dd 0f43e5a89h
+dd 0a1f20d1dh
+dd 0241afcf5h
+dd 02ea7fe51h
+dd 0f203b2a6h
+dd 0beccb813h
+dd 02e4811c4h
+dd 0439a5240h
+dd 0c685c68eh
+dd 040493331h
+dd 07e075837h
+dd 0d5b551c5h
+dd 0955ad7eeh
+dd 039d8bc1bh
+dd 06693b064h
+dd 028fc6a42h
+dd 010628270h
+dd 0b7b0fd2ch
+dd 042141d2eh
+dd 0973ddb39h
+dd 0a0c52638h
+dd 0d0570150h
+dd 06fcfdad6h
+dd 03ebe9d9bh
+dd 057264cabh
+dd 0fa9fc198h
+dd 010cb2dd1h
+dd 0bab9d373h
+dd 04c21150ch
+dd 0b0367e73h
+dd 082b703b9h
+dd 08c4eacb7h
+dd 0553b0a0dh
+dd 0c74b53cfh
+dd 0aaa66832h
+dd 0d314f9dah
+dd 0b132f833h
+dd 0cf090128h
+dd 038e50b27h
+dd 026e8bbe6h
+dd 0ce72c311h
+dd 0fe68a674h
+dd 0c9b46500h
+dd 0a307c0ffh
+dd 08c5ceabch
+dd 02a795ff9h
+dd 02a3db988h
+dd 0af2e6aa7h
+dd 0bec1dbb6h
+dd 0609cea8ah
+dd 0cb4b7faah
+dd 0c9408db4h
+dd 0d5a8eb5ah
+dd 0a37e7945h
+dd 060406e73h
+dd 02608dc40h
+dd 052fb97d4h
+dd 01e75fbcdh
+dd 0f6fdd6ebh
+dd 0d0bb7134h
+dd 033b75b6dh
+dd 0b1cbb602h
+dd 0c4c986d0h
+dd 03e868504h
+dd 0a4918387h
+dd 0092ce657h
+dd 0155c3837h
+dd 0c86ae796h
+dd 037bd3d09h
+dd 0f970fe1fh
+dd 068fc56e2h
+dd 0689a503ah
+dd 0813e9d01h
+dd 0f1688103h
+dd 0b0b6b2e0h
+dd 0e5e6eee6h
+dd 0d1b08020h
+dd 00caf5ae2h
+dd 013aca6adh
+dd 00e5f75a3h
+dd 0d7eff999h
+dd 067e8cbb0h
+dd 038fed51dh
+dd 056bdb81bh
+dd 0eed04db5h
+dd 08d874d34h
+dd 02f0437f9h
+dd 021c7c59ah
+dd 054dc601ah
+dd 0839a3b64h
+dd 061e36ce6h
+dd 018d7100dh
+dd 0fd90aa31h
+dd 0c2521ef7h
+dd 02eda7edfh
+dd 0d58a06dch
+dd 04b115f09h
+dd 0689b1adbh
+dd 0d6b9ec64h
+dd 09a60136fh
+dd 02a154292h
+dd 0cd59701ah
+dd 0d3924caah
+dd 0e0709abfh
+dd 0c06e9393h
+dd 0676845c8h
+dd 074861105h
+dd 0af89620dh
+dd 0dbaec6ach
+dd 0a0aed33ch
+dd 065cc1ab1h
+dd 035121293h
+dd 009cb80d0h
+dd 0e49b3e1ah
+dd 061ad7237h
+dd 089ce7712h
+dd 0b8093350h
+dd 0a2adc17ch
+dd 0413ee987h
+dd 016fd5b56h
+dd 091db648dh
+dd 019da7687h
+dd 078ea6880h
+dd 0dcd34e8ch
+dd 0664290b9h
+dd 07b3ac6afh
+dd 06b740c12h
+dd 0ae0355aah
+dd 09ac0c8f6h
+dd 0c4ca9073h
+dd 0dd1b6c73h
+dd 05506ed03h
+dd 013aa92a6h
+dd 087255ba9h
+dd 00f14b8eeh
+dd 0b507c997h
+dd 0e1d16566h
+dd 0bc945733h
+dd 032629ac5h
+dd 0fd7b6a0ah
+dd 082e22008h
+dd 0d48249deh
+dd 06f57ce43h
+dd 0cd439fcah
+dd 0d8679443h
+dd 0aa593c51h
+dd 04177a440h
+dd 034f2926ch
+dd 08f912a71h
+dd 075ad2252h
+dd 029780990h
+dd 0c73d2ff8h
+dd 08a10955ch
+dd 016a03294h
+dd 0fbd7131ch
+dd 08e35646ah
+dd 0593ac488h
+dd 0ab4b6c72h
+dd 06dd2a1bbh
+dd 0c6be6f3ah
+dd 0db6e3c60h
+dd 008f60250h
+dd 0f4e6b665h
+dd 025d71199h
+dd 0f1739d1eh
+dd 0b6ac3fadh
+dd 031a37430h
+dd 00d0508ffh
+dd 025d8ef84h
+dd 0619aa40bh
+dd 005c694efh
+dd 034fae695h
+dd 0be2a1042h
+dd 027737abbh
+dd 0e59ffb53h
+dd 0137e3ebfh
+dd 0b938ed35h
+dd 01bb5f02ah
+dd 0643ad559h
+dd 048329677h
+dd 0318d78e3h
+dd 0b3f293e1h
+dd 08544e2eeh
+dd 0eec48886h
+dd 06cfe619ch
+dd 077fc4557h
+dd 0c088b58fh
+dd 0a9738b9bh
+dd 05ca8f4ddh
+dd 0967bf937h
+dd 06d75ef37h
+dd 05589b875h
+dd 0eef2dc4dh
+dd 0a6aadb0dh
+dd 069811853h
+dd 0e1c6179ch
+dd 040666f6dh
+dd 09823c797h
+dd 0d255a5f2h
+dd 00575babeh
+dd 0050e338ah
+dd 033bf73fdh
+dd 056834da8h
+dd 08fd08c92h
+dd 08b862f30h
+dd 0a4aac84dh
+dd 06521ae0eh
+dd 040f15101h
+dd 05b7b331bh
+dd 028278f16h
+dd 0df457c37h
+dd 0cd33a3d5h
+dd 01c45cdf9h
+dd 028d96c38h
+dd 083d2455eh
+dd 0314f227eh
+dd 02251beaeh
+dd 09be4c775h
+dd 0e89c94e3h
+dd 0dfca7b39h
+dd 0770f0e4ch
+dd 0b0d692bah
+dd 06af88892h
+dd 07b7da4e9h
+dd 036c44f34h
+dd 082a6a900h
+dd 017895ed1h
+dd 097e6ca7dh
+dd 0625695a2h
+dd 095b66594h
+dd 09a769fech
+dd 0d4590174h
+dd 0ab718b73h
+dd 0e9cf57fbh
+dd 0082c58fah
+dd 0d321557dh
+dd 0134c64e2h
+dd 013f41143h
+dd 0d051273ch
+dd 08fa5fac9h
+dd 0f34cb936h
+dd 031ff8ccfh
+dd 02789bf5dh
+dd 046c8f882h
+dd 0b8ced28bh
+dd 0e968732ah
+dd 06f06ff9eh
+dd 00c3e3fd9h
+dd 04cff5823h
+dd 0e6e11ca4h
+dd 09a00ea41h
+dd 0cba7c704h
+dd 0547e89a2h
+dd 080c546dbh
+dd 0dfc4a4ech
+dd 04c692009h
+dd 0d08a5ddeh
+dd 0108b9623h
+dd 0ffd5a8fdh
+dd 0b0ebfa6bh
+dd 088b36e59h
+dd 0b5d17d79h
+dd 0f7e5a118h
+dd 07d63588bh
+dd 0dccd18d6h
+dd 01811e5bfh
+dd 0b128ba46h
+dd 036458594h
+dd 05712a50fh
+dd 0542d1f38h
+dd 0c08fd620h
+dd 0a88e0b54h
+dd 0f8f3815eh
+dd 04c9d4055h
+dd 0098f7603h
+dd 098cc9cdfh
+dd 011662b01h
+dd 078d68a9ah
+dd 0b0130334h
+dd 07e18fb08h
+dd 04086203ch
+dd 01ea762cah
+dd 03622e675h
+dd 0e0023030h
+dd 08aced871h
+dd 03424cd15h
+dd 0a8709551h
+dd 0ff15d72ah
+dd 08b3cf361h
+dd 024c91eddh
+dd 088c7a4b1h
+dd 0b46ec3f2h
+dd 007b0a45ah
+dd 0e5c1e775h
+dd 0f937bc29h
+dd 020f37bbch
+dd 08445e3fch
+dd 0d490bfbeh
+dd 0a2e88b8ah
+dd 09c2ac73ah
+dd 0bd40e80dh
+dd 06f1521dah
+dd 0182ca706h
+dd 0a8c6310ch
+dd 08bb8bf8dh
+dd 02003032ch
+dd 076cf917bh
+dd 06681694bh
+dd 0725c4611h
+dd 09cafc12dh
+dd 06d6543ech
+dd 00f3b3107h
+dd 0c1b84723h
+dd 09e22663ah
+dd 08b10193eh
+dd 041c634e7h
+dd 08a5cabc8h
+dd 07e855e29h
+dd 09caccc80h
+dd 06d24fc52h
+dd 09d72d5e0h
+dd 05d7988e7h
+dd 09bb42d86h
+dd 02783de81h
+dd 09143a257h
+dd 000328746h
+dd 0629e6d1dh
+dd 0e2bd1cb6h
+dd 02879c640h
+dd 07b968359h
+dd 027f49c24h
+dd 002ba44d9h
+dd 096cb15f9h
+dd 0f5bd077fh
+dd 0c85dd301h
+dd 0e394d0aeh
+dd 0a37b17fbh
+dd 0dc9bf381h
+dd 0693555abh
+dd 0f291e709h
+dd 061456c86h
+dd 0f8d61ee4h
+dd 055ed0d88h
+dd 0075b6f9ah
+dd 08b165754h
+dd 0a372b613h
+dd 0f26fbaabh
+dd 073c592bbh
+dd 0f45a6bf4h
+dd 0880969b8h
+dd 09274768bh
+dd 0c0f7e253h
+dd 045cdb8a6h
+dd 01bf2c0cch
+dd 007c60522h
+dd 0864ff797h
+dd 0e41f674ah
+dd 06f717820h
+dd 05b823025h
+dd 0a3b30d3bh
+dd 05db7863ch
+dd 0206f0e78h
+dd 0d6f78adfh
+dd 0e3107754h
+dd 0a9707439h
+dd 00141f0b3h
+dd 0ae116520h
+dd 085f3cc30h
+dd 0bfe99217h
+dd 06b15ad80h
+dd 0c7e82573h
+dd 0a899ba88h
+dd 0ce92096dh
+dd 0c734e807h
+dd 05f414e33h
+dd 05068242ch
+dd 0afdf0285h
+dd 0195befb1h
+dd 0a961ef75h
+dd 05bb4e398h
+dd 06f0a9fcbh
+dd 0e02a5f8ch
+dd 08433e416h
+dd 0c1eed07eh
+dd 0428b0e94h
+dd 05bdefc03h
+dd 04f2ddbcah
+dd 062833d0ah
+dd 0698e0393h
+dd 084838cefh
+dd 040cb5f06h
+dd 00edc57ddh
+dd 0422936f0h
+dd 0ab969cb3h
+dd 0f8c39e97h
+dd 09623fb0eh
+dd 075c9a767h
+dd 0c972f2f8h
+dd 062184652h
+dd 0b21d39eah
+dd 0b55ff111h
+dd 054ce3524h
+dd 0f5b8519ch
+dd 019917b8ch
+dd 0fdb4484bh
+dd 05de86498h
+dd 03dcd4098h
+dd 0a44d8fa9h
+dd 0c5037f9ah
+dd 01500e589h
+dd 0b2546d6ch
+dd 0a27a649eh
+dd 0235883b3h
+dd 0b0af9beah
+dd 0369d83a6h
+dd 09212f7ech
+dd 0962b0f17h
+dd 085acb044h
+dd 00e5a47afh
+dd 0dff292a8h
+dd 06eff927eh
+dd 06ca7557ah
+dd 0f8eda697h
+dd 01a568b1ah
+dd 0341906bah
+dd 004a64b2dh
+dd 0fee0ec85h
+dd 035a7b30ah
+dd 012529326h
+dd 07aa94ee7h
+dd 06f58ed33h
+dd 0f38989cah
+dd 043c00248h
+dd 0c83b15efh
+dd 0aa11c532h
+dd 044304c99h
+dd 0418e60f3h
+dd 0c1a32b8bh
+dd 02d0dc427h
+dd 0af54ae56h
+dd 04f3edfb5h
+dd 09d67f17ch
+dd 00d126af7h
+dd 0f02baf28h
+dd 0fb5076f8h
+dd 01293f64eh
+dd 0b1ac282ah
+dd 0d5718de7h
+dd 08893b88ch
+dd 0e8bc257fh
+dd 0da450542h
+dd 01fdc54e6h
+dd 02f96fde6h
+dd 01063f0f4h
+dd 044cd5c9bh
+dd 04f62e360h
+dd 0d8c5389fh
+dd 092f7fce5h
+dd 09cee9b83h
+dd 07a3405b4h
+dd 05e04ccc8h
+dd 09a6b5061h
+dd 0e482363ah
+dd 0e43eca22h
+dd 0c786ff5ah
+dd 0c91a09b9h
+dd 0fb8a8c2fh
+dd 0f99ab2afh
+dd 0193f4a1dh
+dd 04542e79dh
+dd 038a20e1ah
+dd 0cdc6bdc8h
+dd 0017b10f1h
+dd 02a55c71dh
+dd 04f8c6ab4h
+dd 02bb416e7h
+dd 0400806fch
+dd 09dc2fb15h
+dd 0e6c432c5h
+dd 006836ce9h
+dd 096da699eh
+dd 0c7fc687fh
+dd 0528bd167h
+dd 03274a877h
+dd 0e16e0a28h
+dd 0d97b619ah
+dd 0b901d6d8h
+dd 0f1f7c7adh
+dd 0289a34e3h
+dd 08a2dfa8eh
+dd 0b044ca37h
+dd 07ff69964h
+dd 039b3c75fh
+dd 0bd520869h
+dd 0fd71bd27h
+dd 0829d1507h
+dd 0a91b849ch
+dd 062117440h
+dd 0f18edfd7h
+dd 05eccde3eh
+dd 0656a0812h
+dd 06aeee6e8h
+dd 0397c171ch
+dd 03c45ee1bh
+dd 03bb7c05ch
+dd 012a284ech
+dd 01b644a17h
+dd 0e832a77fh
+dd 0cf94fedah
+dd 0d695eba8h
+dd 06d3458b6h
+dd 04f08eeceh
+dd 09453d33eh
+dd 00cf939b3h
+dd 0b344bcb9h
+dd 0346cd71dh
+dd 07147a5f9h
+dd 0eccb8214h
+dd 00a721638h
+dd 0c2bc1e3ah
+dd 0114acd15h
+dd 0926cbc94h
+dd 026bf4ccbh
+dd 0a9f041a1h
+dd 01a33d811h
+dd 0d83ea782h
+dd 088409d12h
+dd 017c11837h
+dd 041a0b39fh
+dd 0916b6851h
+dd 01b5d736fh
+dd 0c9abead9h
+dd 0aa6c3e62h
+dd 07809a1bbh
+dd 0a9fe1148h
+dd 079678a9eh
+dd 097a57e00h
+dd 04413a702h
+dd 090b3c90bh
+dd 0b34fca7bh
+dd 0957dc9ech
+dd 05ac5821ch
+dd 0ab916374h
+dd 0a5b9fab0h
+dd 0886cf654h
+dd 043707921h
+dd 081c5a5cch
+dd 05acfdc4fh
+dd 0dfefbaaah
+dd 082be06d6h
+dd 0332d2bcch
+dd 014cbd77fh
+dd 0ea29361eh
+dd 0946ee7d8h
+dd 0bedf95a8h
+dd 09a91060ch
+dd 008aaa74eh
+dd 0908b173ah
+dd 0a3df564ah
+dd 0871f8ab9h
+dd 0dc9f5aafh
+dd 0c7a39175h
+dd 0308cb5d5h
+dd 0258602d4h
+dd 07921d455h
+dd 0f997f3cch
+dd 0df384b82h
+dd 083242997h
+dd 0739e1109h
+dd 0fec15c94h
+dd 07171b7f4h
+dd 0e8543175h
+dd 0db4007cfh
+dd 0a7b38232h
+dd 0946126cch
+dd 0b391df7ch
+dd 01c9323d1h
+dd 02877bbcfh
+dd 0600541feh
+dd 01de8ccc4h
+dd 03339843bh
+dd 0ca4b7375h
+dd 0f34aa33eh
+dd 0935751b9h
+dd 051b466ebh
+dd 035116a3ah
+dd 06a083d63h
+dd 0e827e631h
+dd 060a1123dh
+dd 08fd20999h
+dd 0fae9986bh
+dd 0ba1de8f5h
+dd 07c3c238dh
+dd 0d417debfh
+dd 06722445ah
+dd 0d4568a22h
+dd 03a7df2fch
+dd 0dd2fef3bh
+dd 057c0c9d0h
+dd 026ddc284h
+dd 012e454cbh
+dd 074d7f601h
+dd 0bb52d378h
+dd 049cb0334h
+dd 0b7926ee1h
+dd 0a6eafd25h
+dd 0a31006a9h
+dd 07ec143cbh
+dd 0cb570f88h
+dd 046889050h
+dd 03dbe5582h
+dd 09abf1dc0h
+dd 02ca5b14bh
+dd 0c0a8c5afh
+dd 04cd143a5h
+dd 0e7fb8ed1h
+dd 014ff185bh
+dd 0a7130991h
+dd 04f2a8fb7h
+dd 082ff9a2eh
+dd 0c34d60f3h
+dd 087dcb577h
+dd 0e36dd1cbh
+dd 067a79a9eh
+dd 08d4cc150h
+dd 0f6913aa5h
+dd 05f9c36f5h
+dd 0e9213469h
+dd 00617d4e7h
+dd 0c0e32adeh
+dd 08afe8333h
+dd 0574ff5ffh
+dd 0bf6b2eb2h
+dd 01dc70c33h
+dd 02dd26605h
+dd 05b6b7263h
+dd 0f91cf44ah
+dd 0c3b9a81dh
+dd 071fbc5d8h
+dd 0f96048cbh
+dd 0321730bdh
+dd 0190330d0h
+dd 03d8c4551h
+dd 07f611529h
+dd 0c01367a7h
+dd 02aebb3aah
+dd 01cabcd35h
+dd 0538295d1h
+dd 0ed142cc4h
+dd 04cc69497h
+dd 0d360483fh
+dd 0bb81e25bh
+dd 066eb5371h
+dd 0508bbe0fh
+dd 0f6f79632h
+dd 0c93bca14h
+dd 095193e5dh
+dd 0a0a9543fh
+dd 0660e353ah
+dd 063eceae0h
+dd 0da0eb4f6h
+dd 0e9a332b4h
+dd 0d36faf8eh
+dd 04a2ae0a5h
+dd 020131882h
+dd 08c01187bh
+dd 024bba1ebh
+dd 0f9052f19h
+dd 0212caa95h
+dd 0f9f23526h
+dd 0c31aa813h
+dd 053b3fe57h
+dd 0ffdffbffh
+dd 07cf2c320h
+dd 0b8cf1cfeh
+dd 02dbbe975h
+dd 04b567024h
+dd 05c90e759h
+dd 000e4d85ah
+dd 0f4ca75f5h
+dd 048a5993ch
+dd 0a904ff93h
+dd 09ae34b49h
+dd 02c5c6d96h
+dd 0f29d43a0h
+dd 084cb2eb4h
+dd 05ae5a05ch
+dd 06d3bbb72h
+dd 0cd123f90h
+dd 0bf7eb655h
+dd 0f08841afh
+dd 0de2838dbh
+dd 0f103860eh
+dd 056b8a335h
+dd 0222b4063h
+dd 07977ab21h
+dd 0a2abfe4eh
+dd 0f2299891h
+dd 0ede59041h
+dd 09b7799bdh
+dd 073cd96bch
+dd 045da5e6dh
+dd 059662b87h
+dd 030cb307ch
+dd 077c8d01ah
+dd 086f38ea8h
+dd 03e7fbf03h
+dd 05586c1a6h
+dd 064279ee3h
+dd 019a10da4h
+dd 09febf501h
+dd 0fd90674bh
+dd 0de1404a5h
+dd 0cf8f7d4dh
+dd 0fbbde628h
+dd 06aae5d34h
+dd 08eb006e7h
+dd 05dd05879h
+dd 02a91eaf6h
+dd 03627bfeeh
+dd 0c1bbddc5h
+dd 0ad9d07dfh
+dd 01f5eea09h
+dd 0873beaddh
+dd 0fd827736h
+dd 01572657eh
+dd 03ac1e3bch
+dd 00ef198d9h
+dd 01beda622h
+dd 041ee57bdh
+dd 0ffa4d68bh
+dd 0f7ac81beh
+dd 089a16a18h
+dd 0b4fb86e9h
+dd 0e098b7b4h
+dd 03b6513a3h
+dd 0014a67ech
+dd 092896d65h
+dd 018401092h
+dd 0fda2eb01h
+dd 063403199h
+dd 0967bc60bh
+dd 022108998h
+dd 0e536a932h
+dd 0f53183eeh
+dd 099bf55ffh
+dd 03358302eh
+dd 02023ea6fh
+dd 0d44a1d26h
+dd 04ea057b3h
+dd 09b538660h
+dd 02391b512h
+dd 00b9c0e17h
+dd 0f59f502ch
+dd 075fa8446h
+dd 035555355h
+dd 0d03d7fc4h
+dd 0a7354af7h
+dd 023568e46h
+dd 02125e5deh
+dd 0536df855h
+dd 04a6dc6c6h
+dd 04172120fh
+dd 06c949da8h
+dd 06adf5420h
+dd 03a155575h
+dd 00744cf91h
+dd 0dee3d071h
+dd 01366c16dh
+dd 04542a432h
+dd 04d570786h
+dd 0de10b06eh
+dd 0ad87cb02h
+dd 0a45dca16h
+dd 00b6a0279h
+dd 0a42ec2b3h
+dd 00f72ad2ah
+dd 072629cc5h
+dd 0bcfc0f8bh
+dd 0118b1390h
+dd 089029694h
+dd 0f4c98d01h
+dd 0e75f7928h
+dd 03170d9a9h
+dd 087b6abdbh
+dd 01a636ca2h
+dd 09005b622h
+dd 081496e81h
+dd 02b2781e8h
+dd 0f3a9d2c2h
+dd 0c7fc1d25h
+dd 0d47c7defh
+dd 0708a2ee9h
+dd 0dbe9415ah
+dd 0c5d1c0e4h
+dd 055149d55h
+dd 0b6af61e6h
+dd 010958187h
+dd 08d070a88h
+dd 006dc2fc8h
+dd 0f1277ee2h
+dd 02e131299h
+dd 0deb9e4beh
+dd 0747b4704h
+dd 0d88456b2h
+dd 09219c0eeh
+dd 05112e8d3h
+dd 0348252fah
+dd 0d72d5b43h
+dd 0cb7356e4h
+dd 067974c9bh
+dd 093e05ddeh
+dd 0dd91e5a2h
+dd 07a7fe2e4h
+dd 0700e4ce9h
+dd 09421395ch
+dd 012422dffh
+dd 01df40a81h
+dd 0c922d3f8h
+dd 05a7df114h
+dd 044ed7aach
+dd 01dd8fcb5h
+dd 00f27eb65h
+dd 0ca767820h
+dd 06e84898ah
+dd 0358241e6h
+dd 0c435a9b5h
+dd 039f388f1h
+dd 0503fcf9ah
+dd 0bade8350h
+dd 0766c6ceah
+dd 09e9d7eceh
+dd 071184622h
+dd 08f10f087h
+dd 03b7aa912h
+dd 0c8de8f7ch
+dd 0246b328fh
+dd 00eb27c61h
+dd 0794aa321h
+dd 0ca707cceh
+dd 08dc6331bh
+dd 06767f092h
+dd 049561cc5h
+dd 0cb12aef5h
+dd 079ffc275h
+dd 01f8185e4h
+dd 0ba9d1c19h
+dd 0bf8c7ec8h
+dd 0d2b4d4afh
+dd 00cafc06fh
+dd 0bac076bbh
+dd 06e33b06fh
+dd 0b99bf546h
+dd 033ed1d40h
+dd 07125a988h
+dd 0c2448d32h
+dd 0ddf494b4h
+dd 02185a6f5h
+dd 0a9cabaffh
+dd 0325dff30h
+dd 086c9dca3h
+dd 0cc7006c1h
+dd 0d4699d4dh
+dd 0d7655836h
+dd 01fefe09ah
+dd 035a8e897h
+dd 0d4b6ac83h
+dd 0b0e76febh
+dd 05ad43773h
+dd 0ec314738h
+dd 0f5e5126ah
+dd 0920f5f5fh
+dd 0f343abb0h
+dd 095f2cf1eh
+dd 02122c7c2h
+dd 07007d902h
+dd 0eb9d8659h
+dd 0edb41ee0h
+dd 0291b6938h
+dd 0cf1eb239h
+dd 0392a2a81h
+dd 06f1c211dh
+dd 03fbf7e02h
+dd 094bc949bh
+dd 0bbefe50bh
+dd 00531c4d4h
+dd 0c445380ah
+dd 0412a66a5h
+dd 0efcb1051h
+dd 0bc927d12h
+dd 048469299h
+dd 0dc4b2c22h
+dd 04fdab34dh
+dd 0fa71c757h
+dd 07a182038h
+dd 0c948b40fh
+dd 096cb173ch
+dd 047c4d576h
+dd 023f36cddh
+dd 0dc150618h
+dd 0f63c136dh
+dd 0f3d7d0beh
+dd 0b6fd42b5h
+dd 0c6f17f83h
+dd 09f628656h
+dd 0a2ee1214h
+dd 03f3fb945h
+dd 0a424c3d6h
+dd 0fb21309bh
+dd 04c6d97f0h
+dd 0a8be02fch
+dd 034f5b7eah
+dd 0ff2a5f0ah
+dd 004d3bbeah
+dd 0f26e2bfch
+dd 0fd44148eh
+dd 0993e686ah
+dd 0484911efh
+dd 02ff0619ch
+dd 023a12d70h
+dd 02a250aa1h
+dd 095a935b4h
+dd 03bd428c8h
+dd 0a1162eebh
+dd 0f1a291edh
+dd 0963a78b1h
+dd 090b16eaeh
+dd 0e5ecb3f5h
+dd 018ecca15h
+dd 04b12d241h
+dd 04d0997feh
+dd 0bc2830b6h
+dd 012f44938h
+dd 00555c260h
+dd 0159fe1beh
+dd 083e810adh
+dd 0e82945cbh
+dd 02f31f65fh
+dd 0a8c381c0h
+dd 0b7c2d751h
+dd 05d794bdfh
+dd 052ce4ae1h
+dd 008519c63h
+dd 09d2631ceh
+dd 0205d00edh
+dd 0e61c250fh
+dd 0ff515010h
+dd 07230ce7ah
+dd 08904492eh
+dd 0c27a67d0h
+dd 0292dc406h
+dd 0b7eac709h
+dd 05258a703h
+dd 091f974dah
+dd 0d8d5bbe8h
+dd 0144fa049h
+dd 04c7734c0h
+dd 0350cfaceh
+dd 09739a2adh
+dd 02a027c24h
+dd 0fd5c7ab8h
+dd 0ca567ed4h
+dd 0188fa4c6h
+dd 05b325f74h
+dd 0de37fd97h
+dd 07a3fee16h
+dd 0a019d194h
+dd 06d9743c9h
+dd 02b776939h
+dd 057ef4e3bh
+dd 018c4b013h
+dd 0d8fe039ah
+dd 02b571123h
+dd 08096deaah
+dd 04cd64cceh
+dd 089071863h
+dd 028bbab00h
+dd 0728e0cd1h
+dd 0837c9655h
+dd 0a4b4b86eh
+dd 04c8a178eh
+dd 046b15d24h
+dd 047c4dd37h
+dd 0ad0a5c26h
+dd 0c7a120fdh
+dd 0a172693ch
+dd 06934f6e8h
+dd 090bc6942h
+dd 0e7edc9e5h
+dd 04f7b8f7bh
+dd 06f4077e7h
+dd 0cca6e217h
+dd 04d1ffa5fh
+dd 0399eededh
+dd 0c70237b8h
+dd 0ee29c48ah
+dd 060806d92h
+dd 0ce6bec91h
+dd 040f2a689h
+dd 013b1b1beh
+dd 08c2fd6d0h
+dd 006f38262h
+dd 0168d5e80h
+dd 08126cec4h
+dd 0a31ca5f1h
+dd 0399ff6d3h
+dd 0c527ee50h
+dd 0d784dbdch
+dd 0c9f44477h
+dd 0bfae50e7h
+dd 032b952aeh
+dd 07ec13378h
+dd 01bf9adb6h
+dd 092a6c786h
+dd 054388bfbh
+dd 0845287eeh
+dd 08a6e6ac6h
+dd 096650e95h
+dd 05f66215ah
+dd 0aa2194b9h
+dd 07bdbbdb2h
+dd 0817230f0h
+dd 09993e722h
+dd 0e9e041b5h
+dd 069bc456ah
+dd 07cddebb6h
+dd 06be151d8h
+dd 097cf8397h
+dd 0a7c7dfafh
+dd 0281d014fh
+dd 093cd70c5h
+dd 00ab82d75h
+dd 099e33dcfh
+dd 0d23a7d90h
+dd 0acadfa91h
+dd 08a579c8ch
+dd 027c7cf61h
+dd 09fe8208bh
+dd 066665a4dh
+dd 00fe0288ch
+dd 0d875161ah
+dd 0a33a797ch
+dd 00f0e21a2h
+dd 009955aaah
+dd 0dc2d94a3h
+dd 0ec768b5fh
+dd 02e7aaa00h
+dd 0215137eah
+dd 06e781b52h
+dd 0f4e1274bh
+dd 0ca322326h
+dd 05196732ah
+dd 082ed42f4h
+dd 07d0df474h
+dd 0954d370fh
+dd 0681c12d6h
+dd 0e4a06adch
+dd 09ae0ef0fh
+dd 02ff36eb0h
+dd 015149545h
+dd 0515b5dc2h
+dd 0f3a839a1h
+dd 003303687h
+dd 00a0f9ae5h
+dd 0c94dc5bfh
+dd 0f14ef869h
+dd 03f450438h
+dd 0ab506897h
+dd 093bebf65h
+dd 073c6b4a0h
+dd 0fd31d55fh
+dd 06df9901bh
+dd 01122c993h
+dd 0146f2326h
+dd 09eaa676dh
+dd 0aa06c01fh
+dd 045a1411eh
+dd 02cb752c9h
+dd 0984f273eh
+dd 00110ba6ch
+dd 0b107308ah
+dd 014813112h
+dd 01709ea82h
+dd 03537784ah
+dd 063947e96h
+dd 066437c95h
+dd 02a4f9c03h
+dd 05a102e73h
+dd 0ce628fbeh
+dd 08454cf7ah
+dd 0f6cbdbc1h
+dd 05031666dh
+dd 0d053ccafh
+dd 069e8549eh
+dd 05a2fcdach
+dd 0c7ba9605h
+dd 0bbd40261h
+dd 001225b14h
+dd 0862d7785h
+dd 0a4d77f15h
+dd 0ebbcb427h
+dd 0e83486bch
+dd 03bf513d7h
+dd 0b92ca2b9h
+dd 09a506ebbh
+dd 087eb84ech
+dd 0f79fa958h
+dd 0566c026eh
+dd 07af12c26h
+dd 0866baa96h
+dd 0a7b532a4h
+dd 067f76142h
+dd 0cbcfb7deh
+dd 001d12be5h
+dd 01362ceedh
+dd 04e70d16bh
+dd 0acc346d4h
+dd 079a99633h
+dd 0ca236ce4h
+dd 0bcb8e01bh
+dd 01814b804h
+dd 001a24db7h
+dd 02de4a71bh
+dd 05288db96h
+dd 0807c4701h
+dd 0edf7844fh
+dd 0403d6e55h
+dd 0a6ca5e2ch
+dd 01f464f78h
+dd 05f9fa7e6h
+dd 045633f22h
+dd 0f989c77dh
+dd 0abeb3c80h
+dd 0ab7ffcc9h
+dd 0b0124314h
+dd 00c6768fbh
+dd 002d53b8dh
+dd 0c0193ab7h
+dd 03bddb450h
+dd 05cbc3444h
+dd 0a1af963ch
+dd 015efae4ch
+dd 06bb5734bh
+dd 027c82d6ch
+dd 09094d209h
+dd 0faaa88dah
+dd 06fd6e758h
+dd 05351d802h
+dd 096d628e0h
+dd 0f4767339h
+dd 0d485b3a0h
+dd 0efd852fch
+dd 01df6f79fh
+dd 037e1d953h
+dd 045deead7h
+dd 0e93b1af6h
+dd 085952b73h
+dd 06a0d2e17h
+dd 0c39e436bh
+dd 03490e6f7h
+dd 0fa3bcf11h
+dd 03678db72h
+dd 01114a728h
+dd 0b141e5a7h
+dd 09b861aa1h
+dd 03a13cc40h
+dd 0df8d5699h
+dd 007548ff8h
+dd 0c666953bh
+dd 0f38aee14h
+dd 04634550ah
+dd 03a9619deh
+dd 0df650ab3h
+dd 0a9060f62h
+dd 0203ea123h
+dd 0f9ba7a67h
+dd 03b8c3485h
+dd 06e887e22h
+dd 006da1a62h
+dd 0d60d4129h
+dd 0c279321dh
+dd 0b51d2ecbh
+dd 0ec4d9e8fh
+dd 014efc739h
+dd 08e38eb1dh
+dd 0ab657848h
+dd 024f76320h
+dd 0269f3013h
+dd 05e179ccbh
+dd 059e6b65dh
+dd 05efe4a2dh
+dd 0b70531f9h
+dd 04b61889ch
+dd 01fd8c2e4h
+dd 034bc47eeh
+dd 0a82aa405h
+dd 0c166a3c7h
+dd 0ba967671h
+dd 0be37feech
+dd 01372f88eh
+dd 058b25379h
+dd 006c04c6bh
+dd 062ef8796h
+dd 013cc9677h
+dd 091b7b3aeh
+dd 096d4c6d8h
+dd 085b40168h
+dd 078bcd775h
+dd 06eeb6e6bh
+dd 0d84387f3h
+dd 0cd5db76eh
+dd 086b64c38h
+dd 0c891bb54h
+dd 0352fc3a4h
+dd 05612bb54h
+dd 0032879aeh
+dd 0f6e36477h
+dd 0a15fab24h
+dd 0019e623eh
+dd 0348fefdeh
+dd 0ffd20beah
+dd 068705e66h
+dd 080d4bd18h
+dd 0f70a5c22h
+dd 02979d996h
+dd 02c0c10eeh
+dd 0a547f8efh
+dd 01cd04d71h
+dd 004e2184eh
+dd 01f8004e8h
+dd 0dd79e79eh
+dd 0ea6f118bh
+dd 0fe946ee4h
+dd 031207c3ah
+dd 0e99a9d05h
+dd 0424f7035h
+dd 097b4d788h
+dd 0e787c490h
+dd 0793c2ce8h
+dd 0e43ba44eh
+dd 00ca398a8h
+dd 090add868h
+dd 085d85d67h
+dd 0d80231cdh
+dd 04fe17a52h
+dd 090f5ec6ch
+dd 0f17c1585h
+dd 08ca83f71h
+dd 0ae71381ah
+dd 01c90a7a6h
+dd 0837ced69h
+dd 028335ad6h
+dd 06d9eb9b9h
+dd 0a1d0aba8h
+dd 0588c8722h
+dd 0e51e1bfch
+dd 0759ec186h
+dd 01b3070e3h
+dd 0dd582031h
+dd 0b6ea86f8h
+dd 02c328768h
+dd 07c09b65bh
+dd 0b20d7145h
+dd 03c0b0f0ah
+dd 003773677h
+dd 098a522ddh
+dd 0b71ca6ach
+dd 098d8a841h
+dd 09c1bfd1ch
+dd 0eefd5e1bh
+dd 076c59bb8h
+dd 084f37b9bh
+dd 06f481ba5h
+dd 02c65bd43h
+dd 0c7422adch
+dd 0e464d9f1h
+dd 076221660h
+dd 0da76b7ech
+dd 009f1eb8dh
+dd 03595e5ffh
+dd 0a2b6a281h
+dd 0880db53dh
+dd 0a046742bh
+dd 0f5b53d8eh
+dd 0940fe6f0h
+dd 091ecc429h
+dd 00587027dh
+dd 05b2a82c9h
+dd 0b1e38c44h
+dd 0d84f76bbh
+dd 0576accc1h
+dd 004a70922h
+dd 0459fe079h
+dd 083b9bb55h
+dd 0d92698d4h
+dd 0e9fda8c4h
+dd 04afe210dh
+dd 0f3ca53bah
+dd 08abdb47fh
+dd 0ac176972h
+dd 040127c98h
+dd 0c4bed306h
+dd 05630e620h
+dd 065a135b9h
+dd 0b9a03edah
+dd 02f54c517h
+dd 0ac6d8e60h
+dd 01ae10a0dh
+dd 0e756a9bfh
+dd 0592a1cech
+dd 03763878fh
+dd 0bf0acc08h
+dd 0fd3f8901h
+dd 0872cad52h
+dd 0fb4fb420h
+dd 09d082996h
+dd 0ff7d8ce3h
+dd 08b4470d1h
+dd 03037ec58h
+dd 0fe498f05h
+dd 0f40516f7h
+dd 00ef395aeh
+dd 07bb92f39h
+dd 0573d251dh
+dd 084d027afh
+dd 09ee90ef4h
+dd 09bbbe6c7h
+dd 08f218523h
+dd 0cb943dc3h
+dd 0269f40b3h
+dd 063daaa84h
+dd 078ac19c5h
+dd 0bdba5ab9h
+dd 093d1e070h
+dd 09a6e4585h
+dd 0ab659061h
+dd 07a9786cah
+dd 061b0f839h
+dd 0309b3f28h
+dd 0b5241e50h
+dd 0e4d6c6b7h
+dd 08fa5e84ah
+dd 0b302102dh
+dd 0287e9859h
+dd 0f4cc6804h
+dd 07742f0a2h
+dd 0877eacb0h
+dd 0460d81b5h
+dd 06e36ad0bh
+dd 0c3373e48h
+dd 0ee227278h
+dd 0ca5132e3h
+dd 0c16d2f63h
+dd 0af27cdb5h
+dd 0502a1537h
+dd 046422003h
+dd 02a5b4a73h
+dd 0384d4f88h
+dd 0edb290e6h
+dd 0f1e2f80ch
+dd 0fba16e5eh
+dd 0f0e3e6ddh
+dd 0ddba642ch
+dd 06176e2b3h
+dd 092578d95h
+dd 02254ebabh
+dd 0812cd77bh
+dd 078db3d42h
+dd 0f277a35dh
+dd 00d6bc263h
+dd 0768bbca5h
+dd 09a5d7d40h
+dd 0aa88d395h
+dd 046e2d43bh
+dd 03bdf0f9eh
+dd 01d8aa695h
+dd 030dc40dah
+dd 0b517fb04h
+dd 06049acbch
+dd 0e44815b2h
+dd 031b83fb1h
+dd 043847b89h
+dd 0298392bah
+dd 01eefc902h
+dd 0fe705b95h
+dd 0e0cede66h
+dd 0baf12800h
+dd 027caabd6h
+dd 049e7c307h
+dd 049f2da81h
+dd 0677bc7fch
+dd 060b52cd9h
+dd 00abc994dh
+dd 068284ffdh
+dd 0e6a05c83h
+dd 0cedfcbf7h
+dd 0503ef22eh
+dd 070ee3db7h
+dd 0d31bc352h
+dd 011f01602h
+dd 00338848fh
+dd 0e88c32bbh
+dd 0fa6cfebah
+dd 01a9311dch
+dd 0aff578cah
+dd 0bf011970h
+dd 069f3b20ch
+dd 0acf581cfh
+dd 01cf40d13h
+dd 0975bbf4eh
+dd 0dc710ec2h
+dd 059dbc777h
+dd 08e591475h
+dd 0818d6b07h
+dd 06a5b45b4h
+dd 0a9439ad3h
+dd 013ec5414h
+dd 04f14bf16h
+dd 000833b87h
+dd 0904ef28ch
+dd 02f23df06h
+dd 057ee725dh
+dd 0a04c7be7h
+dd 0ba937afeh
+dd 00cfea671h
+dd 04e04fbceh
+dd 021f141fah
+dd 09767730ch
+dd 09262d269h
+dd 0001b57a4h
+dd 0a27bcdb6h
+dd 06e9688d0h
+dd 09083ba13h
+dd 0f489d6abh
+dd 0658534a7h
+dd 032af53e1h
+dd 05537afd3h
+dd 0c41a293ah
+dd 0e9d6fed0h
+dd 07a076de7h
+dd 0b7afa53fh
+dd 0230487eah
+dd 0da2dc09bh
+dd 00e579606h
+dd 04c2928c5h
+dd 0b1bc3580h
+dd 097f4ed3fh
+dd 097da854eh
+dd 0d74a8387h
+dd 06444bc4ch
+dd 0152ec37fh
+dd 08387249fh
+dd 0fb30cc74h
+dd 06ae604c0h
+dd 008e5b365h
+dd 007bfc79dh
+dd 053950ee7h
+dd 0534e2c76h
+dd 0767c3706h
+dd 0dd955d41h
+dd 0f2da744ch
+dd 048b29254h
+dd 0c759c32ah
+dd 0ab15d7afh
+dd 0a9bba3eeh
+dd 07d1721dch
+dd 064439bb8h
+dd 005be3fddh
+dd 08fc62d5eh
+dd 01fc945c4h
+dd 05b30a7e2h
+dd 06748433bh
+dd 0ea2f5fd5h
+dd 061388f02h
+dd 0d456568ch
+dd 0104cc0e2h
+dd 0475ea4aeh
+dd 0a05156e6h
+dd 07bd9676fh
+dd 0c91f9d75h
+dd 00ca3bea0h
+dd 0d9322ce6h
+dd 0affa57bbh
+dd 0d67b2040h
+dd 034e50d78h
+dd 01cb8e40fh
+dd 0c5bb3507h
+dd 0030cdc25h
+dd 00bff0939h
+dd 0c4ca0818h
+dd 037830b52h
+dd 0849f72b9h
+dd 01d3cfb24h
+dd 05b0a2ed8h
+dd 0139bf979h
+dd 0132c61e9h
+dd 0e1bce4aeh
+dd 091f6c0b6h
+dd 01cc3d232h
+dd 0f7926f9eh
+dd 05881e986h
+dd 0b53a6433h
+dd 010e01776h
+dd 07eac5bb9h
+dd 041bb560eh
+dd 0eaabdf74h
+dd 09d74f73ch
+dd 039989b11h
+dd 0eaad5c87h
+dd 0d2f32793h
+dd 08a9b5a1bh
+dd 02cdddcfch
+dd 0f60073bbh
+dd 0db2f537bh
+dd 02a3fce0bh
+dd 0ac9da793h
+dd 090368fb8h
+dd 0ed1b2e34h
+dd 0d60cadefh
+dd 0b27519c3h
+dd 0018a5a57h
+dd 068c824a5h
+dd 0f05ee6cdh
+dd 03fc3a997h
+dd 0e4845773h
+dd 0198a4940h
+dd 08d3cc645h
+dd 016249a67h
+dd 098986c04h
+dd 04ccc668eh
+dd 0593350ffh
+dd 022bedf95h
+dd 050bd2424h
+dd 01023882bh
+dd 01e93d6e4h
+dd 0a6e1e455h
+dd 0c6ebbf2dh
+dd 0940cb1e2h
+dd 0e4b6a02bh
+dd 010f6a3bdh
+dd 0edb9cc78h
+dd 0aaa5ec15h
+dd 02518eff3h
+dd 00982ff7fh
+dd 0e992aeb9h
+dd 02a504443h
+dd 07a9a54beh
+dd 0b8979945h
+dd 02ec7884ch
+dd 0f30961cbh
+dd 0019c8757h
+dd 00fd4e7c1h
+dd 003eecb79h
+dd 0c7dfa552h
+dd 00ce2a3b0h
+dd 08206cc11h
+dd 0d4454363h
+dd 0cb7b09b1h
+dd 095bc7041h
+dd 0087f8ea3h
+dd 0baca9ef8h
+dd 048f7f437h
+dd 0b802fd50h
+dd 0d76d026bh
+dd 0f970928eh
+dd 04bd06b3ch
+dd 0d180b6cbh
+dd 061110fe1h
+dd 0fc1130fah
+dd 015193f27h
+dd 063a2be66h
+dd 0114aba22h
+dd 0ca79d673h
+dd 0c7a3889fh
+dd 01ed7ee40h
+dd 02e514b97h
+dd 07b13fec1h
+dd 0084105f0h
+dd 07fb43f22h
+dd 05daed00fh
+dd 0bf2f35d2h
+dd 09a22c2ebh
+dd 029d638ach
+dd 06971ec25h
+dd 06ad83919h
+dd 096b779c8h
+dd 0e1dcf8c7h
+dd 060dcb992h
+dd 0de91523eh
+dd 07e2f6a93h
+dd 09e862d9bh
+dd 0cdf8d024h
+dd 0c980a61bh
+dd 01996830ch
+dd 0dbbb690dh
+dd 04d64a326h
+dd 0fbad02b1h
+dd 0279a05ech
+dd 0b97a47e2h
+dd 054f6e9c2h
+dd 0ed57f2e5h
+dd 06c34cda9h
+dd 05320f2c0h
+dd 03ec0dfb9h
+dd 06873733fh
+dd 0803a1e79h
+dd 0ff80625dh
+dd 026df55dah
+dd 0e340578dh
+dd 013716d2ah
+dd 05600a783h
+dd 0f5a731bbh
+dd 012463f41h
+dd 0fddd0253h
+dd 0431df444h
+dd 0057e5b67h
+dd 08af73a72h
+dd 05132832dh
+dd 0b31984afh
+dd 0325dc03bh
+dd 0941225a9h
+dd 009ecfd92h
+dd 0416534a1h
+dd 0d56d18ech
+dd 0944e2d25h
+dd 0dc07a255h
+dd 0827ce509h
+dd 08d19a805h
+dd 063c270b9h
+dd 013c172a7h
+dd 0a9a425e6h
+dd 0ed800f78h
+dd 0c9fd9153h
+dd 0eee6f840h
+dd 09bf87cd3h
+dd 0b4a4e135h
+dd 0d8142e8eh
+dd 0f5c995f5h
+dd 019cb57e4h
+dd 078c5a17dh
+dd 08084eebah
+dd 09b122666h
+dd 0b349e9b0h
+dd 06b2ba7dfh
+dd 00239f12dh
+dd 001711f04h
+dd 0856dadd7h
+dd 0442da184h
+dd 03b86483ch
+dd 0780d7ad7h
+dd 0336f71c4h
+dd 0b7806c5fh
+dd 01e33bc8dh
+dd 0b9991eb8h
+dd 043f330c0h
+dd 080fa9513h
+dd 0a972c4bbh
+dd 0f3dddbaah
+dd 062111f33h
+dd 0e36aaa62h
+dd 0cef39e32h
+dd 0f9dd633ch
+dd 0a11346f7h
+dd 0445884e6h
+dd 0d954f42bh
+dd 051f04993h
+dd 053237ce4h
+dd 076add3edh
+dd 05a8e146eh
+dd 02ba9c1efh
+dd 097fc942ch
+dd 0dcc06ac9h
+dd 0d339b2a1h
+dd 0072efa56h
+dd 0a59dce5dh
+dd 07ac99fd9h
+dd 057451f15h
+dd 096b2d392h
+dd 0b2adc551h
+dd 002352e47h
+dd 06dcaa9a2h
+dd 0fb3715dfh
+dd 054ee9774h
+dd 0fb882765h
+dd 078f68034h
+dd 02d432662h
+dd 0226019d3h
+dd 08e6daf60h
+dd 019a49b7bh
+dd 01efd10d5h
+dd 09e30d548h
+dd 0d2c0c15fh
+dd 0de418a10h
+dd 028809f0eh
+dd 0b4109754h
+dd 0b39a8dc4h
+dd 0ff7bfc36h
+dd 01578257eh
+dd 007c51cd5h
+dd 01b6821d3h
+dd 0159f2de1h
+dd 0debe39feh
+dd 034eec3dch
+dd 0a9cb20ebh
+dd 0a7b477cdh
+dd 083924b89h
+dd 0ef1c5c2bh
+dd 01ce40052h
+dd 0bb7072f6h
+dd 0614c105dh
+dd 04f0764ebh
+dd 0c2bbf522h
+dd 0cbb7d837h
+dd 0e32d1288h
+dd 0d2ff9c00h
+dd 02bf772e7h
+dd 01af4639ch
+dd 0aee424c4h
+dd 07ab36414h
+dd 09ea7dda6h
+dd 09ac389cfh
+dd 00aba3ef2h
+dd 085a6f3f3h
+dd 083081250h
+dd 0543fe3ach
+dd 01f6d3453h
+dd 0825de73ch
+dd 0f6405055h
+dd 05683454bh
+dd 05b7f611dh
+dd 0d5296dbdh
+dd 0e9ca8967h
+dd 01c7e783dh
+dd 099ac7dafh
+dd 0fe0eae69h
+dd 0892cb6d5h
+dd 0a871b3c1h
+dd 016836c46h
+dd 09c391a4ah
+dd 0e46cd302h
+dd 04a02dccbh
+dd 08d6d9dc6h
+dd 061679288h
+dd 0b4d8a512h
+dd 08b2b1ce0h
+dd 0cd91191eh
+dd 0a8a0ace9h
+dd 08b0f4149h
+dd 0d9266242h
+dd 043359d4bh
+dd 07e827260h
+dd 09dc33760h
+dd 0d157e440h
+dd 0fcd46133h
+dd 0a0c8e47dh
+dd 065018068h
+dd 0b069e0c1h
+dd 0ab38bf71h
+dd 08c4bb64ah
+dd 0f4d6acc0h
+dd 07cbe42e7h
+dd 0ee1ce246h
+dd 0baff07edh
+dd 0e37f8c14h
+dd 045a9c648h
+dd 0c61b568ah
+dd 05fc23838h
+dd 0213dedcfh
+dd 035184587h
+dd 02d91753ah
+dd 01b24a72ch
+dd 06e2f255bh
+dd 0b494c3ffh
+dd 03025f6f4h
+dd 08d0533b9h
+dd 0a59521e6h
+dd 03d2e5409h
+dd 0abbb5bdch
+dd 018fd7bf8h
+dd 0bd15094ah
+dd 0b030eedah
+dd 09b04451ch
+dd 0ef7a0553h
+dd 0b8c15985h
+dd 0ef34bdf4h
+dd 029c40ca7h
+dd 019beec37h
+dd 088002c5dh
+dd 009e2c630h
+dd 0aef5d314h
+dd 042ce2fach
+dd 06e6cb947h
+dd 01131b3e0h
+dd 02519c6efh
+dd 0ae4c5524h
+dd 083ca1c40h
+dd 0df488124h
+dd 07b38364dh
+dd 06b7a9801h
+dd 0f9c89a8fh
+dd 0c31837f9h
+dd 05c60c0f4h
+dd 0330f6035h
+dd 01f9557bbh
+dd 0e33abd01h
+dd 0ad0eb0d6h
+dd 03309905ch
+dd 0acdfafbeh
+dd 0476a49b3h
+dd 0ed066d0eh
+dd 010479aa6h
+dd 09ce9ee4ah
+dd 03b3659dch
+dd 0bd000371h
+dd 0c03f6451h
+dd 0eb91fab2h
+dd 0657f9f37h
+dd 07ce9c639h
+dd 035698d09h
+dd 085309d2ah
+dd 06211dfd4h
+dd 01bf42c5ah
+dd 0101067e8h
+dd 05f117dcch
+dd 092388d32h
+dd 01fd6a7eeh
+dd 0e9c73e57h
+dd 07d111a74h
+dd 028a62eeeh
+dd 03c981b3dh
+dd 0bca4927fh
+dd 0bd5c0262h
+dd 07340d37eh
+dd 088d0b5ddh
+dd 0279b1310h
+dd 09c7f21cch
+dd 0f2529380h
+dd 068161a6dh
+dd 0301ee34eh
+dd 05f1f1ed2h
+dd 01c30376dh
+dd 0af8f6d17h
+dd 0de8f76a7h
+dd 07dbbd1cah
+dd 0efebde24h
+dd 02e7f4a13h
+dd 03dfde8cdh
+dd 056ff9f40h
+dd 04d9cb881h
+dd 0f12edfdah
+dd 00fa470e9h
+dd 00699ca4dh
+dd 082608b94h
+dd 0409c6f88h
+dd 0b5b82a40h
+dd 03d363a3fh
+dd 041f2c531h
+dd 00996826bh
+dd 0523e92f8h
+dd 0c23d6f2ch
+dd 04c1a838bh
+dd 09e7c840fh
+dd 04082ec5dh
+dd 0719599ddh
+dd 087bde0e0h
+dd 023c5abcdh
+dd 0ed647a34h
+dd 055562a62h
+dd 05163a263h
+dd 0d67cff29h
+dd 0a1dfd55dh
+dd 0266f9979h
+dd 0661448deh
+dd 02c78d410h
+dd 09c7de7b6h
+dd 03e85c20dh
+dd 0d01fc8d0h
+dd 087b90b5fh
+dd 08deff427h
+dd 06eb9239ch
+dd 0242afb98h
+dd 0675de1a0h
+dd 0cd17fe93h
+dd 00f1328e6h
+dd 0cc3a84f2h
+dd 0c957bb93h
+dd 0faa37342h
+dd 0f3765926h
+dd 0a48aeebbh
+dd 084efd852h
+dd 0ba7b99b3h
+dd 0b6259536h
+dd 0af397cebh
+dd 024532c87h
+dd 056f900c4h
+dd 05473b31ch
+dd 0588794f4h
+dd 0516609e3h
+dd 0fca80b5ah
+dd 099c469fbh
+dd 063872d31h
+dd 0cd3e34f3h
+dd 03531fde6h
+dd 0208549b3h
+dd 01749855ch
+dd 0aa3e8b32h
+dd 02909841ch
+dd 047fe361ch
+dd 0423e0cfeh
+dd 02d86a856h
+dd 045f96935h
+dd 025da2dc2h
+dd 05b1f4bf8h
+dd 07cc54d00h
+dd 0e2a3008ah
+dd 0749569ach
+dd 089910351h
+dd 036805e76h
+dd 049ccafc7h
+dd 095268404h
+dd 057b0847bh
+dd 05cf0979ch
+dd 047bb79cch
+dd 0b6b4df17h
+dd 0d052e62fh
+dd 03d8d49e1h
+dd 0f8b3a82ch
+dd 0e3e53eb5h
+dd 0b3d25010h
+dd 0e12b57a2h
+dd 034c3d3fch
+dd 0825fa170h
+dd 0dbb02817h
+dd 0fcc50962h
+dd 003564eb4h
+dd 0f1323386h
+dd 097838396h
+dd 0eb5f9536h
+dd 0a8a02d0dh
+dd 0607d5e12h
+dd 00a312adeh
+dd 081a151a3h
+dd 09882226bh
+dd 0ee1c4d8ah
+dd 0b6146b5eh
+dd 057943a2fh
+dd 04cc09d3eh
+dd 02e9b4774h
+dd 0045ad0d3h
+dd 0fa12d268h
+dd 0a4067411h
+dd 039ed4847h
+dd 060cdd541h
+dd 01014c08dh
+dd 02e57e63ah
+dd 05b5c2870h
+dd 014401383h
+dd 05eaef01eh
+dd 0e16b3e00h
+dd 0b5e03a0bh
+dd 045521839h
+dd 00a205558h
+dd 05fd82da1h
+dd 08e8cd035h
+dd 054b0b9b8h
+dd 0b9c231e6h
+dd 0feec0820h
+dd 045b23e8fh
+dd 0b5a1b379h
+dd 003391bech
+dd 0b0576ddah
+dd 05550eecdh
+dd 07e46af25h
+dd 0aef7d526h
+dd 076c27ed9h
+dd 0ab1ea9eeh
+dd 001e961f2h
+dd 07f1d983ch
+dd 0bbcc9dcdh
+dd 0856d1332h
+dd 038b0fd9ch
+dd 0d383ee7fh
+dd 0f2d1e6f6h
+dd 0fc637617h
+dd 0a5d36e0bh
+dd 025086772h
+dd 0ef9cbb2ch
+dd 0416643e4h
+dd 09f9d1fc6h
+dd 0d463c7b5h
+dd 0bf063a21h
+dd 0c16dcebbh
+dd 0634946afh
+dd 0e4973634h
+dd 013afb3a2h
+dd 08fd7fdf7h
+dd 06c0f466ah
+dd 063c9621bh
+dd 007a32b35h
+dd 0d330c891h
+dd 073671166h
+dd 031fc0d28h
+dd 0db442830h
+dd 0bbb347dbh
+dd 05118adc0h
+dd 050ba7999h
+dd 023ba8300h
+dd 0ae0fc725h
+dd 06cb6067ch
+dd 04e0ad265h
+dd 0a2a14898h
+dd 0c7ac5b29h
+dd 037584ce4h
+dd 03023cffeh
+dd 01065ede3h
+dd 02788a4b1h
+dd 008e194e6h
+dd 0f01ba4a8h
+dd 0d397c717h
+dd 0679baefdh
+dd 072e68c6fh
+dd 0809ad8c8h
+dd 071f1718fh
+dd 04d2a5be9h
+dd 017e6f999h
+dd 0d587afa6h
+dd 0870616a9h
+dd 0de93039dh
+dd 06e4ebd89h
+dd 003c92865h
+dd 0b12dcaa3h
+dd 0d8a5776fh
+dd 0b67b379ch
+dd 04fea88b8h
+dd 07f1fb806h
+dd 0e58d5c3ch
+dd 068c4bc3bh
+dd 07ae4aacfh
+dd 0603f2a50h
+dd 0c2948c15h
+dd 027b85a22h
+dd 0680a63aah
+dd 00de2af77h
+dd 08be0fd19h
+dd 0f65a1a17h
+dd 08c1fd881h
+dd 04fbee9fdh
+dd 0b049cd69h
+dd 0c8f33fd8h
+dd 05eb830ech
+dd 079146258h
+dd 0a5951fdah
+dd 0128f1d0bh
+dd 0c265a7cdh
+dd 00bd709b5h
+dd 0e358d176h
+dd 0b2029d7ch
+dd 0e361fdebh
+dd 0c88e4d6eh
+dd 0db9f778bh
+dd 0b145d738h
+dd 04b437a28h
+dd 0ad730af2h
+dd 05c637e89h
+dd 0f1369cdbh
+dd 01135d212h
+dd 0bc61f692h
+dd 0a8d8461eh
+dd 0e2f9d158h
+dd 0894e981fh
+dd 0ae877d3bh
+dd 09fa874edh
+dd 0e314561ch
+dd 010a19814h
+dd 0c3042704h
+dd 030a97b28h
+dd 022512a2fh
+dd 08ad43858h
+dd 0f420b785h
+dd 07ced992ch
+dd 085b83a89h
+dd 060b7d9e1h
+dd 0fc7b090dh
+dd 05a83b1c0h
+dd 051db6525h
+dd 0c0752c8bh
+dd 0ab73b234h
+dd 06bc9774eh
+dd 0f44cd695h
+dd 09d736a46h
+dd 08ef1f232h
+dd 01b6893b9h
+dd 0e3c25922h
+dd 0ad5f3ccdh
+dd 04ba4b793h
+dd 05b34db56h
+dd 0561339cch
+dd 0ce5966a5h
+dd 0d398b29ah
+dd 070c856f7h
+dd 0b1a68a9eh
+dd 0feecf727h
+dd 008cf2eb0h
+dd 0fa6cb03dh
+dd 0465f2262h
+dd 0f4c0bd0ch
+dd 097bc6036h
+dd 087d700b6h
+dd 0eb8b4447h
+dd 0e376ecf2h
+dd 041cc352fh
+dd 070ac07aah
+dd 0b6cfd7c8h
+dd 012df9131h
+dd 0bed65ea3h
+dd 0a050635fh
+dd 0361b2ac9h
+dd 0cd831ee5h
+dd 0fe707fe6h
+dd 044dc302ch
+dd 068ea2027h
+dd 0e3e28989h
+dd 01da6e71eh
+dd 07491e425h
+dd 0e60b3760h
+dd 051f7d94ah
+dd 0559b2698h
+dd 0f57588e3h
+dd 0e5ebdca7h
+dd 0fb1eaf8eh
+dd 0c185a7ach
+dd 0ad8def75h
+dd 0814e4a9ch
+dd 06b4eb105h
+dd 029399794h
+dd 0b5510e8bh
+dd 0fc267dadh
+dd 0a3ac2860h
+dd 048e1ab76h
+dd 08e8cf32ch
+dd 09be56df1h
+dd 073efe9e0h
+dd 0df57a114h
+dd 034f187a4h
+dd 075848090h
+dd 0defdc8c7h
+dd 0a82f7b50h
+dd 08fe35b71h
+dd 0cdcd84e9h
+dd 0d72f6ab8h
+dd 0716d9962h
+dd 0ae9aae41h
+dd 0198532afh
+dd 043bd266eh
+dd 0499125a9h
+dd 056120143h
+dd 0023eb18dh
+dd 05bcc6f66h
+dd 032088575h
+dd 0c367897ah
+dd 0bc243753h
+dd 0dc92d657h
+dd 027fa2b4bh
+dd 045134fa9h
+dd 078f9c7abh
+dd 029062a11h
+dd 01b37a1dch
+dd 09f0db399h
+dd 07d1e1c17h
+dd 028459cbah
+dd 01fb25e71h
+dd 028ad4d82h
+dd 0ecfab077h
+dd 035a0dba8h
+dd 098db2630h
+dd 0d8eb8054h
+dd 037f7dcf6h
+dd 020c7019fh
+dd 0b4795350h
+dd 0568cb6cfh
+dd 0ecd11080h
+dd 0b622a0c0h
+dd 087af9404h
+dd 0bde3a534h
+dd 091db975fh
+dd 0eef8c491h
+dd 0a577c122h
+dd 08cb3b3b3h
+dd 026b0963bh
+dd 0e92ee875h
+dd 01e59256ch
+dd 04782cb79h
+dd 0a3261ab8h
+dd 0922a24e9h
+dd 0f9b52784h
+dd 08f339308h
+dd 0c369680dh
+dd 057cd22ech
+dd 021467d5dh
+dd 07baccd95h
+dd 075d90884h
+dd 04e0cd411h
+dd 0a1e78ff3h
+dd 091bf8d08h
+dd 068a203a6h
+dd 0098a09d9h
+dd 0057168f8h
+dd 0eb119ebah
+dd 07e4e7b19h
+dd 071d60843h
+dd 08393b950h
+dd 0bf079ac2h
+dd 0086807e1h
+dd 0a610d422h
+dd 06c5bdfcfh
+dd 0b2638c79h
+dd 0038292f8h
+dd 008123459h
+dd 06c63a69dh
+dd 074b5a87eh
+dd 066d3569ch
+dd 0635fe89eh
+dd 087179027h
+dd 0b683faf7h
+dd 04831ec11h
+dd 0566a86c5h
+dd 0f8fac91ah
+dd 0cb0d60c8h
+dd 015f8cbb4h
+dd 00ec25365h
+dd 034b28d40h
+dd 0cd2e4530h
+dd 0c33806a5h
+dd 08cdf82ach
+dd 0e60f2ec1h
+dd 089611e28h
+dd 0c09c4d7fh
+dd 09ea7125ch
+dd 0b43fa28dh
+dd 0595e498eh
+dd 07d5052beh
+dd 012565dc7h
+dd 01870a07ch
+dd 0483ce3ffh
+dd 05ac7a9e8h
+dd 029d3a330h
+dd 0ba15da8fh
+dd 0a33ec5d7h
+dd 098d207ddh
+dd 023d78d96h
+dd 03df14a59h
+dd 0a43a5905h
+dd 0678dab2fh
+dd 04e29a43eh
+dd 02cd1c360h
+dd 05b162a1bh
+dd 040d8b5e3h
+dd 0ad78f0e8h
+dd 0f10dcf0bh
+dd 0208ba056h
+dd 0a06a9eb9h
+dd 046a919f1h
+dd 013163b1bh
+dd 0e0ea9106h
+dd 053c7a820h
+dd 03cbd64b8h
+dd 011d1c8eeh
+dd 0cb9c80fch
+dd 048e13052h
+dd 0363f8a96h
+dd 0ee39dbbeh
+dd 0ec8cef96h
+dd 05bd337d1h
+dd 07c6a334bh
+dd 08a00cf8fh
+dd 022a7a465h
+dd 02a918876h
+dd 03105b395h
+dd 05fdfd28bh
+dd 0eb1d1fa2h
+dd 0c388827ch
+dd 0ba48cb11h
+dd 044f40436h
+dd 0f295af56h
+dd 0cf3561e1h
+dd 0e64bb3a7h
+dd 06eb14d10h
+dd 0f9ac94cbh
+dd 020e69b5eh
+dd 0998ddffbh
+dd 0e26da161h
+dd 02b9a73f1h
+dd 0cd6c7e17h
+dd 09330472dh
+dd 08751b8f8h
+dd 0adbdc710h
+dd 05f6444cdh
+dd 01d377a6ah
+dd 03c5260e8h
+dd 09d1131f6h
+dd 0d670a0aah
+dd 037866679h
+dd 0947711e9h
+dd 0d096c442h
+dd 08144299dh
+dd 0bacc40a6h
+dd 0821520c1h
+dd 001a7865dh
+dd 0065a931ch
+dd 0639c7110h
+dd 04f9b8853h
+dd 04764e5f0h
+dd 0838d4ec5h
+dd 0388c9695h
+dd 04c7ae3adh
+dd 01f46d52fh
+dd 00dcce4b2h
+dd 0576c6c31h
+dd 0dad59c37h
+dd 0f01045dbh
+dd 0b6f2715dh
+dd 016647810h
+dd 0dad2ca6fh
+dd 08c90f165h
+dd 0b9d9aa64h
+dd 0c603cc08h
+dd 0f9a0ff57h
+dd 084032db1h
+dd 07ae62be1h
+dd 0851ac93dh
+dd 083a18cd8h
+dd 02c51b3b3h
+dd 0c3710d5bh
+dd 00fed8913h
+dd 03c82b699h
+dd 0d8b663c2h
+dd 0ed186a7eh
+dd 023924cc7h
+dd 01226e903h
+dd 09568b1c3h
+dd 04b3fdaebh
+dd 0519bd776h
+dd 091a7416bh
+dd 087eb38e8h
+dd 0dda30af8h
+dd 09c8fdc49h
+dd 06fc07dadh
+dd 0036e0e0ch
+dd 0b83d539ah
+dd 01e6bd651h
+dd 097c71554h
+dd 07f214596h
+dd 097ddb834h
+dd 04ab600c1h
+dd 029e02d6dh
+dd 0fe897e4fh
+dd 052bd9282h
+dd 0d59a30a4h
+dd 0a451664ah
+dd 0a8ea674eh
+dd 0877fe297h
+dd 0bedb4fd2h
+dd 069c77e36h
+dd 0cfcf0457h
+dd 0088c8ec4h
+dd 0e29ffe56h
+dd 0edf485fbh
+dd 03284c6b0h
+dd 0e7736d22h
+dd 0144ccea1h
+dd 08a180fa5h
+dd 0bf03f033h
+dd 0ea593e27h
+dd 001391aeeh
+dd 076c120cfh
+dd 02e1266efh
+dd 0369e7b19h
+dd 0c56d864dh
+dd 030b5f49ch
+dd 009c36ad5h
+dd 0440f1ff9h
+dd 0e4da4331h
+dd 0c62aba61h
+dd 041323eabh
+dd 02dfe70b0h
+dd 08dd47e8ch
+dd 06b50dd9ch
+dd 076fe52d0h
+dd 0b1871217h
+dd 070bd3fedh
+dd 09437f298h
+dd 063dc81e8h
+dd 0cc5b6d91h
+dd 05a405d5ah
+dd 075ef50f4h
+dd 0e30e9bc9h
+dd 08a0b1ffch
+dd 0d6945ee0h
+dd 04aa50d1fh
+dd 0bc12c4afh
+dd 0f2468583h
+dd 041cd1379h
+dd 092699b02h
+dd 00f4cbc00h
+dd 07f232c87h
+dd 0b31461dah
+dd 067b88ac1h
+dd 0e0fd7c43h
+dd 0cca1ab33h
+dd 02f207df8h
+dd 03c231b57h
+dd 004c9ebd2h
+dd 006a7fc5eh
+dd 0a6aad9a7h
+dd 011ca03dch
+dd 0af005a1bh
+dd 0bd2754f8h
+dd 008e12953h
+dd 08df795aeh
+dd 03c0d8ef3h
+dd 03e6d978fh
+dd 0324f4736h
+dd 072a6968bh
+dd 0bcb15f2fh
+dd 075ee122ch
+dd 0d9658234h
+dd 0b1bacc69h
+dd 0d1312685h
+dd 00180a071h
+dd 03fede3c6h
+dd 04f589afah
+dd 09685e9a3h
+dd 0a60d73d6h
+dd 0af0c3041h
+dd 090d45f7bh
+dd 0378315c9h
+dd 053d72ee0h
+dd 09a5f5b60h
+dd 0fa6c4b68h
+dd 0406818d8h
+dd 0c3e92610h
+dd 0870555d8h
+dd 0dafcd737h
+dd 0ca210014h
+dd 078feef13h
+dd 0ca84316fh
+dd 037baf8a8h
+dd 0295c6af5h
+dd 0a04b2f50h
+dd 0a01b9036h
+dd 038a760dfh
+dd 0f9ccfe6ah
+dd 07d4e6e20h
+dd 075e563e7h
+dd 0e8d23d9eh
+dd 0d93b4c57h
+dd 0d550902bh
+dd 03e83b136h
+dd 02a438a01h
+dd 0cdff44a5h
+dd 07712d194h
+dd 0f4570c35h
+dd 05feee9bdh
+dd 0ee34c6f2h
+dd 0e0336982h
+dd 05add07d8h
+dd 04e6bcee9h
+dd 0d4190438h
+dd 0fa1485c4h
+dd 00b96ec9fh
+dd 0bd532b61h
+dd 08ff6d03bh
+dd 03f57b9a8h
+dd 0a4f11aeeh
+dd 07830a45bh
+dd 0e63344dch
+dd 021029809h
+dd 062b5e284h
+dd 0825c68d0h
+dd 02ae221c8h
+dd 01413592fh
+dd 0f86ccd36h
+dd 0ee84a595h
+dd 00b1cac85h
+dd 0174d1c8eh
+dd 0ff3acdfdh
+dd 0ff4091f5h
+dd 0b2ec0c99h
+dd 0c4b9865ah
+dd 01b96e70bh
+dd 022f00cd1h
+dd 039004edah
+dd 07dac420dh
+dd 0ed68606bh
+dd 08f335b59h
+dd 0d1fb668eh
+dd 00e29765dh
+dd 00dd3b11eh
+dd 05e1d6802h
+dd 0a9485f67h
+dd 0c9fe2036h
+dd 09d12ebcbh
+dd 0907d0d9dh
+dd 0467f6b28h
+dd 0b68460c9h
+dd 09e001d00h
+dd 0043f0d5eh
+dd 0cb75c7fdh
+dd 0aaf6c6fdh
+dd 04d08294fh
+dd 0a7d3fbf8h
+dd 071eb59f8h
+dd 0f07de3a7h
+dd 0ef5ffe9eh
+dd 05416612fh
+dd 0cef56170h
+dd 01457f950h
+dd 0b2c4a9cch
+dd 046282672h
+dd 0bc216c37h
+dd 028d5da4eh
+dd 04511245dh
+dd 01586dcf2h
+dd 086dac99ah
+dd 011325ebch
+dd 08352dfc6h
+dd 0c846138fh
+dd 029904752h
+dd 03bd18fa3h
+dd 07b16817bh
+dd 016ebf2f7h
+dd 05a67e409h
+dd 039abcba4h
+dd 0e812af4ah
+dd 0196c150dh
+dd 08f19eef2h
+dd 0d4617685h
+dd 0fb339fa3h
+dd 07303506fh
+dd 0b6aad3dch
+dd 0fd974d5eh
+dd 01beb8481h
+dd 00e85001eh
+dd 0607e0356h
+dd 039285c1fh
+dd 03f3ddd5fh
+dd 0d52a46f5h
+dd 052d7969eh
+dd 0e49f49e1h
+dd 068185730h
+dd 03df55a89h
+dd 01d417dd3h
+dd 061341a4ah
+dd 0b0f0c495h
+dd 07c88ad5eh
+dd 0ac0338f5h
+dd 070e6caf3h
+dd 0ea51f109h
+dd 03efa2c10h
+dd 03d438457h
+dd 0261858cfh
+dd 0b9fb6c47h
+dd 0b69e48d1h
+dd 07a72f468h
+dd 0a485dcc4h
+dd 02a839490h
+dd 05f72f60fh
+dd 0a0401f7fh
+dd 0d9d971f7h
+dd 020b6c213h
+dd 08e8c4475h
+dd 0c1bfc2feh
+dd 000e407d7h
+dd 0ffb0d5abh
+dd 0ed3c7571h
+dd 0f6fce9d4h
+dd 0d6df4d2ah
+dd 0e8af1927h
+dd 0a6c68deah
+dd 09ca35ef7h
+dd 025079a61h
+dd 0a01011abh
+dd 01e0463bdh
+dd 08bbb39d8h
+dd 0e2fc3b69h
+dd 0f9319098h
+dd 005e121f6h
+dd 008d7cbedh
+dd 08daab40ch
+dd 016efccf1h
+dd 009478906h
+dd 04f3aff0ah
+dd 08122fedeh
+dd 0db4ed62ah
+dd 033979b34h
+dd 0f4b762e0h
+dd 0be62aac8h
+dd 0f184a136h
+dd 05b8d91cbh
+dd 0efa74e84h
+dd 066545878h
+dd 0c29a1380h
+dd 0112b5be4h
+dd 0620a3f97h
+dd 05e25ea5dh
+dd 0c0256991h
+dd 0fa8e57c9h
+dd 007eba73ch
+dd 04b2ec036h
+dd 0a3cacf89h
+dd 0ad071b64h
+dd 07d19e7f9h
+dd 00c75dadbh
+dd 091117f44h
+dd 0397c0f69h
+dd 002a6e9d7h
+dd 09688dd6eh
+dd 0adda032bh
+dd 01e8f28bdh
+dd 07e05707fh
+dd 0737656c8h
+dd 0c0fa74afh
+dd 0ea1ae337h
+dd 054d792d9h
+dd 0221c21e8h
+dd 025d5ae3eh
+dd 0f28efc88h
+dd 02ab0412fh
+dd 07a7fc0f3h
+dd 01dc97737h
+dd 030d23e8ch
+dd 0a44dc682h
+dd 06203ffdeh
+dd 03b506827h
+dd 08ef1bacdh
+dd 0cacc459ah
+dd 0add62fe9h
+dd 0751fa772h
+dd 0666fbdc5h
+dd 09ad5b4beh
+dd 0ab1594e9h
+dd 0c510ddf7h
+dd 06052b10dh
+dd 0719facbbh
+dd 0ba34e4a3h
+dd 027eafd40h
+dd 0408ceb50h
+dd 075f626bah
+dd 0b065e82ch
+dd 066c98e74h
+dd 0fef99064h
+dd 028dadb01h
+dd 039eddfd4h
+dd 0b4b35f64h
+dd 0e09dcbcdh
+dd 0b1fcd7cch
+dd 0acbcdad0h
+dd 0bd0ffd60h
+dd 089928d16h
+dd 039cd0e27h
+dd 0ec48cae1h
+dd 0b6ed42d2h
+dd 0a025ba95h
+dd 0c97def34h
+dd 02406b239h
+dd 01438ab4ah
+dd 00cfafff6h
+dd 09b8cf1e6h
+dd 088ea79c5h
+dd 0ccd3293ch
+dd 0c88d3515h
+dd 09505cae2h
+dd 0595f7a06h
+dd 0bc44ac98h
+dd 0dfcf2ef9h
+dd 047288f2ah
+dd 0278309c7h
+dd 08dc570f7h
+dd 064712465h
+dd 05bf75623h
+dd 06ce38ee3h
+dd 0bd57bc19h
+dd 0f82c43d1h
+dd 09a3d344ch
+dd 0b0940280h
+dd 0f66d9041h
+dd 0c3b51f21h
+dd 0ca72d313h
+dd 08ccb4986h
+dd 08c90a654h
+dd 03918b212h
+dd 09da48d18h
+dd 00b0226f0h
+dd 0f339ca9dh
+dd 07fad851bh
+dd 09f846fe1h
+dd 0146d4dc7h
+dd 02eb74215h
+dd 04f1ae2e2h
+dd 06412c013h
+dd 08579f51ah
+dd 0669fd615h
+dd 0505b47f0h
+dd 050b21d79h
+dd 065cdc416h
+dd 02e17a36ah
+dd 031776250h
+dd 039f150c0h
+dd 05f139086h
+dd 0f5532d6bh
+dd 082c5a8beh
+dd 0c35d0e77h
+dd 06fe3f1c6h
+dd 03d5b2b53h
+dd 04637515fh
+dd 0d74aa816h
+dd 01592421dh
+dd 05f90b084h
+dd 01b7ea498h
+dd 00576b4c8h
+dd 06bc57ff6h
+dd 096562e86h
+dd 0c7b6ebeah
+dd 080ddd42ch
+dd 0d045237ah
+dd 0312af089h
+dd 0fa6b7d75h
+dd 0d72b53e1h
+dd 0e2a9ae0eh
+dd 0a0de004ah
+dd 0434e4154h
+dd 0b723b7f1h
+dd 0bb89b584h
+dd 0cf23b817h
+dd 030845e88h
+dd 0b3be58c6h
+dd 037da5172h
+dd 0940c6c9ch
+dd 0de7f23d6h
+dd 054c22675h
+dd 0409cbe7ah
+dd 039aa15c8h
+dd 0f859235ch
+dd 08ab8ccd2h
+dd 093352cd7h
+dd 0f5c7bab5h
+dd 080590d50h
+dd 0d6e5d163h
+dd 04bfdf243h
+dd 08ba5e7d4h
+dd 0c0832c68h
+dd 0da472637h
+dd 0b5447889h
+dd 06737f4c8h
+dd 0d95bc952h
+dd 0e1d134b1h
+dd 040f3dcf4h
+dd 01fa91804h
+dd 09834f5d5h
+dd 03baa6089h
+dd 09d959e55h
+dd 0345046c9h
+dd 0387cf892h
+dd 059ad0b03h
+dd 0f3655a53h
+dd 0e5f8772ah
+dd 03ebba3dfh
+dd 07b0efb1ch
+dd 0853e5c74h
+dd 07f10db4ah
+dd 0e643ade0h
+dd 010712d2dh
+dd 081422f1dh
+dd 08304ba2eh
+dd 0e31c74f1h
+dd 0d7332c87h
+dd 0d93930f4h
+dd 0774a97feh
+dd 0de65db5bh
+dd 0cf81aea9h
+dd 01df350d9h
+dd 01dba9d4fh
+dd 0693ac286h
+dd 011f11c09h
+dd 051a758e6h
+dd 07612a984h
+dd 052d595cdh
+dd 041cae628h
+dd 05550f249h
+dd 050b3d463h
+dd 0b44ecd5bh
+dd 01f0130cah
+dd 0843ec580h
+dd 03647bd09h
+dd 0c715abbah
+dd 0915c0a24h
+dd 0a4098dc7h
+dd 0e79956e6h
+dd 02a863fa5h
+dd 0769dab4dh
+dd 0c39f9afah
+dd 0353e6059h
+dd 0ca17c72ah
+dd 0d504b646h
+dd 087733f6ch
+dd 0976d038bh
+dd 0e856e6f2h
+dd 0faf93431h
+dd 066c8e407h
+dd 06b4cfe5fh
+dd 0d4f7660bh
+dd 0aec60ef7h
+dd 0654fa370h
+dd 06499895bh
+dd 0c8756dfah
+dd 02b340112h
+dd 09e07976ah
+dd 0b2175e26h
+dd 0505ac668h
+dd 035ec89ffh
+dd 0fe00d41dh
+dd 0d3632444h
+dd 0c75b2528h
+dd 045c0590bh
+dd 09c408431h
+dd 0939a1422h
+dd 031e7c446h
+dd 0dd55f079h
+dd 07e3af637h
+dd 02f6b757eh
+dd 0e0655921h
+dd 00e83d650h
+dd 02267d7ech
+dd 04064cf7ch
+dd 06a06357fh
+dd 03db2e56ah
+dd 07bd9b3f1h
+dd 0f4b80fc1h
+dd 080a1c81dh
+dd 050de0f56h
+dd 0d5b209c3h
+dd 0a345f067h
+dd 0825b9b1ch
+dd 04ed0585ah
+dd 0e6cb0516h
+dd 0e7469db3h
+dd 01c7773fch
+dd 04ead7cb2h
+dd 03c101eb1h
+dd 0c732f8fch
+dd 037f745a4h
+dd 026417063h
+dd 070df2b54h
+dd 09649134ah
+dd 08ab4bbdfh
+dd 08a0c6bd4h
+dd 0f0048565h
+dd 0cf733affh
+dd 04676a3d6h
+dd 02dd86bc7h
+dd 08b0e597fh
+dd 0dc8e1645h
+dd 01e0f98bch
+dd 025bd4cb7h
+dd 0fd1cd58eh
+dd 05065e842h
+dd 0ca3d8d09h
+dd 0fc67c6a1h
+dd 0fef21c4ah
+dd 0c604ac6dh
+dd 01a31060ch
+dd 06beec556h
+dd 037ef2faeh
+dd 034ed7730h
+dd 0583c2bedh
+dd 0bd964770h
+dd 0d79d4b8dh
+dd 04137e958h
+dd 0f64f953dh
+dd 0b71425ddh
+dd 074d9d64bh
+dd 0c5f1e0d6h
+dd 05fa238cdh
+dd 0455731a5h
+dd 0f2052598h
+dd 07187c716h
+dd 042f43bf0h
+dd 09ec43384h
+dd 0a7132b82h
+dd 087a2525eh
+dd 0c47c833eh
+dd 0006324f5h
+dd 02a5c2362h
+dd 07f918642h
+dd 0914b6992h
+dd 08b4249c1h
+dd 05072e4ceh
+dd 049ca7310h
+dd 0e026feadh
+dd 0bfb1b739h
+dd 064b28009h
+dd 0790f0e46h
+dd 021c247b7h
+dd 0130e28d2h
+dd 07faeba6eh
+dd 0e14f5ebfh
+dd 0ae063ad8h
+dd 046716015h
+dd 0e5ae809fh
+dd 0a11e3d9dh
+dd 07359c73ah
+dd 02454e1bch
+dd 028adafd3h
+dd 05903b060h
+dd 0a2f6b115h
+dd 081fc0d86h
+dd 0d8ce3a3ah
+dd 0f40ce617h
+dd 00be18d62h
+dd 018cf2662h
+dd 04bc9aa94h
+dd 0239ee804h
+dd 09eaf47d6h
+dd 0a0c1fa34h
+dd 0587a1082h
+dd 08960f05fh
+dd 0389a89edh
+dd 027c75fa9h
+dd 0e1f0d5feh
+dd 0fbb66dfeh
+dd 0dac05c49h
+dd 0659c6da3h
+dd 0d386e39ah
+dd 0a6911709h
+dd 0dd1996cah
+dd 01b68b1d1h
+dd 09dde3e28h
+dd 059426854h
+dd 003b40adch
+dd 023d8f2abh
+dd 0075470f2h
+dd 064728548h
+dd 06d66495ah
+dd 0ccc4738dh
+dd 03bc2d6c6h
+dd 0c12f4b92h
+dd 00edbe8bdh
+dd 0a502e36bh
+dd 0ee8cd313h
+dd 05b5a9cabh
+dd 01d153f6eh
+dd 0c7ba8ec6h
+dd 0094cb3cah
+dd 040530bddh
+dd 0209b59d7h
+dd 0fde5055ch
+dd 0bd5e9758h
+dd 009983b25h
+dd 065400490h
+dd 09a0b4aa3h
+dd 031fa987bh
+dd 0cad000bah
+dd 017faa6bdh
+dd 0b17e9397h
+dd 0a004ab43h
+dd 0a31f5ea8h
+dd 020c732e7h
+dd 059361143h
+dd 08c1ce280h
+dd 08c3d59c1h
+dd 0b0db0453h
+dd 00775b3cdh
+dd 0485f8999h
+dd 0478001c1h
+dd 0ed54abeah
+dd 0766d32d5h
+dd 09c1a37c1h
+dd 0bb63d2cfh
+dd 0c0ddecf9h
+dd 027b48123h
+dd 097b878ach
+dd 0c41bbd46h
+dd 0fa5d7f0bh
+dd 054c35ae5h
+dd 0e1298bd9h
+dd 02532b57fh
+dd 01dfdf7adh
+dd 06c2ff4e7h
+dd 0fa582be4h
+dd 0858fba31h
+dd 09e043deah
+dd 02bc5faach
+dd 0c18101a5h
+dd 0e60d6aaeh
+dd 02211cf16h
+dd 09ff9afa5h
+dd 0c102119dh
+dd 0a31cf110h
+dd 00580fbabh
+dd 03f351199h
+dd 0610243bbh
+dd 00d40c181h
+dd 043031ce0h
+dd 0462e8b03h
+dd 09d9f913fh
+dd 084c8e1c0h
+dd 0fa7262deh
+dd 0a26e5dc2h
+dd 0b78fe172h
+dd 050b1b888h
+dd 062cd858eh
+dd 07ad3e1f0h
+dd 0e21cef96h
+dd 093812ce3h
+dd 02dff0110h
+dd 056ec6499h
+dd 070af8abeh
+dd 0ea6f411ah
+dd 02a2bb91eh
+dd 0128757a3h
+dd 0b3ca0495h
+dd 0ba75e977h
+dd 08c7491c4h
+dd 066c48030h
+dd 0028a41c8h
+dd 098794df4h
+dd 0cc1b0577h
+dd 0826664ffh
+dd 07feb8260h
+dd 0f3a88628h
+dd 009523188h
+dd 0b0fab9a7h
+dd 0632b6c6fh
+dd 03446eb2ah
+dd 0a2119080h
+dd 02984f42dh
+dd 0a6f839cbh
+dd 0b19c876bh
+dd 01876b4a7h
+dd 06d66b809h
+dd 010b26a70h
+dd 09c686408h
+dd 0d03fcad1h
+dd 084e5c169h
+dd 06e521252h
+dd 0efc5a9e1h
+dd 08bd88556h
+dd 0bcbd8253h
+dd 05bbcd5f8h
+dd 09ded8d8eh
+dd 0c593ccc8h
+dd 0f026e2e1h
+dd 0a97dc1d2h
+dd 04c10cd23h
+dd 02eff6243h
+dd 0c5a9a788h
+dd 073882e8ah
+dd 0741d58d0h
+dd 084801dfah
+dd 0959382a9h
+dd 0e882a331h
+dd 0baac23f4h
+dd 03e6f43bdh
+dd 01495ed00h
+dd 0a86e4d96h
+dd 0cd30e545h
+dd 02d7f067bh
+dd 063fa58e7h
+dd 0737a7682h
+dd 059d9e5a5h
+dd 038daad83h
+dd 0705b81cah
+dd 090b42ecah
+dd 059a79d87h
+dd 01663f33ah
+dd 0438e391ch
+dd 0033303b7h
+dd 00dc677deh
+dd 06830e8a0h
+dd 077c072a0h
+dd 0ccad38d0h
+dd 0f3a69a97h
+dd 00839f54fh
+dd 043b0cd1fh
+dd 013c7cc83h
+dd 0838abb38h
+dd 0beb85c18h
+dd 0a14d5932h
+dd 0731677b5h
+dd 09b1c379bh
+dd 00c4d5571h
+dd 0e0523435h
+dd 02f9217ebh
+dd 0e510f686h
+dd 0c5069721h
+dd 0796c51c2h
+dd 0a5e5f1d9h
+dd 096dd714eh
+dd 081d0ac19h
+dd 0b78f9ecch
+dd 02da5dc3ch
+dd 0b7f0eaa8h
+dd 083887a67h
+dd 0ebcfaf29h
+dd 018bf65beh
+dd 00e908d57h
+dd 0b0201fceh
+dd 0954b46c0h
+dd 065b3a7d8h
+dd 0f8a53c15h
+dd 040448f33h
+dd 023b15f72h
+dd 031fe6602h
+dd 081b6af20h
+dd 09ae7d36ah
+dd 05ade0f4bh
+dd 0efce82d4h
+dd 00db2ebfbh
+dd 05fe2a09bh
+dd 025025eadh
+dd 0c35aa5b8h
+dd 0933682a1h
+dd 0625ec01eh
+dd 07fc10b5fh
+dd 0c11553d4h
+dd 07c4f1d58h
+dd 02efcd071h
+dd 03682b27ah
+dd 03c475820h
+dd 0ad8c7759h
+dd 0c45012a3h
+dd 0704beef5h
+dd 05ef28201h
+dd 04c223d09h
+dd 024a6e2c0h
+dd 081a6f1deh
+dd 07724acc3h
+dd 0dc854468h
+dd 033678b24h
+dd 0d0c45421h
+dd 045541248h
+dd 0536dccdfh
+dd 0668e6498h
+dd 070ff47adh
+dd 0a00ede98h
+dd 063665b70h
+dd 0f5825c58h
+dd 05077fc41h
+dd 0ac02930fh
+dd 057b14dd8h
+dd 0afb37354h
+dd 0e175fc47h
+dd 09fad70fdh
+dd 0d31aacf8h
+dd 072d4442dh
+dd 0acebefd2h
+dd 08cbb12c0h
+dd 09520a6ach
+dd 0b69d90b2h
+dd 019cdf071h
+dd 00826f210h
+dd 053c52b7dh
+dd 0a42c426ah
+dd 05ea08c5dh
+dd 047242cbeh
+dd 0bfe0c7c6h
+dd 084d997a4h
+dd 01ad847c6h
+dd 03deeedcbh
+dd 02cfe2ff3h
+dd 040e66261h
+dd 00096f641h
+dd 038432491h
+dd 097996095h
+dd 09683238dh
+dd 084a8e766h
+dd 0c7db2cb1h
+dd 075161647h
+dd 057f7ec51h
+dd 08d03823ch
+dd 0db211403h
+dd 0ea93efe2h
+dd 0df7388a6h
+dd 0250c9e03h
+dd 01c327255h
+dd 08d72f19dh
+dd 0c057ede6h
+dd 0f239a057h
+dd 0e23b1be3h
+dd 0d25e7155h
+dd 0a500d659h
+dd 034f7a73bh
+dd 0daf729a4h
+dd 0d3da7dffh
+dd 0d987e21ch
+dd 0418530bdh
+dd 02403b2a6h
+dd 041c7d41fh
+dd 03b414492h
+dd 05e3214d9h
+dd 0c3106a48h
+dd 0f091a1abh
+dd 07925cd09h
+dd 0d386bd6fh
+dd 0eaabeaf9h
+dd 01fa1c6cbh
+dd 02eff7ec9h
+dd 0d5494960h
+dd 0008a2073h
+dd 0640d64c5h
+dd 03018fd75h
+dd 0b24128eah
+dd 07dacfc3eh
+dd 087e62b3fh
+dd 0a5b53797h
+dd 023b74678h
+dd 00fd9b5feh
+dd 07e349bbfh
+dd 0889b6294h
+dd 093d90b0eh
+dd 0e6a0a3eah
+dd 02f8d7592h
+dd 02ca9b406h
+dd 091d231eeh
+dd 09e6991cfh
+dd 032a7b539h
+dd 00a663bb6h
+dd 0a1eaffc5h
+dd 068368390h
+dd 07a5d99d1h
+dd 0260c0384h
+dd 049cab162h
+dd 04451fa7eh
+dd 0778b28e7h
+dd 076a73062h
+dd 0dba7e61bh
+dd 00ebca0d2h
+dd 045d836fbh
+dd 0ebb41f26h
+dd 034c48f8fh
+dd 0b43f83fbh
+dd 0434547c7h
+dd 0886a6cdah
+dd 04cbb5916h
+dd 01da19491h
+dd 0f5541107h
+dd 0581fd582h
+dd 051f7a263h
+dd 023a8f746h
+dd 044449704h
+dd 0dcdc0c36h
+dd 032e15274h
+dd 04384a9c9h
+dd 0abd33ad0h
+dd 0845cdc30h
+dd 0738192d3h
+dd 0e1e6b638h
+dd 01e2cda0ch
+dd 0bdd2d94ch
+dd 0b4adcf59h
+dd 05ef373bfh
+dd 0e3a2d1feh
+dd 0bd7f7f7ch
+dd 0a329519bh
+dd 07b870f78h
+dd 056f00421h
+dd 0a4c3bd90h
+dd 0f41be79eh
+dd 005338dd2h
+dd 0e20e55adh
+dd 067408f3ch
+dd 0e5d70dfah
+dd 045f125d6h
+dd 09ed65c3bh
+dd 068b55d64h
+dd 083c6565eh
+dd 0241f1ffbh
+dd 0c372fe2bh
+dd 00928db0ch
+dd 05b910494h
+dd 024660d12h
+dd 00953e5cfh
+dd 06583970bh
+dd 04654a2b4h
+dd 067876eb2h
+dd 0a8e6c683h
+dd 046cbbaaeh
+dd 05fd09ed7h
+dd 06872d0d4h
+dd 0f1fab31bh
+dd 00fbf8ddeh
+dd 052a17b2eh
+dd 005ffc0abh
+dd 0c84fa56ch
+dd 0dcd5ac51h
+dd 07186a165h
+dd 03af919a6h
+dd 0c13545a8h
+dd 09be5eda0h
+dd 04e5ad56bh
+dd 0b88fba5ah
+dd 0e790cc01h
+dd 0cda3eec3h
+dd 09b3e500fh
+dd 05d7d69adh
+dd 0cfca2160h
+dd 0ec0ddd70h
+dd 07f61d711h
+dd 04a86e619h
+dd 0b42a256bh
+dd 0a3db2068h
+dd 0553db59dh
+dd 0b2f40811h
+dd 07eaeae71h
+dd 0faa4f9dfh
+dd 0b9e024a7h
+dd 03208e5efh
+dd 0284dea91h
+dd 039d3024fh
+dd 02b21e015h
+dd 00755722ch
+dd 0ac17e83dh
+dd 036d8cb4fh
+dd 0904b48f9h
+dd 031bf9eebh
+dd 04d0ed9cfh
+dd 071a0d6d3h
+dd 0c327ff3dh
+dd 08e8591b8h
+dd 0ebaeda99h
+dd 08e52c53dh
+dd 096a1feb2h
+dd 008ae2427h
+dd 0a745586ch
+dd 0fcaa4f18h
+dd 0106f4444h
+dd 07d53d1e9h
+dd 0013193b0h
+dd 052e32992h
+dd 0826c424fh
+dd 050781498h
+dd 0fbc022cah
+dd 09040414dh
+dd 0f9c81a98h
+dd 0af34d0b8h
+dd 078a28a6bh
+dd 0b7c70865h
+dd 073fe9362h
+dd 01756f166h
+dd 083cf7906h
+dd 07d25586ah
+dd 051e2ea4dh
+dd 06edc196eh
+dd 047b99d89h
+dd 0ce1c26cbh
+dd 029398d9ch
+dd 0e497a064h
+dd 0abf6ac38h
+dd 0b0eebe07h
+dd 0047fa19bh
+dd 021fa9768h
+dd 04dcb4514h
+dd 01af5796dh
+dd 014126683h
+dd 0b48c2f81h
+dd 0755aa173h
+dd 024df9e5dh
+dd 0b2660b49h
+dd 082c303f5h
+dd 0bc927b9ah
+dd 0d9b46783h
+dd 0a52ef48dh
+dd 012c80d79h
+dd 09711a5e8h
+dd 0e8c39e1fh
+dd 051d5e90fh
+dd 0ebcbfa29h
+dd 0a731a1aah
+dd 08497cec0h
+dd 012240b3fh
+dd 0186dd563h
+dd 0ef7acae2h
+dd 05065f635h
+dd 0c19590e4h
+dd 0f131858dh
+dd 096a65c81h
+dd 0281bf318h
+dd 0bf02a139h
+dd 04132bd96h
+dd 05ff6791bh
+dd 0c00f75b5h
+dd 0aab1417eh
+dd 0f6e0c7e7h
+dd 08b844a29h
+dd 07b87900dh
+dd 01529c487h
+dd 06e9e83d5h
+dd 0d95e6300h
+dd 0918d1bc5h
+dd 02608e634h
+dd 036250808h
+dd 0d6ee5035h
+dd 07e128bc7h
+dd 0c38e422fh
+dd 00e8395afh
+dd 06cfbc8b0h
+dd 089e9b5c0h
+dd 020005db4h
+dd 0e06664ceh
+dd 0a24b248eh
+dd 06345ef17h
+dd 037b0742ch
+dd 09e44158dh
+dd 09dd86aa9h
+dd 0bceb7206h
+dd 0f437a0f5h
+dd 0d22c3b63h
+dd 06acbd182h
+dd 021abe7eah
+dd 0946315feh
+dd 06d3223b2h
+dd 09271f36bh
+dd 0ac349934h
+dd 095497e74h
+dd 092f9f3ffh
+dd 099d516e9h
+dd 0727b9195h
+dd 0ad10e8d3h
+dd 0a5314270h
+dd 0f0d21e04h
+dd 05fa8cc32h
+dd 06316eb2ch
+dd 0c7e7d380h
+dd 0a6331d90h
+dd 0159ba918h
+dd 0440cb521h
+dd 0165a5e29h
+dd 04751abceh
+dd 0346e3b50h
+dd 0df4f2a73h
+dd 08486b3b6h
+dd 0ff7f31a1h
+dd 0ef9264b7h
+dd 0a4ede788h
+dd 05de5cd5ch
+dd 040f24874h
+dd 06b43d312h
+dd 07723156ah
+dd 048040bffh
+dd 0954b128bh
+dd 0931a3255h
+dd 0ef2942edh
+dd 0465aa07eh
+dd 053b52e99h
+dd 078722d5fh
+dd 08f25dd90h
+dd 04619cd6eh
+dd 0701c97abh
+dd 0af1f343dh
+dd 065548549h
+dd 0cfc87319h
+dd 0886097b5h
+dd 00ee04066h
+dd 0f3d95d15h
+dd 0a8854267h
+dd 0e1150572h
+dd 094fcdf5fh
+dd 047333a0dh
+dd 0ffe5bf1dh
+dd 07ef37970h
+dd 05206478ch
+dd 0e3c1d646h
+dd 0b4e10214h
+dd 095762105h
+dd 03950e467h
+dd 060a93b68h
+dd 04eddca97h
+dd 001456659h
+dd 0a6c22647h
+dd 08b350176h
+dd 0b9b477ech
+dd 0a012a966h
+dd 0867d158fh
+dd 0ba21e2a0h
+dd 023bda43ah
+dd 023937e54h
+dd 02a7794aah
+dd 00caca61bh
+dd 06faad2beh
+dd 0945e948ah
+dd 075c7a5eeh
+dd 0896ac6f2h
+dd 02fdeeb89h
+dd 01ce7b4d7h
+dd 0b38b1c6ah
+dd 0012239b9h
+dd 01f19a2c7h
+dd 09ac180f1h
+dd 0786d44c3h
+dd 0c8615f7fh
+dd 0da51a2c6h
+dd 07f507ca2h
+dd 0a1339132h
+dd 09315950ch
+dd 06aa54c34h
+dd 098ea9d32h
+dd 097291173h
+dd 0a447bc32h
+dd 02782b1beh
+dd 0af7a34d3h
+dd 0b41a481ch
+dd 0696e6062h
+dd 06ba28de1h
+dd 025c04382h
+dd 066b005feh
+dd 090c5b0c1h
+dd 0ba07c1d8h
+dd 06a8c5b23h
+dd 094e84fach
+dd 00b8112a0h
+dd 0dee67054h
+dd 0ae17126fh
+dd 0d19a09cbh
+dd 05e65032bh
+dd 017b4f091h
+dd 0f41a1ac2h
+dd 00ec5a8b4h
+dd 0d28e98a5h
+dd 01efa037fh
+dd 0658a65a0h
+dd 0b3c43255h
+dd 0ecfcdc1fh
+dd 0261cf417h
+dd 0fb9eb2d6h
+dd 031f31134h
+dd 02940771bh
+dd 094d0e22eh
+dd 0abda5e9fh
+dd 0f3a944c6h
+dd 0b1f74cdch
+dd 0484730b6h
+dd 0cacf64b0h
+dd 0eedbe489h
+dd 05e3a56b1h
+dd 0a8bc70d3h
+dd 0d817cbe6h
+dd 087cccabfh
+dd 050029476h
+dd 0186a45f2h
+dd 0e473183ch
+dd 00e7d3d0ah
+dd 0b95e14ebh
+dd 0fb488ae8h
+dd 090f21394h
+dd 0004e6e62h
+dd 03ba134b2h
+dd 07993f4cbh
+dd 0ee0c60cfh
+dd 0b89188c7h
+dd 0808e9f79h
+dd 004e6f4dbh
+dd 062088689h
+dd 0db77fb04h
+dd 013bfb10fh
+dd 006a91a3bh
+dd 0459aafadh
+dd 0f76b5248h
+dd 0b3ffd809h
+dd 0811575ceh
+dd 08d5be300h
+dd 029e64905h
+dd 016c33c6dh
+dd 00a308f3dh
+dd 0b590d7dch
+dd 016a31cdeh
+dd 0315f7d73h
+dd 046261b17h
+dd 05da89847h
+dd 050f636eah
+dd 0989088cfh
+dd 0b865ece4h
+dd 0d3374694h
+dd 003819c01h
+dd 01cc2bd5fh
+dd 077be1ea6h
+dd 0a595ea74h
+dd 0d1b88e25h
+dd 0d6c4c8f8h
+dd 066dc1e9ah
+dd 009b31891h
+dd 0b5e99a63h
+dd 03507c4d0h
+dd 032ecddc6h
+dd 0756ad236h
+dd 0998c0186h
+dd 0df66bfe8h
+dd 0a0db45f3h
+dd 0a3700678h
+dd 0fd604ee3h
+dd 0bad43a73h
+dd 0544df02eh
+dd 01fc4b9b1h
+dd 0c2a1cc84h
+dd 09b2709aah
+dd 0417d7934h
+dd 0704c3db9h
+dd 070e99c91h
+dd 05eecd6d0h
+dd 095cc70dch
+dd 080469fd8h
+dd 033fd8c45h
+dd 04b7857c2h
+dd 06493ec29h
+dd 01774718eh
+dd 0df32976dh
+dd 0408465a3h
+dd 0c6b57485h
+dd 08cbb8ea5h
+dd 0ea4dbc81h
+dd 06366391fh
+dd 098fd1d36h
+dd 0465ab320h
+dd 04c7e6a88h
+dd 0c5a1f069h
+dd 05fdeb7d0h
+dd 06187c0bbh
+dd 091f9cea1h
+dd 0a28e4a08h
+dd 05b8cf64dh
+dd 02e4b4bb8h
+dd 07017bfd4h
+dd 0c7f7b494h
+dd 052a70699h
+dd 01f7f8c87h
+dd 05e5a5b38h
+dd 0877c1499h
+dd 0354ac597h
+dd 0d457cbbah
+dd 033975ff8h
+dd 03fc8d2b5h
+dd 0f5f90544h
+dd 0b5600202h
+dd 056850a5ch
+dd 079ad23b6h
+dd 0a3a6428dh
+dd 00658ae35h
+dd 00da6282ch
+dd 0e80e20a0h
+dd 0ce0e9eedh
+dd 02a44e0b7h
+dd 02b0edf1dh
+dd 05decce26h
+dd 02c7b39dah
+dd 0a2d973b0h
+dd 0bd6b859dh
+dd 0a85ce306h
+dd 03e199662h
+dd 018ee2d29h
+dd 07abda9f5h
+dd 03fe72fb6h
+dd 05f77a895h
+dd 0d00ffc1eh
+dd 0f48a33f3h
+dd 078becc06h
+dd 069f6b3afh
+dd 016fef7d9h
+dd 063edbe09h
+dd 03ebbf0a2h
+dd 02fc5f502h
+dd 050e6ae24h
+dd 09b0315f7h
+dd 0896d563fh
+dd 09b4275d5h
+dd 07d20409dh
+dd 0e97d9ca8h
+dd 0f05751deh
+dd 0ae2590d7h
+dd 0b6c45942h
+dd 01762e861h
+dd 073322e6dh
+dd 09dc9b557h
+dd 002db8ea1h
+dd 0be14f3f5h
+dd 05fbf58fah
+dd 0bb951e58h
+dd 0037c9604h
+dd 003d98791h
+dd 0c34bf3dah
+dd 0f0498ea1h
+dd 0633997b7h
+dd 07f968429h
+dd 04ff93273h
+dd 0b5a8e557h
+dd 0f8a6e0e6h
+dd 09fc308bch
+dd 0d83ae7c9h
+dd 0d813a10eh
+dd 006dbcfa9h
+dd 0bbeba1fdh
+dd 0f9e9301ah
+dd 09a02a969h
+dd 02033b444h
+dd 0932d1804h
+dd 072092200h
+dd 0c584f9a7h
+dd 08aaeeeb4h
+dd 017857111h
+dd 04008e706h
+dd 0e51f09b3h
+dd 01acb9c09h
+dd 08cf83dach
+dd 0a30cbda8h
+dd 0c0bb02a2h
+dd 0f19c9719h
+dd 085c35686h
+dd 07bbf9a13h
+dd 0a48e29aeh
+dd 0ae8194abh
+dd 0382c8ee0h
+dd 0ab7d9627h
+dd 04c050811h
+dd 0c5d3a01bh
+dd 023b90f8ah
+dd 082f6549ch
+dd 0463a365fh
+dd 0344b56ech
+dd 018c9538dh
+dd 04296f347h
+dd 04387d63fh
+dd 0cc167f19h
+dd 01cd1032bh
+dd 0534d57cch
+dd 0a31a2d8bh
+dd 0b0c503d4h
+dd 0a6d321ceh
+dd 0be8ac857h
+dd 02bb1d656h
+dd 0c89a4f20h
+dd 038c344fdh
+dd 0e67d4118h
+dd 0bff08255h
+dd 04fd0a97eh
+dd 05de6de7bh
+dd 0b5f5e39fh
+dd 082dd4ea1h
+dd 0baf60183h
+dd 07a73bc24h
+dd 0a8716e5ch
+dd 0c27f0ddbh
+dd 0996e3b24h
+dd 013f14139h
+dd 07436aacah
+dd 086b6251bh
+dd 0339a21fbh
+dd 05727121bh
+dd 023822927h
+dd 0adb8cb44h
+dd 0f96e4eedh
+dd 02d8c33aeh
+dd 0ee31d2a8h
+dd 0f3d8c29bh
+dd 0274dcdceh
+dd 00899bae8h
+dd 04463109ah
+dd 04771f2bdh
+dd 00970540ch
+dd 03368b146h
+dd 090069bd8h
+dd 0402f744bh
+dd 0d54c3d73h
+dd 0776fbb1ah
+dd 0df403f80h
+dd 0bb09d9f8h
+dd 021a9a68fh
+dd 031659608h
+dd 0743109dfh
+dd 0c892eec7h
+dd 02d617242h
+dd 042829f14h
+dd 0c37ec0f8h
+dd 081972599h
+dd 0c0f9f38bh
+dd 079b6d609h
+dd 08f96a119h
+dd 07e195b73h
+dd 03f918ca9h
+dd 0568a203eh
+dd 00bb4b259h
+dd 0ed12d20eh
+dd 02ad092fch
+dd 041b4b1e9h
+dd 03cfc2914h
+dd 08cb36f8ah
+dd 03ed73562h
+dd 0a8acf582h
+dd 00a49bb9eh
+dd 005ed8f71h
+dd 0dc5c35eeh
+dd 08ebc4bf3h
+dd 0ac74decfh
+dd 0707a265ch
+dd 07f6cb630h
+dd 08157659ah
+dd 06842351dh
+dd 001bfded0h
+dd 048897971h
+dd 007b74245h
+dd 0cf2ec066h
+dd 0113e7649h
+dd 00b172fa0h
+dd 0e90ef3bch
+dd 0ecbf9bbah
+dd 0185d916dh
+dd 04f48ddcah
+dd 010bdad8eh
+dd 018384691h
+dd 04fd3ade8h
+dd 0300c6255h
+dd 0a57fd414h
+dd 05fa2c263h
+dd 0f4f21372h
+dd 016a5966dh
+dd 0d14e0ff1h
+dd 0acae2598h
+dd 08a9bcae9h
+dd 0aae2b04bh
+dd 051887f95h
+dd 029de411ah
+dd 06c9e03a0h
+dd 09333c63eh
+dd 08aacb666h
+dd 083d99229h
+dd 0a4ca732dh
+dd 0c206aeb0h
+dd 0158900a4h
+dd 00d05a72bh
+dd 0e6019e6dh
+dd 06f318f90h
+dd 0bbda173fh
+dd 0e3b0868ch
+dd 0f8ebfc89h
+dd 00743dabah
+dd 06f9f6e0fh
+dd 09269f307h
+dd 00e52821ah
+dd 0a9118f72h
+dd 0b7a98a41h
+dd 0d7517fc5h
+dd 0d01cfacfh
+dd 002d9f6f9h
+dd 09a3222dfh
+dd 09382c44ah
+dd 0236e3237h
+dd 087c139bbh
+dd 0fe6d08c9h
+dd 0f8e44713h
+dd 0cb8ee87ah
+dd 07fa080c2h
+dd 00a6b0a7fh
+dd 07df3cf57h
+dd 09d62fd2dh
+dd 04d448a5ah
+dd 0fbca4b93h
+dd 03a6a3b59h
+dd 0cac1629ch
+dd 0dcb2cd0eh
+dd 082fdc2b4h
+dd 0abc0192ch
+dd 079f0ac26h
+dd 04110aa71h
+dd 09525eb8ah
+dd 004f790edh
+dd 0c5f5687dh
+dd 0d5294462h
+dd 047d1d0efh
+dd 0792f68c8h
+dd 0c09c7efeh
+dd 070c9e6aeh
+dd 01e23e933h
+dd 04ddf2047h
+dd 028643f6ah
+dd 06f673b46h
+dd 0e60e9671h
+dd 074d984c6h
+dd 0d2a6019fh
+dd 0c7be8c72h
+dd 015d7202eh
+dd 0114a2a17h
+dd 01ead5341h
+dd 0536ef3b1h
+dd 018f877c2h
+dd 0396dac94h
+dd 0d8912f50h
+dd 0eeb12830h
+dd 047033948h
+dd 0afb5a845h
+dd 05f09b82ch
+dd 04abe3c06h
+dd 03b3ba507h
+dd 0808cd0cfh
+dd 003986781h
+dd 06a72a49fh
+dd 0c8f482a6h
+dd 0bfe8904dh
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M023067221D.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M023067221D.inc
new file mode 100644
index 0000000..39c2a8c
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M023067221D.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 00000021dh ; Patch ID
+dd 008122013h ; DATE
+dd 000030672h ; CPUID
+dd 0a565e78ch ; Checksum
+dd 000000001h ; Loader Version
+dd 000000002h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 00000021dh
+dd 000000000h
+dd 000000000h
+dd 020130812h
+dd 000003211h
+dd 000000001h
+dd 000030672h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0bdaff5c7h
+dd 0e2bd1407h
+dd 0dc3c2e66h
+dd 04e975879h
+dd 0fb634d15h
+dd 0116a8ea1h
+dd 0567041f1h
+dd 0aad1635fh
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 07c23609bh
+dd 0c2d1f56dh
+dd 007ed1e5fh
+dd 0e5620415h
+dd 049291b5bh
+dd 0875ba2e1h
+dd 06fd07e10h
+dd 0f1e105d1h
+dd 015fa6c9ch
+dd 0ae3ccf71h
+dd 09e522f4ch
+dd 015856a66h
+dd 0dd7b1791h
+dd 0c60ee349h
+dd 0f6da5718h
+dd 0771fc66fh
+dd 02d372229h
+dd 0a43962d8h
+dd 08fef5172h
+dd 02e485032h
+dd 0146f65cah
+dd 0af2ce569h
+dd 00f866e68h
+dd 03bc3baa6h
+dd 03a2f704ch
+dd 0b82708d3h
+dd 036555dc9h
+dd 0a941591ch
+dd 028d5d691h
+dd 016bfa496h
+dd 0e5746730h
+dd 0fd084f32h
+dd 0fcc0a027h
+dd 091c6c84bh
+dd 01c50bacch
+dd 0418c5040h
+dd 0cb7c0d60h
+dd 01bfb2d7ch
+dd 0870a7038h
+dd 07e0aae2ah
+dd 0166004d2h
+dd 0ff0de02fh
+dd 0e55dff35h
+dd 0edfac823h
+dd 0baca17c0h
+dd 0d2f8b5c0h
+dd 05d4a237ch
+dd 0fa5655aeh
+dd 0112835dah
+dd 0a93c24f6h
+dd 0446faa2bh
+dd 025c7ef33h
+dd 09ef0ec03h
+dd 01bcda829h
+dd 0a3f014e8h
+dd 0573802f7h
+dd 06528efeah
+dd 088f4a6abh
+dd 058b7af37h
+dd 070e15d25h
+dd 0f9c451fdh
+dd 084b1bf93h
+dd 05b404d92h
+dd 09bc15c8fh
+dd 012ed25efh
+dd 04ef89446h
+dd 01733bc6dh
+dd 0fbfaaa14h
+dd 01cd615b8h
+dd 0687ca4dch
+dd 0dcf43db1h
+dd 0a7c89436h
+dd 065a29bf0h
+dd 076286bb8h
+dd 0acc1a0dch
+dd 044ca0e5bh
+dd 0678cac41h
+dd 02c5121a5h
+dd 0e0a8cbcbh
+dd 0b7fb6623h
+dd 077175b7ch
+dd 09d9a7037h
+dd 02a52142ah
+dd 093333192h
+dd 065d872e9h
+dd 0300698a0h
+dd 0a9ebbd95h
+dd 01dd4dd24h
+dd 097e353d0h
+dd 06ef84ed2h
+dd 09acc7383h
+dd 053e2ac65h
+dd 0a0edd7ceh
+dd 0e1c94139h
+dd 089a10fcch
+dd 08670e782h
+dd 0faf4c336h
+dd 00fc474deh
+dd 0fb6ef3b7h
+dd 081c65489h
+dd 01e7560b1h
+dd 056b65dc3h
+dd 078808b0ch
+dd 09e328e74h
+dd 060f66beah
+dd 00e69aea8h
+dd 0d0b82c44h
+dd 0fa27c93bh
+dd 0784d8455h
+dd 0af6f4b01h
+dd 06b59e568h
+dd 0545d0627h
+dd 0fdeaad9dh
+dd 00d86dafah
+dd 019475f41h
+dd 010ee3f2ah
+dd 027997944h
+dd 036090332h
+dd 0c5c06324h
+dd 0de126cf4h
+dd 05f01cd93h
+dd 088eb4c49h
+dd 00aa01751h
+dd 0649126feh
+dd 0d74b2192h
+dd 0794497a1h
+dd 026114c0ch
+dd 03a22ee80h
+dd 02c0af5ddh
+dd 055639e57h
+dd 07144b6e4h
+dd 07969b969h
+dd 00ff3bdc5h
+dd 0471483b0h
+dd 0104206f6h
+dd 02aa02a6ch
+dd 0a73412f3h
+dd 07f1c2319h
+dd 05d8d74b4h
+dd 08b052a65h
+dd 075440873h
+dd 02a6894a9h
+dd 0863f85f4h
+dd 0865b48eah
+dd 0e6875b9eh
+dd 02d9464eeh
+dd 0a5dc508dh
+dd 0819a5cc3h
+dd 04fa8e809h
+dd 0ae376635h
+dd 0bb38baa6h
+dd 0954dddb7h
+dd 06d996e80h
+dd 014b25f59h
+dd 0912823dfh
+dd 0dbbb400bh
+dd 069aa5295h
+dd 04ad216f5h
+dd 03ceb137bh
+dd 074990a74h
+dd 0206b4420h
+dd 0292875ech
+dd 073bae8cfh
+dd 0e5bb4836h
+dd 0175e3684h
+dd 01d5c6c8fh
+dd 009b96d0dh
+dd 06e2ca086h
+dd 04fdc0cb5h
+dd 048f0f3cdh
+dd 09eb5af6ch
+dd 0b668ebeah
+dd 0c39481e9h
+dd 0e693c108h
+dd 0bac28886h
+dd 036255be2h
+dd 01680b24bh
+dd 0cc33765dh
+dd 0fe24cb3eh
+dd 0b3a83d7bh
+dd 0a28848e4h
+dd 042dbca65h
+dd 091e099e6h
+dd 050d70bc6h
+dd 0d8a1210ah
+dd 06163e1d2h
+dd 0e9d390eeh
+dd 0f51916aah
+dd 0f172448fh
+dd 000457b69h
+dd 08d6ef3d3h
+dd 0140b7510h
+dd 0142b8929h
+dd 01cba76a4h
+dd 0f17080c1h
+dd 0272b17ech
+dd 056c59fb0h
+dd 03eb8b122h
+dd 00c6e5341h
+dd 0d6aa8efch
+dd 0002cb3f9h
+dd 0f57275cch
+dd 04728d1f6h
+dd 0bb4e8f26h
+dd 0eff592cfh
+dd 0680f6ea5h
+dd 0bea4b7beh
+dd 03c099a39h
+dd 0855f3b86h
+dd 05710a9d6h
+dd 0309fa596h
+dd 06beb4892h
+dd 0ad14c3fbh
+dd 00cf78bc4h
+dd 04cc3830bh
+dd 0bb3122dfh
+dd 05b2c37bdh
+dd 046e061fbh
+dd 0c46c40dah
+dd 02efc979eh
+dd 0a441d2b3h
+dd 069b88dfeh
+dd 09da02301h
+dd 0a4c6d01ah
+dd 05c93325fh
+dd 08fc0ff04h
+dd 09992d5f2h
+dd 083ac05ebh
+dd 0a4d84836h
+dd 028fb8f35h
+dd 088c36249h
+dd 0170ca30ah
+dd 042ca807ch
+dd 06bd1c3f2h
+dd 0848d1098h
+dd 0a087b4afh
+dd 01a8a2d18h
+dd 00157b1deh
+dd 048863587h
+dd 089dc237eh
+dd 0def1c726h
+dd 08d1f7faah
+dd 0d49f7f0dh
+dd 0a1380d41h
+dd 05d69a242h
+dd 08214ebe4h
+dd 0926ce123h
+dd 0325488bdh
+dd 060d17367h
+dd 06e61956ch
+dd 0c62110f0h
+dd 06924307fh
+dd 00aeda6eah
+dd 0502b1fdch
+dd 0199c8162h
+dd 0b77a259ah
+dd 03a0f512dh
+dd 04420cda5h
+dd 05e0d05b6h
+dd 0f315c7cah
+dd 00668d1adh
+dd 09c6ca87eh
+dd 0951d7ec4h
+dd 09f8ff697h
+dd 05afb8efch
+dd 06f5ea10bh
+dd 07c489dc7h
+dd 04671fa35h
+dd 038b60bbch
+dd 02d7e56d8h
+dd 0ff244275h
+dd 085742e67h
+dd 0f854422bh
+dd 0117afdc4h
+dd 014d5b52bh
+dd 0660a82dbh
+dd 09c66086ch
+dd 01d7a2981h
+dd 0bb152993h
+dd 0179d1893h
+dd 0e9e761e5h
+dd 025f3251dh
+dd 072f1fb4ah
+dd 0a1464479h
+dd 03f8f790ah
+dd 00590651dh
+dd 022a8d394h
+dd 00e335dabh
+dd 079eda657h
+dd 0e47e4ff6h
+dd 04853d7bah
+dd 04a106ac5h
+dd 09bb75db2h
+dd 053a043abh
+dd 0eb345e80h
+dd 06e72c2c1h
+dd 0681a53c9h
+dd 070e6174ch
+dd 094c0715ch
+dd 06503fa51h
+dd 01c292b14h
+dd 034c4f1ech
+dd 0cf74f92eh
+dd 004da6ecch
+dd 0744073ebh
+dd 0fa0d2b85h
+dd 0f95f6504h
+dd 03e1ae6e9h
+dd 04d6d8647h
+dd 0d3fd0efbh
+dd 053d268abh
+dd 00b4c06bah
+dd 0d1f9f8bfh
+dd 0602e3c00h
+dd 04b4d6a19h
+dd 062ab0987h
+dd 036f4f407h
+dd 0cdaee90eh
+dd 0dbd50b48h
+dd 01f113ce1h
+dd 03375fdaah
+dd 052a3e6ebh
+dd 07c4ec2c8h
+dd 03d7115bch
+dd 013a44dafh
+dd 023e7ddd7h
+dd 07de12b11h
+dd 0c5f33949h
+dd 04ed4a991h
+dd 0b56ddcf4h
+dd 0310e2696h
+dd 00fa4752dh
+dd 025831c2eh
+dd 07a37a282h
+dd 0e29a8c2ch
+dd 04a8df7d6h
+dd 08bcd9ff1h
+dd 09ddf9db6h
+dd 05dd83d7dh
+dd 0051f7f27h
+dd 00c27bce8h
+dd 0bb449a6fh
+dd 05606e9f0h
+dd 03e20c615h
+dd 06f9a9e61h
+dd 02a03fae2h
+dd 081d037bbh
+dd 01645a51fh
+dd 0e94b6d1fh
+dd 0e8e4988fh
+dd 0db668edch
+dd 0d9c7e583h
+dd 0652b8305h
+dd 0777738cah
+dd 01cf07fa7h
+dd 08159a4a1h
+dd 03824ee56h
+dd 0f0cd037eh
+dd 0d7280068h
+dd 00f32c30eh
+dd 08527859eh
+dd 09b21a1abh
+dd 003b0e28eh
+dd 03abe62b9h
+dd 0cb46ea9ch
+dd 05232745ah
+dd 07e1701e3h
+dd 0661f9b6eh
+dd 00585bdd4h
+dd 0cb25c7fch
+dd 049a454cdh
+dd 09fbe9498h
+dd 0fc15132bh
+dd 07364cc5ch
+dd 04a8069edh
+dd 08058ac4ah
+dd 07cc0727fh
+dd 00c1adaddh
+dd 0a8d6f2d9h
+dd 0d2cef81bh
+dd 090ba80aeh
+dd 030a38692h
+dd 0e5aaacfch
+dd 05a82d544h
+dd 061598ae0h
+dd 0fdd6e743h
+dd 043016cb2h
+dd 091c26bb9h
+dd 01191f670h
+dd 04966395dh
+dd 0c6af5110h
+dd 0f912d357h
+dd 0837df077h
+dd 0684a1b08h
+dd 0a5423245h
+dd 0567994c0h
+dd 00c112c86h
+dd 0c6936d14h
+dd 0cef7449eh
+dd 035a2ae71h
+dd 0772dc9f2h
+dd 0b390178ch
+dd 0f3e28cc5h
+dd 0df49598eh
+dd 053b1db11h
+dd 0385e9032h
+dd 0f09cb9e6h
+dd 0d0f1fc8eh
+dd 0bea29822h
+dd 050976066h
+dd 082607db5h
+dd 042b50904h
+dd 0a120d3f9h
+dd 0b326b548h
+dd 00e86a49fh
+dd 038e7cb4ah
+dd 077fa143bh
+dd 06225aa2eh
+dd 00115ee1ch
+dd 0f1bfb075h
+dd 0eae00384h
+dd 02fb56644h
+dd 0a563e31ah
+dd 0097464cah
+dd 0460ed9deh
+dd 09db434beh
+dd 01eba8fa4h
+dd 0b0707236h
+dd 024bc5538h
+dd 090299d95h
+dd 03dee3790h
+dd 07fbef405h
+dd 01e297d42h
+dd 0ed2f3574h
+dd 0445f06a5h
+dd 001858d90h
+dd 0feaa46c9h
+dd 02babaa58h
+dd 0a74aa578h
+dd 0313e89ech
+dd 05b5cd643h
+dd 078fdbb1dh
+dd 0b26a04e0h
+dd 0867fe91eh
+dd 0c3c86272h
+dd 068eaa8bdh
+dd 0a527a0ech
+dd 071f9a3d3h
+dd 0e381e499h
+dd 04b472d7ah
+dd 003c4bc7eh
+dd 0309e143ah
+dd 01e276407h
+dd 0d3fbc437h
+dd 0a70ed10fh
+dd 00d9cd193h
+dd 0271bb55ah
+dd 03c936814h
+dd 0d497f289h
+dd 0c86b8b81h
+dd 0c5448827h
+dd 012b7f846h
+dd 0597d064fh
+dd 0c1aa4632h
+dd 0b952d811h
+dd 034b5cc13h
+dd 0a3efcb55h
+dd 01683927bh
+dd 0e6183492h
+dd 0a7a086deh
+dd 0d46475a3h
+dd 08611e654h
+dd 03dc4ffd3h
+dd 08363b800h
+dd 0fb0b72efh
+dd 035a4ce2fh
+dd 067214d30h
+dd 0988efbbbh
+dd 03e2583a1h
+dd 0c2ba656dh
+dd 04813924dh
+dd 07c22511ch
+dd 038c1d3f9h
+dd 0d48c5972h
+dd 002674279h
+dd 04a815a6ah
+dd 021f04f39h
+dd 00d795182h
+dd 0f9a37603h
+dd 0cedcc661h
+dd 0e47d5938h
+dd 00a7b1a2ah
+dd 06138a727h
+dd 02bdb0c0dh
+dd 0755255bfh
+dd 03388378dh
+dd 0d57b770eh
+dd 044520759h
+dd 0b2137348h
+dd 078cc6ae8h
+dd 04b0549c9h
+dd 01e8c9064h
+dd 0d3521f8fh
+dd 018c23deah
+dd 0bb2f1933h
+dd 004629b1fh
+dd 0f4c06d3ah
+dd 0843e3bfdh
+dd 0943bff33h
+dd 0d02428c6h
+dd 07e658e29h
+dd 093d25cddh
+dd 050fa28c9h
+dd 0cb89c1a6h
+dd 01bcd8274h
+dd 009137b7eh
+dd 0c51aae97h
+dd 0e4782233h
+dd 0ec2d6d73h
+dd 00b72f14eh
+dd 0032bda23h
+dd 07eaa0205h
+dd 08df17765h
+dd 0c3468c8bh
+dd 04b184581h
+dd 05de8bef1h
+dd 01c51081ch
+dd 0a4de1f83h
+dd 0b0b95605h
+dd 06d4f745eh
+dd 00b216672h
+dd 0ad11278eh
+dd 0084f811eh
+dd 07ac9ec09h
+dd 03cc48a5ch
+dd 0fb44b2c7h
+dd 00a2ad534h
+dd 0dfe7aee0h
+dd 0e52c205eh
+dd 0a43bfba7h
+dd 0286d7d8fh
+dd 0d8330d90h
+dd 0c1fbd548h
+dd 03e4f50c7h
+dd 0b1b822dch
+dd 0a959da28h
+dd 018e9e74ch
+dd 0eb5c0f13h
+dd 029e793d6h
+dd 0d953f72dh
+dd 0ec78a243h
+dd 0da8f1908h
+dd 0110d40bch
+dd 003618186h
+dd 087ea7e3ah
+dd 04f63bd0fh
+dd 076e56b75h
+dd 042dbdcaah
+dd 02fd26d0ah
+dd 0bd67af5bh
+dd 039c351f4h
+dd 067c8a4d9h
+dd 0f5a10937h
+dd 01da6a99bh
+dd 06930e2e6h
+dd 002272885h
+dd 0dc35f9efh
+dd 08c4e336ch
+dd 0d3f1f549h
+dd 0deaef863h
+dd 0beb79d2bh
+dd 0e656ba02h
+dd 0ea476245h
+dd 0e0a97b92h
+dd 06e2fa453h
+dd 03ae6a877h
+dd 0c6fa0055h
+dd 0af52fa87h
+dd 05d1b39e0h
+dd 0633714d2h
+dd 07bcff593h
+dd 0ad8c6404h
+dd 0e77daf02h
+dd 036be953ch
+dd 0f2d1ebdfh
+dd 027027e97h
+dd 0a9f11700h
+dd 01f2e5403h
+dd 089efca7ah
+dd 0380219ddh
+dd 060379cd3h
+dd 0196b2680h
+dd 0c0377728h
+dd 04dc5c0c8h
+dd 00bdd268ah
+dd 06fec1647h
+dd 0187e7e69h
+dd 0aa82cfa6h
+dd 0d9868e6eh
+dd 087664609h
+dd 09753db9eh
+dd 020c9438fh
+dd 0eb0f5e79h
+dd 0779ddd88h
+dd 022a0bc08h
+dd 0afe750ech
+dd 064006b30h
+dd 04ba5f34bh
+dd 0f9018582h
+dd 034ae7296h
+dd 0060fd5c9h
+dd 05941354eh
+dd 0ef7ae31bh
+dd 041ffc2c6h
+dd 054812ccfh
+dd 0a3bd5d72h
+dd 0eab8a1ceh
+dd 0d809b967h
+dd 0eb437d82h
+dd 030985b3ah
+dd 0077eab22h
+dd 09da88dc2h
+dd 00c8aa160h
+dd 07cf761c5h
+dd 021695a17h
+dd 0c65b89d6h
+dd 0c4ef7270h
+dd 07aa00cdeh
+dd 0eafc712ah
+dd 07a0eabf8h
+dd 06bb20bedh
+dd 07763d77dh
+dd 039eeb28ah
+dd 0edcf406bh
+dd 08e4de77dh
+dd 0854d70cdh
+dd 04f175ea3h
+dd 00f748132h
+dd 04263a9c3h
+dd 09b0f33fbh
+dd 0a4b065d7h
+dd 06715ccdfh
+dd 07ba3df26h
+dd 04518e868h
+dd 021f5a2d2h
+dd 0c9281fffh
+dd 020b45f37h
+dd 0c7edfbb4h
+dd 0a6e9fef7h
+dd 079689cc5h
+dd 0c07a2217h
+dd 0c8b25c7bh
+dd 0e3b58278h
+dd 00cf99406h
+dd 06e9b58dah
+dd 0780c9fb1h
+dd 0a872cbdbh
+dd 05e7b1fbch
+dd 0c126293dh
+dd 0a98c30ceh
+dd 0ec8248fah
+dd 041d79b1fh
+dd 0442631c0h
+dd 0b912ce24h
+dd 0bf39af5ch
+dd 021aada9bh
+dd 001d9b09ah
+dd 0044c0751h
+dd 0d098704bh
+dd 0b68c68aeh
+dd 04218ad94h
+dd 0a12005b6h
+dd 0587b8ae4h
+dd 0a79b67ebh
+dd 00e0c731eh
+dd 0b1246675h
+dd 0c72b1d24h
+dd 0e7521942h
+dd 024a7e6c5h
+dd 07684acd7h
+dd 0930250feh
+dd 0772222beh
+dd 07a05a374h
+dd 02c3f826ch
+dd 09e11f11fh
+dd 010fcc608h
+dd 073e8cf34h
+dd 0ba84270bh
+dd 0044e8b69h
+dd 0d91d0325h
+dd 0538653abh
+dd 07760bb16h
+dd 0e896f0c3h
+dd 0baeb811dh
+dd 0f1f02b74h
+dd 080b7d01eh
+dd 0c1c915cfh
+dd 096de1dbdh
+dd 0e7f2fa58h
+dd 0a4caf5a0h
+dd 0ecfd163ah
+dd 0018f9af9h
+dd 02127c072h
+dd 060feb728h
+dd 0f2b923f3h
+dd 03709c119h
+dd 055244dc2h
+dd 0f1a5d257h
+dd 0ab4723b4h
+dd 0193166b1h
+dd 09712e5bah
+dd 0a86f0fc2h
+dd 059f6004ah
+dd 0c46c7753h
+dd 0d453dd10h
+dd 012e6b513h
+dd 01f9f9087h
+dd 05f6a6135h
+dd 08191fb50h
+dd 09b9976c8h
+dd 03a3acf41h
+dd 04e0ccdabh
+dd 02bbf47efh
+dd 0d7e5240fh
+dd 0d3d1449eh
+dd 0e1a48338h
+dd 04e35d362h
+dd 0a7877d16h
+dd 02e328a14h
+dd 01d3ffa6eh
+dd 09e751ce9h
+dd 0e172f339h
+dd 0c30d5934h
+dd 0360d32f5h
+dd 0d263cb19h
+dd 0dab6f927h
+dd 0531c6a6fh
+dd 0ca6ab3d4h
+dd 0858ae05dh
+dd 0d5de9e0ah
+dd 0f74c05f1h
+dd 08ee91b3dh
+dd 0bf3ef3f8h
+dd 0d1ab324ah
+dd 0b61823dch
+dd 099158f45h
+dd 0c306485ch
+dd 065aba2afh
+dd 09ea201ebh
+dd 00e1bd817h
+dd 071f90300h
+dd 0a4519c4eh
+dd 0a554f619h
+dd 0a396980dh
+dd 0f2aa0789h
+dd 09c98ea68h
+dd 0f39be6c5h
+dd 0b54aa1d0h
+dd 01ad05a3ah
+dd 0b5764a0ah
+dd 09742299bh
+dd 0ba83e253h
+dd 0c0729455h
+dd 0c45865f6h
+dd 02c8f4ed0h
+dd 0ed002496h
+dd 04b675f76h
+dd 08c34ddc3h
+dd 0d6928b50h
+dd 0d1d6bb3eh
+dd 0a1ace0b2h
+dd 0e0e8a621h
+dd 0759a327eh
+dd 09ca0d140h
+dd 01b6d2da9h
+dd 0a64fd915h
+dd 06a67ab3bh
+dd 02272dc90h
+dd 0cf3c1bc9h
+dd 095317506h
+dd 017d8da47h
+dd 005d27d0eh
+dd 07999bfc7h
+dd 07937cc00h
+dd 069bf1eb5h
+dd 0810bc4e7h
+dd 04f19a1f5h
+dd 02c7363b7h
+dd 00fc66acbh
+dd 0fbfcf703h
+dd 00b8d0153h
+dd 0a90cb14ch
+dd 02179c515h
+dd 08599aed4h
+dd 06f3329beh
+dd 0aedb59c8h
+dd 0ab39d5d0h
+dd 0ffb0ce60h
+dd 0129c38eeh
+dd 0a9131d05h
+dd 08edcf49dh
+dd 031eebaa3h
+dd 07442cbf1h
+dd 07f810115h
+dd 0c06af6fah
+dd 07b57b491h
+dd 0a762d7b4h
+dd 0b2283e9bh
+dd 0964bebf3h
+dd 0155d24b7h
+dd 016f9c7f5h
+dd 0eb2a726ch
+dd 0f24955dah
+dd 07ccfead8h
+dd 0436b8ff9h
+dd 00040bb71h
+dd 0af305f8ah
+dd 0d5948d79h
+dd 0d49c43c5h
+dd 0580793d3h
+dd 05b24d971h
+dd 082be803ah
+dd 07fd358f1h
+dd 031bc8e91h
+dd 003b34511h
+dd 0c66a960ch
+dd 07498fbaah
+dd 02c5ff272h
+dd 0d5ba3161h
+dd 041df980dh
+dd 0bc5aac57h
+dd 026c466eeh
+dd 0b6f85aabh
+dd 023225d9ch
+dd 0a49b113eh
+dd 0e5e16e32h
+dd 0a7a50205h
+dd 0df045bc5h
+dd 01edabf8fh
+dd 06d98ac23h
+dd 0f42d8b33h
+dd 05bddf100h
+dd 0c7fd3201h
+dd 05553a861h
+dd 0299148e0h
+dd 03d6943d7h
+dd 0588cc336h
+dd 05664bd50h
+dd 06e2a8cb2h
+dd 09e7a573ah
+dd 0588502efh
+dd 06a508f31h
+dd 0bb201783h
+dd 009d1524ch
+dd 00f747c31h
+dd 071e6a444h
+dd 0426b76afh
+dd 044629d92h
+dd 04d0644e6h
+dd 053a9a85eh
+dd 06771d820h
+dd 0c6758750h
+dd 0846aba40h
+dd 0ed48ccd9h
+dd 010364300h
+dd 060d54e17h
+dd 0b24a9755h
+dd 0b833d6beh
+dd 0db5bb1e2h
+dd 04db4c568h
+dd 0de70427eh
+dd 0c58bca62h
+dd 05193ad93h
+dd 062360809h
+dd 0cf7d8ae9h
+dd 0e71748a5h
+dd 0a5680f32h
+dd 0ed70ec28h
+dd 0c1f04755h
+dd 01e00f95dh
+dd 0641290c7h
+dd 0d4debe9ah
+dd 03d964defh
+dd 0b877dba1h
+dd 05b4cb73ah
+dd 0ff5665a2h
+dd 0ce20d624h
+dd 0c9c3a6beh
+dd 02f283a7ch
+dd 08f940e8dh
+dd 033d84edeh
+dd 0198d8dc7h
+dd 025b985a5h
+dd 039c8390fh
+dd 0d8b754b5h
+dd 095f1cb04h
+dd 07cab2a27h
+dd 020d3d532h
+dd 0e9cf173dh
+dd 09d9d19a7h
+dd 0ca18c7a3h
+dd 0c055a24eh
+dd 0924aecf5h
+dd 03a0cd802h
+dd 06a676d0ch
+dd 05c1b3f5dh
+dd 08f706b12h
+dd 0d1490cefh
+dd 05b1cdc29h
+dd 095086ef3h
+dd 040d10aaah
+dd 0b4bac159h
+dd 00b221e6eh
+dd 099f58362h
+dd 0676bd53ch
+dd 0d3dd9c1ch
+dd 01d649e74h
+dd 079c1b914h
+dd 08040ab67h
+dd 0ae57a8d4h
+dd 06478d912h
+dd 0e29df8cah
+dd 0ea5a7afeh
+dd 0757ead81h
+dd 0534decc0h
+dd 0d8090006h
+dd 0f4bc5c00h
+dd 0a0a36b87h
+dd 0af94ff15h
+dd 091e62862h
+dd 034a72d6ah
+dd 0c23a09f3h
+dd 0a356ebcah
+dd 0ff1f95c5h
+dd 0dc5ca5b1h
+dd 0efb509c7h
+dd 08a6d7015h
+dd 0d6d7b627h
+dd 0e8b9cbc4h
+dd 0ceb205c7h
+dd 0ba6996c7h
+dd 0a2eae68ah
+dd 00022ba7ah
+dd 0738bfc97h
+dd 07a51d8c2h
+dd 0824e299ch
+dd 09e8d6fa3h
+dd 01fc9a910h
+dd 0cc21d3a5h
+dd 06b25570eh
+dd 045171dc9h
+dd 0fbcfa6c5h
+dd 07d20ce03h
+dd 08a4d98eah
+dd 042dca2f1h
+dd 0255b806fh
+dd 0f630b035h
+dd 0ebcd330dh
+dd 0db808228h
+dd 0a8889b14h
+dd 0cecc0526h
+dd 053f5ce78h
+dd 08db09974h
+dd 0c5d07592h
+dd 01ae0e846h
+dd 07672503ch
+dd 01f3430f6h
+dd 016edb4cch
+dd 0787da115h
+dd 02473abbah
+dd 08b85531bh
+dd 0bb799bebh
+dd 0972f45d7h
+dd 058db65cfh
+dd 0ef23ce3bh
+dd 01d3dcdd1h
+dd 0411f4130h
+dd 06f833316h
+dd 0bf62dfb2h
+dd 09b876963h
+dd 0f522c377h
+dd 05a01b9a4h
+dd 08cf396a9h
+dd 0f1c04881h
+dd 06eb59c7eh
+dd 06edafb2bh
+dd 0de5f4840h
+dd 0510d9b45h
+dd 00f48d508h
+dd 0de74168ah
+dd 069b4cb80h
+dd 006e1095ah
+dd 0c74b2a35h
+dd 07299a1b3h
+dd 0872968cfh
+dd 02ccea926h
+dd 0240c2264h
+dd 0f8185b34h
+dd 08b7836bbh
+dd 034279c1ah
+dd 0c314323ah
+dd 08553a1e5h
+dd 0e54d8625h
+dd 0be1db28ah
+dd 013d5b207h
+dd 09d4e1952h
+dd 0f14998b7h
+dd 09f15fc33h
+dd 062ed7230h
+dd 0e0abbaf5h
+dd 076b87755h
+dd 0c684f66eh
+dd 0c85eeff7h
+dd 0aa9ee6b8h
+dd 0def08025h
+dd 01baa38a5h
+dd 0f844ff9ah
+dd 0dda39781h
+dd 023f838a8h
+dd 081453a32h
+dd 0630df390h
+dd 0343a68fah
+dd 0ec865506h
+dd 090470b64h
+dd 06d542e90h
+dd 069847414h
+dd 02edc023ah
+dd 0f2482298h
+dd 016160406h
+dd 0f38c5cc9h
+dd 07074316fh
+dd 0581cc2fbh
+dd 04f835df5h
+dd 04d3fdaf4h
+dd 0c303a29fh
+dd 0da95c0bbh
+dd 0d075f995h
+dd 09a1369f5h
+dd 0f9db4e5bh
+dd 03b37830ah
+dd 051328b00h
+dd 0f8443592h
+dd 07a55e6d4h
+dd 047dc6777h
+dd 0fd9aa194h
+dd 03b798008h
+dd 0fbf598ddh
+dd 0d42a3ef8h
+dd 006551958h
+dd 09bad31bbh
+dd 0aed9c09ah
+dd 076ba55b2h
+dd 0e62a7d5dh
+dd 0937bd10dh
+dd 000f57d33h
+dd 04f365a80h
+dd 0eaa4b914h
+dd 02f25aeaah
+dd 03a04d2aah
+dd 0afddaaf3h
+dd 098699b32h
+dd 042670459h
+dd 0332e1f51h
+dd 026ec2921h
+dd 089b55348h
+dd 07888c69bh
+dd 0ed7dfa9ah
+dd 07f9b78a7h
+dd 06ad3ef90h
+dd 0895755fah
+dd 004326f90h
+dd 036e2e4ceh
+dd 0d62ffadfh
+dd 0c822fc7ch
+dd 05bddd538h
+dd 01781f66ch
+dd 0e2adae39h
+dd 035a847e6h
+dd 00209c66dh
+dd 08107b1deh
+dd 03d5fd6f2h
+dd 0832a5f80h
+dd 0ab6fab96h
+dd 03ad715eah
+dd 0b2e5898eh
+dd 0edda6ca9h
+dd 01dd98ebch
+dd 09d2fbb66h
+dd 020f1f143h
+dd 03d3b9fabh
+dd 0a84677d9h
+dd 08010406fh
+dd 038826a7ch
+dd 0d6d52e9dh
+dd 08c425f5ah
+dd 0d00ec0ffh
+dd 0c81968b5h
+dd 04f537ff7h
+dd 0c8be2899h
+dd 06091a1d4h
+dd 01684205ch
+dd 0b6d37342h
+dd 03ba79284h
+dd 08d4f786fh
+dd 094977b94h
+dd 0430e9aaah
+dd 06769aebah
+dd 0489e8c05h
+dd 07cd56c4eh
+dd 0a4251a00h
+dd 02fa48e6bh
+dd 002c4687ch
+dd 00f03340eh
+dd 0f92c892fh
+dd 005d24c74h
+dd 01d990195h
+dd 09d0854b0h
+dd 0b0b95621h
+dd 06749696eh
+dd 0dfc9ad63h
+dd 0edb5aaf5h
+dd 070734e9bh
+dd 0692de144h
+dd 019e1d582h
+dd 04026ccadh
+dd 0ba9d323ch
+dd 0e4c045d4h
+dd 08c36dcdbh
+dd 07074c05ch
+dd 020079801h
+dd 05a0c4b46h
+dd 0fc9ca858h
+dd 0d6f34cf0h
+dd 0f4adc642h
+dd 00a955571h
+dd 0c5ab007eh
+dd 09584e303h
+dd 0a329f5c7h
+dd 0c42ef820h
+dd 0262c60d6h
+dd 02359361eh
+dd 05ad32862h
+dd 07ad4fb31h
+dd 0b4ccfa17h
+dd 0caa5d4a5h
+dd 070604dfch
+dd 04ae7c676h
+dd 0543d856ch
+dd 09bd05c68h
+dd 030a5c401h
+dd 08a801848h
+dd 0f7289538h
+dd 0c7c64e92h
+dd 06c7690cbh
+dd 037b83b5fh
+dd 0d4ffa164h
+dd 0ec8242e4h
+dd 0c12a6e26h
+dd 08450ffc6h
+dd 0cf3214e5h
+dd 0a4f71aeeh
+dd 08b4eb315h
+dd 05a12ec45h
+dd 03aeeae92h
+dd 0f040b94ah
+dd 0e67cbe41h
+dd 0bfd2b13bh
+dd 07094f232h
+dd 0a1b71097h
+dd 03f40c4bch
+dd 01134a22ch
+dd 0a6db4c6fh
+dd 098501797h
+dd 0d22c37e6h
+dd 01a5c58ech
+dd 0e9a56217h
+dd 0a868b4a0h
+dd 073c906cfh
+dd 064164b0ch
+dd 0dc07c9ach
+dd 010bbfc20h
+dd 0c1a563b6h
+dd 08ef7f4c6h
+dd 0d115c1efh
+dd 02824a725h
+dd 02c63952eh
+dd 094eaa890h
+dd 032b80c3fh
+dd 0ac349f5dh
+dd 009698bb8h
+dd 006754727h
+dd 0c313a1f6h
+dd 000d75e1fh
+dd 06d286a9ch
+dd 04f78d8fah
+dd 0321eb3ebh
+dd 036a07e46h
+dd 06f7b00bdh
+dd 090237ae0h
+dd 060cba327h
+dd 0e900f464h
+dd 080680580h
+dd 009e5586ch
+dd 0949a53c3h
+dd 03ce5197bh
+dd 04c2e69aeh
+dd 0a6c5da3eh
+dd 064c8a40eh
+dd 059ae2773h
+dd 008dd1673h
+dd 07712afd6h
+dd 0908ca6f6h
+dd 0387b00a5h
+dd 01850347fh
+dd 0438b3171h
+dd 067b5722ch
+dd 0e37b8984h
+dd 0c3f8879dh
+dd 0961c332ch
+dd 087f97bb7h
+dd 08c60d8bdh
+dd 0ba2fa9fah
+dd 0d1d45a77h
+dd 0fcc37c58h
+dd 0a77596e1h
+dd 0371b1897h
+dd 09ebdbe37h
+dd 04f02d044h
+dd 0b504e369h
+dd 05590a3c3h
+dd 0b2249db3h
+dd 064f9faa8h
+dd 0dd95fd94h
+dd 027d7a3c6h
+dd 0dde04710h
+dd 0d48995bch
+dd 0a7324e82h
+dd 03fd963c0h
+dd 056c4cd4ah
+dd 08e1cfaf8h
+dd 026481b4ch
+dd 0c22e42e9h
+dd 01957e933h
+dd 0e8af1e65h
+dd 0ec7d3ae6h
+dd 0fe669282h
+dd 0a3519d1fh
+dd 03bd2f938h
+dd 04cfb47beh
+dd 04deafa4ch
+dd 073d240a7h
+dd 0749402aeh
+dd 036e00f05h
+dd 0d1e74db4h
+dd 03cc9a646h
+dd 08d38149ah
+dd 0c44155a4h
+dd 065087c28h
+dd 0c5a3d68fh
+dd 0911911c9h
+dd 0f8e650dch
+dd 0e3de9c77h
+dd 07048f507h
+dd 07bea7616h
+dd 02d56e0eeh
+dd 0082b86d2h
+dd 0a3c9e8fah
+dd 0588eb1aah
+dd 0e1ee069eh
+dd 02bc1409bh
+dd 044b73fd0h
+dd 09563bf8ch
+dd 0812970a3h
+dd 08622d2ffh
+dd 05b8c8c26h
+dd 0fbbb7c69h
+dd 089219a45h
+dd 09a03300fh
+dd 0d7bc61a8h
+dd 0b7243bdbh
+dd 0cbb087cah
+dd 04f3872e7h
+dd 0ba0ed430h
+dd 0d7a52f58h
+dd 0c48e0e42h
+dd 028671ba5h
+dd 0e3f4a5afh
+dd 02004803bh
+dd 0e65957b8h
+dd 008880bedh
+dd 0285af50ch
+dd 03f2e1a7fh
+dd 003fa1182h
+dd 060792bc7h
+dd 06c63e0b4h
+dd 01aea2511h
+dd 07b5f42dch
+dd 0660349e7h
+dd 0e607d72fh
+dd 019aae259h
+dd 0291e7510h
+dd 0a1da9581h
+dd 0ac785e2ah
+dd 083e6cdabh
+dd 0fd5e0dc8h
+dd 0d4259262h
+dd 0fdf1bc30h
+dd 0803e985dh
+dd 01b3b3ef3h
+dd 07ea473cbh
+dd 018a9ff25h
+dd 0ef96d60ch
+dd 0e39daac4h
+dd 04fb78c29h
+dd 0d31ba31bh
+dd 077eab18ah
+dd 0dbc67105h
+dd 0244d4ffeh
+dd 035700363h
+dd 08736e1c1h
+dd 06b68456ch
+dd 0225fc1b7h
+dd 07ca23d98h
+dd 04ec34266h
+dd 0168cd69eh
+dd 014799321h
+dd 0ebe8dfaah
+dd 0faea2a15h
+dd 0c1144024h
+dd 0eb6beb7fh
+dd 0583f29e6h
+dd 064cbb4a9h
+dd 04c523601h
+dd 04fc165f1h
+dd 0f7fa8afch
+dd 0a218a198h
+dd 0276da418h
+dd 092feca5bh
+dd 062384864h
+dd 06f45061ah
+dd 0fff11e5ch
+dd 0b356cb6ch
+dd 04efb494ch
+dd 0da9c8843h
+dd 0d957aa0ch
+dd 0ed6762d8h
+dd 0cf5368dch
+dd 09135a38bh
+dd 01f0625feh
+dd 0c169a489h
+dd 088de5b86h
+dd 08da8bbadh
+dd 03efdf295h
+dd 009ab812bh
+dd 04ec5b73dh
+dd 05b6ade4dh
+dd 02a8c7db1h
+dd 0214be04fh
+dd 00045548bh
+dd 0b45bb491h
+dd 0a3b8e081h
+dd 090fb0e05h
+dd 04817e8a3h
+dd 0acbf568bh
+dd 084c57db1h
+dd 057712701h
+dd 039a712dch
+dd 056cbcd3eh
+dd 0fcfa11f8h
+dd 0e4b2a84bh
+dd 0cbc3a103h
+dd 0b8c77727h
+dd 09b9becfbh
+dd 00e4aa327h
+dd 04a333d18h
+dd 05f353c15h
+dd 0b28e1036h
+dd 0732ef90ah
+dd 0dfdfdeach
+dd 08330e935h
+dd 0116e2cd9h
+dd 067ded6e8h
+dd 0924f5a7ah
+dd 053a9edd1h
+dd 0ae3a9865h
+dd 0fe5dcbc1h
+dd 06b8b3fbdh
+dd 0e45295f7h
+dd 078ff96ffh
+dd 0fc18151ah
+dd 064b4d666h
+dd 0059872d9h
+dd 05337b45dh
+dd 064a46ae8h
+dd 0f812befdh
+dd 03d38941eh
+dd 0c3466e58h
+dd 0c96d54e7h
+dd 0d68e1761h
+dd 0705eb774h
+dd 0574899a3h
+dd 06ebf73aeh
+dd 02655471bh
+dd 0456fdc78h
+dd 0e92c55cah
+dd 025fafeb9h
+dd 05f03e270h
+dd 008ca354ch
+dd 0722e324ch
+dd 05a465470h
+dd 03d89052ch
+dd 016d738c2h
+dd 02994cd3eh
+dd 006fb50c2h
+dd 0b1e223d1h
+dd 03359cb16h
+dd 062b84ac1h
+dd 03cc8fd25h
+dd 0acbf112eh
+dd 059b93a9dh
+dd 0daa20c0bh
+dd 0a24b9947h
+dd 0e97cfdd9h
+dd 07bdc4ac8h
+dd 011b50159h
+dd 075999b82h
+dd 0df3e07ech
+dd 050e78812h
+dd 084639571h
+dd 05bd51bbah
+dd 0ea98999bh
+dd 06164433fh
+dd 0b76f8a50h
+dd 01b3493a8h
+dd 0ef186e24h
+dd 0015b28ceh
+dd 0d9af63bch
+dd 0efc03e1ch
+dd 0ab83e82fh
+dd 0fd6f2f66h
+dd 05a259c5dh
+dd 0437aa626h
+dd 025b36dabh
+dd 08e11671bh
+dd 005747bddh
+dd 006b1bb1bh
+dd 0cc796aaeh
+dd 05a64bcc5h
+dd 07f72bec3h
+dd 0378bd816h
+dd 07a3aa057h
+dd 06628ad77h
+dd 0b5a33251h
+dd 0c6d6028ch
+dd 0853ddefah
+dd 069b6e1feh
+dd 0d44b98a9h
+dd 0558bf0c6h
+dd 0d30b6b02h
+dd 0fa6859a4h
+dd 0f93b527fh
+dd 05da7bd91h
+dd 079009eb4h
+dd 0d708bb0dh
+dd 06da5f5f7h
+dd 0f873798fh
+dd 01402d899h
+dd 05288fd12h
+dd 08afe9ee5h
+dd 0665695d0h
+dd 01665e8b6h
+dd 02dd4852dh
+dd 0786810d2h
+dd 02e7c007fh
+dd 05e5d97b9h
+dd 0933659b7h
+dd 0c8b42432h
+dd 0d9a8c927h
+dd 0f6908f2ah
+dd 070e912a6h
+dd 0718de148h
+dd 0a84d0276h
+dd 0c59aec68h
+dd 0e8b72b8ah
+dd 0ffff3ab0h
+dd 05713d85ah
+dd 0bd306fafh
+dd 01ffde527h
+dd 0e22a66eeh
+dd 0d9dd5876h
+dd 0a58e51b0h
+dd 091c522afh
+dd 0a2e86ed3h
+dd 0ed517e7ch
+dd 0ec106742h
+dd 009b076dch
+dd 08ec35824h
+dd 01737d9c8h
+dd 06982b53ah
+dd 089b66dfch
+dd 0dd62d4aah
+dd 0ef9d7ce1h
+dd 0e81facfeh
+dd 04ba9dcf6h
+dd 06c290bc2h
+dd 0583df367h
+dd 0083d77d4h
+dd 0d474180eh
+dd 0f5057113h
+dd 02a97fe9ch
+dd 02f8e07b6h
+dd 049909bb4h
+dd 06c9c8552h
+dd 0429cedb4h
+dd 020ac6876h
+dd 0cfdd147dh
+dd 09e8f8f25h
+dd 0c030a931h
+dd 00ac39449h
+dd 0d6666e8ch
+dd 0274c9c87h
+dd 0fe771b34h
+dd 0cfb9ed90h
+dd 04582ac7bh
+dd 0d1d8793ah
+dd 0a75e4e81h
+dd 067b6e469h
+dd 0be0f723ah
+dd 033973244h
+dd 0d59c4955h
+dd 024eebcf9h
+dd 0e535796dh
+dd 01f253584h
+dd 0e1a557d1h
+dd 0269681c0h
+dd 0c1387d43h
+dd 030f0eb0ch
+dd 09618bf63h
+dd 03899cf61h
+dd 01065b14bh
+dd 0fe391881h
+dd 0d943570eh
+dd 07ca138ceh
+dd 08bff4a80h
+dd 0e51f1279h
+dd 0c081b62eh
+dd 0cad368bbh
+dd 034235c9ah
+dd 0a431b835h
+dd 0c5d13205h
+dd 0ec2c6d51h
+dd 0c9e14c72h
+dd 0455a7f4bh
+dd 0623f8ab2h
+dd 0a9dfa0a6h
+dd 0f3270a0eh
+dd 08d5edafah
+dd 072c79a98h
+dd 049a47456h
+dd 094be51c2h
+dd 0478ae82fh
+dd 05912a516h
+dd 0d4bac32dh
+dd 04e056b30h
+dd 0b1df0d8dh
+dd 0760f9736h
+dd 073578d96h
+dd 04176133fh
+dd 0fc092f4fh
+dd 0b21f2d7eh
+dd 004c335e6h
+dd 0f6b5e4feh
+dd 03ed8487ch
+dd 0ea420666h
+dd 03597b70bh
+dd 02eb6b265h
+dd 022f35a7ch
+dd 031ac6e20h
+dd 0ab8b1a3ah
+dd 0b1d3bd98h
+dd 0958eb84bh
+dd 09d1e354ch
+dd 0c396204dh
+dd 0459417deh
+dd 0d877bb26h
+dd 0f5b42fadh
+dd 081a974e7h
+dd 0f7b03790h
+dd 080db669ah
+dd 0bbb8599ah
+dd 02f3aeb07h
+dd 05fa9ec16h
+dd 04496e8c5h
+dd 005c104feh
+dd 078f80bc7h
+dd 0ab67d932h
+dd 00a9c9ea7h
+dd 08436cdf1h
+dd 074e892a0h
+dd 0c1e9b7e1h
+dd 03a8b3055h
+dd 03d09212dh
+dd 0344686c1h
+dd 0be20d9b4h
+dd 00c3926a7h
+dd 0601751d1h
+dd 0c5242f5ah
+dd 0bf638306h
+dd 0606f415ah
+dd 0e5c5fc43h
+dd 07110bd2ah
+dd 053e65903h
+dd 0673cad51h
+dd 0b4384487h
+dd 02f459962h
+dd 04cfa8a4dh
+dd 0dc4d7cd7h
+dd 06bbcfc85h
+dd 0ca25e512h
+dd 006d249a3h
+dd 02f696b23h
+dd 09175901eh
+dd 0853b7772h
+dd 0ba744554h
+dd 0a58c4a0ch
+dd 08abba418h
+dd 04001d201h
+dd 0d78a3514h
+dd 02ddf8a07h
+dd 0a42c12a7h
+dd 0d40d37feh
+dd 08349d2d2h
+dd 0eaf04a48h
+dd 0dee64d00h
+dd 08adc9a48h
+dd 020d68213h
+dd 0725d61aah
+dd 0a8099b0ch
+dd 079001868h
+dd 0a80e9c97h
+dd 033f8cb3bh
+dd 0793dae47h
+dd 06033d2d7h
+dd 0745bab30h
+dd 0790b8effh
+dd 08e4f1b70h
+dd 06e97cc9eh
+dd 0d9151090h
+dd 0ac30692eh
+dd 09d37a70eh
+dd 01aab0baeh
+dd 0380df21bh
+dd 0350c5127h
+dd 0b57a52ffh
+dd 0a5638aabh
+dd 059981e4ch
+dd 0d5712352h
+dd 0d8675570h
+dd 05c7f9b79h
+dd 0a7745516h
+dd 0d257d602h
+dd 01883b940h
+dd 0756733beh
+dd 0e1447e56h
+dd 0427b42dch
+dd 0f585f935h
+dd 0c651f02ch
+dd 0d002d3b7h
+dd 004fcbf77h
+dd 06691eff2h
+dd 0bef72f22h
+dd 0f5cb5035h
+dd 09b368ba7h
+dd 00ee80e3dh
+dd 0889a835bh
+dd 04b363429h
+dd 0bf35c822h
+dd 0f15c478fh
+dd 0f6ce6de2h
+dd 01f25e2eah
+dd 03f5abaa3h
+dd 0f03013d5h
+dd 0301042c0h
+dd 01a1ddccfh
+dd 015e8b956h
+dd 048506239h
+dd 0659596abh
+dd 00a24bea9h
+dd 0469afdc8h
+dd 0093af6a3h
+dd 05dffe395h
+dd 04148d456h
+dd 0822ce25eh
+dd 0c0b1ec03h
+dd 04e9c52f2h
+dd 0a7f9e433h
+dd 08337956bh
+dd 0772b8f0bh
+dd 02e496f54h
+dd 0819c8c10h
+dd 0b3d7b8f1h
+dd 0fcfe0445h
+dd 0d89deb63h
+dd 07ff893f9h
+dd 0b0f3cd46h
+dd 0b17bac0dh
+dd 0aecfdbc8h
+dd 069e0225eh
+dd 0145b5ecbh
+dd 00283421dh
+dd 0046dd84ah
+dd 0822fba50h
+dd 0fb976d1eh
+dd 085d0bf0fh
+dd 05c708b76h
+dd 063511178h
+dd 0117f4590h
+dd 02b9bdda8h
+dd 0c608785fh
+dd 0b2eb962ch
+dd 0f80af6fbh
+dd 0462c06b1h
+dd 07f5032f8h
+dd 07839c9a1h
+dd 05908f285h
+dd 0ef378248h
+dd 042afa902h
+dd 046bfe657h
+dd 06d5561d4h
+dd 07048e7aeh
+dd 09ceb4d3dh
+dd 052aeebcbh
+dd 07f967066h
+dd 00a69ba28h
+dd 05af87919h
+dd 030eab02fh
+dd 0ad34ff34h
+dd 0426eeb3dh
+dd 0f679f89dh
+dd 004b761cfh
+dd 015609a3eh
+dd 00d0082e6h
+dd 004f4a368h
+dd 038a9a169h
+dd 0be8d5c6ah
+dd 07fb74742h
+dd 0306baea8h
+dd 0029e0172h
+dd 079be850ch
+dd 0ecd08426h
+dd 0c5a9b3dbh
+dd 0e40fc847h
+dd 0c0603e5ch
+dd 0503da3f9h
+dd 0ca9a246dh
+dd 061229ce5h
+dd 0173b72fah
+dd 0a6819a7bh
+dd 048fc01eah
+dd 0237816aeh
+dd 0ef2f76b6h
+dd 036093c04h
+dd 0bdd0fc5bh
+dd 0bc95f3c0h
+dd 0a0fc8243h
+dd 00ab06fc3h
+dd 00c73b8fbh
+dd 0f7b67146h
+dd 04e218a61h
+dd 0887ba996h
+dd 0642ab4d9h
+dd 0647d01b5h
+dd 0ce7b1681h
+dd 01684e035h
+dd 0165158eah
+dd 06ffbb1a5h
+dd 0818c6e6bh
+dd 0ff0b6baah
+dd 06ac3c7e7h
+dd 064e4ff1bh
+dd 097809296h
+dd 096559423h
+dd 0457503deh
+dd 0122c32a1h
+dd 0acb5cbd0h
+dd 014629a4bh
+dd 06de6f762h
+dd 0b3724cc2h
+dd 0f0816783h
+dd 0a873288bh
+dd 0fad7a0a6h
+dd 0b055f711h
+dd 05738c3cch
+dd 009f2fa02h
+dd 0cd0b33deh
+dd 01d3014b2h
+dd 0379e0bfah
+dd 0f464b20bh
+dd 01ae97645h
+dd 03c5df9cfh
+dd 08d530d49h
+dd 0ab9819afh
+dd 04d0370b4h
+dd 040912bb8h
+dd 02516c932h
+dd 06a7dd326h
+dd 086d95f14h
+dd 06fff43eeh
+dd 024b67ad5h
+dd 0d2f8870ch
+dd 0ad2551d3h
+dd 0c9a046e8h
+dd 0e74fe10dh
+dd 072cd6774h
+dd 02b654a32h
+dd 00515d5ddh
+dd 077698e31h
+dd 0217a0bb4h
+dd 04fa542ech
+dd 07ceb733eh
+dd 0ff9506f6h
+dd 0dcff64c8h
+dd 03d87dd24h
+dd 03f7d7d4eh
+dd 06f0aa8cbh
+dd 0a02d6fdeh
+dd 043c995adh
+dd 0d6f58ddah
+dd 0fc0ec13dh
+dd 061338da6h
+dd 076f997c2h
+dd 0cf9efa3dh
+dd 0cc705f4fh
+dd 07714e0ech
+dd 0a1e874b4h
+dd 07ca7260eh
+dd 0b3593f28h
+dd 03d1d2ba8h
+dd 09ee6a2d7h
+dd 038bbeaceh
+dd 0f0a210b4h
+dd 07f733fd0h
+dd 0241dc0c7h
+dd 09db8372dh
+dd 0c0c61b66h
+dd 01f412179h
+dd 03d1e8c83h
+dd 03edf09f4h
+dd 06eca0856h
+dd 0e1de303dh
+dd 08bbf0ed1h
+dd 0cc763ac0h
+dd 0f67c4aech
+dd 09f67efd3h
+dd 0e8c74259h
+dd 04d0c5957h
+dd 0956e0496h
+dd 0900b4797h
+dd 0faf94e8ch
+dd 021e3aa4bh
+dd 096b2d822h
+dd 021c6df07h
+dd 0beaa8f15h
+dd 044954a50h
+dd 0d81d5039h
+dd 0679527d1h
+dd 005970dabh
+dd 06f5a6ecfh
+dd 0d76ad3f2h
+dd 00cb20e4fh
+dd 0e11d7cabh
+dd 01cafa78ah
+dd 0a3ef1dfdh
+dd 08b99ec05h
+dd 0f7c82dc0h
+dd 01e4c3e80h
+dd 05b1773ach
+dd 062a63005h
+dd 008e34e10h
+dd 0a57e6436h
+dd 0a040bde1h
+dd 0450bb17fh
+dd 0049928a0h
+dd 0271e6370h
+dd 0994e90abh
+dd 096d39a60h
+dd 0cabf07bfh
+dd 08d713c4dh
+dd 0f6c7d6a4h
+dd 035f065a7h
+dd 00b298576h
+dd 01427f7b3h
+dd 0f11416a2h
+dd 0fec56b87h
+dd 0d4ca89e0h
+dd 0f42438edh
+dd 0d13e1211h
+dd 09c548e19h
+dd 0aa8fbc56h
+dd 09fb6e3e3h
+dd 09dddb009h
+dd 0c2fc9591h
+dd 0c20877f0h
+dd 02ccef4a4h
+dd 0f2fb9cd9h
+dd 0488d97cbh
+dd 072fb5ffeh
+dd 0a402db1ch
+dd 06a5eaed5h
+dd 01144c410h
+dd 03b14d04ch
+dd 0e51a0e01h
+dd 007e9cd34h
+dd 0b10027beh
+dd 0acc60612h
+dd 07e692c87h
+dd 08a9e663bh
+dd 07d35869ah
+dd 05694ec23h
+dd 0524a30d7h
+dd 083008fbeh
+dd 04038b9aah
+dd 067538436h
+dd 00bdf8fa3h
+dd 01b5f835fh
+dd 049e255f1h
+dd 096d3e331h
+dd 0e7176e77h
+dd 01c773943h
+dd 0dc646868h
+dd 0d87f25d4h
+dd 0dc0cb44bh
+dd 0939a7e5bh
+dd 0be9e7dd1h
+dd 0ae6d53a6h
+dd 0060585efh
+dd 03e4fccafh
+dd 07c3ddff0h
+dd 01ed63a63h
+dd 0e2a45c53h
+dd 088288b66h
+dd 08b05e4a1h
+dd 03ae8563eh
+dd 043d67797h
+dd 0bc2a3060h
+dd 084aa7c2ch
+dd 01f01b359h
+dd 07b80d659h
+dd 05e91493ch
+dd 048cdc8e1h
+dd 0ae421876h
+dd 0639f3203h
+dd 0deb87411h
+dd 096a6381dh
+dd 05601be30h
+dd 05cb3100dh
+dd 0f8c122b0h
+dd 0a114e7e7h
+dd 04db2c32eh
+dd 0e6fe78f4h
+dd 06214b44ah
+dd 06897247fh
+dd 0ca205f4dh
+dd 03933fafah
+dd 0d50f6c1eh
+dd 0a0297053h
+dd 081096b20h
+dd 0e6dd4152h
+dd 0c2490addh
+dd 031994d7dh
+dd 0de301357h
+dd 091cf5ce4h
+dd 00012e1b4h
+dd 0f16a1db8h
+dd 0e3134b3bh
+dd 0bd41bef9h
+dd 062d27cf8h
+dd 0006a6522h
+dd 0caea5dd9h
+dd 028346d06h
+dd 0c5327a09h
+dd 0ec4b8e3ch
+dd 098329dc1h
+dd 08c5c1cd8h
+dd 0607aba1ch
+dd 081fcd342h
+dd 06ee680a1h
+dd 04329b684h
+dd 0a2b0610fh
+dd 05a6c272dh
+dd 05c6a54a0h
+dd 0458b20aeh
+dd 06df299f1h
+dd 077777d5eh
+dd 0d53237ffh
+dd 09757c62dh
+dd 085acbd01h
+dd 0f3c740f1h
+dd 007654103h
+dd 0efaa9752h
+dd 00e30f814h
+dd 0fb3445adh
+dd 0c8af376ch
+dd 022a5a4c3h
+dd 013055f7ch
+dd 086574f9eh
+dd 04716e072h
+dd 05f5398edh
+dd 0ab712d6ch
+dd 092bae556h
+dd 0c5348005h
+dd 0d29d2b51h
+dd 04edd3828h
+dd 0b1f5f5b6h
+dd 00eafc184h
+dd 059630706h
+dd 02c4e4c54h
+dd 05c813e5ah
+dd 0c197a48ch
+dd 0cff09b3eh
+dd 0f6c65b84h
+dd 0495dc55eh
+dd 0bb7f3178h
+dd 00057a914h
+dd 066255c65h
+dd 0dd5e24f3h
+dd 0c53add89h
+dd 06adee043h
+dd 06adbae42h
+dd 07d8fa268h
+dd 03f2df259h
+dd 0075c94cbh
+dd 03242b00eh
+dd 0773b8429h
+dd 0553c7dbdh
+dd 09297c762h
+dd 0662c7d2dh
+dd 04b5409d2h
+dd 0f34c711fh
+dd 088f2c77dh
+dd 0f71e954eh
+dd 0dff91ae0h
+dd 09dd45030h
+dd 0f85e994dh
+dd 003a40b7fh
+dd 0cc05606bh
+dd 0691e3084h
+dd 05b09fd00h
+dd 015d117d8h
+dd 03a8149fch
+dd 01e5620b1h
+dd 0fcd8e428h
+dd 050850fc6h
+dd 07a2693c5h
+dd 07be13d39h
+dd 0982e8bfah
+dd 02626376dh
+dd 072fce177h
+dd 09c98fb1eh
+dd 0c7653713h
+dd 0bf5ccad1h
+dd 0cd9e1816h
+dd 0a3459d65h
+dd 0099ad76ch
+dd 0711de13dh
+dd 085c46280h
+dd 04eadf7c8h
+dd 0dc0e5352h
+dd 050b4098dh
+dd 0c24dcb6fh
+dd 01e257306h
+dd 0aa1b6d40h
+dd 05ae4c8a7h
+dd 0a1a92953h
+dd 0d026a39ch
+dd 0b6c79a3fh
+dd 04de08fd8h
+dd 0c4a2462dh
+dd 0542a1d11h
+dd 006be5553h
+dd 0ecfec811h
+dd 06088ca54h
+dd 079fdd722h
+dd 0c5d5802fh
+dd 06bd5b518h
+dd 0c261e28bh
+dd 0ea3fc9e7h
+dd 0d0ae3bcah
+dd 07ce54acch
+dd 05f2534b7h
+dd 0e90259e4h
+dd 0ff585be5h
+dd 0b63c0fa8h
+dd 02e9b437dh
+dd 0fb63ac02h
+dd 0cdfb11b3h
+dd 09ede9e6ah
+dd 0e2a133f9h
+dd 08c53e1f2h
+dd 061f99c1bh
+dd 07dccd638h
+dd 0bc5025f5h
+dd 094d99210h
+dd 0f17a3847h
+dd 010eb80c4h
+dd 0ca155e20h
+dd 003ffb7d0h
+dd 030fee6a2h
+dd 085dec80eh
+dd 011e67411h
+dd 02a985eech
+dd 0439d4dc4h
+dd 0205fadd1h
+dd 0b533fb72h
+dd 09f76a202h
+dd 0ec850bf4h
+dd 04b0ccc82h
+dd 03fefb211h
+dd 0dca04b0fh
+dd 0e7c87224h
+dd 0eb1ab143h
+dd 01953d1eeh
+dd 0f06a34adh
+dd 037ba2a3ah
+dd 06aac90b6h
+dd 031f37f2dh
+dd 012860a68h
+dd 0cfda8bd8h
+dd 0fcae0225h
+dd 011b994c3h
+dd 02935cb23h
+dd 0496c1e0fh
+dd 0d2b8cd9ah
+dd 0639f7594h
+dd 0f6194b37h
+dd 0a3e61105h
+dd 0558749d8h
+dd 02ab5a366h
+dd 0c6e7f7afh
+dd 01bff0b05h
+dd 041a13816h
+dd 0f5da922fh
+dd 0d620cac1h
+dd 0cf87860ah
+dd 0adad91ffh
+dd 07d2ec083h
+dd 06640fd93h
+dd 038f86949h
+dd 0115a731ch
+dd 058f45475h
+dd 0b4aefdd7h
+dd 0082714d3h
+dd 0cedfd7e3h
+dd 012794e8eh
+dd 035c61293h
+dd 01beea2dfh
+dd 06859f2bdh
+dd 0a8f17469h
+dd 098ed97e8h
+dd 0f3874f09h
+dd 008260c0ah
+dd 00ba0a9bdh
+dd 05c65aa4bh
+dd 00a8d7076h
+dd 0dc8265b3h
+dd 023137874h
+dd 090e7a6bah
+dd 046fbf394h
+dd 0868dcf29h
+dd 0e48d7dadh
+dd 0f9175cceh
+dd 0b8c4f046h
+dd 0a39959dfh
+dd 0044b1dbch
+dd 0755a6b74h
+dd 0864d2622h
+dd 0b9f40681h
+dd 070d74e7fh
+dd 0157433afh
+dd 0f5022755h
+dd 0d7a0c54fh
+dd 0fafdeea6h
+dd 0b3b99997h
+dd 03593dc85h
+dd 0003321a1h
+dd 04834b924h
+dd 0546d057bh
+dd 09989eff7h
+dd 0ef62246ah
+dd 05eaeb70fh
+dd 052eabe95h
+dd 0ad5c3134h
+dd 097f1e269h
+dd 0daedf27ch
+dd 0b75b166dh
+dd 000326822h
+dd 0f93732b0h
+dd 08580b2f0h
+dd 01b7b29b9h
+dd 02428a0d9h
+dd 008ccbbf1h
+dd 0dcd40045h
+dd 0162800d4h
+dd 077c247a5h
+dd 0dc94201eh
+dd 02c8c8a56h
+dd 05f71ccf6h
+dd 0b54e0100h
+dd 0abd05595h
+dd 0e6a4e77fh
+dd 01714f791h
+dd 0eca22161h
+dd 0e7dfbdffh
+dd 07eea1221h
+dd 04723dd1ch
+dd 077726107h
+dd 00eedae3fh
+dd 0410beaa0h
+dd 0c1b0d03dh
+dd 0356bd2a1h
+dd 042c86924h
+dd 0720d3fcbh
+dd 05e6d2e28h
+dd 0a34e5246h
+dd 0ade94d30h
+dd 00fcfd51ah
+dd 0445f93abh
+dd 01cda743fh
+dd 0847970ebh
+dd 0e4352f3bh
+dd 0b45cd737h
+dd 074617a7ch
+dd 07a92e223h
+dd 066c1c00ah
+dd 05a8daf4eh
+dd 05bcc74e4h
+dd 0eec1c68eh
+dd 0d0fe1f36h
+dd 07ddaf90bh
+dd 01c3a31beh
+dd 01bf022b8h
+dd 0d8dcb959h
+dd 0249a6222h
+dd 0c3adf677h
+dd 0a8ec528bh
+dd 0507fc48eh
+dd 0c563f495h
+dd 014da39a2h
+dd 0567d9743h
+dd 010008ef7h
+dd 04b65fc06h
+dd 0d13856e0h
+dd 0616db274h
+dd 02ae52d01h
+dd 0d0b0dc9eh
+dd 0d9e92706h
+dd 0ce76feebh
+dd 03a9206a3h
+dd 0af039130h
+dd 0200a18ffh
+dd 068b566a5h
+dd 02bcea34bh
+dd 04a74022eh
+dd 0c66e1328h
+dd 0c2106411h
+dd 0da333499h
+dd 0fcfda4f0h
+dd 06a7a2a89h
+dd 02e2f5bcah
+dd 000894168h
+dd 026971593h
+dd 016506219h
+dd 0f13ac9c7h
+dd 02bdb147eh
+dd 0cf1b136bh
+dd 00da0e74ch
+dd 0a1e68a04h
+dd 01322b0ceh
+dd 0ead5ab84h
+dd 0928b5559h
+dd 0e4905317h
+dd 09b8bd2c2h
+dd 018a995ceh
+dd 03c56b936h
+dd 01eaf3b26h
+dd 0940b1ec6h
+dd 047686cb4h
+dd 0321adcfbh
+dd 07c98ebb1h
+dd 0c57b1345h
+dd 09186841ch
+dd 09d2c8b3eh
+dd 02b6d3135h
+dd 034d80e4ah
+dd 051ac1d3ah
+dd 08d496028h
+dd 067efb1b9h
+dd 0d5f763ach
+dd 0bd2a18d2h
+dd 0a6618582h
+dd 060f7623dh
+dd 0e33e0506h
+dd 03fd62814h
+dd 01dfad3ach
+dd 01e0c1f41h
+dd 0ef9c131ah
+dd 0d0b05ed7h
+dd 0a843e2adh
+dd 08f51b3b6h
+dd 05310e81fh
+dd 03d51e84dh
+dd 01a79f863h
+dd 0ca8486eeh
+dd 08061318fh
+dd 0fa27a84ch
+dd 0ab5f5af8h
+dd 0ab3dc0cch
+dd 0a03db71eh
+dd 0bf1e93a6h
+dd 0475752f0h
+dd 0ee91906ch
+dd 02ae296eeh
+dd 003967798h
+dd 0dfd8a426h
+dd 0c6fb9039h
+dd 0c4105102h
+dd 00c07fb56h
+dd 032e437e4h
+dd 0333d9a60h
+dd 0d7377295h
+dd 03f42f9e9h
+dd 08ad4a72fh
+dd 074c9686eh
+dd 099d765d8h
+dd 033e4ffe8h
+dd 059b96e98h
+dd 05a1fc38dh
+dd 0b48498b3h
+dd 0c42ae3dfh
+dd 01a567b93h
+dd 0562e43f8h
+dd 07ed338fch
+dd 0aaecebc1h
+dd 03ff4a98ch
+dd 0eed2d39fh
+dd 08740a84bh
+dd 0543354cah
+dd 00b14d0e5h
+dd 0dd537df9h
+dd 02c65a342h
+dd 02bf20c2fh
+dd 0d01d126bh
+dd 0e1feba0bh
+dd 047f97b28h
+dd 0105b2f59h
+dd 0e0259c49h
+dd 07ec45f4bh
+dd 07e8e2faah
+dd 0a9c49936h
+dd 080d1f38bh
+dd 085e9073ch
+dd 0398d70bdh
+dd 04cfe02b2h
+dd 0c5b07c38h
+dd 05782f35dh
+dd 0fa47692ch
+dd 050a0b419h
+dd 00d40cee7h
+dd 076496b57h
+dd 066940ba8h
+dd 04e759d45h
+dd 00ae947c5h
+dd 0f344ea7eh
+dd 011c173ebh
+dd 01cb778b9h
+dd 07b37bfe3h
+dd 0cd1e4d30h
+dd 08068fe77h
+dd 09320ec6bh
+dd 06c085924h
+dd 0fe8e3c29h
+dd 0515b9219h
+dd 0ce97ad21h
+dd 0d5c354f4h
+dd 025ddbb93h
+dd 05e756839h
+dd 0789901cfh
+dd 0bfe71217h
+dd 0a1ecd0f0h
+dd 04b134489h
+dd 027175672h
+dd 0ff67eec0h
+dd 09448b3dfh
+dd 099cd7994h
+dd 0f70a37ach
+dd 0c3b6fab1h
+dd 09be31e44h
+dd 02b724a2ch
+dd 04f6bfe15h
+dd 023dea40bh
+dd 075d6b418h
+dd 04d0c8206h
+dd 07d09a3f9h
+dd 0cc945f6fh
+dd 049d60b93h
+dd 02d35d1bch
+dd 0fb05f32dh
+dd 01dbce425h
+dd 0dd45ea78h
+dd 079383aafh
+dd 0eb4c7504h
+dd 016b4e7bah
+dd 0098cd260h
+dd 0c33dc67bh
+dd 0ac31c992h
+dd 096926a10h
+dd 0cfd5ba67h
+dd 03144d575h
+dd 009fb7858h
+dd 0ca6288bch
+dd 0fff313bch
+dd 0717f698eh
+dd 0beac579eh
+dd 0093c436bh
+dd 0a13efdc6h
+dd 004a4f1e3h
+dd 0021acbech
+dd 0c0578bbch
+dd 030e0c9bdh
+dd 08b15274ch
+dd 050046fdeh
+dd 0050f47bbh
+dd 044b57c90h
+dd 001852217h
+dd 091e08e69h
+dd 0e7118918h
+dd 0b043b6aah
+dd 045a326bfh
+dd 02d70b803h
+dd 070e1ea77h
+dd 0e1f8355eh
+dd 0e640925dh
+dd 02cf74272h
+dd 08f29b3cbh
+dd 054e528f9h
+dd 08b8d1d09h
+dd 02f97a17ah
+dd 045d2543fh
+dd 0974245d9h
+dd 05aed43b0h
+dd 010661dcfh
+dd 0d389146eh
+dd 00dc88c7ah
+dd 067221780h
+dd 006bf90bbh
+dd 02e85e08eh
+dd 058c6c728h
+dd 0634f11aeh
+dd 0a2001332h
+dd 045c7f755h
+dd 0c460b084h
+dd 0ec60aa55h
+dd 0a583f0c6h
+dd 05e722cd0h
+dd 0f0de5b2dh
+dd 0ec10b3a6h
+dd 09fee9f01h
+dd 0a382c9dbh
+dd 06a3cf375h
+dd 0adeeea0eh
+dd 03fb2a897h
+dd 00d7ed122h
+dd 09f555672h
+dd 073ffb8c0h
+dd 0af50bbb9h
+dd 0e2130f94h
+dd 0289164a8h
+dd 01889bac1h
+dd 0c06083a4h
+dd 07f48d511h
+dd 0f1284f58h
+dd 0e797027bh
+dd 0c7a6f4ddh
+dd 0cc675baeh
+dd 0ac576c6ah
+dd 0ffe2a8a9h
+dd 090bf90c3h
+dd 07feaf1f6h
+dd 0538cb2c5h
+dd 037f6144dh
+dd 03e6f7575h
+dd 08a294cefh
+dd 03cd60a11h
+dd 05d18e96bh
+dd 0a7252ebfh
+dd 0688deefch
+dd 0bb4d3cabh
+dd 0caf002bfh
+dd 09718964fh
+dd 027442915h
+dd 0f0d4cef9h
+dd 0e02a71c6h
+dd 0f2832518h
+dd 06415bc8eh
+dd 0728f5ed6h
+dd 065f39293h
+dd 0c066b42dh
+dd 0cb4eb957h
+dd 011ec53c0h
+dd 0cf3ef0cdh
+dd 010bd32cbh
+dd 05d2793a7h
+dd 02ed7d512h
+dd 04da1c4cch
+dd 04b3c1625h
+dd 0edf44381h
+dd 0a49099f7h
+dd 0cf334ff1h
+dd 0acc482deh
+dd 08da44bdbh
+dd 0f855d320h
+dd 0e4ef4146h
+dd 07897b406h
+dd 0131ec9b3h
+dd 0281d72eah
+dd 056e498d1h
+dd 0df5a4c9ch
+dd 0cae1025ah
+dd 07a7fc93dh
+dd 00c0c2f4ah
+dd 09b43ab5fh
+dd 019e70771h
+dd 02aff548ch
+dd 0b0086f72h
+dd 04ffa94f5h
+dd 0cd838c76h
+dd 0ca4b76cch
+dd 0159955fdh
+dd 0719b53b7h
+dd 081afdd2eh
+dd 0885aad13h
+dd 0ea98f777h
+dd 075110679h
+dd 0119563a7h
+dd 002d630d4h
+dd 04d336657h
+dd 0f6e089b8h
+dd 07cf4f4b5h
+dd 08b092726h
+dd 07ff9a44ch
+dd 03efd4e23h
+dd 0d3641c4eh
+dd 009b9b655h
+dd 00211e941h
+dd 025171f00h
+dd 0012bd002h
+dd 0d367a0e9h
+dd 0a119790bh
+dd 0f9747f11h
+dd 098ec198dh
+dd 003ade575h
+dd 08aff8e67h
+dd 0df65cd46h
+dd 0eecbb2adh
+dd 01eec7620h
+dd 00d152d21h
+dd 0aa9c9aeah
+dd 023305c98h
+dd 0b7a115a8h
+dd 00bfdbea9h
+dd 08483dbd1h
+dd 000316b7fh
+dd 0a00d90f6h
+dd 0536e3e38h
+dd 0f5ac0870h
+dd 070cb31e8h
+dd 0dbb7822bh
+dd 0a91f0444h
+dd 088f56c82h
+dd 00e9205fch
+dd 02a063394h
+dd 012120fe2h
+dd 0f3a74057h
+dd 031ba39ech
+dd 0679cc411h
+dd 0d067a980h
+dd 0552391b0h
+dd 037d388edh
+dd 037058563h
+dd 071f6f3a5h
+dd 0ad43be42h
+dd 01b290799h
+dd 005fd3c85h
+dd 0d12ad933h
+dd 083478a5bh
+dd 04d949439h
+dd 0b181b7edh
+dd 0f9769891h
+dd 00dbc2412h
+dd 097efcc6dh
+dd 019debfd6h
+dd 0f5c0af88h
+dd 04389ebfbh
+dd 0c2747166h
+dd 0ef903477h
+dd 0f2ab7e1eh
+dd 04552c645h
+dd 06c63c706h
+dd 012dd65d9h
+dd 0a681bf9fh
+dd 058da9da6h
+dd 0e0439d7dh
+dd 07255e396h
+dd 0ddc03281h
+dd 0b4eadb4fh
+dd 0bf01eb12h
+dd 01624d5a9h
+dd 06aae5b1dh
+dd 0fbb53843h
+dd 07bc1a17bh
+dd 0e259fd9bh
+dd 06d925d66h
+dd 0f85e8391h
+dd 0f87632e3h
+dd 0795aef74h
+dd 0475f5d47h
+dd 02e24b504h
+dd 0aa47a510h
+dd 004b9c4d9h
+dd 0c850ebfah
+dd 09b5a3dabh
+dd 066226dadh
+dd 0e586e6d1h
+dd 0ff24c2f9h
+dd 090140f86h
+dd 0ea12d9a1h
+dd 005a046cch
+dd 0bc27a806h
+dd 0c6995fdch
+dd 03b5c11a4h
+dd 051bad897h
+dd 01a8f96fbh
+dd 076ae28e3h
+dd 0a2b0009ch
+dd 04d183985h
+dd 078155824h
+dd 08b7b7da9h
+dd 0a1bfe8c9h
+dd 094b4367bh
+dd 072d114c8h
+dd 0e6871160h
+dd 01e990d88h
+dd 0a207de1dh
+dd 093e5b409h
+dd 0ea1a5190h
+dd 016a20c11h
+dd 00eb8b85ah
+dd 08ea3ea9ah
+dd 00a3ffde9h
+dd 09f13d391h
+dd 020e89018h
+dd 0d5e6c493h
+dd 039a72ee6h
+dd 0f08e6197h
+dd 0fdcd6668h
+dd 04afc4e7ch
+dd 0b0f04929h
+dd 02a168dd8h
+dd 0ad6ede06h
+dd 021616f8eh
+dd 0f21f652bh
+dd 0453acc09h
+dd 091725a97h
+dd 054289b0ah
+dd 088a430c0h
+dd 0023802adh
+dd 059573b61h
+dd 03032a3cbh
+dd 09fb44ccbh
+dd 0b4efbc70h
+dd 0341e3ac2h
+dd 003bd1d79h
+dd 0c3296405h
+dd 01a2d93ach
+dd 0c5567f6bh
+dd 0568f8fe9h
+dd 0b07d230dh
+dd 0df7b01a8h
+dd 0d5636b4dh
+dd 02ae4b317h
+dd 030d8609dh
+dd 0e32931fdh
+dd 0b29f4972h
+dd 016818909h
+dd 030675d26h
+dd 05d946083h
+dd 0474ce528h
+dd 0c8b8d47dh
+dd 0b824999ah
+dd 0c88da754h
+dd 0ff14eb5ch
+dd 0c5fa77bfh
+dd 0c9351d7bh
+dd 0fdcb4262h
+dd 04a88b661h
+dd 07a10a349h
+dd 044ec7fdch
+dd 099ee4528h
+dd 038e933bdh
+dd 054e32872h
+dd 0d8daf6abh
+dd 02672c862h
+dd 09f6f2fe5h
+dd 09c0909e1h
+dd 0ba01f330h
+dd 0e10f16c7h
+dd 030a73470h
+dd 0f8cebdfdh
+dd 024191bach
+dd 0ee2f9f35h
+dd 0c9f1ab06h
+dd 057334dceh
+dd 0a3c14f10h
+dd 0b678a50bh
+dd 0ec9e8a11h
+dd 03a378621h
+dd 046856985h
+dd 04ec07652h
+dd 0d670b777h
+dd 02250a78bh
+dd 0dbe4ca15h
+dd 03c81352dh
+dd 0de718816h
+dd 0f24a7c36h
+dd 0fbfaf10ch
+dd 054b299f3h
+dd 0b2d58723h
+dd 09516b643h
+dd 0c9d342abh
+dd 0e039bf74h
+dd 0e3388ae5h
+dd 0bae5b673h
+dd 09ce8fabbh
+dd 0e7db1e00h
+dd 0d4a8b6bah
+dd 0c842fda4h
+dd 09c5e14cch
+dd 0b26e1c2bh
+dd 097d2f823h
+dd 089570232h
+dd 04db3bf44h
+dd 0efdab235h
+dd 0cf6c1c42h
+dd 01bd4d6d7h
+dd 001251527h
+dd 0452a270dh
+dd 087f4a179h
+dd 0f807c8d6h
+dd 0d7586f17h
+dd 041aa5642h
+dd 09a6b3eaah
+dd 08a5ee4bdh
+dd 0293ed457h
+dd 0ab457d9bh
+dd 002ef3b21h
+dd 020cc1366h
+dd 079b1b4d3h
+dd 0f686f964h
+dd 097ef5d83h
+dd 06b4df264h
+dd 0e282f0fbh
+dd 023462acbh
+dd 0cca28177h
+dd 0138e233ah
+dd 0f1249ce9h
+dd 04cb5cd26h
+dd 0ac95e299h
+dd 098030f23h
+dd 0c736555fh
+dd 03a41b6fch
+dd 0f9facf04h
+dd 0f1e4816ch
+dd 0782c2125h
+dd 03f811ac1h
+dd 0ecf968efh
+dd 0d599c046h
+dd 0e756f38fh
+dd 09cdbc45dh
+dd 077579640h
+dd 0bcb3ca60h
+dd 001eb5ecdh
+dd 022c6ef2ah
+dd 052cf3784h
+dd 0dc15207bh
+dd 05de8964dh
+dd 0f6f6c3f2h
+dd 0a4dac491h
+dd 0c43bc1e1h
+dd 08e4991f1h
+dd 051a2355ch
+dd 029abb7c9h
+dd 045dc3fech
+dd 0bf779237h
+dd 067f11280h
+dd 01127425fh
+dd 072b59cbfh
+dd 030c17d3eh
+dd 0da207c6dh
+dd 05b8d56d2h
+dd 024c90261h
+dd 04f02425eh
+dd 085b7d2ffh
+dd 0d5645b64h
+dd 01a697398h
+dd 0c5709581h
+dd 0c3b02b00h
+dd 093e18355h
+dd 0944e8f5fh
+dd 047dcdbc9h
+dd 0f27cfc46h
+dd 045b29ddeh
+dd 0b7889f18h
+dd 0cc193520h
+dd 05d978f10h
+dd 0a7b19044h
+dd 0921519d8h
+dd 0ac44dfa1h
+dd 085850a7ah
+dd 030024fe8h
+dd 0d67779bdh
+dd 097e971f4h
+dd 0cc7be859h
+dd 07919beabh
+dd 051acd874h
+dd 0510763f6h
+dd 0f65895b9h
+dd 027cb60fah
+dd 0de9c448fh
+dd 0f653d3fbh
+dd 0edb7ce82h
+dd 08a6d171ch
+dd 0ffc64034h
+dd 06ded51d2h
+dd 0027dbb59h
+dd 0ca74d7bah
+dd 0cdf990eah
+dd 0d9960073h
+dd 084746551h
+dd 07cf3ff88h
+dd 0271d1eadh
+dd 07400ac80h
+dd 0597db0eeh
+dd 0a2d08ae8h
+dd 0f47b1e39h
+dd 000836d95h
+dd 0c8f01ae7h
+dd 07fe0e0c2h
+dd 05356ea89h
+dd 04c707feah
+dd 081357875h
+dd 0ce17f62eh
+dd 0c554f6deh
+dd 0942217a9h
+dd 06c72d612h
+dd 081c1b3a2h
+dd 07456c7dbh
+dd 0cf494c38h
+dd 0d7b9b480h
+dd 05623ace7h
+dd 0d48dd0e1h
+dd 06d08ef2ah
+dd 04ba0b5fah
+dd 090aa9458h
+dd 0a16d47dch
+dd 09f9265cdh
+dd 02cc1ef74h
+dd 07a6e844ah
+dd 029dba47ch
+dd 0ffd0d87dh
+dd 0989531f5h
+dd 0735c9987h
+dd 0de6b3012h
+dd 0e677b597h
+dd 0fb566792h
+dd 0efd352edh
+dd 06427ff46h
+dd 063b6cfc6h
+dd 007b19d2ah
+dd 0e2323b60h
+dd 065f77bfch
+dd 06468bb2ah
+dd 0800f1b98h
+dd 0d80e188bh
+dd 0da315803h
+dd 08d5c2c58h
+dd 07f930a74h
+dd 03d9194d8h
+dd 0cb3b4c56h
+dd 0a97aefech
+dd 034d2b760h
+dd 0a6ccda26h
+dd 0c84f8ddeh
+dd 0113b0ff6h
+dd 01969bb67h
+dd 0596701abh
+dd 085de1f06h
+dd 09b132227h
+dd 0a9490208h
+dd 01e357924h
+dd 0116f2222h
+dd 0fdb71170h
+dd 0fd714264h
+dd 0acc72922h
+dd 007ace6aah
+dd 0cf77adf4h
+dd 047d222f6h
+dd 095dc55eeh
+dd 014e31b07h
+dd 0d0f69452h
+dd 0ae2d153ch
+dd 011098664h
+dd 01ebbbe5eh
+dd 037c93bb6h
+dd 0fd5f6390h
+dd 04d4a7322h
+dd 035335543h
+dd 081a7307fh
+dd 08a8b5b77h
+dd 084d64ddfh
+dd 061aa8395h
+dd 09174e8aah
+dd 0eb88e82bh
+dd 042c50916h
+dd 0bc91f5b2h
+dd 06c5d9abch
+dd 0b8c31354h
+dd 0ae10f430h
+dd 0a75e8498h
+dd 0453e0189h
+dd 0acd6873fh
+dd 06af78a0bh
+dd 0af64ab5dh
+dd 01876edf5h
+dd 0d9651e1bh
+dd 0c807104eh
+dd 060afa043h
+dd 004858222h
+dd 0450bacdch
+dd 0009ffed9h
+dd 090639218h
+dd 0ab0b7726h
+dd 00d50c68dh
+dd 0c1c79549h
+dd 07a6fda2bh
+dd 03b9c10a9h
+dd 00874ba6dh
+dd 0de9afd1fh
+dd 073a7c07ah
+dd 0954d38b5h
+dd 05e124cd8h
+dd 04ef51555h
+dd 0585a4bd1h
+dd 01178bca0h
+dd 02411c28ch
+dd 08cfe8528h
+dd 0764ad1a0h
+dd 0406793aeh
+dd 06116b472h
+dd 0a1b4c9cbh
+dd 0ae51c441h
+dd 08d7185dbh
+dd 0164f39d3h
+dd 0f250b159h
+dd 0bb357bd2h
+dd 0a227b644h
+dd 0f021271bh
+dd 0b01857fah
+dd 05b519be0h
+dd 061a5ee6dh
+dd 0e81ba86dh
+dd 03047f6c1h
+dd 092ee8bdch
+dd 0011f923bh
+dd 056df656fh
+dd 0baa49a8ah
+dd 05ca9e6f4h
+dd 0e6576d1ah
+dd 0c4829604h
+dd 055064869h
+dd 06a8d0e55h
+dd 07ce43ecfh
+dd 014d33e75h
+dd 07918b02ah
+dd 01445b2afh
+dd 086bff30fh
+dd 0a5684e26h
+dd 0b9377be1h
+dd 092ec90adh
+dd 04d5e2e8bh
+dd 057108e6fh
+dd 037e87ec0h
+dd 060f0c516h
+dd 00a43e86ch
+dd 0e72ff3fbh
+dd 037d03f85h
+dd 00e3319c1h
+dd 04f316d8eh
+dd 0d8bc56ffh
+dd 050420bc0h
+dd 00832cf3bh
+dd 036a791bfh
+dd 073c94d42h
+dd 00be8e91dh
+dd 0cf14da26h
+dd 064edf5c0h
+dd 0e7c412fch
+dd 05ca5b5dch
+dd 0d3ba3187h
+dd 0090e36d6h
+dd 008cd1eeeh
+dd 017624ee9h
+dd 03e7fc940h
+dd 0850821bfh
+dd 0474c4936h
+dd 030b242e5h
+dd 037551cb9h
+dd 01d556ee0h
+dd 073f52833h
+dd 06b33b5a4h
+dd 059cc5510h
+dd 0feb0e6ech
+dd 01e88318fh
+dd 0ee8e06f1h
+dd 014eed443h
+dd 079c58401h
+dd 0c1b84107h
+dd 0042a3fb0h
+dd 0d59e0f95h
+dd 0b6de24b9h
+dd 06fff02dah
+dd 001dfd7b3h
+dd 00adf386ch
+dd 012e809b2h
+dd 06b5966fbh
+dd 005d464e8h
+dd 0bb438881h
+dd 0399149b5h
+dd 02fd03b23h
+dd 0eb0ca627h
+dd 020f49b5fh
+dd 07dffa772h
+dd 0e5be4988h
+dd 0acd8f850h
+dd 0cd4289a9h
+dd 04aea2cb3h
+dd 0d339eb82h
+dd 0937d086dh
+dd 039038b55h
+dd 0faf17624h
+dd 0ab87d28ah
+dd 02c644656h
+dd 0abea9bebh
+dd 07dd5a079h
+dd 084838355h
+dd 00a3e8b6eh
+dd 0da10d046h
+dd 07f862d36h
+dd 053fc80adh
+dd 0fc8c373eh
+dd 048ed5398h
+dd 0cad9e6a1h
+dd 0facad0afh
+dd 05a9fbeach
+dd 0dffef607h
+dd 0446338f7h
+dd 0a32408d9h
+dd 05daf08dbh
+dd 0d1da1583h
+dd 017605810h
+dd 030facfa6h
+dd 0fd45fa9fh
+dd 07366a648h
+dd 0a3225934h
+dd 0d347db3dh
+dd 0453698dbh
+dd 0c0a85044h
+dd 069c45be7h
+dd 0d910e221h
+dd 012d3c8adh
+dd 036aa4585h
+dd 023a6895ah
+dd 0fe594a77h
+dd 0646abb08h
+dd 0c4359140h
+dd 08beec479h
+dd 0ddecdb9ch
+dd 0e05ffeddh
+dd 01106cb7ah
+dd 0976ad6dfh
+dd 0871d700fh
+dd 0ce891e39h
+dd 0c9cbe5abh
+dd 09cb11445h
+dd 054ee813fh
+dd 092ec2082h
+dd 088abed99h
+dd 086e01415h
+dd 0bf6f2e9bh
+dd 0bd00e339h
+dd 0ea3b4e53h
+dd 023605d2bh
+dd 064ba651ch
+dd 04525e50bh
+dd 0dda8c673h
+dd 0e874af03h
+dd 079f7fbc3h
+dd 09d6c8bf6h
+dd 04408db20h
+dd 09d362669h
+dd 0996db5adh
+dd 0a8ad8cc5h
+dd 0ea4a67e5h
+dd 0df88df37h
+dd 03d8fe318h
+dd 0c55adc5bh
+dd 04244b02ch
+dd 0ad789ee2h
+dd 0eb8c2224h
+dd 06427dbbdh
+dd 086da033ah
+dd 0e888d29ah
+dd 0971c35b3h
+dd 0218f17dah
+dd 0d5a5432eh
+dd 0ee914725h
+dd 025337f58h
+dd 072dc1289h
+dd 04b8cb50ah
+dd 0dcda5865h
+dd 0bab51f80h
+dd 05af84fe7h
+dd 087b553e7h
+dd 033e4a7f8h
+dd 0dbdbf5b4h
+dd 070f36ca8h
+dd 0e208de4ah
+dd 0dcdad8bdh
+dd 0d2ad5f4ch
+dd 0f2703dfch
+dd 03416b570h
+dd 0a61e5009h
+dd 01b0c6e63h
+dd 09ac707c7h
+dd 01fedcf27h
+dd 0a9bb18abh
+dd 0a78b2650h
+dd 01bb604f8h
+dd 09eea4b04h
+dd 00c893f7ah
+dd 09e9d77f6h
+dd 0102dcf74h
+dd 011791abah
+dd 0291ff03dh
+dd 01f2f1f37h
+dd 0cf3f7dafh
+dd 0e93b3945h
+dd 0d76231e3h
+dd 0cfe0ef22h
+dd 027c270b6h
+dd 0b5499c30h
+dd 0f1032a5bh
+dd 070966f5ch
+dd 07d4fe647h
+dd 0366633b7h
+dd 0bcbc8e60h
+dd 0dee8a5ebh
+dd 05c5bbb07h
+dd 0d9c8e1fch
+dd 0dfe9bc12h
+dd 0d662a9f6h
+dd 0c1668c89h
+dd 05847fd95h
+dd 079b1e8bfh
+dd 08c5b0247h
+dd 079d08fd9h
+dd 01477dea2h
+dd 0738032fch
+dd 0b4d73487h
+dd 0ea6f6343h
+dd 073d0f2c0h
+dd 01cd3372fh
+dd 086d52af0h
+dd 020679930h
+dd 0607025c5h
+dd 00c461705h
+dd 002c58852h
+dd 040eeb155h
+dd 07be2babah
+dd 04e9bd2d4h
+dd 086ac73dah
+dd 04c82842fh
+dd 0c5c9ccfeh
+dd 0772d1ca2h
+dd 043741c58h
+dd 0d8617dd9h
+dd 057befeedh
+dd 05b8438a5h
+dd 0a04649ebh
+dd 09eb2c198h
+dd 0fe0a3cc7h
+dd 0039111e1h
+dd 07dafd0fdh
+dd 0f8968e1ah
+dd 01c8cf820h
+dd 02d3aff38h
+dd 0d5bf55d6h
+dd 03a7869b1h
+dd 08cd296fbh
+dd 0c6f8585bh
+dd 031268385h
+dd 09621a416h
+dd 06ef6cb69h
+dd 0f39ba67ch
+dd 050549d65h
+dd 071214205h
+dd 0702d54d5h
+dd 0c600cc26h
+dd 0a881ea4ch
+dd 0106dbf04h
+dd 038511e0bh
+dd 0e85d2019h
+dd 0bf0b6969h
+dd 03c9ef716h
+dd 0a0b51892h
+dd 07c38fadfh
+dd 0b8494069h
+dd 0eb4599efh
+dd 050832d8fh
+dd 0394ffd02h
+dd 0343bec32h
+dd 06ee21ec5h
+dd 00e0baf2ch
+dd 0616d58d0h
+dd 0da208f0fh
+dd 094811580h
+dd 05695eb7eh
+dd 020aca3a0h
+dd 0d81508c2h
+dd 02c619861h
+dd 07b066a08h
+dd 015f6b17eh
+dd 0e1791a15h
+dd 0bb0b6934h
+dd 0ade93745h
+dd 0d87c30e5h
+dd 07876531ah
+dd 0ec368d0dh
+dd 0e17cb75dh
+dd 04a409f0eh
+dd 0f862b72eh
+dd 04252aec9h
+dd 04bbc1f1bh
+dd 0411e1e37h
+dd 021c97e96h
+dd 0c4a28838h
+dd 06bf2ffd5h
+dd 047c08e25h
+dd 075683a64h
+dd 06cec586fh
+dd 0d3304f91h
+dd 08db76424h
+dd 07a5def52h
+dd 0cc9e19b5h
+dd 041aff921h
+dd 0b4fe8f77h
+dd 0ab678666h
+dd 092f5ecabh
+dd 050264efah
+dd 0784ef56eh
+dd 0847e160ah
+dd 01762bbf3h
+dd 09d28116bh
+dd 0dff3a54dh
+dd 00beaa13fh
+dd 09423d2eah
+dd 0fe670c1dh
+dd 0ef15c21ch
+dd 0c323e21bh
+dd 042395a87h
+dd 06c336318h
+dd 0f852506ah
+dd 0a66a6e4ah
+dd 0a8422382h
+dd 07dd1ea12h
+dd 0f3592dc5h
+dd 0b95d7a6ah
+dd 051272b10h
+dd 0453630dah
+dd 099dc162dh
+dd 089e63229h
+dd 031be2fd6h
+dd 04d4bd367h
+dd 04fbd8ddah
+dd 0b8903345h
+dd 05d6b4abah
+dd 037d2e8dch
+dd 00e93b16bh
+dd 0c0eeedc4h
+dd 08489ac9fh
+dd 0f88ed52ah
+dd 0078dd97fh
+dd 075bc5af2h
+dd 0fa5a3211h
+dd 0699beb79h
+dd 0dbac97cdh
+dd 07a668f65h
+dd 0916f5b2eh
+dd 00519cfc4h
+dd 09659bc3dh
+dd 058796a7fh
+dd 06564502fh
+dd 0793bb4f9h
+dd 0c379b47eh
+dd 07d9f5372h
+dd 0377a6b4dh
+dd 05c49990ah
+dd 04e4bdbdbh
+dd 00cada312h
+dd 0809e6289h
+dd 02716dc78h
+dd 02ece89d3h
+dd 00cc1dbddh
+dd 0813ae566h
+dd 0690e3c4fh
+dd 04c1cbef3h
+dd 0148d2b29h
+dd 050d36396h
+dd 0022a06d4h
+dd 0a62be30dh
+dd 023ef74c4h
+dd 015a05be5h
+dd 001eede0bh
+dd 0a3f1e0ddh
+dd 083603d1ah
+dd 08f5356b4h
+dd 0ad577d4fh
+dd 0cd8a67e7h
+dd 02df170adh
+dd 0a4357001h
+dd 0290f21c5h
+dd 09a7be041h
+dd 012721bb8h
+dd 07020d728h
+dd 0e351b023h
+dd 07db80365h
+dd 0793e7861h
+dd 0276a586ch
+dd 0ea2e667bh
+dd 053acded2h
+dd 0a313eaf3h
+dd 092fdb9b8h
+dd 01f4e6503h
+dd 017bc8a98h
+dd 0cf72c6a5h
+dd 011581ee1h
+dd 0103b6a3bh
+dd 027ef8819h
+dd 0cfb0c134h
+dd 076b09339h
+dd 0233dbfbbh
+dd 0e184899eh
+dd 015be4bf5h
+dd 0bc5446edh
+dd 03c4f7385h
+dd 06e4c976ch
+dd 0dab22b1bh
+dd 012dc90f0h
+dd 09e8bdbb0h
+dd 01b8ba036h
+dd 0c01d09a6h
+dd 0b23a6c4fh
+dd 0ea1f461ah
+dd 0760e96f0h
+dd 06eb90188h
+dd 0bfc8a77ah
+dd 09d0eb372h
+dd 006584605h
+dd 0e3dd989bh
+dd 064752e73h
+dd 018eccad3h
+dd 0b760116fh
+dd 0f5f57a11h
+dd 02afde95ah
+dd 0da6f2e6eh
+dd 0a81fd99eh
+dd 0bada66bch
+dd 0df987da6h
+dd 017e611a6h
+dd 064e781c1h
+dd 0444d616fh
+dd 04d21e525h
+dd 0b33a1392h
+dd 023187928h
+dd 0173c68a3h
+dd 054256445h
+dd 0a61b07cch
+dd 0f7dc081fh
+dd 0d2068a6dh
+dd 0707c8276h
+dd 0e972f8cfh
+dd 018422f3fh
+dd 0c511a270h
+dd 0af28ea1bh
+dd 0468e1bb7h
+dd 0d0db9da6h
+dd 072278473h
+dd 0f03e9508h
+dd 0f4b5e34bh
+dd 097b156a3h
+dd 0b44ee5d0h
+dd 06a418308h
+dd 08340bcddh
+dd 030a6e024h
+dd 0a26bb4b4h
+dd 00bedf25dh
+dd 073e70530h
+dd 0c338f9c3h
+dd 0519951b6h
+dd 0b28e7abeh
+dd 0cea6ab1dh
+dd 06e02f147h
+dd 0ed7fcd14h
+dd 032f00100h
+dd 027bfc31ch
+dd 0e58129c5h
+dd 0586f01abh
+dd 07d11f8ddh
+dd 09877f445h
+dd 0b6e12695h
+dd 086eba164h
+dd 071c643dbh
+dd 02d07b4dbh
+dd 0eb4fde4ah
+dd 068e20950h
+dd 0e4e525c7h
+dd 0e2cbeddbh
+dd 0070a9e20h
+dd 025d84f82h
+dd 038d08959h
+dd 027d9dbaeh
+dd 0d37d001bh
+dd 0f796dd92h
+dd 0a9e80517h
+dd 01d09bef2h
+dd 00bd8ebedh
+dd 0fc1b92b9h
+dd 0d314364fh
+dd 0c80357ceh
+dd 0a89992ach
+dd 09b9679cfh
+dd 052b13eebh
+dd 08652f61fh
+dd 05431fa0bh
+dd 04b2e5e28h
+dd 0e3f783b1h
+dd 06372120ah
+dd 018d20da2h
+dd 0e2457ca5h
+dd 0fcd29477h
+dd 067435ea9h
+dd 05cf741f9h
+dd 064b03939h
+dd 0bad43e83h
+dd 0e765a7beh
+dd 08b80b8e1h
+dd 0772bf08ah
+dd 085b5997dh
+dd 0f325419eh
+dd 065a07530h
+dd 0fbfd3889h
+dd 060e0099bh
+dd 0d1a10947h
+dd 0773edddch
+dd 0d404a230h
+dd 0d235a0b9h
+dd 0c23a26b6h
+dd 0a233c623h
+dd 0f6a9ff72h
+dd 00b4ea394h
+dd 0d5579c20h
+dd 000f43c36h
+dd 0a1da244bh
+dd 008f2707ah
+dd 051aacf22h
+dd 0d8ae8cf3h
+dd 0acd1b1d6h
+dd 06dfd5881h
+dd 01095287ah
+dd 045bf5a8ch
+dd 0d32a757bh
+dd 0e37575cah
+dd 082590b48h
+dd 0050cb5cbh
+dd 05693ee32h
+dd 05c8ba578h
+dd 081dac1b8h
+dd 0f0a583edh
+dd 05af10449h
+dd 052d138dfh
+dd 0b59f3af8h
+dd 0030a6213h
+dd 0cde66214h
+dd 0eec77e5bh
+dd 0f4c983c2h
+dd 01e6afd5fh
+dd 076bfaddeh
+dd 0e3e04626h
+dd 0920c2e34h
+dd 0129876a1h
+dd 000a69447h
+dd 0197676d1h
+dd 0376b1a29h
+dd 0c649970ah
+dd 0ac177f3fh
+dd 017fc0014h
+dd 099b12052h
+dd 0104b4fc6h
+dd 03caf4fb8h
+dd 076b4a1d3h
+dd 08b99506dh
+dd 09bb98d2ch
+dd 0c055cb4eh
+dd 0a8b3831ch
+dd 060783e56h
+dd 04c2d9cddh
+dd 005a51af3h
+dd 0192d8ae4h
+dd 03ca0955eh
+dd 0d20dfe17h
+dd 0171e5323h
+dd 0f8b636b9h
+dd 01f0acea2h
+dd 05e73acc4h
+dd 03e49ad93h
+dd 0662a5f55h
+dd 0b67e6c56h
+dd 0bade512ah
+dd 069bc63deh
+dd 08de3154bh
+dd 0d1d317b2h
+dd 045c1776eh
+dd 04ea07e56h
+dd 0f0850f03h
+dd 065d8e1d0h
+dd 061e1907ah
+dd 00f109e7dh
+dd 0b1398b22h
+dd 003e5cf74h
+dd 0cda2a293h
+dd 03dc6b2bfh
+dd 0954cad47h
+dd 0a30277ffh
+dd 0f3f12d54h
+dd 0340c2a2eh
+dd 06f9621fdh
+dd 0a12bef51h
+dd 09fbcbadeh
+dd 02e00ac92h
+dd 0ecf272e4h
+dd 09d422e1ah
+dd 003b13a43h
+dd 06d4e8392h
+dd 044cc3f1eh
+dd 0d733cb36h
+dd 044982db7h
+dd 013bd0e01h
+dd 0d65c742ah
+dd 0ee7e426ch
+dd 0a1ea9358h
+dd 0dc3b64dch
+dd 0eb25ee2fh
+dd 00886be7dh
+dd 0a49819d3h
+dd 0a0a7c544h
+dd 0b12b2c01h
+dd 0a6937bfeh
+dd 0dad12eb8h
+dd 0dc97a803h
+dd 0c2ea7e69h
+dd 0a13e1ee9h
+dd 0a8d3a59ch
+dd 08b878cc5h
+dd 0e15a8f0eh
+dd 00c13a8afh
+dd 04e0bf247h
+dd 02054e24dh
+dd 0e1e419e5h
+dd 093f3fe66h
+dd 0302a0376h
+dd 02c14bcf2h
+dd 0aae2d734h
+dd 00f22f0abh
+dd 023c637abh
+dd 0cf7264fbh
+dd 00e0ee722h
+dd 0ad90ea4fh
+dd 0aca1b0f5h
+dd 0f41dc53fh
+dd 04e44a504h
+dd 04b49ec08h
+dd 02934ed56h
+dd 05ba49c65h
+dd 0a8159ee1h
+dd 0527c42bdh
+dd 00564a13ah
+dd 0929ba951h
+dd 08b40ebd4h
+dd 06112d794h
+dd 09dc2d6d2h
+dd 00fb38dcah
+dd 090885890h
+dd 08be5f523h
+dd 0be1f57b4h
+dd 0e702bf68h
+dd 04cd87bdch
+dd 00484d3f5h
+dd 00eba80c0h
+dd 0302ed4bdh
+dd 039890a7ch
+dd 059468590h
+dd 097493a25h
+dd 0b859568fh
+dd 0ac32055dh
+dd 05422236ch
+dd 0bec40da8h
+dd 04bfa3d85h
+dd 037b10823h
+dd 0964d6118h
+dd 0d4e13174h
+dd 00f2ab0e2h
+dd 0cf42b0bdh
+dd 05d688222h
+dd 0febbf144h
+dd 04c2eefafh
+dd 05fe2e01dh
+dd 0a663691dh
+dd 0c5fc537fh
+dd 04fca899dh
+dd 0901f46cbh
+dd 09a999f97h
+dd 0731e26c1h
+dd 00d5f1bd2h
+dd 01ac15ef2h
+dd 05a224acbh
+dd 0c5c115c2h
+dd 0b56da960h
+dd 08b28dd65h
+dd 07a44cda0h
+dd 0eb1bcf8dh
+dd 09bab9932h
+dd 04e1615f9h
+dd 021eb7eb5h
+dd 099a14cb8h
+dd 0cb2587bfh
+dd 0abd79f71h
+dd 0790a01beh
+dd 068d02167h
+dd 0063d844ah
+dd 0929a8a71h
+dd 08bd72c2fh
+dd 0110356abh
+dd 02e962abah
+dd 0aedc5182h
+dd 0521b3f01h
+dd 031e6a934h
+dd 04a4edca8h
+dd 0b8bde248h
+dd 0e81753cdh
+dd 036cf2c64h
+dd 02d11321ah
+dd 0aaf1fa93h
+dd 044e830b1h
+dd 0534738e0h
+dd 0e8315acah
+dd 0a558cf80h
+dd 03bf72637h
+dd 0c542a7d0h
+dd 0e007eb35h
+dd 05497af82h
+dd 01c0a655dh
+dd 0ab111dbeh
+dd 044593edfh
+dd 001256fc6h
+dd 038655a71h
+dd 013280e8dh
+dd 0e98f69c0h
+dd 063052954h
+dd 00d2d99efh
+dd 0915bcadeh
+dd 0ea927773h
+dd 0f2806a2ch
+dd 0f49194a4h
+dd 001690efah
+dd 0561d8ee4h
+dd 0acd03f7bh
+dd 0a1dde453h
+dd 0a5127d8fh
+dd 0c22e8f20h
+dd 04e4470dfh
+dd 02288655bh
+dd 07c0512f1h
+dd 0e0bbb752h
+dd 014e59694h
+dd 0c7d41de5h
+dd 0655026f1h
+dd 0694669cch
+dd 017150045h
+dd 08e105d53h
+dd 04ade6fd1h
+dd 0440f8acfh
+dd 0fc503611h
+dd 0bcdea107h
+dd 05a63d454h
+dd 027ab4281h
+dd 03a7d7e38h
+dd 0e4f331f1h
+dd 0d830b3a1h
+dd 0377d92f0h
+dd 0ebdd02e8h
+dd 0051d9526h
+dd 0fb9adca6h
+dd 008e482c2h
+dd 06a164de2h
+dd 0914fe9ffh
+dd 05f88de27h
+dd 0545268a1h
+dd 04eb10f83h
+dd 05a4fb383h
+dd 0d4db0713h
+dd 0bc1f1048h
+dd 0615e2491h
+dd 0fa3faa3fh
+dd 0c843a1a6h
+dd 0e2f503bfh
+dd 0e494c06eh
+dd 0e969636fh
+dd 0ba7c2384h
+dd 0ce6191c7h
+dd 08847e07dh
+dd 0cd3f2d7bh
+dd 05ed57e08h
+dd 04233eaadh
+dd 0bc29ea2bh
+dd 0dcc556f4h
+dd 010ac3a4dh
+dd 0dd6a8131h
+dd 0874eb4f0h
+dd 07fdcb757h
+dd 0e076f772h
+dd 05a7e6a37h
+dd 099b57f50h
+dd 0e1eaeee2h
+dd 078096ae4h
+dd 001dfdcb7h
+dd 058268f74h
+dd 0f19ba63bh
+dd 09c90685dh
+dd 0234ce5e6h
+dd 043ab417dh
+dd 093c7329ah
+dd 030da35f9h
+dd 0d87e97ffh
+dd 0ed64b1beh
+dd 05c71a121h
+dd 04049e360h
+dd 0fdb0457bh
+dd 0181bd5d1h
+dd 0d2f4ed23h
+dd 0215977e5h
+dd 015de5497h
+dd 0e3a1f0d2h
+dd 009b5962dh
+dd 0bf04b568h
+dd 0df930e6bh
+dd 0b69cda49h
+dd 078dd62fdh
+dd 074e00d0dh
+dd 008c85568h
+dd 00bb4545dh
+dd 0fccd2ec7h
+dd 0a759bf9bh
+dd 0c1661aedh
+dd 069e5be40h
+dd 0bced885ah
+dd 02aa5b44bh
+dd 0157a9cc4h
+dd 00e6e7e53h
+dd 04712c612h
+dd 046da2564h
+dd 0252d42a5h
+dd 0c2b4a383h
+dd 092b625cdh
+dd 0724dad36h
+dd 06f01d3edh
+dd 058181fa6h
+dd 04c349e60h
+dd 07600e833h
+dd 01d6a7177h
+dd 0dc589718h
+dd 0e9bd3fa7h
+dd 02fe3ff9fh
+dd 0461fd688h
+dd 0775d418ah
+dd 09e1bc1beh
+dd 0ca0718e4h
+dd 0f78768c0h
+dd 03fab217fh
+dd 08077aad5h
+dd 085cc996eh
+dd 0c852b6fah
+dd 04ef37cd6h
+dd 0729fbd98h
+dd 097e0ab51h
+dd 0bf9d9888h
+dd 0c6b733f1h
+dd 099b527aeh
+dd 0392cd11dh
+dd 058f1a313h
+dd 0fc7608a7h
+dd 0a3d735c7h
+dd 07193863ah
+dd 051b32defh
+dd 0f30a4bfah
+dd 0b7c05ef2h
+dd 0b3a37be0h
+dd 0eb04aba7h
+dd 0e28faa66h
+dd 0219afc60h
+dd 0d6c7c798h
+dd 0a30d3fd5h
+dd 0c58b7274h
+dd 06e3639e1h
+dd 05e48a0c7h
+dd 06d9b86abh
+dd 0e581707bh
+dd 0e82437b5h
+dd 082b764e2h
+dd 0a079a836h
+dd 0a58689cch
+dd 0f3e2c2dch
+dd 09b699346h
+dd 016d58b8dh
+dd 0631e1631h
+dd 0837c451ch
+dd 0bbbceab3h
+dd 0041e0878h
+dd 03e6034dah
+dd 04412552dh
+dd 07048a6fdh
+dd 0d395fba1h
+dd 078865830h
+dd 00d2de9bdh
+dd 0a1b1ccf1h
+dd 0394d79edh
+dd 08d5bdedbh
+dd 060ac56b3h
+dd 0fea347ceh
+dd 028d60a0ch
+dd 0f802355ah
+dd 0f9c09feeh
+dd 0eeda4454h
+dd 0d56995d9h
+dd 057a59bfch
+dd 0491e5efeh
+dd 0d26706e9h
+dd 097f9115eh
+dd 080c1d1aeh
+dd 05c5826e2h
+dd 01f0377a0h
+dd 0ccc22cbdh
+dd 0e9807abch
+dd 0f392ba59h
+dd 02211fe53h
+dd 0ecd03dffh
+dd 05f77c4e0h
+dd 029a8219fh
+dd 019178989h
+dd 07bc3f5d5h
+dd 04a0d2582h
+dd 0d39cc749h
+dd 00e2dfebdh
+dd 05585a621h
+dd 01c7ccb7bh
+dd 039f13e54h
+dd 04aa7051fh
+dd 03507278ah
+dd 015864626h
+dd 00b4e693bh
+dd 09995ac1dh
+dd 0c0b9db09h
+dd 0aabaa748h
+dd 02774c205h
+dd 0e79ad54dh
+dd 08718b84bh
+dd 07cde30a8h
+dd 037fdc849h
+dd 038e96baeh
+dd 0e22d2726h
+dd 0206c901fh
+dd 0dbc7cbe7h
+dd 02022711dh
+dd 026d09e2dh
+dd 03f4e6661h
+dd 02f167d55h
+dd 02a7a1ca2h
+dd 02faa3f0eh
+dd 09984a0d0h
+dd 072d9bc15h
+dd 0994b26f1h
+dd 055ef06a8h
+dd 06e18e83eh
+dd 00354a39ah
+dd 03ef0c7abh
+dd 0612b0a7ah
+dd 0900c7a79h
+dd 0def7b832h
+dd 0e64a7f8bh
+dd 0365d059ch
+dd 0d7d4a426h
+dd 0d8421793h
+dd 0f42594b7h
+dd 01c52780ah
+dd 0d6d4b28bh
+dd 04b403ae3h
+dd 02e7a8ac1h
+dd 0137b09f0h
+dd 0f4e4ea43h
+dd 08b226c4bh
+dd 040b59117h
+dd 0f0cedcbeh
+dd 0420c79d4h
+dd 0cb2eb96ch
+dd 05c2777c6h
+dd 03060b71dh
+dd 0309ee4e7h
+dd 0045e146dh
+dd 042d64fcbh
+dd 06f26fea6h
+dd 0bfd6193ah
+dd 00043004ah
+dd 0dc64f2e8h
+dd 0b40869f2h
+dd 007fa19dch
+dd 0fedee0c5h
+dd 0d16d0a33h
+dd 074934993h
+dd 0b0956c3dh
+dd 01f8c54f2h
+dd 09ae53147h
+dd 0abcabf74h
+dd 0beed0010h
+dd 094800949h
+dd 09b8b97fah
+dd 031d0f99dh
+dd 040f6e7bch
+dd 0196904fbh
+dd 053461707h
+dd 0e118cc3fh
+dd 068d8d985h
+dd 084f2b42ah
+dd 0a7cd782eh
+dd 0ea78277ah
+dd 0624c7052h
+dd 08b0b28cbh
+dd 0c3d34254h
+dd 0a9c6b5b4h
+dd 014dd6c27h
+dd 08c8e1b69h
+dd 09faa90f2h
+dd 08b90c4f3h
+dd 075a6fba6h
+dd 0cfab8df8h
+dd 06d2412a6h
+dd 054cb8323h
+dd 00630329bh
+dd 0d95dc57bh
+dd 0f02fef69h
+dd 06b0ec246h
+dd 0f2c92cf1h
+dd 0b440ed03h
+dd 0a614e7cdh
+dd 0f0d1b3a7h
+dd 00a0e460dh
+dd 0d496a098h
+dd 00087552ch
+dd 031b2db2eh
+dd 06e548c96h
+dd 0349abff7h
+dd 0540c7441h
+dd 07d31fe1ch
+dd 0c775d765h
+dd 0aeb9561ah
+dd 0c58926edh
+dd 0faa66972h
+dd 0673346e4h
+dd 0ec7e3323h
+dd 0550e1873h
+dd 0d83aaf67h
+dd 05909b225h
+dd 0e3ef6d41h
+dd 083bb4875h
+dd 042d5d9a2h
+dd 00ea4657eh
+dd 08e6518ddh
+dd 01f45a176h
+dd 0477110adh
+dd 0ac6fc9a3h
+dd 06b1207adh
+dd 0ea2203b3h
+dd 01c6c3aceh
+dd 0a0cda8b6h
+dd 0f5ec0a4ah
+dd 07ec75863h
+dd 0a70a9c5dh
+dd 07d7e2369h
+dd 030126f00h
+dd 03ef65111h
+dd 00aa441b6h
+dd 0359c1973h
+dd 06063745bh
+dd 016b04f71h
+dd 07d41a538h
+dd 002d2d277h
+dd 096c4c58fh
+dd 0a4a921b0h
+dd 08dd30e72h
+dd 05b7ef87eh
+dd 060fd1202h
+dd 0886fce41h
+dd 0854271c6h
+dd 0238933cch
+dd 0c0858628h
+dd 01ede2990h
+dd 01773eaedh
+dd 0765b40e8h
+dd 0a79a1e6eh
+dd 0387a80f4h
+dd 05c7e7d3bh
+dd 06e682159h
+dd 0dc1c27e1h
+dd 0572073b8h
+dd 099f79aeeh
+dd 0a934eb2ah
+dd 0831996bdh
+dd 04b26b425h
+dd 0b4ffd68eh
+dd 0b63e94dch
+dd 0823a0b48h
+dd 047a3a0a0h
+dd 00a0737a9h
+dd 0fa4b4e0fh
+dd 02d18fb0bh
+dd 0b0003d25h
+dd 0b52681d8h
+dd 07599e114h
+dd 06ee977e8h
+dd 00985287fh
+dd 0e4cd2273h
+dd 0a9c46ef8h
+dd 04083caabh
+dd 0f5d290b0h
+dd 0ee54d81fh
+dd 08ff1e918h
+dd 0252a20f9h
+dd 047288501h
+dd 0c7046dc1h
+dd 0b8f2c315h
+dd 0fca028dfh
+dd 070a52cefh
+dd 049e7d10eh
+dd 094935040h
+dd 0df9f72b8h
+dd 0ef27caabh
+dd 030a26cf6h
+dd 0439f2b9dh
+dd 02ad1a5c6h
+dd 0c686279ch
+dd 0556de33dh
+dd 0dde932f5h
+dd 0ccd7e771h
+dd 00e1ec764h
+dd 00eaa0968h
+dd 05e643effh
+dd 0c768fb1fh
+dd 0cd3d4148h
+dd 0d02fe1d1h
+dd 03f8e7c1bh
+dd 054a4404dh
+dd 08399404fh
+dd 09d894b69h
+dd 0f9a7b4e5h
+dd 0c471d8afh
+dd 0b8779f93h
+dd 05905fd87h
+dd 0e97d9e73h
+dd 0ae10e8ebh
+dd 0827a24aah
+dd 012448c14h
+dd 0edd0aed9h
+dd 0d5912de6h
+dd 0454897b4h
+dd 0aa2fcc5bh
+dd 0f475a743h
+dd 07e2fd10ch
+dd 0faddff9ah
+dd 013616ed6h
+dd 0d5ecd4f3h
+dd 00c112eb2h
+dd 09231f74fh
+dd 05352e30ch
+dd 0378c0f28h
+dd 054484e90h
+dd 0dee5b4aah
+dd 01259e69eh
+dd 057418a2fh
+dd 036fd53a5h
+dd 0c8247e6dh
+dd 08bcee438h
+dd 0394a75ceh
+dd 00ae2f986h
+dd 0a14c409dh
+dd 08905b92ah
+dd 0cbf7a4c8h
+dd 05a7317ach
+dd 0b4c06c22h
+dd 0974680f9h
+dd 09f87f7b8h
+dd 0f7d42d6ah
+dd 09e87a8aeh
+dd 05f3c1320h
+dd 0183a1731h
+dd 096ea4582h
+dd 0ebdc5a82h
+dd 09095d85fh
+dd 0fe8de46eh
+dd 0c96215cdh
+dd 0e7479772h
+dd 019397816h
+dd 05a127775h
+dd 06f21db49h
+dd 0bac80d1dh
+dd 03eb6cbfeh
+dd 064e16439h
+dd 0815513bah
+dd 043e17a7eh
+dd 005f25511h
+dd 067f426cfh
+dd 050370f07h
+dd 0b3ac8637h
+dd 01162552eh
+dd 0e4eee01bh
+dd 02022f39eh
+dd 0cf0f6fc7h
+dd 0c288eb49h
+dd 0b51ef45bh
+dd 02d455260h
+dd 0caec2856h
+dd 01b6e4565h
+dd 0c52672dch
+dd 074a86e89h
+dd 09ca38d17h
+dd 0d45de44eh
+dd 01a3e0125h
+dd 0d94f4497h
+dd 0e1aae15fh
+dd 09618e69ch
+dd 06028676fh
+dd 016e47933h
+dd 0a516dceeh
+dd 0e43759a3h
+dd 09e31684ch
+dd 07a5989c5h
+dd 0f4902b7ch
+dd 05b456be2h
+dd 0763b4d6eh
+dd 0c2b678c7h
+dd 03ec3f385h
+dd 0a0f96e0fh
+dd 07da78522h
+dd 0fae72db0h
+dd 06a7a2733h
+dd 08a32b9e5h
+dd 0ffbe85cah
+dd 02ef3f4abh
+dd 00a3678c0h
+dd 0fb604c11h
+dd 039b3be99h
+dd 0cd6d9c23h
+dd 0a38afcfeh
+dd 0b4cfd17bh
+dd 095959befh
+dd 0cc2c3f97h
+dd 0c17cab01h
+dd 0dc98b01ah
+dd 0ee070d15h
+dd 08fc75bfah
+dd 0a39ff4e1h
+dd 01f5743f4h
+dd 0f1398589h
+dd 01f0064d4h
+dd 0a6ab3279h
+dd 051e131e2h
+dd 060869d34h
+dd 03f614e83h
+dd 0113038d7h
+dd 0ececc0afh
+dd 0dcc64231h
+dd 02d3e2f7fh
+dd 06cdbeeadh
+dd 0afc9a65fh
+dd 04d65abe2h
+dd 0f08a913bh
+dd 0f7a9c7c3h
+dd 063d4574eh
+dd 0a28a3481h
+dd 0282ba4a9h
+dd 008f54b79h
+dd 02169d677h
+dd 0116970a3h
+dd 0d90c17beh
+dd 0d70c2593h
+dd 06f6f9d31h
+dd 026a28cbdh
+dd 0fcdab45fh
+dd 00ef24765h
+dd 069445e59h
+dd 0c9022e5eh
+dd 03356a10fh
+dd 02b3c2a20h
+dd 018327e0fh
+dd 0bd56c94ah
+dd 0f3ff1a3dh
+dd 0e67c54ach
+dd 0e6164cd9h
+dd 0d8fb54cfh
+dd 03ec35733h
+dd 0b3bc4c24h
+dd 00be42340h
+dd 0fac4eed0h
+dd 0ba8f4fffh
+dd 07739f5beh
+dd 044550670h
+dd 099268c0dh
+dd 058025812h
+dd 052774d81h
+dd 083fc697ch
+dd 071cc578fh
+dd 0f829bbeeh
+dd 074e5b263h
+dd 0735a7ad7h
+dd 091bbedc1h
+dd 06e85d002h
+dd 0a5f3634bh
+dd 025b433b6h
+dd 060ea9acah
+dd 04eb79443h
+dd 0418d3116h
+dd 079f85e9dh
+dd 02a37719ah
+dd 04a811914h
+dd 0d839f985h
+dd 0d54f417eh
+dd 010e35753h
+dd 067ece998h
+dd 08f18f0b8h
+dd 0fa321e84h
+dd 03fd6a890h
+dd 0b3971b89h
+dd 01e8b0f66h
+dd 023c363ddh
+dd 0355afd63h
+dd 030d83219h
+dd 05dff69b4h
+dd 00aa6f147h
+dd 017b49ed2h
+dd 013a52f9ch
+dd 002c3c219h
+dd 0f8513eaeh
+dd 059b692feh
+dd 090845d73h
+dd 0ebf5f58eh
+dd 09ab3fbb2h
+dd 067a27ea1h
+dd 0360b6ba0h
+dd 079890937h
+dd 0420672ech
+dd 01b8906bbh
+dd 0dd5cbabfh
+dd 0266bcde4h
+dd 0635d8237h
+dd 0ce6b9e8fh
+dd 08d2eec35h
+dd 00d9893a6h
+dd 0012e211ch
+dd 068a4f78bh
+dd 0dbf5c79eh
+dd 0b99921d6h
+dd 07016923ch
+dd 02f89f124h
+dd 01fcc3493h
+dd 0deb3cc89h
+dd 010959de1h
+dd 0bf82b871h
+dd 07aaed0d9h
+dd 0a0ea649ch
+dd 065812fcch
+dd 07336f5ceh
+dd 0c367b207h
+dd 03d394f2dh
+dd 08c7bc945h
+dd 0f727fbb0h
+dd 038449fe1h
+dd 060370ff7h
+dd 0298c6216h
+dd 0db0a8074h
+dd 02550ddb2h
+dd 0036e071ch
+dd 091e90f5bh
+dd 00a88569bh
+dd 0c2fcb54ah
+dd 04ce84f96h
+dd 05dcc21a3h
+dd 087123258h
+dd 0c32250b2h
+dd 0a5226af9h
+dd 05c4182ech
+dd 05c5887e7h
+dd 0400a5f55h
+dd 04b9c0175h
+dd 04972e684h
+dd 06cce6a13h
+dd 0c4e433d5h
+dd 03a4c30f2h
+dd 096d72dfah
+dd 0fd49f647h
+dd 0b040cdf8h
+dd 0a4cc3960h
+dd 0067dd5c6h
+dd 09dcb54b3h
+dd 05b64aa17h
+dd 078fcc44bh
+dd 0d9f9f828h
+dd 06003b732h
+dd 01109bd57h
+dd 07f210585h
+dd 0ea816171h
+dd 00c649b91h
+dd 0cea9c5deh
+dd 0f7fa7dcch
+dd 08363a99dh
+dd 0effeb0efh
+dd 00c6b52b8h
+dd 0d0066498h
+dd 08f46f1a8h
+dd 01df11a53h
+dd 0676194e3h
+dd 0601475afh
+dd 02123441ch
+dd 084e98effh
+dd 0e295917ch
+dd 02d530442h
+dd 08611f2bch
+dd 043bfb488h
+dd 0f9bfb845h
+dd 04f472927h
+dd 064fa65c9h
+dd 0f62f7c68h
+dd 05b4cccdch
+dd 016e7645eh
+dd 0747e40a5h
+dd 037afcb3bh
+dd 0faaca758h
+dd 0f1500f06h
+dd 096a44de6h
+dd 0815ef96dh
+dd 090a745bbh
+dd 05cf8d263h
+dd 0a2fd01e3h
+dd 0d8c65670h
+dd 0098f3a1eh
+dd 0a9652803h
+dd 0eb4a77b2h
+dd 03c067d22h
+dd 01cb15631h
+dd 05e303633h
+dd 09848e6f7h
+dd 0edf0086ch
+dd 02456c1c0h
+dd 06bd19a17h
+dd 046813de9h
+dd 0605ec47bh
+dd 045d23d49h
+dd 06d8f747fh
+dd 0daba4bfdh
+dd 079c01d4ch
+dd 0792e9749h
+dd 029c0ac5fh
+dd 02018208bh
+dd 08770122fh
+dd 0a20f4d38h
+dd 0cd50b3bch
+dd 0e1280fd8h
+dd 071a5482eh
+dd 01bfc25b7h
+dd 051f44008h
+dd 0a71a6136h
+dd 059533d99h
+dd 0ae0ceb55h
+dd 09d12d95fh
+dd 00572f86dh
+dd 01b2a5d44h
+dd 0f1098022h
+dd 0982c89dah
+dd 0d72fae47h
+dd 06021a91ah
+dd 0de65e295h
+dd 01f386ca7h
+dd 077425ae0h
+dd 00585e18bh
+dd 04a83997fh
+dd 054c76fdbh
+dd 071fc9a0ch
+dd 06dc45753h
+dd 0d36d4058h
+dd 06c401f53h
+dd 067af1da0h
+dd 0f2f093c5h
+dd 00fa3d9c2h
+dd 05be8830ah
+dd 017f7a723h
+dd 067b52e1fh
+dd 04e75d3ddh
+dd 0942f23a5h
+dd 07c1e15b2h
+dd 0630a366dh
+dd 03a2dc461h
+dd 064c00ba4h
+dd 08dced95fh
+dd 08d02062ah
+dd 05fae2974h
+dd 0554a95fbh
+dd 0f0a062b5h
+dd 0fa498ba9h
+dd 087a92df2h
+dd 0ce7639feh
+dd 02b040c10h
+dd 0681b96cah
+dd 0a0ee76f9h
+dd 0d50121ceh
+dd 0c4cc99a5h
+dd 08342d742h
+dd 0b6666cc6h
+dd 0bbda34eeh
+dd 082956969h
+dd 05fcae299h
+dd 07b8d4115h
+dd 0649ca93ch
+dd 0ae34377fh
+dd 0916c7240h
+dd 09f33eb0ah
+dd 02fc79ceah
+dd 02e23ab63h
+dd 04a00f045h
+dd 009210b1fh
+dd 02ddd46b2h
+dd 006385025h
+dd 0794c257ah
+dd 0cb1f2a20h
+dd 025350a99h
+dd 081363f97h
+dd 0e4a36629h
+dd 011efaed0h
+dd 037418813h
+dd 080223bcch
+dd 00b8be553h
+dd 048ce6b5ah
+dd 000372168h
+dd 0f232683bh
+dd 0c763f9c4h
+dd 0fb4d41deh
+dd 09e5b450fh
+dd 0a92ab339h
+dd 0aaee679bh
+dd 0929d73e8h
+dd 026a0f9dah
+dd 09c92028bh
+dd 09b3e30e1h
+dd 025dc49a5h
+dd 03b16617fh
+dd 069d45f62h
+dd 0e0db8621h
+dd 0dd2d893ah
+dd 09bcb4d1ch
+dd 004420533h
+dd 06a67e655h
+dd 0eb879efch
+dd 0a402d9b8h
+dd 0dd56fd18h
+dd 02861723bh
+dd 02febee48h
+dd 00485357fh
+dd 0cc3d8a85h
+dd 0883b6261h
+dd 08304b0abh
+dd 01bb6deffh
+dd 04edadc5fh
+dd 0a8980cb7h
+dd 053204853h
+dd 0d80c342bh
+dd 0352a4f51h
+dd 009589f51h
+dd 0f3f76e83h
+dd 054a3e4b0h
+dd 0b8916172h
+dd 02201baceh
+dd 0e443ff0bh
+dd 0daa2a812h
+dd 0fb2e36b0h
+dd 02aff1ec3h
+dd 015e46a97h
+dd 0fb72de0eh
+dd 05bcae560h
+dd 0b2c0dc89h
+dd 0d784226ch
+dd 0d4820da6h
+dd 075dc4a7ah
+dd 031365770h
+dd 02d7578dch
+dd 02653f552h
+dd 052c69656h
+dd 048d64a56h
+dd 0fb23d365h
+dd 02ce0985ch
+dd 09ad4c24dh
+dd 05deb6c8ch
+dd 09e02c665h
+dd 0a8e185ceh
+dd 0b0711a5ch
+dd 060abd9f3h
+dd 0b4adc2d9h
+dd 01ed91b59h
+dd 0d03d112ch
+dd 0ce769e87h
+dd 0d46ce8b7h
+dd 0791bdf04h
+dd 038ba190bh
+dd 0d5f59e94h
+dd 0aa0745f7h
+dd 07a31c925h
+dd 07b3dcf15h
+dd 0707bd7b8h
+dd 0fc8aaf66h
+dd 0bd2b3964h
+dd 0dbbd6473h
+dd 041a46cd8h
+dd 08e5725f7h
+dd 024f91989h
+dd 0710cb022h
+dd 09494a5b0h
+dd 05c6e4b96h
+dd 02423c831h
+dd 06fd86e80h
+dd 081e54fa2h
+dd 0ee94c1cah
+dd 06e44ca27h
+dd 0c66bbff9h
+dd 067dc8278h
+dd 04a7ec391h
+dd 0f5fb0d08h
+dd 038360e51h
+dd 04ce53c73h
+dd 0527f1a5dh
+dd 06fd2435fh
+dd 01c3cd17bh
+dd 021131829h
+dd 0e978a29fh
+dd 0d38d57c1h
+dd 0aaedce42h
+dd 0dae41a51h
+dd 0b65ed188h
+dd 0ec9d1b6dh
+dd 0b91c1e9ah
+dd 0d8629cfbh
+dd 0c44b1c41h
+dd 020285e2ch
+dd 008acb6e6h
+dd 04b345921h
+dd 01eeceab6h
+dd 0ca504fe9h
+dd 0214c8321h
+dd 04327014bh
+dd 0097a08c0h
+dd 0f04bcd03h
+dd 03adbd71eh
+dd 0d47ddd9fh
+dd 0b603ae6ch
+dd 02cdf11e9h
+dd 049f35874h
+dd 0399a6675h
+dd 0fa1ec924h
+dd 0c47ddf3eh
+dd 0a3485429h
+dd 0dfc98ac1h
+dd 0a98145ech
+dd 0ca0e91ebh
+dd 02ba03761h
+dd 0d44854a1h
+dd 0285b30a7h
+dd 067c975aah
+dd 09cef869bh
+dd 06bcae1f2h
+dd 0dcd6398bh
+dd 07300dbbch
+dd 0e1297416h
+dd 046c5e6f8h
+dd 01cbc6a6eh
+dd 0cdda8e68h
+dd 0a92015d9h
+dd 08cafdc01h
+dd 053c1a4a5h
+dd 0ca44ce19h
+dd 00ae46664h
+dd 0ec667ff0h
+dd 046be6a9bh
+dd 00b2e2ab7h
+dd 01b3de1fbh
+dd 054cfd089h
+dd 004e1927dh
+dd 09ba722dah
+dd 0b324578ah
+dd 0dbd456d9h
+dd 0358a262ah
+dd 0be476005h
+dd 01cc3dd56h
+dd 0e7d5dd83h
+dd 075d21889h
+dd 0500314c5h
+dd 079e9674fh
+dd 0b8098348h
+dd 0a75dd2f9h
+dd 0a85c914bh
+dd 056c6db48h
+dd 0dd763344h
+dd 0c7c45fbfh
+dd 0f617331dh
+dd 031b74b6bh
+dd 0d49046a5h
+dd 0eb01f3b3h
+dd 0231c25b2h
+dd 05c39eb88h
+dd 051e71b1ch
+dd 04b8578a2h
+dd 0e43b68b9h
+dd 0e269085ah
+dd 0439d1e12h
+dd 0a47e2168h
+dd 08b45d95ch
+dd 0c4a300feh
+dd 0299e89f4h
+dd 0d04be376h
+dd 0f736a76bh
+dd 04701310eh
+dd 0feefdcf5h
+dd 01a6c1073h
+dd 05e116820h
+dd 0b8b982d7h
+dd 03b901ec1h
+dd 0ca6b1e1bh
+dd 01f5a50ddh
+dd 0f58c9c10h
+dd 03b84f295h
+dd 0153aefa5h
+dd 07aa24c74h
+dd 03a31f76ah
+dd 09bcad109h
+dd 04eb18050h
+dd 0f4bbd909h
+dd 0fead50edh
+dd 03b0c8750h
+dd 078023c36h
+dd 07375dbd3h
+dd 0dcbf2b86h
+dd 0254819f8h
+dd 066cf940bh
+dd 039f16406h
+dd 01cba5a63h
+dd 007b2cc1bh
+dd 0f3c4d9a8h
+dd 0534a4514h
+dd 02156c5b9h
+dd 012ea6bf7h
+dd 0def54312h
+dd 0d4e8381fh
+dd 00d52deefh
+dd 09f20ed0dh
+dd 02d38ec3fh
+dd 099843899h
+dd 04ed94081h
+dd 0a82c49c6h
+dd 0a5dadd52h
+dd 074bdf896h
+dd 0a5292380h
+dd 0d5d7b089h
+dd 00f634857h
+dd 01b8a5f17h
+dd 0ca72f4b3h
+dd 030abf087h
+dd 0ce7239d8h
+dd 0f158c5afh
+dd 0bbb229a5h
+dd 02a2f23dah
+dd 0673167dah
+dd 04af9ccf3h
+dd 01b9c76c5h
+dd 05e1540b7h
+dd 021164351h
+dd 04f0492c8h
+dd 0ead8c268h
+dd 0420f9532h
+dd 0731b8adfh
+dd 0a2315dcfh
+dd 0476d59eah
+dd 096590415h
+dd 0d0c4417bh
+dd 03f23fbe1h
+dd 0cc074c78h
+dd 09271fe8ch
+dd 0d2e024ach
+dd 09f32d6fdh
+dd 0a411b6aeh
+dd 00caf1512h
+dd 0b80dc45ah
+dd 0bb69a925h
+dd 09475d55ch
+dd 09fd6bfcbh
+dd 0e3a0514ah
+dd 03559cad8h
+dd 0dcfae4cdh
+dd 04a6d9b0bh
+dd 0f575e18fh
+dd 0943fef2fh
+dd 05ef7bcfeh
+dd 04f8560ach
+dd 0e454e2bch
+dd 0fa6be279h
+dd 0d40f4d52h
+dd 0a007cd01h
+dd 0a3962275h
+dd 0f44a8722h
+dd 0edd52b43h
+dd 04d526c87h
+dd 026ace106h
+dd 063995d7bh
+dd 0b27a87e0h
+dd 072659791h
+dd 0a199bae0h
+dd 062d6fd13h
+dd 08691b016h
+dd 01ffc8f35h
+dd 042545ccch
+dd 08f454759h
+dd 0d6b458f1h
+dd 0a2c87600h
+dd 060501201h
+dd 0ab92770fh
+dd 04ffec66dh
+dd 0fcbaf8f2h
+dd 02b1edfc6h
+dd 081177ec4h
+dd 084c6eb2ah
+dd 02d619342h
+dd 0e6020c60h
+dd 0d5641ce9h
+dd 0d1a5aa5eh
+dd 0f10240cah
+dd 001fd8773h
+dd 0e6c1ffe5h
+dd 0821157feh
+dd 0a7df27c9h
+dd 0e2f061fdh
+dd 02c846220h
+dd 07921d320h
+dd 00568bc90h
+dd 078e8ebd9h
+dd 0baaded5eh
+dd 0d8adfa86h
+dd 0bb4c5ef8h
+dd 0907cbce4h
+dd 0f5d91b9ch
+dd 0b131fe4ch
+dd 01b9f6ae7h
+dd 0f8a41d6ch
+dd 0e829dd0ah
+dd 0b486694eh
+dd 0cb20a919h
+dd 0e93ccf38h
+dd 01c19d1bch
+dd 031190764h
+dd 0a1bb1b4dh
+dd 0d63830a1h
+dd 0bedddf75h
+dd 0e664d90fh
+dd 09cbf5c92h
+dd 02a5ab460h
+dd 0a607e7c1h
+dd 01778b395h
+dd 00d784291h
+dd 084d07d65h
+dd 0440a35bbh
+dd 0a540dca0h
+dd 0f9bf72cbh
+dd 05ed203b7h
+dd 0a456d11ch
+dd 06cfd2cdbh
+dd 011b62e39h
+dd 0b1e24c4fh
+dd 05cd725ech
+dd 02ed0b4e7h
+dd 0d9772f02h
+dd 0b60646ech
+dd 0ec16581dh
+dd 02f29b28ch
+dd 0b69abc15h
+dd 01df343cch
+dd 0f1dc84edh
+dd 06b9a3ab0h
+dd 0b8be0a01h
+dd 05b44d119h
+dd 0bfdf589ah
+dd 0fd1dc813h
+dd 0012b9a41h
+dd 09ec86fa3h
+dd 02ccd06b1h
+dd 0ff59f989h
+dd 083567a39h
+dd 0a056de43h
+dd 029aa32e3h
+dd 0bd989138h
+dd 011bde358h
+dd 0f7f81da5h
+dd 06664c2dah
+dd 0ffc4f611h
+dd 0af74566dh
+dd 06a18ff91h
+dd 07e0dbe62h
+dd 03428044ch
+dd 0a21edb12h
+dd 0ac2fb3d9h
+dd 046bbf96eh
+dd 013aee88bh
+dd 0cef90e1eh
+dd 097e97c9ch
+dd 0c4a51656h
+dd 067bcc946h
+dd 0a1fec20fh
+dd 063539106h
+dd 08a79e087h
+dd 0416566d7h
+dd 0037adc3ah
+dd 01cb94a5eh
+dd 0dec39e01h
+dd 0baeedd79h
+dd 07eec86b0h
+dd 02a536881h
+dd 0d1359492h
+dd 0c99aa4bdh
+dd 00a1e641ah
+dd 0faf4dd26h
+dd 05959351dh
+dd 0fb8c303fh
+dd 0e9dd4710h
+dd 0ba5e8cebh
+dd 05ff339c9h
+dd 04f34429bh
+dd 086fbdd79h
+dd 0e4cb5066h
+dd 0ee2e6d5ch
+dd 0d4f14e35h
+dd 0b90b1e59h
+dd 0e8ecacf4h
+dd 0ec2a3e4ah
+dd 0b8b8b25bh
+dd 00d36b47eh
+dd 0540e79b5h
+dd 03182bf30h
+dd 023a7033dh
+dd 046b928c4h
+dd 01b464ad5h
+dd 05c4f4c57h
+dd 069b89640h
+dd 00cb082e8h
+dd 083e7dabeh
+dd 0aeda860ah
+dd 06366560fh
+dd 08932fe8eh
+dd 074b2a5d2h
+dd 0f4e6b61fh
+dd 03e3b765fh
+dd 026b93639h
+dd 0c4fc32fah
+dd 0c7024e0ch
+dd 0caa6c037h
+dd 0d0caf497h
+dd 08c5d872eh
+dd 0be8e5b2eh
+dd 00d5aaa00h
+dd 06c5c86a3h
+dd 0874f9990h
+dd 0d21a2918h
+dd 09f8a601dh
+dd 02d19220ch
+dd 0ccf16dfch
+dd 035976aadh
+dd 00b894426h
+dd 0522e71b3h
+dd 0fa322fefh
+dd 08728e484h
+dd 0402ebfb9h
+dd 011b5027ah
+dd 0f809485dh
+dd 0d5aaead1h
+dd 00b8d93dah
+dd 0df6556dch
+dd 0ebd1df2fh
+dd 0514fa59eh
+dd 04c7b49d7h
+dd 090f5f021h
+dd 03501db51h
+dd 04babb866h
+dd 0e469f0c5h
+dd 05d98244bh
+dd 05bebaabdh
+dd 0dc683b3dh
+dd 0a27a0833h
+dd 0e793cbeah
+dd 094c31af7h
+dd 0cff89b7bh
+dd 06adc5258h
+dd 02709ffdeh
+dd 0a89c480ah
+dd 02af0a6d8h
+dd 077fa8fafh
+dd 0bd0855ffh
+dd 0d2328f6fh
+dd 0890c3429h
+dd 08d9332d8h
+dd 0e426ccaeh
+dd 03fec9bcch
+dd 0190ed641h
+dd 0bbe43f4eh
+dd 06b88ed25h
+dd 04cbe53d7h
+dd 05076494fh
+dd 0f832ef83h
+dd 0bef5a5e3h
+dd 0af8710afh
+dd 09c8d58d0h
+dd 0b486f4d7h
+dd 0111cee30h
+dd 02b6251e9h
+dd 08d179efah
+dd 0135d4a13h
+dd 0337c31b7h
+dd 01bf04318h
+dd 07f908799h
+dd 0a75161bbh
+dd 042569b3dh
+dd 0cde15f2dh
+dd 026b1f87eh
+dd 0afabafadh
+dd 011d3ac56h
+dd 09c50d6dfh
+dd 08bf35deeh
+dd 0bc83b9b1h
+dd 0a2a0aac6h
+dd 00dd95140h
+dd 025e58a3dh
+dd 0c963e243h
+dd 085f12d84h
+dd 08b4576f8h
+dd 03e1c2c16h
+dd 04ff144aah
+dd 09aab0343h
+dd 0ee8b52efh
+dd 0b41dbfbbh
+dd 04c65b92ah
+dd 07acf9228h
+dd 087ddc8deh
+dd 08d6b8056h
+dd 0eda9c9f6h
+dd 0e0a3ea5ah
+dd 046a56c6bh
+dd 013dad44fh
+dd 06ab7036dh
+dd 0bd6ff1e1h
+dd 0206f55e5h
+dd 0017b2d33h
+dd 07120cc86h
+dd 0f45809e9h
+dd 0848ad680h
+dd 0b08b3127h
+dd 0421589a1h
+dd 06d66bae0h
+dd 056c3bd36h
+dd 0d32b5d6bh
+dd 000bcafadh
+dd 0d3800018h
+dd 0d4805edbh
+dd 061f5c85ah
+dd 0244c28bfh
+dd 0d7002543h
+dd 059000704h
+dd 0d36ed07dh
+dd 02f27de22h
+dd 01576ccc3h
+dd 0ca445889h
+dd 020582d31h
+dd 043a867c4h
+dd 05416656eh
+dd 0da56113dh
+dd 0f527398dh
+dd 02e53386ah
+dd 01f95103ch
+dd 03a754debh
+dd 0f23a790bh
+dd 06a66e9b0h
+dd 0c0f14b8fh
+dd 0e8ce7063h
+dd 052ca091ah
+dd 00f1c2765h
+dd 08af6c8a4h
+dd 03e56ae7ah
+dd 03b75a680h
+dd 0109504c5h
+dd 08bbe313fh
+dd 0fc139901h
+dd 0deb6fea1h
+dd 04c328edeh
+dd 04210a10fh
+dd 083a5ef03h
+dd 0399fbbd5h
+dd 03e783ad8h
+dd 07fc59c31h
+dd 0657f1250h
+dd 0274b4128h
+dd 0197c85feh
+dd 01ca9173fh
+dd 0fb6ccb77h
+dd 084b3c9cfh
+dd 084e730c0h
+dd 0dcdaec5ch
+dd 0e6cff187h
+dd 029e90d73h
+dd 021b6270ah
+dd 0aee3ae58h
+dd 02e8d3278h
+dd 0f562f0a2h
+dd 014042230h
+dd 0ad5d0352h
+dd 0b5d64740h
+dd 0e4e70c50h
+dd 0967ef65bh
+dd 0d6b9670dh
+dd 0440785b5h
+dd 0b861fe21h
+dd 0e1a66b4bh
+dd 09918c07ch
+dd 07f0bbb01h
+dd 0d72ef308h
+dd 01ee4cadch
+dd 05118ac64h
+dd 0294ddf7eh
+dd 0df5241b7h
+dd 0f6176881h
+dd 0da747961h
+dd 05a49a9b4h
+dd 06d3db5b0h
+dd 0cb28798dh
+dd 057384826h
+dd 09501fe77h
+dd 0b45f5cc6h
+dd 0c91a21dch
+dd 006e9b77eh
+dd 0bc25e4b7h
+dd 0900de7c0h
+dd 0395c2bd0h
+dd 0ccc4e3b2h
+dd 027532fa9h
+dd 03a6ccd3dh
+dd 0b0ec82d9h
+dd 03711ced9h
+dd 046ed2184h
+dd 02fe7c3ffh
+dd 0a84a39f2h
+dd 0eaeda500h
+dd 0314f8dbbh
+dd 0ae73b83ah
+dd 0dea8dcc7h
+dd 0443b2d70h
+dd 0a8ee0f79h
+dd 0ecf9a283h
+dd 042760d7ah
+dd 027fdab21h
+dd 01cb0d01bh
+dd 06c74f802h
+dd 0343f865fh
+dd 066c5e9dbh
+dd 068d09be7h
+dd 0635ba27fh
+dd 0aa421448h
+dd 01c72ee1bh
+dd 054859635h
+dd 0e94ea551h
+dd 024850ea7h
+dd 03f9a5856h
+dd 005acb9b4h
+dd 0b3cf616fh
+dd 0a56eae2eh
+dd 0292ac38bh
+dd 0658b7bfah
+dd 0fe9c06b5h
+dd 078c32104h
+dd 0a548d840h
+dd 0d921b371h
+dd 0574e84d6h
+dd 06e6c020ah
+dd 0d5037133h
+dd 006bdcf1ch
+dd 0e3c1f053h
+dd 0fbb1398fh
+dd 0ea58b84fh
+dd 0f2c7e48ah
+dd 022da5925h
+dd 099a57dcah
+dd 0c30d884ah
+dd 04d6f8dcfh
+dd 009bfcf0bh
+dd 0fff307f1h
+dd 0fc5763fbh
+dd 095aaa4f1h
+dd 0d66bb864h
+dd 03531d9b4h
+dd 01abcd16bh
+dd 0117257bch
+dd 0f7155e4dh
+dd 04821afach
+dd 05da18623h
+dd 02b1921ach
+dd 092de3414h
+dd 0f0f2af95h
+dd 07abd9d54h
+dd 0f02a99eah
+dd 03ad83cf4h
+dd 04508066ah
+dd 07b0abe3bh
+dd 09f1913e3h
+dd 0a5fb4fb3h
+dd 0c92df27bh
+dd 065aede11h
+dd 0851f78eeh
+dd 0ddb4fe8eh
+dd 09bd5c60bh
+dd 0ab4b492ch
+dd 0aff55086h
+dd 0df1c5505h
+dd 072ec3289h
+dd 0e53bd6c2h
+dd 0fc0655deh
+dd 0d743bae3h
+dd 0d860a458h
+dd 05210ecc8h
+dd 08ea62b0ah
+dd 03829444dh
+dd 0ae085c90h
+dd 0674a2543h
+dd 0a4f4f40ah
+dd 0228dc793h
+dd 03d9abebbh
+dd 0b544066ah
+dd 03e9d1792h
+dd 073c9ea0fh
+dd 0661bd7f7h
+dd 02bde7babh
+dd 0b39735fch
+dd 02652744ah
+dd 0666a1fc2h
+dd 0490e83cah
+dd 060c34b8dh
+dd 0778addd8h
+dd 0e2c0b4d2h
+dd 0888c16a0h
+dd 0f1b62effh
+dd 08248fad3h
+dd 06e9b84feh
+dd 02d17cb86h
+dd 02f3ffebeh
+dd 0e5fd0533h
+dd 038e96060h
+dd 0cd7b7f6dh
+dd 0ea294991h
+dd 04d6f9e4fh
+dd 048e1f4dah
+dd 0d081a31bh
+dd 0477a5ca4h
+dd 0c91f5023h
+dd 004f86abah
+dd 00a284828h
+dd 0ff328b56h
+dd 075b9b34fh
+dd 0ff6aaff2h
+dd 0bea916e6h
+dd 0f587a1e5h
+dd 039e7c9c1h
+dd 05dd7f8a2h
+dd 06faf795bh
+dd 011cd7720h
+dd 0d7fcfa82h
+dd 0c6895451h
+dd 01f6d9173h
+dd 08904a0adh
+dd 00b2b3783h
+dd 098460873h
+dd 0143e978fh
+dd 0d544aed2h
+dd 015b67f14h
+dd 0c8f4b494h
+dd 00e254ce6h
+dd 0eb18d517h
+dd 0d30ab582h
+dd 0e2ea6812h
+dd 0afc41f3dh
+dd 080fb0ecdh
+dd 08eccc145h
+dd 0c22edb96h
+dd 00f9bc97ch
+dd 0daa146a1h
+dd 03c312647h
+dd 0c8c49443h
+dd 02fea89bbh
+dd 0f1302f61h
+dd 02b85de3ah
+dd 0d5565c63h
+dd 063c6c117h
+dd 00afbc7e0h
+dd 024df7db4h
+dd 00d272d45h
+dd 0c2741caeh
+dd 0cee3dd62h
+dd 04e4bb27eh
+dd 03e7b297ah
+dd 03144aaech
+dd 0a8258600h
+dd 0b3319f14h
+dd 0773c8262h
+dd 05fa7deaah
+dd 0f07f10aeh
+dd 07df53687h
+dd 066d70a49h
+dd 02eadc05ch
+dd 0f094d561h
+dd 044e22374h
+dd 0d9ff7530h
+dd 0482d940ch
+dd 023f35e38h
+dd 0211b83cah
+dd 0cf91b5fdh
+dd 05e887898h
+dd 0712ce92eh
+dd 05ef8d5e0h
+dd 0ff9d1b38h
+dd 0343c0561h
+dd 0399ce3feh
+dd 0d06a9fb1h
+dd 03edc6f24h
+dd 08fcd41d0h
+dd 03e05abc3h
+dd 0298756a4h
+dd 0a2a46f18h
+dd 000c68befh
+dd 0329e222fh
+dd 0cc87370ch
+dd 0f15d1ba6h
+dd 0a62a654ch
+dd 0f675c14ah
+dd 031fa75c7h
+dd 00f4bcd68h
+dd 07a29cf38h
+dd 0d8cc5401h
+dd 0510a782bh
+dd 01758d610h
+dd 0b5f9f170h
+dd 03d1b8153h
+dd 011b80dd0h
+dd 07125d7f2h
+dd 04db6e77eh
+dd 0f5fe4962h
+dd 05c1f8298h
+dd 0ce6bdeach
+dd 0ca5b029bh
+dd 0e971c6aeh
+dd 084a284f9h
+dd 0c879c910h
+dd 0414dcbbbh
+dd 0e7904478h
+dd 02e190790h
+dd 040f15594h
+dd 067b34a39h
+dd 0a91b8118h
+dd 0219f10b3h
+dd 03bdef187h
+dd 0ba82e8dch
+dd 0c4765d70h
+dd 0f95172f6h
+dd 06c868733h
+dd 0f9003c73h
+dd 01477f2a9h
+dd 0e815a5cbh
+dd 02bfdaf47h
+dd 0a6640118h
+dd 0fbaf0c0ch
+dd 0f9afb329h
+dd 060754cb4h
+dd 0bef1dd57h
+dd 0e4ce0f96h
+dd 0bb80c367h
+dd 02c0d840bh
+dd 09e9ef3a0h
+dd 054e8d319h
+dd 0f343d8c0h
+dd 038e800d2h
+dd 086812008h
+dd 024e4d095h
+dd 000c14dc6h
+dd 09f36f5c3h
+dd 0b35b386dh
+dd 08dca1345h
+dd 047e82829h
+dd 0cd60b030h
+dd 053e4a2fdh
+dd 073bd5a6fh
+dd 027b5e135h
+dd 0f23fe93ah
+dd 027eb5c34h
+dd 030795c12h
+dd 0443fde01h
+dd 0d701939ch
+dd 03e36796eh
+dd 02f35e354h
+dd 020be8c42h
+dd 09bd2be5eh
+dd 0d5c7f051h
+dd 03b3ed7b4h
+dd 09f87ba12h
+dd 0de7599a7h
+dd 04bd7f119h
+dd 05c1fcd6ah
+dd 0a77d1c98h
+dd 0df9abf81h
+dd 07a6cd9c4h
+dd 0c2719508h
+dd 0a7aa2821h
+dd 0a4a23408h
+dd 0d6504d2ch
+dd 063cd335ah
+dd 0ef51616ah
+dd 0d98a0676h
+dd 0423db710h
+dd 0703bf09fh
+dd 07449d9ddh
+dd 01884c23dh
+dd 0e714de2ch
+dd 04bad4d28h
+dd 0a7a69f1fh
+dd 0a414f2b7h
+dd 06d6a573ch
+dd 0c8de14e2h
+dd 055047de2h
+dd 0bacc48f8h
+dd 083106f85h
+dd 07c8f0115h
+dd 04e6fe6ddh
+dd 01cfb0322h
+dd 086cfb88dh
+dd 0550d14cdh
+dd 07f170d92h
+dd 0a7286a5ch
+dd 0e23edbd1h
+dd 0d51b3d61h
+dd 0950fa228h
+dd 029d65513h
+dd 0652964f2h
+dd 0d83004f4h
+dd 0b234f919h
+dd 0fc6bb24eh
+dd 0bab50c92h
+dd 0200f9e65h
+dd 02147b7b9h
+dd 029c07d85h
+dd 0d61af154h
+dd 0b52d805fh
+dd 09c468290h
+dd 09b06c8cch
+dd 040624892h
+dd 0643aeb24h
+dd 016b875bdh
+dd 0778f3b3ah
+dd 08da2861dh
+dd 05052f23bh
+dd 0605788dfh
+dd 0995bc83bh
+dd 006b5c58ah
+dd 0629a9e78h
+dd 0f5cdccf7h
+dd 03e5e71ffh
+dd 025a92e8eh
+dd 0bd9ee9d3h
+dd 045eb83adh
+dd 0df9acb4bh
+dd 074e827c1h
+dd 09ed88a63h
+dd 0fc9e5144h
+dd 06addd944h
+dd 07b3819f4h
+dd 062dce545h
+dd 0be6e3891h
+dd 0727c8a96h
+dd 0018c60c5h
+dd 02cba410ah
+dd 0023cd1c8h
+dd 0b6932c32h
+dd 03b43900bh
+dd 0007e488bh
+dd 0b78461f6h
+dd 0fc322d26h
+dd 05bd46211h
+dd 06c0dc94ah
+dd 05e596666h
+dd 04b6e726bh
+dd 029b9f4a9h
+dd 0b6c0a86bh
+dd 091aa04f1h
+dd 05d365cbeh
+dd 07c516bc4h
+dd 042573d9ch
+dd 06cabb837h
+dd 0e0f3b3a3h
+dd 0e92efaf2h
+dd 058beba62h
+dd 0d62b0904h
+dd 0fea975a8h
+dd 073cd14f8h
+dd 0a6b01db8h
+dd 01ef0d21ch
+dd 026eefd3bh
+dd 055880f18h
+dd 0ce2a2c33h
+dd 0b0f60624h
+dd 00147ae92h
+dd 02dd6f41eh
+dd 010197e26h
+dd 0fdd94df0h
+dd 002045ae0h
+dd 06cc98d23h
+dd 0b779b098h
+dd 06b8f820fh
+dd 066b76509h
+dd 02228ff26h
+dd 08d125a6bh
+dd 02d107604h
+dd 0625498b7h
+dd 029bd3e5ah
+dd 064d43f38h
+dd 062637adfh
+dd 04eff20ffh
+dd 0a010f078h
+dd 01da96665h
+dd 05fbeda81h
+dd 09754940ah
+dd 018ec7ef0h
+dd 096c82ca5h
+dd 018f1e8d5h
+dd 05b9c9e75h
+dd 0b7869b6dh
+dd 047c0c882h
+dd 023af191eh
+dd 05d1e2086h
+dd 0677ba9bah
+dd 015fcc450h
+dd 09ea0ec37h
+dd 06ffe6950h
+dd 08ff79cd5h
+dd 0e548dad2h
+dd 091d18ee5h
+dd 08285e720h
+dd 044f5ff33h
+dd 008b16598h
+dd 0ccf8898dh
+dd 0796f85b7h
+dd 028d981dfh
+dd 03d0648c4h
+dd 0692cd6fch
+dd 0f4866f0ah
+dd 0627503b4h
+dd 0706acd39h
+dd 0b18df6c4h
+dd 08d327a14h
+dd 050f38311h
+dd 05ef88678h
+dd 0a92b873ch
+dd 02fe5ab5ch
+dd 0bcd32541h
+dd 0782f2aaah
+dd 0f2bc6a5ch
+dd 0e32aa117h
+dd 0a508d285h
+dd 08d3fe65ch
+dd 09771100ah
+dd 02f734d44h
+dd 008f53816h
+dd 01b6c57d9h
+dd 053e5277eh
+dd 03b563651h
+dd 04d841375h
+dd 0baa03281h
+dd 0ef10144fh
+dd 0d4424cf8h
+dd 05dcf1a51h
+dd 0394298b7h
+dd 0f6630891h
+dd 0951a4787h
+dd 026e1c3f5h
+dd 009fb99a9h
+dd 0391149f3h
+dd 0ab4128cah
+dd 07761c131h
+dd 0302a9ca1h
+dd 0b4cffabah
+dd 04fe37047h
+dd 0a5924ad5h
+dd 006eccf61h
+dd 061a62670h
+dd 0de90e2b5h
+dd 0f91e20abh
+dd 09dc2ab0eh
+dd 0af4c14b5h
+dd 02e7b2a08h
+dd 03b1ecde9h
+dd 0baebb054h
+dd 0fbd0f3d6h
+dd 0535a4213h
+dd 01368abcah
+dd 0decc14d7h
+dd 074a6e285h
+dd 0bb718ec8h
+dd 07fd205e5h
+dd 0192af423h
+dd 0f20ddd44h
+dd 082aeef95h
+dd 055cd479bh
+dd 07c9c65b8h
+dd 0389dbbe4h
+dd 0b3fe5827h
+dd 0e71b67c0h
+dd 0bdd3fc7ch
+dd 08ffcfebdh
+dd 0b5ebabe9h
+dd 06c3a1410h
+dd 02323624ch
+dd 081bdae08h
+dd 0fabc5bd3h
+dd 0120c6297h
+dd 094790b8eh
+dd 0d13814e0h
+dd 085b92db2h
+dd 010df8d74h
+dd 0485878e3h
+dd 0fba95ebbh
+dd 0b2486f41h
+dd 08f6b8c90h
+dd 02160d28dh
+dd 03e0f494eh
+dd 0519d23c0h
+dd 00f7062c4h
+dd 077c7315fh
+dd 0703c5c09h
+dd 0a7155d23h
+dd 0841bd236h
+dd 0bec58b04h
+dd 0039b8e40h
+dd 066f75b34h
+dd 018dbd9c7h
+dd 06269a6a8h
+dd 0cdbce2ddh
+dd 0ef87813bh
+dd 0d8619ecfh
+dd 0bb6a4660h
+dd 09a641182h
+dd 008811532h
+dd 0c2cc8ffah
+dd 088a2cb14h
+dd 0a6745a49h
+dd 06de94a89h
+dd 0365bf798h
+dd 0662c79efh
+dd 04f87d29fh
+dd 058ef98dfh
+dd 01f154fb4h
+dd 0214af91ch
+dd 024f3aa26h
+dd 06befb574h
+dd 0f5e48df3h
+dd 0dec1f49eh
+dd 056bdb565h
+dd 02c41bb34h
+dd 019e07743h
+dd 015ff56cfh
+dd 05f24b0ach
+dd 064a45d5ah
+dd 0fd702769h
+dd 0f09c9226h
+dd 0557a20f9h
+dd 0e438bfb1h
+dd 073e832f5h
+dd 01567dd92h
+dd 0d984c955h
+dd 030075015h
+dd 0c3bf16b3h
+dd 08a268570h
+dd 081baf9d9h
+dd 02c434e1ah
+dd 0e548dc93h
+dd 0f24e378ch
+dd 068590c49h
+dd 0e7af8654h
+dd 041afb449h
+dd 0871eb7f1h
+dd 0903e46e8h
+dd 0d2f2b94eh
+dd 068fa9df0h
+dd 05cdb7266h
+dd 07b7335deh
+dd 0c45d51dbh
+dd 0d7035c30h
+dd 091996d14h
+dd 0302490c2h
+dd 080c6f917h
+dd 01c9769a2h
+dd 01362c8c3h
+dd 0a9be61d5h
+dd 088dc1276h
+dd 0e84320cbh
+dd 0b6f9eed3h
+dd 0ab5b0735h
+dd 040a2f18fh
+dd 0295d8731h
+dd 049e1ea45h
+dd 04c4fbb1dh
+dd 09a74ca8fh
+dd 02aea3d8bh
+dd 032726eb4h
+dd 075bfc372h
+dd 0cfb12baeh
+dd 02192c957h
+dd 055ddd052h
+dd 059214420h
+dd 03f06e85ah
+dd 0bb3f5c72h
+dd 039f028feh
+dd 02701f730h
+dd 0a4437c5fh
+dd 018eb9729h
+dd 0792fa22bh
+dd 0edc57fb4h
+dd 006ce8130h
+dd 04ce4b9f5h
+dd 00ccdfd3eh
+dd 025d317aeh
+dd 0d855139eh
+dd 0e171c01ah
+dd 0f64f1568h
+dd 07a9426cch
+dd 0dfc48a5eh
+dd 094c6e2e1h
+dd 0ab9f0615h
+dd 0720f0cffh
+dd 0c41ffcc4h
+dd 08743915bh
+dd 0ce4cb6b7h
+dd 096e67749h
+dd 0b2c265f0h
+dd 0c05ffcc6h
+dd 023cf99a2h
+dd 0b64896b1h
+dd 0e58ddfd4h
+dd 0a5485d80h
+dd 071e8e462h
+dd 030f148f6h
+dd 0fc5e26c8h
+dd 05832d4d8h
+dd 0d841a27dh
+dd 0d11a7e33h
+dd 026678583h
+dd 08f1155f9h
+dd 068c1c121h
+dd 059ed7f90h
+dd 0c813e525h
+dd 04b7a9d2ah
+dd 06f95a1f1h
+dd 0163b9489h
+dd 0dee830c0h
+dd 0f7ef9559h
+dd 042fbc494h
+dd 023eb86f1h
+dd 005a7b3e8h
+dd 0816d1a8bh
+dd 00572d429h
+dd 0c2a9c94ch
+dd 01bb2093ah
+dd 086af8a68h
+dd 0c792410ch
+dd 0aa0d3005h
+dd 059349f63h
+dd 0a5b36a94h
+dd 05cdafa73h
+dd 01e6aff3fh
+dd 07843589ch
+dd 058c6d480h
+dd 0de185acch
+dd 073c562f2h
+dd 054bec1a1h
+dd 02f1508b1h
+dd 066c2d52eh
+dd 0a98912ffh
+dd 04467c01ch
+dd 0a58f8a78h
+dd 0ef8dc6d5h
+dd 0d74ad131h
+dd 06a0d0f8ch
+dd 03c3ed657h
+dd 0021150abh
+dd 0f0eb15f2h
+dd 063a6d672h
+dd 069ae3ec9h
+dd 0a8ff511ch
+dd 0264bd9d6h
+dd 0bfab8ec7h
+dd 060b9fd6fh
+dd 01c653f2dh
+dd 02943b0beh
+dd 00829ee06h
+dd 095748228h
+dd 080fa598bh
+dd 0fd6f966ch
+dd 03fde3194h
+dd 039d5281ch
+dd 0790e9ac3h
+dd 07e2c95dah
+dd 099bb80b1h
+dd 0efbaac7ch
+dd 00d34bac1h
+dd 0013341bch
+dd 0da822943h
+dd 03f63e7d9h
+dd 0c6cac280h
+dd 0fec52fa0h
+dd 03cbb1424h
+dd 09a2953e4h
+dd 028cd7cdfh
+dd 0a444d6c1h
+dd 0646e496dh
+dd 0022c0073h
+dd 0b37764e5h
+dd 0f3f24c83h
+dd 08333fc3fh
+dd 0b0a20c82h
+dd 0d54a34bbh
+dd 0c099fe83h
+dd 035827095h
+dd 0819c223dh
+dd 060ffa3f3h
+dd 087c3c697h
+dd 0c81cd282h
+dd 0cbe47812h
+dd 03fcdbf4ch
+dd 017b4947ch
+dd 0918f86f2h
+dd 0ac9d1d1bh
+dd 0a9714f70h
+dd 05942be52h
+dd 0b186b642h
+dd 0a5c23a12h
+dd 094e6261ah
+dd 068d93cc4h
+dd 03627c398h
+dd 0edd84d9ah
+dd 03a0c985dh
+dd 0efbf507ch
+dd 01057384bh
+dd 0d8b38921h
+dd 07f2cc5bah
+dd 06e4233a3h
+dd 0831b2a29h
+dd 099fa7b24h
+dd 0f0313e8dh
+dd 0718396d7h
+dd 0b341c368h
+dd 03bb5463ah
+dd 069a494b9h
+dd 0f2071613h
+dd 0f712d6c9h
+dd 04a23bf6eh
+dd 0072d7009h
+dd 0091bdef6h
+dd 05de31316h
+dd 0336b77f5h
+dd 0d19d243eh
+dd 027c21e1dh
+dd 0f70b014fh
+dd 03929e165h
+dd 07af4acfch
+dd 012944d82h
+dd 038702ab5h
+dd 06a7610d9h
+dd 00eb75c05h
+dd 0caf11009h
+dd 00f022044h
+dd 0b043850dh
+dd 011917fdah
+dd 0e4f96d19h
+dd 05c183bd0h
+dd 0db8acab3h
+dd 0725f3f57h
+dd 04e0f5cc9h
+dd 02adb2cb8h
+dd 0627c35d3h
+dd 0cb9c4a08h
+dd 0206d29bbh
+dd 00cbfa832h
+dd 060675a03h
+dd 047168602h
+dd 04304c52ah
+dd 0c9455936h
+dd 0aafff487h
+dd 0ca416598h
+dd 006c127ach
+dd 0a0a16a9bh
+dd 0ae5847a1h
+dd 0058102fah
+dd 08bb8a008h
+dd 027184789h
+dd 0bd9ae22dh
+dd 0afac303ah
+dd 003424e3ch
+dd 0e6c2abf0h
+dd 0ebaffa08h
+dd 0006f3ad1h
+dd 0de97d8adh
+dd 067949054h
+dd 0a7947d45h
+dd 02049f756h
+dd 0d108d4dch
+dd 0b0ae224dh
+dd 058af17e1h
+dd 09470e054h
+dd 0de1e1c71h
+dd 002ee5be7h
+dd 0be2cf191h
+dd 06909321bh
+dd 063e6708fh
+dd 096c0eaf7h
+dd 062aa1058h
+dd 080edce27h
+dd 0ce38777ch
+dd 0a6e55d46h
+dd 080cba365h
+dd 05c44806dh
+dd 01bf7c18eh
+dd 093edeba7h
+dd 00efbd154h
+dd 0f7fa447ch
+dd 0052695bdh
+dd 0081be433h
+dd 01187a498h
+dd 0869baa1eh
+dd 0ed78c0ddh
+dd 068ee78d6h
+dd 050df4419h
+dd 0cd82a36ch
+dd 0a57e9718h
+dd 05ec26823h
+dd 0d7b2dc92h
+dd 0f5d4a82bh
+dd 0ab2c845eh
+dd 012003597h
+dd 0815fd059h
+dd 0049ac62ah
+dd 0b9611871h
+dd 0a98ece98h
+dd 065a97078h
+dd 0837e1e8eh
+dd 08620a52bh
+dd 028326f65h
+dd 02f226708h
+dd 088bca478h
+dd 010e9a001h
+dd 0ed0bf2f9h
+dd 0efeb16a5h
+dd 0ff08955dh
+dd 0b0675f17h
+dd 0b3bc8f66h
+dd 0b19c8d08h
+dd 0f6ea327bh
+dd 01ebfff29h
+dd 0f4b95616h
+dd 0fee326dfh
+dd 05cfa8fa7h
+dd 00e94d8b1h
+dd 052c5071dh
+dd 0cbbfbf6ah
+dd 0507dd034h
+dd 0eca13dcbh
+dd 0293b5882h
+dd 032b3a89ch
+dd 0e5c87dadh
+dd 0ddb7ac69h
+dd 0e34de5dfh
+dd 0d36291deh
+dd 0ad06368fh
+dd 03adaa408h
+dd 0cae486b4h
+dd 067c18bc1h
+dd 0f4d03236h
+dd 0e19cfc76h
+dd 00f86b639h
+dd 081d51e6ch
+dd 09c364f9ch
+dd 09a862607h
+dd 0a6757c10h
+dd 088f97212h
+dd 0c810d128h
+dd 07848cd4eh
+dd 094e5cab2h
+dd 0e2b4226fh
+dd 035c584d3h
+dd 08f45e1c4h
+dd 065136dc3h
+dd 0e7b485d6h
+dd 09b4c9a6ch
+dd 0ae533bf7h
+dd 08deb89f5h
+dd 03542e99eh
+dd 0152f410bh
+dd 034625d12h
+dd 011c6f61eh
+dd 0e2bd8cb4h
+dd 0f864e640h
+dd 075ea01a9h
+dd 02c9f9600h
+dd 047e05bd3h
+dd 059d5fc22h
+dd 045db53eah
+dd 0056bc099h
+dd 04801042bh
+dd 0790be754h
+dd 0960c5ce6h
+dd 08ed3f9b7h
+dd 039470ce0h
+dd 0edae1b42h
+dd 05283cb1ah
+dd 089004561h
+dd 05a257624h
+dd 02b078365h
+dd 01753bbcdh
+dd 0be897774h
+dd 0700a3732h
+dd 02dba37f2h
+dd 0a66d519bh
+dd 0c515ec23h
+dd 01fe6595bh
+dd 03b9d8f72h
+dd 0b5966caah
+dd 0e052ed15h
+dd 0a9a4e37fh
+dd 00efb0bcah
+dd 0663004bfh
+dd 06ae7f3ddh
+dd 07e53da85h
+dd 09299240eh
+dd 09a00f0d9h
+dd 0e9ba8e05h
+dd 00f296f63h
+dd 0b31fde75h
+dd 0c14948f5h
+dd 00ae28c19h
+dd 02a3f408fh
+dd 0e73aae9ch
+dd 0a61ce806h
+dd 008cb085ah
+dd 08d2a233bh
+dd 0557e3629h
+dd 06204c425h
+dd 03a1fb964h
+dd 02ec2f9cch
+dd 0b414847ah
+dd 0e4b228ffh
+dd 091c96592h
+dd 0f15b5150h
+dd 046bc8d36h
+dd 0be332420h
+dd 0994f60fah
+dd 05a272388h
+dd 07931f687h
+dd 0e1a208a7h
+dd 0aa92775ah
+dd 08a25bfb9h
+dd 021bbb13bh
+dd 0491b1a09h
+dd 0e9507e0ah
+dd 085be6af4h
+dd 009e390c7h
+dd 0d54dd5c9h
+dd 008a419e0h
+dd 0255afc99h
+dd 0931c760ah
+dd 029c8f905h
+dd 03eeb147ah
+dd 03dd7093eh
+dd 0b0cf8799h
+dd 08f05303eh
+dd 0bf11bbcdh
+dd 0ec709521h
+dd 06ff6cb3ah
+dd 011201453h
+dd 02a2d54f2h
+dd 0061d57d9h
+dd 0552f9a0bh
+dd 02044ca6eh
+dd 0798d05dbh
+dd 06783c068h
+dd 00d4d01a2h
+dd 0178ab184h
+dd 0781b8a41h
+dd 0e4ead018h
+dd 03c5cc346h
+dd 021e1970fh
+dd 0d2f0612bh
+dd 0f66a47e1h
+dd 00286f305h
+dd 0c4a9cac6h
+dd 08d684a3bh
+dd 0d537c8bdh
+dd 0e0e4e02fh
+dd 087773bdch
+dd 0cd94eb1dh
+dd 0f10233c7h
+dd 0801ba5eah
+dd 0cf17d28eh
+dd 0e5df42a3h
+dd 096b06d63h
+dd 06f1c710ch
+dd 02af97805h
+dd 0e7545fd3h
+dd 0dc5f570fh
+dd 042f2254ah
+dd 0857e67cbh
+dd 0e17b1133h
+dd 003ec27c3h
+dd 036858f9dh
+dd 004a699e8h
+dd 0d5bc0761h
+dd 0384bee6ah
+dd 0691158bdh
+dd 0be87fbcdh
+dd 0ccf67c27h
+dd 0f59ef8cfh
+dd 085c374d2h
+dd 0be6f3712h
+dd 039c52b0dh
+dd 0bb7f75f6h
+dd 092ad6702h
+dd 0997d3975h
+dd 01dac9debh
+dd 016c777fbh
+dd 032c225f3h
+dd 0c7c4be70h
+dd 0c8880cb6h
+dd 071849db5h
+dd 0fd3ad58bh
+dd 0a301c167h
+dd 0acce6d9dh
+dd 0fe2ae15ch
+dd 07264bb24h
+dd 0781c0d8bh
+dd 01a668ffdh
+dd 06964f887h
+dd 0951b2cc0h
+dd 05de3e2d6h
+dd 06e83eb5dh
+dd 0fdd47a6fh
+dd 07a1914c7h
+dd 09add0177h
+dd 0d8128fb2h
+dd 06a18d15fh
+dd 06b38a5cch
+dd 03070663eh
+dd 0733590b8h
+dd 067c59214h
+dd 0e5cf9adbh
+dd 0f6d3fba0h
+dd 08b54d939h
+dd 05e40131dh
+dd 046d317cfh
+dd 024ce780ah
+dd 0d21ffc5bh
+dd 0d099fdceh
+dd 0e83fd441h
+dd 0ef581721h
+dd 01c2f627fh
+dd 06a73fad2h
+dd 0c684e4cah
+dd 048b30ac6h
+dd 0c4c8c7fch
+dd 08e02cd82h
+dd 0dda0c640h
+dd 0e6fe07e6h
+dd 087b588c6h
+dd 03cab8184h
+dd 0036fb7f4h
+dd 0122a001eh
+dd 0264150a8h
+dd 00a3458bdh
+dd 0bda157e6h
+dd 0e73158f1h
+dd 057cc9027h
+dd 0eb0d9c06h
+dd 0e09e2841h
+dd 01708557ch
+dd 0709eb032h
+dd 032976005h
+dd 07b51dcafh
+dd 09270742ah
+dd 0a59e4345h
+dd 0f2fda02bh
+dd 03d312e6ah
+dd 0fc619afdh
+dd 0b8873bbeh
+dd 0b5cd2d5fh
+dd 0300085afh
+dd 04f62d946h
+dd 05a956e46h
+dd 052f17fe3h
+dd 0718ae91bh
+dd 02b98ee9dh
+dd 0da25f930h
+dd 0a5fb80fdh
+dd 0b4c50bd4h
+dd 0b9cf9271h
+dd 064f28b4bh
+dd 0ed06ff5dh
+dd 0efd4ba1ah
+dd 0aa2bd85ah
+dd 0df1d8410h
+dd 03e89c063h
+dd 0cd4953a7h
+dd 0ac57c022h
+dd 00deb9b23h
+dd 0bf69ab7fh
+dd 06fd5c836h
+dd 0b43d17dfh
+dd 0865e78b2h
+dd 0473abdedh
+dd 074d8d4edh
+dd 0a5f748ddh
+dd 07714440fh
+dd 0933cb8ech
+dd 005b9c6a1h
+dd 04ec0375dh
+dd 0c7e7940dh
+dd 00e7d66c9h
+dd 070f89d50h
+dd 0aa0fc338h
+dd 0ccddb0fbh
+dd 061dc2132h
+dd 070a9c784h
+dd 037152f94h
+dd 06b801d2ch
+dd 0e38a6783h
+dd 09693fee2h
+dd 0525db89bh
+dd 03047321dh
+dd 0b556e3dch
+dd 06da0cbfeh
+dd 07c7cb92fh
+dd 0ff0f39e0h
+dd 088e58253h
+dd 04fbdcb56h
+dd 00867deceh
+dd 0b99fca27h
+dd 0e954568bh
+dd 0104da19fh
+dd 004123f6dh
+dd 0733c195dh
+dd 0df5f6285h
+dd 06ac53653h
+dd 043719229h
+dd 0a73fff34h
+dd 08827602ch
+dd 079523c03h
+dd 0258d0806h
+dd 04fc89f50h
+dd 0147e6a94h
+dd 05fd75fa1h
+dd 01960a7f1h
+dd 0a9e914e6h
+dd 005198e90h
+dd 0941268c3h
+dd 0afba7fe2h
+dd 03bb8172ch
+dd 0984be291h
+dd 0c510da31h
+dd 0cbe609b6h
+dd 02d9f8e1ah
+dd 08bb34aa5h
+dd 07de2a5f7h
+dd 0f5f93aeeh
+dd 0d2b70f5fh
+dd 086a3bf56h
+dd 0e52d3681h
+dd 08274b3ceh
+dd 093ca10b8h
+dd 0d10e8a83h
+dd 023dbda45h
+dd 02a9b12c5h
+dd 02ae5d6f9h
+dd 039d29020h
+dd 0b62a7e8ch
+dd 09966121ch
+dd 0a52bc0ddh
+dd 00079dc48h
+dd 0c6fc594ah
+dd 0b7018abch
+dd 0df0dbeb4h
+dd 07c056fa4h
+dd 08e2acc1ch
+dd 091f89dc0h
+dd 01246f8ach
+dd 0fe2769a0h
+dd 02145de6ah
+dd 0798bae31h
+dd 0b341576ch
+dd 0a5ab58c1h
+dd 08da2ef82h
+dd 00c6d9f8dh
+dd 0c6f73bcch
+dd 0d7f74e91h
+dd 08dd10f41h
+dd 05f9757f5h
+dd 0b273e5c7h
+dd 0f55393f7h
+dd 0bebd2dd5h
+dd 00cedbd28h
+dd 06e2a8f37h
+dd 05a1792d5h
+dd 0da1a5c28h
+dd 0ed34e269h
+dd 0d1dc89d9h
+dd 02f92ca2bh
+dd 0d81c6730h
+dd 0698b3310h
+dd 0ebf23ff3h
+dd 0ede02a56h
+dd 0ad97c174h
+dd 08577b6a6h
+dd 01f961579h
+dd 057b5105fh
+dd 0bee56907h
+dd 08f27c41eh
+dd 04b59dab1h
+dd 0a44d2862h
+dd 0de634e51h
+dd 09a3d0270h
+dd 079bf3462h
+dd 016870f8bh
+dd 0687740dch
+dd 0c0f27d9ah
+dd 0596c3f50h
+dd 06d115a0eh
+dd 0e1cac5e7h
+dd 0c6e5769bh
+dd 0324ba8bbh
+dd 0ef723cbch
+dd 09b17f84bh
+dd 03a0931e0h
+dd 0ee04ccc5h
+dd 0a69ae512h
+dd 07caf9d9ah
+dd 05fb42097h
+dd 007be7d17h
+dd 0c62c35fdh
+dd 09c189cd5h
+dd 0964451b3h
+dd 0a101450fh
+dd 056e4b123h
+dd 03f8c65b8h
+dd 0a2f8916eh
+dd 0f7159f75h
+dd 02623e2f2h
+dd 0b897a84ah
+dd 0d23bb78bh
+dd 04aae685eh
+dd 0dde12e26h
+dd 05d023c9dh
+dd 0b26da578h
+dd 0656c0c20h
+dd 05cba3034h
+dd 0941bf247h
+dd 0bba0e712h
+dd 0eff2b3edh
+dd 000cf5cd9h
+dd 01c808adbh
+dd 01b81852eh
+dd 029b94576h
+dd 04f49133dh
+dd 05f784c37h
+dd 0228c8e9ah
+dd 0fee5b837h
+dd 051202e97h
+dd 0eda8a562h
+dd 08c2b89dch
+dd 031e4439ah
+dd 0879ca0c8h
+dd 057c66a43h
+dd 03c739b77h
+dd 0d8b50c29h
+dd 02036f7b1h
+dd 01b0c20d5h
+dd 0e04ffb60h
+dd 03c990936h
+dd 061484fceh
+dd 0652d4c1fh
+dd 09c9ec58dh
+dd 097a229cfh
+dd 0e07b61c9h
+dd 0da883b78h
+dd 09c56f668h
+dd 0c4e4f5ddh
+dd 0ccdd69edh
+dd 0742b28b6h
+dd 0ba31e876h
+dd 0c6ff1b9ah
+dd 0f556beb4h
+dd 0e1c533efh
+dd 0598087c3h
+dd 087e12114h
+dd 0751f70a7h
+dd 06161d947h
+dd 07b426a26h
+dd 007aa830dh
+dd 06fc173bbh
+dd 0a57414cch
+dd 0a03d0a20h
+dd 04737b946h
+dd 0a5a8c2b2h
+dd 035aa780bh
+dd 00c7cae60h
+dd 04dd2b5e2h
+dd 04c7e1765h
+dd 0f47c9a86h
+dd 09721b07dh
+dd 0e6a955cbh
+dd 0d9dd80ebh
+dd 0df1fd4adh
+dd 078cba0d6h
+dd 04794e295h
+dd 0e343689ch
+dd 0dbff11e8h
+dd 0b0d6b61ch
+dd 0072f4b1bh
+dd 0bb3c505eh
+dd 088300129h
+dd 06ad7a782h
+dd 0d52de565h
+dd 0a2943449h
+dd 0c8a47639h
+dd 0bd3784c7h
+dd 0f27450ach
+dd 0e3f1bf41h
+dd 010ec5a00h
+dd 0d9e7fe8ch
+dd 01f5f1ce9h
+dd 054e4aa50h
+dd 091907923h
+dd 0ca3f32e0h
+dd 0e973cc57h
+dd 0d3dd0637h
+dd 0482ec3e3h
+dd 07f27dce5h
+dd 0b7549609h
+dd 053792728h
+dd 04c72f980h
+dd 0914ac451h
+dd 0336686bah
+dd 07de191c3h
+dd 0e0ab4a79h
+dd 0cc8f67f8h
+dd 0227a68bfh
+dd 0f0b37988h
+dd 07792521bh
+dd 0ced59bb2h
+dd 03b52e015h
+dd 0dec1bd3eh
+dd 03d1c57e4h
+dd 05c1d0bbbh
+dd 052f48760h
+dd 03117c915h
+dd 0fb4d6c9ah
+dd 02bd200ach
+dd 03e53a745h
+dd 05b20d53dh
+dd 0a27c0c67h
+dd 0dc67713ah
+dd 064d2dc5fh
+dd 0bc5ef738h
+dd 017f5b1fah
+dd 0ed2eb1c6h
+dd 0164b1bdfh
+dd 0b49ade62h
+dd 062fefed1h
+dd 04b654244h
+dd 09616828ah
+dd 037de68dfh
+dd 01ccdfeebh
+dd 0d5d54b42h
+dd 0120bf4c6h
+dd 011c63abbh
+dd 04ace5253h
+dd 0f05d9d9bh
+dd 0fbbe88f7h
+dd 099344749h
+dd 09afddb64h
+dd 0992f1577h
+dd 0ef017ff5h
+dd 03543f1edh
+dd 060e6639ch
+dd 0c06e7c72h
+dd 0344c3e7ch
+dd 03ccadafdh
+dd 0c88400dbh
+dd 087529e18h
+dd 046268b44h
+dd 01a8eb171h
+dd 05e0affc5h
+dd 00a63e3d6h
+dd 0c16e4245h
+dd 0f2e06253h
+dd 0db770d41h
+dd 01d093daeh
+dd 012008541h
+dd 0a276e248h
+dd 0ea287e04h
+dd 086d45316h
+dd 061c4dd4ah
+dd 0f8e41322h
+dd 062593ecdh
+dd 071c3e3b1h
+dd 0bdc89b3ah
+dd 0b8e427c5h
+dd 0343032abh
+dd 0351db345h
+dd 051dabfaeh
+dd 067ac8ebah
+dd 0c97c6978h
+dd 047e36800h
+dd 041241a34h
+dd 04f980872h
+dd 0eea1af85h
+dd 07bc1fe23h
+dd 0712f7fcch
+dd 0bd3c1073h
+dd 05c467aa4h
+dd 0e60d4be1h
+dd 0e0204ba4h
+dd 072df3479h
+dd 09acf4103h
+dd 0392cf1c0h
+dd 0fbf188aeh
+dd 0b11b5731h
+dd 0dd825071h
+dd 0d0a4170ch
+dd 070ae03f2h
+dd 0da2bcc1fh
+dd 09bc6c162h
+dd 0d20e8f6ah
+dd 0b259e1fch
+dd 0226a3b1dh
+dd 0756b6686h
+dd 0d7105827h
+dd 0ac42ef17h
+dd 06f02d9b1h
+dd 00f6af4c3h
+dd 0d6d4b863h
+dd 056331e1bh
+dd 03ea550edh
+dd 03c594ea5h
+dd 0277b3856h
+dd 069c8afa3h
+dd 021fecd15h
+dd 0017bfca3h
+dd 0bae14db8h
+dd 0c117e5d2h
+dd 009c3dd85h
+dd 031106fa4h
+dd 09968b912h
+dd 04d9c1f9ah
+dd 01ce17e35h
+dd 0268f3d98h
+dd 0a9e9943fh
+dd 039a763f7h
+dd 0f582e7a8h
+dd 04f62b9afh
+dd 0cfe11bf1h
+dd 06752c896h
+dd 0b059d079h
+dd 09ad43178h
+dd 07ab0c7d5h
+dd 0d28f380ah
+dd 007e92932h
+dd 0c7b5f37ah
+dd 0d73c6b49h
+dd 0c919f177h
+dd 0c59cb3ebh
+dd 0eb917cb2h
+dd 0c20b3f29h
+dd 09687424fh
+dd 095b42346h
+dd 0d07f9fdbh
+dd 04c8d9b01h
+dd 041764fe7h
+dd 0fb1dba6dh
+dd 00026fc16h
+dd 02aa5bca3h
+dd 09cb8a669h
+dd 09c210fdah
+dd 077489de6h
+dd 0e30e54ebh
+dd 016b91452h
+dd 0b515e1aah
+dd 0562a8a3dh
+dd 078f6333eh
+dd 059105066h
+dd 089b24f3ah
+dd 0be43dfffh
+dd 0676856c4h
+dd 0de64aa7dh
+dd 032117586h
+dd 0664ee110h
+dd 0a754c959h
+dd 075a9539ch
+dd 0cfcb01a2h
+dd 030f6022dh
+dd 04f8a11a6h
+dd 0a9930dd7h
+dd 0be8dd445h
+dd 01938d938h
+dd 0defd2ce1h
+dd 0b094d61bh
+dd 0ceb021e9h
+dd 00af0eeebh
+dd 0e0d71900h
+dd 0c81e394dh
+dd 068b6a025h
+dd 03eb0acb0h
+dd 0bab06c18h
+dd 048341cc1h
+dd 0369552d1h
+dd 065fd4a7ch
+dd 04160f7cdh
+dd 03a392ae0h
+dd 077b61a8dh
+dd 0dbe62a4bh
+dd 0e8dc8a24h
+dd 01590a743h
+dd 03e632b76h
+dd 0e2bffb61h
+dd 069f6c23ah
+dd 036ee75bah
+dd 0c620aa4fh
+dd 0ef9e2fe0h
+dd 033b2c839h
+dd 01d93804eh
+dd 0f4e2b99eh
+dd 0b97be138h
+dd 05b003270h
+dd 07cc76e68h
+dd 03f02e095h
+dd 011cd7866h
+dd 02351a9c0h
+dd 0f0b1aeebh
+dd 0d44d9554h
+dd 0ed87a204h
+dd 08e712543h
+dd 0477b1cech
+dd 0c0ddcaedh
+dd 09211c28fh
+dd 02aca1802h
+dd 0bfef465ah
+dd 06b73215bh
+dd 0c7cd3322h
+dd 04dc43c81h
+dd 0b39789edh
+dd 079753df8h
+dd 0783a5209h
+dd 093f2c322h
+dd 0a9d2638ch
+dd 0cc39bdc6h
+dd 013a828feh
+dd 01e028272h
+dd 03dec1994h
+dd 0f4ff29bdh
+dd 0afb7b1fbh
+dd 059b5d41dh
+dd 01435e6edh
+dd 06ac8d1dch
+dd 0f1f928f8h
+dd 02a46246eh
+dd 00966c21ch
+dd 06d17f3f7h
+dd 0bd339401h
+dd 09bed9bc9h
+dd 0d2747ac6h
+dd 023a1fc9fh
+dd 0822eb01fh
+dd 0ec27ed3ch
+dd 0c2e2add0h
+dd 01727f2dbh
+dd 06e62e6fdh
+dd 09a73d19fh
+dd 02b54e29bh
+dd 0aa35aad5h
+dd 0656063d4h
+dd 0eef19a55h
+dd 0869470e3h
+dd 000291da6h
+dd 01d8a2a09h
+dd 0fa4a7812h
+dd 08987a9bfh
+dd 0fe956321h
+dd 0b629f126h
+dd 00446f3fdh
+dd 0d192d5eah
+dd 0a66c7bf2h
+dd 003ee8ddch
+dd 05c3d36b6h
+dd 0ddfefdcdh
+dd 061475093h
+dd 0729071fch
+dd 0b7671029h
+dd 050b7c56dh
+dd 0c44961dfh
+dd 02b7b28d3h
+dd 073e746edh
+dd 028217717h
+dd 0e640ec12h
+dd 0ca4e4eb4h
+dd 013911affh
+dd 0b1f7cb6ch
+dd 01922a68dh
+dd 058848112h
+dd 0f4baa40ah
+dd 047426111h
+dd 026c6c6b3h
+dd 026296440h
+dd 07b33cd2fh
+dd 03ce9bf1ah
+dd 0924d1c4dh
+dd 0164ab675h
+dd 089e78c67h
+dd 096e53761h
+dd 06fbbc1ffh
+dd 072fb0ee5h
+dd 0d8efac89h
+dd 06cf241f4h
+dd 0e49f2b8ch
+dd 0ca054ae4h
+dd 09dda9225h
+dd 0f6a6545bh
+dd 0610a3738h
+dd 0e38f9bd5h
+dd 05e314ab7h
+dd 0ceb2c8e2h
+dd 03b88509ch
+dd 0f3a7427bh
+dd 0c81783cdh
+dd 0ae7a3511h
+dd 007bb0f3dh
+dd 081a751aeh
+dd 0508bdb72h
+dd 064675aa5h
+dd 060447a07h
+dd 061dd4078h
+dd 01d442c16h
+dd 0ed6017b0h
+dd 012cf920ah
+dd 0ef98f419h
+dd 041c19c14h
+dd 071505f7ch
+dd 0248bcd1fh
+dd 018f5c312h
+dd 040f5f931h
+dd 0041a21c8h
+dd 0ac26f95ah
+dd 0591d563ah
+dd 0a5fb6394h
+dd 0619af47dh
+dd 0ec81863ah
+dd 0f08cf14fh
+dd 0e571f9e4h
+dd 06ce0e890h
+dd 03eb1dac6h
+dd 017694db0h
+dd 07bdb0a5bh
+dd 0ed1b0d43h
+dd 0aa8b036fh
+dd 0c2640d5fh
+dd 0a218efefh
+dd 09cdd9a40h
+dd 019b97a98h
+dd 05794cd73h
+dd 03e504f79h
+dd 0f0190a97h
+dd 0bfe095eeh
+dd 0cb42380bh
+dd 0e00228f5h
+dd 0512caebch
+dd 09eae0b5fh
+dd 0ffff5ba6h
+dd 054b5d00ch
+dd 0a12c970eh
+dd 03d13fb48h
+dd 06f36ab2ah
+dd 0ba9b3883h
+dd 00b07d619h
+dd 03827b11dh
+dd 0cb37ecb5h
+dd 0193b5aceh
+dd 0183d84d3h
+dd 0eebdf234h
+dd 020c6b9dbh
+dd 004fc2f2eh
+dd 0b55a5b72h
+dd 082d87560h
+dd 07be18cf7h
+dd 0c288f9b0h
+dd 0f2b1f8a0h
+dd 032860c17h
+dd 003de7b2ch
+dd 0a7e0047bh
+dd 0d88f34c2h
+dd 0dd04322ah
+dd 03571b180h
+dd 020c246bbh
+dd 07900131ah
+dd 0c6bf45f8h
+dd 01108f158h
+dd 0fddfd378h
+dd 0ef72fff0h
+dd 0f5e39800h
+dd 0bfe06e40h
+dd 0115b6c31h
+dd 03afd86cah
+dd 025468d28h
+dd 0fadd4213h
+dd 0546a6ca7h
+dd 0e79726a9h
+dd 0d5ff3f1dh
+dd 06afbe2c1h
+dd 04c614d11h
+dd 0cde39bbah
+dd 03f6daf2bh
+dd 0fe71feedh
+dd 08cdbd8ffh
+dd 0e6c8135eh
+dd 07f73cb92h
+dd 0409b2de6h
+dd 00ab1f6a4h
+dd 0670033c2h
+dd 0c1b4ebcah
+dd 01f205144h
+dd 056ad8b3ch
+dd 0a611b8b6h
+dd 0aa22c6adh
+dd 0e232032ch
+dd 05da81033h
+dd 05d5bb5b6h
+dd 0aac497f8h
+dd 03558658ah
+dd 0801dc8bfh
+dd 03e9682adh
+dd 063bea0adh
+dd 03da5bc47h
+dd 005bc66f0h
+dd 0828932bfh
+dd 098ce9b95h
+dd 02a0c780eh
+dd 074194733h
+dd 05c96f1b2h
+dd 06f7872abh
+dd 0f4f92064h
+dd 051dc5a3bh
+dd 0e6821b99h
+dd 0a81b8d59h
+dd 0c395e456h
+dd 07f0c2090h
+dd 0131d755bh
+dd 0c2c9b5d5h
+dd 0d7f8fa84h
+dd 0f71053f4h
+dd 0e077dd3bh
+dd 059c40534h
+dd 03f7f7951h
+dd 0aadf68cfh
+dd 0205767a7h
+dd 038792ea5h
+dd 02fb3d848h
+dd 077776498h
+dd 0d6b8924bh
+dd 0129fca6ch
+dd 0b6af8cdbh
+dd 06d67d78fh
+dd 0e821cf5eh
+dd 0d5df289eh
+dd 09cca9f19h
+dd 0dca0aeech
+dd 0b9e8fa0ah
+dd 05ed77c4ah
+dd 016980055h
+dd 07558cca7h
+dd 09adb2e20h
+dd 05dd44627h
+dd 0dc3d0df8h
+dd 0f6dedf3ah
+dd 08e155cfbh
+dd 0d7413b8bh
+dd 0f8e1f9abh
+dd 0cffe294dh
+dd 090959402h
+dd 01f0b5a16h
+dd 03ca948f2h
+dd 0782544a3h
+dd 03ebe34aah
+dd 0bd1c3a3bh
+dd 08370f659h
+dd 0abfc69a9h
+dd 0ad946d35h
+dd 058f9d292h
+dd 04154a0a5h
+dd 0742b4906h
+dd 07c704831h
+dd 0ef798173h
+dd 0c99c9028h
+dd 06fcd0b31h
+dd 08d08b03bh
+dd 05156f084h
+dd 00c2b2a99h
+dd 0de5f5ef2h
+dd 08e27824bh
+dd 012ffac7ah
+dd 066c940a4h
+dd 0ddb487a0h
+dd 08a6b86bah
+dd 037cf80ebh
+dd 0435c33c8h
+dd 0e9ee965ah
+dd 0acf83f57h
+dd 03d162e5fh
+dd 0e7411bc5h
+dd 05707b689h
+dd 051f18023h
+dd 0817263b5h
+dd 01cf707cch
+dd 0c21dd455h
+dd 075e9bde5h
+dd 0369259f9h
+dd 0381d55b6h
+dd 011dcf998h
+dd 05c815de6h
+dd 038b612c6h
+dd 01c2eeec8h
+dd 002311197h
+dd 036f0b1e2h
+dd 07bf97ce0h
+dd 056b43b96h
+dd 03ec79760h
+dd 0fbc5b0a0h
+dd 043f08cf6h
+dd 01474d6edh
+dd 0fbf01dcah
+dd 04ea73e5dh
+dd 0d6efbfb2h
+dd 060f2416fh
+dd 0ca12551eh
+dd 04e10e825h
+dd 085b16d0bh
+dd 0493adfeah
+dd 0e5415053h
+dd 0ec2c8cd4h
+dd 0f9086800h
+dd 0c9da4372h
+dd 089d4a245h
+dd 002826e24h
+dd 0f5b68ba3h
+dd 003551279h
+dd 07a1c9f4dh
+dd 0a45f72adh
+dd 03aaebba8h
+dd 03bffe0d1h
+dd 080e957b1h
+dd 0c6ba9e67h
+dd 084cd4d13h
+dd 0cf93bcf1h
+dd 07a2d2e94h
+dd 0711efa3ah
+dd 0124ed3ach
+dd 064613e51h
+dd 0e3f87900h
+dd 03be10ae2h
+dd 09e8fd702h
+dd 0112ff9e4h
+dd 0a8f766c2h
+dd 0a3fb944ch
+dd 09934d893h
+dd 07bc3e68ch
+dd 06135141ch
+dd 0a4ee3d71h
+dd 06b3eb4b1h
+dd 0d8f61895h
+dd 03eef6b9ah
+dd 05910f72dh
+dd 05e48d15fh
+dd 02425908eh
+dd 0bc625174h
+dd 0b229c9e7h
+dd 0bf23cf84h
+dd 0cd7f6ee3h
+dd 0eb5d3b8dh
+dd 04864db89h
+dd 013fa42dbh
+dd 072ab0af7h
+dd 069a10ca4h
+dd 0face9219h
+dd 04c9021f9h
+dd 039c7e8f0h
+dd 02ebecce5h
+dd 0dc249288h
+dd 0d973ed48h
+dd 033168c26h
+dd 01c2e98a6h
+dd 0c931ba50h
+dd 072327b0eh
+dd 0b23d669eh
+dd 0c7d75032h
+dd 08a26c5b1h
+dd 01c52eac9h
+dd 05c0c0075h
+dd 0c7397958h
+dd 0fcf155a4h
+dd 0a6d5f3a3h
+dd 0098ae4efh
+dd 00fe8f6edh
+dd 0c2d4edbeh
+dd 0a0f37852h
+dd 0eeda27a8h
+dd 03eacfa95h
+dd 09d4e79c4h
+dd 01dbcc01fh
+dd 06d453b08h
+dd 07d768e55h
+dd 0fd7b02efh
+dd 0f1c151cah
+dd 08a402df4h
+dd 0ccc98aaeh
+dd 0702cbec1h
+dd 0b3e7fa3ch
+dd 01d36a33ah
+dd 0a3d47452h
+dd 083364d0ch
+dd 01f38a92eh
+dd 034ceec11h
+dd 03f8c3c18h
+dd 0089bfb63h
+dd 0520db388h
+dd 02bcfdda1h
+dd 0087d4c75h
+dd 0ed0f06b1h
+dd 079b9a99bh
+dd 0bfde9e7fh
+dd 0a756a91ch
+dd 0d105602dh
+dd 0c8473b24h
+dd 01e3d3dabh
+dd 0261a9c94h
+dd 01b4074cbh
+dd 051131942h
+dd 0a63d7ce3h
+dd 0f735453eh
+dd 0aea68f26h
+dd 02292b2cfh
+dd 071188dc6h
+dd 06ece3b0dh
+dd 0252005ceh
+dd 0ee8a4cffh
+dd 0a91195adh
+dd 05c0e8f3dh
+dd 0d7512908h
+dd 032171b44h
+dd 0cecf6945h
+dd 05492da3eh
+dd 062e2cb02h
+dd 05ef16b76h
+dd 0fa1ad556h
+dd 0837cbd24h
+dd 0e21e9242h
+dd 0c5da9025h
+dd 01af81faeh
+dd 05a200ddeh
+dd 0bbb96234h
+dd 0aa6471f6h
+dd 0301dc2feh
+dd 085aff1b8h
+dd 046fb00bbh
+dd 02221f84ah
+dd 064f29b21h
+dd 00f52ce7fh
+dd 00cebb71bh
+dd 00b749e15h
+dd 0bc146c14h
+dd 002d3d137h
+dd 0cd2fb2e6h
+dd 0fb520ab3h
+dd 067bda1bch
+dd 07e789148h
+dd 014a13939h
+dd 0d110c24fh
+dd 0123b888bh
+dd 00f649db0h
+dd 0e058ee4bh
+dd 02c0f6415h
+dd 097b654fch
+dd 0b09f4be9h
+dd 0c05761afh
+dd 01dfefeb6h
+dd 0c14d8659h
+dd 043159df1h
+dd 060af8832h
+dd 08ecd70d3h
+dd 06dd726bbh
+dd 0859ab0ebh
+dd 04337ddb8h
+dd 0cc05499ah
+dd 09192e15fh
+dd 07e1dabaah
+dd 02e5dfd11h
+dd 07f45eaddh
+dd 0cfdefcb5h
+dd 04fb88f65h
+dd 0f386a36bh
+dd 066d862a8h
+dd 0c4fc6c2ah
+dd 095a9dd72h
+dd 020458b6ah
+dd 051d660a4h
+dd 04ec9ff72h
+dd 037c147afh
+dd 0da60d94ah
+dd 0eb9d609ah
+dd 0a7578543h
+dd 05bc6c432h
+dd 015590f71h
+dd 003c237e9h
+dd 0b2034949h
+dd 069a844efh
+dd 016da65f9h
+dd 00b6e88cah
+dd 03f86f373h
+dd 0264c7e02h
+dd 0daee59dch
+dd 0cee8c470h
+dd 0740b692bh
+dd 048e83e6ch
+dd 02570ad29h
+dd 03c7cacb8h
+dd 092ca7fd2h
+dd 00229d595h
+dd 01c628e7ch
+dd 0f390a61eh
+dd 04c374fcdh
+dd 08f0c9361h
+dd 0d466dc07h
+dd 01d244019h
+dd 0d17005eeh
+dd 0cf39a23dh
+dd 0a431fce0h
+dd 0e3c936dbh
+dd 0a091fb6dh
+dd 037d37481h
+dd 06b92cef9h
+dd 086c0f16ch
+dd 075415dc0h
+dd 0f93280e0h
+dd 06a0ef095h
+dd 0b3d22789h
+dd 099723df3h
+dd 08b40f941h
+dd 0a5348659h
+dd 07718152ah
+dd 0effc5fd6h
+dd 0f356190bh
+dd 01cffa232h
+dd 035e84a1eh
+dd 072316cc5h
+dd 03a319c99h
+dd 0c9bf3681h
+dd 07e119428h
+dd 0ad5357f1h
+dd 0dd0021b5h
+dd 009fc0e0bh
+dd 029abdceeh
+dd 0ba8fdc04h
+dd 0d0977f8fh
+dd 0a0d3c819h
+dd 0b831b1d1h
+dd 00adbb26dh
+dd 028c3aa53h
+dd 01f835721h
+dd 060aa33c2h
+dd 097323a65h
+dd 073a27026h
+dd 076835d9ch
+dd 02da81796h
+dd 03ac74faeh
+dd 0beb8ee4ah
+dd 01d951480h
+dd 09d1662dch
+dd 01aaa5bf6h
+dd 06e139f85h
+dd 0ae325e20h
+dd 0d60a4fb2h
+dd 00b15e644h
+dd 0f04a39d9h
+dd 0e4642c30h
+dd 06539ac3bh
+dd 0f9c7ed79h
+dd 0e5677da3h
+dd 0d945629ah
+dd 0cc0a3c34h
+dd 01b9e5577h
+dd 0402a684ch
+dd 0fac80bd7h
+dd 0fa24dab0h
+dd 0bfba432bh
+dd 03341a1c9h
+dd 0a58e6121h
+dd 03d21ae7ch
+dd 0ac51a04bh
+dd 080d39fe0h
+dd 068efd1b3h
+dd 0dd6adf44h
+dd 0cc2b1803h
+dd 00de1ac75h
+dd 0437f7ae6h
+dd 049140b09h
+dd 07b80267dh
+dd 020c14c31h
+dd 02be747edh
+dd 01754cbb6h
+dd 09df43c5bh
+dd 0ec6877bfh
+dd 02525b37fh
+dd 0c3c1ba9ah
+dd 0ac68a8afh
+dd 0994b17c6h
+dd 016703f26h
+dd 04b238f22h
+dd 06e579b2eh
+dd 0dd64fe51h
+dd 04ec6cc03h
+dd 01e7454b3h
+dd 0179f6bb8h
+dd 06c30049fh
+dd 0fd3e916ah
+dd 03ab3e40bh
+dd 081d8d82bh
+dd 0ef4a4f1bh
+dd 0a0306334h
+dd 0eb383313h
+dd 0c7ade312h
+dd 08121b8feh
+dd 01be12808h
+dd 0969cdbe0h
+dd 011721c28h
+dd 02187d72dh
+dd 0fbebb26dh
+dd 0573c788eh
+dd 0537b7c40h
+dd 08b20be26h
+dd 0a1363a4ch
+dd 0d09f4039h
+dd 0cc9783ffh
+dd 0bf6c8b7ch
+dd 07786df87h
+dd 039905200h
+dd 01751b3e9h
+dd 0777e90b6h
+dd 04711e13fh
+dd 07f81062bh
+dd 04322b9c0h
+dd 04ceab664h
+dd 06cc56a21h
+dd 047304a8bh
+dd 034313e5fh
+dd 0b09e0acch
+dd 02eb3e778h
+dd 0de47e05bh
+dd 06da96f8dh
+dd 0a4bb2deah
+dd 06642e4fch
+dd 0b76cd86ch
+dd 0f1159f46h
+dd 075bcc4b5h
+dd 00197499eh
+dd 03a54d9a7h
+dd 0c67081a5h
+dd 00dd00ab8h
+dd 0f5833a47h
+dd 051ffa2c3h
+dd 0ef536ca0h
+dd 06bd48d1ah
+dd 05cf3c2cfh
+dd 049326405h
+dd 034aa612eh
+dd 0b878db93h
+dd 0038de602h
+dd 0d20363b2h
+dd 00eeafe17h
+dd 018003d63h
+dd 078fa0adfh
+dd 061a20535h
+dd 017ccb8e9h
+dd 0aa7e9cedh
+dd 0974a4e36h
+dd 076da1676h
+dd 0f40c1e71h
+dd 05b9d19ffh
+dd 0831a85f7h
+dd 0f74d68cfh
+dd 01c48489ah
+dd 05cfd4d52h
+dd 00c4772e9h
+dd 0b4e5c8b0h
+dd 0cfff8cd7h
+dd 05a877c1eh
+dd 0e82a7844h
+dd 08788def9h
+dd 0ccab13abh
+dd 0764532e7h
+dd 0a3d16e40h
+dd 002343c22h
+dd 05ee02c1ah
+dd 07a4c6c3ah
+dd 02e13c50bh
+dd 0f1babe2ch
+dd 0cf527593h
+dd 0d6211909h
+dd 06da281d1h
+dd 060a32c78h
+dd 0f476a650h
+dd 0012de797h
+dd 0f5047255h
+dd 05d0d2926h
+dd 011b303d3h
+dd 0eab5b261h
+dd 0334cf282h
+dd 0c902597eh
+dd 0736d94b1h
+dd 0d29953efh
+dd 03e326ea6h
+dd 05064251ch
+dd 09ece7464h
+dd 053537f23h
+dd 04365436dh
+dd 0c2b1ebd0h
+dd 0c1ba71e8h
+dd 0ec406385h
+dd 0bba73aa3h
+dd 0ee201829h
+dd 0cf102b0ch
+dd 0b31b0813h
+dd 033c1c5f4h
+dd 02a777f1ah
+dd 0d84561d2h
+dd 038cf4409h
+dd 030995ac2h
+dd 0ce891d13h
+dd 0e1f9bccch
+dd 06129d7cbh
+dd 0c4e2dbc3h
+dd 0296406fch
+dd 0d88f340fh
+dd 0a1d79601h
+dd 0cd938886h
+dd 0da7bb17fh
+dd 0547914bch
+dd 0bc07c385h
+dd 0dd44b9d6h
+dd 01c82a762h
+dd 08258f5c9h
+dd 0394e8ff1h
+dd 0752429a3h
+dd 0437941cah
+dd 0d98e679dh
+dd 085c01278h
+dd 0f26c71d9h
+dd 0722c165bh
+dd 0eddefb37h
+dd 0430d1318h
+dd 08535edbeh
+dd 0da17e414h
+dd 08dd73125h
+dd 01c4924f1h
+dd 0322ec320h
+dd 0f48f0feeh
+dd 0b2903dd8h
+dd 0056b91adh
+dd 099bf6749h
+dd 0ed2ff54ch
+dd 02ef36293h
+dd 04e9a6679h
+dd 0c10aaf7ah
+dd 01e1cd303h
+dd 0c0fb0ab8h
+dd 06116d592h
+dd 04264ca4fh
+dd 01cd50083h
+dd 034935db9h
+dd 0ee1ec826h
+dd 00a740504h
+dd 0de103771h
+dd 087aaee5ch
+dd 061e5bb4ah
+dd 03eb34a82h
+dd 0a8496d08h
+dd 03b9288b3h
+dd 0a793ac13h
+dd 022c724beh
+dd 0334d79b0h
+dd 0b0be751dh
+dd 0931b7ffah
+dd 0d4d5cc82h
+dd 038b7e109h
+dd 0d7a38f71h
+dd 064251cf8h
+dd 0bb89fc2ch
+dd 0cb285aa7h
+dd 09d72a011h
+dd 07b8c27fah
+dd 0ed704db8h
+dd 0385cf44eh
+dd 0466b3655h
+dd 03021eec0h
+dd 0ad4e7fd2h
+dd 0acefd57ch
+dd 0df9430f0h
+dd 09569bd6eh
+dd 01d87cdb5h
+dd 0b24fdc93h
+dd 034782cc4h
+dd 0293ddc57h
+dd 066f82eech
+dd 0233254ddh
+dd 0f1dcd36ah
+dd 0cb4d74b0h
+dd 074a48bc8h
+dd 0bd4caf43h
+dd 0be27bd0ch
+dd 03769431bh
+dd 0c17c5436h
+dd 034a31b0eh
+dd 059428671h
+dd 07723c031h
+dd 05c089c9dh
+dd 01e08c3ddh
+dd 0f50fe13ah
+dd 0098fcc4bh
+dd 0bd3f6597h
+dd 0ec06c8d4h
+dd 0286d99bch
+dd 04bd9a720h
+dd 030b011bah
+dd 07ced3e9eh
+dd 0d2be7378h
+dd 0d42c871eh
+dd 0281bafd5h
+dd 0cc18ed14h
+dd 09943e1b6h
+dd 0594cdeach
+dd 0741ad77ah
+dd 0aae8943bh
+dd 05974e89fh
+dd 02ef10649h
+dd 061d6eee3h
+dd 0e6ec0e83h
+dd 023e4ed2eh
+dd 096b4a274h
+dd 032ee8e33h
+dd 02e20e090h
+dd 05894b79dh
+dd 03765fadah
+dd 0da9384bdh
+dd 0d01788b1h
+dd 0c8bbdd4ch
+dd 08595d9c9h
+dd 03f858641h
+dd 0f2315d73h
+dd 0b8ce2ef9h
+dd 0bd00141ah
+dd 0704a4890h
+dd 0c1b3a3d0h
+dd 04a7fc993h
+dd 0db3e6303h
+dd 049419216h
+dd 0f093b87dh
+dd 069e6a0d9h
+dd 0c9ae4411h
+dd 01b1da37bh
+dd 045bfc417h
+dd 0ce694c8ch
+dd 061c6b231h
+dd 08b3735c4h
+dd 0f1708fe1h
+dd 01ac97a64h
+dd 0ad16be93h
+dd 0ceecb6e7h
+dd 0a05d5691h
+dd 0596c3e0ch
+dd 0d6cf5fcah
+dd 030d52e23h
+dd 045842d35h
+dd 050dab3b6h
+dd 08e901c67h
+dd 0a9ffa4e8h
+dd 03c11df7ah
+dd 0b508b0c0h
+dd 035b05e15h
+dd 0ce6d492ah
+dd 0868f8bech
+dd 0ec2f50d1h
+dd 05eea2109h
+dd 0dc83b7f1h
+dd 0b4ecbca9h
+dd 0537b5260h
+dd 072eb6aa9h
+dd 0b21117e3h
+dd 09f18172fh
+dd 0d6109d7dh
+dd 0f9cca696h
+dd 05e028c69h
+dd 0facf0df3h
+dd 0063af9ffh
+dd 0082c93f2h
+dd 0855b4cf0h
+dd 0fb7769c2h
+dd 0669e6292h
+dd 0f6a4a4b8h
+dd 00dd5ad68h
+dd 07ea5b1d4h
+dd 019ea3b03h
+dd 08cf1c9d0h
+dd 080949211h
+dd 014b91481h
+dd 018728919h
+dd 047544831h
+dd 0bc4ab4f9h
+dd 032605443h
+dd 01e0c2da5h
+dd 0f8330e88h
+dd 0821c8fe5h
+dd 04e313da8h
+dd 09587e084h
+dd 090cc33c7h
+dd 0bd5e0e6eh
+dd 0e64cbd19h
+dd 0fc1d42eeh
+dd 0c5fcc230h
+dd 0e2e52317h
+dd 0452c5329h
+dd 07df0ba4ah
+dd 07cb35dd5h
+dd 053e7752dh
+dd 0c43d5477h
+dd 0e268326ah
+dd 0c968c6e6h
+dd 04f2899b0h
+dd 06aadc2cch
+dd 04460be16h
+dd 0d61c4471h
+dd 05b75804bh
+dd 0e9cb999eh
+dd 0301358adh
+dd 059fac3fbh
+dd 042e57ffch
+dd 06062b15eh
+dd 0fb323e2ch
+dd 09fb5f54bh
+dd 05353f0b5h
+dd 0acbfc336h
+dd 0fdcd6e9ch
+dd 0e1dc9108h
+dd 0b033670fh
+dd 075314922h
+dd 0f8c7a125h
+dd 040849b95h
+dd 00320e2d7h
+dd 0c01f5c7fh
+dd 03f31606ah
+dd 0a1083b18h
+dd 08487a0f2h
+dd 060a6a2f1h
+dd 02da09c01h
+dd 0683b2c41h
+dd 0b61486f1h
+dd 0ada06ee5h
+dd 07448587ah
+dd 071adf0c4h
+dd 0f06f3a13h
+dd 0917ca65bh
+dd 032f4558dh
+dd 00ece5675h
+dd 031f9392fh
+dd 0d01fa220h
+dd 00cadcc28h
+dd 0a688b815h
+dd 0c8f3d99fh
+dd 0ae7840ach
+dd 031cf5555h
+dd 0fdabffafh
+dd 029f8f1bfh
+dd 03e8b30dah
+dd 0573236e1h
+dd 0bd719b84h
+dd 0e1cd76c0h
+dd 04be5f8feh
+dd 02787dc8eh
+dd 0f0c7eb34h
+dd 0f3f65656h
+dd 0dda3535eh
+dd 0e9895a52h
+dd 0b9ee6011h
+dd 079be4dfah
+dd 050570ad4h
+dd 02db89c12h
+dd 0571d7584h
+dd 0069c3299h
+dd 02ecd5553h
+dd 03eaf32d2h
+dd 0c453b811h
+dd 0fd524faah
+dd 0d91772b6h
+dd 02006e9dch
+dd 0c5815f55h
+dd 0c1a9e273h
+dd 01193639dh
+dd 0a3b02474h
+dd 0b2c8b732h
+dd 0b12c75ddh
+dd 0cfd00bd8h
+dd 07c20cd7ch
+dd 0bc03688dh
+dd 098227e08h
+dd 09c5e570eh
+dd 002c8a75fh
+dd 0471c9893h
+dd 02cde9011h
+dd 06f1c6ee0h
+dd 0b6801b4bh
+dd 007abf063h
+dd 0580454bfh
+dd 0189bccaeh
+dd 0de20ac64h
+dd 06049d051h
+dd 05a7b87a8h
+dd 05e50aed4h
+dd 02c51bd7dh
+dd 0c2658f76h
+dd 0af782edah
+dd 0b8312bdah
+dd 0a44bc605h
+dd 047f877c8h
+dd 09d39a267h
+dd 0f53b993eh
+dd 02a912cf7h
+dd 05595f996h
+dd 013279cf0h
+dd 0257dca13h
+dd 0c825c3b1h
+dd 0242c7b7ah
+dd 093e3209fh
+dd 01d401655h
+dd 0616d6db9h
+dd 021ce56a8h
+dd 036dde5d4h
+dd 0451267a9h
+dd 0f66d45ddh
+dd 077c605e5h
+dd 0afba528ch
+dd 07d73f982h
+dd 0fc025307h
+dd 0bf6b5930h
+dd 0d80382a8h
+dd 03df0e1cfh
+dd 04537d1a6h
+dd 0c54a6cdah
+dd 0c5c049c1h
+dd 0f656e289h
+dd 04581876dh
+dd 04076caf9h
+dd 0d8d59775h
+dd 0983cfa18h
+dd 0cd29da58h
+dd 0de94b918h
+dd 0e20a7141h
+dd 0c5486fa8h
+dd 0d98988a1h
+dd 092f744d1h
+dd 0fd2ac9d4h
+dd 06780beb4h
+dd 0e298273eh
+dd 0067feb1fh
+dd 04e0cf581h
+dd 07a50ebebh
+dd 0abf9b75ch
+dd 08043643ch
+dd 0438fa641h
+dd 0a7fc8e95h
+dd 0abb65914h
+dd 09e0224afh
+dd 0686f7edeh
+dd 0694a3d6bh
+dd 070c040b4h
+dd 0d20c932eh
+dd 0eb4de51dh
+dd 00f4448b3h
+dd 0836b36b8h
+dd 01e32abbah
+dd 0bf083b10h
+dd 02fa09b38h
+dd 0743dce1dh
+dd 016221443h
+dd 0d1ea2f5fh
+dd 04e8e81a2h
+dd 0587b6bceh
+dd 0bfa56f84h
+dd 016ace68ah
+dd 0b2645e4ch
+dd 0aea612a4h
+dd 01ecac992h
+dd 0b4193008h
+dd 0ed43b7efh
+dd 0d7d58271h
+dd 059b99e62h
+dd 0fc1997d0h
+dd 0d4f9047dh
+dd 002f8bfedh
+dd 0bb021f2ch
+dd 02ee20f88h
+dd 0a35277edh
+dd 0b6b7d74bh
+dd 063e7c927h
+dd 0db75d642h
+dd 0ba6f17bfh
+dd 069a1480bh
+dd 0add9a80fh
+dd 00ad5bfe3h
+dd 01695b9e7h
+dd 0e6eb59dfh
+dd 0d309e34bh
+dd 0eb9ecd35h
+dd 04aa2cec9h
+dd 089337010h
+dd 0a124bfbah
+dd 0dfaf887dh
+dd 02d44a870h
+dd 0d0c36d44h
+dd 0b87ff099h
+dd 0667c7a6eh
+dd 0bb09a38dh
+dd 01d4f0987h
+dd 0227726ddh
+dd 00ec5f96dh
+dd 0cdfe4891h
+dd 0d5d2882ch
+dd 05edc869ch
+dd 0f08aa0beh
+dd 0cb27cb33h
+dd 0bbd673b2h
+dd 0f4acaefch
+dd 01a8e1c8bh
+dd 067b488a9h
+dd 0fc7f15ffh
+dd 0648da577h
+dd 00083b3b9h
+dd 00ef3eb91h
+dd 0af816b13h
+dd 07e482116h
+dd 0aa715cb2h
+dd 09f4c7f2ch
+dd 01d501b30h
+dd 045df046ch
+dd 0f169db36h
+dd 0f179b3cah
+dd 0fa974e81h
+dd 0506ce8ach
+dd 01d918a29h
+dd 00679945bh
+dd 014079a3dh
+dd 0180b29c0h
+dd 079a6b2b8h
+dd 03077d3bdh
+dd 07bcd2733h
+dd 02b486036h
+dd 0dddecaa3h
+dd 023820101h
+dd 003c4b043h
+dd 07b2967fch
+dd 081b9b525h
+dd 0ffc84dc3h
+dd 0007bdab5h
+dd 07446da12h
+dd 09b2e5624h
+dd 0ebc69142h
+dd 0d94b364eh
+dd 06965711fh
+dd 0965200e2h
+dd 0e90d2ca4h
+dd 006edf645h
+dd 09272daadh
+dd 0c3472030h
+dd 0215b19beh
+dd 0302f15cah
+dd 0688ebbdbh
+dd 067d4a98ah
+dd 08c65a6abh
+dd 0d59087d0h
+dd 0afaca79eh
+dd 098540c34h
+dd 08aef9dc6h
+dd 09fc1b89bh
+dd 022c8ed51h
+dd 0fb6614c1h
+dd 093358366h
+dd 0133ccb3ah
+dd 08e5f18b1h
+dd 06cb5401dh
+dd 075e27b48h
+dd 0933d26d5h
+dd 0f3b1bd9fh
+dd 05b54c884h
+dd 0c59d8912h
+dd 0c4573404h
+dd 015fc166ah
+dd 0ce3253b1h
+dd 0d726aa7eh
+dd 06f5d30cah
+dd 07c711c43h
+dd 0362fccddh
+dd 06e0cea75h
+dd 07dc3899fh
+dd 06dc3f826h
+dd 05d8afa92h
+dd 02896936ah
+dd 06700746ah
+dd 0744d2975h
+dd 0c1a79495h
+dd 0c3fe4b14h
+dd 0e8caee15h
+dd 083ed3be2h
+dd 09edac458h
+dd 06e664f25h
+dd 0a2cdb226h
+dd 0bc85a02fh
+dd 0bdf1b834h
+dd 0aaa48dd8h
+dd 05e760774h
+dd 0ad241086h
+dd 0a1fae982h
+dd 0a361fd0ah
+dd 0f04853fch
+dd 0ac3953aeh
+dd 07fcd1720h
+dd 0ebc49b70h
+dd 00619e5fah
+dd 02d50260fh
+dd 075e096b9h
+dd 09346b67fh
+dd 0bddb07aeh
+dd 0e28a93a4h
+dd 0444b6607h
+dd 0de8881bfh
+dd 0e90a3415h
+dd 084651f76h
+dd 014861efdh
+dd 0e5a971beh
+dd 08b7c5c7fh
+dd 050e7e380h
+dd 0bafb6f12h
+dd 030fc4471h
+dd 07b0c8d89h
+dd 016037d31h
+dd 0fd79adfbh
+dd 04ec7d03ah
+dd 0a5bda640h
+dd 0615abc93h
+dd 0d836de6ch
+dd 0e81c459ch
+dd 0b547f766h
+dd 033154cdbh
+dd 03becdd19h
+dd 0706922a3h
+dd 04bf66c31h
+dd 069fc73e8h
+dd 02d6c3c54h
+dd 0b5ceaf73h
+dd 088478638h
+dd 082936733h
+dd 0fc618ee2h
+dd 0af5da33fh
+dd 0dd15b960h
+dd 0196a2f74h
+dd 080174d67h
+dd 0c7831858h
+dd 0e186902dh
+dd 04b09a36fh
+dd 00b5bf5aah
+dd 024b3e51dh
+dd 0020eab0ah
+dd 027ece5e5h
+dd 05d4172fch
+dd 0d137d0e7h
+dd 0e2121e56h
+dd 0016170b5h
+dd 0c3b1ff8ch
+dd 0aa709cb7h
+dd 0ccadf1b0h
+dd 0df0e09d5h
+dd 057e33961h
+dd 0c0886b5fh
+dd 01ff1b3c6h
+dd 0fd258537h
+dd 0d9bce35ah
+dd 0620b48cch
+dd 054ac0465h
+dd 08da33e33h
+dd 040a1d61dh
+dd 09ebda60ah
+dd 05c109d58h
+dd 0b2a3255eh
+dd 0f5b92ef1h
+dd 00b84d294h
+dd 082c829a0h
+dd 0476927e6h
+dd 0aa708effh
+dd 0b44d3ce1h
+dd 031d9dafch
+dd 01020dd55h
+dd 007444f61h
+dd 0a536cb2ch
+dd 0bc14c2dah
+dd 0a08a28e3h
+dd 07049fa71h
+dd 090c0e39dh
+dd 0b2c744d7h
+dd 0eda77d78h
+dd 0383ed904h
+dd 04d538820h
+dd 0351188d9h
+dd 02f222e69h
+dd 067afd3c5h
+dd 09bc41124h
+dd 0c8349aadh
+dd 07711634fh
+dd 0f30fb122h
+dd 081c3009ch
+dd 0b14ea0cbh
+dd 0da3fe3e5h
+dd 013b5346bh
+dd 086e15f57h
+dd 0d0ddeb7ah
+dd 0d190c4dah
+dd 070935ab8h
+dd 03a51d53ah
+dd 079708007h
+dd 0b28c317fh
+dd 02abe0c28h
+dd 0c9c26cf4h
+dd 088ebb853h
+dd 08327e0e6h
+dd 06d914580h
+dd 0e2c1537eh
+dd 09aa2e4d1h
+dd 066740722h
+dd 08bbaa9c6h
+dd 08b465540h
+dd 0a0c77aaeh
+dd 06b46f75fh
+dd 077633133h
+dd 06541a094h
+dd 0a62ff14eh
+dd 05b2b385eh
+dd 059da6f53h
+dd 0961b24cfh
+dd 0fb610ab1h
+dd 09ec6afe8h
+dd 0285aecf2h
+dd 06c0caf29h
+dd 0217a5631h
+dd 08df8dae0h
+dd 0193094f9h
+dd 08bbe9f71h
+dd 0df1cc152h
+dd 0104a697eh
+dd 03e311909h
+dd 027177097h
+dd 0a71374a1h
+dd 05e213275h
+dd 091c50909h
+dd 0d4f431aah
+dd 091728fb2h
+dd 0e49c82f4h
+dd 0b6d3543dh
+dd 09db0879dh
+dd 034563770h
+dd 0905b60bdh
+dd 0c3a89052h
+dd 080340dadh
+dd 0c58da991h
+dd 0d029c861h
+dd 009abb388h
+dd 0a40f2872h
+dd 0b5953101h
+dd 0aede8ac5h
+dd 04715ec79h
+dd 0f4d33d38h
+dd 0a87f86b2h
+dd 02653c3a3h
+dd 017405fedh
+dd 048ed776eh
+dd 0c6b893abh
+dd 05094c4dah
+dd 03ce48252h
+dd 0600cf397h
+dd 0ae7e99b1h
+dd 0c5c60071h
+dd 011806e59h
+dd 05621c808h
+dd 0f260f29dh
+dd 0dbb60b49h
+dd 0b0e5c570h
+dd 0cbead4bfh
+dd 0a05a9844h
+dd 0b6da8775h
+dd 0cded4947h
+dd 09cedef14h
+dd 0b97f7ef5h
+dd 00957e98dh
+dd 01081ef22h
+dd 076468167h
+dd 0cb921390h
+dd 0eeca84dfh
+dd 0e27f1583h
+dd 09cfa3720h
+dd 0779bcd93h
+dd 0d736a5d7h
+dd 0064874f1h
+dd 0c15805beh
+dd 0384cc937h
+dd 0ab6faf39h
+dd 0bb595971h
+dd 0fec70499h
+dd 064abd3d8h
+dd 0a5eb3303h
+dd 06483fbc3h
+dd 0708f6796h
+dd 04e29930ch
+dd 01fc439e6h
+dd 0ef129f5ah
+dd 07001bbech
+dd 029775133h
+dd 06bac28a9h
+dd 0161576cfh
+dd 0eaa9d0f9h
+dd 0c07a3e39h
+dd 09ea8bdceh
+dd 030e648e0h
+dd 0da55ab6fh
+dd 053d5b093h
+dd 0859ffd32h
+dd 055c764d0h
+dd 045cc24feh
+dd 0ce387eech
+dd 0fc4d4534h
+dd 028b10af8h
+dd 0c7ffdd02h
+dd 0b2e1303fh
+dd 069190d70h
+dd 00ec28dc3h
+dd 09cb3410ah
+dd 0fd0b3aefh
+dd 078867f8eh
+dd 028f172dch
+dd 03284b8f9h
+dd 003e564c2h
+dd 081d08700h
+dd 075b680abh
+dd 0f10da3e3h
+dd 0463f2b6eh
+dd 01d027aech
+dd 0edd5d9e5h
+dd 032fea2f2h
+dd 02eed722eh
+dd 0df2bad99h
+dd 068a88282h
+dd 0b25cdb99h
+dd 07abcc905h
+dd 01dc6de20h
+dd 0e8b6cbfbh
+dd 00190f3f4h
+dd 051833418h
+dd 06d1423e1h
+dd 074181d9bh
+dd 010a593c6h
+dd 0bdaed07dh
+dd 0fe9743beh
+dd 0695c1f43h
+dd 0838c05eeh
+dd 0bd055779h
+dd 0b8668d58h
+dd 029a89d43h
+dd 02ce036a8h
+dd 058af4f14h
+dd 001721ec3h
+dd 06ef1eb0fh
+dd 0592097fdh
+dd 00e3005e1h
+dd 0f86c38f8h
+dd 0926185f0h
+dd 0e3998368h
+dd 0581078f2h
+dd 0529ac0bch
+dd 0d5bc9a96h
+dd 05034789dh
+dd 03a92a125h
+dd 0bea15464h
+dd 023f49eabh
+dd 0fcdebf96h
+dd 05a2ae69dh
+dd 0c27f6beah
+dd 04fa8306fh
+dd 044c27babh
+dd 0abdcda37h
+dd 0f55c9845h
+dd 0fda77a8ch
+dd 015e498c5h
+dd 0c44aa51eh
+dd 01f1298bfh
+dd 04cb0b6bbh
+dd 0f6cad60dh
+dd 0f484ac5eh
+dd 0834990b3h
+dd 028519488h
+dd 0614cba1eh
+dd 034aaf346h
+dd 042537232h
+dd 0dfb92f65h
+dd 0a2784ac6h
+dd 09ce779c0h
+dd 00fc4521eh
+dd 0998e3458h
+dd 075b7cccbh
+dd 0e7c9baf9h
+dd 007acabd1h
+dd 0b36d6534h
+dd 0a74250e2h
+dd 0e8dca146h
+dd 0daf79837h
+dd 017f96e70h
+dd 034dcded3h
+dd 0bee4c8ddh
+dd 090d657dch
+dd 012b4902eh
+dd 00597e1abh
+dd 0976cd397h
+dd 01b6bb968h
+dd 03d7efde0h
+dd 0f1a99877h
+dd 054f78b7bh
+dd 083ebbb27h
+dd 094c56f3ch
+dd 062b9e2efh
+dd 0548c6397h
+dd 08200d62ch
+dd 0a36f5f30h
+dd 072254c85h
+dd 0a96c6d3bh
+dd 0bcd0cd28h
+dd 0c0ea048dh
+dd 06abef98fh
+dd 094941a89h
+dd 0e571700eh
+dd 016d2fed5h
+dd 07b31850bh
+dd 0b18e7a66h
+dd 05db07c44h
+dd 0dc6ca356h
+dd 08525ae6dh
+dd 090ac5151h
+dd 001e4dca5h
+dd 0754bc883h
+dd 0af1475dbh
+dd 00e4de4afh
+dd 0aecaf96ch
+dd 00bea001ah
+dd 0943530f2h
+dd 01fda4579h
+dd 0a8ca714fh
+dd 0b004abc7h
+dd 032029884h
+dd 033f4b44dh
+dd 0ce8744e1h
+dd 0f25ba12dh
+dd 0e40af279h
+dd 08662f9a6h
+dd 02896ba79h
+dd 0ab4e6f5bh
+dd 0238ab37dh
+dd 066591745h
+dd 0f4b5f683h
+dd 077848083h
+dd 0798eace2h
+dd 0058fbcf9h
+dd 08476fb2ah
+dd 0c70b52feh
+dd 04d244f48h
+dd 085b99ee2h
+dd 0cbe451ech
+dd 05203e807h
+dd 0c5ff1182h
+dd 02664fa19h
+dd 02e6a2269h
+dd 084610fd8h
+dd 0521e82ddh
+dd 0c5588e89h
+dd 0a6e4e8ech
+dd 0720c7747h
+dd 0c3206798h
+dd 04ef21a40h
+dd 04fd0392bh
+dd 0eac6bd31h
+dd 0efe78d19h
+dd 0bd85a686h
+dd 0963676c4h
+dd 094c8ffafh
+dd 026a437cch
+dd 0b93041b3h
+dd 054d82445h
+dd 01e72058bh
+dd 09ba7eecdh
+dd 0060af3eah
+dd 0fec29c9fh
+dd 00e1f8a17h
+dd 06d295739h
+dd 08aa3b49ah
+dd 076512991h
+dd 0bc54fa9fh
+dd 062f3b51eh
+dd 0dccbb30fh
+dd 02bb223d8h
+dd 049926d21h
+dd 0ca94fad0h
+dd 074f35142h
+dd 00bd4dc3dh
+dd 018cde146h
+dd 07db4dfa1h
+dd 05e7b99afh
+dd 078b65a8ah
+dd 0483dcc92h
+dd 0b20a7da0h
+dd 08e5961fdh
+dd 077b0fa53h
+dd 0ade653abh
+dd 02dce21a5h
+dd 0d9866835h
+dd 08268e13ch
+dd 00e323b71h
+dd 036648ee7h
+dd 077132d52h
+dd 0371dfd4dh
+dd 0920d1c26h
+dd 08dabc1e2h
+dd 0c473b676h
+dd 02c71ef23h
+dd 092cdd5b2h
+dd 0529b628dh
+dd 0ff065032h
+dd 0474283e8h
+dd 04545d78dh
+dd 035fca2adh
+dd 0b5c43965h
+dd 04abb9ddbh
+dd 0f273d7ddh
+dd 09e75efebh
+dd 0f83fe3e3h
+dd 0c2ca71a3h
+dd 04f7b0ccbh
+dd 0e3488958h
+dd 01ff36067h
+dd 084944918h
+dd 0754c6a83h
+dd 0faf9e9fbh
+dd 04ff1b23dh
+dd 011fcf102h
+dd 05be89c77h
+dd 0528edd6ch
+dd 0b67af40dh
+dd 00026420eh
+dd 07a6f1731h
+dd 06f3c8696h
+dd 0be70c6b0h
+dd 01aa493d8h
+dd 0bdc75474h
+dd 0c5b880bah
+dd 042ec891dh
+dd 0f113de77h
+dd 073e853d2h
+dd 0f3fec05fh
+dd 089596fafh
+dd 0971dd129h
+dd 0ec320adfh
+dd 09d7a81a3h
+dd 0db75c2f9h
+dd 04758efbdh
+dd 06053e4e8h
+dd 07d05a956h
+dd 008083269h
+dd 05a7d4db4h
+dd 07e41d315h
+dd 032e0bf39h
+dd 021f28bc8h
+dd 0e34fef0dh
+dd 0b0e46894h
+dd 0f00c2b84h
+dd 0a8f8b975h
+dd 01762ff3eh
+dd 0e8122239h
+dd 006b2c222h
+dd 063cd9ab8h
+dd 0a782a708h
+dd 03d69bdd8h
+dd 036a0b727h
+dd 0f24c668eh
+dd 0e506bc00h
+dd 0b3a1e3efh
+dd 0ce328444h
+dd 068d0ee60h
+dd 0cc1d194bh
+dd 0f7e140c7h
+dd 0c1756aa2h
+dd 05deb7021h
+dd 0e3caf605h
+dd 0210737a1h
+dd 0ff9ed835h
+dd 01b3e7724h
+dd 03cb24323h
+dd 0762590d1h
+dd 0660de09eh
+dd 032a83c9fh
+dd 05c182c9dh
+dd 05422c404h
+dd 03afa568eh
+dd 013ee4fedh
+dd 00f393f4fh
+dd 0a43cf540h
+dd 06dbcdaa8h
+dd 04967e77dh
+dd 066fcc7e4h
+dd 0160cf3e3h
+dd 024d1adcah
+dd 01b5363bdh
+dd 0f2dba8a5h
+dd 029ea7797h
+dd 0bd327d72h
+dd 0a3a75513h
+dd 0592f06a4h
+dd 06e0b39b7h
+dd 0ec2d5b8fh
+dd 02e5d91f5h
+dd 066ccec55h
+dd 05f565dc2h
+dd 05a4ba22dh
+dd 011fd63d5h
+dd 0eede058eh
+dd 01a65ee26h
+dd 0a2102f20h
+dd 0eb4880c1h
+dd 06c4c62bbh
+dd 0da8b692fh
+dd 0b35bb3f6h
+dd 068abf24ch
+dd 085abdb54h
+dd 0685a68fch
+dd 0cf3b41b6h
+dd 0d4814b8ah
+dd 0edabc382h
+dd 0ed9d669bh
+dd 0ebd7cb94h
+dd 04b49ffc7h
+dd 0e4680c49h
+dd 07d5440e1h
+dd 061bbdc4ch
+dd 0cbf74f24h
+dd 0ec86c307h
+dd 014858249h
+dd 00d8916e1h
+dd 0b8bc006bh
+dd 01fe386b0h
+dd 0917ff85fh
+dd 077300a7ch
+dd 0bfda4556h
+dd 01bddd17ah
+dd 0cd1e45b0h
+dd 06ada5f76h
+dd 0b7ff04eah
+dd 0cc1a4cc5h
+dd 0b26fbc1eh
+dd 060d19a57h
+dd 0c456c16eh
+dd 003aaab2dh
+dd 0158eb726h
+dd 03b20863ah
+dd 0cf984582h
+dd 08d8f635eh
+dd 0dc466e43h
+dd 000c3bb90h
+dd 005fd3ba0h
+dd 0e133eb62h
+dd 06a742c14h
+dd 063cd38ach
+dd 0d08c6083h
+dd 028f27f95h
+dd 0b7731517h
+dd 0ec0450ach
+dd 0ddfed411h
+dd 07311420ah
+dd 0a8f9fde2h
+dd 0af8d7797h
+dd 02fa378bdh
+dd 06836da9dh
+dd 05bb3ad30h
+dd 00ec5abcdh
+dd 082b52f08h
+dd 0ef0705e2h
+dd 065edd232h
+dd 02d5a7ee1h
+dd 061659162h
+dd 0ab5c926dh
+dd 09d978f47h
+dd 0f7bd2f32h
+dd 0d826f3aeh
+dd 07581ae20h
+dd 049e34d4dh
+dd 07b518409h
+dd 0ec9716d5h
+dd 059009b0ah
+dd 0670d8642h
+dd 0613025cch
+dd 06b786f97h
+dd 0a508a5eeh
+dd 0cc3ec266h
+dd 0409e08afh
+dd 0e81b1df1h
+dd 0e8683a03h
+dd 0b9636d39h
+dd 0d239eae8h
+dd 0b8e9cf22h
+dd 0d7d04422h
+dd 0e0748eb5h
+dd 09a78944ch
+dd 0606670c0h
+dd 015a004deh
+dd 0e9ed0f37h
+dd 03cdf5372h
+dd 012ac7b47h
+dd 02d433419h
+dd 02b81ed4ch
+dd 029aa91cch
+dd 0018173aeh
+dd 099e5658eh
+dd 038ad688eh
+dd 096991335h
+dd 0fa04ca04h
+dd 03faa666ch
+dd 07c5fdcddh
+dd 0da04904fh
+dd 0ebe4b185h
+dd 032576c46h
+dd 04e5c352ah
+dd 0996919e3h
+dd 0cabe5ab2h
+dd 04188d1fdh
+dd 029054524h
+dd 00e1ea31fh
+dd 0278961e7h
+dd 05bf64c25h
+dd 0e9764ed9h
+dd 0bde9431ah
+dd 0b655b8b1h
+dd 03d78b74eh
+dd 00a8437ddh
+dd 07eee36fch
+dd 0099c408fh
+dd 042a47871h
+dd 0d5939f24h
+dd 070670f26h
+dd 016bd7e19h
+dd 0f61a14b8h
+dd 0be387325h
+dd 0d5e3060eh
+dd 078f4bb51h
+dd 0a27b4e6fh
+dd 0b6f35927h
+dd 06468ffffh
+dd 03eb2e803h
+dd 069bce012h
+dd 03368e4f9h
+dd 021788da4h
+dd 0323af613h
+dd 02c01500dh
+dd 068519d6dh
+dd 02376928eh
+dd 0cc8c6cd8h
+dd 08b957ad0h
+dd 08de9508ch
+dd 0382b282bh
+dd 0097f4c07h
+dd 0744479a7h
+dd 0a05cc54eh
+dd 0e65207a7h
+dd 035c074e8h
+dd 07e9abca9h
+dd 0c2c5db34h
+dd 09820a4a3h
+dd 0902d0ef8h
+dd 083bd5908h
+dd 0321ebebfh
+dd 0788f9127h
+dd 01a67349ah
+dd 0c5faedd8h
+dd 0b14a6c26h
+dd 0b48c1490h
+dd 0f9a045bbh
+dd 0b33de7a7h
+dd 0110cc989h
+dd 07574c755h
+dd 0d44533c1h
+dd 00f95e601h
+dd 092a70f37h
+dd 03ee6a569h
+dd 07c5effe4h
+dd 037055476h
+dd 0b9527787h
+dd 0c3936915h
+dd 0d2bc0f28h
+dd 0a90073f6h
+dd 00ab42324h
+dd 0228cef2ah
+dd 0c94ccd96h
+dd 0c3e5aa62h
+dd 0450b275dh
+dd 0d368d4a5h
+dd 0994982d9h
+dd 096e9ab61h
+dd 06c8019e5h
+dd 06b5e1cd0h
+dd 0cabbd30fh
+dd 0e901cfdeh
+dd 09eaaf51eh
+dd 0d9171504h
+dd 0f2a0c293h
+dd 05d3f52c1h
+dd 057a22429h
+dd 030235003h
+dd 0c43e7be3h
+dd 060a88642h
+dd 03f328b10h
+dd 07e9ed850h
+dd 0af50c933h
+dd 00e7a432fh
+dd 0d8acac14h
+dd 025217adfh
+dd 04c43d506h
+dd 0c10a9761h
+dd 0c93ecbech
+dd 0a33956f3h
+dd 05352a03ah
+dd 006bf5d7dh
+dd 004797d8eh
+dd 00f0f16c3h
+dd 096a8ec60h
+dd 0d70e98e2h
+dd 0e3e466f6h
+dd 073b36529h
+dd 083b466d0h
+dd 0ce288eceh
+dd 0d6f9e65ch
+dd 0c5bbe205h
+dd 01d3ecd8eh
+dd 02e8e5c39h
+dd 0f290db80h
+dd 04a4f70b0h
+dd 004503890h
+dd 0c1e28f84h
+dd 0ca44d249h
+dd 0d3c5996bh
+dd 02e4c52d7h
+dd 0e57baf11h
+dd 01057507eh
+dd 0272c6a79h
+dd 0f2857569h
+dd 0a238eaaeh
+dd 0c87457fch
+dd 06db0dbc0h
+dd 0fe829663h
+dd 061e85ffeh
+dd 0b33e284eh
+dd 010bbbd3ah
+dd 08b548341h
+dd 0ce41dd08h
+dd 0802c8e32h
+dd 0db098025h
+dd 07851d506h
+dd 08c7af993h
+dd 0b8e5f1f0h
+dd 099d21f5ah
+dd 071e85b79h
+dd 06cfa8618h
+dd 0713622ffh
+dd 0dfe35d4ah
+dd 0570e09ddh
+dd 0520ea1beh
+dd 091d122f4h
+dd 0b810f27ch
+dd 04a098af2h
+dd 088609274h
+dd 031857a7dh
+dd 04c9d9c8eh
+dd 002c70d03h
+dd 07d4c7b91h
+dd 0285308bch
+dd 0a6293022h
+dd 0f1fbd775h
+dd 05342c91fh
+dd 07a7e37cdh
+dd 0f315a743h
+dd 0db5610b3h
+dd 0bee136e3h
+dd 0e5a76f21h
+dd 0c205c44eh
+dd 065e949b3h
+dd 0b4f99d13h
+dd 091776e4ah
+dd 07368021bh
+dd 021168a3eh
+dd 0268271e1h
+dd 0228282c9h
+dd 0e481aa5ch
+dd 0e3e377f5h
+dd 01ab7f7d4h
+dd 0317dc488h
+dd 05945f499h
+dd 00bf846fbh
+dd 030a45aefh
+dd 04f37db6ch
+dd 0714a7694h
+dd 001607157h
+dd 00ac62d0ah
+dd 078e1f6c9h
+dd 0b7722652h
+dd 096db1e0fh
+dd 094f5e623h
+dd 0fe3c5be7h
+dd 0e401f1f7h
+dd 070427d94h
+dd 02d29f3cch
+dd 0cd1f9572h
+dd 049521232h
+dd 0acd06411h
+dd 055123343h
+dd 095dcedbch
+dd 0bdce1b65h
+dd 03c19ca34h
+dd 0b345b775h
+dd 0a05fca6dh
+dd 07ac674c6h
+dd 03ea184eah
+dd 0c434abb0h
+dd 05fbb7a22h
+dd 0ebb92d04h
+dd 04417e4bbh
+dd 0c6727eebh
+dd 00e3edc7ah
+dd 00eb09573h
+dd 09ebdf646h
+dd 071fc2e8fh
+dd 022136ebeh
+dd 00de8b500h
+dd 0ef9528cbh
+dd 0ceddbd26h
+dd 018f169ffh
+dd 0f24508bdh
+dd 0f19afae5h
+dd 0c63a3f40h
+dd 0d83d5a34h
+dd 0f06e7059h
+dd 0c3c1ea4ch
+dd 071410a2ah
+dd 0caf49b0eh
+dd 0622e483dh
+dd 06dfaa59eh
+dd 0d0ac7ed6h
+dd 01dd50770h
+dd 0f884de22h
+dd 0fefb09a4h
+dd 0f3426d28h
+dd 0071b4d90h
+dd 0a501c8dfh
+dd 0b446aa9ah
+dd 0852bfe16h
+dd 0182b0f7eh
+dd 01493e2a0h
+dd 097d7ed6fh
+dd 09a7d46aeh
+dd 0e93d84dah
+dd 0a1c48566h
+dd 0c29c119bh
+dd 0302c9283h
+dd 0161c1ab4h
+dd 0429404e0h
+dd 08c1e2334h
+dd 002efc1ech
+dd 0c4788c1eh
+dd 0a61c5f46h
+dd 00df4f8c9h
+dd 0bc064a27h
+dd 0635bfe57h
+dd 0224cc9d8h
+dd 03509d8b2h
+dd 0f5ceee86h
+dd 0225bab84h
+dd 098f2a58ah
+dd 011be8cd1h
+dd 09bacf8beh
+dd 09c5b0398h
+dd 075a9f790h
+dd 0972518c0h
+dd 0425f5026h
+dd 050f37b48h
+dd 0a4973377h
+dd 0d75ecc29h
+dd 0aa298793h
+dd 046553233h
+dd 03f74638dh
+dd 02f354f23h
+dd 01d54d3e2h
+dd 01ef88a77h
+dd 004495576h
+dd 0d9bf9b37h
+dd 081324513h
+dd 0222dd8f5h
+dd 0d39b8dbdh
+dd 06221a880h
+dd 093ad0b06h
+dd 01f3d219dh
+dd 0eb8a3924h
+dd 0bb76cd09h
+dd 03f4df982h
+dd 0566cda2fh
+dd 052750019h
+dd 0820038abh
+dd 0c9ce96b3h
+dd 01d1efdfbh
+dd 0ca124f14h
+dd 0ebbdc36dh
+dd 00224736ch
+dd 092a74759h
+dd 0baaf9304h
+dd 08c69fbb3h
+dd 066392267h
+dd 0c51f5173h
+dd 0e2d0007eh
+dd 0dcae8f15h
+dd 07c1462a9h
+dd 0314de96eh
+dd 09ffdee03h
+dd 0df45fbadh
+dd 06b835794h
+dd 068b88e0dh
+dd 0653b0622h
+dd 0c041af10h
+dd 0afb75b3ch
+dd 019a23e34h
+dd 012292306h
+dd 049d818d4h
+dd 060074274h
+dd 00cebb0cfh
+dd 031a3a624h
+dd 0e30f3e04h
+dd 0508060bch
+dd 0d22ac3dch
+dd 0fba1baf7h
+dd 0ee732b8eh
+dd 0ee0dc2c6h
+dd 023aa002ch
+dd 014c1c849h
+dd 00dca32b0h
+dd 02e07f53eh
+dd 0cc587697h
+dd 0af3386d2h
+dd 0f17d11eah
+dd 0d2334d82h
+dd 0bfcf553bh
+dd 0e180f886h
+dd 08cf362ach
+dd 064e7576eh
+dd 00cb5ed8fh
+dd 017be4c50h
+dd 0fc7a5a03h
+dd 0378d148bh
+dd 0a27cdb1ch
+dd 078dd7845h
+dd 06c0a176eh
+dd 0dd97c0fbh
+dd 06362a719h
+dd 02ba11210h
+dd 070bc8160h
+dd 0d7b57bd8h
+dd 031dde0e2h
+dd 02c3278b5h
+dd 0aa82d00bh
+dd 0fc8d7492h
+dd 01d482812h
+dd 0f55cde6fh
+dd 00afa512eh
+dd 0c37aa8c1h
+dd 0f7eacc52h
+dd 02d423739h
+dd 0ef84e4a1h
+dd 08f8b9642h
+dd 0878aaff0h
+dd 000065aa5h
+dd 0bae7d985h
+dd 043c3f2a0h
+dd 00ca0d0ceh
+dd 0e8ee7c28h
+dd 0abb5313ch
+dd 03a1b046ch
+dd 0aef6dc97h
+dd 01cffb69fh
+dd 0e8d570e9h
+dd 0cdaeb980h
+dd 0d3b27246h
+dd 004d24d5ah
+dd 076771060h
+dd 05a245afdh
+dd 0da58aa79h
+dd 026245d21h
+dd 0216867bfh
+dd 0f2b6028dh
+dd 03a31cdbdh
+dd 01fd90bc0h
+dd 0035009a4h
+dd 00ac3afb2h
+dd 09d6bba06h
+dd 0a83dfa71h
+dd 0b8f24eb1h
+dd 0b18f2a55h
+dd 0e15a7fc5h
+dd 0db25d32ch
+dd 0d7ba5473h
+dd 08dd7cec1h
+dd 04a09fa7ah
+dd 0fa3903f7h
+dd 0f5cc2e92h
+dd 0475c74c0h
+dd 0d2fcad77h
+dd 01a5a9c20h
+dd 0813ddb42h
+dd 0a12a0c50h
+dd 0a1954e69h
+dd 004781cf4h
+dd 09b024296h
+dd 0e08343e1h
+dd 0b87c0d82h
+dd 0c5339ab1h
+dd 0d662a2f5h
+dd 0b07692f3h
+dd 0780b9434h
+dd 0309ec341h
+dd 002c957d8h
+dd 03f847adah
+dd 0008c7538h
+dd 0f3586cb5h
+dd 07531eccdh
+dd 063792f01h
+dd 04c8eaba8h
+dd 0fc976817h
+dd 00647a1d5h
+dd 018a9d6c9h
+dd 0b0bc5820h
+dd 0a3974efch
+dd 0794722ddh
+dd 0cd6e494ah
+dd 06bce6e0ch
+dd 0b5f34d8dh
+dd 06e42a95ch
+dd 02ce446c2h
+dd 06a71b577h
+dd 00bbbf479h
+dd 0aa0c827bh
+dd 0d2c63498h
+dd 02d5dfea0h
+dd 0b37524bbh
+dd 06e969b35h
+dd 088d88ab2h
+dd 0261c503ah
+dd 03813d927h
+dd 050d4d350h
+dd 09c75c211h
+dd 0b96c05b4h
+dd 051fff2e0h
+dd 0046083f6h
+dd 0cbde0dc4h
+dd 0b299664bh
+dd 0ef241028h
+dd 0e619e199h
+dd 01d3109dfh
+dd 02201ae22h
+dd 00f6e4cb4h
+dd 0c002ec4bh
+dd 04878ee51h
+dd 03a04dfd5h
+dd 0e636a5c2h
+dd 00fbc1e33h
+dd 01df835b7h
+dd 0a79c42f6h
+dd 056c0794dh
+dd 0bf9e0ff0h
+dd 056e598e0h
+dd 018f685f6h
+dd 0ef5ef37bh
+dd 0b31a2fbfh
+dd 0b731c8ech
+dd 04058fcd5h
+dd 0d2ab5378h
+dd 0aa29e9fch
+dd 0197e0c15h
+dd 03e4634f0h
+dd 0007e604eh
+dd 09b95af20h
+dd 002103b70h
+dd 01b7d907ch
+dd 06cb37ee1h
+dd 0a8a9f3c1h
+dd 064d328c6h
+dd 03e4eeddch
+dd 0fc074439h
+dd 06349c52eh
+dd 0deea2ee0h
+dd 06d7f3ef1h
+dd 0a6b5dcabh
+dd 04999542ah
+dd 00962d882h
+dd 0c7804b2fh
+dd 05f79caa9h
+dd 073d4e874h
+dd 07e6dddd7h
+dd 06ccebc97h
+dd 0c9591392h
+dd 0ed3cd1c6h
+dd 0f28bf0c7h
+dd 07de3197dh
+dd 056eb3db1h
+dd 0757089a3h
+dd 0d907116fh
+dd 0f9bf87a8h
+dd 0b4079703h
+dd 0d8d7b225h
+dd 0bae9f458h
+dd 089a13ea9h
+dd 03ed95d03h
+dd 04cd7b504h
+dd 0cc276f79h
+dd 0629307a7h
+dd 03298b1dch
+dd 0e2e74f01h
+dd 015610850h
+dd 098925359h
+dd 039244b07h
+dd 064f975f4h
+dd 0bfb85d21h
+dd 034fb9728h
+dd 0a84640a2h
+dd 0043276cah
+dd 089b3a949h
+dd 0f69df28bh
+dd 0dbc0629eh
+dd 0a2094678h
+dd 0e149e3eah
+dd 02a0c20dbh
+dd 08381b64ch
+dd 01da64c97h
+dd 013fceddah
+dd 00aab3c8ah
+dd 08e09867ah
+dd 066af92c1h
+dd 0c81879fdh
+dd 075d32cb4h
+dd 060c1ad56h
+dd 0890665b4h
+dd 038eb8dd9h
+dd 048594dbfh
+dd 03e8fcd2eh
+dd 0b84d4885h
+dd 00761b9d1h
+dd 0abc531fbh
+dd 018618073h
+dd 02b4ab9aeh
+dd 0cbcffeb6h
+dd 02bdd8241h
+dd 0a88d24d1h
+dd 06af1db10h
+dd 04c3cf11dh
+dd 00f174ad2h
+dd 0a761e7edh
+dd 061d743c9h
+dd 0fc2fae0dh
+dd 058ce1bc1h
+dd 05c7a7cc9h
+dd 0098529c0h
+dd 006cd0cabh
+dd 036da5d90h
+dd 0b4f70274h
+dd 0e12dd845h
+dd 0a33990e6h
+dd 0d27e754ch
+dd 0aeeafb43h
+dd 0913c61aah
+dd 093739754h
+dd 0103354d0h
+dd 083995628h
+dd 0e867ac2bh
+dd 0de13ca31h
+dd 093912653h
+dd 0270bd064h
+dd 0a53129a8h
+dd 09ca3e759h
+dd 099f19812h
+dd 05c320cb9h
+dd 0c3515adfh
+dd 0e6806e9ch
+dd 0cd74863fh
+dd 0cd656ac7h
+dd 060a09186h
+dd 02456b703h
+dd 0dd85755fh
+dd 01e67c806h
+dd 0ca283527h
+dd 073e8ba08h
+dd 0dfca56d7h
+dd 07b8bc7b5h
+dd 0f6444ecfh
+dd 094cd4188h
+dd 0ffe7bfbch
+dd 0a287b2ach
+dd 00e275b5fh
+dd 001728a8eh
+dd 053f933b8h
+dd 04a8b8b38h
+dd 033f87625h
+dd 013a4d360h
+dd 02779595eh
+dd 06ede53fch
+dd 01d62ed8dh
+dd 0ad303803h
+dd 0dcd38ea9h
+dd 042202191h
+dd 0ff910379h
+dd 0f5de357ch
+dd 06cb2f51eh
+dd 02a6feb19h
+dd 01fb55ce0h
+dd 0438c354dh
+dd 050b5d35ah
+dd 0cccc3daah
+dd 009d74ea4h
+dd 0dbc7b3dch
+dd 0f8d2fd1bh
+dd 073ecae9dh
+dd 0579a82d3h
+dd 05f23af41h
+dd 0ed8caed1h
+dd 05f213205h
+dd 013e244fbh
+dd 077a717fdh
+dd 0646f12b1h
+dd 0fd0b1f63h
+dd 05cd4667bh
+dd 0b6bb82a2h
+dd 0425316f6h
+dd 0ea867b78h
+dd 0660ee910h
+dd 0ca864238h
+dd 0f88a1726h
+dd 0f247b0c1h
+dd 086e8c4cah
+dd 09e38559eh
+dd 07bd7071dh
+dd 0013a0487h
+dd 0fce07c1ah
+dd 0fcde4ecdh
+dd 039c10a9fh
+dd 034068caah
+dd 0830dc792h
+dd 056eed1b5h
+dd 012579e44h
+dd 0a1c30125h
+dd 035655c3bh
+dd 05745a949h
+dd 0f5442126h
+dd 0e3ee6fe2h
+dd 07183553dh
+dd 0855783fbh
+dd 088399f13h
+dd 08834459dh
+dd 08c6e9dc5h
+dd 0c3c790e6h
+dd 0d5ae74e9h
+dd 018897990h
+dd 096d4a85ah
+dd 0d83cf4dah
+dd 0614c30d6h
+dd 0550dbaa3h
+dd 09487df16h
+dd 0b0b5f4a0h
+dd 0c6d358cch
+dd 0b7abd6bdh
+dd 08d006745h
+dd 0e9c272d9h
+dd 054f5a8d4h
+dd 0cadd3179h
+dd 086e23d21h
+dd 00ac3a83bh
+dd 0b95dbaf6h
+dd 00f674c12h
+dd 01ef103dfh
+dd 051462461h
+dd 01ada50cdh
+dd 0c5719a44h
+dd 023200cbeh
+dd 02e99998ch
+dd 0bc0dfb30h
+dd 03e149809h
+dd 071dbe33ch
+dd 007049e97h
+dd 068c912c2h
+dd 08f2b7ce0h
+dd 0037bccfbh
+dd 0fd163154h
+dd 0c875868eh
+dd 05d1dadddh
+dd 095d9ad46h
+dd 0d93e47d8h
+dd 07671ff9ch
+dd 0eb585c5dh
+dd 07fbb169ch
+dd 096adf97eh
+dd 078edd451h
+dd 082057b50h
+dd 022926951h
+dd 078dc22afh
+dd 046bb442ah
+dd 06c12f133h
+dd 0b5d11826h
+dd 09653b641h
+dd 076e76195h
+dd 0c5a52439h
+dd 09732b7d9h
+dd 0efcf33d1h
+dd 06b6baa48h
+dd 0bfbc8657h
+dd 0e60f9448h
+dd 03b88d517h
+dd 0ddfa85abh
+dd 0bb8b576bh
+dd 0ff92ee20h
+dd 0595e9a20h
+dd 00f1f6f40h
+dd 08752b185h
+dd 041500146h
+dd 0b322eff5h
+dd 037b8394ah
+dd 0e75e9b9eh
+dd 029a63ba6h
+dd 0ae0e89ffh
+dd 00aef6377h
+dd 0128f89ffh
+dd 0bb50721fh
+dd 0368679fdh
+dd 0397e9488h
+dd 0217d84bbh
+dd 028f88319h
+dd 0a68d97d9h
+dd 034e6eae5h
+dd 07a32268fh
+dd 0ede7e718h
+dd 00fdcdeefh
+dd 01fb412eeh
+dd 07d66450ch
+dd 0b1f25769h
+dd 0f7829e9eh
+dd 03c236882h
+dd 01ce5e1c0h
+dd 0cff1b1b5h
+dd 07df00650h
+dd 04f3c2269h
+dd 0f757986ch
+dd 0c956748bh
+dd 0e1fa837eh
+dd 0b38b9cf1h
+dd 015894e79h
+dd 05e27e687h
+dd 06a2aeb25h
+dd 025ff5f3fh
+dd 024767953h
+dd 05a6db113h
+dd 04ebdcc40h
+dd 028e893f1h
+dd 0a38c0621h
+dd 0cb1e9426h
+dd 068586930h
+dd 00d685e79h
+dd 0601a4e1bh
+dd 06106d7b9h
+dd 0881fd2f1h
+dd 09e4619fch
+dd 0646d8211h
+dd 0ac7198cfh
+dd 0f98e773ch
+dd 0b1318038h
+dd 0721ac5c6h
+dd 0e661b3e4h
+dd 0a9bce69dh
+dd 0756106bah
+dd 0826fc21ch
+dd 080b39352h
+dd 0bad4a9c2h
+dd 0406dd3b6h
+dd 0b5d3bd17h
+dd 06ce03274h
+dd 0b32a93bbh
+dd 02613fd2ch
+dd 0a11e3c20h
+dd 030a47456h
+dd 08e8d1edeh
+dd 09ea391d1h
+dd 0ed289695h
+dd 06bc4716fh
+dd 0b9f81d5ah
+dd 00ab9e604h
+dd 08fe24478h
+dd 00d83d4bdh
+dd 0588db8ach
+dd 02f3beec9h
+dd 0c1ce1694h
+dd 0be47cac5h
+dd 0df359d1ch
+dd 069bed12dh
+dd 02937c2d1h
+dd 03024d938h
+dd 017c4128eh
+dd 05dde7e46h
+dd 00489484ah
+dd 08ac08aa4h
+dd 047579521h
+dd 01bb103ebh
+dd 0256d8484h
+dd 0f38d8d1ch
+dd 0865a4071h
+dd 096294f27h
+dd 0ba297be0h
+dd 0120503feh
+dd 02ae23994h
+dd 01f90507ch
+dd 0154063c4h
+dd 0a180cfaeh
+dd 0010654b6h
+dd 00df757d2h
+dd 0b7b68254h
+dd 0f20743afh
+dd 0791e9fbfh
+dd 01fdde0eah
+dd 0b88ded3dh
+dd 0e3911df0h
+dd 03d646bf4h
+dd 08da67df3h
+dd 0bd303ec0h
+dd 0b03d951bh
+dd 03ceb7f51h
+dd 0b9bbfd14h
+dd 01571ca13h
+dd 0027c831eh
+dd 052c21ddfh
+dd 002a08a52h
+dd 0f86c997dh
+dd 0e573daa4h
+dd 07a48e502h
+dd 039579439h
+dd 04e62b9b6h
+dd 0d315ff09h
+dd 086b71e8fh
+dd 0220556dbh
+dd 00cdfda76h
+dd 0345dc24fh
+dd 080b9934ch
+dd 0225e98aeh
+dd 0385a63f0h
+dd 08e6b1d64h
+dd 059b14e99h
+dd 0620cbba1h
+dd 05c3ababeh
+dd 00b39ab1ah
+dd 0e87ceabah
+dd 0a4b4bb24h
+dd 005556927h
+dd 0f48de95ah
+dd 0b3681920h
+dd 0dd4f03cch
+dd 099fef365h
+dd 0551cf285h
+dd 0a6f93d07h
+dd 0f98e14d5h
+dd 0ac359d63h
+dd 0edc70ee8h
+dd 04862ae40h
+dd 0813096adh
+dd 007a64344h
+dd 09e9dd998h
+dd 0a45d3b16h
+dd 03435837bh
+dd 0d151154fh
+dd 0b16eafaeh
+dd 07d6c8d92h
+dd 0e6656af4h
+dd 0a05a5af5h
+dd 0b6f2f2e0h
+dd 0d5ed6cd7h
+dd 0b0848ab2h
+dd 0d9b69d06h
+dd 000e47359h
+dd 02e863528h
+dd 032d4e934h
+dd 040307dfdh
+dd 0fca65e3bh
+dd 003c7e381h
+dd 0c1556a89h
+dd 08b358671h
+dd 0f001428fh
+dd 02b0af6beh
+dd 0ccf9f06dh
+dd 024b9756dh
+dd 0c0f18608h
+dd 0e6b2c8edh
+dd 04bb6d2e7h
+dd 0f8a6f50bh
+dd 0e06d9518h
+dd 0e81c16f6h
+dd 01bd670c8h
+dd 02f627ee9h
+dd 0b1251760h
+dd 047136837h
+dd 0bae633b8h
+dd 0af11652ch
+dd 053d60234h
+dd 021c98e1bh
+dd 0c19a7125h
+dd 040738700h
+dd 05dae80d5h
+dd 0bd5b9767h
+dd 06e2c214ah
+dd 0c565a1e1h
+dd 00f82a048h
+dd 000393222h
+dd 0638581fbh
+dd 04d0e07cdh
+dd 040ae3161h
+dd 092b4572eh
+dd 0f4197106h
+dd 092e85a10h
+dd 09dea164ah
+dd 07259ab31h
+dd 081037c35h
+dd 040efb3ffh
+dd 0a4e920b8h
+dd 09d98a714h
+dd 077b5eaffh
+dd 0064f4fc0h
+dd 014c9f636h
+dd 0ac604a71h
+dd 0a0f13a36h
+dd 074565a8ch
+dd 0d1e1b738h
+dd 04c94f208h
+dd 08598583ch
+dd 041f3bef6h
+dd 0294d4ea0h
+dd 01fffa808h
+dd 07ea634a4h
+dd 05e931e37h
+dd 0ea6ce010h
+dd 0a5bc7417h
+dd 0d28d9c12h
+dd 0e40ba780h
+dd 0a9fe9763h
+dd 0c1e69a17h
+dd 015bb24ceh
+dd 0d825d2e7h
+dd 09d744948h
+dd 07d3d9f8eh
+dd 025798f89h
+dd 02d41b0afh
+dd 07c8a87f9h
+dd 0bf1a6ad5h
+dd 053d4e75ch
+dd 0783bbc06h
+dd 079a645e0h
+dd 03cdc4a98h
+dd 09bf4f103h
+dd 0af413739h
+dd 0da3962d9h
+dd 0f1416313h
+dd 0a1e06261h
+dd 0e152b2c5h
+dd 053557708h
+dd 0ffb29d5bh
+dd 0883b99c4h
+dd 0cd575be8h
+dd 00afaf4cah
+dd 0fb14d9b7h
+dd 022b70cc3h
+dd 0efdb4f44h
+dd 0ecd5f162h
+dd 0a232a619h
+dd 05a8b003ch
+dd 00617a0a5h
+dd 0281e5ca7h
+dd 0abdb10dbh
+dd 0fe55d1cfh
+dd 086b58adfh
+dd 00d26d94ch
+dd 0d2005061h
+dd 025944d3ah
+dd 01f3d581dh
+dd 0abc6353fh
+dd 04fbae118h
+dd 04b3b8b3dh
+dd 0d5128e45h
+dd 0fb4b3d08h
+dd 0718998e0h
+dd 0e31de20ah
+dd 06be34f3bh
+dd 0d3e537ebh
+dd 0654c2738h
+dd 04cfc0e5ah
+dd 0707447b8h
+dd 06fe5aa83h
+dd 08477d8bah
+dd 0d67ca766h
+dd 0c1c5f555h
+dd 00a593c65h
+dd 07bee4439h
+dd 08c72e614h
+dd 0e4b2e162h
+dd 09bfac5b2h
+dd 0bca973c5h
+dd 06586763ch
+dd 08395c957h
+dd 08ddc09d9h
+dd 0e76db77ch
+dd 08324806eh
+dd 0d61a093bh
+dd 0795dbb92h
+dd 0e45d721dh
+dd 0ed92d0f1h
+dd 02ec1a503h
+dd 056e4720eh
+dd 0ec1589efh
+dd 09ef92b50h
+dd 04612b921h
+dd 0681ddb0dh
+dd 04bbe7d8bh
+dd 05df00da8h
+dd 0a1ad8b86h
+dd 04dd5d9cch
+dd 04fa1296bh
+dd 0a52ae1c3h
+dd 0ac6d1933h
+dd 02d0532d3h
+dd 05fff2f9eh
+dd 0131e105ch
+dd 071acc7a9h
+dd 0dd306c71h
+dd 0d049ca05h
+dd 0f92e259dh
+dd 0e4517908h
+dd 0eb62a08dh
+dd 0ce0f7ecfh
+dd 02810a5dbh
+dd 0db052bf2h
+dd 05f5d1dc2h
+dd 075416d47h
+dd 0b31aa8aeh
+dd 0b4e833e1h
+dd 0875cc01bh
+dd 00b55182eh
+dd 0941494d5h
+dd 027b77c6ch
+dd 08e6b220eh
+dd 0dcfe4d05h
+dd 06e0f20d8h
+dd 0fa0e45bch
+dd 033e587a2h
+dd 0e4efd748h
+dd 06b4903d4h
+dd 066fce443h
+dd 06049fd49h
+dd 04c57e396h
+dd 01c08f076h
+dd 099f10ad9h
+dd 0e78a4327h
+dd 0db8bcf90h
+dd 05df578f8h
+dd 0f14f9244h
+dd 08dfdb582h
+dd 0e3fa94a9h
+dd 062b71c04h
+dd 02061cf26h
+dd 087705916h
+dd 02191e93eh
+dd 06d7739a8h
+dd 02b9e432dh
+dd 0150ff8f1h
+dd 04bd8b197h
+dd 05bdf4e7dh
+dd 07365b052h
+dd 08bf13c9fh
+dd 07e2a6e2ah
+dd 0246548f8h
+dd 03af3df80h
+dd 0bdc2b3a8h
+dd 02b6a172fh
+dd 0da7ec206h
+dd 0dac306e0h
+dd 0dd37a0f6h
+dd 0f0fcc457h
+dd 093ee5764h
+dd 0dcd8f7fbh
+dd 092613758h
+dd 06f5d53c4h
+dd 0732fd9bch
+dd 07f44b856h
+dd 0521b7fe0h
+dd 0da965c97h
+dd 06af475b0h
+dd 031fe947ah
+dd 020fe3eb6h
+dd 05d7deb53h
+dd 03e850748h
+dd 0acfb5114h
+dd 023de7873h
+dd 0b4def976h
+dd 0f33d57cdh
+dd 065df9887h
+dd 06d35a746h
+dd 08f550c77h
+dd 033b1d7b6h
+dd 06e184f6bh
+dd 004dffe61h
+dd 05504f2deh
+dd 07779e86bh
+dd 018689928h
+dd 0bcfaede0h
+dd 07bbfafcbh
+dd 0350302f0h
+dd 087329813h
+dd 0f2906179h
+dd 0d52467a2h
+dd 0d1c598d5h
+dd 040281d38h
+dd 06b8407bch
+dd 0e17b345ah
+dd 097d2cbfch
+dd 049068e9fh
+dd 017df1596h
+dd 005d7aa7eh
+dd 01a4133c7h
+dd 0d59d5350h
+dd 038220d20h
+dd 05fea0344h
+dd 03e6c378ch
+dd 03f1bbd81h
+dd 07c973f25h
+dd 064576351h
+dd 0aabf4db3h
+dd 0eae579bfh
+dd 095af3aebh
+dd 0f9123088h
+dd 015dc6c96h
+dd 0f5c66431h
+dd 06c57bc53h
+dd 057eff76dh
+dd 0721814e8h
+dd 0b6d53f67h
+dd 0eb4f0567h
+dd 09cb4daf2h
+dd 04ac99cfch
+dd 0e3a43bfbh
+dd 0fb329fach
+dd 00baad0b6h
+dd 0ae482579h
+dd 02b0c8527h
+dd 03293d313h
+dd 00b84cd8fh
+dd 042ef75ach
+dd 065e8a217h
+dd 0bf33aeeeh
+dd 026afe63dh
+dd 01089674dh
+dd 0443c5c98h
+dd 04553c90eh
+dd 0828d5548h
+dd 056f74d5ah
+dd 078aa1a4eh
+dd 0ffe47383h
+dd 0b4a7f92dh
+dd 04ada2ffbh
+dd 04a86c87fh
+dd 0689675deh
+dd 08747990bh
+dd 0573b17e4h
+dd 0b0643bddh
+dd 03047d72dh
+dd 0b8365488h
+dd 0bec32b30h
+dd 0e96bece3h
+dd 0211e5e60h
+dd 0478fb92ch
+dd 0ff54f8f7h
+dd 0964b2735h
+dd 050d216d9h
+dd 08da29687h
+dd 019facf24h
+dd 0eb56eb62h
+dd 0d23888b1h
+dd 032fa4a98h
+dd 08f8fc009h
+dd 0ed8d758dh
+dd 024f9bb4bh
+dd 022dfa695h
+dd 075af9a8dh
+dd 045bbf02ah
+dd 0dbf29618h
+dd 06b00fec3h
+dd 0c64da938h
+dd 0d54ddbdch
+dd 06107277dh
+dd 0e18b525bh
+dd 0e7640110h
+dd 0e3fe5685h
+dd 034cd9834h
+dd 08ebcca6ah
+dd 0bb0c12ddh
+dd 0dec3e0cfh
+dd 06cd7c1e1h
+dd 05d8df827h
+dd 0e1bfa493h
+dd 0705f476ch
+dd 0fd3eb463h
+dd 08d682b50h
+dd 08f5ddf09h
+dd 073e8b29fh
+dd 00cae9e50h
+dd 0f22cd30ah
+dd 02d848177h
+dd 0727df8efh
+dd 07e8bc136h
+dd 0109791c1h
+dd 061ec55b5h
+dd 06e9f6416h
+dd 093fd95eah
+dd 00547636ch
+dd 08dedccf1h
+dd 0240bc9fbh
+dd 0e74699fch
+dd 0c083c53dh
+dd 0caecca01h
+dd 06903d5d7h
+dd 0c13cdffah
+dd 0526724deh
+dd 094bd35e8h
+dd 0e3af5840h
+dd 06b856350h
+dd 0c142d70eh
+dd 0bf6da4dbh
+dd 01ef41714h
+dd 008af378ah
+dd 0aad4548fh
+dd 0ea1768dbh
+dd 09f3823eah
+dd 07ce867cdh
+dd 0440f98abh
+dd 075744d32h
+dd 0fcc25ea7h
+dd 0a9ad6180h
+dd 097f3b289h
+dd 0a1a2b6c9h
+dd 09b0ba105h
+dd 0fbd90fbbh
+dd 05dbf258ch
+dd 0c2a7f119h
+dd 019d10f03h
+dd 0a6122256h
+dd 05e429069h
+dd 0569b7793h
+dd 0791d1224h
+dd 0a5177f12h
+dd 09c8c0192h
+dd 072e59d18h
+dd 054468ccah
+dd 0b78c9f44h
+dd 09211c7a1h
+dd 02d47a78eh
+dd 0e212a54bh
+dd 0a9364d8ch
+dd 0484b3095h
+dd 086389fa5h
+dd 0ccc09c5bh
+dd 0e9d28ee6h
+dd 07b82988bh
+dd 0ce28dc04h
+dd 0b93b3546h
+dd 01a0955b8h
+dd 02f90898fh
+dd 06fd8cc66h
+dd 08665ddfbh
+dd 0dd7408a1h
+dd 05ab70102h
+dd 07e1523c2h
+dd 048b3fbd2h
+dd 090487019h
+dd 05e31feb8h
+dd 03fff1881h
+dd 0edfa52fah
+dd 0fa1611f0h
+dd 0ce5358bdh
+dd 0d7bd5140h
+dd 0fe8522bbh
+dd 09aa9d59eh
+dd 0b0b894fch
+dd 0b579d49ch
+dd 035cb3a74h
+dd 075c6128fh
+dd 07c703cd3h
+dd 0b8df92d4h
+dd 04acaeb59h
+dd 0e04d6e04h
+dd 0cb751141h
+dd 08d720ee0h
+dd 0fb81cd9ah
+dd 0cdf31268h
+dd 0c5639a27h
+dd 0187b7885h
+dd 01f8d2097h
+dd 08af3a455h
+dd 0b7126f8dh
+dd 061444a93h
+dd 099698ddeh
+dd 09f872495h
+dd 041ef831fh
+dd 05792f980h
+dd 01f589fe7h
+dd 08baf6053h
+dd 081daa5e4h
+dd 0e87e13b2h
+dd 0bd0799afh
+dd 0186a59c2h
+dd 0c26c7569h
+dd 0ebb1efa9h
+dd 09bd1324ah
+dd 059295810h
+dd 077bef0aeh
+dd 073c39ad5h
+dd 050cebb6ah
+dd 00208bc68h
+dd 025c184eah
+dd 0092965a4h
+dd 0b13b6dd0h
+dd 0162f10f5h
+dd 05808183ch
+dd 0d309d578h
+dd 068f138d5h
+dd 045520781h
+dd 078ee0625h
+dd 004cb372ah
+dd 0559afae3h
+dd 0cdcc0cb2h
+dd 085c7ed91h
+dd 089150f1fh
+dd 03274ff44h
+dd 09bfedf0eh
+dd 099d20a7bh
+dd 041346c0ah
+dd 08bf7468ah
+dd 09c9a1f6ah
+dd 0acaf653dh
+dd 0272aa359h
+dd 0c213bff1h
+dd 0ffe4c2b3h
+dd 023076b14h
+dd 04760e3ach
+dd 0427fbf8eh
+dd 07d83e159h
+dd 03657542dh
+dd 05d5476bdh
+dd 05e1b1df2h
+dd 0b0de622bh
+dd 06b0a0389h
+dd 0f9a02400h
+dd 027fc6b93h
+dd 06f246385h
+dd 082047b13h
+dd 0c099402ah
+dd 06fb61ce9h
+dd 0d3317b36h
+dd 0aabb3ab7h
+dd 0e8c3808fh
+dd 0dae24662h
+dd 096f4a4f6h
+dd 0b50d6738h
+dd 0907a1580h
+dd 0a0807fddh
+dd 09a8af0e1h
+dd 08bd5d9f7h
+dd 0f2cbaab2h
+dd 05eac78b5h
+dd 0d286a876h
+dd 0358078bdh
+dd 0bc4d0f3bh
+dd 0551e04c9h
+dd 0efa78b73h
+dd 0be395e96h
+dd 07f5b8f1ah
+dd 0aa112d90h
+dd 0362486cch
+dd 088060c7ch
+dd 0c3c90155h
+dd 02dc48a5eh
+dd 04a10bf23h
+dd 0c122ba29h
+dd 0df076066h
+dd 09ebaf108h
+dd 0ba218c35h
+dd 0a2f818f8h
+dd 06de11ebdh
+dd 020915fe8h
+dd 02cb20625h
+dd 0f8a8cb35h
+dd 04011cbb0h
+dd 0e4068044h
+dd 04e17655ch
+dd 0c6687b66h
+dd 088bcfc18h
+dd 020ba4bedh
+dd 0d02f8279h
+dd 08e760e57h
+dd 067ee5d16h
+dd 04837ed7fh
+dd 0410cb007h
+dd 048ac8805h
+dd 084e30ee4h
+dd 082247341h
+dd 045d6c532h
+dd 0f580b30fh
+dd 0fc170812h
+dd 0fc93cbe2h
+dd 064677bb1h
+dd 0d7651ca8h
+dd 0d5a104bfh
+dd 0e211ed14h
+dd 0822f9fc4h
+dd 0dba1319dh
+dd 0e2f7438ah
+dd 0079859bbh
+dd 0843f4af9h
+dd 0bd500e61h
+dd 038f8e3b4h
+dd 04808bc46h
+dd 06c2d70b8h
+dd 099a68ab2h
+dd 06744b032h
+dd 08420685ah
+dd 0d350b9f8h
+dd 0c691489ah
+dd 0dec5bbb5h
+dd 0f06ce727h
+dd 0a65a92beh
+dd 0d527e7b4h
+dd 0aa8de922h
+dd 093a01780h
+dd 0285e2629h
+dd 019cebee1h
+dd 048998766h
+dd 063ca680ch
+dd 0812a47f6h
+dd 0ff462ec2h
+dd 07b10da4fh
+dd 0912c0f2dh
+dd 0bef0656fh
+dd 04babdfa5h
+dd 07f7360fdh
+dd 0165d1c55h
+dd 0c3846af3h
+dd 023814744h
+dd 084de5de7h
+dd 0350a3e39h
+dd 0874f380eh
+dd 06fdb3010h
+dd 06222787bh
+dd 0113a8432h
+dd 0ab0b5e63h
+dd 0bc3ab91fh
+dd 0e8876fa8h
+dd 00932cd02h
+dd 0db84268ch
+dd 05bfca9bch
+dd 0da0f41ffh
+dd 0997025e9h
+dd 062b237ffh
+dd 04b4fc72fh
+dd 0ff0c390bh
+dd 08194ee35h
+dd 0e5f66e55h
+dd 0c8bc8b85h
+dd 0c47eea80h
+dd 0d1f15614h
+dd 039685d90h
+dd 05ca659d3h
+dd 0e091eca0h
+dd 0ca01949dh
+dd 0d0d86499h
+dd 00f51bf47h
+dd 015b8991ah
+dd 01f477e11h
+dd 045f187f9h
+dd 0f6f26e7eh
+dd 093ec144bh
+dd 0a340f332h
+dd 076ca31ebh
+dd 04927e8d2h
+dd 01b9e43c7h
+dd 0c5510dd2h
+dd 05aa407c6h
+dd 068c8c986h
+dd 0f7500751h
+dd 0c366f5f4h
+dd 08fa59710h
+dd 0b0a4a591h
+dd 04d806576h
+dd 08212815fh
+dd 02511f64ch
+dd 0f7371ccah
+dd 024acc242h
+dd 0578d9db2h
+dd 0a97d4ad0h
+dd 09b2b5dbeh
+dd 029839a36h
+dd 0fa99b410h
+dd 00de188fbh
+dd 0acaf5e5bh
+dd 0b3ca67f9h
+dd 0fe4c9a6dh
+dd 07372e843h
+dd 0b7ded03ch
+dd 0d31759b2h
+dd 0208752eah
+dd 01c6594e7h
+dd 04800304eh
+dd 038c99407h
+dd 01cfcd13eh
+dd 0f455c32bh
+dd 0d68dabe2h
+dd 052606c25h
+dd 014f97d79h
+dd 034a60265h
+dd 0728300cbh
+dd 05dfc07e5h
+dd 032bcec03h
+dd 0da0a8049h
+dd 0880ae5f6h
+dd 0a34a2f47h
+dd 0e0a7d2cah
+dd 076534635h
+dd 03bff2434h
+dd 0aeace090h
+dd 0e71d8903h
+dd 00b89f0e0h
+dd 0ec0cc1b1h
+dd 017cc44d5h
+dd 068bffdf6h
+dd 0bf8353c7h
+dd 0d39b39c2h
+dd 0ab18999eh
+dd 0f1273268h
+dd 0f9582fbah
+dd 0d24f5b68h
+dd 02d71d815h
+dd 0a16acf96h
+dd 0e0f23bbch
+dd 0b92e2792h
+dd 03d5ce8bfh
+dd 0bec5cc78h
+dd 0a5bf260ch
+dd 064f5176ch
+dd 090a81bbbh
+dd 0c8d9a28fh
+dd 0e221677eh
+dd 0e13603dbh
+dd 03e5c3a78h
+dd 0a5642f01h
+dd 0fb163aebh
+dd 074210feah
+dd 00adb3f0eh
+dd 05fa387ech
+dd 068a8d26fh
+dd 02a07ea20h
+dd 0131af689h
+dd 06725e34bh
+dd 006961bc7h
+dd 08489bdb2h
+dd 03c677e0bh
+dd 054ef428ch
+dd 08453237eh
+dd 03531cacdh
+dd 0ed22f7c3h
+dd 05ec0a46dh
+dd 016a84e95h
+dd 09c347112h
+dd 003bd24c1h
+dd 0af93171dh
+dd 084cd371bh
+dd 081237ad9h
+dd 0861a4796h
+dd 0e077b43ah
+dd 029620558h
+dd 09b2dc0c4h
+dd 0d5c8319eh
+dd 0510f8624h
+dd 09728f057h
+dd 09e7d3bb0h
+dd 0d34aaf0fh
+dd 0affecd95h
+dd 0ae86d359h
+dd 051913df4h
+dd 0ac6e0834h
+dd 095241fa4h
+dd 088944b76h
+dd 046153d1ah
+dd 0f7ac8114h
+dd 0221e4c46h
+dd 05f1beaa1h
+dd 00ac6b32dh
+dd 031586e61h
+dd 07f492740h
+dd 0ceeee417h
+dd 0776c3acah
+dd 0ef022990h
+dd 078a84d5ah
+dd 056cb85f1h
+dd 0037937bah
+dd 013f42f32h
+dd 0addbfd51h
+dd 07a890b0ah
+dd 0b0a81274h
+dd 02dda7ae6h
+dd 063da1ac8h
+dd 09fc4f702h
+dd 08ab9b422h
+dd 00998d6ceh
+dd 0394bb924h
+dd 08eed4d1eh
+dd 086f3a925h
+dd 009258d17h
+dd 0eb864d2fh
+dd 0a5045a8eh
+dd 0d69ff5dch
+dd 0d9966ed4h
+dd 082f1b783h
+dd 0540eedfah
+dd 0d2dd55b0h
+dd 0e4d746d6h
+dd 0bcee8aa5h
+dd 0caf57b26h
+dd 0c9c7931ah
+dd 0f1a97b16h
+dd 01a961bd2h
+dd 0a2cf27b7h
+dd 07bcc7e57h
+dd 0f288598dh
+dd 0a98791cah
+dd 006b16724h
+dd 0dcd4cecdh
+dd 0e3f0c65dh
+dd 0e5e4365bh
+dd 023221885h
+dd 0db87fcech
+dd 00bad424ah
+dd 00c4db3d3h
+dd 0fda59cach
+dd 0910945e6h
+dd 075c2140fh
+dd 093c4d124h
+dd 0f2b940e2h
+dd 066e8a3bch
+dd 0cfa1cd27h
+dd 0811f1032h
+dd 028f676f7h
+dd 0724949ceh
+dd 082d2b527h
+dd 02e01302fh
+dd 0eb6ef981h
+dd 052e35f7fh
+dd 01cd364e8h
+dd 0e02a6224h
+dd 050dba8a2h
+dd 0138e6616h
+dd 06dd54a80h
+dd 0a0800f6ah
+dd 0a47096b8h
+dd 0dd1430a0h
+dd 0bacfe71bh
+dd 093fd3747h
+dd 0d41e0a4dh
+dd 00fd3b8bdh
+dd 0d5434232h
+dd 07ac7248bh
+dd 062c578b1h
+dd 045c1257eh
+dd 04f90d0e9h
+dd 0f9141cfbh
+dd 06a0150a0h
+dd 02d7c51d3h
+dd 0ecedc35bh
+dd 05904ceabh
+dd 011a66d38h
+dd 0c1c50264h
+dd 06cc8dd1dh
+dd 0a93f6e52h
+dd 0b8186b41h
+dd 06be9e1e9h
+dd 0971fb31bh
+dd 0445184d2h
+dd 0b9d2e3b5h
+dd 0726853b4h
+dd 04215d583h
+dd 00f97fc56h
+dd 0c0b37b76h
+dd 018ab8cc7h
+dd 041bdcd2eh
+dd 060ddf945h
+dd 07eb4d2f1h
+dd 070853aa5h
+dd 04167816fh
+dd 0deb76b60h
+dd 029826933h
+dd 01232a848h
+dd 069dfe2feh
+dd 05b5bf23ch
+dd 0743f5309h
+dd 08707c229h
+dd 0bbf501b7h
+dd 05e62896fh
+dd 0e4420301h
+dd 0e285a323h
+dd 07ba31e7dh
+dd 0704a3c0fh
+dd 02104005eh
+dd 09edb3ae3h
+dd 0c37f47aah
+dd 0cde5eea2h
+dd 05d550fa9h
+dd 09632aa08h
+dd 0b1b5d2deh
+dd 073206de3h
+dd 060a8c9aeh
+dd 0647042a1h
+dd 0c5ac23a7h
+dd 0919b14d2h
+dd 0220db8dfh
+dd 09dae794eh
+dd 0e750a666h
+dd 03608a500h
+dd 043a73318h
+dd 05ac501a7h
+dd 05f78cc2bh
+dd 00df915e8h
+dd 09df6ce91h
+dd 0b118e2d5h
+dd 0ababb9a8h
+dd 0b3e577a6h
+dd 03bac555dh
+dd 0c0d0957ah
+dd 0e6b9d761h
+dd 08559e27fh
+dd 05d8deeceh
+dd 046cfab25h
+dd 039cf2c7dh
+dd 0d3834d64h
+dd 056c49ac5h
+dd 02f02ec10h
+dd 0b7cd398ch
+dd 06b997793h
+dd 0f8120c34h
+dd 035100fb1h
+dd 0fd0a1032h
+dd 03df2ee72h
+dd 054d5bd0bh
+dd 0af89add7h
+dd 0a3639a86h
+dd 0be0bc5b7h
+dd 0cff349d8h
+dd 04990b6cch
+dd 042ee1077h
+dd 06d80264ch
+dd 0249d70f0h
+dd 0321759a1h
+dd 028292334h
+dd 08a006471h
+dd 096ccdeb9h
+dd 0b88c257ch
+dd 0428f64a0h
+dd 0e6b22807h
+dd 0fec25158h
+dd 0ad098413h
+dd 0ad68ca54h
+dd 0692da457h
+dd 0d107218ch
+dd 04c05bee2h
+dd 076dc21d7h
+dd 0dd57e289h
+dd 048f5cf90h
+dd 0038b02bbh
+dd 010d51216h
+dd 08c86a54fh
+dd 0c4e309afh
+dd 0c56105dfh
+dd 04681d0edh
+dd 0d28ea17dh
+dd 0ee6f271eh
+dd 084707a39h
+dd 0e4dc16e3h
+dd 09fd64a94h
+dd 0234e8a28h
+dd 0c4662905h
+dd 0084d9163h
+dd 056d03134h
+dd 0426e9578h
+dd 0cd2bab48h
+dd 06d71a011h
+dd 060daf06eh
+dd 0855a3a4bh
+dd 04432be59h
+dd 0c54e273eh
+dd 02253fe97h
+dd 0986367aeh
+dd 05a356da8h
+dd 0dc3d1226h
+dd 04bb648f7h
+dd 0e4ab0bf5h
+dd 0ecc3173dh
+dd 0b221c53ch
+dd 0b2561a60h
+dd 08074d36dh
+dd 0548dfaa4h
+dd 09a06e4a0h
+dd 086973d30h
+dd 0be54314bh
+dd 0879b9b9dh
+dd 0fec44fe3h
+dd 0fdced0b0h
+dd 0fc50127fh
+dd 0b8b7dd1eh
+dd 03888efe4h
+dd 04928596eh
+dd 074449fbah
+dd 0f16fd498h
+dd 0a600e78fh
+dd 01b419984h
+dd 0aa3b0dfah
+dd 01a447e98h
+dd 07168cfa4h
+dd 0b3baee76h
+dd 0f4b54a97h
+dd 07830826ah
+dd 0af894792h
+dd 0db057a28h
+dd 00977fd4eh
+dd 00a6723fch
+dd 09681c6eah
+dd 0ca65878ah
+dd 098a53472h
+dd 07dd8f3a9h
+dd 02a9121a7h
+dd 0cbe7b3a1h
+dd 077d951b4h
+dd 07d240bf8h
+dd 09c33d6a7h
+dd 0d00c8551h
+dd 073b2ce21h
+dd 01cff5a2ah
+dd 01f330a84h
+dd 099153023h
+dd 0ca792b24h
+dd 09b2946cah
+dd 0587244f6h
+dd 0f8d9a47dh
+dd 09453551ah
+dd 0564ba000h
+dd 0f9b4e8bch
+dd 0e585aeech
+dd 06b7f2a03h
+dd 03c46b4efh
+dd 082c06214h
+dd 0aea4194ch
+dd 0364ed2edh
+dd 01fa219e8h
+dd 0d140df8ch
+dd 0af584117h
+dd 007c9ed87h
+dd 01f8d4befh
+dd 0bf7242a9h
+dd 05c4df9c1h
+dd 0db592003h
+dd 0b00e1c62h
+dd 03269dc79h
+dd 04caf1c9dh
+dd 05d4b589ch
+dd 0cb9ea691h
+dd 09c727172h
+dd 0123a73b8h
+dd 001682967h
+dd 06be0ad3eh
+dd 0d30299c2h
+dd 0bd45d311h
+dd 052f7ff04h
+dd 07b828874h
+dd 0dbe0b11fh
+dd 02ebd5651h
+dd 07e597d9fh
+dd 0feda9ec1h
+dd 0db4bdba0h
+dd 06daa7bc2h
+dd 0b33cbbdbh
+dd 0c5fffef1h
+dd 031a34f4ah
+dd 0a5487079h
+dd 07db562c0h
+dd 0e46cc33eh
+dd 004445551h
+dd 0539e1371h
+dd 01ae9a2d3h
+dd 08762c3b2h
+dd 0ddaa2873h
+dd 0715646c0h
+dd 07fb16da4h
+dd 0ac20bef6h
+dd 02124aa68h
+dd 0c9f9bf40h
+dd 030abe52eh
+dd 02942c612h
+dd 07154eceah
+dd 004c6e525h
+dd 088c60127h
+dd 02cd4bac0h
+dd 059023a8eh
+dd 0bdc4fb5ch
+dd 00182e87dh
+dd 0304f816eh
+dd 0dd018f74h
+dd 0ac61ef13h
+dd 0dec8a375h
+dd 0212efd1dh
+dd 07e653f4dh
+dd 0a69ee5fch
+dd 073ec448dh
+dd 0c05abc01h
+dd 0f3f862ceh
+dd 02712b99fh
+dd 0b519f1dfh
+dd 05a31c777h
+dd 0817d098ah
+dd 0f6102aa3h
+dd 0b85281e3h
+dd 045d11478h
+dd 045fd06d2h
+dd 02c9151a5h
+dd 0ee8da510h
+dd 06cb80e3dh
+dd 0808f7731h
+dd 07baa7069h
+dd 0308ec80ch
+dd 01694ed17h
+dd 01374f327h
+dd 0b52656e7h
+dd 080240ed8h
+dd 0064fee77h
+dd 0ae624bb4h
+dd 05de48677h
+dd 0ed13e746h
+dd 05deff264h
+dd 004b805f6h
+dd 07038bc61h
+dd 07d8b96f2h
+dd 0fe750186h
+dd 012c69a39h
+dd 052fd2640h
+dd 007e81c84h
+dd 095324690h
+dd 004f3c9dbh
+dd 0a973d059h
+dd 09d540dc2h
+dd 02c33c963h
+dd 025e78964h
+dd 0fdc43e73h
+dd 0d60b77adh
+dd 07abefbdfh
+dd 0135148d3h
+dd 087f1e8aeh
+dd 038c28d6ah
+dd 0812cd962h
+dd 0b64071a6h
+dd 01d8f14e9h
+dd 06a13ff58h
+dd 08cee2924h
+dd 01094dc6eh
+dd 08d5cbd15h
+dd 07bc4b681h
+dd 001056472h
+dd 0d74298f5h
+dd 082a29287h
+dd 0370790edh
+dd 0be70bc37h
+dd 00c450d8fh
+dd 025454af2h
+dd 0d640ebceh
+dd 09c662087h
+dd 00a06158eh
+dd 0df741c2ah
+dd 00cf6f712h
+dd 08f717a20h
+dd 082dd7a38h
+dd 0e72819ffh
+dd 043236e30h
+dd 0dc7cb026h
+dd 025eade97h
+dd 0231cc6deh
+dd 08f7881a7h
+dd 05211da7dh
+dd 0e2e6dae8h
+dd 0452be16bh
+dd 096f51796h
+dd 038ae98a9h
+dd 0f6741767h
+dd 080ab3d6dh
+dd 0f558e841h
+dd 09f721414h
+dd 00d79ec48h
+dd 0e8835d05h
+dd 0fd994cc7h
+dd 046dde65dh
+dd 0178ccebbh
+dd 04cf5357fh
+dd 0a237899bh
+dd 0a311e77bh
+dd 0dadec849h
+dd 0fa230214h
+dd 00123458dh
+dd 091c5cf14h
+dd 087d32e03h
+dd 0a92f707eh
+dd 03d1f8d36h
+dd 02cf379e9h
+dd 011a43e91h
+dd 09a3f37b2h
+dd 0a7fd7999h
+dd 0edbc8f92h
+dd 091bfc5ddh
+dd 0e8ca3cf3h
+dd 03ef08b9ch
+dd 01e467f94h
+dd 04130a5ech
+dd 0840f6253h
+dd 093b85e20h
+dd 05a0a30c2h
+dd 042a81165h
+dd 0dbe12350h
+dd 0266d38ech
+dd 071e8ee14h
+dd 09aa75683h
+dd 0b9f7088eh
+dd 0ba02189ah
+dd 0477ff749h
+dd 02be15c7dh
+dd 01549d411h
+dd 0beea0fe6h
+dd 070acb8dch
+dd 0c9b70cb3h
+dd 0540711c0h
+dd 0134ad00dh
+dd 0297fe787h
+dd 07ae3e16ah
+dd 05f9c4613h
+dd 0bf6c3a7ch
+dd 0804bcfcch
+dd 0e1eda0dch
+dd 0c7af016dh
+dd 062f3a274h
+dd 085eeb79fh
+dd 0a3ddb394h
+dd 0c90e54ach
+dd 03979cfd2h
+dd 09a018bd9h
+dd 07d708c00h
+dd 00ecab63bh
+dd 0c3d377f0h
+dd 0c979b3fah
+dd 0e8c53de7h
+dd 08bd908c1h
+dd 0919b3babh
+dd 081a30fb3h
+dd 0676b9b9eh
+dd 0a9131c45h
+dd 0f7361018h
+dd 00366dabfh
+dd 0a9251d39h
+dd 02296c4afh
+dd 0c37e56e7h
+dd 0d61cddbdh
+dd 0d3611552h
+dd 002268c58h
+dd 0676a6a72h
+dd 0bb200f12h
+dd 0cdaf8c13h
+dd 0031a1b6ch
+dd 037651b48h
+dd 065ec2bcdh
+dd 077180dd4h
+dd 0d170b80eh
+dd 085b44ad3h
+dd 0f4c38e16h
+dd 092532735h
+dd 0c6193878h
+dd 0a437c184h
+dd 0f3fb3288h
+dd 0c0507810h
+dd 09fc5f14ch
+dd 0dceefc78h
+dd 0f553313eh
+dd 0912a199ah
+dd 08bfe6673h
+dd 0b6217a74h
+dd 06350af17h
+dd 02240c6b6h
+dd 01908703ch
+dd 028121939h
+dd 040ce4043h
+dd 039f76c52h
+dd 00967e24eh
+dd 089203989h
+dd 0ca6914a4h
+dd 017c080deh
+dd 0c98fec15h
+dd 070c1e49bh
+dd 0e11e0a9bh
+dd 0fde9612ah
+dd 06d6cabb4h
+dd 03340d257h
+dd 084bb93a0h
+dd 06d7bf694h
+dd 0c7276763h
+dd 0d321c2bbh
+dd 06cd3f7e9h
+dd 0b5dc7548h
+dd 07ee23159h
+dd 0f4dea14eh
+dd 0a585813bh
+dd 0efc4e36ch
+dd 006d40c09h
+dd 040ef722bh
+dd 07ff88124h
+dd 07df6dd6dh
+dd 0a3b0115ah
+dd 0f11955a2h
+dd 0fe42144ah
+dd 08f8d3ac8h
+dd 0a0c4002dh
+dd 07a36d5d6h
+dd 0621c57bch
+dd 0d2d8623fh
+dd 0c6ebcaebh
+dd 09a954820h
+dd 0a4409206h
+dd 00325cc83h
+dd 033f464cfh
+dd 072afe012h
+dd 0812a2dd8h
+dd 0d5286083h
+dd 062f38bc3h
+dd 082eb8899h
+dd 013d28aa1h
+dd 0c35ff1e5h
+dd 0ffd7c448h
+dd 0df55c884h
+dd 099db432eh
+dd 0cf183b89h
+dd 006fcc5b3h
+dd 0d034b461h
+dd 07632755ah
+dd 06d10a549h
+dd 035abb32ch
+dd 0011a9ad4h
+dd 0dd59884ah
+dd 06f10d2e7h
+dd 0b774e839h
+dd 060bb5abfh
+dd 06cb14579h
+dd 060c2b650h
+dd 051f11280h
+dd 00c987c30h
+dd 013d42fd9h
+dd 0531c5ec7h
+dd 0efc0889eh
+dd 0dae47541h
+dd 08be706c2h
+dd 0fe4e95adh
+dd 04aabc9b2h
+dd 0b0442ff6h
+dd 02387bde9h
+dd 0e807a0d5h
+dd 0c06277cch
+dd 036dc9ba9h
+dd 00259912ah
+dd 0f97e8c68h
+dd 0461fd6b1h
+dd 0083c948ch
+dd 00e65a30ch
+dd 009829ee0h
+dd 0a4d67a49h
+dd 0e7babb4fh
+dd 093e91646h
+dd 0fc368256h
+dd 0f67b787bh
+dd 0c7fbf56ah
+dd 0f9ae9da5h
+dd 098bad23ch
+dd 0db6f2e47h
+dd 05aabf027h
+dd 05150f758h
+dd 036ed7cfdh
+dd 0528052e5h
+dd 0f2d3b572h
+dd 00349ce22h
+dd 0d968e9d5h
+dd 0022812c6h
+dd 0810a476bh
+dd 089eced72h
+dd 03ff46c6ah
+dd 00aef089fh
+dd 0b776b847h
+dd 0d3a343adh
+dd 0d6e1df5bh
+dd 0503e9792h
+dd 0bb093bf0h
+dd 01267bac9h
+dd 044c597dch
+dd 06230bfe4h
+dd 054b32b42h
+dd 0894663bah
+dd 0fe7ee8a0h
+dd 0a3152853h
+dd 096e10691h
+dd 077e42586h
+dd 03f9ac92ah
+dd 00900a4d7h
+dd 096a8671dh
+dd 069acdd4fh
+dd 0a6097b04h
+dd 01879a1f7h
+dd 0fc79e351h
+dd 05f33ef83h
+dd 00b058795h
+dd 040539e0dh
+dd 00492dbe6h
+dd 0b11c4695h
+dd 020f788aah
+dd 00eef4d2bh
+dd 046248f46h
+dd 0e376365dh
+dd 0658a0db8h
+dd 034e3b755h
+dd 0ccd8788ch
+dd 04723d9c2h
+dd 0154fa938h
+dd 0d6ba509eh
+dd 0643ef3d2h
+dd 028e2d619h
+dd 02ca2b565h
+dd 0a1881699h
+dd 05c665b66h
+dd 0cf2ef405h
+dd 0afc482d6h
+dd 0d1fcc110h
+dd 017a8e06eh
+dd 0402588a7h
+dd 0cce0f1cch
+dd 0da32a9b3h
+dd 0d8705130h
+dd 07aedb05dh
+dd 0c5fb775ah
+dd 03cce9ab4h
+dd 0ef8328c7h
+dd 0a6bc53e8h
+dd 0b00f1b01h
+dd 0aba43b83h
+dd 018b6543eh
+dd 0a073ed8fh
+dd 09ba63ebah
+dd 032c84d88h
+dd 0712731c3h
+dd 0f37bfbcdh
+dd 0b64c8cfbh
+dd 0ab339b82h
+dd 08a8dd4fah
+dd 0d9cbc25eh
+dd 0eb95fef4h
+dd 02f4a8839h
+dd 034ac660ah
+dd 02b4c259ah
+dd 05e29dbe2h
+dd 01b606be3h
+dd 04f4cbe49h
+dd 0f34054ceh
+dd 0e0fe6dfch
+dd 0fb19f3c9h
+dd 076e01cf5h
+dd 04617a3b7h
+dd 047502428h
+dd 027a9d0b2h
+dd 0ec9b7c7fh
+dd 0a2e8c122h
+dd 08ee13d1bh
+dd 092be7256h
+dd 0118e41d5h
+dd 05b34d65eh
+dd 033e3788eh
+dd 0a982670dh
+dd 0f9ef1f25h
+dd 0c0500f46h
+dd 0728065c6h
+dd 0d7096a5eh
+dd 0998e4a82h
+dd 08a50ea4fh
+dd 0e0fdf77ah
+dd 0ef3679cdh
+dd 041f2ded1h
+dd 068632bedh
+dd 04a9a87e1h
+dd 0b3ba5027h
+dd 0b9375921h
+dd 021ba8a30h
+dd 04af25861h
+dd 017e35133h
+dd 02241c570h
+dd 061c12d2ch
+dd 0c2fb1ba3h
+dd 0176a2de9h
+dd 0d52ad64ch
+dd 06ddd5b25h
+dd 041e61229h
+dd 00e1f7d87h
+dd 0eaae1c3eh
+dd 0abf2e6cbh
+dd 00171a344h
+dd 0c803f3b3h
+dd 0569717b7h
+dd 0619a8665h
+dd 015591107h
+dd 0b9fe2044h
+dd 026b23e31h
+dd 0afd4da80h
+dd 054b2acf4h
+dd 01ff609f4h
+dd 089becb22h
+dd 0f434387eh
+dd 04e83d88eh
+dd 0379e599eh
+dd 0bea30dc4h
+dd 0b8150ed7h
+dd 0433b7f56h
+dd 033a64c3ah
+dd 02813d8bbh
+dd 008143e60h
+dd 005bbff20h
+dd 0a9bca0c0h
+dd 050c32b5eh
+dd 0d9beaaf3h
+dd 0d44b251ch
+dd 075dc3313h
+dd 0102bc7ech
+dd 03dc8832bh
+dd 01888b5ebh
+dd 0795aa713h
+dd 0b98f26a2h
+dd 07372afe9h
+dd 07c3aeb41h
+dd 0ae17fa81h
+dd 067bcc321h
+dd 01e8d33c1h
+dd 084e26ae1h
+dd 08901aaa2h
+dd 0b34b6e33h
+dd 07652cdd0h
+dd 0fbcba87bh
+dd 0ba86b348h
+dd 05d07ce2ch
+dd 0d57798aeh
+dd 0a374e5edh
+dd 0b8803c33h
+dd 01bd697b9h
+dd 0709b9393h
+dd 0cad35e12h
+dd 07ba89611h
+dd 0735df441h
+dd 0e3bb1ceah
+dd 0f5c05a3fh
+dd 00ee45b0dh
+dd 09f73b18ch
+dd 0367d1e35h
+dd 03e07dc74h
+dd 0baf0b95dh
+dd 0907396fbh
+dd 0cbd51954h
+dd 0834ff214h
+dd 0eeb209e4h
+dd 02a188c70h
+dd 024fd8953h
+dd 028fdb065h
+dd 0d1614123h
+dd 07527bcc2h
+dd 06305f833h
+dd 0f605b2b4h
+dd 03ff7aa19h
+dd 0ab096188h
+dd 0ac025067h
+dd 083aa420eh
+dd 0a0330640h
+dd 01f3192fdh
+dd 05750c005h
+dd 0fd7e8581h
+dd 0e2e43473h
+dd 0329441c6h
+dd 07fdcae08h
+dd 0361dd771h
+dd 0ab83bd6ah
+dd 053cf108dh
+dd 057d672b6h
+dd 087772d60h
+dd 065d22fc8h
+dd 0caab91a5h
+dd 0a20fcf39h
+dd 081472c25h
+dd 0919c44a8h
+dd 008d39a35h
+dd 0b05dc81fh
+dd 00f4d3135h
+dd 011c6006bh
+dd 0ffb0611ah
+dd 029a3d39dh
+dd 0354c3d95h
+dd 09e592824h
+dd 0a3dba3e4h
+dd 0d14535feh
+dd 089d9f596h
+dd 069f17ddeh
+dd 0b5d3607fh
+dd 0c3380839h
+dd 00bd48086h
+dd 0e0f19fb8h
+dd 09252c1dch
+dd 05c35eabdh
+dd 03a49b8efh
+dd 0dca8572fh
+dd 01874b2c7h
+dd 026932b75h
+dd 0f4cc8a1dh
+dd 0172e263ch
+dd 0a530847dh
+dd 0c6186aaah
+dd 0319bfadch
+dd 0321db81ch
+dd 03f7482c5h
+dd 0d163cd7ah
+dd 0269aa53dh
+dd 01c938f1eh
+dd 0f0df509bh
+dd 06a391a08h
+dd 0cb3a6e58h
+dd 0eac57498h
+dd 04cb26775h
+dd 0a92b1da9h
+dd 01cdbe3c9h
+dd 02a107b5fh
+dd 0c917669ch
+dd 067f33851h
+dd 0496b1210h
+dd 073159819h
+dd 03f5f539fh
+dd 0c7e38e7ch
+dd 060908760h
+dd 0c3dc3475h
+dd 0e74c8392h
+dd 07377f8a5h
+dd 06f9c517ah
+dd 031086036h
+dd 0fe6989d4h
+dd 050860a30h
+dd 05b1c9877h
+dd 0c78ddacch
+dd 019faa750h
+dd 0cd426fedh
+dd 050f80f3fh
+dd 0a187848bh
+dd 0c0b546e9h
+dd 05ae39eafh
+dd 0def451eeh
+dd 01db089c9h
+dd 0152c8c98h
+dd 061850ec2h
+dd 0d90f1c18h
+dd 04067032eh
+dd 09152ef91h
+dd 08367c70ah
+dd 00dc411ffh
+dd 057cf9ef7h
+dd 08a921b75h
+dd 0d5c8c20fh
+dd 05be58b48h
+dd 08f4f630eh
+dd 079d1c63ah
+dd 03a91ac32h
+dd 00d966547h
+dd 0e894010eh
+dd 0d20fb22fh
+dd 08c38e68bh
+dd 0a39aae93h
+dd 07abd596ah
+dd 040825cdbh
+dd 07cd8f73eh
+dd 006a86308h
+dd 0755a3d47h
+dd 0df9b02b2h
+dd 052810b13h
+dd 079933ee1h
+dd 02644ef67h
+dd 09dd5fe00h
+dd 0e5035b43h
+dd 0f1c28db3h
+dd 08f96f3c0h
+dd 08113c97fh
+dd 08bfeb994h
+dd 09c4cbecfh
+dd 05c565328h
+dd 028c5fc48h
+dd 0d8034712h
+dd 005e345f1h
+dd 06442d1c3h
+dd 08077cfc0h
+dd 061c43412h
+dd 0a0f35f17h
+dd 059739198h
+dd 0faaf5c59h
+dd 030020080h
+dd 02a7f2753h
+dd 0ae481da9h
+dd 05e6a8621h
+dd 087c9c540h
+dd 06d89615ch
+dd 09a20d2adh
+dd 018da945eh
+dd 09ab618b3h
+dd 057d505fbh
+dd 0e3145711h
+dd 003f58516h
+dd 06a71c0b5h
+dd 01279c987h
+dd 03448a823h
+dd 0b5ba0662h
+dd 0e1435901h
+dd 0ef88e574h
+dd 0111372a8h
+dd 02ccde71dh
+dd 0df9747ceh
+dd 0dcb91474h
+dd 0ca1e5d4eh
+dd 03d47494bh
+dd 01fcd1002h
+dd 0912b40efh
+dd 03181a284h
+dd 04ebcdecch
+dd 0c52be98ch
+dd 08b7deb4ah
+dd 0e990721eh
+dd 0dbe91347h
+dd 0337ee28dh
+dd 0f79441fah
+dd 0a56aa1beh
+dd 033547d57h
+dd 0e6a619d2h
+dd 06c87094fh
+dd 0efccd556h
+dd 01dc3fab3h
+dd 0741491ceh
+dd 01f0f4981h
+dd 062700311h
+dd 0b8d16a45h
+dd 0d24319cdh
+dd 0a9888f4fh
+dd 0c245ad52h
+dd 085663c96h
+dd 036d37feah
+dd 095cc4a85h
+dd 0214a1165h
+dd 0d710b02dh
+dd 041223a78h
+dd 086b3d3f7h
+dd 076825587h
+dd 085d17069h
+dd 0c98ef515h
+dd 002cf2aa0h
+dd 0f82bf41ch
+dd 0530d8828h
+dd 03ba14f84h
+dd 020678752h
+dd 01aaa7e55h
+dd 02a898946h
+dd 0374f2d23h
+dd 09bdf5f3eh
+dd 0d661f4a3h
+dd 0b1d96e28h
+dd 081fdf9b6h
+dd 0c3f9a27fh
+dd 05af7af53h
+dd 039b8d517h
+dd 0d41fffbdh
+dd 0fc1642b0h
+dd 04523ea4fh
+dd 0aeee6531h
+dd 034e1b08ah
+dd 01e67f4b1h
+dd 0c63bfd6ah
+dd 06617bdd5h
+dd 03b01df6dh
+dd 0e58175f0h
+dd 0543f4636h
+dd 05d6ff8d1h
+dd 0f662fd94h
+dd 0597df092h
+dd 0a245354fh
+dd 04d1782feh
+dd 0b8ab5306h
+dd 008b1bed3h
+dd 093724849h
+dd 001b8adfdh
+dd 0ac035a88h
+dd 0a391cfc8h
+dd 0c2c040a9h
+dd 032c2682fh
+dd 0a23eb096h
+dd 0b944c135h
+dd 07a237e76h
+dd 0dd1822c8h
+dd 08da21173h
+dd 0b2cf8a77h
+dd 047cdaee3h
+dd 0223d3926h
+dd 03c6e45fbh
+dd 0096a099bh
+dd 0c95dec71h
+dd 03c746384h
+dd 02898ebb1h
+dd 03501e1a8h
+dd 03ec52e89h
+dd 06c4d3382h
+dd 0906797e9h
+dd 0a573eaa3h
+dd 0a8df3f48h
+dd 0a045c055h
+dd 04dfb0ae4h
+dd 025fe61ddh
+dd 0c912b595h
+dd 0dec0d8b4h
+dd 0183e3f7fh
+dd 05f4b29a8h
+dd 029a4b2ddh
+dd 0b145a7f8h
+dd 05c41d282h
+dd 0807c6f43h
+dd 0682cf00fh
+dd 0bc1e4d6eh
+dd 0401aaf3fh
+dd 07946af2fh
+dd 038432b58h
+dd 01894f695h
+dd 0085e099dh
+dd 099dfd7d8h
+dd 0da90d3dbh
+dd 07dc68124h
+dd 02ee948a9h
+dd 09ee6e120h
+dd 014276992h
+dd 0c064b7e7h
+dd 067178d74h
+dd 0fc4d18ffh
+dd 0b5cffbc2h
+dd 024b1ac84h
+dd 00f7e85fah
+dd 0aaa59178h
+dd 0cfec87c0h
+dd 087ed104fh
+dd 0ef3281a2h
+dd 097bfff2dh
+dd 08dac56a4h
+dd 028f29e96h
+dd 0971b1972h
+dd 03462d982h
+dd 05c3a9b13h
+dd 003d390bch
+dd 0456a7125h
+dd 077180d31h
+dd 0dd855238h
+dd 07f386694h
+dd 0083b680ch
+dd 0b776b661h
+dd 02496ae42h
+dd 0d215771ch
+dd 0b4aafd78h
+dd 061bb553ch
+dd 0c46148ceh
+dd 004edd7d0h
+dd 0cf7e15a6h
+dd 01d7d4132h
+dd 02baa893fh
+dd 040bd1e17h
+dd 0de0a1c31h
+dd 06694a729h
+dd 040170057h
+dd 0e37145beh
+dd 01fafb140h
+dd 09bd28581h
+dd 017e2506eh
+dd 08a73f781h
+dd 0414d1472h
+dd 0be0c66efh
+dd 04690572ch
+dd 04214e67eh
+dd 02d15fc7eh
+dd 0c3282676h
+dd 00455c834h
+dd 0486ba619h
+dd 09a996f22h
+dd 062ac5f87h
+dd 05820f202h
+dd 069389b42h
+dd 0f12ce600h
+dd 09c54a4f6h
+dd 06d81eeffh
+dd 0ab59315eh
+dd 029d06a0ch
+dd 096de78b1h
+dd 0002c66c6h
+dd 03344a9cdh
+dd 01a24edf2h
+dd 0eec80642h
+dd 01f83443dh
+dd 0b18f01a4h
+dd 08ffce743h
+dd 05f76b53eh
+dd 07f9a4e9dh
+dd 003d743ech
+dd 0dce66e21h
+dd 09485b589h
+dd 0ee37f454h
+dd 085609abah
+dd 0f3712ffeh
+dd 0f9021968h
+dd 00ee9c081h
+dd 021360fddh
+dd 051449376h
+dd 0d11fedach
+dd 0d3055c4ah
+dd 04d2b2838h
+dd 05b694161h
+dd 0a7d78323h
+dd 0c8d0624eh
+dd 0e31cb064h
+dd 015602d45h
+dd 0b257ef75h
+dd 03d5164a3h
+dd 07f0716d0h
+dd 0359d8408h
+dd 0f29329bah
+dd 0f454fc7eh
+dd 044d95eafh
+dd 0f3cbfe9eh
+dd 038953e52h
+dd 04464a821h
+dd 0c2e1af0dh
+dd 03714c5b3h
+dd 0bba3aa53h
+dd 0266c902ch
+dd 055a2608ah
+dd 06b8f1d42h
+dd 07057d7d3h
+dd 0d6d2d950h
+dd 0503baa4fh
+dd 0b4b1bcfeh
+dd 008039852h
+dd 028425191h
+dd 01ea1fc3ah
+dd 0c696f8e6h
+dd 00f0092d0h
+dd 04da886aeh
+dd 06624760eh
+dd 09fc11093h
+dd 06345f7c5h
+dd 0f58f7717h
+dd 08f1df5eah
+dd 091020b21h
+dd 030b0a7a0h
+dd 0f517586dh
+dd 0a76a15a5h
+dd 015c9ce7ah
+dd 0a60d4d68h
+dd 08511af49h
+dd 001250fe5h
+dd 0d4f8aef0h
+dd 062fad8ech
+dd 08d138a04h
+dd 09dc03955h
+dd 039b6247bh
+dd 04c72eb8ch
+dd 0fa11b548h
+dd 017be4a42h
+dd 021d1f136h
+dd 080fa1037h
+dd 037096214h
+dd 0fee79ac0h
+dd 084005362h
+dd 02760855bh
+dd 05d20610dh
+dd 0ac67da3dh
+dd 030f2b185h
+dd 04cbbad90h
+dd 02d87cf74h
+dd 034e3050bh
+dd 0810a1dcbh
+dd 0e214873ah
+dd 0d2cfd006h
+dd 025e5b460h
+dd 0ccd2d1ffh
+dd 00d57ad2ch
+dd 07e8d6fa4h
+dd 04cc36c41h
+dd 007b7509bh
+dd 05da4743fh
+dd 09642af21h
+dd 04ccf914ch
+dd 00c133a8ah
+dd 0a27bd76fh
+dd 092babb59h
+dd 007cccf18h
+dd 0b5b75283h
+dd 0ac0094b9h
+dd 09e2d736ah
+dd 0e9248f5bh
+dd 0c667e24ch
+dd 0581dc459h
+dd 090d1d1a7h
+dd 0ada6066ch
+dd 0b6ba8736h
+dd 0c50a23d4h
+dd 068da92deh
+dd 05780ede5h
+dd 04270a09eh
+dd 080e1b17dh
+dd 01e5de634h
+dd 0aa783d09h
+dd 0c9c840cah
+dd 0b94a4292h
+dd 09ee09bb2h
+dd 037c56b35h
+dd 0cd7baef7h
+dd 036637263h
+dd 0c3be96f2h
+dd 06238a24ch
+dd 06f913f8ch
+dd 01e323554h
+dd 0bfdc13a4h
+dd 0328e8626h
+dd 08fa15912h
+dd 03fc3532eh
+dd 0e5630f71h
+dd 0fbd78044h
+dd 0c108c857h
+dd 0fb345dd5h
+dd 0d6c45f42h
+dd 0ffefd335h
+dd 0d6218437h
+dd 0a305eba1h
+dd 07188f143h
+dd 095bcd8f5h
+dd 06f8da098h
+dd 077c1b936h
+dd 01210413fh
+dd 010ce4475h
+dd 06ac1b257h
+dd 0de04141eh
+dd 0bd4128c9h
+dd 0f3c8cb93h
+dd 03aa103f1h
+dd 071dfced3h
+dd 0e38b9019h
+dd 0f20826b5h
+dd 000bb3818h
+dd 0aa19e278h
+dd 01ceac753h
+dd 036109c77h
+dd 01f7acbf0h
+dd 06c9aa49fh
+dd 096887fdch
+dd 05af76b70h
+dd 06a8deb78h
+dd 0f071e939h
+dd 0e5eb28d3h
+dd 0a29ac45eh
+dd 0f40b1a03h
+dd 0fb73e604h
+dd 0d432b449h
+dd 0adf11a16h
+dd 02ffdaad1h
+dd 0b061ad0ah
+dd 08a47f5a8h
+dd 06dc4641ch
+dd 00156acceh
+dd 022c3ad9ch
+dd 0ed6223b4h
+dd 023a8d566h
+dd 04231bf9fh
+dd 0759464dfh
+dd 0cca05cbfh
+dd 0e15294dfh
+dd 0c8ab9dc4h
+dd 0ac9ba07ch
+dd 01e865f36h
+dd 0c08d7f5fh
+dd 042547a09h
+dd 0b4d85a66h
+dd 0b3d394a6h
+dd 0194a921bh
+dd 048c8810ah
+dd 03276da50h
+dd 0d7c729cfh
+dd 04f1d50dfh
+dd 00403c9bdh
+dd 008863663h
+dd 01f84ac8eh
+dd 002185294h
+dd 09b37a69ah
+dd 09cfa4ceah
+dd 018aa4613h
+dd 0e6b18d05h
+dd 09fa5a075h
+dd 09f605657h
+dd 036f82604h
+dd 04cbd1299h
+dd 003c29b3dh
+dd 0529a3e08h
+dd 052c3acf1h
+dd 09163eb8ch
+dd 0777bec3dh
+dd 0f55860fah
+dd 0b41692c9h
+dd 0fb3b0317h
+dd 0678c70d7h
+dd 0de29c15eh
+dd 0945e4c59h
+dd 00a50f1f7h
+dd 065016633h
+dd 06b570789h
+dd 051578752h
+dd 0124bd469h
+dd 0844a2174h
+dd 0d8a3dda4h
+dd 0193e18c1h
+dd 077ca7bafh
+dd 0ffeb3b77h
+dd 0930733e6h
+dd 066aace7ch
+dd 0cb997a2ah
+dd 01741eb04h
+dd 0558b63b7h
+dd 0c5859a20h
+dd 085ba46fdh
+dd 025f77a86h
+dd 062a8a101h
+dd 0a041b653h
+dd 0819b0964h
+dd 01a0dc019h
+dd 0e2f93613h
+dd 0cea6829ch
+dd 0ff9755bfh
+dd 0c0a099b4h
+dd 0566547e3h
+dd 060cf12ebh
+dd 0ab52f50ah
+dd 04d707127h
+dd 020eded31h
+dd 0ae8e9d15h
+dd 007366675h
+dd 046547582h
+dd 072ed0fb0h
+dd 0fb1da3e1h
+dd 0ce23d455h
+dd 04495c9d4h
+dd 08a262a16h
+dd 0ab695b20h
+dd 02d0fb229h
+dd 0b450eca6h
+dd 09bfda23bh
+dd 0d0f6dd12h
+dd 0b235c536h
+dd 0b5d94fffh
+dd 06d2bb0cbh
+dd 0a8aed99ah
+dd 01f4b3741h
+dd 006a96bech
+dd 0077b073ch
+dd 0f32afc55h
+dd 0b1d1be89h
+dd 0cab429a7h
+dd 0868f07ech
+dd 05b0ec52eh
+dd 091f6288bh
+dd 0346325efh
+dd 00a5af2a7h
+dd 01fe9ee86h
+dd 05fde5cb3h
+dd 014415053h
+dd 08e7c11ffh
+dd 0cf4512d7h
+dd 09ec120e8h
+dd 0916f0f45h
+dd 0a20d4607h
+dd 09dedd6c5h
+dd 0acada424h
+dd 01cc80ad7h
+dd 05a8a4107h
+dd 076ed6af4h
+dd 0df5056dbh
+dd 034fd40e4h
+dd 0b006b2f8h
+dd 0402426deh
+dd 03771144eh
+dd 096cf9ce9h
+dd 070e6dd52h
+dd 0ba4a7db3h
+dd 02624565ch
+dd 0c5a49ff5h
+dd 0a6c663a0h
+dd 047bcde09h
+dd 08e7f98bbh
+dd 07ac19c4dh
+dd 041004995h
+dd 02b17da4ch
+dd 0e67d1d90h
+dd 00d804523h
+dd 02aadf2a3h
+dd 0df7d6dadh
+dd 0f07da002h
+dd 0b6d40133h
+dd 06b942d67h
+dd 04c8b4fc4h
+dd 001a1515bh
+dd 08b24fbach
+dd 06e01f6b6h
+dd 04f829f4eh
+dd 06791fcdch
+dd 01067925fh
+dd 09ca34b89h
+dd 0dfb011ceh
+dd 03ea4d327h
+dd 064e74bcdh
+dd 00c3bf081h
+dd 0f4cbb872h
+dd 0db2bfd3fh
+dd 058f9b3f7h
+dd 034c26248h
+dd 0577bfcefh
+dd 0a09ed345h
+dd 0b3303d2fh
+dd 0e327e018h
+dd 078d68900h
+dd 0672a3017h
+dd 00e00fed7h
+dd 0755d2985h
+dd 0c1e5826dh
+dd 0033c3d25h
+dd 0b7c744d2h
+dd 0418912e7h
+dd 070b650d3h
+dd 0f79ef9e9h
+dd 084e9ca80h
+dd 0ca86c12eh
+dd 047845fdbh
+dd 07c0f5feeh
+dd 0382e8474h
+dd 0afe313f2h
+dd 02672e5b5h
+dd 0ab22336eh
+dd 040811dd7h
+dd 077ad9015h
+dd 0ad3f9632h
+dd 040f6f879h
+dd 0c35a2205h
+dd 0124c500ah
+dd 011c19bb4h
+dd 03a70b663h
+dd 0989d017ah
+dd 02e1ec258h
+dd 04f4e2abdh
+dd 0efbc4ad2h
+dd 073333df6h
+dd 057a333b5h
+dd 03f59fec9h
+dd 01d1dd0efh
+dd 0d8afa02eh
+dd 012a7f30fh
+dd 09122a5d3h
+dd 0071d962fh
+dd 05ed73efch
+dd 08c05ef90h
+dd 02b6ac6ddh
+dd 072e83ca4h
+dd 055476ddah
+dd 0d4a3d4cch
+dd 039d16494h
+dd 0d9ba1e5dh
+dd 0ccfcfaa3h
+dd 08180ef30h
+dd 0f8b282adh
+dd 0d7c673f7h
+dd 09c92a9b1h
+dd 099582df2h
+dd 0b3f0f0dch
+dd 07649bb00h
+dd 0365b206dh
+dd 03631ccffh
+dd 0842208f8h
+dd 0ca95b19dh
+dd 0017248edh
+dd 05c0d5436h
+dd 0c7048972h
+dd 00a6c187ch
+dd 04819990ah
+dd 08ede35e7h
+dd 090fa6aa2h
+dd 067e3ba62h
+dd 01d7bc6dah
+dd 09c40e69fh
+dd 026f4d015h
+dd 03a7864feh
+dd 00a2d08f0h
+dd 0b1d3ba15h
+dd 0333d308ch
+dd 03646f68ch
+dd 0101f62a0h
+dd 0f8aee989h
+dd 07330e333h
+dd 03ffba223h
+dd 05c411befh
+dd 04362db07h
+dd 00f4ff011h
+dd 04ce68b71h
+dd 025ebb7d3h
+dd 075051da4h
+dd 029151f80h
+dd 0b570f73bh
+dd 09129ee0ch
+dd 0ccdb87bdh
+dd 0877bc550h
+dd 053eca747h
+dd 05b995c06h
+dd 0a56dcc38h
+dd 0fa5c3fb9h
+dd 012b05864h
+dd 0b539b0f0h
+dd 09a162effh
+dd 05909527eh
+dd 062f4e7a6h
+dd 0a6e02b3dh
+dd 085a578a3h
+dd 047a8dd71h
+dd 08f30ce0bh
+dd 08d05c430h
+dd 018d2b358h
+dd 0963cbb56h
+dd 0598466aeh
+dd 06be3c78fh
+dd 0d3d68992h
+dd 082d6b46bh
+dd 08a3b5e52h
+dd 0ededd288h
+dd 0cdd227c9h
+dd 0aefe69b8h
+dd 0fae0b810h
+dd 028173419h
+dd 092c5b7e0h
+dd 06ab038ddh
+dd 0616d1d3fh
+dd 001a26a2dh
+dd 0a646bfffh
+dd 0bf56cde5h
+dd 053fe6460h
+dd 04fcaf817h
+dd 09de8cf63h
+dd 0cb89d377h
+dd 0dfe6a853h
+dd 0b3acb989h
+dd 058312c06h
+dd 07b065377h
+dd 02161f9aah
+dd 041d08614h
+dd 08b79bdd0h
+dd 03796e37ch
+dd 01af4ff84h
+dd 074330623h
+dd 09ac888a8h
+dd 0ca6ab63dh
+dd 0ec3b54bch
+dd 0d7a89246h
+dd 0fa0e2d1eh
+dd 0442e340fh
+dd 0b7b07fbbh
+dd 00c31144ah
+dd 01e7a813bh
+dd 06bd48073h
+dd 033824b9fh
+dd 0e5bedeech
+dd 0f17346e9h
+dd 02edd02f4h
+dd 0b88288d4h
+dd 0bc5f36f7h
+dd 0d565052eh
+dd 05e7a71d7h
+dd 05171ada3h
+dd 099c1ce81h
+dd 0f6379258h
+dd 0ca140d87h
+dd 0ba55f793h
+dd 09d622015h
+dd 0bf6ff731h
+dd 048254b62h
+dd 07ed2cdebh
+dd 0108aacefh
+dd 0cd9dcd42h
+dd 09b2e28eeh
+dd 0b588c5cbh
+dd 0b670ccc3h
+dd 07db8667ah
+dd 0a0c5edd6h
+dd 096ed7da1h
+dd 0b44ea08dh
+dd 008cff6b7h
+dd 0a94b556bh
+dd 06c0b7014h
+dd 02588ce2fh
+dd 02652ab5dh
+dd 0b6a06285h
+dd 080b49756h
+dd 0712e9442h
+dd 06811e560h
+dd 0d597cdceh
+dd 0019e8568h
+dd 0d6267fe4h
+dd 0694f1504h
+dd 0cd36aa27h
+dd 0f457840bh
+dd 042c94e98h
+dd 04a332db6h
+dd 0ebdb24beh
+dd 071aecd9bh
+dd 0fccf60d7h
+dd 0da25de3eh
+dd 0842bcaf9h
+dd 0a7002fcfh
+dd 0544b06e4h
+dd 0c175da53h
+dd 00ddcba78h
+dd 0125a63a0h
+dd 0bb507229h
+dd 06a166005h
+dd 05dc51e3bh
+dd 0cf04e173h
+dd 05d518f14h
+dd 0d8c82de8h
+dd 04a7c7b3eh
+dd 0c4434c15h
+dd 0557d7379h
+dd 07992bccbh
+dd 0303df412h
+dd 0e5f1be1bh
+dd 043e81774h
+dd 0727ed2a2h
+dd 06f06210eh
+dd 06fab1c22h
+dd 00f99171bh
+dd 09932141fh
+dd 01178de63h
+dd 0f92e39f2h
+dd 0778e528dh
+dd 0f413f129h
+dd 05b1c7712h
+dd 07c6b935bh
+dd 0529e7ebfh
+dd 0f66220f4h
+dd 02f7cfaadh
+dd 00bd323bfh
+dd 07f1a1ce6h
+dd 09be83073h
+dd 0bbf00802h
+dd 04f031ca9h
+dd 0ff20a757h
+dd 02ab07545h
+dd 0dec93321h
+dd 07d795f82h
+dd 0b8eacad9h
+dd 0b7581a89h
+dd 0e6012ebah
+dd 095184b86h
+dd 00deea8e9h
+dd 0f019bc73h
+dd 0979b312ch
+dd 08496eab4h
+dd 0756c126fh
+dd 0ed74c377h
+dd 00fc14a95h
+dd 016b2873bh
+dd 00b2c6888h
+dd 0c97545dbh
+dd 043667261h
+dd 0c663cef8h
+dd 0a49bdbd5h
+dd 06202c780h
+dd 02667c204h
+dd 0117d3edah
+dd 05d209a48h
+dd 0f5dc5b2dh
+dd 0d7a80ca0h
+dd 091559a4ch
+dd 01d343465h
+dd 0f90bcd1fh
+dd 0b1dbdeeah
+dd 0f3646984h
+dd 0748a8eafh
+dd 0c2d09969h
+dd 02a7c3d16h
+dd 0d0dddb11h
+dd 06c2848c0h
+dd 097e6ca57h
+dd 08374c0afh
+dd 0f61d5c11h
+dd 0e9fdd234h
+dd 088792c15h
+dd 001ceb094h
+dd 00f72d74dh
+dd 0007b3cb9h
+dd 09fd8da3fh
+dd 0a634e7d8h
+dd 0c0e054e5h
+dd 069584e33h
+dd 04f8266cbh
+dd 0e5d54efah
+dd 03078fff7h
+dd 05b30cd61h
+dd 09307bd38h
+dd 0adefb33dh
+dd 0a39efaf5h
+dd 09b9a4acbh
+dd 050da1cd4h
+dd 0dd22411ah
+dd 051922b47h
+dd 06efc0538h
+dd 082ef7683h
+dd 042821000h
+dd 0baeab632h
+dd 034e7978ah
+dd 034770818h
+dd 07891885ch
+dd 021faf7b3h
+dd 0fe96c46ah
+dd 08f234565h
+dd 088a01387h
+dd 009280c60h
+dd 07909693ah
+dd 02b5bf714h
+dd 07ba65cd2h
+dd 079d8ec99h
+dd 0f3fa7f88h
+dd 0611c2a6ch
+dd 018060f52h
+dd 0abd09afch
+dd 07246b114h
+dd 0333f5ea1h
+dd 0ea99557fh
+dd 0d9c36e7bh
+dd 06b0874b1h
+dd 0f1a3bdd9h
+dd 0dbca07f3h
+dd 00e672dach
+dd 074baf790h
+dd 06e1d4c3ah
+dd 00aeb82d2h
+dd 0098352b0h
+dd 09e9c21c2h
+dd 090882de2h
+dd 0d4e62d73h
+dd 0d20680cbh
+dd 0f0a1bb56h
+dd 0f2790b7bh
+dd 0adf4bbdeh
+dd 0f54a758dh
+dd 0957c0980h
+dd 0e6685fc2h
+dd 010a10887h
+dd 07da3930ah
+dd 0dc60596dh
+dd 00610482ch
+dd 0850796eeh
+dd 07b35e8d4h
+dd 098bcfc9bh
+dd 0e6713e92h
+dd 023d5c995h
+dd 0ebc366a4h
+dd 09b1d1b2fh
+dd 003d11183h
+dd 025047c6fh
+dd 032fdf331h
+dd 0c515f20ah
+dd 03e99cbbeh
+dd 02a653555h
+dd 0e4803237h
+dd 09808948ah
+dd 0dfea57b1h
+dd 073e8a698h
+dd 0ae44c2fah
+dd 0c2cf9d7dh
+dd 04e601d8ch
+dd 0724bc57dh
+dd 047849f91h
+dd 04904ffbah
+dd 000ed5588h
+dd 0ea58864ah
+dd 0403bb73ah
+dd 023fe57b0h
+dd 087cc07beh
+dd 017b8d4c3h
+dd 0726cadf4h
+dd 02e110256h
+dd 05c3b9462h
+dd 0516e72fah
+dd 02ead9055h
+dd 0f0cfeb77h
+dd 09c8b8715h
+dd 0ef547ba1h
+dd 0536fe34dh
+dd 097306356h
+dd 03c7340f3h
+dd 04d566858h
+dd 0a5db7e19h
+dd 0aaf85be7h
+dd 09f8b92c6h
+dd 0cc660a22h
+dd 00b3f8534h
+dd 07c6de344h
+dd 0ca6d4ba6h
+dd 0491299b9h
+dd 065f6d56ch
+dd 034055bfeh
+dd 0aaf19e1ah
+dd 0877ac9f4h
+dd 09e93a53ch
+dd 038670958h
+dd 0dca27388h
+dd 0bc904954h
+dd 032515fb4h
+dd 072d50d03h
+dd 01b21227ah
+dd 0e6cc8af2h
+dd 000a200beh
+dd 0026ed2bdh
+dd 07df87aa3h
+dd 053fbd10eh
+dd 0c4d9000fh
+dd 04efdf17ah
+dd 0c7e4cccdh
+dd 059460b52h
+dd 07a91109ah
+dd 08ec9decah
+dd 04d871712h
+dd 0858d0c10h
+dd 01c90a81ch
+dd 037d9d2feh
+dd 0903f31cch
+dd 0013eeffeh
+dd 0a85500d7h
+dd 02c25cd23h
+dd 051ee221eh
+dd 0a60e354dh
+dd 07fdeeed9h
+dd 04b06ddc1h
+dd 0a696f79ah
+dd 044b5a14ah
+dd 02e11c394h
+dd 0300fb9deh
+dd 00d486a25h
+dd 05709c8bch
+dd 024fa3a70h
+dd 0274881d2h
+dd 0657728e9h
+dd 07c583120h
+dd 0fcaededfh
+dd 08951bbb6h
+dd 053126161h
+dd 002c8f3feh
+dd 0a298f60ah
+dd 09996b169h
+dd 017a7fdb3h
+dd 07dc72ebeh
+dd 0327dfc9fh
+dd 0bd64efd4h
+dd 0122e2197h
+dd 0d5396231h
+dd 040e66e46h
+dd 063e53b26h
+dd 026f6a1fah
+dd 0ed666f05h
+dd 0733f7fefh
+dd 0e7168df2h
+dd 095a4f517h
+dd 0c5e4b1c5h
+dd 064d6041bh
+dd 07335597ah
+dd 08fd171afh
+dd 0a901083ah
+dd 0909d56e1h
+dd 0e51e6f64h
+dd 05a27c81ch
+dd 0261ef8e1h
+dd 0f484f65dh
+dd 0d6048b1ch
+dd 0461763feh
+dd 0269ca8d2h
+dd 0a177aec5h
+dd 0e3f972cfh
+dd 0ef608e2ah
+dd 0cb48067dh
+dd 0811e646dh
+dd 04dd7da0ah
+dd 0d7251b19h
+dd 0a1541175h
+dd 01725ea59h
+dd 028a78846h
+dd 0da90fdf2h
+dd 00c9fcfcch
+dd 072119cadh
+dd 0ea1d8dc5h
+dd 02493d883h
+dd 0b5f7e8ech
+dd 0d5854e66h
+dd 0ec497666h
+dd 0757140b6h
+dd 03221b6feh
+dd 09f11ede9h
+dd 05874687dh
+dd 05c1f78f1h
+dd 0de548b7dh
+dd 0ba4a49deh
+dd 0781d23b3h
+dd 0faef2172h
+dd 09df891cbh
+dd 0bde3f891h
+dd 049b855aeh
+dd 04606e821h
+dd 0342fed2bh
+dd 078b2561ch
+dd 05f493213h
+dd 0d3ef3d37h
+dd 04b83d333h
+dd 0e1b481aeh
+dd 0f00d09b4h
+dd 0dc2a3569h
+dd 01ca29af4h
+dd 071914dc8h
+dd 0fc87cf00h
+dd 039903339h
+dd 0e23271e0h
+dd 0eaa23d4eh
+dd 0c77c3125h
+dd 04876895ch
+dd 05ea721d7h
+dd 0f4ad0f2ch
+dd 0c81b8a8bh
+dd 049c0d377h
+dd 0c4e5cfbeh
+dd 008907900h
+dd 08690cef2h
+dd 02bb60d18h
+dd 0c0c3f7d8h
+dd 0fe2f0d71h
+dd 0b481463dh
+dd 021ccebf1h
+dd 007448c39h
+dd 079ad467bh
+dd 0da1a2b53h
+dd 0fb9d6096h
+dd 064003f97h
+dd 020f2f988h
+dd 0ea83e8abh
+dd 02ae19096h
+dd 0302e0796h
+dd 014a77d90h
+dd 063f47df0h
+dd 0081b9f7ah
+dd 002309b9ch
+dd 0d405393eh
+dd 0c2a24ba4h
+dd 00be5c54dh
+dd 098eb77b5h
+dd 050cefbb3h
+dd 0581791abh
+dd 0f0aa1822h
+dd 005130687h
+dd 0d6843f91h
+dd 0a00bd8f0h
+dd 0db536e16h
+dd 0479cba85h
+dd 0d215a3dch
+dd 00b2be545h
+dd 0d4cb5d1ah
+dd 0b9af053ch
+dd 05d63e838h
+dd 0ce086279h
+dd 07755d540h
+dd 068e8bac3h
+dd 044eef776h
+dd 0c60f1a95h
+dd 08be53318h
+dd 0ece86f4eh
+dd 002485d29h
+dd 09f7aa037h
+dd 0c7ed37d6h
+dd 0d2ca6329h
+dd 0dfc9031eh
+dd 0558dfdddh
+dd 06b6d4205h
+dd 0fd9f29b0h
+dd 0a7ac55ech
+dd 0717d1419h
+dd 0766f8cc6h
+dd 047b97c75h
+dd 032891857h
+dd 0c1da8534h
+dd 0d0f1d73fh
+dd 0dd509f1fh
+dd 0e7a8051bh
+dd 0ae4f13b7h
+dd 0d3f77175h
+dd 0a66d11d1h
+dd 04fad3381h
+dd 03332df06h
+dd 0fef59d9ch
+dd 02beef054h
+dd 00f13ce2ch
+dd 0eaaf4c5dh
+dd 09bd696c1h
+dd 0f275f7c3h
+dd 0e0e6628eh
+dd 07659348bh
+dd 08b1733e7h
+dd 04a0a60cch
+dd 0f2b012b7h
+dd 0c385cc43h
+dd 052c2bd94h
+dd 0d723b443h
+dd 019745088h
+dd 0cbe64dbbh
+dd 0bcfd150ah
+dd 0d840323ch
+dd 0055056b7h
+dd 08185ab92h
+dd 07212f1c2h
+dd 092462db1h
+dd 0b2f0a061h
+dd 0dc7fce27h
+dd 039f7db55h
+dd 04063d202h
+dd 064f4b81ch
+dd 08742f779h
+dd 012555369h
+dd 0f35efb81h
+dd 01603700eh
+dd 0bf23a4ach
+dd 090438392h
+dd 0736c37f2h
+dd 023cec64eh
+dd 0f7f3d17dh
+dd 07980d698h
+dd 080a0cf97h
+dd 03ba0cfd9h
+dd 0306c347bh
+dd 01de194edh
+dd 064dca3fah
+dd 065fdd57ah
+dd 0dfa5c7ceh
+dd 0131f66eah
+dd 033e12016h
+dd 0c3dd47a1h
+dd 00779357bh
+dd 0286cacf1h
+dd 085582cbah
+dd 06a673022h
+dd 05f87f005h
+dd 0272ff57dh
+dd 03be3098eh
+dd 01b05ed49h
+dd 0c7b27ab5h
+dd 04e67bd46h
+dd 03884e60eh
+dd 0334bcb44h
+dd 07fd3486bh
+dd 089ebb3c9h
+dd 05fe7dd26h
+dd 01ea15bdfh
+dd 0932bfa1dh
+dd 09c7802e5h
+dd 051d2261fh
+dd 05dc7d7f5h
+dd 09ee7cd51h
+dd 0e93372c4h
+dd 0b8e9a8aeh
+dd 04b81c1e0h
+dd 09439f894h
+dd 09620d141h
+dd 007fa8996h
+dd 0b13ad360h
+dd 001c91bf9h
+dd 07ad7c550h
+dd 0770a628fh
+dd 0b5ab3c96h
+dd 0d0d27682h
+dd 08449c275h
+dd 0a4677d84h
+dd 04c1f3e7ah
+dd 01724db7eh
+dd 0c99d9628h
+dd 06303cf13h
+dd 02e2b4388h
+dd 07d6b7df6h
+dd 02253d4eah
+dd 0372e3868h
+dd 00013940dh
+dd 045ddbe9fh
+dd 0f1579511h
+dd 0415de1d9h
+dd 014726517h
+dd 0e1be5d1bh
+dd 044907b85h
+dd 0f3e6f689h
+dd 04f77ccc0h
+dd 06ff505c1h
+dd 041bef8bch
+dd 080073050h
+dd 029cd6c7bh
+dd 055074b8eh
+dd 04c724546h
+dd 0e27826f5h
+dd 070b8fe0ch
+dd 031738e1ah
+dd 046c037e4h
+dd 02402bf38h
+dd 003d4fcfch
+dd 0f9e5dbb7h
+dd 0cf44559fh
+dd 0cbbfce55h
+dd 0ce092241h
+dd 0a108a609h
+dd 01151303eh
+dd 06193f573h
+dd 08da5a06ch
+dd 00fea1f86h
+dd 00c28759fh
+dd 0035e49e0h
+dd 0d279a4edh
+dd 00f42382dh
+dd 01aa24db9h
+dd 01d51408dh
+dd 0833b550ah
+dd 09d95ff0ch
+dd 0fdf15205h
+dd 0c61d08b3h
+dd 0ca05f98bh
+dd 02b8b41e5h
+dd 0506e73e1h
+dd 068c8fcfdh
+dd 01708cd6fh
+dd 006825ed2h
+dd 0145f141ch
+dd 045d47556h
+dd 0166205dah
+dd 01917d33ah
+dd 024b51436h
+dd 0ad46a4d9h
+dd 08b8bb9dch
+dd 082612692h
+dd 0799c52bdh
+dd 02c58bdb0h
+dd 08bed91bch
+dd 0fe3ff336h
+dd 06393037fh
+dd 041b73c0eh
+dd 094e9f5c2h
+dd 02ad2433fh
+dd 0fd5fe023h
+dd 0428ca09fh
+dd 018b5491ch
+dd 0e5696c10h
+dd 0f1aca60ah
+dd 0888dc055h
+dd 0ebe949b8h
+dd 0bff7098ah
+dd 0c2062bd7h
+dd 060a2217eh
+dd 0647b80cdh
+dd 031b38617h
+dd 060c3fec0h
+dd 03f506201h
+dd 0b20cada0h
+dd 02c31d464h
+dd 09c7d166ah
+dd 08a774859h
+dd 03ece4563h
+dd 03768f6fbh
+dd 0b08592a8h
+dd 0c3e4bb83h
+dd 001dc6dfbh
+dd 00d77017ch
+dd 07c997f76h
+dd 04fd8ac9dh
+dd 0a35d4281h
+dd 0308629b0h
+dd 041d2038bh
+dd 0e086e9a7h
+dd 0af720ac0h
+dd 0a109390eh
+dd 040dc4dc8h
+dd 0496ab4edh
+dd 0e020497ch
+dd 0a3a7c850h
+dd 0e340e379h
+dd 08307274fh
+dd 0d9d064f1h
+dd 03fb999a5h
+dd 004c45cedh
+dd 08e909edfh
+dd 0c11dda44h
+dd 069802b69h
+dd 00719e397h
+dd 07d7e0d96h
+dd 0a9085519h
+dd 03a56c6a3h
+dd 05d1bdfbbh
+dd 0602cea44h
+dd 0adf823ebh
+dd 08aba3668h
+dd 08b337944h
+dd 063f8758dh
+dd 0ee577349h
+dd 09699addbh
+dd 0cb9cfa3ch
+dd 032fbf7e3h
+dd 08df95103h
+dd 038427e9ch
+dd 04a5ee3deh
+dd 07c938823h
+dd 096e9831bh
+dd 09a9f02afh
+dd 03c0f9076h
+dd 0af5eae38h
+dd 0209453a5h
+dd 065212884h
+dd 0bc7b872dh
+dd 03b1224a5h
+dd 0c4b01736h
+dd 04a7b69f8h
+dd 049efcd48h
+dd 08fac5c87h
+dd 0bce9d34eh
+dd 02aef3840h
+dd 0ac8018f6h
+dd 0ba11e638h
+dd 0c884936fh
+dd 05ec68e6ah
+dd 04fb6b3b4h
+dd 01f779eb2h
+dd 0edd5f0a0h
+dd 0f8ae2930h
+dd 0877b4fb4h
+dd 016a937ffh
+dd 077998249h
+dd 0334ac5bbh
+dd 00e13cb7eh
+dd 0f7ead346h
+dd 0a7daeaddh
+dd 0ca40e7fdh
+dd 0e5181b4dh
+dd 0953d5543h
+dd 005b89fa2h
+dd 0ab19bea8h
+dd 024c24830h
+dd 02f47e85ch
+dd 04c570f61h
+dd 02ce607d4h
+dd 0782ff04ah
+dd 0bdd96771h
+dd 079a62e62h
+dd 08db1d3c6h
+dd 0fe2b8065h
+dd 004d20da9h
+dd 0b6233332h
+dd 0d00d1183h
+dd 02ae586b0h
+dd 083d5e472h
+dd 043ec202bh
+dd 0c6a1234bh
+dd 033b83125h
+dd 042de9584h
+dd 0cb5ce06bh
+dd 0e4edaa8bh
+dd 0e3d91777h
+dd 0d3e61da4h
+dd 08c727999h
+dd 0b1158f1ah
+dd 0861f27f3h
+dd 0e6fd827ch
+dd 00ac77270h
+dd 021297b61h
+dd 018de73fbh
+dd 07c7b8ad2h
+dd 099fd621fh
+dd 09c49460ah
+dd 02a4cc5e2h
+dd 040daf78ah
+dd 07838ca5dh
+dd 063c60428h
+dd 01b54acf3h
+dd 045433c42h
+dd 0c28025c7h
+dd 0ddb37a08h
+dd 0398a3d74h
+dd 0dce6276ah
+dd 035f20047h
+dd 0c59240fdh
+dd 0a76fcd41h
+dd 07c81aa03h
+dd 0d2fc6997h
+dd 09b93a77fh
+dd 02185cd40h
+dd 0f6479b10h
+dd 07886d731h
+dd 01bf4c8aeh
+dd 08f69668eh
+dd 0b273faafh
+dd 0a67401d3h
+dd 00c42746ah
+dd 000217ca1h
+dd 03d96b6c1h
+dd 0c17cdefdh
+dd 0c22be795h
+dd 0ed8a76e8h
+dd 093bd78b5h
+dd 09408a379h
+dd 05b197ad4h
+dd 00f1eceb4h
+dd 07ea94e29h
+dd 0d9413909h
+dd 0c5a82d99h
+dd 0a4a2934fh
+dd 036dcf7e8h
+dd 05c7a4476h
+dd 05eba3b8ch
+dd 0b4c66e4ch
+dd 0de49f80ch
+dd 062699a21h
+dd 0173b4fb8h
+dd 0e30d46c4h
+dd 013cfae6fh
+dd 03ea667f2h
+dd 0596925b8h
+dd 091f26253h
+dd 0982c57f6h
+dd 0b54f533ah
+dd 06f389acfh
+dd 0ad412d85h
+dd 07a1e2690h
+dd 0cf895913h
+dd 0cb5af825h
+dd 08d18e6f5h
+dd 0a2d14a2ah
+dd 0dbd6344eh
+dd 0a6a1184bh
+dd 02cbd37b0h
+dd 09b26cbe9h
+dd 089ca5294h
+dd 053d6142ch
+dd 0291874ebh
+dd 031e83731h
+dd 08b95c381h
+dd 011651591h
+dd 07087a623h
+dd 00fbdc7f8h
+dd 0ca9ef3d0h
+dd 09fe918e1h
+dd 03bb103dfh
+dd 012718b07h
+dd 0576c03c8h
+dd 0e5b2b770h
+dd 064fc7648h
+dd 0caa06fcch
+dd 0ebf353e1h
+dd 02c7001e0h
+dd 0290d27dah
+dd 0540f89a3h
+dd 0113baba5h
+dd 02e227c21h
+dd 054ee805ah
+dd 096943cffh
+dd 0a408f97fh
+dd 0d7eabfc7h
+dd 0e44128aeh
+dd 039bcf2e1h
+dd 0d92a252ch
+dd 0da1e3771h
+dd 084f56356h
+dd 0465dc335h
+dd 00204bc41h
+dd 0e020a097h
+dd 09ab3f4cfh
+dd 02e6d3232h
+dd 0636793d8h
+dd 03854e775h
+dd 06e1f6161h
+dd 074dc5c22h
+dd 0ded9825eh
+dd 05b3b0e79h
+dd 04eb78f02h
+dd 0061d096bh
+dd 02fdd4a67h
+dd 01c9ac924h
+dd 02de721d6h
+dd 0b54482d3h
+dd 0e7b808d1h
+dd 0e226d3d9h
+dd 0a44ef012h
+dd 01e874256h
+dd 01443b0eeh
+dd 0e2c3d37eh
+dd 04e03fbf5h
+dd 02533df16h
+dd 0e43bbcb4h
+dd 09934ccd5h
+dd 0babbae11h
+dd 0d9c1480eh
+dd 0f863f5b4h
+dd 02fb696d6h
+dd 05a5477c5h
+dd 091521f48h
+dd 09e22632bh
+dd 06030ad2eh
+dd 0c50641aeh
+dd 00f1ac512h
+dd 0c95701edh
+dd 0d9ee30b0h
+dd 07014c959h
+dd 03030b492h
+dd 040da4a06h
+dd 0046f972bh
+dd 00412f281h
+dd 0245ba261h
+dd 0aba7b287h
+dd 0bc8239f7h
+dd 0b1e62009h
+dd 0b4dfda80h
+dd 092145bc6h
+dd 0871ff191h
+dd 0964f8df6h
+dd 05c96684dh
+dd 0e8d3adb4h
+dd 0cf1b87dfh
+dd 0b5cfcb83h
+dd 0af3e0b14h
+dd 0cf74de53h
+dd 0ac38b6ech
+dd 0c98c5cbbh
+dd 0719fc79dh
+dd 04b682ea1h
+dd 050d32d89h
+dd 00185f6a4h
+dd 09e15f04fh
+dd 0481a63a4h
+dd 062a7fcdbh
+dd 026bd524ah
+dd 001ffce07h
+dd 030099273h
+dd 0074dcaach
+dd 01a3f8d9ch
+dd 0df7c4298h
+dd 04207345ah
+dd 071607be4h
+dd 00d3e48f2h
+dd 08207a7f7h
+dd 0d5379628h
+dd 0588dc98eh
+dd 0fdfa9885h
+dd 07ce628b7h
+dd 094905084h
+dd 0e44053e5h
+dd 005e71784h
+dd 05f709564h
+dd 09126d899h
+dd 0eb7eceb6h
+dd 07aa44825h
+dd 03598e5b6h
+dd 0aef9e2b9h
+dd 085d10836h
+dd 00bc4da42h
+dd 0fbe5ebd9h
+dd 023bed3c1h
+dd 0d828b093h
+dd 02bb58c3dh
+dd 0edfa1cd7h
+dd 0c5518b20h
+dd 045bc94bah
+dd 02f2c333ch
+dd 04942d92ch
+dd 011ebc233h
+dd 0834ce656h
+dd 074094d42h
+dd 01828d050h
+dd 03948b357h
+dd 0c02bd808h
+dd 0594044c8h
+dd 0508ee65fh
+dd 0e4f6da31h
+dd 069ac7270h
+dd 01f9a2410h
+dd 0ec5b79bbh
+dd 02473743fh
+dd 02504d3ffh
+dd 0b6f70bd3h
+dd 02e46df9ah
+dd 00d270ff5h
+dd 0827670edh
+dd 02667bee9h
+dd 0094a20d7h
+dd 00b71149eh
+dd 0ea38eea4h
+dd 053e6eeb6h
+dd 0e93d2dbeh
+dd 03bce409ah
+dd 01d0151cdh
+dd 0675fef8dh
+dd 012db0716h
+dd 0d26d984dh
+dd 0ecb2fd3dh
+dd 0e9ce5d89h
+dd 06728c606h
+dd 0b4896c54h
+dd 045ed279fh
+dd 0d767344dh
+dd 0b08e469bh
+dd 07398a2a3h
+dd 0bd601e70h
+dd 0787a81afh
+dd 0a7185508h
+dd 0eed43fa4h
+dd 07b5e867fh
+dd 00143e834h
+dd 0b026ef8bh
+dd 04014bfe2h
+dd 011bf138fh
+dd 0d7281a16h
+dd 090c49e3dh
+dd 0ed222b03h
+dd 0f4a05272h
+dd 0cd990df9h
+dd 057bec7bdh
+dd 085db10c4h
+dd 0a12a0929h
+dd 0e82be3f7h
+dd 0e7af8636h
+dd 0573a2ccah
+dd 00c050d56h
+dd 038cb384ch
+dd 0e1214124h
+dd 0b694b9bch
+dd 06ccf9bebh
+dd 0367e3f3ch
+dd 09c8d3d26h
+dd 003718276h
+dd 066c3dc07h
+dd 084a578dbh
+dd 0d1d8b18eh
+dd 0b334d3ebh
+dd 0b9fc65cch
+dd 0c6d1245fh
+dd 003439b7bh
+dd 0f0627144h
+dd 023ea755ah
+dd 094534819h
+dd 0348e16dfh
+dd 02ac4548ah
+dd 07b438111h
+dd 08d5f4b0ah
+dd 04a74526ch
+dd 00e3a5531h
+dd 0edc7cc8eh
+dd 0ec56f3c2h
+dd 087edec65h
+dd 0226ccaabh
+dd 0747c2927h
+dd 052494e25h
+dd 05a53b0e8h
+dd 06655f926h
+dd 0fdc7e154h
+dd 065eb5ce9h
+dd 058832a1bh
+dd 0fb617b61h
+dd 044e63776h
+dd 0fd4c007bh
+dd 0ced0d957h
+dd 082ae85f5h
+dd 019be39c2h
+dd 06966ea9ch
+dd 05fe812bfh
+dd 0797ce4f4h
+dd 09dbb395bh
+dd 0b289075eh
+dd 0fa01e3b4h
+dd 026a050b1h
+dd 0e9365b4ch
+dd 042328737h
+dd 0b2a8b26ch
+dd 0d3d16ba0h
+dd 0f2607ee0h
+dd 02b7605a2h
+dd 0bb5e65e3h
+dd 015742de9h
+dd 06ff58542h
+dd 0e4bd73d6h
+dd 053498f59h
+dd 098911810h
+dd 0f0b28a5fh
+dd 02e28fb75h
+dd 0dd31a6b3h
+dd 0255870dah
+dd 0c6afc8a4h
+dd 0895cacd2h
+dd 05981501ah
+dd 056e52feeh
+dd 0f0b2a42ch
+dd 074a4aa30h
+dd 0b900378bh
+dd 01dc0c112h
+dd 084e110a3h
+dd 03ac50ba0h
+dd 0eeb26582h
+dd 043e1250dh
+dd 05a4896dch
+dd 0f1eecf71h
+dd 0f2e54573h
+dd 078cfea40h
+dd 0c0fe1727h
+dd 02d157e82h
+dd 0fcf62e78h
+dd 00c455a01h
+dd 04a3cef4dh
+dd 06d448a63h
+dd 0df9cbbffh
+dd 073255b95h
+dd 0ba6c5100h
+dd 04225ec98h
+dd 0c0aed5e6h
+dd 06715db0ch
+dd 01883cd47h
+dd 0075196dbh
+dd 02190cae4h
+dd 05778c622h
+dd 089a5091fh
+dd 0e0146b9ah
+dd 0b87aa7abh
+dd 0c10435cfh
+dd 0f8b0d2cah
+dd 0bee0b3fdh
+dd 027fa5d1eh
+dd 05396b012h
+dd 021f673ddh
+dd 07660bb96h
+dd 076501c47h
+dd 0875b99cah
+dd 03d25dc11h
+dd 0ccef34ech
+dd 00e13c437h
+dd 0a8c79fe7h
+dd 03fdc3d9bh
+dd 071761407h
+dd 06cb44f1fh
+dd 06a638524h
+dd 0ceec9645h
+dd 0a8a69f38h
+dd 07b2b17d1h
+dd 001440cedh
+dd 078a5f0b2h
+dd 0688d273ah
+dd 0ad8d46b7h
+dd 064c5f851h
+dd 07c65aa43h
+dd 005ca80a8h
+dd 05b48f5dfh
+dd 0c3f94a83h
+dd 08450b826h
+dd 03c42f0d5h
+dd 0cbedbfe2h
+dd 03e059b35h
+dd 01fe8dd86h
+dd 0cba9e27ah
+dd 05ffecdc8h
+dd 0f6eb97a0h
+dd 0affc62f4h
+dd 064172835h
+dd 0c6d6e426h
+dd 06c90f4b3h
+dd 06f636069h
+dd 063bfab3ch
+dd 0124ff6cfh
+dd 00750779ah
+dd 0866eb6fdh
+dd 04149fd33h
+dd 07c4f7294h
+dd 0897c5aech
+dd 0bd073798h
+dd 05cb48ddfh
+dd 0d8e50b88h
+dd 06049b826h
+dd 00eabbd9dh
+dd 0b199f069h
+dd 0bb939a6eh
+dd 0f253d607h
+dd 0bbc998ebh
+dd 0f342a56dh
+dd 0e43f95ffh
+dd 08f22ecceh
+dd 01bf2ed39h
+dd 0d7fb4c1dh
+dd 0bccc44d5h
+dd 024202f25h
+dd 0c9e62580h
+dd 0962fa55fh
+dd 0c16c0820h
+dd 0bfe6574eh
+dd 06ccf2542h
+dd 03fec2d27h
+dd 033f53c74h
+dd 0bd044015h
+dd 0bc09cd80h
+dd 0e5235ab0h
+dd 08e06f026h
+dd 08ccc0d2eh
+dd 044eba037h
+dd 0d56a8e4ah
+dd 04d65eaddh
+dd 077fd98a6h
+dd 0998e54c4h
+dd 03ebe6d7eh
+dd 0307de79bh
+dd 01cac4fa1h
+dd 0243fde4bh
+dd 09fa44327h
+dd 0fe5199e0h
+dd 01846b78fh
+dd 0f4688be5h
+dd 05dfaf85ah
+dd 06248ad4bh
+dd 09bb5c422h
+dd 0db0cf1d3h
+dd 0d72119b1h
+dd 03990662dh
+dd 09ef3f529h
+dd 016383160h
+dd 0696d1bd0h
+dd 0ed1ae09bh
+dd 00888e29bh
+dd 09bf2fca8h
+dd 04a10b0bbh
+dd 0186a2265h
+dd 064ce6bfeh
+dd 0cea45a21h
+dd 075dd7eddh
+dd 0ca9c4b5fh
+dd 0b7fe2f6bh
+dd 005e1b2dfh
+dd 0ae8ae956h
+dd 0248926a2h
+dd 08d4f3b58h
+dd 0e01e1d89h
+dd 0416cd856h
+dd 0f3c43603h
+dd 0a4ae1d73h
+dd 0c2d21f0bh
+dd 047c68f3ch
+dd 02ff50868h
+dd 087e17fb9h
+dd 047e040d9h
+dd 02c1e9d38h
+dd 0ecbc424ah
+dd 0df1d7402h
+dd 09865e3e2h
+dd 08341d414h
+dd 06824370ah
+dd 0944f5d44h
+dd 0de509e11h
+dd 0b2ddeff5h
+dd 05a5c485eh
+dd 0b3ae14b7h
+dd 007463758h
+dd 072df39b7h
+dd 09122787dh
+dd 07f61781ah
+dd 00cbb0246h
+dd 0f1f6eca6h
+dd 02e3db25fh
+dd 05b34fd53h
+dd 0d664d31dh
+dd 048fa8757h
+dd 095ca429dh
+dd 00cb9369dh
+dd 0954a3f58h
+dd 0f3fe6e33h
+dd 0365ad260h
+dd 04b4a617dh
+dd 0271116a2h
+dd 03b6665a4h
+dd 0da11ecdeh
+dd 0c2d529b3h
+dd 0aa702d2ch
+dd 0d2336864h
+dd 01d4aaed3h
+dd 07b52b871h
+dd 0eed29674h
+dd 0726d3dd3h
+dd 0fc6eb674h
+dd 00e58f6e9h
+dd 0d28a5646h
+dd 0eb51f2ebh
+dd 0280bc160h
+dd 033349aa3h
+dd 0f42c5520h
+dd 0e8baf7a0h
+dd 0f34b9ce2h
+dd 0f173208eh
+dd 054ed0bd9h
+dd 0b5db2159h
+dd 03e622436h
+dd 038c34b50h
+dd 0ab21e174h
+dd 06140323bh
+dd 0b38eff03h
+dd 0b49107beh
+dd 02d339d45h
+dd 0f2cdc404h
+dd 00acba9c7h
+dd 070e1ca01h
+dd 08e9e9630h
+dd 0d8029425h
+dd 0cd3c0877h
+dd 04d2d845dh
+dd 0c1ec6f0fh
+dd 045d92ddch
+dd 03f085aefh
+dd 0495547fdh
+dd 0d3a3373eh
+dd 012f0cdfdh
+dd 0ab25e18dh
+dd 06fe56ef9h
+dd 0db9dad36h
+dd 077fe1b2dh
+dd 04a39d792h
+dd 0804ddda9h
+dd 09357283ch
+dd 03790ec3eh
+dd 062ae9f96h
+dd 082b878b2h
+dd 0990f550ch
+dd 0e9a6d560h
+dd 00d8b15abh
+dd 01ea55bdah
+dd 0c8db788bh
+dd 08abe93f1h
+dd 040aaf1a1h
+dd 0e47facf4h
+dd 05df9526eh
+dd 0f934af93h
+dd 05c79fac4h
+dd 0b9ca1516h
+dd 0c00700c3h
+dd 0bf49c644h
+dd 0804585bbh
+dd 03e97f93fh
+dd 0f8f86c76h
+dd 062fbf838h
+dd 055b04be0h
+dd 0526a7acah
+dd 0d1dfcd9dh
+dd 07893c71eh
+dd 0d909228ah
+dd 0d5be16c3h
+dd 07de3bda2h
+dd 0dfb47b97h
+dd 0e16a6fddh
+dd 064c56a68h
+dd 08bfe1447h
+dd 0e618c293h
+dd 0d0f37166h
+dd 00f263207h
+dd 09166735ah
+dd 0866cb345h
+dd 0e27c803ah
+dd 0ffbd0677h
+dd 09faeec35h
+dd 09cf2cd64h
+dd 0ff9c74d5h
+dd 09ebaac67h
+dd 0230090f3h
+dd 0b6d5be89h
+dd 0e6e02457h
+dd 0f793f79ch
+dd 036010a4ch
+dd 01450dc46h
+dd 0af79a788h
+dd 0139f5398h
+dd 0d24a721fh
+dd 0911e3fb4h
+dd 064e2b31eh
+dd 08961f185h
+dd 0858ab993h
+dd 069db4e40h
+dd 08a28bfbah
+dd 0b7d76b07h
+dd 07c97c8d0h
+dd 040323a61h
+dd 0d1dc171dh
+dd 0043d57cah
+dd 0c7234d48h
+dd 05318a5e5h
+dd 03cde1302h
+dd 0f82ce340h
+dd 0afe6d283h
+dd 09b6e0eb1h
+dd 01f83f118h
+dd 04d14dec3h
+dd 0e6534866h
+dd 060b70d7fh
+dd 041d4969ch
+dd 0c9471b2bh
+dd 0002c8100h
+dd 0e4d0ad70h
+dd 06ccc74feh
+dd 05243044bh
+dd 08aa876a3h
+dd 0f8d7422bh
+dd 03be57817h
+dd 0beee874fh
+dd 07be7528dh
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0F30679909.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0F30679909.inc
new file mode 100644
index 0000000..662f981
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0F30679909.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version

+dd 000000909h ; Patch ID

+dd 009112017h ; DATE

+dd 000030679h ; CPUID

+dd 07f1ab1f1h ; Checksum

+dd 000000001h ; Loader Version

+dd 00000000fh ; Platform ID

+dd 00000cbd0h ; Data size

+dd 00000cc00h ; Total size

+dd 000000000h ; reserved

+dd 000000000h ; reserved

+dd 000000000h ; reserved

+dd 000000000h

+dd 0000000a1h

+dd 000020001h

+dd 000000909h

+dd 000000000h

+dd 000000000h

+dd 020170908h

+dd 000003201h

+dd 000000001h

+dd 000030679h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 0000032f4h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 06f877ed4h

+dd 06c9d48a1h

+dd 0b77c4903h

+dd 0055bf256h

+dd 0409ddef8h

+dd 03d00afcdh

+dd 0347048d8h

+dd 0727e0faeh

+dd 0156866dbh

+dd 0c4bf175ah

+dd 09d00ca4fh

+dd 0b3e89a09h

+dd 07d2c8e19h

+dd 0bf5b667ch

+dd 07a1a7ac0h

+dd 026eebc7dh

+dd 0b2967286h

+dd 0ceb685c8h

+dd 0ffba02e6h

+dd 0144b5468h

+dd 000c428c9h

+dd 06d15dd3ah

+dd 0f9461953h

+dd 01632a092h

+dd 0222335dah

+dd 01fee67d9h

+dd 0a770513ch

+dd 04e83def6h

+dd 0b3d82e5ah

+dd 050f0b89fh

+dd 07fe10d45h

+dd 070f05efdh

+dd 05f575449h

+dd 0ab71a0a3h

+dd 0fb2a6eb5h

+dd 00283b4e2h

+dd 058a95566h

+dd 038a4c957h

+dd 08a682f1bh

+dd 0c49b3009h

+dd 01256e90bh

+dd 033169c52h

+dd 0d91585c4h

+dd 0df78eb29h

+dd 09f403399h

+dd 0a9de58dah

+dd 0fd05c858h

+dd 05a0f11bch

+dd 0c00e7840h

+dd 0b39bd56ah

+dd 0b87f38c7h

+dd 090141c59h

+dd 0325933f9h

+dd 00b0e1332h

+dd 0963c4befh

+dd 0f203d9ach

+dd 03925365bh

+dd 02955f8e7h

+dd 01fc417cbh

+dd 0d840e4e7h

+dd 025e9f7fah

+dd 0fb769b96h

+dd 0c7b8da5eh

+dd 0e81200f0h

+dd 071291c12h

+dd 05989b1e5h

+dd 0c007fdadh

+dd 0d7c9091fh

+dd 06a008197h

+dd 073005539h

+dd 06d8b436ch

+dd 0bc606f43h

+dd 000000011h

+dd 0229a4c80h

+dd 062415396h

+dd 030e7c28ch

+dd 02be27311h

+dd 0fce84979h

+dd 080648b8eh

+dd 03b7f6943h

+dd 0065e4b2bh

+dd 02e8403f3h

+dd 089eb8ab5h

+dd 034c8f63ch

+dd 006df820bh

+dd 03481a047h

+dd 0187b0252h

+dd 05d27a9fdh

+dd 0f661cfaah

+dd 039d2392eh

+dd 0dfa631d4h

+dd 03bb61d38h

+dd 0618ee4d5h

+dd 04b7f7b8bh

+dd 08b36f86bh

+dd 0c518b89dh

+dd 00da63efdh

+dd 019c1ec35h

+dd 0df8610cch

+dd 023e12f6fh

+dd 0ac6d2a79h

+dd 02e8d0934h

+dd 0a581de0eh

+dd 0eb1c71fah

+dd 095b4231dh

+dd 0b784698ah

+dd 0e36e2ea7h

+dd 099a0eb12h

+dd 062ad734dh

+dd 0e0aced88h

+dd 083d9f1afh

+dd 011d38cbeh

+dd 0cf48f949h

+dd 08205465fh

+dd 01f93f1d7h

+dd 057ba67ech

+dd 0273ba831h

+dd 047497d71h

+dd 03df42c47h

+dd 020b09025h

+dd 0c36a645dh

+dd 06f4f0011h

+dd 0abb2235fh

+dd 00adadb31h

+dd 051626207h

+dd 0ffd34a5ch

+dd 09de7db39h

+dd 098500754h

+dd 090749998h

+dd 097bef9d0h

+dd 0622d72c3h

+dd 046e8ff22h

+dd 0f420ff0fh

+dd 044fa364fh

+dd 0abe1df25h

+dd 0df5ab1f8h

+dd 053a7ea86h

+dd 037117e29h

+dd 0592b3894h

+dd 040ec1d58h

+dd 05d16207fh

+dd 00608f826h

+dd 018983338h

+dd 00c15ad4fh

+dd 023928370h

+dd 0712fa039h

+dd 061ed7a67h

+dd 0aa219cabh

+dd 07c7d7c4ah

+dd 0892e3f51h

+dd 05efc6738h

+dd 01c38c429h

+dd 0b11d14feh

+dd 0e927e858h

+dd 00520da44h

+dd 0a05817c7h

+dd 0413ebbd2h

+dd 0d778492ah

+dd 0f50ef833h

+dd 06fa50ebch

+dd 0ec163351h

+dd 0eef0d2abh

+dd 020b5c834h

+dd 024db2ce5h

+dd 0cb6cd5e1h

+dd 0dfb4ad46h

+dd 0ee436c95h

+dd 0bae26f84h

+dd 0014f0529h

+dd 053003a17h

+dd 003b3bb83h

+dd 00f6aecc7h

+dd 0d4503c94h

+dd 0dd2ba743h

+dd 0c977dda7h

+dd 0ed465459h

+dd 0a043ad31h

+dd 0f4015ef8h

+dd 087c96c07h

+dd 07da2fb82h

+dd 000a95b37h

+dd 027707100h

+dd 075161d64h

+dd 083942b1ah

+dd 0f6025636h

+dd 0ed73eeb0h

+dd 00ef705bch

+dd 0088c82b8h

+dd 02cf15285h

+dd 043445bf5h

+dd 017f8b855h

+dd 0de5415a8h

+dd 019f3db1ch

+dd 01ba3b3b7h

+dd 00b185e13h

+dd 0316d583fh

+dd 0262fe281h

+dd 02af0c777h

+dd 0dde0ddb8h

+dd 082d789c9h

+dd 069f46b4dh

+dd 03cf3ee79h

+dd 0c88a7496h

+dd 04e0e4c8dh

+dd 04c09447dh

+dd 0d425171eh

+dd 02c091117h

+dd 0566aad0fh

+dd 05b387140h

+dd 0cc296134h

+dd 06b4084f3h

+dd 0862187bah

+dd 0a828ff65h

+dd 03fe3e23eh

+dd 0aa1e10e5h

+dd 01963ac9fh

+dd 065902396h

+dd 08a0477ach

+dd 0c9208434h

+dd 0c3b71188h

+dd 0b0d57b59h

+dd 0e5639ae0h

+dd 08203d60eh

+dd 0ecefad55h

+dd 0d40c0363h

+dd 0470ffb4fh

+dd 0f47f97abh

+dd 051474d55h

+dd 04e687f00h

+dd 0fa9792dah

+dd 0ca540274h

+dd 099ec8a4ch

+dd 0552f4521h

+dd 039f7666ch

+dd 0b4f0e222h

+dd 09a24dfc4h

+dd 034615810h

+dd 045ce127eh

+dd 07eae94e2h

+dd 063c23e52h

+dd 0f0bcd113h

+dd 06175ca8bh

+dd 06f5f963bh

+dd 015ee06a7h

+dd 06bdf97a0h

+dd 0c51977f8h

+dd 0a2d79c84h

+dd 08caba0c9h

+dd 0f95905dah

+dd 03ab73b0ch

+dd 0f0f3ac5fh

+dd 0e93430d7h

+dd 0c250d436h

+dd 03964cad7h

+dd 01e92a9fbh

+dd 0b41e2eeah

+dd 085c3a15bh

+dd 0ac66c644h

+dd 0a8781df6h

+dd 0fed32da7h

+dd 0e802afa2h

+dd 0fb3ae4fdh

+dd 0480305c8h

+dd 0bcd973a7h

+dd 0ec015b06h

+dd 0f561cabbh

+dd 05e6d3009h

+dd 0521cdcf1h

+dd 06e08bd2ch

+dd 0fb442d2bh

+dd 0da03bdedh

+dd 020c6a97ch

+dd 0b5bb2875h

+dd 00e1cd048h

+dd 05bbc3c03h

+dd 0c9401db1h

+dd 02a1ca604h

+dd 0f7aad4c6h

+dd 0f29476fch

+dd 098830315h

+dd 065b76c11h

+dd 0ea811bb2h

+dd 06a80add0h

+dd 0a37a1c1bh

+dd 08f195cfch

+dd 0160e5837h

+dd 01d87fc28h

+dd 0397d3aaeh

+dd 049ad0d6fh

+dd 0c41d2b15h

+dd 001d50011h

+dd 09997b476h

+dd 0b6c2fd85h

+dd 0fbc580f3h

+dd 0bb28a93ch

+dd 04fab5372h

+dd 071c255d4h

+dd 06386ac75h

+dd 052e5bf26h

+dd 049b52c0ah

+dd 094cd7f55h

+dd 0c0b71609h

+dd 06e04ed52h

+dd 097e69a26h

+dd 0fdfbe297h

+dd 0c968e490h

+dd 0f860324ch

+dd 030a84617h

+dd 0a0d11577h

+dd 0612af531h

+dd 01b2a8a6ch

+dd 071e321b4h

+dd 0a5207c00h

+dd 076025037h

+dd 03b7a99b9h

+dd 0e2305bcch

+dd 0264f0c9fh

+dd 012e06af6h

+dd 03d6e34aeh

+dd 0f47177d3h

+dd 028bf6471h

+dd 07bca9d72h

+dd 078f5aa2ah

+dd 060b52f10h

+dd 0e5958185h

+dd 0f84f0809h

+dd 0b4b5b6d2h

+dd 0cd62ec86h

+dd 0b8574fa6h

+dd 0abe407f8h

+dd 01c9e6185h

+dd 0a83c5620h

+dd 0e37d0a9dh

+dd 00cc4b0d2h

+dd 0d020ff10h

+dd 012a16d23h

+dd 005a2a5ffh

+dd 0fb1a48c2h

+dd 07248f655h

+dd 012d99f8bh

+dd 05293c458h

+dd 002566852h

+dd 0847c7cfch

+dd 015834792h

+dd 07320a50dh

+dd 0243b74e0h

+dd 0655202fah

+dd 07a43dd77h

+dd 0e11fc5c4h

+dd 0bc95cd0ch

+dd 0cdc82560h

+dd 0309d712dh

+dd 0bdb7adb6h

+dd 082b4b46fh

+dd 0e6275281h

+dd 03e5a1344h

+dd 0694bf197h

+dd 0ccbe7ac2h

+dd 017845e2bh

+dd 0ec2d38b6h

+dd 0b1498bc4h

+dd 06b3de63eh

+dd 04624b4edh

+dd 0905f96d4h

+dd 0bd42f0d5h

+dd 0629c879ah

+dd 0ad7e8abfh

+dd 0afd0f98eh

+dd 09b573f58h

+dd 0d3fc0801h

+dd 04c7e3644h

+dd 02672d4f4h

+dd 06cece8a7h

+dd 06928cb97h

+dd 0faf181cch

+dd 03ee5ed7dh

+dd 0dc756360h

+dd 0fc79dc2dh

+dd 0572ca99ch

+dd 0419f04b9h

+dd 04a0cd586h

+dd 06a86c640h

+dd 0731da7ach

+dd 0e9da10b0h

+dd 095f39024h

+dd 0ee53c4f2h

+dd 0730a6776h

+dd 06547d31fh

+dd 092e78143h

+dd 034a7bcdbh

+dd 0724b18a2h

+dd 066f7f1d8h

+dd 0458e5edch

+dd 0a939d333h

+dd 0bd31e818h

+dd 0ca594ac2h

+dd 0e2689066h

+dd 056384e37h

+dd 0d45185bch

+dd 0542df6c4h

+dd 0e02485aah

+dd 0e05f9598h

+dd 046db3db0h

+dd 0df048d76h

+dd 06a1d35a2h

+dd 06650b85fh

+dd 0f2a2d155h

+dd 0787e9118h

+dd 0e33fe185h

+dd 0b4cb8d93h

+dd 006b854dfh

+dd 0396bc751h

+dd 094465503h

+dd 0d4e149d8h

+dd 0379804e9h

+dd 006897926h

+dd 0ceb87c8ah

+dd 042a4143fh

+dd 08be0c1a4h

+dd 089bb337bh

+dd 081b32b9dh

+dd 01f0cd9a7h

+dd 0e68bbb5ah

+dd 0e15428dch

+dd 018c7b57dh

+dd 0a9a719e8h

+dd 01606c2e4h

+dd 04cd0d3d2h

+dd 056488e91h

+dd 00637a90dh

+dd 0a188e12bh

+dd 02bf5d72eh

+dd 0369fc70eh

+dd 0081deba0h

+dd 01d424350h

+dd 0eb4ec772h

+dd 0a37f2b09h

+dd 03c56bd8eh

+dd 0196bea18h

+dd 0f50551e4h

+dd 0124c96a0h

+dd 0ff05569bh

+dd 0b538be85h

+dd 00398311dh

+dd 046e6c840h

+dd 01df31656h

+dd 00f878050h

+dd 071ff9bb8h

+dd 0ba0db477h

+dd 0a8b30e5ah

+dd 0889aa5aah

+dd 0820ed649h

+dd 01975a904h

+dd 01919ebabh

+dd 044d4943fh

+dd 03daa0d6bh

+dd 00225762fh

+dd 0e46ae327h

+dd 0ff2207c3h

+dd 0a8efdbf5h

+dd 0b43cfa43h

+dd 0be1cdcc8h

+dd 0dd4efa8dh

+dd 0008a78f2h

+dd 00b2c41a1h

+dd 06f980a47h

+dd 095e26790h

+dd 026dd7107h

+dd 0e390456fh

+dd 0254ddd6bh

+dd 0d91d292eh

+dd 0b83808e7h

+dd 09b1523eeh

+dd 02923db23h

+dd 088c546ffh

+dd 0f541faa7h

+dd 0983b17fbh

+dd 0461e4bc7h

+dd 01969ee98h

+dd 015c58011h

+dd 0ef7949fdh

+dd 054923a98h

+dd 09edb4eaeh

+dd 067c0d2cbh

+dd 0a6030869h

+dd 07a6ea2edh

+dd 0077370a0h

+dd 07dbbc39bh

+dd 0e353a924h

+dd 067b698f9h

+dd 0729b7a13h

+dd 07cd59604h

+dd 0d65557f3h

+dd 0a2ddf839h

+dd 0757c0935h

+dd 026ae8f36h

+dd 06fe8148eh

+dd 0786af433h

+dd 078333d88h

+dd 0bebf733fh

+dd 09d91f150h

+dd 006f83277h

+dd 0642295fdh

+dd 0a7a43d77h

+dd 0bdd78c3bh

+dd 0936d4f8ch

+dd 0f07e9f47h

+dd 04c540f7ah

+dd 04521c6eeh

+dd 0f212d0b3h

+dd 0c69b35b5h

+dd 011b42c23h

+dd 098e49989h

+dd 010c3c43eh

+dd 0de961024h

+dd 0f94866ach

+dd 084932845h

+dd 095a05b27h

+dd 046e45bdfh

+dd 0b1e1f580h

+dd 0804ce08eh

+dd 0051b97e9h

+dd 0f8842fbfh

+dd 0080220abh

+dd 0b97d114eh

+dd 06ea2f6e8h

+dd 02a93e880h

+dd 06b74df6ch

+dd 0222fa7beh

+dd 0e2c765f5h

+dd 0fd250a6eh

+dd 01e682970h

+dd 0c5acd643h

+dd 0d8afeb2fh

+dd 08dd8cf3bh

+dd 05c6a640bh

+dd 0e65e4852h

+dd 01d711b33h

+dd 0e848bfcbh

+dd 0666c0a8bh

+dd 0af09bd8ch

+dd 04ae097a1h

+dd 0943cc920h

+dd 02025b8e4h

+dd 02db16125h

+dd 044f12a3fh

+dd 0866d7ee1h

+dd 060c1d2a5h

+dd 007b821abh

+dd 086e47fb9h

+dd 0a020f34bh

+dd 07e334c88h

+dd 0a9afb7e3h

+dd 068261764h

+dd 0ffe09884h

+dd 0b5b93c79h

+dd 02a192d38h

+dd 0600f953ah

+dd 0015a696eh

+dd 0ec6b4941h

+dd 0ba7d3af8h

+dd 08e7d71cah

+dd 04e6bb0e9h

+dd 074073c90h

+dd 0e807d9a7h

+dd 03ac8cda9h

+dd 0efda7c7bh

+dd 069b7bd8eh

+dd 00fdcd087h

+dd 05946073eh

+dd 0eea10393h

+dd 055c82f1dh

+dd 023c0cca0h

+dd 038e9915ch

+dd 0f22ced89h

+dd 0c851c660h

+dd 05b235afeh

+dd 03ce25521h

+dd 0c299305fh

+dd 0c086624eh

+dd 00136cd85h

+dd 078921d73h

+dd 018311e47h

+dd 065212ea6h

+dd 07f9ae942h

+dd 053e836cch

+dd 0a366fdech

+dd 0c55682a8h

+dd 0e8839d45h

+dd 0eed11deeh

+dd 022d567ach

+dd 0c05c29b3h

+dd 0a61bd6abh

+dd 0fa60d129h

+dd 0fd0891b9h

+dd 0b447ff4bh

+dd 0f426f8a5h

+dd 076d8f148h

+dd 0bdc00fdfh

+dd 0f4134967h

+dd 073304557h

+dd 05dd9f427h

+dd 0f8d3cfcch

+dd 07fbd7220h

+dd 0b6677041h

+dd 0d8ed760eh

+dd 058cb25e9h

+dd 09fbda06ah

+dd 0c79009d4h

+dd 063cc1bb2h

+dd 05b31b595h

+dd 0f4beadb0h

+dd 04f478e25h

+dd 0b6b2ec16h

+dd 0de6cf0b9h

+dd 045a1fb37h

+dd 011a13b86h

+dd 0a253dd4ch

+dd 0af832f57h

+dd 0e8d3f6a1h

+dd 0da6e7772h

+dd 051c67fbdh

+dd 03d59669dh

+dd 0c11e1873h

+dd 0bf5955afh

+dd 04805a55ah

+dd 0c9c77a89h

+dd 0c867030fh

+dd 0213c839bh

+dd 04fe96985h

+dd 085a9c929h

+dd 05804c48fh

+dd 0ac040f4ch

+dd 0601ac532h

+dd 0ccea7916h

+dd 0714791cbh

+dd 0c8a268b8h

+dd 0395c38a7h

+dd 0dfd011e4h

+dd 0feb9a00ah

+dd 08d75acb1h

+dd 0205bc99bh

+dd 0407f323dh

+dd 0735a6b87h

+dd 012b751f6h

+dd 0859c8f0fh

+dd 0695b3c25h

+dd 03483e53ah

+dd 0f74dc73fh

+dd 07655357dh

+dd 0c8d025f2h

+dd 006ecde33h

+dd 048402227h

+dd 08dc65179h

+dd 09f022d8ah

+dd 0f6f501a7h

+dd 0de5dd25fh

+dd 0cae881fdh

+dd 09675dc3bh

+dd 0f5bebbedh

+dd 0fe8b4c19h

+dd 035414e06h

+dd 0d03523e8h

+dd 0647be5d8h

+dd 0fcd3febdh

+dd 07b4a8809h

+dd 02534e350h

+dd 0c326a685h

+dd 0962223eah

+dd 0b367b565h

+dd 035db1ce9h

+dd 02be2d46ah

+dd 09d1b1cc7h

+dd 09a8ee37bh

+dd 024a7ca72h

+dd 0981e794ch

+dd 07a7ef5ech

+dd 08d62005bh

+dd 0ce64efceh

+dd 0cbf3868ah

+dd 05c20ef63h

+dd 0483ff3c6h

+dd 0c93148f7h

+dd 015edea6ch

+dd 05753dc82h

+dd 030f52e7eh

+dd 0fb113f83h

+dd 0294e925fh

+dd 0365e57ffh

+dd 0e7cdb7f7h

+dd 0f2177792h

+dd 0d3094660h

+dd 077f587afh

+dd 0535d9380h

+dd 02115522fh

+dd 052e56d15h

+dd 065a3ada9h

+dd 01d4999fdh

+dd 06d92a8f7h

+dd 061c8d189h

+dd 09bdd543fh

+dd 0609e207ch

+dd 0f602eb03h

+dd 0731a0753h

+dd 0052db0a0h

+dd 09929111eh

+dd 0fb29b640h

+dd 0346c12fah

+dd 06bd0e2b3h

+dd 03afaf543h

+dd 08a2be82ah

+dd 0b5c18f15h

+dd 0fc87c33fh

+dd 03a9d9f55h

+dd 072cf4a9eh

+dd 091b3a324h

+dd 09a58aa71h

+dd 00d69d708h

+dd 0e96888d1h

+dd 0195fddb5h

+dd 064a74948h

+dd 0a0c0a7cah

+dd 0ca31a0c1h

+dd 018505568h

+dd 0451666bch

+dd 0cd279da9h

+dd 0f869c15dh

+dd 07232b4cah

+dd 094b772dfh

+dd 0c572d90dh

+dd 0bf349b9dh

+dd 0b35e1d35h

+dd 0e04fa5aah

+dd 04bcb9844h

+dd 07b1f6c18h

+dd 0cce5e903h

+dd 0a3797715h

+dd 08f7b0d5ch

+dd 0236ae138h

+dd 09f9a0bd8h

+dd 0f3be2d80h

+dd 020f61568h

+dd 05ac78927h

+dd 01391f810h

+dd 073b80e7fh

+dd 0009647dbh

+dd 0826d21eah

+dd 010662a4eh

+dd 0ae437ecbh

+dd 0332fea4ch

+dd 081711d8fh

+dd 091cf218dh

+dd 041c4e0aah

+dd 0fb02d007h

+dd 084276a5ch

+dd 0b3722b77h

+dd 0f20f8eaeh

+dd 030037020h

+dd 0f6ce21d9h

+dd 059fd45aah

+dd 0c6ad8f28h

+dd 0611d789ah

+dd 020368fbah

+dd 0ecc3d186h

+dd 031350ebbh

+dd 0ccf45e1bh

+dd 0988d6ec7h

+dd 0255a2f66h

+dd 00d4b88e4h

+dd 0eadbb2a3h

+dd 0c78d1ca3h

+dd 01b4b51cbh

+dd 0008fa6aeh

+dd 0a47ef3e0h

+dd 0fd274ed0h

+dd 03bca4f65h

+dd 0d88b5b47h

+dd 0b63f3107h

+dd 083653318h

+dd 0246db8d2h

+dd 0a43b567ch

+dd 0df8c1d76h

+dd 0bbc2ccafh

+dd 03a2b0cceh

+dd 0ea21ba46h

+dd 051589ad0h

+dd 07bdf3ad6h

+dd 0ef0a5805h

+dd 076c23d9ah

+dd 06c65ea57h

+dd 0c0fb5fa8h

+dd 093b549abh

+dd 07c7d445ah

+dd 0c262fc70h

+dd 095a633c9h

+dd 04ba1071fh

+dd 03fc9c197h

+dd 08f781498h

+dd 0fea301fch

+dd 02ab977a6h

+dd 03119ba74h

+dd 0894a2058h

+dd 03fd761f0h

+dd 008af9276h

+dd 065b9547ah

+dd 0cf372f7ch

+dd 051404124h

+dd 0e458da5ch

+dd 001e3ceabh

+dd 09e72c9b4h

+dd 03010c2ebh

+dd 0900eee2fh

+dd 076e8538ah

+dd 04bd32162h

+dd 0d5fce0c1h

+dd 0b3c994e7h

+dd 09ee3676ch

+dd 0e1984781h

+dd 04856ede0h

+dd 0645fa0deh

+dd 064babd91h

+dd 00d1b947eh

+dd 036057399h

+dd 071120795h

+dd 0297af4b6h

+dd 011983790h

+dd 0b86e8982h

+dd 0e5c17305h

+dd 05cb1266bh

+dd 05f82be03h

+dd 0bf66da08h

+dd 06c028d55h

+dd 0091ed50dh

+dd 04d4866d8h

+dd 0a3b534e3h

+dd 00a66e9eeh

+dd 0e31ede89h

+dd 0cb541412h

+dd 0d7eda672h

+dd 03f0ed448h

+dd 0110d791fh

+dd 004f3ca60h

+dd 042a5e8f1h

+dd 061a51eb7h

+dd 0ed5e10a1h

+dd 0218bc348h

+dd 056a3bb26h

+dd 09ada920bh

+dd 038e6408ah

+dd 0c38d67a5h

+dd 0557353adh

+dd 0de0a9ee9h

+dd 05fb60ecch

+dd 0e55dfadfh

+dd 0e7b1e43bh

+dd 0184286f6h

+dd 065e0b403h

+dd 06677844eh

+dd 0d7cc2446h

+dd 04b6ce48ch

+dd 02dc1b470h

+dd 0753707aeh

+dd 04ff7fa77h

+dd 0f4112a67h

+dd 017f4d5e9h

+dd 021142660h

+dd 047f70714h

+dd 087e690b4h

+dd 0e07c7176h

+dd 042c3eb33h

+dd 0bf30867dh

+dd 0ab65a435h

+dd 0324ede73h

+dd 02c49f191h

+dd 05bad32f6h

+dd 0881df069h

+dd 0d216c31ch

+dd 0ddea5edeh

+dd 093fc4960h

+dd 0c5c49f57h

+dd 038d163d5h

+dd 00017eb2ch

+dd 0ab43505dh

+dd 02e7f91ceh

+dd 07b3076e7h

+dd 07a1eb7b7h

+dd 0029cfe8eh

+dd 0599142aah

+dd 0aefbc86ch

+dd 0100f926dh

+dd 009ab8c09h

+dd 0f3f8c47ah

+dd 02c96e550h

+dd 0da8d9459h

+dd 0f805443fh

+dd 055852fb3h

+dd 0b27dc429h

+dd 072b43a37h

+dd 0961164d0h

+dd 0df7fad05h

+dd 0f710bd4eh

+dd 0c12eb542h

+dd 0c2c82850h

+dd 0d1c003cah

+dd 0c1c8ed14h

+dd 05cbc56c8h

+dd 027e9add7h

+dd 0639e7aafh

+dd 081ed20f1h

+dd 026458482h

+dd 09fd6fa93h

+dd 09699f297h

+dd 0cde6b41dh

+dd 0bb520a4dh

+dd 0ec6f71eah

+dd 0bb2de175h

+dd 0a4cdc36bh

+dd 05563d58dh

+dd 051765881h

+dd 0c86bf116h

+dd 0ad664f17h

+dd 0593442f7h

+dd 01ed69c05h

+dd 0a37ee6b9h

+dd 0fb0dc5e4h

+dd 008fb3de8h

+dd 05bc4b0c5h

+dd 0918c8b14h

+dd 0f781bc2ah

+dd 04e697870h

+dd 0a571ba14h

+dd 05373a2a4h

+dd 0e36ec808h

+dd 0d5024164h

+dd 0ebeafbe8h

+dd 0a64fc67ah

+dd 00635472ch

+dd 087814639h

+dd 03172699ch

+dd 022be96b5h

+dd 05d2d03a9h

+dd 0cec6ce8dh

+dd 0b99c3472h

+dd 0bdd59405h

+dd 03a814b62h

+dd 09dbc0c62h

+dd 03c9b3cbch

+dd 0e70cf7c8h

+dd 0269054a7h

+dd 06444e272h

+dd 03e46a539h

+dd 0db100d37h

+dd 0c7497248h

+dd 09a6d74f4h

+dd 06f0e0d53h

+dd 0dfa5f1deh

+dd 024e007eeh

+dd 062f66129h

+dd 07e915ab5h

+dd 0e4ef25f0h

+dd 005fe020dh

+dd 01e7ddaf6h

+dd 03bfc0be9h

+dd 0bdf2c097h

+dd 06b109e84h

+dd 004e71314h

+dd 06a8d6c71h

+dd 0b5885235h

+dd 02c2d87d0h

+dd 0144b053ch

+dd 094e75089h

+dd 03829321dh

+dd 0b3753609h

+dd 072849db6h

+dd 03b1e44ceh

+dd 088c584a1h

+dd 0d3516193h

+dd 088ebf573h

+dd 03dce5e17h

+dd 0cff2bfdch

+dd 06b07b650h

+dd 022cc8ebch

+dd 0ead2f119h

+dd 01ade7f84h

+dd 03065ec75h

+dd 0124d2b33h

+dd 00dda6c3dh

+dd 01293c9c0h

+dd 0598f57c7h

+dd 08de8f7f8h

+dd 0a76d99d6h

+dd 065c48395h

+dd 03f759540h

+dd 08017c035h

+dd 0bf546521h

+dd 06b4d74a2h

+dd 03bf0f2eeh

+dd 08afa405bh

+dd 09c9a7e02h

+dd 0250b0addh

+dd 0028fbee3h

+dd 0dfba8dddh

+dd 0d78b0b65h

+dd 02f704f93h

+dd 00d141683h

+dd 0552bf0c6h

+dd 00d045bb8h

+dd 03c81859ah

+dd 0fff5e5b6h

+dd 04df26d63h

+dd 0216d95fbh

+dd 05dfa9f22h

+dd 02af103b9h

+dd 0a1105569h

+dd 0ea92ee17h

+dd 081ddef2eh

+dd 0ae86a467h

+dd 0dbe0490fh

+dd 0bbfb93b1h

+dd 031eb10b7h

+dd 0210f6492h

+dd 032c709d8h

+dd 06cbdb26ch

+dd 03b6df21bh

+dd 007c5a461h

+dd 03411cf8ah

+dd 04bc0f691h

+dd 0789f8a1ah

+dd 0063598fdh

+dd 017cddb62h

+dd 089a50175h

+dd 08caf6d5eh

+dd 027856f54h

+dd 0d165557ah

+dd 00f35ad16h

+dd 004dd0e27h

+dd 0fb06d811h

+dd 0ab9f083ch

+dd 060b674d9h

+dd 03aafbd4dh

+dd 0ddadeb77h

+dd 06bc8231ch

+dd 057b8ad29h

+dd 0dc6b8b50h

+dd 0cb8f6962h

+dd 08ab94f35h

+dd 04d4c84c8h

+dd 071b5a5c4h

+dd 03ecf23f3h

+dd 091a552e1h

+dd 079ad9db4h

+dd 07647661eh

+dd 08b8e5f99h

+dd 067b4ae6eh

+dd 005493ae9h

+dd 045077f5dh

+dd 0893e3a21h

+dd 0264dd691h

+dd 0a3fd663ah

+dd 03fda3a92h

+dd 07416cd36h

+dd 06a9b53e2h

+dd 03afbd006h

+dd 085e017ffh

+dd 007240975h

+dd 0e4a48a70h

+dd 0bec217f0h

+dd 04a64f264h

+dd 075eb9671h

+dd 01d5ff818h

+dd 06583af96h

+dd 0dbedda7ah

+dd 05fdc8967h

+dd 0b3a688d6h

+dd 0e4a119c3h

+dd 098f3a34ah

+dd 0c73663a1h

+dd 0793ff96ah

+dd 0457e4cefh

+dd 0e69d1633h

+dd 0e358528bh

+dd 058da431dh

+dd 065216ca7h

+dd 0a452f978h

+dd 0eda2a154h

+dd 0c0426dcch

+dd 0db12f489h

+dd 02a11a34ch

+dd 0fa26f397h

+dd 06abc971eh

+dd 09ea225f6h

+dd 0580a36adh

+dd 0aa076f08h

+dd 0be60760fh

+dd 043aff2dbh

+dd 0589a301ah

+dd 0f2e7fc08h

+dd 04f29de9ah

+dd 063b7ccd1h

+dd 097329f14h

+dd 02c78421ch

+dd 0c381e15fh

+dd 0ca68ff10h

+dd 03479c07ah

+dd 068962469h

+dd 090d9b5e2h

+dd 0dc52dc5ah

+dd 0d61c68dch

+dd 0cfe71023h

+dd 088cbbeb0h

+dd 007fd409ch

+dd 0229a1d35h

+dd 01e285b07h

+dd 03f27ba04h

+dd 09e738688h

+dd 07c99a5b9h

+dd 08d2b977bh

+dd 0a3840fb8h

+dd 099aefa1ah

+dd 01dfea0b8h

+dd 02aca5196h

+dd 058927e94h

+dd 0ae82bfabh

+dd 0222fc00ah

+dd 0d1e525e3h

+dd 00a3198e6h

+dd 05e681be8h

+dd 0c4f0c149h

+dd 0232c5e78h

+dd 0ce9c9c24h

+dd 04a956830h

+dd 06de4bd6ch

+dd 03e200562h

+dd 0cb8793a5h

+dd 0dc338a08h

+dd 086f962a7h

+dd 0bc65cf5ch

+dd 040e25f03h

+dd 092e5f82fh

+dd 0a61ed400h

+dd 0a811f061h

+dd 0c88d5382h

+dd 0d2634d1fh

+dd 082b5e0d4h

+dd 088f7f0abh

+dd 0e18b17e5h

+dd 0e6c274ceh

+dd 0d66a9f6bh

+dd 047d665deh

+dd 0d400e7e3h

+dd 02bfc9b16h

+dd 0b6393b9ch

+dd 097d7d31ch

+dd 0ae94e2c8h

+dd 0f001b0b6h

+dd 07487fee9h

+dd 0ddde32e0h

+dd 0ec13489eh

+dd 08ef74527h

+dd 0fe85199ch

+dd 04b60da2eh

+dd 038b516d8h

+dd 090b8160ch

+dd 0198212bch

+dd 02b12769eh

+dd 0361c1d8fh

+dd 0af5e279ah

+dd 081cb5631h

+dd 0a02d6b0fh

+dd 05e29a283h

+dd 06af6c9a7h

+dd 01ba5f698h

+dd 06bda2a41h

+dd 0ce4c6760h

+dd 0dd26e50ah

+dd 07da68c73h

+dd 0932179f0h

+dd 0c236645bh

+dd 0fc604094h

+dd 0ed9e8905h

+dd 0754ad663h

+dd 055216b0ch

+dd 0af1f35a2h

+dd 01e8f5163h

+dd 027bb2e57h

+dd 05005d142h

+dd 033ded6f5h

+dd 02ebe920dh

+dd 05916c60fh

+dd 01ff01c89h

+dd 0048c7080h

+dd 03bf397b6h

+dd 0fd0b8268h

+dd 02fd9e5c3h

+dd 0439065b6h

+dd 044652ba5h

+dd 02a566cafh

+dd 0d5a751b2h

+dd 055c89014h

+dd 080da767eh

+dd 0aa5e9e0fh

+dd 05e78b3c7h

+dd 01465e8b5h

+dd 070510965h

+dd 019ea25d1h

+dd 02b85a96fh

+dd 06f39514fh

+dd 06a0d9517h

+dd 08fe289e3h

+dd 0562b1470h

+dd 0769abd5ah

+dd 0d74fcf66h

+dd 061588c3eh

+dd 0e44bb6c9h

+dd 089ef9963h

+dd 0ec445c2ch

+dd 068ba9690h

+dd 0458209a1h

+dd 01dc642b0h

+dd 0985c9c00h

+dd 0d9ae4fefh

+dd 04da6a67fh

+dd 07fa48817h

+dd 0ba946565h

+dd 05b707f42h

+dd 01f104ea8h

+dd 01b25b71bh

+dd 04a5a3bf9h

+dd 03189d4a5h

+dd 0b12b8c24h

+dd 0dd01310dh

+dd 0a60e4476h

+dd 0e02a9018h

+dd 00af488c0h

+dd 0ec0b84f4h

+dd 062e9bbc0h

+dd 09ea883d6h

+dd 0dd379c46h

+dd 054f34ea0h

+dd 0030e7b27h

+dd 071ecea5eh

+dd 02e8e14bah

+dd 00e0eb990h

+dd 0752fead9h

+dd 01eb48d05h

+dd 0aad0f2b9h

+dd 043f93749h

+dd 0532b4289h

+dd 01525e206h

+dd 07f640aa7h

+dd 0a84a0561h

+dd 0f9329d98h

+dd 09c2164d4h

+dd 0cf79738fh

+dd 0049a5ca7h

+dd 09785506eh

+dd 0245ee14ah

+dd 0cb625db1h

+dd 06e3e952ch

+dd 0dc9dd0a9h

+dd 0268bb02dh

+dd 0c08ca499h

+dd 0f6d5cccch

+dd 0f2c2304eh

+dd 0ffa05e7ch

+dd 0c50073f8h

+dd 08bd77921h

+dd 09f3b1368h

+dd 08ce25c88h

+dd 078883d61h

+dd 04f49ec71h

+dd 0c1e392adh

+dd 0e3323031h

+dd 07e4bb0a2h

+dd 05059bc26h

+dd 0fc29c8e7h

+dd 09169e0c5h

+dd 0116eb9fdh

+dd 0251c50eeh

+dd 073d18b7ch

+dd 06bb982e5h

+dd 07a91df57h

+dd 03a6b29cfh

+dd 0d972dad6h

+dd 0cd9ca135h

+dd 0e69d8d15h

+dd 013f94a43h

+dd 0f5d827c4h

+dd 0e7019ffch

+dd 0bbf087a0h

+dd 09ae0032bh

+dd 07630701dh

+dd 06ad77a92h

+dd 0cb066b04h

+dd 07f494dcch

+dd 013c0310ah

+dd 002eed4b2h

+dd 0ff95adcbh

+dd 02a83f5a4h

+dd 01d3c0c99h

+dd 088aa9ca4h

+dd 06cd3b8e8h

+dd 014c9a0fbh

+dd 00e0338e3h

+dd 0acfb9da8h

+dd 01f7bae2bh

+dd 0acd60ba8h

+dd 0c8276cbch

+dd 0af3ee01eh

+dd 0b6d63b0dh

+dd 0d0eb3055h

+dd 07d660ddbh

+dd 06edbc7b4h

+dd 0079a7e8ch

+dd 0e98fb8e8h

+dd 08a4c94bah

+dd 02fdb53d5h

+dd 0047d7e88h

+dd 074676fc8h

+dd 0343e85a1h

+dd 0d569e1b5h

+dd 03fd6c4d0h

+dd 094ba5c15h

+dd 0d4e76622h

+dd 00c037430h

+dd 0839e1458h

+dd 091274db5h

+dd 04245d2d6h

+dd 011ae93e0h

+dd 00d6e21e3h

+dd 014d984c2h

+dd 0b3f3cf56h

+dd 0a462cd40h

+dd 09118664eh

+dd 00252afb9h

+dd 00f9d0c45h

+dd 0ff709a42h

+dd 04d725db7h

+dd 00ef4c659h

+dd 066c9c1adh

+dd 0bf9981a0h

+dd 004758723h

+dd 012c23db3h

+dd 0a9632f6bh

+dd 082273da1h

+dd 049801675h

+dd 0a4b8f3a7h

+dd 0409e0e1dh

+dd 0f4d2acf8h

+dd 0e0f42ecah

+dd 08cbed265h

+dd 056f0d2b8h

+dd 078562ee9h

+dd 0eff8df72h

+dd 0786c3f95h

+dd 0b34f1ed4h

+dd 07468b74fh

+dd 07f6a0006h

+dd 05cbbc2e0h

+dd 0ddc288e8h

+dd 0074b1548h

+dd 058897df2h

+dd 001b1e388h

+dd 0a3ba7220h

+dd 04ee90d19h

+dd 09cbe74dch

+dd 0827b52fch

+dd 00a3fd39bh

+dd 0564c1e72h

+dd 0768f57ach

+dd 0164bc2a6h

+dd 0a649350ch

+dd 07778030fh

+dd 095e59b18h

+dd 0ed2057e3h

+dd 01f27a560h

+dd 0e7e9177ch

+dd 0f51f3e55h

+dd 00600c818h

+dd 031ab06d3h

+dd 058219293h

+dd 0f67edf48h

+dd 0e7de3cbch

+dd 0937b7e2eh

+dd 0ac51546fh

+dd 06eee24a2h

+dd 06a5d9bdeh

+dd 0d5a1e968h

+dd 05912d524h

+dd 098244e82h

+dd 06622b107h

+dd 0d961b1dah

+dd 04bb1932dh

+dd 01ec47a08h

+dd 0ac8460f6h

+dd 000d0586eh

+dd 028a737dfh

+dd 0d8dfc8a7h

+dd 0484d7a95h

+dd 0fa9a650dh

+dd 0c13c6e94h

+dd 03c400bdbh

+dd 07a10143ch

+dd 0f42b450ch

+dd 047d1b577h

+dd 0f51f6004h

+dd 0e3f630c8h

+dd 021ed2e17h

+dd 014974898h

+dd 0cca8fd63h

+dd 0a718da40h

+dd 05c0b0068h

+dd 05602e294h

+dd 0bd2b1625h

+dd 05b4adabeh

+dd 016250c17h

+dd 08f0563eah

+dd 021729da1h

+dd 0a8da61edh

+dd 0521b0357h

+dd 0804ab638h

+dd 0444f9b71h

+dd 0bfb4d986h

+dd 0a2b4f343h

+dd 068c19578h

+dd 02c23c613h

+dd 0d513a680h

+dd 0cfd3aa01h

+dd 001772257h

+dd 06d9aa086h

+dd 056961dbch

+dd 0234b4bafh

+dd 0032ce314h

+dd 03a05e204h

+dd 0d43d7e81h

+dd 026165df0h

+dd 0694f0070h

+dd 078ce60bch

+dd 01249223dh

+dd 0d0a02f96h

+dd 0ef18b417h

+dd 0b398d8f9h

+dd 08424f984h

+dd 0dc854e41h

+dd 0571e4124h

+dd 0ac96e6cch

+dd 01964a93dh

+dd 052e4da8ah

+dd 0d8a563b0h

+dd 0a58c18dfh

+dd 02bbff6c9h

+dd 0bc87dba1h

+dd 0a4614029h

+dd 08b54ef92h

+dd 0ff984560h

+dd 0c202c26dh

+dd 0829be188h

+dd 0778ae5bfh

+dd 02e433319h

+dd 0bc425735h

+dd 0c87dbfb9h

+dd 0dadda5f5h

+dd 00a21ab16h

+dd 0cda7ad16h

+dd 07fc3abfdh

+dd 0f141b8d5h

+dd 0e6826271h

+dd 0edd06d64h

+dd 05edfc0f9h

+dd 065943b98h

+dd 007a53a85h

+dd 0aba856e7h

+dd 04f28cfa4h

+dd 019b13580h

+dd 0ae76325ch

+dd 046542af0h

+dd 0b3f5c8fdh

+dd 0a53ea4e2h

+dd 0f0142f47h

+dd 0fe74a2dah

+dd 01a95c796h

+dd 0faf0f7f3h

+dd 0f9635a46h

+dd 0c9d8a3d5h

+dd 0eac39155h

+dd 04b145554h

+dd 0cc82a617h

+dd 0ca31217ch

+dd 0b76e61c7h

+dd 0e62bf36bh

+dd 0a0604c65h

+dd 0886f25abh

+dd 0be284e01h

+dd 050967aa8h

+dd 063b93202h

+dd 0b80475f8h

+dd 0d5f58782h

+dd 05ea2ff89h

+dd 09ef82e29h

+dd 09e9cbae2h

+dd 0ed1092eeh

+dd 017dc4693h

+dd 02761f2bbh

+dd 0b62e863fh

+dd 0f75bf4deh

+dd 0f8e1906dh

+dd 0fc9c2257h

+dd 01cab95d0h

+dd 0cd77d9cdh

+dd 007d6f341h

+dd 0a58e0b8eh

+dd 0fbace66bh

+dd 0aa38c9a6h

+dd 06fc4ae5eh

+dd 0335e617bh

+dd 098c12983h

+dd 00d58f517h

+dd 0277b67d7h

+dd 0baa0cd3ch

+dd 05c49e72ch

+dd 09a1365e6h

+dd 00aea4036h

+dd 0cb5ddc9fh

+dd 03b4b4c10h

+dd 01de32ebfh

+dd 0c54dbda3h

+dd 03edbba6ch

+dd 04d7d5374h

+dd 066a6b5cfh

+dd 0297aed7eh

+dd 034243309h

+dd 018719001h

+dd 0deb8affeh

+dd 087ca9325h

+dd 073617157h

+dd 0edde145ch

+dd 02876a346h

+dd 02a6ce8f5h

+dd 09393e7c1h

+dd 0ecfe6926h

+dd 0ef147893h

+dd 0b1396bdch

+dd 00307fe73h

+dd 070b8f022h

+dd 098aabb22h

+dd 0b27d0d43h

+dd 0bd5bc93ah

+dd 0da1be74dh

+dd 00cc1fd28h

+dd 09a9f28d2h

+dd 04e72ea4bh

+dd 027e417d5h

+dd 0c6df4c10h

+dd 092b59d54h

+dd 0f7cb8c39h

+dd 0c0a6eca8h

+dd 02eeb4df3h

+dd 082c99eeah

+dd 0c525e774h

+dd 0bdc53518h

+dd 055ba4d59h

+dd 0a2de9d16h

+dd 022a21412h

+dd 0646eaab1h

+dd 0bf0e7554h

+dd 030d9cdf7h

+dd 0e333b927h

+dd 0cbb7b8d2h

+dd 076f27974h

+dd 04105371eh

+dd 05a2f3c88h

+dd 022d5b5dfh

+dd 0d1fc450ch

+dd 0556bda35h

+dd 0667b676bh

+dd 09364e51dh

+dd 0d62c53b8h

+dd 0186d948ah

+dd 013bafbc4h

+dd 04f53a406h

+dd 07a21ed41h

+dd 01ca415e8h

+dd 005f229abh

+dd 0ec76286ch

+dd 0a2c18921h

+dd 0d3c3a0deh

+dd 044d73544h

+dd 0576e8b86h

+dd 0c06d46abh

+dd 0b9dded90h

+dd 015aaca42h

+dd 02d2894fah

+dd 0a1d342f6h

+dd 0fface671h

+dd 0c9908637h

+dd 06ebf5345h

+dd 0a484b0e2h

+dd 05e165abeh

+dd 0625aac89h

+dd 0d26ec4c0h

+dd 01f66d696h

+dd 07221c646h

+dd 032059030h

+dd 0a06019fbh

+dd 0fb9803fah

+dd 0f6b3d13bh

+dd 0c00779bah

+dd 0c5e97f0eh

+dd 030b2f792h

+dd 0c9a6f23bh

+dd 02d004e9bh

+dd 0f19bd61dh

+dd 0410fe6c7h

+dd 0c1a9443ch

+dd 095c019f1h

+dd 03d033a44h

+dd 0a5cb100dh

+dd 0017a47f5h

+dd 00acad805h

+dd 0136e2dc8h

+dd 09e7948fdh

+dd 05bb96ca1h

+dd 009508760h

+dd 0f88c059eh

+dd 0292fffc3h

+dd 0e2509484h

+dd 08fa78f37h

+dd 08295b68fh

+dd 0d055890bh

+dd 03636527eh

+dd 092ee0595h

+dd 0c291fb9dh

+dd 0765b41dbh

+dd 01e0b5d04h

+dd 0eb5874fdh

+dd 0f2eed2a6h

+dd 07171c2a8h

+dd 023dcd7f6h

+dd 0cc2eb7d2h

+dd 0c9bf44f7h

+dd 0dc343b69h

+dd 0dfc4023bh

+dd 093ee27e1h

+dd 019ce8e1bh

+dd 0e7f32d84h

+dd 0310c3545h

+dd 089fb107eh

+dd 007786e1ch

+dd 0369547d0h

+dd 099c4055ah

+dd 0815a3d21h

+dd 0ea09a5afh

+dd 0d75c9f75h

+dd 014df723eh

+dd 07b904d4ch

+dd 0d252d1b1h

+dd 05da633f1h

+dd 053920c7ah

+dd 08bcef58ah

+dd 00dbe0a8ah

+dd 08a6c3cd4h

+dd 07d63838dh

+dd 07802879dh

+dd 0370a88e0h

+dd 0972c138eh

+dd 037fc6e91h

+dd 02b84c7e4h

+dd 019487257h

+dd 0c9207133h

+dd 0b7253f6ch

+dd 0f62888c7h

+dd 04cfffd55h

+dd 04363416eh

+dd 03e5f1500h

+dd 066e2227ah

+dd 06527b377h

+dd 05bfb635ah

+dd 0ede15cf6h

+dd 0e7a266f8h

+dd 07c397aceh

+dd 06a6a0f7dh

+dd 03fcca028h

+dd 0a1cdf309h

+dd 00dcaa6b0h

+dd 05e7b0ea7h

+dd 0bb4a9f93h

+dd 0c4e6660fh

+dd 013fd947ch

+dd 0d00faca2h

+dd 055c648feh

+dd 050b22bach

+dd 022d76e2fh

+dd 01ba10a22h

+dd 0fb0b0323h

+dd 0eff3db5eh

+dd 0023d4e86h

+dd 0f91d8193h

+dd 0243466feh

+dd 07b4d9fedh

+dd 05a0982e8h

+dd 04be30194h

+dd 0e82e0b2eh

+dd 0110d3170h

+dd 07aafb52eh

+dd 06e29be10h

+dd 0adf636a9h

+dd 08e1d8569h

+dd 0670aaf03h

+dd 0fc303b14h

+dd 09922171fh

+dd 0857ddd93h

+dd 0b292cc7eh

+dd 0d80a5480h

+dd 003af99c7h

+dd 0d18bf133h

+dd 09a025c56h

+dd 07ebd96a6h

+dd 0cfc3d976h

+dd 0a7f85749h

+dd 00842ce96h

+dd 06b4ceb96h

+dd 054ad9a6bh

+dd 08ff4eae3h

+dd 068a21f4bh

+dd 018c92718h

+dd 0aef9e163h

+dd 0aa44362ch

+dd 06afc834ch

+dd 0c318d844h

+dd 0f4a1b6eeh

+dd 093858d74h

+dd 008d83515h

+dd 02c53e65ah

+dd 093094c8ch

+dd 06ac66bb9h

+dd 0c4253c7dh

+dd 039a63f4dh

+dd 0e8a6f1b0h

+dd 06901c8fbh

+dd 05a1fa1c0h

+dd 0be0dc99ah

+dd 0600fb6a4h

+dd 06ee8f97eh

+dd 02fa38aa0h

+dd 0dd3533a4h

+dd 0daf643bah

+dd 057fedcd7h

+dd 0d3da6730h

+dd 038a20df4h

+dd 008af1509h

+dd 02a66f38ch

+dd 0b5c331afh

+dd 02bdf2449h

+dd 0694edea9h

+dd 07001878eh

+dd 0e5fb535bh

+dd 067aaf720h

+dd 05d643a5eh

+dd 02673c476h

+dd 05100e9f6h

+dd 0cbbd9fe5h

+dd 079787e17h

+dd 02b507a1ch

+dd 01fefe993h

+dd 08bc805b4h

+dd 054e3af88h

+dd 037185cefh

+dd 0cd68fccfh

+dd 012da8533h

+dd 015181a9dh

+dd 00d9a3ec1h

+dd 0214c4bd5h

+dd 04f665527h

+dd 0d07162e6h

+dd 0e8cb5f2ah

+dd 083648854h

+dd 0fc5bd72bh

+dd 0bf560579h

+dd 0def183e7h

+dd 069911780h

+dd 0d7aebc22h

+dd 00c2ff7feh

+dd 0eb0a61e7h

+dd 09ad38904h

+dd 081505edah

+dd 06bd369f4h

+dd 0a9ad1191h

+dd 0ecff71bah

+dd 04bb19c88h

+dd 0d1555c02h

+dd 0b11def27h

+dd 085e69920h

+dd 0b880f292h

+dd 0545b3f3eh

+dd 01956d738h

+dd 01da5064fh

+dd 0c38ec3deh

+dd 024f32c93h

+dd 07ffd5e3ah

+dd 08cc399b7h

+dd 0b962db24h

+dd 048faa727h

+dd 05ef30846h

+dd 002c2dc60h

+dd 015d77b36h

+dd 0c21e5d92h

+dd 0e3fabbe9h

+dd 0171d9754h

+dd 0a755c2eeh

+dd 0c8e839e2h

+dd 0d5e62ecch

+dd 045f598d9h

+dd 098ab7ff1h

+dd 0a80353e1h

+dd 0391b85c9h

+dd 097aa7dbbh

+dd 0ca2ccd3fh

+dd 0918115abh

+dd 0f8fe4492h

+dd 0fe34fe1bh

+dd 00ae2c033h

+dd 03f6e6122h

+dd 0716e3bd3h

+dd 0128247d4h

+dd 03e6c8747h

+dd 08a613b44h

+dd 0cff34c90h

+dd 0facd7621h

+dd 0ecd773f7h

+dd 094ea79fah

+dd 03a5fbd79h

+dd 0ca8193aeh

+dd 088394a0bh

+dd 030f2d651h

+dd 0724260beh

+dd 04d267e89h

+dd 0192b8cfch

+dd 062cc66e9h

+dd 01758102fh

+dd 03f0513a2h

+dd 041441ef2h

+dd 0d662f4afh

+dd 0ab178fbdh

+dd 0e08c10c4h

+dd 08ed0dec1h

+dd 01f6a4392h

+dd 002a95d30h

+dd 08777f650h

+dd 08601395ch

+dd 0b4f6d8c8h

+dd 03128da12h

+dd 0f77eb4d0h

+dd 0386bbe75h

+dd 0c7464c9eh

+dd 0a87ebee6h

+dd 0971b5ff2h

+dd 072f2c0c7h

+dd 0832209b7h

+dd 007d09bd1h

+dd 037dc405dh

+dd 0a94c94efh

+dd 065b1a7fdh

+dd 0c603c88ah

+dd 0c913be8bh

+dd 0b7e41b9eh

+dd 03fd882b2h

+dd 0e67e709dh

+dd 01fdae0c2h

+dd 098a9ce65h

+dd 049147909h

+dd 08504a780h

+dd 0d98c4170h

+dd 0fdb04626h

+dd 06bb655d1h

+dd 0aecd5c38h

+dd 040bc5226h

+dd 0db45e89dh

+dd 0c1901197h

+dd 062da0138h

+dd 0487f35dbh

+dd 0ac68d1c9h

+dd 0247c53e4h

+dd 0f1ff8aa3h

+dd 033e11332h

+dd 0f9bf7312h

+dd 004fc5d44h

+dd 00c7763b2h

+dd 07619f813h

+dd 02da97f53h

+dd 05e2c5036h

+dd 083c08c2fh

+dd 01f6bb78ch

+dd 0f0a6a8efh

+dd 0e431927eh

+dd 071f0f7b8h

+dd 08a00a464h

+dd 090e93101h

+dd 096ecd688h

+dd 0b8fe2151h

+dd 0a97c5a44h

+dd 05ca5ad07h

+dd 01ffb9fb8h

+dd 0e60e295bh

+dd 022b9cac3h

+dd 030d37ffah

+dd 0928b2bach

+dd 00e4f8262h

+dd 00596c6eeh

+dd 0309fd1ebh

+dd 0b5480c57h

+dd 0976fb136h

+dd 06873cfddh

+dd 0996e86c3h

+dd 06bc188d5h

+dd 0af5c00d4h

+dd 03d5c7e8ah

+dd 009ca60efh

+dd 0bd2325c5h

+dd 0afe2bf47h

+dd 07fcd46c3h

+dd 0b87e9f7fh

+dd 0742522fch

+dd 02308c2fah

+dd 0e7a23b58h

+dd 0c0c655c4h

+dd 0950db52ah

+dd 06fc8588bh

+dd 0682caa9bh

+dd 07ca15d13h

+dd 0879f5e84h

+dd 00f509989h

+dd 013c0d4c6h

+dd 03f51be01h

+dd 0839093a1h

+dd 07c58b555h

+dd 008d1f806h

+dd 071a8d87dh

+dd 04cd68181h

+dd 0387469e8h

+dd 0fc99db15h

+dd 00a7f4295h

+dd 029e1180bh

+dd 0cff73008h

+dd 0317e8a3fh

+dd 0c94b4e51h

+dd 0f35d116ah

+dd 08f2c1534h

+dd 026c9b8e3h

+dd 0914d808bh

+dd 076b7f07dh

+dd 07ea0de24h

+dd 0f6a8181ah

+dd 064b29333h

+dd 03633cbedh

+dd 084be5b3bh

+dd 0eb6535e5h

+dd 09293b294h

+dd 09868cd31h

+dd 02987a96dh

+dd 0979cacb0h

+dd 0f363bdf1h

+dd 05cd46416h

+dd 09a27f782h

+dd 097e70e37h

+dd 09ba78046h

+dd 0cba22717h

+dd 092afe61ch

+dd 021f0c997h

+dd 03de86221h

+dd 0fe7c2966h

+dd 069db6a63h

+dd 0c54bca2ah

+dd 04e8f0154h

+dd 03ed8c33dh

+dd 0661079f1h

+dd 09aad5421h

+dd 095532191h

+dd 0f3284386h

+dd 0182c548dh

+dd 02d3f418fh

+dd 00d0a8077h

+dd 063e2547bh

+dd 09c7c2134h

+dd 0260d6374h

+dd 0bb004f67h

+dd 0eae9b6d2h

+dd 006a79b8ch

+dd 04da2fc4dh

+dd 028e97b06h

+dd 029251f1ch

+dd 0d3ec9f60h

+dd 0d9e3c0bdh

+dd 028d6355bh

+dd 048eb9d44h

+dd 0e3542dc2h

+dd 0b3fbd311h

+dd 0f76e7665h

+dd 0a6c78ebbh

+dd 0e22d41c6h

+dd 08746e693h

+dd 0dc6a5e6ch

+dd 0649bff78h

+dd 0a231d79ch

+dd 0f5afad07h

+dd 08f418fa3h

+dd 0b00ca666h

+dd 0aaa647b8h

+dd 016375204h

+dd 032199c06h

+dd 008a12a9ah

+dd 075270aa6h

+dd 058bd311bh

+dd 0827ea4a4h

+dd 0fad4199ah

+dd 0666a29bch

+dd 03ddd4355h

+dd 0e9d415beh

+dd 0417b706bh

+dd 0fa227dbdh

+dd 0327f2ec2h

+dd 0544fea98h

+dd 0e6e44cb1h

+dd 0ef41bb05h

+dd 0b649ffb0h

+dd 077ce126ch

+dd 0e7b51b53h

+dd 0b7d70f86h

+dd 0680028e0h

+dd 0478b7a2dh

+dd 03cd633c4h

+dd 0b394d26bh

+dd 0e1264979h

+dd 0f8f86440h

+dd 0fee55d51h

+dd 0ed74ad81h

+dd 0c62c9ad5h

+dd 014f2cc9eh

+dd 0f137644dh

+dd 02498d7bch

+dd 08d0c4c1bh

+dd 087191465h

+dd 08cf7dba6h

+dd 045d67562h

+dd 012de15f7h

+dd 013b51837h

+dd 0390a82e1h

+dd 02b31c0c3h

+dd 03d275c56h

+dd 012aeee4fh

+dd 0ca02a5c3h

+dd 08ca25852h

+dd 0471931e2h

+dd 05d894a19h

+dd 0fa9b2fceh

+dd 02a4be09ch

+dd 02b40e806h

+dd 01506cca6h

+dd 0b11adef4h

+dd 04bdb4ecbh

+dd 0d7e372aah

+dd 0e3f6f9dch

+dd 00e5f325fh

+dd 03866af8ch

+dd 07a5f6098h

+dd 0fbbc99f8h

+dd 0058f80fch

+dd 09a9e74a6h

+dd 0f5de21feh

+dd 0238a3c4fh

+dd 03ecb36d7h

+dd 0bab5b397h

+dd 0133f3f00h

+dd 08da80ca9h

+dd 08e8dabe9h

+dd 097a0e05fh

+dd 0b45a9c75h

+dd 0194bda1dh

+dd 0567640c1h

+dd 01d5ec9f9h

+dd 00e39700bh

+dd 01dd75c96h

+dd 0f9f70b4dh

+dd 02c1bb088h

+dd 0eddc8d82h

+dd 09523ff87h

+dd 0703a64dbh

+dd 09528f52eh

+dd 0e48e3d02h

+dd 09ea7cc27h

+dd 0dbbe3809h

+dd 0c8a4c3a4h

+dd 0a095e500h

+dd 05b46b3e3h

+dd 06eac3a6ch

+dd 0581779c3h

+dd 04f97120bh

+dd 00f56a1e5h

+dd 0b1d9260bh

+dd 09d0c1e7dh

+dd 0bda29c56h

+dd 049d22a75h

+dd 0d3ad377bh

+dd 07b1eccd8h

+dd 022b6dc34h

+dd 02f881562h

+dd 084f52449h

+dd 01bf2192ah

+dd 02582796ch

+dd 0f249f2bah

+dd 073a9387fh

+dd 0d24b302bh

+dd 05453ff68h

+dd 0f7c81343h

+dd 08eeac4d7h

+dd 0a3fc0130h

+dd 05124655eh

+dd 00c0e8ca0h

+dd 0f9ad3147h

+dd 01ecbd3fbh

+dd 091765e20h

+dd 05ddd7e2eh

+dd 0312ec350h

+dd 07f873a9ah

+dd 0e1376c3fh

+dd 04042850dh

+dd 0b56c8c76h

+dd 05521ebe3h

+dd 0d722cf98h

+dd 0e95fc0b8h

+dd 055c05040h

+dd 050d6cfedh

+dd 00084ddb0h

+dd 08dd00605h

+dd 0265e05f0h

+dd 099481c58h

+dd 09df7160ah

+dd 0b739ceb1h

+dd 08bd44197h

+dd 0c18eaa98h

+dd 098654894h

+dd 0b9e3a010h

+dd 0801f4c0dh

+dd 08dbf6b95h

+dd 0a6a83b6fh

+dd 00f02fbfeh

+dd 014cd6be6h

+dd 025bc47beh

+dd 0136f0933h

+dd 01b6c9739h

+dd 099b487f1h

+dd 09b997fd2h

+dd 033603c9fh

+dd 0b46fa08ah

+dd 0529fc307h

+dd 0f3d18176h

+dd 0e1712328h

+dd 0190e4f2eh

+dd 05da5fefdh

+dd 08a5162adh

+dd 0b0bd2b2eh

+dd 081cc9f3fh

+dd 097f7c1f0h

+dd 070a64928h

+dd 03ec89a89h

+dd 03c782fbch

+dd 02724845ah

+dd 07431718fh

+dd 01770f5d2h

+dd 0b5c4ecd3h

+dd 0427352eah

+dd 095200cf3h

+dd 05ff0dfb1h

+dd 0ba83b990h

+dd 071e99c64h

+dd 0408787cfh

+dd 02625b498h

+dd 0a3411659h

+dd 01b1086bdh

+dd 025ce0ea4h

+dd 05f9f9873h

+dd 0049d85f0h

+dd 0fa4df63bh

+dd 027b05506h

+dd 059ed0c39h

+dd 06b4d1052h

+dd 07137bc54h

+dd 0ab806e20h

+dd 0875e2032h

+dd 0494b648ah

+dd 079905361h

+dd 017dded6ah

+dd 068ef5447h

+dd 006b44d65h

+dd 01bf92024h

+dd 0df67ee9bh

+dd 0303d4c2eh

+dd 0e0614a9ah

+dd 0c5f3d508h

+dd 064842949h

+dd 0bc135e3bh

+dd 0f243bd6fh

+dd 088f84c01h

+dd 0cdd43c8ah

+dd 0117f7cafh

+dd 042873addh

+dd 017c3ae54h

+dd 0aa1963fbh

+dd 00d79743eh

+dd 0caf04127h

+dd 00c779230h

+dd 0fff4ff0ch

+dd 01ed7020bh

+dd 0cb41ec63h

+dd 0221df561h

+dd 00638c70bh

+dd 01a056959h

+dd 015ad97a5h

+dd 0bbdfa2eah

+dd 061b5a9f5h

+dd 069f96aech

+dd 0267f4421h

+dd 0a2e93e6eh

+dd 03cac223dh

+dd 0ce14cec6h

+dd 036203b9ch

+dd 06746575eh

+dd 0755d5d0dh

+dd 064b507b4h

+dd 00d6036b6h

+dd 04e7e3fa1h

+dd 033c78be3h

+dd 0a42c974dh

+dd 0113ae269h

+dd 00e4e1ec6h

+dd 0dd598281h

+dd 059279badh

+dd 080d15ef1h

+dd 009ff00b8h

+dd 093ebd021h

+dd 0e541faafh

+dd 077918571h

+dd 0da5c59beh

+dd 03bed894dh

+dd 0beee837ah

+dd 04eb979ech

+dd 056a6d5e7h

+dd 0ca568032h

+dd 016089409h

+dd 07e537446h

+dd 0639f6e2eh

+dd 0e1d9f9e8h

+dd 09c80fa14h

+dd 0914ec9b1h

+dd 017833a19h

+dd 0dc77861eh

+dd 0f6f0631fh

+dd 06ef9c95dh

+dd 0b96a75d1h

+dd 0d2f07c79h

+dd 0ae890443h

+dd 0d09e28c8h

+dd 0c262e569h

+dd 078146132h

+dd 0737fa2f6h

+dd 0e85cb53ah

+dd 0af2e00e6h

+dd 0fef620c5h

+dd 0d73d9429h

+dd 0c408427ch

+dd 0e5b8b022h

+dd 0cbddc21ah

+dd 0df32392dh

+dd 022b5772bh

+dd 03234bd01h

+dd 0db71f461h

+dd 0e93d18bbh

+dd 011bf747ch

+dd 0ca74932bh

+dd 05ff7691ch

+dd 0011c3d0dh

+dd 0e8322470h

+dd 04538ec1dh

+dd 05c29b81dh

+dd 048d98dfdh

+dd 08b5cfba0h

+dd 0a41d60e6h

+dd 0c11b5c0fh

+dd 0ba60b3fbh

+dd 0a7c0347ah

+dd 01623c917h

+dd 029a824bah

+dd 0fd0a8f02h

+dd 09e80de25h

+dd 0e6157190h

+dd 0a8082dcbh

+dd 06007db9fh

+dd 0a09d069dh

+dd 061c9594bh

+dd 036596c35h

+dd 0db229f3bh

+dd 0867662ech

+dd 03f8722e3h

+dd 0dfc7e994h

+dd 064f56292h

+dd 0906bb72dh

+dd 0c053429eh

+dd 047b4bcb0h

+dd 09dabfd41h

+dd 05580d0e8h

+dd 0d34cf123h

+dd 0e1c49df0h

+dd 0f1852671h

+dd 015a955b5h

+dd 0f0aaabcbh

+dd 0dceafb7dh

+dd 015abafd0h

+dd 07f9a654ch

+dd 0eeab04fbh

+dd 07c7eae23h

+dd 06c0f11dfh

+dd 0326ecdbeh

+dd 0dc530e9dh

+dd 043bde353h

+dd 01123b918h

+dd 0911b6c58h

+dd 0d9e12cceh

+dd 0fcec93fbh

+dd 0506c72ceh

+dd 0af39cc46h

+dd 081b60d5fh

+dd 01090580bh

+dd 0a96e0a45h

+dd 07f2abfa7h

+dd 0f25d8deah

+dd 0d9be5a43h

+dd 03ef95b0ah

+dd 05469662ah

+dd 0aa1ed87bh

+dd 0e688a361h

+dd 0476419d9h

+dd 042167cf3h

+dd 005d1ca20h

+dd 045df2bf1h

+dd 08c026c24h

+dd 09330cfa6h

+dd 06fcab21ch

+dd 0b4ef2e19h

+dd 080148b41h

+dd 09e51cdbfh

+dd 0307b8c0ah

+dd 077483cfch

+dd 00341c986h

+dd 0a791bafdh

+dd 034c865b5h

+dd 0ed8c510bh

+dd 0de8719c5h

+dd 0a1e54527h

+dd 0a16dbb2eh

+dd 0fd5f2663h

+dd 03d20d27bh

+dd 0707e8b4eh

+dd 0243cefdfh

+dd 006e642d8h

+dd 0c24ab327h

+dd 02e179a9ah

+dd 038700742h

+dd 0fc0f0322h

+dd 0366292d7h

+dd 08f4a1ad8h

+dd 0c9e9deabh

+dd 0933c791ah

+dd 0cdedef41h

+dd 051309672h

+dd 05a54d2a8h

+dd 0a0258401h

+dd 0380f7d20h

+dd 05505292fh

+dd 0c57bf5e2h

+dd 0deab9611h

+dd 062581924h

+dd 0ef5b09d1h

+dd 0563e7340h

+dd 0859d9ea7h

+dd 030ad5044h

+dd 067615454h

+dd 0d26266ddh

+dd 0f6d5767ch

+dd 012ee145bh

+dd 0b25b28c6h

+dd 08a2f212eh

+dd 056950d56h

+dd 0a06cddceh

+dd 045898a82h

+dd 066a256b7h

+dd 02e10cd11h

+dd 07d1fe6b4h

+dd 09b34622dh

+dd 041e82e60h

+dd 0f84a10cbh

+dd 0c71fba85h

+dd 0383dfcadh

+dd 05c45ce65h

+dd 013bfd200h

+dd 06c99150fh

+dd 06602add1h

+dd 0524d906ch

+dd 0ad9ecfe8h

+dd 0a266a90bh

+dd 0d29a004bh

+dd 00d79163eh

+dd 0d1b51558h

+dd 0ff0fc4edh

+dd 064438aefh

+dd 0fb9d568ch

+dd 05b72ecd9h

+dd 0af47e9d8h

+dd 019d200f9h

+dd 0f98cd647h

+dd 07e0cb281h

+dd 0dcd36d23h

+dd 0c057db8ah

+dd 0efbe918dh

+dd 0560e4375h

+dd 0501646b9h

+dd 0802283c8h

+dd 0d9ee2a8eh

+dd 064532467h

+dd 07cae19a7h

+dd 0b80dccd9h

+dd 05ba93b17h

+dd 03a51432ch

+dd 0fb80333bh

+dd 0cb21df7eh

+dd 094ad7a18h

+dd 0011b3abah

+dd 07289c1fch

+dd 083b12602h

+dd 0bc96539dh

+dd 09c91fde4h

+dd 0d7531fe4h

+dd 08c2fcb81h

+dd 0a57b178bh

+dd 0bf0402d5h

+dd 0edee73efh

+dd 0bc8fca96h

+dd 0aef9d9e4h

+dd 0fdf6c1f6h

+dd 07a23070bh

+dd 0a42c80e3h

+dd 001dedcf2h

+dd 0fe00964fh

+dd 0e8fc9664h

+dd 0bd84d301h

+dd 05a8f883eh

+dd 094eb7e86h

+dd 01c0ccef0h

+dd 0775bf3f0h

+dd 06352af1ah

+dd 00f224ca1h

+dd 0050d54cah

+dd 08ebff0f1h

+dd 0909eccd2h

+dd 09936e162h

+dd 013516881h

+dd 094f8c43dh

+dd 0357013e0h

+dd 086f1cfa5h

+dd 07f8e1c74h

+dd 08109b3d6h

+dd 00b794164h

+dd 059c4d845h

+dd 0c5d13cd9h

+dd 0ec2deb5ch

+dd 0c385053eh

+dd 0da93fb94h

+dd 015cc5213h

+dd 0228201a9h

+dd 0a28ea2e1h

+dd 0e6cf2894h

+dd 0e4c44f80h

+dd 0ad2d3b41h

+dd 0cb05fa30h

+dd 0c9a3843dh

+dd 01b942061h

+dd 0a4d894f4h

+dd 0b6ecb6fdh

+dd 0ddc09ab0h

+dd 03bc39e5bh

+dd 07a2836bbh

+dd 0c55b6dcdh

+dd 0bd9a8216h

+dd 0ab1fc87ah

+dd 069d6239eh

+dd 017cbd3b9h

+dd 022177873h

+dd 04ed5ddc6h

+dd 02b8f52dfh

+dd 05f1ac43ch

+dd 08a5d3405h

+dd 091a4ff50h

+dd 0b3df8a4dh

+dd 08f5093a2h

+dd 0c5a287d4h

+dd 0e541ebbbh

+dd 0956429f9h

+dd 0129b8529h

+dd 08c8a0cf9h

+dd 0c0b62151h

+dd 0638e4abdh

+dd 02189f5f6h

+dd 0f57f83a7h

+dd 03fa94844h

+dd 050304b38h

+dd 02195b3a7h

+dd 0cbfea062h

+dd 0a389df6ah

+dd 0ac3daafbh

+dd 069c7a165h

+dd 0408953f2h

+dd 001a018ceh

+dd 0f2d256ebh

+dd 033694d78h

+dd 0697414e8h

+dd 04e55dbadh

+dd 0b797c53bh

+dd 0a2f7492bh

+dd 0bc8b34f3h

+dd 01c8546c8h

+dd 06711ff20h

+dd 02ce322d3h

+dd 0aa57e661h

+dd 08b751b03h

+dd 0305bbcfch

+dd 0789fafbch

+dd 0661c2242h

+dd 0e026b0d6h

+dd 05b1250e8h

+dd 06f5425e6h

+dd 01c16ba1ah

+dd 007e4e4c5h

+dd 0ab803774h

+dd 0090406a3h

+dd 0097f7317h

+dd 0e6be3ef3h

+dd 08011ae4dh

+dd 0731b49c5h

+dd 0feb87ed4h

+dd 0b87ee674h

+dd 02fafcb97h

+dd 0ff80e744h

+dd 08df666a8h

+dd 0b7db0cc2h

+dd 0fabf53d2h

+dd 07169264ch

+dd 070a4db21h

+dd 090039867h

+dd 08d62517ah

+dd 08cdc1482h

+dd 05f72225fh

+dd 04592ecedh

+dd 0c40b6285h

+dd 02bd98c2bh

+dd 0e1179121h

+dd 08619afa6h

+dd 0440b0ad0h

+dd 05db14172h

+dd 0b46d8330h

+dd 0a740dfbbh

+dd 05d095164h

+dd 0628f4941h

+dd 0da27c007h

+dd 0a68ffae8h

+dd 0094002f1h

+dd 013175c66h

+dd 0365b016eh

+dd 0f88931d9h

+dd 07e5d46b7h

+dd 0ec4a75dfh

+dd 0c92576e9h

+dd 0821bac04h

+dd 03019626dh

+dd 06472e35ah

+dd 0b0ba2197h

+dd 09360bdfbh

+dd 00635833dh

+dd 03f7be076h

+dd 0cbff45b8h

+dd 052cd58cbh

+dd 001db3a7fh

+dd 09beb0abah

+dd 0d584693eh

+dd 047e056d5h

+dd 051ffc613h

+dd 03477d24ch

+dd 034933e3bh

+dd 0a557640dh

+dd 0cd4b51ebh

+dd 00f698783h

+dd 000d21894h

+dd 04bb92951h

+dd 08cfad691h

+dd 0d49dbebdh

+dd 0d6b9f2a8h

+dd 03d0d83b5h

+dd 0f803126bh

+dd 098a03556h

+dd 036f603f2h

+dd 0189c021ch

+dd 0f331dadbh

+dd 0f94cc437h

+dd 0abce2c46h

+dd 0835efba5h

+dd 09a172d35h

+dd 07dfb794ch

+dd 0c7dece5dh

+dd 017d1f9fbh

+dd 09fff7123h

+dd 08cd96546h

+dd 0ad2ff79eh

+dd 02ac02863h

+dd 080632570h

+dd 0d6ce6143h

+dd 02775da6bh

+dd 08d71ee85h

+dd 01555e583h

+dd 0158f7f96h

+dd 0b168cbfch

+dd 067d39775h

+dd 01d639ae2h

+dd 0c8b83c99h

+dd 085bea1a2h

+dd 0c92f71c0h

+dd 01e3934e4h

+dd 09eaf7634h

+dd 07b4a160dh

+dd 04d0e7166h

+dd 06703831bh

+dd 02ce8a9d6h

+dd 09208629bh

+dd 01b3e1069h

+dd 0eb4ed18ah

+dd 05c764b51h

+dd 0757ef91ch

+dd 0d12cc86bh

+dd 022016b77h

+dd 09794c5f6h

+dd 035da4564h

+dd 0faacbce8h

+dd 04268a1bdh

+dd 03f70159ch

+dd 0c3e3392ch

+dd 01719d4bch

+dd 0a0472dbfh

+dd 022802d3ah

+dd 0c052680bh

+dd 0ffb9e13eh

+dd 03be952f5h

+dd 07d2d46bch

+dd 0b6fdee5dh

+dd 01488a815h

+dd 01e396d43h

+dd 0ff47e751h

+dd 038f844adh

+dd 03a386bdbh

+dd 02499dfd7h

+dd 09e14fb1bh

+dd 0c8191490h

+dd 067f460a3h

+dd 08a084be4h

+dd 040ec4655h

+dd 03acf506fh

+dd 068994025h

+dd 0dcd0ec60h

+dd 012d703d2h

+dd 044c48620h

+dd 0e1afc1c4h

+dd 0d6b5d5b7h

+dd 0ae602697h

+dd 03e466757h

+dd 0b542be7eh

+dd 0e906549bh

+dd 0fe3c9303h

+dd 0cf4c579eh

+dd 0fe17c6bbh

+dd 043baab29h

+dd 04fdd8ca4h

+dd 072dfce7ah

+dd 08b4363a3h

+dd 026ccee64h

+dd 00fe3b380h

+dd 05298a8a4h

+dd 0e5ec0fe0h

+dd 00873ce55h

+dd 023e15153h

+dd 08229aaf8h

+dd 0586e3c05h

+dd 06d11ec4eh

+dd 0a3349db6h

+dd 053941c05h

+dd 0178033cah

+dd 032d3192dh

+dd 095073064h

+dd 0dbbd0c78h

+dd 05d8c7622h

+dd 03f1e245dh

+dd 0ab6d4357h

+dd 01c3b917ch

+dd 0e951cca7h

+dd 04b4ef853h

+dd 0c818cfb2h

+dd 0f36cfcbfh

+dd 0a569bb78h

+dd 06b6fdef3h

+dd 0416e7787h

+dd 0253e5447h

+dd 063bfbf0fh

+dd 01b3f2588h

+dd 0ebeb8dbah

+dd 06e1c9aech

+dd 001947193h

+dd 09cc084a3h

+dd 082b7408bh

+dd 0ca30c9bfh

+dd 070cd6609h

+dd 01d3d85f2h

+dd 0456df2f1h

+dd 0f66eeaa2h

+dd 0941a166eh

+dd 0d7301ccdh

+dd 042aef241h

+dd 0f1a58866h

+dd 0fdaa8589h

+dd 0bddffd7fh

+dd 0dc1f2d4ah

+dd 09660a011h

+dd 0d1dbaf8dh

+dd 0e3ff093ch

+dd 0d9796fcbh

+dd 0c99c647ah

+dd 05a2bb3e1h

+dd 0bd89548dh

+dd 0e0d5f887h

+dd 0ecad1dech

+dd 0b6beeb70h

+dd 054cc2957h

+dd 0c0621f58h

+dd 0df3cbd16h

+dd 00ee50209h

+dd 08482de7eh

+dd 0c83d3a2fh

+dd 0bf74e4b7h

+dd 0d0b5dc55h

+dd 0801310ffh

+dd 073738ddfh

+dd 0e4692418h

+dd 011258510h

+dd 0f12e593fh

+dd 02355ed5ch

+dd 092065e5eh

+dd 07843bfech

+dd 0e95df167h

+dd 0c113c6d3h

+dd 094602c8fh

+dd 061728d91h

+dd 02798dee0h

+dd 037d14694h

+dd 0f95c4881h

+dd 05fd6604dh

+dd 032b51cb1h

+dd 073cd8934h

+dd 09e45edaah

+dd 0feaf6ae3h

+dd 04a552369h

+dd 091f3ab04h

+dd 08bf44e8ah

+dd 0206d51d9h

+dd 09112aa10h

+dd 0d10f87ffh

+dd 059b126eah

+dd 013364460h

+dd 05fdfc007h

+dd 0b72b0e36h

+dd 0bf6a2210h

+dd 0dc5f4456h

+dd 02e63f275h

+dd 01ccfae48h

+dd 03e89bd38h

+dd 0daeec0c1h

+dd 0f21dc2b1h

+dd 0e9160dd4h

+dd 093f7e613h

+dd 02b044545h

+dd 052c4a293h

+dd 00a289408h

+dd 04d96bc66h

+dd 09967dbc4h

+dd 0ee655466h

+dd 0ce16c7adh

+dd 01e329b4dh

+dd 014d32b4bh

+dd 06ebab097h

+dd 0b37beac0h

+dd 05eea5d95h

+dd 07c7ada93h

+dd 056f54280h

+dd 01d9eb8a3h

+dd 09062775bh

+dd 0326a8132h

+dd 019a86dcdh

+dd 02c77148bh

+dd 0701b609dh

+dd 030296d23h

+dd 0ac59bd15h

+dd 04f616c8fh

+dd 0787a2ea8h

+dd 0ba7235b3h

+dd 0ad0ff61eh

+dd 004993162h

+dd 011246f98h

+dd 0f7773f50h

+dd 00a99aa1fh

+dd 0b682b9a0h

+dd 033a31837h

+dd 08441368ch

+dd 0b8f8398ah

+dd 081fe6acfh

+dd 0b104d6c1h

+dd 0a7f29339h

+dd 0c13d5fe4h

+dd 0e56b7129h

+dd 06d16f705h

+dd 0fa30fc41h

+dd 021e944b3h

+dd 0c9eeba51h

+dd 09b94ec4ah

+dd 08e1ba5c9h

+dd 05543b5fch

+dd 071f96e37h

+dd 0d81f99efh

+dd 0378f1261h

+dd 0b3e6d35ch

+dd 08e869c97h

+dd 07b576bbah

+dd 00db18cbfh

+dd 0757a7295h

+dd 01428e42bh

+dd 0f9db6f2eh

+dd 043be8e14h

+dd 08b73bc5ah

+dd 0d11219fdh

+dd 0919445d9h

+dd 0ba3a822ah

+dd 00a052138h

+dd 0c12ca058h

+dd 04f4f71aah

+dd 0c095d2b7h

+dd 05f3f9b22h

+dd 0d83ed694h

+dd 036e0c63bh

+dd 022dd418eh

+dd 016a765f3h

+dd 04c57c643h

+dd 0dd28f938h

+dd 0cd4eca42h

+dd 00df910d1h

+dd 0a5f19826h

+dd 0a82d2030h

+dd 0b68e91f4h

+dd 0b071c891h

+dd 093a2aa73h

+dd 0013833cbh

+dd 0e8372b2ah

+dd 07750e9ceh

+dd 03fa2f9c8h

+dd 0cff7d436h

+dd 0f3ea97b1h

+dd 08e883865h

+dd 0fba3f974h

+dd 0511d6143h

+dd 087bd9a1bh

+dd 0566dee39h

+dd 07e72ac21h

+dd 0dd85036dh

+dd 003d474b0h

+dd 0c4ee7abch

+dd 0d9c1b7a0h

+dd 0a8b194cfh

+dd 00496daddh

+dd 0a70b5e13h

+dd 0aded186ch

+dd 095bdf1c4h

+dd 0d931b3adh

+dd 0ad50f8f9h

+dd 05be1a6bch

+dd 0a1c166d7h

+dd 0e396c8fch

+dd 0d8210182h

+dd 0426af5bch

+dd 023f2069dh

+dd 083a5e9fch

+dd 0275af42eh

+dd 0b75823cch

+dd 08612740dh

+dd 09019d782h

+dd 0ce35fdeah

+dd 0bc9d5c57h

+dd 043ffb3bch

+dd 0d07e33b1h

+dd 0c8c4cde0h

+dd 0a44df6c7h

+dd 0b27fb226h

+dd 043741aa8h

+dd 0db0be088h

+dd 04289b768h

+dd 0f666455bh

+dd 012bd99bah

+dd 042885944h

+dd 0c593d3f4h

+dd 00214ed5fh

+dd 0cf069654h

+dd 0ebc6dde9h

+dd 0ed8c67e3h

+dd 0b281921dh

+dd 082a1f504h

+dd 07fb1ff40h

+dd 08a22b6a2h

+dd 0ed5ce77ah

+dd 0b7ff9d16h

+dd 060c2db11h

+dd 090c8073dh

+dd 0bbe96d95h

+dd 074232384h

+dd 07759b271h

+dd 02c87d7dah

+dd 0ca44d897h

+dd 0918fd552h

+dd 0d7fdedb4h

+dd 0e7cca890h

+dd 0bc7460d8h

+dd 08436f580h

+dd 0a9366c2ah

+dd 092d3b118h

+dd 0691ee8c9h

+dd 01fbf0a8ch

+dd 04a4ddc55h

+dd 0ff1d0f3ah

+dd 0c68bffdeh

+dd 037aaaff7h

+dd 0f456529fh

+dd 0a18c8573h

+dd 0d73cd429h

+dd 05583f329h

+dd 0c43f2d99h

+dd 05b82c6f9h

+dd 0578cf2cah

+dd 0f095761dh

+dd 080de4778h

+dd 04d9106cdh

+dd 09dd46fc4h

+dd 05e1e8f8eh

+dd 0265bb37bh

+dd 0ff5a05efh

+dd 0b4d87907h

+dd 00543b5e3h

+dd 0ba09a5f9h

+dd 08417f2f2h

+dd 0f58956f6h

+dd 07f445ff1h

+dd 0a514788fh

+dd 0238c1506h

+dd 060413c86h

+dd 06173270ch

+dd 0bc41e674h

+dd 013412a31h

+dd 00cc2d2cah

+dd 0909343b0h

+dd 07a632bdbh

+dd 03d81b782h

+dd 025b151cdh

+dd 0107eba87h

+dd 037a29056h

+dd 085d6f666h

+dd 08490be2ah

+dd 0c4675b21h

+dd 0ca8fdac0h

+dd 0ccde06f8h

+dd 08143533dh

+dd 029dacfbeh

+dd 00b7f662ch

+dd 049cf9b5ah

+dd 05d1fc01ch

+dd 08e16c77ch

+dd 0ac1ae7d2h

+dd 0a17555cdh

+dd 00ca2cd09h

+dd 0e0e5176ch

+dd 0a14bc7d5h

+dd 0448e3ffah

+dd 010b79b32h

+dd 087e709abh

+dd 07017b9f6h

+dd 08c406194h

+dd 09ec64bc1h

+dd 01296a006h

+dd 0302f0724h

+dd 0a166d129h

+dd 0d5911007h

+dd 04c875b24h

+dd 0fbbd08bah

+dd 0365cac0dh

+dd 03c130923h

+dd 000a6d193h

+dd 0529966dbh

+dd 0546daeaah

+dd 0e287c8c5h

+dd 04f87e2c3h

+dd 08df34ac8h

+dd 0de8ab5c2h

+dd 0e2131c7bh

+dd 036f3d4b4h

+dd 04dcb500bh

+dd 078597fd2h

+dd 02744a59ch

+dd 012d2666dh

+dd 0a97632ceh

+dd 02423e694h

+dd 07344c5c3h

+dd 0fbd59e79h

+dd 001ce6900h

+dd 0666d37fdh

+dd 08e19d644h

+dd 0c10961cah

+dd 00fbb2666h

+dd 0ec950d88h

+dd 0f6a65b5ah

+dd 0bec05f49h

+dd 0ecd27568h

+dd 005c44746h

+dd 09137849eh

+dd 0b0b2a070h

+dd 0eb770fa8h

+dd 096f216bbh

+dd 0616a71f4h

+dd 0b6443d15h

+dd 04e81617fh

+dd 0c5286b0ah

+dd 0d5b40690h

+dd 0236b455ah

+dd 0da4bedf9h

+dd 0550ebf45h

+dd 07f2bab16h

+dd 0bb0b81c5h

+dd 0ee35d867h

+dd 031093e21h

+dd 0abbf0038h

+dd 0a3b6a13ah

+dd 06f5eb527h

+dd 0229eae4ch

+dd 03b34248bh

+dd 0dd685d35h

+dd 0ac68e112h

+dd 09c925d8ch

+dd 06bcf128dh

+dd 0bfc6e044h

+dd 0ba0bebb0h

+dd 02b8b650ah

+dd 0f81e5f10h

+dd 087e4aa0fh

+dd 0a40f32b5h

+dd 0dd8db428h

+dd 07fe8fd95h

+dd 0fb5e407dh

+dd 066eaf2c6h

+dd 00dff9347h

+dd 0f26dd1b0h

+dd 0d984648dh

+dd 02dc8f1a8h

+dd 00a23388eh

+dd 0afbbe371h

+dd 084500184h

+dd 06a44720eh

+dd 0446d7223h

+dd 0c9c8243bh

+dd 0aa704e41h

+dd 0fd95ee50h

+dd 0d40b21e1h

+dd 03e695e77h

+dd 0900086cah

+dd 07fc79d85h

+dd 0a44ba502h

+dd 0aa250c64h

+dd 062e27b7dh

+dd 0b306b8a4h

+dd 098c28c2bh

+dd 0eea569c6h

+dd 0f1796207h

+dd 02e2e79f3h

+dd 014233208h

+dd 057dfeb9ch

+dd 0b419b27ch

+dd 06e10c6beh

+dd 02f07336eh

+dd 0e859eb65h

+dd 0922328a1h

+dd 079cbd6b1h

+dd 0dd3e909fh

+dd 071d3fdfbh

+dd 0f4098ed8h

+dd 02059ecd0h

+dd 0c2865ce8h

+dd 08c7e413eh

+dd 0611dee26h

+dd 07ef5582ch

+dd 07df6edaah

+dd 0e50680a6h

+dd 03ff59175h

+dd 06bfb2900h

+dd 0a67421ebh

+dd 055a29affh

+dd 0a484b928h

+dd 001386a3bh

+dd 0e6a48e23h

+dd 0ee0f585eh

+dd 0c05db5b9h

+dd 04833ed1ah

+dd 0536212e6h

+dd 0dfc9238fh

+dd 07b2454dbh

+dd 00dfda766h

+dd 040baa66dh

+dd 048fe868bh

+dd 00d8f39e4h

+dd 09ed0904ah

+dd 024815c3ah

+dd 03850aea5h

+dd 04b4ce547h

+dd 0329777b1h

+dd 0e036172eh

+dd 0abfb873ch

+dd 0164c7b2fh

+dd 045438cdeh

+dd 0ea672dc2h

+dd 001773f61h

+dd 0bf2e66dbh

+dd 099fc0f55h

+dd 0abdf16f5h

+dd 07d67f502h

+dd 07643bdadh

+dd 06d6e2d24h

+dd 04e0f3a0dh

+dd 050c33a31h

+dd 05e9237a5h

+dd 022f0ac42h

+dd 0c66bf1f0h

+dd 05df4795eh

+dd 0abb2dde7h

+dd 0bf55bb49h

+dd 08bc2557fh

+dd 06fa885e8h

+dd 018b7d851h

+dd 02b98a358h

+dd 02d7566ddh

+dd 094cd5d51h

+dd 05f184e0ch

+dd 0f85a07d0h

+dd 0b44aa23ch

+dd 038173ee6h

+dd 074ec43bfh

+dd 0fafd7552h

+dd 00e0f0d8bh

+dd 0b3b2e3a8h

+dd 074ffe1d6h

+dd 0d541f1d7h

+dd 0e52958a8h

+dd 0eab3ceb9h

+dd 0c205830bh

+dd 082dd90a7h

+dd 0d0616c4ah

+dd 06999a3e0h

+dd 0c97686d9h

+dd 059271865h

+dd 01491d9f4h

+dd 0ea907437h

+dd 03956d767h

+dd 08d729cfch

+dd 0f7588dc1h

+dd 0ab7b7d15h

+dd 04d4ea9c2h

+dd 0be0b002ch

+dd 0f665b86fh

+dd 0bdf8724bh

+dd 0e38c55ddh

+dd 027d42835h

+dd 0f5bf6fe3h

+dd 025d761bch

+dd 03e869b84h

+dd 0d8d1e5bch

+dd 0220baa78h

+dd 01803999fh

+dd 0f64e8546h

+dd 056257b9eh

+dd 0be12c8abh

+dd 0988fd8a2h

+dd 04e98b5e4h

+dd 0d3c10bc9h

+dd 0ef446fc5h

+dd 0469f0c40h

+dd 0591ed066h

+dd 098c087dch

+dd 0822332cbh

+dd 02eb37557h

+dd 01afe56deh

+dd 01ecb0b32h

+dd 06aaf1205h

+dd 00f2a77a4h

+dd 05a64e123h

+dd 04edad51fh

+dd 04ea65b76h

+dd 0d04389b0h

+dd 046285d41h

+dd 09a5d2085h

+dd 08a0bcf33h

+dd 056b2eab2h

+dd 07cadfa99h

+dd 0b970a7ebh

+dd 066e3738eh

+dd 06b8a9a5fh

+dd 0e9f24554h

+dd 056fd31f1h

+dd 09278a536h

+dd 025a15196h

+dd 02ddba52dh

+dd 05ffedba4h

+dd 09527d96dh

+dd 061ef38cdh

+dd 0775512f0h

+dd 09e238788h

+dd 0306b4b25h

+dd 09cd8ec76h

+dd 06b128f67h

+dd 03a30de8ch

+dd 06684c0abh

+dd 0e9a67abch

+dd 0d1164498h

+dd 006d95c0eh

+dd 08325a17ch

+dd 025b88709h

+dd 0b614323eh

+dd 04e500825h

+dd 04ecf926bh

+dd 0f8423753h

+dd 03186a9e7h

+dd 0ee7b0b6ch

+dd 0bc3a3c32h

+dd 09cdfc50ch

+dd 031df305ah

+dd 00ab35479h

+dd 0e8cc14aah

+dd 01f7387a0h

+dd 06c7e8d32h

+dd 0f903c688h

+dd 07001b6c1h

+dd 03da50941h

+dd 0f0915affh

+dd 077aa34bfh

+dd 0942914deh

+dd 06d9d3848h

+dd 0f583fec6h

+dd 05338bed7h

+dd 05e041ec8h

+dd 080066bd6h

+dd 0221d817eh

+dd 06df5ab04h

+dd 01391701bh

+dd 0adf133aeh

+dd 0d319cb9ah

+dd 0dbbb5ebeh

+dd 007d5018bh

+dd 013db11bch

+dd 006aa2b6dh

+dd 0092ad852h

+dd 02e8106c2h

+dd 0cb7bebb5h

+dd 073b3dbbch

+dd 070976b35h

+dd 02f5bae53h

+dd 032f27dcfh

+dd 0661b9c1dh

+dd 0d538b5c3h

+dd 0d3c846b6h

+dd 0aa907ed8h

+dd 05fbdbda9h

+dd 0a17d9227h

+dd 08cead5b3h

+dd 08c451e53h

+dd 0b036844dh

+dd 0fae001ebh

+dd 06801c202h

+dd 0f4a652ddh

+dd 088569fdbh

+dd 07837770bh

+dd 0297fc06ch

+dd 0340eb8a8h

+dd 0addb95cfh

+dd 0c7fc6e96h

+dd 03bd2b597h

+dd 05c40619ch

+dd 01c7406abh

+dd 0112e54b7h

+dd 047c2b97eh

+dd 02b88c46dh

+dd 0823111f7h

+dd 0a9d9a3a8h

+dd 0cc1c5702h

+dd 0b100a7f2h

+dd 0de830029h

+dd 0c632b76fh

+dd 09a024e93h

+dd 0bdf4ec24h

+dd 01e021589h

+dd 0c0b9a66eh

+dd 0d0d76c74h

+dd 0f96cb565h

+dd 0be09d798h

+dd 0ed055062h

+dd 0b4529a5fh

+dd 0d1cb8ba1h

+dd 07337d6fdh

+dd 0649280c2h

+dd 0346c7e02h

+dd 0fe9805abh

+dd 047d7b7eah

+dd 016cca6b0h

+dd 0dead6e76h

+dd 06638e122h

+dd 0cd8883cbh

+dd 0a6644551h

+dd 0142fa9deh

+dd 031097eb0h

+dd 047c4e2fdh

+dd 0bf08887ah

+dd 0c53fd0cch

+dd 08fdf1fa6h

+dd 014fc5384h

+dd 0e6ba0a82h

+dd 08b2996b1h

+dd 0b2f9b58dh

+dd 0fac49e51h

+dd 031a0cdb6h

+dd 063dfe835h

+dd 0d5592f56h

+dd 07d643776h

+dd 0318680c6h

+dd 0c481ab74h

+dd 04e1df3c3h

+dd 0a4ef7e83h

+dd 0e0d739f9h

+dd 0dca9d477h

+dd 03d3f6939h

+dd 0c9980f87h

+dd 08a63f2e3h

+dd 03dcb341ah

+dd 05c8843e3h

+dd 03c47e24fh

+dd 0ca2ec3a8h

+dd 03d099922h

+dd 04e68eafdh

+dd 01245f332h

+dd 01425ee88h

+dd 003b71b5dh

+dd 016bb0693h

+dd 0de87f633h

+dd 000262012h

+dd 02d5a2c6ah

+dd 02c46535bh

+dd 0658c107eh

+dd 09980fb5dh

+dd 0679b91adh

+dd 009f5852bh

+dd 02070eef9h

+dd 0ec3791c9h

+dd 0eb5d1573h

+dd 0a15bc4f6h

+dd 077d59127h

+dd 0859cb048h

+dd 06dd34f3ah

+dd 0901133cdh

+dd 05c31c8eeh

+dd 0de1ef87dh

+dd 08d800182h

+dd 0856286c9h

+dd 0495f7aa8h

+dd 05cb520e8h

+dd 0f9cf13bbh

+dd 0b0217e9fh

+dd 0398c1370h

+dd 0fe9b5093h

+dd 04a7fe82dh

+dd 098ccf9a1h

+dd 0546b9047h

+dd 0c70b6fcbh

+dd 0b1cacae1h

+dd 0e13e6de7h

+dd 06410764ah

+dd 0d2be8f3eh

+dd 0ef486dc7h

+dd 049a90328h

+dd 0c3e69b5dh

+dd 09e18cd7dh

+dd 09582ed01h

+dd 052821e29h

+dd 0ee5872f5h

+dd 032a87ecbh

+dd 0a9cc4099h

+dd 0448eaee4h

+dd 0451a876bh

+dd 07a86d4fch

+dd 094d71e5bh

+dd 057241272h

+dd 0eabe385eh

+dd 0f58d22b3h

+dd 074007c59h

+dd 0105f4662h

+dd 07e968852h

+dd 074b84c3ah

+dd 054c1f62ch

+dd 06debe0f5h

+dd 051385ab7h

+dd 0dc454411h

+dd 0f56f94e7h

+dd 065153707h

+dd 0209c3489h

+dd 016d8dacbh

+dd 0dbc2ef42h

+dd 0972604bdh

+dd 0532d00d9h

+dd 04ccf5b82h

+dd 0ca994eech

+dd 04a944ef6h

+dd 0a7ce7aefh

+dd 092d9ec28h

+dd 044345582h

+dd 00b5c912eh

+dd 076c8d28ch

+dd 000ea9997h

+dd 0aeae686ch

+dd 0b2b993e7h

+dd 01efe4e9ah

+dd 023409a17h

+dd 0cfae3844h

+dd 01942e007h

+dd 009c83618h

+dd 0fddf6f5fh

+dd 087d21653h

+dd 0cc4bef56h

+dd 05be645f1h

+dd 008aaa688h

+dd 09353b3cah

+dd 07ae1031bh

+dd 063f03e2ah

+dd 09736367ch

+dd 02ae947fbh

+dd 00e347816h

+dd 0f809e4b3h

+dd 09e4b9899h

+dd 05d5026ebh

+dd 0725f325ch

+dd 00eb98d6ch

+dd 01dca8b57h

+dd 09a045d5ch

+dd 0cbdb1e98h

+dd 0ac7ac887h

+dd 0850a5b08h

+dd 04597b0fdh

+dd 0efd42007h

+dd 056a70f6ah

+dd 092301270h

+dd 054df14e0h

+dd 07b7321b3h

+dd 072ed1587h

+dd 0be2be3d4h

+dd 09987db27h

+dd 02ca3dcc1h

+dd 0f845b9f6h

+dd 0f2ad22dfh

+dd 0e13cd456h

+dd 06e83ad6ch

+dd 01ce35fe7h

+dd 09af838a7h

+dd 0e7ad69c6h

+dd 09303da18h

+dd 061447ca1h

+dd 0fdf9f171h

+dd 098848d07h

+dd 0c7cba8c7h

+dd 0f1e388b2h

+dd 0718d1a8dh

+dd 02636b180h

+dd 0a2bba8e5h

+dd 06c34262ah

+dd 0816cc684h

+dd 0d18f8aadh

+dd 0b82f3160h

+dd 061a8f8a7h

+dd 04283e1edh

+dd 0a6f7fe65h

+dd 04d779cafh

+dd 03b1a8893h

+dd 03505dc88h

+dd 0548d85b9h

+dd 0e2348532h

+dd 077032f4ah

+dd 0ba816613h

+dd 060bf0b6bh

+dd 0f6cc5f68h

+dd 0827164eah

+dd 06337703ch

+dd 0b698c143h

+dd 0b5f0075eh

+dd 0cf595872h

+dd 0fd8a1b66h

+dd 0831e5ba7h

+dd 065f2a4b0h

+dd 043762bd5h

+dd 03c6923f7h

+dd 0a7150968h

+dd 0f938fab4h

+dd 0ae890c0dh

+dd 0f32a93b4h

+dd 0adcb81b7h

+dd 0b3893dc1h

+dd 09a80af3eh

+dd 0c5220cfeh

+dd 06b148d7fh

+dd 0118babc6h

+dd 076ec1633h

+dd 0843a10f0h

+dd 07f34b877h

+dd 07ebceb0ah

+dd 0a172c5e2h

+dd 0f0dad6e1h

+dd 08a0a7941h

+dd 05c0a2f9ch

+dd 03323026bh

+dd 0d5c42735h

+dd 0a1866067h

+dd 088378bc8h

+dd 04b9e5800h

+dd 04f3b343ch

+dd 003443b1eh

+dd 0527b118ah

+dd 074ee2626h

+dd 0349af22fh

+dd 0e6e67243h

+dd 0f1b4ae23h

+dd 0ab28ed59h

+dd 078f92de4h

+dd 074ba6d4eh

+dd 0178bdef1h

+dd 0ef11bdeeh

+dd 0051b0a53h

+dd 090423e33h

+dd 0336880c2h

+dd 050333c70h

+dd 0166c54e3h

+dd 0a45a9a9dh

+dd 0441438a1h

+dd 00012d91dh

+dd 0b531524bh

+dd 0d5e2206ah

+dd 0a2c5fbb3h

+dd 05184c2bfh

+dd 0ccea1ba9h

+dd 06e605db5h

+dd 0aebc8c88h

+dd 05195a33fh

+dd 008ef33dch

+dd 015e6c1d3h

+dd 0ae2fa789h

+dd 05a79bb0bh

+dd 0aec84728h

+dd 01cfb05afh

+dd 057faf323h

+dd 0a8dfb5c6h

+dd 062dc44d4h

+dd 0bd203f1ch

+dd 03e8e4eb6h

+dd 0a6f585f2h

+dd 0ae893fedh

+dd 0b3d83e33h

+dd 086d770d8h

+dd 0de4de487h

+dd 018c41cc6h

+dd 0be0bef56h

+dd 0b50b0062h

+dd 009a1ffafh

+dd 017fa53c3h

+dd 0cac8f43eh

+dd 08424c806h

+dd 0315295dch

+dd 0cb8de010h

+dd 071eb9fcbh

+dd 0bbd2d6b2h

+dd 0421274ach

+dd 0a05ece4bh

+dd 07d049a06h

+dd 0759c47c5h

+dd 0fa3c36f7h

+dd 0d8ee20beh

+dd 0f9342b01h

+dd 03c9e5773h

+dd 08f34697fh

+dd 0a256eef1h

+dd 08c04909eh

+dd 03ed5a2cah

+dd 0832e8d3bh

+dd 04d20ce82h

+dd 0dfcdf469h

+dd 00da75adeh

+dd 063c620a4h

+dd 0f6b217a4h

+dd 0c35d3362h

+dd 05cbc58bfh

+dd 058d23c31h

+dd 0ed4872b9h

+dd 00147446ch

+dd 0abb1e386h

+dd 01f09758eh

+dd 0d80ab00ch

+dd 0f4d6a7c6h

+dd 02483aadch

+dd 0a8bd655fh

+dd 0db0bd1d5h

+dd 05fb6a619h

+dd 0b0e6d828h

+dd 0902e3bf6h

+dd 0c9f6a593h

+dd 02c9c2179h

+dd 0eb01c935h

+dd 0ec103690h

+dd 04790234fh

+dd 043673c48h

+dd 072bb3c7eh

+dd 03e191e5dh

+dd 0028ca392h

+dd 08964617fh

+dd 0bcea5393h

+dd 01a3fab06h

+dd 0785542dch

+dd 032e46880h

+dd 04dbb6203h

+dd 0ea471b85h

+dd 08daef4d9h

+dd 0d2b22f02h

+dd 0a3fd3e5ch

+dd 0e78112b6h

+dd 0066cd687h

+dd 074f1b931h

+dd 02110770bh

+dd 092d87ab2h

+dd 0d530cb5fh

+dd 03bdaef7bh

+dd 0802bcca0h

+dd 0cb5e7ec6h

+dd 07605f2f6h

+dd 0fa387445h

+dd 064bcdabah

+dd 09f8efc2dh

+dd 0ef3d5591h

+dd 08ac65ae8h

+dd 0945adb67h

+dd 0d3b3ab20h

+dd 09da4231fh

+dd 0bcf72275h

+dd 0f7f29fbfh

+dd 06c8fe7c9h

+dd 0c39db06dh

+dd 0a6f924a3h

+dd 06437a0a8h

+dd 0cde56361h

+dd 03b2b4c14h

+dd 02a8e34f8h

+dd 06ce50809h

+dd 05a6d4550h

+dd 078b205f3h

+dd 0d5076889h

+dd 0699d90cah

+dd 0362f54b2h

+dd 04c5372ech

+dd 02d72921fh

+dd 0a236b9f6h

+dd 0ffef3c7ah

+dd 0d05b36a0h

+dd 010635d59h

+dd 0bef34e0fh

+dd 00979c6d8h

+dd 0ebf0f620h

+dd 00402e2aah

+dd 018bc8547h

+dd 0a333856ah

+dd 01c0539c4h

+dd 0ad34c903h

+dd 0bb29b872h

+dd 0d3a2e1e2h

+dd 02facfc7fh

+dd 032e77ac5h

+dd 0752932ddh

+dd 0ba362cd8h

+dd 07ff58ebdh

+dd 086a5bfaeh

+dd 0a5a3fe68h

+dd 0cb10b5dah

+dd 0c86046e1h

+dd 02c76b33dh

+dd 0a968f0e9h

+dd 0ff7cdecdh

+dd 098600a64h

+dd 015044d71h

+dd 039400d1ch

+dd 01a4599c4h

+dd 00ff13287h

+dd 060adfc24h

+dd 0993ea755h

+dd 00f644333h

+dd 0a776ae12h

+dd 02f79cc76h

+dd 0e5846ddbh

+dd 059c3fa35h

+dd 0b14d23d1h

+dd 0c78ed95ah

+dd 0c78c97d4h

+dd 075f0d2b9h

+dd 0ea3a7390h

+dd 0e4ec4ef1h

+dd 0defb62bfh

+dd 02d2a5c4fh

+dd 05f0d0a70h

+dd 06786697ch

+dd 084ced9a9h

+dd 06cd40e4ch

+dd 0750beef9h

+dd 0c0c4d178h

+dd 04dee1055h

+dd 0b60248c2h

+dd 06cd888c7h

+dd 07c9e9a18h

+dd 05d732bf7h

+dd 002e24370h

+dd 0aab0adddh

+dd 0215b7ec8h

+dd 072e78ce3h

+dd 00833b984h

+dd 03eb2a039h

+dd 0ee52df8eh

+dd 0ea64448fh

+dd 04cbb1dcdh

+dd 03b039d8ch

+dd 036092482h

+dd 04e048256h

+dd 0156d6d92h

+dd 07952918dh

+dd 0ba64cdf0h

+dd 0ea7be090h

+dd 0b229b0f3h

+dd 093d14e97h

+dd 092a684d6h

+dd 0408ee890h

+dd 064d045d0h

+dd 0619a466eh

+dd 0a0df1ad0h

+dd 0ad5e1720h

+dd 034001c31h

+dd 0ade11041h

+dd 060357bb6h

+dd 0c9877118h

+dd 023ae9314h

+dd 0d3326958h

+dd 0cbea0a84h

+dd 0a06ac597h

+dd 0293e8e6ch

+dd 02e8b65fah

+dd 0a62e3bf7h

+dd 084642dfah

+dd 0934df44ch

+dd 0d64ffa8fh

+dd 0eb5c7400h

+dd 096a7339dh

+dd 0a03fb026h

+dd 0f6dd3c40h

+dd 022a09256h

+dd 06219d21eh

+dd 0e92f7df3h

+dd 022d1d3bbh

+dd 0e89444a0h

+dd 077fb900eh

+dd 0feaaaf1ch

+dd 0b2c2a52fh

+dd 068c625f1h

+dd 030f0b1b0h

+dd 07c208828h

+dd 04902c1c3h

+dd 0da14c3bbh

+dd 0d7c55e23h

+dd 0d934719ch

+dd 084b404f0h

+dd 0d3f145a2h

+dd 065126039h

+dd 0f21a1be6h

+dd 0105dae27h

+dd 0e0a7c9deh

+dd 044e6078bh

+dd 04423899eh

+dd 00cbb664eh

+dd 0a02005fdh

+dd 00f464bcah

+dd 057d36150h

+dd 0dbf5f47fh

+dd 0437b6bc7h

+dd 056e90966h

+dd 07f62ca3fh

+dd 02d66cf50h

+dd 0cd14e14eh

+dd 02705df49h

+dd 0e218da89h

+dd 03edca257h

+dd 03ffcbd03h

+dd 07472febah

+dd 0afcd703bh

+dd 082b5c99eh

+dd 0af6d2bcah

+dd 0fbf2cea6h

+dd 02a19c442h

+dd 01c7a1046h

+dd 01da4ad4ah

+dd 009561f84h

+dd 096e9284fh

+dd 005864aach

+dd 043f430e5h

+dd 05ae3d44ah

+dd 0ae86628ah

+dd 03e6c0badh

+dd 0b5095e8ch

+dd 07d2295eeh

+dd 084403eaeh

+dd 0eaee1418h

+dd 029a95174h

+dd 02e390c6fh

+dd 07b83fca1h

+dd 019f1c0a7h

+dd 023bf642ch

+dd 04083d14eh

+dd 0c8407cb5h

+dd 0aaead88fh

+dd 0bef79240h

+dd 017fe90ebh

+dd 0da208904h

+dd 091f7cb50h

+dd 08149b663h

+dd 03f3bcf29h

+dd 001e5fcd7h

+dd 0c9f127eeh

+dd 06493e9ebh

+dd 0201be98bh

+dd 095fc54aah

+dd 0ee7398e1h

+dd 038731195h

+dd 0a8772c23h

+dd 026a06f09h

+dd 0f3ad29e6h

+dd 0bf86e569h

+dd 01acec1f6h

+dd 0c8241823h

+dd 01e454418h

+dd 0b0345451h

+dd 0598c6b77h

+dd 0949537b4h

+dd 00224147fh

+dd 01859d259h

+dd 03b3efb0eh

+dd 020c2d460h

+dd 00a2eda5ah

+dd 058ffc09eh

+dd 0a9efba2dh

+dd 0aa6817e9h

+dd 0ab0040dbh

+dd 0a3a7a2f4h

+dd 0b00f7025h

+dd 0ddf9668bh

+dd 0fa602a92h

+dd 03dbcebd7h

+dd 098370bb7h

+dd 0adfd81e1h

+dd 0d0925bc7h

+dd 07c2894a9h

+dd 038cca04eh

+dd 0a021fd30h

+dd 07f4b1fc4h

+dd 092d181a4h

+dd 0a5b3517dh

+dd 01a9276feh

+dd 0a9e83a4bh

+dd 0d5cbe973h

+dd 03993c0b2h

+dd 0e108ad39h

+dd 0a4146e49h

+dd 01b294706h

+dd 0444fcff4h

+dd 014624907h

+dd 0b7982780h

+dd 0dcb34628h

+dd 08b2bd5fbh

+dd 01d73ff05h

+dd 0a62f04cch

+dd 0b28da84ch

+dd 075c9754ah

+dd 01434cdcbh

+dd 019b74477h

+dd 07fc48befh

+dd 05edaf76eh

+dd 06d55789dh

+dd 00bcf0711h

+dd 0e01240dbh

+dd 0ee061c96h

+dd 066c77fd1h

+dd 0caf76540h

+dd 07e0f7791h

+dd 0e76f60f9h

+dd 0526b3c54h

+dd 044d79680h

+dd 084be45feh

+dd 0e10361bdh

+dd 0c9021807h

+dd 0545102dfh

+dd 0ff85b6d3h

+dd 005a10203h

+dd 0c8fe5be0h

+dd 08fb57b08h

+dd 0a598a1c9h

+dd 0dac0c503h

+dd 0dd2e19edh

+dd 0972d4c95h

+dd 08be9c6efh

+dd 0537b1707h

+dd 01b00826dh

+dd 052887d44h

+dd 077e09021h

+dd 05059f87eh

+dd 0a58fe5afh

+dd 0e9ee8a8ah

+dd 0cc9abc8eh

+dd 068ec09adh

+dd 005b07e04h

+dd 08c52dd3dh

+dd 0ac2ca53ch

+dd 0b54fbfdbh

+dd 091f8607dh

+dd 0d9acad43h

+dd 0b350465dh

+dd 04d7dd0c2h

+dd 019199566h

+dd 09f41d878h

+dd 09053218bh

+dd 0a83e4cd3h

+dd 0f5851010h

+dd 02c1c8a6ah

+dd 0dea8716ah

+dd 0db037961h

+dd 061960184h

+dd 0c287ebb2h

+dd 0ba479939h

+dd 0dcb04647h

+dd 0051af176h

+dd 0f8119d7ch

+dd 0b64d4a16h

+dd 051f2a592h

+dd 097b9ed00h

+dd 0033d6c14h

+dd 062abfd86h

+dd 033a6764bh

+dd 08012edb1h

+dd 05d8259bbh

+dd 00bcb3336h

+dd 0d9605158h

+dd 095e266f8h

+dd 067ad3093h

+dd 0435bb90ah

+dd 04b0c5b3dh

+dd 0dc946e42h

+dd 0fafecfedh

+dd 0c2d44cf1h

+dd 00faf22fdh

+dd 0621c5262h

+dd 0688da8fdh

+dd 0d9e19e44h

+dd 0bce8a339h

+dd 0879ff162h

+dd 0a67cd1f5h

+dd 001680393h

+dd 0a3f6b97eh

+dd 0b12d6a8ah

+dd 0067b6264h

+dd 082afd4f6h

+dd 08c9f22e7h

+dd 0e32ee661h

+dd 077542706h

+dd 0a26ca367h

+dd 016d3f58eh

+dd 08a26ec34h

+dd 091b44ccbh

+dd 0029237eah

+dd 0e1b375ddh

+dd 0a0ba2be9h

+dd 0752c0eeeh

+dd 0dcb8b5c9h

+dd 04b79ff7dh

+dd 0bee8965bh

+dd 0ef579429h

+dd 02c8a53b7h

+dd 0c12a85bbh

+dd 00afacb61h

+dd 07498b14eh

+dd 0f3885df6h

+dd 0a34f42b6h

+dd 04e9da34bh

+dd 086bf021bh

+dd 0a176f969h

+dd 0a6d7e94eh

+dd 015928ce6h

+dd 048bb767bh

+dd 08d695729h

+dd 00c9a2dcah

+dd 050a5c055h

+dd 07be50800h

+dd 0e3dc28d8h

+dd 0a8fc918ah

+dd 0c44ef641h

+dd 0be3cef78h

+dd 0378369b8h

+dd 0c6aec6eeh

+dd 076a0c091h

+dd 0144a39fbh

+dd 0eda9a9d6h

+dd 0fd8926e6h

+dd 01a9e213fh

+dd 03111ee7dh

+dd 03c9633eeh

+dd 0d76bbcb6h

+dd 00f15f230h

+dd 017872d1dh

+dd 0fe80bbf6h

+dd 07eca3d2ch

+dd 05ab14e53h

+dd 0c6e17317h

+dd 0d6a3d90fh

+dd 0776218d7h

+dd 0dca552ceh

+dd 025ae551ch

+dd 019a7d510h

+dd 0ee379a9bh

+dd 0d34c3938h

+dd 04ba6d868h

+dd 0a6a1d9adh

+dd 0c25ce10eh

+dd 059189269h

+dd 0e411a05eh

+dd 06a1cf4a2h

+dd 0628c6425h

+dd 0c9fbbd0ch

+dd 03f2b148eh

+dd 0c4ca192ch

+dd 075b0b440h

+dd 05dedec14h

+dd 0298960a8h

+dd 0043c60b4h

+dd 07fa78f8eh

+dd 0d0684a62h

+dd 0d10727b6h

+dd 046a5870ch

+dd 0332c6d9ah

+dd 086a3643ah

+dd 0b31bd751h

+dd 0d7297a92h

+dd 03db51814h

+dd 01bd56b97h

+dd 0c4db77b7h

+dd 09fba0141h

+dd 04b77ee9eh

+dd 03d43c2ceh

+dd 0d8e86b2dh

+dd 0baca2056h

+dd 05a2874d4h

+dd 01d774039h

+dd 0a4c8b6d5h

+dd 07db32d71h

+dd 0ce1af545h

+dd 031326375h

+dd 0a7f2be33h

+dd 04d9f96cdh

+dd 054ec9a03h

+dd 096aaf25bh

+dd 0aa11ac3ah

+dd 0963f753eh

+dd 0512c93cch

+dd 0178bcb73h

+dd 0da1ed005h

+dd 02dfd4526h

+dd 0405dcd2dh

+dd 0979a34bah

+dd 020b04d5eh

+dd 0ccc62b4ch

+dd 006c4e8f6h

+dd 0eb10a573h

+dd 0698132d3h

+dd 0f00026a3h

+dd 08e279c20h

+dd 0bc9a0335h

+dd 0b7b5c788h

+dd 02da8465fh

+dd 0d5cc3478h

+dd 026dfae79h

+dd 011a3c180h

+dd 09362550dh

+dd 0e1b9a48ch

+dd 01a443903h

+dd 0863d42f1h

+dd 0531667d5h

+dd 037e5dadeh

+dd 0b3fac18eh

+dd 0e814a02fh

+dd 05ef88ea6h

+dd 090116b3bh

+dd 051b95cf7h

+dd 077c05edeh

+dd 0efb43f57h

+dd 07dd3acfah

+dd 098176d9eh

+dd 068043dcdh

+dd 0a0bf10eeh

+dd 0c1a4a62fh

+dd 0527d3afah

+dd 0dffca91ch

+dd 090616132h

+dd 082981f1fh

+dd 0c448b533h

+dd 05608c3dch

+dd 01ebaba85h

+dd 0942eb56dh

+dd 0a2654581h

+dd 0b6804d3ch

+dd 04759c593h

+dd 0d7f9879eh

+dd 085475da0h

+dd 08db3cf90h

+dd 01afd83b6h

+dd 00a885fb0h

+dd 0c3ec8221h

+dd 082fad008h

+dd 0dba47f77h

+dd 0fa11ce1dh

+dd 09c98ba97h

+dd 0339b0959h

+dd 0eac40432h

+dd 051a2d20bh

+dd 09b9319bch

+dd 06f54f47eh

+dd 06eb845a5h

+dd 0f08831a1h

+dd 0b90bbe9ch

+dd 0556bdc54h

+dd 0680fe343h

+dd 02ce5bdcbh

+dd 05f633e92h

+dd 08b607426h

+dd 07e996959h

+dd 0d4d14d48h

+dd 0093095dfh

+dd 037a94fcah

+dd 01fe66c52h

+dd 06cc9b474h

+dd 093365d71h

+dd 08484f72ch

+dd 033722914h

+dd 0a6c05fa9h

+dd 023b847cch

+dd 02481d104h

+dd 0a9413b5eh

+dd 05137c47dh

+dd 053964763h

+dd 03a5c936ch

+dd 018184903h

+dd 0f9920263h

+dd 0f9abc372h

+dd 0c00de1b4h

+dd 097cbbe08h

+dd 0c07432c7h

+dd 0b8c85315h

+dd 0c911353eh

+dd 04bc3ae4ah

+dd 0895bc9bah

+dd 095276c4ch

+dd 065e05634h

+dd 066caedf7h

+dd 0df19e754h

+dd 0c161ddach

+dd 04dafb917h

+dd 0e149babch

+dd 021fe464bh

+dd 0dc2720efh

+dd 09870508dh

+dd 0d7196246h

+dd 0ca55a966h

+dd 02e72f5f3h

+dd 0b70800b0h

+dd 01c086007h

+dd 02ec41c24h

+dd 0f22f9277h

+dd 097aaaeb6h

+dd 02d6e933eh

+dd 0e4f04067h

+dd 073a2c0c3h

+dd 0f7c150c1h

+dd 00ebb7193h

+dd 023806927h

+dd 0335abe07h

+dd 05d00a8fah

+dd 03c381505h

+dd 0309f7be1h

+dd 0d3b9f226h

+dd 0aa564c25h

+dd 0e419bcbfh

+dd 0db3428bch

+dd 0631d0d75h

+dd 0ea6528eah

+dd 02703f165h

+dd 00ed69ae9h

+dd 0130ba0c4h

+dd 056528d34h

+dd 01bf0d319h

+dd 070d7413fh

+dd 0f34b14efh

+dd 0b0a3f750h

+dd 0a24d4ce0h

+dd 0d7b94f5ch

+dd 02eac2addh

+dd 0238a97bah

+dd 0575d65d7h

+dd 0c8835932h

+dd 0310885deh

+dd 07635e74fh

+dd 07a641f28h

+dd 0c53bb16eh

+dd 05ece5fd4h

+dd 0960fd4dch

+dd 0f913c8aah

+dd 0fcdbaaa5h

+dd 0dbabdd89h

+dd 0163e25fbh

+dd 0d0be7fa6h

+dd 0cc80e34fh

+dd 0b92bd949h

+dd 0ca82f046h

+dd 0916e2e51h

+dd 042b7f6f4h

+dd 012dc0027h

+dd 02baed9e8h

+dd 0c7431f5eh

+dd 00473a24eh

+dd 0b08c2c56h

+dd 0729279f9h

+dd 0b615c85bh

+dd 0bdc0dccch

+dd 0a276b22eh

+dd 099e2ed54h

+dd 0d1e0b692h

+dd 0f5bd3142h

+dd 0a9575b24h

+dd 0ca747175h

+dd 039891492h

+dd 0b9d483f3h

+dd 02d6ff6b6h

+dd 03e0b117bh

+dd 06e541629h

+dd 031b45ee1h

+dd 0f631dd45h

+dd 0e259bde4h

+dd 05417fa84h

+dd 01f06549eh

+dd 0b823a46ah

+dd 0a24eed44h

+dd 03e09ef70h

+dd 08726b7eeh

+dd 0561b1071h

+dd 086559bb3h

+dd 069f319b2h

+dd 0d8dbdcb7h

+dd 0d000f60bh

+dd 06de02d3fh

+dd 014e0a0b7h

+dd 0a1baecfeh

+dd 086ac7a17h

+dd 06419d3a6h

+dd 0b5831deah

+dd 07785eeb8h

+dd 0312b42f9h

+dd 03cf26abdh

+dd 0a6acfa99h

+dd 07955bb49h

+dd 087cb4b89h

+dd 05f042188h

+dd 0d185b1d0h

+dd 06b35c7cch

+dd 0dc5fbcb8h

+dd 06526f9e4h

+dd 095856a31h

+dd 00f56d597h

+dd 0c30e4e1dh

+dd 00215af48h

+dd 07ac9eab7h

+dd 0d2ed10bdh

+dd 0d326d3f8h

+dd 04612b109h

+dd 0ff558f3ch

+dd 099ed9ff1h

+dd 0405b2872h

+dd 065cc51c1h

+dd 085e8b952h

+dd 0456a45ffh

+dd 0c12a66e4h

+dd 0d8acbc39h

+dd 0fdc1b781h

+dd 0eda248a1h

+dd 0fa3e450dh

+dd 07ed7fd34h

+dd 0367dc04dh

+dd 09edeec34h

+dd 0a6393d20h

+dd 01af838d6h

+dd 05c52bf41h

+dd 0c85f6bc9h

+dd 076c8407ch

+dd 05f1cd75ah

+dd 00e056b7ch

+dd 0da96be62h

+dd 094a78984h

+dd 0c0c56caeh

+dd 032766930h

+dd 0eb45b27bh

+dd 093a0fce7h

+dd 011fb49e5h

+dd 0e4518650h

+dd 01c881206h

+dd 05aba21ceh

+dd 0ff0ca0bah

+dd 0e0883e0ch

+dd 0d1eb8611h

+dd 0b4150e6ch

+dd 060cb856dh

+dd 01b8c452fh

+dd 00cd1fd56h

+dd 0ffab039ch

+dd 0c4de8373h

+dd 05c25069dh

+dd 0b27a8dafh

+dd 01814d707h

+dd 02f06d336h

+dd 08e0490a3h

+dd 010f964d3h

+dd 0b17132e2h

+dd 057b6a57ch

+dd 0f2ab4d77h

+dd 02e20bb03h

+dd 0b3a79d27h

+dd 093d61200h

+dd 0abb0d957h

+dd 03ae4a20ah

+dd 04eee1b2ch

+dd 082cbb24fh

+dd 0abb399a2h

+dd 0c6038085h

+dd 0aa1a4fc5h

+dd 0f1ca1971h

+dd 03148b3c0h

+dd 0d4b0832ch

+dd 0dd4d5c28h

+dd 057dea344h

+dd 09373eb90h

+dd 0787bda09h

+dd 088c0687ch

+dd 004f82730h

+dd 079ba63c0h

+dd 070c26fb4h

+dd 0d9b11c06h

+dd 091b058d1h

+dd 04a2fe77bh

+dd 0dbc6cc38h

+dd 0165173d6h

+dd 05d41382ch

+dd 0468c6e65h

+dd 006e50c1ch

+dd 0f8336fb4h

+dd 0f440686bh

+dd 006902485h

+dd 066a6ab88h

+dd 09ee68ae7h

+dd 046200a1ah

+dd 033e926b0h

+dd 0fc274816h

+dd 0da8fbef0h

+dd 008159b65h

+dd 00cd6567ah

+dd 0836192cfh

+dd 0d727df32h

+dd 0040bb588h

+dd 0286ac112h

+dd 03da3e412h

+dd 09e02fdbfh

+dd 0e998fdb6h

+dd 046e443a6h

+dd 096191f1bh

+dd 001c6ba40h

+dd 015733858h

+dd 05605c55dh

+dd 0744ed62ch

+dd 04b917a66h

+dd 0d05b823fh

+dd 0e6c9efcch

+dd 0d7c323a6h

+dd 08719d0dfh

+dd 0e59801a2h

+dd 0fc0d38d4h

+dd 079f49bb2h

+dd 00ef518d0h

+dd 072169b02h

+dd 09745966ch

+dd 074bb1107h

+dd 0a367b86dh

+dd 00a015134h

+dd 0b020957fh

+dd 06c3c7bfch

+dd 089a9ef96h

+dd 0229e45a4h

+dd 06e9c365ah

+dd 09f39e32ah

+dd 04d52b866h

+dd 08262a30eh

+dd 076897ab5h

+dd 020e94726h

+dd 0042d5580h

+dd 0a76d4c78h

+dd 088e7f948h

+dd 05e262a32h

+dd 0c87f924fh

+dd 0292e17f9h

+dd 0dc046ed7h

+dd 0f31b63a6h

+dd 0e5516180h

+dd 0240e915fh

+dd 0c807a5f2h

+dd 0bd9aed44h

+dd 001083de0h

+dd 0fde4ae9fh

+dd 0359b7be2h

+dd 09d8f88e2h

+dd 06373be78h

+dd 02cc99ba1h

+dd 0122872d4h

+dd 007852e98h

+dd 0f091faadh

+dd 0063f720fh

+dd 0e2f7e2b7h

+dd 0f9ed22d8h

+dd 0b3520058h

+dd 010d888c4h

+dd 08f210eebh

+dd 01f502982h

+dd 0012da1d2h

+dd 0ac846dcch

+dd 03ed876cah

+dd 053612b00h

+dd 074d4ccebh

+dd 0b247706bh

+dd 09552e43fh

+dd 0b08278c4h

+dd 0f11c0251h

+dd 0ae78fc8dh

+dd 0b7c4ce71h

+dd 02c3f68e3h

+dd 0d626dfa3h

+dd 000335bb1h

+dd 049353d0fh

+dd 063a6cbc8h

+dd 0e948786bh

+dd 07e3b34d0h

+dd 088c0506dh

+dd 095634a84h

+dd 06499cb13h

+dd 0b46248a6h

+dd 0a9b585b6h

+dd 0b690d304h

+dd 0e93bd93eh

+dd 07401cbc1h

+dd 081b059f5h

+dd 039caaf4ah

+dd 0442eab78h

+dd 0c91a2859h

+dd 0bcb909fch

+dd 091f41f56h

+dd 0abb30995h

+dd 00b30f7f6h

+dd 0659f2ba2h

+dd 0c147708dh

+dd 042875e9ch

+dd 0289ad976h

+dd 061c53cb9h

+dd 06fe06bc7h

+dd 093679e5ch

+dd 0210a345fh

+dd 027251879h

+dd 0ed0f9626h

+dd 00a82c054h

+dd 0a39e8649h

+dd 03f25a316h

+dd 08a5904bfh

+dd 084e68710h

+dd 03d979517h

+dd 0171e1208h

+dd 0658b2d23h

+dd 043770421h

+dd 01ab899ebh

+dd 072205257h

+dd 0e9ee5184h

+dd 0a6d45975h

+dd 0aa7ec833h

+dd 0a1d1377bh

+dd 0fd7692b8h

+dd 042f8aea7h

+dd 05e5e7fd8h

+dd 0e08dd1bdh

+dd 0281e921ch

+dd 0f79f7a28h

+dd 06adebceah

+dd 0baaa9488h

+dd 09b425a9ah

+dd 04fb3aa6eh

+dd 00a7b17b5h

+dd 0ee98c054h

+dd 04de1b7ceh

+dd 01a41c399h

+dd 05c98ec4ch

+dd 0ab7cd102h

+dd 070d025adh

+dd 044128974h

+dd 0235a9276h

+dd 0b80acefdh

+dd 054e2e182h

+dd 0b3af3c46h

+dd 0e8f36ba9h

+dd 07a9aca37h

+dd 0632b3f49h

+dd 047f5205eh

+dd 0e30b272dh

+dd 07894a392h

+dd 0e29b3a8bh

+dd 01cd40b43h

+dd 0cefb6b48h

+dd 0e08cc279h

+dd 07d6b3d65h

+dd 04268d1d9h

+dd 062cb8110h

+dd 0453d1557h

+dd 08517381ah

+dd 064ffe559h

+dd 097b126fdh

+dd 03ba82035h

+dd 004baab5eh

+dd 03a454465h

+dd 0de842b6bh

+dd 0a7b95ea4h

+dd 024dab816h

+dd 0441c6b0dh

+dd 06600e3dch

+dd 0b0a23991h

+dd 0d88596b7h

+dd 041647030h

+dd 0735d8c72h

+dd 06c678e5dh

+dd 00315944eh

+dd 0db471680h

+dd 08333bbfeh

+dd 0dfb9ccadh

+dd 093b51ecch

+dd 01a339a13h

+dd 06fed48b1h

+dd 00e485c66h

+dd 033f510e6h

+dd 0801d4a82h

+dd 0f88a96edh

+dd 022188cb2h

+dd 0de163c2ch

+dd 007edfd64h

+dd 02f790e5ah

+dd 08641b5a6h

+dd 09188be9ch

+dd 049d3d3efh

+dd 0b489e0e0h

+dd 0341f5b48h

+dd 0ccb5294bh

+dd 026ec765fh

+dd 0e6187074h

+dd 0519b4e67h

+dd 043190bbeh

+dd 013013351h

+dd 0c191f962h

+dd 030e6ee17h

+dd 0b9903108h

+dd 0bd338721h

+dd 001600cech

+dd 0b48732b9h

+dd 04d68b762h

+dd 0c9678dffh

+dd 01c9e1927h

+dd 094c39442h

+dd 063fe31a3h

+dd 084ce8d5dh

+dd 063efbdf0h

+dd 0a30d10bbh

+dd 0eeaf12ach

+dd 0ebf5f398h

+dd 050153b1ch

+dd 02b6bcb48h

+dd 0db22e432h

+dd 0d9d920e1h

+dd 0195d1f78h

+dd 086292209h

+dd 03db41d6eh

+dd 01238bf81h

+dd 0f3bb59c9h

+dd 0dfcc7d5fh

+dd 0cf1ff16dh

+dd 08fab9135h

+dd 0f0bb0dd1h

+dd 0a7ac23e1h

+dd 0a1117149h

+dd 0de2ac0efh

+dd 071d9046eh

+dd 002a13cb3h

+dd 0bd0d3cc3h

+dd 020230536h

+dd 067f855a1h

+dd 0a3869eb4h

+dd 0203e898eh

+dd 044c3b291h

+dd 087fa39e6h

+dd 0882bbb9dh

+dd 0124f6934h

+dd 02bd85dafh

+dd 05f2f6e2dh

+dd 035d5fc9ah

+dd 0830d126eh

+dd 09a56805eh

+dd 01154a283h

+dd 08c9bb8aeh

+dd 0f490ec82h

+dd 01eedc7e3h

+dd 02852264dh

+dd 0ec957c00h

+dd 013969be4h

+dd 037895503h

+dd 01e5c8888h

+dd 04dfbb299h

+dd 0687a374ah

+dd 090e40db8h

+dd 057d30e09h

+dd 0b7b71cddh

+dd 030cadb45h

+dd 098e130cfh

+dd 056659457h

+dd 07998d64ah

+dd 072f35708h

+dd 0a4d4d692h

+dd 00be5933ch

+dd 0beda1fe7h

+dd 0a3adae35h

+dd 0ef34ce9ch

+dd 07c080e4fh

+dd 01ba9d3a4h

+dd 01b63c320h

+dd 0a6419422h

+dd 00d484009h

+dd 01d413d27h

+dd 0e4af3a82h

+dd 0a401e5edh

+dd 0954b3070h

+dd 05c60c2c1h

+dd 04d406cbah

+dd 0bc4a0ccah

+dd 0ed45bca5h

+dd 0ee1ada7bh

+dd 0ccd5f274h

+dd 04ab6002ch

+dd 06d0cb710h

+dd 0fa6e52c5h

+dd 0989c5cf3h

+dd 0c02bf04ah

+dd 050fcb8d1h

+dd 028287931h

+dd 0ef1dee5ah

+dd 030f3fa5dh

+dd 0834ad084h

+dd 0d48651cch

+dd 08c2417eeh

+dd 0bbbfe25eh

+dd 038427579h

+dd 0437ab089h

+dd 0b5bfecd7h

+dd 0050b89a4h

+dd 046cf61e0h

+dd 0e2eb89c8h

+dd 03a2099c9h

+dd 07bc91672h

+dd 0706ce631h

+dd 07f96bf84h

+dd 0ae61279ch

+dd 005ca4afch

+dd 006ae398bh

+dd 04beba6d5h

+dd 06428b894h

+dd 0c4d02880h

+dd 027624d9fh

+dd 05c7a1f65h

+dd 07f6221c8h

+dd 0982d1b0bh

+dd 0c56c53e0h

+dd 043c25a78h

+dd 06416914bh

+dd 0b4ceb767h

+dd 04f87a8dbh

+dd 03f8a6b89h

+dd 0eb5d746eh

+dd 0c5c87f7dh

+dd 065676fcah

+dd 07b1126b3h

+dd 0095aab68h

+dd 08c8d4743h

+dd 00e973691h

+dd 0cc7e2979h

+dd 07e97f35bh

+dd 09d60506bh

+dd 0046add9ah

+dd 08aa90878h

+dd 09e829cd5h

+dd 0e667217ah

+dd 04b545f4eh

+dd 0e2922511h

+dd 068c03a17h

+dd 08eb9af79h

+dd 0d47ee35eh

+dd 07eef9e23h

+dd 0cf6bbec2h

+dd 0988faae8h

+dd 0365ce11dh

+dd 0fa8f1eaeh

+dd 02f74dc6ch

+dd 0bdff4b22h

+dd 0b8064362h

+dd 063dd96cdh

+dd 0e77cb2cbh

+dd 00abe465ah

+dd 08d5112dch

+dd 02d60a3eah

+dd 0dad4c1bbh

+dd 05bcec5e4h

+dd 020d658c5h

+dd 05bfa1e33h

+dd 09c5f2eb0h

+dd 0c0fa2de7h

+dd 07dd63859h

+dd 01e181c17h

+dd 0b6d0dc9bh

+dd 0d95ba600h

+dd 01956c489h

+dd 091b9bb86h

+dd 0a06ce59fh

+dd 06a84f582h

+dd 02f2ea483h

+dd 00e7d9772h

+dd 069f42c3eh

+dd 061c590f9h

+dd 05f6718fdh

+dd 0d96fcc11h

+dd 0a3d60b49h

+dd 027f87b6fh

+dd 03000233ah

+dd 09d362ce1h

+dd 0db44e506h

+dd 0cb4f9e9eh

+dd 07e6fefa2h

+dd 06a22a599h

+dd 0370bb6fah

+dd 09e897000h

+dd 026ea0902h

+dd 05e8dc025h

+dd 01d1d8095h

+dd 0c8a854bfh

+dd 0bfe46bdfh

+dd 083d1a789h

+dd 0615c2061h

+dd 07d83b0fdh

+dd 03aeff2afh

+dd 0ff0f3de5h

+dd 075210842h

+dd 0af2f40dah

+dd 09cee2991h

+dd 012bfd379h

+dd 03368aed7h

+dd 080da0082h

+dd 0113a0966h

+dd 030ddaf6eh

+dd 0b403754ch

+dd 0d2b51343h

+dd 07a90dbbch

+dd 0c4e3cd43h

+dd 06df0f4a5h

+dd 00dfd5283h

+dd 0357fb861h

+dd 081dd20aeh

+dd 019ca34e2h

+dd 0e4d1dcech

+dd 0f93a68f8h

+dd 0eacea62fh

+dd 003a00fa1h

+dd 00cb3c72eh

+dd 0ba5c2a04h

+dd 06c6a8acah

+dd 0e8e6560eh

+dd 0ce532e22h

+dd 05cb428fdh

+dd 03433963fh

+dd 0916e200ah

+dd 0675c8b56h

+dd 074fb6890h

+dd 04113bcd0h

+dd 0411ca2f7h

+dd 0fe64a568h

+dd 0b1a51ba9h

+dd 0ccececebh

+dd 0276b0a47h

+dd 0322b2fdch

+dd 005717015h

+dd 03cf57e7ah

+dd 04987f541h

+dd 076c6b9ebh

+dd 00a9f46d6h

+dd 021d57541h

+dd 0a8dc9af0h

+dd 025739d3ah

+dd 010e8bea4h

+dd 0cb654903h

+dd 0e5cab22fh

+dd 01bacf32ch

+dd 07038d5cfh

+dd 017805177h

+dd 0a66faec7h

+dd 0a734c875h

+dd 0c5000e7fh

+dd 0ef507d85h

+dd 0b25d909ah

+dd 0170e4bb6h

+dd 00d6da5c1h

+dd 0359a08afh

+dd 071780e78h

+dd 0aa1cbd46h

+dd 07582edfch

+dd 00654f27ah

+dd 0e7e377f8h

+dd 06ae14efch

+dd 0ebc7da68h

+dd 0293936e4h

+dd 0004c1ca9h

+dd 0ca5574f0h

+dd 0ef3033e4h

+dd 055becbc0h

+dd 0e0385110h

+dd 0293b30eeh

+dd 04862dda8h

+dd 0baba6ed0h

+dd 0e4927bach

+dd 09ddb64cch

+dd 057701dfbh

+dd 0ce491a4ch

+dd 03101bb25h

+dd 07795c230h

+dd 0e5ba1e89h

+dd 09d195416h

+dd 0e3d2df9eh

+dd 0ce3d0abbh

+dd 058ed75dbh

+dd 097d8fb40h

+dd 0a8685706h

+dd 0f39fd570h

+dd 0d523241ch

+dd 0890fba37h

+dd 04250caefh

+dd 026c4718fh

+dd 056d6a1b4h

+dd 04d6150bfh

+dd 05b8208ceh

+dd 081067a88h

+dd 0bfc7c896h

+dd 06c556479h

+dd 08b62a676h

+dd 0126b12b9h

+dd 096cfc26ch

+dd 072f7d164h

+dd 0014b9e78h

+dd 0da71c7f1h

+dd 00b07c758h

+dd 0236465e8h

+dd 055e35413h

+dd 0b6900f45h

+dd 0085363c4h

+dd 050e71f6eh

+dd 08a1e77d5h

+dd 0b99149eah

+dd 0452db1c0h

+dd 0fe0b4637h

+dd 0da6f1f64h

+dd 024f8875bh

+dd 0a21fb658h

+dd 0a4f526b1h

+dd 047150f5dh

+dd 0d0ee85b4h

+dd 02a2d92d3h

+dd 007650f05h

+dd 0ff59400dh

+dd 0aefcc2bbh

+dd 061cc939eh

+dd 030e5430dh

+dd 07082191ah

+dd 044e51b92h

+dd 0bee40d62h

+dd 080a0d321h

+dd 022b2207fh

+dd 00ac2a012h

+dd 0262c99e7h

+dd 00806f752h

+dd 09c405425h

+dd 0e17fe8eah

+dd 0e1bd3731h

+dd 0bf4f0a38h

+dd 090962010h

+dd 09187f696h

+dd 039aa1494h

+dd 0cff3984eh

+dd 033aec5ceh

+dd 06f208d1ah

+dd 0a24cc962h

+dd 031624188h

+dd 0b08536c9h

+dd 04f61c4b2h

+dd 0cd67ef9fh

+dd 02d26d62fh

+dd 02e7b004ch

+dd 017b80641h

+dd 063c67d4dh

+dd 03f817817h

+dd 02f299c69h

+dd 05d440dfeh

+dd 0488ec8e9h

+dd 06ae1919fh

+dd 039dd5b50h

+dd 0ece62468h

+dd 01617e4c3h

+dd 063753640h

+dd 08dab6586h

+dd 0dfc60fffh

+dd 015e75cadh

+dd 01ac8003bh

+dd 0984b8175h

+dd 0f9c846d7h

+dd 084462488h

+dd 055afd9bch

+dd 0ea03788fh

+dd 0f9c3a0f5h

+dd 0538c6dbdh

+dd 0e3ad8664h

+dd 05214f381h

+dd 0ab3d6694h

+dd 0caffb428h

+dd 0ed8a8ee4h

+dd 0d889f537h

+dd 051eab98bh

+dd 0e3277486h

+dd 031976dd1h

+dd 0769ef456h

+dd 0dcce96f6h

+dd 0f201dd17h

+dd 03ecfecc8h

+dd 0698af599h

+dd 006c4fa8dh

+dd 005f9c921h

+dd 09acb0305h

+dd 03bcb736dh

+dd 0dd156dd3h

+dd 0b48d9519h

+dd 0f238344ah

+dd 00ec8031bh

+dd 07de67e19h

+dd 0bdab824fh

+dd 0074a4f05h

+dd 0ffd4bf2ah

+dd 00d9dae7ah

+dd 06d6e82b1h

+dd 0fd276a0fh

+dd 06a1792bch

+dd 04c5ce9bbh

+dd 051952245h

+dd 07ee8e2c4h

+dd 0f17f7cf5h

+dd 0f43be4c1h

+dd 0db64cf17h

+dd 00dcb4fbbh

+dd 00e56f3b1h

+dd 0626052a1h

+dd 0ca19a115h

+dd 0dfc3cd89h

+dd 0ed0f6369h

+dd 0b7447610h

+dd 0f1189d7ch

+dd 0e41dc575h

+dd 04277e7b3h

+dd 0cc927c69h

+dd 08512f4cch

+dd 0008fb277h

+dd 0c0593155h

+dd 007bb6296h

+dd 0133767c8h

+dd 01c6903eeh

+dd 006f7dd16h

+dd 07cdb99bch

+dd 0ac94c879h

+dd 08b6b7ecbh

+dd 098c12538h

+dd 015ffdbd5h

+dd 03cf63da0h

+dd 0f7a61c68h

+dd 0bbde92e5h

+dd 0c4d4fd83h

+dd 066e57c46h

+dd 0b5882fa1h

+dd 07d0d43e8h

+dd 01a00994dh

+dd 0fba42874h

+dd 0a76c238eh

+dd 0883ce2c3h

+dd 028c7c0b0h

+dd 051a04850h

+dd 0d06fc8d1h

+dd 03c38f37ch

+dd 0cb3008c1h

+dd 029b1836ch

+dd 0cfd0b28ch

+dd 035e7b918h

+dd 006b44661h

+dd 0ed7b1dbch

+dd 09adeb951h

+dd 0f6826615h

+dd 08b34c763h

+dd 027f672c8h

+dd 056667682h

+dd 0ed884376h

+dd 0c370742dh

+dd 094658cb0h

+dd 0437f71abh

+dd 0c1321fd1h

+dd 00147ecd4h

+dd 00539fba9h

+dd 0971d71c2h

+dd 095b719cdh

+dd 008ae87ebh

+dd 0b7658e0fh

+dd 089a52deah

+dd 0e1b3964ch

+dd 0af3626aeh

+dd 0cc1bfea2h

+dd 0a4c852f0h

+dd 06db4a4dfh

+dd 0f3ba6f35h

+dd 0667c3ec3h

+dd 03f77e665h

+dd 094247945h

+dd 0d51025eeh

+dd 026f26ab8h

+dd 03ab4f4c8h

+dd 05b13f25fh

+dd 0699201a3h

+dd 026251bf1h

+dd 0b1cab4cbh

+dd 0451a5447h

+dd 070a6e56bh

+dd 050a3988fh

+dd 015438598h

+dd 0d17d3bb0h

+dd 03e412d9ah

+dd 00ce64444h

+dd 0cb254f8ah

+dd 0b531f273h

+dd 0690df4fbh

+dd 07b7eb706h

+dd 0abad0161h

+dd 07bd85704h

+dd 014846139h

+dd 0c6f206a7h

+dd 092e28adch

+dd 05c0dea49h

+dd 0a76f2d02h

+dd 029af0d38h

+dd 04e075798h

+dd 0f517af56h

+dd 01ca3a09bh

+dd 0cd35233eh

+dd 03b7cf647h

+dd 09df40159h

+dd 04fe3a6a5h

+dd 07ede63b9h

+dd 0eb05dae9h

+dd 0d26d4bd0h

+dd 0de0c6b0fh

+dd 0755c94dfh

+dd 016dca2adh

+dd 0b0fde1e8h

+dd 0be551e20h

+dd 07dd6fd5dh

+dd 08f09eefbh

+dd 0e26adf05h

+dd 003d7da1ah

+dd 070735b9ah

+dd 049283c93h

+dd 082c6c3d5h

+dd 091f7de14h

+dd 0f711f551h

+dd 09c91f8b1h

+dd 0dd355389h

+dd 00159f854h

+dd 06cfe5f07h

+dd 00c4da4e8h

+dd 0784ea027h

+dd 0917a8755h

+dd 0156f4debh

+dd 025d3f21dh

+dd 078749991h

+dd 095f1190eh

+dd 0b5ea87e8h

+dd 0091ed0e2h

+dd 08cf6b712h

+dd 0efdd562ah

+dd 010df37aah

+dd 019a76f7fh

+dd 098af35fdh

+dd 067ee399fh

+dd 0f2d0a2e9h

+dd 089537a67h

+dd 0fc989fc1h

+dd 0bde8e49eh

+dd 05597e450h

+dd 0e014b8f8h

+dd 00ae31baeh

+dd 00f69e522h

+dd 0e4a438abh

+dd 00f32cf3bh

+dd 09cbe6b23h

+dd 0f2fdc145h

+dd 020114241h

+dd 038995c41h

+dd 0113222ddh

+dd 063bbffbah

+dd 06f3191beh

+dd 0045de1c1h

+dd 0cf7407d7h

+dd 0bbc0cc05h

+dd 068db060ah

+dd 05edc41d9h

+dd 02a813088h

+dd 0c927e13dh

+dd 026d34c58h

+dd 0e3c2bd9ah

+dd 0197be58dh

+dd 0246b0a5bh

+dd 0dda289f1h

+dd 018869620h

+dd 09816627ch

+dd 0e24ba601h

+dd 02ec8ecafh

+dd 05712d203h

+dd 0a9ee9f6ah

+dd 0366c3f08h

+dd 0b5bdc31bh

+dd 00e05de68h

+dd 02853c828h

+dd 0cd91c08eh

+dd 0761be7fch

+dd 0054325cbh

+dd 031f6da59h

+dd 01d36840ch

+dd 00dc5b1b3h

+dd 0d4ff52dbh

+dd 094f4c68eh

+dd 035d0cdech

+dd 0b3a84890h

+dd 0ffd8671fh

+dd 054a0a638h

+dd 04f203cffh

+dd 05349d7d6h

+dd 0135ace55h

+dd 0e5a15e22h

+dd 090e52018h

+dd 01be5e431h

+dd 073b5c8a7h

+dd 05eaefc71h

+dd 07e87618bh

+dd 0a5665a6dh

+dd 0ed040865h

+dd 079631c5dh

+dd 0e7be8dach

+dd 08b3a461ah

+dd 03f5f3d31h

+dd 0fde7605ah

+dd 017651f06h

+dd 0fe73e3e4h

+dd 0501ba646h

+dd 0ac400fb6h

+dd 092f46464h

+dd 0434b6348h

+dd 0f4b34ec4h

+dd 023488968h

+dd 0e227d660h

+dd 0a815cd99h

+dd 095fcec3ch

+dd 0b62b8acbh

+dd 004a7bf35h

+dd 08edfc626h

+dd 0632d1585h

+dd 0f35bdf94h

+dd 0fc3790fch

+dd 0a02aff17h

+dd 0198a62beh

+dd 07f1a564ch

+dd 0c3d5bb0dh

+dd 0aebcb3d6h

+dd 092355893h

+dd 051f7741eh

+dd 057a277ach

+dd 051d26a8fh

+dd 07679f0feh

+dd 0cfd79c35h

+dd 07ab2c81ch

+dd 0d9aa63c7h

+dd 080f63cf7h

+dd 09d3203f7h

+dd 063348750h

+dd 097671c2dh

+dd 004b5f3e2h

+dd 032af5d0ah

+dd 0d0ec85eah

+dd 0946f8cach

+dd 0c949b655h

+dd 0c1f565fbh

+dd 0eccd15abh

+dd 06feac719h

+dd 0b1e8006eh

+dd 0a06c3d13h

+dd 075f0de5ch

+dd 061581915h

+dd 0dd459168h

+dd 0f0d26bdah

+dd 05edcd2cbh

+dd 075bd89c7h

+dd 02e7ffd75h

+dd 055c71a76h

+dd 0834afa3bh

+dd 0c542c40eh

+dd 0c801e312h

+dd 0fee6f014h

+dd 00901a27bh

+dd 011662898h

+dd 0beb49809h

+dd 0ae989e16h

+dd 068e34693h

+dd 0e1d710d6h

+dd 098c69505h

+dd 061c578f3h

+dd 013cbcd8dh

+dd 0fd8aae90h

+dd 057f3f49ch

+dd 094b5a297h

+dd 0b34d0784h

+dd 0a7a36713h

+dd 02af1e8d9h

+dd 0972e4763h

+dd 0890800dfh

+dd 0a12173d3h

+dd 0ac73f9b4h

+dd 08e24a44dh

+dd 09f7eb901h

+dd 0766767f7h

+dd 0f0db0015h

+dd 0fbc46bech

+dd 098d2b077h

+dd 078582169h

+dd 044a16de2h

+dd 01b478062h

+dd 0d8d75209h

+dd 0a7d278e5h

+dd 04c8ffcdeh

+dd 027f24c76h

+dd 093c020e9h

+dd 058812dc0h

+dd 080b129aeh

+dd 0027348bfh

+dd 04908be8ah

+dd 0df181780h

+dd 0ecc207e0h

+dd 00ae9d017h

+dd 0f2d3ca7fh

+dd 0cb088e9eh

+dd 0ea275d14h

+dd 05ce9e0eah

+dd 0e7907ff0h

+dd 095fea519h

+dd 0c5cb3910h

+dd 0c323e804h

+dd 0c3c8bb40h

+dd 040836debh

+dd 02470f10ah

+dd 093471558h

+dd 0b8fc333ah

+dd 026aec4e5h

+dd 0994cbc96h

+dd 0e66e79c0h

+dd 0e1d1610ch

+dd 0a8b11ab3h

+dd 03dc7b207h

+dd 0a47376e5h

+dd 00d377191h

+dd 0b1bf25ech

+dd 0183fa365h

+dd 0b1022fa8h

+dd 0bf6c8762h

+dd 0b73693f9h

+dd 0feefafa0h

+dd 0d80be5eah

+dd 055538b5dh

+dd 0e1b9ca89h

+dd 064fa3304h

+dd 0b43d35d1h

+dd 013016364h

+dd 0c23e869eh

+dd 0f1bd6c59h

+dd 0426dcd21h

+dd 08877cc39h

+dd 06f597cach

+dd 0149c44b3h

+dd 041159946h

+dd 0341107a1h

+dd 09420338dh

+dd 0fac547bbh

+dd 00ba2bda8h

+dd 08e60b634h

+dd 042eaebech

+dd 06fad7bc3h

+dd 0980d0e66h

+dd 0f0476b34h

+dd 02c700078h

+dd 00ea8d937h

+dd 08788d26ah

+dd 040b3fd1dh

+dd 0aa81cdb5h

+dd 079ad5f4bh

+dd 03c91a95dh

+dd 0b1dafc56h

+dd 075f02b73h

+dd 0c0d710deh

+dd 0fabd39f6h

+dd 0ff7ad31ch

+dd 0d7fe643ah

+dd 082445e32h

+dd 0b4ed113ah

+dd 00f8f24d8h

+dd 05c293f07h

+dd 09c4d37a5h

+dd 002a786c4h

+dd 03dce186dh

+dd 0cf148d00h

+dd 08da83baah

+dd 0f01461eah

+dd 09f0f68f5h

+dd 0b1aeba65h

+dd 078901338h

+dd 0a2a5edefh

+dd 0032b15b8h

+dd 0b70cb682h

+dd 029791954h

+dd 0cb41526eh

+dd 02e709f99h

+dd 028e933d1h

+dd 0844e7707h

+dd 074f68d86h

+dd 0e9579621h

+dd 0654b8356h

+dd 07d0c9991h

+dd 027f62d42h

+dd 0ffcd7da5h

+dd 0780d0d08h

+dd 03bbbc5a2h

+dd 02c4ac995h

+dd 04b32cabdh

+dd 0c2018192h

+dd 05da882e2h

+dd 0ed96aec7h

+dd 039bf9a34h

+dd 0dbeab9f1h

+dd 0cea2fe93h

+dd 05b23fab3h

+dd 0214fe5aeh

+dd 09ede5548h

+dd 016851b0bh

+dd 044e91bdch

+dd 0ee6ce483h

+dd 0e2efec58h

+dd 0d7bb3344h

+dd 08f5ac77fh

+dd 04f65a300h

+dd 019358a06h

+dd 0fa2d8ca8h

+dd 0a0a91c7dh

+dd 05cb0cd57h

+dd 08c0e5988h

+dd 06274bc6bh

+dd 074665956h

+dd 05f09a3c9h

+dd 09c4ebbf9h

+dd 02531210dh

+dd 0cc45cb15h

+dd 021bc8254h

+dd 052592baah

+dd 0c1936101h

+dd 0f0096097h

+dd 09c731998h

+dd 0cf93fca3h

+dd 02443c441h

+dd 01e425b16h

+dd 03f720b0eh

+dd 053d0a171h

+dd 0a25fe7f3h

+dd 00746ca53h

+dd 0d5167608h

+dd 09c0398d0h

+dd 03d9110a3h

+dd 029d4e4bah

+dd 0118abb22h

+dd 0696cac27h

+dd 0bb341233h

+dd 0b9fc165fh

+dd 05037a7b0h

+dd 0f410f362h

+dd 044ecab96h

+dd 0a9be1614h

+dd 08cb4a8e9h

+dd 0cd08cc27h

+dd 0546d7447h

+dd 06e3f0f00h

+dd 0cd2a7d3ch

+dd 0ad12616ah

+dd 0f992b0aeh

+dd 076658dd4h

+dd 024ad666ch

+dd 01e2957c2h

+dd 09f230466h

+dd 0e99156ceh

+dd 067fd1932h

+dd 01e3d068dh

+dd 01888bbd5h

+dd 07dcc539bh

+dd 0f57d0013h

+dd 054304f8eh

+dd 0bab1dcf9h

+dd 00cf001f4h

+dd 011e3f28bh

+dd 02ea07c65h

+dd 0ff0a169fh

+dd 0468b6d81h

+dd 0b503e7e7h

+dd 02c24df48h

+dd 0a0710ebch

+dd 071b1ef19h

+dd 0844c98d2h

+dd 09e3a9909h

+dd 0745940d3h

+dd 0119fccadh

+dd 073df14afh

+dd 0e1a50e9bh

+dd 0be9bb4afh

+dd 046de7059h

+dd 0d5110bcbh

+dd 002cd4f06h

+dd 028a2cf1fh

+dd 02b26304ch

+dd 06d5187beh

+dd 015bd7612h

+dd 0e94db45fh

+dd 0a02d3d2bh

+dd 073610d61h

+dd 0053d73c4h

+dd 009a377a3h

+dd 0b0aabb91h

+dd 0a488c411h

+dd 09720e625h

+dd 095ad0788h

+dd 063b42151h

+dd 067f54164h

+dd 0b3d11056h

+dd 0c5cdb70fh

+dd 0b9b911f1h

+dd 0f7856b6eh

+dd 00619fdd9h

+dd 058fda33bh

+dd 0d230c6dfh

+dd 0cb4573cch

+dd 0162e98c6h

+dd 060b30550h

+dd 0f7f0aa1eh

+dd 0b89b461dh

+dd 05f5430e8h

+dd 0078504a4h

+dd 065f782e7h

+dd 04cb7da0bh

+dd 01d515182h

+dd 0d4f2aa9ah

+dd 06b8701b4h

+dd 0d30df7d7h

+dd 05eb2b0d3h

+dd 03fa93c5dh

+dd 0a87f0418h

+dd 0a531e26bh

+dd 03fbcf3c3h

+dd 05b8a5d9eh

+dd 0e19d4349h

+dd 07addd766h

+dd 08340b1e5h

+dd 02bb3318fh

+dd 0db3cf9b9h

+dd 0528c7ba3h

+dd 09a227f5bh

+dd 0a59d63d2h

+dd 088f16b15h

+dd 06dbc9c1dh

+dd 017aee22eh

+dd 0c188d922h

+dd 060c858d6h

+dd 0cb356df0h

+dd 0c03df402h

+dd 0658ba2e1h

+dd 02cecc8dah

+dd 0c93bfefeh

+dd 09050a3a7h

+dd 0bcffd144h

+dd 03a08c3d9h

+dd 0155b411ah

+dd 0a706a319h

+dd 07cb91dfbh

+dd 0d98c5c1dh

+dd 070836c2ah

+dd 017446d14h

+dd 01c5c9efbh

+dd 04296f9e0h

+dd 04f09aafeh

+dd 029ce98d3h

+dd 0638c6235h

+dd 0afba261bh

+dd 0ef18a429h

+dd 07a555891h

+dd 06bdd83e3h

+dd 0ed52e42eh

+dd 09ae62a55h

+dd 0e3daafc2h

+dd 0e5b8b588h

+dd 094dcc093h

+dd 0fd406d05h

+dd 052d4c858h

+dd 0ba80c899h

+dd 08fae0315h

+dd 0a939eb45h

+dd 0cec1300dh

+dd 09a19dfceh

+dd 0b451d79fh

+dd 087fe959ah

+dd 0e3d9c035h

+dd 0cfc43ab3h

+dd 0fba0d048h

+dd 0d2ccd229h

+dd 020ecc0deh

+dd 0ce1ca410h

+dd 035369f91h

+dd 0a3eda0c3h

+dd 079ee95f6h

+dd 02d81f19fh

+dd 0489490f1h

+dd 018ab2493h

+dd 04da60759h

+dd 05f886880h

+dd 09ff742cch

+dd 08c16db1ch

+dd 03bf3b964h

+dd 020ba05feh

+dd 007c5fe62h

+dd 07ae8e1f6h

+dd 0c4da43eeh

+dd 0a55793d7h

+dd 0e9534745h

+dd 0c71fd220h

+dd 0b85e7eb0h

+dd 00a50dd71h

+dd 04f30a00dh

+dd 00eb37ccah

+dd 068b92730h

+dd 0257377a2h

+dd 0ce36b377h

+dd 0a0f97191h

+dd 04f46778ah

+dd 07586a087h

+dd 03689a2ddh

+dd 0b1c2e268h

+dd 0a1f66547h

+dd 036d500b3h

+dd 0b92701e8h

+dd 00333ad10h

+dd 01bd0fde0h

+dd 0957ec2dfh

+dd 094011d6ah

+dd 0cb8733c6h

+dd 0e794942ah

+dd 0a4322ea5h

+dd 058f09d05h

+dd 04d07c048h

+dd 07ae69d1ah

+dd 0ecbbb7b9h

+dd 0c6bd6c87h

+dd 08e44a26ah

+dd 094556d61h

+dd 01356914ch

+dd 07b701555h

+dd 08e4a1cb5h

+dd 032cc9473h

+dd 056caddaah

+dd 019686077h

+dd 0c6aa78beh

+dd 01bc3f46ch

+dd 0a99e9a12h

+dd 0ab523664h

+dd 0e40e8dedh

+dd 0f2ad85f3h

+dd 01b3bdc80h

+dd 09728d847h

+dd 02c3c6d42h

+dd 02503a30eh

+dd 0831b4eb3h

+dd 0606d109fh

+dd 0bc0b9727h

+dd 062cd96d5h

+dd 0c535869bh

+dd 039dbf7cch

+dd 0dcb26e43h

+dd 01c52e92eh

+dd 07c36387bh

+dd 09e89842eh

+dd 096bdd1a8h

+dd 04a5e681ch

+dd 072b0fd8fh

+dd 03227d922h

+dd 051056df2h

+dd 0e416283ch

+dd 04988d4b1h

+dd 0223fcd9ah

+dd 09197d67bh

+dd 044185791h

+dd 09d0f27c5h

+dd 089b12821h

+dd 0b80f1321h

+dd 051399a26h

+dd 054031396h

+dd 00853aae7h

+dd 060be1497h

+dd 03f370f8ch

+dd 0f9a64062h

+dd 019101eb1h

+dd 0ff3f3dd1h

+dd 0e0f679c6h

+dd 0e0878cf1h

+dd 04ae632e0h

+dd 063497196h

+dd 052f12835h

+dd 06a06d1bbh

+dd 0c7dc8f19h

+dd 04de7438fh

+dd 08c5b4c2bh

+dd 0e12ddcfch

+dd 02b704a2dh

+dd 05e51f0a8h

+dd 03b50193eh

+dd 0662dfb63h

+dd 02cdbcaebh

+dd 0bd16de3dh

+dd 0d9bfe41fh

+dd 0b0c01e05h

+dd 0fa42dfb7h

+dd 01f664d33h

+dd 019b22387h

+dd 0c19fba57h

+dd 0cd1ab204h

+dd 014b86fd1h

+dd 0d92fc1e1h

+dd 0c51c9a55h

+dd 03af6a3fdh

+dd 065d71b37h

+dd 0ee21c6a6h

+dd 0218826d1h

+dd 093767f2bh

+dd 05227f4fah

+dd 0a4ef9c5ch

+dd 07f14c215h

+dd 02140be20h

+dd 0d3675dc7h

+dd 0863c8d17h

+dd 0131b5e1ch

+dd 02379e9d0h

+dd 0705d1db5h

+dd 020969d7dh

+dd 04c666527h

+dd 0324ac8b1h

+dd 0fb8d75d1h

+dd 0d1760defh

+dd 08daed20fh

+dd 021631b2eh

+dd 0d2144461h

+dd 04ab0dd20h

+dd 06f5761ach

+dd 04d56a05eh

+dd 06cc31079h

+dd 0feec8e5bh

+dd 0c0d19e42h

+dd 0486fa435h

+dd 0a5bea5edh

+dd 03fd4d476h

+dd 03d1213a6h

+dd 029871faah

+dd 02bb2af1bh

+dd 00b991756h

+dd 03fdfc8e0h

+dd 05f811551h

+dd 03e7ba378h

+dd 05cd47981h

+dd 0602d0f19h

+dd 0331eaa5ah

+dd 0d2a1efd3h

+dd 0b8799487h

+dd 0c4a639cfh

+dd 034d227bch

+dd 0d8b41911h

+dd 070b8480ah

+dd 05cbcb8d2h

+dd 0d15230f9h

+dd 0b0dfcd45h

+dd 059e5ebd0h

+dd 0ff5c7b60h

+dd 0a29f31fdh

+dd 023d476ech

+dd 0a9ebc222h

+dd 0f93b5929h

+dd 03ce30db7h

+dd 0d7223081h

+dd 0fd98a04bh

+dd 0ed68b53dh

+dd 0ffb58eaah

+dd 0fb3ab835h

+dd 08afeaf95h

+dd 0ef8d10d8h

+dd 01b91d21ch

+dd 0ff595967h

+dd 07784b31bh

+dd 01bd01985h

+dd 0825eefb5h

+dd 03ec55195h

+dd 027f36633h

+dd 0395361b3h

+dd 049243ddah

+dd 0ed9e4c4fh

+dd 0ca3ea1d4h

+dd 0e4d17b91h

+dd 0901f4283h

+dd 08d99904ah

+dd 051defbcah

+dd 0ade62eaah

+dd 0ccb0a1c8h

+dd 05156943ch

+dd 0c7b8f927h

+dd 03961caaeh

+dd 05b57a2f7h

+dd 036b94a9dh

+dd 0c1a70596h

+dd 0b47d2990h

+dd 0d4024430h

+dd 04246a6ach

+dd 0805769abh

+dd 05797c408h

+dd 0fc68c632h

+dd 006a59bddh

+dd 0f4ca38c2h

+dd 0eb4614d2h

+dd 04c86f03bh

+dd 0742cf7bbh

+dd 0305734c8h

+dd 0ae6c699ch

+dd 0a12f745fh

+dd 01d232638h

+dd 08768008ah

+dd 0cba669eeh

+dd 0a8da3ce8h

+dd 0c2b844bch

+dd 0c6caf4feh

+dd 01068cd68h

+dd 08f9b965fh

+dd 022a704bbh

+dd 043a7a7cdh

+dd 060a08fbeh

+dd 092739948h

+dd 08e9ed70fh

+dd 03b6b9e3dh

+dd 065de5335h

+dd 0fe0afd96h

+dd 065468fech

+dd 0f052daebh

+dd 0df622282h

+dd 0813ec052h

+dd 0535a5ad7h

+dd 07acb4f21h

+dd 01cefb66eh

+dd 0dca43fd6h

+dd 0e4cb1358h

+dd 0857782b8h

+dd 091cbc74bh

+dd 05f26a5eeh

+dd 0de022dcdh

+dd 0b0205274h

+dd 0bc2823a0h

+dd 07bad8862h

+dd 042485f77h

+dd 09abf96a8h

+dd 0bffc14a1h

+dd 09c5f1164h

+dd 0e5fbc4e7h

+dd 0875c9ac2h

+dd 04479ed1eh

+dd 0b777ace1h

+dd 07aeee541h

+dd 002d1abb7h

+dd 0856d46afh

+dd 065cd08c1h

+dd 00729de35h

+dd 07c6bf592h

+dd 0e63fad05h

+dd 0bc15ef2dh

+dd 0a34521a1h

+dd 0f5ce6c19h

+dd 02f739a88h

+dd 0ac5bcef4h

+dd 001991661h

+dd 0f9db46adh

+dd 061af7a00h

+dd 0b3df6b9fh

+dd 0b1fe9a18h

+dd 0cca2e89fh

+dd 08d97cb44h

+dd 0b174b20bh

+dd 015519ee3h

+dd 098b99b32h

+dd 0bbae8064h

+dd 01bbe3051h

+dd 08f3d3248h

+dd 090af0761h

+dd 0c8ba229eh

+dd 028cd1855h

+dd 0b3bd2dc5h

+dd 03af81baah

+dd 0fb5ef5d5h

+dd 028c6d286h

+dd 070b76ff5h

+dd 03ce4a01ah

+dd 09848e211h

+dd 0499b9debh

+dd 0384d7ee8h

+dd 0150d49e7h

+dd 0cb8246b6h

+dd 0cd52aaf2h

+dd 0ba4f5d39h

+dd 06c6edc9bh

+dd 0305f3c9eh

+dd 0a2fd4802h

+dd 00ef7c36dh

+dd 0cf15798fh

+dd 065b7bdc8h

+dd 097ce3c7dh

+dd 02bd11080h

+dd 0ba3219feh

+dd 0baf1b60bh

+dd 057a5e358h

+dd 0a0e5e990h

+dd 025db38a7h

+dd 092acd0d1h

+dd 0b90e81d3h

+dd 0a1c86cb9h

+dd 0f0d729c4h

+dd 07be30e13h

+dd 09bb86ddah

+dd 079345b79h

+dd 00938ab60h

+dd 045520936h

+dd 070cc541bh

+dd 046444860h

+dd 020a0fd34h

+dd 0880f58c1h

+dd 0b16bacefh

+dd 03da9cc96h

+dd 02cb1d79ch

+dd 0e4c70aa6h

+dd 0300cb2f9h

+dd 0c3980e61h

+dd 07b16d378h

+dd 0105db258h

+dd 00218b6f8h

+dd 0de30ed99h

+dd 06466f9b1h

+dd 0e172e0f2h

+dd 0c5848385h

+dd 094bcd45bh

+dd 02d96a5a4h

+dd 04c012511h

+dd 07ce15e0ch

+dd 0a765821ah

+dd 07bb2a7f2h

+dd 05311c1c5h

+dd 058503a29h

+dd 05c0ae315h

+dd 048d270d9h

+dd 008b966a6h

+dd 09d2c9923h

+dd 0a77b234bh

+dd 03fb028deh

+dd 011e8a7ech

+dd 05fb3e838h

+dd 0de5a2808h

+dd 0e9777469h

+dd 0a19fffb0h

+dd 071a9089fh

+dd 0a997b232h

+dd 0eca813ech

+dd 0c1cf984dh

+dd 00847823ch

+dd 08dfec356h

+dd 0180f0252h

+dd 03a857262h

+dd 08ec59e32h

+dd 01f1536b9h

+dd 099af7c0bh

+dd 04089f983h

+dd 06da4f8e2h

+dd 054f6023ch

+dd 0685f85e4h

+dd 022610e8bh

+dd 00ee01d58h

+dd 0633b1bf8h

+dd 0fd9eb41dh

+dd 0f5b970beh

+dd 08d0ecfa8h

+dd 07bfd79e0h

+dd 0d5072d36h

+dd 0dae1dca3h

+dd 098409d4eh

+dd 0cd62ef70h

+dd 0e4ca91e6h

+dd 0168ff583h

+dd 028c65342h

+dd 0bf839223h

+dd 092556d42h

+dd 0e24d1212h

+dd 09b3c576bh

+dd 0dd45fd1eh

+dd 095761693h

+dd 0684a6b8ch

+dd 0fdd27550h

+dd 0071f5657h

+dd 009829066h

+dd 0c6839206h

+dd 0306396d1h

+dd 0cb8de1f2h

+dd 0a1b16c88h

+dd 062975c0dh

+dd 0a25261a4h

+dd 09c237514h

+dd 0cee21db9h

+dd 0bdbf3624h

+dd 0595893eah

+dd 0ce700b36h

+dd 0ddbd468bh

+dd 0598ce55ch

+dd 02d4ad080h

+dd 02bbd1166h

+dd 00316e1a3h

+dd 00b312135h

+dd 07e1936d9h

+dd 08952b45bh

+dd 0ac613698h

+dd 027583ff5h

+dd 0eaad67c7h

+dd 00ec5830dh

+dd 0a1480343h

+dd 02a2d0456h

+dd 0d82d8ddeh

+dd 07c292287h

+dd 0b8ee9028h

+dd 098dda5f1h

+dd 0ab260b4ah

+dd 03cdb82c4h

+dd 0ea240bb9h

+dd 053978df2h

+dd 04ebfb1f4h

+dd 0ab8e7cb5h

+dd 0413ac243h

+dd 0a9becde4h

+dd 01a04fab3h

+dd 078d4b2e0h

+dd 0561be1a5h

+dd 0e29f38cch

+dd 0c17e6f14h

+dd 0dfb22f93h

+dd 0e1a75d93h

+dd 0e2e0c9c1h

+dd 05c67cd4bh

+dd 0986a7ee9h

+dd 0837d9e03h

+dd 0810180c7h

+dd 0a29b9f8ah

+dd 01e955f7fh

+dd 0a44ce90eh

+dd 084449cf3h

+dd 01256a20dh

+dd 03ce1f12ch

+dd 0000ef0c1h

+dd 0c582068ah

+dd 01f3412ach

+dd 019cb431dh

+dd 01af9b245h

+dd 06678846dh

+dd 0d4b9cb71h

+dd 07ce15eb3h

+dd 094e94c80h

+dd 04beeece1h

+dd 0f5fbbbfch

+dd 076f7f267h

+dd 0d3369aa6h

+dd 0ac79dbb6h

+dd 03463d66bh

+dd 0f3012976h

+dd 09adf313dh

+dd 06300158ch

+dd 0b24e1064h

+dd 0059ed26bh

+dd 0d4fe44c9h

+dd 04c24c236h

+dd 0860f1481h

+dd 058a6bc6ah

+dd 08269c13bh

+dd 09b8bef19h

+dd 05d28cafeh

+dd 0b70c7548h

+dd 00c75c8f6h

+dd 011975486h

+dd 072876918h

+dd 0ab73b109h

+dd 076d70fdch

+dd 0045c2ef1h

+dd 0a1794d57h

+dd 0d5101ee2h

+dd 04a1219d6h

+dd 0eb17af3ah

+dd 07ad714f8h

+dd 0b8241e67h

+dd 0326f1f63h

+dd 01cde44fah

+dd 0ad8c9691h

+dd 08845e1ech

+dd 0081da30ch

+dd 06211315bh

+dd 0189faa0ah

+dd 09fd29da5h

+dd 02267df4bh

+dd 005352e6fh

+dd 0784902c8h

+dd 09c6608e0h

+dd 06d8b00bbh

+dd 00eceaba8h

+dd 0e1e4d20dh

+dd 0d7c12d07h

+dd 0f106081eh

+dd 067ed56e5h

+dd 0a96a154fh

+dd 072dfb1c7h

+dd 00ed50383h

+dd 006673217h

+dd 0bba3a9c2h

+dd 0f1f03bd1h

+dd 02289864ch

+dd 04a80a1b9h

+dd 08ae84367h

+dd 0ae2c2bb7h

+dd 09f0a9e27h

+dd 0f9373f2eh

+dd 045dfc1d7h

+dd 0a72ceb9ch

+dd 09dbde63ch

+dd 0f1921130h

+dd 0238a971ah

+dd 046e6152eh

+dd 0310d0919h

+dd 0bcc2825ah

+dd 0588b30a0h

+dd 09062e997h

+dd 0a08095ffh

+dd 08160231bh

+dd 06aa056ddh

+dd 040c37264h

+dd 0ada5a1deh

+dd 035f0f0d3h

+dd 00265bb39h

+dd 05ca45010h

+dd 0212c4d16h

+dd 0d813eb45h

+dd 0cda511b7h

+dd 0c2195f87h

+dd 02d0cfcf1h

+dd 02126a0e1h

+dd 0c6f146d9h

+dd 04cd4ed69h

+dd 0bfeb29edh

+dd 02dd53be2h

+dd 000feac8ah

+dd 0c6ba247ch

+dd 04b0c1281h

+dd 044aa8840h

+dd 05cdada77h

+dd 0c7c7cb49h

+dd 03fea4deah

+dd 0bcf7bd8eh

+dd 042778797h

+dd 08ae6008ah

+dd 047324185h

+dd 055b4b86fh

+dd 0fc876447h

+dd 03d247914h

+dd 098e432ceh

+dd 03ab28d48h

+dd 029fa9a29h

+dd 0681b5819h

+dd 0ad535f08h

+dd 090a4d76bh

+dd 012337372h

+dd 0e417d544h

+dd 0b64bd8b1h

+dd 0ca55c289h

+dd 0adbc6e06h

+dd 0c50a3700h

+dd 0a003af97h

+dd 073792ec6h

+dd 054ae4e71h

+dd 0cac482c8h

+dd 0e4b41b74h

+dd 05e5851e9h

+dd 0921c467bh

+dd 0d461577ch

+dd 03c760f65h

+dd 0bea8ea44h

+dd 0c968b756h

+dd 0319ab616h

+dd 025543f34h

+dd 06f438fcbh

+dd 01ac69c86h

+dd 0a6fea958h

+dd 072e65c38h

+dd 0f7656bb9h

+dd 009fd0cd1h

+dd 0e2a0d007h

+dd 04cf075efh

+dd 01b8c07a1h

+dd 0a984258ch

+dd 00027b4f5h

+dd 0f893ddfeh

+dd 0badd1665h

+dd 0cad04213h

+dd 03c623d4bh

+dd 054a93b52h

+dd 0e16a12eeh

+dd 03b74136fh

+dd 0526880dah

+dd 05ac9683ah

+dd 07f55d4cdh

+dd 02cd8ac57h

+dd 0b6799470h

+dd 0cec50f7bh

+dd 0e65ff9a4h

+dd 07503e32eh

+dd 053945a48h

+dd 01ef2b71bh

+dd 0be4d4500h

+dd 07f068916h

+dd 02df64914h

+dd 09356ef5ch

+dd 01518e44ch

+dd 0ddeb6f3bh

+dd 07c6d6da1h

+dd 070bc83c6h

+dd 08c022dabh

+dd 0495e8f91h

+dd 0d2370304h

+dd 00faae8deh

+dd 0ba493a92h

+dd 01f017aebh

+dd 0098f007eh

+dd 051a9f615h

+dd 077b9cbceh

+dd 04368cadah

+dd 0c856dfach

+dd 0f81943f8h

+dd 08091f285h

+dd 06bc46aeah

+dd 0f8bfb45dh

+dd 052315829h

+dd 0703739ach

+dd 0d8263bc3h

+dd 02b2cc2deh

+dd 0035f1c04h

+dd 0501aa775h

+dd 0675b6e9dh

+dd 0aa01bfaeh

+dd 007600006h

+dd 05b3dfd47h

+dd 0923e9c2eh

+dd 0cf460cf5h

+dd 05c8a7649h

+dd 08edcabe8h

+dd 0fa88ad4dh

+dd 01efd3ce2h

+dd 06bcd1f24h

+dd 05fa7d29ah

+dd 0f52c4d0ch

+dd 0d883b596h

+dd 0d3c24cb8h

+dd 0abbf5065h

+dd 017b09c59h

+dd 08339ac02h

+dd 03da97c72h

+dd 0c4ab9ee0h

+dd 0e95f2334h

+dd 0ffee471dh

+dd 052e605b7h

+dd 085e492b7h

+dd 09576c79dh

+dd 0fea1cc79h

+dd 0024cc43ah

+dd 05d4e2557h

+dd 015f28392h

+dd 05b4525a7h

+dd 0e786c097h

+dd 039ee9974h

+dd 060aa2e60h

+dd 03290185bh

+dd 035f6f84eh

+dd 0505f18e2h

+dd 04fea6ee1h

+dd 04f82b78ah

+dd 0dc2d0f97h

+dd 055f24ba5h

+dd 0a40c846ch

+dd 06019f72bh

+dd 012b1afadh

+dd 0aafe6730h

+dd 0b9579ee7h

+dd 0f43d8a70h

+dd 02acae3a5h

+dd 02623ee3ch

+dd 0c7cc16b1h

+dd 04d345471h

+dd 030899a27h

+dd 0707f849eh

+dd 00be7d215h

+dd 0d74b37d6h

+dd 03f4be63eh

+dd 0ede61339h

+dd 07932eeb0h

+dd 045ddc3ceh

+dd 093d0b155h

+dd 073fd22b0h

+dd 0b810d2b4h

+dd 0d1c39cb2h

+dd 0207b4560h

+dd 082c7e5ffh

+dd 04a1e868dh

+dd 0d02f5151h

+dd 0b079310ch

+dd 0ebb9167fh

+dd 0acf6f7fah

+dd 0091e7363h

+dd 0289de9b4h

+dd 0a9b02d57h

+dd 04fe8ec21h

+dd 0601ef2ffh

+dd 01042bc57h

+dd 03c9b513dh

+dd 041fe6c69h

+dd 06981ce10h

+dd 04b0fdc84h

+dd 087573244h

+dd 0fe41ccc5h

+dd 0a0616e02h

+dd 058483b7eh

+dd 03555e485h

+dd 0b2a65d49h

+dd 0030f7050h

+dd 01e0780beh

+dd 0812449ebh

+dd 08e8dc161h

+dd 0b6d762c3h

+dd 0e4bf453dh

+dd 08709481ch

+dd 0e6937955h

+dd 033264505h

+dd 088fee019h

+dd 0f123eccfh

+dd 0b99738d4h

+dd 074f6af44h

+dd 00e356f54h

+dd 00f5642fbh

+dd 0f4b68d7bh

+dd 0be170d0bh

+dd 0d9978f2dh

+dd 0aee0aad7h

+dd 08d8bd670h

+dd 0711cd1e7h

+dd 0b8a02e79h

+dd 040cb7351h

+dd 00c2acdf4h

+dd 01ffa6f9bh

+dd 0d202af84h

+dd 0ed811a19h

+dd 0e71d14a9h

+dd 0bfd51d85h

+dd 00bdbe979h

+dd 0422b480eh

+dd 05afecc96h

+dd 0a02fe37ah

+dd 0fbd7c0c8h

+dd 0875d7b28h

+dd 0e27bf55ah

+dd 0db2776f3h

+dd 08fd3c4a5h

+dd 02147c4bfh

+dd 005683a1ch

+dd 0c81340fbh

+dd 02d0a7eech

+dd 01d0b5801h

+dd 013a476f2h

+dd 0d7e52b8ch

+dd 0c23b07eah

+dd 0f74bb074h

+dd 08f0a9addh

+dd 0f648fec8h

+dd 09dddca19h

+dd 015cd41c5h

+dd 0871bf5c0h

+dd 0031aa454h

+dd 076f27e72h

+dd 06b6c6ab0h

+dd 0537964d5h

+dd 041ee1c0bh

+dd 0ae350a83h

+dd 0ddee8f9ch

+dd 0a12cc9c3h

+dd 040b9047eh

+dd 01e33b879h

+dd 09809be98h

+dd 0a7d0c746h

+dd 049b31acdh

+dd 0d3956716h

+dd 0e6e9f031h

+dd 00bdb98e0h

+dd 06e911484h

+dd 064c77d76h

+dd 00263f10ah

+dd 03bdfd2ceh

+dd 0b6eeb8f7h

+dd 09edbd5a7h

+dd 06e22bba5h

+dd 060cf327eh

+dd 0d4cb74c3h

+dd 0cdfa78f8h

+dd 0fc9c8669h

+dd 0c19eb296h

+dd 05e326f9bh

+dd 0a683d45fh

+dd 0e0535210h

+dd 04b970f1ah

+dd 0ecd57a99h

+dd 0fda96b16h

+dd 09a89a380h

+dd 0c9f01dfah

+dd 021b17cd6h

+dd 0ef091ceeh

+dd 0e6ce8bf2h

+dd 08dfd8ef7h

+dd 08bb7bc1bh

+dd 0c7315f09h

+dd 016587ddch

+dd 0884684e1h

+dd 0f0672d1bh

+dd 0292c63c3h

+dd 0ac764328h

+dd 09fc0629ah

+dd 02f47c403h

+dd 022baa542h

+dd 087a6c13bh

+dd 0acb54635h

+dd 021dca1ffh

+dd 031d2ccc8h

+dd 0015fad78h

+dd 0da0e7457h

+dd 067c10356h

+dd 0e8750059h

+dd 01db7db73h

+dd 068c046c7h

+dd 0b66aff8fh

+dd 03c70a09fh

+dd 00acb7d87h

+dd 03b544fbfh

+dd 0d4fc42b9h

+dd 07e2dab61h

+dd 05b3e4b82h

+dd 0cf777a72h

+dd 0a320c1e5h

+dd 08b24e695h

+dd 0fc1c9620h

+dd 06b3c7339h

+dd 0fa0ff1a6h

+dd 073400677h

+dd 02fddb759h

+dd 0020d8f66h

+dd 0d2da32ech

+dd 0318ecabch

+dd 0bf4f4dfdh

+dd 0f92fce84h

+dd 0c72acd71h

+dd 004cfe78dh

+dd 0b1c548ceh

+dd 0222eb537h

+dd 040417dbfh

+dd 05e73a266h

+dd 0e431f0a1h

+dd 0917c36a3h

+dd 0c131c8ceh

+dd 0eebc32c7h

+dd 019842da8h

+dd 0ba14cde0h

+dd 0e13adee5h

+dd 0c876ca85h

+dd 0fa58a746h

+dd 0c995244bh

+dd 0474aab29h

+dd 07ea50348h

+dd 0a4da32e4h

+dd 015afb2d7h

+dd 057f6efadh

+dd 0295cdf6eh

+dd 067f8acb5h

+dd 0186244f4h

+dd 0adb26a2fh

+dd 09a4385a9h

+dd 0815b4222h

+dd 030b559feh

+dd 0dba6575fh

+dd 0870413eeh

+dd 0d7178b31h

+dd 08a159193h

+dd 09bd1a067h

+dd 0865835f5h

+dd 0fe668628h

+dd 015a3f55bh

+dd 0b1c85f91h

+dd 03aab4d32h

+dd 0fc0e9088h

+dd 038d6289dh

+dd 052e7e426h

+dd 0fb03f3afh

+dd 0b653da7ch

+dd 0266335e2h

+dd 0a3619fc2h

+dd 08430fc92h

+dd 0332135f7h

+dd 06d26c4e7h

+dd 001d73c97h

+dd 08919ea2bh

+dd 05a725ebch

+dd 0487117abh

+dd 0d0e63eb6h

+dd 0d4834961h

+dd 02c75675eh

+dd 04a3cf23eh

+dd 071c0d92bh

+dd 00c8b7933h

+dd 0ca7e5d14h

+dd 042168d92h

+dd 0de7e0515h

+dd 04634c5efh

+dd 0f29b0599h

+dd 05c6fda1dh

+dd 0784d0e12h

+dd 0f3b60c1ch

+dd 070b0a178h

+dd 0b5288161h

+dd 0e939e186h

+dd 0f032b0a7h

+dd 029e7d9d5h

+dd 0b0ebbc12h

+dd 02ffb435ah

+dd 032387241h

+dd 0dad30c82h

+dd 098548d66h

+dd 04024eaffh

+dd 08eda967ch

+dd 046808b63h

+dd 01619aa61h

+dd 0663f9506h

+dd 0853f1de6h

+dd 09b850f28h

+dd 057cc0811h

+dd 0e11f1c3dh

+dd 06e38660fh

+dd 0e6412783h

+dd 0aa060f2dh

+dd 03c48946dh

+dd 09eadbaedh

+dd 048582c6ah

+dd 0303c4a07h

+dd 005f9fd60h

+dd 048095e0bh

+dd 06816d6b8h

+dd 03a2a5cc3h

+dd 01ccf7ce1h

+dd 0261ebe17h

+dd 04e879f16h

+dd 07a1fab12h

+dd 0fc90ffe5h

+dd 0746a2583h

+dd 02a9e2b5eh

+dd 013f1a64eh

+dd 0351744b8h

+dd 0991493d1h

+dd 068733b39h

+dd 08a77189eh

+dd 06ad7b236h

+dd 002bd5c18h

+dd 026885b34h

+dd 032f399d0h

+dd 0eacac9c0h

+dd 099aeb149h

+dd 0df34dd96h

+dd 0f566a244h

+dd 010f0ab2eh

+dd 06d035733h

+dd 0d6cc42e1h

+dd 029d8aaadh

+dd 04ca380b9h

+dd 0e3d33f21h

+dd 07a23514bh

+dd 05a7a03a6h

+dd 0ee6eb623h

+dd 00b2782d3h

+dd 0af94ba2fh

+dd 040a39b1ah

+dd 09d16a9d8h

+dd 073399d69h

+dd 08156c5fdh

+dd 039db85dah

+dd 07ae9e597h

+dd 080fff0e0h

+dd 0bf57ca54h

+dd 0d911881bh

+dd 0c506ea46h

+dd 059b98f27h

+dd 0160afe17h

+dd 04a0b8f91h

+dd 081f01084h

+dd 0e6e26a86h

+dd 0d2fa25f7h

+dd 03fec581eh

+dd 0ab374132h

+dd 038a2976bh

+dd 0329250f4h

+dd 0350767c7h

+dd 0dfb92cd4h

+dd 04b1e793fh

+dd 041d6ea57h

+dd 045410ea9h

+dd 05258aee3h

+dd 083a6ed10h

+dd 0ae09625fh

+dd 0700a56b1h

+dd 05f507790h

+dd 0114a6f2bh

+dd 049a9539ch

+dd 0d382a70dh

+dd 065c0852fh

+dd 0efef9ec5h

+dd 0ad1a0269h

+dd 050b967a8h

+dd 0cb88469ch

+dd 0e9d57e52h

+dd 02a1bda6ch

+dd 0fd0a1308h

+dd 002281c5bh

+dd 023c7c7eah

+dd 0313dc498h

+dd 0ed322da9h

+dd 0e2df71e6h

+dd 09963fc35h

+dd 0124ffc55h

+dd 07ce3e6abh

+dd 06b58280fh

+dd 05c05a425h

+dd 0f904f7dfh

+dd 09d83c3a6h

+dd 0bf8fa3a8h

+dd 03ea7addch

+dd 0f097fffdh

+dd 0e27460ech

+dd 07a36bc8dh

+dd 095b3b178h

+dd 0aa91cfb9h

+dd 0a272b688h

+dd 0bb9a0a35h

+dd 0a0963a46h

+dd 0eba4a5b1h

+dd 0e58c503ah

+dd 0b0d6d436h

+dd 0c27092f0h

+dd 0bd624965h

+dd 00e8d315dh

+dd 046ebbc2ah

+dd 015a8e45ah

+dd 00a6884fah

+dd 0c1799133h

+dd 0b049caech

+dd 006e48e78h

+dd 00807c604h

+dd 050d39075h

+dd 0fadd8debh

+dd 0a5d7be0ch

+dd 04d95beaah

+dd 0fa98515fh

+dd 0a0ed295ah

+dd 0e2a817cdh

+dd 094d007eah

+dd 096f4a315h

+dd 064fd4946h

+dd 0dd368df5h

+dd 00fac38feh

+dd 07cbc7740h

+dd 08aba2192h

+dd 02869fe0eh

+dd 0acfdf6ffh

+dd 06bc7cb95h

+dd 064a76f68h

+dd 0a65ad7cdh

+dd 01ccbc024h

+dd 00796d26fh

+dd 06f23514dh

+dd 0628f21e4h

+dd 05b7fa8e5h

+dd 0e5eb98e9h

+dd 0cd108d87h

+dd 019d44b4bh

+dd 02d0e78abh

+dd 0c7375eeeh

+dd 0a3d37236h

+dd 066121c71h

+dd 0ebe67c1ah

+dd 0f21f9b46h

+dd 05fd11910h

+dd 0e2a391ceh

+dd 09308745ah

+dd 0a199e152h

+dd 0cfb2627ch

+dd 0048cafa6h

+dd 010716a2bh

+dd 0ec45cacbh

+dd 0f04175a6h

+dd 0c8aba511h

+dd 0edb1d2f8h

+dd 0b7893787h

+dd 0b36d4674h

+dd 003de788bh

+dd 0018b6dceh

+dd 087b206e2h

+dd 0bb32293ch

+dd 08b8f4969h

+dd 0ef950129h

+dd 008e41e91h

+dd 0678079f6h

+dd 0f7788393h

+dd 04af69bd6h

+dd 0058439dch

+dd 04262c427h

+dd 091c1cc52h

+dd 0c78b94e7h

+dd 0035e4d53h

+dd 0200f9d3fh

+dd 04e99d1b8h

+dd 0af46040dh

+dd 0c445ee45h

+dd 0d9376eadh

+dd 0939d733fh

+dd 0fe3b78ech

+dd 099989858h

+dd 0c9275809h

+dd 04abb6748h

+dd 0dbdc6f39h

+dd 05f58176ch

+dd 0a4c8015ah

+dd 04a5f0de2h

+dd 0cdc89afeh

+dd 0909797f6h

+dd 0ee7918edh

+dd 00cb90d33h

+dd 00b4ce27ch

+dd 0478cf5e5h

+dd 0d553793eh

+dd 036a2a1d4h

+dd 07c872387h

+dd 015e19cech

+dd 00707d58bh

+dd 03a7f6c56h

+dd 0e8a33460h

+dd 07ac15b12h

+dd 0056be370h

+dd 08b86efd8h

+dd 0f276e266h

+dd 01764fa31h

+dd 056ec2158h

+dd 082026680h

+dd 0181fb30fh

+dd 0ab044581h

+dd 073a7dfa1h

+dd 016b22b0eh

+dd 0ca6bafc0h

+dd 0ced5f0f7h

+dd 04760e6b7h

+dd 0d56a9b8eh

+dd 093a84d87h

+dd 089b36681h

+dd 068644e92h

+dd 0e658c6a1h

+dd 009f89cc7h

+dd 0a50dd009h

+dd 0dafd81e6h

+dd 053671177h

+dd 027f03e60h

+dd 0ec8caeb6h

+dd 0c3f059f8h

+dd 0b0bfbc06h

+dd 04fd32176h

+dd 0c51d94efh

+dd 0b0e7cdc4h

+dd 02df06175h

+dd 0720048ebh

+dd 0ca17e0a0h

+dd 0b378c5d6h

+dd 0f4c6b256h

+dd 009a27953h

+dd 0ecadbc95h

+dd 00aee6012h

+dd 0f112cd0dh

+dd 02a61f6ach

+dd 0624752d0h

+dd 0fb7a549ah

+dd 0b0ef4ce9h

+dd 033c07eb6h

+dd 0e6e3db92h

+dd 023a5b016h

+dd 085af96e3h

+dd 08d0ed82eh

+dd 0724ed4f8h

+dd 08590a1bfh

+dd 0cb09c8a1h

+dd 078da1438h

+dd 015b3f6c6h

+dd 0641a4611h

+dd 09c437815h

+dd 037ed40bbh

+dd 080f08633h

+dd 000f7b831h

+dd 0492c144ah

+dd 05fcf6097h

+dd 0894ffa73h

+dd 04b5614ebh

+dd 0249f6384h

+dd 0f1ce3f3dh

+dd 03bd3f9a8h

+dd 0dda84ad7h

+dd 052ccb93dh

+dd 012f8657eh

+dd 0b2284090h

+dd 08c6b6d1ah

+dd 02a373e48h

+dd 0a5cf9784h

+dd 011fe3adch

+dd 03f59218fh

+dd 0f85a888fh

+dd 001decd9fh

+dd 072fa6200h

+dd 029353e33h

+dd 071721105h

+dd 00cd1003ah

+dd 010813758h

+dd 092f70ba7h

+dd 0f78b0f51h

+dd 0c305ef3dh

+dd 0a2170d2dh

+dd 0613a8e83h

+dd 014419052h

+dd 0a67a9ebdh

+dd 0b9e5799eh

+dd 051a256d6h

+dd 0823d372fh

+dd 00c24b5a3h

+dd 05017c452h

+dd 085c4a867h

+dd 0d0d6956fh

+dd 05659c1e4h

+dd 0d52b0549h

+dd 00815b9bdh

+dd 0bd378152h

+dd 0ee901aech

+dd 0695d9965h

+dd 094932ca8h

+dd 04174d764h

+dd 0f3555ee2h

+dd 02351dd40h

+dd 071d2c7b9h

+dd 029c5df42h

+dd 02d038a07h

+dd 0cec46b14h

+dd 034f3df60h

+dd 0fbde7e86h

+dd 071ab91a4h

+dd 03f45e824h

+dd 048f569e0h

+dd 014338548h

+dd 04db4d33ch

+dd 0071370a9h

+dd 033660224h

+dd 071337927h

+dd 0c07eaa10h

+dd 053200c19h

+dd 0effc86c9h

+dd 07f4a852ch

+dd 0089cbb2bh

+dd 0cf84a22bh

+dd 03a334f7dh

+dd 0ab8246f6h

+dd 0c12894e0h

+dd 0c5616a48h

+dd 0f2be1f40h

+dd 028b75056h

+dd 07837407bh

+dd 0ced9342eh

+dd 068e9592ch

+dd 0e1cfde94h

+dd 01399ffa5h

+dd 006610e43h

+dd 07a9bbb94h

+dd 0a1f8a4e4h

+dd 054cb573ch

+dd 088832eddh

+dd 0d5e521dbh

+dd 0277dc2f8h

+dd 0a05bcce5h

+dd 044a5309ah

+dd 0b66c6397h

+dd 0e0d51715h

+dd 0516b1bbeh

+dd 0d1526f56h

+dd 05c472e7bh

+dd 09504ed68h

+dd 011dcfecah

+dd 045d76d33h

+dd 0e66b28d6h

+dd 0b3273af6h

+dd 0f6effa30h

+dd 0f7b4c3ddh

+dd 017df6ac4h

+dd 0acfae661h

+dd 0e04b26e1h

+dd 09e8f7f2dh

+dd 05ed82acah

+dd 077c8d62ch

+dd 019c67f31h

+dd 06e757ac6h

+dd 07dd4ef57h

+dd 0346c5e02h

+dd 0b4a15c36h

+dd 0fa41b889h

+dd 019d886f8h

+dd 098a80581h

+dd 0d5b58ba6h

+dd 0718ae2feh

+dd 0a333caa9h

+dd 0daac9ba6h

+dd 0c76da8a1h

+dd 03d708568h

+dd 0fa5d7f82h

+dd 0d5357c48h

+dd 0033106f3h

+dd 0a04a8667h

+dd 0a83443e2h

+dd 0dce1e348h

+dd 0114f92c9h

+dd 0e595de18h

+dd 0ecff87f6h

+dd 05e7e6c6ah

+dd 07a01e087h

+dd 0a92c0d2eh

+dd 03a980b46h

+dd 0852ea62fh

+dd 0940eaf8fh

+dd 03c47e6e9h

+dd 071d96ba2h

+dd 0401ab395h

+dd 0bbda52bch

+dd 04cc133c3h

+dd 0d2bae1abh

+dd 0a911b282h

+dd 0be5c126ch

+dd 0baa77a9dh

+dd 025e47433h

+dd 0fc8bfef1h

+dd 076096583h

+dd 05b76c421h

+dd 01886baeeh

+dd 01ebc6364h

+dd 08cd83fbdh

+dd 01f2c82c8h

+dd 05313205dh

+dd 04c2f81d6h

+dd 05317f23bh

+dd 07789f39dh

+dd 052530d13h

+dd 07aaf8cb4h

+dd 06c661e39h

+dd 028960017h

+dd 0c99bf511h

+dd 074616373h

+dd 06b925722h

+dd 04ab75355h

+dd 01073a21dh

+dd 05a1a1a9dh

+dd 0cf4dcefdh

+dd 031b7e766h

+dd 05c1ffed4h

+dd 0f3fef658h

+dd 07e5d82a1h

+dd 00a368089h

+dd 0dd309e2fh

+dd 0814caaf5h

+dd 04155032fh

+dd 03df2db51h

+dd 0d6cc1bf5h

+dd 00da3bceeh

+dd 047cfe28eh

+dd 0c23125f5h

+dd 0b7323258h

+dd 0cace055dh

+dd 01ade9d64h

+dd 0a3b1cda5h

+dd 0d521a159h

+dd 025f2c53fh

+dd 0c07f853fh

+dd 013494c9bh

+dd 099c2b2e8h

+dd 0dc747eb3h

+dd 0d526c2afh

+dd 088ea7613h

+dd 09a413063h

+dd 03df0c6f9h

+dd 03261f06dh

+dd 0a87396c6h

+dd 0f86b83afh

+dd 0446204d1h

+dd 09e375d39h

+dd 0eeb8d536h

+dd 013d01c19h

+dd 0834a951fh

+dd 09e94ee51h

+dd 0c21b2f23h

+dd 0b5d6cdffh

+dd 0ad9f2d8eh

+dd 05131000dh

+dd 05ef1fd57h

+dd 0a1038df5h

+dd 02fd2cfe1h

+dd 0d72363ach

+dd 02fe4fccdh

+dd 014ca5551h

+dd 092af610ah

+dd 01da80772h

+dd 02acf36f9h

+dd 0b81b140fh

+dd 06df9d2c2h

+dd 03df85a36h

+dd 0b00e2979h

+dd 0f2371eddh

+dd 0ac89ee90h

+dd 05e0f0315h

+dd 099cbb755h

+dd 0d417fd62h

+dd 0c4b84454h

+dd 077047f3ah

+dd 0a81a60ceh

+dd 07d9a38dfh

+dd 07d492318h

+dd 07a0c5cebh

+dd 0f2d6e7bdh

+dd 0cdfaca25h

+dd 0efd3af49h

+dd 0a491cbd4h

+dd 098321ed1h

+dd 00c9b3800h

+dd 0c6b2122eh

+dd 06f0a88dbh

+dd 09266f7c8h

+dd 062d9ce10h

+dd 09db5d082h

+dd 000081700h

+dd 0d8baf2c4h

+dd 09132ab18h

+dd 0aa7a7acfh

+dd 056d60c38h

+dd 04964b493h

+dd 0a9d618e4h

+dd 057afb5a0h

+dd 0305e8ed5h

+dd 0c59a0830h

+dd 0407d1134h

+dd 0225cb703h

+dd 0ded58e57h

+dd 0b5578acah

+dd 080811833h

+dd 0e304dc6ah

+dd 05b6481edh

+dd 0327d87e2h

+dd 03d3ee900h

+dd 0c2bff5e5h

+dd 076f2d8c3h

+dd 05d1e390ch

+dd 037084c8dh

+dd 0f09c489bh

+dd 083569699h

+dd 0905835c8h

+dd 00529bdadh

+dd 0577890b2h

+dd 04af83a67h

+dd 0ee9e8684h

+dd 09f640606h

+dd 0ccd0e0b9h

+dd 0d2f8ea36h

+dd 0fbdb9a9dh

+dd 05aa017d4h

+dd 03c44b80dh

+dd 06266fdcfh

+dd 01da2152dh

+dd 04d82f675h

+dd 082d7484eh

+dd 04673a53ah

+dd 06467721fh

+dd 0a48d2ae2h

+dd 05afe9807h

+dd 0a18cac80h

+dd 0248d1016h

+dd 0d73595bbh

+dd 0f810fd15h

+dd 0d5f26bf2h

+dd 02ef1c8a5h

+dd 0ed9c3dbbh

+dd 0073d1ecfh

+dd 0236a16deh

+dd 04f4d1a11h

+dd 059544e62h

+dd 03d28ca78h

+dd 05e1642e8h

+dd 07f491a1eh

+dd 0bb0df095h

+dd 0c2eb1d64h

+dd 0316c8a1bh

+dd 02257400fh

+dd 05897c369h

+dd 007f3d634h

+dd 0a5fef6c5h

+dd 0b1052571h

+dd 06c017537h

+dd 08c79419bh

+dd 040bfbb7eh

+dd 0ebcf8b72h

+dd 0c76f61f5h

+dd 0b5b3801dh

+dd 0c1f4a316h

+dd 0afa8fd07h

+dd 04fa87b9ah

+dd 0d70cb27fh

+dd 010d7af67h

+dd 089a13427h

+dd 09d76e1f9h

+dd 0e7571617h

+dd 0a17198d3h

+dd 0f1f52885h

+dd 09d3f58d1h

+dd 021a15d56h

+dd 0a4cd8bb8h

+dd 02e4088cfh

+dd 022d35f40h

+dd 06e060beeh

+dd 0ba9f4277h

+dd 0c60092eeh

+dd 0c1ec1128h

+dd 07daa9dc2h

+dd 0735ea257h

+dd 099a2793ah

+dd 06e4caa03h

+dd 00afc7516h

+dd 08d731d7bh

+dd 0438d6509h

+dd 01256eceah

+dd 068a6cafah

+dd 061e2ed23h

+dd 0e217d32eh

+dd 05f83178bh

+dd 018657ce6h

+dd 063b0f3a4h

+dd 0efc6e4adh

+dd 0f7826774h

+dd 0220215c1h

+dd 0754208e3h

+dd 06706c545h

+dd 027b22eb5h

+dd 0d9f6de83h

+dd 0cb49a33eh

+dd 0b1d67db2h

+dd 06e11f4b4h

+dd 008a463a4h

+dd 0a5e6a606h

+dd 01b2e3300h

+dd 01fd7cf96h

+dd 002dca87dh

+dd 0c8218aa9h

+dd 0958f6a9fh

+dd 0d619a0aeh

+dd 022e48c02h

+dd 00191cfb5h

+dd 00a7e1c23h

+dd 0e2184e93h

+dd 034e03each

+dd 0f95041dah

+dd 066c89645h

+dd 03b9392a6h

+dd 0d7f0fa9eh

+dd 06341760bh

+dd 0a8b61c49h

+dd 08b6e3505h

+dd 010a17364h

+dd 05860eba6h

+dd 0f2421cffh

+dd 09ae44e97h

+dd 0b056c327h

+dd 0584e25efh

+dd 06b2a671bh

+dd 061b55bb2h

+dd 0a603ee3ch

+dd 04df548dbh

+dd 0d701e1feh

+dd 052c7c088h

+dd 0f7ba91b0h

+dd 0c6d30231h

+dd 0d5a6b62dh

+dd 02140448dh

+dd 08ee47c8eh

+dd 08b9165b2h

+dd 09811318ah

+dd 0620fc499h

+dd 0412ef176h

+dd 0e399dd08h

+dd 0e95b3de3h

+dd 0539ac9ceh

+dd 0a5420554h

+dd 02ba5a888h

+dd 0ffe281a3h

+dd 0b0ff6c9ch

+dd 03b198f27h

+dd 085a0c979h

+dd 0178ebfa5h

+dd 0eb8d3116h

+dd 0c46cbd66h

+dd 05fce5b4bh

+dd 09ea7a6b8h

+dd 078b599e0h

+dd 07a125057h

+dd 0fd2a133ch

+dd 088a74223h

+dd 02be4f5a5h

+dd 02fc4c4f1h

+dd 0d791bf3eh

+dd 0388b86f3h

+dd 06de6e130h

+dd 0db559fa1h

+dd 0318f51e7h

+dd 0d0aad861h

+dd 0de3daad8h

+dd 04ab3b97dh

+dd 0b4a149b2h

+dd 08cd7cd6fh

+dd 085f68c23h

+dd 05b82608ch

+dd 0be8d404eh

+dd 0fc0f44f0h

+dd 045bfd074h

+dd 009c528f2h

+dd 06676c89ch

+dd 02804aee3h

+dd 0e7d34a55h

+dd 02a471b89h

+dd 04846549fh

+dd 0396247ceh

+dd 09a37329fh

+dd 0cad82c68h

+dd 036ff776ah

+dd 0a63d1e76h

+dd 0cb181602h

+dd 0666d377ah

+dd 06968e76bh

+dd 0a6ef4d8fh

+dd 0bdbcb4cfh

+dd 057a12c28h

+dd 0d99e3fdeh

+dd 09205472bh

+dd 054e99a0bh

+dd 0dc1cb1d5h

+dd 0caa898eah

+dd 030d63d25h

+dd 029eb30f9h

+dd 0455e8731h

+dd 0f6c7a5aah

+dd 0afb44806h

+dd 06bc61755h

+dd 0b6d64802h

+dd 0c3da206ah

+dd 09f5acee8h

+dd 08ad6844dh

+dd 0f67c73c7h

+dd 03fa9e39ah

+dd 049f34c04h

+dd 06b4dd2b6h

+dd 0d65f68e4h

+dd 032e642a7h

+dd 0a6fe4e80h

+dd 0fa4c6f5fh

+dd 020530e23h

+dd 033fb1112h

+dd 034e7534dh

+dd 0a9390d3ah

+dd 06316c3e5h

+dd 0334d146eh

+dd 055d4316bh

+dd 04ea0e743h

+dd 09709b4a4h

+dd 0b63eb890h

+dd 0a2ea7830h

+dd 039f116c8h

+dd 010829464h

+dd 0f4eaef23h

+dd 048fef484h

+dd 02f2d7bd3h

+dd 033dd324eh

+dd 030ca9193h

+dd 0bc92d3edh

+dd 0f1ae9a32h

+dd 0f042ab40h

+dd 0a7d9bf5ah

+dd 08a84ea6dh

+dd 07b2fd4e4h

+dd 0b5a439e0h

+dd 0f7645d85h

+dd 0825f0a30h

+dd 05dd16d18h

+dd 051be7575h

+dd 0406ca7c1h

+dd 0b06c0de4h

+dd 0fb0de821h

+dd 02367a19ah

+dd 017b49afbh

+dd 081a589e0h

+dd 0e1446cb8h

+dd 056130d19h

+dd 06dd84c7dh

+dd 04a8a7fe8h

+dd 08136bf22h

+dd 089a7c73fh

+dd 023c89e80h

+dd 0db758fd7h

+dd 0b7279bafh

+dd 0e58cd674h

+dd 03949a1d8h

+dd 06cc91c97h

+dd 0a6f4439ah

+dd 01518b643h

+dd 015e5ea47h

+dd 09b6f6a39h

+dd 03d70d4c0h

+dd 06696b125h

+dd 05113d7beh

+dd 0a38f53f8h

+dd 0fca8271fh

+dd 0537d7927h

+dd 086ee6451h

+dd 031be2903h

+dd 05401c7c6h

+dd 0265f406ah

+dd 0e4b56827h

+dd 0f033680ah

+dd 08f0a95bdh

+dd 087a28dc2h

+dd 00929b291h

+dd 0817130e1h

+dd 0bd3bfba9h

+dd 0934793c2h

+dd 0b9eefe55h

+dd 0d47ba197h

+dd 0343f6412h

+dd 0e1acb525h

+dd 0f09e90fah

+dd 09917112dh

+dd 0fa62c74eh

+dd 06ba7627fh

+dd 03de4c55eh

+dd 03fa38604h

+dd 0175f99aah

+dd 0acd54d32h

+dd 0ff131d38h

+dd 07527b09dh

+dd 0071c137eh

+dd 0427a88a8h

+dd 02b9bd408h

+dd 0cab821b9h

+dd 052daae4dh

+dd 0ba40e37fh

+dd 0418dd00ch

+dd 0e30e40dch

+dd 0fd931755h

+dd 03e9f542eh

+dd 0ff4a960ah

+dd 0c4b17d01h

+dd 0870be803h

+dd 0f5e01395h

+dd 0d3b590b4h

+dd 0863b2ea0h

+dd 0829d53c6h

+dd 07cdbf0eah

+dd 072f171a2h

+dd 0a7f819ebh

+dd 003b1527ch

+dd 06990d9b5h

+dd 0d0c923e1h

+dd 01216a47ch

+dd 0f1c1c300h

+dd 0b0574fc0h

+dd 0c08615f3h

+dd 0c953a4deh

+dd 06336c830h

+dd 023742befh

+dd 0135bb944h

+dd 092c4bcb9h

+dd 0bb84b2d7h

+dd 06d3cfd90h

+dd 068bae358h

+dd 08b916324h

+dd 0c18ef4b1h

+dd 02702e717h

+dd 002ce1186h

+dd 0fab4401dh

+dd 018c39f61h

+dd 03eefcaf9h

+dd 0253081e0h

+dd 09bdae46ah

+dd 01396904dh

+dd 05dab6e7eh

+dd 0f0aafcb5h

+dd 0454fb77bh

+dd 04fd667b9h

+dd 009069587h

+dd 0f6260f4eh

+dd 01bdca454h

+dd 00c5f5fd6h

+dd 017a6da72h

+dd 0e7f4dd90h

+dd 023c3c39bh

+dd 022818632h

+dd 00be0478bh

+dd 0748359b8h

+dd 0f2dc9558h

+dd 0493535e7h

+dd 0d8e63f61h

+dd 05d73ad15h

+dd 050411364h

+dd 0d404c3d5h

+dd 06847e2c3h

+dd 095975ddeh

+dd 086209a1ah

+dd 02302563ah

+dd 0249def96h

+dd 04abbd9beh

+dd 043bfb0dah

+dd 08b896080h

+dd 0b0271153h

+dd 07c6901cah

+dd 01f044821h

+dd 07f0d5e25h

+dd 057f0bde8h

+dd 0d6ded8a2h

+dd 00e04ea94h

+dd 0d4801d8bh

+dd 01fb14a91h

+dd 0f91508beh

+dd 031352891h

+dd 0f6d3f161h

+dd 0592455dch

+dd 0cfd4894eh

+dd 090e2fa14h

+dd 02eb095eeh

+dd 02360ad54h

+dd 06a5b6aach

+dd 0a585e85dh

+dd 065282e5ah

+dd 0516bbce5h

+dd 059f3cf24h

+dd 0a7c0a24bh

+dd 08bb30c1bh

+dd 0ad031ef4h

+dd 0e515865ch

+dd 0070cc32bh

+dd 0d59b05cah

+dd 082db681ah

+dd 043ca6b1dh

+dd 08e9e7647h

+dd 02ccc7629h

+dd 0b723ff0ah

+dd 05171d0d0h

+dd 09b410e00h

+dd 00dfd157dh

+dd 08d49c5a2h

+dd 0e3fe8a9bh

+dd 0e71928dah

+dd 064ad4566h

+dd 0e1c7ec66h

+dd 0b325b607h

+dd 0c881b1eah

+dd 018744a39h

+dd 0a69cfd0ah

+dd 0849afecbh

+dd 06d13c8e3h

+dd 03d506a32h

+dd 0e82ee61dh

+dd 0caf702a4h

+dd 09da03193h

+dd 07a3a0ee2h

+dd 06d34ee18h

+dd 000b57a75h

+dd 0b2366f27h

+dd 0a2011aa8h

+dd 052e38047h

+dd 0385ca929h

+dd 07ef4c942h

+dd 05ba92ff6h

+dd 0fd027295h

+dd 03efe6a6ch

+dd 0be1427ach

+dd 0701f41d2h

+dd 03135d9aeh

+dd 0adea3fdbh

+dd 0432539b4h

+dd 0492b762ch

+dd 0345682e6h

+dd 08649f0e3h

+dd 024204468h

+dd 019bb4f72h

+dd 008ed0464h

+dd 05c88793bh

+dd 06a44cb40h

+dd 0c1aabd7eh

+dd 045df16b7h

+dd 0b44acec3h

+dd 06401925ah

+dd 05c49d6afh

+dd 09d471251h

+dd 029341f36h

+dd 0d7b2eb48h

+dd 0ff14a0d9h

+dd 0a68f0a44h

+dd 0b47ddd6bh

+dd 077da2df1h

+dd 02d81bc51h

+dd 0941daa5bh

+dd 04744e6a8h

+dd 0c76f3c60h

+dd 0c199942ch

+dd 02aff0da8h

+dd 0ea2539c9h

+dd 0d5cd308fh

+dd 02bec1cd3h

+dd 0d1704272h

+dd 0c7be25e5h

+dd 0dd8b3ca3h

+dd 0e3d510efh

+dd 07aeb702dh

+dd 0c83c2992h

+dd 05c7520c8h

+dd 0e4286925h

+dd 0bdd3a1c9h

+dd 08b0dace1h

+dd 076a781f4h

+dd 0c82f2a0bh

+dd 081611474h

+dd 03d49f026h

+dd 0b002b675h

+dd 0f3640025h

+dd 000009b24h

+dd 01442966ah

+dd 0bcf686d3h

+dd 080bd31f7h

+dd 00e3f427fh

+dd 00499b331h

+dd 0d7f3bea7h

+dd 0d182a00bh

+dd 0151e167bh

+dd 032c30c22h

+dd 0102437cbh

+dd 072ab6321h

+dd 024c09db1h

+dd 0b5794e57h

+dd 06d03cf2dh

+dd 03db2c03dh

+dd 01e239745h

+dd 08020d35ch

+dd 037164505h

+dd 0304a2ba6h

+dd 01bd174c2h

+dd 03a9722fah

+dd 0b928e6fah

+dd 048df5a57h

+dd 08df4cc10h

+dd 03126d197h

+dd 0e3e0c770h

+dd 0fe029e0ah

+dd 0c524e117h

+dd 045a5ee3ch

+dd 0f0fd2760h

+dd 0ac28703fh

+dd 019270357h

+dd 07926b0e1h

+dd 0554cea6fh

+dd 04899aa96h

+dd 0a93fcb97h

+dd 0341b9cc8h

+dd 032ef1884h

+dd 0480cac56h

+dd 00e1f82afh

+dd 02af9e52eh

+dd 08c347e56h

+dd 06d27cfaah

+dd 0b19ebb2dh

+dd 09a017615h

+dd 00383a921h

+dd 01b4da17eh

+dd 03c2865e6h

+dd 01fe5e04ah

+dd 03d8a6145h

+dd 0cc135c25h

+dd 0523bf241h

+dd 0aaeddbaeh

+dd 08a6f4bf9h

+dd 0d28529f0h

+dd 068b11e42h

+dd 07d567660h

+dd 066bc1062h

+dd 0d7dc986ch

+dd 0a8c113a7h

+dd 04587ab05h

+dd 078e2ee32h

+dd 0affc298ch

+dd 0c2dd2772h

+dd 0c7fdfd87h

+dd 04c8a67a7h

+dd 075f4bc2fh

+dd 0ed085f55h

+dd 0b14743c7h

+dd 04f6ef24ch

+dd 031164a3bh

+dd 0483673deh

+dd 055b28531h

+dd 005f371a5h

+dd 02f65a18ah

+dd 08a2abb4eh

+dd 0e3be2319h

+dd 09a262cf4h

+dd 017ddd0aah

+dd 0899a8679h

+dd 0f03d99dah

+dd 08f0decf3h

+dd 06e31d5bdh

+dd 0355f0039h

+dd 0d23315f3h

+dd 02c3e7a24h

+dd 05e54d839h

+dd 0a61463f3h

+dd 01687668bh

+dd 08d0f8804h

+dd 0026e90cdh

+dd 081ec61c8h

+dd 034b5f115h

+dd 074306c10h

+dd 09fbde125h

+dd 0e423e192h

+dd 0d31071a9h

+dd 017d9bcfdh

+dd 0ca297f5ah

+dd 046f27404h

+dd 026254345h

+dd 0ea60dc61h

+dd 087e06276h

+dd 0a60789c8h

+dd 0d7a2bd05h

+dd 0f3086f8eh

+dd 079419849h

+dd 00b6c6c67h

+dd 01e22588ch

+dd 0d620a0f0h

+dd 0468928c4h

+dd 0f57aec81h

+dd 09c034c57h

+dd 0706d8b4ah

+dd 0ccf65c98h

+dd 04c1d309bh

+dd 0c067a845h

+dd 02262d5aeh

+dd 0ff9f919ch

+dd 0f0b4af27h

+dd 0f8e17385h

+dd 02e69e5f7h

+dd 0eabf3db7h

+dd 0b20475cfh

+dd 04bc8246bh

+dd 02ba82ea2h

+dd 0df9b0b99h

+dd 0e7f18322h

+dd 09d71f27ch

+dd 0dac87dbbh

+dd 0f235cf92h

+dd 00b178b54h

+dd 04f1d846bh

+dd 0603e046ch

+dd 059c4c2ach

+dd 09e202572h

+dd 0020ee4e6h

+dd 01a7a2156h

+dd 0d8442b73h

+dd 048243974h

+dd 0c0e96b61h

+dd 07594761dh

+dd 0ab39b8bdh

+dd 03dcbeb19h

+dd 07e992e05h

+dd 0c64d9cf7h

+dd 0734638ach

+dd 0180d3271h

+dd 05cb0f5c8h

+dd 09cab6ea0h

+dd 065a6813ch

+dd 06f255573h

+dd 07f15c795h

+dd 021411aa1h

+dd 01013dd97h

+dd 0cd181ad8h

+dd 04ad18017h

+dd 0df4ae1bfh

+dd 0efc97477h

+dd 095f3b3ebh

+dd 03031d7aeh

+dd 0ca4b609ah

+dd 07a4a50a9h

+dd 066c50abah

+dd 0eb6bc8ach

+dd 0a081998ch

+dd 0715a1a3bh

+dd 0bdf84224h

+dd 014dcbefdh

+dd 0a649366eh

+dd 0cd2f01e5h

+dd 02e4e13e1h

+dd 01ba0477eh

+dd 02d4f1312h

+dd 0dcb05cd9h

+dd 0da721601h

+dd 0db05c81ch

+dd 0c7810caeh

+dd 0026ccbdbh

+dd 036a28917h

+dd 03d6335b2h

+dd 0ca2930c9h

+dd 00a6304e9h

+dd 0775b5f7ah

+dd 05d1f6bfdh

+dd 01029ce76h

+dd 0ce4f0d88h

+dd 01abf0663h

+dd 014d0ae7ah

+dd 07273fd69h

+dd 0864eb9d7h

+dd 0c23a212ch

+dd 0d461d317h

+dd 0663ed29dh

+dd 04daf5b01h

+dd 0b851729fh

+dd 024fe54a5h

+dd 054e52075h

+dd 0e1ea5b08h

+dd 04d29e28eh

+dd 0b44352dch

+dd 00d481f72h

+dd 0c84f56d6h

+dd 08d344419h

+dd 0a9d1e664h

+dd 0c0c9e98ch

+dd 0cf50a0d0h

+dd 03e754192h

+dd 09b654a6ah

+dd 0c0d680e2h

+dd 08c5ba056h

+dd 0b4fcf1d5h

+dd 066587833h

+dd 04f32d71ah

+dd 0b96b2043h

+dd 0b70dfd7eh

+dd 05d437790h

+dd 0f657b299h

+dd 0e9127fe6h

+dd 00ae59936h

+dd 0ec432a95h

+dd 01c3a0c03h

+dd 0a35dc1a3h

+dd 033913eeeh

+dd 068a88d0ah

+dd 0ae2b2e52h

+dd 0ff94b7ddh

+dd 0c3388566h

+dd 08b6df0f2h

+dd 004b1a39ch

+dd 076685c8fh

+dd 011796212h

+dd 007614427h

+dd 08da998d1h

+dd 02161bcd8h

+dd 098046d3ah

+dd 04a552a62h

+dd 0e4cf307ah

+dd 072daf9bdh

+dd 0a7921b9dh

+dd 06f3b9ab2h

+dd 03bba3735h

+dd 02ee3bdc8h

+dd 06b0cf0b0h

+dd 028034d94h

+dd 056a6e50ch

+dd 0f5aa957eh

+dd 01f2c6e63h

+dd 0f12dfa9fh

+dd 0dd5fc29ch

+dd 0260f04edh

+dd 0fe1ddda0h

+dd 04a53e01bh

+dd 04abb3022h

+dd 073594a30h

+dd 0a1021097h

+dd 011cd78d5h

+dd 047523a7fh

+dd 076041588h

+dd 0b20a0f19h

+dd 0c4ff828bh

+dd 0d42b5a0bh

+dd 0b8295706h

+dd 05ea6a054h

+dd 041dc0a0ah

+dd 052bd8552h

+dd 0bdbf60cfh

+dd 09f16d8deh

+dd 092079925h

+dd 08762d464h

+dd 03e79c7e2h

+dd 089fcdc79h

+dd 0f5c3128eh

+dd 0a03c7686h

+dd 028a050bbh

+dd 065f636bah

+dd 0ce8dc371h

+dd 03e03f78ch

+dd 06fe0cd30h

+dd 053d4838fh

+dd 0623c9de7h

+dd 069d09404h

+dd 056245653h

+dd 0de7cdd05h

+dd 02b90e203h

+dd 05233f500h

+dd 029b89089h

+dd 0f2377884h

+dd 040f1fd8ch

+dd 0c6cba96ah

+dd 05359b7e1h

+dd 0005ab780h

+dd 09bde0332h

+dd 079f28fa9h

+dd 024d5b9cdh

+dd 0f358540bh

+dd 0fe009237h

+dd 0d64e22feh

+dd 0c757652ch

+dd 097c745cbh

+dd 013f18f94h

+dd 01be5061fh

+dd 0428149e1h

+dd 0c2b2687ah

+dd 048b6eb9dh

+dd 0bc6d0906h

+dd 0644488c1h

+dd 0576dd3c5h

+dd 085d0f5d1h

+dd 0fe05cc29h

+dd 0c86a7d51h

+dd 03754548bh

+dd 0744f8339h

+dd 0599cfd76h

+dd 0c3321b60h

+dd 0e6868236h

+dd 0c548e408h

+dd 0da30985ah

+dd 05754900dh

+dd 0e3eefcf1h

+dd 0fcf20e03h

+dd 0918e0fe7h

+dd 01950e856h

+dd 01794e52dh

+dd 08ce858a4h

+dd 09020bd03h

+dd 0aafb50c8h

+dd 01343372bh

+dd 02c9d36eah

+dd 086c00330h

+dd 05a61abd1h

+dd 0d42ca4dbh

+dd 0c54a22cch

+dd 071362a19h

+dd 0ed8c97c3h

+dd 0f031ab27h

+dd 07abe4b4dh

+dd 032244a74h

+dd 02ae4b3afh

+dd 0dca46296h

+dd 01cdf41e8h

+dd 080308c41h

+dd 0ebe33a27h

+dd 07748defch

+dd 02ae257bdh

+dd 0b8abb3f3h

+dd 000b249ffh

+dd 0f15ccc93h

+dd 012d1edefh

+dd 0499dc37eh

+dd 01bcaa80ah

+dd 080acebb0h

+dd 0fdca39b9h

+dd 0c33c1511h

+dd 0ff0d582bh

+dd 012b0cc2bh

+dd 0c3e5286dh

+dd 02b03207dh

+dd 07abd50ebh

+dd 028c8a02ch

+dd 0edc21226h

+dd 09d5905beh

+dd 0e689d398h

+dd 035b10572h

+dd 0da1f7276h

+dd 03d65b206h

+dd 06da7143ah

+dd 02adcdaadh

+dd 08e425bf7h

+dd 0d3537b86h

+dd 07d1d7bc6h

+dd 0f0f5cdb5h

+dd 0699502b7h

+dd 02ebc1527h

+dd 0fc30d6c6h

+dd 0b15ab9adh

+dd 0b3f920cfh

+dd 0b591952fh

+dd 0aa16273ch

+dd 010d39554h

+dd 0cae39b97h

+dd 0eb569a88h

+dd 0b750e691h

+dd 0a1bdb35fh

+dd 0c3747209h

+dd 0e0b8d781h

+dd 0a2fd6743h

+dd 0f0fc3037h

+dd 0f5915109h

+dd 07fa20c7fh

+dd 02512927eh

+dd 08ed54d2fh

+dd 082129672h

+dd 0bca61bf9h

+dd 07d8b4614h

+dd 0b5c767e4h

+dd 02f770ea8h

+dd 016e75836h

+dd 039049bdfh

+dd 02f6f0ebah

+dd 07e7ea841h

+dd 079532a25h

+dd 0c4c7e202h

+dd 08795a299h

+dd 0aff3c4b7h

+dd 007711947h

+dd 0636f37f3h

+dd 0a6e81666h

+dd 082223b4ch

+dd 044cc2667h

+dd 068e5edc6h

+dd 01ee835aah

+dd 09f1ad3c1h

+dd 0154a92a7h

+dd 0c495f5a5h

+dd 04dd5fb2eh

+dd 086fefd56h

+dd 04fd5a82ch

+dd 0826d9070h

+dd 06fd768ceh

+dd 0cf950df2h

+dd 0797dfa89h

+dd 077bf5ac9h

+dd 0b66de0ach

+dd 01761f2bch

+dd 033e8bb61h

+dd 09c0f0da3h

+dd 0b3a71ab8h

+dd 07fb3734fh

+dd 023498965h

+dd 0e81665a2h

+dd 0f3ac1990h

+dd 02ccb1811h

+dd 06c46cc08h

+dd 053b0e012h

+dd 06d33c3f8h

+dd 0a1f5a3b3h

+dd 0be48b0bch

+dd 066c279bch

+dd 0ac11156ch

+dd 01a37823ah

+dd 034a7af61h

+dd 08c1f9bf7h

+dd 01c48b6bdh

+dd 0cf9b77a1h

+dd 0f83328d7h

+dd 06c679f9ch

+dd 0ba5d96c6h

+dd 021029fcfh

+dd 05242c0a9h

+dd 0403bcdaah

+dd 0dd386d1dh

+dd 0657a7000h

+dd 04f4c3137h

+dd 0e7f40433h

+dd 0e4db0bcfh

+dd 0f48feab9h

+dd 05ae01579h

+dd 03d0c3532h

+dd 07c76f9e8h

+dd 025e272bah

+dd 0e29bbdbbh

+dd 007d13999h

+dd 06504945dh

+dd 067b341beh

+dd 0e7b72af4h

+dd 084fe2fb1h

+dd 01af18fd7h

+dd 0065024e5h

+dd 0e05fa571h

+dd 0b6e51134h

+dd 050f9faa4h

+dd 03826c6afh

+dd 00cab2ae1h

+dd 05f950976h

+dd 0215cd81fh

+dd 015de721ch

+dd 0bd3e012eh

+dd 01f751169h

+dd 01618d4c3h

+dd 00af47d9eh

+dd 0f2bf693eh

+dd 0f9c7f675h

+dd 04851bf03h

+dd 019c0cc2bh

+dd 0afad45adh

+dd 0c429a4c9h

+dd 07afffb9eh

+dd 051805df7h

+dd 0dc90a7cch

+dd 07e2dfe83h

+dd 0d41111e2h

+dd 0328613ach

+dd 09b221bb6h

+dd 0fe4019e1h

+dd 0372e679ch

+dd 0023fc31bh

+dd 074584072h

+dd 08121858ch

+dd 08926e7e9h

+dd 0d256f557h

+dd 0002fee6ah

+dd 04ab4e32ch

+dd 089016220h

+dd 0d11d4f6bh

+dd 0f5672726h

+dd 0987e0e74h

+dd 0785cfd35h

+dd 0953d8ad0h

+dd 0f44d1bf1h

+dd 042bdcf2ah

+dd 032b9d361h

+dd 0f69ce052h

+dd 031aaf891h

+dd 0f367acb2h

+dd 03508be93h

+dd 0984b7a75h

+dd 036d70592h

+dd 064c2cbc3h

+dd 0303f926ah

+dd 09b76a052h

+dd 003ee90a5h

+dd 053bc5aa7h

+dd 08725d993h

+dd 095b22665h

+dd 0822efdf4h

+dd 0c15797f6h

+dd 0f6728b6eh

+dd 0d8937212h

+dd 0cc5f207eh

+dd 0003b849eh

+dd 0c1363a9ah

+dd 0b0be00f2h

+dd 0f9eb7361h

+dd 0b33e3336h

+dd 0e883dd43h

+dd 04e74555eh

+dd 07e92ca01h

+dd 08b6b6abah

+dd 0cef27a4ch

+dd 0d01d2082h

+dd 06b09d0e3h

+dd 038bb96ebh

+dd 062b1553fh

+dd 0752f5666h

+dd 0485a841eh

+dd 06ce8681eh

+dd 0483faeb3h

+dd 0499192f4h

+dd 058a794a1h

+dd 09a2acef0h

+dd 085ea1a4dh

+dd 066b08c59h

+dd 03ad22b4dh

+dd 055c57f80h

+dd 06daf8d80h

+dd 0f0239119h

+dd 021704a1ah

+dd 01db60db4h

+dd 07116bb02h

+dd 039e66425h

+dd 00d7e51f3h

+dd 0053c198fh

+dd 00e427bbdh

+dd 010548b5eh

+dd 0b965c721h

+dd 09e65c75ah

+dd 0b6d3e643h

+dd 0d3a45398h

+dd 02bb1caddh

+dd 0fe237dcah

+dd 0e2a02345h

+dd 0cf1daa4ah

+dd 0a5987088h

+dd 0ec704bbah

+dd 0ec78f152h

+dd 02b729b2dh

+dd 04da8a1a0h

+dd 0253c1c39h

+dd 036cff8ach

+dd 03ea92624h

+dd 019e6913ch

+dd 04165f5e4h

+dd 058544c64h

+dd 06def1921h

+dd 005b262fah

+dd 028b92b9ah

+dd 024b398d7h

+dd 03bd17815h

+dd 0415a7f2ch

+dd 07eae9ce3h

+dd 0281f0744h

+dd 02962843eh

+dd 0106025d3h

+dd 0b3ab0c98h

+dd 092a1ce14h

+dd 03efb6813h

+dd 02e06684dh

+dd 09aadb938h

+dd 034b0a907h

+dd 01d08a815h

+dd 0835d4f6ah

+dd 05a2adddah

+dd 07ddbfeb0h

+dd 0ce684ec9h

+dd 093a6d46ah

+dd 0fe22f860h

+dd 0eb670355h

+dd 045050392h

+dd 0e438ceeeh

+dd 06b8e1377h

+dd 04a7deb0dh

+dd 06aaa9308h

+dd 027aedc0bh

+dd 046b85901h

+dd 0f50bde68h

+dd 00bc3a4c3h

+dd 0a6959440h

+dd 032cd63ceh

+dd 0dce3e127h

+dd 00e0b821ch

+dd 0721f49abh

+dd 09737335eh

+dd 01e7af9b9h

+dd 0924865aeh

+dd 05410817ch

+dd 0a7d3f044h

+dd 08e681747h

+dd 0b837dbd5h

+dd 008fa0672h

+dd 0bb31c5a0h

+dd 0ec4a4e05h

+dd 0a4d087d3h

+dd 0d3b38736h

+dd 0e8c3a56ah

+dd 0559a4db3h

+dd 0351c11b1h

+dd 02ab10309h

+dd 0f17ea7b6h

+dd 06e1a6892h

+dd 016d34467h

+dd 0365657a6h

+dd 0cc75d26dh

+dd 0eae1fc6eh

+dd 08fbad695h

+dd 0ef15ee14h

+dd 002e4d89ch

+dd 0cc73cefbh

+dd 01f338863h

+dd 0eb32f15bh

+dd 00d6f333bh

+dd 08f644201h

+dd 0dff7d738h

+dd 08e5adf6eh

+dd 0a0d0d5a6h

+dd 08c10ddd2h

+dd 0b1158ebbh

+dd 0d1fab02ch

+dd 016c06533h

+dd 036605cdch

+dd 01fa6c6f1h

+dd 02ae6bbc8h

+dd 0171227f2h

+dd 05409921ch

+dd 0e767404ah

+dd 08a4f2e44h

+dd 068530951h

+dd 0696c3383h

+dd 0e70ebd86h

+dd 0fe12c893h

+dd 03b38d354h

+dd 0027d1256h

+dd 0b99c2a0eh

+dd 0313cf4a2h

+dd 0f83f2993h

+dd 0fce4e3f7h

+dd 0f1f635f8h

+dd 0d5774e2ah

+dd 03727c52ah

+dd 0c9c94e4ah

+dd 00e553044h

+dd 064cca331h

+dd 0581895d6h

+dd 0d6009789h

+dd 00b08483eh

+dd 0c8cfc356h

+dd 047ee8ed8h

+dd 01745d993h

+dd 00bd4e1dah

+dd 02d31f944h

+dd 050b9c23dh

+dd 059070697h

+dd 0daccbe3fh

+dd 0f2b463d5h

+dd 0de80c149h

+dd 0cbfc32f3h

+dd 01c82a8a7h

+dd 035b94ec7h

+dd 0f9392e40h

+dd 0a7cfaf93h

+dd 0c58a3e83h

+dd 088648796h

+dd 04f69a042h

+dd 02c0582c0h

+dd 0a6f2092dh

+dd 0d990c4dch

+dd 0229697d1h

+dd 0312dffa9h

+dd 0b1d1bb63h

+dd 05ebef241h

+dd 09788db9dh

+dd 078a23deeh

+dd 0d8d5b53ah

+dd 040dd0bcah

+dd 04b2a45c8h

+dd 0ae16b4e0h

+dd 06cc9746eh

+dd 0a4192d84h

+dd 0a1d2eda3h

+dd 0edc9e7a3h

+dd 05841dec8h

+dd 035a407b2h

+dd 09250abd1h

+dd 010d4529dh

+dd 09247a44ah

+dd 098d86372h

+dd 09e709924h

+dd 0107f4f43h

+dd 0171f9942h

+dd 0ee0d3e85h

+dd 0aa4138e4h

+dd 092da2bech

+dd 04de34c8eh

+dd 05d972a2ch

+dd 0668deeb0h

+dd 042f708cfh

+dd 0331c3743h

+dd 0fc9c10bdh

+dd 00e89fbf8h

+dd 0c26fc82fh

+dd 0a2ea722eh

+dd 01c722553h

+dd 03519ce3fh

+dd 0408d7563h

+dd 08b7a0ef5h

+dd 07126d929h

+dd 05b94d560h

+dd 0b0d8be42h

+dd 0060a6614h

+dd 0fb665f46h

+dd 0e30edacah

+dd 0b0ecfaeeh

+dd 0ace6f99ah

+dd 08d296791h

+dd 00caeaaafh

+dd 03a2c459eh

+dd 0660a1d2ah

+dd 0f5ac4c45h

+dd 0d11579ceh

+dd 0a1b5f5a5h

+dd 0001f4153h

+dd 0872065e4h

+dd 0763d1e72h

+dd 08c9744f3h

+dd 0ea863da2h

+dd 0e1e3e841h

+dd 0736888e9h

+dd 088dedce9h

+dd 06aac07bfh

+dd 0fb8ce28bh

+dd 0cad729c3h

+dd 08a04d5e3h

+dd 0bb874e2dh

+dd 0a63ba2b7h

+dd 0609d8e51h

+dd 0ffd40eeeh

+dd 0826d4237h

+dd 0532a752bh

+dd 04bc73a21h

+dd 0636e128bh

+dd 0f07731d8h

+dd 0069faaa7h

+dd 028833187h

+dd 01bb15f3fh

+dd 0b1559106h

+dd 071791f7ch

+dd 0720fb31bh

+dd 0e418bcach

+dd 09b41e2b9h

+dd 0a5d7418dh

+dd 0deaa4456h

+dd 05f23e2aah

+dd 0b4931e4dh

+dd 0f7008d88h

+dd 07447e408h

+dd 07c86d898h

+dd 0760576aeh

+dd 011a654f0h

+dd 030ab80b5h

+dd 0c112ec08h

+dd 0815ecdb5h

+dd 00b0c30feh

+dd 0bb780b05h

+dd 0294640cbh

+dd 0587a25a1h

+dd 0c4fec64bh

+dd 0dd1954a3h

+dd 0d85ce1c3h

+dd 04982259ah

+dd 01c3a3ddeh

+dd 0b30f5259h

+dd 02efd9477h

+dd 00f3204a2h

+dd 03f002ba2h

+dd 01dd9ebe9h

+dd 068290449h

+dd 0ff67aa6dh

+dd 0fdbcf913h

+dd 003135b23h

+dd 009866edch

+dd 081659351h

+dd 096f26ca7h

+dd 0a77f9ce2h

+dd 03fa2583dh

+dd 09047d2fah

+dd 00d4aaae0h

+dd 0f6dd2384h

+dd 02e39e995h

+dd 035196597h

+dd 0762def5ah

+dd 0a0e19d9ah

+dd 0a961a937h

+dd 0617a131bh

+dd 053a5a03ch

+dd 0149b8662h

+dd 0dc735da1h

+dd 02fec8d61h

+dd 0c039e01fh

+dd 00d9b51deh

+dd 0367aed56h

+dd 071050071h

+dd 0092ac134h

+dd 0b60f0c4bh

+dd 0860c208ah

+dd 09678d710h

+dd 0a1b84dc4h

+dd 05bc01fbbh

+dd 0ef5bc651h

+dd 0cf71d7a9h

+dd 06d139a32h

+dd 0d28f8b30h

+dd 08560f098h

+dd 03f1f7182h

+dd 0e672375fh

+dd 07afc3c83h

+dd 05d3fd912h

+dd 0d0868554h

+dd 04c4ca3b4h

+dd 070b9bd06h

+dd 029ad19dah

+dd 0a319a6e3h

+dd 0e315212eh

+dd 06b8338ebh

+dd 0452064dbh

+dd 0b82b1ee7h

+dd 046d16e54h

+dd 02a11c8bbh

+dd 0beb8fecfh

+dd 04876a451h

+dd 0f84a6e6ah

+dd 061496080h

+dd 060589a2dh

+dd 0f0e7bd64h

+dd 05b4ae9e9h

+dd 01284a326h

+dd 05bdc9994h

+dd 0d83696bah

+dd 091604794h

+dd 0d8692479h

+dd 0fabbb590h

+dd 012df99f8h

+dd 03e0ae8b5h

+dd 0c02c5253h

+dd 041d9b886h

+dd 0ab1242b7h

+dd 0b217e79fh

+dd 091ecbdb4h

+dd 051b4dd57h

+dd 0e4d381d7h

+dd 07c7a4190h

+dd 0567fc4cah

+dd 0128f2ef3h

+dd 014c0ac95h

+dd 095b5762dh

+dd 011526220h

+dd 0143484a6h

+dd 008938558h

+dd 084463968h

+dd 067232083h

+dd 0ad061eefh

+dd 05679b166h

+dd 0068f38c7h

+dd 02711962bh

+dd 08ee81470h

+dd 0d7726a6ch

+dd 05ee17545h

+dd 047504363h

+dd 0394bbc43h

+dd 0c9a1138bh

+dd 0aad171bfh

+dd 067cb586ch

+dd 013d4105eh

+dd 07e59ba9eh

+dd 0b89fd4ffh

+dd 05048f478h

+dd 01f8ca6c3h

+dd 04d9af794h

+dd 091326dabh

+dd 083e01096h

+dd 0ca55e17ch

+dd 06df9f4d6h

+dd 03bfdcb4eh

+dd 0ec5de34eh

+dd 017ad4884h

+dd 0cb729c9ah

+dd 0e60a54a3h

+dd 00087efdeh

+dd 054a97708h

+dd 0617ba351h

+dd 0a05b1e61h

+dd 05bbec026h

+dd 082864a6fh

+dd 06733c3fah

+dd 08289d38ch

+dd 03c8cc4a7h

+dd 0d2975c0dh

+dd 0866f0627h

+dd 04c1b2e7dh

+dd 0365723a6h

+dd 0c0ac0753h

+dd 066f61db7h

+dd 03f54992eh

+dd 0a8db7c0eh

+dd 050f6bab4h

+dd 064cf26aah

+dd 08a23f439h

+dd 0b8b89e2dh

+dd 0d8330d3fh

+dd 099f03e89h

+dd 0dfb60776h

+dd 097ad2737h

+dd 0e7aa2836h

+dd 0bf1cb92fh

+dd 034b5c8d4h

+dd 09d3734cdh

+dd 0d0c40552h

+dd 0dbcb4017h

+dd 09f4ef4dch

+dd 0086468eah

+dd 0fda045b8h

+dd 0e03ff082h

+dd 0c5e1cb95h

+dd 055a43949h

+dd 040d5d484h

+dd 09a57ea9fh

+dd 0cbc7f550h

+dd 0d8f41c36h

+dd 0a7edab8fh

+dd 0bc04ea07h

+dd 0f14cb3c8h

+dd 0ea5bd53bh

+dd 091bb6ecbh

+dd 08396a58ch

+dd 03435defdh

+dd 033d370ffh

+dd 0f2eec92fh

+dd 0664b16ceh

+dd 07f03076ah

+dd 066644c09h

+dd 0edab0bd0h

+dd 0d4fbcb5ch

+dd 044a54cc8h

+dd 0ba26e532h

+dd 024c4d60ch

+dd 04db3fecbh

+dd 044363b98h

+dd 0b4c6be67h

+dd 053f4d638h

+dd 0ae0c0dd8h

+dd 0354cf149h

+dd 0ef08c99eh

+dd 0539b4cdah

+dd 0e5e6cbc9h

+dd 082282e4fh

+dd 0e2b805edh

+dd 05f1fb975h

+dd 05fadee21h

+dd 0d1cf072eh

+dd 027506d18h

+dd 0b2855b05h

+dd 038e84625h

+dd 0350a69e6h

+dd 070ba4850h

+dd 0168ef879h

+dd 0756b9754h

+dd 04d0761f7h

+dd 06d060c03h

+dd 089784999h

+dd 04bb6f12fh

+dd 0d19df6d4h

+dd 0c243a200h

+dd 05aa69542h

+dd 0dcef36f1h

+dd 0c786fa74h

+dd 09998fcc9h

+dd 0547733e2h

+dd 0b9e7ddf4h

+dd 006b596bfh

+dd 07f8063f1h

+dd 0e7062d21h

+dd 0059109f5h

+dd 08a6f2772h

+dd 07324d4aah

+dd 0c450542ch

+dd 0ffb7ff9bh

+dd 0890d1209h

+dd 099be20aah

+dd 04c439dbbh

+dd 0e1827009h

+dd 01f62173eh

+dd 007c6b5fch

+dd 0b7438ce4h

+dd 0f4801f92h

+dd 087cbc05dh

+dd 060d4dcdfh

+dd 038e26867h

+dd 0317344bdh

+dd 0b226cf5eh

+dd 001c88e03h

+dd 0be16ad79h

+dd 04a89eec4h

+dd 0984198c0h

+dd 0d3a50b7bh

+dd 07a6ad660h

+dd 0f2440f77h

+dd 0bbd017e4h

+dd 0f506adbeh

+dd 05199970ch

+dd 07c589583h

+dd 0e564f99eh

+dd 0cd0f2100h

+dd 064324ea1h

+dd 08b1c0804h

+dd 0c0c09dcdh

+dd 0635911f0h

+dd 07312c107h

+dd 0eb6776d9h

+dd 0eda2f18eh

+dd 0f8b10834h

+dd 0bab0e392h

+dd 00700d05bh

+dd 0ff85da39h

+dd 0bb19db23h

+dd 09f457a3dh

+dd 05dfc3b09h

+dd 019d0e376h

+dd 071f1caa2h

+dd 0c3d8c20dh

+dd 025882ae9h

+dd 0401abcb2h

+dd 0c9249ba2h

+dd 0a70ab564h

+dd 04f9b9f5fh

+dd 038326739h

+dd 0dad9eaadh

+dd 06b61a387h

+dd 02e0c556eh

+dd 02fc0384fh

+dd 0b9d1d9b7h

+dd 0ef052925h

+dd 085352ec3h

+dd 0256acd95h

+dd 00d4b75b8h

+dd 003f35849h

+dd 050c023b4h

+dd 064437207h

+dd 099bdfabeh

+dd 06cafbc2dh

+dd 02982dff2h

+dd 0d745b8d7h

+dd 0a0b22479h

+dd 08a7a8038h

+dd 002872722h

+dd 091f088d8h

+dd 017837188h

+dd 039747c15h

+dd 05408d629h

+dd 0f6281394h

+dd 0cb1a2218h

+dd 0d449d312h

+dd 029b2f205h

+dd 0519f6397h

+dd 0df92e697h

+dd 05bf51c08h

+dd 062e0f173h

+dd 058e4093ch

+dd 03fb2e8ebh

+dd 0b4137d6fh

+dd 094d808f5h

+dd 0fad20c1ch

+dd 01b6b1fdeh

+dd 04de13d93h

+dd 00a404218h

+dd 062b66a58h

+dd 04a260f47h

+dd 05db4aa54h

+dd 077601fech

+dd 0fedba1d4h

+dd 04c35ac48h

+dd 0361f8f14h

+dd 0e315a449h

+dd 050b79620h

+dd 06072ebe8h

+dd 0b2bff856h

+dd 096dfee2ch

+dd 080aaf20ch

+dd 0a9eb118dh

+dd 09786e370h

+dd 0956046eeh

+dd 06ea807ceh

+dd 0d3c5c5c7h

+dd 05e2183e3h

+dd 02baab875h

+dd 0467e7809h

+dd 0cf449594h

+dd 027b9de72h

+dd 095be145eh

+dd 0a1433271h

+dd 0e210e221h

+dd 0a2ac345ch

+dd 001b0553bh

+dd 008c28a6ah

+dd 00e84d8ech

+dd 08d6f6b1ah

+dd 051d85527h

+dd 0073ec479h

+dd 0939c5781h

+dd 02abf7389h

+dd 02ee4e3fbh

+dd 024011ef0h

+dd 077703ab4h

+dd 0de4fb5cfh

+dd 0d4c2c19ah

+dd 033880d71h

+dd 0a52cb614h

+dd 0cbaa9ae5h

+dd 058a38b2fh

+dd 0d1bedc55h

+dd 08a7f4abch

+dd 0a07963c1h

+dd 062a734aah

+dd 09b2a7792h

+dd 05d15e7fch

+dd 0c36ed9d0h

+dd 0edd69993h

+dd 0c3e7f01fh

+dd 0bcced8bbh

+dd 0b82bc78ch

+dd 020304fbch

+dd 034866d37h

+dd 0d0ef45fch

+dd 06f2bfc19h

+dd 05d3f8a70h

+dd 02a834dedh

+dd 07a83848eh

+dd 035857595h

+dd 0ee6f58a6h

+dd 088745218h

+dd 05fdf37e7h

+dd 0f41db75eh

+dd 0917bd69eh

+dd 099c01f35h

+dd 0c89497e0h

+dd 03dfe0f6fh

+dd 0404ee354h

+dd 030612990h

+dd 034215a6dh

+dd 0133e8739h

+dd 051db9786h

+dd 0613273fdh

+dd 068c6e3dch

+dd 08901452ah

+dd 0b02178f1h

+dd 0b3508504h

+dd 0a329b471h

+dd 0c366f294h

+dd 0fd1b6f2ch

+dd 01cb5e4f8h

+dd 0f658e697h

+dd 0b2aac939h

+dd 0d7485d53h

+dd 0aa3225b6h

+dd 068dee194h

+dd 00147bb97h

+dd 0191095bfh

+dd 03adcef75h

+dd 06f5497b2h

+dd 032c71e59h

+dd 08d6b4b42h

+dd 040f76b77h

+dd 052f865c5h

+dd 0e7d307ach

+dd 03396a3fdh

+dd 06ceba49dh

+dd 09a655b69h

+dd 082acce9dh

+dd 0532f0753h

+dd 0fe975717h

+dd 01f397743h

+dd 05f0fe399h

+dd 0fbc277cch

+dd 0c5fcce8fh

+dd 0bb90f7f4h

+dd 06baa8465h

+dd 02e68d22fh

+dd 0765c9a71h

+dd 0dc464808h

+dd 0fccc731bh

+dd 0dcacecabh

+dd 01e7419a1h

+dd 06e2168fbh

+dd 021f86835h

+dd 0b8ea77ddh

+dd 0a4e0a1adh

+dd 0089f934eh

+dd 0763a6e6ch

+dd 0960c98c8h

+dd 08d441760h

+dd 0d1eacd6fh

+dd 016746ac3h

+dd 0789353aah

+dd 059bfe216h

+dd 0872402bch

+dd 06e2e464bh

+dd 0cbb3c873h

+dd 083f1d1cfh

+dd 053282d3ch

+dd 00418f2efh

+dd 0e4187d33h

+dd 0ef7ac343h

+dd 07e13a3bfh

+dd 02d3c494fh

+dd 018447de2h

+dd 089ed64dah

+dd 0d9d0138ch

+dd 0fa719cd6h

+dd 0b9ad98a3h

+dd 02a15a75dh

+dd 016f9df07h

+dd 088f8fda1h

+dd 0c6654bc8h

+dd 0bffd8864h

+dd 09fada4a4h

+dd 01db106b1h

+dd 09ff39080h

+dd 010bcca21h

+dd 0ecb7510dh

+dd 095074b71h

+dd 0f3130bb3h

+dd 01aac7f22h

+dd 01d06a0a1h

+dd 0a3ecf73eh

+dd 0fec1171ch

+dd 08d82d17dh

+dd 01a85d174h

+dd 0f0c1cf9ah

+dd 00d8cd63eh

+dd 0f64f4cd3h

+dd 0f3366159h

+dd 0bafadb74h

+dd 01fe3f74ah

+dd 0258895dah

+dd 03588b61dh

+dd 0b41304b3h

+dd 0b27fdd11h

+dd 060291e6ah

+dd 0bcf5c7bch

+dd 00aadc345h

+dd 04a479f0bh

+dd 0fa6c3709h

+dd 0b425023dh

+dd 097588652h

+dd 0a96637b6h

+dd 0af84b1b0h

+dd 0691d5930h

+dd 02c8953eah

+dd 08de82916h

+dd 0db20ea90h

+dd 0fabb0d79h

+dd 0bc8d623eh

+dd 06b770e63h

+dd 04f3dfe0dh

+dd 003cdabf0h

+dd 054f8a720h

+dd 0e9cc5169h

+dd 0b7715b69h

+dd 03b947054h

+dd 050402ad6h

+dd 099862be8h

+dd 08e2c91e5h

+dd 01343891dh

+dd 044fb28c2h

+dd 0b34e7735h

+dd 04a4e3db3h

+dd 0d6be5483h

+dd 06e1ff3f4h

+dd 0770bda2ch

+dd 0f759baabh

+dd 06f68be84h

+dd 0a64a819bh

+dd 0226e6d02h

+dd 0877fbf0ah

+dd 0190dd16eh

+dd 0a2b41af6h

+dd 046a9e532h

+dd 041557086h

+dd 041284477h

+dd 033cff17ah

+dd 0f8e38e78h

+dd 083c807fch

+dd 0f3f7eeddh

+dd 0aaf193ffh

+dd 0c76dac87h

+dd 0efc99a98h

+dd 0558d505eh

+dd 0b0a192a8h

+dd 04aabe32eh

+dd 06077dec5h

+dd 0edcce618h

+dd 072383b63h

+dd 02b8387d0h

+dd 0aa80993dh

+dd 0954d99ech

+dd 0c098d822h

+dd 0a83b3227h

+dd 0182aef10h

+dd 05a5489a4h

+dd 09e3ecdc3h

+dd 00fb67272h

+dd 08a65cf2eh

+dd 020db63e3h

+dd 06356fad3h

+dd 00a0ef227h

+dd 0b26f905eh

+dd 08a8f53c5h

+dd 0c692f9e6h

+dd 03af6ec22h

+dd 0de86ce30h

+dd 067b40a33h

+dd 07d1783bdh

+dd 0dd33bf07h

+dd 0bf6339c7h

+dd 0f92e7861h

+dd 0835b8c19h

+dd 017347532h

+dd 001546121h

+dd 093c57be8h

+dd 00aaa7126h

+dd 0ca6bb31dh

+dd 05ff47023h

+dd 05b712983h

+dd 0e479f118h

+dd 08c895b04h

+dd 0183297d0h

+dd 03b31ac48h

+dd 0830e23a0h

+dd 00e3a91dbh

+dd 088491cb5h

+dd 0a868322bh

+dd 0691ff3b8h

+dd 012b92756h

+dd 03428875ch

+dd 08bcd0cefh

+dd 0f33a72d6h

+dd 040e7e348h

+dd 08ba55f51h

+dd 0ae07255fh

+dd 0f8cef1e6h

+dd 06f233d53h

+dd 0d603df69h

+dd 0e7a69a61h

+dd 0f8392d2fh

+dd 0572f6b2ah

+dd 04d4bf576h

+dd 0f9a9953fh

+dd 09352a5a7h

+dd 0c325d8feh

+dd 042ae3e1eh

+dd 0651f9d0ah

+dd 0530bee9ah

+dd 0b7f99966h

+dd 08df1349fh

+dd 07a567f23h

+dd 0d8813ecch

+dd 087c1ff22h

+dd 0e2166b3dh

+dd 075e58695h

+dd 085d969fch

+dd 0bbd85dc3h

+dd 0d9f17839h

+dd 07dec8c06h

+dd 0721668efh

+dd 0fa028ee6h

+dd 07c104738h

+dd 0296e39deh

+dd 0de3226ebh

+dd 0e1eaa722h

+dd 0a2ea2511h

+dd 0d2624643h

+dd 02c9a537bh

+dd 0c2daa8d3h

+dd 0e40aa734h

+dd 09b7b4086h

+dd 04f63b115h

+dd 08ebd6dd5h

+dd 0fe687eb4h

+dd 00bbcb3adh

+dd 0fd8559eah

+dd 0e5bdc25ch

+dd 09dbba777h

+dd 0661caf99h

+dd 0f4236848h

+dd 056174c6fh

+dd 06558ed2fh

+dd 0b3434f30h

+dd 0ec691aefh

+dd 03aedec05h

+dd 09903f3b0h

+dd 0fb435c62h

+dd 0cdc299ebh

+dd 0aaa292e4h

+dd 08fa790aah

+dd 01c623631h

+dd 035889ccfh

+dd 05f7de97bh

+dd 0f4485e15h

+dd 0f6308769h

+dd 018674804h

+dd 00814bbc4h

+dd 08c12be18h

+dd 0e5796ca8h

+dd 05cf4ec49h

+dd 0511512e8h

+dd 00b64f68ah

+dd 003547d00h

+dd 03bd143a2h

+dd 02389d2dah

+dd 032beffb5h

+dd 09ea6bc3dh

+dd 0ce085d73h

+dd 00e029f09h

+dd 0894fe498h

+dd 0953f7cbch

+dd 0e5f2745fh

+dd 0de246a4bh

+dd 0768f81c4h

+dd 0597436c5h

+dd 09947a0b7h

+dd 0c682ef97h

+dd 03521356ch

+dd 046826bc5h

+dd 062aff688h

+dd 02ab3972bh

+dd 0c97693a6h

+dd 0716dd3f1h

+dd 0c0d6424bh

+dd 0b57156e9h

+dd 0bd291f20h

+dd 0785d71c8h

+dd 0f77e2c72h

+dd 05a20eb33h

+dd 0ce83adeah

+dd 068be698ch

+dd 06c75a566h

+dd 06982e1d6h

+dd 078693421h

+dd 03de3669dh

+dd 0e71669e3h

+dd 03045778fh

+dd 05023f335h

+dd 075daed1ch

+dd 088f23bd9h

+dd 0a14e5d55h

+dd 0a77e8290h

+dd 06318bb05h

+dd 02e87dfa4h

+dd 0d1e73236h

+dd 025715965h

+dd 0835da686h

+dd 0dfcb4c22h

+dd 06845340ah

+dd 040881c1dh

+dd 04bfde654h

+dd 051ebb12dh

+dd 0512722c6h

+dd 01f5502f6h

+dd 0b1ee6c5ah

+dd 08cd6cf3eh

+dd 086ebbfcbh

+dd 0334d1b8dh

+dd 0201a9ea4h

+dd 073cefedah

+dd 068713e88h

+dd 0fcffe6b1h

+dd 085c6b1f2h

+dd 09c2f326ch

+dd 0776b575ch

+dd 097107c2ah

+dd 0495b0631h

+dd 04d9c03b2h

+dd 0c038c03fh

+dd 05a3ee910h

+dd 0d7519b92h

+dd 0c05d1a53h

+dd 0c556262eh

+dd 098b339eah

+dd 0c590882bh

+dd 0be407a7bh

+dd 0ceb35696h

+dd 06a03ec59h

+dd 0f1632f42h

+dd 0a07ca18ah

+dd 06b59443bh

+dd 083da0b72h

+dd 047cf9256h

+dd 04146bccah

+dd 0218be603h

+dd 07aee610ah

+dd 049d7fd4bh

+dd 046e08a11h

+dd 08e7f2437h

+dd 00ed4b11fh

+dd 00c5ee373h

+dd 0ddf0f2a0h

+dd 0e98a187fh

+dd 0e7cebb05h

+dd 0b92832cch

+dd 0c690283eh

+dd 07a7d0b9ch

+dd 0ea9f7d45h

+dd 0274b881fh

+dd 06420813bh

+dd 06c137f49h

+dd 01d1fbf51h

+dd 0b10c785eh

+dd 0aef3c791h

+dd 0745f3183h

+dd 018244a9dh

+dd 09d0ddc9dh

+dd 0178c324ah

+dd 0cd7ce71ch

+dd 0e1b54482h

+dd 0ae8eedbeh

+dd 0b4123d79h

+dd 0a204a4fch

+dd 0eeb17db4h

+dd 05e470f66h

+dd 0b7de6ba4h

+dd 059def197h

+dd 0c6560525h

+dd 0a29f8069h

+dd 04d06fda3h

+dd 023bd81c7h

+dd 0a0e0a0e7h

+dd 0b74d4cd3h

+dd 0f9892eb0h

+dd 0dff3febeh

+dd 002812c42h

+dd 0e1768eebh

+dd 0ab3dd0f5h

+dd 0eee20767h

+dd 099c3ef94h

+dd 05580a3a5h

+dd 062d5ddb8h

+dd 01f19f730h

+dd 0c934664ah

+dd 0f0d0b0ffh

+dd 084666544h

+dd 0dfa4d5cdh

+dd 013c75ecfh

+dd 088ac27b7h

+dd 02498af36h

+dd 00622231eh

+dd 0397d7863h

+dd 007285319h

+dd 0916b0a95h

+dd 013034ad4h

+dd 07cd51627h

+dd 09c5fa0f8h

+dd 0599c2067h

+dd 068ace4cfh

+dd 050b69455h

+dd 03295f93ch

+dd 0ade42fd8h

+dd 0bcb588e0h

+dd 061c1b1e1h

+dd 087a203a2h

+dd 001a53cb8h

+dd 06ec57132h

+dd 087fcf01bh

+dd 08e90d119h

+dd 0226f1ed7h

+dd 077003cech

+dd 0c126bcb0h

+dd 06dc2a31eh

+dd 06118bba4h

+dd 00f495f40h

+dd 0c3b80b7ch

+dd 0e61053f4h

+dd 01ea64622h

+dd 02f9d4f11h

+dd 0242a3602h

+dd 082580f12h

+dd 0e77f4ff2h

+dd 0b968d128h

+dd 071727af6h

+dd 001223584h

+dd 02177a9dbh

+dd 0f749a51dh

+dd 04c46efbfh

+dd 0bbe4c7c8h

+dd 0a5a33076h

+dd 0cefd9595h

+dd 047ebef77h

+dd 0885bb5eah

+dd 04a9452f9h

+dd 05cf8da27h

+dd 009a57be7h

+dd 024cade68h

+dd 017ea1be5h

+dd 05bdf15bfh

+dd 09c155e1eh

+dd 0d8a5e1f6h

+dd 020c0f60eh

+dd 0032e8e5bh

+dd 05d0238a7h

+dd 0244c0df2h

+dd 04461e9e3h

+dd 0a4e2788bh

+dd 00974568bh

+dd 09d49343eh

+dd 022d5fea8h

+dd 0afacfcafh

+dd 0b854bc5dh

+dd 0cb39cefch

+dd 0c2bce22bh

+dd 02bc14717h

+dd 06e3eff75h

+dd 09ef6c957h

+dd 0baf31cfbh

+dd 06386f757h

+dd 0f633e134h

+dd 0109898a0h

+dd 02339e976h

+dd 0251ef843h

+dd 09a073ab8h

+dd 001d7119ah

+dd 05de3790ch

+dd 0587f4649h

+dd 08ada6224h

+dd 0ef5a1d56h

+dd 0346c4022h

+dd 0c86106c2h

+dd 070439a88h

+dd 0a79fb68dh

+dd 07ede0ca4h

+dd 05f246d1ch

+dd 0b6403cd8h

+dd 0cbefb7fbh

+dd 0e071e620h

+dd 0dd835f41h

+dd 032ad29c0h

+dd 0616ec8b5h

+dd 0ad8ccb79h

+dd 01c10b6b3h

+dd 052d7d5c8h

+dd 0a9ad9f0dh

+dd 0885ee0e3h

+dd 08435c2b5h

+dd 0ee7bc774h

+dd 0ac04cb5fh

+dd 000b198bdh

+dd 0048b8fcbh

+dd 05ff9bc3eh

+dd 0bcccf4beh

+dd 0b06f5061h

+dd 0dbb46259h

+dd 0a98f0ac4h

+dd 0a7698568h

+dd 0c0373bcdh

+dd 071fbb76eh

+dd 0f2384fe4h

+dd 0de087acfh

+dd 04f8435b4h

+dd 0501ad425h

+dd 0996923dbh

+dd 00f61fa7ch

+dd 037cb69dah

+dd 0a90afdc2h

+dd 0ddc57b91h

+dd 06fe54258h

+dd 038ada72bh

+dd 0274a0e1dh

+dd 0e713e53bh

+dd 035fb4e16h

+dd 094d4d4a3h

+dd 036b55b0eh

+dd 0e24c6b6fh

+dd 09a33ca0eh

+dd 036d92221h

+dd 0b2218b6eh

+dd 05e1d6c6dh

+dd 0ec7aa93fh

+dd 029849259h

+dd 016efdfb4h

+dd 0fab03d93h

+dd 01cc05ddch

+dd 058a7e396h

+dd 08caba802h

+dd 0fe936733h

+dd 050bb7469h

+dd 0d2208749h

+dd 08afc8087h

+dd 0c35b75a1h

+dd 02b49f1b1h

+dd 02bbf17b7h

+dd 08c5fc2d3h

+dd 0159ceca7h

+dd 058bd203ah

+dd 0504b1519h

+dd 00f0e2dcdh

+dd 02b1450e3h

+dd 0ae95239bh

+dd 0cf9efa14h

+dd 06c1529feh

+dd 0ab472c0bh

+dd 0c9f99684h

+dd 0885be22dh

+dd 09dcad838h

+dd 01c508bd5h

+dd 043ca3248h

+dd 00c8cf2c4h

+dd 0e71fb53eh

+dd 074d16785h

+dd 098f93706h

+dd 0c16f90ech

+dd 03a89ee0dh

+dd 0a6fd99e9h

+dd 07e5d9f09h

+dd 0abdfa225h

+dd 07ea91826h

+dd 0119875e8h

+dd 0818eb54eh

+dd 0abc98d92h

+dd 07be1c374h

+dd 0ec7c1cc5h

+dd 09f777dcbh

+dd 053f3f3fch

+dd 0c2ecc7a7h

+dd 04ade9aaah

+dd 0cd39047fh

+dd 0b9a23b87h

+dd 01ede1275h

+dd 02222ac5ch

+dd 03c940b1ah

+dd 0b99ec320h

+dd 0ef3cf080h

+dd 06378a1edh

+dd 039f6c8bah

+dd 07232af6bh

+dd 0d8c5350eh

+dd 0958aa82dh

+dd 0fd647eedh

+dd 0f89d8386h

+dd 055653259h

+dd 075c600cah

+dd 0224dff7ch

+dd 06d3db6c3h

+dd 02574a10ch

+dd 0fd3ec414h

+dd 09404ac95h

+dd 00713ca6fh

+dd 08fb7c272h

+dd 03f52d688h

+dd 0228912bah

+dd 0122eec7dh

+dd 08ad2523eh

+dd 0e4876154h

+dd 009745385h

+dd 0b094c446h

+dd 05983073bh

+dd 0d6143030h

+dd 049893fb7h

+dd 0d996126ch

+dd 020f3d423h

+dd 01e5365a7h

+dd 0238c0aefh

+dd 0b0040fd0h

+dd 0667ccf31h

+dd 0e148cb2bh

+dd 033156feah

+dd 09805033ah

+dd 0a90d69fah

+dd 0a0d2775ch

+dd 03ad50ee1h

+dd 02259bb96h

+dd 0e5b0a3efh

+dd 00ac0d4b5h

+dd 08b398150h

+dd 0e45291dah

+dd 067a15353h

+dd 064772384h

+dd 0d7ee63a6h

+dd 069aa64a4h

+dd 0521fb102h

+dd 06407fa6ch

+dd 04cef9dd6h

+dd 03ae93648h

+dd 082b8f8b0h

+dd 096a57b92h

+dd 07dbab935h

+dd 0b4b899a5h

+dd 0c2471b17h

+dd 04359cb51h

+dd 0b848f10fh

+dd 0a50a5401h

+dd 0d0129637h

+dd 0b9ff7ac0h

+dd 0daed71c5h

+dd 02e4a3d76h

+dd 0246d9a76h

+dd 05fa9371dh

+dd 05efcad57h

+dd 0fdb972b8h

+dd 082fed246h

+dd 0409b2d30h

+dd 0db79205ch

+dd 0376b8917h

+dd 02af42819h

+dd 00dfe2e5eh

+dd 083e15a78h

+dd 0cb8bf795h

+dd 02f4fc267h

+dd 0ccbe5f58h

+dd 0a3f16b88h

+dd 070ad130eh

+dd 02712625ah

+dd 0de28eef2h

+dd 03fe4b8cah

+dd 0b9229bd0h

+dd 0cdb7e37ah

+dd 07500406dh

+dd 04e66d2c2h

+dd 047ef5a94h

+dd 0b1880448h

+dd 074a39fc7h

+dd 018925b44h

+dd 0d6efcd7fh

+dd 0a91d7f18h

+dd 0256e6a0fh

+dd 083931fd0h

+dd 0fc9ee9ddh

+dd 0107e3ca6h

+dd 0ef4773dah

+dd 0754cc20bh

+dd 00aa89bc7h

+dd 0ed64107bh

+dd 08c25f818h

+dd 08c992c41h

+dd 081085065h

+dd 0eb6a89e4h

+dd 0310d810fh

+dd 01f183d93h

+dd 00531771ch

+dd 001fca3a4h

+dd 01f32443dh

+dd 093dd070ch

+dd 0057fe939h

+dd 03a3dfb44h

+dd 0548f2e65h

+dd 0df8f0ad6h

+dd 04e647890h

+dd 08d4f8f13h

+dd 08142e0c0h

+dd 09279b671h

+dd 0c1af017ah

+dd 0124c1b18h

+dd 0a93c8871h

+dd 06f6d8e63h

+dd 0938db0b2h

+dd 07379ede0h

+dd 08ecf90afh

+dd 07e431831h

+dd 07c361225h

+dd 05358582eh

+dd 0ce199dc8h

+dd 02002c352h

+dd 0f801f0c3h

+dd 014bb551ch

+dd 039d07246h

+dd 0d502810bh

+dd 0aa85fde4h

+dd 068018d50h

+dd 002dea3a3h

+dd 007594ad9h

+dd 09447d05dh

+dd 071fdf6a1h

+dd 088b34f3ah

+dd 07494a00dh

+dd 072bc9999h

+dd 059b3dc0eh

+dd 021ae2951h

+dd 01fcc01ach

+dd 061af8baeh

+dd 0dd553597h

+dd 03af9d176h

+dd 0b2daf319h

+dd 01ee43d96h

+dd 040b67ddfh

+dd 06e09f396h

+dd 09298646ch

+dd 0c3298077h

+dd 02bf1f271h

+dd 02a5119f1h

+dd 04d996f20h

+dd 08d0bca49h

+dd 048023487h

+dd 0243bc5e7h

+dd 0256bb4eah

+dd 0233ca818h

+dd 0f1359194h

+dd 08cb5ceceh

+dd 0bbac1793h

+dd 0ff5c16fbh

+dd 00741ebe2h

+dd 0937ed6ebh

+dd 0b59b73f8h

+dd 02c20ac9ch

+dd 0a8087c85h

+dd 0c89de648h

+dd 018ab7907h

+dd 0fb4ed574h

+dd 02678a2e6h

+dd 066853aa6h

+dd 06e799a14h

+dd 0063142f1h

+dd 08c9ec542h

+dd 069292fd1h

+dd 07eeff8a2h

+dd 0a9f409fdh

+dd 0459b1b32h

+dd 0ab8f355eh

+dd 0af4a0827h

+dd 085280799h

+dd 00d8eba3dh

+dd 076d00e90h

+dd 0183a778ch

+dd 0494bf496h

+dd 09fdd0eb4h

+dd 0d46eeacah

+dd 0f707d1feh

+dd 0089e8428h

+dd 0ffae3577h

+dd 00fba2345h

+dd 05987fa9bh

+dd 098eda79eh

+dd 01aa1ca13h

+dd 07c9ead94h

+dd 0791c7eb1h

+dd 05f1cacc6h

+dd 0534711c8h

+dd 092911f4ah

+dd 0b84b91bah

+dd 0c0572d2bh

+dd 01bf8a68ch

+dd 00d63ad5bh

+dd 0ff92bcb1h

+dd 011685ba0h

+dd 0fb33c091h

+dd 07e842636h

+dd 0faed7930h

+dd 0d0aca875h

+dd 014c68aabh

+dd 0582c281eh

+dd 03945a992h

+dd 0ea56a27fh

+dd 0c141ecf4h

+dd 0ab725d3eh

+dd 0899dd7b1h

+dd 05d2b307eh

+dd 0929b7174h

+dd 0cf1874ech

+dd 08a7eef09h

+dd 07b4ce798h

+dd 0b068a48ch

+dd 06d5fcdc0h

+dd 0ea63a7d9h

+dd 09344267fh

+dd 0f35c3791h

+dd 046623150h

+dd 0f3f820e3h

+dd 0fbbdda9ch

+dd 05e672207h

+dd 000e65aafh

+dd 0dad36564h

+dd 035b6d77eh

+dd 002dfdc31h

+dd 0b74ed3c0h

+dd 0dbf17d84h

+dd 00d2690d3h

+dd 0bc39795fh

+dd 0c200c957h

+dd 0da495592h

+dd 08eb51324h

+dd 0476558e0h

+dd 0b33dc29ah

+dd 07bf5f2a0h

+dd 021780361h

+dd 0965172c2h

+dd 0558d128bh

+dd 0665776d2h

+dd 0e9060773h

+dd 085f7ac7dh

+dd 086e2e5cch

+dd 076b68b25h

+dd 0bd29b49bh

+dd 00c523512h

+dd 00badfc12h

+dd 0d38caa12h

+dd 0c7750abah

+dd 0779c158fh

+dd 0ea6be053h

+dd 04c6a4f9fh

+dd 0b01b23c4h

+dd 0ac9ebd3ch

+dd 0bc533278h

+dd 06701f057h

+dd 015403e19h

+dd 022393000h

+dd 0638c84b4h

+dd 03d517b52h

+dd 0fb1a85abh

+dd 0cc075a26h

+dd 051a560a7h

+dd 07deffdf4h

+dd 0048843b1h

+dd 00de6ff51h

+dd 043e714bch

+dd 0ab3cab53h

+dd 0865bf9bah

+dd 045e8a4d3h

+dd 08cc09889h

+dd 0b15fb770h

+dd 01c91c204h

+dd 0f6bf7947h

+dd 0f9e9681bh

+dd 0b98c9743h

+dd 04540e753h

+dd 03b9abf10h

+dd 0fbd42fb2h

+dd 0aab92ca1h

+dd 09c207c68h

+dd 020693bf9h

+dd 0ed2fcf24h

+dd 0e88ed03bh

+dd 0a2b65996h

+dd 045b98d14h

+dd 028fd6bdah

+dd 04c1aa94dh

+dd 0eb9038eeh

+dd 056c7c9d5h

+dd 0017cd4efh

+dd 0f88cf3f4h

+dd 0eee82e66h

+dd 0bb0d876eh

+dd 0d36e362fh

+dd 00591c7ebh

+dd 00cbdccdbh

+dd 01cf16658h

+dd 0d2d8ffdeh

+dd 0020db053h

+dd 009f9cbf0h

+dd 02516f991h

+dd 007a2a9a9h

+dd 0d4017500h

+dd 0cdc9dee4h

+dd 04cddaad4h

+dd 08262ad83h

+dd 00064cecdh

+dd 0b32dec5eh

+dd 05724923dh

+dd 0e3b11c88h

+dd 0bd3f1bcfh

+dd 07da5e6beh

+dd 0ebc354e7h

+dd 073329529h

+dd 0d6f41e3ch

+dd 0fc2f3cbfh

+dd 090578aa2h

+dd 0cb608fa2h

+dd 0b8f2fe0eh

+dd 0f26687fah

+dd 0c3d60fcah

+dd 0e0e94740h

+dd 0f79afe74h

+dd 0b2a3d8f2h

+dd 0ff4fb4b5h

+dd 044c44b8eh

+dd 078d7e7ech

+dd 0d9046ee2h

+dd 0486dec5dh

+dd 0769bc3efh

+dd 053c4acdch

+dd 0d5241d07h

+dd 0d09ceb50h

+dd 019336a65h

+dd 0da57d800h

+dd 06414eb44h

+dd 04feaec1bh

+dd 0ad8aa785h

+dd 070f70cbch

+dd 0dd16df21h

+dd 01f622125h

+dd 0c73ec56ah

+dd 0a8cd9f79h

+dd 07062eae9h

+dd 022265053h

+dd 069ea76f9h

+dd 0f66ed52ch

+dd 09cffb8d7h

+dd 0870193e8h

+dd 0ab588ae4h

+dd 047d4367eh

+dd 0e54058adh

+dd 0c3325206h

+dd 0c08f3865h

+dd 0154d5318h

+dd 0b256d10fh

+dd 092588f20h

+dd 0462cf7b0h

+dd 0cb28fec3h

+dd 0dfeb22fah

+dd 0da186f84h

+dd 02125848ah

+dd 01db8328dh

+dd 0be070fabh

+dd 0b13602e2h

+dd 0c6e40b1ch

+dd 07e7b2430h

+dd 0e651f2e5h

+dd 0b2d150d0h

+dd 05ce573dch

+dd 0472f14cch

+dd 069bade61h

+dd 02ef2788fh

+dd 04c137b87h

+dd 03e108666h

+dd 03ba8d212h

+dd 0ca884547h

+dd 0ca0e6ab0h

+dd 0205ac342h

+dd 0fa7ad042h

+dd 0942b8862h

+dd 089dd7041h

+dd 018bb5587h

+dd 07db3518ah

+dd 0af900ccah

+dd 03c14e8eah

+dd 0f86b73beh

+dd 03612d280h

+dd 03b1e9629h

+dd 02698b1b5h

+dd 0050a89e7h

+dd 0f6139056h

+dd 0c6567ec6h

+dd 04da9cca8h

+dd 06c359664h

+dd 0c09167cbh

+dd 0c0bd69bdh

+dd 00f48258fh

+dd 0fe914018h

+dd 0f9991e0fh

+dd 0dfdcf6cfh

+dd 07d2bc802h

+dd 0be95876bh

+dd 079c378c5h

+dd 010613d98h

+dd 070ded8d7h

+dd 00a790567h

+dd 0f2455700h

+dd 01fb749ffh

+dd 09160cc1dh

+dd 054a7dedfh

+dd 0cc1d9a98h

+dd 088bea175h

+dd 0513c6fb4h

+dd 028ae1a3ch

+dd 077c7780eh

+dd 07057d537h

+dd 06e33598eh

+dd 0158cce16h

+dd 09bc29f91h

+dd 0e0643486h

+dd 06e5ea486h

+dd 0379f4283h

+dd 0ee5e9c9eh

+dd 082644b78h

+dd 0ae8df8fah

+dd 0219a3a34h

+dd 09ee598d0h

+dd 03add6550h

+dd 0c422032ch

+dd 05a86ebcch

+dd 01e91cc7ch

+dd 0efc01c6eh

+dd 08b66f7cch

+dd 077fe35f0h

+dd 016ee5a82h

+dd 08b8c437eh

+dd 0ace04d6fh

+dd 0bc9ecc88h

+dd 0a1b11239h

+dd 0443022e3h

+dd 04f0c12a6h

+dd 02e3e37c0h

+dd 0c7bdd45dh

+dd 0c2fa4b8dh

+dd 0295aa5c7h

+dd 0631e4ac1h

+dd 030ceddd0h

+dd 0e41b66afh

+dd 0b63e2daeh

+dd 0080e7d8fh

+dd 077df35cfh

+dd 03f21cfadh

+dd 033c6fd1bh

+dd 04c5660e8h

+dd 00506a802h

+dd 070e701d0h

+dd 0a2000c45h

+dd 0a1cc412fh

+dd 02a304345h

+dd 0ecedaefah

+dd 0d4d55bafh

+dd 0a1d1f6c7h

+dd 0f22f3823h

+dd 05b44c40dh

+dd 0a7cb61bch

+dd 039e367a4h

+dd 040c5dd1eh

+dd 091c0be42h

+dd 0db019586h

+dd 0ce1153afh

+dd 0ac650abfh

+dd 07283814fh

+dd 04c0a56efh

+dd 058728078h

+dd 06ed7a32fh

+dd 0f5d699eah

+dd 035fc3d03h

+dd 0b4a91fd7h

+dd 0627679b7h

+dd 0b88ea6fah

+dd 0ef64cdcbh

+dd 07d29c7b2h

+dd 055efcae5h

+dd 07ce26d25h

+dd 0828e6af3h

+dd 09eccde37h

+dd 0c1df3726h

+dd 0617bf17ch

+dd 034be03a7h

+dd 02e594ca4h

+dd 0fabee1cdh

+dd 03b15ea52h

+dd 0c5630ed9h

+dd 023991bd0h

+dd 09561f645h

+dd 0a6b614f4h

+dd 0069e82b7h

+dd 0dcb6e998h

+dd 0e6d512a8h

+dd 03038e205h

+dd 0159e7e8bh

+dd 07b4e2bb1h

+dd 0a4262d08h

+dd 0b809877dh

+dd 067135f34h

+dd 0d632537ch

+dd 0914c9f0dh

+dd 0b546c4ech

+dd 064aa2c23h

+dd 0cfeb7b83h

+dd 0ccf6cfech

+dd 0a91a6205h

+dd 06ac79d0ch

+dd 0f17cbf25h

+dd 03b69840ah

+dd 00cda6d82h

+dd 0e053b850h

+dd 08641b102h

+dd 09dbf78f2h

+dd 0aaa6be2fh

+dd 08e147156h

+dd 05d9a049fh

+dd 0b213ad68h

+dd 09dca028bh

+dd 02f80fd45h

+dd 000bb32ech

+dd 02ed95e6ah

+dd 05ea6d8d7h

+dd 0ff2a4fc1h

+dd 0e42ddd4bh

+dd 0ef7f0816h

+dd 01c1edb21h

+dd 035412ab7h

+dd 0d1d56daeh

+dd 01f5c340ah

+dd 056952295h

+dd 051f2bc45h

+dd 0183c0443h

+dd 0f822d861h

+dd 08045967dh

+dd 018e1f1b7h

+dd 0d26e0074h

+dd 096154ccfh

+dd 03184864ah

+dd 0b6cc2cefh

+dd 072e7d386h

+dd 0088ea63bh

+dd 0177024c0h

+dd 04356299ch

+dd 0fdab3875h

+dd 0c119eb5eh

+dd 026bdd5bdh

+dd 0bf172742h

+dd 055cf620eh

+dd 0e5c9e640h

+dd 047350d78h

+dd 0bc58e723h

+dd 0575d4e15h

+dd 08a1052b8h

+dd 0eab15d75h

+dd 0ca24b9ceh

+dd 067a89bdah

+dd 0c42e08bah

+dd 0f2128ae2h

+dd 01ad3d862h

+dd 0b83d158ch

+dd 0d24b9c5dh

+dd 095a69756h

+dd 074f8f807h

+dd 0fa7638ffh

+dd 062a3d040h

+dd 09d91e362h

+dd 018d1842fh

+dd 02c61b8e3h

+dd 0c34e8807h

+dd 0e503e568h

+dd 0e53d77aeh

+dd 04b818b20h

+dd 0fa6300cbh

+dd 031abd00fh

+dd 0602adb14h

+dd 041117223h

+dd 08e9e41f1h

+dd 00b3055deh

+dd 033cf16feh

+dd 01d5c2599h

+dd 0f6cdcf2fh

+dd 01b6dd1ebh

+dd 045f6ffa4h

+dd 0b5ce78dbh

+dd 0469cdb39h

+dd 072e3c6a7h

+dd 001ca186dh

+dd 00d4a408dh

+dd 0ab1c1185h

+dd 0747160e1h

+dd 0b47a146dh

+dd 0f0464807h

+dd 03a369a47h

+dd 00c9ff97bh

+dd 0a8d6fd22h

+dd 0d4122ddfh

+dd 025d5918eh

+dd 0fb22babch

+dd 027fee25fh

+dd 048bffca4h

+dd 0ef27eda4h

+dd 0029c2db7h

+dd 060a05fb1h

+dd 045c1a2a5h

+dd 07382f396h

+dd 037ce1e4ch

+dd 0d0b41aa2h

+dd 00fea85afh

+dd 0f90eda6dh

+dd 03e8e4478h

+dd 0d017cb46h

+dd 0851f509eh

+dd 054e7aa6dh

+dd 0450b1c82h

+dd 077b42926h

+dd 038384989h

+dd 0f57cd6e5h

+dd 07ba05ddch

+dd 0cdd236deh

+dd 0a056a763h

+dd 0a9e6cab7h

+dd 0dc7077cch

+dd 0a79e0233h

+dd 0ff951cb1h

+dd 020da30a5h

+dd 0d63e8f69h

+dd 0ef0ac21bh

+dd 099027f95h

+dd 08ed694c9h

+dd 08821f9c8h

+dd 0be0ee0a0h

+dd 0ef52fdfch

+dd 0c32115abh

+dd 05e4178fah

+dd 0abe99e7fh

+dd 0a09ebcf0h

+dd 0e4588c63h

+dd 0c2197098h

+dd 01161b5deh

+dd 07e23fc8fh

+dd 00f342592h

+dd 023469903h

+dd 0b5bc2914h

+dd 03655d097h

+dd 042808fdeh

+dd 0acb802cdh

+dd 0168e1c96h

+dd 062d334f8h

+dd 06a793593h

+dd 0f00ea0fbh

+dd 0642d0dech

+dd 03ca37965h

+dd 01a8d9534h

+dd 07a90ec39h

+dd 0100d6b95h

+dd 0c20efd7dh

+dd 06918ccdah

+dd 0de107d74h

+dd 0534c9a1ah

+dd 011b992eeh

+dd 0ff41a741h

+dd 0b9ff4c78h

+dd 0ad92255ah

+dd 0a3cce5deh

+dd 0a30bc772h

+dd 0725f051ah

+dd 0bd58c08fh

+dd 04b78ec13h

+dd 098f89df6h

+dd 04ae48002h

+dd 00358ded8h

+dd 046daafcah

+dd 00ae9be32h

+dd 08a292cf0h

+dd 0d501c396h

+dd 096c88312h

+dd 030389ce1h

+dd 0fbc33ac7h

+dd 0619b3a08h

+dd 0af90dcbch

+dd 0752c8b6eh

+dd 095ef74cbh

+dd 07630c46bh

+dd 097d5b32fh

+dd 0cc2dbdbdh

+dd 02f503ba6h

+dd 0122c67a1h

+dd 09ff8a0c8h

+dd 07c62387bh

+dd 0bd753772h

+dd 068dcd877h

+dd 03ba45a00h

+dd 0b73921c3h

+dd 064afefd5h

+dd 07d840d80h

+dd 03f1bc639h

+dd 0c718f6f3h

+dd 0f2ecb16ah

+dd 06f461c25h

+dd 0c3c00f24h

+dd 0388f0985h

+dd 0f3d069afh

+dd 013638974h

+dd 0c52ddf2eh

+dd 0c937f372h

+dd 007c03bedh

+dd 0ac6c04c4h

+dd 0a2cae73ah

+dd 065f7ec5ch

+dd 068b68b59h

+dd 0908d73b1h

+dd 0f40cfa6dh

+dd 05e1a30cfh

+dd 0c769cf27h

+dd 08322c26eh

+dd 00aa87d41h

+dd 02d4adb1eh

+dd 0a103a17fh

+dd 0552c34a2h

+dd 0f91a2200h

+dd 0ae80e923h

+dd 06ed52cebh

+dd 03a82a01ch

+dd 0f28df0a5h

+dd 0a6298df3h

+dd 073deee9ch

+dd 0ceb66e31h

+dd 00cc76006h

+dd 03ce92535h

+dd 0b6d4cabah

+dd 069478079h

+dd 01cee933ch

+dd 00169c179h

+dd 09f00041dh

+dd 00e5664deh

+dd 048d4b31bh

+dd 0f15cf817h

+dd 0c2961c34h

+dd 0445be87bh

+dd 0e38e59bah

+dd 0d20afd20h

+dd 0715de25eh

+dd 0632c76c7h

+dd 0d71ffd4dh

+dd 0c41de3deh

+dd 004027ecfh

+dd 090ce199fh

+dd 09e67dbcah

+dd 00dd67570h

+dd 025c2b939h

+dd 0848f503dh

+dd 06b0b21e6h

+dd 03dbc883ch

+dd 0b1acb3b5h

+dd 0538b6cd4h

+dd 0e4d009beh

+dd 02d8415b5h

+dd 09101394ah

+dd 080b5a258h

+dd 08e5fcc17h

+dd 04e29d8f6h

+dd 08ae6f742h

+dd 0704b511fh

+dd 0891ae343h

+dd 0ba9c6adeh

+dd 0d30f15cbh

+dd 0380fec8fh

+dd 07beb4094h

+dd 0230aecd9h

+dd 089f7d33eh

+dd 0baaf4aedh

+dd 00846d911h

+dd 058420f61h

+dd 04530316bh

+dd 0240f168fh

+dd 0ebe3508ah

+dd 02a6ddb09h

+dd 02ff07944h

+dd 036fb3311h

+dd 047c6ac1fh

+dd 0ec24d125h

+dd 0586e9505h

+dd 023a890a3h

+dd 0bbd53050h

+dd 019d0a99eh

+dd 01ad82eadh

+dd 099e0db03h

+dd 0f9364a6bh

+dd 099a7e407h

+dd 006b591e5h

+dd 0c78e86ffh

+dd 08004884ah

+dd 085d9f106h

+dd 0c3e0e5b7h

+dd 0b860e786h

+dd 04d66d684h

+dd 0db02157dh

+dd 007837e59h

+dd 0f803cd97h

+dd 0032a881ch

+dd 0076a697ah

+dd 099184fafh

+dd 04e693e2eh

+dd 08ecd3dd2h

+dd 05f8d53e3h

+dd 02374117ah

+dd 0c9807a3ah

+dd 0259653c7h

+dd 013f77529h

+dd 0537b840eh

+dd 0a3ba5554h

+dd 06f8d7038h

+dd 074a8288ah

+dd 0eecad2f6h

+dd 0a6848ec7h

+dd 0ac8c534eh

+dd 0f80f7bc5h

+dd 034f436dah

+dd 07901abf1h

+dd 0551d7c9fh

+dd 084ca9c00h

+dd 0b853a215h

+dd 02c8ddb79h

+dd 0bc7759fdh

+dd 059e512ech

+dd 0c6430ac7h

+dd 0a306eeafh

+dd 085cb751eh

+dd 0b044ab16h

+dd 0782c372dh

+dd 0a9f85899h

+dd 09a6bb396h

+dd 0251391a8h

+dd 064f1e7dbh

+dd 0ac5bd12bh

+dd 005cd0bf7h

+dd 03fffe675h

+dd 0dae6b899h

+dd 0b6eb2528h

+dd 06fee6d59h

+dd 0ad0012a8h

+dd 09e16634dh

+dd 08d4547d0h

+dd 087395a2eh

+dd 027243651h

+dd 0a2bf5baeh

+dd 05706dc03h

+dd 00b349d31h

+dd 0e3194c9eh

+dd 06b964dafh

+dd 09c99e226h

+dd 07c2654d5h

+dd 03ee5a3c1h

+dd 0d14852feh

+dd 05f843d0ah

+dd 0e1bc9046h

+dd 0d6547845h

+dd 07dc5b877h

+dd 0af64447fh

+dd 0228c4661h

+dd 0d5b17905h

+dd 0719926d5h

+dd 0a0e48b3dh

+dd 0dc0dd3cfh

+dd 03ebae917h

+dd 054c3a2afh

+dd 0eb85f6b5h

+dd 08a0a6c83h

+dd 0fb3b8156h

+dd 00066cbc8h

+dd 0828a234fh

+dd 09f92c77eh

+dd 0a599b06bh

+dd 0dc568551h

+dd 09e89ae11h

+dd 066815efbh

+dd 006b7519ch

+dd 07e91a580h

+dd 076b8a490h

+dd 0167e3db4h

+dd 0f0ba7f1ah

+dd 035932534h

+dd 098123c6ah

+dd 0ca1fa3bbh

+dd 08b65d88bh

+dd 071006d7dh

+dd 088bfeebbh

+dd 018e2a78ah

+dd 0124d1c15h

+dd 05ca18ebch

+dd 050ff9048h

+dd 0859ef28eh

+dd 098f3e460h

+dd 039a76d07h

+dd 05ccc9c1bh

+dd 0dabfd13ch

+dd 08b592b08h

+dd 0436392deh

+dd 0f6b1592fh

+dd 0be8eb1e1h

+dd 0afa6fd7ah

+dd 00efc0df3h

+dd 067db53d1h

+dd 0155ed38fh

+dd 066e98afch

+dd 077fe9574h

+dd 0d765a35fh

+dd 04216583fh

+dd 0f7a6f828h

+dd 08ee13806h

+dd 045649a42h

+dd 06e170333h

+dd 03d849626h

+dd 051efef0ah

+dd 09fa6b255h

+dd 029bf3c12h

+dd 037033790h

+dd 0886dc758h

+dd 028d5c065h

+dd 001cf5ba9h

+dd 0dc6c6736h

+dd 04af75547h

+dd 0c6123ba8h

+dd 01589e6c4h

+dd 038d01b36h

+dd 0e943d166h

+dd 0608aedf3h

+dd 034306e7ah

+dd 0012e47d5h

+dd 09fa9a729h

+dd 0891b043fh

+dd 0193ee186h

+dd 0baba0241h

+dd 0d3d6b686h

+dd 04de32e3fh

+dd 0bf77b8edh

+dd 04e8ff359h

+dd 095148e7fh

+dd 094a3d2cbh

+dd 0edcf69fch

+dd 010188377h

+dd 049f02950h

+dd 058f35fc9h

+dd 06258996fh

+dd 059f22fd0h

+dd 0782b8901h

+dd 03ec2711ah

+dd 0c00b2b48h

+dd 0fe252397h

+dd 09b6b1e80h

+dd 02f212b9eh

+dd 00c452a87h

+dd 0889b9bdch

+dd 0a6740b7eh

+dd 0347bb4f5h

+dd 0165fa8c6h

+dd 0eefffe67h

+dd 0c09b3c7ch

+dd 06bd0ca16h

+dd 018a00bcbh

+dd 060263564h

+dd 05de332f4h

+dd 012375548h

+dd 027af5a0ch

+dd 09f34ca71h

+dd 016ddaad9h

+dd 0f6cf2a7ah

+dd 0e5e4c282h

+dd 06e913cbeh

+dd 0440e53efh

+dd 024e00203h

+dd 0682f2524h

+dd 01bd95c4ah

+dd 059ffdd05h

+dd 0c178423bh

+dd 0478e8506h

+dd 06868af12h

+dd 0cc845b2dh

+dd 045eba485h

+dd 02c907392h

+dd 00243dae7h

+dd 01678225ah

+dd 0fb74b9eah

+dd 0ed5cfc27h

+dd 07c959891h

+dd 0aa3251d4h

+dd 043d08311h

+dd 034e4ffd5h

+dd 005cf4d34h

+dd 0bcb4ea5fh

+dd 06f035107h

+dd 09833f28eh

+dd 093e8562ah

+dd 0e2370640h

+dd 09cf6f9aeh

+dd 072d31769h

+dd 0ea14ab65h

+dd 01c640ac7h

+dd 06207c054h

+dd 002f3c997h

+dd 0b711250ah

+dd 08b1b6273h

+dd 01c3b4428h

+dd 04ba73067h

+dd 043eb1f9ah

+dd 040cda824h

+dd 07f83b132h

+dd 0b2353225h

+dd 06cd533d0h

+dd 0c60a8efah

+dd 0b1278bech

+dd 023ea14e8h

+dd 08bdcb21ch

+dd 0714ea004h

+dd 0712c9347h

+dd 00cee52f7h

+dd 0ca5375b7h

+dd 0b68a73c1h

+dd 09f3ae370h

+dd 03712c8b8h

+dd 06453bc30h

+dd 08b8c872eh

+dd 0f5c29eb8h

+dd 02d3bf967h

+dd 09f776539h

+dd 078e50390h

+dd 0887d93a1h

+dd 0b3a1f02fh

+dd 07090ffe9h

+dd 06d9b0eabh

+dd 092358ffdh

+dd 071643ef1h

+dd 06d3e3bfah

+dd 0a652440ch

+dd 0d21a5adeh

+dd 0edf9b1fah

+dd 0a34ebb1bh

+dd 01843ea58h

+dd 04cc486d8h

+dd 0ef958a61h

+dd 0e513621ch

+dd 0486fedfdh

+dd 0ea27bbedh

+dd 04d59e6b7h

+dd 06d7a0d42h

+dd 0aa95f60eh

+dd 0e23de673h

+dd 0d1674cdch

+dd 08dd26a4bh

+dd 0d4d23eb9h

+dd 09e30f813h

+dd 02abb3deah

+dd 034e372eah

+dd 06ccc86cah

+dd 0b15ca11dh

+dd 0b136dd10h

+dd 06339ec21h

+dd 068a02f9ch

+dd 07675ab82h

+dd 0be7d4dc5h

+dd 015366506h

+dd 0c679104dh

+dd 00d90d4a4h

+dd 0b3db53c2h

+dd 0f934c59eh

+dd 054dd6444h

+dd 0daea7879h

+dd 06411c866h

+dd 097e1d4c8h

+dd 03c34e66dh

+dd 07dc9ad3eh

+dd 0f2fe6cbch

+dd 01be748d6h

+dd 0af69b460h

+dd 0ef49fc04h

+dd 03e378fddh

+dd 0fd7e055ah

+dd 0c53112d8h

+dd 0ee38b57ah

+dd 0575b169eh

+dd 0b7edf1dfh

+dd 0b95f346dh

+dd 0fd17a6c9h

+dd 023cfdffbh

+dd 057737308h

+dd 0c466c0a7h

+dd 00fbaf24ah

+dd 092ed67dch

+dd 000958568h

+dd 047a8edf5h

+dd 071e7b095h

+dd 0b1a9ca86h

+dd 069bf3fcah

+dd 024213e50h

+dd 0c5327262h

+dd 000b6c508h

+dd 0bdbdc0bdh

+dd 09b76397dh

+dd 0ebd36b96h

+dd 0b93ce1d9h

+dd 0a9da6033h

+dd 0a7bd8d87h

+dd 0db85592ch

+dd 04fb3cda0h

+dd 0ba25eaf9h

+dd 0a0f1b387h

+dd 0214274adh

+dd 05c450a80h

+dd 06b7b6e95h

+dd 0d8a160f2h

+dd 061543af0h

+dd 08622d45ah

+dd 0c0dd297fh

+dd 070fc84e7h

+dd 004d7070ah

+dd 04fa208feh

+dd 0b0a94c4ah

+dd 0ff0cb76eh

+dd 09eb35533h

+dd 02f8b9fa0h

+dd 03cdb97a8h

+dd 0dac070e8h

+dd 0377b2ed5h

+dd 0728ec7e1h

+dd 03618b044h

+dd 0aa472cadh

+dd 0423632d7h

+dd 05e529ae2h

+dd 0dd473b1eh

+dd 0652f1a9fh

+dd 0f783a9ceh

+dd 06e986eb8h

+dd 0ef62cde3h

+dd 04a991242h

+dd 0ecd6dbe5h

+dd 01696150ch

+dd 03aceed41h

+dd 09cf41a7ch

+dd 0cc208258h

+dd 0dde6dd80h

+dd 00cbc8718h

+dd 068602e3eh

+dd 08ba89f95h

+dd 077540af4h

+dd 0e611b04ah

+dd 0592098adh

+dd 047432cdah

+dd 02a780a4ch

+dd 03ef58f42h

+dd 02c7dd2e5h

+dd 0fcb864a6h

+dd 029c2fd5eh

+dd 0563595ceh

+dd 0b398f585h

+dd 0e6c7f9aah

+dd 002bdd097h

+dd 0675fbe6bh

+dd 067df0eadh

+dd 0442218c5h

+dd 0c478277ah

+dd 0d69288b2h

+dd 07a9a9aa5h

+dd 0acb197e2h

+dd 0ce622102h

+dd 0cf5bec11h

+dd 078334d49h

+dd 09e645d7dh

+dd 0f30fc145h

+dd 0ce80d47dh

+dd 066a44c0fh

+dd 0ff03495dh

+dd 0342a9d3fh

+dd 0210279e7h

+dd 050c86a43h

+dd 028c8d51dh

+dd 030e329d7h

+dd 0986ac578h

+dd 048f65c46h

+dd 096e33acah

+dd 0c691f64bh

+dd 0f43643bdh

+dd 075f780cah

+dd 04f193d4eh

+dd 0030133dah

+dd 0ba34cfffh

+dd 06a91f924h

+dd 0106190d5h

+dd 00969d7f1h

+dd 06bd4def1h

+dd 04b743aach

+dd 065b569d2h

+dd 07fde5282h

+dd 002da8165h

+dd 084b011b7h

+dd 020eb02e9h

+dd 03947d478h

+dd 04da03a3bh

+dd 041537678h

+dd 008bc569bh

+dd 0715803e8h

+dd 013e89a5dh

+dd 02e0d8720h

+dd 08647773dh

+dd 0b997445eh

+dd 08163257bh

+dd 0398b8d2bh

+dd 0fa326be8h

+dd 0479bcebdh

+dd 0b99623f7h

+dd 0153757bah

+dd 0a68bb0f7h

+dd 0321b4097h

+dd 0c1d14cc9h

+dd 0d29084b1h

+dd 0eb40711bh

+dd 033e71bf0h

+dd 07f4766e6h

+dd 07e749af6h

+dd 0282e4e36h

+dd 05ceb2aa7h

+dd 0261422aeh

+dd 0fa1eab43h

+dd 01ddb45c7h

+dd 0d410ba56h

+dd 0e7a893deh

+dd 0f950feffh

+dd 05c827f60h

+dd 0433a54e5h

+dd 0fc84394fh

+dd 01b047b7fh

+dd 0e63be852h

+dd 081b8b2c3h

+dd 002dd0d0dh

+dd 043431893h

+dd 0d2d47fa9h

+dd 078eafa51h

+dd 02fa15f50h

+dd 0932fa966h

+dd 032502f55h

+dd 08870f75bh

+dd 0cb06186fh

+dd 00b88cc8fh

+dd 03a879a9eh

+dd 03955121eh

+dd 0e5b7bd29h

+dd 08cc722ech

+dd 00b873aa0h

+dd 03bcb3870h

+dd 0c5251132h

+dd 0451ffab4h

+dd 0be966b03h

+dd 0521a470bh

+dd 0df42d0c4h

+dd 03ea2358eh

+dd 0145fcf4ah

+dd 0e608cd8ah

+dd 07bafdfd0h

+dd 0c2e823fbh

+dd 0e560b513h

+dd 0da771580h

+dd 00fdf4954h

+dd 080bb18dbh

+dd 0ddf0a52ah

+dd 054b31500h

+dd 0ee9c18e6h

+dd 0731f9088h

+dd 06be461aah

+dd 04aa02a94h

+dd 089654ef4h

+dd 0e3d3b81ch

+dd 0195d30c4h

+dd 091fddacbh

+dd 06f371073h

+dd 008b45f4bh

+dd 0f6358c9eh

+dd 04a131834h

+dd 0f41099fdh

+dd 05574cc0fh

+dd 07dabfa3ah

+dd 055c3e946h

+dd 0bb315d04h

+dd 0e4cfa0f3h

+dd 0648cc698h

+dd 041faff97h

+dd 0f9f27e23h

+dd 007d37026h

+dd 0ad21901ch

+dd 03bf725c3h

+dd 0fdaf6bfch

+dd 09b7074afh

+dd 0065d329bh

+dd 00575d689h

+dd 015d0eb8ch

+dd 0f87bee9bh

+dd 060d02134h

+dd 079df6fb1h

+dd 0e5c9f4f7h

+dd 0731c7043h

+dd 0c9d4d614h

+dd 0a326eee5h

+dd 084a263d8h

+dd 0ac460dbeh

+dd 025a8951dh

+dd 0ecd731ffh

+dd 07e0723fch

+dd 005a07ed7h

+dd 04e7dff3fh

+dd 0624559b9h

+dd 0f775c0feh

+dd 0cdfe075bh

+dd 0518c3817h

+dd 0556a7577h

+dd 022f810e3h

+dd 0a3705214h

+dd 030018ea9h

+dd 0e3cec22dh

+dd 08dba8279h

+dd 0ef13726ah

+dd 0a0332653h

+dd 05fe87cfdh

+dd 081aecb6fh

+dd 059d33b59h

+dd 038974beeh

+dd 013d040f4h

+dd 0ddd2edc2h

+dd 051565ec7h

+dd 03e486a1eh

+dd 051a4f72eh

+dd 0b66fab1bh

+dd 06ae18b90h

+dd 0ec4b100bh

+dd 0b3a5b0b4h

+dd 0d5dc5101h

+dd 0126990ffh

+dd 0f31230eeh

+dd 0500667e6h

+dd 0ddce5294h

+dd 066c38ebdh

+dd 08a58be86h

+dd 0d7e5562ah

+dd 0be8638bbh

+dd 0704bc0c0h

+dd 040eb6114h

+dd 0aa548692h

+dd 0aa3476a2h

+dd 0e96e6223h

+dd 0ba3eb54bh

+dd 03265eaa8h

+dd 037f9a062h

+dd 081c04eb9h

+dd 071d39a1fh

+dd 04d6d23efh

+dd 0839e2ea4h

+dd 0afeccf97h

+dd 004b888c4h

+dd 00a1909beh

+dd 0ba19f453h

+dd 0e9856749h

+dd 01aea4f40h

+dd 09f1d872fh

+dd 0f7557dach

+dd 0985f764bh

+dd 0776178bdh

+dd 0f061b614h

+dd 03df8556dh

+dd 0b880023fh

+dd 015640d92h

+dd 0795c0728h

+dd 0acab0f16h

+dd 0b5daaf1ch

+dd 024a6988ah

+dd 0cbe5a9deh

+dd 0707389f9h

+dd 0c2c0146bh

+dd 07a38069eh

+dd 0a2aaf39dh

+dd 0870dc86bh

+dd 03a5f5c1ch

+dd 0e8ac70afh

+dd 0efb2b221h

+dd 01af2bcf2h

+dd 050e5496fh

+dd 035950b02h

+dd 027d53d60h

+dd 047580a6ch

+dd 0e1732396h

+dd 09f666ad2h

+dd 09e6c2dfeh

+dd 04f27eb9fh

+dd 0acb2b539h

+dd 0c2056636h

+dd 06491ff49h

+dd 0511af515h

+dd 0222e308fh

+dd 0abfde846h

+dd 06679c5b8h

+dd 036c2a7d7h

+dd 051c00dbfh

+dd 048371dc9h

+dd 095d9c3c7h

+dd 025b1baach

+dd 05e509976h

+dd 04945a159h

+dd 035477bb0h

+dd 0513e6b97h

+dd 07e409297h

+dd 0c49f0244h

+dd 0a4910637h

+dd 0c02fb996h

+dd 07dd07839h

+dd 0df8a87ebh

+dd 00e73fd4ch

+dd 035f0f606h

+dd 07d07a405h

+dd 06bae093ch

+dd 025bbfa5eh

+dd 03aa983e9h

+dd 0030e92f9h

+dd 0e3e6804dh

+dd 070a9e1e0h

+dd 04c6fde56h

+dd 0952defefh

+dd 0250d445ch

+dd 05ccff8feh

+dd 0da1d954eh

+dd 0275d77d9h

+dd 08d9ab79fh

+dd 08ce5c538h

+dd 0dbbe202bh

+dd 00a0de50dh

+dd 0015bd106h

+dd 0ad8476e9h

+dd 0acd981b3h

+dd 0b280d331h

+dd 0ea47f3a7h

+dd 0aa0fd8b7h

+dd 0cfdff3dch

+dd 01ee3cb3eh

+dd 0281620a9h

+dd 029fa8622h

+dd 08df5f526h

+dd 09da968dfh

+dd 0275c0217h

+dd 01bddb61ah

+dd 0def5f95bh

+dd 04f19d250h

+dd 0475afc1ah

+dd 00b977a23h

+dd 0360a1852h

+dd 0040598ech

+dd 064d62943h

+dd 0d254f7c6h

+dd 0c9879152h

+dd 0a65c66a0h

+dd 0c5ca0f69h

+dd 07b4c3cf1h

+dd 0649c31f2h

+dd 060f441e5h

+dd 03319348ah

+dd 0ac278f14h

+dd 0eb49f246h

+dd 044d2d4cdh

+dd 078469388h

+dd 0d53aedb4h

+dd 03c505f98h

+dd 0b8fd0388h

+dd 068ed0994h

+dd 02452ac22h

+dd 081345262h

+dd 0b9a8a801h

+dd 0d2ddf936h

+dd 0c60f9dbdh

+dd 07529191eh

+dd 03990b67eh

+dd 0202b63afh

+dd 0109e6b56h

+dd 01abd8092h

+dd 082216ddeh

+dd 07c11c774h

+dd 06c484256h

+dd 03fd2dc49h

+dd 017680c19h

+dd 0ef388a3bh

+dd 0096a946bh

+dd 08eab8094h

+dd 0d63fb175h

+dd 09855b76fh

+dd 0c30975e3h

+dd 09d0ffd77h

+dd 0e60a9665h

+dd 0417cbbfah

+dd 0a45b675fh

+dd 00bf737a6h

+dd 059f69f6ah

+dd 0d6d88bc9h

+dd 0c0b45917h

+dd 08e036619h

+dd 030cdf94ch

+dd 014606550h

+dd 0021db9aeh

+dd 0f5f31e6ch

+dd 029905b3dh

+dd 0bf2e03d6h

+dd 0a99bcd13h

+dd 0563ea6c1h

+dd 06323a712h

+dd 0ee6546d8h

+dd 0745b6e10h

+dd 0638ba490h

+dd 064452686h

+dd 00f92117eh

+dd 001a80ebdh

+dd 0f11c1066h

+dd 032f68946h

+dd 0ccdcb87fh

+dd 076ba835bh

+dd 0f5744aa7h

+dd 0dbccc778h

+dd 0c773f46fh

+dd 04f9f61adh

+dd 0b56d736fh

+dd 04d90b2fch

+dd 0bf2ba19fh

+dd 0695f135dh

+dd 06e79cad6h

+dd 081f252cfh

+dd 042504e71h

+dd 033e27da9h

+dd 0abe3936bh

+dd 065cdbca3h

+dd 04a8bd791h

+dd 0dbcac254h

+dd 00862f35eh

+dd 00fa652eeh

+dd 093f6748fh

+dd 01e186c1bh

+dd 0d7ab08efh

+dd 066734b2dh

+dd 0943f4e67h

+dd 0645428d1h

+dd 0b8527daeh

+dd 0b497ec76h

+dd 084de5c2ah

+dd 0c8ab5863h

+dd 097648d5fh

+dd 0629dd9c4h

+dd 045449843h

+dd 04f9d5a12h

+dd 0c857c053h

+dd 046b5861fh

+dd 040cb5a1ah

+dd 0ca9d89ceh

+dd 05fc68ea3h

+dd 067f8360ah

+dd 0855401a0h

+dd 0618c5b40h

+dd 0db1b6946h

+dd 018b4ac19h

+dd 03e63b51fh

+dd 0929b2c8bh

+dd 0227863b2h

+dd 09af058c5h

+dd 039f286ebh

+dd 08729d2bbh

+dd 0a09ae22dh

+dd 008e12250h

+dd 07447b713h

+dd 0d93575c4h

+dd 08096bbd5h

+dd 05a2073f3h

+dd 035c52383h

+dd 0f2566273h

+dd 0141773a1h

+dd 08ccd04dch

+dd 01c3dc9f7h

+dd 0337875d2h

+dd 050f6b82fh

+dd 0b6c569dch

+dd 09baa70c5h

+dd 0eb331626h

+dd 0f6db60e7h

+dd 0779e935fh

+dd 01622f129h

+dd 0ffbd1176h

+dd 00ea5c3c5h

+dd 02b995b36h

+dd 072c00170h

+dd 06da87a3ah

+dd 09916abd9h

+dd 0cda30112h

+dd 096aff7eah

+dd 03a12d33fh

+dd 033928bfah

+dd 08ba4a1d8h

+dd 0160f78fah

+dd 009c5c6a1h

+dd 038a21d68h

+dd 02c08166dh

+dd 0ff2e861dh

+dd 01d6f260dh

+dd 0a774f211h

+dd 0abe4c92bh

+dd 02b31e81eh

+dd 0b1412c6eh

+dd 09634545dh

+dd 0bc425a17h

+dd 0fbb66f48h

+dd 0036f81b2h

+dd 0117b836ah

+dd 0e589b839h

+dd 04a4f11b0h

+dd 04f6debcbh

+dd 075a4dd46h

+dd 0a0e70c51h

+dd 0bbd9ae51h

+dd 04050dd11h

+dd 0dc68b48dh

+dd 06fffb3e1h

+dd 0d079c720h

+dd 036a1f83eh

+dd 006555d35h

+dd 0e7170d37h

+dd 03af079f5h

+dd 026a8b479h

+dd 02a76fdbeh

+dd 031a30b9fh

+dd 039b3eb09h

+dd 00e9c78b4h

+dd 011e020e9h

+dd 0410f116fh

+dd 05d2fe10eh

+dd 02fd8b204h

+dd 081757b9ah

+dd 0394cefb7h

+dd 083975b21h

+dd 0dcc10215h

+dd 07091e42ch

+dd 0a2b510adh

+dd 0b4d4dce7h

+dd 0ed0c4183h

+dd 0832111f7h

+dd 074347573h

+dd 05c7b8b59h

+dd 0a01c09d8h

+dd 06b7009aah

+dd 01fda2b90h

+dd 01f035533h

+dd 0b0170211h

+dd 042fcdf40h

+dd 0fe54cea6h

+dd 0ad868f00h

+dd 021ef6fc2h

+dd 0a8eefc04h

+dd 0dfa5dbffh

+dd 0c5c68ebah

+dd 05b0e9d51h

+dd 04c4bf124h

+dd 077d31a34h

+dd 0797c5cdah

+dd 000f6689ch

+dd 0854d7bd9h

+dd 0723913e9h

+dd 0a79197e9h

+dd 0475092d4h

+dd 09b5f0472h

+dd 0b65ac0c4h

+dd 08710a31fh

+dd 0911e03a2h

+dd 0bb64aa60h

+dd 08b7ae7dah

+dd 0791948feh

+dd 079320587h

+dd 022eb611ah

+dd 09b8c2b40h

+dd 0a3e7921ch

+dd 0f7485274h

+dd 0d224d732h

+dd 0e1b38290h

+dd 0d27069fdh

+dd 0fef934eeh

+dd 0a28cb448h

+dd 0f404ba86h

+dd 0402edb58h

+dd 0ca5f133ah

+dd 07e445aadh

+dd 090077b61h

+dd 01335eda1h

+dd 03d75f8b1h

+dd 0eed74468h

+dd 018c86a86h

+dd 04d1faa6eh

+dd 0130bb86bh

+dd 0dcc7ba6eh

+dd 0da702d18h

+dd 07e40868bh

+dd 03cb41808h

+dd 007ef6de3h

+dd 0cadf2180h

+dd 0bf90062eh

+dd 09dc393b1h

+dd 0c8633d9dh

+dd 082d38f00h

+dd 0a92b9228h

+dd 05fd93804h

+dd 048007070h

+dd 020a1ed8fh

+dd 0c768d32eh

+dd 0e151f67eh

+dd 005d99168h

+dd 06f6c5d34h

+dd 03000a1e6h

+dd 00a0426edh

+dd 070ad8811h

+dd 07b62408fh

+dd 0a7437d49h

+dd 02b9144f6h

+dd 0cb79197dh

+dd 003a91061h

+dd 042c9cc51h

+dd 0151a838ah

+dd 09f05c0c9h

+dd 04fe46d98h

+dd 0ca91a9d9h

+dd 0312d532ah

+dd 06406894ah

+dd 050136297h

+dd 0f574bfach

+dd 0d62cfa4fh

+dd 0f42af2f1h

+dd 014573af4h

+dd 0fdce9499h

+dd 0eb805c45h

+dd 08859c132h

+dd 054106933h

+dd 0c629713eh

+dd 0a5dcdeddh

+dd 0b0a84c87h

+dd 08fdcc956h

+dd 092c94dedh

+dd 02757e99fh

+dd 090c8cff1h

+dd 027adcdf2h

+dd 09c86e0d7h

+dd 0e751a1a3h

+dd 0acdfc34ah

+dd 0cd6c8a26h

+dd 01d0161cch

+dd 018a01132h

+dd 07e69920fh

+dd 05b17fa56h

+dd 035cd0e15h

+dd 05e096242h

+dd 0a2dec636h

+dd 080105586h

+dd 0848610afh

+dd 0ecc81d21h

+dd 0c5044ebch

+dd 0b5b5a569h

+dd 0ed525603h

+dd 0dbf770c4h

+dd 0fe3d6fbch

+dd 09ca5eb58h

+dd 01cba1d59h

+dd 0fce59e2ch

+dd 09b823d10h

+dd 01ec0df8eh

+dd 01084c8a9h

+dd 01003de7ah

+dd 00fa41168h

+dd 01273c0afh

+dd 05a39b2b6h

+dd 0de334836h

+dd 054d44bdah

+dd 03e134353h

+dd 0d3af66eah

+dd 039ac248ch

+dd 04b823fd8h

+dd 034eb3620h

+dd 030723d24h

+dd 0e7ed543ch

+dd 060c7d4c6h

+dd 0957427d2h

+dd 02a8c9436h

+dd 09f2ef161h

+dd 030c58528h

+dd 0cafa954eh

+dd 06aa27f83h

+dd 0ecda0bf2h

+dd 091de50bfh

+dd 05d1492b0h

+dd 0913261cdh

+dd 0e6b0269eh

+dd 0c32d8002h

+dd 0271d7d37h

+dd 069cd6548h

+dd 0cef4576fh

+dd 088d107a4h

+dd 0ec4659cbh

+dd 07a15bee7h

+dd 005576c9bh

+dd 0b287a3d2h

+dd 07197ecdfh

+dd 0e7b98a9ah

+dd 02cfbe928h

+dd 0f504103ah

+dd 0234561dah

+dd 0a51e1a81h

+dd 05039b3f0h

+dd 0a0675ddbh

+dd 04051c9cah

+dd 04f9eb182h

+dd 011f295fch

+dd 0f7bdf19dh

+dd 0a01e9710h

+dd 0b40f5c66h

+dd 06f08710eh

+dd 027a3ac67h

+dd 09ea336f8h

+dd 0851c06cch

+dd 028ce99a8h

+dd 0b05fd954h

+dd 0977b0acdh

+dd 0df4678beh

+dd 0aae4b138h

+dd 04652687dh

+dd 01a02f8f5h

+dd 0d3d3c96bh

+dd 032eb227bh

+dd 0e2ab32a6h

+dd 05703fd9ah

+dd 04575e556h

+dd 0c6b55749h

+dd 0aa80fe6eh

+dd 0813cec63h

+dd 07850d76ch

+dd 0048c76e6h

+dd 056ea1d3bh

+dd 03595f131h

+dd 00ba6928eh

+dd 0d310ceebh

+dd 05f40a315h

+dd 0035f9d26h

+dd 0149bf9b6h

+dd 0daaa7ca1h

+dd 08fbf870ch

+dd 083fe286ch

+dd 0376d5c8bh

+dd 0e22ad00dh

+dd 07bbd25e4h

+dd 053e1192ch

+dd 016b759c2h

+dd 008015ebdh

+dd 08fd1e61ch

+dd 0488a9472h

+dd 055f17200h

+dd 02360f9a4h

+dd 0f0559cbbh

+dd 01c85b3e1h

+dd 0e992f031h

+dd 0c7210289h

+dd 074db13aah

+dd 04ad089cbh

+dd 0d2b5d020h

+dd 075a86998h

+dd 00d3af278h

+dd 04ef4d185h

+dd 0725bd643h

+dd 01fde57dbh

+dd 0dd2bc294h

+dd 0f460cf5bh

+dd 0b6ad1421h

+dd 068d268c8h

+dd 0d13ba098h

+dd 043bc8e3eh

+dd 00852da29h

+dd 0a5720f62h

+dd 0108e86eeh

+dd 0ade9b157h

+dd 00b53c713h

+dd 0aa5700f2h

+dd 04a98c120h

+dd 04c11fc0ah

+dd 08d30c09fh

+dd 0b77eeeedh

+dd 0e0eec721h

+dd 0b9781041h

+dd 02160e228h

+dd 0d910c275h

+dd 0c133475fh

+dd 0d1f1b8e1h

+dd 0cb080a26h

+dd 0f0009d50h

+dd 091563cd0h

+dd 0566bcc4dh

+dd 079d4596eh

+dd 04732406ch

+dd 073737305h

+dd 089c74f7fh

+dd 0ee34af69h

+dd 071c9be11h

+dd 015ce85cah

+dd 0662ae53fh

+dd 029720de0h

+dd 0d2dc5ebbh

+dd 0e21584d0h

+dd 0cdb21ed4h

+dd 09ea3853fh

+dd 033b24041h

+dd 0a9d76766h

+dd 0a67e85d3h

+dd 07306f809h

+dd 0459831ebh

+dd 0566d9452h

+dd 07c84702eh

+dd 07c31a424h

+dd 02b5c52c5h

+dd 071644575h

+dd 0510b7445h

+dd 02b0f81fbh

+dd 0bfa3e8c0h

+dd 0d531b576h

+dd 03b3a689eh

+dd 05ababf3fh

+dd 09399e02ah

+dd 03f802196h

+dd 0cf5b8356h

+dd 072f95bc9h

+dd 087145319h

+dd 052c2f95bh

+dd 03207eccdh

+dd 0ee875f1bh

+dd 049d97362h

+dd 022af5fd8h

+dd 053700ad5h

+dd 01f0e4322h

+dd 0ded814e0h

+dd 04f675075h

+dd 0eaf09ad6h

+dd 0f12b19b3h

+dd 083d6ed0eh

+dd 05ed12bd2h

+dd 02d08c8d1h

+dd 00764071eh

+dd 08bc181a0h

+dd 0ff16efe7h

+dd 0c7595050h

+dd 09b50f76eh

+dd 065c460b3h

+dd 05f4b5dc5h

+dd 042501a3eh

+dd 0e05dc64ah

+dd 0562e75c0h

+dd 071658954h

+dd 0a6f72bc7h

+dd 01ec6df5ch

+dd 0812f998ah

+dd 0331a9055h

+dd 04e8f731eh

+dd 00719b08fh

+dd 08d033bddh

+dd 06d18ef5ch

+dd 00989d438h

+dd 07eaf5bcfh

+dd 08220defah

+dd 0d16a98c3h

+dd 0ba57ca13h

+dd 087fc7874h

+dd 0ab7ec885h

+dd 0f6596db5h

+dd 06aec8adeh

+dd 04d67d24fh

+dd 03914508bh

+dd 0d6797f6eh

+dd 008e981b5h

+dd 0bdf6b693h

+dd 0a125a4f4h

+dd 0fe73bcf9h

+dd 0ec3a1ac3h

+dd 073d8ee54h

+dd 00fe121d3h

+dd 07d74ea43h

+dd 0316f4713h

+dd 0d0ad638ch

+dd 0bb47c73bh

+dd 0ac0391d1h

+dd 0a1652999h

+dd 0fb71a812h

+dd 0fb4f5683h

+dd 0d9824637h

+dd 0d3493b26h

+dd 0ef67a4b5h

+dd 0072e6a89h

+dd 026cc7705h

+dd 0386129cbh

+dd 0655cc60ah

+dd 07da45127h

+dd 040a4cd07h

+dd 01c9805a2h

+dd 0275d89fah

+dd 021dc47a7h

+dd 018b86816h

+dd 02ccf105eh

+dd 0290c87a9h

+dd 057289324h

+dd 090622a75h

+dd 0547e9065h

+dd 0b598664fh

+dd 011628e5ah

+dd 028e04aceh

+dd 04d879450h

+dd 01b787c98h

+dd 045637291h

+dd 0fe4cb4ffh

+dd 09ac9e87ch

+dd 0ca1b37d8h

+dd 05df8aa33h

+dd 0e5f5fd23h

+dd 05b0a7522h

+dd 08162fa52h

+dd 0a41aaaa2h

+dd 07ec55be2h

+dd 0ec225a0ah

+dd 06dfc397bh

+dd 056f70054h

+dd 02b2b9bebh

+dd 05cd97845h

+dd 09151f14ch

+dd 0873c202dh

+dd 092d0643ah

+dd 0e1de318fh

+dd 000d48d53h

+dd 0dce4f4a6h

+dd 0ac4e5d46h

+dd 09ee5404dh

+dd 08ea07942h

+dd 04ec07f30h

+dd 0164fc666h

+dd 08747f688h

+dd 03cc9f717h

+dd 0cafc2985h

+dd 029357049h

+dd 0779b1a76h

+dd 06da7d2a1h

+dd 01fdd869eh

+dd 08e12f76fh

+dd 0b5405e55h

+dd 0f5998fa0h

+dd 06bb17884h

+dd 01b077d71h

+dd 0b4972e5fh

+dd 0e053aa02h

+dd 0fd16b131h

+dd 0cbfc8c7fh

+dd 09ffaf20eh

+dd 0ca11cb65h

+dd 07ed9e0f5h

+dd 0aa55cb1bh

+dd 08cc3db1eh

+dd 0b0656e18h

+dd 0b9d4eccch

+dd 00f80ac73h

+dd 00131767ah

+dd 0e9a51c46h

+dd 0e4f3668eh

+dd 0a498bb53h

+dd 0817da29eh

+dd 078cd04f7h

+dd 06361a36ch

+dd 0b2fdb40dh

+dd 05a4b0345h

+dd 01d8470c3h

+dd 084feb60eh

+dd 0660296c2h

+dd 0ad1b56f4h

+dd 060fd3254h

+dd 0516bc0cah

+dd 054050c87h

+dd 0fe1e5f5eh

+dd 07ae84d13h

+dd 06407e1a3h

+dd 01d9163d1h

+dd 071832ec1h

+dd 0ce033c95h

+dd 041408c7ch

+dd 07acd7f73h

+dd 0251cc6aah

+dd 06991a2c8h

+dd 033d133deh

+dd 0b73785a4h

+dd 05da29031h

+dd 077267de2h

+dd 001e8823ch

+dd 0b88f8f0dh

+dd 07a7c272eh

+dd 0f7372ce2h

+dd 03c77c8e5h

+dd 0be1cf681h

+dd 0a4d05cf0h

+dd 03089c2b5h

+dd 0336cc07fh

+dd 0b38b0173h

+dd 053edd767h

+dd 094d38c7eh

+dd 0133e1500h

+dd 00dca472eh

+dd 06d9ef755h

+dd 0837e7f0ch

+dd 062c189fbh

+dd 061e3abe3h

+dd 099b0086ch

+dd 0a52fc42fh

+dd 0d7873e2dh

+dd 0b86a53bch

+dd 06a46cee6h

+dd 0ef413970h

+dd 0d76d225bh

+dd 04facd927h

+dd 084dbba90h

+dd 0353465ebh

+dd 060529fcah

+dd 0c9905dc9h

+dd 0f8737505h

+dd 0806bd3afh

+dd 0ff0c4496h

+dd 0b658ddc7h

+dd 0df69708eh

+dd 0f6da34d0h

+dd 033942c4dh

+dd 0a5ce5cdah

+dd 07d013b53h

+dd 079c3329fh

+dd 038da1f9ch

+dd 0abd017b3h

+dd 00cf03066h

+dd 09ab9c655h

+dd 04ba793c5h

+dd 0d7478494h

+dd 0b8a4fa15h

+dd 060d25e6ch

+dd 005819285h

+dd 02a314992h

+dd 007d46f12h

+dd 0271c0b18h

+dd 02f983f24h

+dd 0db71ec1eh

+dd 0789df697h

+dd 05cb7f6feh

+dd 0e5ed101dh

+dd 0e9d45d7fh

+dd 083e469d3h

+dd 09f3f11afh

+dd 0551008a8h

+dd 02a3244f0h

+dd 03601b489h

+dd 0a53120c4h

+dd 0e2432abah

+dd 06350d283h

+dd 0cb4489bbh

+dd 0f72ff0cfh

+dd 0b4d1e620h

+dd 0069787ach

+dd 095bfb8c1h

+dd 09f4c9621h

+dd 06ab85bb2h

+dd 0c2725be5h

+dd 061343330h

+dd 0e19089e9h

+dd 0e10fb625h

+dd 005e0a147h

+dd 03c5e69f8h

+dd 07308b8c4h

+dd 00c4ecd6fh

+dd 0bb945183h

+dd 00d49196fh

+dd 02392bb6ch

+dd 01e0253eah

+dd 0d83b41a1h

+dd 06e225ee7h

+dd 012b33116h

+dd 01ffe4688h

+dd 0693f26a6h

+dd 0f18425fch

+dd 00fc90de0h

+dd 0da794135h

+dd 0d0eec6f5h

+dd 0f1c5febbh

+dd 0e7c32bbch

+dd 02b6ec1e5h

+dd 06177ac1dh

+dd 0c5434f3fh

+dd 0677af034h

+dd 0675f4073h

+dd 071da47c9h

+dd 0e42d96ffh

+dd 04cba8629h

+dd 0dc666fefh

+dd 023e68006h

+dd 0b521db44h

+dd 0c118106bh

+dd 023114f08h

+dd 0a33d9eb3h

+dd 0a2008243h

+dd 0f19ca057h

+dd 0f104e3d3h

+dd 07b5ffe4dh

+dd 05b495d9ch

+dd 0703cc169h

+dd 01313f8d1h

+dd 0d989feabh

+dd 0c64cd910h

+dd 0675c7612h

+dd 024c8ceffh

+dd 089ef04cdh

+dd 0436bdc6ah

+dd 0d01c4478h

+dd 041e587deh

+dd 087df2964h

+dd 041c56f11h

+dd 0632ea3bah

+dd 0af0f1242h

+dd 0a9407647h

+dd 014cda821h

+dd 049b8e05ch

+dd 0c025a0edh

+dd 017f89ea8h

+dd 01fa0d49fh

+dd 079a24114h

+dd 0aabef508h

+dd 087591903h

+dd 0b9386be4h

+dd 0111a7d0fh

+dd 02d8c1368h

+dd 0a73e45a4h

+dd 0ff65a58eh

+dd 030a737f3h

+dd 03f817590h

+dd 096a15a53h

+dd 041e4d652h

+dd 00e01113eh

+dd 0acca967bh

+dd 0b913842eh

+dd 094b527dch

+dd 08e7a289bh

+dd 09b2248bah

+dd 08cf9fcabh

+dd 088e21175h

+dd 09af0a25ah

+dd 049dc9c79h

+dd 08087a712h

+dd 01dffb762h

+dd 058430a2dh

+dd 01e2f4c57h

+dd 0a06f9744h

+dd 095c531e8h

+dd 0024b76e2h

+dd 0438be285h

+dd 0cc1206f1h

+dd 0ddc3262bh

+dd 0b3c4b01ch

+dd 012a65db1h

+dd 0feedfb9fh

+dd 08f6bde7eh

+dd 0e629929ah

+dd 06f25b76bh

+dd 09c75d6c7h

+dd 09836140ah

+dd 098c54267h

+dd 0969de8a3h

+dd 028b892eeh

+dd 0ee282ba9h

+dd 0d16aa413h

+dd 0890b3b7ch

+dd 056b05e33h

+dd 0e282da9dh

+dd 0441f253ah

+dd 00f5a30f6h

+dd 0206779dfh

+dd 0d29f4e35h

+dd 0b7b90487h

+dd 07427f3d4h

+dd 09e164593h

+dd 0c45dab7ah

+dd 08871f008h

+dd 03096c49bh

+dd 0c1ddd075h

+dd 0502d019fh

+dd 0da69460fh

+dd 09a57ff86h

+dd 09f7abb8ch

+dd 00914e4ech

+dd 0d6c4c29bh

+dd 0f4e9590ah

+dd 089f9305dh

+dd 09fe236aah

+dd 06d509618h

+dd 0f9670752h

+dd 076d3d11ch

+dd 039bc1b40h

+dd 04f65b3c8h

+dd 0e414265bh

+dd 0830fafb8h

+dd 07707c874h

+dd 02ce85da5h

+dd 0059c24fch

+dd 0cb8f8071h

+dd 06d3598b3h

+dd 031e2e8f3h

+dd 0872dc9cbh

+dd 0e055b639h

+dd 0e02a1dffh

+dd 0d4e586dfh

+dd 0994d8527h

+dd 041e5c206h

+dd 0cd60b5bfh

+dd 0a2cd9f2eh

+dd 07c3d47deh

+dd 0ff563af9h

+dd 0c8831cc5h

+dd 07499ab8ah

+dd 0b7238a5ch

+dd 0bdbc3e18h

+dd 0251c1720h

+dd 0b2dd2cebh

+dd 0c8c6dc14h

+dd 0b2ec416fh

+dd 0f6663e7dh

+dd 0685477abh

+dd 053a34c83h

+dd 02b2f61a5h

+dd 02ee95584h

+dd 0feb71034h

+dd 0e35de415h

+dd 07d454ee6h

+dd 061dad262h

+dd 07c51083bh

+dd 0d947b0d5h

+dd 07db762b2h

+dd 071afac81h

+dd 0aa875759h

+dd 0086d5f5eh

+dd 09d832d0eh

+dd 0fa3788fch

+dd 0a333071fh

+dd 00ef6aeddh

+dd 024f8b3deh

+dd 08d759082h

+dd 00b530533h

+dd 0f5e2282fh

+dd 0d3f51407h

+dd 0c61516a2h

+dd 0d958ed90h

+dd 0b3541a95h

+dd 0ec520d32h

+dd 08c4e6b4bh

+dd 0d65a6f11h

+dd 04bb33321h

+dd 01aab0aach

+dd 0bc20fcf1h

+dd 0ecce6391h

+dd 061e46a5ah

+dd 026cbcb72h

+dd 0c50820dfh

+dd 02bb3eff1h

+dd 0a48f442bh

+dd 0b3702effh

+dd 0301b2e0bh

+dd 00d49cea5h

+dd 02244f2f5h

+dd 0a43b8c34h

+dd 05fe563beh

+dd 07285622ch

+dd 04d7b3262h

+dd 03bdf1fc6h

+dd 03e835196h

+dd 0427fdd16h

+dd 0d0adfe21h

+dd 0912fb69dh

+dd 035986676h

+dd 06ce59bcch

+dd 0e7909e85h

+dd 0c8c32976h

+dd 0ea917a88h

+dd 08896f4ffh

+dd 06ff06df0h

+dd 0aabf8b79h

+dd 0d7c7a68ah

+dd 06fd9ff22h

+dd 0e3622e59h

+dd 07c344408h

+dd 091b9fd94h

+dd 0338db2bah

+dd 09e9b59fdh

+dd 09de655c7h

+dd 059f5f70fh

+dd 04985a080h

+dd 00992d61eh

+dd 0646e2dadh

+dd 0a1ad6146h

+dd 09a706348h

+dd 0df300c0ch

+dd 009362cd0h

+dd 0dc3812bbh

+dd 0d5fc6ac9h

+dd 02ee6d3aeh

+dd 0d371ebd5h

+dd 06f03fc5eh

+dd 0cfe2fbadh

+dd 004896dcbh

+dd 00a028b6eh

+dd 0f6c7615bh

+dd 0cb77de7dh

+dd 00f97f59eh

+dd 0055bed3eh

+dd 00992bbb7h

+dd 075736d5fh

+dd 0fbbf0a6bh

+dd 07f7d0520h

+dd 0f192b430h

+dd 053f1b2bbh

+dd 049ec0392h

+dd 0314f8941h

+dd 09fb95cbdh

+dd 09849e73eh

+dd 0570a2e91h

+dd 056f77f82h

+dd 0e63be3b8h

+dd 0ac16fc44h

+dd 09e21e349h

+dd 0efe8d0c2h

+dd 07e3fe6feh

+dd 0cd01e0feh

+dd 0e282e31dh

+dd 0b0e49729h

+dd 0e1402a75h

+dd 098e75281h

+dd 06a297836h

+dd 0cb31eb0bh

+dd 04f0df95ch

+dd 06fafe4cdh

+dd 0b443dabbh

+dd 070190baah

+dd 008cb1c4fh

+dd 01ba456fah

+dd 0a1838ed5h

+dd 0b121bbebh

+dd 095fc7a60h

+dd 083dd3149h

+dd 0a51551f1h

+dd 06f49288bh

+dd 0e19498e5h

+dd 0520830beh

+dd 096efdb8fh

+dd 0203ed910h

+dd 0c38d2067h

+dd 037870d37h

+dd 0e09aa02dh

+dd 0a9a4a1eah

+dd 0ec3ea916h

+dd 0b4537edeh

+dd 003143240h

+dd 040436981h

+dd 062891656h

+dd 0f44d6b90h

+dd 0213d7236h

+dd 05de29457h

+dd 093f9da19h

+dd 0efdf2993h

+dd 047b0b5cbh

+dd 0bd154153h

+dd 0baa48b2bh

+dd 05d193705h

+dd 0bb1ab326h

+dd 045f0340fh

+dd 05a6848ach

+dd 0b2c0eef7h

+dd 0e5249d40h

+dd 0e0a4109bh

+dd 07f417a1bh

+dd 01801c6a1h

+dd 0c09b0d3ch

+dd 0f032a0c9h

+dd 0450a749fh

+dd 0817cc1f6h

+dd 0aa08f8a0h

+dd 06439864ah

+dd 0c9020a02h

+dd 00e546eedh

+dd 0831b9507h

+dd 05abd6497h

+dd 01171d268h

+dd 0445dc7a7h

+dd 0d81e5a3fh

+dd 06f3358b9h

+dd 054146926h

+dd 05aa67743h

+dd 00beb741bh

+dd 063710afeh

+dd 0782d076dh

+dd 04f58c3d1h

+dd 0feb45223h

+dd 0fdd5fa1ah

+dd 0ea9ae70eh

+dd 0304ad81bh

+dd 0fca9b843h

+dd 029430073h

+dd 0308a1a48h

+dd 094d3b55bh

+dd 07f8019c4h

+dd 08173ff1fh

+dd 08c9f83abh

+dd 08187f834h

+dd 040050463h

+dd 070228781h

+dd 03b30d738h

+dd 0fed93b90h

+dd 04821b246h

+dd 055a48a6ah

+dd 0f364f05ah

+dd 028ee52e2h

+dd 074ef1baeh

+dd 02170e488h

+dd 0fd5ae11ch

+dd 092c269b9h

+dd 0204562f4h

+dd 0b7159442h

+dd 00a1d7ca4h

+dd 09818f89ah

+dd 044df59d0h

+dd 046995355h

+dd 00256191ah

+dd 0ec251097h

+dd 0806152cfh

+dd 0382b91cch

+dd 0893290f0h

+dd 04b85eca6h

+dd 09c3efbefh

+dd 0e52f49efh

+dd 0a6687fddh

+dd 026a8b577h

+dd 0c2d521cbh

+dd 05c9b5a4bh

+dd 0838965d6h

+dd 0daa55b57h

+dd 0a05de0fbh

+dd 036a5d6dbh

+dd 06e2275a3h

+dd 0e2d8bd51h

+dd 0be6c3073h

+dd 0aefeabf8h

+dd 01956e427h

+dd 0eb281538h

+dd 0ec58ca21h

+dd 0d4dde7bfh

+dd 0f402804eh

+dd 03f27ad92h

+dd 09f86d174h

+dd 00f99236fh

+dd 074017d69h

+dd 09a084e81h

+dd 0a6625e47h

+dd 048982debh

+dd 0e16797cbh

+dd 0d2366b76h

+dd 07106606eh

+dd 06488d21fh

+dd 0edafe78bh

+dd 0318362e8h

+dd 0516730adh

+dd 0e4e41a21h

+dd 0fd6bfa25h

+dd 0053f14cah

+dd 045c80069h

+dd 06bbfa0f9h

+dd 0c320a03fh

+dd 037b309b7h

+dd 05260171eh

+dd 001c54d7dh

+dd 0e1fd25f6h

+dd 0999af730h

+dd 01d3ea1e8h

+dd 03a591aceh

+dd 01e73473ah

+dd 01e8c1e2dh

+dd 0c13c32c3h

+dd 0e9d18da5h

+dd 0fadbb8a1h

+dd 0f9652980h

+dd 0a67683b1h

+dd 0ac7bee74h

+dd 0079e2d3eh

+dd 08b74959ch

+dd 081790130h

+dd 0ae97282ch

+dd 0b04d37abh

+dd 09a50fe7fh

+dd 090a5aeb9h

+dd 0815761abh

+dd 05d69479ah

+dd 000fa18e9h

+dd 0712cd3dbh

+dd 03f930a63h

+dd 0c37c423ah

+dd 08c2a11f7h

+dd 014b2ce74h

+dd 0454d5f55h

+dd 018c421c3h

+dd 0524f006fh

+dd 0f946fa11h

+dd 081c4007ch

+dd 005bba400h

+dd 040f4d514h

+dd 0faa01ed1h

+dd 08686743fh

+dd 01dc4402fh

+dd 01adf4bfah

+dd 0c1fa75dch

+dd 05ae807e1h

+dd 022b37048h

+dd 0e22e5ef0h

+dd 02e105291h

+dd 098a71190h

+dd 0a847b67dh

+dd 02c05e0d8h

+dd 0506aa725h

+dd 01e3056eeh

+dd 0ec43d5f5h

+dd 09422fe3dh

+dd 0f034d6bah

+dd 00653de1ah

+dd 08b58fe34h

+dd 0972291b8h

+dd 070b814feh

+dd 0936380d5h

+dd 0cee0ab5bh

+dd 05e60985bh

+dd 0b27f5e36h

+dd 0c90dc225h

+dd 0bd478608h

+dd 0a4007e71h

+dd 08ff6753ah

+dd 096edd95ah

+dd 04bd0f40fh

+dd 0eea54b55h

+dd 0f231fb8bh

+dd 05979704fh

+dd 04fc4ede6h

+dd 045237533h

+dd 0ad73d3a9h

+dd 06943ed67h

+dd 01fd21329h

+dd 05a046cc6h

+dd 0f8eeee61h

+dd 08fa69461h

+dd 0cbfa63d7h

+dd 0769a2717h

+dd 0469b44d5h

+dd 0a4b6baf3h

+dd 09fb08b1fh

+dd 04ddc36a9h

+dd 0cd4a607ah

+dd 08ba9a608h

+dd 0e3e457c5h

+dd 0cad4ee09h

+dd 0e9416ed1h

+dd 0016276f6h

+dd 08b6a7040h

+dd 03cbf0239h

+dd 0ee075337h

+dd 0fe8f45f8h

+dd 0667f2d74h

+dd 0d448855dh

+dd 09d1893e7h

+dd 098f61b4eh

+dd 03f55210eh

+dd 07f63d0bbh

+dd 05cdf02b7h

+dd 0266a6785h

+dd 008c29486h

+dd 07f76e401h

+dd 028c54a3eh

+dd 04d0d330ch

+dd 008070f13h

+dd 0d4f153eeh

+dd 091a295feh

+dd 091d4fea9h

+dd 0ac63594bh

+dd 0517c5ffch

+dd 0d712acb3h

+dd 0ea97e5e3h

+dd 0ac802155h

+dd 042add2e0h

+dd 0606ce8bah

+dd 0331539a7h

+dd 0f5bd3097h

+dd 07d61c89fh

+dd 0dde97aeah

+dd 02ee1d3eah

+dd 00102e452h

+dd 0f9733bbdh

+dd 0d6e57974h

+dd 0b1b2f65fh

+dd 07565461fh

+dd 0b0cb759fh

+dd 04deb2834h

+dd 0a388d3d6h

+dd 0cd19e90ah

+dd 0371922b4h

+dd 025e9fee4h

+dd 0f6371c91h

+dd 0359888cbh

+dd 0819666f1h

+dd 0f328276dh

+dd 07c4fc79dh

+dd 0bde6893ch

+dd 07f605647h

+dd 0ae8a700bh

+dd 0b5012ba4h

+dd 0a52c96bbh

+dd 012818488h

+dd 062ed5c26h

+dd 0321f9a65h

+dd 0008ce339h

+dd 0dee51e27h

+dd 0501cd729h

+dd 00d18da9eh

+dd 082a3ae2fh

+dd 0c164163bh

+dd 054bf5099h

+dd 05ae4b76fh

+dd 03589ca29h

+dd 02788e56bh

+dd 09a17e423h

+dd 0a1ce0553h

+dd 0483849ceh

+dd 0796fa05bh

+dd 01dad48ech

+dd 0d9152588h

+dd 0706a38bfh

+dd 0dce9c8d4h

+dd 03d09588dh

+dd 0cd98f882h

+dd 0806a9aaah

+dd 0ef30653eh

+dd 08586edd9h

+dd 0af3ebb4eh

+dd 0264769adh

+dd 0af2c9c35h

+dd 06da6532bh

+dd 00fbc4a91h

+dd 018298401h

+dd 03080b4d5h

+dd 04ac60519h

+dd 01334b6beh

+dd 0747e0fe0h

+dd 07a3f5f54h

+dd 0208ef09ch

+dd 02ed52711h

+dd 0e7941a40h

+dd 02f3b02bfh

+dd 0c2f6186eh

+dd 0784f4022h

+dd 09fc4dd0bh

+dd 0ea9dafdch

+dd 0b90e0807h

+dd 0aa6a6bb2h

+dd 079cf3545h

+dd 07d646514h

+dd 0949abbc7h

+dd 0bd7e322ch

+dd 0e4e38627h

+dd 007b1391dh

+dd 0bc2188f9h

+dd 0f2c28d1fh

+dd 0f2725dc7h

+dd 0de8d6926h

+dd 0bb1b6934h

+dd 04b3c98d0h

+dd 01ab7bbcfh

+dd 0fc95780ah

+dd 03fd7957ch

+dd 063ddcc93h

+dd 0038c773ch

+dd 097375ca3h

+dd 095d5fcb4h

+dd 0ffe377f7h

+dd 0c627b4d1h

+dd 040f37ef5h

+dd 0e62f6155h

+dd 0eeb36593h

+dd 0c479b2e9h

+dd 004c220deh

+dd 0af34ac85h

+dd 0c690e5a4h

+dd 0d11923f0h

+dd 0f77e6625h

+dd 0fb3f98fdh

+dd 0a60744afh

+dd 0558cb431h

+dd 0d44bcf14h

+dd 059cd5a1eh

+dd 0227c17f1h

+dd 02ef7c98ch

+dd 043757338h

+dd 00b67b2c2h

+dd 0f261c67dh

+dd 0a3fac908h

+dd 047849734h

+dd 00c6e5875h

+dd 0f5b3cf11h

+dd 06d56ca48h

+dd 0c86a218bh

+dd 0df626808h

+dd 00dcc7ea7h

+dd 0081952bch

+dd 00bdfd4c4h

+dd 0dd370375h

+dd 0e39ee09ah

+dd 07ac58b6eh

+dd 04a622ce6h

+dd 04452d063h

+dd 026e92a3ah

+dd 06e001a93h

+dd 0f3e0aeedh

+dd 0834e981dh

+dd 04138f3d2h

+dd 0ffa4ebd0h

+dd 0a3ee2cb7h

+dd 04387adb8h

+dd 0106c9ddbh

+dd 0bea5e5ceh

+dd 0dcb9300fh

+dd 0a48638b7h

+dd 0d4e0a7c2h

+dd 0dba7e28ah

+dd 0ac4d2e2ah

+dd 0104b6da8h

+dd 03091730eh

+dd 03cf23a4eh

+dd 0762139eeh

+dd 0dc644a78h

+dd 08587cdc8h

+dd 088ed1ba7h

+dd 039df5dabh

+dd 012d37786h

+dd 00e0ccc01h

+dd 0649c9b0fh

+dd 01e610116h

+dd 02032d906h

+dd 0d85d4ba7h

+dd 0c0789c47h

+dd 059cb1ac9h

+dd 0c27564fbh

+dd 0e2b9a6cdh

+dd 0f9a24467h

+dd 023b515ceh

+dd 099734a76h

+dd 09cf7ef25h

+dd 066482735h

+dd 082e4f0aah

+dd 0fd817036h

+dd 027615baeh

+dd 021114109h

+dd 0031ec866h

+dd 0ffe499cah

+dd 07765670bh

+dd 024242363h

+dd 0da937e88h

+dd 02ba3dc57h

+dd 0651df580h

+dd 08e863bf3h

+dd 021a93fddh

+dd 0033d8c1ah

+dd 0310d16c6h

+dd 06148b078h

+dd 09a24660eh

+dd 08d4a5a31h

+dd 06c7f79eeh

+dd 02edc0470h

+dd 03a7fc546h

+dd 09c2feee2h

+dd 07050d8e7h

+dd 0f9eee206h

+dd 02b6f3fa8h

+dd 08a9e01ech

+dd 05af0968ch

+dd 0b9c9edf0h

+dd 04d058355h

+dd 0bf60dd5bh

+dd 087bd3907h

+dd 056e5859bh

+dd 047a7d0a4h

+dd 0576536e2h

+dd 0763a6132h

+dd 0ac72daa1h

+dd 081a4c9b0h

+dd 07950206ch

+dd 0001611beh

+dd 08678cceah

+dd 0961b395ah

+dd 0be56a48ah

+dd 0c10fdc93h

+dd 00c3a0ac7h

+dd 0812fa4c5h

+dd 0f0b10150h

+dd 0ce1f51ddh

+dd 0a4d083f1h

+dd 04f8e30f6h

+dd 0f1084f6bh

+dd 076cde213h

+dd 0d5ba6559h

+dd 0d6375912h

+dd 05b8533f4h

+dd 006cc9b4dh

+dd 018fff68fh

+dd 0c9b7acceh

+dd 0dea1455bh

+dd 062c5d786h

+dd 074823ddah

+dd 0c789a1d1h

+dd 0e00c901ch

+dd 08f45e54dh

+dd 0f3aeeab5h

+dd 04afd96dbh

+dd 001514be7h

+dd 0aacb772fh

+dd 09157bd20h

+dd 0136769e9h

+dd 0b423ef42h

+dd 012644499h

+dd 06b5f6d47h

+dd 053489eeeh

+dd 096342c0eh

+dd 09d4294e0h

+dd 0e08e6771h

+dd 0ff9b309ah

+dd 0d60f4d56h

+dd 01f586fb1h

+dd 0db203e81h

+dd 090d83ad2h

+dd 065096e3bh

+dd 029092e24h

+dd 045be596ah

+dd 00e2555f8h

+dd 0cb4acaf1h

+dd 0b663407fh

+dd 091f79d81h

+dd 03d3afcafh

+dd 0d09d7a68h

+dd 037b4ac5bh

+dd 0eca9d8b6h

+dd 01897fc3ah

+dd 038c100deh

+dd 07126cbech

+dd 0d62b443eh

+dd 07cc1a470h

+dd 0c50758a8h

+dd 03ee93424h

+dd 058bad726h

+dd 0811ac2fah

+dd 06bdf88dch

+dd 0b30c139bh

+dd 08e04ec47h

+dd 0c4b81029h

+dd 064a2f0b0h

+dd 0173e53b8h

+dd 059863b17h

+dd 04a082e4ah

+dd 039dc8629h

+dd 07b098f8bh

+dd 0338fe0d4h

+dd 09b8c1ab5h

+dd 07631960fh

+dd 0e5e8a274h

+dd 06cef53bbh

+dd 09dfb5a86h

+dd 08e94180fh

+dd 081a9f3b3h

+dd 0189c4a59h

+dd 0c11c8bc9h

+dd 0ddad0589h

+dd 065c7387eh

+dd 06f2b94a0h

+dd 096b526bbh

+dd 07dcfd73bh

+dd 0ab35e109h

+dd 02bb615e8h

+dd 0927c65deh

+dd 0154268fbh

+dd 04d88bf9ch

+dd 05e14914bh

+dd 0f834901ah

+dd 0a04cd465h

+dd 05e19db1ah

+dd 0765be3e1h

+dd 005238410h

+dd 0423c0c78h

+dd 0e795d5dfh

+dd 0155e6c95h

+dd 01c71f70ah

+dd 04340c880h

+dd 0f6ba5176h

+dd 0d500f6c4h

+dd 0df7a9248h

+dd 0f3fcfe89h

+dd 0a89b5b32h

+dd 05a2c0ba5h

+dd 0da8a78abh

+dd 0a30fb4bah

+dd 0a673ce26h

+dd 0f974c4c0h

+dd 0cc9cb65ah

+dd 013ccf399h

+dd 0518a9846h

+dd 0e2635331h

+dd 0c2290cd8h

+dd 09b13993eh

+dd 0ea2f3ff0h

+dd 0c1405195h

+dd 074aa072ah

+dd 07b285499h

+dd 0c33756bah

+dd 057de723bh

+dd 0f98997b4h

+dd 0dc5fe8b6h

+dd 020be7c93h

+dd 0b8e232a4h

+dd 060593ca5h

+dd 01803e8deh

+dd 03d7ba5e1h

+dd 0681f080ch

+dd 0b790b79bh

+dd 0f3dbf1f0h

+dd 0e6f08cdfh

+dd 0455e9ddbh

+dd 0ec338edch

+dd 036d2163dh

+dd 096dc4b65h

+dd 0a07582adh

+dd 0bb601ebah

+dd 0895129afh

+dd 04ca7633ah

+dd 0ebacb194h

+dd 052cf3ea1h

+dd 05f0f104fh

+dd 05b60a020h

+dd 0ec554303h

+dd 0713a8a35h

+dd 071dc611eh

+dd 0b5d1b8f2h

+dd 0227a2579h

+dd 042f7c251h

+dd 071344816h

+dd 06a5699f3h

+dd 0f8b2b355h

+dd 04de6e308h

+dd 01f5e316dh

+dd 0ad0e4315h

+dd 095418679h

+dd 01c0a819dh

+dd 0ba2b9c4dh

+dd 063668ec1h

+dd 032db84ech

+dd 050e3d065h

+dd 066c84256h

+dd 080a4a392h

+dd 0bd421147h

+dd 0cd5fe6d1h

+dd 09d9670c8h

+dd 08fa1e08dh

+dd 0b5a78b56h

+dd 0b5ae9f2bh

+dd 04661372dh

+dd 00ef33896h

+dd 0aa0962f8h

+dd 02e549369h

+dd 0eea6d67dh

+dd 056be36d9h

+dd 06004619eh

+dd 067c6111eh

+dd 0126d18dbh

+dd 008477704h

+dd 072ed3098h

+dd 0e9a017b4h

+dd 0b0d6d1abh

+dd 09f22efaeh

+dd 03d6e5f23h

+dd 0bf600781h

+dd 0e752a4e8h

+dd 0f7f5d07bh

+dd 06ac71896h

+dd 096d16bfeh

+dd 02d60606fh

+dd 0d68af20ah

+dd 02af6c78fh

+dd 00b25059eh

+dd 01865d867h

+dd 0d8cf0ab4h

+dd 043e3dbe0h

+dd 0166399a3h

+dd 0b8d36f37h

+dd 0d3b1f4a8h

+dd 0d735aefbh

+dd 0692b1a56h

+dd 0fc9e7aach

+dd 03dae66c2h

+dd 09a6f770eh

+dd 05a98f00bh

+dd 06487e2a9h

+dd 085e096e6h

+dd 0337aed52h

+dd 086b0243ah

+dd 0e6ecb26dh

+dd 0462f436bh

+dd 06906f2b0h

+dd 0797c700eh

+dd 019eb6c31h

+dd 0ece62a97h

+dd 02d57cfb2h

+dd 0a5bbd818h

+dd 057e6f51ah

+dd 04f57b77ah

+dd 07e62e24bh

+dd 067f27df4h

+dd 06319ac87h

+dd 019a95fb3h

+dd 0c20a9797h

+dd 0fda20b56h

+dd 0768aecadh

+dd 033b2b53bh

+dd 0e51f5eb3h

+dd 0bffb8951h

+dd 0318a29bfh

+dd 0cd8359bch

+dd 0e1ee69f6h

+dd 09338e324h

+dd 0de17ce79h

+dd 0cfcb2de1h

+dd 0cf095332h

+dd 07d440b24h

+dd 02af3641fh

+dd 03145f173h

+dd 04e8d10ech

+dd 06b809d3ch

+dd 0d8259ff9h

+dd 090e7ff0ah

+dd 0e39de2c9h

+dd 0c151e747h

+dd 08bfa8e08h

+dd 0b7041f5fh

+dd 0b211af4fh

+dd 0ffac5cfah

+dd 0ab197c3ch

+dd 091c7ef35h

+dd 07c756e97h

+dd 0942ac928h

+dd 0391cdb5dh

+dd 0d3391e42h

+dd 022cd25f5h

+dd 00efdac15h

+dd 06e44c259h

+dd 0498e15fah

+dd 050d45befh

+dd 05ff39513h

+dd 0ce14dd35h

+dd 07b84c7a0h

+dd 056eda959h

+dd 0cbb39cb1h

+dd 0e5440377h

+dd 0a54a81e3h

+dd 01e30f1edh

+dd 0d93cd3d0h

+dd 0ab88cd07h

+dd 03156b0d6h

+dd 00c7817ceh

+dd 0afecb783h

+dd 0dde3bdb4h

+dd 022834db6h

+dd 0a952f5c6h

+dd 0838f0cceh

+dd 01de42a1fh

+dd 06b836a8dh

+dd 0b6996236h

+dd 0579e2375h

+dd 0a9d3ba51h

+dd 04585e7b5h

+dd 0993a64b8h

+dd 0198731e9h

+dd 0a75edd02h

+dd 0452b95b2h

+dd 0521e491dh

+dd 093b70febh

+dd 085993e90h

+dd 069bbcb94h

+dd 0f072c986h

+dd 06192736dh

+dd 0aa386ee5h

+dd 04cff7cadh

+dd 0f6fc62bdh

+dd 077516cb0h

+dd 0b9dae575h

+dd 0b72365b4h

+dd 01ed3eea7h

+dd 08c027a97h

+dd 000efe864h

+dd 0637578edh

+dd 0f63bb7c4h

+dd 0fadb2e22h

+dd 0f35b414fh

+dd 04f8194e9h

+dd 03bded4c4h

+dd 08ec5f742h

+dd 085819a8eh

+dd 03f71e666h

+dd 01cbaf66bh

+dd 08c2fc83ch

+dd 0bc9c924fh

+dd 09cf4ecd9h

+dd 0e97bf190h

+dd 03f7d30f7h

+dd 0585d15c3h

+dd 08e45b1c6h

+dd 0bbc5dea2h

+dd 0a96add5dh

+dd 00253eda3h

+dd 0b89b8689h

+dd 08a5bbeb9h

+dd 0e728cc7dh

+dd 0091cb529h

+dd 00b65dcc8h

+dd 08090a5c4h

+dd 00da7deeah

+dd 0a4a4af91h

+dd 0a9cfc02eh

+dd 0b9af5643h

+dd 087679ac8h

+dd 0b6c6d590h

+dd 0095adfdbh

+dd 05b3e041ah

+dd 054c5d58ah

+dd 03ded3537h

+dd 00643272dh

+dd 085c81856h

+dd 0ff2d568eh

+dd 0fe433588h

+dd 01a5dbd8eh

+dd 0502b8252h

+dd 0a4884618h

+dd 04813a812h

+dd 035026c0dh

+dd 012a21792h

+dd 0ab781349h

+dd 09e3db742h

+dd 01e906346h

+dd 0f1aa1c49h

+dd 08c647d4ch

+dd 0195b5493h

+dd 04e63be6fh

+dd 0c2fca42eh

+dd 0283997feh

+dd 07d8ca973h

+dd 0ce5dda5bh

+dd 0220efde7h

+dd 0f04ad0a3h

+dd 01e1befaah

+dd 0cafa51d8h

+dd 099c3f71bh

+dd 0bf4f4ecch

+dd 0fcc69bf7h

+dd 09eac0807h

+dd 03b9a0041h

+dd 0b8ecc83ah

+dd 0497114e9h

+dd 0c67dd7f5h

+dd 041afa1c5h

+dd 05697dcd3h

+dd 0e174f0ceh

+dd 0c0d87975h

+dd 0a617a347h

+dd 097dafbech

+dd 0823a3ab4h

+dd 04b861401h

+dd 0bea89745h

+dd 0c7e3dc9ah

+dd 00b5f1f47h

+dd 0e3307316h

+dd 028f58b85h

+dd 08881937fh

+dd 0027c45c0h

+dd 0a4da49ddh

+dd 019b33ecdh

+dd 071c4ad23h

+dd 059ae36a6h

+dd 0f507d248h

+dd 07d56697ah

+dd 02025d572h

+dd 08b634d20h

+dd 022dce9aah

+dd 0df83d597h

+dd 0f6e5e469h

+dd 04214c0fdh

+dd 03ac10093h

+dd 04f984ce7h

+dd 0061f12b1h

+dd 0f9a1d546h

+dd 03635546fh

+dd 08cb5265fh

+dd 01a861f78h

+dd 092072683h

+dd 09e763f70h

+dd 06fa989dfh

+dd 002737dc4h

+dd 0922f4fa6h

+dd 0173213bfh

+dd 068903ce0h

+dd 0ab645011h

+dd 04233d21dh

+dd 033722e2bh

+dd 0059e2df0h

+dd 05281efa3h

+dd 0286283edh

+dd 04230e5e3h

+dd 0b492b48eh

+dd 07e4ba4bfh

+dd 0a2357854h

+dd 0d988326ah

+dd 0cd2d1173h

+dd 00ab81d03h

+dd 00d5c00a4h

+dd 04dcfff75h

+dd 016ae524ch

+dd 04806289bh

+dd 0207f8075h

+dd 070ae3d1fh

+dd 0c44c0853h

+dd 02edfb318h

+dd 0c5e6b84bh

+dd 05fa7bc40h

+dd 061ea8792h

+dd 06c2cf4b9h

+dd 013cbb131h

+dd 066f72680h

+dd 06d14b3bdh

+dd 0980dbeadh

+dd 0f13b1ca6h

+dd 09f1eb183h

+dd 0e8200caeh

+dd 0f4326a7ah

+dd 0b21b740eh

+dd 0f00b8636h

+dd 0bdb18ee1h

+dd 0394522adh

+dd 07eec2123h

+dd 01d8ab1f3h

+dd 089785884h

+dd 0a5562ce6h

+dd 05f358b29h

+dd 0d92af3c9h

+dd 0a12ff6e4h

+dd 01b32d3aeh

+dd 09fcc3ecfh

+dd 0ac7d5057h

+dd 042a41c31h

+dd 0c082a861h

+dd 0de3c4734h

+dd 06eb48090h

+dd 0193ba047h

+dd 0d56784c0h

+dd 0dd489b11h

+dd 0ee1f5503h

+dd 0ffda7af8h

+dd 073905a84h

+dd 04cd52dcbh

+dd 042715411h

+dd 08862eaa3h

+dd 00ff17621h

+dd 04318b593h

+dd 04ddab6c3h

+dd 0b152fd0bh

+dd 05af9f4f4h

+dd 095cc3cceh

+dd 0e9557e08h

+dd 0a812c6aeh

+dd 012aa963fh

+dd 0980153b5h

+dd 06c14471eh

+dd 0e3035f42h

+dd 03d10f028h

+dd 0717443d0h

+dd 0381c4188h

+dd 0acd18c08h

+dd 0f03a248ah

+dd 041a248d3h

+dd 042bad49bh

+dd 0496cb118h

+dd 08975de52h

+dd 01e3ba0f1h

+dd 0c33a85a2h

+dd 0151edae5h

+dd 060ec7667h

+dd 07736792ch

+dd 0b1adcb1bh

+dd 046058fabh

+dd 09d2c79c3h

+dd 0df0c2dc2h

+dd 0b772b7d7h

+dd 020cdd640h

+dd 02088fa0ah

+dd 0e8f542eeh

+dd 080666385h

+dd 07b0c0893h

+dd 0992b76fbh

+dd 053df5f40h

+dd 065da77e1h

+dd 0df8323c2h

+dd 002394834h

+dd 06ebb468ah

+dd 00049a47fh

+dd 0c26f48bch

+dd 045184684h

+dd 0ea79ce5ch

+dd 0169fd084h

+dd 031274649h

+dd 02c2c5e83h

+dd 0498666bah

+dd 07dd19ce4h

+dd 09a704eeah

+dd 0923002d4h

+dd 06c32dca4h

+dd 0c54d9583h

+dd 047772a07h

+dd 0e831b295h

+dd 0093d38e4h

+dd 0eed58b54h

+dd 060bcf373h

+dd 08669b444h

+dd 0a40e8d75h

+dd 0c7687b5ah

+dd 0affcd7e3h

+dd 0c3e1f83ch

+dd 0aac465b8h

+dd 0d327f2b9h

+dd 0676a671dh

+dd 04a8558e7h

+dd 0570ae9b3h

+dd 035bdc8cdh

+dd 0dabcd81eh

+dd 0c9a0f787h

+dd 0298d7c2fh

+dd 021b2dd32h

+dd 0deb04f6ah

+dd 0eb9b9aa6h

+dd 0bb5a0e88h

+dd 0dd0fb162h

+dd 0f97d97e0h

+dd 0a9f6b85ch

+dd 05446af3ch

+dd 088f8ddc7h

+dd 09b630fd1h

+dd 06ac1c0eeh

+dd 07b143a7ah

+dd 02f30e95ch

+dd 008608136h

+dd 07b21d68bh

+dd 05d2b0554h

+dd 0ea89ed34h

+dd 0ae9e4d44h

+dd 0d999e00ch

+dd 0e5dff64bh

+dd 015cd0191h

+dd 0133e10bch

+dd 05b34ca0bh

+dd 0c3be8953h

+dd 0c0b0695dh

+dd 0877b9fafh

+dd 09eb24dcfh

+dd 0c458718bh

+dd 00ca80b28h

+dd 0565a3099h

+dd 0686398b4h

+dd 03b6c074dh

+dd 0fde98d03h

+dd 02159ca09h

+dd 04452b31ah

+dd 06093a845h

+dd 0f3d725d8h

+dd 094d78a3ch

+dd 093e27823h

+dd 0e79db6bch

+dd 0eb8f1424h

+dd 0b129355fh

+dd 067116ca6h

+dd 02661ce50h

+dd 015843d16h

+dd 04786305eh

+dd 0c6e3ef26h

+dd 092b47aa0h

+dd 0803d5897h

+dd 06b53e86eh

+dd 03fd679bch

+dd 07dac6fd3h

+dd 0e2a1b4b3h

+dd 0077421c9h

+dd 0eb34d643h

+dd 03f7e11f0h

+dd 0aa7e8e5ah

+dd 0be9dc53ah

+dd 03fb7b32ch

+dd 0438ed95ch

+dd 0f5205580h

+dd 0ced33d6ah

+dd 04aefd1ceh

+dd 0ab88d009h

+dd 0172e8e15h

+dd 0aca44c2ch

+dd 04b29b322h

+dd 070904527h

+dd 0be230c51h

+dd 078a60c17h

+dd 0b7e1ba21h

+dd 03ce75e66h

+dd 0f318af51h

+dd 099638638h

+dd 00e18dc56h

+dd 066964208h

+dd 072ae0006h

+dd 00cb9efb1h

+dd 02aea7e53h

+dd 0caede95ch

+dd 0245830e7h

+dd 036459d86h

+dd 0e0572404h

+dd 064fbdc77h

+dd 0b05274feh

+dd 056732ff8h

+dd 01e19e81fh

+dd 0e345671dh

+dd 076f5b524h

+dd 0dd448320h

+dd 0d0ef0740h

+dd 0ac550e46h

+dd 05e56018eh

+dd 042e36bb1h

+dd 057d1dc47h

+dd 0ec024cb4h

+dd 04d39561bh

+dd 015954622h

+dd 03ccc2c23h

+dd 0c66ae477h

+dd 040df93d5h

+dd 084a9e987h

+dd 0789c891fh

+dd 0ae1b4c61h

+dd 04141b9b6h

+dd 07c6580f5h

+dd 0873f3d47h

+dd 078d1f6bch

+dd 0c993c79dh

+dd 00c254c36h

+dd 0f906049dh

+dd 0cbd097d4h

+dd 04057caf8h

+dd 0d91b6d0fh

+dd 06be96f15h

+dd 0dac08e15h

+dd 0a63710a3h

+dd 0b76f217eh

+dd 0ef29db91h

+dd 0a3831cd5h

+dd 0a27a71efh

+dd 0a5ac19aah

+dd 0607b3872h

+dd 02187191ah

+dd 07ccf2fd9h

+dd 0daabd755h

+dd 0304c165ch

+dd 0197241cfh

+dd 0b8b1e8e2h

+dd 09f81381bh

+dd 09ad6b83dh

+dd 087365867h

+dd 066b9801ah

+dd 00a1693deh

+dd 0541e25ceh

+dd 0c2e9adbbh

+dd 0518d2033h

+dd 0f15e1c0eh

+dd 026075b17h

+dd 0e3f2d3adh

+dd 0a64392d5h

+dd 0ab6f67adh

+dd 008154991h

+dd 0066084f4h

+dd 0be71af6fh

+dd 056df4860h

+dd 09c9c1a15h

+dd 0697c0ceah

+dd 01a3c9434h

+dd 0d62965c6h

+dd 03f5fe5a7h

+dd 09afdaf74h

+dd 0cc17d920h

+dd 0c9022cf6h

+dd 0ebe3fdb5h

+dd 01157ee40h

+dd 0d70e1022h

+dd 0fce41be8h

+dd 0b9014483h

+dd 0f9119bedh

+dd 033ce23c2h

+dd 048357714h

+dd 0bc754db2h

+dd 0252b0cf7h

+dd 090c47be5h

+dd 0d2bfea99h

+dd 06a7c4a35h

+dd 030f10351h

+dd 004f9f786h

+dd 00e809abah

+dd 0f4aae824h

+dd 080c90827h

+dd 02d9b1592h

+dd 00cebc278h

+dd 02aa6a527h

+dd 09dd03431h

+dd 08d46e22ch

+dd 0e62dd894h

+dd 0c6675a82h

+dd 0f066d579h

+dd 019869406h

+dd 05f11bb58h

+dd 05014def3h

+dd 01bf25393h

+dd 03926d5a9h

+dd 000868ad7h

+dd 0e6c219ebh

+dd 040792f9fh

+dd 0ce382acah

+dd 049031196h

+dd 09f99e1d0h

+dd 010da299fh

+dd 0e20103fdh

+dd 0cb1ff4bah

+dd 054137653h

+dd 06ccbcae4h

+dd 01b225379h

+dd 0293f0143h

+dd 0077a7d0fh

+dd 0e6e0e7b6h

+dd 025a8c9b5h

+dd 067284ae4h

+dd 035cfc4f1h

+dd 0833ad665h

+dd 09bf4fb0bh

+dd 013b90783h

+dd 0c3a94a2ah

+dd 071b2756fh

+dd 028832cach

+dd 009514869h

+dd 05ad02897h

+dd 0ac973470h

+dd 0ec1e6f9fh

+dd 0fc71febbh

+dd 059a286f7h

+dd 0b448bbf7h

diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/MicrocodeUpdates.inf b/Silicon/Intel/Vlv2SocBinPkg/Microcode/MicrocodeUpdates.inf
new file mode 100644
index 0000000..e5b847d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/MicrocodeUpdates.inf
@@ -0,0 +1,51 @@
+#/*++
+#
+# Copyright (c) 2005  - 2015, Intel Corporation. All rights reserved
+#                                                                                  
+
+# This program and the accompanying materials are licensed and made available under
+
+# the terms and conditions of the BSD License that accompanies this distribution.  
+
+# The full text of the license may be found at                                     
+
+# http://opensource.org/licenses/bsd-license.php.                                  
+
+#                                                                                  
+
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,            
+
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.    
+
+#                                                                                  
+
+#
+#
+#  Module Name:
+#
+#    MicrocodeUpdates.inf
+#
+#  Abstract:
+#
+#    List all of the microcode updates that you want included at build time.
+#
+#--*/
+
+[defines]
+BASE_NAME            = MicrocodeUpdates
+FILE_GUID            = 1FAE4D78-CB33-4f73-8881-A1EA8F5EDFEF
+COMPONENT_TYPE       = Microcode 
+FFS_EXT              = .ffs
+MODULE_TYPE          = USER_DEFINED
+  
+[sources.common]
+M0F30679909.inc
+M0130673321.inc
+M0130678806.inc
+M023067221D.inc
+
+[includes.common]
+
+[libraries.common]
+
+[nmake.common]
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/Microcode/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/E7006X3.EFI b/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/E7006X3.EFI
new file mode 100644
index 0000000000000000000000000000000000000000..d3938f356d356523aba47f4e6dd6e282be1567cc
GIT binary patch
literal 341536
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/RtkUndiDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/RtkUndiDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7a7db48dd71db2722681baa580b404b27c742964
GIT binary patch
literal 78368
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/RtkUndiDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/RtkUndiDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c04e61981131f2ede519b89522b6a89639383223
GIT binary patch
literal 92064
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec b/Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec
new file mode 100644
index 0000000..4131517
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec
@@ -0,0 +1,36 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+# Package for support of ValleyView 2 SoC.

+#

+# This package supports IA32 family processors, with CPU DXE module, CPU PEIM, CPU S3 module,

+# SMM modules, related libraries, and corresponding definitions.

+#

+# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>

+#

+#    This software and associated documentation (if any) is furnished

+#    under a license and may only be used or copied in accordance

+#    with the terms of the license. Except as permitted by such

+#    license, no part of this software or documentation may be

+#    reproduced, stored in a retrieval system, or transmitted in any

+#    form or by any means without the express written consent of

+#    Intel Corporation.

+#

+##

+

+[Defines]

+  DEC_SPECIFICATION              = 0x00010005

+  PACKAGE_NAME                   = Vlv2SocBinPkg.dec

+  PACKAGE_GUID                   = 7dbe088f-2e1a-475c-b006-55632c2a5489

+  PACKAGE_VERSION                = 0.9

+

+[Includes]

+  Include

+

+[Ppis]

+  gPeiCachePpiGuid               = { 0xC153205A, 0xE898, 0x4C24, { 0x86, 0x89, 0xA4, 0xB4, 0xBC, 0xC5, 0xC8, 0xA2 }}

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c30e714ac67d96dba819948d823210b86558f550
GIT binary patch
literal 10624
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
a8BX0(d*<w$vwu$eoI`Uu=8T#cI{ytGA^$u8

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf
new file mode 100644
index 0000000..d34bf39
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    CpuPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for CPU module

+#

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = CpuPeim

+  FILE_GUID                  = 01359d99-9446-456d-ada4-50a711c03adb

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimInitializeCpu

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|CpuPeim.efi

+  PEI_DEPEX|CpuPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x27B0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiMasterBootModePpiGuid

+

+

+  gEfiSecPlatformInformationPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.depex
new file mode 100644
index 0000000..4db74a3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.depex
@@ -0,0 +1 @@
+�n�*��4A�V8T��
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c1154aecf2fb54d6856ae9df6c235c748b4b0a85
GIT binary patch
literal 98304
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.inf
new file mode 100644
index 0000000..79dd341
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.inf
@@ -0,0 +1,201 @@
+#/*++

+# This file contains an 'Intel Peripheral Driver' and uniquely

+# identified as "Intel Mobile Silicon Support Module" and is

+# licensed for Intel Mobile CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor. This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#--*/

+#/*++

+#

+# Copyright (c)  2005 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    MemoryInit.inf

+#

+#  Abstract:

+#

+#    Component description file for MemoryInit module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = MemoryInit

+  FILE_GUID                  = D4EE25EA-0B48-43ae-A016-4D6E8B6C43B3

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimMemoryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|MemoryInit.efi

+  PEI_DEPEX|MemoryInit.depex

+

+[PatchPcd.IA32]

+  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|0x00|0x17A30

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|0x01|0x16FF2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|0x01|0x16FF4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|0x01|0x16FF0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|0x01|0x17000

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0x00|0x17A32

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|0x01|0x17008

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|0x02|0x17009

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|0x03|0x16FF3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0x00|0x17A31

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|0x0b|0x16FF1

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|0x0b|0x16FF7

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|0x0c|0x17003

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|0x06|0x17002

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|0x06|0x16FF6

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|0x06|0x16FF5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|0x20|0x17001

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000046|0x17004

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x16FF8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+  gSeCUmaPpiGuid

+

+  gSeCfTPMPpiGuid

+

+  gVlvMmioPolicyPpiGuid

+

+  gPeiCapsulePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiGlobalVariableGuid

+

+  gEfiVlv2VariableGuid

+

+  gEfiMemoryConfigDataGuid

+

+

+  gEfiAcpiVariableGuid

+

+

+  gEfiPlatformInfoGuid

+

+  gEfiSetupVariableGuid

+

+  gEfiMemoryOverwriteControlDataGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/RamDebugLib/RamDebugLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+

+[Depex.IA32]

+#  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Fa$* /Oi /Od /DEFI_MEMORY_INIT /DSMM_SUPPORT  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D LPDDR2_SUPPORT=0 /D DDR3_SUPPORT=1 /D LPDDR3_SUPPORT=0 /D DEBUG_MODE=1 /D SEC_SUPPORT_FLAG /D FTPM_ENABLE /DDDR_DUAL_CHANNEL=1

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..769b1757675d2db405a68807c4c7742257fd642d
GIT binary patch
literal 15040
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
DfH~Uy

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.inf
new file mode 100644
index 0000000..ca923c9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.inf
@@ -0,0 +1,97 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchEarlyInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Early Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchEarlyInitPeim

+  FILE_GUID                  = D9F5B28C-9FF1-47D6-B503-3DC23BD345FF

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchEarlyInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PchEarlyInitPeim.efi

+  PEI_DEPEX|PchEarlyInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x640

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.depex
new file mode 100644
index 0000000..0e34453
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.depex
@@ -0,0 +1 @@
+sF4e��K���
a
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..57731f80d57939fa1036087575b0b2717db14453
GIT binary patch
literal 22976
zcmb_^3qVw5+W#45fJsLO6O&r1F~=735_7+T+=W6Nxe6kLFgOqb4KrR^t6>LHI8EAa
z-?weMmRq}<WxHD6uF9AOVc->AGqr5fE=$L7ZOjeH+x&m;IWvbDFZKQRTk3Gm``q5=
zdEV!F-pe^Mr<D4)f4cr{&i@>vC6l6Z1)?y4r>TfZqXlEB(`Jft-Nm6M2r2532#QLX
z#kFO)k?Z=Ot`d%pz(-$?476iz0lz7@fTFfUQdG=*io)Z6>}RIKy21fzAHzms7qOMx
zLw{rxWt(ZQu5?twN8>r$9|_z;=~5^vdnQLlSp*cdArG<w_v`5P%(PqU8>={*h(TSj
z?Rvu?FD=MdR7^YMG4v|Agf5WBdNS_t8?H5r48zTm_P@D57j~bCxbTO;==NUEs)_!q
z?SH%Q`zv&YTvAcqbAbCPR&;?`Oy|la?fXCtp5hCeK={Uj3PMv1aw49kxbOyAViq1?
z2OgX(4Z0_E?HPxL+Y1g|`FyB-7?k1sn>c=`Dn2tSj-v7li;8Wz2${MR`XgqelA`Ez
z{mv6GuB7B$3hwTpJkH^b5z^M*0Jc#eZTlte^q4L1AbtFIf5A<7kZI8dVP0R#hA0l)
z&(!f?7Shsv6ugXzhtfWJ0w;k!&Lr{RmVrM1AwSFF?iX=f^f4x$CxAwQE=YILOa#HC
z>xWVVB5CVO=wpb2qW^UhMNeo(6wMw{w3`QqD%!zA!xVj<2e%A-FrsJ-uV^z*u<I~%
z;8o3rs>KAysw(~wRcG*0ygti_s(0|<P*qQ<gLZ|fdWHwL4D26KRm`iphbIVE)dE%D
zBsf;pm>*H~=e!iJZ^4MFkMiJ9Rn<H+Ox0u_+%j-zL{$l|>fJm+xT*`Fs(|2FRb@Y-
z>Ty-jQC{C8BdT`s;80cDd1#obzvRKUh*UdI5U%PYP_>BQSXEPgMAhlM6tB-VqUr=5
z9IEQ4By+i}3{5JA2j3!A`*?zIRc%mp6TzkHJ1BXiS#<M!TEnw@eXbE5ALGHHIvROs
zm^(9g@GaaqnI{O>(FGl&36AKv5&5(p*+xp#f88YWKUD-B<n^r?(X@{ThibZxhlXkT
zA`iYrjIQJf!Zlq3O&1Xy>&<cIn49Zp<k`Kxbt5`X=E0#lo=prI6sF@455C2Sf5;Pr
z>$na&b`l)xP2|xJd2<~v#Or%uMAMZ#I8@U#9vY@;E)Tv%ahk>xglqZ&G?fw@t0~gx
zhcq2{Fz6<)Z^MYDhj?(PrZ4c&Fil_K!MBLe7M>tn(+$wnN^nHe)-GxL4{2)Vg?N1%
zM>L(ngF`hvH#2Bfn5M%#_!bd*oF@p^bR#s~L2zto68uPMdXAUk^=%nZ^>H2?s%kn9
z4O4Xv557g9PUi{2RowzrV+f8_6)TesNOyL||J6<Meqct>QC{En5mgWI;80ax;Gtf!
z_MtU_)yXjPGLLEbYGfuo6r4$qGf(maq@U=3)Wgt-sRF7_wyWHA_*yC5&)h~R`<cH_
zrzm&tHSc)RQ9pA5P2Bo$tBc-M8lWXafW8%=jUm;JBf{-Bgf?ndQGk{Z0oq2Ok&sOK
zTF=2A!)=!ZbY8(^o(Sj?LK_{RB}9N_5?Iu(+<?@D9P~i~4N9HO!G1zuqFvbmN(Bdv
zBv4^M=G`3Z{4~HKc4Y)8qdDkFKvhRTnTBpJpn+Q-Zo5)Ir#gbxryTHYa!c1&lrO?C
zFLda8BgLR__eS1^TWfFRDBRk5BS+)*bZ?{tx7EFoV{mKljU0<xM{lGQH`-RuE_9jh
zpOWQmPqA$c*M19aI*BZ4xnb+0T(^OMKE&wJbEn@=Q8lJ+Y3l$+GvD*_FL3J+7Hyp6
zxZkz`5^QL@n0g4Yoki38J$4qIK0Gl86EMcRB{nx8p0&?|&P!eM`<ZzUkS7;<-Ouct
zN^ma#*C&$8B0jm#d+%wGOb3Z)+wTGHUA+Ono4f*d0`brUsN|)v+2h~^07bAMin4H^
z1ps|RdJslQ#&e*0fIb08b%bmG3+)4FcL*gybeo-m@kv=DWL~?Uc&2=zs;i>s%qLLQ
zeOAJ55guVF=rc?kC}_=yuX+Q%V%HvlsJFPJ6q5__^b-kFh{5d{@;KKlf%8s!o(Ln}
z9h1hy!)&zh%-lyP=ZL+2|5d-cTg}`_P;<oOF&ZfM6Vs`Vr`N#;PLcfH!TTk$HEauT
zfpZjxk)#ZcMLWVdHqdr)G^&$*8S+@NdFB>Jtb)?5P63^n*gYT?UTDvi$8--!XweI9
zM&O97i>MeBs{FHCx|^u6l(3)CL6;i$X=#nA&mk|y_A1uvLpXTW2Jjk;a7pKerv()A
zDo6)KAc^rjs~3)?V2}T@@DTG5NYdT)@>r})mH~$ST3j7fH(bhO0|W1`V13I>n?ih#
zAXjxQM9}o)V`q8ZwvKcBlWJx(i>K$t?w}A(?(RqE4;UAT+_|x6Fdhi2Y3p%DZ;wVe
z4rcF)p}Ma1V)NQ{jfBlkpgSgZGjY<b`%HTrce*acG{^F2>DGzepT{wsAhNy5sq<So
zQ3rugzObi=J}=#xm1ME);czbCprY%^Bud)aiat2+s*bS!%`ap(kj2;-+8~g_c@_os
zZ2Pfi%ZXy<j$od+!m`0taXfHjs!$za?&HDkf%7b_yI&wYggv2{#}KJp)fMh%&J(w=
z5gAYks{EaYd3{t)V2`?=>E*#eC4R|6!jxFggWUsH!<2CI7$TWhf)s@7l~};TcKSrT
z67+}6EFKY5L&8IXYP58deL4JbJCAY?TnnfY!TMvEWG8F57xH;kKI6dwe{iChy*!-j
zb^i{ZI425mwdFd*A?67la)UZ<9_1bg4kgB>o(FrD2f+Pa$d6|7cucrDMjrmIuQlkM
zew+<V;t}p%5vOWDGl+Z$^KZbYfAMfHISUAq|9u1u;b9Z>dpv3vNiCLx69zN>z$3lB
zxPVeE-R#8P!J`5!N6{aX&qL{BA)=Tv9v(tn7hTGv^9a&Im}V%S0UN_*#qe;iFFstU
z?~t3ETSB^FcJa_~L47>j-FuW}5cbyzOPS3)oOBST)AKwkeDqfFa5lpOy|a$0<WYex
zn3;fBY?4$m?=T8kP~~um5AbXwDI0LTlt%?6eu9;a#g@WJJazBQC7vM5A8wocVW@&#
zJUl4Q!-{io;?~_lTszOUli11e9z^~$@ra<jBv#%=PF~6_<QaIjk+ZcaJS-^c+xv*6
zpKzkSyN8rwbHyUe+2uX+*~wax#=7-mpfDZDJeY9iW5%KAXqzjaqKf?%nR|Eq4zfgP
z>sl$d*b=~Cg8?q)kKnQ8qUohX;NH)S!q~WX$6(TmVGa#q_QGl8F24YrO(Mq~wnqr5
zfg@#|j_I~Uy450}Q$(Dj>mn9)e;zyf{g&<mEDJ205&OJXA%dAb34IWbwk9!zZ6LyC
zbHaW>Tr?s~%n2L)K4i6YXWSs^DhVM@QY<8$CXxy{N!cTkngndWbV_VcTuV1utaJ~=
z1{CXO{wFBuVoIDpnxY_0mJVrEoU}{CsUv#D1qHEsm4)dAX2v=qEyfRj6PFQbk8#r8
z43`!YCM`Ei8km`hBhqAkzm!PZK%_mzNh=SRCJU3cAWRyVnY}^BTuh1g3t8Px6KNh!
zT1>dKcutyokAOAR7b@-=xS7X;;)YV>PeHTz49NNoCu{fJAzrJYQ{<emn$hn|w{^92
zr|`lcTez?8iBjg1VDGLK_Y*tIh_u%^Y0IvYc0VtTRV^FRAXd1K8&mI93fesbc_nNV
zPyNpC-$^1Ku`ja}a&iCXp9JInFI*qDqmN+R+lT!AP~sMzcpFFjkN6Sd!yv}a;eEt6
z^6e-#709<Z+E-H2HndV!6zDIR7x5k^;uTJW?S%|Bckclni$S`#e9^*^9(T8l`4bG-
zi1Y0=u%@WE&QV@NAKP-<xjJV>4SihVKS!Ek{0=@xhdf7xJdYyJqB8tGwq-PVKHIT}
zdv@)0q1n;RqByenn~{C?6i0@47;L%O0+n|{D;NE3A!EhsC~i2|OsAjQLX8OkTK0h`
zg$1{VfLQ>S)67H|X*<BWfF5S<ge;5!Tc}#TA{z<k?KW{H0^zkt^s=8>O1uPTlbs43
zWqSwCF7jLCytCQDR>=JA&fwr~=lC?>gW$SJ3u@@Y@SXQ}&<uB*8o~>i-+?~p{GLMk
z?ELvfHu4${??}!wtw7RIo;g?8l4?7Qf{H$6v=1e<ZAjYoIz-W#SGYY=elfj(Td;VZ
zB}I$TlF%LYJWH~XGl`iDkmp&FPfQ%a`rLhL`cTUNbp_kNC;}<GGQT}@*poSIDVp!M
z$I^Kc*j_~XL8q|@t0_exCHxD#)?rI{U1e#f4Qex4oFD1JVfgAp1R8FC!mVPVt&25_
z*$f_Rczes~e=O>8pN(P1^(bfZCA=6~3w+3~kDf8I0eqjLMiE|iRt=0L<r+(oofT(v
zJN7<I68dBJf}Uqdwqr*a&wPww=ydt9Z<*Zfd6ohgX-oEsOcyYIhkQDHoZgQuDDyQ*
z5{F!kL2Dawn1<4$gpLWGIWbtDMM7{L#zR!f*kNbk{Q2}TxTkq68Da@bIl7PqmER5{
zRYRUf#VS9YNx6r`j{Drh!Y3!%);)xndgeB0vn~t%x`T}WV3bGHC*9OL+x@=C?HAb(
z(lA3s-qppVw5CToMtSBr(EZcUl>QJM-Z=ql^RARup`!`&LmVt|cbVxuFeirj8A%HG
zqsF}_Lb}ZdwsnB0_PW0pH{VN`Aa7!8#+`zW+11jmUCv19ragl~>Hq9mGrKy~{k_P3
zjO}6tx*%d&2Cl+skn#|b(v>nKjBwmeWQ_65d)!Nwu*?#e;9ez{Q;s;+1-HXN%u)d1
zH0&S_gK;Q5QUISOI@LBGM%tFb&i{9iK&TUX<`tAOD@ds4%BQQ2q<Pw95fEDgNDDkG
z0(X?qsj$VuUmRzBkaLcslu70|<3a0!BHj8r49`>m1I8xS7}DiPW<A)k089igFqXlw
zwp<Q!4<J~u>}N!<nH-@!!oj21UV@wC7%X_`kLhkWS>(R#m$vqhq+lblu!#0?Yj`du
z2Pka4i{Y~miE0=Wj!e3Bm|Ib@RNY^R>EkW?d{lZA^Cv>birPt*^(-FSNGA^tUr0YW
z0{<XLTgSs%4nbz<DjJ)bTwwDN<gvE1oNW)Vrp9o_m5{>Y{&JXPBGViTT@Et`$jyfY
znB*xEGba)FtzFJ>(rrZ%!eh+l0MhwI+mLgDZ3Sd{A4Vu}A)QYA=I)Ji-nIjwLv?&G
z7}Zf8(NQF17D5f23DC@Z>DK-83vJ@rWJt=3nBPDk%8UD|XqDD=Il?){mIzc4;|9E>
z#C2H&h=qkb#zJgOY@-^D9Vw`agE6*sEF_OWC_sW$!b?3Bw##BtNqJ#?jcsc>w>J+g
z^zY|U+&FUYkiVJ8GZ0zaL2Y2mHq3k*f`ta5jK@b%=qYqWn0J6Gwrv3eBJ!p2Y}mQ4
zMyy&wkME>X5&Y|}VwTAlb>2rBZnh!rq_B`+maz><=Y6D6%Qj*<DXgWKGPV)hc^_%a
zV;gau6ec((jcvqt-bWf5G%B!wU$l@EV9Yng+<7GZEvGzAB*#)isgXEB^UNa&EQPWj
za+t<=F|udkk(};oxdiX?J&iH+L8c$jwl3#Ao(d6?=rOc5MmSL}fjWvtZ-#t4HFz&t
ze?W^6`9Ss%p1BGfO9%vYQKf*!BP?C3K<^w~7vY&JD`iFjf=a{O1^UiUF}gLQyU~_z
zJIqWc;^wVl=Hl+&Bf%r$b}<2Ndxqp@Kci+b0=gfF96Sfcol4;c>I4XxnIkBlAUq_-
z^Qh2~{RB#d$hs~hPVrdxSN$B@p?>rec)fg_*~Jrh(O+0#yh>23<O!Z_>`Q@u<}m=s
z`E(ky22Y-CB6uH`m7-A>L5|%CfoGeT1E&Y5nT0Ggg@evO!+rWR>xMKI5r;)Icw^C+
zvKn(g-S6HL4JXN2Y&?e@g16nLFA$s%I5BYS*wFhOqsjLt%q9>Fj%9w1_=SoGnE|vH
zEo3%d<^l}I-kg&Ht|PuiiP=F8l#8)(-3D@w;9Xx=WoRa%V!g;C!%E^}9vpr&1aUSV
z)iU7spW;61Xo2G`_-q8lIGe|NoFivMU6s+yOddmX^)zt0bH@lg@c9YOzj+vI6{_?h
znBUFBSZoK_bY4`*9FztP3qND%1!d6Sf`Gw7a_00W9^okuoH^}hmh-@HQ;~;H@F-&H
z*CVEmqJ;Zl>LMQRX&y1P0H&t%m~hpm@$lejKtD5)hjFIvXTHR$hBeg(Qwy1YV0Py0
z*+Hh>kYUDfd<5E{u_>X(cJYV+!%>oh?L0KxT1Z;Uquc|RSsr))X#QJ`$9Qb`tGg6f
zTgc<W2R3O0&JXNV9>#UiE5ecdg>mHgV|q5R_TreJLE*xDpa~kf@%k|SfJd@YA#wu`
zxxvss@~D=6ADj~69}Mam9vg1xMi^Sp<HB_-7=iPKrtq+k1I|$ZT5Q>@p<{1hXf)6G
zu5ZirhJGCr^g__kZ9L=#Lw5qzGBAtmq}Z95U*52x@G{RBZs-;m>gI9bhCVt1=M639
zVIhW20?=Yx#Tq(A64W_d*gZVsyFS<Th6;FO(9nK9-ET1TD35XvY-Z`*{W3muxANF<
zLtQZRMIINf+s{YfyrB&|EW}VffEL?!)==~4prP*F*@37c)fma8<ayuqZNJ{u2|O}r
z>*svR-(V}lqul)wflkPHB6JV(sBlBK!_c>QT)3gX9)a_Qw(+o#IynzOi|s6HX#S|6
zq2c8%muGy}M+K~8E3b-2a2D=o@GdTp&fylK>_+h@GOdWX{A3I6Sw3Y#3oZroj_{ap
zjl4X3q~QLMhXs{s281oRq8w6!9N0FxcgK+zWs4T#K%|(ygx92zP-`eNN=ToOwth~g
zZZ@Y>M~Xt%B}@)4-0PFP9y;4HGkH|VurU`&cKC2MAi_%AV$(wd8-~-xoD-Az9^2zI
zoI$ke$rkYEkYIXGy813OY)w4nZcqlb35aGFTs!&1yFr&%cvPq^kMhtP2IVmxg}D$b
zj}SIQUOtZvk37li(Tonb&NZ0im;#<Ee2^ya@DV*x!msh^6w(>fN1%IJJ|q5`Z?SFU
zy|62q9ks!6Hin120a!^1)B3I7Pn;To7r10GD`7Sug6l?k$qte<pF<OG^Ih0rQ7IcJ
zW<J_BN*n`VObdXQQA3$}mMDX?yU1uvXNhE#%d@tC054)S#LOl{+v-W1a{2sqiCF)s
z0CQv8by?tuX*=nVcqv3b;Dfgj+BGaKMMVPg5g>l8P4W=CV>uf|@Qwifnr)PX!Xlgb
z5=00KB2LtH(kUgDjblHq*au9BXKij9dWU7FnBM_V2P0Mx8UA~r^lN~0tgc2IyAHgm
zrqD;-snT8+<Y(3Z?OD43jvzQ{9Jq+-j{&@cIMB295#UhJ9wda@PIH7Q6eaM!d-d8i
zXqN><3F)0QCb8mtpaSF@KQj((oC=f|*BCPIcgk&vFqEk8Vu&6%6!5GS6Jm-IQ_KN`
z_27NBM|he~B138X{)>L53pAd!SHJ_EeuD-MH{w)BY-S(j??_FRe=iZNNlooYO_TRY
zL~ByhI#M%wQ#00fq-M&8B)w}=GdohVB+@mhS)R2i@Cma9B1-V)<;?5<!s;5??>>tU
zz~v&cXD1s5`fCfCa{9c*Qy`DSq1$Av{Yy$Z=0>Sbc6`?Hf$K|=L)_6V7n&oS5pN4x
zzjTapeI|5$FF-58P$rL+ww@8d-b?s$;AK2`Rv(7>?3q$La~7Rrhd17{mQCNkvrTF1
zcF>VCD*8g3-!YAr{FQo`{X}~w@EZk=*Z`z1rtYfnU@7xHiTNzkMf->Jh4wOe46Zm@
zvOd5>47?3zCF!P9%g%Jh{1oGHlGy=Z))1gEj!5^lQT9FXVtid!DN_kqY`5`&PHYr)
zjpF)Q1YA}L`uP%e$(Bu|B|AwUArvN}2{e!8Mfiea$%(j&7l95F>aKAcf>P#d1OwEL
zCF;``&^6)19$-J{N1uRg%LWN5sQwjz$qSqm)&!g!#lno?QT8tQ3yQA~^cqzB_mG}m
zVmf92Qgy`hSA-5lzE&zHiEyp7g6>DrN4B1^0^qt7;WT^JegYb1E_!jF7I1@O0V%T(
z6rQ#0VoJdxXL;6=;j|FfB?HNR`$2^D<kKG^f;>A;15JO6xS_yM7gbUhF}ZuuwD%n{
zT(P*sePs5d2Jh&L!kA#&*B3R4+@t!UP$a4Lv0!~4l5x;@Ixdx*cTRB+$2j8L!*S$@
z68t2QsKGnkGD<Zxcn1NtCk&1v_dW_GlWG^!=OM%evW+t0HAggP>t+pt6@f<8J+%P(
zduU=7&I^%pMRnIaG;u*GQ;Q~N6cR%MquLAP?18Mb^>q-yM3o<hvF&8cFXDGh;86Cb
z?rY-a(39EOC<NRw)+$V;?8$7ebW>jzIhnmCLI9@6k;7SH;Jxl)(G#P(PYYH5lx})|
zFvcT#A74}XRePnIy2*(&P2&5whwg#`%swdSq4(esUtsJ+13Ty#4}AatGMS^ooFOk7
z*spPL(D)IicJ?r}(X;wX(BO!XJKn7%teBO_Yf)9#P=-(-AV;{p<OsJn1sd50J)0TQ
z%|S*(XouZjNr%!w6(#k4gO7%!-iz$PE+$7U@a6PD`uL&>^eZ}ZKiU;|1=O||hkCz9
zWP88G7<1leAmt>#qf9Oio)>X*U*86t7Gc=-VhAxeA97t5IK^anL|F!-$nMm?89f~U
zwn)0Q$AVYGch^z2cOV=mU%v+#US*Kae#onjB4!+7%TstI&q9m+^AmT)A#L$4t83+b
zq3?|wz{S0EP?7_XqwoY~9lQr2CCZi!o;npl>>%YS^GXT(qM?ZX7H5^?ZI2LiUTG&0
z&HNe^CG0nMgOVEf&T+eRTULb7C*2l>kMNvl$!l)BsOV`qOR~rPj+~S~3Q|@PDH)}m
zFAypDM9S~B=fOn!FDyx0ue5axpm-(oj+_i19Q1cM*R!Cu<uVZ^U40h63)^ubi#O&g
ziaidzqR2<&cSM(Xo{<wIKH+VB4fi_HBJ&h!+jDqS9+}<#j+_i`N3?mS<6H9#$2s#f
z$Jb_=W5AraN@O-X`KdYA5o@k@#F!s&#t07zzoS#Hv}auz?0s7>_?~MP<rL2w5z*vm
zHZO2AnpZd;HCH>9n4OL)bF(APoDUI|5V6D|F*_V$bCpA6wmV0Sh{H^?!sJ_?HM=7k
zYPOYOl=A_L!}J&_wAeP}Lv8Y(u!OlEBab?R2rF;dO-%1;J>vK)EpT^>-M!-Wtl_~o
zZ9aI>`vGvAKaqDxyn`)gNpfI*Ls|H`xRd-_Gx#fpc^(q!e$N6S(?On|k)H;cXN7?I
z8JeDlWnPkGo+g1ulq}q1+P7@7yGy1zX?kzjU7p!8(|gUMJ@(UhO_VV0;^4!op?8Uo
zvq&2YAXA;d8<z|2T)Cck7{lR7zl!j4#8|wfdw>m$8sHK<DZTNatc$=WV3Sx-hFmS|
zL17<5GMnC0%#0#nVW04FZ;GG7NqP+ZJgY0cr-(U+XejB;Nc2<QX!y*NB@_0M2|NxN
zGJk$2l5HI`h~IGC0a71Yb`xjx6cyK?NPo{r5L`F{r4Loqj6PO=<~}sxCgwZP5ODwY
z@3EY$nS8kXOf*3SxQ+$ThiWDts~L>~Sy6uGE5MM^L}(O9NB2S|4L-7x55UiXWO5K5
zF#;#z2z+z~BoUqg08qMydIXLMHa)!KZ3Cn;8&Awktkz0u=nrcCiBn(fUFeUBU`hz-
zt30VNNJ{tCe1p=!io`oOTPqRS&C{L4K{gTj&j1PO^#CFH6(M<^^tzoR5#HD*OSp|E
zT+0%+t7?$$Aw8ZZ;*RrF<hZ?r7INwn?TJ<_%|)IjlhCxQI5}i-cAohFff;=FDBZ?*
z=7^aDqzpZ*I#SzP1BbSJg(g*3T}~hJR0u8(2~W@$y3fV6d_lk{TO!j(%kCy@=iwT%
z#~^Uiq2@?LRpeay`@xg!hLGE8v30qlMND3CZtco;506<sRl3#ng%K-wd0QWDs;(Za
zb$jX}7WC8!afxt6;)=p0UeL4dHPF0)>(98}#<dlf7uPOaSWpWhB7{PbC^9lC3PXdc
zj@s%T7C6Saha(&kyybL6Z$}Qh1|MKj5yIrP6S+{*@w+JB;-9~O-s9dK*K!8f4HrN9
z$==D`+zfzsP%URAfaVv`&N%wxV)}_#%%qYwzmvR+onp(L15J*=V}oPaH&1Iw`xx4t
z!(_PkV*gjta_uYt%i?T%fV4qj7h}Ezc*%B5?XJQ3bYV;l3d!wtu?uR*8`HKU&PXr$
zSDHxbSf(4iNaAtmZcGtoZ!G^<E6Dd85+o?jc~7(D4a@p#7!6F^n7+uH6zF_@2Q?RG
z+feOxTOyvkMpB{nGYX=Y%0C$2;!jDFQuf<z*#w)$VaF3})@)ZY<vd0Aao@l?<YLqL
z<zul7k_dZEd+ei4=k23CqH!i)vuKN;yhn+dsi<wQ<DRx7j=NM{dV%8(kKJ$TZN4qV
zWfoJ;?=W$_SB_x@8GRlK#oPWux{Sx_uG57lW<BxAcKF&=-a~c}#L4ltqlD;go@fP6
zG`OtJR*GqCHA2tyo;}{?Ba{#Flyg~1R5jONZhi{gZz*Q9AniEe-YsrD>6mB}&jY=h
zr@x2Lx1L;xSivEaYj7f&N*t1D*VaU3b%=C$**Mf2g-FGRAKX_Fo;mnP1A{|nUZR_>
zz@qWCYKW{$EbVmR&K&$60s~(aaD@v?fYD&UV&V`p1rMINV&)R!A<yEOCuYV2LY571
zIJ;y-s&;O{$kLaX4?#p9!U{5$KEaULq;oqEXvfe#W;@#8N94rOUo&r@W%?AciuIlW
z@#7q80KzFYeeJ|J4Mr&0qZ$MWPHV7kl(_f%$$Zu`t=BULuZS<1_AI-@c9htmFYS!6
zz>Y{_2awZFnf5OmZz}+-&Je(z83xXD(J7*P2S*nc7cql9fe6HgaDKZ)j+NVZ+Zw_$
zrL=Pc5x14F&?321AT9}n!UUU)l(jBm*il0B3zjB|E)oT!B|vhLCuw9!@b7^!xk=ii
z+6gJUWGnvdf=k`ZZSM|CC`vAX*D|j#4`Xa;A3ogKo-$0izQMag<{z+1x(y%y9H)D~
zaXoQ`atJRE3NGP$qHcD1hK}%Ksj}rX)H*EI+NHtgoCb&0Zg)00WC>GcGi3RWO1lG#
zQl9oYd}c#6u#l6Ff2d7lg>hNxt(DDIS#_hVq0u3;HdHRIx5_FTR?6~I3sPlGjdq7@
zv9+erZsh<OSp~9M$f&KXuYJ7IQQO!6)&}cLw*N%vP-QGz-e`ZcY-z)CWm!@EGG&H!
zS#6ay&svk-SZ%dDx}>bAvcBHBvZ&U&T$$fkRhHlAblB4Coy{<+EMRRJ%nd#h%V$>I
zpg(67YuB9G=BgX*s<MT_L+EoFQ=4jU<ly`ljtg?JIHF0Wt*X{iU!PvH1YXQv38j~&
zH#XGNE^*pfZ_G#@p~&Q%nIubGF=d5}8-p8U<W=O%%g?IFw=77jNY7TJ7v$y2MmTQX
zZzzvtUS2_ZL2hCw6TJ9?{RDUv{|1lp|BGi1Gz(z}j4m5H*03nVM@*^t`I&hI6`5H%
z6`6T?^YUZ~2yBP58T?c1Q`z{MbOUlKl|YQGuXG?pms%R@YpYgTnrdex=Qq`+k+{BJ
zmQa{8w?L(wDoc1WaYYvS$xKX~I#regFC$)W!Eaew^?%~esbBnm;<pqc$%urT8K4g_
z;1>GlG~TNF^u!SETiQRT$+q$q62KoK;THYpRV}W(sq@i2@BCZvrdEXyo<hqF9_cqL
zOaG(%vzuzetPk>MWrg&8V=QvHp3~6mK!FON5labEX9O#3Fen<V*6L=NqY;%+)?{y7
zVy|4f)LM<ISsf^#)xnx+v)Ti-F(Jr232`@7c0a~76v9O&f^#Zj@+LZ<&U5-fvBKuX
zH<Y{oY~2m?fU-;KZfJk366uXgmo_$pf`c9cz0={SZCE19%udh2OaUilsASogT1Ykr
zd=aEs@dGr0nTV59ZC&hKGK#9MZDyw@R(1e(qb{7EvKtrA%&S~3gS!(FmNnK^%O02t
z$Nz`?#Pv$1D0qQuz*&X)X-Z3WiOg<Yl0a(yR3lsZ+1iDfqNxdvF%rad+2Y1Zdv$F!
z+mdBfE)G17qSBPIM!PIcIZc*7FI|S|HLY@GedVK8SzeKa2)Y5Em6ew<Q)bCi%v9eL
zPx!6K<&~U-v_w|EB2;_`nzf;V7(tAwNS`;yk~W*w62j9n=CY`~3QKx+1>4Ha1<l-o
zym`3+q8n+7(&ts=7o?)Lr>ExTq~)a+<jk8JfLP|CI0wa3=~dPC`kIQW&<Qn&v|Fte
zP1eds;lhf_rA^^P6-d2`>e|XB4UNr?+A3LqiSRVm)HGWiAh+ACRb;*LgPhI5?kK{$
zY)NIslFHg2VVN1mQ(aj_dT`hq>v_bDJ}FdGSmqUH<`Fj(WL9KgVw;;o{KCshPcM{Z
z<P=q~3xZ{p^-im7Mlu&WRrU&Jv#p}4{?UqNYrSl7twUDZ9E`NAMthZ2rbtYjgVI#H
zw9>v(R)s&P^QdgO&DtPaKr)U?t!ffnsfiD!D%kieY{DPtK@t0R`<;sgB+4SGidDAC
zh9y>6xSFIB41_Efy~wh1GGysCE40esQkplLLOw0P8Y{PHX}+_GU491CoiQVsAm+%H
za@C!%U}1YBeL!S&kRhBtAt7zvyxh#xxl<DoladruNxfxrm@MKZC56?B;L6TQ)^r)9
z2C<8lG-HM_OO`ODTE_m5vO?B(<QI%QjSVb58s~ppXs^Sy0oN8>UAPY83R@@7;a0}E
zwTtZ-FtYkZ`9iCVyOBD~J~caTsAqt)#rFmTG(apYt-O(i)h(=lvSX;v!Zc<jYxg;g
z)y{f$sUD(G#tJLz0f6$XWL!u+cQ%tneOVAe^h`+4PR-M!*pk&lZf&z;PNn@(t6gSJ
zl5y(fJM73|Y9X{(Btt!O*3<xfeVN9(jBGvbmni}(wJ?3J^B3tVrxBXL4hV0qttw-i
zbDFD&O1v!9|3MaOTWWQ+-P+t7q861f0t<@2(ZA65rcS-ylVr$m0waA-N=V3D;jlJT
zTdOm$k0Z<1&{*YG6rmLPwU1kgTd`as3SG~Cox^XzPZr4>KR4X6DvY-be;JHbL`MFm
z7pXmt#zt9vr5#DnEsE@HgjlO5jrzej=R#z085a`lP*L3Tjq#9cZCK*4$;`5fC6=n{
zimcid*6LJ8nzOdPx&nYXl`CqOI+vz4SJl>XA~=TsUH_Fe)=(W1GOU<J8o2H4^^PL(
zggq;%vNu6dEHAW?CCfM}=)tY&u)l4ntk38Bn%fxEcHT0py}q(Z7TWK08Bqd)rpx%0
z;sj0~5iFaA{J@&aTAOdRlWlhM^*a5a{ULk>WMO4##DdLgCy7+;AXO+RH57|sN(c<b
z43eElY%F%zjTL@joyu;w=1vXqA(!K982+F>Bp&8imp0m0a#aRnQkLG>v=Xpldu3CT
z)y~Dp|Ehn^S$x;9=q6R>hwE@KJ{Rb<dDhBmB7#-m$7&Ht<3fye?UDv-HK#IL6R!V-
zlSb+-T-Ecri{RH6#VsOtoE=fIxZ-dMOD^&g#Err8Be<pmPOiNCjQkfXC;VZ;nzGEz
z-+l0}m4Z2oaFiGBYc^Hb6Pbd=^$zY-h8)LaWTq9)t|-b^CMq;5^xCqVRMmg(;D(bP
zc9hdpy%?%dI2NT;<RRo|HjWD(fm8kpSn%%;lE14s#T;nMmo^Y`^5RK;J79soJxKhQ
z0E4-<{PD*huU@<abmRn^{Jp{8-yS5q*Z=HnEm1`>FQ#lCKJsLL#l=4Yf11$rM(SNM
z++8^4{3pJ6$Fr*o&juXL#^8A!p2?5kTM;!b1>b4BD5CC8p(3uo6a0h}N*uUH;{Z79
zM{tSb7vSGmfi5ZxiAF%4kiY+er4t0(0lAT+9n>TA-khbLVEy3phug--{^~$<<=tXa
z=bN9Dt$pa1N29(-I~6xG>lbrh%>VGiajQS4qNZl{bfzA7;GVkAld?DWZ7AxQEB;wh
z_4C6yyZ@H<?8dg8Cwdot+8jBpYwk3~L$BWTe9_M=8PmV2n|$@T=-t_Gzch8{xz9H0
zS*Kk0%YiYNtSVA1Qq`#(sutDLs$Z#IR{dGksXC-OuJWs*)Z^86s~=E5s7_I5tBci(
z)hpCLSHGctOTA0INByDtWA&i=f;vJoMl)G6LsO_J)6{C3H7-q?=D#&BY5t_yuIbm{
zPYY_JwXxcJw9~YS+Ei_hc7e7^yHe}cZqmN3eOJ3zdrW&$dsh1|txz{sC)dr?&C?a>
zs&q?rkL#Y&t<$}rdrkMYZjbJW?t2}jAETeBm+PnMjruhGe0`bTu3x2Jum8RNE&UGt
z9{oZ6r}_c?cY4Zjhe2kTZJ29VXs{aWhUJDehINLQ4R08_4Eqe{4a0^=qtqC0oMcoQ
zjm8{ffw9i$F#g8)igB~C)7Wd=Z~VmgrSXFCnlaXNk15ME$5d*nHa%uqW?F4pYkJA_
zy6IihUekHguqo0kHOHGLnU&@wbFR7AywtqhEJ=<}o|-%}xjcDk^73T)tgKmuvr1>#
zW-XmX0`vv={I<lgiLWHSo2XFCQ7ln3DBKEKv0m{9#oG$6Vz1(FiZ2xZR9sRBlw*}~
z$|=eRlse@s<y>Wv(x$X4pHe=p{H1ce@=fJi%3aD{<wwfTloym&m7`SSRQIWVsxqlk
zRC82?Dx0cF^^|J0>es3bs<%`-RQps%RHsw}s*5UtdaOE5JyoqzXQ?gfN_CBTx%x@<
zTJ`hljq116J?eexlj?t{ht!wV63uvxTr*u`)?{glHRYN{%}Py&X07J8n%6a3G~Js0
znol&JY0habYa+DcwRf>2oTPn7J72q4Td)0@)}{4mU)25%<J_t3)$Z4x&|c7v)!l_r
zR_V%ht1!BobbECl>%P;)VNBEYl^D<G^qciv`cwL=`mu%?hKCJ{3@Z&UVC4D?1BR=H
zJB-te3ye=<tTr1Lo1CV{O;4MiGp#qhVtU)uV>)aaG+i}`%`?oi%@yXAX1Dn(^N{(P
z`JN<W(!)uXq@tvSNwrB0Npg&id{+6a^|Ln5>YH_87AYbpFfI{^cO@nyCMRYm7ABS@
zE=_bKwj@52_-f+CM1dkv@vvf%qE6vdtWvC2tX2G4@rL3riuV=!6ekq}itiOdWvucZ
z<%7yjWtZ|5)tjoFsy@{T)!$X;RNt#4>R9y*wN5==6Q@yYk~Q-+3pF-Plg6!iR`aT6
zlV+!8x8_6m@(g@=O*01BGDZ8KHd&jc&DSo}HXvJ`)&943qjs~lOWUVCs{KfNM*E%C
zuf1ItubZYz)TQcjbY;3~WK65>zjf<%f7bm~_nxj#cU<>{?rYs;U8Fuvf4BYty;7g4
zx9F?%OZ89bpVt3M|B`-_{(s=@1Nsm2U+T~41%@cYc*9Q&YJ<s;YbY|<42=etVYT6T
z!*30*8~$o|$8gYa-0-#G8^aZY$T-n>uTf*1Wt@)@sWmnkpD?x=e_?#d_($YWkMWrC
zq>(ZDj6&0B<WPdiXi7EZnMzDGrUui`kVns&UPc~mH|;d-GaWJg!{jshP0{8%%`&sX
ztT$(xA2OGk*O;F(zhZvVywm)i`4e+g(j7^6C(TUKC*>r~O{z#*lJs~|Tha?juO#hC
zdOzt{(&?msCViVENtPvlmb`D)Im|^A4wA_`FiLT|LZeuYG4m?ERU|5RsrIN2sE?`7
zsL!dVYAmQ*k7`=kkvO9{ueqX$*6HBWGTm<7N!>Y}1l2@mNHtU#Y7IX(JY(1dPyEer
z((s+ZZ)h<-ZTzkARbwA&#v$Ve#^bR1l(7=E;%BhXYZ@>`m?h>1%<Ijs!G;6ovxvv|
zr2CT^la?oSC4H2nOP-aSpS&>n>EvgVHzvQGyg&KFWaw+*))-yN-O2;X!^#s%Vnq1Q
F{{wI`;Cui8

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.inf
new file mode 100644
index 0000000..1a508fc
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.inf
@@ -0,0 +1,150 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2016 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitPeim

+  FILE_GUID                  = FD236AE7-0791-48c4-B29E-29BDEEE1A838

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchInitPpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitPeim.efi

+  PEI_DEPEX|PchInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x52B0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x52B8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## CONSUMES

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  ## CONSUMES

+  gPchPlatformPolicyPpiGuid

+

+  gEfiPeiStallPpiGuid

+

+  gPchPeiInitPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## HOB

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPchPlatformPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.depex
new file mode 100644
index 0000000..028e7ac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.depex
@@ -0,0 +1 @@
+5�c�2�I������l�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e97b8aa92af9e2fe4af36a2b85ce205613769e9e
GIT binary patch
literal 7616
zcmb_h3sh5Ax;`OMB197vl~(K=$7rEi2MJhgf`&(;-hxKLLj<9b1QO)6k`qLiwxIzf
z9Mjvm%XMe9tM{(9_ud)XX>YwVtrf=FC@iE;TRYR*;ZEyx`ZzR{YHcx9Ywq`-1Bj2A
z>6+Wa+Sz;m@BRP({`WqIf-THH{Dl5t&L5A_Vq%zlnc_NuXPKCV@v<3ANW(Bs#7U?*
za)!A-hGE#*(ws#{?ZzjxK%ygf{Ef)5ImG_p=WG(gyaDRa?F>`&gSq}b;d0K=%7N?^
z7(?r#wNgL%VHw7`+-<jUHik)_Cav8#)=#E0GR(T=5*bqu#Qm_@H`b$@c#I4)u-xsa
zZ>pBoL~A<>EcKHgBg5p3&r3>qPOIT}YgK%aHX)cdH@fPoN3km6Q3c-de=I*f6m#Lf
z!m)w=;O=?R?*s2#_|GeRo>o;=+53j{l&%PYS;^;XRe{$)4W7~qzXstmo2!VX6yzjc
zq`2@5W=au0#tu9<MH;9lx<KBkNTBG{m5)aQ5l~*w|7(dKrYeU#SVA#B%$rmtrBQE!
z|LlXWFpQFkdNuNp#hHmbDiz*QG7N80`uh^vT0d#_G;HH$JKKS&+pwkk3G~8Zq+eOo
z%ksquQEw7opow}Dqh6Izk5D-yB!fRE@Q~u~OXT~jD!2ApOP!hoNHFq$6x=|Rl?mCT
zCDIY~&UdB)<%D5Ap+v+TK{$Owlwidr{QLatLLY{Fh7S>WvK>Ed{mdaX6WyT-ZeWFH
zVN91<p^|l)6<ubdO4(^PqSt;$5To#@jA3f{w^h**;TaXf1UG6nS$IvfFwx(qIz~EQ
zu7LKA(9WM&ic5s|Vqu97fS!ZENvpjF*7*B0e0*@N!D5YW(w3EtlmBXh{J$s2l@hu0
zfVf_v9VBICmAcT@s`6fV-v3EtleL8ZS~pl4d_Z|}D*3n68rY!VWme~YEN)ZO!ou}X
zk!*32ZIWjUkOPx@-WyjWnkhU+4&!5k8<zDP1vAeC%&MR{>7-eMt>ZgsPG|-+U`{;A
z+<{tg(#$?Jg*vU&B~vG?nhHjBXXUz+W&<m78J`8$Nps$Ipu4h_oqLC&mCsgHb^iM|
z7zOs8!*69d|LNA=66^$3+XH=Kp3D>Tq(=##OTN2Is}IZl{e8$-CI6mq>1s5p3sv?W
zfi=Efe)_eT9%m8L5+Mif<If#A8)cY9=k(_|MaQUjw(|vYX4aN&0ln}`63X{i_WFle
zYcXH1O@}l2OM!eX8`!N)?yS(x>WFf4{ZSb=v*Sx{>Z%H@!5e!7$>|F(7CNKRC=z10
zGfzAFpwX*7DC6b{9tnsnIWh}mRa?vbeQd8#A%VL<IufYRCY4~6t~-sjXk$V-P&7O4
zL}$Ks9%Lo(7Xq9%5wJP_XuNu#4L*o!U)H1CUL7EOW|1~i-O&i}F<SeO1LYlpj1snM
z8p&Bz%=AN-V*Y5Lm}&bA-uDeH00%a(u`5w{6VCI8roj5H-jS>M+63L{91wy_{m={u
z^~Mpma%dFMY1_jv;8gEBg9+*OP80Q#kwld^GynvRRCO_%SDBcAiJ3n-rt@i_t`3Mu
zacLaXSIUF}=nq<^LV4F6f>E4I!6baFYbzt9PByN~#OO|wg*o7#OM((aD<6hQ{yhw<
z-q()Np%`H2gf|dg6Mj^rsGp$Nh7k#V|NBX+hTw6DN#R$HQA}w?9i!^b1b6`Pnd957
z&6IhkV*6vF8x(#4{-9+#p+<x*aS}7^k51#JAW+^+^<h{T$kQfMfIC9mok%Dne}Rv5
zB`p`qMe<lI(yYJe{t~&Kh;q9OBnDxPh*Lmr!iYbr@M^FySxcO7rwE@KRtgKmksK8B
zMg)yGiNR#H!Z@NEBz3~&D^fBZeAxTby0|i7KW)W4ZITfNC1pLaSH`#pk5NVrt;A9f
zD%2gbsaJA^LP%mgq#O}ml!juB!_Xg6Aw>?!Mo8klB(X@#<^=HLza&>blnFzQVGH?&
zK8A-y7Y?1l2x+i1qHcc@L+U?A4p5Kt0X^5~|4PP{;YZ#693V94cnYLKrl^sUa@ZhK
zKeQJ}_2G#6u!)hM^heko2e21!gX4_C3{VCwvBRATU9SEk_gCc2z#e9(oWz{JEPCRQ
zZ)E5`n*SN|pk>N1WUbo6coe^tg%`DlxSx<DJ}jIN(IjiRN&l53i=qN~?StxeszArY
z?Q<3O2nR&!sl$AQ*4UXV6WYgwcglx8q{Sd`>b+F)`OB-eGU~mr5>wTf3fiQd3N>HA
z1hcQ|Bi=;8Bw}KQyUqyrN<-i4Y<NL1I|}rCVaYZ0{4w-jK0*p17vnLf*!V_x6SGbq
z@!W;Aj9!wGpgq(&gF?0smBHly-tPVsKeQ;dKZ2O8)$hSRcc3JNmkB4pL+%lclZEFC
z|04oa!&;g8@VSd0&L8!EmeAHuVHW;Xl27TuOH{}W!H1zgG#%EYg+@?KhhkwHA3cD4
zc^K^o+Cj7tw71bxASw^-pV6Apo<}>3hO5xm{CE6Y!Xo&r(88Y*vM>m4Pzp#}0D>Ep
z!cvUr1U-oxPziq?6@88~Zw?OG5D?uJ7zw8lurhusU!u5yWN?Dyd65KHA*8b^Ff~A=
zI8ZkUr{S+)@s&d7W>D}-OLS8{PD&i03SB5H=S^4WoN60>o2)phrFzKVNZAjyb$MI5
z50ZK-$$qjEr(OyFf=JTQuWp|XsI`<os{I5kSlJa)wAs~mnMA4g(V<w3>XQ)6*S3}h
zIqYXQ9hk9Y!Tnl7wujX1zd~Q9*lJj;?)W)|X{Xl)j%o#rx?&B>xvvd(b0dbO+!qFx
z`^=EKTVYuBz=wu>F2PXGX$*JaR`#a+TR!_rz<ed#{~KBOgl`SwRc^c{qM7p;Hgipe
zR&Kk&&ea;cT(!Z&B^s;{VS|WTPG#UYrJ<Tr7~I~tYvO`=+E)F!9p<%Nu`siv0%>Ih
zEU|}SrpPVM$Ki@P`jeLlzd^~tjRY5%%C<gQdT;w_?nPeaKd$umD+A_8_*o}27vX#t
zILV(V#W?rhY#V+911oNE=lL&6yXiFr{?Z7)1)hH^xLGbdO{4wVvmgt$%7n)-4c^E0
z(AgAhmIW27<pcWHS{C_3tZq<$qUHABT2_C;6CZS+4b*FsmtG9tryG5Rd~Bw9#~`P#
zll3IS7{nw~_yU#(bHB%Zjni0qNIk%-gm(ch!zit187S*w<gW`M5rorS-ivxQ9Vw>a
z2TFyf2`oP;zua$(G99CwhCd+M$`6zXLBjRtrAC>aSokbxX5}X><U&gwvuRT|u#X5k
zkU?<W8@L0PxAl=TXafjaF<4Aj9R96%O6a#MhqeP`<v$qhm2q>NspQQLK)Q_>2`}Pk
zEvw<*t@%>@QmDLFB$I<|H<2BmAbWU>?8`|ceMIs;k?bc)+lhpiiv+lYj`ormk>=tA
z&03-f=ui?sR*e09UU(2;>Gr|innlOeFA2c{rLY4D!$)+dUHvs!W83GLGIjP!{#39^
zc5zgGhQDxpB(d!;1jc?>=s###Kx{^08)*A8!S$y+Q{dAn8~E?SgXAGvnffq1^tC^N
zyPH1}!>RlcITtJ57Q=T5v~Qx=aMXAu{gzm<-8b_Cc++Sbg3F({_`&>F7afP`(p|f4
zSOq99+}=d~kEQ&c1l$r;c<InU@nUE4Ja~snPk4q{l$<nw5A*Ib<gF}J-Lkf;!vM4-
zIu8QrgaJO`5GrL^nfR6x-ozJcYLL{k>Jm2B;MCT1oc2!XxgXmH36>!I2~`#eH52Nl
z<6Q=@WT6N`%22pfNEVI7N%!_ThJRPM3df^xRY@0XDs7uef&~%bL+IyCm-yx@;$8SG
z?5IoK(#<5o#K&-^(p{KJoOl;j`CpIHcI#c*A1sLCTC5*vnd>Y9ZC&P;?nj8HhIoKn
z`jP(imf6nV6K>TQ?w<&!zvxx){o(lH(h_0j`7xs?JP`al<!yMsgCVn=nHcrli<*cx
zv{}Tbi-wchqQ)FG<DTWT5H?4`enSp3ul22FydTjiP%geUDD~%e%)o6&CGXb{xa0Nb
z-SI)iO#L~J;*hMeHw|wIB^|GFcXXWQZr6n}W!&7LJF4&ZOf&inO2+$bWiNlCvX@>a
zU=|EYavmj>NjQ|cJ24U-Ag$uHzp}R!*EWiKlJkFwXu$+g*#uFzrOvqpRem3GQ-8vp
z<ctvI&n75;CQ{O+BAjnE@^4v6g_R)fI^*wCwhwaioEm%$=}DiUk0SJC?Sth=Uo|n!
zqe{!EmR{|gYVK0p(;o7U_D^MWAsmXE0xE6Ct2mVEA);>amhN`+!Z8xSE3|5vvP?Yb
zN=hH!eCfC_?Ujg%VYD*-RKRpa7=c;*xf=fcBgP2h`zp9mA-n*P`lSKD`2Mead#*5?
z{Bl@!sj7xQE+z_Nsdic$ws}3-?&ds~$F{BBVMk6fjK#E`6%nRZN41x8B&V=e&gSNp
zNzgn;i>um^ZMVA}9#7Wd)@5vNQ$vHT(JqcRHapxl&ehb28Q#fr3t6Yl!{*rRtkqT9
zXyd$Yho}TU)%RBHXmW3_XlUG#R#8&lk|s$mbkyWF*&UYcwG}0{`g+IC5|?8~nzgCA
z!rJ8JoVoR059e@Kh!$2@9IlG-b(k7C_s-?jx3b^VXpdvoH@Y~Nt=_fEG0p+*hVj+K
zF=m?!E?~JP7HXTSZJdK`a5OZzcd|82Zr0*<wE(n`6~DU0Wm~PL!lEjZd3}|suyA7`
zn+zXuUJskaE_SDgGz)J+ru=mqL<>=)C?M;ba%>(4yD*DQZB4~vHk(q}B}*jtPeP74
z^2hKag|Mmdnkx}`coHAGyfrlrH<^;0+|uN-vv;MisVO(au0V=bzH6J?=H6LB#$#Mj
z+z4maHahH(WNvad*tnbJ&=Rh*e|;n8s5iT94GzkUf+oASUQC5?;Rsn?t0T{`&07ml
zp`*FU%}Ji8q^TH3knzd6>#_?oVX<V8hbyqTw_`DeELJkd%DG*QwM;o|*vf+50$J=5
zc0~%C1=nA1*Dcn#z6ln<UI_8Hsw>24fk*P&xGdfOLzcLPv3&-!#zoy^*DalNqh}}}
zw}6q3g~`dLR?g9Aci8jrL6sIiIoK(bde>1{v4zC!OhG2x%zs0&{1tw3vBW>NajFqN
z7GHivLs<G|%ep++jZJL5&0XuDeYwrSy2Xe)><i-<q=MDqrefr|Wnx{IS2x6O5^oVz
zK1-7eiRY$(+BvE!<B}(1;jH9*M`JDLWbdXdK_VrmwwlKtz><sCZz$T3lIQSnF4Q_y
zL23VpZn`OMRN<g-V$T$a#Rd?>38`6;+tj=huu`|J8AX*Mg&h4M`cWs{)s6|(f6EW!
zdsW&Bk`8HnvrETR8`!E^OSQeq>}qw`v$-6vtKMD(K!L5*)!=Q&_EfuEk_d_6@2;Ct
z(`u`6Otv9;k`HgRguIz7t?^bUM&yMx>}pn`f*r&|rNxb!bWPWWrg3XGwm97Nwq|y+
z-eoKq0YS^yiBcj7#7QW+7=qcQ$OOo?bGN9HH`KNpa&X-Dn=@AyI&5|lAq9W}eZzz6
zD?{I466Q;d(EnDFNUsnKt^o|bh%&zijv77Vxak<*k0t<4t<aiheMIwZ;dcF5^P};d
zOC0w+kco@s^)V7dDxSzi+v+*#RHkIjGvySottzpmrLM?m&0JZrK3n&r9Nd#GAd-%W
zb7&G~d9!^R-b!Js4sG(YHn%9B{y+30faCu=qW_7-X~yQ-hDM^NH@|OiF&qEC5&1G5
zi<jowUAuPKx7C7<uI=?CYwZ6<#Cxmf<@Pe&6yY)Bk;v%>-m1Fz%R5&-{doCdZSGSs
zp%-i|rd;rxCBFVCnZArq4p$#d>tEmY@=H%XarO3k^S^9(%=(8v%-r`eGd0E3+nr@U
z5Lw^%PR_#zJ6=B1U;g2<rFWnC?$KTOFaG>@r@Cf5NdKd_<?{%jnYu#V7Ts>$0p0Vu
z_jH50yVF;vuS;)8-;v&)ekA?X^t0)orhl6rpOKI;KjWtvDH+)r>oRs_v}Zh%@qETR
z86RYHt<>w+=yUaJ_4nyF>aF@xeYw6$U#+jz|A+oLeZT%~z1FbIaE~D;%bm45>lazk
zthuXGR)<!<w)*qc=U2zANm#RdP39UH0)HFOC8uVl=A;&<wxvFo`lr-SQ)jNYZN=Ry
lGFDWqs9Djz;^GQfT2k7QG;^9IttHKu)}3}d?UqYp{tw7nK)e6|

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.inf
new file mode 100644
index 0000000..42ac7ea
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.inf
@@ -0,0 +1,144 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusArpDisabled.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus module

+#    This version will NOT include ARP support.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusArpDisabled

+  FILE_GUID                  = D82D57AC-99F9-4c7a-B591-BBCF8A0E7FBE

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbusPeim

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusArpDisabled.efi

+  PEI_DEPEX|PchSmbusArpDisabled.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1C80

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1C88

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  gEfiPeiSmbus2PpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiVLVTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPeiSmbusPolicyPpiGuid    AND gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..58c00cf61b02f232a870397cc94ae73ec5b955cb
GIT binary patch
literal 10304
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
Gu>S)mr?-v(

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.inf
new file mode 100644
index 0000000..9b80bda
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.inf
@@ -0,0 +1,139 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiPeim

+  FILE_GUID                  = AA652CB9-2D52-4624-9FAE-D4E58B67CA46

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiPeim.efi

+  PEI_DEPEX|PchSpiPeim.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2700

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2708

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSpiPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex
new file mode 100644
index 0000000..05a6cfe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex
@@ -0,0 +1 @@
+H�t���N��ľ���s+�N+1J��V{PD,
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.efi
new file mode 100644
index 0000000000000000000000000000000000000000..9f6d819290b756c9edbc7e6b47587d7463365d23
GIT binary patch
literal 5984
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf
new file mode 100644
index 0000000..3711a1d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   PchUsb.inf

+#

+# Abstract:

+#

+#   Component description file for PCH USB PEIM

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchUsb

+  FILE_GUID                  = 3B873142-4252-49eb-BF17-105CD6F3E808

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchUsb

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchUsb.efi

+  PEI_DEPEX|PchUsb.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1660

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1668

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiUsbControllerPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gEfiPeiMasterBootModePpiGuid   AND gPchUsbPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.depex
new file mode 100644
index 0000000..95be042
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.depex
@@ -0,0 +1 @@
+=d��I��B������[�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..ce4ee4e782fbb36582b6faff9776c22598621ac8
GIT binary patch
literal 6208
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
AAOHXW

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.inf
new file mode 100644
index 0000000..d0b04fe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.inf
@@ -0,0 +1,132 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmAccess module

+#

+#  Revision History:

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmAccess

+  FILE_GUID                  = B4E0CDFC-30CD-4b29-A445-B0AA95A532E4

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmAccess.efi

+  PEI_DEPEX|PeiSmmAccess.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1780

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSmmAccessPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiMemoryDiscoveredPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c58f8eb1d564d0c0ae61c0a90d61b11e11cfb3bc
GIT binary patch
literal 5120
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.inf
new file mode 100644
index 0000000..6bd7d63
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.inf
@@ -0,0 +1,110 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmControl

+  FILE_GUID                  = FF456B9C-0DC7-4682-9E92-0DE84B6E4067

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlPeiDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmControl.efi

+  PEI_DEPEX|PeiSmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1310

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1318

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.bin b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.bin
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.com b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.com
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex
new file mode 100644
index 0000000..3ec1c91
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex
@@ -0,0 +1 @@
+�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.efi
new file mode 100644
index 0000000000000000000000000000000000000000..97c08c610d236735f889ef606fbcafe793dae3cd
GIT binary patch
literal 7456
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf
new file mode 100644
index 0000000..c3d066f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf
@@ -0,0 +1,116 @@
+#/*++

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    SeCUma.inf

+#

+#  Abstract:

+#

+#    Component description file for SeCUma module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SeCUma

+  FILE_GUID                  = E4CEDF93-672A-4782-A7FD-5FC6D239377D

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SeCUmaEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SeCUma.efi

+  PEI_DEPEX|SeCUma.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1C20

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gSeCUmaPpiGuid

+

+  gPeiSeCPlatformPolicyPpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.efi
new file mode 100644
index 0000000000000000000000000000000000000000..5fe83a95c49542dae9cb0bd0f6cb968947ff491e
GIT binary patch
literal 8864
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
ZM{<~pE7De`@o8Jq>}lK5(5$;X{|m-c33&hj

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf
new file mode 100644
index 0000000..c6565bd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf
@@ -0,0 +1,130 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  SecCore module that implements the SEC phase.

+#  NOTE: This module was replaced by UefiCpuPkg/SecCore/SecCore.inf

+#

+#  This is the first module taking control of the platform upon power-on/reset.

+#  It implements the first phase of the security phase. The entry point function is

+#  _ModuleEntryPoint in PlatformSecLib. The entry point function will switch to

+#  protected mode, setup flat memory model, enable temporary memory and

+#  call into SecStartup().

+#

+# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>

+#

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SecCore

+  FILE_GUID                  = 1BA0062E-C779-4582-8566-336AE8F78F09

+  MODULE_TYPE                = SEC

+  VERSION_STRING             = 1.0

+  MODULE_UNI_FILE            = SecCore.uni

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SecCore.efi

+  BIN|ResetVec.bin

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2188

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## PRODUCES

+  gEfiSecPlatformInformationPpiGuid

+

+  ## PRODUCES

+  gEfiTemporaryRamDonePpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/PlatformHookSerialLib/PlatformHookSerialInitLib.inf

+#  Vlv2TbltDevicePkg/Library/PlatformCmosLib/PlatformCmosLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  DeviceCommonPkg/Library/CmosAccessLib/CmosAccessLib.inf

+#  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  Vlv2TbltDevicePkg/Library/PlatformSecLib/PlatformSecLib.inf

+#  MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf

+#  MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+

+[Depex.IA32]

+

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.depex
new file mode 100644
index 0000000..00c2f8d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.depex
@@ -0,0 +1 @@
+²�}�"rC�,�2Ӧ�;���\�J���B�.
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1ee86b88587a71ca97d0f9596d3b0a3f2a85ca44
GIT binary patch
literal 9120
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
DL@j}%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.inf
new file mode 100644
index 0000000..d95c598
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.inf
@@ -0,0 +1,116 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the VLV Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitPeim

+  FILE_GUID                  = 24169E35-2454-4940-92BC-82321A2C7562

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitPeiEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitPeim.efi

+  PEI_DEPEX|VlvInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2260

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gVlvPolicyPpiGuid

+

+  gVlvPeiInitPpiGuid

+

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  gVlvPolicyPpiGuid     AND gPchPeiInitPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.depex
new file mode 100644
index 0000000..4cbdd53
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.depex
@@ -0,0 +1 @@
+�������G����P���ƣ�^�H���3����HN
2��G�,?��f���?n�FO�)�S=Y(mEK�GN��2v؆�}��J&�>����4/4t+p�
�1A�F������k��
a�F{�Z�~�'\������I�K���
�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.efi
new file mode 100644
index 0000000000000000000000000000000000000000..341ce0934ce3b2e809ded36439f59e1597e063d9
GIT binary patch
literal 32768
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
J^Y?0j{|6F)R8Rl_

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.inf
new file mode 100644
index 0000000..5f1366a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.inf
@@ -0,0 +1,190 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2013 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#  Module Name:

+#

+#  DigitalThermalSensor.inf

+#

+#  Abstract:

+#

+#  Component description file for the DigitalThermalSensor SMM driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = DigitalThermalSensor

+  FILE_GUID                  = 5122FA7B-17A3-4a8b-89AE-A93ADE92EADF

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallDigitalThermalSensor

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|DigitalThermalSensor.efi

+  SMM_DEPEX|DigitalThermalSensor.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x7420

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x7428

+

+

+[Protocols.X64]

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiSmmIoTrapDispatch2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiMpServiceProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/DTSHookLib/Smm/DTSHookLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/PlatSmmIo/PlatSmmIo.inf

+#  Vlv2TbltDevicePkg/Library/CpuIA32Lib/CpuIA32Lib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/Ksc/Smm/SmmKscLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid                   AND gEfiSmmSwDispatch2ProtocolGuid             AND gEfiGlobalNvsAreaProtocolGuid              AND gEfiMpServiceProtocolGuid                  AND gEfiSmmSxDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.depex
new file mode 100644
index 0000000000000000000000000000000000000000..cce1aa8782d7783ac5038e755ab4a29300bbd39a
GIT binary patch
literal 108
zcmV-y0F(a$;%HVLfrQi%yzu~l$2^FE0vPx~WMX4PPPK4-x-s1(Qv!|%m+Rlp#!0?Q
z*#@Pu4u%5VYvBI}VWviVvRa&e#V1?>x`?Y=;^1^fwyn4l_J|zT0`~Bu6G|rVKJwt+
O#S%0xGy?+z0|N-t=rOkd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.efi
new file mode 100644
index 0000000000000000000000000000000000000000..aafb722c55a5312a85cee6643eb44574c59b82d3
GIT binary patch
literal 29120
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf
new file mode 100644
index 0000000..22c4261
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf
@@ -0,0 +1,219 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

+#

+#**/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = Dptf

+  FILE_GUID                  = 1D000AE9-756B-4937-B736-1F3D96A5A8F0

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = DptfDriverEntry

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|Dptf.efi

+  DXE_DEPEX|Dptf.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x69F8

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x69F0

+

+

+[Protocols.X64]

+  # CONSUMED

+  gEfiAcpiSdtProtocolGuid

+

+  # CONSUMED

+  gEfiAcpiTableProtocolGuid

+

+  # CONSUMED

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gDxeVlvPlatformPolicyGuid

+

+  gEfiI2cBusProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/I2CLib/I2CLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/I2cStackLib/I2cDriverLib/I2cDriverLib.inf

+

+[Depex.X64]

+#  (gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiAcpiTableProtocolGuid AND gDxeVlvPlatformPolicyGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  DRIVER_BINDING                =  gSampleDrvDriverBinding

+#  COMPONENT_NAME                =  gSampleDrvComponentName

+#  COMPONENT_NAME2               =  gSampleDrvComponentName2

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..5066c0763638a39ff33c71c6d9759850f116e542
GIT binary patch
literal 162
zcmV;T0A2qAx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
zGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj$Tzs&UD_Wehl)DWogP{EM`bSrSe41h5~henUJ
QxSZsy0|NsC0|NsC2(86PtN;K2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..fbf1d38074937381d012ab4d8187f6d0af621145
GIT binary patch
literal 54272
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
RI{&(j>yY{1&;Ljd{2zvYJU;*c

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.inf
new file mode 100644
index 0000000..4e00475
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.inf
@@ -0,0 +1,265 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = GraphicDxeInitSmm

+  FILE_GUID                  = 99EC6206-AA45-4CAE-B630-866755241C8A

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = GraphicDxeInitSmmEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|GraphicDxeInitSmm.efi

+  SMM_DEPEX|GraphicDxeInitSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xffffffff|0xC618

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xC610

+

+

+[Protocols.X64]

+  gDxeVlvPlatformPolicyGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+#  MdePkg/Library/SmmIoLib/SmmIoLib.inf

+

+[Depex.X64]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex
new file mode 100644
index 0000000..9b2767a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
�HN
2��G�,?��f���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..f0c854e79bf0fdf023579e7c915c7ff201143963
GIT binary patch
literal 39328
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf
new file mode 100644
index 0000000..5c67ab1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf
@@ -0,0 +1,247 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#   IspDxe.inf

+#

+#  Abstract:

+#

+#

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = ISPDxe

+  FILE_GUID                  = 5A38B969-CD6A-4814-82E6-559F840BBC58

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = ISPDxeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|ISPDxe.efi

+  DXE_DEPEX|ISPDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x9140

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x9148

+

+

+[Protocols.X64]

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.X64]

+#  (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiGlobalNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.depex
new file mode 100644
index 0000000..1b4e8e1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0��������G����P��>2
�u�*O���Yj���ƣ�^�H���3������J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.efi
new file mode 100644
index 0000000000000000000000000000000000000000..891abcb07795ab3474742c1a346da6a73f821972
GIT binary patch
literal 26624
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.inf
new file mode 100644
index 0000000..3afb759
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchBiosWriteProtect.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchBiosWriteProtect driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchBiosWriteProtect

+  FILE_GUID                  = B8B8B609-0B6C-4b8c-A731-DE03A6C3F3DC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchBiosWriteProtect

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchBiosWriteProtect.efi

+  SMM_DEPEX|PchBiosWriteProtect.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5E10

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5E18

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gEfiSmmBase2ProtocolGuid            AND gEfiSmmIchnDispatchProtocolGuid     AND gEfiSmmSwDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmBase2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..43c341005a38f080bcfc36c46f223797c713b117
GIT binary patch
literal 126
zcmV-^0D=Dksbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0^Mui{|8~FMtiba
goPNb8Tmp^=m+Rlp#!0?Q*#@Pu4u%5*0|NsC2o*v%X8-^I

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..0f76fbeff785514edb149c1cd8ef1ae9a602933d
GIT binary patch
literal 176256
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
S*dAj5c8TYlf#?8$_4&U`(*gwm

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf
new file mode 100644
index 0000000..4ace397
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf
@@ -0,0 +1,278 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitDxe

+  FILE_GUID                  = DE23ACEE-CF55-4fb6-AA77-984AB53DE823

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchInitEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchInitDxe.efi

+  DXE_DEPEX|PchInitDxe.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x293C0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xf0000043|0x293C8

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..89550b75de68aa683924135d77708ae9cd5b8634
GIT binary patch
literal 162
zcmV;T0A2qAsbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0=K`+^x*dWN1fCV
zsPRz2kpgrpaKa3LF+qn$kF~g*<g5bSYvBI}VWviVvRa&e#V1?>jtH0Q-_OQLzDwB#
QrLqo&0|NsC0|NsC2pfM&K>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..ddd290b4caaa60ed05dcb2eae756f098f22efc95
GIT binary patch
literal 67072
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
J6}u5u;6KmmZ}$KI

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf
new file mode 100644
index 0000000..f2bfa8b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf
@@ -0,0 +1,290 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitSmm

+  FILE_GUID                  = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = PchInitSmmEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchInitSmm.efi

+  SMM_DEPEX|PchInitSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xF010

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xffffffff|0xF018

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..6f989cc9199142f9565a01ca77ca98fc2e1e5354
GIT binary patch
literal 108
zcmV-y0F(a$x4+Ev;P(ATozxJh@le5$0$V^JIhV-VM2PcDNs4dxHUa<yAJZ0n7DK;?
zU}cCqKq~^NWdTdpVIxkUwLZt3E-=*s_VA+<N+$3=^5EXZ5;QL~0(2{I!VG{hL5D_<
OwYZ$*tOElB0|N--m@hg2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7fc92c13dbbe64fe028616b005a3f90b413db02b
GIT binary patch
literal 55808
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
E2a{i|2><{9

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf
new file mode 100644
index 0000000..43501e8
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf
@@ -0,0 +1,251 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchPcieSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for PchPcieSmm driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPcieSmm

+  FILE_GUID                  = acaeaa7a-c039-4424-88da-f42212ea0e55

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchPcieSmm

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchPcieSmm.efi

+  SMM_DEPEX|PchPcieSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xCC10

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xCC18

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiSmmIchnDispatchExProtocolGuid AND gEfiPchInfoProtocolGuid AND gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..116cde64b2536b7b7728963618d7ac58af5ffda0
GIT binary patch
literal 23616
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.inf
new file mode 100644
index 0000000..46b4af1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.inf
@@ -0,0 +1,123 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PchPolicyInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchPolicyInitDxe DXE driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPolicyInitDxe

+  FILE_GUID                  = D6AC4AC2-8BC2-4cdd-8776-280E1469DE02

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchPolicyInitDxeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchPolicyInitDxe.efi

+  DXE_DEPEX|PchPolicyInitDxe.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5478

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5470

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c118b285c2e561a2955bec43b5d6ffc4d29ff1cb
GIT binary patch
literal 29184
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
BV4eT~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf
new file mode 100644
index 0000000..8f249d7
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchReset.inf

+#

+#  Abstract:

+#

+#    Component description file for Reset module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchReset

+  FILE_GUID                  = F5883FC5-F8EE-4e44-B386-6021FB320C9B

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchReset

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchReset.efi

+  DXE_DEPEX|PchReset.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x6820

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x6828

+

+

+[Protocols.X64]

+  gEfiResetArchProtocolGuid

+

+  gEfiPchExtendedResetProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiCapsuleVendorGuid

+

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+#  Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..9e8f03f52d06dcaaf8db6e13b30319f83083d1f8
GIT binary patch
literal 58368
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.inf
new file mode 100644
index 0000000..bdaeb10
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.inf
@@ -0,0 +1,257 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  Component description file for Pch Initialization driver

+#

+#  Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchS3SupportDxe

+  FILE_GUID                  = 14537da0-222a-4bbe-9a5c-212a3cbca9ef

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchS3SupportEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchS3SupportDxe.efi

+  DXE_DEPEX|PchS3SupportDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xDA00

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xf0000043|0xDA08

+

+

+[Protocols.X64]

+  # PROTOCOL ALWAYS_PRODUCED

+  gEfiPchS3SupportProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiFirmwareVolume2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFileProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFile2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleFileSystemProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiFileInfoGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesLib/DxeServicesLib.inf

+#  MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.depex
new file mode 100644
index 0000000..d57f41f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..6dad6ec20a6ec120bc6ed017d9bc862cdd6a3480
GIT binary patch
literal 35328
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
O>k4)mUBz9V2mS|j(<Pq(

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.inf
new file mode 100644
index 0000000..b5b950e
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.inf
@@ -0,0 +1,214 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusDxe

+  FILE_GUID                  = 99796403-CF03-42ec-A817-7183411D79E2

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbus

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchSmbusDxe.efi

+  DXE_DEPEX|PchSmbusDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x82B0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x82B8

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmbusHcProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiSmbusArpMapGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.depex
new file mode 100644
index 0000000000000000000000000000000000000000..a04bdfab3e6c26c51e1b877ec289d7ea324cfbea
GIT binary patch
literal 72
zcmV-O0Jr}Fx4+Ev;P(ATozxJh@le5$0=s^2FB(eJ5t=vvkS9OEO#=4tqZ3Ld@ILb3
e-o+9$FEj#lD{#ULfH6UbMvt|)oaC$n0|N*&`XM<0

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c0defd06e06324f081ebe9a7f826c27d0068d86c
GIT binary patch
literal 53760
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
V524Xvd7nkcf++d-=bxm3{|oWA-U9#t

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.inf
new file mode 100644
index 0000000..75577cb
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.inf
@@ -0,0 +1,181 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmiDispatcher.inf

+#

+#  Abstract:

+#

+#    Component description file for the Pch SMI Dispatch Handlers module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmiDispatcher

+  FILE_GUID                  = 6BE18C9C-BF61-499e-88EC-5CD57430460C

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchSmmDispatcher

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchSmiDispatcher.efi

+  SMM_DEPEX|PchSmiDispatcher.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xB020

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xB028

+

+

+[Protocols.X64]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiSmmPowerButtonDispatch2ProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b1e827522e2745ae4ef4fb672c175618e3e83974
GIT binary patch
literal 50688
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
Tf&1kept%|G|M&S{tAYOm77uDB

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.inf
new file mode 100644
index 0000000..3beb231
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.inf
@@ -0,0 +1,258 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiRuntime.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI Runtime driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiRuntime

+  FILE_GUID                  = C194C6EA-B68C-4981-B64B-9BD271474B20

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchSpiRuntime.efi

+  DXE_DEPEX|PchSpiRuntime.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xBA20

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xBA28

+

+

+[Protocols.X64]

+  gEfiSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/DxeRuntimePciLibPciExpress/DxeRuntimePciLibPciExpress.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.depex
new file mode 100644
index 0000000..6fa9e99
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.depex
@@ -0,0 +1 @@
+�������G����P����J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7f25a851dc624793b8c9336c0f77f6ef03d6b90e
GIT binary patch
literal 54272
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
I|40k`KR|d??EnA(

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf
new file mode 100644
index 0000000..2f06103
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf
@@ -0,0 +1,251 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI SMM driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiSmm

+  FILE_GUID                  = 27F4917B-A707-4aad-9676-26DF168CBF0D

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PchSpiSmm.efi

+  SMM_DEPEX|PchSpiSmm.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xC610

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xC618

+

+

+[Protocols.X64]

+  gEfiSmmSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.depex
new file mode 100644
index 0000000000000000000000000000000000000000..631980e0f8ec20e495bafea5b893c3835d38bb13
GIT binary patch
literal 54
zcmV-60LlLXk?~=zU#<>Jx%%j7(ul@S0<z4yCPHu25xnOBfX6(DfdcmMqZ3Ld@ILb3
M-o+9$FEj%K2msm{`Tzg`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.efi
new file mode 100644
index 0000000000000000000000000000000000000000..df5fff20fd12dfec73cc8fd975c3e6ca4e74cd37
GIT binary patch
literal 49856
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
Jjvwg$`+pvACb0kj

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.inf
new file mode 100644
index 0000000..2ad6449
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.inf
@@ -0,0 +1,254 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    PciHostBridge.inf

+#

+#  Abstract:

+#

+#    Component description file for PciHostBridge module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PciHostBridge

+  FILE_GUID                  = 9fd2360e-6b48-11d5-8e71-00902707b35e

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PciHostBridgeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PciHostBridge.efi

+  DXE_DEPEX|PciHostBridge.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xB798

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xB790

+

+

+[Protocols.X64]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  gEfiMetronomeArchProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+

+[Depex.X64]

+#  (gEfiCpuIo2ProtocolGuid  AND gEfiMetronomeArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy- /O1=/Od

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.depex
new file mode 100644
index 0000000000000000000000000000000000000000..04a994f69f4355bf96f414fc4c084834ed2e90b8
GIT binary patch
literal 72
zcmV-O0Jr}FsZV5&Q0TEuoZ<^aX^xGg0^(>^9)X0^5xnsLfX6(DfdYuE&nL`A)DfCE
e0FWm?!A%18@S_t-Ch$J;;NHa&G%qv*0|N-S1Rr1k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.efi
new file mode 100644
index 0000000000000000000000000000000000000000..5a87e4b1c0af1e5877defd5e4e2602b783988596
GIT binary patch
literal 35392
zcmeHweSB2ang315KzIogc{6I&3rt`TkpUFLn@&Q28=Xi>0;ClsAqfx(Nt{d|B4BW$
zB@9ul*3wqDQA@;jwX9WvXf^Q#f}$eYO1Enb?z(%^p%trLv8B!L`#tB}J9m;O*zIS3
z`$tD7&pFR|&hvJj^Lo!6a=)ql&7Zcvx#r)mV%|JWE4{OS9K(~^7=3W!P_45>)0)T1
zqLckJtt~M|rX$I3&yRmwjBaqx!Y|0DegR&f8#HZuQjDOj5&9zAe5<Av#L)la)McTv
zx)8V=fX%d%wma>m0A15oUluGa4i#(K1EZkBN_-V$x%KgDnsJ#V({{tP{!QSephZIn
zx{k}LC84kpwl>pNK<CG=X<3)mNxIYo&}@Y+3ihH4mQ_?iclwCFs#mZlot0nubz@4K
z(fFp(_?FS$)z1ijFyIs8Cyj4?^5eqgFC9L7c*#<u@s}vSt|`#J+nDiJqw!RYD`&>%
zHK~Ed_MC9%0M`1%*cBZZXnf<Eri}x-|AK-~esp^IjjVq7lN|yuDLzXBjY8bFUj5|9
zM&l77!zv?$xHn0Ha^oj`5ID;FDn9(@cyWjS)Fb~u;Y){&#(*c;2%pF>A_0%zd<-r(
z8nZpR5#H$0wT<T(k&$<708W%%&(eq}eK~`53p}YdgYcY-;cG2)F)55l$}r?+7|Atm
zW8Znw!}VQ%K*ER=cnrxeimdw?*Q21kqs`s$BV+?j*&eUaH1cGf5^6+TL!dzSj-9Ma
z)lB1BR%^SXEwo&!xoN3cXyYdB2VuRr#zu?^2$h>go<^+7!iRG-Z5kNVzAgT?2bx?1
zR%lx5X3A(v8IH7h)isLdZW;ugQjYw!yW40q3LO?K?x&PeintwRlUNq>*5MxhGM^q}
z8MGdvdK&aC8>bBVzKyUAnrIvJmeI?g=_qWiK-Ylg4<l`^wT!;o{5Hs?FHZy6Q}hs9
zk`jHfjj%=UDYAUIq_^m2QP^4~MUSWGKUg&IrQP~}foQ43`aYESmW{LQw-L4y6Ky5l
zTF~2mDiKunBW<qjONr-TnpA>1_Vh%eEmJ8m(ni=yv@Ewg5$LVNzo4+SRw{8Jl`t(D
zrzh^Um7tD2mDptCloC5^gssGATZx17dwJqgDp4nu*om}R(w7qb1C}SKV^1Yc**K-d
z;ND6+aHHjktlmmIio(`gr4qxb#BVH`yNxhM6KDVEF}8RaHDZMFnS(h7g<tlff*5+H
zwY?NK4tXOkKiEf7X5z1VZ;sDs%1%yW6DLPp<3vds{u=$-iA!Y%%`n0lTJ12I#6Xv9
zG$wcbL<5m16qp%eAR7uKKJ{I9<F6{!B7WUyO!64v*&eMn**KWw(UMsTRC@OSq%csO
zw@*8T!6P!nV~p)EBJGAt(6E}60fm?jK$*q_8wU;3R3-pjp~PTj)53LnckK{kpQTSU
zaax;nN}MkYj!K1E?SN@*UB83I`;*~3^PUSe4U9ct<Vo-D?zS^P>PC6Cr*I{jY1+~K
zr8M%hkD-)@PE4S~GNv6B3UM4wKp}Cyp18=1z<Md%r-f!qsTWA8I;85BRAxLgfLNbG
zraq&)L+~RFIC!GZF$Dtey2&c#S)Xo|O1>|BO;{7pH+oR`!+7a%0DRE;_C&Q0gEBw$
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.inf
new file mode 100644
index 0000000..f2c0505
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.inf
@@ -0,0 +1,227 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  1999 - 2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PlatformCpuPolicy.inf

+#

+#  Abstract:

+#

+#    Platform CPU driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PlatformCpuPolicy

+  FILE_GUID                  = cb933912-df8f-4305-b1f9-7b44fa11395c

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PlatformCpuPolicyEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PlatformCpuPolicy.efi

+  DXE_DEPEX|PlatformCpuPolicy.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x7D80

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x7D88

+

+

+[Protocols.X64]

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiPlatformCpuProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiStatusCodeRuntimeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformCpuInfoGuid

+

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf

+

+[Depex.X64]

+#  (gEfiFirmwareVolumeBlockProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiResetArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..e076777323483e39152c49173d8ba560c7091749
GIT binary patch
literal 36
scmZR2lo2M^*m6a1&qs!a<2D_QOy52%7WPv6VE5_4y`w@V`X<aA06L)%NdN!<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8f11e108911dd6a7c97b8144f690b402aa7dc05b
GIT binary patch
literal 33664
zcmeHw4R}=5x$aKLKnR2h{~#(GNOTaz0Ez*LOd!BUgQg^CDp3-W0dfdQ&SV1UMF`Gl
z2_Y3*PcLn)P3#|PZ?(P3pB_7@R->hs(sNqcdTY?*b>|FiIoej*QghyS{p{J3OaN`4
zo^zhZ{XBct`quZY?{BU3t)IODD{ePF^3(N^YyRyk7B4Z3>iY*LFg|TeHHW2+FrvjM
z&XuUsgA5~@8YeT6<=gjZ4#(++^+gT<XAMx!;`Z%^VL`U@fPXd1*BVBtQ~1|sW`+V=
zLtyhfY^I&G-EA)=n1-=oX0W<4RB0H`LFwia(5RGn{rI8sOi5;}yvQ*8P`E;+nuaOp
zx@I;=LfS}MD^%KtZqdxGlFlaLUc4zPC9EF5VJw;%4Aj<FNgo;TRWor&-H#u1w-vQS
zt(G5IpL+GZ$E}uQYhE~-_}qG%)$&si+}u_)xYwHZfz@)R(X)Ks9~-lZS~{19yN6hv
zJ%iq}z7`u=)biSmZQF+Q{soBlzIt}eoq`pr|A->M-+Cg602e+P`sjOm6E(W+6V@!D
zaLbP=*$Tfo1dLmL{NCebLiax>k{|t3ANb+27mivjMcL_A_*9<NT9oa#A4@|!wG?KX
zR(M;sX>1#5wT^AO8)X8!n%Gu>eKC)9OS7{a2I2hPTj0^qWKvkInePIcXQelKtwR%~
zr<;4;MaF6^&9)@J7(nj<Pd)n8eNk`Zs{o7I3bTDy+t|}<lu)bHGX@Iu?%l__RLwRf
zuv+xKXlRX8^Pb!6ET`<M!ys(7r#S`ViiFB-V_(17FeLK!afUGm44Qr-emjfWJnsN`
z1f9*W+A`lm-u{E8d4L8%r_5s?^!8dUR+-C!Rp^>7f8FDC;jSVs?yaMJ{AK^2G1{Q3
z$M-jAp;M*|TIm!x1`TrzY8l(lpm8+llNb`vJV=9b9E0o|K`wpyGz$Cr@<pdiiT;^W
z;E3M4Li=(=f6-qA@<_Q9{XX*c<C+G(bXxxzaFt42?eLE`=t8GV+wT-ON(^(9Xn`;L
zH0U@gu}0ZXC32D}F&ti%N>InXo;c!^DJ6dB6gW!UU!*;e)?bMSfjqKSD)DRN?RHJ$
z_QYF`C#YjzC9ZYKloFOx;3$#eD6wO7KTiy&5&@~i1}ZTrnG!QGN~I^LV_zkna>|qv
zFE|B`65DRlp7_(KeoA}_$Riu15^o`Ie@-j<fE8vmagUEavBk$;BO+9;{YEC#48Q0@
z1rd7YL|?FWp4yLrYY%r+^2uR7*(n%_kTTZs(Q2*U3DIX>LX3H8wX`1De`+#}mPmF4
zEMG3n_9HQ385qa@-YCM4pSjkk1&Y1EwC)jvbB?!m9>%n1SnvObg)*Y7>$|++%b>2R
zu`!y(uxEJ>q@^JA%<5Ad-j<SPG)?MXI^1aT^la<x?S(dF;M<qq?!uIzy9%?5V;Q^g
z`$3d>?*aTUX1Bg#ZF~iCG3vYriZar#@7!^PKpsX@7%h9UcOlu`)fy3*pLC;6*|4tG
zPFPwNd$Nx*t%WIRIR-R2e8MogTT=R<X;}EoU~gm$B41M6C~xEp77|Hu<GqpB2f}4}
zBV2eSt@jB`90TD>ypdf4;Z}Jgw-1CX^+s+O2v_KhOdSY!yEig;AY7U^asob2YJ<lc
zd2S%wXm6x_Alx`_Br*_gtT)2pmQ>yZZ=`4-+;DFsH#si<QS=pWWK?o&_{<V-<PZJ3
zr|cC=y^&uGgj?o~JU<Yw%p0N9Bv#}<hH}`S92-7kg=&-33ZE$pl_n|AZwH^y{3Mw0
znX1s#q~)IsWnf5Fpkh`mUF8OYvI2vrT9i}+mxhvRlxz?s8&HzWn$GSl4808;dVPj%
zYf(np&Xc{U)_F30SZBB^E8Jy<yZqiG_K?HJ#5g?kFGyMq2%%|Z?;it;(rI!OyNvC_
znDJn!hzzZTsl&z4FI7X|RY`=bz5`zhgpii>q@MXW1|)0a@R^TeK=R%nKJ!022Gqi=
zkz#x^Hw0s%7K5=tlr*5kgOUc6ghWXQCCTPa83RHeEe7-%hkZwEAG9-7k3Yv${pW$E
zGECKP41~i}{lY*vOx52Q2#2Y<bs*fwQ+4ui^6^w1wcM-f^G(%TG4SM6%^audtr(Qs
z#Gu@U5>D0Iu&{4NJ~r%SnL$38_c>ViWH$r((Z*|h&Mt@4GR)28oUxP5(Lb@FWx0LT
z5VbAyMmix@ZgCdG3m-*ce3&O=gk6BY^|-b1covUDtOD<W(ya7C)>+aTT>(!PveuH;
zS5{!pP{cjMGVg)m8HLy;>;dyal$00Z&?ise3b<^5X1O>*@}ble2R}<&i{QtIsu0D#
z>-#roW#3AZ+d}Vs3$cmd-phMm4stz@yo-~SoiB11C-!yDxzf&4XLyQ&#Z?|~hCLmp
zvT|#xws;Gi0&ek+IHI;HQB8V_2NwP>krxh_ip4&+sEx+Xp^Bfu`2dbdzKH7B06x7Q
z=S{^HiSl^BlxJ-7T06JN`rZiFoz!Sxc8evua>*{>VrLh6v;pF%BhSFuRjE^^_SWm2
z0<pKwgNEh;?Zii5M4zLM89*MXNA!dZLm<?iudRQ;dmxg1FKUF(4D#N0f-d|FdJJ0)
zhUFUD)-y@jo*KK;{vj$Q__o_Apl?6O*BV@`HPF6o^XwGcXU{)ii~X{vcpc7wGnl&(
zIX<y+yWU}@TJBz_fZV$r?$5&xVPBm4XTjEL@$ekuWzV|-!`M55xl_ntFJknJ$8X%w
zw5CcMTj@kw#yAC(HrtU_++W%=w+m^H;E>{FPXscgE!&af(<AmBj$1uVciNwYLlQjq
zb*F&RPC0G&CKT;s+d+tdZMj0)ILEduWn1h9`&x&Y@*K~_r8sgw;Be<w(9L~LG*)20
z@tfXW`(0R>pr9v##S;#Tf_^M8EI9<l`Aql}PGUSwH$r2NzuAki(q;c-m|z|5PQ{r<
zj`yJFk@<#^(~SK}xGNRMz{^Ozvy<fBgU9TnAjgms2RJx(_MyTiR0v1Yt$k!yjq?(9
zymM3^O*24s+T+k^O=b}>7P1HX?Pn1?1|b6=n*)-c5A3g_5MeBP2BK+>VKn1txoL<U
zwR?MGZ=t#gVjt7qE;2;-_ZeHBfylfU^ij6&$mbuK3*(BibM0D;mLvW}($*&tY^Wn7
zFxKTNMQMlq4RlEjJLlp>5HX<$c9=M$%7bt1Lj1^<m}Z5a%eDX-O%rhbyzF`i;sH9w
za0&AEX5>X{{=mKoPQj5A<{Llgt!Z6WYo`UXQe(@lwn%m{3u#OdRK`z4usy=DVIjul
z+T*>*!9gZis-h@Nv09Hw{1eoD=ZjR3?JTr*9q#WuMKvw(tx%G336v=SeIh}J%mr(C
zj_>&)+SO6QZ~uZq7;^2xxNN_DHHz^KAcXiH?#{xQ{t)|h;A5jvxJDG3DD>DrV5OZe
zQWMn|Cx9YfP~bQ%H29^o?37p<evRE}*=UIgFQ8pWGf~i>dnTn(ooqs@=jYeaNVb)B
zaIy*s=ag)D*%Mkkn=8?10dx)7yi=`k{#q2t*8Pup@WmYA{Y(%1V(-JZ1kt)jSw9aE
z;4;?dY#6UU%Beqvz61~Uj_)J2%lg!B^;dw$zgGZt5~w(jpQ1?W@O$d8Q1aMG9%CFH
zdPKU<V6|;HclDQn_ao$eUjpyl4)1T1_tlcO(C^S+w0+5V<IuLRAM@<#4sVmQu3u{X
zBXXu6VEJ3r`cBRHHT!*JrKO^VC2RbeHP8iFgL>IlIyDfzzRM3wi~;n!WxWhK6zIVb
z%Ve=>^+v^jA^<}F25TNl8*j2UBALKWg3{#;)}StqL<}R8`0aEj%9?!%xt0R66nrjA
zMOYpl+h-j@$LG^5V~_X*=b5+!%6QUMY~6xBkJDU}2eyn`*>FpC`i|?E47n%7#PEK)
z4NRC#-F~A?b}&iXzDOqj$Yk*L{MZI&hHk55lCgcEOiGvx-#%X^OPGw<er;?4l+2G^
ze<%gKW7ouHAA)H{Y({MQA<P9vY--FrgbCG%O^l5{<Y6W&HsTPpHDW_zo<r%#2&>Sa
zXjeFY!<{Jd-uKT$w2fU22#s?w648dj*Y@<Yx;5ipf#x}7YH3vD6gZz9JQ!Dp!MNED
z|4DVa_-DN=Adk!yVlz)+fZLP*tY{vv4<Q>LDBr&WR3a4r4s=KGQpZEA6VrS#SUrz`
zP8#P5k(>cWV(dDdJpot7{!w8+4JXo6L{A*`*<Vv2x)RO|Elz=$Tpm!RewJ>~rFW@P
z3`X`y^v2w#(ah&D?{6CN5_(8V%)`XMX8;o#;_L3wqs~;s;cUMIL!`x%(b9R++#H%a
zLz+9C=AQkda?y{_Z6T3UNI4Y<i_b1{en@1zDH-FV@VgEQ1{r_FVa)x9KhFI!hr63?
zo*XqCTAk>K&WNOO{9vT#>pc56VC)J6Ds-Hsd@hC2j#1?8X<Ghk@d1Akz35j1UN}8r
z^!vTfV*wFb6wd$QEVw9ioqew(E2q_S7=<D>1UZNQfC3jufwxfLcg`qJzJdV{Ia2d=
zdyk5_$$A-+75(0d2}?}pzlUX*x73{Ev&T8IP?PI*(LeXFPhTb*Y%j&!q{X~OA-Udz
zvZ>;HUIT&4KZ;Kw`7nCGKNk56O61cj**Jdo+4m>qb9OfPL?s`Ce4c$@nJx9P6eFi?
zp(H*@@#2B^$u2}tw55YXKb-))&uU4_o^xC}t#x=dzpK$VVr`N@EFBZ#(lA-2*6)c9
zEIw8NUznZlaHRr@ZQpP6UxEeFVV6+_zZLFIK@)}8%Kv-~%x#wD7F-K+kN!cK+a>3%
z5H3_~%f@V!hA6tk>1vV@%r?CT)5t7`C6?9OC40~i0mjBKar$8F6$#4qsk1MJlPJS9
zq%5D5RhZDDC`ryxvJX!sC!Y|PmK_w*d@)?`K<DFhmzEtvTL7S&oi@+2H|Ma2!Uwy>
zTx72UtRf5s;W~F)`0M~&;qn_+$Z@}Yjea{Q{Z@&*{m}2V-|Ue}2>NbOcHX*{bh{Tr
z!+VecPDCBum-Fn@L=kM7LAq&fr-+|P5g(v;+q2>#z6FND4)LMHv>yR1JS~Drq8X2%
zS|2kU8GqoYd0)!-0%iR0ca9l1DjB)(eIAUMFJ<(xVS@J{PD@VhO3T(O)uTsu>82$v
z9sbSw4S$?ikY{Hk>XgtW@1{=oNu9P+r+JP}<mX@a>vib)=yy5<x!U(TAa&WA;LjlW
zc1pgNk?+a(w5@{gugTSMVxkXkPvpz4;P~(&@_j?{eGSpWZb{&q3zm7m<&S85-S(I$
zITiIxMMJVv^eOL{rpgoah)**4Y#i2W^&G(l3w<1G6YLMZ10ZaBu+W+^=lCJxdnx#c
ze{I7m5W_kj2%bT{vwN`jK<4AjogCynFm@X%b-tNe$fenof?>yoy*jLuU*yDc?VzWI
zJfnlGeY?fESeJb<7PoTzb=v9PgP9fxdONMES9Tw>4F{KlZ8Lg(<`uvK@s3#EdaiZk
zU*X6<iw!|v`I-DQuN1I>Pf*~CVi64cvCrjFpjWK6J?~w?yI0s>{cm_jtzHt=E*9fV
zv5YU<X#w^EVhN*iXcXoU#86yDVxJKz#<u>`;2e&6<hDKq(uHPR$%ebRrF)$fi$zeG
z0`fH=hqI<&33M83Jb_fRa&hcIg4}Lf{q_xPpsS=2Ue`5|Jh74TjOmYg9^J%QreQ6^
zEi+V~kYIHlqqYx?Awq^QS?sQhd0rS_mfXx`iHIM4Sjas;*S>AaPkM9C)5kc2d!VN1
zW(l)|PxDNw+XNluW5cXgCwNN_%}dL^XBo3%jc7Jr&%C)C(P)>Ll>8|nM0^e`bVCj&
zb5}tM3;Y658ydL7jD1B^g(jE{`kx7i?Fy>BB(Ln5FbQ_yc8mQh#3`C&Nw#t)<)<20
zW}Lj19z{gjotCmIRZWx6OG@R({x+B3;^od$dxfu`%NBc*%@sU!h_WchF!77!(+c~Y
z-|A2%4p*K6TCSLmUxj$Hh>Og&%*|M`*%Lu24_9~!BMFDhiS~@WR2{nfUzQ6|Td>aV
zBPz7Q-j*n;%MtZuus?F66g7;ZzJ&w0xF|_TQIB8Zh|>JS-G0two5J}OmqYc?ZT474
zjIY&GghFdxM5wiyE0NWdRU&15ITx}PX<09|dM<TSQ{X%;@G*SZh=4yT8nKPx{P(z)
zgs}anEoTA<djo|D!nQ-ekuoW4HiiA`ua#jC_H8#cg&n<ES*L~3K`uuEgsI-h*H9eJ
z|3{(04*N1kg9WXgJ5bmgZH;n!y(gQFvv0-R-<nxSVb^yG7wo52RZ^>maR6a2)LMO~
z)ibF-hcSXfs^UORr)o`iTJTF3^r2svKaI2(5xJ)wnQ;D5tWk{64tpmgNH;;rLn!Q{
z<SHTJ%Rp!)KT9QRq>}H?gpyx4rCbLkxxVVdVYJ|IhvGmb@0q0B=_o1usg;CcF5jAf
z(2XWKUASpD%@MsEl(A891bI&ZZ-EDn5A(LniagKx_&6gabPI)XaEP$4vM8biUW{W6
zfb3&zIzcH{`UC~lpe~-AfR>WTj_r$es+a+FdwZW>o+2*2U=o=o+k;j1D`lAC2GBzj
z!9kDW(0DQvOfga@D(LA6k^;ptUihZ~0viFrRs%$QXm>kOf-gm~n~^ZxsnX9gCCx5o
z@GyTyW(9Yl7Wn3Z0rg>;;f;Kd6$dlDkzyB^6Y})@!$=`z9~to*1~dFFmX?NU^b26^
z4;`MRw?2y3z)-7sjEtcs)2p`N$VFwnk?*@O@b6+A`Dm=^jr`n&y}}zAtE?rP8S=80
zCcaX#>bcUzU}mUTqjT{c(^Wawd;cI8;XLpCuez{B-pFTMf@{5zFu<N4b5QA)#rkWQ
zZrGmhx-sFd6bJG3L`15CXiG$-IfzgqBHcl(PDJ2vPxh)FG1X|ba*T8+i3uv?)^w;Q
zraMl+Qlse#;*SZVaTWw#BCpF@{byLl?is_PD<Ue1^C6Uyfm7zDyyHW%Z-*im#-5Zt
z;(mEQL$QTb!wXl{96Q}Z2R5@G<_33AKW67`30WKE;L2cs7u~e2F#Q<o?*ajNc8OF@
z27mQn=-JH0S6{9(bYNmYa_n&0@N%aJy)E8`;39O?4TR&3cu707j?F%gBo%x>%Amt2
zkkWGs2b8QPd;!*nP)dI>UBBfXC+m&W4vu3GbLQeJo5mvM?8=CPxM%YYLyKaA`;||-
zxK?^2zj9%#ypbKAIB~T%atg#fYhCOcLf9clm4djzn;xfb^hWM+@d_at42ff#LK}3w
zts$$&OO`M-D!PC7E4tUriH6Ulgxnp<8D(*DS0~dfxEIqr9KxJtnu?J)-6;xp|D_)p
z>W=7Fh>ugODdOaX4A&|-Tu(sadB&5Q^1}|-3t+FJ0V!Qpivy^1HO-kWL@KNdX~YZ{
zB3&bPf)n-(s;#t7z4tvw3FyWanh+gM%x0toKevE49M`HY4|35RsiARCVVtw!m#sC+
zDdHz(j01KOrTSIG3ESR3L6mUF9H&B#;*p?%Xh^TFrz<Vgx?_TN=6#2eYW|DZXQiTj
z8R+k>R_jAjp|(BZd#T;Y%Pk79W{5?Ph!vVs(|9s%hg3r@)QIIn;exU)l2!qeY2RLy
z^8iy~4r9WUe{%3WBF_*4FQ!IltoT-A%~0hE&o#zQpwTLGNh^efL_-T%y<KyT$Jxri
z4~U0al6aq&iz9Hr;iyuP+dP#;Q9H=Q=3Qk`BnCD{)^O6P2IP_|-ji@Fz%GXEtD=@?
zhfQ;xf*dZ*Ni)q=lrD;zM8q|emngsIBx9oH1<4s&vS>q4Uf_&Nm!D?{t1(7OGG}Tu
z;g8@Pvror`w|R!=fDB#`<eDbOP=<)LdOJDb>A6@1b{TSV$?}{l1bjf2%!^@QY$oZ&
z+8``f6#do-3G`N*{*d2CIk)$ETGWhiAyH5{rW>YQm<vfs7cw=P##n8h-%N{pt7khK
z7&Z~juVoY8>FtFleeU9LG>xbO|G&3)9dN@Faf6Bbg2JT(cL=Y6YlJuu-y`_qNG~N_
z{CN!ibOz)PsZ#v)%n?a@+{3|69pn|d0>J|p=+cT558RsrlLEm7m+1x-DK01nn*zaS
z#m3{QMXe7DJ}568onG)P`LEdcOAHEGzQ}u^d{Vp|HcQu_eB0#oLhr$cvuT6(;M2lR
z9J@5&Kx+d|Kr0FXlobLh=9N9Gr5yKU@XfCfncS98whtE2ZJ;uX+A{Y|H4L0>sn1F(
za*f8l6ZVM;(CH4_vwIK#w9toW{w&nLu;wQvnKLz-aJ|WM9Td~DWB-e7Pn`FF-^2Ej
z`Q>Qvhh+ZXD7sD-uO38q$^4E~80v>N^5BeI_`nBe(C~MrBr*J=;Sk!_@CO-uKAhnu
zRJ}06N!eE-g|XbYr_?%xwJM(-v|12P(+kxoC`iiG*nGLpPT6uX+?NOQScOQdwXh4H
zz~tDDiLfd-p+uk+56_lKsMu?|E2iOiSH%SF7HqE>z~ov=@{wKX+o;*ED|KN-&~poo
zL<@GI9+m1M?3@G$h**?<gp+^_(Oni$ZEfOJu;Xf1K|k3Ei~XLbs8*ZjkCWpp`qlVb
zX`30kv>)#TZDKj>4*RK+_B?zOrN<JY@!!FxHV#F#5;6Mpm#%_yTcLgWwR6?@@8(mQ
zBpjV%aQ}k!#zkBk=E3)3c13;y@(2e;42SUw!<JGQAVoh{OtK`C3FOO)mRzbb+w-KV
zwhJkrm^f`Fq}ER&i;C?m!k8l*bRS8l3+_!d<SvN4Pbx7OVH}~}=hIT0V>LywM=FA-
zDJhCF+y`y6lnw4@im1TUz->cM&l-dvM-a4W2cogxW;gD@6gbJsr>ng8eF?P0untGR
zLGGf@1BkHD`(!5(VjMc1LO`gdoN0m%`>+z~^%V6Irz)a4s<x92tdhKcY_-11PZ4Ip
zVN^4UcvtHob>b+`A?<xw3D8us;?kH)Ql3j^6OJ!*H$wp}<3iM18dvXnUDf;ip6q6@
z7aA3{z9Lr*{WKcv(#UbOHtlchF3}s{l6I;!!{x4A6eM$3&D(Kz^-PA3{>wBp2hi~4
ze~WAQU(<j~TpBPUM4>4kmo{?zqD&3)D6{A%qCGII2z$fdQvTgb$aOR>;e?}c_lVW~
z?E**AqIg%mPFLla;Zl|Ze}Hbf=B>D&sk#Vks6yr9bGm?lr9m!R<C{?YwHQ$#5t~=J
zjdbs0@n;Jiq<|yEwpLL`nM!Jr1p~M98XHjXVFs)}?uBc0RT(+1gros{u=>ro4|*1e
zulPDn$-u|o|E7WO%O~Ty)BRm^DBACDvL@@fgFy^j6M}YVy5m{27P^)^$aqRgW(n?N
z^*jjJzWBKQ$kyjm?gLnwABm=cv@P?A(V)Ef$NKxK;tnHZ%d1d7$cbx9<~TtYWoica
zT(?xUjN(;c;<WU6>-|6C>iJ#}thsab3j^I5u&g$0zZl(f6K)UWs(_Du8LvH7@cVZe
zzm*r;BSa(cb3Cpa<ic)fKuBJ6kar!_zt3Z5z)tmbmPCFlC&g===IVr>f{%@ZTLS2A
zaLXR#?dy)|ue0KB7<l>O@EQ2dPJJC)W?m2wOgil}d_l*uh6?$uohQ#yiD8|Gku)Q1
zJtk|Js3mLQFFm{mqn@+eBH>bFm;K3Ka-)sg$*{{OsozBrE*+S5CQf{L>xj3?cxBUd
z?`S?0Otfc^%N`%?xm`B%b7P_Q`X4#=Jd87uxIMEWi_$-wJ;kVXm^Rq&{zCc#+Gk7c
zuhH7y0zvSSx{i@>M={U78ww4q{|4xMWT({s>==mo#%qrLuj2qEu76O<|B(9cMJ;G-
zNgM9%XF~%@L<_V+*g!Uj+rpyZ?T1hF_D(D0HPn!}M4S@8;+JT*B;N#bIGuODSYYyR
zAO$S0JMqTu6QEFy?!J$eC+lD3sxSVz0&`kF4mFyCxUcjT_!4(-!s6bSzAQ(K)#hAM
zzMMxBP)Xgl8{lpaF8yP$fmF~I<9a{t{=gR2<W-r5T~->eb!~+&aKi?LFZn$;#qduh
z$m|Qw=$3yifGd?zG7uxGf_FK6jhB-c1#pd;43P!QkuT!W?xDM^^jK8zJc2*ZfiC!4
zDs>Tzw`nR^a4!pRrD_8{!#+zQ<a3c1y9TOrBuiE0--AeIrYc$Ll<<=_x$&Nv=&@MJ
zzb%RViui4D(<};$afylnOy1|p<tYKg;J9UQ{&CPY4aSw$l`%73`Z-;?AeJGHyX<FP
zm8xt|Og8k)<E}xdjsxyP2nl?eV;R<=Q7SJYUY|QuXk3Iz5in&7`2_@B%<!2M?|r!<
zU?UQ~<R7_%DBz2-D|RoxdY6@z5KtSeaGv44{}~7)9l`X?!$@MKqf9nq1FtEg87-1n
z%;B^Z(s%o3VX*o*R!$Zi=AVKwiUU`gy+H`HAA<8pk8a0H_4nZWC4e6By_y`L@vQJ^
zoasTkT?MnG3IM<Zt8VN`(C4fc;00Su6MFrGKLF@iAa-0y^-y=wlolfrwb+JlX8mQ0
z5mbgioN(LC+U<#9>VTP3cYEHHxhcCnKa)AMK5WN7Z`av99RK<VPB62lgilWHJn6-i
zM*vgxzfLk{Sf`v3s(va%YC=Vfsq<DGg^FS-5p#z8o5E!>-<29ikdqlcIi&OC@bD|(
zi)(}7Hz#+#=^geefvG#+<UPvHH^&Tn6*nwfkJ<nJuZWgtM9+Sd<3>@J{mq}CL=0Qe
z%D8vzzYOi*8-y@~a?v_11rylR=!EKWTdw^{IN8kzXNh3;T`&_p_~=poWfMAXo{bxv
zBFNkKKZQsP2g+c$OHSvwwTQ;Xa2sOZ3Vh6CuaRWD<S71aEAm*4G7(uQveO=l4<hLK
zN&na*56kF`f|8OYD@)fbS-O19l9elOS!w!8LY1MWMl;{c2~OuXIq^*CM=)KKSIsZq
zQXkw{zNv1@?D7@Wf#Qwp%ZqB(1}lSim9Gk{t0@fDYz_pM)P;g~71!6)h06OD%&Zc8
zit8E*w+0L&f#0I0n%e5}TWdGZE?rw2DhzC{sS*MTmn>SfY|X7DvvX%%yESiadD+}+
z1eK&%8CbWtUTSh{Wo>QXu3KvYTV|KkSCyC4;|ucQ+NQ=(AXpBG<q*k~iQrjY&=jg)
z7O0a-VHEZ9?^wl?mSS9l49D_#q_UP-T)!m{G%quY1HpCm!A+HQRRPCkqS`G@p@ycA
zS-d4k5_4r>eGR40N6lbpdEtCBcWchpE6rQht!oT~=1X8{O`x`Vb<XVS`FQWR(u5UF
zf%!RkTW6wvV^eL2c_n6Xecig6^(NFQ34}s5b?Z$uUod1&nKDIClo$acWHcEKLL0+~
z!z+QQGU|=ZNQ1^*3ZLMAdj7BQDZN;bdv(Dqv-sxXWUewpm1}FI!xnA503zvk6P^;5
z)-;;cHH~CZJ<}}NSkoY!k>T>ilDcZ;iT-|y<7oO)wjSJ;Z~A<j>uajbE2f*d=;8_f
z=+nO!RW=3+18bYsqr;a3f;E-3Y}9gHBs!5CUgqkY$~(-QN?%U(^!Z3Lj73fB)}iP0
zled2PrpomJtFo@THqak?Zhbi37S-2>pbJMzV<}w&-NZmlhJc3aOG=Z8G1f0CNnXA(
zIlbyW=kyo#TiH|>s@W7ss^S1R;YVT1vL-Z4KbHy7=V~X))owr<=a+=nx%ePVSoLek
zNhV~pNn{(7^c?At!kW!BjrF3T#a``P{Mnz#9d%aCy=Lp2*%0ud=vM|dRo2v12ZF-H
z^ZG^0D+vV=IAk4}@9!9&Z`JafOK+Zz@IqpQyxgt1@|iW=%+EK4bvOVF)U6L~Fc+9>
z))!Y*uUT5NHBem;5`laT3RYBZt=ZJHsi3i{rbcp-6)womRdtoMHS6mz+Aqv6C6(&}
zZrkV(U-E$`Co|yB=kMk9Xrbkp&T8r!YpTixNYD8Ss;h&6#zr_M!5^;jIc`7s7%E)E
zA4Tqp#ww?wH9sw+q^SxKpwYOkGFZp<T2;5Pu6|3MxvciCh7GV&mlp<V1EGMqw6dnQ
zDTw)3m){nwaThz~%6+Bv^=8Q?%&zn)A6*Z#4+2-A__v)|UQ}OMZ7vB0>w|<0V|m?X
zG-9<`Tp6s~1j(w{SXI~9)X)H*1gZtyB2-hdN^0&7=y=&r?#=ZfOp2A&dj68rRa~O9
zqc~U}3RICd=3}#-^KfH*QxF~!!tirzeQndGfVsFn7;I_?Iq=dZW#Y~C=88adO{Jz6
zfLXPnvTnW5n0hR&Z>p2pW8M?)Hwy!GH40Ce4fS=6a55h7+f>=mfTocgOA!=JEKejv
ze8_C%Os@P<P#dI`PFcZP>8s_7R}{ys#lPjfv@`*x<@HtdwVGymT~+<2hRRS4rUvuY
zK(Mi<zK$|W0#!|D^1IAiYwBx(mZgTVc;#YURj9^U6aI620i!V61gcHn?0FnSad-}=
zPeai!t*MoE>-H~#<C-wj38wg246TCon`#=tD&Bj}KOT!Q5JL=_I)kwp2qI9Zk)g&r
z`;fT+llzAYOVgdW;7h(haPZoW4<&C^T}>5Ms_sA-mnb=6H6E-(j4Z*rWU*DSa@Jg|
zOr$PXp2wPG+|3ybPv><+vZ~TlpAOwhsS8s@S3-A}@qYRRD$>8A^7w)}j7*FMPDVGt
zRT5s01p*=bYcjccTd&H=y~g>Oy)`FyHX)hmn~F;Kk$kvB(R^lCUkzgZTvKhD%+BYJ
zlu^cdnOJG#){A(`R?D<PrCU|HSEc(^+NIKNm7Z2<dbzAWL8U&G`c+!2(h8L}sC1V~
z_o;NhN)M^DOQk1NYOC~&O4IL9a#iY6X`V{`DlJxNg-RP#x=W?)Dt$_&QI#H3X}3yG
zt2F&iDK~f4>^aw5JNLT0c?F9W7cN<PzWK1Ys%G)JJTdTfPK<b;o^YpQa`kP`-MS7>
z?z(m6Hq$q2`gCUsJ{R2_7oF5j{^DrEcogsN*2<TqzS|}UOK>V|;K<h4hqVA-J{rfq
zu@~<*QO<W|Nny#qO}X_G56(3UzPu^;&|`VOZ^XG&;@acyzxS0}TKq=}Fi$*JsZ=M+
z7MB)9;e_9zK>t4vPY*JTS8q{p_9iix@c(lN;e1m69}o1G1p_6VefQmWSFh!?$N$g4
z#HL#R9}gAV4P!QWuf@UzkN!U^^#AR^|F6L&Ui}{qr0JM7Y4zHFIzIB#3yt<yYJ%4<
z{^_SqeKq#XO&xD9ykYKlG9Lp;H|bvT<Ta<@;I3KC_<COtRmDU9^VQGA$fSdw&p<SL
zfEzkgkeri7^O2MW|0@Dx9KKa(d4$K}?B5NKL1%KqqemygqedmdBk?CeZu+dOMA(b=
zaN|deNQ8%@1H19VaJSwKXCTJ8VcPA6X`>q+f)iUeJQ$xv+_1-!2=h;u+<5+3j~h-!
zzjMPW0NgNrt6>xQi{MmL5s!&qHl@Z-L4GnWY`I}~8%2R1h6+$gJW>1(0pNzAo`9M1
zy#(@z*YH^Q-wkIfei{$+9X#pW^$EM{6L!}p?5@weo1U<no-kkffb!8a#$@Pgx?nGm
zJTTID(!c}(vmVd9_z=%7PxvhUO*O)-$FgR;gwb_`J#euDQ@^WSF!gi8)K9~VrSyjz
zcGoA~U7s-P&%jIhjJIxj!ftxPZh2n7mvF%2VSU0AA)k+i$1=FP;E{BW3(lkxE_f)N
z=7K$JG#9M<9{H1%o1U<np0Jx9L*1B+_+cVteZo2(Xm}*_p-2t0KT{>b2pz`cOYwt8
z!*2VDpTxsXJR0xz2l3+}pO417{X_g{{@~Gg`inMb*o*kXN5gLavFb1tZ#16%an~P$
zc)~~H-Tq?zL2B@8yxV_lN{)X%#1p>M<qyK_FWO&(*<aWWq^Ifb`h-cp(1j<xuFtOI
z9&d!lBi_>l@*~WT-h4DnoT=dJk&cIO-JXQ?yhD1ztggrJ0^}!yo)-^^C(QWCN5hPt
z8qP;X&j-X4&g3A$qhZbuZkY3f8`kkt(=-0N@r?g&nDO5Y>-etg>-er=((3lV0eRZT
zhj_wDoPgO5^f%0RVEWGuGv2vj)+bCik*A)2HO%>!kA^wk+%V@~H>~GhP0#t)jo0(3
z#&f=N<8^xx&vw`2Tf_JqA^MkwMP>XDrfVlnlK#^0MHtWYpN1z+OoS)EUvB((1b8>B
z*DJcdUax4_?JvsL>lKZ6>rcF1uV}p6U&QP6ipJ~ysbTg{w|;v4qVanDqG7kc$zQKu
zG+wV?G_2Pz8rJI<4eRxbhV}YI!+QOqVcowqtoyfyp^~tt45=S4`SCd)yb3g>c<Bp1
zgwNvD{ZYd@UOY;oD1YR$j7e1H`MZQaQU1thDU+zo^H-^5X#Z+h`<ME5LmBN44Qmb>
z*8bD5_LqjWe>AN9_ZS%Y@J?0?3Fq~JIhE`AjCjI&{?f4a7h(EO&*vJ}^O1)2e5GNo
zFZmG8#yf$N1fEagb=$9D;wV$Y+I|gd`!%fX*RZz#cJMfcmvhTPyoCLD$09xrcEK4S
zpgfJ&<BxDLUM)|<D01kD*YY*qEuZ)y7)0#58n4HrhIRXESdU)~>-j{(obMR|Exg8Z
z%(YokpZ$H{cEHUrOzWp%El<NB6ZU9W+pA&ie+_H<s!)%PoQ!zQI6=4@@-%-9lZ^h=
zu;!;>El<N*Ukz({h2XIZubwY8OnN>VCcPUbe>Y71+_0W+b$#mR#!E>4vMcNO&Jw~p
zzH3;=cMa?Ku3_E3G_2#hhIM;tSjTq_>;9o(9nUqa<Bf)OywR|Z=Ni`WT*Eq^Ygor~
z4eR#Pux@V+>-N;JZa)p{_SG;`)r5wL{72c3>iSXC|9C$dUw<RCeY_u4^9{oQmzH||
z(y*StH0<7AlHR>vBCPuw=@EMW>iy`s_McoTbFSi+g7UbO{&+tMC*Yw!*t8$-M`fR+
zKmMogM@{HX{kcy2ct0xJlgk(`MLyn-Ci+9KU$lSp`bEQf{i0#Le$lXAzi3#mUo@=O
zFB;bC7Y*z6i-yreVooSS>c^|sm*<23-uqGh)2n>axrxJ5^zOVZKl|*zjQqlUWAEh)
zJ6FikkN(T=TfgNXzSl7Lf45(P&YO<Bi8LPz5$21K*5S=Uek;<YI1rqGyoL1tO$06S
z-AJ##2zyuLbCIr4`C_C|ytyc6`Ukvu$e%$v7-u-7Pe=NFynf`nkk(*BYaw5YbT8gw
z<e5IL@=V{xTZVEQY3C(Uw-=FKf^$ylnTvD*Hqq3d=_u1MDv%$8^tUR18fnH9Nk1Iv
zgLpT9<{_kS<846RM!I+^>_)y2X&v5X<QtIsrWwL-S0c6WQctFP@zO@7KU4V=NX=|n
zz5r=8-d&(!`YhhP$Uld)B1h`X^aptNq5LS)_wX9X{|@Qu%cRcbNT0>a^5>9FzFg{T
zBAt(y{wYQJ1YXj7lc`VUnU>+DjUq*!IyWHQrSeSo<0Z{g%ukm-WZH$-hjONYD-5F@
z`3*?FjW-MVr;+{{?|$UZBE1D4FPJYz`g6QbA^$qk#aH5A8$rGh={q-~k05U&z4<1b
z10Y|DbV`xbIUDJ(RK6SOqv-w3p!q7&pQ`)`r2JpLSv~=2naVTWfR{QmeE=`@+>6wY
z4L@Zuef$%KaRT{oB26ukcBLbohPMLc*+_51+l_n?((S4o8YX>GhNc)p*CN)8NHIp}
zbP?bosm73$u|~?sRAXey4kHBzo@p#kPchO-$9jY(r5ck`E;mxfr5fW>rc1i13eS}F
zNKgKcBF#)OG8ZAm|42KEDPiK7PF3YhNw3p;0po8~C#+Q|%SWdeqX}Q?F)mG+ZH#Xi
zS1~qM;Ym;Yqe!XmqNJwF!V0tja>v?Fw0F1L?Wfz%v>P4i9a$X{I?N7VM{Y-6hrh$>
zDDEihsOZ?x(a^EAqq$>O$KH;89qk?aJD%z|)Di9I>NwVMqNBUR?l|3Xro(u&;j6sx
OJsf<kZ%Hu&{r)Fn0|QI|

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf
new file mode 100644
index 0000000..9fb78ab
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf
@@ -0,0 +1,207 @@
+#/** @file

+#

+#    Component description file a sinngle segment PCI Host Bridge driver.

+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#

+# Copyright (c)  1999 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PnpDxe

+  FILE_GUID                  = CE7CD764-a1d9-44e5-9857-14fefaae96dd

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePnpSetting

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PnpDxe.efi

+  DXE_DEPEX|PnpDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x6460

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x6468

+

+

+[Protocols.X64]

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiNormalSetupGuid

+

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gEfiVariableArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.depex
new file mode 100644
index 0000000..df1f82f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
��������G����P���ƣ�^�H���3����HN
2��G�,?��f�����c�,E�9���&^��J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.efi
new file mode 100644
index 0000000000000000000000000000000000000000..906f360be2932d1749f47ad422ffb41de50fcc47
GIT binary patch
literal 75776
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
SiuK1bYuioqf4M#q3;Y)f3m@wM

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.inf
new file mode 100644
index 0000000..a71cffe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.inf
@@ -0,0 +1,270 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#Module Name:

+#

+#  PowerManagement.inf

+#

+#Abstract:

+#

+#  Component description file for Power Management module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PowerManagement2

+  FILE_GUID                  = 41E89AB0-BD3D-44b6-A431-E4836EFBF2CB

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePowerManagement

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PowerManagement2.efi

+  SMM_DEPEX|PowerManagement2.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x11618

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x11610

+

+

+[Protocols.X64]

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gPpmPlatformPolicyProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gPowerManagementAcpiTableStorageGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/IstApplet/Smm/IstApplet.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/ValleyView/Smm/MchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/SouthCluster/Smm/IchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/Silvermont/Smm/SilvermontPpmLib.inf

+

+[Depex.X64]

+#  (gEfiAcpiTableProtocolGuid        AND gEfiAcpiSdtProtocolGuid          AND gEfiSmmBase2ProtocolGuid         AND gEfiSmmSwDispatch2ProtocolGuid   AND gEfiGlobalNvsAreaProtocolGuid    AND gPpmPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4b64a3dd6e15d39502fbbf83d5c0383429b8e817
GIT binary patch
literal 30208
zcmd6Q3w%`7x$jQMKzPK73W|^FMkYE4>Ht0l1)YR|n>J`9L1LjoNG2o_l5{cy!3z>P
zp(Vyt>h;{xhn4zhsj-Et9>7>ViCPTGq3G#R+tYIz>Z3aythBZ@zMAv@ug9J}lLW!j
zd+yo%X1?|K*7sW9`qpEwAq&4~eCB80XKwjlZ&*CfFe<+~GKJ7F;{tPR<|&2&okC~H
zs@@TX(UqA*Gm+$H(6cs)H+E3v&;_|e7mL#72E#ZA-uh{d8AcSD<~4><stf-P@X~0w
ziFA+MqU49}ZhgtZG>qy?BbDXRa>Hmk4fV?)hk~rvPslK=OC_2S%zzE+@ljCY5CX5~
z(gul09jPnrOz3`qS8!>Q#G42@D<G(;;2^w6xVFAR*$B331_Ev7enOz<&NF@U607x9
ztM%tMv=@yWux9<uYVB|IESU8{V{TDv_kwuuD66|~#Cz7miP1%^hd$rFVbs7UsCe(8
zkC)&2+(A4`ZnCC#p}p1mGBK_AZ%4gnb+o?x-XmqpiLj)oRaAfN#rGbuS`Ujdw$l&T
z|C}hOw>pMEaMcf0eefe8g{F4!;D>4X@0LAx&}uF6Wn1y1L94CE7qWi@Q(LWtKGTYC
z@R`PjQ?0fM?X@TqwM$vsCTgD#vTdm^*C7y}b0hr3h@MXjt1YJhxmi|rqu1J}#!GYG
zpMYSsmHI46FM+IgkLS<8+|uQ3c?j8}_ClZEYM)@NR!prn&v*zhux&frQZ#$o*=*Le
zr7OBzin(!#J=-a}<Vhel+c!D|XA}vM+b2vbGYnbz)rp2N69i)aBEGwe+C5jHvhxn|
zXwR98w0!}j7PWU%A;^?-_-_LPR;yL!(qJ)$zsp`5y{@`TSeLZc!8Ci>e>_twv=pq;
z6<Y0-DTVHE3LJ%&F3}48BWR^5RE5gUVhjmL{tD9eO<HLv<aEI@P?c7F71ilNyzP`J
zAwF;l93fu4Sql*uEW{C1c9uvX7E*|V8pkcfndfLBC}X-1<xZIrBI*=4LfqsC(Q(Eg
zODv-hH%lRUkhZTMN{BzeVWcG}W4aK(cFL3x?>YsJ5C<1)OI$cuh}Tfrd5aWcE`@kj
z<J@h<Ihx%5kv6vc>@YDx1Gbkg8h_r824d*V?0PO`99mYpr=(h{;<sMFctHcB2;;XH
zUOt*NAO;^sfjwUtK48BNX<Rx742&t;DN{Os<P-><0~n{TW5Rh744Um369yUn4ODjC
zj#{|j`8Px7LmKDqnO#uAdhTEmM)X9N0-KL+2R_91a|X29T6{YRMMy$s2Qo!%mY-n)
znojtjib!`!q&Cm*S20p>K46O=qeIZxIEJGz*f$E}vB<&Iv_gzFkEN1%P>|ttazcWH
zK%qI6LizCoxkGqCp|4n|mH%W2O3j<uHS-k_6)9|Jpg7>x;JRVt9+S#7f$YFG%5CjK
zsOHn$my7H$&0h+qSnpA%In)lYwRbP1ob%OYq_*rvejjKV*6OZI@1DY}TjKp0-Yws9
z6=&$;n8}ul=9uu-=s204gmf&Mlu1NW(oII{CKtGxOg?UtET@S-$>n0ClU&gM0V6gp
zX^n(O_=2_hdAb?K&|v@DhYI_h)Aexhi|(<F@w(tt^mb<nygo$4*;wm{!27!R-p>&y
zOy~BT9$-2y+=YyGVS3K|O4$hlsm*f{`eaxaUX#VqHX3|;AP-3f=;P4w2K#E4$Y9ZI
zFLVkh@?{iRl((LmCh|TI<kKu%u5S}ur;|+Rjsg1t3`80&@Pbj2Uz#tH(otKjkj%B`
zT;icPR<_Q6BJ;UAzhI=OpQ!U&Mv1(s^Bc289)XT3wdYL7IvMl=BELTrL<G^}rKr8g
zSH|(b!fG$|RlCPbgHXU8hdyz|GDLtS_PI`(ie;BM1tOLOVWM%x+C){*Ic+*U6P2Bf
z99r!;B{!i5GPN1+rfh<>dEBvVN6{i(t`?_E$@NXAz>zC@qn7Is21J@%n^4)gLCW<M
zWVCP7vfoWhSqLnh@EXyXqPq}VnxviH1ZKKCe|E~0JfjB7^X3g&o@)oo^DZhozb56G
zN_l>zal|^xvhob{{k)k6irTt55s`-y><f+%Vu2?*aH&(K1gmoj97BD<5$s{?)Y1%f
zGX=Xx3U&{SX6HMCr39n(2y3yi%JF7pCN4{_9T`16y(lX-+G!wNINp`bP=IJeN5(8%
z)Slxj=g1chK4HZQdeU7!HR`9MYG9j1>0A?60pqsBXz_J{Qc;_ju1;rTr^@qZWL4M~
z!61qWk0W;)y3S?{m7T02*_BQK!$LJIAtPBNCoL>M(jWpQ<00qiBIp3w+>>?usAWF~
zOQ+C()hQr-zeE4DH2SoT?EgY6M`$8iu2_dgE-tQFPCYT)u?g@BB`2m@Xv6H`t-S}0
zwYC3rYm(4@ln-p<!kCL9kQPjZU7vEH-7nC@T$*Ck*I+*T5OhgV`iN6NrAy#y(x{&s
zmughK>~Yz1t9uh=7dwPzP_oeGrhZ1<s1J*`bLqhs!)6FUhl?P_CQuhx!hDHSWIAqV
zJLWW*^4lK*QOYYec77u^5%k_%2zpZ`y=Kz83}|B19KuAdHfi2H3#MPwz3~iTr~O6-
zVcC8ob7og!eBv}!iuDG&5>K;Q%oc8itGM@v6G;;B9Bw2@Zossx8zu5U)!&-si_i8M
z8^+*!<Q<ub%!GU921n4IDCTSs5e!moH{Q{5u<d%GU*}e->%Cuqu5&rV(89t(X|@yd
zkY8BQeg=px+nLgKJ4vrq(kmpr_r?rsyD?O~INqO`qVh)0++{|zOxn7p%RrbG_OaSq
zGWual?;fntt(pS{*^KDU-zO4s_1<I8z?A89lZiI@{h|bI_Ge{hB+ePW5}mBNN&4Xs
zw(NmAQtQFCr2RUdk-A%-hwkr-#e%Y>nPy9qR#tu(aj3fea2e_Slcd+b0Q7zcdc*kP
zY07Ft+w^j&^Xe|Kzro7BFvF5oTzz1gFyS=VRc(NJ?02y$QKk^_ZIB(R?JkJovO|M=
zJl+M}JNu>FA<F$OI)K`W#Xv~fp}|t)F~l0_ZT4*rRks~VN$&$m@0bO8_k&*24o!59
z1~nchTJfLywsOQpbG&<6e9cJF!*JRH0(_eL-bRdjk_y|I@L^6EY+$uw47bQ+JZQv1
z_OHQ4>UjRlF3f&W28Y+6P-g}YeA;s=EYLU&SVEYeTh4;9FAf&8d6Sj&UzlC{?_IuT
za&%mnBTD#t6E+bkeWWmDHxVr$$wFn)Q@$;+?##+YbTNrw;tU5WqaXP+_q~U2+8M2J
zq!d-_&v;iBNm_}~oRgspVn5bwIHgkOAZ7OJYzQ2+XWTH^u~C~LqMou?8}>v+K3}Vq
z#qM<q_d9Gu6Wx5zCCy^Vw>X7wv6$HGb7^50U&xds8k(5wDu?m82^=!Haij}Zt2sK=
zhjBVEc#ji5TDETh!c>9pG~q7j4VbOSw*p(WjH>SbY`6n!P1+KLq1)oUnQ$-fmghJD
z%fjYnMZ-5!Ao~+J-0AtN24q%b;{Dkh^O*9*doy5}F%pHGMQPQ`HW~R6&oeu14&{n^
zMLOO!LRN`3rbvr6@&2rhV?_!rFHdk!c{!K3EV|q+cJo#xVSrVEcz@HTDNLE5aK{)l
z3$j^av?v3uAQM4BA@OC=WX=;na2kyejb@|ET#aTEakgwE(t$b0+>J6tqYy`Bl2eF{
zLbA~)X+9ANs*R{v(o}o*aya8WF}aaH3JPq7PAT#MVe~cK81Co`A`kQkVxnF&luJ}b
zjH=d*L=N#9=(@0DcA}b56uhq1&C_``59SpUy=zu|8Yk&cin09=EG%P-U+zBlIt5%Q
zwa(L9iT7Y25nj|rTEykD=LRo1C(>M57$>lV^vo<71lTQjn)~j<x2kU5jWp4{d$G9a
zy^cv~?ktuF?~|4AP2qM~%6+pE|3M@9jc5UB`C((QIRj!rwE%3I?3u)6G<y~+faY`y
zn@D4!iXjQs&w}-ZW^x^qzMS@RNg6`*J%E!l9KC;AfFfVeev}*NxH$H6tsPwlXYr$=
zF%S7_W#ccY#+F^5Y&_VWeySNVV&ar6(D!2)%zhD_A$x5)MGsj6J=P1|19+^d(B8VH
zdoAaP?-XK=2-4c^Iln>L{sW?e=)|Y(uN{{}P?I=D60;<U?~+7^LxP-x)+|^qHcA*U
zF`n!Bkn1q?i*G|BVU<)%P$f)lN~O(I>3z_ZDv5!HBNJ-yf64v|$^L1wpQhO#vVZ2Z
zxYT-~ODYdxtbr~H6%-bDneDHX?KiSL2dS_C{KPr4eeW$T=0Ut_@!K!q>_K&AQf|>R
zVi{s>J{kmXyU-C}GG}}44yDxpn_RK6qTTN&*R`7KOZLBEiPZ+?clkoVw<h;kZQT|;
zH#4!oYH#t07Xk=%COr*bErM*PLELt38Xw0IEoVs+Bvnx@4{O>E%let)k=gt_1;o?>
zUrhDk%}2#17IasTBx<qdZ}F9>3>MZYGUQa>#JSjW7B$jBgzU8x0^)@1V{~1~J7n(_
zCt99^*I}*Gn~M=U%H9gu5~t%O(q2)B^+42PucN@5pQj|05jMx}!}AXUgOkw6{aL<@
zL>9h{I}u5^t57&!7C4#1;HY<H6Wcs_z~gu~9Rm+VH04a6JulqYYV~{`TH9f`l=R38
ztoWQOQ6zgeZ!T;xQ&>M|7Si^1ymt~lbx;n8R?ml6OW1iS?ce6|LiqGzwpT;yg90Fy
zrL}Jht$+;Akj4>IC1rTTp)rLtpd&r(A4y}pLqmiwzJ8GJv-JBzE~regpkfHahW%C$
z8z>IZ1w@GP8ym&)%LG-}j@WVi-b22Fgn3GRfhV(2Z|`8NQSnZU5zWV8VQ(Y~U74fZ
zG@|20mFN}wosV>#i;;d+IXoZtyHKd`9gMMoVoNZw_k5yFm3-^C-zigvQonQx#G#al
zDQ?d-dWy^aSoLG_tz$PTJ7<m%cK+vl=>4e1QE!Ek@j?4f&}s|eyu@<~gtI3({OCg;
z;($Q<z{{Z3c^M7ep7R#zmTI~O)A~=pMAH4KjRZCvf7{R-q6d+)?61h24@UJN2Kr;8
z_QU=e2@ipBr>jqgIWH2P5HO<I>@&;Y+8y%*pXR>D@ht<ltPY84*oIGY-@W)2{_lN;
zOZz+6+d{~IJ=Ylti-{4ku&;?;E0b;512C?g@8C>eg(cLp+7{rf1T%7CmTK6Q%iazp
z_PVC`&#?|0gRT**3-+z0<2max>7~QyTV`*9C%WdH2H8J93ZZ}gM2*^Wo<`b!;zQ*d
zhsdmf(qWKV7*Q&RGg}MR`>C%Pt++(q<N4{;^1b;tP>|dXjz!G_q9%HoY#s0Ni}O}e
zYM=1+BHFPB?)_7wl826=#Ptq(^61jpG;+3R&smSHIwxTgn&%K|OeNI!PlE(HRSL9V
zXb#Q97YB^(IbP7x9NqvoDe9@I91<&12yqDlM7_V|3Z*^g5O&ifiqWn%mx{xWT{>)b
zIP5~oWeod;4|KnY;U3~kgx8!hHQayi6o}y-f>mC)N)Pu*{ey=4E2!)|AJY=#+kY*(
z{b`LO4#(lR&zHIGWY`4`eUl>tBZ7;TKci*m)fkGPvX4~OX)1@DnLBYdErf+zm+)t1
zOqDT3jT}V<@j2^hz35f;s~{pBHLuMRMj=-@W`qo%Bf|p8@Om;FsTm$fY?q`N%B!{=
z6!WO{0wz|`BbZ#p(&H~s40EiC;ePuzhnLVxEyjEdh8MD7d(Kv}x&M9lpuhqeZjL2z
zlFkJ~()l%<t@9R1Cqz0+Qt7lAoI2BKy$U4PKvgnrBdvBx>(6sQYiv3#IsQ}PbkJ^f
zh+QcA0lQzALY%BD1ewleN%Ccq-1k?dW{>P-Cpu;!FwJwiR1!j9z_urg#PV2TacwSo
zN-UDC1g1e(UndU8Ec+)#MjRlCSyMz}90-$FVM@=DlQjZ?qFegP1*GH`?6Q0j!Ofq*
z1tD}Yy)4U@04_4@YPl{<IsYX;M1E5c0XAQEQ_!|?KI{EIT5ZpYINh2d>kEC^4gzOo
zU<kTxo@=k?sxCzrKSJIvtm0vlDQ%uDNRd|1^6sMag055q!Nk7x608_6!ilqI+3^v-
zKNWQ7Z{kR05W{OF!%J{KX?Qw!mU1oBW1mW<QxlNxcb5+<oklLyj4>w{V#Y~1M_2Q5
zB?wN&(Gsdn*^wh@&BR1}7ejfhOWV4!ZbmX>-w0%A62zhndkY?l;F8E%3c}{18*pAG
z&R+1cyv<XBs=n`exRc?jg0=71fI2P0#-I|-c`u^KOFBrDu|OVnnwTWTQJW?j$`Vw)
zEt4_LD@LIVT%GIg1tYrhp3(6m=XW3Rj_tM(O87!%^AT_}tnMS@Efj)3ROVN_>nxh`
zPp}TgDJ#l!1%h3V{mW!U6P*ob>)^q&Neqv&wK!(!dl4}Vz7ogknitN#Lq3W&yt~K#
z2}$hj%G3H5>RRa2V{c2V#Rk97SIBL>A8$xV|2EP`A!^VCIG;J!$xXYad($aS1LW>t
zgIT(Pu(POUYFghPT%uw9(PMvfu}~Y8AxIn&r)jYqCcEt{mL|lJ2+f2O`yTrZ;_vP1
z?#-eLboXVA?IxC1=v?Cb(4iRsp+J&mK++5(X<`@GW8dwj8PGIETbMZ1NR3uu!3JWL
zC<sKxBUQxIx-lvh68%shkphsY5)~o9qQ0lFmZf;`iIaB`_~D9UT$dqH4ci&=$g5h-
zdDV1?>XD6AQh%7F+G;P{inU>neHOIBju|o(!#7q<7ja}F5sNJuwqs*7`9vO23I$3m
z1tls_FdYrxwbd5MEk=7RQH~EM)=UdQdPUoWcLMZ2@W;|T$^UmKMI5_E^6$2DE#ZyA
zq2N&wi~$OkQZbFEDP;D0EG-gKHO4q_tYn+h+$BXC`Dq|So3)Z5<!|6xT%4yipw1Z@
zI4UdUlC;PEfnSzl1`2VLypn`PhS~*_K{gCTcwfAC1hB-3W;#|?=f~*n9(x@z_jnFs
zvl8!}RCs6dQb4gC$D$aKighwlLB<n`Hvg`q|4gm~X;y+G1gA}+j!mM2Y!amc_gs`}
zlljBh<R&0GHbFocY&mU{3PsY1d4I#INXNXs47#~+g3Zrwg`&=SC<w`SUMeIHBYB@p
zUfPKx6!ax0g8g#66z|1ZI8N2lH*bkRVwwwky9?Wl5_^)|>P_NSZ&D(2cZMa_6?maw
zkEP5a!eFFfwJgrwLVcgWXsbP+gDAPEoHp~7HctjJkY?KZe?*CIwZ~AE0am_=sS1^W
z_y5@TY+KIT$aNnX0T*Wc@C|gag&oAIn5<wPam<HJ<S3|!r@5~k{DfMa+&Buav=7V0
z7><9vdvY2<GJfQ`Yr3Oy)9S+8De=6W_9*&clE6o(=#;(Bv)E>d*WH^9A^h^%UeLZx
zmO^;{Sj@ewa*-&~w2!6H<{Fo}Axip{Nb1E_lq33SXwiw8SgGQXWa7Om;{7Y4nTa>^
zcQ?DZEK<a}?QCk06nU1a$m7(CDlPORLC<sRG>*ROQne;8-X7urkcNB@3spFlDX>$<
zYS4ZSb?&=HLHlQ7Sql%rmL_$*X0hXn4G|w_LrA*{tmFtsg()j0qk?#4M(j$*0;WAe
z$biVAEkMysyB|SRtln|Z`3~&%7KMHRHl+<9b1mj>F~3E9$lWS(CiW&{1yU}M5@Xvu
zi%?EE{2X86Qi|}gGQ-<)H&9$+Z1{`d7w-*;4bEF6gFp&07qP84B?ci(n<RuKIx=Fp
zQmkgAV%GS%Gzm0LmwHC0NL{A6bs<`D;hl!;G1IOG<HUFSczDPv$j586!@Uy-3iT+L
z6a-R;liy-=m2+GcvTqQ!<^nP8JXfAa^XCCL-jla<)WI<)A^rL^<ebGNZyZbY7#@a`
zZKB?7Byiix*+j5iz?zli+jzYs0SlRpVmdVM#OT{9HY}lxD0UuHAFeK}wl!Z|O$mvN
znuw@v;z8nJVJfbUr0a)6HB8J{f$W#BgiWXfy?E9&|9t5SmZ(>~#<iD;?ddFR<f(q>
z&a8~Bne09sW<4V@ht;_RKPcIJbepjCPkrJA-P#pA5bt79o?+q}-n7vELZ9A>ii7{%
zsFpkbUtwPAEZ~X)=La(|a5ma%>-Z86fFvTr#)R|KYlz2LE?BKQeGseYLc13P<gQn+
z>Ty`T5AvO#m#mhO)oCfLBqCWo@;Qf<Rt2Mi`_nb?Ip<<_H=;}I^$r_<n<pEE)~psG
zmUxTuIC+&wUhiUYW&hxJO0E5Eo?mfd(b!}-OEdh@3oX7D&}V>3td7sw1xzv<=VtaD
zcXJ+Qyb1=LWs=!f$ZVF2*%~)CnH@Y=X{VXdKrTZf3st=>52H9f=Mo{oCi_m1lvbVH
z<~a+616^%h+>PNnA6nRl-bK*QG0054N;7DJ3Mti51QPo}yxJ0n{*SeJUc>aCM&T|&
z;Tcru<=h2Y(#;m^(gS&D7p9K^;=IG?+kr%U&Q>%sqMPiuz`+qRI+(>j3l>Wi3z{xL
z)73~JucwfIdn+mAjKLJz1ckE{1)6i?Im(=lkiwo?NC@V#t%)4m=q$&Du{i~%@N!_{
z_L=r=F_TOJZBdUpK1|y(Dbjog#m5;b(HqH(gF^&pl|&IaSgkGMtrfELF?OB6)MpBJ
zNi1<bLR@kpIrcBkOT<L0``i1>f{gAX*<y=3S@s8;>{P-KVurc*EKty+IC>_D38L_Q
z3Ka45MTmi7881SUkOLW!gRXpi#)o?E0AzN5i?11gaI=EnA|%dMCh#!bFO!105DRnz
zAV7Ht$9P-*mYdAxcw35H*}SNy@3vC~m+d6P3rS31U~I|44p-O(d2J6Jo~5-ui`8HR
zE#_eohM0txtixfgN_ty<=Bj~x=VC#pYfW#<FI}}4ds`+bZAoUTx8(s>?KDZMZ<>q1
zrBQ4SC8vP5rQ6jw;Qi_d7ve1MS6_717I|Clagna|w#1R`dzphu_be8mV|B;&iF<Ln
zCf<|bRQ$l*B;J$hRJ5m7;5<h9NFTQ{4wHBf-h8NvrKuHo1)?g%RHK>a8QEx$2@2aD
z<#mvBv__^mUWcYe>|)j*7E0q5G-!#mE^7<*vyASUz&fi%G{UKcz$5{u%#Hb_lO(?b
zf}9w6V)lt2W@)V)MRAm>6pi<oj-KwJ1D)xIfygGx$K<SaQERmvT-XAsUnaE|W*=tz
ztw12n9s%WK@LwJb@_ke~)u}x^`UFn~Bu5WNHLOyH>O&L?8FdHc5>1!vfYb>bE~Uwz
z%1H$upfcz%3S{&h<=a>^+ld@S+D8a`5w2Q?i?Ax`ZK)lZtU=7Va%?h-n6q_EGF#$p
z`5i-xYFp-QdBR1t+}rXWuG$K3%O+0}xzgKm6v%xmUE~|0*p)~*BHk8WiPYIfZ_7p(
zttg_wsAO#{inArzt|@Buc}Wtgb_w_IJ)pftUaWLGlrzeb=q@MIB)A#XG#tddW~z#j
zhz*0o>XSieXnV?_LR_3+OA#keWVlwy;rco_e#&@qW1j4AJpuA68W7W^wRjPdt)@BC
zRgnoTqq+h|Vve1%b;V{-689@bUum0qxBQeG;KmlZ5Dq71Gvb1to561!(<+w-y6_oF
zXl%sMv0|BLgk*2wE|r!d8LpM+m#|Lg_WtW6EDSQ!X`pGONFX}WtJ~>D*J;@?K|Axl
zLr8W1+4NZ{XgUFXC&+5MR|?dAm$=JgcmD~aSY@oKBDRRgpee=9B+(t<%Aef1qa;KW
znC&fDD_|w+w+&d_(#o1AF<~0&Ef6aEnFB3CBRWC6YPY7Ua#hbYhU%3oiAx4XRCKi9
zHPAEjl_Xj9YS>w=5yktATpXca@sdu7$TwLkiJ~1q6FWbZM3Hb7jI43G`_X}1QYAep
z-fPmuuzl6NE#Cdbu5=3W#6^DKh+D?e{fum|!oU;}*HBg>|Gp!PiJBHTkI|e(9|H3P
zXIz^6Q--h_W5gtJLL-Lv3Xa;xlFZvZm0Z}XzI1T%v?9U<c8~&|zH?Pzmmw!W^y97&
z@P<|rFNT7NONlSm2JvCm2`TtidyBg0CLPTY&TYNERy8A>NEB3t>4hpMW<p}pgoH+H
zJWjFa=OwMxCw>A9omkC7<k*pc0a(({e%Hl(m4>SQy#oVPs2i7BH<ERasJd*_?Zbz^
z%^k&62kGJ%F(dm)S$Y8I_o~vOG1>BDaP=!54tC<^d-s&)X6FkU3s-k#@rP$Dzg`f@
z7gQFmJ}{z4Q9(J#<O@0rSHF^3)b?GCUwV3W{!`?-aP_}oP{{HE@1AAnB+H?sG!4o(
zoS%(%Xy5fw2k+h|gq}FKX~1QHYP>*RQHV@gA#%lq$Xcz-@VW@czJ*8xTBANcG@#jd
z)`JTw$0m#4QmbnODsr8k1IxfCRsc^sY~P(DkU<ZfMEB>S{fTuyF-e@zh~cKQ=WYn5
zc_;oCJDGKO)rDUq-=)$E(Bb#W^j^HP`K~HnI)dhs=$kU3Xb9E_!WaSAzz<_k@#}_C
z{OoaHny&aaxY|EC#my5|oS5kx$&BU3#!_n^&Mo<DqSgX=vR<fm0fVT7#@dT?a?-kU
zVZLn_pb|}3X|)yh_#In{uqr5FkcetU!?W%jG+dI>FsnzmbA-h9nsH99r6e8cN~6(|
zC)$W|P)WHGe;3tvBb7uC_6TAAPRn@eyAuS*2zR-65?H9%nz#gde9cubh<C~oyl=M<
z*mKkIS~xRdkJbh7Gn`xGM9(|EG>JS~nu=+4h~Gu7Dbe`9!KNWIDTJ`;Ojp72wa_;G
zL>vkyXO;ga9`N_FsblCogZme(H_qm=EC}0+*%j%DNN1vN5;%-kHS8%>gG%A&qPOyl
zTuB7)y=6m7E>%gRZ<lJe6_8ItoHjG3)=wgdhC5h<F~@wweI%VNsK;tZT_AgRDK;4P
z9HHK4vND`wHHC4P(11}>Vib*WAGA?ZdR>SR!;8?s3nEY7a)cm<5v19HipD{k-J}6C
zU?gh}P37HkA8=X2HVjDysf!VaObZLWySiB+#-TINL=MfAF-_oMxmQBDc2h2Ksv?@B
z=?;>CR+9G1R@;jfC%F74(G1rkLH=HK;waA{?d|*}1XLv{E{(Y)<+-$v`Q$=(Ed<a!
zPDH%<N%5}HO})?D<!c6cAyHA=0l8`zB+*EhM2@MoYJX>Q32%T&c2KOTE^`G?FqFA!
zaB!{7)h8}wLOV%C8UMdaLUR}iUwAVq;s2iwoad5&5upo`@^MKc$1lp%An#&QTN1;H
zd2jqD@IjVtW6pInF7qiz<L(iw{p|!tQbE#HuhLC9X1J8)z#qm<m%ov;GlgU{<KU%m
z$)h=uLoF3@>6+YxdRv}j6;Q<HRc<5Q``8iQE#D^w3@Ns?3cHI?Vv8gQ2sc#5YivNl
z$qd*~(h67TrZRHirTuU=So+(f4f<x|mmbtZ#wi*2`29aL@ZFD{lOD+wyN3ov|A}>t
z6MR48DyQ#D3}TKk3=_05jZSeai{662$b*dCiZe@ameKbO<n88{^h>t1SGiZ6f_G_M
zSwL;i`Di>aAA3>1%2m{%gzR}0>PI+n4Y&EVH=|6=0RIPjL5f;N_Np*-TKbmt{s;J3
z)HWb2zjf)b@8vD4ofrJ!HG!1d0|6EAu`lBV{S|!wjVlfOf5c7^oxs=e`Wgh*=&rj7
zg{gN~{dNtMmG2(U$Gda<RFAJ0&&4Yw{i7B8Oqk^U1Ii>n7eD+1KfJ8xk2${gFVHp4
zUqkA<;1hXA%{;m_%cp<Qb@1R;{Xc84E*n>ta{s`u<b5gow_qT}zzGocRqDQ<xTgIB
zNYJ^3ecGP$2&FkyOVdMop{jS1zqo}gxaUyizVGa}x1<us|J0Pc1HOR7AC$xwlK2xn
zN>xEz{9ZX&^)4@j@`gw9&U?_lG?gr69zmz11q(>FTax`N{<AjwODSYS?=TcVQBw$<
zD(<U5b=iXAI&^;zTAja<biYTso)o&g0UCT)^|)Ks57~r<z0=??_U+#zk1mkxll{Y=
zHra<1Zb07hu%D5*QhleN@y3V_@Gz0xc2VWxJr2uL`+^;&T!;S)oM?G4t-oA2PbG1*
ze<}LwN2t~*wo5wZ1P*BO=MV4YZ{*Z(%Ivi-X#0W|eJ#)M8pm|cZJz)Oucub+IZq&M
zKe%5x#D2R4L}|V!`>~z3|AcF@=ti8%kq9p8f)Ibr0K0^6clu+}7~B0MKr>+5Vc9BI
zM0M%nBXA4R^D&PGw(}6_NnAGq`AN{iCz0O(3-p3%UkJ|VuSvpPoIVKJk3cx-D_WNf
zmoC$&OPDrn&#@WWUi+D&3(s<sx?CuAQAAEumqK+>I0P5XOx0x)bm6e{K^ebP<_xXO
zEnv+7#a}33w5Iic(Ee9QIlNL!phze0!a=FisZ?fCsW(uZRO%+k01-}7sd}{1G03G9
zz0zVYy$>E~n$1QN(M_9B=h7_2_k;E)&mT{(P54c1r!Dom25I|Zpo@zq`|YtQdacJ>
zypz}Ko8sM{biAST;<cYNy(-Z}==DR)R4%>rSPTjoQ@d(}%m03H8dUlsM`C+UHPZHy
z=Ny%|z)W`44{*Ww<j2zUX!Rt=k6k6(`;$XwCrX6u2@F7tP``3Ecf7z|Q3y1={NpMA
zW-0$p%!&3lpLOJK0@<YeZ{sHH$;+Pw86mMHb@;2K;nLwvln5Poo5`gEFU#5Zjg}C=
z{>cx4m5k-;C%nA78o+Ec%Dw~j36K3XiH7Nf(=~sK9kk;p<6^>3;@$RWOpI~-r)z`m
zBP-jb_%ntTCx9UDChzUywfNxJZtvd1vUoj;1*f6fWVzZ*PPUn++d#9FXH0%c$-G6S
z%jeBsuzcR4MK>-o{Uy=zXspqkW9CJs@ZF$zCJjQEBFZbSUbe12vU=H?x^**_EvyU|
zuU@sRsAgrPJhFb-;&4?>VWehlI5Mv;8d+alUsD%dmR@jag`iV{|6O}-J<#fFYr_%A
zliw-y3t~03mCJ6fT|1+6Wo@)Dytbx7Ff5!`u=x7rH<!!^OuwQjc;&LPD=!yV5@S)g
zYHq!h?B;S%Uw?B=c-@SW`if;G^?0*Aw>H)o4M&!xO0cZ3DLkl%Y?kH6qV?B@>mWDY
zkn`*UGt<C82oSN?=;s$6yxB1f6W7)7gbKU{7A=PHY(}a+)a36gqq3%9q-ujMjYR!Z
zOaYxfrAYjb*UY5h&63jmMWv?jgsaW`TKu2l<<XkDRc1qdeXUtlA2AoelIYX&Xt)qv
zW>%Hg)P^f3IW&jnJFl)%VWijBH>8R+WPP%^F?W$!UEXLGlvkQ1HLL32sgbbI1H!oE
zGW`C68*eO{mw&?)e_+m>=~JY)8pho6+KN~$q%R0JMvH6e7s4|jf#49XGmLQEs%r@K
zQ*6vNEW<QPjIa?gYK(HD7P)-<AN2WvbB%hV4*xHG1h5wWh+`THP*#IdiCtsdj#kVO
z*E9+RowWkjFixJnmP|r_5hRXQo0pi=r<k+nnEpW1{Iq9rQ4y;Bix=Ebdc%}Ls9giI
z)zsG&#Hy;o5p5VnHf6k}jpu^$#_+=Mn)=9kjPOO_hLUJx+1&bu^(b2sDQ{>9M;!Mv
zPF5}q#YjasDUwW?lc14*ZGBCpdGQo809j8~zAuI&^+U<0%yt46Q<6-DfnlTh^^rB@
z(UX^}FuXFh3T7(_M{3Gzi|ZqZgsMmwO@?7}X<qr4%)D}cUgeal0mm4t7OW{>6}HOj
zDr>`oxgOshjK2l-^-=I-q--oLUs)T53?eWORRKv>m6Q&}##mKQGGzJj`h)zXzvw_x
zUq|*slsS&G3ejg!r@LJK)A%il)kSO8gojjlm^#5*PD=$fb(M^EgC+PhzS^vk4x>t~
zpnJS_98YYAaRjE)1TsBX0KXc)2;oFFFEj&90r_Cy&zWNeq>;2=o6A=fS5z*aU(*z>
z%#VtRb2$nYmN(U`iLJ?Rtf;Axlw^ZX9aloXy7F4Y+;AmCJt4iytHN&GD4~Dof$c=0
z!kV=;jhJT8145&cSOq+{(O6O*siWSD>sHs*ud6e!uU+3z4SKq~FkBmshRykyj>L?h
z%a=rI+{F&Q5~H-f-Yi*zRe`i#k{)JC3^-14vZkmWGtRt7q+YE}7SyeUF)GdC@<{m_
zaMnwf#dVFbh6W7paHVL-iAwP*skuFD49E9|`lz`mTwclTF(0`sNOF{V6i4c#;R@2e
zF%~uJtI(uT1kOg;3V+X|zBaZdj2S%=i8Vx>{QQ_w@rHVHVYsqJX@v_6%$OC`<#nrs
z#FS%xeXLGOkJD6PezP!KSEK65v!TAOQB1oA=&eEMN7qORN-_9MEUUCUq}RyRhq6b0
zZG>7nW%(<mtrpB(Se(=rf8%9-X-b}&*H>T-qWWM#T}Azx2Fzm!Y39x0NFydR@+=8g
z#L(sI&6{iLG0m$|%=?Sx>ZU?8O!%~)V+$ySC>gFa{WE6K8I$>$oOTR_KOd_d(O&m|
z5eyeYgcgPPnhU8S^=oPxK`QAz$B)yD16aG%MLEcHVnH383Ik4t1x;R$ANrD*?oV!*
zJIf%$KlDWAj6=;(jn@<7x45pR0+G)hSdttiMeHsjb%;47nAhi8`HQAsiJ4u>GR^cK
zSDT@zo1B(E-4H`Hm8$x6C{#k7m?*jt++N1dDJLk%;D*ZLv+FQIF)A3`@!xqEGQTQT
zQ^}lR<OPCFm*fR5cfMvc<ppLiCll#VG{Tpp!zoeInNfKekok3arD-yGHNPZ}GPcXX
zS{=8E#Ir(qcC~`d3T{_$w}OWiv=!`EFt<w5F%=9bXen5xV6}ox3T{(yhl0Bm>{9Ts
zg1rhJQ_xUxC|5yK!GMAx1uX^36s%UTNx^Lj?o@D}f;|epuAr@8zk<1(l<)+m&zO1n
z6<1yroRwcNw{YJ46PYhD_btBi@}`+H7KPW8V<nQZp5~Gfv%a3}KaJjkdIS^15cpGL
zO~o>iUD#ORL=(TFH&ZPh{QmsP$_QrKDPZEiBhXZZCs0*oZorme$`ogb@o9XED{AIe
z1w|m!DZ%r2^szg0=pPSnrVCG6IrST-Y{t|0{9=v#u=b`U6Td`=lPvyu3*%nQ68!Md
zb@X+<{M?CheioG!mTa3=ciu17{MCB=z!jUmu=f<cK2Kfq{Es+`NZl>tZ;GvinBtkL
z6AE5Gx3s7W26_{D{Ws4Z!db<*TU6e+Mp%V^+iX0}<MiJ<qb)0;yv+M<zy0>gm2~w`
zy<zY*vi^H#Weqs)Anlb{tl`mrzfJ$0Gyd%|fv^6a8FBc0fBHE~SN_8*r+)o9W5<D-
z$Tb7YZolo9cEgRGzlwDP@(zvvM%|Lp*R4VQELm?n_Lri4)ejea@91OKURRv??H}ED
z&r|PLUlDq2+JjGBH~CkKEz#S!6z&N&lfEyT--hv!I)6Cmm3j8(P>+cp*zqY-@ZfTp
zKdfMAh0Lda>-t`WmtNm7eaFPPPn^B*;jVF`FFf!5FE46%<NLpC4&U(Lnb&@M@$=Un
zn6~cr+#~<`i&MWn-`IB1b=?co+Ygs#AN~d(+P4=l$72}PNaq4xGD@ar1Kx@c*Mrr7
zlVKD7(L37a0obJ(Y1-!{*k&uzw9(n{fo(|hedUMvY)ATIz?*Syy94Pm!0+QIo#hV!
zK002e3F~p#wG-uA0SnJIjNM2Ro(G%mLz*^Tj87NRwDUdq^dNmN;A$M1vAh=Ww9iSI
z#{*t~&ta7N0FU7FI?`_fZaEKnBfS;yQG9Hq2@k6@VaECR`+g|T0{nM;8j$V<%rkLb
zhqNDX9zI44$LWAy$A{(H0Dp`R%Xb6Loh0pC2zVbpq_Z3F1AMBH{unTEfz;(F;8l5s
zk&U)Nz+?EV0M4HQb1#%~5|-gZ`h*XuG+{!ej{<JHNYW?#2%lWwe+*dSmwmAeum>N?
zLzs^>1#MUecn>}kfqySx^<}U<(u6iXl!tK44A=nW;{b1)DSe|B@Ns+sD1QQQ)a5dr
z4fqXwf}{!f5k4WLKL)(N1olIE2jIw3=|9<k75J2)yb|yZeApM;0pG=kG8_XeS}f%!
z+<_0v3HzCjNytC1#c~ty3rwTD2(S_#18KqyDoyx3d}xy$fX}M*^MJp`hxmja<3l=G
zOAO=Z_>lf#!27Tg5;6d;LyTnqHUZxFMVT%J9J5s7i~~G`4}In^U;>|N&^!uw8scdK
z(&GW=<HK?ba0APMPq<s9A=RKKV|0cw8c{vtlnmn(4GUEMD}ZNY8fRpjuHczQ27>HF
zmY<nnoJsuCGK|wMQ2A#8PtPz;e?UQ&GhYD6c7$0OMi${YnZ`L87b&_^WI6FE4`EJ*
zk+V|eiO=>A08&oYlP~M>E_zhPsj@xmiN|t6;*me|=Xs3tGG-WOHk`3y0(SnQeE}f(
z5K=DUWoH=K$UDyp*c6%GN9;$AJ<|V((UIMe+cB}j?C^I4I)WXc4y&WMqpV{^M|DR-
zM^i_0$JUN*9osv0bnNWd-LbEutD~pmaL4N%y&ZPPv5x)@<I(I#b06KdYsapgyLRt7
byzBK{y}RsP$95T*-?)az-jTZlz<K@?q3-kt

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.inf
new file mode 100644
index 0000000..00e3b68
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.inf
@@ -0,0 +1,204 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   SataController.inf

+#

+# Abstract:

+#

+#   Component description file for PCH SATA controller Driver module.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SataController

+  FILE_GUID                  = BB65942B-521F-4ec3-BAF9-A92540CF60D2

+  MODULE_TYPE                = UEFI_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializeSataControllerDriver

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|SataController.efi

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x6F98

+

+

+[Protocols.X64]

+  gEfiIdeControllerInitProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gSataControllerDriverGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+

+[Depex.X64]

+#  (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.depex
new file mode 100644
index 0000000000000000000000000000000000000000..b1a5ceab3b2eb73466f120b95a1915810dd0401f
GIT binary patch
literal 36
scmZSDU00wl<#k1HmIcEEb^C+9Oy52%7WPv6VE5_4y`w@V`X<aA00;~YUjP6A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..5e689a9b390082fe56621efd91e754b4c73a4ecc
GIT binary patch
literal 25600
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
G<-Y(^-ZfkR

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf
new file mode 100644
index 0000000..ff15e86
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf
@@ -0,0 +1,210 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for the SmmAccess module

+#    {1323C7F8-DAD5-4126-A54B-7A05FBF4151}

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmAccess

+  FILE_GUID                  = 326E9CC6-9839-4885-B2ED-275903B668E1

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+

+[Binaries.X64]

+  PE32|SmmAccess.efi

+  DXE_DEPEX|SmmAccess.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5DE0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5DE8

+

+

+[Protocols.X64]

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7ac00dc993489f35ac55dedbe2f64737329ef2ab
GIT binary patch
literal 27136
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf
new file mode 100644
index 0000000..2f416a8
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf
@@ -0,0 +1,129 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2011 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmControl

+  FILE_GUID                  = DD787473-07CE-4c63-82CE-930B33F39C09

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlDriverEntryInit

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+

+[Binaries.X64]

+  PE32|SmmControl.efi

+  DXE_DEPEX|SmmControl.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x6010

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x6018

+

+

+[Protocols.X64]

+  gEfiSmmControl2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..4bb6074e530b68b05103418ff7a5cc63d3cbbbef
GIT binary patch
literal 126
zcmV-^0D=Dkx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
gGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj%K0|NsC2pp3&(f|Me

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e7fd5bae69e55c6e5912d58c3bf5123ebc0a9fbc
GIT binary patch
literal 55168
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
BkADCF

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf
new file mode 100644
index 0000000..33f7a05
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf
@@ -0,0 +1,259 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitDxe

+  FILE_GUID                  = 93C81A74-B648-4f7f-925E-E4A0CDCC776D

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|VlvInitDxe.efi

+  DXE_DEPEX|VlvInitDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xC620

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xC628

+

+

+[Protocols.X64]

+  gDxeVlvPlatformPolicyGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+

+  gIgdOpRegionProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gBmpImageGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.X64]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..bd23d618afefc089f9d05106958bc03d862aa62e
GIT binary patch
literal 6080
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
G`TQS5A=ugg

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf
new file mode 100644
index 0000000..48f7908
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf
@@ -0,0 +1,123 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    CpuPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for CPU module

+#

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = CpuPeim

+  FILE_GUID                  = 01359d99-9446-456d-ada4-50a711c03adb

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimInitializeCpu

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|CpuPeim.efi

+  PEI_DEPEX|CpuPeim.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiMasterBootModePpiGuid

+

+

+  gEfiSecPlatformInformationPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.depex
new file mode 100644
index 0000000..4db74a3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.depex
@@ -0,0 +1 @@
+�n�*��4A�V8T��
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8330a83cc62be5e5c7900746e5d09a6dd2fa8d71
GIT binary patch
literal 93888
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
Rn$p;MA$=&lI;%G8{{qS9iKqYo

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.inf
new file mode 100644
index 0000000..ce85f09
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.inf
@@ -0,0 +1,196 @@
+#/*++

+# This file contains an 'Intel Peripheral Driver' and uniquely

+# identified as "Intel Mobile Silicon Support Module" and is

+# licensed for Intel Mobile CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor. This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#--*/

+#/*++

+#

+# Copyright (c)  2005 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    MemoryInit.inf

+#

+#  Abstract:

+#

+#    Component description file for MemoryInit module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = MemoryInit

+  FILE_GUID                  = D4EE25EA-0B48-43ae-A016-4D6E8B6C43B3

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimMemoryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|MemoryInit.efi

+  PEI_DEPEX|MemoryInit.depex

+

+[PatchPcd.IA32]

+  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|0x00|0x1693C

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|0x01|0x124D2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|0x01|0x124D4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|0x01|0x124D0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|0x01|0x124E0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0x00|0x1693E

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|0x01|0x124E4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|0x02|0x124E5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|0x03|0x124D3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0x00|0x1693D

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|0x0b|0x124D1

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|0x0b|0x124D7

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|0x0c|0x124E3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|0x06|0x124E2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|0x06|0x124D6

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|0x06|0x124D5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|0x20|0x124E1

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x124D8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+  gSeCUmaPpiGuid

+

+  gSeCfTPMPpiGuid

+

+  gVlvMmioPolicyPpiGuid

+

+  gPeiCapsulePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiGlobalVariableGuid

+

+  gEfiVlv2VariableGuid

+

+  gEfiMemoryConfigDataGuid

+

+

+  gEfiAcpiVariableGuid

+

+

+  gEfiPlatformInfoGuid

+

+  gEfiSetupVariableGuid

+

+  gEfiMemoryOverwriteControlDataGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/RamDebugLib/RamDebugLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+

+[Depex.IA32]

+#  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Fa$* /Oi /Od /DEFI_MEMORY_INIT /DSMM_SUPPORT  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D LPDDR2_SUPPORT=0 /D DDR3_SUPPORT=1 /D LPDDR3_SUPPORT=0 /D SEC_SUPPORT_FLAG /D FTPM_ENABLE /DDDR_DUAL_CHANNEL=1

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..16d8e503f18c112a080a7c865962ff3396eb53b2
GIT binary patch
literal 14752
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
F{0GLHl~Vu!

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.inf
new file mode 100644
index 0000000..685a680
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.inf
@@ -0,0 +1,97 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchEarlyInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Early Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchEarlyInitPeim

+  FILE_GUID                  = D9F5B28C-9FF1-47D6-B503-3DC23BD345FF

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchEarlyInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PchEarlyInitPeim.efi

+  PEI_DEPEX|PchEarlyInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4A0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.depex
new file mode 100644
index 0000000..0e34453
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.depex
@@ -0,0 +1 @@
+sF4e��K���
a
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d1907ecad347f4636adeae8dc01f091e90ca335e
GIT binary patch
literal 11776
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.inf
new file mode 100644
index 0000000..e3a25d7
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.inf
@@ -0,0 +1,136 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2016 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitPeim

+  FILE_GUID                  = FD236AE7-0791-48c4-B29E-29BDEEE1A838

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchInitPpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitPeim.efi

+  PEI_DEPEX|PchInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x27A0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## CONSUMES

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  ## CONSUMES

+  gPchPlatformPolicyPpiGuid

+

+  gEfiPeiStallPpiGuid

+

+  gPchPeiInitPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## HOB

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPchPlatformPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.depex
new file mode 100644
index 0000000..028e7ac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.depex
@@ -0,0 +1 @@
+5�c�2�I������l�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.efi
new file mode 100644
index 0000000000000000000000000000000000000000..599f60c27969a0f521cfb0d385a1c84308f570f5
GIT binary patch
literal 3136
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
O$enVR+%136gZ}}f2L;Xm

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.inf
new file mode 100644
index 0000000..9197f31
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusArpDisabled.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus module

+#    This version will NOT include ARP support.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusArpDisabled

+  FILE_GUID                  = D82D57AC-99F9-4c7a-B591-BBCF8A0E7FBE

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbusPeim

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusArpDisabled.efi

+  PEI_DEPEX|PchSmbusArpDisabled.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xAF0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  gEfiPeiSmbus2PpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiVLVTokenSpaceGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPeiSmbusPolicyPpiGuid    AND gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8ae071933bc183caf3f31cd4c5238e456b20ed54
GIT binary patch
literal 4384
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.inf
new file mode 100644
index 0000000..1ff50fd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.inf
@@ -0,0 +1,125 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiPeim

+  FILE_GUID                  = AA652CB9-2D52-4624-9FAE-D4E58B67CA46

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiPeim.efi

+  PEI_DEPEX|PchSpiPeim.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1070

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSpiPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.depex
new file mode 100644
index 0000000..05a6cfe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.depex
@@ -0,0 +1 @@
+H�t���N��ľ���s+�N+1J��V{PD,
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e23277b217824ce7855f4899f29aa0a3f7727872
GIT binary patch
literal 1344
zcmb_bUr19?7(a8<t-Q7y%^Kmug!>Q}Bfa(@i&)Kzl`}TopO);8rDoDU_6KZgY%L#d
zhYJQi^w2}0d#RWHz%r1yYvQz`SWiL_5(KkJRE8L=)_1lk%j!k?!MW$2-}n2z^L^)>
zuk9q-H12QObMuZS4k4pN`dfenR90Il*@pCG2rU#X!|<<x;gJ;x4NPQgguc9>BYfpX
zV{uLYgZ~??fp|4wxDES~`F}y{?-}qzu)1Phq*hX2DKrT6X}i1pT|iF3AhnCd8K!mU
z5t`L{d(K@vUC5E-tN|;TOQA>Tu+5JB42_2v3R@VJ(7ZF(^wTG6TJ=$UD)L?$Uo2aW
zX5{>gFtjW8gHJ6_WN|Y?xm}5u1=#CFa8_U=L-Ef+4L<hedmy}f!kw_<r4BnDri3=i
z+>iPZmiG-n&i0&1gXbgDs*$&WYHX!!%9vLX`6O`#<oI>E0#bD2M5i+mS)#DSia!b#
zM$vB0nf6467<#+I5s<Uu;!Tisq#Gm%;dzL&b#e<rp~Wz;HoMTONJ_aQhNDkMVY{S3
z1uBHU^F~H37-UHlg!dJVMtK7r9;OjUeDX;+>rlqP&IyBR(9!q{<|ye5FIUFmI)lnr
zbv=b&q&r9)upWveW#Jj(Nwm6Fl{W>nI(-G~Zda!>GEF6bP$**-hSHg7Z$&<S0?v+3
zBJ#T7Plb&)RJ?)}6Ux{#8}^6Q*WLseTy+V;-tm*z59rV~R6>N~G9WUQ{Qez~?GrhC
zda*?LSd7e8^zsr`bde*6V-vV<JeS2>Rw+?nZpDoCSrevn?P`Yue{dE=w7`8X5q%Y`
ztL^<Yd8Hy}HbMy_;$;~tW~7)~C0>yApLn+t*Bw0D!i}Tas|O}D4?(d&RKD^$@pxVR
zvGLtwwn0<#UcwPTuZ28N8v(h7QdGgh17iy8WV9G8M$!XL;MV$s^!+Qi&itA=e*sMS
zKG;Vz#oi#7PBzqf3j~SfSzj~3V6gkt8Cb7@^zmpzuA!QJ#7?r)>>NARc&o8s{RL;=
B6m0+i

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf
new file mode 100644
index 0000000..03b67a9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf
@@ -0,0 +1,124 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   PchUsb.inf

+#

+# Abstract:

+#

+#   Component description file for PCH USB PEIM

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchUsb

+  FILE_GUID                  = 3B873142-4252-49eb-BF17-105CD6F3E808

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchUsb

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchUsb.efi

+  PEI_DEPEX|PchUsb.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x470

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiUsbControllerPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gEfiPeiMasterBootModePpiGuid   AND gPchUsbPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.depex
new file mode 100644
index 0000000..95be042
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.depex
@@ -0,0 +1 @@
+=d��I��B������[�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..92cc991d43c41955a987418b243a732554eb6ec9
GIT binary patch
literal 1664
zcmb_cZ)jUp6u(Jcnn(6#-y5NQLOx{hkbxRfUrVV$h+TqHA~tg~%VcY-?bNYONt5A9
zgs|tt=Qa3AKlx!r{V@N){Im{5lD(32qk|TP2!h0_BO?{21&NaF`8!G4)zN(^9=PxP
z&N=s<fA_rm>|wTTy0Gn&+dnuGV=V4){l`I-Id|`HJiyLDUF=xiaxxacD!SW>02r-%
zDc{xJNBSN28auLlAN^M9G5GVtP(@tg{}%-_lW%6=>?~@ex~Nv-n<>E9tHFu!%s7-E
zV^QtrIvi|+B8)8r(~~D&f4Q9_<s5*O_-2YQHvB@8XEd4TG>IS3e1&L_J#=SU7-~#Q
z=CZNkD&2IheOC9F<wCC4zHKhAecI$vO&UFFEw(AySHxkF$2G~kirqMqT>AnWKR+~T
z!KHYUA|B+c#;*-yReB!r{wc&YIdOa}$vyT+oO>V!633+^2~lm2F|StGYtvKXwG*hH
zFV%My5@PL3;J1rerTb#S=~}Mk$h2_wO7<81$Dx#ZDy9F0U~=J9fD3(lO`(TJ`vf!E
zBajwY1Qx+1aH^DaGB9x;xUZvAfmP`I;Qnw*O`k_fvU$i)tP&Bw#kI7d)Gw?<`MnM3
z`>6xV5w*3k9C?tqufi~8`4)-@OSm|K=$dSlM01~LXCQgd0yUKyJ*pR9<i8zhwT~Jb
ze#V#XnnT5TtMs#*N0pFK6^sRz>6-J9vf};$14(_Jv+?=lI;4tw3Ex|fxRkrr&4x!^
z3LNzt6H4fJBd&xTCM3OB9#$L{Vv6X86i(cYyW*xv@rHPr=e+&x_*pM68&xM|;%Q}4
zSB)EYc*Vp%Bkm3DGNWGd`J}=yFk5)dpH{XgqO{_!xTyxg!C0q`hbdjeg;!i_+pCOB
zF<{6mhvubyr5o;{!D-JNnwzgH_8<cKjmv6HL{CzB(Huk)Motr0*2PO!_-f{FbY0k=
zs5P3lZOls+P3fv!h}|+{O&)7@J47D)vv9DnpGTS_T(lD*9&4mhbTyZ3bh<7bGa5n$
zGdb*ZEp=aX9t)SUt9sGmm#ta)Im6EE?%8<)!$P)qcA<sD?9SQ67Lu~A3l8hCqD5DC
zA6ow7tEt87^3&g(JoEMKy#2&^{ey?DEq=G}-QIWHk6Xd-Hy_&xVGOGY@3fxUdmv74
z$Pwt)-xqo}_h5)yvNm-Rrq(+Wpgo<prHZrkwguB|1^F7=khPhanTeNPfxJ$%_c{Hr
VKB>Q<f2f}xI5Y76z()gZ>%Yd}i!cBH

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.inf
new file mode 100644
index 0000000..2b58b58
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.inf
@@ -0,0 +1,119 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmAccess module

+#

+#  Revision History:

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmAccess

+  FILE_GUID                  = B4E0CDFC-30CD-4b29-A445-B0AA95A532E4

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmAccess.efi

+  PEI_DEPEX|PeiSmmAccess.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSmmAccessPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiMemoryDiscoveredPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..0e4ef35820d1b180c1d6139915747adb7faf9d0f
GIT binary patch
literal 960
zcmeZ`VjvrAAX_K-8UtJz7<?F+Q4Dy%z@*5{$j9&iD0%=Yqrk+#0KyDVr3yeM2&01o
zKzXn_paeI%B$O|JLmZp%0-$*^KnVjVjZF<XVtOU16(vB8hkzL5-Um<`NWp;u14D*h
zN@7VOP-G5B6zGNpP#Q$RfCB@=3B97!ocv^nTS0DC07`;rWZ=NS;MDD+!jZuNlnChN
z_#Y?{8F{#y7i8{279i2x>CnK>(D<<7KLf)K1`Y;>wC;;(@3Rzo15F~{Hy<<ra^E(e
zV0v$S;BZ5YiU>mq+YX@98x8{v<q2**P|DhH`u}VGZXXqq){`Z6&6bR%mR%ArX8-^H
zzx6<cF%FC1<|@A5wF&6luEXz)4@4gZn;Z?YhX-!Y%K)HJ$Uef#egF~$#&LrT&`Tmf
zoB?#?1t4Z>KbBbM>+IkAez`O2xss#kx_N;D0YK~n)C0oq&LKXaxH$wA1IL$2ZXQ?<
zP|g4(28|n7+R!V42!Qm0%z^M#s;a6|lG4E%Ap|HrsT!FWSsKkXT4cmyEMP2REMW|h
F0{{UZe!2hv

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.inf
new file mode 100644
index 0000000..fc85b5b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.inf
@@ -0,0 +1,95 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmControl

+  FILE_GUID                  = FF456B9C-0DC7-4682-9E92-0DE84B6E4067

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlPeiDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmControl.efi

+  PEI_DEPEX|PeiSmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x300

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.bin b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.bin
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.com b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.com
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.depex
new file mode 100644
index 0000000..3ec1c91
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.depex
@@ -0,0 +1 @@
+�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8e9fc865872c0c751c0d6c26aaf854a20d6ef3b9
GIT binary patch
literal 1856
zcmbVMZA@EL7(TbXv_M;Kv!G!KN;Q~hVsN3Ri7_S>MM*5Aq*8{pg*k?V=`iHhITGR}
zmnPanlf~?(CSXj=5`XL$+D>P0E&@s%PU6;RqBt@<q~q&{tQJOnP78_*{J}}ieb4iL
zo#%b;$=mn}IrO@8=*Ytddg}@C2*&>;m?MUVEJ7J^i-gQ=TO0;L`0g+j6b=Z!_b#`&
z;K%iry~b^9KR~~q+JSr(FpS{d%KaP;sjHDsy(1&`VbsX$;<a+QdpQW{uIW4>pMdf+
zY+ieETSEM^+=NWk^qqR6_hf-9=j?!$%iYUONL>rP?WbXDw}M=LYRY*ls43QHZSEmG
zq?=#h&v_l{cx5Q4Cx{@Bcm*jV>`yRD5Q72G4!DqqMkAmD@J1erBH%H=DM0oKK9OYj
zfzc<A{je41A6jCW8vK@!V)DL?V`owywL)Gb0wMB|(Z_LC=Op<LHMyx~3~&GD^S361
z5o1GKAvVJ9#~VqYn!9m3hvovb-;I}ZnBf#mNE8=2Tm-!QJWh0)eSoubJuTgtM6^3>
zgX&$VXeN?7myWx+doM6hDNLO>N}sQ4%cbg;qtDn=6>6swp@5FQHM1F95J^fyRgk_`
zI#3*I+{|~5n)AJD&G)W+7tIc&1Kgq6%;CQ@>i}u6BJxYP^b6FZERKUBeouLPoO8df
z-7IGh!be*c2N#G0=j&IJ+;Wwj1O;urJl0f9XIU1&`6Inr$2>U2niTdCq%_uOrzv_(
z{asSOvuigiEZ1U9BkVDlX#Hll2QSVG#-ciIjWrFi9_TOf7Rly3ne<avfb8i??#w`M
z$GOn6r+J!G<X3r4OCMF{&C;0eZDl10X=@9$2k5P!?u))!ZB;e|xm4LO$VJMADQu3;
zvZL^UcR*!CwyDf07pqK=jrib6@IK?mN3+iLum7?V(nW9Fj;56PH6>>XOYsIpA}omn
zbX8s0lE!A#MM19QpCjs`7``v&?^v?I?8ae5nJ!Bkm1z@lMD^wN&}984OeCNVY!W%^
zOmdF?I6*_5>+Ccv8nYL%)m%=^7|#kX;J@p>7Jn<v(zOqd)2ZxNnLMGNmeAFS!3Ca7
zW8xzumm`)5eyg&gej|2KIILRk(211<51{&rwpg;Rp~Q`}kmb)Q7|>DUcGk;<tg}lr
zb5PcpPejTtI!h<-$%Ry$<IneSJUCm62u`56H(Mx3^?;5#{%4)<^;Dg{lxp}`NZeZc
ze!zdWD>eOuOY~f5`}En`Get9)t;$;%Bg5D);pra7!x_d)+i&rfd9lBQFW)ad_p--<
z7(Ns8^RfEPGdzxuB{$^GEF1ymv$&?OFdTU-&r`tF{r&x&ue}a@(Bkv_(b{Kf&pC%&
P@41Fu=Uo?EJHCGdpQ7mr

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf
new file mode 100644
index 0000000..665948b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf
@@ -0,0 +1,101 @@
+#/*++

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    SeCUma.inf

+#

+#  Abstract:

+#

+#    Component description file for SeCUma module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SeCUma

+  FILE_GUID                  = E4CEDF93-672A-4782-A7FD-5FC6D239377D

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SeCUmaEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|SeCUma.efi

+  PEI_DEPEX|SeCUma.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gSeCUmaPpiGuid

+

+  gPeiSeCPlatformPolicyPpiGuid

+

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.efi
new file mode 100644
index 0000000000000000000000000000000000000000..22c7e70676f927d4ce2ec6e41c61b9f6daeb14b1
GIT binary patch
literal 8000
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf
new file mode 100644
index 0000000..45dd9b9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf
@@ -0,0 +1,152 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  SecCore module that implements the SEC phase.

+#  NOTE: This module was replaced by UefiCpuPkg/SecCore/SecCore.inf

+#

+#  This is the first module taking control of the platform upon power-on/reset.

+#  It implements the first phase of the security phase. The entry point function is

+#  _ModuleEntryPoint in PlatformSecLib. The entry point function will switch to

+#  protected mode, setup flat memory model, enable temporary memory and

+#  call into SecStartup().

+#

+# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>

+#

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SecCore

+  FILE_GUID                  = 1BA0062E-C779-4582-8566-336AE8F78F09

+  MODULE_TYPE                = SEC

+  VERSION_STRING             = 1.0

+  MODULE_UNI_FILE            = SecCore.uni

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SecCore.efi

+  BIN|ResetVec.bin

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1CE8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## PRODUCES

+  gEfiSecPlatformInformationPpiGuid

+

+  ## PRODUCES

+  gEfiTemporaryRamDonePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  Vlv2TbltDevicePkg/Library/PlatformCmosLib/PlatformCmosLib.inf

+#  Vlv2TbltDevicePkg/Library/PlatformHookSerialLib/PlatformHookSerialInitLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  DeviceCommonPkg/Library/CmosAccessLib/CmosAccessLib.inf

+#  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  Vlv2TbltDevicePkg/Library/PlatformSecLib/PlatformSecLib.inf

+#  MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf

+#  MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf

+#  MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf

+#  MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+

+[Depex.IA32]

+

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.depex
new file mode 100644
index 0000000..00c2f8d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.depex
@@ -0,0 +1 @@
+²�}�"rC�,�2Ӧ�;���\�J���B�.
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7152888719c4c31ef172a954f6e8d03875e95ac7
GIT binary patch
literal 3104
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.inf
new file mode 100644
index 0000000..a032c7f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.inf
@@ -0,0 +1,101 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the VLV Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitPeim

+  FILE_GUID                  = 24169E35-2454-4940-92BC-82321A2C7562

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitPeiEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitPeim.efi

+  PEI_DEPEX|VlvInitPeim.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gVlvPolicyPpiGuid

+

+  gVlvPeiInitPpiGuid

+

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  gVlvPolicyPpiGuid     AND gPchPeiInitPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.depex
new file mode 100644
index 0000000..4cbdd53
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.depex
@@ -0,0 +1 @@
+�������G����P���ƣ�^�H���3����HN
2��G�,?��f���?n�FO�)�S=Y(mEK�GN��2v؆�}��J&�>����4/4t+p�
�1A�F������k��
a�F{�Z�~�'\������I�K���
�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.efi
new file mode 100644
index 0000000000000000000000000000000000000000..18d5afc9c7ece0cb77ab73bea0dd14b7196b20c0
GIT binary patch
literal 8192
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
bA>+Fc;l;jB5X#Uq<bfd%40&M41C0F(I$^gm

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.inf
new file mode 100644
index 0000000..676b9b3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.inf
@@ -0,0 +1,182 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2013 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#  Module Name:

+#

+#  DigitalThermalSensor.inf

+#

+#  Abstract:

+#

+#  Component description file for the DigitalThermalSensor SMM driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = DigitalThermalSensor

+  FILE_GUID                  = 5122FA7B-17A3-4a8b-89AE-A93ADE92EADF

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallDigitalThermalSensor

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|DigitalThermalSensor.efi

+  SMM_DEPEX|DigitalThermalSensor.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1410

+

+

+[Protocols.X64]

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiSmmIoTrapDispatch2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiMpServiceProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/DTSHookLib/Smm/DTSHookLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/PlatSmmIo/PlatSmmIo.inf

+#  Vlv2TbltDevicePkg/Library/CpuIA32Lib/CpuIA32Lib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/Ksc/Smm/SmmKscLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid                   AND gEfiSmmSwDispatch2ProtocolGuid             AND gEfiGlobalNvsAreaProtocolGuid              AND gEfiMpServiceProtocolGuid                  AND gEfiSmmSxDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.depex
new file mode 100644
index 0000000000000000000000000000000000000000..cce1aa8782d7783ac5038e755ab4a29300bbd39a
GIT binary patch
literal 108
zcmV-y0F(a$;%HVLfrQi%yzu~l$2^FE0vPx~WMX4PPPK4-x-s1(Qv!|%m+Rlp#!0?Q
z*#@Pu4u%5VYvBI}VWviVvRa&e#V1?>x`?Y=;^1^fwyn4l_J|zT0`~Bu6G|rVKJwt+
O#S%0xGy?+z0|N-t=rOkd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.efi
new file mode 100644
index 0000000000000000000000000000000000000000..594c9fa927648a3c174ec7de4ff9f2edbe52c897
GIT binary patch
literal 4384
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf
new file mode 100644
index 0000000..b268a39
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf
@@ -0,0 +1,213 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

+#

+#**/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = Dptf

+  FILE_GUID                  = 1D000AE9-756B-4937-B736-1F3D96A5A8F0

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = DptfDriverEntry

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|Dptf.efi

+  DXE_DEPEX|Dptf.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xCC0

+

+

+[Protocols.X64]

+  # CONSUMED

+  gEfiAcpiSdtProtocolGuid

+

+  # CONSUMED

+  gEfiAcpiTableProtocolGuid

+

+  # CONSUMED

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gDxeVlvPlatformPolicyGuid

+

+  gEfiI2cBusProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/I2CLib/I2CLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/I2cStackLib/I2cDriverLib/I2cDriverLib.inf

+

+[Depex.X64]

+#  (gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiAcpiTableProtocolGuid AND gDxeVlvPlatformPolicyGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  DRIVER_BINDING                =  gSampleDrvDriverBinding

+#  COMPONENT_NAME                =  gSampleDrvComponentName

+#  COMPONENT_NAME2               =  gSampleDrvComponentName2

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..5066c0763638a39ff33c71c6d9759850f116e542
GIT binary patch
literal 162
zcmV;T0A2qAx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
zGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj$Tzs&UD_Wehl)DWogP{EM`bSrSe41h5~henUJ
QxSZsy0|NsC0|NsC2(86PtN;K2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4e34827dbecdb30100a3579e4414bd363441e3cb
GIT binary patch
literal 11264
zcmeHN4|G#intyG05K2QrA<7@ojKrZsT`ZK*lnicON#q7zAP9v50)+vr%Gg?xV_`+B
zp~~Y<M$qv%&W@{y?lPdFN2MvFkhV~YDA3|UK}W0Oj;}_Y@<%KPW`Ey(NhxP`$2l|S
z?AbYo9MX5+_kH)f-}l|`-@PO-SNfYjvA=od-#;<vlcXgN%a<_fl&*F3%j_>nR{@-D
zpnB!tY3o5o<IEoK>0t#1y^NQBY1sEXd$Ro=Qb{T`L<){E#QR?Qzmi~dXlYdlv@3_<
z4+%uNr}V%`d>oQgHhRgT&?3Bf2$zp<Z+sp2_V{=tsX6^xmVprf!d5>_LyafEMWd?>
zhFt^-;!8HorI(8z57AXFU0(jv)OM5tM|7j`?eXz|uE*=;;s2oprnAWIcKxv|Ny5M}
zXD-u*Fl~{UX?NI|wsJ7j?s2HvqFhzGBVX0-ajDu$57VYI>&tV3r>qa$Q-VJ$%T9T%
z4=7diS6d6&X|Ul}slij5Q-h6^E(rBoaxxmc+LjvB=@_sv@#H7(Fg}EFtk1DN$NC)W
zbF9y?KF9ierN{d6bgW%YYnO|)%f;H|>9xz#YnP|jE>Evro?g2=y>_{=wst7Fh`oc)
zsr8NY=>E*mnuE7mp9|FN3z-zH@0>qmY8k3lj|b#boh}Rpl+3$0XVz?{9bwwRsZq6e
zk`;c(w5}Dhzwqn|8)o?<?R{8%hv^i1A<<XW4or^T*C%-ah*Qs>U${UpnLQnLz<j2)
z5G9Lz(&rT0s<oWjQnHW;W~-V&Kl1jeElfKkVBNwJ9&?EVc((O_An1YbMtf$k$QKUA
zkLh>PKEx>W@u_A}%Y|zI(B!WilBBm>NG4fLJUp85{kpRc5H<0YSu8T)Ah6QvKA>yD
zh(+E`VrC;|>Z8BI6h3?#fotAhDeFHoVZ<BB*XA{Pif1Ur$}Gme!1^VO7nQ0}UmJ@o
zZ3E45rdd9_8q`rsDLpj%K0FFqu}U)r$@LzH$vEhv_Ps>Fo0CEKjl2af;L{G$sKwWl
zw4FtZU10B$d<Ahq5C1B5=^v0TnyitOpinuGzV<YM&&BF>8Tdtn=MzgXTmZKEOJ=;o
z9+Oy1oi=ew(ZU<YsZlwPs5IFrnAv^9iKqN;$jV9`rDvc92tIO7TIk#+*^Y4rWWO79
zJ3Q4^X<aYd=FD&oK=S}%riLAvNZiXbn_i3R1eH$<#+G6{^xcqO-)aGz%P#@|?RBC3
zB)oJRN{4P9Xz#g1dyoDhDgmS_pq&PVp}pR%y(gtT;q~!YT-ljSN>akIEONGYD92jM
zGMTB~T5DdWxDSLsFNnY9gi%8BI%ZCIS!4+e0k*lmf_*T09V}3-Z$6()KDas;=Buu}
z=Fdn7tk-~KT_87+xo*F8dp*qhJS?QVMTHB>KQj<7<KI=RllH7@R-(QZcDNmzJ(x_D
zY=$zu$vRx#20(IsoF;MkIlO?;Ps!}C-ynKe_MmJU6#4?>!2ew<L#GmR0wzr9l;2aQ
z_r4{a@`X;r|BOWF^eRZ!&Cj=P-w!cppOo>xha|VyB}s%F)OpuXWE!M06!DQtT>fLX
zn0Psc7jRfiI!5i~m<~nG4^1nA*eX#LDD&sdr+k6P%Eg=)j5#-Aj_`~xFOqY4t$`en
zM!wPmX&DBnJ_?N%xGXdX2d4@DqX(f}WFSpx<efc`mSP|oa%dK~^u;(CtiWiJfW|{%
zBoUe}g@!}1LX3ovZ9}?s;_@(}jZ83glbr*9LAIeM*=ayQM&>ZMol27(?@9J9pw$ze
z5me(KNf@IYl=m37Oee1i=IcLzi%_D7S{}vJ9g<`M7->pg4`T9%QPmR`2o68MtPx^X
ziJpLO8nfomtPEpT^@Op4aww(`q3KckD4-1w60wF|vh<<dj_l6u*nu>Oz0+=Uq7vWd
zv=u8emDxs~^lY?A8SRi%+C}p6wvB^Q?~L0Iz&gAcYglNF`i~u~-!V3U8oA2(%zfzI
z5+-Lz@gxlc)e|;B0x9HGx#cU8Wo#=|xgV=sK8jZ*Qspp(ul92@bGKAp;Wsfei#|lG
zn7iI*-QMc8-g49*iM!OigW*=K_`DhooM-i)JCt1{pjPZs_)-10$V$qaBq7j%yr(~D
z<f-c+smE2NSZit^1VkSQ0BAbdgAK1p1EsybPQa`6GC^+t8u|cxI<oXMp1!VKQZ;5h
z*zh_?wbfnv#|GH}gN&HOdN3JbV9Bq0G6B__sreg0!5g*t=TX~00!2C;etuL7xHhHD
z&3&#-X;bShI9`Cx<%dRlFlPKVXDJnx`<!LiL65Rfxy^__zME+!*u|i27Ge?Eqtu3(
z9&|UdG?*ry5Kesl3i5TTX*+^YTxX)XsZRJ?8xq<D?1=sjgj^F34Q1}zoF$=wjL&qI
zC@~_Ziu}+wsI?oJB((z|)lrgWk?Vd(dyLL2qup97Epyk0Rsp#EN&w-4+wg>Y+wjmI
zpapB<RdXTOlLUu@Po+ebFOfGAL-5x^&RnLc&eGorPl#gV<@*WZ@J5RUMkjxl3_7SW
zD&>d4Xeu$%EH^=jWRUXEZ~zeEXP_<CA4VNT)KVdIkCRL=W0348nxO^+0i3e~W-4e^
z`7v_O>%pWQ0GQAm;I@GKc%{Y9J!XG2J5zNZtF*FY1H97VhtqyEHs1J3Mq@e$Zp1Qb
z)a&%rq2fWFAj#>0^=snH%HC$Yo?;J4Q^ehDqbE9twutc-Jx1EYB!kh%!1V6Dq5dlR
z7=9GNtM@qrBt*{#1INO~i~ZEiG>h-YrqO;oNNehRShAGzh}7eqnolF%p&wE@Qi!T$
zsytX0sA&ydr}7dc%pn23-|rq0&hm4`%nB8A=qi6Q?vK<D4!9dC|BJ<N_N7lX31e=Y
z67A*jbG6Y1$JDYCpCiLO4c6qQqD5xle1pm#d=^t+=ckbG{JdG^_9rn?3;Tw9tA*3e
zA(%AIum-~#9R=}5CfIu8wsd{L*67bdQ(?+bFUF}4%VO@gL&E~RpIYcYL=sOViQB-9
z_XR4fLku!Eiz>~DuZ8Zm;#sqmS?NUQD0n}>I~m6goIvTYuDM=#XsdP22n+%>aqF6)
z80f2nU;6TCcdRT1(dkp&(TB*nyp?o`1{k)%|4mcUimCj&9pnMlC+hw6f67)(XAAZP
z_}*l&6f9PPMPI=IEOui67G;8kFMkJuONvh3DO?8}1vQubKqFTqgJp?E<~|te7vN2B
z4E@9@+I$FBC)&elC0?e%FaSi6OWg-TIZDhXRyd;XNz-ao=t+GzYgIS|saArp3FKqU
zn5N|GF6yYEDXfgFLYPRsiw<pMUkzTNnQ6DDm=jqnmYGt7+@XX#4{2$^!UdF=L|=e-
zx>g@=a13W(bf3f(Y_BI5_Jgln!ly@kP%5yAAo25Ke%{6SN$g2z7RASO1a)En_U1zh
za1<nT$vxS-;X+r#8yqVDMQcHy>cn-7`}3LUfUuzvT>48V;Z~Q*AmWUNoap2!*wS&6
z5~YnCMl>2Vt>K|0%+O2ikcv^l{87I-b)@Mj+;LWu3}0~u`jgD)+zjau>)0C1!u~J^
zE9}R#ewT><oXS1evtT}%!NT0<LfD^!dg6r8V9mu|Yz(fX$Rb0L0k5NR)H0Qfbpib$
zye)@7!qDkFV%deBf)2(t?}vNA8Z3s~E;V_bV@=C6FS1T_rZb;1f(icD5E`n)C}9gI
zWv4qJ0YZNjnDFV437YhcG?=vMGFcF3*Hn*q4}=i;Q52*paLv@&0aalc1S<rC>Z(Cf
zc#ghU<Td+9k}GPVdnd28wkW%)Xb?^@IsW?gY&{PhJaC^P;Pgj@8`!%HW$OV_gkkmG
z2GKSmx|4{6-YI!nh`dm4z#~*t&|0uhpCOi&W5Pl%DGZOXZ=x4yZC7F_3oui&UezfK
zxdE6aPyY<2$@gQJ$~WEnV7UXp>XlY0yd1VezKz691+AK5gVdu*pcf3Oi)ewU<y+)d
zFE2tK&(WueowDZ|m=<7+#hZ$(8BIm@41F{aL@l+z=#P<(T>ci;ZSvUDVlZu{6E`fX
z(_B1bR{9Lg^p}u(c2cK_*+U=%KO*XBo3c|Vhoo2YJhY^0l#EV+YCaE=n+N<~19d^G
zm)DCzJKxhJlbtj4dEiLF6t(PwG{mn&;YX-p*zhM3(&s`G%HT#0)a8>xW%+i@RHCyw
z>m+0lk?rJ}0HN_hKE@F`YWXMdO0M553@*EXLn?A110qi$8_CNAM83wDM2Asr_&In9
zW<D-vio-j!S!)ql+DC^|B)R6K4Uu78`wbXZug;gOYrYgq5Z+GqAQDs;qB#tVz8dkl
zlX`4$?w}q{*h}-}5=qS?Ac?Zxe$rPyj)kE?uFz*b4&BcIkfFQ5!LSeYs=_|dB^Pt_
zim$}ZZ4?s)Ii%P{CW=~q0^;tY<pTyq86Kc`+MqaxwlGZrc{Di#2B32rQE_>SL2NUK
zCv>wDZpxGe3sUDd;|vgTI*MoG5OA?NqD|ingD5+DK}pZL6Uv+96MioFqW52bU$`j6
zP&4;yu%=ek$D34bsjHw>;Rne_P`&yT#5>+M4D71gf&rM$0MkgRjJpPNlPA-%%&S$I
zl)WA^xIk>5%dbhxd|E}eVy!L7R(O?pStOC^v2H(u46xtyjkUHB)<$|^NCJq<6(NXl
zr6Ga`B#i~F0TT)0=@!GfHVnzhfxLWgO)_)^D-3w3VQK-)qi^}bK!Oj&leIROjp1&x
zZV-2ZVqcairVk;UhlEqK5)kZFv<kByet~ikWGENZmW%qQ+_n$}uxF2FUkJVh?|asr
zb<G`QUGp$Bb<OP`ChM#fV|&Pl$fw-sLil6%zrtMs#f(d@KATKJh~dNmJt}Sl16<ON
zcahBYK7e9kL^rLSYuAd*$RB2F?c{8)b^Ae|sTl_}SP)%j+=MgLy;mu`&8tmD8Xu}>
zoJ%GX{XFXq>fefxL|H@H?(Q&+`i*s8fMpd*${{x%{iV=2CC{v&ABGfQOCsjg^A<1K
zI#Yu_5n?HI<S;@PB|1Grzkx&*X*bn>rt7-r)hqq{EXulmh&luuLyRh(?v4@*M1O%Y
zbnTT?h8*~gV6c&cT7$g3Ugt>aAeg%?G*F45QXn>F0*TCX^m8zbPC*-eFw|d(kwDZi
z#R&|w1MYw@NbekVE*>iMsq^r1N}M6*V5<0@S4aB!3DJIhuIFBqvu77q4fdilX4-P+
zNUVE}5SIiW2`NWVm&7o*VJrsGvNJTk$zy@<phxTH<$D-%fzuFqM5;Lf?5J)NFjCmi
z5jSKPbv)H!C^G{>bt|)+&T}DWsi9H2-!CC=g11Myg4Ty(#KhffePkOABJo$n%X4^9
z`S6!<|K>vkN9Se)(29&lAp8qJDjLcF&rsbB_vX;i0EZ#)XsIj*q_QuI76nyzymFCh
zI*hY|Bj7$<*-|~>dD_SjL*t)MT*tzD<*PBGQ`U`schFop%+J|inoW-Crwf4YlmB7W
zB=@D2^Y(`i`_{CEdaY|rWR4Y^X729EM30EPmAc}^$!@6*3n4c}mbOz;>P!_LUl%kv
zflSPz0aS}*5OF4dOqm%MxhOfhaN1<hgK@iHKn^DuaJkN)>!P`0CVA@0{)oS4h$9cQ
zCvRmJ`%K!bjVkwbqAGEpuIyX{|062@Hvp-cJVpe!eW=(K1m0P&3yoBHGtY>0W!-C2
ztecuvWZ|62H2c>uq92j0VS1z^Bm9Biy6q6tR=4YqP}il&?|=YBi{T`L4Z9U9wnK+b
zFUJK7n2qxhv(a=Cy9OH_8mjUJ#t-Rld`8}5(4u#Hn7EkUW}4+bF~ZWoMG_g|?J!gf
z_rGX0nfBuagvIK~Afxc9Ajb<itKe=yH2&20H_0!8Is?Zz#8diiq6`65F_>vp4r~?u
zSHN9kaSMKu@eXD>K?cAX*nMEd66XFWG(d^D$TR8WyI;4EoYC2?#7&V0a9wm`WEK7*
zD^Eh7X(hwBv%<I?n~YQpBTa(`eMD_>k(p)Syb@_}G53+m-7M0G4L?WY-;lr_miK$c
zmm}N89(Vd5qknX>!q_)|V0p(`OM;n>v-*VW*RJkPipm1~ufiAPH^*?eGg1w%CrZc^
zXkZmO>^lftqW7Y5a~E)+Mn=-JMZZXBP5yu;b1&jlliS2to`VOth{Eh5-)@rc04QZc
z<9_umB1L|Lobrz_MxEb+hv=lo;DnRDg_nOxgp_V!!~Z9rc9O%KZ%C7V9{=S2#b@3B
zI`Oe*M)$w_=^cw#4d3?0!Psk4wd*!JKEA7L_2jL#!GlJe2|Sp%z3B_NX2a6De}DPw
z4+czpJ!Z|h#rw<F*;_Z)czfHF8tbnHUfZjpVu_Y4?cH%m+4kj0r6bh-i@~qo{iEjH
z^3<(!3iWNXI<t1H-8%1+_RuZcUy9|NS$oxyGo70TPX1x%%_rMG+><lzhH-Cw_mffj
z$gBWgd1P(FrjO(P&TShL7e;wsa}3<7*5<wW^K-S6-a36|@<UQV{==QE&Faa*dyhW;
z-hf|^m)4K`=lVdA^qF(df0h>gyfEwVma!cZ4&E={{nWX_X-~X4=j>y{ul%%j*E^@%
z&s>=F^n13=CxZ1Gc8q&T&MY5P^u*}EvxUFNs|)2-G-OwgQ69PF(Klkh`SeA@T7UU3
zwM^^reWd{35r3KXGWN0s{u&ERnmALX^L8(EE$QEW&~IGAxMCIW&Y#^a_#mF?kk$RW
zk1@v2K1Np>zuTz5yN7rzUa^Ac$w$do4ZL&Js#QxC-%bb*emp{aDpEfn2})8I(WQR>
oK_r(ymo0GF0+%gt*#iH77C@cARf=SO*7oc_p!AnT{yQ!3-*O1;0{{R3

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.inf
new file mode 100644
index 0000000..88d6d0f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.inf
@@ -0,0 +1,259 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = GraphicDxeInitSmm

+  FILE_GUID                  = 99EC6206-AA45-4CAE-B630-866755241C8A

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = GraphicDxeInitSmmEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|GraphicDxeInitSmm.efi

+  SMM_DEPEX|GraphicDxeInitSmm.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2000

+

+

+[Protocols.X64]

+  gDxeVlvPlatformPolicyGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+#  MdePkg/Library/SmmIoLib/SmmIoLib.inf

+

+[Depex.X64]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex
new file mode 100644
index 0000000..9b2767a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
�HN
2��G�,?��f���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d2276cfd9ffe33f818ec89d172a439a18e850c0c
GIT binary patch
literal 6880
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf
new file mode 100644
index 0000000..dba2389
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf
@@ -0,0 +1,241 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#   IspDxe.inf

+#

+#  Abstract:

+#

+#

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = ISPDxe

+  FILE_GUID                  = 5A38B969-CD6A-4814-82E6-559F840BBC58

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = ISPDxeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|ISPDxe.efi

+  DXE_DEPEX|ISPDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1670

+

+

+[Protocols.X64]

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.X64]

+#  (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiGlobalNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.depex
new file mode 100644
index 0000000..1b4e8e1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0��������G����P��>2
�u�*O���Yj���ƣ�^�H���3������J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d1147d22b2e25247f10bee86e2a3b907da61d163
GIT binary patch
literal 4096
zcmeHJO=uHA6rS3y#<p?ep_qz?s4E185Y43s>Z%n-Ts6fCRzaE)@dtFRMraCRCAM@N
zB2_O63jQ2a5W$05PqzMs5~Nlw6+BeE1QmZ!1VLTDx0|i;Ac_hiW?*;Ud-LA=-uq^D
zXP2#EzdSO(9Qo%1ql*}eca(jT_%)jns2DYlF*19csmk$q`U>1g9#x>bViZC?U4?7=
z!Lu;!4_rs48v~3@8qt1V2qo6HB#>r8DQ;8{_3$k%EWp^tP&}51VTx1lFcfkG%^o^q
zBTKB2C5(&wD@pk}bjB8hTAYM_GQ(i|f%?Ls!>>>;%734MI-a^QoGZs}fe>g|!$mb0
zF%K7;d|V{`Tr>v^5eph(Q`ivAHHJv)T-0&(d_(lDy1RKbZpn>rYt`NJTj(x2(Gm#<
z4(Ej<XY#^{?!0i8HWm3?7|IJ*auE2;9_vY#%W5uxFM%(CFM%(CFM%(CFO#}@z7E(X
zVVgF#X=9r%w&`M<F1G1nn=ZELVw(=O=(l2=r(OiPT+nEwYqc;>#kDZw!n;{TZE5dw
zY-TR13}}%7E|jGZtS-F-R!Q#ZswLzoGgj2YyJ4o$hQQfm7Rn5~jJf@vEsMAJ?3|G!
zG9V?(d1{VI@9C~Fa2gGXr}`{}l_D(nlKiFeic+L*1g~eokM{$#eS1D4M*G}pKVjEb
zqIwiPrw_9z<6$BS*E>**w4nv5n;^tmEr3cdTbAWys0=t60CJE(Wac(p=!0j0f2G5=
z-E+E%^q_|D+Ur>^>NV^RL-RO{Df7S$<*orUY42U{2s7<HYUgRY9!zq{`TG)&y7!Q6
zQTD*kNGlV85gCx3^=&HaX4G(MngSc+Q!^;xDZH=>WmHMpyXtFhsSG&@9@EM=tCjY~
zVT%k{UHvX9wI8P9bTmF_^U1k-X?_V8WRuEC3dgef?EZ-3Yl!`i#xV6dcUHyCon6yc
zoZCOpu-Vt1y?izMZutGD#mDaZ&b*2C9yq(cWa(gR>hj|k=iWXV3O{&s>y-c5x(q+j
zdodzDh$BD47nX)~;p(1@YwXWN6n(zOz~Y7V2A%Jf_|mv%KK<KN;C!}qZOc|WHo#aE
zf_vUap@&J|?wr?c&}%41(~cc5+iOE><jiZWt*!B<4K#ru`UePY%l|m&jQL5=pZgGt
RqsTy!fg%G%2L2%iz5opWS(N|)

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.inf
new file mode 100644
index 0000000..91b1687
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.inf
@@ -0,0 +1,121 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchBiosWriteProtect.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchBiosWriteProtect driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchBiosWriteProtect

+  FILE_GUID                  = B8B8B609-0B6C-4b8c-A731-DE03A6C3F3DC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchBiosWriteProtect

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchBiosWriteProtect.efi

+  SMM_DEPEX|PchBiosWriteProtect.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x800

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gEfiSmmBase2ProtocolGuid            AND gEfiSmmIchnDispatchProtocolGuid     AND gEfiSmmSwDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmBase2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..43c341005a38f080bcfc36c46f223797c713b117
GIT binary patch
literal 126
zcmV-^0D=Dksbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0^Mui{|8~FMtiba
goPNb8Tmp^=m+Rlp#!0?Q*#@Pu4u%5*0|NsC2o*v%X8-^I

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..bfdaadf90d9ddcf4d9ea57f1c72cf1d65f0c4ce6
GIT binary patch
literal 59648
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
bFBE`&LwmnFo~e1}$?ZF~hv{BOpWpuhCE1oB

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.inf
new file mode 100644
index 0000000..6df4e59
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.inf
@@ -0,0 +1,272 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitDxe

+  FILE_GUID                  = DE23ACEE-CF55-4fb6-AA77-984AB53DE823

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchInitEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchInitDxe.efi

+  DXE_DEPEX|PchInitDxe.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xD070

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..89550b75de68aa683924135d77708ae9cd5b8634
GIT binary patch
literal 162
zcmV;T0A2qAsbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0=K`+^x*dWN1fCV
zsPRz2kpgrpaKa3LF+qn$kF~g*<g5bSYvBI}VWviVvRa&e#V1?>jtH0Q-_OQLzDwB#
QrLqo&0|NsC0|NsC2pfM&K>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..a7e8e4545794647efba6f61bde13c05a28f0a84b
GIT binary patch
literal 18432
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
X_zyzBDgG}GTX_nduwA_V!w~o%5FQxC

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.inf
new file mode 100644
index 0000000..40e0abd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.inf
@@ -0,0 +1,284 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitSmm

+  FILE_GUID                  = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = PchInitSmmEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchInitSmm.efi

+  SMM_DEPEX|PchInitSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3400

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..6f989cc9199142f9565a01ca77ca98fc2e1e5354
GIT binary patch
literal 108
zcmV-y0F(a$x4+Ev;P(ATozxJh@le5$0$V^JIhV-VM2PcDNs4dxHUa<yAJZ0n7DK;?
zU}cCqKq~^NWdTdpVIxkUwLZt3E-=*s_VA+<N+$3=^5EXZ5;QL~0(2{I!VG{hL5D_<
OwYZ$*tOElB0|N--m@hg2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..f0b28d728fdde6edd6354bd0de65f1927ba43a8a
GIT binary patch
literal 13312
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.inf
new file mode 100644
index 0000000..7e4129f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.inf
@@ -0,0 +1,245 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchPcieSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for PchPcieSmm driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPcieSmm

+  FILE_GUID                  = acaeaa7a-c039-4424-88da-f42212ea0e55

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchPcieSmm

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchPcieSmm.efi

+  SMM_DEPEX|PchPcieSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2A00

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiSmmIchnDispatchExProtocolGuid AND gEfiPchInfoProtocolGuid AND gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b943d98dedcce25e022db92fbe6b0fd4fd8790f1
GIT binary patch
literal 2528
zcmeH|U1%It6vyw*=9-x9m_-~B+ThqurI4`ngJKkwow&gfH>F6SP!u*LjW*C!+7(L>
zyfn?`&V+5#*653sHHaXJZT+H(4<(gsvi3!-f{2n9AN(q<A0V<#*8kbrZH|E!Y@tuR
zyK~R){Li^(@4YiSw|k4Y=62$mM_&KHja@?Y<{JJ}=%QF|FEMTtc2tN=EtE09xa!RY
z(6zYD-nx*tWO48ce*6mh)nwHu#Ima;{Lfe-yKPSvW0umIu}-^Yc^O-XXA-?V*&c{C
z_C?7B%kz>#OxOLp00r!cU9)waY*L8M#GbGq?ZL@f9$DU!$n%DNTjh;*W;|cMev1&E
zZ%$N=H45_+F5wM*w(8Vr&)?+4DLJs-!SuYmG++YrHT3DcISi8u<RKXMlL$tonyef-
z&0nJOQII+}he10)eJS4>hed!!yUis8&S2eX-#ilP`(e78C!yZ~nvxTUzJ+`$sm_(5
zp9X2`9`ul(hjH^yM4`Vx`!{1i>?cvp(y!hPRA<W&p9)2)umPFc`~f}mZs=X>zJq)U
zLQ2c&P=5$I!~rtCyf5@(VQfw48KKt(FOdJ>_BwyZ8nwIt3gq|XABio~@~f&pfMmCM
zGG;hsEqmYuGK1bJ@0-jv#G=18IP)>1uVtsqBHcZ9DP>ESh6JC3R)ci4$CTbi!k;ZK
z$`ue(err2SQQnJwEj~qQgW{3fBPrcFgUpn+K7#2h%Iz?+QF)i7_A0u`HA?=*CNH0i
zKTz8BGwQbC?oCM_Su3&PVc3u9?}<9wQ8Mkf_QSYA#Q7cTaCM|RT6(Ol^xXL%%x%YT
zOf`aW&L7I$3A;3AsFgpW$XwUD8D)L}YSD5tB7s~_dGmd~`5-}ATYtgE;=c7Mvb4Mt
zo|iXAFo8ghL-O)gKRuJaN&D$U15-hD=G^7eT4pI>RDO#{IxpA4sIx;;@)yYS+T2_n
zo_0Elk`P~7)EQVjk2I;Y|D@AV8S}7$>NAf7JayY5kAKs%VngA>hl{T!R)1ZXc;n4#
zpw^}1YxY(um1?=10@X_AR9okQ-p;s#@%@bViiP}P#zTzvG0rg_VXPVZj1Mp#WBhJY
z#Za~RA7%V9<5w6DGtM!7iSan&LyQkI9%Fov@d#thct7I<jNfPc0psJ0-(!62GV}Ym
znCTrx7jGsUh0CV*>7sWj&%4PtZU-KHWK%kW{~VpK)w9;wF+jggXXq?$VEtUp;9O5a
yPwWcM#R7aq@vXaeQ$F2Kbvf<~4i5HieHwlNI-RwNXTxzP;nSH~KVN~@)&2!+^McX<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.inf
new file mode 100644
index 0000000..9be8c00
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.inf
@@ -0,0 +1,109 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PchPolicyInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchPolicyInitDxe DXE driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPolicyInitDxe

+  FILE_GUID                  = D6AC4AC2-8BC2-4cdd-8776-280E1469DE02

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchPolicyInitDxeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchPolicyInitDxe.efi

+  DXE_DEPEX|PchPolicyInitDxe.depex

+

+[PatchPcd.X64]

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7fcc3222095f2b04f5a1676c3ceabcdddfa3cda5
GIT binary patch
literal 4608
zcmeHKdu$X%7@zifZ4u5rBh{LqoOB}%CbfvcA}F`*p3cb@k4L2ufg<I=fTr3zg9NqY
zsNOQ!P&F~e7(#p`3jP5xX^#@jJxF>y<fRdOL|$rI+R_V!Vi8?`-)<XPV)z4%F{abp
z%=iAj`ORael~1u7Zt)xT{O244KE`Ta&lwgl!zOq}XWz_NKE%1UD(=QezrjXy_8>E4
z41gX8H)e?VdgRcs*Rva{+u~tt+)%;aq)S4}*Mty5&O=89(cFi_!aR(vEU8@@S_)ND
z7CHzl46d1|m$5W7R+~?KDSm_%ARXGgjFp$Hu>)$PfWWf51`vqLp&4oaK?EdEJau45
zlO`m%p1vyj?J8+mNu!1fE)Qo9yk9+B@Z<unf5Y`dvkfiR<kSA(`mgm)|Fr&kx27lj
zk&}5m(c$RjA9s$@^n;HZ>+;Osq3HeS%96!apapaI<T(7feuOM}<aAyy-=-hw-CDhb
z47~Grq^p#R@@ma+&ctEY#M~O+l)YSc_DhU$@f|3WD8redL09Es(3(ZNzQnMT_AJ*6
zc7RrlIc_rXXnMh?#G7x`;iSMJ1<r~Kf22C>w4^`dNDTPHi3?|FAc)yy`H8REr()H)
zIL;g6FHhj2U>*#(aMfZk=hi_`ZVQ$T3Q|0>r*t9Bjq946Z_h7MD|=}&?H<ajJ0B*e
z#&}rbu~GJ}YUt<!(Z>9~x%0T;^5X2HoC2~l3QABW6(6a|C#eaR>)eexE)Xf4yD?~n
z;^vV=zS+cS%EFm(S<c^LfU|E(Ttw9diN)9-rpb%auxPde6@pB`N<_WTgV_xE`cn<2
zmBxc|ItXG>QH`uCxuMBk82Mo|kjqfzzz}c`IViF76NDTF?(OiP6&e8dDo#(!`CMNo
zV^4+T!YVGhuqh}-F4bpLo#aMk#tak!F)6wXlT)SU%0A@_6vcdwgG#F&jYbubR4$#O
z-gwnaoOMdg`_xs58NNwrSo<!jj-(oe)1{M^F1ac_Berep)~)KKgc^k!HWy$6y(;!8
ziH;m)V<J0VZj8x~pK{nn7krI-r44T)DU5s7jaBDWM_OuGl<__EO?bL0wS2Gir5xeO
zvGI+aa}=>(xpW4()K$q^<=%AoHd{=xyl0bif2-4vhjVt^*?FrXH7D<F<IB<j?QLA<
z8^>fx%?WjS`lTXu(q5F^t2A656Ltk1C%n;D&Ik2HnNF9QeN2s3o$t&cJ+S%?j=(D8
z-FV0hlxiXkwAM_6qGL1)Zn2g&MoStj0wOJmo%DH8q?W@X5$u^|jLi*p2S+C=i0JW)
z1Q$=s0WQ|b)tU&&HQ3bNMcCAu_`$C)^i<(qz`6As6@~t`ihTN5`Spt9mBy@mWPHLZ
zrQls8#;(KmIS9%Oa9Y2{O|WerMO#ofXG6Z5zH-;pC$;o*W9)t1;`sVA<}uS;zn_hT
z*OK4JE3^I=I`JWA`%Lidlc>9R85(RiR>MWQ{SvsK<9CsgT8{Ndt(`8B>S^qQ!#Of*
zQ{`${Vn2gGNufTP>q<JdOBT}{F|#sS>33ih>By2cM2YCnk{Um-+?=nWY(N<BOo=PT
z+~Qyl`UisDKBN4BU?lA(P%T+$uzP0@5Qn-nSOl1349gDnQK$!va=N9~jLSu@iJ%fm
z=8zgix4U|%QV%j(m3pj7JB!-a0=m|IAiO>M-1gjae_@1~l+pdum&^*g`;ysVH;>U#
zL2F2X4;29VT{lr&UMLifWMg%O+d=J!g=9<s(U}YNrR;m!gX=B=zg@Ish_QfTM3Qc?
z-wb%6TLE6|hvE@i;jzVmLGeUeTxf}%cMxY3+;3|mdprxdS>v_t&G|BJvaVu8`U%&g
zhU=xQwHP^#$A7eZHMwlcQB=kyzK>(CM)nkA!b!#sz$F0}#NCGhS0+Nj@qgQ*pB<Wb
z;L)#dd9RE$O`Msi#6(ZhWVc+|m6^TrbKZJ-^@iBydDE&g+a|_#+@m${(544lKR7Y7
zZrlrvN%yP|w@>ZbJwu#+_od6XPENP^-#ELe;!1K3ZT(?w{J8OV;m_(wQNfn7I#$oZ
zY&BcXszBF55(2GS<I-W?HbdvLiO9S0Bjz7yk5$aq=)D|Atid-l{jX4qr-a4J&pmIY
z@!)PCn}PRp%^?4xEr^5nlKz?cdJI;LRBMT)m)EXcTl>rkl9w_@Z|ah|fk0mDPvQsO
S(I7|K2m&Jrj3Dr@An+%;aXCl;

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf
new file mode 100644
index 0000000..03762b6
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchReset.inf

+#

+#  Abstract:

+#

+#    Component description file for Reset module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchReset

+  FILE_GUID                  = F5883FC5-F8EE-4e44-B386-6021FB320C9B

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchReset

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchReset.efi

+  DXE_DEPEX|PchReset.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xC10

+

+

+[Protocols.X64]

+  gEfiResetArchProtocolGuid

+

+  gEfiPchExtendedResetProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiCapsuleVendorGuid

+

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+#  Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..ef5aca82d7128b9557ae29da7316a518dbaa86b6
GIT binary patch
literal 16224
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
TbJEy<{r)9^e@Wo~jRgK1JFE5m

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.inf
new file mode 100644
index 0000000..73d337c
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.inf
@@ -0,0 +1,251 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  Component description file for Pch Initialization driver

+#

+#  Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchS3SupportDxe

+  FILE_GUID                  = 14537da0-222a-4bbe-9a5c-212a3cbca9ef

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchS3SupportEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchS3SupportDxe.efi

+  DXE_DEPEX|PchS3SupportDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x39C0

+

+

+[Protocols.X64]

+  # PROTOCOL ALWAYS_PRODUCED

+  gEfiPchS3SupportProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiFirmwareVolume2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFileProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFile2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleFileSystemProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiFileInfoGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesLib/DxeServicesLib.inf

+#  MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.depex
new file mode 100644
index 0000000..d57f41f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..81a41398ac1c41317dfcb90a297e759eabbee205
GIT binary patch
literal 6848
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.inf
new file mode 100644
index 0000000..6cdb680
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.inf
@@ -0,0 +1,206 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusDxe

+  FILE_GUID                  = 99796403-CF03-42ec-A817-7183411D79E2

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbus

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchSmbusDxe.efi

+  DXE_DEPEX|PchSmbusDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x17C0

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmbusHcProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiSmbusArpMapGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.depex
new file mode 100644
index 0000000000000000000000000000000000000000..a04bdfab3e6c26c51e1b877ec289d7ea324cfbea
GIT binary patch
literal 72
zcmV-O0Jr}Fx4+Ev;P(ATozxJh@le5$0=s^2FB(eJ5t=vvkS9OEO#=4tqZ3Ld@ILb3
e-o+9$FEj#lD{#ULfH6UbMvt|)oaC$n0|N*&`XM<0

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b843e3b610d2f223cad9d04634e05f257110a8eb
GIT binary patch
literal 17920
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.inf
new file mode 100644
index 0000000..7ab0c46
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.inf
@@ -0,0 +1,175 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmiDispatcher.inf

+#

+#  Abstract:

+#

+#    Component description file for the Pch SMI Dispatch Handlers module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmiDispatcher

+  FILE_GUID                  = 6BE18C9C-BF61-499e-88EC-5CD57430460C

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchSmmDispatcher

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchSmiDispatcher.efi

+  SMM_DEPEX|PchSmiDispatcher.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2010

+

+

+[Protocols.X64]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiSmmPowerButtonDispatch2ProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2b748cd00eb5a59734e6e5aa4100877dc7d5d52d
GIT binary patch
literal 13312
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.inf
new file mode 100644
index 0000000..400dfc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.inf
@@ -0,0 +1,252 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiRuntime.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI Runtime driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiRuntime

+  FILE_GUID                  = C194C6EA-B68C-4981-B64B-9BD271474B20

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchSpiRuntime.efi

+  DXE_DEPEX|PchSpiRuntime.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2610

+

+

+[Protocols.X64]

+  gEfiSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/DxeRuntimePciLibPciExpress/DxeRuntimePciLibPciExpress.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.depex
new file mode 100644
index 0000000..6fa9e99
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.depex
@@ -0,0 +1 @@
+�������G����P����J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..26d15d7e69aea17ac98527865191fca3aca6364b
GIT binary patch
literal 11776
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
U9?AZ6!PEa#K9`CAOKRZ10hG8c#Q*>R

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.inf
new file mode 100644
index 0000000..e6e2f11
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.inf
@@ -0,0 +1,245 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI SMM driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiSmm

+  FILE_GUID                  = 27F4917B-A707-4aad-9676-26DF168CBF0D

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PchSpiSmm.efi

+  SMM_DEPEX|PchSpiSmm.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2400

+

+

+[Protocols.X64]

+  gEfiSmmSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.depex
new file mode 100644
index 0000000000000000000000000000000000000000..631980e0f8ec20e495bafea5b893c3835d38bb13
GIT binary patch
literal 54
zcmV-60LlLXk?~=zU#<>Jx%%j7(ul@S0<z4yCPHu25xnOBfX6(DfdcmMqZ3Ld@ILb3
M-o+9$FEj%K2msm{`Tzg`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.efi
new file mode 100644
index 0000000000000000000000000000000000000000..59650eb536d8494bf8b383e2c78ee654cc8b85eb
GIT binary patch
literal 21152
zcmeHv4Rlo1z3&Ohgzzy;07K&k?NI{`qB!#59YpFRCb&Zf9Qll|AVCO(A~H8jbnt=>
zcM{8Z9K~L3eYf?BwYQhn`th_+lWDaHU=oz22-b(ycW<=4-ZLG1m)2gTR-O0z?S0P4
z%p~APU0v_3)mbZZ_Wtkx-uwT(|9kH<S@7Sq&;9B6+&%yNj-fhDTYFnc-ayB-bM#Te
z#%S7=nid$Lnhp)qv_|~d9~}k$6@GRv8o(P>*m#n9`AOiX0{a$f+F7SU_>67SB2Cc<
z`W%~Q(GT8p`Q>oBrZrDnyE?L(<x;fQ4?Nj!e*&7;XP3`{%wkso&wAQ$J_DLoGcBqH
zJcj!2tMOH2JyEnj0pKlLE)uVb#7hg4!P2al{jo@#*y5_6{l_ik!9;g`ynndpP8Yu`
z{y8%un0Rr1a@+9iM`(EW2OqAwcHcpK-rXf1EXvRFtHs4#7*8Z#W=|1+Yxuk3;l#`D
z{<vWkF-2lURhdXcs>+v(_%U4=zY@kD&FLUX7)ONhlKCISEFKr_U0X+4pvxp^MU_t&
zJ;I1o`9*xcj?qM7NmaQ>1TkRzm|qx6s)R6tRRQyb%P>Zwwn{gjLCNz}S9@1vm56Vv
z(zWf&%^x|i3p+7y%)HM5Ob8n2C6X2Q3Qbdu8__re1GFBI-`&BaYd0EG;~`LybpHfp
zbFqzcR}K-A=h{U0o$&{VsB&Ny5#t?zLqxel#M^TQ5pgDon4pL_k3_s^<J@Kb3}adR
z12~9(2WIo{0Gz4sg_&CX+r#GYkH*yL7XK)li*1}-{;ze2@H^w@@bAEE{vCirM7cx6
z+m{aJpG2Hx@lPUNv~hBYc+OG6lV~oK!~+h@BH~U5;1FTJag`)i+Y<~(;@fCUeMJ%R
zeU#058z+~DC>%|xW12JmfF#avU=|T09DqYasYApYvj<6HEQvTr5iyZO?6-05f}{9P
z;U_PB)h6s-bSae14hLot7Ipv*VVe-<JEap{fyM$qiJ~zzTM^cVvN_epQH16Bua~X^
zCk|Hm%;5|N@%>%|j2xUD$959lTU!;v6G5V_Y8Rgg*8|W$;Q_)kZUH9_h-?>S9-!L?
ziahZd2qK+fw3`b+1)F?q@@cIB^E-Z<`>)LCik~QoRKm+!Nc}D70589d)NcZo<nSfY
z;o?k)9qE*eO&qLOYiiyS5lPqB8uTF_<R~DFl0za<T~4BWJpnJ8WMN8?EMV{*93mlr
z&S8@7tyteshb&ZmrCZi9lBy@Mf}$O<PSt;ebq@8AU7t8!)*I~lI}>ER(XP)uOV*oJ
zy*E%sPE;k{1u95+yt^!D^wrJiLM;59<j3_qWRTqzBQAv3K;boL+fP>-yAZMw9n>2>
zvGfnHD%m4e3Zu_ldI<o~5CWC0Az^9A;=>4(i`hW%#M@voom|(<hyF%QhJe4V%1=$b
zgK?Cd=4h(#3TWzIFffGo2Fm6>U=7k#xkZy7ikcq2PHcp6l%vO@06G@;38PzV3|5J9
zQQS?Q{35X<M%yJG)$+mRd3ZkJCEXXWx72fT^vlYGckJECepsBskRin&f<_4jrMiqz
z84F<w#YaV;;upPvN|0|=T(Y|)A>Lg{sd;517qno~J)d;2SI~$_0+SV&R}<v&)>1=4
zPF|oPziChd0~#7eEID_)3lu4xLsf^&r)Fwe`s*KOv+19Hn9WvqXvZO44K~&Z0dkrV
zoF){KR?u-&)B1Z!p4M?l7LQLVF7J2+MMDF@jhLcw5?ZrH7dwPHvf1pviK!@A>TjlQ
zo3%)bId+z<+sjo*(Hwx6q{6_1Rm~z<Tb8Xg`f4R4S@E?RI|6lsaJ5Fu@5kz99N==^
zOs#}E;bbH}2>Zx}Dkbr-?j8FXQxIncQi&bMz>{XiF`BZp%NS|;*?mX!5PdvyKEgvW
z=1mn-ib?l+$lqLu4i09bt!fW?WKMG+anmO(C}C_R5sfIDD5KaQJu0%2k0MXoy%?Lt
zVV<@JtYWdJZMRh{@w7c?6<waT5r{{`E%me&TgBm?HaGl{&@xp_k3^k<Z1g-8n9|<m
zY5OupkN{x>q(~rQG>dpwC4DjEX(MT7bcQX8SyB%>q9^D<k@Fyi4+9Xx7><*4H==A_
z31o>yZXZYY%ve>8o5=eVhyq{}1uzh|M`G?kwhOQTs1B5FUm@0@EH-vQ{qRhBSz<|%
zKOc(zMVJ?Z<slO+27>`@AT;w2iYP<U5K5Q8ED33}BQy$AiZUM2QA%{iv|mB6=_B~E
z@TS1n($5k2EWS|gWcdkIeuU*8;!E_lRmC^}KC&ZZ@1^W(V2~1UQrV9MhWX*eCzpK;
zksvis$^JK3%FP#m%rW7cZB-qZu|W0&QTFnAD%ra{$sO?ae38btL3W<DHG>*3Ws%^N
z_i_AuHK0jSvztu_Wl=n>B|2(FfT)Q7yo&8w<g6690f~3Wy7{mV6^zTq%t4w5hz`Rz
z!dhf9A8?bm(WZ)b9zbUnOFVb}1jTeGz8GDi<t-zexmm!loW-@Cp%g=UMY64GCt;}Q
zK}=6h7(AjWaI4KY0OWB%&W0L@V#Ta&GYXl##~NixQ6RsGb_aE88R<dIWGaTL=&-iI
zG5T9`<V*Rz93xKuA0m?#{Uoe>&r0P^#R>_KtXv7?Y)JnzS*fR~eP&h=m62A=I4lXd
z4e5C{)SMY7Ix0XMJ~3M~>2G|bToN%!>LrwZ9qSRzHwL`)*Pxg@|GX4{^bCGY!`C3c
zJE@z|YRr45o!re%$3`aAOIu31w_}%Lt_8B=W?dkrz|9CEo$?8Dp~(dR(=r7i4sIsX
z<2;w4n-zQ7&*X%84WHm<0ZNWWEd4~~#&E1%oH#PtDiuZinQsW=9_6YqbZPa5YZiFS
zh8lA$V!KSE9rb2r4$&(MX=Fp*llRJJ;EN34=_in(C?(kDajpf)kKwk#WF}^itI7yJ
zMazuIj20a*6MkZuVKNgqit@gk{YLy)a}UBnkr}<fHjWt_A?)M<RagN3gxy5yd|F)6
zy$WS>9<UV}R3FHUQDwROb2X!OC@`7c<4Y~PGQmNbs}^1_mItVxvuoxDQ|;NOv$NM;
zeL49poctm+`CEQWegMc4i&F?SxmU=g7j?D>w)j{=+(k}3Q59tdXw)MMD8o|r?+``$
z5quRi&Mxz`f7=3sWa*a$q(?TH;uI7g1eK||ieeur{!%W*p#q9!J|Z(si{d;oGu71M
z7|?@HEF+cUP?i2M%)#>%M2N$mF*#_XGb0C7k6mW-z91w5#&Zsn8W?NCS}WFn+ep&o
zj1!yAx0NAhYs@o+<JhjGB8s;qD4TPDO$kcB@+#htT`?2nqC;&u+5m&f6m-I|15>7;
zd)kuV&ium^dtzw?dae~jId4?W`v%f{b03g7iq6sfYF^#80?Y8w5+Dw~FfUi1)(Y0c
z%(VclM`xHq<}5Xk(zTvm#YD*w3dGm2@8DqhMa^1=-r2SXI<jKkxF2+;_9&XYq}d~B
zww6T_$DnFe2RV-*QTS34lads+#Na%)QB`}rc@oR>n|Yl5Cu;T|W0zsx4P=ff_3;T-
zs5CWO1zS)1a0Y601vutq8N@f(fPe*P>}1Yi9_BRE3GEBc2m2a9<7IyNI=<P>PXwJM
zy+^yf1MUHEuu5N-sFp_tdQYHum}(A`$R2>WQ~?`FnXk%b_CmTMWCYUDG=USTrryAp
z?FwiO!a}F^aR-b;6V8PLi^&Qx-Zd?ko~_ozMHt6AegQs6c1#7zkSu!B>llx7O(lwb
z))2PB^iQr*dG2;KwPVlWNW}A$HurW=9?A90$r2UvLT+6gKQSz?afICn`^aGh1I15l
z&BOdRTFo7kZL1mDZbxI6mm1I9J?Rc(t79%l2gguB=V!26Sd4vyWog_oVxOmtiM{#J
zB%2)R_P$)V-+}2<rz=wa9Vh7KK_F8<GQ3zuj6lMDm)t$eje!$*q}$s@%q_f9xDgnm
zER+Ta51Y(dBij%-Xeiu&6DDoEfsw<1W3D#tvxb5pD1RVE%Xp4Jkn{+E8g9&8f!B4w
zGjP_@<>Dm3<5?g!dx635M#4ot+)l6Ucm>HyBlM+zID`>?Y8!k6!ZmNMvQ;p&MSOrw
zSE@;=;aZf<I&{djh{nN@Ov)3CIBT*M$spnZivSbQrET%8<+5s9u`lzc-CStL?-zKE
z9LKRNzo+dW5X^_pwb_!E<<GUO^T^T`#gc)*WwrpB)5+M>tQHi+FlAZIY-uJl(3||?
zf?`|N0?Yp#Mm+78*dX@N*+=ihvV!X;F*(naF0>Gx<_TNQk?63?2{Kmoncpk}Y1uv%
zwq{pP$aCpq48I)z_CWDY_+|{}3R<L`4{RNMXib0HMiKF7sh-#SQL70FR8%ignG$1+
zD}JIhFIKfXV_5zY8lckl6s*4(zqM7i*n?EsW{iLiv!@wjC@pi94M)Vc+yPloj@b{u
z5#g5<h4S$^4n!we7dX*S>jnu3wBj@i@)$%wNj?D+>;a4O;TvtnWLPL*)9!<Lha`Fc
zo=>!b4@orhAQ`oN>8G(DwEY`?BK_N+*11b8SY!(Qd&e;uldubGfKcQyM2H3R0p0ci
z>Ds#i%S%$ef{kA4Kb0TEFGPoLpaWf0VnVZ)Ys;#Yq%=}O(zPwW7;tTRiIvvD3m+=M
zfD<vGI%OQ}g%4uJ)O%`n7iT~A6{S+?h2a7(40GNvJxcmJzLXd4(J(`M6(-|0lu_0?
ze(_qzFR<=yRbJPYvw70(g$v^>SRVC6<POk2rwwJECt^su(MQD4G_V4z?K4Zk0;iQZ
zb3=Yka{$zHlWyne=?=03LSX=meW#?z6R#(B0ac#1Y1SA*g^z)D>^6%qu$44o7MaZj
zNH)BFmVCnPUw{Z?87HeZ(R103qt&<UGR{`#!+p|E+u`S=d6;snp1eHFp-1N`Mr8~O
zAfGD8!jSXCKu2-wC<-BpqLxvIR9LX&#unX!*rO%Hmj^^JFeI3-o}8}uL<*&}ksuD0
zDe9PXsIgB)?ie1d>?FDPVEbj&a)`Fh6i!L^N{Si^I(ddWnC?>9ff=rjsqKoiEW47Q
z;L0V1lb{chG${0KyW>d}I(S-VrqY1j8{>VJX)`UKpViMhCuii6FJq@j|C2m91E@!n
z89WvRmBBwQd6N4CCxagduJwP)3$8o%Gmh>%Sc_LK^uiz;Kh|Jgb*3H7hS(i*?~~fa
zIFxi>g0eXg*rZbi%g?zxj%+i3b%s5u454{D<7+wRchsDF&%>NQ0<y9e#Gg;UGcK_g
z9^G1a^mK%7n!E5c;OxkH6(yxxVhxz)>6j2F5L0ttuMmdF8OGBB_nFHH1W`KTB^*Cs
zF0uiN-Z*daxqli`_QE^@bhVOLmoyzwIHkO&;YraFaG#n_w@bR4DTxO-Jfx4jf|4j#
z<qOr-B{My=$%V#F>Uj5N)R&9IPUcN)mTLupI)MH{U?qU^E;1Jr5qW2*0CNOja^swf
zSOy@s3J8uAraC&+<?WD;c&%HvL%MxC<VCF2kqOD$p#dm@Yf*sxc@miq7K6b|K?qg1
zLtf!xHkQJwE7f(kB{8q)jfK&0Vze!W-dGg%51l&n2cs6c5>hWN{pAppSZ~0G!*@&a
zz{7e~rbM4~3r6#VaO%I|LYKgeGz1fZ-eN9Uue9sGDV23O4ckSTtV1mdzhtDWa|x3D
zyGF^nu<HlivMyE4{ys!C%oniR?@{%TQ!kh84R&1{E9;GR{c%-qw(AE~J#5$at9sO~
zN5`@M&X^;Qr2FFW6139>^~QFg$PaAzDE7BA4ujCU&H<L;@}r*JWgoHl%tMI($_3=x
zH9o%V^>YViy~Ogc1CTGV;AX#K4~FZ+6fyG_G|J24fmeK<L}ThZP%q}as0xm=&c?Y5
zB+a!+x<HZi&%nqfX|6Nd07+9Em_<^h18_*Ha7fDFVx)j1oh1FEBI$eQf}|rh&Rsaj
zj_()poW+h41?QSWoweMEvEWqA+P2|*6yK7&pTC9^<!np!YTm2K+p#d54%()*!^9e`
zdv)t@Yx_t7{pr(l`vVv1*TlKqVoqCC4CAy8$9eOAp}=Dx>RoFc4al!iNWX%wU{an@
zx?TsP^5qGYUzp!L4P6krutSjPolI7JR!%ETexL#jA8sz&F`RY5=)MEP!GzlJ$d-RD
z_J&LLGIO2IL-6LT8=$36Qk&i^*9}-cKQVcLIuO(UlDa}DW`u`q{Mr|+tBYWuxw`sK
z>FA$ZSN&&8UA>0Kr`J^;dw&sK#i-G|bAdT9eL9roSEIM(`W0WkFegGXIjeT#j{H^o
zpRo3%zBvr+C*4n=Y^E7P>1#QwcB2?#)eaB~Uop8@<Gd}rC3o@%K`IcMr30aWeFm~a
z(ps{uoR8tRs@({Pl!)>EVqi3L8HL9mk|Dr+2nzy206e<SJWo;<#1=GJTZ9b^FA?VK
zU;>bL&^MLt62qXJ5LfMZuY>pOj3jVc_d9Zn>v|gxs5;Kuh1{HHkbiKbe3@T{8BZ#6
zzN%^ReYsP}{Cu2@r(RSt|0>F6E0;ac_~**}`ylntm-$7W0hvFEG9~>9GQZ%|GT#a&
z5ei%I$l~oZCG??V63#D%T0j0l$vmp;JeqIkTwKgqpfpG3;Q~8<3U9)tzEli4lJ4hG
zHj5-@)`5nVorZ_Ba~dy<QyL_4W8dw4fcTE|Bi`O8joNkunV{lWG6pr|`NA)iUZOBa
zTym@3EqjJwM$wXO<M|kVtFzSwJ5(bl1yYnA0SB-=;%=l=xLsHIOP@K885C~WW9XCT
z7tDcMau2{4lT2i07Vf!yyp6%WAs6Q&QpbGA@tsi6@+P<sXm>vf*+G^6f=4z)|7kwC
z|9oy;ZUB#`(B*Hj#Y$~Zy8IYra~AN)ojjcS|45h5AzjYV<vf|*|K)V~mfWhkUdMxp
z)v0w!8@0SIKYQzkp*covS-(uV<O?l%w);!DT|iEN_YQnG*|I#r>U1Lx4lL{QJjTSq
zetD!=nyT$si`iMuC=C@}I25+^riwFSE}HZeHK=`*hfSb>*;@yfIWG=d1Yvo@d&BS2
zGm_luaA~o#RK<l_r4T92IVZ4h2SPyQjVkjAq&rU1IR^MZ=axU_cb0iYAae`fGw{J%
zA(g?RahSE5IHdK$vBhBKlKg(^E_TR%P7_B-zk@BlO!-gY=Q71>L{>d;T9K)Ry$EG5
zV)VA$mh(x8T<N?lVS8#V(;>caE3p0I%5HXZ>lw$9#L(-+7dqz?^0FgfE;#j^IPTh3
z)u=__DonW|2!HZLL9A$Wj=aQdzw`<Q?p}ydCJYTq91W#;N!oWUL@5!ut7zu-1v0?<
z-_r28anyjNi8<Y#+g6~2=^BPbxRYvdaaM#veq!l`XzcW&Xg*&Cd`Q+y+PqrpnUr<2
zMNG~+0rK}PXu<-+8x?g_;6=H?DiRKgaD<|c4J37wvRpl3jw5+`LfSHA_Bo202rP7)
zqs1ER5v|wVF}V7Tf>$w@5S2vrs*5@2EW;4x=7HfDUC~pmOC;WpX|1@L1Ci!A<ZVcH
zGF(v`G$oqiR@FCX1j^JP2BI9N6o$~vekvQau$oD|j-r0rAwfR*$^lFen_b+1<^B!~
zlL!sJ_d;(W&6g!T?k|eS9VtpBYHp;TYHm=1w;_pzxhu`J*4zY_+hE;%O@fiInwLWY
z((Nq!uZ1cr^NGM<&0^B6Hz8g?5xG{tT`1LF;F5pKi5jhY&@$%Cw%ufw0XtL@VImSL
z&C3Wb<LmS?oPkzYg?S-qq|0&!=mf*qFPQLLk**Cq-4-6{FMRh2^0$776ENR)S&Vv_
zN67Qd8C^s4@taG4nUfR*3KG0uVxN=xd*C3!OQUS+EQ6kaq*fh21_ly5utO$n7YS*t
zr;#I(AI4@XSVX>IE^JGoX|N%rsfLi<KnJqacCvF+{7wR=#iw9oG#PnRF`|=^<vd-s
z8SxHc1k$8Q+bV%!N(lJFk4oM@MAC#fw{IZZbF_{Z-lahXynM$(wDK&$wnlbJ2(QIV
zp8X4xmu@*6gbGwK9~-sQ|56-Wi?Vqy@Hv-UH+_Rnf_-d*Ov#2FMU*4z)@h3}wo*_0
zTQu#Bpc*_P6v#JOTmR02Y=qrS!)e<{q=Ve@dFzc@jp`pcCI<sOmoNm>4hvYN;7Ea0
z9q*jj0~}x?hHevbx^dwD0k|_TJ%8ln^isM9CToD*-7Whm3qaJc_Lb6icjg3;2B3$L
z+{aH8=Pd=dBam86_GZH`Hyi#V{Sb~1Z9Y6_!t%l;+dO;>zm;*<2dQvT2$w17C<(=T
zL|_ByirRXUNWu4)y8BPV#)W3#d8&R`_nRKE=0FOl{i1lU6|31&)cq#n_W?pMDP)E2
z@o0$_IYSnWfV|KT*m(v}GBUcNFO<#Ad9gG)+1a{`#1Yv;n2E_uGlG`fs_!I~Kyvaa
zj06pZIYuL=!l|F0nZiu&)1X$O2R16!9ic^nm7>wg3Ms>|F;c+OGgVA4gi591%d-KI
z7(w4j)R%D`K!C3<6Nwu9!Bqgh8sLL08PAI&{Vca1Xe~wzGrHAD;GDkJvj8d;@xE+k
zW(Uq4w2Vtk-CKO1{lKm7XU@Ton02SUys#ZNY&s4<#F4jzv3H+6kBNC|jl&Bd!%<9_
zy6fNneRZPTF77k-A}Q|PcMu4zP*e9lG3WWn`{}>ko6V~C<785`@8DidJ2<@yd>J*3
z_?2TlHj`jH;TG~-zT#p$_5~L6XVf!Z7wv~-gn;X~bTkB$cr7nz?45BSg#d*e1RD6F
zUVE4Dh!;p{e82v6j{S0)iwL@<xlhYB`VL}54)Yov6$TpUR3pI1U^n1Gj`6%2!z<<c
za=H&=C|WS0FkUmC=Ae*3xoCeqGD`lEyU+aBZUE)P7=NppPmn+4nX(SeP+zWgBoUo~
zm`A(4q-@Wy)^Px}Fs~@??i>bc)-jOpBeF;!_;-um>M|19TV2j{2V>Z@xDC!?oDM3a
zd_+eU2-u`dFJ1?;#_>N6o@g}1(8Aux8P#&xl~A5){qHV{#yt;%7+04G13DfN-&>rx
z+GWd6$?6ft9?A;h!Tki*T<aE~y(_v7#Jey+EP9&OdX0IVly=3tj7CX!El_JcPuGm@
zsW}aK?zsBy{?TRzyr9jCHnW$J+NjvC&|LskcR&)F*`tu&MaBF+k>dQptfjmAi9XwP
zCmxX+{@B7?td!iw2EO+_34?BC1zcBDcT{3XGJNb8(iT>tr6(|^2x^&+qVzYa+8W<I
z3&7Y`kJj1<*~Pnxkvy8eQ<R>;L6h#Ufv#Gk25vacJd>mv6`E=}8!c+Wo*GY4PfbOU
z`2m-pq<c7dc~v62j$rrQ6R5DK9$4d+E?!o>Oc=+&sW98o@mah^!QKh<HeTiLT8yLB
z&q{{yL#y^5fHRpUCBFuC>H@*!f&et~C+v1-9IiFGrE9DV^tj3}W0A?<2?wF)q<gkC
zUPHC<sxV$K&!%XSb$<MUMMgwi|9mWeqvCoDV^t@Y9q-g|Y{;KR8m{jF6in6~7sgUQ
z#@ddIF}rJz6tXMEjkdACk6*qBqs|W*e_KLa>s2QcMwFO%n6RY#*RrR)<N`N4-LP+T
zGDUK!5BkC(DWUIU;MjKFal9j^V0%Tq9JG&Tdc-+`7IP^Ge6~o*>l%!#<dvxN5~cl{
zKuL<ydh+WUsfh7PepY&WTxr-|kvSeCDEXXj^=|+#Sj=BFwP&U6ybL_Z<}e<h;suH*
z>AnMrX?9naq|Wu2!q}xSexxww=U{-IgzGhh^(|r<uD?^rXDQ@I9As&lqWaovzrHfZ
zKI@3xet;RjYb?syP#C4Zk<hM4tBB8?j<Ob+2tuczB;D480XsB~B5r(c21cOJ-a<*D
zJ(!F38$f|}%t8CLjW*ID5i>snXl(8eB^K5{*LIZbtEe=}*^tlVPE!8j+Wia6fHl7u
zU<lV00|G<o`LVf8a)h%Hl71$8HJEXySAxB$Tl8`q7MLS|NsFoop<wI{8r98Qnl1<$
z_4t8u#kbI{-oQ^~C+<QiIA?5YX>iUpWk@9OGB|#KTtBC)B`s1|Q}~I=g)UhVs5gS$
z<yegV1S`n=){Z+Lp$1Z0k-WP8JIWC6Z}E_F<1%7JMZ@(95oN?eOu_#IDPM~JL?WF!
zTyLBZ#_zF)K!KjNM=&WCH%}Y=7<7BuzDtPVx>OEd=a*yG(ecz(F#d4}c0IU9<|mf9
zxw-@A_q4=%2A1T4$IY^z!6f4g4rM!-nu$bRSEBA9Jo{*GT_2YZF=t<7oZW4~QLJ6&
zFH<z_IzL=mhwD8q60If|{>1j<q8A|a;?-2$p}ZfL7~fOBvx@Hzuex?6-Va$}{mx{m
zVztp`(qd^nOa?PBQ%Jg7K*}evbfb)$3%bl%q%XdpKdausOw=7p)V%?g%-*`AV7q`N
zkbcA*rdTS+gq2{a3w)fA+=H#&y2^mfQhy;!F^(7C-zfcUVE<_GL_d3ghJ;}yA3x?m
zL#k$jE#rzup+2daP1pcS)j(fU0F)YnTEHg}j#|p9O$PeSYT_Do_+JfBK)lHW0u&Q(
zIu7d~3prW=x#5-jFvg(I&u$4{bjJKw#{Q#U+jZXM-3#72dS_41{m%sNzvuO)pFFp3
zIy&^{c4GFB`@yPO0HO>vZCKH0?ND_wVyLFwnk|thL@cXTmel9=se?dv(-2Q!<D(DJ
zG89N+mwqN}EilwTL%`J7p8*@n{Is8~K>XEPw_NwfIp4kFTMtYdbHn|q>u#R-*#CT~
z<H?1INqh7+H#Tpd|8RNbY3IJTU`J+s&oNi~-A$c8eDuHG7<<J}J3Qm&)!uV>`NMnK
zYfH<k+dcP<Kc^%dUYp1^mZlF?KlaY=tJ9JGJ1c*B!<4@Lu7wX@GuwP@+3}Hg->`hd
z<(m$Vy>qs<`@n{lInU0Fz0|zkSn%}hZ7()o`oOdA9e-&2{K?0^`uqNWeQw;$i)KFa
z@nz?m=Z#!oY<+d--iO}odg5Sea?R#f#{T?2v{>(DJ9pF{f9%1`N9Wf*sgHj+`1I7D
z-|@lIS3dKH_vZh-Hp6$@@xy(0|8Dgos~#N_?EJvoaCm3WRZsuo;2-+m`{>I1Un$@7
zyHNMtshN+shHXBr=H6)wcF(?Zsyt<+{6<zUUR<|m$*Q_}^{eU@ExKxv?p+*N9ckU7
z&($ZjOp*3Ryt4-(Od(iXbLonkHn(hCvFV1Jrmv`J-EjTd70a%_ar%<$u8-6<-MC>*
zQ)uJ*6^rVEb=8aORxMjR-FNY<sQ;1`4VTQ6cnW7x)4D4*ua&6FR$qU8)7E7hnr@oD
zc=MVS3pck!ny<LNbxWkFWkqPs2C;cdq^4!V+VxE<YNJhskh+?sSFWgTjcmTM>4s@*
zBz<0Q%~e-n_JvctzPWQRo}#FhP4X*`ep3ELQUn_G>g%uHyk>P|!wu{8&=vLimhkE|
zP5Qc)&6{*zbW(#J*({%qoUd4<H?Q8J*Q{QvFW#{J256$CX@J@Sd4DnVF50}=l4<>B
zOKQ0@4wSLy(0B`Te4+XqX!(D)bmbLGf{ln3VUTG5?==38xNY;Sdex>INIm~Y+T(!R
z|2M5Xi2r-WdW-tMXCd&sn`2zJWef2s1Ij|RSKWN`&1<h)k2?Q{8vmEtw6N;O|CM%(
Vc-H?<L-DVlze?b*5;%zj{x8mu#1sGk

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.inf
new file mode 100644
index 0000000..62e467e
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.inf
@@ -0,0 +1,248 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    PciHostBridge.inf

+#

+#  Abstract:

+#

+#    Component description file for PciHostBridge module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PciHostBridge

+  FILE_GUID                  = 9fd2360e-6b48-11d5-8e71-00902707b35e

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PciHostBridgeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PciHostBridge.efi

+  DXE_DEPEX|PciHostBridge.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4980

+

+

+[Protocols.X64]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  gEfiMetronomeArchProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+

+[Depex.X64]

+#  (gEfiCpuIo2ProtocolGuid  AND gEfiMetronomeArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)  /O1=/Od

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.depex
new file mode 100644
index 0000000000000000000000000000000000000000..04a994f69f4355bf96f414fc4c084834ed2e90b8
GIT binary patch
literal 72
zcmV-O0Jr}FsZV5&Q0TEuoZ<^aX^xGg0^(>^9)X0^5xnsLfX6(DfdYuE&nL`A)DfCE
e0FWm?!A%18@S_t-Ch$J;;NHa&G%qv*0|N-S1Rr1k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e389a81cf12387eeda40f31c2c60bc69cbdb21d8
GIT binary patch
literal 9344
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.inf
new file mode 100644
index 0000000..e88898f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.inf
@@ -0,0 +1,216 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  1999 - 2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PlatformCpuPolicy.inf

+#

+#  Abstract:

+#

+#    Platform CPU driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PlatformCpuPolicy

+  FILE_GUID                  = cb933912-df8f-4305-b1f9-7b44fa11395c

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PlatformCpuPolicyEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PlatformCpuPolicy.efi

+  DXE_DEPEX|PlatformCpuPolicy.depex

+

+[PatchPcd.X64]

+

+[Protocols.X64]

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiPlatformCpuProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiStatusCodeRuntimeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformCpuInfoGuid

+

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf

+

+[Depex.X64]

+#  (gEfiFirmwareVolumeBlockProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiResetArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..e076777323483e39152c49173d8ba560c7091749
GIT binary patch
literal 36
scmZR2lo2M^*m6a1&qs!a<2D_QOy52%7WPv6VE5_4y`w@V`X<aA06L)%NdN!<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..22fb8947db858c0658a135bd0509d89cd7171fc9
GIT binary patch
literal 10080
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf
new file mode 100644
index 0000000..0c16379
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf
@@ -0,0 +1,200 @@
+#/** @file

+#

+#    Component description file a sinngle segment PCI Host Bridge driver.

+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#

+# Copyright (c)  1999 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PnpDxe

+  FILE_GUID                  = CE7CD764-a1d9-44e5-9857-14fefaae96dd

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePnpSetting

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PnpDxe.efi

+  DXE_DEPEX|PnpDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xBD0

+

+

+[Protocols.X64]

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiNormalSetupGuid

+

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gEfiVariableArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.depex
new file mode 100644
index 0000000..df1f82f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
��������G����P���ƣ�^�H���3����HN
2��G�,?��f�����c�,E�9���&^��J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.efi
new file mode 100644
index 0000000000000000000000000000000000000000..be5dad0460d5eb09b5cc876957421663130a3d06
GIT binary patch
literal 21504
zcmeHv4Rlo1wf~*W++;#B+yN2{C^|sUD4>yu1|xWHG6Q#DqQL+LK>;BnR4{2W!-q(n
zFp1`JofiA*s#<N+TK&_~`qfH4Y;`7JGJFUjS^=>d(AVBLsKJl$p)&v9K6fUW0M_^K
zdTagHdXHHvbI;vppS}0lXP<rc+2>4(@8JIJPx#+%`QP8L#KCdP9^wZO?%~GR(vk*q
z+%$lP>Q!a*v?icYIVs^iUfhg=Nq<R;!@lR4NcMYBInKv%6M(dM4#!>cy~zJ{gsVN}
zYdt{UcoV)zAnJRpA1JYpjpLSIy=;kR3EnPA#a9Xb2H~#|e+eIv<NAhp8R=*-{)m<f
ze+eHEEw5gy6BG@osKg)P6WxT5NO)D{D=U`jeJ33-yxS6xP!!LRWMKV;xBos3%)4Dy
z-jS7kw**|tQF+Q4SvgtFJExqgwz`y%)8CaMhq{el$j?SnUCQ2>fd^8e-=gA+-+r^`
zuI+p9x!t7%(OiCb*B8H+m5xOWNENXU$nPT*)XQ7XgOE^vzUn=*W&e&YZPGA~L%}xx
z4p|u?D@)9>vcf7W>#}6!hc=h8B*&$!$aN_{%y%j4L|K_F3(wCl`9gT`hh_L$xBLsc
z@SwDozLk2YjtY-H9xFVtC06)#Q>^eiGJ3*!>0qqTtf3%Z8;l;^Q>uiO{UyS0T<V<c
z{NlP!k5N(vK_ed~DF&Ca6OR$H>dF>T7*e)i`yN@vJLFX%uL^lp$g4tL74oW(S6wFx
z&(DUe6(nl~leL1$S`nAEA}(u1T-J)XtQB!tE8?<N=&~vu(Iqks!R@mlHw}=opGH#l
zA5FnPDEq(oeHj}o8vnhra)1W)Ia$~?J&Lc}qw<v<`T&2idEkhm|0TBxzbUTUNj*=U
zulJj}&-$Go@3&Yg`;XbQ6{NT(@(K9(<bdU-A^;SAA|9IUOf)Lj1-;|7>y3cc1=kId
z{ZogairbI^Bs1aqcSX^RC;S%)UmbNEZc45@ypGqlg0QS^C(D4U_sGh^Y}@U`S5^xb
zy8`y?d|7>0RxByhLdoor@CaBA-OO=$QP9`$p4TZW4`k;@H<RO%RcaE*{D2VEaI^&D
z#<${yXo)}#SpI^>{m7ymn3J9B$b*I-$j)U=FvI|9d*FM)qK>*iI4(6v)WtZC9q1vA
z2g)6Uq862*SOHerjYIGbtvKW+*R4gf3Kv~}ojq_Xtev+3(-q)HFq-^Kcz6JZvA4`W
z!_Pz5adF9W+W6my9A^M*1Q44=pTKQ0nYSc)hXRyLZH=MkBzSYTV%EkCXRY_4g{(}?
zVnpQSG6s2?td>-|R9>gw>QXH)gOjU(^Cr6rWV2_m9Br5V!7RDpRQ1rvKjnbwLD+vQ
z#I@`vYU;vlnZ}2V4I`5ytClAS4$^}lNIA;Ul1h|R1`T?=FoB0q<~*a&*9|B!z1L19
zy$1mY?jk^eHUkeGZ5m1pZE7M~zK$mLq1_NiYfD5M0;q4Q7X!<At^@V`D76^y23enm
zDxxL1+K?MKj)pm4S&ybI9A^Z$49IT-8KdR7$~W~oMqxBs(Kw=7JA8e-m4jLt^j5y9
zW`;Qu&50`vt{3Cs$lFOA$m~c<vuF_fJ94@|M*tJo9shSW%s?pvDr&dO%A9N{+m&se
zE33z#VG&d>165bR(IxxKZ6I&C2;B2J+Z~#G=`AVkj$@N*em$ez(eucJn={%SU;gn)
z_j}RJ9jwFr+cdfXM;2+bSc_Y_BMUGqU@Fas7fA@k;-p8wausBc<IS}K&`pvT?DC{Z
zO%y0-Pn^QE^^Y43biyBrr#62K$|^sYNcfvJqlWViM&+}Fqtp`s)iY2HBWS>bjqV2p
z{jB(_^vd<|%Fez@VH@878C-#4o2)o;AUYHZZ3Hs6F%J@sTD3jkpuK((2$LSgJITwr
z)KK#i296UZ$)Te*Ijz;HTIIZsnxi*=0CDm<WVKZeeQXnQ^Mdd>$8v<mLUXa&;VKAM
zrOQo8pootzveIo=EJ2auij6x9g+}|XjOp|}+!^XJyV5Yi{DT+|mjYkoDkxd&%^Ap4
zRy&;MV;ULCJepG_H#9qnPf2CW2p~K8KG=aL8%rV?!|l>M-5wT$-$nVP&QT2*DWS2R
zTtSmBikUw)>{cupkhJ+tNFM8Uz+#3b(R(>C^?fMU-(`edwpd9qjV4J}_qi4R6;x>4
z$!K(w<qV81uh$+}ZSb8+s;XA`;{e!&#=Q#vD_{wY{683A+kUirREKl|g10)nL0Op(
z(o-t<ym~T5y9ITU&?u(kYp2^`+#8r}kd2*g#eTp95LX-!ljtQ`Nk8Cr6zr;kRq~_I
zHMAwa#w_KPDG8Rs>6I^`TdZ<RLgnsgsaZ9`RNhvKOt6#=IpBCtR=gcD#wSNo-@*Gq
zydP|)T>t@X+Q}2qs9o4*F_5G!KENGn$T7A}szKzC%SpYVB#$Wh!%5PnkfetFJ5AXp
zDhl?nx?f7`%r@gqu<y64t!Uyib6mF7F4$Yq(B?@YP!0&IVZv(Zwq}de(!PoRDbxf4
zn}R~i$HTJCpdj@IZJvvTZN+b^twM{IB^B%yrnjmc{!>Y-O~ATH-Nn$mM`S~opkUvn
z?gx0JW6UnJcGR{Bj!tzKm|T)AqEgJCyc|5dXxcqW1#|6E$Cy^Z9vW@5*XDUH$1;^g
z&W=2@5s0#SKvs80J21w7fsQev6K{lw#%9=xX>6z<<Q;-0GBttU&~af)<VT=)>j@)m
zQ9M|ri$ub?23Er_03jGS`FpZt%w9_+l>?R~^Z*q=ZHz4@^ach4u^b|1;5^BUbS}M_
z<8S$D8cgI#jJhIEM7<`Umf<bl#IFX0mon-dHtlI_4Q2HtNm7bY?{X{Nt~STf48{AQ
z-0q0HjB&Or-havkCp|-@CPbtVYHk<igVy*ZJY3+`VQ6KO3&NiCVzmu*Htm;G0fZ!A
zlSo{W#{#L_sgI-r8~ZMC1r}y6cB%_<oN9HhQ~gl7YY{mlS=}KkWr%f`V`f)kVz0GH
zbEJ7vEW{aQMvpM_gvQKmnBXq;xODHwqg%d=VhGlo?13L)+I;QyzhRUMJ`f&$6l3BF
zj7!HP@D*6S!)w;_i%M==<h9hSPc15$o9i{nfog-Vz%10=0@RxIhSHMKQV*&Px1b=@
z<pb)L{HLwecL|Me+UrZr?y<Xs#y8xsZ@0foaEFeVTxz>JE$kY<-L1?@29|8x?X1y;
z!8LkD$btW$0<8=dt?mn&LXDZ<VqFD|W~vz<mY0U)@h2Ud+A*(B3lF!E#)ZaFGK@+N
zlv<<{$xMZrjvL#(R@h28DkR~B?UJ!QGDH%#1!ZFpF2cSenV?FNL)aFE6D|U1k69_?
zW1aGj18!IiwHFS$4+P<sC&F|%iytpaVMaiTDup8=*Pxm<#jLdn->yB$p(EzBurf14
zf75GXun~@=_Vz-7S};lct)t=6T7`$E!&5trAFy$uk$7l>9>&gOUEk*(zgMp7^<)W+
zA-DgC;2zuR_J>XGP?yP_7IG`eYWw)@a7}vO4W7v$u_m`^5rza~<xP(bkJqRa8GP%b
z8Q%0MMFww5dy%0GDBuhH)qkTfOqA7?h{aS-c8RP$kX=SmnY2i{OIk>4pE$R4UTn>%
zIp#wrV9S~#ua|i|xJTGI--K`m);r=lJk(PzI7v)qDR4_tbTb);q`oh!J+3L<uGK4L
zwOC``ROL77tv<}7R_TYLn;+Myiy+WL<a0s32kd0bE|IxiF!?Q^2ORkn5|Puz0*>_;
zfsYkDXo{xF(d}}<on2KwgJhQy53r1upo2iH3ktQrLu?Bc2b~bBu2-nbgoub~M3=go
zTu3gM+{~C1_ed{dQwd*#YWRBQUcd>FJaH20X>kPggK|?*rMF}idz)>Q3p#|_-_lEy
zR9RF_Nf!pHkAa+Vkf)L`=JdUmF*>=_1Pwf*{z~Zdnx(%II$piS2()r0b6muJA_X0=
z;dKaJVFz$4hrf<SBjW+uiy?`OLE&#yKxZs(Qvq(n@)i}ao3eDG0G*Lapbu{<DXKfd
zY>|Hsbr`N--cGf|1bq^{Xo-k0^bwTos$?pL%16jkii4hEvbtYZi-TI|GjeX09}r!Y
z{{?G8>JLhru%qN}0|3-q0WsB4pDSaloR(ykqX@S?Hh8~6izz_pJtWne6FJXeWQg-f
zl)i)W44v~yW>WlU)+B**7vSH`x%bek7$F1r)?Fslo}|%I`M;t`q8M-DU01*}D1C<*
z!B3e2YJdR}PqHQnVypn*yTw3@EFhetfKo<=6mV+NcXFPtb3OnJ(6Q;9T}<_DE`@&`
zaHrZKsj|sYUztjqt+b>hIoc}wyP^BugHpYi8u9d|7(AEBYGx4Vn1f-EdV`9J7saq$
zEi^@~CsH<IZDD9D`q6%QHX8LGFi2gE2b+exq5~%B0PG=i7$DQh9=kwZHnzgX*Q~;>
z@+JUXYUU{R7<DNgzA0w!w3>B>(o*{z?*zNz%#dJ*iZsHm%tl~Vh~h-MBHbjZB8rk-
znO`EQMJUciqoV0E>>ewzh=v%K@S2p!AJr5^LV&=3aIN0q0X+r$0O07t7Cg{}6DhC_
zD`EjP^SM|9;5<XcL=6G<E4`ghZ&!C2Q`gM?HWlY-bFbbeTW=%R?C^mb7XG^y#P%Ys
zecKK4&vvzwreGSyP9f)s&n1Oz$Edg+5Lw+NztsiAzP$^|t=KqD3U0@~#_|;un%C)4
z4^iS~0z^JWiVld_zgUY4-mS7YRnhDWq$jxw4pj-T6sJFEa~ABc`Tzu8G$4<~_U`-}
zxzr4KjAmMjqa|2MknDm`bwOE>cabEtE7kWS=2)O|T2>FiX=qJY3CVRMhCB>6Qqb-h
z>_Ya20>iLY9ihpz5Pq3u3-tUE8fw$1mAbn&=z;6!?GS)47Rb@XwExadc&CIHhHo@L
zST$6ZHY2}tjZ3X*fVj{@U?R<oFf2_)$u%VvX^bhe%^q|ajwysRMr&0!ZSMjm(W%;l
zR?<E79jenBAPMWL2R@Q=LxU)oxwu$Ob4_t}cn3MvBC|Y2ItXfNDyqC%Y=0&Pq;TXb
zeUCPmmRW>wY_o35J6w!KMumosW0nfF6KIjD>lA9oqJRMxYDc1=-A_7D9Ppw+5O2yr
zXYlcL(~<xsTyqVLN-=!TZs&=%sDP&GnHCx$;jxf2^jW&gcq(savDzLjSqu{EK!Vc#
z`1rba;2R{4T}>n$xh*o@12bP^Lko%wTjk$GwNpJ1Em<DHs=LpVMiH)hK>KSq4Gsir
zX1S_c%j~iO#Q+eH&2qtBij=L4!#moeaa?6BmR1MywUsu8s+8qmLCHl~mK7;i%cn&N
zJ%yGL{ZfrTluwCY(yt=n&rDIlEOTT~|F)ZKr!S^ibQg=C$!1~iW3(G}ie7BfkxikG
zFEU(i7jvLL*vbGp3HD3-X)7~gr+UbVt%3SEO~QF(zq7F;Nx2eZ^ZvJ_f-nRgK)wJb
zbSbRCRt=`Hb17eBoUA%?W#e9^L*4kbbsEfSpbTstAX3ZMCj;3a_V@aHa;gW(U|0gJ
zuG2e`gc&(d53xB!HUH42k$h(f_pV$Q^$zbv|4C*u(+E_8xrm`bD~yk9lc%J~O4<PN
zk@glbW+l0#28&#9n)Y?r|NN8npcZn*=dEQaEQXTbb%(ts^iFQVwuEc5XHPO>^G?wh
zlA<cc(g=HM^^BC7XnVw<<PFL}5mWh65K(7?2P8}Nw;Gk%Je&M|{%9P|(E5|Jw_-eE
zsi?Z(S~tx4@0jJjwHcguzIHeBBbmDa!O*#`z~YJoPI_Bm29l&hk(^1_7JLJ)0ZT6G
zwAb0NW<I5(TL6-nqO|LEq^~ar(vyV53?}9uy@Wo6cjMtH%<IhCsg*Le{6ebm=W||I
zK;{g3L9a8VrY!0;I_&ueb(o)wnl^E;L00%ND8~Fp%m+as765(g1kSq>x<hR24;u42
z70C*z?<ax&rc3<~s0E-I0AU%2-yEtvh*%M<_vkgFP@^+%D-;ZEg_#EJE<y-cj6|lD
z`iON6$ZcX~T#STVW9htjeo5B88qIO9QAQN4@65q~y%Q~gksOp>W1WK&tD`WPyni$>
z3te-Fa8@Gd-*XkMN_I8GQl58;ZTx2#L4)=TDAMEzSS&GmWt54*&V3@;1=|+vjO|SL
z&smrGi$O~Y%<E~U6Gi5|cr!roY4ERek=3_ci!qFD-og~l9|I$}mV9_L_#Jo`J_*>6
z=`B>Ckp@SvjQZtxrpN!oT8iXsX+L10f{JWvU@n{%vWX0O0)%}Vayg;)6UKt-GhbnB
zu$eG3oVQS;y<vmCC>IQwCW5lAFC;1nrS4&%1mt8V^_O3*3zNh8b0>289ngnC^Mit}
zpHDDa)V>UTLH6JsEnT;xsjMMCjo1e=nJot_B9QxX=ojl4CLQBxQewbzW?Vl8<Wcx%
znF{$cU<+~nNsmCLRY$JrBgf2CmhOthF3eYv@3bKesV6M-)ebSBi-zen6FMnwIxhW%
zY{IE>j=+z;l@$yF{L~#_bPE{4M)Dmh!rAityiQ5oM>c}hC?zl0eHhJY)S7>f0*IbK
zC;W?fI?8AhlPpLnt~E;SqS+F|b1IzMp;S^vu`FFu*P7k_NRlXQquj}E;|Za0JG2e=
zBEtz_URHY`!fuQVnJG}V=XDkvNf5D5458i&$;p81YI|MOGaOqZkpdLj8j0F-NA*h3
zSpeCD#*%at*OD2P;3$Zn4xn2yV!!MVNjOO<146r`RGOWz3%LIh+NdulXQ%JcDIwIq
z24Er^K_c(4xam~>9T`IHL+EM#9fQ53oqATz^f)l{S;`pGA7gvt7$^;{H(z@Z33&(+
zf|4mFbm1UV<+MSRrdKn!0*Z!y%~*d&rc!8z|1b-UGt-gq+~+Wc<<Jpm5K&$bX{FGb
zOC<H6U6~0tK2kHB#%?rC+_X>onoUV8Q*hgT5nViv;+^0ikyG{*;4v77F4A~2qIkrj
z9LSQ0<3lR4qhXh^RjWplS!yPOVSSO14b~O`rn_CH6Ksn6&p&KX^kuM2%weozqy7Mk
zM&~oLsjq#f9G?P;9OeN$FwX;)hsKiK(*$pZ_u#Z%GfKo$J4Pk^aoSOQW4v$@Qfvcp
zD{_L?ji|tc*h&xP2+pea>Gc)gRbQvq-xIIzEixHYO9RC6ruui<6w6~Ms>X2;%-}z1
z@Bk<(79W7<<xcd8^eb<Yt$D$EOE-E=2E+CbDt`yC{9RxB!)ArQ1!Y9FSV!pFrM`#d
zN_GZ{zNAboGU~H>oJ!Hb;y}?cXP{KmE`s^uurhaCj}R56b|f=)yTFdJ2JCPqa;HnJ
z_n|G+H#+kkaHfrg+of*aOnn)hIfp<hPEa_t{v>p2SD*MTA^=I<4pE{}Bwb&|5u(()
z-GFl+w%sseyHTATc@w)3xL(UJ>J4ZPm1~+8A~x9QES=%yH5v-t-Na*n%x+M0<Q<mP
zjUM2U6RmZUhxTg*p_UR;dg+S3(w|5~)Oy@9lq%HOP~%cJJwmP3F!G9@fg<v_g8yS+
z!U1Hq0RVgXPduFdkO{_m8XHSVk-mwYNLZ0@Y?Ty4alnb$!auJQsCuV+3n&1vRVVN>
zJcLHe8mbmv2+0Z)8TA_o!jhLJY@|@rzHueQ*+7yi8<(LNSz=dtvQy;zO<oHSeg-Hc
z=ORltF${zU+c3w2nkieTuUUX99Zqix@#bqGI#Fod9~L7f$=~(5UE%XU(xp5}#PA?Z
zM}}#e=#j47jDd?J=o}k6G91{Rmu%19K<HdA|0&p-;r-fuM22A9XTVU#M)4+QVXgq2
zOl-lnXJ5y{Jnf|qkOQW}a?GH=+0e0?qhxP(oM_UKx-%M-d^cG+Z!h+3Joq_Pg@%Yi
zPwdlnd4_2>$0-2g!?BPx38sN1#0ClfG#Zj|22X~{mq0v!*RK?Q1`6GKAs%HF1DTt_
zw4ckl<h$OF2?+AF{p5w(I*^cRPIqBqc*;@ep~6BG7ANBfq7;QnD$LZ`%>OPn*aGkJ
z4A$0x4LFSH=is@**<M4cG=Wh!nXBKj3H`Cfz^LK6pTd{QdjN*yG_o{X3S}Jqcq}nI
z9w?DDTTGr|a0E{OuZbk5@FLno(h_iBIkh$rP^GmIX^X9|J%*o)+^|LL0~iQ!Ir7tS
zVrV%NEfxM4YhU970!F}-6zza3lJz-CGbjV~%}=2{7M^?zgQT{Gy0TnL!^KKHiPe|4
z*kbSucG9s|tOAMs&{3;%X{$3W<W!h}sg@rxZkg?uVT?m0Zw({D!NWvwibewK5EDVJ
z5w>ll=|Ic7GnJ75gr)=_W@j3M$kZ#HzHjOeK$!ESZ7Q_p^FJMp;zShN_)>rk^}G)d
zq$5(aSs;P=K@q2F`52Yx+yYegh72CF)6ZlwV0Qlr9d3RS$Y9_}?5wlhM<&ftcS4%U
z-(_&dCKWK*n9}A#-&6JS4}*irdl8Jgmm27^jhP58Byg`119f+wB5Ati`j=(re#UO3
z^ktJ^YK_!9kjX(*5K}JICxjX<)(t7joH+XO6W~d`OhiLWH%^tw73+v+>^TgPSw|Q|
zvpRlSo`~{Yon-fSSU+=Bz5xRH!v=-_ISQ~|BujV~isUv#IC?k;TRjdmB<5RQrTIat
zxSVTOx3i=ze`y^13{q7(8fygv9TVxj$n-5{Zy`t@ABFaZ<tdN*Kxj4O=GOoM{d7U!
zxRt@S>0w<dsBEQ5I(uOFRb=P63-mF9>>r`l-*rae52Fy1eKRBXUzPptIQGAi{Z`06
z3&KnWa=+|TXr;M?$({|_qsVh@#}otJvjjziqA$-X|1G`ucLG;<s1va~gN=n#xEZEL
z?YKpf!>Omh=C#4l5I#OoG=eiiAspV|%o9f{fw|bFV5eT3BNwz`Er@QfnKE4}D)GKm
zx54JY8CP%}FRN{lxoy%7Xz$2r6BpHCXO^SRG--QT@^5agOuHbJzd0r?(VL4CV9E{g
zR}s)(o=g4EbJN63dkanB%@GH&><?vrSU4!x9IJ<@+SeaPqc|CaPa1<OLnaX6yollW
zStD^H=Uu!Z{QD=$+Fl^$0nfWf4)9Be872@SJ<DvA(O^1(0+|JPFuT)^A4HVIkH<Tm
zek%NY8aTB!n?*nYOVUL|!rY7pr<H>^(OZtNYUMb(@~Z}0hN1>r|KoT<LQr`9V$l8p
z787l948KI!X3xG2Rd1t;%Ck}4LTD=qZEy@Nmqlw)&_neGs=k-1KckErxRz1NJ5c40
zQJIhOeT24((84ja0aPxdYAaR$E?(W7Os`MIUKbP5#prrHKMnfBrJEb@fc{e3_z5T(
zA|n7Bi;~)*D{Ky0*7HMj<Uv#cXHjz``XEX>DY~yzJG5ayf^>VR8uXznfpkSlMCj^`
zAskoFzd3^OYr{k5_bN&{zn4*p^ZN*iwR*k*5WOQ^cqetp?f5(G%jfWPfi6aEPPVM$
z)B>lulKS~_3_BlU<omlgG-O3fQVJG4yilur9rqS$^+Rg)K&+LBR-)dD6)kBt)=H#S
zqK=ydT$pan4l-0sKE&ltWr5kLR9l_O`mET6u1bG-7tORCc|pvz;AlrjUgu~^Y8)Ev
z2#S+%LhJZQaU2WGM7GZHwnDd89A7GqZ}8ZmIAF|<JqYe!#50WN7VXBrMWf=T4LhiU
zv_bQ0M+?>tShpigEC^}~%p9Z%K;7inaZ}Rj!J;o}@S1DVF!>FU!8aLJ4`LA96d9k@
z%TI)ktsZ*GkecY`g+0}Hg3kgJ9~-N%_VOus_j!_Q(!k8d=0*QvCA4%6sZOpLi$v`Q
zPE1zN%Co-SKug-b0a(MUhs#1s4}EDvaaT&ektJ?3K>A~`V6#|bT|i$xqAMEO4D<ul
z?=|xf2i?UXFPqwqw^7}p<>=Mlurm!*pNv<3iRvCL71g~C&FmS}>o{m&oyk<^zNhY@
z1+LqKLwgFks(61|awHW+gV*R!OM;g|tvR7KtG^b0jcU^qY8Us{+7Js^F|n{aNveX*
zeb53@)Yz-g&7AQmHAm46q2@Hc4OLJlmp?#D>f9dx(IjuC&clXqh^FLh_#s0i0~zCV
zkhg6Sy(S!u5WNwi?~K7aVxXS2;eEQLLFd>Vl}g-E!B!KuRI;4vdK+%4u)SvUHxRIY
zkf2*D;tuP#Wa`$wFhJjbo)6cRZH2nd#l`&>x<w4<e@Iqj&8?L5z**zq3YJ=;A<H9v
zuKgCm^%`+^#qt}Lka^3Sg7Obg))Z7>dg&{hOHGxUNN)&6XCvDX?vqzKVW1;U8gsLE
z5Ck`$?B>btkW-Leg)MXbBPW5x*)V|t^IQp+6%9uHI|YIwk>weTb$8fsx=CV93rF(t
zHV$u*9!K2>Pg)#%aHK=(HTXO{?#o0nP&899DUym}k|)K#(?HZo4<ufn+N7qBz#~y$
zRFbSj_hd9Cm?s$_^N>g?am1K*TWgNcHXFOsR$N%2o)Afp?x#z#T-|&rdeEl|Mt2-^
z_Z24BNMbUu4IPZpnM%O&5@gbH2Ensd!|M$oAi}GPJfd1^3wIa0GuiApFQTP{$1%?U
zMDKYKkvlt^A}vSfVU0;XkRmez>|N=8CwY_sZOs0z6H>2e5UINu2Bb^Q>38#0VBX&f
z%E2XwnCFS>1ew2ph2kS^NNUXP=p6Jch9IBVQonOLKr@nR6<Us3tCO)IF+|dYmd}Ub
ztXD=%IiTTLbm0*()A~i)Be6@RlDe~B>~X$eG<t$}>p`5&lZC0kKQIhEYqS*Oq2Esp
zMTQgH&fuBOJ~;MYL6A#i(w~p)<;Mfjhlxt(NwlNE#}~OhCME9Q;X<wNh=FdE!nb7`
zdJl;sqvDv8UL2La1;wSJjdl<VtNuET=I>6tinY-=${>Qh0+=4{#m>0&Jp=6gpwwna
z(p~`_68~AmRL+)br>Epz{@mA(QI2!D3s=G@Nd?!{>O9efbt7}dt|xwZJ?2)&`2CVH
zBnGFbgDPd5u*baz#woxbLONM$MgW2fUXAj}KE)z|i#w@SC*7_1Px5kXj`Z7uL6@0!
za*U4BN5_d%WYFrLl>Ky?Z37Gy8Jk4S>$z0QHpgu4X-tK<neS<4>qGn!Gfirk)XHot
zF5I8vWY3ay?)TEciRk(0oMn&1la?9Cjbg??#!$oA^P&&G>-F>F$IcYc3wE$ThqAOT
z;82zY5;&RF$0P3(*cgHdp(@9r%A(tWQ}xGi^|s}RRrqPJHtZQ9;R-Dh*tp2u{4>&V
zu9!b@GQvymrTPs`sB{rb4Ti{;lCflV)0j_TCs3tmqZ{d5Sb~;~8uyfn>7Kl1L!vvv
zTtr7ogvJ@uv0QgWqiG%3ww910@D=lkv}+N`oMRXBXa|$KX#2T-3Ld9_dP^s0b{V{v
zoHfos!adgnA8^*#u0yKedu;?15^dycGwk|e0EctzF!SHw!2*MSdDqpE_YwV&M?K}X
zPr2JH)TLq!B%~BC(#M=_nK115jZNRA)Po<Zu<bb83c(i5IKk*a&@g!g9H3j7yb+Iq
z=$aWZ8Jcth^Q2pum`{jyWvU%dSP*O~S2vmX)B?;}eTmR=19mzZu^<l0<Q&Fe;wj8?
zvJ@PU-;V*K9dN12e+}rkDDs?c<zACwWIr2lD@Ep}4!8*vvYN`0SRu!)R43b&rB)zj
zpgg?2h<pM`v_2bO)tA>?0o%k)x`9Rn^E&HxXM%3gPPXAo%)&L4InrFZiUNN*$_uGn
zxI^AJbrzHQxZ94as`c3r#UV7lg?qn8FLT?+9}wz?0HltPaDa(;Co%%=>r=Nh_I*5C
z-MFJ5;|zANBaog9z)oDwzew%Q>kNHj!fDs1xDb5eIF5DbQokeb6PlaeLHI@(3MPAT
zFDo6t{0yY0L88g8qRjM!<l%py42*w3f^m&{`Lsl5dd8@`?l6w_%7|T?TX3{O(o<HP
zr-}4ifsk7$3^g;w0%DF`AHD+X!+cO7tl<t^u129G17C6$YmEeXGp^9kIuc={A_a<Z
zm3k*I>|rzeF&kKV!X_Z}IFt$KkFqeFjN85;!T%{53XKQUlQi2Q^GEoLLhipqoV}9q
z&A<;qs#j9dd#F`UGVA`;xLgd);iOSE?i=5VvxFVS;1kk`D0vIFk>8F;HZDL$WH{FA
zmjGet?Km}nV6I>Wn(vm>9piW5_&{$>S1xsNC4;@k#8{185$d6^jf{*qxQ!vS1KT+L
ztVjk3vwGRsM?H%q(P`O@J+kp6ZfGADHj;BZ_v#9E#w(F_qr1g-N(=Sh5%!%4>-TBs
zz7ySg+7+c^?g~iMpT!y{7nH5_48vV=HhcE!zYm)QoP>-Oj(c#jNWQcGmJAHIjb9Et
z1ItwOP3~-gHb9RfEHgxg;pR7+bJ3l+Fjvp}0c}FA3_s+ErB7}H0qIrBd^Ft*I3`PG
z0YJz}OrV;?Y$iN>7S4huM8i|hAc?Wsj6>%Mw8zBKGhtHaiv}>W7wlY}d8QTdLkJUG
z*w!j-GKtcSt=<o@)wqP{Azsd+Yy^2;99hQW<^06ugcg&mnq}Ep(Wn7S(*Q)uR`m6i
zAreK(Qk;cI35s(O(`@G;R-J<gS+mX}7msszCsYXM=FP@PK8EcQx_Ui@z;v+sEwmB;
zaTsqSL_G|`Jw5%-qP89Cy72k`sevwHZZ6S9h(F&w`lGu~75t*;r@y*-@O@9W+<pJ3
z7hc)d^ru^taa(Lh?p?lN=2mM~#@OECn#etE$N0KO%bTBj{;T(f6#cnL7&_hlvre5_
z|Mw#Wdikko`g4n2f9{#7KXXO>X_xe;FZK);>hJOIoFct6C-%H4R^JqR=VEl<bLe>D
z^mxnjKk3jU@$<x4?;j;rqI~qMciK-Tekc`^_#r=%`1#FQ^%R08ekh1c{JeNpJ?+;M
zKfgHZ{rlu)Aw&WJ+H5C&Zr{44&Yo<Q>V(IKjWJbLE>oh5le;^l7e4u1>h^T~IP1^%
zT^ZiN-?DZ76zzq1J%fJ!pBE2*qx-P)`H~%XZ=Lh$yW6S<k2!qrFncZE?0Lz&<jLNi
zXNJwZyl2|yUGKj!^tx-V`@@;7e_#691jkRNeDdJ)2QR<tuV-$$O1olEvAXV^`qpQT
z1pj_-S2ShGbJN$qe8*EidgF?PKQ{k7^1;3~=WDYLB|rP};D?+&FZ??4?N#<a*@kU(
zHIDzwBc~f@{PoM;nH#yh+=qHP!;P=+`Le6`+Zj*4ZQXLbB=l&@b${fODl!TmySlhx
z%8$o4d&XC`ru(jy9-jV_SDK#s=nwC;J(KnEU19mxp;z*hQ_2&h3#QWBb*+?g%eXqu
z+ovJ}#~TJE3C0Z52>#OKu_-y`iK&yYHNB^FRkg=9da5laXLZGjWwxuXwB=rjRz($+
z>#A1Vv)p6LS$d^yQf}^bHs^hw@|CutimJ+rswJKk75DWKKOg?&|4005|26*78yBvr
zsJeIIs{7VVS~zdz>PhzU)hm{k-&XD}s#sQDa_>D0=Pg;evV7gV73FItl~ycWh~I`S
zEU8#iURAv0z9sjRuPVRKv(UBT?y4nK>lT)-Sh>2qYE=b5rK?sYyp~k10?yS-6MKdq
zSmBipM;<A|Uu@nF#JKQwK?4^w@V`|9Gm7T8=zkW`-X#8ijOhP0U3FvZJ$sezD-o+$
zjey1ehmo}u|8fXU`|2tk;G4s7=_b72U0qGOB!5GGN3YMm|Ni@z-F**LEXMzgB3_j-
zLX}835}nxpG9r`<p9>nepn(e-xS)Xx8u%Zn0j#AH&@pp^wPATfWy9JAUqgMv=7z@`
f8X8_~Xle*Hgc~{<4mNZ(WIgjgvj6|fJN177`nP4w

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.inf
new file mode 100644
index 0000000..d823fac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.inf
@@ -0,0 +1,264 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#Module Name:

+#

+#  PowerManagement.inf

+#

+#Abstract:

+#

+#  Component description file for Power Management module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PowerManagement2

+  FILE_GUID                  = 41E89AB0-BD3D-44b6-A431-E4836EFBF2CB

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePowerManagement

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PowerManagement2.efi

+  SMM_DEPEX|PowerManagement2.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4200

+

+

+[Protocols.X64]

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gPpmPlatformPolicyProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gPowerManagementAcpiTableStorageGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/IstApplet/Smm/IstApplet.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/ValleyView/Smm/MchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/SouthCluster/Smm/IchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/Silvermont/Smm/SilvermontPpmLib.inf

+

+[Depex.X64]

+#  (gEfiAcpiTableProtocolGuid        AND gEfiAcpiSdtProtocolGuid          AND gEfiSmmBase2ProtocolGuid         AND gEfiSmmSwDispatch2ProtocolGuid   AND gEfiGlobalNvsAreaProtocolGuid    AND gPpmPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.efi
new file mode 100644
index 0000000000000000000000000000000000000000..025326689d46a6d8f33ec080939cad6d0b797e77
GIT binary patch
literal 4064
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.inf
new file mode 100644
index 0000000..5779ded
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.inf
@@ -0,0 +1,195 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   SataController.inf

+#

+# Abstract:

+#

+#   Component description file for PCH SATA controller Driver module.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SataController

+  FILE_GUID                  = BB65942B-521F-4ec3-BAF9-A92540CF60D2

+  MODULE_TYPE                = UEFI_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializeSataControllerDriver

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|SataController.efi

+

+[PatchPcd.X64]

+

+[Protocols.X64]

+  gEfiIdeControllerInitProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gSataControllerDriverGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+

+[Depex.X64]

+#  (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.depex
new file mode 100644
index 0000000000000000000000000000000000000000..b1a5ceab3b2eb73466f120b95a1915810dd0401f
GIT binary patch
literal 36
scmZSDU00wl<#k1HmIcEEb^C+9Oy52%7WPv6VE5_4y`w@V`X<aA00;~YUjP6A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7b57467368e8fc2162c33438a90d6660d9dcd15e
GIT binary patch
literal 2208
zcmdT_acCQ56#tUunrN3c?Feqp%1r|fq9G#=7LU24Qhga;rIoUFW4LzII*^UhTxu=;
zQ9L_6K8{re3NmF-g`x8g|Bz))@Y2ZEV$ns5b`GUh!ERApSI}0sp6^{Q7zf=S^&fq3
zy!U?Z{oZ}=<=vN-y=={rT{H9F6I+`Z>p9~2N1?0i9=XO{%NW85cPV6|?s9BGWalBf
zQcn2(&a0^m+`<mrBDPxSL^We~trlDZ9#NkfRFSt(<(waTuk4pf%8VV1^mMD;XrFXp
z9M51nn&M?iFg8)PLukl26U1y?#z`j_Yl;k(3Q}H|lSjHz5}3EU1N5&z|NL=-S6dKY
z0evYgrQ*x!0M~OVZPp99%T<f;cJVf@f40kb-fP{!z~Woi_dl7RLg{FOttRq8FHk0E
zbKXUGS1&BS)487#K>K+Mh^8*krDYrenw@B_kg5BBwN-Ei)%>5h1oPN91MQP7`6<x%
zg?t^zmOp%%K*K*rS%zg<u}g4Xx`5t;+tS^jHx?-H5z;{fx1pUpV_A%GA<5_z{k__<
zM_pfc8r)Eot2^!MO)8U_D<JYPV%EL*I~M0k!k76Dl-59I#s=r?H^K%k^6`xWd${3$
z150ru_$I0FBsUt5+g5>xFM_e-HFO}n3`Sc38(d0RW=i+egK(p2K*Wc7J?a4Ho;$#J
zLKZHrnEhXZA&t`eb*Y&u=u$0JH6$;2hO~sSUcGT+DfS0-Xat|Jl@!4JXpT)H=ZX#Z
zKP}<yh$Hwdc|tmZ${Gd2Moc(^g-C{>4lWjNhqL%8mV6wB*cXc8=w<xXnqwx9C!+%@
zHq?sK#GK#Uo=j)V9GhWmmMBS)8=H3Q?A80L>c=iP-l|CtR3zbOK%4yqv<VmJZk!ir
z<1$y0(f(J@B{#cbX1;ued+7|AezH1KgOnAdG~7h_9w`hdQ?V}~-WDC$1V*xT__@t2
zvlBF*2dr_>Oc|86X#eGk(`7w4mWn3A73YhY=aRB34_PlYixbP+`v|%k3fM~tVox+B
zOvwEpfw%_oJJajnW64P_Zi-oW?CmgeNezH9uGZipftZ*-dfl=>zZ=B)(zt~h+V0F8
zgnt3)F%w26Gab0edGy2t{*>RK!9~--mJw5Zn2TL~Tm*L`mJ$Un8rvzVG-Rr|ve&29
zf<4L&DaA}T6n_H4lSm1k!@ct#!$c4{DqAUqh4&6kO$SnE55MsKjbUpCzZQS?>toaP
zuRp{_@7tMcQNw-X>xQ=`UwZWD2ifC4o~q>DZ2J+QeICTA(er<n#~x|tbWe9-6XiSH
zME@21hHO7{=rHw1cXgC<ocnvU?Dv-d6Mgz0jvPp*DWB#-Gm6;p(9qCO&w;1Wr@Nf)
T>PTOSM|ZXDJNGz-{*&?-hgYnM

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.inf
new file mode 100644
index 0000000..234cd77
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.inf
@@ -0,0 +1,198 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for the SmmAccess module

+#    {1323C7F8-DAD5-4126-A54B-7A05FBF4151}

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmAccess

+  FILE_GUID                  = 326E9CC6-9839-4885-B2ED-275903B668E1

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+

+[Binaries.X64]

+  PE32|SmmAccess.efi

+  DXE_DEPEX|SmmAccess.depex

+

+[PatchPcd.X64]

+

+[Protocols.X64]

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2156090e2c2045bd957d417faf3d0e87db95d7f3
GIT binary patch
literal 3584
zcmeHJUuaWT7(d3|xmmNTo0n}W+f`ESQ^=OG)wyAAP1q@<5dTe?FV@w%L6x}1Q9Brc
zn@rNf)uQZ=Fc9`I#(Y|3EOrlGlR;CP3HHH1C|I_ax!T1c`rwr7?>jf?Zu_91KKPIW
zH{bXBeSgmPeH_k7#|P|@m;K0*PcASKW320oh8YQOuoZfv?|H_Ee#SKg7DCcjTcrDH
zz#|jTtLYYa=m)9Zv=8$0+7dcr%e=&6>cP~`z7%rYor@nTh<cbg7N#@yQLw8s)d^G2
z9Q=TgGk6x#vm%U@YA`@b2p`RAK7s#Ngt4|@pPTSyqCrT%S%U-J21|WCg%kL%Se~)&
z%);MpEtVr2xp_UrMcdZ6rJTS4i;E50W8qPrQ(`!3TwH?o8EKZ%Ln0RqG(#_`r2Ah1
zb&}2n&uRBS8P@uR<f6xO+AYG);UrEY0@lJ)=0!ZVief9Ud*M@!M-Uf^T}|Q)$~ZCh
z*PECu7Z-Wf-oJti?HC-m@J~QE8<HRny2RBQQRL=tp>5PEI%`GBTevO6AWN$(A4#hd
zf;FWb#&XKfh)^>>QhKxL000$~rfPFaCm^Z}y0x#74f>-XVe5dPPAp{?@gs^3;^UUy
z4`Evk)$PZM1`={uawL}WHL8%4K}DCL*BVsL0${5Ogv_dSkf-H8FP%6lhznaN^N@LR
zetUkNd(hHWqM>`rFwZ!~NeAuxFlXO8Li+<ThB)0_5!wZ)X2BP>37nCjfz(q{)eTVq
z7?PklY(xKE>aA|TQ3>9z<`NRM$Qb|U1Wt#<xv8c!YEgeVXO@;%+J%j|w_^C$o6+HO
zaN?G>1R^}@BqE@0`z57%s6Sn*K~e~B=Fav=xr|(~%&3~pBfXKw02t4X?^BE+XHvs4
zP&3Cs#aA;m`xTVvzzagVhD>>eyN+7C0$>(e@;a;);s2eWEZ8jhP%fz9X(}p8hB>+%
zG<vNVztSZa%Z{ZM3++ppCS<6?|1Kiq<lNXB_V5sr8UuxYVi`O2lF*W_)0EJ<tL}}(
zO4u&)JkAEKbg`TnPc?e5(AL0py4s+Oo38dXg5GM8jLtG9;7!s!;u|^vQ-QHEhI<s(
zGUh!Ffs=_T%DowzAgPbMn|by4Slf{;1FY}n`%5?9IKC?X)5>_7rw+X}{N2@WKE3ne
z>!p$Q1AiY{cek*fhWgNjD%l{uD>}YeZ_Go3pMb-A>o&#dEu=TB_CC`8fQz_SBo6G}
zBe&7rr>pihMu0;U^NIVmC4qYg@96D?ko{0!u07D--`}-k7a0&F_exeD*$89wF4o>i
Ra;dNS1nLv0PvB{pz<p*ZpjH3?

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.inf
new file mode 100644
index 0000000..1195c83
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.inf
@@ -0,0 +1,122 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2011 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmControl

+  FILE_GUID                  = DD787473-07CE-4c63-82CE-930B33F39C09

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlDriverEntryInit

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+

+[Binaries.X64]

+  PE32|SmmControl.efi

+  DXE_DEPEX|SmmControl.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x800

+

+

+[Protocols.X64]

+  gEfiSmmControl2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..4bb6074e530b68b05103418ff7a5cc63d3cbbbef
GIT binary patch
literal 126
zcmV-^0D=Dkx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
gGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj%K0|NsC2pp3&(f|Me

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..cb40b77629df0437da07b4ecf049020b71ea963a
GIT binary patch
literal 19328
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.inf
new file mode 100644
index 0000000..0dcf3b3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.inf
@@ -0,0 +1,253 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitDxe

+  FILE_GUID                  = 93C81A74-B648-4f7f-925E-E4A0CDCC776D

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|VlvInitDxe.efi

+  DXE_DEPEX|VlvInitDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3910

+

+

+[Protocols.X64]

+  gDxeVlvPlatformPolicyGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+

+  gIgdOpRegionProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gBmpImageGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.X64]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

-- 
2.21.0.windows.1



-- 
Qian Yi
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#43080): https://edk2.groups.io/g/devel/message/43080
Mute This Topic: https://groups.io/mt/32267733/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-

Re: [edk2-devel] [edk2-non-osi Patch] Vlv2SocBinPkg: Add initial binaries for Vlv2TbltDevicePkg
Posted by Sun, Zailiang 4 years, 9 months ago
Reviewed-By: Zailiang Sun <zailiang.sun@intel.com>

-----Original Message-----
From: Kinney, Michael D 
Sent: Monday, July 01, 2019 11:07 AM
To: devel@edk2.groups.io
Cc: Sun, Zailiang <zailiang.sun@intel.com>; Qian, Yi <yi.qian@intel.com>
Subject: [edk2-non-osi Patch] Vlv2SocBinPkg: Add initial binaries for Vlv2TbltDevicePkg

Add the initial version of the binaries required to
build Vlv2TbltDevicePkg in the edk2-platform repository

Cc: Zailiang Sun <zailiang.sun@intel.com>
Cc: Yi Qian <yi.qian@intel.com>
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
---
 .../RELEASE_VS2008x86/IA32/IntelGopDriver.efi |   Bin 0 -> 60192 bytes
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../RELEASE_VS2008x86/X64/IntelGopDriver.efi  |   Bin 0 -> 75008 bytes
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../GOP/7.2.1011/VBT/MNW2/Vbt.bin             |   Bin 0 -> 4096 bytes
 .../GOP/7.2.1011/VBT/MNW2/vbt.bsf             |  9216 +++++++++++
 .../IA32DEBUG/IA32/CpuPeim.depex              |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.efi  |   Bin 0 -> 10624 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf  |   137 +
 .../IA32DEBUG/IA32/DigitalThermalSensor.depex |     1 +
 .../IA32DEBUG/IA32/DigitalThermalSensor.efi   |   Bin 0 -> 14848 bytes
 .../IA32DEBUG/IA32/DigitalThermalSensor.inf   |   190 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.depex   |   Bin 0 -> 108 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.efi     |   Bin 0 -> 12704 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf     |   219 +
 .../IA32DEBUG/IA32/GraphicDxeInitSmm.depex    |   Bin 0 -> 162 bytes
 .../IA32DEBUG/IA32/GraphicDxeInitSmm.efi      |   Bin 0 -> 25088 bytes
 .../IA32DEBUG/IA32/GraphicDxeInitSmm.inf      |   265 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.efi   |   Bin 0 -> 17984 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf   |   247 +
 .../IA32DEBUG/IA32/MemoryInit.depex           |     1 +
 .../IA32DEBUG/IA32/MemoryInit.efi             |   Bin 0 -> 98304 bytes
 .../IA32DEBUG/IA32/MemoryInit.inf             |   201 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../IA32DEBUG/IA32/PchBiosWriteProtect.depex  |     1 +
 .../IA32DEBUG/IA32/PchBiosWriteProtect.efi    |   Bin 0 -> 11264 bytes
 .../IA32DEBUG/IA32/PchBiosWriteProtect.inf    |   130 +
 .../IA32DEBUG/IA32/PchEarlyInitPeim.depex     |     1 +
 .../IA32DEBUG/IA32/PchEarlyInitPeim.efi       |   Bin 0 -> 15040 bytes
 .../IA32DEBUG/IA32/PchEarlyInitPeim.inf       |    97 +
 .../IA32DEBUG/IA32/PchInitDxe.depex           |   Bin 0 -> 126 bytes
 .../IA32DEBUG/IA32/PchInitDxe.efi             |   Bin 0 -> 102496 bytes
 .../IA32DEBUG/IA32/PchInitDxe.inf             |   278 +
 .../IA32DEBUG/IA32/PchInitPeim.depex          |     1 +
 .../IA32DEBUG/IA32/PchInitPeim.efi            |   Bin 0 -> 22976 bytes
 .../IA32DEBUG/IA32/PchInitPeim.inf            |   150 +
 .../IA32DEBUG/IA32/PchInitSmm.depex           |   Bin 0 -> 162 bytes
 .../IA32DEBUG/IA32/PchInitSmm.efi             |   Bin 0 -> 35840 bytes
 .../IA32DEBUG/IA32/PchInitSmm.inf             |   290 +
 .../IA32DEBUG/IA32/PchPcieSmm.depex           |   Bin 0 -> 108 bytes
 .../IA32DEBUG/IA32/PchPcieSmm.efi             |   Bin 0 -> 26112 bytes
 .../IA32DEBUG/IA32/PchPcieSmm.inf             |   251 +
 .../IA32DEBUG/IA32/PchPolicyInitDxe.depex     |     1 +
 .../IA32DEBUG/IA32/PchPolicyInitDxe.efi       |   Bin 0 -> 9440 bytes
 .../IA32DEBUG/IA32/PchPolicyInitDxe.inf       |   123 +
 .../IA32DEBUG/IA32/PchReset.depex             |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.efi |   Bin 0 -> 12288 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf |   137 +
 .../IA32DEBUG/IA32/PchS3SupportDxe.depex      |     1 +
 .../IA32DEBUG/IA32/PchS3SupportDxe.efi        |   Bin 0 -> 25760 bytes
 .../IA32DEBUG/IA32/PchS3SupportDxe.inf        |   257 +
 .../IA32DEBUG/IA32/PchSmbusArpDisabled.depex  |     1 +
 .../IA32DEBUG/IA32/PchSmbusArpDisabled.efi    |   Bin 0 -> 7616 bytes
 .../IA32DEBUG/IA32/PchSmbusArpDisabled.inf    |   144 +
 .../IA32DEBUG/IA32/PchSmbusDxe.depex          |     1 +
 .../IA32DEBUG/IA32/PchSmbusDxe.efi            |   Bin 0 -> 15552 bytes
 .../IA32DEBUG/IA32/PchSmbusDxe.inf            |   214 +
 .../IA32DEBUG/IA32/PchSmiDispatcher.depex     |   Bin 0 -> 72 bytes
 .../IA32DEBUG/IA32/PchSmiDispatcher.efi       |   Bin 0 -> 24576 bytes
 .../IA32DEBUG/IA32/PchSmiDispatcher.inf       |   181 +
 .../IA32DEBUG/IA32/PchSpiPeim.depex           |     1 +
 .../IA32DEBUG/IA32/PchSpiPeim.efi             |   Bin 0 -> 10304 bytes
 .../IA32DEBUG/IA32/PchSpiPeim.inf             |   139 +
 .../IA32DEBUG/IA32/PchSpiRuntime.depex        |     1 +
 .../IA32DEBUG/IA32/PchSpiRuntime.efi          |   Bin 0 -> 23552 bytes
 .../IA32DEBUG/IA32/PchSpiRuntime.inf          |   258 +
 .../IA32DEBUG/IA32/PchSpiSmm.depex            |     1 +
 .../IA32DEBUG/IA32/PchSpiSmm.efi              |   Bin 0 -> 24064 bytes
 .../IA32DEBUG/IA32/PchSpiSmm.inf              |   251 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.efi   |   Bin 0 -> 5984 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf   |   137 +
 .../IA32DEBUG/IA32/PciHostBridge.depex        |   Bin 0 -> 54 bytes
 .../IA32DEBUG/IA32/PciHostBridge.efi          |   Bin 0 -> 22336 bytes
 .../IA32DEBUG/IA32/PciHostBridge.inf          |   254 +
 .../IA32DEBUG/IA32/PeiSmmAccess.depex         |     1 +
 .../IA32DEBUG/IA32/PeiSmmAccess.efi           |   Bin 0 -> 6208 bytes
 .../IA32DEBUG/IA32/PeiSmmAccess.inf           |   132 +
 .../IA32DEBUG/IA32/PeiSmmControl.depex        |     1 +
 .../IA32DEBUG/IA32/PeiSmmControl.efi          |   Bin 0 -> 5120 bytes
 .../IA32DEBUG/IA32/PeiSmmControl.inf          |   110 +
 .../IA32DEBUG/IA32/PlatformCpuPolicy.depex    |   Bin 0 -> 72 bytes
 .../IA32DEBUG/IA32/PlatformCpuPolicy.efi      |   Bin 0 -> 17632 bytes
 .../IA32DEBUG/IA32/PlatformCpuPolicy.inf      |   227 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.depex |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.efi   |   Bin 0 -> 17472 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf   |   207 +
 .../IA32DEBUG/IA32/PowerManagement2.depex     |     1 +
 .../IA32DEBUG/IA32/PowerManagement2.efi       |   Bin 0 -> 36352 bytes
 .../IA32DEBUG/IA32/PowerManagement2.inf       |   270 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.bin |   Bin 0 -> 64 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.com |   Bin 0 -> 64 bytes
 .../IA32DEBUG/IA32/SataController.efi         |   Bin 0 -> 12128 bytes
 .../IA32DEBUG/IA32/SataController.inf         |   204 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex |     1 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.efi   |   Bin 0 -> 7456 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf   |   116 +
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.efi  |   Bin 0 -> 8864 bytes
 .../Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf  |   130 +
 .../IA32DEBUG/IA32/SmmAccess.depex            |   Bin 0 -> 36 bytes
 .../IA32DEBUG/IA32/SmmAccess.efi              |   Bin 0 -> 10336 bytes
 .../IA32DEBUG/IA32/SmmAccess.inf              |   210 +
 .../IA32DEBUG/IA32/SmmControl.depex           |     1 +
 .../IA32DEBUG/IA32/SmmControl.efi             |   Bin 0 -> 11776 bytes
 .../IA32DEBUG/IA32/SmmControl.inf             |   129 +
 .../IA32DEBUG/IA32/VlvInitDxe.depex           |   Bin 0 -> 126 bytes
 .../IA32DEBUG/IA32/VlvInitDxe.efi             |   Bin 0 -> 26656 bytes
 .../IA32DEBUG/IA32/VlvInitDxe.inf             |   259 +
 .../IA32DEBUG/IA32/VlvInitPeim.depex          |     1 +
 .../IA32DEBUG/IA32/VlvInitPeim.efi            |   Bin 0 -> 9120 bytes
 .../IA32DEBUG/IA32/VlvInitPeim.inf            |   116 +
 .../IA32RELEASE/IA32/CpuPeim.depex            |     1 +
 .../IA32RELEASE/IA32/CpuPeim.efi              |   Bin 0 -> 6080 bytes
 .../IA32RELEASE/IA32/CpuPeim.inf              |   123 +
 .../IA32/DigitalThermalSensor.depex           |     1 +
 .../IA32RELEASE/IA32/DigitalThermalSensor.efi |   Bin 0 -> 6144 bytes
 .../IA32RELEASE/IA32/DigitalThermalSensor.inf |   182 +
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.depex |   Bin 0 -> 108 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.efi   |   Bin 0 -> 3872 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf   |   213 +
 .../IA32RELEASE/IA32/GraphicDxeInitSmm.depex  |   Bin 0 -> 162 bytes
 .../IA32RELEASE/IA32/GraphicDxeInitSmm.efi    |   Bin 0 -> 9216 bytes
 .../IA32RELEASE/IA32/GraphicDxeInitSmm.inf    |   259 +
 .../IA32RELEASE/IA32/ISPDxe.depex             |     1 +
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.efi |   Bin 0 -> 6144 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf |   241 +
 .../IA32RELEASE/IA32/MemoryInit.depex         |     1 +
 .../IA32RELEASE/IA32/MemoryInit.efi           |   Bin 0 -> 93888 bytes
 .../IA32RELEASE/IA32/MemoryInit.inf           |   196 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../IA32/PchBiosWriteProtect.depex            |     1 +
 .../IA32RELEASE/IA32/PchBiosWriteProtect.efi  |   Bin 0 -> 2560 bytes
 .../IA32RELEASE/IA32/PchBiosWriteProtect.inf  |   121 +
 .../IA32RELEASE/IA32/PchEarlyInitPeim.depex   |     1 +
 .../IA32RELEASE/IA32/PchEarlyInitPeim.efi     |   Bin 0 -> 14752 bytes
 .../IA32RELEASE/IA32/PchEarlyInitPeim.inf     |    97 +
 .../IA32RELEASE/IA32/PchInitDxe.depex         |   Bin 0 -> 126 bytes
 .../IA32RELEASE/IA32/PchInitDxe.efi           |   Bin 0 -> 61536 bytes
 .../IA32RELEASE/IA32/PchInitDxe.inf           |   272 +
 .../IA32RELEASE/IA32/PchInitPeim.depex        |     1 +
 .../IA32RELEASE/IA32/PchInitPeim.efi          |   Bin 0 -> 11776 bytes
 .../IA32RELEASE/IA32/PchInitPeim.inf          |   136 +
 .../IA32RELEASE/IA32/PchInitSmm.depex         |   Bin 0 -> 162 bytes
 .../IA32RELEASE/IA32/PchInitSmm.efi           |   Bin 0 -> 18432 bytes
 .../IA32RELEASE/IA32/PchInitSmm.inf           |   284 +
 .../IA32RELEASE/IA32/PchPcieSmm.depex         |   Bin 0 -> 108 bytes
 .../IA32RELEASE/IA32/PchPcieSmm.efi           |   Bin 0 -> 11264 bytes
 .../IA32RELEASE/IA32/PchPcieSmm.inf           |   245 +
 .../IA32RELEASE/IA32/PchPolicyInitDxe.depex   |     1 +
 .../IA32RELEASE/IA32/PchPolicyInitDxe.efi     |   Bin 0 -> 2368 bytes
 .../IA32RELEASE/IA32/PchPolicyInitDxe.inf     |   109 +
 .../IA32RELEASE/IA32/PchReset.depex           |     1 +
 .../IA32RELEASE/IA32/PchReset.efi             |   Bin 0 -> 3584 bytes
 .../IA32RELEASE/IA32/PchReset.inf             |   130 +
 .../IA32RELEASE/IA32/PchS3SupportDxe.depex    |     1 +
 .../IA32RELEASE/IA32/PchS3SupportDxe.efi      |   Bin 0 -> 13472 bytes
 .../IA32RELEASE/IA32/PchS3SupportDxe.inf      |   251 +
 .../IA32/PchSmbusArpDisabled.depex            |     1 +
 .../IA32RELEASE/IA32/PchSmbusArpDisabled.efi  |   Bin 0 -> 3136 bytes
 .../IA32RELEASE/IA32/PchSmbusArpDisabled.inf  |   130 +
 .../IA32RELEASE/IA32/PchSmbusDxe.depex        |     1 +
 .../IA32RELEASE/IA32/PchSmbusDxe.efi          |   Bin 0 -> 4832 bytes
 .../IA32RELEASE/IA32/PchSmbusDxe.inf          |   206 +
 .../IA32RELEASE/IA32/PchSmiDispatcher.depex   |   Bin 0 -> 72 bytes
 .../IA32RELEASE/IA32/PchSmiDispatcher.efi     |   Bin 0 -> 12288 bytes
 .../IA32RELEASE/IA32/PchSmiDispatcher.inf     |   175 +
 .../IA32RELEASE/IA32/PchSpiPeim.depex         |     1 +
 .../IA32RELEASE/IA32/PchSpiPeim.efi           |   Bin 0 -> 4384 bytes
 .../IA32RELEASE/IA32/PchSpiPeim.inf           |   125 +
 .../IA32RELEASE/IA32/PchSpiRuntime.depex      |     1 +
 .../IA32RELEASE/IA32/PchSpiRuntime.efi        |   Bin 0 -> 10240 bytes
 .../IA32RELEASE/IA32/PchSpiRuntime.inf        |   252 +
 .../IA32RELEASE/IA32/PchSpiSmm.depex          |     1 +
 .../IA32RELEASE/IA32/PchSpiSmm.efi            |   Bin 0 -> 9728 bytes
 .../IA32RELEASE/IA32/PchSpiSmm.inf            |   245 +
 .../IA32RELEASE/IA32/PchUsb.depex             |     1 +
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.efi |   Bin 0 -> 1344 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf |   124 +
 .../IA32RELEASE/IA32/PciHostBridge.depex      |   Bin 0 -> 54 bytes
 .../IA32RELEASE/IA32/PciHostBridge.efi        |   Bin 0 -> 9792 bytes
 .../IA32RELEASE/IA32/PciHostBridge.inf        |   248 +
 .../IA32RELEASE/IA32/PeiSmmAccess.depex       |     1 +
 .../IA32RELEASE/IA32/PeiSmmAccess.efi         |   Bin 0 -> 1664 bytes
 .../IA32RELEASE/IA32/PeiSmmAccess.inf         |   119 +
 .../IA32RELEASE/IA32/PeiSmmControl.depex      |     1 +
 .../IA32RELEASE/IA32/PeiSmmControl.efi        |   Bin 0 -> 960 bytes
 .../IA32RELEASE/IA32/PeiSmmControl.inf        |    95 +
 .../IA32RELEASE/IA32/PlatformCpuPolicy.depex  |   Bin 0 -> 72 bytes
 .../IA32RELEASE/IA32/PlatformCpuPolicy.efi    |   Bin 0 -> 8064 bytes
 .../IA32RELEASE/IA32/PlatformCpuPolicy.inf    |   216 +
 .../IA32RELEASE/IA32/PnpDxe.depex             |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.efi |   Bin 0 -> 9664 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf |   200 +
 .../IA32RELEASE/IA32/PowerManagement2.depex   |     1 +
 .../IA32RELEASE/IA32/PowerManagement2.efi     |   Bin 0 -> 18432 bytes
 .../IA32RELEASE/IA32/PowerManagement2.inf     |   264 +
 .../IA32RELEASE/IA32/ResetVec.bin             |   Bin 0 -> 64 bytes
 .../IA32RELEASE/IA32/ResetVec.com             |   Bin 0 -> 64 bytes
 .../IA32RELEASE/IA32/SataController.efi       |   Bin 0 -> 3264 bytes
 .../IA32RELEASE/IA32/SataController.inf       |   195 +
 .../IA32RELEASE/IA32/SeCUma.depex             |     1 +
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.efi |   Bin 0 -> 1856 bytes
 .../Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf |   101 +
 .../IA32RELEASE/IA32/SecCore.efi              |   Bin 0 -> 8000 bytes
 .../IA32RELEASE/IA32/SecCore.inf              |   152 +
 .../IA32RELEASE/IA32/SmmAccess.depex          |   Bin 0 -> 36 bytes
 .../IA32RELEASE/IA32/SmmAccess.efi            |   Bin 0 -> 1984 bytes
 .../IA32RELEASE/IA32/SmmAccess.inf            |   198 +
 .../IA32RELEASE/IA32/SmmControl.depex         |     1 +
 .../IA32RELEASE/IA32/SmmControl.efi           |   Bin 0 -> 3072 bytes
 .../IA32RELEASE/IA32/SmmControl.inf           |   122 +
 .../IA32RELEASE/IA32/VlvInitDxe.depex         |   Bin 0 -> 126 bytes
 .../IA32RELEASE/IA32/VlvInitDxe.efi           |   Bin 0 -> 16640 bytes
 .../IA32RELEASE/IA32/VlvInitDxe.inf           |   253 +
 .../IA32RELEASE/IA32/VlvInitPeim.depex        |     1 +
 .../IA32RELEASE/IA32/VlvInitPeim.efi          |   Bin 0 -> 3104 bytes
 .../IA32RELEASE/IA32/VlvInitPeim.inf          |   101 +
 .../Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h   |    72 +
 .../Vlv2SocBinPkg/Microcode/M0130673321.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0130678806.inc   | 12800 +++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0130679901.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0130679906.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0130679907.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M023067221D.inc   | 13056 ++++++++++++++++
 .../Vlv2SocBinPkg/Microcode/M0F30679909.inc   | 13056 ++++++++++++++++
 .../Microcode/MicrocodeUpdates.inf            |    51 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../UNDI/I211PcieUndiDxe/X64/E7006X3.EFI      |   Bin 0 -> 341536 bytes
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../UNDI/RtkUndiDxe/IA32/RtkUndiDxe.efi       |   Bin 0 -> 78368 bytes
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../UNDI/RtkUndiDxe/X64/RtkUndiDxe.efi        |   Bin 0 -> 92064 bytes
 Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec |    36 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.efi   |   Bin 0 -> 10624 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf   |   137 +
 .../X64DEBUG/IA32/MemoryInit.depex            |     1 +
 .../X64DEBUG/IA32/MemoryInit.efi              |   Bin 0 -> 98304 bytes
 .../X64DEBUG/IA32/MemoryInit.inf              |   201 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../X64DEBUG/IA32/PchEarlyInitPeim.depex      |     1 +
 .../X64DEBUG/IA32/PchEarlyInitPeim.efi        |   Bin 0 -> 15040 bytes
 .../X64DEBUG/IA32/PchEarlyInitPeim.inf        |    97 +
 .../X64DEBUG/IA32/PchInitPeim.depex           |     1 +
 .../X64DEBUG/IA32/PchInitPeim.efi             |   Bin 0 -> 22976 bytes
 .../X64DEBUG/IA32/PchInitPeim.inf             |   150 +
 .../X64DEBUG/IA32/PchSmbusArpDisabled.depex   |     1 +
 .../X64DEBUG/IA32/PchSmbusArpDisabled.efi     |   Bin 0 -> 7616 bytes
 .../X64DEBUG/IA32/PchSmbusArpDisabled.inf     |   144 +
 .../X64DEBUG/IA32/PchSpiPeim.depex            |     1 +
 .../X64DEBUG/IA32/PchSpiPeim.efi              |   Bin 0 -> 10304 bytes
 .../X64DEBUG/IA32/PchSpiPeim.inf              |   139 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex  |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.efi    |   Bin 0 -> 5984 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf    |   137 +
 .../X64DEBUG/IA32/PeiSmmAccess.depex          |     1 +
 .../X64DEBUG/IA32/PeiSmmAccess.efi            |   Bin 0 -> 6208 bytes
 .../X64DEBUG/IA32/PeiSmmAccess.inf            |   132 +
 .../X64DEBUG/IA32/PeiSmmControl.depex         |     1 +
 .../X64DEBUG/IA32/PeiSmmControl.efi           |   Bin 0 -> 5120 bytes
 .../X64DEBUG/IA32/PeiSmmControl.inf           |   110 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.bin  |   Bin 0 -> 64 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.com  |   Bin 0 -> 64 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex  |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.efi    |   Bin 0 -> 7456 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf    |   116 +
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.efi   |   Bin 0 -> 8864 bytes
 .../Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf   |   130 +
 .../X64DEBUG/IA32/VlvInitPeim.depex           |     1 +
 .../X64DEBUG/IA32/VlvInitPeim.efi             |   Bin 0 -> 9120 bytes
 .../X64DEBUG/IA32/VlvInitPeim.inf             |   116 +
 .../X64DEBUG/X64/DigitalThermalSensor.depex   |     1 +
 .../X64DEBUG/X64/DigitalThermalSensor.efi     |   Bin 0 -> 32768 bytes
 .../X64DEBUG/X64/DigitalThermalSensor.inf     |   190 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/Dptf.depex     |   Bin 0 -> 108 bytes
 .../Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.efi |   Bin 0 -> 29120 bytes
 .../Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf |   219 +
 .../X64DEBUG/X64/GraphicDxeInitSmm.depex      |   Bin 0 -> 162 bytes
 .../X64DEBUG/X64/GraphicDxeInitSmm.efi        |   Bin 0 -> 54272 bytes
 .../X64DEBUG/X64/GraphicDxeInitSmm.inf        |   265 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex   |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.efi     |   Bin 0 -> 39328 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf     |   247 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../X64DEBUG/X64/PchBiosWriteProtect.depex    |     1 +
 .../X64DEBUG/X64/PchBiosWriteProtect.efi      |   Bin 0 -> 26624 bytes
 .../X64DEBUG/X64/PchBiosWriteProtect.inf      |   130 +
 .../X64DEBUG/X64/PchInitDxe.depex             |   Bin 0 -> 126 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.efi |   Bin 0 -> 176256 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf |   278 +
 .../X64DEBUG/X64/PchInitSmm.depex             |   Bin 0 -> 162 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.efi |   Bin 0 -> 67072 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf |   290 +
 .../X64DEBUG/X64/PchPcieSmm.depex             |   Bin 0 -> 108 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.efi |   Bin 0 -> 55808 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf |   251 +
 .../X64DEBUG/X64/PchPolicyInitDxe.depex       |     1 +
 .../X64DEBUG/X64/PchPolicyInitDxe.efi         |   Bin 0 -> 23616 bytes
 .../X64DEBUG/X64/PchPolicyInitDxe.inf         |   123 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchReset.efi   |   Bin 0 -> 29184 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf   |   137 +
 .../X64DEBUG/X64/PchS3SupportDxe.depex        |     1 +
 .../X64DEBUG/X64/PchS3SupportDxe.efi          |   Bin 0 -> 58368 bytes
 .../X64DEBUG/X64/PchS3SupportDxe.inf          |   257 +
 .../X64DEBUG/X64/PchSmbusDxe.depex            |     1 +
 .../X64DEBUG/X64/PchSmbusDxe.efi              |   Bin 0 -> 35328 bytes
 .../X64DEBUG/X64/PchSmbusDxe.inf              |   214 +
 .../X64DEBUG/X64/PchSmiDispatcher.depex       |   Bin 0 -> 72 bytes
 .../X64DEBUG/X64/PchSmiDispatcher.efi         |   Bin 0 -> 53760 bytes
 .../X64DEBUG/X64/PchSmiDispatcher.inf         |   181 +
 .../X64DEBUG/X64/PchSpiRuntime.depex          |     1 +
 .../X64DEBUG/X64/PchSpiRuntime.efi            |   Bin 0 -> 50688 bytes
 .../X64DEBUG/X64/PchSpiRuntime.inf            |   258 +
 .../X64DEBUG/X64/PchSpiSmm.depex              |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.efi  |   Bin 0 -> 54272 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf  |   251 +
 .../X64DEBUG/X64/PciHostBridge.depex          |   Bin 0 -> 54 bytes
 .../X64DEBUG/X64/PciHostBridge.efi            |   Bin 0 -> 49856 bytes
 .../X64DEBUG/X64/PciHostBridge.inf            |   254 +
 .../X64DEBUG/X64/PlatformCpuPolicy.depex      |   Bin 0 -> 72 bytes
 .../X64DEBUG/X64/PlatformCpuPolicy.efi        |   Bin 0 -> 35392 bytes
 .../X64DEBUG/X64/PlatformCpuPolicy.inf        |   227 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.depex   |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.efi     |   Bin 0 -> 33664 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf     |   207 +
 .../X64DEBUG/X64/PowerManagement2.depex       |     1 +
 .../X64DEBUG/X64/PowerManagement2.efi         |   Bin 0 -> 75776 bytes
 .../X64DEBUG/X64/PowerManagement2.inf         |   270 +
 .../X64DEBUG/X64/SataController.efi           |   Bin 0 -> 30208 bytes
 .../X64DEBUG/X64/SataController.inf           |   204 +
 .../X64DEBUG/X64/SmmAccess.depex              |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.efi  |   Bin 0 -> 25600 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf  |   210 +
 .../X64DEBUG/X64/SmmControl.depex             |     1 +
 .../Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.efi |   Bin 0 -> 27136 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf |   129 +
 .../X64DEBUG/X64/VlvInitDxe.depex             |   Bin 0 -> 126 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.efi |   Bin 0 -> 55168 bytes
 .../Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf |   259 +
 .../X64RELEASE/IA32/CpuPeim.depex             |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.efi |   Bin 0 -> 6080 bytes
 .../Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf |   123 +
 .../X64RELEASE/IA32/MemoryInit.depex          |     1 +
 .../X64RELEASE/IA32/MemoryInit.efi            |   Bin 0 -> 93888 bytes
 .../X64RELEASE/IA32/MemoryInit.inf            |   196 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../X64RELEASE/IA32/PchEarlyInitPeim.depex    |     1 +
 .../X64RELEASE/IA32/PchEarlyInitPeim.efi      |   Bin 0 -> 14752 bytes
 .../X64RELEASE/IA32/PchEarlyInitPeim.inf      |    97 +
 .../X64RELEASE/IA32/PchInitPeim.depex         |     1 +
 .../X64RELEASE/IA32/PchInitPeim.efi           |   Bin 0 -> 11776 bytes
 .../X64RELEASE/IA32/PchInitPeim.inf           |   136 +
 .../X64RELEASE/IA32/PchSmbusArpDisabled.depex |     1 +
 .../X64RELEASE/IA32/PchSmbusArpDisabled.efi   |   Bin 0 -> 3136 bytes
 .../X64RELEASE/IA32/PchSmbusArpDisabled.inf   |   130 +
 .../X64RELEASE/IA32/PchSpiPeim.depex          |     1 +
 .../X64RELEASE/IA32/PchSpiPeim.efi            |   Bin 0 -> 4384 bytes
 .../X64RELEASE/IA32/PchSpiPeim.inf            |   125 +
 .../X64RELEASE/IA32/PchUsb.depex              |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.efi  |   Bin 0 -> 1344 bytes
 .../Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf  |   124 +
 .../X64RELEASE/IA32/PeiSmmAccess.depex        |     1 +
 .../X64RELEASE/IA32/PeiSmmAccess.efi          |   Bin 0 -> 1664 bytes
 .../X64RELEASE/IA32/PeiSmmAccess.inf          |   119 +
 .../X64RELEASE/IA32/PeiSmmControl.depex       |     1 +
 .../X64RELEASE/IA32/PeiSmmControl.efi         |   Bin 0 -> 960 bytes
 .../X64RELEASE/IA32/PeiSmmControl.inf         |    95 +
 .../X64RELEASE/IA32/ResetVec.bin              |   Bin 0 -> 64 bytes
 .../X64RELEASE/IA32/ResetVec.com              |   Bin 0 -> 64 bytes
 .../X64RELEASE/IA32/SeCUma.depex              |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.efi  |   Bin 0 -> 1856 bytes
 .../Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf  |   101 +
 .../Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.efi |   Bin 0 -> 8000 bytes
 .../Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf |   152 +
 .../X64RELEASE/IA32/VlvInitPeim.depex         |     1 +
 .../X64RELEASE/IA32/VlvInitPeim.efi           |   Bin 0 -> 3104 bytes
 .../X64RELEASE/IA32/VlvInitPeim.inf           |   101 +
 .../X64RELEASE/X64/DigitalThermalSensor.depex |     1 +
 .../X64RELEASE/X64/DigitalThermalSensor.efi   |   Bin 0 -> 8192 bytes
 .../X64RELEASE/X64/DigitalThermalSensor.inf   |   182 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/Dptf.depex   |   Bin 0 -> 108 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/Dptf.efi     |   Bin 0 -> 4384 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf     |   213 +
 .../X64RELEASE/X64/GraphicDxeInitSmm.depex    |   Bin 0 -> 162 bytes
 .../X64RELEASE/X64/GraphicDxeInitSmm.efi      |   Bin 0 -> 11264 bytes
 .../X64RELEASE/X64/GraphicDxeInitSmm.inf      |   259 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.efi   |   Bin 0 -> 6880 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf   |   241 +
 ...MAXUEFIFirmware-LicenseAgreement-Final.txt |   134 +
 .../X64RELEASE/X64/PchBiosWriteProtect.depex  |     1 +
 .../X64RELEASE/X64/PchBiosWriteProtect.efi    |   Bin 0 -> 4096 bytes
 .../X64RELEASE/X64/PchBiosWriteProtect.inf    |   121 +
 .../X64RELEASE/X64/PchInitDxe.depex           |   Bin 0 -> 126 bytes
 .../X64RELEASE/X64/PchInitDxe.efi             |   Bin 0 -> 59648 bytes
 .../X64RELEASE/X64/PchInitDxe.inf             |   272 +
 .../X64RELEASE/X64/PchInitSmm.depex           |   Bin 0 -> 162 bytes
 .../X64RELEASE/X64/PchInitSmm.efi             |   Bin 0 -> 18432 bytes
 .../X64RELEASE/X64/PchInitSmm.inf             |   284 +
 .../X64RELEASE/X64/PchPcieSmm.depex           |   Bin 0 -> 108 bytes
 .../X64RELEASE/X64/PchPcieSmm.efi             |   Bin 0 -> 13312 bytes
 .../X64RELEASE/X64/PchPcieSmm.inf             |   245 +
 .../X64RELEASE/X64/PchPolicyInitDxe.depex     |     1 +
 .../X64RELEASE/X64/PchPolicyInitDxe.efi       |   Bin 0 -> 2528 bytes
 .../X64RELEASE/X64/PchPolicyInitDxe.inf       |   109 +
 .../X64RELEASE/X64/PchReset.depex             |     1 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/PchReset.efi |   Bin 0 -> 4608 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf |   130 +
 .../X64RELEASE/X64/PchS3SupportDxe.depex      |     1 +
 .../X64RELEASE/X64/PchS3SupportDxe.efi        |   Bin 0 -> 16224 bytes
 .../X64RELEASE/X64/PchS3SupportDxe.inf        |   251 +
 .../X64RELEASE/X64/PchSmbusDxe.depex          |     1 +
 .../X64RELEASE/X64/PchSmbusDxe.efi            |   Bin 0 -> 6848 bytes
 .../X64RELEASE/X64/PchSmbusDxe.inf            |   206 +
 .../X64RELEASE/X64/PchSmiDispatcher.depex     |   Bin 0 -> 72 bytes
 .../X64RELEASE/X64/PchSmiDispatcher.efi       |   Bin 0 -> 17920 bytes
 .../X64RELEASE/X64/PchSmiDispatcher.inf       |   175 +
 .../X64RELEASE/X64/PchSpiRuntime.depex        |     1 +
 .../X64RELEASE/X64/PchSpiRuntime.efi          |   Bin 0 -> 13312 bytes
 .../X64RELEASE/X64/PchSpiRuntime.inf          |   252 +
 .../X64RELEASE/X64/PchSpiSmm.depex            |     1 +
 .../X64RELEASE/X64/PchSpiSmm.efi              |   Bin 0 -> 11776 bytes
 .../X64RELEASE/X64/PchSpiSmm.inf              |   245 +
 .../X64RELEASE/X64/PciHostBridge.depex        |   Bin 0 -> 54 bytes
 .../X64RELEASE/X64/PciHostBridge.efi          |   Bin 0 -> 21152 bytes
 .../X64RELEASE/X64/PciHostBridge.inf          |   248 +
 .../X64RELEASE/X64/PlatformCpuPolicy.depex    |   Bin 0 -> 72 bytes
 .../X64RELEASE/X64/PlatformCpuPolicy.efi      |   Bin 0 -> 9344 bytes
 .../X64RELEASE/X64/PlatformCpuPolicy.inf      |   216 +
 .../Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.depex |   Bin 0 -> 36 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.efi   |   Bin 0 -> 10080 bytes
 .../Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf   |   200 +
 .../X64RELEASE/X64/PowerManagement2.depex     |     1 +
 .../X64RELEASE/X64/PowerManagement2.efi       |   Bin 0 -> 21504 bytes
 .../X64RELEASE/X64/PowerManagement2.inf       |   264 +
 .../X64RELEASE/X64/SataController.efi         |   Bin 0 -> 4064 bytes
 .../X64RELEASE/X64/SataController.inf         |   195 +
 .../X64RELEASE/X64/SmmAccess.depex            |   Bin 0 -> 36 bytes
 .../X64RELEASE/X64/SmmAccess.efi              |   Bin 0 -> 2208 bytes
 .../X64RELEASE/X64/SmmAccess.inf              |   198 +
 .../X64RELEASE/X64/SmmControl.depex           |     1 +
 .../X64RELEASE/X64/SmmControl.efi             |   Bin 0 -> 3584 bytes
 .../X64RELEASE/X64/SmmControl.inf             |   122 +
 .../X64RELEASE/X64/VlvInitDxe.depex           |   Bin 0 -> 126 bytes
 .../X64RELEASE/X64/VlvInitDxe.efi             |   Bin 0 -> 19328 bytes
 .../X64RELEASE/X64/VlvInitDxe.inf             |   253 +
 451 files changed, 128555 insertions(+)
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/IntelGopDriver.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/IntelGopDriver.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/Vbt.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/vbt.bsf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.com
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.com
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130673321.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130678806.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679901.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679906.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679907.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M023067221D.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/M0F30679909.inc
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/MicrocodeUpdates.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Microcode/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/E7006X3.EFI
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/RtkUndiDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/RtkUndiDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.com
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.bin
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.com
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.inf
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.depex
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.efi
 create mode 100644 Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.inf

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/IntelGopDriver.efi b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/IntelGopDriver.efi
new file mode 100644
index 0000000000000000000000000000000000000000..285f092fc20963aba5ae6be83d80b503df544375
GIT binary patch
literal 60192
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/IntelGopDriver.efi b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/IntelGopDriver.efi
new file mode 100644
index 0000000000000000000000000000000000000000..3237db26f8ffd2d25097673a0c7e196722d70a17
GIT binary patch
literal 75008
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/RELEASE_VS2008x86/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/Vbt.bin b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/Vbt.bin
new file mode 100644
index 0000000000000000000000000000000000000000..6b88c70142d137a2c0ab6487394e47c2ec8ade7c
GIT binary patch
literal 4096
zcmeHJL2TSa6#cf>p7GRSo!LT{ZMt$>7?RMmCcx4|Q70*lNC|XTG+{ZQY*7M2g3^iu
zK|+cv<&d860nx$%7I6T=C5RK^z=2B<m%srDaS1|5RS_rPSeZX#Z)vkEwU8>MD1W8d
zKjZ(O|9}6_jPIHmKM~A~O-&trdS>$IQvnLhK?n~NPvO`t<CDjqoPA{M#Mtck)bS&a
z1z*A)P$(KUYy&Xh$|yhqKq?(*xA#A+_+Xv`6P<Q<>?N4m4(GTGU<ME%96+Q76ltUe
z1i)5v(}zH>6yUp-TDYYBbP(Erpn*n^8w}7(n-YA5MzGM#RT!iAyLlt~1{lI?Ns?P#
z^Ga|Gd9>)EXh7#O4UnAgvtR+3zXU!gR?}+APOks{Ptk=!fr7-*z=DI!N{ToZHGmd?
zN-zpwNGNnbl~<1!^>>;JfP0{OA&a0CKrwBno*`|27o1AZr<>qGMJ2GaY^)ImYvd1O
zxwJX8{8S}Le<t~TdRq?E;CnZUgY{iLZS6_zs(Drh%Xk*OavktWCPQz6^?@zEw)u}X
z`^6U99KOq8_c-ElhtE3f1xLK$@b?||i6g#s_|Fde%@HNS?<VX35z~Y}PuLkE&J+GI
zVV@E41L40C_9qcLDIcNiAu67s{AJ2sqvAcvKc(yoDt@B;cgn6%vDf7fy6mtk=3V}(
z%g(yuLzjQ<vaj5}VbhMx^=ljay68KTB<W7SwrHd~!wanD4YmYs@T6S~;J)TSFc@vm
zD6K7;$QO#Ij)Ts-di^KK+?^oDK!oMxT543TEn2Cghevy7%l87n7{Xz=(11{er%S0-
zwYHc!dJA?X7s5i&sQA*q2EmB+wUHCyqXP@;jf#-X3xCI8#Ey!`lg?_67#=+=!)I4V
zrNom|3ufT}UT=s{xAQRh-0qo`22{g|IID$XGS-J4hLVSe*Z0TmR;4P#Agcw&P>5X}
zLqzgqF?c9ypI+UI2*WxFP_>BlJ?FLUr5ye6&QN=;v9u?wzrEusf~CGJG?RG{!eM!_
zwKNx&8yW2wgN5y=5dLFNYJ|QN!47g{ak&ERdaxt(!XwHH6c1K>o6@|99L&)VmmiMG
zXAX|Y=15g}r3g?|nuiylZY?$GB}p<Qp%p=?<@^1qk<P+bx;HgZpRJ!fHUHuhCtsTX
zA56Mgxc4kL$1VaiS8m>zY!GvU?7JP#O<-t~_@y@ub^NH_XS@ZMto^G1%U9)=Q192L
YKuUAXxZw`yuE*BO76V%hY)S_H0_g|%5C8xG

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/vbt.bsf b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/vbt.bsf
new file mode 100644
index 0000000..c8d2daf
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/GOP/7.2.1011/VBT/MNW2/vbt.bsf
@@ -0,0 +1,9216 @@
+;    TITLE    BMP.bsf - BMP Scrip File for Video BIOS

+;==============================================================================

+; Advance Graphics ROM BIOS

+;------------------------------------------------------------------------------

+; Copyright (c) Intel Corporation (2000 - 2011).

+;

+; INTEL MAKES NO WARRANTY OF ANY KIND REGARDING THE CODE. THIS CODE IS

+; LICENSED ON AN "AS IS" BASIS AND INTEL WILL NOT PROVIDE ANY SUPPORT,

+; ASSISTANCE, INSTALLATION, TRAINING OR OTHER SERVICES.

+; INTEL DOES NOT PROVIDE ANY UPDATES, ENHANCEMENTS OR EXTENSIONS.

+; INTEL SPECIFICALLY DISCLAIMS ANY WARRANTY OF MERCHANTABILITY,

+; NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY OTHER

+; WARRANTY.

+;

+; Intel disclaims all liability, including liability for infringement of

+; any proprietary rights, relating to use of the code. No license, express

+; or implied, by estoppel or otherwise, to any intellectual property rights

+; is granted herein.

+;

+; File Description:

+;    This file is the script file use by the BMP utility which will allow

+;    OEM's to edit data and select features on a binary file.

+;

+;------------------------------------------------------------------------------

+

+

+;==============================================================================

+; Header - Start of BMP Structure Definition

+;------------------------------------------------------------------------------

+

+StructDef

+

+Find			"BIOS_DATA_BLOCK "

+

+			; The following block will determine the reference

+			; pointer for all table pointer variables.

+

+Find_Ptr_Ref		"BIOS_DATA_BLOCK" ; Reference to beginning of VB VBT data

+

+$BDB_Ver		2 bytes		; BIOS Data Block version number (decimal, e.g.201 = 02.01) 

+$BDB_Header_Size	2 bytes		; BIOS Data Block Header size

+$BDB_Size		2 bytes		; BIOS Data Block size 

+

+;==============================================================================

+; Block 1 - General Bit Definitions

+;------------------------------------------------------------------------------

+

+SKIP               3 bytes              ; Skip block ID and size

+

+        ;

+        ; bmp_Bits_1

+	   ;

+

+$Enable_Panel_Fitting 2 bits            ; Enable / Disable panel fitting

+$Flexaim_Support   1 bit                ; Enable / Disable Flex-aim support

+$Msg_Enable        1 bit                ; Disable signon and copyright

+$Cls_After_Signon  3 bits               ; Clear screen after display message and pause

+$bmp_DVO_A_Color_Flip 1 bit             ; Flat color flip

+ALIGN

+

+        ;

+        ; bmp_Bits_2

+	   ;

+$Download_Ext_VBT  		1 bit                ; Download external VBT flag

+$Enable_SSC        		1 bit                ; Enable/Disable SSC

+$SSC_Freq          		1 bit                ; SSC Frequency

+$Enable_LFPOn_Override  1 bit            ; Enable/Disable LFP ON Override

+$Disable_SSC_DDT   		1 bit                ; Disable SSC in Dual Display Twin

+$Override_VGA_720p 		1 bit           ; Enable/Disable Override 720p for VGA modes

+$Enable_Dynamic_CDClock 1 bit           ; Enables Dynamic CD clock feature

+$Hotplug_Support_Enb 	1 bit              ; Hot Plug support in DOS

+

+ALIGN

+        ;

+        ; bmp_Bits_3

+        ;   

+SKIP							2 bits

+$180_Deg_Rotation_Enable      	1 bit		 ; 180 Degree Rotation Enable bit

+SKIP               				5 bits

+ALIGN

+

+$bmp_Legacy_Monitor_Detect 1 bit        ; Use legacy monitor detect algorithm

+SKIP               7 bits

+ALIGN

+

+            ;

+            ; Int_Displays_Support

+            ;

+$Int_CRT_Support   1 bit                 ; Integrated CRT support

+$Int_TV_Support    1 bit                 ; Integrated TV support

+$Int_EFP_Support   1 bit                 ; Integrated EFP support

+$DP_SSC_Enb        1 bit                 ; DP SSC Enable bit

+$DP_SSC_Freq       1 bit                 ; DP SSC Frequency bit

+$DP_SSC_Dongle_Enb 1 bit                 ; DP SSC dongle Enable/Disable

+SKIP               2 bits

+

+ALIGN

+

+

+;==============================================================================

+; Block 253 - PRD Boot Algorithm Table

+;------------------------------------------------------------------------------

+

+SKIP			3 bytes		; Skip block ID and size

+

+SKIP                        1 byte

+$ChildDevice1Primary        1 byte

+$ChildDevice1Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice2Primary        1 byte

+$ChildDevice2Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice3Primary        1 byte

+$ChildDevice3Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice4Primary        1 byte

+$ChildDevice4Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice5Primary        1 byte

+$ChildDevice5Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice6Primary        1 byte

+$ChildDevice6Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice7Primary        1 byte

+$ChildDevice7Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice8Primary        1 byte

+$ChildDevice8Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice9Primary        1 byte

+$ChildDevice9Secondary      1 byte

+SKIP                        1 byte

+$ChildDevice10Primary       1 byte

+$ChildDevice10Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice11Primary       1 byte

+$ChildDevice11Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice12Primary       1 byte

+$ChildDevice12Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice13Primary       1 byte

+$ChildDevice13Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice14Primary       1 byte

+$ChildDevice14Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice15Primary       1 byte

+$ChildDevice15Secondary     1 byte

+SKIP                        1 byte

+$ChildDevice16Primary       1 byte

+$ChildDevice16Secondary     1 byte

+

+SKIP                        2 bytes        ; No of entries

+

+;==============================================================================

+; Block 2 - General Data Definitions

+;------------------------------------------------------------------------------

+

+SKIP               3 bytes              ; Skip block ID and size

+

+$CRT_DDC_GMBUS_Pin 1 byte               ; CRT DDC GMBUS pin pair

+

+$DPMS_ACPI_Bit     1 bit                ; Apply ACPI DPMS CRT Power States

+$Skip_Boot_CRT_Detect 1 bit             ; Disable/Enable skip boot CRT detect

+$DPMS_AIM_Bit      1 bit                ; Apply DPMS to AIM devices

+SKIP               5 bits

+ALIGN

+

+

+$Boot_Display      2 bytes              ; Boot display type

+$size_ChildStruc   1 byte

+

+

+$Int_LFP1_DID      2 bytes              ; Skip Device Handle

+$Int_LFP1_Type     2 bytes              ; Device type

+SKIP               7 bytes              ; Skip

+SKIP               1 byte               ; Skip

+$Int_LFP1_Priority 1 byte                ; primary/secondary panel select

+ALIGN

+SKIP               3 bytes              ; Skip

+$Int_LFP1_Port     1 byte               ; eDP port select

+SKIP               2 bytes              ; Skip remaining Data structure

+$Int_LFP1_DDC_Pin 1 byte               ; LFP DDC GMBUS pin pair

+SKIP               5 bytes

+$Int_LFP1_AUX_Channel 1 byte            ; DP AUX channel

+SKIP               7 bytes

+

+

+$Int_LFP2_DID      2 bytes              ; Skip Device Handle

+$Int_LFP2_Type     2 bytes              ; Device type

+SKIP               7 bytes              ; Skip

+SKIP               1 byte               ; Skip

+$Int_LFP2_Priority 8 bits                ; primary/secondary panel select

+ALIGN

+SKIP               3 bytes              ; Skip

+$Int_LFP2_Port      1 byte               ; eDP port select

+SKIP               2 bytes              ; Skip remaining Data structure

+$Int_LFP2_DDC_Pin 1 byte               ; LFP DDC GMBUS pin pair

+SKIP               5 bytes

+$Int_LFP2_AUX_Channel 1 byte            ; DP AUX channel

+SKIP               7 bytes

+

+

+$Int_EFP1_DID      2 bytes              ; Skip Device Handle

+$Int_EFP1_Type     2 bytes              ; Device type

+SKIP               1 byte              ; Skip I2C Speed

+$EFP1_OnBoard_PreEmph_Level     3 bits		; EFP1 On Board Dp Redriver PreEmphasis Level

+$EFP1_OnBoard_VSwing_Level      3 bits		; EFP1 On Board Dp Redriver VSwing Level

+$EFP1_OnBoard_Redriver_Present  1 bit		; Is OnBoard Redriver Present for EFP1

+SKIP							1 bit		; Reserved

+$EFP1_OnDock_PreEmph_Level     3 bits		; EFP1 On Dock Dp Redriver PreEmphasis Level

+$EFP1_OnDock_VSwing_Level      3 bits		; EFP1 On Dock Dp Redriver VSwing Level

+$EFP1_OnDock_Redriver_Present  1 bit		; Is On Dock Redriver Present for EFP1

+SKIP							1 bit		; Reserved

+$Int_EFP1_HDMI_LS_Type			5 bits		; HDMI Level shifter configuration

+SKIP					3 bits		; Reserved

+ALIGN

+SKIP					2 bytes		; Skip EDIDless DTD offset

+$EFP1_EDIDless_en			1 bit		; EDIDless enable bit

+SKIP					7 bits		; Skip remaining bits

+SKIP					3 bytes		; Skip Reserved_1

+SKIP					2 bytes		; skip Addin module table offset

+$Int_EFP1_Port     1 byte               ; EFP1 port

+SKIP               2 bytes              ; Skip

+$Int_EFP1_DDC_Pin  1 byte               ; EFP1 DDC Pin

+SKIP               3 bytes

+$Int_EFP1_Docked_Port  1 bit            ; HDMI/DP Docked Port

+SKIP 				   1 bit			; Skip Enabling Lane Reversal Bit

+SKIP			 	   6 bits			; Reserved

+$Int_EFP1_HDMI_Compat 1 bit             ; HDMI combatibility

+$Int_EFP1_Conn_Info 3 bits              ; Connector information

+SKIP               4 bits

+$Int_EFP1_AUX_Channel 1 byte            ; DP AUX channel

+$Int_EFP1_Dongle_Detect 1 byte          ; Dongle Detect

+SKIP               6 bytes              ; Skip

+

+$Int_EFP2_DID      2 bytes              ; Skip Device Handle

+$Int_EFP2_Type     2 bytes              ; Device type

+SKIP               1 byte              ; Skip I2C Speed

+$EFP2_OnBoard_PreEmph_Level     3 bits		; EFP2 On Board Dp Redriver PreEmphasis Level

+$EFP2_OnBoard_VSwing_Level      3 bits		; EFP2 On Board Dp Redriver VSwing Level

+$EFP2_OnBoard_Redriver_Present  1 bit		; Is OnBoard Redriver Present for EFP2

+SKIP							1 bit		; Reserved

+$EFP2_OnDock_PreEmph_Level     3 bits		; EFP2 On Dock Dp Redriver PreEmphasis Level

+$EFP2_OnDock_VSwing_Level      3 bits		; EFP2 On Dock Dp Redriver VSwing Level

+$EFP2_OnDock_Redriver_Present  1 bit		; Is On Dock Redriver Present for EFP2

+SKIP							1 bit		; Reserved

+$Int_EFP2_HDMI_LS_Type			5 bits		; HDMI Level shifter configuration

+SKIP					3 bits		; Reserved

+ALIGN

+SKIP					2 bytes		; Skip EDIDless DTD offset

+$EFP2_EDIDless_en			1 bit		; EDIDless enable bit

+SKIP					7 bits		; Skip remaining bits

+SKIP					3 bytes		; Skip Reserved_1

+SKIP					2 bytes		; skip Addin module table offset

+$Int_EFP2_Port     1 byte               ; EFP1 port

+SKIP               2 bytes              ; Skip

+$Int_EFP2_DDC_Pin  1 byte               ; EFP1 DDC Pin

+SKIP               3 bytes

+$Int_EFP2_Docked_Port 1 bit            ; HDMI/DP Docked Port

+SKIP 				  1 bit			; Skip Enabling Lane Reversal Bit

+SKIP 				  6 bits			; Reserved

+$Int_EFP2_HDMI_Compat 1 bit             ; HDMI combatibility

+$Int_EFP2_Conn_Info 3 bits              ; Connector information

+SKIP               4 bits

+$Int_EFP2_AUX_Channel 1 byte            ; DP AUX channel

+$Int_EFP2_Dongle_Detect 1 byte          ; Dongle Detect

+SKIP               6 bytes              ; Skip

+

+;==============================================================================

+; Block 3 - Original Display Toggle List

+;------------------------------------------------------------------------------

+

+SKIP			3 bytes		; Skip block ID and size

+

+$bmp_Display_Detect	1 byte		; Display must be attached or not

+

+;==============================================================================

+; Block 9 - PSR Feature Table

+;------------------------------------------------------------------------------

+

+SKIP			3 bytes		; Skip block ID and size

+

+SKIP			96 bytes	     ; PSR Table data

+

+;==============================================================================

+	  

+	  

+;==============================================================================

+; Block 10 - Modes Removal Table.

+;------------------------------------------------------------------------------

+

+SKIP            	3 bytes        ; Skip block ID and size

+SKIP				1 byte		   ; Skip EntrySize

+$Mode_Rem_Table    	200 bytes      ; Mode Removal Table

+SKIP 				2 bytes		   ; Skip Terminator

+

+;==============================================================================

+; Block 12 - Driver default boot display

+;------------------------------------------------------------------------------ 

+

+SKIP               3 bytes        ; Skip block ID and size

+$Driver_Boot_Device    1 bit

+$Block_Disp_Switch    1 bit

+$Allow_FDOS_Disp_Switch 1 bit        ; Allow FS DOS display switching

+$Hot_Plug_DVO        1 bit

+$Dual_View_Zoom        1 bit

+$Drv_Int15_hook        1 bit

+$DVD_Sprite_Clone    1 bit

+$Use_110h_for_LFP    1 bit 

+ALIGN

+

+$Driver_Boot_Mode_X    2 bytes        ; X resolution

+$Driver_Boot_Mode_Y    2 bytes        ; Y resolution

+$Driver_Boot_Mode_BPP     1 byte        ; Pixel depth

+$Driver_Boot_Mode_RR      1 byte        ; Refresh rate

+; bmp_Ext_Driver_Bits

+

+$Enable_LFP_Primary    1 bit

+$GTF_Mode_Pruning    1 bit

+SKIP            1 bit        ; DISABLE_DFGT

+SKIP            1 bit        ; DISABLE_DFGT

+$NT4_Dual_Dsp_Clone_Spt 1 bit        ; Dual display clone support for NT4

+$Default_Power_Scheme    1 bit

+$Sprite_Display_Assign    1 bit        ; Sprite Display Assignment for when Overlay is Active in Clone Mode

+$CUI_Maintain_Aspect    1 bit        ; Display "Maintain Aspect Ratio" via CUI

+$Preserve_Aspect_Ratio    1 bit        ; Preserve Aspect Ratio

+$SDVO_Device_Power_Down    1 bit        ; SDVO device power down

+$Hot_Plug_CRT        1 bit        ; CRT hot plug

+$LVDS_Config        2 bits        ; LVDS configuration

+$Hot_Plug_TV        1 bit        ; Hot plug TV enable/disable

+$INT_HDMI_Config    2 bits        ; Integrated HDMI Configuration

+ALIGN

+

+			; bmp_Driver_Flags_1

+

+$CUIHotK_Static_Display    1 bit

+SKIP               7 bits

+$Legacy_Monitor_Max_X    2 bytes

+$Legacy_Monitor_Max_Y    2 bytes

+$Legacy_Monitor_Max_RR    1 bytes

+ALIGN

+

+; bmp_Ext2_Driver_Bits

+

+$Enable_Int_Src_Term    1 bit        ; Enable Internal Source Termination for HDMI

+SKIP               7 bits

+ALIGN

+

+$VBT_Customization_Version 1 byte    ; Customization VBT version number

+ALIGN

+

+			; bmp_Driver_Feature_Flags

+

+SKIP               		5 bits

+$PM_DRRS_Enable			1 bit		; Intel � Display Refresh Rate Switching (DRRS) Enable/Disable Flag.

+SKIP					3 bits

+$Panel_Self_Refresh     1 bit       ; Panel Self refresh feature (PSR)

+SKIP               		2 bits

+$DMRRS             		1 bit       ; Dynamic Media Refresh Rate Enable/Disable

+SKIP               		3 bits

+

+;==============================================================================

+; Block 13 - Driver Persistence Algorithm

+;------------------------------------------------------------------------------

+

+SKIP                  3 bytes        ; Skip block ID and size

+

+$Driver_Persist_Hotkey          1 bit

+$Driver_Persist_Lid_Switch    1 bit

+$Driver_Persist_PM          1 bit

+$PersistHotkeyRestoreCloneMDS     1 bit

+$PersistHotkeyRestoreRefreshrate 1 bit

+$PersistHotkeyRestorePipe    1 bit

+$PersistHotkeyRestoreMode    1 bit

+$PersistEDIDRestoreMode        1 bit

+$PersistHotPlugRestoreMode    1 bit

+$Driver_Persist_Docking        1 bit

+SKIP                   6 bits

+ALIGN

+$PersistMaxConfig        1 byte

+

+;==============================================================================

+; Block 16 - VBIOS/Driver Toggle list, capabilities tables

+;------------------------------------------------------------------------------

+

+SKIP        		     3 bytes     ; Skip block ID and size

+SKIP					 3 bytes	 ; Skip number of entries and entry size

+$Toggle_List1            48 bytes    ; Toggle list 1

+SKIP					 3 bytes	 ; Skip number of entries and entry size

+$Toggle_List2            24 bytes    ; Toggle list 2

+SKIP					 3 bytes	 ; Skip number of entries and entry size

+$Toggle_List3            24 bytes    ; Toggle list 3

+SKIP				 	 3 bytes	 ; Skip number of entries and entry size

+$Toggle_List4            24 bytes    ; Toggle list 4

+ALIGN

+

+;==============================================================================

+; Block 17 - Test Feature

+;------------------------------------------------------------------------------

+

+SKIP            3 bytes        ; Skip block ID and size

+

+$SV_Dis_Arbiter        1 bit        ; Disable VGA fast arbiter

+$SV_Setmode_No_DVO    1 bit        ; Do Setmode without reprogramming DVO

+$SV_Special_GMBus    1 bit        ; Special GMBus support

+$SV_Wait_Timeout_Hang    1 bit

+SKIP            4 bits

+ALIGN

+SKIP            7 bytes        ; Skip reserved space

+

+

+;==============================================================================

+; Block 18 - Driver Rotation Configuration

+;------------------------------------------------------------------------------

+

+SKIP            				3 bytes      ; Skip block ID and size

+$Rotation_Support_Enable        1 bit        ; Driver Rotation Feature Support bit

+SKIP           		 			7 bits        

+$Rot_Flags        				1 byte

+SKIP            				10 bytes 

+

+

+;==============================================================================

+; Block 19 - Removed Display Configurations

+;------------------------------------------------------------------------------

+

+SKIP           			3  bytes        ; Skip block ID and size

+SKIP            		2  bytes        ; Table Row/Size Data

+$Dev_Removed_Table		30  bytes       ; Removed displays table

+

+;==============================================================================

+; Block 20 - OEM Customizable Modes

+;------------------------------------------------------------------------------

+

+SKIP            3  bytes        ; Skip ID

+SKIP            2  bytes        ; Table Row/Size Data

+

+$OEM_Mode_Flags1    1 byte

+$OEM_Display_Flags1    1 byte

+$OEM_Mode_X1        2 bytes

+$OEM_Mode_Y1        2 bytes

+$OEM_Mode_Color1    1 byte

+$OEM_Mode_RRate1    1 byte

+$OEM_Mode_DTD1        18 bytes

+

+$OEM_Mode_Flags2    1 byte

+$OEM_Display_Flags2    1 byte

+$OEM_Mode_X2        2 bytes

+$OEM_Mode_Y2        2 bytes

+$OEM_Mode_Color2    1 byte

+$OEM_Mode_RRate2    1 byte

+$OEM_Mode_DTD2        18 bytes

+

+$OEM_Mode_Flags3    1 byte

+$OEM_Display_Flags3    1 byte

+$OEM_Mode_X3        2 bytes

+$OEM_Mode_Y3        2 bytes

+$OEM_Mode_Color3    1 byte

+$OEM_Mode_RRate3    1 byte

+$OEM_Mode_DTD3        18 bytes

+

+$OEM_Mode_Flags4    1 byte

+$OEM_Display_Flags4    1 byte

+$OEM_Mode_X4        2 bytes

+$OEM_Mode_Y4        2 bytes

+$OEM_Mode_Color4    1 byte

+$OEM_Mode_RRate4    1 byte

+$OEM_Mode_DTD4        18 bytes

+

+$OEM_Mode_Flags5    1 byte

+$OEM_Display_Flags5    1 byte

+$OEM_Mode_X5        2 bytes

+$OEM_Mode_Y5        2 bytes

+$OEM_Mode_Color5    1 byte

+$OEM_Mode_RRate5    1 byte

+$OEM_Mode_DTD5        18 bytes

+

+$OEM_Mode_Flags6    1 byte

+$OEM_Display_Flags6    1 byte

+$OEM_Mode_X6        2 bytes

+$OEM_Mode_Y6        2 bytes

+$OEM_Mode_Color6    1 byte

+$OEM_Mode_RRate6    1 byte

+$OEM_Mode_DTD6        18 bytes

+

+;==============================================================================

+; Block 26 - TV Options

+;------------------------------------------------------------------------------

+

+SKIP			3  bytes	; Skip ID and size

+$Under_Over_Scan_Via_YPrPb 2 bits	; Underscan/overscan for HDTV via YPrPb

+SKIP			10 bits

+$Under_Over_Scan_Via_DVI 2 bits		; Underscan/overscan for HDTV via DVI

+$Add_Overscan_Mode 	1 bit		; Add modes to avoid overscan issue

+$D_Connector		1 bit		; D-Connector Support

+ALIGN

+      

+;==============================================================================

+; Block #27 - eDP Power Sequencing

+;------------------------------------------------------------------------------

+SKIP            3 bytes        ; Skip block ID and size

+

+	; Panel#1 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_01				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_01		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_01	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_01		2 bytes

+$eDP_PowerCycle_Delay_01 				2 bytes

+

+	; Panel#2 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_02				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_02		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_02	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_02		2 bytes

+$eDP_PowerCycle_Delay_02 				2 bytes

+

+	; Panel#3 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_03				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_03		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_03	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_03		2 bytes

+$eDP_PowerCycle_Delay_03 				2 bytes

+

+	; Panel#4 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_04				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_04		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_04	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_04		2 bytes

+$eDP_PowerCycle_Delay_04 				2 bytes

+

+	; Panel#5 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_05				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_05		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_05	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_05		2 bytes

+$eDP_PowerCycle_Delay_05 				2 bytes

+

+	; Panel#6 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_06				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_06		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_06	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_06		2 bytes

+$eDP_PowerCycle_Delay_06 				2 bytes

+

+	; Panel#7 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_07				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_07		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_07	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_07		2 bytes

+$eDP_PowerCycle_Delay_07 				2 bytes

+

+	; Panel#8 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_08				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_08		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_08	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_08		2 bytes

+$eDP_PowerCycle_Delay_08 				2 bytes

+

+	; Panel#9 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_09				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_09		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_09	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_09		2 bytes

+$eDP_PowerCycle_Delay_09				2 bytes

+

+	; Panel#10 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_10				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_10		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_10	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_10		2 bytes

+$eDP_PowerCycle_Delay_10 				2 bytes

+

+	; Panel#11 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_11				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_11		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_11	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_11		2 bytes

+$eDP_PowerCycle_Delay_11 				2 bytes

+

+	; Panel#12 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_12				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_12		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_12	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_12		2 bytes

+$eDP_PowerCycle_Delay_12 				2 bytes

+

+	; Panel#13 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_13				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_13		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_13	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_13		2 bytes

+$eDP_PowerCycle_Delay_13 				2 bytes

+

+	; Panel#14 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_14				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_14		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_14	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_14		2 bytes

+$eDP_PowerCycle_Delay_14 				2 bytes

+

+	; Panel#15 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_15				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_15		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_15	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_15		2 bytes

+$eDP_PowerCycle_Delay_15 				2 bytes

+

+	; Panel#16 Power Sequencing

+$eDP_Vcc_To_Hpd_Delay_16				2 bytes        

+$eDP_DataOn_To_BkltEnable_Delay_16		2 bytes

+$eDP_BkltDisable_To_DataOff_Delay_16	2 bytes

+$eDP_DataOff_To_PowerOff_Delay_16		2 bytes

+$eDP_PowerCycle_Delay_16 				2 bytes

+

+$eDP_Panel_Color_Depth_01    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_02    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_03    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_04    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_05    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_06    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_07    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_08    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_09    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_10    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_11    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_12    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_13    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_14    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_15    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+$eDP_Panel_Color_Depth_16    2 bits    ; 00 = 18bpp, 01 = 24bpp, 10 = 30bpp

+

+$eDP_Link_DataRate_01        4 bits    ; Panel #1 Link Data Rate

+$eDP_Link_LaneCount_01       4 bits    ; Panel #1 Link Lane Count

+$eDP_Link_PreEmp_Level_01    4 bits    ; Panel #1 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_01    4 bits    ; Panel #1 Link Voltage Swing Level

+

+$eDP_Link_DataRate_02        4 bits    ; Panel #2 Link Data Rate

+$eDP_Link_LaneCount_02       4 bits    ; Panel #2 Link Lane Count

+$eDP_Link_PreEmp_Level_02    4 bits    ; Panel #2 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_02    4 bits    ; Panel #2 Link Voltage Swing Level

+

+$eDP_Link_DataRate_03        4 bits    ; Panel #3 Link Data Rate

+$eDP_Link_LaneCount_03       4 bits    ; Panel #3 Link Lane Count

+$eDP_Link_PreEmp_Level_03    4 bits    ; Panel #3 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_03    4 bits    ; Panel #3 Link Voltage Swing Level

+

+$eDP_Link_DataRate_04        4 bits    ; Panel #4 Link Data Rate    

+$eDP_Link_LaneCount_04       4 bits     ; Panel #4 Link Lane Count    

+$eDP_Link_PreEmp_Level_04    4 bits    ; Panel #4 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_04    4 bits    ; Panel #4 Link Voltage Swing Level

+

+$eDP_Link_DataRate_05        4 bits    ; Panel #5 Link Data Rate

+$eDP_Link_LaneCount_05       4 bits    ; Panel #5 Link Lane Count

+$eDP_Link_PreEmp_Level_05    4 bits    ; Panel #5 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_05    4 bits    ; Panel #5 Link Voltage Swing Level

+

+$eDP_Link_DataRate_06        4 bits    ; Panel #6 Link Data Rate

+$eDP_Link_LaneCount_06       4 bits    ; Panel #6 Link Lane Count

+$eDP_Link_PreEmp_Level_06    4 bits    ; Panel #6 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_06    4 bits    ; Panel #6 Link Voltage Swing Level

+

+$eDP_Link_DataRate_07        4 bits    ; Panel #7 Link Data Rate

+$eDP_Link_LaneCount_07       4 bits    ; Panel #7 Link Lane Count

+$eDP_Link_PreEmp_Level_07    4 bits    ; Panel #7 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_07    4 bits    ; Panel #7 Link Voltage Swing Level

+

+$eDP_Link_DataRate_08        4 bits    ; Panel #8 Link Data Rate

+$eDP_Link_LaneCount_08       4 bits    ; Panel #8 Link Lane Count

+$eDP_Link_PreEmp_Level_08    4 bits    ; Panel #8 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_08    4 bits    ; Panel #8 Link Voltage Swing Level

+

+$eDP_Link_DataRate_09        4 bits    ; Panel #9 Link Data Rate

+$eDP_Link_LaneCount_09       4 bits    ; Panel #9 Link Lane Count

+$eDP_Link_PreEmp_Level_09    4 bits    ; Panel #9 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_09    4 bits    ; Panel #9 Link Voltage Swing Level

+

+$eDP_Link_DataRate_10        4 bits    ; Panel #10 Link Data Rate

+$eDP_Link_LaneCount_10       4 bits    ; Panel #10 Link Lane Count

+$eDP_Link_PreEmp_Level_10    4 bits    ; Panel #10 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_10    4 bits    ; Panel #10 Link Voltage Swing Level

+

+$eDP_Link_DataRate_11        4 bits    ; Panel #11 Link Data Rate

+$eDP_Link_LaneCount_11       4 bits    ; Panel #11 Link Lane Count

+$eDP_Link_PreEmp_Level_11    4 bits    ; Panel #11 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_11    4 bits    ; Panel #11 Link Voltage Swing Level

+

+$eDP_Link_DataRate_12        4 bits    ; Panel #12 Link Data Rate

+$eDP_Link_LaneCount_12       4 bits    ; Panel #12 Link Lane Count

+$eDP_Link_PreEmp_Level_12    4 bits    ; Panel #12 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_12    4 bits    ; Panel #12 Link Voltage Swing Level

+

+$eDP_Link_DataRate_13        4 bits    ; Panel #13 Link Data Rate

+$eDP_Link_LaneCount_13       4 bits    ; Panel #13 Link Lane Count

+$eDP_Link_PreEmp_Level_13    4 bits    ; Panel #13 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_13    4 bits    ; Panel #13 Link Voltage Swing Level

+

+$eDP_Link_DataRate_14        4 bits    ; Panel #14 Link Data Rate

+$eDP_Link_LaneCount_14       4 bits    ; Panel #14 Link Lane Count

+$eDP_Link_PreEmp_Level_14    4 bits    ; Panel #14 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_14    4 bits    ; Panel #14 Link Voltage Swing Level

+

+$eDP_Link_DataRate_15        4 bits    ; Panel #15 Link Data Rate

+$eDP_Link_LaneCount_15       4 bits    ; Panel #15 Link Lane Count

+$eDP_Link_PreEmp_Level_15    4 bits    ; Panel #15 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_15    4 bits    ; Panel #15 Link Voltage Swing Level

+

+$eDP_Link_DataRate_16        4 bits    ; Panel #16 Link Data Rate

+$eDP_Link_LaneCount_16       4 bits    ; Panel #16 Link Lane Count

+$eDP_Link_PreEmp_Level_16    4 bits    ; Panel #16 Link Pre-emphasis Level

+$eDP_Link_Vswing_Level_16    4 bits    ; Panel #16 Link Voltage Swing Level

+

+$eDP_sDRRS_MSA_Delay_01        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_02        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_03        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_04        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_05        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_06        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_07        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_08        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_09        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_10        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_11        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_12        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_13        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_14        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_15        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+$eDP_sDRRS_MSA_Delay_16        2 bits    ; 00 = Line 1, 01 = Line 2, 10 = Line 3, 11 = Line 4

+

+SKIP            2 bytes        ; S3D Feature

+$eDP_T3_Optimization_01	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #01

+$eDP_T3_Optimization_02	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #02

+$eDP_T3_Optimization_03	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #03

+$eDP_T3_Optimization_04	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #04

+$eDP_T3_Optimization_05	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #05

+$eDP_T3_Optimization_06	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #06

+$eDP_T3_Optimization_07	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #07

+$eDP_T3_Optimization_08	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #08

+$eDP_T3_Optimization_09	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #09

+$eDP_T3_Optimization_10	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #10

+$eDP_T3_Optimization_11	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #11

+$eDP_T3_Optimization_12	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #12

+$eDP_T3_Optimization_13	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #13

+$eDP_T3_Optimization_14	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #14

+$eDP_T3_Optimization_15	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #15

+$eDP_T3_Optimization_16	1 bit	; eDP T3 Optimization enable disabled VBT bit panel #16

+

+$eDP_VswingPreEmph_1       4 bits; eDp selects Vswing Preemph table for panel #1

+$eDP_VswingPreEmph_2       4 bits; eDp selects Vswing Preemph table for panel #2

+$eDP_VswingPreEmph_3       4 bits; eDp selects Vswing Preemph table for panel #3

+$eDP_VswingPreEmph_4       4 bits; eDp selects Vswing Preemph table for panel #4

+$eDP_VswingPreEmph_5       4 bits; eDp selects Vswing Preemph table for panel #5

+$eDP_VswingPreEmph_6       4 bits; eDp selects Vswing Preemph table for panel #6

+$eDP_VswingPreEmph_7       4 bits; eDp selects Vswing Preemph table for panel #7

+$eDP_VswingPreEmph_8       4 bits; eDp selects Vswing Preemph table for panel #8

+$eDP_VswingPreEmph_9       4 bits; eDp selects Vswing Preemph table for panel #9

+$eDP_VswingPreEmph_10       4 bits; eDp selects Vswing Preemph table for panel #10

+$eDP_VswingPreEmph_11       4 bits; eDp selects Vswing Preemph table for panel #11

+$eDP_VswingPreEmph_12       4 bits; eDp selects Vswing Preemph table for panel #12

+$eDP_VswingPreEmph_13       4 bits; eDp selects Vswing Preemph table for panel #13

+$eDP_VswingPreEmph_14       4 bits; eDp selects Vswing Preemph table for panel #14

+$eDP_VswingPreEmph_15       4 bits; eDp selects Vswing Preemph table for panel #15

+$eDP_VswingPreEmph_16       4 bits; eDp selects Vswing Preemph table for panel #16

+

+$Fast_Link_Training_Supported_01 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #1

+$Fast_Link_Training_Supported_02 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #2 

+$Fast_Link_Training_Supported_03 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #3

+$Fast_Link_Training_Supported_04 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #4

+$Fast_Link_Training_Supported_05 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #5

+$Fast_Link_Training_Supported_06 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #6

+$Fast_Link_Training_Supported_07 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #7

+$Fast_Link_Training_Supported_08 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #8

+$Fast_Link_Training_Supported_09 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #9

+$Fast_Link_Training_Supported_10 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #10

+$Fast_Link_Training_Supported_11 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #11

+$Fast_Link_Training_Supported_12    1 bit  ; eDP Selects Fast Link Training if supported for Panel #12

+$Fast_Link_Training_Supported_13 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #13

+$Fast_Link_Training_Supported_14 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #14

+$Fast_Link_Training_Supported_15 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #15

+$Fast_Link_Training_Supported_16 	1 bit  ; eDP Selects Fast Link Training if supported for Panel #16

+

+SKIP 	2 bytes ;Skip Enable Power State at DPCD 600h

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_01 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#1

+$eDP_Bklt_Disable_To_PwmOff_Delay_01	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#1

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_02 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#2

+$eDP_Bklt_Disable_To_PwmOff_Delay_02	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#2

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_03 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#3

+$eDP_Bklt_Disable_To_PwmOff_Delay_03	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#3

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_04 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#4

+$eDP_Bklt_Disable_To_PwmOff_Delay_04	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#4

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_05 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#5

+$eDP_Bklt_Disable_To_PwmOff_Delay_05	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#5

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_06 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#6

+$eDP_Bklt_Disable_To_PwmOff_Delay_06	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#6

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_07 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#7

+$eDP_Bklt_Disable_To_PwmOff_Delay_07	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#7

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_08 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#8

+$eDP_Bklt_Disable_To_PwmOff_Delay_08	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#8

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_09 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#9

+$eDP_Bklt_Disable_To_PwmOff_Delay_09	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#9

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_10 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#10

+$eDP_Bklt_Disable_To_PwmOff_Delay_10	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#10

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_11 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#11

+$eDP_Bklt_Disable_To_PwmOff_Delay_11	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#11

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_12 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#12

+$eDP_Bklt_Disable_To_PwmOff_Delay_12	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#12

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_13 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#13

+$eDP_Bklt_Disable_To_PwmOff_Delay_13	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#13

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_14 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#14

+$eDP_Bklt_Disable_To_PwmOff_Delay_14	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#14

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_15 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#15

+$eDP_Bklt_Disable_To_PwmOff_Delay_15	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#15

+

+$eDP_PwmOn_To_Bklt_Enable_Delay_16 		2 bytes ; Delay from Pwm On to Backlight Enable for Panel#16

+$eDP_Bklt_Disable_To_PwmOff_Delay_16	2 bytes ; Delay from Backlight Disable to Pwm Off for Panle#16

+

+;==============================================================================

+; Block 28 - EDID-less EFP support - Panel data

+;------------------------------------------------------------------------------

+SKIP			3 bytes		; Skip block ID and size

+

+				; Panel for Device 1

+$EFP1_DTD		18 bytes	; DTD for Device 1 DP/DVI panel

+				; Panel for Device 2

+$EFP2_DTD		18 bytes	; DTD for Device 2 DP/DVI panel

+				; Panel for Device 3

+$EFP3_DTD		18 bytes	; DTD for Device 3 DP/DVI panel

+

+

+;==============================================================================

+; Block 40 - Start of LVDS BMP Structure Definition

+;------------------------------------------------------------------------------

+

+SKIP            3 bytes        ; Skip block ID and size

+

+$bmp_Panel_type        1 byte        ; Flat panel type

+SKIP            1 byte        ; Obsoleted

+SKIP            6 bits

+$bmp_Panel_EDID        1 bit        ; LVDS panel EDID enable/disable bit

+SKIP            1 bit

+SKIP            1 byte

+

+        ; INT_LVDS_Panel_Channel_Bits

+    

+$Int_LVDS_Panel_1_Channel_Type    2 bits    ; Bits [2:3] = Panel #1

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_2_Channel_Type    2 bits    ; Bits [2:3] = Panel #2

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_3_Channel_Type    2 bits    ; Bits [2:3] = Panel #3

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_4_Channel_Type    2 bits    ; Bits [2:3] = Panel #4

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_5_Channel_Type    2 bits    ; Bits [2:3] = Panel #5

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_6_Channel_Type    2 bits    ; Bits [2:3] = Panel #6

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_7_Channel_Type    2 bits    ; Bits [2:3] = Panel #7

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_8_Channel_Type    2 bits    ; Bits [2:3] = Panel #8

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_9_Channel_Type    2 bits    ; Bits [2:3] = Panel #9

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_10_Channel_Type    2 bits    ; Bits [2:3] = Panel #10

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_11_Channel_Type    2 bits    ; Bits [2:3] = Panel #11

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_12_Channel_Type    2 bits    ; Bits [2:3] = Panel #12

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_13_Channel_Type    2 bits    ; Bits [2:3] = Panel #13

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_14_Channel_Type    2 bits    ; Bits [2:3] = Panel #14

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_15_Channel_Type    2 bits    ; Bits [2:3] = Panel #15

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+$Int_LVDS_Panel_16_Channel_Type    2 bits    ; Bits [2:3] = Panel #16

+                    ;    = 00, Automatic (algorithm)

+                    ;    = 01, Single Channel

+                    ;    = 10, Dual Channel

+                    ;    = 11, Reserved

+      

+                    ; LVDS Spread Spectrum Clock

+                    ; Enabel/Disable SSC

+$Enable_SSC01        1 bit        ; Panel #01, 0=No, 1=Yes

+$Enable_SSC02        1 bit        ; Panel #02, 0=No, 1=Yes

+$Enable_SSC03        1 bit        ; Panel #03, 0=No, 1=Yes

+$Enable_SSC04        1 bit        ; Panel #04, 0=No, 1=Yes

+$Enable_SSC05        1 bit        ; Panel #05, 0=No, 1=Yes

+$Enable_SSC06        1 bit        ; Panel #06, 0=No, 1=Yes

+$Enable_SSC07        1 bit        ; Panel #07, 0=No, 1=Yes

+$Enable_SSC08        1 bit        ; Panel #08, 0=No, 1=Yes

+$Enable_SSC09        1 bit        ; Panel #09, 0=No, 1=Yes

+$Enable_SSC10        1 bit        ; Panel #10, 0=No, 1=Yes

+$Enable_SSC11        1 bit        ; Panel #11, 0=No, 1=Yes

+$Enable_SSC12        1 bit        ; Panel #12, 0=No, 1=Yes

+$Enable_SSC13        1 bit        ; Panel #13, 0=No, 1=Yes

+$Enable_SSC14        1 bit        ; Panel #14, 0=No, 1=Yes

+$Enable_SSC15        1 bit        ; Panel #15, 0=No, 1=Yes

+$Enable_SSC16        1 bit        ; Panel #16, 0=No, 1=Yes

+

+                    ; LVDS Spread Spectrum Clock Frequency

+                    ; SSC Frequency

+$SSC_Freq01        1 bit        ; Panel #01, 0=48MHz, 1=66MHz

+$SSC_Freq02        1 bit        ; Panel #02, 0=48MHz, 1=66MHz

+$SSC_Freq03        1 bit        ; Panel #03, 0=48MHz, 1=66MHz

+$SSC_Freq04        1 bit        ; Panel #04, 0=48MHz, 1=66MHz

+$SSC_Freq05        1 bit        ; Panel #05, 0=48MHz, 1=66MHz

+$SSC_Freq06        1 bit        ; Panel #06, 0=48MHz, 1=66MHz

+$SSC_Freq07        1 bit        ; Panel #07, 0=48MHz, 1=66MHz

+$SSC_Freq08        1 bit        ; Panel #08, 0=48MHz, 1=66MHz

+$SSC_Freq09        1 bit        ; Panel #09, 0=48MHz, 1=66MHz

+$SSC_Freq10        1 bit        ; Panel #10, 0=48MHz, 1=66MHz

+$SSC_Freq11        1 bit        ; Panel #11, 0=48MHz, 1=66MHz

+$SSC_Freq12        1 bit        ; Panel #12, 0=48MHz, 1=66MHz

+$SSC_Freq13        1 bit        ; Panel #13, 0=48MHz, 1=66MHz

+$SSC_Freq14        1 bit        ; Panel #14, 0=48MHz, 1=66MHz

+$SSC_Freq15        1 bit        ; Panel #15, 0=48MHz, 1=66MHz

+$SSC_Freq16        1 bit        ; Panel #16, 0=48MHz, 1=66MHz

+

+                    ; Disable SSC in Dual Display Twin

+$Disable_SSC_DDT01    1 bit        ; panel #01, 0=Disable, 1=Enable

+$Disable_SSC_DDT02    1 bit        ; panel #02, 0=Disable, 1=Enable

+$Disable_SSC_DDT03    1 bit        ; panel #03, 0=Disable, 1=Enable

+$Disable_SSC_DDT04    1 bit        ; panel #04, 0=Disable, 1=Enable

+$Disable_SSC_DDT05    1 bit        ; panel #05, 0=Disable, 1=Enable

+$Disable_SSC_DDT06    1 bit        ; panel #06, 0=Disable, 1=Enable

+$Disable_SSC_DDT07    1 bit        ; panel #07, 0=Disable, 1=Enable

+$Disable_SSC_DDT08    1 bit        ; panel #08, 0=Disable, 1=Enable

+$Disable_SSC_DDT09    1 bit        ; panel #09, 0=Disable, 1=Enable

+$Disable_SSC_DDT10    1 bit        ; panel #10, 0=Disable, 1=Enable

+$Disable_SSC_DDT11    1 bit        ; panel #11, 0=Disable, 1=Enable

+$Disable_SSC_DDT12    1 bit        ; panel #12, 0=Disable, 1=Enable

+$Disable_SSC_DDT13    1 bit        ; panel #13, 0=Disable, 1=Enable

+$Disable_SSC_DDT14    1 bit        ; panel #14, 0=Disable, 1=Enable

+$Disable_SSC_DDT15    1 bit        ; panel #15, 0=Disable, 1=Enable

+$Disable_SSC_DDT16    1 bit        ; panel #16, 0=Disable, 1=Enable

+      

+$INT_Panel_Color_Depth01    1 bit        ; Panel #01, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth02    1 bit        ; Panel #02, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth03    1 bit        ; Panel #03, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth04    1 bit        ; Panel #04, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth05    1 bit        ; Panel #05, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth06    1 bit        ; Panel #06, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth07    1 bit        ; Panel #07, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth08    1 bit        ; Panel #08, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth09    1 bit        ; Panel #09, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth10    1 bit        ; Panel #10, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth11    1 bit        ; Panel #11, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth12    1 bit        ; Panel #12, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth13    1 bit        ; Panel #13, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth14    1 bit        ; Panel #14, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth15    1 bit        ; Panel #15, 0 = 18bpps, 1 = 24bpps

+$INT_Panel_Color_Depth16    1 bit        ; Panel #16, 0 = 18bpps, 1 = 24bpps

+

+$DPS_Panel_Type_01        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_02        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_03        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_04        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_05        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_06        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_07        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_08        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_09        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_10        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_11        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_12        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_13        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_14        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_15        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+$DPS_Panel_Type_16        2 bits        ; 00 = Static DRRS, 01 = Redundant, 10 = Seamless

+     

+$Blt_Control_01        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_02        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_03        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_04        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_05        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_06        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_07        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_08        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_09        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_10        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_11        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_12        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_13        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_14        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_15        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+$Blt_Control_16        2 bits        ; 00 = Default, 01 = CCFL backlight, 10 = LED backlight

+

+

+;==============================================================================

+; Block 41 - Flat Panel Data Tables Pointers

+;------------------------------------------------------------------------------

+

+SKIP			3 bytes		; SKIP block ID and size

+SKIP			1 byte		; Skip entries number byte

+

+$LVDS_Tbl_Ptr_01	2 bytes

+$LVDS_Tbl_Size_01	1 byte

+$LVDS_Tbl_01,		$LVDS_Tbl_Ptr_01, $LVDS_Tbl_Size_01, Offset 4 bytes

+$DVO_Tbl_Ptr_01		2 bytes

+$DVO_Tbl_Size_01	1 byte

+$DVO_Tbl_01,		$DVO_Tbl_Ptr_01, $DVO_Tbl_Size_01, Offset 0 byte

+$LVDS_PnP_ID_Ptr_01	2 bytes

+$LVDS_PnP_ID_Size_01	1 byte

+$LVDS_PnP_ID_01,	$LVDS_PnP_ID_Ptr_01, $LVDS_PnP_ID_Size_01, Offset 0 byte

+

+$LVDS_Tbl_Ptr_02	2 bytes

+$LVDS_Tbl_Size_02	1 byte

+$LVDS_Tbl_02,		$LVDS_Tbl_Ptr_02, $LVDS_Tbl_Size_02, Offset 4 bytes

+$DVO_Tbl_Ptr_02		2 bytes

+$DVO_Tbl_Size_02	1 byte

+$DVO_Tbl_02,		$DVO_Tbl_Ptr_02, $DVO_Tbl_Size_02, Offset 0 byte

+$LVDS_PnP_ID_Ptr_02	2 bytes

+$LVDS_PnP_ID_Size_02	1 byte

+$LVDS_PnP_ID_02,	$LVDS_PnP_ID_Ptr_02, $LVDS_PnP_ID_Size_02, Offset 0 byte

+

+$LVDS_Tbl_Ptr_03	2 bytes

+$LVDS_Tbl_Size_03	1 byte

+$LVDS_Tbl_03,		$LVDS_Tbl_Ptr_03, $LVDS_Tbl_Size_03, Offset 4 bytes

+$DVO_Tbl_Ptr_03		2 bytes

+$DVO_Tbl_Size_03	1 byte

+$DVO_Tbl_03,		$DVO_Tbl_Ptr_03, $DVO_Tbl_Size_03, Offset 0 byte

+$LVDS_PnP_ID_Ptr_03	2 bytes

+$LVDS_PnP_ID_Size_03	1 byte

+$LVDS_PnP_ID_03,	$LVDS_PnP_ID_Ptr_03, $LVDS_PnP_ID_Size_03, Offset 0 byte

+

+$LVDS_Tbl_Ptr_04	2 bytes

+$LVDS_Tbl_Size_04	1 byte

+$LVDS_Tbl_04,		$LVDS_Tbl_Ptr_04, $LVDS_Tbl_Size_04, Offset 4 bytes

+$DVO_Tbl_Ptr_04		2 bytes

+$DVO_Tbl_Size_04	1 byte

+$DVO_Tbl_04,		$DVO_Tbl_Ptr_04, $DVO_Tbl_Size_04, Offset 0 byte

+$LVDS_PnP_ID_Ptr_04	2 bytes

+$LVDS_PnP_ID_Size_04	1 byte

+$LVDS_PnP_ID_04,	$LVDS_PnP_ID_Ptr_04, $LVDS_PnP_ID_Size_04, Offset 0 byte

+

+$LVDS_Tbl_Ptr_05	2 bytes

+$LVDS_Tbl_Size_05	1 byte

+$LVDS_Tbl_05,		$LVDS_Tbl_Ptr_05, $LVDS_Tbl_Size_05, Offset 4 bytes

+$DVO_Tbl_Ptr_05		2 bytes

+$DVO_Tbl_Size_05	1 byte

+$DVO_Tbl_05,		$DVO_Tbl_Ptr_05, $DVO_Tbl_Size_05, Offset 0 byte

+$LVDS_PnP_ID_Ptr_05	2 bytes

+$LVDS_PnP_ID_Size_05	1 byte

+$LVDS_PnP_ID_05,	$LVDS_PnP_ID_Ptr_05, $LVDS_PnP_ID_Size_05, Offset 0 byte

+

+$LVDS_Tbl_Ptr_06	2 bytes

+$LVDS_Tbl_Size_06	1 byte

+$LVDS_Tbl_06,		$LVDS_Tbl_Ptr_06, $LVDS_Tbl_Size_06, Offset 4 bytes

+$DVO_Tbl_Ptr_06		2 bytes

+$DVO_Tbl_Size_06	1 byte

+$DVO_Tbl_06,		$DVO_Tbl_Ptr_06, $DVO_Tbl_Size_06, Offset 0 byte

+$LVDS_PnP_ID_Ptr_06	2 bytes

+$LVDS_PnP_ID_Size_06	1 byte

+$LVDS_PnP_ID_06,	$LVDS_PnP_ID_Ptr_06, $LVDS_PnP_ID_Size_06, Offset 0 byte

+

+$LVDS_Tbl_Ptr_07	2 bytes

+$LVDS_Tbl_Size_07	1 byte

+$LVDS_Tbl_07,		$LVDS_Tbl_Ptr_07, $LVDS_Tbl_Size_07, Offset 4 bytes

+$DVO_Tbl_Ptr_07		2 bytes

+$DVO_Tbl_Size_07	1 byte

+$DVO_Tbl_07,		$DVO_Tbl_Ptr_07, $DVO_Tbl_Size_07, Offset 0 byte

+$LVDS_PnP_ID_Ptr_07	2 bytes

+$LVDS_PnP_ID_Size_07	1 byte

+$LVDS_PnP_ID_07,	$LVDS_PnP_ID_Ptr_07, $LVDS_PnP_ID_Size_07, Offset 0 byte

+

+$LVDS_Tbl_Ptr_08	2 bytes

+$LVDS_Tbl_Size_08	1 byte

+$LVDS_Tbl_08,		$LVDS_Tbl_Ptr_08, $LVDS_Tbl_Size_08, Offset 4 bytes

+$DVO_Tbl_Ptr_08		2 bytes

+$DVO_Tbl_Size_08	1 byte

+$DVO_Tbl_08,		$DVO_Tbl_Ptr_08, $DVO_Tbl_Size_08, Offset 0 byte

+$LVDS_PnP_ID_Ptr_08	2 bytes

+$LVDS_PnP_ID_Size_08	1 byte

+$LVDS_PnP_ID_08,	$LVDS_PnP_ID_Ptr_08, $LVDS_PnP_ID_Size_08, Offset 0 byte

+

+$LVDS_Tbl_Ptr_09	2 bytes

+$LVDS_Tbl_Size_09	1 byte

+$LVDS_Tbl_09,		$LVDS_Tbl_Ptr_09, $LVDS_Tbl_Size_09, Offset 4 bytes

+$DVO_Tbl_Ptr_09		2 bytes

+$DVO_Tbl_Size_09	1 byte

+$DVO_Tbl_09,		$DVO_Tbl_Ptr_09, $DVO_Tbl_Size_09, Offset 0 byte

+$LVDS_PnP_ID_Ptr_09	2 bytes

+$LVDS_PnP_ID_Size_09	1 byte

+$LVDS_PnP_ID_09,	$LVDS_PnP_ID_Ptr_09, $LVDS_PnP_ID_Size_09, Offset 0 byte

+

+$LVDS_Tbl_Ptr_10	2 bytes

+$LVDS_Tbl_Size_10	1 byte

+$LVDS_Tbl_10,		$LVDS_Tbl_Ptr_10, $LVDS_Tbl_Size_10, Offset 4 bytes

+$DVO_Tbl_Ptr_10		2 bytes

+$DVO_Tbl_Size_10	1 byte

+$DVO_Tbl_10,		$DVO_Tbl_Ptr_10, $DVO_Tbl_Size_10, Offset 0 byte

+$LVDS_PnP_ID_Ptr_10	2 bytes

+$LVDS_PnP_ID_Size_10	1 byte

+$LVDS_PnP_ID_10,	$LVDS_PnP_ID_Ptr_10, $LVDS_PnP_ID_Size_10, Offset 0 byte

+

+$LVDS_Tbl_Ptr_11	2 bytes

+$LVDS_Tbl_Size_11	1 byte

+$LVDS_Tbl_11,		$LVDS_Tbl_Ptr_11, $LVDS_Tbl_Size_11, Offset 4 bytes

+$DVO_Tbl_Ptr_11		2 bytes

+$DVO_Tbl_Size_11	1 byte

+$DVO_Tbl_11,		$DVO_Tbl_Ptr_11, $DVO_Tbl_Size_11, Offset 0 byte

+$LVDS_PnP_ID_Ptr_11	2 bytes

+$LVDS_PnP_ID_Size_11	1 byte

+$LVDS_PnP_ID_11,	$LVDS_PnP_ID_Ptr_11, $LVDS_PnP_ID_Size_11, Offset 0 byte

+

+$LVDS_Tbl_Ptr_12	2 bytes

+$LVDS_Tbl_Size_12	1 byte

+$LVDS_Tbl_12,		$LVDS_Tbl_Ptr_12, $LVDS_Tbl_Size_12, Offset 4 bytes

+$DVO_Tbl_Ptr_12		2 bytes

+$DVO_Tbl_Size_12	1 byte

+$DVO_Tbl_12,		$DVO_Tbl_Ptr_12, $DVO_Tbl_Size_12, Offset 0 byte

+$LVDS_PnP_ID_Ptr_12	2 bytes

+$LVDS_PnP_ID_Size_12	1 byte

+$LVDS_PnP_ID_12,	$LVDS_PnP_ID_Ptr_12, $LVDS_PnP_ID_Size_12, Offset 0 byte

+

+$LVDS_Tbl_Ptr_13	2 bytes

+$LVDS_Tbl_Size_13	1 byte

+$LVDS_Tbl_13,		$LVDS_Tbl_Ptr_13, $LVDS_Tbl_Size_13, Offset 4 bytes

+$DVO_Tbl_Ptr_13		2 bytes

+$DVO_Tbl_Size_13	1 byte

+$DVO_Tbl_13,		$DVO_Tbl_Ptr_13, $DVO_Tbl_Size_13, Offset 0 byte

+$LVDS_PnP_ID_Ptr_13	2 bytes

+$LVDS_PnP_ID_Size_13	1 byte

+$LVDS_PnP_ID_13,	$LVDS_PnP_ID_Ptr_13, $LVDS_PnP_ID_Size_13, Offset 0 byte

+

+$LVDS_Tbl_Ptr_14	2 bytes

+$LVDS_Tbl_Size_14	1 byte

+$LVDS_Tbl_14,		$LVDS_Tbl_Ptr_14, $LVDS_Tbl_Size_14, Offset 4 bytes

+$DVO_Tbl_Ptr_14		2 bytes

+$DVO_Tbl_Size_14	1 byte

+$DVO_Tbl_14,		$DVO_Tbl_Ptr_14, $DVO_Tbl_Size_14, Offset 0 byte

+$LVDS_PnP_ID_Ptr_14	2 bytes

+$LVDS_PnP_ID_Size_14	1 byte

+$LVDS_PnP_ID_14,	$LVDS_PnP_ID_Ptr_14, $LVDS_PnP_ID_Size_14, Offset 0 byte

+

+$LVDS_Tbl_Ptr_15	2 bytes

+$LVDS_Tbl_Size_15	1 byte

+$LVDS_Tbl_15,		$LVDS_Tbl_Ptr_15, $LVDS_Tbl_Size_15, Offset 4 bytes

+$DVO_Tbl_Ptr_15		2 bytes

+$DVO_Tbl_Size_15	1 byte

+$DVO_Tbl_15,		$DVO_Tbl_Ptr_15, $DVO_Tbl_Size_15, Offset 0 byte

+$LVDS_PnP_ID_Ptr_15	2 bytes

+$LVDS_PnP_ID_Size_15	1 byte

+$LVDS_PnP_ID_15,	$LVDS_PnP_ID_Ptr_15, $LVDS_PnP_ID_Size_15, Offset 0 byte

+

+$LVDS_Tbl_Ptr_16	2 bytes

+$LVDS_Tbl_Size_16	1 byte

+$LVDS_Tbl_16,		$LVDS_Tbl_Ptr_16, $LVDS_Tbl_Size_16, Offset 4 bytes

+$DVO_Tbl_Ptr_16		2 bytes

+$DVO_Tbl_Size_16	1 byte

+$DVO_Tbl_16,		$DVO_Tbl_Ptr_16, $DVO_Tbl_Size_16, Offset 0 byte

+$LVDS_PnP_ID_Ptr_16	2 bytes

+$LVDS_PnP_ID_Size_16	1 byte

+$LVDS_PnP_ID_16,	$LVDS_PnP_ID_Ptr_16, $LVDS_PnP_ID_Size_16, Offset 0 byte

+

+SKIP                    2 bytes       ;LfpPanelNameTable Offset

+SKIP                    1 byte        ;LfpPanelName Length

+

+    

+

+;==============================================================================

+; Block 42 - Flat Panel Data Tables

+;------------------------------------------------------------------------------

+

+SKIP            3 bytes        ; Skip block ID and size

+

+            ; Flat Panel #1

+

+$Panel_Width_01        2 bytes        ; Panel Width

+$Panel_Height_01    2 bytes        ; Panel Height

+

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither01                1 bit    ; Panel #01, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ; address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_01        13 bits    ; Power on Backlight Enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_01                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ; address-0x6120C or 0x0C720C (for ILM) -Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_01    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_01                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM) -Panel power cycle delay and reference divider

+$PowerCycleDelay_01                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+ALIGN

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #2

+

+$Panel_Width_02        2 bytes            ; Panel Width

+$Panel_Height_02    2 bytes        ; Panel Height

+

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither02                1 bit    ; Panel #02, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_02        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_02                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_02    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_02                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_02                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #3

+

+$Panel_Width_03        2 bytes        ; Panel Width

+$Panel_Height_03    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither03                1 bit    ; Panel #03, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_03        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_03                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_03    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_03                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;aaddress-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_03                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #4

+

+$Panel_Width_04        2 bytes        ; Panel Width

+$Panel_Height_04    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither04                1 bit    ; Panel #04, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_04        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_04                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_04    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_04                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_04                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #5

+

+$Panel_Width_05        2 bytes        ; Panel Width

+$Panel_Height_05    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither05                1 bit    ; Panel #05, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_05        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_05                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_05    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_05                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_05                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP            2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #6

+

+$Panel_Width_06        2 bytes        ; Panel Width

+$Panel_Height_06    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither06                1 bit    ; Panel #06, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_06        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_06                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_06    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_06                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_06                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #7

+

+$Panel_Width_07        2 bytes        ; Panel Width

+$Panel_Height_07    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither07                1 bit    ; Panel #07, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_07        13 bits    ; Power on Backlight enable delay delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_07                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_07    13 bits    ; Backlight off delay power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_07                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_07                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #8

+

+$Panel_Width_08        2 bytes        ; Panel Width

+$Panel_Height_08    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither08                1 bit    ; Panel #08, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_08        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_08                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_08    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_08                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_08                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #9

+

+$Panel_Width_09        2 bytes        ; Panel Width

+$Panel_Height_09    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither09                1 bit    ; Panel #09, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_09        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_09                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_09    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_09                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_09                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #10

+

+$Panel_Width_10        2 bytes        ; Panel Width

+$Panel_Height_10    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither10                1 bit    ; Panel #10, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_10        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_10                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_10    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_10                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_10                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #11

+

+$Panel_Width_11        2 bytes        ; Panel Width

+$Panel_Height_11    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither11                1 bit    ; Panel #11, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_11        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_11                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_11    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_11                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_11                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #12

+

+$Panel_Width_12        2 bytes        ; Panel Width

+$Panel_Height_12    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither12                1 bit    ; Panel #12, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_12        13 bits    ; Powen on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_12                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_12    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_12                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_12                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #13

+

+$Panel_Width_13        2 bytes        ; Panel Width

+$Panel_Height_13    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither13                1 bit    ; Panel #13, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_13        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_13                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_13    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_13                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_13                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #14

+

+$Panel_Width_14        2 bytes        ; Panel Width

+$Panel_Height_14    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither14                1 bit    ; Panel #14, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_14        13 bits    ; Power on baklight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_14                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_14    13 bits    ;Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_14                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_14                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #15

+

+$Panel_Width_15        2 bytes        ; Panel Width

+$Panel_Height_15    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither15                1 bit    ; Panel #15, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_15        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_15                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_15    13 bits    ; Backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_15                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_15                5 bits    ; Power Cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+            ; Flat Panel #16

+

+$Panel_Width_16        2 bytes        ; Panel Width

+$Panel_Height_16    2 bytes        ; Panel Height

+SKIP                        4 bytes    ;address-0x61180 or 0x0E1180 (for ILM) - Port control

+SKIP                        3 bytes    ; bits[23:0]

+SKIP                        1 bit    ; bit[24]

+$Enable_Dither16                1 bit    ; Panel #16, 0=No, 1=Yes

+SKIP                        6 bits    ; bits[31:26]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61208 or 0x0C7208 (for ILM) - Panel power on sequencing

+$Power_On_Backlight_Enable_Delay_16        13 bits    ; Power on backlight enable delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerUpDelay_16                13 bits    ; Power up delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x6120C or 0x0C720C (for ILM)-Panel Power off sequencing

+$Power_Backlight_Off_Power_Down_Delay_16    13 bits    ; backlight off power down delay

+SKIP                        3 bits    ; bits[15:13]

+$PowerDownDelay_16                13 bits    ; Power down delay

+SKIP                        3 bits    ; bits[31:29]

+ALIGN

+

+SKIP                        4 bytes    ;address-0x61210h or 0x0C7210 (for ILM)-Panel power cycle delay and reference divider

+$PowerCycleDelay_16                5 bits    ; Power cycle delay

+SKIP                        3 bits    ; bits[5:7]

+SKIP                        3 bytes

+

+SKIP                        2 bytes ; 2 bytes at the end

+SKIP            18 bytes    ; DTD

+SKIP            10 bytes    ; PnP ID

+

+$Panel_Name_01		13 bytes	; LFP Panel Name

+$Panel_Name_02		13 bytes	; LFP Panel Name

+$Panel_Name_03		13 bytes	; LFP Panel Name

+$Panel_Name_04		13 bytes	; LFP Panel Name

+$Panel_Name_05		13 bytes	; LFP Panel Name

+$Panel_Name_06		13 bytes	; LFP Panel Name

+$Panel_Name_07		13 bytes	; LFP Panel Name

+$Panel_Name_08		13 bytes	; LFP Panel Name

+$Panel_Name_09		13 bytes	; LFP Panel Name

+$Panel_Name_10		13 bytes	; LFP Panel Name

+$Panel_Name_11		13 bytes	; LFP Panel Name

+$Panel_Name_12		13 bytes	; LFP Panel Name

+$Panel_Name_13		13 bytes	; LFP Panel Name

+$Panel_Name_14		13 bytes	; LFP Panel Name

+$Panel_Name_15		13 bytes	; LFP Panel Name

+$Panel_Name_16		13 bytes	; LFP Panel Name

+

+$Enable_Scaling_01 		1 bit ; Scaling Enable bit for Panel#1

+$Enable_Scaling_02 		1 bit ; Scaling Enable bit for Panel#2

+$Enable_Scaling_03 		1 bit ; Scaling Enable bit for Panel#3

+$Enable_Scaling_04 		1 bit ; Scaling Enable bit for Panel#4

+$Enable_Scaling_05 		1 bit ; Scaling Enable bit for Panel#5

+$Enable_Scaling_06 		1 bit ; Scaling Enable bit for Panel#6

+$Enable_Scaling_07 		1 bit ; Scaling Enable bit for Panel#7

+$Enable_Scaling_08 		1 bit ; Scaling Enable bit for Panel#8

+$Enable_Scaling_09 		1 bit ; Scaling Enable bit for Panel#9

+$Enable_Scaling_10 		1 bit ; Scaling Enable bit for Panel#10

+$Enable_Scaling_11 		1 bit ; Scaling Enable bit for Panel#11

+$Enable_Scaling_12 		1 bit ; Scaling Enable bit for Panel#12

+$Enable_Scaling_13 		1 bit ; Scaling Enable bit for Panel#13

+$Enable_Scaling_14 		1 bit ; Scaling Enable bit for Panel#14

+$Enable_Scaling_15 		1 bit ; Scaling Enable bit for Panel#15

+$Enable_Scaling_16 		1 bit ; Scaling Enable bit for Panel#16

+

+$Seamless_DRRS_Min_RR_01 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#1

+$Seamless_DRRS_Min_RR_02 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#2

+$Seamless_DRRS_Min_RR_03 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#3

+$Seamless_DRRS_Min_RR_04 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#4

+$Seamless_DRRS_Min_RR_05 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#5

+$Seamless_DRRS_Min_RR_06 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#6

+$Seamless_DRRS_Min_RR_07 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#7

+$Seamless_DRRS_Min_RR_08 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#8

+$Seamless_DRRS_Min_RR_09 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#9

+$Seamless_DRRS_Min_RR_10 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#10

+$Seamless_DRRS_Min_RR_11 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#11

+$Seamless_DRRS_Min_RR_12 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#12

+$Seamless_DRRS_Min_RR_13 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#13

+$Seamless_DRRS_Min_RR_14 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#14

+$Seamless_DRRS_Min_RR_15 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#15

+$Seamless_DRRS_Min_RR_16 	1 byte ; Seamless DRRS Min Refresh Rate for Panel#16

+

+;==============================================================================

+; Block 43 - BLC (Backlight Control) Support

+;------------------------------------------------------------------------------

+

+SKIP            3  bytes    ; Skip block ID and size

+SKIP            1  byte        ; Skip row size

+

+            ; Flat Panel #1

+$BLC_Inv_Type_1        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_1    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_1    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_1    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_1    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_1    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_1        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_1    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #2

+$BLC_Inv_Type_2        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_2    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_2    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_2    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_2    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_2    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_2        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_2    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #3

+$BLC_Inv_Type_3        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_3    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_3    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_3    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_3    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_3    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_3        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_3    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #4

+$BLC_Inv_Type_4        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_4    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_4    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_4    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_4    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_4    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_4        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_4    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #5

+$BLC_Inv_Type_5        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_5    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_5    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_5    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_5    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_5    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_5        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_5    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #6

+$BLC_Inv_Type_6        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_6    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_6    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_6    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_6    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_6    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_6        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_6    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #7

+$BLC_Inv_Type_7        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_7    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_7    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_7    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_7    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_7    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_7        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_7    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #8

+$BLC_Inv_Type_8        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_8    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_8    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_8    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_8    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_8    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_8        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_8    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #9

+$BLC_Inv_Type_9        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_9    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_9    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_9    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_9    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_9    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_9        1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_9    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #10

+$BLC_Inv_Type_10        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_10    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_10    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_10    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_10    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_10    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_10    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_10    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #11

+$BLC_Inv_Type_11    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_11    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_11    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_11    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_11    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_11    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_11    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_11    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #12

+$BLC_Inv_Type_12    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_12    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_12    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_12    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_12    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_12    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_12    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_12    1  byte        ; I2C inverter command code

+

+            ; Flat Panel #13

+$BLC_Inv_Type_13    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_13    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_13    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_13    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_13    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_13    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_13    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_13    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #14

+$BLC_Inv_Type_14    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_14    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_14    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_14    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_14    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_14    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_14    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_14    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #15

+$BLC_Inv_Type_15        2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_15    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_15    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_15    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_15    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_15    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_15    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_15    1  byte        ; I2C inverter command code

+

+

+            ; Flat Panel #16

+$BLC_Inv_Type_16    2  bits        ; BLC inverter type

+$BLC_Inv_Polarity_16    1  bit        ; BLC inverter polarity

+$BLC_GPIO_Pins_16    3  bits        ; BLC inverter GPIO Pins

+$BLC_GMBus_Speed_16    2  bits        ; BLC inverter GMBus speed

+$PWM_Frequency_16    2  bytes    ; PWM inverter frequency

+$BLC_Min_Brightness_16    1  byte        ; Minimum Brightness, 0 - 255

+$BLC_I2C_Addr_16    1  byte        ; I2C inverter Slave address

+$BLC_Brightness_Cmd_16    1  byte        ; I2C inverter command code

+

+$POST_BL_Brightness_01	1 byte		; Intial brightness value at POST for Flat Panel #1

+  $POST_BL_Brightness_02	1 byte		; Intial brightness value at POST for Flat Panel #2

+  $POST_BL_Brightness_03	1 byte		; Intial brightness value at POST for Flat Panel #3

+  $POST_BL_Brightness_04	1 byte		; Intial brightness value at POST for Flat Panel #4

+  $POST_BL_Brightness_05	1 byte		; Intial brightness value at POST for Flat Panel #5

+  $POST_BL_Brightness_06	1 byte		; Intial brightness value at POST for Flat Panel #6

+  $POST_BL_Brightness_07	1 byte		; Intial brightness value at POST for Flat Panel #7

+  $POST_BL_Brightness_08	1 byte		; Intial brightness value at POST for Flat Panel #8

+  $POST_BL_Brightness_09	1 byte		; Intial brightness value at POST for Flat Panel #9

+  $POST_BL_Brightness_10	1 byte		; Intial brightness value at POST for Flat Panel #10

+  $POST_BL_Brightness_11	1 byte		; Intial brightness value at POST for Flat Panel #11

+  $POST_BL_Brightness_12	1 byte		; Intial brightness value at POST for Flat Panel #12

+  $POST_BL_Brightness_13	1 byte		; Intial brightness value at POST for Flat Panel #13

+  $POST_BL_Brightness_14	1 byte		; Intial brightness value at POST for Flat Panel #14

+  $POST_BL_Brightness_15	1 byte		; Intial brightness value at POST for Flat Panel #15

+  $POST_BL_Brightness_16	1 byte		; Intial brightness value at POST for Flat Panel #16

+

+  $Lfp_Pwm_Source_Selection_01 		4 bits  ; Pwm Source Selection for Panel #1

+  $Lfp_Pwm_Controller_Selection_01  4 bits  ; Pwm Controller Selection for Panel #1

+

+  $Lfp_Pwm_Source_Selection_02 		4 bits  ; Pwm Source Selection for Panel #2

+  $Lfp_Pwm_Controller_Selection_02  4 bits  ; Pwm Controller Selection for Panel #2

+

+  $Lfp_Pwm_Source_Selection_03 		4 bits  ; Pwm Source Selection for Panel #3

+  $Lfp_Pwm_Controller_Selection_03  4 bits  ; Pwm Controller Selection for Panel #3

+  

+  $Lfp_Pwm_Source_Selection_04 		4 bits  ; Pwm Source Selection for Panel #4

+  $Lfp_Pwm_Controller_Selection_04  4 bits  ; Pwm Controller Selection for Panel #4

+  

+  $Lfp_Pwm_Source_Selection_05 		4 bits  ; Pwm Source Selection for Panel #5

+  $Lfp_Pwm_Controller_Selection_05  4 bits  ; Pwm Controller Selection for Panel #5

+

+  $Lfp_Pwm_Source_Selection_06 		4 bits  ; Pwm Source Selection for Panel #6

+  $Lfp_Pwm_Controller_Selection_06  4 bits  ; Pwm Controller Selection for Panel #6

+

+  $Lfp_Pwm_Source_Selection_07 		4 bits  ; Pwm Source Selection for Panel #7

+  $Lfp_Pwm_Controller_Selection_07  4 bits  ; Pwm Controller Selection for Panel #7

+  

+  $Lfp_Pwm_Source_Selection_08 		4 bits  ; Pwm Source Selection for Panel #8

+  $Lfp_Pwm_Controller_Selection_08  4 bits  ; Pwm Controller Selection for Panel #8

+

+  $Lfp_Pwm_Source_Selection_09 		4 bits  ; Pwm Source Selection for Panel #9

+  $Lfp_Pwm_Controller_Selection_09  4 bits  ; Pwm Controller Selection for Panel #9

+

+  $Lfp_Pwm_Source_Selection_10 		4 bits  ; Pwm Source Selection for Panel #10

+  $Lfp_Pwm_Controller_Selection_10  4 bits  ; Pwm Controller Selection for Panel #10

+  

+  $Lfp_Pwm_Source_Selection_11 		4 bits  ; Pwm Source Selection for Panel #11

+  $Lfp_Pwm_Controller_Selection_11  4 bits  ; Pwm Controller Selection for Panel #11

+

+  $Lfp_Pwm_Source_Selection_12 		4 bits  ; Pwm Source Selection for Panel #12

+  $Lfp_Pwm_Controller_Selection_12  4 bits  ; Pwm Controller Selection for Panel #12

+

+  $Lfp_Pwm_Source_Selection_13 		4 bits  ; Pwm Source Selection for Panel #13

+  $Lfp_Pwm_Controller_Selection_13  4 bits  ; Pwm Controller Selection for Panel #13

+

+  $Lfp_Pwm_Source_Selection_14 		4 bits  ; Pwm Source Selection for Panel #14

+  $Lfp_Pwm_Controller_Selection_14  4 bits  ; Pwm Controller Selection for Panel #14

+  

+  $Lfp_Pwm_Source_Selection_15 		4 bits  ; Pwm Source Selection for Panel #15

+  $Lfp_Pwm_Controller_Selection_15  4 bits  ; Pwm Controller Selection for Panel #15

+

+  $Lfp_Pwm_Source_Selection_16 		4 bits  ; Pwm Source Selection for Panel #16

+  $Lfp_Pwm_Controller_Selection_16  4 bits  ; Pwm Controller Selection for Panel #16

+

+;==============================================================================

+; Block 44 - BIA (Backlight Image Adaption) Support

+;------------------------------------------------------------------------------

+

+SKIP            3  bytes    ; Skip block ID and size

+

+$BIA_Enable        1  bit        ; DPST support enable bit

+$BIA_Aggress_Level    3  bits        ; Power Conservation Preference level

+SKIP            3  bits        ; Reserved

+$ALS_Enable        1  bit        ; ALS enable bit

+$ALS_Response_Data    20  bytes    ; ALS Response Data

+

+ ;==============================================================================

+    ; Block 46 - Chromaticity  Support

+    ;------------------------------------------------------------------------------

+

+    SKIP			3  bytes	; Skip block ID and size

+

+

+	$Chromacity_Enable_1	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_1    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_1		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_1		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_1			1 byte			; Red x coordinate at 1Bh

+	$Red_y_1			1 byte			; Red y coordinate at 1Ch

+	$Green_x_1		1 byte			; Green x coordinate at 1Dh

+	$Green_y_1		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_1			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_1			1 byte			; Blue y coordinate at 20h

+	$White_x_1		1 byte			; White x coordiante at 21h

+	$White_y_1		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_2	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_2    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_2		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_2		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_2			1 byte			; Red x coordinate at 1Bh

+	$Red_y_2			1 byte			; Red y coordinate at 1Ch

+	$Green_x_2		1 byte			; Green x coordinate at 1Dh

+	$Green_y_2		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_2			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_2			1 byte			; Blue y coordinate at 20h

+	$White_x_2		1 byte			; White x coordiante at 21h

+	$White_y_2		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_3	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_3    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_3		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_3		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_3			1 byte			; Red x coordinate at 1Bh

+	$Red_y_3			1 byte			; Red y coordinate at 1Ch

+	$Green_x_3		1 byte			; Green x coordinate at 1Dh

+	$Green_y_3		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_3			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_3			1 byte			; Blue y coordinate at 20h

+	$White_x_3		1 byte			; White x coordiante at 21h

+	$White_y_3		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_4	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_4    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_4		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_4		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_4			1 byte			; Red x coordinate at 1Bh

+	$Red_y_4			1 byte			; Red y coordinate at 1Ch

+	$Green_x_4		1 byte			; Green x coordinate at 1Dh

+	$Green_y_4		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_4			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_4			1 byte			; Blue y coordinate at 20h

+	$White_x_4		1 byte			; White x coordiante at 21h

+	$White_y_4		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_5	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_5    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_5		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_5		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_5			1 byte			; Red x coordinate at 1Bh

+	$Red_y_5			1 byte			; Red y coordinate at 1Ch

+	$Green_x_5		1 byte			; Green x coordinate at 1Dh

+	$Green_y_5		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_5			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_5			1 byte			; Blue y coordinate at 20h

+	$White_x_5		1 byte			; White x coordiante at 21h

+	$White_y_5		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_6	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_6    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_6		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_6		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_6			1 byte			; Red x coordinate at 1Bh

+	$Red_y_6			1 byte			; Red y coordinate at 1Ch

+	$Green_x_6		1 byte			; Green x coordinate at 1Dh

+	$Green_y_6		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_6			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_6			1 byte			; Blue y coordinate at 20h

+	$White_x_6		1 byte			; White x coordiante at 21h

+	$White_y_6		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_7	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_7    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_7		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_7		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_7		1 byte			; Red x coordinate at 1Bh

+	$Red_y_7			1 byte			; Red y coordinate at 1Ch

+	$Green_x_7		1 byte			; Green x coordinate at 1Dh

+	$Green_y_7		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_7			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_7			1 byte			; Blue y coordinate at 20h

+	$White_x_7		1 byte			; White x coordiante at 21h

+	$White_y_7		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_8	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_8    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_8		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_8		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_8			1 byte			; Red x coordinate at 1Bh

+	$Red_y_8			1 byte			; Red y coordinate at 1Ch

+	$Green_x_8		1 byte			; Green x coordinate at 1Dh

+	$Green_y_8		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_8			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_8			1 byte			; Blue y coordinate at 20h

+	$White_x_8		1 byte			; White x coordiante at 21h

+	$White_y_8		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_9	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_9    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_9		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_9		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_9			1 byte			; Red x coordinate at 1Bh

+	$Red_y_9			1 byte			; Red y coordinate at 1Ch

+	$Green_x_9		1 byte			; Green x coordinate at 1Dh

+	$Green_y_9		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_9			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_9			1 byte			; Blue y coordinate at 20h

+	$White_x_9		1 byte			; White x coordiante at 21h

+	$White_y_9		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_10	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_10    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_10		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_10		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_10			1 byte			; Red x coordinate at 1Bh

+	$Red_y_10			1 byte			; Red y coordinate at 1Ch

+	$Green_x_10		1 byte			; Green x coordinate at 1Dh

+	$Green_y_10		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_10			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_10			1 byte			; Blue y coordinate at 20h

+	$White_x_10		1 byte			; White x coordiante at 21h

+	$White_y_10		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_11	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_11    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_11		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_11		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_11			1 byte			; Red x coordinate at 1Bh

+	$Red_y_11			1 byte			; Red y coordinate at 1Ch

+	$Green_x_11		1 byte			; Green x coordinate at 1Dh

+	$Green_y_11		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_11			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_11			1 byte			; Blue y coordinate at 20h

+	$White_x_11		1 byte			; White x coordiante at 21h

+	$White_y_11		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_12	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_12    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_12		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_12		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_12			1 byte			; Red x coordinate at 1Bh

+	$Red_y_12			1 byte			; Red y coordinate at 1Ch

+	$Green_x_12		1 byte			; Green x coordinate at 1Dh

+	$Green_y_12		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_12			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_12			1 byte			; Blue y coordinate at 20h

+	$White_x_12		1 byte			; White x coordiante at 21h

+	$White_y_12		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_13	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_13    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_13		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_13		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_13			1 byte			; Red x coordinate at 1Bh

+	$Red_y_13			1 byte			; Red y coordinate at 1Ch

+	$Green_x_13		1 byte			; Green x coordinate at 1Dh

+	$Green_y_13		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_13			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_13			1 byte			; Blue y coordinate at 20h

+	$White_x_13		1 byte			; White x coordiante at 21h

+	$White_y_13		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_14	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_14    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_14		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_14		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_14			1 byte			; Red x coordinate at 1Bh

+	$Red_y_14			1 byte			; Red y coordinate at 1Ch

+	$Green_x_14		1 byte			; Green x coordinate at 1Dh

+	$Green_y_14		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_14			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_14			1 byte			; Blue y coordinate at 20h

+	$White_x_14		1 byte			; White x coordiante at 21h

+	$White_y_14		1 byte			; White y coordinate at 22h

+

+	$Chromacity_Enable_15	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_15    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_15		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_15		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_15			1 byte			; Red x coordinate at 1Bh

+	$Red_y_15			1 byte			; Red y coordinate at 1Ch

+	$Green_x_15		1 byte			; Green x coordinate at 1Dh

+	$Green_y_15		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_15			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_15			1 byte			; Blue y coordinate at 20h

+	$White_x_15		1 byte			; White x coordiante at 21h

+	$White_y_15		1 byte			; White y coordinate at 22h

+

+

+	$Chromacity_Enable_16	1 bit		; enable or disable the chromacity bit 

+	$Override_EDID_Data_16    1 bit		; Override the chromaticity bit

+	SKIP			6 bits			; Reserved bits

+	$Red_Green_16		1 byte			; Red/green chormaticity coordinates at 19h

+	$Blue_White_16		1 byte			; Blue/white chromatiity coordinates at 1Ah

+	$Red_x_16			1 byte			; Red x coordinate at 1Bh

+	$Red_y_16			1 byte			; Red y coordinate at 1Ch

+	$Green_x_16		1 byte			; Green x coordinate at 1Dh

+	$Green_y_16		1 byte			; Green y ccoordinate at 1Eh

+	$Blue_x_16			1 byte			; Blue x coordinate at 1Fh

+	$Blue_y_16			1 byte			; Blue y coordinate at 20h

+	$White_x_16		1 byte			; White x coordiante at 21h

+	$White_y_16		1 byte			; White y coordinate at 22h

+

+;==============================================================================

+; Block 51 - Fixed Mode

+;------------------------------------------------------------------------------

+

+SKIP			3  bytes	; Skip block ID and size

+$Feature_Enable  1 byte   ; enable or disable the feature

+$X_res          4 bytes ; X resolution

+$Y_res          4 bytes ; Y resolution

+

+;==============================================================================

+; Block 54 - RGB Palette enteries

+;------------------------------------------------------------------------------

+SKIP 				3 bytes				;block ID/size

+

+$Enable_Correction 	1 bit

+SKIP 				7 bits

+

+$Red_Table			256 bytes

+$Green_Table		256 bytes

+$Blue_Table			256 bytes

+

+EndStruct

+

+;==============================================================================

+; List Definitions

+;------------------------------------------------------------------------------

+

+List &Disabled_Enabled_List

+    Selection    0,    "Disabled"

+    Selection    1,    "Enabled"

+EndList

+

+List &Pwr_Pref_List

+    Selection    0x01,    "1 - Maximum Quality with No DPST"

+    Selection    0x02,    "2"

+    Selection    0x03,    "3"

+    Selection    0x04,    "4"

+    Selection    0x05,    "5"

+    Selection    0x06,    "6 - Maximum Battery"

+EndList

+

+List &Cls_After_Signon_List

+    Selection    0x00,    "No CLS"

+    Selection    0x01,    "0.5 Second Delay + CLS"

+    Selection    0x02,    "1.0 Second Delay + CLS"

+    Selection    0x03,    "1.5 Second Delay + CLS"

+    Selection    0x04,    "2.0 Second Delay + CLS"

+    Selection    0x05,    "2.5 Second Delay + CLS"

+    Selection    0x06,    "3.0 Second Delay + CLS"

+    Selection    0x07,    "3.5 Second Delay + CLS"

+EndList

+

+List &Int_CRT_Device_Type_List

+    Selection    0x0000, "No Device"

+    Selection    0x0001, "CRT"

+    ;Selection    0x0011, "DVI with CRT"

+EndList

+

+List &Int_EFP_Device_Type_List

+    Selection    0x0000, "No Device"

+    Selection    0x68C6, "DisplayPort"

+    Selection    0x60D2, "HDMI/DVI"

+    Selection	 0x68D2, "Integrated DVI Only"

+    Selection    0x60D6, "DisplayPort with HDMI/DVI Compatible"

+    Selection    0x68D6, "DisplayPort with DVI Compatible"

+   ; Selection    0x68D3, "DVI with CRT"

+EndList

+

+List &CRT_Device_Id_List

+    Selection    01h, "CRT"

+EndList

+

+List &EFP1_Device_Id_List

+    Selection    04h, "EFP 1"

+    Selection    40h, "EFP 2"

+    Selection    08h, "LFP"

+    ;Selection    80h, "LFP 2"

+EndList

+

+List &EFP2_Device_Id_List

+    Selection    04h, "EFP 1"

+    Selection    40h, "EFP 2"

+    Selection    08h, "LFP"

+    ;Selection    80h, "LFP 2"

+EndList

+

+List &LVDS_Device_Id_List

+    Selection    08h, "LFP"

+EndList

+

+List &DOS_Boot_Mode_List

+        Selection    0x03,    "03h"

+        Selection    0x12,    "12h"

+        Selection    0x13,    "13h"

+           Selection    0x30,    "30h"

+           Selection    0x32,    "32h"

+           Selection    0x34,    "34h"

+           Selection    0x40,    "40h"

+           Selection    0x41,    "41h"

+           Selection    0x42,    "42h"

+           Selection    0x43,    "43h"

+           Selection    0x44,    "44h"

+           Selection    0x45,    "45h"

+           Selection    0x50,    "50h"

+           Selection    0x52,    "52h"

+        Selection    0x54,    "54h"

+EndList

+       

+List &LFP_Port_list

+    Selection    0x07,    "eDP Port B"

+    Selection    0x08,    "eDP Port C"

+    ;Selection    0x15,    "MIPI Port A"

+    ;Selection    0x17,    "MIPI Port C"

+    

+EndList

+

+List &LVDS_eDP_Port_List

+    Selection    0x04,    "LVDS"

+    Selection    0x07,    "Port B"

+    Selection    0x08,    "Port C"

+EndList

+

+

+

+List &Int_EFP_Port_List

+	Selection	0x00,	"N/A"

+	Selection	0x01,	"Port B"

+	Selection	0x02,	"Port C"

+	

+EndList	

+

+List &Int_eDP_AUX_Channel_List

+	Selection	0x00,	"N/A"

+	Selection	0x10,	"eDP-B AUX Channel"

+	Selection	0x20,	"eDP-C AUX Channel"

+EndList

+

+List &Int_DP_AUX_Channel_List

+	Selection	0x00,	"N/A"

+	Selection	0x10,	"DisplayPort-B AUX Channel"

+	Selection	0x20,	"DisplayPort-C AUX Channel"

+EndList

+	

+

+

+List &GPIO_Pin_List

+    Selection    0x00,    "N/A"

+    Selection    0x05,    "Integrated HDMI-B DDC GPIO Pins"

+    Selection    0x04,    "Integrated HDMI-C DDC GPIO Pins"

+    Selection    0x01,    "I2C GPIO pins"

+    Selection    0x02,    "Analog CRT DDC GPIO pins"

+EndList             

+

+

+List &GMBus_Speed_List

+    Selection    0x01,    "50 KHz"

+    Selection    0x00,    "100 KHz"

+    Selection    0x02,    "400 KHz"

+    Selection    0x03,    "1 MHz"

+EndList             

+

+

+List &Inv_Type_List

+    Selection    0x00,    "None/External"

+    Selection    0x01,    "I2C"

+    Selection    0x02,    "PWM"

+EndList

+

+List &Inv_Polarity_List

+    Selection    0x00,    "Normal"

+    Selection    0x01,    "Inverted"

+EndList

+

+List &IntXXh_List

+    Selection    0x00,    "Disabled"

+    Selection    0x01,    "Use Interrupt 15h"

+EndList

+

+List &LVDS_Channel_List

+    Selection    0x00,    "Single Channel"

+    Selection    0x01,    "Dual Channel"

+EndList

+

+List &INT_LVDS_Channel_List

+    Selection    0x00,    "Automatic Selection"

+    Selection    0x01,    "Single Channel"

+    Selection    0x02,    "Dual Channel"

+EndList

+

+List &LVDS_Config_List

+    Selection    0x00,    "No Device"

+    Selection    0x1020,  "LVDS"

+EndList

+

+List &eDP_Config_List

+    Selection    0x00,    "No Device"

+    Selection    0x1806,  "eDP"

+ ;   Selection    0x1400,    "MIPI"

+EndList

+

+List &eDP_LVDS_Config_List

+    Selection    0x00,    "No Device"

+    Selection    0x1020,  "LVDS"

+    Selection    0x1806,  "eDP"

+EndList

+

+

+List &No_Yes_List

+    Selection    0,    "No"

+    Selection    1,    "Yes"

+EndList

+

+List &Off_On_List

+    Selection    0,    "Off"

+    Selection    1,    "On"

+EndList

+

+List &OS_Driver_List

+    Selection    0,    "OS Default Algorithm"

+    Selection    1,    "Driver Algorithm"

+EndList

+

+List &OS_DriverP_List

+    Selection    0,    "OS Default Algorithm"

+    Selection    1,    "Driver Persistence Algorithm"

+EndList

+

+List &Panel_Color_Depth_List

+    Selection    0x00,    "18-bit Color Depth"

+    Selection    0x01,    "24-bit Color Depth"

+EndList

+

+List &eDP_Panel_Color_Depth_List

+    Selection    0x00,    "18-bit Color Depth"

+    Selection    0x01,    "24-bit Color Depth"

+    Selection    0x02,    "30-bit Color Depth"

+EndList

+

+List &eDP_Vswing_Preemph_table_List

+    Selection    0x00,    "Low power Swing Setting"

+    Selection    0x01,    "Default Swing Setting"

+EndList

+

+List &eDP_Link_DataRate_List

+    Selection    0x00,    "1.62 Gbps"

+    Selection    0x01,    "2.70 Gbps"

+EndList

+

+List &eDP_Link_LaneCount_List

+    Selection    0x00,    "x1"

+    Selection    0x01,    "x2"

+    Selection    0x03,    "x4"

+EndList

+

+List &eDP_Link_PreEmp_List

+    Selection    0x00,    "Level 0"

+    Selection    0x01,    "Level 1"

+    Selection    0x02,    "Level 2"

+    Selection    0x03,    "Level 3"    

+EndList

+

+List &eDP_Link_VSwing_List

+    Selection    0x00,    "Level 0"

+    Selection    0x01,    "Level 1"

+    Selection    0x02,    "Level 2"

+    Selection    0x03,    "Level 3"    

+EndList

+      

+

+List &Panel_Connector_List

+    Selection    0x00,    "SPGW"

+    Selection    0x01,    "OpenLDI"

+EndList

+

+List &Panel_List

+    Selection    0x00,    "PANEL #01"

+    Selection    0x01,    "PANEL #02"

+    Selection    0x02,    "PANEL #03"

+    Selection    0x03,    "PANEL #04"

+    Selection    0x04,    "PANEL #05"

+    Selection    0x05,    "PANEL #06"

+    Selection    0x06,    "PANEL #07"

+    Selection    0x07,    "PANEL #08"

+    Selection    0x08,    "PANEL #09"

+    Selection    0x09,    "PANEL #10"

+    Selection    0x0A,    "PANEL #11"

+    Selection    0x0B,    "PANEL #12"

+    Selection    0x0C,    "PANEL #13"

+    Selection    0x0D,    "PANEL #14"

+    Selection    0x0E,    "PANEL #15"

+    Selection    0x0F,    "PANEL #16"

+EndList

+

+

+List &Panel_Stretch_List

+    Selection    0x00,    "Disable Panel Fitting"

+    Selection    0x01,    "Enabled for Text Modes Only"

+    Selection    0x02,    "Enabled for Graphics Modes Only"

+    Selection    0x03,    "Enabled for Both Text and Graphics Modes"

+EndList

+

+List &PCI_BIOS_Disabled_Enabled_List

+    Selection    0x00,    "Disabled"

+    Selection    0x01,    "Resize to 0.5K boundary"

+    Selection    0x20,    "Resize to 16K boundary"

+EndList

+

+List &RelStage

+    Selection    1,    "Production"

+    Selection    254,    "Evaluation"

+EndList

+

+List &Power_Scheme_List

+    Selection    0,    "CUI"

+    Selection    1,    "3rd Party Application"

+EndList

+

+List &Render_Freq_List

+    Selection    0,    "High Frequency"

+    Selection    1,    "Low Frequency"

+EndList

+

+List &SSC_List

+    Selection    0,    "96 MHz"

+    Selection    1,    "100 MHz"

+EndList

+

+List &SDVO_Panel_List

+    Selection    0x00,    "PANEL #01"

+    Selection    0x01,    "PANEL #02"

+    Selection    0x02,    "PANEL #03"

+    Selection    0x03,    "PANEL #04"

+EndList

+

+List &Yes_No_List

+    Selection    0,    "Yes"

+    Selection    1,    "No"

+EndList

+

+List &Sprite_Display_List

+    Selection    0,    "Secondary Display"

+    Selection    1,    "Primary Display"

+EndList

+

+List &Under_Over_List

+    Selection    0x0,    "Enable Underscan and Overscan modes"

+    Selection    0x1,    "Enable only overscan modes"

+    Selection    0x2,    "Enable only underscan modes"

+EndList

+

+List &Inter_Exter_List

+    Selection    0,    "External Termination"

+    Selection    1,    "Internal Termination"

+EndList

+

+List &DPS_Panel_Type_List

+        Selection       0x00,    "Static DRRS"

+        Selection       0x02,    "Seamless"

+EndList

+

+List &MSA_TimingDelay_List

+        Selection       0x00,    "Line 1"

+        Selection       0x01,    "Line 2"

+        Selection       0x02,    "Line 3"

+    Selection    0x03,     "Line 4"

+EndList

+

+List &Blt_Control_Type_List

+        ;Selection       0x00,    "Default"

+        Selection       0x01,    "CCFL Backlight"

+        Selection       0x02,    "LED Backlight"

+EndList

+

+

+List &Mode_Preferred_List

+        Selection       0x00,    "Mode Timing"

+        Selection       0x01,    "Preferred Timing"

+EndList

+

+List &DisplayList

+  Selection       0x08, "LFP"

+;  Selection       0x80, "LFP 2"

+  Selection       0x01, "CRT"

+  Selection       0x04, "EFP 1"

+  Selection       0x40, "EFP 2"

+;  Selection       0x20, "EFP 3"

+  Selection       0x00, "None"        

+EndList

+

+List &Dither_Select_Bit

+    Selection 0,  "Dithering in Panel controller"

+    Selection 1,  "Dithering in Display Controller"

+EndList

+

+List &MIPI_Bridge_Ref_Clock_List

+    Selection 0,  "19.2"

+    Selection 1,  "26"

+EndList

+

+List &Panel_Identifier_List

+	Selection 0x0,  "Use Sequence Block"

+	Selection 0x1,  "MIPI DSI Panel-1"

+	Selection 0x2,  "MIPI DSI Panel-2"

+	Selection 0x3,  "MIPI DSI Panel-3"

+	Selection 0x4,  "MIPI DSI Panel-4"

+	Selection 0x5,  "MIPI DSI Panel-5"

+	Selection 0x6,  "MIPI DSI Panel-6"

+	Selection 0x7,  "MIPI DSI Panel-7"

+	Selection 0x8,  "MIPI DSI Panel-8"

+	;Selection 0x9,  "MIPI DSI Panel-9"

+	;Selection 0xA,  "MIPI DSI Panel-10"

+	;Selection 0xB,  "MIPI DSI Panel-11"

+	;Selection 0xC,  "MIPI DSI Panel-12"	

+	;Selection 0xD,  "MIPI DSI Panel-13"

+	;Selection 0xE,  "MIPI DSI Panel-14"

+	;Selection 0xF,  "MIPI DSI Panel-15"

+	;Selection 0x10, "MIPI DSI Panel-16"

+EndList

+

+List &Panel_Type_List

+	Selection 0,  "Native MIPI DSI"

+	Selection 1,  "MIPI DSI to LVDS Bridge"

+EndList

+

+List &MIPI_DSI_Panel_Architecture_Type_List

+	Selection 0x0,  "Type 1"

+	Selection 0x1,	"Type 2"

+	Selection 0x2,	"Type 3"

+	Selection 0x3,	"Type 4"

+EndList

+

+List &Video_Command_Mode_List

+	Selection 0,  "Video Mode"

+	Selection 1,  "Command Mode"

+EndList

+

+List &Packet_Sequence_Video_Mode_List

+	;Selection 0x0, "Reserved"

+	Selection 0x1,  "Non-burst with sync pulse"

+	Selection 0x2,  "Non-burst with sync events"

+	Selection 0x3,  "Burst Mode"

+EndList

+

+List &Colour_Format_Video_Mode_List

+	Selection 0x1,  "RGB565"

+	Selection 0x2,  "RGB666"

+	Selection 0x3,  "RGB 666(Loosely Packed Format)"  

+	Selection 0x4,  "RGB888"

+EndList  

+

+List &Panel_Rotation_List

+	Selection 0x0,  "0 degree"

+	Selection 0x1,  "90 degree"

+	Selection 0x2,  "180 degree"

+	Selection 0x3,  "270 degree"

+EndList

+

+List &Enable_Disable_List

+	Selection 0,  "Enable"

+	Selection 1,  "Disable"

+EndList

+

+List &EscapeClk_List

+	Selection 0x0,  "20 MHz"

+	Selection 0x1,	"10 MHz"

+	Selection 0x2,	"5 MHz"

+	;Selection 0x3, "Undefined"

+EndList

+

+List &DPhyParamFlag_List

+	Selection 0,  "Dphy Param is not valid"

+	Selection 1,  "Dphy Param is valid"

+EndList

+

+List &MIPI_DSI_Panel_Color_Depth_List

+	Selection 0x0,  "18Bpp"

+	Selection 0x1,	"24Bpp"

+EndList

+

+List &Lane_Count_List

+	Selection 0x0,	"1"

+	Selection 0x1,	"2"

+	Selection 0x2,	"3"

+	Selection 0x3,  "4"

+EndList

+

+List &Dual_Link_List

+	Selection 0x0,  "Dual Link Not Supported"

+	Selection 0x1,  "Dual Link Front Back Mode"

+	Selection 0x2,  "Dual Link Pixel Alternative Mode"

+	;Selection 0x3,  "Reserved"

+EndList

+

+List &Hdmi_LS_List_VLV

+  Selection	0x00,	"1000mV -2.0dB"

+  Selection     0x01,	"1000mV 0.0dB"

+  Selection	0x02,	"800mV 0.0dB"

+  Selection	0x03,	"600mV 2.0dB"

+  Selection	0x04,	"600mV 0.0dB"

+EndList

+

+List &Edp_Pwm_Source_List

+  Selection 0x1,  "LPSS PWM"

+  Selection 0x2,  "DISPLAY PWM"

+EndList

+

+;==============================================================================

+; Page Definitions

+;------------------------------------------------------------------------------

+

+BeginInfoBlock

+    PPVer    "2.01"

+    Image EOF Thru EOF At EOF

+EndInfoBlock

+

+

+;==============================================================================

+; Page - VBT version

+;------------------------------------------------------------------------------

+

+Page "VBT version"

+

+  Title   "PLATFORM : Valleyview"

+  Title   "VBT version: 191"        

+

+EndPage		; VBT version

+

+

+

+;==============================================================================

+; Page - UEFI GOP Driver Configuration

+;------------------------------------------------------------------------------

+

+Page "UEFI GOP Driver Configuration"

+

+    ;Combo	$Hotplug_Support_Enb, " Hot Plug Support:", &Disabled_Enabled_List,

+    ;Help	"This feature is to enable/disable Hot Plug Suppport for CRT/DP/HDMI displays "

+

+  Title   "Child Device Configuration"    

+  Link    "Child Device List", "Child Device List"

+

+Title   "Fixed Mode"    

+Link    "Fixed Mode Feature", "Fixed Mode Feature"

+

+    ;==============================================================================

+    ; Page - Boot Display Algorithm

+    ;------------------------------------------------------------------------------

+

+  Page "Child Device List"

+    

+    Title   "Select the child devices that the GOP driver should enumerate if detected." 

+    Title   "Note: The child devices are listed here in decreasing order of priority. In case the system BIOS does not specify "

+    "the child device to start, then GOP driver selects the highest priority child device" 

+    

+    Link	"Close Window", ".."

+	

+    Title   "Child Device 1"

+    Combo   $ChildDevice1Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice1Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+	

+    Title   " "

+    Title   "Child Device 2"

+    Combo   $ChildDevice2Primary, " Primary display:"  , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice2Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 3"

+    Combo   $ChildDevice3Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice3Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 4"

+    Combo   $ChildDevice4Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice4Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 5"

+    Combo   $ChildDevice5Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice5Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 6"

+    Combo   $ChildDevice6Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice6Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+	

+    Title   " "

+    Title   "Child Device 7"

+    Combo   $ChildDevice7Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice7Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 8"

+    Combo   $ChildDevice8Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice8Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 9"

+    Combo   $ChildDevice9Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice9Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 10"

+    Combo   $ChildDevice10Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice10Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 11"

+    Combo   $ChildDevice11Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice11Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 12"

+    Combo   $ChildDevice12Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice12Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 13"

+    Combo   $ChildDevice13Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice13Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 14"

+    Combo   $ChildDevice14Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice14Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 15"

+    Combo   $ChildDevice15Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice15Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+    

+    Title   " "

+    Title   "Child Device 16"

+    Combo   $ChildDevice16Primary, " Primary display:" , &DisplayList,

+    Help    "Primary Display\r\n"

+    Combo   $ChildDevice16Secondary, " Secondary display: " , &DisplayList,

+    Help    "Secondary Display\r\n"

+  EndPage    ;"Child Device List"

+

+;============================================================================

+; Page - Fixed Mode Configuration

+;----------------------------------------------------------------------------

+

+Page    "Fixed Mode Feature"

+        Link    "Close Table", ".."

+          Combo   $Feature_Enable, "Enable Feature:",  &No_Yes_List,

+        Help    "Fixed Mode Feature allows user to fix a mode during POST such that only that particular mode will be always set.\r\n"

+"This field specifies if user wants to enable/disable the feature.\r\n"

+"When enabled user is expected to provide a valid input."

+

+        EditNum $X_res, "Horizontal Pixels:", DEC,

+        Help    "This value specifies the horizontal pixels of the mode. It should be always less than or equal to the native horizontal resolution.\r\n"

+

+        EditNum $Y_res, "Vertical Pixels:", DEC,

+        Help    "This value specifies the vertical pixels of the mode. It should be always less than or equal to the native vertical resolution.\r\n"

+	 

+EndPage

+EndPage    ; "UEFI GOP Driver Configuration"

+

+

+;============================================================================

+; Page - Windows Graphics Driver Configuration

+;----------------------------------------------------------------------------

+

+Page "Windows Graphics Driver Configuration"

+

+    Link "General Features" , "General Features"

+    Link "Display Features" , "Display Features"

+    Link "Power Conservation" , "Power Conservation"

+

+    Page    "General Features"

+        Link    "Close Table" , ".."

+

+    EditNum    $VBT_Customization_Version, "  VBT Customization Version:", DEC,

+    Help    "This feature allows the OEM to have a customized VBT version "

+        "number. The permissible values for VBT Customization version "

+        "is from 0 to 255.\r\n"

+        

+    Combo    $Driver_Boot_Device, "  First Boot Display Device:", &OS_Driver_List,

+    Help    "This feature allows the OEM to select which algorithm to "

+        "follow on the first boot after the driver has been "

+        "installed.\r\n"

+        "\r\n"

+        "OS Default - If this is selected, the operating system's "

+        "algorithm will be used.\r\n"

+        "\r\n"

+        "Driver Default - If this is selected, the boot device will "

+        "follow the driver algorithm.  The expected behavior can be "

+        "found in the Driver PRD chapter:  'First Boot Default "

+        "Display Resolutions'."

+

+     ;Combo    $Allow_FDOS_Disp_Switch, "  Allow Full Screen DOS Display Switching:", &No_Yes_List,

+     ;Help    "This feature allows display switching when the system is in "

+     ;   "full screen DOS.  When set to yes, display switching will be "

+      ;  "allowed while system is in full screen DOS.  When set to no, "

+       ; "display switching will be blocked when system is in full "

+        ;"screen DOS."

+

+    ;Combo    $Hot_Plug_DVO, "  DVO/SDVO Hot Plug:", &Disabled_Enabled_List,

+    ;Help    "This feature allows the OEM to disable the DVO/SDVO Hot Plug "

+    ;    "capability."

+

+    Combo    $Hot_Plug_CRT, "  CRT Hot Plug:", &Disabled_Enabled_List,

+    Help    "This feature allows the OEM to disable the CRT Hot Plug "

+        "capability. This is applicalbe only for driver hotplug in driver environment and not DOS (VBIOS mode)"

+

+    Combo    $Use_110h_for_LFP, "  Use _DOD 00000110h ID for Primary LFP:", &No_Yes_List,

+    Help    "This feature when set to yes will use the legacy value "

+        "00000110h as the ID for primary LFP in the ACPI _DOD, _DGS "

+        "method.  The ID is passed to the system BIOS through INT10h function 5F64h  "

+        "The ID 00000110h is the backwards compatible ACPI ID "

+        "for LFP, which may be necessary in where Microsoft* WindowsXP "

+        "TabletPC*'s Graphical User Interface is required for Backlight "

+        "Control(hardcoded by some Windows OSes). In all other cases, "

+        "the default new ID is strongly preferred."

+      

+

+    ;Combo    $DVD_Sprite_Clone, "  Disable Sprite (DVD) in Clone Mode:", &Yes_No_List,

+    ;Help    "This feature when selected 'No', will allow the sprite to be "

+       ; "active during DVD playback when the platform is in a Dual "

+       ; "Display Clone configuration.  Otherwise, when selected 'Yes', "

+       ; "the overlay sprite will be disabled during DVD playback when the "

+       ; "platform is in a Dual Display Clone configuration."

+

+    Combo    $GTF_Mode_Pruning, "  Selective Mode Pruning:", &Disabled_Enabled_List,

+    Help    "This feature when enabled will instruct driver software not "

+        "to enumerate or set specific display modes determined as "

+        "unsupported according to the EDID capabilities of the "

+        "display. If the display indicates support for all GTF/DMTS "

+        "timings in the display's EDID, then all modes supported by "

+        "the graphics host will be enumerated.  If the display does "

+        "NOT indicate support for GTF/DMTS timings in the display's "

+        "EDID, then some modes/timings that may have been enumerated "

+        "by the display driver shall not be set."

+        "\r\n"

+        "\r\n"

+        "Note: This option applies for all display types.  And in the "

+        "absence of other platform configuration information (e.g. "

+        "OEM Customizable Mode) requiring inclusion of that display "

+        "mode/timings."

+

+    ;Combo    $Sprite_Display_Assign, "  Sprite Display Assignment for When Overlay is Active in Clone Mode:", &Sprite_Display_List,

+    ;Help    "This feature when set to Primary Display, the driver will "

+     ;   "assign the Sprite (2ndary overlay) to the primary display "

+      ;  "defined in the current Dual Display Clone configuration, "

+       ; "otherwise when this feature is set to Secondary Display, the "

+        ;"driver will assign the Sprite (2ndary overlay) to the "

+        ;"secondary display defined in the current Dual Display Clone "

+        ;"configuration. Note:  This bit will have no affect if an "

+        ;"application is using the VMR API. "

+

+

+        

+    Combo    $CUIHotK_Static_Display, "  Display must be attached for CUI/Hot Key:", &Yes_No_List,

+    Help    "This feature allows a selectable option to determine whether "

+        "the display device must be attached for CUI Hot Key.\r\n"

+        "\r\n"

+        "With the 'No' option the display devices do not have to be "

+        "attached when enabling the displays via CUI Devices Pages, "

+        "CUI Hot Key.  Note: This feature may cause the user to have "

+        "a blank display device due to switching to a display that is "

+        "not attached.\r\n"

+        "\r\n"

+        "With the 'Yes' option the display device must be attached or "

+        "the display switch attempt will be blocked."

+    EndPage

+

+    Page    "Display Features"

+        Link    "Close Table" , ".."

+

+     Combo    $CUI_Maintain_Aspect, "  Enable 'Maintain Aspect Ratio':", &No_Yes_List,

+    Help    "This feature allows the OEM to enable or disable the 'Maintain "

+        "Aspect Ratio' feature.  When the option is set to Yes, the "

+        "feature will be enabled and CUI will show for end user "

+        "selection 'Maintain Aspect Ratio'.  When the option is set to "

+        "No, the complete 'Maintain Aspect Ratio' feature will be disabled."

+

+    Combo    $Preserve_Aspect_Ratio, "  Preserve Aspect Ratio:", &Disabled_Enabled_List,

+    Help    "This feature allows the OEM to configure the default option "

+        "for aspect ratio settings. When enabled, the CUI will reflect "

+        "preserve the aspect ratio as active setting.  Otherwise, when "

+        "disabled, the CUI will use the setting 'Panel Fitting Initial "

+        "States' as default aspect ratio setting.  This option will "

+        "only be available for initial boot value. Any subsequent "

+        "change in CUI will have higher priority."

+      

+    Title      "    "

+    TitleB      "Legacy Monitor Mode Limit"

+

+    EditNum    $Legacy_Monitor_Max_X, "  Maximum X Resolution (Pixels):", DEC,

+    Help    "This feature allows the limiting of selectable display modes "

+        "when a legacy monitor is detected.  The maximum resolution is "

+        "specified by a maximum number of horizontal active pixels."

+        "\r\n"

+        "Note: A legacy monitor is defined as a monitor with no DDC "

+        "available."

+

+    EditNum    $Legacy_Monitor_Max_Y, "  Maximum Y Resolution (Pixels):", DEC,

+    Help    "This feature allows the limiting of selectable display modes "

+        "when a legacy monitor is detected.  The maximum resolution is "

+        "specified by a maximum number of vertical active pixels."

+        "\r\n"

+        "Note: A legacy monitor is defined as a monitor with no DDC "

+        "available."

+

+    EditNum    $Legacy_Monitor_Max_RR, "  Maximum Refresh Rate (Hz):", DEC,

+    Help    "This feature allows the limiting of selectable display modes "

+        "when a legacy monitor is detected.  The maximum refresh rate "

+        "is specified in Hz."

+        "\r\n"

+        "Note: A legacy monitor is defined as a monitor with no DDC "

+        "available."

+

+		

+	Title      "    "

+    TitleB      "Rotation Support Configuration"

+    

+	

+    Combo    $Rotation_Support_Enable, "Support Rotation Feature:", &No_Yes_List,

+    Help    "This feature when set to yes, can cause the graphics driver to "

+			"support rotation feature, otherwise rotation feature support "

+			"will be disabled."

+			"\r\n"

+			"Note: Setting this field to Yes is a necessary condition for driver to " 

+			"support rotation feature, but it is not sufficient."

+			

+		

+    Title      "    "

+    TitleB      "Graphics Mode to Boot on Windows"

+	

+	

+    EditNum    $Driver_Boot_Mode_X, "  X Resolution (Pixels):", DEC,

+    Help    "This feature allows the OEM to select which resolution the "

+        "system will use on the first reboot after the driver has "

+        "been installed.\r\n"

+        "\r\n"

+        "X Resolution (Pixels)\r\n"

+        "\r\n"

+        "Note: This feature is only used when the Boot Display "

+        "Algorithm is set to Driver Default."

+

+    EditNum    $Driver_Boot_Mode_Y, "  Y Resolution (Pixels):", DEC,

+    Help    "This feature allows the OEM to select which resolution the "

+        "system will use on the first reboot after the driver has "

+        "been installed.\r\n"

+        "\r\n"

+        "Y Resolution (Pixels)\r\n"

+        "\r\n"

+        "Note: This feature is only used when the Boot Display "

+        "Algorithm is set to Driver Default."

+

+    EditNum    $Driver_Boot_Mode_BPP, "  Color Depth (Bits/Pixel):", DEC,

+    Help    "This feature allows the OEM to select which resolution the "

+        "system will use on the first reboot after the driver has "

+        "been installed.\r\n"

+        "\r\n"

+        "Color Depth (BPP)\r\n"

+        "\r\n"

+        "Note: This feature is only used when the Boot Display "

+        "Algorithm is set to Driver Default."

+

+    EditNum    $Driver_Boot_Mode_RR, "  Refresh Rate (Hz):", DEC,

+    Help    "This feature allows the OEM to select which resolution the "

+        "system will use on the first reboot after the driver has "

+        "been installed.\r\n"

+        "\r\n"

+        "Refresh Rate (Hz)\r\n"

+        "\r\n"

+        "Note: This feature is only used when the Boot Display "

+        "Algorithm is set to Driver Default."

+Title      "     "

+TitleB      "TV features"

+

+    Combo	$Under_Over_Scan_Via_DVI, "  Enable underscanned modes for HDTV via HDMI:", &Under_Over_List,

+    Help	"When 720p is found in the EDID structure of the active HDMI "

+    "display and enable underscan modes is selected, 1184x666 will "

+    "be available and be centered in 720p timings when enabled. "

+    "\r\n"

+    "When 1080i or 1080p is found in the EDID structure of the "

+    "active DVI display and enable underscan modes is selected, "

+    "1776x1000 will be centered in appropriate 1080 timings. "

+

+    Title	"\r\n"

+    Title	"  Add 1776x1000 when 1080i is selected and add 1184x666 when 720p is selected for HDTV via HDMI:"

+    Combo	$Add_Overscan_Mode, " ", &Disabled_Enabled_List,

+    Help	"For 1080i format, 1776x1000 will be made available in CUI "

+    "along with native resolution 1920x1080.  For 720p format, "

+    "1184x666 will be made available in CUI along with native "

+    "resolution 1280x720. These resolutions are exposed to get the "

+    "HDMI image under scanned with task bar visible."

+  EndPage	; Display features

+

+

+    

+    

+    Page    "Power Conservation"

+        Link    "Close Table" , ".."

+    

+    ;Combo    $SDVO_Device_Power_Down, "  SDVO device power down:", &Disabled_Enabled_List,

+    ;Help    "This feature powers down the SDVO device when the system is "

+        "running in battery mode (DC) and the corresponding display "

+        "not connected."

+

+    Combo    $BIA_Enable, "  Intel � Display Power Saving Technology Support for the LFP:", &Disabled_Enabled_List,

+    Help    "This feature determines whether the Intel � Display Power "

+        "Savings Technology (DPST) is enabled or disabled.  Intel � DPST "

+        "is a display power savings technology that changes the "

+        "intensity of colors in order to conserve backlight power."

+        "\r\n\r\nNote: This technology is only active when the system "

+        "is running in battery mode and the LFP is the only active "

+        "display device."

+

+    Combo    $BIA_Aggress_Level, "  Power Conservation Preference Level for the LFP:", &Pwr_Pref_List,

+    Help    "This feature defines the Intel � Display Power Saving Technology "

+        "aggressiveness level if and only if the feature Intel � Display Power Saving "

+        "Technology is enabled."   

+        "\r\n\r\nThe following are the definitions for each level:"

+        "\r\n1 - Maximum Quality - shall use no DPST "

+        "\r\n2 - Provides  the user the maximum "

+        "brightness for their embedded Local Flat Panel (LFP)while DPST is in use"

+        "\r\n3 - This level defines maximum amount of brightness with "

+        "minimal power savings"

+        "\r\n4 - This level defines an intermediate value for brightness amount"

+        "\r\n5 - This level defines an intermediate value for the brightness amount"

+        "\r\n6 - Maximum Battery - Provided the user with the minimum amount of "

+        "brightness capable for their LFP with the maximum power savings"

+		

+	Combo	$Panel_Self_Refresh, "  Panel Self Refresh (PSR):", &Disabled_Enabled_List,

+    Help	"This feature determines whether Panel Self Refresh (PSR) feature is to be enabled. "

+	

+	Combo   $PM_DRRS_Enable, "  Intel � Display Refresh Rate Switching (DRRS):", &Disabled_Enabled_List,

+    Help	"This feature determines whether Intel � Display Refresh Rate Switching (DRRS) is to be "

+			"enabled or not. "

+

+    Combo    $ALS_Enable, "  Intel � Automatic Display Brightness Support for the LFP:", &Disabled_Enabled_List,

+    Help    "This feature determines whether Intel � Automatic Display Brightness is to be "

+        "enabled.  Intel � Automatic Display Brightness adjusts the brightness of the "

+        "embedded Local Flat Panel (LFP) depending on the current "

+        "ambient light environment.  When enabled, the driver and VBIOS"

+        " will control the backlight brightness of the LFP depending "

+        "on the ambient environment if and only if the LFP is the only "

+        "active display.  When disabled, the driver and VBIOS will "

+        "perform no action."

+

+    Combo $DMRRS, "  Dynamic Media Refresh Rate Switching (DMRRS):", &Disabled_Enabled_List,

+	Help	"This feature determines whether Dynamic Media Refresh Rate Switching feature is to be enabled. "

+

+    Link "Ambient Light Response Data" , "Ambient Light Response Data"

+

+        Page    "Ambient Light Response Data"

+            Link    "Close Table" , ".."

+

+            Table    $ALS_Response_Data " Ambient Light Response Data",

+            Column    "Backlight Adjust", 2 bytes, EHEX

+            Column    "Lux", 2 bytes, EHEX,

+            Help    "This feature defines values used to calibrate the "

+                "Intel � Automatic Display Brightness policy's "

+                "response to account for specific hardware implementation "

+                "details such as sensor placement and optics.  Up to five "

+                "points can be specified, where each point indicates a given "

+                "ambient light illuminance to display luminance mapping "

+                "specified as (<%BacklightAdjust>, <Lux>).  Points should be "

+                "listed in monotonically increasing order by ambient light "

+                "illuminance (lux).  A minimum of two points are required "

+                "(min and max)."

+        EndPage

+

+    EndPage

+ EndPage    

+;==============================================================================

+; Page - Display Configuration

+;------------------------------------------------------------------------------

+

+Page "Display Configuration"

+

+    Link "LFP" , "LFP"

+    Link "CRT" , "CRT"

+    Link "EFP 1" , "EFP 1"

+    Link "EFP 2" , "EFP 2"

+	

+	TitleB "DisplayPort SSC configuration: " 

+    Combo	$DP_SSC_Enb, " DisplayPort (External Connectors) Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature allow OEMs to enable/disable SSC for external DisplayPort.  "

+    "This feature is valid only the attached DisplayPort panel support SSC. "

+    "\r\n"

+

+    Combo	$DP_SSC_Dongle_Enb, " DisplayPort Spread Spectrum Clock Enable/Disable for Dongles:", &Disabled_Enabled_List,

+    Help "This feature is to enable or disable DisplayPort Dongle Spread Spectrum Clock when dongle are used "

+    "and the attached DisplayPort panel should support SSC\r\n"

+

+	

+    Page    "LFP"

+        Link    "Close Table", ".."

+		

+        Combo    $Int_LFP1_Type , "Active Local Flat Panel Configuration", &eDP_Config_List,

+        Help    "This option select Device type. Save the configuration after selecting this field to see display related settings."

+

+       ; #IF	($Int_LFP1_Type == 0x1806)

+		Combo	$Int_LFP1_Port, "Select Output Port:", &LFP_Port_list,

+		Help	"This feature specifies which DVO port the device is "

+		;#ENDIF

+				

+		 Combo	$Int_LFP1_AUX_Channel, "Select AUX Channel:", &Int_eDP_AUX_Channel_List,

+		 Help	"This feature specifies the AUX Channel for int-DisplayPort. "

+			"This field is valid only if integrated DP is selected for Device Type."			

+			

+        ;Combo    $Int_LFP1_Priority, "Primary LFP panel: ", &Yes_No_List,

+        ;Help    "This feature will select if the panel is primary or not. "

+        ;        "The VLV platform has only one panel fitter. So, stretched mode will be only applicable "

+        ;        "to primary panel . In secondary panel only native mode or "

+        ;        "centering modes will be supported."

+		

+        Combo    $bmp_Panel_type, "Select Panel Type:", &Panel_List, 

+        Help    "This feature selects the Local Flat Panel (LFP) the VBIOS "

+                "and driver is to enable.\r\n" 

+                "\r\n"

+                "Note, a valid return from the system BIOS hook 5F40h will "

+                "replace this default value.\r\n"

+                "\r\n"

+                "Default LFP parameter values:\r\n"

+                "\tPANEL #01: 640x480 LVDS\r\n"

+                "\tPANEL #02: 800x600 LVDS\r\n"

+                "\tPANEL #03: 1024x768 LVDS\r\n"

+                "\tPANEL #04: 1280x1024 LVDS\r\n "

+                "\tPANEL #05: 1400x1050 Reduced Blanking LVDS\r\n"

+                "\tPANEL #06: 1400x1050 Non-Reduced Blanking LVDS\r\n"

+                "\tPANEL #07: 1600x1200 LVDS\r\n"

+                "\tPANEL #08: 1280x768 LVDS\r\n"

+                "\tPANEL #09: 1680x1050 LVDS\r\n"

+                "\tPANEL #10: 1920x1200 LVDS\r\n"

+                "\tPANEL #11: Reserved\r\n"

+                "\tPANEL #12: Reserved\r\n "

+                "\tPANEL #13: Reserved\r\n"

+                "\tPANEL #14: 1280x800 LVDS\r\n"

+                "\tPANEL #15: 1280x600 LVDS\r\n"

+                "\tPANEL #16: Reserved"      

+				

+        Combo   $bmp_Panel_EDID, "Local Flat Panel (LFP) EDID Support: ", &Disabled_Enabled_List,

+        Help    "This feature, when enabled, will activate support for a LFP "

+                "with an EDID.  The video BIOS and drivers will load the EDID "

+                "and use its data to set appropriate timing on current panel.  "

+                "If disabled, there will be no attempt to read an EDID and other methods "

+                "will be used to set panel timing."

+                "\r\n\r\nNote:  The backlight data may need to be updated." 

+                "\r\n       The <LFP DDC GPIO pin pair> option on page General"

+                " Features must be correct for platform."

+		

+		Combo    $180_Deg_Rotation_Enable, "Enable 180 Degree Rotation:", &No_Yes_List,

+		Help    "This feature when set to yes, will enable 180 Degree rotation  "

+				"otherwise, the rotation functionality will be disabled."

+		

+		Combo	$Enable_Correction, "Gamma/Brightness/Contrast Correction Enable:", &Disabled_Enabled_List,

+		Help	"This option will allow users to disable/enable Gamma/Brightness/Contrast correction feature for eDP. By default it will be disabled.\r\n"

+				"On enabling one can find option for entering values for Red/Blue/Green Palette Table under LFP Panel configuration.\r\n"

+				"Each Red/Blue/Green Palette Table has 256 entries/rows of 1-byte each. Enter required values in these fields.\r\n"

+				

+    EndPage  

+	

+	

+

+    Page "CRT"

+        Link    "Close Window" , ".."

+

+        Combo    $Int_CRT_Support, "CRT Device:", &Int_CRT_Device_Type_List,

+        Help    "This option select CRT Device."

+

+		Combo	$CRT_DDC_GMBUS_Pin, "Select DDC Bus GPIO Pin Pair:", &GPIO_Pin_List,

+		Help	"This feature specifies the GPIO pin pair "

+			"used as DDC bus by this device.  If this device "

+			"doesn't support DDC bus, this field will be ignored."

+

+    EndPage

+

+    Page "EFP 1"

+        Link    "Close Window" , ".."

+

+        Combo    $Int_EFP1_Type, "Device Type", &Int_EFP_Device_Type_List,

+        Help    "This option specifies the Device Type."

+

+		Combo	$Int_EFP1_Port, "Select Output Port:", &Int_EFP_Port_List,

+		Help	"This feature specifies which DVO port the device is "

+

+		Combo	$Int_EFP1_DDC_Pin, "Select DDC Bus GPIO Pin Pair:", &GPIO_Pin_List,

+		Help	"This feature specifies the GPIO pin pair "

+			"used as DDC bus by this device.  If this device "

+			"doesn't support DDC bus, this field will be ignored."

+		

+		Combo	$Int_EFP1_AUX_Channel, "Select AUX Channel:", &Int_DP_AUX_Channel_List,

+		 Help	"This feature specifies the AUX Channel for int-DisplayPort. "

+		        "This field is valid only if integrated DP is selected for Device Type."	

+		

+        Combo	$Int_EFP1_HDMI_LS_Type, "Select HDMI level shifter configuration:", &Hdmi_LS_List_VLV,

+		Help	"This feature specifies the Level shifter configuration for HDMI. "

+				"This field is valid only if HDMI is selected for Device Type."

+				

+		;Combo    $Int_EFP1_Dongle_Detect, "Select Dongle Detect:", &Disabled_Enabled_List,

+        ;Help    "This option Enables/Disables detection of type of dongle connected to DP port.\r\n"

+        ;       "This option is used only by the GFX driver."

+

+	    Combo	$Int_EFP1_Docked_Port, "Dockable: ", &No_Yes_List,

+		Help	"This field describes if the Display Port is routed through Dock or not."	

+		

+		Link "DisplayPort Redriver Configuration" , "DisplayPort Redriver Configuration"

+		

+		Page	"DisplayPort Redriver Configuration"

+

+			Combo	$EFP1_OnBoard_Redriver_Present, "Non-dock topology:", &No_Yes_List,

+			Help	"This feature will describe if Non-dock topology/OnBoard Redriver DP Link is present or not."

+

+			Combo	$EFP1_OnBoard_PreEmph_Level, "  Pre-Emphasis Level:", &eDP_Link_PreEmp_List,

+			Help	"This feature allows for the selection of "

+					"Pre-emphasis level for the OnBoard redriver DP link.\n"

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+ 

+			Combo	$EFP1_OnBoard_VSwing_Level, "  Voltage Swing Level:", &eDP_Link_VSwing_List,

+			Help	"This feature allows for the selection of "

+					"Voltage Swing level for the OnBoard redriver DP link.\n"

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+					

+			Title	"	"

+

+			Combo	$EFP1_OnDock_Redriver_Present, "Dock Topology: (Mobile only)", &No_Yes_List,

+			Help	"This feature will describe if Dock Topology/Dock Redriver DP Link is present or not.\r\n\r\n"

+					"Note: For Dock Topology to work SBIOS should implement a GOP Policy Protocol to provide the"

+					" docking status of the platform to GOP.\n"

+					

+			Combo	$EFP1_OnDock_PreEmph_Level, "  Pre-Emphasis Level:", &eDP_Link_PreEmp_List,

+			Help	"This feature allows for the selection of "

+					"Pre-emphasis level for the Dock redriver DP link."

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+			Combo	$EFP1_OnDock_VSwing_Level, "  Voltage Swing Level:", &eDP_Link_VSwing_List,

+			Help	"This feature allows for the selection of "

+					"Voltage Swing level for the Dock redriver DP link."

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+		EndPage		; "DisplayPort Redriver Configuration"

+				

+    EndPage

+

+    

+    Page "EFP 2"

+        Link    "Close Window" , ".."

+

+        Combo    $Int_EFP2_Type, "Device Type:", &Int_EFP_Device_Type_List,

+        Help    "This option specifies the Device Type."

+

+		Combo	$Int_EFP2_Port, "Select Output Port:", &Int_EFP_Port_List,

+		Help	"This feature specifies which DVO port the device is "

+		

+		Combo	$Int_EFP2_DDC_Pin, "Select DDC Bus GPIO Pin Pair:", &GPIO_Pin_List,

+		Help	"This feature specifies the GPIO pin pair "

+			"used as DDC bus by this device.  If this device "

+			"doesn't support DDC bus, this field will be ignored."

+		

+		 Combo	$Int_EFP2_AUX_Channel, "Select AUX Channel:", &Int_DP_AUX_Channel_List,

+		 Help	"This feature specifies the AUX Channel for int-DisplayPort. "

+		        "This field is valid only if integrated DP is selected for Device Type."	

+

+        Combo	$Int_EFP2_HDMI_LS_Type, "Select HDMI level shifter configuration:", &Hdmi_LS_List_VLV,

+		Help	"This feature specifies the Level shifter configuration for HDMI. "

+				"This field is valid only if HDMI is selected for Device Type."

+        

+        ;Combo    $Int_EFP2_Dongle_Detect, "Select Dongle Detect:", &Disabled_Enabled_List,

+        ;Help    "This option Enables/Disables detection of type of dongle connected to DP port.\r\n"

+               ; "This option is used only by the GFX driver."

+			   

+	    Combo	$Int_EFP2_Docked_Port, "Dockable: ", &No_Yes_List,

+		Help	"This field describes if the Display Port is routed through Dock or not."	

+		

+		Link "DisplayPort Redriver Configuration" , "DisplayPort Redriver Configuration"

+		

+		Page	"DisplayPort Redriver Configuration"

+

+			Combo	$EFP2_OnBoard_Redriver_Present, "Non-dock topology:", &No_Yes_List,

+			Help	"This feature will describe if Non-dock topology/OnBoard Redriver DP Link is present or not."

+

+			Combo	$EFP2_OnBoard_PreEmph_Level, "  Pre-Emphasis Level:", &eDP_Link_PreEmp_List,

+			Help	"This feature allows for the selection of "

+					"Pre-emphasis level for the OnBoard redriver DP link.\n"

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+ 

+			Combo	$EFP2_OnBoard_VSwing_Level, "  Voltage Swing Level:", &eDP_Link_VSwing_List,

+			Help	"This feature allows for the selection of "

+					"Voltage Swing level for the OnBoard redriver DP link.\n"

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+					

+			Title	"	"

+

+			Combo	$EFP2_OnDock_Redriver_Present, "Dock Topology: (Mobile only)", &No_Yes_List,

+			Help	"This feature will describe if Dock Topology/Dock Redriver DP Link is present or not.\r\n\r\n"

+					"Note: For Dock Topology to work SBIOS should implement a GOP Policy Protocol to provide the"

+					" docking status of the platform to GOP.\n"

+

+			Combo	$EFP2_OnDock_PreEmph_Level, "  Pre-Emphasis Level:", &eDP_Link_PreEmp_List,

+			Help	"This feature allows for the selection of "

+					"Pre-emphasis level for the Dock redriver DP link."

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+			Combo	$EFP2_OnDock_VSwing_Level, "  Voltage Swing Level:", &eDP_Link_VSwing_List,

+			Help	"This feature allows for the selection of "

+					"Voltage Swing level for the Dock redriver DP link."

+									"\r\n\n\t\t\tDefault Swing Setting Table\n"                 

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t        \t         |    \t\t PreEmphasis Levels\t\t            |\n"

+				"\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\n "

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV      |\n"

+				"\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV      |         N/A           |\n"

+				"\t| Level 2(800mV) |     800mV       |     1200mV          |        N/A          |         N/A           |\n"

+				"\t| Level 3(1200mV) |     1200mV       |      N/A              |        N/A           |        N/A           |\n"

+				"\t---------------------------------------------------------------------------------------------------\n"

+				"\tColumn - Non-Transition VDiff \r\n"

+				"\tRow - Transition VDiff \r\n"

+

+		EndPage		; "DisplayPort Redriver Configuration"

+				

+    EndPage

+    

+    

+EndPage

+

+

+;============================================================================

+; Page - LFP Panel configuration

+;----------------------------------------------------------------------------

+Page "LFP Panel configuration"

+    Link "Panel #1 ", "Panel #1 "

+    Link "Panel #2 ", "Panel #2 "

+    Link "Panel #3 ", "Panel #3 "

+    Link "Panel #4 ", "Panel #4 "

+    Link "Panel #5 ", "Panel #5 "

+    Link "Panel #6 ", "Panel #6 "

+    Link "Panel #7 ", "Panel #7 "

+    Link "Panel #8 ", "Panel #8 "

+    Link "Panel #9 ", "Panel #9 "

+    Link "Panel #10 ", "Panel #10 "

+    Link "Panel #11 ", "Panel #11 "

+    Link "Panel #12 ", "Panel #12 "

+    Link "Panel #13 ", "Panel #13 "

+    Link "Panel #14 ", "Panel #14 "

+    Link "Panel #15 ", "Panel #15 "

+    Link "Panel #16 ", "Panel #16 "

+#if($Enable_Correction == 1)

+	Link "RGB Palette Table ", "RGB Palette Table "

+#endif	

+

+;==============================================================================

+; Page - Panel #1 (640x480) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #1 "

+

+    TitleB  "Common LFP Features" 

+	

+	EditText   $Panel_Name_01, "\tLFP Panel Name:", 

+	Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_01, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_01, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_01, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+

+    Combo    $DPS_Panel_Type_01, "\tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_01, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+

+    Combo    $Blt_Control_01, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+	

+	Combo	$Enable_SSC01, "\teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_01, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+     

+	Combo    $eDP_VswingPreEmph_1, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_01, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+				

+		EditNum    $eDP_Vcc_To_Hpd_Delay_01, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_01, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_01, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_01, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_01, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_01, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_01, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_01, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."        

+        

+        Combo    $eDP_Link_DataRate_01, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_01, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_01, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-Emphasis Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+				         

+        Combo    $eDP_Link_Vswing_Level_01, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+				

+    EndPage

+	

+    #endif

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_01 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_01 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_1, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_01, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_1, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_1, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+		EditNum    $POST_BL_Brightness_01, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_1, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+

+    EndPage

+    

+	

+EndPage

+

+;==============================================================================

+; Page - Panel #2 (800x600) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #2 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_02, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_02, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_02, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_02, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_02, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_02, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_02, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+	

+    Combo	$Enable_SSC02, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_02, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_2, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+	Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_02, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_02, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_02, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_02, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_02, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_02, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_02, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_02, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+		

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_02, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_02, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_02, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_02, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+        Combo    $eDP_Link_Vswing_Level_02, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+    #endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_02 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_02 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_2, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_02, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_2, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_2, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+		EditNum    $POST_BL_Brightness_02, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_2, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+	

+

+EndPage

+

+

+;==============================================================================

+; Page - Panel #3 (1024x768 LVDS) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #3 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_03, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_03, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_03, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_03, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_03, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_03, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_03, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+		   

+			

+    #if ($Int_LFP1_Type == 0x1806)			

+    TitleB   "Integrated eDP Features"	

+			   

+    Combo	$Enable_SSC03, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+      

+

+	Combo    $eDP_Panel_Color_Depth_03, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_3, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+				   

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_03, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+		"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+		"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_03, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_03, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_03, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_03, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_03, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_03, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_03, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_03, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_03, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_03, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_03, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level value for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_03, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+    #endif

+

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_03 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_03 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_3, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_03, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_3, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_3, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_03, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_3, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+        EndPage

+		

+

+EndPage

+

+

+;==============================================================================

+; Page - Panel #4 (1280x1024 LVDS) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #4 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_04, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_04, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_04, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_04, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_04, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_04, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_04, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+

+

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+				   			   

+    Combo	$Enable_SSC04, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+

+	Combo    $eDP_Panel_Color_Depth_04, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_4, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+				   

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+		Combo	$eDP_T3_Optimization_04, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+            "When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+            "When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_04, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_04, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_04, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_04, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_04, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_04, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_04, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_04, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_04, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_04, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_04, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+        Combo    $eDP_Link_Vswing_Level_04, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+    #endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_04 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_04 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_4, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_04, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_4, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_4, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_04, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_4, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+	

+EndPage

+

+

+;==============================================================================

+; Page - Panel #5 (1400x1050 LVDS - Reduced Blank) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #5 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_05, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_05, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_05, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_05, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_05, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_05, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_05, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+    

+   

+    #if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+

+    Combo	$Enable_SSC05, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+        

+	

+

+	Combo    $eDP_Panel_Color_Depth_05, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_5, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+		Combo	$eDP_T3_Optimization_05, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_05, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_05, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_05, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_05, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_05, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_05, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_05, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_05, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_05, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_05, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_05, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_05, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+    #endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_05 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_05 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_5, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_05, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_5, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_5, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_05, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_5, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+	

+

+EndPage

+

+

+;==============================================================================

+; Page - Panel #6 (1400x1050) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #6 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_06, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_06, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_06, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_06, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_06, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_06, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_06, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+		   

+    Combo	$Enable_SSC06, "\teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+      

+	

+	Combo    $eDP_Panel_Color_Depth_06, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_6, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_06, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_06, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_06, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_06, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_06, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_06, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_06, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_06, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+   

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_06, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_06, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_06, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_06, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_06, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_06 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_06 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_6, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_06, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_6, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_6, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_06, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_6, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+	

+

+

+EndPage

+

+

+

+;==============================================================================

+; Page - Panel #7 (1600x1200) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #7 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_07, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_07, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_07, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_07, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_07, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_07, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_07, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+    

+	#if ($Int_LFP1_Type == 0x1806)

+	TitleB   "Integrated eDP Features"

+					  

+    Combo	$Enable_SSC07, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+

+	Combo    $eDP_Panel_Color_Depth_07, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_7, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_07, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_07, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_07, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_07, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_07, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_07, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_07, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_07, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+   

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_07, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_07, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_07, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_07, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_07, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_07 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_07 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_7, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_07, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_7, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_7, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_07, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_7, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+

+;==============================================================================

+; Page - Panel #8 (1280x768) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #8 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_08, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_08, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_08, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_08, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_08, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_08, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_08, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+    		   

+    Combo	$Enable_SSC08, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	

+	Combo    $eDP_Panel_Color_Depth_08, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_8, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_08, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_08, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_08, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_08, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_08, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_08, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_08, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_08, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+   

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_08, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_08, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_08, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_08, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+            

+        Combo    $eDP_Link_Vswing_Level_08, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+		

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_08 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_08 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_8, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_08, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_8, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_8, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+		EditNum    $POST_BL_Brightness_08, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_8, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+

+;==============================================================================

+; Page - Panel #9 (1680x1050) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #9 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_09, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_09, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_09, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_09, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_09, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_09, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_09, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)	

+    TitleB   "Integrated eDP Features"

+    	   

+    Combo	$Enable_SSC09, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_09, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_9, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_09, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+			

+		EditNum    $eDP_Vcc_To_Hpd_Delay_09, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_09, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_09, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_09, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_09, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_09, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_09, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+   

+    EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_09, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_09, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_09, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_09, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+  

+        Combo    $eDP_Link_Vswing_Level_09, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_09 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_09 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_9, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_09, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_9, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_9, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_09, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_9, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+   

+EndPage

+

+

+;==============================================================================

+; Page - Panel #10 (1920x1200) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #10 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_10, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_10, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_10, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_10, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_10, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_10, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_10, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+ 	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"	

+	

+    Combo	$Enable_SSC10, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+    Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	Combo    $eDP_Panel_Color_Depth_10, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_10, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+		Combo	$eDP_T3_Optimization_10, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+			"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+			"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_10, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_10, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_10, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_10, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_10, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_10, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_10, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_10, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_10, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_10, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_10, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+        Combo    $eDP_Link_Vswing_Level_10, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_10 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_10 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_10, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_10, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_10, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_10, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_10, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_10, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+;==============================================================================

+; Page - Panel #11 (Reserved) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #11 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_11, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_11, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_11, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_11, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_11, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_11, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_11, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+	

+	Combo	$Enable_SSC11, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_11, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+			"This feature selects the Vswing Pre-emph settings to be used.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_11, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_11, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_11, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_11, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_11, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_11, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_11, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_11, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+        Combo	$Fast_Link_Training_Supported_11, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+				

+        Combo    $eDP_Link_DataRate_11, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_11, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_11, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_11, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_11 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_11 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_11, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_11, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_11, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_11, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_11, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_11, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+         

+EndPage

+

+;==============================================================================

+; Page - Panel #12 (Reserved) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #12 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_12, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_12, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_12, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_12, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_12, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_12, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_12, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+    

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+	

+	Combo	$Enable_SSC12, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+

+	Combo    $eDP_Panel_Color_Depth_12, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_12, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+			

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_12, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_12, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_12, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_12, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_12, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_12, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_12, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_12, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_12, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_12, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_12, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_12, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_12, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_12 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_12 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_12, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_12, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_12, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_12, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_12, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_12, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+   

+EndPage

+

+;==============================================================================

+; Page - Panel #13 (Reserved) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #13 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_13, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_13, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_13, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_13, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_13, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_13, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_13, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"

+					   

+	Combo	$Enable_SSC13, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+

+	Combo    $eDP_Panel_Color_Depth_13, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_13, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+

+				   	

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_13, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_13, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_13, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_13, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_13, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_13, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_13, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_13, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_13, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_13, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_13, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_13, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+            

+        Combo    $eDP_Link_Vswing_Level_13, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_13 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_13 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_13, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_13, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_13, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_13, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_13, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_13, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+;==============================================================================

+; Page - Panel #14 (1280x800) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #14 "

+

+	TitleB  "Common LFP Features" 

+

+    EditText   $Panel_Name_14, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_14, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_14, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_14, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_14, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_14, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_14, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"	

+					   

+	Combo	$Enable_SSC14, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_14, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_14, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_14, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+				

+		EditNum    $eDP_Vcc_To_Hpd_Delay_14, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_14, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_14, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_14, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_14, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_14, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_14, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_14, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_14, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_14, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_14, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+            

+        Combo    $eDP_Link_Vswing_Level_14, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+		

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_14 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_14 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_14, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_14, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_14, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_14, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_14, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_14, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+;==============================================================================

+; Page - Panel #15 (1280x600) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #15 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_15, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_15, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_15, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_15, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_15, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_15, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_15, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"	

+		   

+	Combo	$Enable_SSC15, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+

+	Combo    $eDP_Panel_Color_Depth_15, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_15, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_15, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+				

+		EditNum    $eDP_Vcc_To_Hpd_Delay_15, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_15, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_15, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_15, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_15, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_15, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_15, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+    

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_15, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_15, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_15, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_15, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+        Combo    $eDP_Link_Vswing_Level_15, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+	

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_15 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_15 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_15, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_15, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_15, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_15, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_15, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+

+        EditNum    $PWM_Frequency_15, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+    

+EndPage

+

+;==============================================================================

+; Page - Panel #16 (Reserved) Flat Panel parameters

+;------------------------------------------------------------------------------

+

+Page "Panel #16 "

+

+	TitleB  "Common LFP Features" 

+	

+    EditText   $Panel_Name_16, "\tLFP Panel Name:", 

+        Help	"This feature defines the LVDS panel name, used by driver only. Panel name can be only of 13 characters maximum and rest of the characters will be truncated. "

+

+	Combo	$Enable_Scaling_16, "\tScale to Target Resolution:", &No_Yes_List,

+    Help	"Selecting this feature will make the graphics driver to enable Scaling feature by taking the Horizontal and Vertical resolution\r\n"

+			"from Target X-Res and Target Y-Res fields.\r\n"

+

+    EditNum    $Panel_Width_16, "\tTarget X-Res:", DEC,

+    Help    "This value specifies the Target X-Resolution for this panel."

+

+    EditNum    $Panel_Height_16, "\tTarget Y-Res:", DEC,

+    Help    "This value specifies the Target Y-Resolutoin for this panel."

+

+			  

+    Combo    $DPS_Panel_Type_16, "  \tDPS Panel Type:", &DPS_Panel_Type_List,

+    Help     "This feature allows OEM to select the DPS Panel Type.\r\n "

+             "Intel SDRRS Technology is a feature of the Intel graphics driver\r\n"

+             "which reduces display power\r\n"

+             "SDRRS:- Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience\r\n"

+             "Seamless:-  Allows power savings when on battery mode and when a lower refresh\r\n"

+             "rate will not adversely impact the user experience.Implements seamless refresh\r\n"

+             "rate switching, which eliminates the screen blink that occurred\r\n" 

+             "during the refresh rate transitions\r\n"

+

+	EditNum    $Seamless_DRRS_Min_RR_16, "\tSeamless DRRS Minimum Refresh Rate (Hz):", DEC,

+	Help       "Using this field the minimum Refresh Rate to be used for Seamless DRRS feature can be entered in Hertz.\r\n\n"

+				"Note: Graphics driver will use this field only when EDID support is disabled in VBT configuration.\r\n"

+			 

+    Combo    $Blt_Control_16, "\tBackLight Technology:", &Blt_Control_Type_List,

+    Help     "This feature allows OEM to select the Backlight Technology.\r\n "

+

+    Title    " "	

+    Link     "LFP PnP ID Table" , "LFP PnP ID"

+    Link     "DTD Timings Table" , "DTD Timings"

+    Link     "Backlight Control Parameters" , "Backlight Control Parameters"

+	

+	#if ($Int_LFP1_Type == 0x1806)

+    TitleB   "Integrated eDP Features"	

+	   

+	Combo	$Enable_SSC16, "  \teDP Spread Spectrum Clock:", &Disabled_Enabled_List,

+	Help	"This feature will allow users to disable/enable Spread Spectrum Clock for eDP.\r\n "

+	

+	Combo    $eDP_Panel_Color_Depth_16, "\tPanel Color Depth:", &eDP_Panel_Color_Depth_List,

+    Help    "This feature specifies the color depth of eDP panel used. "

+

+	Combo    $eDP_VswingPreEmph_16, "\tEdp Vswing Pre-emph table:", &eDP_Vswing_Preemph_table_List,

+    Help    "This feature allows the selection of Low power Vswing Prephasis table or Default/High Vswing Prephasis table.\r\n"

+			"\r\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+			"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+			"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+			"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+			"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+			"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+			"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+			"Column - Non-Transition VDiff \r\n"

+			"Row - Transition VDiff \r\n"

+		

+    Link     "eDP Panel Power Sequencing Parameters Table" , "eDP Panel Power Sequencing"

+    Link     "eDP Fast Link Training Configuration" , "eDP Fast Link Training Configuration"

+	

+    Page    "eDP Panel Power Sequencing"

+        Link    "Close Table", ".."

+

+		Combo	$eDP_T3_Optimization_16, "T3 optimization", &Disabled_Enabled_List,

+		Help	"This feature enables or disables T3 optimization. \r\n"

+				"When enabled, VBIOS/Graphics driver will poll for AUX soon after VDD enable until AUX passes or T3 time is reached\r\n"

+				"When disabled, VBIOS/Graphics driver will wait for T3 time before trying the first AUX transaction"

+

+		EditNum    $eDP_Vcc_To_Hpd_Delay_16, "LCDVCC to HPD high delay (T3):", DEC,

+		Help       "Using this field the delay from LCDVCC to HPD high can be specified in 100uS.\r\n"

+				   "Valid Range: 0 to 200msec\r\n"

+

+		EditNum    $eDP_DataOn_To_BkltEnable_Delay_16, "Valid video data to Backlight Enable delay (T8):", DEC,

+		Help       "Using this field the delay from Start of Valid video data from Source to Backlight Enable can be specified in 100uS.\r\n"

+					"T8 is inclusive of T7.\r\n"

+					"Valid Range of T7: 0 to 50msec\r\n"

+

+		EditNum    $eDP_PwmOn_To_Bklt_Enable_Delay_16, "PWM-On To Backlight Enable delay:", DEC,

+		Help       "Using this field the delay from PWM-On to Backlight Enable can be specified in 100uS.\r\n"

+				   "Delay from PWM-On to Backlight Enable is included in delay from Valid video data to Backlight Enable (T8).\r\n"

+				   "So it is expected that delay from PWM-On to Backlight Enable is less than the delay from Valid video data to Backlight Enable (T8).\r\n"

+

+		EditNum    $eDP_Bklt_Disable_To_PwmOff_Delay_16, "Backlight Disable to PWM-Off delay:", DEC,

+		Help       "Using this field delay from Backlight Disable to PWM-Off can be specified in 100uS.\r\n"

+				   "Delay from Backlight Disable to PWM-Off is included in delay from Backlight Disable to End of Valid video data (T9).\r\n"

+				   "So it is expected that delay from Backlight Disable to PWM-Off delay is less than the delay from Backlight Disable to to End of Valid video data (T9).\r\n"

+		

+		EditNum    $eDP_BkltDisable_To_DataOff_Delay_16, "Backlight Disable to End of Valid video data delay (T9):", DEC,

+		Help       "Using this field the delay from Backlight Disable to End of Valid video data can be specified in 100uS.\r\n"

+					

+		EditNum    $eDP_DataOff_To_PowerOff_Delay_16, "End of Valid video data to Power-Off delay (T10):", DEC,

+		Help       "Using this field delay from End of Valid video data from Source to Power-Off can be specified in 100uS.\r\n"

+					"Valid Range: 0 to 500 msec\r\n"

+

+		EditNum    $eDP_PowerCycle_Delay_16, "Power-off time (T12):", DEC,

+		Help       "Using this field Power-off time can be specified in 100uS.\r\n"

+

+	EndPage

+

+    Page "eDP Fast Link Training Configuration"

+

+        Link    "Close Table" , ".."

+		Combo	$Fast_Link_Training_Supported_16, "  Is FastLinkTraining Feature Supported:", &No_Yes_List,

+        Help	"This feature if set to Yes will enable "

+				"Fast Link Training for eDp, if Panel also supports it."

+        

+        Combo    $eDP_Link_DataRate_16, "  Data Rate:", &eDP_Link_DataRate_List,

+        Help    "This feature allows for the selection of the "

+                "Data Rate for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_LaneCount_16, "  Lane Count:", &eDP_Link_LaneCount_List,

+        Help    "This feature allows for the selection of the "

+                "Lane Count (Port Width) for the embedded DP link. It will be used if the "

+                "sink indicates that no aux handshake is required during link training."

+

+        Combo    $eDP_Link_PreEmp_Level_16, "  PreEmph Level:", &eDP_Link_PreEmp_List,

+        Help    "This feature allows for the selection of the "

+                "Pre-emphasis level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+            

+        Combo    $eDP_Link_Vswing_Level_16, "  VSwing Level:", &eDP_Link_VSwing_List,

+        Help    "This feature allows for the selection of the "

+                "Voltage Swing Level for the embedded DP link."

+				"\r\n\n\t\tLow power Swing Setting Table                 \t\t\t\t                                  Default Swing Setting Table     \r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"        \t         |    \t\t PreEmphasis Levels\t\t            |  \t\t        \t         |    \t\t PreEmphasis Levels\t\t            |\r\n"

+				"| VSwing Levels   | Level 0(0dB) | Level 1(2.0dB) | Level 2(3.5dB) | Level 3(4.8dB) |  \t\t| VSwing Levels   | Level 0(0dB) | Level 1(3.5dB) | Level 2(6.0dB) | Level 3(9.5dB) |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n"

+				"| Level 0(200mV) |     200mV       |     250mV          |       300mV      |        350mV      |  \t\t| Level 0(400mV) |     400mV       |     600mV          |       800mV      |        1200mV     |\r\n"

+				"| Level 1(250mV) |     250mV       |     300mV          |       350mV      |         N/A           |  \t\t| Level 1(600mV) |     600mV       |     800mV          |       1200mV     |         N/A           |\r\n"

+				"| Level 2(300mV) |     300mV       |     350mV          |        N/A          |         N/A           |  \t\t| Level 2(800mV) |     800mV       |     1200mV         |        N/A          |         N/A           |\r\n"

+				"| Level 3(350mV) |     350mV       |      N/A              |        N/A           |        N/A           |  \t\t|Level 3(12000mV) |   12000mV   |      N/A              |        N/A           |        N/A           |\r\n"

+				"---------------------------------------------------------------------------------------------------\t\t---------------------------------------------------------------------------------------------------\r\n\n"

+				"Column - Non-Transition VDiff \r\n"

+				"Row - Transition VDiff \r\n"

+

+    EndPage

+	

+	#endif

+

+      Page "DTD Timings"

+    

+        Link    "Close Table" , ".."

+

+        Table    $DVO_Tbl_16 " DTD Timings Values",

+                 Column "Timings" , 1 byte , EHEX,

+        Help    "This feature allows for the definition of the DTD "

+                "timings parameters related to the LFP.  The "

+                "table is the 18-byte DTD structure defined in the "

+                "VESA EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+

+    EndPage

+

+    Page "LFP PnP ID"

+

+        Link    "Close Table" , ".."

+

+        Table    $LVDS_PnP_ID_16 " LFP PnP ID Values",

+                 Column "PnP ID" , 1 byte , EHEX,

+        Help    "This feature allows the 10 bytes of EDID Vendor / "

+                "Product ID starting at offset 08h to be used as a "

+                "PnP ID.\r\n"

+                "\r\n"

+                " Table Definition:\r\n"

+                "  Word:  ID Manufacturer Name\r\n"

+                "  Word:  ID Product Code\r\n"

+                "  DWord: ID Serial Number\r\n"

+                "  Byte:  Week of Manufacture\r\n"

+                "  Byte:  Year of Manufacture"

+

+    EndPage

+

+    Page "Backlight Control Parameters"

+

+        Link    "Close Table" , ".."

+

+        Combo    $BLC_Inv_Type_16, "  Inverter Type:", &Inv_Type_List,

+        Help    "This feature allows for the selection of the "

+                "Backlight Inverter type that is to be used to "

+                "control the backlight brightness of the LFP.  When "

+                "PWM is selected, the driver and VBIOS will control "

+                "the backlight brightness via the integrated PWM "

+                "solution for the applicable chipsets.  When I2C is "

+                "selected, the driver and VBIOS will control the "

+                "backlight brightness via the I2C solution for the "

+                "applicable chipsets.  When None/External is "

+                "selected, the system BIOS will control the backlight "

+                "brightness via the external solution."

+

+		Combo    $Lfp_Pwm_Source_Selection_16, "  Pwm Source Selection:", &Edp_Pwm_Source_List,

+		Help    "This field allows to select the Source of the PWM to be used  "

+				"for the selected Local Flat Panel.\r\n"

+				"\r\n"

+				

+        Combo    $BLC_Inv_Polarity_16, "  Inverter Polarity:", &Inv_Polarity_List,

+        Help    "This feature allows the backlight inverter polarity "

+                "to be specified.\r\n"

+                "\r\n"

+                "Normal means 0 value is minimum brightness.\r\n"

+                "Inverted means 0 value is maximum brightness."

+

+        EditNum    $BLC_Min_Brightness_16, "  Minimum Brightness:", DEC,

+        Help    "This feature allows defining the absolute minimum "

+                "backlight brightness setting.  The graphics driver "

+                "will never decrease the backlight less than this "

+                "value.  The value must be specified using normal "

+                "polarity semantics."

+

+EditNum    $POST_BL_Brightness_16, "  POST Backlight Intensity:", DEC,

+        Help    "This feature is used to set default brightness value at POST."

+                "This is configurable field of 0-255. Value of 0 indicates 0 brightness, 255 indicates maximum brightness. "

+

+        EditNum    $PWM_Frequency_16, "  PWM Inverter Frequency (Hz):", DEC,

+        Help    "This feature allows for the definition of the "

+                "frequency needed for PWM Inverter.\r\n"

+                "\r\n"

+                "Note: The frequency range, entered as a decimal "

+                "number, for the integrated PWM is 200Hz - 40KHz."

+    EndPage

+     

+EndPage

+

+;==============================================================================

+; Page - RGB Palette Table

+;------------------------------------------------------------------------------

+#if($Enable_Correction == 1)

+Page "RGB Palette Table"

+	Link    "Red Palette Table" , 	"Red Palette Table"

+	Link    "Green Palette Table",  "Green Palette Table"

+	Link    "Blue Palette Table", 	"Blue Palette Table"

+	

+	Page "Red Palette Table"

+		Link    "Close Table" , ".."

+		Table    $Red_Table "Red Palette Table",

+			Column "Red", 1 byte, EHEX,

+		Help	"Enter values for Red Palette. Allowed range for entering values in each row is 0-FF (in decimal 0-255). Input format is of type Hexadecimal."

+	EndPage

+	

+	Page "Green Palette Table"

+		Link    "Close Table" , ".."

+		Table    $Green_Table "Green Palette Table",

+			Column "Green", 1 byte, EHEX,

+		Help	"Enter values for Green Palette. Allowed range for entering values in each row is 0-FF (in decimal 0-255). Input format is of type Hexadecimal."

+	EndPage

+	

+	Page "Blue Palette Table"

+		Link    "Close Table" , ".."

+		Table    $Blue_Table "Blue Palette Table",

+			Column "Blue", 1 byte, EHEX,

+		Help	"Enter values for Blue Palette. Allowed range for entering values in each row is 0-FF (in decimal 0-255). Input format is of type Hexadecimal."

+	EndPage

+EndPage	

+#endif

+

+	

+EndPage ; "Integrated LFP Features"

+

+	  

+	  

+;==============================================================================

+; Page - Display Device Toggle Lists

+;------------------------------------------------------------------------------

+

+Page "Display Device Toggle Lists"

+

+    Link "Toggle/Capabilities List 1" , "Display Toggle List 1"

+    Link "Toggle/Capabilities List 2" , "Display Toggle List 2"

+    Link "Toggle/Capabilities List 3" , "Display Toggle List 3"

+    Link "Toggle/Capabilities List 4" , "Display Toggle List 4"

+

+    Page "Display Toggle List 1"

+

+        Link    "Close Table" , ".."

+

+        Table    $Toggle_List1 "Display Toggle List 1",

+            Column "Display Select", 2 bytes, EHEX

+            Column "Reserved", 1 byte, DEC,

+        Help    "These toggle lists are used by the video BIOS and "

+            "device drivers to help support the system BIOS with "

+            "switch display device Hot Keys.  The basic algorithm "

+            "in the current display is found on the list and the "

+            "next settable display combination is set.  If no "

+            "settable display combinations are found the function "

+            "returns fail.\r\n"

+            "\r\n"

+            "The video BIOS will 'OR' the bits of the two pipes "

+            "together to create a single pipe display device.  "

+            "The Intel developed drivers will use the display "

+            "lists as they are.  The divers also use this list to "

+            "get pipe information for ACPI switch display device "

+            "Hot Keys. Four lists are given to allow for multiple "

+            "Hot Keys or creative solutions.\r\n"

+            "\r\n"

+            "Display Select (Refer to VBIOS HLD for valid "

+            "selections):\r\n"

+            "\r\n"

+            "\tPipe A: Bits 7-0, Pipe B: Bits 15-8\r\n"

+            "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+            ;"\tLFP2\tEFP2\tTV2\tCRT2\tLFP\tEFP\tTV\tCRT"

+            "\tLFP2\tEFP2\tEFP3\tCRT2\tLFP\tEFP\tTV\tCRT"

+

+    EndPage

+

+    Page "Display Toggle List 2"

+

+        Link    "Close Table" , ".."

+

+        Table    $Toggle_List2 "Display Toggle List 2",

+            Column "Display Select", 2 bytes, EHEX

+            Column "Reserved", 1 byte, DEC,

+        Help    "These toggle lists are used by the video BIOS and "

+            "device drivers to help support the system BIOS with "

+            "switch display device Hot Keys.  The basic algorithm "

+            "in the current display is found on the list and the "

+            "next settable display combination is set.  If no "

+            "settable display combinations are found the function "

+            "returns fail.\r\n"

+            "\r\n"

+            "The video BIOS will 'OR' the bits of the two pipes "

+            "together to create a single pipe display device.  "

+            "The Intel developed drivers will use the display "

+            "lists as they are.  The divers also use this list to "

+            "get pipe information for ACPI switch display device "

+            "Hot Keys. Four lists are given to allow for multiple "

+            "Hot Keys or creative solutions.\r\n"

+            "\r\n"

+            "Display Select (Refer to VBIOS HLD for valid "

+            "selections):\r\n"

+            "\r\n"

+            "\tPipe A: Bits 7-0, Pipe B: Bits 15-8\r\n"

+            "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+            ;"\tLFP2\tEFP2\tTV2\tCRT2\tLFP\tEFP\tTV\tCRT"

+            "\tLFP2\tEFP2\tEFP3\tCRT2\tLFP\tEFP\tTV\tCRT"

+

+    EndPage

+

+    Page "Display Toggle List 3"

+

+        Link    "Close Table" , ".."

+

+        Table    $Toggle_List3 "Display Toggle List 3",

+            Column "Display Select", 2 bytes, EHEX

+            Column "Reserved", 1 byte, DEC,

+        Help    "These toggle lists are used by the video BIOS and "

+            "device drivers to help support the system BIOS with "

+            "switch display device Hot Keys.  The basic algorithm "

+            "in the current display is found on the list and the "

+            "next settable display combination is set.  If no "

+            "settable display combinations are found the function "

+            "returns fail.\r\n"

+            "\r\n"

+            "The video BIOS will 'OR' the bits of the two pipes "

+            "together to create a single pipe display device.  "

+            "The Intel developed drivers will use the display "

+            "lists as they are.  The divers also use this list to "

+            "get pipe information for ACPI switch display device "

+            "Hot Keys. Four lists are given to allow for multiple "

+            "Hot Keys or creative solutions.\r\n"

+            "\r\n"

+            "Display Select (Refer to VBIOS HLD for valid "

+            "selections):\r\n"

+            "\r\n"

+            "\tPipe A: Bits 7-0, Pipe B: Bits 15-8\r\n"

+            "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+            ;"\tLFP2\tEFP2\tTV2\tCRT2\tLFP\tEFP\tTV\tCRT"

+            "\tLFP2\tEFP2\tEFP3\tCRT2\tLFP\tEFP\tTV\tCRT"

+

+    EndPage

+

+    Page "Display Toggle List 4"

+

+        Link    "Close Table" , ".."

+

+        Table    $Toggle_List4 "Display Toggle List 4",

+            Column "Display Select", 2 bytes, EHEX

+            Column "Reserved", 1 byte, DEC,

+        Help    "These toggle lists are used by the video BIOS and "

+            "device drivers to help support the system BIOS with "

+            "switch display device Hot Keys.  The basic algorithm "

+            "in the current display is found on the list and the "

+            "next settable display combination is set.  If no "

+            "settable display combinations are found the function "

+            "returns fail.\r\n"

+            "\r\n"

+            "The video BIOS will 'OR' the bits of the two pipes "

+            "together to create a single pipe display device.  "

+            "The Intel developed drivers will use the display "

+            "lists as they are.  The divers also use this list to "

+            "get pipe information for ACPI switch display device "

+            "Hot Keys. Four lists are given to allow for multiple "

+            "Hot Keys or creative solutions.\r\n"

+            "\r\n"

+            "Display Select (Refer to VBIOS HLD for valid "

+            "selections):\r\n"

+            "\r\n"

+            "\tPipe A: Bits 7-0, Pipe B: Bits 15-8\r\n"

+            "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+            "\tLFP2\tEFP2\tRsvd\tRsvd\tLFP\tEFP\tRsvd\tCRT"

+    EndPage

+

+EndPage

+

+;==============================================================================

+; Page - Modes Removal Table

+;------------------------------------------------------------------------------

+

+Page "Modes Removal Table"

+

+    Table    $Mode_Rem_Table "Modes Removal Table",

+        Column "X-Resolution", 2 bytes, DEC

+        Column "Y-Resolution", 2 bytes, DEC 

+        Column "BPP", 1 byte, DEC 

+        Column "Refresh Rate", 2 bytes, EHEX 

+        Column "Removal Flags", 1 byte, EHEX 

+        Column "Panel Type", 2 bytes, EHEX,

+    Help    "This feature allows removing support for selected modes "

+        "resolutions.\r\n"

+        "\r\n"

+        "X-Resolution, Y-Resolution, and BPP in Decimal or "

+        "Hexadecimal (0FFFFh or 0FFh means disable all).\r\n"

+        "\r\n"

+        "Refresh Rate bitmap selection (0 = Do not remove, 1 = "

+        "Remove):\r\n"

+        "\r\n"

+        "\tBit           15-9   8   7  6  5  4  3  2  1   0 \r\n"

+        "\tRRate(Hz) Reserved 120 100 85 75 72 70 60 56 43i \r\n"

+        "\r\n"

+        "Removal Flags bitmap selection (0 = Do not remove, 1 = "

+        "Remove):\r\n"

+        "\r\n"

+        "\tBit                   7       6         5     4       3       2       1        0    \r\n"

+        "\tComponent  Rsvd  Rsvd  LFP  EFP  Rsvd  CRT  Driver  VBIOS \r\n"

+        "\r\n"

+        "\tNote: 1) In order to remove mode from both Windows and DOS, "

+        "both Bit 1 and Bit 0 must be set to 1.\r\n"

+        "\r\n"

+        "(Mobile only) Panel Type bitmap selection (0 = Do not "

+        "remove, 1 = Remove if panel is active):/r/n"

+        "\r\n"

+        "\tBit  15 14 13 12 11 10  9 8 7 6 5 4 3 2 1 0 \r\n"

+        "\tType 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 \r\n"

+        "\r\n"

+        "\tNote: Default is to remove a mode resolution from all "

+        "panel types."

+EndPage

+

+

+;==============================================================================

+; Page - Display Configuration Removal Table

+;------------------------------------------------------------------------------

+

+Page "Display Configuration Removal Table"

+

+    Table    $Dev_Removed_Table " Display Device Configuration Removal Table",

+        Column "Pipe B" , 1 byte , BIN

+        Column "Pipe A" , 1 byte , BIN, 

+        

+    Help    "This feature allows blocking selected display configurations "

+        "by the video BIOS and driver.\r\n"

+        "\r\n"

+        "Display Devices are specified in the following bit patterns "

+        "(pipe A and B use the same bit pattern):\r\n"

+        "\r\n"

+        "\t7\t6\t5\t4\t3\t2\t1\t0 (lsb)\r\n"

+        "\tLFP2\tEFP2\tRsvd\tRsvd\tLFP\tEFP\tRsvd\tCRT\r\n"

+        "\r\n"

+        "Examples:\r\n"

+        "\tPipe B      Pipe A\r\n"

+        "\t00000000b,  00000101b  ; EFP & CRT on Pipe A\r\n"

+        "\t00001100b,  00000001b  ; EFP & LFP on Pipe B and CRT on "

+        "Pipe A"

+EndPage

+

+

+;==============================================================================

+; Page - OEM Customizable Mode 2.0

+;------------------------------------------------------------------------------

+

+Page "OEM Customizable Modes 2.0"

+

+    Link    "OEM Mode 1 Configuration", "OEM Mode #1"

+    Link    "OEM Mode 2 Configuration", "OEM Mode #2"

+    Link    "OEM Mode 3 Configuration", "OEM Mode #3"

+    Link    "OEM Mode 4 Configuration", "OEM Mode #4"

+    Link    "OEM Mode 5 Configuration", "OEM Mode #5"

+    Link    "OEM Mode 6 Configuration", "OEM Mode #6"    

+

+    Page "OEM Mode #1"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 60h / VESA mode 160h"

+        Title    "    16 bpp = VGA mode 61h / VESA mode 161h"

+        Title    "    32 bpp = VGA mode 62h / VESA mode 162h"

+

+        EditNum    $OEM_Mode_Flags1, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+    

+        EditNum    $OEM_Display_Flags1, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+        EditNum    $OEM_Mode_X1, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y1, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color1, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate1, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD1 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+    

+    Page "OEM Mode #2"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 63h / VESA mode 163h"

+        Title    "    16 bpp = VGA mode 64h / VESA mode 164h"

+        Title    "    32 bpp = VGA mode 65h / VESA mode 165h"

+

+            EditNum    $OEM_Mode_Flags2, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+        

+        EditNum    $OEM_Display_Flags2, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X2, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y2, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color2, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate2, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD2 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+

+    Page "OEM Mode #3"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 66h / VESA mode 166h"

+        Title    "    16 bpp = VGA mode 67h / VESA mode 167h"

+        Title    "    32 bpp = VGA mode 68h / VESA mode 168h"

+

+        EditNum    $OEM_Mode_Flags3, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+        

+        EditNum    $OEM_Display_Flags3, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X3, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y3, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color3, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate3, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD3 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+

+    Page "OEM Mode #4"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 69h / VESA mode 169h"

+        Title    "    16 bpp = VGA mode 6Ah / VESA mode 16Ah"

+        Title    "    32 bpp = VGA mode 6Bh / VESA mode 16Bh"

+

+        EditNum    $OEM_Mode_Flags4, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+    

+        EditNum    $OEM_Display_Flags4, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X4, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y4, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color4, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate4, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD4 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+

+    Page "OEM Mode #5"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 6Ch / VESA mode 16Ch"

+        Title    "    16 bpp = VGA mode 6Dh / VESA mode 16Dh"

+        Title    "    32 bpp = VGA mode 6Eh / VESA mode 16Eh"

+

+        EditNum    $OEM_Mode_Flags5, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+    

+        EditNum    $OEM_Display_Flags5, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X5, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y5, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color5, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate5, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD5 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+

+    Page "OEM Mode #6"

+

+        Link    "Close Table" , ".."

+

+        Title    "     8 bpp = VGA mode 6Fh / VESA mode 16Fh"

+        Title    "    16 bpp = VGA mode 70h / VESA mode 170h"

+        Title    "    32 bpp = VGA mode 71h / VESA mode 171h"

+

+        EditNum    $OEM_Mode_Flags6, "Support Flags:", BIN,

+        Help    "Support flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tDriver"

+            "\tVBIOS"

+            "\r\n"

+        

+        EditNum    $OEM_Display_Flags6, "Display Flags:", BIN,

+        Help    "Display Flags:"

+            "(0 = Disabled, 1 = Enabled)"

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tLFP2"

+            "\tEFP2"

+            "\tTV2"

+            "\tCRT2"

+            "\tLFP"

+            "\tEFP"

+            "\tTV"

+            "\tCRT"

+            "\r\n"

+

+        Title    "Mode Characteristics"

+

+        EditNum    $OEM_Mode_X6, "  X Resolution:", DEC,

+        Help    "X Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Y6, "  Y Resolution:", DEC,

+        Help    "Y Resolution in pixels (decimal)."

+

+        EditNum    $OEM_Mode_Color6, "  Color Depth:", BIN,

+        Help    "Color Depth, bits can be set simultaneously (binary)."

+            "\r\n\r\n"

+            "\tBit 7"

+            "\tBit 6"

+            "\tBit 5"

+            "\tBit 4"

+            "\tBit 3"

+            "\tBit 2"

+            "\tBit 1"

+            "\tBit 0"

+            "\r\n"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\tRsvd"

+            "\t32 BPP"

+            "\t16 BPP"

+            "\t8 BPP"

+            "\r\n"

+

+        EditNum    $OEM_Mode_RRate6, "  Refresh Rate:", DEC,

+        Help    "Refresh rate for OEM customizable mode (decimal)."

+

+        Link "18 Bytes DTD" , "DTD"

+

+        Page "DTD"

+

+            Link    "Close Table" , ".."

+

+            Table    $OEM_Mode_DTD6 " Detailed Timings Descriptor",

+                Column "Timings" , 1 byte , EHEX,

+            Help    "This table is the 18-byte DTD(Detailed Timings"

+                " Descriptor) structure defined in the VESA"

+                " EDID version 1.x.\r\n"  

+                "\r\n"

+                "\tDB ?\t; Low Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; High Byte of DClk in 10 KHz\r\n"

+                "\tDB ?\t; Horizontal Active in pixels, LSB\r\n"

+                "\tDB ?\t; Horizontal Blanking in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Hor. Blanking\r\n"

+                "\tDB ?\t; Vertical Active in lines, LSB\r\n"

+                "\tDB ?\t; Vertical Blanking in lines, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Vert. Active\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Blanking\r\n"

+                "\tDB ?\t; HSync Offset from Hor. Blanking in pix., LSB\r\n"

+                "\tDB ?\t; HSync Pulse Width in pixels, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Lower 4 bits of VSync Offset\r\n"

+                "\t    \t; Bit 3-0: Lower 4 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Bit 7-6: Upper 2 bits of HSync Offset\r\n"

+                "\t    \t; Bit 5-4: Upper 2 bits of HSync Pulse Width\r\n"

+                "\t    \t; Bit 3-2: Upper 2 bits of VSync Offset\r\n"

+                "\t    \t; Bit 1-0: Upper 2 bits of VSync Pulse Width\r\n"

+                "\tDB ?\t; Horizontal Image Size, LSB\r\n"

+                "\tDB ?\t; Vertical Image Size, LSB\r\n"

+                "\tDB ?\t; Bit 7-4: Upper 4 bits of Hor. Image Size\r\n"

+                "\t    \t; Bit 3-0: Upper 4 bits of Vert. Image Size\r\n"

+                "\tDB 0\t; Horizontal Border in pixels\r\n"

+                "\tDB 0\t; Vertical Border in lines\r\n"

+                "\tDB ?\t; Flags:\r\n"

+                "\t    \t;   Bit 7:   0 = Non-interlaced, 1 = Interlaced\r\n"

+                "\t    \t;   Bit 6-5: 00 = Reserved\r\n"

+                "\t    \t;   Bit 4-3: 11 = Digital Separate\r\n"

+                "\t    \t;   Bit 2:   Vertical Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 1:   Horizontal Polarity (0 = Negative, 1 = Positive)\r\n"

+                "\t    \t;   Bit 0:   0 = Reserved"

+        EndPage

+    EndPage

+EndPage

+

+

+;============================================================================

+; End of File

+;------------------------------------------------------------------------------

+    

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..6d9f0920760d41f1a425eee15835ac4143fe01e2
GIT binary patch
literal 10624
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf
new file mode 100644
index 0000000..d34bf39
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/CpuPeim.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    CpuPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for CPU module

+#

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = CpuPeim

+  FILE_GUID                  = 01359d99-9446-456d-ada4-50a711c03adb

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimInitializeCpu

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|CpuPeim.efi

+  PEI_DEPEX|CpuPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x27B0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiMasterBootModePpiGuid

+

+

+  gEfiSecPlatformInformationPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.depex
new file mode 100644
index 0000000..4cbdd53
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.depex
@@ -0,0 +1 @@
+�������G����P���ƣ�^�H���3����HN
2��G�,?��f���?n�FO�)�S=Y(mEK�GN��2v؆�}��J&�>����4/4t+p�
�1A�F������k��
a�F{�Z�~�'\������I�K���
�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1b79539126654b4f83681b91fcd448ded483949f
GIT binary patch
literal 14848
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
S&!mN=sj)_UfBpYsf&T@bfgYd$

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.inf
new file mode 100644
index 0000000..da142b4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/DigitalThermalSensor.inf
@@ -0,0 +1,190 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2013 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#  Module Name:

+#

+#  DigitalThermalSensor.inf

+#

+#  Abstract:

+#

+#  Component description file for the DigitalThermalSensor SMM driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = DigitalThermalSensor

+  FILE_GUID                  = 5122FA7B-17A3-4a8b-89AE-A93ADE92EADF

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallDigitalThermalSensor

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|DigitalThermalSensor.efi

+  SMM_DEPEX|DigitalThermalSensor.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3410

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x3418

+

+

+[Protocols.IA32]

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiSmmIoTrapDispatch2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiMpServiceProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/DTSHookLib/Smm/DTSHookLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/PlatSmmIo/PlatSmmIo.inf

+#  Vlv2TbltDevicePkg/Library/CpuIA32Lib/CpuIA32Lib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/Ksc/Smm/SmmKscLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid                   AND gEfiSmmSwDispatch2ProtocolGuid             AND gEfiGlobalNvsAreaProtocolGuid              AND gEfiMpServiceProtocolGuid                  AND gEfiSmmSxDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.depex
new file mode 100644
index 0000000000000000000000000000000000000000..cce1aa8782d7783ac5038e755ab4a29300bbd39a
GIT binary patch
literal 108
zcmV-y0F(a$;%HVLfrQi%yzu~l$2^FE0vPx~WMX4PPPK4-x-s1(Qv!|%m+Rlp#!0?Q
z*#@Pu4u%5VYvBI}VWviVvRa&e#V1?>x`?Y=;^1^fwyn4l_J|zT0`~Bu6G|rVKJwt+
O#S%0xGy?+z0|N-t=rOkd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d465a82187a61a6dcf1db699b7397c9cd366a1c6
GIT binary patch
literal 12704
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
H1mgN%Uoh)<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf
new file mode 100644
index 0000000..a59b48b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/Dptf.inf
@@ -0,0 +1,219 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

+#

+#**/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = Dptf

+  FILE_GUID                  = 1D000AE9-756B-4937-B736-1F3D96A5A8F0

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = DptfDriverEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|Dptf.efi

+  DXE_DEPEX|Dptf.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2D48

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2D40

+

+

+[Protocols.IA32]

+  # CONSUMED

+  gEfiAcpiSdtProtocolGuid

+

+  # CONSUMED

+  gEfiAcpiTableProtocolGuid

+

+  # CONSUMED

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gDxeVlvPlatformPolicyGuid

+

+  gEfiI2cBusProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/I2CLib/I2CLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/I2cStackLib/I2cDriverLib/I2cDriverLib.inf

+

+[Depex.IA32]

+#  (gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiAcpiTableProtocolGuid AND gDxeVlvPlatformPolicyGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  DRIVER_BINDING                =  gSampleDrvDriverBinding

+#  COMPONENT_NAME                =  gSampleDrvComponentName

+#  COMPONENT_NAME2               =  gSampleDrvComponentName2

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..5066c0763638a39ff33c71c6d9759850f116e542
GIT binary patch
literal 162
zcmV;T0A2qAx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
zGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj$Tzs&UD_Wehl)DWogP{EM`bSrSe41h5~henUJ
QxSZsy0|NsC0|NsC2(86PtN;K2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1f7153584303ac31daecf26a42d761b0dfd759c7
GIT binary patch
literal 25088
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
FzX1F6Cma9(

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.inf
new file mode 100644
index 0000000..6ed856b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/GraphicDxeInitSmm.inf
@@ -0,0 +1,265 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = GraphicDxeInitSmm

+  FILE_GUID                  = 99EC6206-AA45-4CAE-B630-866755241C8A

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = GraphicDxeInitSmmEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|GraphicDxeInitSmm.efi

+  SMM_DEPEX|GraphicDxeInitSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xffffffff|0x5A08

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5A00

+

+

+[Protocols.IA32]

+  gDxeVlvPlatformPolicyGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+#  MdePkg/Library/SmmIoLib/SmmIoLib.inf

+

+[Depex.IA32]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex
new file mode 100644
index 0000000..9b2767a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
�HN
2��G�,?��f���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..50cfe9408ed8127208c3d13f2fc79e4b5f4f80eb
GIT binary patch
literal 17984
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf
new file mode 100644
index 0000000..0806799
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ISPDxe.inf
@@ -0,0 +1,247 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#   IspDxe.inf

+#

+#  Abstract:

+#

+#

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = ISPDxe

+  FILE_GUID                  = 5A38B969-CD6A-4814-82E6-559F840BBC58

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = ISPDxeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|ISPDxe.efi

+  DXE_DEPEX|ISPDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4110

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x4118

+

+

+[Protocols.IA32]

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.IA32]

+#  (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiGlobalNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.depex
new file mode 100644
index 0000000..4db74a3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.depex
@@ -0,0 +1 @@
+�n�*��4A�V8T��
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.efi
new file mode 100644
index 0000000000000000000000000000000000000000..db022f8a560918e06a23ccc9b629f19243021987
GIT binary patch
literal 98304
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.inf
new file mode 100644
index 0000000..79dd341
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MemoryInit.inf
@@ -0,0 +1,201 @@
+#/*++

+# This file contains an 'Intel Peripheral Driver' and uniquely

+# identified as "Intel Mobile Silicon Support Module" and is

+# licensed for Intel Mobile CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor. This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#--*/

+#/*++

+#

+# Copyright (c)  2005 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    MemoryInit.inf

+#

+#  Abstract:

+#

+#    Component description file for MemoryInit module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = MemoryInit

+  FILE_GUID                  = D4EE25EA-0B48-43ae-A016-4D6E8B6C43B3

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimMemoryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|MemoryInit.efi

+  PEI_DEPEX|MemoryInit.depex

+

+[PatchPcd.IA32]

+  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|0x00|0x17A30

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|0x01|0x16FF2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|0x01|0x16FF4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|0x01|0x16FF0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|0x01|0x17000

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0x00|0x17A32

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|0x01|0x17008

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|0x02|0x17009

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|0x03|0x16FF3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0x00|0x17A31

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|0x0b|0x16FF1

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|0x0b|0x16FF7

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|0x0c|0x17003

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|0x06|0x17002

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|0x06|0x16FF6

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|0x06|0x16FF5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|0x20|0x17001

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000046|0x17004

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x16FF8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+  gSeCUmaPpiGuid

+

+  gSeCfTPMPpiGuid

+

+  gVlvMmioPolicyPpiGuid

+

+  gPeiCapsulePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiGlobalVariableGuid

+

+  gEfiVlv2VariableGuid

+

+  gEfiMemoryConfigDataGuid

+

+

+  gEfiAcpiVariableGuid

+

+

+  gEfiPlatformInfoGuid

+

+  gEfiSetupVariableGuid

+

+  gEfiMemoryOverwriteControlDataGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/RamDebugLib/RamDebugLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+

+[Depex.IA32]

+#  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Fa$* /Oi /Od /DEFI_MEMORY_INIT /DSMM_SUPPORT  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D LPDDR2_SUPPORT=0 /D DDR3_SUPPORT=1 /D LPDDR3_SUPPORT=0 /D DEBUG_MODE=1 /D SEC_SUPPORT_FLAG /D FTPM_ENABLE /DDDR_DUAL_CHANNEL=1

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.depex
new file mode 100644
index 0000000..1b4e8e1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0��������G����P��>2
�u�*O���Yj���ƣ�^�H���3������J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e0abf0507c9fbfd7bdcd403ae23e393b2f6844e0
GIT binary patch
literal 11264
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.inf
new file mode 100644
index 0000000..c2f27b2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchBiosWriteProtect.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchBiosWriteProtect.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchBiosWriteProtect driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchBiosWriteProtect

+  FILE_GUID                  = B8B8B609-0B6C-4b8c-A731-DE03A6C3F3DC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchBiosWriteProtect

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchBiosWriteProtect.efi

+  SMM_DEPEX|PchBiosWriteProtect.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2800

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2808

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gEfiSmmBase2ProtocolGuid            AND gEfiSmmIchnDispatchProtocolGuid     AND gEfiSmmSwDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmBase2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e1d3f2ba8b4f5a06fa636ff2ba72ac3d2590d37c
GIT binary patch
literal 15040
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.inf
new file mode 100644
index 0000000..ca923c9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchEarlyInitPeim.inf
@@ -0,0 +1,97 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchEarlyInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Early Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchEarlyInitPeim

+  FILE_GUID                  = D9F5B28C-9FF1-47D6-B503-3DC23BD345FF

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchEarlyInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PchEarlyInitPeim.efi

+  PEI_DEPEX|PchEarlyInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x640

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..43c341005a38f080bcfc36c46f223797c713b117
GIT binary patch
literal 126
zcmV-^0D=Dksbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0^Mui{|8~FMtiba
goPNb8Tmp^=m+Rlp#!0?Q*#@Pu4u%5*0|NsC2o*v%X8-^I

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1f919ddd9de3ce11af2bff35a05d4e2ccb1d1e7a
GIT binary patch
literal 102496
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.inf
new file mode 100644
index 0000000..472d880
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitDxe.inf
@@ -0,0 +1,278 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitDxe

+  FILE_GUID                  = DE23ACEE-CF55-4fb6-AA77-984AB53DE823

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchInitEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitDxe.efi

+  DXE_DEPEX|PchInitDxe.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x16C50

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xf0000043|0x16C58

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.depex
new file mode 100644
index 0000000..0e34453
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.depex
@@ -0,0 +1 @@
+sF4e��K���
a
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..22abdeb78bed52592e160b3590c58991c4e645c5
GIT binary patch
literal 22976
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
HLVx}rzk1^5

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.inf
new file mode 100644
index 0000000..1a508fc
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitPeim.inf
@@ -0,0 +1,150 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2016 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitPeim

+  FILE_GUID                  = FD236AE7-0791-48c4-B29E-29BDEEE1A838

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchInitPpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitPeim.efi

+  PEI_DEPEX|PchInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x52B0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x52B8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## CONSUMES

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  ## CONSUMES

+  gPchPlatformPolicyPpiGuid

+

+  gEfiPeiStallPpiGuid

+

+  gPchPeiInitPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## HOB

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPchPlatformPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..89550b75de68aa683924135d77708ae9cd5b8634
GIT binary patch
literal 162
zcmV;T0A2qAsbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0=K`+^x*dWN1fCV
zsPRz2kpgrpaKa3LF+qn$kF~g*<g5bSYvBI}VWviVvRa&e#V1?>jtH0Q-_OQLzDwB#
QrLqo&0|NsC0|NsC2pfM&K>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2f6d5ea0201bbcd1de1d1d2cf341a88ec05a25d2
GIT binary patch
literal 35840
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.inf
new file mode 100644
index 0000000..6a3e4ef
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchInitSmm.inf
@@ -0,0 +1,290 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitSmm

+  FILE_GUID                  = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = PchInitSmmEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitSmm.efi

+  SMM_DEPEX|PchInitSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x7A00

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xffffffff|0x7A08

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..6f989cc9199142f9565a01ca77ca98fc2e1e5354
GIT binary patch
literal 108
zcmV-y0F(a$x4+Ev;P(ATozxJh@le5$0$V^JIhV-VM2PcDNs4dxHUa<yAJZ0n7DK;?
zU}cCqKq~^NWdTdpVIxkUwLZt3E-=*s_VA+<N+$3=^5EXZ5;QL~0(2{I!VG{hL5D_<
OwYZ$*tOElB0|N--m@hg2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..a3810160d89994bc12a4491f2bc1d6fbc71ddbf8
GIT binary patch
literal 26112
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.inf
new file mode 100644
index 0000000..c523356
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPcieSmm.inf
@@ -0,0 +1,251 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchPcieSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for PchPcieSmm driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPcieSmm

+  FILE_GUID                  = acaeaa7a-c039-4424-88da-f42212ea0e55

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchPcieSmm

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchPcieSmm.efi

+  SMM_DEPEX|PchPcieSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5E00

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5E08

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiSmmIchnDispatchExProtocolGuid AND gEfiPchInfoProtocolGuid AND gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..f7e1f3bd74f719ef64ad3002469333823ae662d8
GIT binary patch
literal 9440
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
IkniyPH=<8$%K!iX

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.inf
new file mode 100644
index 0000000..963eb82
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchPolicyInitDxe.inf
@@ -0,0 +1,123 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PchPolicyInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchPolicyInitDxe DXE driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPolicyInitDxe

+  FILE_GUID                  = D6AC4AC2-8BC2-4cdd-8776-280E1469DE02

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchPolicyInitDxeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchPolicyInitDxe.efi

+  DXE_DEPEX|PchPolicyInitDxe.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2048

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2040

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.efi
new file mode 100644
index 0000000000000000000000000000000000000000..5cfc8fb17fb6566dc3842e74e7fa65cbf6ce83d7
GIT binary patch
literal 12288
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
Q2&aW#3vb|8rZ4*QKUF@r1^@s6

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf
new file mode 100644
index 0000000..c683936
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchReset.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchReset.inf

+#

+#  Abstract:

+#

+#    Component description file for Reset module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchReset

+  FILE_GUID                  = F5883FC5-F8EE-4e44-B386-6021FB320C9B

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchReset

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchReset.efi

+  DXE_DEPEX|PchReset.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2C10

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2C18

+

+

+[Protocols.IA32]

+  gEfiResetArchProtocolGuid

+

+  gEfiPchExtendedResetProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiCapsuleVendorGuid

+

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+#  Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2bc94cca082a5c15da4490592ba12c7767a2e1f3
GIT binary patch
literal 25760
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
B!?*wd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.inf
new file mode 100644
index 0000000..92b2912
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchS3SupportDxe.inf
@@ -0,0 +1,257 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  Component description file for Pch Initialization driver

+#

+#  Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchS3SupportDxe

+  FILE_GUID                  = 14537da0-222a-4bbe-9a5c-212a3cbca9ef

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchS3SupportEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchS3SupportDxe.efi

+  DXE_DEPEX|PchS3SupportDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x6020

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xf0000043|0x6028

+

+

+[Protocols.IA32]

+  # PROTOCOL ALWAYS_PRODUCED

+  gEfiPchS3SupportProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiFirmwareVolume2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFileProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFile2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleFileSystemProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiFileInfoGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesLib/DxeServicesLib.inf

+#  MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.depex
new file mode 100644
index 0000000..028e7ac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.depex
@@ -0,0 +1 @@
+5�c�2�I������l�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.efi
new file mode 100644
index 0000000000000000000000000000000000000000..fdbf25f45fbf5c255759286b689c2568a76aee59
GIT binary patch
literal 7616
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.inf
new file mode 100644
index 0000000..42ac7ea
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusArpDisabled.inf
@@ -0,0 +1,144 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusArpDisabled.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus module

+#    This version will NOT include ARP support.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusArpDisabled

+  FILE_GUID                  = D82D57AC-99F9-4c7a-B591-BBCF8A0E7FBE

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbusPeim

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusArpDisabled.efi

+  PEI_DEPEX|PchSmbusArpDisabled.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1C80

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1C88

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  gEfiPeiSmbus2PpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiVLVTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPeiSmbusPolicyPpiGuid    AND gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.depex
new file mode 100644
index 0000000..d57f41f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..54701ba8721d3374b42dcc92785ee5eeafd0a885
GIT binary patch
literal 15552
zcmb_@3w%?@vG<WBK-hvKz<?9nR!Kx6f&<2qE%`;{hXgb>$Zuo}j<IEA;a8<29w`ZS
zWG9wS)XVMbrfu%Mq)l7;xDCBcd8Osbm|_#s0!eR3leUmYo1=&j2NK&P27UiIM=}PS
zklU~NvD)3)*_qkd*_qiDF0N+&;m_bdJoBGF(Pm+oBAMbk!snQ{I}&6wnFqB1&y$Ac
z${FUtIED${E%i01sNDDo=16!1Pq=X~+E;%Hd@^t_i(!Uj471n7Fy)gW{DZJ1oMRh@
zxofaSS{JRA>WLo>!#J0?8|t_^hS@PkT6;&do``2=n3YQ;G{%VmGi2_F)~LomW`-GD
z;&wE*)k|xlwK1eqswaHR43l43#dBIUzeB6y%e9Gt!g-O*s~$z>s7K{L?R!(+7mB;|
z!|*i!vA~Y`kt_bwm!28p3$?1+4gD`lpDJ`|x{@!_sxJK$J!Nfdj4-N}1!JTB7eEa(
zt1kTvgnqhK#H*rtA`P%7On>3YQGfZ#u{VePqrkYH{?8=(5S92Tgeh1}=ss-Q?x(S~
zvfw#+{FL2jVO1B=;V&Qj1ootQypcbBA&_^qkw29dybvh4ay58CoH0HD4b?Ql;%AUn
z51Bhy=IKJTdKI(w#Cc~+U=bpJLHG!k<<I>lhMzyTgkicPUbQobhD%?~pAfocF^t`x
z{se}*hcS}66eF25;-V4Wn)8EQG#12IA&uQnW2>bx(+{4+SnY;&7@p&NhK83`A3T6s
zNFj{S^RpSIf<GVeCh`^)82irclm~52+daTE3qOElLiJ3BiFh@9MPkI8%onR8-lT|E
zCFrL!jPIy+eSb+wSw&@)^GRt+JEjB*wMn+8Nh%lPY(^E?^>e7!cQo;NI*7kTyW{ZN
zX#LLtOzIA9pJywp5Hc{c(zUgkKPl`&(|1%Y458*v`R6`E3w+6Yn^Ua=&94$l3x*Cr
zgpSa?*sy`Pc2CR3f&9eM8R+DzmWY*lxmYF5RS+;aekxU(3bE31s6<OKC-pKtkM=0X
zyS!Q9fAk6T127`t02o2UBogr(EJQrC3-UvPFgg&D3|&w|jr<Hz%pi9+yT3gyU`z5{
zNb>ciR0^vhh252C=a1=M8u>s%>&epvez^-gu%`>0yHj8!y&!w=)y2^Gzk;$|!gDc!
zyd-~yEs&@1Z&5glpa@B`kzIR5m8v0IGRZcAZE})Q5B)-t?*U0Zr<QbP7S3SYt`FL4
zH>_W0xA!~E5;zF3uvLY*YbC(50AN`iI6Ms7T?5r&g{tnCxY@oPS~bHZL~z1|B{(bg
z{sV9W9sRtxKkUAI-R8kWI#PaR;L9m!sQgNOu)oULE>W%kWt_=myB#JzO`KcXU+GG!
z7T%(fA*f=Wvj@0NETBWU8$fY~!wyLozJpIHG2;D#P>Blbp2`0~oO%GKvLl=)VewW~
zpi(g~l?<Y@k5sIOPk~+gA4yzhCFhXnx2lC7(~_S9GpOb_*dS=ezM;1NY1+dn#An=q
z+ol0Y>4eMch}aA;;_l$Kg(4oTyW`tWGA>zUFU=4wK4LRLdq9c9(o39!5{GJV5N08=
zxYWXrpgP}C)gBq!wG^gXR_RI<z781w1>()_8zRm5&UL`Ye1pVK7z*%I3!5<C-WBxD
zbt>+|HZzzk*-IT6SakK@BUJw7fM1+)8B@A~Z1>NgunPV{mG5smJHI+cs^R84--c|5
zQiuw(2;>(Km9X5`KgJh;|IX~+d3CP&!U!yY-8br**Y}Q6cvtKM<pXwmV`hQcJIz)Z
zDND3RnFq=glEzDf=i_6tnn_mexU9d1-ea<^Q;Z90lLYPB5Q#);*9!&U6R@fG$}Tw9
zLN@GC63w%3SZD8tyYih+g2&k-j_@A~W0=fa#sbAcNuYRaz%mBc#+0~ZzH@K*2J37t
zWwlFg7ak>39`YSc>K<l${tFnshsS2I-T#4BZ?Pb%vuDkm-r^9u&l2ugGn?I4{4V?K
z3ytzY0N!i#uTcYXejM^XATt5EFb??u5EURp<B&^$!~=419P$w$N<cpBdqXJ_9*#9e
z#0Edjzea)02g>N_P{N>}4No}?1MF}PN_tRZt#*4Ye{2K)xAieyINz33aZ&gHdhfN)
z>9GjC*4aIlP_K1XkLBH7tGdS$?zOT#mh-*Vnfz)+kLA5y>x>@Dg<h+w$MSx!HKE5c
z)N76Jv3$^Lo!(=)*lShxST6B>eL_-?<wL4L;-g+GW{&hu?F%X6f<48<r1BoiD6|g!
zOB#==UsU|`YL~(;OvmwbGWXIp@<YNJNa#DNxwe3kl1e_EOux#REFuXhKykK9>(!vm
z6NgBN{-r?iXh}YHwG`C-6{EJEiirNWOI|Jf2#(14grtN~;rw)Bq3e!pXZeBqNP8o%
zE(qQ=5N>7nS#^O&QZ@$@<)i!=;g?q;5ggSO{505m&Q30Ic*UF`w;*DKV==>I>9oz@
z&!G1atOS^POzOExleSOKCBohXVfj_7uHzBiX7~4<21)*A@VCR)){1*1`LIhc+mf;>
zK9^R?zvf&iq2>X#cZJSw&)Mvbm*QC$SXHw7g8a$NLy7W{KxK-sRph>XTGSo(7O;T!
zSnqG-3*sC7)-2RY)F#vl)CSa3QD>l5q0Z?onAu}p&ddGQRN=U^W({vqUR|N%SEo1|
zAc|h;dt>J^B@WuN@E;`nhT3&xVU_&FD*iG*)pyS48<hK}Mlulkw2+5%b2~rPtjEyK
zWm5?QDs-QfWQ6xaRtHa}(7#kx$$!xMT2=2Ox~>S9%#Zrs*~#uZvH5r+U$iU*Y_l(O
zwyXVFXWgOR!xV;lUjyEk_<a<D`9UBAa;9SfyHB+Ys0&5Z_rWcof@3<u?(0zB!!X%{
zT*B2O9UtHA4)2wP<I=!>UH^nUtFuqDmt`u2XR&Mi(1CLihPi7fdx%pY>dbNOpxwx=
zKDZaPFq<?0`|KBf18>BiV)tPg@>A#gg`ZFC_af3==tpjdY*#<*Vuasgv}c-q&)2+j
zUGa9|Jjhr(ukL<K#<<@|3x?zN%AgY8d2JbAqc!M*6;=Gl{vxf$zeAhSQ>dNM9pRFE
z5g9k9`*lvqH*3w^?|Bo%C>g$ox;CMi7!+zX_C01VyGO>&7Zw15G*lJ2Z~z%dNA3D`
zNXhyUp_3s`F$QTT{e{}(%HATai625J*Tx<1I4%Pjbx)CYHcC=Yxi%U7L|-I<eVoib
zqW$egkh^-EMv(~Q$k=Wx;D;&BhQj#nwa_T&5{5o_4Ad0nOu1jaV7T+|h-Dq2D=-oG
zO~&S$A{@nufwpeHI!MwZ(wgmld04IwVha1{FL8Fg@kBxyI*D1G*%aB>$M>OaD%9q9
zr-*zBAu04D0I8*N#jOp0?dox{O+tW|%;uUZtOc(a-y*bqN7dn%*?n@7Bj-9fdgXRI
z<eBBmmJyXi_R(_i^<`_=#~(mrZyf0)Tu5W;@NQtSkLqIxlygRjzJv1=BSpB$;olvm
zw1}ci5DhFmQPiP#s*2Q}h}}ta%@Cf&JXf6XBr0SBzQ}ZL3O2y2Cu^JKYe3e9eM{*M
za(BR7bo?m0PqEnMnkH<;gaW%g`>gvtSY9dy&7hd%QV8oYVz>Ju3hxX^yG1FQ!PM|n
zv6c(VF$`gn><Y6T?!^Y?ivdEizQ87=qXjXLD|Ahjgr2iU!FK-@>)fN{N`?O(6Af*z
z@`CVVsR^4Co<cKVQz1-~!GA(Y3^v#d!8N{7xo4I>80rFHQ6HgSftDD`LO($Z`?q+M
z?P^Dp>fd8uss4pnb9KJ=Wn2-y*siAlp+>idW=#<`fu}u3=6)DS3AR8!;2YI!{V@*D
zJpJoX&q@sUC>9rxf`&*r{_IdDW(q@}NGs^L5LzTr`T|hdeS$r6u}1-)ai>1Wk9NPu
z-Hus>pmY@zdK6z;Vb8uIQNl@DObU7z5*-$e{2W@axjzEaHKoTQ6J9{e9{N6s410O(
z>uBgBnc3`PWXz!XQyTA4Eaek$f6N~BCSVi34VX$3RtNGTfGhx{3lQyDIxE;Z4FEm>
zuscEuY8>~y9T#}{%Is0kz53VraG6jJFx>IBnY0UDq&XJfl?L}aw0bn)I|@C971`PB
zqYuF&gqJ{xchZa=3lqM>r4r_%qm?1?9Qmt#!LaY|iJiwNv?1{zpCau4IOb!7pQ9=5
zx9~KYzTgb$4h&}*>Hw9%Dn^g2{XP^*_E(|=P+C!bhjJ1n5w{Y$s_0Q?p-gbmy`2iU
zXdDu;?(H<Ar@c&lY6(ln<>)65szg-bkHLq+T^3aYHb+KIWeZ#8I8}?GX;byVm8gXk
zuw^?xKtt;>_5_V(M#mP@SoVll!5<4JlvPy<_rEV{nF0shXc6^Z`z_taqzgGs&8g;p
zFI<B4*!9DiMqId6DS+k@^e+U>+^V1(IsumxaFBrAuLEWy7;fgj7oH;+KXA~T&oVq?
z%^u(s*&nz+LQy-Ngw;Y=Un4AB)%MEPA;gsM7x~M=Ci3TE{vQP1q1Rwi(fpr~{mc0k
z3cpq1Pvr;vTNMa3v3X0!=ZU%a*MTj~qjLZa)Uw|UZh%hzG~6%a<~ny!!ro29pFm4c
z5K<%ma^rjK{vb3%XmX$p5?bFl+F#HjwD&|5WDOIr&W>a4k7Du1-X|@`SgMzR7L6Tz
zm012OVI7ErAvgNv6If~q?aVlui_mx=Ahqf|PeH@?u!=!6Hv!MJruv`_wNOY{Pp?GQ
z)ooF7=_LV+TFmurc*F<<80ZF}av_d0B8Ai!k`dwfQ_;=_h!IP*-yW6t1QgncS6N!(
zG$ZqH?gASpv9}53K=vI?4yd%k8JHJ{pp^{Zi%}9_KPKHQOI?bHEd{3<xuilL49k&0
z6VjolkT(dYAs2lAG=4Dj4k-7FcgvE9E!7V6du&d6M{#0h9YO>_O}h8%A@;$wOEKGq
z*;tNvJ$QSxtb%{7vI=H6$7xQ5W;RwIRHGK|CA;8r>19bj?AK>*HE;PMe}S(mJXiye
z{C|aCgEQ=Hp4Ioe#O$qR_uB_%f+Ia3kf8jE!p(oceP5>bBb0{)oEiRugY?u@CHxvE
z`(Ouhtj4?g*!@DFSSj=)5b&e=mzs_>f^6qIV9vN2Ht;6{wX%_6`K$b;z6(j6ZxI+N
znIij7TfRWko}g)ioo^64`=n<|_b@kQHGet$I*HN$^i#C2L2pInA!-Q;Ks&q^i-VT#
zoT#NgfsCjnS4K6``K3~35Su>N*+Ysk(oiCXM7SL%h`%VNhtJSxbM--@EL;L9`$34q
zgjJ2cQ3W@f-EWPP53&2FHfHyE&m(p2r|gmLsc(;#REFmVDwPL!ka!K)F(`BvyT39{
z{)+JLkXC&5_-phwM458c{{%^Xdg|LlcAQSHT|0><f9!d(jgeQg`#ox>Vi^Xpn3KXr
z8Z4_6&c2HpPGcRCOqJ-tUgJLy=0n^32|vAu3PL<Ofz?X%)cmM025|xp;Ehz9#9tIH
zpqKr=HwjOn>dYc-qIYH{2E5Abi(U$kVoFW<rK+FAd_EQYt03lV=Ywb+%A#X(LU@Iu
zvpy0|?u?LwbI*1@MWgxB=m8qFuIO0Kc+c_!Bq`mBN^q6)7msxxhk^c)R)r_Zw^0jz
zLg(pjsiK!N8?G#PKPw)6E6zWwnoJOKi2EZd>h9`;nl#KRqgjpoRN6ioo-69{Pyox5
z5Yj}lH;xC#$7f69e5GQ7SKLO+=pY;$F}Xki6p=@xKhF0xW+rgA<<fdR)6I>UssiuD
zb^QnO&|lZDhtJdpyN`28CK;C~At}urIZDQRQNj_e4CCS1s}Ehl5k9|1!wvV!d`CXH
zkO%SK73~R6)JW9SCD<IL4Ou}VoK`!eiJtOG{V*b7rdRn0-f2}hC%5??R?B*3;UaOQ
zPf+&c$>haqYqnRp<E>i0Z-e-70Bw@F@gHNxv8ha{El{C?HMwB_c+e?US$q9v{Cv?f
zlOIfY!F!IL9Ha*a@`7E&y8-Wk{1KRs0rwbOYt}0fH9vvd(sjPWXpq(Gu%}vQ7Zi3V
zAMWs=IvuL}72-H<C85m;<OT?jn*$N>zRNnl34}vm25R_afDV&Nhx^Uk?b*k+sGNIg
zu#5)x4S**aOgKp#vC+s{8hMIFVB`${!bm^)WUfFkVMRcj>l`JtdZ0;y+)ILBp~8F-
zfqk3;EZBlX5)nsTC?0dOkR_2wa`t3^MAJBlcP@)F?EDMkMD7F;qCi536iApN+~y+O
zY`#x?h$uwbK8kB!YFO2Mob4I{aWR$W=voMM>QHh}9_)^=UFYyZfYcD^53<i5lMm2X
z=mdZ`#AcLo5RT8rC5`pH1gJg;rW#`2`Ih+(U=?a@{u=Ry$s(hikCF|T7G<sPay;9$
zAMfD4%QM(6x7b+7%@1(em7OOT99ch}dTDY<M-fqU6Y^933Ke_!%QE(G9A2z&kw_T4
zt4Lc23s~v9d>{Mx55Su3`WCIa&nKW+2w{AJhI`m2#B*Qt2{LXLzS!;zf}c=^7Kn9R
zXbx)dNXEXw%Xw2E0`yGm;ouW^i`o}d_$})2G^&Beo5yHzp#~`YvoJKFd|>!aC_=x4
zP`(qg&`+qoyoBxguGmQBzQ{hdM{H(pxzl&Kh@0-a+{|{<8hj_z;fJFVP4k`5kT?jI
zoL1|*oa)wN+md{jGq>Kk`B=RCOyDc0NHg*wQq1AFaoqsb^C#M2nn!9}d@4$EPIQr+
zv`L|-U<yFegua0W#-IpM{~hS!xM>*v6{tV9^S;ZQ*vF4TZEV+{N!Adyla}O?uU$OI
zt@nkjY?lQ(^o6FdU9+%-zR+~GD;JPezL1QYi7&Q`1w1sJOt46sjPuHlYnt6}9t+2_
z`(?g91-3UC+OC0Z)P&9=;K<9hNuOm2@!t5uPZ&Y^dD_+@ZFwjc21T<(uxMGIVMwsY
z=dcnwIH4I7JS5>}jtj@PkA<i6%VMH&+9LSM_`}J>awW0+gK!0hGq75LK=(&FrbXH!
zU*A-A|B&!I>XvJZ*!_6g&1Y@+nn_<X=u1Uk3G@|DU(@MJX)D2dvktWJdrX&>uB5KJ
zZNgrhn80(|XGr%)b7)E8G45YTXUD}<v)?+BPX~S>gJfX}3Z2GsY`vPcjDzAwUZcGX
zJuB`_JKNO+$!TxcuD=mcYII2r?l!SUPZZ+zvRwsehHQvcbZ9>10IZ~_I_+=`BoC*v
z`|_q>HF*jf_LLfO`iiqTow0=xFIw0cF&)-ovz@f6&>|e5s7HYP-+C|96qS+7AxIup
zfjHT)s2-?B%wQG-?|_#IohGyUEa_tsbRXY-8-Kd<O~|n`kRPEd|3cpIt><W6D&OTP
zTj%qJz;5&qBt?<4hwxwk>Lt!DX>o;Gj#hRBJL5Z=7^<QJ_11Bm=*|-zSasLy+ot>8
zx`IWTVLRkqPWawXdo`b;SM%6+@R;^-_?q68QP)J-R5HJ9jBg+9eYxXJMet2|Pq~&I
z?vLZ994pkai}`-vIVJloxMJ|MxZ<l3FB5!kosGHe?#RwB?ZB&~=QbD$gz?Vuort5E
z_l^A3cZL}`8`kmt3)L9O6^CyR&%@|^{IXPyy;fnmQk)*Ak5p9#inQ&5dQ^<)gQT0q
zg9#%Pti3a_NR1ec2C46o<8__WHuHV*4{Aq7XtQ9MYw@$6k{?)1F@7x`vF0<}ETl3s
z5RZ_MjmX8RfU^uYJud=+L<%~DeM6>f8Q)JkzwnND2&;kHVY^?K?9~Q>n$RE6xuqY0
zBY+vf=E@K6B2yyCidCU+N9TTCZ_-GN;Z4Fv_^Wv6fscg<+U#R)(VIry@ty49H3)3e
zVu6hgXE!)=)1fV`S^jbOh3NlpNTrw5%yO;9qX3cyJ0ipSK(Zm1qLz0#c-a=?b(imB
zpQV%pQ5{S)7`h7q`%6gS3?N~4X-bfDWer2Pa>@#jUQ=QKon|v!J)Y}WzztnNZmF#N
zdJ3g9oj)nQ<jI85k3<UQaSGtC0e>y=KSJCgBC&^vMc#)Y!uC>EYDu_O#Cw65Op2)m
zrbc8XNxEyC4>YniDlOiY*{<W<JtQIy%$G1{K`Fbh&*qYW@JcMuPSawG(;qis0{g8#
zSc^IvGP1sB8JxNrc;v&C(ErrFH^s!_6nGf!LW)E3<Nlfq!bvugrjS4Bk_mF6iogId
z_)$5hHRp*oN@TerlFubKS7X6zvyXUl^uau8(ngAW2R-SuYEkCby?2207osY4rGWO2
zKb%0DCS?z@kFJORftV?@MV&je4YcPl2!q!EF~+z17>SD?%ZnIEVz9}nl+;&3RAYKT
zsyS}`ag;d3%r2HsvE4~949RS`sSrXJPRC<Z^g<JaE0Yr0Iy_w2i3@+S(uJR+1Bq$E
zJD2DQK(!cYBR_z{I*i*^^bG=h1C}JdSm|Q$2!j9Bp%xZGE?gzV{Jx}&-o8c#WGpj;
zcb*>H0S-B^(1SL#gpV$O*Hdf#ma&hYA5~%bCxp;@SkxK*WZ%1r&Nt{z+4&}(Rq!iI
z!fF0Q=L-OI2m)|?@5BZEWejtKT{PnrcK;}5|AE?;u|8ose$kMB5|(}3C|(UoSWLbC
z6Q5UBW+^SNwOCixT1rdTlxlQkTpj22XmT|R-HYI780L<f1{YmNM1}}7{)tmeRmQ7k
zs*`N3M}{tbI6V6C*wxvI^VU{(JlgeG&#te3^V_#4f01EE5ulkPGR9W#ENj{5^%QP%
zh$O_0Wt*ek%Q<w5G?2y3rD!A+$CjpgM_xmN+u`x#F5H%)DQIhHscUTz+iTh#?mDii
ztra~;y{ff|YpQE*ddLyu5Thn8iK)-3+1lpbT+`CJHLa$yc}rTMNWIk2SkTtsux;K{
zQ(4#C?ATt}<k*^4)>dCr*5>7$1<hU$=Wy4E^3*`)nizFUE9c(6q@K~~^4F{>vgEB^
zq)W}sUABlcHK{C?)&`P9q?G4wm)KvE@h130{MBt-Q{(n)$e?4bYif2hXt*{F#BQsv
z;~bh6M@yS~yQZ<tty%5Zx*E&6gMRys@*Jlj5w^88H;X*S;iBqA{DM-Av(BT*uWQhh
zHEn8zb-1O?0<C|x9-#_o5ifr?$s@@r%4l;t+Uwko@-|>k(86S6QME~WUg6*>8k!nb
zI9g#V%@bxub#l}A1fF>w57r*FzH3vZeY#;R%2XV)dYhZC7gLhu8eGH{aSNN=j(X0~
zFd6>!W7p=aYRj+lI5c<UYErkQ;$yX1QZ;wqEghK&gS7GZ{4@58j$K>pHPgpw757Y6
z<Y?W*IW_lbmMzlc<Z5)O+pN(KV7iJ`tIJm}Ds*_bCfE>8YQDFz(czYS$#rrSODC|X
zX`{Q&y}gDOSS%VdAf=A>GR|F7(AK^kuqt<5I}X0cp7~t-agN>fj&asSO&*Svr_*g|
zYiiKkyGWBN3Un)ZAW2P8Q|o3&15uFpQ|rFv);9OnIyb<rn<pVG;pErVZ=M{1j_D-R
zn1VKME2qiP)NZoXH`H32w!uocd~Z{8LoEQsb=#U+ye-!Rl6C_7P5f3maB?SEBiX~M
zR`|2lx@OWb*0jn)0<3DKX&PN@a*9TDZz<5y4c<-E)h%hHXo%9J(?7>tlIXg*%S6Yz
zh|$^F+??iavbJ29|Mj*#i4Co4qZPtYH??}2>TASqu_tP~QCj-{4_agex~PYkAl5`!
zj64G?X{npU@@{2!g^rEhO;|>m!;SDpLf6DVq7h2rT(fRr-FnT!I^DvCMOmoh8Oh*p
zwt`KoTIx1ARw9ZvPil9cB~OK;u_?c;je{%{nLXuo8=J|9YCdfM5^gFhze$Kq`DHi3
zZpByf2YFJggD)YrlfXosY%0B(=dI|M;<z=nI3``%r;LfbZbdhy9@HYfsI!|^e}kXC
z!IqJCtZdszl%$FXwTR8heHn(tU_J?(Tb`L4{cg3x-FBnjjk^6$^Y~HITa0u1+3Sk>
zpc?r1rq)fOdKjsFv*fyHI6;O;$T)6N_(KGYxdSF9*JnG;JWqX7lSC!zH4B@zG<lFU
zQA{Nt`B{4!lNoa=G7Q`FX{C;qx~A5KSWNmnb1UF~ky|(#u;kB!Usl)Xn5ZM&<cC}I
z&1K$toJ<c>Rp)LcJyo=BZf)Dzs#(#zz1@km#o&dGW(RUcN+ZSWE(Wi1H%$bO<40MR
zx3wYDK*~vaip_zs!I>0_e=kwghS+0qyW89pYqnsa4H{dWyRHS?0AeayJ>K?qxG_fq
zLkVV-ZW$8yn9sV72hvkbDdO37%$0KH7<KR$Wwp86I5CT2)_6HhTO-gtV$AoDjFoN8
z-WCUL4sN%%9e?-{?Nc_!tZvg3I~tnm2v2Ni>Ya71n;;p3F-~Je45oITs8UU#qqQkI
zMm*ZvT0IV;(Sno&s>a``z=3FRZ6JCy-$R!f%*bnY(+aNjH%jYYRZwh;t)|>sKHjDk
zwbi#Z$HrE**0;5^BZY#y)l@p%9{4}vQHEO+RIpuB+0@o7W>^eUP+Ab1#vo}VeT=UW
zLc??8)}TwvBxAYO*NaI|6yJ)Q#rWP8K_Om54C048u-)C((&PaNX}52ER%|$}9J#Jo
zBbES2$DN7VGVQ;ZLVjkxbJNikuUm|6^580-hyN4(iq@ujBp(x<gTw)G9>7-ki!$Uy
z1uOGPmt`P#l=vc7`An%NqpBhAc<TjEHdR~}a*U`OiwgDmM2Ss;xk|oo(dQK8=7|s^
zrxm9NR!t6hIqXB~Z}K)ZEN2#`nzr4yFx4>rm9}kRY8v&V#*H=Emo%TkFwIYESQ`B@
zG-x!`%%U&gf%aO$pMl%z3~EgH?8Z-}dr*QXuc8d0sPqh@K}kU|qZFakptPgxKzRb?
zDU`h^L6jF!UPTd5K15L%7)FhfjG{v^pcJAMp{zw|K;clHK-rD*bClnpyomB=6ai%n
zg+8gv()5P(45KMCFTbGBV!f6Bx79ZlG@8T%6l;kmM;A*x7a<ht9!cHSh)-%`qh^Oj
zhgXPbRx9z0ed7s=`4x&HQz`_XQ=PP)YCI}2i6{p!Muk4HG14*pRQ@91R7%SV%k)iG
ze*5jE-#346`LPwIw>?+zQ_A(ROuVazFD>O8n>opK<C$euo<6On(2`%VqPDUuEp=J?
zHd9882>d5J%FqLiNPGOQ3doZ7hK=~~2=d|e?Yhs3g7TsVp_E?(8vDCI`g_Ok-WBa@
zTSPxg|5d1PHek`e2_*fQuwbdLedwWw8aBfHi+}%DM6{xR6G;CrD4F^j5s<Ha&QbH&
z6jR50`hR~rx5QxG_hehePrb<tiY{huJ@bt}&iZZ^v+JJw`-*?!kUj89-Ce79|9bhr
zQ%h3+ce(J@_Thvdnh!S^f?2x{ym^h}|E={L&~^GWeYL(`@7C|o`}JSbe^0+#{}cTo
zeZT${{aO7*{Z;)`gU+zd&}{G+It{#GmtnslXn4aQ7~VGw8?G1>=?Uo@(!10DE&b{A
z|4I+0A4@-%{$YATMsh|~#+HolXB^Bpo533IG~Q=47{6@XVEl^lKa2y$)5gCTXPD-j
zs!bl#!zRD!SEk>ap3i(W^P#NoWc_E>&$9lKRh#Y0?#-T?^GePKIm0<gxtiQX%jwsU
zqmX%HT4S0ktu@V^wk7SMv`5k&O?xb@H|=X_-%R^X+FNPiv`E@C{W5))-llixx9k5?
zKcGLYkLafxw1y>y2MiU4uNb~+_&3AThQo$I!`}@T43`bI^osPy(+{N|Pk%N2&2%P1
znUR=rPsZtt*E9Z>@qWhD47Kq#qt0kF-fw)!_(S6_j3<l_m?|Lq)25%8&X~@chD}W7
zyi84IR%T)5(kyS*&aB;8zs)+6bu~+wotOPUcI)!)<!>y{y?^9>`sD!sn0cw5)RU=y
zNxhVMIPK-Mf%Mbq`ixxsmk0)#Cpop<#%GLsj6XN-H9luNVEm0SXgq2hG`?s&W&ES@
zRpXzH=ZtR~1><?+knuy~sBz55m=q?ZNo7)-5=}{_WRu3EHR((#rc{%`WV+GdLI3{&
DNF_s`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.inf
new file mode 100644
index 0000000..633f339
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmbusDxe.inf
@@ -0,0 +1,214 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusDxe

+  FILE_GUID                  = 99796403-CF03-42ec-A817-7183411D79E2

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbus

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusDxe.efi

+  DXE_DEPEX|PchSmbusDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3A40

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x3A48

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmbusHcProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiSmbusArpMapGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.depex
new file mode 100644
index 0000000000000000000000000000000000000000..a04bdfab3e6c26c51e1b877ec289d7ea324cfbea
GIT binary patch
literal 72
zcmV-O0Jr}Fx4+Ev;P(ATozxJh@le5$0=s^2FB(eJ5t=vvkS9OEO#=4tqZ3Ld@ILb3
e-o+9$FEj#lD{#ULfH6UbMvt|)oaC$n0|N*&`XM<0

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.efi
new file mode 100644
index 0000000000000000000000000000000000000000..346a5c92f5c76cca4cb9c3e03b84833dd5cd2ef2
GIT binary patch
literal 24576
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
V(RSTl-GJ^x-7($g(Bt3x`adK;!qNZ$

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.inf
new file mode 100644
index 0000000..37a8491
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSmiDispatcher.inf
@@ -0,0 +1,181 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmiDispatcher.inf

+#

+#  Abstract:

+#

+#    Component description file for the Pch SMI Dispatch Handlers module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmiDispatcher

+  FILE_GUID                  = 6BE18C9C-BF61-499e-88EC-5CD57430460C

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchSmmDispatcher

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmiDispatcher.efi

+  SMM_DEPEX|PchSmiDispatcher.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5010

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5018

+

+

+[Protocols.IA32]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiSmmPowerButtonDispatch2ProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..948c2851afd39fe7f884555e6b0d8e3f51ee8bc7
GIT binary patch
literal 10304
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
KP1n<#VE+e=@4B1-

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.inf
new file mode 100644
index 0000000..9b80bda
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiPeim.inf
@@ -0,0 +1,139 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiPeim

+  FILE_GUID                  = AA652CB9-2D52-4624-9FAE-D4E58B67CA46

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiPeim.efi

+  PEI_DEPEX|PchSpiPeim.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2700

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2708

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSpiPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.efi
new file mode 100644
index 0000000000000000000000000000000000000000..91908a9176f7d63f7b7c27c753b5611a3257ea85
GIT binary patch
literal 23552
zcmeHvdwf*Ywf{+G5{6`8CL}<RsDlg|3hGQIkC{wDCL!VBO<+P^Bt#&P36n7-adHNN
z1x-AO&2St`Z?(0pty0@wZ`F!d1rh}lgCPjzC0ZU<5p8?oL>ts50g<`ib<UX(9-_Cu
z{&7FQ&mBJJvG-nU?e*Gguf5MEd1cH${p<XvG5>Xl_8f-E4N+c3@H7)TEiz<0!=#~F
zCpEpI#gi_(R2JVu<@eE#Ehxz3)T8T1y%U-5{A*&E0}8OQnqdmRGt##M-oZK=S%B@Z
z;zkUSte2~SM0eiduB>1y80O^|w3F<UaM^H;`q>y}!5tD9(?&GvaglC{agF-f7^e3Q
zx1**GvXD$n6E1>Zifh!*#xPl<ivRcezgPpsB|NLw@*DMPzEB_I%bpalTx?KUh8xu0
zBitE9S6}ECzx9vt_V_kV4t(uB^2Kj1@Y#Cxisju0q+f}#6UZt)SFiTI1!&-ueDN#*
zf4_7E!IS`;$cqqP{2nEhSTCca9hf2vx+geq_Mu^K;h_s>2ED_8yd3{o2_LKyJ!P>#
zUM<`XU*!i{2RDQXt3vSFv%I^Y2!egipA&kL7-knaerxB3>GmQg;F|>9WQ+_wDmxwr
ze0w9_gnLoP?a_ME4fit4t4_FnYrvy*X5+<WD&zMHb^w%mlj70bI*68?)MBBQWNP8(
zr9C~H+B(s8fZ8&s?FOmM{B)w!7VVr}g0?%$+HH6WUri#^aaxSH4qKCk*&2hl&B~}}
zLOqkEYOzM~R!1lXnlKmg3g4T`FuO?(h@`g{6$|+w@+yh*I!RK{@gJmwL&B4&hD82|
zOKrk|>7piL3GD{77j*ny0(MKl!gBp3fO8WG;CTsvIsvs6%kN$$YFCJ!L2OX3#EaO+
zF6tj##oCKYgjYrE{e=BTAzCIMb>k&~pNjwoC4kRS2$J90g2+}J_8ZW(Zza9Cl*@|)
z_Ss@R*Qt^!N7bmWs?m<BAqq~BBxrDZ;+J<9@%`M#!(9JLaua7vK6<bTk>H@TRCo+3
z79HkQ66<wRD<q1u7ZnJ7XyW#$JDSnbZU9z^U?n7BEACHI4={ej&auGjI}WjgQ@FKu
zYT864j3WRS<I7apeVIz<bM+)0c}!r-HV}mH=tm>01+AT9h{R*S7DeW_kt%%IdPrpl
zf{TId@!%xLm|bS<nM;iQ8daqjEwdxL?EzLlTSj!!Tp{8^6R|;jt&IQTCHz$)eiAt*
zI=1oY<e1Gp4182#g8LIwa)}Kc>1SWGq#tq!Q9t4s6DG^7luN9Xk7k8P$ehd|5)Vlv
zc8lIjD(>h7G5%1oa0D%-{)ka6B#MwWLA1{lLS88Me?&(46`_bKcIu!u=LLx1Vw{fx
z#ie!93>Vn42e6VRL=xdLiBmF(WkkZ+21ei^eLyTNHFeS$;Qw-WcmAjm+T2B|DJbTX
z$jrhX@W%IcJk-Q6U47ar>l>QZpM&JiI1R&8S$o+@Ho9wf-Xxd9sqDG$GJ=I5$W<ws
zz2Wu(`@+5RRJBtWX74=p4={%I&eKNRgnr7YpW{23i-7>Ye|oR?5%QGX@k<znRf3?_
zd74-+E#nUgTZsF??od=Vq20BdD!)&arcVE@`OX8F#l^5vEHJ2rdpVy1a<TAv6p6hP
z6Mob3Wu@I*zZS!WKgpjhY5Gd#ju0FACc#;K_YXH`5U=cH=WozOhY!rO6Ei|I^}}Cu
zDd0@8c9+t50qL2GafRR?v?e?NkH^rY!Lk=faNHPfIG}0iKtZ#;w@V1``cOIJ0(kJ|
z>b2akO7q~8Xfl1ubq;&8^>HHMI1u(JXWB>6y)8($u>liCEO#!zx>6U%cqZ^&U4klg
z{zQ)o_DNkliPdm#s;o8oxb=4dQ0xB#SfF`J&vhzYiV~Mn@#bi{hr(rk8>jMPz$qI8
ztaxvTW=CeIH^kIg<((hu58DYLo5))*xGCr~_p6|$;->Q|_ZU%a{su7KdI8qk&7j3z
zZ0fYzNh$Uv`NBOTeZ1Yg>ubOi%*(cW_BQPb4Fm!qp50Bm#)vPk@V>ElY5ov5gcq%~
zXZ^2-TE-Cu1FGy}e2z-9<6*JFt1@*iC*S4z)dfZTNpHDci<$D=C`;POlIw??=Zv;w
z4Jsu|E`-OG@<aR|<d`(sv@hRo>TJu^-)w8Te{#4z-)^^S9_!R>@3a?`2)_#>2PM;<
z+7Rn}4Za{v!M}v#mzMI~eIJs!|0oQ_F-%LRrsXh-zF%&`-KE6z*@GOs)aQE{Wubl?
z!^~jd0_mhHP3vz_DaJFv{c0540>JUT+=pYhK88)>`a)O(-Sl*erJEWzPy9}xhxn)A
z(Zu*~z{AG)qw&x&el;Fi2KHkZ6};4!tDl;0+LuY<<=gY~^JVc6SIs5D9woXPAPEOI
zOmx0CBH^nrJ|yh%he{Cx18QXAi7VjmRuz}{zJJAl`C>%PX9%1BiqBE=Pm-o#C_P3;
z%U;OuTO7k5c5We^<V2Ew8k88yp-@3PWMQgWyV%6t&~H<*ljdhh;j=-oBOEage2A8G
zUZ8<_pV&`N9}Bu5vJ3PyI}Y;)U1OG3MIIK8qKxX_;jx*c9(^x8io06PA8ZrLQZ3lj
zY%hte>N=y+Y_};0^Kl8Y1`n=M9|xC;t3uuumvG9oj}PaB5cVdzjm6Cq?^5_fU7<^>
z-aZY~DlfqNF`Dh&Rf^6k&9iT4cDzAjyox`3v777Ba$TY1t{ps7LKJ;3{RAw5%NbIa
z=OP#;VP8+SK1zk#1iD45;Gc1t?Pq=SLKU5xm3!M-OpgO;v-D65avO)@$9sx`@kxOY
zA_pfJIW6E(34az<Cq}3Rc-@Q$l{!C0)0!+5CL)$-T4zdyNvZQEX<Fl`fNuHhp?Gds
z!A5YyW7sfmSmRNGn<#ErE51xX(m)l_7rThbrgMmGOE8puFCCV|YJ@y90ykqOIgJ^g
z9iPq&1VY#`5K9~4A8$Ge$=3md$_$3W^Oz-QBt^oPc#nz#?&d;$6o1f;SG`?GJ0A#?
zmSXC^ziA^dJke;KAckcSD)|bHaC~?}6F`<>aS-cU9Pd(<ah3?rc+K|A;jYsvt~Vrd
zz^~#gp`J0^L8TW!T$h&nB*b%K^Ww=(=fc^Eo9D--g|p+E&e>UIn%$%34yybL?x2=n
zaq0X@k@Ty3NXA3Lqez<mlSU$Y^HrYfhFLqFgEIRvzYYYDdrx#43Q)BTRZ>iP1rVh^
zUQ89<6{;x#BhlDMxQ7nZOHczTqxn3Qpn!ysEXtV;8q&~+BJ|SD+y(IBdx?UJ{tNPN
zDhto5<Potm@D;|^^uxk#)JS<*8;#7(%><|az%<w<zDZ3@)TDUGj`4?i!!9IY9l-S{
zG5ENPvF=lta>I6lf6NYIDp3q=s7jjeA08caKN=D680=dL{q+p<+leqJ!B|=_@;Y>e
z5x<umvy(==KN<DInDoR!Tow5z5eRi3qYjTh<54wzuVzQ*(DA9AGtLD94}_r#Y>dPv
zbpa-XO{%M=fK2#=r0#jd4W<B*71ODvO=^{fI}f&+HfcjO+yLGR{woA}e-XjIw1skF
z>Z9*HYDhSWhR3A__HP}wVWz2l7@<p;0+{v-^wy7wZ$=X)FRs(T_hRU4g%hZvd6_@V
zow<mb7~vDtY<`4P-?T5JO?)xm9mh`D{41*4{E*o4ky<~bR<?<SfM@pRA~k;~;E4}-
z^Z}19;E4-(VgsHStn&mDtS*t`_UM{EyvPqXZHi+gx~x_rr~e|NTcQQOq6uFsR1#l%
zFSjKodgOs;`IA@Lb8tk1N;sr!&)sBCsALd%KMh-+ia9EZjiq$Eg>JEQ8_#dj@;Ncw
zZ48GwYL#z&r5{!*^ecSp%VFAlVr7#y7%BLJ-Z4Tt)#b%>3CbB1G{Pul_J;Ux^(|g1
zOq1Y)ZN4^Y1bwe+)+0}W39p9N_@lW^D#kMg@!cEiAICrPgvgy*vEQqL=TaJxNXg*Y
z%_mDRstvx{;pR;Y`LMS}AJ0ye(m+lb^c*!jwv_)2pz(aGDEKSXm1g^X{sa=c*<Bwg
z$+(*z4x#9bIWLXhI4j<}QE#RI*|Ja5k_H{N4r*Ew@ucX^aDnk`0v8BlZ*L8-Gr52g
z6MZ0@y_pNB*c-S&6g!a%Xjv^6P$L}l3O~eR1RfbixFIm(Qbax*OlhF#Xr`Nv)=Tw5
zGSVlcZQRCLaiJaqw^3gi;+cs@Im1o`Ksj(KeZ_&Hqq7S2W(B4pp&cwCm+pIs#`Q*h
zF5}UfI<49I@~QiVj!e(hmm}ukj>K{$#Xi199|M{75LgF=#QA<jk*E11hGM^RytR9s
za@PC)Q2qq6qZ3$$fa@rbjSj^eg7h!UbZRcl^OemV=CUpGkLA0$)5B~ie;hD{4123-
zU+XDWhYVJ?S!rp@o~hl8E7Q8)Js@@tl~SktyS_YC^BHs*A{b#Nlmr!?AToi`w7dr^
zAg9h#mI=L(4y?yFzqtjK5G1W9hf(p_A$m?=*gMEU^$X}e#o0*FITS-&3>T(BVIo|u
z)UU=e-ap1PI1d@opr|1JkL(=Kob4+JaAz{Q{;G<6mpeVC>x?q;ux5KU$ej*R9F^Yf
zU1uW2ki~$z$ivNVF`>3$zY!LkErFgH)Ad(15F+2b4hl0Y{2R&fM`1c1{#q`eU{krk
z7&eIuXpkmiUcHSAgksPI#$wO~BG_my5Xp`w?-|Pl#!0I<SNPrjaF^15&h#mC8RH5s
z^DR;e{{gd0g7_ANBN2*xhkGkT_z~4E3KuHz+>D8qT+J0C{1iGwWMr#FYmqB>;zWy0
zf<!tpRhu%3to0>XOPnm@fT~w~5mK(#&Du}4!xc*oq-pKKyx8|3Zq7<leRfdw!V^%I
zG%x7H5bVD}g7BeUiskna1UYP}v`$IHkd6%w>9%tH<SXW+pO4VC0aK1);;OUd6gzDv
z`Nm#2G(4G}u?Q)QOGPz+X8coJ%B57$p#Z;+b%h3jO#xq`YT8D9{4#{H6rgK%2>hF^
zfMw%c5v4*IC~<p3xI(?2@nkm#I&T}xxR3c$p})xtJ09s+Y(#eivc$G<e>8k5jz1XL
z9f?~0urLnfBFpu$)BjwBF%b!r*&!ZfLZ?4;TZkleEVi^@1U0umK#{w9R*x?)P{N<L
z_O6@cd<r^snakRb<0;%lgB*>sKCtdz7wwEIM4Lr!yMx-SLmnlP{>Y+|V&Tb8D28CS
z6nkc%EBpas&rmdBt$q-!srbXo`(8s;0e@n!Tft6rJ`8FdU8rfd<4t%Ub}6mm-~JRk
zZv2U2{_{~#AB;ee^$3dZ`TKGaaIiZBw2l!ia<ld)h}OSLPzuca616HKHv+h01h85J
z^qQ)$jVhBP)&wH=rxB>R1jQ>ZXH0|{8iBc)V7w-g4(7ysniOBv6*0_E4`2pZt@8qi
zy4<u)N(-OTrt~@YqQx_IYbBnF9{)nqQPaK>zP%nr>yTT`H?!2R*E--%<hs;Z&F5%2
z=zd>v>L%cV)H6hCZw}4>47ce5!=9)0mzZVU^A<=ng2b$5B8eXUiVYh*USVtQqRl<k
zxfA?#3}TvUCr*WBASOYSn)Y?j7EkLS8?}?LEn4=DOs-RHJ?Q>YWcZ$g>M(+s=M_nM
ze?(B;c4FBp_PPRV@9yFfmu)xku!6gPm|@3>8=S>1CHBEeOSv93_xBLbU&Kl$X+ds4
zel~iyN!rwMQaj_k_clDV&d^Y1rFR_R1ni02o){##@%B**z*(dZ>|SOg_Yj4XcIP&r
zy0nAzD5_aFf;7_9St@N;(2T@wQe%<eJO*{R7MHd6lUlL~X=`jf=HeU`o0RX%(RL85
zJ>XIMd^Cf(7{P-*AIzXqS$F{hm_IBRUc=rM?LtT!vCaL2>r)~rQ!UANI_*fzXBSg;
zP9%ljL=l}hpIR@tBqDgb4-^i_B+&f@X)D$F3>b5Ti+hT+JE}yUt>AMmh`V*d5%7ft
zl)8hUkPG~k*1p~O(k869Zx^r|Xk~Pn-o6kM0d<FoRCJoyqRmMm6U0h^osXO#hM|q*
z-H(^Rc_%n~@#vu4K18yq1cjs`M&b|Fnh86&RMPIFXs6d{jV^9B?~*s0r`SshgpG2y
z{~;185{{r;io`=Nv5VO6tf?nkuY^&-vxqcbMtVs`dV-LG2r&V>4UsWcjPzig#w0&(
zBa0m=-iT!tDa*hwRQif8>_qa-^yFMrxD<+mRo<Kn!h5u8l%V+@K3~a?<=#+u^TWi=
zB*~2YM55K63$CCJ&5kS;KLJbD61#9Cb}X;_R3Jc0r0Xg4t>A~4yT~_tiSIua2p^+d
znx8My5<UjDxL_4QD`n9AGH5%2%3Y_SYnM{^L)<9Ri8B1VGQ3wNO|XLZGSXvZ&=WG~
zass8`ExHf<bHs?E=C?ctI8phHH*F=+n;L03E&K*b7t1|1ZHRE1OwcWstzk`oVokKU
zAUp@p*h*!LdNbphB8kBFx?+TSEX$;(9$Q4n(?r_T*_}^5=3-1oC9S-J0dQTNS}#aC
zEyW-roo+!nsHoZGIf$ndga@aN(v?a^sgzOfCKOVD=q&hTBI`L$GI5D3rY9>ZM3@5_
z*JWiJ*4$*?jWXRZq6_m99U+XYHR1`aGUx*`=t-1IMeVIv-eZemBx6X9*t8*%@x<|&
zO0HAk%~T5~FDX7UM7RqIhT0_Gl#-ef;fY9b(XU{fuaOGuT7KYF8h^WB%BI&vpDe}l
zqLpUqY1w)`tp~VVy)Gb|KBU+c60qwK*5JA~+6#(=V;C4D+grr&At^S@Af}PH>9BpR
zfU%2v!qO0zLxhLXy(p`Q`ZF2z&?wYTXq>rXXm5T#mf7e(4m*y*W0G2)wt)=xizYY?
zOA%z~`x2Ip+X)AdvEC%|l@TxPClN1ssiw^fc)&&5DM7Law8V<0tpT;jiK3D3JBc6&
zIkVA^Jz!T#5c#MUD!>lfFR2a*T%6e6dKTIOT?9G8b0H%ZryvSTI?~ZLI5c!5e!J-i
zP#^f9!w}d0FtO6bAhN}F5cQt0bkGP9yAxG4g(%cY6gm{hDG0e6<x(WXF;JCo6J|8A
zXXgT-I=9cpZKG)38gY0c#(=~unZ$URL=%ya(99!f<yWD7IV{<CqKvjs>>0v7O@mj$
z&n5gd2<*-Sqwz%}zbxZV6Y(Yg2qPMl4M^TBxhM^9Y3^GJ+d5g?@Xg5s^sQudxZJhI
z80NFvB!dU+*(0MUL++H)G#dMlqAbZud&oN|Zl#m17&cMV8Rn%c6o#ODen^tsE)!Wi
zLWD~vjS(_EfqaG9fV@jaUM3??7==vgB4m03`7)h}F}_Jgu9A`8L0MwIDV+uq!&Zuu
z8htzph&~^%>w~67=QbI?PR4(X@G0tw<537ldMCRUfTLyLdu3qfNN3RP-A(D_jtpBE
zNFsX&?B)?ApB$9*<B<{X9O;GpSa=HiS(kcwUItz-1BVjuB^TiOW2D#$FW^H>r%GrW
zB(mETf_;z4*awNbThrPEJ`jsy0@6^UPsj9Oyr2l}@gqU$&e1tv3VQ8$8eKv;?G)W4
z|7%4x?Nrbr0>eF~{rB`DPTy5tRgW!nT$R_U@GcG8o2A6Z6cNT7TIF@Cs`xDI@FQ4M
zaY88XRw^!Pb{yyZ{Qj;F)xP-(Yp;gmBsSxS%{XlR>lnK)M;Q!Cqr&G6qdE2c1Dtk)
z)4qJfZ6w(mEQD!~Ev{Ht`8k=NLYroXO-0)?alxD>4u+Q)hlCW>yrI6i$|^5%k5KP@
zN=1*fzKcQjEM+G&^O26TF!@2pYA{I|$`2-g%M|wMmy)rgkp<F-$^yR<Po|?_NE<K+
zw@n&t@YiI7n`DG2LXhSy@Wf}TIRTTFQkq(2?lyN}@3rYZEz_10VDS>cV6VH4q5*W;
zBvgYWeSh}PH=Qz<MX^!Bt<aSu*yfx-TUit=qS<j5EHtdRC|jg!{bc?I#rsf(5DByU
z$8PQw9zkNmALqN}Wl_GUTmA_2LMcp%rlpzs!*>Vv`@Cw_5#A=wu-SU;tT*gFWfZ<4
zO#B9QjSP-mUr72|FN;5cc*j-}%@VG#GU0s8Xl4CShUR4Gk5L|#c=X4<IJsCjhUuM-
z`FO^NM=bm~^u@@V)9)+l_vZYaKZspZZ_W_5DqYb%IiF4T=6tm`ht`#haPt5#i?r1L
zqG%xsrBckVVPb+HCa{!S@n_p@SiO}9_OpQQ75)og?X(MBHN6X)5wtT_Ky-#pN2`0P
zK)3mCAi%gPm-B~wD?)|_703B6x;~3-{)nn6pSGS@cO#+25n8YGeb#!YAq?IfwunFH
zKP9DB=$ZD9vZz1CM!Wf4>~wr}d}JH(zUS}Y*7wNE^j-^)^s?U$XqIap?d(p#YEqs$
z_#5e1Qc<yK(3@n(TM2*B(qLORh5w8%$X2`~WMW`p|FCpE_hyXs`!;vqZY+H+`#d-f
zV@wPVE?Zf<suZ2ks1uKBh{+CCfOgcnGUe7R8j~xqwwDvKx!Ly|iotH6_G#+hf3PQv
z*770U(n^-a*hQ$OC2lvDP6u+t71QgLAc^w`;*qEoWk_ZG&^<;8#kSUco=MU{s+H7o
z<Wh@Bb2pveaMpux@Lb2rWOSk}ewsQ9{AdsQ;P%8`%I=Vi+(3E2bP$pxts}Y{P=thH
zKylKMO6PkB5tx>iO5~&?BJ_bb79V(TK)4k?gc&3X_Ys8@iGrkzZjlh&sYDbGx!Pn=
z2yrV0z!3lzK}rKj#5`v0ODxjpi6b5#2=>tNGl&7Sw^0$~GLS@U0+Am;uDT(PSXwlK
z@Pvf$YY9PSO5A#R3d+Vl2Ru{je2P}{Nwo8_0f6{QJ#^eUyiV)<m~5O(^%Yc)J*=t6
z@x)kMCLI|lE@@Z8IQ)6xAq)Zj5WdyM@W+J>D743*0cGUWLN&_1#W>7|4Y*IlT@>s4
zo>+u)tpzifXS@Xs9+mYIk8)dxKQsXwG;~Np-Mw`wXcR+htDW>F%^J>!DXR)5vb(iq
zlmp{5->A)vMHnSC100m>l2j&arEw#Y1GS0HY#@<f2Zc5?i1nq|jNv~Qycn*C;A*;x
z<z>Na=o*IzX~U`<h$Yb31n0we>qx~uCbTn`sG9=*xaNQ@OT)Oa>ZjH$sdWam&YRyf
zhw*&C?<L(~oaX0yi-x^<7vR^?PG%X{!685`p2FZ~0O#{AAat3I4xP0lkPV&X^M*eP
z^+uJ^+7o<$gJ{WWx0bc%5>_W+Rq^2@1vO6;n>#vTe+l48k!(0$tb{1E#Ynq-zaci8
z2xcP@`98tWhXQ<*@2avyvQyGYo`$iuDvNrq=ksOVJ2O#U)@{PJp{cWV9~)~9VPhm9
zm8~faUxz-IV7f73)7NHgKFlo6(lJ=(!g7?lk^&H&;C>d5>V6$xq(&f|!fn!qv_-Kh
z{tX<)Y0C^z<Z0(wJ*tf#t>C+si@QTm1*8KSFnYq7C3YWu!V{jSMKx5Wp10Y%vVvjS
z#`C?AZ+T9O?mn{Q+lcHVhT-Y(fDIevD(TP#{}uAO_~yScI>erMSVQmJ232%qA)d6S
zEr(L7J_U88N0nHuNpNg5`fokz(KufNK*wDG^}mg(-K4C+ZX0`pwP&5$d7K&xsBt^?
zwG;8e_+!PEMrv6~El*GjMhC;cHPlTTT<lz7Im7|jM5k^Az*YlHV&u>LU<6VM=^}vU
z2W#M}=oTdCZ~^VGr_muFzfD*vk%)C}BNDWUE0Op)NC2ahe`|!uEg(V^hzXGbF_Wv$
z#rHEDi=vM#(=ki)!}#nL<5#!hquT(8<4aNumb8hcPN;J>E;FvBtvI7~0?RL7W&q$z
zH81oi_EKBl9#kS0<l-s>;Rq`}IBB^3s5Nz>Q$2Ow{E=-MptAMZ$Y2d^IIw|h0<LJ(
z#p7DQor}=4JddwO+_`aBor*6r*vURtZ)@JqV6chbK!DsgjWP!a#ec3i>@8AjcHb4E
z*&W*TA#$P4$X<MXOM?g4xO2B_e(*H9*0elEQg`9om8K;d%y5E^-NXqI(y5dve8|Gl
z4yxa;>YFM)L;IrfL?1fX4J!!GY_I@56YmHyk$jF8XT`iZTK^b&0*<#`AmREdq44WL
z==-t&!R=S}y$Ghb{ULq-NzZe4Xj*<Qz8Kh>G!H!^zFOAZ!kx>-$Eb5PnpTp5+pqO+
zk~tc~?bi`INCWVNl{;r}n_#v$?wn=)E%)?9DE{QT_b_QjF+hsh9Xg^LfHs^U3lkox
zan@m(WV9?KD;cSeb`$}m@B1-c&;~_Nk9|!jVz}uU{#~d)XnF438qE)OL2c5fM6M6!
zB#~T-rL%h3yScu3nieZ`$n}M3TE@VHT;EttiwQLg>7dql+%zp=sP7v~E{Kg7j91Nw
zrm-Bj;E&Mk2;sVvFs}~Uw!=5<eIFpfrEjv=^MnXb#O{|@g7k}I)?9sIp9u~{SYoy4
zS=VtS_~Y}Cga%HZg2KMU-1rgZV10a*9mN`s+oH>C>T(WsY4$Bp3e&I)0#uxz3D@ix
z5GGKuP#>$=(W}{>rLp5So^IplrlwmY-6H5VmToG0KDG_)Ac~B!MgJ&Ra@}edwqdCF
zUe;4G!0kyRS;X<%J%a{~iz(AQ_C}WUIThg}3>OW<LfBkOwz?M@A38}!?0Zf$O1-9q
zGF~!@rsWI~rI%*ug`FanXp=~^tER<<*S->L^3iDd2G3tW6XBTMEh`be5^%044ANvO
z?Jy?2DCibycWyy51k2WMB&kl~<0H364->B>k@{w1*vN4JK6teS>d6AepmP9&W>Mtl
z*i74<2+HKSqHdrUI5H`OHvRg<mB#g04|34DZ^IP+i1_{d0bf>t8`iC#!6!a;jD%8i
z=fbe|O7wN21PMfztpl3Yb#Uc;=W{{HYDh9hlq{yNjE2!i`!J51_ct*}+D|o(<v#iv
zLfYUl6jSzdA8I|{q*U95pYa3yd4Jr9(y=5G0}`cTI==A&Uq8J0?WQxz&NGTOoC?Ev
zV3y88M9re}11im92*Btw#}!eASu&FQ=!3mb2+WE94e`Lu8<nkt4O8GHV8#>0?GGi)
z+lSuAS@59`{PBGE3@uvH#pWCQlh8T=8F?8Dtp>VEL=QCuN{Vr!(ka|XTSBFLFX?7h
zZ{!e0aJ*+cgw%_3P%o8T3e!<2yOQrxoLw<AM8<+!E@(Z9q+#zYn%Ng%>v96aMj<sB
zhgk>-)R00%MST>*j?D~!Ad!L&;oRUUI)v{g%g>mG9nExIC_KLPeaTs~K~Ud!1ch&n
z9-5Zja3lC!;qIL);Y!3=p1SX6GVXVcA=T6|Vu=3@{-UW96RaLA#9MpZVhojo@GY9%
zi!q&z2~KA;GF#CzI~LlCw<*s1-vXvI#0&ND7JMXcPy$E~i-bTvkStH9xymyKePz$W
zp#i>2^8zIzn9I?L4o%ZBP2Y?pI1%wD&85pnnl&FA1}G)+!^o{E9T2yP*-CtEkD_`U
zV7NU5Cop6R(?H?IC4|l&!qkF;%tDw%!AAI$R8Y@fq5pX5{|)M0PQ>nqB=}^>u3O?V
z<nz7$<ud47V*f#40+JDK0`LuDXT)o-@C)p(05;eY4qisJ>|<{u_V6EhZU*$!C7SJB
zAdB<obn+)#Z~_Hf>A;+6pBV_6$GYGtu~zV>;a*@c;>z_gn%%|FJ)P*F>GCjGNSuzO
zhIj|zI3&-pcH+av?}xxK#0I3K#mI35tIy38{gcSDxxiiEQrODS=>qE;o-|WuCcUCM
zUhKEGA&JD5d7cK+vO4#>W`p)l?4gX%CM0aPJ$N@_AiOyStQwkeJc;a0d738$pd+U4
zk=Uh4z;g@CbQAh97fV*IAhJOV<ERN>kTH%7fKbX9f}R&lq%^HJ!?Kdy*>LbO+n)q&
z1lJ&#WTf<SDvlPFQeW7#rxUflm;~XhwAnKY`69m;<8@HphQbm7{rYlZaZD3OCgp>9
zcY-@CAn?B}#6|U2n2)OXKlN|!?N>K_=38+QCm;GX+XrxX$XEAu75@$josk0sqJQAC
zrVlfk&M7pHc5xR&aA^Bt?=4*(Ysc51(XU^bw$k$@;FP-0KqH|O_jfMR{ZHEzpS7O{
zOhRWBf8;aN`7%Rs_!uBqreYyfijVmGIsS79Oy5j1+KC{h7B#>nx`Y0|;Xny!9qE6@
z#txfKVaq3G^O%ld0Dd-i(R}VJt-Bu>@AGfoy-YrP*>A_@pR>LK6P^w0ofE=+rzt+R
zp3=0?w@b>j50XoIRCNBW8?U~c;o!Ealm5@<$PyW=<A|Nn*x~8h3NV+p;|a9-^0o<+
z{tRX29SHDmb9slcA7@zV()#j_d2>4V=Io&;@6G8I&b|jAhXC>yIL81}itXEN-c284
zSvqX@dirs+A{&qaEnFNO-8y<1zV`z%mb(3MNFlAn*OUp9Ne<p~pxF7ID4eiWg2E}8
z%g(^U{#<`{u~W55RKZzc1K^+lNc+ZjllCcqjY#{N5Kn^S9S`vDa(VAT+IUgg)83o|
zdvgxMMIr4mK_N=}B}q$?zP2}KfD|E03sKYX9u)PmV*&5IFN)gnDgZ9YD}0Z5<~_%Y
zon}!C;bjSKL|FNMUzC$KJ8L9SPYRC!3IneZ;=<1TpouZelIW-Lju|r6^r>WP{1?V+
zoBA~X28Bm1Dtzx07{t0K(2)xSyxE`vGpPV^0b$3mS6-sx-7H)<3BJ)!3}T60JO+sq
zoJ;9Lq0WxTUx|_vb6gFc^+43+qPJ`6We>R+zK2eP7Dwr20tBQ_qUK`fqmp8NApwpk
zM%n@@$2Jpoz@VE>NjEeS>H$h4fmMS-C5By;cnT*J9xh?oyHW9XV*i`fG)5c|{)3lv
z6eom3YG}qx1A<f~j|k`rN|_Bg4H&RAeI^R0P9V;1)Z3weLR{tWOXMKoXe;z9sS>?w
zfuW_rK?;luer1)$$z{&-Bsm?F<hfi)pQ4)RQa~;AhEo_XcJ@o^s*zCmo<91|KIr3L
z^NYwVD9Bk-xFToX!WB77mMmVPi!Wd+SWkm4T{pu$6B!adgkRM-^BX(gf)-kYJdTT2
zAA4~1;<B%H7SvZS@zk=_YaJ-BPAy+w=f0<WZSDGm@+?nvO=Wp;&ANobRW)q3V_o%X
zhy9*43o}g#<=Ht|Me|n_7bF;rNsZ>@a<P&?C9oxqs=0NQ1YKTSQB&jCP+aX;pHNV@
zy1byy!#d~Icp6xTyBvL&%bjO8I?6BOM(UzG)5F%ychugonps%ez=D<p6hBi3g}7N!
z6Iby4uVDi{Vrg|npE<RaVvohS#X20P*4f>4Y~AX*8eMH2t84Jo*VnmON2RXP<Iu5n
zsMOWF>*^hD9l_h@7U`<$JhhcbaN{AlNV|5m<MufyWK}dcbkovxhMBrsZ-ueHskw0;
z{c;Qj$<~+I>z|T)Zr$3ob+u#(=}i<{<S(njt-DocXf#N_gqgZ@@HbLq<}T4WD;jiJ
z6_vVz>NU0SPB*y_Q&fvTMR1R<s-~jBsasvQw!W^`QOoL#x~hum8p!?)?Fqs5(S98t
zza*!yXvv}#1%;V~MFlhC4UJ}*AKgY>yfJAee$;0@v|QY<dNsTax+g_`Lq83{ZkYJ^
zti_9Sb21l!YI?d+q%-YXIy6b$G4Z*M+BK|Gce~CwQ<s*m17D(Ha6?^u(ZWTAi)Lm!
z8rW*+rMj**%Trb5aL>GaeC0_4B)58%yTZMpoLnH!v9`{=0X0h;^#!cEd~RL+2Go_f
zD@Z`uHs7Uh3^Vs?N3h#(?RQ}v`dnDcx~pp&s#lkb#k_{qVu$f|I5j-MBssu8MT-c<
zXI56a9Ssd21*MTMT~-$)54*^K7z+0r8mpvV5Q9AI|8=|vHIA4gM<4s@YE<H$(^yYD
zmVa}Ts1r%C<Y)2m>*}g2b>Ewbq02C9B|@?Qc@^~wYbza%x-?yKA~Ubfy|#kA8t1Yx
zd<~z-cC7NO0e1xscXdS#8KXQ{CGsLo6}n|JD(=?JsED6YIWrZ{2xiT~wH0d|3o2?W
zYs3+8Ij7gq;}v}uIjX9&>grhZOOd~!uwqq>1ALT!Qv<kJQ&4!7fNQb}uByA9%tT%q
z2bnd9B;xp?Zm&@%%D-mG)qQ>&ec9~S6zv<@#J;|bZcsgVittMuYpNSqw<yC^O1RRG
zq5r(PN>7bAZGwUr73|e;#R8LPh}G`udX~DlR4S-g=Ri+ubJiio66D&oOB@xI8w%@k
zDF|QbpjQyec2w6^v+%0w`y32>XQr;Y7QUlfE3$!^ZeC_#X0A@mKvH!D4pz4c4xwuh
z8PQ=TZ>X+x=nC@kbQM*Y&vlpgK5ZIp<uKx0ITtelKr8DU4Yjw8OqDv;>Co9%d!(dc
zVPz`jml=k{MiGxZ^m_UxX|Ht6Yt%_TlKnsTLD>&T-<MuRYS-uMT5-J0;jX(fj>}>E
zn`RF=#LPmlyncU>*}l4x*c^Eixm;_nM*USTa9y1e??ef6Pj&4YNm%LqYC7@qG>1ft
zfJf&FBk?^bqi)3-@UmiFb)%y)lNA%o6{yIoXsllAS)19gy1H7TA|Wu@)$6Jo>fF>R
zW{K;|ALJQ0MahYcri3MqwH4KfyYhT_Js%3<7S&=5tf_TWLgeoPUr<ry7_FoDYflJb
zl2+hZjp*6HlvKEDNl!(!_te&{uhq@3*--C<Y{B|$M~#DZ=;k3y5;Lh_eTlnzboB_l
z++|^19mX9JW71O)2e~nVezy2GrgH0$q2;*Ub#BUM*Fn%qoxQ?cu@=3d3VG5<;>u7m
zC(|vUm~gE=79j$NF$TEOzztGI|01uH6+2cV5oQ*9SY2Hez#GJTq=9%WuB-8^b?D~S
zx!oQ*Yay5Cc_6}~I$fTlvKku_3?shiRy!+d*MJg(HdZ%}@@KqfiYnD*J8G-tHtGYJ
zW`l!htVOy6RpW1aVOc|Qis%tORuGh+GnqARijtSgtHi{eSvWV(9+akVUg605NS;5U
zM@noF)-fgOiXH9-<apFafn&7?D%hYauCA*QqdtQ?d2Wy-gY^UHV?;(UjSz+vLwtgT
zoaIv4Bxd+B{JiQK$B6B6p%4#dcIpo~J60HLs~bQ<vi7%+6+1?&IEw^dkoP&<7y$5n
z*^kNgVp{t@8@6H!&BR|j(GkbO|A>B3Z8c3AqXUD~1M)^x)*@CEApe@XAajW^85x+=
z?`&QCb-BJ4RUJjyZx{GlsG?ZNZRHRqGxgnA2_nH&rMNfqJ2G-LBG^c)#R!5&Q!t(b
z-;l~{Jk^zRm>C9h<LxxF25$+NXA`I-y<GVu-;(fYV}S4zD({qUiIqAXy{6I)aG;H|
zkPI^plRX_vrQZP@-8hD;AD6P6Vd8L^apmG#imL`!Bd#`FPvCk6*G^o$xZcCnk82p0
z@@|HS!KK4xz?Ft;0j@$^D{<B1YQ)uoYYVQYaP7o(0M~I`0<K|PDjf8P!4;2-eg<QL
zDKRNI#cavUnwy<74~YxqOIdY|m_soE>L{<0Yp|fpp%Fs4%$0M))%n^bO5!|v1znm^
zFF{<puf}Rt7cXz}Tn+1BWwtU|SbCL*bu^4(@H@kg>f|b%qI&$*!K<bJcDPGKuYyHj
zW9!^k6NOH{1MDTjWV|bW*l%QB!^J|kY=P7`wJa7^$6rLj6@$wFM>P~u4Z{T6$XBri
z%VeW18*NJpvI{~_&K$q--?nBxbdTemGscb6XwUgFoByxa6T57m?2h`%RrH;jG2t5h
zn?JWOm%gpOg393ErKG>N8ETcw`nBSmMgP%;#b=4&-=rix(oq4atiSKR`zlvqDixKb
zqk8#oQi^}POM&t#Bsc%}`<H6q%<)HhdVaYp_m_{Jay<8DcLIo?rVe_-%uOfH+`sCa
z^%ryh{mDDV*Z#6&)qOX<@XDc`FD>%Uct-c(J<d&cJ*$n4nLe1;>|fK<AJ+OKNBi&o
z@Q?SR=DxgBGhtr#qen}geWo=#T$|adc|7_SWqp06H?T6i?{MY|pMIX%$DV#9_T}1{
zy?eqIJzHuKUML=j7#w&y`mS3C=6rto{Wm8h-kG@TV%qnF+amJ#4ez$S@$`qCJ%2Bb
zO8Dd_b6<Jq)*s)&bw@88cwwvm>+fa1q>FwwcgL*P9zMTg{;n?v?|P6i86Fxq+FLa6
z>}@+=yfwFJ0sF(0j$ePU<Mjhyo*w*q{x6SdpE+yq`qAU-&PN-2_b&XwCqJBf;f?&C
zbR<3>7FrjR_1GPGPgx$B)lPc&|Ne(@dKg0f#c<xBG)^#1HtLK<W2!OFSZu5|x{dc4
zA2Mz+{?hns<38g-<6n%Q7&8(UCM-&LEMaTH^9kD%UQg&vIFfKO;iCj0L1CI?(wQu#
zyG-|(HkckTJ!RU4|G?d6nvi&N;>^UP#L~p&iEQFe6Q4+YF>!n1nZ&;(_9uRkI3p<|
zDLZLN(w3yhlAcR?DXAmrout!A|452RzA<@e@~Y%p%(Kn4X1m2}`LX2#%b?{e%g@rb
zr*)>CPcx?%q_0T-Y5Lam8FTKOvnJ!-3<#n_j798NVW>6~CM-`lWIACwYx>GG3;j<|
znuWgRC;5_oihgz_ok;p9DKuG~9G{$!oSR&nT%Wut`H|$GB>y(~h2);(&y$Cf6)D=3
z8&YPZB&W<zDNZR*S(V~US(ox)%1=|CNO?ZxzfyLjyq40PayaF5%23LM6t#J#*=SBP
z|JeMv`7N{35@Ct8+-XU)<XQ?WF3Y_Z&f>GYWO>c<u_Yw+&eXirC8@4dHg!YluTpzc
z|Co9%^-gQDb%AxM)oHD@-f!itKeIk<ec8I(+H3uz^{jQ!YDh~;TbNdmwlr;1+V9eK
zrX5K;m!?P`m;SwUd%827Pk$kOXZoS^chcWWpFAgV&f+<1=R7#)$8+}0IXLI-ImhQP
z8DSX_8JY}hhAkr}<F1Uw8TA=I%y=~8XBofEcs^rC#%mcp8T}dONrwhp&|#=ytifnV
zF=QC#8EOrzVWWXFJZpH-&~E59#2Rlg&N4o1>@XfP`i%odb%HD5{)FEr>`Ztw!JjaY
zpoT9@HO(>Ao4lr9oA#K(6Rn9kiFYOTCLK+>m^3bVV)D(&vyx58OOnfyE0U{{+2s3^
zTcP_WleZ<mlKgt|p5*<>Zzq44Jd`{(Wqe9BtYAr5lCmtNGR2d!F{LHt7b!2KypnPt
z#ShJE%qDZLd5ihy=BLcRHNRxuWj<p5z$}=D%v#Gd%Ph-6%X-TLmgg<6SPod;wG3F!
zTi!?wvudmcYo2wD^%3ji)+5$a){Ao{!h?E9ej9Q=Jemwo8qOJtjH`_sjM=7AlO4Qn
zN$E=IP5Em|wz=56%)A!1e!;xme9U~OWuE2VEM=Da(a%ekBe3!O)a9wGQyWr$o_Z|x
zWa>XsYpk5L&H8K1iA0<d*-pbAL$Be0;jrPD;ke;F!)e3E2Eov87%+Tk7&crmFh-?O
vWmFrr#u#I)F%BbBZ;Ut2HX4kHMzb-^XftLT7Z`Jmc4MJ&sSyPKiQj(%CT@wt

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.inf
new file mode 100644
index 0000000..1766c73
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiRuntime.inf
@@ -0,0 +1,258 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiRuntime.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI Runtime driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiRuntime

+  FILE_GUID                  = C194C6EA-B68C-4981-B64B-9BD271474B20

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiRuntime.efi

+  DXE_DEPEX|PchSpiRuntime.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5610

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5618

+

+

+[Protocols.IA32]

+  gEfiSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/DxeRuntimePciLibPciExpress/DxeRuntimePciLibPciExpress.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.depex
new file mode 100644
index 0000000..6fa9e99
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.depex
@@ -0,0 +1 @@
+�������G����P����J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..301d91edcf54a71e5758c598a836ca289d64d94d
GIT binary patch
literal 24064
zcmeHv3wTu3)%KapBn-*G3?x9nR1Yv{C}@++Om34v5|RKKU~*3&TtYI#WX!FTGZ6eh
zgC|iY$Fa24ueP-pDs63TEB&BcLdAq&2%vzd2;#5crJi)q;-w@gGXJ~IIWvTdX!||?
z|3Clpe8Y1td+)W@UVGj4+WYLVU@`M=|91V`nE!o5TOPv{s5Dm*I>Urbj#7<gm<&|k
zDmVSbfG1rxxh%bhDeuD{n@~{5MGdbX_D*EJ@vn_xo>Ze-2g8(nW2CPKyo<B9asYe8
ziW@ORW4&4o49hUiyWF+aTs6a-oPc&3dn~RjT*H1@3^VU88H`z{LPIkyl1&A!VZSVf
z>A%ZuuWzc6$HcUuk@~#Gb^w=y+W-0ee<XqO#BO1oQ7aS}b>2fg17Z9->he#Y@xJ`&
z?<<z~zWCycW#s~AGyp^=lo(@tx#I(Ams>PxLoGV*%YX&Or@!`(@b>xEO$dAmv@Mr}
zT%&IJGQy=_If{fX_3-KMQPN6u<yLA(&k_vC6P!2q=#aPM=%sfqc!vOaHU2X)K3E}o
znldp4q82T%S>b%gg|*@0!!To^Z&`0~DH#7mxG26hlVP4C2k7WtJJnX|1bmyQ8wU?D
zqO$8r!0&Fwo46Ep{C<NsQ~O<p*`qB3M!;imzE{dHF4JP+u$TdWO0R`MbH@d=Q~<=4
zMlDmQMaa*1N<(ekXsf5T+0+&xwVe>N@!Uh5gO4e;(qeHVSbtvP;aA|HTxQ}VD#3(5
zTxt=Y1QOtHA@~Y3m3RF*#P1(vP$56{DTCZ?v~x>2y8X`L-MjD<9|1t6SPuUWk{BnE
zcqT-`rH~j!j^CBlre`*5@Ybmr^K_VJf*@5(HR?lMVeofxWi)O*>=lZ=s3`B+9-<g4
zQ(V4m=@Ll=V#-v8*-PSop2oh1#`_$J8!W}z%F4wDL7=$n6bJ|}iEp5Q(TkkSvjk8r
z0lX;#?3MwD{J=?)&B3)J`OFdwpIIN_9Yrr?do$=Rju`_{1j@wOcsg~37~iKMF5NPj
zWxY;<JrGWKXlxUA8z3?$Fk`b0RnAtrJq_Znh=9$^@7Hy7w}y*TP$Be-ZGk{QCL9Ly
zlhrp7gex}_xn5xuVRsz#MC=*~(!E_oM|=Sth<$hirCBnFi}7V^ZN6-cbAK};^=7i6
zz^1K$fhZuRaS|^93y}-hQY&|jAabVe-csQl|K1RPE|zTF6=u4ybTh&Hd4lkBn++_s
zZ2=ASNpagW6oxtiTsB{8oXYs%XRc`BsKZ-tjP1)cPMUz1Tf9}qsRwe6w?PbySPL#I
zT^iq_XyFyHoC?BG@k5Z|`!xLJSoe=e0mA!Bdkcrz$c7#U22>_UjEXDAkdV3_YGat5
z0fWQ3Pv7w*Nbic%GmOL9&yCNbyJ6R@N;!hco^@BzD*-*;p<#*-MA(XL^AF@}-I&A<
z<m=|f(Zg^E5Ah<{6He}8E(Zd_;i>)JM`_f1pDtt=P6LVt=L)>KDi;e!#Qy+Kl^1%$
zmY|j?LhUlDwNtIB+ixs%W>k@}LcC?--$B;N0<}zh8?XHSm|d96+m==K^5+c2rNSF!
z!pCi2Xx))g^*}7-R_?ohXv1vcl$+o*f_|3|w009KB14@BmtAUKt})i;(l{?6OK~wS
z75*{BWnvbT%I}Zw=+<vM03<}Y7=9?AZ|_1uzoWlLjOaP5nRW>*cngdMen_i-@E2$@
zeaLqYd2@|%65%)y_GzZuhS3!x6uPY~h?lYa#Q^6@UlijREA;e;+Vr{OJX)wHebIPM
z&%dCx)*Iv2+zmj3|4&j#US~A&-5Qs=+@(>!Fr4nD5ZzmZ5#W@I0am<MrQewy=2e-x
z9p1TN{_tHGWE<HEESb!8!#T;#KG(WONMiG^D+A*l3_NKswb;r`-8LHu#a2`(&J6W2
zYr}IYz!c}_+B`{Z&qd%}<(c00T$J>}3cgWz*>Dy&_>#few`SB}`zXR7xArJ~>4iM4
ze&-`ny;p1MUM3lEVX^QAY+qY0TpXs(5-?NdTQjs_)^K&!qgGaDBCNJj7%Ub3MAinK
zMw<>6+DzRW3yim9wcS4<!d7Ur+4PTh>vwe9ip$07a57R-@aeU&&J5UwJP)-)K$Vq3
z@4#77`b%Oi?7O{N-+qj!{%kAmE)C`o%P4^PeA`hLM*?LU14GCpiRn9jjY=maf`A(}
z4DKx6g?|3*2!4R!GWY=%mq0fo-D2sc!_5=F3+O8UWIWm!|0F!J7=JV#EaTVVVPK#|
zhS9=SeFeq|g{FhqG`vDvVPT;%yZ~o3mx~W*(A{|&;f1y1oK>L_{)$+t6#D#OrtYQ7
zmM^I!2SUUW>W#*-a^L!EJVuJqlE)k&MBz)AVS?}rk}|Xu2mfgAz}S6@VuWMPO(c(9
zNY*QTEgE?8FLclk#=$r`dN|Ww=%}sCNpp`Z><OUQ6@ggoTnF}KMLJOj;}rS^Odtyy
zOF%=v^O$hNHKM{1bxdqV8P&OXbn?`pZ`)(I>vY1AjZ#^zB{uat%3~cp?`ZWqveblX
zkx@tDVe0m+iG!cAohNZm5c(a$F(HB%Roty~8;P4I-lg`3xxy+Oubct4!&_oZ@W<$P
z^g7ht4*fIx^gH(vDiAOC@_h!rCyea1OMq064JG)t{U_K0r_Vzkc>E9#({Y6N1a0Rb
zJjQBqi`K$G<McZ|_T`7EyE`=pHny9d09vQ~P+#EJ4aSf56a~YSx~Pbpu?Q;8C>5WC
z=#&^mQtU*GN}n5}@AwRMh{8BT6Me@Aa$$V>-0}L3H>iLfO~-}Y!FYa1%|-G<Be-yW
zNbk{rl>~msAia#moJ$qamwSlAwu^{wrSM<hwqx?BqA{Flf!i>doWUf_jm~7w2UOe$
zjEPnGM}qzlaSRRou&6>>KrW=EzDY0?aB+(lUb2Z<p9cb!nBdpm-?q-kGM;EajFlkZ
zd`rGSBg`F!&<2nt$a`abi{f3{#e7<%XS9At_E66mE#I$-I`7x=X<?ob{1J^8KzxsZ
z|GUa_s&mnVwu=$mxX!t;84=v*wu?4SlVS7d_#;}snm=M7SX@TGMk2juKaK6Em=eh_
zza#(SZoAHAYtYv92S|Hh?w5f8(#~<ttu(W2MU`y9zX3$0Pv|FFCqx}e($KglScMVP
zKS%a~QAT5cdJGT)8{^y`a!)m3S9bE3fbQEy5yki^SvHl$ML?B&VOQV_IMvi+;!4zr
z?Sp{;=F9M1;6aJ*vAty&lD2%q{X@e8=DQ&-8R`c@=o=DtkTWBZfXY77QeN0b4tszb
zv5OqmpN#qwsFyl+M7=Hnp>7}Q@YsWgW9k9@&hEjJw{%at7zjKNP6-hf9Kn1@SB%tu
zz4p5BoejmxGIL`X2;VX*rqgZfby_|DIoN7jZwS-#=kZqjUn&T18{&3ld$%W2O1cK#
zq=uy9X!wcTz<tn_HN>>-9)gdHgWzNLC3-uAw`pydefVzpI^5PE?nD($timz=oy(|+
z5&Kco`6vmx?VxI-^pd(Xj+@x|bE@lnNNRakXB^aNHcEwnXJ%)qPB<Fy#0NaafQJou
z;sT!7fF}m)6wyNVE>Yq4vu$TD3qx(|;~1GPXOPJmKaK2_Y0+Aa*b#GxuLB`vN?9EQ
zSy+txMtI{|g<c4W@H^0hqR_phP{`zA<T&Jc0u}SL6xb^1Hid4nbQ>+KHwbw#{2dIB
z`DLYVO|2hlD)Fm*YpS5zyNH+dhM=DdN4z7%NmREWrbpCFBbN`Sna->7-|kyfAzns;
z0Qg{=Z=*B~=EZomGamgVnDFWay+4{?uSE_Z<mtSz{!zlCPfFbB)Q7#=<;#{-F2!_Y
zMglE--1$a1oHN1KIJ99sLssmqH^y_f$eA3k3EECF7^)OL0%*L@A&vYm)R%t8Vc`^V
zvza~bYDm4EkEkfJV$#YG*3F3bt}~`md}}|bZ_j`bJ1*$k&3IB|X86EpE{P9>b9W+1
zpUwv~n56>|+--b7%T3|~W4LjAz`z;!fDT^WFWv?bz$U{9R|Q2@Ab@2-nF$o;Qt8Ip
z5V4y@Gjd`~Zv46#abcbWex0!vSrZ;r40j6vs(@4LD+>%BpHX5=RhJm!#CtJJ<iZ2n
z$hFrQ3mA{V)NRc*R^4)N@a3rm#wvs^+%em&pb&;hJO*PnV!$i}66gClMUV~eQbOm`
zjJEc!*35XzA10ha@Tr4$gX=LM8y$uz02y4k>GT}v=Zh?NxGQUkf27dMpBdu9gp+_N
zVYu5(2Rlx4EcOK0PEFdz-06l+T-nyc?(<UT5Gi#kobWBsZg>Y>s>D%nOO(X-Fb)tI
z%jnzRgcgt%FVHL&x1biR$8UIH6Dl!~jJ`ZZE99z-yvT5Ok%b!P(S4%xJqog6pe6+j
z(*<!hIlN!z(k%0jFkQ$;I&(o1knj>W3p8i?iUa&RvwQxgjXJ@f8PW5OChC}eM=r>n
zQK^s1@3x+IqNJe3fRCtS8xApHSwsFrXmF+s`p$@+zv+Mwb>b!{%#e5ojpHRT0Q>Pb
z@&PrM&Id+t7CxXyj)!US4n7bDuM3QX*99WEXg(0djV9|E$p=R1JAOhEiCF57aB2J(
zO&>y*F|LTkzJ(f*2Ss@xzJ(FUWTIZ<52?fks$Cc%X5rb1`I1b{r4oMxGKh^_oun-?
z1y7u$vGEuYORCza8AICojI<@qd2v8Bsy|g#8QB?!Nq4wn$$<17J(%7G9>h&vQs)Lm
zFZQ8Vd1hdxAnczcL--&BIht=F2r}48d8uKRGfdf~H&z)ZTr(?C?3OWIz*K^mv}|lY
z%}w4#wt<x}3rnVFEWC|zX{iQ1GX9A!O$8NL6kzwUuCO4mDd00}C$BTcFF`De21ELt
zqVPfoV7WL~WTp5i5)}S`ipRXncyc!cy6+gtxL@_BLw*w&ZZuM;*vQ^UEao;w_@iM{
zal(<P-YC=x$HW0}6IEr5o%+8V@QEm(%v5<aN!|XittxrcvAu9<jW`KxA>WQMdMA0^
z8t;8tuS@4$Y4F}1W9kl^h4X8$LlR%iz_Xn?JY3Ug4O|UwD=%PcPR(Ioi>mLS>bt3W
zS#QPS3SpAq)(H1$1(!}(X$Y*0q4{CY6M!riK9_dG))AJ4cD!N;OXwRsX&qW^aK1_P
z$y9#{W2h`I6FdEsgdzB1hX`h);|~XDvgw`C=UWf}Icxvw@lI_C&{7xg&cajNN0?}w
z@wWBw>S$*>wWTR-zo9nkphtr>MpP-t-vjd4sv)WL7J{(&Iz%!}jqMu96I+vz=HF0*
zm3*;q>O!xI8|T~wf?XY`+}%&z6%$E^@QUL@q#59nz|;WKlme_L1U6Fv`%nTY6FwOR
z^>zp<LV*(c{y`%Sc3D8Q$c1*t;7vS(H*~2Ec39>ha>SbixHAMuZ<P+O$$?GIVXUnn
zax_qx-1iAeP+!fM1Tz?dX&@M{Num>4oAc{+$cmjD$hj6R-u(#imP>$}wau8d^0b_#
z(3fZEqBw60cyvA=#d;Sbz7k7|1A|-^{V|A8$CSd`6Hvfrk({5&djLKS5*Te!q0?!@
zdhA7X<CI8>VG^A<pUx=$Mka!{pMk=Q3W-7?C&Rbk5^ul6loh%d=d0i=u;~xr5lY|N
zM%%Wu!8&Z+cN;jAHhW!WGHMTswB*aXghfZRv!8ZqVYf%bDm0+B(n))Nwt!8;XVM$o
z3BGcUz^nvj0T|}U;Pydj875qVyln?|-W$%&9$I`p2NG?2wdE3HlWfJM;-i?CWrpSw
z!S|GDy4I+ptpuHmvBCRe!GR7#%0#qkgIAV-fNLSaZwGuOVysTw3erz;;1MGk=WHj4
zLW1}KAU0EdC1nGK;p8A3iHFD#4<&@LLgoSe>X!A0;Y*)t2DYi2mg|%pS)}4|Y?5?b
z;F2WL!ry)KwAMO}`<68tYnpqUP^nc<6tZ>E*&3_p9*4>=-1;28hqaz?pG@kO+;OYQ
zk3Exfu%JseX;-u8%Eszi4b~KD$Y0u)L6^ioI9m^KmtmTTl(#``seY}zMQTf^T!zuy
zF<jMVnn0vI_16&EcazY?4%9*4m5TjIWXenz%F~)FR!<c!3-hYF9)r@<N5y+!a7a<c
zOCb6Dff#FZh5Kz2cqg8OQDhDGo`?~$kpLMCezC0FX{dnAvzC{OU6&}RiBEuAtWRT{
zxo9XCw@9_73j>>=DTypUtsYdE;!>C4xfOUj5Ki}kMRV>cbrKtUbhsS|uSI3fa#NDc
z`z<G412&d6R}9!(nKpb&BNy~#OIp2n_f~W%{s=VyEOmZH4D^M^09z%-p|;q`RuWGJ
z2_kms66ZRJM+RktWBO<!dt(8>Tv?)s)gtV#Et5zv+(L<cY%MYppRi7r7`jFQ+khl1
z;AcRRS<=WXIXB95H_<X14%92&3!{VO#yXForR&cjgjWax078~lQJVBMXFxne9*Ui8
z82e|0axjGQOF|J+{085`W5R3VhOv?+4MH+zhI6DrdB571-|zoajzj!8%wgrun8h?$
z;SGE#8k9E&u<QCPqFcvlefw|m6g*l=*6BMD);JB|0JA>E%|-5oxwH*zq=q9xAGRNn
z;SQd<<zSDf8$6}%!G2k6p$))svg9IMP-BKHv!vlh`vCfdpu5I`k|Z%nfZ|KU&R(ok
z+Xjqik)sTmpet*b*JKZ;WKk$l?lO!Lk7|jBN~8!exLE13WuaI9&ybVF3a^xjO+yea
zRxZNpl`g{p$s`YCX>t}-<N_kbH(x6*P#`M36|tt%-ikPY8@$b|x56mBRm6KMW&+rN
zQmi*S0gpIuwwc-j&Bj188)!BMniKeLt<C9_<St@E8e@+W&%;US3tmvOvx6fL`v5`F
z&LAA|6{Skch+=1kjGZT8>kv35>_yUn-9DvZCK`l33=dfb`EHr>m$IHe7RM01N(y5L
zE<Z=Nu)q;}X`|XdjbAa7?E9Dmdmt+wOkirps6h!4zgOu*ZWj;84dgh5WS~yX5>n1m
zd>jy;p*GrLs;uN%v4V-i%C32LE__@3c5tXlugm!Rjf_uYT{GGpo|ezHjMz&N-#=IA
z9XytnpRjtIvjTMGZ)}o_ZwKv4VPOJ<601I3F7CL1GT5F8uu?HG$gY39!meCDF~}|X
zf)v%uotuITe=eL7hp?>!!JOuFv?73$-3B4urqKASMEf;>C}Kr&h32zJ>lVYkg<~DZ
zgHk*W)EFTro)$6(P>GF#Hve<NeX)Qy2svz8gf}8M$lvhyu}FObZdNEtfP4A>DGx>N
z&VlYE$@{-oSO{sxAZ(VE?>z@zJY$`4RglV0pdsjSGw}`&i3!cavlF2Ut&>hONT2Rv
zo~OBZ55U`=qX`0mYoe{ZSPYZ<==!Zhs8lQ`N^lROJjq~v;;e<%0=5<4B#879B#vU&
zHU()4Aq5d)0=6u20BJR%%%30crjM)TqVE<sCT$EkruJZUKugu1W5~jg>3ChA1Ln5j
z0|XexRl7_$>RYZFyr4cQeA@F-?1p!#8t$R7o?87aLR&>>{qi>t>(Q2Q2seD8aM6ES
znrM;s(t7Su0PSY7Xn(DTn~E*`N4J7w@o%4zv>x3~?_B`NT>R_vdi`TC@FZL`K?|cQ
z5NOJTMCuaml_1R5_)0JB0_RL$-et8*tv=%L=3NrgiIfa2^a+I;VI;p#?JW$KW=uKI
z3gd{DWcyH`erJwW7>ixpa+}zKxOCmOVQ7^$XeZLgVLO;3IrpPm;iY1U*~-E~*^lC-
zc`FE-u7Dm^K);7_rP8$-3Up~i4F%L7e53+@LV;gS@E}dF;!DyL6$E`7V<aw4DWGNo
z4bCWq$YeuCCs|4`7sVIeTQ}3t+gc6Csl_dnlu@}a%b*g^pj6o_m961bsO3yFw~Bv&
zqBm2yvXW0_JQL+12>q@Y@yI8^roOC5)l)<YlcW@ST-fWErDB9sZYt9;%4jNKZ6s5N
zq(NCnMzVCbP8chmq!<$vz+0cn0;p9`OoSqbk*ic319b9GS4>~d7?t=KXxx;QhZMT&
z6uPHTCLItRaXx7)#KIB<^Z^BQD}hSVTfVF>YYZb#@3JAbt&L(laYD9+?^b)Wb>bUW
z1Rtdm?}mUOwqOz<eLNTcgiSpsazMtpg+yR82<NZl?$5W9O=8N>cl-$^Fge#~M5tl;
z0?ea|>Q!YfRVX3)7UlTAhqB0M4iUpg<r)18)Kwz5vR%}biz(|19|t9>#GliiB8^o-
zZBkH=4nyrGR96h8>JOgB<{D;Je1a3-hmg?AQ*j`Jd2Fn+n}XtL2~m86Z~z(WwUDiZ
ztn^hH;uR~^Z}b8laM83*h_eL@#EO1n3u>{?5RE-FClLf8Crfm&GLj(*Q7yJ$6Bg}P
zL`NBq)ZXziqy@SN%7o{_E>rLn#afnR^w7r=_j{#;JwSaNEfY_m5?^7YN@Pq3z+FVW
zFMK>`sHE;BQB5QYxiW<=HNre0|Co>|U4f{?%74ILsAs2<ZZ9U`#!2d}hs-471__ly
zVzfe{j7Z36u_3gQ>(CBC3#8w13fgT_&lv1e<h(L|JmIfT#BKX<d`Zcj3jSmXU$&3a
zsH<F#L_@Y_*+iwxLRuw@(5+LmlyVI59)NBpts|ejk&huiy+c-bz?K{GqH#*6bEs4J
zzKc4Pc%=`kJE1N<lVrtkW=Up9Dy|V2g7Ptll}2t;h)fF+;WJ5MgiKE$Un4dk|4>0*
zq9BVX%N+2TBrZaxCy=j_nKT`gDaZ~5`I!)MTP8UY!_`WYFrBFgNH!m^8H1`u=i?Rp
zCI$aq!l$S!`J)(%{XNCB06g%KJk0MZz_UV~LAFcVGRYhnt|VX~ebc#|V6@z-AbJ$U
z@K7&g$Krp{o?{4@SAf?jz$Z~2W&&8G$P)mpKnOFPE{Ai)MD@B<_?9q%K8P>XceH^I
z#G)7q3c>tGv#hMR6z%b$p!A*L>x5D0rRynl3E}Lf=qB6W66zeg|Fn4pcaPcqdwP+k
z28UPMmlZb3;dQFL72yYRH27{V!Fa<QUbogE<lwV6f`x+@!?07RzO3JQQt%6hd(P^7
zbJf;<J<rQ*#!0aY2a#CD=F8IrgVM0@IcYejH6Mc0UT`{4h`5a;M~|$RzFftXiF;`u
zQJMqvJF~R($s;b9gT+DdGUFH_MKy1jZ;r;{MeY&iy-%a=quGn!AA<u-S7ttvaSkRw
z$XEwiQigH@Gu@5cE2O{PbF!60L#yObvEWzc$#fhH83GC78Jem>2tQB|ZdDLIKv_wk
zz!UaQcoCD91{pfsU*WE^2P@UK`wYy+ya0!nNCwNKSOfx0Sva&dn@B)!{<)^psf)*O
zW5nAbD|uj@d4Y|K$3P?cop(b+L+Z<lMtasv5GJYLf-uA=WV8N}o&DmYv@$s<^eT&{
zLP@s5%a9ADFy;F84b)$2B*XoOpq=rukR{EqSl!LoXY*;s*u;Ng#<`)mLc{-|ygA#o
zMj5_HI>hH0GF?~rVsRVISs`e<0!`l~r2LPd<-}ui0^F_)b6$;;-efy+why1$_Etee
z@XD#f4Qi}RQaB=+JU0GB>ZDR42WsP-n<&6yzxs$+fCi}^Tj1E;6}^xubgHAPOi2`G
zBL3pADQ$*74a9Qf%VV7<@z#}&XoA(z2%>HZ_~SMNvU2o{d#p2N8CrAX)`7pHHGgi~
zEXMP;a6sM?$H(i7!W+-k0!%u9T7VZ<#$tT%*+bB#3u!6Xk9>k^GpY91RGYR&gUY{B
z<t(b)M3o(<QTHa*;Uwxy;yS7m4(ujA1Sa2l00-ngcK;KX!TA|MH4s!8K|#h_RkVFx
zUML-+bztQ59ekWKVL7;e19q^R7!>0P+B-{_tMTS*ya~bq?;6c=Y^_5e5Jj|8`YLey
z;@uq3#4iQ_><}VIoYXu{YL-vQNdRvUz;*52)SJ}aCASM@8hM#g=q(-cF1Un4mN@!~
z9_Z-ncIxT-65xVM`08sqKKQW>pQ8sq78VS>8|EFem^K7L`|#&US8de8c|xopMEdGz
zIw<rw(xSMDnIx{3ky(y3-5k#+OL})@qr3#?FX`$y$i=3rxEL8oo7I+qZ_S^`F!&0k
zqsbe4OCO6f$RiKqOizp;inpTRTc}0JAPk8HD&2!)&)A0fL<~d8`VUVmZKI?is(VJK
zp~0iIe&W$!`!r16NkvqX6aVMGfNMB}*UxqKpVPH{<Xe6j-!0DRcbvzUNMF;J4&gNv
zx}(k$i1C4s+Rn~yyQtPb*27;`;rQ0&{wX~kYuA^can86RV}<84z-iczKqILe_t!4d
z{q?Qtk9L0!n51rp@bX8f^JRzO91=iaC$vf2E7|NPFjrbE&fZM~p<f-qWx5yqAK+UL
zXuW*y=`3!@bQ+O7rgKEs5CA`#vv4l|g~5Fe7;gzLEM0=590>AS!~{bj#2`iX7%Yw8
z+m!B5V5I$9;qx?)_I_3<)nWZRkza36Z5+dCg?%{JxG`I$USP<#dbI1_T`u%2lfFH`
z24HqT14ds2Q)KheVG40Of*wAYEzsq6de7JyX5(m~KkAU@3~h*B`DW2heb*Wdj6kQb
z%=FE&SXipXxW7O;5WnFAhQ+2tJS@@ZG_D{A$DFl$>q?kZIF|G@tKN&xe=-~w4HmFr
zqIa5W07_rk{I8&DFPYkf-YjmCwQse~X`{wsYTSWOjApzr{#dEyJm_{+P|K6lg3Or_
z4h{Cw7Zh%e$YMkQ8|Qq22-E;fW@O#p$h#Kk!~oWa);|5itH>xzbs!N-#PQ6fBa{9t
zaf(bL))`+55_KUGX&?cNO5sq5$P^GE3dDp&ftV>UW?{n%hfL{v_f$IZHiQ!p34UD%
z&Oe;TdJJ1)30Mi4P2CV@Jgy8}D>|_EdIme5zU%<NSLmPZQy-wVfy1bTyJX=i0pUpN
zI%9^OKaN^cH#(*LP8>VPnk;>iwIT7DxiQzM$29?$6(s10LIr;@5?L;tD!n*L-|m)P
zrg0N|`0BsmFoTGU&(Q`#9*Bos(t=0$M19O#s?+biTczI{)^iq9Xm?aU4npL@0_O1-
z@6<p16uQ>8KTf0W!7&1TdoGyaMV4F7i;?p2zA-pcpzlbg`or3RTcl^$Ks26|nm}*Z
zBJ<1y3y?E)k9jCc$TQ&NtvAo$A3;yR30ar$unp8g;5UO{2XX+xAJz=~8BFnqRRh1H
z=f%79?LU!T61ZFS4?QitrmddBUo616fQ$9|4jKc0*x+BUa5REH%o01M3y_PEznI`Q
zL2WogoVI4ly?v4D*L~kTMv_sVC&BCu3&{qcEvHDsghyhWaZDi@tqhVgN=h1d5~ctk
zcHoD2K^p`i$-fOnDMu7eK>R_?^A}g?AKnkK$)`H_0jQIP<Wg76=;xO51Nr*)JjjqA
z2-mldfeQJ7k^1&b)Xb*?ucL9(x9d?qFp^9VNhJIg$AT3}Ba6J`kJRr}@jV)-m(FWe
z!8WP}-i9~ecuefgEFsbpxpyYQ$G{#^Yk{$3AQJ{fSW>lQSvN5x*duMnk>d=E0;0m)
z=n!*4^CcXRNer^a84D0DBlrFl{y8v@x;!HO7W*yO^~02MKi)v0fbWUW?>sN>?3Wk|
z^gH|YJ96|k+(y%F6y0=mi=ta3-A2+)Ys1X%><4Y^8MYgrBpKgs6Su-+eA|s%$WHcW
z(2yiI?wv-y<6;);AK#ZFA8<hw3CBeTBub!q1F4LI;0NCzT@E}e>84rVUI)%eH~RMX
zi736a%P-tSsYC~{CH3mt=iqg~Mw`uWhOcmdd6Wx`*n0__`z<)I8II9pYi!Udy{PFH
zW^-zxCuv~R7Y*$7a2k;j%68JI2ByP-l!yTP|9V~EyPPK)d$ia#-1`UgO*Slv2cm&V
zlT5H{#16bnW_L60gB;-RS|$oFONW{s@Z|*fA$H9)!Tfj$829V=i{VJ#&Au#@FiA=*
zThHq|T0p(fX_N<-YvgETUutM%F$3k~Q12duM{hXXhEcblZXL<L`y~dM1>2$Ma+p7B
z@UUMY*Q`rF7S0Qw`>)7dtAr-XTjGS)OG5Kd=PPaRXu97~Z!9tD@mCfc9Z=KHphI0+
z{o@G5=rhk1xft_h6#wqq!LZ#Cc;L2mnvM%C6JaP|#xsUL97dRT4!*^|&J4coj~9BU
z8PJj`HBa)7N9zQ}WmpVd>wvD6(8ElD@-lpLYZeW(cUdX)lWb=6M-9?s?HP?hveInS
zPi2?dbR5F27kbnmFCQEvWx+BlI*ucQI530e_zL-0&KRV4qc9&KjT}@<sHoR7+{o+z
z2ofpC5cUn8tSX_GG(T-J4!dTu2s`?Y)3UwNXFzt~2nt^tM-T{LMzFb(y$MjI#MuJf
zz<(;Z-!z&ysAEJE|32Zeshc((!Gh7+=a!<W5{{?n_b$T3HX=B&k#lySXKo~<Wz154
z?mq-f*~@WiDXqlFwrBvvLL(}S4<u_dY1Z=0LSMES*bx<a^v_aCf>|A%uxOf!3Hvsz
znaoJ)vRrH-a;|i&I8j1YfJBxO1IX0Ma5bG!JL=8&-2WX_$<-8!2wgaeNd|u)A`W2>
zUaAOEK>sZIH&XxmsCTeP-Gjvf&w8-1w#b!G=wB|u9imQd2x$Z)D|IDvx+&BTBvPSp
zizDs&_JiCV#3CH#HsIV+q~Fm4#z1%;23SdGLDozMQ-Pp=ya(1|u!2WD|11Nqt3pKH
zTL$^lQ9GJEkD(9qRHQh>KNfHF(J<CV+~f*JF=#bW#l!?Q1e~QeW@Sq@N@TeL;?Jed
zT8sf#Soe7{Ox@Y^N{W>F?QgNrs3o3HdnSYQw-k}OW`g!_vC|QvO-R_Yd2lJ>AlRHq
zD%wEDN1<xU+B{}}hSc3h?BeqrPK!z$qnnH}S$u^=H7Expjv?z0qr@R-cENl~-w_ML
zkj;jR02A?k3)U3MGO-(>OipCCou)(<y<p3i{?^GClO%p1e;}BFv{5(!XT6|oVqmd=
zetmhd!U8Q0)+mRir-3glC8YcwN1d_a9z3AZGv{&MD&B#N*N%biJ`eX3=Tcu!R^VIL
z=X>asH<tA0PGL~53rBnYuGw(*5;VEt9UOwfU%y1XEF8wEP6m52e!%b_g!#TFod^FR
zVVuzK90K;s^qzOAM;!UIic^2#SAFh~R{pdq1?vCxUu1T1ab8i$^1S@{%kzqg78SAa
z#auP#X<;+jY3}I=W%%TAUE}nx<Z}~R9>etnE=nBs<Lbv{t8o@L*A+L=u`~MBq*twJ
za^G9k(6}b4D#ue-Ut3jHzdEU8Wj&W`UtL#Yx81vHezqy8DmO2ubnf!9;-rK`OKWO!
zl~hTfGFXw_F{i1PpsUKN>+9`n%j)cFl8T#Zs*0ODoO4dSr-ie-tI&59I<E?`A=9nO
z_Ha#e?TvTU5Kr;(Ig1t*<Yh0M9-okznK+$BSyoWS;xIUCb2o8KHBI$wV-v@=c$%A=
z+?>6Zt@YSht_hWFv%9I;?q&(zHm8(zG<h0pF%!h2=lP8-Ty<lO{mxk^<W#rV*~yt~
z!gTib+ac_)YHrP^UtU6jEbFV}^=}P-PE$ieQzJ=2epALQvE*iNXA@cz<X_TsHWU1X
zip-oM)>+-c=2X|R#dWJ1VI6Mx22L9^;=csAmvz)vw>a6FriSLGMtdX2CbEv|x_XTL
zE83HS?ZfRVKE5cgq_k+^^5T;0lG0*mpfy$Dhh4|UCt9ZCM}0O!%4IDzHPAL>PlEi4
zep-UvFq6NAxJf3>-0f*-&ha=LP$THZ$FFXxt7X4E9jdy<UKhv)S5UXoUF}|5MJmO6
zRk58T5|Uu!<4fl+ELk{x7)@x~%-+eut|a;5gx6Q}MY6q0-#6%QfxV&0y%xO|*_(?w
zchzFMy9ssW?rIW{tlI*6<0{U{W?(D{vN^$`z=6V=()|o@1lw1DiNCMJ$hEg{b<lrZ
zQ=^PL{a@yDPE+&RYx(>}eZ!sIHTGb)OuP*a2&)CRWUODy$NVP9YJMZ<u4`<mtErNT
z3tDPqT`9Co{|#D1C_cNk)@^TT8OGM|x*&NbzscQD&Hd{(mTO<>S%qN~+ue25^~7{l
zuu2+-9Lm`x)2f%U)2idA)lN^xGm=>~zoB}SeO`5AZN20%S6en&+s*B*)b6OuX=>uo
zFGc2-lIoT9lEHsf1GrgLTyot2SLGC6S9dczN5H<W%Nx{5V~1+(?#AkRw39m~UDpxD
zxT?6J<pyH^+VO*?>~7ih2zZkDle^!bPGW@#PM{P+ZW`4nsG;|U;s$qhLs50(DtpTf
z`7XL%mN%0dsinx%$kjF2uan<R+9c*N)&d0eoTgTKt6RxlRWYXtQ<>XS!!@}PNAgJK
z$Plgqxf%xu^dHs$xVqkLudZFo!v8p$sB0r{h6j?@^wnC&Q8IGvxED0ldg`U=A0124
z_zE|qq$?$Qt6NEfytZ!G7_aa<4IjGjyAD>7PA>j;ouIql$;!aj!CqBC!BY`kT_gOG
zZID=(dbvSAo<>DdS8><SfO^>kG2=Em>Q;H&l0mW@IpuJf28VLpRK_SnDD>Fn8T8tC
za24B<KC4&T6{KNmzg{-QSHnSNY`l_0D(G`Pm{K9HRWmUx7`-wF-HCK#T7BzGHZ%)K
z<r~_Tol|IKbBN|EJsh0oX14eh@WYt9ZoH+<_+OE(AMw}2T_LK>u?nlm{DzJ8x(Rua
z!_i{rC=^^T(;}EnllyvRz8UNlh5&!9?@-bl^cso_<S)uoiUmdXRdujg*}kqfBRMyo
z13Rp>v$ak3mc~0msWHnr?X0cFBPZ$eYtu==3FcPX8<Bq3@^ZZ&+v;*#?ZqZ(;;C`h
zHFLz?l@i$+xNOK<jhvGp8ybozz?3wR%&!Zh*AU9J*EQC0m__UEvon}0rz0+1<&*i@
zCD{e6v?5Apk=U^-F#)nI5+f{D7A<ucbn$`(Y_$VHkbHDl?~^A><Ggl^!{rT*Z8fzt
zq|lor^9EZT>aSz}rn(E|pOoFKlE`2VqWA0R1oKi>0T`C|2U95~m^ZS^SAm!1`E{-K
z+H6i*q%B9qg6h_~22VqFOHEy!Ohrau3SceQ_jq%=3-Vr2*LbfT@@U~?{^{+`S;&;u
zRJ&2#c)dpPXA=@kPIb+_HwIWphIs?KorAR*$7bAocvl!wMkm{CFwao<p5H>9%x{#2
z9#8jqFv6KMHM-Z%#QcBFic<3No7qKB9;L`-u-3BILL9kutLs`Y<6<ZY#Kkwk2Tp0S
zxz&_ZWN)ahYpe~f3BCz#akaxPD^}J;yb`6a5v3fjJT=G&TbS}{HzurAY-!`YjZJGB
z*}3&=o1Ne_Sf6XJw{vzjA1gy?^%$%#ch?QC4#6v3mNYfNw~#N;xPv&zuaL;n3=A7+
z!m2dS?QU}8Q$piv2(6a2RbysBZ>YlBFtk`_XaTFxEhfLeQ6CH8<&q}@R}Nl5>gZqM
zm39K`HCX&Ji##0L<N$b!v^HrW9?P2QJq>ntPLtd1Y34%Zd=G}Ou!&t@udM^u3?sd;
zHBL(U@W}ve9Gg#j26)ewM9Svc8|#!d>I19m7CX^sz!DFl#{Vmb1dn17(Ib2$R<tR>
zWGkswsJv3ztYGHPSzrr}rX;^4^d8#V2+5Ha^9cLMDA+Q)y9Mh#>Z90R<ADg)vSoEm
z_0p`sU~gbfkR+4WSWEH<jS);^#eiLs_@p#4mMdkGw5y@O=hxNSL%J(~Ks;EjP=DB`
zz^+O|T?<Ia+Wvamw;}9FGez(v=&-UWGm0&f{-tH^zZT-8be)O6@d8frhkuEFDRMc4
zkKsX7?g48_R5l{=6eEVrnU`IZn2enWxnG2pn{s_4sw}PYzka|sLY0Pvb*vKZ6{fx!
zD?ucfs~knAe?vyDM+6%gjqoB^In8XdU>|aM6;jGs%(R5m);lS~2;P#AZzNGke!2EZ
z_9f%fGKuh$YQLl0%(W~_ujzCH9BAWD<rroZk{3GoIQ*Bj0{@97t`)diac#o&2VC8_
zUc_|<*Ew95a2eqFakysU%D`pAwE|Z?u2x(daXp4>3$CrW{)(#~*Q>bR!*veV5H8J1
zhKa#76IT|l0$f$N>T#{ZwGr2oxagOVm}D|rl2cOCvUBF-=H-7~{I}KA&2gksUJ`nf
zJSRT5xq)p<HvayERtJ6w4u`Zkhh?m?r6qT&+{5tvBd#sjQ{RF=przl4#dLBJ|AP{)
z7+fV3$MAQW^b59;jGJ*e(dI;3QE_hZiX7d(Gfgw^dH&~dw@*15C#cYV)mZ-D?IDNu
zl<#V;m82dH-ZF6w|IM9KQa~RH|ANZk|KUpiH|^``O4-;T#aQ|?r7h!8r~Ln|Bs)6c
zBbSZ$-FIK@N{B@k5Y=O)0+V1EoPu13$6YHi8UJg)GX&ljp4vu#drH?E@7%xgqV=b9
ze(;OCMmPSfYvq04diF0zcWqnfo%S?)_Fm`uyPq+{#!S7iV1s{E-?{LP@7s6(=1>28
zbIhFWyYyr8b00fi{>;-Ixe<o!4*e6+Q#8%Zwcfyrh=F6-&wltx_5gS0(b(;c)BE>_
zFMOslO?<ZOeB_1mPetE-`}tX)oO$bovF7iXpSzs#ZSjuC1;W}B8}~hRwtN2hXE*!5
z{C4g(Hu{-@oiqOW$mcufKKI#$yB}ms2@jn=-fx*X;?(#2f1L9x*8J+|Z$H?v^Z6G)
zJ9FX7xj%c=@bt&Fp6_!rn)m7260;x9|K4AAJ^3E}vH1V|f)aoYl0e>1_&h<AI5u%Y
zBAb|)n4Y*Gu`KcaL~r5~iQ5zRC%%;UTH;`0c#=LTE@^Vo{G{5X#-x^{-lP|kjwijJ
z^pB*=NgC4xQ=Dm*X`ZRrwAi%XB$&Q$ddl=W(@Un;Oj+hUbCG$I`Em0f&D+g;%qPre
z&4Xs0CC*ZAskYpnl91ApQkv>b{bA~v)X!2craor<vvrU4Gi!N9b;kP{|Hz1+l{9Pe
z>>0Be7XOVgY<@g={C?6;leQ&2m-J!MVA5x%FHB?28RmKB73LqAe_`H+J~WommKhd{
zrO>j(vc|H(@=MF_Eq#__mcLs*vy4mrR&spu1Ig{l-N{FiPbPnm%%nu8d@JRSlzAzO
zQkJHyN@-1bI;AJ&P|B&4ODPjlZ%;L+u1)=M>hDvxr}m~EPkl4><5W#rOxldJS!v~I
z_ojU}?LX2sqzP%8(*84TbK17FeQAf%PNuz`=1=<~ZB+W$^eO4zPB*3JrWdC#O?RcY
zr$3s$GrcE0kX~zTwSLd~nDtNAeb!Ufx2&RdO~&^#ewy)@j3XHzWJG70GVjT(&wMKL
zkC}%u-^sj`dHbx#XZ_c#-LsC(dVSWwtWRf6oIPds-Ls**1k6E@%Y=lygqj3rLR&&-
z!uJxkC%l#LZh}5BFR>tTSz;r!*`D}V;^xF>6L%*bN_;i(t;BZ|M<nTz@{{gKTAow~
zjs7s{uSrLeK1kA=CYq+2vP=%s{ie;P7feS?@0<LlPfT~3?>5`by!i?9@62zT-!l)G
zKQfQE++txZ(;(+ENP30EZh6S^YsmUp%N|Rw<t58;%bS+4WJ7Xn@@>g;lNThHCRai3
zoyk8){&8|o@`2=|$)}R<N=Z%0PWe^Jv6R23s8S<Rr=+%}K9<^@dL;F9swyoaZA#kA
zw8XTMw1?7uk+v)CjkLJ*!t^ESE7EtR?@RAbe<}TR`uph@(??hh*4wP9*7??A>vyeB
zST|dDT3@uDu|{NkCnGImS%xEHea6EXKg;-SMt{b!j6lZ7Ox^6F*;TXG&;H5m?XyqM
zet$NTg*g@Cyfq;{;U3dU(_Ygg^Q-1h%{I#)EM2gjpQdb0*^>UJbc1!0m02PGH`!U1
zT+2L5fyHJiu~b;9Ac0zo(^79~ws4kK%Q{P&rQNd8@`z=V<uS_>mM39{TP#n5-d4+Y
j%Pz}bE!~#=mVV2Np#G}mqy?Q*48}v3V1QQt&;R~6ge$xH

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.inf
new file mode 100644
index 0000000..0129198
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchSpiSmm.inf
@@ -0,0 +1,251 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI SMM driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiSmm

+  FILE_GUID                  = 27F4917B-A707-4aad-9676-26DF168CBF0D

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiSmm.efi

+  SMM_DEPEX|PchSpiSmm.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5800

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5808

+

+

+[Protocols.IA32]

+  gEfiSmmSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex
new file mode 100644
index 0000000..05a6cfe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.depex
@@ -0,0 +1 @@
+H�t���N��ľ���s+�N+1J��V{PD,
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.efi
new file mode 100644
index 0000000000000000000000000000000000000000..9593093310385bcda923d6bbe589bcdd756ada1a
GIT binary patch
literal 5984
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf
new file mode 100644
index 0000000..3711a1d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PchUsb.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   PchUsb.inf

+#

+# Abstract:

+#

+#   Component description file for PCH USB PEIM

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchUsb

+  FILE_GUID                  = 3B873142-4252-49eb-BF17-105CD6F3E808

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchUsb

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchUsb.efi

+  PEI_DEPEX|PchUsb.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1660

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1668

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiUsbControllerPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gEfiPeiMasterBootModePpiGuid   AND gPchUsbPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.depex
new file mode 100644
index 0000000000000000000000000000000000000000..631980e0f8ec20e495bafea5b893c3835d38bb13
GIT binary patch
literal 54
zcmV-60LlLXk?~=zU#<>Jx%%j7(ul@S0<z4yCPHu25xnOBfX6(DfdcmMqZ3Ld@ILb3
M-o+9$FEj%K2msm{`Tzg`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.efi
new file mode 100644
index 0000000000000000000000000000000000000000..63784d5e9c846b817142870a7af4b457d3e1c426
GIT binary patch
literal 22336
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
A_W%F@

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.inf
new file mode 100644
index 0000000..a9a1ab6
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PciHostBridge.inf
@@ -0,0 +1,254 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    PciHostBridge.inf

+#

+#  Abstract:

+#

+#    Component description file for PciHostBridge module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PciHostBridge

+  FILE_GUID                  = 9fd2360e-6b48-11d5-8e71-00902707b35e

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PciHostBridgeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PciHostBridge.efi

+  DXE_DEPEX|PciHostBridge.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x50E8

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x50E0

+

+

+[Protocols.IA32]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  gEfiMetronomeArchProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+

+[Depex.IA32]

+#  (gEfiCpuIo2ProtocolGuid  AND gEfiMetronomeArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.depex
new file mode 100644
index 0000000..95be042
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.depex
@@ -0,0 +1 @@
+=d��I��B������[�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..a368ba810f3bddd4882a8512e781876073b398c9
GIT binary patch
literal 6208
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
G`Tqcf2DzI6

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.inf
new file mode 100644
index 0000000..d0b04fe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmAccess.inf
@@ -0,0 +1,132 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmAccess module

+#

+#  Revision History:

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmAccess

+  FILE_GUID                  = B4E0CDFC-30CD-4b29-A445-B0AA95A532E4

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmAccess.efi

+  PEI_DEPEX|PeiSmmAccess.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1780

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSmmAccessPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiMemoryDiscoveredPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2364ed16b3eec1a06a6aced3ddf5727f08c90d80
GIT binary patch
literal 5120
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.inf
new file mode 100644
index 0000000..6bd7d63
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PeiSmmControl.inf
@@ -0,0 +1,110 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmControl

+  FILE_GUID                  = FF456B9C-0DC7-4682-9E92-0DE84B6E4067

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlPeiDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmControl.efi

+  PEI_DEPEX|PeiSmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1310

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1318

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.depex
new file mode 100644
index 0000000000000000000000000000000000000000..04a994f69f4355bf96f414fc4c084834ed2e90b8
GIT binary patch
literal 72
zcmV-O0Jr}FsZV5&Q0TEuoZ<^aX^xGg0^(>^9)X0^5xnsLfX6(DfdYuE&nL`A)DfCE
e0FWm?!A%18@S_t-Ch$J;;NHa&G%qv*0|N-S1Rr1k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1b0fc15925df044b22576b95bfef24d64698315e
GIT binary patch
literal 17632
zcmeHud0<mzy7x&pLJ1^5k*Y-xnqr|WrD;!^F3^^yfVPtE3x!hJv}q_!Z+cRS16n4n
z5|8=DZ`2uQE^`Mi&I~%v)$t;mBc>Evwu^v{gFAxWIW_1M<hI4B<oiA6B%v&dcfNlo
z`sTdnefH&j-X$f!lKF=}d;Vd{|9?W0kzw)_Vb?G^!-Py9r<lNG-p4SRcgmnCp$xMs
zgkiSMl;2rAs9pa#lOyBN__*tV{&&rHjNfcHGn-*HL+;C|3{!kFgnw{sE^lt<K^qSn
z$u6>$o})i3!&v6p>uUHKhIw+5Z2MOKb2MHi!z`IAqcLJQc%=gx;eU=o1m2;!c5{=h
zR<?<3+e)(W9Q^^_bt4Q@Hs2#`&?<#It;%(zyFbKvHni;P-@8tJ{X%(l&#`02O3MUZ
zs{x8iDAq=~b8hn)uC#_3hFevxlfVVV*T3<OarL@4O!a*WvgbyG9IdK)CDGES46j5k
zN%;B&yeTEVGL+zuEa8AX;kk0&8g>=GHF9>)H4Mya>3=WNLlxo|MowY+9Wb@1R7h@t
zdxZD4@pzO8-|WlmP&1E*-L@mdF-aItFbNWRMEoKa?lELAjOR>fWO$0)+52}SqUy1F
z;pA8DtSj}xiA2v=?t*Wxc)q#;RW*jNT+`w}xqqvkVY)tWXe=G*Sap@cadF{vhN*C6
zumE@Y02v^NfgrI25f-O!*AmPFSXc^R3kfz>hNWzu4OsQc<p58%L=$*k<=zB5#lNzk
z?*C8V!FHv3cX$Hh@y!u^3mIWz*C|JsOW~cLcEX+@WV8Dir6eFkIPko048!naVwqu|
zFZ6&yAt=EAps#hTvz_(vp*l~`o(T-o(Njh-?(*>sMJ1(sm6*8VBNHKMKzFLKuU^40
zulsyH##&c#@Ba*4aIaK^o)-Sz{kQ0QKk`nNu?v8G@0)48>lDj`0odIy^rn5>c3axO
zx=9j(Fd)vAQBJS>V&#hEI!|@a9{9YYhpgGwvVdV+3QC4;??6GRtJ%gPU!`u;Hm%f!
zx}``+RhbZx7EVL<DV7nGj(sIiaW6XyYJ2X6n|y7`H;@}0zP2zQXR%<sOw0xVv~d`C
zLK>Kl0p~%sFBgSlt9s8Y7~Pi}^E6VW-j#cs&eNC6ZorE*qN2Lq^<WfQwCh0?U`jOY
z%ANwas_cypXzoUmmzlOv=yV?xy*>b{{l9{7C6+Ca<l?njpDDq4FsjSb9$~<I;un{J
zBnp5inX0J7vICd_to8SqEL0IKWP|9s3%!G6<$naNd>>=ZgBtNU*wE!scM?Q6A<jmQ
z(Ce@9y6;I)yIZ37o`G888bsL|2BX61)wIZz<C^vvdVS#o_?|+xhmW9lPU>Ak?<1+l
zz`RMAXMN!s^gc&2^@X1Yv=PwW@Mw%FHcv~$WAn7zq;C<xzHkHj04e&y?;{lS`@-X?
zr%(WM9(whC;jx6IKxY^<3ScBl7!s^pf^D7_g=b%Q2EH-PL7IhL{q}5pZ=RNe@9nuX
z;F@+n9<FIDzI(&9_=e;vdVt6^%_ISf@x6K4DtuSC#>e2%HOS9W?|SqSaJEwdqJNS4
zly>M}AlmVij@v2Kw$ZFDvXFh2Rfw>K+~<4pWnc*dh(*`n`uj>ph3!;KAZ(dXT~5w>
zr%7QGdcEP&w5!HUsOTvX&KDF2M%8u?I0{D1_7l=GYWqRy8NK}&p5m-&q?M=3!_VCd
znH^$GaNzcBgyBoD97GbyNmC5z&VwqQ$8ienfYUs}c*h9FkxZ9y1dp_ElGVCId<S?k
zS5D^I8yuJpJYhWP;7i)%bBtI%3vwUC@(q*0`3TxR?{CE?f@CvfJ`V>6CR)x1310_c
zMFnWyCt6`VY0>>@i1;I5Z$E?=aZ!-&E@uXfFpepf0WjG2Ci;6d@xb|zxPZZ_Z4&*N
z5R))P^3`~W#WCy<Dnut@?=lXHEtrVnm!P=Dd7lIag3c=jYuR~I0lcO2)Xx6{g~X?V
zjQkGl3J!da17E%48V5?ACf%Lsn;1SxToB};4F-Wga0L%7_ni*9;v^W6D~|P7p+bw{
zK|+5Rh5(lh9~}mcsDfeeC6j0=zfplI1mm#q`3lNP=XsT2RJx3pkeqNOQd7zv%@UVU
z<J>sHv_<<I!#>9)Yh;D^<XB<}Tvy4k_s;@oN&;*O3Y_L)DgB0#eqb{!r=Qw+95GsB
z98L)hr<9jdQ^-u}79*Tz6pnO}^pv%qC1+J!a9|2VTb>SvtnT(e$lirFdc9AH-(W<h
zHOjQ-g98b0s;_0X^i6#Mb4Px(L=oE;gKWo3Y-7OkHMHN0zX|eqKxX>$-~dM)GGm-)
z)F!#tEryMLQPPX$M3D6>(WG${*uIMP8}a@irvjOEdT<~e4ApOBMiOH@mA@!7i7T%7
ze8|y4lO+?b6Mv3+j8~K8Oi)09B!Ei5OK86q`|&P2#4q53;DBF1gkL}y2^jhI8Ub8D
zfEW}oFg4(FNkD%LRML5Zxnn6Uv&K}q^Pd&J!m?qFM)!nxj=D6uQ#?&wWqG~J_)Gb*
z%Nj;+r}ooM*S+zb-{9kRyyM=uNAB%$Z`?vXYZRfKs29*&#+`WX#PeBE8MMcr{NF&q
zVDbmmHemE>@{6Z}NdCHdFgOq_4b1F7X&AXJV6#+LrNX<02`2D)r}>hU>6eh{m^POJ
znSKFlfP^eCX~s*A5buX;jF*CB1A=kjYTk!<-_Utr5oQWTW4c939U=d`ur#K-U+Mf*
zoz~5dQ|~qoI}e48Mx%5KpoLw7h8;_QTM!2bS!vztZj*(K9!~3S^|ROb=_u*IS^dUR
zWm-2j)W!iyM|mXjsx~24(Zgh5*j4lhc_iX0x`NQ1W>IpO2#1Nzjbd19mS7Zx`~mgu
zoJ}erUldBtt9R!;t^%h!u0keUg-p20ktL4aSD>G>J%MpV^csB%Zy3Ir$Bn+t#&5}K
z*jX#pyNusrA<Yv1JSC7J^W;g_7aX{QkWHv=mgr#guS8MwY27=C*6mFdpAO>tE7YUG
z0aU0<mh>R)0g0BTqg0`!WKi!y(K{rC^2|Kwehl4XQ0yLSjN7==WR-Us;Il78qhR(T
zhdRU|DFdTqA_~y0i893lG7*(!X+@XTndQM(A#9V&_~O;ql1qZLCSW`*>}Nduct!H#
z75MSWX5-7G-m|0CQ(&h>>Sc=MvZVgYBR*gC%3v{wp&f{GqlQ^GcGE_c=00rQ@5brK
z=TOn&aWB?rT0B&)5)En`Qenh<Du^utYM+NS$mt0c@-@zraGJ`M58?p*If%ZF-pbH_
zLJ3kxDZVQgFKb9e_oqx~zH;BQ2#eT*)d$(2wuY3SJY&^Y2ql;&st{5jQ+LW5S}}A1
zli0cOQiOfdzOA4jRzJqli$&499%uoil40k@VTQ*ZZWt);s4RE>XJQ2qt#iwT{9%c2
z*!_NJURH>^<TEjqz#-*p$RwQR!W7Qo1gH{L9&a4h9hOzeries!9YQ%I(e2O|qRFQ?
z@V+NpEPLYww35!BJJGSGR0?m2Z{RASVz5WSYb?wh4C3hdmiPh<;+VOdv_Beu{N&}d
zL+dn_I6_!J2rfSYsU^G{|Mtmm(oO)OoDgt8eM_`R2uHnR>s_Jlwh(7eh<bNKJ>2)V
zYARNtLift$Jw+wLd#{sDrDf1+l4Uc<_q|9g|4Y0tpw}eJRvP|;JglK%olh9@-nHpU
zX11EKPqG{&_^UE}0H?+ZNXxA^q&YsS7J9K|?h&8DX2%_7MA#Yl0_T0<g7{aAy(T%t
z1JTS}@E9Q;N5vP32W)r~7|{4`OAG<Om4QDYpm$t-+8D<KXK#qJFJRc0>fLJCSiLg7
zdwCCJTof*gcY=fPu3NQOd<csjSlVTlQ!FXO@*zZMFR36JB$0i%2|=hXNNSaJ4F+72
zihP7#QG}%Pd1E&D{FWCJmuwk2h;wO0?qVD;9iIr`w7jRlrP6jC#>K!BK(oeI?%jf?
zc%1NXGolhyTHUFk3nuChU8t;(@G&TKt6##&dZ<pT3_V%VQzX1c=`lqPLkGOD_Zabc
zl=yUgz_Uod?s~&G{`L&gs&#B;y+O6eadCOio-DjC@6mavbsgrTQxtrZjHJx$NLMnB
zi!u(m3n9ThKp4(C=|!)l%tM|I;>IHe9cywWjGrp0-8*zTZMaQi*+AnQjr-J4qpVb{
z`O@dBs8~)O6sojJcv0vDS16cQ;$Gt$I*}%}O}6YHx|GVjXYdpc5~<KfpcQ~=696;#
zVLJ$xHY6!Dt_b|6gFkjm<X772el{$J7?UJ@GQ$*_5ZqF9+z%?ncxk}BOeyA|hXsJb
zLDLW$WV!?p-beaH03;lB(LI(ZUPe}f5^ow|SoG4{1GwALMhh3kkMNfEH%ByXJ2Zwo
zZIokz0RV?G?V=;>Wra5+(L={Vs3u1$6p?xwmh9`MNR^`}emDWP)C+Ha8BiS|Efp@x
zQ9Vt#Kchr^j&NTl+yazJ;a%Y<%B|0#6n_d%uwvzMvVm^X=mMjFE@DhR+(}p&F&Q%p
z8048!-5}g<a3~*UQBBj{YP}tWS+RK{uM`eoYqB{@5t^^bO>-zWoU29=kPZ&0QivDj
zK#8h10?u@!4!<SNhvgL&LcS{ZaTlY<X?%ikXxtIU8EIC-nMrUa!u<a0O*-7zNYjP#
zW#2o{7Zv35@gT=NmC5Owfhw^BNc;XQgN_hrsHYUOk)LGQNs#ws$jcH@PwZyArf<ds
zJVU^bW#Cf;#5GJbZoa|?dz5^r^V}!M+E8n3HD*zsTlKKeq+Q}dln^{qm*<gL8^XH2
zY}Iyt(9RBhB%HK{I8QLb@uAb!IaUQws>CDmzFZhs23MMd9(SIW)pn?Nofvw*<jzyh
zvk}e%k>Yzmf+G&W?=eC@*qh?T!5)^slWtk#zqN)~6UvZ?4^xfF(^erDgaK=)?v(Im
z_0SOJfR7(z4K0uF6Na62+9gcam;5T{Ii-5PLO4zwtRW_=Ld?8My;K+=A(%Vyi=Dnu
zM=Xq6qVr{@z1eyP5eUa2ayDpGS80R+Ldt|uOVZx7Zx5m|R)xDTL_CY*K|F4@pxeo>
zgkCvill)U@)A>#~7`kZ~;Q%-!LAtg`SfRvR`8)PEahv|iusGSrp_*we48=Gb8Ml|>
zE?yajpy)jPYw(ou_{qp4+;OTc#YsTDAE@59F|?oR(_l{~e@9wxo66Ecz#;<f>Vr&l
z7;m%$(GaAZAX^B6$-xLmhI;6Fh+ianzw!BiHpQ}s&}xAuE8-wUkgeho2|@i>16BVL
z6<9<Qb3Ai!E6R8?#V=(R(Uv92V9^+4kq8!`s1S|>ncM>=#DSEMIFK@V+Drs>lF&VL
z`cBWiIobqa*tJ2M;8k@UR(B3iQ1FJ^%Osr#?u<iAM_bk9Q+J-h!P}kX1NtiUOTD3e
z1nWPFK@^`%v|=!hOxvJMS36H(6jy*bT9$-wI+r;eSjcNvm3H>#9IYB{Dq0%Gv}ond
z%aQ8N-T2ADd3n6L(=K&l`KfMRyJXW*2CEdNj)sW)<FG|Tx}dy;o^X|@)cfyOsP~6-
ze~O*9XWXHC^Rzk0fF;h$bJUM*hiG-@Gh}tQQ$#lh$~Z-q-{=%0`MaE=f}e;lbr(nD
zN0t3|O3#q~$#_CW4C1Cl?#zY?@H2_Wnm!Jf6HZSUE+)KV=t&bRbA*iRualSP@5EsH
zvw`6}8rJ_uDCIn==zpG`m*=WGe<^hm_`B4P?vT2MwtJkH^Z2pO%T4MovcY*&<K5`j
zXpHkHOX}zb;TNs*a)MoluthsB8`j;krZ+P5FYbRiL7oX6Ajj+v3Hk=8t?yBUiH_VD
zf5OjlvfoIQ63Ne7kP1Lz`=3GwFgQXQ@4zdj8;iXg+#iU%^Kygwv4e1%y7NQQwIAUm
zlc;ta;#WBPbJd-+hjR9Zt2-wmgwFo4>dp*|EOquP_zCz@cd9YoKbBH3PaA{zst$Tu
zy*qQn8>!x{aCV0wyfN^06>_7h{}a@P&|+=$_hmw)BXWNp2iC7qSo5^S{TWCoqLPNC
z%=(^0LO$+<B{XsR$J2gER&GL2IiY35J64z<P>t8-VLgf5{~_jQ{}K{;Tuj2`bUzq|
z1$rD!(>!gSvpYh)dq5nC#A~rOPrdt)dRMmEgs%zoHJ-jy^fivYBI#=^eJM=^rDYZo
zyseD8Q@e$HJi{cuj2YwJseO)oe=wa)lBRJ_EX^G&Q>lLDKsHVISO!%j9F1mUF+#7Q
zknwQ*(EAk2{+FcKw5U59p*h7y-T65&rB0{Z;cu7Tih&@7SKYY?-F_2}VKiyJV~Q*p
zK}5&wk3k^3$?9EM;jktv%!HUyCzQTIOqMu+CBsM-8TJ?aBH%ozMX)VoRsT#(Ab&+b
z{@*$lxGZ-}-gM6Qcb{+nF?fw~SaJ_sgOnzpOh=XKKS^o#ecA^!=sLXqcH!ivv(V!a
zcec+t%&v<SlAhtoE|v3g_`0b=l6w{2u;NN8rwypPTEV@*k|P_Jqvgr6ZxI>X%JrAg
zggSQ^GkVj}4p@x^f2{M|w=gmjxk1(CsPj{egZ&P_W{&&<>*qJ#tA58ds#Kb27Z@Y7
zj|eTpkH6h<Hq3K2baSy*J=hb%hxeie#|u5qGfMR{D8-Ozv_@89y&Q*aNuX?Z`5w6&
zn~=fQ+mR?x#xc=(G=wPU41MhU3p4bIH%{n@)c}$qf$#9%2Iy4As;NY*@f+VGN{Ku~
z=PN74?xaP0U@*8FvBV!5H$;oIV*-q1rPb&Vz0>Xk&TbOALoZ+tLcv02mUo@PHn1<A
z*7)*{4Uoc5#JONR)+3xmhC(G$jH?-bY?coUi4}Z^{Dw|x3ZaK0A3GiMErUhbQFnbH
z=c@?}+5Y2rxn&(eAwU`-=Zg265K2k2d{zI?{Iox`n$(kER1@z3;R-G>QDdQkHm%n#
zRa1XCzDK=(85XuNfrX7GXBQ;%W8p1rX6QHGBcPOLd9hY&DAuyAVL)OL5e4i6%eo9&
zwHyl|%M_2jAsx<WOM+D$LRf(A#e#h|HjhatL77&z02^n=B`8-+y8>*tXk!4MrZIf&
z;|M#(lR7>8JVo)f914kCcngaRZ3cBRhs+=c$Y&v6IvgG#=}?ixL&ZGDMyRm9(3()-
zt(NePkPy=J223q5SxJ<v>CvwxO(6#!Dfespc%D|>d6>VCRHXAaXznaj@9KtPV7vqd
zK22l+<8+5pK%jo68`+{sgN|zFOAKaR6)N)nQusfj`>eFFH~|?+_hO4f`s2bO28^Rk
zq)m?S7K~m%T(L0F{&_f**Jfr(IZAB#Jkrk^npp{h%hL`x(siCJ>QW#jxrbVl$!baG
z4;<6MdYa#*(oXs8#ZkP8DD9B?$16~Opyq4}(WVXBI*K{%+8jwxBN*;pQrEdbo5#o+
zLri+9?7k<6YrqfKI0myngf<R=v<vK~)Lqe-x^mj^5l|w|n~c-T6zP<`&x2AXZ)E8P
zrh=phZ<XR!OyQ176z_o~_$40OMxhUrbr1((|7{)Qx{cAeak4VF|HLmM8Zj2>gY%$t
zxZ8A|_RY?XDh4+Z8XV)S%PRNA;VI^joNev6uIe%>`Q!q(QL~S5!A0eEGjI-$mhU4d
zU?sncAAbddPxxQjps`;EoX2H3?l3Kmtc3*@aVGBIEf8aoSc*9ph);}Lr4@f6GeIv2
z9F7r-mlZwOIzQu~0}1pPF-bpf6<Wi5rr9vN%d;LohI>PCi6@<bPxik9?c{ra0=iI=
z{(b`+x#R@=x?)(D*>;!ku~3$?7e$o`eOnA2@cBADjw!j$o~X2SnfA~8Kj+FP>cu&0
zjz<YO3e9$+hMfQ2MjfQSsZ{(q1nu9PLa*!Z8T~u|HY_>P@BDNRa$Fpu73iQQK#9`{
zXsmhyeF%^=Ua=B?4{?zeQ_DL9ZK~W$oW<9GP_b7!o2crY!(sd+_3qq|P~53U)Z-rg
zyw0<-2RCW{(^^5PcdENox%UhLC(itvWZ6XZ?$VIZcg0^(Mh`&3$G|67IWv-A3geh3
zITUNt455Sa3%wW%fpBSU0wdoE+0A2|u@V7YW~g_Oy3Sz*AL$&%dgmMtbxaUnfQW5`
z1OJSX{wBmbnXVxMt+dFe!IF%7noZ|5m{3K+7Oj?wDefyugf9@RKS_r@x(CH9jkRPN
za0VMd-gzfTv!R3DFW`Oe06FL1usf~rYp?E<a=Cpr_FIFnf_^qocb-SjdbiIMEsWPf
zFJYk6R}h2kbu?}-oL4mK?xOn=lY24#dV}CnQepN{oq-MUn|$XXtnE&V2ZAl&)giu#
z)up0h56)j5{ZC;845CqOG{V!`*)YW#RZ;I!f(7pL+e2{D4c|w<fuU$<+)Km6DqL0J
z?5?4A;q5Z_(kM|p4~9agHV)K~8NNpYMc^^Qi5C8B^6iuui;p4`=+6^WB+&o?`~=x3
z!u1v4*IxQt1Z*!m=mfv%AUPO8x*+A0bXhl}a_=zg5F5yZdLe>Rj==sZ<AyadLM|cP
z0QUspGi10>8g?Cv4}vJ65(@rE48=<2if|DsP2d9jsO-w8y{iB26MqyHhpTGw6qbG*
z(eWn@D*5Wus2sY0EBA9Du8EbDuEERBEkNJ5n<Ui{;V+1APYB8d?yhmYi&=#GOz)%z
z_k9azoZrFngO4km2mbz57EJwu<_kz~{6uCI6&VYQtBtu!tBr+)%L>`JBEE)qw6Ym&
ztbHc-H4HQT1|TXKJ__t~harqPpkPc*HGI9zzIIWI!(?k}tX+@cJX>uI-)L)|v%pkS
zyQZeW%%-zz^K07uZ>_|mHnnP<&Az5;ZS%Uss?w&m#NyRWe2%%TvDR!_(@=E-+Z#vb
z))F6+-BxREZME4`S<uZ}WV4&+6<h3escdZBJn4UiVcD#f#@eMc)=q{MF=mEm98AkK
z{X&e^GB&0SPdh_)<eOO8CU$9aD$8aUnNnlxX0vQg>*^+if`N#P*gA$Go@;X&TWeM~
zne!T3`DOM7c6tUI7uRNMtYc@*WD{oo@9oWRS=MH@+Z*f5vJNo!sy@pc{7n>!8?D6h
zrFHEqNR5Q{1birR`6f6C{(=>7Np_L(!D1=SfiXCcK;*2{*mgGGQ97>}oq4hCuyv8C
zWN8lG=s(H!R$P8DOl)f;li%WZQ=z%VX6I9hX*@pUF+5WJ{3Tg)@L{uSAjK3Ihb}yC
zZ(Q99?h+1>F1Fc5<4EHyvxIqwWHW30J?iI=>MtJEFCNu51^XO>tu{W(m{P{b6f(I?
z9{Od{SdO`sZ)}!Q_xt0QkDwq)^BPy%YwYW*vTIrq_tjNJu%fv^&da#ClBEw8KRA;e
z&2)x87>LLGnQR7P!}!tSMx)JPi);>it$8N9fCbMyb2BEVJQBp0-`P2%`QHp**69Xw
zn4o@sgqx_wKyU+Z!Q`!OFxA#o=Qg&R>$3Q4M`Kf6H3l%F8`nD4mNYlk+Um?QADIN+
z#A{LGLuNKEx6$6p%fOjZI*x)BnQLv$b=LrcbfX*+p!;F^WVO~dHp)Ex+T=90HKIcJ
zrC(Qjz9W{PDdCdZb%_Y)HMQzH@QZ5d{VwpwKig4XZ<b_^t^-m5y*Wrq!CT78H?OtX
z*CX37*I;B-rP*%7Sed=1rNwNQWe5C(5|q%M>;E8C{JG{AAJ5K*HgSIBIe25!zk^~_
zEM(&A>e)?va=o65Y%S}r*YgL-mJ>Z7_LlxxYJ+c<Hq%UOZLF=5Uh`XPCC9{>P@UKr
ztj<68ZWUJ(nD8{Q108UQ3r?IkzfLp35j8e2p(*zrwX`NNWi|F@6a==Uc}=rzT{FA5
zX?+XrssiIV<|Z?5W^-#An;drY)$uZW<LKcazCUoqHXB>Cwx+3xGA6(ai+7Wm&5`~#
zKhK8xYP8#JcHFr&x79RZ6*AS>Yt}*<hM1D(R!0j}YI7Y!rP$Ax<|}hE84ucUQa0Dr
z(V8eP(E;v|FX@U3&zozBA66#TRuA-6sbEQKeW|U<vDVCDZMHjFc>KmLzvnt&!h<$8
z-(1&NL$*jAw$@V9+yG7tU_6^^b2L*wOL8fyU2~%!MlxD#&8=qQu@>nMSL5GAG(wWi
z0Vy(lD_<konbl+`3)tZMYT5p!i?FKteN~)W9PE=twpv?L0JgNb*0#0<YXjDJw$yBI
z#r}q5poBT#g7s`^qYYajX>?KHq5v6VY_21J1Z{-UW_z2tj*Uw+P%*gru9MbiKYngw
zlQ|f>JUGOGZ4}8{1TE~gwT-P{AxHbx^(>IS!92$NFx#7Jnvl<BjdfCq*WrK>m)lg+
z(28_^7<D6IKD&YPIz@UUCP<HzgqeYLD~L=u^59H%!v^en0$dW>fiA6bRA=PGlGX$&
zGvB+U+)%=2N_8_X7aPqQ{`$pChW&5&-(<;>B|uLU)n?ShA{er0Nmk)}4jVXG?(AD=
zeKW2sRavR7ey_ndBbCfz;sU<#EA_)v2@qjQ$n|~Z4^-qvLa346jG2m=L%SRNwYmSj
z!O>W^fQd~=X`d6DkQDq%Y>!Pyq&K;9{gZN7=Eq~E5`7}}>GD?+wx!ffr7z%tcRAsY
z$L<fmcVF`v!Ji0(&1aYxv?R1VGz;1Ww9RN+&~~8hK|6+a8cjqSMpGq%4lNEX2`vZB
zgtiK;39TKi6YWW~t!O*YcA|OEPN0csBWOze=o^g|hn9ktgI114pM?2|x};=IpJK?$
zUX)|Zy?N^1dhX_!S34T81{Im@jWtcQfK>&Cq%}=G#<9y|YgVwaHF2?ZGjYnPiDVj<
zu0_RIQqx?AdUgF_1p0m7+E-$(Z_KvYc*vylSZlF-uvuO8T>xm(P*i+_n1<}48^;Q7
z#3O&*N}obUGbPMTRr(H?<e%^3o6~MyVp~lMy!;@7wNkhBh9W~c0)%B2TZkXv&wN{*
zqv@Jc0;I|3Bk;gEdlB}`B>E;}q{sBQIAc3+Zmu)eQJJSQdd)tPoiT&G21BZ>blj6G
z+4c0-sf<m_&FJY!BGb!Cvb3{j@h<}<MOgYbeQaYZ%VP)9RAa}%p0}~9&8%HI_nGVP
zbIAAkJ8(`a!P3*%&}^=Qp+5vaxEC)pudQi>OZ@xXThZQZFG#+P%c`rhV}pj3Zq%-g
zA}oJ!lf>*m3rmw5jn1x&UO`V4S`^xgfKj7Q07f;6?i4&2r&d^$Q?y@IXJ0dMdgf1m
zH~v3Nhr>E>zjm$7(sAm>8<3@0y2Pp+V|K~n>e8abg!#$sDO{B__zzu{$gFO1iPBQH
zn!#_P3@+`i`7B;koVN;&con08e;Z2w=Cy5x|6RLQ+W*kM_NtqRG5@~{C7;cPk@CCt
zp@$x-Ta9g*^lw1V5HHFhJXzfODIs|7YHXBm@_D_pLKiOnGIP)HsfUkO5B)Z7&nu^9
zD1W!)KR<akomr(FIQ(BTUjOOVS-ForRJrR9$Cpe3i!;QgH$0_-o=++wm?<F<3>zB3
zj17yx6+VrkevgS@o>fLL@1w068^L^zHV_%X>=_rqTte$mMKDXoM=+WRGEMPphN(ic
zpz&xOXiuQ+erU^U@9p{efh{xt_3Ny&Q~$K+-N(*9=Y92oZJ#e(z`Zj5`MisUb$@y4
zor%9pWuClmVR!x{!&66p@=5rjKVJS(&NmYcRkAk!{Qjp0{^@~#df=ZPxS0pESV!V@
ziMqwQJYBi2M(5N$q5D_eR^9WueYzgqySh(w7j;*35lLdw*GX5B#wN!k-<v!q*_d3K
zY)^h9`QMZOko;=0C;43R7s=lwkL4zFIb0F9f~(~kxV7BBaO=1qahtd<PT+pRJ;VKi
z`!)Al?nUkuZVz{WJI1}seZ>7Y_Z4@UQ|QO&C+er_r|Iv}&(zP;C+pMox%xbPp}s=j
zsCVdptba`Zg#M@cpX;~i|ETxqkLbVB59+VzBU0j0=A~4o{5Zv((wlN7<;xUb${52$
z18bONNHCZUO@^NvdJM-6=M7_0C#A-u=BGBKHl@Co+MjxNT3g!5G;MlfdRO{W>4WL_
zXLMvdma#44g^Zqz;~Af3bS>;&_`yPW41bOCBp!+cE}=M~Ho>0oqlB#q<?|n(AD+l2
z&P-g8Se@9BxHIvM#CH=16X)wvb!EC2bUSs2bf<I!x~WNbC#^_oNIH~sGO0gldh*QV
z4ESygH<8nE8QlBa5G;?;bNV9v=P7?n(HQ0!78{xk?S?-ZUNd~0{y*sj8Gp!VSn%kA
za|;$O%wJeb`mpl;XYTw(^YuwtN!ya1PuiI@E?JZOK=MP$KTiI?h{oaM)5&L(FC>R@
zD(+5h7MF-vJk4$4UgCCfZ*u)yvfij)rmxg*(r?r6*MFm*l~S7WaLS`8ze@RC%Ihh8
z@Z%RLlMQzo?l%-07@Ps=oVbds<1Abg*TV5!JGX)B;5xa@+!NfB;QTCjZ{?ojb|AJd
zb2|~;KXD%JAa@8cKEb`io#sB|&TyY`B6pq};4X2)+@bVi=_k_PNk5(b;q{v$$O?S^
EA8N$=3jhEB

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.inf
new file mode 100644
index 0000000..71d8f67
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PlatformCpuPolicy.inf
@@ -0,0 +1,227 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  1999 - 2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PlatformCpuPolicy.inf

+#

+#  Abstract:

+#

+#    Platform CPU driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PlatformCpuPolicy

+  FILE_GUID                  = cb933912-df8f-4305-b1f9-7b44fa11395c

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PlatformCpuPolicyEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PlatformCpuPolicy.efi

+  DXE_DEPEX|PlatformCpuPolicy.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3C70

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x3C78

+

+

+[Protocols.IA32]

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiPlatformCpuProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiStatusCodeRuntimeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf

+

+[Depex.IA32]

+#  (gEfiFirmwareVolumeBlockProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiResetArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..e076777323483e39152c49173d8ba560c7091749
GIT binary patch
literal 36
scmZR2lo2M^*m6a1&qs!a<2D_QOy52%7WPv6VE5_4y`w@V`X<aA06L)%NdN!<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..01061131b8d1b15f36beccdc9976f7cf01e38cba
GIT binary patch
literal 17472
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf
new file mode 100644
index 0000000..3220d19
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PnpDxe.inf
@@ -0,0 +1,207 @@
+#/** @file

+#

+#    Component description file a sinngle segment PCI Host Bridge driver.

+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#

+# Copyright (c)  1999 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PnpDxe

+  FILE_GUID                  = CE7CD764-a1d9-44e5-9857-14fefaae96dd

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePnpSetting

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PnpDxe.efi

+  DXE_DEPEX|PnpDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x28D0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x28D8

+

+

+[Protocols.IA32]

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiNormalSetupGuid

+

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gEfiVariableArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.depex
new file mode 100644
index 0000000..df1f82f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
��������G����P���ƣ�^�H���3����HN
2��G�,?��f�����c�,E�9���&^��J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.efi
new file mode 100644
index 0000000000000000000000000000000000000000..3eac443d86e3349a72e807ea00c723ed13d4d39f
GIT binary patch
literal 36352
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
J(EpGA{twc??P>r3

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.inf
new file mode 100644
index 0000000..d9ac1f5
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/PowerManagement2.inf
@@ -0,0 +1,270 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#Module Name:

+#

+#  PowerManagement.inf

+#

+#Abstract:

+#

+#  Component description file for Power Management module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PowerManagement2

+  FILE_GUID                  = 41E89AB0-BD3D-44b6-A431-E4836EFBF2CB

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePowerManagement

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PowerManagement2.efi

+  SMM_DEPEX|PowerManagement2.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x8208

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x8200

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gPpmPlatformPolicyProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gPowerManagementAcpiTableStorageGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/IstApplet/Smm/IstApplet.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/ValleyView/Smm/MchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/SouthCluster/Smm/IchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/Silvermont/Smm/SilvermontPpmLib.inf

+

+[Depex.IA32]

+#  (gEfiAcpiTableProtocolGuid        AND gEfiAcpiSdtProtocolGuid          AND gEfiSmmBase2ProtocolGuid         AND gEfiSmmSwDispatch2ProtocolGuid   AND gEfiGlobalNvsAreaProtocolGuid    AND gPpmPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.bin b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.bin
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.com b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/ResetVec.com
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4a4275b3d3b3334bf83022ade05eebbec60cfb5f
GIT binary patch
literal 12128
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
L->wIdG1vbAR}0>n

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.inf
new file mode 100644
index 0000000..d19a159
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SataController.inf
@@ -0,0 +1,204 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   SataController.inf

+#

+# Abstract:

+#

+#   Component description file for PCH SATA controller Driver module.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SataController

+  FILE_GUID                  = BB65942B-521F-4ec3-BAF9-A92540CF60D2

+  MODULE_TYPE                = UEFI_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializeSataControllerDriver

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|SataController.efi

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2D40

+

+

+[Protocols.IA32]

+  gEfiIdeControllerInitProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gSataControllerDriverGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+

+[Depex.IA32]

+#  (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex
new file mode 100644
index 0000000..3ec1c91
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.depex
@@ -0,0 +1 @@
+�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.efi
new file mode 100644
index 0000000000000000000000000000000000000000..739908d9501ccb9c90adf378740d93f23cfd4abf
GIT binary patch
literal 7456
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf
new file mode 100644
index 0000000..c3d066f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SeCUma.inf
@@ -0,0 +1,116 @@
+#/*++

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    SeCUma.inf

+#

+#  Abstract:

+#

+#    Component description file for SeCUma module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SeCUma

+  FILE_GUID                  = E4CEDF93-672A-4782-A7FD-5FC6D239377D

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SeCUmaEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SeCUma.efi

+  PEI_DEPEX|SeCUma.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1C20

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gSeCUmaPpiGuid

+

+  gPeiSeCPlatformPolicyPpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.efi
new file mode 100644
index 0000000000000000000000000000000000000000..a4eb0be8a5e11db838efa06d00b175ed18c00586
GIT binary patch
literal 8864
zcmcIp3v^Rey52cCZ9|)~1C0=d4pV5Vjwq%LuaXv8+F-|_*wWHcc@z~Q6e!$s0y<Yq
z>Y*cH6Nd3|XMC+&bzE1*rMGL{dnGAKPYAXJ8LX&SN7qaMsi~>70t-VaIrslh(iVj<
zca7e&R`%oH-`@XYe|w+3Pm1p+|Mb)OPxt))>sVqXWT7hIdkXx7o1CN?O`1{(NmECf
z(nb^F=Lm89B3g$mEmHhm+B7ACLt)bQT1G0mk>WorNs|fb0F(rJ%l{$z{|=ZYta(HL
zxCx9zzw)B_wIievvbMV1y0pA{v9%T&Fb0lj4%zUNHjFD-{0=zR1UM<04}+k9xM_8p
zRzDy-K;ogk3VZ^Yl0!E9q$xNBM!rx*V(yRT!yqW+5mGcQ0wX0*Uo{zi(HyejCl5k6
zt!~YRO%Fw52{=ErVr;K{@(7t<_QL09KD!GobAv`gU!g6hCu|u@)BMQ<!bGR|>07rv
z2+hlU$MC7BWP(x09y4lLxl!*b94BXoxA57aEn4S?;%T+Fhr94vFu~d8dThLW)%oFt
zKMk@%qqcfwr1!C7m6;NB*06;}t@9|Lp-<(7HvstOrPYWTXjXloD2gUaSg-hHh$Zg?
z+Z%cpf{iclhGI*egOajc{FsW$*EzdB(yp|)Ii3)klOGe9EX%UE+L%XNg0Tn+h2+3m
z=vp(S+HyhA)@aHq0@Dz3SSz+^#6Fch;3_m0ISY;B+!XZKpac#Y^^ohp3EhhWRAqRH
z6>FUfjknhrmm(mQS#^-5eb)u4ky$m6-5Ey?%Q6(EtG$rUhA~o0pwIO7LNF$Wkbnjv
zT~)nu89TeeS6W)emK$}hawES4g8OTpZP5pQ1*?#4FzOn=u~X*;qh5T>s3*c@6b16Y
zKNf0~1;M=;+_Ch7FNTtez=L7Mmj;^_oZ2qVBQ@MoP_KXNt`b+RVOfoqeaik4=!KER
zc5Q+9p0)}wj|Xr}=W?SSj7SA9_3JwTSff=R4|vgtLZcyXy`-&D73hCiU<k$?M4c67
z@+Vc`z=~y6Rldj!iM@u3${JEy3XbRl^HIxT?Tbsjfl)>kSfL#lZo3tST?jrM*0K-1
zUu$aU%Jh?#llDaB^#=6x?N0ScEb-}W;y}E>V~e*(mww!PidTC<L>pg+@QI<H3Ac-(
zNkY09$`B@rp*w^LV(2bGFNWp_R1D1(62(xC5GRJ_+5eSlJTj6w3oJ2Y$lt;2lp9l_
zqJvzIM8^4zU`!s|9%vTpX9HsQRVPH=iHsitDXk{4I~=10fEY(ZbTkL76e6gv1XTmo
zW@#nPxY(;>`DtbBujUg#5SV+656d?$fvHGMIfOO3Ki^d0OmUX+&LzaTgny3pSE|1S
zgFYo<TLPxtAq!ZxZDL)#MKBt+rR-Xi;y9%e46MS?FaQJ~+a|hk`@%^Q59@raLf>#2
z<>G*$?yOl-pG;|IA@D(`jPntUQx4<2ziYwR9JQdy;c4UB5N5Nq;|P6La`EpOpr&p!
z%c7)4{r*AL0lkf_I3`o2w_DonqgXy~Y2W%}5Tef4In1)!n*tC}prcRL0<cbFIYgga
z4W(UG>YdAtM#mK$@=i#AFd4_%Uv<=vRUeFuXxEDm@g%*?(&oz72x?b8?^Fj<#5F&V
zSqW1o74U+FSxJ(Ww<p2wqGRWKK7rL>mU^y279nUuuLC@&sD#z1V*@2XQ*EFQTB|@{
zsM%Z+c<_oW!^G*Us(_suSg!_{iPS(XYz3}Jr97|}sG;nC#}Ns<h+yu$7E=fqcQG6r
zY}xU44c)&WN8J|WSevIpk!kE>>Hea4mZzEO6{XwNZO(+Cu3<L5m+f&Z@Alv~;%%f_
zAqpDas~6Yw6LHN&Qs!I|YPSx8D#EOT^p#Rp96G}}Rjl|TWD}OM;{Hfg2iX{aDBFwW
zs9nvxK3OpGi%SD@ff}&xlr`I{Z@2bNTxQzXZtb7A%si{zdU4~#Wz%i#))2}DCoapn
zH*gRZYak1DoSM=1yNY`QZY=Up91OgP#j*E$n&9OSXo8AaLUv>D%qL!!<xtq`S7(><
z+s4%K*{Ur`PL(?j2<a^4eNGjmjgl}HUjr?J04<r?87PH`uQE%%vI_RC5<v6km9b)&
z>MBWNa~fs3LxOl<K-KLvw=bLenc5dz7l|fqd@a(%w<JN(8ZP6@Lm1a^8Q*I{TEpel
zzlGcYeGM=@M{N+PBvvH2_Tu&u9Pdd2m@T`=V84a!+yNrjUN@wSQ@4qi<G1nV6J`lq
zC~Q0-<gvxPS%$(aSCLM9bda+f#cZ<m7qA@EK6P8e>_zi4O~M@wvy02`D-eF(Fne)X
zVVR&4+fzkvs%4<=m|23CflrhS!S6&#A3QHgy5Kj;>=%|*R62`c-g_6`mtXke(gD~|
z|4U_5wOPZ&X+35>;j;GcTp^c~mIjVrRp$1RwV$`gg?%7(Sr0p{7n$`URcRboIQ!kq
z+SVx19j74>;PxcCKhNMjrBio^mwEccF$~h9gZcNA7YQqR4nmFD+Zrzk6Y2g%qk+bn
zA!yyGA=pe;y~bsI$I_0k)5?;--(hD3dYL8L?hempppMPCAkpTeuz%Z}i$=FCNZtd6
ztLS9OY5kH;?r>WDbaJQD`URcb<+OIu$)RKdL;|DX{J}b%OFnik>2#xrriYldm!?b1
z9%74foW%iV4bb!sW)0EwPB+dEP4C*ZLUvqH*>80_c#;NP#G@ML5(PQM--4Ll9g=Vf
zP%ug`9z&u!21;3HE9yx4lpO`QcuMWKtQN+Dl`y}FkmX|R?ePq31_KU>er=9c7!CGY
z7UZDVkA{HQlw%T-!68c<O1}WZ*r5yw)aFQn4qVJd6R@cZY(+zj=w|W9;t`F-i}Fr5
zZZ$j}K<n+}ao*BHL5gN3T0X^g6gVCa6JY|(q^tNHQG$*b`_huYLzk4;J03qa^ty?h
zFIqxc*pCWB#L*`n;@zC7Gu$UilRRnfb%q(qkXyrYGMJ@$H4R$aI~|?jT|}#U1q)1-
z@d)gYuPRWL=+z}R0CK4654~!_F;rrQN-4P=4(f-_s#mb!D=mZbOyF@?)U8*L3hdL~
zT^+qz$2nJZ*v3BUrEm9pyEU#&S8ePQs7Oiu2r+Iy=QuSFCV)QU6@e<xO5u(vUc05`
zDvZ%<T$QuRei3kd+Bp~_OM>*1Fs7e2tIv4`0Fx!z*oWsp=E~=6tP>#c3N%a0s(cmf
zeB%*24{u>#Sta{hWW?9=giEk?FA4fxs+JJ+KX=cfd{Nfb^)_Cze^JeR%U1fp>6p*w
zXK1Z7U^7d5q}?5Ry4<9HkM!`ZP5m;=`qy^qnFvRTONUiL{?{PtZ&r0XYzIqV$FxnO
zDm_h;Y+{F+PLY5Jwq(2{00Z0xvZrg0w8y_Eu&2{@utGu0cMe<(4qk6YGuQ2CR(CrN
z{tvwEX>GV?H(;9iZbxL^KPE8mErUn_czu(;h_rJ=nitO}M5WhYAr3dd>f!*~JPMRe
zp%G;P7`QnR1m>t<4_MKh)a~fmh33?U<!*N#P|pT>`)qJDw*d!jeYO^!w|!&FC3>O4
zGahu&tPBF%vc1UDgnLsK3$gRSN)@3dPYp&T%Nx*S5C|&k@~n>vbQw@5Nj~!l&vV$z
zq;zKO>?Ae0(HTW6UTgd|2tl74-HyomZ&Qy^WbgKX;XQqcgtV3eY1<Qst~1=8z(MK(
zA!)6g1UhH2dw6HO*seK!(SxB;1h$Cef>POut*y9(Y%IaHk8r|R8|#SrnIWG6pPART
zk0-)xh}Y)5dz)?D{{m?emcN9O)}hoRZMS~E&A1)wt%G2cNHxuJ_vG%EZ7pjtgvmr>
z>vQK_i8|J-!T_JMwY=E}#BVJEdsxCgLUcq($dKhe*_mLL4r)}LVQ2h7t&&|kP^+@)
z6GZ=4&IGq(Xx^HMGU&}GlI|!P1=liVv*{Y47s<a7k@`~#;;$p!H~R?Oi|CF-c<<hL
zoCDBKJkUAe-KH@xZNCHd#XzQPM`Su6k0Nr-O_0i%h`fkMOKjwryrD5CjRoYG*hmd<
zE@Ed9BEN!f4KeH-@u&`w@5V-gnb9#{MC8*kkr7STEb;zZ3$9<{->^^&li(u|D1tuk
z#-)IwJ7Ow25HSgncOw$N|HK+o2?!#q5P1@o){T+u?-A7wg#G6YVe@|?M&UTuFzP&N
z%#Eq>zzCyK^?*#d2~r6lGHL-Ldv3Tc6zya3h8VROk*%?jBaC_;k<Z=)sc6SFau|{8
zV<RKehsbk?%#Vru5sXsY9AQ-DEug3iNPqq8E69jR$dd*{z7-ppI?Sjy5V<2Ja)?nU
z5Vqomu!5h6Q8>;uj4B)l8iVku^?GL&<Ori`5$U}NQkhd^)E^P~huFvwMjb-r#@NUa
zM)e}H;3mjnMva4ab<c#@$Pq^6A+ir%)HnA1M=(kW-3X)hp`zc$RCLWA^${YM$3~7Y
z>MA0$Vj_naWrR;6JxMo&75+qw!f~!))W4y|=inB7eN+|X2%{uKZn_C_m{DIN(i$5%
z!YKU&Ku(N}9AVU4M1IT1v=dfg^j)?Vk?paOBaC_qkuSwW{s=}Xp&Mb;6;w1mrlM;Y
zmGLt`CdNjNFzP-;`qi-lGQ_B@2*VTR59ik`U4L@#zg?}n{t!i5{HiUZn&WLPm$m1D
zVLa}-%keyhXE-;w=I&FD<sJs1rCH(tp^ZndSo_!LN!<JOSetk{!N$%H{UcBtu(9Lj
z6E^zBQCfSR&Dae$681OS0TX;hn5e#B6Wa_dR}ubv2Q;a#(E0$aKcBroYmaNJFxY?1
zR;G$qWMQ>fuU83iY-L)|B>GI2m1$chFs=FFGby4^Z{f}M_{MTGZ%-9{+SC1jYVgUh
z*EF0VAz4;muzXkdAHm7A{`2gW{MJ)!B~NQVr?uUlN5Oj5CQ2sr32F*<xHUuPR`j?x
zN46Jw?u3_x8!n=93;edjMd7X=3a0%~aQ6=c^4V6R_J`fXswK_@mH=_q)`dJ_C5rUz
zF7Fwx!3RqTzJi%gh`#VNx}UYf-GQ3y-$p+^XOIiB3|A9izk|MVXBymj&6nsKZHr#s
z2~iU};^88L-=?VPWd{g~zUze3J@|Igql!rPV%#Hv?r1ngh%CdI9=>74x$&x`_D(%Q
zYkO#I7p?t@)_0{#!dhDY6@BM}7Vw39blTFnHIcsC5v{R9w6=dphewSX>VxX{@$xkF
zgolH=`h8mO7dzsp34%`R`=`RdkOxH{M{9$${tU>}AUhNMebht6UI_0bP)M^NMC0p{
zAthT9lEFZ53@*H2vi$E<19#r&hj#dUKus(cW5ANpac@t&`!#r+3G}Uy*q(R#(lC;v
zrorz+IrnS#zjpr{mU{;6{OM3o+uYgh2!@+K#8e@=lCTUMUY&u%)A}Ry?Z1@LdZ~og
zcX$Jal4fnUqt%c6nAJL{WbzEe%QFxkc=W6+E0?AIa6CAGUrSceQQ!dF$glc_FMXn)
zm(NBP?#IIyAm+Pn;WBTZd=@X8c-6!lFPnv!!);C9403pMnCEqdOHdA<Visa9b%vK>
zPWr>kF)!&1_d~9dJ`Cq!9d@E3%wda8gZ@o@gz%8VenMofgj>p0acjACTn)FL+rVw)
zYPn4u;Zz*QsX3mD<KnplPQ#7j61gN!%O!K8Im+p{G2B=#g>(JMh-NVvQ+$wk<f#uL
z`3uqf>1h6ZBp>}k6!)~!MM>rn9mEv>G1V#c?HtDVW)G4VJR>1kYZ7S9`yMzsaV|V%
zYaS{S9;g%So0H*O9_s;46DR!iX^|h|KC3dUz#J}f1Wv)EDJ}AY;&2<z`0Mcd@3hDd
zKi?L8p1twaM@|*~asHqAqjyv%qLmNLS-x#k-TLJlYqw=BpKo8cVfFHg4O_FyAKV}m
zuGzZop*1DzAO2OoIcs^Lb^eljsw>K}OqnwtnLTs4BE)3D0~^<Ec(h=%9gxexse(;)
zYld^B*HCTR=G6~^N+mK2v2e|EPeJ)YU<qjg+0g&q4q(Avh>cP=ZmdN({=bcdq5r(|
z7Z%@FXpPJc{;wU8mn^=o+*(j>Ev$~T0{dac;MhZk{@cbGd`789{+!167C}I!)nVQE
zo8SCq^@9&XJN{o?g1G2^*ia->fUKEt^Y~H*g?nU7NfY1@3uVV%$XCM;9zP~CrtaQ!
zG3+XQqT<xV2`6>ia@M|ayrTE6d-uiXl?^O<5stFgKX-ztJ1fq-)BLpgb@Q9%<K~y9
zkC`zgdyb`i?h|wO%^f%Iwt4<}00M<OvAgLHncmD`<}F$Cvesoioi&(stGUFy&D>*7
znVviS;pxAheqj39>5FDOGUJsQM`l=Nu9^9}nVy+vW+u;?HLGdX(ODN~O`PqTy?^$p
z*-6<mva7S5+2^xU=Pa1BagN^dOUvDsoSZc|TXS~jJe9L9cT?^&xzFcz<Q~rr<%V+?
c&#OQ?(jr`3mAN`o$b2Nzk+~xi&AQR^zuqbdw*UYD

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf
new file mode 100644
index 0000000..0d4948f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SecCore.inf
@@ -0,0 +1,130 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  SecCore module that implements the SEC phase.

+#  NOTE: This module was replaced by UefiCpuPkg/SecCore/SecCore.inf

+#

+#  This is the first module taking control of the platform upon power-on/reset.

+#  It implements the first phase of the security phase. The entry point function is

+#  _ModuleEntryPoint in PlatformSecLib. The entry point function will switch to

+#  protected mode, setup flat memory model, enable temporary memory and

+#  call into SecStartup().

+#

+# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>

+#

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SecCore

+  FILE_GUID                  = 1BA0062E-C779-4582-8566-336AE8F78F09

+  MODULE_TYPE                = SEC

+  VERSION_STRING             = 1.0

+  MODULE_UNI_FILE            = SecCore.uni

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  BIN|ResetVec.bin

+  PE32|SecCore.efi

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2188

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## PRODUCES

+  gEfiSecPlatformInformationPpiGuid

+

+  ## PRODUCES

+  gEfiTemporaryRamDonePpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/PlatformHookSerialLib/PlatformHookSerialInitLib.inf

+#  Vlv2TbltDevicePkg/Library/PlatformCmosLib/PlatformCmosLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  DeviceCommonPkg/Library/CmosAccessLib/CmosAccessLib.inf

+#  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  Vlv2TbltDevicePkg/Library/PlatformSecLib/PlatformSecLib.inf

+#  MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf

+#  MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+

+[Depex.IA32]

+

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.depex
new file mode 100644
index 0000000000000000000000000000000000000000..b1a5ceab3b2eb73466f120b95a1915810dd0401f
GIT binary patch
literal 36
scmZSDU00wl<#k1HmIcEEb^C+9Oy52%7WPv6VE5_4y`w@V`X<aA00;~YUjP6A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b4135828b2b34ce38bd9fe8a126070d2ccac8dfa
GIT binary patch
literal 10336
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
V&?syY9D+;m2pxhbbX^p{{|7=cHTM7j

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.inf
new file mode 100644
index 0000000..2d56330
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmAccess.inf
@@ -0,0 +1,210 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for the SmmAccess module

+#    {1323C7F8-DAD5-4126-A54B-7A05FBF4151}

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmAccess

+  FILE_GUID                  = 326E9CC6-9839-4885-B2ED-275903B668E1

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|SmmAccess.efi

+  DXE_DEPEX|SmmAccess.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2630

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2638

+

+

+[Protocols.IA32]

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..3d7c0f4253e68d3b0346df94b62216469f1c36a9
GIT binary patch
literal 11776
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.inf
new file mode 100644
index 0000000..262dfd4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/SmmControl.inf
@@ -0,0 +1,129 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2011 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmControl

+  FILE_GUID                  = DD787473-07CE-4c63-82CE-930B33F39C09

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|SmmControl.efi

+  DXE_DEPEX|SmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2A00

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2A08

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..4bb6074e530b68b05103418ff7a5cc63d3cbbbef
GIT binary patch
literal 126
zcmV-^0D=Dkx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
gGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj%K0|NsC2pp3&(f|Me

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b9d8eaa0745668fa3fe26fb93792d84a300968fb
GIT binary patch
literal 26656
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
I{>bP50Gu++MgRZ+

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.inf
new file mode 100644
index 0000000..f1ea1ca
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitDxe.inf
@@ -0,0 +1,259 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitDxe

+  FILE_GUID                  = 93C81A74-B648-4f7f-925E-E4A0CDCC776D

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitDxe.efi

+  DXE_DEPEX|VlvInitDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5AB0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5AB8

+

+

+[Protocols.IA32]

+  gDxeVlvPlatformPolicyGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+

+  gIgdOpRegionProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gBmpImageGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.depex
new file mode 100644
index 0000000..00c2f8d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.depex
@@ -0,0 +1 @@
+²�}�"rC�,�2Ӧ�;���\�J���B�.
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..dc3944f7b2b19c0c364a26349c84e937b8ee5883
GIT binary patch
literal 9120
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
F{{i6Vgu4I$

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.inf
new file mode 100644
index 0000000..d95c598
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32DEBUG/IA32/VlvInitPeim.inf
@@ -0,0 +1,116 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the VLV Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitPeim

+  FILE_GUID                  = 24169E35-2454-4940-92BC-82321A2C7562

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitPeiEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitPeim.efi

+  PEI_DEPEX|VlvInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2260

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gVlvPolicyPpiGuid

+

+  gVlvPeiInitPpiGuid

+

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  gVlvPolicyPpiGuid     AND gPchPeiInitPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..bd23d618afefc089f9d05106958bc03d862aa62e
GIT binary patch
literal 6080
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
G`TQS5A=ugg

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.inf
new file mode 100644
index 0000000..48f7908
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/CpuPeim.inf
@@ -0,0 +1,123 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    CpuPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for CPU module

+#

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = CpuPeim

+  FILE_GUID                  = 01359d99-9446-456d-ada4-50a711c03adb

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimInitializeCpu

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|CpuPeim.efi

+  PEI_DEPEX|CpuPeim.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiMasterBootModePpiGuid

+

+

+  gEfiSecPlatformInformationPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.depex
new file mode 100644
index 0000000..4cbdd53
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.depex
@@ -0,0 +1 @@
+�������G����P���ƣ�^�H���3����HN
2��G�,?��f���?n�FO�)�S=Y(mEK�GN��2v؆�}��J&�>����4/4t+p�
�1A�F������k��
a�F{�Z�~�'\������I�K���
�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.efi
new file mode 100644
index 0000000000000000000000000000000000000000..aa1d1570a8f7f290a84c4863268a0eb68365f1f5
GIT binary patch
literal 6144
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
Ho8Er_(>dG+

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.inf
new file mode 100644
index 0000000..a3ea3da
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/DigitalThermalSensor.inf
@@ -0,0 +1,182 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2013 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#  Module Name:

+#

+#  DigitalThermalSensor.inf

+#

+#  Abstract:

+#

+#  Component description file for the DigitalThermalSensor SMM driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = DigitalThermalSensor

+  FILE_GUID                  = 5122FA7B-17A3-4a8b-89AE-A93ADE92EADF

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallDigitalThermalSensor

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|DigitalThermalSensor.efi

+  SMM_DEPEX|DigitalThermalSensor.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1010

+

+

+[Protocols.IA32]

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiSmmIoTrapDispatch2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiMpServiceProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/DTSHookLib/Smm/DTSHookLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/PlatSmmIo/PlatSmmIo.inf

+#  Vlv2TbltDevicePkg/Library/CpuIA32Lib/CpuIA32Lib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/Ksc/Smm/SmmKscLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid                   AND gEfiSmmSwDispatch2ProtocolGuid             AND gEfiGlobalNvsAreaProtocolGuid              AND gEfiMpServiceProtocolGuid                  AND gEfiSmmSxDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.depex
new file mode 100644
index 0000000000000000000000000000000000000000..cce1aa8782d7783ac5038e755ab4a29300bbd39a
GIT binary patch
literal 108
zcmV-y0F(a$;%HVLfrQi%yzu~l$2^FE0vPx~WMX4PPPK4-x-s1(Qv!|%m+Rlp#!0?Q
z*#@Pu4u%5VYvBI}VWviVvRa&e#V1?>x`?Y=;^1^fwyn4l_J|zT0`~Bu6G|rVKJwt+
O#S%0xGy?+z0|N-t=rOkd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.efi
new file mode 100644
index 0000000000000000000000000000000000000000..031e5ddb43d697d0d436d86b6f26d42e4e6ff38e
GIT binary patch
literal 3872
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf
new file mode 100644
index 0000000..113299d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/Dptf.inf
@@ -0,0 +1,213 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

+#

+#**/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = Dptf

+  FILE_GUID                  = 1D000AE9-756B-4937-B736-1F3D96A5A8F0

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = DptfDriverEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|Dptf.efi

+  DXE_DEPEX|Dptf.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xB40

+

+

+[Protocols.IA32]

+  # CONSUMED

+  gEfiAcpiSdtProtocolGuid

+

+  # CONSUMED

+  gEfiAcpiTableProtocolGuid

+

+  # CONSUMED

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gDxeVlvPlatformPolicyGuid

+

+  gEfiI2cBusProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/I2CLib/I2CLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/I2cStackLib/I2cDriverLib/I2cDriverLib.inf

+

+[Depex.IA32]

+#  (gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiAcpiTableProtocolGuid AND gDxeVlvPlatformPolicyGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  DRIVER_BINDING                =  gSampleDrvDriverBinding

+#  COMPONENT_NAME                =  gSampleDrvComponentName

+#  COMPONENT_NAME2               =  gSampleDrvComponentName2

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..5066c0763638a39ff33c71c6d9759850f116e542
GIT binary patch
literal 162
zcmV;T0A2qAx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
zGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj$Tzs&UD_Wehl)DWogP{EM`bSrSe41h5~henUJ
QxSZsy0|NsC0|NsC2(86PtN;K2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1fc80255dd734f38cef7e260fe2d8326b7b9b7c5
GIT binary patch
literal 9216
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
VaH;?d5p?)SiTrM)@cYv5e*o^9)=~ff

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.inf
new file mode 100644
index 0000000..f2b4db6
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/GraphicDxeInitSmm.inf
@@ -0,0 +1,259 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = GraphicDxeInitSmm

+  FILE_GUID                  = 99EC6206-AA45-4CAE-B630-866755241C8A

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = GraphicDxeInitSmmEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|GraphicDxeInitSmm.efi

+  SMM_DEPEX|GraphicDxeInitSmm.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1E00

+

+

+[Protocols.IA32]

+  gDxeVlvPlatformPolicyGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+#  MdePkg/Library/SmmIoLib/SmmIoLib.inf

+

+[Depex.IA32]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.depex
new file mode 100644
index 0000000..9b2767a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
�HN
2��G�,?��f���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..075a559246893a37c7d8aeb76c8dfc5dc89a8944
GIT binary patch
literal 6144
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf
new file mode 100644
index 0000000..500ea05
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ISPDxe.inf
@@ -0,0 +1,241 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#   IspDxe.inf

+#

+#  Abstract:

+#

+#

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = ISPDxe

+  FILE_GUID                  = 5A38B969-CD6A-4814-82E6-559F840BBC58

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = ISPDxeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|ISPDxe.efi

+  DXE_DEPEX|ISPDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x13F0

+

+

+[Protocols.IA32]

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.IA32]

+#  (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiGlobalNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.depex
new file mode 100644
index 0000000..4db74a3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.depex
@@ -0,0 +1 @@
+�n�*��4A�V8T��
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.efi
new file mode 100644
index 0000000000000000000000000000000000000000..721187cc03f1f27f44a7e7e7a8c4ffb190e39377
GIT binary patch
literal 93888
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%0A2L>vd2&9Oyo1{?#
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
PW9x<Vq4esk+N}Qz-Rz35

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.inf
new file mode 100644
index 0000000..ce85f09
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MemoryInit.inf
@@ -0,0 +1,196 @@
+#/*++

+# This file contains an 'Intel Peripheral Driver' and uniquely

+# identified as "Intel Mobile Silicon Support Module" and is

+# licensed for Intel Mobile CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor. This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#--*/

+#/*++

+#

+# Copyright (c)  2005 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    MemoryInit.inf

+#

+#  Abstract:

+#

+#    Component description file for MemoryInit module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = MemoryInit

+  FILE_GUID                  = D4EE25EA-0B48-43ae-A016-4D6E8B6C43B3

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimMemoryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|MemoryInit.efi

+  PEI_DEPEX|MemoryInit.depex

+

+[PatchPcd.IA32]

+  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|0x00|0x1693C

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|0x01|0x124D2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|0x01|0x124D4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|0x01|0x124D0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|0x01|0x124E0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0x00|0x1693E

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|0x01|0x124E4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|0x02|0x124E5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|0x03|0x124D3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0x00|0x1693D

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|0x0b|0x124D1

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|0x0b|0x124D7

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|0x0c|0x124E3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|0x06|0x124E2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|0x06|0x124D6

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|0x06|0x124D5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|0x20|0x124E1

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x124D8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+  gSeCUmaPpiGuid

+

+  gSeCfTPMPpiGuid

+

+  gVlvMmioPolicyPpiGuid

+

+  gPeiCapsulePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiGlobalVariableGuid

+

+  gEfiVlv2VariableGuid

+

+  gEfiMemoryConfigDataGuid

+

+

+  gEfiAcpiVariableGuid

+

+

+  gEfiPlatformInfoGuid

+

+  gEfiSetupVariableGuid

+

+  gEfiMemoryOverwriteControlDataGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/RamDebugLib/RamDebugLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+

+[Depex.IA32]

+#  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Fa$* /Oi /Od /DEFI_MEMORY_INIT /DSMM_SUPPORT  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D LPDDR2_SUPPORT=0 /D DDR3_SUPPORT=1 /D LPDDR3_SUPPORT=0 /D SEC_SUPPORT_FLAG /D FTPM_ENABLE /DDDR_DUAL_CHANNEL=1

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.depex
new file mode 100644
index 0000000..1b4e8e1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0��������G����P��>2
�u�*O���Yj���ƣ�^�H���3������J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.efi
new file mode 100644
index 0000000000000000000000000000000000000000..fa71de44a19eef51c06869e976f52233d27a93ca
GIT binary patch
literal 2560
zcmeHIUr19?7(cTaSDd<sK_Wd&S|uUloL1mN%Fr%Ksa?Z{6BJ#JF2f4u9oQ&RZiC%U
zD|-wo8Y?i6=pn18n#|G%pTdNo2Ym=e_!5X1EN|a;?}F(|!``$H?)m=xzHh&C?z!JO
zddZIE?T#z|y-*SfX}9d#(rB5K)RtQ+2`PcFHJ`GB#>ZLUV}84MA&{>r-=53+*rsTq
zgq#NOfRm7eMHl@Y=vIQG3c!{uupptrz2?iEgvjopL1hqp2jU=L;P!(q5HBI~?r?DU
z>P3?)0nP?aC;)*8xaO^q|K4snfeU<<i$bD9P=f+V-EtDbMO#<uIv63sy{F`Auu@~N
z=o3=}vw|E4Ptql;I_t>d_3O*{-ra%NT<KF-;lhpivdy6Uv2>(1dk+w?^tCdz5wqk*
zX$o~n&tv>abo(>B;w9+Y<2k^%HsglQ0K2X(wQ&+ML}@W0YA~0F*_<XUA?BonxG^Vg
z;Fl{U5iV=+aY(v7IR%a$5lp_-o;3f~hi%nW8<hE^ByP>K?vv{fXKYcOwZ+n-H@TSO
zUe`JilrXO#kWE@)k+Hdtk9Ut%k;7zD*R_)vNg;Womn?u~HcH09l#zf>Zh%#bZ0M3=
z_N{vDwP@lR&<5&jl0j2`Y;sm->pbaxB&sVeYqo~KQTn;VrPXL*s}>cskWCBNwKEP+
zT3^ZZ^!D%?9=7tRz(Y13u<HQ_R1`1E2yHrE{vk4P?A+AdPyUcSw(#ct!rJosuhvJ4
z_Q@a8%>Cy<%h{#DL!D2io8}(6>F2K>Q`O)5=i8Dq(;n@o_Mn)bs{qgdJg=PaY@0<8
zE?Qb!y4!K~;S4n9q3iM$qu2?r9E?A+PXfOl{jfO<@lrRS9~c<{W$+k4-^jb7(dba%
z5+?SNz&YaoR3$w?Yv~bsg0|64I!qO+Qcj=I7j%(+p)1tF%Ggm>&lqcAZLEWxXMHTd
PWEN)$wwI1;x9#;eSH1a7

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.inf
new file mode 100644
index 0000000..b3e8c5d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchBiosWriteProtect.inf
@@ -0,0 +1,121 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchBiosWriteProtect.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchBiosWriteProtect driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchBiosWriteProtect

+  FILE_GUID                  = B8B8B609-0B6C-4b8c-A731-DE03A6C3F3DC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchBiosWriteProtect

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchBiosWriteProtect.efi

+  SMM_DEPEX|PchBiosWriteProtect.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x600

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gEfiSmmBase2ProtocolGuid            AND gEfiSmmIchnDispatchProtocolGuid     AND gEfiSmmSwDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmBase2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..16d8e503f18c112a080a7c865962ff3396eb53b2
GIT binary patch
literal 14752
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
F{0GLHl~Vu!

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.inf
new file mode 100644
index 0000000..685a680
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchEarlyInitPeim.inf
@@ -0,0 +1,97 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchEarlyInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Early Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchEarlyInitPeim

+  FILE_GUID                  = D9F5B28C-9FF1-47D6-B503-3DC23BD345FF

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchEarlyInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PchEarlyInitPeim.efi

+  PEI_DEPEX|PchEarlyInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4A0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..43c341005a38f080bcfc36c46f223797c713b117
GIT binary patch
literal 126
zcmV-^0D=Dksbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0^Mui{|8~FMtiba
goPNb8Tmp^=m+Rlp#!0?Q*#@Pu4u%5*0|NsC2o*v%X8-^I

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..3a7ea1d04c1ff16c9ae1cd1f8c232075d83483f2
GIT binary patch
literal 61536
zcmdSC3wTu3)dqa#l4M8*W`IFPjXIja#)>pD(FPOk1d<SI#0eo2qH@uX#{5%1wK#*=
zLYa7ym@~&wd-JQks@ShsZHu;FxL6@WFbPmDf_GYtcsm%8;3b5Mng3mTpEEfp2|;c9
zKhMwekU3}Xwb$Nz?X}lld+oi}x%PVDEB{;jl}mp0f`L*&s4!U!2)YIH`B|oMLUgwv
zw4KYdR+<IDga41bz~4Riq5nhwE$-!Tl%6#-Q+;=yB7LOfNB$`Yf14l({(lHU_DBF<
zF>PA-JIli;OMRq%X}@}O9zm#|w&bSpO-SrTXIS6ugEY`!{esXnZRvMzz5Ty<TdB=$
zXfyrl{{e1hutpAho$?B=U7qK4#Y@ge&KS7UI-~ziyYzy1z>+v<{^WN(8B#}l#pLAY
z(hHwFeo`*++7~Ts|2zLzb7>n2+vEzbUD^(4l&SgTNdW#~{-SoEq#SEdaid;5*_7Mq
zp|`2;?lk2Of5l_R!ghIP(dxf}obt>9X>1!kjP1p!N|V;(d80q-5LR!+)1#jvF=idV
z#vE~R2$r(mY!!q$$vS>x7l1Y>`vpN+_-Fjt`HUbOOl%i~YWYL)oqq8{x46V>72+jc
zTUB+iCV&U8G}Z~41Rka8LqdH&3Wv<e2iKsH;#OBvo1^6{lOXu^OE-G6XWZ!ZIGRr&
z3ng6vkRh8DNap{Xl}`rdBh9lx7)U1NbEpU6R(s5Ea<nQfCEkgwv59wGa^uCl=#u=m
zi%ak`ML3yEN@z*WF=SLw#$PWE(9cgVo`;{DBS@Z44=>c=iHPA?*F}%zcx-qpniP=G
zHbua1pt5o<DDDl`B*We!Mrm<tcF1<Ua_EnO(9{;Lja7Ij%IHc+2y_UhmU2_4AH)+(
z)b9E=v^Z}4IVVQ)L7M#HR_840dLecFp0s2#$$J|1x|4ytT3_3ug$r(w-(AqYehfIa
z=ZN@W?xWOkc`S_;s0`jJs*#V!7v{?rP~R<}t1fwVcAwx3+d50UZVzga)8q5J?kv2C
z72fQmln(l42SP$HWUf`NZ^h`!WggHH9Y@iIw~~tlq0etJh0`0h2~isSIUaep^1U<A
zhE)Zo$c1uQ`B*`)2vS*jXIYVB;O(SbR^n)FlgdhXmWQ&UtFACb@|8dR3H|K1toS;J
z5I_}TBDYR{;n0-io5|$i_0G;c1F|p$J^utK1<PudaI3eZ5}n(vT>1!_KhIl^7N3h2
z%DV%~cFf}F3hx<0ZN%14;dKd+F3Q!clJu2l$+N9}LV9EZG2g~RXVRc4B1WgS7Bp}H
z<4jZoj76Nsb}M^+gG_n>ZVc<Zpi=oL<1C&=Nde{En=y3ryxAx}5!I=W-FKxPXZV2?
zRQ2^q7TJQL*@0jck#{BLAUK^N+oPtvPxBI;LWh9fh5r?mz-)EVNR%#SBhmJRfQb<<
zMZt+3_-_gX>mg(YeA_zG=+~s=FwFM#9$_+#x@WZ$$pH5Nk{+q{<X>1<fP4Xni_F|W
zWqrjsOygHy2i4wtQtRo|jnhFF(5mJs23NqjG`MLJ#9uIEt2aSpCIk84cVNkvUk2zQ
zl&-BM4i&fNwu>Ly<zf$$09CPClVe@L>{w^RAby;9&zW_krmksQWK3PtUPmKDf#7KE
z*?iMJK}futrg3SkCK;P;ihYyjvZHmoWv8RHBc9!*lSGNP?UvUzG)IX{7EH>z!i1v<
zZ$k9=Ig!g7`y$ihGQEOc6HIk7+R#SR0Z)~96uV4yk|`uq`nDA-??HBf&OK=ai`Jk{
zOFO1S092Fmlun)vHk%-X&#%MCx;ScJK>uBUWN3cN;lxghc&pcKax{Gtj0}qS+CUR~
zI|QR#oF{&W>1e8QG-9R+@zPJ9Er1jZ#7p}%u?R*nh{Oj0SK~|0SlRDrZoqReUV1Vh
zmwsB6%wMlbLZEMITfQh>ssPi6_}`2F?*Qs#AQ>nC$NBo?(%!;mVXq)WE|E(=ENr&Y
z;{|f5QrK*x$I0<#JASE5$P_9<=aYeKloUIh4Fik8eM_I4UAVG;X~V)r=nqLDj4@=6
zqxE~Hn$UR*67RVr^g5Iwzp+5RlEe}d!Il$sa)wI!^+|}$x*4EY_>MYxcDkCp#u>gT
zeqDadL}T4T6rIQ^s?2#BOHhgTJQ|xT9IX(<)*0F`O4b>S_B2|PecLRZ#b~mUjS_&a
zOWf*p*-+F)I2+p{TN>I)GKhyTDhn|x4IL!P)L|+&43qewvr2x!x4&Ax)teoR%{0|W
znCreIVOlQ$i@alBcT=h0XvzUq<e7FyE989QEn7pP8^aSTDadfN_F9hUS@k`;<w$%^
zg=``Y9Ap}rl%cg?gZqDqk}TK5ay>)<%B`T>IrCW7RF*YW%es_hak7;&vX!f3o6K_j
zDV{Iqe5z&_D@U<j$L~k~F>};uF^_}H;~0vS7a7Qd01>yAr=Z*%%B?~DiJ;~z8L8nv
zK^CMMM1))Hbj}i!e#bqVuv8y~!s!INUCznlXr1Ss*pLWE$8vT_9B^4)kj;!tW_51O
zB|^*sJ`Aijo18S8Dl6qlCm}zoVy`vrjpVS&P)`YS>us1+$p<05s1T;cT^ur2YJ02>
z0CK5)bv=G#rOwB0W$&)lcd&Q&V`282{aA$kdLCQG^1Z>;%ke;S4|BEUoF#Y()VD!s
z&Fx704qmd86XfcXSi<FN`{iEcaq54^LN-xY!^96=qz6H~=OzOsw8msVM+y)rM%mij
zuO2e@UqJ_aeKVi{IGVTNnNbAt$5WlmUu&5BjuyyYT6A1o8FI7+Ol$%|U37t}@@!kI
zJUy21T8d1OEBg}GNP&Fc#D55xg4{UqRs4wE16c`)KO^Twp0kJLw6Pp|CTz+z7(;n>
z9>iE=Dq7^xT3^2wvtCd2amtIc09xVoC{LFNLRleo<Q|fWT$d5Ix@a7sE~+GQgFq3R
zN*_0o#+^bwg0}b~ktaC=ZE`esaq`&pnxauYI$9nF4Avy4pxnNRRJ7$j-6U;DkUm%`
zo2CeDOi5(Rbf7Y1s@yQE?CLz_zflG)Cf!@P68i!6a3WoO`1Mcl5Jr{@U~(CwPL6(T
zhfya@`LI|m{MNB#a&{s0<DLR0j7Yv}iu622oGL~drW<>qBzjtIB(0D!lAj3W=Y*;n
zNvr-08$6ULfKFZHX#NM@Hj~<nQcfaQ$xy|b%^63_CIF(7PDg98Dbel1q@2(6O+4Jl
zd23Qi&a(_!3%D|h)j)2XPMWu-a?gVnJ)JAmZBs~(29^pWky<X_H=SwUok%Os*)3Ig
z^JITMUffiORB!w+ZM|_i)7H_b90Dfxa|e{Gk7Ex2)~}TVkj67h<+<hG?XoMsdyLgm
zf-GmWz_j#hvVW=^u*L)u=n&_wroCY-4q*qB)$ev?DiIFvfzIysZ3|hiM?<{6B%pJd
z;D^|6k1R#56SFuQ|J`zxJ$4PY95YRF_zGvh(P|DPmzGl#@LY05MlhgMp(u!$2XH_B
z7s!?N*ww5E2M>G026*oY^rgbPMBM6!{LH1c6hnfFADE~$)D}n6ZQv2Y*^t-@j;_R7
zA)BDEMFnUykd>4FfGSsb=V2J*cX{RXAe4J#Td~=ymC}{|Cs>QHxZ8ofKrZ%TCWo&C
zl`5D*o<|Bfh)Y}*&{mr=6pE#zh~4Si*1}LKf7T%)B<AqBXw^JwPt0UDwU}Zi-!?@u
zKw*kZ?GvowGugU9pkkMWH+wMvsmb>@qEpb)Se}*Vm8f}hoS2`h(0z&JQ*STQ<Ijy2
z2$A#Ra~AXRQ<8@Xl)%h-Ff`T{F2-(g<1?u1BQz?{x2>V$BwmPE%1hXiqA49EUI(p0
z<M1%f13lm2+XjLJ6`$Ii>&kgOpso<*_51=wK?O$LV(dPgksv5LKYmvMQg2L~x7Hz8
zx_rsX8jKn1x||MOl#k3pUTv_3?ZpCwDIEjhM-%*knxMQ#`2+7oE|yg#Tqy{%*hHqe
zjZI^b<DQGKzePPxWl<j&vTOljYvrSE?7f5Xk*2oD1@-jI1;((Y@)8CZzxJeb*<!3~
zmGNu)E9?6q*#k+ZeudjY&Fff5lB%+jHlLS~Fz_8>k^#F=`8RB8v($#SN#1aoQEY>r
z=)`|lpFhJA$)oYkqVcXKRtT9FNG5rwQuTX5XmALAHV*Qvf~@DISp^3hN#klJ(~{Vq
zbTroEwK{nj85Niyc$91s)%7sx2%$+KOEuGAJ!Dt729WXlAJHnpc$qO9cvZ^(B5#wG
z@^;D@HDdR%kWeFKD0`5Oq04RPa3U}GtRQqJ<()b0U;xabXDByA-dQ7drE~a4D5b&+
zy{q9V=r~YRr+ff8Cw67lNi4;;4e0#EIqh|FlpyFWjUK>L0p%uMyaL4=Ggxu4>kc46
zVR~nUD^S?CAH^vJ#VgY2Ay5@ia;Wq??|i1N-DBnTi(S?_iM;^UnMSDr-?pkivGVEf
zwAObYtD?@njf5)cTt-1gK**|m_CMgkhOTF<Tx^Rj&N#`(gsWk-wS45UJCTn_D=?^}
z9k|xf(&}hAj5#5f*<$_-=p1H8)0_0pOii2*8i=Y>h^Sz3r`+JeYeRyDp>m4Q%T{2w
zY^tdon{I^|XLI-}G!k2PNbXJ5*Ug*F)@FH^@*=iU;#MbP0cg#YNJ=1ySN80ysF&5a
zSx6%|msE6S{JZ@;H-6_yme*;$s8^^>*SF7gDSs2UTNnt6>9Qp)TUR_IMHcKK9^C`o
zu&Ua3NPaCV?L|Dp^mm+gNcf*Ef7bI~iTAAX{jVaUX<K-q+)Usggj;SVU_8;*+8vM+
zQ<4rrIQr_@ZHa^Sqpw;LeA<$xNF(EHYP;JbU$z2_UncKLyk(Ue2vb%A!@|-dKjTxA
zwN##EO-(;xal{jUs4)t)&OEnzE}MO|l396WHJfz@pQ90L7Ld<o8|M2LoNX~cVnz|-
zjGF42kog8oDtQOkYz0t*7qc;^kQ-#fFYl<P33U@?Wym{dLRAw>22u&#$5_I*kPw8R
z*&$6+e0bJPcW~-__Md1{(PKw9qn_V_Sv`U<xMvVQ^pXxfeZPDx<b(p{S-@x<5>V7z
zldSPGdZtuqcXYW$2s=2z$pUxq$LJWWX5M5Rf1pX`3i2e9Il#cAP-XItuP5)gkpETg
ze3;lZ5VC|!$+_8BWJ*w7egNBRYsiG^+<2Ycf&UNylqMhz>qfa0_Ii+oO`r+GOo@2Q
z9W0m4HGfhl0(s)rsRQle^Hy{xJ9;7=O8`?K$qeIVD&&VASQ*FwTiWmI<9*poHisa_
zMQ3POe#?wV|FU_iaiM1D{$hFlsf`Qb%3dMj5?6jWDKbu6sR$99eC<i)0Z9C^!btzp
zr+9NCpK3--Rk^LK#FRLuyn`i}<OKwnpl8&v#M5#j(QPHJj<WgDyoPwHfo6@={1iRU
zw#EeS;v#<}q&P?`+C+SXPROk;Jn-(q)I4-&auv)R4ev9FK8fmSc#lL*;(%2ar1jTf
zu|Pf^*H)>IHu)abfQA|*(B_5upc4l{`DrKiu<?dj_)Fp(3p#LOBheweqBK8(`7p<(
z=`<!T&F(<z#{9fJ19L;dT-iJp(wQ{0)s&=EArm9G5LOnLBVGg7I$CF$U_N7dxLec1
zv)QC}wEn;(Uy{<r6Ysl}`>%!2fPzd&Vb2X`V#)Ks4(sW;5Kn#~9;cRCb|Z!BYu?Z8
zX)UC$z4lu+`>~ScHYC~v6gP=o8CaB=@dBL4>|LZ%{TYx122H6U5hcZ@!s`Y$ZZDXU
zgc=Hi0W*y?66h@ZhV|$hz@y76fHs_l1**p)cAr>H>BB3S!<(XQ7Wt;X%C|pQBP}>t
zP&>oX_#}-FTU0iu<h+zUBYu}A-)l7aerd1&YJ+^Yj@OMJ%IMxYt(W!+Ukcj#rJ!wJ
z3c7I^G}Ecr$j9$r9vuf#LXZkh8Y4V7v08$br6*}FS7AY11dFfbH(<g0=W*a9rltV~
z00(|e09FPt7JCIF5&$F!;GtUyV7F`*yFZuA^mBrKnE77!4r2nnX>FLRG@`J$HE+>E
z)piKWO^RJbua_NO9AQiKb3!@nott~x%G0H(XXyq-+OUV1QLjPJ{+}n13c=U64r%I{
z&!Th&&wx(kOmyR%tUarj0VLitXT2=_Xs{?tl^z~~T)NWrPi&KksiaG?@hDB5@f`i?
z8erL7?Q4S)f~oNMuM9czBq}Zah>*r>PU_0Y8r#tdZ`qFN1mh1K-(a^xh;A?<YDf?Y
z=^R4$Ed8lc;e08$jYKepqFQpz*xb9dT+imGqgny){*S1m`ex4a77)!|-UNIZoLsCT
z9gOt!C^VbIXy($-D$8zPvW9hX*)O%qo+A{j2`b547sacsx=Qr)@-uqD&_VR#n5Gh@
zK~}Q7R8>RfLg_N1l`;;wSWmh9s8tOrm6ag6HMKI3SxIlR%7a9+%EkFHVT~!01Kad@
zYdqmB$i=HaXIm@E>l6H8TgXzYT!u7X8?6N-rlFb~VFnsIHe_!6cgkh?_;Eq=!$#22
zc(nzMdg>=6<`-Pt9==diOyTqCPj>tP(yp*TKse)c08$fspzD6YC2<)l^n||=zxNS>
z*$H*OQ!sViTB1w?K>Xgv2UDToMin<J=0@GrPJjFXR?LL=%Bo67>mBA!6O|U<bI3ar
z@7WXuY6{2Fuqy)yfM4E;V~;&Z$3Bw}#&aq0`mAuZAZ%juGy9_WN<DKA;|SR6dGXZz
zl(H|<k1l4XxZTG1HZ^5AM-H9s(m9Ny*uVnG(7D)<paxclgc~Nd=d|-l=|Bf~Wt)bv
z*`@K|so2agElGaXD$oC1!^9>bYoTSAIv2U9P##Ue#Dg{l(P<rzHtDBT{QD;@yEgS^
zKapN7soM(%siza4k;BVEk`*)@fR1ytVLPx|8PT$zQ03gl)c6dW@!}MsoWSP<jwJK-
z3!i0skoEBG|Ir%y)u$xK^e|yEOvxadl1!i~KR_;~BvT`pUKrf;>+_(DhOG72lGC9g
zvZm76>r|FqPe+r<z+!PLsl?grsPUc$)T2gru;y&9<b%AicS(6VBPU-`7|Swl4c62%
z<{^I76oUv?3_wLaKU&pM0l&H!DkHx_F%Y5|;Ql4r`oe+o^+;4s<x7Bp-7Pz{^&<R`
zMs7a-9N0A@Uag-`df{i_N_7#KX2fFIT~A_<XR0DFD+RKt_YRdj#y&|}<54$j45L*@
z&{tkGA}z-IQrZ{Gx9r}GIx?gYh@nke9jz@p8RLb1HWDTH%6Up+7*+z680Q-i@s(3g
z5YB+dan#0J5wGrN&88ifVVI0FL~a<=6;2_>IvI%XObs)qR?&FQ3A#S>LD85|mtond
z_Tq-Y=0$k(w1x4~FUK1bQi%B2>>5sr!&r$_Qmj;GgMkjD2H$GXCS+~4kRZz73%8MW
zB;Ep0-A*Ol@;Pl#4_zE!${bYI{$$o3mO-M;CNR+!FitVH9()CYW)61pixYGt{z_o;
zuOG1y2>P282-Zc`pJBX3^qE(l&RO78L`sRCXaD$rP&ycup8Mlvnx=%SD>?hJUSd?5
zr%`DmEz6v^!<J4q`!>-EA*p(qzGllVmG|EKk)ekMB{ukF<kCY%M2z$JDjEM_zh$>t
z-5n{Y!M3Zi2iCPsz4HyMml9K~k3%M<DxXHsVv881n7Yqu(T^a+)%>C2>U5-HGOP7L
z5Q>Rx9XeIpKP90?;;H{8M1wn;QxIx)3Tlv0#8^b68x2I#$ft?)k!a=SOfmwk+&TN$
z77VO)N`l=ulwh2pxO{h=sq2ho2cuOCi#1P;-#JvERSjV(+7qd;seO@UyUH%bDMYLT
zmJ#OPxhas%B(pi(j%S5gxXDQhKuC}bEyP@WXB1hba@E5$adaJnB39IJfM%vT2j9`=
zAgAnT(~m2$*~aO|=ydb_#!47_eHETM(}?I4JoQOjs}7vR+no(|@(yRGQ74`%sYW1?
zD@CHAdu>t^yhGVYH}5nW`S$CG4sDx}sW8=U*66Pwqd1;V?$i3uJI|B@NGC=v%We*|
zD+TndFjM6xF1d+Te>Ko*R5BItN=6_PRC>-yOj{jhmmpgGbttWjJ0T;PcJh|HQZ0{v
z#Z`~v`MYc&lRD{Gp1SS%10cXc%1b!4B{S~j&<VwUljHtN*n`#afH$QjYOCV2Li*s0
zG^iZ3JPQAHYV|=CUWPK5k8bh6XX5rWwjv7urEZBh&4<lKBlYwwwsXP6=X0Ltd&hk-
zt>e!Q+dG~aulhoJ$7;s05@FKqhxRcRtJdv_ZUF>rz3S=FskSr08fJ}R8yb}fb#~6%
zRRzv)EG1jj&9-hkqgT#x>P6cbJq<vA>}?F{n{hv*FAs~3X8)2jat)i7I_&!PWLtL9
zhR$I8TA0G}9BpJ6s%ow?!=jtgQ@)u3<3nt)-CB0R;Kuekn#k7++mSXku$f`kqH8Ah
z-n6q3x9CTC*tS|F3t#!N$Lq>lwzGkMu;r9A**LhR;Pld21xL~oN{y)a-Uh}Fsz;rN
z7o<Q2O#w{%)VFN7fo9~*jlRsto14+6mA<@XyE+hzC_lJYBg&@K60H~FIx@<-&3HD3
zbtt#wrBE>%jzpBPDUkRNts^i?X9G>{VVfKXckE$!Qw%#DJ@cQAmfB7S>_uCd(Y8B7
zSIFVKHgtK^czYyG!riQqnDf?G)+BZ}84y*+Z|mpGmfEfUF$ED{$?3~j4)ntwM>mvQ
zUgclJHZi(%z1>T%O6c}IknTL^KeFZd5UZBHJzt1cBbj1W8xfsC>spzD8r0;qp&W6`
zBX;U#ke*zp+w#y+0CqRLbAz>w%333C4%xKbDuPaoI67*5747r~gy^(8p6V3TV9SZK
zM%(e6np9tC$3yhO=H~SDI^Bln;d`_mo_@o_Yol$?2uDGI6e2c{N80dQk^=ev--hRV
z4H}*PMKP6YM0AR&XHG$Zk<_JN<P8sYiTN{5%S|Kb@@`F+XL=~MI66ijb>3+^9v!@8
z7n^q#QH@CPg~r|UnekIv8b)F!O9~NZrX7q-=qlUzpe{Njeq)tZo62#UXxpO+s7v+D
z+wm;ze+=8{k!><hkFtAyj_qxRt$t6?qO7Y-J^p0&tIL=nKi{y8-$DLT7o^($C8pg_
zT?=?#|DmC7%P#2>(nXm<N*WhH)}=r+R<gjz0P~xH9JG~rygZ#v%#lc_7v`#j8kwgK
zB|k_uY#%FRa=Yl`{|>(Tbfuw}dJXK$@zs+?L?h@3QVK%T5hU6@uQ4bHQoi9>P<L#o
zs!@zI&mBr0Qq7^yjuljw5hw`xIWJ}HW0P);Mx4QQL!<pLja8>poqFNhvEnNbYA9RL
z5#l{YM5mBaH>RKlJD@FmPYt2iC^E{)1su2W;f$3}rks~pvP!C_{@tW{<Og4YR3pi%
z8Y7}pkm}MD)F7#tg0S|B(@AA6oh_8OiBT!VQfr6PNiWP*i#lT_R*>1*HKsFc$5olW
z{QF;lP9w3@H;jl*L8mb(s6jeuEM+udu||(-$Ksl}q@x$>GU@0!FU4=SX6@s0(50Wv
zBigVSz2Xt8x{DsNk5Ns&bM8JRrF6@~>8uL26c)WzfvtP`<A}GG8!FRAkYv^RFV0b;
z*o?&k158G(*BFY?PR~m`K_{0^tr+-HtsSNq=tx7d{4}P85AHH_+p@!GR@jlsel~T_
zh%ITvLPQ(f)6!L_QElkepf9-C;mQ#s(dq7jd?6A!Q%&bgI*Hct)9qPCl1H7(3?!=N
zI+LDverJTxs6h1DYM{@kn&qgx!wIwX-@!XaBU*ok@y@9i|B(dHpHhezg*D#c^r=-I
zNM$pFFM~1g4lKPxd1ts)MW+j>;%5Xk$u*Jzc+e1bib;mcFzO658m#z5mOWvOOkdpu
z%rP|+CcO!`T7M;`9=S08YPZywTeW;pemzKj6{Y#)RDu6){CCo&v~Y%!_0MFoXAJJ9
zr761)Y6rw@-C;E5a=b{dud9YGBf*C#>?(B)<w&wOY{%XK6Nl_|y5UNpG;DLOB>lWI
zjiwqi<QuSAc1`Te>Es6XrFUxB#16i*!M$Kr4|QESnt{~G_R3EEHNYu@$hO)!FYZb;
zB7-fA{J!AHrKt5Xx_XM*7$7JN_cuq=W3c#=E0T?F;nfU!rENzEy5O880DyOYkgqnS
z4l;~)MpCrV^Y_T)Hr&P{a*NyZ)Z^D7JEs&<1HsvbDAm_=V>>L{HG(gMQ%v%ES`Sj4
z*U7{$L2}^w%P?Hr{+eouMs>j6ORy{?fL3oqrw|39iS+Ocnna|30H!fG^Md&BL#d$)
zkh_#QD9CAVMsS&1@Q0kgY}_3sgiFjdDd#U7B#<LUO+C9sZx2~&2A#jk07(vBs4=4k
zUKZrx1-p5M^3ff@2uBO515RExxFf*}fII*xKV8{H`5DNCONzvbk|w`?uoU8N_@|8n
z3YXY6jd^kXGF7De*kF++qyi0mNv~3!`|d;vYcY~}qjBZU!~Qe3o`XN4>!umZ@n$jT
z<J$)Nx2ux(m-n?Y)z`|wzWRxlcUig9r`pkUB~5K|{5mJ<<L*@{2TBTE11Ch@OXk^0
zz1)jbq$!`*)4AUAG@R-Ea1Qm9-zO!f0om^-(-p$CtWupUe@&=B(D(z7V>D4*_Ll$>
zP;R=|8m;7>56d`i!Zw_OwS)sM<5ar1h+@HPmWqowjf+&*3MHR_SerrSRGZJ`c;mC3
zzGNrrgU@0Od15GO$QX^<J>$TOQP1a?<zO;!ArlcyJ|I$rFov_L74A}+bE-~4thtSK
z^<WkWh;)n?a5)-}qjqw1Jr7={xJhiKI7*$(k0AA#CG{Dd%|syli+(W{{y%`?2xAEU
zPD9N^ZW_A|=Md%{PnpA*_r!mviVP?H8<fe4=$W?*si;B6ysbzXm7HUuo)e&@73c;j
z$)>wAaxuA_!Pn9}w`S1gYzeOeWo&~ETlRMHK4ZR~;dkQ?(Iaj}|9I~goA=AtlM7lF
z!byQ@Rd9A%Ku%~oG3}4unxX;up^+CNroFr~SVewluTic_Hv&gl<@v!9MykQ{@`)5Y
zM^ErSLmEgXoy(9a&3M)5RmEoQkjb72E+=>Y53>=vr78$ttq<iR_^ZTT$KQ7X!DNu4
zxL_V~4}9)q509>zfG;__CS<JvggaiE>?low=gF503E6U~O)C8q?q6^<Z?B14o19=H
zObE)Oh%;(I_?!h6@lX{!N(CI`5;gM2G;QHl=JFkayPFg97_H7mSQx+RCWn)M@-ufv
zSHVrrQqvP*0j21i4z6(?Xgqq?xIpr*uP5)ikpETY-)wM=gV(IM)q~Y9yYMz=WP%iQ
zOLMa2*%!h)NuK?6smxn=TOK7BNOOu<vY#cFpg~UVT?X$w%mnv9dnvV;Il|2bQE{dY
zM>rSvQ$@Evu8|M2F7e<8yi3)|YTl*g*8qo;dHvbBg8;d#^;{-)C4Jipf9Q;)%VlnP
zPIloB^XRcao>NpAi0uPYehW(sZwR6SFt0rOK>KX9DNBDs&49P8HpHJIm;?Fa@z_7C
zTnL^WdUrfW3+@t9aEq1w%T}sRdBY?AEFk94JLc&l{=^@0LS>W9g{8fbi{xe(UJ6S;
zjGQYsyV;`>nJ71Bv&VP1%iaLi9I<15!@ye9y>v5+_apLd4SMfs9_1{^8+j($SZ^T9
zNA1oNygOhQNAvx7MnM*<!#%uLw;+#2AJG57$Pn-GU`DB~VaO5Bi1!Tuk@MBgK`2Hh
zsl5ZT$QZ0BcBRkIzl{`e!|AwZDfmPiJD298$a+csiHMxkoC_jlHBZIgaEbg-0e)o%
zPnE2h@<T;xLLPou!hAKMTuZo7O$hLWK^m_{Xg|gkPVqY@;kVe2(fkzuDSp#QxDoPp
z1>j=mLSw2=hOCGfv<UV04}q;ofy%ukDf;ftlE?myG@@i>UTwob8kU;yCWLNco{Nai
zN9#rv0$;$l5cAxgSmL$2R3Cl{Qj;&M#|?vLb(+tim#vF&3}~hRSHsFmfEUS)S21`0
z9aG5D-*Ol@^AWt`sv!|Src#=KfF4RVEe<G1vZOCOzi(E$B|JS|>Qq;F_@4xB0he5B
zg&gG$g;2sO;ZF#~gJO0~M=r9e5d`REd51DTi@h>5S=B6Q2c%ss^rky)zP+?A+rn9h
zJhv)6Zr$Q|GBH!^u!_g6OW*CAm4@gYh?}#*>j`H__gxhx7q^#yGcplNxW(jX{5|-U
z_>YChC_)?#4?<+r9fEVd*oC-eZ6qj3c!^tz>JEc>Qvs5kb$sdECLXihc_Gyl_VksU
zX)?tcuUdj?K>tXZ<H@cbi{md{Ej+DQJZ4?Gn>FArGywIwr+l6SXW;>LQ9bdwYCS9*
z1<0RUto-gfoB$R?;b0X}?3Am%PnE1|8%vv)I*GrFE8rFyzKW5m00ahgDI(gGW2j`1
zzI!=7jEJg9ai>;gBTx73o!MBG7P&V50QnS>Ws`!Cuz(h%aQzfeXeq?1y<v+7Iu#sT
z;pM7Ex-ctY%CGR2`1TUS7z$1@v&V{*0%}$SD_0n)QFN)xf>f_m8kUO-;4Uf^7ogto
zq`DbZ-iT#x53t5yvQ@@|R1|%VxrDgetK`?^7sL~Y5z$CvH^{_rq-8hl9IeOUO#8kK
zPP&->@+%G7dxcr)4ZHC-!+02>T8u{aMPO552)yAg5Vt(=hP9(|<u_!N+S4-`PC^^%
z;d`e19SMj~Hr}x=Xtunp{EG4su`}|9a?b(+-Q;-*WH@eJnYO8$#0cxlpgR`b;lk0E
z(Gg4CDq3e5_Me(1g*93&rz1_Lb%rootANAs>oL|@8RBvCid*C}HVDON@ozE1<)C%L
z1@!V`_F~&WCxuEAd$Di0fL@lf7v~1Leye<!y|^}9Krai~i+h7mf|pA6lD**qdMUvR
zIf<&#<#bNX2s9V=W+SdpUvU}>$>xfj<!kF~oaO}o(Lb>FG;&`(SPOQ80^%0pzotCP
z8?ps4Pre?1j&dynJRTj?aX0+8C@P~gkwtU_BX%Ifo6vI(LN=<fm~$>lMEpQCh#h8C
zhHo3DOEJYMz%TZbb<inS-^`{TVgybUu<{@hWu08?K|YrdbyBe>9;eyJrwW&7W8ZMG
zDM#|`W{w~pU%`Q75_Dpho$r`RwA}j)xvD4mg~(O;LhwV?B>zZuy$XGjo*3DTU^4QC
zc2FT6*u{!BY~KZ%^1_H=F*t#6#G-qH;GC*5n`u@?{C?U#L7Y@q!p9KhNfbyoG0MQV
znB|4c^DC=qd*7wpuI1QRj&u>qQHdHY-Otj+?ry;ItRgMTZJ~;$+>3ZO@J>fAr&G3;
zpUv{c?oS{<Qn>?*2L~xUh9oP7t_N!pMXAt4AX-2Jx|hRB7gtrY(4AZOyHbD}H93O~
z${=AVvczVDK^2&_P})Fbhk5)a{S=IU*D4v#u4V0{gsz#r$s^>D4@^Md2z2-*4OE@J
zX9Bmu62xkZ|G=g%lYgdmJs4NAZsOi?sq+$s$msb#-2AH5N)7yAuz@&?He9<z>x}+M
zxI~E>4GlCF$REF{*KeSXv0*qiq6NU{O=h%~X>Ah^oM3$sw`Yw+w&4x)8ym(bXCNEe
zwq}&J4X<V7hS92`&d1?JMxxl7FVL{H|Bi+oU^^BP6kn`iYfsxS9sMwnn|h;$W)81q
zWQvIg{;UqAXLym3C>A|!!*G6QXo``|hSze6hHW?V`7(@Is8#w~da68JZ){l6c;ga{
zlOSAmAFW|VJ;LbHqj5gT3aje&_3#iuKU84MKy`-sIIMu74#YUIUPSto8r};E6-7dI
zDLwO`7SBw#$cm$JoE2i2nRcOLUq<XS6Nf76hO|Vbi2Vt@Eac|!C(wMs(YOiIMENlg
z7jALf`!rrSH|c_U7}_>6Lfr`kq!r@m@c}cGJk>FV{fUeXEzlvA)m2*MBa|MwUUr9C
zIS&!n;@8+&L{;X-Z>A6%!OAIQ+(8g9T(LsJZsqRl`Fbe-6w;02_W2({tc}Vb-7H#w
zytwRaU=Uc|PCy+RE7+VuWssK4-Aa*GxCAgL+-AZARttMr;d!aTN3o!c6+E!Is)dua
zg#A_kV6aRxr{qO@lh6>vt~|+9_(6DV(;+O16i9Gf3g_QZ1R!y_1*KS?kfznQmZ1x$
z>dUkX$+7qYrNr0fFI2+TrbDnRm^w`u&+)v2D>Qr+O@xoEyKidv7HfISSzS|-=MDC)
zM9W)(yqKxOlmtEmWtd8BxQ2|{*nD)qIhM|2wC*}7Po57dv+OBJMoeLR3gGa3wR4Nv
zNIZvTnh|GCCFcvsjmzDG#XlcNj`brt0}X2>wR}LO>+dx@y$lbs4#OVKJ1irQw%T#o
z#xY^zR5v4VAy5P>BN-sJP3TEOk)tSr0lq=Qb&}y4Y|czVw8D#cPxknA#W7Q*_n6%j
zY@zTv%7w^_UpEt3F_X8`Zmm?)$EnEfDv7204#9Gn{s7`<DMxE~zppC=c%Qu^Sk2MA
zsil`8e4_(t)j=TNrl$VHPs3vFG#B*>NrVd{P3@07kIY-*R@=dkFa_utrmiY29^ig9
zjS#))ZWD|J@_kqNVKzWi`D3$_h$nBdLT~432=$~m<M)>!+p-&b;hA_qzzVJ@PuY#l
zsn})1{uE8R9Mw`ZKY|1Z<D;YCb;uH~22NrCk81$H;cH_>i<RR+D!W$8qO!kDfcDg#
zHz@C+0Oh?hw~Dr`=Gsp4qT6<5DecG-w-&)nO7<Fr(Wo@RATt=}8sYH}Ww*}{D@Gu`
zj{0c%IQ{_Z47@>bE`V4#4c~$8xQdRr(9|}O*BJt0SnZI42$H2I5sn{Gd-w^IGKW>_
z=Fz4QVI*!v{4y4nnte~fgCL7X5S0>9;&v*ZVwS~%>AwB7u>-ZS9np8JVOwkqh2D#p
zpEfnV6V8ktutblW@McCFSVSY)h!W9bIQm?M2f1kvT7Z4hIJxOn_T*@Mn9}#nfXrW(
zD_ei&fi+3C7T^SWqHI^+W*`ob*yThp?wN&vTl%W}iM&tVAzR}rbk?5YLTrYX9opdh
z8m2QEs}#>cthzoZ-#EV(2QruL;&r1O0LAV$i8Tc)!T^QFJKIoKR>w@#MSz7bEPWUK
z$X+%<wyTv<W3oCZpBn94mW`q=)@aIM6sFQ>sB`H%yqoeT6sm~zSZy~iP{7;m)VEu@
zc1XL4j8w_54V4TCv#1i}p^|$si@~=hi9M*VsFA()6h@Dk5efTeXd?!I$S!yJwu^6>
zd|gtUz5eV)mPKR3v%W=H^vdU)vz@jbp>+AkB1GAfo4b*d(}~zJ9{hLVzpc|u+vA=y
zI?Xs)5qidTnltG)z0+*RFE8QSCU(1}D~f%G$V%oB`<>y5Vn3M(-C?U#(BqbJ<<EQ0
zpm)jLlS#jwm}?kMn|zF;SmQyeE1WLnhQ8Hfm29C^@%vfZP1jdqOtZGIJ>L%H2UuR?
z53vsKz!4Bdo$joji=cxyBSYK@USDtnMV7CY5B8N}GA*qN`ugIfwi<Z=n{lVSOMXKv
zu!YYMPuT7pFBVu<*=2l2quudj2kJ+h@ir@gi6^XJ#ZotQ=WMaxx-v7-ZSf@?Pj>d$
z<JRZ9A-u7Pe=;FG(?-46*oD7~7D}<d<M)OIkfZGg<<nP&`e)1cyo1CkNz4V`w!V^a
zCextBj+yFu<d^~o@hwMR88Xuy8xIOSR>#I8g2akSEPEj&VvYQo@~3M+bhc@XZ*0W&
z*3nvJ5)&&ZLU%8dlnq-1+TxSYfMA1mK#L#=r{cLpAiJ+k956e6)rN!Ya-3v)(td-=
zk&i9wc^pFC0V#Fx2NV-|aCh2}cm!x2t$QiL`gWKptXRd^`XdC``jh-K)yS)Qxsp|d
zaq#M{tx(IxAX1ln5b@V;^-guPt~ALDoRI34;~OcozqG>Zt&{J45DkK*6uat%x7yfq
z8%(CTb%k3Z8NRlI|4p0vQbfkJMW)2B3qu+*Lx&m!_y$yskt{(^8^Ew;q37@Mdw<2S
zY{SUrAt)dCY^-nxs>1^W#914o$S&L-S<*MlYzi+FyEkWTp}d}|zF8J${JJqQQ`qV~
z-eb0>p(?)AeHvgr#AgROOn1cZ!siIcmV<0qWU->w;T-S<4g%W@3kkeME8*WHph8+w
z$N-$xfpvwiQK*w5I=TbZ%s~Ak6yS?8&ptKeEr0~w=)ecv22%MmhHI9EVuglmi}2>T
z_(aSCqt%5VjyrBI^z8-Q%zX!%_C&@b$%CWjm?dIcV+)V(F~=-kle`OEsoU3Gm!*`=
z0?RCIgZAL9W6?(up7`hs@pTVUg>S7w-|_VV>PuIhG|sn;x?8O5y$;QPKy4H6!IU-(
zau)31Iy3x}0K<xeV;OrL49f_Jxid`PF)32)80Xra4EYsBL_IiuMReU>rKBA2JC)Gy
zlS#)qi0_8ZpCVT#MM(ITZ<_=T@l%}butUz+h&0o_14sAf?2#rH7w%m8Hr?Jp>C357
zbQ+by$ehR5PK-E?Yf~Q$P{sp@06Ms&^fGQPrYK!C2-1Z^p{ms75em}f;g>4p<5eLi
z&QHx%IK1=WyorueJc!7d+tlZ1$%7PdtfRQ&w|jvCw-@k<7NHolqamU%gG{ZHO6hFN
z6{xCK?#D_8M-tyQoC#w(sBkzJA!8y|1+p`R0K?Bg+;Y392;m8$f{D4FKC#lnY*al&
z6X1vSA4@Ds@-qh5{;4VM;)mx3l;2}*a<rDwVTsu70ETb|{;c)%nAbX4G5UH199lm@
z(<btA4?|Xpdm+?NydK3-be4F+?6@Za=}2A4Mx<ek2VFeLE)L*Sdo!R|A8CT1+sK$o
z-K5Id@is_@p{L+YIH{v68v$`^?jZTgtN6DGn4H5fkWL8O;`c~|RM&N)FXJ4bG`=^{
zSok1B4IdvID$fV6v`uLPJAi#}1Su#q`FuWL2=@#*5z1mwR_Ti+9`ZupVPPB+h|69e
zLYPY+hY+e@pU|KgN)q*O1z23R0swu7Cds*6GuWE=G~Ny%YS524m}A|m;A3DD-~JZ3
zW-2+(z)0V4;J3g1{B6{d4HYL_<KavCte0BDnY2kqbVg+0-L1ac)OQ<3YP*MCip9gG
z$X4h!?oiwHNGJe)uUu@;*#aHUn+1-QitXrl0sF*3wb*9IQ9ilt{0>b-F|U}wE(mSN
z15h6Nh<M@O=L1U#K$1r#b5XE5pe#lX3eg8TpocF8X(1K*$}BeaohPW$(9x5QB<7$;
zU>|-eCIH4`gAA6ny@$REg*#V75(1EHs4F{A4IZGcMBPWr9a;_ohYD%|P$ZRm0a3*I
zAnz92yl6`uppeMs^D7`P4yZ2fklz4!9_WxS_i}=EIvV$Zk}<60Ys}%?HMWR%GwJ+m
ztl_gAt@d;AVrSFyM)9p~3l<<2#y&Teh0k74w{}xs`V!8tMci#h-2ZP8t>wmxreao4
z`3AUN?D9zbm2w&qlwsM)Xqt=mAp|cE(%AZKE?RhTHx*ANfAUFICrZ;BFHKJ)m0ph0
zfWXNoNw0kBZSndjIyQ?sY*8rGKhhmd>1Yx}LkUc{JCNmREHj5QLVhBn2P1_qa%FYV
zGksF0JhHH_%#3_-8+|AM`DQD<nAI0zvu#%O#YrzV^#zBX;x?!H;-?o6f5Ay&CT-Ce
zYj|jY>!g-0w3CL4jh}B@8od|e7R>6aS*K{AW5rgxxuqClkIF#GP<(Qc@+l5JSQ#*2
zZK#rStJv+VTac%_9)sx&?zxfuXLsSW_^;(`>s2X_rReqefRy^h7kaB47RLT|4u&f*
z;*?*JzPUPzzx3f3`s9>c>RkOG`*j6Z{}d0j>%x(GXIcwh&}DqwWiig(Dm&ADj)Wyh
z=uCSAPnmd1j@QS*-$*^<aqywx;l6+>-n&h8g(Y5lcwA^nt#WNK_71e!Ie<Tl&TgCX
z5q5%U6R-i}is3Q&^$_mu)#K9RI*fWPqIzen&p>uhxonYlNwXJo4F#teh_4In<VPyh
z_&Rx<W8Jofw+65_WBKlJL$`C9A`T9Zd9q%fy+pDQ4f)m;A2b8O@FgxZmVFC=UIXl+
z!7w8F7%Y7Y;L0`VJbep5y6h=>s_(*79P&kgwdF(!zFVbDawR@h)!$iqaxsz9*B7kE
zmZqCj)kwc`=WL?64PPh2E`bu2n~>sYEj^j&wvFu-tQl(X*kJu06~GSw5h0OzxJ@i3
zwXSOY0U=vY=up>1%Q=+MqIj8Cy-v_6oC#topO>+T8!yY<bOC}sOL=Ox@{XF(<Y_=u
z<jy{eGZ4O#pLpXYLI-l=@#P4Zj72Ihc@*<{_eNTFXr6+bRRwPgR6)!Qs<Wrix4%<B
z9VX7=jVTOhTRut?5|qwMmCi|(Mu20I)s?ew1z|hN(HR@S`qFLTyW{b#ENnCB%yiri
z8za$firRcNs55<jqg+#U#~{zQcS9QnL7GG(u)cROs5_SE4z#O@ygWmiL}`^QMJa@}
ztTrSlKKkv+*5XA|#lUW3p`!m(%H<%w2ZJqS1y+6af@%w`0_p;dYpQ-M(BnduD#(@a
z;8j%$#}APZh{q{(Hd~{!2|b|Z@ovrG_~T730-z7RRHVie-4T>aRDigZW5A69kOeqW
zl*u9p$irkj-o{|Cpmh`FNeaoPELvOLY}is^t%HL_II%YhUco+UksPg|U96$HMy|dG
zpQB_{5|_}CbbJqQ1*Y#RpmfP5w!9B%!afvXUt593KQ11>mX(3AZdK3OSnR$QYy1W!
zHMU1EE){BKW;=+-cQ<G78o@Z()IIdyg?n8#61sAFRy+ITBXyU3X5<zXcvqED1e-aK
z;9NYY{D}6C&<|)tIDdn?!I2whVbs`tJ?I<bFjfV`4-T#BUm_bl_0m@niNv7+TCQAj
zdQQSvZ7%_02oQWu*-CX`k*^E{XkEz@+iU^Fi9~U$o7C>xpbLMo&isN}2elNK9qY<%
z*dC5iUMOT~IE*j1DMx;hOjbe4RsuV^Cien5w+a<vvMayFXPDF~Phbte%3R><o4!Am
z;dMZNo)ETP0iz1UdF)kX1(0%qj<3v30Ax|fbOWw&Tmjn9^+&fLCTyVr(&J7s#)oGz
z0&L2FU^;joRR=b0JTp95Zv4hPj48XbBk^adWBT3}d@HT7-O)Icw=EmM6YAvI^rcQm
z>y|p$GwP)4@ByR`<lTvPY2@?d=b<ncjfG&v$31W(OL-7IlzVH5sAm$E=K(c!tQq<8
zZi2{DZX1Mvh+>VJzL!XvP;8FY{@C|SkgQW1`y7pbq3rKjvHQzI^@!77I5jWgh?V4}
z7bU|Ju=_0R4`&T*x#H!e-3RXlEM2+z$O4V#b33$rKibfkhBi3XReYXF+u4%OZI&+3
zt03`~83R`(TOUH}@`<2iZFgirZDe=J3zTjBYB!b#nF<9E#e;@3TnrPE3oKn=8vjh7
zBdjnO{*g#bw2Xn016%eeL{S>q=y9v#o<||+(9s)xeJySP(#3U>u?Td|WNgBZ?v}8x
zD(U7ogwPtEflseMA!m{QJJDNYJb(;MufaD6NDLYk8*Oh|-o6PO9_^9nLpu5;4WCtk
zv9bp21<gBXg6*awLr_99(2`fh6X`2*<vG?qQ#$UY$BAV$s}ZyW-sZ8W63y!Q2FT%(
zchx9cK{!$_#>r(?d^jN;)?rIWh6%V<W+90_mP+r~v*F+mX8bR8ANWyp8cpT*fzxXa
zw%{GIC!6ltp8iU3>E-$>!61|$gHROPM^DO|xb%%zd?Ym&UHNz36226y#kZ*ZTXb{<
z`~R!^xpzRrOx@27<3+unyPQ3;`?)LFqk2F0HgKp&_j7a8PIEsO;|8Kz$=JbFJNaX%
zru(bv%W>sQI#+Zg#p|p|X`xjY`uy(9^)MAj4?clm!%{)t(_x>7b7M1atp(ROS{ji>
zgGpO_7bXMU$fc#8?fE@O$VGyiL}=UcHjI}$IwKaD6)zqaUH+L6xm2#V%I+DrTbE|t
zWu0-}vNY*D>2|9ea9j4t^Rp-ZbH+mJU0F-5GtRg(O*#W@`-=%)HPPiC$HHw)J%yVK
zzQOVx3|QlSN8@$))piE1cCLEM%`Ko;R`Y%MOILM&j$gW}OR4N;?yuB@2epLtYQh>V
z;csffTAnaSZn~<=r-S?&)IcZM=hYJ+`2%Lsz^Upr5QTTr_KoZS9-6!{6MY#K{(Ebz
zj>g59=4+Nm#uY{H%<L;RSsaaXkRmsJlXkAm*T;hQxhcbxm)khzrc|i8gX+`GfNbcr
zqM&7f*~Kzaeobc-0VxauG$0KLCxIN9LLVa;bZz>C7Det2h3{7}^KmyN4O)yzf~t<J
z6pWnOIhd&)ghwA4exlEzu$FLl*5PG=81Xad#Is?$S-_E<?%bZy5di*F1^OEcooVD<
zNKH}Q%uxSu{A&2M@k6>Zx~m)7>jxwI1G-M8LXUP_Vd(s@(9)^aWGKHRP<W4&V=#37
zUq}t&>j%uQ>?&m$UfIF`&o4h)6#OLR*aw|*4@&5wJSz__H0<wD_V+OR`zHIlnf+Zw
ze;1nu_|NAJu;*aA(G&0<#m8XbO=l-0xNSJMGU}nyA#>C-N_qA2ZmsefRu`-pDn9VE
z?vQg9V{etA$%20YYI1_Ts2UXm?MHsbaU8sYxCYz}5XRkJypP1)PHYh1v!~<k3_yar
z3HMO$E}-Rakh=*4+--2&n?xW+?lw~r2Dme7#m3D-G{##Ry{N0U@@4@N2YDQ9Si&a2
za28X!vt=~)FJZhqyey$T9s8H3Dj1dhQU7rKmhD<lM#qr;j6MTW^R|Nd*H#!JGj4^1
z;s9W6)-i*-XUiiQ%*hrS6Ak}E1kK5>xmt=y(#?P{UbPv3!3XzOu>WN5$;Zd$i2aXp
z7Br8-faFc~K%>VFM;WkSjh+Q3poSD1TMw41oCsLPi5KFXo3>ByQ>pSIiVow&r=Yax
zc#%Mc@}fi_MqXS-Nu%>(6@h#iUVQLB&5I8{GAb{k{?T|*yv*32e}NYZQm97cMYL1T
zi<ty%<i(@;23}O~dTL&DFkU>&dC>~j&_O?b<TzTdF(uw|;rlF+3mUdG=3)G|8~HE>
z?BK(L&(U_PF;f5tW5D0zebDz)UFb)2Uye~p=voHJmCYp=cW=EAb#P|cOp7C%pPPDr
z4vv5lq6MQU(#JR$e$Uq!2$cKyNJZl}1C4&%fzf+9>6Lqma0|NSdzeCD*}iaMM@|Qi
z4G{Ec{o(q+7i5-PCb)9B;Np=N>_$wwl{=V<d{(QxH(lj`pyr%8_%T7hDvjRc9AFzo
z8u=qRkVby+z)*LXCR9L7P^3yBz<gCHMCgaEh!+CAP6`poP$^^~5Tg|8y%b5KOQD?v
z@@1sZBmZeB^oW5QbsWV*PN4qLq|oPi#{PUk#u{lwd?tlzL@9)J>ZMR4K^vve_mHGp
z5pTxpsihEK5jS%lbe@t2qXp4Bi3bBC@Sq75=y?z@UzG<5{ZJl!>>KFepjJj8LwRr&
zff#x4R!SP32d^fOFT;at{?k0TW^^7z{iE^V-P4Ty`4@O_S_;*OJcxGcc~Br|BM%<B
z#K41Z;PrGoxQg?j=af9y=f^E5V#38EFyRW+Kumb0DhL7drJ2x%ve+6B`k_pC4$$kE
zkU)kq;qj>{Drg(u_bF*~CfrIOUxo?S{->F6?dVL1`bT5JPcJt1=U-sLCsL?JWJ0u4
z&xAi9Xd@HWBS|L+Yw>z&CLBlV7<Rp!3;m;Up_y^v9V2jI-`9;?2$-+Rg@k@67yb{>
z>$s3WhH_z;K#ZdBCQ2He3$G%OFT;iF|I=K!esnHG{iAW=Z5J8)^Dl5=P72kCT!?n+
zx$v{x6#2Cc>H#F_xNsj{Ps@d>(It9nE<|{v#@Ucp5Q-}tjhfWMaSP)&Gjc}Wg!=i3
zsV=b3EH3p>bQr&Vje0Y<^b!d8&0y}c4t7|RdPlxyB>opL_xVR-r+<gJ&p$dlq5hHB
ziP;=37}A~5d1+L0-zygyD5KjnaQlX8?n7ghrwDYIx$hyQ>Uim1ylT9Jfn}z?l)10x
zzu5-!b1v7I$#1cV+58rpn9*;siCOIyn>P1c1<7{;D=Qt>G20&6gCv56b#EAa%A}W$
z24K|{uN6$EW>vq*$^@np>@#%#^86H|zy!>f7MN+AfeHOkfmsLiItC_?p#pOjffxm5
z9wm(~Fvk+eml2rdqjC7Z!=hI{I)|hFkvLql=w0bG_Gfe^=RF6jkF<aJI7dS@qQFEu
z^#XG%K^vFtr;(&%^2hM1F}ZV?MK4QbZ?NDf_B_AI##qoZ0t?Ore!b=hn6Ju$gnlRs
zzI_2YI4DC2WGD-^5r~lm|42!rvtW!sz6=Wn{?jZN7@Y-C|7a|@@qA-{{sk7iJ%wsS
z7DPMsELcp?Mi!igBpnN$hu71x;8C!kbu=mHWGt9B0t;^Ta28x-MoVz20T{-D<#-=?
z8OKDRa}C`x{x!g2^Fru{vfyH%*Rddh3}wM93B<^PU#BF-f^;FxborR)=q-(2v~!IN
z4pLz-AXXTTKHfPGSPWbm7|sOhp~U>r7_?&esRvAkJoR*T!$7J6y~S~ujR*A)Z=3Ne
zLz7b7(Kt&V;r<Ipx>S!dI?pu_=T!Q@eCPweB2XifN=VW%>G$z!WKzAYQI(U2!K9;D
z8vP~@V^aSJOnMgZlbqC;6fj?vNeTT>CVloCbZ}5k639>{{W*acnY4+LMrYESIml>C
z`Yi(af=s&jKh30zN0*|g|8z`xN4D0Te+QFZkiw=rp3})sRcS@Dm7`~;21wieyn`ei
zlfH!4(=zFsVA4~YBC+Ekd-(q}2EZaO&qeSj*-W>Wan-=AM1Y@|v`UqvfMHBZ_Ho>P
z#bJl)oWt)w@R*4tNvj6$Kb*}aDWM;Le+{&7tuvFUe}g<q5Gs#WsexTTJBv}EiemWi
z%MWi;3g=KO9S@tMT#Vuc*VpM#Gr=K<K^X*thZG%z_$@&&{(QE#{t-3U$~^A~l2m$l
zkD$TwBM#&7%fCa4)}Mkw`PWob=G3CYutumdlz;hg@0nTy|0V9^$eL2fhB7D1S9udH
zR&F3jin*B@&8v}u$ec7x=PE^bVT_pyqd9`~+ziI_z(CXn8V}wOf-@toL!rY*YS{g7
zT!vNZVNjuaO@9S1(M?Fix%4V+uP2j~_%})<PcC-(sH%SL3s7qxd<saxx&-h`0Dwze
zvJHQ|QbWB-eXsCNy&8^+Ew>^;`Tc9`>Y7Wb-H!*x9(0$F5rW)4|2Ez!U_V!u*YG~=
z+1ahUbVt+qymq%%d&~YIwVwlk=PIbmmy{nk@IyhvGS{ck6)tifi<f2ANegWo3jTrX
zGU>Cb=FXFDvxd@dC`^R2swxA@_ZHD*S9{33{^~jNDmu%Yr6t!)m&&r?gjbg9+dIEb
zD$Dn^g`D`kd?x-}h5v#1A^QUS&Xwj&mFARem{ne!7qZkz!J_${WiAi?b(Xo&0->|a
z<4vD{H*X7j%Uk>_N-Tho5~LscJIl&Jd7-Yetimj`ES%F(b{$~nCD9EaTPVLkNXu@F
zm(}C)ut&NL*cVp?uJ+U-2yMVB)t_wGg5vO>LqLG#X3O(pk16s_$acN2P5RAW39;0?
z2|u&(+kxMZ6TP|rZ+Mb^)5ZS&9e<HYcewELI)38Kz4+VNOym0qds>UXj5N*b@x(gN
z+=eIWL!Go~D}FkgX&%F1iLNxih#&Okp_lR7(fkVjdODl`fgkD?b?E+g@B+c)k^a<;
zC*XJwKb_4A{$4$OmgffauAKEQffV!(4mYfKAE0;OL{A{O%nDZX1mSogZgt{5Ulo$Q
zU}tZ=8~nj}B^juoOgMZ{R0i^UbjONKxL8_igM&9Bxh8`()%=PX?!IQr#|bs=39Dz&
zaHxYw3uPJ|>i&cl@q6?DR!gJI)RYq*oMzxSX$hGip_$JlLQtM7kEIZ>93#vgUiQDz
zgXYN{JqvL=cPf-acO?P_q+^>(R~B6XiazPV|2!r5M|L3>*T`K`I-B)FFa<nXDr!d&
z+&jj9x<lg8y6<jB4L0Vq9RD_)XiV{?&e*vK_SG+!<~F>aJdEj5V2X@^bC?s4JEHJy
zodLbihmdT$U4qbZE*xS(=%A9o8wPJG0#3y5_TWzViIxo9e9vQ^5RW4hem@|$T#Yc1
zZBurC0_bmBFWwP8S3GD6yRN3c@N$J(-eVst*zuD#mIy6>+XkQ<%083+IOtCrLS6K@
z#4dM_L+r}!$rQT^;G}&tNr89la6lhRjjbU!%#5m<V&y_=S}B5r+Nm$@8S|}?iHP{I
zE$CfU6>LdY(vgo$eydk?qMBs=ryx|tUTfN``B72A++i+2*U1brR%(0f8H{DD)c)9C
z*snAA*kAFWI!?8mvlcIb`g&ZOoZFH1G+wfk6ZC#kKc+@@XkmukRq~DATseUYs&YAE
zONYpBpF9Y2<CWGvvuQ!NNcJ7Y<aG*>=@3b`;v)F-NDoiIWONE}5$?cD$d6bYPwp-j
zw>aVL3IzF)e~>`#G5eCfK1XZ7q*E6Y2W$;ny1~YlmlFrzvSS^;ft=RKpSCa&8OPAd
zyY_XDK`hRrgr!V8WQuHTN|L*v$+x!y=!NsiTLhOXC|};rgIg!wnuz=CxS(CH3iWqw
zmJbr|+U3S+euUB)OLG~q3F#S0^YD|^1wnNmd-TiO(U;E1EM(0`)&@cF3r&eIMem#z
zKmyu_02>tCkluQ-RJf)@#L1hC@?$IqA4e_V{;6n~n*y>HkOCBt{r1>AQ$`H8*_Af|
zfn0Ejlk)mXOzGzE9YB|B8HWhi!gAqCK`0O+3mQ78Cf_#8XLMaOmTq@~h1$oXG)4z(
z)R0h+Z`q0a@!T<lf(${LQ7D>X<re^Ct}EWdzHKcmG`rGFh2cVt!twZvRG1kUF?-Bx
z_S8`sC|}6OZ1oJZiRguMCZtn75xWSN^JTi6pS6*`Dj_FwwiIp&+sHu`fp)SuTZ>!W
z%)=W!q+8GOaytUAJ6aV->k)Y;{M#+yhu7(@e?xmWC}DXGn5XL4LyK;k%NAz#mU!E4
zc@4up5n3IEwyFdj&zSp6cH&)^^5g_^Xdt)msdP0O3$F#@<KXfPL4a@9Cx`^K1Qlc(
z+<UUIA!oMgPceHpCVxrsqUr&at3r91A5zN8bQhrDNs@;EM<t<t@+8Su0THhWqB37Y
z_d5<)1ZU<?(Y1|m+x-O4eigciLHjl6y8sP7n7=W(>LmQU8*@L!fWU=hJ!Gg*2R9vT
z*THmPM3Zpz)wA1j5|%{#nhNx^oDgQ=mmwrqEc6Cy)BIZH0w4|fua937K=D8)yeMdH
zX?}5l32@)I8>tYn$q}rH=-d*t*#*i$$J}`K<yVAJ+6@_vWl0*J!k=5KYytR2A!;HA
zyj*H{Tz(Z@1-O?*|M@)0Jh_HY@IERPMyM&2$_F?~6`?Ye%0nq+@KQs_8KhEv2x^on
zp>D+G7kOO;T8DUNN_c0`yOLtXgHo6v^EZ;(i5kjLx&l|!2jF152NWh3mI2nta(D?-
z3VK-)Kx}n!53pCWJ;wfVsJaaj0EOpMgub}!;SHWg-9!Sz0QWc)p0B#G|1S!GesPfo
zu&?B3x(QKV@N5!#%u;T^x2-x*tYD4<$c}8QCp-b@J=8P&x}vDP$4)7$kOD#L!YI;0
z36~M@K@Ku7<}Ti4j~d)!I!EW*`&>5_0w@YXDjv0m#?(TbW)f!bgwW%^cuTlIR4n0(
zAfm%((I1LW5b+X3CPAD_4q`oSdQYeKar8t=B;v>bG3E#-d(QLvcFYAEp^2Vi<$obz
z)vn=+{nIE2;&=!N5riDdasdcOWHZvd)NS7(OFJh^2xT{(hp1s_KJ*Oo^2;U~*+4?b
zpv6EY&#Ktai$TaqATCbCjxi>O`Df5P7qW5^lpyx|my)ma=b!~%9jzrtZHexQ%sty3
zzXpTHz5LJt?&${)c_s-yfFeLr4{mhuqnavT4fm~LQ^3(`B3TotR;Hc903cy9Iw%lr
z&sm%s5dh4N*vH)8??M#|VgsPq1UUdKGYN|s7{<co$Jh2;FZxX##4uqhyU<Alqs|D~
z=4)@{JC69uY92X{!@E>{BkyqpF~VE?8iZ#^@rGeU)R{dQjluGU-cWTa0(hM3sv?*3
z!K%pToL3cHaWpNuG*#7i;Z;iUHB?S4o<e=#JiuaXcrgDEeIhG0{0M6GF-8n>#l;G3
zAdQK35QK$zIWZWyf)@^<Fue32>=1nmk{H0=_>&}BP(ls7kl+zLNG?~CA>eY9!GO)f
zisM+95Zj2JkPLecZKTVWcyTvv3FiQtJ6`EoPib0AaIDLI!f<R1Yci0OY$P2}OdxKK
z2@NE2HEoGp&fgHm2K)~`WOJ3MpiM%R)K6jlfXF@RyvdAl9gR@qsC`~Bah6urvLiHx
zxgu(aM?kg+$guk6ZFrM7Wee$IQ!V=l16m7FPJzyefMVB};yM;*Why8#7nr6hIVc<Y
zoRQIwHs_;ko<_jDER}$?UNHiG285_-amXxg@ytJrZG}G>|A`Hgbpu2n4Oo$EMk$Kr
zLdzCH&7qcxTIFwyZg~`B*%Thfx{F9D5JgdFe1rR)6<&Plr^0J>G?MOxCz}Ey3mB<(
zL=CXwYYy$9^XB(h$}QWPwyiqWj<_{eA!3me?S<RJ$1q6Nxs}S?0NWljZJBgjW(1fE
zOFpqRJm{>xwjK)tw~;q`5MlY{kChi7;+xtKN3kzFCKylxz))MekX)0F$j3ug`Q=*W
zPaGsGD8GUL$Rgelw48!XAw~?MxxK8!4FET*0Q8A~clw!L^MQQjdMMY3vKbNNMgFG!
z;WOk_C5W=q2&)$yP$!j%TU>>oEIrKVLVG}J;deXWu2tX!C!^UPkaIqK^H1U%BdlBa
z3`WEjvegr>CIk7&h?6BJBPWB&z+&wgAO1jpMb!hp{ZVR0!*Z;XX5r3srv9{JGm*CO
z1IR`Y(Z<TvcSCWaAylzHxRpi%y4n{kzULIh87+<|A45EDh=O6ExH#4+;`6pT`K3d0
z|Nqlb2X^x94J}!SO&(;vy!&Whe38k50CkCv+zoG28tf(3!q=9a$%=H5I++v-ci)+Y
z@k^T{AM1IOsHYF{9BZ&e9i;Y^i~VEoy2#NQ{pMfMS8vnV`0=&1BTPv<;#;?eEckE5
z|1|th$A8=W_6JYEUv>ch&45kE|4jTJhyN4sAG(&wY_?de*0i+rbQ&IctPS%xC|^pA
z#F$;N9-S0AN(W#^C_PCLjf<_84yeJdkVW1ObIxPel68p+fj{L+tK1=v5w}>R$}|=*
zL7v3$ZR&!p1EHbT&9uoA65aNIvJMtC`qow*87~>oruBdUyY5nciM(3;ej9nj$(3;{
zj0E&m3AnTN14?HOTYm1NR6}$*Hf$4>8K5P5@9;ZK$|}6owzK!bG&`Wez7S9-PZ1Qo
z*Vc;Id7R1Xm%BnPr5>RYc~*x%)3lmUgTTCl(Yv#-O#uP$^?)`@5K(b9P`7~4hB?5I
zY*<6hTWXglC@;CS#7#dZFgU_?%*--%%p7l0HXx6BSdX5v_Mw{{{_#{7%qGNSN&q0w
zl1ccvHT$t+u1*G=@Kwjm#>mv9Od={-Of@0$kIsh?0vnz@d0$PiBklh{Fq4u8JRw(5
znE|a(-0FdB%MMi5zk$);K%`V|L60$XtM>pJnQrMa>NLk&Q~xUJ)=}Hhf_Xt;6Imb@
z*n_x(CK@WR81#<DwRnW?<F0=Z2nSs_A4amWVlrZro6x5qbqA|XHrvG91cWemQh|^w
zlnzlq#u%^saz|P#>%*-m7jhwOs<QMN3=lzXTJ(STM)<3E3fAXRD+9N(^!mTEB!$Ky
za4T9;E^f_VO{2}T|AFlKY%05+mqO<Uw{njX86ZqEIRTP^l3G>_(EyQp{fx_~!tfa*
z)C)8-E~C1UYiI&1&vL11<kC-2t6j^DUP;3xgr{&mHwBYy9FhTVFu0M}K)K}%wF}}_
ze32=9e)LKrju3VyFQeWeW*8uexXP7)M1}b13b@J1852Aun|+6BKy+v9HN<y?!W}X#
zjLc`2ISc?kY{+Jqbx}=qkknFU&~j2l7(~xQ6KGVO8~#8KY`($@+Tk~kt&{GsNcCx*
zGp%gZ1B_&@lfDmuh`GMhS|=)IN9zd)Ny~uzPuddO<FhS=U3V@)#cp!Zc0+H<76S2E
zR<#8J8S^|MKG4#(yb%jF*$v!5WhWF$Hdh?${5J9g&Snj!2T+N(35AIFu!NUd>m)S5
zEPWsHiUcaM*rLh-**ukJVxFq;UX&8>7(?&div=i|$LKvM*^2GhOi0C6TGg1KWHg8+
z5MD9*eW%b;nhcjkzn>{EsX5!Xzu@}u;qi(LNy96Ql_p!R9}j{!)_t1-8dwHYN+j-@
zET3h01MO5Oc4E(%SeHUy4wPS&+tsgQQGKjw@(U#A!g<l<nL_yMvhCs*WWN=%2z|JC
zOCW9?A5fm2gsEaB%^{R_y|Nl_L=)a<awCRTaBQ7Pe9N-;{n(q)_KC3_$|clDvf^i~
zhoTehxyIMlvfv}g`w!WNypAGxkyLsD-v*Ob9_}pt1Ph!{*c-NoCI*7aYJBYqtR`1G
z<8vlDS~~;Eg-0QDA=>COSfm`KzS}f%<!h;{y2>lCkd06^8Z<)fQ-;;P2BCnd_H96$
zsvVPnL@HLSBkN4_bGqaYsPpFi(RK&AKaE<@-;~t4e<POBI+`ZnB#O2-8Na#sJ)0&;
z%Z=U%u)0k|j0t<l5vWlfD`Nz3v>uIL=Lq6V<U+K7^jUhf>{2FEgK80y?3-$fQk=*}
zLw@b)iO|55C+M?_Ix<`)e&-WG{LTp>G=`A_)bA+$Xri>>u(a}MiuzM{<>>EgD4*&t
z_(lBC^Yqs+*2k6WhG4E^V|88%|2V?m%|`ltHqt#%Cpt<Gd@W?{EPWfAnIM%OmP(H*
z*M5ecfVJl2K<o44C0^QH%bIc?7~vPCoDuN#OtmS*bdJ_-iMP@arepeE3xb6pG(a$(
z-=#BuCEl}JpoGTC#(7s2nH@h(TrIwZP#KrHdR)=t$uL-|E9Sa1dfXY#M5@VqGNMd}
zSOZ>){qa_shP5W{GN3(Rx4hu%+dw<<^-!;bIyBVlSa%He*U64`y>*3Quak_OC6lqg
z=t>+!*twIiq(t@-5!>tJL{EQZRWNoe_Bs<l>hamp#CzyWyQLSEhs<+h`{MaLdMfKi
zY`3xmOppCaZEfA4ZH}UH#KN%KcHv_mtpn5dQupM;-Xn>3ZFUnvfw)_c(1HIfQZ=h;
z6SbLH1kvCbz*tw<5&llBWX8D0Hpj!A1G}T|XH4G@W_0Rk>1h4L@)=r!54xc`%aPbF
z<wY=^)*ggU?xL!_M^LL)BO;RE<8^3WHX*y>&1HWc*g{`Ph1huBMs158KhM#83%a!k
zU&mQ^0}sss!gQ2)Gu2aPMk5bqfQ~wqBM|2>7^Aipdj-{Kc{K(H6zRt(d~*U?`2?LV
zXqguy)6oiBy>D-|+!NalVkO>owZIgNW2bD*YRbPIj0x(pw9}T6$cCwkkKk|vJCYDj
z8UsKevDagW6pDVjV}3@*wt+5h25hqv4Mf~$c?pJk%L`=A&W2rsY{9v)SCl-p`Qgj4
z9-+H?(C*AsyTcynKNAEBMDtCj-4F6i0F}S#jFn{KwFQ3%+NtU*ZuCxE_5cncvVD7j
zJa-_`(5{hN?OgO2NPZSb&M+>BWNd^PDB5!t!|WlXb#et!Y}?TU9qdGU<t>o2Pz(4c
z6Jm+!Nun!RofGe;89H~^a#%+99F`Z@DFokM;~;_?uwpX@=>qlwWzb}N{WT1dRd~+=
z5iW+dNMjhD!W~i_tvj$UiRT~WrfQl8AIl|q_9rMnV)(nP&o0*I4UAt6$lgHQCx&cl
z3Yi`g=Dy`)5cyJs5^YmIC59Ir&SwTXqe&3!OyW<h@hozT9kM=lWO~xk+9!Y1684TG
z)_KoW1F`MiObntU2xix%Y<3~W<4<UwmRvdx3bco28RL#YD(Ff<pRs(Nc;9Y0rV^3j
zs)C5&t2n7%!OSyjeY+5&=ru*Ir+|6j8OSVj=?aQ_JLNnQOcedL;tCt4-~?UIeuP%=
z)(&*yQ?PtKQV&>vui*V<A04yP?4__rKwALqqD}11sGE_#>=}gX>-l3PLdI{K-d9!4
z#jvFd1j!;n?BXA`s)-kM$sg(ZhHiyCH&~8wqS0K_WnzlCh=M7y;XNEAq7lK`2X;i?
z&X}$b|LkaeMV(EtnOU)$Gh^Q#Q)G*r(fCeeLi8Bout$%1BDPi&8a1)UihfKS=)B^@
zvQ0ESQoY6@J2k`6bSHY<*cTZWyZ1#570z(jFW24K$ipr+ffjoC7#iv%Jw@J5P4?g^
zaWFIbRtDbOU`z;yZ^|8b$tKDsluR$>0L)3IX)nOdMQL|^EqW~Nt_wifXOm=y{lxL-
zaHG@Fnvl2W>~Q?KqS0A+WEr-_leu<D$3R6?yQ6glPQVVr7D*>3yP-;ZV*Mb0%L?xq
z5(E(JOk||bBSJ!GT8`)lEaQw2a}xtSb?E$DfM)CGCuZj)Ut8=|%+PFNI}c{)e9TY@
zYI1B3rq$la893aUbj7QVdnTeR53-YwCte@cF~jO5r_1NYZnGtNoUltRCMik>`~@wy
zdM7&?e+ObxGCoT93-!_LXzGV{Kw-b;d2a;sO`~Z#<s{>2>;Ui%p?j-bfJSyfZcm<3
z;;j!aDk$+TaWu~X5)|`dpzA@=@3v*u&2YK#R)A<d^N_Y~p3_`cxG$Vhhp_p15&Fzw
zeXPW3z2bRC<D(d#B79<x$#ozZNL*3jU9$8qAOLi=Y2GJDC^{O0XkFvB2tt*WOv^>n
z*s(XYD>sIbh~4N7#9j%x8Rd2;PeN-&45>W8vBlfbn1kYS*Typ7dag{tvN8{WNFj`9
zisd{{Z&?VPh<8e)DBd_HU<v6574#0h61UjC`)a1I4Qs(<lVxAs4D-tK<xbr7apQ{<
z|8I9+9$(YZ|9`WHkVIlni3n1ZTh6{Oi6*fn8bna7okpsqng|*dC5T%~i&CZdqK&GZ
z#x4;{N)WX)YKx_9B0N%CNs-@s&b{fA$19%S_wVn#?&O@AIWuRL&-=5?Oy;0}1B<&t
zq~Po@a>Vk{oNEC-c{tV{4aHgO2fdsbnjwYcupVz>J&ugnvSY)V%wy8Q8B&P{fH6C-
z1W{mm<*1KH&SnF}L(R7a(?30!ba<3^PBAGd%(^30h#(Y%A&K*!@dbL-ffKdSIgL??
zexQ%{vQbWh05SxjNj}y{_^00@&yjTJ5S{xcfy@k$gxPTzreBh3L4Wg4-}~>#8Vc41
zUD0bRqay;m6jUS08v~k7IB?}_qXWEAn-Gu$_bA6b2`7oQ_azORdfk@hfpug2Q42nD
zcN8Gf^HnTs*>Y}qsRiS`rd}got$dW@mh?KwvxgknPBOMS(<--0j%;+uKRL)Drg+=i
zm4pFGXgjh+jIH!l(xB(L5MXispWcEpRYFuDl5Eir=!j%<cC3coQ%gy^qA<SRfTspk
z$G{MUIKs$?E4lvGE+0paz&U+!rWzKK@iay(JEthXr(kxj&uO1uo@ZmzK|C}<96@%W
z)O{OSkBL=s#*<GDk49xAa;@~_wBymJfaEygit1OK0=YBoP{{O)s9+Gj2pAQJHFjG?
zMpR&_)uALBvc*nVgC%c*z#wMqL9XXV35SAwNg)Pzmy*GVa~g#IOmb`BaY1AUMd<7t
zCl|5!T>%;cnK<=m5nhF=H?}lakMf=nCR>9%o}dj)dl#48C*)aJRRbg&)f^G36S3q_
z!3eb~Qq{I3#@G4X!$c48>4B||fPIF7s5!D^gwG-4prBi&zE~~f93><M;Wq<wN~}|c
z!F2+`0a(00%pad|jBxY~%=z6L`@yY#&+#ckVIhd|xknylf6hn=O!R=(+jby%aT9<V
zMYaXjgQowK#Ak*j(Xau79A~Vf#&Ih-PNCyt`#6st#~ngk@q;HIkpc_?#vUz*R>2r?
zQZC_)K3JfDJ`jR!3y4nYgd&Y<i%fL?&oWn5DKjWzCXrzoS!53=(JpMsK90_TuaZ_}
zbPi1ac>+FDidjG+DZ#ibNlC6mOC;83P;O5$h5@q=_KC-6K`qIK(0bzd3!UIng`vq4
zBc~KCz^WqjJExgLh?&qUG1_omuFqj?Nx&5p?WAR&9GpdsPgPqsj7Nz@1}r`fPBex{
zn<dfEr)1wt-Nf4ci#HWlRCJzNv2uo+ZQK>t)uLFdB~gJ+k+mFEw?3HN7RGurVqHfP
zKGwg#=9S!%)JVx4-vk{W3d`y^rjfAwA{(nW#f^c~X@>$};neF%woo+fO&%(K^&XgI
zTxd(oS|GA9i3}-j1KLFC`yNzOVDbrrh`?5uxOlKNDdV39e<1IV!clX+&hCy1BnBfi
zPis=Bci-6;95KMc84D3loQUu!uX1<`Q5(x0o%=yS4zpFRBK3*y*>h_U-kFc%r2Ky@
zBln;{!==u-rl_z!QjzS7C6i(eoX8P_HIYD~)@7Xrkr~h^L1aXw^f?CVGQ0;4vZh|F
zNwS0@Oci4Ce91r4xz6aD&giO}Jc%9?1U-hi2yl?OxdyiVWT~q!=rn{JfNv*%g0RY)
z8@q}Wi&Of*5JS;Tuu*G2&z)*U^p1#2E^y$Cy<a@;Li*LWsn7gp*0aDK8YDw=ScNf7
zoAmtC<l0y<t^mjaOIxK)diH7ZD_A0U?#RQ(1T34p3^qAT{H&bPixw&36#Qczzd|nw
zRnMdhP>=i1#G;QaP4-T%6+Tt&)u~TZl6SazeEgkKH(dN@F0@kXCf}Qu<AKHPFpnG@
zR4va)t_L>AJx9$Xm}7*WB{d6I^Tyv)kEaYL`8VKgL7mid&{RN0rEh`rYSVH&6FrMN
z-$d7=V;rX)T|JAJAVjDNEeKjgI+ILzqtEPQj@%xLQbH@nVqVjk6o7uBfIob4g-o^f
zCFcqb!rn9|C|4CD4$}q=c9WZ3c^InVk5RrApKF1q6d${I?3sjb_I7gjDDcmMij<Rl
zn=DWq%yqb_?#WHDI-z#LHavV6O6}wgz7X!KcJfX3*zA_eWaq9bbG{-tf!xG8X`tV~
zX@bOpw6QRFuebm$L(|AdHGJa}$Qp#T1{vV`aCkJnv~>aVOX)Zg@k{h_Iux?GxH^)(
z$qB2|a7#WFZoLA8w-VYxm30K1GF~6!RysT}U{2)rgb64;wzw|~z{V6*%!w(S7IU`3
zaVC-Kmx#5)Lq{X?Ks%U+$}i5t0e;g)+$P)qrj2-jS>wp<8Iy}+9e7nnav2W&j=+Nz
z0gg!U-=NYOJE6p-Rh@&3z?vtiUm70!U(|01so!2#{jwNRze3cnXj;sr3di}xwpRV}
zk46@N6Qh1-i`!cDd*Irhxc6ve8L7EdKU7Y`J*iybzbofDRy@wKTT(+49KVvDv}V~M
z+(}ixAytJH!`^ZBW}laJ=44bBbm*#WEmB)+iJP2XiY5Pw-PUTAMCuID1rvn)+XGSb
z!-_w|A|&#L09kKa7|$3TI-HQNJr*X*ScH;blT5%h75VJZ&UQqQ4{iLrmkAlifqO)w
zEiT$f@`bK37;~$2vA9{+H5%l(=v+jQ{R#j7W}W<xW-&N8^*@_cNhhv0!Blg$X?YQz
zJQRTXN2A`c@cr;kZ)?kM9QOE(4voY61JIrTLNrdUMsRQKa`wfuUI@iykiT3BrZ+1v
zdA_WlBd>hVW9&5<={R%8QMNPeu`TWHoZg<~v+S73I^#HUH>ac)Q9nKYE_H)4eiY=F
zd%bY(kt56ZMK51?al{XYbD1u|J!&#jS9Si(ZZ_DkbmS$QXY(_SCO3NHz^uU|W~pKA
zx6La~{iXZFsF|6Wg;##_YwuRCZ@ZCQA9Z%jxE~yTza!b<R0MA$WH%U~B@R>lmcx4A
zKUYG0A<m$U#FGJUQ6)?|t7VliDX&$Pa1GptRtb}hQbeC5j+9puzBLKJ;UB<kq`WpH
z07t^4ytX6&N5Z7M*GK@4go$hCyjbOt+xD(7)?+MZcU?)NiF@67!3Pzcu7m4Z&votS
zx{|gMN9ssiGv~#IZ8Vl^;JQ|pi$ycbRbHD^NpJ39Z*H>(*RThB+Jimp!S428H+!(n
z-ppnX@>m$;zA(sbVUTTMQ=7es&F*fq2iCL)df5YO*aJQ7fgbiicYC0lJ<w)vY_m7A
z*&EvI4Q%%MHhVpry{^q3V6&5c8}1s%Oy@Pk`TEM**}`534}Kx+48HKUvJYQ~{wElV
zPKtvkbW)w`hqSlheKByPj+L&muPehZUdJL&(tjy;0@709JzeFx-Sf274YS#5E%mfD
z3$wYucqQo#!))HJYfU1XsyerFXMVR^)^p?wCja4F<$3&b{la?AtupK?w+0DU)}!i`
z^iLYb1y#0fc8wEhb0rOu`|8|aWEc+rvi?m#+Gu$17y7pn8`YIb;>M!DB>0z=I{^u)
z@L?$1W~0a-%aL+lmWMo$hQ#UcFMDPd63ChH<X?|pEZ2%6(bc&5$g>b0ziQnQBrJm`
z^!Q@ARq5`<%qx*+4Lp9;x=bYe08i-n#c~O6dYRjdJlo;%tJdvA!d`eXzAu(bc-+fe
zHu4;T$FEvP^qhQnLKjubt>o#|W<q2E@|=aouUc1#giG*g)s*|PJfxr^B;JI7*)zpR
zxD7w6nsTkEYHNet^vLr79=~ecV<bF<pI=S6|BW7Oc-|BKW#xJ!%@=+N{EPkj-{>I#
z&o_X7S-F8o3xZz>|6;lSjUGbqd?@_O%594@$P-&8{EOuhS^P3b;du`JW#vjpBii3)
z_!rBql$X_&9fs#4;9pj57o<hQ?}R7i{(AkBp-<GW-}quhhdLiD-#v6vvrRir?cCNQ
z<JHWNYwsmY?zTQ4utBRwF;h$5J#xE7`sX8deY^4DrMhoy-|1g3Dq`W!_1DZQ7+bq>
zr`>&)YCpamzOC>2%=8GafbewxCG}f+jvYHZqhhdENkRCgJNLp%l8WZ~{5<pe;=<q_
zYcDKL8MYwNb7)TVrl7NLMXry0e{aqS=6>Mz4_?bVRHMiG{&MlA__Erztq-GjCajJA
z=Jr;@jCEhSpG!NH@U9~!OHMtRpsd*csBCrpZmr9Vdqr0c*W)^J;rZ=?6R+!CHXU6V
zpWDOx<9*MycExRK$2caQpLKBcwd~996;;$6@@>?|Ti;st$>BC{&-GqhdiB(iuKT-R
z@LIdI&Wx^Qn^u)RYZtLCr2hKotoD09E6?h@@4=&PpW0YzM%mAK(f8z(UlyFLyHv5w
zZ)4`fWF5$VQ1s|o=jCSuGXIRt`FuCGp@#dI2Avjlh*>GmZNF>X2)FL%hqUUka))tr
zSqJJ|)iEmqL09TLX}F&czY=~kd^S9>S@3^`k<lSlbJ?ta92$$L5Ns+U{{MpO{6<_f
z!P+}$OoyZq6OwS9jBu+{u5jr4ACPtuGj(ij#0?*kGz8%Q$og1ZJB)Ki5M4W)gol3g
z5iVB$kiK%JhfbO_Y5350NkTPlC*r<iHZwmmdzmB5ai);D%#<=^ObFYWeVrZ1j$|jW
zv)OhW%f)gZaw*(0eyflr<OvsqtAZj972g$ENteb-E2QtG9nwC@TlSOvlzNI?)zlBw
z$?B)-EcI)3wYpy2rtVR5)#K_J^^#hm-c=u|jkFG$ti7+LYjd@~wC9?v$LRy~S^9i^
ztDdDdG=hwHW3n;L$TAKX*Nj_6neoslH#|+UA|C;;FJm&9jm$RYFmn?1e#UsR_1R!H
znVrJsa4q=O{9Jws{{z3B&*6{or}$s^BK|l2U;KUEM`$cif+9o+BZLXUbYZqIUsxh6
z7j6i5gb&2?;(hUN@m=YEr0=8?QX@HBj*_G0x8#xX=kgMHyL?f;D?gA&DdUt>WvVh>
zO;bNp7pkk&Z`Doec6Fb6P(7udRWGa8)l#)geWto=K3ahGiWaQ3*C@2t&^l|;T7PYz
z_O3QsYp+v!FTJlmOi$30^vU`h{TqFgzFp7O59`PE^ZFJ2re2~y*FB6{MxfEmXl)2a
zXCvC^XS`#KF(w+bj5)?v#y7_I#y0fQA>)QoY&<ZY7!^isv%VQ<+D*aK%r0h(8E=j>
z$D1FU8RmL(t7!{?Y=F=@M_r{JQstBv?L#-9o6)W5_H-B>N%y4V>9^^jbRs>LPNo;o
z%jwnhCVD%)k3K<Prmxd~(2r<0rWVtPY07k9SVm(anO;m^CYhPSIGFj&m&|gE&IaZH
z^AmH5xyTeTCCn417F&l6Vmq)L8^iVjWqrzi#ja&Hus^bU*hB0I_B?wLpJu<u{>|Dr
zFV2^1$Ti_Qfc9iAlIzCx=7w=e+(a&o`;1%6t>V7tHgP+-Z0;~uz+K?3bANCTxF?)9
z@5k5YU*TKwZFq^-`8W7pd|!SrKbD`$&)`4jm-CtYW_~ZI;uxsnB7c*=!{6iGg_=Tu
z&`4-1v=CYg9R*J4EW9c75rzmOg)zbuP{<--nUE=L6ZQy)gr9`-!bRbxa94ONJQIAy
zx?&Ttl}L%27%TP>hX56$#c^Vam?ox+OT?Apx8hbYOUxDv#B1X3;vMmc=qdS1fl@Q+
zHHnr4$&|WC@zP*vyp$$=CVeg~2KB9%HcPouo^(>WEM1pMrN1R#xvtzu4w4yJ16B5v
z<K;o}aCxjeQBId<%d6!~IZNIvACynX=Ru{n<$Lm9vX|ncG*ChnUQrZNiBtwCBb4#V
z$4Z*wQ06Pkl(oth<wxbLazQCp?kM+_CyKjTQw>x@)YdAaifV+~Lmi@yRNq%8s?*iE
z>QZ%$x=!5*IzIwBzo-_e<!XgWD7=x@LTjgW)WWn#t-JP?Hb_g*CTJPJ_5$rIZIhOz
z9oCL%r?f)tvR0zq1KvIKrh16pQRj3;kJMxJKKi@*XnmYMRiB~H(^ptH*sUMb&jJNE
z^gs1SdWG(31Q@RvuNv(v6bvv18zYU;Mv9SY%r(9=mKmAG2IEKLh;iPyXk0h$7){KU
zz<>x0bT?zo{^n5gJ#(x%%ba6=WqxC>F~2vrnLEu><^}VrS!$M<PfRdG3j77ws71X(
z1yiq56xEsPNhMH8R4SED&88Mm%c!-~_f!_OmpV=rQ0J*j)Nj-+>N({>*P<KJP3TrM
zOGnUM=^k_+`aK|MBK-+Hhh9uCqu0_K>AiFgeVRURq38~MpMDA?)nghn&0I)|X5L|j
z0!eAiY~bi?<~!yGW+#)w90QWBGB?4UA2NS4ZftGVpKZjpVQE%m-(b72J=r1bI5q|R
zdJ(&v{gz!1RAsX#*$eD-_7C<x`<V6Q{J7>^drs#%aXo;i{@ieGl!d9;+&pd(w}xBC
zZRHMfXShP(=^^)ws{<?rf|s`EIbf*=kTi<_h@Zkw=V$Ya_;2{t{Ez$|V5xvV$6o<=
zt>8U{T7tjus)eBlp(`--mM}~h4Nf~*SO6}&PS_}H7Y;y%oDi-6LnRi5yu?Og8__P(
zqA13QeZ>UveISV7XRf$dTrFmbx#9`&f_O!|Dc%Byek|6K>Pn5JR#ICaC|v3#^_2!n
ziBhsOMRG`sq@~h2X`_@SWlQ<eX`rV}dMdfeHRXD8Q#nMYWdRuKF2~CK<x%n^d5Sz8
z2wDjQ{V4B|v*nZW8Tpd@oBXHzNDfdMDlL@Oid_+vFd!&i8K?|b#wy9mC(2x9g|bFj
zuWVBeDL*Oal&i{3VCb>psrsp}sKKhLhN;nNPqnW)RDDk!3t2JC!q5se6Bx=<PpIeA
zUm+*%LrT=t0=1S}8%st+YTbaI_qB=IC)#vvp0-3=u5Hw|X}h#M?Syt-`yKM~sph4>
zqPMW{qwAgY?vS1%^f7umu(MGAAN@OhgT7PG(U0iA=$G{CF8uf#Ar^WlBg%+1h5$X|
zfSxoX15#wAvDw%SDRRR2*(ii0xo!MuxSKUiKQqW|VYV|B3qyU(0p^F69GPn_HCLFK
z<`#3GdBiL<ubcleADHE41;J35%|`5{T2up|s2$aj;;9I#E7gk{N_|94pe9q(sIREi
z)OKnYwVygl<x_>!HR=v^kMf}d=;m}N-3}Pi=x{oY?oSVLp(ul1O0S^T(CdMqBlL0l
zB3(q^rvIeNX%EJqX~4V&1SyOOSrp6kX9hB3m=tC*GXoN7F;KLV*~jEFzcAOBznG`M
zk3ZXhZ3aDu0e+%^o_E-xYy$fco61gQzhD;wLqD)v*xl?gNTnhm=o#zI)#Ms;L0ntz
zbxz<+t~<1%5nLiSp8J@a3aPY+Tgt8HwsE^4la2vJH!O)%6Bug7vz9dKYGG(FKbrrL
z&)^sEEBH11_xx61D4YM8zr<g+G?b^juMh-D)KN$grV2BJdBQ?r4Un@#*e@Iv@`dZd
zAHrY4Q^8&I78^qLP@*J;i*Jf?;yb|2WT0k__$8#yM#!5|@uB!!^pNU9-h@i8L)xfP
zZ>gV@AiXbrBu$iN057W{ZMH}UrK3`TR3zP%{*pXoUm&HGJWfuPJ19ey1ZA1}lX_C+
zHB&3q>g$1eBJ`D}#xP@)QO9g#CYkx>GcxW_Oo<&$#(O9=m-?FemfAv{1#k4EC3+N{
zLQkXT(YwI?F3~qJb`R-iv=>tc+^;#)lSyUfg3p~`&RBZr@5~ZNYa*qu@HhC|{GWU|
z_=~sTCv*_vgn`0v;RE3lVH&u~5@D6_EoAdf;jnN_=qbjFsc6?yXr-H^?a)dOOBbXo
z(jU@oiO9r8N>il`@XQ0xy_CMnV93OAN{TWAGVx1grLs=hsAMU7l|1Eya$dQnlqnAt
zH`Pn654qR^a*<PIwUgRejaLV#!_`shICYYm;llL~>K01}EC8~vs5hYJK5*%PjVyGt
zngsdSO^eqCXrr_bv=l8>o2AXszSO?f)<8<`(XzFC?X-49yP@6H9%#=rcRfIF2%NWe
zAw3c}?+>IW>M43EwB<Sa*ZN9*oxV}utsl_y^b?lWcuT*l|E=2~EgKpwpfz%aY;=Om
zj5Ycg12JkuW=@0l_&KEJYDmrP#xCQaanyKZJU9HzdXSoJfc8G-Ky#S+kvYMfZq758
zn9I#|=0-EmJYk+UFIw`_HW)TLhTRWXDq|nAm$+M8Z9bk)fu?nkf5f+u3~4_2@foR5
z+Jv4d*GNm=)IZRX2}TOBKNNZ-J%&!ACqYJj2^qPD{(;^>AEfi?Gtf2HGTWKm&?8SX
zze4uiVu*zE;Qje};KkjP7V2xzNlu}+-C<3rT9npPOVSo;tF->mBW8jZE=KQU>Ra?(
z&?JuO_w*-v7o(Te)&k?IansV4YnXM+re+AVgmAR^EpxD$2o9HKer|qgE;BbkUp{31
zWL`3_nYYcyrY#Ni2939;&QZTot!awRrSl-suh2Ij%^%aAj33hk^sF*rOdR;oAZ8RZ
z33~AYW(o5RvkC3l2O7V^{Lb8i9DkjSX9qw7-pjtp#c}U|n~dS6aMQW@+*jPU;3h}8
ze6EQ5jVpyb_Tqi`=6opMj#v3GzAN9KPvpn(pYSvJUC?7ocv?_}RPc+1!V2(<&EOX~
zz(b*MS$HBm7wU-h#aG1U;1;|XE%tOt+415G@QSa&EjEaIAYDsDP3k0_lYW(MKx#ge
zYRI*rbvBpnkeV@aFW5ov$sfue%b&p>S}T7qZ<cf9Bl0Qvs$3>NmOT|e=$Q%1`%1QQ
zMCq>%RNqyTpgTJ8v0B}%?odyw=ha(4#zSb10a`=tHH;i*p`y1o45LR7@wt|(-PZop
zA|cm^_IDfO_FS)H)Hj+NZ4KT~U>gpA1(ak=GNv1gjHSj#SU|gsW5y}Su3}g~Zjf7z
zVEK$QQ_SP$X~LW4JLg@8Q=_PH)D&tuwGc9BEwz!_LuEsUyJlHJHo7+5ln$XeTBc1p
z78=|@`U83jJrh>YGWsOO_Zh7+;mj7;%m-k3o?&h<#mocPpF|&P&r)mz+m(Hj?awB%
zW7sq{oprFw*j4N{b|-tBEr2ZfgKfgC<}$gboI7-=rO=@^^E>#%;B@Ets}`U06Y9YV
zX)loRj23#rPE8cXx+K90jO$L=ASZ+hp|#jvoC0o7EQ!_<D@m{;Vx<1kP-%>mWZ{lz
zLEEMM(kbbzR4m<*?n|C>Eoeb4WmZ<@&d`89mDkA|Wp~9}*{|eUmOzQ}FQr`ZPy?XD
z(5j$zQ{PnksDq%tB&(_F9CZ;adcx;+tH&%0pj7=!ZKL(jdTZZl8#H3cPSiiq=jscf
z!)NL{^!?yS7r~Dn=;hGg8yZc(kr<3%n9&oXI0&PdW~3YQp}prD_l?I!wAstFt+a;A
z=0W*E2X6)afuq8pKg3gms1)eo^QlFUEo&|PAsae)A$5hiOFf{TQGT#uThgyX+KjNI
zOiQLcQ1}+mHwl*GdhP&M!rkZU@&h1&*JCbYuW(Q}2Za14{7d*-aDzns0vczTXp^>B
z+TbDiCmElC+l;wikkCbX1hW-3?K$Q)<{SLjdKmFHEbZYO`ztu$Uu;uo*sZuW(6T$i
za_x?HehpidSgALG;b)v5bb(gT2Ew2T^y7!{6ZmxK(o3NU?Bg%<fAbA7>Voiw5F_*!
z`UA;_G1qcecmM=f2sK4tv7XpMB;!s{+|82siQ<Q_HK&NP#ChT(ak+)$ZNTy&F<(3f
zJU<dE#9%23vov{931qvc{5ovNE|}9ulE0B}$eXntT20+o9|C!jkFk2HyJ2SGD`<b^
zMz|SelF6kBXge8)WT56Cb&~1`e2l>CKsXZxJ!=><k6FkZfDPY~Q@CVMUbHd{_T^%Q
z%!>rUGHk06$!EeMOb0*Sg4vCe`WgMQ-qxTE(a<27h5*B>pnWRf!Gp|V=#sVq%u(RI
ZepGAf0CkwUNj;?xvH9$9Xitc?{Xag8t~CGv

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.inf
new file mode 100644
index 0000000..96cb49b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitDxe.inf
@@ -0,0 +1,272 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitDxe

+  FILE_GUID                  = DE23ACEE-CF55-4fb6-AA77-984AB53DE823

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchInitEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitDxe.efi

+  DXE_DEPEX|PchInitDxe.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xD1F0

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.depex
new file mode 100644
index 0000000..0e34453
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.depex
@@ -0,0 +1 @@
+sF4e��K���
a
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d1907ecad347f4636adeae8dc01f091e90ca335e
GIT binary patch
literal 11776
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.inf
new file mode 100644
index 0000000..e3a25d7
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitPeim.inf
@@ -0,0 +1,136 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2016 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitPeim

+  FILE_GUID                  = FD236AE7-0791-48c4-B29E-29BDEEE1A838

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchInitPpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitPeim.efi

+  PEI_DEPEX|PchInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x27A0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## CONSUMES

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  ## CONSUMES

+  gPchPlatformPolicyPpiGuid

+

+  gEfiPeiStallPpiGuid

+

+  gPchPeiInitPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## HOB

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPchPlatformPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..89550b75de68aa683924135d77708ae9cd5b8634
GIT binary patch
literal 162
zcmV;T0A2qAsbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0=K`+^x*dWN1fCV
zsPRz2kpgrpaKa3LF+qn$kF~g*<g5bSYvBI}VWviVvRa&e#V1?>jtH0Q-_OQLzDwB#
QrLqo&0|NsC0|NsC2pfM&K>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d3f7d28ba40071611f5bc590efe0b6637f00f132
GIT binary patch
literal 18432
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.inf
new file mode 100644
index 0000000..4db596e
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchInitSmm.inf
@@ -0,0 +1,284 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitSmm

+  FILE_GUID                  = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = PchInitSmmEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitSmm.efi

+  SMM_DEPEX|PchInitSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3600

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..6f989cc9199142f9565a01ca77ca98fc2e1e5354
GIT binary patch
literal 108
zcmV-y0F(a$x4+Ev;P(ATozxJh@le5$0$V^JIhV-VM2PcDNs4dxHUa<yAJZ0n7DK;?
zU}cCqKq~^NWdTdpVIxkUwLZt3E-=*s_VA+<N+$3=^5EXZ5;QL~0(2{I!VG{hL5D_<
OwYZ$*tOElB0|N--m@hg2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4dd842abba362f452427248b677943489bb0bc85
GIT binary patch
literal 11264
zcmeHN4Rlo1wZ8M0jLE<ql0gQDb%cvXrFQ;8ekKW%kOb5~C;Utjegaw@<3N>$89*NN
zO`L>s=a^QjeYLIj$)moa*lPVrz#p8+U=px}5d1-XYEY{;4r%}mKgP`a_PrAfeZKX&
zy53svb*;`?ckVg+?6c3_`|Q2X-e+e1Qtog5ME~ZQ|9cZXl^j>C(p*5WpHp9!sT$95
z(*RCWhE^EyrpK-H<+eK29{XB_j#dF=j)jkD6PdsI<KeguR2*k5<G7r^deZ-lcunBu
zjRBzDY{3^XM6#y%Moa!!IIi)Un{Ei)fS#LVb>ktN%khl)xH+!pnx>oA-2Od<R}MUL
zgn!i-BsAR|SAHSnAHBbK4R~u=Krph+f`Kg-Ol=hxCksc`X$#M+Gl+-7?`dKK>QfIV
z(#5W}&6AQ}iHA@9W|&n7hLsKRKPsPETNIP^tXeRL2Y`(^wWoFg@zJ`Kagd}DtyeNZ
zPtx`912)(?bcaqdQ?sifzJwhQA2)c}NpV~qJfya5{uwdPgH{czDt07m8++Xxw_`B?
z;+8YXyB`A?R(YmzIRKudN848Uxo10#);10TQ9-C}s~i@$40{*`lO6+GGAs@1fWKoO
z5HWUspmI38uOKGrc0@72stR_j!duEl#AuBM=WM4%{Km#7@M^pp)IHrgYFB@E&h_28
zr_m~3>9BX}cB7@ouvqduT1k&3ywBLBy9sR-8%I9#tUJVW+qGz|Y=~$l>{JI$%76^p
zt%gVXMC}CWcNyT~&nx26WCO>AN{9j%n5eM9`BOY7^am;+kazE0K<U=~hL*w%uXHC!
z)r0rTq$2>dM(?;NTtcJV7Tped`;#f0`t8(hh=-4xw*L_=zJ0%D|Dq+{NJUS&!W-W%
z)v~X)RR|`T%h*Q-)>2r<jpt&LG2HJC=I*g9fU>?w2hXyUGTH?=e9O00e>u7q6vF){
z!#!%TrI0#%`tQ|p((ggWue0|xTu3WdL+hD^ON%<!t0TSPPgTKpLg(}wuDlRUA$lU*
zqZ%dp&{h>E)&B)=4-}fQAdANm#+anvwp=hL1A-YMTJW}r6+$lFInp$QX@!1xpFxr8
zK4oSe?Pl|PN$j!$$5g&O%D2B9JEqU<p|1ntU8S_j_8w@JjU(MA*J}B8&cnBtsqm%p
zB!4gu?MhEurAiY`I%8PWD(x_HTzH>lWy1<bbXj<xDPBWv7SV?W>{9JWGU<rc#~o4G
zT|PJyK3*_J0gINfUsS-t+Q5ysR&j^s_c=_0%|yYm;uR1E7$#*LBmL(`WDCP^BXR5Z
z_|sM_NqU^;p(Kf4Pav=a<2Eq2Au_L0wwrD9DgiVB!neCCR}UIwXgE60BTx6zEX-&f
z3QUplWQBMcobuXvY~eiVITZ|+MnVOuriIKsGoqI@w@t5*oyj(8Ta$r;2-gw~*rDsy
zgBdbHII8_GOJuQevesYsvTL={DkAOZOR>kQjYgR_v080R!6MbhbVZ74b$Ynd7(VB2
z>SfEE&vMwnSi<z81(J))g&fBx;$p$lT_Mb*!_yIEe{vt`Z;kV<Z=lOAA*+z>LGxy0
z&f=YJzU2ji&m9ckBnTYr$_&K|9(?6^u(Y-D{%nd~MwU)C2e6aIX406uahEa%Tfll&
zH3;GD{3@ADN>@^RK==%-0O2`Y8#{_ozoyOyG6kSe&{ZK6O#-@$ris<UY}a7G;O9MF
z>Ed(AB=*6tZCk*%Ef$<oIWX#}n~iRP<e)A)C{3p&AS;8^&7G82REE2?Bz<^|FjK|1
zCSg`99nppr%P3O04g@tU7Ka6E7uHCBI4dtAccm#rv7VU(af;Za6*uWczd^jwC|+lB
zM3cwjbxZ5m6xO6=oAk_YU^g0*H<}QCSRRF9M_(;F3pwrE_o2r=Zkwlf-KuSxx<TtI
zY?{dG^_t17%#dBCbxBPV0sOLwFAv8ouGgB5+M{rxW$`CeiPJb*YAD*vmblQLmNLcY
z9a={;p<$K7BtZ?9lovTDZGn!xFtZGKLef)^(91_l(qpY}s86|GjXbyrr{=~w#}G_&
zDyv)0UVfI&2k8fJ;+AM|LRC0sa-DAa*a2o_J+1CCu?n*>F-XVV2WKE?EgO&?#exXd
zT1OJ>Y}B*-gt2WwFMCzGQlVpHvs|Zx$BBxf?zXC)#3_XY0{0^J2J6Ju>%FzDZ}Bac
z!QNY=e9L6K*%p0kl5ZK0rX*q&U>RB=*=`)ep@Cs+4LiiTn~x=VjywIv)crBZaQY3$
zkS5kvEtqROK+loo^rv}~o?@J5I7%{hUqq8%#AMi-K~byUJw~sSVFxBfd5EXzSdtz$
ztS<2qOv;Enz+5XGfF;AujqFIh-`K63rEYEcck3!JZfv_&FYQcW)Du9QXBOAyV1hy1
zXc5;6a%*j_xOOH+4d|K0GAmv=VwqD~3fqK~8n#wWN5ZiJ(Z;H@VwqOdJEGzOZ9=yj
zo)JoIO6&f>CDLknPB3jZs)bNIylN)b?aqbT;N@`{IUe3DXgTcHxxhTilwg+bJ#N}<
zt1>lRo|>?RHws*vA%Da8CSBn?%ewU4IH5y{$!wk#(i=2~ywbtpWU?N%H_AnvsDcXv
z=o(s+K?;+G6o+xNKbQVQy6A1~3#JzN2v{aoo*V90Wp)ForzQH>CNr>&tlUzVCZ>(9
z{9JgGg$s;NHd)w0D?224QmgMc?-!Ie;UK7-O7Xps5`MTyGH6t+J~-UC3SuTbt490S
zO?XXspFoZy+wciVn#gf`LO2n9(_?&x6n;tXW3PU~&fMDNgBBfq{+k+_KY|6q;7$*<
ztyF1_vQx27&CTx<taT`;b-l5EvOJ{+<_MVU&^jHY(Jf$S6Yt8tO#HHOJHf1%*=Pz>
zShO2Ua$S`p8lPA>+_q$xm1#9yuFinTuVDvjJkpFWpgDOG43O1mSr@w~+^G?3bPdG4
z;zTuUqD*!#?I%0Pca-Z{R;=IPk$w(k)gT@or45jg_F94C*8=uWq)5D<$5?&6Os=L)
zE1W-AWv$7XDwb}IZv57ES|qg5$OW^d??6Vm-{m%{q#%0rak=l(JqE0R!;dYI9wRL3
z*Vl&&xZq@k1=iy?Ng^V-GSubHQ0*Yn=ktP5HHGfT<bunf5=UP+su9Z!vcZBbJ1@>2
z3+-)_fn`a%zC16Zkz_QngI(pBs;=@0D(NQ}BUyVPv&?3FeV2OzR+PmKA2*X3NDt!7
zdXD2X+zStZz#<&_MmFexa<E$q!qtcah!~cXf>gDBmAF}OB9VpNTiKCXZ<p?7h@q0U
zfR5kfm3E$@gT#VKIi8vt>3VPtRqj{=B*4sK9!af`QwoIh84d#Aw!@r^mQCkr4vtx{
z0Vw$6LYswbj&FGaO$r^2Yl#f12nFL8084#Y9Jf~mQ7CmWQXr(k;0;(8sS{1`o8*vJ
zi})t6*Sd5*z*JHv=J`#4&6GYq30)E9-Y$4nV*o90<61Yl(i$1w*eHWM3J9Fc3-5F8
zpzT(MH=@-TrnyfjC=h-$F*L`wlNu<PD+)+@D(dBFUK~f!z|z7zS}<_&H>?XXg?Y3#
zMlWDNo-dEm(io+ecXaj9(NGEP5*L^u#{<90o0Rt<=@GnMq)Zx4dSOCJgz!ESc)2W8
zLdxL+=42j8ha(l3q+ID<U}8bo5lRrFV%~K8s~vCELg~iLIE(}d`ifv3?8iv<V@%nP
zw!yn-3C0Aa62i%p?uZV^85fZDJc<PsdOlI#<yMdLiH#buPS;(o9Y;gJ5!F7i32_SE
z-lX+~B{c#Udz<~K?T3?M#|&+AHLjj@w_;f{Eo(-umBV@3<{;lx0;XRzy7I=Yh*bRO
z;pUY-8G^USZo+rC^&VJ*S&5x!Kuro;5SxroRJT=XeIj^Ji<=O;DAa}b87VT=q~en7
zqpTc0N-++ZjPx=xESbKeuRa+ZPFke~K#*q1kq$XgSc1E2<-{hXRBvdLkqeZCHf3;f
z<a9gUDp)!pFkZSBF-F1JwsZm%!FODzC-JMMxMCa3Y)V_zB+WZwxmMbYh?7W{7UQ^M
zM_IgKnVbvN)X0pm!xY#8*3iZbE^rmoUwxRlwG?zJhp+DRv}q@Jr033{5<#Ut?D6ZC
zO20!7auSOuI%CIle0!(8Pt(J<SKywY&Dk@ivWb0Y(427Wk5r8p{<&Dq-xs?!e9RK5
zu$dC3(79wFn{V%lm~5eQ#y|$3Dq%P%*<n$j3!)%BO0~AlbOG7-44T7^p*>VI@5YhC
z`H&|Ie8*WI(@x?$27NA^^8vGuRZN0u^uz|V&Bun3DFyo|6^r{=EODl0kvDQS@}|7^
za{0@*pN@S9Vd9!WEbdn?j2vlm4$5VLEJoyzbQ3hrcSP&!eTXO-yK!e38t8^iMvykK
zo+Y(>`-r`d#ABZcCt`or8&umCQ+;YPb>UIPK1y91>?NLM%3!z<6n(C)z|E10!tpIp
z{ukXNhe98v+uuTcYaF9XzWtQu3vl9B!z@jj6On_`E7;LdegfI7hn5yjVAatTBUpYU
z4)$`0Skb%dA0O##?&d=9-Iw&lTj<=S{MK6_7D|E@WEhl|LNO>rGEz0PtRqy(W3^NB
z4a)gUK24E5rxbH7HU}CxgI&na0+)|aF)})MH3s?i<wCBbZwX684nSG4_f6ZXg<LAv
zwsUTjKM2^PMY>57M^$7YwGr6II9X``@huef;g6=sn~}{zE?o*l+_D~{BRxVoE(fwN
zP~s8It1&X48fY;mQY|=98|6k`m#iuF1GA8rLfl^PopGM;fCWcS78m3r75PSk8|uk|
zmh+8~iVSqO;d>-bOBXE{ve*BFiZ4eWi06*Pn&YGDP6-z}3zbiS%4Lcxg6Yqa9VMp7
zlr2Qm$ErzV`%lL><cGmQ)`^4{5jkE{gAf~u*^{JKNR}1*NOys7pJ_g05Rca!-XpsO
zgZaa_VtmUV$V|(>)(gxFngPouQiK`2PJt4xrp%}wCDaTyk@f%=BPiM1oC9ne-F}fD
zoMaVN!y|MH9at^PY?5W(Biri*#NMIQgNV&MPi!nD_`c>Olx#DC$8qG!D1&W^9u=BT
zj&z5TP}XF!Pej*xGEW1k;DkNNw-2#Tw*`dpWI7+3YDGx#A_+Z4A@DAntblI5<z7-i
zg>5`i77KZqY#m=~VazPP{Y%YPxGvM2O(`*5QDUG}QPu14JoTt-mtz+NRdA_~jVGHy
z%z{Wodd!${DFvp?9-mlUq=yS;jnURU;6mYcq`SE*WgsMhEN_t_uY8YWAn(n>CV*@K
zLVPsbpYAJ6TmPg_OiTQ(rUs$XKD20w5{5NBP)H^PVw0C|hke(!75A`D$H)e;{FY^!
zvx?Hl*TxLO#Y~FXq|}Cf05^&@*=*t?FNfYww<9Sh%aA>jZ+|`IO_B1<$c-71>n<wR
z2QO~<Aea?8YYgZ@XDvZ}y9!KYC$x|wd!)PQ%k_KZyNOY$!wJe0a`@JDkh*0kI6m^D
zSFlwE^)~sfq)qb9oB56`%2wG~FlvOoaO?oFY(XnFkP$kTj-DBYiQtgWy3olX&Bmk*
zfkuF4q^lSK=;~tKhATp6bsMHZv(F{rfYVR$j|W<ee0z)?nEo>Vcy)`>bz(h=lS#_C
zZcbGk;p4@qM5_hUqR1IU4uNm4)O%Uaw#~x$T5N)Bfe29rK&cQBj}SLCC&s9Zy(YUS
z_FC|zyc5P*4yMO?Cwy~)BN{nMAw>yP^Yw7gyKwYIdf`)j!HXk6DLTsE`8k-E3)q1v
zAfl{<L+pa1i=~039F`WjO;4A<Tg((io!iz3*?h~dp-4bfe9L`GOU<_?)a3eavLz;L
zjTM&XARnDEEE_a(FZ5ZZzzV=(4`Oz9VWlOoyr43N-%3HBEyh|a5JF?CqZz(JlNtMM
z4cgce3*WKWsP?&VeHBQjS8i|;ppgorw&*3k<yY94VqAKVrxJ~kSke5Pre_eEvcZAy
z2n9pF<$CbevOkzbT;+nRakSyYQZB-OR%8YA<fm)loXE@4)2F{aANdwDX0o1Vt3c+(
zDhVeEel7tO8+q0AZt7)rf{;y1z%&`C0MZ8DhFFj%+^JuEG{X@^_|H~pj`#}ITP|bW
zxN<Q;t#mL+UYsI)2LOCWckGxkvxl99gpO#qGflz21Oqfd#?F<oF|YX}B-hEzGo)20
zODq^jgEvHa1~ho_?dQNzzCq4pGQ!6+w1Ir9K&r07hMGakDz}ISH`z@=rGekdphxH=
zn=OG^$5%%|z+@z~=L9lk?PH@!)foPIUq(l$2E#~XG4|&5z(vT`_*OYZmtnf1#ey{j
z{cQ@f!kAWs<pX-`Ve8KT99^{9sHd$Nim3znIH)by+nH>!5lM8uq4_;7q~T`Jm#cT3
zn)L#xoq^k1F7|Pnt9N}`^RcgBbwe@LH_lzlVJ^PL%#A`V=jV>ld9cL<tMFaMCoX|N
zBk`gY2L8?jGN%C_=~yuuASt>mPE(j?Rc88$p+YD|MpG`c?FPhH6z8|@B#Ck9$`+W*
zWAEvkkD-rUipKhlnZ1#C=HW~Xjzk^%MKAq0Q5<<Ap?*pgnXfO3tuIan1<bW3gBIi&
zxyfKoGH9;Foege}V6}D9&v3GY_gPxrioo}S6Trs|A}>~%5kdjN$sv&Mr}B-X{MNTH
zLykKm-3UWjI6^kiU0uaM2m|t+UqXHUA`@$Ck>ibtNEA|GV$I$CSf@rl_w4%@KA9tZ
z>vOWbqjZFirfqA;<|<r@F9yg5U1NRFl}iwVV?Ugy%&$S@ZJ6GLNSK2wxS3iQXKpYJ
z7y2J34AXI4&ISmA{&&r>0X@*nh$Tk&wgWC-K<8I6t2M_y)GI&O!2dD_2@8<SlZ5K%
z6E~Rs8sxE-23mLumIX-*xpK??K;BMwz(!?1J3^J*JT!5QMy(}spIUfkO4H7vFzSWU
zX`7LJx!@4{Q8B=HGO<TE;mwFJ00+uJvh*8C`qdZGJczPxl%`4i5d|r+LyK=v%i)5V
zY_53*=qJUw=GMNA6McmNC<kXB;*xy!(VOx<swt89Ekal@Mmm>xVNXajqS&#s>@>w*
zWhYU&P}!1z1ZE76Mt>5B43o;RSie5=rP!ZMc*AfNqs@$EcEhq18kzz5P<JG|DiKjx
zB`2pp&?yqg-~@k0y|h1(OwMgi(r<H3@1))n$wFmGs?5qc^dMOGbI@!qLh$vds97aN
zsrvfjwBR)2s3^XE3Wf#LN-v`>SAjzh?zSeu9Z^`KX346lfeB1qL`c#i+{OSl4P`fg
zlL%;$mf(U3)DtjKRPzDBiB3Om41st#(KwIzCaqs(#^g~ZmD_l^1Rm=JY=s_5{ZerQ
z*$dd*I^?--ZuIVUk+){ilR5VNlI{dK#vrv}cBQGTOsv$mRpQP-cI8FVwN!1-*N69+
zDL3ml47(~tS_r$MyfE_s460P$uyWaoI8(XQ!Kt|HbCqj@*{n?OD%Zn6$_%b@Ls0XC
zDsGR)w};B)-?YEgNDbv8qcP-$0m=82@-SqK<9B$e7kY$BD4ZC)jSmr$XC{==5XY|`
z57e=qbI+Z@@6$eZ<P$cy+kJ)$eb%-}>-&W7K&^I!b$u2axQGI-=F5Z%Cr>wuk2tpU
zAD{oX8t5m^^ls&O^SvM5c-Hl+IY0f^YsTO9;IlVwy5#X^4()zwfjDEQ<=E=RE!XWb
znoZM(<~Jv9={l}!z31jV|Ni?g{$s+Nr+4#NRTcO3)$ZEaT9IZfYvu3Ho~B*9_9ij8
zDs7;*?D0=dmJI~@e{6pGwkvz~=@#s&FO(kl4rUAu?#RCG^1;%R{qMY#<@}EGg^}W`
zq$@J!vpZhf*16+Y^xDD4w<o^3s^Te2_O9xVtDnE?T*urOJ|DX7PR?Q7I@s5<%xx+B
zdC!{_+fG$q8@c`Ttd1A|_<8@(S92eH#kli?Cw9*xH><9H?S|<K9(ty<`+;k$uLiDO
z+i3{d%6?S!lV^56@B#gy<bsbKJqI2qo;*CW@Z{quz*C54?1wHCkv?#}aH`%b#*X~o
zwdc-RTuoOcE5O3&f5hm&Z+c6rFMR(tnL9VWaUPHUKa8Wm0MIo}${)r&=!d9(<GOWt
z$ug3x%DAv;)25qlyoCn-@%j7K0BmCw>>y&j&-#${VQafJZryJ^Zq?bw*{0g2*{-l%
zV=J(g+p28UwmREN+pV^Zwk@__+WyV9%l3jTZaZchu${4~?I!zld!_w4`}gdP_IvFA
zV&83l!G6sCq227TIKJ&DaMU>(9D5vl9es{>9VZ=U9a^WsImJ26S>*IM>z%hdf9ib7
z`MmR>^SG1C%gLLQH!m-ccX!_1vwl76{aKoPQ~tN|ZTWNaCl?eI)D+|uep#q4G8N?%
z2}L`L-Y!ZO>0E;AO4s$Sg|3@i0auGF;`*iQx2|VgFS-u7K6IUOopI@l#}!{)yr6hZ
z@z&y9#m^K!R~#!IF8+2&SxIfl@{$`$ZYjCFBv7)cL@fDn$-O1_mpoYVWXba-FO~F_
zyixLQ$wwuFC8tZiD$$jWFP&IAwRC#v%u;7*Noh@KL+LH0TT34+eXVrn?1i&e&Hn!E
zpU-|^_LH-_XTLQ&IUA;7;kY$;xvckE@3($z{mfbcEk17BV|&;3fo-{cv;7tO+jhZm
zr9<URbJjU;aX#$)gEK2{5;QPBPndP(tg=~EvzlgYnDub}qxpQnl!E-?;$l^)xwNvh
ny0m0=`Ros8e>VGz+2?32E3!Ylbk<9)$UNk>-f95!zyJIvS4zf8

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.inf
new file mode 100644
index 0000000..08e3bd1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPcieSmm.inf
@@ -0,0 +1,245 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchPcieSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for PchPcieSmm driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPcieSmm

+  FILE_GUID                  = acaeaa7a-c039-4424-88da-f42212ea0e55

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchPcieSmm

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchPcieSmm.efi

+  SMM_DEPEX|PchPcieSmm.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2600

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiSmmIchnDispatchExProtocolGuid AND gEfiPchInfoProtocolGuid AND gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..9e8ef235023b5a735ae32e612d4abd04318ad855
GIT binary patch
literal 2368
zcmeH|e{7RQ7{~AJ-rI__&={H+rDn#rhQy_TyHhbCrkR2mtD+1=5#4~zWkF`Pn&1?D
zX-D_AV>0<21@qcYWya_xQ_-N=6!(G{Lx>uUG3lHb7ne8@b*67upXcphM=~|p-(GUx
z``q(9ckew<-@bRp17yanXT~dMzHr4-LLy4ZMH^&^>#Etx9MbP1q*^Vy%7L+G&(FbJ
ze$lGpBs{AahqKw!_|fG12m5qp-A%|*aGWY7Wd3vkGqi=GwVR``_V8q0m@DQdw{k-2
zLmO(MHDGLo5@GJ<<S5652{|5Ws@>SQzIawVb3X*&D7P>nmF>4^YKDLVz?~T{0|+n4
z*f5S@=&JV7yI0<8{si-s{~1v2&y@FR7(HcaH0qx!<`|Sh|30rBtg~nr*c9TKZ_z_Q
z=t&pdIdcn!pHMuC;cS!&=wR@;w46m>2YL$KCzUjYnK2N4T0h~kXb+$deZzT+9s#I^
zUTM*zFl3>-{aZoxp`1PpJM{zG@KoIO81N``iyjBX(|))SBzaw*WBd#>>d-0BF^9eY
zJqODz`Zdrv&>$TF>NcFD4d={<)Trty`B~K_JT5&L2e-|?)q|LTojRGuvp2BSb(#GD
zb(!Zuk6Z?l4756Gp!&Bv+UZz!gIe?es86|6F#-<)8U89zs3_)6%k<?oHI^3)_r!n|
zcH=wW5%%eSsZBpNxCZGehzVMBH4Nk6GXj`RGH?#`{#2><>m?r<rOV<Y%HwCv$H4Yp
zg#r~it9u(^as?)lhfMQn^qE**J?I9twF%veHJGdAJifZ5w;qfs@9$tqJ5fWniN(@~
z;#$cd-2~nVEk8){S5a4{(bcikuE$rRJ`2ZM@sbT_(H}s^U~W+YgzvaTRUpjD2t<LB
z{>`9<^Qh!nyU>YWqWCf2Lu=a4to;~xs&&^Yw|`Z0^_}M1H(3Wl3%@keU9X@w;#(9e
z6bjDv2^|QYgO5t+*H%v1D<obl@r@G4$W;6`iQ^KtN}Q0mO=3ghq{KTU?v(fqcfqAk
zp7~9Q_e#7^;%yQqB;GCY9*K8Kyi4LviJz0WO=3ghXC>Yt@nMPkB<_{?Es1+B@YJvS
z@8kt{HFOm|U)cX|(^ufuo2w$_@bcr`;@mUZqnj`i|CCwy6r8_P`r#kD5bU9*;w6J$
z?s@26*W8TpSmWvoeyydYWy88h(D5G)@5>+yvFq6~7GYIv4O`C|*%NFFi?I~j!(L!7
zvu@VQ-eCjm6ZSbf&AwsZv0?TL`;FyTfl)q-&*Ag<<@`#n@dZ4@8DGqo@JfCgzl+!K
z2HwP<<Xd@yZ|6Jte*Plw;;->O{yrbzXZR=|<9~3Q`$RxoBPzrqaf1kph`2}GCmt3J
cqFJ<vm}nCnVwcz_4vJSruXtB{Ac{%-4G7G=*Z=?k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.inf
new file mode 100644
index 0000000..9bcc7fe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchPolicyInitDxe.inf
@@ -0,0 +1,109 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PchPolicyInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchPolicyInitDxe DXE driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPolicyInitDxe

+  FILE_GUID                  = D6AC4AC2-8BC2-4cdd-8776-280E1469DE02

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchPolicyInitDxeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchPolicyInitDxe.efi

+  DXE_DEPEX|PchPolicyInitDxe.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.efi
new file mode 100644
index 0000000000000000000000000000000000000000..606715b3059cb3749369e676c38e5f2bb523fc19
GIT binary patch
literal 3584
zcmeHJZ%k8H6u)hsiu&+%5hovDvRNnD7V>znZm_usN?o0>lp$2+08xBv8r+z)1`WoN
z+KlJTi<o80V$32s69fC8n*-EMTfmk$w+S=q+!mD}77Lc?0u?K7=e`!xIg=UpNweF&
zbMHClcg{WM-1GkAy@MWkv^}!re>XH45Xx0){^sa1Qa?LgH3Ol^Af_U!5-rT+N{R5w
zS{+@-PFcW2ZRl8e%$m4)=)odX3*bE|2qitV(Z2)JZ0l-l0MkzbLIR4(b;3FYAxm0C
zxvd-oxhfzaKqTjBaK(%)gu2o;tgHNBZ6sC%F)O(H3IMppF=qcSpP&j9nXyf$#kD#b
zuh1n(IZw-(<JDAVsG1hLoxK{*fcn<{z!cFd)y|ghiru%q2;&?bT~^w0Ix@`ZZZM9+
zxjI@r1!%A_-)aV6)5@|Aa7i>&kv|bi1|02gf_}uqu8~cX{8l3KmUiI98AX=UDbTb=
zAXX&Ccfx#}bRvFpp(S}12(?AxtZzXo#=C*;>muX~5P4@OLa31lEoTWy1!6^(q==E+
zK-A7owzNaR$P36mvMDFZ5fk8wi#rPOpmQ)uGW=<h41K0X#kVQ3xY*@p>TiM%rp0ib
z?<puUJKbugC2zpGuyl09nyB&A7lIrl{?QS_4Ddb0qkrHF^@V=duQmY`*92_u)BLhM
zuitT7ZPzia-UAwYvbBQmDH|Pi_1I^C<U|9MMd7Hgk^@tj7SHyEwGbQA(*D|ojma-u
ztS`CdxJ}z>VX4>9uM$LiUtrp}r#`PgpaIprkgY1&q{G7y_DIdEI9>}b8WVsBxGu}V
zAf~me?utW3=mdGx3AkIpJ|W1oc01eE!VuHyp6-+K)k3fgj%5|TT0*LlpI>C=WqecI
z684{jBiVNW{JGrrX>C&xats_p2>H-5!`lUoL}3<dC}rWxiW3sx0ON^N%8oNh*_0&_
z)}~158xDeDOoV1L7IPp(#klSY8kc1Y0=Q_TV^CNmX+$w35z(l{OEY{~S%+uBHimGl
zcgYZnuu5N<Elm)QRcj%AHPIItWu?(Hor83d*-Di{2Z;7CGy%9GO#r==0h6T)h-_k=
zoe7Y8jsJ(cvK$lF{q=>CYR(Pe;kthLye!xKh+ym8D{-jq8rj{Z8e^t1DeicL&}z{T
z!iEs@oZIQ4uouoG2yoa8dxI|7rn=)ZgaC$|TSCY-76}*bK&p@*dhsN)O(ZJ6%C;2<
z<N6plr8v;1OzTQ5@0JQug&@8onf1!~O4WL2msY^%grH<*716vPlu;^Rh2RkcO(@`>
z1?&-mQ4BRSPrf9}@#GyQEvHC$@g%xnS*cj5qgQ2C>f&r;B^~}Fa9~Gn!;9mf8bCKF
z>IUfJCe);lwi{?@{3&fv07oG0fZ8@w2^GTuXB(juS|ny0k18%E-|!j2kPBoThOBuv
zIV1(`bjO(*$=z?IWYbGgk@lY=I#xvR7Se}`k+U;J>FaylVok7424~Jr+U4Fv@$P^I
z8^UDAjsXY(Dce~hy#O$HRuJivGU~tlY5wV@XP?@Yfg0v7^5j8Ymq~7W!pDZ+vV3hk
z+FQA;?el`n!r|umZHJ!Ebr@|sUOBq=(xR%Q4_)or<@*l4Jow#0-22(av6<;zzGWX>
z-?1dzp8qNFF)`*O&3OiX3R!~6Q5C92c2tShp+Z<!fW!vt9Az$_FnYjD?w2aKeoKMt
zzHgZaz|k8^R^*azq!Lh0d^eHr!SnF&Q+VC__Z2(vx0+z0-%P84f0ytZA_DT_fj>%H
zQ(X;{vOkF<qStNSyt!h{dqnX#4yZ>h#9hxy>?iDAwwXP|wy?)oFZ(@vhCR<-XNTDk
zJI>Bd-<5tU{rB|VbdFojt>9L1<=lF%n%l~4<92epx&2%d_YK#@b#s@wt6YFf;^*?I
o{OkN;zK7qUZ`L2yAJ_Zz-TI6AKK+1R*3Vs#y5Mmv*OM0WUs8CWPyhe`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.inf
new file mode 100644
index 0000000..c6a3d2d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchReset.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchReset.inf

+#

+#  Abstract:

+#

+#    Component description file for Reset module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchReset

+  FILE_GUID                  = F5883FC5-F8EE-4e44-B386-6021FB320C9B

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchReset

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchReset.efi

+  DXE_DEPEX|PchReset.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xA10

+

+

+[Protocols.IA32]

+  gEfiResetArchProtocolGuid

+

+  gEfiPchExtendedResetProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiCapsuleVendorGuid

+

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+#  Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..04bbf370588214096fd0bcca55cf18143921e44a
GIT binary patch
literal 13472
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.inf
new file mode 100644
index 0000000..cfc7783
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchS3SupportDxe.inf
@@ -0,0 +1,251 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  Component description file for Pch Initialization driver

+#

+#  Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchS3SupportDxe

+  FILE_GUID                  = 14537da0-222a-4bbe-9a5c-212a3cbca9ef

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchS3SupportEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchS3SupportDxe.efi

+  DXE_DEPEX|PchS3SupportDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3120

+

+

+[Protocols.IA32]

+  # PROTOCOL ALWAYS_PRODUCED

+  gEfiPchS3SupportProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiFirmwareVolume2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFileProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFile2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleFileSystemProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiFileInfoGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesLib/DxeServicesLib.inf

+#  MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.depex
new file mode 100644
index 0000000..028e7ac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.depex
@@ -0,0 +1 @@
+5�c�2�I������l�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.efi
new file mode 100644
index 0000000000000000000000000000000000000000..599f60c27969a0f521cfb0d385a1c84308f570f5
GIT binary patch
literal 3136
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
O$enVR+%136gZ}}f2L;Xm

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.inf
new file mode 100644
index 0000000..9197f31
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusArpDisabled.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusArpDisabled.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus module

+#    This version will NOT include ARP support.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusArpDisabled

+  FILE_GUID                  = D82D57AC-99F9-4c7a-B591-BBCF8A0E7FBE

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbusPeim

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusArpDisabled.efi

+  PEI_DEPEX|PchSmbusArpDisabled.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xAF0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  gEfiPeiSmbus2PpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiVLVTokenSpaceGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPeiSmbusPolicyPpiGuid    AND gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.depex
new file mode 100644
index 0000000..d57f41f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7f128e565566bf9fdc4cd00e5fa4e145b422f1b6
GIT binary patch
literal 4832
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.inf
new file mode 100644
index 0000000..ac9ef01
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmbusDxe.inf
@@ -0,0 +1,206 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusDxe

+  FILE_GUID                  = 99796403-CF03-42ec-A817-7183411D79E2

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbus

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusDxe.efi

+  DXE_DEPEX|PchSmbusDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1100

+

+

+[Protocols.IA32]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmbusHcProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiSmbusArpMapGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.depex
new file mode 100644
index 0000000000000000000000000000000000000000..a04bdfab3e6c26c51e1b877ec289d7ea324cfbea
GIT binary patch
literal 72
zcmV-O0Jr}Fx4+Ev;P(ATozxJh@le5$0=s^2FB(eJ5t=vvkS9OEO#=4tqZ3Ld@ILb3
e-o+9$FEj#lD{#ULfH6UbMvt|)oaC$n0|N*&`XM<0

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.efi
new file mode 100644
index 0000000000000000000000000000000000000000..fc0ea42e5b0964b037455378364e8be6513946cc
GIT binary patch
literal 12288
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
Cw5>P*

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.inf
new file mode 100644
index 0000000..56171fe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSmiDispatcher.inf
@@ -0,0 +1,175 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmiDispatcher.inf

+#

+#  Abstract:

+#

+#    Component description file for the Pch SMI Dispatch Handlers module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmiDispatcher

+  FILE_GUID                  = 6BE18C9C-BF61-499e-88EC-5CD57430460C

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchSmmDispatcher

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmiDispatcher.efi

+  SMM_DEPEX|PchSmiDispatcher.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1C10

+

+

+[Protocols.IA32]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiSmmPowerButtonDispatch2ProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8ae071933bc183caf3f31cd4c5238e456b20ed54
GIT binary patch
literal 4384
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.inf
new file mode 100644
index 0000000..1ff50fd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiPeim.inf
@@ -0,0 +1,125 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiPeim

+  FILE_GUID                  = AA652CB9-2D52-4624-9FAE-D4E58B67CA46

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiPeim.efi

+  PEI_DEPEX|PchSpiPeim.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1070

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSpiPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.efi
new file mode 100644
index 0000000000000000000000000000000000000000..f35ad8df74009109a59cc1e41ec0a792eb1933f1
GIT binary patch
literal 10240
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
I|J7#oS6LdV&;S4c

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.inf
new file mode 100644
index 0000000..979fac0
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiRuntime.inf
@@ -0,0 +1,252 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiRuntime.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI Runtime driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiRuntime

+  FILE_GUID                  = C194C6EA-B68C-4981-B64B-9BD271474B20

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiRuntime.efi

+  DXE_DEPEX|PchSpiRuntime.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2010

+

+

+[Protocols.IA32]

+  gEfiSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/DxeRuntimePciLibPciExpress/DxeRuntimePciLibPciExpress.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.depex
new file mode 100644
index 0000000..6fa9e99
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.depex
@@ -0,0 +1 @@
+�������G����P����J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..44e569fb2ac7f4ebb0f9cee92e9fa97df9c801fd
GIT binary patch
literal 9728
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
Oq(;O~2YUa%KK}`wA{7__

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.inf
new file mode 100644
index 0000000..ecc8cf3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchSpiSmm.inf
@@ -0,0 +1,245 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI SMM driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiSmm

+  FILE_GUID                  = 27F4917B-A707-4aad-9676-26DF168CBF0D

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiSmm.efi

+  SMM_DEPEX|PchSpiSmm.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2000

+

+

+[Protocols.IA32]

+  gEfiSmmSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.IA32]

+#  (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.depex
new file mode 100644
index 0000000..05a6cfe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.depex
@@ -0,0 +1 @@
+H�t���N��ľ���s+�N+1J��V{PD,
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e23277b217824ce7855f4899f29aa0a3f7727872
GIT binary patch
literal 1344
zcmb_bUr19?7(a8<t-Q7y%^Kmug!>Q}Bfa(@i&)Kzl`}TopO);8rDoDU_6KZgY%L#d
zhYJQi^w2}0d#RWHz%r1yYvQz`SWiL_5(KkJRE8L=)_1lk%j!k?!MW$2-}n2z^L^)>
zuk9q-H12QObMuZS4k4pN`dfenR90Il*@pCG2rU#X!|<<x;gJ;x4NPQgguc9>BYfpX
zV{uLYgZ~??fp|4wxDES~`F}y{?-}qzu)1Phq*hX2DKrT6X}i1pT|iF3AhnCd8K!mU
z5t`L{d(K@vUC5E-tN|;TOQA>Tu+5JB42_2v3R@VJ(7ZF(^wTG6TJ=$UD)L?$Uo2aW
zX5{>gFtjW8gHJ6_WN|Y?xm}5u1=#CFa8_U=L-Ef+4L<hedmy}f!kw_<r4BnDri3=i
z+>iPZmiG-n&i0&1gXbgDs*$&WYHX!!%9vLX`6O`#<oI>E0#bD2M5i+mS)#DSia!b#
zM$vB0nf6467<#+I5s<Uu;!Tisq#Gm%;dzL&b#e<rp~Wz;HoMTONJ_aQhNDkMVY{S3
z1uBHU^F~H37-UHlg!dJVMtK7r9;OjUeDX;+>rlqP&IyBR(9!q{<|ye5FIUFmI)lnr
zbv=b&q&r9)upWveW#Jj(Nwm6Fl{W>nI(-G~Zda!>GEF6bP$**-hSHg7Z$&<S0?v+3
zBJ#T7Plb&)RJ?)}6Ux{#8}^6Q*WLseTy+V;-tm*z59rV~R6>N~G9WUQ{Qez~?GrhC
zda*?LSd7e8^zsr`bde*6V-vV<JeS2>Rw+?nZpDoCSrevn?P`Yue{dE=w7`8X5q%Y`
ztL^<Yd8Hy}HbMy_;$;~tW~7)~C0>yApLn+t*Bw0D!i}Tas|O}D4?(d&RKD^$@pxVR
zvGLtwwn0<#UcwPTuZ28N8v(h7QdGgh17iy8WV9G8M$!XL;MV$s^!+Qi&itA=e*sMS
zKG;Vz#oi#7PBzqf3j~SfSzj~3V6gkt8Cb7@^zmpzuA!QJ#7?r)>>NARc&o8s{RL;=
B6m0+i

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf
new file mode 100644
index 0000000..03b67a9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PchUsb.inf
@@ -0,0 +1,124 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   PchUsb.inf

+#

+# Abstract:

+#

+#   Component description file for PCH USB PEIM

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchUsb

+  FILE_GUID                  = 3B873142-4252-49eb-BF17-105CD6F3E808

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchUsb

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchUsb.efi

+  PEI_DEPEX|PchUsb.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x470

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiUsbControllerPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gEfiPeiMasterBootModePpiGuid   AND gPchUsbPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.depex
new file mode 100644
index 0000000000000000000000000000000000000000..631980e0f8ec20e495bafea5b893c3835d38bb13
GIT binary patch
literal 54
zcmV-60LlLXk?~=zU#<>Jx%%j7(ul@S0<z4yCPHu25xnOBfX6(DfdcmMqZ3Ld@ILb3
M-o+9$FEj%K2msm{`Tzg`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.efi
new file mode 100644
index 0000000000000000000000000000000000000000..80adced7c1c66dc59c3958a615ce31f35deebb47
GIT binary patch
literal 9792
zcmd^F4SZ8omVar|5^3NC8Zk=6K%-V+Fg68KUYj<xNl_`L)}}2&K}WDg$EhWcg3CwY
zHHFJHEbcfTI^zzNaTmWvbW|!Ln|_!SWUvKBI>O8phSAqaU5j?0VBzimzO<d{;C#5d
zzu*3Tn_u(pefOSo?)kdso_m_21>86O?EJ=<-yG5F=D2wp?Ux92a|u(EHRHMNDIAxV
z7@t~`z;PCQxvBAY3mW$Q>L>5IAvjDVe|2)`-S{=*mm1z?<+x26j@y~WajBOA_=aOM
z14~y1fO`ZoGP#(ns(hp9Svan0=Kc2u?#0;SOhu4=+fX|SjLYM=_L((HAO7yQ<GeDS
zw}EHYj{X2H-&aNhRwG?)HPE}Qrcl8oCF|mHUDm*I1L>4bYMXl!K7TGYhD1WEuTU<K
z&d+}~NDHin#g(lG;-9jc!$8*4c~%424`|?&ef}Z<UnpPP3X*I_=abD?7d^e)$U1$&
zGpiEin<t|iscbE!z0#=xnxDPB14^a&4l?ct>x{ENK63d1^mpgg@!a+<^ct-g^ljEn
zDBF=Bn&L3(SW|+I<CYQK1o{3e0miWG`^dO{MyWb4cqU+_D+}mRnPS!YusGHwwU~s1
zHJ`=|4>g-;fy20+fiAA3e^@lck<@D`DfPWm&bSz-hwk>Kv+l#zbo((9uv*Ka1y=J8
zAd!VutKYFe{&*7B8VD+U{V5H4^k<k06`H;FLs9M__-!MT?=EtuK6Iz9N{@bVbj;GK
z<$-0<LKCNn7N!>JIWAgg395}XqBiLdUd9Gzj2+7w+i^H?v@r9@aaeYO;+-e88G~Vd
z(|uS_y5E}0g%%sgWO9#ATBqmuh8Cu6a0zye^iQO~Y6AO~-8%s-XEAQ&;3s_jY{o6-
z6hM(T7UC`R#u7ZEZf<Et^?mf9Qmvz9I>jbG0A8dvL&$BAES#V7RWTP-RFtZLX&mQO
zMO3!3$RV|v8E5Y@76MjFs7NOjSdBI*Vnl1wlPl@1I^xoSH4D*W`P4jehYl>J3Wa)p
zL%E_T^kM4^pr%vkSBltxX4XrsI_X^_(>M^*A<Ycw3mv~<%|%6NWCpY!E2-l8I1W#2
zYkz{`&6L_q<mxVLsc2#co_*J9jl02AHyw8b&-EwJSEhHCR8Ib!wj@UaDJq?k65m}V
z#eS{gHA`)&_HgXV(wL?!E}qxcG=}5qDq@LEuxj1n%0>4Kc@2ePdecjMRMeMA1A2br
z_Yy$d8cc&J>(*Z20<%MF`|ZalADc=Khg>s=cOajbLwV_>{5UD^CgrC{d7pGXY4u0+
zGU0vk*s`c+kkiD*HzfhT=ME5ycrI}Ea8Dk(pwmj+28U-b@Vn6betI)0>J?7&^;XQ$
zFCIFYp0zNefUkd%8K58|lg`V?ChmT89mG9=CXXH_Mcv8m#C?jC4hC*`RbxLy-KWkp
zTf{`#LEYW_%N>XRNZj4GCby8%Q{wN)qCu=#I><bHE2v6}CNMEncu^WisC7484i>>q
z%vqw$V!I{e?vl=1yoxw5Ijo5NX)Rt=v3_ld;!Ty>EWz-~Z&7y_@!U-+%cGu$wTw@<
zp-@s1`Ny5i{IdnImk-{IZjTr42;w>Lzq&vYsa!}Zmo&0?P=b%*&BHc`wTxca_?HVO
z0MJ3(+0y$~PE?nkK`L!gPXSvxCedcBu>Krdg0B~`DyhsQm5v@ix*-oUn}fbbiUy%C
zVSumyIpg>9ha%~~l2$tkw0uxvLw7qeN$CI@2Py4GGlP`&lF}~pY^1c0lpd!aOg|jB
zUiza(bV4txQlKP7>{G;E#cNS_^s1|AJC=%Fc?pQ@*l}7k2vw1Q!%7xnfrTKw5X&ya
znhPBT9_b=fcpp<?uCV45A1q~EQ6Kjv+6=#ii@<MHx81rKPTYa-k)iLgp|%iCK0MB%
zxYXS5qZ*+(a0BAHfo344P7<p1lnW#a&Ejd5W@RhpFQa*Sl3)*4wl<B&I+g4kFa!^Y
zNh(My_PS0AgO*-s5AfLF2H{bCU>rQYUHsD!73wmO1nM%9d>y01mM_8jr8uq_2Rta6
z1+P9}q#V|cW3heMN`GX6tI!>0_S`vxJ)3NJ`fUs3!U=e55AGAkG%+K`4*I8;FC#9E
zJv{yMO|C@ZN}7CuxW-Bm4RK8(uB(V^O3DCnO=H0+qS?GG>e41~q+&dIa3Xp1I<o3U
zjLclc5k11g2C!%-Q)#QZZLQ1NEcVx}(k6)iS+{EDDp6*Kq0|Dg6NDC3Y$KEx7!Ltj
zhQ-E-Sv;OTdR^#tMSD=_tnINYLKBmu=6AJvVJnlY=2wC$Pwg*j^ui`4Uu`Sd+7HJg
zO#|$?b5QMbn2FXI@MO*n2A^feY_E~UCSw^)XQM@W8reJvTBTWa=QoRbDLk{zu{khM
z=U6396wZM)w*j#@FcDsKZbZkb&j6ket^jc<GD%u%;%ZOUBuQ(HO6`Z#qoY%T;o8oc
zMCl7<`F^QYLlzB49oW4_;vRg}!eY$eNQ@a!V@z^OAm`FEcX{QH;X@S_#Eq@f51=qD
z?Te$g(9(YXxt7D-v1COwmdJZmKsrSVD|Eh2I;03)e9!~e7xwc(7Et&%J)cN27r051
zHGJ>|=!JTW^gZbT2PZv{$C1KJ>eiDxv!jItupt-88`SjFqa&^Dv+%(|95K?`evS`*
z#(L`v8qp}NGjihCy0xDs@%6_s%6g2Z&m<b68=nL&bi~E3B83YX>9Qqc@%`k^s%YWE
z!wZ0Ro;Z!s6;l~D!#g#MH#WL)&rn~A%&c4c$IX0w2+QCASdON+7@ldc?<>J>Vmreo
z^r<_;BKVlqW($2IR$FvWMMbMWG2|&&AUU{z#wCT*Sp@nlxR0-A$-_gPGo_XU`8Mc~
zcHww61&<AHlV<;P`kwuhdmef>ofg;%aH!WCf$<c*fYaKD&4Xb0D%g}h)dUu>$6WSs
z;=u=*C=pj;Qq+}{$3SkIqDZ$*Q`l}I6&h?lEjAo+jVG>&!+Y+!o|gcL{TSOnglWNh
ztZftyCP9!51DoOiagC>*a_QbloOJJ1oV40%1lftA9x(^uBbMa9ST5~Xu$@WqH0oJM
zT-Q<0lGxl~irCj0wjlM)P$}8|UP_rNB?occC^gS?OBWLP4M$-YSjCE*#k4G{L3A*~
zTK|MmH5T?f%I4$2bR?4LStK)zie#<!aI25y<z@6d+=;lt)MFy9HtMkuS3C7siR%FM
zn2D>4dQyq&IQ66xSGUUkDVjuFP1uFRwTF82#MMDP2KyP}Izm4Pt?$6<YR+L}IY;$z
zQr%6ePm$`OoCDqzb;;L2uTfX8PHp;_1C#YT<6;@f`q$A@)1auUf55;X2L{oQSDP5^
zSNGr<T_48N$q-*{L$AtgMb2L3z;R8oqAuM{JVVn@H?qcXJ)&~dWt7#%^uk2;X8u76
zYpfegtVw+uxkc1vIjlD61|+Ug*Nm(ySYunSHklo2<B-)RJEk^yvvBQ*x(Wyy^5|S;
zD|0NB_bQXhQ586fk0M#MhjFVxkSs1Pp^I$3vfwek{x?97))=(>#>41g3zzscifBT(
zQAC4R@fwDbT$WE#ExkjR<~FAlr3!9~Xb_65;uzTeUscTXWcQ4~=|-jrnx`XfTgW|t
zcu0$E)IGy~=<I1Pb*G;_jf4I731q?oY0Ur!+xG>Ma2iQR5og&mcB@Ljukk9zOESZf
zs++&U$Yo%JuV0S%Cq)$Ls6r#jQE^uj^j!DlMBpEk-SmG+b};kbm0jvJNo!KM5?>i#
z|17gvkwH3_%y0Yw>x+82$VAr|h03<tWPZa2j0tPQHEXEbY(E4$=7(H^q-a1I(AH{6
zsaaau&q*h=q{x7jZ*!61Qm0n@M59G!+RVRF)PHtqpSDvQO*xF?i=AD*<27SyuNFLA
zwPr<3ZDbCsh=V0%NEKmy=>9K^H(G%0qXhWjB?OR$1X%mOEWi{d0Fv0R3gFdUS^`7d
z1majV59~PzHp}Q5gQUO^Z!<aEdixo=$ViW((BPr_4}V09O!I}g2WokK!_!Qt@^*g1
z6Dp(`x1CVoAhXGssGFrxoV0Y1Bc+C@dw{(S8D?N4ofuTp3EYlw9~w5y;Mt`E+D@#Z
zZB6NfZP=!D>zReTr)tL5-hlg%;O$;M)gDg!JgqsoPrTyK()JgZlp#v!{~yW9BH|@H
z)54-C+gcmXG24hny2ec1Cb}pU+7`}=$wI3dEW1@B^`i73kFt<FVxeBuLa+wARJr>j
zZbc)!S2L?tC!Aez6Ya2v`BzFU+M_A0LVN8sH9Fz5<yTU-WiH@2{uOt>c0fAJY5Sy3
zj&0VZy$J3WZpFrsyW8v6u)SqaM7{j!7l@Utda?5E_zd=(Z)onx!QnYa-5P}p@Y*%~
zjHcKxl@4&Rantd7jGK<vMTp?;-aO*&#c@#clb$Jvz^Ydd-MivtFXrz7E3}hbI|Yt|
zq&(x0B4W!A9Wt_A3%6}E4e4}Lb?Pq=U&GNf3h_Kr%r7IdD+(%FxTWy*DNrx!D;8G&
z8N>RktyXrg|ALvPz?#moyiZwwq1BA^!6to?$Zz~D8z{wXLfe@Vkp?vUhE|N=YVrZ!
z@D_T~7YTg*^J*uNuiu7_-?BjNfCQ}MCytkva-4eg>Uj!tY#CxBQ>dFGxHS}UwE0>E
zslnN<$zf@kiIe7=m9t&avQ)0Q$DnN{9<@qDeR|?C%6BrgV2XIm$(~fvpdRZ!#cQjG
zJrz6_z~w_LUM{WG!9vOk9rYRMe6y?rQUyz##<0ApP!}^aVWciLp75lWWs1WWV_YOz
z{$;>DNsycxkaOz3M9xg-8|62k;R<DiUR~SIDJ#s1*E+%o?(yvE3Nur8>b2`?6(!ki
z35-!!Tm<r>8PpN)jJm)$Jd-d5dUdg@XsJoAMi-@uecW&ot|LjHwx|^~x{>t)DA{?f
zsK+5)#GiUAM~#(n&QjlG+(wg!?$g12feEyMrDa4z8(30?(p&Hl8&vbQ1lqtdx8dvd
z-Kg2d^H1c`G>WR&HFPt>rW+XU+0L^aY44{+lG}&miA@o9GdiMPc#Y8s7>N2#)HgM=
z0(Uy!`WBXf+RsRjnYCgbO&|?xr$W$t9ckFWI=Ab!V`;u2C0{2sD`ZOp#-t8~G;CI(
z^rYbjYR5nto@P@K+*#7sUsUhKFR{B&Wt6MN1eAd+t`z=lqQCZ)`L&hwmz(akrlcK2
z#dqjvA@D%^p%9Ml!zYD4{>^#Tw8`PL7FHugY9{ne4zKUwV1=}n<`apmEXluFV4bFI
zXU)`5W_$BTsQOr~Tp&q{T5xO(8@C{|thT0efp1|u&8S;#P2tM?8q`TkO9F{Xi7}>C
zN(|c7R+J>oz%ogwC2Pc^Oh4)cP0hgAy}X&08j@RZc{voD151vPXMx+;Sh`=HfsPcm
zs0W$*ZyaPSSilE#QoGXXzotB<ovYm!+_&yrtFT|x(q`sMy1R<yb04#iW{Bs$LszEB
z&_TSIdzW7a*B&ZMtvp3hI*eDyi=n#_5XCzKB!b~pY!_*9!)HJ~`k8zfQ7;${jDxRV
z=JU$G#99><@jQD3-_KR8KvmwauVM;E#TNOsx{Z+VRCP^bLraF=QR@SBsm(gf1s!K#
zxjelY0fsF;r%8c|BJPXYWjLxsILKW(Z3HD3lV3~s7klNgU?GkKj%l%uM(AZyi<T58
zs<nT5xk_(u6V{~%`Ca*XI<dLi;FaG+s3@if<$w+oD$w2?fbr`v_PiQc4$9@2W8xKu
zbk?|TAe$<IdiPLOv~o%#TcK_xN(U)&7WAXONAipsc^%#=TGe+U(Fmx3-H$rE{1Ss=
z?-doezKd7J*Qf1%lWfC=icdxI#%i`R(kvFJTB%!=%!#E?fKLi*i;2r1-=!O7{;eM|
z#nu?;L^+l)Jh*oglgLC5M)H$2k^Bi7`F+e)K*F_<P~{8aMe-)FHKblMJ5A(e06}i1
z<=&Z_hJtLV;x*DfJIoA=%$Md_ElLPmV@MquYzTrK0FOd|vC+e2zDQy>@HDaqbo?ft
z{QMu7KU#p4>MbsoJ1?m2x&0J?FlHvRn2d39WmPLNI(&tL|M8nTVSRw5co7d$ktu@>
zjI!KO-H&|zPINJ6u9AU@>`WJjU?-CNV-5bxqk$+sCI#E|Y*M@z1Wn#XhTu2(li;Cc
z*gIDGK_u}6#xyboo}c~yWQH6&1$!{ay=URmRlVr>s${5D@jk4MR~=V}+T%muWUkbf
zxt$p|KHZ1us@EBAIeNf?*C0OF!}lO+v^Fv|U_*_KD?srURH$e^`x%Tb$eP6#3{1Mj
zx*(G^i>-~>FR`HFtFvrr%(BKey!!BLT@JGn7q~Wl+G%`>Y6l!ZJ|C{XT25}j^boWO
zyiBdjVankGW@Q$W4#jssGUdt(F^mP-@z}TtFhYVjwefM*$=8WjG;URUdU0IilWNZ(
zYIkZ{Gs3NngLsEMrc|*`Tmw~Rbce3?Y!r0Wz|(;(1A`dY*H<-{0kIfmjQ_u}cOD9%
zzeah5-SXKDkL5mF(Bh^SJj2&Z=#GRy>|rBLl~HcCYD^Of6m_xt{l<{{^{RAG_sXxH
zgrgR9D50V*spyD85BqK9eiS|1qV9J12P&Wk<PGNmgS->5kKGZyz$R;C-2Df<MC^;Y
z2MYkmF83W$Tk1$UGW_o)skgvKPc#1N0QPtAcQ4~_&k%nTRQ|faU$<0rT%jNM(^dWs
zMBN=a&?D|6^2u|IzkbFac-s?otMwn1KQNaKD8^jZpP3u^e`)VL@Z*cy#D2#2bsDQ2
zt+90{zNE3;Ear|<npS1%fLsKozz`8-RbOK7u)c`c{}q*~>;P@#^Y+^6o36V3$b_dI
z+}7)Jn~P3%ZHYvld1u};Paa$P(z~r00PG$CMu#09qd&}xM!&}^x*V6FF>oC&E&eIX
zaqASOzW8VJbhYF={Q5UqK;vWi8&Jd3DzsYm93J^=ZJc)AUjrF67pMIXKqFZHy`NP8
z{P5)3`_2hJzV%;zI&=IZ&+NYMv8!Ks<Nc;z%qQ3Gu$*|PYR&C08qKD(GezrT4@7zs
zgHJ4d>)(F<r{fcDeZ7gF=qY&eP}z$+f(1!NSCIcv$~0Yd_5DOylGM}TdgYVPTs?vA
zE#}uBxuLx+asG=HS@J8szOhd{Qg&JHcMeV1lErP?_h5~%H?!{jst0J%uB_DutLFT4
z@0q^sDYswO=lrbux9?8OyeadYi`h5I*N-itt3KG&vi(H(wFA4a%m40?341=~>Y~}3
z*5B6mN@MK8jRn83q`Ww9*YrJ)pWjvZPXC$PH*j`aL*JqHCr;n{^5UP5pZC^z`N2b*
zB6sfkj|2VPXD$>zbHupgw72<*-I*^ZCVbbF|NWUo+p@MyXSb!14+{?L`_&Kr$In&c
zn~LbkzW>vo!dvg2XMr6Tf$;F}PuTBjYVq3>_1*fNN7OZ^;<qChAO7vhHiSEtht8~t
z{}_e+*22r)?_0i{!82YN-|>0tV~;&{|9uaziLd$m1miDfyqU2lqb1`&MrTHM#vd{U
zGC2Emd%k_Hy~w`AzS_RY9<o1Wf7$-J{cU@TeV@I<e$>7=)1O(L*_)X;>&{sXvsTOw
z%|1T+)7eS4JbO#qEoqMH9n&2*IqZ&G9D*a)ajV1U3_7XvN#~E9&pMxX?sV>Q?sdNF
zJm5U+{Lp#ADLX%Po^f7q>T)OMUXgos?my>t<g#B7;CBNYwH>gv-%K)U?cdJqnZ5Lu
znp=K#%QnaJj&~dp$NP>h$7x5-oF#L%&H48^Z_R0*vv1Dt=a>b%kR_B0i-gsJBz#|Z
zPIyCjTX;|C5<U|8gmc2>*;i%Xn0-@rQTBJTY4&s3`?HT^f0*5!JvnDy&XSxJIscSX
zm(!55CFgrNPvz{$c{%5`oLxD4ayoO4<($enoimVgF(=8%J103)omS_!oSDu!&V1(`
z&JyQBXSH*Uv%%Tue8KrT<U8m*>imuKr1KN!nB2VF!rY~~-MJs<vVeoaI+tjB)V9j@
NL)*(XynM~)zW^x}w+sLP

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.inf
new file mode 100644
index 0000000..7a975fa
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PciHostBridge.inf
@@ -0,0 +1,248 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    PciHostBridge.inf

+#

+#  Abstract:

+#

+#    Component description file for PciHostBridge module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PciHostBridge

+  FILE_GUID                  = 9fd2360e-6b48-11d5-8e71-00902707b35e

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PciHostBridgeEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PciHostBridge.efi

+  DXE_DEPEX|PciHostBridge.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2120

+

+

+[Protocols.IA32]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  gEfiMetronomeArchProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+

+[Depex.IA32]

+#  (gEfiCpuIo2ProtocolGuid  AND gEfiMetronomeArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.depex
new file mode 100644
index 0000000..95be042
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.depex
@@ -0,0 +1 @@
+=d��I��B������[�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..92cc991d43c41955a987418b243a732554eb6ec9
GIT binary patch
literal 1664
zcmb_cZ)jUp6u(Jcnn(6#-y5NQLOx{hkbxRfUrVV$h+TqHA~tg~%VcY-?bNYONt5A9
zgs|tt=Qa3AKlx!r{V@N){Im{5lD(32qk|TP2!h0_BO?{21&NaF`8!G4)zN(^9=PxP
z&N=s<fA_rm>|wTTy0Gn&+dnuGV=V4){l`I-Id|`HJiyLDUF=xiaxxacD!SW>02r-%
zDc{xJNBSN28auLlAN^M9G5GVtP(@tg{}%-_lW%6=>?~@ex~Nv-n<>E9tHFu!%s7-E
zV^QtrIvi|+B8)8r(~~D&f4Q9_<s5*O_-2YQHvB@8XEd4TG>IS3e1&L_J#=SU7-~#Q
z=CZNkD&2IheOC9F<wCC4zHKhAecI$vO&UFFEw(AySHxkF$2G~kirqMqT>AnWKR+~T
z!KHYUA|B+c#;*-yReB!r{wc&YIdOa}$vyT+oO>V!633+^2~lm2F|StGYtvKXwG*hH
zFV%My5@PL3;J1rerTb#S=~}Mk$h2_wO7<81$Dx#ZDy9F0U~=J9fD3(lO`(TJ`vf!E
zBajwY1Qx+1aH^DaGB9x;xUZvAfmP`I;Qnw*O`k_fvU$i)tP&Bw#kI7d)Gw?<`MnM3
z`>6xV5w*3k9C?tqufi~8`4)-@OSm|K=$dSlM01~LXCQgd0yUKyJ*pR9<i8zhwT~Jb
ze#V#XnnT5TtMs#*N0pFK6^sRz>6-J9vf};$14(_Jv+?=lI;4tw3Ex|fxRkrr&4x!^
z3LNzt6H4fJBd&xTCM3OB9#$L{Vv6X86i(cYyW*xv@rHPr=e+&x_*pM68&xM|;%Q}4
zSB)EYc*Vp%Bkm3DGNWGd`J}=yFk5)dpH{XgqO{_!xTyxg!C0q`hbdjeg;!i_+pCOB
zF<{6mhvubyr5o;{!D-JNnwzgH_8<cKjmv6HL{CzB(Huk)Motr0*2PO!_-f{FbY0k=
zs5P3lZOls+P3fv!h}|+{O&)7@J47D)vv9DnpGTS_T(lD*9&4mhbTyZ3bh<7bGa5n$
zGdb*ZEp=aX9t)SUt9sGmm#ta)Im6EE?%8<)!$P)qcA<sD?9SQ67Lu~A3l8hCqD5DC
zA6ow7tEt87^3&g(JoEMKy#2&^{ey?DEq=G}-QIWHk6Xd-Hy_&xVGOGY@3fxUdmv74
z$Pwt)-xqo}_h5)yvNm-Rrq(+Wpgo<prHZrkwguB|1^F7=khPhanTeNPfxJ$%_c{Hr
VKB>Q<f2f}xI5Y76z()gZ>%Yd}i!cBH

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.inf
new file mode 100644
index 0000000..2b58b58
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmAccess.inf
@@ -0,0 +1,119 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmAccess module

+#

+#  Revision History:

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmAccess

+  FILE_GUID                  = B4E0CDFC-30CD-4b29-A445-B0AA95A532E4

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmAccess.efi

+  PEI_DEPEX|PeiSmmAccess.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSmmAccessPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiMemoryDiscoveredPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..0e4ef35820d1b180c1d6139915747adb7faf9d0f
GIT binary patch
literal 960
zcmeZ`VjvrAAX_K-8UtJz7<?F+Q4Dy%z@*5{$j9&iD0%=Yqrk+#0KyDVr3yeM2&01o
zKzXn_paeI%B$O|JLmZp%0-$*^KnVjVjZF<XVtOU16(vB8hkzL5-Um<`NWp;u14D*h
zN@7VOP-G5B6zGNpP#Q$RfCB@=3B97!ocv^nTS0DC07`;rWZ=NS;MDD+!jZuNlnChN
z_#Y?{8F{#y7i8{279i2x>CnK>(D<<7KLf)K1`Y;>wC;;(@3Rzo15F~{Hy<<ra^E(e
zV0v$S;BZ5YiU>mq+YX@98x8{v<q2**P|DhH`u}VGZXXqq){`Z6&6bR%mR%ArX8-^H
zzx6<cF%FC1<|@A5wF&6luEXz)4@4gZn;Z?YhX-!Y%K)HJ$Uef#egF~$#&LrT&`Tmf
zoB?#?1t4Z>KbBbM>+IkAez`O2xss#kx_N;D0YK~n)C0oq&LKXaxH$wA1IL$2ZXQ?<
zP|g4(28|n7+R!V42!Qm0%z^M#s;a6|lG4E%Ap|HrsT!FWSsKkXT4cmyEMP2REMW|h
F0{{UZe!2hv

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.inf
new file mode 100644
index 0000000..fc85b5b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PeiSmmControl.inf
@@ -0,0 +1,95 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmControl

+  FILE_GUID                  = FF456B9C-0DC7-4682-9E92-0DE84B6E4067

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlPeiDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmControl.efi

+  PEI_DEPEX|PeiSmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x300

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.depex
new file mode 100644
index 0000000000000000000000000000000000000000..04a994f69f4355bf96f414fc4c084834ed2e90b8
GIT binary patch
literal 72
zcmV-O0Jr}FsZV5&Q0TEuoZ<^aX^xGg0^(>^9)X0^5xnsLfX6(DfdYuE&nL`A)DfCE
e0FWm?!A%18@S_t-Ch$J;;NHa&G%qv*0|N-S1Rr1k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c0fc28af4378b0b889e86ad45942f1000c2dbfe0
GIT binary patch
literal 8064
zcmeHMeRxw<nm_p@KuQ7zt=bN84ak>J$W2NcKHAb?8QU?Xq$PlqkG7_v+HRXbVL*$Q
z?lhjs4v)^bjH}Pmsi-sR%D4yx7fD)d5z#GOWfVt6g_+ByIz_uQYUS?l+?(DO$Ju!v
z|MuoN=e+m*KJR(Y*G<uC^1Yt}-&^wg3wqpy6sk1WC^%2lw~SX!AUW3&VjU-wwy6Q5
zte-5uThXxc?Wbvq%*XKKzfDZOoBsy>yU^Aj5t6SWq%M_^wC`g0p13)|%ElmMvsoX}
zFR8C+M?Y3V{BtTc1UCTLZjk#PO}3-?atJv&r@peLc9ZNY^LagdX6@()e0gQ_qI8GN
zKnrcg@Tu4(HUF`u?2Bi^XTJE|s`Ad$r%#ub(V)!?79(A0vqbW*7qhN5XtNRx#_$>N
zLgI`4@iF19$c`JtZy@&M5Y4w4%hz>6qXD3{?HNQWoU#u!&0W~`q|`2Gdk(G8i^yNP
z9iA~}(_vi(iHf%i;u1n9Hur|KVO4ydtEWDL=2?#t^s_k{Qqzv#iem@~j+sglqNwRm
zsi<lZAt%I!v3#Rd3~KDr&h`m}G<BB3abxq9;OY`@*)fBbkShB2r}SiXR}~D}djl2g
zUKT}>-1_?9mB==gCP4>dpQYaVbv%Xf-P-AjZB_k*o@~An`U{P@zT9GVo!n}qCzHg)
z*8cLl*Vv=$I@^(}O;T@L`)@=~RV<XPg~On^bzgcCYiWH_0^uQx(UF<(DWG3n6)w2m
z{#thqVzJLu74}$AQoD1~1Y~x1j<p9(*kc5j0mTO4;u3FZ*>Q3cA(4EWxy;kbVrhS`
z<k&v2zVZb8@%r<xhg8sJ6FnLH2}^UdQJ;lj45pPq!~%jvmMZc3J>ZnNgrz1HW7F<k
zY(#p5>f~!ZUj2KJIR5qMRirLe=>A3&eZGL!9_`jKoM)*gKb&3xs9RTu`Y9xCw{8cZ
zd*DsCE(mCY1T_JARD$*ZI-z6K8bDt`qD!|Ikg6s9MKmqxk4m*4b+_&aYLHajx~Bob
zAK;#4kV*y47XVdt>-IAy6@W&Gr(5@u#39k%k!UUHzeL-uJBFIgt(No{psKbG)Gg^J
zP`7n4L^%BvnsE9))LptKQN!{dSp%VPdXGeW3w2BSdDOme%HwE|YcoxU{%HU_Z7dZ4
zf6ic*0Dvzu*%X!-Z7dI3*-R+$v;O&;FmQerK5@?haPcS1ah;UJ<?HTV<LmU&zT#r)
zHnuGQ3w4{@3Z&N3woqzQ+w##0H(+@)9f~$bgL95RNt2*g5I43m4l%=DgTeMoL;>q4
zf5K>whI&yt_{t#?A4A<kIbrt@8kdgQYA6t5;FGmFWvvGk#4X^XDa;3v+a-pE{6AN;
zKO|{4L-Q$=qw%MNZHm}5S&v^qO!WU!5iADQ=Yz~SCQDP87qO4jLZK01%fX9~p~(G+
zU&JsZG}*rw3XZ-C_((e-VLa0U1--43{CTy9PL^VoBB^+IEXV?n!3?_-LLJgkI0w`<
z!Fx?XD8U<2ynGhKzZ*Og|IctpXi^j<16Zpd{+|FYmn<j&lp@W1=NIlGK~9*Z=&&h+
zz(@#1+6@TBJ4z@BI9Vu8Us{XRPWT+lsNB!wFnpvSMi0X&U`K{QbTHFW!eXWHQFnq~
zyqjeu-)E$5L)bll<U}Zuno{<d3&L(QzjKIeNfkp0F*Fbu=M%1A)%N+o8}=sRZ&S#4
zht(7p^OXrH{Srt&s7c7_XX4+)7;SbZ7HD)V<>l0*Ib2N8^XFBeg~F|h_cM>6%T2;0
z1u+?>{R<HczeGsDygX!Q5sj|+Bf_77kwf8@WzQ;z3<OoIn=RE0rkFc&Q)gjnS1M{-
zCADc#`7+A0!o!M=J7uN26oiv$$VubRn>;cU6SSjW4D7|<sHk2hskT7vODOw=Ohr?%
zta_S)SO|rt<2mD)Vzh=|ukZ+WUlm1kc!kH`&bHcr!DfS3kH1ARa8W-Tk{4j$--NSx
zmjjYC@T!7H8qg;VXqkZ_YyzVUIEM}FQ4H+9*1)ASxMYtix#KS_3#6@%6zvuIu@3}N
z0rm(N8OX2)g>wuvtf~sTACsFy0WEv$eT5zRB0JyOk0%m(E3&g)hT0=LA7@a&!q|GM
zC`#CU5bZ&<dxign!fTTMf`UNuD{j95>`3wp#}%gJy87=5LRlJ~QH1w^DCe29u1X8<
zW}+l;A742jW%>Xz9n)rDIMXj<Ka!X!ak&RV>i8cwy9X4pe(LTY$$NGDxIKy<VWt3^
z786+N(4s!NJS}#~z<*?N#e(BahusPOq;@nLOSfS*?KNyTS`2Gbc)*a0L(uiIk<n;Z
ztRbo1oRnip2hFDA%MGqrXc9zNI?9-FBi^V-*tIfIJHoD)G5Qg96=UZs1u0+x0w(Y~
z1#Lqvbqlnp-*h;Cmys3;)Z1q|T=<X?nr<4QOc<d|7}02D8sjg*KfW=8g!El*Q5Dys
zCJ(vA7WX$SXgFmWOo!axU?a^HI<Ps&DKl4|biY>+H!)@pRyTiC8U2Sr#qN#ibOt3B
z&lYwm{K*xHZ8x$;tWX2~3yN&1B+GVWX@!!K!E^|V-braF&(DSLrvaXZWB(9Hi?|PZ
z0`k!TdXB2iDslul)FiBxW}QVAVgvN|g>r=3WFfXJOFO!>&#X~isdiV`{oKf_cYsQJ
z0`M;Fqd~;+suahoh~w23_W|bK-qG%<aCBns<p{^531YeQ<&Y?ruTvI-G<E{vcbdu8
zvAcE}&9@O!KSd0g#gLJ09{aElu+765_L{NAAr*$=y$ZL0$korq9>hmAw8+e#LC}oh
zA_x!5um5ZL0AWAsMG6^&4?xGP4XAywkBFwoa5RUlne6n2Y%m4XtInJcWcsKV^TeoT
z4&>khq45n~#w6x<4(RJA9W8(aQ}rN(uqnp3fo+({o8WgQNDybZ1Xv=L+(^*{!3V~`
zoK>_aA?elrI7uzcRY$xRgltAuuiDJIgu9Ve#V0c0igwj3cf$Uf>`ERR5leF#4kpa>
zdf7CKsp+t~lwK~QSF4aM*UdUx71r}zYSUrkd>X52el7GDwt(nqH!f=SUfL1YMwY8{
zs<I}A20P>9t6b{P1U{zbJ0PKghR~;IO^3(Lign^X_&NPj=*D4!o{bpq5FTa_(^DKa
z+St8@8g2I8!OI>74_;pFlL?^3OfTSSG+1FXXwLXLalzBjSm%mjVcTVPo9N_s*tA5#
zxlRSY6oWP`Xgfi}z;seIE>?NkaITi-8N#^+nr95>8X-?raQ0@Jt99jRL)Xz<gDcMv
z8c%bLt~_H%b3oNOKibI(JFQ$u6w4_gh77{}2o|O)3s$N9N*VnM7bN5TX}IN@UH{c!
zp&cy~v9Pw}st|}}F3@%e<utY~dF(-O!``6?PBZRAmmbl_q1h;R+ie)Uj6wZG9iF(F
z77Z*5yA9(z!d~M;;q^$7mI<L=+9l;Z-^a0=9PZX0Xbaj>>A7YxsJqf>2x|CGK5Q04
zn!wa@gt0JUyr0(C3c`iByXD(F&Cv&D?9euU+HmXc_Zp`Z557;&1a9Yh2z_(#oq!4)
zYlRsY6~vA9--SSWXlJC*X0<h$4)qM4^WNOcf2`*_#tHMl<nz&!xD%$)OVI9_C0yyW
z25(|l{aN1>2Qtd&o5Ba!wQ;9iE2#@;kS?#54-V3=;Om%xX4R~2n&2yJ1*G}Y;5z;j
zgXt9&6EF4zR1j_*5nfLFnTh82f-~>nMNNn$OMzX?alP7bqa+cSEs5MWB0~EaPY!xi
z;Ci)wzsyAfs>lj8bi2Vg3wK;NcIGqM#qLV{2~N5#MchLk>AbokpcOr{!O<MuhU;ov
zgIURjoSwP#7J8q|idOb@qJ*VE*l~c(<Hj8H?q<3wpZ@oe12}95zrtZ>cQj;K#&=j;
zgZ2NDyq&FKx;A%NXnv}>jY-19rB()D(u@<HfC=fX^9a5)khrmmPiTV^O^5T;njTEi
zD(qQ(>~lcJaDJA?Z-|r{j_hGJZ;@?+y;Q9^D?o)v`|&;EgW>#HbP$F}Xs*;#%=2lq
z={X<(rTG~N+d~}`i9K@v$M91nfzA^8uIUiIk9^K2R6!k|z-$*@V6HMU93LZn(}-V(
z)Ugbg(h|{(FA3|`Fi$0eyZVe+(4h+{{1y9b@FAN~jkAeq_uCSb0qAu=fhnRVm8M8v
ze)>zrVtJ{*YNnx7pKmL6iXl&A89qob25Go3Mv}*&n|EF9!^*s6Tsv+tO_z8mi!=`)
zEbJ!WH3uxds;~jvRpB}{))U=Pb}+<Tj4am*r@ltGyq4zPU<xp$k>wWQF`#gJK`w-J
z?NJt)&=CCteI1*)LHILEyMEY}Eo8ZeASgKvF0mNbo-SO<vC}k_uakxy&fqz=+h^Aa
zkL9!{dhdU;eDJC1?JxFDGdx}JA0O^rNY>l>UwdQPv4{7~T=ui=s}DW@X2GPx+aG`V
z-S#i;e0;{gev$j}4gb0H?9ck1jK6ee>%}FDoiC>Rw(#?;t$%prt%;9ilRdXBi4{%C
zdgS$Ae5hOc`!9c*|JB5-wan%om7Yvi>xosPCu6mG!g7l}J!AA_uR%}Fp{yUPCl^ur
z$LUG?cs&_FX)@|bL5iN3C&)5GID2RjbTdjC%5)SC<=amQsU$%XB6T2)z$<{=L~6+v
zwDn{gXhj~Yr?#eg(>Ck!`?9Upyb@3L)QZ_wYktGV8n&HTr&cVQT0sbI=j7h}>V^#)
zYbpz?8-jP$-($UHk#+j?Ew$AZ)|oS`88gVH?6q5K>o>2x_r9(3*Ou07nZI&lO)$T5
zOZBEo&*pp9dTKTVt7_}-U0N5CO|C7fyK75jeSLLBrHq)fX_P;Ag@WJV(DczxtXW>s
zcsFw+qcH=|45>faR!@EHCiKE;&CM%u|70a|oebmP2qWdzRfDC`S`;dsyAr_Msg3CC
zQjd3eKHk_5GS;aLbD8YahH<2*E*Yj3m36iC!EB~<79JKcG}%f0lC9hESo1c(if0%P
zUxLB<>WvN1F7YtYJ8El3^GJ9rDInXKZL&EDF}P?He8(tw<tW&rz)s?1Zj-x6DRGk(
zWEm+0TqfaIl`(I=opU%d7i8t;EzNf?QwRW3P*~19gU?;8{P6q`fgd99Lj-<^z+Xq;
zj-@LL+5dj*Ryh1$Ap4K=qe;nk+r9TODR#m+&v=sm1LolFw;p_R>SY8w$r^CQp0lx`
zf$_6-m#x7v-L`%E_KJ=7Fv6%ui!;`P^IPWcnZI{_jeV>AL3_l0)E=|HYrkOcvk%&D
z;%?!JxDDK9?jN}j_fzfxu9*vSzu+F>e$73>wQ)~#&vOU4qg<5h;(EAq+yySq4RAx;
z7>CI**)hd2)iKMF;mC9>ax8WH*s;>F+Oghok7KKYckFTe%JG<EpJTt{caAq4Z#&+1
zTy%_aPH<*9H#lpY`<=&~r=1@-|K#j<iq5f_rp)}zJ2SUr{wDMJ%-1vjlzBPx>&)2;
zmMyq*LHmM}3$8BkW*x}VWKYbl$ga<RJ9~z!+*Rdja)n*LaXs&fx+)g!TXb~M`9+f#
z+ZX38E?&HP@dJx9msBsgu!NZLVFK~^`Mj^^PqWXn=h-*ggNVW*`}_8b_Jm!uPvCCn
iO1X!)XSvU~8y!m=X-=!t=A7=F?aYw3$5GL|7W_YA)D$-W

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.inf
new file mode 100644
index 0000000..8293690
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PlatformCpuPolicy.inf
@@ -0,0 +1,216 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  1999 - 2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PlatformCpuPolicy.inf

+#

+#  Abstract:

+#

+#    Platform CPU driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PlatformCpuPolicy

+  FILE_GUID                  = cb933912-df8f-4305-b1f9-7b44fa11395c

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PlatformCpuPolicyEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PlatformCpuPolicy.efi

+  DXE_DEPEX|PlatformCpuPolicy.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiPlatformCpuProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiStatusCodeRuntimeProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf

+

+[Depex.IA32]

+#  (gEfiFirmwareVolumeBlockProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiResetArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..e076777323483e39152c49173d8ba560c7091749
GIT binary patch
literal 36
scmZR2lo2M^*m6a1&qs!a<2D_QOy52%7WPv6VE5_4y`w@V`X<aA06L)%NdN!<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..40ccc6bf5a77af4a365c924dfe20d741503b8491
GIT binary patch
literal 9664
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
T?~ixHyW^jTZ;C$`x6S<*9S2K|

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf
new file mode 100644
index 0000000..9387335
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PnpDxe.inf
@@ -0,0 +1,200 @@
+#/** @file

+#

+#    Component description file a sinngle segment PCI Host Bridge driver.

+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#

+# Copyright (c)  1999 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PnpDxe

+  FILE_GUID                  = CE7CD764-a1d9-44e5-9857-14fefaae96dd

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePnpSetting

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PnpDxe.efi

+  DXE_DEPEX|PnpDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xA90

+

+

+[Protocols.IA32]

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gEfiNormalSetupGuid

+

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.IA32]

+#  (gEfiVariableArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.depex
new file mode 100644
index 0000000..df1f82f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
��������G����P���ƣ�^�H���3����HN
2��G�,?��f�����c�,E�9���&^��J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.efi
new file mode 100644
index 0000000000000000000000000000000000000000..433b3355e8cf20c6fae4566bb5397bbe07761497
GIT binary patch
literal 18432
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
Ke*Qn?z<&c2pw2}A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.inf
new file mode 100644
index 0000000..68cb2c9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/PowerManagement2.inf
@@ -0,0 +1,264 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#Module Name:

+#

+#  PowerManagement.inf

+#

+#Abstract:

+#

+#  Component description file for Power Management module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PowerManagement2

+  FILE_GUID                  = 41E89AB0-BD3D-44b6-A431-E4836EFBF2CB

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePowerManagement

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PowerManagement2.efi

+  SMM_DEPEX|PowerManagement2.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3A00

+

+

+[Protocols.IA32]

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gPpmPlatformPolicyProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gPowerManagementAcpiTableStorageGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/IstApplet/Smm/IstApplet.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/ValleyView/Smm/MchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/SouthCluster/Smm/IchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/Silvermont/Smm/SilvermontPpmLib.inf

+

+[Depex.IA32]

+#  (gEfiAcpiTableProtocolGuid        AND gEfiAcpiSdtProtocolGuid          AND gEfiSmmBase2ProtocolGuid         AND gEfiSmmSwDispatch2ProtocolGuid   AND gEfiGlobalNvsAreaProtocolGuid    AND gPpmPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.bin b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.bin
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.com b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/ResetVec.com
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b6a61862966501978a99661518e38ad954307d92
GIT binary patch
literal 3264
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.inf
new file mode 100644
index 0000000..c379a00
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SataController.inf
@@ -0,0 +1,195 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   SataController.inf

+#

+# Abstract:

+#

+#   Component description file for PCH SATA controller Driver module.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SataController

+  FILE_GUID                  = BB65942B-521F-4ec3-BAF9-A92540CF60D2

+  MODULE_TYPE                = UEFI_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializeSataControllerDriver

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|SataController.efi

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+  gEfiIdeControllerInitProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gSataControllerDriverGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+

+[Depex.IA32]

+#  (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.depex
new file mode 100644
index 0000000..3ec1c91
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.depex
@@ -0,0 +1 @@
+�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8e9fc865872c0c751c0d6c26aaf854a20d6ef3b9
GIT binary patch
literal 1856
zcmbVMZA@EL7(TbXv_M;Kv!G!KN;Q~hVsN3Ri7_S>MM*5Aq*8{pg*k?V=`iHhITGR}
zmnPanlf~?(CSXj=5`XL$+D>P0E&@s%PU6;RqBt@<q~q&{tQJOnP78_*{J}}ieb4iL
zo#%b;$=mn}IrO@8=*Ytddg}@C2*&>;m?MUVEJ7J^i-gQ=TO0;L`0g+j6b=Z!_b#`&
z;K%iry~b^9KR~~q+JSr(FpS{d%KaP;sjHDsy(1&`VbsX$;<a+QdpQW{uIW4>pMdf+
zY+ieETSEM^+=NWk^qqR6_hf-9=j?!$%iYUONL>rP?WbXDw}M=LYRY*ls43QHZSEmG
zq?=#h&v_l{cx5Q4Cx{@Bcm*jV>`yRD5Q72G4!DqqMkAmD@J1erBH%H=DM0oKK9OYj
zfzc<A{je41A6jCW8vK@!V)DL?V`owywL)Gb0wMB|(Z_LC=Op<LHMyx~3~&GD^S361
z5o1GKAvVJ9#~VqYn!9m3hvovb-;I}ZnBf#mNE8=2Tm-!QJWh0)eSoubJuTgtM6^3>
zgX&$VXeN?7myWx+doM6hDNLO>N}sQ4%cbg;qtDn=6>6swp@5FQHM1F95J^fyRgk_`
zI#3*I+{|~5n)AJD&G)W+7tIc&1Kgq6%;CQ@>i}u6BJxYP^b6FZERKUBeouLPoO8df
z-7IGh!be*c2N#G0=j&IJ+;Wwj1O;urJl0f9XIU1&`6Inr$2>U2niTdCq%_uOrzv_(
z{asSOvuigiEZ1U9BkVDlX#Hll2QSVG#-ciIjWrFi9_TOf7Rly3ne<avfb8i??#w`M
z$GOn6r+J!G<X3r4OCMF{&C;0eZDl10X=@9$2k5P!?u))!ZB;e|xm4LO$VJMADQu3;
zvZL^UcR*!CwyDf07pqK=jrib6@IK?mN3+iLum7?V(nW9Fj;56PH6>>XOYsIpA}omn
zbX8s0lE!A#MM19QpCjs`7``v&?^v?I?8ae5nJ!Bkm1z@lMD^wN&}984OeCNVY!W%^
zOmdF?I6*_5>+Ccv8nYL%)m%=^7|#kX;J@p>7Jn<v(zOqd)2ZxNnLMGNmeAFS!3Ca7
zW8xzumm`)5eyg&gej|2KIILRk(211<51{&rwpg;Rp~Q`}kmb)Q7|>DUcGk;<tg}lr
zb5PcpPejTtI!h<-$%Ry$<IneSJUCm62u`56H(Mx3^?;5#{%4)<^;Dg{lxp}`NZeZc
ze!zdWD>eOuOY~f5`}En`Get9)t;$;%Bg5D);pra7!x_d)+i&rfd9lBQFW)ad_p--<
z7(Ns8^RfEPGdzxuB{$^GEF1ymv$&?OFdTU-&r`tF{r&x&ue}a@(Bkv_(b{Kf&pC%&
P@41Fu=Uo?EJHCGdpQ7mr

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf
new file mode 100644
index 0000000..665948b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SeCUma.inf
@@ -0,0 +1,101 @@
+#/*++

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    SeCUma.inf

+#

+#  Abstract:

+#

+#    Component description file for SeCUma module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SeCUma

+  FILE_GUID                  = E4CEDF93-672A-4782-A7FD-5FC6D239377D

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SeCUmaEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|SeCUma.efi

+  PEI_DEPEX|SeCUma.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gSeCUmaPpiGuid

+

+  gPeiSeCPlatformPolicyPpiGuid

+

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.efi
new file mode 100644
index 0000000000000000000000000000000000000000..22c7e70676f927d4ce2ec6e41c61b9f6daeb14b1
GIT binary patch
literal 8000
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.inf
new file mode 100644
index 0000000..45dd9b9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SecCore.inf
@@ -0,0 +1,152 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  SecCore module that implements the SEC phase.

+#  NOTE: This module was replaced by UefiCpuPkg/SecCore/SecCore.inf

+#

+#  This is the first module taking control of the platform upon power-on/reset.

+#  It implements the first phase of the security phase. The entry point function is

+#  _ModuleEntryPoint in PlatformSecLib. The entry point function will switch to

+#  protected mode, setup flat memory model, enable temporary memory and

+#  call into SecStartup().

+#

+# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>

+#

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SecCore

+  FILE_GUID                  = 1BA0062E-C779-4582-8566-336AE8F78F09

+  MODULE_TYPE                = SEC

+  VERSION_STRING             = 1.0

+  MODULE_UNI_FILE            = SecCore.uni

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SecCore.efi

+  BIN|ResetVec.bin

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1CE8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## PRODUCES

+  gEfiSecPlatformInformationPpiGuid

+

+  ## PRODUCES

+  gEfiTemporaryRamDonePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  Vlv2TbltDevicePkg/Library/PlatformCmosLib/PlatformCmosLib.inf

+#  Vlv2TbltDevicePkg/Library/PlatformHookSerialLib/PlatformHookSerialInitLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  DeviceCommonPkg/Library/CmosAccessLib/CmosAccessLib.inf

+#  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  Vlv2TbltDevicePkg/Library/PlatformSecLib/PlatformSecLib.inf

+#  MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf

+#  MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf

+#  MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf

+#  MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+

+[Depex.IA32]

+

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.depex
new file mode 100644
index 0000000000000000000000000000000000000000..b1a5ceab3b2eb73466f120b95a1915810dd0401f
GIT binary patch
literal 36
scmZSDU00wl<#k1HmIcEEb^C+9Oy52%7WPv6VE5_4y`w@V`X<aA00;~YUjP6A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7577e8f0bfe5b91ec182baae4f77a4981d6a7883
GIT binary patch
literal 1984
zcmd5-Z%kWN6u)g>M;QfLt+NSgy5uFxQY53-I%-{{wW2fKB4f1R!oSI|>V~ZC!woTM
ze4x9zG!k7hW6%uIWV*SaiLPWWzVb-BkbMA0bV{-igIZ)76tkfLp69k*(k<)@pS;Pv
z_uO;N@7(k6-M8ymwC*vyZshub&pd&USEaedzzkAvE>IPr8DLAQjOaBrLKc{4L*{IO
zjm_JKl$X^5LBZ|9?AdS!{#xv2u=f-QD&gMy)>2p}uPl7vNEonJAVwA!i!~izjy(%P
zfwI<?a0~G2SRTNK=IoxMhAI)dSQb2R@a5++zA~SiL4obLqY@#v&rid=fp+tHx|cUa
zJ)0EAYKU_zh4f@n{7Dm^Q!jozpGOkW?t7ILGP(HCGWGEKrbhWvX86k`0PCoi*OPJ3
z28@64G$?*r*CYd12kP8V06Zmy&9G9}qeHFfy<+Gf?5Tet*g57^ExjhrE>&08)cX7{
z1_BW#{6JBZdOV%fveQHMP)j|zzlRCN07WNKlWbe)y<Xg-fjmTgx)GL>)HJYrB*9pG
z&ZpLVmpYx*60S1MAK)%AVWyW!m^V2d=nQ=GE?}a&4d+k7e&G}>v0+%OtJbU5KdcGj
zf&93Z+$>LoE2gex;wk2+if{$g#Su>dM_oF?ZKW<f@oa?yXca|wTBz%9;whR1n8~>*
zcmYojvbbvk$6yUu*uo+q_pn=&TE<<5nkTh=K)t{*svoFN($sOFR)A_tYMHYLDgEr@
z6vqs`($Tya;3D(+Sen<yihyitY}iMCZjhm(oX?LHdc)CW?yQYIT|rgi3|Ej8D#?y3
z&|^vM6s!tZN@^#7S}4^R?;v?lV-z?44grh#D&pd*#JI&7GzZT%CEP|8mKrmc;p>i|
zxwEteuJTg{P11T!oY^2=L_(qX>nfFrL(IP`2R_}j5AZ0B_ky#4KWy$SiB?xcjvA3r
zA#UWVsGB2hP8_v351WIjq?S1j9s?-jJ_nW0x^LAO6E1_QQI0{UN3uTop+5~YXpaA)
zb!-pi#k4G0253za*z~1zV5%NVWIOb<*v)fD(9pQ-91s7agn4dHb?V1uMG?pJa<)GQ
zo1p+T;HjV3JAkA|Dtnc139a+c%OeJ0q#D2?bf2k895p#_1b@rcBwdo15+>>~8-^GX
z>NPjWh+aw9n0g;tJ$;f#6sX9&zD-=>!qCEQwPvFDoVv{!7p`GRrlT@dIn_c5)WYfJ
zgu9{poNk=}&8T;}^@3(tCEFyKWr&T*KR-KkY09wkeEaL4uSAp`-oG5LeE-gr@x4b-
z|CYz%yTaCvQGKM`^=8#uU&aPz&ty<*uZ6(wfSF=Z!u&stCm-MIW$z_R{>`_P{Uct5
zZzFx?54ETL1;4j3o$Nch?dCa{VX*2RWAgo>5YuOIvY5-#a=xppt9AeLOpr6!|KJT<
zpY6D9z&2t_+P<|d*mzuu%kjgw55J91-~s$0K84TVFYs6RYb@ae9><e-kG;X(Za-l^
MX+LYvF?S33A3kizCIA2c

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.inf
new file mode 100644
index 0000000..7594dfb
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmAccess.inf
@@ -0,0 +1,198 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for the SmmAccess module

+#    {1323C7F8-DAD5-4126-A54B-7A05FBF4151}

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmAccess

+  FILE_GUID                  = 326E9CC6-9839-4885-B2ED-275903B668E1

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|SmmAccess.efi

+  DXE_DEPEX|SmmAccess.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.IA32]

+#  (gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..68e0be94306ae6fed83efe8eb978dc7b3dc24a67
GIT binary patch
literal 3072
zcmeHIU1%It6u!IN)unOW#gMXKk%?^DfFa&HlhCaw4M~GmQb|ZUH3rwVNw<@wMrkIJ
zh9aYrMR%{EkrpZFgRu%id}u1-QXy<JF}pDjr7xv@GEl{>G2KA56tNx8xwHA%z8LC@
zv>v!;&i_5%oilTHze4Vr()XPC?-N^_32AX{C@C~g+?8dnM+xzO85dHpxFl47P<IQd
zlr?}_%z32Lv!Y?@x``5EKya%>$mVq?{c~WgesEBSun0oOhSp*&rb~oqwLSaw{pfZ9
z1B1ZqgXbD*AS73N<lx~qx}9DL^eo~wt_cDW;u=dW|7-Wl3Gj}vkGF(9YCZ&zK=S3k
zM`0;(^Qbo;M{y=<@y3X%os?j%s)5Bx(yzmF5{HGq_^h_29E?FVS#cPwN&lO`PY)tH
z1<d|%nh-LEM(q=1Az*Q$RXIuaD7wvQ8nr}>U61?NtvibvrhwMjX^mk?Z5UV_EH#e$
zeyRGwvT9C;tUdg<wl-dY<3HvBrt)`*5g_RXBQVcNm0?4NpMqUKI?{YA>pccyZ(V<P
ztJqn&DX^;AIDBRCpoUnJegk5%UhJXrF_duoZXw~$10W^qM?rE>i9)JqS@VHa!*qM}
z3_-xvd}+Zu`7nHXdACa(GynNjt6k;w*i-7tUUP=V_@zaD%e+v@vxQ0gHWPRBO}qjF
zCS2weedib3zHNhZ!7b08I}3GF*7f1p<rs)qbfQ5jn<=~&RWe<cV@VVE8^j9B?z*`2
za)JA?vUwi%y|`%R+yy0L8OOpwqCb=d_=d%IhJEdc%z)RJvljv|Ey2XB9x}JP2Fg>R
z{At^^6PZDOYOd>A9mpc53oH0mDqMRT99Rab6pO~P<m}h5lhcZ7PI+RBfp0UDHoTuN
zT?0EDdyLPlcI#GVWBmN8?pYNjGiR@$s#Y>9a^$X@XG$v8iL|x&s|+|!Ggn!NTE)@B
zX%?dg!wA0nh2{~6lzndaiSfC{6MIu+@P_*Mo~7}v>4_~Z#tZuKZRbAw@zh&?ma|-T
z*L%MnZ~AMh?W6U8_e0P=Sf5L<?z(%xyl#5FsiOt&I=u75{TF_{Pb5p?ZX(NfT?6Pf
z;HW*~Tz>dBilBa=zaJi=kA0{Me|TtUsOP{TbUere=V}1{rzoWn+Du=f9ki21X)o=g
z{d9<q&=d4yI!3>u6ZAWpp+C?I^eW9$!pc|$+svM1PqTWqo$X*vY!}<j+F6wKuwK^3
tPO@*<6?T>V!Q65{9+AJ0&&U~hPQEPvB>yhEm4LEUsZk!}qyH~p{~Ltch>QRL

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.inf
new file mode 100644
index 0000000..fd21028
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/SmmControl.inf
@@ -0,0 +1,122 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2011 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmControl

+  FILE_GUID                  = DD787473-07CE-4c63-82CE-930B33F39C09

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|SmmControl.efi

+  DXE_DEPEX|SmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x800

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.IA32]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..4bb6074e530b68b05103418ff7a5cc63d3cbbbef
GIT binary patch
literal 126
zcmV-^0D=Dkx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
gGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj%K0|NsC2pp3&(f|Me

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8b0ce5fd00d5326aa8bb6357937791a851a66b62
GIT binary patch
literal 16640
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
H+wK1cQZt-6

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.inf
new file mode 100644
index 0000000..448e0f9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitDxe.inf
@@ -0,0 +1,253 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitDxe

+  FILE_GUID                  = 93C81A74-B648-4f7f-925E-E4A0CDCC776D

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitDxe.efi

+  DXE_DEPEX|VlvInitDxe.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x30D0

+

+

+[Protocols.IA32]

+  gDxeVlvPlatformPolicyGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+

+  gIgdOpRegionProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  gBmpImageGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.IA32]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.depex
new file mode 100644
index 0000000..00c2f8d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.depex
@@ -0,0 +1 @@
+²�}�"rC�,�2Ӧ�;���\�J���B�.
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7152888719c4c31ef172a954f6e8d03875e95ac7
GIT binary patch
literal 3104
zcmbVOeQXow8Gp|{f7G#ab}_0ug~lo8m7$EdHmwNB)|kZEA5Fj^#F<A)XaNspS=)s>
z#1Mo_F9Dxl9si(KnzU7XRQ>p`LnSz^3USQh&`JohwY1_7Ot(V70WwCZ5njCKy>rN!
zRY>Jz-@VVr?|FaE^FHr;*ZLdu$k&IDjC^!pD2PxCr7sDPLAt6ksvKp^2)QZM<krC$
z{-~@d!^5o(OYUxK(GRpm*AhDs?Ej~Ehyvodz$`$piif!USkp3Y%MK1eUyvLjFC|x!
zpXPESv~}6$m${cgH%;^;AySVA5^F$cVp-po-q$v%ToI`OxRIy!YCvceUdNiReh%6W
zJUuY|J`^5Pa!0N`+_~0&Cmh~NVz(7SZh7d}`9k3nH;5rQm_PX!@C@N#F5JE~M0C>b
ze8DcBsva8MVW{1m=blmlpeF7`&zFcNadSz}eFZs=%<Q6#lI<)E5B&pf9%Mp@t5uB}
zy{hmOa)rVX;+HlM2!Kr^cOj<_by0lo22J1S?plw(-H?J*+QOZ3YaZWf>p?vT8@GC4
z<}jooo^qbd0VDxogeX3LQ(i+SpoAHSa1-PN1QuX$E-~|r-f?rP5p4L()Wz9CA#EU(
zN&Sk`*V0CX^#`D$`EuNm7j`~N@#d*EP=GWQfb|<e0fZzQffixj1u9HcdX`Qgq)p1Z
zzyy37RKBiAq}xB*MUrZZuky8bg#CB$na+BOuTg7KjJc>tMOBIuls4ib+LYZ<uj4t@
z`tb}9mll!=o&=(ll0y-g$!meNv`N*g-iqT;nydaq$)<_5leLh4mm>wxaSH?DT?@xx
z&`W-)17S3j=Ks~*wPAfE<)0iW6bgH!g_=5)>Fw&&iqZr2i?*7Yno2E$GQFb&Q-!n`
z8#KS5b+1CD?i)+o7bms88z1lun6;rxeFNtEaY@Q%WSZ-N#(9g<l6svsip@(qN)}hI
zyB|n#r%T=Kh%Rxbbq><Z;<S}HZU`YN<39}>vq#rmmX=y?ORYJ4D|&?J<&N9YL$H<^
zsWlIkMkrdBB-@U8Gd1-*bYW!h0yDS-dRgdyhT<&Z?mS|KTp$<YdQ1ePgo>|Te2|13
zy`(Rjh}qOxi*A8v?dmGt>M7(ABE?5pOK}Wy6yeQ3h3>Q-d<8;y?m}Z^o%K3J;vZAw
zvUFBwH6AAR+SWY(gwW3-&QYA8EUiY#_7)W*Ge+9z`R{#pLjMvd{oF>>91-(M-eeQV
zyavx6=qc@z8)?(Ln+7WfbNGCy2l-D=?Ez#YlKt6ST?~-v9I1n+fU}i4OdkHxsMK5)
zYhH|lxAnoC&|i)C7k&ZYhCWjQ!5N<YIgz|Xf-@~!NhCLsj37CPWKSRiLfZ@pSabx@
zD(|0Oy{t8i|Bc7REeItu2K`tk-o@HwI-Sf|;{u!vnR+AFCGSP$MSG7u(k?sG$#1N<
z!h&f_nzq0MNF6~D3Uw70-XK+2vXysI6n_T{VrB;9@6QVVG&WE{B;2EUy_lrQ?=HJN
zu^#qqN}OiJ%`6RP7)2pCdpf0c>=NGv-{{Ar#d_#i6YD(TLgkrmFtAbFJQb}Q<7%XG
z|73hM#SAA6gyDFzu8_<)qmq4U7+NO&m4ar5KM%yZbjeHRfpPKz7H?Agr^l(-OYGyZ
zU94l}Mdl5G^ylz-|Mebs1SW9FM@cxTg>~cE<P~%BvQy&NiYPWl>zY`W8GMhV%&{&!
z21QdQ(f>_qV!g=>6BhuP860K)G&(!MntT_4`hs{4NI<x1nP#A}Q4G6gj9V*1R``oh
z8yx$8fMXxdvkE0xB!XMmB@_jBFDL;uF@oSNs6YiMcm_5dzrcSwu%d;va~AMf5rdIr
zo=vU1xcvZ7s{pJU-ncHvSwJW#rp+V;@hU~KVurl1RB^~Y4po><D|NWX?9BlS;U3ku
zjT!zA{t^K0<TnO+zq0z5oIP&;b^LYLNoCh#eY7skEtBh)rXg_}dM$Z{iQ;{P9dmq?
z6w1q6()(N>L$#2C3J#<Q8}SCkpBT7GK8M6>Zn2kjQ~Y6ae2b@8Xay@YK>TY6Yj*<>
zsQ4#4fr}kqlTRpAt~jIE1a_Bt{=k5XBrhBE-w~Zc<uXv&tD)lJm(M0+Zxb@mEdEKQ
zU1Iy61Q{A;eD6<SP#}HNPwH|u_7+jZKZ8Qrg9B-Wb1&<p_<ixz;3TJukEv{}DIhp^
zefMf&>9OhMfn(tn>prWz^pQil_L%L2chy1t_3;BA?RPYOxo`TN?6DUQefz>MpFe8*
zVC?AN?n6)aHU70ad(`*$caK183U=6Xb5}dsf;hyZ*FiBqUJKey=ryz*o_*+#bIuPu
zZ6Jr>|7VCt{=aHm*FwJa$Ty$z{m1_PRRsbz;y3rLM?SDxh}@@s{1L2TS7dhQ&YhcI
c`K<!{;TsefHTc%}Hu+?q$$#A6R5$PUKTUP3#Q*>R

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.inf
new file mode 100644
index 0000000..a032c7f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/IA32RELEASE/IA32/VlvInitPeim.inf
@@ -0,0 +1,101 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the VLV Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitPeim

+  FILE_GUID                  = 24169E35-2454-4940-92BC-82321A2C7562

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitPeiEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitPeim.efi

+  PEI_DEPEX|VlvInitPeim.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gVlvPolicyPpiGuid

+

+  gVlvPeiInitPpiGuid

+

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  gVlvPolicyPpiGuid     AND gPchPeiInitPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h b/Silicon/Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h
new file mode 100644
index 0000000..b14d40e
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Include/Ppi/Cache.h
@@ -0,0 +1,72 @@
+//

+// This file contains an 'Intel Peripheral Driver' and is

+// licensed for Intel CPUs and chipsets under the terms of your

+// license agreement with Intel or your vendor.  This file may

+// be modified by the user, subject to additional terms of the

+// license agreement

+//

+/** @file

+

+

+  Cache PPI definition.

+

+Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>

+This software and associated documentation (if any) is furnished

+under a license and may only be used or copied in accordance

+with the terms of the license. Except as permitted by such

+license, no part of this software or documentation may be

+reproduced, stored in a retrieval system, or transmitted in any

+form or by any means without the express written consent of

+Intel Corporation.

+

+**/

+

+#ifndef _PEI_CACHE_PPI_H_

+#define _PEI_CACHE_PPI_H_

+

+#define PEI_CACHE_PPI_GUID \

+  { \

+    0xc153205a, 0xe898, 0x4c24, {0x86, 0x89, 0xa4, 0xb4, 0xbc, 0xc5, 0xc8, 0xa2 } \

+  }

+

+typedef struct _PEI_CACHE_PPI PEI_CACHE_PPI;

+

+//

+// EFI_MEMORY_CACHE_TYPE

+//

+typedef INT32 EFI_MEMORY_CACHE_TYPE;

+

+//

+// PEI_SET_CACHE_PPI

+//

+typedef

+EFI_STATUS

+(EFIAPI *PEI_SET_CACHE_PPI) (

+  IN  EFI_PEI_SERVICES       **PeiServices,

+  IN  PEI_CACHE_PPI          *This,

+  IN  EFI_PHYSICAL_ADDRESS   MemoryAddress,

+  IN  UINT64                 MemoryLength,

+  IN  EFI_MEMORY_CACHE_TYPE  MemoryCacheType

+  );

+

+//

+// PEI_RESET_CACHE_PPI

+//

+typedef

+EFI_STATUS

+(EFIAPI *PEI_RESET_CACHE_PPI) (

+  IN  EFI_PEI_SERVICES   **PeiServices,

+  IN  PEI_CACHE_PPI      *This

+  );

+

+//

+// PEI_CACHE_PPI

+//

+struct _PEI_CACHE_PPI {

+  PEI_SET_CACHE_PPI    SetCache;

+  PEI_RESET_CACHE_PPI  ResetCache;

+};

+

+extern EFI_GUID gPeiCachePpiGuid;

+

+#endif

diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130673321.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130673321.inc
new file mode 100644
index 0000000..aefa4e2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130673321.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 000000321h ; Patch ID
+dd 001142014h ; DATE
+dd 000030673h ; CPUID
+dd 0984d6012h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000321h
+dd 000000000h
+dd 000000000h
+dd 020140114h
+dd 000003211h
+dd 000000001h
+dd 000030673h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 059dea1b4h
+dd 02e5fc512h
+dd 0c554500dh
+dd 006c63b24h
+dd 0318a5bfeh
+dd 0edfe01ceh
+dd 0e8d70ae7h
+dd 047549329h
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 044137a8fh
+dd 029005d14h
+dd 0743a2d49h
+dd 0966fca78h
+dd 042db0d75h
+dd 04409b7b6h
+dd 03332cf27h
+dd 0b2ce94d8h
+dd 040bc2abch
+dd 0533bd172h
+dd 0926ae103h
+dd 0b7e5a4efh
+dd 076bd81e6h
+dd 03e02cc62h
+dd 0740fe383h
+dd 061523c4bh
+dd 0122208e6h
+dd 0fc82559ch
+dd 0ec30b2c8h
+dd 04bc10bfeh
+dd 0b3163138h
+dd 0ba1e7a18h
+dd 07803d0abh
+dd 06f0e1231h
+dd 09473b670h
+dd 051304d21h
+dd 0cb8a3f42h
+dd 0274d8dc3h
+dd 0bab640e9h
+dd 0bdc8eaafh
+dd 07b27b4f9h
+dd 0959a4209h
+dd 091f9f6b0h
+dd 0be221773h
+dd 00d0c89bbh
+dd 0d8f2be21h
+dd 0f425fd3ch
+dd 0fa9d1483h
+dd 05550ba30h
+dd 0073f6d29h
+dd 088cd7754h
+dd 027f3e5d1h
+dd 038f182d8h
+dd 020d74f0ah
+dd 0f325988ah
+dd 07c1a8c23h
+dd 0127ed099h
+dd 0227585a0h
+dd 00d4c1384h
+dd 06050179fh
+dd 01bc4c817h
+dd 0aa2c8a10h
+dd 049f125f4h
+dd 0f7eec20fh
+dd 09094ac21h
+dd 01f24e098h
+dd 01ebc2c8dh
+dd 077eaa301h
+dd 0e4f27bcdh
+dd 0b77a5198h
+dd 0eeca5c82h
+dd 0d3e5bfc6h
+dd 0cb8e6dbfh
+dd 0a17ad515h
+dd 0d48c9da2h
+dd 0e860957ch
+dd 08381a08eh
+dd 012f45e6dh
+dd 0c0c974f4h
+dd 06514ca9bh
+dd 0b02db319h
+dd 04f416593h
+dd 089dc0bf6h
+dd 02f5ae82ch
+dd 0b5222df9h
+dd 0e4764bd1h
+dd 005ff9df8h
+dd 0c0961525h
+dd 0b2158879h
+dd 09a76b6f4h
+dd 0a54d18e4h
+dd 0c33702eah
+dd 03153d9a7h
+dd 035d6ba7eh
+dd 0271124d2h
+dd 03a7fb73ah
+dd 0042be3fch
+dd 0ac855278h
+dd 088c44de4h
+dd 0c9f89abch
+dd 0586f9720h
+dd 0f4caecdah
+dd 06bd26b96h
+dd 007e80235h
+dd 0db27b333h
+dd 0627c15b6h
+dd 0c3da1297h
+dd 0b132e584h
+dd 02f60ccabh
+dd 076f825dch
+dd 036130a3eh
+dd 072523a7ah
+dd 077c9a891h
+dd 03c0db69dh
+dd 01ac55117h
+dd 0aa0bbc3eh
+dd 05cc10cd9h
+dd 0908089d1h
+dd 0b2a44ba7h
+dd 03ca2b50dh
+dd 065459262h
+dd 0cdb9043bh
+dd 0f214c194h
+dd 054dd52e4h
+dd 09357bf93h
+dd 0ea16fff0h
+dd 029a7f034h
+dd 0b797e60ah
+dd 0b5db4b85h
+dd 074668766h
+dd 00f1ebed7h
+dd 09d4800ech
+dd 058019cd9h
+dd 0bf81705fh
+dd 0ceae7c04h
+dd 070d2ee70h
+dd 00953fe99h
+dd 0d5f45a9dh
+dd 0418d40bah
+dd 09c943a99h
+dd 0ea03cae1h
+dd 0531bcc2ah
+dd 0682f1024h
+dd 07ea64718h
+dd 020bbb4d3h
+dd 001dabf1ch
+dd 098699ec6h
+dd 0eb482890h
+dd 080b1e5a1h
+dd 015dc554ch
+dd 08dbb23e3h
+dd 02d7d4577h
+dd 033e1bec3h
+dd 09a88e5ach
+dd 0e329a607h
+dd 0d039f854h
+dd 02a844500h
+dd 01e8261a0h
+dd 0036ae83ch
+dd 057f49669h
+dd 0738f514dh
+dd 02e63482ch
+dd 06f34043eh
+dd 0636f99e9h
+dd 0f26125beh
+dd 04d3a7dfdh
+dd 074b9e096h
+dd 04db03091h
+dd 0dd16a2b6h
+dd 07a60884ah
+dd 01ac2711dh
+dd 045ff88f5h
+dd 04d9cb40dh
+dd 06674c00eh
+dd 09b9194c5h
+dd 0dab4b661h
+dd 07700ac4ah
+dd 0e40f707bh
+dd 0dbfa7e4ch
+dd 064c142f1h
+dd 0548d3b6eh
+dd 004a5e462h
+dd 01e1efe78h
+dd 0e2bfc448h
+dd 018a53169h
+dd 01d3e4e61h
+dd 0216ec478h
+dd 071714481h
+dd 0aa67f149h
+dd 0b0aad35fh
+dd 03104bda8h
+dd 0637a1dd0h
+dd 099a03c9bh
+dd 001b9e213h
+dd 0f2a70918h
+dd 0795f0405h
+dd 0437be927h
+dd 0500889aah
+dd 07767e789h
+dd 092b2d130h
+dd 0845d8810h
+dd 0a75f5291h
+dd 0ec18bab4h
+dd 0eb0e6d38h
+dd 0f849805ch
+dd 0914a53d5h
+dd 07afb5a07h
+dd 0133a6302h
+dd 0827a89abh
+dd 02db38072h
+dd 08564095dh
+dd 0d944b3a9h
+dd 0ecd9cf6bh
+dd 06ed577dbh
+dd 063dba68ah
+dd 03e9bf12fh
+dd 03725aff7h
+dd 0906001aeh
+dd 0812cd9d6h
+dd 045affa4fh
+dd 0dd685182h
+dd 0efb44da8h
+dd 09f2288ddh
+dd 023aacd23h
+dd 056df5266h
+dd 0e0f5fe9bh
+dd 02b2aede2h
+dd 074a0ee04h
+dd 09dc03808h
+dd 0303ef215h
+dd 0cd286863h
+dd 02e5a5b48h
+dd 01d331d85h
+dd 0d748beech
+dd 00bb1235dh
+dd 05f693f2dh
+dd 08147c39dh
+dd 06b42c7a9h
+dd 049ded5b9h
+dd 0ef35df0dh
+dd 0a38ee3d7h
+dd 0213449fbh
+dd 02e8816c5h
+dd 0a43b196dh
+dd 0ac3eb42bh
+dd 078581b9eh
+dd 0efa6b45ah
+dd 096dd675bh
+dd 05a480576h
+dd 09bb555cbh
+dd 07e4de6c0h
+dd 0104699d8h
+dd 09f6c36f6h
+dd 0ae98cbe8h
+dd 01290b5e8h
+dd 0d2620e30h
+dd 0285b174ch
+dd 0411030b5h
+dd 0ad9310b4h
+dd 0e9c43a4ch
+dd 0b68db761h
+dd 04283b03fh
+dd 08d4ce3b3h
+dd 01f7b123bh
+dd 0930f7187h
+dd 08a7274aeh
+dd 0f365c277h
+dd 0cd9f1bb3h
+dd 05ddd6e16h
+dd 0d7938e92h
+dd 0f776d413h
+dd 0eafe7dfeh
+dd 0d47e7394h
+dd 04d381df4h
+dd 062cef825h
+dd 08be02ad1h
+dd 05bafcda3h
+dd 00108b85dh
+dd 0e032ef17h
+dd 0201eeba4h
+dd 05f9f672bh
+dd 078bd1a70h
+dd 0e26f30ech
+dd 00211573ah
+dd 0debc689ah
+dd 0ba8dbd4ah
+dd 089a092afh
+dd 0092833cfh
+dd 07f12d5f1h
+dd 04cf54ba7h
+dd 0bc9f3554h
+dd 08e7c249bh
+dd 0fa771dc4h
+dd 026d4c4d7h
+dd 004f04f68h
+dd 0d065ed16h
+dd 025435a45h
+dd 0bd028613h
+dd 05df1bf12h
+dd 0c31387b5h
+dd 0f396bde6h
+dd 013dbddf7h
+dd 0ca132f70h
+dd 07552a2bdh
+dd 06a209cbfh
+dd 092a17170h
+dd 04470d8e4h
+dd 074ccbbc3h
+dd 067953857h
+dd 0c512caf2h
+dd 07748bdcch
+dd 05168464dh
+dd 0a13a08aeh
+dd 017b01112h
+dd 09d620d9fh
+dd 00726bc0ch
+dd 0fbc852efh
+dd 0a1952973h
+dd 0dc379bb0h
+dd 014c61fabh
+dd 0bab0264bh
+dd 0c6249027h
+dd 050a20196h
+dd 0f1ef2888h
+dd 0e56d9081h
+dd 0f8fd313fh
+dd 048f9cd7bh
+dd 0d9256a72h
+dd 0c5ad02e1h
+dd 03a76f23bh
+dd 0bc4d28c9h
+dd 089afcb82h
+dd 0cb29d3a0h
+dd 014108ec7h
+dd 0ce3a2543h
+dd 0568e708eh
+dd 0afa8854fh
+dd 059d51a84h
+dd 05e314738h
+dd 01223b520h
+dd 0a6ca13a3h
+dd 09983272ah
+dd 052a8ee3dh
+dd 09b9cab64h
+dd 01f37c019h
+dd 08490a443h
+dd 0f386741bh
+dd 084152a61h
+dd 0853a1781h
+dd 09688e176h
+dd 068a66da2h
+dd 0a9643ce8h
+dd 07156e986h
+dd 003a0ac25h
+dd 09f121ceeh
+dd 09406532ch
+dd 0d2ce7729h
+dd 00e69128eh
+dd 051d94115h
+dd 028a57a6dh
+dd 046decabfh
+dd 0fce80274h
+dd 08b298562h
+dd 08667b056h
+dd 0db71e9beh
+dd 0182bfcceh
+dd 047885e11h
+dd 0c139663ch
+dd 05b6161a7h
+dd 0914c98d9h
+dd 0b6cdebc9h
+dd 06680a868h
+dd 048777de6h
+dd 038b4bbd5h
+dd 073767219h
+dd 047980ea0h
+dd 04b26b765h
+dd 0f1b4dd39h
+dd 086ccb26ah
+dd 098d97a4dh
+dd 02b0ef509h
+dd 04c154015h
+dd 00c264cfbh
+dd 02a8a8049h
+dd 006255ecbh
+dd 0a7cf7624h
+dd 08bab69fah
+dd 0cb504859h
+dd 037a55ec5h
+dd 02c39c48bh
+dd 023be04e0h
+dd 0ea664b8bh
+dd 051f363ffh
+dd 0b9fb6870h
+dd 028d49894h
+dd 0fc9ec15fh
+dd 0ab2b0ec1h
+dd 090b06098h
+dd 01f2f8632h
+dd 0b1b5317fh
+dd 097065393h
+dd 0fba79b8eh
+dd 09f77b3a5h
+dd 097360db9h
+dd 08e7aeab7h
+dd 0367e1180h
+dd 069fb19a1h
+dd 0c75d0dfeh
+dd 07578f3a7h
+dd 015918127h
+dd 07ebe4eb2h
+dd 05d365605h
+dd 0b24fe92fh
+dd 06ecbeb2dh
+dd 0c47427d4h
+dd 013e185e5h
+dd 05dea26fah
+dd 03edfe8ddh
+dd 0b90e9800h
+dd 085a9e163h
+dd 08fd84785h
+dd 00935fc1bh
+dd 0297d8bb8h
+dd 07e92d438h
+dd 099e4175ah
+dd 098e2e683h
+dd 0c5b902b5h
+dd 03f506d77h
+dd 08e2610d6h
+dd 0a7d2d357h
+dd 08d08e2d3h
+dd 0d5026f9eh
+dd 0274bf543h
+dd 01c30e3c9h
+dd 07745a863h
+dd 0b29c1150h
+dd 0364d3579h
+dd 09463c55bh
+dd 09ea7aa95h
+dd 0eb30c705h
+dd 064424503h
+dd 0bcde415ch
+dd 03d5dcabfh
+dd 07b887d29h
+dd 095e98bdbh
+dd 068c1f9a8h
+dd 05e54c79bh
+dd 057ba68ddh
+dd 02967e0c2h
+dd 070933985h
+dd 00e1e1dcch
+dd 01d3796d6h
+dd 032acd90fh
+dd 0052ceba5h
+dd 037a327dch
+dd 09560ef9ah
+dd 04b6d12f5h
+dd 0850883d2h
+dd 0df69d81fh
+dd 0c79e216fh
+dd 0794c99edh
+dd 022d116e9h
+dd 083e4647ch
+dd 0950dd315h
+dd 02fe851b4h
+dd 00bf1de94h
+dd 0125aae60h
+dd 002cd09beh
+dd 05edb1efah
+dd 0a4bfd2c7h
+dd 0620e57aah
+dd 0ffbaba2ah
+dd 0f51d3f9bh
+dd 0e704cd2eh
+dd 0c9980a09h
+dd 0664ca4abh
+dd 0aaea5080h
+dd 0aa79308eh
+dd 0d9de330dh
+dd 02c3e3cf5h
+dd 00438c8b3h
+dd 0abc8246bh
+dd 03b48ae58h
+dd 0a21354a6h
+dd 0ea65dea3h
+dd 0e04dfd2ch
+dd 0a8208656h
+dd 0070fe3fbh
+dd 00297abd9h
+dd 09a4815fbh
+dd 0dd3d6352h
+dd 0a438ba26h
+dd 0414a8f11h
+dd 08c4c86edh
+dd 050448b2fh
+dd 0e77568a5h
+dd 08c1d58eah
+dd 0088a3d5dh
+dd 0398c3319h
+dd 02ce02392h
+dd 012dfafb3h
+dd 03340facbh
+dd 0f8957ebeh
+dd 076a791adh
+dd 03fe7c578h
+dd 09b3b8fd2h
+dd 0c082b6afh
+dd 0bf09ee8ah
+dd 0c4a3aacbh
+dd 026895d18h
+dd 021c81f50h
+dd 00e7e1d84h
+dd 06ff4c9efh
+dd 0b363512dh
+dd 038917ba2h
+dd 0a1303ee9h
+dd 07f851aceh
+dd 09cc1e017h
+dd 0c0a2e294h
+dd 083b66868h
+dd 08f68b451h
+dd 07d219e94h
+dd 0f4d18ac3h
+dd 011cc03a7h
+dd 07397bd90h
+dd 0eefee7e7h
+dd 053ea0849h
+dd 08b8c19adh
+dd 04c61c003h
+dd 048a4f4e6h
+dd 097f2548bh
+dd 013371c12h
+dd 01c93843eh
+dd 0a727a587h
+dd 0a0323bafh
+dd 042906cf7h
+dd 09749023fh
+dd 03857315fh
+dd 0b0ea532ah
+dd 0071060f8h
+dd 052500ef8h
+dd 03d31e4e4h
+dd 0a76f5773h
+dd 07902d542h
+dd 08d751514h
+dd 0a5b0f9fch
+dd 0ceab6c24h
+dd 0a4560b74h
+dd 063d06b2ah
+dd 0b63f6df9h
+dd 04cb3a2deh
+dd 04a572aa2h
+dd 0b51a33c2h
+dd 0aa405323h
+dd 03280f649h
+dd 0b437a3cdh
+dd 0de7ce094h
+dd 0c59b1c19h
+dd 06536ff15h
+dd 05a0b9ca5h
+dd 0d8f54f39h
+dd 0f6aebe2bh
+dd 02ad194a2h
+dd 01a0c440fh
+dd 0f05319f6h
+dd 03cad1a52h
+dd 0ecce3ef8h
+dd 0e5496ee3h
+dd 0f83c36dfh
+dd 0293f77bah
+dd 00c79888dh
+dd 01d3e67b0h
+dd 0b8085108h
+dd 063cd6fa7h
+dd 0138d1d93h
+dd 0d8cc5a38h
+dd 00d9639ddh
+dd 0572291ech
+dd 069c74b8fh
+dd 0060dfc5eh
+dd 0e1c504cch
+dd 052862864h
+dd 084ced224h
+dd 06577d282h
+dd 0cea27ec7h
+dd 0fc7b526ch
+dd 032d4f4f5h
+dd 0532027f7h
+dd 0a9459126h
+dd 03784e9e5h
+dd 08f791358h
+dd 01a7670b4h
+dd 0cefdbbdch
+dd 0935dbfa2h
+dd 0b833487ch
+dd 069367eb0h
+dd 085004724h
+dd 0268175f4h
+dd 004717425h
+dd 06263ca85h
+dd 02694fdffh
+dd 0d167485bh
+dd 0ee91ebe0h
+dd 0290efc2fh
+dd 08a962840h
+dd 045df8fe8h
+dd 05f6d4839h
+dd 0908dd2d8h
+dd 09f580b17h
+dd 0f2605928h
+dd 0d59d9707h
+dd 06aa96b3ah
+dd 05fbc60dbh
+dd 0ad15f292h
+dd 0a078f85ch
+dd 046fc6394h
+dd 0696e15b7h
+dd 09148e068h
+dd 0f5bc948eh
+dd 0844b7e4eh
+dd 0774c39a7h
+dd 004a3392bh
+dd 0c8b2026ah
+dd 0c0264f01h
+dd 06a099f38h
+dd 00ef96de5h
+dd 0a4f00791h
+dd 09751f947h
+dd 0ffcac883h
+dd 069a8a9e3h
+dd 07fb68c63h
+dd 033f1c506h
+dd 09e0996a2h
+dd 069af59d2h
+dd 05efadb75h
+dd 088ac9360h
+dd 0214c25d1h
+dd 0f0b697f8h
+dd 0cfe6a6c3h
+dd 0f8ef7f73h
+dd 090159d1ch
+dd 0fe2a51c3h
+dd 01eed7a8fh
+dd 06ab12ccfh
+dd 0c5982d2fh
+dd 011a51030h
+dd 07fc93158h
+dd 0f1849f64h
+dd 0a875cbcfh
+dd 02300415fh
+dd 08c88c82bh
+dd 0d7de0545h
+dd 01719fde2h
+dd 0e3d77b0bh
+dd 0fa8542ech
+dd 05cb6586ch
+dd 0192d1df5h
+dd 0d31d88e3h
+dd 0acf46c00h
+dd 096df4af6h
+dd 03be059f2h
+dd 073a69680h
+dd 07547ef57h
+dd 0b592ba35h
+dd 0499feec7h
+dd 01b4f4228h
+dd 05346f7ddh
+dd 00b8926cdh
+dd 080f95c86h
+dd 0bbc17229h
+dd 05232ae64h
+dd 0471be56ah
+dd 0dcef427bh
+dd 0404d052ah
+dd 08d5e577fh
+dd 08aaf2639h
+dd 0f730f1deh
+dd 0ec7aec4bh
+dd 03a80998dh
+dd 068158d21h
+dd 02585e8f7h
+dd 03fad7786h
+dd 0b216c1cdh
+dd 031312638h
+dd 0e3c39ba2h
+dd 072045c70h
+dd 0746ef0eah
+dd 0bf969d6eh
+dd 0694de528h
+dd 0deccb9c4h
+dd 0349dbecah
+dd 036ff1084h
+dd 017e155d6h
+dd 02ca9b2e5h
+dd 0b776fc5dh
+dd 053c6ae1eh
+dd 0893e0d2fh
+dd 026b0007fh
+dd 0bc2e8be8h
+dd 0d080659ch
+dd 0a90ac2e6h
+dd 0405ac57ch
+dd 0ee671670h
+dd 0e28bcf44h
+dd 0931d2d40h
+dd 05f58813eh
+dd 08e439554h
+dd 0a7e707aah
+dd 05f11b5a3h
+dd 005b34f50h
+dd 068a4ce38h
+dd 0cd624621h
+dd 0fbc5e664h
+dd 0b55a2c73h
+dd 0ffd05d3fh
+dd 037a55094h
+dd 0f3cb2068h
+dd 0e3f2b77ah
+dd 06890a1fdh
+dd 005f19507h
+dd 008513274h
+dd 0badb805bh
+dd 0aa6bce31h
+dd 005403473h
+dd 03174f8e9h
+dd 0d1fbd62fh
+dd 0b63c978ah
+dd 00da9980fh
+dd 0e51298bah
+dd 0b629bc0ch
+dd 02baff5f9h
+dd 00bb887f5h
+dd 0134cfca5h
+dd 09673054ch
+dd 005f47453h
+dd 03c696160h
+dd 00aa1777eh
+dd 047979c49h
+dd 00e2ddea5h
+dd 0e438ec37h
+dd 013db13a0h
+dd 0128d37f0h
+dd 0e8187d9ah
+dd 07dbe1c2fh
+dd 0658011f7h
+dd 0440e0548h
+dd 0d7447da9h
+dd 0a35e614dh
+dd 01957eb17h
+dd 0d16fcbc5h
+dd 01213fceah
+dd 0cc2738c6h
+dd 0e3d22cd2h
+dd 07aa9a7f4h
+dd 055f5007dh
+dd 0f0c0ca56h
+dd 0f2900f92h
+dd 099b24335h
+dd 0cd742913h
+dd 02952bc4bh
+dd 0ced3d608h
+dd 04426918bh
+dd 04c0c927ch
+dd 0a6c31c4dh
+dd 0f640585fh
+dd 015025736h
+dd 02836e519h
+dd 01d07621ah
+dd 091ae6682h
+dd 09b525ddah
+dd 0c2728dd4h
+dd 041df48c9h
+dd 08754fbd0h
+dd 03a2e2c97h
+dd 01f25ac3dh
+dd 0883c226fh
+dd 0928ee0c6h
+dd 0cc42491ah
+dd 0e856ab2dh
+dd 060d5749ch
+dd 0e1ae690fh
+dd 0bae1191fh
+dd 0920dbfc4h
+dd 03e56c12ah
+dd 0dabd1e8dh
+dd 028646dc3h
+dd 0849757bbh
+dd 0dfeb3745h
+dd 031ff727ah
+dd 0c966438ch
+dd 01c2e262ah
+dd 0909d70b6h
+dd 04741f54eh
+dd 01c012831h
+dd 0b119e611h
+dd 09ff4a224h
+dd 07ed0a64bh
+dd 086425266h
+dd 003d2b787h
+dd 0d3bdc829h
+dd 0934a74fch
+dd 0c7eef804h
+dd 0de606db4h
+dd 0d7457685h
+dd 0d6bf1502h
+dd 0e7964615h
+dd 04818d61bh
+dd 038ba60c0h
+dd 08c61666dh
+dd 05275676ah
+dd 0590d7921h
+dd 07781fb01h
+dd 0e03547f6h
+dd 0aee48273h
+dd 0191fb9abh
+dd 0d9f2cfffh
+dd 00cea35e8h
+dd 0af4acf47h
+dd 032edbafbh
+dd 0c8f73581h
+dd 0528ab477h
+dd 04842d2fch
+dd 09af3119dh
+dd 0fcbd9c13h
+dd 08a1a5f75h
+dd 0541a3f14h
+dd 00884d660h
+dd 0b9cad52eh
+dd 0965301afh
+dd 0974d949eh
+dd 038d0fdc2h
+dd 04ae751d1h
+dd 0f1240fb8h
+dd 004815377h
+dd 0f5cb3dddh
+dd 056f2e63ah
+dd 0e1933a8eh
+dd 08b1d6f20h
+dd 0156ba835h
+dd 04da19fb7h
+dd 031fedaf2h
+dd 0e74567b6h
+dd 00da9e4fbh
+dd 08fed367ch
+dd 06f1f46a1h
+dd 0acc04each
+dd 037b33396h
+dd 084732189h
+dd 0f0648f05h
+dd 0fb4e2342h
+dd 0bb9f8693h
+dd 08095a791h
+dd 0d18aec1ch
+dd 040263cdah
+dd 0ecb8bc4ah
+dd 0ca820b06h
+dd 0117ce54dh
+dd 0967cc4d4h
+dd 05d7a7d6ah
+dd 00a1645f7h
+dd 0e49df5edh
+dd 034bd743bh
+dd 08807528ch
+dd 0a8ae753eh
+dd 0d677f673h
+dd 00bfc4ee0h
+dd 0716f53c4h
+dd 00b4f38fdh
+dd 00f5f87efh
+dd 070e1445eh
+dd 0048d3178h
+dd 00f2d2c31h
+dd 00f640be8h
+dd 0c95e19dbh
+dd 030aadacdh
+dd 025724e7bh
+dd 002ecdc74h
+dd 049fcb952h
+dd 07c222984h
+dd 0bb07a0e5h
+dd 0e7231714h
+dd 01bbc2288h
+dd 0d24714a7h
+dd 030cb937ch
+dd 0db66b7a5h
+dd 0cb94005bh
+dd 0ad7567d2h
+dd 01a8cabb4h
+dd 005a50b87h
+dd 0df14fb1dh
+dd 0f991ec5fh
+dd 001cd686eh
+dd 094b19e13h
+dd 0ee6b3a88h
+dd 082042fe3h
+dd 0228edc92h
+dd 095c4f3cfh
+dd 0cea7f80bh
+dd 07e99d845h
+dd 04172b203h
+dd 0eef9c7a2h
+dd 05e54bf7bh
+dd 0b6753137h
+dd 0a8396457h
+dd 0d596b6cbh
+dd 06d518011h
+dd 0a24a8636h
+dd 077689acah
+dd 0362e665ah
+dd 0bd09ce61h
+dd 03dd572f3h
+dd 04418b6e0h
+dd 0b3b4a59dh
+dd 0c6f793e1h
+dd 06349fce0h
+dd 093a1778ah
+dd 09a328691h
+dd 010f50007h
+dd 042769521h
+dd 0ebd062eah
+dd 0b5d7281fh
+dd 016d7a6bch
+dd 07c98b706h
+dd 09a361a65h
+dd 093d15d5ch
+dd 05d968eddh
+dd 0362d065bh
+dd 0cce7dbc2h
+dd 065d44aebh
+dd 060cd23e0h
+dd 0426933c1h
+dd 03bbb83e9h
+dd 0583a89b5h
+dd 0c9c9c7feh
+dd 05f199232h
+dd 05a03af1dh
+dd 03ea9d06ah
+dd 061e187e9h
+dd 0da46c606h
+dd 03c03ab3ch
+dd 016bc0072h
+dd 0bd8c2a8ah
+dd 0ee62fd47h
+dd 00de5582bh
+dd 0ea1bfccch
+dd 041f20ef9h
+dd 0301ebf81h
+dd 0a600061ah
+dd 0d6d526c0h
+dd 05dd8e3e9h
+dd 051edae84h
+dd 086dc6260h
+dd 0cf5e5fcch
+dd 01307aefbh
+dd 03f231eabh
+dd 06ad82191h
+dd 09b495cach
+dd 0a5b54b39h
+dd 06202e0deh
+dd 05f7aa07bh
+dd 0d527b631h
+dd 08b7b796eh
+dd 00630497ah
+dd 0bae74432h
+dd 031e60600h
+dd 04d2d7bcfh
+dd 087707adfh
+dd 04f677443h
+dd 0e07d248eh
+dd 026ddb9e1h
+dd 087f83c4fh
+dd 04a0da291h
+dd 0a7c01e96h
+dd 093f70c5eh
+dd 08f4182f2h
+dd 0234bf1efh
+dd 048c9d0e4h
+dd 04761d35ch
+dd 068ebd37eh
+dd 014cebbb8h
+dd 071b8ac1bh
+dd 057db7182h
+dd 0a413bf65h
+dd 00bcabb3eh
+dd 0689a6e0bh
+dd 045d90217h
+dd 0fa7b765dh
+dd 0b3815f54h
+dd 0bd5df0b3h
+dd 0f5cc2655h
+dd 0801dd907h
+dd 0e1c182a4h
+dd 04fa41412h
+dd 06ab49095h
+dd 034454410h
+dd 05fe0c00ah
+dd 00cabff6bh
+dd 0bbd0e2d2h
+dd 08b7a55ech
+dd 036e0ee0dh
+dd 010c2b1e9h
+dd 07eb7fc02h
+dd 00fc53662h
+dd 091a74a90h
+dd 0d5905eb8h
+dd 00ee96b03h
+dd 0145724ceh
+dd 0dbf47490h
+dd 0dcb9caadh
+dd 0fb606de4h
+dd 0e3658d31h
+dd 07c725e82h
+dd 01201fa98h
+dd 0c34a836ah
+dd 0eafcba7ch
+dd 0afe5a4cbh
+dd 0699cd70ch
+dd 07fed1c2bh
+dd 0fa61877ch
+dd 09e672fe0h
+dd 0e2fe430ah
+dd 0874a63d2h
+dd 0cc8c2219h
+dd 00fa19d07h
+dd 0ebcad31bh
+dd 051a4ff78h
+dd 0713bb7d7h
+dd 03fe9d076h
+dd 0a92506abh
+dd 0db0b90bdh
+dd 048cab528h
+dd 015699395h
+dd 0aef6f93fh
+dd 05f066cc9h
+dd 07ed0f560h
+dd 082a462efh
+dd 0d88681f6h
+dd 0883ba5efh
+dd 0a746b591h
+dd 00263115eh
+dd 0901a95fah
+dd 0870eb02ch
+dd 07cf70d00h
+dd 0db7c55dfh
+dd 0c280088bh
+dd 09ac2b6c1h
+dd 0030d11dah
+dd 06322f576h
+dd 0bf998862h
+dd 093b82053h
+dd 03f97f947h
+dd 003294a91h
+dd 0ba56b806h
+dd 07a1a266eh
+dd 0af197f36h
+dd 00a4ea724h
+dd 026a56b2dh
+dd 0381fd6b1h
+dd 0407b7f2fh
+dd 05e46d472h
+dd 069e56c4bh
+dd 089b6ee73h
+dd 0ecd1937dh
+dd 0cc8eee4ch
+dd 02ef1fd8dh
+dd 01e88316eh
+dd 00a30f4adh
+dd 053cc94a6h
+dd 08e136700h
+dd 095bb1269h
+dd 01a279a41h
+dd 0f521edabh
+dd 0be52de14h
+dd 0a48bc142h
+dd 0b338c212h
+dd 034a618b5h
+dd 0dc532a63h
+dd 0962bca64h
+dd 00f9d5f9dh
+dd 0677160ech
+dd 0acb2d852h
+dd 09e77d3d2h
+dd 056bf098ah
+dd 03f6fd73eh
+dd 0734f591bh
+dd 0fbca87bah
+dd 05f6b4ebeh
+dd 0413c43a7h
+dd 017e1e625h
+dd 0e8221dafh
+dd 0dcc3918bh
+dd 0fba8da97h
+dd 017a3f57eh
+dd 0b1ca7235h
+dd 097474901h
+dd 06fec9976h
+dd 032c3e1cdh
+dd 09b6d7653h
+dd 003e7ef63h
+dd 06ff3b56ch
+dd 0318ab29fh
+dd 097141533h
+dd 041fdef7ah
+dd 0409a06eah
+dd 03356b572h
+dd 0d62d3373h
+dd 0fa6a8c83h
+dd 0abff3312h
+dd 08f77f931h
+dd 0ec849e1bh
+dd 0dfdeecf9h
+dd 003d97021h
+dd 0755cfab0h
+dd 09a94d076h
+dd 097853c16h
+dd 04ac3c0f4h
+dd 0e27c5dfah
+dd 01e6f236ah
+dd 078c66030h
+dd 008cd33a9h
+dd 09f2b57a7h
+dd 0ae124926h
+dd 0a6a04b1ch
+dd 0a4ad796ch
+dd 09c7a0c6ch
+dd 0531e5938h
+dd 02698c3f7h
+dd 00074dda0h
+dd 096bb342dh
+dd 0aacffdceh
+dd 0f49b1d9ah
+dd 0d9d32665h
+dd 02c6dcf0ah
+dd 0c7b18980h
+dd 07ef10775h
+dd 0bf1412d1h
+dd 0d46e74f6h
+dd 05e14841ch
+dd 09b20da7ah
+dd 0e0a1fa7bh
+dd 08b376b79h
+dd 010c352a1h
+dd 055988373h
+dd 095fee1b1h
+dd 0f0f44dd3h
+dd 02463b9e8h
+dd 0e007663bh
+dd 02b477a3bh
+dd 01303e5e1h
+dd 0a7179878h
+dd 03e6fc840h
+dd 02f6a9571h
+dd 0031a7ae5h
+dd 0f0b5d8b3h
+dd 0e144d40dh
+dd 0e357ca7bh
+dd 041c69ca3h
+dd 0014d788eh
+dd 0972c45e0h
+dd 0d54c327dh
+dd 0415bedfch
+dd 0c0bccfaah
+dd 0314c948bh
+dd 078d99fb8h
+dd 0ee7aff87h
+dd 0d7d774f6h
+dd 0181869dch
+dd 089f7b289h
+dd 0a6a49636h
+dd 0331cde84h
+dd 0e4473639h
+dd 0e1b45eebh
+dd 010f0afd2h
+dd 087169267h
+dd 09d630366h
+dd 02c0c3bfbh
+dd 05cac643dh
+dd 0c8f34ff0h
+dd 001cb3aadh
+dd 0fe91c1bah
+dd 04f7aee63h
+dd 0f1a56569h
+dd 0f9e99e06h
+dd 0e84b513bh
+dd 0e6258dc6h
+dd 03b93071ch
+dd 075b9ea16h
+dd 090378cefh
+dd 0b2782f70h
+dd 0bdd00420h
+dd 07f93f7d4h
+dd 0bbfabd3ah
+dd 015429926h
+dd 0abb8b08ah
+dd 0551ad3adh
+dd 0a74425c1h
+dd 05b529a8ah
+dd 0956ac237h
+dd 0ba7ef75bh
+dd 02c34637ch
+dd 071f04060h
+dd 06bfa07e1h
+dd 0d08ccb1ch
+dd 0b2b1b1ebh
+dd 0c88a006bh
+dd 0ef9cbe0dh
+dd 05736da87h
+dd 07c443cfeh
+dd 0030aea25h
+dd 055396c4bh
+dd 02ec36360h
+dd 00afc692eh
+dd 040a1ce54h
+dd 069d77932h
+dd 097d14df0h
+dd 00231f7e8h
+dd 0c09761c9h
+dd 01f021037h
+dd 0702047cdh
+dd 0324c7fc5h
+dd 0203347bfh
+dd 05065cae2h
+dd 0630764efh
+dd 0a966e11ch
+dd 0d0a0c0a8h
+dd 091b99433h
+dd 01dc7735eh
+dd 0d3f50589h
+dd 0bdf62a3ah
+dd 032c300a7h
+dd 081ebe514h
+dd 05fa19862h
+dd 0cf3b4cf1h
+dd 043f930c3h
+dd 074607430h
+dd 0247635e3h
+dd 0f18e713dh
+dd 09da85f75h
+dd 03869b064h
+dd 0e86b93deh
+dd 0ab01a1c4h
+dd 0ed216cfah
+dd 0cfe247a4h
+dd 041d60ebah
+dd 0eef58d1fh
+dd 0e9be5414h
+dd 0bb581103h
+dd 0236bfdb6h
+dd 00cb712d7h
+dd 02ce7c40eh
+dd 079679d26h
+dd 0cd7ea721h
+dd 09bd78a8ah
+dd 04d08c430h
+dd 06b6d505ch
+dd 01459fa0ah
+dd 061943e6ah
+dd 0f462654fh
+dd 0784a51e4h
+dd 068fb3139h
+dd 06e232fc8h
+dd 0ab1001f1h
+dd 08c55ac52h
+dd 0171bb473h
+dd 023f16eafh
+dd 08f3662f8h
+dd 0b674ca10h
+dd 0bb78cb1fh
+dd 086c90e3ah
+dd 0427cc24dh
+dd 09c6a9268h
+dd 07cf4516ch
+dd 0edec923bh
+dd 040d985bfh
+dd 0b2ec6963h
+dd 0874b939ah
+dd 038a52d44h
+dd 0a3920a9ah
+dd 0eb746038h
+dd 0e89996e7h
+dd 06e751f24h
+dd 0293add56h
+dd 05a38dbd2h
+dd 08ce43148h
+dd 0c516c7d3h
+dd 0079f2162h
+dd 019c4e1d0h
+dd 0b5922578h
+dd 0b02078ceh
+dd 047ff52f4h
+dd 0719988f3h
+dd 042049a1eh
+dd 0c8827531h
+dd 017cb3c78h
+dd 072547863h
+dd 00aa0d117h
+dd 0327beac8h
+dd 011ed1dcah
+dd 08fe96797h
+dd 06f97e483h
+dd 0bbd84981h
+dd 04b4d019bh
+dd 0aad49d48h
+dd 08f4b5c95h
+dd 072fe96c2h
+dd 037facf2ch
+dd 062536b64h
+dd 02a61d6cfh
+dd 01bb959feh
+dd 0bb13521eh
+dd 0e06297b3h
+dd 0e64a478eh
+dd 02b614f40h
+dd 0feecf4cah
+dd 02a378268h
+dd 0ee24af58h
+dd 055dcb052h
+dd 05d3f5646h
+dd 081ce05cah
+dd 063c29520h
+dd 068acb5b2h
+dd 0d61bf7ffh
+dd 094fce44ah
+dd 0d59fba18h
+dd 0c7d3b8b8h
+dd 0710de0b8h
+dd 093400f75h
+dd 0d5388268h
+dd 01ab9970ah
+dd 0106c14c8h
+dd 0b22708dch
+dd 0b7202781h
+dd 0dde44e43h
+dd 0b5f3f621h
+dd 03b5b42f6h
+dd 0bf6ad1cbh
+dd 0cac099eeh
+dd 009f25cfdh
+dd 0bd348eceh
+dd 0521ec7a9h
+dd 01bbac833h
+dd 0d11f27e0h
+dd 0149f2863h
+dd 02d5cb784h
+dd 000d54b41h
+dd 0ab71edb5h
+dd 07f4ce2dah
+dd 0bfc5f822h
+dd 08e0f7332h
+dd 075387d4dh
+dd 0e4a8a949h
+dd 029af1541h
+dd 01dcefff0h
+dd 00f744131h
+dd 06d9af52fh
+dd 094526c10h
+dd 002ec3f61h
+dd 0b42a1f52h
+dd 0c0c262b8h
+dd 051ab7337h
+dd 0fa7ad9c1h
+dd 087a31232h
+dd 05fbeecd2h
+dd 0a8b3c175h
+dd 0fad37836h
+dd 01b9e19ddh
+dd 052bd96abh
+dd 0aac90f0eh
+dd 0441c8ef0h
+dd 0943b5b21h
+dd 0335b43c4h
+dd 0ba70fe3eh
+dd 06a344f73h
+dd 0d1038667h
+dd 0beb27cbfh
+dd 05c61444bh
+dd 02eb53fc6h
+dd 025e9f05dh
+dd 08f1e67adh
+dd 07355b424h
+dd 06c76cce3h
+dd 0e77acbf1h
+dd 0db4da0b4h
+dd 027daa957h
+dd 057cbd53fh
+dd 0d807f8cdh
+dd 0631274e7h
+dd 0fba7060fh
+dd 0d44b5856h
+dd 04d8bcbbch
+dd 0eff24ea1h
+dd 0350f80f1h
+dd 09c5397ech
+dd 0d8ae35f3h
+dd 0ed71e05ah
+dd 0cd57fcbah
+dd 0dae06132h
+dd 03a5d5dddh
+dd 0ef602801h
+dd 09ecde564h
+dd 03a2213a9h
+dd 0a0331916h
+dd 0d5819f48h
+dd 07559e9c1h
+dd 05e639a6fh
+dd 0176bda40h
+dd 06987f764h
+dd 0bbbbe43eh
+dd 0de6e722ch
+dd 0b3b771ech
+dd 02edfdee0h
+dd 08b664380h
+dd 075c2f7b3h
+dd 05487344dh
+dd 05ffc7d17h
+dd 099481561h
+dd 02e448b9ah
+dd 040535829h
+dd 0f32c6b8dh
+dd 066dc408bh
+dd 0b5c93e0fh
+dd 071bebc5dh
+dd 0c5be4942h
+dd 07fbe1debh
+dd 0d2ac656dh
+dd 0b5855599h
+dd 094d03e67h
+dd 0115e1624h
+dd 05899fb41h
+dd 0a0846086h
+dd 086bb1221h
+dd 03b83c628h
+dd 0679d004dh
+dd 06202a059h
+dd 0a7a4e53bh
+dd 09cf49e3eh
+dd 085424364h
+dd 089babd3dh
+dd 0fe464f73h
+dd 02fc1cb20h
+dd 0e83e42f2h
+dd 0163bd372h
+dd 0bba02330h
+dd 014732df4h
+dd 036f838d3h
+dd 047c6f8f3h
+dd 056f098bch
+dd 0bb41cbb3h
+dd 0cc914a7ch
+dd 0b9ff7debh
+dd 0411ee306h
+dd 0227743a2h
+dd 09e2ef004h
+dd 0c1347030h
+dd 04a9a4ce5h
+dd 054dcd14dh
+dd 0a12a595eh
+dd 07809a185h
+dd 011a226d0h
+dd 0daa86129h
+dd 05d6fa112h
+dd 09349387ah
+dd 0edd26335h
+dd 070908362h
+dd 057a1d0e8h
+dd 01bb6497bh
+dd 00fcf2d99h
+dd 0fc9eda9bh
+dd 092fdd553h
+dd 0d3c8a0d8h
+dd 03118d6b6h
+dd 088e5c037h
+dd 02fb85c28h
+dd 0af4b7950h
+dd 0526791dfh
+dd 08491acf7h
+dd 07426c8d0h
+dd 0088e6fd8h
+dd 0f6be57f9h
+dd 022cd82c9h
+dd 0ed25a416h
+dd 055ae5752h
+dd 05c295448h
+dd 02b18fac6h
+dd 08a63c922h
+dd 0585c8b01h
+dd 063fa76b9h
+dd 07c4103c6h
+dd 0cb20424eh
+dd 0da688b73h
+dd 0c4affcdfh
+dd 025a480f1h
+dd 04b92132ah
+dd 0cba5491eh
+dd 0c569cd21h
+dd 0bb2ba96ch
+dd 00c7aeb47h
+dd 06122be7ah
+dd 0b9b70824h
+dd 0285525feh
+dd 09c125d1fh
+dd 01c852652h
+dd 0c7f6fc2eh
+dd 05608fd6ah
+dd 0b8e227bdh
+dd 06a57961ch
+dd 061affccbh
+dd 0a1e9121ch
+dd 0ab4b55c3h
+dd 06d79e99bh
+dd 0302691ebh
+dd 00a186c32h
+dd 0f56f5d91h
+dd 0f892e1f1h
+dd 0749447e8h
+dd 0fa6c2bb4h
+dd 0686b022ah
+dd 047798070h
+dd 002e25ed7h
+dd 0fcd2f522h
+dd 05c31efd6h
+dd 0b874e4f6h
+dd 0ab63723eh
+dd 05951e220h
+dd 0a4fe2fa8h
+dd 0cbe780feh
+dd 0d27a03edh
+dd 00995d78eh
+dd 0a920e262h
+dd 0bc0d46e7h
+dd 0e33d6dafh
+dd 02e2b0efah
+dd 0b132c6f2h
+dd 0c80f9e92h
+dd 0ff9431a0h
+dd 027b0d255h
+dd 0c001248bh
+dd 02333e0eah
+dd 0e12bec5ah
+dd 0e5cbf5b1h
+dd 0efb08effh
+dd 0c0ecbe20h
+dd 03b615c2ah
+dd 0f682945ch
+dd 08be9340fh
+dd 0b1383004h
+dd 001fc5f7bh
+dd 00f6ac117h
+dd 046010f4eh
+dd 070dfc3f0h
+dd 0bdaf822ah
+dd 078177d8dh
+dd 0a33488dah
+dd 006998858h
+dd 083ef3752h
+dd 016e9adf2h
+dd 0b7831177h
+dd 09be08845h
+dd 05c58ce84h
+dd 054bf88fbh
+dd 04926e26fh
+dd 006fa0f70h
+dd 09f9ee007h
+dd 08b57d1cah
+dd 0251d647ah
+dd 05eb59397h
+dd 0cc8cb80ch
+dd 0262283bdh
+dd 05c56f058h
+dd 098215446h
+dd 069024136h
+dd 01b2884c5h
+dd 02ff02326h
+dd 04eb5effch
+dd 0194ed5e1h
+dd 03a1ef010h
+dd 043d992cfh
+dd 0348c6c70h
+dd 01160ad66h
+dd 0f61495feh
+dd 0550e5e49h
+dd 0c40bb8f3h
+dd 0599a608fh
+dd 0f1b5c27bh
+dd 0b95fcc89h
+dd 0da5d619ah
+dd 02abea9cah
+dd 088982e3eh
+dd 0d9159a55h
+dd 0737b3a96h
+dd 098a759dch
+dd 0bf2c18a6h
+dd 0a709362bh
+dd 0b110f926h
+dd 00d305affh
+dd 01a07f8aeh
+dd 0ffcfb400h
+dd 0896c072ch
+dd 09659dceeh
+dd 07e2ff9fah
+dd 012293ddeh
+dd 006822d12h
+dd 029829d7ch
+dd 02b703334h
+dd 074f12798h
+dd 0c7db7093h
+dd 051e7dc48h
+dd 0de5c8a11h
+dd 009b092bch
+dd 0fcfbe49fh
+dd 07fee3da6h
+dd 0db8850ebh
+dd 009641a3dh
+dd 0dd03a4d0h
+dd 0f15d0857h
+dd 0f6e3d792h
+dd 08022dfbeh
+dd 00902e201h
+dd 06ea23fc9h
+dd 0f7d9f7a5h
+dd 06d9ba167h
+dd 0a627394ah
+dd 0747bd121h
+dd 02cbcf6a7h
+dd 0d1eefb87h
+dd 0a027803fh
+dd 0fc685aa0h
+dd 0044c0c25h
+dd 0c47d8243h
+dd 0552046bbh
+dd 059c2d28eh
+dd 07ed2f052h
+dd 086e891bah
+dd 05b6e4d6ch
+dd 00f5b2d4ch
+dd 0d070570ch
+dd 0457958f2h
+dd 0718d04dch
+dd 03bb84e2bh
+dd 00634e270h
+dd 0f4b19e30h
+dd 0b7ec9a1ah
+dd 02ecb99d0h
+dd 0aad119f1h
+dd 03808de2eh
+dd 035268824h
+dd 094ebc51dh
+dd 093094eceh
+dd 00f52fffch
+dd 0f025816ah
+dd 0072dfb11h
+dd 0fa1823bbh
+dd 026c1cd67h
+dd 032591caeh
+dd 070e08d38h
+dd 0cbcd7850h
+dd 004b485c2h
+dd 064d1dfcbh
+dd 04590f4e2h
+dd 08b27f342h
+dd 05a2f3fc7h
+dd 028620d00h
+dd 0004dddf0h
+dd 0f82ea728h
+dd 0852be6f3h
+dd 0e28cf42ch
+dd 0229b0d84h
+dd 00f2e0f15h
+dd 094a07a74h
+dd 0ee3879c9h
+dd 01a245a46h
+dd 0ff40ec21h
+dd 05d3971c7h
+dd 054d9c5e3h
+dd 028eff0eeh
+dd 0ee0ed25bh
+dd 0097d14f9h
+dd 09cff9ccah
+dd 03f7085f1h
+dd 0c733db46h
+dd 0010192a9h
+dd 07a2c6680h
+dd 043fc88bbh
+dd 011e169e1h
+dd 05c4a7d0dh
+dd 0f7a33d39h
+dd 048121958h
+dd 09d8dd7ffh
+dd 04188a6cch
+dd 0afe39deah
+dd 0f3a776ebh
+dd 0795fa4b1h
+dd 0bac45acbh
+dd 06f9e3c6eh
+dd 033961718h
+dd 00f0b9d60h
+dd 06b8d4aabh
+dd 06c3e18cdh
+dd 074f785efh
+dd 00eba4828h
+dd 01e429e3bh
+dd 01cc1bcc6h
+dd 05b9e2924h
+dd 0cc4dd52fh
+dd 0d77d3d4ah
+dd 00d20f598h
+dd 0a18fde8eh
+dd 038c539c9h
+dd 0719d4e0ch
+dd 01cdd5725h
+dd 09d11cc5fh
+dd 048db7300h
+dd 0f585d0a8h
+dd 085bc65c1h
+dd 022802d14h
+dd 062d0a6ebh
+dd 09a075dbbh
+dd 032bd8756h
+dd 04dce5394h
+dd 047db8d9ah
+dd 0da73dc7ch
+dd 049c22498h
+dd 08263844ch
+dd 0bad7ab3eh
+dd 0d0ddaf61h
+dd 00eb4d697h
+dd 0356aac41h
+dd 08952582eh
+dd 058d12607h
+dd 0a3f0e5f8h
+dd 0ee8e50b6h
+dd 0a875676ch
+dd 032dd16cbh
+dd 0bf45ce1bh
+dd 01731739fh
+dd 0704bbaffh
+dd 0b8634f18h
+dd 0e0a09347h
+dd 009ef8e41h
+dd 01129a228h
+dd 066f7434ch
+dd 09bd83563h
+dd 0c29667deh
+dd 070906c07h
+dd 0fbc15e21h
+dd 0a3cf20e0h
+dd 006042a1dh
+dd 03058aca9h
+dd 03c88c5e5h
+dd 065558cb8h
+dd 0a8bdc521h
+dd 0ea46ccbdh
+dd 00df194c9h
+dd 0af13a7b3h
+dd 09248f0ebh
+dd 0f38eceb7h
+dd 0068dc52ch
+dd 02b96dc12h
+dd 03ac575f0h
+dd 09c464b18h
+dd 07d7a6f4bh
+dd 0c8fbcddfh
+dd 066cf5c81h
+dd 0786799e1h
+dd 0e2de22cbh
+dd 0850f894bh
+dd 08428f3aah
+dd 09b02ff0dh
+dd 0b30e83b7h
+dd 09282d1d8h
+dd 00fd35814h
+dd 009c93275h
+dd 00bfa610eh
+dd 01f533a31h
+dd 0b46dca69h
+dd 09f12b02bh
+dd 03a9a59b7h
+dd 033a5db80h
+dd 03c686c4ah
+dd 04f1aa1fdh
+dd 0e64e8a79h
+dd 05a981864h
+dd 0ae1a908dh
+dd 09f3b1c63h
+dd 0d270f243h
+dd 069210501h
+dd 094806e04h
+dd 026bdf4a4h
+dd 00d4c3cb5h
+dd 00d93ed4ah
+dd 04d7c1b54h
+dd 029c126a1h
+dd 0b4e8db46h
+dd 00b3f8242h
+dd 0a9bd97e2h
+dd 0b25cabcch
+dd 0a46dac30h
+dd 05f0a614ah
+dd 070fc2171h
+dd 0b68da730h
+dd 022afcce0h
+dd 07221a7aah
+dd 02e53185ah
+dd 0c37e99adh
+dd 07883b677h
+dd 04b00c6f3h
+dd 0419198fdh
+dd 07ede89f1h
+dd 076076922h
+dd 0cfa3540bh
+dd 032863046h
+dd 05933c084h
+dd 0f999653eh
+dd 0c3a42824h
+dd 0161e7adah
+dd 03b89efe0h
+dd 050a6b1bah
+dd 00ddbf410h
+dd 0ec8ac903h
+dd 0578862afh
+dd 0c8cd060bh
+dd 03f15097ah
+dd 0f4cbfad2h
+dd 0a636b77dh
+dd 090cd673ah
+dd 06f232213h
+dd 0669de80fh
+dd 0070d5c37h
+dd 05740c278h
+dd 06f5ee0f5h
+dd 0191db8c0h
+dd 0bbd1ecd6h
+dd 00e8208ddh
+dd 0fdc2f76ch
+dd 0a0e88ee4h
+dd 0546ae861h
+dd 0d138571ah
+dd 073e60149h
+dd 083252f27h
+dd 02ce58a93h
+dd 0773ec09ah
+dd 009b9bb53h
+dd 0d30e7d3ch
+dd 0d761230ch
+dd 0dca11a74h
+dd 07c08f1ceh
+dd 052b515b2h
+dd 06d2dad61h
+dd 0b925ed16h
+dd 0c690d182h
+dd 08fef5349h
+dd 06b3fa61bh
+dd 046ec3628h
+dd 094defdc9h
+dd 088f1af9bh
+dd 062e30c73h
+dd 03bbd7170h
+dd 0c2c04891h
+dd 0698a326dh
+dd 086898266h
+dd 0aa8a5ac0h
+dd 0eac1990dh
+dd 07a2280e0h
+dd 0bac3c6a6h
+dd 001c4e037h
+dd 0a6b9bb9bh
+dd 046424d30h
+dd 01aa57a77h
+dd 0c7e95621h
+dd 008d1e4deh
+dd 0bc237a33h
+dd 0ddbdab67h
+dd 0910afb33h
+dd 0298b11e7h
+dd 0aebe8fc1h
+dd 067e6445fh
+dd 0e4400d71h
+dd 0c52e0fdah
+dd 09cc41f8fh
+dd 0b474ba5bh
+dd 0f2d66178h
+dd 0468ac5d9h
+dd 0fd87ee6bh
+dd 0530f74c6h
+dd 003593e29h
+dd 0eb5ecf6dh
+dd 0bd2a06d9h
+dd 0e4abced6h
+dd 008579512h
+dd 03d9cb79ch
+dd 0cdb47e7eh
+dd 07cdcf397h
+dd 0a11998c0h
+dd 04062660bh
+dd 0d7f55369h
+dd 0c5bb0c33h
+dd 00f8061f4h
+dd 07154f20eh
+dd 0e5601ed9h
+dd 03b774e9eh
+dd 0cd060bc6h
+dd 0b2ec62b3h
+dd 09ff54646h
+dd 08a9052b7h
+dd 085ab72d5h
+dd 04b3e8a38h
+dd 050d9a7d6h
+dd 023d6d7bbh
+dd 04adb593dh
+dd 03bac945bh
+dd 053dca97dh
+dd 0bc5ff0ddh
+dd 0351526c5h
+dd 01f4a3461h
+dd 03aab40d9h
+dd 0c897f7b0h
+dd 07f0a7a55h
+dd 0f13fe080h
+dd 0c559f784h
+dd 0cd8ca2b9h
+dd 0717b6eadh
+dd 05851601dh
+dd 0263089fch
+dd 0bfa5488ch
+dd 0ff208467h
+dd 0d951a85ah
+dd 075a2f72ch
+dd 0f1f35802h
+dd 0bf66b3cdh
+dd 055fb95b2h
+dd 09d90d41fh
+dd 02ead9831h
+dd 0e88d2c33h
+dd 0b395ed80h
+dd 0b6075a91h
+dd 0e8b1849bh
+dd 071d7b2fbh
+dd 069eee3e1h
+dd 068fab928h
+dd 0432c2567h
+dd 01a1722f2h
+dd 02f623e6ah
+dd 066397c4eh
+dd 0c648cde8h
+dd 0abce89dch
+dd 0b81000deh
+dd 0ebfbc4f2h
+dd 0f2f1a069h
+dd 04fdede5dh
+dd 08fc7c67ch
+dd 057204f9fh
+dd 067520dbch
+dd 0b8863642h
+dd 07f61fd57h
+dd 043b34099h
+dd 05a136d31h
+dd 00db83e1dh
+dd 03c14b706h
+dd 0620e87a4h
+dd 099c4737fh
+dd 053447cbah
+dd 0cc600517h
+dd 0c69623f8h
+dd 07984fa3ah
+dd 06a68b144h
+dd 0415be985h
+dd 0fb270658h
+dd 043cbf4a9h
+dd 091de8e13h
+dd 09cab2c1bh
+dd 0ebcec047h
+dd 00a6fa324h
+dd 0893aaaa9h
+dd 0abe43dbah
+dd 0041a9508h
+dd 096998dddh
+dd 093654dfdh
+dd 04bfe8020h
+dd 007f7d869h
+dd 0f3358f2dh
+dd 0243b031bh
+dd 08c96142fh
+dd 0d633c74dh
+dd 08b60fbf1h
+dd 0dd06cbfeh
+dd 030258cafh
+dd 0936fa5d4h
+dd 0935514c6h
+dd 00c5c5e7bh
+dd 09f51836eh
+dd 0a20ea6a5h
+dd 0b0d12480h
+dd 0dadad67bh
+dd 07917484bh
+dd 0a3c1a25dh
+dd 01580f0c5h
+dd 0e1d97808h
+dd 082dfc462h
+dd 0611f1c93h
+dd 086354a42h
+dd 068585a2dh
+dd 0ae4c2e76h
+dd 018039b20h
+dd 0f5fd9a35h
+dd 0ef7196b2h
+dd 071c88bc5h
+dd 06b58e023h
+dd 04cb2378ah
+dd 037f18fbfh
+dd 0427b120ch
+dd 0358c9c0bh
+dd 0a1c461e1h
+dd 09287a43bh
+dd 08f2b5f2eh
+dd 072b59ff0h
+dd 0f5495314h
+dd 0bde0e305h
+dd 07191a598h
+dd 0b0caaf18h
+dd 04b4feabah
+dd 073ee7146h
+dd 069b179deh
+dd 0df2240e1h
+dd 04da693c4h
+dd 058fbbe03h
+dd 069ff058ah
+dd 06e99c754h
+dd 0b5a3cd48h
+dd 0dc7f2088h
+dd 029e36107h
+dd 04083acd9h
+dd 0410404ach
+dd 0b6741f14h
+dd 083753b9bh
+dd 03eaca089h
+dd 00a56b07ch
+dd 0290ad7fah
+dd 0b8610112h
+dd 0bca3690bh
+dd 04afb1a2eh
+dd 0d447119ah
+dd 0de10bb8ch
+dd 035c5e0d5h
+dd 031ba010bh
+dd 0019c380eh
+dd 0aa4da5deh
+dd 00bf3ad95h
+dd 0bb9335ffh
+dd 05660ecabh
+dd 02376a054h
+dd 0a6d6a11ah
+dd 06eb61009h
+dd 00db20d2bh
+dd 0cd48420dh
+dd 0f058d8d4h
+dd 03747f56ah
+dd 0a3d3e354h
+dd 0040e6a45h
+dd 0d1f453bbh
+dd 0f736e713h
+dd 01859f5bdh
+dd 021bc6032h
+dd 021a638a5h
+dd 0c055ffc2h
+dd 07ba29a11h
+dd 0fec2cbcdh
+dd 0c67b9b52h
+dd 06fcf9fabh
+dd 0ccfee866h
+dd 02777be96h
+dd 026fc2e7fh
+dd 012fc38d6h
+dd 04ee4b7e3h
+dd 091b70d7fh
+dd 0755cecb1h
+dd 0a2a8a43eh
+dd 04b9bc698h
+dd 063c27464h
+dd 09733c27bh
+dd 057192a74h
+dd 0538ad436h
+dd 0d56fc0a6h
+dd 0c70540d2h
+dd 0b56ebb86h
+dd 0a4dc3dd0h
+dd 0bf543a86h
+dd 03602ee03h
+dd 00bca2097h
+dd 0a0cb252eh
+dd 0932a87bdh
+dd 00c075003h
+dd 0b87041b5h
+dd 084a121beh
+dd 0b840f2e8h
+dd 0a5345a78h
+dd 058dd1609h
+dd 05da32b5ch
+dd 0617bd29bh
+dd 05d3ffccah
+dd 069935cf7h
+dd 0e15ee8c7h
+dd 03069d8ddh
+dd 064f09d5ah
+dd 02c8ccf6dh
+dd 02a0e582dh
+dd 030a16945h
+dd 0135fca94h
+dd 0259901a9h
+dd 0f4e6234ch
+dd 0312b417ch
+dd 061f69378h
+dd 040f45530h
+dd 090e093fdh
+dd 08276d69dh
+dd 0d5c95e7ah
+dd 05a1c6d1ch
+dd 08d59d564h
+dd 04eac3dcfh
+dd 01c34b252h
+dd 06debf86ah
+dd 04131930ch
+dd 0313c74f4h
+dd 0049f3541h
+dd 0565b320ch
+dd 013dda087h
+dd 01b39e9dah
+dd 0cbfa24f2h
+dd 0f63d55beh
+dd 0137a4187h
+dd 0a16ab3bch
+dd 030ccbea8h
+dd 062f04498h
+dd 0b2b53f43h
+dd 08ba82266h
+dd 086d3fc8bh
+dd 0d716b7d0h
+dd 064a3d86eh
+dd 014ffc4eah
+dd 02d44ff0eh
+dd 00eb0ba27h
+dd 0be17b3c8h
+dd 033ddcd3eh
+dd 0c3a40521h
+dd 00e359a90h
+dd 00d4a0a68h
+dd 0b762a9aeh
+dd 0bf518da0h
+dd 09df49aefh
+dd 06bdde85ah
+dd 03635f2a9h
+dd 076278b6ah
+dd 0c5aa7bb4h
+dd 09ac65750h
+dd 073d2ce97h
+dd 0919dd324h
+dd 04610e8c4h
+dd 088d8246ah
+dd 06577da23h
+dd 05b73c5a8h
+dd 091189ea1h
+dd 0837bdc1fh
+dd 0763fb398h
+dd 03d9406abh
+dd 0a1586dcch
+dd 0e4425e51h
+dd 038ca1cb0h
+dd 0595996cfh
+dd 020f0dbbah
+dd 0f113388fh
+dd 09237c11fh
+dd 004c134bah
+dd 0f9abd809h
+dd 0e4d074dfh
+dd 00342201ch
+dd 0a0b8ec6ah
+dd 09f4e02c8h
+dd 03381ec97h
+dd 049457667h
+dd 0c625ad6dh
+dd 02decfe1ah
+dd 01ee675b6h
+dd 0211a85d7h
+dd 0a3761b3ah
+dd 07b58c72ah
+dd 08b23b812h
+dd 03673a254h
+dd 0ca1e50b4h
+dd 015e71891h
+dd 069598bc3h
+dd 0154cb21bh
+dd 0b4eb16fbh
+dd 0e120091dh
+dd 0f02fe75eh
+dd 0dc722319h
+dd 038216f7ch
+dd 0bd236314h
+dd 0dff1eb0eh
+dd 07d2cf91dh
+dd 0f4ad4253h
+dd 09e8d2e9ah
+dd 0abd77160h
+dd 0c6a1824ah
+dd 022d26c01h
+dd 044312af4h
+dd 0c98c2564h
+dd 02d272e8bh
+dd 04fd73aabh
+dd 032059dc0h
+dd 002541306h
+dd 0f9b279f7h
+dd 0abd940a1h
+dd 03c973545h
+dd 043e8ce5ah
+dd 0995c9df0h
+dd 092092096h
+dd 04c13245bh
+dd 0aed91c21h
+dd 04709fb00h
+dd 0d38cb831h
+dd 08992e3c3h
+dd 0edc7df6eh
+dd 0fa9dd550h
+dd 0763fc1edh
+dd 06af4611ch
+dd 09dce6f51h
+dd 004d91cadh
+dd 0509a6bc4h
+dd 09a4bb9f6h
+dd 0eb845efeh
+dd 00d1d0dc9h
+dd 02be10cf5h
+dd 046e87e56h
+dd 0061bafb8h
+dd 0e90fa7dfh
+dd 03924b85dh
+dd 0b4ff5ac6h
+dd 0110ed8d4h
+dd 0f0206289h
+dd 064359f3dh
+dd 0add328cah
+dd 05aaa3121h
+dd 0b10183c2h
+dd 0f229ee3fh
+dd 076e1482ch
+dd 0e0dbce4fh
+dd 09f354a65h
+dd 0b6a0c0a5h
+dd 0c5ee378bh
+dd 09f4aa9e5h
+dd 01cda6a6eh
+dd 017204d98h
+dd 09cbcd24dh
+dd 062fc7a61h
+dd 01ae2fc26h
+dd 050067874h
+dd 068e3f141h
+dd 053b70bebh
+dd 022bfa822h
+dd 0896ec957h
+dd 0c9d43b98h
+dd 051f78c26h
+dd 073595fdah
+dd 00e44f5e0h
+dd 07159d68ah
+dd 01276d76bh
+dd 0aeb83701h
+dd 08ac3b9f9h
+dd 0f89de5d4h
+dd 0ef5e16ebh
+dd 04771bea7h
+dd 081b79ee5h
+dd 0f55b3e32h
+dd 0d9554394h
+dd 0cac09bb7h
+dd 0befb4bb6h
+dd 0be662f8ch
+dd 0f37238cch
+dd 0e0a6b0dch
+dd 026017084h
+dd 0d11a5172h
+dd 02386d90ah
+dd 019aea1bdh
+dd 006f6960ch
+dd 03946ce26h
+dd 018160c72h
+dd 0bc8ef0ffh
+dd 05d99ccach
+dd 0bd41be81h
+dd 0c4da44bbh
+dd 015fc9503h
+dd 065183a61h
+dd 0ab5fe007h
+dd 0504c2f59h
+dd 0b280c031h
+dd 0aea32c14h
+dd 07d68f010h
+dd 073780464h
+dd 06d26e61fh
+dd 0fbde01dch
+dd 00b8a0d80h
+dd 0efe6bab6h
+dd 0698811cbh
+dd 0ae93af38h
+dd 008c78c21h
+dd 0b7aac7b6h
+dd 0aefbc88dh
+dd 0e7d8b28ch
+dd 00bc39b4fh
+dd 0caaa539fh
+dd 06837f31ah
+dd 07ddb859ah
+dd 08aa391e4h
+dd 060bddf22h
+dd 06500cb9fh
+dd 0734fe669h
+dd 0031a792fh
+dd 0180d2f9ah
+dd 05b49662ah
+dd 0f6f51d3ch
+dd 0e1f2638eh
+dd 0a3ec4eceh
+dd 047b12bcdh
+dd 02c292c05h
+dd 06f884c69h
+dd 0df51ec7dh
+dd 0d428b06dh
+dd 02ac4bcbch
+dd 06192e8f0h
+dd 013c25b0fh
+dd 0864c67c1h
+dd 05306261bh
+dd 04747c5cbh
+dd 0f6da9e6eh
+dd 0f63c0da6h
+dd 0d900cd6fh
+dd 01fc29490h
+dd 003872cc1h
+dd 0f5147539h
+dd 085fe6264h
+dd 04d9203a7h
+dd 02f5894d3h
+dd 0d4c11c97h
+dd 0be04995ah
+dd 00c766c8ah
+dd 05ff435f8h
+dd 0b1bf3049h
+dd 0d82fd196h
+dd 04b2b049bh
+dd 0eb788593h
+dd 0fffd5a33h
+dd 0d8ed1731h
+dd 00434569ch
+dd 06af60c09h
+dd 06128b694h
+dd 02ddd304ch
+dd 00f292657h
+dd 0c51e1b39h
+dd 099d7523ch
+dd 02be48a31h
+dd 06b4845b6h
+dd 0fb184a73h
+dd 017c12b57h
+dd 03b489b9dh
+dd 00cc581fdh
+dd 0f6028bc1h
+dd 0f1c982a7h
+dd 0c03296b1h
+dd 0f4a6bdf2h
+dd 0583c8acfh
+dd 09e725a3bh
+dd 0bc152427h
+dd 084e9029ch
+dd 0d0f13b5dh
+dd 08c69b6eeh
+dd 04e1dba83h
+dd 09d7cb39eh
+dd 0968b0854h
+dd 0b73ccb08h
+dd 08abb91fbh
+dd 0bf43e4a4h
+dd 0c3b1d2e8h
+dd 0e61bb709h
+dd 0b46ec17bh
+dd 03c05404bh
+dd 04cb0b678h
+dd 0892237b5h
+dd 0fe0943d3h
+dd 0985c0279h
+dd 0dad2a1abh
+dd 045874414h
+dd 05f1e9cf7h
+dd 05b9533c0h
+dd 05ce68c9ah
+dd 0bee5ba1bh
+dd 0cc959f2bh
+dd 09847cd4bh
+dd 08ea7bb11h
+dd 0fc28c6f1h
+dd 0268e8670h
+dd 0cdea61f6h
+dd 06f286461h
+dd 0b82230a8h
+dd 07d16eeb4h
+dd 077d2f817h
+dd 00bb7a988h
+dd 07f6a9d81h
+dd 0e734b3f1h
+dd 0d22c449ah
+dd 04d4e6b6bh
+dd 026fb2455h
+dd 0fa7df19fh
+dd 035323317h
+dd 08251fd51h
+dd 0eae4da3ah
+dd 04c1b3221h
+dd 02a8796a7h
+dd 06c5470bbh
+dd 04965db49h
+dd 0322c55e1h
+dd 0f58b6777h
+dd 065670f59h
+dd 039e91811h
+dd 048d800a5h
+dd 0e70e4a9fh
+dd 0c7e5091eh
+dd 035011f39h
+dd 0ec5790dbh
+dd 08a7a4d87h
+dd 07586e70dh
+dd 04af5f37eh
+dd 0ca994696h
+dd 042874dbah
+dd 065675ea4h
+dd 078124345h
+dd 0959adfb3h
+dd 03873f6cah
+dd 0bd324ef6h
+dd 00f2ff6c8h
+dd 0394ca326h
+dd 0640e6e4fh
+dd 0b84210f8h
+dd 067d90b2ch
+dd 085efccf2h
+dd 0a62adf36h
+dd 0e31d3d57h
+dd 0517a390fh
+dd 0e7678e59h
+dd 0c5c9df88h
+dd 081be2ba4h
+dd 036f6365fh
+dd 0399d0b32h
+dd 0c57e3d24h
+dd 06600a54ch
+dd 01aecf572h
+dd 036ffa33bh
+dd 03f1dd6dah
+dd 023b9a2f4h
+dd 0b2ca3057h
+dd 003923ad6h
+dd 01a9082a3h
+dd 0894b8d6ch
+dd 0b46c3372h
+dd 00073dfcah
+dd 03010e653h
+dd 07621a309h
+dd 0efc46bf3h
+dd 070874e30h
+dd 08cc98f7eh
+dd 094ef0996h
+dd 0ee65c9b3h
+dd 05f446908h
+dd 0e82399cdh
+dd 03bc3ea7ah
+dd 02ebf01d4h
+dd 0784dda7dh
+dd 0f4a32b94h
+dd 08eeae543h
+dd 01c18207ah
+dd 04330f98ch
+dd 0ce285364h
+dd 0acfc42aeh
+dd 017bf33dah
+dd 0a3786284h
+dd 0b4c92501h
+dd 03befca62h
+dd 0f2d95ce5h
+dd 0c7cd4070h
+dd 02b903146h
+dd 0dfaa38d2h
+dd 0c9a4da86h
+dd 07a9afaa4h
+dd 00227d8a3h
+dd 0831ce2d2h
+dd 0162aef0ch
+dd 06edd844ah
+dd 0c122eb56h
+dd 00553bfbah
+dd 041d5e761h
+dd 016728594h
+dd 0e584e060h
+dd 0f1a06200h
+dd 0dddc5e1fh
+dd 00b9b3403h
+dd 0301f5d49h
+dd 0f40bd4dfh
+dd 07d1fd739h
+dd 03fb25bf8h
+dd 05baf35edh
+dd 076a3f5ddh
+dd 000fc8175h
+dd 036a16b5eh
+dd 0fda9a204h
+dd 036b61446h
+dd 0cf2faff0h
+dd 02614d538h
+dd 0383e82a2h
+dd 06c5c871bh
+dd 033f82157h
+dd 0e421ed9eh
+dd 0a510b2dch
+dd 0207c4bbbh
+dd 01b566259h
+dd 04026e2f3h
+dd 0d7eec8d9h
+dd 0cea1890fh
+dd 0333458f5h
+dd 0a02bb939h
+dd 07a32358fh
+dd 056e6c166h
+dd 004956b63h
+dd 0cdf4c66fh
+dd 024c0f444h
+dd 04ba2fccch
+dd 020db1151h
+dd 01292c376h
+dd 06f85e9dfh
+dd 0728f47a9h
+dd 0a1fc70eeh
+dd 038f4fab5h
+dd 07631904ah
+dd 0b6fe3c2eh
+dd 08a372287h
+dd 042266e1fh
+dd 082d635cbh
+dd 019f4e852h
+dd 0f3532d8ah
+dd 0d9f53e41h
+dd 085f490e6h
+dd 0e45309d3h
+dd 0619c3f1eh
+dd 048385ca4h
+dd 02a41735fh
+dd 0c7b61ffah
+dd 04a08af3ch
+dd 0f9ded1dch
+dd 0eac71dc7h
+dd 0625cc945h
+dd 01525969ch
+dd 0900aa166h
+dd 0bf58ef15h
+dd 00aa5a792h
+dd 0d8288e32h
+dd 0b1d9eb84h
+dd 051776b19h
+dd 0d0603e1ch
+dd 0a00856e5h
+dd 0ac061e93h
+dd 07e5b90d9h
+dd 0e80a996dh
+dd 03c147d53h
+dd 0f56afa5bh
+dd 0f7cc6917h
+dd 06281c4d0h
+dd 03685dd8eh
+dd 04564c52ah
+dd 09f296072h
+dd 0c722ca9eh
+dd 0a228baefh
+dd 00c998bc6h
+dd 03392de83h
+dd 02cf24541h
+dd 001388476h
+dd 017b5c868h
+dd 04a59f6ffh
+dd 0f0053873h
+dd 099cc0632h
+dd 0f5197ed6h
+dd 0ab82b4a5h
+dd 0efbe2a22h
+dd 003ea4190h
+dd 035017389h
+dd 0ac1fa64eh
+dd 059e1eef0h
+dd 0084d665fh
+dd 0099efdd8h
+dd 0cb1b31b5h
+dd 07b5d8941h
+dd 0a0c21e6ah
+dd 09d61cc14h
+dd 03d3dd978h
+dd 0178c95aah
+dd 0a9f50ee2h
+dd 0fb673599h
+dd 0eb9262adh
+dd 06a2b2138h
+dd 06812ee61h
+dd 0d58e1ca2h
+dd 01e04f62ch
+dd 019e00009h
+dd 084a6441ch
+dd 0c5db8a53h
+dd 0d503fbd0h
+dd 04653723bh
+dd 0ab9e5c44h
+dd 0f2332880h
+dd 03e8e130ch
+dd 041a4289dh
+dd 03af5c1bdh
+dd 0a3265acdh
+dd 0b30ed350h
+dd 0f2a173cbh
+dd 0d8e0ca31h
+dd 060e7badeh
+dd 0f8b70374h
+dd 05e8ac69dh
+dd 0d0408319h
+dd 0eab9547fh
+dd 0e082632eh
+dd 019ff871eh
+dd 0619c3058h
+dd 08eef5f90h
+dd 0e58d8c3bh
+dd 00900055eh
+dd 0f1216a50h
+dd 05036f04bh
+dd 04cdf70b1h
+dd 035c34071h
+dd 0142f1c1bh
+dd 0fef560edh
+dd 035f9669bh
+dd 09d219ab8h
+dd 02d514657h
+dd 02f72c50bh
+dd 05c3d7799h
+dd 09a62ad3bh
+dd 00cb97d20h
+dd 08d630983h
+dd 09d3c8c30h
+dd 0b7279d9dh
+dd 030526245h
+dd 0137738a2h
+dd 08ddfa919h
+dd 001cfa45eh
+dd 03891de99h
+dd 0a329ecbeh
+dd 0e569a394h
+dd 09740c3f1h
+dd 09caec718h
+dd 083062402h
+dd 08bf8dc5ch
+dd 03de39da4h
+dd 0b6511d51h
+dd 0d838399fh
+dd 0f541eca1h
+dd 0921fbc84h
+dd 02baec46dh
+dd 0f0576869h
+dd 084bfc7ach
+dd 059a8d5f9h
+dd 05bdd61a8h
+dd 03f877076h
+dd 0657825e4h
+dd 0fbcd5059h
+dd 06f974b02h
+dd 056b80115h
+dd 0989a6558h
+dd 06d9237b5h
+dd 0eba1d6d0h
+dd 090be8255h
+dd 020b0e65fh
+dd 06f695022h
+dd 0a932252ch
+dd 0a5f5ee02h
+dd 018344eabh
+dd 0f9fad49fh
+dd 0f66adb3ch
+dd 016a1fd59h
+dd 067f02998h
+dd 089b7a6a1h
+dd 038e66508h
+dd 074e8f1cch
+dd 0649bb03eh
+dd 0105c10aeh
+dd 028ebaebbh
+dd 0362da88ah
+dd 0894b72dch
+dd 07150fddeh
+dd 079cd9ad3h
+dd 0bc9010f7h
+dd 00c721b47h
+dd 0850bad87h
+dd 0096e41ebh
+dd 0c96a5443h
+dd 0854a3b8ah
+dd 0fdbefd28h
+dd 07a974b7bh
+dd 0415c0f6fh
+dd 08604b427h
+dd 0a95d9dd0h
+dd 02c092ebeh
+dd 05476c8a2h
+dd 0c5824aaeh
+dd 09a22438fh
+dd 0bf2405a8h
+dd 0c0fbde12h
+dd 06235ddfbh
+dd 05523d9d3h
+dd 0536f04c0h
+dd 01bfc8433h
+dd 0e0e32040h
+dd 078b77de7h
+dd 0338473f2h
+dd 03c10b31dh
+dd 034d6217dh
+dd 0fd4ed5a5h
+dd 0c9c01cb4h
+dd 029f6b290h
+dd 058b798dah
+dd 032108358h
+dd 029600ae3h
+dd 0f9dd11b4h
+dd 052b919c4h
+dd 063beb18bh
+dd 04dbcf703h
+dd 01eb61ee7h
+dd 05425d8e9h
+dd 097d8b626h
+dd 0de0c9e9eh
+dd 08ebdee7fh
+dd 07da044feh
+dd 021eb0422h
+dd 01f38eb74h
+dd 06633c151h
+dd 0de019812h
+dd 01340a2d3h
+dd 0631297afh
+dd 0846ec994h
+dd 0c5f183a8h
+dd 00926f45fh
+dd 037f2f09ah
+dd 00a4a5677h
+dd 01f597d6eh
+dd 008e3aeefh
+dd 05b1e22f1h
+dd 0171758a6h
+dd 0ff18cf5bh
+dd 0ccbee12fh
+dd 032b27468h
+dd 04320c113h
+dd 09d839ad9h
+dd 040bd1445h
+dd 0673043deh
+dd 02a1146efh
+dd 0ac7c0763h
+dd 05538926eh
+dd 0aa434d0ah
+dd 06c904fd0h
+dd 0411c87d4h
+dd 0f5d28822h
+dd 0d95dfe1fh
+dd 044669a51h
+dd 0b534a1f4h
+dd 06123b403h
+dd 0c331836fh
+dd 0b616df7bh
+dd 027bf28e2h
+dd 0dddfbc03h
+dd 09adef70fh
+dd 0f9578ad9h
+dd 0d2163f9fh
+dd 0dbbc5c68h
+dd 082328e9dh
+dd 095f3cc63h
+dd 0a9b6d873h
+dd 0b20b994ch
+dd 091cc7720h
+dd 0efd6467ah
+dd 03a63fcf2h
+dd 0c1cc6ec0h
+dd 09d477124h
+dd 0a0518697h
+dd 0c505ff17h
+dd 03d48f363h
+dd 0b59507c4h
+dd 015539bb5h
+dd 0d2bff28bh
+dd 039731f72h
+dd 0ee20c99ah
+dd 089868473h
+dd 088cf0030h
+dd 085316cd0h
+dd 0958bdf38h
+dd 0678f4c16h
+dd 0cd4deecch
+dd 0746ac5dah
+dd 0a6847425h
+dd 0eff6e2c0h
+dd 0f2772ecbh
+dd 0b055777ah
+dd 06e7b0111h
+dd 06ecddbe7h
+dd 0ff2edb55h
+dd 01c24a94bh
+dd 04915be19h
+dd 0ded7a0fah
+dd 01d429e65h
+dd 0d5c9737fh
+dd 0fa43045bh
+dd 0307bb61dh
+dd 08c3e4e80h
+dd 0876fd8b7h
+dd 0aca6d255h
+dd 09c3b7e95h
+dd 0ddb35ae6h
+dd 0d2507ea8h
+dd 0c29e9ce3h
+dd 019e66186h
+dd 039f7f635h
+dd 01f3b46c6h
+dd 0de199edah
+dd 079ad26a9h
+dd 03f8956dch
+dd 0d5c4a3f7h
+dd 09d9eb165h
+dd 0c9f336c3h
+dd 07432c605h
+dd 055c39784h
+dd 099a20bf6h
+dd 00493a06eh
+dd 0aed281f7h
+dd 088b3b8abh
+dd 0c37f457ch
+dd 09326b3f3h
+dd 0df7f4e47h
+dd 0498af137h
+dd 091b9a429h
+dd 0996d1737h
+dd 0ad03b8a0h
+dd 0e894c04eh
+dd 06077c884h
+dd 0b92d4b1dh
+dd 0a553ec0ch
+dd 0a279caedh
+dd 00e7c9d04h
+dd 0861eaaafh
+dd 06df20654h
+dd 0da4cfa1ah
+dd 033e52040h
+dd 0c812d10ah
+dd 048ca439bh
+dd 03b949e49h
+dd 049256a59h
+dd 00c6425b1h
+dd 04864ad0fh
+dd 083ca275ah
+dd 0cd1a40e5h
+dd 089b8cbb7h
+dd 00ec1f57bh
+dd 07c26e7a7h
+dd 0a4b67e03h
+dd 0861bf56fh
+dd 03adfb5d1h
+dd 0897e4dd4h
+dd 0dba89687h
+dd 014d4cd26h
+dd 0e28bd8d2h
+dd 045f6689ah
+dd 04e50c115h
+dd 02192c27bh
+dd 0eedcd5edh
+dd 0fa3b6d57h
+dd 0a28b43a2h
+dd 0ee184620h
+dd 06c13276fh
+dd 0814e2510h
+dd 0b0302f82h
+dd 0e33decbeh
+dd 071f7b804h
+dd 0cc1b2315h
+dd 0b5221871h
+dd 06686f4d2h
+dd 0ccbc8c02h
+dd 077ed9cf5h
+dd 0e86c3b87h
+dd 0bb7263a3h
+dd 09e59541bh
+dd 0bb5385bah
+dd 0f782de09h
+dd 0b829d4b5h
+dd 0693a6234h
+dd 0ccf6b771h
+dd 015785d48h
+dd 0f3503791h
+dd 0ca4834c7h
+dd 0d13876e3h
+dd 0e3fe4e2ch
+dd 01534a51eh
+dd 08923e7edh
+dd 01375da3ah
+dd 03e4898aeh
+dd 00d323c11h
+dd 0d4d705cdh
+dd 0f5b7d215h
+dd 005a7c31dh
+dd 05d7011e7h
+dd 0072b5f1ah
+dd 0ecadbfe5h
+dd 00619a9dah
+dd 0552a72beh
+dd 038ae937bh
+dd 0c7a9352ah
+dd 02b21f688h
+dd 04b35aa8ah
+dd 0c096b2e9h
+dd 004defbc5h
+dd 079514b31h
+dd 01b95c9e9h
+dd 054c97777h
+dd 0e2909ee6h
+dd 0a25d7ce2h
+dd 0f5232498h
+dd 05b306b4ch
+dd 07c1ee168h
+dd 00dc090dah
+dd 06ca0c6fbh
+dd 05aebe77fh
+dd 033e61ef4h
+dd 07573f715h
+dd 056a464bah
+dd 03cec6260h
+dd 09e372105h
+dd 00208d3e1h
+dd 0c577bf57h
+dd 0aadd9359h
+dd 0a8359ebfh
+dd 062fa875eh
+dd 04d2cd8cfh
+dd 0629b0824h
+dd 05ea4accdh
+dd 01f6032f1h
+dd 0014ebec4h
+dd 04c6982dch
+dd 04016c29bh
+dd 014db1c99h
+dd 0ad823758h
+dd 0e640e13eh
+dd 03613dd8dh
+dd 0b7f4552ah
+dd 06d006a9bh
+dd 01fa01b02h
+dd 03f8e903dh
+dd 0c7b3ad3ch
+dd 01dbcb367h
+dd 0e4a63de5h
+dd 0ac5a9c3dh
+dd 073626598h
+dd 03a7ce9e6h
+dd 02b80114dh
+dd 054679d12h
+dd 016aafd66h
+dd 07527d91eh
+dd 06faa5378h
+dd 0559ab56bh
+dd 0510141e8h
+dd 0219e3746h
+dd 00beedfa9h
+dd 093e7f048h
+dd 0ad1cc82ch
+dd 0ee1cdad3h
+dd 0c2cfdd70h
+dd 0cb8b813fh
+dd 0540badabh
+dd 04967dab3h
+dd 0a7720ed2h
+dd 0c883cde1h
+dd 0474a4b47h
+dd 08d8145d2h
+dd 0d10ff1cdh
+dd 0bbd77fdeh
+dd 063f3bfe3h
+dd 0186e1912h
+dd 0f7a7fe49h
+dd 068f97f37h
+dd 000ed113ch
+dd 02129100bh
+dd 093ecab09h
+dd 0105c2310h
+dd 010449844h
+dd 0e7cfaf25h
+dd 0da048031h
+dd 0d7befb02h
+dd 0d6079f44h
+dd 0161d7a6fh
+dd 056e32daeh
+dd 069f9202fh
+dd 0c72aaccch
+dd 0b34239adh
+dd 069416a57h
+dd 0111ed280h
+dd 0a9fd1c24h
+dd 0ad52b0a6h
+dd 01d793738h
+dd 0f5e81b4fh
+dd 06b9bf8b9h
+dd 0b38ff61eh
+dd 08dddd377h
+dd 0fcb38904h
+dd 034f54591h
+dd 0c3020c69h
+dd 0935c5135h
+dd 02f1035cfh
+dd 051680ad5h
+dd 0e01eda1bh
+dd 0cdc6c272h
+dd 02806efc7h
+dd 0d4821df2h
+dd 04d1bc270h
+dd 0644165c5h
+dd 0507dc65fh
+dd 00ecdaccch
+dd 01174897fh
+dd 0d03633a3h
+dd 0ba829ee4h
+dd 01404d63fh
+dd 003f3cffdh
+dd 0bf01ee93h
+dd 07abbe879h
+dd 0b126a7f4h
+dd 0aba37014h
+dd 0da6c7fdah
+dd 05a37c063h
+dd 0baf27842h
+dd 0a93378bfh
+dd 0ef31f80dh
+dd 0861de9fdh
+dd 0345ce823h
+dd 0e25ae78eh
+dd 0cc470d6fh
+dd 043e4f23ah
+dd 03274b96ch
+dd 0e9783761h
+dd 07c58db5ch
+dd 0a56b4afdh
+dd 04f16b2f7h
+dd 0dac0a38eh
+dd 00fe57199h
+dd 04ffc3424h
+dd 0062a6ba5h
+dd 0322d6122h
+dd 05c6b66fdh
+dd 0d5056352h
+dd 08fb5b29bh
+dd 0cdc4fcb0h
+dd 0d38c6fdah
+dd 0d12b6004h
+dd 0712bf9dch
+dd 02216e94dh
+dd 05de065ebh
+dd 02ce5c7eah
+dd 087cb30e3h
+dd 000e306e4h
+dd 075451c0fh
+dd 0d31ecdfch
+dd 0fdea0e98h
+dd 0a7cb80a6h
+dd 0c536bdd6h
+dd 0d44a0c75h
+dd 0605e7395h
+dd 022841199h
+dd 0b4337a2bh
+dd 01daa150ah
+dd 008365a0eh
+dd 01ffee443h
+dd 055e9c54ch
+dd 015c80593h
+dd 00ed7ea0ah
+dd 0ac70fe70h
+dd 0fea1800fh
+dd 052881494h
+dd 09ae5df75h
+dd 04be287f1h
+dd 0f703491ch
+dd 07cd045ebh
+dd 09be4ac5bh
+dd 047c879dch
+dd 06516ceb4h
+dd 0e116b172h
+dd 0183680fdh
+dd 044362d5ch
+dd 013a66981h
+dd 03c88e81eh
+dd 07bc816cah
+dd 06883d19ch
+dd 0397f35beh
+dd 0adceaa6dh
+dd 0a3305f36h
+dd 0c9ab9a6fh
+dd 0581f9ef4h
+dd 00f350775h
+dd 08065f490h
+dd 05389c689h
+dd 04e3d507eh
+dd 0672f7299h
+dd 0266cfb4dh
+dd 07fee0ee8h
+dd 066d1159bh
+dd 00a24cf8fh
+dd 0ecd0e717h
+dd 0afff6769h
+dd 0bf4d28e2h
+dd 070e5b7c3h
+dd 0db690d2dh
+dd 0edf539f3h
+dd 0af05604ah
+dd 02b5d2c25h
+dd 0c74ccb5fh
+dd 0b9e3902bh
+dd 0170030b8h
+dd 088bb0ff7h
+dd 00dc28e29h
+dd 0f40b8887h
+dd 07eb0a87ch
+dd 0d9ad634dh
+dd 099905d9bh
+dd 084d82e6ah
+dd 0d0f7301ah
+dd 016f61cd4h
+dd 0cc9ed21dh
+dd 02b16d356h
+dd 0b0b1b4cch
+dd 01a412bcah
+dd 0c8ad6305h
+dd 08ec45518h
+dd 0dec2cec1h
+dd 0cc98b86bh
+dd 0d2537914h
+dd 0abdba440h
+dd 024ee88ceh
+dd 0b09fd5eeh
+dd 0c186299fh
+dd 084e79338h
+dd 0b544cf64h
+dd 0c39564b0h
+dd 0f952fbcah
+dd 0b4437ed6h
+dd 0687fe1a9h
+dd 0a17be616h
+dd 07c506035h
+dd 0121a53d0h
+dd 01fcc55b4h
+dd 04bd2cacfh
+dd 063043f51h
+dd 0af52b425h
+dd 0a8a8e493h
+dd 07715f28bh
+dd 092ca8132h
+dd 0160904a1h
+dd 0e501168eh
+dd 04a73794bh
+dd 0e9b00acbh
+dd 073dba38ah
+dd 01febcd92h
+dd 0dd9d9f18h
+dd 0f71b53dfh
+dd 0f90a1113h
+dd 01f754e11h
+dd 012b15657h
+dd 093cfd242h
+dd 02a6ecf80h
+dd 041ed4db1h
+dd 098542bc2h
+dd 0ed645a18h
+dd 0e9af46f7h
+dd 0cd9c6ab0h
+dd 027987d9eh
+dd 033bdd26fh
+dd 0b6bdcdd1h
+dd 0ea4393cbh
+dd 07166d213h
+dd 087709918h
+dd 0f2ac9415h
+dd 0845e63e8h
+dd 0979bd0f2h
+dd 05df65247h
+dd 03901c594h
+dd 0a258fe9dh
+dd 0fb728393h
+dd 0c894b8f4h
+dd 0c6fcded4h
+dd 0cffc2a19h
+dd 0aa6a7565h
+dd 012a77016h
+dd 095ec4037h
+dd 02387145bh
+dd 05811e576h
+dd 089eea511h
+dd 0c18ad968h
+dd 0d2df2b73h
+dd 07f425218h
+dd 09388b276h
+dd 0b0f10a0ah
+dd 019fd5ca3h
+dd 0d841db68h
+dd 0ef99a8dch
+dd 00b556896h
+dd 0f99fee66h
+dd 0213aa9f1h
+dd 0d0df6710h
+dd 022292c63h
+dd 09221ca1ch
+dd 0f19ca762h
+dd 069343c48h
+dd 0339612dfh
+dd 0f0ecbd35h
+dd 07345e8d9h
+dd 08480e771h
+dd 075b6a315h
+dd 00685929eh
+dd 025dac56fh
+dd 02e436b8ah
+dd 056578404h
+dd 0d8f8d01ch
+dd 0c2dea4e8h
+dd 00c57660bh
+dd 04a230beah
+dd 0dac0e77eh
+dd 09b84e6cbh
+dd 019dcc770h
+dd 03d2c6ad9h
+dd 0c1e82b56h
+dd 0ca29888dh
+dd 040ff8f54h
+dd 0fa875251h
+dd 0c9e23e7bh
+dd 0c44d89cfh
+dd 0ae46a1e9h
+dd 0d9fa000ch
+dd 03bab93d2h
+dd 063da3ee2h
+dd 0dbdbbcdeh
+dd 07df98378h
+dd 0cccebdddh
+dd 04cc7dc23h
+dd 00dd25a5fh
+dd 0c505a8fah
+dd 023293068h
+dd 0bf6d9d8eh
+dd 061b75523h
+dd 0e54219e4h
+dd 0270760dch
+dd 056dad833h
+dd 03d3ecafch
+dd 02bed8196h
+dd 06b049bdbh
+dd 04799f777h
+dd 09f907babh
+dd 054338bd7h
+dd 0d8a9496eh
+dd 07a151f90h
+dd 06c632230h
+dd 079280969h
+dd 073d876b8h
+dd 034993952h
+dd 0a493e591h
+dd 043517d6eh
+dd 0e5bb7e54h
+dd 0b792cb79h
+dd 0095c0f22h
+dd 02bc02245h
+dd 0462c2ebdh
+dd 01194a080h
+dd 0dae8a99fh
+dd 0d236685ah
+dd 0a2041ca1h
+dd 05a01a7f7h
+dd 0146efedbh
+dd 0b8bb9031h
+dd 0657017d0h
+dd 071c8fc4ah
+dd 0a93c32ach
+dd 0d83db0c2h
+dd 0ff03f01fh
+dd 03d334bf2h
+dd 0d4193258h
+dd 07577f56bh
+dd 01e3de018h
+dd 0a03eaa98h
+dd 018b7299fh
+dd 02e8152aeh
+dd 0e906ccd8h
+dd 022413205h
+dd 0bfacdf3ch
+dd 071af6cf7h
+dd 03a8b4ecfh
+dd 04e566f5ah
+dd 0309b88fdh
+dd 00fa57a96h
+dd 0e0113a0eh
+dd 0182639a0h
+dd 03bc60c5bh
+dd 0b8e97093h
+dd 0637268d3h
+dd 01aed9813h
+dd 0d8f61c3bh
+dd 02bbaa6c5h
+dd 0a1ade9bfh
+dd 0c05aa8d5h
+dd 01be7309ah
+dd 0f94a4b11h
+dd 020036791h
+dd 04611f52bh
+dd 0288b1387h
+dd 0ee7e328eh
+dd 01cced865h
+dd 056ba706fh
+dd 0fb3b4c00h
+dd 091ebe63eh
+dd 0d121e677h
+dd 08395ee43h
+dd 018082f44h
+dd 081ba042ch
+dd 05a0473b3h
+dd 03e379537h
+dd 028382766h
+dd 0305e4394h
+dd 0e78226f7h
+dd 0808dee3ch
+dd 0eb2599f6h
+dd 0b7727ef1h
+dd 096241df6h
+dd 019d11550h
+dd 01e4697c3h
+dd 0aec84039h
+dd 019219669h
+dd 0b4de7d59h
+dd 0e5d5fabdh
+dd 0d917b1d3h
+dd 06675363eh
+dd 0fcc6c0c5h
+dd 02517ffcch
+dd 09d490fd0h
+dd 0a898a847h
+dd 03231c90ch
+dd 0bd7cc82bh
+dd 07ed38fcch
+dd 0e63403aah
+dd 0732c15dfh
+dd 00ce4acc0h
+dd 0eb6d94b7h
+dd 0202b47d2h
+dd 061c4ebb4h
+dd 05feb8faah
+dd 052de2121h
+dd 0f905f44eh
+dd 00b6b2450h
+dd 01f8d338ah
+dd 030e55a2dh
+dd 01973ef31h
+dd 0f4c0d8c9h
+dd 0754f0128h
+dd 0ade1aac1h
+dd 08b1c7ecbh
+dd 03fd1a12bh
+dd 03dd93defh
+dd 0268b61c3h
+dd 05e503a90h
+dd 01a3d3638h
+dd 09ae20633h
+dd 0268c8a39h
+dd 03d1ba9a8h
+dd 06d721668h
+dd 029015413h
+dd 0a6507a13h
+dd 0a514fdf9h
+dd 07938f33dh
+dd 0b2dcad13h
+dd 067a5f533h
+dd 0e3ea16bch
+dd 0e9c45033h
+dd 07b568507h
+dd 06e18600bh
+dd 0913e788ch
+dd 0a309118ah
+dd 057f245bdh
+dd 089e0b99fh
+dd 0795e2437h
+dd 0fae7ed9ah
+dd 0503ba446h
+dd 0e2fb9afch
+dd 070d7a9beh
+dd 0f130ec5fh
+dd 0e475f106h
+dd 0c40c3e4eh
+dd 098b3d479h
+dd 07ade6c49h
+dd 0d164e786h
+dd 0a41fda0fh
+dd 05a385ca1h
+dd 074fc5747h
+dd 0dfb77fadh
+dd 00159e5e2h
+dd 0434a3163h
+dd 0100690fah
+dd 00bb9cfd3h
+dd 0fef2251fh
+dd 0cc4a6154h
+dd 07a019207h
+dd 0535b3152h
+dd 0e5be6955h
+dd 00f724e37h
+dd 074e77f38h
+dd 039b9e374h
+dd 05f9a7babh
+dd 0babb979ah
+dd 07b7cde03h
+dd 009b3486ah
+dd 0b5db9d9fh
+dd 0c3260dd4h
+dd 0188bc7c5h
+dd 0f16a8ffbh
+dd 090080923h
+dd 09fc3c2c0h
+dd 0133a469eh
+dd 06bd9d968h
+dd 0283496e9h
+dd 0c986ce58h
+dd 0c2ac942dh
+dd 06c57d311h
+dd 01b5cc2ach
+dd 0f49d21a1h
+dd 081d9f744h
+dd 04e6889dbh
+dd 0a78a37e8h
+dd 08a7a54feh
+dd 080e96e8dh
+dd 05b5c177eh
+dd 09ea80577h
+dd 03d176624h
+dd 0d68bdffch
+dd 0a94182fdh
+dd 02155561ah
+dd 02a70b9b3h
+dd 0e067c378h
+dd 035f77066h
+dd 085283c55h
+dd 0c48c369ch
+dd 0185640f3h
+dd 0c62c4aa6h
+dd 0a31b486bh
+dd 0897e7cc7h
+dd 04f7fd64dh
+dd 05c988ca3h
+dd 0b1fecca4h
+dd 0f602fe88h
+dd 0e9a9a935h
+dd 0ad378762h
+dd 0f1c606eah
+dd 0c39cc69eh
+dd 08a4edcd9h
+dd 0fa5e2a93h
+dd 047c78754h
+dd 002ba695ah
+dd 0bb6fc0a1h
+dd 0e1087946h
+dd 0693d4f09h
+dd 02d684cd4h
+dd 062da4a27h
+dd 01f0f66dah
+dd 0e78a60c8h
+dd 0a3fe344fh
+dd 08e9a969fh
+dd 06a8f8b78h
+dd 002831b06h
+dd 0b8d5ec3ch
+dd 09fc46732h
+dd 002a6fb9ah
+dd 0309343d7h
+dd 0535cbe7eh
+dd 0e6893c26h
+dd 09f0dc124h
+dd 042f55600h
+dd 0cb565330h
+dd 0d4c7e463h
+dd 03ea482e7h
+dd 09ea4e56fh
+dd 08ae8f1bah
+dd 0d8fa1d72h
+dd 02ff2d849h
+dd 0c42b5a10h
+dd 0162dcd89h
+dd 02215dd0eh
+dd 0128dc5d8h
+dd 04fbe5f9bh
+dd 0d9e7bdefh
+dd 01130ab3ah
+dd 044ddc938h
+dd 0931c612ah
+dd 0ab8f61c5h
+dd 04eed4328h
+dd 036e1c1aah
+dd 03c206df6h
+dd 0bca9c336h
+dd 03754abceh
+dd 0b267b49eh
+dd 09ddd7190h
+dd 024c5cf9bh
+dd 00c69942fh
+dd 02d1d2c6dh
+dd 0b9d4d397h
+dd 062f5f30ah
+dd 0fca5dfa1h
+dd 0a0f0055eh
+dd 0adf2db7bh
+dd 01ec154cbh
+dd 042e7e610h
+dd 0b653f031h
+dd 0a992f220h
+dd 065f373d2h
+dd 0a1b2deb8h
+dd 08d47df75h
+dd 0169da79eh
+dd 0657f2000h
+dd 0aeb8b5a4h
+dd 0d6a66f1ch
+dd 0e2610488h
+dd 0d41efac7h
+dd 040d78a5eh
+dd 0c66343d5h
+dd 07465f009h
+dd 0c9cf383fh
+dd 04b079f8bh
+dd 01b8889d0h
+dd 04357cd53h
+dd 09f88bfcbh
+dd 0b9ede108h
+dd 0b230ce7fh
+dd 03b077021h
+dd 0ccd6ef29h
+dd 03d41c312h
+dd 0c51e1f18h
+dd 06c230b94h
+dd 0e9780491h
+dd 0df70fae6h
+dd 0d745a7c3h
+dd 0ec3579e8h
+dd 09cd68859h
+dd 00aa9d554h
+dd 0b8d12acah
+dd 0f08ddeaeh
+dd 069fc2a80h
+dd 01172b481h
+dd 09915c9dah
+dd 098115310h
+dd 02fbd1c00h
+dd 06a5077d8h
+dd 0e32171d8h
+dd 003f2da53h
+dd 02138ac24h
+dd 0b8386662h
+dd 0a27b7fd6h
+dd 07b9e9885h
+dd 098565210h
+dd 0967a7c1fh
+dd 0c40dafcbh
+dd 0d0547f06h
+dd 080c34ca4h
+dd 020716182h
+dd 009079b5dh
+dd 054a5557ch
+dd 025a4fb67h
+dd 0a8509a65h
+dd 03f9431f0h
+dd 02ef3a925h
+dd 0ee879bd9h
+dd 041dece1ch
+dd 0bef7a14ch
+dd 05b5c4530h
+dd 026976aa3h
+dd 04df72538h
+dd 0263b671fh
+dd 0094c9681h
+dd 056fd5355h
+dd 044253112h
+dd 0199dd8f9h
+dd 060e962feh
+dd 0c2b6f8a3h
+dd 0087e8f88h
+dd 0d6ee8a22h
+dd 0df820798h
+dd 098c9a11dh
+dd 0e3295d2eh
+dd 05f37858dh
+dd 0c9ed4985h
+dd 094ec3ab5h
+dd 042f2a418h
+dd 0806cc253h
+dd 03a173582h
+dd 0a2f54374h
+dd 0ce4a551ch
+dd 034892b7bh
+dd 069bb2c82h
+dd 048503c92h
+dd 0fd2916efh
+dd 0ce49bd4eh
+dd 0bf43e08dh
+dd 0a2cd089bh
+dd 02cd0b736h
+dd 04dc3ccb4h
+dd 025af4c61h
+dd 036671c7ah
+dd 0d073585bh
+dd 09b6f7754h
+dd 06fe1805fh
+dd 09b2d4d7fh
+dd 09314d3c2h
+dd 030b6711dh
+dd 0b5f9ae9eh
+dd 0bdbcaacdh
+dd 0adf9f1e7h
+dd 0cac63724h
+dd 02100b72ah
+dd 0ee534d32h
+dd 07003996ch
+dd 03821c987h
+dd 00ef11f53h
+dd 06e87a946h
+dd 0ffd2816bh
+dd 0e92e298eh
+dd 035e64e74h
+dd 0c9cb6a22h
+dd 0f30b2d82h
+dd 0604ca438h
+dd 0e06501d7h
+dd 0663dbc8eh
+dd 0d941cd4ch
+dd 0c2bc86bfh
+dd 0e231be27h
+dd 0fd3475e5h
+dd 0843237a1h
+dd 07e4ee4abh
+dd 066b0e7f6h
+dd 0af93c9d5h
+dd 07c372cf5h
+dd 0236801d5h
+dd 02b9de977h
+dd 0d3c8dbceh
+dd 0098c754bh
+dd 0ce59a3e8h
+dd 0a5126942h
+dd 08b4fa91ah
+dd 0d4b4830ah
+dd 0fd58377fh
+dd 0b87cf469h
+dd 0f394dc7eh
+dd 0e797128eh
+dd 0dfcdf9f5h
+dd 0329f1ac3h
+dd 07e1a890ch
+dd 0b41351dch
+dd 041afdddfh
+dd 0af4800adh
+dd 07dc18d4bh
+dd 03a51c1c4h
+dd 01c290be7h
+dd 0e75d0403h
+dd 01fad69e5h
+dd 02f9a1501h
+dd 0b5be1b68h
+dd 036590bd2h
+dd 067c0b4bch
+dd 019776b7dh
+dd 016d77acdh
+dd 061e248ach
+dd 0d751ef6ah
+dd 030ec8c76h
+dd 0228de54eh
+dd 08b031909h
+dd 0fa436852h
+dd 02e17f9feh
+dd 0adf79b0fh
+dd 0b4fe6e94h
+dd 00110c901h
+dd 07b0d5aa5h
+dd 0662e61b7h
+dd 0b89f0840h
+dd 077e55f13h
+dd 0c10b1469h
+dd 0135a6199h
+dd 03ba9df4ah
+dd 05383bd3eh
+dd 0ae050f8fh
+dd 0c57947a3h
+dd 0c1bf78bfh
+dd 0f33c32beh
+dd 037b4e96dh
+dd 0ebf30a39h
+dd 0d9e8368bh
+dd 0fe3138f5h
+dd 040f3f821h
+dd 031f80e92h
+dd 08472dddah
+dd 0b1f0ff7ah
+dd 0989e3b0ch
+dd 036d90d2dh
+dd 01abe7df3h
+dd 074ed86adh
+dd 03199dc48h
+dd 0f1898061h
+dd 0c4f1bb4ch
+dd 0646b9bdch
+dd 09d1ba139h
+dd 0b7044fc5h
+dd 037cae825h
+dd 08aef7270h
+dd 0001310c0h
+dd 0722e3860h
+dd 092103dd2h
+dd 0f26ff243h
+dd 0500ff084h
+dd 0ac03aa34h
+dd 04f7d81e7h
+dd 0985d713bh
+dd 0467bff8fh
+dd 08d29fb2ch
+dd 0797c9359h
+dd 0c29ab3aeh
+dd 050196b38h
+dd 063cf90dfh
+dd 0007f550fh
+dd 0b1a35ad1h
+dd 0a9e29383h
+dd 0bea9026ch
+dd 07a9ecf9eh
+dd 0cc01bcceh
+dd 0b8926917h
+dd 07e3c4478h
+dd 05ed66f5eh
+dd 07c8e9752h
+dd 0048a41dch
+dd 0fd0b7c4bh
+dd 04e0a1360h
+dd 01146b0eah
+dd 09317c843h
+dd 021e940cbh
+dd 01876b186h
+dd 06176ed4fh
+dd 0b0e452e3h
+dd 0c484e2bfh
+dd 0fbf4a2a7h
+dd 0145771d9h
+dd 0a91022e8h
+dd 0a5f733abh
+dd 073b99194h
+dd 0e7e096b9h
+dd 0f617c198h
+dd 07b859235h
+dd 03397d3beh
+dd 07b3e740bh
+dd 00850eb48h
+dd 0a3add111h
+dd 0bd8c6323h
+dd 002f82f8bh
+dd 00fce91c4h
+dd 09ec9ec60h
+dd 0a0c76f0eh
+dd 03de27f72h
+dd 007c47924h
+dd 0e9283e73h
+dd 039ec2b34h
+dd 0d4e8a8ffh
+dd 09d9f8144h
+dd 0a399f87bh
+dd 084c16733h
+dd 043e7b414h
+dd 0dd1a603eh
+dd 00aa2f763h
+dd 05617b195h
+dd 054d255eah
+dd 0f697ef76h
+dd 0758479b9h
+dd 09a439191h
+dd 03c7a1857h
+dd 077a30e13h
+dd 0bb508a00h
+dd 09710dea2h
+dd 0bc4fecbch
+dd 0656dcaa4h
+dd 054820626h
+dd 01c6cc0e9h
+dd 0b7949b93h
+dd 05278a58fh
+dd 06fd638a0h
+dd 0b386a738h
+dd 009abc109h
+dd 0a4844a5dh
+dd 09943d7a4h
+dd 010b3896ah
+dd 031173babh
+dd 090466524h
+dd 0ed387d6dh
+dd 025f6bf3ch
+dd 0fd634603h
+dd 0c03e2553h
+dd 0da65f521h
+dd 07e8d3078h
+dd 0be9e2c53h
+dd 0b6b74c25h
+dd 0f59f4f1dh
+dd 069622efeh
+dd 075ec9d89h
+dd 024e4716ah
+dd 0aa437d1ch
+dd 073e65d0bh
+dd 03d3fd9cdh
+dd 037e74e09h
+dd 091861434h
+dd 00b3bb8bfh
+dd 0436957b7h
+dd 063cad581h
+dd 03ba4ca0eh
+dd 097d60595h
+dd 088c79788h
+dd 07d0f6775h
+dd 0dcb585d0h
+dd 06e19909ah
+dd 048d8200ah
+dd 018df9ec9h
+dd 0c7d33b1dh
+dd 00bf7f669h
+dd 0217fff3ch
+dd 03bb5728fh
+dd 016ce1804h
+dd 093b414f8h
+dd 018967071h
+dd 008528268h
+dd 0d9a9b21dh
+dd 06c8f3897h
+dd 0572ba946h
+dd 0da25fbbeh
+dd 07c899153h
+dd 08a945719h
+dd 09f19bc8ch
+dd 0014bb2bdh
+dd 077bbf2deh
+dd 0098cfde8h
+dd 0376e2d3dh
+dd 0bddac4edh
+dd 0842e8af0h
+dd 0d74a2b89h
+dd 0b23c1888h
+dd 07bcb81a3h
+dd 030c25fb3h
+dd 04e3b00aeh
+dd 0d5b10693h
+dd 096fbd533h
+dd 0f5bfcd8ch
+dd 0c352ccc5h
+dd 02033969eh
+dd 0c8f8bdbdh
+dd 079de1432h
+dd 0e56ace48h
+dd 03a10715ah
+dd 04a261903h
+dd 03f8cd2dch
+dd 0f3b69687h
+dd 0444f2185h
+dd 071a1a3eah
+dd 075749734h
+dd 01ce80671h
+dd 096fabc9dh
+dd 097db0537h
+dd 0888a9ef8h
+dd 034e60329h
+dd 0dafdb987h
+dd 02bf65661h
+dd 091302012h
+dd 0325f99dch
+dd 071322e87h
+dd 0a915152dh
+dd 07884e674h
+dd 004ef0860h
+dd 083faf508h
+dd 0cca4f3a8h
+dd 0ddfa005fh
+dd 085494bdah
+dd 0c922cd69h
+dd 026c0704fh
+dd 0b4c01cf3h
+dd 006216596h
+dd 0666cd2bdh
+dd 035f474b5h
+dd 0f2eb3692h
+dd 0f8df34dfh
+dd 05d5074f5h
+dd 060248e71h
+dd 0c0cd7983h
+dd 03ba1af5fh
+dd 0c751cc79h
+dd 0078e0348h
+dd 0ea67f7cbh
+dd 071add0d6h
+dd 05d366b0bh
+dd 03be4e7d9h
+dd 06605abc7h
+dd 068571d8bh
+dd 080aefc5eh
+dd 0c27d8625h
+dd 0f8abc484h
+dd 0d9e2dbe5h
+dd 0c2a172d3h
+dd 0232fdbc3h
+dd 0508e6297h
+dd 039b06622h
+dd 0ffb67ef3h
+dd 07bad5edch
+dd 09d17efb3h
+dd 067f04744h
+dd 0e2706da6h
+dd 020740bf9h
+dd 03d4cad01h
+dd 01183f6cdh
+dd 0233467b4h
+dd 0e9808d74h
+dd 081ae6650h
+dd 0c98d4a92h
+dd 0d915b84dh
+dd 04ffcc31eh
+dd 06e8fd736h
+dd 0d4c497eeh
+dd 030d35da4h
+dd 069070176h
+dd 02c0fb72dh
+dd 01d3f390fh
+dd 0ad18b567h
+dd 048be59c7h
+dd 04271a153h
+dd 0e2f48ca4h
+dd 0ccffaa44h
+dd 000ec5eefh
+dd 0657ac63fh
+dd 0b37968adh
+dd 0328a3f1eh
+dd 038b8910dh
+dd 045ccbae7h
+dd 02dc74189h
+dd 05723d6bfh
+dd 0e6c687f6h
+dd 09ca2e723h
+dd 04d52eb44h
+dd 0e938f850h
+dd 0164c5c79h
+dd 0eb04943bh
+dd 079f6f949h
+dd 0121f1233h
+dd 06afdecf2h
+dd 00a21ffd0h
+dd 07024ecafh
+dd 0e616fa46h
+dd 0cae26033h
+dd 07c3ac857h
+dd 08ccbc3fch
+dd 0262f4e9dh
+dd 09724832dh
+dd 0bad55993h
+dd 0fc1226feh
+dd 095e614bch
+dd 0f7e1e075h
+dd 02e678628h
+dd 0fe7c5211h
+dd 019163c6dh
+dd 05b9d4978h
+dd 0b56e9304h
+dd 086058bfeh
+dd 0b98d782ah
+dd 0a72b626ah
+dd 0361f6d7fh
+dd 0764eac53h
+dd 0edb65752h
+dd 02143d387h
+dd 09bfa6f35h
+dd 0e8368630h
+dd 0dbdc0d51h
+dd 0b74a7091h
+dd 0b2d030f0h
+dd 0472e0625h
+dd 039326542h
+dd 051905a42h
+dd 0aac110afh
+dd 0caf8ad43h
+dd 0c8d37576h
+dd 049723b08h
+dd 010e45179h
+dd 0fac178b5h
+dd 0cf5223e0h
+dd 0710e4372h
+dd 044549328h
+dd 03e0ca9b5h
+dd 031928e40h
+dd 0fcdaaddbh
+dd 0d107e4d3h
+dd 008b973c1h
+dd 07a065a6bh
+dd 097cd8fe4h
+dd 0b7cfc907h
+dd 05bf33caah
+dd 0983d3daah
+dd 0e160aaa4h
+dd 0e6544d67h
+dd 068376593h
+dd 0b5bf9faah
+dd 0212c9e10h
+dd 08b1e965bh
+dd 046b05481h
+dd 095d4a1ffh
+dd 03bf126ffh
+dd 058ddfcdfh
+dd 095a9eed4h
+dd 0f72aea11h
+dd 040a6aa43h
+dd 0d045205dh
+dd 0d8cf2d6dh
+dd 028dc9f9fh
+dd 0ddabc62dh
+dd 04b7fc13fh
+dd 0a5435f6dh
+dd 04052a529h
+dd 012b194bdh
+dd 063d0ab31h
+dd 05d6d417dh
+dd 0cdec2ae1h
+dd 0b2351be3h
+dd 0c422a9fbh
+dd 0166e8603h
+dd 009c6f9efh
+dd 0c493bb9bh
+dd 05a0d3ee8h
+dd 05cac10c9h
+dd 037ddcffbh
+dd 02dee7d01h
+dd 0ae6fd201h
+dd 00dcca99ah
+dd 05e935059h
+dd 09db930f0h
+dd 0748976adh
+dd 06778e93dh
+dd 05bf9ab63h
+dd 007f27e5fh
+dd 00defcf86h
+dd 0a4343fa3h
+dd 09cf2f733h
+dd 04a3ba471h
+dd 04dc3de27h
+dd 0a329d424h
+dd 009535d12h
+dd 0939c0546h
+dd 00eec8e74h
+dd 042909935h
+dd 078a7c59bh
+dd 00310563ah
+dd 0bbb8988ah
+dd 02abcb639h
+dd 0a37ace50h
+dd 0ff90dc56h
+dd 06cb44e81h
+dd 0df5aeb2bh
+dd 0bf99416ch
+dd 0056d12cah
+dd 0b72984a1h
+dd 03777e35ah
+dd 04fe47fa9h
+dd 0f83b2e14h
+dd 0f2eaea7ah
+dd 0a244fa13h
+dd 0ca4ed9ech
+dd 07cbcfe3dh
+dd 0d84e0641h
+dd 07898d4a8h
+dd 04e478c71h
+dd 05705b462h
+dd 0b8b874b5h
+dd 0048f7abbh
+dd 070400d40h
+dd 0a4001b37h
+dd 0a97e39b3h
+dd 06302cb90h
+dd 089272bb2h
+dd 0e4a7e2deh
+dd 09a383040h
+dd 0ad7867dah
+dd 08173c6fbh
+dd 044a11704h
+dd 080d5982fh
+dd 0953cb7d4h
+dd 02965a374h
+dd 013d61957h
+dd 05a57fe86h
+dd 0e5d82179h
+dd 08409f5d2h
+dd 071f39b40h
+dd 041f31eech
+dd 018ba6390h
+dd 03939ee16h
+dd 0481e59d5h
+dd 07de5fe33h
+dd 07d9fa252h
+dd 0b8b3c2e0h
+dd 07447d91eh
+dd 01d21a72fh
+dd 0aed09ea5h
+dd 07b0fcc19h
+dd 0b2d2b2b1h
+dd 0214de7b0h
+dd 021682301h
+dd 07eb71637h
+dd 028bda90eh
+dd 0217bc7a3h
+dd 048b18bf8h
+dd 0f38e7ae7h
+dd 06ba60764h
+dd 0c84de3c7h
+dd 055043e93h
+dd 09f9af524h
+dd 0db0e6a7ch
+dd 0cb41fc7ch
+dd 0e2a2a667h
+dd 002d4471bh
+dd 0bd7ddd18h
+dd 00094362ch
+dd 0c30eaeach
+dd 0ae76b6fch
+dd 05d8e2319h
+dd 0a0126a39h
+dd 0e355be2dh
+dd 094f3d876h
+dd 0a1bbe76ah
+dd 0854a6659h
+dd 0836f85efh
+dd 00a5991eeh
+dd 06a9d3711h
+dd 09fd769ffh
+dd 07559c7e4h
+dd 0d9d9fec9h
+dd 089379821h
+dd 0da319613h
+dd 08783b219h
+dd 0826b0ea3h
+dd 0314f851dh
+dd 0ebb55d74h
+dd 099ec3f1ch
+dd 0f019905ah
+dd 038eeaa48h
+dd 0560d9d18h
+dd 0e4f3859fh
+dd 062dbd6c9h
+dd 0d1dd9cd0h
+dd 01cdba963h
+dd 0598eb415h
+dd 04877ad0fh
+dd 0d41642c9h
+dd 048430217h
+dd 01ff7a239h
+dd 0017b3e18h
+dd 03a434549h
+dd 039bf2b10h
+dd 054f680c1h
+dd 0ae0912a9h
+dd 01d9e8d37h
+dd 0482df81eh
+dd 06ad11c10h
+dd 0fd0f6b16h
+dd 0617f0640h
+dd 03d669e81h
+dd 0effdbf68h
+dd 0d3cf773eh
+dd 035e8544ah
+dd 0fdb4aef7h
+dd 00e04363dh
+dd 047fb9e56h
+dd 0928f4791h
+dd 02386493fh
+dd 0136c45e4h
+dd 09f0d53d7h
+dd 09037cd84h
+dd 0a332a7ffh
+dd 0343240f7h
+dd 032df5e90h
+dd 029b77cc0h
+dd 065649854h
+dd 0b01b16cch
+dd 054107623h
+dd 02e6e0140h
+dd 064a7d402h
+dd 0d73e9ca1h
+dd 046d20632h
+dd 047703cb1h
+dd 0b9563a74h
+dd 00104f99fh
+dd 0dcd7a34bh
+dd 08ba67007h
+dd 01d6645cch
+dd 0aa7fb4d0h
+dd 09b3ee14fh
+dd 0d02f810eh
+dd 01d18ca41h
+dd 0da61d235h
+dd 0d031c483h
+dd 002cc0098h
+dd 0bf886ea7h
+dd 089331a4eh
+dd 0f881af65h
+dd 0e2883e11h
+dd 0a78e7013h
+dd 0aa69b90eh
+dd 09e684524h
+dd 06a1af70ah
+dd 0af9e7af1h
+dd 0349cf59dh
+dd 0d5a0e867h
+dd 037554273h
+dd 0ea2635d4h
+dd 06a8564c0h
+dd 0d2ee1c7ch
+dd 0989eb33eh
+dd 077b82936h
+dd 0b1c472f4h
+dd 093b48a0fh
+dd 034f95160h
+dd 0ac73c4b9h
+dd 030ae430fh
+dd 01327bd82h
+dd 043f250d7h
+dd 00937a4afh
+dd 0f402c96dh
+dd 059f80fffh
+dd 0ded541c4h
+dd 0260acb7ch
+dd 07be0e51fh
+dd 0cf7a1751h
+dd 055d5f185h
+dd 08123d3a3h
+dd 0bda93b60h
+dd 00d9d5768h
+dd 08c340349h
+dd 0c455b773h
+dd 0cfe7b66ch
+dd 048d41a78h
+dd 01e973451h
+dd 01e0befbch
+dd 0bf6d9329h
+dd 0e48f83f6h
+dd 05551a317h
+dd 0930835eah
+dd 0e86b82cch
+dd 0f0ad048ch
+dd 01890346fh
+dd 00d2404aah
+dd 0283387b5h
+dd 06a4c3fd0h
+dd 01ee8fd09h
+dd 0702af7fch
+dd 00d361d88h
+dd 0abab1dbah
+dd 0f865498dh
+dd 0be68febbh
+dd 04e9bdc42h
+dd 0ded953f0h
+dd 0eacf66a3h
+dd 0da6933e2h
+dd 0e3b4a1ceh
+dd 08e706e3eh
+dd 019d95ca6h
+dd 00642f000h
+dd 03972f8e7h
+dd 0eafb5e91h
+dd 0b1d2e20ch
+dd 07f82b9d2h
+dd 03d914a5dh
+dd 05b43f90ch
+dd 0e7ae164bh
+dd 04e8a5d20h
+dd 0eafa1eb2h
+dd 0baa66462h
+dd 09d1ee325h
+dd 006ad2258h
+dd 03c85ad87h
+dd 003d6396ah
+dd 013ee465ch
+dd 08176cd3bh
+dd 06c77f614h
+dd 082dc4f0bh
+dd 0631d3df3h
+dd 0e8d60058h
+dd 05db5f0f3h
+dd 07a5968dbh
+dd 0128ab6cbh
+dd 02ff14f7fh
+dd 0ac580024h
+dd 00207c8ddh
+dd 039c3c7d7h
+dd 0960ef60bh
+dd 05bfea59ah
+dd 02c949561h
+dd 0b45f36e9h
+dd 020d008cah
+dd 0891e386eh
+dd 031cc8ecfh
+dd 023d8342ch
+dd 0da3b812ch
+dd 0aa9f6ecfh
+dd 0bb8a3d28h
+dd 0ae159b62h
+dd 090fd0fddh
+dd 0df4fe8bfh
+dd 0b5ef6e3ch
+dd 0ee22bf95h
+dd 027a4dbbbh
+dd 03f84675ch
+dd 05e6dc0e3h
+dd 0619bb147h
+dd 03e30c0b1h
+dd 0cd1bf2c3h
+dd 08cc0ccbch
+dd 05963087bh
+dd 02a6ae9abh
+dd 0dcc5f2d4h
+dd 00a0a1b9ch
+dd 02958de60h
+dd 07f486e3ch
+dd 0568ab638h
+dd 09084c1b9h
+dd 0e92b7d83h
+dd 0d050c79dh
+dd 03b4a3b38h
+dd 0d2711db8h
+dd 0d6eee3a0h
+dd 00902e159h
+dd 06fce2740h
+dd 0dee8ad15h
+dd 0a2a88719h
+dd 073aa75f3h
+dd 009823a98h
+dd 035374065h
+dd 0abafc905h
+dd 0bac7cd89h
+dd 0ecbacb84h
+dd 0f31e5bd6h
+dd 089279f18h
+dd 01c9fd23ah
+dd 001102400h
+dd 0cbc78058h
+dd 0791f4001h
+dd 0c4cbfdf1h
+dd 07a0fe823h
+dd 036d140f2h
+dd 0ec25cc6bh
+dd 052d424f5h
+dd 027edab03h
+dd 011a16755h
+dd 030ce10a9h
+dd 06966d2dfh
+dd 097375685h
+dd 0272b9364h
+dd 0a1c953e8h
+dd 036bb14a6h
+dd 0db2d06feh
+dd 02be3c52ah
+dd 0f42d77ffh
+dd 0a72d30feh
+dd 087410a21h
+dd 0eb709028h
+dd 034dd53ffh
+dd 07277e359h
+dd 0ba1ac449h
+dd 028eae630h
+dd 020c2aa27h
+dd 0b8cbd494h
+dd 06a6aef7dh
+dd 070c0cbe0h
+dd 08d540b92h
+dd 09c884a7fh
+dd 0ed916bcbh
+dd 0722936eah
+dd 0b17a1f3dh
+dd 03da2d45fh
+dd 079a25a2dh
+dd 050767538h
+dd 0051dee62h
+dd 0ceebc90ch
+dd 024b5f47ah
+dd 0db2b03c9h
+dd 01df3811bh
+dd 0ed47b498h
+dd 00f2c0340h
+dd 06cac8dd3h
+dd 08853e5e6h
+dd 0f8fff6d9h
+dd 04c347426h
+dd 0961f0795h
+dd 0d80ec84bh
+dd 05db902e3h
+dd 0fe75a207h
+dd 0664b0a07h
+dd 07da00eefh
+dd 0b48c96d8h
+dd 0938b2752h
+dd 0656dd9a0h
+dd 02f0ebc69h
+dd 0a0d0be4fh
+dd 0cd35e698h
+dd 03437e1cfh
+dd 02ee341c5h
+dd 0a3043031h
+dd 0ef53798ch
+dd 036a54aech
+dd 0985f503bh
+dd 06d66673eh
+dd 0db32ff9ah
+dd 0b834dd39h
+dd 08b4bd53bh
+dd 0e6367914h
+dd 0334a1848h
+dd 0b660bc02h
+dd 0bb9f7deah
+dd 015e9e859h
+dd 0d765fb30h
+dd 00081466ch
+dd 05cf7a204h
+dd 0b8c8cda3h
+dd 09b181598h
+dd 0fed0f6e0h
+dd 0929dccbeh
+dd 05c529ae0h
+dd 0545e27b0h
+dd 0ef8dc985h
+dd 098e6d8d3h
+dd 028d359e1h
+dd 0760fb3cah
+dd 0ed86f41eh
+dd 043d306a5h
+dd 028d40d89h
+dd 0ac0ffce3h
+dd 066215225h
+dd 041b03d0bh
+dd 044a43e3ah
+dd 0397491deh
+dd 081ac8cbeh
+dd 0971b816ch
+dd 069e75061h
+dd 09a0a824ah
+dd 0386718adh
+dd 0ceaed95dh
+dd 04cd2a2a2h
+dd 01d065ee5h
+dd 03691ad41h
+dd 0ff73c47dh
+dd 0858ed384h
+dd 075a9fa68h
+dd 020de1111h
+dd 05fa4f7a3h
+dd 0cb2b8996h
+dd 05b08098ah
+dd 0e9e9aad6h
+dd 0cae06d88h
+dd 0c5e4d97ch
+dd 097c40314h
+dd 079b2779ah
+dd 00e172609h
+dd 07a426948h
+dd 0b4597dfeh
+dd 07c85b6a6h
+dd 01b85781bh
+dd 0046a80a9h
+dd 073368b0ah
+dd 0f4f4ccebh
+dd 0d18a1da6h
+dd 0c3b1925bh
+dd 0a7b9328dh
+dd 0f5e50984h
+dd 06108c72dh
+dd 036a180ffh
+dd 0a13a0335h
+dd 0684018aah
+dd 08b5d53cdh
+dd 0e2910611h
+dd 0e87fddc6h
+dd 04d5c614dh
+dd 0afde0696h
+dd 054f8799dh
+dd 0c875f657h
+dd 0465dd7b1h
+dd 055295310h
+dd 0cef31a41h
+dd 04797845bh
+dd 03e05ed85h
+dd 0391d76f2h
+dd 030ea2704h
+dd 0653aea16h
+dd 094f99160h
+dd 022e6194ch
+dd 01a754b81h
+dd 07bd49348h
+dd 0bab5c9e9h
+dd 030f4a637h
+dd 00b4a38afh
+dd 0387b196ah
+dd 04c17da5ch
+dd 0f6905835h
+dd 027811780h
+dd 091515fa0h
+dd 0e98da0edh
+dd 0c37aef37h
+dd 08c6219f5h
+dd 0a34e1b05h
+dd 0ad32c284h
+dd 065234351h
+dd 03a3f7b69h
+dd 02d2509cch
+dd 02546ef5dh
+dd 04d80c69eh
+dd 0ef8d68ceh
+dd 09eeea75eh
+dd 062e283c6h
+dd 0a045cfc5h
+dd 07af6fdf7h
+dd 03368351ch
+dd 0a8bb835dh
+dd 023a88f93h
+dd 0e3032ef7h
+dd 0ab8aeb7bh
+dd 094eb0335h
+dd 0111e6649h
+dd 08d5bc893h
+dd 0cf41603bh
+dd 077a00086h
+dd 05a7e45b5h
+dd 0076c1975h
+dd 0a77ef942h
+dd 062cd70beh
+dd 0fd7f70a7h
+dd 07bdec96dh
+dd 06bcc9498h
+dd 04fd80c64h
+dd 0bf1514c6h
+dd 025c605d2h
+dd 039821de8h
+dd 031b7eca9h
+dd 0f2a2a5f8h
+dd 04fe57342h
+dd 045dde379h
+dd 08c20a588h
+dd 039f8e4e9h
+dd 0d456cf6dh
+dd 077b24316h
+dd 0991fc965h
+dd 0d5bf44a6h
+dd 0e48ce62fh
+dd 080d30b8dh
+dd 074b2b426h
+dd 0191b03eah
+dd 0595f5c87h
+dd 0f783b8fbh
+dd 050e27f33h
+dd 05da02d8dh
+dd 09e0f9b7eh
+dd 068007cdah
+dd 04c6eebedh
+dd 0b2b56a46h
+dd 0c18dd411h
+dd 04e1561a7h
+dd 0cc9f117eh
+dd 07c5ce7c6h
+dd 02ae02f2dh
+dd 0ec25cdc9h
+dd 0f468cec0h
+dd 060a6e650h
+dd 0e415e86ch
+dd 04e9ed6cbh
+dd 01e9ffc61h
+dd 0ba884b69h
+dd 00503e6e9h
+dd 00630bd35h
+dd 060c390f2h
+dd 0a729437fh
+dd 06bcc1dbfh
+dd 00ba7d95ah
+dd 06de677a0h
+dd 0709c4278h
+dd 085ea02bfh
+dd 089f6ae8bh
+dd 047c53152h
+dd 0093dcb6fh
+dd 0322eec5fh
+dd 053f0f670h
+dd 0d610224fh
+dd 0d02a57d5h
+dd 08e2cca1fh
+dd 0d76a286eh
+dd 0b0dfe282h
+dd 0ee2b9c37h
+dd 0db0b8d9dh
+dd 0ccc1cc99h
+dd 080459060h
+dd 08c1c972dh
+dd 0e6910256h
+dd 00e78058bh
+dd 07299a562h
+dd 05faeba78h
+dd 0439137bah
+dd 0cc6e93cch
+dd 0af74f4b7h
+dd 04971253eh
+dd 0c7d0a8a7h
+dd 05f390b7bh
+dd 02f4b55d8h
+dd 0f6249837h
+dd 03884a801h
+dd 054b9ca5eh
+dd 082b9f621h
+dd 04196824dh
+dd 043c11049h
+dd 0465285b3h
+dd 0b9afbf67h
+dd 0ccc933ffh
+dd 0c5f78c50h
+dd 0fe376fc6h
+dd 0d319ebceh
+dd 051d6ace5h
+dd 0e29dc2a4h
+dd 00e6b3911h
+dd 0e68f7b08h
+dd 02082b52eh
+dd 0cddf06b0h
+dd 07134f63bh
+dd 0ef2e87d9h
+dd 0e44c4345h
+dd 0be0813abh
+dd 0e594d143h
+dd 01af92dc2h
+dd 08db542c7h
+dd 0484de76ah
+dd 03ffa6a49h
+dd 04123ca6fh
+dd 0ca4a1b8dh
+dd 00e0d2724h
+dd 08cb3f9b3h
+dd 0775302cdh
+dd 0ff28ae62h
+dd 02ad64f37h
+dd 0fdc720ach
+dd 0711d1de9h
+dd 03d5cb41bh
+dd 077cdaa26h
+dd 0b0df8bach
+dd 0f55c0022h
+dd 0908f53e3h
+dd 071dbbf51h
+dd 0b2a2656eh
+dd 0ece8ff68h
+dd 0c5f4e9e0h
+dd 0398d3e8ah
+dd 03a1cb703h
+dd 0b3cbf19ah
+dd 0ad525837h
+dd 06392db05h
+dd 02079ebabh
+dd 0bdca4b77h
+dd 02ec8aa20h
+dd 0ab0e877fh
+dd 065ef817ah
+dd 0647feaech
+dd 0eb2f91c1h
+dd 08a65e4b5h
+dd 03a626062h
+dd 0c1ec584dh
+dd 0191a40d6h
+dd 0473e721ch
+dd 0b3f5b754h
+dd 07f3b5a08h
+dd 0d01af17fh
+dd 084f6abc1h
+dd 052438821h
+dd 058e1481ah
+dd 0739a808ah
+dd 09a0cfd7dh
+dd 0adf8e4f1h
+dd 0c2842488h
+dd 00cfc6102h
+dd 033234ca7h
+dd 0c94968a0h
+dd 0b95bbb5ch
+dd 05026dccbh
+dd 08d6b744bh
+dd 065bdc837h
+dd 0b8b02e03h
+dd 07a3bfffdh
+dd 0e36ad08bh
+dd 08a7756e1h
+dd 060e90979h
+dd 0ca8d6524h
+dd 0c71d95e4h
+dd 0009caee2h
+dd 0c4df40c6h
+dd 06f7f0bc9h
+dd 03c0351ach
+dd 0d73ded97h
+dd 027616e9dh
+dd 08633351dh
+dd 04e62d23eh
+dd 0ebe0dda2h
+dd 0d3218e5fh
+dd 0e432057fh
+dd 0447f96fdh
+dd 076e1b69ah
+dd 04b64720fh
+dd 046fd7134h
+dd 05697e3cbh
+dd 04224a5d7h
+dd 00668d6c1h
+dd 014e2585ah
+dd 0e76d51adh
+dd 0b823c2c1h
+dd 0d73ab6c1h
+dd 0a5fce79bh
+dd 027da0ba5h
+dd 0c8f56506h
+dd 0338990dch
+dd 004d65adbh
+dd 0c138de7ch
+dd 09f9c8f97h
+dd 0de33ba0eh
+dd 0d5ea86c9h
+dd 003a8208ch
+dd 07800a841h
+dd 084477342h
+dd 0fabffbe0h
+dd 0e2e41c14h
+dd 0b36a4f9ch
+dd 097b0278ch
+dd 0f74e833ch
+dd 07810351fh
+dd 01e8a226eh
+dd 040f8c8a6h
+dd 00316fb1ah
+dd 07f4e2f06h
+dd 0b4c3ed6dh
+dd 0dc36a231h
+dd 025c145a4h
+dd 02f31ee75h
+dd 05933bce4h
+dd 0b77fef67h
+dd 0b7311b48h
+dd 0cacc0988h
+dd 0daedc34fh
+dd 08feb1d2dh
+dd 05c8147bbh
+dd 008890be4h
+dd 0cf70f3efh
+dd 0bb93761ah
+dd 045927195h
+dd 0a8f44d79h
+dd 0d7f1b5e3h
+dd 05472dfe2h
+dd 0b21073b3h
+dd 0b08636fah
+dd 0047cf485h
+dd 02478fc41h
+dd 0cf03efc1h
+dd 0386bdbb8h
+dd 0bb0a551fh
+dd 010da51a9h
+dd 0dd4c9da6h
+dd 0cc27f920h
+dd 0530d8d8dh
+dd 039831e1eh
+dd 00fc24974h
+dd 0ec6ca6f2h
+dd 02d107693h
+dd 0def095ebh
+dd 041e973cdh
+dd 0895c9f3bh
+dd 0e96f1ab5h
+dd 0f059e73eh
+dd 0560dd725h
+dd 023087824h
+dd 07a9f54d3h
+dd 0faa8fb10h
+dd 0a8c9abb5h
+dd 08e1f7bceh
+dd 09596a053h
+dd 0e1ee4af8h
+dd 0a0e0f9c7h
+dd 0674caaa2h
+dd 0009d8743h
+dd 0c830ce43h
+dd 02cce5757h
+dd 0b930f5b3h
+dd 0299174d3h
+dd 07515aaa3h
+dd 0b09ed90ch
+dd 09c8e6cd9h
+dd 034a0adcah
+dd 0da4c030eh
+dd 0b4b9ac67h
+dd 01ef29ebdh
+dd 002c07fb1h
+dd 08accbf0eh
+dd 0c3138d0eh
+dd 0a398ae61h
+dd 0bb068b98h
+dd 02ea9d9a1h
+dd 01771c6abh
+dd 0a00564e6h
+dd 07bd054e5h
+dd 0487ead0ah
+dd 0850970c0h
+dd 05dffd930h
+dd 03500ddc2h
+dd 0896f2a7dh
+dd 0c891f0f2h
+dd 092ba2a1ah
+dd 0e5905dc9h
+dd 0d2e98eeeh
+dd 06522f2a3h
+dd 067facc61h
+dd 0d097dda1h
+dd 048060f2ah
+dd 0f5c9bc6ah
+dd 07a0da39dh
+dd 00e59685ch
+dd 0bbebf066h
+dd 04c2def05h
+dd 0897401e9h
+dd 01e121dd6h
+dd 0dc00fe78h
+dd 0afa2d0c3h
+dd 06b5b982ch
+dd 05862469ch
+dd 0a231c237h
+dd 08d61ae84h
+dd 0c3a67dc5h
+dd 0058052c1h
+dd 0961c90d7h
+dd 0d5306fddh
+dd 04b4741c2h
+dd 0e1f2cc72h
+dd 03541b837h
+dd 035c4a1abh
+dd 05d701448h
+dd 0b43f97fch
+dd 0c76abf27h
+dd 0a11c97b3h
+dd 071ca9256h
+dd 05ff00b4dh
+dd 0b67e663eh
+dd 01c07cd66h
+dd 011bd35b4h
+dd 0de3c6bcdh
+dd 08086550eh
+dd 0f54b30e6h
+dd 0d023aa06h
+dd 07c8b9058h
+dd 07811b766h
+dd 029daa1edh
+dd 0d2a0658fh
+dd 0e8ff2faah
+dd 078196e23h
+dd 0591659c9h
+dd 09e92521fh
+dd 0c4855115h
+dd 04e95b22eh
+dd 0dfd90a07h
+dd 00663f6f5h
+dd 09fe3688ah
+dd 083a900f8h
+dd 09355dd1bh
+dd 0234d23b4h
+dd 013d7a239h
+dd 0d61e4e6ah
+dd 0c26ad021h
+dd 06eab0907h
+dd 0aafa519bh
+dd 0e422db8bh
+dd 0eadc5dd5h
+dd 0a4ce30ebh
+dd 051f89397h
+dd 0e3164924h
+dd 002c340afh
+dd 028d11534h
+dd 0395b972ch
+dd 08f23d7c2h
+dd 09e88429fh
+dd 01c0a10e3h
+dd 03c7e8ac0h
+dd 050c8ff0eh
+dd 058cf8dcch
+dd 0be5a42ceh
+dd 0b178d248h
+dd 0fadbf993h
+dd 029ff099fh
+dd 0a311f408h
+dd 0e0961251h
+dd 01b1d1817h
+dd 0fcbce13fh
+dd 0792f52f0h
+dd 05b70d6f5h
+dd 0cb867d42h
+dd 02297082eh
+dd 02c41711dh
+dd 0601c57c8h
+dd 00e1725c4h
+dd 0122c1f6dh
+dd 0922c0908h
+dd 0191ea5beh
+dd 0ee6270ech
+dd 056edf0cfh
+dd 002f117fch
+dd 01def1741h
+dd 0fb2fb99fh
+dd 00361b23ah
+dd 0fa0a0a02h
+dd 064f32288h
+dd 0c143169eh
+dd 0a9934005h
+dd 0ad361629h
+dd 0e6ea4229h
+dd 093e1c2a8h
+dd 09b910aedh
+dd 0d2559e77h
+dd 0acfce7e8h
+dd 0a0d1acb2h
+dd 028a23868h
+dd 05c3bf024h
+dd 0c02061f4h
+dd 02ee342d2h
+dd 029fa8f72h
+dd 0baa78143h
+dd 00753bc82h
+dd 07e861dbah
+dd 07fc565a4h
+dd 0c28d42bdh
+dd 0c90a52fch
+dd 01f519595h
+dd 0c7d252bch
+dd 0155009fdh
+dd 03a239637h
+dd 0045b135fh
+dd 094d70fb8h
+dd 064c7dc28h
+dd 028866c9fh
+dd 09e08a92bh
+dd 01bd48d7ch
+dd 0c6b9709eh
+dd 04f77f5e9h
+dd 0e6e45a6fh
+dd 0887013feh
+dd 010198239h
+dd 0561348b5h
+dd 0ddcb2b4ch
+dd 05fc1b5f9h
+dd 048fd1a39h
+dd 0367eec87h
+dd 085b0924dh
+dd 0994d4c8fh
+dd 024c4feb3h
+dd 0ffed62b5h
+dd 0b3ce7787h
+dd 027b02308h
+dd 0cc6f8a1ch
+dd 01b946dc4h
+dd 027eb508dh
+dd 055bda6e2h
+dd 055a89be4h
+dd 0a5f0f790h
+dd 07a161555h
+dd 0273fc094h
+dd 0ce249e3ch
+dd 031261d42h
+dd 040f4a290h
+dd 0c2c18d67h
+dd 0b74d28c1h
+dd 01c079bfah
+dd 0e3ed6bfbh
+dd 027e78367h
+dd 082b42a5bh
+dd 08fbccdbah
+dd 0e65ef419h
+dd 02ab64855h
+dd 0d1803d60h
+dd 044de3714h
+dd 010834665h
+dd 0c8680d25h
+dd 01e794162h
+dd 06fc74a44h
+dd 05281c60ah
+dd 018489d65h
+dd 0115bd20eh
+dd 0c8ed9098h
+dd 093983455h
+dd 03025ffd9h
+dd 0dc406745h
+dd 03915a7f3h
+dd 0b79299b3h
+dd 0497d46d1h
+dd 0ef37e78dh
+dd 0156d0595h
+dd 0ac9a60f4h
+dd 0c5ac751fh
+dd 0051d4cb1h
+dd 0247ebbbch
+dd 0c09a3b44h
+dd 0b8dd0159h
+dd 03cc8808eh
+dd 0c2775172h
+dd 0c952f455h
+dd 0668110fch
+dd 0578670c1h
+dd 0323ac6dbh
+dd 0eee4b5d1h
+dd 062a2d304h
+dd 002169fcfh
+dd 0704fe4dah
+dd 08714c0d1h
+dd 0a650a53eh
+dd 0dbc4e989h
+dd 076faca36h
+dd 03c05964ch
+dd 053a16fd6h
+dd 064edb26ah
+dd 0ac6b316eh
+dd 0422d7350h
+dd 029978e14h
+dd 07642a473h
+dd 0c222d184h
+dd 0c5cb9d45h
+dd 0f24cd776h
+dd 0b5c62d93h
+dd 00ee9e62ah
+dd 025855ec4h
+dd 0957a9bc4h
+dd 0bd9aae73h
+dd 0d0d5de8fh
+dd 0892674deh
+dd 024aae2dah
+dd 0aa126fceh
+dd 05186996ah
+dd 03cc34d01h
+dd 0a6b47645h
+dd 0bf7e950ah
+dd 09f640092h
+dd 0c33a299dh
+dd 09c6dba1fh
+dd 0c749ead0h
+dd 0267dd661h
+dd 0602fece3h
+dd 0103efab4h
+dd 0ca34be3ah
+dd 0804b924ah
+dd 06e536900h
+dd 023d3b911h
+dd 0c6c7b680h
+dd 0d94109e7h
+dd 0a9a57475h
+dd 094780530h
+dd 0a8c534a7h
+dd 034e80f7dh
+dd 0b54e6460h
+dd 04d351b36h
+dd 04d0a71c2h
+dd 031559c63h
+dd 0d93db5bdh
+dd 08467902ch
+dd 0451d638ah
+dd 03d508c54h
+dd 06f024812h
+dd 0d52ed40eh
+dd 036009e40h
+dd 02ddda35fh
+dd 057ae77c7h
+dd 02bd13722h
+dd 0bf529864h
+dd 04b545d49h
+dd 085fd2647h
+dd 0524873f9h
+dd 03f76dc0dh
+dd 02d05088ah
+dd 06606afbdh
+dd 0065a9a86h
+dd 08e872346h
+dd 009057ae3h
+dd 0fc2ed6d5h
+dd 05c819a18h
+dd 0a36080fbh
+dd 042191faah
+dd 020b39d6bh
+dd 052103ba7h
+dd 0bc4656d4h
+dd 071b79f82h
+dd 0e6b3c3c5h
+dd 086caaac9h
+dd 07f30c65bh
+dd 0628ab236h
+dd 073cf2291h
+dd 06a27035ah
+dd 0430807a7h
+dd 0111ad9efh
+dd 034f6a59ch
+dd 00bcc5f04h
+dd 061915247h
+dd 086005a47h
+dd 0f10ca944h
+dd 0a3a496a2h
+dd 0fb548179h
+dd 0c2541f02h
+dd 06d37adb3h
+dd 03aec26f3h
+dd 03fc9b551h
+dd 044880d83h
+dd 043e43bc0h
+dd 036b5c259h
+dd 0716eb179h
+dd 00098ce37h
+dd 08c5577d7h
+dd 077ddb8f3h
+dd 0cf4f24b4h
+dd 000dc2245h
+dd 022541051h
+dd 045cbe090h
+dd 0c86e0de1h
+dd 0db8e7d73h
+dd 0b80629b8h
+dd 0365d25fch
+dd 0475028d0h
+dd 09e073540h
+dd 06c2479fbh
+dd 0a3b8e981h
+dd 0fcaef3c8h
+dd 0d0a90ff9h
+dd 093e3a670h
+dd 0d8adbe21h
+dd 0b3809d63h
+dd 0a40d1f6dh
+dd 046bdd3e3h
+dd 04b7c202fh
+dd 06c4063efh
+dd 0eb1d8557h
+dd 07dbc679dh
+dd 07e1ce0b8h
+dd 0bb09549eh
+dd 04ba0c0b9h
+dd 0344f80d9h
+dd 0f956c6fdh
+dd 05aff59cch
+dd 08354a63fh
+dd 0222e83f5h
+dd 086ecd4c3h
+dd 0cb3c30c8h
+dd 02a250294h
+dd 02498882dh
+dd 0b6e29867h
+dd 0e870565ah
+dd 04b7fae06h
+dd 00d72c8c2h
+dd 01690e06fh
+dd 0f23a2e44h
+dd 015e3aeaah
+dd 02b20a7c1h
+dd 003368fbbh
+dd 064041f1eh
+dd 0cb0494aeh
+dd 045229df9h
+dd 0e044eea6h
+dd 0dab87f89h
+dd 059d8c2efh
+dd 04bfba800h
+dd 093641b10h
+dd 05856cb32h
+dd 0117b6ea0h
+dd 049c39654h
+dd 09902c83ch
+dd 0e557f334h
+dd 0c7915d31h
+dd 02eb1a5b8h
+dd 0f6ddc5c3h
+dd 060ab1579h
+dd 067b10b39h
+dd 0e3d32a28h
+dd 0a1df241eh
+dd 0c222727fh
+dd 06a019fe5h
+dd 08c49c5f7h
+dd 0c9923ebbh
+dd 053898485h
+dd 0ad587644h
+dd 0f4c97c86h
+dd 03e37a885h
+dd 02b823faah
+dd 05955c6ddh
+dd 0277b780fh
+dd 05996af32h
+dd 0219bd1a3h
+dd 03e2a6f2dh
+dd 02545b536h
+dd 01afe7d3fh
+dd 008c296a7h
+dd 0edd27747h
+dd 0fd6ec628h
+dd 064517b16h
+dd 0fd5d89eeh
+dd 0b9f3ff35h
+dd 05b39b890h
+dd 07f79f880h
+dd 0968159d4h
+dd 0fadd47c0h
+dd 086532982h
+dd 0097d223dh
+dd 019e2bd74h
+dd 06ffaeb06h
+dd 074ad606ch
+dd 07114835bh
+dd 0fd29797bh
+dd 0519dc7edh
+dd 0727e3d97h
+dd 003ccd058h
+dd 0450322b4h
+dd 01033563eh
+dd 0b191814ah
+dd 09beb315dh
+dd 063f9cd39h
+dd 07c907edah
+dd 00cbfd97eh
+dd 093407528h
+dd 01c5bc178h
+dd 0297df4d4h
+dd 028ec1356h
+dd 01ca7b1b5h
+dd 049aab60ah
+dd 0c6fde28fh
+dd 057999fb0h
+dd 0380505d5h
+dd 09e9c312eh
+dd 02227c5c1h
+dd 0e73974ddh
+dd 0d7d7aaaah
+dd 041b6774bh
+dd 0eccbf77ch
+dd 027f9e538h
+dd 0cb42f814h
+dd 0e2863992h
+dd 06112ffbah
+dd 0c70d7c7bh
+dd 0b5c3958fh
+dd 0ec6d4679h
+dd 0252ec653h
+dd 0fff4e686h
+dd 0927a870eh
+dd 025093addh
+dd 06539334dh
+dd 0a8645d44h
+dd 0104552bah
+dd 06e6bc826h
+dd 0bb639196h
+dd 05a6922a3h
+dd 0b2a16d86h
+dd 04001fb9eh
+dd 07fd8f39dh
+dd 07f573110h
+dd 027105467h
+dd 0a65e039fh
+dd 092740b70h
+dd 0e904182dh
+dd 010971243h
+dd 0dd92537dh
+dd 0bd33e6feh
+dd 03b779922h
+dd 06e9b43d9h
+dd 04025a2eeh
+dd 038688b36h
+dd 069c221cch
+dd 0fd3ff54dh
+dd 054794476h
+dd 0f48de8aah
+dd 0d20d12fdh
+dd 0e4490e7fh
+dd 0862a0ad1h
+dd 03a076837h
+dd 04f7904a6h
+dd 02bab14f7h
+dd 0e67c7beeh
+dd 0c140facbh
+dd 0a62f6f20h
+dd 0b9352fe8h
+dd 0613f6e53h
+dd 05221bedbh
+dd 07d8b1805h
+dd 07514c623h
+dd 07313ed15h
+dd 008df5a5ch
+dd 0c138e574h
+dd 0e5fef844h
+dd 0a5b3e427h
+dd 0412ebc83h
+dd 0eac8e8a0h
+dd 0038c17eeh
+dd 0709efb89h
+dd 0ce10e174h
+dd 05ada59e7h
+dd 0d78b9f26h
+dd 0fd977c8bh
+dd 02e2b0864h
+dd 0b1ba98cah
+dd 0a02f8085h
+dd 0fef3fa3ch
+dd 054bb5751h
+dd 0ac50cb19h
+dd 0be9e4773h
+dd 055d00918h
+dd 06b4b2dd7h
+dd 02b722cc1h
+dd 0748810edh
+dd 0a30b7b04h
+dd 0bbfd3a66h
+dd 03df9c784h
+dd 0b738bc28h
+dd 0000762a6h
+dd 00769f866h
+dd 022241e93h
+dd 08e275a82h
+dd 0dccfb094h
+dd 011f06024h
+dd 0a39194cfh
+dd 04778943eh
+dd 05bd58adfh
+dd 059a271cbh
+dd 094b1f331h
+dd 0d5b38504h
+dd 082818533h
+dd 03f23eef0h
+dd 0b6bf7246h
+dd 03f11057fh
+dd 0980bcc11h
+dd 098de0c3eh
+dd 04fd2c706h
+dd 079b81b7ah
+dd 0244e668ah
+dd 031ff4a3bh
+dd 0f72a2f1fh
+dd 045d09162h
+dd 062d242d7h
+dd 0addcd988h
+dd 012895570h
+dd 016e78c9ch
+dd 0282688cah
+dd 09e276bach
+dd 088868f57h
+dd 076e90602h
+dd 0d8661dfch
+dd 0603e82f1h
+dd 04799e8efh
+dd 06221c653h
+dd 0b0a1e331h
+dd 0a5e89cdah
+dd 08efd4e43h
+dd 09e630a9eh
+dd 090b23cb8h
+dd 08d687852h
+dd 0a2988ee1h
+dd 00ca96619h
+dd 02ea1b5e7h
+dd 0649ad751h
+dd 0333dc91dh
+dd 09a34578eh
+dd 03d2034e4h
+dd 0df29078fh
+dd 06665c493h
+dd 09974cd8bh
+dd 0aac342c7h
+dd 06e111a8bh
+dd 0184e2f18h
+dd 06bd1e828h
+dd 0094f0ef8h
+dd 0faf8bbc8h
+dd 082a0071ah
+dd 082258ca8h
+dd 015900928h
+dd 003d72618h
+dd 050227f96h
+dd 027cc5367h
+dd 06a9bcf67h
+dd 02855a1e0h
+dd 0dc8f15d2h
+dd 01c746e47h
+dd 0189a0efeh
+dd 0fac5f29ah
+dd 09ea9679ch
+dd 06eb56671h
+dd 02dfc9561h
+dd 02c78b569h
+dd 0c4e79267h
+dd 04163c37bh
+dd 04b0023bah
+dd 085e335b3h
+dd 07d21816bh
+dd 06b40c12eh
+dd 027de8fb2h
+dd 0f07bded4h
+dd 00525523eh
+dd 0df31f043h
+dd 0e5cd81cdh
+dd 07cc192c7h
+dd 028c1c4a4h
+dd 05f2f2475h
+dd 0565e029dh
+dd 0cb810c36h
+dd 05b40583ah
+dd 0ebdf11e1h
+dd 008aaf422h
+dd 0ed2ffe44h
+dd 0ef4d9926h
+dd 02e92fc0ch
+dd 0ac96e208h
+dd 09c2fdf00h
+dd 07069bd33h
+dd 0bfda7169h
+dd 0f71e7775h
+dd 0785c104dh
+dd 063c7478dh
+dd 09559783bh
+dd 011a1e87dh
+dd 04c04cba3h
+dd 0136ba86bh
+dd 0a52fee67h
+dd 05ad1ec61h
+dd 087559ad5h
+dd 0c4c0bcc1h
+dd 08b1d1d9eh
+dd 08a4eb079h
+dd 0b052d6f7h
+dd 035dbbdf2h
+dd 03863d2bdh
+dd 03c8f3442h
+dd 01b70ab94h
+dd 02119ecf3h
+dd 0e691778ch
+dd 04df7868ah
+dd 0038910cch
+dd 0a674c951h
+dd 0ca9ec4d3h
+dd 0ce905179h
+dd 0cd4c3cc4h
+dd 0860c1049h
+dd 0f75fb7adh
+dd 0df42d0b9h
+dd 07d9fe687h
+dd 0d7b1bf35h
+dd 0269227b4h
+dd 02285c118h
+dd 0cc5ee55bh
+dd 01f0e019ah
+dd 0aa295affh
+dd 07da99714h
+dd 04261861fh
+dd 0a68a3b3ah
+dd 0eeb692c7h
+dd 06dd415b9h
+dd 09fe96c2dh
+dd 0050094fbh
+dd 09fb0fddfh
+dd 045214b41h
+dd 009b7210ah
+dd 04e80736eh
+dd 0350ff5e6h
+dd 024c8f776h
+dd 08a6a931eh
+dd 0818cd347h
+dd 04b5d0c17h
+dd 07aef94b8h
+dd 088e1a9b7h
+dd 049be4517h
+dd 0271bee2ch
+dd 0e2a42a68h
+dd 0dbf717ceh
+dd 0553f2306h
+dd 04b0e1096h
+dd 025e37183h
+dd 0bae8ac3fh
+dd 09cfc8f9eh
+dd 077f01a6dh
+dd 0f87eee56h
+dd 0842c2794h
+dd 06c68ced3h
+dd 02723dc50h
+dd 0a042e832h
+dd 0a920e8dbh
+dd 09bcbc11eh
+dd 0ca5cbd36h
+dd 0f7637b03h
+dd 0353ac7f6h
+dd 0f5bae7c6h
+dd 03caeefb3h
+dd 02ce57fefh
+dd 085009b23h
+dd 01413ea87h
+dd 0adf90ca6h
+dd 06dca7da3h
+dd 0f48d64dch
+dd 05b6d146ch
+dd 01cd50468h
+dd 0ed7742ach
+dd 0dfad9efeh
+dd 0bc202b8ah
+dd 022ece9d6h
+dd 0f9839a11h
+dd 0640631e3h
+dd 021589034h
+dd 0398f2eceh
+dd 09e81d604h
+dd 0693612a2h
+dd 04ea35062h
+dd 06ff5e862h
+dd 08b12c3d6h
+dd 04333bdddh
+dd 07ed57935h
+dd 000dcf7a3h
+dd 02a51da5dh
+dd 04038bccbh
+dd 0f586d277h
+dd 0c86f5e07h
+dd 0c889975fh
+dd 010dc0e7ch
+dd 0d811fae6h
+dd 018eb78f2h
+dd 077dab3adh
+dd 04ce491b4h
+dd 00364a871h
+dd 03997361bh
+dd 06d6da8a8h
+dd 02457b9eah
+dd 05fb5f697h
+dd 0fcb3c60ah
+dd 0eebe5f98h
+dd 09dd67a32h
+dd 007415e21h
+dd 0f04d613dh
+dd 092d404b8h
+dd 089919c85h
+dd 0d8bc31fch
+dd 03c07a662h
+dd 0518678a4h
+dd 0764b23feh
+dd 0f2be3e63h
+dd 074877d86h
+dd 07cc12b9fh
+dd 056e618e7h
+dd 0206fef38h
+dd 0694e9500h
+dd 0c00f1e02h
+dd 075bd3bd6h
+dd 0bbb3af23h
+dd 0b0ebfea4h
+dd 03f16eabah
+dd 0832f5b4fh
+dd 0d0ac8df5h
+dd 0fdcbbfb1h
+dd 0ca58861bh
+dd 0b0da514bh
+dd 0339b91f3h
+dd 0c05a1905h
+dd 00a4dc527h
+dd 014f78626h
+dd 0e7f4da49h
+dd 020fdabb2h
+dd 0162b7e49h
+dd 0486f3ebeh
+dd 0a5b2a0f9h
+dd 0b4cfca80h
+dd 07d09eefch
+dd 01c44a62fh
+dd 0d95ba646h
+dd 0fe5b8326h
+dd 09f3b8408h
+dd 01e9deb16h
+dd 086cc81cah
+dd 08e0a56efh
+dd 0e6455322h
+dd 03d708402h
+dd 0f706479dh
+dd 0d8c29a83h
+dd 06e2e0f96h
+dd 085cfd58dh
+dd 048f46ad1h
+dd 0a275a85ch
+dd 006c0a39ch
+dd 0251687b8h
+dd 045493105h
+dd 001c4b171h
+dd 0e6808d45h
+dd 040207315h
+dd 0c375de2ch
+dd 0385f83b5h
+dd 08061e969h
+dd 00c96ae46h
+dd 0433bea03h
+dd 0798b3c58h
+dd 00be99826h
+dd 0a01416d1h
+dd 0aa61dcaeh
+dd 0056c0b97h
+dd 0bec42229h
+dd 0cd97488dh
+dd 06b9b7c85h
+dd 0a1c264f6h
+dd 054c0ee3dh
+dd 0b4cb9a1ah
+dd 01fa39df1h
+dd 0db3dfba2h
+dd 076aac08ch
+dd 0c48b3cc1h
+dd 0711aeaf8h
+dd 010b11316h
+dd 0ef417e4fh
+dd 0f143771dh
+dd 0baf20244h
+dd 0ac9789ach
+dd 0b398d586h
+dd 0f28058a6h
+dd 00f9705abh
+dd 0ea44949fh
+dd 072469468h
+dd 068ca03fbh
+dd 04972376ah
+dd 069c74a41h
+dd 0811871d8h
+dd 04e946814h
+dd 087478d7eh
+dd 064f63f59h
+dd 04745913ah
+dd 0a62ef101h
+dd 074c352deh
+dd 0751cf06eh
+dd 0b09f8b46h
+dd 0ef1fe2e5h
+dd 0440fb3aeh
+dd 02582ab7bh
+dd 054cd2fe7h
+dd 0e21abb6eh
+dd 0842988aah
+dd 0adaf34feh
+dd 06c43d2fah
+dd 029d153e4h
+dd 06c3bba8ah
+dd 031cf3fcdh
+dd 05f1963d4h
+dd 00a691addh
+dd 0670a1df6h
+dd 065c8e82ch
+dd 0d17e9ed6h
+dd 0fbfd2951h
+dd 06fc46868h
+dd 01bfad17dh
+dd 0c7a72d20h
+dd 028c3a95ah
+dd 0724c64dch
+dd 0f7af4f57h
+dd 022c84e46h
+dd 0f240e2cch
+dd 09169e640h
+dd 09f927f83h
+dd 0eeccf1cbh
+dd 0c0ce8a99h
+dd 0e6eaafafh
+dd 024dc3787h
+dd 0815290adh
+dd 03c75bb0eh
+dd 0d790373ch
+dd 0879c6033h
+dd 06525dfb7h
+dd 04723d624h
+dd 0d46905cdh
+dd 0e7141727h
+dd 0a728fcach
+dd 0f0d7a519h
+dd 05665b9e9h
+dd 0d87d912dh
+dd 03bbccc2eh
+dd 02db8f1ebh
+dd 01b601fe2h
+dd 061258f16h
+dd 0d70de6f0h
+dd 0fdbc0522h
+dd 020ddf3c7h
+dd 01a553c64h
+dd 094899d5fh
+dd 0faf1ff32h
+dd 0d8e1d8cfh
+dd 087c7768ah
+dd 095751959h
+dd 05d370219h
+dd 0e3026466h
+dd 05039a9f1h
+dd 045bee1c2h
+dd 07365f43dh
+dd 0e1198427h
+dd 029dce46dh
+dd 06f4118b4h
+dd 0232092c5h
+dd 026d2c6a6h
+dd 0b783a936h
+dd 033f7ccdah
+dd 02bf67ae2h
+dd 0481bb468h
+dd 0a5d655afh
+dd 01afaedbfh
+dd 04169a72ah
+dd 02acb3d78h
+dd 0b0d7d17bh
+dd 073b7d15ch
+dd 0b2167d68h
+dd 040f059b6h
+dd 010b3e4d5h
+dd 0e45321feh
+dd 06d3e0cach
+dd 00218f63eh
+dd 0394bac39h
+dd 01bf98abah
+dd 0c02f4213h
+dd 0ef5a6a2fh
+dd 099229017h
+dd 0007578a1h
+dd 079c97d48h
+dd 0b6f34ad9h
+dd 0a76fc8c6h
+dd 08720a5c7h
+dd 0dd5c650fh
+dd 0e993586bh
+dd 0ac928286h
+dd 0e65a5737h
+dd 079752eabh
+dd 01ea2b26fh
+dd 0974e342bh
+dd 0c3ecd3c8h
+dd 0a77272c3h
+dd 077a5e6d0h
+dd 006efbe35h
+dd 0bfc899b3h
+dd 058ea6bbch
+dd 072f12156h
+dd 05ad067a3h
+dd 02a3332f1h
+dd 084444135h
+dd 0af2a0c56h
+dd 0858a15c4h
+dd 04acb4005h
+dd 062867c24h
+dd 0d14b1c31h
+dd 0db61bdf2h
+dd 08fc8f4e9h
+dd 0d98296cbh
+dd 00547c04ah
+dd 0ed2138f7h
+dd 0bce72fe1h
+dd 05bf613e6h
+dd 0bc63b203h
+dd 078ec58b8h
+dd 054aebbb9h
+dd 07e7248cah
+dd 063e3671ah
+dd 07defda74h
+dd 067540f6bh
+dd 0842348f1h
+dd 01a494916h
+dd 08b553b25h
+dd 00952f611h
+dd 0da6e5d45h
+dd 02fbf1a12h
+dd 09d5e4c57h
+dd 01d4a6d31h
+dd 01e17bc1eh
+dd 0a557054ah
+dd 055304bc0h
+dd 0288a3848h
+dd 0a3a349a7h
+dd 02813c688h
+dd 0b124479ah
+dd 02bbb6e3fh
+dd 03a66e008h
+dd 0ae3dadd5h
+dd 086dd2f52h
+dd 02bd91ff2h
+dd 0306acef2h
+dd 080da8098h
+dd 0d7269d81h
+dd 0d91a0427h
+dd 07e3ba601h
+dd 0105d9c05h
+dd 0766737b5h
+dd 0115dd852h
+dd 03c7c7abch
+dd 0a69b9f91h
+dd 0ce364edfh
+dd 05c09080bh
+dd 02f503e8ah
+dd 0cbf73b10h
+dd 05bbde47ch
+dd 053978630h
+dd 01207023fh
+dd 0e7c30721h
+dd 082b24db1h
+dd 0fa405b22h
+dd 076da7559h
+dd 0669505f6h
+dd 0c4e1ab5dh
+dd 054f6c505h
+dd 0a57bce97h
+dd 003d1d906h
+dd 0a34caacah
+dd 0e9888fdeh
+dd 07117e9e6h
+dd 0b3776c69h
+dd 0197971cbh
+dd 0d9cf39fch
+dd 0903db863h
+dd 03742d4d8h
+dd 0ed823193h
+dd 0907a037ah
+dd 07cca792ah
+dd 02a029729h
+dd 0bd201957h
+dd 091a8fd35h
+dd 0d8f70ca5h
+dd 0669cffa5h
+dd 0533ec75ah
+dd 0af67e482h
+dd 07414a403h
+dd 08d91aee6h
+dd 0a1668857h
+dd 0725fe46eh
+dd 09f5fcef0h
+dd 0e6da578bh
+dd 02e0ca906h
+dd 0aaf3e051h
+dd 01020f52eh
+dd 0d200d797h
+dd 04d3e85aah
+dd 08ba52db4h
+dd 0d1a57839h
+dd 0ed476b3ch
+dd 006dcfd25h
+dd 05d845cf6h
+dd 06fcfe0b7h
+dd 05611e71ah
+dd 0fed8d42eh
+dd 0f2488277h
+dd 023d60616h
+dd 0c876769ah
+dd 05ddc5cedh
+dd 070961385h
+dd 059d3d730h
+dd 00ed52408h
+dd 0a2a12d8ah
+dd 0ee5bce41h
+dd 0a544ad83h
+dd 087a87da2h
+dd 055e8959ch
+dd 0e7f7da96h
+dd 0ab8e4ec6h
+dd 0084a0272h
+dd 07f9915a2h
+dd 0102535a8h
+dd 07b170310h
+dd 0ee23e9feh
+dd 00dffb87eh
+dd 00d79c4e4h
+dd 065227c9dh
+dd 037ce8de3h
+dd 02d551853h
+dd 00a4ef9c6h
+dd 026e48821h
+dd 0546a1929h
+dd 07f8f2064h
+dd 05c521b90h
+dd 0e7c976c6h
+dd 07083f885h
+dd 0a234b0e3h
+dd 08b8d39a4h
+dd 06c29549ah
+dd 0da743b60h
+dd 02e930d10h
+dd 01ba2d321h
+dd 0a4d7d951h
+dd 0ad805e18h
+dd 06dc49105h
+dd 0f6569fa5h
+dd 05987f367h
+dd 0fd783421h
+dd 05f722c21h
+dd 07116f9fdh
+dd 0ed89b61fh
+dd 05507f7b3h
+dd 072dd97e7h
+dd 0244c160eh
+dd 0f082e6d7h
+dd 0c84d1823h
+dd 0a3146b72h
+dd 01a557c70h
+dd 0ee96bbcah
+dd 0ca49f5e2h
+dd 0494f7b24h
+dd 0fc365e98h
+dd 03c8e9ca2h
+dd 0b9d2c4f6h
+dd 0a9ae8268h
+dd 0510ce236h
+dd 0b9dd09beh
+dd 0055ec06dh
+dd 0a39a5900h
+dd 060e9e598h
+dd 09147cfd9h
+dd 024c5d733h
+dd 0f4ecc533h
+dd 014b08b34h
+dd 0d0eac9bch
+dd 0dfb2a2bch
+dd 09c9ee722h
+dd 0a9bda04bh
+dd 043bb273eh
+dd 09b1c77fbh
+dd 0036404deh
+dd 0746f960dh
+dd 0765d0f8ch
+dd 0844290bah
+dd 055ede2fdh
+dd 00682a5efh
+dd 0d1187569h
+dd 0dc172dd9h
+dd 04a2e00e0h
+dd 032ee66c8h
+dd 0c10432c3h
+dd 0dc689816h
+dd 007541782h
+dd 03b490c8fh
+dd 0703a6c8eh
+dd 0845c9efah
+dd 0363a89f6h
+dd 02541bc40h
+dd 0e1b90a44h
+dd 0a210677ah
+dd 000dc44beh
+dd 046e6bd75h
+dd 0b8c107e9h
+dd 0e97b705ah
+dd 0b5182d0ch
+dd 0da323a1fh
+dd 05822598ch
+dd 05754ddd3h
+dd 011526407h
+dd 0d129bf9fh
+dd 0864fc721h
+dd 02a189af7h
+dd 01866e0f6h
+dd 0a75c995ch
+dd 089e3d5e5h
+dd 08dc987aeh
+dd 048d34bceh
+dd 05f4e6551h
+dd 0817257c5h
+dd 081049555h
+dd 083d99118h
+dd 0e101d1e9h
+dd 0d359722eh
+dd 005f059e0h
+dd 0be0e99b0h
+dd 0fa17edd2h
+dd 0b1e3957dh
+dd 00a2242bch
+dd 0fa56e0f4h
+dd 05f064c80h
+dd 0f8bb63e1h
+dd 030384b5ch
+dd 04b677b01h
+dd 0c84638a0h
+dd 0af22b995h
+dd 0026d501bh
+dd 00cef07d6h
+dd 0fc89c60eh
+dd 02254e313h
+dd 0591de91eh
+dd 0dc665dc3h
+dd 012f57b64h
+dd 00b2539cbh
+dd 0a5b9352fh
+dd 0944e28d7h
+dd 0c8886373h
+dd 03786a7b0h
+dd 026fb416eh
+dd 0cdb35222h
+dd 0801e6e41h
+dd 01e7afb10h
+dd 0ae321623h
+dd 041d07d9eh
+dd 0979fa539h
+dd 0b60aae56h
+dd 03bffb645h
+dd 0894b562ah
+dd 046b31e3bh
+dd 02c321562h
+dd 0a665dc05h
+dd 02ec88d05h
+dd 05e884071h
+dd 05c5d35adh
+dd 0209dca28h
+dd 00dc314c5h
+dd 088c3c5ddh
+dd 05291757fh
+dd 0dd175ac9h
+dd 0c593136bh
+dd 0d64563c2h
+dd 0b84f9cf0h
+dd 091f7a4cch
+dd 02ca1fb95h
+dd 0311a1e6eh
+dd 07c617d85h
+dd 002628ceah
+dd 0b80d5428h
+dd 0d104fc92h
+dd 08b67d595h
+dd 0a5db270ah
+dd 0f509e24fh
+dd 0133dc53ah
+dd 03eeb8a86h
+dd 0ce5d299fh
+dd 079fcb988h
+dd 08661ce4bh
+dd 0282705d4h
+dd 0f3183cc6h
+dd 0541077edh
+dd 03eb22f48h
+dd 079cd7e9dh
+dd 0bc59c692h
+dd 0f61e76bah
+dd 0512f545ah
+dd 0f9efc5fbh
+dd 0a45ca264h
+dd 0701905ebh
+dd 0b358a067h
+dd 02c918e36h
+dd 072742c2fh
+dd 060be5c58h
+dd 063c11659h
+dd 0fd3cd740h
+dd 097b2c486h
+dd 00fa02cd6h
+dd 02fc332f2h
+dd 01ff90af9h
+dd 0d20d2098h
+dd 0547061dfh
+dd 04dd613ech
+dd 0465e3682h
+dd 0d9865397h
+dd 0e9b4d28dh
+dd 0f378b435h
+dd 0afc8b871h
+dd 0ae5ef29dh
+dd 0ddf8c802h
+dd 09171c06dh
+dd 073136dceh
+dd 020e8b060h
+dd 0bd638d0eh
+dd 02128e65fh
+dd 055e3096eh
+dd 0bebaad87h
+dd 00bb0a859h
+dd 0ba10fba0h
+dd 0de65dba1h
+dd 03ef3c370h
+dd 0dfcc2659h
+dd 01695f045h
+dd 0a282cc68h
+dd 07339fc2fh
+dd 0592992dbh
+dd 01661922ch
+dd 00d35ea12h
+dd 03be49df3h
+dd 0d8b9f510h
+dd 0b470ea53h
+dd 0df88c89eh
+dd 0fcd56ed3h
+dd 090391002h
+dd 0fc566b16h
+dd 0443bfd6fh
+dd 0da6c5f96h
+dd 0ed60f2f3h
+dd 01aae50dfh
+dd 00856aa77h
+dd 0c547995bh
+dd 0368f7c80h
+dd 03d8f5f38h
+dd 0d5ed5177h
+dd 04a75e356h
+dd 07657bba4h
+dd 0134f6b04h
+dd 0fab7cf86h
+dd 0d76f2942h
+dd 002122481h
+dd 05c9fd537h
+dd 0fcc20862h
+dd 0949dadb7h
+dd 030f56362h
+dd 0a7392935h
+dd 06c104786h
+dd 0b1e7275ah
+dd 01113d2bah
+dd 0586158bdh
+dd 0f1986674h
+dd 014ff80f6h
+dd 03a6594e1h
+dd 0a5c4e2feh
+dd 079fc78dfh
+dd 0bba59bd9h
+dd 0f7b13cc3h
+dd 0907d610ah
+dd 0e432749eh
+dd 041152056h
+dd 0ca19ebc6h
+dd 0c130071ah
+dd 0b0502d0ch
+dd 018efd957h
+dd 0a8d499bdh
+dd 0756db055h
+dd 0a07dd5ebh
+dd 0cfba7e62h
+dd 0b12f3755h
+dd 021702245h
+dd 03535fc2ch
+dd 04f2b27f1h
+dd 0c24becadh
+dd 0ab40fdc9h
+dd 0355c7439h
+dd 05b530adfh
+dd 0a76a8b55h
+dd 0ddccb638h
+dd 012300220h
+dd 0e434e247h
+dd 0e6801a62h
+dd 01d7949ceh
+dd 017f56954h
+dd 038e10a2ah
+dd 0efc0fc08h
+dd 0b199094eh
+dd 0c14498eeh
+dd 0c4e2aa9fh
+dd 0fed2e957h
+dd 081ed905ah
+dd 0343e6784h
+dd 0c94e77bdh
+dd 07aa51f16h
+dd 0d206dcaeh
+dd 0d0db59abh
+dd 04cc3478fh
+dd 0a51f43f2h
+dd 07e01ecd7h
+dd 080e70025h
+dd 069e8d43eh
+dd 0c0a00a56h
+dd 095f19e3ah
+dd 071313ca8h
+dd 0ec7a3bd6h
+dd 081b41d9ah
+dd 08eb63314h
+dd 06c7d9bb7h
+dd 084b61007h
+dd 0939104f8h
+dd 0f2908832h
+dd 04b44f304h
+dd 0958e08c3h
+dd 017b3c0b3h
+dd 041659fadh
+dd 0f5ab0533h
+dd 070d3f0f8h
+dd 08107264bh
+dd 04e27e91bh
+dd 0da92be39h
+dd 0e0599f7ch
+dd 0e31b5651h
+dd 051d366eeh
+dd 014f53879h
+dd 0f2b01096h
+dd 06e17b81dh
+dd 0a4175fbeh
+dd 0893ca869h
+dd 05af810e6h
+dd 0717f7187h
+dd 025fd1fa2h
+dd 0a2ae8607h
+dd 0a9aa942ah
+dd 0ffc461cch
+dd 00445c73dh
+dd 0095aa823h
+dd 0ecffdd49h
+dd 0c343917bh
+dd 016e31ad7h
+dd 0a40098f5h
+dd 09be2ee79h
+dd 08f68a383h
+dd 00575f8aah
+dd 09bab6608h
+dd 0a9285310h
+dd 087aeef3dh
+dd 00ca1d3a8h
+dd 0b73910c7h
+dd 07dd3c21bh
+dd 0135f8106h
+dd 0540ddfc7h
+dd 08ff191adh
+dd 07e52fe88h
+dd 01bce6011h
+dd 0f3e686dch
+dd 00a259076h
+dd 06e52f1dch
+dd 07251a51bh
+dd 02ed58742h
+dd 03a693769h
+dd 099132d22h
+dd 0e03ed8c8h
+dd 076b962b5h
+dd 071586d2dh
+dd 0b94ac002h
+dd 0af821323h
+dd 0abfd4e69h
+dd 07d58b325h
+dd 0dcc6e381h
+dd 056a334afh
+dd 021880e27h
+dd 045835629h
+dd 044c25ebah
+dd 0fb00f37dh
+dd 0da8ff9bfh
+dd 08a5ba089h
+dd 033f0a72fh
+dd 08d5beb4ah
+dd 05e56e364h
+dd 04a104b89h
+dd 07ae08939h
+dd 0ba09ecb1h
+dd 06428e55ah
+dd 0eac49cc3h
+dd 0b64448e5h
+dd 0efeeda93h
+dd 0ec6c2d48h
+dd 08b6e5860h
+dd 0d759d68eh
+dd 0b2d1130bh
+dd 018661a80h
+dd 04f3ba82dh
+dd 05b5230efh
+dd 099f6f931h
+dd 09860ef06h
+dd 064cec7ffh
+dd 0d6174f09h
+dd 028ef3577h
+dd 015ae454bh
+dd 0056b3cd9h
+dd 02617817bh
+dd 088140d22h
+dd 0938b4f7dh
+dd 0591092bch
+dd 03e8ef107h
+dd 08b2121e6h
+dd 0e15629afh
+dd 0ec3b5f09h
+dd 0e637eac2h
+dd 06adadf12h
+dd 0d43015f4h
+dd 0138495dah
+dd 0bdc1f834h
+dd 01196021fh
+dd 085567c13h
+dd 0af09cec9h
+dd 021a044f4h
+dd 09fcc2a12h
+dd 09e7de9b1h
+dd 01673d146h
+dd 0c8ec0f46h
+dd 03befb1ffh
+dd 001b26584h
+dd 070c1c4dah
+dd 00f09f5e8h
+dd 048bbc5a7h
+dd 08c5859e1h
+dd 031b66ce2h
+dd 030710cb3h
+dd 01dde40e6h
+dd 054fcddfeh
+dd 0c60c71c6h
+dd 0124bf9fbh
+dd 06940c33ah
+dd 09362eb33h
+dd 0cf1cd2c4h
+dd 0b5f9d64dh
+dd 07a504137h
+dd 06c5d9bc3h
+dd 0937d31ddh
+dd 007b88dd5h
+dd 0048838f8h
+dd 0cd936d42h
+dd 0af36e9a3h
+dd 09d01b725h
+dd 0c0805e5fh
+dd 03830a1ach
+dd 08a6c4342h
+dd 0ed7d12bah
+dd 05030debeh
+dd 05886c2d4h
+dd 0507dc846h
+dd 0765f6683h
+dd 0a3c2d3aeh
+dd 074b0b963h
+dd 0a078eecch
+dd 0250d6492h
+dd 04d58bc81h
+dd 0e5515ab3h
+dd 01ce6e3feh
+dd 0d5eddb8dh
+dd 01df51ef9h
+dd 06254cd11h
+dd 0a7fe99c4h
+dd 094005dc2h
+dd 075feeee5h
+dd 018a3f198h
+dd 0cf106b39h
+dd 0b5d267d0h
+dd 0250c5784h
+dd 03757d2f1h
+dd 0ab1d6890h
+dd 00f8c41b4h
+dd 0f33e150bh
+dd 0178a0f60h
+dd 0e7afcea9h
+dd 0102d40f4h
+dd 0a7f7372fh
+dd 023060e6bh
+dd 04185830eh
+dd 0a77d55e7h
+dd 03232f834h
+dd 008c435e4h
+dd 0b1328906h
+dd 0938f8c70h
+dd 0e4f590f7h
+dd 004439539h
+dd 050d1063eh
+dd 0cf512dc7h
+dd 0aaa627cah
+dd 0dbe4c5f1h
+dd 09f554383h
+dd 0857f3277h
+dd 08e1abc09h
+dd 0d5b606c8h
+dd 01774f9f1h
+dd 0770f073fh
+dd 07101142fh
+dd 0eb9957dbh
+dd 00ff49606h
+dd 017cac7a2h
+dd 06d71e119h
+dd 0fe793bebh
+dd 05c0bf69eh
+dd 0b674e935h
+dd 0f2780da7h
+dd 084c2b572h
+dd 0ff62af69h
+dd 0e53f6328h
+dd 0ace37c5fh
+dd 068db738bh
+dd 0d593e5a1h
+dd 01c60251fh
+dd 0f49f6ec4h
+dd 03db9f777h
+dd 0a2499fdbh
+dd 0352e692fh
+dd 0cb39efc0h
+dd 04a74eaefh
+dd 01543e489h
+dd 042f7cb04h
+dd 06f2ccadfh
+dd 0d28530b1h
+dd 041fe4dfdh
+dd 086d16d82h
+dd 0ca367678h
+dd 05d5fa2e2h
+dd 05244037eh
+dd 0f44a10f0h
+dd 0175ec180h
+dd 0ff8d40a9h
+dd 06a0cd0bch
+dd 005dac8d9h
+dd 0f05d3768h
+dd 06578e5ebh
+dd 068051857h
+dd 0a28a8b36h
+dd 0e768fd40h
+dd 09686421dh
+dd 022c754f7h
+dd 049f5a5a9h
+dd 0d35d8963h
+dd 000663b6eh
+dd 096d0905eh
+dd 07b24fc9ah
+dd 0bd0bdd92h
+dd 09619ab9ah
+dd 0c44d40eah
+dd 0dd1e88ffh
+dd 0498e29f6h
+dd 017ee7d54h
+dd 045490dc4h
+dd 0bf39e780h
+dd 023691758h
+dd 0b985d23dh
+dd 017b345e1h
+dd 04f4c04efh
+dd 07c88f008h
+dd 03055d3f7h
+dd 084a06cf4h
+dd 03b019dcch
+dd 023a92eddh
+dd 0834ee40dh
+dd 0386b1271h
+dd 0ece81a78h
+dd 0f004dcedh
+dd 03f036b51h
+dd 063cb0ac0h
+dd 049c4d141h
+dd 0db39a6b3h
+dd 0e8032955h
+dd 0d7f0acfdh
+dd 0acf2f958h
+dd 05f71adb7h
+dd 025202909h
+dd 0f2d2b7c9h
+dd 0a86c2a2ch
+dd 0b1434464h
+dd 03e0783beh
+dd 0835d2da8h
+dd 05fba6610h
+dd 091f8b840h
+dd 066ccdb04h
+dd 0c986dcddh
+dd 0b795aaadh
+dd 073050a94h
+dd 0d0718c56h
+dd 06fdc9e3ch
+dd 06bb001bah
+dd 08d8ecb8dh
+dd 073714f36h
+dd 0f6274330h
+dd 06b4d4f5ah
+dd 09ac4fd33h
+dd 07646385ch
+dd 03c622120h
+dd 0cd9ebce0h
+dd 0ebb428feh
+dd 04697ec22h
+dd 029876710h
+dd 0dae857dfh
+dd 08fec372dh
+dd 090ef4ce6h
+dd 06e2eda6fh
+dd 01593583ah
+dd 099968747h
+dd 0e665e9d7h
+dd 0da87a1b1h
+dd 0ac4b1d23h
+dd 0cd0601c8h
+dd 0e6b30ea2h
+dd 03bf14aeah
+dd 05245196fh
+dd 035996961h
+dd 0877de776h
+dd 026445ac0h
+dd 0243e9be4h
+dd 0decd86dfh
+dd 069420312h
+dd 0f18f3772h
+dd 0881bd27eh
+dd 0223e633eh
+dd 0db6f1dcah
+dd 021e5cc76h
+dd 0e59b7fc0h
+dd 012fa301ah
+dd 07a6b7cc0h
+dd 02e9d3ee6h
+dd 04d663c30h
+dd 0906f344dh
+dd 059099275h
+dd 08ddec064h
+dd 019f76bdch
+dd 0beffe9bfh
+dd 021b68efah
+dd 06098c575h
+dd 0ea5d96cch
+dd 0e9fbe395h
+dd 0b715af88h
+dd 097a9f506h
+dd 05b0a76c7h
+dd 015b5e8e5h
+dd 0c5c04136h
+dd 0375b21e1h
+dd 02acb6e3ah
+dd 018be9fc2h
+dd 086ed4f4bh
+dd 0619d46e2h
+dd 03483ed46h
+dd 0dd082812h
+dd 0dc9b4d63h
+dd 081c46903h
+dd 066fccc58h
+dd 018eac5d2h
+dd 03a66f2bch
+dd 03bc571beh
+dd 099696aafh
+dd 01069bb45h
+dd 06a4ef2e0h
+dd 0453a3ce4h
+dd 01fd0c059h
+dd 0796f0d45h
+dd 08aee2a4bh
+dd 042d2bb97h
+dd 025d4d57ch
+dd 0b701e098h
+dd 0fe4b5a34h
+dd 081e12515h
+dd 09874eceeh
+dd 0fe45b9c3h
+dd 05fd11141h
+dd 09bab853eh
+dd 09a22e2d3h
+dd 0172e9d78h
+dd 08804d0ebh
+dd 00ab35bfch
+dd 046862e64h
+dd 0158aec99h
+dd 0665f59c9h
+dd 0c90b8014h
+dd 0beec8c5ch
+dd 0ca53f5dfh
+dd 04ad9195bh
+dd 09e80b0f0h
+dd 0ce2e543bh
+dd 0c51b7266h
+dd 0322972afh
+dd 02a7c663ah
+dd 07fce6d2bh
+dd 02d632644h
+dd 0cd25bf16h
+dd 042eb1804h
+dd 0b6ff5881h
+dd 075933a66h
+dd 016be615eh
+dd 0b8a021cdh
+dd 035b73a83h
+dd 09d989c85h
+dd 02a770d0eh
+dd 0cc364e17h
+dd 04afc559eh
+dd 0daf9d156h
+dd 07b2e04e6h
+dd 0e137ed91h
+dd 0c4f3e5f1h
+dd 0ec72e108h
+dd 0cc46f6b3h
+dd 0d07623e1h
+dd 0a0322b03h
+dd 06dec2795h
+dd 02fd9a82ch
+dd 0ecad2727h
+dd 02d087b75h
+dd 029322734h
+dd 07818cee0h
+dd 0d224b797h
+dd 00c2894a9h
+dd 0a8bbf92ah
+dd 0ae756beah
+dd 0b9e83065h
+dd 0dcc221edh
+dd 0e3c0e897h
+dd 0736fd3a2h
+dd 075f2000fh
+dd 047fed738h
+dd 06da149cfh
+dd 0ecd4bf60h
+dd 0ce34238bh
+dd 051079eb5h
+dd 01020e227h
+dd 0e50e379bh
+dd 033d0bc91h
+dd 0caed0407h
+dd 0fc235330h
+dd 000df3df1h
+dd 08189e188h
+dd 0db48f11ah
+dd 026fb8ad6h
+dd 0ba6171bah
+dd 0a5e783d9h
+dd 0b6d2efb9h
+dd 0a80c2776h
+dd 07f04a408h
+dd 0a08ce7fbh
+dd 055d7b099h
+dd 08c66179ch
+dd 0775cc4a7h
+dd 0fd8bdba9h
+dd 04418d15ah
+dd 06db71025h
+dd 00884ad92h
+dd 098b93affh
+dd 0afafdb20h
+dd 090cca2ffh
+dd 0f91cf15eh
+dd 0cb2eed13h
+dd 0087c09bbh
+dd 0865470b8h
+dd 038d8f88fh
+dd 06ce7ff17h
+dd 0a63b5fa9h
+dd 02fd36f04h
+dd 0e8e30a0eh
+dd 0100b28b0h
+dd 09519ce49h
+dd 039263ddeh
+dd 08ff3bdf8h
+dd 07b3e39bch
+dd 0b914a482h
+dd 0ab498c73h
+dd 04cb732d7h
+dd 06cf9993dh
+dd 0b00561f9h
+dd 0e8d5d68eh
+dd 00f6785b0h
+dd 02001a4f3h
+dd 071d84465h
+dd 094862a9dh
+dd 0360e76fah
+dd 0a2554ad0h
+dd 0aafba910h
+dd 0382d9923h
+dd 00d34dd16h
+dd 0d7128d91h
+dd 013f4aad1h
+dd 07572ae7eh
+dd 087822c01h
+dd 0d1a815c7h
+dd 0a8245f10h
+dd 07275f5e3h
+dd 017825448h
+dd 03366b273h
+dd 09c298485h
+dd 0fe1e87e0h
+dd 086bf0aa7h
+dd 06e15349dh
+dd 025bbff86h
+dd 02dd2561fh
+dd 0dec39a59h
+dd 0dfdfbcc4h
+dd 0af665ac5h
+dd 0576b8098h
+dd 082942034h
+dd 079260b3fh
+dd 09a1bc449h
+dd 0cf2742deh
+dd 0ced3de19h
+dd 07113ab4ch
+dd 0ec223b00h
+dd 092d35ff1h
+dd 0ef4a68c1h
+dd 0c6570b54h
+dd 02d1fb05eh
+dd 03a64744eh
+dd 0f8844091h
+dd 07cd69f60h
+dd 0d271fbb9h
+dd 0eef9ca98h
+dd 07535ccb2h
+dd 034ff0209h
+dd 0dbe5de44h
+dd 00e321486h
+dd 09364f2f2h
+dd 0c27d3621h
+dd 0768fda51h
+dd 0b88253bdh
+dd 04e1207b2h
+dd 005223466h
+dd 043f543cfh
+dd 069a245c5h
+dd 01efd8165h
+dd 01fac6e4ah
+dd 0921ed1c2h
+dd 07d28009eh
+dd 0f6b3fcebh
+dd 0fff42275h
+dd 021c72f77h
+dd 0ed13012ch
+dd 0656ef054h
+dd 02bff5abah
+dd 08181ad5eh
+dd 04804c30ch
+dd 06998fc66h
+dd 0e6309c78h
+dd 05727f823h
+dd 0df9c3466h
+dd 009fdb045h
+dd 09da066e7h
+dd 07d995d52h
+dd 003e796a5h
+dd 0eac311e5h
+dd 0d339f6c7h
+dd 02ccf1486h
+dd 0edbbe992h
+dd 06101cb24h
+dd 030a6e33ch
+dd 03169bb09h
+dd 0991f7cb6h
+dd 0ccc04239h
+dd 07092c267h
+dd 0691ce0a9h
+dd 09c0cf953h
+dd 09bf96bc9h
+dd 011997e18h
+dd 00c3c9faeh
+dd 05dbb13eeh
+dd 02b230f77h
+dd 03ad968e4h
+dd 05dc7eca2h
+dd 02d03e1f6h
+dd 0a3f0655dh
+dd 0dad9a145h
+dd 04e558dd5h
+dd 047df98c2h
+dd 0d4bfc96bh
+dd 07c44bc11h
+dd 0432917b9h
+dd 0db09380ah
+dd 00d98dd99h
+dd 0c06abe4ah
+dd 06c57a3ech
+dd 0280caa14h
+dd 03c90858dh
+dd 064def2ceh
+dd 02170971dh
+dd 0de522854h
+dd 0f7bb7696h
+dd 078dad371h
+dd 04ca69f66h
+dd 0273c9fc1h
+dd 07cc4016fh
+dd 0b9d0d8e0h
+dd 0ee680cbah
+dd 03c60873ch
+dd 080a774e6h
+dd 036b0b2dch
+dd 0daabe2b3h
+dd 00400f4d2h
+dd 02ac9957bh
+dd 0ae1eee1ch
+dd 03e316557h
+dd 038fb2dfeh
+dd 0ff54244dh
+dd 0c9be3a4dh
+dd 045e49089h
+dd 09fb8c00bh
+dd 0f53ee7c3h
+dd 06c12bb85h
+dd 06592edd0h
+dd 0db97d269h
+dd 028236c79h
+dd 08be44907h
+dd 01700b32ah
+dd 05a5b27d2h
+dd 0abb6354ah
+dd 0f8ca610fh
+dd 0f9b525b1h
+dd 0e0969b16h
+dd 0f6e87f48h
+dd 036f231c8h
+dd 081c034c7h
+dd 07cb42e83h
+dd 02bcbdffbh
+dd 0c252e855h
+dd 0a74e56d4h
+dd 0130ef4d2h
+dd 05af53acah
+dd 09cb82f1ch
+dd 00ab5f986h
+dd 01e9efd12h
+dd 07db69914h
+dd 08932685ah
+dd 03dfb2726h
+dd 02e22e848h
+dd 014833321h
+dd 074cab20ch
+dd 08f20f946h
+dd 032f0e872h
+dd 043d6162eh
+dd 0b7963126h
+dd 0afb02bb3h
+dd 0604fca3ah
+dd 062556520h
+dd 025864abbh
+dd 0caeed906h
+dd 0780cea25h
+dd 054613b82h
+dd 04bb79557h
+dd 0e8e1f043h
+dd 0f88166feh
+dd 07e3c1575h
+dd 03b3cd3d4h
+dd 0def23abah
+dd 09f18e049h
+dd 053aeca46h
+dd 064006fd8h
+dd 0860611abh
+dd 041ebc5f0h
+dd 09b800c8ah
+dd 096b37436h
+dd 046b9637ch
+dd 04989982fh
+dd 0beced127h
+dd 06e2bf4f7h
+dd 0a2d81876h
+dd 0f7e795f2h
+dd 03b8eaf3bh
+dd 001954c27h
+dd 05ac640afh
+dd 0663512f9h
+dd 09c4ee1f8h
+dd 02832afc9h
+dd 08e797bdfh
+dd 024230355h
+dd 0a3baa21ah
+dd 015d4d55dh
+dd 0df586f8dh
+dd 0eac8ddb7h
+dd 0023d666bh
+dd 062d60abdh
+dd 0a8dfd0c1h
+dd 080e80dbfh
+dd 0022ae364h
+dd 0e9c71501h
+dd 0de74b530h
+dd 0080b42bbh
+dd 0f904cb3fh
+dd 02f831f84h
+dd 0125dad67h
+dd 0518a7f75h
+dd 0eff523eeh
+dd 095f09009h
+dd 054b4ac8eh
+dd 0cbbd4d11h
+dd 0cb15061dh
+dd 07fcb63fah
+dd 079da4b62h
+dd 0fb6f2ff5h
+dd 07249cb33h
+dd 0e720086ah
+dd 07373b599h
+dd 0b0e724d6h
+dd 0d7cae31bh
+dd 04fd98adfh
+dd 010ccc0d9h
+dd 0af515a4ah
+dd 0d782f529h
+dd 0fe41897bh
+dd 0621e64f0h
+dd 0852ae44fh
+dd 044fc4cc0h
+dd 04fb4b45ah
+dd 0c1755ccfh
+dd 06bec0526h
+dd 062199daeh
+dd 049fe74d2h
+dd 0a3a582c1h
+dd 0ce2bb777h
+dd 0f5f471a6h
+dd 0c45091d9h
+dd 069471df5h
+dd 023218fa5h
+dd 085d49abah
+dd 0bbf0c82ch
+dd 0ae8dd050h
+dd 046745e74h
+dd 0b61976a9h
+dd 038c2a516h
+dd 0c0b5f499h
+dd 0ac239c4bh
+dd 052cc898eh
+dd 041c57a35h
+dd 0812b270fh
+dd 026433663h
+dd 076588fdch
+dd 01978a66ah
+dd 004c51b08h
+dd 06ecdac92h
+dd 0b8c3a7ach
+dd 0ddbb5ddah
+dd 090744c3ch
+dd 096e4409ah
+dd 0bd89a69bh
+dd 08c6102cah
+dd 0c66a61b5h
+dd 05f02d2e1h
+dd 0b719284dh
+dd 07ed90c08h
+dd 09753d8b5h
+dd 0c435b232h
+dd 0afe90538h
+dd 0bf00dfcah
+dd 0e66242fdh
+dd 032101d31h
+dd 0feeff8adh
+dd 028817fd3h
+dd 0421b28aeh
+dd 09f904cd3h
+dd 0e490a726h
+dd 0b3b59e19h
+dd 09c58cae9h
+dd 0432405c5h
+dd 01dc6d8d4h
+dd 08c2a9af4h
+dd 0120a9ab6h
+dd 06eab3a4ah
+dd 06ceba8a0h
+dd 0b8ec692ah
+dd 09fcd456fh
+dd 0201733aeh
+dd 02c8533b6h
+dd 0fd001527h
+dd 094adada5h
+dd 0208e4da1h
+dd 0f885699bh
+dd 0d5f54bbbh
+dd 03ba9ec33h
+dd 0f333c6bfh
+dd 064771b4eh
+dd 0b5fc4da3h
+dd 0757152a6h
+dd 0866e61a5h
+dd 0b1c4ab47h
+dd 0dbe25b37h
+dd 03a29a728h
+dd 0704ef266h
+dd 074001c52h
+dd 0e1248c58h
+dd 0c4669523h
+dd 08434c799h
+dd 0e88460deh
+dd 05b0994ach
+dd 0d622162eh
+dd 07ec71bc2h
+dd 09328b409h
+dd 097a54b20h
+dd 016cc0694h
+dd 046877405h
+dd 05307bcd4h
+dd 0c027679ch
+dd 079706a65h
+dd 04f05a992h
+dd 0799710dbh
+dd 0f6608d11h
+dd 0fc6be2c1h
+dd 08d64d21ah
+dd 07380d0f0h
+dd 018eec255h
+dd 040620281h
+dd 0528194aah
+dd 063781b7ch
+dd 09c0fcc4bh
+dd 0e2784314h
+dd 0edd0b008h
+dd 0b59ce527h
+dd 091a58ed1h
+dd 0554ab91eh
+dd 06b0d573eh
+dd 059ca62fdh
+dd 0694791b4h
+dd 07804d7cah
+dd 0034e8983h
+dd 07f4bb098h
+dd 0d2d9f342h
+dd 0faa96d74h
+dd 05331a8c7h
+dd 04b4cc8dch
+dd 0011d4eb1h
+dd 014e806a9h
+dd 09ab56270h
+dd 01e0cc290h
+dd 058275e62h
+dd 0ceab1ff2h
+dd 079882132h
+dd 0f09f5207h
+dd 0d275faf8h
+dd 059b38c35h
+dd 0ba616d23h
+dd 06fc281e9h
+dd 053968f6eh
+dd 0fe4b7adeh
+dd 071a44369h
+dd 001e86222h
+dd 012d8d6edh
+dd 05b790a28h
+dd 0bbb4b01ch
+dd 0149d12dch
+dd 07a80c032h
+dd 0645b340eh
+dd 0ba062155h
+dd 0981b6ebbh
+dd 0a8062c81h
+dd 0a2421e41h
+dd 0cd84e074h
+dd 0bff5e0deh
+dd 0a2c234f0h
+dd 073595cf0h
+dd 03afcee22h
+dd 09da4e1ech
+dd 0dd05656bh
+dd 07961d271h
+dd 0446a1a21h
+dd 0cf87f8cfh
+dd 080bfd58eh
+dd 05c13f477h
+dd 0d5cf4863h
+dd 0be5c38a5h
+dd 057214f18h
+dd 0cb3315d5h
+dd 057d691c9h
+dd 0a9a36568h
+dd 0a8cd60ach
+dd 0ed49a9dah
+dd 0e7ba8f17h
+dd 09781e20ah
+dd 05d7835dah
+dd 0a90a677ah
+dd 0cc2faf85h
+dd 07bbd9897h
+dd 0162ce22fh
+dd 0c0c0d7d9h
+dd 0d61e7ce8h
+dd 02a01eee2h
+dd 06c041a7bh
+dd 093aab521h
+dd 018aa1fddh
+dd 022e66d75h
+dd 06b26854fh
+dd 0f15e3d29h
+dd 022d446c8h
+dd 04095a7bfh
+dd 02482f03ch
+dd 086c7d40ah
+dd 068ce288ch
+dd 0755ed6f1h
+dd 0b136b807h
+dd 07adf31c6h
+dd 01cb33f42h
+dd 0afdc2825h
+dd 093ab28b0h
+dd 0a5392189h
+dd 010b91f65h
+dd 0aca24affh
+dd 079797a6ch
+dd 003f2d775h
+dd 037cfdd07h
+dd 0dfd5db1dh
+dd 0c34ec427h
+dd 0950a9a8bh
+dd 0974d4186h
+dd 0582624dch
+dd 0699bc027h
+dd 002e60880h
+dd 06b3abc14h
+dd 029f88969h
+dd 081faec96h
+dd 06670dd79h
+dd 0c100f579h
+dd 0bd969fa4h
+dd 0c7cadf11h
+dd 008d577b0h
+dd 0334716cfh
+dd 0893e73e9h
+dd 0cea78602h
+dd 0fb8c70f6h
+dd 01ee4a10eh
+dd 0aaded606h
+dd 09fd399edh
+dd 029ea22a0h
+dd 01861b4a8h
+dd 0f716e13fh
+dd 0c3ed7e24h
+dd 0195f2bb1h
+dd 0dc31346eh
+dd 07f798226h
+dd 054cc7d96h
+dd 0411eb93fh
+dd 041a0a803h
+dd 0813cd640h
+dd 0b96badc9h
+dd 070614ecbh
+dd 092ee6dech
+dd 0a7a775a8h
+dd 0a6ad8288h
+dd 08eeede98h
+dd 0ec2c5d32h
+dd 0926803c4h
+dd 0d571a696h
+dd 0e7f2918eh
+dd 07c2a5c81h
+dd 0b0d929a8h
+dd 08598baf8h
+dd 0c2702defh
+dd 0a1fd7f9ah
+dd 031d09914h
+dd 00c7212ebh
+dd 08f5df451h
+dd 0492a2824h
+dd 0d245befdh
+dd 015e509e9h
+dd 05504103fh
+dd 0be0429ebh
+dd 0480217a0h
+dd 0945db32bh
+dd 0f1fbdf06h
+dd 038140a98h
+dd 0c4733081h
+dd 0e591151fh
+dd 0e65f9475h
+dd 0bc7db757h
+dd 00c98eefdh
+dd 0d89435b6h
+dd 0e5c4e592h
+dd 01205dcafh
+dd 0c7dfb6e7h
+dd 0bbbdbe19h
+dd 07b2fd8b0h
+dd 04090670ch
+dd 04070a5ech
+dd 07866be25h
+dd 073fecdb7h
+dd 0600c7d01h
+dd 05c70415ch
+dd 0606280efh
+dd 0c8e08d44h
+dd 0868bf9c5h
+dd 08070cbf8h
+dd 032492e95h
+dd 07cc0033ch
+dd 0a1230e89h
+dd 0cf856537h
+dd 01403535ah
+dd 0ef63f4d7h
+dd 02260984bh
+dd 033c9a6b7h
+dd 06e3e4981h
+dd 0e73692c1h
+dd 0a6398a86h
+dd 0ac1a6e95h
+dd 04ee184bdh
+dd 07677d546h
+dd 04085bc12h
+dd 05b3613b8h
+dd 08099eca1h
+dd 0383cc90eh
+dd 02c7fa143h
+dd 00d2f3b53h
+dd 037ec8b16h
+dd 09944b01eh
+dd 06ab9da31h
+dd 01e35bf24h
+dd 04cd54198h
+dd 0a559e670h
+dd 0dce70646h
+dd 03201b875h
+dd 097142262h
+dd 07e397394h
+dd 00c8744ech
+dd 0a0a95424h
+dd 04271543ah
+dd 030bd5e91h
+dd 0c9ed1a03h
+dd 0fd98dc03h
+dd 0294ead9eh
+dd 005261b5fh
+dd 05a7619b7h
+dd 0bdde76fah
+dd 050f67cd5h
+dd 06e5a2242h
+dd 0fd7f7ef7h
+dd 0f1402703h
+dd 0b574da19h
+dd 07dc4c0e6h
+dd 0830c2e1dh
+dd 0f007f619h
+dd 07ff9510fh
+dd 0b31f5700h
+dd 0151dead7h
+dd 0b777b9bbh
+dd 031e5facbh
+dd 0e3cbe569h
+dd 09961f18dh
+dd 014af0baeh
+dd 076ba2edfh
+dd 075a503fdh
+dd 02a37c283h
+dd 0021f3824h
+dd 09932e6bfh
+dd 0e83be9d9h
+dd 0f70b18e6h
+dd 0ed4da12fh
+dd 068f2d93ah
+dd 0f79172fch
+dd 0c16bef9fh
+dd 0cc367162h
+dd 0e0b3e2c6h
+dd 09fd819e4h
+dd 0d66eb503h
+dd 017641a70h
+dd 03e500c77h
+dd 06888e249h
+dd 0c08d0578h
+dd 0a4b26da6h
+dd 01f93a194h
+dd 0529b41feh
+dd 09cf1708dh
+dd 02a01665eh
+dd 08d5fc3fbh
+dd 0de26a739h
+dd 0271ed34bh
+dd 0fdb242ach
+dd 0a3cb14d8h
+dd 0d20ff490h
+dd 06f209d29h
+dd 09a88ba57h
+dd 06135b601h
+dd 0c5bfe8bdh
+dd 0ace20614h
+dd 094f306aah
+dd 059acb30fh
+dd 034c9cefdh
+dd 00617c4b2h
+dd 0d60df770h
+dd 0e7d6fb73h
+dd 0923ce760h
+dd 0340c76d1h
+dd 043b1d87ah
+dd 0d483b8c1h
+dd 0e15cda60h
+dd 0afd594d1h
+dd 046193e7eh
+dd 0d9ae9a85h
+dd 0dab29e7fh
+dd 0359c732ah
+dd 009dff277h
+dd 06821a852h
+dd 05af49ea5h
+dd 039188814h
+dd 09590eb4ch
+dd 045132c73h
+dd 0436ae2edh
+dd 04f0b482ch
+dd 08941492ch
+dd 050db2b0ch
+dd 077b1a8e5h
+dd 080a4017bh
+dd 02125995dh
+dd 030274030h
+dd 0dafd9bf7h
+dd 057f69561h
+dd 0ce79a204h
+dd 021b5c2cch
+dd 05c887d81h
+dd 0b87aaf90h
+dd 0cb5a5b8bh
+dd 0c160d173h
+dd 01c68d3a3h
+dd 0a4ec8f8ch
+dd 0d4f80bc7h
+dd 0e9df4b3ah
+dd 0fff31c75h
+dd 0b3f89d80h
+dd 0c40aea07h
+dd 09ebd724fh
+dd 005dd5ab5h
+dd 0e7c78ef3h
+dd 0b1480c07h
+dd 0085d3427h
+dd 0899116b7h
+dd 0451379e0h
+dd 0326c16c4h
+dd 03e1f91d2h
+dd 0f0470d72h
+dd 034ba1af6h
+dd 0695077e2h
+dd 004bda600h
+dd 0c07ab2edh
+dd 0f84cf937h
+dd 074262d00h
+dd 0c6c30949h
+dd 0f0b0f0d7h
+dd 02cf1af12h
+dd 04f94017eh
+dd 0145ae675h
+dd 074f6411fh
+dd 06350a7dah
+dd 0f7749e75h
+dd 0da143ab2h
+dd 0b5187c2ch
+dd 0409695beh
+dd 03970d70dh
+dd 01588f043h
+dd 0b8d132d2h
+dd 06671cfaeh
+dd 07969921dh
+dd 095978c34h
+dd 065ec549eh
+dd 0516917fch
+dd 00a3d6121h
+dd 0cd6e5350h
+dd 0cbaa54c2h
+dd 03f5a74b0h
+dd 0582f05f9h
+dd 0cf766b75h
+dd 0f6950a4dh
+dd 0d7332ebbh
+dd 018be1c1ch
+dd 04314b876h
+dd 0ed102b65h
+dd 0fb903722h
+dd 0db4a1229h
+dd 08afe1005h
+dd 02a749f77h
+dd 0d9d6a69fh
+dd 0df727d47h
+dd 0fc135db9h
+dd 09575fd11h
+dd 0aa57932fh
+dd 07d80abcdh
+dd 0910fa7d9h
+dd 062f0b06bh
+dd 0286bc203h
+dd 03a9122a8h
+dd 08682f659h
+dd 0502ddeb8h
+dd 06ae376d9h
+dd 05a9737a4h
+dd 0a077f634h
+dd 09d606addh
+dd 010c8973bh
+dd 0ca36ebe6h
+dd 092baa2f1h
+dd 0ff144435h
+dd 0f3d1c177h
+dd 06423e939h
+dd 080cd1730h
+dd 0676aea22h
+dd 06387423bh
+dd 0cc0bbda1h
+dd 03a998dfbh
+dd 0ff34c581h
+dd 05b750e3ch
+dd 071240ef3h
+dd 098d6cc24h
+dd 005b73c9fh
+dd 0fd931bf8h
+dd 0f48bc8d5h
+dd 03b12408eh
+dd 0c0fcefa4h
+dd 006631505h
+dd 05b7e39ffh
+dd 070aa40eeh
+dd 0216e5e05h
+dd 0052ea029h
+dd 0dc5d6d19h
+dd 0df0fcfd1h
+dd 0d2bf11ech
+dd 02436a8c1h
+dd 0b137849dh
+dd 0cd9eb5ddh
+dd 03f7ef0c7h
+dd 043304d1ah
+dd 0eebdab55h
+dd 0fc0fbea9h
+dd 0bfefa591h
+dd 018c5659ah
+dd 0129a41b0h
+dd 08f62fd98h
+dd 0865d8559h
+dd 05988a8ach
+dd 094766486h
+dd 0b48a5429h
+dd 02a958293h
+dd 012224ffbh
+dd 0ca19c530h
+dd 077284c10h
+dd 035f9c6e9h
+dd 08ce11459h
+dd 06be89416h
+dd 088eab4cdh
+dd 0f5686034h
+dd 0322cd5efh
+dd 0781ffc85h
+dd 0ca7f7806h
+dd 058923a62h
+dd 0739d4230h
+dd 09f386a5dh
+dd 0333127e3h
+dd 0c8b2e4d6h
+dd 07c5ba261h
+dd 014c7b1bdh
+dd 0713c5d97h
+dd 0ffa9a9e0h
+dd 07638e4ach
+dd 02fa59e92h
+dd 056ac30c7h
+dd 08a063995h
+dd 0927cf54eh
+dd 07ecc0b9eh
+dd 0dd1854f5h
+dd 0ac2f6b83h
+dd 00e2e8407h
+dd 0acd9590bh
+dd 090faa916h
+dd 0256ca3e0h
+dd 0640e7f50h
+dd 0e2f4cc14h
+dd 06b51b448h
+dd 087b20979h
+dd 045c6f265h
+dd 082667ce4h
+dd 0ce1c972fh
+dd 0c2db0111h
+dd 0953f8559h
+dd 01c64719ch
+dd 06ba8d0feh
+dd 07e79a1d1h
+dd 0aff61063h
+dd 02e193451h
+dd 0701f26b0h
+dd 0fa6eff7bh
+dd 06a199d3fh
+dd 02a8c4576h
+dd 0aeb0cc32h
+dd 0f185ed07h
+dd 0aae1ac66h
+dd 0953a0c3eh
+dd 030780cffh
+dd 046a4161dh
+dd 0e21f688dh
+dd 06b294e90h
+dd 0f91613aah
+dd 080c8db22h
+dd 01d09bdf9h
+dd 059955c4bh
+dd 0feac02d2h
+dd 02fdc5595h
+dd 031565547h
+dd 020e23749h
+dd 0dbbb2806h
+dd 01607a9fah
+dd 005cef0f3h
+dd 063461a5eh
+dd 0e4223753h
+dd 0ef81bc10h
+dd 098232410h
+dd 014e337aah
+dd 0818ef33dh
+dd 089ad2a7dh
+dd 02d3a55c6h
+dd 0d9d423ebh
+dd 0b85987c2h
+dd 0121af640h
+dd 09cf0e72bh
+dd 04323539fh
+dd 07688e4a2h
+dd 0411b1daah
+dd 042dc064ah
+dd 07900979bh
+dd 03ccd9899h
+dd 021ce8ad7h
+dd 0d7d56db3h
+dd 0fde3434ch
+dd 02834142ah
+dd 001170f6ch
+dd 0839988dah
+dd 027992b3dh
+dd 03f517cc6h
+dd 0a8612b9eh
+dd 07f8c2e56h
+dd 0b804cdf6h
+dd 0691ab3c2h
+dd 07cb13208h
+dd 02337ae84h
+dd 004d6b46dh
+dd 03da41ea3h
+dd 04a44e21eh
+dd 0591b9e64h
+dd 0bddc9f03h
+dd 02b68fe66h
+dd 0729d991fh
+dd 0c5da8d04h
+dd 0144d7eddh
+dd 00d626aabh
+dd 0f4cdc05ch
+dd 0c539355dh
+dd 0b5c1c5bah
+dd 0bbdb593dh
+dd 057aad46ch
+dd 0eaf59b1dh
+dd 0ab881425h
+dd 0d44207aeh
+dd 0bb362c29h
+dd 0308cc5dah
+dd 0729e4d55h
+dd 033e74bb3h
+dd 01d364d55h
+dd 032cfe2d0h
+dd 0ed2be604h
+dd 0b982ad94h
+dd 0a3e8f349h
+dd 0fcc39062h
+dd 089fb062ah
+dd 0b8ac00aeh
+dd 0ebb6d2afh
+dd 0f0af6a5fh
+dd 0ff95a459h
+dd 01f00897eh
+dd 069945446h
+dd 02c962dbfh
+dd 05df6c64fh
+dd 04c61c9e6h
+dd 0c99e54e5h
+dd 0286a9dd6h
+dd 0bbf1c8edh
+dd 070edfdfah
+dd 0f72e9529h
+dd 05778ab7dh
+dd 09261efb9h
+dd 0d08e547ah
+dd 0c21fefcch
+dd 040d8b996h
+dd 036316820h
+dd 07c5b9f85h
+dd 06c6921b4h
+dd 0f7674e0ch
+dd 02b5d312fh
+dd 0d9637096h
+dd 0e3f0126eh
+dd 022eeca61h
+dd 0abeecf53h
+dd 0464945b6h
+dd 0d1c7c13bh
+dd 0e479015eh
+dd 03d774396h
+dd 08d26048ch
+dd 0a8ba8cd9h
+dd 0b70f805ch
+dd 0f4ca04cfh
+dd 051b97edah
+dd 0f2562b68h
+dd 007ea017fh
+dd 01e91fc07h
+dd 0d6abcf77h
+dd 06d4f2d2ah
+dd 015e0ca08h
+dd 0cdf62245h
+dd 0330e3fedh
+dd 0331c6072h
+dd 05eaba0ceh
+dd 0aae893fbh
+dd 083561fb6h
+dd 02bfb3f4ah
+dd 0c98ef346h
+dd 002c58907h
+dd 009598ab1h
+dd 0b5c1657ah
+dd 0543e4440h
+dd 0abaac88dh
+dd 01dff1d81h
+dd 03eb163f7h
+dd 028e63b35h
+dd 0121950ach
+dd 0953f3fe3h
+dd 0effad345h
+dd 097fae2bch
+dd 0c9e28232h
+dd 0218f9ac4h
+dd 01f0daa44h
+dd 0c97a8e10h
+dd 0abde1823h
+dd 00eafadfch
+dd 06c2b21bdh
+dd 0fab0e895h
+dd 004fc4b5ch
+dd 05aec95f7h
+dd 09caa21ach
+dd 0dcdcd666h
+dd 081e01064h
+dd 0a531930dh
+dd 00dfc716fh
+dd 0d1fd2553h
+dd 0bf87602bh
+dd 0852f1a4dh
+dd 07e5109a0h
+dd 02e592251h
+dd 0d02eb8ach
+dd 080796a6bh
+dd 0068b23f3h
+dd 02bbb65b3h
+dd 06b9822c1h
+dd 0c86e3bbfh
+dd 0160f5bach
+dd 056c22993h
+dd 05a9b0460h
+dd 05c3a6edah
+dd 005a91cedh
+dd 05b396c2eh
+dd 05a2a07b3h
+dd 0c4faa470h
+dd 0dec40eafh
+dd 0c6a1f3c5h
+dd 0068b0040h
+dd 046c12508h
+dd 04fdf47dch
+dd 023d7908dh
+dd 0aaabd2f5h
+dd 0715f535dh
+dd 0f027310ah
+dd 04bbea527h
+dd 0b1d33c9ah
+dd 0e35c7768h
+dd 04a8a0672h
+dd 08ced3d8ah
+dd 0a2179cd8h
+dd 09deedc38h
+dd 0a3747a20h
+dd 0b87aefd9h
+dd 094f4f615h
+dd 029806885h
+dd 03de6be79h
+dd 0f4354a12h
+dd 0e014a4bbh
+dd 0c46075d7h
+dd 04a8706bfh
+dd 09c6ddfb1h
+dd 083e8beceh
+dd 0e1cc0fbbh
+dd 0ad7d7862h
+dd 0ffe4150ch
+dd 0870fe0cdh
+dd 038fe3efah
+dd 07b8de773h
+dd 036221b01h
+dd 04297c27fh
+dd 0e1ffe58fh
+dd 0be0dcf29h
+dd 0c8733586h
+dd 0ff34694bh
+dd 041022526h
+dd 02462561fh
+dd 090158314h
+dd 07aa113d6h
+dd 02225fd54h
+dd 0c80dc0f5h
+dd 0d00b0ec0h
+dd 00961dd59h
+dd 090c45f0fh
+dd 0f07afd76h
+dd 0faad3be5h
+dd 0d08a2798h
+dd 09428e283h
+dd 00b72a825h
+dd 0cdbdef2dh
+dd 0a46662edh
+dd 0a4b4d0f8h
+dd 0b1070ab9h
+dd 02d04cc1fh
+dd 055704f52h
+dd 0a11d70dbh
+dd 0cb478325h
+dd 04f55d4d0h
+dd 0d3c5d598h
+dd 0f13c5b3eh
+dd 0526b623eh
+dd 06e9ea0adh
+dd 0af09c55eh
+dd 04e9ef602h
+dd 0e6bbccech
+dd 0d3584da3h
+dd 0f700306ch
+dd 09302a564h
+dd 058efa47ah
+dd 0560ca2cbh
+dd 0341465c7h
+dd 0a6231a1fh
+dd 0e78c9764h
+dd 0cd8db226h
+dd 0ce6880feh
+dd 05aae3aa6h
+dd 071ef3377h
+dd 0af443f77h
+dd 093d406c2h
+dd 05d512ce2h
+dd 0322672aah
+dd 0c2228935h
+dd 09f89bcf8h
+dd 01a6e39b5h
+dd 0cddbd8e2h
+dd 082c347bdh
+dd 0b5e5c8b4h
+dd 020d3396ah
+dd 03cf9ba3ch
+dd 04fa5b939h
+dd 0b26caef7h
+dd 0bc6b008dh
+dd 00e66dcf1h
+dd 0784e2e0eh
+dd 0286156c3h
+dd 0a43c5423h
+dd 01fe20fd1h
+dd 057907defh
+dd 0345d5493h
+dd 00444c35bh
+dd 02db761c5h
+dd 0b2b60c3fh
+dd 0ddf2aaebh
+dd 0e76641f9h
+dd 0bd2a2764h
+dd 0acc8c9b3h
+dd 0e165e669h
+dd 009768cfbh
+dd 03a50e41ah
+dd 092cc5614h
+dd 0b1ec35d4h
+dd 02bfb898bh
+dd 04911e769h
+dd 0f7a717f4h
+dd 061923c16h
+dd 066bf972bh
+dd 0c6474e4ch
+dd 0c1e4bb73h
+dd 0397187eah
+dd 09bcbbb70h
+dd 0ecd84c60h
+dd 0ca51e0e8h
+dd 0d3c8afc8h
+dd 0dc42a48bh
+dd 0a1532906h
+dd 0b16d6e48h
+dd 0106a2856h
+dd 042844758h
+dd 083f372aeh
+dd 0983750efh
+dd 0cb412359h
+dd 0e055f35dh
+dd 0c331f681h
+dd 02c74271ah
+dd 089611f0dh
+dd 09b98545ch
+dd 0ab7f3fb3h
+dd 05c2f6b6bh
+dd 016b1e5dch
+dd 096d1f6f3h
+dd 03ae16a0fh
+dd 0d50b55bbh
+dd 01f307ffch
+dd 04ed34c32h
+dd 03a6d0277h
+dd 0714c148fh
+dd 06a39c168h
+dd 007b4faf8h
+dd 0a9241772h
+dd 074c9379eh
+dd 003eedc2dh
+dd 0bd62ad84h
+dd 0f997dcbah
+dd 015501656h
+dd 0d1884a49h
+dd 0cf19d6cch
+dd 0b89893bfh
+dd 0fdfb8961h
+dd 0a3fe92ceh
+dd 01cb79a91h
+dd 06b6815bdh
+dd 021c45475h
+dd 0c60db197h
+dd 0e46c5423h
+dd 0716a117eh
+dd 00caca908h
+dd 08675311ah
+dd 07006cae5h
+dd 0d8e64753h
+dd 05da4daa7h
+dd 07027de6ch
+dd 03a9ca17fh
+dd 0f61c5534h
+dd 06e22df19h
+dd 009bb6188h
+dd 07d4ea6efh
+dd 0e48241c1h
+dd 03ea7c291h
+dd 0e231e131h
+dd 09cf78297h
+dd 03f63fa00h
+dd 078369a8eh
+dd 07e22623ch
+dd 09ced4dd5h
+dd 08649ace0h
+dd 0b01eb24dh
+dd 07c111549h
+dd 04adfc7e9h
+dd 0e6a2a893h
+dd 0619515f8h
+dd 0b0cb12b6h
+dd 087b2638ch
+dd 0cb241aa8h
+dd 0268f1819h
+dd 07c8ed8e7h
+dd 0d86d6b6bh
+dd 0ccd3088eh
+dd 0a5d57bc9h
+dd 0e5073ef1h
+dd 04e2e2569h
+dd 0c494e1e2h
+dd 070c0b5f8h
+dd 0710cb2b0h
+dd 0abb8ba63h
+dd 0299a246ch
+dd 0621164c7h
+dd 0981be5d8h
+dd 0be7af00eh
+dd 05c7d8c46h
+dd 051ee1a6ah
+dd 09d1424d1h
+dd 07cf55c95h
+dd 0a7735ed0h
+dd 0c1c161ddh
+dd 02964f058h
+dd 07aeccb8eh
+dd 0ae98a714h
+dd 03bd61a62h
+dd 067698411h
+dd 095a6cd7bh
+dd 0ee0a7ec1h
+dd 01bf97cfbh
+dd 01710ccc2h
+dd 024c63a60h
+dd 05782b645h
+dd 0607e8522h
+dd 005052725h
+dd 072330ad7h
+dd 0dd001b60h
+dd 0f5078889h
+dd 0b8979a55h
+dd 05ae5ce73h
+dd 02b7b8013h
+dd 06960cde4h
+dd 0496ea74ch
+dd 05f2a8476h
+dd 01f0d24cdh
+dd 0df2204dch
+dd 0d118c853h
+dd 0655b07b6h
+dd 097a28d2ah
+dd 0582b5d72h
+dd 086ada96fh
+dd 01ec2f559h
+dd 00e86a4e5h
+dd 0b2411349h
+dd 07735b640h
+dd 0acad268ch
+dd 085986e62h
+dd 0a5a06ca4h
+dd 0bc64b8e1h
+dd 0fd6a8aa5h
+dd 0cb044998h
+dd 026b64cd4h
+dd 0c303f2b4h
+dd 0a781faf9h
+dd 004b2526fh
+dd 09a7bb27bh
+dd 0c46075a5h
+dd 005893ee1h
+dd 056bde8bbh
+dd 07014280ah
+dd 087268442h
+dd 069c9d83fh
+dd 0678ce87ah
+dd 09512de48h
+dd 0c02d3dfdh
+dd 0384fd558h
+dd 0f8368c94h
+dd 0cff7170bh
+dd 0b12f5c01h
+dd 015b9da47h
+dd 0e09cc39fh
+dd 06d572763h
+dd 05c35990ch
+dd 07a538316h
+dd 043a76264h
+dd 09391c46fh
+dd 0c79c6e99h
+dd 03a13f898h
+dd 044de1edch
+dd 00a19d4d0h
+dd 0a92155e3h
+dd 09533b68fh
+dd 0a3a73682h
+dd 0f01903dbh
+dd 04ca62794h
+dd 0fa569154h
+dd 0b6f87f36h
+dd 020518f6bh
+dd 0df32557bh
+dd 070371ed0h
+dd 00950f0c3h
+dd 0ae76646fh
+dd 02f383080h
+dd 02ab32820h
+dd 05450146dh
+dd 0fb4dc715h
+dd 08d69f2c2h
+dd 0454701feh
+dd 0953078f1h
+dd 0d836f638h
+dd 0b32f58d2h
+dd 07cf035fbh
+dd 0d2bf31f8h
+dd 0014c251eh
+dd 007f081f9h
+dd 026debf5fh
+dd 0e352afb6h
+dd 02359c155h
+dd 0e8788d7ch
+dd 0f793c2cfh
+dd 01cd497d5h
+dd 0d6b60514h
+dd 04a59e72fh
+dd 003a3eed5h
+dd 073bf733eh
+dd 055898587h
+dd 0d544d5eah
+dd 01abcd66ah
+dd 0c722c25fh
+dd 0f042b076h
+dd 0862861edh
+dd 0a146a00eh
+dd 03a9dabcch
+dd 0eb59f0a6h
+dd 08052faf2h
+dd 08cd5e839h
+dd 04b4aa01fh
+dd 0146557cfh
+dd 0b1417af9h
+dd 089d7fb80h
+dd 00aca426eh
+dd 0e1895d00h
+dd 0fba53d78h
+dd 08d34b06dh
+dd 01e79afb5h
+dd 094dffaa2h
+dd 0948936b5h
+dd 0fb0fc85eh
+dd 05cbf2073h
+dd 0b7a52ca2h
+dd 0f706cc12h
+dd 07fcd7c07h
+dd 09795e5f6h
+dd 002b85748h
+dd 0db640e5eh
+dd 0c649b353h
+dd 0431b9c23h
+dd 0b58fc686h
+dd 0a15358f4h
+dd 06c8727b7h
+dd 00f08e507h
+dd 06cd1e329h
+dd 033c02e81h
+dd 02274f636h
+dd 02ddce201h
+dd 0f68cbb43h
+dd 006547a8eh
+dd 006767f3ah
+dd 0142f28d1h
+dd 0fffb6c9ah
+dd 0c20a4c3dh
+dd 0dc9323c6h
+dd 0ae7e0d18h
+dd 03fb3b14fh
+dd 099ceee92h
+dd 0ebbd75d3h
+dd 099f6bc40h
+dd 06ad16056h
+dd 026fc5ffbh
+dd 0ad08f75bh
+dd 01f393f8bh
+dd 09586575eh
+dd 0c7e62fc6h
+dd 076aa1f22h
+dd 0c0b4211fh
+dd 0fb2b1c35h
+dd 09b0ab28ah
+dd 0b998b548h
+dd 04d5c5142h
+dd 0b5f42526h
+dd 037f481d1h
+dd 0bae3f4e7h
+dd 06104dcceh
+dd 09b5e908ah
+dd 0146d43e9h
+dd 0894857b7h
+dd 096eb80eeh
+dd 0d3bdd738h
+dd 0048db57dh
+dd 0ba3c1530h
+dd 096380e9bh
+dd 02b966ddah
+dd 039542890h
+dd 012d3b39ah
+dd 0fcf4d06fh
+dd 0e80092e0h
+dd 0e01123a1h
+dd 0013fe3c4h
+dd 051658c29h
+dd 097950792h
+dd 00fcb1cd6h
+dd 01158f6a9h
+dd 0d49eca2fh
+dd 00610d31ch
+dd 0d5f9d476h
+dd 08a550f19h
+dd 0005c7919h
+dd 014b74c46h
+dd 0ff77aa84h
+dd 00fe9e550h
+dd 028efae5eh
+dd 076dc4c58h
+dd 0d2451ff8h
+dd 06b355615h
+dd 02bf8e0a4h
+dd 08803ae09h
+dd 021054450h
+dd 041018246h
+dd 04c29c5bfh
+dd 0c835a788h
+dd 035411909h
+dd 086166435h
+dd 0247fc4d0h
+dd 0a0aabb25h
+dd 01bbe1a15h
+dd 0f89d6198h
+dd 003284ab3h
+dd 0fe156d76h
+dd 0fe7a008fh
+dd 038624a68h
+dd 0f3366363h
+dd 04e479322h
+dd 0724d3f08h
+dd 0a289b82ah
+dd 03d200c7eh
+dd 0c7fa5d62h
+dd 02b15df17h
+dd 09f6acebeh
+dd 00c39734eh
+dd 00518e421h
+dd 0349945c7h
+dd 0b6f0b221h
+dd 002acfb2bh
+dd 09c3aaf31h
+dd 078abf3a6h
+dd 0926a98edh
+dd 0de0d6052h
+dd 0dc7133fdh
+dd 0876a63e2h
+dd 0d3322913h
+dd 06f210766h
+dd 00a505f31h
+dd 0056cf694h
+dd 03b6cd578h
+dd 0f34735f3h
+dd 04444c24dh
+dd 0102c88beh
+dd 0b765ecaeh
+dd 06db40687h
+dd 06a4f0a47h
+dd 03ad517beh
+dd 06e211d0dh
+dd 023ff12ddh
+dd 0f0bd5dbbh
+dd 05bc2024ah
+dd 07de8f132h
+dd 044c3c927h
+dd 0d6fc8c20h
+dd 0459aa97bh
+dd 07ba1b2d0h
+dd 0e396f836h
+dd 09c67ef1fh
+dd 08cc2edeah
+dd 03c20ed4bh
+dd 07e4e5c95h
+dd 065e77925h
+dd 0f7385600h
+dd 0bf84febeh
+dd 02db64391h
+dd 0253504ech
+dd 012ac1525h
+dd 064792e3fh
+dd 02b1e104bh
+dd 0c43d2ce7h
+dd 0ae1457c3h
+dd 0e0e2049fh
+dd 0235292beh
+dd 03f15ae8fh
+dd 03fc2b64dh
+dd 024388819h
+dd 05f76c492h
+dd 0d3b3b0b6h
+dd 0b6062500h
+dd 00e224f31h
+dd 0d8bc091ah
+dd 036e42e59h
+dd 04ab4caa0h
+dd 02f1f4938h
+dd 0218aa8edh
+dd 059e77519h
+dd 07188afb9h
+dd 002d01633h
+dd 092015763h
+dd 0eb77c2c9h
+dd 0a548c95dh
+dd 00e851576h
+dd 088de1773h
+dd 0fde601f3h
+dd 0ecf26b35h
+dd 09aeaf1a6h
+dd 049b726c0h
+dd 0c570e54bh
+dd 09c259c79h
+dd 0aea54954h
+dd 0d3fdf26ch
+dd 0d608b1a9h
+dd 092ee1d4bh
+dd 0a9971e90h
+dd 0018e9a92h
+dd 08a5eac7dh
+dd 04484eeb2h
+dd 02c7c5939h
+dd 07b61ac73h
+dd 02009b0dah
+dd 027db6ba5h
+dd 0eb1bfcf9h
+dd 05a277a07h
+dd 01e9433a9h
+dd 06cda23a7h
+dd 0164fa417h
+dd 0d9db7a0ch
+dd 0c1265268h
+dd 01ac83e09h
+dd 0d743daa1h
+dd 012b57a49h
+dd 03a5ec37dh
+dd 0abc11edeh
+dd 04b9bf703h
+dd 0af3f6f88h
+dd 03622dd9ah
+dd 037d91ffch
+dd 0cb967f9dh
+dd 09c70793bh
+dd 040ef44b6h
+dd 02dbe625ah
+dd 09f4edee3h
+dd 07f1f7ad9h
+dd 022e5abb2h
+dd 0fe360a2fh
+dd 04e8f887dh
+dd 037cd946bh
+dd 0fb2cd44bh
+dd 0f0505df7h
+dd 0d2f83353h
+dd 0c3584b11h
+dd 02cb18addh
+dd 0e65fe2f2h
+dd 0b24da348h
+dd 08b10838bh
+dd 090aad0d3h
+dd 05574dfe4h
+dd 00d682953h
+dd 02be6b4eeh
+dd 088f3b0f1h
+dd 09c0e82aah
+dd 0accaeb18h
+dd 017e2b3a7h
+dd 097dc0aach
+dd 0ccfbca63h
+dd 090f6dd43h
+dd 098c95f69h
+dd 03a4a45f9h
+dd 01964a6cch
+dd 04461c2a0h
+dd 0219b2d3ah
+dd 0f285a8c6h
+dd 085b77277h
+dd 0c38a1bffh
+dd 01ed93247h
+dd 07815d42ah
+dd 07477ec92h
+dd 053304ed0h
+dd 0104b2b21h
+dd 093b84903h
+dd 04aaaa808h
+dd 010813e8ah
+dd 053dac8c7h
+dd 0b4f2188ch
+dd 09fbc414ch
+dd 09aa9ca88h
+dd 0ea6cafaeh
+dd 09bf36dadh
+dd 0b031e1cfh
+dd 0f0df6f0bh
+dd 0d0d7f36fh
+dd 0d97ce3b4h
+dd 07f91cf3eh
+dd 06df4e69ch
+dd 0b610288eh
+dd 0ed824e55h
+dd 01604e26ch
+dd 0ac19ce12h
+dd 00cd7999ah
+dd 04a2fc340h
+dd 0bfbcc0e8h
+dd 045ee5015h
+dd 0c9f69071h
+dd 0a85d54a4h
+dd 00fbd9d49h
+dd 0681fa046h
+dd 05dd44e48h
+dd 0766054ech
+dd 05f4d3478h
+dd 0f5acb880h
+dd 073e554adh
+dd 007b3655eh
+dd 0df6b3146h
+dd 0923468c2h
+dd 039a330a9h
+dd 002aa7ed2h
+dd 060f57e74h
+dd 05c225637h
+dd 0958d1914h
+dd 0632a6da7h
+dd 0ce6e7df0h
+dd 0f028c06dh
+dd 0d509c73dh
+dd 09a9fb83eh
+dd 0ab90a2a1h
+dd 06f25ec95h
+dd 0e087eda4h
+dd 082f9ff34h
+dd 016beddbch
+dd 06d733db1h
+dd 093e9e10bh
+dd 070d9a420h
+dd 0e1ec3c2fh
+dd 028981a3bh
+dd 07cc3177ch
+dd 0d9e78a89h
+dd 0b582b94dh
+dd 0ea2f57dah
+dd 0727b488ch
+dd 07b510e78h
+dd 016846bf5h
+dd 01301086eh
+dd 094a4c601h
+dd 0b6bc06d8h
+dd 0e946140ah
+dd 0b743192eh
+dd 0bbfa07c2h
+dd 0e35d3ab8h
+dd 02849cf6dh
+dd 04d0847edh
+dd 01783c760h
+dd 0d6a23c57h
+dd 03c69aecah
+dd 0c01d0546h
+dd 00bf67ea8h
+dd 000f3087dh
+dd 035e2945eh
+dd 03d63a370h
+dd 0f3fe91a9h
+dd 0aed3ba66h
+dd 00c210104h
+dd 0d05dd7c2h
+dd 04fe4690dh
+dd 003a6da94h
+dd 01f026e7ch
+dd 06530e882h
+dd 0a144fe38h
+dd 05b33e952h
+dd 0678511ddh
+dd 0dd81e069h
+dd 07c9fbfc7h
+dd 0975b5f62h
+dd 02fa95d7fh
+dd 04747fb99h
+dd 03a477b28h
+dd 0ea1c0d9ah
+dd 09b95df38h
+dd 09f578b72h
+dd 0b48e0978h
+dd 04c67e465h
+dd 009dfa8ceh
+dd 02807cc0ah
+dd 0b646a988h
+dd 08d5b8593h
+dd 0d84f01ceh
+dd 0d649a2d4h
+dd 0cbe67767h
+dd 06cec3789h
+dd 0e877e5e2h
+dd 0cb3afe5dh
+dd 0b4ac1b3ch
+dd 0f7660273h
+dd 035359cdch
+dd 0f9a644fch
+dd 095b589f0h
+dd 012dd2a29h
+dd 0da557441h
+dd 00d0d11eah
+dd 0c976ebf6h
+dd 0fc727b3ch
+dd 0face1968h
+dd 0e8245312h
+dd 08d037f16h
+dd 034580e4ch
+dd 030e6d992h
+dd 0230cab43h
+dd 0583a922bh
+dd 08b6cc7aeh
+dd 0285cf4a8h
+dd 0ede43d35h
+dd 09663dcf8h
+dd 0b00abb8ch
+dd 02f5576dah
+dd 0829de50fh
+dd 04eb553d4h
+dd 0661ed2c5h
+dd 0c8d8c379h
+dd 06f25cab2h
+dd 0e2ad32edh
+dd 066815b51h
+dd 0b9091b74h
+dd 0ec91f503h
+dd 03265d328h
+dd 006da1d02h
+dd 0cf016e00h
+dd 09ba1cee8h
+dd 023f4bc02h
+dd 0ea0f0f55h
+dd 020813e30h
+dd 023ad84f8h
+dd 081b3211bh
+dd 0faf323a7h
+dd 06f56ff38h
+dd 06de639b0h
+dd 05d2d0ccdh
+dd 070c32d51h
+dd 034e13388h
+dd 05fea8bd1h
+dd 0dd228d99h
+dd 0255df9b1h
+dd 00dfa92dbh
+dd 017454fadh
+dd 03a57620fh
+dd 061c86fb4h
+dd 0e2cc3375h
+dd 0b46ff423h
+dd 0d9b779d4h
+dd 029cad47eh
+dd 0b74db160h
+dd 0bea88da4h
+dd 0a606a05dh
+dd 03e0b1a69h
+dd 0ca2fe58ah
+dd 0f11fd452h
+dd 0b22f4dc3h
+dd 0af9d04d4h
+dd 0e9c166dbh
+dd 05329d6bdh
+dd 0392d29e4h
+dd 09ffc2783h
+dd 094560792h
+dd 0acd5bd45h
+dd 08ab95cc7h
+dd 00487d63eh
+dd 08f4ac866h
+dd 06290fc9fh
+dd 079301c32h
+dd 0c7602e75h
+dd 0e663d3abh
+dd 0cf491a2bh
+dd 0d692e572h
+dd 01d74e27fh
+dd 05d083883h
+dd 0151c872bh
+dd 06433f22fh
+dd 0c91870c5h
+dd 01976c455h
+dd 05cd6173ch
+dd 0a729ef3ah
+dd 03cbdd7b4h
+dd 00621479dh
+dd 0bfbc53bch
+dd 0ca455cb2h
+dd 041981354h
+dd 0569616b5h
+dd 0d9b49acah
+dd 0e4668ed5h
+dd 0efea4cd9h
+dd 09ec99ff7h
+dd 0149889b5h
+dd 06520f0cch
+dd 0432d72e9h
+dd 0b0d23a7eh
+dd 0395d1a02h
+dd 049f73c01h
+dd 09f984c9eh
+dd 0aec80018h
+dd 0c94792afh
+dd 0ca558ccfh
+dd 0295ebea1h
+dd 02d0179e1h
+dd 05db2be33h
+dd 0835169adh
+dd 070da2f0eh
+dd 0550b71c8h
+dd 07ce3ef02h
+dd 024f52dcch
+dd 055a4338eh
+dd 02fe7a7cfh
+dd 0d1e2798ch
+dd 06e75af8eh
+dd 09e502b79h
+dd 05d589f4fh
+dd 03c238fceh
+dd 00ebf6b6fh
+dd 0e0fb5a1bh
+dd 047ce724dh
+dd 0ee9ff09ah
+dd 0d61350c0h
+dd 0d9bb69efh
+dd 0d56ec9fbh
+dd 023b7d35ah
+dd 093d9ce8fh
+dd 0f2e77aebh
+dd 036110e60h
+dd 0f974635bh
+dd 07bf195f8h
+dd 0edfabc28h
+dd 0a1878193h
+dd 0327e70dch
+dd 0d309ee60h
+dd 0099a868fh
+dd 0f5c78993h
+dd 0cecd94b1h
+dd 099d9b541h
+dd 03ba8a6e3h
+dd 01b1d86c1h
+dd 029a15397h
+dd 071ebfd04h
+dd 07db84642h
+dd 04302e36dh
+dd 09a277728h
+dd 03997358dh
+dd 03fb13f94h
+dd 089da5c0bh
+dd 06b89f23dh
+dd 0bbf88bb5h
+dd 0262c70c5h
+dd 072191dfbh
+dd 0951a7e77h
+dd 00f620322h
+dd 020a6337bh
+dd 013a3d9d1h
+dd 0bb3f5727h
+dd 0b30494d5h
+dd 0acea8fbah
+dd 0f9ea639eh
+dd 03dce0c90h
+dd 05f1c9b26h
+dd 0ba8f0578h
+dd 0de84d502h
+dd 0bcdfad6dh
+dd 0ef02cf42h
+dd 0ebdd8782h
+dd 0f7935cd8h
+dd 014cb1fffh
+dd 09977cf40h
+dd 0a9e5ab00h
+dd 0422e847ch
+dd 0c6c8005ah
+dd 00d62b926h
+dd 096c4d620h
+dd 01f2081b7h
+dd 031a9937bh
+dd 0ec354778h
+dd 06f61068dh
+dd 0dcc6b8bah
+dd 0fad0b0f8h
+dd 05e34619ah
+dd 030069fcch
+dd 0d1928e18h
+dd 01c323931h
+dd 028438891h
+dd 036be791eh
+dd 064db8a8eh
+dd 05265d49eh
+dd 048d4dc4bh
+dd 01277d0b0h
+dd 0a3c61366h
+dd 0dacc9c82h
+dd 07e00306ah
+dd 08da10d8ah
+dd 0ebbc089bh
+dd 02620aa22h
+dd 0ebb17809h
+dd 06a79227bh
+dd 0443eb921h
+dd 0fe84e4e5h
+dd 01fb25eaah
+dd 0c7364982h
+dd 03cc2a30ch
+dd 0ab1fc061h
+dd 0bafdef97h
+dd 040d016e9h
+dd 061091d56h
+dd 0736bddafh
+dd 00c6ffda2h
+dd 0e2a3c388h
+dd 0ed86710dh
+dd 0aa670984h
+dd 0a9f0404dh
+dd 005f4d2e0h
+dd 082df254dh
+dd 0f83f37cdh
+dd 04bd1d7f8h
+dd 07b8fddb8h
+dd 06f03cd3ch
+dd 00f7d0901h
+dd 0e925a184h
+dd 01c003c6fh
+dd 01fec3242h
+dd 0269c09a6h
+dd 094bccb4dh
+dd 049e00349h
+dd 00b9679b8h
+dd 06be21729h
+dd 0c6840927h
+dd 06ba53ed0h
+dd 0dc1855c3h
+dd 0974e0bb1h
+dd 08dc9f515h
+dd 0687476c3h
+dd 0dffcf786h
+dd 08a016171h
+dd 0fa13615fh
+dd 06b2120beh
+dd 04268425eh
+dd 06a765190h
+dd 09de00efdh
+dd 053aa79a1h
+dd 0838327beh
+dd 0b5479d29h
+dd 035667ad2h
+dd 0a4409334h
+dd 0b23bb6a9h
+dd 067699306h
+dd 0c484d3cah
+dd 0f4d9d5feh
+dd 06531f8cbh
+dd 0de978dd6h
+dd 07bac723eh
+dd 049a9a17ah
+dd 0574a93c9h
+dd 0ef8e6cb2h
+dd 05bebe2dah
+dd 0c5501bbch
+dd 08d0f40beh
+dd 0e5b7aea2h
+dd 08cc5c49fh
+dd 06f423513h
+dd 0b538fbd0h
+dd 07a5cb3bch
+dd 06437a5b6h
+dd 004b9b4dah
+dd 05245050fh
+dd 02bc9d1c5h
+dd 0367b6db4h
+dd 0e6c5052bh
+dd 0fed3e3f3h
+dd 09d3e5dcfh
+dd 07ec62c74h
+dd 0e9181fb1h
+dd 057ec087fh
+dd 02b9239b5h
+dd 0f7477432h
+dd 02ea4c5efh
+dd 0fef27b1bh
+dd 084fff766h
+dd 05d46bbdeh
+dd 0df53d5eeh
+dd 0082a7370h
+dd 0ff4dc067h
+dd 00ef90261h
+dd 08432b65eh
+dd 0741af3ebh
+dd 01008501bh
+dd 01b3f463ch
+dd 07e073604h
+dd 0ff55791bh
+dd 076502f4ah
+dd 06d8b34cfh
+dd 0795bea60h
+dd 0c9c22b38h
+dd 016755779h
+dd 02ea44d1dh
+dd 0a3f82910h
+dd 0901884fah
+dd 0e778e508h
+dd 030be5280h
+dd 0a5c93c6ch
+dd 0bbe053cfh
+dd 06edf377dh
+dd 08c28857ah
+dd 02227414fh
+dd 0b94a723fh
+dd 0aba23d37h
+dd 02125bd32h
+dd 0ad181271h
+dd 06d31e925h
+dd 0c19a417bh
+dd 0e06f99b1h
+dd 001fcdb55h
+dd 043546437h
+dd 0d863df8ch
+dd 004514c36h
+dd 01158fb95h
+dd 04269d088h
+dd 06eee70b4h
+dd 013eb8d8dh
+dd 030d1a677h
+dd 039001cb5h
+dd 0db9249fbh
+dd 0ab43ec45h
+dd 0b88287e5h
+dd 01fb2d834h
+dd 07aeabb10h
+dd 0b6af14b8h
+dd 0777c667dh
+dd 051bacb91h
+dd 01d36ef67h
+dd 00534ea80h
+dd 0b9ae1f63h
+dd 042024589h
+dd 02c5cc63ah
+dd 0d938c570h
+dd 0c23eb1ddh
+dd 0f8f898ceh
+dd 032e8b6aeh
+dd 0c4a6deb7h
+dd 09157d416h
+dd 06b99c42bh
+dd 099f35536h
+dd 06dcdf4b0h
+dd 0ee49d56dh
+dd 0315f340eh
+dd 0fc6d5af5h
+dd 0aa87a6deh
+dd 0fb9e5812h
+dd 0e6fb4e17h
+dd 00a3ed1f1h
+dd 018460c53h
+dd 0e81ef1d5h
+dd 0632d95feh
+dd 0695963feh
+dd 0720b767ch
+dd 0f096b8aeh
+dd 0ce2df893h
+dd 07e11671bh
+dd 0dfc7359bh
+dd 029db53f3h
+dd 0af7652a8h
+dd 01b892599h
+dd 036bf1539h
+dd 071bc5ea6h
+dd 0ece3d804h
+dd 005a5966ah
+dd 06b6dfadbh
+dd 0f8baf67bh
+dd 0723197f8h
+dd 095260f14h
+dd 0242bfff8h
+dd 0fa1740ffh
+dd 0189beee3h
+dd 09b26865dh
+dd 075afcbd8h
+dd 09ccfb7e9h
+dd 02bfe5ffch
+dd 0d63a498ah
+dd 0805d192dh
+dd 040bddf3ah
+dd 079c58e72h
+dd 05e133c7dh
+dd 07eb54b7dh
+dd 03e09f0fdh
+dd 042957295h
+dd 037dd0570h
+dd 072e9143dh
+dd 0c75a5a7ch
+dd 0a290b7fah
+dd 05dc0fbb4h
+dd 0e06ca8f9h
+dd 01f6a19adh
+dd 0ba66dcafh
+dd 06d9289c1h
+dd 0efc510bah
+dd 0e03a0a07h
+dd 0541555f8h
+dd 0a4c1100ah
+dd 0154aedfch
+dd 0375ff2a1h
+dd 0991d5acch
+dd 04a63a0c1h
+dd 06f8190dah
+dd 00befea32h
+dd 0cb100285h
+dd 0766f5feah
+dd 011b603fbh
+dd 005925547h
+dd 0e00f9d7ah
+dd 05032e2c7h
+dd 0dcf2babch
+dd 002dd527bh
+dd 09f2b5fedh
+dd 062e0fdb8h
+dd 05d87bc32h
+dd 0dae663b2h
+dd 0b151f9beh
+dd 08a30f6c5h
+dd 0223b41e8h
+dd 0a8df5372h
+dd 0fcf60423h
+dd 0dda7352eh
+dd 05c1c1a0bh
+dd 0076cc3bdh
+dd 0ab438c09h
+dd 07705bc02h
+dd 03b630cc5h
+dd 02fc0d024h
+dd 09a2366e6h
+dd 060bb173fh
+dd 0c7f1c102h
+dd 0e7c67a3eh
+dd 023782562h
+dd 00cd1426ah
+dd 01fa5ed0dh
+dd 0afd7374bh
+dd 03e589623h
+dd 0159e7396h
+dd 093168a6ch
+dd 03b716b79h
+dd 0272ce970h
+dd 0fa1731d5h
+dd 034f61c35h
+dd 0eb3aa590h
+dd 012b228bfh
+dd 07adbd4d1h
+dd 0769852d9h
+dd 0708a9504h
+dd 018103532h
+dd 098dbe9a5h
+dd 098650852h
+dd 01d4704fbh
+dd 0e5bd1416h
+dd 05a740ec7h
+dd 095a81db9h
+dd 0e07410a3h
+dd 024c06599h
+dd 0c61ebc88h
+dd 05da3be50h
+dd 0f03c2356h
+dd 0a26caab3h
+dd 0f173403eh
+dd 0bad5d6d3h
+dd 0dd7b03c2h
+dd 0a18740c0h
+dd 0dff163d0h
+dd 095778e49h
+dd 0a7a446dfh
+dd 08b314d8eh
+dd 09fcf2e25h
+dd 068b7824fh
+dd 0fb0e3a54h
+dd 0939e8dbbh
+dd 0d39e5c3fh
+dd 0c985d91fh
+dd 00dd8f761h
+dd 0ce4a9c45h
+dd 05dc8eb57h
+dd 068222368h
+dd 02d013228h
+dd 04e553911h
+dd 04479b9d6h
+dd 093aff066h
+dd 0f9fc6fb0h
+dd 0773ca921h
+dd 0668c6972h
+dd 0def847aeh
+dd 0a4735848h
+dd 0b6a055abh
+dd 00e5d5dd1h
+dd 0ac9ae6a8h
+dd 0ca442eeeh
+dd 0d2f42cd9h
+dd 0a9dc7ae2h
+dd 06ad11793h
+dd 0ca33d171h
+dd 0eb3fa8b1h
+dd 03f88cdc1h
+dd 08878a35bh
+dd 07a9ee4ddh
+dd 0f4d5c497h
+dd 0d3a4695dh
+dd 0c76d61f3h
+dd 050afd8e5h
+dd 062c59847h
+dd 06ff20cf0h
+dd 0328e4acdh
+dd 0dc554096h
+dd 0234153cfh
+dd 0c83af46ah
+dd 0efbb0df1h
+dd 0abe4c1f1h
+dd 07dd610dfh
+dd 099e3e02bh
+dd 0eba1fb9fh
+dd 0f033b7d8h
+dd 0bba6e7e3h
+dd 07873d156h
+dd 03723c1a6h
+dd 0907e9933h
+dd 0c85d15b6h
+dd 0afb430f7h
+dd 08999a62bh
+dd 041b87e1fh
+dd 0b2a8acb9h
+dd 02610b894h
+dd 0f0ce3391h
+dd 01f4d712ch
+dd 04ddc9e16h
+dd 0724a9a78h
+dd 03eb37e13h
+dd 0455c86f1h
+dd 011ec76c1h
+dd 04ef0d286h
+dd 0475dfbe4h
+dd 0ed84982ch
+dd 05922884ch
+dd 08daa8c13h
+dd 0bfef67b6h
+dd 05da02ad1h
+dd 0e29b19a7h
+dd 060da3a6eh
+dd 02fa5ba01h
+dd 09825aa84h
+dd 05dbcf27ch
+dd 0b6713f18h
+dd 03af29cd1h
+dd 0f126311fh
+dd 0913b4448h
+dd 0310020b5h
+dd 0929fba38h
+dd 0adec9421h
+dd 07fb08791h
+dd 053ce38b4h
+dd 0aa759647h
+dd 0708c45c8h
+dd 08ec226bdh
+dd 0d8930af6h
+dd 02ad8550eh
+dd 0abe0add9h
+dd 0975ca629h
+dd 05a80b9a2h
+dd 021179062h
+dd 06ea832b4h
+dd 0aaf0cce1h
+dd 07851a850h
+dd 035bb223bh
+dd 0e78b1ad5h
+dd 0bb937d09h
+dd 0ed1561ach
+dd 0a3a8d51bh
+dd 0105e8828h
+dd 02897cc2eh
+dd 00011a532h
+dd 0b5a5d766h
+dd 037903bbbh
+dd 065890668h
+dd 0048b9c21h
+dd 0d7e3561ch
+dd 0d0f2563fh
+dd 0837917b4h
+dd 0203f0dcch
+dd 076c69191h
+dd 0bedf7532h
+dd 08b0e8f83h
+dd 0cc9a42e2h
+dd 00b562a2ah
+dd 00afa16f7h
+dd 057c70ed5h
+dd 05cc67d20h
+dd 0c51d92fbh
+dd 04411ee68h
+dd 03e80a337h
+dd 02ee0d8afh
+dd 02bf38019h
+dd 02d2c543bh
+dd 0b50cc896h
+dd 015c8adedh
+dd 06ad8ebc8h
+dd 0bbed7f19h
+dd 0498b470fh
+dd 0376cbd52h
+dd 036074af9h
+dd 0e36b0b61h
+dd 0d9b95fa8h
+dd 05c195777h
+dd 08f395ed0h
+dd 0bdf95438h
+dd 006dc0a03h
+dd 082aa61c3h
+dd 0eefe8bd5h
+dd 0a0fc7f2bh
+dd 02145b229h
+dd 02e266cd7h
+dd 08c985114h
+dd 09f6f948eh
+dd 01cb8bf45h
+dd 01f2c6134h
+dd 0dca0c8eah
+dd 0746003e9h
+dd 04fa883a0h
+dd 0c5cb2892h
+dd 084d044a4h
+dd 03fd401bdh
+dd 031bfe7bfh
+dd 0db18872fh
+dd 0b44e6fbfh
+dd 0b9da5985h
+dd 0e3bc818eh
+dd 0bdaa4acbh
+dd 063fcee9eh
+dd 0ab35b509h
+dd 070741b3ch
+dd 049c6838eh
+dd 03c50ee15h
+dd 03a1e456ah
+dd 0009724feh
+dd 0ed003d9eh
+dd 05562df6bh
+dd 0b7c9363ch
+dd 0ff3d040dh
+dd 06102677bh
+dd 0075e6300h
+dd 0065730e0h
+dd 097ab1882h
+dd 01d00f3a7h
+dd 05a48ed2fh
+dd 0083dd52fh
+dd 0248021c4h
+dd 0ff92d447h
+dd 0a61d52c3h
+dd 0dae1f8e4h
+dd 032243803h
+dd 0158c44b4h
+dd 07e60315bh
+dd 0d59507cdh
+dd 031b6141ch
+dd 018a11ce7h
+dd 0d9f7f911h
+dd 0cd62e481h
+dd 0c0bdd679h
+dd 06944965eh
+dd 025076509h
+dd 037316a50h
+dd 053b58957h
+dd 0ccdfc7e7h
+dd 003e0e523h
+dd 0638a8127h
+dd 0c19db337h
+dd 08bc98864h
+dd 070c90b85h
+dd 05b977e13h
+dd 09a0732ceh
+dd 0da5619a7h
+dd 0b3353937h
+dd 0ebe8469eh
+dd 099f73984h
+dd 04d481cb2h
+dd 0b3799b11h
+dd 077356e04h
+dd 0f748935ah
+dd 0b8e9c379h
+dd 0d1891ccbh
+dd 046796aa5h
+dd 0d0b9d7e4h
+dd 051a6f0e5h
+dd 08fdce6a3h
+dd 04c5702e9h
+dd 0a4afd7e7h
+dd 00f27992ah
+dd 056ff6958h
+dd 07129e840h
+dd 0a4a00154h
+dd 0e1d84693h
+dd 045d8e252h
+dd 010f98837h
+dd 0d55fa254h
+dd 05d8a78dfh
+dd 0f2ff2612h
+dd 00ca6dfd2h
+dd 0d9f982b3h
+dd 0cbb69e69h
+dd 09039502fh
+dd 0cf40e9aah
+dd 08cf811b1h
+dd 0f085b4b0h
+dd 088c064c6h
+dd 0159f8e97h
+dd 05d5d8bd3h
+dd 0c4e4db42h
+dd 023e88999h
+dd 05f2b8935h
+dd 02ad19f11h
+dd 09de7b763h
+dd 012434531h
+dd 0f3c2ea48h
+dd 02219dcf9h
+dd 0ac74cc69h
+dd 07cc344a2h
+dd 0da8f5570h
+dd 06b718040h
+dd 0d2f8d59eh
+dd 018392dbfh
+dd 0772145a3h
+dd 0237c6165h
+dd 0124853e3h
+dd 0aae39486h
+dd 0d6d1a409h
+dd 019dfa0b3h
+dd 02685db7dh
+dd 0a0fb2496h
+dd 09f30597eh
+dd 080c226beh
+dd 06821c974h
+dd 0542a8973h
+dd 046c24cb7h
+dd 03246445fh
+dd 0772c9178h
+dd 0490c9ce8h
+dd 0c4956c7fh
+dd 003c91a4ch
+dd 0a23cc181h
+dd 046cb49d8h
+dd 0e42fbd01h
+dd 005072291h
+dd 0e90a24edh
+dd 0366718f8h
+dd 05291fdd3h
+dd 03ec1c5e5h
+dd 01c066d20h
+dd 004ea5644h
+dd 06e6207dch
+dd 08db99d35h
+dd 060c6b421h
+dd 0c7e5f0d9h
+dd 08e1d274eh
+dd 03eeb4909h
+dd 0c2f1bf3ah
+dd 0398791aeh
+dd 0bd0f1692h
+dd 0d3ac32bah
+dd 0e4f66f4eh
+dd 0b82f97b6h
+dd 00e4601c8h
+dd 00c6bb0ceh
+dd 0d0b38d49h
+dd 013c0d0c8h
+dd 0b0a4eff6h
+dd 0cdad865bh
+dd 01626aa1bh
+dd 02885c331h
+dd 0a70d052ch
+dd 0492a3dbfh
+dd 023b388fdh
+dd 096f3e984h
+dd 0e782818eh
+dd 096d206bdh
+dd 0f580c310h
+dd 0b093b4e5h
+dd 03d772902h
+dd 0b9bd3a57h
+dd 0bda8e77ch
+dd 0d8499a24h
+dd 0b5fa6d95h
+dd 0eba57614h
+dd 0d9b68b41h
+dd 0a8b5e14ah
+dd 0451e35dfh
+dd 0bf8a5df6h
+dd 048db33dch
+dd 024f09326h
+dd 0515b0409h
+dd 0627347f2h
+dd 0d2aa75a6h
+dd 008cada52h
+dd 08bb2e8d3h
+dd 04c2f3d14h
+dd 010486f61h
+dd 0f45dd12ah
+dd 023720b1dh
+dd 0767efd05h
+dd 011a32407h
+dd 0a74db897h
+dd 0209e82c2h
+dd 0f17e1721h
+dd 030f8cc67h
+dd 0cafea12ah
+dd 002fc3c80h
+dd 0e88554e5h
+dd 070b66818h
+dd 0fa3ea15ch
+dd 0fcc66d3fh
+dd 00e35b9e1h
+dd 03adeef53h
+dd 0e564aed8h
+dd 01ebcb05bh
+dd 044491f07h
+dd 0cecef154h
+dd 08da6a1e2h
+dd 0d533e788h
+dd 042448fdfh
+dd 0f91886ddh
+dd 0af534876h
+dd 012105066h
+dd 0afcba4edh
+dd 05dad54e8h
+dd 090b8febdh
+dd 0bf6b7a59h
+dd 04f56d97eh
+dd 06c013f58h
+dd 0d172b733h
+dd 095b87833h
+dd 031d7c12bh
+dd 0e6053794h
+dd 0d3cd0d3ch
+dd 0b4cf4052h
+dd 0fc5fd5c8h
+dd 09222a281h
+dd 097051537h
+dd 0cc5f894bh
+dd 0d3190220h
+dd 0d8a2fb9eh
+dd 0ca278fe9h
+dd 0616c0958h
+dd 097ef94dfh
+dd 0559108d4h
+dd 0a3d659ddh
+dd 04c5538d3h
+dd 03516c945h
+dd 060588806h
+dd 0a2a5fe7bh
+dd 02237e6c4h
+dd 0df27f3cah
+dd 0c1d9f692h
+dd 07a699d8bh
+dd 0821f47b5h
+dd 03f1b6dedh
+dd 03c253e32h
+dd 069ae63e7h
+dd 0b847b33bh
+dd 0d9fbd28ch
+dd 077578422h
+dd 031d097b1h
+dd 010b8766ch
+dd 0aee96f67h
+dd 00b3316b3h
+dd 00539715ch
+dd 06ebcf5adh
+dd 006f2d235h
+dd 0b658063eh
+dd 00fe35cbbh
+dd 01861edd9h
+dd 00bb903a9h
+dd 0b4526cb2h
+dd 089397263h
+dd 081cba7a1h
+dd 0fce9a426h
+dd 00d8f4236h
+dd 023daa016h
+dd 06a224257h
+dd 09a0333f7h
+dd 06e63b6c1h
+dd 0dc7adbffh
+dd 0ab624a3ah
+dd 0f08a36c5h
+dd 01fa1a8e8h
+dd 07f8bde65h
+dd 00ccbc9b3h
+dd 0a91b3968h
+dd 0fe0e8c2fh
+dd 0069a1537h
+dd 0031eb158h
+dd 05adb0b8ah
+dd 056945015h
+dd 035768942h
+dd 0f11aa2ffh
+dd 01d53b290h
+dd 028ca0a81h
+dd 0c466cae0h
+dd 0c92b392ah
+dd 049c0f540h
+dd 06f6623d5h
+dd 028ee1341h
+dd 082d1a6ech
+dd 0817911d7h
+dd 0e9d3dc83h
+dd 060aae628h
+dd 047f62ab5h
+dd 0cf82abb9h
+dd 0d96815adh
+dd 087abe72ch
+dd 042f33725h
+dd 0050b78cch
+dd 02663a175h
+dd 09cb5dabbh
+dd 0d834d532h
+dd 07c61d13fh
+dd 0fffe81f8h
+dd 0c1e2fe70h
+dd 0bebcd86eh
+dd 00e0ce7e5h
+dd 0ba2cc351h
+dd 02ea51c21h
+dd 0e59e530fh
+dd 0bbfc4f75h
+dd 0468073c4h
+dd 0ddf6eb09h
+dd 055880271h
+dd 01a93765eh
+dd 0e9db72f7h
+dd 08a36f0bch
+dd 0d08ce352h
+dd 080652317h
+dd 08e2bbb93h
+dd 0fc8dc466h
+dd 03346d998h
+dd 07be71bb1h
+dd 08a3dfe94h
+dd 0340b63b3h
+dd 07d308c8dh
+dd 088c2003eh
+dd 093058c28h
+dd 0566dd40ch
+dd 09dc8c17fh
+dd 004902a7bh
+dd 0cd3a3b1ah
+dd 038c612a7h
+dd 0225ea3b4h
+dd 043b68811h
+dd 09c9373f0h
+dd 04754a8b8h
+dd 09441cf82h
+dd 04e243d8eh
+dd 07115095bh
+dd 025c7c82ch
+dd 013ef4ed0h
+dd 0e4d3404ch
+dd 0754eff1ch
+dd 04fe82388h
+dd 02fe24329h
+dd 00a258c2ah
+dd 029a9494bh
+dd 091f9419eh
+dd 02e07aec1h
+dd 0b357da89h
+dd 0699fc29bh
+dd 02eedb91ch
+dd 0eade61dah
+dd 017cd93afh
+dd 0bc95b951h
+dd 0e1325dc3h
+dd 01f9889b9h
+dd 0317b4420h
+dd 02ca071e1h
+dd 08f0faa4eh
+dd 0f7ccc004h
+dd 0c1730fadh
+dd 0d7530bf5h
+dd 0c9ecbe19h
+dd 0824a3acch
+dd 0e90afdd1h
+dd 0f84b390eh
+dd 03eafbe8ch
+dd 0144e0be4h
+dd 04adf10a0h
+dd 00d57d6cbh
+dd 03fca2dbeh
+dd 0b2127e57h
+dd 0e0dde3afh
+dd 06ef039a2h
+dd 0f0b8c3ech
+dd 0b2700d03h
+dd 042cb5f79h
+dd 0e1e96b36h
+dd 088a2221eh
+dd 0f4576a5eh
+dd 06f19ae60h
+dd 081a452a0h
+dd 02ba93e8ah
+dd 01d306ebdh
+dd 0ad170ccfh
+dd 0cd100fb6h
+dd 03cdac0cah
+dd 096df4078h
+dd 0c4824d26h
+dd 0ccc009b5h
+dd 0d7498764h
+dd 01c60d16fh
+dd 006ee0e16h
+dd 02968c91dh
+dd 06113793ah
+dd 0ffe93176h
+dd 08e716cc9h
+dd 060d438a3h
+dd 0db98bc48h
+dd 0390d5a1fh
+dd 0e1fa4304h
+dd 0fbdbcb5ah
+dd 0df8269aah
+dd 04e11281ch
+dd 070009433h
+dd 028f12aa9h
+dd 00928a0a1h
+dd 06246c939h
+dd 0a82930f7h
+dd 0fa905362h
+dd 038bb22e5h
+dd 0f68b2fd9h
+dd 0801f7085h
+dd 0d17989dah
+dd 041726e9ch
+dd 0da6bf2e4h
+dd 0d9365339h
+dd 02fcbe34ah
+dd 0534de980h
+dd 03117859dh
+dd 05121b0e5h
+dd 0223149a4h
+dd 019ebd513h
+dd 0448e6ae5h
+dd 0a6ce0533h
+dd 09a08aecah
+dd 0f9339175h
+dd 0a2638499h
+dd 0787b77c3h
+dd 064151743h
+dd 087413a7eh
+dd 065cdcb24h
+dd 05afff652h
+dd 008d32ac2h
+dd 074e75214h
+dd 0744176d0h
+dd 0750b395fh
+dd 01a3f9819h
+dd 0189580cbh
+dd 0cd1c02ach
+dd 0bf150c84h
+dd 095a76693h
+dd 0f0bc1cafh
+dd 027823ea0h
+dd 07a7ad0a2h
+dd 0b7c384adh
+dd 0033b9f4ch
+dd 0ba7ab8b5h
+dd 0d1b2b78dh
+dd 03b4ebbe6h
+dd 08d43ef06h
+dd 0a0a4a375h
+dd 062086ef7h
+dd 009a83748h
+dd 0160a65c1h
+dd 0172eac46h
+dd 099028b59h
+dd 0d2659e09h
+dd 0e2422d60h
+dd 054010d08h
+dd 04ca231a0h
+dd 06d832f0ch
+dd 098fb77cbh
+dd 0deeb3e94h
+dd 0beaccb9ah
+dd 0f66bc584h
+dd 07d352257h
+dd 060931755h
+dd 0f4abcf2fh
+dd 0bf7cf20dh
+dd 0b15a8841h
+dd 07e9693eeh
+dd 0f3472567h
+dd 0a15000c7h
+dd 092322c09h
+dd 035e7ac97h
+dd 0a3c139afh
+dd 0c5ecb46ch
+dd 08416e66ch
+dd 0f00bacd9h
+dd 0ef57104ch
+dd 0fae57251h
+dd 062eb0b58h
+dd 0c01da6f8h
+dd 0e4a19883h
+dd 07a364d69h
+dd 056d4e3beh
+dd 09820cfe0h
+dd 083a78af6h
+dd 0940d1a78h
+dd 0656f4279h
+dd 06520497fh
+dd 0003d214ah
+dd 00ee92f7bh
+dd 0f7deb516h
+dd 0f0d11224h
+dd 0ad6538e8h
+dd 0b41353d7h
+dd 05e4b72f0h
+dd 0d6d62662h
+dd 0fc047131h
+dd 0550e2517h
+dd 040e2022dh
+dd 0c2722834h
+dd 0a23456b5h
+dd 0b3f6a938h
+dd 09b957859h
+dd 0955c855dh
+dd 047c399efh
+dd 00ee776fch
+dd 0a8fefdd7h
+dd 030908feeh
+dd 00c0fc3f4h
+dd 0fd4ac649h
+dd 0325cee89h
+dd 0a0271ccfh
+dd 092d7d6c1h
+dd 0cdc49a0dh
+dd 095d347efh
+dd 0852974efh
+dd 0b64a2101h
+dd 0bb2539dah
+dd 089f3000ah
+dd 01627dfa9h
+dd 0d3e8d755h
+dd 0a4f56eb2h
+dd 005a37719h
+dd 0a9f252a6h
+dd 067451899h
+dd 07f21b679h
+dd 048679146h
+dd 066847df9h
+dd 00533114dh
+dd 0ad62dfb2h
+dd 069c2a29bh
+dd 04f71dde6h
+dd 09ffd43c5h
+dd 099bb314ah
+dd 01a32e6f1h
+dd 06d3735eeh
+dd 0bf98fd94h
+dd 08bb3610ch
+dd 0ab7d436ch
+dd 01277699bh
+dd 075664268h
+dd 0da460121h
+dd 06aa47dd1h
+dd 0bf7099e0h
+dd 0652bf975h
+dd 01d8c14bfh
+dd 03da6f68ch
+dd 035061fffh
+dd 078e4ba70h
+dd 0d78af916h
+dd 04c0c6174h
+dd 09cd8984ah
+dd 0dd75c24ah
+dd 0542912e3h
+dd 0a87447deh
+dd 0570bdd58h
+dd 0c3ab10f1h
+dd 03cf093a4h
+dd 0f1ed3582h
+dd 0e70f3574h
+dd 071c060f5h
+dd 0b2e6e66dh
+dd 0984025fdh
+dd 0435efcb4h
+dd 0242b4fd1h
+dd 00d946385h
+dd 0b534407bh
+dd 050e14a40h
+dd 0ab71b05eh
+dd 0612569f4h
+dd 0bf4dc747h
+dd 036c04ed2h
+dd 0f198e6c5h
+dd 05d8ee52fh
+dd 0b002837bh
+dd 08ff7216eh
+dd 09317c87fh
+dd 0c3260367h
+dd 0288c47d6h
+dd 09170e271h
+dd 08830b39ah
+dd 0de98fdffh
+dd 050690d1bh
+dd 0b1831ff1h
+dd 09d546a43h
+dd 0f9b7fd33h
+dd 0701a788dh
+dd 03dd96da2h
+dd 067f32579h
+dd 07da3403dh
+dd 06adcfbbeh
+dd 02c639eaeh
+dd 00df8b084h
+dd 019b087e2h
+dd 0a6db99a7h
+dd 0cc138c72h
+dd 0ad488c6ah
+dd 0af2f2b39h
+dd 0cc675af7h
+dd 0829eff16h
+dd 0cc9a273ch
+dd 0c3d8fdech
+dd 0e8614859h
+dd 09f5823c9h
+dd 0caaffed2h
+dd 002fd08efh
+dd 06751009eh
+dd 023bdbf5dh
+dd 0503d7356h
+dd 0979a02f2h
+dd 07fbc0967h
+dd 0718470f6h
+dd 05d28efb3h
+dd 0f5265a02h
+dd 0918ab86ah
+dd 0b4fe0ebfh
+dd 0d041bacch
+dd 005fcabeah
+dd 0be9d8f71h
+dd 093a7bf34h
+dd 082b9e891h
+dd 0aaa127dah
+dd 0d7b3e46ah
+dd 0530e67eah
+dd 03d0e2b31h
+dd 017f60b4eh
+dd 09f9ff76bh
+dd 0c6519fa6h
+dd 025489551h
+dd 0dd3fd5a2h
+dd 0c93365f3h
+dd 0fa8dd09ch
+dd 002fb6668h
+dd 0ae8c51c7h
+dd 05fb397a6h
+dd 0108c50f0h
+dd 06f959857h
+dd 0df6fbee0h
+dd 030682cc7h
+dd 00b3f17f6h
+dd 0fe97a462h
+dd 065c6ff21h
+dd 090da9c29h
+dd 0c5dc29e4h
+dd 05c3ea1fdh
+dd 01079d749h
+dd 0e2ab3f2bh
+dd 04ea5d41dh
+dd 0fab09939h
+dd 0c1772021h
+dd 05ca069fdh
+dd 0fc8a0b10h
+dd 0f750dbfeh
+dd 059cd971eh
+dd 0a870569eh
+dd 080b1fceah
+dd 0051fc188h
+dd 00cef72efh
+dd 0bb32ac44h
+dd 0c0364501h
+dd 0eead2b75h
+dd 04074f503h
+dd 06c49e46bh
+dd 025fa885ah
+dd 03fed6a51h
+dd 094a57710h
+dd 028ad3ab0h
+dd 0490f821eh
+dd 09f62b9eeh
+dd 09739f87eh
+dd 08b5d02abh
+dd 06f71e3d1h
+dd 0388c7c38h
+dd 05e2d9ee2h
+dd 03084d175h
+dd 0e3cf836ch
+dd 051fc1d64h
+dd 09b3f8aceh
+dd 08e389cdfh
+dd 061addbc8h
+dd 04c8e2f10h
+dd 048d50f21h
+dd 03ded7efdh
+dd 04a6c3a2ch
+dd 045e41563h
+dd 01d3e088ah
+dd 0874fab4eh
+dd 0616ac854h
+dd 0cf70d9f6h
+dd 04e5c8151h
+dd 09f5c4279h
+dd 035167e9ah
+dd 002638442h
+dd 0a210117ch
+dd 02629bc98h
+dd 0c8df52ach
+dd 04c5fe6efh
+dd 0a3220937h
+dd 0058ab4ddh
+dd 0fe4a5e8bh
+dd 0455036e6h
+dd 00fe195edh
+dd 07e32ef09h
+dd 0a04d321eh
+dd 0b240908dh
+dd 0e1e65c9dh
+dd 0727f6ba3h
+dd 03132e07dh
+dd 01fc7e9dbh
+dd 03fcd75edh
+dd 0415f6c07h
+dd 0a045fac1h
+dd 07afe87c8h
+dd 06d4794a4h
+dd 01dc47f2ah
+dd 09b2eda03h
+dd 01d2f61e1h
+dd 020f58c15h
+dd 01bc16b4fh
+dd 04b624c76h
+dd 04be668b2h
+dd 00d0bd7b0h
+dd 06f98498ch
+dd 086e5577ch
+dd 07de5a055h
+dd 095e33d1ch
+dd 026cce02ch
+dd 0e8739a3eh
+dd 0692e441bh
+dd 0ce53bf60h
+dd 0419f7660h
+dd 04c0483e5h
+dd 0eaa2d229h
+dd 0b604f78ch
+dd 0f36bd7f0h
+dd 091ca9a05h
+dd 056e07408h
+dd 090f62dc9h
+dd 046baee54h
+dd 00ba9afb4h
+dd 060d57aa6h
+dd 0abe1091dh
+dd 047f7f5c8h
+dd 0aeeb5117h
+dd 06b2cda1ch
+dd 0133ac02ch
+dd 09e65371ch
+dd 0e922f757h
+dd 0156b69a2h
+dd 0209f8bf8h
+dd 076c3148fh
+dd 0c04be8deh
+dd 08ed80c37h
+dd 0a42d6af6h
+dd 0a1efeabch
+dd 0d21313fbh
+dd 0cfae35ffh
+dd 0ab2e9222h
+dd 0e89b2961h
+dd 01179e975h
+dd 08d7bb8bfh
+dd 06894a0bbh
+dd 0abe6fe6fh
+dd 022a67c9fh
+dd 0461f79cch
+dd 00e84983bh
+dd 0cbab0159h
+dd 0b20009c1h
+dd 02ab0470ch
+dd 0a528e3f1h
+dd 068b062e2h
+dd 057b76d7fh
+dd 0ddbb575eh
+dd 0a2f639fch
+dd 085d6a56ah
+dd 0d90179fah
+dd 0eecb083bh
+dd 0b436afdch
+dd 0c0573626h
+dd 006fc83f6h
+dd 00d1209e6h
+dd 0a1870414h
+dd 0b8065076h
+dd 0ded0eef2h
+dd 0fdbf2db1h
+dd 0db2caeb9h
+dd 0c78b1878h
+dd 080946a1eh
+dd 036025fd5h
+dd 046cbdb0fh
+dd 027c7936eh
+dd 0fb86dd4ah
+dd 0c49a37ffh
+dd 0bd33dabbh
+dd 043b0c2a2h
+dd 04bd00650h
+dd 0475f339fh
+dd 09ebcc817h
+dd 02648d254h
+dd 0bc560332h
+dd 081491de4h
+dd 0a4742cc3h
+dd 0e9e454b6h
+dd 0dc37741fh
+dd 014deb868h
+dd 012f83214h
+dd 042d8070ch
+dd 093926e66h
+dd 070044e22h
+dd 042aae093h
+dd 030c3c1fah
+dd 08612bfaeh
+dd 05b4ba81ch
+dd 00aac8057h
+dd 02c0fb817h
+dd 0b4000e7ch
+dd 0b6623401h
+dd 09e071126h
+dd 08c8440e3h
+dd 01c88757ah
+dd 05575d797h
+dd 0add6b991h
+dd 052956dc3h
+dd 0dbf61068h
+dd 0fba22363h
+dd 094982058h
+dd 0d2d75102h
+dd 01100a6d7h
+dd 0654a413ah
+dd 0bc03ac72h
+dd 070ea5064h
+dd 0db7aed4ah
+dd 0621e943ah
+dd 055783892h
+dd 05d99e710h
+dd 0ac3af2d7h
+dd 0333b1420h
+dd 08fea0d76h
+dd 063a68778h
+dd 0a9c0d540h
+dd 06618d725h
+dd 09e17280dh
+dd 0a08a4ddfh
+dd 08b56d05ch
+dd 0641a6a95h
+dd 06faf2605h
+dd 0a71a2707h
+dd 0b5a33feeh
+dd 080fa53edh
+dd 06da1779bh
+dd 046f70a31h
+dd 03635e5a6h
+dd 059d1f973h
+dd 022898b01h
+dd 06b2e14a5h
+dd 04b60929eh
+dd 0ef27f040h
+dd 0f3328673h
+dd 00838ab58h
+dd 0824737cbh
+dd 0c3965196h
+dd 02d281764h
+dd 0a96ce0dah
+dd 064fecf3ch
+dd 02a654ef5h
+dd 0be4852beh
+dd 0842cf2a6h
+dd 036333df6h
+dd 097c93b01h
+dd 0fc93f170h
+dd 05db10e2eh
+dd 0a85df499h
+dd 0ae8e51d0h
+dd 076f42ceah
+dd 06c66a63dh
+dd 04c703673h
+dd 02e112bbfh
+dd 04a10fe2dh
+dd 0a0b7c33dh
+dd 05158fb10h
+dd 049f11946h
+dd 05dcb7387h
+dd 06dd4bb5dh
+dd 092de8034h
+dd 0191cfdedh
+dd 0821e2c5ch
+dd 0e2616973h
+dd 083bad5d6h
+dd 063bdd80fh
+dd 006db714dh
+dd 0b6f0197fh
+dd 07d078cdah
+dd 09870ed46h
+dd 0e2138c60h
+dd 025bcdef8h
+dd 098e25a6eh
+dd 065433c52h
+dd 0b043fc31h
+dd 02c9dc8e6h
+dd 0394c871fh
+dd 01f9bf042h
+dd 0aa6fead4h
+dd 07492ffaeh
+dd 0b9cb1ee2h
+dd 05a4c8342h
+dd 01a2b2291h
+dd 00808c0e0h
+dd 054436821h
+dd 0e3850eebh
+dd 080b6f071h
+dd 058c56d27h
+dd 0e73d2f12h
+dd 00addad03h
+dd 0a28678a2h
+dd 0d9cdf446h
+dd 0b506cbc3h
+dd 0f8bb17e4h
+dd 093fe5987h
+dd 0df3bf374h
+dd 00c302cc2h
+dd 0103a0a53h
+dd 068350191h
+dd 04ceeb0dch
+dd 08db55509h
+dd 0a8e42d02h
+dd 059d9083dh
+dd 0c2e5f35dh
+dd 0fb3c20b5h
+dd 0afa928a6h
+dd 0b11c8b6bh
+dd 0cbcf3328h
+dd 0bba524abh
+dd 0b9d01097h
+dd 01c7bd716h
+dd 03f2f9060h
+dd 0d848e7f6h
+dd 0d7b1166dh
+dd 0bd470d15h
+dd 07dc0614ah
+dd 0bb14b06ah
+dd 02b915fedh
+dd 0458803beh
+dd 045c17945h
+dd 0b5cebf1ch
+dd 083bc33b2h
+dd 0b788ebf6h
+dd 05cb4815dh
+dd 05018208fh
+dd 0292075e4h
+dd 09babfba0h
+dd 0add8aaaeh
+dd 0a2cf4dceh
+dd 0fd279ca1h
+dd 083b15187h
+dd 0077fed81h
+dd 066858346h
+dd 063cf9862h
+dd 0a7a56722h
+dd 0c9093430h
+dd 063a17cf4h
+dd 006c4488dh
+dd 0381b7db7h
+dd 0b8f7ad30h
+dd 0a29d9328h
+dd 0410778a8h
+dd 06592ff16h
+dd 043742e76h
+dd 0681c29dbh
+dd 004b7d9d1h
+dd 0db26d98eh
+dd 0460c6a76h
+dd 0f434d253h
+dd 0ea1b7e8ah
+dd 086080d8fh
+dd 02bcf52e1h
+dd 03535f7e6h
+dd 015c87895h
+dd 0d92651f6h
+dd 01973ff61h
+dd 057e7c373h
+dd 08056e977h
+dd 07357f8f0h
+dd 0cece951ah
+dd 0cbd7f96dh
+dd 0893c31ach
+dd 0367ab414h
+dd 02e225130h
+dd 096a9f9b1h
+dd 038a3bc8eh
+dd 02284e06dh
+dd 08d8c05d3h
+dd 02b4af3ach
+dd 0389e6221h
+dd 08ac04943h
+dd 088a4cb55h
+dd 0b18a783ah
+dd 00bba25e2h
+dd 0c563f2c4h
+dd 05fa4d937h
+dd 0b56fd702h
+dd 03c5df295h
+dd 0a2a53ff9h
+dd 07aa7f142h
+dd 04b05dd61h
+dd 0af2b03a9h
+dd 035fbb2f9h
+dd 0de28ca02h
+dd 071452ea2h
+dd 08f60f13fh
+dd 03a05e3a6h
+dd 08417b792h
+dd 0d1b610ech
+dd 0386c59fch
+dd 0cb5b65f7h
+dd 01053f786h
+dd 0c943d65bh
+dd 0cc30b6e7h
+dd 006b72b81h
+dd 0791e3419h
+dd 0bcc63306h
+dd 05436c9d4h
+dd 0eb0a3ab0h
+dd 05d9ba6d9h
+dd 0c253a0c9h
+dd 0c246f9edh
+dd 0e4f45990h
+dd 06da5bbdeh
+dd 0e2f2d58bh
+dd 0ecf9badbh
+dd 0a37f78aeh
+dd 02266b1b1h
+dd 09571bf82h
+dd 0e2fc27a2h
+dd 09c281aa7h
+dd 0cc85da12h
+dd 06074352dh
+dd 00f148cfdh
+dd 0c43fcd99h
+dd 0dcb4b35bh
+dd 08ad7441ch
+dd 00b122ba7h
+dd 03f7de1f3h
+dd 05ea3ceadh
+dd 07c2a1730h
+dd 0f9e7fb11h
+dd 058358947h
+dd 0350aad75h
+dd 0f63e09bch
+dd 06b1bde10h
+dd 0665de6b6h
+dd 0ec7e056dh
+dd 02c2a2668h
+dd 010257193h
+dd 07b5c5c9fh
+dd 0793cfc3dh
+dd 09e295fb7h
+dd 07fedd79bh
+dd 01c12426dh
+dd 042f12846h
+dd 0cc5d7c31h
+dd 0ecb1b47dh
+dd 067319adfh
+dd 0a64f4049h
+dd 04f50df4fh
+dd 0839e907fh
+dd 0555e822eh
+dd 004db2bcah
+dd 082e8be00h
+dd 0d5ab85c5h
+dd 0de31c754h
+dd 0e553ab41h
+dd 00eb4c266h
+dd 050eaf2d3h
+dd 0fe35a3e3h
+dd 02e14e148h
+dd 026126b25h
+dd 005c4657ch
+dd 0e99dde84h
+dd 0afa6555dh
+dd 0b7646badh
+dd 04f5c4a5fh
+dd 01d0ac0d6h
+dd 01e760d85h
+dd 05bb4cf2eh
+dd 04aeb83c0h
+dd 09ec1f0dfh
+dd 076450ed4h
+dd 0806977b0h
+dd 0dab996cch
+dd 0f8dc80bch
+dd 07e661709h
+dd 0217fc496h
+dd 03af28d75h
+dd 0aa0f5dcdh
+dd 0c60ae68bh
+dd 0b2cd46d3h
+dd 0680f7a33h
+dd 06c0c1ad8h
+dd 096aa352dh
+dd 01471fa65h
+dd 06458a6f2h
+dd 0e838f34dh
+dd 0dbe561c0h
+dd 001f332b8h
+dd 09d6796bah
+dd 07797af49h
+dd 0f28be39ch
+dd 0c2c1e1d7h
+dd 0120abf15h
+dd 065b52af2h
+dd 01cf997ceh
+dd 09c5d9072h
+dd 0187bce4fh
+dd 08c8801e7h
+dd 004f8abb4h
+dd 0047c2696h
+dd 06d838b4eh
+dd 02051aeddh
+dd 01daafcd2h
+dd 078e46e01h
+dd 0e101e1b0h
+dd 0841e88c3h
+dd 0a58e9609h
+dd 07f2fc3dah
+dd 0a6ff2949h
+dd 034d1658fh
+dd 0adc1c865h
+dd 052cabd2ch
+dd 0ff8b04d0h
+dd 0c7e84fbah
+dd 0452fc1abh
+dd 098ac7cfeh
+dd 0404b6ed4h
+dd 0c78f622bh
+dd 01156c061h
+dd 0913975fdh
+dd 01d268c29h
+dd 07e4360c4h
+dd 08ae28cc1h
+dd 0c63781a6h
+dd 05cb1a2aeh
+dd 00a04bc50h
+dd 0ebd940b5h
+dd 00860d85bh
+dd 0f759952fh
+dd 0f6500064h
+dd 078360f8fh
+dd 003cac094h
+dd 0a6106323h
+dd 092c07b64h
+dd 0bbe2d4e6h
+dd 050ff5357h
+dd 0c555a475h
+dd 0ee778e59h
+dd 0da7b9ecdh
+dd 08fa98a2ch
+dd 05a150a65h
+dd 0b6e98e8fh
+dd 0838e9e60h
+dd 0ec2d1368h
+dd 056f91adeh
+dd 07365ba83h
+dd 021f504fbh
+dd 0121cff89h
+dd 0eada5b4dh
+dd 09d2b9359h
+dd 064df5fd7h
+dd 03af90d73h
+dd 0c1a2baf6h
+dd 00e2b1df5h
+dd 061719d81h
+dd 002da3daeh
+dd 0a23a4fe3h
+dd 025726812h
+dd 0023ada67h
+dd 0fc5ac60eh
+dd 0f7866e06h
+dd 0779b1a51h
+dd 00a16db74h
+dd 0095d9625h
+dd 0132b6214h
+dd 02cd71686h
+dd 06c4d9f1ch
+dd 08d10c005h
+dd 02700b740h
+dd 0b0722910h
+dd 0e571a161h
+dd 01e886f36h
+dd 0176029e6h
+dd 04b08f9e9h
+dd 091186b3eh
+dd 08dd61d6dh
+dd 02ae31c19h
+dd 00fa0af49h
+dd 0fb5eeb5ah
+dd 05dc45de3h
+dd 02561f114h
+dd 062d65deeh
+dd 008ddc769h
+dd 03bd99e00h
+dd 0b2705fbch
+dd 0694a7d31h
+dd 018134579h
+dd 0fbb655cdh
+dd 06b1dc170h
+dd 035d20863h
+dd 098fcadbbh
+dd 0c8f5624eh
+dd 0fe5b86a2h
+dd 04cea75d8h
+dd 02492c920h
+dd 070173397h
+dd 0b62d3ad0h
+dd 05b2d2400h
+dd 01ce4aa3eh
+dd 099ba6a38h
+dd 019d2f9cah
+dd 0e31cbb90h
+dd 00c28973ah
+dd 0452be131h
+dd 0a3c20065h
+dd 023055cc2h
+dd 0188ce90eh
+dd 0ba5436a7h
+dd 03c0e0b37h
+dd 096746650h
+dd 05e785344h
+dd 0c3cf03e4h
+dd 0e6f87b34h
+dd 03b08540eh
+dd 0b2aecc57h
+dd 0b6a93983h
+dd 0e3fef61ch
+dd 0bffacf06h
+dd 0a25180f4h
+dd 0a10de0afh
+dd 0e76af133h
+dd 06c46def0h
+dd 0f22c8bbfh
+dd 0a9b1ad70h
+dd 0f36d522bh
+dd 02b505512h
+dd 02cff1db7h
+dd 0d5ee0e83h
+dd 0ed921f9fh
+dd 0db036804h
+dd 0a26524cdh
+dd 0658a360bh
+dd 08163eacch
+dd 03bf40d45h
+dd 040dba324h
+dd 00f9093b0h
+dd 0a63637b7h
+dd 0a5e63c2fh
+dd 0169a8fadh
+dd 0691f6eb4h
+dd 058c833e6h
+dd 0985660cah
+dd 0993b7b2fh
+dd 094f3732eh
+dd 00c93108dh
+dd 07f408f38h
+dd 0b110c839h
+dd 01b5c2843h
+dd 02fa60065h
+dd 09a170befh
+dd 0a8314bc9h
+dd 025e412b3h
+dd 095e9dc2ah
+dd 0fc9473f6h
+dd 021f33d5fh
+dd 0940dc372h
+dd 0b5492c1ah
+dd 0e11c630fh
+dd 0fa835ac3h
+dd 07eea66fah
+dd 06dffa1dah
+dd 0be2b8a10h
+dd 0f5fd8180h
+dd 00936d839h
+dd 003b3f63ah
+dd 0c6ff0a28h
+dd 0a982a5e3h
+dd 07d0d92d4h
+dd 0a57a806bh
+dd 0d23f180fh
+dd 07c7ae097h
+dd 035311654h
+dd 0ac738bd0h
+dd 04e77e7a3h
+dd 014fb4229h
+dd 0df6ea583h
+dd 091659b21h
+dd 03d2c9e1fh
+dd 0ba306ac2h
+dd 0889ad442h
+dd 0caf67e1fh
+dd 09bf0cfbah
+dd 004ffb8cch
+dd 0b05f3ebch
+dd 09532d71dh
+dd 06c8c76bch
+dd 03dd8e179h
+dd 03a0e5d7eh
+dd 0b53273a6h
+dd 0f1c0f5bch
+dd 0e3b35d0ah
+dd 00e07c6c9h
+dd 0d4b5cac2h
+dd 00c81cb01h
+dd 066e3fc73h
+dd 087c245ech
+dd 0df198fe2h
+dd 07dd6016fh
+dd 0642c9e93h
+dd 006509787h
+dd 0d661261ah
+dd 0b7b6ccaeh
+dd 03d10480ch
+dd 0ed44239dh
+dd 0b28e2946h
+dd 00989fbcah
+dd 0ff589bf4h
+dd 0c100d796h
+dd 022dd8b5bh
+dd 06ae6889eh
+dd 02a8f2898h
+dd 044650023h
+dd 0fdb60e0ch
+dd 0854a1b23h
+dd 074e91886h
+dd 0e86a055fh
+dd 0d585c6d9h
+dd 07f485e1ah
+dd 0001eaaa2h
+dd 06f72dfa4h
+dd 0f2fa494ah
+dd 05bdbac64h
+dd 06e39de92h
+dd 0fd15accdh
+dd 0fadc856eh
+dd 02daf5519h
+dd 0aee40c96h
+dd 0843b7edbh
+dd 074f67a39h
+dd 0e3f2162bh
+dd 0203ea4fbh
+dd 05e277261h
+dd 0f20570fch
+dd 0093b4b1eh
+dd 06f9326e8h
+dd 0d7be5523h
+dd 0bcce6349h
+dd 092b8969bh
+dd 03da593f6h
+dd 04dae7531h
+dd 02a75cb4fh
+dd 09c6a7a5bh
+dd 0d4a14989h
+dd 0eae4edf9h
+dd 076bc3224h
+dd 0a66f6ddeh
+dd 0c863c705h
+dd 0c95c0dech
+dd 044dd238ah
+dd 033cdcfefh
+dd 0632f51f2h
+dd 05f1b7be8h
+dd 03a3304d6h
+dd 06b7f719eh
+dd 0be9da865h
+dd 0b6b9f3e6h
+dd 0e8bfb6eeh
+dd 056167b00h
+dd 0ef6bd2a8h
+dd 0a08a064fh
+dd 0ccac9f22h
+dd 0933175dbh
+dd 0cbe7c9dbh
+dd 0cfaf3dfah
+dd 02200122ah
+dd 0cb3b975ah
+dd 0071fa7dbh
+dd 06affec38h
+dd 0d7048d20h
+dd 0955c8e30h
+dd 0e35989f2h
+dd 0edf0c8d8h
+dd 0b3cc2bcfh
+dd 078b214aeh
+dd 0921daeach
+dd 0741eacddh
+dd 0a8169ad3h
+dd 03b08dedeh
+dd 0e83d15b0h
+dd 0e4dbe321h
+dd 0579c013ch
+dd 0c854f791h
+dd 0fbdf9b63h
+dd 009e07a40h
+dd 0bf29b10dh
+dd 0d1676255h
+dd 094357616h
+dd 0fd8163a4h
+dd 026bf4479h
+dd 02812b8d2h
+dd 0e82d8e9dh
+dd 07518de5dh
+dd 0c1412136h
+dd 0456faf7bh
+dd 0a6582e37h
+dd 022189420h
+dd 0e1428a0ch
+dd 048b8ed78h
+dd 0cf0b7be6h
+dd 0ed0c6af4h
+dd 054f52eb0h
+dd 062b438cfh
+dd 00a96a3d5h
+dd 03ca608c0h
+dd 0f3603ebfh
+dd 05c517615h
+dd 009db2ce9h
+dd 0505245a5h
+dd 0f172adf6h
+dd 068aa3261h
+dd 051e3b73fh
+dd 0d867e6beh
+dd 0091f0b6ch
+dd 03ddec8d7h
+dd 0db8e1477h
+dd 0ac3515a0h
+dd 049dda4f6h
+dd 0ef02b5d2h
+dd 0757d11b7h
+dd 00960cf6ah
+dd 0ab0dd276h
+dd 0e68740e3h
+dd 0b6dc69e4h
+dd 01e1b120dh
+dd 0ed0b18f8h
+dd 05d0b6f9ch
+dd 09a81bc94h
+dd 0c375e5c3h
+dd 0095b199ch
+dd 0f2a135e2h
+dd 0905f7b34h
+dd 0950adb83h
+dd 0cecb2c46h
+dd 08ceeebfbh
+dd 0a665d968h
+dd 0e77284dbh
+dd 0061c174bh
+dd 0356965e2h
+dd 006d92996h
+dd 0ccbdd9d6h
+dd 0e17eebd9h
+dd 09f821e7eh
+dd 031a9f173h
+dd 0bec32243h
+dd 05bb481c3h
+dd 0a4b39b90h
+dd 0e5784261h
+dd 05f434377h
+dd 09f71f15dh
+dd 020c0d5e3h
+dd 0ec73b5ech
+dd 06655b887h
+dd 09dc61738h
+dd 0e9bf0dd4h
+dd 0dd9b1b0eh
+dd 0675bf625h
+dd 07c02a718h
+dd 0bf1c7d04h
+dd 0a9e3a783h
+dd 072321f23h
+dd 0ab37aa16h
+dd 0b08e6baah
+dd 085304023h
+dd 039415810h
+dd 01148e229h
+dd 0424b535eh
+dd 0926135a2h
+dd 082695944h
+dd 0f6695ba1h
+dd 0b0f3c40ch
+dd 045c71581h
+dd 01b9c7bb4h
+dd 006f29a8bh
+dd 0aa31e946h
+dd 0a19835bfh
+dd 012af5a82h
+dd 00ac5da3dh
+dd 0533b8178h
+dd 0d69aa933h
+dd 0ca514ca5h
+dd 07623fe2fh
+dd 065fa51edh
+dd 016e087f1h
+dd 033c8097dh
+dd 0b9f40244h
+dd 09d493edeh
+dd 03c945734h
+dd 0094e0292h
+dd 0539139f3h
+dd 0e702faa8h
+dd 039230773h
+dd 0c313b3deh
+dd 0e774b413h
+dd 0d6b193eah
+dd 02d2fa897h
+dd 0f14adbbch
+dd 0e80f5365h
+dd 0ebfe34eeh
+dd 049cdb604h
+dd 069b83142h
+dd 0ba74e371h
+dd 01335a749h
+dd 0c71e38f4h
+dd 010baf64ah
+dd 036d883cah
+dd 09d8f2ab5h
+dd 01ecf8deeh
+dd 09926eabdh
+dd 066b75b1fh
+dd 0a65369c8h
+dd 0b283411ah
+dd 07f54d591h
+dd 0bf6ce979h
+dd 05cab7904h
+dd 062c1cabbh
+dd 01f4ab718h
+dd 0aaa5dd78h
+dd 0443b8948h
+dd 088d5bfd0h
+dd 075011b1dh
+dd 0b6884d26h
+dd 0f40da5f7h
+dd 09fb02a49h
+dd 0881f9a3eh
+dd 0cac2270ch
+dd 02176694eh
+dd 08fae8cbdh
+dd 0419ba2d3h
+dd 00074942eh
+dd 0f9604996h
+dd 0adc067b6h
+dd 03ad9856bh
+dd 036b754b3h
+dd 07597460fh
+dd 0feeede21h
+dd 05d393a2dh
+dd 06c6a54e9h
+dd 003098ad9h
+dd 0305b3617h
+dd 0b5518a03h
+dd 08c1ac53ch
+dd 0bae69f10h
+dd 0c0c93899h
+dd 0083a14c7h
+dd 05ee68d19h
+dd 01817332dh
+dd 054bc5640h
+dd 04da12b55h
+dd 0b1f69fafh
+dd 0fa1c619ah
+dd 0611b9cf8h
+dd 0d07d28b6h
+dd 00be92d95h
+dd 03e9fea91h
+dd 0876181adh
+dd 021bdbe2dh
+dd 04c13fe4fh
+dd 0d220dec1h
+dd 033bf4b7fh
+dd 0aac911b2h
+dd 0cef6a8c9h
+dd 00d2f647bh
+dd 01c08ebf3h
+dd 00141d9fdh
+dd 0e877ed57h
+dd 09021034dh
+dd 00c1d9460h
+dd 00169e2e8h
+dd 07e834464h
+dd 0f85f52f4h
+dd 0f89f5d15h
+dd 0ccb82d89h
+dd 087b0463dh
+dd 0d7ca7e73h
+dd 019ce3997h
+dd 0a4b020fah
+dd 0370eac08h
+dd 043c517cfh
+dd 0064a12a6h
+dd 09a778a7dh
+dd 0bd404e92h
+dd 07ed7ca26h
+dd 0e691ae42h
+dd 0f65baae5h
+dd 0c2e2d1fdh
+dd 018b7f226h
+dd 08921bcdeh
+dd 05cca9eddh
+dd 064d6263dh
+dd 00cde703eh
+dd 05ff25697h
+dd 086219458h
+dd 0d1bce9e0h
+dd 0f360de5eh
+dd 0b0909019h
+dd 0d68a1114h
+dd 05007567eh
+dd 0e022d215h
+dd 04c6f9abdh
+dd 067c5f870h
+dd 00f1a0216h
+dd 034f6ec0eh
+dd 0c2061352h
+dd 08506ab5fh
+dd 0b8988de6h
+dd 0b81988e1h
+dd 0155dd7afh
+dd 04ace9fe0h
+dd 081bd438ch
+dd 0a57a7c8eh
+dd 01da0e371h
+dd 0a6c21c1dh
+dd 00733ffc0h
+dd 05f81846bh
+dd 0cde0ff7ch
+dd 01279f349h
+dd 0d6957354h
+dd 02c47e9d7h
+dd 0f009fd66h
+dd 0f88a1562h
+dd 06fc20c94h
+dd 038710076h
+dd 0f6a298bah
+dd 040f60919h
+dd 0f03b5f25h
+dd 03f200391h
+dd 066d19fb0h
+dd 04ea50853h
+dd 0ed3f767ch
+dd 0081ab26ch
+dd 0cccec6fdh
+dd 019b9e88dh
+dd 027db6a97h
+dd 052e36947h
+dd 0dbcfe168h
+dd 0d178e7fdh
+dd 0936bef5fh
+dd 0100a2acfh
+dd 0bf78ff7ch
+dd 0ea3a5709h
+dd 0f2977386h
+dd 069849516h
+dd 0fad83cedh
+dd 0aecc1f3dh
+dd 07d26bb02h
+dd 0088e2fa6h
+dd 0b6579489h
+dd 067afb453h
+dd 0c730ed47h
+dd 080ea1454h
+dd 0b4ba19a7h
+dd 0e797eeabh
+dd 0dc5c45ebh
+dd 0718ed535h
+dd 0c04b11c1h
+dd 0eaeb2504h
+dd 03078e47eh
+dd 086ab4fedh
+dd 0eeee9e59h
+dd 0dae2e304h
+dd 0b1d2bdd2h
+dd 05a9f7e5dh
+dd 0bb53ea43h
+dd 04519d5d8h
+dd 0decc45d2h
+dd 078fbef54h
+dd 0df63818fh
+dd 057a74530h
+dd 06c568b64h
+dd 07403d83fh
+dd 046daac12h
+dd 0f21b0abah
+dd 0bf95a544h
+dd 0c14dd9c1h
+dd 072f99b95h
+dd 01a4f9ba3h
+dd 0caf82a38h
+dd 06bbfbe5fh
+dd 037e1a67eh
+dd 0da553404h
+dd 07afe8bf7h
+dd 01f3f3a08h
+dd 0e3649f55h
+dd 0b6719498h
+dd 0640850e3h
+dd 0f0c1e2b1h
+dd 0c17acd97h
+dd 07758e285h
+dd 07e1b7419h
+dd 0897bd1d4h
+dd 095f3d761h
+dd 01abcc5aeh
+dd 0952d65ceh
+dd 0454e18f2h
+dd 096360436h
+dd 0654979c2h
+dd 087b55a0bh
+dd 0b35fd23bh
+dd 06e05b868h
+dd 0a4559e2bh
+dd 079e2e098h
+dd 09687693eh
+dd 03a15377ch
+dd 0bdd8734dh
+dd 0cb9818a2h
+dd 0b49fefa5h
+dd 07724ed1eh
+dd 07ac5d157h
+dd 0a344918ch
+dd 08726491dh
+dd 01d2549e7h
+dd 02b3bb441h
+dd 0cdc84d02h
+dd 0c8cb94e8h
+dd 062507412h
+dd 083611334h
+dd 0f20dab65h
+dd 0deb05ab7h
+dd 04442921ah
+dd 011a190a0h
+dd 08a4b798ch
+dd 0be0a6804h
+dd 02f8c0a70h
+dd 08d1cd034h
+dd 058919b3dh
+dd 03d0d0e5eh
+dd 03c229cbfh
+dd 07649b48eh
+dd 0aaa74173h
+dd 0590292b0h
+dd 021a0b425h
+dd 0eed332cah
+dd 0b877b82ah
+dd 032065103h
+dd 04e06963bh
+dd 05d95f74ch
+dd 07ea455f6h
+dd 0dcd7c910h
+dd 09202071eh
+dd 0b37fd264h
+dd 0966d6a0fh
+dd 05be4c002h
+dd 05f7d554bh
+dd 093f1fc39h
+dd 07c162e71h
+dd 04d8beaa9h
+dd 0ab308053h
+dd 0242d4f0eh
+dd 06f1046c8h
+dd 09706ef9dh
+dd 05deed2d3h
+dd 0be57be5bh
+dd 09598b104h
+dd 0585197c2h
+dd 0931c5a97h
+dd 03504c0a4h
+dd 0991cd09fh
+dd 04f79f7b3h
+dd 07b5c73deh
+dd 0619adda8h
+dd 0ad86647eh
+dd 0a6494154h
+dd 0e745d0b3h
+dd 028dcc7a6h
+dd 03560ad89h
+dd 0b649044eh
+dd 00ddad55bh
+dd 0dbc7765bh
+dd 0c64a9dach
+dd 09c9bcb92h
+dd 097940396h
+dd 06d2b87f9h
+dd 0b29f9280h
+dd 0cfaf443dh
+dd 094a320b5h
+dd 0358169c2h
+dd 071fbef00h
+dd 0cb4c5485h
+dd 0e5f1f0ech
+dd 0d4c8db2eh
+dd 0bbc63191h
+dd 0bb3e55c4h
+dd 0f1df56a5h
+dd 0921d3d30h
+dd 0a86da895h
+dd 0b0524d6eh
+dd 061d95672h
+dd 0a7a7c35bh
+dd 0e35e21d3h
+dd 0ae018e55h
+dd 045c01950h
+dd 0f27a3a5dh
+dd 0627a95c1h
+dd 0e1be4bbdh
+dd 0d7fdc63bh
+dd 0562ed4b0h
+dd 08edd602fh
+dd 0e9146d40h
+dd 0d7698c69h
+dd 0943bf5afh
+dd 0d882edb3h
+dd 05dc00eeeh
+dd 04167f32ah
+dd 01da6c5d1h
+dd 0d716ecedh
+dd 01c25a420h
+dd 0999a24fch
+dd 057ebef68h
+dd 0ddb16535h
+dd 0379eb4f6h
+dd 0dcb2b81ch
+dd 0648a8e31h
+dd 0b82cc131h
+dd 0465d4f2ch
+dd 03ad531eeh
+dd 05c770236h
+dd 066537de2h
+dd 0ade933cdh
+dd 04545bfceh
+dd 0375427d6h
+dd 02c425f44h
+dd 0922a6ba1h
+dd 01906f79fh
+dd 08aeb288eh
+dd 03643052dh
+dd 08294bd2bh
+dd 0eaa9450ah
+dd 09c55effbh
+dd 08d2d2d74h
+dd 033b3a7a9h
+dd 0bb528f83h
+dd 07809e914h
+dd 097167503h
+dd 00af78c5ah
+dd 0cd30b2e6h
+dd 01b2f0780h
+dd 0441d314eh
+dd 087c358d1h
+dd 0c4fea7f1h
+dd 0f1dd3b04h
+dd 094a643aah
+dd 07b81b56ah
+dd 0f055a4a4h
+dd 0840fa777h
+dd 0a7c88769h
+dd 0ca903a9fh
+dd 0ac3370fbh
+dd 023e29bb2h
+dd 0628de5adh
+dd 06b9b99fdh
+dd 05369950eh
+dd 05005be32h
+dd 0e007b56ah
+dd 041109113h
+dd 0b09cfaa7h
+dd 05d35e513h
+dd 06d8ebd88h
+dd 0ab499f8fh
+dd 09f852c5ah
+dd 08ff1ab43h
+dd 0b3ba1870h
+dd 06af5933eh
+dd 091defb50h
+dd 055fc4a9fh
+dd 0d2283121h
+dd 022fee9f1h
+dd 0f1cf9e16h
+dd 0bd22451fh
+dd 04c1c5a1eh
+dd 03a20f58dh
+dd 01b4e5281h
+dd 0758d1690h
+dd 0d50e7e30h
+dd 0eef13170h
+dd 0a24c7761h
+dd 00801d211h
+dd 01f2b050ah
+dd 0499c5568h
+dd 00747f526h
+dd 0ef230595h
+dd 07a8ccb39h
+dd 0ecc87827h
+dd 09ff380b5h
+dd 0aaa1737ah
+dd 019e4e1d2h
+dd 020e2406eh
+dd 0158a1c68h
+dd 0bab448feh
+dd 0bac58296h
+dd 0d75f9fffh
+dd 0a13e92cch
+dd 09432bf30h
+dd 0ccdbf065h
+dd 0bcdfcf69h
+dd 09e2d22c1h
+dd 06658a0ebh
+dd 0040dc5fch
+dd 046fbd9b9h
+dd 019bc4763h
+dd 0b829a24dh
+dd 0d8474290h
+dd 0a83bed64h
+dd 03c390057h
+dd 0975756bch
+dd 025e3cf22h
+dd 0b7a70441h
+dd 046491e8bh
+dd 02f00c5e2h
+dd 0ecf0a382h
+dd 064f8952fh
+dd 0f23203d1h
+dd 0ebbce8c2h
+dd 0e2443696h
+dd 0a312cab2h
+dd 081da78a9h
+dd 066ef5663h
+dd 07e5e562ch
+dd 008640860h
+dd 0ea8bc056h
+dd 0820b3033h
+dd 0b8d5b5eeh
+dd 0eb2c7fa5h
+dd 0b8e61056h
+dd 0b3caf78ah
+dd 0e4ed426ch
+dd 075630b3ah
+dd 0687076d7h
+dd 062416ad5h
+dd 0ad8fe183h
+dd 0105a4aach
+dd 016eccd8ch
+dd 0720f7ab5h
+dd 046f8e145h
+dd 0aef602dbh
+dd 0a302c028h
+dd 0e9af4a73h
+dd 06778a892h
+dd 0f3763e72h
+dd 05086b172h
+dd 0e197c8e4h
+dd 0ae067f88h
+dd 0d4ba52d1h
+dd 07368e65eh
+dd 064e60265h
+dd 0eb080b60h
+dd 0c3f65aa1h
+dd 0929213b0h
+dd 07f6709eeh
+dd 031523b0eh
+dd 09350af9ch
+dd 09c2a877eh
+dd 0ea316204h
+dd 099caedf8h
+dd 010a5649ah
+dd 02a51c3efh
+dd 0ff6611a2h
+dd 07a83b402h
+dd 00d1f81ffh
+dd 03216dcb8h
+dd 0f2f32d97h
+dd 08642a9dch
+dd 09ca79936h
+dd 02d28f0beh
+dd 04a50af10h
+dd 0174ffde4h
+dd 0aaadcc24h
+dd 00098461bh
+dd 0778ee081h
+dd 060f158e3h
+dd 04c417394h
+dd 0638963f0h
+dd 0d71ace0fh
+dd 05b45ba39h
+dd 0e8266b79h
+dd 0dae5b0c1h
+dd 033a9d5e6h
+dd 0048d36b0h
+dd 09eb384d2h
+dd 0f308ed2ch
+dd 0d18ba58ch
+dd 0d5de88cfh
+dd 0dcfc2a4ch
+dd 039910170h
+dd 08ec7917dh
+dd 044192eafh
+dd 023c37fddh
+dd 08560a3f6h
+dd 0bf83dc91h
+dd 02c9f8918h
+dd 0941615c1h
+dd 09ef8c93dh
+dd 0d8c52c06h
+dd 0046f0ebeh
+dd 0731ac0a8h
+dd 0c7176165h
+dd 09dafb580h
+dd 0df7ff7ddh
+dd 035768333h
+dd 08eec2b17h
+dd 00aaa97f9h
+dd 0b8f1e918h
+dd 0e41bafe6h
+dd 0b3e06e47h
+dd 0dbb825deh
+dd 0588e32b0h
+dd 0a517f3cch
+dd 07bd950b8h
+dd 07def38eeh
+dd 02493e267h
+dd 082de0f7ch
+dd 056bc8a69h
+dd 03606e514h
+dd 006ecb446h
+dd 01d653182h
+dd 092d5c881h
+dd 0f96b8366h
+dd 0a7f301e5h
+dd 0f2275230h
+dd 077b3a1ffh
+dd 0b8af69c5h
+dd 09a7dde0ch
+dd 0bb2ca721h
+dd 0b1a1fd48h
+dd 0efb94142h
+dd 0323a4b4eh
+dd 000766492h
+dd 00b5aa0eeh
+dd 0cbc921e8h
+dd 016f8f28fh
+dd 04158a277h
+dd 01e5826dch
+dd 051c65da6h
+dd 0d200ba9fh
+dd 0eea7a94fh
+dd 09fbe73c1h
+dd 0f63db07dh
+dd 0911b66b9h
+dd 06900153bh
+dd 03fe01063h
+dd 0b80dbeffh
+dd 03a0d8815h
+dd 04f722b8fh
+dd 0a99df8dfh
+dd 08c1405ceh
+dd 0bb4c6170h
+dd 0fd71d74ah
+dd 0e5824f26h
+dd 0d4aad2c4h
+dd 016cb20fch
+dd 099ec1174h
+dd 0443a6709h
+dd 0b1b092d4h
+dd 0ab81ba03h
+dd 0aa6f73e2h
+dd 0ccefb6b9h
+dd 0cb0314ddh
+dd 0e44b9060h
+dd 05e57bf68h
+dd 0816c89eah
+dd 001db42a6h
+dd 03398a7ceh
+dd 0e47f6481h
+dd 025b1690ch
+dd 047d90ae0h
+dd 0bb7aa888h
+dd 061a4d44ah
+dd 03b25334eh
+dd 0a629b782h
+dd 05c14d971h
+dd 0e13f80eah
+dd 0a5bec92fh
+dd 0ca474cf4h
+dd 0c23c1c8dh
+dd 042b04cfch
+dd 08e3d6682h
+dd 0ca2ff823h
+dd 0661b0831h
+dd 06b30102fh
+dd 087a4a123h
+dd 0fb173460h
+dd 048988103h
+dd 02e63be7ch
+dd 0974a9516h
+dd 0822cd2d9h
+dd 036efb30eh
+dd 045d6110bh
+dd 042658032h
+dd 05755f57dh
+dd 056a8619ch
+dd 0625b8b7ah
+dd 0e1356aefh
+dd 041ece2f4h
+dd 04226ff3bh
+dd 0d62676d0h
+dd 0c129f436h
+dd 0fb17ebbbh
+dd 0d173dae9h
+dd 061790ba2h
+dd 0ef726b10h
+dd 0a531fd14h
+dd 0914d4940h
+dd 0c0314d8fh
+dd 068ceee60h
+dd 0960c5969h
+dd 0b4b22513h
+dd 0093e0ac5h
+dd 07ea141f9h
+dd 0814f1d59h
+dd 0c43c6840h
+dd 084dabf18h
+dd 0db7d97a0h
+dd 035ac53f3h
+dd 0988d7748h
+dd 037b1e27dh
+dd 0330fed8ch
+dd 0a4d38a7bh
+dd 000482509h
+dd 0c12c88cfh
+dd 014ea0c80h
+dd 0d463d878h
+dd 0db7bf5c9h
+dd 005bd666eh
+dd 003c21ad2h
+dd 00ef45171h
+dd 02f219974h
+dd 04ef06b97h
+dd 0f147457ch
+dd 0ec4f6148h
+dd 0ad7e646ah
+dd 0eeaa76f1h
+dd 04b30f631h
+dd 0762ff335h
+dd 02e5d2bb2h
+dd 09ad104f4h
+dd 0d568c45fh
+dd 048f6271eh
+dd 0203f0366h
+dd 0f92abf7dh
+dd 0c7d6556ah
+dd 053b5ea5ch
+dd 0ca3ccb55h
+dd 0aeadf037h
+dd 015bfad85h
+dd 080ff7941h
+dd 0dc6d4ec8h
+dd 0dc40f9cbh
+dd 06bba765ch
+dd 083f4f2bch
+dd 0ec706cc4h
+dd 07ab95a0dh
+dd 026540965h
+dd 06becf0e9h
+dd 0855e0defh
+dd 0e9326514h
+dd 02f0265e4h
+dd 023440f1ah
+dd 0e5211943h
+dd 036d1f731h
+dd 0752ba3ffh
+dd 0b182f83ch
+dd 02acfb87bh
+dd 0c7032d37h
+dd 086b03a4dh
+dd 0b0cd3cc6h
+dd 027c0b462h
+dd 04662309ah
+dd 0182e21d5h
+dd 0cd4c4e1bh
+dd 09642952ah
+dd 048f70b83h
+dd 08e10a53ah
+dd 0ce9a73b3h
+dd 0bf80bcbdh
+dd 07e8788dah
+dd 04f9f0b66h
+dd 01b36bc87h
+dd 06087ca4ah
+dd 0df7697c4h
+dd 07bed7095h
+dd 06dbfdbf9h
+dd 006dc5963h
+dd 041f0cbd8h
+dd 0031a410ah
+dd 08893a23ch
+dd 08f22d6d9h
+dd 068fb4974h
+dd 03d5bbec9h
+dd 07a6ff6f1h
+dd 00c741801h
+dd 0abdbe5a7h
+dd 0e2a1663fh
+dd 09449dfa1h
+dd 0c4735ae0h
+dd 082a01123h
+dd 035fb8e95h
+dd 03d900070h
+dd 0be7aa29eh
+dd 0f877568ch
+dd 091cfecebh
+dd 06438bac4h
+dd 035768fedh
+dd 07b392c75h
+dd 0c53b140ah
+dd 08ff76ac4h
+dd 05e9d3fb1h
+dd 02d586d88h
+dd 0ce32fc3eh
+dd 084d5d167h
+dd 064121f24h
+dd 03bd75402h
+dd 0d6bcde6ah
+dd 0b2b6b09eh
+dd 09f98e02bh
+dd 04d8a7fd8h
+dd 07e492cc4h
+dd 04f88552fh
+dd 015951079h
+dd 055d2c774h
+dd 08f6d1764h
+dd 0b1dcdc64h
+dd 0d2b52c50h
+dd 0f57111a8h
+dd 0d2328d26h
+dd 0827ab54dh
+dd 0b8d19b04h
+dd 0fb889821h
+dd 030961004h
+dd 02e913c5ah
+dd 023076db5h
+dd 02c13b410h
+dd 01868b939h
+dd 085d7f33fh
+dd 07aec32cch
+dd 09972a62bh
+dd 0de54b250h
+dd 06f974082h
+dd 0aec4c0feh
+dd 09e7d069dh
+dd 0d0a04895h
+dd 0ade8baadh
+dd 0987c890eh
+dd 0c1acb3cch
+dd 0782989d7h
+dd 04d653200h
+dd 019e05eb6h
+dd 0738d71e8h
+dd 0e7509102h
+dd 0c46c9af2h
+dd 07915940dh
+dd 0a573f4b7h
+dd 0244413a3h
+dd 0e83b90abh
+dd 0e5d11c1fh
+dd 0a702bf78h
+dd 0dd67c50dh
+dd 0e7033be4h
+dd 05cc1881eh
+dd 0af36a563h
+dd 09fcd116bh
+dd 058db9865h
+dd 0c0b1dee8h
+dd 05b2c01c2h
+dd 0af89de8fh
+dd 0a73c578dh
+dd 00961fb18h
+dd 079cf7382h
+dd 07492d9a5h
+dd 06d44135ah
+dd 06278f246h
+dd 0133ad276h
+dd 05eb4f25eh
+dd 041f2f181h
+dd 01b7b5a6ah
+dd 017cae80ch
+dd 02889a05eh
+dd 0459a958bh
+dd 0592fc687h
+dd 0a62e2701h
+dd 0b2caf504h
+dd 0e499b639h
+dd 00bc0f5ddh
+dd 05e154106h
+dd 089db7274h
+dd 0e1ff2122h
+dd 08707f9e5h
+dd 00b53703bh
+dd 00d07c748h
+dd 0408d4325h
+dd 0773d5e0eh
+dd 092d98f07h
+dd 0abaf31e1h
+dd 095ce1abdh
+dd 058052fb5h
+dd 0faf4f45fh
+dd 0bee8f5feh
+dd 080687569h
+dd 05b8952a9h
+dd 0ee5f3cd2h
+dd 0d41bd068h
+dd 0958473bdh
+dd 011fcbbe3h
+dd 02621a8d1h
+dd 063140f97h
+dd 09a53fa74h
+dd 03311b424h
+dd 08375c515h
+dd 04d6ea7b9h
+dd 02174b6c8h
+dd 0465cc5a9h
+dd 0866d04e6h
+dd 05f207245h
+dd 04f95aa66h
+dd 099842b03h
+dd 0d940513eh
+dd 0fc699af8h
+dd 07f1d0b23h
+dd 01dcccce3h
+dd 0b644758bh
+dd 0dc894968h
+dd 09c184124h
+dd 0d92aa10dh
+dd 03638490ah
+dd 0317c0c90h
+dd 0aa4db12fh
+dd 0f1109a31h
+dd 0d091cb82h
+dd 0d51bb412h
+dd 045df11f1h
+dd 04c1e7180h
+dd 09aecc71eh
+dd 0318984ddh
+dd 0239fb463h
+dd 0f1ee8739h
+dd 068ee3558h
+dd 0449c0f86h
+dd 05086919fh
+dd 05fb5edc7h
+dd 021d67cdbh
+dd 0d9252d41h
+dd 0fbac7df4h
+dd 04bdd9bffh
+dd 0f0dcfd92h
+dd 000b1c284h
+dd 09f0e9389h
+dd 0d08ea4beh
+dd 039bb6893h
+dd 0b84ea70eh
+dd 0445a4696h
+dd 0c61d9d69h
+dd 0f1e12163h
+dd 0cbc65ac3h
+dd 09519ebf9h
+dd 030b69557h
+dd 02467b8e3h
+dd 0e4015ea4h
+dd 00098ca5bh
+dd 0c4905ca5h
+dd 05bb62575h
+dd 0e86b637eh
+dd 0638aa865h
+dd 04e14c8dah
+dd 0e0feaf14h
+dd 0b37d4718h
+dd 091c90cd3h
+dd 04683d3d6h
+dd 0aee752dah
+dd 0c3bfbd3fh
+dd 070626765h
+dd 0817da552h
+dd 0c32f7169h
+dd 0a5167d05h
+dd 02d1a1db1h
+dd 01fb11f17h
+dd 044305f4dh
+dd 00703a2c2h
+dd 0ac0707e6h
+dd 00371b5e1h
+dd 042ecf313h
+dd 0b20d22b3h
+dd 0bf37ccbah
+dd 0d3f70ec9h
+dd 065b8ce6dh
+dd 0464c518dh
+dd 03273bb26h
+dd 09c47bac7h
+dd 0589ed283h
+dd 0ba5dcae0h
+dd 0f321d5bdh
+dd 00d43c1b3h
+dd 0b185683bh
+dd 0478330d8h
+dd 09da7bf8eh
+dd 0bb30669eh
+dd 09dbb9c53h
+dd 064b458fdh
+dd 042b1ccd2h
+dd 0765cb88ch
+dd 03b9e91a3h
+dd 0bd2cbed4h
+dd 04c893af7h
+dd 039d73332h
+dd 0ea4b7ac0h
+dd 00b59353ah
+dd 0d2260cd8h
+dd 0c81c7716h
+dd 08fdaf779h
+dd 036757cd3h
+dd 09b1e87f6h
+dd 040cb3716h
+dd 0790cf075h
+dd 08975303ah
+dd 07b7cd09ch
+dd 06daaebdch
+dd 078beaed9h
+dd 0d31d500dh
+dd 0ea36fd59h
+dd 0aed1dae2h
+dd 01d02b310h
+dd 0830e2c74h
+dd 012e6fc3ah
+dd 0876e51a4h
+dd 09aac4e23h
+dd 01a175515h
+dd 060c4f92fh
+dd 03633ebb5h
+dd 049986bbeh
+dd 0c069ee57h
+dd 0e3dadcadh
+dd 053affa8dh
+dd 0517a4fb5h
+dd 0d29261a4h
+dd 0ad078596h
+dd 04a286c24h
+dd 0ad5e710ch
+dd 0fdd71c5dh
+dd 05d9847f6h
+dd 06c952a06h
+dd 0804a7aabh
+dd 0a7e37ac3h
+dd 0c21fa55fh
+dd 074d1bcc5h
+dd 0fb6ee158h
+dd 0e98b15c0h
+dd 0dc4ae699h
+dd 029ee5df0h
+dd 051634f89h
+dd 0f6e5c008h
+dd 0b094fc23h
+dd 0e8702da8h
+dd 05d70aab5h
+dd 0bb2effc0h
+dd 0a517214eh
+dd 085554baeh
+dd 07b659744h
+dd 00abe71f0h
+dd 016c64417h
+dd 0860af3b9h
+dd 0949b5284h
+dd 0ec1fb181h
+dd 0be3da500h
+dd 088a5d1b7h
+dd 0db8e4bdfh
+dd 07fb38b52h
+dd 0f6e4bf4ah
+dd 0087f627ch
+dd 018d1cb6ch
+dd 050378684h
+dd 036bea875h
+dd 06985b8a1h
+dd 0778570c2h
+dd 02285891bh
+dd 08c5735bfh
+dd 0f74699cah
+dd 03dffd165h
+dd 07ee21178h
+dd 06c842981h
+dd 05b8e0efch
+dd 03d793f01h
+dd 007042324h
+dd 080424681h
+dd 086c22d11h
+dd 040cd474eh
+dd 070f8c809h
+dd 025ddcf82h
+dd 0283a26aeh
+dd 0cab6964dh
+dd 0b45d0f0bh
+dd 01cec312ch
+dd 023f7a2edh
+dd 00462749bh
+dd 0d22487b9h
+dd 0d9b877d3h
+dd 0d9f1819dh
+dd 0c6a34f19h
+dd 077ac88d9h
+dd 076c7f058h
+dd 033ad2c8dh
+dd 083a4e332h
+dd 0ce1e90d5h
+dd 0fbf3a8d6h
+dd 02ac4d551h
+dd 0e81bcb24h
+dd 066025bc2h
+dd 0110745beh
+dd 0798e11d0h
+dd 0467d507fh
+dd 09cd19ebfh
+dd 01d6204dah
+dd 0a17ba8d2h
+dd 041b11aach
+dd 0ea512b95h
+dd 0cf70f205h
+dd 0cc79479eh
+dd 0d1bf38aah
+dd 0f342793ah
+dd 04b5bc5f8h
+dd 08290a44dh
+dd 027059861h
+dd 05dd91467h
+dd 0d67bf55ch
+dd 043ef7a3ah
+dd 0f09d605ch
+dd 0b17ae94fh
+dd 09cf62bb0h
+dd 067eb159bh
+dd 0e7f610d4h
+dd 0e7ec2777h
+dd 0fd026ae6h
+dd 09b5fecb8h
+dd 042c031a3h
+dd 04d88bdb1h
+dd 011d13953h
+dd 061688695h
+dd 0110f4deah
+dd 0d85b6243h
+dd 01530b2cdh
+dd 082e13b73h
+dd 0cad1cab5h
+dd 053e9f3fch
+dd 00e10316dh
+dd 094a455dah
+dd 0ac574e58h
+dd 08017f6c4h
+dd 00cf19407h
+dd 009904716h
+dd 0be89862fh
+dd 00d467b5ch
+dd 0b0530411h
+dd 0800eab06h
+dd 067265be0h
+dd 0c451bf92h
+dd 0af9f5f16h
+dd 0bca4eb50h
+dd 0b78fcc24h
+dd 065fe69cfh
+dd 0667edb00h
+dd 0278f7e9dh
+dd 02de3605eh
+dd 0115c726ah
+dd 002fe37c4h
+dd 0988f5688h
+dd 0d364359ch
+dd 0fbe18f31h
+dd 0d4fc750bh
+dd 065489fadh
+dd 01a511ef0h
+dd 06cf7d247h
+dd 004d53e24h
+dd 0a3e8413eh
+dd 05549fbaeh
+dd 07fcfbae9h
+dd 0eb9ac0f8h
+dd 0f6857aaah
+dd 0a57053b7h
+dd 0d84452b8h
+dd 07d8f5400h
+dd 0e4497b17h
+dd 0c1e924b6h
+dd 0205e0a79h
+dd 06faceeaah
+dd 078686090h
+dd 0d0f62409h
+dd 09e1f4ed5h
+dd 0182553c4h
+dd 01bfa647eh
+dd 0ac158c68h
+dd 05b1ef0d6h
+dd 0c69628c1h
+dd 0a408c562h
+dd 0bc878b96h
+dd 013bf5e6eh
+dd 0eb74e610h
+dd 04171e065h
+dd 0f02d6201h
+dd 032cb0171h
+dd 003c79f08h
+dd 0523e2a37h
+dd 09185d2a8h
+dd 0ff87275ch
+dd 0c8b67ab2h
+dd 08bd9cebeh
+dd 0dcbd268ah
+dd 0b6ea45d8h
+dd 01b892f1ch
+dd 06ab75e09h
+dd 08b7e239fh
+dd 0407d5d52h
+dd 0300ef886h
+dd 00463a951h
+dd 0287d70d9h
+dd 070ce7951h
+dd 093e4f730h
+dd 0d4eaddebh
+dd 021914e14h
+dd 085e7e1d6h
+dd 0c9117e37h
+dd 06fb4157ah
+dd 0e042d93ch
+dd 0824efb71h
+dd 0d802455fh
+dd 0288a2f5bh
+dd 085ea9283h
+dd 0174c042eh
+dd 088b66a29h
+dd 0eb809dbch
+dd 0466df992h
+dd 0f8416eaeh
+dd 0012747eah
+dd 093fd65b5h
+dd 000341b51h
+dd 00746f601h
+dd 046f1766ah
+dd 092891ed4h
+dd 0c942f774h
+dd 0451f081ah
+dd 0ed02af27h
+dd 0e1253e99h
+dd 01424dffah
+dd 095e1e07eh
+dd 0894febb1h
+dd 051155526h
+dd 09de9554ah
+dd 0201bbb13h
+dd 01b18f893h
+dd 0d57e693fh
+dd 0f9a07d03h
+dd 0d41253d5h
+dd 04d6fda7bh
+dd 07c360840h
+dd 0b1d42f1ah
+dd 04a48a2fch
+dd 0fa55320eh
+dd 0e0a312b6h
+dd 0d857a96dh
+dd 00728d730h
+dd 06365403ch
+dd 0518ae477h
+dd 0f4515abfh
+dd 05b3b0605h
+dd 02fc41daah
+dd 0adc67e76h
+dd 0b30dc8d1h
+dd 06000bbc7h
+dd 0657e4f8dh
+dd 0997a7916h
+dd 03b7bc9c8h
+dd 000497810h
+dd 06b35e42fh
+dd 0b31d270ah
+dd 0e84e1362h
+dd 02980a4d7h
+dd 0bf5e9c56h
+dd 09835e63ah
+dd 04f412399h
+dd 00ca168b1h
+dd 0a0a20453h
+dd 0f71ca00bh
+dd 07828f436h
+dd 09e9233cch
+dd 0a642264ah
+dd 0ee6b0a15h
+dd 029d9b2c0h
+dd 0456f1935h
+dd 061e564cfh
+dd 0cbb97da9h
+dd 0b13f3139h
+dd 0f5cf91f0h
+dd 0d32de8f1h
+dd 01654c8deh
+dd 036c6826ah
+dd 06ea1bb65h
+dd 0613d2cf8h
+dd 0eeb9b5ffh
+dd 0320bcd80h
+dd 047124374h
+dd 0d09e399fh
+dd 07d7f045fh
+dd 0579bee8dh
+dd 0ab634b7dh
+dd 0f45e2b4bh
+dd 01274f8d8h
+dd 03fb9f224h
+dd 0d61d64b0h
+dd 04a34f66dh
+dd 0423f1d0eh
+dd 0a26b9d27h
+dd 05ef740d9h
+dd 0397dbe06h
+dd 038287dcfh
+dd 09060fc6bh
+dd 05f9214f0h
+dd 01fc201aeh
+dd 0db0c3338h
+dd 0d63461cbh
+dd 0c36dc4f0h
+dd 07727c41ah
+dd 0d4b2413bh
+dd 03f3a261fh
+dd 02529cf13h
+dd 08c6e263ah
+dd 056cab9f2h
+dd 0288a71a2h
+dd 053c48bebh
+dd 0669ba833h
+dd 0ccb459a8h
+dd 044e93d27h
+dd 06e010557h
+dd 04dc7afe0h
+dd 0ac48a5afh
+dd 09b1577c6h
+dd 0c8b4f7f9h
+dd 04cdec216h
+dd 0a2eb554bh
+dd 0a4b80064h
+dd 0e8d5be55h
+dd 01b571107h
+dd 08b20925ch
+dd 0d73ba1dfh
+dd 0c5126192h
+dd 0afe97b1ah
+dd 08cc3244dh
+dd 01da29263h
+dd 0e9ed6252h
+dd 043647fd2h
+dd 0a26cb79ch
+dd 0a8cd9b1ah
+dd 0e1f1cf44h
+dd 092690e58h
+dd 04b434e5eh
+dd 0d512f000h
+dd 076db04a4h
+dd 0bcab495dh
+dd 0420cbe13h
+dd 01fdb4c62h
+dd 068fc4255h
+dd 0dd51adaah
+dd 0154125f3h
+dd 0dba74677h
+dd 05af3c8eah
+dd 0b79c433bh
+dd 09f3dafc0h
+dd 06e4769c0h
+dd 019bb3cceh
+dd 070088743h
+dd 0d38bba9bh
+dd 04878dcfah
+dd 066f08055h
+dd 021be6ac8h
+dd 0d13f8923h
+dd 0c18e0adeh
+dd 0bf35fae5h
+dd 0d2fbc10ah
+dd 060ffa511h
+dd 039615fc4h
+dd 0bf7e6a33h
+dd 06e69deb8h
+dd 0c9ccffcfh
+dd 0266a4dd5h
+dd 0553f1eeeh
+dd 01d5ac5a4h
+dd 0dd5a6d19h
+dd 062b54800h
+dd 0fe9a550fh
+dd 00c7107ech
+dd 03adc7158h
+dd 076e9b646h
+dd 0d193e3d2h
+dd 01d450e27h
+dd 05684ef93h
+dd 05f359dach
+dd 00787dd3fh
+dd 0468c5f15h
+dd 00f5b065ch
+dd 000d728b3h
+dd 0f4543679h
+dd 01ad2223ch
+dd 0e3aede4ah
+dd 089b36444h
+dd 036d1f867h
+dd 0a727c000h
+dd 09950d802h
+dd 03e99a752h
+dd 07b783ce3h
+dd 065191599h
+dd 0d65b8ddch
+dd 03ea724ceh
+dd 0f8bf6048h
+dd 0c3a8622eh
+dd 04d665ee0h
+dd 0398aa805h
+dd 061687dbbh
+dd 0d1261f32h
+dd 046c32641h
+dd 0271457afh
+dd 0950ff5fdh
+dd 0a836a177h
+dd 0971d2e0ch
+dd 003b49031h
+dd 0da95d56bh
+dd 0660aaaaeh
+dd 0864935bfh
+dd 0e9e84443h
+dd 05f00a9c1h
+dd 0f73584f5h
+dd 0d1d26282h
+dd 08d85fb79h
+dd 0cd4c31efh
+dd 0077b57abh
+dd 0ea8c02f7h
+dd 07f5e1b1fh
+dd 0c9cffe16h
+dd 03f871ae9h
+dd 0deadb146h
+dd 0205ca43ah
+dd 0b435a41dh
+dd 0be093e67h
+dd 0e401c53bh
+dd 0b5c8af60h
+dd 0e53bb812h
+dd 004060802h
+dd 06a7667f1h
+dd 0ddba0fe9h
+dd 03029d64ah
+dd 0e7101c3dh
+dd 0ae579e95h
+dd 00b7fe856h
+dd 0825e2aa3h
+dd 0cd2bd047h
+dd 024e34eech
+dd 021c6eb25h
+dd 0ffaf072dh
+dd 025ef6088h
+dd 0b7ed0281h
+dd 0f5c9411fh
+dd 0dbf45994h
+dd 00d97f56dh
+dd 039d2909ah
+dd 0854aa149h
+dd 0402001d2h
+dd 097c5ec10h
+dd 003cc833dh
+dd 0f1ae4f42h
+dd 0cc77000dh
+dd 002cb1521h
+dd 01dcb6997h
+dd 0ddb9d6d6h
+dd 01b68e5a6h
+dd 0a4824d86h
+dd 0e0de9055h
+dd 0ce85092bh
+dd 0a3cc7416h
+dd 01bc329dch
+dd 03d46b6eah
+dd 04877d47ch
+dd 0f9e0d68ch
+dd 0fa05c951h
+dd 0fc964aa5h
+dd 07b02a955h
+dd 06c58885dh
+dd 02856e6e6h
+dd 00f53b395h
+dd 03b9fa145h
+dd 098601ab6h
+dd 0c5b4352bh
+dd 0618d8bd3h
+dd 0031f039fh
+dd 0144781b1h
+dd 0a0268767h
+dd 06acc0e0fh
+dd 053b96ab0h
+dd 050692c99h
+dd 0e050f539h
+dd 094f47e96h
+dd 01785078bh
+dd 0db4d525fh
+dd 0860917ffh
+dd 01bd25854h
+dd 0befc959fh
+dd 06f14aacbh
+dd 076a2606eh
+dd 0dcee7a89h
+dd 077be5f4eh
+dd 0e2f3ca61h
+dd 0865cc58ch
+dd 0bed0c080h
+dd 0a4ed062eh
+dd 08d62ab38h
+dd 025600c42h
+dd 00801f5d0h
+dd 0099d4d8ah
+dd 0063ffe25h
+dd 05c0aa303h
+dd 032325813h
+dd 04482465ch
+dd 0b62cc6f4h
+dd 0a79d8435h
+dd 05729e8efh
+dd 041a7c6cah
+dd 09434227fh
+dd 0808b820bh
+dd 00a9016e2h
+dd 035979adfh
+dd 09ec970a9h
+dd 084571f45h
+dd 081edb846h
+dd 0e4e9805dh
+dd 0b21177f7h
+dd 035e2a1e3h
+dd 01edcecdah
+dd 0a874d2feh
+dd 0bbf383d6h
+dd 07ed16a8fh
+dd 07fb0bd4ah
+dd 06521111bh
+dd 0163d4181h
+dd 046390a55h
+dd 08265b5f0h
+dd 0ae384b7eh
+dd 016b2f928h
+dd 07cd558cch
+dd 04d92b875h
+dd 0912e55f3h
+dd 0b038ac1ch
+dd 0cbf54db2h
+dd 081c9bad6h
+dd 0410ed586h
+dd 092055f61h
+dd 0128af63dh
+dd 0cfa7ab01h
+dd 0d9b2cd3eh
+dd 0b603c01eh
+dd 0ed281399h
+dd 0ed1bb858h
+dd 0c2e9a2fah
+dd 0093fe560h
+dd 030f3be39h
+dd 0539574d8h
+dd 0bb2837bbh
+dd 061926a10h
+dd 0391682e7h
+dd 02f290abfh
+dd 025187cfch
+dd 0b27b2bb0h
+dd 0eed17566h
+dd 028e4ab34h
+dd 0f809d3d9h
+dd 098e72a8dh
+dd 0e68edd55h
+dd 0f0c072e2h
+dd 0787d27d2h
+dd 045ec0781h
+dd 04ca85379h
+dd 001cea4f6h
+dd 011570c9dh
+dd 06b23f0cah
+dd 035ef95ebh
+dd 07d9abfc8h
+dd 0ee7221e4h
+dd 0f161808bh
+dd 0d6d8343ch
+dd 0f96727beh
+dd 0715697bdh
+dd 0c254bb78h
+dd 09836cbfbh
+dd 005dfbc2fh
+dd 0599f5cf8h
+dd 082205074h
+dd 0e0e2f8fch
+dd 0a0695e9bh
+dd 0f7e2fe67h
+dd 0161d47ebh
+dd 06cc372c2h
+dd 0f58ffa1ah
+dd 0d92e6b0eh
+dd 054c4b558h
+dd 00754eb5ah
+dd 0ad545e92h
+dd 0f63ffa83h
+dd 0831958c4h
+dd 0fdae7430h
+dd 0d64bc760h
+dd 02bbbf911h
+dd 08a8733feh
+dd 021431478h
+dd 06753263ch
+dd 05fa3b8e3h
+dd 09fe66561h
+dd 0d08fe5fah
+dd 086bed2aeh
+dd 0f7d29fa2h
+dd 0ece43756h
+dd 0c8e9386eh
+dd 0ef9f9d59h
+dd 03bd53516h
+dd 0e08ed74eh
+dd 014f264e2h
+dd 0aa816efdh
+dd 0821702ach
+dd 06c80a17ah
+dd 055968653h
+dd 07d7fbf59h
+dd 08cf52cf4h
+dd 005c66281h
+dd 0a9c57610h
+dd 0b9980a6bh
+dd 067b72e89h
+dd 0352c7b75h
+dd 086cfbd3dh
+dd 0c3190e2bh
+dd 0acdf3918h
+dd 081e7c9f4h
+dd 019a2546fh
+dd 0ee9dad8dh
+dd 065a3a999h
+dd 0a5a641ach
+dd 0f35dc012h
+dd 0112ab525h
+dd 054a6a4b8h
+dd 052317ab4h
+dd 07fac16ech
+dd 06770b90eh
+dd 0ddeeb36fh
+dd 03ed095fch
+dd 0860524bdh
+dd 033bd64c5h
+dd 05a05e8b3h
+dd 025ae7eb9h
+dd 0347d7f9ah
+dd 0657d91e9h
+dd 03b9da6f1h
+dd 0a4b620bfh
+dd 08be91a38h
+dd 02e221291h
+dd 00c31c531h
+dd 050286f1fh
+dd 0089c03bah
+dd 09b0c85e9h
+dd 03d13a0d4h
+dd 04d77003fh
+dd 00979b3d4h
+dd 037d5b037h
+dd 0421bab45h
+dd 067e83727h
+dd 0cb107732h
+dd 00db86da7h
+dd 0c6ab1c97h
+dd 0d14b4a4dh
+dd 0d568b26fh
+dd 0bd5b7efch
+dd 05981107bh
+dd 009fcfb66h
+dd 02272f7d6h
+dd 0fbb2e179h
+dd 0b9c14a07h
+dd 03f3ec248h
+dd 0e09d9de9h
+dd 019976b5ah
+dd 03ff9e469h
+dd 0ea97d42fh
+dd 024adc791h
+dd 018cc2b41h
+dd 0ec7b1685h
+dd 056b0e485h
+dd 003048791h
+dd 06511cc72h
+dd 011b11255h
+dd 05ced5df4h
+dd 026193986h
+dd 0b7e798a0h
+dd 0b5eda1a8h
+dd 051a67a15h
+dd 0e78e5fb0h
+dd 0954c3982h
+dd 012affa77h
+dd 014b47797h
+dd 094b72659h
+dd 05a802148h
+dd 05a8e5e22h
+dd 08e42a3ceh
+dd 08c4a7145h
+dd 0b907ba5bh
+dd 02d78bc1eh
+dd 08e96def2h
+dd 0b7729e67h
+dd 040dfe3d9h
+dd 0a2247fa4h
+dd 0489d8d01h
+dd 090705aefh
+dd 0f4efde68h
+dd 07181d28fh
+dd 06811d116h
+dd 0d8f87d9ah
+dd 03111c0a5h
+dd 094226d96h
+dd 02f372a72h
+dd 06e0a5b4ah
+dd 01340b72ch
+dd 0e2bb8236h
+dd 0b9e5ff16h
+dd 0f2d8747bh
+dd 0be66ff05h
+dd 0d82b32d1h
+dd 0a1dffa78h
+dd 06da1b359h
+dd 09be0f496h
+dd 089ec03eeh
+dd 0936ef772h
+dd 0acc18382h
+dd 0aaf9598bh
+dd 0c9fc2d81h
+dd 04fa738e9h
+dd 00f1fb965h
+dd 0297b7926h
+dd 0096e6063h
+dd 0d4519018h
+dd 0255ce233h
+dd 037ca8991h
+dd 0e58a3bb2h
+dd 0321f7f04h
+dd 03dbb80bah
+dd 055f41e99h
+dd 0b4146503h
+dd 0c55abd6ch
+dd 0eb9d8a82h
+dd 0a4d34aa7h
+dd 0c58b1a52h
+dd 06e2e3987h
+dd 01002ff0ah
+dd 0c0ca4904h
+dd 0e0c59150h
+dd 03f7d42eah
+dd 08d935368h
+dd 08271cfaeh
+dd 0fc3196d4h
+dd 096a2d944h
+dd 0ac131c26h
+dd 03bc30d9ah
+dd 0fdbb4e5fh
+dd 078eb38efh
+dd 0403604e2h
+dd 0ae1800b8h
+dd 0a4ac177eh
+dd 0a55c633dh
+dd 0426abd80h
+dd 02b9f8a69h
+dd 0b9b0a275h
+dd 08584b798h
+dd 040d94bcdh
+dd 0f6e13b9fh
+dd 0b864d681h
+dd 06f57fdfah
+dd 049597f63h
+dd 060ceaac2h
+dd 0d0b18e34h
+dd 07722e740h
+dd 058cad177h
+dd 0831a4652h
+dd 0830befefh
+dd 0a51e9277h
+dd 01be6ec17h
+dd 048942a41h
+dd 07eb0ea27h
+dd 0ebee3af2h
+dd 05a050320h
+dd 0309bc008h
+dd 0a1a00164h
+dd 08a304eech
+dd 028c6fa78h
+dd 09812288ch
+dd 06da84067h
+dd 06ce16757h
+dd 0f9af667ah
+dd 01d3864c9h
+dd 0ac30630ch
+dd 0c3d43306h
+dd 0e895515ch
+dd 0ba928c0ch
+dd 0344843d7h
+dd 0ce5e2f45h
+dd 0871fb24dh
+dd 091ff7e73h
+dd 00c844b55h
+dd 0f3dc7356h
+dd 0b6e024f1h
+dd 094f23ad2h
+dd 05ea208c2h
+dd 0006c049fh
+dd 06db4f1abh
+dd 0c94663e3h
+dd 01551d4b3h
+dd 0346ca5f2h
+dd 0695d8767h
+dd 05b93007ch
+dd 03244ee88h
+dd 0adcccdceh
+dd 004cc6ad9h
+dd 0c1bc34edh
+dd 0b6f29ac7h
+dd 04044bfb7h
+dd 0a85086aeh
+dd 0a2a9377bh
+dd 0d19ba671h
+dd 02f0051ebh
+dd 00dd8d19dh
+dd 003a49711h
+dd 0743e1d31h
+dd 0f4c07772h
+dd 0adb0a3e9h
+dd 060eb85b4h
+dd 0d9ea30b5h
+dd 0213c61ddh
+dd 0ae1e672fh
+dd 025129afah
+dd 0441e9e63h
+dd 053101449h
+dd 059deee0ch
+dd 004b415e5h
+dd 0a97de1f2h
+dd 0f0753274h
+dd 0b17d2a72h
+dd 0786f65a7h
+dd 018c8cb7dh
+dd 058eae671h
+dd 0d4f922adh
+dd 0a4f8d5d2h
+dd 00ea7b115h
+dd 019c49209h
+dd 0ded64f82h
+dd 07e3e015eh
+dd 0e285e510h
+dd 06fd44123h
+dd 086a1759dh
+dd 0cfdabcech
+dd 078137b20h
+dd 065678a67h
+dd 0654d91b9h
+dd 0abc88975h
+dd 099645582h
+dd 03015409bh
+dd 0ea052ffbh
+dd 0547cae14h
+dd 0289ba335h
+dd 0c5f9b117h
+dd 01c9e79e9h
+dd 087a89bd0h
+dd 041de90a0h
+dd 007c2297ch
+dd 0b043c344h
+dd 0ff44a292h
+dd 0d8d64573h
+dd 0b8997236h
+dd 0c53f5718h
+dd 0088ae203h
+dd 0d3aaebb7h
+dd 0768d0505h
+dd 0016c309eh
+dd 0b1c28ed1h
+dd 032c086b0h
+dd 05666082eh
+dd 0a4feeabdh
+dd 01a184760h
+dd 032c64c7eh
+dd 022f912c7h
+dd 01ab09de1h
+dd 0a0eca85bh
+dd 0ea989a56h
+dd 0bf26c608h
+dd 0ed09a05ch
+dd 0d34f7c1ah
+dd 0a7297421h
+dd 08f66638dh
+dd 0137bcee4h
+dd 063fd9616h
+dd 05092d878h
+dd 059a2f1a3h
+dd 07b7529deh
+dd 0779678ddh
+dd 00e1eb138h
+dd 0d1fa97adh
+dd 08b02b1c2h
+dd 0936ff25ah
+dd 0b6b27ae0h
+dd 0df5c28eah
+dd 07d7ca727h
+dd 0fd709c51h
+dd 08cceee17h
+dd 04170350ah
+dd 05391bd5eh
+dd 030a97babh
+dd 04052934fh
+dd 0acb6cea6h
+dd 0135689efh
+dd 0718c6667h
+dd 0f51a28f7h
+dd 0e57d5420h
+dd 02a268006h
+dd 075573d9eh
+dd 08b4a6157h
+dd 0c53269a7h
+dd 0c595a63ch
+dd 039fd09a2h
+dd 0b63d08e8h
+dd 0a53c30f8h
+dd 0c915ca4fh
+dd 0f6121112h
+dd 0e81e11c1h
+dd 0865a2e2ah
+dd 00d86271dh
+dd 0da53d6ach
+dd 058b45da9h
+dd 07d957bf6h
+dd 084bae80dh
+dd 05382b071h
+dd 01ad77bb6h
+dd 0ae8e75bbh
+dd 096886fc1h
+dd 0d8ffd017h
+dd 0b3d8c933h
+dd 0f8900134h
+dd 04b2a987eh
+dd 0df60dd76h
+dd 0cfee6ad6h
+dd 0a9a2e63bh
+dd 0871ba836h
+dd 0fcea136bh
+dd 0482be1e5h
+dd 088699ea4h
+dd 0c892f5b8h
+dd 081d03fcah
+dd 005bea0b3h
+dd 0841662aah
+dd 056161cd1h
+dd 022549319h
+dd 080ec6a78h
+dd 028c9bf70h
+dd 04d70c7ffh
+dd 093219761h
+dd 0d776d48ch
+dd 0f35fbcddh
+dd 0e458b4c3h
+dd 074ed41c0h
+dd 05aacbfach
+dd 0d6d65cf0h
+dd 0fd428b2bh
+dd 091102926h
+dd 007fbf393h
+dd 09aae45dfh
+dd 04ddd4d93h
+dd 0d952c861h
+dd 0657ef5f8h
+dd 0a8b1f108h
+dd 02b319be9h
+dd 0745a419ch
+dd 09cb7b507h
+dd 081a7eec2h
+dd 0c043f500h
+dd 03239bddbh
+dd 00e996144h
+dd 0a6eeaf25h
+dd 08eba20aah
+dd 022c5bca0h
+dd 0e64e9dafh
+dd 08e7dda3fh
+dd 003cea44fh
+dd 0706e3f94h
+dd 05b9ee1fah
+dd 01bea4fbfh
+dd 0d0d7b630h
+dd 0c6f4d417h
+dd 0764e7baah
+dd 0d26d5a71h
+dd 0f05afda4h
+dd 04b2fcc1fh
+dd 04cb5de3dh
+dd 0c3413123h
+dd 037042cdeh
+dd 04698d620h
+dd 0c0270230h
+dd 087813d3bh
+dd 0f8fdd6bdh
+dd 092b46e58h
+dd 0a13ebf39h
+dd 08ef7de0ah
+dd 087b769b5h
+dd 07bf3c9d9h
+dd 0aeb6b311h
+dd 0149ebf1eh
+dd 0313deba2h
+dd 0e1ce4dfbh
+dd 0bc923098h
+dd 0fc961b7ah
+dd 0e7699da4h
+dd 09a9a9196h
+dd 02b432670h
+dd 02eaf2aa7h
+dd 0eb8e1550h
+dd 07f0e243eh
+dd 0d5fb00f2h
+dd 0dd277d7fh
+dd 0f7d37568h
+dd 0040aa7a7h
+dd 0d4e6f489h
+dd 05b843413h
+dd 083428569h
+dd 04a5a4061h
+dd 0dc4e48a3h
+dd 091a08766h
+dd 0306a9428h
+dd 017a0b73ah
+dd 0e9f3c304h
+dd 0552c5fffh
+dd 0e3122b19h
+dd 0e41e5db2h
+dd 051d8a19dh
+dd 0f4d8a98ch
+dd 072a10841h
+dd 04648a998h
+dd 02ec6a0bdh
+dd 03e05ad27h
+dd 003ad286ah
+dd 0adb82de5h
+dd 085d2a4abh
+dd 0b5c1605ch
+dd 0d05a9753h
+dd 0a9fb26c0h
+dd 084358804h
+dd 06b7c82dbh
+dd 0e2d96767h
+dd 085ae1e77h
+dd 0bc5cfc00h
+dd 0313d0e07h
+dd 088a9e493h
+dd 045326de7h
+dd 03293f86eh
+dd 0e4a1eb29h
+dd 063f19f3eh
+dd 020cc8e54h
+dd 0f15c2f37h
+dd 07ee7276dh
+dd 05d41484bh
+dd 0f1240879h
+dd 01893b27dh
+dd 0a204c075h
+dd 021b2a72fh
+dd 07c15d907h
+dd 0beb428fdh
+dd 0ddff5b35h
+dd 0b3ddc725h
+dd 05b02bb91h
+dd 0eaf25e6bh
+dd 09ce669d9h
+dd 0f8bce59fh
+dd 08dc526d0h
+dd 08c1e16e1h
+dd 09d6c130bh
+dd 0ad6fb821h
+dd 074bda48eh
+dd 03343fdd4h
+dd 069509d2ch
+dd 089a68a99h
+dd 03a1e16dbh
+dd 0bcf4f8f8h
+dd 0dce0220bh
+dd 0f929fcf3h
+dd 03804f262h
+dd 0ae88d98eh
+dd 06aa787dfh
+dd 075fb7002h
+dd 0c1009511h
+dd 0546c2c0ah
+dd 0673955fah
+dd 044285238h
+dd 0b8346c55h
+dd 0a25ed8a0h
+dd 07b2ca745h
+dd 0f0abcbceh
+dd 0d2a29290h
+dd 0adde2888h
+dd 054b60f6dh
+dd 0322bfc56h
+dd 08b8dbc0ch
+dd 0b38ee203h
+dd 025830ef5h
+dd 0bfe420f3h
+dd 077064aa7h
+dd 09a62e8d6h
+dd 059460ac0h
+dd 03f1ed5bch
+dd 05865f423h
+dd 03d091150h
+dd 0b37dd169h
+dd 04a7feb01h
+dd 0b12b8d1bh
+dd 02194719dh
+dd 0c2504298h
+dd 00d2564a9h
+dd 0e854f9abh
+dd 0ccd0bd91h
+dd 0967a2d07h
+dd 03a066badh
+dd 097140ef5h
+dd 0f1e70cd5h
+dd 088e13f68h
+dd 0e6a77097h
+dd 093af1c3ah
+dd 02d7507f2h
+dd 028dc203bh
+dd 01a7360beh
+dd 049043eafh
+dd 0e84ebeefh
+dd 066ac99e1h
+dd 0a97837d4h
+dd 02508eafah
+dd 0b7afaafeh
+dd 0970f1889h
+dd 08ef1312dh
+dd 0ba44aabdh
+dd 0d7e01066h
+dd 0bd60869dh
+dd 0906f92e9h
+dd 01b6cdcc1h
+dd 0299cd545h
+dd 063bd7be8h
+dd 02387d939h
+dd 0491e1aech
+dd 0a96f44cfh
+dd 0d02010ceh
+dd 0fb4c0591h
+dd 075e7011fh
+dd 0b3f433cah
+dd 09a153914h
+dd 085e512e2h
+dd 0290f9067h
+dd 0dd61df39h
+dd 085d7be7eh
+dd 045569f12h
+dd 0cc3f0ee7h
+dd 06bf1fbc6h
+dd 02fe55a03h
+dd 021925660h
+dd 0655186f6h
+dd 0bea795b8h
+dd 0d66d33b6h
+dd 02cf10bach
+dd 034fef58eh
+dd 073a293dch
+dd 09f7a050eh
+dd 0d95b65a7h
+dd 099032447h
+dd 03de819ceh
+dd 0aeea6e10h
+dd 0ebb4a57fh
+dd 071f25a80h
+dd 0df2117f8h
+dd 023ec2cb5h
+dd 07d99594dh
+dd 083a70308h
+dd 077271379h
+dd 0484f7b46h
+dd 095db2059h
+dd 06f25d7d4h
+dd 00d40cd8bh
+dd 08da2c6cfh
+dd 03bde689bh
+dd 04c59b916h
+dd 099f04a92h
+dd 0618745e0h
+dd 0af633393h
+dd 0015c5ae2h
+dd 024405985h
+dd 0f24b44b6h
+dd 014ad8f3eh
+dd 08c339a66h
+dd 0bbf30069h
+dd 0b1aeec60h
+dd 0918fed41h
+dd 04370b198h
+dd 0f6bba062h
+dd 0819ccc14h
+dd 0ba384de6h
+dd 07bef7c0fh
+dd 0b36c1ec9h
+dd 010f0cbddh
+dd 00ac2212fh
+dd 0d088c164h
+dd 09ce8abdfh
+dd 00cf7b013h
+dd 09b0c320dh
+dd 033e1aecfh
+dd 063404606h
+dd 0ee4b9c87h
+dd 0c842e423h
+dd 0d05a0766h
+dd 0c513f209h
+dd 093dcb051h
+dd 02390f72eh
+dd 0d6bf52dfh
+dd 06c081f89h
+dd 01ac3ab07h
+dd 02850dfddh
+dd 01322b211h
+dd 0e7f0df2ch
+dd 0b4cb9b4ah
+dd 096668e86h
+dd 05176f8e1h
+dd 09854048bh
+dd 041a05f3dh
+dd 058f814f7h
+dd 05866fd8fh
+dd 02da43f19h
+dd 0d1acc949h
+dd 0cea7a530h
+dd 0af885991h
+dd 085159be3h
+dd 099ec24dbh
+dd 0adb43718h
+dd 0d9f7c011h
+dd 0d4805d75h
+dd 00c21c893h
+dd 0b92fbccah
+dd 0800952cfh
+dd 0ce38c384h
+dd 007399629h
+dd 04be2ac4bh
+dd 068dc939fh
+dd 00f8e09c2h
+dd 0f6c8fa8fh
+dd 0aa939450h
+dd 08c347666h
+dd 0d8387836h
+dd 03c996059h
+dd 0b1ff851bh
+dd 095b8361ch
+dd 06e18a21dh
+dd 00649ac32h
+dd 0c527d090h
+dd 0d26b7fe0h
+dd 0e8452bd0h
+dd 0cd3c9678h
+dd 01136c3cah
+dd 0abfde2a8h
+dd 087d9585ch
+dd 08f5fd194h
+dd 00d2e3103h
+dd 05ffb7d33h
+dd 0f09a6d35h
+dd 0e22fcb3dh
+dd 0e328b0b3h
+dd 05b659346h
+dd 0fc62c2deh
+dd 08c6cc859h
+dd 076517388h
+dd 095557927h
+dd 0c8e16131h
+dd 0b9489415h
+dd 072aed7fbh
+dd 0375cf9f0h
+dd 0bd8cd4cch
+dd 01fbe6595h
+dd 0095578fbh
+dd 09e1e48c2h
+dd 0c1b21714h
+dd 081706508h
+dd 01a07f27dh
+dd 0d0b44a12h
+dd 0e42f5770h
+dd 03af99156h
+dd 0dad0bbb4h
+dd 0ab257b21h
+dd 070baa12dh
+dd 0bd489d02h
+dd 0b3fa6609h
+dd 0086d9970h
+dd 0cdbe238bh
+dd 0beb6c774h
+dd 029fcd0dch
+dd 03c3a836ch
+dd 0c6f721bdh
+dd 03405e8a2h
+dd 01cba47d0h
+dd 04e6ff186h
+dd 07b2a3ffbh
+dd 027c0da5fh
+dd 0868f1633h
+dd 0cf503981h
+dd 0d64297b9h
+dd 080c88936h
+dd 057913976h
+dd 06cf08921h
+dd 0080deb54h
+dd 0eb00d01eh
+dd 0e75114abh
+dd 018476ab5h
+dd 0496c8203h
+dd 0e2dc3f32h
+dd 0ebda71e3h
+dd 0ddf11d5bh
+dd 0da513515h
+dd 01bc3c554h
+dd 00475e813h
+dd 0fbb8edaah
+dd 053fb898ah
+dd 02b166a97h
+dd 00d104250h
+dd 00996f6c8h
+dd 0cba48ffeh
+dd 09fe78529h
+dd 01a337b7ah
+dd 0bd27b274h
+dd 06a38c23dh
+dd 0680d0b0eh
+dd 06d5ea0d2h
+dd 01ff7c1feh
+dd 0b2251278h
+dd 0f972ce34h
+dd 078186f09h
+dd 08fda5eb3h
+dd 08b7ddec2h
+dd 04ed98b0fh
+dd 0bd5d4ebeh
+dd 08a022d7dh
+dd 004afc8f2h
+dd 0c6010d21h
+dd 06652a505h
+dd 0f206a2a8h
+dd 0de4391b6h
+dd 0d8021327h
+dd 0e00a92adh
+dd 05fea8f59h
+dd 05815280bh
+dd 045e88acdh
+dd 0b1077f67h
+dd 0fc1ece40h
+dd 0bf0d4e72h
+dd 009842132h
+dd 08a642ea0h
+dd 07b9ed839h
+dd 0cda27140h
+dd 0fc088e49h
+dd 05c49fb2fh
+dd 0d0094588h
+dd 01436b264h
+dd 0e950ac9ah
+dd 05cc41423h
+dd 011dd58fch
+dd 0ef8aa95fh
+dd 0909fc6dbh
+dd 02d7c248fh
+dd 0073b323eh
+dd 064e5df99h
+dd 0cb0762cah
+dd 0b12db387h
+dd 040102eb9h
+dd 01034d6bfh
+dd 03244398fh
+dd 00d6e179eh
+dd 0f3c3a776h
+dd 0ec696047h
+dd 03d5b752bh
+dd 095735b46h
+dd 0bc0d1d2eh
+dd 00c02278ch
+dd 09a875d36h
+dd 0d98d9332h
+dd 0a30a6872h
+dd 05cef06dfh
+dd 0353dac18h
+dd 030034e98h
+dd 0d60d828ah
+dd 000655734h
+dd 0a64fb4f1h
+dd 00d95d045h
+dd 051cd5ac8h
+dd 09441e0afh
+dd 0c37d5187h
+dd 06cf0a69ah
+dd 007d7eafdh
+dd 0090769bch
+dd 0a2f43e45h
+dd 0559dff48h
+dd 050755ce6h
+dd 044a518f9h
+dd 0ae9819a5h
+dd 04c5fbadah
+dd 0f76d9120h
+dd 0df8af592h
+dd 05208ab34h
+dd 0180bcaf5h
+dd 0d550b780h
+dd 0bebac875h
+dd 065c2655bh
+dd 0cf35cd55h
+dd 0b228e769h
+dd 02add77cbh
+dd 0b8da443ch
+dd 094541c7ch
+dd 021d1c5efh
+dd 04982ad4ah
+dd 0021f3ac9h
+dd 0bf26b5f0h
+dd 025454677h
+dd 08b202ec2h
+dd 010a94e4eh
+dd 0738d5d36h
+dd 09fa9717dh
+dd 0b56ac768h
+dd 04b2d4fb5h
+dd 0cf12494bh
+dd 018e4dc5ah
+dd 0af23f746h
+dd 06c8bd0a7h
+dd 0e7da71b3h
+dd 0daf81b9dh
+dd 01776d568h
+dd 0f37081dbh
+dd 0d0b93717h
+dd 0328bf8cch
+dd 00079a817h
+dd 0ea0f96aah
+dd 0b7a5aa48h
+dd 07e4c9327h
+dd 0d978adc0h
+dd 082401945h
+dd 0fcc21bd7h
+dd 0c406d252h
+dd 0b31467e5h
+dd 08187499fh
+dd 0d1b3e502h
+dd 0b5b3b068h
+dd 08c5f708bh
+dd 09fd63072h
+dd 08a128212h
+dd 06bcde058h
+dd 0458379c3h
+dd 0cb0d7e5fh
+dd 047081d12h
+dd 09db03435h
+dd 029998d98h
+dd 0b8899e91h
+dd 011848ee7h
+dd 0cbd3e62eh
+dd 0bebbfbf9h
+dd 04d409301h
+dd 0c799a3a1h
+dd 0a32585ech
+dd 0b0869b0ch
+dd 02c45bf94h
+dd 07adf162bh
+dd 0dbd0cb07h
+dd 0367a155ah
+dd 02aad3860h
+dd 0fee63e1dh
+dd 0f93aec5ah
+dd 04d07f860h
+dd 07f2b7633h
+dd 07038d1e0h
+dd 09bff5ad6h
+dd 075350cf1h
+dd 042ec83a6h
+dd 06d5165eah
+dd 08a31dda2h
+dd 0741839d7h
+dd 04070c3f1h
+dd 094987929h
+dd 02d440c2dh
+dd 0b8a3c83fh
+dd 01c7d63b9h
+dd 09b53e58eh
+dd 0082c0202h
+dd 0a380585eh
+dd 09c685302h
+dd 0fafa72a6h
+dd 093d6e6f9h
+dd 0e9e02bc6h
+dd 02c47569eh
+dd 0c38b0f48h
+dd 002eb8596h
+dd 0b19ea1e4h
+dd 0cecb4e21h
+dd 09aa1de47h
+dd 0a95da83fh
+dd 0d20cda22h
+dd 04fdb3acah
+dd 05092c91ch
+dd 027815507h
+dd 0da3a661eh
+dd 0ea29e25dh
+dd 0bdbab28bh
+dd 0036e3ec2h
+dd 01aa1cd7ch
+dd 08f611864h
+dd 0cbb7aa3ch
+dd 00ef7e122h
+dd 0f57b5bb5h
+dd 0a999c6d3h
+dd 0a75ca92dh
+dd 0d394bc8eh
+dd 0263e4777h
+dd 07c3dbe79h
+dd 0197a6607h
+dd 040e6056dh
+dd 085e3b9efh
+dd 041902656h
+dd 0edd3b749h
+dd 005c4d992h
+dd 00f179393h
+dd 0c169101ah
+dd 020e6c049h
+dd 04f01ada0h
+dd 08a6602c4h
+dd 064f74709h
+dd 04647cce6h
+dd 0224022feh
+dd 057f817edh
+dd 0ba7ddd70h
+dd 03ac74713h
+dd 02e9bd618h
+dd 04194795ch
+dd 0f3734bech
+dd 0beab97fch
+dd 0b7f2f3bbh
+dd 01cd43086h
+dd 0267524beh
+dd 0059d0deeh
+dd 0351b832bh
+dd 04ada4106h
+dd 005e06c52h
+dd 0a31406dbh
+dd 0544451b8h
+dd 0cfef50e5h
+dd 04b1f9750h
+dd 07b7ba67fh
+dd 05c614b83h
+dd 0d2d0209bh
+dd 04df6fd4bh
+dd 08b494616h
+dd 04d55cc33h
+dd 0d09ae83dh
+dd 01e4b3e61h
+dd 066af92a5h
+dd 0b42c114eh
+dd 0b79fe657h
+dd 0fe3ba8fdh
+dd 04dc4f5c8h
+dd 0e3bd76ebh
+dd 0688583eeh
+dd 0499e1bebh
+dd 092386bfbh
+dd 025638678h
+dd 0d27f6812h
+dd 0af0c2ff6h
+dd 0d4ef525bh
+dd 080b21e4dh
+dd 0fc98ac89h
+dd 01e2ca365h
+dd 0531efcd5h
+dd 0ec5c17c2h
+dd 0d33d1bfeh
+dd 0f5eb1058h
+dd 013c50cb6h
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130678806.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130678806.inc
new file mode 100644
index 0000000..e5c50e8
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130678806.inc
@@ -0,0 +1,12800 @@
+dd 000000001h ; Header Version
+dd 000000806h ; Patch ID
+dd 011262013h ; DATE
+dd 000030678h ; CPUID
+dd 014d372a6h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000c7d0h ; Data size
+dd 00000c800h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000806h
+dd 000000000h
+dd 000000000h
+dd 020131125h
+dd 0000031f1h
+dd 000000001h
+dd 000030678h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000031f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 06fbddad0h
+dd 097b60ec8h
+dd 08252afd4h
+dd 0e61f6d91h
+dd 03542ee8ch
+dd 084b597b4h
+dd 0ec4d4fd9h
+dd 0ffb27814h
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 060645febh
+dd 01ffee1f9h
+dd 00a21ab72h
+dd 0d3ee4551h
+dd 0a842647ah
+dd 0da703d41h
+dd 0c09db538h
+dd 054443633h
+dd 00079362eh
+dd 018c35b48h
+dd 027f0100ah
+dd 0e629b421h
+dd 027258ddah
+dd 0a95d2e47h
+dd 02868b622h
+dd 09eaed6f4h
+dd 0fb51d446h
+dd 00a5547bfh
+dd 090f85256h
+dd 09f6b525bh
+dd 0ac62ec50h
+dd 0627c86ffh
+dd 0be0815a5h
+dd 001df99d4h
+dd 03184d9e8h
+dd 0e3039c8ch
+dd 085f7a6c8h
+dd 067f110fdh
+dd 0f2fd9d81h
+dd 0ab7b3bb0h
+dd 01a6e554ah
+dd 0563f13ebh
+dd 0cfaf6911h
+dd 0421cb07bh
+dd 0e431acc3h
+dd 09599030fh
+dd 0f7dd2410h
+dd 0165b6eceh
+dd 01b3c1d57h
+dd 0fca8f45ch
+dd 02cdc850ah
+dd 07f43bf16h
+dd 0475bf40dh
+dd 02a5dc508h
+dd 00fc75ddeh
+dd 0597fd3cfh
+dd 0e03cfbddh
+dd 024ce56feh
+dd 0c072278fh
+dd 080dee58ch
+dd 0ea01969bh
+dd 01adf77b6h
+dd 0ddc31a66h
+dd 00c01ae9ah
+dd 000153551h
+dd 061f687bbh
+dd 0262dd297h
+dd 0fcdb49e6h
+dd 0aa02d465h
+dd 00b3b3febh
+dd 064fcc5d2h
+dd 04985f57fh
+dd 0a1fd2e9ch
+dd 07273a596h
+dd 025073a02h
+dd 08f51a6deh
+dd 051cbe0c8h
+dd 01d2909fah
+dd 022dd31afh
+dd 0951049fah
+dd 0f3eb3c6dh
+dd 025ba0ccah
+dd 079f1dfa3h
+dd 028ac0c22h
+dd 09d9a5861h
+dd 0da816e5ch
+dd 0b01eeb09h
+dd 067267d24h
+dd 0cd011000h
+dd 0d97381b9h
+dd 04619e6fbh
+dd 02d128f6ah
+dd 03c337500h
+dd 0ee36d015h
+dd 0043418c8h
+dd 0e17e9105h
+dd 0382a6d5fh
+dd 028c9910eh
+dd 084500f2dh
+dd 01bcb7bf2h
+dd 0c665b9ech
+dd 036ee8d54h
+dd 0fe7b4281h
+dd 0f7f72cc9h
+dd 084b4c103h
+dd 00d2058e5h
+dd 0311c43beh
+dd 0d65f4a12h
+dd 0e15a30ach
+dd 059de1115h
+dd 08776bd64h
+dd 0526c65beh
+dd 0b81bc7d0h
+dd 0b07bcf82h
+dd 08c46be72h
+dd 0baafd289h
+dd 0eea32c0fh
+dd 0be6cf0a7h
+dd 0a5408ba4h
+dd 099553266h
+dd 0dbb1793dh
+dd 07122b692h
+dd 0e4ca943fh
+dd 07cbcb1a7h
+dd 091356937h
+dd 0639071e8h
+dd 03b471c53h
+dd 0f4d203bch
+dd 092a4b37eh
+dd 08a17dd59h
+dd 01ee0119fh
+dd 012564562h
+dd 076f71eb2h
+dd 00be2a9d2h
+dd 0eb7f334ch
+dd 0cf5aaddfh
+dd 03809df7bh
+dd 0cc631c13h
+dd 0bc492d5dh
+dd 0dc530396h
+dd 083a338bah
+dd 01f851a37h
+dd 038399297h
+dd 0b207617fh
+dd 0dce032ddh
+dd 0e26e263bh
+dd 0d26d3bc2h
+dd 03b3fd4d5h
+dd 01bbf0808h
+dd 0533e9587h
+dd 03bfb23efh
+dd 077b98bbdh
+dd 0462f21f9h
+dd 0d703227ch
+dd 0d483c101h
+dd 042f8c03eh
+dd 0deadce64h
+dd 095a18240h
+dd 09838570fh
+dd 05e23160eh
+dd 0f314656fh
+dd 0b4673b36h
+dd 0a2c96eb4h
+dd 09b9b4b46h
+dd 0488ea5ceh
+dd 09ee2df56h
+dd 03a12d3adh
+dd 0778cb2b9h
+dd 091defb53h
+dd 0e52c98d6h
+dd 0cce15191h
+dd 056bb1e6dh
+dd 00bd55e7ch
+dd 07cb9cfach
+dd 05c60faa7h
+dd 0afdd0058h
+dd 0b8ecfc50h
+dd 06d57d708h
+dd 08ed47620h
+dd 0a14c2fefh
+dd 07dc40e6ah
+dd 0339f18a9h
+dd 074598e5bh
+dd 0d6653ce5h
+dd 055e8b4c2h
+dd 0527d4c39h
+dd 099802f39h
+dd 092e28f57h
+dd 092cf27b3h
+dd 027d74162h
+dd 02b5d41bah
+dd 07b792bbeh
+dd 0f44caffdh
+dd 0ded543fah
+dd 08a86ffaeh
+dd 0fd5a80efh
+dd 08226a131h
+dd 0552df4ebh
+dd 0ad97ef85h
+dd 0d2f5db1bh
+dd 08fbc0944h
+dd 08f90c9b4h
+dd 078c2b95ch
+dd 097cdcca5h
+dd 08436c209h
+dd 0b28a3e5ah
+dd 06df895ach
+dd 06ccfb633h
+dd 03c9e0dd2h
+dd 015360e69h
+dd 0c8d8707eh
+dd 0b4be6ffch
+dd 0ee04e2edh
+dd 06057da1eh
+dd 016bac3a4h
+dd 07c86c93ch
+dd 0d1b101ffh
+dd 06705e2f0h
+dd 0b8e4975ch
+dd 0d0ddf64ch
+dd 0f723e500h
+dd 0e4354620h
+dd 06f30d64dh
+dd 08403c25bh
+dd 00cf0aa7dh
+dd 033dd7626h
+dd 0bc86e30ah
+dd 0ed644a2fh
+dd 02c659757h
+dd 0f09665c9h
+dd 097b10624h
+dd 01c2b862eh
+dd 029e48039h
+dd 0b9edf104h
+dd 08eda9381h
+dd 02f3bfda0h
+dd 05b22b6fbh
+dd 04c49187bh
+dd 0052b174dh
+dd 049658814h
+dd 0baa96bbbh
+dd 09ab7cc73h
+dd 02359306fh
+dd 0d41dc0beh
+dd 09add4409h
+dd 0aa5ba714h
+dd 0c9e0b4a1h
+dd 06715e370h
+dd 0ca09e12dh
+dd 04fd677cch
+dd 0420fb220h
+dd 02c840841h
+dd 0cc9cccb3h
+dd 0b71263c7h
+dd 0106db8cah
+dd 0f2034d9fh
+dd 047fddce7h
+dd 005f1a665h
+dd 06637669dh
+dd 086edb08eh
+dd 09f1ea1e1h
+dd 03c841e26h
+dd 01e01b5b5h
+dd 0e698f005h
+dd 0567ab631h
+dd 06defd9cfh
+dd 0bded983ah
+dd 0d4d3aa76h
+dd 02fa0da6bh
+dd 0fd462121h
+dd 0d5c59880h
+dd 00c7ac655h
+dd 00003bfe5h
+dd 07b82f0eah
+dd 0511a80f6h
+dd 07bdf22e9h
+dd 01a264cb9h
+dd 07cea9884h
+dd 0a57fa918h
+dd 04a9e30c9h
+dd 0359329e1h
+dd 0dbfeba09h
+dd 0aa92c164h
+dd 05c7b1332h
+dd 0b45e7af6h
+dd 0c0498491h
+dd 01d8c0d9fh
+dd 0345c1faah
+dd 082d47489h
+dd 04ac36a21h
+dd 0bbc002dah
+dd 040f3630fh
+dd 0eb4952dah
+dd 0a8e0a27ah
+dd 03812e2e7h
+dd 0b4cb6cd2h
+dd 0f9685315h
+dd 01a3df98fh
+dd 0ae202570h
+dd 02d0d0bd6h
+dd 08f36e21fh
+dd 07c9e670bh
+dd 0217b448eh
+dd 0eff45463h
+dd 03fe60d24h
+dd 0c56e1bc7h
+dd 016fcb27ah
+dd 05c38d70dh
+dd 0e3d922fch
+dd 06d58835fh
+dd 0ea4f5bf3h
+dd 023cab2d7h
+dd 02f740fe1h
+dd 0be8a4cbeh
+dd 092e99824h
+dd 0b36fe4fbh
+dd 0c91a0585h
+dd 0274521c6h
+dd 02a317555h
+dd 0a20e5dd9h
+dd 0f5bc620dh
+dd 08c38dbc2h
+dd 01c04b7b8h
+dd 07be0eb0bh
+dd 05af7e22fh
+dd 02a4c5410h
+dd 0b0a4acbfh
+dd 019a4a806h
+dd 05d6628aah
+dd 0647b8dd8h
+dd 0e527e08fh
+dd 057d6e267h
+dd 0308b5a09h
+dd 098fc3295h
+dd 010164272h
+dd 058a58345h
+dd 0d8815520h
+dd 0fc97a79eh
+dd 0fd81998eh
+dd 0cac87913h
+dd 026d266a4h
+dd 0dbcc3cfbh
+dd 0b8bd804ah
+dd 0c5c42f8dh
+dd 0ea687526h
+dd 0eed4ba4ch
+dd 0749037e9h
+dd 0d878c58dh
+dd 01859fbd0h
+dd 0788e102bh
+dd 04b1520d1h
+dd 04c72375ch
+dd 0fb3b9b84h
+dd 0cb080812h
+dd 0d347e887h
+dd 08069f561h
+dd 07a404d74h
+dd 0ba1544adh
+dd 0a71c35d8h
+dd 0a815b466h
+dd 0f194fc2eh
+dd 0be98cffeh
+dd 00690bb5dh
+dd 02704d4eah
+dd 08c7fc64bh
+dd 0c7e19764h
+dd 0bf1aef96h
+dd 04b93688dh
+dd 0c8a63fc6h
+dd 05f9fc0efh
+dd 0131faed4h
+dd 08ea1eb5ch
+dd 05439096fh
+dd 0baebc248h
+dd 00c2dcb60h
+dd 0c5c19fadh
+dd 02844ae8bh
+dd 0d82196d5h
+dd 0f4a8cc31h
+dd 0d38a121ah
+dd 0f02c67e4h
+dd 07d258c87h
+dd 076ad6233h
+dd 090628338h
+dd 0b5c55000h
+dd 002b35f3dh
+dd 0d5eb33e6h
+dd 09eff4770h
+dd 04d1bd63bh
+dd 0dc0313bfh
+dd 057c608a7h
+dd 07265cfaah
+dd 08c45074fh
+dd 07c14dff4h
+dd 022fb50a0h
+dd 0aa79c31bh
+dd 07364553ah
+dd 0f98f8ccah
+dd 03069a48ah
+dd 05291a8cfh
+dd 0cef82223h
+dd 07c8488b6h
+dd 035acc425h
+dd 06be32eaah
+dd 0519d9d03h
+dd 06eb28283h
+dd 0a6b6d7f5h
+dd 00ba263a0h
+dd 01f4a9931h
+dd 04e671e0bh
+dd 0c83556beh
+dd 0b51ca80fh
+dd 009d1f47bh
+dd 082aaf404h
+dd 0817f6859h
+dd 0b4fe2f22h
+dd 0034a9c5fh
+dd 05188bd68h
+dd 0e509012bh
+dd 0bbf47204h
+dd 047f89125h
+dd 0a5f9ccfah
+dd 0b850955eh
+dd 062f5ded9h
+dd 06251a69dh
+dd 0831a1640h
+dd 0e5f88acdh
+dd 0b74cd12ch
+dd 09c7daff4h
+dd 0a33b0ebah
+dd 07e2895b0h
+dd 0b43fec35h
+dd 0e39b4b1dh
+dd 08d46ecdah
+dd 063ad0ee1h
+dd 0665a2db0h
+dd 09ae2e517h
+dd 0002469cch
+dd 0a8f4bbf7h
+dd 0ecb5c629h
+dd 0503660dah
+dd 0553f92eah
+dd 0a0936ec2h
+dd 0cfdd63a7h
+dd 0d7b12818h
+dd 0b7cc2b68h
+dd 0deea6682h
+dd 0bb8eededh
+dd 0b8df15d6h
+dd 079d0359eh
+dd 07c917bd0h
+dd 03befd44ch
+dd 0400fc45eh
+dd 0710a1a11h
+dd 02ab163e7h
+dd 09938486dh
+dd 0f4f9fb4bh
+dd 02825f0cch
+dd 0bcfc3928h
+dd 0451b592dh
+dd 0267da467h
+dd 00016c489h
+dd 034e1f298h
+dd 004678047h
+dd 06910c868h
+dd 08a5eb252h
+dd 0248c3193h
+dd 00f627de0h
+dd 0ff897c22h
+dd 0df9739a2h
+dd 030919bc0h
+dd 0f611a9bbh
+dd 06a318eb9h
+dd 070be822ah
+dd 0453b1643h
+dd 02de85e73h
+dd 0eb2169bch
+dd 0395017feh
+dd 04d68a51fh
+dd 096b56903h
+dd 0eb15a1ceh
+dd 0a6c03886h
+dd 05077c669h
+dd 02b039794h
+dd 0f0a28e79h
+dd 08e9d9bcfh
+dd 0648cb2dch
+dd 0cd7c4919h
+dd 0018b359fh
+dd 03ab248f4h
+dd 0066c2618h
+dd 0b5792835h
+dd 08cd96edbh
+dd 06a7db9b4h
+dd 07051273bh
+dd 08188e68ch
+dd 01abb13b4h
+dd 03bfef596h
+dd 05af9c1f8h
+dd 065ddb0bah
+dd 08e4ada2eh
+dd 0242158f5h
+dd 0e9eb7178h
+dd 09781d14eh
+dd 03ed46094h
+dd 0ef31cd83h
+dd 080418bfah
+dd 01e324919h
+dd 08455f586h
+dd 092eaf909h
+dd 013232ba5h
+dd 03dd00acdh
+dd 0c8c29d3fh
+dd 0450e15cch
+dd 02f19f626h
+dd 0e2c293cdh
+dd 098f1e8fbh
+dd 037c5d122h
+dd 0ad4aa1c8h
+dd 0ac381b79h
+dd 073ae5b3ch
+dd 0bc8c2838h
+dd 07c896b4dh
+dd 030e10b1ch
+dd 03de17342h
+dd 0a4bf968bh
+dd 024192899h
+dd 05e7fc726h
+dd 059640a8ch
+dd 0d93961a1h
+dd 08d987eceh
+dd 0f67bc244h
+dd 033040203h
+dd 0e8802107h
+dd 08a0c18a5h
+dd 0337549d8h
+dd 043e96edeh
+dd 019d4205ah
+dd 0917eb170h
+dd 0653d24ceh
+dd 0c52e02c2h
+dd 0624b89e3h
+dd 0f730a4e7h
+dd 0180bb3e6h
+dd 0754d08feh
+dd 0f5ed20a1h
+dd 0e4e2c946h
+dd 044f729adh
+dd 08e732d0fh
+dd 0549ec213h
+dd 0dfb59337h
+dd 028fbe1d7h
+dd 0a760d248h
+dd 0e42213a5h
+dd 0b2e3f175h
+dd 0ef45fca7h
+dd 04279e3a3h
+dd 0065bd9bch
+dd 0cf71b829h
+dd 041dd0da2h
+dd 08a9c2a3dh
+dd 010bf115ah
+dd 0f36f83f5h
+dd 0d4726d3eh
+dd 0b4fd032eh
+dd 0091dddc2h
+dd 0eebce195h
+dd 009aeae2fh
+dd 065486f2eh
+dd 070641c6ah
+dd 080a3bda5h
+dd 0f2df69f0h
+dd 00fd8e661h
+dd 054c9a33ah
+dd 0742f03b2h
+dd 0035cd879h
+dd 063e0bce1h
+dd 061127af8h
+dd 03b0dea4fh
+dd 0a4f290f5h
+dd 0cdf0f8d9h
+dd 078e2d394h
+dd 0e8ccef4bh
+dd 02820772ch
+dd 0ec43cf60h
+dd 0896e462bh
+dd 08479a48eh
+dd 0a0e60ca2h
+dd 0a569c67dh
+dd 0ea4cf600h
+dd 0fcb4d230h
+dd 02481c897h
+dd 033605d51h
+dd 08cbe88c6h
+dd 0cfe4295ch
+dd 0e2641bb7h
+dd 034c7eb0dh
+dd 0912541f1h
+dd 04d1261ffh
+dd 03c566a64h
+dd 00c02731fh
+dd 09767db75h
+dd 04847b152h
+dd 015aa4594h
+dd 02a29b7d9h
+dd 0f0506c7ch
+dd 03d2bc6c9h
+dd 0bd874420h
+dd 0757147b6h
+dd 03a18e9efh
+dd 001cc29a0h
+dd 05aec8207h
+dd 008a56907h
+dd 08f9b4b06h
+dd 04fc09786h
+dd 02ce3b6b8h
+dd 04926a640h
+dd 0e097d6f1h
+dd 0f9b17578h
+dd 0aa264717h
+dd 0c4a39b6dh
+dd 0dec81f11h
+dd 0262b87f3h
+dd 091348e12h
+dd 0a3c3dca8h
+dd 0be3055a0h
+dd 08813797eh
+dd 08ce38e44h
+dd 072428f58h
+dd 00c54d809h
+dd 064f7a6e2h
+dd 065aad17fh
+dd 086751b20h
+dd 05fad7c6fh
+dd 05520d15dh
+dd 099d4693ah
+dd 077eeea74h
+dd 070a2b444h
+dd 05e3cd8a3h
+dd 05a7a55fah
+dd 0363fbf81h
+dd 0e89a6146h
+dd 02bbb2d03h
+dd 057893d5fh
+dd 0986a1199h
+dd 0e2810248h
+dd 03be19133h
+dd 06bcd700ch
+dd 0090a7a53h
+dd 0d92874f7h
+dd 0083aba16h
+dd 056afd431h
+dd 03c858a64h
+dd 09b22091eh
+dd 0fcb587a7h
+dd 024c11e59h
+dd 07daac380h
+dd 038d8fc06h
+dd 0d36cf3cch
+dd 0d24b2adfh
+dd 029501efch
+dd 030b5afd9h
+dd 0a4ad1b26h
+dd 0a36986b0h
+dd 0616a40c2h
+dd 05dd81f3ch
+dd 08dc2f634h
+dd 051a24dbch
+dd 06e17ae92h
+dd 0de27486ah
+dd 086d84506h
+dd 059f6446bh
+dd 01bdf1514h
+dd 02e74070fh
+dd 03877e374h
+dd 02cdcfbb3h
+dd 0eedc87b9h
+dd 02686f3e4h
+dd 0343cb338h
+dd 0facf51ceh
+dd 0e49df959h
+dd 00ca6d91bh
+dd 093bc7c7ch
+dd 07b1608bah
+dd 01b80ed50h
+dd 022ecb70dh
+dd 072954274h
+dd 03a4a2408h
+dd 0d7ce43e8h
+dd 0b4f72946h
+dd 076608130h
+dd 0949536bbh
+dd 0d6817091h
+dd 072bc5c84h
+dd 02ce0c9f6h
+dd 054399742h
+dd 076ecfc9bh
+dd 0300a3e94h
+dd 01bb388f4h
+dd 0aad47b39h
+dd 03af56982h
+dd 0c3df758ch
+dd 00f25103eh
+dd 03e0e983ah
+dd 07060a1b8h
+dd 0b9ba7db0h
+dd 0ef64f8c4h
+dd 0d71829e6h
+dd 05336931eh
+dd 0c020e103h
+dd 0d207dc99h
+dd 0fd855d76h
+dd 0761559c4h
+dd 0d6e2d70fh
+dd 042824debh
+dd 066908021h
+dd 0162ac268h
+dd 0e9d87d0ah
+dd 0496bfb77h
+dd 078724239h
+dd 0234b5541h
+dd 048003a0ch
+dd 032207492h
+dd 01cda4805h
+dd 02855fe9fh
+dd 08a2fbc81h
+dd 0a4530ce6h
+dd 0199719a5h
+dd 0448993ddh
+dd 0b7daa2a2h
+dd 0a0a70aabh
+dd 0001d6fe2h
+dd 000674004h
+dd 004bb7364h
+dd 02049e64ch
+dd 0f9120369h
+dd 0621c6cbfh
+dd 053ae2ef7h
+dd 05c323b4fh
+dd 09bf61038h
+dd 0bd642100h
+dd 04f51428fh
+dd 07be23ef8h
+dd 07027ad2eh
+dd 04f169cech
+dd 038f9a613h
+dd 090f7aa76h
+dd 090478d01h
+dd 0e66f8187h
+dd 0f6842b0bh
+dd 03ca1d996h
+dd 02844159fh
+dd 01d0f3e1bh
+dd 06015d208h
+dd 08a5c12cch
+dd 03f861535h
+dd 009b035c0h
+dd 06f0e6ea5h
+dd 072d338ddh
+dd 053829332h
+dd 0a3735e2dh
+dd 0c200fee8h
+dd 038729a11h
+dd 0f843348eh
+dd 05886cbfeh
+dd 0cc355cd8h
+dd 0bfa220c6h
+dd 0ecdea45fh
+dd 0f927ff57h
+dd 06549d9dah
+dd 0c0326c6bh
+dd 01e03eb73h
+dd 0a2bab382h
+dd 00a2dda45h
+dd 0bbe86fc8h
+dd 0e805e81ah
+dd 011f58edbh
+dd 0cc3abe98h
+dd 02e648474h
+dd 00638a5c0h
+dd 02c81ccdah
+dd 098bd27a3h
+dd 0e297099dh
+dd 0edaa3a4fh
+dd 084484270h
+dd 0973a7ebch
+dd 0233cc880h
+dd 078771f15h
+dd 098976ccfh
+dd 024d4902ah
+dd 07e291531h
+dd 078e8e494h
+dd 0631a5902h
+dd 02d05ede7h
+dd 0acbd00cbh
+dd 0343db082h
+dd 0352c2c3fh
+dd 020a6bb78h
+dd 00adf340ch
+dd 0324acd3dh
+dd 0f2d62e6fh
+dd 0c16a86bfh
+dd 04f30c4e7h
+dd 0b751ee7fh
+dd 0c8cfac35h
+dd 080b83f1eh
+dd 019a727e4h
+dd 08c461fd2h
+dd 01e95a743h
+dd 0817e17edh
+dd 01cf95bf1h
+dd 07d34a557h
+dd 015bffdbeh
+dd 0f22bb67fh
+dd 0bbe0eb7dh
+dd 017f53813h
+dd 0b35433cfh
+dd 0e34eb370h
+dd 02c42a5d1h
+dd 04f90a981h
+dd 0f4efc085h
+dd 0cb7e2132h
+dd 096dd6227h
+dd 0d06f4ad0h
+dd 0acff64f1h
+dd 05cb3ae8fh
+dd 0c1dc68eeh
+dd 0bbdfd1ach
+dd 0ad31a4cch
+dd 0e8d39a1ch
+dd 0a55cd5d9h
+dd 030dd7fb9h
+dd 0197731d2h
+dd 0da1dc3fch
+dd 0d68aaa34h
+dd 05f18b2e0h
+dd 0a2c98f75h
+dd 0b27ae707h
+dd 0e6f66269h
+dd 051380f23h
+dd 0328eb658h
+dd 0f061b642h
+dd 0364a9293h
+dd 06f8b6565h
+dd 0b34e6ab3h
+dd 0ba0f6aach
+dd 0ea53f017h
+dd 0b9975768h
+dd 06bb175f9h
+dd 010ec8f94h
+dd 088a31c5ah
+dd 0b9781fd7h
+dd 06bab3b81h
+dd 04a57dcdbh
+dd 063e97ba4h
+dd 02b53ad10h
+dd 0153881b9h
+dd 0e4c1bc5dh
+dd 01c251f45h
+dd 0971bfdc7h
+dd 0e62ad0edh
+dd 09f42969eh
+dd 0fc631bf5h
+dd 0d848a1d6h
+dd 04835f6a7h
+dd 0e07a60beh
+dd 0a4b755e8h
+dd 0834cd767h
+dd 04e75286eh
+dd 0c5be428ah
+dd 07f4e8876h
+dd 0db914ccch
+dd 0f3bd251dh
+dd 0513c5824h
+dd 085c66e22h
+dd 00f0b4046h
+dd 078756b7eh
+dd 0fd6fc5c6h
+dd 00ff93d90h
+dd 0d02037beh
+dd 0f73ca6c7h
+dd 071c78276h
+dd 0c0393f2dh
+dd 0a009d648h
+dd 02bde0291h
+dd 08631d86ah
+dd 0de846842h
+dd 0c3c51b77h
+dd 0d60f36cfh
+dd 053f2de9bh
+dd 00ec05c00h
+dd 0d68024e1h
+dd 06ebbb40eh
+dd 0203a7b82h
+dd 0742be17ch
+dd 048e65125h
+dd 09637cb06h
+dd 0f4af0721h
+dd 0a9fd16dah
+dd 0fdac905eh
+dd 089875497h
+dd 0851abc51h
+dd 0d9db28e3h
+dd 0b6c085d2h
+dd 07b5abe5dh
+dd 080448827h
+dd 09cdc5ff6h
+dd 06805d354h
+dd 02597b0cah
+dd 08a778ef7h
+dd 03b2be728h
+dd 09b81381ch
+dd 0b480a98ch
+dd 08d6cce6eh
+dd 05f481b90h
+dd 0a423922ah
+dd 0ca344226h
+dd 0c985947dh
+dd 0dd35e12dh
+dd 0d61a90eah
+dd 0e4286fc7h
+dd 08fa22422h
+dd 07e112837h
+dd 0f972e31dh
+dd 088704d7bh
+dd 0cfe84d5ch
+dd 0d45c18a4h
+dd 05e0145cah
+dd 074173602h
+dd 033446d21h
+dd 05a97d03eh
+dd 05210e62eh
+dd 05c8ff4a9h
+dd 099977c09h
+dd 05bd42481h
+dd 007870f5dh
+dd 0ac5f11d0h
+dd 078d27855h
+dd 0255aed48h
+dd 0ca2115a6h
+dd 02655bcedh
+dd 04fcf091dh
+dd 0afecb5d7h
+dd 01acdd13fh
+dd 028279c61h
+dd 0fe164faah
+dd 0552b6d57h
+dd 04b2b3ee0h
+dd 039fed963h
+dd 0de45e0b9h
+dd 01564ba92h
+dd 0376a3908h
+dd 0ee99ec84h
+dd 061c36245h
+dd 0fd58e48ch
+dd 01cc55466h
+dd 0eb2d083bh
+dd 027699382h
+dd 0fdb01f0bh
+dd 0e3c882c2h
+dd 0aee01afdh
+dd 031bda803h
+dd 0191fcb6ch
+dd 0a51d7093h
+dd 033eb0192h
+dd 07faf81e9h
+dd 03b665559h
+dd 00441f63eh
+dd 0cc3ba582h
+dd 055ed988eh
+dd 040ab5ed6h
+dd 08b1c3544h
+dd 0b7b9f7cch
+dd 03b580587h
+dd 07caf28e3h
+dd 0cd562ec6h
+dd 0303d40eah
+dd 01af262f1h
+dd 076879103h
+dd 0d1e26ebfh
+dd 0ba951ac4h
+dd 0d17d6664h
+dd 0036ec0ach
+dd 0f150a2efh
+dd 03f3be75dh
+dd 0045df903h
+dd 0dd5c4fa6h
+dd 0807496cah
+dd 04dcb2b93h
+dd 066515945h
+dd 086338d29h
+dd 05db5d46dh
+dd 0c57347cch
+dd 0ac580fd9h
+dd 0d86f9d4fh
+dd 0f4b19d90h
+dd 0083176b9h
+dd 042687d29h
+dd 0e8ff6f29h
+dd 009ca8819h
+dd 0f972c88bh
+dd 0f40bab99h
+dd 0dd59e623h
+dd 0913a6ec7h
+dd 0d9cd321eh
+dd 06fe8af71h
+dd 039a87a05h
+dd 031894241h
+dd 0055f0ee3h
+dd 042d5f426h
+dd 05e8d4387h
+dd 0099bbb43h
+dd 07c4f6ee9h
+dd 0c9c3b8e1h
+dd 07d262cdeh
+dd 0c0ac9950h
+dd 0f3a4aeb6h
+dd 0c55f3511h
+dd 0a91cd97dh
+dd 03a3b1a1fh
+dd 0957565ach
+dd 088d0219eh
+dd 0c0f59beah
+dd 06a37a1aeh
+dd 0eb75cc22h
+dd 0762f73cfh
+dd 03edb98feh
+dd 036d61627h
+dd 00155860fh
+dd 082713e61h
+dd 0df9a10fbh
+dd 065c8858dh
+dd 07c9255b4h
+dd 021d48f00h
+dd 07c34b55eh
+dd 0cba3810fh
+dd 0439e97efh
+dd 0333dcb04h
+dd 0e983c6bfh
+dd 022a28b65h
+dd 018391d72h
+dd 06fd827eeh
+dd 0560add3ch
+dd 0a096360eh
+dd 0a7be4822h
+dd 0aae559b0h
+dd 02e83c6d7h
+dd 00b0a0a9ah
+dd 001ca1ad1h
+dd 071627636h
+dd 035aa8f28h
+dd 0dd925331h
+dd 07fea9810h
+dd 04f5e1894h
+dd 00af624dbh
+dd 0e6377719h
+dd 0f1de01ach
+dd 022078903h
+dd 0684b0f3ah
+dd 0a992ad82h
+dd 0470e0145h
+dd 01f8d2819h
+dd 0c3712ad1h
+dd 0847435eeh
+dd 07ea509b3h
+dd 0c5b76943h
+dd 0588fe4b7h
+dd 0bb2ef234h
+dd 092e6b25bh
+dd 068c1804ch
+dd 0cdb267f6h
+dd 0c26c22b3h
+dd 05507df6eh
+dd 03cbf8a37h
+dd 0ed82e5e9h
+dd 006b3b58eh
+dd 0014274e2h
+dd 09d224a32h
+dd 0572e318eh
+dd 08ccf8962h
+dd 06df6f33fh
+dd 0275134e7h
+dd 0b3c794c3h
+dd 01d36b520h
+dd 022cd1c27h
+dd 04c8cf08fh
+dd 0a8ff4705h
+dd 024be13efh
+dd 0f1bec68ah
+dd 035b0f980h
+dd 0eff72503h
+dd 0206e9d4bh
+dd 0860e4a17h
+dd 019d8a2dah
+dd 0bac31fceh
+dd 03132cae8h
+dd 0526ce9b0h
+dd 001e37f17h
+dd 03bc75c05h
+dd 0c4b46613h
+dd 02748222ch
+dd 01bea30b0h
+dd 01907d3cah
+dd 03787e362h
+dd 0655fecc9h
+dd 02e406416h
+dd 0b486fd30h
+dd 06f870fadh
+dd 03b10bdb6h
+dd 06b77a63ch
+dd 032fdba89h
+dd 079062661h
+dd 03f5611ach
+dd 04d0a8a51h
+dd 090d72d11h
+dd 0ec7fe623h
+dd 08fe02c0ch
+dd 0543ca2b0h
+dd 0c7187c22h
+dd 00739104eh
+dd 014667d2eh
+dd 09a3dc125h
+dd 0b06d1260h
+dd 009fd07a7h
+dd 0db78474bh
+dd 071d366c2h
+dd 07264fe6bh
+dd 0a730ee05h
+dd 0d2642d4ch
+dd 091948802h
+dd 0c9c47aa1h
+dd 0aecb6816h
+dd 0fa9630ffh
+dd 04922bca2h
+dd 0aaf3d578h
+dd 0eea8eaadh
+dd 0aa01a781h
+dd 0d21b8804h
+dd 0eff376aah
+dd 000e32df6h
+dd 08847069ch
+dd 0092f9adfh
+dd 0f338851ah
+dd 0d8a59bf0h
+dd 0737ed096h
+dd 006f1af2fh
+dd 0f733dd73h
+dd 0fbf54a14h
+dd 0b203efadh
+dd 0a28952ech
+dd 0f3871469h
+dd 04cd19e86h
+dd 010e9e05bh
+dd 0a0e5bfd3h
+dd 0da3b5cb1h
+dd 06110d2a5h
+dd 05040c284h
+dd 036645957h
+dd 0921030f4h
+dd 0ceffb555h
+dd 0161b7da5h
+dd 0fc81b6b9h
+dd 0720668e2h
+dd 06dbf45f8h
+dd 0979b537ah
+dd 03f611e9ch
+dd 08ddcd579h
+dd 04255c91fh
+dd 0c96d8564h
+dd 08d022c2bh
+dd 034d11467h
+dd 0097973e5h
+dd 076b2047eh
+dd 05231b316h
+dd 04e965b6fh
+dd 0d6af73fbh
+dd 027240037h
+dd 0f4d91304h
+dd 09a8b75a5h
+dd 0f83554f7h
+dd 0f4af1010h
+dd 09d9405a5h
+dd 05585ceeah
+dd 01a4b98a3h
+dd 023d19358h
+dd 0a524820eh
+dd 0cb093573h
+dd 07a258cedh
+dd 003067957h
+dd 0eccbeab9h
+dd 083443a98h
+dd 0b8bd450dh
+dd 08773f8adh
+dd 0067151f6h
+dd 0182f8cafh
+dd 067d8bfe8h
+dd 0f4327589h
+dd 0d82790c5h
+dd 005bae688h
+dd 06511f23dh
+dd 0871d291bh
+dd 0025ec708h
+dd 00c0afb6dh
+dd 0a1f9ce87h
+dd 034c0072fh
+dd 05628baeah
+dd 0c492992ah
+dd 02cee38b1h
+dd 034a7c77eh
+dd 00c48c9aeh
+dd 059afe189h
+dd 0f99c162fh
+dd 0f3e9038bh
+dd 06098cdfdh
+dd 000e04bfeh
+dd 0b0abef18h
+dd 07d322a31h
+dd 023439068h
+dd 055e6e9d6h
+dd 0a90ef87ch
+dd 053a3e36ch
+dd 0d539e784h
+dd 0e7539dbfh
+dd 04d2ca4dfh
+dd 0c6b3218eh
+dd 02f4e5182h
+dd 037a747fbh
+dd 096f2ccdeh
+dd 039a9da1ah
+dd 0c072db6eh
+dd 021566f00h
+dd 040fd52aah
+dd 0f96ce975h
+dd 02ed83b45h
+dd 0fb59663bh
+dd 0130add48h
+dd 01d8753cah
+dd 0e664062bh
+dd 03039a4e0h
+dd 06169705ch
+dd 0c8dd713dh
+dd 0b0e70121h
+dd 007f08407h
+dd 0d05405efh
+dd 0336f86b5h
+dd 04176ed5ch
+dd 055ddc366h
+dd 0977fa206h
+dd 0fe0ce1aeh
+dd 0f0d58256h
+dd 09ccc333dh
+dd 057365c01h
+dd 07b7a5378h
+dd 0c6b9660dh
+dd 0112e58bbh
+dd 08d2ae632h
+dd 0a9b6dfc5h
+dd 04f030b15h
+dd 0c2295b48h
+dd 083cbe218h
+dd 05933c506h
+dd 0a2037475h
+dd 0badd9d29h
+dd 0320849bfh
+dd 05ab6215bh
+dd 0e53cf0b1h
+dd 035358178h
+dd 0ffbae52ch
+dd 0798bb3bch
+dd 0a6a1db1dh
+dd 0320d6cc4h
+dd 09a169ec3h
+dd 05daf1006h
+dd 0eb39fef5h
+dd 0f205fcd7h
+dd 07d9fc2c8h
+dd 00d23d86ah
+dd 0719499f3h
+dd 09d469c36h
+dd 0d0994e42h
+dd 0c454399eh
+dd 0bf4c97c0h
+dd 073b769f9h
+dd 0e5360dach
+dd 07cce6aa5h
+dd 0fcf8cd9ah
+dd 04d24da55h
+dd 03d6b94fbh
+dd 0c6a33f7fh
+dd 01046140ah
+dd 0b1753c40h
+dd 0cabe4249h
+dd 04b3efc88h
+dd 0bdbc8af2h
+dd 0545b7324h
+dd 03b4f94e2h
+dd 09008fc5ah
+dd 0c475320dh
+dd 04c0f1f6dh
+dd 0398ea8eeh
+dd 0022d6646h
+dd 0b48fe1d5h
+dd 0669ddebfh
+dd 07b635582h
+dd 02f49a23ch
+dd 02b029069h
+dd 0c1aefa9fh
+dd 0cef02421h
+dd 0568bba29h
+dd 06783618eh
+dd 044a568c9h
+dd 08d12277eh
+dd 09fc6f0a4h
+dd 07974027ch
+dd 044cf7ba2h
+dd 022947595h
+dd 049ceac32h
+dd 0a43e09e3h
+dd 089a76358h
+dd 0c3a00a06h
+dd 08ccce149h
+dd 0e12720a9h
+dd 01ba7f0e8h
+dd 0dbedf64eh
+dd 09e085eeeh
+dd 01ca3c42bh
+dd 0ba2df81bh
+dd 08bb25f09h
+dd 088145dc0h
+dd 08868df8dh
+dd 0619988f8h
+dd 022bb8a58h
+dd 0072041b0h
+dd 065a8ac59h
+dd 00644228ah
+dd 01b353367h
+dd 0b895206dh
+dd 075b6036eh
+dd 07f96938bh
+dd 0b4110328h
+dd 024448091h
+dd 05381584ah
+dd 080325959h
+dd 04bb0c5bbh
+dd 044f50f8fh
+dd 0d59ba91ch
+dd 08082e509h
+dd 035df8150h
+dd 0f6e91578h
+dd 065d397d3h
+dd 038213750h
+dd 0aca00b0ah
+dd 022ef272ah
+dd 0ee8f2b72h
+dd 0a8e598c8h
+dd 0f3a83e14h
+dd 074fb44d9h
+dd 03a62c1d0h
+dd 03f2c6735h
+dd 0f8955872h
+dd 0e39cc38dh
+dd 075280c1dh
+dd 035177f33h
+dd 0f644a7dbh
+dd 01c91c4b2h
+dd 0c41e1bb8h
+dd 02f55644fh
+dd 04fa7789fh
+dd 065870461h
+dd 0d8d89019h
+dd 0529fea86h
+dd 0809a341ah
+dd 087500c92h
+dd 07c1700d7h
+dd 0cb6370c7h
+dd 0b45fafebh
+dd 0784e9741h
+dd 0070ca597h
+dd 012a4f27bh
+dd 096d55780h
+dd 061fcd39fh
+dd 0fe432875h
+dd 048213939h
+dd 0fc01b444h
+dd 0f997981eh
+dd 0cff054a3h
+dd 04fafbcb2h
+dd 010cfddd9h
+dd 0d30af5cch
+dd 0305fe122h
+dd 0fd163edah
+dd 0c40559f5h
+dd 0f81f9f50h
+dd 07e6d18bfh
+dd 067e39718h
+dd 013155f1dh
+dd 00ad41098h
+dd 07c3d93c8h
+dd 06c4ea0cbh
+dd 03cdf9616h
+dd 0e08d7ab6h
+dd 0c541c79dh
+dd 01d8df38bh
+dd 030300b7fh
+dd 0302a0b65h
+dd 0a894b94fh
+dd 0a66db78ah
+dd 01c06353ch
+dd 02c0d592fh
+dd 007d8509ch
+dd 005bd358bh
+dd 09d08a589h
+dd 07e580b0bh
+dd 0e3226bffh
+dd 07e99719ah
+dd 0e6ccd469h
+dd 0ad772d58h
+dd 031f57ec7h
+dd 01ef8266ah
+dd 0c3277f85h
+dd 0e87f506ah
+dd 09f1f4e9dh
+dd 0a646c1d0h
+dd 0da246092h
+dd 088664914h
+dd 0da3afa44h
+dd 0b174efa8h
+dd 0fa41e85bh
+dd 04b6cb6edh
+dd 091a85b2ch
+dd 02ec67d3dh
+dd 059c98b3eh
+dd 09711a6a8h
+dd 08e9b4ac3h
+dd 06c933723h
+dd 07ff49d49h
+dd 0dfc3c114h
+dd 08f1a6066h
+dd 062e9f35fh
+dd 0b9f11f4dh
+dd 0e7a5ee7fh
+dd 0a5ba3141h
+dd 0124fae87h
+dd 0a412b57fh
+dd 02d0d5786h
+dd 0380d2b51h
+dd 0c0f33e49h
+dd 0dd056a5dh
+dd 0741ba790h
+dd 086b3005ch
+dd 0d495076ah
+dd 0397bb54eh
+dd 09f7bb7a7h
+dd 05d0de6e5h
+dd 0fba05946h
+dd 0b6e32d40h
+dd 00cd0f2a0h
+dd 070e83432h
+dd 06a37350dh
+dd 0251fcc50h
+dd 0489ce833h
+dd 0286ad3d1h
+dd 0897bf264h
+dd 0980d9bddh
+dd 0ab06c01eh
+dd 089f3da38h
+dd 0e0ddc8feh
+dd 0045c6228h
+dd 0eec7d603h
+dd 0c7d2b00eh
+dd 0fd3349e1h
+dd 0815dfc55h
+dd 0db56fd7eh
+dd 0faf23255h
+dd 0bced1979h
+dd 0edac9e11h
+dd 076ee9b84h
+dd 004b7d37bh
+dd 0cf19ad4fh
+dd 05f83b228h
+dd 0489efe07h
+dd 0687ed0d1h
+dd 03976ac17h
+dd 0fd4c959bh
+dd 0e5599024h
+dd 01c7f713ch
+dd 08e1fc524h
+dd 013c836f1h
+dd 0c4ca06d7h
+dd 0fb58aa79h
+dd 0146e74d7h
+dd 085126649h
+dd 0b45fc37dh
+dd 0937eeaa7h
+dd 0ec2fc8a1h
+dd 084cc789ch
+dd 0e494e51eh
+dd 0e50ea512h
+dd 0bc32b5b5h
+dd 0124167b2h
+dd 0b04b1fb1h
+dd 071e21367h
+dd 088f98608h
+dd 0c935c24eh
+dd 028205410h
+dd 0ae79af98h
+dd 0cf3bdfach
+dd 018f75f15h
+dd 02a88b63fh
+dd 08f8e9e7eh
+dd 091befa78h
+dd 01d526ed5h
+dd 05e987f54h
+dd 03be4c607h
+dd 0d36673bch
+dd 0cf6893d3h
+dd 087df6f93h
+dd 02f417fcdh
+dd 09a97c78ah
+dd 08856bd47h
+dd 00b30941fh
+dd 06e459ba1h
+dd 00a3a05a4h
+dd 04b2717e5h
+dd 09bc6194ch
+dd 06d229bech
+dd 0e5ef2e2ch
+dd 09df4ccabh
+dd 0db70880dh
+dd 0ce179e59h
+dd 02e30a029h
+dd 0011dfed0h
+dd 0587dc96ch
+dd 0e965ef45h
+dd 0797e7916h
+dd 0733e03a2h
+dd 06163a9aah
+dd 0b103e672h
+dd 0146515a7h
+dd 0ff7dec2ch
+dd 01f6a112bh
+dd 0e6f22b99h
+dd 03afbceadh
+dd 0a21d4acbh
+dd 0b1847998h
+dd 08835a084h
+dd 0517f3a7fh
+dd 080cf485eh
+dd 0e2bff2d2h
+dd 0f7c4a892h
+dd 01cf148a9h
+dd 01c3fb593h
+dd 037a166e9h
+dd 054ec3a85h
+dd 00524f6bfh
+dd 03e262cb2h
+dd 04b945ba5h
+dd 0835480e1h
+dd 0c023011ch
+dd 052ffc683h
+dd 0c10b4c6dh
+dd 0a38c7218h
+dd 077d1191ah
+dd 0b433fad5h
+dd 075beeac5h
+dd 082c8352eh
+dd 09ac7f9fah
+dd 08fe47b70h
+dd 0210790e6h
+dd 0676fa74ah
+dd 0c37696fdh
+dd 023e7a558h
+dd 04171b89ah
+dd 096868a5ch
+dd 018faf62bh
+dd 06b086908h
+dd 0cbb08b52h
+dd 041fc3c45h
+dd 0141d3ba2h
+dd 0e88d0932h
+dd 09533ffcah
+dd 0a78159c6h
+dd 022f1fcefh
+dd 0835779e2h
+dd 0c8866352h
+dd 033ac8689h
+dd 0fb0dffbah
+dd 0fe287695h
+dd 0684ee022h
+dd 03c790778h
+dd 03e85c505h
+dd 0484e6013h
+dd 0eb70fdfbh
+dd 0e268fbe0h
+dd 00d98b998h
+dd 0b7c7cf76h
+dd 031ec9bd7h
+dd 0c13e7103h
+dd 0ff40b0eeh
+dd 0765a1e7fh
+dd 0f1f50c4ch
+dd 0ff045998h
+dd 00e27ed0ch
+dd 0297ed3a8h
+dd 05df5a67dh
+dd 0618edc80h
+dd 0d60b974fh
+dd 06fe1fdb2h
+dd 0ad145adch
+dd 04a3b76a2h
+dd 0c9f4b6f4h
+dd 0b3eb3a5ah
+dd 0ede3154bh
+dd 00804c61ah
+dd 0090a245ch
+dd 02c4d3ca0h
+dd 0fa77da24h
+dd 021b088b5h
+dd 0903d979fh
+dd 006abbec3h
+dd 0a165dbc8h
+dd 0cb9f8c22h
+dd 08edc5c50h
+dd 0d24e11cfh
+dd 00de601e1h
+dd 0e4ad2b9fh
+dd 0c30461d2h
+dd 0599057d4h
+dd 0a45d2356h
+dd 082597b7ch
+dd 0bd6d88ddh
+dd 06c607948h
+dd 0f333349eh
+dd 0e559f751h
+dd 074e351d5h
+dd 0fb7a31cah
+dd 01324d22dh
+dd 0905b9be1h
+dd 06c0e0f24h
+dd 00073bdf5h
+dd 039585110h
+dd 04e4c44d7h
+dd 08ad2241dh
+dd 0eb5450c6h
+dd 0b1ff7b37h
+dd 09f90125fh
+dd 0e7303661h
+dd 0090fc5e1h
+dd 0ae4a9a7eh
+dd 08e408d71h
+dd 0117cb559h
+dd 0d4c94295h
+dd 09143f3b5h
+dd 0eaae4aeeh
+dd 01cca3e1bh
+dd 0902707d5h
+dd 0e0854e3fh
+dd 02baac5d1h
+dd 01f99e5eah
+dd 0d9e2dabbh
+dd 0b9a58987h
+dd 0a7e6b8a3h
+dd 00b882e4eh
+dd 0c7ce5337h
+dd 0acfe03cah
+dd 01a755005h
+dd 01dd30cd6h
+dd 046a1834ch
+dd 060b61120h
+dd 00b9a2393h
+dd 0243cd786h
+dd 0afc8e274h
+dd 07d65e027h
+dd 0b9787215h
+dd 0afe1f47ch
+dd 0483112a5h
+dd 056fea453h
+dd 06fcfad25h
+dd 0447e1222h
+dd 04fcac8c6h
+dd 0e2961f7ch
+dd 030b1fe15h
+dd 00e110cd5h
+dd 0c0eaf5e2h
+dd 09610add4h
+dd 0b76bcb9bh
+dd 02afa74a8h
+dd 073d1d4c7h
+dd 022c0401fh
+dd 08cbcfc87h
+dd 0372d3129h
+dd 04f86f5bbh
+dd 0150ff475h
+dd 0c0c8602fh
+dd 0dcfbf4b6h
+dd 006ae023ah
+dd 013211ee9h
+dd 0141c51a2h
+dd 0b6e25bd0h
+dd 0d3bb2187h
+dd 09b93ffc7h
+dd 08c2fa2d5h
+dd 0656bc048h
+dd 0a17b7e99h
+dd 0271625d3h
+dd 0db9481a8h
+dd 0ad8b3ea0h
+dd 019945e11h
+dd 0a72afafah
+dd 0ae3e6483h
+dd 0e236b965h
+dd 085707ab2h
+dd 0bb3e67eah
+dd 02a55ce42h
+dd 03d1570d7h
+dd 0747f98dah
+dd 06fb8303ch
+dd 0b053f4e1h
+dd 0abf937cbh
+dd 0699b55ddh
+dd 0de2f687eh
+dd 09de9ec8ch
+dd 0bae65b40h
+dd 0afe10a60h
+dd 0450ddf24h
+dd 0269dcf25h
+dd 0dcf0c500h
+dd 07a405068h
+dd 0e5c17116h
+dd 06e7236f9h
+dd 0aaea6cd5h
+dd 05deda42ah
+dd 013cd74beh
+dd 0bddca074h
+dd 03f4f4816h
+dd 0dd2458efh
+dd 05be10a30h
+dd 02454a438h
+dd 0947c2ad7h
+dd 03840382ah
+dd 02553f906h
+dd 057d4cbcch
+dd 07c05179fh
+dd 04d0eb65ah
+dd 0e9b8a4d0h
+dd 0ad7a56edh
+dd 00d46e165h
+dd 049063550h
+dd 0501f6750h
+dd 0ef95a1f2h
+dd 044bc3ab0h
+dd 0c31dce63h
+dd 0c3ec5337h
+dd 0bddfd31dh
+dd 034b3a915h
+dd 0cc06961fh
+dd 07bcc476dh
+dd 0fe116df2h
+dd 00ce52647h
+dd 0e997fe1dh
+dd 0a83d6ef7h
+dd 03dc425afh
+dd 03bd3665bh
+dd 00cd0f83fh
+dd 0c6da3eafh
+dd 0a91e0acah
+dd 09573cf88h
+dd 0c4a10b2ch
+dd 0027fdc1eh
+dd 087f0e555h
+dd 04416703bh
+dd 0f53fabc0h
+dd 0304baac4h
+dd 08d711222h
+dd 0599d94b1h
+dd 0f8a277c6h
+dd 0b3bf8b50h
+dd 0b2edd0e4h
+dd 0d6fbb6cdh
+dd 0c868689bh
+dd 09f4d387ah
+dd 0d7ad19c8h
+dd 0736a07b4h
+dd 0dd366594h
+dd 0e49166b2h
+dd 0e1826b65h
+dd 0cf612678h
+dd 0436ff326h
+dd 0c5e11f1ch
+dd 09ba95474h
+dd 0bb66d280h
+dd 038717e22h
+dd 008e0a1e5h
+dd 08b5387f4h
+dd 06c363268h
+dd 013042222h
+dd 0cda5d4edh
+dd 0801d49c1h
+dd 0a3f873fbh
+dd 0456ebf30h
+dd 02ab49746h
+dd 0f6e77c9ah
+dd 000441d17h
+dd 0ed2239bdh
+dd 0b9f952ceh
+dd 01dac55eeh
+dd 05ebf42b8h
+dd 0ff1c26eah
+dd 06406accch
+dd 0d8e11c3bh
+dd 085dd5e81h
+dd 061ce10d9h
+dd 00ba9eddch
+dd 0436ee33eh
+dd 070e9c83dh
+dd 067913642h
+dd 0500df040h
+dd 01c299c79h
+dd 03e386881h
+dd 0e55ab288h
+dd 04f2ff0d5h
+dd 01a86978dh
+dd 048ba0106h
+dd 03a51c521h
+dd 07de1d5d3h
+dd 02471b5bbh
+dd 0a7a26d96h
+dd 0b076ef7bh
+dd 04873cad2h
+dd 0251475f4h
+dd 02bfcd8d2h
+dd 0da2ee11ah
+dd 0932925c3h
+dd 07eca9393h
+dd 02c93e42ch
+dd 06578b5c0h
+dd 023c13832h
+dd 01c91c046h
+dd 0b005c671h
+dd 098073aa8h
+dd 06d45aeaah
+dd 06e6695c1h
+dd 03feafe58h
+dd 0f6b48a14h
+dd 02cf28a63h
+dd 01e8843c6h
+dd 05caa8578h
+dd 09abbd51eh
+dd 0bc2fe123h
+dd 00f538787h
+dd 0f41621beh
+dd 0a737a84dh
+dd 0670c3d1ah
+dd 07e6ab050h
+dd 0c4549a51h
+dd 08c8385aeh
+dd 0faaa93c6h
+dd 09e2044fdh
+dd 0d920f1bfh
+dd 0b61895cah
+dd 0d787d86fh
+dd 0b1cfef9eh
+dd 0ab1d00d6h
+dd 0e0ce4336h
+dd 04477a19ch
+dd 09091ff04h
+dd 0a2491f6fh
+dd 092b1da3ah
+dd 06f49b2dbh
+dd 07014b37fh
+dd 09c2aeebch
+dd 04ae92758h
+dd 0e13208b5h
+dd 03aee037ah
+dd 08e80a014h
+dd 0461620d5h
+dd 0625360bbh
+dd 0126d8ed9h
+dd 053813a3ah
+dd 03fdbf280h
+dd 017d6be9bh
+dd 0696cd7b4h
+dd 0ce7dd951h
+dd 0673834d0h
+dd 0a1e8db62h
+dd 07dc10ae6h
+dd 09b91e5dfh
+dd 09b8927a4h
+dd 08c38cc31h
+dd 0c0ae701ch
+dd 0d7722d74h
+dd 0b75b675fh
+dd 051973491h
+dd 0ca19143bh
+dd 006ced9b5h
+dd 0cb65276eh
+dd 04d5b43b4h
+dd 0a906edd1h
+dd 0ed76a093h
+dd 0876794a1h
+dd 0beee70cdh
+dd 02f93e095h
+dd 0ce15c5a8h
+dd 0a010219dh
+dd 017001a24h
+dd 0904feaf1h
+dd 09aca7653h
+dd 0b913af79h
+dd 01211fd5eh
+dd 0126f5ee0h
+dd 0f92ed52ah
+dd 0558bfb90h
+dd 0d0630794h
+dd 0ecd2fe31h
+dd 0151eb0c6h
+dd 0a270ee5ch
+dd 00550e945h
+dd 0bf0b93cfh
+dd 0cb43bc28h
+dd 024c0dc76h
+dd 0a7ef4576h
+dd 0c8cd4d54h
+dd 06019f5f4h
+dd 065ebb68fh
+dd 049402ab1h
+dd 03824ac0eh
+dd 0ac401c8bh
+dd 09be68147h
+dd 0b4e3af3ah
+dd 0d2af6e56h
+dd 038bfdb5ah
+dd 085be6772h
+dd 0da67692bh
+dd 0119e0c94h
+dd 0923f8e5dh
+dd 06f7f7c37h
+dd 087a6f238h
+dd 0e3d04b22h
+dd 002be4615h
+dd 084691eceh
+dd 0e1fd715eh
+dd 04bf72600h
+dd 0f90a8f1eh
+dd 0aa570d67h
+dd 075d94237h
+dd 028467fe0h
+dd 002c7a325h
+dd 02592a2eeh
+dd 0474bb6a9h
+dd 03916f471h
+dd 0f5c4b8d8h
+dd 0ae926d2bh
+dd 0f94b4b85h
+dd 01b9ec51dh
+dd 0cad150d0h
+dd 0ed58faedh
+dd 0fd59beebh
+dd 0faece252h
+dd 08b238593h
+dd 052ab460eh
+dd 06a0fdb2fh
+dd 09568ff4dh
+dd 0c7934bdah
+dd 00479a114h
+dd 06fdcb394h
+dd 00f5d05d3h
+dd 082c55246h
+dd 0993d1f74h
+dd 05608b0deh
+dd 014c897c4h
+dd 05faf4f7dh
+dd 08a6e8a4ah
+dd 0bdbecbf5h
+dd 09f58bf4fh
+dd 03963a035h
+dd 0ba4c5a57h
+dd 0131dd922h
+dd 0922cae94h
+dd 0d169b6f6h
+dd 091fc6f74h
+dd 03a4b8c1ah
+dd 06fd5456ah
+dd 087d1b576h
+dd 0dc87169ch
+dd 0fd23a988h
+dd 074c4b8e0h
+dd 0c215d0bah
+dd 0992614e4h
+dd 0c1b5da65h
+dd 0d59fbec7h
+dd 0ff4e4e15h
+dd 04b2c51d5h
+dd 0501b737dh
+dd 0ff8b187bh
+dd 0907df4c8h
+dd 0a1dfda90h
+dd 010507d1bh
+dd 0c18f63f5h
+dd 099dafc73h
+dd 008fb00d4h
+dd 0ca1135c2h
+dd 063be7bdah
+dd 0b1f3016dh
+dd 016c79246h
+dd 09a7d0d86h
+dd 080b6069dh
+dd 00f0a848ah
+dd 068615cfch
+dd 01fc91942h
+dd 01233f8f2h
+dd 04994bb08h
+dd 0c7895a0ch
+dd 00e27fc32h
+dd 0752656bfh
+dd 0e89897eah
+dd 07586f63ah
+dd 0f3d1e5d8h
+dd 00cc36de6h
+dd 0773b9864h
+dd 0195d2381h
+dd 01926038eh
+dd 0c12fd0f4h
+dd 00be571b1h
+dd 0b2aded34h
+dd 094ac6c52h
+dd 0df7dc8cbh
+dd 00b520each
+dd 0bfac2ae4h
+dd 06b179e94h
+dd 0525424d0h
+dd 0c7132381h
+dd 0aa4edba1h
+dd 06f5c009ch
+dd 0ac7a0a01h
+dd 0d5a9e87ah
+dd 0807d4597h
+dd 0d31e4989h
+dd 0e6da2d32h
+dd 0c034780dh
+dd 061bd96deh
+dd 03fe08373h
+dd 0d23f857ch
+dd 0428aca95h
+dd 036f518ech
+dd 00a046265h
+dd 0fad10f8eh
+dd 0daf812fdh
+dd 0667872ddh
+dd 0e3fd2d06h
+dd 07871f2d0h
+dd 08b4ea3fah
+dd 0f08b133dh
+dd 0b476f20bh
+dd 051455c3eh
+dd 014b44323h
+dd 0dcd00102h
+dd 08af31fe4h
+dd 03ee96729h
+dd 014395892h
+dd 049a32cfch
+dd 0ddbe40e7h
+dd 054e854b6h
+dd 0dcdf9310h
+dd 0ae879ef4h
+dd 0396095bfh
+dd 05c02262bh
+dd 03ddf5bc9h
+dd 066f8b479h
+dd 0d3ddea42h
+dd 07e748b8ch
+dd 0fe14a25bh
+dd 06bd4f8c9h
+dd 0ced0d556h
+dd 0b9c25bbdh
+dd 00d9cf381h
+dd 0f82a799dh
+dd 09f12d53dh
+dd 0988c3b5bh
+dd 0910b6000h
+dd 02e798e93h
+dd 0168ecf65h
+dd 018c15e16h
+dd 08fabd341h
+dd 0db29c3cdh
+dd 0e7ae2c22h
+dd 07cea36e7h
+dd 06e964b7ah
+dd 098776376h
+dd 032ae644ch
+dd 04aa21a8dh
+dd 01f136da5h
+dd 0829caf26h
+dd 01b2dae0ch
+dd 0495f1e41h
+dd 0c6757de1h
+dd 0fe1a8035h
+dd 01c9d1341h
+dd 09f51087ch
+dd 07ed8575dh
+dd 03146ed53h
+dd 0e4b7aa0ch
+dd 03369b6cdh
+dd 08eae0856h
+dd 0f351e599h
+dd 07b93f3f3h
+dd 0f0946af9h
+dd 092ba00bbh
+dd 08fe51fcch
+dd 0c1ac80f3h
+dd 079dd44b7h
+dd 04bbb2851h
+dd 0e4736578h
+dd 063fb8771h
+dd 0eae937bah
+dd 0e8a4fd59h
+dd 04fbcce80h
+dd 0df61c168h
+dd 0fc4bbe00h
+dd 0aa4922c4h
+dd 009eb9877h
+dd 034f00e08h
+dd 071b92a93h
+dd 064eca884h
+dd 0cb32c6feh
+dd 0a2c611f7h
+dd 0c690ffd4h
+dd 095c19a90h
+dd 0a879090bh
+dd 0fe40a718h
+dd 02739203dh
+dd 01eea81dfh
+dd 0c7fb844eh
+dd 05025bf8fh
+dd 0434933dfh
+dd 05c8c05eeh
+dd 0158f438dh
+dd 035d9e3bah
+dd 0f504972bh
+dd 094135597h
+dd 07b6ab4cfh
+dd 0846cfb8dh
+dd 01214f2bch
+dd 061e50d06h
+dd 0a97365aeh
+dd 001552d73h
+dd 0edcea08eh
+dd 0224898b8h
+dd 012f27555h
+dd 0d18e1508h
+dd 09a409c53h
+dd 0624d58c0h
+dd 00464511bh
+dd 094975ac9h
+dd 09e40cae7h
+dd 0fee6e0e6h
+dd 0cf0a36e7h
+dd 069ea7e98h
+dd 06423cff1h
+dd 07cd17a28h
+dd 0a9a21eceh
+dd 0c2025dc5h
+dd 0697fe4fdh
+dd 0819e9520h
+dd 02d9b321bh
+dd 07543be78h
+dd 01bfcad8ah
+dd 05a4c4229h
+dd 0f24703a8h
+dd 0744c2726h
+dd 07357f136h
+dd 0f9a8640dh
+dd 062db76d1h
+dd 05eb6a32ch
+dd 054dd908eh
+dd 050a3c5d7h
+dd 03c5bd3ffh
+dd 08d575245h
+dd 0c1cd05bch
+dd 0eb4705ebh
+dd 004cfdbfeh
+dd 03bdee2dah
+dd 04e52da1ch
+dd 01340b7cah
+dd 06e7ae3d6h
+dd 0756c8c97h
+dd 00fa407a5h
+dd 0dd095d93h
+dd 023cdd2a1h
+dd 098b4a76bh
+dd 0a3a8829ch
+dd 0ca3ce904h
+dd 0758044e9h
+dd 0f486ec76h
+dd 0b3104f9fh
+dd 0ab0c3fd8h
+dd 08583b199h
+dd 0cc9de25dh
+dd 0a8ff2818h
+dd 010eef768h
+dd 0ff6b58a7h
+dd 09c25788dh
+dd 05dd7edbfh
+dd 0712e2bcah
+dd 0b1b7121ah
+dd 0312c51c7h
+dd 00aa36f3bh
+dd 0475bad9eh
+dd 0e9f6d6fdh
+dd 027955654h
+dd 02eae7bb2h
+dd 00e31c41dh
+dd 03b123f02h
+dd 015342aefh
+dd 099726142h
+dd 0d057cc3fh
+dd 0609ac20dh
+dd 0057aa9f5h
+dd 0b1456d37h
+dd 03f922b67h
+dd 06b4413bdh
+dd 056a55f57h
+dd 0627a4080h
+dd 04689312bh
+dd 0cf2f13a9h
+dd 0f9bd83b2h
+dd 06967467ah
+dd 0da31695bh
+dd 03049f5b1h
+dd 0ad2e0f8ch
+dd 04cbb86c0h
+dd 02589550ah
+dd 09f09c169h
+dd 08b2da587h
+dd 016258aa2h
+dd 054c9dc6ah
+dd 034c83773h
+dd 00bc3d727h
+dd 0e39f7795h
+dd 0fbd007f1h
+dd 0cf174688h
+dd 07643af86h
+dd 047710109h
+dd 06bcb622fh
+dd 0fc9282cdh
+dd 0f5fbf654h
+dd 089883415h
+dd 0f0170bbfh
+dd 017c93f05h
+dd 01a1acdafh
+dd 0efc0401dh
+dd 0754aa412h
+dd 0d038425eh
+dd 02ebcfb4ah
+dd 062de78ceh
+dd 00d080f64h
+dd 00629f116h
+dd 08e441758h
+dd 034b71e69h
+dd 056e05684h
+dd 0e66476fbh
+dd 0327f6195h
+dd 024200df2h
+dd 01daf1dd2h
+dd 0ba6437e5h
+dd 0a49b77dch
+dd 0160d39a9h
+dd 0bd018921h
+dd 08542345bh
+dd 0a171f392h
+dd 0a960cc6eh
+dd 08ab660beh
+dd 05d143486h
+dd 0fcdd943bh
+dd 06a7fb65eh
+dd 0fdb2e027h
+dd 0b68133d5h
+dd 0086eb4b4h
+dd 07be568c8h
+dd 0b8b3c340h
+dd 056b020a5h
+dd 0d1f8befch
+dd 0b63ab127h
+dd 01dcdf38dh
+dd 0cd40e960h
+dd 0cb5e19c2h
+dd 03d554958h
+dd 0708ff28fh
+dd 0c5061905h
+dd 0ca985cf0h
+dd 0b8566326h
+dd 0c4bc7af5h
+dd 0b4fd6fc6h
+dd 0dc1c8ee0h
+dd 08caaa991h
+dd 0e2569db6h
+dd 0f22b8f07h
+dd 097243335h
+dd 0a101d08dh
+dd 0ac60fcb5h
+dd 09bfad760h
+dd 0a4c30795h
+dd 0eeeb2d4bh
+dd 051f1f899h
+dd 0df6362aeh
+dd 03281e607h
+dd 0645579f4h
+dd 0527169ddh
+dd 005c2eb21h
+dd 0aeabc83fh
+dd 007a1104dh
+dd 005a4f0dbh
+dd 067119afeh
+dd 08a053588h
+dd 0a3ce8014h
+dd 0dfda31abh
+dd 0a1a0056eh
+dd 0089b7b70h
+dd 0a34d4537h
+dd 013ca085eh
+dd 0775a615ah
+dd 07a4d13f3h
+dd 039d77d15h
+dd 02a317fb3h
+dd 016b8d008h
+dd 03e540740h
+dd 05d6c5588h
+dd 061d452d2h
+dd 03d598acbh
+dd 09f4c0bb5h
+dd 0b73a0b1fh
+dd 09fd348fah
+dd 0374bd670h
+dd 0d233b625h
+dd 0dc2b1212h
+dd 07cb25817h
+dd 031a2b8ebh
+dd 07cfadb96h
+dd 04d8f7801h
+dd 0e6c78b20h
+dd 0aed2e8a1h
+dd 00d494229h
+dd 0d758086bh
+dd 058a9e353h
+dd 090cb09b9h
+dd 00c254f3ch
+dd 071270ddah
+dd 0ae5120e6h
+dd 0f331aecch
+dd 0c9488cdeh
+dd 041b35c1fh
+dd 0a38f3c30h
+dd 0641403d9h
+dd 04c16c64eh
+dd 0fee8ffefh
+dd 0144e92deh
+dd 09a298a2ch
+dd 02e5cd723h
+dd 0f382e475h
+dd 03dc3f1ceh
+dd 064f6ba97h
+dd 077b91183h
+dd 0b8f0a59bh
+dd 06de5087dh
+dd 0d3919c82h
+dd 02acca602h
+dd 0ad611f67h
+dd 086062e8bh
+dd 08bfdb69bh
+dd 02fae7018h
+dd 0eae14e84h
+dd 0b8debd34h
+dd 07330f984h
+dd 09b3623dch
+dd 0c6942739h
+dd 0e3ec0f8ch
+dd 0af896a3fh
+dd 01c13347eh
+dd 0de6b46ffh
+dd 0ebb21978h
+dd 023dac90eh
+dd 0f7daf390h
+dd 09b09afd5h
+dd 0d9673562h
+dd 040c1471eh
+dd 02c0e0de4h
+dd 0907cc072h
+dd 02994860ch
+dd 0d998b146h
+dd 0f1bf86dah
+dd 0b0a3cf7eh
+dd 09c980b64h
+dd 012bca992h
+dd 003a40d32h
+dd 03698c30bh
+dd 097f162e5h
+dd 0ceaadae4h
+dd 0888750c8h
+dd 0c3addfe0h
+dd 03a47a675h
+dd 0d9a0dd0fh
+dd 08b2aeb25h
+dd 043779bach
+dd 0da49a937h
+dd 0cc5eff84h
+dd 0f6f38002h
+dd 0b40599bdh
+dd 014e8915bh
+dd 05b89818ah
+dd 0aef7350bh
+dd 0b783934ch
+dd 0b032ccc3h
+dd 0c1aab399h
+dd 0b60fca4eh
+dd 0c6c94361h
+dd 0edc2b7a1h
+dd 0b0d54e69h
+dd 0cbbb2270h
+dd 030e0b892h
+dd 08136d828h
+dd 00c43177ah
+dd 05806b5ebh
+dd 092804218h
+dd 0a9bf5cbeh
+dd 002ae1aa2h
+dd 0e9489014h
+dd 001aef05bh
+dd 065bccbc8h
+dd 0f5c4f919h
+dd 03ff71a7ah
+dd 027a5f1c9h
+dd 0fbd5ccbch
+dd 063fbfadbh
+dd 023aa4080h
+dd 07f6da4e0h
+dd 013d3e2ffh
+dd 023c796ddh
+dd 0a3965af4h
+dd 026a03dcdh
+dd 05abb5eedh
+dd 07979d9b6h
+dd 0edd78f19h
+dd 090a7e37ch
+dd 08abab06eh
+dd 044bc6bd0h
+dd 0b8df4627h
+dd 0579c2930h
+dd 093cde43ah
+dd 0fe3fe253h
+dd 0468236aeh
+dd 058950563h
+dd 019a55235h
+dd 0e82bd7e8h
+dd 03550c29fh
+dd 0d31749fbh
+dd 02a5ff046h
+dd 0711f9d3fh
+dd 0adba5da0h
+dd 086225c3bh
+dd 01726f567h
+dd 09194b36bh
+dd 00fc4a3d2h
+dd 0fe3f9287h
+dd 0694c5ce7h
+dd 07ed91650h
+dd 050edcbf3h
+dd 05f261c34h
+dd 038b8b74bh
+dd 0b8f98cf4h
+dd 04df50deah
+dd 010010245h
+dd 0423843a6h
+dd 0237fe6f7h
+dd 05fd9384bh
+dd 0ceafcaf0h
+dd 021a1ea74h
+dd 0e2f8b8a4h
+dd 0949aa088h
+dd 0db8fb006h
+dd 0f8537e9fh
+dd 0c41d105eh
+dd 0209f2645h
+dd 020775739h
+dd 03388d35fh
+dd 0dc349df8h
+dd 05817737eh
+dd 06298ea83h
+dd 018cf9299h
+dd 027d9aa34h
+dd 0ef126d29h
+dd 069aaf229h
+dd 03ea47035h
+dd 0e1b11979h
+dd 0c1ba30ddh
+dd 0468c67adh
+dd 0196f0332h
+dd 096a325a7h
+dd 0c2a946fdh
+dd 07cf7b2b6h
+dd 02affb7b2h
+dd 06867cf76h
+dd 087771048h
+dd 041041686h
+dd 07742fb9eh
+dd 0479945f3h
+dd 0b31f7892h
+dd 057304e37h
+dd 09d66618fh
+dd 0a2b275c7h
+dd 026f09347h
+dd 0fcc19486h
+dd 02b4e90d2h
+dd 053fcefafh
+dd 03c1a14e9h
+dd 071466f1bh
+dd 0843b55ffh
+dd 044572f85h
+dd 0ef2ade27h
+dd 0cb92fe82h
+dd 0d147acfch
+dd 0dd6c179ah
+dd 0b40351b1h
+dd 0ffd4f55ch
+dd 0242f3b5bh
+dd 03390cd3bh
+dd 0921b2cc2h
+dd 0cea73dd1h
+dd 0953f0282h
+dd 0cfd34dfah
+dd 0a4caa4fbh
+dd 0b2b07141h
+dd 0af9b0473h
+dd 07820b228h
+dd 00ea05789h
+dd 0327a32c5h
+dd 0badc5153h
+dd 069374662h
+dd 0aad34cadh
+dd 03ce14a7bh
+dd 0e754adc0h
+dd 03e71bee0h
+dd 094e98262h
+dd 0cc445017h
+dd 092235ddfh
+dd 00fdb4089h
+dd 0ebeb0902h
+dd 0c003618ah
+dd 0cf55abcdh
+dd 052e3907bh
+dd 09ce62b72h
+dd 02b8a3230h
+dd 0fded7a6bh
+dd 01b45db92h
+dd 039ec9d90h
+dd 01384b6c0h
+dd 0afedf5adh
+dd 0b2cc7031h
+dd 04cefda09h
+dd 04fafb5c7h
+dd 061e6be6bh
+dd 0092d184bh
+dd 0c92dcd8ah
+dd 0b83470bch
+dd 03ecb0e1bh
+dd 0b377e7beh
+dd 02ce651d1h
+dd 0891b6f1bh
+dd 02482807bh
+dd 017ffdbd1h
+dd 094812646h
+dd 0f2eb6878h
+dd 035a73cebh
+dd 07173f858h
+dd 0a6bff9c7h
+dd 0d284b345h
+dd 0203be165h
+dd 0bd316ea9h
+dd 0e97d9761h
+dd 0e1234821h
+dd 01f875704h
+dd 0a59c8bdeh
+dd 0f1f49997h
+dd 0723b0b48h
+dd 0e69480c2h
+dd 0f206ce49h
+dd 084ac12c0h
+dd 08df51316h
+dd 073fb2d0bh
+dd 0683cacb1h
+dd 0becba59ah
+dd 04af2149ch
+dd 0a98c19c1h
+dd 008f5001ah
+dd 0a3664014h
+dd 01adf3920h
+dd 08b5ffe97h
+dd 023640494h
+dd 0205062b3h
+dd 095af03f8h
+dd 0032c9c96h
+dd 04525b49ch
+dd 00eb9e652h
+dd 0ba7bae66h
+dd 0a1c50e55h
+dd 00125feb9h
+dd 0a99dc6e4h
+dd 0d53948efh
+dd 06be38451h
+dd 0e2977176h
+dd 09589a25fh
+dd 0e00d28c4h
+dd 026bfedbbh
+dd 04e9e4c8dh
+dd 0975ad7deh
+dd 052c345e0h
+dd 0729d5494h
+dd 06b0324a0h
+dd 0be14f868h
+dd 0b5250ac8h
+dd 0257a2d33h
+dd 0a95e9a70h
+dd 0891ee0e8h
+dd 04625ff3bh
+dd 004941ec0h
+dd 0d005a568h
+dd 0b5e8ca7ah
+dd 0931179a6h
+dd 04d34bd7ch
+dd 0e8f2f1d4h
+dd 05d195123h
+dd 00737db8bh
+dd 0ab17d630h
+dd 0fe649b89h
+dd 0e62e940fh
+dd 028ba5c6bh
+dd 063c4dcd0h
+dd 02eb4ff33h
+dd 0ac92d122h
+dd 0460deca0h
+dd 00e340138h
+dd 0509f72feh
+dd 0f3a4ecb2h
+dd 099da0141h
+dd 056e24eadh
+dd 08c78aa08h
+dd 0aa06bd2fh
+dd 0918e7c71h
+dd 0c3d7635eh
+dd 06463f078h
+dd 08d81d820h
+dd 0836a81c0h
+dd 0c434cba3h
+dd 09c91ffc8h
+dd 0446371c6h
+dd 0f3f56e68h
+dd 0b35f3ac5h
+dd 0abdd0cf9h
+dd 0f2e9dacfh
+dd 071261930h
+dd 07b0d9a36h
+dd 05547b05ah
+dd 00c0557f7h
+dd 0833f668ah
+dd 0420e284fh
+dd 043ab2e40h
+dd 0bf1398ach
+dd 051ba49ffh
+dd 0a5756972h
+dd 04602906dh
+dd 0683d2253h
+dd 030031e93h
+dd 0c4beaf12h
+dd 06696130ch
+dd 0ef1df8d7h
+dd 0d3afd884h
+dd 07ddcdb85h
+dd 0dfaafe30h
+dd 0347ccfc7h
+dd 09666d864h
+dd 0db087d12h
+dd 0bcd82800h
+dd 0893d8276h
+dd 00b05429dh
+dd 03b7add6bh
+dd 0d995e9f5h
+dd 0f0ae3897h
+dd 08dbe90feh
+dd 0e7f57e6fh
+dd 0acacfefbh
+dd 0a1a0eb6ah
+dd 09296e85fh
+dd 0a7651421h
+dd 0c3fff82fh
+dd 0c6caeecch
+dd 0559e05d7h
+dd 0bbc4966dh
+dd 097112c30h
+dd 0376f5f8eh
+dd 0714c67c3h
+dd 0dee1688eh
+dd 08665e91ah
+dd 028b5c9aeh
+dd 0731fde91h
+dd 0ad7d880ah
+dd 0af72cf6bh
+dd 058933e93h
+dd 0b2997eddh
+dd 0d8138898h
+dd 082d2b17ah
+dd 0ff6b3004h
+dd 06ba2a338h
+dd 0808e7360h
+dd 0750a86ach
+dd 078c4fb63h
+dd 03418f296h
+dd 00e16fec6h
+dd 04d6b1994h
+dd 00652ebd3h
+dd 0e6de531dh
+dd 06d512c1fh
+dd 069643ecbh
+dd 0800f06cfh
+dd 0fd42578ah
+dd 03bae7c93h
+dd 024262cfdh
+dd 04331d563h
+dd 03dde0146h
+dd 0240a584dh
+dd 05f9db493h
+dd 0293ba353h
+dd 0dc639976h
+dd 03cab575bh
+dd 09ea5270ch
+dd 09fd0563bh
+dd 004e96bb7h
+dd 0bcb06281h
+dd 0ff9b5002h
+dd 0af5589f3h
+dd 07718f765h
+dd 0abf4ea9ah
+dd 00b1c411ch
+dd 01d9be873h
+dd 003e7206ch
+dd 0c29baea8h
+dd 06c9300e4h
+dd 0d46d24c9h
+dd 0a4abd95dh
+dd 0e7fb0ebeh
+dd 0d699dd2ah
+dd 02d268d4bh
+dd 0422987cdh
+dd 0fe8ad321h
+dd 00cfb8b8ah
+dd 029cdac1fh
+dd 07c933a89h
+dd 05d093cf8h
+dd 09d535516h
+dd 07eca3b81h
+dd 023399fb9h
+dd 01bf7004eh
+dd 017bf4c9dh
+dd 0a2c80511h
+dd 078862e00h
+dd 0ba4dcbc5h
+dd 07a2313ddh
+dd 0712597c3h
+dd 04e65e216h
+dd 0485778f4h
+dd 06acd451ah
+dd 071508597h
+dd 0eadb2c83h
+dd 0fe1a7635h
+dd 03b88273eh
+dd 010784ccbh
+dd 07d6e16f8h
+dd 079caab21h
+dd 0e53cae47h
+dd 02f0ae38fh
+dd 002a9a18ch
+dd 05e3ef877h
+dd 025077cb9h
+dd 03bae0319h
+dd 045e1b045h
+dd 0991f9a1ah
+dd 077aa8baah
+dd 0047acdadh
+dd 03543e81eh
+dd 05094c67ch
+dd 07c637394h
+dd 065fa2f0dh
+dd 0f7353d5ch
+dd 06a663606h
+dd 05a18af4fh
+dd 016570703h
+dd 019351446h
+dd 0e1893120h
+dd 0574062c8h
+dd 056563c9dh
+dd 0b85f566fh
+dd 08fb0a50ch
+dd 070f182dbh
+dd 0212927a4h
+dd 0c24d7308h
+dd 0ff286f72h
+dd 0bf531db8h
+dd 05ba68795h
+dd 05f13e236h
+dd 04c241c55h
+dd 0d8990eaah
+dd 058ee1b1bh
+dd 0648b5ea0h
+dd 0054ebc75h
+dd 065b214c7h
+dd 0898f973ch
+dd 0fb66e080h
+dd 0062513cdh
+dd 0e149be59h
+dd 0e0ba79d4h
+dd 0fdc167f9h
+dd 04a61a33dh
+dd 035d8dc69h
+dd 0649b8244h
+dd 012888e17h
+dd 057a8fd25h
+dd 0db3e7f6bh
+dd 011af7f90h
+dd 0cb911652h
+dd 038a55485h
+dd 08d6178ach
+dd 0df8a4bc6h
+dd 04d360f48h
+dd 06d15a0e7h
+dd 0df7ce625h
+dd 0d25b7afah
+dd 0527cbcaeh
+dd 00c78e15ah
+dd 08faedabdh
+dd 0028de7c8h
+dd 0a9998251h
+dd 0e1db374eh
+dd 007624953h
+dd 00eb9b79dh
+dd 0b795a781h
+dd 0823e006ah
+dd 08928e542h
+dd 051bef57ah
+dd 056ce47d9h
+dd 03912781eh
+dd 0cc4ebd12h
+dd 0599bc667h
+dd 0e92552c7h
+dd 0e1a2ba69h
+dd 0d4e1ae2eh
+dd 0f1fcc4a9h
+dd 048abcba1h
+dd 0b2bde26ah
+dd 065c0fd3fh
+dd 02ee24e8eh
+dd 0096706a5h
+dd 04ae64a28h
+dd 081938b15h
+dd 058d7e9abh
+dd 0def132f2h
+dd 034ad2656h
+dd 034d4c56ah
+dd 0cde546fbh
+dd 01244b241h
+dd 0319a5334h
+dd 0f1977af1h
+dd 0608350a7h
+dd 00e3b148ah
+dd 02d81da45h
+dd 05adf995ah
+dd 012e581f8h
+dd 0d8149157h
+dd 091d589adh
+dd 01ecba6e4h
+dd 068e48409h
+dd 030d0afe5h
+dd 0f9b01363h
+dd 02f50cbfch
+dd 0ce7469edh
+dd 09a4b9938h
+dd 0a83f80cbh
+dd 0a240b37dh
+dd 0702e8312h
+dd 044fe4590h
+dd 0490b00e4h
+dd 0efc7c4abh
+dd 0d2e59883h
+dd 0c27444bfh
+dd 088770006h
+dd 0ab1f08c5h
+dd 0501dac8eh
+dd 000407ff2h
+dd 0e79d2414h
+dd 07e43921ah
+dd 0fc98f358h
+dd 0e69b7718h
+dd 088d3884eh
+dd 0fd0fe2adh
+dd 07dc72c51h
+dd 08bbcfdbeh
+dd 0d90140b1h
+dd 07e28969dh
+dd 0695f25beh
+dd 027d825c2h
+dd 0fd927467h
+dd 04e10a59ah
+dd 048c13cc1h
+dd 0cfb89241h
+dd 0fe37b5a6h
+dd 004e48aeah
+dd 02e451558h
+dd 06897b81bh
+dd 0a681e849h
+dd 03a0b2c49h
+dd 09e3ab9e1h
+dd 09de98dc8h
+dd 03c28049bh
+dd 0b6ed1800h
+dd 0ba7bed5dh
+dd 090343c27h
+dd 04e322d67h
+dd 07ab4effeh
+dd 01f48a972h
+dd 0f4d2b193h
+dd 094a5c8d4h
+dd 0019609d7h
+dd 022b36ef4h
+dd 00b4510cfh
+dd 051bf4d7fh
+dd 09fe48141h
+dd 0402cdd7fh
+dd 0bf693fd5h
+dd 04142932ch
+dd 073f9a67ch
+dd 0f6c8af9ah
+dd 097c02628h
+dd 02f4fb4b1h
+dd 0949c5ffch
+dd 09d979629h
+dd 09653affbh
+dd 080facf0ch
+dd 0c61ac731h
+dd 09e53744ah
+dd 0dedafe49h
+dd 0641b324eh
+dd 003fbf7e8h
+dd 0fb5a462eh
+dd 0ef3ddfc4h
+dd 05680bfb7h
+dd 0a813ebb2h
+dd 004ff1a8eh
+dd 086bc3f4eh
+dd 0d34f6b6ah
+dd 041e10616h
+dd 0b502338dh
+dd 0871d7a05h
+dd 04d7589aeh
+dd 0d0b8b892h
+dd 0ebac696ch
+dd 098ea49b2h
+dd 067f66301h
+dd 0ac815f5eh
+dd 07622fc4bh
+dd 0de9b95c1h
+dd 03369ccd7h
+dd 01aa4d543h
+dd 0eb6fbe34h
+dd 0ec443ee5h
+dd 0526b4e48h
+dd 0d5950c66h
+dd 0cedec9d1h
+dd 0c933220bh
+dd 0eedbf3bbh
+dd 04e4f7950h
+dd 082a97dd7h
+dd 07121660bh
+dd 04a283338h
+dd 0f5f0a7c3h
+dd 0c5a2d869h
+dd 07874580bh
+dd 0a84b9a31h
+dd 0d989f426h
+dd 0c6105172h
+dd 0f058014fh
+dd 0eec67560h
+dd 08ebf1cd1h
+dd 0fd85d91dh
+dd 0c943fca8h
+dd 02ddba9c6h
+dd 0ba89270bh
+dd 098ab2c9eh
+dd 0399f5a2fh
+dd 0f42a4446h
+dd 083aa2204h
+dd 017f9cae0h
+dd 0ce387e92h
+dd 0fc2ede64h
+dd 0726345a1h
+dd 06f01aa9ch
+dd 0c9727178h
+dd 0fdbfb514h
+dd 072eaf9f8h
+dd 055244d23h
+dd 0bb091fc5h
+dd 0f14e54a2h
+dd 0a846da0ah
+dd 0c37b9ecah
+dd 0bc79dff8h
+dd 012a0491ah
+dd 01e5bd685h
+dd 011223e7eh
+dd 0c976c9dah
+dd 0555d3be0h
+dd 04e6a4c97h
+dd 03486001ch
+dd 0063ce8e2h
+dd 0b97d1239h
+dd 01bf966a8h
+dd 0335468bfh
+dd 0fe6b7beah
+dd 0fb1a4cfeh
+dd 07e808ba1h
+dd 0184274b4h
+dd 0e22914b9h
+dd 0b4b2b06ch
+dd 0710598cah
+dd 0094ce8c6h
+dd 065485c6bh
+dd 00633e18ch
+dd 03b4e5e23h
+dd 0e4741d54h
+dd 073e27e6fh
+dd 0caa0cfe5h
+dd 0325a8cf0h
+dd 0924b1e6eh
+dd 0a803471ah
+dd 07ac049a9h
+dd 0171e8bc5h
+dd 0fd07f270h
+dd 047674839h
+dd 056bc362fh
+dd 031aabf67h
+dd 02bce086bh
+dd 02fcab4e9h
+dd 0824464c7h
+dd 0f33c8732h
+dd 0f60c4355h
+dd 0607423feh
+dd 0863dbcf6h
+dd 0ed1db510h
+dd 02f4a5fd3h
+dd 02662d20dh
+dd 0abb113b9h
+dd 03b633a57h
+dd 0cfc65677h
+dd 098240347h
+dd 05ac0d8f7h
+dd 0da57f5a4h
+dd 0c1fc7ee3h
+dd 0967a5f1ah
+dd 07f176d94h
+dd 0809018eeh
+dd 0b395a5e5h
+dd 09730ae31h
+dd 01de7db08h
+dd 05584b695h
+dd 0960f6baeh
+dd 0980a427eh
+dd 0984d5bech
+dd 041b170cbh
+dd 0459c0ee2h
+dd 0553a2cbeh
+dd 070331caeh
+dd 0a12685b1h
+dd 02dc419c8h
+dd 0c9c4202ch
+dd 0b8389a8ah
+dd 0775a52dbh
+dd 0aa04cafeh
+dd 0c13e3039h
+dd 0a04ff427h
+dd 068199b09h
+dd 0df0e9a3dh
+dd 032727eb6h
+dd 048729724h
+dd 0c079f70fh
+dd 0047e66b5h
+dd 0a7fec709h
+dd 017eadd3eh
+dd 0a149be3eh
+dd 0adb215c0h
+dd 009347e0fh
+dd 04b9dfdf0h
+dd 04c7dd717h
+dd 0083b6e73h
+dd 0b969596ah
+dd 0545bb3aah
+dd 057709fe3h
+dd 0e5dab3c5h
+dd 0ea3e9b8eh
+dd 034f606e6h
+dd 06061e09fh
+dd 05d6c9f2bh
+dd 01582b763h
+dd 0d25ef0a5h
+dd 0b2fb3681h
+dd 07e3924bbh
+dd 00439c732h
+dd 0389135bfh
+dd 012ac009bh
+dd 0351986aah
+dd 048707afch
+dd 02f09a020h
+dd 06d86b89dh
+dd 0c12c5886h
+dd 0d26c8bbch
+dd 0d821dae7h
+dd 007445d2bh
+dd 04dff268eh
+dd 034d8da5ch
+dd 09297336ch
+dd 071a94505h
+dd 0ef2aac9eh
+dd 0e2549109h
+dd 086b696c2h
+dd 09ec9ea4dh
+dd 02de9fdb4h
+dd 0941abf73h
+dd 0c734e634h
+dd 00697c803h
+dd 0bf605402h
+dd 0a9102144h
+dd 01dc302d6h
+dd 015e36269h
+dd 057e07bceh
+dd 0ea07a77bh
+dd 0801e8fdeh
+dd 03bcaf37eh
+dd 080a43877h
+dd 0aa7ae0c0h
+dd 0a8cc0cbah
+dd 0895ba1aeh
+dd 06cd91ed3h
+dd 0a4d94348h
+dd 0ad96e261h
+dd 03efdefb4h
+dd 0a1ba8868h
+dd 0e5d4068ch
+dd 00f4b8f35h
+dd 0872f0f28h
+dd 05cff2259h
+dd 011cff8f8h
+dd 0e54a28f6h
+dd 052cabe89h
+dd 04c0a1edeh
+dd 029208ce4h
+dd 0cffc3504h
+dd 08c61cec8h
+dd 027851c0bh
+dd 07ab46c13h
+dd 0226aadc4h
+dd 00cd237c9h
+dd 025b7f740h
+dd 066ee7c3eh
+dd 0024f678fh
+dd 00263b5a1h
+dd 01d9b5037h
+dd 099040219h
+dd 03eb87e35h
+dd 07057068bh
+dd 09e5c4c94h
+dd 0fa0fbce3h
+dd 0d6b44cedh
+dd 0cd6f619ah
+dd 06bb5b3ddh
+dd 0830cf9a2h
+dd 0659e23cdh
+dd 0534be989h
+dd 0d83f0a8ah
+dd 06e47bcb3h
+dd 06307e876h
+dd 017bb9c1fh
+dd 0b6416c1fh
+dd 0e4d9538ah
+dd 0d0fd9788h
+dd 07f603f46h
+dd 09568f71bh
+dd 03a4222e6h
+dd 0defbe7cch
+dd 0fcd411a0h
+dd 04b20df3ah
+dd 085466dd0h
+dd 0783fb1f9h
+dd 01610df96h
+dd 09e4bebach
+dd 046d7ed1dh
+dd 0f82a2c29h
+dd 0174652c8h
+dd 047830619h
+dd 028db31dbh
+dd 05e888581h
+dd 0517afcf1h
+dd 079382f6fh
+dd 0aab619cbh
+dd 05f293884h
+dd 013ba5b38h
+dd 023eadddch
+dd 060c4bfc1h
+dd 02183a45ah
+dd 047ee8640h
+dd 0bca5f226h
+dd 0813301c4h
+dd 07a356bedh
+dd 06fcf2127h
+dd 02f51d18ah
+dd 0cc72b357h
+dd 0fa62e5ebh
+dd 01f87d896h
+dd 0e1fbe719h
+dd 08c8ab445h
+dd 0b36b704ah
+dd 058f39deah
+dd 0428364b3h
+dd 0f0b6a59ah
+dd 0cf3ec132h
+dd 046617506h
+dd 068da9879h
+dd 0ae08cf35h
+dd 0339342c5h
+dd 0734a9437h
+dd 0f6c723dch
+dd 0aa95d7dfh
+dd 0fd9096a6h
+dd 0a8bc0ff5h
+dd 080d79f78h
+dd 0fa1f07a1h
+dd 0a145c957h
+dd 0fdfac5a2h
+dd 00bfb2703h
+dd 0065c74fbh
+dd 03dec9c1eh
+dd 0c52bf102h
+dd 0b67a155fh
+dd 0524406bdh
+dd 06b160410h
+dd 0260c4206h
+dd 0e143e1efh
+dd 00d33787eh
+dd 0f367d825h
+dd 08bbfbe59h
+dd 0e703cc8ch
+dd 08af14ad5h
+dd 0bc198f4bh
+dd 0c17dc3f5h
+dd 0b0f679fbh
+dd 006110302h
+dd 010d99aa4h
+dd 0a2f0b602h
+dd 066920b59h
+dd 0198bdcf9h
+dd 05f3036b7h
+dd 0314ad7adh
+dd 0645de76fh
+dd 02e305a42h
+dd 0eb1f6782h
+dd 079dd226bh
+dd 0c836ac95h
+dd 04e96a62ah
+dd 088ced82ch
+dd 0d2a5a2afh
+dd 0d067ce33h
+dd 0b4e3da9eh
+dd 02e062efah
+dd 0c09a33b8h
+dd 0cebf084dh
+dd 078f8d2a7h
+dd 0a997d39dh
+dd 02942628eh
+dd 0fb43e914h
+dd 05d06d36ch
+dd 02eedb9d1h
+dd 0395ff413h
+dd 0777c37deh
+dd 01b640e8ah
+dd 07baf815ch
+dd 01288fd9dh
+dd 03e13ce60h
+dd 09639a8f0h
+dd 0448e8da7h
+dd 0d621d975h
+dd 001bc911ah
+dd 0dfbd87beh
+dd 05230885dh
+dd 0e75bd6c6h
+dd 0ced973adh
+dd 0c371c657h
+dd 01f7e8c1ch
+dd 0e70c6458h
+dd 0a032fdd4h
+dd 0770f70b1h
+dd 09a620a0bh
+dd 0c67faf94h
+dd 077497ef0h
+dd 099a46661h
+dd 0ac7e9702h
+dd 02f7253b5h
+dd 05ac810e7h
+dd 08dab82eeh
+dd 0eeeb4f8ch
+dd 032b1f68dh
+dd 0f2535ffch
+dd 094c35f25h
+dd 05322e814h
+dd 0d9bd16efh
+dd 0718046a0h
+dd 065cfcd30h
+dd 083ad7573h
+dd 0202538d8h
+dd 08af963b2h
+dd 07f0a5564h
+dd 0f41a5cd7h
+dd 0ac926692h
+dd 0013d582ah
+dd 0f7fa51edh
+dd 0fe20a734h
+dd 0d98c5eb7h
+dd 0599c50aah
+dd 07bb0370ch
+dd 071a6b657h
+dd 0298586d2h
+dd 09c35953ah
+dd 0f9df810dh
+dd 070aa1428h
+dd 0e924194ch
+dd 0e81655ech
+dd 002dd9914h
+dd 0ac685c5dh
+dd 02f3001c6h
+dd 04a18a391h
+dd 0cc64d9b7h
+dd 0e866db45h
+dd 0756a8aebh
+dd 08c9cd2eah
+dd 04dbcdb6ch
+dd 0b9e6977ah
+dd 07cb187f7h
+dd 08c3b9840h
+dd 07dbb0081h
+dd 0d8fdd8ceh
+dd 095b35178h
+dd 0d369a925h
+dd 0ac0824e3h
+dd 0ecc34bf9h
+dd 0d1b5d494h
+dd 0a43ef6f3h
+dd 009cfa19fh
+dd 02b4cf7b5h
+dd 05f71dab3h
+dd 0404b0990h
+dd 0c8e28aa8h
+dd 086a0f028h
+dd 08044ef39h
+dd 0df552627h
+dd 0eeba6e31h
+dd 0e79968a5h
+dd 0ccdd7d14h
+dd 09be9bbbfh
+dd 0b4780d3eh
+dd 0f51f0cb6h
+dd 0fd05819ch
+dd 05994eca7h
+dd 03f18cf2dh
+dd 0239ec1a9h
+dd 05c77756fh
+dd 0698ef025h
+dd 0ba3dd63eh
+dd 056070b6fh
+dd 07bf2675ah
+dd 0f030f5d9h
+dd 06bcf5270h
+dd 0d6d2d6bdh
+dd 0049da022h
+dd 021e1363ah
+dd 06a0feac9h
+dd 0862a67e1h
+dd 0c7389788h
+dd 096c9575eh
+dd 0acef6185h
+dd 0416bffa1h
+dd 0592fd4eeh
+dd 05f66da48h
+dd 0d7e7b341h
+dd 0095e52c6h
+dd 0ca2988f4h
+dd 0434c15d1h
+dd 0ca134e4bh
+dd 00e858d77h
+dd 0531039cch
+dd 045e8fac6h
+dd 07cbba998h
+dd 0a697b39dh
+dd 0ca6428f5h
+dd 0d7ad86a7h
+dd 0bfff82cch
+dd 096b27046h
+dd 018dd2639h
+dd 0f2202f77h
+dd 0962f0663h
+dd 0616d35b4h
+dd 04f87479dh
+dd 05ca350e7h
+dd 0b0b84c93h
+dd 0e2467377h
+dd 0858ac35fh
+dd 04e729b0eh
+dd 09519b78bh
+dd 030650ce6h
+dd 012b6e90ah
+dd 01b13ec90h
+dd 011a9df52h
+dd 0206666a0h
+dd 0fa5c6774h
+dd 049a8633bh
+dd 035bbd244h
+dd 056e50c64h
+dd 059914407h
+dd 029840ed7h
+dd 01713b7cch
+dd 0bff5ff10h
+dd 089fadf0eh
+dd 0620dff09h
+dd 061b63886h
+dd 023856c03h
+dd 0f842129ch
+dd 0443a6b76h
+dd 0ba0cb803h
+dd 00d6eaa58h
+dd 01ab6cc70h
+dd 0102ea599h
+dd 08b0dc364h
+dd 0ac6cf0cbh
+dd 03c5cee69h
+dd 0de4010cch
+dd 0d58d7a12h
+dd 0a24f57f9h
+dd 0091c7ae8h
+dd 018116416h
+dd 047876426h
+dd 00d10e8e8h
+dd 01e910e97h
+dd 0340bf63ah
+dd 09c95ddfch
+dd 0f911eb28h
+dd 08ed22896h
+dd 07e6a6026h
+dd 0ad71bacch
+dd 0bc59d664h
+dd 0f4112ab9h
+dd 06364931eh
+dd 0e99f2526h
+dd 017fa582ch
+dd 0cc1e9303h
+dd 0a9e2ce39h
+dd 0947e6000h
+dd 066826670h
+dd 028323ee8h
+dd 01d3242c2h
+dd 09882e4c6h
+dd 0381bbdefh
+dd 0eed65336h
+dd 04710cb44h
+dd 028689d56h
+dd 0ec736dfbh
+dd 00071cc54h
+dd 0c80a7791h
+dd 0bd150d15h
+dd 0a2d456edh
+dd 073a5cfe4h
+dd 032a52328h
+dd 0e61f6982h
+dd 03e9ee34dh
+dd 0a82122f8h
+dd 00dbda63ah
+dd 0d77c297ch
+dd 0ddb1c3adh
+dd 089a03914h
+dd 0f8f227a3h
+dd 0712ffbd4h
+dd 0f0ba929ah
+dd 084c074f5h
+dd 0420e0704h
+dd 0c1f6759ah
+dd 00ff562a0h
+dd 08f85232ah
+dd 03d744e56h
+dd 086261296h
+dd 0ddf0e3d5h
+dd 08ea3dfeah
+dd 017d2cd27h
+dd 05efe2d1ah
+dd 031f30ae8h
+dd 07d39a094h
+dd 0985a9ee3h
+dd 0a1b1826eh
+dd 0304339e0h
+dd 06a6fe000h
+dd 0b93dcb7eh
+dd 08b1f5f2ch
+dd 0f94a7739h
+dd 0725bf694h
+dd 06c78a3b8h
+dd 06c2a8dc1h
+dd 05847759ah
+dd 0598eeca0h
+dd 050c8232fh
+dd 04982ee5ch
+dd 01da3791fh
+dd 04339f202h
+dd 0c0a240bdh
+dd 046fd0d30h
+dd 09ea753cah
+dd 05b93719ah
+dd 07825ca43h
+dd 07c000903h
+dd 0b420a2a5h
+dd 059565a81h
+dd 0e8991453h
+dd 07c24afc7h
+dd 0101ef090h
+dd 05e119e00h
+dd 0d2b65eeah
+dd 0e922ffb9h
+dd 00046b53fh
+dd 0f205cfe3h
+dd 08243527eh
+dd 05d5fb8d6h
+dd 072478f63h
+dd 04e8109a7h
+dd 0dc75b4bdh
+dd 0c8fc6c13h
+dd 0afdb2a7dh
+dd 09ea6e417h
+dd 0431a3dd8h
+dd 09959d104h
+dd 0e6ffc9d4h
+dd 0234f70beh
+dd 01b7d1db8h
+dd 06302737dh
+dd 04fec35cbh
+dd 0986daed4h
+dd 0362e2e6dh
+dd 07fb42505h
+dd 02a0e236dh
+dd 0ce1e741bh
+dd 0cb84df80h
+dd 0d3bb3fabh
+dd 010fe73b0h
+dd 03cf0c986h
+dd 0afaca6b4h
+dd 036479c0ch
+dd 0c58d813ch
+dd 0bb2fff02h
+dd 015f35b25h
+dd 055b5f5c5h
+dd 0d6308dfah
+dd 0e54005cdh
+dd 0611d9958h
+dd 0fb9aa83eh
+dd 00da998dbh
+dd 02416358fh
+dd 03c10cffeh
+dd 0bdb23389h
+dd 0e092a945h
+dd 03a09a64dh
+dd 03f5ede61h
+dd 0b7e15684h
+dd 0a4073d11h
+dd 026331b32h
+dd 0e116920dh
+dd 0db1a3b11h
+dd 0f12558d8h
+dd 0319b3e7fh
+dd 0b52e074eh
+dd 07763ce84h
+dd 036dd1734h
+dd 0590249b4h
+dd 095d63ad1h
+dd 05c43e5a8h
+dd 0498d3138h
+dd 0f94782f6h
+dd 081cac29ch
+dd 03e56caadh
+dd 0065d0b79h
+dd 0dfaf3605h
+dd 0d5424cffh
+dd 04fab313fh
+dd 0a4aa2e21h
+dd 037ae6ea2h
+dd 0f849b59ah
+dd 07a7ab19eh
+dd 003a48f6bh
+dd 0023d4bebh
+dd 0e7f02b0ch
+dd 01cd4899bh
+dd 0356ffc34h
+dd 0d32717eah
+dd 09c0ec514h
+dd 00a0a96f3h
+dd 07d9d40ddh
+dd 0235efca5h
+dd 0268d1fb8h
+dd 0921b7331h
+dd 0b46b7f66h
+dd 0c79f135ch
+dd 01a4dc5d9h
+dd 09199b6b0h
+dd 0449ef831h
+dd 0fec2fae4h
+dd 021005edah
+dd 0791f9812h
+dd 09c1401fah
+dd 02b77d6fah
+dd 019e60ef4h
+dd 0a18ea58eh
+dd 0ebf8853fh
+dd 071c7336eh
+dd 08cf7deb4h
+dd 01c21e80eh
+dd 06070e4bah
+dd 095250130h
+dd 0b83ce675h
+dd 0a1883965h
+dd 02d1dd43ah
+dd 051a28782h
+dd 0f94a3852h
+dd 00b13e532h
+dd 0225e8da7h
+dd 0fbb496abh
+dd 0a57f29f3h
+dd 0572cbf47h
+dd 01bf609ddh
+dd 020cb4c4eh
+dd 0137911bbh
+dd 0a7d373d0h
+dd 0535a6a1fh
+dd 065536672h
+dd 01fae48fch
+dd 0f8573b48h
+dd 08e1a1b2fh
+dd 02b95ebd6h
+dd 07ea9d14dh
+dd 0acfc15a9h
+dd 0710a135eh
+dd 0ce6c2eb3h
+dd 04cda33c3h
+dd 0821b8816h
+dd 0e44e3a3ch
+dd 0a0f1c0d6h
+dd 074502a6fh
+dd 0dc053b61h
+dd 09a9050b9h
+dd 096003e74h
+dd 0d2ac41a2h
+dd 0c4e4497dh
+dd 07721c726h
+dd 0b5747011h
+dd 015485eebh
+dd 0355712ach
+dd 03d9597e1h
+dd 061d1fa9bh
+dd 0d7198aach
+dd 00b98ca73h
+dd 0fec0054ch
+dd 0d8d3e860h
+dd 0bbb9109ah
+dd 0244bf93ch
+dd 0b8ebcfa9h
+dd 03eaccf6eh
+dd 0975789c0h
+dd 00fc30c41h
+dd 039b75054h
+dd 0640b8ac7h
+dd 07c849e64h
+dd 0a49165b7h
+dd 08b53fdeah
+dd 04c5d28d2h
+dd 04203f460h
+dd 06ada627eh
+dd 04f162326h
+dd 021631cf6h
+dd 005e5b4b5h
+dd 07507b565h
+dd 0648763e2h
+dd 0c7b9545ah
+dd 0cde5db90h
+dd 01c69a8b5h
+dd 09a48c45ch
+dd 08f0d068dh
+dd 016eab85ah
+dd 017d4af13h
+dd 03871f0f5h
+dd 07c770a7fh
+dd 0b655a8cch
+dd 0c4ec4623h
+dd 05b3d6a6ah
+dd 04a437948h
+dd 06220b50ch
+dd 0c93c3f9bh
+dd 08e6cc756h
+dd 01033d020h
+dd 0a8550446h
+dd 0e522af67h
+dd 0ec2bb71ch
+dd 001f225bah
+dd 06c93061fh
+dd 054182f27h
+dd 0a93e2a76h
+dd 03bc0e0f3h
+dd 0f36445bah
+dd 0353bc883h
+dd 0832a555ah
+dd 0af0e2ff6h
+dd 081d626d9h
+dd 0c6980c0eh
+dd 07af354e4h
+dd 0f734e15bh
+dd 0f8224e5fh
+dd 02e8180bfh
+dd 034a1e34bh
+dd 0ec83e225h
+dd 0a666c1ech
+dd 05c738992h
+dd 0e91a23abh
+dd 0cdd0650dh
+dd 0b80a9055h
+dd 027bfd4deh
+dd 0d77674feh
+dd 0298dd180h
+dd 0bb385236h
+dd 0032de090h
+dd 0187246c6h
+dd 01344fa55h
+dd 0df219ee8h
+dd 031748ec7h
+dd 0ce783563h
+dd 0bdc7bc35h
+dd 07848b013h
+dd 058471b88h
+dd 0b81ab454h
+dd 02f638abch
+dd 02bc3be1bh
+dd 08610afb6h
+dd 01f08cc8ah
+dd 071cc73f8h
+dd 0012249e6h
+dd 06973c20eh
+dd 044f8f0bbh
+dd 0bd833e48h
+dd 044461276h
+dd 003425d33h
+dd 0a9e1d570h
+dd 0d8153e40h
+dd 0a0c87ae4h
+dd 0908ef81ch
+dd 0301954f3h
+dd 0af581912h
+dd 086813a3bh
+dd 0bebd6561h
+dd 028741ecdh
+dd 08f38e50dh
+dd 0d88c491dh
+dd 0e6c0d0bah
+dd 077febcedh
+dd 0f22cb7cdh
+dd 0e4cee51ah
+dd 05449cd22h
+dd 094c20a8fh
+dd 00aa1f132h
+dd 072d83f15h
+dd 07d68333fh
+dd 0ef3112a3h
+dd 0cffd2b79h
+dd 01fd038f7h
+dd 01bb360ceh
+dd 0edc78a7ch
+dd 09e783539h
+dd 012b6de4fh
+dd 07c425834h
+dd 0cb5b7343h
+dd 0147bb3f0h
+dd 08dd583e0h
+dd 0e0ceec1ah
+dd 0a787fcb1h
+dd 0763f663bh
+dd 076475543h
+dd 0a4e766b7h
+dd 0a593916fh
+dd 0df26bdabh
+dd 0b5dd576bh
+dd 0f7f361c3h
+dd 0f2ed5b59h
+dd 07acc19ech
+dd 08fe1d706h
+dd 0113ba8fch
+dd 01cc7c10eh
+dd 0e5a6b8e6h
+dd 0ab7fb016h
+dd 0cc61cc2ch
+dd 08d7eeefah
+dd 06026749fh
+dd 0da78e985h
+dd 09fc1f992h
+dd 06c92ae94h
+dd 05b6497a3h
+dd 0070b2fd0h
+dd 01d90917eh
+dd 0feca0d82h
+dd 05ea9913bh
+dd 0a4791bd1h
+dd 01397360fh
+dd 05d4526ech
+dd 06ed1f7f8h
+dd 074d86818h
+dd 0efee5993h
+dd 079b78220h
+dd 04b2c606bh
+dd 0d29ba7c3h
+dd 08e21c7d5h
+dd 02692557ch
+dd 058d5d11ah
+dd 045a6f5cfh
+dd 09f66387eh
+dd 089d301e7h
+dd 04e00949ch
+dd 0a4f77f0ah
+dd 0fefaef03h
+dd 0bd3c9f64h
+dd 06943499bh
+dd 05f3c05c4h
+dd 000f32871h
+dd 0d2287892h
+dd 02d757f8bh
+dd 0354cfc16h
+dd 0fc4c716fh
+dd 08d1a6e82h
+dd 04d51598dh
+dd 0a885e4a8h
+dd 0fdd8d993h
+dd 053aeab9dh
+dd 0167dcec1h
+dd 0a9388197h
+dd 09340ca02h
+dd 0cc02962dh
+dd 0cfc4fd1ah
+dd 014eb430eh
+dd 0187b84abh
+dd 031f022aah
+dd 0924048cbh
+dd 01b02628fh
+dd 00997876ah
+dd 0a217eb21h
+dd 03c79939ah
+dd 0f741e1e9h
+dd 054562c3bh
+dd 000ba0134h
+dd 0e4407f05h
+dd 0f8edc284h
+dd 0765e832dh
+dd 0b4d7f408h
+dd 03a895bdch
+dd 0a29c4a1bh
+dd 0d81c68cch
+dd 00c1c2bc2h
+dd 0e9b3a5eeh
+dd 01886f8d0h
+dd 00d821a73h
+dd 07c3e8643h
+dd 098c0d9fah
+dd 0a7eae0fdh
+dd 03ddc2ddch
+dd 087fc1884h
+dd 0267c484eh
+dd 068289362h
+dd 0f3aa7aach
+dd 0d38babebh
+dd 07a934434h
+dd 0daf68dbch
+dd 09483a2a2h
+dd 0cb3d0035h
+dd 0644db8d1h
+dd 0d5b59579h
+dd 09e8a6d0eh
+dd 0f7e39ca9h
+dd 0c4554b55h
+dd 048a6c027h
+dd 06ddec899h
+dd 02a6b31b5h
+dd 08663e41eh
+dd 06d3f4070h
+dd 0adf24566h
+dd 0cd95246ch
+dd 03dba0d10h
+dd 0ad260477h
+dd 0cf2b8659h
+dd 0567872d2h
+dd 0bcd5a740h
+dd 09ab4c161h
+dd 0cad08fdfh
+dd 06750e2adh
+dd 06c0c917eh
+dd 00eef0c92h
+dd 04909c964h
+dd 06d506477h
+dd 0924e4829h
+dd 0d4820326h
+dd 0af2d5934h
+dd 07289b7e9h
+dd 08b76089dh
+dd 00be0ee2dh
+dd 096bc09a3h
+dd 0825354e0h
+dd 036a6b725h
+dd 0c2f04ab3h
+dd 0693a5048h
+dd 0205360d0h
+dd 091c0e360h
+dd 07ccbc3aah
+dd 03ec3bad3h
+dd 0bb3f310fh
+dd 0fcd44f4fh
+dd 03da10de7h
+dd 04266ca3eh
+dd 0b035b5c9h
+dd 0c4db1950h
+dd 0d9a40883h
+dd 0fbb0ff37h
+dd 06ce2deeeh
+dd 011320043h
+dd 08f4b48e7h
+dd 09cfa2ed7h
+dd 0fd855e87h
+dd 052665a2bh
+dd 0273f4952h
+dd 031d2acceh
+dd 05d9dc0f6h
+dd 04393783bh
+dd 0f3bc99ddh
+dd 04c5ed6e5h
+dd 0c807bef8h
+dd 02506b125h
+dd 0f9ab8fb9h
+dd 01d390399h
+dd 050d5ecefh
+dd 07140519ah
+dd 00ac88fbdh
+dd 05dfed108h
+dd 0db69d9bbh
+dd 0dfecc6bah
+dd 06143f4beh
+dd 02fb1e2fch
+dd 01778575ah
+dd 0d3942889h
+dd 06444e955h
+dd 00adddcdfh
+dd 0ae5dd4d0h
+dd 03cf65353h
+dd 0dd180681h
+dd 086431f7ah
+dd 07c230776h
+dd 0244b0bb0h
+dd 0f3137b43h
+dd 0531f566eh
+dd 0d75ccf36h
+dd 08311a6aah
+dd 01b4075efh
+dd 072747dbbh
+dd 0505de260h
+dd 041105b4fh
+dd 0a5a6bcb5h
+dd 077e99df0h
+dd 0c70a9d42h
+dd 081b46325h
+dd 0076df310h
+dd 0a63c4c39h
+dd 0079458cfh
+dd 0f7d5eec9h
+dd 06cccc4cbh
+dd 0c3342361h
+dd 0a157c968h
+dd 03c234909h
+dd 0fb703521h
+dd 077bea136h
+dd 0944dc0f1h
+dd 07559eaaeh
+dd 0561b8c04h
+dd 0188dc796h
+dd 08547d3fch
+dd 0e2e2255dh
+dd 05002c11fh
+dd 0653076f2h
+dd 095f69797h
+dd 085f79e40h
+dd 01f246484h
+dd 0f484393dh
+dd 01a1fe9d7h
+dd 0465d9031h
+dd 0786a166eh
+dd 03f83cfaah
+dd 07772236ah
+dd 027fdfc5eh
+dd 0e30d1229h
+dd 02f7c7192h
+dd 01dd9c3aah
+dd 062c9db9ch
+dd 027fa2f4ch
+dd 04b5b96cch
+dd 09f4c5847h
+dd 00b956567h
+dd 0668b8fd6h
+dd 0efd96525h
+dd 05c6cf255h
+dd 0bdc27a04h
+dd 08cfee340h
+dd 0c4a32275h
+dd 044ce0679h
+dd 08e68e081h
+dd 0bddc1f53h
+dd 0d3eed666h
+dd 075501327h
+dd 0cfb48ed6h
+dd 0193ee69eh
+dd 07a4cf484h
+dd 0d0ad8df0h
+dd 0fee68285h
+dd 046895f32h
+dd 021abae3ah
+dd 06af19343h
+dd 0c2c3f224h
+dd 04fe84b72h
+dd 048dbc39dh
+dd 09498b28fh
+dd 0b760a2ffh
+dd 0c8aba4f9h
+dd 021cafcfah
+dd 04f0894c4h
+dd 012023fc4h
+dd 025f3e60ah
+dd 01c34e48eh
+dd 0ab8860ach
+dd 05a0e9055h
+dd 039c36b72h
+dd 03f0618b8h
+dd 097a60016h
+dd 023dc3044h
+dd 044f14b16h
+dd 0a7f9ad41h
+dd 053a5cb28h
+dd 038d0b1fdh
+dd 067d61ae9h
+dd 08774487ch
+dd 03b3c711ah
+dd 0eb1dcbd3h
+dd 03da64c42h
+dd 0668b420ch
+dd 0ab76da5ch
+dd 00e272412h
+dd 0be5ccd8ch
+dd 0f765fb5fh
+dd 0df25bef0h
+dd 0b9d70c65h
+dd 015e2bd21h
+dd 0687ac647h
+dd 05ff1ad47h
+dd 05c8e968ch
+dd 0b8f0e61eh
+dd 0eea01e7ch
+dd 07736a7cfh
+dd 045b80f31h
+dd 0c7a19ce4h
+dd 01d01e6f7h
+dd 0fde7f89dh
+dd 082cb5fddh
+dd 0b725155eh
+dd 08e41c5ach
+dd 05d64458fh
+dd 05b1fbdb6h
+dd 05049d7a3h
+dd 05f109c92h
+dd 01f907441h
+dd 0ba210abdh
+dd 0ea5fc983h
+dd 039d61569h
+dd 02d40681eh
+dd 06c4421c5h
+dd 0c335f68ch
+dd 094eecaadh
+dd 05474a72ch
+dd 0c2cbfc4dh
+dd 0f41f936ch
+dd 0e17c340fh
+dd 0762ffd70h
+dd 0d71960eeh
+dd 0557fc649h
+dd 041e956e3h
+dd 0a48f1991h
+dd 0c398144dh
+dd 0fd074a41h
+dd 0312fc714h
+dd 0266e907dh
+dd 05c925ee2h
+dd 077104114h
+dd 012d57108h
+dd 04b7919a7h
+dd 0e6f92197h
+dd 07e97eab5h
+dd 046082bfdh
+dd 0e2c92f90h
+dd 0432957b8h
+dd 013711de4h
+dd 0a10f98efh
+dd 00620cce2h
+dd 0380e2f90h
+dd 02f6348cbh
+dd 0292fe1aeh
+dd 0555c936bh
+dd 031e7cbf0h
+dd 06c9e9d3fh
+dd 0d89596f7h
+dd 0189d7130h
+dd 081c19f1fh
+dd 02496d1a6h
+dd 098ddb2c4h
+dd 02e2683cch
+dd 023dbc79eh
+dd 0642fd724h
+dd 051e27a34h
+dd 058953639h
+dd 0107cad7fh
+dd 0118211e1h
+dd 0d5267d38h
+dd 0e8bf6d22h
+dd 0147acd77h
+dd 060a76068h
+dd 01220f6b0h
+dd 038a2ed98h
+dd 056ddf69ch
+dd 0a9d0b665h
+dd 0513bc71ch
+dd 0c4a888feh
+dd 027e777d8h
+dd 057a2004ah
+dd 0832be2c8h
+dd 0cdaed07dh
+dd 041e9ec54h
+dd 0ed7f3de7h
+dd 072be14dbh
+dd 0f535ae1eh
+dd 084a23968h
+dd 0291f81c6h
+dd 04f7a1e14h
+dd 0e75c814dh
+dd 02015d56ah
+dd 0de6e0540h
+dd 0147a5e12h
+dd 007a9a6ebh
+dd 04f1b948fh
+dd 00fe6d324h
+dd 039a0cabbh
+dd 014a4e70fh
+dd 049f33bb1h
+dd 06feb8937h
+dd 09c572bbeh
+dd 08e09a637h
+dd 094db7bc0h
+dd 04a291694h
+dd 0c804d186h
+dd 0bc5ea077h
+dd 085db0a79h
+dd 06da6ff44h
+dd 0293fedadh
+dd 0bfd36607h
+dd 06841a79ch
+dd 04f227efah
+dd 03e629501h
+dd 05dda5c50h
+dd 0250177bch
+dd 0365e25ebh
+dd 0ef3b4513h
+dd 019f44255h
+dd 0af580d43h
+dd 09931699dh
+dd 01f4d2b12h
+dd 05d86755ch
+dd 03201cfeah
+dd 0303813c4h
+dd 02fa19530h
+dd 0ade287c9h
+dd 0a3ce9a70h
+dd 0d463ebd2h
+dd 079d37438h
+dd 080ce55bdh
+dd 02bf7e0fdh
+dd 0ed3beac6h
+dd 0f80499cch
+dd 0bff07a57h
+dd 099554f3bh
+dd 0bba1dd0eh
+dd 0c3388fa3h
+dd 06e18c1d0h
+dd 0ba388c6dh
+dd 08f96eba3h
+dd 0c34db840h
+dd 0a1c6384dh
+dd 0ef165721h
+dd 071374467h
+dd 01aad6a10h
+dd 0c0fb646eh
+dd 0ab581b06h
+dd 0f334a852h
+dd 0a938c12bh
+dd 006080bd4h
+dd 0d630f9e2h
+dd 00bc92fcdh
+dd 005eccea2h
+dd 095292175h
+dd 008d0e3cbh
+dd 067974121h
+dd 0a4b01b15h
+dd 051e7607eh
+dd 098de0f0ah
+dd 0ba24fc98h
+dd 0ba642affh
+dd 003774cfdh
+dd 05f708aa9h
+dd 0b1c34782h
+dd 020e038b3h
+dd 0dfa749d3h
+dd 004e6b4aeh
+dd 05f1165fbh
+dd 09142109dh
+dd 021fcbaceh
+dd 0e8e85453h
+dd 05c22fa29h
+dd 06c75fa5bh
+dd 09f4bb83fh
+dd 05b63f02ch
+dd 0de9efd9eh
+dd 059167510h
+dd 058abc9e6h
+dd 0c3fe5bach
+dd 08dc94452h
+dd 0d44c9c57h
+dd 00e85eedah
+dd 039e33308h
+dd 0a220b990h
+dd 0a03deb5ah
+dd 08522a87bh
+dd 028fc867ch
+dd 0005f6d71h
+dd 03beeeaa6h
+dd 099f8abf2h
+dd 09c7c005ch
+dd 0e2f8b789h
+dd 037a61d5ah
+dd 05d262827h
+dd 00a210368h
+dd 0c84d6baeh
+dd 0e3dddaa3h
+dd 073767bbeh
+dd 086e9f881h
+dd 0a9e137f8h
+dd 09428fd79h
+dd 07a708c96h
+dd 0ce2491c9h
+dd 0b4cb050fh
+dd 017b31cbbh
+dd 0da5902c1h
+dd 0a130fef7h
+dd 0daf617c1h
+dd 078707cffh
+dd 05de14f79h
+dd 0f1dda086h
+dd 0ab8f496dh
+dd 054efadfdh
+dd 03570c9a5h
+dd 08b56cbe6h
+dd 028acc059h
+dd 0eae6dd77h
+dd 08a649198h
+dd 0aa3cede0h
+dd 090a93238h
+dd 0b8459f93h
+dd 05b64de1ch
+dd 0024f4422h
+dd 0a2fc1e5fh
+dd 04a3ab4eah
+dd 01f7a8a1ch
+dd 0c36b0c3ah
+dd 04399325eh
+dd 0ea7aeda3h
+dd 065f2f9d3h
+dd 067d5a311h
+dd 0be5ca0d6h
+dd 0427b863ch
+dd 07129ef8dh
+dd 0c72886f2h
+dd 06ef1b416h
+dd 022549743h
+dd 0164fb233h
+dd 0449139d0h
+dd 0a4b38508h
+dd 00567ef38h
+dd 0f43e0b4ah
+dd 02ff13894h
+dd 0e413db97h
+dd 031c6b11ch
+dd 084539765h
+dd 03b9b82c7h
+dd 049c87813h
+dd 0f5e8692dh
+dd 008cc39fbh
+dd 0ae97612bh
+dd 0de0bae14h
+dd 01f859b2eh
+dd 03b9eafe3h
+dd 0ed8d76a1h
+dd 096eec8deh
+dd 0abba9831h
+dd 09e172dc0h
+dd 0362079e5h
+dd 0751b6444h
+dd 0bf4f1418h
+dd 094145e80h
+dd 0fa63689eh
+dd 01528f5d1h
+dd 0bdf82df4h
+dd 0eeaf9e31h
+dd 0634b65c8h
+dd 016358a26h
+dd 02d729ec1h
+dd 09a910902h
+dd 068205bf5h
+dd 0d971a53dh
+dd 098a0b35ah
+dd 020aa97f4h
+dd 02f3f1683h
+dd 085b0e6cbh
+dd 05a439670h
+dd 0f517e166h
+dd 09cc98a5ch
+dd 026813c74h
+dd 081fc91f5h
+dd 09e8141e2h
+dd 069e39f8eh
+dd 09f4b6c62h
+dd 0a959055dh
+dd 03c4d05cdh
+dd 03ff133c2h
+dd 05cae30fch
+dd 0b5909d2dh
+dd 023b3557bh
+dd 00df4270fh
+dd 0649b4a0ch
+dd 0fd510bd2h
+dd 00c452dd7h
+dd 093df255eh
+dd 0bc6c557bh
+dd 01f546638h
+dd 0e823a9ebh
+dd 0073430f0h
+dd 05855e3b9h
+dd 02e463c44h
+dd 089e2e85ch
+dd 0c4e9ce24h
+dd 0f4929c7ch
+dd 0071ff6dah
+dd 003381e8fh
+dd 03e60448bh
+dd 0e507730fh
+dd 00a6e15d5h
+dd 041997588h
+dd 0631847fdh
+dd 0dfe356aah
+dd 042cd84ffh
+dd 00a93b85bh
+dd 0fecd364bh
+dd 0355d22f6h
+dd 007a4b501h
+dd 0e4e7518eh
+dd 058a3b5e2h
+dd 0285c263dh
+dd 065590f6eh
+dd 082568230h
+dd 0ef05bffdh
+dd 0683937b3h
+dd 07fa67cebh
+dd 0a36cb5beh
+dd 01bef3304h
+dd 0220fec23h
+dd 0cc55d408h
+dd 0960c2101h
+dd 0fa399ca8h
+dd 0d905a312h
+dd 03de94ccch
+dd 0e1452f5ah
+dd 0faf914edh
+dd 08a83be64h
+dd 0ed80550dh
+dd 0e7ae96e8h
+dd 01683b7aah
+dd 0c7844518h
+dd 08c8d169eh
+dd 001d0b20fh
+dd 0c7866893h
+dd 00966c274h
+dd 02ed66909h
+dd 09d60a7c7h
+dd 0c8a0a8a4h
+dd 0ef52f4a7h
+dd 00b801ba3h
+dd 044140e43h
+dd 0ceccbcffh
+dd 07aa953d1h
+dd 025475710h
+dd 05bf91490h
+dd 01036c635h
+dd 0297fe902h
+dd 084d43da6h
+dd 0d118b921h
+dd 084018ca5h
+dd 0984b9c9ch
+dd 0fe4b716eh
+dd 0e860be25h
+dd 04aa5e028h
+dd 0f47888b7h
+dd 0a8eb7ae9h
+dd 05b179260h
+dd 0d517a24fh
+dd 0bbd43371h
+dd 047b97aedh
+dd 05c36dea4h
+dd 0e8d7bf76h
+dd 0b1e5f0f3h
+dd 04d5cb4e4h
+dd 03aa3bc36h
+dd 0a3a36269h
+dd 0711ec46bh
+dd 07888c355h
+dd 04a2ed839h
+dd 0172581dah
+dd 08b9d7901h
+dd 0eb18aa76h
+dd 019cd4dc0h
+dd 01bb164cfh
+dd 0f5908ad0h
+dd 0b142d428h
+dd 0f4ae6c6bh
+dd 0b264bcd7h
+dd 08c95eccbh
+dd 0f19aa2f8h
+dd 0bacb129bh
+dd 0aef3ef57h
+dd 027f86716h
+dd 0274fc433h
+dd 05160a6c1h
+dd 0db289616h
+dd 098eb9d84h
+dd 01ceb4068h
+dd 0726aebbch
+dd 00b1d5342h
+dd 07f69ec1ch
+dd 00b72515fh
+dd 0d342446ch
+dd 0cdf255fah
+dd 0c1cd1d58h
+dd 06f5935bdh
+dd 07e6754dah
+dd 0305850edh
+dd 04abece29h
+dd 0b8379880h
+dd 02b39a69eh
+dd 0641e5a71h
+dd 016e8d105h
+dd 09e3bb0d2h
+dd 033df667fh
+dd 05d8ea259h
+dd 0a00621ebh
+dd 049a6a748h
+dd 07ebce9a4h
+dd 020830e24h
+dd 019309f05h
+dd 0cc7bab21h
+dd 022498abeh
+dd 0e0b9746ah
+dd 0750504c4h
+dd 029992060h
+dd 0fba80855h
+dd 0f9d8b412h
+dd 0efb65d43h
+dd 026cb04bdh
+dd 0781f27b0h
+dd 08cc682dfh
+dd 0c9fb6fc5h
+dd 07140f580h
+dd 02a30fadch
+dd 0f196a5cch
+dd 0d0165f0bh
+dd 0ca98121dh
+dd 0168d8747h
+dd 06a882effh
+dd 03c6f99dfh
+dd 04d90d8dah
+dd 0c2f8b0f4h
+dd 01464bda2h
+dd 0efb1f713h
+dd 0d742427fh
+dd 07cb3db69h
+dd 09acd6a6dh
+dd 0e6a34f52h
+dd 095b037a9h
+dd 0cafbca0ch
+dd 0db5b4c69h
+dd 0619bf361h
+dd 082b9aeb0h
+dd 05ee687c9h
+dd 0b01f0c95h
+dd 0302ce459h
+dd 08f1fd7a2h
+dd 0e90954bfh
+dd 0a5493a72h
+dd 0769bf49dh
+dd 0b4e89b37h
+dd 0f4b649cfh
+dd 02fac1ef0h
+dd 0c771965ah
+dd 0cbc41255h
+dd 0bc99c44fh
+dd 0b5e017f3h
+dd 0e68275adh
+dd 075750eb7h
+dd 083cdd31ah
+dd 0644bb92dh
+dd 00bcf527eh
+dd 0fc865ffch
+dd 032a4afa0h
+dd 09fe08c37h
+dd 0ef9d334ch
+dd 077cab154h
+dd 0a74e7a0dh
+dd 0b7cd2cc3h
+dd 0761d903ah
+dd 0b3d69646h
+dd 02636da1fh
+dd 0668f0508h
+dd 0f1efa220h
+dd 0cd541ac3h
+dd 0f843df11h
+dd 043e2dd32h
+dd 0705c2155h
+dd 0a60465a9h
+dd 0a49e3d41h
+dd 09569dc5ch
+dd 0dd24b2d0h
+dd 078730a79h
+dd 0b6a77e86h
+dd 075905962h
+dd 03ed9a627h
+dd 07509c0b8h
+dd 04257a6b1h
+dd 0d48d110fh
+dd 0d6b2b6feh
+dd 0458ea071h
+dd 0b166949bh
+dd 043033ccbh
+dd 0832946ebh
+dd 06126db6bh
+dd 05bb06f42h
+dd 09c6b2adah
+dd 034d43bc7h
+dd 06d3e7a66h
+dd 0cb46cf8ah
+dd 0a4ee7ed6h
+dd 0b74a5304h
+dd 09d14c1b3h
+dd 0a776f1aah
+dd 0c250999fh
+dd 065aa9e34h
+dd 05117f96eh
+dd 0b83a1615h
+dd 01da90d9ah
+dd 03b9db8cdh
+dd 02b759cach
+dd 08c6274f5h
+dd 0e11d3082h
+dd 0eca1267ch
+dd 069d6b052h
+dd 0aec7ef9fh
+dd 0df3d7458h
+dd 0ea63d7c2h
+dd 021e9c104h
+dd 08a1b75bah
+dd 01061e5f2h
+dd 083621119h
+dd 0b074e55fh
+dd 0574c955fh
+dd 0db163d47h
+dd 0fa71bcc6h
+dd 0909b05d4h
+dd 0e59d2647h
+dd 0d9b63afah
+dd 054ee0792h
+dd 055b2ced5h
+dd 0e0a3617bh
+dd 0db8c6f24h
+dd 0e21e0a16h
+dd 0c4cad5eah
+dd 067d250e2h
+dd 00bbb6ecfh
+dd 058193632h
+dd 07118d877h
+dd 0612963c5h
+dd 03e9bd7ddh
+dd 0a1794bd4h
+dd 01085b70ch
+dd 053b100e5h
+dd 0972b4e40h
+dd 038623727h
+dd 029b6a246h
+dd 02ea09c87h
+dd 0cd2fbdd9h
+dd 0a287bbd5h
+dd 0069bb435h
+dd 060e6011ah
+dd 05da41990h
+dd 04c5e7de2h
+dd 035222f58h
+dd 0caa96391h
+dd 0ab6383a0h
+dd 0c40d4ea9h
+dd 067008e51h
+dd 042be74a5h
+dd 0d741734ah
+dd 03b040a1ah
+dd 0bfc59e10h
+dd 00481e744h
+dd 09371535fh
+dd 0ff043c30h
+dd 0646e0280h
+dd 06c06cfdah
+dd 0fc789d60h
+dd 083730252h
+dd 010127585h
+dd 09016695fh
+dd 041d3bd67h
+dd 070c43311h
+dd 0845731f3h
+dd 03bb5f34ah
+dd 09945f86eh
+dd 0c3332ce2h
+dd 02cc6f3f9h
+dd 0ee335730h
+dd 09aa67811h
+dd 0b94dbb05h
+dd 0cb70bcd1h
+dd 079beb49bh
+dd 0f9b8031bh
+dd 0d8472991h
+dd 0b7dda535h
+dd 02bcae73eh
+dd 0cb05fe64h
+dd 00b0ecf6bh
+dd 01542d7b3h
+dd 0c51f20c7h
+dd 0f84a170ah
+dd 088a32743h
+dd 047a4540eh
+dd 098330213h
+dd 0cc5d0064h
+dd 0f5092ae4h
+dd 02540e12bh
+dd 0d1caa6cah
+dd 0de8804dfh
+dd 0dd572ad5h
+dd 0e9e91ee4h
+dd 00f57c2f7h
+dd 03c7e0ab8h
+dd 0a1e7a54ch
+dd 0e5862188h
+dd 0c45be47ch
+dd 01223494bh
+dd 015859d19h
+dd 098031dd9h
+dd 05fa39297h
+dd 09afd1cafh
+dd 012298665h
+dd 01f0c06a1h
+dd 061bff995h
+dd 030552565h
+dd 02eacea2eh
+dd 09eca552fh
+dd 01b770645h
+dd 0cf0db765h
+dd 0df704556h
+dd 0b8dc93a0h
+dd 05603fc40h
+dd 05772ffdfh
+dd 0b1f8d4c2h
+dd 0c9f217a2h
+dd 0188fdf26h
+dd 0df268aa7h
+dd 09b24d2a1h
+dd 00db83f49h
+dd 08419be3dh
+dd 092778733h
+dd 08ca4c261h
+dd 081797bb3h
+dd 0a7e36d84h
+dd 0cdb31849h
+dd 0a917132ch
+dd 03bc0fdf1h
+dd 07d611bf7h
+dd 0c6829bddh
+dd 000e293d7h
+dd 04772fe31h
+dd 070953516h
+dd 0f8d5d6beh
+dd 05ce05ae9h
+dd 0cc0c4c83h
+dd 07553a3e7h
+dd 0b351e8e8h
+dd 00d970fd0h
+dd 022c34772h
+dd 03bc8fb27h
+dd 0fa0ab737h
+dd 06bf16a47h
+dd 0f7348bb2h
+dd 0fac9a9c1h
+dd 09a4fc48bh
+dd 026e174b7h
+dd 0869acd3bh
+dd 0e891caceh
+dd 04bdbc356h
+dd 0448197f5h
+dd 0c2a18eceh
+dd 04f5153a6h
+dd 0720b4263h
+dd 0f276e6bfh
+dd 0ce7ff292h
+dd 08cfdd32eh
+dd 0ad376390h
+dd 06638ee3ah
+dd 08e5e05bdh
+dd 05966db12h
+dd 0fefd5c7bh
+dd 0db11fba3h
+dd 083525a76h
+dd 099236a9eh
+dd 034a8cc7fh
+dd 0cfe961b1h
+dd 0ba9a28dah
+dd 0293f117eh
+dd 077fc8726h
+dd 0ec486de3h
+dd 06a2cebc3h
+dd 096b4eea9h
+dd 039bbb20ch
+dd 0b761a4c3h
+dd 0ed5fd3f5h
+dd 0acaa4d6bh
+dd 08d64e2abh
+dd 07894f7e3h
+dd 0d49c8937h
+dd 015992892h
+dd 0e1c2047ch
+dd 0fee75c1eh
+dd 07daba210h
+dd 0e115a089h
+dd 0497a87c6h
+dd 0c6478f7fh
+dd 04654aeaeh
+dd 0de888644h
+dd 0de7c3ce6h
+dd 0739125cdh
+dd 065bdde84h
+dd 02753e10fh
+dd 010c60b52h
+dd 0b0e90a5ch
+dd 0f3c90700h
+dd 059539b63h
+dd 0049f9bebh
+dd 0ff0a483fh
+dd 062375132h
+dd 0fd15768ch
+dd 02843c6d0h
+dd 0cefb95c5h
+dd 0778df39ah
+dd 0d1d96cd7h
+dd 0e3f6573eh
+dd 0b3ffb324h
+dd 057741213h
+dd 0b08fb2bbh
+dd 090c1424dh
+dd 0a78fe7e4h
+dd 09247e0fch
+dd 0d5d985cah
+dd 0cbdc1740h
+dd 0e172e1bbh
+dd 052694253h
+dd 04829f7aeh
+dd 0bb9b1b9ch
+dd 0e2cb8457h
+dd 0d039f30bh
+dd 033bbade3h
+dd 0f9fee3b0h
+dd 0bcfab722h
+dd 01f6bcc8dh
+dd 010321a99h
+dd 077839871h
+dd 07fec8174h
+dd 08acfb06bh
+dd 0ed13a9b2h
+dd 0d4889bbbh
+dd 0b5ff2dfah
+dd 05e01224ah
+dd 066dd2760h
+dd 03058da18h
+dd 03c3f974ch
+dd 05fbbe665h
+dd 0e041aaa8h
+dd 0003c113eh
+dd 00a212912h
+dd 065533aceh
+dd 0bb76ebf2h
+dd 075bcd5e1h
+dd 0dfce67e4h
+dd 0de9bd347h
+dd 0bfcd48f1h
+dd 00bd5bc72h
+dd 09a9ba2b9h
+dd 0d744b1f3h
+dd 01929db18h
+dd 0b315aad1h
+dd 0bd6aa198h
+dd 0549cda7ch
+dd 035909a18h
+dd 0b349117bh
+dd 04b3cfa45h
+dd 02d47b9e8h
+dd 0af11b9fah
+dd 0b6c66d21h
+dd 0e10d0a1ch
+dd 0dd799ac5h
+dd 0aa772e00h
+dd 093fb68a8h
+dd 07f97fc3bh
+dd 09a94c044h
+dd 03ebefd11h
+dd 038e2b495h
+dd 0479aa087h
+dd 07bb724f7h
+dd 068e63215h
+dd 0d4818540h
+dd 02997d6cah
+dd 035fc4a6ah
+dd 0db34b133h
+dd 07211b68eh
+dd 0ba3df3dfh
+dd 0ba84330fh
+dd 0604de666h
+dd 01ac4a661h
+dd 0a8a35835h
+dd 0d02bdf0dh
+dd 026de1d7ah
+dd 02a59c7ebh
+dd 0b2f68f02h
+dd 0904b65f9h
+dd 0862f41eeh
+dd 053dddf4bh
+dd 0407a0e90h
+dd 0ac897e56h
+dd 0c76395b8h
+dd 0f87fbc90h
+dd 01e1f3c10h
+dd 036994d13h
+dd 0a913c365h
+dd 0706d9261h
+dd 085e40981h
+dd 08015ffd1h
+dd 0487715aeh
+dd 041790edeh
+dd 0d2e6a39fh
+dd 0a20985d2h
+dd 099dc0fe6h
+dd 00ff9e240h
+dd 04219ce90h
+dd 0fbd5bdf7h
+dd 0a904f396h
+dd 01c21d33eh
+dd 09f1f2e79h
+dd 095e9cfd4h
+dd 07e8ec479h
+dd 06400f389h
+dd 036a41651h
+dd 0979cd555h
+dd 03b8137c6h
+dd 06ed3a55dh
+dd 036739ce1h
+dd 00a6f4e2fh
+dd 0cddafe67h
+dd 0797c8a6eh
+dd 06adb496dh
+dd 05c563cf8h
+dd 0ced015e7h
+dd 0e2403074h
+dd 0e9431b9fh
+dd 0d9fbcc35h
+dd 09512ba14h
+dd 034500950h
+dd 00004c9b7h
+dd 01713410eh
+dd 0c8aff03dh
+dd 03675ba43h
+dd 0317273d4h
+dd 065e9d0c1h
+dd 0d0b12c9fh
+dd 041ebdc31h
+dd 02a7b5ae6h
+dd 0cedec8edh
+dd 014fade73h
+dd 0b165107bh
+dd 009dd259eh
+dd 09a9781f1h
+dd 03017693bh
+dd 04cb1b36ch
+dd 0deb4bd23h
+dd 09773c33bh
+dd 096bdde08h
+dd 02db3a976h
+dd 0d21d9d25h
+dd 05bb1a944h
+dd 041203b7ah
+dd 074849ac2h
+dd 0e7a893c9h
+dd 047b34a81h
+dd 0949c7dffh
+dd 0c1c0428ch
+dd 051cd068ah
+dd 02dfdd132h
+dd 032b42193h
+dd 0c8e01878h
+dd 04d34252dh
+dd 0138d26dah
+dd 01b5924f7h
+dd 0e6655a9ch
+dd 0ca1ff280h
+dd 0157f2539h
+dd 01ea9dc1bh
+dd 06163eb45h
+dd 0256f4ae3h
+dd 0a3b0d77ah
+dd 04e6ddb47h
+dd 061d70df5h
+dd 06f9f13f2h
+dd 0d2ef8d10h
+dd 0a97cc379h
+dd 0fed31f88h
+dd 009670f94h
+dd 0038c434ch
+dd 0e201674eh
+dd 048f3df77h
+dd 0a808b5c0h
+dd 0c60dda2eh
+dd 038bccc3eh
+dd 0be9bcbbfh
+dd 05c23161dh
+dd 054325dbbh
+dd 086521978h
+dd 073ce0148h
+dd 0faf10368h
+dd 0bf19342dh
+dd 0fd7d9e8bh
+dd 04aa61e97h
+dd 088a726e8h
+dd 0ba9f5d8bh
+dd 042b3597ah
+dd 0fa7e686bh
+dd 0fa885fa1h
+dd 0bb454017h
+dd 03355d784h
+dd 06ed7cf51h
+dd 007739aabh
+dd 07ecf1a7ch
+dd 0b260791ch
+dd 00e7edfcbh
+dd 09fcde726h
+dd 01a6a434bh
+dd 0607cc3c5h
+dd 08c99e0f3h
+dd 0c3a70a5bh
+dd 018aeadc4h
+dd 09a36538fh
+dd 097151350h
+dd 07829caa1h
+dd 018b8fba0h
+dd 08888d116h
+dd 094cdac0ah
+dd 0b33bcfd7h
+dd 0d284d828h
+dd 087d762c0h
+dd 0affd9626h
+dd 03d77047dh
+dd 06109f400h
+dd 03e75ca26h
+dd 066a4aaf4h
+dd 0eda868b3h
+dd 0a027bc5fh
+dd 05ebf7228h
+dd 088209c72h
+dd 064bc34bah
+dd 029e761c3h
+dd 026c18a82h
+dd 083bd9334h
+dd 09fb2ea2ch
+dd 003d97e59h
+dd 0ac56600ch
+dd 092bc55eeh
+dd 066f3098fh
+dd 0431da218h
+dd 0f99a8ecbh
+dd 02e6099c0h
+dd 072f8fd2eh
+dd 002713544h
+dd 02e36a89bh
+dd 037740743h
+dd 0d05cb4afh
+dd 00fae2c59h
+dd 000ed3d4fh
+dd 02fb5fc70h
+dd 02c7bca00h
+dd 023534e1eh
+dd 03e4d5d47h
+dd 0c8cb3ffeh
+dd 03b3e699bh
+dd 00d9fa959h
+dd 07c3e98ddh
+dd 0d6aad378h
+dd 0c997437bh
+dd 0bd81334ah
+dd 0af02c854h
+dd 05cbe9955h
+dd 0de45d5dbh
+dd 09496dacbh
+dd 0c8778ebch
+dd 0c155baa1h
+dd 06861207ch
+dd 0ed1b8565h
+dd 08b5b44a1h
+dd 06add5507h
+dd 06c35f64bh
+dd 0343d1770h
+dd 05d72b7b6h
+dd 00496a419h
+dd 048d6b909h
+dd 0c508b7d3h
+dd 0b67e4bb3h
+dd 06d7b6f80h
+dd 0f7d56f7bh
+dd 009b7d781h
+dd 04f98e186h
+dd 02faa5919h
+dd 0935f8e51h
+dd 0503e9aedh
+dd 04869196dh
+dd 0e5f045e2h
+dd 00198695ah
+dd 0b52196ech
+dd 0494713d5h
+dd 0a812a062h
+dd 0bf2c6045h
+dd 061187188h
+dd 045d3506ch
+dd 0a2ea29f7h
+dd 0642ccd68h
+dd 0b13f1922h
+dd 0c92caf24h
+dd 051342fc3h
+dd 0743cfefdh
+dd 0d32f747ah
+dd 09d9c53ach
+dd 0f335d9e5h
+dd 0393ac95dh
+dd 0541f5f93h
+dd 0986b05eeh
+dd 0720fdb83h
+dd 0d2e9e37eh
+dd 0ef30cb88h
+dd 0b3ad703bh
+dd 0384b7fbbh
+dd 089320aa2h
+dd 09daf1bdah
+dd 0365621d4h
+dd 08f8d5287h
+dd 0f51645e7h
+dd 0faa61feeh
+dd 0287debf9h
+dd 0961778dah
+dd 0a80eadbfh
+dd 06bd3be6ch
+dd 0666a6419h
+dd 00e0f3cfch
+dd 0c53b174ah
+dd 0fd8efd6eh
+dd 0d948b2b5h
+dd 03559460bh
+dd 0dce2bfdeh
+dd 091c56e08h
+dd 0d0cfc80fh
+dd 0bfeba8e8h
+dd 056fd2a40h
+dd 09766c1f4h
+dd 09e760660h
+dd 089927ebah
+dd 04b3de39fh
+dd 0cabb81fch
+dd 07adebc59h
+dd 0e9d793fdh
+dd 054678b9dh
+dd 00e1e2e0bh
+dd 0d5b835feh
+dd 0aa5bfcd1h
+dd 0a971491fh
+dd 072d418ech
+dd 001439110h
+dd 04187b7dch
+dd 0952717bdh
+dd 041cdcc83h
+dd 079c5fa34h
+dd 0d8634fa0h
+dd 033d09b9fh
+dd 08337a674h
+dd 02bdca775h
+dd 030be9992h
+dd 02853b2d2h
+dd 0e5b7763bh
+dd 0e057785dh
+dd 0c05f2ef7h
+dd 0fa6c5f0ah
+dd 023599705h
+dd 0fcd850c6h
+dd 010134884h
+dd 0acbaaef9h
+dd 074e15027h
+dd 01368c17ah
+dd 070876c50h
+dd 0741a0bdbh
+dd 04320c2deh
+dd 051d8b95dh
+dd 0b2bb1830h
+dd 0b2549faah
+dd 059e38b88h
+dd 060959ad3h
+dd 0a4902224h
+dd 01a6e6990h
+dd 08faa6ce0h
+dd 07479da3dh
+dd 0fa2bfe65h
+dd 0e1cd484eh
+dd 05f985407h
+dd 0fc5b884dh
+dd 0fd4b7490h
+dd 0d39e48c3h
+dd 0009073a1h
+dd 08aa9df11h
+dd 091b1bb8ch
+dd 0c79c6c93h
+dd 0b815d304h
+dd 03633118ch
+dd 0cec15860h
+dd 061bf051bh
+dd 07b2eddaeh
+dd 0e1ae6e3ch
+dd 0b4d9abcbh
+dd 0a3bf3141h
+dd 0ed83e396h
+dd 0c0ff3c93h
+dd 01747086dh
+dd 048aeab6dh
+dd 039aab3b2h
+dd 02e83b324h
+dd 0334f9e0eh
+dd 07e2c2290h
+dd 0dee96e42h
+dd 069832617h
+dd 00bb7dad2h
+dd 0611abad3h
+dd 077ff317ah
+dd 029208a64h
+dd 0ff4741f1h
+dd 076b7d07ch
+dd 0db8a7e4ch
+dd 05f1a9325h
+dd 0c814b9fbh
+dd 067febafah
+dd 0bc008e59h
+dd 0d7574be1h
+dd 01df049b3h
+dd 06733bb5dh
+dd 0efe07e55h
+dd 07c941f9eh
+dd 0fdd9ae6bh
+dd 05719df54h
+dd 05817548ah
+dd 0f4813435h
+dd 0069ee86ch
+dd 0e576f694h
+dd 03c6f93bbh
+dd 0e68ec984h
+dd 00eb63effh
+dd 01d6b328bh
+dd 019fbaf1eh
+dd 0dccfabc1h
+dd 06b1a0d4fh
+dd 040d84c51h
+dd 09ae4dbceh
+dd 0c074b8c3h
+dd 0f106f7f1h
+dd 0b8ec2f62h
+dd 0b527f650h
+dd 04469aff7h
+dd 056eda807h
+dd 072db80f9h
+dd 0ecfa821bh
+dd 0909cce0ch
+dd 0eeecbbadh
+dd 0f4df100ch
+dd 03633d4efh
+dd 0ec5849c8h
+dd 08b1ebb4ah
+dd 0a3fcb213h
+dd 02322e312h
+dd 01da389f2h
+dd 0154e0df9h
+dd 0ab422c04h
+dd 09b1da234h
+dd 0c3d469e5h
+dd 05cb4823bh
+dd 023eb689ah
+dd 03840e0ech
+dd 08efb29b6h
+dd 0b3f9a3feh
+dd 038bd623dh
+dd 0a58afbcah
+dd 07c3b37f5h
+dd 0d2b0dd5ah
+dd 0cd40a009h
+dd 0244332d1h
+dd 008160ebeh
+dd 0e96a0707h
+dd 0c25ead54h
+dd 0288727feh
+dd 0a92c111fh
+dd 079c50c09h
+dd 099ac2089h
+dd 0ae44a0edh
+dd 01185ac7fh
+dd 0a50e3633h
+dd 0a0b177c5h
+dd 05aaea626h
+dd 06448b5a6h
+dd 0965be5b5h
+dd 0536bd6edh
+dd 0b457314bh
+dd 0e3ca700eh
+dd 05050ab30h
+dd 0546ba214h
+dd 09d004261h
+dd 09e96ae34h
+dd 0abcbe069h
+dd 0650c96d1h
+dd 08206b2c0h
+dd 0d5194373h
+dd 0461ef3e5h
+dd 04854c1b0h
+dd 09be5e13eh
+dd 097ed9e27h
+dd 031e6633ah
+dd 0a48ea82bh
+dd 032b46726h
+dd 099a15e59h
+dd 05a975659h
+dd 0d73f865ah
+dd 0acd31f3bh
+dd 0c64a4997h
+dd 00adc9ce2h
+dd 03ed70211h
+dd 04f7c365eh
+dd 0db794ef7h
+dd 0e0436fb7h
+dd 08df83245h
+dd 02af1dbb0h
+dd 02f6d777ah
+dd 0c6dca567h
+dd 0715bdb63h
+dd 0c6d98559h
+dd 059f0e8bfh
+dd 09cf45fc2h
+dd 0b7063d6dh
+dd 034d9f78eh
+dd 0f58a9fb4h
+dd 09f304f6ch
+dd 08c84d05eh
+dd 038aa73d4h
+dd 0a5cc70c3h
+dd 0e234f8cdh
+dd 00d396d3dh
+dd 06c76daa6h
+dd 0d50eda10h
+dd 09829c5abh
+dd 069ce8a5bh
+dd 03f5e6c09h
+dd 011ca0edch
+dd 01c7ff2e7h
+dd 05374277ch
+dd 0fc2c3f11h
+dd 05e19402bh
+dd 00780d82ah
+dd 0a4027be6h
+dd 050a08e33h
+dd 0586e6915h
+dd 0dd8b23d5h
+dd 069034f57h
+dd 03f0f0edfh
+dd 0b0537491h
+dd 0373f80f6h
+dd 020df2d5fh
+dd 004854112h
+dd 066f01975h
+dd 03fb59eceh
+dd 0a1bd71d8h
+dd 0d401bc18h
+dd 0b92f4608h
+dd 0e3355e1dh
+dd 07db702cdh
+dd 0e5daea07h
+dd 0ff3ae187h
+dd 08a819393h
+dd 0ca17fe02h
+dd 0a25c0ac4h
+dd 02826df16h
+dd 0272ba6c8h
+dd 07255a979h
+dd 09ee353d8h
+dd 07fd60dcch
+dd 0c4f46ce0h
+dd 06bd9669bh
+dd 050a57fcbh
+dd 01529ec41h
+dd 0885f8fa3h
+dd 0e7cec144h
+dd 03b179389h
+dd 072324957h
+dd 0f94d357bh
+dd 0f2420dbah
+dd 073e4b2bbh
+dd 0cd4f0e20h
+dd 0dbbc14e9h
+dd 074217abbh
+dd 06fe3f7b4h
+dd 0ab1e0ec1h
+dd 0958de6b1h
+dd 0c33230d2h
+dd 00ddf9d94h
+dd 09e3ad2d6h
+dd 093afbb72h
+dd 05b57bc26h
+dd 01eb4b7b4h
+dd 0d1ca1302h
+dd 0e7eb8bd8h
+dd 0b9114c2eh
+dd 0386db21dh
+dd 018c61e70h
+dd 0d97b5ac5h
+dd 08cc398fah
+dd 0f9b09013h
+dd 011cead08h
+dd 0129c710eh
+dd 08bdbc9b3h
+dd 038d84315h
+dd 0b112695ah
+dd 0ea11366eh
+dd 02fc097c3h
+dd 0f1016ffdh
+dd 064c14700h
+dd 0842368a2h
+dd 0826971f9h
+dd 0fd896d29h
+dd 0ee9aaca1h
+dd 06be680a6h
+dd 0cd341c5ah
+dd 066cfb7e6h
+dd 035ec68f2h
+dd 0e769ff1bh
+dd 0a6c1ac0fh
+dd 01dbe02ddh
+dd 0223b3888h
+dd 0c4c45061h
+dd 0e0ec2036h
+dd 09bf557b1h
+dd 0772d3e17h
+dd 08abf090eh
+dd 008609c08h
+dd 0834108f1h
+dd 07cbedf34h
+dd 0844a5429h
+dd 084a25e19h
+dd 06082bb5eh
+dd 04f87e88ch
+dd 06f53eafah
+dd 0f8cef5eah
+dd 0bfff22e0h
+dd 02f0274e3h
+dd 03d5c1dech
+dd 07253aa3fh
+dd 0d9d29884h
+dd 041733522h
+dd 051729b17h
+dd 092941a0dh
+dd 02eec52e4h
+dd 042202d61h
+dd 0c5cfa159h
+dd 05abd04ech
+dd 0a63dca46h
+dd 0eb8ba6c9h
+dd 00d9b40c3h
+dd 0359c3999h
+dd 072535c82h
+dd 0b4f944efh
+dd 0fd890144h
+dd 0d90e990fh
+dd 050701fadh
+dd 0ec5fd8b7h
+dd 048f81945h
+dd 02e93ebb6h
+dd 0b4755247h
+dd 0edc9e4cah
+dd 0c1e86135h
+dd 0eae4342fh
+dd 084f5ea89h
+dd 051be01cdh
+dd 0669cfb09h
+dd 0c70386a5h
+dd 0b70f1c3ch
+dd 0ee2ed211h
+dd 056931cb9h
+dd 0170b0093h
+dd 0df299e43h
+dd 0447d2bach
+dd 0c5b50a65h
+dd 0ba8da42fh
+dd 0726bc65ah
+dd 01706c8edh
+dd 01d640f4fh
+dd 0f6382066h
+dd 0d1d08e5bh
+dd 0cfb22a94h
+dd 01f178af0h
+dd 0cc27dbedh
+dd 0058b9e57h
+dd 001f9a20ah
+dd 0faa39849h
+dd 001cef6efh
+dd 0f86575ddh
+dd 084b9a1ffh
+dd 0bd49598ch
+dd 0782b7c7ch
+dd 04759bebbh
+dd 0e67f396dh
+dd 01e139ab7h
+dd 0e958f35ah
+dd 0be72446ch
+dd 0c9daba9dh
+dd 09eaac2a3h
+dd 0c05cf26bh
+dd 09a7f7d4bh
+dd 0f0d0262eh
+dd 01f8e4594h
+dd 03e1a81c7h
+dd 0ca81a618h
+dd 0ffa46638h
+dd 0a5cb25c2h
+dd 0a9047cfdh
+dd 0640c1030h
+dd 076e7370ah
+dd 08aff110bh
+dd 0af1de81fh
+dd 0d533d898h
+dd 0b28e1256h
+dd 0fcebd595h
+dd 0daf624afh
+dd 094521636h
+dd 0446c950dh
+dd 0f5dfd009h
+dd 00dc40f09h
+dd 09c67a694h
+dd 04f2cbf57h
+dd 020d5f1d4h
+dd 087821ae1h
+dd 044c8f1f1h
+dd 0ccb081e1h
+dd 05b1049fbh
+dd 08cdef2e0h
+dd 08ca73d88h
+dd 0bad2c7dfh
+dd 033af19d2h
+dd 0154eb30bh
+dd 0734c0bdah
+dd 0fc086fedh
+dd 0dbd6ba8bh
+dd 0aa64c0a4h
+dd 0672a37dah
+dd 0a07ba56dh
+dd 0440e367bh
+dd 03123f9e9h
+dd 041b62799h
+dd 0c9952558h
+dd 04e8cebcah
+dd 034709da0h
+dd 0c4c20497h
+dd 09b777f01h
+dd 0d89eafafh
+dd 05a248498h
+dd 08263152dh
+dd 09e42c212h
+dd 0b6f29ee7h
+dd 0204c1153h
+dd 093588addh
+dd 065adb52eh
+dd 02e30248bh
+dd 0e342ea0fh
+dd 05f0ac381h
+dd 016d7a46bh
+dd 0b00485e4h
+dd 04ac08077h
+dd 0e1926bd7h
+dd 0fe7d60bfh
+dd 0666e7e7fh
+dd 055dcaa98h
+dd 045c93edbh
+dd 019fcde7dh
+dd 0e549202bh
+dd 069fe1144h
+dd 0e3098669h
+dd 0d7a77d9ah
+dd 014dffe07h
+dd 02dc65a11h
+dd 010c33574h
+dd 04ac390a0h
+dd 04bcb0c80h
+dd 0290a7cc6h
+dd 01def3d1ah
+dd 09ba64993h
+dd 00fbbadf4h
+dd 0978899cbh
+dd 00ac521dah
+dd 0ae9d923dh
+dd 038d4ce33h
+dd 02608b60fh
+dd 05a6c368bh
+dd 0636b5a53h
+dd 0ab23084ah
+dd 08833c60fh
+dd 0f561cbedh
+dd 0bbfb46e5h
+dd 0969b43abh
+dd 092a35bfah
+dd 065a851d0h
+dd 0066d553eh
+dd 0500eba38h
+dd 0833bcf3bh
+dd 0855515adh
+dd 0ce800172h
+dd 0234b6baah
+dd 06d9e3a61h
+dd 0878dc5d9h
+dd 08c8fb979h
+dd 0a8edda91h
+dd 0fbc0f74ah
+dd 03e8b2dedh
+dd 074897168h
+dd 0f2ac91a5h
+dd 052c48ffeh
+dd 0dc430c35h
+dd 0cdd0c9f2h
+dd 0fb8b8be3h
+dd 0a189ba91h
+dd 0f5e28990h
+dd 0465fa933h
+dd 00e0a7cd2h
+dd 000b82675h
+dd 0efe2ce16h
+dd 065de3c98h
+dd 0ac6a83a9h
+dd 0a262f013h
+dd 0f672a6d6h
+dd 039ecea8fh
+dd 0561aadd6h
+dd 0d19e7ba8h
+dd 049b00f25h
+dd 0363d22a0h
+dd 03256d7cbh
+dd 0e980a702h
+dd 0fa0d1ee2h
+dd 0bb85a894h
+dd 01c174672h
+dd 0c390eb86h
+dd 09a03e3d8h
+dd 096b32729h
+dd 03ad6cf2eh
+dd 0800a1cach
+dd 09e7d061ah
+dd 06acbd9d3h
+dd 0acc35ff3h
+dd 013724ed6h
+dd 0e4025830h
+dd 0f58fc8bdh
+dd 05252ef84h
+dd 0336dab47h
+dd 03ebe09b8h
+dd 0df43eed9h
+dd 0bf161039h
+dd 02a8a00e2h
+dd 032b2d900h
+dd 02be4e127h
+dd 0d3555275h
+dd 0cf2645dfh
+dd 0afdca93ah
+dd 03899682fh
+dd 041a63b3fh
+dd 031ffe40dh
+dd 0db231159h
+dd 0a9b25d5eh
+dd 0a43b498bh
+dd 03549710ah
+dd 0e717c6b0h
+dd 082ea0f86h
+dd 0f663ee9fh
+dd 02f2c5aech
+dd 0afe751feh
+dd 0ea92b8e1h
+dd 0453d654dh
+dd 0a1da795dh
+dd 02a0e1d43h
+dd 05201b717h
+dd 02181b6bbh
+dd 05fff3a1fh
+dd 099bb7836h
+dd 0be6775ebh
+dd 0c2c43882h
+dd 0c2d7748ch
+dd 034c3a298h
+dd 054eb8d73h
+dd 039acaa97h
+dd 0207fe982h
+dd 0e6090eaah
+dd 0728d45e8h
+dd 0f1a237b9h
+dd 010d3916ah
+dd 05f59f234h
+dd 00656d690h
+dd 0c0872c2dh
+dd 081baf69dh
+dd 0f65430dbh
+dd 055907e2dh
+dd 02b0ddbafh
+dd 0dcc5a7ffh
+dd 0376f0957h
+dd 019b00dceh
+dd 0e314ade6h
+dd 0ca6f391dh
+dd 027741da1h
+dd 0bbf2d503h
+dd 06eae59adh
+dd 098a54abah
+dd 052c3baf7h
+dd 0d9b761e0h
+dd 091fd66a4h
+dd 0ad063954h
+dd 066d61652h
+dd 00bd07463h
+dd 07a4101aeh
+dd 08547407ah
+dd 02b0e5847h
+dd 0f495e90ch
+dd 057e92c0fh
+dd 0284ecebch
+dd 028113f04h
+dd 0ea57012eh
+dd 0bd2d51a2h
+dd 062ef6cfah
+dd 005f3b164h
+dd 0d2040411h
+dd 0fc3871d0h
+dd 047fbb732h
+dd 0366be575h
+dd 001cde3dch
+dd 096ccec39h
+dd 0b45cad0dh
+dd 064ae18a4h
+dd 07ff53ab7h
+dd 0e0230656h
+dd 04b34064bh
+dd 0f783eb4fh
+dd 08ce07a95h
+dd 02e044d05h
+dd 0e3a25e8eh
+dd 05882f75fh
+dd 0e5bb4fe2h
+dd 09e846e40h
+dd 0b969bbf3h
+dd 0d328e946h
+dd 0c4828413h
+dd 046cd2912h
+dd 0c5ab2b0bh
+dd 0595ad6a0h
+dd 01c14e5f4h
+dd 0bfa78361h
+dd 0a3952d55h
+dd 04307c2a3h
+dd 097b5ef81h
+dd 04d5ae142h
+dd 068b8c8bch
+dd 0b214e48ah
+dd 0ddedbadfh
+dd 08b9e74fah
+dd 041452148h
+dd 0c57ffeceh
+dd 04e9d5d06h
+dd 04e80ce6ah
+dd 0cdb4967fh
+dd 0fe5c84e3h
+dd 034cfbd96h
+dd 0dbdb1899h
+dd 050c296cbh
+dd 0cad980ddh
+dd 092f53d54h
+dd 0bff5f666h
+dd 06ae6daf2h
+dd 06ea189cbh
+dd 0caf1c7b1h
+dd 0b55df1e2h
+dd 0478ee7d7h
+dd 0f99a6884h
+dd 0a28d6bd9h
+dd 0a6dfa527h
+dd 0eb7f4f9ah
+dd 03d6faafdh
+dd 03b6e2a4eh
+dd 0241adf67h
+dd 03173d544h
+dd 0a97229bbh
+dd 041789934h
+dd 00e910103h
+dd 087d14ec1h
+dd 090fef47fh
+dd 09a764e8ch
+dd 0104b750eh
+dd 0ff1ef233h
+dd 03c707824h
+dd 0341438abh
+dd 0eb08958dh
+dd 05575b3c6h
+dd 06f01c654h
+dd 05c134d08h
+dd 04f67d92ah
+dd 0a103eb83h
+dd 00f14a17ah
+dd 04b2173e4h
+dd 0dd62e57bh
+dd 0ef8f1e26h
+dd 04dc8d3f1h
+dd 00f073a8ah
+dd 09a2b2fefh
+dd 002c88972h
+dd 01a8ee5d9h
+dd 02ebeb22fh
+dd 0c13c0f9bh
+dd 094350a7eh
+dd 0cc806f5bh
+dd 08fe7e49ah
+dd 0732fd6c6h
+dd 031020a58h
+dd 02abefce9h
+dd 04686e30dh
+dd 0153e477dh
+dd 0a201b861h
+dd 0f0038aa1h
+dd 0de624e44h
+dd 06219d827h
+dd 00da96aceh
+dd 037301180h
+dd 0e4eebbcdh
+dd 0be86f022h
+dd 0f6376a2eh
+dd 09d9d54cbh
+dd 0cc54d23ah
+dd 07befeee2h
+dd 0efa4393ch
+dd 09bd540f9h
+dd 00e1f6830h
+dd 00f97dd07h
+dd 0eb1a94e1h
+dd 07c49ee00h
+dd 0deba70a0h
+dd 0c1b1d7e6h
+dd 0a8c3f6deh
+dd 091720e75h
+dd 01cb981abh
+dd 0e3ae0567h
+dd 0d23d4628h
+dd 0eae8fe7eh
+dd 0399fad71h
+dd 0660cbf73h
+dd 0972c3d76h
+dd 0c66ac7f9h
+dd 0f79c7080h
+dd 05683625ah
+dd 026f99948h
+dd 0fc1632d9h
+dd 0b2b89e37h
+dd 07273acceh
+dd 013155389h
+dd 0ee46ead7h
+dd 064b08cb4h
+dd 05aa3cbc6h
+dd 0339bfb6bh
+dd 0b0e425eeh
+dd 095450f76h
+dd 0ea212183h
+dd 0b6bdcaadh
+dd 0f62879f7h
+dd 0e06c4957h
+dd 0021835b1h
+dd 03f0a1e77h
+dd 06b7d70d4h
+dd 0bae74b9dh
+dd 0ab8b702dh
+dd 05ee0a237h
+dd 0f019955ah
+dd 093a91774h
+dd 06532054fh
+dd 0093c6c95h
+dd 0b3802649h
+dd 09d354c31h
+dd 0ef59e020h
+dd 03f82dc60h
+dd 057fae1ddh
+dd 0e55e2d9eh
+dd 0cf6b4011h
+dd 0fde70414h
+dd 074f082e9h
+dd 0e8f29496h
+dd 0f6ff285dh
+dd 01076ef1bh
+dd 06d285b7eh
+dd 0ba723513h
+dd 0f97d33e4h
+dd 0f5f33bdbh
+dd 0344f6d8bh
+dd 06c6c9c21h
+dd 04e61cf8bh
+dd 0f46e0af9h
+dd 092878f73h
+dd 03f5c5b9dh
+dd 05b1a93eah
+dd 09cf3d4ceh
+dd 0fb44f215h
+dd 0bb32a92ah
+dd 07f6bc319h
+dd 029dff5e5h
+dd 0381a117ah
+dd 08efae206h
+dd 0792dc2b8h
+dd 031737ab3h
+dd 041a2c09ah
+dd 0e8f19d93h
+dd 09dbe5462h
+dd 01941e8fdh
+dd 0231dfe98h
+dd 08ff899a5h
+dd 088c17a51h
+dd 04d2228b9h
+dd 0acf5cb8fh
+dd 0f2df6c8fh
+dd 0a586a1a2h
+dd 0c7135517h
+dd 054485672h
+dd 070f50815h
+dd 0d011adbch
+dd 0889fa36dh
+dd 0e8accc76h
+dd 0e67fbd4ch
+dd 0d53ef098h
+dd 06ec2135eh
+dd 04abc92deh
+dd 07768a64ah
+dd 05acc554ah
+dd 0651adf7dh
+dd 02fa8298eh
+dd 04e06dacdh
+dd 0dbb406ffh
+dd 0f265da13h
+dd 00f70e6a5h
+dd 02b38b2f2h
+dd 0e5fe9964h
+dd 0d08caacah
+dd 03d7ae5c5h
+dd 05798d7fah
+dd 00b7b74c2h
+dd 0a680aea8h
+dd 0c81e61b2h
+dd 0bc275bcdh
+dd 06749a228h
+dd 0f54d492eh
+dd 0881ac744h
+dd 0d0fe1800h
+dd 0a3921d14h
+dd 0dc7179a7h
+dd 0aec86dedh
+dd 0944ffedch
+dd 0db0b00f8h
+dd 03f097e91h
+dd 0de37953ch
+dd 0913f7a80h
+dd 01ff9d364h
+dd 0f73db0b0h
+dd 079738d30h
+dd 09bb1e054h
+dd 016435423h
+dd 0460facceh
+dd 0b84f003ch
+dd 0a39addc4h
+dd 0dd77b7d6h
+dd 009b770bah
+dd 037f23b4eh
+dd 020b3afefh
+dd 008043170h
+dd 0f09f0d52h
+dd 05be75fdbh
+dd 05e67477eh
+dd 0c4e6a88dh
+dd 0e7ee4b0ch
+dd 07e9ffd48h
+dd 0970e7d80h
+dd 0002f8d2eh
+dd 0bc323508h
+dd 0b7332512h
+dd 025d414e6h
+dd 0a69db02dh
+dd 0ce53b581h
+dd 0c386dd33h
+dd 03d9d410ch
+dd 0987f3441h
+dd 030d9bb2ah
+dd 0a3ba46beh
+dd 0033093d7h
+dd 03e98f02bh
+dd 006cf478fh
+dd 09be470d3h
+dd 07e7a8082h
+dd 02c4d86ach
+dd 039c82fafh
+dd 005bc6922h
+dd 0c0e68306h
+dd 022b4e57dh
+dd 02d3c0a7dh
+dd 06f9b7bbdh
+dd 0393a50a5h
+dd 0854cb920h
+dd 0f92a3a25h
+dd 012ad6208h
+dd 0c9a68586h
+dd 0248fb395h
+dd 0b66c3d0fh
+dd 040138eb5h
+dd 0ca8e6228h
+dd 09d540777h
+dd 0595e58ddh
+dd 0c764e2edh
+dd 0a5b4ddd5h
+dd 067135bdeh
+dd 0f55cc5b8h
+dd 062656dc8h
+dd 08b69d22dh
+dd 03c31dbdch
+dd 0c6f52a38h
+dd 067f26495h
+dd 09785e403h
+dd 00cb8b07bh
+dd 09e073187h
+dd 08b8cd268h
+dd 0424965d9h
+dd 0f7533355h
+dd 0b785e5edh
+dd 091ebc37eh
+dd 0fde5a57ah
+dd 00244c493h
+dd 035349e39h
+dd 0894c482dh
+dd 0db8016a7h
+dd 06177d267h
+dd 0ad870716h
+dd 06e8c29f8h
+dd 0951f3bffh
+dd 0a764f122h
+dd 0473c0cf2h
+dd 012df262ah
+dd 0b26e4d46h
+dd 0ed6588e7h
+dd 032226fd3h
+dd 09c97f6b4h
+dd 0c65ed804h
+dd 003cc7904h
+dd 0fbd22606h
+dd 0aac2abe1h
+dd 02ab42b80h
+dd 0da63b72ah
+dd 07df31090h
+dd 064799485h
+dd 0c951ecf2h
+dd 08163355eh
+dd 09b1c3bc0h
+dd 0eb3b2b0dh
+dd 09503a99eh
+dd 08ece9146h
+dd 0d36d1dbch
+dd 0e172475bh
+dd 09d397d85h
+dd 01a75f401h
+dd 0b7227c04h
+dd 059d9f22fh
+dd 0017ec303h
+dd 07558f65ch
+dd 04084350bh
+dd 0286fdf7ch
+dd 0af65165fh
+dd 0c35476e0h
+dd 0bd49d89dh
+dd 0099a0d4bh
+dd 0a2fb884dh
+dd 002345bf8h
+dd 03499e4bch
+dd 0fe4c95c5h
+dd 02e32de33h
+dd 003b9035bh
+dd 006f5aaa1h
+dd 0c1bd2561h
+dd 0eb000251h
+dd 07d234295h
+dd 0a80e2351h
+dd 07cdaf745h
+dd 0184df536h
+dd 05df7222ah
+dd 0d210e20eh
+dd 01cbbcbceh
+dd 01a27aef6h
+dd 004f760a1h
+dd 0a2d2e815h
+dd 038d168a5h
+dd 0fcb46c0fh
+dd 09615368eh
+dd 030e4275fh
+dd 077085a20h
+dd 0c33b82e7h
+dd 0c16124d5h
+dd 016d57a86h
+dd 06b87b96ah
+dd 02aa64737h
+dd 03f7b43d3h
+dd 084b5fdcfh
+dd 09df1a65bh
+dd 054a39dd5h
+dd 02a44ed9bh
+dd 0909d140dh
+dd 055a24614h
+dd 06a0080c3h
+dd 0c76cacaah
+dd 00f2b0b8ch
+dd 0527bf7dch
+dd 022e74235h
+dd 026f76702h
+dd 0eb5627d0h
+dd 0f62646b0h
+dd 0ddace0b9h
+dd 08c230470h
+dd 0bf89f91dh
+dd 014b97dc6h
+dd 0d0794e14h
+dd 08962abdfh
+dd 097f68e61h
+dd 000d8a0d3h
+dd 00c2ad0ceh
+dd 000fc5ac8h
+dd 07662f42fh
+dd 03eb6017eh
+dd 0f44fc869h
+dd 00f085a54h
+dd 09efd083ch
+dd 05237ced8h
+dd 09ed110ffh
+dd 058e8cd21h
+dd 0c3f4ca04h
+dd 012d6339eh
+dd 0e439b414h
+dd 06e0c204dh
+dd 0422bd561h
+dd 07c46d3c9h
+dd 004e835bdh
+dd 03e1bfe6bh
+dd 087f99beeh
+dd 0d6c9a771h
+dd 0268ae2f5h
+dd 035018f59h
+dd 0ebef10e3h
+dd 0d503190fh
+dd 01f4e43c4h
+dd 0611ec27fh
+dd 04cf8ec91h
+dd 0bb7968a0h
+dd 0f9627850h
+dd 03f52c332h
+dd 058f6eb13h
+dd 036ab4f34h
+dd 05330293ah
+dd 050cccb38h
+dd 06087279eh
+dd 0431f1d34h
+dd 0cfeeafe0h
+dd 073121bafh
+dd 02bb26131h
+dd 041a682cch
+dd 0824cd612h
+dd 09ff2625dh
+dd 0b9bc9cech
+dd 04359d63ah
+dd 07761e357h
+dd 04f5e7162h
+dd 03e48355ah
+dd 073f44e47h
+dd 0bbed259fh
+dd 044c930d8h
+dd 0a7a5b910h
+dd 0f748b9c9h
+dd 0dc9a54e3h
+dd 01ff33b53h
+dd 03cc0fa07h
+dd 0c5150dd9h
+dd 03bac0cf3h
+dd 06c691eaah
+dd 05571b0b1h
+dd 0883de003h
+dd 0a363f3a5h
+dd 062250025h
+dd 09d17db01h
+dd 0d86033e6h
+dd 02db0dcddh
+dd 01a099037h
+dd 0ae41298eh
+dd 0faad6344h
+dd 05bfbef7fh
+dd 0200c5915h
+dd 0eeb56c43h
+dd 03b7a17e4h
+dd 0d5ff6899h
+dd 0f4d51099h
+dd 00e1baccbh
+dd 076382845h
+dd 0d96b99eah
+dd 084320424h
+dd 0c14975edh
+dd 00521e19fh
+dd 07d5fab51h
+dd 0529e51f3h
+dd 04eb22bc2h
+dd 0f9b11792h
+dd 0716e81b8h
+dd 0cd20c723h
+dd 0bfdb109bh
+dd 0d11f1531h
+dd 0182ba400h
+dd 0b40cf388h
+dd 04784af12h
+dd 0c5bc4ffbh
+dd 0d21caaaah
+dd 0b2ac3e34h
+dd 081f45a0dh
+dd 0c0f670e1h
+dd 0e56fb796h
+dd 0fb42becfh
+dd 0f09cb5e4h
+dd 05affa052h
+dd 0866ce8a3h
+dd 0f4517a93h
+dd 08ab6d47ch
+dd 01986e07fh
+dd 0613f3805h
+dd 0426493d1h
+dd 09d267ef3h
+dd 0a6fb337bh
+dd 037e3df36h
+dd 01756cc29h
+dd 0ccfffc62h
+dd 0305c52d3h
+dd 085b6e9aah
+dd 0a6b98298h
+dd 09a4f0073h
+dd 0b187e9feh
+dd 0569cbca8h
+dd 0888142d4h
+dd 0ac9ea008h
+dd 0d11e5286h
+dd 00611ff3bh
+dd 0ca97bfe0h
+dd 05196262eh
+dd 0bb0b9869h
+dd 07cb0d270h
+dd 00eafa235h
+dd 0dd6e45f1h
+dd 06c74c399h
+dd 098a6aa8fh
+dd 0a9014bffh
+dd 04a2ab1b4h
+dd 02d4f6ce0h
+dd 0a9485b7ah
+dd 076fa28c4h
+dd 02944f6eeh
+dd 0e838b8beh
+dd 030dd54c7h
+dd 04b935c3ah
+dd 09286ec06h
+dd 08ccb5309h
+dd 0e9c49d04h
+dd 0607a698ah
+dd 0f6edb3c6h
+dd 033650849h
+dd 0d9abd2c7h
+dd 076c9ac11h
+dd 00d50c635h
+dd 09519eea9h
+dd 05fa20483h
+dd 0034a6ecch
+dd 02ef94ae5h
+dd 01a89aff7h
+dd 0f023b1f9h
+dd 0d9f61aech
+dd 036246360h
+dd 0e0c7d179h
+dd 005017608h
+dd 0272b18c0h
+dd 01055a153h
+dd 08dc4376dh
+dd 066ed901dh
+dd 03265438bh
+dd 07ca39005h
+dd 08baa2773h
+dd 07f0e5c90h
+dd 0896f4ea7h
+dd 0f06cc23ah
+dd 01d50c0c1h
+dd 0da53cbbbh
+dd 03ed00919h
+dd 0b976c4f9h
+dd 0655eb416h
+dd 0b6d9a8c7h
+dd 08f304168h
+dd 014bfe7adh
+dd 09ba5abbfh
+dd 0b91e81cah
+dd 0ea0efb63h
+dd 0349aa842h
+dd 0d54815b6h
+dd 0196c8372h
+dd 0ea2a3feah
+dd 03c474c27h
+dd 06153c987h
+dd 0fe2ec58ch
+dd 046d27a3ch
+dd 0416af897h
+dd 090bdd1d2h
+dd 019b56740h
+dd 0f15db7adh
+dd 069049e8fh
+dd 01728930ch
+dd 0a80ff960h
+dd 0f6c1a1c4h
+dd 08b0baa4eh
+dd 0b976f2aah
+dd 0bab67562h
+dd 07655b87eh
+dd 0ac8f8eb7h
+dd 07d734697h
+dd 06e3e9e39h
+dd 070ad9ebeh
+dd 0b8375f25h
+dd 03c800aa2h
+dd 00d353fd4h
+dd 0e0ddfee3h
+dd 0266df0edh
+dd 0b55852d7h
+dd 0b8b3ed12h
+dd 0b4a245e9h
+dd 0432574ebh
+dd 0f4a8f197h
+dd 02882b274h
+dd 0d5855fbbh
+dd 0e9671945h
+dd 0b0a45c76h
+dd 089779329h
+dd 03b60219ch
+dd 05e1aeaf7h
+dd 06ba2bdfah
+dd 005f31a88h
+dd 076ac760eh
+dd 02cd46e9ch
+dd 051dc62b5h
+dd 0f81554cch
+dd 0cbfd9e7dh
+dd 09922d7e3h
+dd 0fb7dfa20h
+dd 0d9d22145h
+dd 0a7697580h
+dd 09af4243fh
+dd 09ba89fe4h
+dd 0db295140h
+dd 0b2c4b55ah
+dd 0713b3dbch
+dd 0041c7120h
+dd 0120eb360h
+dd 0ff9d74ebh
+dd 0d53a93fdh
+dd 0b4633766h
+dd 0c67c262eh
+dd 054e0edb4h
+dd 037920694h
+dd 0062dfc73h
+dd 0f7eb91edh
+dd 001b4f04eh
+dd 0caaf40f3h
+dd 01ad8ec2eh
+dd 0a64de8cfh
+dd 05a286d49h
+dd 057c87e92h
+dd 08f0d95aah
+dd 0fc29a37ah
+dd 07fe7aae2h
+dd 0b4858120h
+dd 03d30f32eh
+dd 02af11f7dh
+dd 0b4a89da2h
+dd 0a15c4509h
+dd 0b08f52b0h
+dd 0ee796422h
+dd 099a752d0h
+dd 0313ee151h
+dd 01873b7b4h
+dd 0c496ca60h
+dd 0e54e35eah
+dd 09fd9fe28h
+dd 0d574d5fch
+dd 063f28de2h
+dd 08bf195c8h
+dd 0194a1f89h
+dd 07e8e34dah
+dd 0deb03430h
+dd 066d4700ch
+dd 0646a289eh
+dd 0462804deh
+dd 0f3876d43h
+dd 05c839e2eh
+dd 05a2799d8h
+dd 0c1e01d09h
+dd 0383bdf3ch
+dd 02dbb4e3dh
+dd 0aa8dafc9h
+dd 07c3e6f8dh
+dd 0a9782c5bh
+dd 085af3518h
+dd 0989cbae0h
+dd 0b911e912h
+dd 072c5b51ch
+dd 07300572ch
+dd 05bccf756h
+dd 0e9646f37h
+dd 003e9b155h
+dd 08407c710h
+dd 05929892dh
+dd 094e05b57h
+dd 0144034d0h
+dd 04161c93ah
+dd 027e1a193h
+dd 0f839914ah
+dd 0bb5dc4d8h
+dd 0cc5a99d0h
+dd 07f3550c4h
+dd 010e1e7f8h
+dd 032fa2c60h
+dd 0ab5f9902h
+dd 0161dcd92h
+dd 0fd2941e5h
+dd 04bbc6048h
+dd 0566366b4h
+dd 0d4ec8e44h
+dd 0bd792529h
+dd 0b8267d00h
+dd 0b44ec0d0h
+dd 0883d3918h
+dd 0285f6217h
+dd 0d14a80b3h
+dd 05a6d474eh
+dd 000ca86bbh
+dd 0da861bc1h
+dd 06eb27e9fh
+dd 04d576ac0h
+dd 04210c886h
+dd 0eb3d9e8bh
+dd 0c0c910f0h
+dd 03dadf213h
+dd 01a232c05h
+dd 05c681950h
+dd 0fa07f75eh
+dd 00101287ch
+dd 05c9d5187h
+dd 07867cefeh
+dd 04ddf1c6bh
+dd 06b172c3bh
+dd 086ba76e2h
+dd 0def4365ah
+dd 0e794d928h
+dd 00487fff6h
+dd 06a58557fh
+dd 05aa84c56h
+dd 04f7daa1dh
+dd 003c93ae7h
+dd 0ab350366h
+dd 03e329308h
+dd 083300d10h
+dd 06dc261aeh
+dd 0b3038de0h
+dd 0c9568828h
+dd 03444dcf2h
+dd 024e1f566h
+dd 0fd382635h
+dd 07c933e4bh
+dd 0f0b64a46h
+dd 03e493cc6h
+dd 08bb9dd88h
+dd 04a111e4fh
+dd 0482421b8h
+dd 053b3b915h
+dd 042539840h
+dd 09b4dc50ch
+dd 08383d461h
+dd 094145f46h
+dd 0bc13ce03h
+dd 03aaa3ee1h
+dd 0cfd3a1e9h
+dd 0e4b68dbbh
+dd 078f9eb8eh
+dd 0e4960fd8h
+dd 06e3ccd83h
+dd 06f25afb4h
+dd 0d0b80067h
+dd 0c27f1b4eh
+dd 06afcfefdh
+dd 0260f6f60h
+dd 056c3e17eh
+dd 0235c8a2fh
+dd 059e1c9dfh
+dd 0bec5220dh
+dd 055b4a390h
+dd 0ad78b705h
+dd 0ae423949h
+dd 0469622b3h
+dd 09b47aa84h
+dd 009dd807fh
+dd 0750ecf5ah
+dd 0504399d6h
+dd 08ba6c506h
+dd 08d4d61cah
+dd 02468e40ch
+dd 06acd3042h
+dd 08b9c5be7h
+dd 077b91d69h
+dd 03a0a3573h
+dd 030cfec86h
+dd 07c86d06fh
+dd 0d63ad670h
+dd 0f0b5955dh
+dd 0bc37a3fdh
+dd 0feb139bah
+dd 076f58347h
+dd 0ce0839e7h
+dd 011cdea8bh
+dd 08a1ec6edh
+dd 016769f1fh
+dd 06215395eh
+dd 0a212ed50h
+dd 06e036072h
+dd 02a253398h
+dd 0e03c8fa7h
+dd 0d5489b37h
+dd 03a321555h
+dd 096e9c214h
+dd 049b47c3bh
+dd 086c315c3h
+dd 05be3fb3bh
+dd 051b0d40ch
+dd 06a8a885fh
+dd 0e1268a65h
+dd 094c2461ch
+dd 0f770bb2fh
+dd 0bb7c6d9eh
+dd 0dcb542fch
+dd 021776122h
+dd 020677d43h
+dd 0b32568f1h
+dd 07d7a8ad8h
+dd 05bf32f7ah
+dd 08f355881h
+dd 0957bade2h
+dd 09a007b52h
+dd 09a994d86h
+dd 09b3c4a28h
+dd 0947fe6f8h
+dd 0fdfd88dbh
+dd 0bb7fa086h
+dd 08ef28a63h
+dd 0ba463140h
+dd 00450653ah
+dd 00ac373b0h
+dd 0c1d9c8f4h
+dd 018cc77c1h
+dd 069912ab9h
+dd 003f76367h
+dd 09546861bh
+dd 042d86f7dh
+dd 0162498deh
+dd 0d39793aeh
+dd 06d3c1861h
+dd 01f1e6a16h
+dd 0bdd6dd53h
+dd 0690ccee4h
+dd 0eb38a7cbh
+dd 071f2b5c8h
+dd 0275e457eh
+dd 0d7a1d761h
+dd 042f9d5afh
+dd 08d92889ch
+dd 09554be71h
+dd 04058bfb6h
+dd 09acab37eh
+dd 0302e7368h
+dd 0b1a65770h
+dd 0c5f24fcch
+dd 0834f4670h
+dd 0173c3650h
+dd 00cf0464dh
+dd 0274ee842h
+dd 07e858417h
+dd 0e5972f99h
+dd 09918bcedh
+dd 003b9b2f0h
+dd 0cd6d929fh
+dd 021be9046h
+dd 087974621h
+dd 0567e2c38h
+dd 08ea88fdeh
+dd 0f0ef0fbbh
+dd 0165fb018h
+dd 00f312119h
+dd 0b9ff7b12h
+dd 0f11eaa17h
+dd 0d267a38eh
+dd 0d04e6e01h
+dd 09739d614h
+dd 0c9a588d0h
+dd 0b4b6deb8h
+dd 0844be646h
+dd 0f5b1c3b8h
+dd 0cc7de1d0h
+dd 0d44eca6ah
+dd 0cdbec201h
+dd 078f5806eh
+dd 01dd640e7h
+dd 082e128fbh
+dd 00fa6fda0h
+dd 08fc417b6h
+dd 086382341h
+dd 02b1d8126h
+dd 06627638fh
+dd 07a4161cdh
+dd 073760c39h
+dd 063ffb5e6h
+dd 0ecf78dd1h
+dd 046f1cca6h
+dd 024c23a83h
+dd 020f0c23bh
+dd 0fdef2f63h
+dd 07f7e1c86h
+dd 01c72fcbbh
+dd 000738cbbh
+dd 011cb9752h
+dd 05a7fdc3fh
+dd 02d8454f3h
+dd 02c52d86bh
+dd 091b80634h
+dd 095ae9f08h
+dd 03c51bd91h
+dd 07d80c1cch
+dd 0cf9a9718h
+dd 05caefef1h
+dd 098b23265h
+dd 093009f71h
+dd 0217997bfh
+dd 0644a7bbdh
+dd 010662c10h
+dd 0b2b7132ah
+dd 0ad976c5ch
+dd 0e9228db5h
+dd 0fe9da2feh
+dd 007c69567h
+dd 018259174h
+dd 08297ee06h
+dd 0f7286991h
+dd 09a921f67h
+dd 0bc640189h
+dd 03441f397h
+dd 083c097c0h
+dd 04525bebbh
+dd 085b09918h
+dd 0507400dah
+dd 009960caeh
+dd 06e0ade87h
+dd 001565354h
+dd 03baa4710h
+dd 0a8de464ah
+dd 0481f47b1h
+dd 00dc99fd0h
+dd 088b97322h
+dd 0992f6d2bh
+dd 03d93d465h
+dd 061190d81h
+dd 0bce953e3h
+dd 0c331eb15h
+dd 0f001fc4ch
+dd 01dc7c14bh
+dd 0f25b6fc4h
+dd 0e1c53756h
+dd 0059eec1ah
+dd 018ebeacfh
+dd 03a0052deh
+dd 0d4b1efd5h
+dd 0b81041a0h
+dd 0b1aebaeah
+dd 03b4da447h
+dd 0cf757fc9h
+dd 08242e0b4h
+dd 0bcc83dcbh
+dd 0c3e77227h
+dd 07f4995e1h
+dd 0aa5d3dddh
+dd 01d814b91h
+dd 013b58fbbh
+dd 0baec3192h
+dd 00ad97d3ah
+dd 0732a9f31h
+dd 098782d39h
+dd 0e7f13dbch
+dd 0504f8e03h
+dd 051897649h
+dd 03bf9d520h
+dd 08237cd97h
+dd 028828595h
+dd 0b9ee3bf7h
+dd 046a44bc1h
+dd 00d26b8aah
+dd 03f2e3265h
+dd 09c9a94aah
+dd 0a34b1b7ch
+dd 09aa352aah
+dd 0432cf6c1h
+dd 0e1348852h
+dd 0bf8f1e0ah
+dd 0741ef5e5h
+dd 09f76a9b9h
+dd 044891623h
+dd 09a21a7ach
+dd 0a86234f1h
+dd 05c465753h
+dd 056a91aebh
+dd 02d0bf138h
+dd 0a90f27d8h
+dd 077afb5c9h
+dd 0c88c3d44h
+dd 0fe2539b5h
+dd 02970a997h
+dd 0140fc893h
+dd 05b16cbb4h
+dd 07158398ch
+dd 02f177b5bh
+dd 04313188ch
+dd 0f75ca27bh
+dd 03677828eh
+dd 0c385cd4fh
+dd 057c32ed2h
+dd 0b4ecb7d4h
+dd 055e5c441h
+dd 094172aach
+dd 08db38ec2h
+dd 05fcac379h
+dd 0101c98e7h
+dd 0ca86d9b2h
+dd 01ab184e6h
+dd 0b619d216h
+dd 0a9cbd0b6h
+dd 0c95cbd04h
+dd 0c722c5dbh
+dd 01199c862h
+dd 0e428fcbfh
+dd 098e34ea1h
+dd 006ea3e3ch
+dd 0b04512a4h
+dd 05b43fb4bh
+dd 01c46e0edh
+dd 03eb16131h
+dd 0ada5ecc3h
+dd 024a41e94h
+dd 0d9c2e399h
+dd 0f0f3545ch
+dd 0d77b5dbdh
+dd 04b81e0f9h
+dd 0fcd3e349h
+dd 0164b6c9ah
+dd 0c24f2da4h
+dd 088d45f1eh
+dd 069eefe2eh
+dd 0fd681d05h
+dd 0a297964ah
+dd 08c0441a8h
+dd 079743d23h
+dd 09e3f44f5h
+dd 03aa1a40eh
+dd 0e6b4676eh
+dd 05f6af92fh
+dd 0e8f90b57h
+dd 0a744a033h
+dd 0cc5782b9h
+dd 04789c5abh
+dd 0252a177ah
+dd 00dc306a9h
+dd 0c2532335h
+dd 00376439fh
+dd 0f21063adh
+dd 08d40f57ch
+dd 0bbf44bebh
+dd 022bd5dc4h
+dd 0977078a4h
+dd 0be89f289h
+dd 0ae6e5b5fh
+dd 0fcfa944ah
+dd 0f7ee212fh
+dd 017101e7ch
+dd 0bbf10b6dh
+dd 0aaff5e42h
+dd 07ae8fe1eh
+dd 04ce269f0h
+dd 03f42d904h
+dd 08fad3d25h
+dd 09545c1e2h
+dd 0e3b952d9h
+dd 046b02992h
+dd 063350f48h
+dd 01c0dced9h
+dd 01d22f702h
+dd 0d9a9a56fh
+dd 0edcad587h
+dd 00e11eb7ch
+dd 0bee9c4c8h
+dd 00670ef7ah
+dd 0ea5d1b08h
+dd 02993095ch
+dd 0ce70f50ah
+dd 058aafcdeh
+dd 0e18dc0ach
+dd 075437589h
+dd 0f7ec6905h
+dd 074772575h
+dd 03d10c0b0h
+dd 03ecd7258h
+dd 024abeb2dh
+dd 072eb256eh
+dd 07f175e98h
+dd 0add18ed2h
+dd 0030b2973h
+dd 056067478h
+dd 03e638b07h
+dd 0e1f65361h
+dd 009d74939h
+dd 03566dc6ch
+dd 0b69ef937h
+dd 03316d447h
+dd 0984941e7h
+dd 0c0e7dc0eh
+dd 059afcb3bh
+dd 02ef96b4eh
+dd 0f769aa20h
+dd 095ffbca2h
+dd 0c93a8ac2h
+dd 083e012d1h
+dd 0e41eab88h
+dd 0f4938fd6h
+dd 09bc9d75eh
+dd 042a425b1h
+dd 00c9060ceh
+dd 08852997dh
+dd 0287f8ddbh
+dd 0117be3e6h
+dd 01c70fe8bh
+dd 07fff42adh
+dd 0841a0847h
+dd 0fea9793bh
+dd 02ebd11c2h
+dd 0629a7ee5h
+dd 06fcf5ffeh
+dd 07b811f60h
+dd 00652dfa1h
+dd 0325e0a40h
+dd 08acc5306h
+dd 086a8dbeah
+dd 020af9415h
+dd 05861d8b7h
+dd 0e182c1dch
+dd 0904f89a8h
+dd 0b479c391h
+dd 0dabb0ca0h
+dd 06c98c57eh
+dd 04b2457d8h
+dd 06d3fc95eh
+dd 0e9e4f731h
+dd 06969ec6eh
+dd 0a6949be4h
+dd 08fd850f0h
+dd 0e6eb5b85h
+dd 063cc1a99h
+dd 09bbed0b8h
+dd 0421dbeb5h
+dd 02a372e21h
+dd 0fa916e82h
+dd 0a831d029h
+dd 0e8ec9516h
+dd 054240426h
+dd 04a1c3480h
+dd 0aceca97eh
+dd 0fc4ccf5eh
+dd 00c901ae3h
+dd 0488b5821h
+dd 044832029h
+dd 0536ba217h
+dd 089d6540ah
+dd 073700f80h
+dd 0a058edcch
+dd 05fa2a21dh
+dd 08226fdeeh
+dd 0c29f7d2bh
+dd 09bd40a27h
+dd 0ca778f68h
+dd 0ba0d0d9fh
+dd 00c3d7ab3h
+dd 03fb1f082h
+dd 0a03f9983h
+dd 08e2920e1h
+dd 0cad32ec3h
+dd 003067890h
+dd 014111e80h
+dd 0fe1dee56h
+dd 0b2c53b49h
+dd 0bac5225eh
+dd 0df65335ah
+dd 0fe647c53h
+dd 09290c105h
+dd 078d74e4bh
+dd 0cf666020h
+dd 033a02f44h
+dd 00e08aa2fh
+dd 00173754dh
+dd 0bedf78f9h
+dd 05a74b92ah
+dd 033b79ce1h
+dd 076ad1951h
+dd 03c7f2c88h
+dd 008a53289h
+dd 068a77e24h
+dd 09bb55fech
+dd 0de6bf261h
+dd 0ee2d9de0h
+dd 02d642462h
+dd 06ac36844h
+dd 0f55e9321h
+dd 01765ed96h
+dd 0a350c969h
+dd 093715767h
+dd 0cce45d1eh
+dd 0dc94b5fbh
+dd 01aa20138h
+dd 027e96186h
+dd 0dd5e84bah
+dd 01d72122dh
+dd 057b7e8f8h
+dd 07b81afb3h
+dd 0757c1731h
+dd 04d3738bch
+dd 0f426d79fh
+dd 0823eb716h
+dd 0a2de037eh
+dd 06716d7fch
+dd 0937475b4h
+dd 060872c82h
+dd 0f13ef51ah
+dd 0cfca5eb4h
+dd 039611320h
+dd 0be7a5d46h
+dd 0b1cadaf1h
+dd 04134bf42h
+dd 06aac1880h
+dd 017501207h
+dd 0a85e5c74h
+dd 01352563dh
+dd 06de589e4h
+dd 0d364f4a9h
+dd 0fc8f1a51h
+dd 0b43dd8f1h
+dd 04be57f82h
+dd 0da7bd100h
+dd 098889515h
+dd 0ebc2b5fbh
+dd 0db45fd7ch
+dd 0648fef8ah
+dd 07269a9e6h
+dd 038fefb6ch
+dd 0409b21ffh
+dd 094d8a6b0h
+dd 0e9b81809h
+dd 0b25d8333h
+dd 004981ed0h
+dd 0936f9aa5h
+dd 069d2a1cfh
+dd 01bd52a1fh
+dd 0690d5909h
+dd 0307c923dh
+dd 0e77b0f5ah
+dd 07bd63195h
+dd 09083109eh
+dd 0019f3761h
+dd 05ddacb9eh
+dd 0b85b13d2h
+dd 0b83fa217h
+dd 02744382bh
+dd 03d4693deh
+dd 0f6f925cch
+dd 0418d78d1h
+dd 07969899eh
+dd 0c5312d44h
+dd 0d0a00c6ch
+dd 07b52c003h
+dd 08c8ea723h
+dd 0a9d7d5aah
+dd 000ff0ee8h
+dd 0bad42b4ch
+dd 0ba591551h
+dd 0722ab16ch
+dd 00dc0496fh
+dd 0f9751d3bh
+dd 045f019dah
+dd 05097114ch
+dd 069da3110h
+dd 0ef22837dh
+dd 08a00800dh
+dd 0396e0e30h
+dd 0598490fbh
+dd 0c20b0780h
+dd 05551e4f1h
+dd 03eac3ad7h
+dd 037ccd1e0h
+dd 0ef29cf07h
+dd 0f4b23de8h
+dd 0a7934b5dh
+dd 0740c9ae4h
+dd 0b4174629h
+dd 0391b90b1h
+dd 01fef5cdch
+dd 07d82d3eah
+dd 09c3362a4h
+dd 073644044h
+dd 056ea0aeah
+dd 09ab69f29h
+dd 03de007d0h
+dd 0d5964648h
+dd 06f507374h
+dd 09dfa51c7h
+dd 0de97bcf2h
+dd 056e8443ah
+dd 0ae8ecd75h
+dd 06c8ea634h
+dd 065a51642h
+dd 05469f02dh
+dd 0d982d860h
+dd 06812d97eh
+dd 01c0743c3h
+dd 0d6a5dc6ch
+dd 0ef45f32eh
+dd 0d7eb8ad3h
+dd 0bf9b814fh
+dd 07ba25b43h
+dd 02e501a9ch
+dd 01f90545dh
+dd 01358660fh
+dd 0f58a6754h
+dd 06dbb7829h
+dd 0fa71cd4fh
+dd 0b64094fdh
+dd 0bbcbbd08h
+dd 0fdb98276h
+dd 058f9cc5ah
+dd 0db60868ch
+dd 066935131h
+dd 0f9d1f892h
+dd 02c79a84bh
+dd 0aa0793a1h
+dd 0d40c9109h
+dd 0874c37e2h
+dd 028616808h
+dd 071241822h
+dd 0ce3e02afh
+dd 041a85acfh
+dd 09e908a2eh
+dd 0b28a6d6eh
+dd 0c8791ab7h
+dd 04418bdf5h
+dd 0853feafch
+dd 0b68c2b66h
+dd 03f0fdaf9h
+dd 0a161a9f9h
+dd 00b5f3e1dh
+dd 0a81400e5h
+dd 058c3df40h
+dd 07237fbc7h
+dd 0670d0125h
+dd 02d137ff5h
+dd 0df8363adh
+dd 03347cdd6h
+dd 036ffbfc2h
+dd 09a9ded10h
+dd 037c03206h
+dd 0ac4a1fb5h
+dd 0b5dd536bh
+dd 0a052b071h
+dd 01aa1dd7fh
+dd 06c682d25h
+dd 047aa26d8h
+dd 0a9b12cebh
+dd 0f781d099h
+dd 03065187ch
+dd 001502660h
+dd 0e881aba1h
+dd 0d7f1661ch
+dd 0cf34537bh
+dd 0d0e89ce7h
+dd 06fbdf04fh
+dd 0ad8aaa2bh
+dd 0bd33330ah
+dd 060f3a4abh
+dd 0c8b41838h
+dd 075dcd8f9h
+dd 0122c6d49h
+dd 07a50a948h
+dd 0e80e8a0fh
+dd 061aac714h
+dd 04981b03ch
+dd 067b6532fh
+dd 0d9c94ea6h
+dd 02416968fh
+dd 022809d0eh
+dd 0aa35f63eh
+dd 0fd497b82h
+dd 0cd9046f9h
+dd 025127fbch
+dd 06fc54146h
+dd 0e49f2ceah
+dd 0a40662a4h
+dd 077a0ec7ah
+dd 00439489bh
+dd 0df12abffh
+dd 083e1705eh
+dd 043836e45h
+dd 01220546ah
+dd 0853b04edh
+dd 0e02bc31ch
+dd 06c09924fh
+dd 06930e909h
+dd 0ec91f6ceh
+dd 0cc4dd355h
+dd 0f2de10f8h
+dd 0930f45f9h
+dd 0260429b9h
+dd 0cb5a24cbh
+dd 0716641b2h
+dd 006efd92fh
+dd 02c5ee0bah
+dd 07b1fb33eh
+dd 08031034dh
+dd 0e1bd2422h
+dd 0ed0cbb6ch
+dd 01e0e1bc2h
+dd 0f258d500h
+dd 0cf82da15h
+dd 0eae50b42h
+dd 0e08d650eh
+dd 0f0411c7ch
+dd 0112a98f4h
+dd 0cc615ad8h
+dd 032b7bef3h
+dd 0009586a3h
+dd 0c019e528h
+dd 0ecd35202h
+dd 02694bc1bh
+dd 054e185e9h
+dd 0680e75c5h
+dd 027936baeh
+dd 01a2f15dfh
+dd 0d2e6fb7fh
+dd 048e4cd0bh
+dd 0e3d98315h
+dd 0ff4b19cdh
+dd 012a8c85dh
+dd 0d018e642h
+dd 02735f546h
+dd 0310d1a9bh
+dd 0da9cedfbh
+dd 09de086b0h
+dd 0475b13e4h
+dd 03e5412b3h
+dd 09ef702f8h
+dd 0ddb54595h
+dd 0d0ab18eah
+dd 08cfdb6a5h
+dd 0d93a728fh
+dd 0261d56e9h
+dd 04324263bh
+dd 0ac951782h
+dd 0e9756867h
+dd 0cf76ece3h
+dd 025646295h
+dd 0e7888a87h
+dd 005aed4d1h
+dd 08cba1f20h
+dd 0269c66ceh
+dd 08692d24fh
+dd 083c77a09h
+dd 0369fd986h
+dd 042f81400h
+dd 0bfdca907h
+dd 07c0df624h
+dd 0e254f282h
+dd 084d511dfh
+dd 06bfd01a9h
+dd 077a240adh
+dd 0f25223d6h
+dd 0692c098bh
+dd 05be572cch
+dd 0a56ac784h
+dd 0998d1791h
+dd 000a866f5h
+dd 0a65b21c8h
+dd 072607310h
+dd 0f49849bfh
+dd 0c4659b35h
+dd 017c14360h
+dd 0df003bcfh
+dd 046b5c001h
+dd 042d627dch
+dd 05857feedh
+dd 04757fd9ah
+dd 04c481f0eh
+dd 036a96897h
+dd 0b1697f83h
+dd 097e276eah
+dd 0a5f20e2ch
+dd 0ff4ab052h
+dd 08faebc26h
+dd 0179828fah
+dd 0b04cdc80h
+dd 03ce870cfh
+dd 0ec10d3fdh
+dd 0649ccca5h
+dd 0ad8d7c5ch
+dd 0223f5506h
+dd 0cf6b6ba8h
+dd 0818fc143h
+dd 08a70c6ddh
+dd 042e91e4eh
+dd 08e785498h
+dd 098860ed7h
+dd 00ee918d4h
+dd 07a9192d6h
+dd 08ed46ae8h
+dd 0c8a856fch
+dd 0bc943519h
+dd 00e624302h
+dd 0b517f3beh
+dd 0aec3a37bh
+dd 0332c4ccah
+dd 021331d55h
+dd 08628d4deh
+dd 0e74e80d8h
+dd 093464981h
+dd 0c5aaf654h
+dd 05570cd0fh
+dd 0d2ad48b4h
+dd 08309c92fh
+dd 00b467a7dh
+dd 0992d8c80h
+dd 04c848e05h
+dd 02faa4241h
+dd 0f098b827h
+dd 0b554c065h
+dd 0b95ad922h
+dd 0a5011a74h
+dd 040791c76h
+dd 0a07ae2d4h
+dd 0dc9f18feh
+dd 04866424eh
+dd 03a094bb7h
+dd 0479cd4cfh
+dd 031e83c35h
+dd 0af8690aeh
+dd 04b4e370bh
+dd 046e3c93fh
+dd 05f11b4ceh
+dd 0bb57a2fdh
+dd 0af08df43h
+dd 0020bef3fh
+dd 0568ad4a4h
+dd 07e3243d9h
+dd 0c3fa6f32h
+dd 0e202e3ach
+dd 01cd731a4h
+dd 0a418fdb8h
+dd 07cad0bc6h
+dd 0d134df14h
+dd 062f8b3f7h
+dd 039c19bcfh
+dd 0936de626h
+dd 0b0335b64h
+dd 00278e363h
+dd 014cff5e0h
+dd 0f01fd25fh
+dd 04facf62eh
+dd 037155406h
+dd 09bd1a676h
+dd 00372b717h
+dd 063581c36h
+dd 0afda50b4h
+dd 06ea14286h
+dd 0c7ab0bc9h
+dd 0db4c35c6h
+dd 03c4ca8b6h
+dd 05e66e649h
+dd 0749f6151h
+dd 0eff99626h
+dd 08126a35fh
+dd 0bdaa00ebh
+dd 093f9090fh
+dd 07fdcdc09h
+dd 08fe2ba1bh
+dd 0f9a7cffch
+dd 052906f25h
+dd 07e65973fh
+dd 066be0190h
+dd 0cd5f8cech
+dd 015c150e3h
+dd 02d2c0968h
+dd 048ab301ah
+dd 0827a49e2h
+dd 0c813d573h
+dd 049f8784eh
+dd 047fc8792h
+dd 05a88a78ch
+dd 08e440384h
+dd 0e6e01cf1h
+dd 0571ef749h
+dd 0025d6603h
+dd 04058ee82h
+dd 01a37f3c1h
+dd 014d88141h
+dd 0e2fe6aa0h
+dd 02b7df8d2h
+dd 063bbffe0h
+dd 0a2690547h
+dd 0561a6c29h
+dd 07eb6cd4fh
+dd 08fdda00ch
+dd 0f874d8c8h
+dd 0143ba04bh
+dd 014b3902ah
+dd 05b6162c1h
+dd 09df4a0beh
+dd 06ed03199h
+dd 0181c1e54h
+dd 09e818232h
+dd 0a60625d3h
+dd 0bffb0ed5h
+dd 086120596h
+dd 094e01744h
+dd 0b6eaf683h
+dd 090ac0e30h
+dd 0a6cac643h
+dd 0b54a9ef7h
+dd 0a7ff29a5h
+dd 0a5b5ee5ah
+dd 02810da38h
+dd 0ab53500ch
+dd 0c48d0b97h
+dd 068d49c0bh
+dd 0c3346f98h
+dd 0c2be97c1h
+dd 0984694e1h
+dd 0e70de754h
+dd 024e50260h
+dd 0c64f5e2dh
+dd 0e15d6adah
+dd 05734bed1h
+dd 033789bf8h
+dd 0e1efa6fah
+dd 0e4db7d07h
+dd 0da342fd3h
+dd 0a6983ba7h
+dd 030d91024h
+dd 02508a8fch
+dd 0dc2abddfh
+dd 08b7dc13dh
+dd 07ee81bb7h
+dd 0108f45cfh
+dd 0a7daac93h
+dd 09859a298h
+dd 0a8458ad4h
+dd 0bb04050fh
+dd 0e7e33364h
+dd 0701a46cfh
+dd 0e433869bh
+dd 0131e7d7eh
+dd 079a80801h
+dd 05d9bbdbeh
+dd 0b7aceaabh
+dd 0260cb226h
+dd 0a3cee4e6h
+dd 04fb24489h
+dd 0c2f622d3h
+dd 0b69f2c4ch
+dd 018e55ac9h
+dd 0f3f0ae8ch
+dd 0c0c4186dh
+dd 0cefa80dch
+dd 0e2f4bce8h
+dd 092b5798dh
+dd 09ebf6a24h
+dd 04f5a6f13h
+dd 0146c9ea9h
+dd 09d248186h
+dd 07ecf788fh
+dd 0e5ed6f59h
+dd 0cfa8d24eh
+dd 0fcf2fc57h
+dd 0cf5009ffh
+dd 080a9c682h
+dd 056e51f05h
+dd 0ed3b26a1h
+dd 096f9b35bh
+dd 00583db8eh
+dd 0600d6524h
+dd 0b57eb0b8h
+dd 015da4fc0h
+dd 042847fcdh
+dd 04e14f472h
+dd 05b042d47h
+dd 058e44587h
+dd 0cf158d12h
+dd 0755ce4abh
+dd 0b0e3d19ah
+dd 0956348fdh
+dd 0f91c61efh
+dd 0bff9f9e3h
+dd 0d412086dh
+dd 04a04b976h
+dd 0d1c128a2h
+dd 0b3e5cd2ah
+dd 0538b8464h
+dd 04b2ca947h
+dd 0d03ffd9eh
+dd 0ac650398h
+dd 04299dfddh
+dd 04dba4d15h
+dd 0ee63d86fh
+dd 04c2337cfh
+dd 013c08fd9h
+dd 0d31cd595h
+dd 04be20e3ah
+dd 0545aacedh
+dd 00be8b99ah
+dd 05870ad32h
+dd 034fdd6a9h
+dd 081f1e891h
+dd 0ad3b1783h
+dd 09a0bbd0dh
+dd 0a2ef07feh
+dd 0b1a77d0ch
+dd 07db73548h
+dd 0c84fb5cbh
+dd 00c5c09b8h
+dd 08bb92c7ah
+dd 0b039001ch
+dd 0a9537361h
+dd 0776b7bcbh
+dd 0e08512dah
+dd 0dd7a3f03h
+dd 03927fff6h
+dd 06c11d824h
+dd 0f2af38bah
+dd 0f0702804h
+dd 0ca8e48e9h
+dd 09c4871afh
+dd 04995d1eeh
+dd 0887769edh
+dd 0e4bf6e4dh
+dd 01f67c1f4h
+dd 09c6c64d3h
+dd 0136398b6h
+dd 0dcb2a5eeh
+dd 026ad0674h
+dd 0b56e4f74h
+dd 0e4d8abcbh
+dd 03e21284bh
+dd 024a2f35eh
+dd 0c9a0bc7fh
+dd 035b33768h
+dd 03d420625h
+dd 0395d3686h
+dd 07ff6dad4h
+dd 0c6dbc511h
+dd 020d7d1c5h
+dd 0e3309d0ch
+dd 0a6cbaed3h
+dd 07dc53c12h
+dd 0a7cf7103h
+dd 0165efd1ah
+dd 0a30828b7h
+dd 07ce6e7edh
+dd 040bcc42dh
+dd 07bba211fh
+dd 0ac6ac0f0h
+dd 0ef4fb2a3h
+dd 0e9a0d738h
+dd 0de0e28c9h
+dd 010332426h
+dd 044a902ddh
+dd 0235b1c89h
+dd 01843587ah
+dd 0ac8622ech
+dd 0da0adaa3h
+dd 0f179d1d6h
+dd 03a7dfb5bh
+dd 099a0a7bfh
+dd 0e0787ea2h
+dd 0e0137487h
+dd 06ad069ceh
+dd 0f206d52ch
+dd 0891079f5h
+dd 01e8113a0h
+dd 02f484ec6h
+dd 03ec14c63h
+dd 07da2d4b5h
+dd 00c95b270h
+dd 02719a467h
+dd 00c7dc46ch
+dd 002afd2c4h
+dd 0f3ea830ch
+dd 0562600a9h
+dd 0523eda62h
+dd 07d70ac99h
+dd 013efb751h
+dd 00683f130h
+dd 0a07c063dh
+dd 023bf41b5h
+dd 04f803faah
+dd 0a02fa623h
+dd 0d9b798d7h
+dd 01523f7cch
+dd 090911410h
+dd 0f53cf7d1h
+dd 0cfe7bb1ah
+dd 0a7abdc5ch
+dd 07d3999a1h
+dd 0d45040a1h
+dd 0d99ca2e3h
+dd 0c27f7cddh
+dd 0c047e2fch
+dd 02f3f1caeh
+dd 035a138e9h
+dd 047e9fb6fh
+dd 0470a2054h
+dd 0bab872f6h
+dd 0b1e76693h
+dd 0485a41adh
+dd 0b9097684h
+dd 0a2fc010eh
+dd 087306df3h
+dd 00ba27f0dh
+dd 020cff0e2h
+dd 0845d92e6h
+dd 01a34495bh
+dd 04a72249eh
+dd 09ab53319h
+dd 0ae969f63h
+dd 0b329fc98h
+dd 06d9941a1h
+dd 0a0c63408h
+dd 01570d4ceh
+dd 0133c929bh
+dd 03e7bd7b8h
+dd 0a6b1bfc0h
+dd 08fbdf7c8h
+dd 01487c7cah
+dd 0b0c36c08h
+dd 0bc0f2c07h
+dd 0d94906f0h
+dd 0f8ed970dh
+dd 0eb8a90a6h
+dd 04b33f1efh
+dd 01d75e418h
+dd 0693e2cc4h
+dd 0c880e438h
+dd 00f450112h
+dd 0b3617aech
+dd 0cade3333h
+dd 0b6770e63h
+dd 02f1657c3h
+dd 09d88a1deh
+dd 03aaf7570h
+dd 02327fc35h
+dd 0829e7f78h
+dd 0053b9c75h
+dd 07953d0f4h
+dd 032e63624h
+dd 0b20999adh
+dd 07a0666d7h
+dd 06e29c777h
+dd 0637f11f6h
+dd 0691ef1a1h
+dd 009c5e74bh
+dd 042f4fa1fh
+dd 0ad494fc1h
+dd 0d974ac61h
+dd 000070740h
+dd 0c5bd4effh
+dd 090a29756h
+dd 0151b11e2h
+dd 0ac40cb32h
+dd 01ace8bc1h
+dd 0c4e28b20h
+dd 01f51dc7ah
+dd 0694ea749h
+dd 0177ba3f2h
+dd 00b78399dh
+dd 0fee827cah
+dd 0ae4682ceh
+dd 0b7e8804dh
+dd 08ea58c83h
+dd 058a85466h
+dd 0e80212b0h
+dd 015ca8de4h
+dd 06c9507a0h
+dd 08bb94136h
+dd 04750e52ch
+dd 0e4511387h
+dd 04a998e52h
+dd 090e77e2eh
+dd 06a7dcbf8h
+dd 0f0daee48h
+dd 0e9ad07bah
+dd 09964cd2bh
+dd 0ee107a36h
+dd 088c4735fh
+dd 0da9cea71h
+dd 0f9090d23h
+dd 0c0d8e94ch
+dd 0d1f91164h
+dd 062e8c935h
+dd 028458784h
+dd 0ce10fdb2h
+dd 09ef15640h
+dd 0606eb5e5h
+dd 0510fc922h
+dd 0047f54aah
+dd 05df011c5h
+dd 00a1cbf9eh
+dd 095c63941h
+dd 08b754e03h
+dd 0224150c8h
+dd 0ed9ef9adh
+dd 085793c4dh
+dd 036e5c9bbh
+dd 07aa4750fh
+dd 024c939b3h
+dd 0d1657956h
+dd 0013b8a8bh
+dd 0e83c7516h
+dd 0bde41918h
+dd 065fb84bbh
+dd 0a1da0f77h
+dd 0d57ab797h
+dd 0a056c421h
+dd 016ca7d11h
+dd 0965f4adeh
+dd 03c6f3857h
+dd 0ee8dba6ah
+dd 046c86abch
+dd 05eb96cb8h
+dd 0dc859f20h
+dd 049d2a9bfh
+dd 048c12153h
+dd 076d1d126h
+dd 0ec616ddah
+dd 04cd7859bh
+dd 04403b85bh
+dd 0ccbcc2b2h
+dd 0ad044867h
+dd 0774792f4h
+dd 090ba00e2h
+dd 013515ef9h
+dd 05131cd14h
+dd 0b3b4ef51h
+dd 056c21e6ah
+dd 0fa5e1a7fh
+dd 0d81075edh
+dd 09fb6a034h
+dd 082d49a29h
+dd 05fc95e25h
+dd 0b62c3ddeh
+dd 026efd5d2h
+dd 0574f28f2h
+dd 060f056f2h
+dd 0184a9870h
+dd 0b0b49cc4h
+dd 0f25dbe48h
+dd 0a3e9379fh
+dd 04779e5a3h
+dd 0692598feh
+dd 0baa3cf2ah
+dd 0c17078c6h
+dd 0863a10b7h
+dd 0f6b5e60ah
+dd 0978ae57ah
+dd 0b12b0de9h
+dd 07dea0ab6h
+dd 09ca11284h
+dd 09d0e8ef4h
+dd 0d8c2d154h
+dd 0ee0a428fh
+dd 0db1a46fah
+dd 0171cf1fch
+dd 01e393ba1h
+dd 096bb3d09h
+dd 00aa0f134h
+dd 0ef6f4e46h
+dd 0ef91c126h
+dd 07d2d46f8h
+dd 0d578db97h
+dd 03a6aa5d3h
+dd 03829dc9dh
+dd 0c8149ba0h
+dd 00f668d09h
+dd 032146eb9h
+dd 0da047572h
+dd 0be36515eh
+dd 07a73fc48h
+dd 0831c937ch
+dd 03f9dfe2dh
+dd 0c8810c8bh
+dd 0aa7452bbh
+dd 0ee96a0b8h
+dd 0f338bd1ch
+dd 03519b86bh
+dd 03d03451dh
+dd 0183bd9e4h
+dd 03da5ccfch
+dd 0d762416ah
+dd 082310e76h
+dd 048dda809h
+dd 0fe444a4bh
+dd 0c4562207h
+dd 011c4c7cbh
+dd 0ce10d81bh
+dd 03285c387h
+dd 0150334b9h
+dd 0cd89385fh
+dd 058c7d45ah
+dd 03fabe2f4h
+dd 020978156h
+dd 0dc2f10e5h
+dd 06549a274h
+dd 0d9026c85h
+dd 0c36a6a4eh
+dd 0cefa95aeh
+dd 0ff12ff44h
+dd 077009bd6h
+dd 059f87445h
+dd 0ef9727d4h
+dd 02e44bf94h
+dd 0f88ece16h
+dd 00ce7b830h
+dd 0cd5560aah
+dd 011c03209h
+dd 0a101fea7h
+dd 0dc8652c1h
+dd 01922a7eeh
+dd 0d09b89a5h
+dd 02127426ch
+dd 01c33e3d9h
+dd 09d8d44b8h
+dd 061db72a6h
+dd 028ef86afh
+dd 0c45961d9h
+dd 0e39f011ch
+dd 05a7d708eh
+dd 0cb8cee22h
+dd 03319ccd3h
+dd 0ceb4e028h
+dd 0bbce149fh
+dd 0c8d87810h
+dd 051f378c7h
+dd 0189c271bh
+dd 0ded0bbddh
+dd 06bb32112h
+dd 0004f1c84h
+dd 0232df379h
+dd 020a892ddh
+dd 00b0f2a0bh
+dd 0d0de73e3h
+dd 02f0ddab2h
+dd 0e4bc71b3h
+dd 0fc222a53h
+dd 00967d73fh
+dd 0cf6864abh
+dd 037b3e03ah
+dd 06123e92ah
+dd 02dda0af9h
+dd 049c86a5fh
+dd 0fcf8cac5h
+dd 0e91da38ch
+dd 09fd901e0h
+dd 0728c1805h
+dd 088811e93h
+dd 097902afeh
+dd 083917b38h
+dd 031b7975dh
+dd 0b4aac583h
+dd 01aa8e510h
+dd 0224d120ch
+dd 053e1ddbch
+dd 054296ac2h
+dd 034e70b9fh
+dd 023b99c73h
+dd 031d56f8eh
+dd 0c8309094h
+dd 041bf86cbh
+dd 04b3ca5a6h
+dd 0c4de122ch
+dd 0e17b15f5h
+dd 0e1ef59e0h
+dd 071b65289h
+dd 058f22ac9h
+dd 07d289a1ch
+dd 0ab23d0afh
+dd 0ff8a0d2fh
+dd 0eb247e20h
+dd 0c73d1713h
+dd 0a6bda87bh
+dd 0c45a783ch
+dd 06b1cb598h
+dd 0840ac43dh
+dd 0e144ff72h
+dd 06b9e1f49h
+dd 0ababb151h
+dd 0bb6f5ccfh
+dd 0cb572cc2h
+dd 0a93e4e36h
+dd 0f6a00c64h
+dd 003d75129h
+dd 04522d78dh
+dd 03e76a11eh
+dd 053c555a3h
+dd 0e69cbd35h
+dd 0d4b50abfh
+dd 0c9a00308h
+dd 0f6d64513h
+dd 0e8792d08h
+dd 04fc80863h
+dd 0ec0a73b4h
+dd 070c8b6ceh
+dd 0b33482dah
+dd 0c2f8db3bh
+dd 08739617ch
+dd 0d3730b75h
+dd 0ab1044afh
+dd 036901d71h
+dd 02a325600h
+dd 016ed0a1ch
+dd 07b17b5aeh
+dd 00e583e52h
+dd 00c8d9a83h
+dd 0287a7b99h
+dd 0fd893be4h
+dd 0fe08e34bh
+dd 03b51a322h
+dd 0492e22a9h
+dd 035408f3ch
+dd 03f18d1d1h
+dd 02778cccah
+dd 0dc9604ebh
+dd 0273a8ea2h
+dd 062969871h
+dd 0bc4c209fh
+dd 044fd68bbh
+dd 0224b3f7dh
+dd 0544faac0h
+dd 0ca3994bbh
+dd 07949ba33h
+dd 08705b4a0h
+dd 0344d610ch
+dd 007ab9f5bh
+dd 0448e94a0h
+dd 0507ba1dbh
+dd 07cc951c4h
+dd 0381fc494h
+dd 0d0bf574fh
+dd 09a77e640h
+dd 04f980f70h
+dd 0aaf6ed2dh
+dd 0e5ae2291h
+dd 0119b3be1h
+dd 05d69ac25h
+dd 0dad96acfh
+dd 04a4e7582h
+dd 0acd21d22h
+dd 081675f62h
+dd 0fec63c76h
+dd 077990e09h
+dd 05c5ca643h
+dd 0e5e9f137h
+dd 08f6accedh
+dd 0972c6ae4h
+dd 04bce5c9dh
+dd 02176ed5dh
+dd 00b9708f4h
+dd 062a5384dh
+dd 059b5766fh
+dd 066859180h
+dd 0b28d2c6ah
+dd 00c02f8b0h
+dd 0229f874ah
+dd 0829f6903h
+dd 0a4057f72h
+dd 0083655a6h
+dd 034dc1acbh
+dd 06dd65f8eh
+dd 0a56d40cbh
+dd 028ee2b60h
+dd 02640a501h
+dd 0f6a29919h
+dd 05271da47h
+dd 0ecedc6a7h
+dd 09c36c433h
+dd 0abe2cb6ah
+dd 0acb74c93h
+dd 0d6cb98d1h
+dd 09d7be7b6h
+dd 0fd146f9dh
+dd 0b2d685ebh
+dd 0681416ach
+dd 0eab41e65h
+dd 0e80296afh
+dd 05ffef59ah
+dd 0add696b2h
+dd 0f6b6d9d3h
+dd 0f8954843h
+dd 0fb50fcach
+dd 04149467bh
+dd 0271b723fh
+dd 0e27fbaddh
+dd 00f5fa44eh
+dd 00f4f47e0h
+dd 00523c579h
+dd 0ae517d31h
+dd 0d0a27337h
+dd 07dba9de9h
+dd 0d3fa1f30h
+dd 0c31a8a77h
+dd 06f7c96d1h
+dd 0abd3dbe8h
+dd 0c0fbf1a4h
+dd 097f950adh
+dd 064eb2de8h
+dd 04ad96bbbh
+dd 00468c675h
+dd 02a56bc17h
+dd 0dc9f4502h
+dd 066733922h
+dd 0b8f430cdh
+dd 0217cbbaah
+dd 096e838bdh
+dd 00dfe4408h
+dd 03cafd9bdh
+dd 0956205beh
+dd 05537fb4ch
+dd 0fcced792h
+dd 0157dbc99h
+dd 097d14ccdh
+dd 04c9336dbh
+dd 0c51fe582h
+dd 084a7e84ch
+dd 0bdd5a10fh
+dd 0a1a71d39h
+dd 0f68fba5bh
+dd 0c7e9c52dh
+dd 06776bbcch
+dd 074cf77efh
+dd 0a7c3e1e9h
+dd 015485b99h
+dd 0431a2fa9h
+dd 06e21d518h
+dd 0a12c17f2h
+dd 0f01ca7b9h
+dd 0ce3df3a7h
+dd 009a11ea0h
+dd 0fbb34fcfh
+dd 0b8ff2880h
+dd 05ae52872h
+dd 011a9e6ddh
+dd 0b37a1be0h
+dd 09436c14ch
+dd 0eae72fcdh
+dd 0e75aec79h
+dd 04acebb96h
+dd 0b5bbe660h
+dd 0a4da9fd3h
+dd 0ac7f2413h
+dd 0c2650ba8h
+dd 0f7063d87h
+dd 06521c53eh
+dd 0cb6b3e5ch
+dd 09eb3b81fh
+dd 0e4f1e03eh
+dd 0e5bdec6eh
+dd 059249ff0h
+dd 0fd0f66ffh
+dd 0115b4504h
+dd 0ad237306h
+dd 0e9d36924h
+dd 01e6b0c72h
+dd 0cb0291a3h
+dd 0da4c18ebh
+dd 0ab9b31eah
+dd 0310d8b83h
+dd 0ae6d14a2h
+dd 02e4d401ch
+dd 08d4a7832h
+dd 09c2ffa1ah
+dd 01bdc273dh
+dd 030058f28h
+dd 02da64bafh
+dd 04aa368afh
+dd 033e9a6f5h
+dd 00867e939h
+dd 03087fbf8h
+dd 03684d0b6h
+dd 0829a682dh
+dd 0fecfdca3h
+dd 034ce886fh
+dd 0e0ce90abh
+dd 01ba5b177h
+dd 0f8861051h
+dd 0905f300ch
+dd 08bd77673h
+dd 0934ce31dh
+dd 0064357b1h
+dd 0ac858d1ch
+dd 09f607e8dh
+dd 032484b57h
+dd 0fc8301c3h
+dd 04df14230h
+dd 085deea3fh
+dd 0b5a54272h
+dd 0bb3ca77eh
+dd 0978bcf23h
+dd 09245157dh
+dd 0fd651d1ch
+dd 034ae6c22h
+dd 03d98b1c8h
+dd 005214144h
+dd 0914d11c5h
+dd 0ef0b971ah
+dd 03cc6ac8dh
+dd 09d6f6b8ch
+dd 052bee1e1h
+dd 001965cfdh
+dd 075c49e8eh
+dd 01ffa7bb0h
+dd 0b38c5f60h
+dd 0882c5c97h
+dd 0d3db3f1ah
+dd 0f2f9a7ach
+dd 0b92b016eh
+dd 041a69679h
+dd 0bf26ec26h
+dd 0e652c01eh
+dd 0ee18a6c9h
+dd 0529ded61h
+dd 095ed7dd4h
+dd 010f98aadh
+dd 0f3de7eb9h
+dd 0dc3775dfh
+dd 0a72fbf73h
+dd 00ffed3b2h
+dd 075ac4139h
+dd 02761e138h
+dd 00546bfe0h
+dd 062e1a703h
+dd 0b25e7e78h
+dd 079ed2d10h
+dd 02f098810h
+dd 09b270139h
+dd 0ce8052edh
+dd 0cd836223h
+dd 0ee437a3dh
+dd 0858194ech
+dd 0642627c6h
+dd 061f5e24dh
+dd 038f4e58bh
+dd 0fc18eafeh
+dd 072384c62h
+dd 08bded737h
+dd 0015e079eh
+dd 0e811918fh
+dd 0a01a1294h
+dd 095a31688h
+dd 0275e25f8h
+dd 097639d42h
+dd 046b29f8fh
+dd 0c8dfdf4fh
+dd 07e4ae5a7h
+dd 0cb98675eh
+dd 0b1d833f5h
+dd 05b9bc10dh
+dd 0d2be9668h
+dd 0ee1b79c0h
+dd 0a779c3aeh
+dd 0b5ce3808h
+dd 02bd6adb0h
+dd 04d8e5fb5h
+dd 0c578475eh
+dd 0b065370dh
+dd 078f946adh
+dd 0423193a7h
+dd 0bba4a06eh
+dd 02b6dcf49h
+dd 0add0c6d6h
+dd 0e5b8aec0h
+dd 08a3652ceh
+dd 01aa3d05ah
+dd 08451b06ch
+dd 0e2b9a239h
+dd 0fbcee792h
+dd 09606f460h
+dd 0c4f65564h
+dd 015ff7cb0h
+dd 0d19cfee1h
+dd 0b951a674h
+dd 0f1bad303h
+dd 0c33ed77bh
+dd 04c46bc19h
+dd 041df71a3h
+dd 08536eb21h
+dd 0aedc1611h
+dd 02fb586d4h
+dd 0ee4e9e23h
+dd 037335a5ah
+dd 0db74d1dfh
+dd 0718d59d6h
+dd 0a13e0e1eh
+dd 03efca31eh
+dd 0ebcf3fach
+dd 05b40a614h
+dd 0a6e37fe2h
+dd 03fc2cd39h
+dd 01b0d3447h
+dd 096377ce6h
+dd 01a19b0cdh
+dd 07fbd8c39h
+dd 09992a36ch
+dd 063eff30fh
+dd 08a35f561h
+dd 009d7c70eh
+dd 02b66d3f5h
+dd 090445fbdh
+dd 0f8541e18h
+dd 00e54bff9h
+dd 04d1dc201h
+dd 081c1eed1h
+dd 004a3b667h
+dd 0d6f7721ah
+dd 05a930a6fh
+dd 0c914aaa1h
+dd 078fe2379h
+dd 0d4c13b2ch
+dd 0187aa2fdh
+dd 02fa177d1h
+dd 03e66a5aah
+dd 06fd7d3c9h
+dd 0e8381d1ch
+dd 0b32e70b7h
+dd 0f01b781eh
+dd 047e0dea2h
+dd 0c815c303h
+dd 01629de67h
+dd 09cb2bfcfh
+dd 0d7db7b99h
+dd 052f1740fh
+dd 004cf1fd4h
+dd 04c1a6748h
+dd 0ceb0638ah
+dd 0cf8738b7h
+dd 0151c70bah
+dd 0d6a49b5eh
+dd 01e186bceh
+dd 0bae4b4dfh
+dd 001c76fa0h
+dd 094c0c92dh
+dd 0c95ea8adh
+dd 07571ad22h
+dd 0b3dd6972h
+dd 00d7ef60bh
+dd 0d44850f9h
+dd 0d8c79795h
+dd 05542f65bh
+dd 0e07ec4e6h
+dd 0a12efd89h
+dd 0024d60e7h
+dd 0107fd70dh
+dd 072fd900eh
+dd 02e7fe0b7h
+dd 026aade4dh
+dd 017b028a9h
+dd 0a9fa705dh
+dd 0d5df963ch
+dd 02e36fd28h
+dd 05ecdc643h
+dd 0666d3053h
+dd 052af653eh
+dd 05c807c73h
+dd 0ddd42053h
+dd 08347747fh
+dd 064172fafh
+dd 0aaa8d788h
+dd 024b90332h
+dd 02be8a43bh
+dd 0cad7efd0h
+dd 0b0349ed3h
+dd 01f18511ah
+dd 024aaa068h
+dd 0971f1b7bh
+dd 0a87348b1h
+dd 0936fd04eh
+dd 048a2a14eh
+dd 0a91d14b6h
+dd 075f1cb2fh
+dd 033b87084h
+dd 025e04916h
+dd 07deabb6ch
+dd 015b7ab5bh
+dd 094076f61h
+dd 0069d2cbdh
+dd 0d27388e2h
+dd 0cd640dd5h
+dd 031764c38h
+dd 0a2ce62e8h
+dd 01fed6066h
+dd 089a37428h
+dd 072a2950ah
+dd 06dfaafabh
+dd 06a223b23h
+dd 0cc5d2751h
+dd 0637f0496h
+dd 0c00b3612h
+dd 09462c0b3h
+dd 0e7585b20h
+dd 0f4f8258eh
+dd 04a3baba6h
+dd 011018515h
+dd 07da4f3c8h
+dd 0b6f9a375h
+dd 0a114f487h
+dd 0cec7fce5h
+dd 05e7a9799h
+dd 0b866e661h
+dd 016c69d63h
+dd 02a82c62bh
+dd 0442ed5c6h
+dd 038badcfbh
+dd 05fd49942h
+dd 04474fc42h
+dd 09b7d6707h
+dd 09bfcb523h
+dd 02ddc38fch
+dd 04d4b3004h
+dd 03e7d8aech
+dd 0bb370c29h
+dd 03a21e4cbh
+dd 00b7f4ea5h
+dd 0a6372394h
+dd 02067a20ch
+dd 05de69d63h
+dd 03bcb5115h
+dd 036a9efefh
+dd 07729e79ch
+dd 040e056a9h
+dd 03f079d12h
+dd 0468ae612h
+dd 0bd244bc9h
+dd 000b5e017h
+dd 06f0fa853h
+dd 047ddda20h
+dd 0f5de56cdh
+dd 0a1e02d2dh
+dd 0604b8173h
+dd 0b6b27ce0h
+dd 041d0a7ebh
+dd 0de980519h
+dd 0705b7df2h
+dd 0348b96f8h
+dd 0190c4ee3h
+dd 0c9ad0f40h
+dd 0f9a888dch
+dd 0d6c353f3h
+dd 0876027bfh
+dd 0a4f42f37h
+dd 01e515fcch
+dd 0b8bc42e7h
+dd 0ddcbb462h
+dd 0c48f11aah
+dd 0b88c821dh
+dd 06c727d52h
+dd 06bfe7be1h
+dd 017a3190ch
+dd 092c2b543h
+dd 07c8531fch
+dd 014c9ee86h
+dd 052cbac67h
+dd 09117e845h
+dd 0b09ecd92h
+dd 08c77c2d8h
+dd 06895e5ach
+dd 008ecb036h
+dd 0f73e2c70h
+dd 09d5a0323h
+dd 01d77f9edh
+dd 0153bde85h
+dd 0570a524ch
+dd 01f651ed5h
+dd 0b519dfabh
+dd 0724916f6h
+dd 030f33ed3h
+dd 0a2164735h
+dd 04664cc56h
+dd 0101c8a1eh
+dd 0f70cddb4h
+dd 053c3badch
+dd 01c4c40c7h
+dd 0467a9033h
+dd 0b84e3c92h
+dd 01302fdcdh
+dd 0378df591h
+dd 02a328312h
+dd 093e1d9d9h
+dd 0fd017a2ah
+dd 05964387bh
+dd 06ec29e34h
+dd 07a48783ah
+dd 069385711h
+dd 07ca9a083h
+dd 02cd05af3h
+dd 07f50f0d7h
+dd 0b541da8ch
+dd 01b6bb5d2h
+dd 0713d4573h
+dd 045f97187h
+dd 0626766d9h
+dd 0b1f55006h
+dd 0ef6ac05bh
+dd 037c2e394h
+dd 07aa87d6bh
+dd 09035c84fh
+dd 0c4ac7273h
+dd 048197f69h
+dd 020082b72h
+dd 0f9c12675h
+dd 0ed799289h
+dd 0c7bb3ad3h
+dd 0104cf611h
+dd 065575bc1h
+dd 038f45e2bh
+dd 0b3ef81ebh
+dd 003acc2d6h
+dd 005e8b2d7h
+dd 03ee03908h
+dd 0d122ea67h
+dd 0e442150fh
+dd 083f033fch
+dd 08a3f5d37h
+dd 0c1b5129ch
+dd 0440cdb8ah
+dd 0ced6c30ah
+dd 0a32785ach
+dd 0b39cfa7ah
+dd 0c37c0f12h
+dd 059b4cfd5h
+dd 0ea96fc0eh
+dd 013c33361h
+dd 0179c5598h
+dd 03fda4bd2h
+dd 0bf3749eeh
+dd 0fb49ed98h
+dd 057a88f49h
+dd 034e83803h
+dd 0e4a2edf7h
+dd 069bdd3d1h
+dd 03f471b16h
+dd 038da3daeh
+dd 097568d4eh
+dd 0870f62b6h
+dd 0c2c7c846h
+dd 070277fa7h
+dd 0396e730ah
+dd 04c8ae3a8h
+dd 00e6f4ec0h
+dd 04ff386b7h
+dd 02a7b49ech
+dd 0abb4837ah
+dd 0251fc624h
+dd 06b1b3370h
+dd 04bb88f8eh
+dd 092eac07fh
+dd 00d3d7609h
+dd 0f1573d25h
+dd 0e4a5754dh
+dd 082ab2f8ah
+dd 040a5ff5fh
+dd 0ddfb0a4eh
+dd 08497e753h
+dd 03e306f00h
+dd 0521f3fe4h
+dd 0e640620bh
+dd 0358a8d0bh
+dd 080d6a62dh
+dd 04731f849h
+dd 0b5eeb249h
+dd 0b5eb2336h
+dd 0dd680b92h
+dd 0a8e623efh
+dd 04fbcd180h
+dd 093ebf17dh
+dd 04ccbbac7h
+dd 0b18bf31fh
+dd 06782c4efh
+dd 0529c5e3ah
+dd 078646562h
+dd 0f5b2a519h
+dd 0aee256e5h
+dd 08bd6cd6ch
+dd 07baec1c9h
+dd 064295c93h
+dd 0b0ae1294h
+dd 006ab2d3fh
+dd 0eb8c7e65h
+dd 089b23013h
+dd 02766e83dh
+dd 06fd219f7h
+dd 051144c51h
+dd 058f404b4h
+dd 00061263eh
+dd 0fd208666h
+dd 05edfc11eh
+dd 0c4d25a44h
+dd 0e0fd6a7ch
+dd 0535203a3h
+dd 00ca4e52fh
+dd 06cac9a23h
+dd 0ca36476eh
+dd 0acbe7cf3h
+dd 09d5a49f8h
+dd 0ac1a75b2h
+dd 076925ccch
+dd 040b19da7h
+dd 00aadb908h
+dd 0d6272e3fh
+dd 0bf539ae9h
+dd 01d3f726ch
+dd 042737c93h
+dd 0b3c78822h
+dd 001cb6b45h
+dd 048c860e5h
+dd 08f9f789eh
+dd 0d01c9af4h
+dd 025034895h
+dd 0460d270fh
+dd 0c7736f9fh
+dd 0ff87e1b2h
+dd 0aa8c2d0ch
+dd 0f21a6d89h
+dd 0139affcch
+dd 09e85870eh
+dd 090db77bbh
+dd 0f3dea4b4h
+dd 0db381edeh
+dd 0fc086357h
+dd 07d55ff38h
+dd 0140a9e53h
+dd 0b047887bh
+dd 0fc76f7c3h
+dd 0fd6adec7h
+dd 0e2cf29d8h
+dd 03a5594fbh
+dd 02493866bh
+dd 0e01c7adah
+dd 094f7b056h
+dd 0559f5243h
+dd 0a890abd3h
+dd 03adc68e4h
+dd 035f50e55h
+dd 0bb1bb6c8h
+dd 042ecd66dh
+dd 0c9f927ach
+dd 0b4aaacabh
+dd 074e528d7h
+dd 0fd651cf9h
+dd 0af2fa272h
+dd 070a770ffh
+dd 07b040df4h
+dd 07d4afc18h
+dd 0084a1b25h
+dd 0df6232f2h
+dd 05d875a04h
+dd 0732382b4h
+dd 09c38fd5eh
+dd 0de6ee840h
+dd 0d8dfd526h
+dd 0bac84153h
+dd 0ef010928h
+dd 01ac9eddch
+dd 0130ca20eh
+dd 074c0576fh
+dd 09cd5f5aeh
+dd 0e9549ad1h
+dd 0e0482305h
+dd 06003aac0h
+dd 03e1d57edh
+dd 0f31d9347h
+dd 0d21c818ah
+dd 057bece02h
+dd 0ce69193eh
+dd 0e2978b78h
+dd 0befcac95h
+dd 0d387e5afh
+dd 0dea7ecc2h
+dd 0804ae7f9h
+dd 08e0def16h
+dd 05b8ac0e7h
+dd 045403c68h
+dd 05ebee4a2h
+dd 058f14f5dh
+dd 0bf32807ch
+dd 099e23725h
+dd 0be24c865h
+dd 071018da7h
+dd 0cd1497d6h
+dd 0b0c0020ch
+dd 037191c72h
+dd 0c77c8652h
+dd 0f514be80h
+dd 0ff0975bdh
+dd 0be9fcf7fh
+dd 082d55b6eh
+dd 031294e78h
+dd 02139fb09h
+dd 0eaa7504dh
+dd 0b772587ah
+dd 05b1bc068h
+dd 04d0fc9bdh
+dd 0cc61f81bh
+dd 0458cc355h
+dd 094b0c024h
+dd 033f80f4bh
+dd 0c074d371h
+dd 0cb502cb0h
+dd 0deb98728h
+dd 07d00b78fh
+dd 0f83f0cbeh
+dd 02c9eac3bh
+dd 0f7452c11h
+dd 0bf934d68h
+dd 0d27b2ffch
+dd 091797a34h
+dd 0878fc025h
+dd 0db1e21c7h
+dd 0323488adh
+dd 035759d44h
+dd 0e74a075ah
+dd 0a9c9352ah
+dd 02bc99158h
+dd 05c6f2683h
+dd 0e093c4cbh
+dd 0977226f9h
+dd 0856fc540h
+dd 029fe8d46h
+dd 04bd0ceech
+dd 0e8e7b4d5h
+dd 0a57c3af3h
+dd 09ca14e27h
+dd 0a1f96f28h
+dd 0b4504dfbh
+dd 0452a7951h
+dd 06bf052ech
+dd 035bdf781h
+dd 047aff59dh
+dd 05937cd8ch
+dd 050c0d6cah
+dd 07d9a4565h
+dd 043d1785bh
+dd 077cead5bh
+dd 05e5d3e0dh
+dd 0eb8b4b8bh
+dd 04776e40fh
+dd 05c4ed098h
+dd 002a23c8dh
+dd 007745046h
+dd 005b2cb37h
+dd 0ffdcc8b0h
+dd 0f1c173bfh
+dd 06bc85baeh
+dd 0a7711f1ch
+dd 024271d78h
+dd 0e01ac0a4h
+dd 0899a8814h
+dd 0402dcb11h
+dd 0f807fdbfh
+dd 06540079eh
+dd 0739de2e9h
+dd 0290c1291h
+dd 08da5831eh
+dd 052f2bff2h
+dd 0e5165526h
+dd 0a761eba1h
+dd 0db701076h
+dd 0d752fd0dh
+dd 0dd0e3c40h
+dd 0a736ac2dh
+dd 007f6b4a4h
+dd 009db1393h
+dd 045589909h
+dd 00e6a2ce7h
+dd 089d3d455h
+dd 0962ddbech
+dd 0d05470e7h
+dd 0906bfef0h
+dd 0f1f2561dh
+dd 039c06850h
+dd 085c5f6cdh
+dd 07dbf3ea9h
+dd 048f0f7d4h
+dd 07f6a5ed0h
+dd 010d2eebah
+dd 025e79beah
+dd 059543ceah
+dd 0f5d2daf7h
+dd 062a74baah
+dd 0d16ffa5ch
+dd 08c1c4e3dh
+dd 0435d211bh
+dd 08d36217eh
+dd 0efcf95fdh
+dd 0abf66a7dh
+dd 012c3c9fah
+dd 014124dc3h
+dd 051983745h
+dd 03067a02dh
+dd 002de2e3eh
+dd 03d3a5ad2h
+dd 05a0feab0h
+dd 0b97a9c2dh
+dd 02e656c19h
+dd 0cc66d885h
+dd 00be81133h
+dd 0ea019a9ch
+dd 004eaeac3h
+dd 08c09061dh
+dd 09bb14f9bh
+dd 048cc272fh
+dd 0916f4177h
+dd 0d013fdcdh
+dd 01060794ah
+dd 0c66d5155h
+dd 01b33a789h
+dd 05404fa66h
+dd 02a583ed4h
+dd 0cc86b6edh
+dd 0e85bc14ah
+dd 0c0fb2723h
+dd 0d7658d83h
+dd 0280053d7h
+dd 06c7c47a7h
+dd 02f9d321eh
+dd 08bfc00bah
+dd 090c3d0fdh
+dd 0da3baaa8h
+dd 045a5b2d0h
+dd 08511ffbah
+dd 08890b11eh
+dd 0c4c946dch
+dd 0c1dab56eh
+dd 085808deeh
+dd 087257df3h
+dd 0d21031eah
+dd 0bbaeb127h
+dd 0826a162dh
+dd 0739f0225h
+dd 0ab5e212eh
+dd 09f93bd52h
+dd 05af6e973h
+dd 03a69b7fbh
+dd 0d9e77771h
+dd 06680a4feh
+dd 061c3ead0h
+dd 04ce9f43ah
+dd 09fee3affh
+dd 04ebd18f1h
+dd 015546db8h
+dd 05bf5b381h
+dd 0d55ade9bh
+dd 0f98540c2h
+dd 050aec8cch
+dd 01d9c5215h
+dd 0edc1f27ch
+dd 09e1d0876h
+dd 0bcf6d20ah
+dd 0084e41ddh
+dd 07d59a7bch
+dd 033e8d944h
+dd 0331c4ab9h
+dd 0555d56b9h
+dd 00b7ade17h
+dd 09d522334h
+dd 0c3f7583bh
+dd 0899dae82h
+dd 0314379b7h
+dd 051787284h
+dd 0601f227ah
+dd 0a3a25508h
+dd 02fc100c5h
+dd 08798e672h
+dd 084073946h
+dd 0ba9b0653h
+dd 0b16daea4h
+dd 01d5063deh
+dd 02fb6cff7h
+dd 0c7deedc0h
+dd 03b00f083h
+dd 0960c4063h
+dd 092ca4866h
+dd 047630208h
+dd 0bb3bd450h
+dd 0251d641dh
+dd 0ab3be0cah
+dd 0435ce4eeh
+dd 04246ac89h
+dd 0f03676beh
+dd 029c19110h
+dd 0694df317h
+dd 0a367ef20h
+dd 05e610a80h
+dd 0c078ef46h
+dd 06f77d9cbh
+dd 04688a36bh
+dd 0a85c2906h
+dd 04ea354e4h
+dd 063047f60h
+dd 0110daf5ah
+dd 0c7741834h
+dd 0bb29f34eh
+dd 0cba5adadh
+dd 00095bfefh
+dd 07d261bf9h
+dd 014411380h
+dd 05a086ba3h
+dd 0c0d37b23h
+dd 058cf1091h
+dd 0494041eeh
+dd 05157b7deh
+dd 07d124364h
+dd 09b0887fdh
+dd 0712a4a26h
+dd 058bf7fd4h
+dd 070b1123dh
+dd 06fa1fc9ch
+dd 05ca9fa99h
+dd 0271573d8h
+dd 05e8733f7h
+dd 07df2a2a9h
+dd 0717299ebh
+dd 0c0e76b4bh
+dd 03da8fcc9h
+dd 05c82ef8ah
+dd 04d80c8bfh
+dd 0fbb21a23h
+dd 09a37d761h
+dd 075cc026bh
+dd 06d7d57fdh
+dd 0f38fb37eh
+dd 04c31e288h
+dd 0acb33bd8h
+dd 02bf94cdbh
+dd 0b22d2916h
+dd 0910291ffh
+dd 083a07453h
+dd 082e4f7c9h
+dd 0ad6b7b57h
+dd 08a95193dh
+dd 0210baa68h
+dd 09c1a11f1h
+dd 06e509659h
+dd 0e08a0f3eh
+dd 0289948c9h
+dd 079e4f212h
+dd 0b5a70e9ah
+dd 0d826cb72h
+dd 051cbf52ch
+dd 08675f485h
+dd 07b544c49h
+dd 037599c5ah
+dd 019c8efddh
+dd 089b7cb01h
+dd 0812064f2h
+dd 0d0ccbfd8h
+dd 0ef1af3c5h
+dd 03abc1b09h
+dd 02e028532h
+dd 0d2541a30h
+dd 098317dbah
+dd 058bf8e76h
+dd 0ea9ae3e1h
+dd 0f224b2f3h
+dd 085f32505h
+dd 096fd2d40h
+dd 0262b346eh
+dd 047da14f3h
+dd 0cf9036f1h
+dd 01166f648h
+dd 084b20778h
+dd 0c771179bh
+dd 09f827e60h
+dd 024a0501bh
+dd 0cc37d91dh
+dd 0eb9fcb5ah
+dd 0bfe27d6eh
+dd 0b41283fch
+dd 02656c59bh
+dd 0c906a64fh
+dd 08e9c4a8ch
+dd 00c28256ch
+dd 08b84e3b8h
+dd 091d25abfh
+dd 0ccb70d8bh
+dd 07442b698h
+dd 0bcbceec1h
+dd 01edeacb6h
+dd 024aa28e3h
+dd 0f2dc881ah
+dd 00e0ea265h
+dd 0518b5a94h
+dd 0a483e491h
+dd 09dc8a6d8h
+dd 0d78d501eh
+dd 05a9c5588h
+dd 0f7438fa1h
+dd 0e37cf66bh
+dd 0fc4a76c1h
+dd 0933131c0h
+dd 00eee5d14h
+dd 04128f15fh
+dd 0d7f7cd16h
+dd 03c9f11dfh
+dd 0d28424f0h
+dd 0eff97981h
+dd 0c5f804f4h
+dd 0a5b7f247h
+dd 0316d28f3h
+dd 0aad481e9h
+dd 04ed56e49h
+dd 0bd556f33h
+dd 07e0c9d3bh
+dd 07d77126ch
+dd 0dce5c053h
+dd 01490da1dh
+dd 071b27e2eh
+dd 042d7ee9dh
+dd 036e1df89h
+dd 0093c91cch
+dd 0361d29ceh
+dd 06799bf70h
+dd 056e1ffb8h
+dd 0a4a5cafch
+dd 063b6bb0ah
+dd 008272a09h
+dd 0da713017h
+dd 04ee8e0e4h
+dd 00cfa5790h
+dd 0aa7525a6h
+dd 030347738h
+dd 0a1ebe808h
+dd 040f59dcdh
+dd 055bfb40eh
+dd 0cc68a0a3h
+dd 0f5160505h
+dd 07be43ea4h
+dd 064e161e2h
+dd 0f60e536ch
+dd 0615d4d08h
+dd 086784ebbh
+dd 0facddbf0h
+dd 0bb4a8b3ah
+dd 0a0fe885ch
+dd 0860588e5h
+dd 0b93ab72ah
+dd 04e42c6edh
+dd 07ccca924h
+dd 0ee3a2a1ah
+dd 0c085e84eh
+dd 06758c159h
+dd 06d2e1044h
+dd 0400006f2h
+dd 0024ddc11h
+dd 04a24a8dbh
+dd 06852c703h
+dd 01a84e933h
+dd 0216d79b9h
+dd 0e9779b53h
+dd 0a494e3efh
+dd 00d02a6cbh
+dd 0fcef74e9h
+dd 05e6f72c9h
+dd 0145a12c8h
+dd 0b0ee4c07h
+dd 0469ddaa7h
+dd 0def56ee6h
+dd 08fde5c98h
+dd 093c4b4deh
+dd 076250893h
+dd 06f723f86h
+dd 03ab3998ch
+dd 025085f70h
+dd 0f2f843e1h
+dd 0f47e249fh
+dd 0e7abddcfh
+dd 0d0656debh
+dd 0c7be94b1h
+dd 013b9013fh
+dd 0a3c187ffh
+dd 0f9980a3eh
+dd 09632b8a9h
+dd 0ce298cb3h
+dd 044a08ea0h
+dd 0ea01bdfbh
+dd 0fb0f67e3h
+dd 0fce91ff6h
+dd 050b9b74eh
+dd 00e2a5bd4h
+dd 018cae0a7h
+dd 0e55ce55fh
+dd 008e32fb4h
+dd 014cea2f2h
+dd 08291bf72h
+dd 075e05255h
+dd 039647b30h
+dd 06f4b2199h
+dd 0b1d25567h
+dd 01d372314h
+dd 0178b0d6eh
+dd 04e4ceb23h
+dd 035ae703dh
+dd 0e022e4d9h
+dd 098016e50h
+dd 0f7fbb2edh
+dd 05bef0940h
+dd 09ec65d68h
+dd 0c9868bbah
+dd 07068d952h
+dd 02e366304h
+dd 0e585f1e7h
+dd 0141b545ah
+dd 08be55a5ah
+dd 074827fb4h
+dd 08a6a47c7h
+dd 0f6392c15h
+dd 049639467h
+dd 01e89ea5dh
+dd 0311bec65h
+dd 0c7b74363h
+dd 0b219979bh
+dd 0b4891de4h
+dd 0297f9a22h
+dd 0021874b7h
+dd 08ef7c19bh
+dd 06adb8215h
+dd 088f27a71h
+dd 0652f154eh
+dd 05cab6273h
+dd 0c66761e5h
+dd 0fcb82bdah
+dd 00d5c1607h
+dd 09623f0a2h
+dd 06989c142h
+dd 0d8435c42h
+dd 0dc7f11a3h
+dd 0cfa19a2eh
+dd 04472ffbbh
+dd 08474e00ch
+dd 0d17702c1h
+dd 0be83b04ah
+dd 05683730fh
+dd 0b5b2ab22h
+dd 0296308b5h
+dd 00b99670dh
+dd 0b97323fbh
+dd 02791f1b4h
+dd 051c9049ch
+dd 0eeffc27ah
+dd 0cd12f978h
+dd 06af840d0h
+dd 0547317e5h
+dd 0174737e1h
+dd 0266058efh
+dd 0b64ed81ch
+dd 004701002h
+dd 087a3a80fh
+dd 08a0c432bh
+dd 0a5844051h
+dd 07509e83bh
+dd 0241d82a9h
+dd 0576ace28h
+dd 028cd4ae3h
+dd 0975c22b5h
+dd 09e6ec9c8h
+dd 0e382a961h
+dd 0d551c811h
+dd 027286520h
+dd 0ee01a640h
+dd 0f8228d23h
+dd 04b6e15a0h
+dd 0e231f7edh
+dd 0e215d52dh
+dd 0dc2c9580h
+dd 0feff68c3h
+dd 033bdd9a0h
+dd 0410841dah
+dd 0456958cch
+dd 0246b6dbdh
+dd 051a17478h
+dd 0ef918683h
+dd 048132c8eh
+dd 04e0a12a3h
+dd 0adc98fb3h
+dd 0f1b74a2eh
+dd 0e76c7a51h
+dd 04c459cb2h
+dd 0b98759cah
+dd 09f47f992h
+dd 044df8e44h
+dd 077e1b6f9h
+dd 0a6260fadh
+dd 0691302fah
+dd 07c3fa9dfh
+dd 0d477d96dh
+dd 06196ac9dh
+dd 0034f4492h
+dd 00d82195bh
+dd 040cb943ch
+dd 0f514191ah
+dd 019891d07h
+dd 00690cddbh
+dd 03d410ec2h
+dd 017146198h
+dd 0c9fdf773h
+dd 071667bf4h
+dd 0b7d1384ah
+dd 06447f355h
+dd 0b2213ee7h
+dd 048bf49a5h
+dd 01c812260h
+dd 09267fd82h
+dd 0f3e236f1h
+dd 07c779334h
+dd 0e8b6aa90h
+dd 05c53b261h
+dd 0e1d561dfh
+dd 0ce856273h
+dd 0fd521407h
+dd 051ebf48dh
+dd 0adfd07bch
+dd 010edfe68h
+dd 023d77957h
+dd 0727953e6h
+dd 07396ec60h
+dd 0f8436746h
+dd 039896e4bh
+dd 002f47958h
+dd 0f75d6669h
+dd 0ba75d270h
+dd 0dd3b6871h
+dd 005c20f1bh
+dd 000416d99h
+dd 09a007da0h
+dd 09f49506ah
+dd 090f4eab0h
+dd 0a60912ech
+dd 0a2d008c1h
+dd 062f6e1f4h
+dd 07cf67cb7h
+dd 021b81492h
+dd 0c59c02c3h
+dd 0a450ea08h
+dd 08b99f4f3h
+dd 0a8e098d7h
+dd 0af485b98h
+dd 08cb8ee01h
+dd 09eea88a0h
+dd 071294560h
+dd 09219cb82h
+dd 0c26e6da8h
+dd 0aabe8e15h
+dd 06d81f302h
+dd 08be84c91h
+dd 0d2e1a610h
+dd 0f02ec1e9h
+dd 0417a2637h
+dd 05c8bbdc4h
+dd 0fa7c23ffh
+dd 0d69f1d91h
+dd 003de17f8h
+dd 0c167498fh
+dd 0723cd003h
+dd 02b78b3d6h
+dd 0aeb86f7eh
+dd 0c5e1586ch
+dd 02baad0a7h
+dd 0376c48e9h
+dd 066a313f4h
+dd 0ed705ad1h
+dd 0ba426d8bh
+dd 05faa895fh
+dd 01c756cdch
+dd 0fc43e1dbh
+dd 0463dca25h
+dd 03f6c99f8h
+dd 0447e6155h
+dd 01df468d4h
+dd 02fcccc13h
+dd 0071b666fh
+dd 0788c3b8bh
+dd 04eba57e2h
+dd 03633138dh
+dd 074634322h
+dd 0e75c3601h
+dd 08c830004h
+dd 04fe9594fh
+dd 09479e0edh
+dd 004d961e9h
+dd 03ce7f1c8h
+dd 0b5385033h
+dd 052c7d064h
+dd 052694f01h
+dd 045b13a83h
+dd 08c1da53dh
+dd 03b4fa86eh
+dd 0b1530b85h
+dd 0f56f0058h
+dd 032f41cd6h
+dd 0c6dad080h
+dd 08a592edbh
+dd 0d97b07e7h
+dd 0f06785c7h
+dd 0783f3c5dh
+dd 03e0aefc4h
+dd 00cf0a4e2h
+dd 018845c83h
+dd 01f61d273h
+dd 03ba40759h
+dd 0d81c8869h
+dd 04feebca5h
+dd 04326a44dh
+dd 0e8f10d38h
+dd 0cbcf8193h
+dd 0a74b00ebh
+dd 0102006d2h
+dd 05e4df1d9h
+dd 034474d08h
+dd 032784954h
+dd 0de676bc0h
+dd 05936e8fch
+dd 08eb8e21bh
+dd 0154028fah
+dd 01c945f9ah
+dd 073da2994h
+dd 0e3dd8834h
+dd 0484d3259h
+dd 0b7717216h
+dd 08b29f965h
+dd 0dcb66f90h
+dd 00d43e791h
+dd 0c8a9cb8dh
+dd 055b3d502h
+dd 094ebeaabh
+dd 013cdc8ceh
+dd 0669c69f2h
+dd 0bab6144dh
+dd 000bae4d2h
+dd 0bc2e7ba3h
+dd 09e8c4c07h
+dd 01c70dbffh
+dd 0e36ef1c1h
+dd 057a13b74h
+dd 0d2c461f2h
+dd 0171a445dh
+dd 07bc4c35fh
+dd 0b81d261ah
+dd 0f0249b29h
+dd 02161b056h
+dd 0f795087bh
+dd 02f2026ech
+dd 080f619a1h
+dd 07462ba4eh
+dd 08a268bbdh
+dd 042574bcah
+dd 0f99d1abdh
+dd 0f0487d18h
+dd 01f070318h
+dd 0c17c9fb4h
+dd 0590d8b25h
+dd 084353fabh
+dd 03355e55bh
+dd 03a46cb82h
+dd 09597c3dbh
+dd 0953799ffh
+dd 027d080d1h
+dd 032c85c8ah
+dd 05fed77fdh
+dd 006333289h
+dd 0e0260b35h
+dd 0010f7430h
+dd 0016bcac8h
+dd 00a27ae32h
+dd 085e6e3f2h
+dd 07804d1a0h
+dd 0e727e879h
+dd 019181fb0h
+dd 0f1d41365h
+dd 00480727ah
+dd 023234b06h
+dd 06bd6738fh
+dd 0732534b5h
+dd 0f73262dah
+dd 0862f977dh
+dd 015b99349h
+dd 0680d9e39h
+dd 08044976fh
+dd 0159b2b74h
+dd 0fc13e37dh
+dd 0155b184eh
+dd 0ad468b20h
+dd 0078d9602h
+dd 077ad0bcdh
+dd 0351d333bh
+dd 076605e32h
+dd 09e1022b9h
+dd 089e6e94ch
+dd 06de2cbd5h
+dd 0f0f30919h
+dd 03c70a17ch
+dd 015e1af66h
+dd 074e75994h
+dd 059593a27h
+dd 04ea6652ch
+dd 0fa1079ceh
+dd 0930a02b3h
+dd 06316e910h
+dd 035d5aa5dh
+dd 0197cb510h
+dd 069c78195h
+dd 006e9369ah
+dd 02625738ah
+dd 04df6504fh
+dd 0a046edf4h
+dd 0107cda4ch
+dd 07498b473h
+dd 0619c4623h
+dd 07f64797ch
+dd 06e730aeeh
+dd 0900b9011h
+dd 0b7988744h
+dd 023041191h
+dd 07c1fa0b1h
+dd 0f5b1b1dch
+dd 0e69f78bbh
+dd 0033791f3h
+dd 08b481b4eh
+dd 0b09319cdh
+dd 0095c6f1ah
+dd 037a4721eh
+dd 0ba50ecd5h
+dd 0e4ebf012h
+dd 01b5a300ch
+dd 00184f393h
+dd 02324a2e2h
+dd 0f59330f9h
+dd 070369680h
+dd 07edc63f4h
+dd 0d2cbc997h
+dd 0e36b2ea6h
+dd 002134526h
+dd 0eece3031h
+dd 0b183f9d6h
+dd 050cf5116h
+dd 027e65727h
+dd 026513a54h
+dd 07772b649h
+dd 026e098d4h
+dd 0314bf14dh
+dd 07ef8f2f6h
+dd 089e3f459h
+dd 095ad98a1h
+dd 0a4b25ed4h
+dd 0607e0025h
+dd 0a3543f76h
+dd 07a48eb80h
+dd 0614001cbh
+dd 0955799aah
+dd 08b5d5710h
+dd 0417a7915h
+dd 088606848h
+dd 06ad0748fh
+dd 0eb9392b5h
+dd 0ea859fdch
+dd 0be033811h
+dd 018032826h
+dd 0a4881144h
+dd 0a10361e2h
+dd 0c844eb90h
+dd 03dbefb3ah
+dd 0f2f07089h
+dd 04f0bebech
+dd 0f9457964h
+dd 016a565efh
+dd 0be285dc1h
+dd 0640cef2fh
+dd 0163ec951h
+dd 0a1b910aah
+dd 0c6fc6beeh
+dd 04d573df5h
+dd 08136c55ah
+dd 0e7e854fah
+dd 0f78a4937h
+dd 045e6c172h
+dd 06212a3f7h
+dd 0a00a892bh
+dd 0e5895464h
+dd 0cc9b9cbch
+dd 0e6d777cch
+dd 0c195dea0h
+dd 0d64a4709h
+dd 0f9787653h
+dd 0189f3659h
+dd 005f388b2h
+dd 0884eea7ch
+dd 0c67e76a9h
+dd 0dcd5826dh
+dd 03426b279h
+dd 0ba86febdh
+dd 06ed3c312h
+dd 036fa6102h
+dd 013edf901h
+dd 097e60e74h
+dd 0342ab8dch
+dd 0a2019c9eh
+dd 0f6fcf6d4h
+dd 0c6c5fc47h
+dd 06b062349h
+dd 0711e93a7h
+dd 0082c6bb1h
+dd 0546bd6f9h
+dd 0b06e6010h
+dd 0a9e0300bh
+dd 0acea0f52h
+dd 00dbc8712h
+dd 000be08e2h
+dd 0b177b869h
+dd 0b38e4247h
+dd 09d7cc8feh
+dd 004b35716h
+dd 08e9b5556h
+dd 07c480407h
+dd 086c90b50h
+dd 0573d1896h
+dd 07ef3b083h
+dd 0ec7ee958h
+dd 036f6b6c7h
+dd 05af26f0ch
+dd 0d4e8a502h
+dd 06881b83bh
+dd 09da26379h
+dd 0a7632b67h
+dd 05097b87ah
+dd 0f20d0b9fh
+dd 08415c62eh
+dd 0e20e1c10h
+dd 06aad70a0h
+dd 0a9fb3dd3h
+dd 0173d36b8h
+dd 08f97e230h
+dd 0b75101b5h
+dd 07e0349c9h
+dd 09b2256f9h
+dd 03262723ah
+dd 0a878e998h
+dd 01124f05fh
+dd 092cf2f21h
+dd 090ce49fdh
+dd 0a853a7aeh
+dd 0fdf8dcebh
+dd 06c87c878h
+dd 0d53ed1e2h
+dd 0ae61ca7eh
+dd 0f35fd473h
+dd 0e8486c27h
+dd 0192c7560h
+dd 092156b8eh
+dd 034f350f3h
+dd 071a419e1h
+dd 03ae01f0ah
+dd 022e94c5fh
+dd 067ed5339h
+dd 0edb341f4h
+dd 09773baa2h
+dd 0aaf44e94h
+dd 03b668abbh
+dd 022fcb1c1h
+dd 0b7edf2f7h
+dd 000ea04ceh
+dd 01800d72bh
+dd 0f62c6811h
+dd 0262aaf9bh
+dd 04110b44fh
+dd 0a8787704h
+dd 0fcec632bh
+dd 0e92831f3h
+dd 0d9806d9ch
+dd 0fef65080h
+dd 043ad796dh
+dd 029cdc772h
+dd 03de9453ch
+dd 0f97ad895h
+dd 056f149e4h
+dd 01ac3f541h
+dd 095a13888h
+dd 07f782617h
+dd 0e83b135eh
+dd 0f04c378ch
+dd 09dab8bd6h
+dd 04a0f68afh
+dd 07501d9bdh
+dd 06734bcc5h
+dd 04e233ee6h
+dd 044289c96h
+dd 022b266a5h
+dd 07049c00bh
+dd 0d6e56286h
+dd 03f5b551ch
+dd 0c4d9e53bh
+dd 0ebea7b02h
+dd 019f669feh
+dd 0aebee514h
+dd 0dbd42f5dh
+dd 08354e0eeh
+dd 0e21c98fbh
+dd 0c08cda6ah
+dd 06055f976h
+dd 03c6d3edeh
+dd 0cac28f3ah
+dd 0a930f564h
+dd 0f1f7d8dbh
+dd 0306a63abh
+dd 0b2ed75d0h
+dd 0989b49c2h
+dd 0fd5f3f3eh
+dd 04f8b2d78h
+dd 036eb09a5h
+dd 095401a48h
+dd 0f1082dd1h
+dd 0c3eccb22h
+dd 05910d56ch
+dd 03e3b404bh
+dd 0155e8379h
+dd 07e55f46eh
+dd 0ee3b66c0h
+dd 01861b5a8h
+dd 0fcdd8f41h
+dd 0fed745d4h
+dd 07c5f5d6dh
+dd 083cb0e92h
+dd 061f6f1e6h
+dd 0d601de05h
+dd 0ed0a6e59h
+dd 0e1329ccbh
+dd 0221a9dfah
+dd 0fa1161bdh
+dd 0c49ab2c1h
+dd 01ab65bf1h
+dd 08ce26754h
+dd 0bd65433dh
+dd 08cdca59fh
+dd 01130463fh
+dd 099028db1h
+dd 0f86ece20h
+dd 0b4866a4ah
+dd 0e9fb8356h
+dd 09082241eh
+dd 0b429aad6h
+dd 0ea4a0ba9h
+dd 02f8d7158h
+dd 04329df4bh
+dd 0176280bah
+dd 0b3763da5h
+dd 03693badfh
+dd 01bbb2cb9h
+dd 08f94eaech
+dd 09e627e3ah
+dd 0b2b8f32dh
+dd 0bb762237h
+dd 072fefe14h
+dd 006ee3114h
+dd 0ebc0cc9dh
+dd 0753ee424h
+dd 00f877a0fh
+dd 06a65bcfbh
+dd 0c0ab6ecah
+dd 0000ae326h
+dd 039ee42c1h
+dd 0143752bah
+dd 075aba523h
+dd 040a71fe6h
+dd 0dc755807h
+dd 065841198h
+dd 0bb3c9518h
+dd 0f09dd308h
+dd 0c115bc74h
+dd 0fc732b7dh
+dd 08e733601h
+dd 0469573dbh
+dd 02742581bh
+dd 0547ac994h
+dd 080a35582h
+dd 0378db3e0h
+dd 0bdaf82eeh
+dd 063fd201eh
+dd 01d8f3192h
+dd 09bcd366ch
+dd 0ef899c89h
+dd 0d471deb7h
+dd 0fcc545b1h
+dd 0aa768b60h
+dd 0bd694be2h
+dd 0db2f88f1h
+dd 000e1aa01h
+dd 011d50685h
+dd 01ea030d3h
+dd 0d5bd529ch
+dd 0b38bb3d6h
+dd 02ea48dcfh
+dd 0814c6038h
+dd 0f13d0bc8h
+dd 0450e1f47h
+dd 06cc3f981h
+dd 085b75c4ah
+dd 0b2536348h
+dd 0a7035873h
+dd 0078d520ah
+dd 09d089ef7h
+dd 0aa7361ceh
+dd 096cf507ch
+dd 085505d49h
+dd 01b0d33a9h
+dd 056ca1826h
+dd 0250c730ah
+dd 0f3df08abh
+dd 05d4ee5b2h
+dd 017a872e6h
+dd 02f9d6464h
+dd 031d79fb7h
+dd 0c6d11726h
+dd 0b7f81ff1h
+dd 077d010b5h
+dd 0feaf0f67h
+dd 078cefefdh
+dd 0bfb0fb7fh
+dd 0fb5ccf54h
+dd 0d1fae3bch
+dd 06dcf55c3h
+dd 092223787h
+dd 0bac4b1b3h
+dd 0f74979ech
+dd 07ca809e8h
+dd 072a18a25h
+dd 0b34e4eefh
+dd 09e4151bbh
+dd 088f24a27h
+dd 0d9da4525h
+dd 073130da2h
+dd 0275a5aa3h
+dd 0c6d2ab5eh
+dd 0fcdb38b2h
+dd 08651d9f7h
+dd 00634c1b4h
+dd 065f0f135h
+dd 0efbc7b30h
+dd 0c94c1437h
+dd 0ab09cecfh
+dd 0dbd75e8dh
+dd 05f1548c1h
+dd 049c5ed59h
+dd 001c2f0b2h
+dd 083fe044fh
+dd 07762ab2eh
+dd 0641627ddh
+dd 0affe1331h
+dd 007a51529h
+dd 0034b1cb1h
+dd 0dfcc97dbh
+dd 0728768b4h
+dd 0988254eah
+dd 0667d5451h
+dd 0fde2c1e2h
+dd 051464e81h
+dd 05ba3132ah
+dd 09a853bb8h
+dd 02ef9fc21h
+dd 059699afeh
+dd 0e4d6aa37h
+dd 01f5afbech
+dd 04ff1c7f0h
+dd 08ce0f35bh
+dd 008479c14h
+dd 07900d031h
+dd 0be1b4e81h
+dd 05d2e9f4eh
+dd 096be9270h
+dd 0b5601d9dh
+dd 0fbf87438h
+dd 046652e7ch
+dd 0e3d2d519h
+dd 0a6c90d4bh
+dd 02f6d1b4ah
+dd 07c6f8c29h
+dd 0683d6d4ch
+dd 0101a4c92h
+dd 099aeab21h
+dd 0be27f44fh
+dd 07f442256h
+dd 000d89d42h
+dd 0cfe1bff4h
+dd 090b5aa81h
+dd 015e281e4h
+dd 0aaef85f0h
+dd 04a3870e9h
+dd 0e4a7ebdbh
+dd 01f8b9a38h
+dd 0bab32091h
+dd 033b00d1dh
+dd 091f3fa61h
+dd 04e8fde95h
+dd 039be472ch
+dd 07120e2ebh
+dd 090b49ae9h
+dd 043c2c189h
+dd 0ef4995bbh
+dd 0eb6f3b2ah
+dd 0422cd2cfh
+dd 028341bd0h
+dd 03f56f070h
+dd 0e80bf03fh
+dd 015fff245h
+dd 09b3464c2h
+dd 072bc4880h
+dd 05eb2a954h
+dd 0935bb487h
+dd 0155c9321h
+dd 0a2d63cb3h
+dd 00f969a43h
+dd 01b1ee2a4h
+dd 04e33c958h
+dd 012003426h
+dd 089272e5fh
+dd 0c11533f2h
+dd 0e5898c1ah
+dd 000ef5ed4h
+dd 03d2cacd5h
+dd 04c787790h
+dd 02c7be24fh
+dd 06f3ec85fh
+dd 080cbd7f1h
+dd 092b38d59h
+dd 0d136d31ah
+dd 052bd98ffh
+dd 0450d76bbh
+dd 0de4768efh
+dd 0b6e0e348h
+dd 0f53b59a4h
+dd 0b68974ceh
+dd 0cdf7e997h
+dd 0e09ef475h
+dd 0581039d3h
+dd 04a2fc003h
+dd 04e72c8a9h
+dd 0b131ccaeh
+dd 0af960585h
+dd 0c3649171h
+dd 04be974cfh
+dd 0b9243118h
+dd 07cd8427eh
+dd 0ee18f0c4h
+dd 03e4ed08bh
+dd 0c4dc00e3h
+dd 0a60c1334h
+dd 044df204dh
+dd 02af65370h
+dd 02da8965ch
+dd 0d14d2bbeh
+dd 04b756cf4h
+dd 0e14ecde9h
+dd 0c0c44f70h
+dd 0ba70a9d1h
+dd 0faa2921bh
+dd 051911598h
+dd 07029ca6ch
+dd 03a751d0bh
+dd 0f326c522h
+dd 07c137599h
+dd 0523bffbbh
+dd 0401bfabch
+dd 077118359h
+dd 03fd9ed56h
+dd 021c0bc05h
+dd 0153a1230h
+dd 0b4381d95h
+dd 06dbec943h
+dd 072763661h
+dd 012c361fbh
+dd 053e01802h
+dd 06d42cef6h
+dd 090ae3856h
+dd 0c67fa562h
+dd 0056cd084h
+dd 0d0cb2a51h
+dd 04de7e812h
+dd 0718c17c1h
+dd 00b7a35d3h
+dd 03ea10449h
+dd 09422216eh
+dd 0073028e6h
+dd 02c287290h
+dd 03d27a490h
+dd 0a615b734h
+dd 0a3dabe71h
+dd 0a60672a0h
+dd 0a401e5e0h
+dd 008e82c00h
+dd 0d4206106h
+dd 0f6e8cf64h
+dd 0cbdabd9ch
+dd 0c05f7d6ah
+dd 040fcbc39h
+dd 038ec3b9ah
+dd 0295d9f62h
+dd 0ac29f897h
+dd 05d13e7ddh
+dd 025053efbh
+dd 0e72ccd6bh
+dd 03ac128e5h
+dd 042d3aa46h
+dd 073fa482eh
+dd 0efe31ab1h
+dd 0357b436bh
+dd 0bb2e9895h
+dd 0faadd532h
+dd 0aadcf8eah
+dd 09b5574e7h
+dd 0e643d16eh
+dd 074412f0eh
+dd 038f13eebh
+dd 080e83e80h
+dd 0e1ff5651h
+dd 0b3a3723ah
+dd 09842ab92h
+dd 028fe33bbh
+dd 0f9dd2a23h
+dd 077c6daabh
+dd 0688284cch
+dd 0721586bbh
+dd 031266b03h
+dd 0b53ea864h
+dd 052909418h
+dd 016141260h
+dd 09ffa78d0h
+dd 0b5daa2a3h
+dd 0cb8753d6h
+dd 043e5aee4h
+dd 0e05b3491h
+dd 08a8f4028h
+dd 0627273eah
+dd 09220cbddh
+dd 0269fd06eh
+dd 0556506d9h
+dd 0f85f3479h
+dd 08838d78eh
+dd 07a93b357h
+dd 09c753df0h
+dd 000473d94h
+dd 05015fc51h
+dd 08b8e448eh
+dd 09c915ba3h
+dd 0f3d9f274h
+dd 02621763fh
+dd 0528ab982h
+dd 008ae5c48h
+dd 04431fdb9h
+dd 00f074ec5h
+dd 021a8a096h
+dd 0fb369285h
+dd 025ebb7e9h
+dd 051b14d9ah
+dd 077ea27a8h
+dd 07883a0d0h
+dd 0ee106c0ah
+dd 00de2220ah
+dd 0f6fcdc84h
+dd 096e96488h
+dd 0e457843bh
+dd 0eea35cbdh
+dd 02f9505e8h
+dd 09c81faddh
+dd 0f7aadc88h
+dd 0f75c4a32h
+dd 02dd3aaafh
+dd 01630d749h
+dd 06410d04eh
+dd 0b376ba9fh
+dd 0ea3fddceh
+dd 0a5a77267h
+dd 021c9a930h
+dd 099aaf637h
+dd 00e1969f4h
+dd 07dbc75eeh
+dd 0876bfcf3h
+dd 00185ae63h
+dd 01718ce4ch
+dd 08d93350ah
+dd 03e1ca8d7h
+dd 0cd784ea7h
+dd 084bb5821h
+dd 084a41006h
+dd 0710d3f16h
+dd 0217b5d2eh
+dd 029dd95b5h
+dd 0dd225f32h
+dd 0d1de040ah
+dd 08f8bed96h
+dd 0576ebc40h
+dd 08977a4e7h
+dd 084295c3dh
+dd 081888fc7h
+dd 0ce144218h
+dd 0969cd9a5h
+dd 07bfc42fdh
+dd 09fb7202eh
+dd 0851042b0h
+dd 0ee7dcd3ah
+dd 0b2c46c9eh
+dd 0795d2bf6h
+dd 0cb92369fh
+dd 06a561d60h
+dd 04a80266dh
+dd 09885312fh
+dd 0b59042ech
+dd 0cd822e14h
+dd 09fd9fd94h
+dd 0db0f13abh
+dd 07f75be9bh
+dd 0ce9000deh
+dd 0c2df3b1bh
+dd 0e14fcd98h
+dd 0a395bc44h
+dd 0b2768a13h
+dd 06cb4ce2ch
+dd 061b22a30h
+dd 0f13a44b0h
+dd 0daedd76ah
+dd 0549ec628h
+dd 0c3e591a3h
+dd 05b3af592h
+dd 05aef3317h
+dd 0ad311346h
+dd 04d74c4aeh
+dd 0eafd02f6h
+dd 022ee6037h
+dd 0f7bf8444h
+dd 071fa5acch
+dd 0d880d780h
+dd 007cab0efh
+dd 087d6f09dh
+dd 0e548338bh
+dd 0d49ddb88h
+dd 08805772dh
+dd 08ee445e2h
+dd 07674b4b9h
+dd 0aaa6b3b6h
+dd 03e7ef413h
+dd 0e485e280h
+dd 07e396c5fh
+dd 0e5b5138dh
+dd 042a84be7h
+dd 0020a6437h
+dd 0bcdef2ach
+dd 0ad73e952h
+dd 0127a88a6h
+dd 0e186cad9h
+dd 0402034ddh
+dd 09852d662h
+dd 048f9eaach
+dd 0a5ac18a4h
+dd 0f8af20d9h
+dd 00d83df6fh
+dd 06806d2d3h
+dd 068b51470h
+dd 0148d58ech
+dd 07170d0f5h
+dd 00452f18bh
+dd 01d5f012bh
+dd 09925de75h
+dd 026243b70h
+dd 03b1af65fh
+dd 0ed630fcfh
+dd 0466189b7h
+dd 0eb1a003fh
+dd 049330260h
+dd 094beae51h
+dd 00e260f81h
+dd 036b1e1e6h
+dd 086398768h
+dd 08e6551b3h
+dd 0d6e99c9ah
+dd 01375282dh
+dd 0989ddfa7h
+dd 06b28c7ffh
+dd 01a40ba20h
+dd 0692c5d44h
+dd 0a39ca635h
+dd 098e513a5h
+dd 0f0cb3c2eh
+dd 0869ad5eah
+dd 003eba067h
+dd 0e85828aeh
+dd 0a8fb61a0h
+dd 0ffcc1db9h
+dd 0f1b98f18h
+dd 05a60e2c5h
+dd 03060afceh
+dd 07787810fh
+dd 05ac779ddh
+dd 07777841eh
+dd 0589f504ah
+dd 03d88c7dbh
+dd 031b8fb1fh
+dd 05bee04ech
+dd 0ef91838ah
+dd 0a7a283cfh
+dd 0edced6bbh
+dd 01bdb2adeh
+dd 09a10ced7h
+dd 009360533h
+dd 0ed315fa4h
+dd 035382de3h
+dd 05617f04fh
+dd 074158217h
+dd 00eb06a24h
+dd 0ae847bf4h
+dd 06fbdca84h
+dd 05abf86cfh
+dd 00319fc74h
+dd 0789eff8fh
+dd 0aa1777a4h
+dd 0278e4bc0h
+dd 0b2fe0216h
+dd 0a16ba581h
+dd 06aa6bdd8h
+dd 0f6523245h
+dd 0ea7238a0h
+dd 0afc6f2f0h
+dd 02901688bh
+dd 0054ec92eh
+dd 0b19f7a31h
+dd 0d846f1f9h
+dd 05a31c904h
+dd 0dfca5f97h
+dd 020defb7fh
+dd 0da48fef6h
+dd 0c01d1f48h
+dd 0ef313d20h
+dd 00544d67ah
+dd 0fe5df1ffh
+dd 0c8c80799h
+dd 0ebf39a2bh
+dd 04c5412a0h
+dd 09a1add49h
+dd 018a11110h
+dd 0f1a00491h
+dd 062596eb6h
+dd 004483d4ch
+dd 027d7e6e4h
+dd 0ebefedf7h
+dd 0fdea9809h
+dd 0016e66ffh
+dd 0f76bff6ah
+dd 00a430e72h
+dd 0dcc50fc5h
+dd 08946ad2ch
+dd 057d1604ch
+dd 03f49a6d5h
+dd 0abd329bdh
+dd 0218a6c21h
+dd 019c11daah
+dd 07864e59dh
+dd 08233249dh
+dd 044b33d47h
+dd 098d7d4d9h
+dd 0e48405cdh
+dd 0287c0bc8h
+dd 0cfaa6eddh
+dd 095790290h
+dd 06fe8c4a4h
+dd 00ea0f66bh
+dd 04366fe26h
+dd 04b9444c0h
+dd 01400a0e1h
+dd 06a61788eh
+dd 02774170dh
+dd 065325f3ch
+dd 0b8e740f7h
+dd 0cf740fc0h
+dd 089fe8826h
+dd 09199d9a6h
+dd 0a675870ah
+dd 003825f2ah
+dd 0cdb0f43ch
+dd 03e50fc11h
+dd 0a06cc63bh
+dd 01a79e49ch
+dd 0d8757945h
+dd 0f59d902eh
+dd 0332bbf0ah
+dd 0b23c0cefh
+dd 046f7ebf5h
+dd 0632cdd5bh
+dd 0c9540af1h
+dd 0102fe05fh
+dd 0053d27a0h
+dd 058ae51d9h
+dd 052348525h
+dd 0771a1e12h
+dd 0f5a420c7h
+dd 02c651604h
+dd 085e12964h
+dd 05ede7507h
+dd 0a871d888h
+dd 02778f348h
+dd 09e9a5a59h
+dd 04b65e39ah
+dd 0d5e223cch
+dd 040045c8ch
+dd 057eff080h
+dd 0c3404c71h
+dd 08eeffdbch
+dd 07485fd31h
+dd 097c1de6dh
+dd 02842a8c2h
+dd 0cbc811e0h
+dd 04496acabh
+dd 08c56dab5h
+dd 0dd41f57dh
+dd 0238b4c14h
+dd 01cc76466h
+dd 03df6106dh
+dd 062035511h
+dd 0eb5b8005h
+dd 0588f3b5bh
+dd 02e1fc8f3h
+dd 0fd6bfe98h
+dd 0a4bcf11ch
+dd 0906109fch
+dd 0a82d17d0h
+dd 047394fc5h
+dd 08893a76bh
+dd 02da4c25eh
+dd 044bb3fdeh
+dd 0533cb8c6h
+dd 0972d783eh
+dd 057a7ef06h
+dd 05b9c76e1h
+dd 0ee397a77h
+dd 0b58b5879h
+dd 0dba3d366h
+dd 0f9347a30h
+dd 0c232a55ch
+dd 010a7b406h
+dd 046fc7a20h
+dd 0fc1cfe82h
+dd 06a0842ech
+dd 0131c2b77h
+dd 0f6c63ef6h
+dd 0f35180c2h
+dd 0217963c9h
+dd 0060be044h
+dd 06bad1cffh
+dd 0b62060f1h
+dd 00be3bd7fh
+dd 074abba5ch
+dd 0b560a614h
+dd 0e06b81e7h
+dd 0a8fbc5e6h
+dd 077ba1f4ah
+dd 0b5120f6bh
+dd 0fd9a8607h
+dd 0098c810ch
+dd 0b558eb61h
+dd 08ec72d7ah
+dd 03150d81ch
+dd 0ac439bafh
+dd 01a338a8dh
+dd 049c439f4h
+dd 00645cdeah
+dd 0aeebaf4fh
+dd 0f72d1365h
+dd 02589ee55h
+dd 08c0d6902h
+dd 08fe18d9bh
+dd 00ddfc084h
+dd 08ceea9c8h
+dd 0582b9ae4h
+dd 078328ce7h
+dd 01aa315a7h
+dd 02e8adee3h
+dd 07aa49ce1h
+dd 0d81ddc1bh
+dd 09939a61ah
+dd 0d2e332e9h
+dd 070d7e250h
+dd 0477a944dh
+dd 033166be5h
+dd 070ed9997h
+dd 0f4b74eb6h
+dd 0352f854ch
+dd 0d17171c3h
+dd 0ac65a688h
+dd 0316f2cebh
+dd 04e5df733h
+dd 053c96311h
+dd 0001e5f5bh
+dd 00d86db0fh
+dd 073468907h
+dd 0d646819bh
+dd 02209ac8ch
+dd 0a2c80da8h
+dd 077074b87h
+dd 089f1ebdah
+dd 00ebb0cf4h
+dd 017f7fcfah
+dd 0a4dae0a3h
+dd 07c8f796bh
+dd 05ded6ad9h
+dd 059db05d2h
+dd 0714d44feh
+dd 0899966e5h
+dd 0cceee776h
+dd 02b5f3da8h
+dd 07aed2cafh
+dd 04ffe3dd0h
+dd 0d8003156h
+dd 07d59689dh
+dd 004e76a1dh
+dd 02fe40e99h
+dd 066aac23eh
+dd 0911a0e9ch
+dd 0afda1db8h
+dd 035894941h
+dd 05469a28bh
+dd 0835e2d04h
+dd 0139ea1eah
+dd 073ae21dfh
+dd 0298e11a0h
+dd 0e41fdcbbh
+dd 08be446b9h
+dd 09635a1feh
+dd 0a918c046h
+dd 013de6b06h
+dd 001c63178h
+dd 09e869835h
+dd 03b357958h
+dd 0950eaf3dh
+dd 039c32564h
+dd 0f7b0dc04h
+dd 07e589664h
+dd 0a4a69363h
+dd 0604b3cc1h
+dd 06443f3ceh
+dd 07d8c3beah
+dd 0289022c5h
+dd 0407957f7h
+dd 0a4ea2577h
+dd 056472351h
+dd 0b11687eeh
+dd 0ec5da983h
+dd 03b97c013h
+dd 027f21468h
+dd 062265b27h
+dd 0784097efh
+dd 077aed8eeh
+dd 0b1f3a24bh
+dd 0bd9d8ab8h
+dd 07360b092h
+dd 0acd103d8h
+dd 0b62e08e4h
+dd 08e07e86dh
+dd 0a67abb6ah
+dd 037eba2b0h
+dd 08c0016c7h
+dd 0c39b94f5h
+dd 05e0c575dh
+dd 06e5d2257h
+dd 09eddcc91h
+dd 0f767e016h
+dd 04df6aebch
+dd 0415a7de3h
+dd 0c017a2b9h
+dd 02873b398h
+dd 045d386b5h
+dd 033de9bbeh
+dd 05d5c1227h
+dd 05e736d66h
+dd 0e01d3feah
+dd 0b096b3d8h
+dd 0ae4c632eh
+dd 095d2c38ch
+dd 0d1c00192h
+dd 05a932357h
+dd 022e1f286h
+dd 00da2ef28h
+dd 070b21348h
+dd 0a7a0827ch
+dd 012f4a1aeh
+dd 0097db42dh
+dd 0d2097c05h
+dd 0f792f2dch
+dd 0f0111da2h
+dd 0fe3a058fh
+dd 0c8408f36h
+dd 0285235a6h
+dd 0964d7ca3h
+dd 07a1d8f5fh
+dd 0bf0522f6h
+dd 04b7c9dd7h
+dd 0bd809d3bh
+dd 0d48eb9bdh
+dd 024e50d94h
+dd 0c9dbd749h
+dd 00d1b1064h
+dd 07ea9dce3h
+dd 03cb47b57h
+dd 0a7ebde49h
+dd 01c060482h
+dd 05ce1ab27h
+dd 0c6e4f3c5h
+dd 02a569f90h
+dd 0d7e6ef0eh
+dd 0fa26599ah
+dd 073c94971h
+dd 0f7266389h
+dd 068c3ab00h
+dd 0390d7f57h
+dd 0c5fa9684h
+dd 0d067e2beh
+dd 0e0355b59h
+dd 0104cd3a1h
+dd 02d830ec3h
+dd 0c26bc320h
+dd 0d49b56afh
+dd 006cfd07eh
+dd 090c93246h
+dd 06b4df8e5h
+dd 077a98a1ch
+dd 0dd39b11fh
+dd 0b863c539h
+dd 01689d8abh
+dd 0f4ece4f8h
+dd 0586bbd01h
+dd 0a2e019adh
+dd 022323aa7h
+dd 05b32285ch
+dd 0c0108844h
+dd 069cfa2d5h
+dd 095ae676dh
+dd 07afc8cb8h
+dd 044eff3fch
+dd 0598e8211h
+dd 008b72972h
+dd 033f60334h
+dd 09a52f15bh
+dd 00e36c92eh
+dd 0e7774b16h
+dd 0a4dbf15eh
+dd 08acf79cah
+dd 023337e83h
+dd 085a4260bh
+dd 0c5fed45bh
+dd 05023f7ddh
+dd 00da9bbd7h
+dd 030e182a4h
+dd 07da27060h
+dd 08d5889b1h
+dd 0161ac03ch
+dd 0075aaad3h
+dd 067bd911ah
+dd 0d931cbb4h
+dd 06c1425d7h
+dd 0c52583d7h
+dd 0ff46c85bh
+dd 04a002846h
+dd 0ff6a7a04h
+dd 031690aaeh
+dd 05c4bf73bh
+dd 029959cf5h
+dd 091b64ba8h
+dd 0a8d03d08h
+dd 0dad5b739h
+dd 09d1d8b45h
+dd 0516e336ch
+dd 05ac7b905h
+dd 026a981dch
+dd 0f1ce1361h
+dd 0d5b95749h
+dd 075745e22h
+dd 0d136cba5h
+dd 07747b786h
+dd 0ae8075cbh
+dd 02f2bd1c3h
+dd 04b9592c2h
+dd 0e5acb559h
+dd 02785c92ah
+dd 0246fe6e9h
+dd 01c8fc65fh
+dd 0d918b751h
+dd 0787f7ce4h
+dd 0d46ff47dh
+dd 03d334d3dh
+dd 0e80521e7h
+dd 0e722ffa0h
+dd 066e7fa74h
+dd 06c6e756bh
+dd 0b5530b34h
+dd 0997825d3h
+dd 02e543c2bh
+dd 0e403715ah
+dd 037b7d003h
+dd 0f964ac50h
+dd 0280e3f50h
+dd 04ee4b7c0h
+dd 021a7a107h
+dd 0a9eb01bbh
+dd 03691e887h
+dd 0199c2d30h
+dd 048b633d6h
+dd 00279721ah
+dd 0b299708bh
+dd 0022c5eeeh
+dd 0c72a6316h
+dd 08a580df5h
+dd 0de364294h
+dd 0345eace2h
+dd 0c10c35fch
+dd 07821907bh
+dd 0d9c55942h
+dd 03b3e6686h
+dd 078edc856h
+dd 0a2b9ce69h
+dd 0582ef821h
+dd 0d0f56232h
+dd 0f6c064f1h
+dd 003d3cd70h
+dd 06e35c48dh
+dd 07f912821h
+dd 09139d6bbh
+dd 00de62d85h
+dd 08a95b8dfh
+dd 06fed6813h
+dd 0f01fd0fah
+dd 007221023h
+dd 00ab23badh
+dd 0be66925bh
+dd 0b0f9bebah
+dd 024eb5b42h
+dd 057b68cfeh
+dd 0ae236354h
+dd 0b3d32a95h
+dd 055aa3dd2h
+dd 08aef2865h
+dd 0eeabd927h
+dd 066d3f4d3h
+dd 084492e06h
+dd 0b8ab3f16h
+dd 09df516edh
+dd 0f716fec5h
+dd 0a4851cbdh
+dd 03a86ede8h
+dd 001369c94h
+dd 0a5c66abah
+dd 093d169b0h
+dd 018d22575h
+dd 09707cc9dh
+dd 015f7c06ah
+dd 0a08e3f0ch
+dd 0a6581f76h
+dd 08fb039c7h
+dd 09eacdcfbh
+dd 09c929e8ch
+dd 0a1b826c6h
+dd 0821427dbh
+dd 0312fe40ch
+dd 0fd570737h
+dd 040083ba6h
+dd 06915994dh
+dd 0165fd013h
+dd 01b0fe6d2h
+dd 0f9c7c640h
+dd 08ec6b983h
+dd 02a6390c7h
+dd 05d6944dah
+dd 005895dcch
+dd 0b995f84eh
+dd 05f5ecf23h
+dd 0c56a42f1h
+dd 0faf5529dh
+dd 07ddbf17dh
+dd 00c03c8cch
+dd 09421fa4bh
+dd 09625abddh
+dd 05af9dd2eh
+dd 0113e7727h
+dd 0be5b03b4h
+dd 0edf4f3eeh
+dd 0e93c6325h
+dd 0c5f99ecbh
+dd 073d61262h
+dd 0af259604h
+dd 0909a350ah
+dd 01d751bc0h
+dd 057ab762eh
+dd 0c79cd28ch
+dd 04db113ebh
+dd 06e2637c6h
+dd 07f249ee8h
+dd 02ed21a19h
+dd 03253fa84h
+dd 0e9fff471h
+dd 0155628d2h
+dd 057ce5b0ch
+dd 0397e73e2h
+dd 0a22e0e51h
+dd 0be74fa7fh
+dd 06edd8975h
+dd 0befc7e1dh
+dd 0ed0357c3h
+dd 0cadf2d45h
+dd 057d604fdh
+dd 08c5ba026h
+dd 06f429eadh
+dd 05d93ea99h
+dd 0c398a0d4h
+dd 0da30e836h
+dd 025c6bd85h
+dd 055c79fc5h
+dd 08174eaebh
+dd 00887cb06h
+dd 0fa4feb50h
+dd 0be6979bbh
+dd 060b293e2h
+dd 08a7d183dh
+dd 0a67694a7h
+dd 009c557e9h
+dd 0951430c8h
+dd 06b60f8ddh
+dd 075d371d6h
+dd 0401d6dd8h
+dd 03accfc1eh
+dd 0812694c5h
+dd 0cb9a8f59h
+dd 0fc7f3each
+dd 04f47c614h
+dd 0c3fa4846h
+dd 0c39627d8h
+dd 0584f70e8h
+dd 0477713bbh
+dd 0deb462ebh
+dd 027d100e0h
+dd 0cff37f91h
+dd 0dea89096h
+dd 0083d1fffh
+dd 04727c086h
+dd 06e258c67h
+dd 077298e3dh
+dd 03d649b88h
+dd 0690b2c63h
+dd 0c58d93a7h
+dd 00a5a6762h
+dd 0570f3fd4h
+dd 040d7a3bdh
+dd 0fa21994fh
+dd 06640096ch
+dd 06e7ee6ffh
+dd 02a9fa8cdh
+dd 073c812dbh
+dd 011edc864h
+dd 0ff67f21bh
+dd 0b8fd7af5h
+dd 0e7ded520h
+dd 069b1f578h
+dd 03b57a932h
+dd 092930adah
+dd 0fad8b1f2h
+dd 051eed71ah
+dd 051072e4dh
+dd 069d3526ch
+dd 0b20e6e19h
+dd 0d010a8a9h
+dd 0201fae20h
+dd 072dd3383h
+dd 0900f6020h
+dd 08ad87735h
+dd 01c6a8e31h
+dd 033b83ae2h
+dd 0336842ddh
+dd 074dd559ah
+dd 039321d7ah
+dd 0137d0911h
+dd 0ff68f5b9h
+dd 0a094ba1ch
+dd 092acedd6h
+dd 0d5bd8ccah
+dd 0a09c058eh
+dd 0a7093d4ch
+dd 0a278259eh
+dd 05501af48h
+dd 0ff030c4dh
+dd 01ddcbbfah
+dd 0930e9185h
+dd 0abb0e8d8h
+dd 04923d5e4h
+dd 0f4d7db7dh
+dd 0d1f71fc5h
+dd 0c3cdab80h
+dd 03d58dedfh
+dd 0b0510b79h
+dd 048e1384ah
+dd 0dc9594a6h
+dd 02abf2ca7h
+dd 03bc7546eh
+dd 0bb5f248bh
+dd 0bdcfb80dh
+dd 05b35804ah
+dd 0bd056864h
+dd 0b58f88edh
+dd 07ae37e74h
+dd 04d056937h
+dd 0ae6dc79eh
+dd 040eed468h
+dd 0a6b51e9eh
+dd 052c5930dh
+dd 06eb4791ah
+dd 0ee4f55eah
+dd 00401d7fbh
+dd 01a9dcf0ah
+dd 0a7bf1e26h
+dd 0e766f227h
+dd 049c0ed1dh
+dd 0540ce6c7h
+dd 078a27a04h
+dd 0018f0f67h
+dd 0a87a9ef6h
+dd 040c407dbh
+dd 0242938edh
+dd 012cc78b3h
+dd 07ddab8b9h
+dd 003609d5ah
+dd 051ed3cabh
+dd 07ad1634fh
+dd 0ad27ce11h
+dd 0fe0dcf49h
+dd 0715fc240h
+dd 038dbcc94h
+dd 055e33d5fh
+dd 072edb2cbh
+dd 0c0d615d4h
+dd 037311d1fh
+dd 0dc74c8e5h
+dd 0d94b0263h
+dd 0094a75abh
+dd 0a8a8e9f7h
+dd 0f44dfcd7h
+dd 072097472h
+dd 0938e7a13h
+dd 0bf9fe9e6h
+dd 0fb1b6f57h
+dd 0c7bca4a1h
+dd 0d2f16e00h
+dd 08ba8ff8bh
+dd 0deb39d8eh
+dd 025104c71h
+dd 067d6576fh
+dd 0179b6edah
+dd 040a28544h
+dd 0d7f18219h
+dd 03ea8470ch
+dd 0959264d7h
+dd 0e0792c06h
+dd 08f5e4c48h
+dd 05ab7d639h
+dd 0cc092a55h
+dd 0e0d09dc4h
+dd 0cee5f7c2h
+dd 043d1dd6dh
+dd 09fc92887h
+dd 0fada5efbh
+dd 07611b9a1h
+dd 0f2000077h
+dd 0eb7ec8e7h
+dd 0f1592998h
+dd 0f1e8373eh
+dd 0dad19891h
+dd 05f46d466h
+dd 08ddb4ab6h
+dd 04501687bh
+dd 01332ac4ah
+dd 047a951deh
+dd 0381bbf08h
+dd 047fe8008h
+dd 0d4bfb061h
+dd 0bb6fefcdh
+dd 08c4491f6h
+dd 017286ff5h
+dd 00553d4fah
+dd 066a49068h
+dd 0bfd3c0a6h
+dd 04b2bc98ah
+dd 0f2d65629h
+dd 03558a94ah
+dd 08c93f0e6h
+dd 0e65a8409h
+dd 01cba3ae7h
+dd 02678c9cch
+dd 0a0b4bdaeh
+dd 03252691bh
+dd 040870ca1h
+dd 07224b57ch
+dd 03b4b45b8h
+dd 084a56b43h
+dd 023307f20h
+dd 0fa678f71h
+dd 0c796ee15h
+dd 02ade78fdh
+dd 008132196h
+dd 0e40ae477h
+dd 036eb53f1h
+dd 0086ea19ah
+dd 01a90b2edh
+dd 026cc2bbeh
+dd 05325ec7ch
+dd 03aa07271h
+dd 0e69b1d1ch
+dd 065c54316h
+dd 028a99a56h
+dd 09e351ed8h
+dd 02872c856h
+dd 0be6aae3eh
+dd 0b40ba68dh
+dd 06d33482eh
+dd 0bd18fcb3h
+dd 02b518611h
+dd 0537903deh
+dd 0b6666f98h
+dd 094d29e4ch
+dd 03d9f8f37h
+dd 060aa07fdh
+dd 003c53689h
+dd 08b86cac6h
+dd 0680323b2h
+dd 017b85d64h
+dd 07d8054b0h
+dd 06a570b5eh
+dd 0db54530fh
+dd 0c3da93f7h
+dd 0b19b3264h
+dd 073e862edh
+dd 052bfc7fch
+dd 0e0f00deah
+dd 028903e4ch
+dd 070b48628h
+dd 0cfc50102h
+dd 0c9f9d85eh
+dd 00cdfc162h
+dd 06dfc05f7h
+dd 04d9a913ah
+dd 098397a29h
+dd 01aa72178h
+dd 0b0e88d54h
+dd 0ccf0e78fh
+dd 004333c87h
+dd 0f3a9c3ceh
+dd 0ccea333fh
+dd 04ef10e2ah
+dd 0351514d3h
+dd 0428c2adfh
+dd 03748b7e5h
+dd 0fd8f2254h
+dd 07d3276c2h
+dd 0a35c5b8fh
+dd 005b7cb06h
+dd 0df4d2b3dh
+dd 0bac917b1h
+dd 0d2f3c738h
+dd 0c4d814c7h
+dd 0120814beh
+dd 09d727b33h
+dd 03f63675dh
+dd 05afc39d2h
+dd 0d061e69dh
+dd 015872ba7h
+dd 09c4add9dh
+dd 09a157b9eh
+dd 0bd7bcdcbh
+dd 04352a557h
+dd 0871569ebh
+dd 09a18a10ah
+dd 0a65cdec2h
+dd 0c22e54a1h
+dd 0af3157f9h
+dd 0ce6c82b5h
+dd 090a04970h
+dd 095a4554bh
+dd 09718fa73h
+dd 09fb5fd6fh
+dd 017a9d0e9h
+dd 0f136891eh
+dd 01c619fbeh
+dd 00c898799h
+dd 0c5115883h
+dd 0472317bch
+dd 0a04759aeh
+dd 0fac3e468h
+dd 02f4b6a1ch
+dd 0897f8787h
+dd 09c5bee9ch
+dd 00741fed7h
+dd 06de2fc2bh
+dd 095d443aah
+dd 0a2f17ab5h
+dd 0495cecbch
+dd 059616f09h
+dd 013c4defeh
+dd 0e0b65141h
+dd 09f2b7cdeh
+dd 00dfd1190h
+dd 0980b1ab9h
+dd 0fcdc1700h
+dd 0e867d979h
+dd 0241db0ach
+dd 013f24c9bh
+dd 08cd4e069h
+dd 0a53c4c23h
+dd 0e2f881c7h
+dd 035c51ee1h
+dd 0307f55b7h
+dd 08eb5763dh
+dd 0a5ea9498h
+dd 074681ad5h
+dd 0f8ff71f6h
+dd 036c30878h
+dd 06e23f3e0h
+dd 0d14bbd7ah
+dd 091e20dc6h
+dd 035000580h
+dd 01aca9c28h
+dd 0e953cd46h
+dd 0b8a64c8bh
+dd 0fbb6e48ch
+dd 0a516890ch
+dd 0b8b5da82h
+dd 02c46655ah
+dd 02b4abe9ah
+dd 0af3993ffh
+dd 04ed8feb5h
+dd 0f6388808h
+dd 0ce51b1f3h
+dd 09ae3953fh
+dd 0819f54bch
+dd 0b03932a2h
+dd 06ad4becdh
+dd 03cb72ea9h
+dd 0b3d85caah
+dd 0bb32aa30h
+dd 0818e956ah
+dd 01fc982a4h
+dd 09f629d96h
+dd 0ae187ecch
+dd 0ac5728feh
+dd 016005bb5h
+dd 0c8fd1f71h
+dd 0cf543d25h
+dd 02e4044b6h
+dd 0c813326fh
+dd 073008994h
+dd 014554edeh
+dd 05905099eh
+dd 0a95cf79fh
+dd 06df13519h
+dd 0c9145e07h
+dd 0150b579bh
+dd 0c0eec246h
+dd 0f988994ah
+dd 00cd94796h
+dd 053c22072h
+dd 097dbb837h
+dd 0619a5765h
+dd 04484eedah
+dd 0e96ea079h
+dd 06cf91685h
+dd 01ea92593h
+dd 0c0701744h
+dd 0ca87df0eh
+dd 01aa648d7h
+dd 00640ef9bh
+dd 08b92a53dh
+dd 0f9f9dadeh
+dd 0cc016a6dh
+dd 0c1014e21h
+dd 0cba27306h
+dd 02d04d4c4h
+dd 06237eb2dh
+dd 02421fea3h
+dd 0fb556462h
+dd 045352aa8h
+dd 0954e44feh
+dd 0f0f922a8h
+dd 0663a0dbah
+dd 02faf4417h
+dd 082ca1319h
+dd 0dcf6fcd9h
+dd 0f503d7e5h
+dd 04f466390h
+dd 021d6fa10h
+dd 0c0bb877eh
+dd 03feb77a4h
+dd 023753ba0h
+dd 06251b326h
+dd 09d6fbfe7h
+dd 056a42c03h
+dd 062ba6281h
+dd 08eb8a798h
+dd 0f4ddfdd3h
+dd 05204e65fh
+dd 051ae6694h
+dd 0ed733b79h
+dd 044dfea32h
+dd 0e65dc4a3h
+dd 0619c9910h
+dd 0940a4eb8h
+dd 0c28cf773h
+dd 0bbfaff4eh
+dd 0d82914bfh
+dd 0e6359128h
+dd 02b95df9ah
+dd 0745a0fc1h
+dd 0c8391bcfh
+dd 0010d0b32h
+dd 0bba61f2dh
+dd 0ace4badch
+dd 08c0cf7b7h
+dd 08095ceffh
+dd 048a24863h
+dd 0f62e1378h
+dd 045384cb1h
+dd 08ee4f765h
+dd 03ea10c74h
+dd 018bb4e27h
+dd 0394f2766h
+dd 04c4af4feh
+dd 0e32a7f80h
+dd 0fd70709ah
+dd 0d86d052eh
+dd 0e72ddbf5h
+dd 0aee3c23dh
+dd 05f29711ah
+dd 06bc6ec2eh
+dd 03f7afe60h
+dd 08b36711ch
+dd 08a46eb15h
+dd 07c617166h
+dd 03d1a3026h
+dd 07d4cd671h
+dd 0221a3673h
+dd 0a8f65642h
+dd 059d95c72h
+dd 02f8676a1h
+dd 01428c590h
+dd 098d8f426h
+dd 0cfbf34a1h
+dd 0a4468362h
+dd 005435693h
+dd 07b9e6301h
+dd 0c8215431h
+dd 033a022ffh
+dd 0e5d72867h
+dd 08f2017c3h
+dd 0a419cf6dh
+dd 02891bdb1h
+dd 0a9ca4e7ah
+dd 09b48034fh
+dd 0d2ce5a03h
+dd 03d1d25aah
+dd 057127255h
+dd 0922ef511h
+dd 04bdfe8e7h
+dd 09fea191eh
+dd 0e33568b6h
+dd 01cb3a3f4h
+dd 0e62211b8h
+dd 0e60ac90eh
+dd 0f0bb26bah
+dd 017d244b0h
+dd 03c337bdfh
+dd 0a4d6e89ch
+dd 07bd42e41h
+dd 0a7acf7cdh
+dd 04dc3e688h
+dd 09362f797h
+dd 01c1f82b6h
+dd 00558103fh
+dd 079beb263h
+dd 0efa0d298h
+dd 0ee5b2ec1h
+dd 02bd26f2eh
+dd 0b9660a29h
+dd 0ba47bf12h
+dd 05a168f48h
+dd 0e0499de3h
+dd 0a1a93c78h
+dd 0e91900c8h
+dd 0e4a5abcah
+dd 03e2b2e8ah
+dd 00a62a9cdh
+dd 0bda1324ch
+dd 0f4ec7905h
+dd 03607f19ch
+dd 08802099ch
+dd 011bb3478h
+dd 0efa46c52h
+dd 0b57a37ach
+dd 0138a7fcbh
+dd 00c2ec027h
+dd 0f4c7022dh
+dd 075e3ec31h
+dd 08009d8b2h
+dd 01667bd43h
+dd 0774b44b2h
+dd 0b86549b8h
+dd 035ac0bc2h
+dd 0b70b3492h
+dd 097cbcbbbh
+dd 06b91aebdh
+dd 07fc3c7bch
+dd 082f65747h
+dd 080848a73h
+dd 07941358ah
+dd 0a97bb01dh
+dd 063401c2eh
+dd 020db8133h
+dd 07fbe12e2h
+dd 04b272fe2h
+dd 064500bc3h
+dd 014ec83a1h
+dd 081f765a1h
+dd 011d412d5h
+dd 072af1568h
+dd 0992525b3h
+dd 04aa8655fh
+dd 06f300305h
+dd 0b45bb9ddh
+dd 06e08178bh
+dd 083341e1fh
+dd 062a09cd3h
+dd 01105d90dh
+dd 0814d75f6h
+dd 0813f666ch
+dd 0af0b7854h
+dd 01fc9a5c6h
+dd 03053971fh
+dd 01a946cd2h
+dd 08cd466e4h
+dd 0023f700ch
+dd 09dbf6940h
+dd 0766df2b3h
+dd 0668487ach
+dd 0f6baa3f4h
+dd 04b2c1b97h
+dd 080b0b9e5h
+dd 02fd3bff3h
+dd 02df57b23h
+dd 08dbc024ah
+dd 0f5665f5bh
+dd 085f70afeh
+dd 0acd29da6h
+dd 02b828aaeh
+dd 00c830621h
+dd 0813087d9h
+dd 0854a063ch
+dd 07afe7a49h
+dd 006b2fbc0h
+dd 0f1951060h
+dd 09f84e315h
+dd 0b49be474h
+dd 03e346f6ch
+dd 0d6260253h
+dd 08e0b9f60h
+dd 0feb41647h
+dd 080876ed4h
+dd 0fd833803h
+dd 0aad6c8dfh
+dd 0b498f375h
+dd 02fc7bcbch
+dd 03cbbe6adh
+dd 01c513182h
+dd 08aaf70bbh
+dd 011988e5bh
+dd 0b1e5ce68h
+dd 08d9bb4c8h
+dd 08378d6f2h
+dd 0ad9b12b2h
+dd 06f547878h
+dd 0c3b62319h
+dd 002f5440ah
+dd 009cf73c5h
+dd 0d32ea35bh
+dd 0c3091e73h
+dd 0b6409687h
+dd 0ffd99ee7h
+dd 0d154344ch
+dd 0cd3965bah
+dd 016e9a936h
+dd 0ee606a57h
+dd 0efabc9f1h
+dd 041592467h
+dd 065dac911h
+dd 0c364885ah
+dd 071d63515h
+dd 09e802f47h
+dd 012610532h
+dd 03b88707fh
+dd 08b87bbc3h
+dd 0143bc209h
+dd 06bb9c29bh
+dd 0d0cc0e0bh
+dd 021d4e0a2h
+dd 0f70e0434h
+dd 002f1abefh
+dd 02e43647eh
+dd 0aa420393h
+dd 0f8e13861h
+dd 0020ba01ah
+dd 0fff5ec41h
+dd 059cbf160h
+dd 0795e9880h
+dd 03a6d4e91h
+dd 01250590bh
+dd 0fb68aedeh
+dd 0b1dfe68bh
+dd 0b8928b77h
+dd 06da8e6f6h
+dd 050c1bf9fh
+dd 0777e1b26h
+dd 05168ba1eh
+dd 027e1f09fh
+dd 05be6f0ech
+dd 02c469f03h
+dd 0f4223e74h
+dd 016ebb6f5h
+dd 028e9b28eh
+dd 007676d0fh
+dd 0a20038dah
+dd 06a9cf4f5h
+dd 0644e2ddch
+dd 085217546h
+dd 03e3316e2h
+dd 017cb65cfh
+dd 0df721c77h
+dd 03b75a686h
+dd 0a6680d2dh
+dd 0e5534902h
+dd 0b422946dh
+dd 05d04df09h
+dd 071f5f091h
+dd 075a30378h
+dd 0ea928e37h
+dd 0b564333fh
+dd 02fc0e592h
+dd 056692395h
+dd 09eb9e54fh
+dd 0e7850c04h
+dd 0d4fbffech
+dd 038c2e5a4h
+dd 089c7aa1ah
+dd 0cb05b7b8h
+dd 0328438beh
+dd 01af3834ah
+dd 092fd8107h
+dd 0ab8cbe39h
+dd 0ab54fc5dh
+dd 07cfcee18h
+dd 0d2852584h
+dd 0b4553000h
+dd 052028e29h
+dd 070c3f191h
+dd 00c59ceddh
+dd 0cd80ca8ah
+dd 072d749bdh
+dd 00e6f3676h
+dd 01060d129h
+dd 0593ac1dbh
+dd 0874794bbh
+dd 01a2b8b68h
+dd 053b2e4c5h
+dd 03bb7a3a2h
+dd 0e321a67eh
+dd 0e990d449h
+dd 08a821a6ch
+dd 00095eea9h
+dd 00d6b6dc4h
+dd 02ff18097h
+dd 0bcd7adbbh
+dd 00a67d27ch
+dd 0bf130edeh
+dd 03a07dc1ah
+dd 017374376h
+dd 0209a138dh
+dd 0c3ceb47eh
+dd 0abacfc62h
+dd 0a15c7317h
+dd 0a19c046dh
+dd 0b6abfe69h
+dd 0a1ea12c2h
+dd 0e7f5bc12h
+dd 035866aa0h
+dd 0df81d5bdh
+dd 0209640b5h
+dd 0091e9c9ah
+dd 02f452e73h
+dd 0dbe1e79eh
+dd 019f91e16h
+dd 06666e3c5h
+dd 013583484h
+dd 0f0c2e4cch
+dd 0bd1f1dd2h
+dd 096e92fd4h
+dd 09fffca39h
+dd 0eb68a223h
+dd 0b9c6a4bdh
+dd 00d98aa81h
+dd 074136326h
+dd 02ee09cafh
+dd 0314c9028h
+dd 017e53d90h
+dd 0c8a91183h
+dd 0d68f52e6h
+dd 03abcecd3h
+dd 0753eb54ch
+dd 09f99a1f2h
+dd 0875e5ef4h
+dd 0dbe70e01h
+dd 08461c67dh
+dd 0a96baf35h
+dd 0e637df29h
+dd 000c2ee0ah
+dd 05688d6beh
+dd 0fc021854h
+dd 013151069h
+dd 0cde40c40h
+dd 033a265b8h
+dd 077852b90h
+dd 069f63f5ah
+dd 06555c50ch
+dd 037977549h
+dd 0893f611fh
+dd 01e678665h
+dd 0d246db2bh
+dd 0dc1d2f13h
+dd 08ce16d59h
+dd 0bd332f90h
+dd 0da78dc3fh
+dd 090cb4fe5h
+dd 03cf011a6h
+dd 08b9440beh
+dd 0ac2ebfc6h
+dd 0676c9e66h
+dd 044d7f542h
+dd 00254f1e0h
+dd 00297e167h
+dd 02981c29ch
+dd 01ba17e50h
+dd 09f1ab777h
+dd 0cb01edf7h
+dd 0cab2c20bh
+dd 0b45fd69dh
+dd 0913a8209h
+dd 0420a9f28h
+dd 0dc5bd5c7h
+dd 09da7c9efh
+dd 0ffdaf727h
+dd 0844c6a9ch
+dd 04355460eh
+dd 0bcf384d0h
+dd 07506567fh
+dd 0ec6c2cd9h
+dd 0e08bb981h
+dd 08657ece7h
+dd 0c129f8cdh
+dd 0d0222e23h
+dd 08296f73bh
+dd 03cd0a8c2h
+dd 05c3ce3e1h
+dd 0b56b606eh
+dd 0254bea8bh
+dd 009978133h
+dd 0575f6808h
+dd 030d09777h
+dd 050dd9e0ah
+dd 079304bfeh
+dd 0a929d9b4h
+dd 00e81dbd5h
+dd 051f9ff47h
+dd 03797db87h
+dd 0dcdb005eh
+dd 0e08e3ab3h
+dd 01a98dd66h
+dd 046fec285h
+dd 084cededbh
+dd 060b18f8bh
+dd 003663f9eh
+dd 0caffd93dh
+dd 0d3b17324h
+dd 05bd7cd01h
+dd 097a5f4feh
+dd 05a399b5bh
+dd 0fd70d575h
+dd 04acd2a6dh
+dd 070c41966h
+dd 0782cd668h
+dd 056adbb96h
+dd 079439a79h
+dd 0397e2432h
+dd 0b7b906cfh
+dd 0dfb03df3h
+dd 05d45d142h
+dd 03e164513h
+dd 05aa7a898h
+dd 08c43a507h
+dd 03c1e4ce0h
+dd 09b1e534bh
+dd 0b54774b2h
+dd 0fd5ac20dh
+dd 0bc7a42bah
+dd 0bcab4ca5h
+dd 0bf867eefh
+dd 0f9aa1622h
+dd 0e6c612e1h
+dd 09e1dff69h
+dd 07db3e997h
+dd 06c48758dh
+dd 0dc3a1cf5h
+dd 0c6f22c8eh
+dd 02d975ff5h
+dd 0413450c4h
+dd 0b9253343h
+dd 085659a1ch
+dd 0aa201f6ah
+dd 0aaa0dacfh
+dd 0aaeeb51dh
+dd 090a592a8h
+dd 0baee25c7h
+dd 08239c852h
+dd 06798b637h
+dd 032df1f6ch
+dd 05abfd774h
+dd 0250284b7h
+dd 0a9b52f26h
+dd 00b40603ch
+dd 0ca43759ah
+dd 095ed7ddfh
+dd 0651ed52ch
+dd 00c01d8abh
+dd 08234e02fh
+dd 0e1915e30h
+dd 0b0dcd8d3h
+dd 026260111h
+dd 0afc56ee0h
+dd 002250d74h
+dd 0048f899eh
+dd 01a77f45ah
+dd 02120cb74h
+dd 080eb01d7h
+dd 0085d2c41h
+dd 0acd80e15h
+dd 06248576ch
+dd 0aea23b90h
+dd 0426cd251h
+dd 085864bf8h
+dd 0d025e51eh
+dd 053ea2aa1h
+dd 01b5ba942h
+dd 023ccb571h
+dd 0cc8a1b71h
+dd 0177ac056h
+dd 0002cbdc6h
+dd 0f5be9029h
+dd 0c776372eh
+dd 01727d539h
+dd 036dc016bh
+dd 0397407e6h
+dd 093fe863ah
+dd 0ce2773f7h
+dd 01a9d645fh
+dd 0e427fbc4h
+dd 0a59a6348h
+dd 02386c9cah
+dd 0751f2c80h
+dd 0a3161720h
+dd 08b02d3bch
+dd 0fa77a49ch
+dd 0bec69634h
+dd 0b071518bh
+dd 0209f76fch
+dd 00520a893h
+dd 079085062h
+dd 0136e06fah
+dd 0a559115fh
+dd 0e923cabfh
+dd 011b32e06h
+dd 08e5d662eh
+dd 0cbf42abdh
+dd 0a4d1f451h
+dd 0569ed6a5h
+dd 0581c4c4fh
+dd 04cbfd6b7h
+dd 06c9d15cfh
+dd 07a3c0295h
+dd 0d056574eh
+dd 008d418b8h
+dd 004d136d3h
+dd 058bd0751h
+dd 0dfe738b9h
+dd 035fc3c2eh
+dd 020324f59h
+dd 09b922d93h
+dd 0344e40e0h
+dd 05b476a34h
+dd 0034d7d93h
+dd 0286e2a0ah
+dd 0e8a2bfddh
+dd 00afe454bh
+dd 0a14011c3h
+dd 06fdc7cedh
+dd 00c7803a3h
+dd 006b1ab8dh
+dd 058239d89h
+dd 0bcdd1955h
+dd 0fbb3fca2h
+dd 0a5363c17h
+dd 069e87e03h
+dd 0b0b0b240h
+dd 0a86400f4h
+dd 061a70475h
+dd 0e79608d0h
+dd 0b63e94d1h
+dd 0a5e5af36h
+dd 0fa14306ch
+dd 08a98bed4h
+dd 01e72bb02h
+dd 00795bcf6h
+dd 0e0b3b757h
+dd 0e0ab364eh
+dd 0a5e81ad3h
+dd 0cd079c5ch
+dd 0e3e38224h
+dd 04b9d2c2ah
+dd 0c5e79039h
+dd 075431cdeh
+dd 043915724h
+dd 08384ea0dh
+dd 0ee8658f3h
+dd 0243c6ee3h
+dd 030b2bf47h
+dd 0d91d8f58h
+dd 058ede645h
+dd 040485f28h
+dd 0eaba3491h
+dd 0b1f2ef5dh
+dd 03b8a2d6ah
+dd 0523cc976h
+dd 05cd2fefch
+dd 0cb57a212h
+dd 0f7417e9eh
+dd 0fd4a4bc9h
+dd 019e454d8h
+dd 0bf76ec61h
+dd 0cfa8dedbh
+dd 0e46f5ed9h
+dd 03cbce09ch
+dd 00f2d1c40h
+dd 04100acd7h
+dd 096d668bah
+dd 09be27ea3h
+dd 0321330dfh
+dd 0a38d3270h
+dd 0d37061a7h
+dd 0dd55cef5h
+dd 0db44d22bh
+dd 0fb4512bch
+dd 047d0de7bh
+dd 039b5449fh
+dd 007dac9edh
+dd 0cd249678h
+dd 0d05c3de9h
+dd 09313740ah
+dd 0b4f14ad2h
+dd 0060dd609h
+dd 0c34c0014h
+dd 0079f4975h
+dd 053ea5f5eh
+dd 0c4725811h
+dd 0bab945bfh
+dd 0e6cbd1ddh
+dd 067901229h
+dd 0de49c5b2h
+dd 0f070299ah
+dd 09891e38eh
+dd 0f1a50ac8h
+dd 09979a37dh
+dd 08d0f3e53h
+dd 0e27b13c4h
+dd 0ed3256ach
+dd 0f61d78eeh
+dd 0e11ac91ah
+dd 0ec8e3ef3h
+dd 027989810h
+dd 0a4938dc8h
+dd 04927460ah
+dd 0e95a6390h
+dd 062f64497h
+dd 06b6ab8e7h
+dd 05ac625bbh
+dd 04b4b9714h
+dd 07d4ac21ch
+dd 0dd29a63ch
+dd 00fcc3ecbh
+dd 07c3d79e8h
+dd 094552186h
+dd 0dde6a83eh
+dd 08245ed75h
+dd 015c3a05ah
+dd 0967b54c3h
+dd 08b5cf385h
+dd 0c7ecf1c7h
+dd 0ea794f7ah
+dd 0dbf15c50h
+dd 07fba6b92h
+dd 05fe2e5c0h
+dd 0f74bddd1h
+dd 0a6cda87bh
+dd 0e7b1937dh
+dd 052365088h
+dd 068b8011ah
+dd 08aa84ed6h
+dd 0c33abf80h
+dd 084acaac1h
+dd 0e6523272h
+dd 0ea85cf92h
+dd 00b67e9d4h
+dd 0818ad965h
+dd 0dde7b1b6h
+dd 04c9f8297h
+dd 0b77087dch
+dd 05fbd28f5h
+dd 07e5f75deh
+dd 093aeeff0h
+dd 01f96bedeh
+dd 0ae44454ah
+dd 0035b114ch
+dd 009916cech
+dd 087462120h
+dd 0c50558b7h
+dd 0ff6ca18ah
+dd 0fa9adad1h
+dd 0077d0cc1h
+dd 009460bb2h
+dd 0c86b3b82h
+dd 0c40b052ch
+dd 03ef77e8dh
+dd 0a4534d31h
+dd 09080cf0bh
+dd 04ceac36eh
+dd 050e6a5aah
+dd 0c4ecb23dh
+dd 075acb57ah
+dd 064931d52h
+dd 07b6fe692h
+dd 0fd43a95fh
+dd 0552d7e97h
+dd 0e54289adh
+dd 03f7607cdh
+dd 07d02c729h
+dd 085cda84ah
+dd 03d83dc60h
+dd 0f85f2b26h
+dd 003c1b29ah
+dd 00a5c80afh
+dd 03ca62b5ch
+dd 01cfc8562h
+dd 011ec4230h
+dd 09a7ddc27h
+dd 0490fe432h
+dd 0dc0c1a2ch
+dd 0dfb16853h
+dd 009e6a8c3h
+dd 0ae4d4ba1h
+dd 007e48e0ch
+dd 0ce94b22eh
+dd 09f782918h
+dd 0319043e2h
+dd 0e0e805fdh
+dd 03ee7547bh
+dd 037c512d5h
+dd 016a539d8h
+dd 0875126fdh
+dd 0ba7a6c17h
+dd 0611ab25bh
+dd 080b8fa22h
+dd 0c8b81cdeh
+dd 08e2c3588h
+dd 0723570bah
+dd 0c3bce932h
+dd 0600bd61fh
+dd 023968c2bh
+dd 05e8b33ceh
+dd 04348ea85h
+dd 069dd30d5h
+dd 080712d2ch
+dd 0b40f5143h
+dd 0460a708eh
+dd 0f974252ch
+dd 0fda96407h
+dd 0a42a3daeh
+dd 0e6ed2ec1h
+dd 00d27a67dh
+dd 0210732e6h
+dd 0b46908abh
+dd 0159aac45h
+dd 0e87c2dc9h
+dd 03e31a8e4h
+dd 02b89cb77h
+dd 0d01e7fd7h
+dd 06ac0e87ah
+dd 0a75fa77eh
+dd 06c80b40dh
+dd 050b5d029h
+dd 08932adfdh
+dd 064f3a954h
+dd 0dd6bb0eah
+dd 0db328a99h
+dd 044c8c0b3h
+dd 0492357c5h
+dd 082b3a4eeh
+dd 051712c68h
+dd 0599175b7h
+dd 0e9cf1854h
+dd 0d14b7253h
+dd 0ca815ed3h
+dd 013882ff0h
+dd 0b0314160h
+dd 09e1c7bf8h
+dd 0fd07bb4fh
+dd 058bac384h
+dd 0aba6b72fh
+dd 0309838ddh
+dd 016fb73d6h
+dd 0a7fcb105h
+dd 0d23a239dh
+dd 0ab6b226dh
+dd 0d0adf253h
+dd 0fa86c6c7h
+dd 0734988e7h
+dd 04cca3951h
+dd 05bf9a4c6h
+dd 08b0908f0h
+dd 01e9719ddh
+dd 0c95822b7h
+dd 05aefddaeh
+dd 0b83d5a5dh
+dd 0d1bdb6a3h
+dd 0185e7094h
+dd 0c239a3c0h
+dd 0046c05d9h
+dd 0c01dcb97h
+dd 02d2ecb25h
+dd 077281ce2h
+dd 0c884d5a6h
+dd 0b61942e1h
+dd 02d6d0f05h
+dd 01d5dbe52h
+dd 02711a03bh
+dd 043427b4bh
+dd 076185351h
+dd 0953b3e4eh
+dd 02a094755h
+dd 085f5f6c7h
+dd 03e78c6c4h
+dd 064d0f435h
+dd 0feab17efh
+dd 06c46b4d9h
+dd 06204857bh
+dd 04d32a181h
+dd 06d28e954h
+dd 0d2805795h
+dd 0bdbaea01h
+dd 0249ca30bh
+dd 00707d578h
+dd 011bf7ab0h
+dd 0bd6d36c8h
+dd 058c58ae7h
+dd 082d8ce7fh
+dd 0674ea4f0h
+dd 0d90c99a0h
+dd 0cde18e17h
+dd 0f03f552eh
+dd 0fb13654ch
+dd 08f3e9575h
+dd 07237fc1eh
+dd 02b3a9059h
+dd 0f33704a2h
+dd 06948f2d8h
+dd 034004eeah
+dd 09dbfcb1ch
+dd 04c7c841eh
+dd 0f8065e22h
+dd 0ece042cah
+dd 00e75a604h
+dd 0c0ab1d10h
+dd 07e3b7dc5h
+dd 0c5e165eeh
+dd 0b07a9d5fh
+dd 0c70f2e95h
+dd 0f7523a07h
+dd 0513b2a88h
+dd 0cf3bcc6ch
+dd 02142c753h
+dd 0aca9a4c9h
+dd 0318fa423h
+dd 0d2a32ac1h
+dd 04d4cc6b9h
+dd 0ac290cdeh
+dd 077359d87h
+dd 01dc8caddh
+dd 065c71cbbh
+dd 00bd4d64ch
+dd 0aa2b79bbh
+dd 0ce3906e7h
+dd 05961ba61h
+dd 013401e9ah
+dd 0e95dc4bdh
+dd 0e6149f01h
+dd 0a711bdd3h
+dd 0e849b800h
+dd 0ceab2d69h
+dd 0daadde09h
+dd 03758a70ch
+dd 0e3c55805h
+dd 0de894afch
+dd 0e941d4f1h
+dd 01461bf24h
+dd 0bd17f9b9h
+dd 05ae04094h
+dd 0cc17bdc6h
+dd 044fd7d06h
+dd 0af1fed6eh
+dd 0e94fa066h
+dd 089f81626h
+dd 034046b7eh
+dd 00c5e6ffeh
+dd 06148cd21h
+dd 033f2b86dh
+dd 07a968b7ah
+dd 09d492e3dh
+dd 0141b7001h
+dd 047d5ec36h
+dd 00b331dc0h
+dd 036509f6ch
+dd 0185ce3bah
+dd 06b00b7f5h
+dd 08035cec7h
+dd 0d3bc2f34h
+dd 07d82340eh
+dd 0a17508e8h
+dd 05e94b4dah
+dd 03590921ch
+dd 02548d238h
+dd 0523b28c0h
+dd 0100471c8h
+dd 064e585dfh
+dd 08db92acdh
+dd 00da2bc45h
+dd 0ff18398ch
+dd 03ccd1cc7h
+dd 046be0d19h
+dd 06a0dffc8h
+dd 07f390b83h
+dd 0aaaa774ah
+dd 0ee7523f7h
+dd 07b475359h
+dd 070eb6880h
+dd 004997e7bh
+dd 0ddf73ed6h
+dd 0b225bcceh
+dd 0aa1c7531h
+dd 024f62aa4h
+dd 043fefa49h
+dd 0d02e949ch
+dd 098483919h
+dd 00d65a801h
+dd 0dbbb236ch
+dd 01acbeb2dh
+dd 043641263h
+dd 061b2d4abh
+dd 07ccbcf3fh
+dd 0a650eceeh
+dd 00075eca8h
+dd 09c00f527h
+dd 0377dedc2h
+dd 0990486ceh
+dd 0b72fdd7eh
+dd 01e068dbch
+dd 04dd923d9h
+dd 03bf3cd90h
+dd 0f2d3dcb6h
+dd 01977162ch
+dd 05dc98f98h
+dd 0f6f964e6h
+dd 045004ca7h
+dd 0393ac7c6h
+dd 0d4d71b96h
+dd 03c86ec69h
+dd 0742b094ah
+dd 0a428bf5dh
+dd 013626ea2h
+dd 07bf45302h
+dd 0cc1a379bh
+dd 0f8638f6ch
+dd 05a4fea39h
+dd 02c59fc97h
+dd 0a1623ac0h
+dd 001d7d2feh
+dd 0c33b9739h
+dd 00b8f37deh
+dd 008fd8f01h
+dd 0ae933b8bh
+dd 0aff0375ch
+dd 0de5f2a2fh
+dd 0097157dah
+dd 06ef1da57h
+dd 0cb14703ah
+dd 00ca2323eh
+dd 0a01cd46ch
+dd 09a57777ch
+dd 0a6ae3df5h
+dd 0998a3c94h
+dd 00ba26004h
+dd 04412f897h
+dd 0e6539daah
+dd 0c94ef2e4h
+dd 081849997h
+dd 04488316fh
+dd 044545d0dh
+dd 0bbfa1363h
+dd 006164264h
+dd 054900f45h
+dd 03e32bf2eh
+dd 0fca2197ch
+dd 03e67a958h
+dd 03356399eh
+dd 03a71725fh
+dd 098f0e0c7h
+dd 0061dbd8bh
+dd 0d36d122eh
+dd 01de4362dh
+dd 01d9e34cdh
+dd 04efe4930h
+dd 04b8d2366h
+dd 0c696c4bbh
+dd 0b47b262bh
+dd 0a884dbb6h
+dd 0feeeb18dh
+dd 0e98c4c82h
+dd 0d40a3bfbh
+dd 02a161ea6h
+dd 04792e1c1h
+dd 062b6d17ch
+dd 0fd569ba0h
+dd 0464d86a6h
+dd 0a3470b12h
+dd 0a13f01efh
+dd 0ff8da57dh
+dd 0f3f5ef1eh
+dd 0e3c7ccfbh
+dd 00d05a575h
+dd 03cba3b70h
+dd 0157b3bdeh
+dd 06dd1510bh
+dd 01e13ccdch
+dd 028182bc7h
+dd 0f6ab8302h
+dd 0225e6f61h
+dd 0de7dfadch
+dd 0135f95fdh
+dd 0e4796ad9h
+dd 0042e9c84h
+dd 0af0316cbh
+dd 0e360492bh
+dd 0c608daech
+dd 0605a14d4h
+dd 00da9acb1h
+dd 02a13206fh
+dd 0ae448490h
+dd 095e92796h
+dd 0c41be02eh
+dd 0370e62b4h
+dd 04eed4e03h
+dd 0b9fb657bh
+dd 01b5b88f7h
+dd 018ac2b23h
+dd 03f1d6007h
+dd 0b026ce57h
+dd 0ab307523h
+dd 03581ec69h
+dd 0d4864d3ah
+dd 06585e3f8h
+dd 07dce71d4h
+dd 099fda0bah
+dd 00ef12059h
+dd 0a42c4bfbh
+dd 07384b3e0h
+dd 04782dcb0h
+dd 0b33b5e69h
+dd 0f2c148ceh
+dd 03a7eb51eh
+dd 0cebc01bch
+dd 0e225f9beh
+dd 07ad2f3dah
+dd 0a0f47a4bh
+dd 0eb30b1f0h
+dd 07edd3958h
+dd 068d67b26h
+dd 07a3405c9h
+dd 05a8defa8h
+dd 0c0a27789h
+dd 099223a9ah
+dd 01d1d6fd2h
+dd 08bc82d5fh
+dd 030834654h
+dd 0f86256b1h
+dd 09eb69b86h
+dd 01756a8b9h
+dd 0176936b0h
+dd 06de1be0bh
+dd 0dade682ch
+dd 04d6a8016h
+dd 02b527c88h
+dd 00d203799h
+dd 01bf846c9h
+dd 05c09fb17h
+dd 0fc9b528eh
+dd 0f13c72cch
+dd 0c5c9f328h
+dd 047de3f52h
+dd 06efa9da7h
+dd 050ab8d54h
+dd 0a9365706h
+dd 0cff383f6h
+dd 0b936cf01h
+dd 0eea9a69bh
+dd 0c4e2e93dh
+dd 0efb4e48fh
+dd 0e80c7618h
+dd 08ac5a9adh
+dd 0c791e202h
+dd 0b0810cb7h
+dd 0789a9ba8h
+dd 0c98a0145h
+dd 0831f4e53h
+dd 09535eddbh
+dd 04ef893a1h
+dd 0559f5cc6h
+dd 02a47705eh
+dd 0be42ecb9h
+dd 018b08beeh
+dd 0b16f66adh
+dd 0a5e82770h
+dd 07933e683h
+dd 08c3326e9h
+dd 0d96d0078h
+dd 06b864feeh
+dd 083ebd1f6h
+dd 01ad8f3aah
+dd 04024318ch
+dd 07aa11264h
+dd 0f88ce1c5h
+dd 03fac3f11h
+dd 046a5e3c6h
+dd 044adef62h
+dd 09fe801b8h
+dd 0518e373ch
+dd 07bc38c62h
+dd 0dd375308h
+dd 087179b78h
+dd 0de9b3155h
+dd 02671f264h
+dd 0055a97c9h
+dd 0669b0c3eh
+dd 0e529d57eh
+dd 09235d2f0h
+dd 036789cach
+dd 007edd6afh
+dd 0c3ebddeeh
+dd 066129fddh
+dd 054c92196h
+dd 065e944fdh
+dd 0513121a8h
+dd 083d0a7f2h
+dd 09b7ce7d5h
+dd 0f8d52852h
+dd 00d525010h
+dd 0a2333e86h
+dd 043bfa57ah
+dd 006a3a694h
+dd 0f66f95eah
+dd 0670b66d9h
+dd 040013b35h
+dd 05f96075fh
+dd 07e6a070ah
+dd 0328a0e0fh
+dd 05ead2f1eh
+dd 07b50ca91h
+dd 05907551ah
+dd 0bc577ed2h
+dd 089694eeeh
+dd 0e6d3e3c5h
+dd 0d28b092ah
+dd 081305ebfh
+dd 08c820ad2h
+dd 03df5c5e4h
+dd 0a57585b8h
+dd 044246e39h
+dd 0c1c00e10h
+dd 0b238f21ah
+dd 02abf8debh
+dd 0e1dac2fdh
+dd 0b85b9673h
+dd 0167e2a27h
+dd 00166384bh
+dd 07b8fd9a9h
+dd 0198db121h
+dd 0a31c0319h
+dd 0d4e00916h
+dd 02e859662h
+dd 006218e7fh
+dd 0881f0766h
+dd 09c11465dh
+dd 0e41ebb96h
+dd 06a0a9eeah
+dd 06938e31dh
+dd 0ae5845f7h
+dd 0bcb1858ch
+dd 0f1fa1663h
+dd 0de04f3a6h
+dd 01392dcb9h
+dd 0414d36d8h
+dd 0583d9f3dh
+dd 0669b8c77h
+dd 024dabe37h
+dd 07d6e92e8h
+dd 0db6c8e04h
+dd 0c087ee86h
+dd 0c00fa42bh
+dd 08b418e09h
+dd 0740c530ch
+dd 063955898h
+dd 0b03f290ah
+dd 031ca0e76h
+dd 0e74a45bfh
+dd 086fd1023h
+dd 0bc3e4fd6h
+dd 034a7743eh
+dd 0457007c8h
+dd 06388dc68h
+dd 09907d82dh
+dd 0b7f78b3ch
+dd 0ca095dc2h
+dd 0cd7ce085h
+dd 040c375cch
+dd 0d95109dah
+dd 05c121a38h
+dd 0ea67f587h
+dd 042984d7fh
+dd 0ea9df650h
+dd 0f26861bah
+dd 09aff7b8ah
+dd 0d576814fh
+dd 099c08556h
+dd 0e2250eb4h
+dd 08bed4a24h
+dd 087c3354ch
+dd 01dcc53a9h
+dd 056c1ab7dh
+dd 0a8c5441dh
+dd 005da0c2ch
+dd 094941070h
+dd 0394b96f6h
+dd 0d4a2cbfeh
+dd 0c297e0a9h
+dd 002550b68h
+dd 040407bceh
+dd 084d8d147h
+dd 04aa07a2dh
+dd 0b4e64fd9h
+dd 042f8a061h
+dd 094a539aah
+dd 0e33805fch
+dd 0c7b76ee5h
+dd 06345b9d8h
+dd 00cc67e9ah
+dd 09f6f4198h
+dd 062b093fah
+dd 020386679h
+dd 0acda6ed5h
+dd 0855a2612h
+dd 0a8cfaaf0h
+dd 082b4f7edh
+dd 0f61df1a7h
+dd 0bdc674b8h
+dd 04c2c0b8dh
+dd 0c1fac457h
+dd 05f6c2ed1h
+dd 0aa4d153ch
+dd 033da7439h
+dd 068a1d19fh
+dd 0dff21436h
+dd 02bc3d890h
+dd 0f3b1b693h
+dd 09eecae68h
+dd 05d6b7d1ah
+dd 0d4b61721h
+dd 01bbf0667h
+dd 067a391c6h
+dd 00656ca3bh
+dd 0b9d51bc4h
+dd 0a3007d0eh
+dd 07b20d098h
+dd 0df2e84bfh
+dd 0e341dc6ch
+dd 006dc9be4h
+dd 03298450eh
+dd 0ccad09f1h
+dd 063e449b5h
+dd 08a2f479ch
+dd 0e9c6714eh
+dd 031bffa86h
+dd 052730665h
+dd 097409a97h
+dd 0cd0b65cch
+dd 03557f2cch
+dd 03bb72070h
+dd 08dee0f2bh
+dd 0d5aba5a6h
+dd 08a5c4701h
+dd 0d15fd5bfh
+dd 0485102a8h
+dd 03d946e5fh
+dd 00d6f32a4h
+dd 0cb5590e5h
+dd 09edf5968h
+dd 0e9da3ef1h
+dd 057c84389h
+dd 0aa1a49eeh
+dd 0f7b982c1h
+dd 0ab731043h
+dd 0b0286529h
+dd 0e78d9105h
+dd 0183beee8h
+dd 09e738c2bh
+dd 0bc2e28bch
+dd 0a8396e20h
+dd 0de9960b3h
+dd 0ddb51547h
+dd 0e116ef15h
+dd 0c7808ea5h
+dd 0bac44611h
+dd 086786eaah
+dd 0794b35f8h
+dd 03b0cf9dfh
+dd 033cc5ff6h
+dd 07041c9f3h
+dd 0262569fbh
+dd 0f4da4bc5h
+dd 02f9f3f92h
+dd 053be9196h
+dd 0d1e75d9dh
+dd 05756e459h
+dd 06d69d0dah
+dd 098d7217fh
+dd 07619b9e5h
+dd 0c6ea6408h
+dd 01d78f6a5h
+dd 0a6700437h
+dd 0e4392acdh
+dd 031e5a387h
+dd 0969bfbf6h
+dd 0a4060ad3h
+dd 09120e95ch
+dd 022fa49b3h
+dd 0883de516h
+dd 05fc315afh
+dd 0342ae268h
+dd 008611e6ch
+dd 0719b02b7h
+dd 0178af495h
+dd 036db4eech
+dd 02091359fh
+dd 057bedcc8h
+dd 0cd55a974h
+dd 0ed4331a8h
+dd 036a3c1bah
+dd 082095d41h
+dd 0787d3e89h
+dd 0bad3deb2h
+dd 0d34edd40h
+dd 05aea2285h
+dd 0ff75ed83h
+dd 00bad8b95h
+dd 09fdf1382h
+dd 0f9ae6cd9h
+dd 00c5e1ec4h
+dd 0674951cah
+dd 00180ee63h
+dd 06a249a26h
+dd 09e90860eh
+dd 0568cd406h
+dd 05a383eaah
+dd 0174722c7h
+dd 01087932bh
+dd 09bfc8b68h
+dd 0f0320e27h
+dd 059574591h
+dd 0c6fe49c5h
+dd 07611acc0h
+dd 07b92c029h
+dd 0967eaec1h
+dd 0a9fdd4e7h
+dd 0c1e58f40h
+dd 0cfde01a5h
+dd 0fb904440h
+dd 0f3094185h
+dd 0fceaffa3h
+dd 0404c1b9bh
+dd 0420af62bh
+dd 03be91caeh
+dd 0060037d2h
+dd 001958c2ch
+dd 06682931dh
+dd 0ac74567dh
+dd 0e5c26d40h
+dd 07584bd5bh
+dd 0fa7b7586h
+dd 0d43be2f6h
+dd 06dc37863h
+dd 0d95146abh
+dd 0639487e4h
+dd 00f19c8c5h
+dd 0e1bd3937h
+dd 0ccd14f37h
+dd 0a4d2056ah
+dd 0d2a677e8h
+dd 063ca4e6fh
+dd 084ca592fh
+dd 0e58ab471h
+dd 08b3b49fch
+dd 02921235bh
+dd 0ca128738h
+dd 047315709h
+dd 01af100e3h
+dd 083fcc3e6h
+dd 09fe64a30h
+dd 062a242b6h
+dd 0e062f9b0h
+dd 0c14e6929h
+dd 050e6b831h
+dd 075901a75h
+dd 0618b5e49h
+dd 092e413cdh
+dd 0d382a99eh
+dd 013e9336bh
+dd 05a9fa0b5h
+dd 03cc1fca4h
+dd 0365d302ch
+dd 0cd4cd113h
+dd 0ea7aa73fh
+dd 02623b8f9h
+dd 0d3a7a960h
+dd 084ff3c0bh
+dd 0c9eeca49h
+dd 0831f2428h
+dd 0378bc522h
+dd 0a5e68532h
+dd 046fffbffh
+dd 04479a130h
+dd 032c520e9h
+dd 048e75225h
+dd 0cf150877h
+dd 011ce514bh
+dd 02cb14e9ah
+dd 01b6d35eeh
+dd 0928bbac8h
+dd 0eed0bbf1h
+dd 014cb223ch
+dd 0e5553f41h
+dd 0dbda12abh
+dd 099d06a86h
+dd 0722f4b97h
+dd 06dd645b2h
+dd 0c0a7bb16h
+dd 08c9c4fe6h
+dd 02bb3ac6fh
+dd 011dea4bfh
+dd 003532each
+dd 030ab5c91h
+dd 0c246d1d9h
+dd 06cdc0926h
+dd 070e6dbf5h
+dd 096753351h
+dd 0b93f4fa8h
+dd 00fe00f8fh
+dd 0ef9aa7aeh
+dd 04f6b7bfbh
+dd 0832ef101h
+dd 0f07c2612h
+dd 0b1ffbb28h
+dd 0d1037d0dh
+dd 0f3af8590h
+dd 0ec45127eh
+dd 04327d46ah
+dd 0d9390a47h
+dd 05e70e8c7h
+dd 0ccf0afbah
+dd 03b6021bch
+dd 08618e290h
+dd 0ff4c64c6h
+dd 073413cb7h
+dd 02cd52fech
+dd 07bce8bc7h
+dd 0fa9b089fh
+dd 0107df930h
+dd 06b378907h
+dd 03b904e75h
+dd 0247f090eh
+dd 09da46a8ch
+dd 0633de3d0h
+dd 049a03fdfh
+dd 0d5ee002ah
+dd 0d1823836h
+dd 063cb1f89h
+dd 0e66ac302h
+dd 0639d0c6dh
+dd 0db64d848h
+dd 0746be76ch
+dd 0ef1d8f4bh
+dd 0462cdd94h
+dd 0f9ecb76fh
+dd 094838ffch
+dd 0bb3250b8h
+dd 004abee0eh
+dd 05cb7f8adh
+dd 06810f2a9h
+dd 0f6fbd735h
+dd 0afe6a86ch
+dd 057f2bc81h
+dd 097b38b7dh
+dd 08213eccdh
+dd 01f5ff561h
+dd 056923b97h
+dd 034394c59h
+dd 0dd308977h
+dd 01e122e19h
+dd 0b1f7f80fh
+dd 0ee9843f1h
+dd 0cdd21f1eh
+dd 09d3ec2a0h
+dd 01d4f772bh
+dd 0dee68fc5h
+dd 0995b771ch
+dd 07f428494h
+dd 0b4142370h
+dd 039ee97c4h
+dd 0e57c1848h
+dd 0f680ef35h
+dd 03dcef435h
+dd 063784bd2h
+dd 009fa3f3ah
+dd 04a2ae40dh
+dd 018d99613h
+dd 00b20a1e0h
+dd 07a1e8f1fh
+dd 047f876aah
+dd 076febb0ah
+dd 0d418b3eeh
+dd 07529e672h
+dd 044db876ch
+dd 0b51976f4h
+dd 037b6e887h
+dd 0cfe99cf5h
+dd 0b00b035bh
+dd 03564e220h
+dd 0b52dd45ch
+dd 078c16884h
+dd 0561661e2h
+dd 003036501h
+dd 0cdf807bch
+dd 0dbf4c648h
+dd 0c95a2636h
+dd 0d7770a73h
+dd 0600d082fh
+dd 007d0064eh
+dd 0af58a16fh
+dd 0dbf00e4ch
+dd 081f9346fh
+dd 0794e0b9ch
+dd 0e16857d0h
+dd 065cf7ec6h
+dd 08eb041a7h
+dd 06cd14f97h
+dd 04269f87bh
+dd 0c45bd2bah
+dd 0b601b57ch
+dd 09908d19eh
+dd 02808ed01h
+dd 06979b789h
+dd 0e6c8cc9dh
+dd 02adc185dh
+dd 09674e46ah
+dd 02797e46dh
+dd 0cec8e4bbh
+dd 0f840f44ah
+dd 0a7ed0697h
+dd 0a1175387h
+dd 07d42793ch
+dd 0b5fcfa31h
+dd 07fb0a6a0h
+dd 06a02e729h
+dd 0401978d9h
+dd 0317bf7ddh
+dd 02a7ceb25h
+dd 064743b3ah
+dd 0b5fdd433h
+dd 03692d938h
+dd 0abcceb73h
+dd 09898251bh
+dd 07978a9fbh
+dd 070c010c5h
+dd 0a0d49bc6h
+dd 0462e92d4h
+dd 09cebef82h
+dd 03ac5d7a9h
+dd 0cb7f64deh
+dd 0b3a5fd41h
+dd 0310e0985h
+dd 0416ccef4h
+dd 0ee3e1a6ah
+dd 0b7395bcdh
+dd 01490ecf6h
+dd 0d92a8b80h
+dd 0430831afh
+dd 06a8d2eb3h
+dd 0050e8045h
+dd 0204a3229h
+dd 035f9cceah
+dd 0d786a243h
+dd 0cd02352eh
+dd 064665c7ch
+dd 07ff504a0h
+dd 05d1e871ch
+dd 01e8f05e4h
+dd 032718703h
+dd 07a95b4bah
+dd 0a4f9cacbh
+dd 03b44af42h
+dd 077adab05h
+dd 09e88c850h
+dd 04a0457eah
+dd 0af22eff0h
+dd 0ff21d3a4h
+dd 0a54c2620h
+dd 0fdcd7bb7h
+dd 099c5fd5bh
+dd 0e81e4561h
+dd 0b34683aeh
+dd 0e5e98b87h
+dd 0f3e5f6ebh
+dd 085685626h
+dd 019178290h
+dd 0afbdb318h
+dd 0563cc0d4h
+dd 010378de3h
+dd 05440e90eh
+dd 0bbde4266h
+dd 0322a53d3h
+dd 09fdd2e97h
+dd 022706defh
+dd 092309532h
+dd 03fa7b40bh
+dd 01b7810d5h
+dd 0a41b3c80h
+dd 039314351h
+dd 004411506h
+dd 065ca02c0h
+dd 0eac87ed0h
+dd 000bc0b3eh
+dd 00ca08e13h
+dd 0d38630f0h
+dd 0a81d56efh
+dd 003ee2010h
+dd 098f5a839h
+dd 05386ad75h
+dd 0f8fddb38h
+dd 07ac4de66h
+dd 06a69463fh
+dd 00acda9c2h
+dd 0647e0a64h
+dd 01ecba54fh
+dd 01779c744h
+dd 0c8959f12h
+dd 0445aa448h
+dd 0e055eae7h
+dd 0bd717e2ch
+dd 0692bed8dh
+dd 094f1be94h
+dd 0f7e652a0h
+dd 0235a52cah
+dd 0a1558b3eh
+dd 0fa08b04ah
+dd 0767ccbech
+dd 03ef0216bh
+dd 05adbcba9h
+dd 03d05ea40h
+dd 0dd909e36h
+dd 027131c8fh
+dd 021de7188h
+dd 0b9d1a57ch
+dd 0535db349h
+dd 0f439a5f5h
+dd 0349d6793h
+dd 0e9c9fa01h
+dd 057afec96h
+dd 095d0c854h
+dd 080339739h
+dd 016f9eb50h
+dd 0f9e3b223h
+dd 086517348h
+dd 0e1e67e2eh
+dd 0aacd6cb2h
+dd 07af72b7bh
+dd 0d959d58ch
+dd 0cff4991fh
+dd 073a03f8bh
+dd 06f22fff9h
+dd 0db80ee52h
+dd 09b96e4ebh
+dd 07ade7746h
+dd 090f2b7d6h
+dd 018a862e5h
+dd 0b8fcf00eh
+dd 066b7325dh
+dd 0d9df03d9h
+dd 0a54f4180h
+dd 0103ec293h
+dd 0cadbbba0h
+dd 0cd0b6336h
+dd 05b78ebb0h
+dd 0a6ec226ch
+dd 04b5c38d9h
+dd 0ce4faa37h
+dd 099207f99h
+dd 0c137ca62h
+dd 07a09cddbh
+dd 07fa74f0bh
+dd 0420b292eh
+dd 016b99775h
+dd 0d425bb3ch
+dd 024974c3dh
+dd 016ce6b6eh
+dd 045c9df74h
+dd 0bc4b2404h
+dd 0eac5bc7fh
+dd 04a450822h
+dd 059545b8eh
+dd 045a51fb0h
+dd 0d4d72333h
+dd 06c10e127h
+dd 0f8db46a9h
+dd 03602d4cch
+dd 0d1d0ac80h
+dd 02c1d530dh
+dd 015492f66h
+dd 0dc149c50h
+dd 04f03d05bh
+dd 0daa0f4b9h
+dd 0fbc8aa53h
+dd 07c7a7ccah
+dd 0d0c59799h
+dd 0a2fceb09h
+dd 01bf9e2f8h
+dd 0c876dccbh
+dd 0ea030e65h
+dd 019fdd7f6h
+dd 03b7ed602h
+dd 06a118598h
+dd 0684b9af1h
+dd 0f8eb5664h
+dd 09cd6295ch
+dd 0d0de9e56h
+dd 04f404b72h
+dd 0371e3ec1h
+dd 0cfbe1ebfh
+dd 0285de9b1h
+dd 068f3517dh
+dd 0660aaa4fh
+dd 036beb405h
+dd 0eba0731bh
+dd 0100dd741h
+dd 06ae9eddah
+dd 0c42e4000h
+dd 039d00af9h
+dd 0163eda94h
+dd 0b79ab168h
+dd 02f44f76ch
+dd 086f7c724h
+dd 0a39a1c41h
+dd 0a1fcec3eh
+dd 03eb2fcc3h
+dd 037cea3c9h
+dd 0185f2f29h
+dd 046a91fa5h
+dd 0bfdca867h
+dd 06b363f74h
+dd 04bb5cfdch
+dd 0a90343ech
+dd 0ec4f557bh
+dd 086a5bbaah
+dd 0c863de8bh
+dd 0b263067dh
+dd 0b022a7d8h
+dd 03407862dh
+dd 0a24ea7d7h
+dd 0bc12e88bh
+dd 045f55eaeh
+dd 0a140ec0ah
+dd 03c19cd52h
+dd 0a18e8aafh
+dd 0658677ddh
+dd 0a32a3e4fh
+dd 0ba115e5fh
+dd 0a95b6892h
+dd 06a2dd490h
+dd 0e114e2d5h
+dd 040124fa5h
+dd 0f2959b88h
+dd 010694b36h
+dd 0e4bfd29ah
+dd 055f92d0ch
+dd 0233f0f93h
+dd 00d144affh
+dd 08b68cc70h
+dd 04679ca80h
+dd 0daf19bc8h
+dd 0ebfe84bah
+dd 0e7979b5ah
+dd 01a6d25f9h
+dd 0d2f80ed9h
+dd 04961f28bh
+dd 0f259ecebh
+dd 005af08abh
+dd 0afb50768h
+dd 0b07631dch
+dd 01aa07304h
+dd 07113e114h
+dd 01b441ba5h
+dd 08c0c0305h
+dd 0038d1094h
+dd 020da8eceh
+dd 045cfc119h
+dd 007a2e638h
+dd 0827f2581h
+dd 043152f46h
+dd 08b1ad9b1h
+dd 003520175h
+dd 0de33678fh
+dd 02394c33eh
+dd 0d2a41f99h
+dd 0f8af74eah
+dd 042284b1bh
+dd 012680ca5h
+dd 08aa971e2h
+dd 0c106f733h
+dd 01c14942dh
+dd 0f4415787h
+dd 0133049bdh
+dd 08d8debf9h
+dd 0f56003f3h
+dd 0af44c40ah
+dd 05e6b63f9h
+dd 045521771h
+dd 0d7039f1ah
+dd 026a1e1f8h
+dd 0a7ec5a12h
+dd 04698958ch
+dd 0594c1b27h
+dd 04aa1053bh
+dd 067c79027h
+dd 024945183h
+dd 07ae11cbbh
+dd 029b233e1h
+dd 06289d975h
+dd 01341b38fh
+dd 07f26a059h
+dd 0d626823ah
+dd 0ec13fb75h
+dd 04cbc876ah
+dd 03b38c086h
+dd 05410aa23h
+dd 08a1e1fb0h
+dd 08317cf72h
+dd 055ae5946h
+dd 04b17ed05h
+dd 0ca364b36h
+dd 01b1979cah
+dd 0ceb8c95dh
+dd 00f5f7c2bh
+dd 024fa3570h
+dd 0bed3f3dch
+dd 0d1bf51bbh
+dd 07267978eh
+dd 03aa0133ch
+dd 0eadc5c3bh
+dd 0057ba89fh
+dd 0ec343b77h
+dd 008c8b8f4h
+dd 07f9178bch
+dd 0d9f32782h
+dd 088652469h
+dd 09b3474e1h
+dd 00a0f0f3eh
+dd 03d852384h
+dd 056cc96fbh
+dd 0eec69f57h
+dd 07fc6b776h
+dd 067e812bah
+dd 0a2c842b3h
+dd 0ce2a03bah
+dd 0190968a3h
+dd 0a1a6238ch
+dd 00b53857eh
+dd 0ac23cba7h
+dd 00aed1b71h
+dd 07b4acf56h
+dd 0cfd9e494h
+dd 02135de66h
+dd 01d0bc764h
+dd 0287c0e3eh
+dd 07a063954h
+dd 0d70d661ah
+dd 00622c4a8h
+dd 04e6aa986h
+dd 035b38fe2h
+dd 03e2339b6h
+dd 0e37568b8h
+dd 081b5e691h
+dd 0b7953e15h
+dd 02abe923ah
+dd 0afc16545h
+dd 07030d66bh
+dd 01e0622d3h
+dd 0d3fe60b1h
+dd 03add728fh
+dd 0ccb9f173h
+dd 0a184cd80h
+dd 00248079ch
+dd 0ca584ad1h
+dd 0f02c61e9h
+dd 038174acah
+dd 02df71126h
+dd 0f3b81b82h
+dd 0bb0ac84ch
+dd 028fa81bdh
+dd 08529da85h
+dd 032bc957ch
+dd 071847813h
+dd 0f800dc31h
+dd 06bdd3efah
+dd 0a0542f6dh
+dd 02406b07ch
+dd 0afe917c5h
+dd 02a6002f7h
+dd 01468e540h
+dd 0e41ddf9bh
+dd 0fd2d3fc8h
+dd 0e1661fe7h
+dd 04b72c6b4h
+dd 0f1a72b01h
+dd 01b531bbeh
+dd 06eb7bd00h
+dd 0c6c7289fh
+dd 0008e58c7h
+dd 0c57c46f1h
+dd 0a0d672a8h
+dd 0f0758c65h
+dd 0dd4bb9b4h
+dd 06ea2f037h
+dd 03fed9a01h
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679901.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679901.inc
new file mode 100644
index 0000000..70601d7
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679901.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 000000901h ; Patch ID
+dd 004212014h ; DATE
+dd 000030679h ; CPUID
+dd 069c4e6f1h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000901h
+dd 000000000h
+dd 000000000h
+dd 020140418h
+dd 000003201h
+dd 000000001h
+dd 000030679h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0fec66e3bh
+dd 05ea7fdc0h
+dd 09f6aeab4h
+dd 015edd68fh
+dd 074f337d5h
+dd 0bbf39b66h
+dd 072ecedebh
+dd 089c8cbb4h
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 0bc273ff0h
+dd 02b26d23eh
+dd 03df6f8e1h
+dd 08fc664c1h
+dd 039dfe592h
+dd 045861046h
+dd 08f96a999h
+dd 0a458fa1dh
+dd 099fdebd1h
+dd 070ae4dcah
+dd 06aa066e4h
+dd 033535749h
+dd 0f0490fe3h
+dd 061594e81h
+dd 0bdb74bfah
+dd 08222212eh
+dd 056249131h
+dd 0472c727dh
+dd 05706da9ch
+dd 0e9851911h
+dd 00b3b8dd2h
+dd 0c2f052ech
+dd 0955b6b95h
+dd 091f40608h
+dd 0866709a8h
+dd 048124c1eh
+dd 0cf1eea42h
+dd 062d609eah
+dd 08ef621a8h
+dd 00ad6844bh
+dd 04813f6a6h
+dd 039c195fch
+dd 032bcceebh
+dd 03efe8fd6h
+dd 0befaaea9h
+dd 0fcaa53f6h
+dd 0e4109f2ah
+dd 01dd5f3dah
+dd 0a5aa255fh
+dd 0becadadeh
+dd 0128be0f2h
+dd 044f4b96fh
+dd 04e3db131h
+dd 0d34c0713h
+dd 091549068h
+dd 0003ace08h
+dd 0dca3e5b3h
+dd 097ca5495h
+dd 0a4c35559h
+dd 0fd51992eh
+dd 09f8c705dh
+dd 024e8abf3h
+dd 0a10591cbh
+dd 02e12513fh
+dd 0232f15d2h
+dd 028cd7328h
+dd 0f30f3c46h
+dd 00015b87bh
+dd 0650636aah
+dd 0f9bd69beh
+dd 0d61524a3h
+dd 08cf61a11h
+dd 0f6ea29d1h
+dd 0792710ddh
+dd 0082b8a09h
+dd 0853b3690h
+dd 020345ddbh
+dd 0e316d1d1h
+dd 04ed55d9eh
+dd 0323da9b4h
+dd 0fe99eeb5h
+dd 0ca0b9f40h
+dd 019233040h
+dd 0aadd75e1h
+dd 0008d7cfdh
+dd 0b9ed282ch
+dd 0f4278d69h
+dd 0f145792eh
+dd 0850415c0h
+dd 0fc99c5f9h
+dd 0cb249813h
+dd 00ef77115h
+dd 0e8652522h
+dd 07aeb7733h
+dd 06feefd70h
+dd 0a6f009d4h
+dd 05fd075c8h
+dd 06ba8d670h
+dd 0611d2066h
+dd 033b7fcf8h
+dd 007972714h
+dd 0e4e004c2h
+dd 0be894c12h
+dd 01d8d298bh
+dd 068e1bf79h
+dd 094fef7dbh
+dd 009af5803h
+dd 08aef9182h
+dd 0eaa2743eh
+dd 0820778b7h
+dd 045d49401h
+dd 01d23ab0bh
+dd 0b2856fd7h
+dd 0610851c7h
+dd 0805c9a4bh
+dd 083859c6ch
+dd 0dbd7184eh
+dd 0a8aefe7dh
+dd 0174dbe59h
+dd 0b7f5968eh
+dd 0dab2bc51h
+dd 0edfe3a5fh
+dd 0cd6ef4d3h
+dd 0eb04da10h
+dd 0db87dd29h
+dd 0c524dfb7h
+dd 0dcc28dd5h
+dd 03f60e0edh
+dd 0f70cf0adh
+dd 09f0b0950h
+dd 0820c13c9h
+dd 003c64f85h
+dd 0beb4b813h
+dd 01fe4e210h
+dd 046221d5ch
+dd 04318e10eh
+dd 06d35386dh
+dd 0ae47bdd3h
+dd 015f119b4h
+dd 0c7ca18b1h
+dd 07daa619ch
+dd 08acf22cah
+dd 0f1f21ad4h
+dd 0abbf5e0bh
+dd 0469788c0h
+dd 05f708c07h
+dd 07a2b5b9eh
+dd 049ff86b8h
+dd 0e413b41ah
+dd 0c5eb5c08h
+dd 0b54aa4e3h
+dd 092df4488h
+dd 0cf795a07h
+dd 03bc3fdb8h
+dd 05c266617h
+dd 034a74093h
+dd 0c960f84ah
+dd 06e5833a9h
+dd 05c9a8a3eh
+dd 01b9a41f6h
+dd 056150aa7h
+dd 00e2430f9h
+dd 01ffb94e2h
+dd 0c535ba9bh
+dd 09b815140h
+dd 05f019967h
+dd 0ad25b77eh
+dd 003fe5339h
+dd 0790676b8h
+dd 08c97c754h
+dd 0c236fd3dh
+dd 0bb121263h
+dd 012a3acdeh
+dd 0dc94d956h
+dd 0d196163ah
+dd 0fd514421h
+dd 0f705c56dh
+dd 00f21bf7bh
+dd 069b566a2h
+dd 06febb58fh
+dd 0f86bb7a6h
+dd 0a182e7c9h
+dd 05d765684h
+dd 023b29e0ah
+dd 03f537ea6h
+dd 0f4161021h
+dd 03e3c78d8h
+dd 0b87455c3h
+dd 0529b7ed9h
+dd 01129ad28h
+dd 0ad5dfcbfh
+dd 083d707d8h
+dd 0d1f35030h
+dd 0a8ef33cch
+dd 0c297cfb9h
+dd 08cfc5deeh
+dd 0bbd5da2ah
+dd 00bc51140h
+dd 0935d6fa1h
+dd 088c12a5eh
+dd 07f971c52h
+dd 058b8f16ah
+dd 04c4b7ecdh
+dd 0668f98fch
+dd 0e9cee4c0h
+dd 0ea99ac82h
+dd 032383554h
+dd 02fe00823h
+dd 098d184d0h
+dd 0d54a5703h
+dd 08f694bbeh
+dd 094d2d7e1h
+dd 08dd072d7h
+dd 02afba4b7h
+dd 0b83bc9f7h
+dd 04b2ffb42h
+dd 0111acb98h
+dd 08ef264f5h
+dd 05fe3acd6h
+dd 039663fc4h
+dd 01d74be85h
+dd 01f8c9b07h
+dd 02255b4b5h
+dd 018b9dafeh
+dd 09474faf7h
+dd 0164c2032h
+dd 034548d1ch
+dd 0e4589ec3h
+dd 0c4a2c799h
+dd 03abccf3ch
+dd 0efa95b3fh
+dd 01b9219f9h
+dd 079ebfbcfh
+dd 0867d92d2h
+dd 06d48505ah
+dd 018b2bd62h
+dd 0cd1d7322h
+dd 02cdbd1bah
+dd 0a5f44a2fh
+dd 0d6de7e8fh
+dd 0cadca3ech
+dd 0f7ecb50bh
+dd 0c6f3e605h
+dd 0ffdd8ca3h
+dd 077e1cac7h
+dd 08554111dh
+dd 042a51e71h
+dd 0f99c7233h
+dd 080060059h
+dd 07060f2cah
+dd 0357264d2h
+dd 0fc54e34ch
+dd 0bebdd976h
+dd 0c29ee353h
+dd 0b3cf8a2dh
+dd 0b9033c19h
+dd 0baf3ceb3h
+dd 0d56ba21dh
+dd 0a5eafe8dh
+dd 00dd999c1h
+dd 02deec8cfh
+dd 052bdb14ch
+dd 07c191d52h
+dd 04bf38b00h
+dd 0ca25ffb6h
+dd 07c2b92f4h
+dd 0a89318a9h
+dd 074783dbdh
+dd 0725e8632h
+dd 09dc472cah
+dd 001327302h
+dd 01d055661h
+dd 0814b4647h
+dd 0143c3a35h
+dd 0c87574a8h
+dd 015a08196h
+dd 02d83584bh
+dd 0a2c665eah
+dd 0fbf1fefeh
+dd 0bf7dfad5h
+dd 080eeae13h
+dd 07bb41529h
+dd 0ca4fa5e4h
+dd 026536131h
+dd 0830fd8bah
+dd 0ccdfee21h
+dd 0da87272ah
+dd 09c2caa6eh
+dd 05663e79dh
+dd 023d8348ah
+dd 0b841762eh
+dd 04d7116efh
+dd 0d4ba6782h
+dd 045ffdfach
+dd 06238a909h
+dd 0de6338f6h
+dd 08b7dec7eh
+dd 072cfb470h
+dd 08c11a8c7h
+dd 07497d84eh
+dd 00d5e2ac1h
+dd 023c07ce7h
+dd 0d88feecdh
+dd 0d9e6ff20h
+dd 0a0fabc88h
+dd 0fbe445d9h
+dd 0ccfc96f4h
+dd 0997e58e7h
+dd 0c42e2542h
+dd 038d747cch
+dd 0a39c54cch
+dd 0579605d5h
+dd 0a502f5fbh
+dd 05d948827h
+dd 0d6a48c4fh
+dd 069c0b741h
+dd 0f6bd8e61h
+dd 02c455403h
+dd 0759d24f7h
+dd 038dd48e0h
+dd 0b384a44ch
+dd 02c344703h
+dd 0208b6023h
+dd 028cb768ah
+dd 06d8845d4h
+dd 06a1e0efeh
+dd 078846746h
+dd 0f00e0c23h
+dd 05330dd3ah
+dd 0c158a1a6h
+dd 0d389c522h
+dd 03885723bh
+dd 0e8bf785fh
+dd 0abb30babh
+dd 0b7209eb3h
+dd 0693a91bbh
+dd 03cb78bdfh
+dd 032bbd5c2h
+dd 08c923ebdh
+dd 065493730h
+dd 018afcc9ah
+dd 00e41bb60h
+dd 06d6a78a7h
+dd 04d4468d3h
+dd 07da5edc5h
+dd 0bd5a837ah
+dd 0e9745f9fh
+dd 0304ab133h
+dd 0339812c0h
+dd 017e1d2c5h
+dd 00f4f885fh
+dd 0f7d26faeh
+dd 0a21bf73eh
+dd 04c940b0fh
+dd 032d98d1ah
+dd 0edf04824h
+dd 049a98cfbh
+dd 06f75089dh
+dd 04d381479h
+dd 095f770ddh
+dd 0ffdaf88ch
+dd 05b785567h
+dd 091a1e6f4h
+dd 02e9a5a8ch
+dd 03999c1fdh
+dd 0c09df366h
+dd 0c2fca93dh
+dd 07b79222ch
+dd 0d392f863h
+dd 0665ab7dch
+dd 021c043a0h
+dd 092920fcbh
+dd 0a2b17e88h
+dd 05284589dh
+dd 05f18dc9fh
+dd 065d481f4h
+dd 0b953efbfh
+dd 0aa9bda38h
+dd 0f4c4359dh
+dd 043c852a6h
+dd 007000ff8h
+dd 02ca382b4h
+dd 05bdfe47ah
+dd 0c241ad74h
+dd 0b349d815h
+dd 0545023c4h
+dd 0984dd436h
+dd 004d66ac0h
+dd 01fd883dch
+dd 01175b8d4h
+dd 030b479abh
+dd 0e17c2a83h
+dd 0166fe2afh
+dd 0db267d9fh
+dd 0cd1608d0h
+dd 08b7b6eech
+dd 020bd9203h
+dd 02f6e4bfeh
+dd 026507987h
+dd 0f8eee4f9h
+dd 0c82ecd06h
+dd 06a0e6791h
+dd 0afd6aa17h
+dd 0d1509039h
+dd 0f8053d04h
+dd 005e1d85dh
+dd 0138193a2h
+dd 05eea472ch
+dd 0f862a064h
+dd 0cf01dd14h
+dd 079f47367h
+dd 073a7b4f2h
+dd 0893bfeeeh
+dd 00454f38ch
+dd 036b2020fh
+dd 0ff230043h
+dd 031aeec04h
+dd 0fbcd4969h
+dd 0a63bb665h
+dd 0c6a7c586h
+dd 0b5c13cd5h
+dd 070e71edch
+dd 054c6eb30h
+dd 01552a967h
+dd 0a908452eh
+dd 09076f39dh
+dd 0e5f9ba33h
+dd 0c0d5589ah
+dd 00caa9be9h
+dd 0eb46744bh
+dd 040837cfch
+dd 00ae65efah
+dd 0b473d8d1h
+dd 02f882f30h
+dd 083acf8cfh
+dd 0d209d856h
+dd 0e681b2cah
+dd 05155caadh
+dd 075196950h
+dd 053b76677h
+dd 0cdde7adbh
+dd 0af831c13h
+dd 046ee091bh
+dd 0efd3fd87h
+dd 0c23730feh
+dd 062532bcdh
+dd 04b38215fh
+dd 04e8fd7ach
+dd 093475a14h
+dd 0206a1a13h
+dd 0f5adc10fh
+dd 00bf20737h
+dd 020ba375dh
+dd 0e648846ch
+dd 0a421f776h
+dd 056048b34h
+dd 0ed538460h
+dd 08a5c18b1h
+dd 0a1dabb18h
+dd 0056e1c7ch
+dd 0df7cfa46h
+dd 0b7f90c39h
+dd 0bf25c8e9h
+dd 0c55475f7h
+dd 07ca4d57dh
+dd 016cacf49h
+dd 0dde6d75fh
+dd 036ac07f7h
+dd 042016fdbh
+dd 0b0a9bdaah
+dd 0e702ace7h
+dd 044b81e0ah
+dd 0b2865622h
+dd 0cfc15278h
+dd 05d111239h
+dd 08150d689h
+dd 0eefaf4c3h
+dd 097badefeh
+dd 0d9953307h
+dd 0e30cd233h
+dd 026c1c656h
+dd 02e828f37h
+dd 087b475f5h
+dd 051a13d04h
+dd 0c2e8ca1ch
+dd 09b27a25fh
+dd 018f60806h
+dd 02b66904ch
+dd 00c1d5930h
+dd 0667121cfh
+dd 0fef6dbach
+dd 0173b651ah
+dd 09060a76fh
+dd 00e4804c8h
+dd 06bb0c544h
+dd 06d8abb1eh
+dd 0086f6f2fh
+dd 05cb7be6bh
+dd 08dc4c521h
+dd 02dccc4d4h
+dd 08fb6eafdh
+dd 0e339cd25h
+dd 0a20a9762h
+dd 05f91aa48h
+dd 033c838cah
+dd 0101dfd9ch
+dd 01dc6db81h
+dd 0452e7051h
+dd 092e4808fh
+dd 05196e807h
+dd 07d9f0e92h
+dd 073f9a9dfh
+dd 087a1bf8ch
+dd 0147a3ebdh
+dd 0861419eeh
+dd 02e7d07b0h
+dd 0cfad4573h
+dd 0eab236ceh
+dd 07dec3ac7h
+dd 037ac7892h
+dd 0966d7ce0h
+dd 0a5780ff9h
+dd 04c58f538h
+dd 080da4149h
+dd 04830ff67h
+dd 01439263ch
+dd 079616549h
+dd 0a566f022h
+dd 03e5e5a1fh
+dd 03fe89cceh
+dd 0a246748eh
+dd 0623d4785h
+dd 0732662d7h
+dd 022bc4139h
+dd 094d479f8h
+dd 017a53609h
+dd 05e92ba2bh
+dd 0b3616751h
+dd 0e3a838e2h
+dd 0bfc8a011h
+dd 061b83cd5h
+dd 0d5f0c060h
+dd 057f1f763h
+dd 0f9d43db2h
+dd 06cd84f5ah
+dd 035d45138h
+dd 0c7983b48h
+dd 01d5bc571h
+dd 019d23119h
+dd 02146d57bh
+dd 0afb48b10h
+dd 0978b2ca7h
+dd 0e285d951h
+dd 01e528a59h
+dd 084f9fc7eh
+dd 07126b069h
+dd 07d154657h
+dd 039c3cf60h
+dd 0fe679562h
+dd 03aa93622h
+dd 094000d52h
+dd 0401f8161h
+dd 0a6eb6a85h
+dd 0b3a2c04fh
+dd 0b29fccedh
+dd 02361ce8fh
+dd 01b3ba52bh
+dd 0d410c66fh
+dd 0f464b5abh
+dd 0aa587195h
+dd 089792b1dh
+dd 0dcdea5ach
+dd 086704a68h
+dd 0efe11016h
+dd 0b0f9bd2ah
+dd 005d2e9d9h
+dd 086ab1901h
+dd 08249a66dh
+dd 0b074f271h
+dd 01be625f4h
+dd 02fc99d02h
+dd 08ff83fb1h
+dd 092cf4e06h
+dd 06dc37040h
+dd 0bd6ebd58h
+dd 08acf9b62h
+dd 06a569190h
+dd 02ea447c9h
+dd 0875c47d0h
+dd 0203277e7h
+dd 0fcf2617bh
+dd 0e3080caeh
+dd 021255844h
+dd 0aafb7d55h
+dd 0efa0fb92h
+dd 0aa009952h
+dd 008f9fe90h
+dd 095040b57h
+dd 0df254170h
+dd 08e44f9d8h
+dd 0f3f17c9ah
+dd 07b743ad8h
+dd 0563d7ee2h
+dd 0a3aaa64dh
+dd 098934355h
+dd 0021c0dceh
+dd 07364bddeh
+dd 01b140f58h
+dd 0575e5acdh
+dd 023cc641ch
+dd 0c7f9f853h
+dd 064b4b5cfh
+dd 0059b93a4h
+dd 06630bbc0h
+dd 0763d9237h
+dd 028b4e9e5h
+dd 094284f6fh
+dd 0574714e5h
+dd 046dccfa9h
+dd 0788b44e3h
+dd 03aac0b7eh
+dd 045620638h
+dd 0fa867c0dh
+dd 0a609fdb7h
+dd 0bf265407h
+dd 02ac8e73dh
+dd 0361b8d1fh
+dd 0a24c1434h
+dd 09dad036ch
+dd 0f05e3034h
+dd 0ce69520ah
+dd 0edeea982h
+dd 0823fe63bh
+dd 0a7ce0120h
+dd 0a841a6bbh
+dd 0e4d9daa4h
+dd 069fbe092h
+dd 0addf66a1h
+dd 0ab10aed1h
+dd 002e17203h
+dd 0eb9a4688h
+dd 0e9ba11aah
+dd 0c96d00f1h
+dd 0178264a8h
+dd 0e8b671e1h
+dd 049a80b59h
+dd 01fcf93a5h
+dd 0d479f04ch
+dd 093e151e4h
+dd 03fa95543h
+dd 0decadf54h
+dd 0748a911ah
+dd 091f1ef88h
+dd 054bfa2d5h
+dd 0502596b9h
+dd 0ab78d458h
+dd 0a92888c7h
+dd 085f3cfe2h
+dd 0e710f89fh
+dd 03f954396h
+dd 0ee4d7684h
+dd 0030d95e4h
+dd 0e5e017dfh
+dd 0d692a84dh
+dd 072581448h
+dd 0543245b7h
+dd 02a0a2441h
+dd 0bc94df7dh
+dd 0f1718789h
+dd 0be23a461h
+dd 0b46db4cfh
+dd 0897ab27dh
+dd 082aaee2fh
+dd 02663d824h
+dd 01c5b3f04h
+dd 073bdc68ch
+dd 03e7b4b93h
+dd 062124aach
+dd 0bd94c4ebh
+dd 096169253h
+dd 09a4d5c11h
+dd 018de731dh
+dd 041f11764h
+dd 0cde4dc9fh
+dd 0ddcc728fh
+dd 03060b23bh
+dd 0a33df4dah
+dd 08b75261eh
+dd 0be3412adh
+dd 077f4bde5h
+dd 0469eddd2h
+dd 08f837012h
+dd 0d23b7f55h
+dd 0c1285aaah
+dd 035d5e061h
+dd 028a05adch
+dd 06d2af29ah
+dd 0bb9f669bh
+dd 086559b97h
+dd 04f26f8abh
+dd 0171bf9bch
+dd 0cfe392dah
+dd 0e07aa8aah
+dd 06d6f3352h
+dd 05ff9ee5bh
+dd 02501317ch
+dd 008f75888h
+dd 0736d6e3ch
+dd 0c6d32067h
+dd 065b351edh
+dd 0e20de5a9h
+dd 0c17f5a86h
+dd 058576b75h
+dd 0caf413beh
+dd 09e03ebf2h
+dd 041167d18h
+dd 07779e3c6h
+dd 0642d3abch
+dd 03c582365h
+dd 0f90cdb70h
+dd 06ea0dbebh
+dd 05a8e2e63h
+dd 04b14447bh
+dd 0e2f78b33h
+dd 0e4d83df4h
+dd 015d8912dh
+dd 0dc02ff9ah
+dd 020be0e70h
+dd 05feab6e9h
+dd 038dc6c77h
+dd 088473243h
+dd 090824553h
+dd 00d91222eh
+dd 03bdf0fedh
+dd 0cac39f27h
+dd 05cf6015ah
+dd 09815adc4h
+dd 09fa01f7ah
+dd 0bf972fd1h
+dd 0ad9bd934h
+dd 09cf6ecfch
+dd 0af67552bh
+dd 0b33ca957h
+dd 00530f9fch
+dd 08937403ah
+dd 083d3aaech
+dd 090e13fc6h
+dd 063e58d5bh
+dd 06d879bbdh
+dd 05b870ba2h
+dd 0f986db79h
+dd 0d6ca1719h
+dd 0e9d525e9h
+dd 0d23e238ah
+dd 069638edah
+dd 013800243h
+dd 0392db791h
+dd 099eb756bh
+dd 0bb03bbc7h
+dd 05f5e13abh
+dd 0deba3cb7h
+dd 0fa0c7bfbh
+dd 0cc94ef62h
+dd 0eea5dadfh
+dd 0eff3c075h
+dd 08a1020f0h
+dd 05f53546ch
+dd 0673158c9h
+dd 082d5fd68h
+dd 02958c9c6h
+dd 0b4f2a67fh
+dd 04c497f9ch
+dd 0c7aa5ddeh
+dd 078810810h
+dd 052207fc2h
+dd 0f44b7184h
+dd 0a20bebd2h
+dd 0082efd23h
+dd 0b7ce2f7ch
+dd 03afd9b11h
+dd 0baaa9f02h
+dd 067cdc841h
+dd 07fda6124h
+dd 0efc8ac25h
+dd 0ec52e2ech
+dd 0004b7d99h
+dd 011f1193fh
+dd 034792368h
+dd 07d428f51h
+dd 0d9042a6ch
+dd 06d1ef627h
+dd 0c6f9eb68h
+dd 04f99caf3h
+dd 076c5e543h
+dd 03bfde1c4h
+dd 0513139e2h
+dd 0ecbb97bfh
+dd 0e961d1efh
+dd 06b813a5eh
+dd 0d39b8b1dh
+dd 0f557bcech
+dd 037122c04h
+dd 02c851ccbh
+dd 0724d6f54h
+dd 0e27cb301h
+dd 01708e320h
+dd 0d120bd3fh
+dd 0c31ca12ch
+dd 07067cf63h
+dd 0ac6450a6h
+dd 0abcbd232h
+dd 034b31f9ch
+dd 0ea97c037h
+dd 0fd10ea63h
+dd 02ffcb87dh
+dd 0dc25448ah
+dd 018a32c75h
+dd 01102579ah
+dd 03800f950h
+dd 0d1faab90h
+dd 0f76911e8h
+dd 0b7a904d8h
+dd 0a2efb718h
+dd 080bbaa6dh
+dd 06e5698f0h
+dd 0f62adfb5h
+dd 08def238fh
+dd 093ac7dedh
+dd 0ded0be4fh
+dd 00e879b92h
+dd 09bc6b560h
+dd 04dcc8955h
+dd 0af148958h
+dd 0f8c678fdh
+dd 0808101d4h
+dd 04423d243h
+dd 013e43e87h
+dd 02af1d00ah
+dd 0820a2015h
+dd 031ff9b74h
+dd 058cad46fh
+dd 09088a4eeh
+dd 0207550c1h
+dd 0560a757ah
+dd 09b5ec887h
+dd 08291c12bh
+dd 0d684709eh
+dd 0b09585eeh
+dd 078ef353ch
+dd 033db19aah
+dd 0207c4dbch
+dd 0efc1b2a7h
+dd 046d3cc51h
+dd 0954cb272h
+dd 050e2f9edh
+dd 0df82a588h
+dd 08074a242h
+dd 0a3bfe78fh
+dd 0258df0b5h
+dd 08c9efb2ch
+dd 0138d11cch
+dd 079c4d950h
+dd 0bde2abf4h
+dd 0bfed221bh
+dd 0455f528fh
+dd 0d6c539ach
+dd 0215c5db3h
+dd 0148e580eh
+dd 05ad51547h
+dd 0adcb0e1bh
+dd 08de5e916h
+dd 00210fbceh
+dd 03e40378ah
+dd 05603e970h
+dd 0f6487a9bh
+dd 000f7bc43h
+dd 06e0d4770h
+dd 0ead00d8eh
+dd 026f02076h
+dd 0879680b4h
+dd 0ef8b3d8ah
+dd 0a96102dch
+dd 0bc2d8d3eh
+dd 0b3a5486dh
+dd 0d9a60741h
+dd 0b069c32dh
+dd 0a3661d67h
+dd 0506e9e55h
+dd 0ba98804bh
+dd 0389e2028h
+dd 01461bdf2h
+dd 0544f6f0ah
+dd 06520a877h
+dd 0a2706440h
+dd 08de5ca93h
+dd 0d54e77cfh
+dd 072dd4c7fh
+dd 0319986fbh
+dd 0d82cb44ah
+dd 0d1de5182h
+dd 0cdfc852ch
+dd 006aea814h
+dd 0503b3392h
+dd 0f905f653h
+dd 04ff24733h
+dd 09f5090f1h
+dd 05e522bf7h
+dd 0aef3a013h
+dd 0107e4cc0h
+dd 0f2fb35a7h
+dd 08b56df94h
+dd 06e30f671h
+dd 02e59d6cah
+dd 07fc09016h
+dd 0efa7dd64h
+dd 022883cb0h
+dd 04081f541h
+dd 0663b95c1h
+dd 06aae4b2bh
+dd 0d4238c27h
+dd 025a4020ah
+dd 0482d9410h
+dd 0b57b5570h
+dd 043169894h
+dd 09e4c2163h
+dd 065a27eaah
+dd 03bf25b50h
+dd 082706ca6h
+dd 01e6728f4h
+dd 03dc3fdd1h
+dd 08bc21758h
+dd 09a64d42ah
+dd 0b11e2bb2h
+dd 03595f217h
+dd 04ed02304h
+dd 0cb304d8bh
+dd 0f18960c3h
+dd 0a4cf2d49h
+dd 0602e84e7h
+dd 0de05487dh
+dd 03ff4d402h
+dd 03d93b6d3h
+dd 050e463a7h
+dd 067f60143h
+dd 0378b3158h
+dd 014ddd978h
+dd 0f23b3484h
+dd 0a3932ef6h
+dd 017d6d976h
+dd 0717dc382h
+dd 0da7cfac3h
+dd 027a3ff3dh
+dd 048b171a1h
+dd 01a015446h
+dd 08956bd7ch
+dd 04f73beaah
+dd 0d06c22b8h
+dd 0686c849dh
+dd 0883e23b9h
+dd 0cc0b0bfch
+dd 0fecc3821h
+dd 08f3df5afh
+dd 0808b0b9bh
+dd 01229beb2h
+dd 0841087cch
+dd 0a180a347h
+dd 0ed823c59h
+dd 04f42c83ch
+dd 02dc1775eh
+dd 0a2263681h
+dd 01ee32180h
+dd 02c3cdeeeh
+dd 0eaa5feb8h
+dd 0c67f6a23h
+dd 05bdc3b78h
+dd 0aba0670dh
+dd 03fc18789h
+dd 0651e38b6h
+dd 08736313bh
+dd 0817aad52h
+dd 09de49a75h
+dd 020b68a46h
+dd 02e5c738bh
+dd 053709360h
+dd 06758cfb3h
+dd 0fe2585b4h
+dd 0fa07bcd8h
+dd 08be192f0h
+dd 0a3e78c6dh
+dd 07d32ecfeh
+dd 0433f2e75h
+dd 062ac06f1h
+dd 0b78934feh
+dd 08daf99a6h
+dd 05acb5d1ch
+dd 0511d933ah
+dd 0449940c1h
+dd 067363c84h
+dd 017eb23b9h
+dd 08fd3c367h
+dd 0bbd5edd1h
+dd 08ee6ff4bh
+dd 0b6ca7a8bh
+dd 0828305e0h
+dd 0312ede79h
+dd 00fcc481eh
+dd 01eadb8c4h
+dd 089cf005ah
+dd 0e4b8f6a4h
+dd 00a2ed429h
+dd 03e3f483dh
+dd 0bfe96d74h
+dd 09489e70ch
+dd 046f66dcbh
+dd 0f6b787e2h
+dd 059769085h
+dd 0fb273133h
+dd 0544aac6ah
+dd 069c6f75fh
+dd 0aca22ed4h
+dd 0b955ae92h
+dd 0e5682f95h
+dd 013a07332h
+dd 0beed6cech
+dd 0d31ade9eh
+dd 095c5d776h
+dd 0fe737c16h
+dd 0f472257ch
+dd 01933658fh
+dd 0a426c7a1h
+dd 0718abaf7h
+dd 07cb1c95bh
+dd 00491d8c0h
+dd 00759bac0h
+dd 0279c8c0eh
+dd 0685b20c8h
+dd 0bfaef874h
+dd 038d4ac02h
+dd 0fd3f7828h
+dd 00da73e14h
+dd 0d6ab829ch
+dd 0e156b19eh
+dd 075d05159h
+dd 0d906fb5ah
+dd 091ac4bd1h
+dd 04597e16ah
+dd 06ed48c72h
+dd 01df75c77h
+dd 07ecf2611h
+dd 0cb4d8d05h
+dd 08d645f7fh
+dd 008a9375fh
+dd 03e84fdd2h
+dd 0b84fd68dh
+dd 01a76aacdh
+dd 0c1385c10h
+dd 00f445f9bh
+dd 0c400ad2dh
+dd 0115bc2d3h
+dd 0b0bf07cch
+dd 0522843bch
+dd 00c4ed3c2h
+dd 0f978190bh
+dd 0ee19a195h
+dd 0fdbd4dfch
+dd 07a3b6daeh
+dd 000ff06ffh
+dd 000669730h
+dd 08fe6479eh
+dd 027cf0833h
+dd 080152d0ah
+dd 05ea71ee9h
+dd 07021f1cbh
+dd 04331dac7h
+dd 0ed6d0abeh
+dd 05a3dd074h
+dd 0eb9d86b0h
+dd 0c7de94bbh
+dd 03f052aech
+dd 03fd14fcbh
+dd 071209104h
+dd 0a228afb1h
+dd 00f4f09eeh
+dd 065498aa7h
+dd 0aad4decdh
+dd 0cb59496dh
+dd 00977ee93h
+dd 0afd30129h
+dd 0ad94d46ah
+dd 0f00352b9h
+dd 0d460a11fh
+dd 08fd8067ah
+dd 0769af835h
+dd 03018155eh
+dd 0ebb3fe27h
+dd 05f80a9a9h
+dd 087933bc4h
+dd 06ef76b5bh
+dd 03ad27233h
+dd 0f1272dbeh
+dd 082729badh
+dd 03b32675dh
+dd 08d32962eh
+dd 08afe903dh
+dd 022454d9eh
+dd 085a9eba2h
+dd 06432ede1h
+dd 008b7ea28h
+dd 026ba5125h
+dd 0dbba43c1h
+dd 0cddaeb3bh
+dd 0f12ba64dh
+dd 0aafc5f87h
+dd 0343e64cch
+dd 04dc1751bh
+dd 0834eb813h
+dd 0106fbb8ah
+dd 0fbd02db8h
+dd 072451ef3h
+dd 0585f8acah
+dd 09fa98db9h
+dd 04cfc33ech
+dd 0ca842395h
+dd 025c573d6h
+dd 02767f345h
+dd 0fb8e9b26h
+dd 0a4c45bfeh
+dd 048553290h
+dd 093fbaeb8h
+dd 0c681236ah
+dd 01ecc4edch
+dd 0b246c57fh
+dd 020ca4853h
+dd 0260fca8eh
+dd 001fa495ah
+dd 0fd22084bh
+dd 00f682e86h
+dd 08ef8bd5ah
+dd 0fbe823ebh
+dd 0b83e022ch
+dd 059db2c09h
+dd 0bf0f5ea1h
+dd 0e9e5f103h
+dd 0fd3b342ch
+dd 074aa7688h
+dd 08d42805bh
+dd 083ba4f4ah
+dd 082daa3eeh
+dd 00d614a41h
+dd 0db23b1ech
+dd 0b2b8810fh
+dd 070c9d1fdh
+dd 06f1de78dh
+dd 0b153a50ch
+dd 0ad98fc57h
+dd 0b34ed447h
+dd 0707c8217h
+dd 0b1f5912dh
+dd 0b73cf6ech
+dd 028b9fdb4h
+dd 0ed429cc4h
+dd 0bd89a5eeh
+dd 06b91cf62h
+dd 0a653a502h
+dd 02345cb50h
+dd 031389d95h
+dd 06e02faebh
+dd 0913d48d2h
+dd 0c2640314h
+dd 0d6cddda8h
+dd 0703634cah
+dd 04f159a58h
+dd 0ed69f36bh
+dd 02df3ef40h
+dd 02099b4d7h
+dd 096f8bff4h
+dd 092c1625ah
+dd 0bcb04c0ah
+dd 0d6339544h
+dd 0a30ce2ach
+dd 05b46e7fah
+dd 0daede0b6h
+dd 0a14f21dah
+dd 0beb608cch
+dd 0cb42c354h
+dd 0b18d9fc0h
+dd 0c065d5eah
+dd 087218be3h
+dd 068bed0d0h
+dd 098897416h
+dd 032a6d5ceh
+dd 0456b63a0h
+dd 03fb61ac7h
+dd 0041e16feh
+dd 0db6fb6e8h
+dd 039208e87h
+dd 0c226af17h
+dd 001cb5168h
+dd 0a5d48494h
+dd 081697e69h
+dd 0fce04699h
+dd 0debe0c97h
+dd 0f287d887h
+dd 044bd87d9h
+dd 060aedc10h
+dd 0609b2320h
+dd 05c79efe9h
+dd 03b0f6f53h
+dd 05de84d2dh
+dd 0c93500d5h
+dd 0a8105433h
+dd 04f0c35eeh
+dd 078d294cfh
+dd 0c6988c68h
+dd 0d502043ch
+dd 01ca8b8a8h
+dd 0e6672c95h
+dd 0952d43dfh
+dd 06dd54db7h
+dd 07c6d3177h
+dd 00194df56h
+dd 070d0aab8h
+dd 0b6cbd1f5h
+dd 0bd186f20h
+dd 05df5fd59h
+dd 06960e25dh
+dd 0b608ab31h
+dd 0814d9a71h
+dd 012821c8fh
+dd 091bd92c7h
+dd 0c962f2d6h
+dd 045d54babh
+dd 000c6f336h
+dd 05e137c91h
+dd 05b45a01ah
+dd 00081dec1h
+dd 0e9b35d85h
+dd 0241ad442h
+dd 0665a9540h
+dd 051c67584h
+dd 06a4cf4c7h
+dd 0f20d1f4eh
+dd 054cdc57ch
+dd 0ec7ba435h
+dd 05085ace6h
+dd 030af438bh
+dd 0b01ccd6fh
+dd 0efe17df3h
+dd 0e70dc700h
+dd 025319163h
+dd 0d58836b3h
+dd 0136f298ch
+dd 008035793h
+dd 0bfaf8a6dh
+dd 0e974a567h
+dd 0a6b197f2h
+dd 0840c6053h
+dd 0692eeafdh
+dd 09af55ce7h
+dd 0d03d0e1bh
+dd 0c2a87f7fh
+dd 04633467eh
+dd 09a06c797h
+dd 007e31c67h
+dd 070f34124h
+dd 0083aebbbh
+dd 08b44e4c2h
+dd 023fe5721h
+dd 099449570h
+dd 092e73830h
+dd 0b02f8a4ah
+dd 01d54f4a1h
+dd 05a60887ch
+dd 003dc4e6ah
+dd 03be89f68h
+dd 0795e8393h
+dd 0399cc919h
+dd 0a9dfa79eh
+dd 0c228bd36h
+dd 07b05ac64h
+dd 0357c98a2h
+dd 0ad173f9ch
+dd 0f8e9e50bh
+dd 04dc963efh
+dd 0b1f232eeh
+dd 0aea38137h
+dd 09f22be9eh
+dd 02a7a4677h
+dd 0fe79fd1dh
+dd 09a34ed24h
+dd 0c8c10830h
+dd 0f32075b7h
+dd 0151d83bfh
+dd 0ee4ddc11h
+dd 0fc475e7bh
+dd 0690ffafeh
+dd 0f80a822ah
+dd 0473d138eh
+dd 099cf21a0h
+dd 096d88678h
+dd 03ddfda8eh
+dd 01803a189h
+dd 073ce48b0h
+dd 0573484d9h
+dd 04b5900e0h
+dd 0a81e3cffh
+dd 0027c3ad9h
+dd 09bda7184h
+dd 0cccf4cf2h
+dd 0b776056fh
+dd 0f84e02ebh
+dd 07b7875afh
+dd 052ca8f50h
+dd 050523118h
+dd 010244874h
+dd 0c9859916h
+dd 0ef141c91h
+dd 0a65a5796h
+dd 0581379d4h
+dd 0b007cd1bh
+dd 054f61ff9h
+dd 0d0c8b9c3h
+dd 0aa8a1e10h
+dd 02b35b884h
+dd 05471f516h
+dd 0f1473a84h
+dd 03d9e2688h
+dd 00dbd25a6h
+dd 09c1fc999h
+dd 06cc279feh
+dd 0394884d1h
+dd 06dec59aah
+dd 0a59c1b1eh
+dd 0f74b9eb9h
+dd 00461c0c8h
+dd 0135a9829h
+dd 0a8dea02ah
+dd 05ee32da9h
+dd 01d314282h
+dd 059a0e061h
+dd 0ac2e2309h
+dd 0b4f2e8c7h
+dd 0a5cffb05h
+dd 0c9cad241h
+dd 0f926205dh
+dd 0c070b969h
+dd 00a707402h
+dd 0d6235f1fh
+dd 03bea8ab9h
+dd 056d279d8h
+dd 076022369h
+dd 09625c3beh
+dd 00ccd4d6dh
+dd 06bedef04h
+dd 09ba05ccfh
+dd 0777ad1ddh
+dd 072011a82h
+dd 0e6d756e6h
+dd 03968dd70h
+dd 094027175h
+dd 06f5f7659h
+dd 09b4d17a3h
+dd 0a1c22742h
+dd 0c4d6dd23h
+dd 0798c7d1dh
+dd 0b10be5b2h
+dd 0394c7498h
+dd 0f9523185h
+dd 0899b434dh
+dd 032ac52f8h
+dd 0d82fad89h
+dd 01d8c3c61h
+dd 07140ab47h
+dd 005c762ddh
+dd 0eca523e6h
+dd 007bff493h
+dd 0fea35350h
+dd 02ce44525h
+dd 084cae403h
+dd 0cff9dca5h
+dd 06edd79c2h
+dd 048223e6eh
+dd 08b33c651h
+dd 05df5791bh
+dd 095751d87h
+dd 098ba9119h
+dd 08af67b69h
+dd 062ef4b63h
+dd 024f85d41h
+dd 0ec237500h
+dd 0f3e45f59h
+dd 0168501d2h
+dd 0b3f6a8cfh
+dd 0da333d1eh
+dd 0c4581814h
+dd 095fa53a5h
+dd 09407a00bh
+dd 017db3e92h
+dd 08084a186h
+dd 0384da94ah
+dd 0d8149842h
+dd 03b850dddh
+dd 0f6085837h
+dd 0ba7a85cfh
+dd 0c95d6d6fh
+dd 0e9fe27dch
+dd 08b71497ch
+dd 0ee09ebb3h
+dd 0f7a98bf4h
+dd 0aadef8a7h
+dd 00fa8afa0h
+dd 027eaa084h
+dd 032818563h
+dd 06df052a5h
+dd 050bce0cch
+dd 070b7a670h
+dd 051721ce2h
+dd 00106b71fh
+dd 0f3b5932eh
+dd 0d17a251fh
+dd 0e3dd09abh
+dd 0a3806c17h
+dd 0725a84a1h
+dd 0e2a268cfh
+dd 013d6bde3h
+dd 07e6e1da4h
+dd 0060687deh
+dd 007df92c2h
+dd 02d569370h
+dd 0515e2e69h
+dd 037d29d17h
+dd 0ea96dc01h
+dd 0fcfd2e3ah
+dd 081f18860h
+dd 00f293d7ch
+dd 09ce238bdh
+dd 0d8ea0c34h
+dd 09aeaa8dch
+dd 099783aa4h
+dd 09c1b54f6h
+dd 018feabafh
+dd 04b7f55b5h
+dd 02acd5b99h
+dd 00eea5553h
+dd 066dfdcf3h
+dd 0506d2102h
+dd 0238f3aaah
+dd 07e63631ch
+dd 0540595b8h
+dd 026e79971h
+dd 0f2d1fe20h
+dd 0e3677d02h
+dd 06d235a7dh
+dd 0a61de0d1h
+dd 050e7b02dh
+dd 018d7a1fbh
+dd 0ea428ba5h
+dd 0e9809b83h
+dd 0aad155cch
+dd 0e575dab1h
+dd 016957850h
+dd 0cc138981h
+dd 0a2cbfa03h
+dd 029da2b6eh
+dd 020113c1eh
+dd 01247e68fh
+dd 0157a3112h
+dd 09fb36b6eh
+dd 0bb5bdd7eh
+dd 02df70b90h
+dd 0c822a8c6h
+dd 002d65333h
+dd 02a5f96d9h
+dd 0d80e29fch
+dd 0e310829ch
+dd 0aed584aah
+dd 007159fdfh
+dd 0fff910bdh
+dd 0f4d9a450h
+dd 007161122h
+dd 0ad3b04d4h
+dd 0e2427bfbh
+dd 0295328e0h
+dd 0a7e1764eh
+dd 050ed8841h
+dd 0992acd88h
+dd 08e762747h
+dd 06a5d62bah
+dd 0675dadf8h
+dd 0cd9515cch
+dd 0da4d9836h
+dd 0cb8f9f7ch
+dd 05ec39e4eh
+dd 0625bf937h
+dd 00a69708eh
+dd 0ecae438eh
+dd 00c4e43f3h
+dd 0eeccb3a4h
+dd 014d7c099h
+dd 0c08200eeh
+dd 02d009f9dh
+dd 04335ab3eh
+dd 098909e82h
+dd 002e8e4afh
+dd 028a93753h
+dd 03c2dfd9bh
+dd 00593b643h
+dd 07b16102ch
+dd 02eb9068bh
+dd 0c3499094h
+dd 0a33182c9h
+dd 043957cf7h
+dd 08af16199h
+dd 0a03fa636h
+dd 0f1329903h
+dd 078d97911h
+dd 0e06330b4h
+dd 09a1abc89h
+dd 08d34612ah
+dd 0da3a1134h
+dd 05c336618h
+dd 0ef49028bh
+dd 0a9a8c294h
+dd 09cae02d0h
+dd 0711f9e02h
+dd 004329a98h
+dd 0eaaab157h
+dd 09367d0f2h
+dd 00677f162h
+dd 0b8066e65h
+dd 0b3972802h
+dd 0bf81c309h
+dd 06607d9afh
+dd 08edf798ch
+dd 027675a66h
+dd 00ccdc233h
+dd 0aac4612eh
+dd 0353fd89dh
+dd 041b2b201h
+dd 0e4d0f570h
+dd 03ff6980eh
+dd 00cc70d80h
+dd 072c7b58eh
+dd 02fbbef7dh
+dd 0f0103876h
+dd 0ab59f97fh
+dd 042096407h
+dd 0a57fa07ch
+dd 066cebaa7h
+dd 08f078a20h
+dd 073dd7529h
+dd 0676e86a4h
+dd 0ac5b1f27h
+dd 09869a3dch
+dd 0fdd1e1e5h
+dd 0fc9f1f51h
+dd 0081cacafh
+dd 0f9687982h
+dd 083df2388h
+dd 03c242cbah
+dd 0330d2a3eh
+dd 00acde077h
+dd 0a3503d62h
+dd 05b118f27h
+dd 0e0279ab7h
+dd 03e94ab51h
+dd 06a2aa6ddh
+dd 0e4a02eb4h
+dd 05f7de42ah
+dd 01f28eb5ch
+dd 0e9fc2d02h
+dd 0f779f8e1h
+dd 0500fe76fh
+dd 0e7ab981dh
+dd 011e62808h
+dd 015bad08ah
+dd 0bed7bb61h
+dd 0f98dde5ch
+dd 075738bd7h
+dd 05093cfe1h
+dd 00be8aa9fh
+dd 0ddc06455h
+dd 0255e733dh
+dd 0055c9864h
+dd 05d58ac20h
+dd 03ddae957h
+dd 086f35c49h
+dd 00ec58918h
+dd 0b3ef13c3h
+dd 023e4f5b3h
+dd 0b0a987bbh
+dd 0096bd03ch
+dd 030b251dfh
+dd 0dd0128ebh
+dd 0cf435d6dh
+dd 00074ba1fh
+dd 06f1e7908h
+dd 073080ef9h
+dd 0b8f05da6h
+dd 0679b3664h
+dd 000922cc2h
+dd 0f0f940d8h
+dd 0ded449cch
+dd 07fdb8799h
+dd 07499ec8fh
+dd 052c826c8h
+dd 07cd87b65h
+dd 02cdeddcah
+dd 047c40debh
+dd 0a9ff454ah
+dd 0b0225d03h
+dd 0ffce6e23h
+dd 08c5fbaa3h
+dd 09a0aeecch
+dd 0ddd1d5bah
+dd 087b5c81ch
+dd 069d4115fh
+dd 03ec6f899h
+dd 006193164h
+dd 0369bc143h
+dd 0865e9defh
+dd 073547000h
+dd 0d00d1078h
+dd 0b357abedh
+dd 01006b0f3h
+dd 067346efch
+dd 02fff4b6ch
+dd 0447c2297h
+dd 07b25ca38h
+dd 063fd794eh
+dd 066348b0ch
+dd 0627eaea2h
+dd 05cba1fb0h
+dd 01d26eedeh
+dd 087634c2ah
+dd 08ae7dcb9h
+dd 0c305092fh
+dd 029796aa7h
+dd 0f0a13f5fh
+dd 060524ecah
+dd 02d77bacch
+dd 080ec2f86h
+dd 0a17a25b8h
+dd 0accf797ch
+dd 030725dc7h
+dd 06a537e38h
+dd 0e586f4afh
+dd 06390543ch
+dd 05cfca5eeh
+dd 05ca533c4h
+dd 0b419b6bfh
+dd 0c5b06ff3h
+dd 0e4b4aa4fh
+dd 0845dd7bch
+dd 08ceeb56eh
+dd 0a9294eaah
+dd 0d6b01d55h
+dd 059c6cb1ch
+dd 0528c5e9bh
+dd 0b4ba331eh
+dd 0600dd3cfh
+dd 01dc26663h
+dd 056700d3fh
+dd 0da47227fh
+dd 022f3a4abh
+dd 0fec40e7bh
+dd 073dd64ddh
+dd 0118753cdh
+dd 04bcddf67h
+dd 0f0b6d102h
+dd 0606e0befh
+dd 08d735810h
+dd 0d56a050ch
+dd 0bcbd0ab4h
+dd 0e24925fch
+dd 0b669b26fh
+dd 008ecf708h
+dd 0de760aeah
+dd 014ee977eh
+dd 05608ed4eh
+dd 0db49ba75h
+dd 079dd4581h
+dd 098101043h
+dd 0991391ach
+dd 0edb5aaf8h
+dd 01b399d1eh
+dd 0e1fba3b2h
+dd 09f9394a3h
+dd 00e30b812h
+dd 00f20f5a5h
+dd 0c7dc50c3h
+dd 0d280231bh
+dd 022b399a5h
+dd 0d0e019e2h
+dd 0082391e4h
+dd 0cb05d30ah
+dd 068d4222eh
+dd 0dcac9e59h
+dd 0ba7e3bcfh
+dd 00359fe65h
+dd 016cbf644h
+dd 0199bb20ah
+dd 0e68541a7h
+dd 0f96b7341h
+dd 0f931f2eah
+dd 07f0e2d76h
+dd 0e45c448bh
+dd 075373d17h
+dd 065a58d13h
+dd 052f6f7e4h
+dd 0e84a2ee6h
+dd 0d80ece91h
+dd 07848c91fh
+dd 084cd4ae4h
+dd 05c2b40e4h
+dd 0ffaa3764h
+dd 0d8d8b0e7h
+dd 0f5bc4f51h
+dd 0bff53b4bh
+dd 0d0b59606h
+dd 0ee62a589h
+dd 0778e4002h
+dd 08732cc94h
+dd 0d40e8647h
+dd 07edcae42h
+dd 0a2f3f0e9h
+dd 01298f14ch
+dd 01b348131h
+dd 0a20328d7h
+dd 0b3c8f542h
+dd 06a453557h
+dd 047c270efh
+dd 0e4b84359h
+dd 0e9b0627ch
+dd 0e6e207c5h
+dd 02fc8a285h
+dd 02dd9c695h
+dd 06effeffeh
+dd 004c04057h
+dd 017f15819h
+dd 015aaeb44h
+dd 08617069fh
+dd 020872a73h
+dd 074f98394h
+dd 0205b9d83h
+dd 08b72fbeeh
+dd 07c4b2daeh
+dd 043b2bc49h
+dd 07bb06dd8h
+dd 02f54b073h
+dd 0d74fa3c5h
+dd 0fd01945bh
+dd 086e6757fh
+dd 036ec39b2h
+dd 03d94e741h
+dd 0f717c52bh
+dd 033770527h
+dd 0d1cbc9f6h
+dd 066ef6529h
+dd 0e6449b96h
+dd 00f6eb677h
+dd 01639b968h
+dd 0c281d531h
+dd 018df2085h
+dd 0f16ace16h
+dd 065f8bb70h
+dd 08ea71e6dh
+dd 013d79e98h
+dd 01d0d7cf9h
+dd 06bef8a53h
+dd 0763cacf1h
+dd 0f68b5ff6h
+dd 08d3a4d4fh
+dd 0ee909d63h
+dd 08c9e0743h
+dd 00a0fd5c9h
+dd 049ec129bh
+dd 08a3dbeaeh
+dd 0c63cbcd1h
+dd 048e3928bh
+dd 09c1156d0h
+dd 0f325ec7ah
+dd 065cfd2b3h
+dd 04035c032h
+dd 0ff7c2853h
+dd 01b78fa0bh
+dd 0820261f8h
+dd 06ad9a218h
+dd 01a6f1a54h
+dd 0c0aa5260h
+dd 06ae4794fh
+dd 0938b867ch
+dd 04da94765h
+dd 0306c3258h
+dd 0026fe498h
+dd 0c2d3cd77h
+dd 051e54c20h
+dd 02820e3a5h
+dd 053319e67h
+dd 0160c88c7h
+dd 0f04327f3h
+dd 02b89c863h
+dd 0eaa6d851h
+dd 01764bc42h
+dd 01de78adbh
+dd 0861fc704h
+dd 00bd85b1ah
+dd 0563b0f81h
+dd 0a6809504h
+dd 0b4d284d3h
+dd 0c810cd92h
+dd 0e26c4eafh
+dd 0c45c95ach
+dd 0b7427bf5h
+dd 0b4f21710h
+dd 0fbfa3130h
+dd 024801a3dh
+dd 0cb42ca3ah
+dd 0814d5175h
+dd 006184b45h
+dd 0e5c30555h
+dd 042c6d226h
+dd 01b4f4557h
+dd 09b3c2d5eh
+dd 0f5ea3565h
+dd 083e30d37h
+dd 0e2bbdf6ah
+dd 00f5d3a51h
+dd 033c348fch
+dd 0cd0ba7a0h
+dd 0167e7735h
+dd 016c5ce5eh
+dd 07b9d87b7h
+dd 0d48f9208h
+dd 08f04c888h
+dd 096280d4ah
+dd 0f1e2da5bh
+dd 088b46187h
+dd 060bbe8fah
+dd 0bc8a8e3ch
+dd 03c9d9313h
+dd 0ca9394c2h
+dd 0c8715a58h
+dd 0165f2043h
+dd 038bea306h
+dd 0478fe84bh
+dd 08e8cbed2h
+dd 02a1e723dh
+dd 0741f0543h
+dd 0309a2a92h
+dd 085fc9163h
+dd 0fc5a96c4h
+dd 0e982f061h
+dd 0376e68c2h
+dd 0a1b6774fh
+dd 016fa47ach
+dd 05751b01eh
+dd 0a067f7e6h
+dd 085791724h
+dd 068b380dfh
+dd 09c954db5h
+dd 0259471a5h
+dd 0de706c65h
+dd 040fd5df3h
+dd 063502d70h
+dd 001c07a4eh
+dd 0b24fbbc4h
+dd 0e5b9f74ah
+dd 0485cebe0h
+dd 0c0198bf0h
+dd 071148b46h
+dd 03090af74h
+dd 0e971d151h
+dd 02699a581h
+dd 0e493b855h
+dd 01eebad17h
+dd 062490872h
+dd 0ec8b357fh
+dd 0b96343bdh
+dd 02667a575h
+dd 0753a033ah
+dd 074f8fbd0h
+dd 04f63bfa6h
+dd 07fbee4a5h
+dd 08c33d84ch
+dd 0b83868efh
+dd 01582451dh
+dd 0ba9876ffh
+dd 0ec9da14bh
+dd 0078cf587h
+dd 0a633792ch
+dd 09af9d41ch
+dd 09fba8b15h
+dd 05ddbceffh
+dd 0d7b56e25h
+dd 0dead6dcbh
+dd 0bc490398h
+dd 0f3dc6961h
+dd 061782694h
+dd 0e4a58b16h
+dd 0743406d2h
+dd 038976c15h
+dd 02d2cbdc4h
+dd 09c70ad31h
+dd 0e643cd58h
+dd 0339cba76h
+dd 00b490f07h
+dd 029397c35h
+dd 050ef3b10h
+dd 0feaceb82h
+dd 0a2dcff5ah
+dd 05d96d096h
+dd 05f1a9160h
+dd 02af5d465h
+dd 094305b79h
+dd 0dc9162f5h
+dd 0b54b616eh
+dd 06d2401f7h
+dd 0b4b15349h
+dd 0fae5e415h
+dd 0734995b6h
+dd 067a7ad43h
+dd 0279f0a4ch
+dd 0da787fa4h
+dd 0955c3752h
+dd 085087779h
+dd 0ed5a9c47h
+dd 0b8c22acah
+dd 05dcc74eeh
+dd 0d4002f75h
+dd 0d632552bh
+dd 0dd1e64d3h
+dd 0050eeb05h
+dd 0a9c91851h
+dd 0b5e0a047h
+dd 093d7125fh
+dd 047920192h
+dd 0987dd727h
+dd 0923c410eh
+dd 0a0aee476h
+dd 0f1e3a89fh
+dd 04de5573ch
+dd 0a20ba6f4h
+dd 0647fb35bh
+dd 01d4f218bh
+dd 0ec3b0f32h
+dd 00f1ffd1ch
+dd 0705bcfb0h
+dd 08e136af2h
+dd 03f14bb37h
+dd 0a63f3d99h
+dd 0c23841deh
+dd 0ba87a29fh
+dd 0ff177613h
+dd 0c0241659h
+dd 02af0101dh
+dd 0a250e3f7h
+dd 03329bc76h
+dd 0726eaf12h
+dd 020e37717h
+dd 0201b163eh
+dd 06ad69f6ch
+dd 062f4300bh
+dd 0cc17b79ch
+dd 0ba0229eeh
+dd 09e7b6d46h
+dd 0a4267ce9h
+dd 08ab80674h
+dd 009725af1h
+dd 0c115283dh
+dd 0e161b93eh
+dd 0711332e5h
+dd 0ce0ef605h
+dd 0f28e1639h
+dd 0fc9d1a20h
+dd 032b1fd90h
+dd 0011453e4h
+dd 0521ef0beh
+dd 085b3e4adh
+dd 011c9a06ch
+dd 060ff8675h
+dd 07c4557e4h
+dd 08836fafbh
+dd 0e9a126c8h
+dd 016043610h
+dd 0d4512b19h
+dd 073194718h
+dd 0aed50d3fh
+dd 0c1bf2beah
+dd 0589b09beh
+dd 0daefd88bh
+dd 0406ec5dfh
+dd 0e9f4509eh
+dd 00aabeaceh
+dd 0d2b5eed1h
+dd 0d23c0a84h
+dd 04994736bh
+dd 05fe9944ah
+dd 0e72037e5h
+dd 08609c768h
+dd 0eb3aec1ch
+dd 09aad2324h
+dd 046923be8h
+dd 015b8c47ah
+dd 01cec9637h
+dd 08474ec65h
+dd 0cbb0e579h
+dd 090475fd2h
+dd 0753d5755h
+dd 0aec1240fh
+dd 0629b5d6dh
+dd 08c78b2f3h
+dd 08750692ch
+dd 0b0ab8009h
+dd 0b1c28650h
+dd 0e947a226h
+dd 084100772h
+dd 0a2666ce7h
+dd 0ba0b9ccch
+dd 0b52377c6h
+dd 0d909a819h
+dd 07938c0ddh
+dd 02db56171h
+dd 05c28ee24h
+dd 02754345ah
+dd 030ef2606h
+dd 07ea734b7h
+dd 0f387f08fh
+dd 0052e2280h
+dd 00ac4b691h
+dd 06268e74fh
+dd 0dfe166efh
+dd 0069fdbeeh
+dd 07eea85b7h
+dd 0b2aa840eh
+dd 0d669a6d0h
+dd 0d077cc7ch
+dd 02ef94d26h
+dd 04ab1d1e9h
+dd 03471514bh
+dd 063444405h
+dd 0b27b8e40h
+dd 0c42bade7h
+dd 0c5b48c5dh
+dd 0ab08e561h
+dd 03a959897h
+dd 0248984a6h
+dd 03ce56bf2h
+dd 0f6d44089h
+dd 00510f156h
+dd 0ef608d6dh
+dd 0a974c303h
+dd 018bc0dceh
+dd 04f631e34h
+dd 0f8d2e764h
+dd 0b71e20ebh
+dd 04b18ee2dh
+dd 03fd8ec57h
+dd 0a944f6d8h
+dd 0e89344cah
+dd 004783466h
+dd 0e8062e54h
+dd 0ea07f655h
+dd 0a65f427fh
+dd 0b4072836h
+dd 0c3871c73h
+dd 01f6e5d4bh
+dd 00102e703h
+dd 080405fbch
+dd 07bfd9c89h
+dd 067d551a6h
+dd 0243e339ch
+dd 0c1ed0e8bh
+dd 0740cff53h
+dd 03396b67dh
+dd 0dabb3766h
+dd 07c3ce55ch
+dd 003d03be9h
+dd 074492391h
+dd 0f226a6e8h
+dd 0180455c6h
+dd 0aa57411bh
+dd 0e4f72fc4h
+dd 0ae13921bh
+dd 06541d870h
+dd 0cc09cbc7h
+dd 02102bf38h
+dd 0b7f68f23h
+dd 05bfd8836h
+dd 08f729456h
+dd 0fb4c8e4ah
+dd 0d2e1d73ch
+dd 01a1ca472h
+dd 04c8e092dh
+dd 01db20a5ah
+dd 06001a4c8h
+dd 062b052f2h
+dd 03a7672c1h
+dd 0e4a2deaeh
+dd 0f9bcdceeh
+dd 016220d4ch
+dd 0a5ebb502h
+dd 0da390141h
+dd 04cf14fdeh
+dd 056a43ca5h
+dd 02f79308ch
+dd 07b7af26ah
+dd 0ab1d4b73h
+dd 01400f6f4h
+dd 0c73cfc79h
+dd 04f8e57fch
+dd 0418f9420h
+dd 0c4e4fbb4h
+dd 09212b2dbh
+dd 041a31aach
+dd 01389fb7fh
+dd 06d2998a4h
+dd 06a8f1eaeh
+dd 0cb827d16h
+dd 0fd134509h
+dd 0c710088fh
+dd 08f341dd0h
+dd 063000d70h
+dd 0d2baaceah
+dd 00a5ed423h
+dd 044a2b3e3h
+dd 00b10f7f2h
+dd 09bfb80f6h
+dd 0d1fd9e52h
+dd 08054dc01h
+dd 0c6283326h
+dd 031be6f68h
+dd 057103abfh
+dd 0da63c734h
+dd 07e2045aeh
+dd 02bbb5acbh
+dd 0af0f1c01h
+dd 04e6f2bdeh
+dd 04b03953dh
+dd 07a6eecach
+dd 05e5992c7h
+dd 022d93cebh
+dd 0d5f09478h
+dd 02ae6a7d9h
+dd 0a92e3c1ah
+dd 0992df2a8h
+dd 036a6fa1fh
+dd 0fff1c647h
+dd 071cafe69h
+dd 0d6738dcfh
+dd 0fdd0851ch
+dd 0c184e9cch
+dd 09f7a3f99h
+dd 039c195c0h
+dd 08634011ch
+dd 03e755a67h
+dd 002090301h
+dd 0d74cabcch
+dd 005c6140ch
+dd 0b119bc5eh
+dd 0a133ad60h
+dd 000120ee8h
+dd 031db49dfh
+dd 07aee5a85h
+dd 0f27ea3bfh
+dd 04f845d13h
+dd 0e341e5ddh
+dd 080f12205h
+dd 0bc1273a2h
+dd 008680457h
+dd 0b6e16fb9h
+dd 06e80c277h
+dd 06fc00ab9h
+dd 04e8625a4h
+dd 02ff27f85h
+dd 0a6a5ec16h
+dd 0a68ca5bah
+dd 02e7730abh
+dd 0fc0705b2h
+dd 0cbf693a5h
+dd 009847e9eh
+dd 08dcd4each
+dd 01b56c0a9h
+dd 09224460ch
+dd 0a15aeeb3h
+dd 06cd5d383h
+dd 01204c25bh
+dd 094523603h
+dd 0de8e7509h
+dd 08a96e6e9h
+dd 076c5ff80h
+dd 0d6df2de6h
+dd 0354693d5h
+dd 0e1367fe0h
+dd 04edbc099h
+dd 0edb7cd2dh
+dd 0349a7468h
+dd 04887714fh
+dd 015130b63h
+dd 0bbad32e6h
+dd 08510114ch
+dd 0f1fabb13h
+dd 022d50bb7h
+dd 0d16820f2h
+dd 0db7ed34eh
+dd 042ff507ch
+dd 05614b6a6h
+dd 04deb8d82h
+dd 0aec89df1h
+dd 00e56d77eh
+dd 0ed1a7ab4h
+dd 035eb9bb7h
+dd 04f100d72h
+dd 074cb5effh
+dd 08c9f7d1eh
+dd 0fc729fa6h
+dd 0bc813e74h
+dd 0fcac1aa1h
+dd 017dc8fabh
+dd 06ea33e26h
+dd 0ecc00b84h
+dd 0fcae94b9h
+dd 0c42259cch
+dd 0011c4108h
+dd 05d897300h
+dd 05814667bh
+dd 0681af98bh
+dd 089201193h
+dd 0ed531e54h
+dd 0af6d7037h
+dd 0513973c8h
+dd 04ea74fe7h
+dd 072fb8c63h
+dd 0c6bd96e6h
+dd 0c7b7f487h
+dd 0e6cc3a41h
+dd 0ec2e6416h
+dd 0f9ecb083h
+dd 0150d77cfh
+dd 043d1aaa4h
+dd 09a9fcd2eh
+dd 0c0a2d75bh
+dd 0c3a9dc07h
+dd 05d7cabf6h
+dd 0c2554aaah
+dd 0a8d610d4h
+dd 085dc84dbh
+dd 0a63a8e6bh
+dd 0b58b268fh
+dd 0cd04961eh
+dd 0cdbbfab5h
+dd 0d719a5c8h
+dd 07fabfd07h
+dd 0f108eeceh
+dd 06e56b908h
+dd 0166764aah
+dd 09fcaa74bh
+dd 00d6e16e0h
+dd 061951eb3h
+dd 0cd1593bbh
+dd 052132042h
+dd 0f388ae5eh
+dd 0ee8e8e8bh
+dd 010063dd6h
+dd 0bd454ae6h
+dd 084a0e8c2h
+dd 0b31c422eh
+dd 0e94e75dah
+dd 08b2cfecdh
+dd 04c54b552h
+dd 06e61c0e5h
+dd 0c6167938h
+dd 0a37c4c20h
+dd 0647250dch
+dd 0186002cah
+dd 0917adcb4h
+dd 05374f2a9h
+dd 0c89569fbh
+dd 00d649b34h
+dd 070169ee5h
+dd 07489d153h
+dd 0e8e51ea6h
+dd 0d7888bdch
+dd 0f8f8d278h
+dd 0c1f8dd72h
+dd 05a704573h
+dd 019cb6e1eh
+dd 0314f0fffh
+dd 061e37a19h
+dd 05f3fe4c2h
+dd 01ebfa280h
+dd 0c4464d27h
+dd 0ffe13abbh
+dd 0f39897d5h
+dd 01560f15bh
+dd 0cc2a1d87h
+dd 0b1c54440h
+dd 0c05fa19eh
+dd 06557739ah
+dd 06ffd8316h
+dd 0d903b5feh
+dd 09819dec3h
+dd 05b5d4014h
+dd 06669b786h
+dd 0bd3d89b3h
+dd 0045436dbh
+dd 065d43666h
+dd 098875563h
+dd 0125f8d75h
+dd 0185d226eh
+dd 0c57c78adh
+dd 01b5c5a77h
+dd 020231168h
+dd 03deae123h
+dd 06139f68ch
+dd 09dcb9605h
+dd 0e589cae9h
+dd 0a388cb96h
+dd 002c8cab7h
+dd 0c2ed383bh
+dd 0aed155b4h
+dd 0d95e21fbh
+dd 08075fe9ch
+dd 05a151004h
+dd 0a35cb7c6h
+dd 046f89e35h
+dd 07ab46df9h
+dd 006cc0098h
+dd 0aceeb09ah
+dd 04d09861ch
+dd 092795319h
+dd 0134bc53ch
+dd 058a777e8h
+dd 04918c035h
+dd 0de706439h
+dd 0b69c228ch
+dd 045a1012bh
+dd 03896ae54h
+dd 007bbb033h
+dd 0fafb385dh
+dd 06bd4083ah
+dd 04a3b43abh
+dd 0fa93e96bh
+dd 0e6e05fe8h
+dd 02cb8d2d4h
+dd 0ca9853c3h
+dd 002062066h
+dd 0d35edf51h
+dd 0767cb6ddh
+dd 0362d4c6ah
+dd 004eb029ah
+dd 0ce71e88ch
+dd 0bc3d7566h
+dd 00ad04154h
+dd 02817333dh
+dd 0cc5fc580h
+dd 0976e28ach
+dd 042d0fa71h
+dd 0db0c9ce9h
+dd 001ef2031h
+dd 0e332befah
+dd 0eb995626h
+dd 0be313ea7h
+dd 0fae344ddh
+dd 0dc318566h
+dd 07810bad4h
+dd 0fbc8130fh
+dd 020ed36a1h
+dd 0833c0f01h
+dd 0a6eaf8b3h
+dd 03758d9c6h
+dd 046bd090eh
+dd 060b7ecf0h
+dd 0c005d98dh
+dd 0fde8cb02h
+dd 0898489fah
+dd 0b416ab14h
+dd 0749ae96ah
+dd 01a176a51h
+dd 0c8c460aah
+dd 0cbf075c0h
+dd 0cc0e53efh
+dd 033fdfff6h
+dd 099afd2e1h
+dd 0ecb91369h
+dd 0c16666c9h
+dd 09d3c7420h
+dd 024d45cf6h
+dd 003b971a6h
+dd 0ba34ffcbh
+dd 01c0cdf60h
+dd 03301610dh
+dd 059a98142h
+dd 0ac306265h
+dd 02ad59316h
+dd 08671d3f4h
+dd 05caa3c20h
+dd 08dad4ca5h
+dd 016881ceah
+dd 08c4fd55bh
+dd 0c3333c2ah
+dd 0b6721f15h
+dd 080150663h
+dd 044f2c70bh
+dd 056762f88h
+dd 0fe763d24h
+dd 0c6f73b9bh
+dd 01ba23733h
+dd 0633e9e8bh
+dd 0a1896210h
+dd 07105ae74h
+dd 0a9a5438ah
+dd 004c8d87ah
+dd 0457d86b6h
+dd 0842f7345h
+dd 0f673170dh
+dd 0a71ac09fh
+dd 0332c197bh
+dd 04c4aabeeh
+dd 093e46ac9h
+dd 0bed8aab5h
+dd 0cfc8328bh
+dd 0c863bf8eh
+dd 0175e2a5fh
+dd 09c89a243h
+dd 0c21fec35h
+dd 07250677ch
+dd 01fd07366h
+dd 0585bd8c1h
+dd 041ec3df7h
+dd 0189cc8c1h
+dd 098ac8fffh
+dd 05d3c4c43h
+dd 0bce24e18h
+dd 066f36934h
+dd 0f7fb5825h
+dd 02a62e5a0h
+dd 0699fb3ebh
+dd 0540502e9h
+dd 01205d83ch
+dd 048cd7b76h
+dd 0ca8f382eh
+dd 026a2ea32h
+dd 0a4f6f4eah
+dd 0ceb57fbfh
+dd 0245be7ddh
+dd 01b5d3630h
+dd 00352fd48h
+dd 0985f80cah
+dd 0046a5282h
+dd 082dda851h
+dd 0d0d2fd61h
+dd 09168f53eh
+dd 0d0535d6dh
+dd 0eb4636d8h
+dd 086707a1dh
+dd 00023c57ah
+dd 09c35e469h
+dd 0f558807ch
+dd 03a707df4h
+dd 0a163b821h
+dd 062838b60h
+dd 08983a7b9h
+dd 00e28d2a9h
+dd 055206716h
+dd 017195005h
+dd 0e21be0f2h
+dd 0f7101a26h
+dd 0d05d45feh
+dd 0f30c2a90h
+dd 0743ad6beh
+dd 027fe4bebh
+dd 01c098babh
+dd 02ef2d84ch
+dd 013dadb48h
+dd 00b9bd2b3h
+dd 03f3dbf65h
+dd 08040bee9h
+dd 0240abffdh
+dd 0dceb8191h
+dd 0d648af5fh
+dd 0b3acf1aah
+dd 0ffaaa2e2h
+dd 0f756aee1h
+dd 0025747bdh
+dd 02a29bebfh
+dd 0793513a6h
+dd 02367fdadh
+dd 0b4859428h
+dd 0067c6692h
+dd 06a8616eeh
+dd 08710c7fbh
+dd 05080d70ch
+dd 0badf40fdh
+dd 0414483c9h
+dd 00cc6fa5ch
+dd 0ba444b84h
+dd 0acd8e4e1h
+dd 04f5e77d6h
+dd 07919f0d4h
+dd 06aaf5fabh
+dd 08239e063h
+dd 072e28977h
+dd 071d15db7h
+dd 06e66d039h
+dd 002a990bdh
+dd 0a3bbeea4h
+dd 04b274026h
+dd 02bd5edbch
+dd 0153b0387h
+dd 02d814820h
+dd 030223cc1h
+dd 0d945d3a7h
+dd 04dfbb484h
+dd 0cc6009bch
+dd 0ec22744ch
+dd 0a97eff4bh
+dd 057503116h
+dd 0ee509c1ah
+dd 00e834154h
+dd 09d7bcc61h
+dd 0ebd37c2fh
+dd 0815ce06ah
+dd 059d764c2h
+dd 092d56d4ch
+dd 0bedb473dh
+dd 0677379f8h
+dd 06a7ce64ah
+dd 073d342dbh
+dd 09f6e6a0fh
+dd 0826b6c3dh
+dd 0776b9016h
+dd 0bcdbf780h
+dd 03a68e06eh
+dd 0538dfb1ah
+dd 02e32f14dh
+dd 0a089d4c7h
+dd 0b8aa069dh
+dd 0c4ebc508h
+dd 06647cfd8h
+dd 0da22e20bh
+dd 0ee9655d4h
+dd 0533911a8h
+dd 0c0b7421ah
+dd 0732cdef4h
+dd 0051574e5h
+dd 0d73290ebh
+dd 0f4b90a48h
+dd 04f825e59h
+dd 06a4e7cc8h
+dd 0c0b336e6h
+dd 08a43b3ddh
+dd 020baf603h
+dd 0f59b3dd4h
+dd 06f08be3bh
+dd 0d6fd8563h
+dd 0ae629d0bh
+dd 058c49f1bh
+dd 0facfd1f6h
+dd 0f7c58e16h
+dd 07187c993h
+dd 0fc518c01h
+dd 080586c3ah
+dd 0c9254dbch
+dd 0db470cb9h
+dd 07163eecch
+dd 0aa789828h
+dd 023bf3eb6h
+dd 091f5df9fh
+dd 0c7713d86h
+dd 0b8ca0113h
+dd 0036fd6eah
+dd 00343a7f8h
+dd 0319b4391h
+dd 00850fccbh
+dd 0c7058ac7h
+dd 038db2d17h
+dd 0bb4e2516h
+dd 03ecd90f4h
+dd 0babd2497h
+dd 0aa5e5c91h
+dd 00118972dh
+dd 0af892367h
+dd 072310225h
+dd 0237efb69h
+dd 04267d6c5h
+dd 0728a57dbh
+dd 0efe66fbbh
+dd 00f92f39fh
+dd 0bbe6049eh
+dd 09c07d99bh
+dd 079340ae7h
+dd 0003c421fh
+dd 0dd01a9d3h
+dd 02adace7fh
+dd 0b69d99f1h
+dd 034cb73ebh
+dd 0c9f01c89h
+dd 09a3b3155h
+dd 0b2d34ae7h
+dd 09305fc98h
+dd 056c7c69eh
+dd 006cb847bh
+dd 0f49c6cb0h
+dd 0048b4b60h
+dd 063402e11h
+dd 0a8c6c6eeh
+dd 0b06b9babh
+dd 09949e233h
+dd 098cbc114h
+dd 07fdd0fach
+dd 0041d9a2bh
+dd 07d66b37fh
+dd 0715e37d4h
+dd 0e440b8e0h
+dd 0d389071ch
+dd 06e6b7ce6h
+dd 09f43b800h
+dd 0a81bbec0h
+dd 010ac6bfdh
+dd 0e03b7e3ah
+dd 02a0d6a3ch
+dd 0ab71eb38h
+dd 01e1d7143h
+dd 03d23cedbh
+dd 07be591ceh
+dd 0586b382fh
+dd 05778ca88h
+dd 00ef55bbeh
+dd 05d5b7a48h
+dd 0610347b6h
+dd 07194e091h
+dd 03d54ee18h
+dd 0177985e1h
+dd 0ae89d460h
+dd 018c6445dh
+dd 05464f4c6h
+dd 0337bc33ch
+dd 06ff98c9fh
+dd 0f1b865d3h
+dd 048641f72h
+dd 0e8a2e1dbh
+dd 0331a6581h
+dd 0615b10cfh
+dd 0944feff4h
+dd 0053869c4h
+dd 0582a1e80h
+dd 045d032c9h
+dd 0b8f55263h
+dd 0aab81c73h
+dd 046652a3bh
+dd 005d287adh
+dd 01316b4a6h
+dd 0a671c98ch
+dd 07879b45ch
+dd 0a49bb886h
+dd 0a0b482b4h
+dd 00c0826e3h
+dd 07c131b82h
+dd 03141152ah
+dd 0a8024b09h
+dd 08b86a156h
+dd 08181a3a8h
+dd 08e871588h
+dd 02ab19b74h
+dd 0162aab8bh
+dd 0d1bfe0fbh
+dd 06622efabh
+dd 069919dd5h
+dd 018605b97h
+dd 09da345dbh
+dd 01d77316eh
+dd 0a0d673a3h
+dd 0c0694d21h
+dd 086c8cfa4h
+dd 014b3a830h
+dd 00c678b55h
+dd 03365b97ch
+dd 0bd1d6c9ch
+dd 0a820ae3bh
+dd 08526796ah
+dd 016685d1ah
+dd 094f685d0h
+dd 0017136cfh
+dd 0d7c28c90h
+dd 070ed7e9ah
+dd 08c97191eh
+dd 05ec277bfh
+dd 027a69850h
+dd 05d092921h
+dd 0c7815ccbh
+dd 0618a88a2h
+dd 00f4bdfc9h
+dd 01c51200fh
+dd 053bb166ah
+dd 080eb26dah
+dd 0c290019ah
+dd 053f72f37h
+dd 0cb8eaee1h
+dd 0311e4ee5h
+dd 05a937b96h
+dd 0d6268cd5h
+dd 015554a7dh
+dd 0fd1ef4a8h
+dd 0538b7a73h
+dd 0653ba3b2h
+dd 067ef047dh
+dd 09c1b49fdh
+dd 09cc2e6ffh
+dd 055434254h
+dd 0e302c550h
+dd 0c40a40d8h
+dd 0fedf176fh
+dd 0179fe38bh
+dd 0b655306bh
+dd 0f345c420h
+dd 0e47eef6ch
+dd 02bfb1c82h
+dd 076d419abh
+dd 0d6760454h
+dd 09c09d1a6h
+dd 0dacf3a22h
+dd 05693a4bdh
+dd 0a5633d40h
+dd 00e60832bh
+dd 0dbe0e545h
+dd 0f93c3210h
+dd 0785f6780h
+dd 0729dcc6ah
+dd 0bcb6d7f0h
+dd 0afbb2f12h
+dd 0d053efafh
+dd 080b606a6h
+dd 00b1ee913h
+dd 0dd64a495h
+dd 05790ae54h
+dd 0071c2ef1h
+dd 0006b80deh
+dd 0ca0489ceh
+dd 0a327ef44h
+dd 00a5ef814h
+dd 0a7d01bbch
+dd 0a46398a1h
+dd 0ab4eb17bh
+dd 0f37ffec3h
+dd 0e05f911ch
+dd 07fa045fah
+dd 0b81b47abh
+dd 0ae185933h
+dd 080e291bch
+dd 0c6b87ad2h
+dd 0ec0f9af7h
+dd 001b5540dh
+dd 0eeaa70f8h
+dd 004b5c144h
+dd 08c33d260h
+dd 0bb1af0e2h
+dd 0b9a34cadh
+dd 01870f9e8h
+dd 03b0e81b3h
+dd 0b35d883fh
+dd 0a4f69068h
+dd 0f9fa6885h
+dd 090963d50h
+dd 022c49d70h
+dd 04f2cf011h
+dd 0ce5b3057h
+dd 05172e0c1h
+dd 03d0c8b3bh
+dd 042d7a83dh
+dd 0a66a95e5h
+dd 016f194f3h
+dd 057a2da07h
+dd 0251b5bfdh
+dd 0773d4b35h
+dd 0367f58c2h
+dd 03c08a86fh
+dd 00a8a8b6bh
+dd 082bcce71h
+dd 066559e79h
+dd 025656ed6h
+dd 09ee2803dh
+dd 083d81d0ah
+dd 07e488678h
+dd 04e60805dh
+dd 0543c53f7h
+dd 0c228c453h
+dd 0b90c5cdbh
+dd 03abb1f21h
+dd 09045fdc7h
+dd 0d9c29e40h
+dd 05bff50ceh
+dd 04bcc2b14h
+dd 0758d5f47h
+dd 03a4f4bdch
+dd 00006231fh
+dd 08a863d86h
+dd 049fd8c5ah
+dd 043fa61c7h
+dd 0888feea2h
+dd 056be8d5eh
+dd 0410e149ah
+dd 0cb0dc0f5h
+dd 05f6e7804h
+dd 07faa2b6ch
+dd 0d6b14c9eh
+dd 05dee7440h
+dd 06e104fbbh
+dd 05942fa9ah
+dd 0c245a3efh
+dd 0a0d36c80h
+dd 0d2fb1af5h
+dd 0a7023565h
+dd 0c2faf6cdh
+dd 0856b75dfh
+dd 092f19eb8h
+dd 052260bbah
+dd 053381beah
+dd 0153fdf4eh
+dd 09c55afcch
+dd 0ba1d7211h
+dd 0383fab36h
+dd 08d218d19h
+dd 0397bdd5bh
+dd 0cfd3e83bh
+dd 082683eeah
+dd 09dfcd86eh
+dd 009edfebfh
+dd 05eb713e5h
+dd 0c9f2b9dbh
+dd 070d893f6h
+dd 0148bed7bh
+dd 050ae8ce9h
+dd 0d1361d59h
+dd 03c3355bah
+dd 0ad8c0420h
+dd 0eae60471h
+dd 05a33a108h
+dd 0cf16c46dh
+dd 0fb8d1d43h
+dd 00eb84d3fh
+dd 05df6e33ah
+dd 0f53bc9deh
+dd 0123777e1h
+dd 09e6e9d8bh
+dd 0f499357ah
+dd 0502429a6h
+dd 07782b6b7h
+dd 0ce207ce5h
+dd 070ebf43ch
+dd 0d33d0df0h
+dd 0bd00a39dh
+dd 01854b2a4h
+dd 04b317362h
+dd 06d2cbec5h
+dd 077eb97f2h
+dd 0b9341385h
+dd 00873ba9eh
+dd 05151017ah
+dd 0e46a41a3h
+dd 0b7c0547ch
+dd 0c7832035h
+dd 0daff565ch
+dd 0e3d4f41ch
+dd 0b0f4fe6fh
+dd 0d172c9a8h
+dd 01c76b16dh
+dd 000342f4bh
+dd 0aa6ab1fah
+dd 025017f43h
+dd 0aca23b0ch
+dd 06f0f6889h
+dd 02a43487eh
+dd 00a5f460eh
+dd 078c73c94h
+dd 0f7565107h
+dd 053912446h
+dd 0fb17c0cbh
+dd 02ef9e60dh
+dd 0f4bc80f3h
+dd 088a73297h
+dd 094dc016eh
+dd 05a272953h
+dd 0b81a97ech
+dd 0781197eah
+dd 0eecbe3c1h
+dd 0afc098e5h
+dd 0a963cac5h
+dd 08c8d0106h
+dd 0d04654c5h
+dd 0294ce018h
+dd 04ba99dd1h
+dd 0d46d5374h
+dd 0ecbb3798h
+dd 00ba1bb64h
+dd 0e61038a6h
+dd 07c498921h
+dd 0a0e5b9fah
+dd 0ed6702deh
+dd 0584ab9bfh
+dd 0fb527e37h
+dd 06f01f5c8h
+dd 080014bd3h
+dd 02c945e2ah
+dd 008fea62ch
+dd 05efd52fdh
+dd 08b832fcch
+dd 0c773eb7ah
+dd 092288343h
+dd 04b68442ah
+dd 0227b8a0dh
+dd 07a34849bh
+dd 086ddfeach
+dd 018ed6a96h
+dd 08e4aeb66h
+dd 0b1080189h
+dd 0acca13dah
+dd 0c2f2c036h
+dd 0855dd8e2h
+dd 04e9f1fc5h
+dd 0b0e19495h
+dd 09f920707h
+dd 0309dfa63h
+dd 08010462bh
+dd 08d6f5618h
+dd 0a72ee140h
+dd 06379e383h
+dd 0b6ead0a8h
+dd 00d7042b2h
+dd 0b1ec28d9h
+dd 0736d5d6fh
+dd 0485d3f60h
+dd 034cf0249h
+dd 04f7f479ah
+dd 02022281bh
+dd 011ae4536h
+dd 023adac09h
+dd 079e472f7h
+dd 0b6b6c5d3h
+dd 003adab09h
+dd 041febfdch
+dd 02ae271c9h
+dd 0860c0a36h
+dd 056e92e10h
+dd 01c226291h
+dd 00bf3596ah
+dd 07a278596h
+dd 0ba83c26dh
+dd 0e37cfdcfh
+dd 0667e480eh
+dd 07b80ddd4h
+dd 0f2d06b68h
+dd 092334ac4h
+dd 086fa2264h
+dd 02bd61667h
+dd 00434c72ah
+dd 07fe78fc8h
+dd 0016e9bc4h
+dd 0471f018fh
+dd 05dacb15bh
+dd 0e8a40b1dh
+dd 0c7d0b07eh
+dd 04e1bb09dh
+dd 0cbacbd6ch
+dd 00d1c6fd4h
+dd 0e924cc96h
+dd 054f2badbh
+dd 0d6455c9ch
+dd 0fdad5a32h
+dd 0fb3896cah
+dd 0f336eb1ah
+dd 05b29e88bh
+dd 0ab0b5d70h
+dd 0e3b5ea9ch
+dd 08e28b55eh
+dd 0fc61ecd7h
+dd 0fa3abb69h
+dd 04b1660adh
+dd 01cc235c4h
+dd 088ab79ebh
+dd 0f4585a14h
+dd 0ea301eaeh
+dd 083719829h
+dd 032042a0ah
+dd 037aa0d16h
+dd 0e995e214h
+dd 0c9158397h
+dd 08ff823f3h
+dd 036514de2h
+dd 04dd26eaeh
+dd 0f82c814ah
+dd 03a5de4d1h
+dd 047448964h
+dd 053047df4h
+dd 0025ffbb6h
+dd 0a25b6834h
+dd 02202708ch
+dd 03b7dec4dh
+dd 0dca035f0h
+dd 00221809ah
+dd 05f7de2c3h
+dd 00f582819h
+dd 05c8fa6eah
+dd 08cd8aa46h
+dd 0193791fah
+dd 032b2b04fh
+dd 0fb8a633ah
+dd 08a06d24ch
+dd 0984c6ef2h
+dd 05e3cdae9h
+dd 0bd41adc7h
+dd 080c21c3fh
+dd 08698ca1fh
+dd 080ff77a7h
+dd 07362a71ch
+dd 03f12636ah
+dd 0b47fd846h
+dd 0972528d9h
+dd 0bf069eabh
+dd 01448243eh
+dd 0803365d9h
+dd 0767dab48h
+dd 0818ed965h
+dd 0e37e0406h
+dd 031ceb729h
+dd 06cd994aeh
+dd 08f9e6f85h
+dd 06b1b8f15h
+dd 00b57e19dh
+dd 07de64ccah
+dd 07f90096fh
+dd 052e191c8h
+dd 07cc96768h
+dd 0d4b2a502h
+dd 015c7e7f2h
+dd 046daf684h
+dd 01de503d6h
+dd 03cb337d8h
+dd 06a8dde70h
+dd 0dfd98d59h
+dd 0a6a729edh
+dd 0620fda42h
+dd 076c23f89h
+dd 0063ab456h
+dd 0054f9d94h
+dd 0342dde7dh
+dd 0324c3f8bh
+dd 0afc0c9cch
+dd 0d1bdfd01h
+dd 0df3c3a2ah
+dd 0543476b6h
+dd 02d867773h
+dd 08fd59db9h
+dd 020cfd69ah
+dd 0b8a8802fh
+dd 06d351bc1h
+dd 0cbe4da4ah
+dd 093d608e8h
+dd 0d205863eh
+dd 0b2bf5c00h
+dd 01d6e96feh
+dd 05a363b71h
+dd 02ffc124dh
+dd 06b286416h
+dd 00a1fd4b5h
+dd 05fd12044h
+dd 0bc06e163h
+dd 06941fec2h
+dd 0c440f4e5h
+dd 073aec07fh
+dd 0a13bba35h
+dd 05781227ah
+dd 007c150fch
+dd 072f4d12bh
+dd 0d63dd0a9h
+dd 012a6d162h
+dd 0e6553cf9h
+dd 032a67766h
+dd 07b4d87cdh
+dd 0f1a16ba7h
+dd 0a8a8822dh
+dd 0ef305ea6h
+dd 0cfac8ee4h
+dd 0df4a7a4dh
+dd 0696f278ch
+dd 01092220eh
+dd 000b19600h
+dd 073ae39a0h
+dd 06b5d24eah
+dd 0260da50eh
+dd 0cf80b499h
+dd 01ea89e15h
+dd 0a4f545fah
+dd 0d811d4afh
+dd 0d50c19e1h
+dd 0ff5ce8c9h
+dd 0a17e031eh
+dd 0e641bef4h
+dd 06d1cfd48h
+dd 0022fd524h
+dd 01fb98037h
+dd 007dd318eh
+dd 0152b391dh
+dd 05d9d7eb0h
+dd 0bc195bf0h
+dd 03dd0524fh
+dd 0a0f66c84h
+dd 0e6d2514dh
+dd 0b94a14e4h
+dd 08a55f9a8h
+dd 07c00eadbh
+dd 0bd270f77h
+dd 02fe095efh
+dd 0dba91bc0h
+dd 0070dd88ah
+dd 069fc9b03h
+dd 0432e5d8fh
+dd 002ff4086h
+dd 04d2f8731h
+dd 00e3859b9h
+dd 068827a02h
+dd 0d6d79df3h
+dd 09f19847ch
+dd 01478978fh
+dd 081b43068h
+dd 0335e4946h
+dd 05289c6d5h
+dd 036362c6fh
+dd 09de2e08dh
+dd 0390b3fc0h
+dd 00d9154bch
+dd 050af46fah
+dd 0c84215e8h
+dd 0f81f2d46h
+dd 0cca929b2h
+dd 0004b236ah
+dd 07d856fc9h
+dd 0552f930ah
+dd 0a7cb7fbdh
+dd 065d937f9h
+dd 053fd0cc9h
+dd 0f650f12fh
+dd 0a8405a0fh
+dd 0f9ff5b80h
+dd 0dd6e0592h
+dd 0266632f6h
+dd 0b27183e1h
+dd 058e59c9bh
+dd 0177e2d25h
+dd 0fafdb7fbh
+dd 0e975f23ch
+dd 0e60bdc8dh
+dd 09f31837eh
+dd 0efe11ec6h
+dd 0d65117eeh
+dd 03c3267e2h
+dd 0159022d7h
+dd 09cda9c4ah
+dd 0a9301784h
+dd 044dc24d9h
+dd 0ee2c9f61h
+dd 0022017b5h
+dd 0df440121h
+dd 098a9fdf6h
+dd 0b05cf764h
+dd 07501d53ch
+dd 064357ddch
+dd 0bd940eadh
+dd 0d576c818h
+dd 04e123275h
+dd 01f84993bh
+dd 019622c1ah
+dd 0e8ffd5e7h
+dd 0edb0769fh
+dd 018794363h
+dd 0cef1142bh
+dd 0c31c8a89h
+dd 04c3fd4fah
+dd 0b2dc5adeh
+dd 066019d8bh
+dd 00c37f2b4h
+dd 04b2e211dh
+dd 08f05551fh
+dd 0ad79bc26h
+dd 014101d68h
+dd 0bdd0dde0h
+dd 07d6b254ch
+dd 09ee86872h
+dd 02d5622a4h
+dd 02653a5d7h
+dd 043e95569h
+dd 09fb0cc86h
+dd 00e3a1303h
+dd 09d39e22fh
+dd 06d1d60d9h
+dd 08b8b12ddh
+dd 0f6512218h
+dd 084ce41a0h
+dd 09fc45b5bh
+dd 06f4dd6bah
+dd 0cf4f59a7h
+dd 0ffe9dcb6h
+dd 0bce4c769h
+dd 0706dd183h
+dd 03e59c241h
+dd 0c7552d28h
+dd 0f9ddcdcdh
+dd 0305185d9h
+dd 027a0fc83h
+dd 0199a3732h
+dd 0fe8dfaf8h
+dd 059d02007h
+dd 0b7a7a2cbh
+dd 086e6b4eah
+dd 0ac018622h
+dd 0f0450b66h
+dd 0aa3bdeech
+dd 083d94740h
+dd 08f2eed4ch
+dd 00c1daa77h
+dd 0a5d66c7eh
+dd 05860e080h
+dd 0af7bd295h
+dd 0d6331407h
+dd 031d4d3c7h
+dd 04a635678h
+dd 0d894b8a1h
+dd 01ddcae2fh
+dd 046a8051eh
+dd 0a77fbca9h
+dd 0025ea10ch
+dd 05163c9bch
+dd 079c983b4h
+dd 0be819623h
+dd 0a04b3524h
+dd 0313a745ch
+dd 05879d77eh
+dd 018d7a420h
+dd 06f98377bh
+dd 033e2a943h
+dd 0b01e0902h
+dd 01cf2dbebh
+dd 09b06d2ffh
+dd 08416196fh
+dd 066261e11h
+dd 0dd42db8ah
+dd 066b86df2h
+dd 02ad483ffh
+dd 00e8ad2c7h
+dd 009f91bech
+dd 0d94b4310h
+dd 0c0e80464h
+dd 03fd430aeh
+dd 09ea515f4h
+dd 066caae3dh
+dd 05b61bee1h
+dd 03f2ddb04h
+dd 0b3333ba5h
+dd 09c47d65fh
+dd 067fe5fabh
+dd 0efaada2ch
+dd 02e7f0861h
+dd 00ca005d8h
+dd 05656d811h
+dd 05437aec1h
+dd 07d8ce31fh
+dd 0cd2c8e10h
+dd 073176e3ch
+dd 00db72e51h
+dd 05f2b1486h
+dd 094c26e82h
+dd 025306a95h
+dd 083e0048bh
+dd 0bfd39cd6h
+dd 01690f304h
+dd 072b162f3h
+dd 0d0660496h
+dd 039310a23h
+dd 0ba8f3719h
+dd 018355f33h
+dd 0a3296a20h
+dd 079554682h
+dd 04b68e4c1h
+dd 04667c09ah
+dd 0e138011fh
+dd 0ae9a5a87h
+dd 0fa8ded35h
+dd 0c3590c03h
+dd 01880edb3h
+dd 018fa912eh
+dd 0489c7393h
+dd 0d3d02e17h
+dd 007297213h
+dd 026044e8eh
+dd 07923f747h
+dd 0b74ec58bh
+dd 0b7e95786h
+dd 09ccf7204h
+dd 0daf32414h
+dd 07f0083dfh
+dd 00c81aa87h
+dd 0e1e6140eh
+dd 0dfcf0d9dh
+dd 0b096769eh
+dd 0aac619e0h
+dd 09dfc66a8h
+dd 0f21f9ac1h
+dd 0fadf87b1h
+dd 0e1da0a22h
+dd 0d0b6de16h
+dd 05e03bb57h
+dd 03f708480h
+dd 0498bcaabh
+dd 0a8f67a57h
+dd 09ff00f52h
+dd 01f71873dh
+dd 0a254221dh
+dd 0bed561e1h
+dd 038702823h
+dd 0482e7211h
+dd 053617cdch
+dd 0d93a957eh
+dd 090ca9717h
+dd 0cdde6bd5h
+dd 0323497f7h
+dd 08f960458h
+dd 025ad88b6h
+dd 013e1a5fdh
+dd 0842c4d58h
+dd 0742dc0c5h
+dd 0b935627bh
+dd 0cf12176ch
+dd 09577efb8h
+dd 0d014d426h
+dd 08853704bh
+dd 0335272a5h
+dd 06aeb294eh
+dd 0b6322f4eh
+dd 096ed9649h
+dd 0888fb945h
+dd 08c82ed67h
+dd 07bafe734h
+dd 03f104056h
+dd 002f6ac6ah
+dd 0f7854d35h
+dd 03e98e8f6h
+dd 0dde26814h
+dd 0cb2daeach
+dd 09af2bcd3h
+dd 09f7976a1h
+dd 066bda157h
+dd 05d497179h
+dd 04cacdf44h
+dd 0f643c632h
+dd 0197bcc57h
+dd 06e7ee1feh
+dd 074f90515h
+dd 02014efbah
+dd 0d20c933bh
+dd 0ad2cfd65h
+dd 0a51ace92h
+dd 007084f73h
+dd 015a8a565h
+dd 04c4d12a7h
+dd 04b68d91ah
+dd 0c033eb32h
+dd 0ca491f76h
+dd 0889ab410h
+dd 08e19aff0h
+dd 0323b17d7h
+dd 0ce000b64h
+dd 00bd6ffd3h
+dd 020cb923ah
+dd 06bcfec71h
+dd 0e4491c7ch
+dd 0fc1c40c7h
+dd 04124f5f3h
+dd 0c9766773h
+dd 0679660e8h
+dd 0c906bb8ch
+dd 08ef621c8h
+dd 0ac677c82h
+dd 004a7980ah
+dd 0bc621ed7h
+dd 0e0e19f34h
+dd 089ba56ach
+dd 048af6bd3h
+dd 00668af54h
+dd 043f1b2aeh
+dd 09bd74702h
+dd 057b327fdh
+dd 03d1b13ech
+dd 041ccfed9h
+dd 09339cbfdh
+dd 059c161ech
+dd 0b66b1a91h
+dd 0d1859e84h
+dd 0d194475eh
+dd 0b51c773ch
+dd 00356c4dbh
+dd 09060ef76h
+dd 05e50fa4bh
+dd 0d93f2b59h
+dd 0bf9b5005h
+dd 052b26627h
+dd 0fd6ab6d9h
+dd 06ab20fe8h
+dd 0b30da91eh
+dd 0e9e2b161h
+dd 03a959958h
+dd 0eabdc308h
+dd 0513939e6h
+dd 07071dbd2h
+dd 0f23170aah
+dd 04ee4fc5ah
+dd 006e413edh
+dd 08f38f72ah
+dd 08c4e25c6h
+dd 05a6e843ah
+dd 02984de49h
+dd 061237956h
+dd 0eb85faa9h
+dd 05da0974dh
+dd 0724c80bdh
+dd 0be103f9eh
+dd 039cbc694h
+dd 09c72a238h
+dd 0f63318f7h
+dd 0596db3b9h
+dd 0cc747a8dh
+dd 0595b9d4dh
+dd 05a739aaah
+dd 0efc1ba4eh
+dd 0eec973f0h
+dd 00fead238h
+dd 0617f2487h
+dd 0fd0d112eh
+dd 06c8447cah
+dd 0d403fdbch
+dd 0968e05eah
+dd 02896cb40h
+dd 0c51ba3aeh
+dd 0d9059df3h
+dd 02dec6b24h
+dd 0a1ef14b5h
+dd 09d296158h
+dd 0d0f98e14h
+dd 0bc335e1fh
+dd 0ef794e44h
+dd 03021d652h
+dd 02b2891f3h
+dd 060d8fc93h
+dd 0e665306ch
+dd 0b19d738ah
+dd 07fcdf651h
+dd 0c45aa02dh
+dd 0e0b6f8e8h
+dd 02ab6ad48h
+dd 07a680c8ch
+dd 0e77cc32dh
+dd 08b193b99h
+dd 0468c0031h
+dd 06794503eh
+dd 014664a51h
+dd 011157ccah
+dd 038ca3b5dh
+dd 0ee88813ah
+dd 067dac7edh
+dd 0e73f243dh
+dd 038929f20h
+dd 067bcb403h
+dd 0d15efbbeh
+dd 0ef604e64h
+dd 0de218070h
+dd 048f9a8e7h
+dd 0799ac68eh
+dd 07f5de6ddh
+dd 0f8f30423h
+dd 0fb436661h
+dd 000b84373h
+dd 05a162f10h
+dd 016568f84h
+dd 0ef425da8h
+dd 0f8fc25c7h
+dd 0507a2063h
+dd 07c820fa1h
+dd 0c4113dd2h
+dd 02fe63298h
+dd 0a89de9e7h
+dd 055132e49h
+dd 00d2a8863h
+dd 0e6e2b2beh
+dd 02dc2fd02h
+dd 0026e691ah
+dd 0dbf62198h
+dd 0b44cf3adh
+dd 05142272bh
+dd 0884a0ec4h
+dd 05ad0227bh
+dd 0e24b5742h
+dd 06de64d00h
+dd 01ca4d4cch
+dd 0df6398d1h
+dd 0ae65192fh
+dd 021728d86h
+dd 04685cf07h
+dd 0342dba3fh
+dd 0cd659eb3h
+dd 00ef25b42h
+dd 050e11ba6h
+dd 030351d19h
+dd 09852974fh
+dd 081f8e137h
+dd 07ff55dd4h
+dd 06d40babah
+dd 059543806h
+dd 09752104bh
+dd 0dff56916h
+dd 041dbf80fh
+dd 067368d25h
+dd 019fb9285h
+dd 088daf320h
+dd 08c2ec18bh
+dd 036ed4742h
+dd 0ecd76a9dh
+dd 08b8a1226h
+dd 07985d0bfh
+dd 0cb2f4e08h
+dd 0dcb57992h
+dd 04d65333ah
+dd 01cc9401eh
+dd 03d950a8fh
+dd 0066cd9dfh
+dd 037d70387h
+dd 000321fcah
+dd 04a2eec60h
+dd 0204a81a8h
+dd 0a850996dh
+dd 0ea38244bh
+dd 08065cac6h
+dd 0adf4f299h
+dd 04350dc42h
+dd 0b710ec1bh
+dd 049a344ceh
+dd 01159b3a6h
+dd 0eca48335h
+dd 0c1f9bc65h
+dd 0f53a5cd2h
+dd 02f2272cbh
+dd 07183cb97h
+dd 09b5cf785h
+dd 037d6b103h
+dd 04c29806fh
+dd 04239db3bh
+dd 0d96c1291h
+dd 05cb3fbd3h
+dd 051722a75h
+dd 0d286d85eh
+dd 0061dc919h
+dd 0413d887ah
+dd 031930a55h
+dd 07e611f37h
+dd 076375461h
+dd 0a2024bafh
+dd 074ca90a3h
+dd 0c506d199h
+dd 08d2d8c3fh
+dd 07e46ca01h
+dd 0070fe520h
+dd 0b3dc0ea4h
+dd 017032bddh
+dd 0e44263f9h
+dd 0aee3a694h
+dd 048144317h
+dd 0b0a79e78h
+dd 0f6fbb47bh
+dd 05f9d8303h
+dd 0236cf813h
+dd 086beefc6h
+dd 0d21c899fh
+dd 045f53a3eh
+dd 057041d0bh
+dd 0cf801e48h
+dd 03ad16b40h
+dd 03bb677b2h
+dd 0bd995dfbh
+dd 06309ea6fh
+dd 06ec1485bh
+dd 03d0bc10ah
+dd 0d488d3cfh
+dd 02b507ae0h
+dd 0c6ca6644h
+dd 01dc321aah
+dd 060a06b80h
+dd 0c7ba75f1h
+dd 070f1e9feh
+dd 09eafd138h
+dd 07a0f1faeh
+dd 0b4ed5262h
+dd 0c1563cb2h
+dd 0732ee1edh
+dd 02de24757h
+dd 02889b5c3h
+dd 0746758afh
+dd 0878b6e9bh
+dd 06e01f2eah
+dd 0909afad1h
+dd 082586a98h
+dd 06480e6dfh
+dd 069ea5756h
+dd 03ebb7b23h
+dd 02227e201h
+dd 0e128bdb7h
+dd 0c8985db7h
+dd 06aeeec31h
+dd 0e1601d86h
+dd 0bbbee8ebh
+dd 06a6035dch
+dd 0450a7f44h
+dd 031d6509fh
+dd 09234abcah
+dd 0d35c0376h
+dd 071a3849dh
+dd 0555ab551h
+dd 0d4ab3f26h
+dd 0b59aff62h
+dd 03ae31e8bh
+dd 0ebe985dch
+dd 010df7104h
+dd 06fbcca29h
+dd 0077a4647h
+dd 03331e76eh
+dd 08f5c6f53h
+dd 0bda4f215h
+dd 0afe8d72ah
+dd 0b49b1a63h
+dd 02255e79ch
+dd 08e008d22h
+dd 0c205fc86h
+dd 054b02655h
+dd 05cd9b98dh
+dd 0d4c7a2deh
+dd 0d2ad3613h
+dd 0ce431590h
+dd 02a5d852ah
+dd 04d057e4ch
+dd 04fab7e96h
+dd 02d935ccah
+dd 0419910ech
+dd 0aa2b75f1h
+dd 09da3b3d4h
+dd 06a8899d9h
+dd 056d86c1ah
+dd 048631fb1h
+dd 0641ba260h
+dd 0ca6744eah
+dd 02569db51h
+dd 0a933eef8h
+dd 06cce74c6h
+dd 0a434a85fh
+dd 0adb8f217h
+dd 0e09cab2eh
+dd 00827d40ah
+dd 00d74a6d8h
+dd 0e64f4c16h
+dd 0c5129d1fh
+dd 0ee12fb3eh
+dd 024e7f0edh
+dd 0ba80887eh
+dd 08450c5e9h
+dd 0f0e9d6d9h
+dd 0aec34e8fh
+dd 011aa6a2dh
+dd 081000e48h
+dd 052c1b628h
+dd 09c6101eeh
+dd 02cd6dd79h
+dd 062ea174bh
+dd 070fba6edh
+dd 0243967d3h
+dd 08644e802h
+dd 0ec660d4ch
+dd 05ccdb89ah
+dd 0eba60f34h
+dd 0f69ddbf8h
+dd 037292bc7h
+dd 02cdf9cc0h
+dd 02902a67bh
+dd 02b611853h
+dd 01777a008h
+dd 0cae5cf81h
+dd 0e9b0a332h
+dd 08e51cc03h
+dd 098bd8510h
+dd 0729e0616h
+dd 0f21fa06ah
+dd 04523510bh
+dd 01ab5e65ch
+dd 07d348bb5h
+dd 0a53dad0dh
+dd 0e3aac57bh
+dd 05886a881h
+dd 0747a85d9h
+dd 08751b94fh
+dd 0db4530e0h
+dd 03adc4dbeh
+dd 0f774be68h
+dd 0ace46396h
+dd 0d2a7314dh
+dd 0fd702a7ah
+dd 0ece6dd03h
+dd 09a2f7e82h
+dd 09d67cf17h
+dd 0e8ef4ab3h
+dd 0beae5a08h
+dd 0e354f3cfh
+dd 0974a7518h
+dd 0f6a4c410h
+dd 0044e1db2h
+dd 063af938eh
+dd 064a56e22h
+dd 0a808366ch
+dd 06568a99fh
+dd 0b620f424h
+dd 0e3314a7dh
+dd 0622785b7h
+dd 0f552c7d1h
+dd 09f1afebch
+dd 0ba44cde3h
+dd 069660d80h
+dd 0fc5d4508h
+dd 04babbd2bh
+dd 0a5b08ccch
+dd 0d3d58c26h
+dd 01bbe0c2bh
+dd 0e057cd40h
+dd 0220f9c93h
+dd 072135ab8h
+dd 09b31066ch
+dd 00145e92bh
+dd 09d08139eh
+dd 07a02f02dh
+dd 0848abb47h
+dd 0b0340266h
+dd 06cc4056ah
+dd 068b69edeh
+dd 0ecf0be2fh
+dd 0db91738eh
+dd 021d75b87h
+dd 0f55be5a1h
+dd 0aa45dc31h
+dd 093a80febh
+dd 0f8fbf036h
+dd 06dcfda8eh
+dd 06415c161h
+dd 0fc55e69fh
+dd 018843734h
+dd 00abb32e0h
+dd 0496c995eh
+dd 0b36b57aah
+dd 09df9f188h
+dd 06b2a5608h
+dd 00e90d7a4h
+dd 05043123dh
+dd 0ba8409f1h
+dd 01f44af65h
+dd 045eb2983h
+dd 069301cfah
+dd 04189c1d9h
+dd 00480f26bh
+dd 0259fd832h
+dd 0ebe07a10h
+dd 070ea3bf2h
+dd 06f7c9b70h
+dd 0b7c16b7fh
+dd 0cba12968h
+dd 021ec0f77h
+dd 04ed6c46dh
+dd 019727da3h
+dd 0041a55e5h
+dd 0670047cdh
+dd 07e20d681h
+dd 0062abc81h
+dd 076dc3053h
+dd 0a26a8bbeh
+dd 00ef98050h
+dd 0df3e397fh
+dd 036401937h
+dd 09ebf191bh
+dd 0fc60f54fh
+dd 0347620ebh
+dd 0e926a52fh
+dd 0d4ac489ch
+dd 0b0e69b9bh
+dd 0809274fah
+dd 087b55f71h
+dd 0597f2850h
+dd 0c642bd04h
+dd 0d24f67f8h
+dd 07ede4f61h
+dd 0942848f0h
+dd 085a202a4h
+dd 092308154h
+dd 04a470ef5h
+dd 0150342fah
+dd 0a9827ffeh
+dd 0ddbf5d83h
+dd 0cd0a5408h
+dd 07d51baabh
+dd 08e437c19h
+dd 0c6c2693fh
+dd 0b0601bdfh
+dd 0c5b1c4bch
+dd 0537e96bbh
+dd 0e32b2e8ah
+dd 0f40684b7h
+dd 05b68ca6ch
+dd 06c517728h
+dd 0b2fd5931h
+dd 0a2f0483fh
+dd 05aedc288h
+dd 0301573e8h
+dd 0ef137422h
+dd 00e61b550h
+dd 06dd7e7d0h
+dd 0e9a8b868h
+dd 00616252fh
+dd 068caa30bh
+dd 04606473fh
+dd 0e8b773a4h
+dd 086c56ea3h
+dd 02e79410fh
+dd 0fe80f34eh
+dd 026768d93h
+dd 04a91f5bdh
+dd 0265c6bdeh
+dd 0156e3026h
+dd 0bc23b1fbh
+dd 03fa8d39ch
+dd 0361b625dh
+dd 0e71e399ch
+dd 08ed12109h
+dd 0c2361a26h
+dd 04358cf28h
+dd 01bdb651bh
+dd 02a15cf28h
+dd 0528430d1h
+dd 03c80a96ah
+dd 0bfc7118fh
+dd 0bc7e7942h
+dd 0f31024d0h
+dd 079c7b456h
+dd 0d988e722h
+dd 027e6fec3h
+dd 0ed3d67a1h
+dd 01dd389a3h
+dd 035385647h
+dd 0a33b964eh
+dd 039c1cb2ah
+dd 02575da70h
+dd 0a3adb339h
+dd 02bf920dfh
+dd 0870ef81fh
+dd 04cdb47f8h
+dd 02b0aaeefh
+dd 04f9d1342h
+dd 0d8a911d3h
+dd 0cbcf4cc5h
+dd 09c937c3bh
+dd 073fceeb2h
+dd 00b680849h
+dd 0ab60f130h
+dd 060be5aa1h
+dd 04bcccd31h
+dd 07e455d2bh
+dd 0d5cc64a2h
+dd 093c9df73h
+dd 0aa345ca7h
+dd 0ce2c301bh
+dd 05335c9d5h
+dd 04fca8269h
+dd 0c6fa3cf8h
+dd 0675d23b1h
+dd 0b90f7825h
+dd 08c4faf78h
+dd 02e41b176h
+dd 0a7fe9a13h
+dd 0e3eb1c29h
+dd 0195527bdh
+dd 0d800c318h
+dd 0822f5033h
+dd 060d0f186h
+dd 0f72333c8h
+dd 0777bd5c8h
+dd 0822c8a92h
+dd 089d3a99bh
+dd 09cf44249h
+dd 0cdabc504h
+dd 0b38afac5h
+dd 0d536493eh
+dd 0166c5a6ch
+dd 0827ff969h
+dd 0292c7e27h
+dd 0b1845a4fh
+dd 0606d54cch
+dd 0e18d7d88h
+dd 0480c98beh
+dd 0bb83b56fh
+dd 022da0d8fh
+dd 0e54bed64h
+dd 06d3abed3h
+dd 0b2325561h
+dd 0f7870b26h
+dd 0d91549b5h
+dd 04c462292h
+dd 0fbb547d4h
+dd 09d3cef08h
+dd 0aaeb681eh
+dd 0490bd616h
+dd 0afc5b567h
+dd 0fa905defh
+dd 08531fdf2h
+dd 08d8303dbh
+dd 0aeffff17h
+dd 084423043h
+dd 058f8dcabh
+dd 0669d01fah
+dd 0f891a880h
+dd 0ac98284bh
+dd 03d116c67h
+dd 03c2b1d71h
+dd 017373259h
+dd 050bb2d91h
+dd 093d3af55h
+dd 00e4c13deh
+dd 0b7d1f1aah
+dd 0075a9797h
+dd 0ab6c6eb6h
+dd 0c1540ffbh
+dd 08463ae6dh
+dd 05b5a4004h
+dd 03f05df95h
+dd 01c375f12h
+dd 032c35666h
+dd 05f260158h
+dd 0005f36cfh
+dd 0a500c331h
+dd 0ca17762ah
+dd 0bb79ce65h
+dd 0ed6bc94ch
+dd 0492ff81ah
+dd 003a1fefeh
+dd 01e4f0549h
+dd 0751834b9h
+dd 0dc5279b3h
+dd 02e0db41dh
+dd 0e55431e2h
+dd 0cd8b4e5ah
+dd 074b767edh
+dd 056eb3966h
+dd 0f9a6b3a4h
+dd 0968491c0h
+dd 0ff615229h
+dd 094f2b008h
+dd 033335754h
+dd 0655b92ffh
+dd 016e97278h
+dd 0d85255bdh
+dd 00d05725dh
+dd 0d726f11ch
+dd 0656dfc9dh
+dd 09876103bh
+dd 051299f0bh
+dd 01349a1ebh
+dd 0f15a065ch
+dd 0ea50ddb5h
+dd 08c4047beh
+dd 06da79d3ch
+dd 0d6aafbbah
+dd 018012befh
+dd 02af97ba9h
+dd 0d6b2d0f2h
+dd 07dbfc839h
+dd 00f811730h
+dd 0bd3a5835h
+dd 0700d432fh
+dd 0a6a9087dh
+dd 066c50443h
+dd 0d9be5f29h
+dd 0c82b4107h
+dd 0bcd83d83h
+dd 0c8a386f0h
+dd 0186483f0h
+dd 03a5a9885h
+dd 0c9de20d6h
+dd 07afc813ch
+dd 0b5adfb08h
+dd 01269d555h
+dd 08af4636eh
+dd 0b98c173eh
+dd 0d2c543afh
+dd 07ec983ceh
+dd 00c01590bh
+dd 0e8f10678h
+dd 01ba0ed5ch
+dd 065d5bf0ch
+dd 0a9be3412h
+dd 05badf6adh
+dd 03fc8c568h
+dd 07deb5c7bh
+dd 0f5d3bc55h
+dd 06ee01f1eh
+dd 0e5bcc9e6h
+dd 03d56b595h
+dd 03d971803h
+dd 050b7c4c2h
+dd 040ff9782h
+dd 07b832312h
+dd 0a3fe6482h
+dd 0df709a1eh
+dd 0ff57ed69h
+dd 00dbb9895h
+dd 0a6c74716h
+dd 0eae9f1c2h
+dd 0d7777fc4h
+dd 08083085eh
+dd 046cfb731h
+dd 08519ca7ah
+dd 0d7ca1beah
+dd 0cbfb8a05h
+dd 0f99f9205h
+dd 0fa855c2dh
+dd 0ededb219h
+dd 001d56bfbh
+dd 08709eaa0h
+dd 05aae8d4bh
+dd 0840dbcc9h
+dd 0ff41182dh
+dd 0b3bbb458h
+dd 0c194345fh
+dd 0cf9f48ceh
+dd 0e3ee48f0h
+dd 0fb6c148ah
+dd 0ce2f5dcbh
+dd 0abc84df2h
+dd 0f4229aach
+dd 0e08b0e1ch
+dd 0e282198fh
+dd 0b6be9a97h
+dd 090de612eh
+dd 0d1ec9670h
+dd 0666032e6h
+dd 031c3b2f6h
+dd 0635803c8h
+dd 0f748ac23h
+dd 0968a6acch
+dd 07c842a6dh
+dd 0fc2dcde3h
+dd 0094f22cbh
+dd 04d257452h
+dd 03b515210h
+dd 0044a24ddh
+dd 08738582bh
+dd 0f923b624h
+dd 0e429de1ch
+dd 0abdc6ff8h
+dd 04aeefbf3h
+dd 0b54c8034h
+dd 0bed1d2e4h
+dd 05904eee3h
+dd 028148ebah
+dd 06714d6d0h
+dd 0a8743d49h
+dd 00cb333dah
+dd 0760408efh
+dd 0a2864f6ch
+dd 0f6c51739h
+dd 0d12b0514h
+dd 0700fd1c5h
+dd 0b52eb73eh
+dd 07db03929h
+dd 0482a72cfh
+dd 0a8150633h
+dd 07efb7b79h
+dd 0bd4a609ch
+dd 005a02c61h
+dd 0eedb6b71h
+dd 0f9f59880h
+dd 06313594ah
+dd 01fa289bdh
+dd 0ea87375eh
+dd 0a1ffcb2ah
+dd 0147f90ffh
+dd 02192ca42h
+dd 035a2154dh
+dd 0bce9d476h
+dd 03be38020h
+dd 03dbd3764h
+dd 067425b3dh
+dd 05b65c99ah
+dd 0565a7b85h
+dd 03d3bb98dh
+dd 0905cc4e1h
+dd 0e1b37208h
+dd 02b533549h
+dd 028864c31h
+dd 0037d3ca4h
+dd 0b36864bah
+dd 01d6b0593h
+dd 0b41ae660h
+dd 0575999b6h
+dd 047b037cdh
+dd 02bd90cc5h
+dd 090869a25h
+dd 0a38486c7h
+dd 086413896h
+dd 04db2bcd9h
+dd 00a9fb331h
+dd 05faebb0fh
+dd 0da709a86h
+dd 04f71f080h
+dd 0ea0c0750h
+dd 05cb24326h
+dd 0e3014c16h
+dd 024867dc7h
+dd 0b447f048h
+dd 0712cbd0ch
+dd 0b2130b4ch
+dd 0a4c47f66h
+dd 0cf288c84h
+dd 053394405h
+dd 02953bdfdh
+dd 0b7e7ea3ah
+dd 02ddea0eah
+dd 0e8e68b49h
+dd 01f396396h
+dd 085c7558dh
+dd 0b68ac620h
+dd 0cc9175fch
+dd 02473755fh
+dd 04f680da3h
+dd 0339ccb6ch
+dd 0ae740ce9h
+dd 0ddc08b48h
+dd 0141a2308h
+dd 0fda753e2h
+dd 0ccb19691h
+dd 09642a525h
+dd 047ba700fh
+dd 033a2e09eh
+dd 0bfe7c243h
+dd 05778922dh
+dd 02e79de1fh
+dd 0348159c0h
+dd 02361ac7ah
+dd 0f769da39h
+dd 084322399h
+dd 082e49458h
+dd 06cb16f39h
+dd 0184555cch
+dd 0de4c7861h
+dd 07d0d2bf1h
+dd 064eee7f1h
+dd 0af3ea953h
+dd 02c292d14h
+dd 0a06bc352h
+dd 0207d03d9h
+dd 0f060ba9eh
+dd 02016044ah
+dd 0d2a06254h
+dd 03b66e69ah
+dd 017fe5d0ah
+dd 0f7f80793h
+dd 0d22f53c3h
+dd 093330bd2h
+dd 02d0fd482h
+dd 0ca9f133bh
+dd 08f94c06eh
+dd 09e623414h
+dd 09fa729a5h
+dd 0ee7e603ah
+dd 00e78ee07h
+dd 0aca507a4h
+dd 086d6d8bah
+dd 0a7018488h
+dd 044e921f2h
+dd 0c661bae8h
+dd 0c4abcac3h
+dd 089be10d6h
+dd 0fe32540eh
+dd 0a2448bb3h
+dd 08d8ba465h
+dd 0914404cch
+dd 06a113a25h
+dd 03a0ac296h
+dd 06e41bf13h
+dd 031a280bdh
+dd 0a62044c9h
+dd 0eae6fe8fh
+dd 0902cbd35h
+dd 014c3bb39h
+dd 0a5812976h
+dd 03bdb1772h
+dd 06107ce8ah
+dd 06a50e231h
+dd 0eb79d6f1h
+dd 09b8a0babh
+dd 0042fffaah
+dd 0fd0205f4h
+dd 065a16ae5h
+dd 0a3228541h
+dd 02e21b12fh
+dd 0c40251c2h
+dd 006da39aeh
+dd 000d408e7h
+dd 05dc5dffeh
+dd 039fc13cfh
+dd 0f33fcc77h
+dd 0e57e0bb7h
+dd 02e73e257h
+dd 032fdea54h
+dd 0333851eeh
+dd 05e682f2fh
+dd 064b6c817h
+dd 002ab224bh
+dd 0ca514968h
+dd 071408467h
+dd 09ec0c327h
+dd 0d329f136h
+dd 0bc1bd7f5h
+dd 029611d25h
+dd 06a1bd76ch
+dd 0421d5e97h
+dd 0162f1489h
+dd 0420a256ch
+dd 09b205890h
+dd 0c63b717fh
+dd 02c7cfa7bh
+dd 0cca5a5e6h
+dd 05f4da790h
+dd 046259079h
+dd 042003ed4h
+dd 01925b1c3h
+dd 0af12fa2ah
+dd 0c6ad1af1h
+dd 02297e55eh
+dd 03c402b80h
+dd 00c2182a2h
+dd 043c85876h
+dd 0681fa888h
+dd 0d9fcb825h
+dd 058307d96h
+dd 0c8eacb1eh
+dd 0c30d1f9bh
+dd 0ac19dd16h
+dd 0a79a273ch
+dd 077805cedh
+dd 015b9032ch
+dd 005d60c3bh
+dd 0f0ee7736h
+dd 03eb7ddddh
+dd 012557a40h
+dd 029b1cbb8h
+dd 0970f6f7dh
+dd 0f01ee496h
+dd 0a8bc1b7dh
+dd 03b6aa27fh
+dd 02ad45e02h
+dd 05b96eaceh
+dd 00b02104ah
+dd 03278c4c3h
+dd 0f2441617h
+dd 013a0ba75h
+dd 020bd6a43h
+dd 0a80f00c7h
+dd 0133e1203h
+dd 011f7803bh
+dd 0b50144eeh
+dd 0b457bb34h
+dd 02c07fdb7h
+dd 043b35cfbh
+dd 0c13bedf6h
+dd 053293bd8h
+dd 0b6bb8592h
+dd 0b3afe9b9h
+dd 02283ef23h
+dd 0e31e1146h
+dd 080e85e1bh
+dd 098464b99h
+dd 0a18b3411h
+dd 0d0a08c35h
+dd 017e5e1f9h
+dd 015011558h
+dd 09c9cb631h
+dd 0141a9db5h
+dd 0f41a6d73h
+dd 04ffbb6a2h
+dd 0ad98f36dh
+dd 0c6e15e5fh
+dd 0ab009e49h
+dd 033460265h
+dd 0f60aaf32h
+dd 0c3cdae61h
+dd 07623dc19h
+dd 032111c06h
+dd 0313eeb09h
+dd 071d2ed53h
+dd 017d50a28h
+dd 097627d16h
+dd 07a63da11h
+dd 012d5e5feh
+dd 01b45ba86h
+dd 003ddc49ah
+dd 04afe09aeh
+dd 054b11f01h
+dd 08d9fde5dh
+dd 0bc7eb766h
+dd 0c45d8f34h
+dd 0c538d889h
+dd 0446c07d1h
+dd 06b7c20b7h
+dd 044f18e28h
+dd 030bcdb4dh
+dd 01a18b38ah
+dd 09ccda9b3h
+dd 02f4cdae8h
+dd 025ea515fh
+dd 03c8b6925h
+dd 042bed8e5h
+dd 01a463390h
+dd 0566bab08h
+dd 05e4eefd3h
+dd 04cf1fe22h
+dd 0d2cbe640h
+dd 0d9d02380h
+dd 0a14f62d3h
+dd 0d68e0505h
+dd 0d4299e7fh
+dd 02090672dh
+dd 038948abdh
+dd 0e17a2cfch
+dd 0ce62ff43h
+dd 0de60c9a5h
+dd 0418711cah
+dd 052f63f1dh
+dd 0fa82ad7ah
+dd 0b1c2057eh
+dd 0b5d660aah
+dd 011c0441bh
+dd 089d48e3dh
+dd 09f56e533h
+dd 0f99d4c95h
+dd 0ec3e3f6ah
+dd 068085e18h
+dd 03219260bh
+dd 09decbc4ah
+dd 0b5011ae9h
+dd 01b39cb2dh
+dd 091c72326h
+dd 0b7ee5440h
+dd 0cf59f839h
+dd 034208a83h
+dd 0d408b489h
+dd 0d96d9758h
+dd 03cc90d13h
+dd 04c6fc3d7h
+dd 03479a565h
+dd 049453687h
+dd 0781b9e5eh
+dd 0003e8c59h
+dd 03cd56712h
+dd 0dc5b6512h
+dd 0eca87b75h
+dd 026728920h
+dd 069841f12h
+dd 0e81cb14dh
+dd 0ce57446ch
+dd 099578c40h
+dd 084deaf0dh
+dd 0f903e834h
+dd 0e20bc4e6h
+dd 0291d6076h
+dd 08928386fh
+dd 02d60a760h
+dd 0868f9f0eh
+dd 001de2bd0h
+dd 0f240be6bh
+dd 08de1c7cfh
+dd 08d28bb18h
+dd 08d589376h
+dd 02cbfb593h
+dd 06d887a25h
+dd 02b9444a4h
+dd 06d0bc3ddh
+dd 0c63f730ch
+dd 00cfbc759h
+dd 0e128741eh
+dd 01753e900h
+dd 089b7b28bh
+dd 018d9e8d1h
+dd 0be969de7h
+dd 072cfaecdh
+dd 02f29101fh
+dd 00c155085h
+dd 0fb30c03ah
+dd 06fed40a7h
+dd 04b94ca86h
+dd 00266b31ch
+dd 0bd10a2b7h
+dd 0613a94e3h
+dd 017ee6e3ah
+dd 093c2e326h
+dd 0547d5848h
+dd 00a253c2eh
+dd 0ca39519fh
+dd 061e8a84bh
+dd 07d180f31h
+dd 033f60ef3h
+dd 092857096h
+dd 0ed19822ch
+dd 0097780bah
+dd 0212c4db8h
+dd 0315e3d68h
+dd 04fd5737ch
+dd 0bbf6a920h
+dd 0fc1b578ch
+dd 0b313f518h
+dd 0fd643098h
+dd 0d81cc6fbh
+dd 0d773d434h
+dd 04163c1e0h
+dd 01ab2513ah
+dd 024fd7f3fh
+dd 0890dd233h
+dd 0842bed92h
+dd 0753f1d71h
+dd 0d2d13744h
+dd 097b9ff19h
+dd 0d259fc03h
+dd 0e04c3cd7h
+dd 0e18b041ch
+dd 0e6701c3eh
+dd 0ddc83221h
+dd 072318896h
+dd 089eb7c9eh
+dd 060bdc903h
+dd 0888f286ah
+dd 0e3b2699bh
+dd 02023de21h
+dd 0802fc47eh
+dd 031149cfah
+dd 0e9471442h
+dd 0b822b482h
+dd 0b6531d69h
+dd 0cdfaade5h
+dd 002fdd158h
+dd 02dac665eh
+dd 05a612010h
+dd 071aaa5f1h
+dd 014f3e99ah
+dd 00f78a861h
+dd 0c2d035fdh
+dd 07fcb0a6dh
+dd 0cca36586h
+dd 0aefd8d63h
+dd 007d57cf7h
+dd 0aa6c899eh
+dd 026fe23f0h
+dd 008d48a13h
+dd 0a9d2a3d4h
+dd 008213920h
+dd 07a9b254eh
+dd 0a2844029h
+dd 0a7dc3d35h
+dd 00b0d4e6bh
+dd 07f3bcb2eh
+dd 0f6b5722eh
+dd 0ddb009bdh
+dd 0abdde24dh
+dd 057afbb27h
+dd 04b04c093h
+dd 049f19f0ch
+dd 06d49065eh
+dd 0155066aeh
+dd 008162e42h
+dd 07cc706fbh
+dd 05c81497fh
+dd 06965b374h
+dd 04db3c697h
+dd 09d1d17b2h
+dd 0a7835cd8h
+dd 0d45c5ed9h
+dd 0af6f4b47h
+dd 0cca87642h
+dd 0daf9eb3eh
+dd 004943c37h
+dd 025b1e50fh
+dd 0d1e54021h
+dd 0f95dfd99h
+dd 09a4b621bh
+dd 04df077d2h
+dd 0a065d357h
+dd 087f5fe49h
+dd 0f03a8c1eh
+dd 08574824dh
+dd 0d4705a07h
+dd 078955675h
+dd 073ee039dh
+dd 0cfbf5629h
+dd 0ff3d5cc4h
+dd 024f35ee1h
+dd 00be28943h
+dd 065a4b6b2h
+dd 0f3ba3f86h
+dd 046fb0375h
+dd 0c8f4d841h
+dd 0e5041f87h
+dd 06b4577b6h
+dd 02d9306c8h
+dd 0ce86d599h
+dd 0e633ad94h
+dd 0b8436a99h
+dd 053f27f4ch
+dd 0ea681e44h
+dd 0f654243fh
+dd 05a92337bh
+dd 0d7565aedh
+dd 0f5f240fah
+dd 0f0607a3eh
+dd 03be5ba45h
+dd 07d7b23c3h
+dd 00ae66f3dh
+dd 01571f17eh
+dd 0b2dbf86dh
+dd 00a24d126h
+dd 03dd27273h
+dd 02e536757h
+dd 0582c2ea7h
+dd 0142f0d2ah
+dd 0c229d074h
+dd 0018bcf1bh
+dd 0e4d73d51h
+dd 040640a80h
+dd 0bea8f3e0h
+dd 02acd51f9h
+dd 08eeb9557h
+dd 00b458433h
+dd 00e97e746h
+dd 0c34a43b4h
+dd 0b1948146h
+dd 05b5562c5h
+dd 019cbd976h
+dd 0ad9c10dfh
+dd 02facf157h
+dd 015af0712h
+dd 0dacfd719h
+dd 09b064cfbh
+dd 0c4026830h
+dd 076dcaee8h
+dd 097ab7001h
+dd 0d6999bd1h
+dd 09493e67fh
+dd 020ddb660h
+dd 0dfad4c18h
+dd 00d1bc8d4h
+dd 0fdbf8e00h
+dd 0945c61fdh
+dd 0305a3a81h
+dd 0346938b3h
+dd 00d13545ch
+dd 06f6b0abeh
+dd 0cb27b191h
+dd 0ffbb0772h
+dd 026ac6c17h
+dd 067e10b45h
+dd 016355653h
+dd 01bedf5d6h
+dd 08b17ce90h
+dd 0ba8ee280h
+dd 08c53df4dh
+dd 0727a03b8h
+dd 0ffa6aaceh
+dd 0dcab0e3eh
+dd 0b675f32ah
+dd 0bff3fdfah
+dd 03036bb24h
+dd 054dad6bch
+dd 0ce7593c5h
+dd 0c9089d4eh
+dd 07e055379h
+dd 08b3def81h
+dd 0211764cbh
+dd 00033b78fh
+dd 02fddf107h
+dd 074a312dah
+dd 0ff8f00aeh
+dd 0acaa06d1h
+dd 0a3594f5ah
+dd 0efd41be0h
+dd 04e2cffe1h
+dd 000458cd5h
+dd 041803e28h
+dd 064ecc7b2h
+dd 0247f0781h
+dd 046d64f30h
+dd 0304355b5h
+dd 073e68f09h
+dd 0ba76599eh
+dd 0c4c1242eh
+dd 07fd0fa3dh
+dd 00bfa643dh
+dd 05fc6a978h
+dd 03f342c28h
+dd 0ff105875h
+dd 050713e36h
+dd 06ce92b69h
+dd 05905cc62h
+dd 0c1e8b9b7h
+dd 0bfbe5ae3h
+dd 06e708df2h
+dd 0da319beah
+dd 0012776d4h
+dd 0fd5406ceh
+dd 07e080ac1h
+dd 0cc13e80eh
+dd 0cf6463c6h
+dd 03a14a856h
+dd 06cfceab8h
+dd 0a4255108h
+dd 0b3528775h
+dd 06ef78dfdh
+dd 00a553c48h
+dd 038fb55c1h
+dd 074831820h
+dd 019958c11h
+dd 079ad1d2eh
+dd 0e248b645h
+dd 0a4a6ee32h
+dd 0bd3b3773h
+dd 0b1e178ceh
+dd 00b15b649h
+dd 0d7316f82h
+dd 07277b2f5h
+dd 0db7c4676h
+dd 0758924abh
+dd 0c2528cc9h
+dd 092791e33h
+dd 0b93ccab7h
+dd 0dea8fb65h
+dd 026f19d8dh
+dd 04146b3afh
+dd 0cf7e6283h
+dd 011576f4fh
+dd 0bdb1180ah
+dd 0567e9fbfh
+dd 0142a535bh
+dd 0277f1c2ch
+dd 0a376baaah
+dd 0c1b41900h
+dd 008ec0dadh
+dd 01007090ah
+dd 00324099dh
+dd 0f4637f4bh
+dd 09214a2ddh
+dd 08a9dc75ah
+dd 003636353h
+dd 007cfaa8bh
+dd 02a4ee5d0h
+dd 0bc65af06h
+dd 00d257617h
+dd 045a7b7e3h
+dd 02e9cd93eh
+dd 0f172facdh
+dd 09cc1e228h
+dd 096d62e97h
+dd 0be3802c4h
+dd 00841ae2eh
+dd 0c2eedb16h
+dd 004b5aae5h
+dd 0ecb052b7h
+dd 07a028c90h
+dd 0f506675dh
+dd 01f4bc65dh
+dd 0bb1260dah
+dd 000ba23d8h
+dd 0107a2221h
+dd 0f7a5c899h
+dd 03c863ee1h
+dd 065ad7172h
+dd 0c01f3437h
+dd 02f204fedh
+dd 0964839e9h
+dd 022a2518ch
+dd 08d6130c7h
+dd 0c78af361h
+dd 0a0be7b07h
+dd 0d08e06f7h
+dd 0f4efe09fh
+dd 0630af209h
+dd 000b62c69h
+dd 04c335b96h
+dd 00a6dd1e4h
+dd 0d476fdabh
+dd 05d86bbceh
+dd 0e379ae52h
+dd 0c42cbe54h
+dd 0cf0fdacah
+dd 0da1e53dch
+dd 0075a6f0fh
+dd 09b6ec245h
+dd 0dac5651bh
+dd 0ce357e74h
+dd 053f3e828h
+dd 0dca4148bh
+dd 072c4fe70h
+dd 0f5666738h
+dd 09dc62e45h
+dd 060103deah
+dd 04ba8d04ah
+dd 0047e9474h
+dd 06e731d24h
+dd 054710867h
+dd 06c9f42a8h
+dd 081faf693h
+dd 0e848aec8h
+dd 0917bc38bh
+dd 03c2b413ch
+dd 0a06e9b5ah
+dd 07c26b177h
+dd 09e4c654eh
+dd 015bef83ah
+dd 01acc1f0ch
+dd 011e953ddh
+dd 04df73341h
+dd 0ea78b419h
+dd 0e6595093h
+dd 0431c2d60h
+dd 0c50d2fefh
+dd 08e326c60h
+dd 0f934cb3bh
+dd 01739e4d3h
+dd 03234b1a4h
+dd 0b7a02ce3h
+dd 0f7f42ce7h
+dd 04640e689h
+dd 0875766f7h
+dd 068eb2c0eh
+dd 0bf2603adh
+dd 0df55f20dh
+dd 0d75be3fbh
+dd 038d72a45h
+dd 008ed1d15h
+dd 0b4f87749h
+dd 0e68c0dfbh
+dd 05e4dba55h
+dd 0b682c4ach
+dd 0cc745f68h
+dd 086cc3d48h
+dd 06c6c3409h
+dd 01304fb1bh
+dd 0504c45c8h
+dd 0fbb70aedh
+dd 085dc60bdh
+dd 0f7e74c2dh
+dd 0174d377eh
+dd 04bdec497h
+dd 08e1f248eh
+dd 083ba630ch
+dd 005662bfeh
+dd 0b6e6160dh
+dd 0c75db6d2h
+dd 0d1044957h
+dd 053360157h
+dd 072bbbb02h
+dd 0e751a9a1h
+dd 0c8e4062eh
+dd 0e20c8aafh
+dd 0d53251e4h
+dd 04b0035c3h
+dd 091a1807ah
+dd 032fbab70h
+dd 078ae6d0eh
+dd 02d88ae47h
+dd 02c0ffb2fh
+dd 04915fbfbh
+dd 07b2a5d3fh
+dd 034bef99dh
+dd 019799bb6h
+dd 0d4541a05h
+dd 0d922783eh
+dd 08b98f383h
+dd 080a3f6f4h
+dd 00dc92e38h
+dd 0e637ec19h
+dd 0900bda41h
+dd 0e6bfed63h
+dd 02bca3fb5h
+dd 0b8ba1741h
+dd 05d4911e7h
+dd 0cf66b093h
+dd 0b76a43fah
+dd 04324ebafh
+dd 07e6a2a84h
+dd 001fddb92h
+dd 0abc83655h
+dd 082617087h
+dd 0e49ab195h
+dd 03b24a520h
+dd 03a6e7dd1h
+dd 0bc05c7ach
+dd 0774f1202h
+dd 0605ad2cdh
+dd 0d0cff227h
+dd 00b2763abh
+dd 0c7500d5dh
+dd 03b466b62h
+dd 0676c1c8dh
+dd 0d9ae8fcdh
+dd 0025ec1deh
+dd 0a73cadeeh
+dd 0b6b1e635h
+dd 0754940a3h
+dd 0994d0ca4h
+dd 0a7af2abah
+dd 0c843d59fh
+dd 065ca7f73h
+dd 062b825f8h
+dd 0458102edh
+dd 0c0b59aa1h
+dd 0c9f45c7ah
+dd 0495a2729h
+dd 0aebf704eh
+dd 0f77a8da6h
+dd 0add42740h
+dd 072f7f1c0h
+dd 0f27b85b1h
+dd 0416bf3efh
+dd 0bed1ef1ch
+dd 0f1699560h
+dd 0ba454a5eh
+dd 02ef58239h
+dd 023da6226h
+dd 060e19599h
+dd 01a6c23a5h
+dd 022be3dfch
+dd 09e62cfe2h
+dd 0bbe92719h
+dd 05d2c0c89h
+dd 0a5741a9bh
+dd 06da38dd9h
+dd 0244f39d6h
+dd 0eff308eah
+dd 0323754d7h
+dd 0f2cf082ch
+dd 00e4238b3h
+dd 0e4be4e95h
+dd 0f8fa628fh
+dd 084100030h
+dd 095f40962h
+dd 01d15f34bh
+dd 024e59f54h
+dd 0cc33a2f0h
+dd 0f620953dh
+dd 06475bbc3h
+dd 0b8f64b72h
+dd 0584736f0h
+dd 0c20c788ch
+dd 0681d0485h
+dd 0d6184c00h
+dd 0ed0a1b7eh
+dd 04b7615e5h
+dd 0a86e643fh
+dd 0d7a414fah
+dd 04470191dh
+dd 081dcedf3h
+dd 01e1aa98ah
+dd 04f6c2516h
+dd 0dfc09981h
+dd 0ac509abfh
+dd 0090f8a56h
+dd 06402b02ch
+dd 039d12fd7h
+dd 06f350527h
+dd 0f300cacbh
+dd 05083d4d1h
+dd 00e82ead9h
+dd 08f5cef8ch
+dd 013448f20h
+dd 0f44acca8h
+dd 0455d92d3h
+dd 0be25cbcah
+dd 0f078c4f5h
+dd 06a85982dh
+dd 05ca12c9bh
+dd 0c0f966a8h
+dd 08c9a1ed1h
+dd 03535f6ech
+dd 0e5b8af26h
+dd 087215807h
+dd 02c2de968h
+dd 0d1321770h
+dd 09d7ea1cfh
+dd 0cc3d92cbh
+dd 03509fdc6h
+dd 0f7f34929h
+dd 01e9c812fh
+dd 0963248eah
+dd 035a334b2h
+dd 0f174e1e3h
+dd 04ce2792eh
+dd 02634bbceh
+dd 02e1cb1c7h
+dd 0120cc509h
+dd 0ec6b771ah
+dd 0e25bb79eh
+dd 05bc76f90h
+dd 0bca051a9h
+dd 0cb847906h
+dd 08714f4eeh
+dd 0bb712d59h
+dd 0750d836dh
+dd 053da1593h
+dd 05d744afch
+dd 0dc8756f5h
+dd 0e754d541h
+dd 03c87f4d9h
+dd 047016851h
+dd 03228a370h
+dd 09b6b4a51h
+dd 00c1d22dbh
+dd 0f2048a5dh
+dd 0e7d2d056h
+dd 0111424eah
+dd 08ef9dd2fh
+dd 0a44d114fh
+dd 0cede085bh
+dd 072eb1d4ah
+dd 0d7c6058ah
+dd 06f551254h
+dd 0d89940b3h
+dd 0dd949a76h
+dd 09df7e5a5h
+dd 0ecd8ee2ah
+dd 02461c3b2h
+dd 037a24940h
+dd 001469814h
+dd 04257591ah
+dd 092024964h
+dd 0d28c0c63h
+dd 046bbe655h
+dd 0ab060d6ah
+dd 0b4110b2bh
+dd 0406e617ch
+dd 0ce3aad88h
+dd 0324e1ed5h
+dd 0fd1ab909h
+dd 0eb5ae1e7h
+dd 089ef5000h
+dd 09d503043h
+dd 0582dcb12h
+dd 0f55da68ah
+dd 0fe7b3a6ah
+dd 0630a1113h
+dd 0e321036eh
+dd 0caaf0de0h
+dd 0282ae071h
+dd 0469917bbh
+dd 087c26ea4h
+dd 07f408aech
+dd 0b1ece471h
+dd 0f1eaa39ah
+dd 02886c6cch
+dd 002d093c5h
+dd 03a00c7adh
+dd 00bb56642h
+dd 0ee83183ch
+dd 085b8cc6dh
+dd 06d947c41h
+dd 08c6bd0beh
+dd 0ae5a3c33h
+dd 0ee545eb0h
+dd 0d5a8d716h
+dd 0e411472ch
+dd 04897f977h
+dd 0e31c4feah
+dd 0a57b0799h
+dd 05802fe3eh
+dd 05919dfd6h
+dd 0c40284a6h
+dd 0f946fb17h
+dd 0437fdd84h
+dd 055ad4327h
+dd 0ab18364ch
+dd 0fb706e06h
+dd 04027aea7h
+dd 08393faabh
+dd 023f35035h
+dd 01604df12h
+dd 0683545f1h
+dd 0a3192ea7h
+dd 0036f8f85h
+dd 016c67cf1h
+dd 0bd87e54ah
+dd 0ff2aa718h
+dd 0e0967e3ah
+dd 0facb2f74h
+dd 00c8c97f2h
+dd 047469b1ch
+dd 07cdfd5eah
+dd 0626800a4h
+dd 0adf7f14fh
+dd 08af89eadh
+dd 06006e1f2h
+dd 035148e40h
+dd 0ace4fc54h
+dd 0562a363bh
+dd 0745f2131h
+dd 0da9b3caah
+dd 0dfdb209eh
+dd 06ace5f0dh
+dd 06f972c28h
+dd 02682dc0eh
+dd 01f113f37h
+dd 061c0983eh
+dd 05d5568f2h
+dd 05749c92bh
+dd 0d889a9aeh
+dd 0ba719c50h
+dd 04c4a3112h
+dd 018fd63f7h
+dd 03a086c75h
+dd 0bf520021h
+dd 0ec87a5c8h
+dd 00b6f31adh
+dd 0ef25dc8bh
+dd 0c226d897h
+dd 0e074222bh
+dd 0c03dd8b2h
+dd 08c648a75h
+dd 0ed48f098h
+dd 018ee49c0h
+dd 090aea786h
+dd 0742ecdb2h
+dd 0faa505bfh
+dd 0009e5699h
+dd 0f32eef91h
+dd 09131a70fh
+dd 07703be8fh
+dd 05b1933d8h
+dd 0912cf9a8h
+dd 0870d18d5h
+dd 00464e678h
+dd 0292c93a6h
+dd 065707663h
+dd 0be972521h
+dd 0a53f4471h
+dd 0e7f7f0c7h
+dd 00f5d00eeh
+dd 0e14e553fh
+dd 0c321e90ch
+dd 065aaf711h
+dd 0033683abh
+dd 0ac836522h
+dd 00f2702dch
+dd 0edcc2a58h
+dd 04e3a87e4h
+dd 0b5f18947h
+dd 0e06a55e4h
+dd 0e316b12dh
+dd 08e00cf4dh
+dd 0ef8e8494h
+dd 05048dd33h
+dd 011e33e76h
+dd 0ec9d128dh
+dd 0b54a5837h
+dd 0f1a7722ah
+dd 0ba2c81c3h
+dd 0f2d2288bh
+dd 0f13edb0ah
+dd 0ed39c177h
+dd 006d024a0h
+dd 0f46fb577h
+dd 0f10e7a23h
+dd 06668c070h
+dd 0498b673fh
+dd 0e43c8b75h
+dd 03cba6fach
+dd 026525f42h
+dd 01cb66c73h
+dd 08e90336dh
+dd 0b871b22dh
+dd 0e2b9a057h
+dd 0ebc8a0afh
+dd 0ac7066e1h
+dd 0548d3501h
+dd 0e7581429h
+dd 018b5db20h
+dd 0edbe0e75h
+dd 063e37c3bh
+dd 0da2f14abh
+dd 05c7c822fh
+dd 02f3cb6e4h
+dd 05015b225h
+dd 0a4d8a7d9h
+dd 035020d9ah
+dd 096e9cb6ch
+dd 032a816bdh
+dd 06e6b8c40h
+dd 057704e26h
+dd 0cc5162f7h
+dd 0aa92b210h
+dd 0085ce344h
+dd 0a17200e1h
+dd 0f9f99684h
+dd 0b04df1f3h
+dd 0040d3e90h
+dd 0abbd7c43h
+dd 0f6a5bb94h
+dd 047b53cd9h
+dd 09c5b8c6ch
+dd 07c1defdah
+dd 0035324c9h
+dd 0557032b8h
+dd 01ff9b417h
+dd 057ed0996h
+dd 0ef2f6a27h
+dd 0967d54d6h
+dd 0a3e245d8h
+dd 01ce117dbh
+dd 065186be0h
+dd 00128ac91h
+dd 0bfb29974h
+dd 0083ec1fch
+dd 0d73a2c4dh
+dd 0e151f533h
+dd 0c709947dh
+dd 056ebc9afh
+dd 02893b9d1h
+dd 03fb086fbh
+dd 0b1216638h
+dd 07d9137c9h
+dd 06a7949d0h
+dd 048981bb6h
+dd 00d856c6eh
+dd 0bbeecc9ah
+dd 0f6ff3523h
+dd 078c84cbah
+dd 031024171h
+dd 0abc5f8e2h
+dd 09dd1f09ah
+dd 0f55cec28h
+dd 0b7c86a75h
+dd 0490af1beh
+dd 04c244508h
+dd 041e7731dh
+dd 0e2b86290h
+dd 0edf74fdah
+dd 06749b802h
+dd 0ce2bfa1dh
+dd 098de9fa3h
+dd 0144175b9h
+dd 08c12d1f1h
+dd 0f5894afeh
+dd 0b42a757fh
+dd 01f0579c0h
+dd 09203289dh
+dd 0b605448eh
+dd 06b11789ah
+dd 028c9cc93h
+dd 084c42394h
+dd 0552bd0d9h
+dd 00632298bh
+dd 055a81b4eh
+dd 0ac3d168bh
+dd 081720986h
+dd 0154eed5fh
+dd 06f98a9a3h
+dd 0fdb1ce6ah
+dd 0a6a44098h
+dd 0a59b15b9h
+dd 036a0a643h
+dd 048b1c648h
+dd 0e3031b74h
+dd 035fa3420h
+dd 0268e23a2h
+dd 086d1d2cbh
+dd 054223a54h
+dd 0c4e0be52h
+dd 09bf0863dh
+dd 0f1c0b291h
+dd 045b7c3bch
+dd 09a84742fh
+dd 041c73003h
+dd 01bb383beh
+dd 0e3b1e02bh
+dd 0909528b5h
+dd 059150ed7h
+dd 0efd55e57h
+dd 0ad5d0926h
+dd 065b03d24h
+dd 0bbf6ee7dh
+dd 08129d165h
+dd 0433449edh
+dd 0521dbb8bh
+dd 0ebce9cadh
+dd 0e047239dh
+dd 07f13ca6ch
+dd 0bb0b4717h
+dd 0702e3c7eh
+dd 0e431f0f8h
+dd 036fd9f08h
+dd 04b8a1854h
+dd 059caa30dh
+dd 0422f5089h
+dd 0a6658811h
+dd 0032f8d18h
+dd 02221b3bah
+dd 07ece7d8bh
+dd 0f2dc60d5h
+dd 01f4c663bh
+dd 0ec7858c7h
+dd 0823e4824h
+dd 0adc3985fh
+dd 0b6edf830h
+dd 0a4170575h
+dd 06346b726h
+dd 02ccf924ah
+dd 0ea2e1434h
+dd 0264b4374h
+dd 0532195efh
+dd 095b19b49h
+dd 08b89ef0eh
+dd 0df9670c8h
+dd 0796ab0ebh
+dd 09de0856fh
+dd 00d2c5861h
+dd 023fa67f0h
+dd 0acdd00e8h
+dd 00b56945dh
+dd 038343c7bh
+dd 0926d65f8h
+dd 00f742ebbh
+dd 0e9d11939h
+dd 01997e54ah
+dd 08ec38498h
+dd 0f3c833abh
+dd 01ee16f2bh
+dd 0e18f91bbh
+dd 0df9db878h
+dd 05a26ff28h
+dd 02fe41b8dh
+dd 01f52aec7h
+dd 0631a0259h
+dd 0b0b2fec8h
+dd 04db8adf4h
+dd 0add02716h
+dd 0b9542fdfh
+dd 08c37346ch
+dd 0685a9019h
+dd 04ab71a75h
+dd 0b334c84ah
+dd 0a0a88204h
+dd 07e72a53fh
+dd 0e6567ec6h
+dd 062faa7e9h
+dd 04b628c13h
+dd 02194fa8ch
+dd 08ae57b77h
+dd 09c4a7ea7h
+dd 0c6807831h
+dd 0ecdb4a78h
+dd 024f64af2h
+dd 0cf147bcah
+dd 03aca3307h
+dd 02bfaf84dh
+dd 097de37e7h
+dd 028ad2182h
+dd 067853112h
+dd 0b5d14311h
+dd 0965e786dh
+dd 06f70b496h
+dd 0944ab562h
+dd 0f4c8c32ch
+dd 0ba9c50f4h
+dd 038183b01h
+dd 08fc230ebh
+dd 078e4dcafh
+dd 0e2b979b0h
+dd 055e2fdf7h
+dd 068e69d36h
+dd 0b3acea51h
+dd 0b157481ah
+dd 0995715dch
+dd 0b52b3114h
+dd 01556e988h
+dd 03ca0ae3bh
+dd 0b7f151dah
+dd 097c8a92bh
+dd 060b2ac02h
+dd 02966d145h
+dd 05c12f469h
+dd 07fd614b8h
+dd 0db1f37d9h
+dd 01695be2ah
+dd 0a54743cbh
+dd 06dfa9984h
+dd 0af5c8d54h
+dd 0a8a9aeeah
+dd 03e0d05d2h
+dd 097d0ffe7h
+dd 0c5dd4313h
+dd 00436062ch
+dd 0590486d4h
+dd 0587e7de9h
+dd 04995032bh
+dd 032bb9a7fh
+dd 09ee49aceh
+dd 0c82b9f6ah
+dd 0746e2cf4h
+dd 0a344cca2h
+dd 059ee86a5h
+dd 0f1af6894h
+dd 0449faa9bh
+dd 047fa72c6h
+dd 08d89af81h
+dd 047072ebeh
+dd 06cec6825h
+dd 00879295ah
+dd 0845aa4a3h
+dd 0c8b0e786h
+dd 0d053d625h
+dd 024d91d2eh
+dd 01d40b8b8h
+dd 0112a13b6h
+dd 0890a3863h
+dd 09c7a4570h
+dd 03c349955h
+dd 0fc6ee5dfh
+dd 009c64773h
+dd 04b25a0d2h
+dd 0f8efb9ddh
+dd 01298f82fh
+dd 04c0bfbc3h
+dd 06db5bcaah
+dd 0d767a18eh
+dd 081af5830h
+dd 04739c190h
+dd 0bc66d0d2h
+dd 0c2a78791h
+dd 0c74b3feah
+dd 00c8f55deh
+dd 0c2873355h
+dd 090ae52feh
+dd 0c9dfe955h
+dd 0a9760c28h
+dd 0bb9f0222h
+dd 0b6ec5d69h
+dd 0cb56e137h
+dd 0d0d86c63h
+dd 0a1354731h
+dd 01ec3976bh
+dd 035da9059h
+dd 0e31062a3h
+dd 046a81a73h
+dd 091459f3eh
+dd 08319311ch
+dd 014ca051bh
+dd 0ce6663d2h
+dd 0c68f1035h
+dd 06ac0c76eh
+dd 0ce9e47e5h
+dd 01a43daabh
+dd 0b9a376e8h
+dd 054ec0673h
+dd 0d7dbc28ah
+dd 0925602b6h
+dd 09182e060h
+dd 071572dbdh
+dd 08bc063aeh
+dd 0d0597fb5h
+dd 0d2a4b7a0h
+dd 0455597a1h
+dd 0ff6f24d4h
+dd 0e7c341b5h
+dd 0759f5780h
+dd 0a59b0f35h
+dd 09cfd67c1h
+dd 0373b75a4h
+dd 0a2324461h
+dd 025522a8ch
+dd 08d40cbcah
+dd 049b192c6h
+dd 0e319eb44h
+dd 04a67369eh
+dd 0a5e32142h
+dd 0807984c8h
+dd 0e78b1822h
+dd 0db543b9fh
+dd 0a9b330cah
+dd 06c02234fh
+dd 0dd63c51ah
+dd 0be9def0ch
+dd 0e45917deh
+dd 044aca188h
+dd 0d09e24dbh
+dd 02827cfcch
+dd 0cd9549c5h
+dd 055f51014h
+dd 03c538ae6h
+dd 0b7c463bfh
+dd 0130c8953h
+dd 0a3961650h
+dd 074566909h
+dd 0625e6749h
+dd 0ac9f85d5h
+dd 074aadf62h
+dd 08f7e83c2h
+dd 0bdd69356h
+dd 0f77d4b6ch
+dd 014346719h
+dd 0f6236543h
+dd 0a46f47d7h
+dd 0aa3d121ch
+dd 08d4160f1h
+dd 0e0c722b0h
+dd 0ef8d79a0h
+dd 0edae8a90h
+dd 0d00c42abh
+dd 0a2832bb4h
+dd 057929b77h
+dd 0fddad08bh
+dd 0c88c0817h
+dd 0577f70e5h
+dd 037cb957eh
+dd 0fe75092fh
+dd 07196c6f6h
+dd 0c82adb9ah
+dd 0f6ad4497h
+dd 0b4594f53h
+dd 04c6a1270h
+dd 02fc54d09h
+dd 001ca1bebh
+dd 02b873984h
+dd 09323eba9h
+dd 0e66e4693h
+dd 051a7effah
+dd 0bc787540h
+dd 0f39566f9h
+dd 06c91e8ech
+dd 0be5e5590h
+dd 0e8b5bbd4h
+dd 028031e52h
+dd 0447a3e73h
+dd 025d1386bh
+dd 0f6c478afh
+dd 0778ea602h
+dd 008deb3f0h
+dd 0a755706bh
+dd 09dc873e1h
+dd 0e802d5f8h
+dd 02a72f80ah
+dd 0c7d7b50ch
+dd 04334fd67h
+dd 0f6e1ecc3h
+dd 06a47e3d1h
+dd 09eb6516ch
+dd 001674d1eh
+dd 0d89e0bd3h
+dd 0cfb2e0cah
+dd 0cf077a10h
+dd 0e85f999eh
+dd 09e9abe96h
+dd 08ca47996h
+dd 0fd43e956h
+dd 0a2eb4058h
+dd 0e8723190h
+dd 048780e03h
+dd 03c0baa01h
+dd 093ee3034h
+dd 0674e07d9h
+dd 07cda76bah
+dd 08a1f65ach
+dd 00f637647h
+dd 0e6c35c33h
+dd 001a596f1h
+dd 0abd54639h
+dd 09b212195h
+dd 023b9c1d5h
+dd 00d868aeah
+dd 0e3d88cb6h
+dd 095e12f42h
+dd 0168122eeh
+dd 07cc03579h
+dd 0a877a7f9h
+dd 0115fbb5eh
+dd 05cf89acah
+dd 06a10ed2ch
+dd 0e2469783h
+dd 009a178b2h
+dd 084c60ad8h
+dd 092dc50adh
+dd 0fc0613cbh
+dd 03b95b503h
+dd 0379073a1h
+dd 0a5ecd2b3h
+dd 0857c17a2h
+dd 01e941d33h
+dd 0f160d707h
+dd 055e691afh
+dd 0689c8537h
+dd 0e73f3fa9h
+dd 0270c8cfdh
+dd 02672aafbh
+dd 091b6ebf9h
+dd 0ba978f37h
+dd 08a11f7bfh
+dd 0dddddce2h
+dd 0c631cbbbh
+dd 0d0390c69h
+dd 084b77da8h
+dd 0e3f7e871h
+dd 021ca3060h
+dd 0fd520e4ah
+dd 07d50fbfbh
+dd 08cf82b16h
+dd 0c44126aah
+dd 0b8c9f98dh
+dd 098622623h
+dd 0dd9dc4c3h
+dd 0f8af85d2h
+dd 0d67d863bh
+dd 0a13be80bh
+dd 07c794a0fh
+dd 0374d931ch
+dd 024cb0f0eh
+dd 0bbd4a4a0h
+dd 080e1c9a4h
+dd 02213151fh
+dd 0e0bcb944h
+dd 093eb7f04h
+dd 08acf053eh
+dd 089e4b3a9h
+dd 055daf043h
+dd 0e2dbcd6fh
+dd 03a6202a4h
+dd 0f4d28a5ch
+dd 0fb52eaf7h
+dd 0504ba13dh
+dd 0bd4988bfh
+dd 040a45cb4h
+dd 091d69328h
+dd 021eed8f6h
+dd 025cfc09dh
+dd 05ae76bfah
+dd 09e2127ebh
+dd 0840b169bh
+dd 084d36718h
+dd 0156f535bh
+dd 07ee9c9dah
+dd 09301291dh
+dd 0934a3d68h
+dd 02d9e444ch
+dd 01bdc3e49h
+dd 0aaa3e38ah
+dd 051ca493ah
+dd 0651c75d6h
+dd 016f94e17h
+dd 01d8e1194h
+dd 0ebadc60bh
+dd 0cdb0c449h
+dd 064856604h
+dd 0399fe3c9h
+dd 055759019h
+dd 00ecb2003h
+dd 0db43a632h
+dd 0c5eda94bh
+dd 0eeaf11ceh
+dd 05cc471ceh
+dd 007c7e0ebh
+dd 03fd2d148h
+dd 0fb4c70b2h
+dd 0ba7cb994h
+dd 0b44c93aah
+dd 0f35b377eh
+dd 0b7879f7ch
+dd 026bd4eb3h
+dd 05558edb1h
+dd 03f8d45ddh
+dd 0d01b07cfh
+dd 08c180432h
+dd 0b0594974h
+dd 04807eb20h
+dd 03732861bh
+dd 04aad6fc3h
+dd 0576802deh
+dd 0b278c274h
+dd 09e74e07bh
+dd 0dc9518d6h
+dd 0a2559350h
+dd 0090c89abh
+dd 012f40e21h
+dd 0f37846aeh
+dd 03baf0536h
+dd 078b311c1h
+dd 03e17f081h
+dd 0e91ac64ah
+dd 0d3bbfe2eh
+dd 0b0558aech
+dd 0dbad605ch
+dd 0a77fab19h
+dd 0abb05bbfh
+dd 02bdb557bh
+dd 0b0b546a2h
+dd 0ad9c7370h
+dd 00ccabc20h
+dd 0a3982a15h
+dd 072a8adb1h
+dd 0eb01a4f3h
+dd 081b469b1h
+dd 032e62410h
+dd 08aec85b2h
+dd 038bcf742h
+dd 06592cee6h
+dd 0a119ce05h
+dd 0ec529ef8h
+dd 037f3d62dh
+dd 0860eb381h
+dd 00dc89a45h
+dd 049fd83fah
+dd 0eb36bac0h
+dd 0908cafaeh
+dd 0ec1e62abh
+dd 098e94ee9h
+dd 0973a690fh
+dd 09e589a5dh
+dd 0a6799e43h
+dd 02da25e56h
+dd 090e0d860h
+dd 04f2821a0h
+dd 0ab8ed54dh
+dd 00ce8cb35h
+dd 0b8676c38h
+dd 041ff60b2h
+dd 0c285269bh
+dd 0863dc337h
+dd 0272b922bh
+dd 0d219eb1ah
+dd 0433c509dh
+dd 0e26cff0fh
+dd 03b3900f4h
+dd 01b80be70h
+dd 02e13fb8ch
+dd 0c68117bbh
+dd 0e280afbeh
+dd 0c7645a2ah
+dd 0bb7e2cc0h
+dd 07b0c878fh
+dd 0e5ccfe6bh
+dd 08351888dh
+dd 06a1b2c4fh
+dd 00a6c3e0ah
+dd 0d87ad1b7h
+dd 0b03b597dh
+dd 0a20ee0b1h
+dd 0e03d558dh
+dd 0c5f8ec07h
+dd 0fd3a0cdeh
+dd 0a093f140h
+dd 099010377h
+dd 0a0468045h
+dd 0d97cb621h
+dd 03bf86e83h
+dd 080355653h
+dd 0c3cbda4eh
+dd 010d46312h
+dd 04270212bh
+dd 060d83a4eh
+dd 0cc7615d5h
+dd 0f7a84b71h
+dd 02c102ee0h
+dd 0fc7087b3h
+dd 0260f2734h
+dd 0c059aae7h
+dd 01c46a317h
+dd 0807966e6h
+dd 074d05e9dh
+dd 0daf26841h
+dd 0f8fcfedeh
+dd 01c03b3c6h
+dd 0f0d4c427h
+dd 0bee5515eh
+dd 01cb80cf9h
+dd 07c3fff26h
+dd 0195dc2abh
+dd 087565ed6h
+dd 09529eea5h
+dd 0b145e5c4h
+dd 0b9fa8401h
+dd 095434fa4h
+dd 0daf6ae2ah
+dd 0a082a633h
+dd 04d8a875fh
+dd 04e8a800bh
+dd 0e19054b9h
+dd 002394b4eh
+dd 0075481a1h
+dd 0f8d46937h
+dd 038399481h
+dd 0d2448b0dh
+dd 01403c989h
+dd 0b3e279b7h
+dd 09aa2cf1ah
+dd 0e24de53eh
+dd 050843c20h
+dd 0da24bffdh
+dd 01bc99b8bh
+dd 00657a241h
+dd 0a3749babh
+dd 0a3a6ea6fh
+dd 016c450edh
+dd 08924ca5dh
+dd 0018dd5f9h
+dd 003296857h
+dd 05c3351d9h
+dd 0f223a355h
+dd 04b0cc1e6h
+dd 065a28309h
+dd 0fa7edf50h
+dd 079b050c5h
+dd 0e50c671eh
+dd 08e1374cah
+dd 01811e0a7h
+dd 0e3d21c4dh
+dd 0d7733bcdh
+dd 001d5c0c5h
+dd 069b256ddh
+dd 017f26bbch
+dd 0e94e09a3h
+dd 0216e4e79h
+dd 0dffd97c0h
+dd 0701b1a19h
+dd 0455ca4e6h
+dd 09e89a147h
+dd 0555afe29h
+dd 014ab88afh
+dd 0c0be050ah
+dd 06170c905h
+dd 0a354760bh
+dd 0b757b3fch
+dd 0ec7e6531h
+dd 041edaeb5h
+dd 05ea40ec7h
+dd 0af756009h
+dd 0886b23f5h
+dd 00c312963h
+dd 051afbde1h
+dd 0d0539056h
+dd 0d0fc7976h
+dd 0460dc704h
+dd 066d5e2cch
+dd 0c7e81603h
+dd 09cdf1c39h
+dd 0035b0447h
+dd 0f0bf63ach
+dd 0e9dd7b1ah
+dd 0bf25a7a5h
+dd 0e951c16dh
+dd 0f43d2af0h
+dd 049c601fbh
+dd 02f0e69a6h
+dd 0dfa561d5h
+dd 039fc0ebeh
+dd 0d67d5fd3h
+dd 0122ebeddh
+dd 03738408fh
+dd 016e1921ch
+dd 0deec471bh
+dd 05d5dd7abh
+dd 0a3c5393bh
+dd 0e2818abch
+dd 0efaeea5bh
+dd 08df20612h
+dd 02e85a17ah
+dd 0f29eeb96h
+dd 07b1a9130h
+dd 0f982edc1h
+dd 0efdc4009h
+dd 02421c607h
+dd 0a537c41eh
+dd 09e0a8e68h
+dd 0a25268c2h
+dd 05a98bb01h
+dd 0269a4255h
+dd 09d320bc9h
+dd 04f5818f6h
+dd 09dfbd41eh
+dd 0315260feh
+dd 0d31008c2h
+dd 0bc6bf67ch
+dd 08410f1adh
+dd 0e97c6980h
+dd 0b6573447h
+dd 019e662d1h
+dd 0782b454eh
+dd 0dddb9dd3h
+dd 03adb9185h
+dd 0e7b825b2h
+dd 0e9558820h
+dd 0f060a8efh
+dd 087e996ddh
+dd 0f18f4a07h
+dd 0b105f51ch
+dd 0d5b7d778h
+dd 029ccd18ch
+dd 0c3f525aeh
+dd 06001db4fh
+dd 03ef0cec4h
+dd 004579c9ah
+dd 0852d0347h
+dd 05fb68634h
+dd 015b5ecd3h
+dd 0e487bd58h
+dd 021f408a4h
+dd 0467e57cah
+dd 0df21e9a5h
+dd 0a15a295ah
+dd 01f573fe5h
+dd 0d49d3fc0h
+dd 0c4a0d6f1h
+dd 0e1161071h
+dd 099590d30h
+dd 0f2ee21c3h
+dd 0949e6696h
+dd 0c6f82529h
+dd 0536409f7h
+dd 00214d265h
+dd 0ab62746fh
+dd 086e96e82h
+dd 06c6004fdh
+dd 046d25455h
+dd 0cf8bd9b3h
+dd 0629d7e23h
+dd 072412282h
+dd 07d60ea35h
+dd 0ebbb4281h
+dd 0dddd0ecbh
+dd 03b23a9c0h
+dd 05a09be64h
+dd 0859eb3f8h
+dd 0290b2ddeh
+dd 0a1d7e269h
+dd 056f13767h
+dd 04f0d5ef8h
+dd 0fbef94c1h
+dd 0038c01edh
+dd 008193a87h
+dd 0a85dfaa4h
+dd 02f81ebf6h
+dd 09c81e404h
+dd 09ba189d1h
+dd 099446994h
+dd 0155254d0h
+dd 0e8621f37h
+dd 0dede0822h
+dd 0adf349cbh
+dd 0ac542619h
+dd 0491f6cf3h
+dd 0c4f03aebh
+dd 00ad2bf54h
+dd 0aa856fb8h
+dd 05d43943dh
+dd 0eda1a931h
+dd 020062bd0h
+dd 044bc440bh
+dd 01f1a86b4h
+dd 0845260b4h
+dd 072e4831ch
+dd 0707e5d05h
+dd 054b97b71h
+dd 0bde8d844h
+dd 05df79abdh
+dd 0e38d8d06h
+dd 0ad735be2h
+dd 0603cf28dh
+dd 09bca5040h
+dd 0d700c086h
+dd 08de9a967h
+dd 033b87b43h
+dd 015a06ce2h
+dd 01b3753cch
+dd 04c2acea0h
+dd 020c2bf83h
+dd 00e5292c3h
+dd 016f3d738h
+dd 05c950148h
+dd 06e08bdceh
+dd 0eb8e3b6ah
+dd 02a3bd683h
+dd 0406151cfh
+dd 08a640d3fh
+dd 0572cb658h
+dd 0fabff37eh
+dd 0286697a6h
+dd 0555c3a8fh
+dd 0a3baa342h
+dd 0239cebedh
+dd 08cc877b4h
+dd 0bcc7d763h
+dd 0260edd2bh
+dd 021987bfeh
+dd 08159fe31h
+dd 0a82554dbh
+dd 0c4b316c7h
+dd 097156f0ah
+dd 007a0a834h
+dd 04f61b036h
+dd 056c86283h
+dd 0b9520f5eh
+dd 0d7b49893h
+dd 00f59c5c5h
+dd 0db5df54ah
+dd 05892c51eh
+dd 0f62202afh
+dd 06c7b2ccch
+dd 0813041f0h
+dd 0cd5bc11ah
+dd 0a809bff0h
+dd 0c03bd2bdh
+dd 07fd75ed7h
+dd 01e6a1c55h
+dd 048ca8053h
+dd 0440af3f5h
+dd 013ffec88h
+dd 00c13f8a5h
+dd 0c00db67ch
+dd 0a16bb29eh
+dd 06830883fh
+dd 0a3b954d9h
+dd 0307ac895h
+dd 0680cccefh
+dd 0807033f7h
+dd 03723b11eh
+dd 07f5a5c12h
+dd 0e6fea025h
+dd 0474a9a43h
+dd 0fa17ac02h
+dd 0531e585dh
+dd 0bed7b9afh
+dd 0be9e4f91h
+dd 0e8c4f582h
+dd 08a83297dh
+dd 0acc3d6e8h
+dd 016f89211h
+dd 05112fadbh
+dd 0afef9d23h
+dd 0d0484a8dh
+dd 0a7f58ba4h
+dd 0d24971aeh
+dd 06890349ch
+dd 0c3f6e1e7h
+dd 03a77288ch
+dd 06e6241d4h
+dd 096d7fb81h
+dd 0c0d89735h
+dd 0ef9ef3b8h
+dd 0c740fabah
+dd 0a93ae5e4h
+dd 026c878b6h
+dd 0f42fc81ah
+dd 0bba07f9eh
+dd 05925bbe8h
+dd 0964e4e06h
+dd 00ff1e6b0h
+dd 03deee09ah
+dd 0420b9b7dh
+dd 0dfc5d1adh
+dd 0a0f895f0h
+dd 0ae72f130h
+dd 0f6ddca61h
+dd 03297e84ch
+dd 0549b0906h
+dd 0e7661201h
+dd 0ea6cc7beh
+dd 0f2d2f8f7h
+dd 01b7fbbdfh
+dd 0f73b00bbh
+dd 077365d42h
+dd 0c838effdh
+dd 0404bbeadh
+dd 0c2534763h
+dd 08ce83ae5h
+dd 08cdc1417h
+dd 035dd88b7h
+dd 00efaafcbh
+dd 0caa6bdffh
+dd 0c61cf9e1h
+dd 01a122df9h
+dd 07502269ah
+dd 0cac1b245h
+dd 0b6087a70h
+dd 006b18d2ah
+dd 09468dfa7h
+dd 0519718e7h
+dd 0b0596220h
+dd 0eadf37deh
+dd 0bece68e4h
+dd 074d77624h
+dd 09ff08716h
+dd 020af062ch
+dd 02d74fa60h
+dd 055a3ac81h
+dd 0a18a88efh
+dd 0887c84c1h
+dd 060610332h
+dd 0b579a729h
+dd 030e8d947h
+dd 05f3df8b9h
+dd 01be6a43fh
+dd 001498f03h
+dd 0604b80dah
+dd 0ff9f1c23h
+dd 07b517080h
+dd 0706c4e2ah
+dd 09af88594h
+dd 032f8577bh
+dd 0cdd4920dh
+dd 0ba0eaa04h
+dd 09ac4f5dch
+dd 02e773a3bh
+dd 0032edfe9h
+dd 0398b37deh
+dd 009bfdf3bh
+dd 0df9007a6h
+dd 0c02688ddh
+dd 01db4e33dh
+dd 0bcf5c368h
+dd 0d493f0d6h
+dd 0c042bd41h
+dd 0ba9182c6h
+dd 02546f912h
+dd 053a75caeh
+dd 09d91bd0ah
+dd 03c4d8bf4h
+dd 02ac8c057h
+dd 0cb54a45bh
+dd 0ff945aceh
+dd 047ab3caeh
+dd 02338a34ah
+dd 0e8fffa1ah
+dd 0c636417dh
+dd 09483e22bh
+dd 0ee0276fbh
+dd 00013eb39h
+dd 068ae2bd1h
+dd 0c0a0b7e4h
+dd 0064cf994h
+dd 082bf8a04h
+dd 035e4b34eh
+dd 0bf7ad06fh
+dd 06c6371d4h
+dd 09f296c5ch
+dd 0439e2a70h
+dd 08f3539f2h
+dd 09835dc82h
+dd 02b576ac7h
+dd 01178b448h
+dd 0d892e51dh
+dd 0a6648a25h
+dd 01cd8619bh
+dd 00f9c4ff4h
+dd 037357b73h
+dd 0f8eee0c6h
+dd 091fe9e16h
+dd 0a3c94c83h
+dd 01726d467h
+dd 09c94dfa3h
+dd 0f301462eh
+dd 029076321h
+dd 04c8ab67bh
+dd 04796487eh
+dd 0b37991fah
+dd 0078758f2h
+dd 0dbeedd4fh
+dd 02d611f7ah
+dd 0d08757b5h
+dd 00115eeafh
+dd 0c6b9e7b3h
+dd 09e4c80bah
+dd 0e095aed4h
+dd 06d4f52ach
+dd 04f91cf58h
+dd 09dbd57e0h
+dd 07f90acf3h
+dd 0326d3ab0h
+dd 08c786022h
+dd 055a5aa4ch
+dd 0f0a34c98h
+dd 047f72921h
+dd 0348ed6c8h
+dd 079817ca8h
+dd 02b4180a4h
+dd 0825de163h
+dd 0dfe3cb41h
+dd 0d2761adfh
+dd 0de1c0cc6h
+dd 02cf24876h
+dd 011fcd4ach
+dd 04fd0b906h
+dd 0ed161c99h
+dd 07f7c41cbh
+dd 04b609c47h
+dd 0c5e28255h
+dd 0e7c0f940h
+dd 0be13d6c2h
+dd 0be766c13h
+dd 0bb80e791h
+dd 01bd06320h
+dd 08cd6e5c4h
+dd 036f46268h
+dd 0a24465a5h
+dd 0832a025dh
+dd 0d03523f7h
+dd 05090e885h
+dd 016633089h
+dd 0bb14051fh
+dd 0bb0f08a5h
+dd 0e469732ah
+dd 03dafc3eah
+dd 0a50776cah
+dd 09a3d745ch
+dd 08c72fe7fh
+dd 02fb08f9eh
+dd 0b4eac5a0h
+dd 02877ab0fh
+dd 09158b94ch
+dd 096d5792eh
+dd 065cc8c01h
+dd 00ff6580bh
+dd 029b6a22ch
+dd 089a56e04h
+dd 0b7ac303bh
+dd 0bc3fa08bh
+dd 0b61925f2h
+dd 0212fb78ch
+dd 089ee2d20h
+dd 0210dd0f9h
+dd 0076dc92eh
+dd 01bc5834bh
+dd 0cc32fea9h
+dd 067928f1dh
+dd 0842a431ah
+dd 06838826dh
+dd 01d1f91c7h
+dd 051bb21cbh
+dd 0f156243ch
+dd 00d39031ah
+dd 057290525h
+dd 0366d6120h
+dd 03851b84fh
+dd 0209ed6cdh
+dd 04b85b742h
+dd 068468e15h
+dd 00e770363h
+dd 04d6ce296h
+dd 0a527b571h
+dd 01d9d3111h
+dd 087f2756dh
+dd 0af9eba1dh
+dd 0e8fcd4cch
+dd 0a1cfd9f5h
+dd 01d8ffde9h
+dd 03431f4b6h
+dd 0abbb4c2dh
+dd 0a3d40413h
+dd 07a97057ah
+dd 06fbf73e7h
+dd 040a5ba30h
+dd 0da04f261h
+dd 0baaaa5c5h
+dd 0487e95b9h
+dd 0f3da6232h
+dd 064145178h
+dd 0324eb02ah
+dd 0b6969dc8h
+dd 013692414h
+dd 0c96f834bh
+dd 0054f0ff5h
+dd 01c222dffh
+dd 0bf1b4ac1h
+dd 091455ee0h
+dd 0a17ac5f4h
+dd 0796b5d93h
+dd 06dec7808h
+dd 0d93745dfh
+dd 047fb828ah
+dd 009da1065h
+dd 071a4a237h
+dd 0323f6f21h
+dd 053c3ba40h
+dd 0f03d27bdh
+dd 0793ea592h
+dd 015c3e154h
+dd 0f09e4f49h
+dd 046a206f2h
+dd 059ed36b5h
+dd 0acd890bdh
+dd 0db65cde7h
+dd 070ae2815h
+dd 0eab399a9h
+dd 0b91636fch
+dd 0b80f6bf2h
+dd 0e9f2260dh
+dd 0f3eb44bfh
+dd 0fd860d69h
+dd 06825a2bfh
+dd 070820c76h
+dd 0140a1eb5h
+dd 01e319d3fh
+dd 0128384ach
+dd 0991410fch
+dd 0a4e23f55h
+dd 03e0f6b6ah
+dd 07908976fh
+dd 0351ee82bh
+dd 040ac4461h
+dd 0ea511450h
+dd 041a48a26h
+dd 04f12cfc6h
+dd 04004f96bh
+dd 07c58fa08h
+dd 04ef04bc0h
+dd 03ab0bf25h
+dd 0dbf64137h
+dd 032282426h
+dd 0f071f05bh
+dd 0b963648dh
+dd 03c500e50h
+dd 0ce68941ah
+dd 08fd1235dh
+dd 03c16f8f2h
+dd 09f517e0dh
+dd 0d1edf098h
+dd 07da912ddh
+dd 02de239bah
+dd 0e2ac1cc9h
+dd 0984620b2h
+dd 02da4ea87h
+dd 0dccf6879h
+dd 076882ae3h
+dd 03a329967h
+dd 0f32ef25dh
+dd 0d7df74a6h
+dd 0cb1761b4h
+dd 096a99482h
+dd 0173b7dach
+dd 0d66dc030h
+dd 09475823bh
+dd 00a77d81ch
+dd 020326d02h
+dd 007e8efb9h
+dd 0ad3bd7b3h
+dd 08f8fc768h
+dd 0ea138a8fh
+dd 09095fb1fh
+dd 06fef9ce9h
+dd 03d12cd03h
+dd 040b81bfbh
+dd 0517df3afh
+dd 061519b19h
+dd 0563d2c84h
+dd 0a03a1ef3h
+dd 06ed38e21h
+dd 0f8d3bb16h
+dd 088603a73h
+dd 040425cedh
+dd 0f94dac29h
+dd 020567665h
+dd 0d8af4516h
+dd 0a21aafb9h
+dd 0b0a6d3dah
+dd 0567b00a1h
+dd 029a509e7h
+dd 080d8a751h
+dd 0d72c8ae5h
+dd 05a91c179h
+dd 085f83df6h
+dd 0f97be883h
+dd 08e81e333h
+dd 036013c3eh
+dd 0da84b659h
+dd 0d42836c0h
+dd 09f223efch
+dd 00eb3fd67h
+dd 0c5e765e9h
+dd 0202326cdh
+dd 0a9701c17h
+dd 07185d685h
+dd 06ad7a41dh
+dd 0d354e859h
+dd 0bd288413h
+dd 076e70408h
+dd 01e128e94h
+dd 0d9d30c41h
+dd 0a33448dch
+dd 0107faaech
+dd 0a393296dh
+dd 03d8417feh
+dd 023c68e51h
+dd 0f1f7c370h
+dd 0b8098d41h
+dd 0f62b2704h
+dd 0c65a6fbbh
+dd 0b53b9986h
+dd 0b6af28aeh
+dd 0a21bfa1ah
+dd 0371923f1h
+dd 056889c59h
+dd 0af85eb47h
+dd 0600cdf6ch
+dd 0ee9880c0h
+dd 047aa6ea2h
+dd 03cadceabh
+dd 0a967e572h
+dd 049601954h
+dd 024d32e50h
+dd 0c173872ch
+dd 085a009b1h
+dd 04755a2e8h
+dd 0a0683fe1h
+dd 031b6ce08h
+dd 03f1b4c02h
+dd 0831b70b1h
+dd 00a2a60e3h
+dd 02b099d2dh
+dd 00b96f955h
+dd 077b7ae1eh
+dd 09d2b42cbh
+dd 05b4e4815h
+dd 0e50a043bh
+dd 07dc35168h
+dd 012e099beh
+dd 0321c73dfh
+dd 0c2dda4f2h
+dd 0b1a7184fh
+dd 071d544f2h
+dd 00338a120h
+dd 00e7bf7cfh
+dd 0bac0326ah
+dd 0c196b96dh
+dd 0a1dbb383h
+dd 09eb68702h
+dd 0232113c8h
+dd 06611f51ch
+dd 0684ee5eah
+dd 0a874c964h
+dd 07bdd6a4dh
+dd 0c37ba858h
+dd 0a99907a7h
+dd 0f65e57d6h
+dd 05fbe679ch
+dd 0f2e765e5h
+dd 0112d606ch
+dd 02b33a247h
+dd 0c0a7e358h
+dd 09245b04bh
+dd 01e3399b8h
+dd 0631b6928h
+dd 004b3a535h
+dd 084860e59h
+dd 023ce8b39h
+dd 0a7d1e5a6h
+dd 0451094beh
+dd 0c7a14882h
+dd 0b3f0f0e2h
+dd 0f9aced8fh
+dd 0a02f41e9h
+dd 08903ddfch
+dd 09acaad0ah
+dd 0a5fa2e59h
+dd 0caf7325bh
+dd 0b21b3359h
+dd 0b1de3e8ch
+dd 0ad147d32h
+dd 0dee06eafh
+dd 0625301bah
+dd 0772a1e33h
+dd 0709b75d0h
+dd 0521d0ed8h
+dd 091b7248fh
+dd 0bf5a7ba7h
+dd 013bbc00dh
+dd 01386d222h
+dd 00eac79f5h
+dd 052028ffbh
+dd 0dfe47370h
+dd 005aaa428h
+dd 0375e667eh
+dd 02e685984h
+dd 04407ce17h
+dd 09754c155h
+dd 0ed06d5f0h
+dd 00f2e40e4h
+dd 0364b96ebh
+dd 0facdf8adh
+dd 0b208e451h
+dd 0751f8fach
+dd 0ab7eda21h
+dd 0a684bed8h
+dd 07fde89b8h
+dd 0baccb7a3h
+dd 06f09922eh
+dd 041a7de51h
+dd 0b7b6c84bh
+dd 0161e9d50h
+dd 0d28016a5h
+dd 067065794h
+dd 003525fach
+dd 0a5456891h
+dd 062412b1eh
+dd 0f15bf539h
+dd 0154c3c90h
+dd 08e145309h
+dd 00ed0ebe0h
+dd 0df9f65cbh
+dd 0234657d3h
+dd 0cfe3974dh
+dd 01eb6f449h
+dd 063700044h
+dd 03724a320h
+dd 033de5d7ch
+dd 0df45718ch
+dd 0046bb89dh
+dd 00cdcb619h
+dd 0066dae18h
+dd 0471ce1a7h
+dd 04bd460bfh
+dd 05b0b67f8h
+dd 061e3e8e9h
+dd 0d792ea6bh
+dd 0f3fbb5ddh
+dd 06a3a49feh
+dd 0ca0e01e0h
+dd 0e9582547h
+dd 0888243d3h
+dd 000f8df67h
+dd 0bc9ef9dch
+dd 060e45085h
+dd 0f24bf7d4h
+dd 0bf01d89ch
+dd 0c4fca569h
+dd 0390aca70h
+dd 06b15a28ch
+dd 01f453d7ch
+dd 0c8cd8c68h
+dd 025e56fcfh
+dd 0e67697c3h
+dd 09f26712dh
+dd 02d00ac9bh
+dd 077d54bdbh
+dd 0ad71ffaah
+dd 0ee80a899h
+dd 01379e7c4h
+dd 0a4de584fh
+dd 03c5bd3b0h
+dd 0d65cddb7h
+dd 0e0888f36h
+dd 09734151ah
+dd 06a681aa6h
+dd 0c09fb2b4h
+dd 0885160a2h
+dd 04806bcf1h
+dd 0bd7cadb2h
+dd 0142f58ach
+dd 0c0bab3dfh
+dd 0f3d59f07h
+dd 0e56e33fbh
+dd 0ac7ad1dbh
+dd 03da55d5ch
+dd 09ed6d589h
+dd 0c01f4507h
+dd 04ceef353h
+dd 0cc081efdh
+dd 002a746cfh
+dd 036e4b4e9h
+dd 0983de125h
+dd 0ab739a80h
+dd 0945eb207h
+dd 0395784d5h
+dd 0f131b17eh
+dd 03cd8e5d3h
+dd 0686aa45fh
+dd 0052b8d17h
+dd 0162fee94h
+dd 00bbec675h
+dd 071627101h
+dd 0a8909735h
+dd 0c4164a75h
+dd 0f5e76ba2h
+dd 02eb098d9h
+dd 007714925h
+dd 03af742b8h
+dd 0a080f634h
+dd 05d308caeh
+dd 09c239b5bh
+dd 09d002b0fh
+dd 0800244feh
+dd 026115d14h
+dd 08b2c106dh
+dd 0b6892b40h
+dd 0400c589ah
+dd 0a900aa91h
+dd 074893da0h
+dd 0a1262a4dh
+dd 002825bb7h
+dd 064076016h
+dd 02ebb1e21h
+dd 0d993bd28h
+dd 0cfd21865h
+dd 008d35b6dh
+dd 0d75e2c38h
+dd 0a30a9ea2h
+dd 03af99cf8h
+dd 016b0a074h
+dd 0f512a63ch
+dd 0f14c0624h
+dd 05d7a7447h
+dd 0dc7529d2h
+dd 01b6e693ch
+dd 05a0a4d0eh
+dd 0a4d11837h
+dd 0a45ecc1fh
+dd 03b0935abh
+dd 0ea0306b5h
+dd 05fc65036h
+dd 0c58e8532h
+dd 004d57da8h
+dd 033587c68h
+dd 042de362ah
+dd 08a86b69ch
+dd 072108de7h
+dd 062b35e67h
+dd 0fc7ce664h
+dd 0b705abcdh
+dd 07632e272h
+dd 05357ddc7h
+dd 0093b9f40h
+dd 07d5893fah
+dd 0ff8ceb99h
+dd 009fcc5b6h
+dd 0a2a299cah
+dd 0e983557fh
+dd 0d25cd52fh
+dd 0d05da638h
+dd 0a2926da1h
+dd 01f026f28h
+dd 0c31916d7h
+dd 0f3611c7dh
+dd 0e97c50f7h
+dd 0ee3e2a6ch
+dd 0aea25310h
+dd 08e253eb6h
+dd 0a435f386h
+dd 0327bb0b5h
+dd 0386a150dh
+dd 012547553h
+dd 0d242a576h
+dd 0855af226h
+dd 0ab8a03fch
+dd 00c6ad9a9h
+dd 08ad07585h
+dd 00c5c8024h
+dd 05006ea39h
+dd 039c5edb2h
+dd 03447f31dh
+dd 0958372f7h
+dd 096017ce1h
+dd 0469a0754h
+dd 037fc525ch
+dd 035d4d209h
+dd 05d8df219h
+dd 01136dc92h
+dd 056a77f4fh
+dd 0f028a119h
+dd 01d3d273eh
+dd 0c90963ffh
+dd 06c21342ch
+dd 084c14cbah
+dd 08cb37388h
+dd 0dbfc84cdh
+dd 0501ede3eh
+dd 074fb6c28h
+dd 048d517efh
+dd 08427e101h
+dd 0cedf6553h
+dd 06d1108e8h
+dd 017619f61h
+dd 0f522a3aah
+dd 08a261ec8h
+dd 005df0383h
+dd 0a3ff51e2h
+dd 08131b486h
+dd 00bb16a1fh
+dd 0738fc460h
+dd 0df99a2f0h
+dd 0351a1f31h
+dd 0d1311bcfh
+dd 054eebb67h
+dd 0232fe24bh
+dd 041b3cbe1h
+dd 0738177ceh
+dd 0d45d5c49h
+dd 067b59725h
+dd 027da1bdah
+dd 089924045h
+dd 0bf90825fh
+dd 014573d9bh
+dd 03e2f735ah
+dd 0755ac79eh
+dd 0aea562a0h
+dd 0096d9b1dh
+dd 063c683a9h
+dd 03b86c10fh
+dd 013c146efh
+dd 0a21765afh
+dd 0a4ca903ah
+dd 00969c3c1h
+dd 09585a616h
+dd 0da5137d8h
+dd 005e165f9h
+dd 08fc0a2f0h
+dd 0cb835aafh
+dd 0a285efb1h
+dd 031a394b9h
+dd 0d278dcd0h
+dd 02a8a27ebh
+dd 05d162ae2h
+dd 09c991f3fh
+dd 0892d7c5bh
+dd 0bdafa9a0h
+dd 04eb22dc4h
+dd 0f49e1c06h
+dd 01bc709bfh
+dd 08c19142eh
+dd 081e16587h
+dd 04d88b66eh
+dd 055e71ba9h
+dd 0e33f208dh
+dd 07456e280h
+dd 038ba390bh
+dd 0bc68cb12h
+dd 05ddcdbf0h
+dd 0ab1b5fb9h
+dd 03c66e77ch
+dd 058c67d22h
+dd 0b7af46cdh
+dd 0c32791afh
+dd 03538a70bh
+dd 0f0233b61h
+dd 0376f9e59h
+dd 03b46e6b5h
+dd 0887c5549h
+dd 002b404b1h
+dd 0666a27d5h
+dd 0dae08ca6h
+dd 09f9e225dh
+dd 006222959h
+dd 0a5181de7h
+dd 043be2736h
+dd 04d1f93a1h
+dd 0642f289bh
+dd 07de329a4h
+dd 01c805429h
+dd 07dfff878h
+dd 07e99d072h
+dd 0103f33b6h
+dd 049aeb09dh
+dd 072699d84h
+dd 0525f10f3h
+dd 0963f4142h
+dd 052c6b2ddh
+dd 0952d8099h
+dd 098f5edeeh
+dd 0665878fdh
+dd 01a7b3ad1h
+dd 0fd595a22h
+dd 076227219h
+dd 0806c019ah
+dd 04e2fd2f4h
+dd 0b99f735ah
+dd 08e48a3bah
+dd 07a3c91cfh
+dd 0655ff07fh
+dd 0e3cf5e0bh
+dd 0dedba786h
+dd 05b25e12dh
+dd 0921adcbah
+dd 0c438bee8h
+dd 0fba23ff1h
+dd 0cd9468d4h
+dd 003958bc4h
+dd 05458718eh
+dd 09afe033ah
+dd 0085b3e01h
+dd 088f4464fh
+dd 01d18277eh
+dd 0589b15ech
+dd 0807b97c4h
+dd 0844745cdh
+dd 04237aabbh
+dd 0a3aa4e12h
+dd 0f94e4166h
+dd 04e4b511eh
+dd 0e6d078e9h
+dd 043c6d846h
+dd 055c816d3h
+dd 0b7d94db8h
+dd 05d462251h
+dd 0ac9dc534h
+dd 04306f1a6h
+dd 049390bd8h
+dd 02d6f5307h
+dd 00ac3bc4fh
+dd 0b6a4a88ah
+dd 0efe52bdch
+dd 0781c3ebch
+dd 0bd1e5dc2h
+dd 0ed9b9196h
+dd 01b9337dbh
+dd 07178076eh
+dd 01bf62bfbh
+dd 04896659ah
+dd 0dca7cdech
+dd 0236be879h
+dd 02983c1f1h
+dd 010058359h
+dd 0dbfedcf1h
+dd 0842b7ddch
+dd 0d1afe741h
+dd 01d02a8ech
+dd 0fbd41273h
+dd 0b5ee457ah
+dd 01e8afcbfh
+dd 0247c4d49h
+dd 0954aa8c2h
+dd 0dd0d0a46h
+dd 0d5db447eh
+dd 0bffd0921h
+dd 0c2746355h
+dd 06cf76b61h
+dd 0b6e73a8bh
+dd 0d1fc2c0eh
+dd 06c0b3765h
+dd 013b9fbf1h
+dd 00976c581h
+dd 0adad2c4ch
+dd 0cca374fch
+dd 0056355c9h
+dd 038484616h
+dd 012fbf75eh
+dd 0f4b90ec9h
+dd 0203a3572h
+dd 0c81ebc46h
+dd 01629b1d3h
+dd 00e5ec451h
+dd 0b2531b06h
+dd 0aa3f201ah
+dd 054305e4eh
+dd 05818ffbah
+dd 0a09853b6h
+dd 0a8ecb4d5h
+dd 04c844956h
+dd 06c6f1c2eh
+dd 03cc528f8h
+dd 0ba659568h
+dd 0181bf176h
+dd 0ae40fd5dh
+dd 0f6ab981dh
+dd 0462c32c9h
+dd 0ad0426a2h
+dd 05bba4027h
+dd 0be85eb99h
+dd 040332ab5h
+dd 0b75fde3fh
+dd 0013a0e5eh
+dd 04593f660h
+dd 03dfdf637h
+dd 06d0084d0h
+dd 02ba6c326h
+dd 06a201b16h
+dd 07e4c222ah
+dd 0605ca493h
+dd 007cecdfah
+dd 058407b2eh
+dd 00ad1793ch
+dd 0c89b93d7h
+dd 00fe3a2bch
+dd 0216c2bf2h
+dd 0e1c503bbh
+dd 051360bf3h
+dd 0f440bb2fh
+dd 0d8c85080h
+dd 045e08386h
+dd 0084d02e6h
+dd 00c0bdc81h
+dd 0e323d98ch
+dd 017f78ddfh
+dd 0f6d6f8b1h
+dd 0469246b0h
+dd 05879ea79h
+dd 07d3d74e3h
+dd 0d3cae183h
+dd 002fda7eah
+dd 0c0eb3a4dh
+dd 051ef63bah
+dd 0cae1cdd5h
+dd 08313df1bh
+dd 0702d46bbh
+dd 06c3777b7h
+dd 0b22d385ah
+dd 0ff4fd4aeh
+dd 093dd0f13h
+dd 023bcd81eh
+dd 097723c1fh
+dd 01592e7f3h
+dd 03901bcaah
+dd 01e5a0050h
+dd 0c782ca55h
+dd 0b88c7758h
+dd 078a4582eh
+dd 00bff4c4ch
+dd 01fa2443ch
+dd 0678d108fh
+dd 0231b2158h
+dd 01a1833d2h
+dd 069b1469eh
+dd 0953a5337h
+dd 0efdfbd33h
+dd 038f97d77h
+dd 039828adah
+dd 0eb2baf45h
+dd 03eb01336h
+dd 0f405aee6h
+dd 0a23037e3h
+dd 0f3df651eh
+dd 0d2a0647ah
+dd 0a53c2779h
+dd 0b5160a58h
+dd 0b5391bc5h
+dd 0e37beacch
+dd 0ffcad929h
+dd 0cf7a37f7h
+dd 04474c20bh
+dd 0a46b8bb6h
+dd 0bbcb5ca7h
+dd 0059ff6dbh
+dd 05201bee8h
+dd 028dc9b56h
+dd 046e7ebb8h
+dd 0798e3943h
+dd 066f5dea7h
+dd 01c1f9ec9h
+dd 0879ce23bh
+dd 0684b4c6eh
+dd 02e7ba3b8h
+dd 09c0f9784h
+dd 0724e8d17h
+dd 06fec72ach
+dd 04de06208h
+dd 06db6cd85h
+dd 0b9fef2d6h
+dd 0c299d210h
+dd 0a1741ad9h
+dd 0bc971683h
+dd 0408203d0h
+dd 006ed9abeh
+dd 008bb08e8h
+dd 0ac2f4649h
+dd 0be2ffb7eh
+dd 0b96e271eh
+dd 0b5973bf8h
+dd 0bbf45437h
+dd 00ccb4944h
+dd 066282acfh
+dd 06d0e8404h
+dd 051659b9dh
+dd 022f7503bh
+dd 04cf1f7d8h
+dd 0f685a69bh
+dd 000ed6bcfh
+dd 024290141h
+dd 0987eb282h
+dd 0e5d64175h
+dd 0cc815bfah
+dd 03749d491h
+dd 0dd7cd246h
+dd 0bf0a5791h
+dd 0971e9e95h
+dd 066dae97eh
+dd 0a58328f8h
+dd 080b3af87h
+dd 08a811c76h
+dd 0ad110818h
+dd 070495d09h
+dd 019ee1d75h
+dd 04682439fh
+dd 042c6a332h
+dd 0984bb3b3h
+dd 0560f45abh
+dd 0fd6f9a53h
+dd 03e5639b3h
+dd 0938c80e8h
+dd 0ef9eadc7h
+dd 0706bc30dh
+dd 049e77812h
+dd 06b043de8h
+dd 021e77d98h
+dd 00de01521h
+dd 0d3ef097ah
+dd 0f1c4568eh
+dd 01b35ded5h
+dd 0c273eb98h
+dd 0b9ebec9bh
+dd 0d99889b1h
+dd 04519e03eh
+dd 016a1ee20h
+dd 05cb56b84h
+dd 0c524f6b7h
+dd 063747b6fh
+dd 0ad86b9cbh
+dd 0413c5c54h
+dd 0bdbf54d7h
+dd 0ec4841fch
+dd 0dc892f31h
+dd 0374389e2h
+dd 05be26778h
+dd 0dfc611ebh
+dd 0ac21b79fh
+dd 02b9643a8h
+dd 0d42f24efh
+dd 06c4bcf6fh
+dd 0518920eah
+dd 06fc821d5h
+dd 0287af608h
+dd 09c9b2007h
+dd 08929e46eh
+dd 0420edc9fh
+dd 0dbb79437h
+dd 08a398a03h
+dd 0b8b439b3h
+dd 01913626dh
+dd 03f719d6bh
+dd 034ff3735h
+dd 0af0bff3fh
+dd 002e3c0a5h
+dd 0daa8df8fh
+dd 04bdede50h
+dd 0b2d08e44h
+dd 05dbf7821h
+dd 04b83dcf7h
+dd 0aaf16297h
+dd 0659b7a08h
+dd 065c93c7fh
+dd 01a011ccdh
+dd 02707634ch
+dd 0c4085975h
+dd 0fd8035e3h
+dd 0640701cah
+dd 0b5597b67h
+dd 0d382d1b3h
+dd 039d7c255h
+dd 0df676f8ch
+dd 058b5f610h
+dd 076ee34f0h
+dd 0e2090054h
+dd 0df3e34e6h
+dd 08e50f295h
+dd 0c9229c2ah
+dd 07ee7425dh
+dd 0236d2182h
+dd 0da67ad10h
+dd 06e7ec78eh
+dd 0b03b8aa8h
+dd 06ddc104eh
+dd 0cf2dfaf3h
+dd 0e753be59h
+dd 0c158f725h
+dd 0f5fe422ch
+dd 0dc5d57bah
+dd 050bf3504h
+dd 087d090d3h
+dd 05902236eh
+dd 064c7e3f7h
+dd 0f46fc152h
+dd 05a10a6f2h
+dd 08f18f031h
+dd 02c58f283h
+dd 01d52732bh
+dd 03203326bh
+dd 099387fcbh
+dd 0d33cf217h
+dd 0d2477dabh
+dd 040135f53h
+dd 017a20e70h
+dd 03bf8f4bch
+dd 07044ea16h
+dd 0f718a676h
+dd 0936e2130h
+dd 0d7cf806eh
+dd 0e56a70cfh
+dd 07d4566d7h
+dd 07713bc0eh
+dd 04909b1dch
+dd 02091672fh
+dd 0dfabc65ch
+dd 0614d7565h
+dd 069ab3d1ah
+dd 08e9b348fh
+dd 03b83bb95h
+dd 080b28855h
+dd 023a90f0fh
+dd 0f50e2521h
+dd 04725bc73h
+dd 0e5ab7dcdh
+dd 07a739547h
+dd 0902eb982h
+dd 0e59d6f89h
+dd 0d7e68aa1h
+dd 0e3fdeffeh
+dd 057056b34h
+dd 08a067cdch
+dd 051ed6e4eh
+dd 0637cf04fh
+dd 045b415ddh
+dd 076868097h
+dd 012094a30h
+dd 05374e07fh
+dd 09945e6b9h
+dd 08d7ba5d7h
+dd 006d54f7fh
+dd 0e4196722h
+dd 0e151c2e6h
+dd 05deea17eh
+dd 087b75160h
+dd 0406e0bb0h
+dd 006dbab6bh
+dd 094c05f72h
+dd 0d2c65ff3h
+dd 03e6c7d4eh
+dd 0f418a7a5h
+dd 0b43ff617h
+dd 01cf19bc3h
+dd 0f9328380h
+dd 08679c0d2h
+dd 00e13bf57h
+dd 06d65f5e1h
+dd 0b6432ab5h
+dd 04557109ah
+dd 04c2cc2afh
+dd 0458a5bebh
+dd 00c3d1539h
+dd 077b4f155h
+dd 05d7d944ah
+dd 0b3e3de83h
+dd 0c1e1d1c3h
+dd 0474ddcc6h
+dd 031a593fbh
+dd 0092900eah
+dd 09e8ae595h
+dd 0ee5344f1h
+dd 08a7ffee7h
+dd 04ebfb76eh
+dd 003da74fdh
+dd 0cf94a9e2h
+dd 01a32c64eh
+dd 0d8a2c427h
+dd 076deecfah
+dd 0bc53bad4h
+dd 0c391b222h
+dd 086d7da32h
+dd 02b17c8edh
+dd 0e5cbf698h
+dd 0c5f90704h
+dd 094783e0eh
+dd 02a56c468h
+dd 0e4db6422h
+dd 0c1458a93h
+dd 028542cb0h
+dd 0318bdf31h
+dd 02392b4efh
+dd 0b3be0aadh
+dd 0a22ce09ch
+dd 0d5e60679h
+dd 0559fbe2fh
+dd 050d4fe3dh
+dd 054589f9ah
+dd 0aa7191a9h
+dd 00f91dddeh
+dd 0bd27773eh
+dd 05fe349bfh
+dd 0595c43fbh
+dd 061a42c87h
+dd 0e5c29396h
+dd 017799f4dh
+dd 04b499bbfh
+dd 0ce95b64ch
+dd 029261cc2h
+dd 0b2b2eaach
+dd 06c68a830h
+dd 0e3859ec0h
+dd 00499cfe3h
+dd 04ddbd039h
+dd 051c4e073h
+dd 03fd6b564h
+dd 0a37777c2h
+dd 08e2d2791h
+dd 0dcb11d51h
+dd 075611a9dh
+dd 0c0837e9ch
+dd 069710360h
+dd 0c648d2e9h
+dd 0104fd054h
+dd 091727899h
+dd 0f542eec3h
+dd 08d6fd2bbh
+dd 04caba07fh
+dd 0107f1e1eh
+dd 0bd040b17h
+dd 092d746dfh
+dd 0a56478b1h
+dd 074102c83h
+dd 080397817h
+dd 0ea754f17h
+dd 041039892h
+dd 0ef43ca7ah
+dd 02d6e1a85h
+dd 0d7fb5da2h
+dd 003ff4cf8h
+dd 063653d8ah
+dd 0c804ff8fh
+dd 0da59c39ah
+dd 045b1a758h
+dd 041e7c157h
+dd 0985a73bch
+dd 099c11b17h
+dd 03742709fh
+dd 072defb1eh
+dd 09189b479h
+dd 0957dd6a7h
+dd 0699786e9h
+dd 0be4d32f6h
+dd 0530a3617h
+dd 004f73121h
+dd 040b8f75ch
+dd 0351e1053h
+dd 0b68b1ce7h
+dd 064fa101ch
+dd 08358aa28h
+dd 077331dc4h
+dd 06a55c3e6h
+dd 0f00c14a5h
+dd 0b624021eh
+dd 0f586beaah
+dd 0f420b500h
+dd 060a56a34h
+dd 0f9aee87dh
+dd 0a0e4192ah
+dd 072272abeh
+dd 0173c6593h
+dd 08c3dc52eh
+dd 033eaa5d0h
+dd 0d76f5e98h
+dd 01c6500d3h
+dd 06715ce72h
+dd 001905516h
+dd 04591456eh
+dd 013c4af2dh
+dd 0cc14f528h
+dd 0949e1b2dh
+dd 070578b79h
+dd 0f87ad23bh
+dd 0e97b43d5h
+dd 032dec10bh
+dd 0438cf583h
+dd 02383964ah
+dd 033f53c87h
+dd 001f5b844h
+dd 0dc31aa8ch
+dd 044129690h
+dd 011587e25h
+dd 04d4c1cfbh
+dd 040f50372h
+dd 0eb94229dh
+dd 096983e53h
+dd 034f20b67h
+dd 00a4ddeefh
+dd 0e046e8ach
+dd 01f42a116h
+dd 0790ea4e6h
+dd 01c860f8bh
+dd 06a41b863h
+dd 06379bc80h
+dd 006cc5b03h
+dd 036863a2fh
+dd 0a8b4de4ah
+dd 0981f7a52h
+dd 065e30a6dh
+dd 093ee30d4h
+dd 0886e4da5h
+dd 05928499eh
+dd 02a5e436dh
+dd 0df36f3f3h
+dd 048fe8987h
+dd 047386804h
+dd 02c0135ebh
+dd 07f783f79h
+dd 098fc4916h
+dd 07ae2aa4dh
+dd 037ef99a8h
+dd 0e374a80ah
+dd 05f9877e8h
+dd 08e167738h
+dd 049afd9bch
+dd 0a0d45b92h
+dd 0a43e65d7h
+dd 0c156731ah
+dd 0bb5ccf53h
+dd 00a663e5bh
+dd 0313892ceh
+dd 0b211ea42h
+dd 007c685cbh
+dd 04bef4fcbh
+dd 0928eac33h
+dd 0e80e8ec6h
+dd 004f328dah
+dd 0586a4634h
+dd 059d63e4eh
+dd 0d5373c43h
+dd 0118f5d6eh
+dd 0d7c10623h
+dd 0262956b8h
+dd 0be807285h
+dd 0c978697fh
+dd 0f87e12b6h
+dd 080f18f84h
+dd 0085d173fh
+dd 08236eac9h
+dd 01b40f8a7h
+dd 0ee043a07h
+dd 06e3cd475h
+dd 0e8703e19h
+dd 08fe76e9eh
+dd 0f91dda5eh
+dd 0d14ee553h
+dd 05c7aa594h
+dd 023c96dd6h
+dd 0870f1c12h
+dd 0d0937f63h
+dd 08f65b552h
+dd 03234ca34h
+dd 04d2d26edh
+dd 0bfc8c3e7h
+dd 0b19b5105h
+dd 0b63573a2h
+dd 057a3eb8ah
+dd 0f9eeeda9h
+dd 015d5da06h
+dd 0ca5802cch
+dd 03d5ab80dh
+dd 0e7eedb4eh
+dd 0fac1fd8eh
+dd 01cf9f153h
+dd 0bd737b36h
+dd 0885278c9h
+dd 091ec4680h
+dd 082cb7012h
+dd 02bc25c6ah
+dd 0c4f6567ch
+dd 07f0a1409h
+dd 046df62a3h
+dd 091a74b79h
+dd 017f380c2h
+dd 08e218c0ah
+dd 0c78bd18fh
+dd 07027119dh
+dd 075c6944ah
+dd 0866e8fd0h
+dd 0a2780920h
+dd 02488bb08h
+dd 0748aa3edh
+dd 0ed646339h
+dd 0e5faf34ch
+dd 08accbbd1h
+dd 0548be638h
+dd 0899efe49h
+dd 06f2a370fh
+dd 0ec0682cbh
+dd 0df516c68h
+dd 0a2fb213dh
+dd 0dcadd5eeh
+dd 00498b08ch
+dd 06c4b147bh
+dd 0c5721bc3h
+dd 08afce1b2h
+dd 0df409469h
+dd 0064748a1h
+dd 09848d6bfh
+dd 09fd8c787h
+dd 0e2061fddh
+dd 01b534890h
+dd 06f7ab93fh
+dd 012fb79ech
+dd 07f57811ah
+dd 0867cfef6h
+dd 0352457fah
+dd 07e60d10eh
+dd 0e43d8285h
+dd 091f48826h
+dd 041536fcdh
+dd 0e244c955h
+dd 021544ad9h
+dd 008ebb043h
+dd 0652cc5abh
+dd 0644e623fh
+dd 0a722ecaah
+dd 008c16f0bh
+dd 0548a5e0bh
+dd 0256df3b9h
+dd 030e231f5h
+dd 043534018h
+dd 0b19cf9adh
+dd 0bb519877h
+dd 041c5ae93h
+dd 084b86483h
+dd 06af6149eh
+dd 025669f38h
+dd 09a3bd494h
+dd 002b0f3d9h
+dd 02136b234h
+dd 0029e5980h
+dd 0f0a0b47ah
+dd 05c8b42b0h
+dd 0f7de1085h
+dd 03f747128h
+dd 0c30b0d35h
+dd 09a1de6dbh
+dd 06c3c7b78h
+dd 031242780h
+dd 0d3efd62eh
+dd 0b4c877cfh
+dd 06c401fa2h
+dd 0fcaa82cbh
+dd 0493a1b45h
+dd 0e69afd4bh
+dd 04867b84bh
+dd 042d5fb03h
+dd 0fdd49a32h
+dd 056e76107h
+dd 0881ef307h
+dd 0442faae6h
+dd 05b3409c2h
+dd 03aab0e25h
+dd 0b1b31027h
+dd 003b40b71h
+dd 03c081c92h
+dd 0cb5ce294h
+dd 05542346bh
+dd 0d30115dah
+dd 08cc90d3eh
+dd 0daad092ch
+dd 08602bfefh
+dd 01c1fc4deh
+dd 02de06538h
+dd 0e6151221h
+dd 051433ebdh
+dd 0c0abb9a3h
+dd 0b208b99ah
+dd 00851345ch
+dd 071a87501h
+dd 05bd11136h
+dd 02a3b7354h
+dd 0a6fd7be5h
+dd 0d37e503bh
+dd 00710cdcdh
+dd 00dfc1453h
+dd 08076f53eh
+dd 09efd1f18h
+dd 04fe6a727h
+dd 08406787ah
+dd 011dffac8h
+dd 0315b4113h
+dd 0d9dc53ceh
+dd 087864855h
+dd 0cc708b85h
+dd 037780614h
+dd 02f013f0fh
+dd 06b63f041h
+dd 0522f8d1ch
+dd 000c3ac9dh
+dd 07678b263h
+dd 01736c2e1h
+dd 05679c502h
+dd 02c1da985h
+dd 0a4e74007h
+dd 00cab9e61h
+dd 0ca54f210h
+dd 001cac89eh
+dd 0f490d0dfh
+dd 0ac84c0bah
+dd 08e16f8a1h
+dd 014e1a07fh
+dd 0ac1c2b28h
+dd 0be83128eh
+dd 03b8b109eh
+dd 0097aebc6h
+dd 0a343d6f8h
+dd 067fa4a3bh
+dd 07c307f3eh
+dd 03719fba5h
+dd 08b17000bh
+dd 0f8697301h
+dd 0fffce1afh
+dd 0547f9829h
+dd 0d5fc5c96h
+dd 04720360eh
+dd 030fc3dd0h
+dd 032bd4095h
+dd 0e68e682ch
+dd 0c1d9326ch
+dd 08a273559h
+dd 0c9c4b611h
+dd 0d52b2069h
+dd 014e148ceh
+dd 02ec25b9ch
+dd 071fc923eh
+dd 0e25776b7h
+dd 03ffd3292h
+dd 037d6db76h
+dd 0bf2f671dh
+dd 02707cb4dh
+dd 08c8319e7h
+dd 0c39bb43dh
+dd 08346d977h
+dd 04f21826dh
+dd 0cb513dddh
+dd 086f4233ch
+dd 08d3c2546h
+dd 0d1897034h
+dd 01229ef7fh
+dd 0b43c1deeh
+dd 0bd8cda10h
+dd 0acb37271h
+dd 01741c295h
+dd 052bdd160h
+dd 052952b1bh
+dd 02967ac20h
+dd 05b531436h
+dd 0db440883h
+dd 0170631d9h
+dd 0aef08034h
+dd 0df142e8eh
+dd 010c2024ah
+dd 0444194f5h
+dd 016520b68h
+dd 041f95f5bh
+dd 0178c1f92h
+dd 0fa128079h
+dd 05598dd43h
+dd 0e7405e72h
+dd 037acbbb3h
+dd 0ec21ef44h
+dd 0e0cfcb7fh
+dd 023ce3006h
+dd 0ddb5393fh
+dd 0dcf7b3f0h
+dd 0d5efbd51h
+dd 0ecb7e0f5h
+dd 098232c3ah
+dd 05cade400h
+dd 032fa1740h
+dd 07e565c20h
+dd 0e946c670h
+dd 01b29c081h
+dd 00c05c533h
+dd 0a658a4edh
+dd 0fd68c8a6h
+dd 070f2701bh
+dd 04ecd61b6h
+dd 0a9972b32h
+dd 022f57215h
+dd 0fd924700h
+dd 07032d201h
+dd 05f337b66h
+dd 02d14a35dh
+dd 01d83deb7h
+dd 066e83697h
+dd 098d8700ah
+dd 073b3d116h
+dd 06b1abd70h
+dd 0ff0a1775h
+dd 0af718de9h
+dd 0849682b9h
+dd 02409aaedh
+dd 051c167bch
+dd 097475b15h
+dd 08cd0c863h
+dd 0b5c51178h
+dd 0e848a384h
+dd 08a1a846dh
+dd 007370edch
+dd 047d4ef3dh
+dd 0baf378ach
+dd 01676ac44h
+dd 036791468h
+dd 04ffef6c3h
+dd 0130b55e3h
+dd 03e59bb1dh
+dd 0e024deeeh
+dd 043ec3539h
+dd 06905a3e0h
+dd 03f22a066h
+dd 0c641b732h
+dd 03551e3d9h
+dd 069317977h
+dd 087a07984h
+dd 0a23374cfh
+dd 07a96d691h
+dd 0fde2ae34h
+dd 051c068fdh
+dd 0faca7563h
+dd 0bfa0d7e5h
+dd 026df3c1ah
+dd 0b665074fh
+dd 0e28ddd89h
+dd 013a8bf0eh
+dd 0c0915b8ah
+dd 09a5498d6h
+dd 0b4cfe24eh
+dd 0a5d4dbc2h
+dd 09babe2d0h
+dd 0e8a46597h
+dd 0ac320f88h
+dd 0cd0ff3f0h
+dd 0541c0274h
+dd 04f94d6a1h
+dd 0a80b2725h
+dd 04807dd75h
+dd 0697b0e77h
+dd 0d2fddad6h
+dd 084ea5402h
+dd 00eb67e42h
+dd 0b122a4f5h
+dd 0e3c0fb53h
+dd 07c0270b4h
+dd 0de9ef03fh
+dd 00091ccbeh
+dd 0a83e2dbah
+dd 06c5a2986h
+dd 00e69a8f3h
+dd 08e193f50h
+dd 0bada9874h
+dd 003fd044ch
+dd 0cbfdbcceh
+dd 0621b67ech
+dd 06ef398ebh
+dd 05d093dcfh
+dd 0e17b62fch
+dd 082a46a7ah
+dd 014f86149h
+dd 039dfa982h
+dd 02881b6eah
+dd 05e1018e6h
+dd 0804e3e60h
+dd 0a10523d4h
+dd 0b096b52ah
+dd 0f84bef66h
+dd 0318a2dbeh
+dd 010fd7175h
+dd 0734ed36ah
+dd 0692ec977h
+dd 0d02908f7h
+dd 033ca3b24h
+dd 0b29918a4h
+dd 0d14738adh
+dd 0c9856032h
+dd 06af7321eh
+dd 0329093e5h
+dd 01771f82eh
+dd 08b59d0edh
+dd 0b60a5b0fh
+dd 02e973d84h
+dd 002fdedbdh
+dd 0d281f2f6h
+dd 019866f80h
+dd 0f7e6d4c0h
+dd 0e252c7c7h
+dd 08c8eb14ch
+dd 0c79b10a3h
+dd 09fd3c9b3h
+dd 0891bed5fh
+dd 0a6f46bf5h
+dd 037adf91eh
+dd 0007dd2b6h
+dd 02f0e2ed6h
+dd 0761f7c42h
+dd 0e308b764h
+dd 094801be6h
+dd 0cf40c158h
+dd 0fd8bedc9h
+dd 021839d54h
+dd 05a497f88h
+dd 05e96929bh
+dd 0234fdd19h
+dd 016a9fa48h
+dd 0d2886953h
+dd 055f5415ch
+dd 0987add78h
+dd 0f18ac952h
+dd 0a7a01aafh
+dd 0189c2d47h
+dd 030ec7250h
+dd 02a8c8dcbh
+dd 03128ca20h
+dd 0f01d7454h
+dd 0645e48deh
+dd 0d49e71deh
+dd 014fae4d0h
+dd 0088ee6dbh
+dd 06b2fb5c4h
+dd 08181477ch
+dd 08556e15ch
+dd 05797bf20h
+dd 090dccc01h
+dd 040a5593fh
+dd 038d5df09h
+dd 03a31d596h
+dd 0b5a5b811h
+dd 0a6b485b1h
+dd 0acebb880h
+dd 08578bfdch
+dd 0edd8781fh
+dd 02855843fh
+dd 07b04108fh
+dd 0c48e0431h
+dd 0826cb108h
+dd 0ce1282efh
+dd 0b6127ebah
+dd 0ddb427bbh
+dd 06b360c88h
+dd 0e91390bbh
+dd 0fc9a0e68h
+dd 0d48d9c63h
+dd 0a999a867h
+dd 05896d995h
+dd 0f60ecdcdh
+dd 0aef95bd3h
+dd 0ff39dc73h
+dd 0d6cd5911h
+dd 01a820e82h
+dd 0ac303b23h
+dd 0785135a5h
+dd 00b068a50h
+dd 069ebf870h
+dd 06acdd67dh
+dd 0acbdbac9h
+dd 0c9862895h
+dd 080d7a420h
+dd 07d7afecah
+dd 0224d564ah
+dd 08683c823h
+dd 0bad3dc95h
+dd 0c603e757h
+dd 01da6fabah
+dd 001f715d5h
+dd 008dc3416h
+dd 05c1b72afh
+dd 0e4524bdbh
+dd 0f2c754cbh
+dd 0d164df1bh
+dd 0768a797eh
+dd 041670620h
+dd 0c1ceca1eh
+dd 024e25b2dh
+dd 09c03ec8eh
+dd 0f2cfada2h
+dd 02a34be6ah
+dd 0cb9c9215h
+dd 0295a4adeh
+dd 03327efb0h
+dd 08ee3e651h
+dd 0d5def788h
+dd 0123d7c9ah
+dd 055cd0201h
+dd 00da65f1eh
+dd 0700be143h
+dd 00570c617h
+dd 08b15606dh
+dd 051c3eb03h
+dd 0547487c1h
+dd 075644899h
+dd 0631de368h
+dd 06411f44eh
+dd 02d795012h
+dd 0b7b2dbe2h
+dd 0df1a043fh
+dd 0a11c0fc0h
+dd 065b0f60bh
+dd 096141d58h
+dd 091f2ab6bh
+dd 01a40ab0ch
+dd 0025a3037h
+dd 0f025b0d8h
+dd 063d8aad9h
+dd 0278c3733h
+dd 0ab4be6fch
+dd 09afc44b9h
+dd 01ab71c42h
+dd 00e1aafeah
+dd 0e42ac608h
+dd 06831e74bh
+dd 070709095h
+dd 0ddf3407bh
+dd 01e3b27a0h
+dd 0275d99e4h
+dd 06f45aab6h
+dd 085adefbbh
+dd 0d90e65dfh
+dd 0ece8fdcdh
+dd 0b3a93b8fh
+dd 045aa8a6ch
+dd 0578c93bbh
+dd 0f3fc262dh
+dd 0005ec81fh
+dd 0088e3330h
+dd 0ad2a50e3h
+dd 0ba2805feh
+dd 0e488c825h
+dd 0fd246213h
+dd 0068dfbe3h
+dd 02014528bh
+dd 0b049488dh
+dd 079558a12h
+dd 02dd55b48h
+dd 0d5d7ce46h
+dd 02dbb22e9h
+dd 05322d576h
+dd 0c0366497h
+dd 0e664fac3h
+dd 097fa00f9h
+dd 02ddbf81eh
+dd 0e9b6a879h
+dd 058b0f21fh
+dd 0cb59dd61h
+dd 0d9ffea76h
+dd 09b82addah
+dd 0c69b92afh
+dd 0f061147fh
+dd 0571e5428h
+dd 0ca2322dbh
+dd 0f31aa4b5h
+dd 03cfe3d96h
+dd 0eeaf32f3h
+dd 0c17012f0h
+dd 0d5f0ff37h
+dd 06d73dba8h
+dd 0ce8a6bbfh
+dd 027980b06h
+dd 059a34fe0h
+dd 05b408384h
+dd 0af566752h
+dd 016d13bf9h
+dd 0dc2df8aah
+dd 0460e803dh
+dd 05ca362a4h
+dd 0e33622b6h
+dd 034ba42abh
+dd 03a6062b6h
+dd 0a04ea2e8h
+dd 09b87134bh
+dd 015f27102h
+dd 0bc7e22b7h
+dd 05ab7851ch
+dd 089f9a706h
+dd 071a0585ah
+dd 062ba27f0h
+dd 049d14039h
+dd 02e164c17h
+dd 099f81017h
+dd 0e08406e5h
+dd 0ee8289e5h
+dd 0a59f3bcbh
+dd 03dd75d54h
+dd 0213da342h
+dd 0d83ece14h
+dd 0e7c31f15h
+dd 0656aa96fh
+dd 042161360h
+dd 048561120h
+dd 06336fee2h
+dd 0abb98b61h
+dd 08ce02f9bh
+dd 0116790ceh
+dd 01be1fbb9h
+dd 0a2c079ceh
+dd 0b50d3276h
+dd 06d95b8d2h
+dd 01bba8f3ch
+dd 0fd5c7ddah
+dd 0de0f9379h
+dd 0b3aa1e7bh
+dd 0980019e4h
+dd 048c66ce4h
+dd 0fa576579h
+dd 05d5c1fe6h
+dd 0df1a3485h
+dd 086c41ca0h
+dd 0f8f86014h
+dd 08c48e80dh
+dd 0985457c3h
+dd 0b160badah
+dd 0dee9006eh
+dd 077e2e18dh
+dd 0e067efd7h
+dd 0779a206fh
+dd 010c82e58h
+dd 0ccf63646h
+dd 00de6d96bh
+dd 0fc05ea64h
+dd 07a9f0f58h
+dd 08c21180fh
+dd 04a620f24h
+dd 02f25fc0ah
+dd 039c825b0h
+dd 0c3afa5e6h
+dd 03422e3d5h
+dd 00ced0cf3h
+dd 0cf32f090h
+dd 0b859fdb6h
+dd 0b8aef12eh
+dd 0e63f5dddh
+dd 09d908aa1h
+dd 0e1e9c365h
+dd 0f9d221e8h
+dd 0ce467195h
+dd 02e8cea86h
+dd 09ca579eah
+dd 08cffbb91h
+dd 07fabef50h
+dd 019098c4ah
+dd 0d8affa11h
+dd 0b963343fh
+dd 00ae5e080h
+dd 08584ccdbh
+dd 08b057c3fh
+dd 01f4efa4ch
+dd 0ed6788ffh
+dd 0e9f6f26bh
+dd 0afaa1da6h
+dd 0ecee18b7h
+dd 034f8e4efh
+dd 07d72c4d0h
+dd 0f07d78ech
+dd 0f5e1bf85h
+dd 0fcaf2973h
+dd 095edc0f4h
+dd 095b4a8a6h
+dd 0061cbdb3h
+dd 0090a8ed3h
+dd 047f7e326h
+dd 0b3ced56bh
+dd 0c812ef5eh
+dd 0661d01d1h
+dd 02a69ddb1h
+dd 0c79412bah
+dd 00fcbddf7h
+dd 06128bd4dh
+dd 008b49db2h
+dd 021b41f05h
+dd 08c5ffda4h
+dd 0d0a3d51ah
+dd 042ee5ad9h
+dd 0b80322d5h
+dd 07869e7c4h
+dd 025ee8057h
+dd 080628fc3h
+dd 005db4b0eh
+dd 0c30dafdeh
+dd 0c09ddacah
+dd 01b20ddf7h
+dd 0677be0ffh
+dd 0d5f486e4h
+dd 02ab3a072h
+dd 022118c51h
+dd 035db40c2h
+dd 0095a7b1dh
+dd 0f53666a2h
+dd 0fb16b7e1h
+dd 0d9d05891h
+dd 00eb6e3fbh
+dd 0dc007cd3h
+dd 0da151655h
+dd 0ede3fdc7h
+dd 0aeb694ach
+dd 0a7d687cch
+dd 06c0d010dh
+dd 07240bce1h
+dd 0af4c8a8dh
+dd 0421338f4h
+dd 0ddc8efe3h
+dd 0ba88be64h
+dd 05896ac0eh
+dd 0c6870ed1h
+dd 0f523c28dh
+dd 043d5adbbh
+dd 07683d23ah
+dd 053d568bah
+dd 00d62e5bch
+dd 05e3ddc1ah
+dd 0fe274da6h
+dd 019680865h
+dd 0622cb880h
+dd 0cdb591ffh
+dd 01adfca97h
+dd 05cd4b02ch
+dd 0ca8735a7h
+dd 0eeecffdah
+dd 088389e29h
+dd 0f216c1b4h
+dd 099e2aed7h
+dd 077d1339ch
+dd 0c986f68ah
+dd 0b6456bbah
+dd 08876fe47h
+dd 008d9491eh
+dd 0a8701372h
+dd 0c9ff2012h
+dd 0bddc62ebh
+dd 063a45542h
+dd 02e30ef13h
+dd 037c19b61h
+dd 0df9f36ceh
+dd 02ded1d3ah
+dd 09e70dc88h
+dd 086b1104bh
+dd 01aba2e58h
+dd 01b1008b5h
+dd 08379826eh
+dd 055575eb2h
+dd 0c5ba299fh
+dd 0616494ddh
+dd 05572b8a6h
+dd 0761f4792h
+dd 093af61ach
+dd 0e79a0e67h
+dd 08f27ccb3h
+dd 014f174b6h
+dd 051b71656h
+dd 0b2697852h
+dd 0c37e84b6h
+dd 008f5947ch
+dd 0512edddeh
+dd 023e022e3h
+dd 0785df43eh
+dd 0ce4858c9h
+dd 03c243cd5h
+dd 056845d64h
+dd 0de0c511ch
+dd 0e5d23a24h
+dd 0e4c2fafah
+dd 0fcd83ac2h
+dd 077e51f48h
+dd 0c8fd731fh
+dd 08c38f54ch
+dd 0470cfb8ah
+dd 00e7e9ae3h
+dd 0a0329e43h
+dd 026f13a1ah
+dd 0cfdb0dddh
+dd 0bbe7ef56h
+dd 0506c52a4h
+dd 07c8d1e1fh
+dd 05827ff6fh
+dd 0c8c7cfa9h
+dd 08830ed9ah
+dd 01f791914h
+dd 0c60610c4h
+dd 0b4ff65e6h
+dd 001c0cfe0h
+dd 0f779c25ah
+dd 0e844da8dh
+dd 05d3ba66bh
+dd 0855ecd11h
+dd 00356b387h
+dd 08674b5fch
+dd 0be1bdf64h
+dd 0b9cef91dh
+dd 0875156c2h
+dd 030476bbbh
+dd 043a70ba6h
+dd 034a50cb5h
+dd 0f0ec4e22h
+dd 0e3d1cb8ah
+dd 0f6222affh
+dd 0204bb900h
+dd 02418bbb2h
+dd 0676fafe3h
+dd 05c1ddb78h
+dd 05eaadfa3h
+dd 0591a3ab2h
+dd 0d1284623h
+dd 0b1b6a046h
+dd 04d357b6dh
+dd 0184bf1d7h
+dd 07adb2c49h
+dd 0b15f0e4bh
+dd 0eb0d213bh
+dd 0b185ba82h
+dd 02777afe5h
+dd 092285edeh
+dd 0b696baf4h
+dd 0e0fd1110h
+dd 0b0656eb9h
+dd 0552df7b3h
+dd 056cb8843h
+dd 01d80f809h
+dd 0deec4e53h
+dd 0cf330fa3h
+dd 0c5f55424h
+dd 0a1f1325fh
+dd 0eb08d0d1h
+dd 0065fb2adh
+dd 05f3732eah
+dd 0cd4c7371h
+dd 09ce489c9h
+dd 00d565fb4h
+dd 0080ded49h
+dd 09413cf5ch
+dd 015dd1551h
+dd 015628746h
+dd 04fe8e620h
+dd 0eaaeded5h
+dd 0f2d459e5h
+dd 0d0441c1eh
+dd 00326589fh
+dd 07db190adh
+dd 0c9266cf1h
+dd 0f008077fh
+dd 0e1b9b0feh
+dd 00ef253b8h
+dd 05cfff316h
+dd 0baf68917h
+dd 0aab36b23h
+dd 0cb2c6f90h
+dd 014885c25h
+dd 0b22c769dh
+dd 0b6e24628h
+dd 022854fa3h
+dd 0fec20225h
+dd 0e5d38a69h
+dd 07581c809h
+dd 0b686eedbh
+dd 0d1674126h
+dd 099d3e5cch
+dd 059f9a378h
+dd 0c815a5a0h
+dd 05cdbc236h
+dd 07f03ec5dh
+dd 0ad58a556h
+dd 0b5217aa1h
+dd 0a39602cah
+dd 0b4703a96h
+dd 04ee43327h
+dd 04995974fh
+dd 0a08b73f3h
+dd 0d1f2af60h
+dd 076d16ef6h
+dd 09b8d658fh
+dd 02bfc831eh
+dd 07cd5a328h
+dd 0d7c6501dh
+dd 06e284f43h
+dd 050f9d6bbh
+dd 075bffe5bh
+dd 02a3966e3h
+dd 07b8d32bdh
+dd 0d92a0af1h
+dd 039445059h
+dd 0b82c3fach
+dd 0d93fcd28h
+dd 0d9a67637h
+dd 06eb2c25ah
+dd 0431f1725h
+dd 0e7e020fbh
+dd 0f06545dah
+dd 038d40ccfh
+dd 0f91f4ff5h
+dd 057243233h
+dd 0628436aah
+dd 0d9cf0a54h
+dd 032ff1f33h
+dd 0b4b3668bh
+dd 0a74ca719h
+dd 0687b03e3h
+dd 01acfdda4h
+dd 0e6d4df48h
+dd 0452730e0h
+dd 00a2f5221h
+dd 0f81c9f3bh
+dd 0d2a17d2fh
+dd 01a2be0d1h
+dd 0ef34d889h
+dd 07c323bc0h
+dd 06f102ba3h
+dd 00934fb2bh
+dd 0b11d007fh
+dd 034a3d99ah
+dd 0d35e2e0fh
+dd 083a56310h
+dd 0d209b06ch
+dd 0210567e9h
+dd 084b1cadfh
+dd 02bdd2ad0h
+dd 0f22177fah
+dd 07828776eh
+dd 0cdf0c511h
+dd 0ed8d221dh
+dd 08b4ad854h
+dd 06f13bbffh
+dd 019469a48h
+dd 0d7d91cf5h
+dd 0ffcd1866h
+dd 092586876h
+dd 011f1bcfeh
+dd 0860aee02h
+dd 09eddff77h
+dd 0bf0363d3h
+dd 019864aedh
+dd 027eb6001h
+dd 017e07a0bh
+dd 0a819397eh
+dd 0ca650c1bh
+dd 09aefc7c8h
+dd 0483e59ddh
+dd 0981b0948h
+dd 07953d15ah
+dd 08641f5f9h
+dd 03f4d068ch
+dd 0453bf209h
+dd 0501fbfb1h
+dd 0113cfedeh
+dd 006359c3dh
+dd 08acb8a32h
+dd 0ccd1efc0h
+dd 02c473e7fh
+dd 0c85508bdh
+dd 0ea332dc3h
+dd 0addfaeb2h
+dd 03f5e9c5fh
+dd 0b6b7fa39h
+dd 01c51583dh
+dd 006e6dc74h
+dd 0f27559cah
+dd 08c32dc7ah
+dd 036cff2a7h
+dd 01dc18490h
+dd 0fdcc5fa2h
+dd 0e991550fh
+dd 06d2a917ch
+dd 03856cd6bh
+dd 0514d1774h
+dd 06488f3e4h
+dd 0724f5a54h
+dd 0e7bc79adh
+dd 0a33ef268h
+dd 05e45292ch
+dd 0e7e3dcb2h
+dd 0bd2259f7h
+dd 013d8d962h
+dd 0f9daa92eh
+dd 017ba4495h
+dd 00df53610h
+dd 034073d00h
+dd 01df9e26dh
+dd 04e6dde12h
+dd 0c9776fbeh
+dd 0e0f7c6cdh
+dd 00869bcb7h
+dd 09a980281h
+dd 0c4ecb181h
+dd 06bc0c4beh
+dd 07e20ae57h
+dd 0edf89b0dh
+dd 033d22ff8h
+dd 0b4996e62h
+dd 03da45b77h
+dd 0b357befdh
+dd 0aee0139eh
+dd 0cb719e8fh
+dd 081b1e522h
+dd 046969a87h
+dd 0b6029fa5h
+dd 064ea5b31h
+dd 08e992dfch
+dd 08a35eef3h
+dd 069045f46h
+dd 0d1305eaeh
+dd 0eac56786h
+dd 0f197374dh
+dd 0c11991ddh
+dd 026755c8ah
+dd 09be4dbefh
+dd 075bfa8cbh
+dd 09865c531h
+dd 01a3789b0h
+dd 03087b850h
+dd 0eae9048bh
+dd 0346276beh
+dd 011b389b5h
+dd 0dda286ach
+dd 0d4b9caf3h
+dd 06ee89283h
+dd 02d4c9f45h
+dd 0429e6edch
+dd 0b67dfc38h
+dd 0553f1cbeh
+dd 0b17b8287h
+dd 0ae2dfbd3h
+dd 0b95cf629h
+dd 068e88e28h
+dd 05c83ef44h
+dd 06df91254h
+dd 0630ab98dh
+dd 096b89e61h
+dd 0d0459181h
+dd 0cc4f334ch
+dd 0d1298db2h
+dd 08e8c1971h
+dd 0c71e7acbh
+dd 0c811d967h
+dd 051b4e583h
+dd 08314dc18h
+dd 0fcd7d274h
+dd 05b40befeh
+dd 0d765181bh
+dd 0e0de2a55h
+dd 04543e262h
+dd 0362a774ch
+dd 0a5fa7b04h
+dd 0c3618984h
+dd 04cf2f286h
+dd 0e9b15d3fh
+dd 0c7d9c448h
+dd 0022c90d7h
+dd 0c6b8dfa0h
+dd 029a16cb1h
+dd 050a3f07dh
+dd 00b57e258h
+dd 0a5ef0a6ch
+dd 0be358a2ch
+dd 073ab55d1h
+dd 0add10108h
+dd 069c43a91h
+dd 0118239c6h
+dd 0ecab4aa4h
+dd 0fd91f974h
+dd 0d0232412h
+dd 07df7d7d1h
+dd 0ff8ecfech
+dd 0bbfdec59h
+dd 03fd75cb8h
+dd 08dba10bdh
+dd 0b280980ch
+dd 047babccah
+dd 0ef711ec1h
+dd 00b8757cbh
+dd 00f03293ah
+dd 0014cff0bh
+dd 0159362f2h
+dd 0e9b18666h
+dd 03508b5d2h
+dd 06ceb24ech
+dd 0887e3cb2h
+dd 0c1355a04h
+dd 02721b65fh
+dd 0f731cc2dh
+dd 07bcd475ch
+dd 05cb75910h
+dd 02dd1d6e2h
+dd 0daf0c86bh
+dd 09ce8ad30h
+dd 02262b035h
+dd 047133ad1h
+dd 08a2fbbach
+dd 0cb8afcb7h
+dd 09b84dd2eh
+dd 07a15748dh
+dd 04d8d2d56h
+dd 08b9493a3h
+dd 04c909bb8h
+dd 039ee8e41h
+dd 0ae9828d4h
+dd 0da1c0e63h
+dd 00461c596h
+dd 030c816ddh
+dd 0c29eae89h
+dd 0b2ad1c1eh
+dd 0b873eab8h
+dd 0d57aaaabh
+dd 056b94a65h
+dd 013bbb217h
+dd 02a6564b0h
+dd 0cf9798bfh
+dd 09e9bbbaah
+dd 04f65a038h
+dd 0bf78c38bh
+dd 064985511h
+dd 051ee93d1h
+dd 0f8fe8338h
+dd 08b451d46h
+dd 0221b5bc3h
+dd 0df150057h
+dd 043a0182bh
+dd 083ee4aabh
+dd 09eff0b4eh
+dd 0d6af3d32h
+dd 0ed69ec8bh
+dd 086d84618h
+dd 0bd44d90eh
+dd 0604a2b9ah
+dd 0d5162613h
+dd 071c8f386h
+dd 06567ee76h
+dd 0ccf271e9h
+dd 061c7aaabh
+dd 08b47bf59h
+dd 079ee830dh
+dd 0e1a18308h
+dd 0cd6046bbh
+dd 0d57bc724h
+dd 031f555edh
+dd 0bc8deafah
+dd 03dc1ecdfh
+dd 0ef5b5e28h
+dd 012cc147bh
+dd 05c6dcb68h
+dd 0a8a0b707h
+dd 0456e3dafh
+dd 02362ebbch
+dd 07ba8ea1eh
+dd 098990fbfh
+dd 0972f58f7h
+dd 0252f1dceh
+dd 0959550d8h
+dd 0ba29671fh
+dd 036ccfce3h
+dd 01bd5a27ch
+dd 07c322ca9h
+dd 06490b4e1h
+dd 0e987cce3h
+dd 00150c082h
+dd 01258859dh
+dd 002da7c0ah
+dd 032760165h
+dd 0966e221bh
+dd 00aaaffd4h
+dd 02ee4a5c5h
+dd 0e135ba04h
+dd 06d60f639h
+dd 0628a6623h
+dd 01505679fh
+dd 09a0da64fh
+dd 01139bdc8h
+dd 0c8205dd9h
+dd 0a83a48feh
+dd 02fead0bah
+dd 0e83c443ah
+dd 0f0d95738h
+dd 07c091645h
+dd 0e36ed998h
+dd 025975211h
+dd 09038c985h
+dd 081114647h
+dd 01de2fbf6h
+dd 0929a93dah
+dd 0d2d3f31bh
+dd 0625338f5h
+dd 084779331h
+dd 09e6db8a7h
+dd 00bf8bb42h
+dd 00a393caah
+dd 0bfd5b7f4h
+dd 0e73ac4b1h
+dd 0e8ccef59h
+dd 0db8598b6h
+dd 078f36f2ah
+dd 0b3ecf620h
+dd 02b5ed55ch
+dd 0545f34cbh
+dd 0c8d8f16fh
+dd 02a6f76a6h
+dd 01ef2b380h
+dd 081a09ab6h
+dd 04b5d687bh
+dd 06d35842bh
+dd 068c9f7c8h
+dd 0cb8295ddh
+dd 09d32e32ah
+dd 0a1e08428h
+dd 0586dbacfh
+dd 006fa0fe8h
+dd 004819e1dh
+dd 0dd5fcbb1h
+dd 0e84cf3dfh
+dd 02d6bd4a3h
+dd 03e699a22h
+dd 0adffc102h
+dd 0d71028b5h
+dd 01ff9a594h
+dd 0870f41b2h
+dd 0dfab27b8h
+dd 06fca08d6h
+dd 04d1e09b1h
+dd 078ebb775h
+dd 0ea510dc4h
+dd 05942c6e8h
+dd 06080b3a2h
+dd 0204d28d3h
+dd 0f7f1bcc7h
+dd 00b300b38h
+dd 0aad09f46h
+dd 0a8e4f039h
+dd 0616cb558h
+dd 03e3c2ae4h
+dd 0d6baaf95h
+dd 05cf189d9h
+dd 099d8f912h
+dd 08b1841aah
+dd 0dda7f05eh
+dd 0a6220de5h
+dd 09e0bdaceh
+dd 062fde053h
+dd 0414e974fh
+dd 002416878h
+dd 0aac63b74h
+dd 0ff473a97h
+dd 0fd9da048h
+dd 0e1465581h
+dd 0a9f06e34h
+dd 0d9f0b9d8h
+dd 0290a991fh
+dd 0a3cdb71ch
+dd 0b543b293h
+dd 0b4981208h
+dd 020051c8bh
+dd 03f564067h
+dd 0bb7512adh
+dd 04cb5ae82h
+dd 03e02dbceh
+dd 0e37592fah
+dd 0df1819ach
+dd 044fc5f39h
+dd 0e01720e5h
+dd 06b23889bh
+dd 0e79f2247h
+dd 07806e0afh
+dd 05568501bh
+dd 0680ed96ch
+dd 0a03263eeh
+dd 0a8106980h
+dd 056482bf4h
+dd 04053ba99h
+dd 0d6680f8ah
+dd 0e042747ah
+dd 0b943f501h
+dd 0292aaed3h
+dd 07f6e0082h
+dd 081c5f384h
+dd 0c6255c94h
+dd 0a0e7eb08h
+dd 092b244a5h
+dd 09b4128a8h
+dd 0ec3d3617h
+dd 01d1372f7h
+dd 026ffed59h
+dd 0c9945dd0h
+dd 0b90bf086h
+dd 01c08ce45h
+dd 0636c9125h
+dd 0291088bch
+dd 0da112ca5h
+dd 0912a6b84h
+dd 0cfa20258h
+dd 081e48d4ah
+dd 06484412bh
+dd 0ee046cfch
+dd 06c0f3cf2h
+dd 016aa70c4h
+dd 0aa8f165fh
+dd 0ed444e54h
+dd 01d2de066h
+dd 0326d31e4h
+dd 09a04aa5fh
+dd 0c199b5a3h
+dd 0c0d51217h
+dd 0f649c022h
+dd 09864cf0dh
+dd 0ff76d959h
+dd 07bd22957h
+dd 0367d6620h
+dd 01beb945eh
+dd 02a919ffeh
+dd 0d7c8315bh
+dd 066447596h
+dd 07f38b7b5h
+dd 0487f55e6h
+dd 06b0895c0h
+dd 038dd7618h
+dd 013d23bbeh
+dd 0f86e952ah
+dd 0dce6cd59h
+dd 0146fef79h
+dd 09cac79d4h
+dd 0a62ab14fh
+dd 027ac7317h
+dd 0b7799ac9h
+dd 02e9c3188h
+dd 0b0717101h
+dd 0442132e9h
+dd 0fa5fad89h
+dd 095e0bc66h
+dd 04aeafee7h
+dd 0067e4567h
+dd 056a9854ch
+dd 030afee91h
+dd 0b33f9a8eh
+dd 0739d0204h
+dd 0bbae1d83h
+dd 0485d1015h
+dd 09b535d85h
+dd 09ab041e0h
+dd 0bbd1d264h
+dd 0f149323ch
+dd 0461a609eh
+dd 09561c0f6h
+dd 050a50493h
+dd 0541eba07h
+dd 0bc1ce4e0h
+dd 061a56b68h
+dd 04e17a192h
+dd 09e71ae8dh
+dd 02a736373h
+dd 016571ce3h
+dd 0ac27ea75h
+dd 04be2dc20h
+dd 03acbd0cdh
+dd 0dce71075h
+dd 07587436bh
+dd 00787c87dh
+dd 0a8837809h
+dd 0ba53069ah
+dd 0398bb5a5h
+dd 070fedfb4h
+dd 05453bf3dh
+dd 0c8be9612h
+dd 0f7a6fe6ah
+dd 06269395ah
+dd 02397c544h
+dd 049761900h
+dd 000674788h
+dd 00602bbceh
+dd 06453cbc6h
+dd 0a908ab01h
+dd 0109ac1efh
+dd 0b7dbb398h
+dd 01f0d2979h
+dd 0e1ceb1eeh
+dd 0b03e5d15h
+dd 033d31a0dh
+dd 044afcbbeh
+dd 09e4c49cbh
+dd 0927dbafah
+dd 0d2380a8fh
+dd 0d7ad1ad7h
+dd 0988e8996h
+dd 0002ee2fah
+dd 0e98cdf5ch
+dd 09e9812ech
+dd 0d635e2c0h
+dd 03badff35h
+dd 058e70706h
+dd 0c7876c14h
+dd 093c041d4h
+dd 0ed23ba94h
+dd 0469102f9h
+dd 07856a5b2h
+dd 0725a57d9h
+dd 0ea77d9c8h
+dd 0e9e14e3eh
+dd 0f0149592h
+dd 0810b7b94h
+dd 020a05976h
+dd 07794881eh
+dd 0c38ffc47h
+dd 06b0026bah
+dd 05a9bba11h
+dd 0c0e76e29h
+dd 0075962b9h
+dd 026ae20ceh
+dd 0fd4f5cabh
+dd 0db7bfbc8h
+dd 0924ab909h
+dd 0135d9596h
+dd 01c5a16cch
+dd 053487759h
+dd 01cd233d0h
+dd 0fe48b7fch
+dd 0494aa1cch
+dd 0dbbdc3f7h
+dd 041d69916h
+dd 06ff27d5ah
+dd 06fb90d80h
+dd 096e9063fh
+dd 0ec5ecb32h
+dd 0a309edcfh
+dd 0506e0f59h
+dd 06a42dee0h
+dd 05d031888h
+dd 0a14d863eh
+dd 0a5f51599h
+dd 0010e9f0ch
+dd 01ee839c0h
+dd 02e7041bdh
+dd 0f391ebedh
+dd 03e81bb58h
+dd 04f8dd858h
+dd 0b9eb9acch
+dd 0f6b1161fh
+dd 0239a2820h
+dd 02df574fch
+dd 0fe4161f7h
+dd 08ea3eeefh
+dd 037ab64b2h
+dd 099d16157h
+dd 001c315a6h
+dd 086254a85h
+dd 00d89e5ech
+dd 047736825h
+dd 0cf005bddh
+dd 0090b38dch
+dd 057f97936h
+dd 062f1288dh
+dd 07920198dh
+dd 0758501c5h
+dd 02bdce784h
+dd 012ba0168h
+dd 0e96ef40fh
+dd 07a7f9705h
+dd 041d10428h
+dd 0f1ae662dh
+dd 01e6db912h
+dd 036ee0fbdh
+dd 03eeb61ebh
+dd 0a6defa3bh
+dd 0ad51c4ech
+dd 06d497c6ah
+dd 09340dfa9h
+dd 03beb53bah
+dd 0f040c16fh
+dd 0450b0ea1h
+dd 062ac7771h
+dd 075b05fcfh
+dd 0d38453f1h
+dd 0d25669e7h
+dd 0d03cfe6bh
+dd 0b176c1d4h
+dd 0a4ca837bh
+dd 0281ccb6fh
+dd 043d21370h
+dd 05fb40383h
+dd 0ec7e2177h
+dd 0cfb4045fh
+dd 047af77edh
+dd 05bc0e84eh
+dd 04909d584h
+dd 01501f34ah
+dd 0faad3665h
+dd 0430046e3h
+dd 0f589d042h
+dd 00a3b7b6eh
+dd 04f553fa3h
+dd 0f4a7f9b2h
+dd 0d4e01e8bh
+dd 09474b775h
+dd 074f88450h
+dd 061552ad1h
+dd 092c72ce2h
+dd 0a47cb3c5h
+dd 07f5f32d3h
+dd 02ea41d94h
+dd 013af3f5fh
+dd 00984324dh
+dd 0d301fe2eh
+dd 04e2b7454h
+dd 06a957cd0h
+dd 05659f657h
+dd 06ef61a6ch
+dd 010f7a2e0h
+dd 0fbc50fe9h
+dd 03890bbaah
+dd 0538fb7b1h
+dd 0efd73522h
+dd 03dca2154h
+dd 0e723d4c2h
+dd 04ffe440dh
+dd 0c74b10cbh
+dd 06d798ec6h
+dd 03656f4c9h
+dd 00ac319d0h
+dd 028afbd14h
+dd 051161a8ch
+dd 05135ab90h
+dd 07dda199fh
+dd 0227a989bh
+dd 08b38498dh
+dd 0e33ac889h
+dd 00822a4afh
+dd 0a3549bf2h
+dd 0be5cbc83h
+dd 060c950e2h
+dd 0212a902ch
+dd 0d0427005h
+dd 081e1fc6ch
+dd 0bc5a9acah
+dd 07b9c7343h
+dd 0b730aadch
+dd 05f0a8f65h
+dd 024353afch
+dd 00401d4f1h
+dd 09b0e1b61h
+dd 087280ef5h
+dd 0f173d10fh
+dd 07e59e9a0h
+dd 0e4a00cd7h
+dd 038726566h
+dd 05d156b4ch
+dd 0601c0246h
+dd 08ab9abf6h
+dd 083ca8e8bh
+dd 0c6b1a663h
+dd 0db610700h
+dd 0990328b9h
+dd 0553f5968h
+dd 0ffca1575h
+dd 08ee5502ch
+dd 06dab2c51h
+dd 07ddde2ebh
+dd 00ffe27e6h
+dd 04bdc851ch
+dd 0e9147a86h
+dd 0d0f85250h
+dd 03bfb4b8ch
+dd 0847e0477h
+dd 05a4f0c65h
+dd 08fe6288fh
+dd 0bb2302e5h
+dd 0d5078fd3h
+dd 05d052419h
+dd 001a8890ah
+dd 09698bb9eh
+dd 0e0c7c7d4h
+dd 078a4de6eh
+dd 02a0aec74h
+dd 0e1ac704dh
+dd 098c0571fh
+dd 046e4ca9ah
+dd 00259692dh
+dd 0bb677b0bh
+dd 08dcdc1f2h
+dd 04092999dh
+dd 0c16f9102h
+dd 034f3b69eh
+dd 0c45cb4e7h
+dd 03bb95511h
+dd 03210108ah
+dd 04b01a171h
+dd 0e8b41bf0h
+dd 07188a304h
+dd 047d9d757h
+dd 08bd2b9a7h
+dd 0d069793fh
+dd 0a424ca3ah
+dd 099c4d4f9h
+dd 08bfe2022h
+dd 031f8b194h
+dd 0fa19f942h
+dd 024d3be68h
+dd 0dc0ba515h
+dd 0d4b99de2h
+dd 06844b47fh
+dd 079d1823dh
+dd 049a83647h
+dd 009bc4dc0h
+dd 0ba4e7c79h
+dd 0e6096e7ah
+dd 056f50437h
+dd 0d10c20e0h
+dd 05ad52dc5h
+dd 0f07109c8h
+dd 0fb1cc0e6h
+dd 0bbe75780h
+dd 05e506bd3h
+dd 00110d885h
+dd 04b289f56h
+dd 0cd324df4h
+dd 0e560688bh
+dd 0e5cd5ba6h
+dd 03a745ce5h
+dd 0aa1c8a9ah
+dd 02b1df9d3h
+dd 0e90675b2h
+dd 058633182h
+dd 0754586beh
+dd 016b99b80h
+dd 053bc78c9h
+dd 08d372547h
+dd 06207e530h
+dd 0246f5867h
+dd 0b6fca901h
+dd 0b9c5f6e9h
+dd 044987119h
+dd 0d4fab99fh
+dd 050b4c408h
+dd 0acb9454ah
+dd 07bf24830h
+dd 0304a7c07h
+dd 00493ea4ah
+dd 016222a3bh
+dd 01980f53ch
+dd 020cff184h
+dd 08eb60ecah
+dd 0c55b7750h
+dd 0a7aef7d1h
+dd 02761e48ah
+dd 013b3ed54h
+dd 0b0af45f8h
+dd 0d398f361h
+dd 087b936f5h
+dd 012699e0bh
+dd 04e262fdbh
+dd 0db6fe478h
+dd 089dafb41h
+dd 01fe83ff0h
+dd 0f11e7c18h
+dd 01b72bc17h
+dd 08b8ccf41h
+dd 0b11f019bh
+dd 05551eb1ah
+dd 0fafea0d0h
+dd 085ef5167h
+dd 0c78dd8d5h
+dd 011518210h
+dd 0297508fch
+dd 0adff3de3h
+dd 08f67826eh
+dd 0b145cb50h
+dd 02b58ccd5h
+dd 0f5b1f45dh
+dd 076024f6fh
+dd 0b6ec6acdh
+dd 02b60c680h
+dd 0202a86afh
+dd 0ae182588h
+dd 016cffb69h
+dd 08881e3f3h
+dd 07655b3a7h
+dd 0b7b70ee4h
+dd 088209a87h
+dd 0954f9455h
+dd 0f27276cfh
+dd 05c1a54c4h
+dd 03aad096eh
+dd 0fd5d0738h
+dd 093c6d62eh
+dd 03901fac4h
+dd 021381c67h
+dd 0c55d8d03h
+dd 0523c7909h
+dd 0be31a9b6h
+dd 0e9793d45h
+dd 011cdd6ech
+dd 0ae0f0f96h
+dd 09f354976h
+dd 08f6e7619h
+dd 07db57f4ah
+dd 0cb4687b1h
+dd 02e493f8ch
+dd 00a221ab9h
+dd 0369e88aah
+dd 052b46c24h
+dd 05f1ef6a7h
+dd 0079efbf9h
+dd 0560d7cefh
+dd 024008d4fh
+dd 0a2d22d08h
+dd 0f191c0a8h
+dd 0216146d7h
+dd 08a9dc710h
+dd 00b740033h
+dd 080371f6dh
+dd 01c730ff6h
+dd 00388d5f2h
+dd 082b8806ah
+dd 0fac4d9d5h
+dd 0e79bfc3dh
+dd 0fb48fe9dh
+dd 0887e7eedh
+dd 0dcdbd5cdh
+dd 0d4675b48h
+dd 05f719fd1h
+dd 0996a7dceh
+dd 0973548edh
+dd 02bb50e2fh
+dd 058c34675h
+dd 0cccbf154h
+dd 07938f95dh
+dd 008376979h
+dd 0f140ba8eh
+dd 05c5e708fh
+dd 0c14f15d1h
+dd 065ac999fh
+dd 0221d2db9h
+dd 09a8ec907h
+dd 05542a121h
+dd 03887c678h
+dd 0da94d97ch
+dd 0738ed7bah
+dd 097593d46h
+dd 00911a783h
+dd 08689bb53h
+dd 0c58dbd15h
+dd 098191f7eh
+dd 01b39c5a8h
+dd 062c9abc5h
+dd 054bda0d9h
+dd 09242f648h
+dd 057054177h
+dd 09371db09h
+dd 07c5735f8h
+dd 0fd320ffdh
+dd 0e45f8d57h
+dd 0a3328219h
+dd 0a42a335eh
+dd 047266bceh
+dd 00e74bceah
+dd 0ba45e5f8h
+dd 0426c7dcdh
+dd 043f07627h
+dd 0c986043fh
+dd 0b9d9a7eeh
+dd 01d677367h
+dd 047340408h
+dd 0a7960829h
+dd 02d5ed0e5h
+dd 000dd0117h
+dd 0a231ace2h
+dd 06661a9c7h
+dd 0c2d0f6afh
+dd 07f8373fdh
+dd 00659d90bh
+dd 03ed0bbdbh
+dd 014624093h
+dd 0ef27488eh
+dd 04bafc767h
+dd 0fbee832eh
+dd 0ea5778ach
+dd 0ba05376ah
+dd 0ad94660eh
+dd 07bf57c5bh
+dd 0ab02b312h
+dd 05ac602e3h
+dd 0e4706ab8h
+dd 03b3c8c55h
+dd 00e9e6b51h
+dd 0ac04a414h
+dd 0f65b12c2h
+dd 0594a007bh
+dd 099167865h
+dd 0c2f155b4h
+dd 00c7b1f1fh
+dd 0a8250280h
+dd 07ac72e38h
+dd 0eed8f331h
+dd 0bdcadbeeh
+dd 073ea956bh
+dd 0503f3a7ah
+dd 0d110b849h
+dd 03c0782b6h
+dd 0101f9736h
+dd 0e1c5ee10h
+dd 0cf54939bh
+dd 02ac60d22h
+dd 00710900fh
+dd 007aa4b20h
+dd 01e8c028bh
+dd 042ff4f7eh
+dd 0f43f1219h
+dd 0f0d41902h
+dd 0e05a35fdh
+dd 025c0e882h
+dd 09da1da04h
+dd 084eb651dh
+dd 0aea62a28h
+dd 056eedb40h
+dd 0466b6b90h
+dd 0802211e1h
+dd 0cb9d1a03h
+dd 08c8edd61h
+dd 0644f5042h
+dd 0d956b21ch
+dd 0f3489456h
+dd 0c29cd09eh
+dd 05dfecf52h
+dd 06412d2a0h
+dd 0666a75adh
+dd 067307442h
+dd 070746abch
+dd 0e6b85039h
+dd 000eca462h
+dd 099a24317h
+dd 0cadb9a65h
+dd 052b80672h
+dd 0f06c6b15h
+dd 090ca4ca5h
+dd 0b889f7d4h
+dd 0867e7e17h
+dd 03ef1196bh
+dd 0d1dffad7h
+dd 0bc1aef68h
+dd 0eb02d8bah
+dd 023a60238h
+dd 07489b043h
+dd 03989bc23h
+dd 067bbe28eh
+dd 08e1cc1bdh
+dd 0e3f4fb2eh
+dd 04fbd50c5h
+dd 023697efbh
+dd 0208dd79fh
+dd 036fc3802h
+dd 000dd33a7h
+dd 0d232e51ah
+dd 097e4f483h
+dd 0dd4c0fcah
+dd 0f24d203bh
+dd 0f284500dh
+dd 06a2fda15h
+dd 0c31d4b90h
+dd 05ece1874h
+dd 0ee8f2528h
+dd 0b79202bch
+dd 0442900f2h
+dd 075037273h
+dd 04c738624h
+dd 02b178318h
+dd 0b6a0dde1h
+dd 082ad1e8eh
+dd 0657de418h
+dd 0a178819bh
+dd 0afa05102h
+dd 0c377855ah
+dd 02fe35c1ch
+dd 03e632002h
+dd 0e89d0cc9h
+dd 0b7c53ce6h
+dd 0914c337fh
+dd 0da700efeh
+dd 0e65cf00ah
+dd 00df70685h
+dd 05c88ee52h
+dd 0d53b721ch
+dd 00bfa47c5h
+dd 0de83f1eah
+dd 086e0f65bh
+dd 08e2b6d43h
+dd 07ed97a3dh
+dd 0066a769bh
+dd 0790e1e02h
+dd 0e6ba17ddh
+dd 0a87e6004h
+dd 0a674d1b8h
+dd 01698b9c3h
+dd 0fdf12b9fh
+dd 0c9b12165h
+dd 08f3e37c6h
+dd 0662d479ch
+dd 04a621fa7h
+dd 03d92af14h
+dd 035672652h
+dd 03ebba0a0h
+dd 0d2528dbah
+dd 0148ac754h
+dd 08f70d04dh
+dd 0336c0c19h
+dd 06319ccbfh
+dd 0c802d53eh
+dd 092a16607h
+dd 0574572e1h
+dd 039132732h
+dd 063e17860h
+dd 070c5e08dh
+dd 017dde8d8h
+dd 0314b6bceh
+dd 075a141b3h
+dd 009a18d8bh
+dd 0e6bd7d55h
+dd 0c1dd6348h
+dd 02dfd45d3h
+dd 09fb439beh
+dd 0a9ca460bh
+dd 034232a57h
+dd 09ee8d767h
+dd 07b948e65h
+dd 04a99fe6ah
+dd 09e76bd17h
+dd 049594b05h
+dd 00cb30d85h
+dd 0b66bac20h
+dd 0b70e4850h
+dd 0a0bb6ee0h
+dd 07f49b7ach
+dd 0c5b5ad1dh
+dd 06e36334dh
+dd 04ad55985h
+dd 0f56ece7ch
+dd 03fd3feffh
+dd 0c7b99576h
+dd 062d0c2beh
+dd 084c0a192h
+dd 0480122e0h
+dd 0ee8bf0feh
+dd 08717eec3h
+dd 0b65171beh
+dd 088e8c886h
+dd 0513dae4ch
+dd 06a68b8beh
+dd 0b952b2a4h
+dd 0d3cfd854h
+dd 0a7b0388dh
+dd 0f851802fh
+dd 008083eebh
+dd 04aefd67bh
+dd 0d050386dh
+dd 06e798b71h
+dd 0da1caa20h
+dd 04ae32a0ah
+dd 04d6b781fh
+dd 0e35cf61eh
+dd 0f00d715ah
+dd 0a7568061h
+dd 04c796318h
+dd 035e28eb9h
+dd 0fefa2796h
+dd 00ddcc948h
+dd 01797a033h
+dd 0e1c185c9h
+dd 09702cd0dh
+dd 0149f55d8h
+dd 0f7ff2509h
+dd 03be4c61eh
+dd 04303bdeah
+dd 0304c22dfh
+dd 0d0e26015h
+dd 05e2a0711h
+dd 0ecab3954h
+dd 0d29a5368h
+dd 04400227eh
+dd 0a685128ah
+dd 0a5d42817h
+dd 0e1ccd7f9h
+dd 07d759767h
+dd 01e10c965h
+dd 04a13406eh
+dd 052f23b2ah
+dd 0c3d15958h
+dd 037702dd4h
+dd 082f119e5h
+dd 09fa02ca5h
+dd 007a2b8a4h
+dd 0fa5a2c3eh
+dd 08115dda2h
+dd 0a6c143fch
+dd 0bf3707c1h
+dd 0276019c3h
+dd 02c60aedbh
+dd 09dbbb8a8h
+dd 0aee492d0h
+dd 08f558bd0h
+dd 0e1c1b041h
+dd 04c932365h
+dd 0819d332ch
+dd 04e233f90h
+dd 0f6df4cb2h
+dd 0ff56e098h
+dd 05a913d7fh
+dd 096fad187h
+dd 0097df8fbh
+dd 01e244395h
+dd 067f77d5dh
+dd 0302a0881h
+dd 0a05c6e20h
+dd 055dd783ch
+dd 06ff14e3ch
+dd 086dadc0ch
+dd 00853b641h
+dd 0d91f0004h
+dd 01b7a6451h
+dd 0a6a6ebd0h
+dd 0046d5beah
+dd 0870304e6h
+dd 07eb28b0dh
+dd 03234cf68h
+dd 02d4c5ad0h
+dd 0b6f2c123h
+dd 0341b2417h
+dd 09acab1ebh
+dd 08d447af3h
+dd 09872e6ech
+dd 0e5a88704h
+dd 0efbcb0fch
+dd 07127be31h
+dd 03ce5bc82h
+dd 09248b885h
+dd 06e1cbcdah
+dd 0ddbc2afah
+dd 0c067dfd1h
+dd 0e8edf116h
+dd 0b7161affh
+dd 070558c0dh
+dd 02be8fb51h
+dd 0cc72bb8bh
+dd 0daba2923h
+dd 03cb38530h
+dd 0b10478b5h
+dd 0b094e7b0h
+dd 08227c115h
+dd 089f87e60h
+dd 0ee2d810fh
+dd 0ef98cdf4h
+dd 0f0b652b9h
+dd 01d33585ah
+dd 02363c45eh
+dd 0ea575012h
+dd 0f60f2c62h
+dd 0d2063188h
+dd 0eaff3dfbh
+dd 023023edch
+dd 0dab57aa9h
+dd 0ad004665h
+dd 0a6673193h
+dd 0a9d24e37h
+dd 018b77e93h
+dd 0251150d9h
+dd 0d896b01ah
+dd 0bc0c9e7ch
+dd 0e07c97e4h
+dd 09d0ff1c5h
+dd 0bb50d134h
+dd 0968a4e96h
+dd 0d29aca45h
+dd 0ccd48246h
+dd 03f7f541ah
+dd 0f6a7fc48h
+dd 0a6c4bcd7h
+dd 0ae997dd9h
+dd 0c1abf0d8h
+dd 0c01dcc66h
+dd 06e31db97h
+dd 0ab2c388ah
+dd 0746cbdbfh
+dd 01c1b8da4h
+dd 02e549926h
+dd 0917649fdh
+dd 01f9dcefah
+dd 089daefb9h
+dd 0c21fbd4bh
+dd 0c1aff892h
+dd 0dd7eb343h
+dd 03246de6dh
+dd 03bef1939h
+dd 0e1785389h
+dd 07bf2be87h
+dd 033bf11f4h
+dd 0fea56b65h
+dd 03953268bh
+dd 049179050h
+dd 0641fde3bh
+dd 03f27cad6h
+dd 0f0ba6c89h
+dd 026281294h
+dd 0f59bea34h
+dd 03b04d315h
+dd 070ff32f3h
+dd 06ed7952bh
+dd 0a39ba757h
+dd 063f0c171h
+dd 05bc31fe7h
+dd 043ee078fh
+dd 012c68a04h
+dd 013c5aa65h
+dd 0b76eea68h
+dd 0d5de30f7h
+dd 034fb0244h
+dd 05c79ac70h
+dd 016058069h
+dd 0f369b8b1h
+dd 000bd4b6fh
+dd 0787744e7h
+dd 0f49764a3h
+dd 009ed591ch
+dd 04a2d99b2h
+dd 0d3a1c693h
+dd 010ced311h
+dd 073a6f0deh
+dd 0993d6ee8h
+dd 0258e46f1h
+dd 013fd72b2h
+dd 06f4207d4h
+dd 062704995h
+dd 0e1dad1cah
+dd 0783a485ah
+dd 0a541db0bh
+dd 02bf39928h
+dd 096ac8bbbh
+dd 03bc20350h
+dd 0adfb8ff8h
+dd 0d25b15f4h
+dd 0df88ea4dh
+dd 0acbf0755h
+dd 06f06bd86h
+dd 0883d997ch
+dd 0fa6ead89h
+dd 06294c92dh
+dd 01d4a638dh
+dd 0d712d3ebh
+dd 049858afch
+dd 024ccf626h
+dd 001c5c6dfh
+dd 0c4c11596h
+dd 0ef9382a4h
+dd 04d4eaa52h
+dd 0b126117ch
+dd 08fce10edh
+dd 05957d139h
+dd 0717fddf6h
+dd 0f5864d2fh
+dd 0d4a41d15h
+dd 0d45d17d9h
+dd 04201d2b2h
+dd 01875fe20h
+dd 0a85257f3h
+dd 0fc7eae37h
+dd 03ad810c2h
+dd 059f59f5dh
+dd 0211de933h
+dd 04d71c7d1h
+dd 099758ca9h
+dd 0cd0ce58eh
+dd 0b1a347c7h
+dd 01753bc9dh
+dd 029e15ac2h
+dd 07e64b351h
+dd 00644aa25h
+dd 0353b126eh
+dd 02fe18fcch
+dd 0926d9cdfh
+dd 0446b1effh
+dd 0cfd394c2h
+dd 077be8d45h
+dd 04ab67681h
+dd 05b89aa4dh
+dd 0759dcc5eh
+dd 06509571bh
+dd 0b7bb63d5h
+dd 084977b29h
+dd 05bfd2941h
+dd 02debbe77h
+dd 057b2ba82h
+dd 098d755cah
+dd 0fa3d414dh
+dd 028452127h
+dd 0a4948d91h
+dd 08118dce9h
+dd 0620ea017h
+dd 070fe38ffh
+dd 0868857f0h
+dd 07e56fc99h
+dd 09e8e7289h
+dd 02e197a26h
+dd 02a98165eh
+dd 059f9a15dh
+dd 03574403ch
+dd 085fe5c9ch
+dd 0136962a7h
+dd 0575c14b1h
+dd 0a8aa4d17h
+dd 01aef8704h
+dd 096b8d711h
+dd 0e8cc48cdh
+dd 0f1ef4c46h
+dd 06bf3c0bdh
+dd 07b95dcffh
+dd 0f93342b9h
+dd 04b9fdd61h
+dd 07cfec1fbh
+dd 05e19f045h
+dd 05122c9d7h
+dd 0b1a54b6ch
+dd 0a0a580c7h
+dd 02092fce8h
+dd 0ed21caa7h
+dd 005ab2ea8h
+dd 0600a05d6h
+dd 00e3fbf68h
+dd 0e84a2150h
+dd 0766b3eb8h
+dd 00c3335a4h
+dd 0272de6efh
+dd 08404b4d3h
+dd 03c566ae9h
+dd 0b29632c9h
+dd 0951853d1h
+dd 0046eb75dh
+dd 07a821b49h
+dd 0f4fc60f1h
+dd 07c73824bh
+dd 073de723ch
+dd 049e69619h
+dd 0599cd7d2h
+dd 0193526b1h
+dd 0240e66b8h
+dd 06d99074bh
+dd 02d25df71h
+dd 0705af958h
+dd 023a81886h
+dd 026972394h
+dd 0802ad9d6h
+dd 06b2a14d8h
+dd 075318cc9h
+dd 0592ba5fah
+dd 0e1de1fe9h
+dd 0fffba1d9h
+dd 09aa5638dh
+dd 07790bde0h
+dd 0dadd1cbbh
+dd 0a1fe57adh
+dd 01406af32h
+dd 08d2e65eah
+dd 0b3f72ea0h
+dd 020074407h
+dd 05406c5bah
+dd 09d30325eh
+dd 05b9d4a44h
+dd 0f49f5d9ch
+dd 045f70e6bh
+dd 0751f8f24h
+dd 0e8e2877dh
+dd 081064927h
+dd 0497b2afch
+dd 0732e1dd8h
+dd 09492b076h
+dd 07eb21245h
+dd 0f1c272cdh
+dd 04fbad341h
+dd 08d6852c7h
+dd 077202ac2h
+dd 0a21ca045h
+dd 056bab582h
+dd 039c0129fh
+dd 00f1bcc44h
+dd 03d35b8e8h
+dd 00bd8260ch
+dd 07e914be5h
+dd 07e72df62h
+dd 0be91e0fch
+dd 03c5fca79h
+dd 0262122ech
+dd 0014df04dh
+dd 0d06675cdh
+dd 034b49e83h
+dd 015346d9bh
+dd 037a6fd61h
+dd 07b724935h
+dd 009711144h
+dd 0d23e1c9dh
+dd 0e8fc3c2ch
+dd 09dcd2a2eh
+dd 09d12a94bh
+dd 0efef14beh
+dd 000e0075dh
+dd 039f38120h
+dd 0c20baf1dh
+dd 0c398d074h
+dd 0a7591e30h
+dd 0426b69fdh
+dd 087334dfch
+dd 03c9dc0a5h
+dd 0d8e4b0f8h
+dd 0513ed6adh
+dd 019b31558h
+dd 016857eech
+dd 07831d9c8h
+dd 01d9e1bdfh
+dd 0467d1022h
+dd 0cb9aa9a3h
+dd 05938fcffh
+dd 0d46105d0h
+dd 03f3283b3h
+dd 03a03b7f6h
+dd 0a081f790h
+dd 072cef2f5h
+dd 0f3fdb36eh
+dd 05b0ac28ch
+dd 0669c7cc9h
+dd 0de5a1395h
+dd 071048824h
+dd 0035bb69bh
+dd 07f9cb181h
+dd 05d0f0d70h
+dd 0b53737d1h
+dd 03b130766h
+dd 0d6e7e4fbh
+dd 0fe454f3ch
+dd 0c18267fdh
+dd 0290eaa93h
+dd 0e2ec805eh
+dd 0879c6016h
+dd 034a88b23h
+dd 0b4a4dd1dh
+dd 0f6be076dh
+dd 0a62d4223h
+dd 0640e4a03h
+dd 04d2dbd9fh
+dd 071bff929h
+dd 0a7a59c00h
+dd 033d483f4h
+dd 00b605bcch
+dd 0eb92c26bh
+dd 0015decbbh
+dd 047ed453eh
+dd 03c01191fh
+dd 0ac22eb9bh
+dd 01e825eabh
+dd 0820d43a1h
+dd 084668dd8h
+dd 0200ae7f8h
+dd 01477264eh
+dd 099027432h
+dd 00d9d7bc8h
+dd 05ac7e761h
+dd 07c007f96h
+dd 04c3ff9e1h
+dd 0a5c3a111h
+dd 05f7beebbh
+dd 05f64efd1h
+dd 051ba1a14h
+dd 000426970h
+dd 036569471h
+dd 02fe7ddc9h
+dd 0b85d95c5h
+dd 03052efdbh
+dd 09b4717bdh
+dd 0d59b1553h
+dd 0c2bd7808h
+dd 0079ddd9fh
+dd 019a567afh
+dd 07783caadh
+dd 051188413h
+dd 0f664f497h
+dd 0819374eah
+dd 0368b0147h
+dd 0dbffcf42h
+dd 012f16623h
+dd 07d7580e2h
+dd 087dc2674h
+dd 0bc5252cdh
+dd 07ddabde5h
+dd 08e8a72c9h
+dd 082cd088eh
+dd 0087c7966h
+dd 0060e60e1h
+dd 0b9219114h
+dd 01b0eeaf9h
+dd 0900ddac3h
+dd 084b618deh
+dd 00188560ch
+dd 03831e858h
+dd 053e53ffeh
+dd 0604e2bc5h
+dd 01cb0afb6h
+dd 0a6fb5491h
+dd 0f2b2abddh
+dd 0acae8e01h
+dd 0d440967ch
+dd 0dc867c9ch
+dd 014d5b841h
+dd 03373d28bh
+dd 02e847ff0h
+dd 058785eb7h
+dd 0d3870199h
+dd 0a6f36e31h
+dd 0da2af2fah
+dd 000613595h
+dd 0d63aedd0h
+dd 0bd51993dh
+dd 0221baad4h
+dd 011ada6f3h
+dd 0486e7f79h
+dd 0388542b2h
+dd 0206c4691h
+dd 0d06975f1h
+dd 0b3d1d562h
+dd 0e4693d5ah
+dd 0979d866dh
+dd 05d4ea882h
+dd 0dd5ca4f6h
+dd 09ac18187h
+dd 0b870ac0dh
+dd 012479ae7h
+dd 0c0b81746h
+dd 046f86731h
+dd 0777b6e9ch
+dd 0080e0bc6h
+dd 0c17958d8h
+dd 097a5e32bh
+dd 0f1daa606h
+dd 097569180h
+dd 0de2b45a3h
+dd 0d611fd9ch
+dd 0f841be69h
+dd 024dbcaebh
+dd 053cb5d31h
+dd 0593e5fc3h
+dd 0f3edb2d5h
+dd 0d5593844h
+dd 0a5f6547dh
+dd 018c1dadch
+dd 0bdec67e7h
+dd 076fb17d0h
+dd 0ebb4e7d0h
+dd 0f4b89b8dh
+dd 09a7d7bceh
+dd 0a2b4c092h
+dd 01b8e5dcdh
+dd 092d5836fh
+dd 0682b7fc1h
+dd 0c7b9da2ch
+dd 08404e7b6h
+dd 0c674fee5h
+dd 0d24777e8h
+dd 04e5a8d22h
+dd 0e203de9dh
+dd 034ba149ah
+dd 0ca291247h
+dd 05323be69h
+dd 00a0c4574h
+dd 00d65ebd1h
+dd 000145078h
+dd 072234f1ch
+dd 0fbb6a11fh
+dd 03872e5aah
+dd 03b6624d7h
+dd 03fc4f505h
+dd 054c22b40h
+dd 03a7f8768h
+dd 091c6e657h
+dd 053ef510ah
+dd 033275ab6h
+dd 0711f4357h
+dd 08830b7ceh
+dd 0af61c703h
+dd 0812554b4h
+dd 0ee3f9323h
+dd 0c86f724dh
+dd 0894d47e6h
+dd 060a71648h
+dd 06e8df697h
+dd 06fa492b8h
+dd 0c0cbff1fh
+dd 0a2c6f963h
+dd 0f745ec19h
+dd 01a5d0fadh
+dd 0046143e1h
+dd 0bf0bdb02h
+dd 0f24d8aa8h
+dd 0410306cah
+dd 08145ef7bh
+dd 070e1fabbh
+dd 03a8df9edh
+dd 0102d97c3h
+dd 0a5a708ceh
+dd 0324855f2h
+dd 080422cb2h
+dd 0a79512f5h
+dd 0f276feaah
+dd 0d6af0305h
+dd 01f19c0adh
+dd 0a8a688f7h
+dd 04de4dd32h
+dd 02283142eh
+dd 086ddf4e4h
+dd 05f2f01a8h
+dd 08e0d9568h
+dd 0b79fba40h
+dd 0cb78f2efh
+dd 0bb9ef2f1h
+dd 07032275fh
+dd 0b66adb54h
+dd 0d6762c03h
+dd 0baa8b728h
+dd 0ece46ee0h
+dd 06fc3b495h
+dd 0bda495f8h
+dd 07b6a886eh
+dd 06263ca29h
+dd 0124ab45ah
+dd 00b4b2b12h
+dd 0752b5477h
+dd 05b355442h
+dd 01656a88bh
+dd 02227f078h
+dd 0f4322cadh
+dd 0be568b7ah
+dd 02bfe66dah
+dd 015c51810h
+dd 0243b968eh
+dd 0fad42c49h
+dd 08baa8d8eh
+dd 020a9f9bbh
+dd 00b171c5eh
+dd 0bcac555bh
+dd 0a98ca096h
+dd 0018e6287h
+dd 0de9caf7dh
+dd 063732b40h
+dd 0b5b54d70h
+dd 081e5d34eh
+dd 099bc760bh
+dd 0019762eeh
+dd 0f1fe6c97h
+dd 020b82e22h
+dd 05541ae1eh
+dd 0a0392cceh
+dd 0ffe380fch
+dd 021496046h
+dd 0391e41a6h
+dd 0d4344fc6h
+dd 00d6d50c2h
+dd 08ec97591h
+dd 039e9412bh
+dd 08827619fh
+dd 0b21747e8h
+dd 0183d5fddh
+dd 08ccf1c01h
+dd 0bc6d7cd4h
+dd 0e42427c4h
+dd 067b8cd4eh
+dd 065fcc288h
+dd 021f34671h
+dd 0d0e26c42h
+dd 094458721h
+dd 082207594h
+dd 0f9ee96ach
+dd 0438faabfh
+dd 02999594bh
+dd 0df670cc4h
+dd 01983f8c2h
+dd 080b7136ch
+dd 0f3dd3103h
+dd 0931f1403h
+dd 01d2b79c8h
+dd 006e5cba5h
+dd 0364a4268h
+dd 09b7afe35h
+dd 001b02dc4h
+dd 000e6c5a2h
+dd 0218f9f2eh
+dd 012f93377h
+dd 0b063b124h
+dd 070320071h
+dd 02ac5a5e5h
+dd 055848cf0h
+dd 003026b9fh
+dd 0108b04fah
+dd 099f82efbh
+dd 0ef1eb8e9h
+dd 0b31dd9c5h
+dd 010db4b60h
+dd 0b3baa230h
+dd 01a3475bfh
+dd 055bb0916h
+dd 0ec074dfeh
+dd 0e5befa0fh
+dd 0e139b3bfh
+dd 00e3cf4b3h
+dd 08e4dcd66h
+dd 0865a2b75h
+dd 0eacf0899h
+dd 0884b7d23h
+dd 0d1784c1eh
+dd 0b74c9141h
+dd 02121d7e2h
+dd 07ec65c81h
+dd 0b42df3fbh
+dd 0c350abd4h
+dd 0a48c8f5bh
+dd 05d22f0d7h
+dd 058256675h
+dd 0506c58e1h
+dd 021d0adb9h
+dd 04f647514h
+dd 00f1e4d7dh
+dd 09d5478b0h
+dd 0aed4ed64h
+dd 0b117aae9h
+dd 0aa2433e0h
+dd 0dabd30adh
+dd 074b6272fh
+dd 0fa7958f6h
+dd 060735d5bh
+dd 086539075h
+dd 0f8d3ecc2h
+dd 0df663537h
+dd 0e123deb7h
+dd 074578091h
+dd 080231686h
+dd 08d799b44h
+dd 0b535aaaah
+dd 057c7720ch
+dd 05f444fdah
+dd 0b79630a8h
+dd 0af2d0086h
+dd 02b834977h
+dd 0ab1ba6f3h
+dd 0a128eb5fh
+dd 01076ee26h
+dd 0b6405c5ah
+dd 014eec942h
+dd 0b6b8dbc4h
+dd 06a93671fh
+dd 0be6bb5e1h
+dd 0b9f627e0h
+dd 059b03fe6h
+dd 032c78bc8h
+dd 049de1131h
+dd 05a30c235h
+dd 00417f9cbh
+dd 0652b79bdh
+dd 0d253de36h
+dd 09e42dee2h
+dd 073ad0ab9h
+dd 0a473f4a9h
+dd 0434a05cah
+dd 0a3fa84a9h
+dd 062fbdde8h
+dd 0c80461c3h
+dd 047e6e795h
+dd 0847e4317h
+dd 04f070ca2h
+dd 0799b60b5h
+dd 07b3b8c46h
+dd 0203ebcc0h
+dd 0fa948c36h
+dd 01935ff04h
+dd 02e1bb060h
+dd 0b2d03a4ah
+dd 033468b4dh
+dd 0675edcb1h
+dd 0bec0147eh
+dd 0e6cda658h
+dd 0d98089c8h
+dd 0861ccab4h
+dd 0bc137ce1h
+dd 02877fb3eh
+dd 018baecadh
+dd 05fb29a36h
+dd 0ec4fa7cdh
+dd 0aac6c4e9h
+dd 011025955h
+dd 0c51e19beh
+dd 0cdfb8fedh
+dd 04fd83beah
+dd 0c5e7fde1h
+dd 09f8a785ch
+dd 058b8a731h
+dd 0a81553d6h
+dd 0d66ebe62h
+dd 091beb804h
+dd 02f8a5473h
+dd 0e6cbf993h
+dd 05c69e8cah
+dd 0668c67eah
+dd 0bf518261h
+dd 0fc2089beh
+dd 03368f7f4h
+dd 0e78bad15h
+dd 0b09ccf5ch
+dd 0b94f6a8dh
+dd 0c046a9e1h
+dd 03176fe00h
+dd 02a0cbf6ah
+dd 09db3fb72h
+dd 0ac5bbd72h
+dd 0959c677dh
+dd 0f7ce5caah
+dd 03809f66dh
+dd 064de089fh
+dd 073fd3ab1h
+dd 019cce261h
+dd 0105e4831h
+dd 0535f122eh
+dd 0b61a0274h
+dd 0f453fd43h
+dd 07a7506e5h
+dd 001d24b45h
+dd 016799484h
+dd 03b459ec8h
+dd 0cd2423a9h
+dd 08a606736h
+dd 05f64e228h
+dd 0adf1e117h
+dd 061d200a3h
+dd 0d32f66c9h
+dd 0f5957798h
+dd 002036cadh
+dd 0c37cd455h
+dd 0cd5962e9h
+dd 07dce670dh
+dd 037cbbc07h
+dd 0a5613df4h
+dd 0a53171bdh
+dd 07fdc6b68h
+dd 0e4d570d5h
+dd 01a33f99fh
+dd 06e1d9dach
+dd 0682a70a1h
+dd 0b975574ah
+dd 0414662a5h
+dd 041d25bf6h
+dd 0906fc12ah
+dd 05a3b41e3h
+dd 019a0ff17h
+dd 07adc469dh
+dd 0b681302ah
+dd 09ee27c85h
+dd 0c40a64e6h
+dd 038b54564h
+dd 01c7e3dadh
+dd 066c3799bh
+dd 01f3662f4h
+dd 0f67e09d1h
+dd 0f6681ccah
+dd 06701f3b5h
+dd 0d8234ac1h
+dd 022cd0dc1h
+dd 032c32f2ah
+dd 0333525fbh
+dd 0b5f0fd65h
+dd 0d87a4b40h
+dd 04d6fbaa9h
+dd 0c069a5abh
+dd 07324a5bah
+dd 0a827460eh
+dd 06394f5c5h
+dd 04e6c2e36h
+dd 06d482a4bh
+dd 04bc35902h
+dd 0f173c428h
+dd 076b73b50h
+dd 037c5c0c5h
+dd 0c125b2a8h
+dd 062c2a3eeh
+dd 095d46d57h
+dd 041da1a57h
+dd 0c7d07c9fh
+dd 0cd6a49d7h
+dd 000eafe05h
+dd 09e1b2041h
+dd 0fc947ac7h
+dd 0cbcdbbe9h
+dd 0113fb257h
+dd 04e830408h
+dd 0c76b3bd0h
+dd 07e0b0101h
+dd 011ab9813h
+dd 05546c116h
+dd 0325e6e3ch
+dd 0d9cb0b42h
+dd 032a04780h
+dd 05e4e0cf7h
+dd 0ac763e2ah
+dd 03c22d3edh
+dd 0718dbabbh
+dd 016992abah
+dd 030f9831bh
+dd 05bf2934ch
+dd 0c91c7379h
+dd 0aa5e9277h
+dd 0dde6feb2h
+dd 01b2af101h
+dd 09fd097d7h
+dd 09b61631dh
+dd 0afda042bh
+dd 0cd5fa5cah
+dd 0528c62c4h
+dd 001570f93h
+dd 0d8b29302h
+dd 02029e800h
+dd 0603f4f3ch
+dd 0ea90096ch
+dd 04f8607ech
+dd 0320465fdh
+dd 0df68db5bh
+dd 06388139dh
+dd 08c92062ah
+dd 03e9df6e0h
+dd 0e5da1053h
+dd 0a7c0d25bh
+dd 04f765d77h
+dd 014ddaad8h
+dd 05078ba20h
+dd 0d2ab8a35h
+dd 0f0e22c19h
+dd 0cb9f02feh
+dd 08970789ah
+dd 01ad82b03h
+dd 05b743320h
+dd 0e76db311h
+dd 04334e638h
+dd 038a1a626h
+dd 0f04c1bfeh
+dd 0542e8c8eh
+dd 08289d6d8h
+dd 073fd8b1fh
+dd 04d2e1311h
+dd 0b3977421h
+dd 02aae82a8h
+dd 0e6505389h
+dd 047240458h
+dd 013357e02h
+dd 0fdec239bh
+dd 0c8bf6803h
+dd 0beb52b1fh
+dd 038171de8h
+dd 05d6a1769h
+dd 01d53e0b4h
+dd 045b199c8h
+dd 0ef9ad09fh
+dd 054b8f6abh
+dd 0dc56182fh
+dd 028e08641h
+dd 03bb5aa02h
+dd 01fc03102h
+dd 0940d3d54h
+dd 0227920bch
+dd 069da61efh
+dd 0246705e1h
+dd 07280fd67h
+dd 0e22684c9h
+dd 0425163c7h
+dd 0854818ffh
+dd 0f3913f65h
+dd 01dcdb51ah
+dd 0d9f73d13h
+dd 00050b367h
+dd 0560c88b5h
+dd 0b3c4e421h
+dd 00c277367h
+dd 05da7301ch
+dd 0bd8c0b36h
+dd 03e14fa0eh
+dd 08e295c02h
+dd 0714bea8bh
+dd 0e9653490h
+dd 0f41c5299h
+dd 0e757182eh
+dd 074672613h
+dd 0f6d2f672h
+dd 0fca4a136h
+dd 0708ee3f0h
+dd 0d713d6c9h
+dd 05c045b76h
+dd 0e790ea28h
+dd 0b36f7699h
+dd 0a83cb9cdh
+dd 0e92af84eh
+dd 0bb3d08fah
+dd 0c66b0d28h
+dd 0f4f9a65fh
+dd 05ec93282h
+dd 064ae99e8h
+dd 0b7bc5797h
+dd 0bf3f9a7bh
+dd 06397e57eh
+dd 08f1e7c70h
+dd 0cf269bb0h
+dd 0f430b139h
+dd 0ca3cb157h
+dd 0bcc33194h
+dd 0784f0703h
+dd 040821077h
+dd 02ecf4322h
+dd 09bc0f179h
+dd 0d751702dh
+dd 00e6e891eh
+dd 08ac9a3fch
+dd 0179d3f03h
+dd 05ffa848ah
+dd 0596def54h
+dd 08d034feah
+dd 03a0fde37h
+dd 06ddf0f29h
+dd 03f9da987h
+dd 027905303h
+dd 0726a3a42h
+dd 0efd45117h
+dd 018e60733h
+dd 036f881ffh
+dd 03bf6f8efh
+dd 014f0d75fh
+dd 0847e2a5dh
+dd 02ac2b19bh
+dd 002690fd9h
+dd 0404d5953h
+dd 07c77062ah
+dd 0d945b0bfh
+dd 04246993ah
+dd 0c9b13b5dh
+dd 0c2e0eb92h
+dd 063d15113h
+dd 0514e161dh
+dd 0f6ac6f64h
+dd 07c57095ah
+dd 0e2f8671dh
+dd 0dfae5758h
+dd 077f82543h
+dd 0d904b140h
+dd 044227b41h
+dd 054714a94h
+dd 0b27d8846h
+dd 0f6725c8eh
+dd 05d10e4b1h
+dd 0a65539e2h
+dd 0f758c432h
+dd 0fcadb0c5h
+dd 00883b445h
+dd 05491decch
+dd 072fc4ca8h
+dd 01077f6c4h
+dd 0c9d6a519h
+dd 083eafe18h
+dd 0f5b331f7h
+dd 0c9636ed2h
+dd 048ef6938h
+dd 0d662b970h
+dd 0a34b2b5fh
+dd 0c3a9d55dh
+dd 0a697fc1eh
+dd 00d83be09h
+dd 0d3721d79h
+dd 08a94f253h
+dd 006c7bdf5h
+dd 0b0aeb6a5h
+dd 00edb356ch
+dd 03bc312c3h
+dd 0957aca6dh
+dd 0ae0a899fh
+dd 0fd8d3075h
+dd 09b23e27dh
+dd 00c4230f5h
+dd 0b7f985e0h
+dd 059c3482dh
+dd 0effcd1a8h
+dd 069963fcbh
+dd 0381f49dfh
+dd 0d0fd9fc5h
+dd 092da5c99h
+dd 03b7ff3deh
+dd 074b556e0h
+dd 0d4af6e67h
+dd 03693bdd4h
+dd 002da3adah
+dd 056f70c29h
+dd 0affd1e99h
+dd 0a2ba702fh
+dd 01aed5c51h
+dd 099a10faah
+dd 0e09ef077h
+dd 040d8c3afh
+dd 0a0ade579h
+dd 054a20079h
+dd 0b75ca64ch
+dd 08fbaeab3h
+dd 0e017cd98h
+dd 077d479e1h
+dd 0392f0de8h
+dd 04c3b9fd8h
+dd 0dda03c8dh
+dd 0b17ad8d1h
+dd 0548d36f9h
+dd 0d8de85e8h
+dd 0f7c700d5h
+dd 074039104h
+dd 0be67647ch
+dd 0ce58d05ah
+dd 0b885885fh
+dd 0c9a3a408h
+dd 0943a5890h
+dd 0364c9f36h
+dd 0a990bdafh
+dd 00083ec6eh
+dd 07777d11fh
+dd 062a58baah
+dd 069195324h
+dd 052e3ea64h
+dd 0c5727e6fh
+dd 047225ecah
+dd 03d3311eeh
+dd 033b2964eh
+dd 0db459ccch
+dd 03b9b7d37h
+dd 07f8917ach
+dd 0f72c4f8dh
+dd 008667803h
+dd 0b90cd72eh
+dd 0fc21b5abh
+dd 02483ae27h
+dd 005dffe99h
+dd 0f4f260fah
+dd 07024fe60h
+dd 0934199d9h
+dd 00c1f4aceh
+dd 0503280dfh
+dd 038e57377h
+dd 0261746e3h
+dd 01ab31f8fh
+dd 0a04b0be2h
+dd 0d06b7a24h
+dd 0293cf333h
+dd 05d673405h
+dd 0bd7ef49dh
+dd 016d486cbh
+dd 0e0bda6fch
+dd 0283e11c2h
+dd 076d364ach
+dd 0e02349d3h
+dd 07c938f12h
+dd 0b6764bc7h
+dd 02c8753b6h
+dd 0238ec705h
+dd 01ace2e48h
+dd 0a84dcd17h
+dd 0205a0f46h
+dd 06e67a3a9h
+dd 00a837607h
+dd 0a564579ch
+dd 0f2f00b7ch
+dd 0bed493e1h
+dd 02011b731h
+dd 0fed8ee4bh
+dd 077bc2684h
+dd 09d5f669fh
+dd 0be002b4eh
+dd 0af65d32dh
+dd 089585f01h
+dd 08b28bd92h
+dd 07a3bda4bh
+dd 005062bebh
+dd 0846adcaah
+dd 02f1715f7h
+dd 0dfde0f1bh
+dd 042d2cc17h
+dd 0b2ea11d5h
+dd 01c9b8275h
+dd 0b761580fh
+dd 0cb389322h
+dd 00dacd5cah
+dd 0b98bed95h
+dd 02bc619e7h
+dd 081c7502eh
+dd 0c92c4940h
+dd 0c2e8c37ah
+dd 0f1be8148h
+dd 0a8b05983h
+dd 03e71a8d0h
+dd 004db0838h
+dd 0f9127e84h
+dd 0b2e58ed2h
+dd 0817a7fc7h
+dd 0aee5892eh
+dd 041662995h
+dd 06a4af455h
+dd 0116dc122h
+dd 0ecd5a91fh
+dd 0561a133bh
+dd 07639116bh
+dd 0a9167605h
+dd 0323181f4h
+dd 023be3f00h
+dd 0f49f2a08h
+dd 0184ddbd0h
+dd 00217be84h
+dd 07812c5c9h
+dd 02ec65b9fh
+dd 05dbe9156h
+dd 0797c2fc1h
+dd 0c98d4fa8h
+dd 0dbb8b2a9h
+dd 0e396b90ah
+dd 095215ad2h
+dd 0e24a5891h
+dd 007a4e011h
+dd 0ef14af9fh
+dd 02d8bcf7eh
+dd 092b3d164h
+dd 04eb59282h
+dd 0d8c7c7aeh
+dd 0c6eef1edh
+dd 0a8a06491h
+dd 044221316h
+dd 058770707h
+dd 09530f532h
+dd 08bd23680h
+dd 023fa3455h
+dd 03f9c8666h
+dd 09535503ah
+dd 088637087h
+dd 0f8405531h
+dd 0c9f04853h
+dd 01a45e7fbh
+dd 0967c1d49h
+dd 073d40aa7h
+dd 0c175795dh
+dd 0b0991ca5h
+dd 0d82003dch
+dd 035099a25h
+dd 076ee5df1h
+dd 0bcd480b0h
+dd 0f711861dh
+dd 02dc1b664h
+dd 058b15b11h
+dd 085f8e61ah
+dd 0bbdd7b9bh
+dd 0a07b1074h
+dd 03f43c25eh
+dd 0b89851c0h
+dd 0cc21394eh
+dd 0eee466f8h
+dd 0525b4edfh
+dd 0fc0bdc93h
+dd 0eb57599fh
+dd 062b9ebffh
+dd 0035884b2h
+dd 0dfcb6af1h
+dd 0e72309dah
+dd 063867d2bh
+dd 05eeaf7eeh
+dd 03580465ch
+dd 0b4eef51bh
+dd 0d0aa04cfh
+dd 00b3498a8h
+dd 01023f358h
+dd 01b900265h
+dd 0a6451e15h
+dd 076810a4eh
+dd 0405e2d31h
+dd 0d92da8b0h
+dd 094f16174h
+dd 0c75c955dh
+dd 068c326bch
+dd 0a545cc26h
+dd 0fb46f3ffh
+dd 082adbdcdh
+dd 0e7a60d1fh
+dd 04dbe0068h
+dd 013341a93h
+dd 04aa171d4h
+dd 046de3a77h
+dd 0298a5f52h
+dd 0227b6f41h
+dd 0cdb0c275h
+dd 03419be5ah
+dd 02d5087bbh
+dd 0818256b1h
+dd 0f6abc195h
+dd 0cc711949h
+dd 02314c1bah
+dd 0fb5caf0dh
+dd 00975e3b5h
+dd 04163b32eh
+dd 0f3cf8417h
+dd 0dfc5ebdch
+dd 02f1210dbh
+dd 02970edbbh
+dd 00665b6b7h
+dd 00728732bh
+dd 0624652b5h
+dd 0d411c237h
+dd 005df3007h
+dd 022989ee0h
+dd 0510991d6h
+dd 0f246edc6h
+dd 0d67c7dfch
+dd 04df76a8dh
+dd 03db19746h
+dd 078b65979h
+dd 09ec1679ch
+dd 0896e6896h
+dd 0983e977fh
+dd 0869775e5h
+dd 00148ba42h
+dd 0706f4105h
+dd 05e5ca887h
+dd 039af218fh
+dd 027e84cc6h
+dd 057f858f6h
+dd 082a2753bh
+dd 0443381f6h
+dd 02cdb9a0eh
+dd 0b359ca46h
+dd 0d54f2c2fh
+dd 0efe37e1ah
+dd 0ce02321eh
+dd 0575b13c4h
+dd 0112d7922h
+dd 044a099e3h
+dd 080c55394h
+dd 079a59d63h
+dd 055962380h
+dd 05389b6b1h
+dd 0ce7c67bdh
+dd 0fda06391h
+dd 07e5b6c76h
+dd 01d28ed46h
+dd 0f291ec99h
+dd 09c49b37dh
+dd 093972bbfh
+dd 07d8811b1h
+dd 075e00639h
+dd 01c1f219eh
+dd 06857f116h
+dd 0c37474d2h
+dd 07ab21388h
+dd 05ace9333h
+dd 0e6ee3ae7h
+dd 0066805feh
+dd 0faf04bfeh
+dd 09b5206e1h
+dd 099907d31h
+dd 0c443add2h
+dd 01f8f61bdh
+dd 03fe1d877h
+dd 0c00bc1d4h
+dd 0fe35a330h
+dd 051b2a4d7h
+dd 08275c684h
+dd 03e72c01bh
+dd 0d2de1c7ah
+dd 0ce4f66f6h
+dd 044c8d82bh
+dd 041c77c96h
+dd 08ebfb68ch
+dd 0d99dc4b8h
+dd 01d2267c1h
+dd 0b7b9655ch
+dd 043b2321fh
+dd 02fb02957h
+dd 0552af276h
+dd 0f722ef22h
+dd 068e1cdabh
+dd 013053b27h
+dd 0471bccb8h
+dd 0e778e3f0h
+dd 0b389e1c3h
+dd 0c4904034h
+dd 0c32fac3ch
+dd 09a74062ah
+dd 07d6126b0h
+dd 074e7bb26h
+dd 0d3085db1h
+dd 0ede7296bh
+dd 05f14b534h
+dd 0696f0f74h
+dd 0a395db7eh
+dd 05ff95df5h
+dd 01e1c0625h
+dd 02e2d1945h
+dd 09abbf6deh
+dd 08a183855h
+dd 044f77f2fh
+dd 07ee59265h
+dd 0eb02c3dfh
+dd 00af76485h
+dd 0c62ff281h
+dd 0b7f7d31eh
+dd 0984eb73eh
+dd 09b64ff84h
+dd 023525340h
+dd 0a59619a8h
+dd 0970b0bb3h
+dd 0de01a79ch
+dd 0f291bd45h
+dd 0324ee907h
+dd 07f0ff6b2h
+dd 0ec8ad6c3h
+dd 00f459622h
+dd 079715631h
+dd 06050a15fh
+dd 09371de6ah
+dd 020e3a67ch
+dd 04cf331b2h
+dd 05127391eh
+dd 01400b53fh
+dd 0672463ffh
+dd 05bf733ffh
+dd 0dfdcf265h
+dd 0f74f46fah
+dd 0ab17fd1fh
+dd 05481c334h
+dd 0fc6e9072h
+dd 0d59b642fh
+dd 035c84953h
+dd 0dae7836ch
+dd 021f90f9eh
+dd 0d46dadf2h
+dd 08185fa5ah
+dd 0dcee6d2dh
+dd 084ce82f5h
+dd 0a8df7ddah
+dd 026db8564h
+dd 0e9854587h
+dd 0a1b0bb13h
+dd 08dbb8342h
+dd 058cc4816h
+dd 0dae5fa69h
+dd 02cbcd7a5h
+dd 056e2fcd7h
+dd 0b75ae2c2h
+dd 0af04c67eh
+dd 006e3fd1eh
+dd 0c52e4236h
+dd 05dbde978h
+dd 05934a6bfh
+dd 0bdfd2e05h
+dd 0ebd2c9fbh
+dd 0ee29b7d8h
+dd 01bfd8d88h
+dd 07f684ab6h
+dd 0b205bd9eh
+dd 0ed282c62h
+dd 0f8ff0138h
+dd 0e1856247h
+dd 03d5f2e26h
+dd 0c477bad6h
+dd 0fe63568dh
+dd 0c5b39b4bh
+dd 0b2df0919h
+dd 07970db40h
+dd 00da19927h
+dd 0a7552e1eh
+dd 01f5597e5h
+dd 013f9384dh
+dd 0351b2b97h
+dd 0b67ef792h
+dd 05edbdcb2h
+dd 08e4275e2h
+dd 0536b130fh
+dd 0ba551b32h
+dd 0f1edf770h
+dd 047e01fc4h
+dd 0f59f2e33h
+dd 01521373ch
+dd 08dc8a12eh
+dd 04494a03eh
+dd 0a06630e9h
+dd 0f5706666h
+dd 0d05395eeh
+dd 082ee17a8h
+dd 081d93fdeh
+dd 0b7b2c5f6h
+dd 057388ee8h
+dd 010b660ech
+dd 0f71a0e4bh
+dd 04f14aaceh
+dd 003878f0ah
+dd 0d79c96d7h
+dd 03a6a940ah
+dd 0e47af7c6h
+dd 01df70538h
+dd 06063d5d5h
+dd 0f57ce3beh
+dd 03b4a52fah
+dd 06206ba68h
+dd 0ee3c15dfh
+dd 01af25459h
+dd 031dbae05h
+dd 063490e34h
+dd 0db159112h
+dd 0a2b91d27h
+dd 0a64f9870h
+dd 00704af7dh
+dd 0d111cd5fh
+dd 0c1560f75h
+dd 00134a9f1h
+dd 01aca3a3ah
+dd 02e156d8ah
+dd 08de5659ch
+dd 045d8aff0h
+dd 0eaf6be3ah
+dd 07effe1e6h
+dd 0497d40f8h
+dd 071a2de45h
+dd 0ca315654h
+dd 0dfd7fa73h
+dd 0470ee621h
+dd 0d53fd83bh
+dd 04e39b412h
+dd 0b13147bah
+dd 0a0796278h
+dd 0abd6c697h
+dd 0b2de9125h
+dd 075bf334bh
+dd 0bfb52f77h
+dd 0d50f06e9h
+dd 08629756ah
+dd 0d49030dfh
+dd 05505e79dh
+dd 04d2e1c47h
+dd 077f00553h
+dd 0adabbdf2h
+dd 093d04e2ah
+dd 0a829e036h
+dd 0b1a5b717h
+dd 088a675ceh
+dd 039b87783h
+dd 072a81f73h
+dd 0d15ef463h
+dd 08cdd0b01h
+dd 0a1cb6643h
+dd 0b2b199d8h
+dd 0348a9a83h
+dd 06e171449h
+dd 02fc4fe58h
+dd 071d1ecb3h
+dd 047528ba8h
+dd 0fbbaecbfh
+dd 001239665h
+dd 022785a7bh
+dd 06f05b108h
+dd 0b5f60c6fh
+dd 08400be5dh
+dd 072b18032h
+dd 0e41379c7h
+dd 07ef698a2h
+dd 0c2f53121h
+dd 001b5b9b9h
+dd 0efb7307fh
+dd 0b6cdd855h
+dd 0de0d0c3bh
+dd 0b65c9abfh
+dd 0ab39ba50h
+dd 02a874107h
+dd 0a47e2169h
+dd 0ca124badh
+dd 0a05ddd14h
+dd 06b0b225dh
+dd 0b556039dh
+dd 06ad30896h
+dd 0ca65f7deh
+dd 09c81557dh
+dd 002a17cb5h
+dd 0762c2a9fh
+dd 07d9cfc5eh
+dd 0332b9542h
+dd 09b74e2c8h
+dd 06b7dff2eh
+dd 064aa1c21h
+dd 00c6e84ech
+dd 0259311f3h
+dd 01d7fbf31h
+dd 0b5ad4f98h
+dd 040016736h
+dd 09aae1964h
+dd 05666201ch
+dd 0357dcb86h
+dd 0083532bdh
+dd 06501975fh
+dd 092777721h
+dd 0418580c8h
+dd 0e085baech
+dd 040324b0bh
+dd 009860da7h
+dd 0f21389c6h
+dd 0ba5b4167h
+dd 06900af26h
+dd 0274b9781h
+dd 052690692h
+dd 0e7a26a5fh
+dd 0b950fa0dh
+dd 0ad5ce6c1h
+dd 0669d3bb9h
+dd 0f88f6cadh
+dd 01053888eh
+dd 0ebe1775fh
+dd 050b7cc2dh
+dd 03af3188fh
+dd 00752d46ah
+dd 0f5851292h
+dd 0abd3d2f3h
+dd 06f99e21bh
+dd 09708c39bh
+dd 01456c8c7h
+dd 0cab088ceh
+dd 0c7fea555h
+dd 071e87005h
+dd 03b5fcd50h
+dd 0a4a923b7h
+dd 0d86f2f8ch
+dd 0c5fc0b3ah
+dd 01c18750bh
+dd 083e495e5h
+dd 0017f3a06h
+dd 014449816h
+dd 03c25749ch
+dd 0ee7d62d9h
+dd 03fa98a0bh
+dd 07e3c9fefh
+dd 0dd196718h
+dd 0551931b0h
+dd 017f4fc4fh
+dd 01c639b51h
+dd 056b45c29h
+dd 034424958h
+dd 0c8afeb81h
+dd 0dc2f0002h
+dd 0e74480b2h
+dd 078e88226h
+dd 01b286fb8h
+dd 0779c8f10h
+dd 0a58c3699h
+dd 033758824h
+dd 00e6f6737h
+dd 0af0f2371h
+dd 04491688eh
+dd 072e9bb81h
+dd 068abdbc8h
+dd 0d93e5acah
+dd 02c628d87h
+dd 05b7a2105h
+dd 049e8e77ch
+dd 08f571604h
+dd 06a023bc4h
+dd 0bdc8ab86h
+dd 0ddc5fdf0h
+dd 05c668416h
+dd 083d767f1h
+dd 0218fd500h
+dd 0599592b4h
+dd 0e42c5770h
+dd 05c98e6bfh
+dd 0cedc1b05h
+dd 0fe7f30a9h
+dd 02c90a92fh
+dd 0bc6df7d8h
+dd 04447cd6dh
+dd 07768b4ech
+dd 0400aac18h
+dd 064808a6fh
+dd 0e2f5df66h
+dd 01a995da5h
+dd 00be7d7fch
+dd 0d77f9cadh
+dd 0a61574b7h
+dd 0a9341176h
+dd 079406ea7h
+dd 05f8acae9h
+dd 0c17e62dbh
+dd 0a8d58c32h
+dd 0c678f3c3h
+dd 0a2e95a7fh
+dd 0264e145ah
+dd 0f878b7c4h
+dd 05f211019h
+dd 078a0291dh
+dd 075758c72h
+dd 0c97b01c2h
+dd 001061a20h
+dd 09b931eeah
+dd 0435fd87eh
+dd 0ce3a8992h
+dd 0d51376b9h
+dd 0b17ee4a3h
+dd 0b7a6a2aeh
+dd 08edeb445h
+dd 0123d4e86h
+dd 04bb80e30h
+dd 0a16f2457h
+dd 00006e5f9h
+dd 0af68fbc5h
+dd 0710270ffh
+dd 0dfe6cf4eh
+dd 04e3f5f19h
+dd 08bfadc9bh
+dd 006a5cc1bh
+dd 01e6ee90eh
+dd 00320724dh
+dd 05ae1ffe6h
+dd 0d592a3c3h
+dd 02feac4edh
+dd 04ebcc21ch
+dd 0d3de33f1h
+dd 0e5ce4b58h
+dd 04840e563h
+dd 0a27ff534h
+dd 046b806e6h
+dd 00ccede82h
+dd 01742c27bh
+dd 0c39a5bf4h
+dd 0919994d9h
+dd 0ef2a26bch
+dd 0ecbb4979h
+dd 063057ef3h
+dd 0a0dc6b71h
+dd 05b3f53efh
+dd 0e0b453fah
+dd 0615a3697h
+dd 091d24cbfh
+dd 03f9c9cc6h
+dd 020d4ddb5h
+dd 06750a692h
+dd 0cef3634ah
+dd 0a30431f5h
+dd 0a8fc5300h
+dd 0b172f9b8h
+dd 00447b77eh
+dd 035efc22bh
+dd 00f521b49h
+dd 0be7bf680h
+dd 01ac96fd3h
+dd 098bcab8bh
+dd 0a7a43addh
+dd 0e4ac0510h
+dd 065a1e0afh
+dd 005e01e92h
+dd 088e8059dh
+dd 0ee13794eh
+dd 0b80c6943h
+dd 0a1754c63h
+dd 0081dcaf2h
+dd 08534456fh
+dd 0f4b5621ah
+dd 0a8082669h
+dd 09a7c8376h
+dd 0b26c2f22h
+dd 0723388bch
+dd 0f7eb85c7h
+dd 0276ab121h
+dd 00b86d75ah
+dd 0ecc2fed5h
+dd 0adae73a5h
+dd 00bd90b9ch
+dd 08d5d3bech
+dd 063123a39h
+dd 005ddcdd0h
+dd 029784708h
+dd 08030bbd4h
+dd 0800e58d1h
+dd 0ae8d4e61h
+dd 0329a787eh
+dd 089253b27h
+dd 0978d36e5h
+dd 002b6b18dh
+dd 02d4906bdh
+dd 0a0ac6067h
+dd 0786a17eeh
+dd 01c0244ceh
+dd 020c7354dh
+dd 085813dcch
+dd 0a2052075h
+dd 00347dbffh
+dd 0b17117f0h
+dd 0bf8accfch
+dd 0bc3bcaadh
+dd 039472a2ch
+dd 0b80f0d97h
+dd 054ca29a8h
+dd 0a71d30c4h
+dd 081316da5h
+dd 00157a924h
+dd 0eed160b7h
+dd 071f087eah
+dd 0df32bcfah
+dd 02e145f46h
+dd 00c8f99e0h
+dd 0f6ed2369h
+dd 0daeb1d3ah
+dd 08d90883eh
+dd 05af56970h
+dd 06713d60ch
+dd 044e01812h
+dd 058327199h
+dd 077c460bbh
+dd 0577899e3h
+dd 048cae9c4h
+dd 083b2e64bh
+dd 0e070de1bh
+dd 05de1f3b0h
+dd 01cb1cf40h
+dd 079089ebbh
+dd 0e732c7c4h
+dd 0d369a12ah
+dd 033f2bfa2h
+dd 05ce350aah
+dd 0e389092dh
+dd 09da5396fh
+dd 0c5697b7ah
+dd 0bb5261e6h
+dd 0c04ec769h
+dd 0c37bea46h
+dd 0f63ac959h
+dd 0996f030ah
+dd 044826995h
+dd 0f81acae0h
+dd 03c486535h
+dd 028cebc8ah
+dd 07027326bh
+dd 0b6978e18h
+dd 004468777h
+dd 0368d2993h
+dd 05e0f4abch
+dd 0407936bfh
+dd 0ef0699f6h
+dd 05b97b5f2h
+dd 040ec6859h
+dd 07652e7d0h
+dd 089b002dfh
+dd 04822b760h
+dd 09a1ede32h
+dd 0f9b02be5h
+dd 00237b3f4h
+dd 047cdb487h
+dd 0c56ac831h
+dd 007651077h
+dd 0fd46ec20h
+dd 00adc8650h
+dd 0fc33ceadh
+dd 07ae48e89h
+dd 0f98a6f3ch
+dd 00060a2b4h
+dd 05bd6118fh
+dd 084223df8h
+dd 022bf12e5h
+dd 0afd8a724h
+dd 0cd94b112h
+dd 00af530a5h
+dd 021f6641fh
+dd 047f06061h
+dd 0993c228fh
+dd 09f80e0c7h
+dd 0952a3199h
+dd 02b9b725ch
+dd 0b7e5f64ah
+dd 0a45d6e8ch
+dd 00374a093h
+dd 05d2afb89h
+dd 0fb7c34ebh
+dd 05078120dh
+dd 0b58d27c3h
+dd 072346e45h
+dd 0962b1c73h
+dd 0d1d81e84h
+dd 01a67d85eh
+dd 026428116h
+dd 02a93c34ch
+dd 003146b55h
+dd 0607254c8h
+dd 0360a3452h
+dd 03c24b878h
+dd 01eace39ch
+dd 0d4647c99h
+dd 00d2f8125h
+dd 02fb8d35ch
+dd 02bd0fcaeh
+dd 08a6285dah
+dd 02d3e9e3bh
+dd 01be98047h
+dd 0e95a26bbh
+dd 02ea66746h
+dd 04347de7fh
+dd 08a2c2daeh
+dd 0d672f2bdh
+dd 0f15b0e49h
+dd 03145768fh
+dd 061caa859h
+dd 0a05197c3h
+dd 0dbed7797h
+dd 02ea99dc8h
+dd 068b946fdh
+dd 0213438d5h
+dd 06ced6c91h
+dd 05e4cc19fh
+dd 02e99ff91h
+dd 077d59cd5h
+dd 019dacdf5h
+dd 0294fed99h
+dd 04dd830eah
+dd 02db78b86h
+dd 0d8193ecdh
+dd 07e27baefh
+dd 02b5f899bh
+dd 0ae7075b6h
+dd 0fb3b967bh
+dd 0339df5b7h
+dd 0a20d2cc8h
+dd 0bc0e3c71h
+dd 06d9be1d2h
+dd 04fcbd7fdh
+dd 08da84204h
+dd 0e8e7e258h
+dd 02b9f177bh
+dd 042340112h
+dd 0d1c2d1bbh
+dd 079d2e7c4h
+dd 095cdb4ddh
+dd 0ad54a218h
+dd 0466387b2h
+dd 0aba7dc4bh
+dd 07897dc94h
+dd 003e748b6h
+dd 0b60ed0eeh
+dd 06bdd02abh
+dd 05d11253eh
+dd 033dbce45h
+dd 003246c90h
+dd 0ca497845h
+dd 0d9f2a6feh
+dd 06eb52f25h
+dd 0b439be2bh
+dd 0e8945ca3h
+dd 051259504h
+dd 0123a73adh
+dd 08239bf40h
+dd 04237cb30h
+dd 0da49c1d6h
+dd 0209fd2b6h
+dd 0ebb8f89dh
+dd 0f5656070h
+dd 07f5b91fah
+dd 0cac0bdd2h
+dd 02a464c0ah
+dd 0eef88e28h
+dd 0db7ca22fh
+dd 03fb711eah
+dd 0429f905eh
+dd 0f564d706h
+dd 0aaea2d1eh
+dd 0e8dbe5fah
+dd 0a820c70eh
+dd 0b675d68fh
+dd 0de95ee58h
+dd 0a41cfd19h
+dd 073d10843h
+dd 051c28418h
+dd 05ee4ff56h
+dd 0dc6b1c96h
+dd 012255844h
+dd 08a956ab7h
+dd 03fc3cd12h
+dd 084c7e5deh
+dd 0fbe9bb8dh
+dd 032f527e3h
+dd 0ca71b2efh
+dd 0a5dcecedh
+dd 0f3608e79h
+dd 04a192dcfh
+dd 0d05f27eeh
+dd 0126ffed8h
+dd 0d87bce30h
+dd 09ee2173eh
+dd 0bfc41e35h
+dd 0ac9236e2h
+dd 0b10ab60bh
+dd 0c28d8160h
+dd 001a8aedfh
+dd 01f16fe1ah
+dd 053cbfb72h
+dd 061e68293h
+dd 0df4f0556h
+dd 04b1b26e6h
+dd 0c746e797h
+dd 01b415762h
+dd 09dacbbf0h
+dd 08e47d68fh
+dd 00f693e20h
+dd 043da5897h
+dd 077de6eefh
+dd 0e5c95fe8h
+dd 0ed15538eh
+dd 09a6f9c47h
+dd 0b8a8eaech
+dd 0856f624fh
+dd 0ad2e9ce7h
+dd 08c7fe914h
+dd 0f01fb52bh
+dd 04536736bh
+dd 0098a579eh
+dd 0dc4d42cfh
+dd 019bb15b3h
+dd 0173783c4h
+dd 082ca9038h
+dd 02da50af0h
+dd 0982f659eh
+dd 07731ea87h
+dd 0aa6bcc7ah
+dd 0b45e1c53h
+dd 0f5b1856ah
+dd 092011c7bh
+dd 0d7c8320bh
+dd 091575c73h
+dd 0c4ebc186h
+dd 0111536a4h
+dd 026ce7b0ch
+dd 09c805713h
+dd 077b882a3h
+dd 0eda0f9a4h
+dd 007e930cah
+dd 0653c7d27h
+dd 064ba0bech
+dd 0a99a16f5h
+dd 05b30a1b8h
+dd 0a35940bbh
+dd 0ca324da4h
+dd 01b14b076h
+dd 0c2c1ac7bh
+dd 01c3c2751h
+dd 0afd7f4f8h
+dd 08d677802h
+dd 06763d304h
+dd 01e7bed38h
+dd 07a32458ah
+dd 04f3219ddh
+dd 02f95a536h
+dd 0431f6697h
+dd 0561867e2h
+dd 09344b31eh
+dd 021de0887h
+dd 07d9e0f08h
+dd 0a0130d07h
+dd 04fa6542ch
+dd 05127ef86h
+dd 0e8873af8h
+dd 0fa4118f6h
+dd 02614de0ah
+dd 086a0cce1h
+dd 039a4a996h
+dd 0e0538f64h
+dd 0f46c8a37h
+dd 07d3c4a89h
+dd 01a03f19bh
+dd 0d0ff0a2fh
+dd 08d048846h
+dd 0649b15ech
+dd 0ac03b128h
+dd 0a5672746h
+dd 00fc38a27h
+dd 000f15b3eh
+dd 0c20a86ddh
+dd 0ea9d4e38h
+dd 05be6ab55h
+dd 098d095bch
+dd 0bd775290h
+dd 064e2478bh
+dd 0c582ccf4h
+dd 0efe7068fh
+dd 06423fbf2h
+dd 0450cf713h
+dd 03c08ebc5h
+dd 02ee94e6ch
+dd 09c71f7b2h
+dd 012328819h
+dd 0c8221f61h
+dd 0c02e748ch
+dd 09f085015h
+dd 03d93c5c6h
+dd 08aab6a1ah
+dd 0c073ac27h
+dd 05de68b4bh
+dd 00f7ac125h
+dd 03872eed1h
+dd 0df7ba454h
+dd 0e7d8f29bh
+dd 0f1733822h
+dd 0985f82b0h
+dd 0a5a66362h
+dd 0de2b736eh
+dd 0bc6024cbh
+dd 058675b19h
+dd 0c0b2ea74h
+dd 0339c5010h
+dd 0c25351adh
+dd 0097dc7a9h
+dd 09ebc8155h
+dd 006295ae8h
+dd 006d6ec19h
+dd 08144d022h
+dd 05c28cc2ah
+dd 0c7be014bh
+dd 0c4ef4679h
+dd 09b4fcc3fh
+dd 0bae21177h
+dd 0b9019576h
+dd 0a5d35e56h
+dd 0c2e0a2a6h
+dd 012f2c92fh
+dd 07fdca11dh
+dd 0514a351eh
+dd 0bf70f042h
+dd 0fe03f696h
+dd 099a81ea1h
+dd 0445ca6efh
+dd 03d3b9f30h
+dd 023dee7a4h
+dd 0f0ecc00fh
+dd 0015d13edh
+dd 084625211h
+dd 0985753e1h
+dd 048692346h
+dd 0f375f3bbh
+dd 05339d033h
+dd 0ac407305h
+dd 0bd088d1fh
+dd 04a9be1d3h
+dd 0e874a0d1h
+dd 0c1b3f7e8h
+dd 0cce7f481h
+dd 0e43cfb7eh
+dd 0fe8d7b2dh
+dd 07d1b5cc3h
+dd 043b281a9h
+dd 0f23ddc56h
+dd 073dd0c7bh
+dd 03b9220bah
+dd 0209646e4h
+dd 05aa09999h
+dd 0c9e658d5h
+dd 0346e2a1bh
+dd 040ad031ah
+dd 0a927d4eah
+dd 0eaf1bddfh
+dd 058c7b9e9h
+dd 0743ecee1h
+dd 03c01e32eh
+dd 047e6fd37h
+dd 051f42875h
+dd 0639616dbh
+dd 0635959c1h
+dd 0e0037748h
+dd 0fc249864h
+dd 0c457e5f4h
+dd 0fb0cff26h
+dd 09514c6a6h
+dd 0a8f86fbfh
+dd 02f6c931eh
+dd 018031728h
+dd 023366216h
+dd 0a93af47ch
+dd 0bdb944cfh
+dd 0e9bb05eeh
+dd 0964336bch
+dd 05ac3c9fah
+dd 027426670h
+dd 074bc0042h
+dd 0f3c147c8h
+dd 0cf523b39h
+dd 0372adf67h
+dd 063868224h
+dd 03744c685h
+dd 0c41fa90ch
+dd 08885abbbh
+dd 0ec400d17h
+dd 0d770526ah
+dd 099cb73d8h
+dd 01ee461c4h
+dd 0cb5dfb68h
+dd 0d3085817h
+dd 06c5dc7b3h
+dd 0a359865fh
+dd 0cdf24a16h
+dd 025d21e49h
+dd 0d474b721h
+dd 0e0445ffch
+dd 06511765ah
+dd 084b79483h
+dd 0935962a3h
+dd 02982db23h
+dd 019fcad18h
+dd 0aadc867ah
+dd 019a45937h
+dd 0a0b63682h
+dd 06bb76e86h
+dd 06d93e340h
+dd 073f527a3h
+dd 049a99307h
+dd 0acfb1155h
+dd 07a01a87ah
+dd 033249d86h
+dd 06803b89fh
+dd 04ad1b8d9h
+dd 0170a5f72h
+dd 04d0cec50h
+dd 0bbd38bebh
+dd 0c0d78567h
+dd 06f838298h
+dd 0654e160ch
+dd 08a70ffa7h
+dd 0ed7d4b3fh
+dd 0e4370216h
+dd 0051155fah
+dd 01db4fe7dh
+dd 0d55701f6h
+dd 000bb63f8h
+dd 0496bd923h
+dd 0ea0eb8c8h
+dd 0bba795d3h
+dd 0990bcba6h
+dd 03ed5e2dah
+dd 099564d37h
+dd 031a7e8edh
+dd 082ebe264h
+dd 09afcaf3ah
+dd 0183dda03h
+dd 0e8905877h
+dd 04ca94238h
+dd 014393c86h
+dd 003ccf84ch
+dd 02c3d0dc4h
+dd 0334351b5h
+dd 057c45412h
+dd 0591779aeh
+dd 0c4f7eb7eh
+dd 03193accah
+dd 044a1f9b3h
+dd 0a40a43f9h
+dd 08c0341c2h
+dd 09910487bh
+dd 060f5fa6fh
+dd 0d2464950h
+dd 041fbd15ah
+dd 069d14e4ch
+dd 034c93113h
+dd 0aaef02fch
+dd 0e5659b51h
+dd 02b15eba2h
+dd 02686b7e3h
+dd 0e21cccf6h
+dd 0c6d9a6abh
+dd 06777116ch
+dd 070a9a13bh
+dd 0b20f32abh
+dd 0c9e67aa1h
+dd 030b8f807h
+dd 07cf85217h
+dd 01616ddcah
+dd 0189b2281h
+dd 01bc9f1b8h
+dd 0f9102ef6h
+dd 0821afb40h
+dd 0cad0ee6fh
+dd 0313f5b37h
+dd 0e21e95cch
+dd 0840abcdbh
+dd 0d9f9cac3h
+dd 0e2f7e451h
+dd 0dac22c6ch
+dd 0974a9986h
+dd 036605158h
+dd 0ffe180a6h
+dd 038542583h
+dd 0f0da04e3h
+dd 04b5cf9abh
+dd 068b8eceeh
+dd 056ca58f2h
+dd 0451f3bc6h
+dd 0077c63e4h
+dd 02a05d84bh
+dd 0bd5d5101h
+dd 0a6dcd3a3h
+dd 0ed5f5679h
+dd 0daab2704h
+dd 0000f64ebh
+dd 041d4344fh
+dd 0a0f35a13h
+dd 04dce86adh
+dd 030cada83h
+dd 0ab59aed9h
+dd 09add9eadh
+dd 04da818bbh
+dd 0aeb76391h
+dd 01356c468h
+dd 09772eb4eh
+dd 050aac012h
+dd 08c960300h
+dd 023a672b8h
+dd 0c0339ba3h
+dd 05541934ch
+dd 0e4cc8b65h
+dd 0078c7cfah
+dd 0c6812606h
+dd 0e3dc91d0h
+dd 0f01c426bh
+dd 092ae6a72h
+dd 0884f3e62h
+dd 0b4504bd7h
+dd 0e710640ah
+dd 0808915e6h
+dd 04cf75629h
+dd 07cc8185eh
+dd 04de2d66fh
+dd 054f6fd8ah
+dd 09a858a92h
+dd 030ceed55h
+dd 0ef59a863h
+dd 08cee824bh
+dd 0a425da6eh
+dd 0442db3f8h
+dd 0f0b747dch
+dd 0d3c6f15fh
+dd 05257c88eh
+dd 099dccdfbh
+dd 0330eb986h
+dd 09e67fee9h
+dd 0ee3c93f6h
+dd 099cf5470h
+dd 0f38fca7fh
+dd 07cadbb06h
+dd 02f6f5a1ah
+dd 0d9efff1eh
+dd 0a825ae1ah
+dd 04f8694c5h
+dd 0f49cf28dh
+dd 0ee223b37h
+dd 098c77cfdh
+dd 0a518302dh
+dd 0076f8031h
+dd 01eceadaeh
+dd 0b26db59eh
+dd 0026a7e99h
+dd 090d06a3fh
+dd 0dfde138dh
+dd 050b1b36fh
+dd 03cfe15bdh
+dd 054e6b635h
+dd 044da9cfdh
+dd 019418677h
+dd 0538fb47ah
+dd 0912fcff0h
+dd 0fe55c916h
+dd 00065ae06h
+dd 061999611h
+dd 0cc274ccfh
+dd 0ae0c50e0h
+dd 00a4f1b36h
+dd 071feea95h
+dd 0a0e2c89eh
+dd 0e8afd6afh
+dd 0806b4b42h
+dd 010182e4bh
+dd 01942473bh
+dd 044ea2a14h
+dd 0864165f3h
+dd 00b6ca83bh
+dd 0c2653f83h
+dd 079eb476dh
+dd 04021dd62h
+dd 0fb704ad9h
+dd 04f61a18ch
+dd 05a2f4bafh
+dd 0864da949h
+dd 0fff8bcd1h
+dd 018817575h
+dd 04396244dh
+dd 0e3d09819h
+dd 0d2a53891h
+dd 05d28c325h
+dd 0c3f0af94h
+dd 08a22b5a3h
+dd 0b73794d1h
+dd 085e521efh
+dd 03c4f7e1bh
+dd 01d9841d6h
+dd 018e702b4h
+dd 0c0294486h
+dd 0be01a5deh
+dd 0bd246810h
+dd 07e9c02fah
+dd 0b1c5d724h
+dd 014af2f39h
+dd 0804bd3c6h
+dd 04872aecdh
+dd 0d8a2cd8fh
+dd 0557da44eh
+dd 07ea05961h
+dd 00e232173h
+dd 028cb8a89h
+dd 0ef68e71eh
+dd 0ceb5d518h
+dd 0521365adh
+dd 065b2b1cdh
+dd 050463451h
+dd 015b650ach
+dd 084833ae6h
+dd 016276680h
+dd 0798aa182h
+dd 0aaefa7a5h
+dd 09c5b147ah
+dd 0017f9e84h
+dd 08bd59867h
+dd 0b7900504h
+dd 0e338eac5h
+dd 09cc701c8h
+dd 0375519bbh
+dd 00cbb8b92h
+dd 06cccdb38h
+dd 0002d3978h
+dd 09ab91a7ah
+dd 08916b17ah
+dd 02666a15dh
+dd 0c14ffc01h
+dd 069f3aa73h
+dd 08f9fe34ah
+dd 0a3a71556h
+dd 0fa133397h
+dd 0a89badc7h
+dd 005988ad5h
+dd 096d100f6h
+dd 08a7ecf2ah
+dd 0191278a9h
+dd 0d1bf602fh
+dd 0ed49dd73h
+dd 06224e908h
+dd 0f68a087ch
+dd 07b76ecc0h
+dd 0471a3d81h
+dd 05f9154c8h
+dd 08398c138h
+dd 08b94683dh
+dd 004390137h
+dd 0863d677dh
+dd 0467e349ah
+dd 01648b689h
+dd 057a1eee2h
+dd 0437b9e9ch
+dd 032488988h
+dd 0e20c424eh
+dd 0a2a98cffh
+dd 087fd52c1h
+dd 0827640fbh
+dd 0048480e2h
+dd 06e6f384ch
+dd 049d93c05h
+dd 0485ff508h
+dd 024769bf8h
+dd 0083ae437h
+dd 0ae62bcf9h
+dd 0516fd7a6h
+dd 02504404eh
+dd 0101f18dah
+dd 0860c19adh
+dd 023cd5269h
+dd 045c21f1ch
+dd 09b44d344h
+dd 065b88323h
+dd 054b89bfeh
+dd 0c5905974h
+dd 04105be34h
+dd 04d10c03eh
+dd 099eb80dah
+dd 066f2b3f0h
+dd 0a7f9ca29h
+dd 03b71fff4h
+dd 05cc9d3ebh
+dd 0d923221bh
+dd 04b9a8014h
+dd 029cf8edeh
+dd 049f24021h
+dd 0f438a99dh
+dd 08d617653h
+dd 0b9c6e145h
+dd 09bcbe4cdh
+dd 0a265ad1dh
+dd 0c37c5647h
+dd 045815f28h
+dd 02df20d08h
+dd 0bd70f561h
+dd 05810c954h
+dd 072347a59h
+dd 0a799214eh
+dd 0430bbc54h
+dd 04bdfe1bbh
+dd 0a04308dfh
+dd 070fa7f00h
+dd 0ce69a944h
+dd 0adaa102bh
+dd 008fb7f33h
+dd 06c4976d1h
+dd 0630d9ae8h
+dd 0c5b03f95h
+dd 01ccbcfc3h
+dd 0a56ea992h
+dd 0f459e7bdh
+dd 0df8a7e49h
+dd 06c518badh
+dd 0f26769fbh
+dd 0a43190dch
+dd 0b40a206ah
+dd 051893fd9h
+dd 0de2ae228h
+dd 04d1c4cf5h
+dd 0f025638bh
+dd 0bb6f94a7h
+dd 04d4aed76h
+dd 0d28d806bh
+dd 006446386h
+dd 0a54c04a5h
+dd 01a59d0e0h
+dd 05d4517d8h
+dd 0aa1d0dc0h
+dd 05008c4c7h
+dd 0fd25e0e2h
+dd 0ad9bba74h
+dd 06d230c55h
+dd 06649b429h
+dd 07682bddch
+dd 06d58b6c4h
+dd 00f2e70b1h
+dd 0a615bfaeh
+dd 0d71c2f7dh
+dd 0248bcc9ch
+dd 04288fed2h
+dd 08804e71fh
+dd 0229be8ffh
+dd 041ef0076h
+dd 0e59e5675h
+dd 0c065f089h
+dd 08b0c8ddah
+dd 029632927h
+dd 065152499h
+dd 0c9c81c61h
+dd 0f11574c6h
+dd 0fb41cff0h
+dd 0ea66f038h
+dd 067ff3dc1h
+dd 03e7204bch
+dd 0b78d6f8fh
+dd 0be1a8294h
+dd 07ac5a545h
+dd 074243c0ch
+dd 058a30ad8h
+dd 074185ef9h
+dd 0aa5842afh
+dd 01d2c5f32h
+dd 02c3415cbh
+dd 0cf7ad740h
+dd 0fd72adefh
+dd 05e3454b1h
+dd 000df8495h
+dd 0872371d0h
+dd 09b327d6dh
+dd 0ebf28f8ch
+dd 07843d9ebh
+dd 09dae0b8bh
+dd 0c36bcdeeh
+dd 0696a9a52h
+dd 08fdc7e79h
+dd 09fef4548h
+dd 0f883d0a0h
+dd 00b8ccd14h
+dd 004f75e77h
+dd 0f0b4831fh
+dd 0dfaf4700h
+dd 06fddf6ebh
+dd 057550aadh
+dd 0d1ee9b9ah
+dd 039c88497h
+dd 04076fbc5h
+dd 03c99b3e0h
+dd 0e0fef9aah
+dd 046679759h
+dd 04a67e079h
+dd 0caffb582h
+dd 0564a8e60h
+dd 021df81dbh
+dd 08283553ah
+dd 043c6a717h
+dd 0d22b11d9h
+dd 021312a2eh
+dd 036082a85h
+dd 0d8ab2556h
+dd 01c62f857h
+dd 040dd647dh
+dd 00f928d2ah
+dd 099e3e35fh
+dd 0d8ed8644h
+dd 0a25566d3h
+dd 057158523h
+dd 010b696a0h
+dd 0376cd306h
+dd 087fbd105h
+dd 036ea3a95h
+dd 0c1ae8d16h
+dd 0859521bbh
+dd 07caa175fh
+dd 0ae78d335h
+dd 0ff83e176h
+dd 0105fecd6h
+dd 0c167da4bh
+dd 088918596h
+dd 09f5528b3h
+dd 0933e4f83h
+dd 05beb87abh
+dd 05cb4bda8h
+dd 09f57816eh
+dd 0e4e7fe07h
+dd 06fa06a42h
+dd 040dc8073h
+dd 08e61cb27h
+dd 09419d405h
+dd 095658798h
+dd 0a7cd6e4eh
+dd 0839754d0h
+dd 01c2db621h
+dd 0668d0585h
+dd 02066b3beh
+dd 04f565734h
+dd 0ee1290c2h
+dd 0020df340h
+dd 0e06499a1h
+dd 033e7f4e6h
+dd 03ff99d62h
+dd 090be8a95h
+dd 02a3d4cabh
+dd 0d326c655h
+dd 0e50ccd63h
+dd 0e18a2f83h
+dd 020bcc58dh
+dd 050050bcdh
+dd 0eb65eefeh
+dd 0a709830bh
+dd 03c62a9dah
+dd 05a1be5b5h
+dd 023930cf0h
+dd 0277c896bh
+dd 0372dd10bh
+dd 0e68a2ff4h
+dd 00517b848h
+dd 092935e15h
+dd 030a20cb4h
+dd 036d88c79h
+dd 007ebe758h
+dd 0d6b22ecah
+dd 0bc298423h
+dd 06cb260dbh
+dd 0d85f55cah
+dd 01c7a90ach
+dd 04af50723h
+dd 04241b474h
+dd 0aa20d644h
+dd 08d20f0abh
+dd 028f00489h
+dd 0eb314f26h
+dd 06e579650h
+dd 088cc0c47h
+dd 0c2681dedh
+dd 024f1dd03h
+dd 018ec7b50h
+dd 088592b26h
+dd 0e230b5b9h
+dd 02867acd1h
+dd 0877a403ah
+dd 0308c3092h
+dd 08faf9473h
+dd 050dd7342h
+dd 07d7abd1ah
+dd 0744e3728h
+dd 0184b4087h
+dd 054249bcfh
+dd 06058a12dh
+dd 0ad1d15fbh
+dd 052e5c5d7h
+dd 09499a458h
+dd 0b67faa7dh
+dd 02d03c7f5h
+dd 06c159c19h
+dd 048672ce4h
+dd 057b5b97ah
+dd 0b8027854h
+dd 059a006c6h
+dd 021ff893dh
+dd 022eccd4fh
+dd 0d27a08b1h
+dd 05abe2155h
+dd 08f61d95bh
+dd 0e7bcaa93h
+dd 0320cbe28h
+dd 049c1e8cah
+dd 0c33682e9h
+dd 08c45bee4h
+dd 0380a5a80h
+dd 0b7ce00b3h
+dd 04236cb1dh
+dd 0037ed833h
+dd 03a7bc181h
+dd 0d49cb5f8h
+dd 0eb00d39eh
+dd 0b6ac995eh
+dd 05e5624abh
+dd 02ad7e9a7h
+dd 0f27cf992h
+dd 017a91fb6h
+dd 0ea6741bch
+dd 0f6d1375ch
+dd 0f30052cdh
+dd 0f1cd8dc4h
+dd 0e43fa93bh
+dd 0ec5c04f5h
+dd 0dede9ac0h
+dd 05359efdeh
+dd 0086b7c1dh
+dd 07ccdf277h
+dd 0ab305d02h
+dd 0a8536b20h
+dd 05f334081h
+dd 0b15117edh
+dd 0b665c29fh
+dd 0bab256dch
+dd 0dadd606fh
+dd 037782df9h
+dd 091dc6035h
+dd 0fd4001edh
+dd 05e1a0712h
+dd 0ba7d7e39h
+dd 0b8899c8dh
+dd 0f3e3795fh
+dd 038d5ad41h
+dd 09e55ceafh
+dd 0aabc5689h
+dd 069418576h
+dd 01d219dach
+dd 0472f9d1dh
+dd 02fcfc8a4h
+dd 060a0df0bh
+dd 03b5fca35h
+dd 0c524c51eh
+dd 0ad6e9b85h
+dd 05052bdb3h
+dd 0f5fb1616h
+dd 0385d8ed1h
+dd 0a7061b8bh
+dd 02b1a6e9bh
+dd 0729c8e12h
+dd 0b72b67bbh
+dd 034020bd5h
+dd 0c3751ffeh
+dd 0a32d0640h
+dd 0e35a877bh
+dd 01c1a40cah
+dd 05e186816h
+dd 054260025h
+dd 038b04e31h
+dd 0e38b3ad0h
+dd 08c7b7186h
+dd 02485d51bh
+dd 092a37be1h
+dd 02dd190afh
+dd 06efe3a7bh
+dd 063b9d2cah
+dd 0fe4512b9h
+dd 0f6c9c7e0h
+dd 0d53b8bf9h
+dd 007d25b30h
+dd 0d1153571h
+dd 009d07746h
+dd 02842e320h
+dd 049d82861h
+dd 0df20b65fh
+dd 0414227e3h
+dd 0cd4e81d3h
+dd 0a7033322h
+dd 054f0a4cbh
+dd 0b04aa373h
+dd 0ceb44f87h
+dd 043fd0e39h
+dd 0127a0a49h
+dd 0669d5aa4h
+dd 080cd80deh
+dd 0aabe369ah
+dd 0fca0fc2ch
+dd 01d4d1f23h
+dd 0d2fac104h
+dd 08d3ad85ah
+dd 0831f93c2h
+dd 0613ff697h
+dd 09c02a638h
+dd 076e24de3h
+dd 08ba29f69h
+dd 0152e8d45h
+dd 00177b567h
+dd 0b45a3849h
+dd 00c7b4109h
+dd 0937b8918h
+dd 049576f51h
+dd 0ffa87845h
+dd 03edafb52h
+dd 08adda12dh
+dd 06a612ef2h
+dd 06eab0678h
+dd 068668892h
+dd 06f057eafh
+dd 05959a3d9h
+dd 0160baef6h
+dd 03d212da4h
+dd 0bea18b92h
+dd 02a8e1fb6h
+dd 0c8e33566h
+dd 0056ff7bah
+dd 0b04e3d69h
+dd 031605469h
+dd 02b7e4200h
+dd 0bd63e597h
+dd 07fd45728h
+dd 088a6aa28h
+dd 0a8c51ef9h
+dd 09f2819d1h
+dd 0dfc11d72h
+dd 04ec940dch
+dd 087d9e367h
+dd 0801314d2h
+dd 02370db1bh
+dd 0f35841a8h
+dd 0a8a23756h
+dd 00807f834h
+dd 01623457dh
+dd 0841fdd7ch
+dd 03a63d1e1h
+dd 086f8d982h
+dd 0c79c77adh
+dd 0f985aed2h
+dd 0c97a460ch
+dd 0f5d5c127h
+dd 066be281bh
+dd 0d559d734h
+dd 0c96eb5bch
+dd 020301c17h
+dd 0ce1943ach
+dd 0c2e8c168h
+dd 0cd63b43ch
+dd 0bb65a078h
+dd 014b38851h
+dd 0fa6d56c8h
+dd 0fc9430c9h
+dd 00014a228h
+dd 02da65191h
+dd 0c6408967h
+dd 027ed2350h
+dd 0aa909208h
+dd 01d3b7f32h
+dd 0c89b3d7eh
+dd 0f54f662ch
+dd 0a78de532h
+dd 047fd98e9h
+dd 0d0110448h
+dd 04cdb9792h
+dd 0ef582018h
+dd 0930a1ce2h
+dd 071272da3h
+dd 066941991h
+dd 0df9486dbh
+dd 08cf06162h
+dd 0a07dff3ah
+dd 05e86241eh
+dd 0bf7e2fdeh
+dd 07304571fh
+dd 0a320c33eh
+dd 0b661843ah
+dd 0731e1c3eh
+dd 08ea72a86h
+dd 03fa7c974h
+dd 0ab730909h
+dd 0fdb18f24h
+dd 03cb7b1ebh
+dd 0d0c38cabh
+dd 0863a0da8h
+dd 092491cb8h
+dd 010bb149fh
+dd 0133b28efh
+dd 016c40a06h
+dd 0788c7603h
+dd 0353b1aabh
+dd 027cff7a8h
+dd 0e4ee7b94h
+dd 031476ddbh
+dd 0d4eb6cbch
+dd 002cde339h
+dd 09a35ed9ch
+dd 005a95833h
+dd 0af1bf3a4h
+dd 02c57bb56h
+dd 0decb8c0ah
+dd 06f1201e7h
+dd 0421a24adh
+dd 0dfaf6bd6h
+dd 0777ae05bh
+dd 0eea2a84fh
+dd 09e822affh
+dd 022a47abeh
+dd 04cb9a98bh
+dd 078e9fc20h
+dd 07b488680h
+dd 0281dbf66h
+dd 0374b9a0eh
+dd 0b63658dfh
+dd 08c01eba6h
+dd 016efa5f6h
+dd 05fb8b3cfh
+dd 0cc1ebca8h
+dd 0ab25593ch
+dd 04a6d921ch
+dd 07c74e260h
+dd 075b09e62h
+dd 023eacfbdh
+dd 0aa3c4410h
+dd 09a5a005dh
+dd 0b135624ah
+dd 0b30ab756h
+dd 07fb98cffh
+dd 08b8a8242h
+dd 058206933h
+dd 0ad83e74ch
+dd 099c0d108h
+dd 0df7943b1h
+dd 0dd245dd6h
+dd 085054514h
+dd 0d75004bbh
+dd 0876277c8h
+dd 0b6b92eeah
+dd 0e2734dc4h
+dd 0af6d38cbh
+dd 0a186369dh
+dd 08b318cb5h
+dd 053be7f28h
+dd 03545d8e8h
+dd 08fef17bfh
+dd 0ff2f3398h
+dd 0bb8c095eh
+dd 0a714cc9eh
+dd 0bc6d3608h
+dd 060880255h
+dd 09f869ec0h
+dd 0e7439aa2h
+dd 0acdae99bh
+dd 0100a75a1h
+dd 0a58dfdb2h
+dd 0cfc180f3h
+dd 03cff8760h
+dd 01cd29bd6h
+dd 0e5ed147eh
+dd 09f40edc0h
+dd 01058f212h
+dd 03ed6443fh
+dd 0ab0c7b9eh
+dd 01bc79ccbh
+dd 0a56eb618h
+dd 0353c8480h
+dd 0eda740f1h
+dd 03d32fb89h
+dd 0406c320ah
+dd 029aff9e3h
+dd 06593c5f6h
+dd 017203aadh
+dd 0e21c6d90h
+dd 01f0e36d3h
+dd 0dd076304h
+dd 0e8f10f29h
+dd 032960a91h
+dd 0a771f45ch
+dd 0101c3254h
+dd 0a34f9212h
+dd 0e6873dffh
+dd 0187668b1h
+dd 05585a6a2h
+dd 0bdd3211ah
+dd 0f9d69510h
+dd 0d0259b34h
+dd 04ac96681h
+dd 09e836c00h
+dd 0e4b49400h
+dd 001f911ddh
+dd 0f0e7401ch
+dd 0876c9450h
+dd 055eabc52h
+dd 09c6ab820h
+dd 0f26d387bh
+dd 03d8fd4ddh
+dd 07a411d42h
+dd 089e05270h
+dd 04e3ac48eh
+dd 083ca7461h
+dd 08e2d716bh
+dd 051e16a56h
+dd 0a1688dc3h
+dd 0874ed6f7h
+dd 087d4539fh
+dd 06154985eh
+dd 02b7ed221h
+dd 040bfb9dbh
+dd 0cca52628h
+dd 086d7a46ch
+dd 0b8081538h
+dd 039d8ffd8h
+dd 0865b5fa8h
+dd 03da57fb3h
+dd 08f6f90e4h
+dd 00a9e32c7h
+dd 0aa7262e5h
+dd 0e87bb9e7h
+dd 0dc486abdh
+dd 0919f5e93h
+dd 0133e3102h
+dd 0368e6b02h
+dd 093529a93h
+dd 0a5a125e1h
+dd 036d1276bh
+dd 0e70a523dh
+dd 00913bc7ah
+dd 0f6503f18h
+dd 0d55e5708h
+dd 0724c2c1dh
+dd 02921680eh
+dd 036eb5c65h
+dd 04983501ah
+dd 0d934e03bh
+dd 05f3cf84bh
+dd 0d0202559h
+dd 0c2a0655fh
+dd 0354ad7cah
+dd 05a604e5ch
+dd 0a3603b97h
+dd 05bc19f30h
+dd 01f78a33eh
+dd 072316cb5h
+dd 0758d9f26h
+dd 09392faebh
+dd 036bff89fh
+dd 07204bc27h
+dd 0d188184ah
+dd 0c1478b59h
+dd 073302dbah
+dd 00a311bf7h
+dd 00953dbb9h
+dd 0f8fa5f06h
+dd 04b6021ebh
+dd 044568760h
+dd 048cd766fh
+dd 057637447h
+dd 0b5902ebfh
+dd 07de6407dh
+dd 0ec117fe8h
+dd 0189f40c5h
+dd 0fefe0499h
+dd 04f644597h
+dd 0129f08e1h
+dd 055f749dch
+dd 09635cdf0h
+dd 00293e6e9h
+dd 03b9a9b41h
+dd 015630a3fh
+dd 0285e718bh
+dd 054de3e36h
+dd 02fa741cdh
+dd 0fea9af0bh
+dd 0c72502d0h
+dd 007048d6eh
+dd 0b900f1d1h
+dd 09c2ed00ch
+dd 0fd2f0a76h
+dd 01ef0c66ah
+dd 0576e22d2h
+dd 075bda7e7h
+dd 0af05ec0bh
+dd 0c9d6b472h
+dd 05b0fdf54h
+dd 034bbb2bch
+dd 0f24b3620h
+dd 0df4cc29fh
+dd 0282f4583h
+dd 0b7484273h
+dd 034bf98c6h
+dd 0dc8c32eeh
+dd 033ff4b8eh
+dd 0cddaada1h
+dd 0c868af07h
+dd 0255d4bc3h
+dd 00d1a618eh
+dd 085ffb8cbh
+dd 0436d7c07h
+dd 0a3b2fe95h
+dd 0fcff35b4h
+dd 07aca5eefh
+dd 05a04f60fh
+dd 0ba479644h
+dd 0995c7975h
+dd 03644519ch
+dd 0d974beabh
+dd 08df180d1h
+dd 076eededch
+dd 07b0f55a9h
+dd 009e1c8b4h
+dd 06216b280h
+dd 00c7a408ah
+dd 0135b24a6h
+dd 0ac446fa1h
+dd 0d367dbb3h
+dd 0fe5c330bh
+dd 075e878d8h
+dd 028dfd681h
+dd 041118744h
+dd 0a5ad6d6ah
+dd 0d0fc977fh
+dd 0797fe87eh
+dd 0fabcc5ddh
+dd 0db6327fch
+dd 012921ab1h
+dd 0cc7aba94h
+dd 049874249h
+dd 01f0719d2h
+dd 0c2c41bd9h
+dd 026c3d54ah
+dd 09722ea54h
+dd 0a5bc16dbh
+dd 03f7f3233h
+dd 0c7b887c4h
+dd 0948dca54h
+dd 055566f4ch
+dd 011391cf5h
+dd 033149337h
+dd 0566850f6h
+dd 0f8935a6bh
+dd 0b9508938h
+dd 0b56352dfh
+dd 0ea56cfd4h
+dd 0e247a38dh
+dd 0399a0af2h
+dd 04c8e6b1ah
+dd 055dfe32ch
+dd 0789e2638h
+dd 062977adch
+dd 0dca3739eh
+dd 0a76fde57h
+dd 0f573259ch
+dd 09e629134h
+dd 0fe529400h
+dd 0d1dd348ah
+dd 0abf91d70h
+dd 00c383540h
+dd 06de1256fh
+dd 0de14a90ch
+dd 0067a27f9h
+dd 0e31f1fcah
+dd 0b6c5ae95h
+dd 0973e617ah
+dd 00776e752h
+dd 0f09f22d7h
+dd 01610305fh
+dd 0c142e1d4h
+dd 0cb39a929h
+dd 0cad16de9h
+dd 0c0ae53c9h
+dd 01ec302bfh
+dd 076501302h
+dd 0cb1d934fh
+dd 0d30c284bh
+dd 093a4cde0h
+dd 0041c8370h
+dd 03c149281h
+dd 03b4af9c9h
+dd 0d1a1ed13h
+dd 0ad392cc6h
+dd 011544a75h
+dd 016e43ce4h
+dd 0101bac95h
+dd 0dd611287h
+dd 08a3af379h
+dd 024323877h
+dd 00f48b298h
+dd 0d439f12dh
+dd 03be553d7h
+dd 0537bd8bah
+dd 07fc17c97h
+dd 071bbc4ach
+dd 0f2b5e6bdh
+dd 0ae626520h
+dd 0869031e0h
+dd 0013590cfh
+dd 00615ed56h
+dd 06c55f464h
+dd 00fbe0bb9h
+dd 0e502ef2dh
+dd 09b5a629bh
+dd 0ce6c0896h
+dd 0abd0d139h
+dd 0d6c5858ch
+dd 0409019a8h
+dd 0e270c723h
+dd 0d03b30f5h
+dd 00736a851h
+dd 08919fa5ah
+dd 0ffb4818ah
+dd 0a4e6241bh
+dd 01480b54ch
+dd 0317deebbh
+dd 0fd718275h
+dd 0f5c39b25h
+dd 0ebc6f9b3h
+dd 0864f8cbdh
+dd 0357ac266h
+dd 004291ca4h
+dd 0e38c84c9h
+dd 07616a29bh
+dd 00855f618h
+dd 0567563e5h
+dd 0c0211e03h
+dd 0773c9ec0h
+dd 06f85105fh
+dd 097a63e9bh
+dd 00be2afd8h
+dd 0e15b7f44h
+dd 068164b5ch
+dd 0c14cf471h
+dd 0c6d03786h
+dd 0812018bdh
+dd 0b421421eh
+dd 003a412d3h
+dd 0962c9df4h
+dd 0e1f96f68h
+dd 046b7f9a3h
+dd 090aeae3ch
+dd 031b1bff2h
+dd 037eb2358h
+dd 06ddc4ecdh
+dd 0d8657f3ah
+dd 0d3e94bbbh
+dd 02e9b93d7h
+dd 0373ad071h
+dd 03af60fa3h
+dd 057cb7cdeh
+dd 0ba31a08eh
+dd 04d99b3bch
+dd 0fbd61880h
+dd 010367a1ch
+dd 0730590ach
+dd 08950d09ah
+dd 05e7dd1e2h
+dd 0a7b91678h
+dd 0c1a5ccffh
+dd 00c9aaa9fh
+dd 0e699beadh
+dd 0e17ede06h
+dd 08189ace4h
+dd 03c42ef29h
+dd 0d29a2132h
+dd 0b8426680h
+dd 076b02a41h
+dd 096514cfeh
+dd 07c50c282h
+dd 07c7b8cd5h
+dd 09adc9efeh
+dd 0e9c6e489h
+dd 06922124fh
+dd 0f1b2aef0h
+dd 0c0fbf477h
+dd 0642469e6h
+dd 098c1646eh
+dd 055a479afh
+dd 098ede201h
+dd 0b0c17e89h
+dd 035dda0f7h
+dd 05eecba92h
+dd 07e7bf193h
+dd 0902bf8fbh
+dd 0c5328d16h
+dd 0c0611b74h
+dd 0b5b9f5b0h
+dd 071fb5705h
+dd 0897e93cah
+dd 02b2a65adh
+dd 0c821219ah
+dd 0ca89d134h
+dd 0a3d17d03h
+dd 09201653eh
+dd 0a7baef4dh
+dd 050377606h
+dd 0b4d1d448h
+dd 000f42adah
+dd 0631df77dh
+dd 0464c0b3eh
+dd 0bc45c628h
+dd 02854b129h
+dd 05805e134h
+dd 0d6cd6611h
+dd 064a359c2h
+dd 0210f7edch
+dd 035ee2cb0h
+dd 09bf35530h
+dd 0d2507ab7h
+dd 0843c142ch
+dd 00ce30379h
+dd 0a8208e01h
+dd 0264a5bf9h
+dd 01143c838h
+dd 098300c1fh
+dd 0e7955a53h
+dd 0dd140273h
+dd 0530ff9b0h
+dd 0d1c55f62h
+dd 0762d1f2ch
+dd 051539b7ch
+dd 0f485c25ch
+dd 0f4b5630fh
+dd 0579dd590h
+dd 0fc130214h
+dd 0b7741ad2h
+dd 03bd85ff8h
+dd 0941ef2d9h
+dd 030cdefbbh
+dd 00ff99150h
+dd 0fc475c8dh
+dd 04a365594h
+dd 074f289efh
+dd 041f01a90h
+dd 03ad02c78h
+dd 0811f6f08h
+dd 0dbb49ee0h
+dd 06c14a8f7h
+dd 071828941h
+dd 00c48bee8h
+dd 029c3badfh
+dd 0cd99b85fh
+dd 0e825cafdh
+dd 0d8b394e9h
+dd 0e3ed9922h
+dd 0121534c0h
+dd 087eb2801h
+dd 019f6cfd5h
+dd 038ba9b77h
+dd 05766981eh
+dd 05cc12ac2h
+dd 009f39a91h
+dd 0f41dcdd3h
+dd 09a2db2b4h
+dd 017060c21h
+dd 0e0f92357h
+dd 02893b7b7h
+dd 08d733e61h
+dd 042790539h
+dd 05889d448h
+dd 0c00cd8f9h
+dd 05c9af616h
+dd 03477516dh
+dd 0fa072f01h
+dd 0e129837ah
+dd 0c3226b58h
+dd 0b9960dddh
+dd 0f9d5560ch
+dd 0a30a4160h
+dd 0465497d1h
+dd 0fa42c1d2h
+dd 05ba73bb1h
+dd 0216c040bh
+dd 0e0b4af03h
+dd 0ce5d6f34h
+dd 096fa08d1h
+dd 03c96cad1h
+dd 08a83f573h
+dd 04f734f4bh
+dd 0a730d4a1h
+dd 081a3cdd0h
+dd 0eecffe64h
+dd 0808404c5h
+dd 051b2bfd3h
+dd 0f9828908h
+dd 0eeaa8323h
+dd 0488f9c9bh
+dd 032213f62h
+dd 063e65a0fh
+dd 09a95323ch
+dd 0cc9efda1h
+dd 04c0e2df6h
+dd 030d990e6h
+dd 086a2e76bh
+dd 066005d82h
+dd 0ca9410e5h
+dd 0b8ff9ac9h
+dd 0ea222283h
+dd 0136529e7h
+dd 0860c042ch
+dd 04f2ef635h
+dd 084ba466fh
+dd 0a3b0cd25h
+dd 022ecb6e8h
+dd 0d0f86c5bh
+dd 08a5fd8cfh
+dd 0331618f0h
+dd 0b7c06253h
+dd 0605c9558h
+dd 07369a3c5h
+dd 0eb044d87h
+dd 0df422aa4h
+dd 094d9d54bh
+dd 0f31461eeh
+dd 0cbce1c67h
+dd 02224aef0h
+dd 04280c970h
+dd 01a2aedf9h
+dd 0c9f0606bh
+dd 07433b104h
+dd 002a0fb96h
+dd 04516488bh
+dd 0a2985131h
+dd 09a0bc865h
+dd 0d95d4731h
+dd 03a5c5ce9h
+dd 0432dc2e3h
+dd 065956512h
+dd 0966fecabh
+dd 015e34694h
+dd 0832f55a6h
+dd 096255e29h
+dd 09f2d6a8bh
+dd 00eb1ef71h
+dd 01299302dh
+dd 07928dde3h
+dd 0509fd3abh
+dd 0904aa9cfh
+dd 0b782d261h
+dd 06f242b06h
+dd 062717b61h
+dd 0fdff2836h
+dd 0a5c8c893h
+dd 02ac744aah
+dd 0ff8bb711h
+dd 04a875982h
+dd 0fdbc6b18h
+dd 09573bf37h
+dd 0a782856fh
+dd 01bd2fd65h
+dd 0b56c1053h
+dd 04a1ebebfh
+dd 0ac9ed91eh
+dd 063370b67h
+dd 0b2b75d24h
+dd 0bed98475h
+dd 0092047c3h
+dd 0abdd2b57h
+dd 06c40e717h
+dd 04eeae079h
+dd 0d39f7774h
+dd 01ac5d092h
+dd 006d00818h
+dd 06be7c146h
+dd 0f48be440h
+dd 02573e161h
+dd 0b27a431dh
+dd 0381cf5ach
+dd 02cab9ec1h
+dd 008739502h
+dd 0bb40cc0bh
+dd 05f8103f6h
+dd 07165669ch
+dd 09f537d6ah
+dd 01b94f357h
+dd 05c1df87ah
+dd 0b02714adh
+dd 023d688c1h
+dd 0030001ach
+dd 0f6cdf41fh
+dd 0464450fah
+dd 06cba2564h
+dd 0fa69ff27h
+dd 01356da26h
+dd 0690afcb6h
+dd 03e855511h
+dd 06e1cb8bah
+dd 00979c13dh
+dd 0d909b207h
+dd 05495268bh
+dd 08187fc73h
+dd 0822c1cfch
+dd 087f02d57h
+dd 0e5b51bb7h
+dd 002d2f955h
+dd 0af5d526fh
+dd 0f9557711h
+dd 0bbe1cc52h
+dd 00eed89a7h
+dd 047ca1313h
+dd 078d8bde8h
+dd 0cb8d7ec3h
+dd 0fc71b953h
+dd 0800a5443h
+dd 0a784233dh
+dd 02d99ac25h
+dd 0c831ef7ah
+dd 0fd4a29b1h
+dd 07848a3b0h
+dd 01dcae996h
+dd 0cd9ba182h
+dd 0df2bcd08h
+dd 0351e68d2h
+dd 05ffa322dh
+dd 0b2c8c0c7h
+dd 09d08cdeeh
+dd 055434097h
+dd 09d53340bh
+dd 0f34dce37h
+dd 0dc529359h
+dd 0294f7306h
+dd 0d8b57af4h
+dd 0a4a95eb1h
+dd 02fed92fdh
+dd 0bdbd1095h
+dd 04bd340b7h
+dd 04ae9c3bah
+dd 003bcef52h
+dd 0cb7abd40h
+dd 04f3af81bh
+dd 098c6763dh
+dd 08313697eh
+dd 0aee485ech
+dd 046a4e955h
+dd 03babc31fh
+dd 0fe12ea6ah
+dd 0844aab8fh
+dd 02873cd69h
+dd 036725a93h
+dd 03794f5c3h
+dd 08b7d3ab7h
+dd 0e0540fbah
+dd 0fcaae7e8h
+dd 0e6ad826fh
+dd 0f0ca6cedh
+dd 06cc4dddfh
+dd 03efc6307h
+dd 08f488e77h
+dd 0ce4dcc0bh
+dd 05898918fh
+dd 01a7dbca7h
+dd 0ea4e95d4h
+dd 058547b51h
+dd 035583f6ch
+dd 06df760d9h
+dd 0a765bef5h
+dd 0d9663613h
+dd 04ff93144h
+dd 07df4edcch
+dd 0f81fb26eh
+dd 0efdf58b8h
+dd 0efefbe15h
+dd 06a6b1b9ah
+dd 0da0e8964h
+dd 02913382ah
+dd 0bb020366h
+dd 01c005cc6h
+dd 0e44b9a04h
+dd 012b1a1fch
+dd 099a081b0h
+dd 0f817223ah
+dd 0efa2a9eeh
+dd 09c121977h
+dd 04750917ch
+dd 0163efeb3h
+dd 04815c3f1h
+dd 06ba784fah
+dd 0515bafd7h
+dd 0144ce20dh
+dd 03d26a789h
+dd 0febf9d5ah
+dd 0e30aa97eh
+dd 01d2a1ac2h
+dd 03e3aef65h
+dd 0a01ffd90h
+dd 09b0daa69h
+dd 078574ab4h
+dd 0b334ed5dh
+dd 01786d7a0h
+dd 061768191h
+dd 0691854f9h
+dd 0730296a0h
+dd 01a894d02h
+dd 07a6d9fbch
+dd 004ac0b63h
+dd 0e5ff86d1h
+dd 040d6600dh
+dd 001475ec0h
+dd 075d772bah
+dd 00c7cecach
+dd 06de78016h
+dd 0693d156bh
+dd 0c160bdbch
+dd 0c6d61e3eh
+dd 05b970597h
+dd 082c03caah
+dd 0d023d7bdh
+dd 0d9bd0b7ch
+dd 01484cf2bh
+dd 0ea2d7b78h
+dd 0613592afh
+dd 0a294ade4h
+dd 0a1835fa8h
+dd 0cfdde01dh
+dd 08b916fd9h
+dd 061147b61h
+dd 086e3d3b1h
+dd 05d0bd8e8h
+dd 03ed5da40h
+dd 085b28fcdh
+dd 0ae4bfb46h
+dd 056c44528h
+dd 05112268bh
+dd 0553092f4h
+dd 01edbd099h
+dd 081c77c0dh
+dd 0f60ab29bh
+dd 01cd81671h
+dd 02148f5d7h
+dd 0d0b24ebah
+dd 075b2f6aeh
+dd 0cf96a73ch
+dd 00c360788h
+dd 04b4887d8h
+dd 038ec6670h
+dd 0522126f7h
+dd 0c59cde5eh
+dd 00cb08e6bh
+dd 0afb76455h
+dd 0d1df2647h
+dd 095fe2194h
+dd 0e5f90fcch
+dd 0897eca10h
+dd 0e66067b7h
+dd 00aa5a33dh
+dd 0823fcdf9h
+dd 03c1db01eh
+dd 07163ae13h
+dd 0e6479712h
+dd 0043522abh
+dd 0e9c77899h
+dd 059e27c1fh
+dd 062b17fb1h
+dd 0800eacd1h
+dd 017fd4be0h
+dd 0ac9e7d19h
+dd 0326a5859h
+dd 0efe83674h
+dd 0c51e8bc2h
+dd 0c70daf83h
+dd 02e698283h
+dd 04841f017h
+dd 0d35aee31h
+dd 073b989feh
+dd 07a464801h
+dd 0ef166a1ah
+dd 0cd0b40b6h
+dd 03670ae53h
+dd 09386256bh
+dd 0cabeedb6h
+dd 086b6f02fh
+dd 046c3f0e6h
+dd 09cf90f0eh
+dd 06e9a368dh
+dd 01d41107dh
+dd 0bccabc2eh
+dd 0d33574a6h
+dd 0631590f9h
+dd 04f163f36h
+dd 0151b1af0h
+dd 00fa1b693h
+dd 068c0f081h
+dd 03d42b889h
+dd 01a71eb60h
+dd 098bf454eh
+dd 01e5e8424h
+dd 0f7d791dah
+dd 0b17a1e56h
+dd 0de83a151h
+dd 0a629bf73h
+dd 0840fb2cdh
+dd 03dabd546h
+dd 0bcef01ceh
+dd 004be098dh
+dd 02eee4abfh
+dd 07b3af0adh
+dd 0614c45bch
+dd 048716483h
+dd 04a839eech
+dd 026785211h
+dd 009b07e2ch
+dd 0f4e3d7c6h
+dd 0d2ef8bbeh
+dd 0a842ccd3h
+dd 01eb44204h
+dd 006356489h
+dd 072c51dfdh
+dd 0bc40b374h
+dd 06c6f6f68h
+dd 08921b948h
+dd 0e68bf8e8h
+dd 0bf1d59fch
+dd 07836458bh
+dd 0ccd81feah
+dd 0d9579d65h
+dd 00cf901b5h
+dd 031b0d6a6h
+dd 078832d18h
+dd 090d6a8d6h
+dd 0b6c21964h
+dd 089303d52h
+dd 01c973cc2h
+dd 015409943h
+dd 06630b2a4h
+dd 0a56c1e83h
+dd 01086c103h
+dd 0b5f4d1d6h
+dd 03d8a9728h
+dd 0ba0e62dch
+dd 0aa6ff8c1h
+dd 006d9c4f6h
+dd 0f3856ff0h
+dd 0bfa12f23h
+dd 02acc80cfh
+dd 0b2a59965h
+dd 0adcdd4c2h
+dd 092eb8702h
+dd 0d64ddc5ch
+dd 0d4b6a934h
+dd 024134b6dh
+dd 037a8216dh
+dd 037600200h
+dd 0a825a280h
+dd 026b275adh
+dd 041374a41h
+dd 062094db7h
+dd 0b5243b36h
+dd 0954204b5h
+dd 0a1c1010ah
+dd 0c810a190h
+dd 0e5eebd53h
+dd 053aa31adh
+dd 05fcc85fbh
+dd 0f3b080dfh
+dd 00fcbd37ah
+dd 0d68bc6b5h
+dd 0f85f1889h
+dd 029465441h
+dd 0e7df5aadh
+dd 052170639h
+dd 06c109c2eh
+dd 0dfa052bfh
+dd 079ef2c9dh
+dd 09da4eb99h
+dd 02cb35944h
+dd 07bfd98dch
+dd 0742f1fd8h
+dd 0539fa58ah
+dd 07f851718h
+dd 0bfe3795fh
+dd 010c8b7c4h
+dd 0dc9d3a9eh
+dd 015f14a72h
+dd 0e3391212h
+dd 049c8333ch
+dd 04db4abd8h
+dd 0b7670d60h
+dd 04c6ba0eah
+dd 0a67bfe20h
+dd 04b682c50h
+dd 07dd312f2h
+dd 03a883d41h
+dd 0ec83bc5ah
+dd 06ebb1231h
+dd 0e0b3e127h
+dd 00885dcf6h
+dd 04f2c60feh
+dd 0ce4bb3a5h
+dd 089d6034dh
+dd 0c223cbdah
+dd 013b50fa0h
+dd 0a86e6078h
+dd 0cf3ed48fh
+dd 02a2d0790h
+dd 0b9b1c7fch
+dd 051c9fe7fh
+dd 025bc4b68h
+dd 074031ac2h
+dd 016a0068fh
+dd 0eadf280eh
+dd 0003ada40h
+dd 059a0738ch
+dd 0ef65d5c0h
+dd 0816cbb13h
+dd 0ecc2276eh
+dd 0439a4c2fh
+dd 013451baeh
+dd 08ab33897h
+dd 0e1c35755h
+dd 0abc692a2h
+dd 0ea8cf7d0h
+dd 0f70264b9h
+dd 0041a286ch
+dd 0f9878794h
+dd 014079fe5h
+dd 04604136fh
+dd 063e2124bh
+dd 073e0e5cah
+dd 079e2f000h
+dd 047c6039bh
+dd 0721b142ah
+dd 012e1d119h
+dd 0dfb6b397h
+dd 0826c2b3ch
+dd 03691115bh
+dd 04c08e257h
+dd 00dbc54e9h
+dd 078fafbcdh
+dd 071b5c6adh
+dd 022910b01h
+dd 0d6766623h
+dd 022c85824h
+dd 04a38b8cbh
+dd 001fd2c66h
+dd 0d2506c09h
+dd 06b675949h
+dd 0319fb5f8h
+dd 04d2a91adh
+dd 06efa872eh
+dd 092201830h
+dd 0012cbfc0h
+dd 0a7bfb402h
+dd 0ac8d20ddh
+dd 0a24d174ch
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679906.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679906.inc
new file mode 100644
index 0000000..9efb20a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679906.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 000000906h ; Patch ID
+dd 008142015h ; DATE
+dd 000030679h ; CPUID
+dd 0cf3c9be1h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000906h
+dd 000000000h
+dd 000000000h
+dd 020150814h
+dd 000003201h
+dd 000000001h
+dd 000030679h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 043a2ddb5h
+dd 03caab5a4h
+dd 027483746h
+dd 081710109h
+dd 0b410307fh
+dd 0c4c17cf5h
+dd 0376abbdfh
+dd 0f9f11abeh
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 0dcf2a922h
+dd 099601e38h
+dd 03f84f919h
+dd 0ad75fad6h
+dd 0699d8509h
+dd 0c92fafb6h
+dd 05adbc7b9h
+dd 0446728fah
+dd 094a6d10ah
+dd 0dc2ef7a3h
+dd 0ced37d60h
+dd 0ba66136dh
+dd 0862f88c6h
+dd 013d75d7bh
+dd 02959b2efh
+dd 03da0532dh
+dd 045c3d27ch
+dd 0b169f2d0h
+dd 0290ba31eh
+dd 0361c39ceh
+dd 080a68737h
+dd 061712566h
+dd 077278923h
+dd 034841240h
+dd 0cc144c56h
+dd 04ad89374h
+dd 0fe97692ah
+dd 018e716c6h
+dd 0cb33dbcdh
+dd 02205f208h
+dd 0f8cdf6cfh
+dd 0da9ef66fh
+dd 0c3c5d535h
+dd 08261cf3ah
+dd 00728c010h
+dd 0daf3159eh
+dd 04403b013h
+dd 0803ae7f9h
+dd 076575a0ch
+dd 0205da6e8h
+dd 0b4d7093fh
+dd 02643e9a0h
+dd 08756676bh
+dd 0ad9863e0h
+dd 04a755796h
+dd 03c42f484h
+dd 0e747d25bh
+dd 0e3f4e06bh
+dd 05275a6f5h
+dd 0694d8fa2h
+dd 03b136bdbh
+dd 0e3c0aab5h
+dd 006b79758h
+dd 0a57895dch
+dd 02c57bc4ch
+dd 0949db760h
+dd 046f2766fh
+dd 02bf900b7h
+dd 0b6efba6ch
+dd 092d9d2ddh
+dd 03c2f8beah
+dd 0c70b3f57h
+dd 05fa352deh
+dd 08c4d7d96h
+dd 0bf828c06h
+dd 077af99c0h
+dd 081432b56h
+dd 038d7b5b2h
+dd 002dce03ah
+dd 08f0bc12bh
+dd 0a9e5991ch
+dd 06c40c7ffh
+dd 0da63e699h
+dd 0b06744b0h
+dd 0e368d9ddh
+dd 06b134e9dh
+dd 0ed130163h
+dd 0457d2715h
+dd 0d4d7b3cch
+dd 0c84fd4dfh
+dd 0766841c3h
+dd 0fab269e4h
+dd 0a52341ceh
+dd 0474c6568h
+dd 07fe27854h
+dd 0027b1fefh
+dd 0fe3e5da1h
+dd 0caae061fh
+dd 0d2e6b847h
+dd 015091b2eh
+dd 035b2be89h
+dd 0fc237111h
+dd 06e84cf0fh
+dd 0a30a39c0h
+dd 076ded1bah
+dd 09f87eb21h
+dd 0881066d2h
+dd 047f19706h
+dd 055607448h
+dd 0e81b7f48h
+dd 07517f40fh
+dd 0fe63518fh
+dd 068641512h
+dd 03edcab45h
+dd 052177596h
+dd 0499ee92ch
+dd 0770ba30eh
+dd 0a884b5a9h
+dd 04b821a3dh
+dd 092a3f5b2h
+dd 0103425a3h
+dd 01fe0bac2h
+dd 0db177405h
+dd 030ff0831h
+dd 02a623b88h
+dd 09baa6f0ah
+dd 0a77759bfh
+dd 059ed67dfh
+dd 00cf899b1h
+dd 08a7e0ff0h
+dd 0059ad186h
+dd 001500960h
+dd 07239ea55h
+dd 0583e4cc5h
+dd 03da9c9a6h
+dd 0bd8a8705h
+dd 07d5c5247h
+dd 0eb0ed83eh
+dd 01547381eh
+dd 0abfc21b0h
+dd 03488c5a0h
+dd 06302a52dh
+dd 05069400ah
+dd 07bb15ff5h
+dd 038758f04h
+dd 031e2c1c2h
+dd 096d30d67h
+dd 05f62e791h
+dd 0f05024e2h
+dd 0d906091ah
+dd 07d8641b0h
+dd 0caeb5a30h
+dd 0384a76b4h
+dd 0f120888ch
+dd 059d8f006h
+dd 09d94eba5h
+dd 0117d34ffh
+dd 0f46aa4d8h
+dd 020a3cfcch
+dd 086b9e933h
+dd 0e8f7ac98h
+dd 0cd4a75eeh
+dd 04fbfa177h
+dd 0408696a5h
+dd 089b8dcc1h
+dd 078651cd8h
+dd 05fab601ah
+dd 038050043h
+dd 0d50c6bedh
+dd 037d07ef2h
+dd 09140c304h
+dd 0f578b861h
+dd 074eb25c6h
+dd 0000cdf40h
+dd 0a76077f8h
+dd 0b86c9382h
+dd 0df24a72ch
+dd 045e687c5h
+dd 0039216efh
+dd 064ef2d9fh
+dd 09117958dh
+dd 05e697b9bh
+dd 04d7aa241h
+dd 0a87f5765h
+dd 0c58c7c2eh
+dd 054a973beh
+dd 009fe2325h
+dd 01ab4c3ceh
+dd 0088c3b33h
+dd 09bf759a1h
+dd 0fef93b8eh
+dd 0418c91ceh
+dd 0503a1318h
+dd 021311c95h
+dd 09793baabh
+dd 0efb2b73bh
+dd 095d7b8d7h
+dd 069342d36h
+dd 0e453e781h
+dd 066239448h
+dd 00eca817fh
+dd 000cea457h
+dd 06ddf770dh
+dd 06b0b4a26h
+dd 0630040ceh
+dd 0f56bec33h
+dd 000612225h
+dd 0d066bdefh
+dd 01564f86bh
+dd 0aa65543ch
+dd 0fb53e2bch
+dd 0d6785b00h
+dd 072d52d3fh
+dd 07aff3024h
+dd 0941747dfh
+dd 0da370b59h
+dd 0c330480eh
+dd 008854f3bh
+dd 0d72ee3cah
+dd 09f51535ah
+dd 05e3d0818h
+dd 060a654c1h
+dd 055da024dh
+dd 00d91b4cbh
+dd 01cac0271h
+dd 05a5597fdh
+dd 0c2b9c32ch
+dd 0a7ec0508h
+dd 0cdfdf4b2h
+dd 0bab58048h
+dd 0ba633a43h
+dd 0d15fcfd5h
+dd 072b3d8a1h
+dd 0be37b808h
+dd 082a6b4d6h
+dd 033ac0247h
+dd 09907c6bfh
+dd 08e518ebeh
+dd 00d3de871h
+dd 02c9d0affh
+dd 061f63a60h
+dd 0a29c8052h
+dd 0d97a4ddah
+dd 0c662be19h
+dd 036547eb9h
+dd 0a0f7d51ah
+dd 068109fc3h
+dd 0b1cdcc1bh
+dd 050790f31h
+dd 02fd558a2h
+dd 0d107c74dh
+dd 034dde6feh
+dd 0a99904cfh
+dd 010d26990h
+dd 0e73d8a37h
+dd 0b80227f7h
+dd 02cad046dh
+dd 0ecef383fh
+dd 003870adbh
+dd 0a527f1d2h
+dd 079ba67cdh
+dd 0f92fb908h
+dd 0d50bcf4fh
+dd 0a54a00d8h
+dd 05a989ff5h
+dd 0ce717558h
+dd 07526024eh
+dd 061a97db4h
+dd 00c93235eh
+dd 038d3587eh
+dd 0e08c51cdh
+dd 0729fb27ch
+dd 08c424380h
+dd 06856623dh
+dd 04b1b4d2eh
+dd 0b148ec9eh
+dd 095fa4748h
+dd 0a452ea62h
+dd 073bc551bh
+dd 05e4d431fh
+dd 0089eece0h
+dd 006ae03efh
+dd 0cbab30abh
+dd 016234e7ch
+dd 0a7030ad5h
+dd 06b8a8469h
+dd 03d8259bch
+dd 08ee5662fh
+dd 0c8b1aebah
+dd 09a8dc39dh
+dd 0fc0aebebh
+dd 075db9b91h
+dd 065f2b2dch
+dd 0b5336b3fh
+dd 093c3ff9fh
+dd 0507f91d0h
+dd 0fad12ec2h
+dd 0a0ebd5b0h
+dd 0738cc6ffh
+dd 06d57cab7h
+dd 0e3707f1ah
+dd 0de405a88h
+dd 08c4bfb28h
+dd 0961f6a0bh
+dd 0536d059ah
+dd 05136874fh
+dd 0e884e61ah
+dd 0279356eah
+dd 0a9dd876eh
+dd 0e5f53a3ch
+dd 0c32c73e7h
+dd 02e3b35b7h
+dd 0da9ec5e7h
+dd 03c07e6c5h
+dd 0d0038105h
+dd 04af9d14ah
+dd 04b2cce9ah
+dd 0c2e4cb30h
+dd 065a97282h
+dd 07db6cc1dh
+dd 04c3d52c6h
+dd 0253a20bfh
+dd 08388a3fah
+dd 08fe9e5cah
+dd 024c2a337h
+dd 06d4d67d0h
+dd 0cf6d1b58h
+dd 0a7442317h
+dd 08befda10h
+dd 0dd5678e9h
+dd 00b4cb243h
+dd 03f4c3311h
+dd 0ea13299ch
+dd 0b31e6932h
+dd 0684b5ef8h
+dd 00a022b34h
+dd 064653145h
+dd 03e6ba487h
+dd 06cb8c09dh
+dd 07cbbec6ch
+dd 0de8be0e9h
+dd 00483591dh
+dd 0729f921ch
+dd 092ce2ea0h
+dd 05a2e5c7ah
+dd 0ca6cf2efh
+dd 0e73897f5h
+dd 07df9df4eh
+dd 051727a47h
+dd 0843cf81dh
+dd 04016043eh
+dd 043542c1ah
+dd 054b5f366h
+dd 07b7ffd1fh
+dd 05deab9a1h
+dd 022ae4942h
+dd 03a5f6bddh
+dd 0ab3e630dh
+dd 0dedaba07h
+dd 083087152h
+dd 0037c895ch
+dd 0cf0a95b7h
+dd 0b10e4537h
+dd 0ef3da98ah
+dd 00b6495d6h
+dd 0676da78dh
+dd 0df1e15cah
+dd 0110d5739h
+dd 0f22954ach
+dd 00bd5f8deh
+dd 0764e4b7fh
+dd 0edc954d1h
+dd 04bba12b7h
+dd 00d04ad2ah
+dd 03d976ddbh
+dd 0470e9dfah
+dd 05b59b1e6h
+dd 0b2886512h
+dd 0b680fb69h
+dd 03a011db0h
+dd 056b6fd17h
+dd 0c9f5bb82h
+dd 04d5244a4h
+dd 018b91769h
+dd 0c154ed77h
+dd 0b3d5b3aah
+dd 034e418dfh
+dd 0106f7813h
+dd 020701132h
+dd 09f442006h
+dd 069a486dch
+dd 0294107e6h
+dd 0d761af32h
+dd 0de2f154ah
+dd 07a4b098ah
+dd 02fb2c047h
+dd 05e590b82h
+dd 009063a2ah
+dd 09a24e7c9h
+dd 0e86bdb46h
+dd 00ed587f4h
+dd 04b8d224dh
+dd 04d64ad7ch
+dd 0dabc5aa9h
+dd 0685cca1ch
+dd 0a007469bh
+dd 04880abd5h
+dd 05371bfadh
+dd 0e499177ch
+dd 0ac529286h
+dd 00d212b80h
+dd 032e85613h
+dd 04784e1edh
+dd 0643e5e67h
+dd 0130bdc71h
+dd 0012bbb67h
+dd 07ceb635ah
+dd 0428620c0h
+dd 01fc7eafch
+dd 0486d38afh
+dd 0f0c1dfd5h
+dd 0f59926c3h
+dd 05db95ef4h
+dd 0dacb1984h
+dd 0547b5a86h
+dd 0f04c7265h
+dd 0408bc500h
+dd 0c2380006h
+dd 0df9908b5h
+dd 0de4de61ch
+dd 0e526a591h
+dd 083a335fdh
+dd 0b4e15865h
+dd 07881a968h
+dd 0497538f0h
+dd 0d46ac765h
+dd 0bd98a5bah
+dd 0127eeb78h
+dd 0faea6048h
+dd 019509c93h
+dd 02af9f6f3h
+dd 09c537416h
+dd 01dd28e76h
+dd 05d8df7b7h
+dd 0e1c2e71ah
+dd 04152c80ch
+dd 0548a4399h
+dd 07dae43a6h
+dd 07cf5a60eh
+dd 07e9c4506h
+dd 033aa9719h
+dd 05f68a698h
+dd 051bbcbfdh
+dd 0adf797f1h
+dd 00f9dc624h
+dd 0e50532a7h
+dd 08058f8ffh
+dd 086c379d2h
+dd 0da84fd42h
+dd 0990a6381h
+dd 077935252h
+dd 0efbf6cech
+dd 08ef15205h
+dd 0e07b8aech
+dd 0ffc82d16h
+dd 006c28c9bh
+dd 0d43f62b2h
+dd 0e723a5cah
+dd 008f3d54ch
+dd 0a6514692h
+dd 027ba1fdeh
+dd 0a8fde31dh
+dd 021ba5808h
+dd 059933296h
+dd 00aef048dh
+dd 0eca5de3ch
+dd 08db52913h
+dd 0929a33d6h
+dd 076ac6926h
+dd 06524ec26h
+dd 09258528bh
+dd 0a239aa20h
+dd 0ec3caa74h
+dd 01005904dh
+dd 0cb422f4fh
+dd 085280f8fh
+dd 06316f7bfh
+dd 0627472d7h
+dd 0b535c753h
+dd 029b4dfa2h
+dd 086d5f761h
+dd 0597398cdh
+dd 04ee1301ch
+dd 03163ae95h
+dd 06d492d12h
+dd 0373d1cfbh
+dd 095b6baeah
+dd 0d0725426h
+dd 03eb8804ah
+dd 0f0abda3eh
+dd 077ea41afh
+dd 0b46456e8h
+dd 055faac7ch
+dd 0674107e7h
+dd 0f068fb8ch
+dd 0c65c721ah
+dd 000bd4cefh
+dd 096b45638h
+dd 0f8acea70h
+dd 0cdff3413h
+dd 0c2a66951h
+dd 0a29e917bh
+dd 04e0c62dch
+dd 0219ff902h
+dd 01a9c1368h
+dd 06480c9cah
+dd 08e88b924h
+dd 0e4affe50h
+dd 0990b0027h
+dd 070a15b59h
+dd 05adbf7cfh
+dd 063474e15h
+dd 08ff5c795h
+dd 0b132d158h
+dd 0a544f79fh
+dd 08519868fh
+dd 0f29add8ch
+dd 06fa89192h
+dd 02d6feb4ah
+dd 088fe236ch
+dd 0660b4d18h
+dd 05bf1a1e1h
+dd 0f1f02c99h
+dd 0dc59b602h
+dd 0fbdedb59h
+dd 09d96ce2eh
+dd 08c6965b5h
+dd 01f07b1a4h
+dd 0e800f072h
+dd 0c7c4474fh
+dd 0fbbc1990h
+dd 0f592a539h
+dd 0ad6d6988h
+dd 05c895b5eh
+dd 02dc96c72h
+dd 052a2f88ch
+dd 011a8be1eh
+dd 0c6032973h
+dd 008eea7cbh
+dd 09ff61892h
+dd 006204ca8h
+dd 0485236e8h
+dd 089771a1dh
+dd 0a0d0fe97h
+dd 02a3efc4ah
+dd 01bb70a92h
+dd 0abaf6893h
+dd 056078c6fh
+dd 0a74e0d5ch
+dd 0d6e28c61h
+dd 0234f95d1h
+dd 0e1ad79fbh
+dd 0c4a6682fh
+dd 008e9fdf5h
+dd 09ad48e7ch
+dd 09c0336b8h
+dd 0b6a753b2h
+dd 0475a1a25h
+dd 0e8217b86h
+dd 0e7c1b2aah
+dd 0d06323cah
+dd 0e8cbb5a5h
+dd 08b6a9360h
+dd 0748486b6h
+dd 0858c0260h
+dd 05824ef29h
+dd 0ca542c94h
+dd 0ecf90d58h
+dd 03bb8c521h
+dd 0db22bb95h
+dd 083c45f59h
+dd 092637f9eh
+dd 055c9a1c6h
+dd 0c1118e8eh
+dd 0f1de4411h
+dd 0abb8d254h
+dd 01891c2aah
+dd 08dfc3111h
+dd 0a9ab2134h
+dd 0d1fc8dach
+dd 08817f2a1h
+dd 0fb4aba5bh
+dd 0008772c1h
+dd 01c162050h
+dd 0b92b6e58h
+dd 0c1523dcdh
+dd 08f2b1afch
+dd 0902eaf22h
+dd 03a9b06c1h
+dd 08490040eh
+dd 073729bf2h
+dd 0f082d482h
+dd 0e0206db2h
+dd 01732da6ch
+dd 06ff53a20h
+dd 089973673h
+dd 04c9a7778h
+dd 061fcca1ch
+dd 087c12ea5h
+dd 00b4e39c0h
+dd 00020544fh
+dd 0958ce2b3h
+dd 065458c3eh
+dd 0b63fa446h
+dd 0ee36c16ah
+dd 0832d01deh
+dd 0743f5ad5h
+dd 0e6f1ac48h
+dd 038c83fe4h
+dd 05281debch
+dd 07b4e1b0dh
+dd 0857dcfd9h
+dd 04a21d31ch
+dd 0c8618dc9h
+dd 0a2474177h
+dd 08b23a6a0h
+dd 087afabc3h
+dd 0fe48c380h
+dd 042ce06cbh
+dd 043d65802h
+dd 0ab2d9c64h
+dd 006fb3129h
+dd 012da3f6ch
+dd 02ea6890dh
+dd 070fc521dh
+dd 02831d62ah
+dd 04981db12h
+dd 0293b7cb6h
+dd 086cb4166h
+dd 0a9fb2890h
+dd 0299268a3h
+dd 0ce2d9b77h
+dd 0a37d5734h
+dd 069c36b45h
+dd 096f1f082h
+dd 04d937dafh
+dd 0369cdeb8h
+dd 075beccceh
+dd 033a16d9bh
+dd 00fadfe1eh
+dd 0595a9650h
+dd 079f4ac20h
+dd 079d5396fh
+dd 0ab6c92b8h
+dd 049c34e67h
+dd 0d28f69c0h
+dd 0d8f5369dh
+dd 0bf2e0985h
+dd 0fedb0010h
+dd 03cbef973h
+dd 0627a43c0h
+dd 0ed201c80h
+dd 00221afffh
+dd 0d286679eh
+dd 02c1de7bch
+dd 003c0a4beh
+dd 0e5acd110h
+dd 08f61588bh
+dd 096bfdac0h
+dd 0903e3e63h
+dd 08441ef21h
+dd 084fd3c65h
+dd 0a8a34258h
+dd 0c5405ef1h
+dd 0d2d51b0fh
+dd 0332b4547h
+dd 01a7908d6h
+dd 02030fbf4h
+dd 047ceff88h
+dd 038b512a9h
+dd 0d4f1fb30h
+dd 03915ce36h
+dd 055472a60h
+dd 0443f41b2h
+dd 00de2ec0dh
+dd 028cc4799h
+dd 036389e94h
+dd 0191fe6eeh
+dd 07cc8368ah
+dd 0ce5c09c9h
+dd 05acc0eb0h
+dd 0c9638e36h
+dd 012a9a36fh
+dd 0dcb18a9fh
+dd 09bd776e4h
+dd 026f12716h
+dd 0d75b0272h
+dd 0212dead0h
+dd 0a3fc1348h
+dd 096e01e96h
+dd 0b7e536bdh
+dd 03a5ec3f4h
+dd 009ffa9f3h
+dd 0639d65c7h
+dd 08c24c202h
+dd 086663ffeh
+dd 0cc6a215fh
+dd 0bd3cba56h
+dd 07452709eh
+dd 01750ff94h
+dd 021ee4256h
+dd 0d1bd2815h
+dd 07d1bef97h
+dd 07e547d80h
+dd 0be49a1c5h
+dd 049ab62cah
+dd 008e0a6d1h
+dd 08d7c9d83h
+dd 0330e4faeh
+dd 05c8cd563h
+dd 0838e5c85h
+dd 05a69de4eh
+dd 0aa72fdb7h
+dd 095acfe03h
+dd 03e19d633h
+dd 07e031b62h
+dd 0bbc916e9h
+dd 0f287db9ch
+dd 071e3a547h
+dd 08d633743h
+dd 0f2d00b8fh
+dd 0fd007eceh
+dd 07187c894h
+dd 05b466b5fh
+dd 07792d52bh
+dd 02f315a77h
+dd 006cfcb53h
+dd 05d4d21b1h
+dd 0a3c9cdeeh
+dd 036ce157ch
+dd 0426ded65h
+dd 063c19af4h
+dd 0dad1f180h
+dd 0d5d87973h
+dd 0fc6baee4h
+dd 0f6fa3878h
+dd 0bf015206h
+dd 0181cf192h
+dd 05b950517h
+dd 05407a13fh
+dd 0d997431dh
+dd 04313fb22h
+dd 00bbe60b2h
+dd 07ef3a929h
+dd 017fe6033h
+dd 0fc9a006ah
+dd 0e403e10dh
+dd 0e0f8d108h
+dd 0a9deffb4h
+dd 0ce7c401fh
+dd 05e97b144h
+dd 0efafd54ch
+dd 04bd367b2h
+dd 0dc1187fah
+dd 0ff9e8c77h
+dd 06724f27eh
+dd 00a2f7367h
+dd 0857300abh
+dd 0927809cah
+dd 0dd2a04ffh
+dd 076ca47adh
+dd 0b78eb6f3h
+dd 04419cfefh
+dd 07aaf0f91h
+dd 01e41867ah
+dd 049afe227h
+dd 03437fb30h
+dd 07526738fh
+dd 056eb98d2h
+dd 04ec5c397h
+dd 0e1fe2bebh
+dd 0f035db54h
+dd 0be6bef82h
+dd 05c6bc7e7h
+dd 001a06ebfh
+dd 064d93cfch
+dd 0c5e802abh
+dd 0ebaa820ah
+dd 0790610b4h
+dd 0577b85a2h
+dd 079d3b443h
+dd 09bbd4b17h
+dd 0ce45a8ceh
+dd 0b632b762h
+dd 0120b4352h
+dd 0d51b0c2ch
+dd 0fcb66f33h
+dd 02be658a1h
+dd 06dbadd73h
+dd 0941980bch
+dd 015e25d3dh
+dd 0cead946eh
+dd 07c2b0321h
+dd 0330541f6h
+dd 0ca4f8294h
+dd 00a30e86eh
+dd 02a272781h
+dd 0022c66c2h
+dd 0321821a7h
+dd 080dd9594h
+dd 0d886b92bh
+dd 0013432f2h
+dd 0f5a48b56h
+dd 08d17f0b9h
+dd 095800966h
+dd 098afb1abh
+dd 06d845b03h
+dd 099ec97d0h
+dd 0200d2458h
+dd 07a6d4cd8h
+dd 0e18e4a4eh
+dd 0093036e5h
+dd 0fa899a8fh
+dd 0b52b4472h
+dd 0f5564f0eh
+dd 03e1159b6h
+dd 092c9adceh
+dd 0c3b6bffdh
+dd 0a8dacccdh
+dd 01d1d738ah
+dd 0a271d2c7h
+dd 0221e7fa7h
+dd 0cd6f691bh
+dd 0445f7b6fh
+dd 0c6b09f8eh
+dd 01634d8f1h
+dd 0d01e6c90h
+dd 0879411c9h
+dd 02e7f184ch
+dd 088d91f45h
+dd 01799b8bbh
+dd 0dfd5a95bh
+dd 08a176c2fh
+dd 02f81ae93h
+dd 0bbec14b9h
+dd 0ddfa43b1h
+dd 017e4b7a3h
+dd 00ef2517ah
+dd 05b2dcc62h
+dd 0ff9f2bf4h
+dd 0200c60f6h
+dd 076de06eah
+dd 0e9bddba8h
+dd 0916a9419h
+dd 0423f1a00h
+dd 0e5708295h
+dd 0a5973036h
+dd 03a488e5bh
+dd 00abecfebh
+dd 0067bf261h
+dd 0c29821d3h
+dd 02934511eh
+dd 0a3852173h
+dd 036cb957eh
+dd 0cd75cce9h
+dd 000a14b12h
+dd 03d734b83h
+dd 01ed4fcd1h
+dd 0da810d32h
+dd 08c505c43h
+dd 0f6ce54f9h
+dd 0fd1b05fah
+dd 0e69e6cech
+dd 004bd79edh
+dd 02f4f4dc1h
+dd 0062c09e4h
+dd 0f736652ah
+dd 098be0b40h
+dd 04055de8dh
+dd 01797eb49h
+dd 0a9dc73adh
+dd 02107537ch
+dd 0cab0f41fh
+dd 040ca9fd0h
+dd 03a2279e7h
+dd 00e70029fh
+dd 0b86e08ech
+dd 0575c062eh
+dd 076f046e4h
+dd 0986bae69h
+dd 08d2445d5h
+dd 067447218h
+dd 0f0be4a44h
+dd 09ef91a75h
+dd 0e4794977h
+dd 0301db791h
+dd 0691fe129h
+dd 053a1b797h
+dd 0a3e5295eh
+dd 0fff2ec88h
+dd 02afa54e7h
+dd 0043a99c6h
+dd 0abd1267dh
+dd 06749fc04h
+dd 0b60c401eh
+dd 021755168h
+dd 014020580h
+dd 08f3dbca4h
+dd 0d91cd7c9h
+dd 0802fd1c0h
+dd 0248b04f3h
+dd 045157229h
+dd 0e7634202h
+dd 01ba2abf9h
+dd 06920ca24h
+dd 042d6beaeh
+dd 05d97beb5h
+dd 06732d509h
+dd 014e280feh
+dd 0c218a6beh
+dd 08217a870h
+dd 0ea7b607fh
+dd 01aa294cfh
+dd 0862a66c7h
+dd 0377afc3eh
+dd 0308e7a87h
+dd 062500026h
+dd 06c5ace14h
+dd 0adbad0c9h
+dd 0c1804dfch
+dd 003680698h
+dd 00db7dbcch
+dd 03f4e6d31h
+dd 0eee4be02h
+dd 048d67cfah
+dd 07d6a9d33h
+dd 0b70b1c4eh
+dd 01d0df2ebh
+dd 07b04ad6eh
+dd 04fe1b627h
+dd 0acf1c121h
+dd 0bb048c8bh
+dd 03d095dc0h
+dd 0fef38cfeh
+dd 01df7cd2ah
+dd 0e854be52h
+dd 0eb17890ah
+dd 0f4511e1bh
+dd 0fae2853ch
+dd 00b2476b1h
+dd 0d717c48fh
+dd 080b52cadh
+dd 0f9ac4478h
+dd 0dc1bef73h
+dd 0d9aeb256h
+dd 004e0a4bbh
+dd 0b108e15ah
+dd 0ced26979h
+dd 08e84019bh
+dd 0aa7fa1a4h
+dd 0ac9ba460h
+dd 0e047c539h
+dd 007f90518h
+dd 0740c456ch
+dd 0fae0778eh
+dd 096d89cd8h
+dd 02e5205adh
+dd 0362e5666h
+dd 070c6ac53h
+dd 00264eaa5h
+dd 0e8df9cb3h
+dd 0c6bf17eeh
+dd 0fc8f7b6eh
+dd 0a8d53e25h
+dd 02bcfb5b0h
+dd 023be03d9h
+dd 02d086901h
+dd 051582dfch
+dd 02effafbbh
+dd 0f47c133eh
+dd 02d640594h
+dd 0d059d918h
+dd 03727c239h
+dd 0df5e057ah
+dd 045e2b487h
+dd 0df616c89h
+dd 06a19cd85h
+dd 04c723bfdh
+dd 088d8b24dh
+dd 0fda19c5ch
+dd 05d3c09b7h
+dd 07ee12267h
+dd 042c280f2h
+dd 016c2f186h
+dd 019437ecdh
+dd 0c9210b0fh
+dd 03e537ac4h
+dd 060027fe3h
+dd 0c894729eh
+dd 0dd09cb68h
+dd 043dbd830h
+dd 07c8a6ca4h
+dd 09b3fa3ech
+dd 0c4fe6da9h
+dd 0641b28e3h
+dd 048f3288eh
+dd 015ca3588h
+dd 0e9a3f7c1h
+dd 0db278700h
+dd 0dde022a1h
+dd 0d1637600h
+dd 07d642242h
+dd 0d130470dh
+dd 06ff1acabh
+dd 0bfc3f4cch
+dd 0e757cae4h
+dd 0f2e77946h
+dd 0c5fcc6c6h
+dd 01e64b1c5h
+dd 0e826f804h
+dd 0101f8e23h
+dd 06d936186h
+dd 0dfd270eeh
+dd 0727528bdh
+dd 01e4e9852h
+dd 07ef7fbe9h
+dd 0978eb738h
+dd 040905a15h
+dd 0481bf8bah
+dd 0b1760badh
+dd 044d658abh
+dd 073157cf7h
+dd 0b984269fh
+dd 040c528beh
+dd 0c2f297cah
+dd 0a1c12971h
+dd 0721c9929h
+dd 0ecdeedaah
+dd 0e1c61ceeh
+dd 0bd92bc7fh
+dd 0606986e9h
+dd 0ee3bc1eeh
+dd 06fb4d879h
+dd 0909327f4h
+dd 07ef425f9h
+dd 0ee7f9845h
+dd 05a869dd6h
+dd 0c9ab3f75h
+dd 0ba97ad42h
+dd 010089d79h
+dd 00eb3bf45h
+dd 081ffe178h
+dd 06b2eada4h
+dd 0997d785ah
+dd 0e8306550h
+dd 01b1cadc7h
+dd 017c42c59h
+dd 02fe7fda6h
+dd 092fd14fch
+dd 07f1870beh
+dd 01b0a1e45h
+dd 0aaa9f9c1h
+dd 02e07b189h
+dd 042b119edh
+dd 002c53a8ch
+dd 0e8a2f070h
+dd 061081867h
+dd 0bceed442h
+dd 045c7dc8ch
+dd 08ee1d432h
+dd 0528b3f21h
+dd 0662bb033h
+dd 0837d379ch
+dd 0d7b0e14eh
+dd 0f0dc566ah
+dd 03095066bh
+dd 0b744d989h
+dd 0d2236c05h
+dd 0c0cdae70h
+dd 0134012ech
+dd 0fc04662ch
+dd 090b27026h
+dd 056074c29h
+dd 046a8cf7fh
+dd 051772cd8h
+dd 0b27fcc19h
+dd 074543b71h
+dd 0d789fff2h
+dd 0286e3441h
+dd 0596000a5h
+dd 099acaef3h
+dd 0ffc4603eh
+dd 0a8d1d864h
+dd 061d29604h
+dd 001257d45h
+dd 08c6d1bb5h
+dd 06922ef67h
+dd 0a3a6a468h
+dd 0bc0e0975h
+dd 0e9b31a3fh
+dd 0dfaa9429h
+dd 0c097352dh
+dd 0e7114584h
+dd 0ec8eae91h
+dd 0dfc237beh
+dd 006da051bh
+dd 09284bfe4h
+dd 0cc1197bfh
+dd 0aa45468fh
+dd 0d4e0778ch
+dd 02ed12bd7h
+dd 0c0be0f00h
+dd 08e9c0214h
+dd 033397af5h
+dd 01940ce82h
+dd 02c245881h
+dd 09d2757dbh
+dd 03d048980h
+dd 03163952dh
+dd 096d4aa79h
+dd 0c3b8c37ch
+dd 09d083e46h
+dd 049e4ddc6h
+dd 00cfe3e61h
+dd 000772e49h
+dd 03760eea0h
+dd 0d75c1ab6h
+dd 0a17248fch
+dd 00388ec57h
+dd 02ac55f86h
+dd 073d32bd8h
+dd 031cc70beh
+dd 08cbb64e6h
+dd 0c63745a3h
+dd 05ab78feah
+dd 0c9c0cb27h
+dd 0044a8a75h
+dd 050922882h
+dd 06845fcb3h
+dd 0f94eca13h
+dd 0e12ac093h
+dd 0eb583c64h
+dd 0bae81167h
+dd 0f7218a4eh
+dd 0eee4732ch
+dd 0791a83eah
+dd 0d445e66ch
+dd 0eeb8e67fh
+dd 02c46c599h
+dd 06226af1ch
+dd 011c0c6ebh
+dd 02d76f427h
+dd 031085460h
+dd 01ba91f1ah
+dd 038dbeec7h
+dd 05d324651h
+dd 034f10817h
+dd 0986e836fh
+dd 04fddf364h
+dd 09780c711h
+dd 092ce12beh
+dd 046193676h
+dd 06390c944h
+dd 0b85c87aah
+dd 0407fa47fh
+dd 0d8236306h
+dd 053292d54h
+dd 08c8e51bdh
+dd 007d089fah
+dd 05da87d76h
+dd 060a17538h
+dd 08afa8f0ch
+dd 028182d2fh
+dd 008406512h
+dd 0010a3eech
+dd 0856c2a0bh
+dd 0d34ddf25h
+dd 0fa776f87h
+dd 0ef38c556h
+dd 01ec1729eh
+dd 056839045h
+dd 015417a58h
+dd 0782f31f2h
+dd 0accb5480h
+dd 084568c6bh
+dd 0f0c4396bh
+dd 0da7978cfh
+dd 0a941f769h
+dd 03435ccc1h
+dd 03296e193h
+dd 0ae36d7a8h
+dd 05fc0a6edh
+dd 0528e0212h
+dd 089c4a85eh
+dd 0bb8e0504h
+dd 0bc03b6b2h
+dd 0c91bc389h
+dd 05a827e95h
+dd 09f76ed2bh
+dd 09ab609ddh
+dd 077d04037h
+dd 0ff6417e3h
+dd 04e1ab381h
+dd 0427d0029h
+dd 0c7910b70h
+dd 017019b7ah
+dd 065fe4e96h
+dd 0046064cch
+dd 02a0167e1h
+dd 07fff286fh
+dd 0ae0ce236h
+dd 0819ff124h
+dd 02ba4b8afh
+dd 00e8aae49h
+dd 040bdb258h
+dd 0df651232h
+dd 08b31939eh
+dd 0baef0750h
+dd 0830a9f06h
+dd 0f0cd09feh
+dd 07c709af0h
+dd 0cc70adf2h
+dd 03a28cf5bh
+dd 024e250e0h
+dd 07a6e9214h
+dd 03e33a19ch
+dd 0e1b1c47fh
+dd 0f9f55101h
+dd 0bec77cdbh
+dd 094541132h
+dd 05acecc52h
+dd 0e4189b69h
+dd 0054fb1ebh
+dd 067766185h
+dd 054edda7ch
+dd 0a350584bh
+dd 0d04482bah
+dd 0aebbddc5h
+dd 0bdb7ecb5h
+dd 0dee5a8e3h
+dd 035cd883bh
+dd 0e02b7ac9h
+dd 0a5216af4h
+dd 085a0cd7bh
+dd 03855f6dbh
+dd 052a3de3dh
+dd 0252d1291h
+dd 072e13dadh
+dd 01ab6eb34h
+dd 056ee26b9h
+dd 0ee94a847h
+dd 0c8caa0ech
+dd 0f9e58e71h
+dd 06390a4e2h
+dd 03a99855ch
+dd 0442dd66bh
+dd 07e830f4dh
+dd 03200621ah
+dd 06cf85826h
+dd 04cd32693h
+dd 0d8759908h
+dd 0fd7d2f61h
+dd 044ea5526h
+dd 0acbb7ed1h
+dd 035131dbeh
+dd 071d975fch
+dd 0a8040ba0h
+dd 06360c501h
+dd 006353194h
+dd 096044cc1h
+dd 0e73383e9h
+dd 05192f5cbh
+dd 01be9c8cdh
+dd 0ce717d82h
+dd 04a9e7359h
+dd 0d4918aaah
+dd 0b89641cbh
+dd 005268bcbh
+dd 0f427ade3h
+dd 0ffd4076ah
+dd 037aaefe6h
+dd 047447330h
+dd 05bd61c2ah
+dd 0168f637fh
+dd 0bed87108h
+dd 0ecdd6b3ah
+dd 017cd6cb6h
+dd 0a3428215h
+dd 058e303dbh
+dd 0dbfffd01h
+dd 03b3d5caeh
+dd 0d449a28ah
+dd 08fbbde2dh
+dd 093e5f8b4h
+dd 0405684d8h
+dd 03b5094dbh
+dd 04ffc1128h
+dd 07a73bf06h
+dd 0e94ee5cdh
+dd 0fe6c5af1h
+dd 08bf1bfa0h
+dd 06571c40dh
+dd 040e53ed3h
+dd 0f05c7632h
+dd 0003035dbh
+dd 0411f557ah
+dd 0ce89905dh
+dd 036d1fbf2h
+dd 086043742h
+dd 0806953cdh
+dd 0df5b601eh
+dd 0451e18d7h
+dd 00caadacfh
+dd 04435a974h
+dd 00bc62b9fh
+dd 0c83703f7h
+dd 057ede9b8h
+dd 059de1dc0h
+dd 0ac0f23d9h
+dd 03c66d6b5h
+dd 0e5052d36h
+dd 0a203fb4eh
+dd 052f6d723h
+dd 0014d3696h
+dd 0e5162993h
+dd 0d25d6f28h
+dd 09f9d7762h
+dd 0e65d04b6h
+dd 0863b9006h
+dd 0fabcd278h
+dd 0796e4e51h
+dd 088e92cd5h
+dd 09af82cbeh
+dd 09175fd0fh
+dd 0c1d9c938h
+dd 01763b029h
+dd 057a3d61ch
+dd 051480d60h
+dd 094541c0eh
+dd 014079960h
+dd 0f6f7311ch
+dd 0b211c397h
+dd 036b97de9h
+dd 03bdf1ddeh
+dd 05e285739h
+dd 0b25d7cd0h
+dd 0cca75b49h
+dd 068e6497dh
+dd 0c52fd0cdh
+dd 09ea9a6b3h
+dd 0f9c4a8f0h
+dd 0fa0753e4h
+dd 06084b402h
+dd 0e18ef692h
+dd 03ded7438h
+dd 0af49571dh
+dd 05f508d9eh
+dd 02a6e8604h
+dd 010306b57h
+dd 0bb153c04h
+dd 0cc4058d5h
+dd 0e1369188h
+dd 049af1032h
+dd 006bbb188h
+dd 095ed02ceh
+dd 00170c7d0h
+dd 03b45e733h
+dd 0ff4878aeh
+dd 0b879b357h
+dd 03dd3a514h
+dd 0d18c6d09h
+dd 0ef67404dh
+dd 0d5b09e25h
+dd 04bd94fcfh
+dd 0b5a4e019h
+dd 0cfea0331h
+dd 011285c6eh
+dd 05b9aa290h
+dd 03c236c10h
+dd 077ee35d5h
+dd 07d1cb144h
+dd 04ac1d300h
+dd 0153b60e3h
+dd 0a0d5d0b9h
+dd 00b88b732h
+dd 0db3db4c4h
+dd 0b88d397bh
+dd 072c01531h
+dd 0bc09c05eh
+dd 08bb57390h
+dd 039e3b991h
+dd 0f7fba472h
+dd 01de81b25h
+dd 0b7a346cbh
+dd 06f791591h
+dd 0aec41056h
+dd 0f6df220ah
+dd 060eb48c8h
+dd 09d0246a6h
+dd 072ea9dcah
+dd 04ac6f0f7h
+dd 065ccc759h
+dd 099a3d2d7h
+dd 0e2882519h
+dd 07e372471h
+dd 0e29543cdh
+dd 08cba1444h
+dd 0042d87d4h
+dd 04a292cech
+dd 0dea41b0ah
+dd 0312d4736h
+dd 0a61d3109h
+dd 0c987069dh
+dd 03ad10f13h
+dd 040c82862h
+dd 0ec956e35h
+dd 01d69392ch
+dd 05eecba0ch
+dd 0cf4bf409h
+dd 0eabded9ch
+dd 0c37d016ah
+dd 0076afffch
+dd 0a4778ba5h
+dd 08addf4c8h
+dd 0e1700c63h
+dd 0f7985e9bh
+dd 08fcbb919h
+dd 041d46077h
+dd 0cff564a0h
+dd 0c343c906h
+dd 01228f225h
+dd 073194008h
+dd 0493378eeh
+dd 09f65c7b4h
+dd 043e50736h
+dd 09e72bf98h
+dd 004ca0390h
+dd 0decb5d74h
+dd 0abf57bc8h
+dd 0c0a70641h
+dd 0ac044504h
+dd 07864ffa5h
+dd 05f1386cbh
+dd 07628d9ceh
+dd 05baabb99h
+dd 0c0cfa88fh
+dd 0df7bd62dh
+dd 05d756464h
+dd 0ccdd228fh
+dd 0e07663d2h
+dd 092fd2d78h
+dd 09c292bd6h
+dd 0791642d5h
+dd 0ff44d414h
+dd 0ce1587fah
+dd 0765ccec7h
+dd 03377e6e1h
+dd 0a52ee563h
+dd 06d78d1d0h
+dd 0469c364fh
+dd 0614d2360h
+dd 0c39be2fah
+dd 0b77bcad0h
+dd 0a66253b9h
+dd 00be1eaa7h
+dd 04da05dc7h
+dd 07927511ch
+dd 083d58bfbh
+dd 0904c28bfh
+dd 060554d2fh
+dd 0f4ccc8f0h
+dd 03c7a161bh
+dd 0befc810bh
+dd 0853a6d52h
+dd 060a54a94h
+dd 0728c4773h
+dd 0750cb112h
+dd 0d9252e3eh
+dd 0c53ff3efh
+dd 0f72c6bd4h
+dd 0bfce98e9h
+dd 0d985b1f4h
+dd 04fd3f2f4h
+dd 04e6ae6cah
+dd 0f82ea61dh
+dd 0370393f0h
+dd 030a3558ah
+dd 0d7836286h
+dd 07228b3cch
+dd 071c222f7h
+dd 002ff02a3h
+dd 00ff6c6f5h
+dd 0f7dab264h
+dd 088d2e46bh
+dd 0586d4fbdh
+dd 0ff99db3bh
+dd 0261d63f6h
+dd 0cadd3597h
+dd 0b06a8115h
+dd 08c82717bh
+dd 035fddf7dh
+dd 07f56d0b8h
+dd 066952599h
+dd 0fe24e424h
+dd 02a551e04h
+dd 0048adccdh
+dd 006dd860eh
+dd 06a069a41h
+dd 0024db176h
+dd 00dc81f01h
+dd 01df940aah
+dd 0ef00b0c5h
+dd 0a06dfbaeh
+dd 040aa0f28h
+dd 0c72891ffh
+dd 0d54f2db7h
+dd 0c34804eeh
+dd 0480ecacfh
+dd 0d9c28801h
+dd 00ba0e089h
+dd 02bb3157dh
+dd 0f0b439f6h
+dd 0f739a2ceh
+dd 006f4b488h
+dd 0b5c5cabfh
+dd 02ccbbfb2h
+dd 0ac538fech
+dd 0dc903137h
+dd 0b0be865ch
+dd 0b21454c7h
+dd 02e7e8b1fh
+dd 0ff9ff22bh
+dd 0d4dc0798h
+dd 08caf3af9h
+dd 04b4fc837h
+dd 0f7ff5c25h
+dd 08530aef1h
+dd 0f42d7dd2h
+dd 0ca44e3dfh
+dd 0426fb112h
+dd 0df834b24h
+dd 085b0bf74h
+dd 04edb56eah
+dd 07671ae22h
+dd 07fce7f68h
+dd 0033f6940h
+dd 0cfbe87f0h
+dd 01b429fb5h
+dd 0c079d830h
+dd 001385446h
+dd 0dc30e428h
+dd 08732387dh
+dd 0ca320f13h
+dd 0871e6e15h
+dd 055e9ff25h
+dd 037b61ee4h
+dd 094fef710h
+dd 04c6d0f52h
+dd 0af3886f7h
+dd 00705d45fh
+dd 0cbc2893bh
+dd 0424db48bh
+dd 04538a575h
+dd 0905d2685h
+dd 0b324bcbfh
+dd 0fc16f5e6h
+dd 00d9aaa75h
+dd 0666d0530h
+dd 0bbbaf62ch
+dd 0d1311c24h
+dd 056a4533eh
+dd 0d3c55ac6h
+dd 0665357adh
+dd 00888a099h
+dd 0675d2c76h
+dd 033fde768h
+dd 031c5e3bfh
+dd 046e9c5e9h
+dd 096880482h
+dd 08a65e4d5h
+dd 08c82cb2eh
+dd 0653bf848h
+dd 0de552dbdh
+dd 01d237c95h
+dd 01424f583h
+dd 028d61507h
+dd 0436cb5eeh
+dd 0009faf16h
+dd 0efb4f971h
+dd 044e33263h
+dd 0ed729617h
+dd 089fb2785h
+dd 0273224f0h
+dd 058caf857h
+dd 014646bc0h
+dd 061801ebdh
+dd 0ef84b6ddh
+dd 03bc3f64dh
+dd 0c44c0151h
+dd 0b8912d78h
+dd 0eef86b57h
+dd 0ec9e0ff1h
+dd 0db82fef5h
+dd 0c4359a55h
+dd 069ec8406h
+dd 0f86ea71fh
+dd 01f1a38a8h
+dd 0b021b38bh
+dd 0076f92f0h
+dd 0169cec6eh
+dd 058afff86h
+dd 014a6fb1bh
+dd 0f7385fbbh
+dd 05e487cf1h
+dd 0e838e1cah
+dd 099533a23h
+dd 058ade83ch
+dd 09a979dd0h
+dd 0c3931726h
+dd 04ec6528dh
+dd 014d9c480h
+dd 0b6289985h
+dd 028a82cb0h
+dd 082f5cea8h
+dd 0da165c19h
+dd 066fd0c83h
+dd 0685eddc2h
+dd 0783c4a4eh
+dd 012df2aa4h
+dd 01f74a3f3h
+dd 0c136f98dh
+dd 0b4002206h
+dd 01370a8f1h
+dd 03b74023eh
+dd 03330fb49h
+dd 02a006cd7h
+dd 0ea146f1eh
+dd 0ea698684h
+dd 0a78c1a9fh
+dd 04fd777f7h
+dd 04f705e3eh
+dd 0774192e7h
+dd 09a180a3ah
+dd 0a9d7cb47h
+dd 0c161ac5ch
+dd 07e58a330h
+dd 0716ff902h
+dd 0836c6ac4h
+dd 0fd59edd9h
+dd 034a37f17h
+dd 0c019050dh
+dd 0f744d1fdh
+dd 0d98d07e7h
+dd 0c77d6867h
+dd 07a6377b9h
+dd 04da88acfh
+dd 07d139518h
+dd 032ccb3feh
+dd 0bf7dc211h
+dd 07280b5e8h
+dd 09791ccf4h
+dd 0f2b9806ch
+dd 04361ef0fh
+dd 08c69da9ah
+dd 085f5d940h
+dd 00259ce71h
+dd 04b787e98h
+dd 0994bd28ch
+dd 03b9d1fddh
+dd 081d67f2eh
+dd 027edbbcbh
+dd 0ee8e3e19h
+dd 0b7f82846h
+dd 05ed3e242h
+dd 089d59bfch
+dd 0d6b4cb89h
+dd 00dc381b5h
+dd 054ca9051h
+dd 042db8983h
+dd 0ecd4c594h
+dd 0abac9652h
+dd 09def6db2h
+dd 0e01d9301h
+dd 0265f225eh
+dd 004c15a63h
+dd 01c5aadd4h
+dd 03102c5f6h
+dd 09fcd9d6fh
+dd 0663d98d0h
+dd 043aea6bdh
+dd 04e7f59eeh
+dd 08dca9998h
+dd 023bf8439h
+dd 0e41bab1dh
+dd 049e92b41h
+dd 032cdd352h
+dd 02cd0e4e1h
+dd 03e6a1eafh
+dd 0b538f5d1h
+dd 09a31dcffh
+dd 03e373e07h
+dd 0cbb62acfh
+dd 09439d29bh
+dd 0cc7be7a9h
+dd 0d9ad7a97h
+dd 04c837ab4h
+dd 0f87c51d0h
+dd 0fd4479aah
+dd 0a0b0c651h
+dd 0393c4dcah
+dd 03604d55bh
+dd 095ecf819h
+dd 0ee622c1dh
+dd 060958aceh
+dd 05133ae6fh
+dd 09d1a1870h
+dd 021888e83h
+dd 0da4cf248h
+dd 0bef510b0h
+dd 0ca14e15dh
+dd 09e7e6ae8h
+dd 0b958505ah
+dd 022465f1ch
+dd 0074ab287h
+dd 01228ce33h
+dd 008c2b2ffh
+dd 0513ccf4eh
+dd 009cfd1c7h
+dd 0d11bef89h
+dd 07bfa78cch
+dd 01de7b8d8h
+dd 0e607d5f1h
+dd 05cfe418bh
+dd 04c4cadabh
+dd 07152166fh
+dd 08c6dfd50h
+dd 096a85814h
+dd 005618bceh
+dd 044b8967ah
+dd 025b29c0eh
+dd 070bb73c8h
+dd 0c6565122h
+dd 06b965974h
+dd 0838e6f29h
+dd 02de326c2h
+dd 066c7afbeh
+dd 0fc05569ah
+dd 05415dc52h
+dd 0c1963b08h
+dd 0c1ffed53h
+dd 0a4a31ad1h
+dd 0f6eea552h
+dd 0691ebe27h
+dd 09ba94e5ch
+dd 07ffa3c21h
+dd 0adf8a412h
+dd 0b7716c09h
+dd 07db86a5ah
+dd 061cb8416h
+dd 0a3143219h
+dd 07ce8a0d0h
+dd 0fddad0efh
+dd 03e66cb3eh
+dd 0a652e957h
+dd 0487db2cah
+dd 001501919h
+dd 0e81d66d8h
+dd 0fb7f2e98h
+dd 0beb6c81dh
+dd 0b63f9f81h
+dd 06c82cac6h
+dd 0eedc0418h
+dd 0e95d82f9h
+dd 0b227ce91h
+dd 0b1cada31h
+dd 0928e6581h
+dd 0f203c0c6h
+dd 0d80baee4h
+dd 05173f922h
+dd 0ce9354c1h
+dd 04f4ba916h
+dd 05bb2f0dbh
+dd 0abbbfdceh
+dd 0e5dbaa69h
+dd 0f8fd3594h
+dd 065add11dh
+dd 0e12cfca5h
+dd 0a976ab62h
+dd 036d2d5b0h
+dd 011bbcf79h
+dd 06ffe8c95h
+dd 09aeabd8dh
+dd 0d87ac362h
+dd 04d582878h
+dd 0f1475e3ah
+dd 0f754b5e7h
+dd 070b4e4f5h
+dd 0425ea0e1h
+dd 0bb692b43h
+dd 038c237a3h
+dd 097f4640eh
+dd 038eea3feh
+dd 098528a11h
+dd 00e9e9279h
+dd 05d4d9a1fh
+dd 0650a54a2h
+dd 03aac96bah
+dd 000a51481h
+dd 0cbacd6c4h
+dd 06a63bdb6h
+dd 0e3928c7ch
+dd 0196e21c8h
+dd 0c10c276dh
+dd 055369ec3h
+dd 0e668c8dfh
+dd 04eb0f236h
+dd 0bc329135h
+dd 0744bd550h
+dd 0fe18b2b7h
+dd 0e5ac1073h
+dd 0357f7933h
+dd 026eae17ch
+dd 073db1306h
+dd 0b25d1e23h
+dd 0369f951ch
+dd 0746d84c1h
+dd 032270875h
+dd 078608929h
+dd 0512604fah
+dd 0a2500afah
+dd 0d376af4eh
+dd 07e150bc2h
+dd 0d3b27f2ah
+dd 0c54c8814h
+dd 0e6ffe1c1h
+dd 02418ee51h
+dd 01dcb2550h
+dd 0ff54e693h
+dd 03bb3b71eh
+dd 00207756fh
+dd 0a2b735fch
+dd 02cbcade6h
+dd 085d3a860h
+dd 03b5e4914h
+dd 0778e6944h
+dd 08c7e7e6ch
+dd 0af026473h
+dd 0d5509d91h
+dd 0d20fcc70h
+dd 0e5764bcch
+dd 04d16e51eh
+dd 0f223c56eh
+dd 076b1d7c0h
+dd 07e8e16d9h
+dd 0e8ce21e5h
+dd 0c9433a8dh
+dd 07446e928h
+dd 0aadfadb1h
+dd 017be5609h
+dd 001572731h
+dd 025830e21h
+dd 0f050405ah
+dd 055d2a337h
+dd 07a482167h
+dd 0146aca1ah
+dd 064f398f7h
+dd 0c0932aebh
+dd 0c2f83a2ah
+dd 0a17e2e2dh
+dd 0bc762d46h
+dd 0c1d26af9h
+dd 0887d7aach
+dd 0efbc6bb7h
+dd 0d3be8b71h
+dd 0dc4e98cbh
+dd 007b8c7bbh
+dd 058c46472h
+dd 06ee25511h
+dd 032d8bb09h
+dd 075e70619h
+dd 09235d90ah
+dd 04ec1d095h
+dd 015a48c46h
+dd 04c036047h
+dd 05e68cdbbh
+dd 07a2b2e46h
+dd 082755ce6h
+dd 04bd71ccdh
+dd 07e31ecb2h
+dd 0f55cdef2h
+dd 00710ff53h
+dd 00fd9265ah
+dd 00d4469cch
+dd 0b8eb7f6ch
+dd 0b961b25ah
+dd 0790ffa2eh
+dd 0174507e7h
+dd 079b77e33h
+dd 0c74010b4h
+dd 0fa4fea67h
+dd 06864a6f9h
+dd 05d5e193eh
+dd 06d7540c6h
+dd 0f4387fb3h
+dd 07523b848h
+dd 0349b5e76h
+dd 026af2eefh
+dd 0abce3fc7h
+dd 03e22e3ech
+dd 03e2600e4h
+dd 0763b5137h
+dd 008ceba07h
+dd 0b3760227h
+dd 000ff9cd3h
+dd 094848581h
+dd 05c10bc0ah
+dd 0b2def28ah
+dd 0ca1e8509h
+dd 0e051a69eh
+dd 035fec5e7h
+dd 0dbf40803h
+dd 03896eddeh
+dd 0e4fbbbd8h
+dd 0e4b88c0dh
+dd 0fcaa081ch
+dd 098924f81h
+dd 0e73e956eh
+dd 03fe7e538h
+dd 0710a84a3h
+dd 06d54f4c6h
+dd 0c96c971bh
+dd 07f0fb939h
+dd 01f300be7h
+dd 08ebfcf9eh
+dd 02c6d5fefh
+dd 04b13aacah
+dd 0b782a03ch
+dd 0ddee6155h
+dd 04c09dc46h
+dd 0fb547fdbh
+dd 0ac5a0416h
+dd 06c90dfadh
+dd 05611726ah
+dd 0cd7855e4h
+dd 0d410ad34h
+dd 00e42df9ah
+dd 0b4ca2b69h
+dd 0bf5a4e79h
+dd 087c64327h
+dd 0415e955dh
+dd 01e76d7e4h
+dd 025c9196ah
+dd 0045f2f7fh
+dd 05624d57eh
+dd 0b45f59d5h
+dd 07833748ah
+dd 0768d2923h
+dd 01bb96367h
+dd 0bb374fc2h
+dd 0ef56e430h
+dd 012504239h
+dd 0b5083590h
+dd 0db3dcddbh
+dd 07126cb7dh
+dd 063dc1e8eh
+dd 0a65c0c49h
+dd 03ad0dbaah
+dd 0bcf05235h
+dd 0afaf106bh
+dd 0321d5966h
+dd 098531a5ch
+dd 0d8165631h
+dd 0c227fb64h
+dd 0774483ffh
+dd 01e070166h
+dd 0e37565d6h
+dd 05e64e2a2h
+dd 0af4c4bd1h
+dd 021c32415h
+dd 04d74adf9h
+dd 0382545dch
+dd 0ade8d8fah
+dd 09abd878ah
+dd 038b5c80ah
+dd 0010c19dah
+dd 0f3777ed1h
+dd 09fdb42e6h
+dd 05178be41h
+dd 0c9962dc6h
+dd 002fa3116h
+dd 017a712b9h
+dd 00483c8deh
+dd 0c623bfc6h
+dd 0f6e9953ch
+dd 06515661fh
+dd 0d9b5f364h
+dd 053714191h
+dd 0b2169075h
+dd 08b224c1eh
+dd 0c0e4749bh
+dd 0ed742b51h
+dd 06a029237h
+dd 03ba9a6a0h
+dd 067d8f0c0h
+dd 0135412b2h
+dd 0305df6d4h
+dd 06723af41h
+dd 04d3a548ah
+dd 0d086ab6fh
+dd 0c92141f8h
+dd 061a7df5eh
+dd 0ebb510e6h
+dd 0617ba3ech
+dd 018af84f7h
+dd 0e8fcb405h
+dd 014579a32h
+dd 047931969h
+dd 08a55babdh
+dd 02815d28eh
+dd 0579f6f44h
+dd 066264e17h
+dd 0b7472dc5h
+dd 0c80c95ceh
+dd 05ec594a1h
+dd 041df3ca8h
+dd 03cd89916h
+dd 02fa241c2h
+dd 06fb6214bh
+dd 0174dc6f5h
+dd 0f6c0abb6h
+dd 02bf4d2b6h
+dd 070508647h
+dd 060cfd551h
+dd 0801d2192h
+dd 0ea0df36bh
+dd 0129e6da6h
+dd 09704a7e2h
+dd 0d399bd6eh
+dd 030575f41h
+dd 027cdc7b3h
+dd 0933bc6deh
+dd 0049fe696h
+dd 00bbf304ch
+dd 0c85dc13fh
+dd 06721b881h
+dd 0f95bf70ah
+dd 0c4dd1f88h
+dd 0bb847fa4h
+dd 02764ce06h
+dd 093495444h
+dd 064093a3eh
+dd 083d2c754h
+dd 032a76c78h
+dd 0ffd4b3bbh
+dd 06527fdf8h
+dd 00c140316h
+dd 0a5bf9bf7h
+dd 08af567d0h
+dd 087421dfdh
+dd 08c7cb970h
+dd 078361aeeh
+dd 0e153192fh
+dd 0210c9d5ah
+dd 0a570e2cch
+dd 08d5650d7h
+dd 0f5f7f36dh
+dd 022c778ffh
+dd 02f2a65bfh
+dd 0ec56fa9ah
+dd 06ff5e832h
+dd 003ce6578h
+dd 007165307h
+dd 0a1ca59dbh
+dd 033099e22h
+dd 07fcf5f30h
+dd 0d7ec3279h
+dd 02319f0c8h
+dd 0b751c48ah
+dd 04f87dd29h
+dd 0c7ef00b0h
+dd 030bd26ebh
+dd 0af3a58dch
+dd 0eeca1ee8h
+dd 07df37c98h
+dd 0d0bb8296h
+dd 0237e7d74h
+dd 0e41df42dh
+dd 07291c122h
+dd 08b1ef4c5h
+dd 01edd7444h
+dd 01fd96186h
+dd 0546f7050h
+dd 0fa577680h
+dd 03809f132h
+dd 0d34c2976h
+dd 0ed348c83h
+dd 04ed198bfh
+dd 048aeb337h
+dd 012326f24h
+dd 0913c6965h
+dd 0275048b6h
+dd 0e59bdfb1h
+dd 04ba87857h
+dd 07eb577f6h
+dd 03b027228h
+dd 035c1a131h
+dd 042a207b7h
+dd 0014a1f4ah
+dd 0349a6b72h
+dd 09e6999deh
+dd 0ae7d4506h
+dd 07aecfb54h
+dd 0993b557eh
+dd 0aa3745e2h
+dd 0bed295b3h
+dd 0539392cbh
+dd 01fd2c853h
+dd 00829a579h
+dd 0e1219fdeh
+dd 0b75d55e2h
+dd 0f01f95d6h
+dd 0484e8468h
+dd 0feb9ccc7h
+dd 0a04ce2aeh
+dd 035ed6e22h
+dd 085dd1c7eh
+dd 0622eeebch
+dd 0d8466468h
+dd 05eaf9852h
+dd 08664baafh
+dd 0cc34538ch
+dd 05f349384h
+dd 0a81fc9aeh
+dd 0a92a3e89h
+dd 0e37bdb46h
+dd 09cf90a65h
+dd 068134155h
+dd 0c7867559h
+dd 08ac43474h
+dd 011d9fe81h
+dd 01807ee17h
+dd 0d9803d20h
+dd 0c5b6fbd6h
+dd 02ee29031h
+dd 0dda90332h
+dd 03ede396ah
+dd 0c5e05ec5h
+dd 0429e1062h
+dd 024fed5fah
+dd 029c7e855h
+dd 0f2726423h
+dd 081080614h
+dd 0638aa7c8h
+dd 0afd61c48h
+dd 00c14f319h
+dd 0a18a2d46h
+dd 0a2728f8fh
+dd 0133c2cf7h
+dd 00672ab5ch
+dd 0f111e406h
+dd 0287fa523h
+dd 049d669fbh
+dd 0efe65836h
+dd 0910f7e8eh
+dd 0bd11e355h
+dd 08183c15eh
+dd 06288aba1h
+dd 0a73e9dceh
+dd 0378e4d4fh
+dd 0639c5634h
+dd 0cb7d375fh
+dd 0a83a368eh
+dd 08f3f98d2h
+dd 0698581abh
+dd 038856320h
+dd 0a2d0a917h
+dd 096c132d8h
+dd 0b53f3cbah
+dd 009c4e33bh
+dd 0fe74040fh
+dd 0f3dffcb0h
+dd 01e7141cah
+dd 07cd2ed57h
+dd 0cb32a902h
+dd 03c967835h
+dd 014009362h
+dd 079eebd72h
+dd 088ad1c02h
+dd 06c8af7beh
+dd 0198e420ah
+dd 02e78f5d4h
+dd 04a5b82a3h
+dd 0c8a49f21h
+dd 000abb6d1h
+dd 01e938cd8h
+dd 02b2b09a6h
+dd 0c9fd6df2h
+dd 0d57ac7f5h
+dd 0edfdddb9h
+dd 0902755efh
+dd 0f4abc0bch
+dd 06903ab87h
+dd 0d415c82eh
+dd 04a6c2012h
+dd 02269bdbdh
+dd 02fe84afbh
+dd 02bf3ee96h
+dd 0ecaa77f5h
+dd 0c7cfdf51h
+dd 09b3bafb4h
+dd 06b9435a7h
+dd 0828eb55ah
+dd 00d1e4f90h
+dd 0effebe89h
+dd 062f8c256h
+dd 0b73976a8h
+dd 072b505a3h
+dd 0302ebca0h
+dd 0b0efea2ch
+dd 0bfed7e9ch
+dd 0dfd45570h
+dd 0bfc34822h
+dd 02b1bf510h
+dd 02f9fb516h
+dd 0097d9015h
+dd 09eb6232ah
+dd 001023687h
+dd 07f4065bbh
+dd 0de19d3fch
+dd 0d608289bh
+dd 0edb49334h
+dd 0d043de03h
+dd 04aa500c6h
+dd 0e182fccbh
+dd 081b92982h
+dd 09403bba8h
+dd 09d077c27h
+dd 084480310h
+dd 06b05b22bh
+dd 008c27f0ah
+dd 015a28314h
+dd 0a4db18dah
+dd 03e8409e3h
+dd 08c6f3066h
+dd 093bdb9b7h
+dd 00f4ecf96h
+dd 062894e39h
+dd 0fd08911ch
+dd 093eb391fh
+dd 0f34ae0e5h
+dd 066e1643fh
+dd 0430df837h
+dd 07f7388bbh
+dd 08e421293h
+dd 0db4f76f3h
+dd 0c8b27e2eh
+dd 010344b63h
+dd 0d8d8ae95h
+dd 023feaa54h
+dd 0d2b91a1ah
+dd 027e4ebf6h
+dd 09281c63bh
+dd 0583260cdh
+dd 0c8a27853h
+dd 044abc6fah
+dd 0e68e8b32h
+dd 0d285fc9bh
+dd 042702fcdh
+dd 04d8922a1h
+dd 07e60197dh
+dd 0487f0663h
+dd 054e471a0h
+dd 073e855a9h
+dd 0a621a7fch
+dd 0c034e9fah
+dd 0f8dbe17eh
+dd 001fa9277h
+dd 029647459h
+dd 0b8a63ba7h
+dd 05bf557dah
+dd 0a1a95890h
+dd 0b5ea0a0eh
+dd 06d1fa5c9h
+dd 0607e06f8h
+dd 09fd59e00h
+dd 0c258c338h
+dd 083f7c98fh
+dd 0344778c1h
+dd 0563bf3f1h
+dd 06a041845h
+dd 079f76241h
+dd 04469fdfdh
+dd 0c84d413eh
+dd 0277f2cadh
+dd 09a3bf078h
+dd 0997de306h
+dd 0d105d320h
+dd 0f067f88fh
+dd 0cd0e06f8h
+dd 098d06613h
+dd 00a2e6778h
+dd 039bc45e1h
+dd 0dec678e8h
+dd 0de5c66a7h
+dd 0ed50cc67h
+dd 0ab513449h
+dd 0aba7c28dh
+dd 04cbb649bh
+dd 030444d43h
+dd 0244051a9h
+dd 006658bbeh
+dd 0b7cfb99eh
+dd 0637b0bc6h
+dd 0101709aah
+dd 0f8ebc501h
+dd 0999829c1h
+dd 0e7fd5260h
+dd 0f7e22973h
+dd 07b26aa88h
+dd 06c1afff5h
+dd 0d1dd5223h
+dd 0c312bdd6h
+dd 0f05b9e90h
+dd 0907cc6b2h
+dd 07cf6e7f4h
+dd 020819163h
+dd 0f7a50209h
+dd 03957808bh
+dd 0e3d76d15h
+dd 014b871e4h
+dd 0bedd43eeh
+dd 06e453871h
+dd 0d37035ddh
+dd 0063c2515h
+dd 0770e28b1h
+dd 052d09798h
+dd 00a673fbdh
+dd 06547b86bh
+dd 062807b37h
+dd 0b4691db1h
+dd 09665237dh
+dd 0a506e8a6h
+dd 0eaa4e7dbh
+dd 073907f98h
+dd 00520fedbh
+dd 02e90581ch
+dd 062894434h
+dd 031dcf93ch
+dd 0bc67af1ah
+dd 0dc5d125ch
+dd 096328b3dh
+dd 0112afba0h
+dd 0deca8b0dh
+dd 05e0d14b7h
+dd 0b47f32d0h
+dd 0af36d48ch
+dd 096b04659h
+dd 024b23001h
+dd 03513dbb6h
+dd 003fd8c6dh
+dd 04d0fee58h
+dd 01bc4a204h
+dd 0f0576923h
+dd 085fbbde8h
+dd 03a2568f6h
+dd 0907038dah
+dd 0a19031d6h
+dd 0bf692c82h
+dd 0ce7f2c8ch
+dd 06a1b099dh
+dd 0a0db7a17h
+dd 0dd2e3a41h
+dd 01971dcaah
+dd 0051ff5abh
+dd 00257c597h
+dd 055e075e8h
+dd 0864a1125h
+dd 08c482725h
+dd 00d50aa64h
+dd 0c7976017h
+dd 060b1621ah
+dd 036c9c07dh
+dd 0c890206ch
+dd 0de83b95ah
+dd 0931778eeh
+dd 0ffd6ba36h
+dd 0b5f13a1bh
+dd 0f26a3454h
+dd 064049cf6h
+dd 0b0047d88h
+dd 0e91bff39h
+dd 06154a3deh
+dd 02654a31fh
+dd 016f02d55h
+dd 08f505bcfh
+dd 051dbe84ch
+dd 0558ad42bh
+dd 0fc04188ch
+dd 0cc4e75cch
+dd 055539d47h
+dd 070f8957bh
+dd 077e827a5h
+dd 0781a2b5ah
+dd 0c8078813h
+dd 08fd09ca0h
+dd 0f22799eah
+dd 068fd2d0bh
+dd 0917536e1h
+dd 0d4231022h
+dd 088e777afh
+dd 00a6b0cc7h
+dd 00ced0248h
+dd 0792a1788h
+dd 0acc00fe5h
+dd 0129d4ebbh
+dd 04481b3a0h
+dd 08f28bbf5h
+dd 07c826f39h
+dd 0ec9ec0eah
+dd 0b6c40617h
+dd 070cfc120h
+dd 02a585d8fh
+dd 0abfc0e93h
+dd 09efe9f2bh
+dd 0bb0552c5h
+dd 020e6cc10h
+dd 06af05450h
+dd 035cd3c0ch
+dd 01f5857c5h
+dd 0d2fdecd7h
+dd 011764083h
+dd 05ff715deh
+dd 0a4c8f69ah
+dd 0e2d84fa4h
+dd 0c9af6d71h
+dd 0856b1b6bh
+dd 0b50e8345h
+dd 0ba36f0d2h
+dd 01d36501eh
+dd 082f124ceh
+dd 035ed35f9h
+dd 03df6c72bh
+dd 034f2ae78h
+dd 097f8fa80h
+dd 044ec7c01h
+dd 0eef8ac8dh
+dd 0fd1b0356h
+dd 0b0d1f7feh
+dd 0189aa6fch
+dd 03973052dh
+dd 0451f80b9h
+dd 0fd4457ffh
+dd 09e85be7dh
+dd 0a7fab710h
+dd 0e58c8859h
+dd 0eb9b5acdh
+dd 0ad9e40d0h
+dd 0eafb5356h
+dd 00cec68f7h
+dd 017266f87h
+dd 06aa89541h
+dd 01ea14bedh
+dd 05d0ad663h
+dd 01b90f7e1h
+dd 06cd04582h
+dd 095039a10h
+dd 05ba4c2a6h
+dd 045275942h
+dd 009c5096dh
+dd 0947b86a3h
+dd 04a47d00fh
+dd 0d964dbceh
+dd 0a3a63b30h
+dd 050190417h
+dd 0da05e275h
+dd 052a0557eh
+dd 07a8025aeh
+dd 03859a4c5h
+dd 09f16fe49h
+dd 02e4bc4f4h
+dd 0b51c1e39h
+dd 0f3011f70h
+dd 006c3ea18h
+dd 03ffd94a0h
+dd 0408781bbh
+dd 0ee3b4f85h
+dd 0bf783374h
+dd 05bdb1c50h
+dd 0112b4d19h
+dd 08128e799h
+dd 08a9f8b89h
+dd 0f36e2b8bh
+dd 004886e25h
+dd 01c178d80h
+dd 02dc635d6h
+dd 0c83d7a8bh
+dd 0c2509302h
+dd 02d64cf14h
+dd 0afb1e240h
+dd 0edddf7fch
+dd 04959b388h
+dd 0d3e1d867h
+dd 0ab1a729ah
+dd 07ad6cebeh
+dd 026e3db09h
+dd 0a6adaaeah
+dd 08332af4eh
+dd 01402b6c3h
+dd 0785f82aeh
+dd 0396a7ba3h
+dd 02d02e5d2h
+dd 0d21c6761h
+dd 07880188ch
+dd 08bfc98aah
+dd 0b7a147e9h
+dd 010f801d1h
+dd 0d03b4a5eh
+dd 0ad60ba1ch
+dd 0037d987ah
+dd 09a79a2aeh
+dd 0dcadbbb5h
+dd 055799a61h
+dd 0df84106ch
+dd 02a186695h
+dd 0e03855dbh
+dd 09eb61233h
+dd 084efe060h
+dd 0a300d5f6h
+dd 05e99e056h
+dd 04f24d002h
+dd 05e06c20ah
+dd 0d4e4f80ah
+dd 0991ed516h
+dd 01af2139bh
+dd 03be37120h
+dd 0f63ca021h
+dd 0cc6f96a7h
+dd 0733d486ah
+dd 07f8ff71ch
+dd 032453386h
+dd 08f22a35eh
+dd 0bbaf3e1ah
+dd 04bbd05eah
+dd 0e246893dh
+dd 0351e34a7h
+dd 0b4c0a111h
+dd 02ad10c8eh
+dd 066006023h
+dd 0da845d09h
+dd 077f25cc3h
+dd 0b52db45bh
+dd 00295b018h
+dd 099821dfdh
+dd 05a8dd079h
+dd 0a98c8d43h
+dd 0b46aa47ah
+dd 0bef82f2fh
+dd 0e2b0d802h
+dd 0b833e854h
+dd 0f21ce38eh
+dd 07b645474h
+dd 0e95b70ffh
+dd 04ba53c1ah
+dd 0196f89f6h
+dd 0969bd0dch
+dd 08840fefch
+dd 0ac6f929fh
+dd 03062117bh
+dd 0b356cb10h
+dd 07c088fcah
+dd 08a04ce44h
+dd 0cf6eca5fh
+dd 0382df71bh
+dd 09335699ah
+dd 07e0ac6b7h
+dd 0293dfdaah
+dd 07fdd5d72h
+dd 0c388e74eh
+dd 0a9829b34h
+dd 02e2866e4h
+dd 0dbc5f8ach
+dd 0819b9930h
+dd 003c0eab2h
+dd 0e0c25eb7h
+dd 03577833dh
+dd 042c35b64h
+dd 07d5599aah
+dd 02af910cah
+dd 04163f1a7h
+dd 00c115650h
+dd 0037884fdh
+dd 0945fcafdh
+dd 0f7c44ecdh
+dd 0763e1a2eh
+dd 093c3f233h
+dd 0ac8a8ceah
+dd 086296c2bh
+dd 01169f2a2h
+dd 07da8389fh
+dd 0ef69a482h
+dd 05e465bach
+dd 014537140h
+dd 013469852h
+dd 048f2f75dh
+dd 0402cd3f6h
+dd 007b9dd93h
+dd 021fb5818h
+dd 0d48fed64h
+dd 0d162052ah
+dd 0f5b2b141h
+dd 06ff8a55bh
+dd 0a37ba675h
+dd 0a9b935beh
+dd 0f3f34bb0h
+dd 0e9b79d67h
+dd 05715f75dh
+dd 06dd723e8h
+dd 0e99f130bh
+dd 0d86bd67eh
+dd 09bbe27a5h
+dd 01f986031h
+dd 0627bbd9dh
+dd 0ef697950h
+dd 00b686ca4h
+dd 0d9f3252fh
+dd 084686e08h
+dd 01edca624h
+dd 027205f77h
+dd 0b11ab13ah
+dd 097d038beh
+dd 047cdb4f2h
+dd 0a408228bh
+dd 031651446h
+dd 0be670a39h
+dd 0f2ccec61h
+dd 07a711e36h
+dd 08c628bc8h
+dd 0f939f878h
+dd 07e567a07h
+dd 039711c1ch
+dd 01bc0bad4h
+dd 0f9f8bd81h
+dd 011a0e47dh
+dd 0f960cdb6h
+dd 0773c8f61h
+dd 05143c943h
+dd 0839569b0h
+dd 00df88c1fh
+dd 043a81a9fh
+dd 09a4f81f0h
+dd 02dd377a2h
+dd 0a0b6b7aah
+dd 038388a1fh
+dd 046adfca1h
+dd 032e09b89h
+dd 0c11ff52ch
+dd 0ccd72448h
+dd 075a76948h
+dd 0b831c259h
+dd 078b5a7e5h
+dd 04c0d099ch
+dd 04b0b6edfh
+dd 0f6741bfbh
+dd 0eea957ach
+dd 05ffd00abh
+dd 0c0972298h
+dd 021f0ef35h
+dd 0ee0e9187h
+dd 0d9c26904h
+dd 0598725b7h
+dd 067c21927h
+dd 012a2bf20h
+dd 0c96efa04h
+dd 020dc6f73h
+dd 0704dfcb3h
+dd 077c7cdf8h
+dd 07c987857h
+dd 021e815d6h
+dd 0bea394f3h
+dd 0066f6f1eh
+dd 03c2d82edh
+dd 0009a3e2ah
+dd 0382476f8h
+dd 0d198f282h
+dd 0ae2b5235h
+dd 086c043e5h
+dd 007d4e7bdh
+dd 0063b2d7ch
+dd 0d2607c2ah
+dd 0f2b2a592h
+dd 00d0675cah
+dd 0016c5e71h
+dd 065d4e4f7h
+dd 06d5b5265h
+dd 076bd7010h
+dd 085ce4540h
+dd 04510cac2h
+dd 0ee96a709h
+dd 053e85a07h
+dd 0f62b92ceh
+dd 03ad51f02h
+dd 01a65cd81h
+dd 0a3fd8747h
+dd 04214f785h
+dd 054c9823bh
+dd 006a57adch
+dd 0456b185dh
+dd 0cf81aadfh
+dd 0286945bdh
+dd 0e436a946h
+dd 058f60eaeh
+dd 0524d77c2h
+dd 0ed9263e0h
+dd 013e473c6h
+dd 0517340c6h
+dd 07acad401h
+dd 0be32163ch
+dd 0126198d7h
+dd 03e60e2eeh
+dd 0b1bcc4a4h
+dd 000a64307h
+dd 03093ac54h
+dd 0afcb71ebh
+dd 099f3bb74h
+dd 01b91d31ah
+dd 029c26cf5h
+dd 004c0fc5ah
+dd 06d9aded4h
+dd 024776128h
+dd 05fdf2c92h
+dd 085977fcch
+dd 0a15d0ad8h
+dd 03247b3ffh
+dd 07d253842h
+dd 00abf4266h
+dd 072130034h
+dd 04f8bb1b0h
+dd 08984e635h
+dd 0e6926e5bh
+dd 0745d7657h
+dd 08ebb5bcdh
+dd 0daeb7cf2h
+dd 0818011a7h
+dd 023182affh
+dd 0b4b57ed9h
+dd 0438a9df0h
+dd 095d4d063h
+dd 04fd44853h
+dd 04aa3fd0ah
+dd 0feb7e0a0h
+dd 002e94734h
+dd 084b06ddfh
+dd 0e2482133h
+dd 0f39f24b3h
+dd 0c5dad923h
+dd 0be2084e2h
+dd 0bd31d575h
+dd 063425c4eh
+dd 0e4d30991h
+dd 04fe9ad08h
+dd 097d1f180h
+dd 087bac907h
+dd 0c9447645h
+dd 08ca772deh
+dd 0dac12891h
+dd 003c8c7c8h
+dd 0b2fa9f74h
+dd 03ff2d1bbh
+dd 060100ee7h
+dd 005a06d03h
+dd 05cfe2367h
+dd 00c0caf84h
+dd 072e5ae39h
+dd 0a1c83d13h
+dd 0e861fb0ch
+dd 0010ad7adh
+dd 02d69f56fh
+dd 004bba202h
+dd 0d0416bceh
+dd 06472e230h
+dd 00aaf7945h
+dd 080cedb27h
+dd 0d670a065h
+dd 06343480ch
+dd 0de504833h
+dd 03a7860a0h
+dd 031ebc434h
+dd 0ee7e234bh
+dd 0f4fa7f78h
+dd 059080b99h
+dd 0fe883c77h
+dd 0f3e63037h
+dd 0be46764dh
+dd 09b02a55fh
+dd 0f89276c3h
+dd 059dfbc97h
+dd 009c64ed5h
+dd 0c8b195f5h
+dd 063e2fa3ah
+dd 05827d40ah
+dd 092267e96h
+dd 0e317cf50h
+dd 0d9178ebch
+dd 01d6ab9d1h
+dd 092f8458bh
+dd 0772b443eh
+dd 0efd7dc69h
+dd 061fdfb63h
+dd 03d12ca4ah
+dd 011b49269h
+dd 0c8a77852h
+dd 055d34550h
+dd 0bb4ec5a4h
+dd 0c4ec41adh
+dd 0e1fe7fbah
+dd 06cc6daafh
+dd 09a223f06h
+dd 07fbd89cah
+dd 0ac7e9b3ah
+dd 0bdf5edf3h
+dd 0283c3c0eh
+dd 0eea5b2efh
+dd 083b5e054h
+dd 05c03ab67h
+dd 08f864e61h
+dd 0caf29873h
+dd 03d073789h
+dd 0ad944685h
+dd 0a409a1edh
+dd 01e5d9861h
+dd 087d587b6h
+dd 0000545d8h
+dd 0ac100b95h
+dd 03c54c234h
+dd 01fafe0beh
+dd 044453810h
+dd 04733aebch
+dd 0273d60d6h
+dd 0be618841h
+dd 0cdcc7889h
+dd 0daac39eeh
+dd 00485f087h
+dd 04c0b22ech
+dd 024ac2ecah
+dd 0ecb111ddh
+dd 0cbcdabffh
+dd 0450816d2h
+dd 084d11001h
+dd 0499c0465h
+dd 09cc54c0bh
+dd 05abfe0cfh
+dd 044818f31h
+dd 0d8a87ea1h
+dd 09fdc7b4ch
+dd 03f89786dh
+dd 0277760c9h
+dd 09c0f7bc7h
+dd 0c18ccc71h
+dd 0dd7daf93h
+dd 073e7c613h
+dd 0d6a5b176h
+dd 09a5db57fh
+dd 0eb672dcfh
+dd 04963f716h
+dd 0649519cah
+dd 0756d4833h
+dd 0909a9a28h
+dd 044351049h
+dd 03cafea59h
+dd 05e9315fdh
+dd 047758c14h
+dd 0a4947f9ch
+dd 08bb7e90ch
+dd 0cab46df2h
+dd 0b9a5c866h
+dd 0a8955ebeh
+dd 0e43cd151h
+dd 0beab6125h
+dd 043949a14h
+dd 0cfdeeb1ch
+dd 013845891h
+dd 0e243d9e8h
+dd 069800bbfh
+dd 04b256db6h
+dd 0194fbeb4h
+dd 0764717ech
+dd 0c31a81d8h
+dd 0e49b8aa3h
+dd 0d5ecd578h
+dd 0aed24cc8h
+dd 08ef359e9h
+dd 047a5cc0dh
+dd 012140b88h
+dd 0689ce84bh
+dd 03b3a5fdch
+dd 0aa222937h
+dd 0da727c26h
+dd 07c85b66eh
+dd 0ce22ad84h
+dd 018ca1a8fh
+dd 02c96b544h
+dd 096eb5132h
+dd 0603cc829h
+dd 074517515h
+dd 0e78dda51h
+dd 0122803f5h
+dd 08d885455h
+dd 03dc11ae7h
+dd 023d83bdfh
+dd 0d41ab5d9h
+dd 090e456cah
+dd 090feb9e7h
+dd 024dba594h
+dd 06a040b9dh
+dd 06f1cdfa4h
+dd 0ca86adb5h
+dd 0cf0de7f9h
+dd 0bb1155d6h
+dd 0da9d9fc2h
+dd 0fa9e1cc3h
+dd 0caf8749bh
+dd 0a4a562e5h
+dd 0c3ed0274h
+dd 03a95b7a8h
+dd 01f0a80bbh
+dd 05f9c35fbh
+dd 0c22296d5h
+dd 0f581e9cah
+dd 03f900edfh
+dd 0a4b93739h
+dd 034faab00h
+dd 06de21ebbh
+dd 05db672b7h
+dd 088f8dce1h
+dd 05ffdc0b7h
+dd 041773574h
+dd 00e5369fdh
+dd 0b096a9b0h
+dd 0a15dbd9ch
+dd 0922c915ah
+dd 0e5143a3eh
+dd 01e0737dah
+dd 01668b1ebh
+dd 0794aadcch
+dd 00245f86bh
+dd 022d0cbd2h
+dd 08f0fa7aeh
+dd 052ba9b45h
+dd 01aa6a9ach
+dd 06eb14cedh
+dd 0bd403d0dh
+dd 0abc779a8h
+dd 048a93656h
+dd 09d3bba8ah
+dd 016c642a0h
+dd 045bc7debh
+dd 0cb362a63h
+dd 00b8107a0h
+dd 03630bde7h
+dd 00f3c6f6bh
+dd 07c5f7e6ah
+dd 04fc44964h
+dd 0f3639d94h
+dd 0c92d64ebh
+dd 099e65c18h
+dd 0fa7c6e6ch
+dd 047c2ad48h
+dd 03718192ah
+dd 0bd29b2adh
+dd 0cf672ee2h
+dd 0c03206c8h
+dd 0c51db31dh
+dd 0a192bc3dh
+dd 05ddc4125h
+dd 0a8f3427ah
+dd 08d55e892h
+dd 0508352c3h
+dd 09b371bc4h
+dd 025c4fe69h
+dd 05602f970h
+dd 03be443b8h
+dd 0d78625e7h
+dd 030cf747dh
+dd 046523bf0h
+dd 0ab1be69ah
+dd 0711bc7aeh
+dd 0731d0165h
+dd 011ab6a49h
+dd 001bfa764h
+dd 093ab281bh
+dd 034a55d40h
+dd 0d973ddc6h
+dd 0636dded5h
+dd 0db21ba8ah
+dd 0889612e2h
+dd 094941d90h
+dd 0d3f8451ah
+dd 0ced9d97eh
+dd 06aa9bc8ch
+dd 0ea7205c0h
+dd 04d4dc2e5h
+dd 05224d1d4h
+dd 0cdddf9d1h
+dd 0ca705631h
+dd 0964a0f5ch
+dd 095a434cch
+dd 0b536dc69h
+dd 0afebe11dh
+dd 078d115c9h
+dd 073e792cah
+dd 0b9d6b35bh
+dd 0e8bfa003h
+dd 0f0a60530h
+dd 098361803h
+dd 01908cffbh
+dd 03f7e1295h
+dd 0134fc1a1h
+dd 0461ae98eh
+dd 011bea8aah
+dd 0db982f77h
+dd 0595cd5d5h
+dd 062dc0810h
+dd 0521c6916h
+dd 0c22761d1h
+dd 0cd78fb20h
+dd 07a296833h
+dd 0763a50d8h
+dd 0de28a9d3h
+dd 0e796fd1eh
+dd 07899d67eh
+dd 038035ddeh
+dd 0f8e390f8h
+dd 0b843137bh
+dd 04e5b3723h
+dd 0f7fc882bh
+dd 09922d595h
+dd 0870dbd71h
+dd 0d57db9ceh
+dd 0b066fff4h
+dd 0122ca9d9h
+dd 06ceecb48h
+dd 0fff7e0abh
+dd 08c36fb76h
+dd 0a6f78758h
+dd 05863177eh
+dd 0380efdcbh
+dd 0f079b011h
+dd 005d76ab2h
+dd 0d9212894h
+dd 0b2bebcb9h
+dd 0a62886adh
+dd 0746bafabh
+dd 06f4c2f60h
+dd 0fb4be4e6h
+dd 0ca7e3012h
+dd 0e800d848h
+dd 074f05da9h
+dd 0e8dde558h
+dd 09f040941h
+dd 0b1ca6f8eh
+dd 0d4618a8bh
+dd 0c9ea6c3eh
+dd 052680fb2h
+dd 04bffb81eh
+dd 08ded6976h
+dd 0714bcf55h
+dd 0ae1bf34eh
+dd 06e929b5dh
+dd 05353be3ah
+dd 011da8d31h
+dd 0430f218fh
+dd 0d0b57debh
+dd 059d7ec2ah
+dd 0167fce01h
+dd 00eafe9e5h
+dd 099ce846ch
+dd 0d48f106eh
+dd 0bccf971fh
+dd 0dc23dd3dh
+dd 05a14501dh
+dd 0ed219f1ch
+dd 03f9f2109h
+dd 0c37d4697h
+dd 02d771aach
+dd 09a2daa8dh
+dd 08d274ab4h
+dd 02f5ca7bfh
+dd 075509638h
+dd 0533f290eh
+dd 0d55d41fbh
+dd 0b6b4969eh
+dd 047eb135bh
+dd 08645fe86h
+dd 02dfc3271h
+dd 0988e5fa3h
+dd 015ac5857h
+dd 07390f426h
+dd 0590dc8a1h
+dd 02e23f7deh
+dd 0db6824aeh
+dd 078c3c16bh
+dd 0dfb015d2h
+dd 0e9a266d1h
+dd 01e4d6a40h
+dd 01e03caadh
+dd 03974e46ch
+dd 0b08e203eh
+dd 002d4f72eh
+dd 0a44358fch
+dd 0524a0b29h
+dd 05d38d4a8h
+dd 0e69bc8dbh
+dd 03bc56fbbh
+dd 0aa6f5d08h
+dd 064d13055h
+dd 0df1b4168h
+dd 090a3c355h
+dd 0ee7d074dh
+dd 00886de4ch
+dd 099d52085h
+dd 0538372dah
+dd 002ddf26bh
+dd 0e5ee6e2ch
+dd 07fcd3387h
+dd 00f11b97dh
+dd 007b8836ah
+dd 0a3c655ach
+dd 075429711h
+dd 080a4d638h
+dd 0edfe70a9h
+dd 04240e9f3h
+dd 0137d076fh
+dd 095cd9711h
+dd 078d1c261h
+dd 05a6699dbh
+dd 0b57a9e31h
+dd 06460310ch
+dd 01da98bbfh
+dd 04062d600h
+dd 0c1e9b5d6h
+dd 0536635a1h
+dd 0efb73417h
+dd 0e6e06e52h
+dd 0e07a47dbh
+dd 02799acb6h
+dd 0c0766afbh
+dd 0553cb882h
+dd 0072e22e6h
+dd 0145cc9fah
+dd 05bfda186h
+dd 09b100ca9h
+dd 04f14e4d7h
+dd 0f5901ea6h
+dd 0d3a4a552h
+dd 012b8450ah
+dd 06ebbca89h
+dd 049dd5c0ch
+dd 09b9af9cch
+dd 0ecbcc902h
+dd 069bbdfc9h
+dd 0cb1f6e68h
+dd 0d60a3b06h
+dd 01d03efbdh
+dd 02b99bb70h
+dd 040c9eba6h
+dd 0411b9464h
+dd 06d4b9f81h
+dd 04767ece1h
+dd 0951af084h
+dd 04a25b287h
+dd 004defbb4h
+dd 0a04cfc8bh
+dd 055fe5b12h
+dd 004e4a670h
+dd 0dc1fbf93h
+dd 08490b13bh
+dd 0f11b42a1h
+dd 087b3c870h
+dd 059b533ech
+dd 0a8d5a62bh
+dd 0cb3b3a2dh
+dd 05305182bh
+dd 03540c9afh
+dd 0ca83e224h
+dd 03e45dc3ch
+dd 0e30590d6h
+dd 08a882b13h
+dd 004619418h
+dd 07b2e521ah
+dd 090970181h
+dd 057f0e702h
+dd 08826dfe3h
+dd 02a043faah
+dd 0e44e3252h
+dd 02f306887h
+dd 0a732e54eh
+dd 0e7b64cceh
+dd 0fa54c451h
+dd 07674b0e1h
+dd 031e7902dh
+dd 077a2400fh
+dd 0858ca21fh
+dd 069f27fbdh
+dd 0c5236644h
+dd 0ed92fa9ah
+dd 01d3647dfh
+dd 046a29acdh
+dd 020fe1cb4h
+dd 06cada350h
+dd 0ed7668aah
+dd 04211abcbh
+dd 05517537dh
+dd 0cfe3e756h
+dd 03b4cd497h
+dd 023ea0449h
+dd 05c9415cdh
+dd 07ffc4d4ch
+dd 04bb66440h
+dd 075edf70ah
+dd 06dad5161h
+dd 0df289859h
+dd 0a71a10a1h
+dd 011fa2014h
+dd 00fd2c010h
+dd 01eb613f2h
+dd 0126ef937h
+dd 02fac9f46h
+dd 0b0e66bc3h
+dd 099ffef0bh
+dd 0a1a4af8fh
+dd 091749e4fh
+dd 0ade37c8eh
+dd 041c0c469h
+dd 030693d87h
+dd 0239410d5h
+dd 05a8afb3dh
+dd 0fccb7de2h
+dd 0921ad5c5h
+dd 068c47a1ah
+dd 0068529efh
+dd 0cdec9c5bh
+dd 0dc1105d5h
+dd 082cf6057h
+dd 0052cbd26h
+dd 0b2327ea1h
+dd 080124e9ah
+dd 0cf228771h
+dd 09806ae5bh
+dd 04460a19eh
+dd 0f7833a9ch
+dd 0d407bab5h
+dd 03e5ea783h
+dd 039f87466h
+dd 03aff9b18h
+dd 0b50268bdh
+dd 03c756923h
+dd 009c7c2d2h
+dd 0343ebe32h
+dd 0ea6154ebh
+dd 006053131h
+dd 027f9eefdh
+dd 0cc114631h
+dd 0dc71a4efh
+dd 023d0e504h
+dd 07b92a1d9h
+dd 0d50d7dc8h
+dd 020ae85d6h
+dd 06030148ch
+dd 0f2dfbae4h
+dd 0b4251b00h
+dd 08cd4f96ah
+dd 08a9384e3h
+dd 078dee38fh
+dd 08c3c303bh
+dd 086a031d7h
+dd 0bd1fe778h
+dd 00de8d169h
+dd 01027aa95h
+dd 09cf0b860h
+dd 055005ec3h
+dd 09d1965c4h
+dd 0eff454a9h
+dd 0320abf49h
+dd 0efefedf1h
+dd 09ffb5551h
+dd 01c410540h
+dd 06054227eh
+dd 069370c9fh
+dd 05efbb12ah
+dd 098339dbdh
+dd 0b4067003h
+dd 02164ad8dh
+dd 06c932e87h
+dd 0d5b27631h
+dd 05ea83140h
+dd 004b205e6h
+dd 08844cc77h
+dd 0e2f1ef74h
+dd 00c60518fh
+dd 06344f1ddh
+dd 0a69fe456h
+dd 0d3bd81f0h
+dd 07b71585eh
+dd 08c03010fh
+dd 041b3dd02h
+dd 0166e83cbh
+dd 024de0b7dh
+dd 063f78598h
+dd 0c2d0bf54h
+dd 08a95fef3h
+dd 0c2b8ab70h
+dd 09016a753h
+dd 09c30a08ah
+dd 0ecc07f79h
+dd 08536fea2h
+dd 004319ffdh
+dd 064b0139eh
+dd 05eec5d74h
+dd 0ba27f734h
+dd 0e1e9c071h
+dd 0556192d1h
+dd 02ebb8802h
+dd 0574599e2h
+dd 0a6e610c1h
+dd 0b7ccd90ch
+dd 005ba94b8h
+dd 02705b8ffh
+dd 0700f446eh
+dd 09841fde4h
+dd 0a18fd4d1h
+dd 02d2e78d6h
+dd 0f70eb03ah
+dd 0b9549fffh
+dd 0f33b9dcdh
+dd 087d72728h
+dd 01f186840h
+dd 030ead2c4h
+dd 0207b1721h
+dd 07b061bf5h
+dd 010f32f22h
+dd 090e14c77h
+dd 0610dec91h
+dd 09bda8f42h
+dd 0e02f3d7ch
+dd 0e75bedf6h
+dd 05e4829ffh
+dd 05c96d440h
+dd 0d41836deh
+dd 054b328a3h
+dd 09e245b43h
+dd 0f6f0d629h
+dd 072148ba3h
+dd 017e97bcbh
+dd 071962f58h
+dd 0c32b26a8h
+dd 0e7315811h
+dd 0cdfaec37h
+dd 0369a4324h
+dd 0aa533416h
+dd 0f90ff003h
+dd 098275b1fh
+dd 0e4e7c954h
+dd 0cdb181bbh
+dd 06db05ed7h
+dd 0710af89ch
+dd 068cdd528h
+dd 07168608bh
+dd 056ff076eh
+dd 0f5c1101ah
+dd 03ea8bfbfh
+dd 0af66aea8h
+dd 04652cfb1h
+dd 0c3556fe9h
+dd 016015978h
+dd 07eab9fc3h
+dd 02833ef47h
+dd 0e00735bbh
+dd 0cbecedc9h
+dd 094024ffbh
+dd 0e8b8f895h
+dd 00a96affeh
+dd 0cc082da0h
+dd 0cb434938h
+dd 0e430a2b3h
+dd 010d419a1h
+dd 063dc5790h
+dd 0ff3f55a6h
+dd 020037ab8h
+dd 04c150803h
+dd 0a92050a1h
+dd 0cbe1c417h
+dd 001c7fd32h
+dd 0831db571h
+dd 0feb5011fh
+dd 0682a1649h
+dd 0d35c065eh
+dd 04d249ff0h
+dd 0622e7e18h
+dd 04237e0abh
+dd 02e4ca552h
+dd 07c24c3d5h
+dd 0afa37953h
+dd 01d393ec1h
+dd 0c9467134h
+dd 077199d9fh
+dd 034dbe522h
+dd 00a0189f3h
+dd 02d1f6840h
+dd 0c059c72dh
+dd 05c480aa3h
+dd 03d8464e8h
+dd 06ada4ff2h
+dd 0dd7da13dh
+dd 0b660e2e0h
+dd 0940d2321h
+dd 09ad7b96eh
+dd 0aac517a5h
+dd 022f48b8fh
+dd 097ae80beh
+dd 0f70327a0h
+dd 0dba20844h
+dd 0005994cch
+dd 09de9e982h
+dd 050936d9fh
+dd 059f94739h
+dd 027d22338h
+dd 0e84c5307h
+dd 052c09dadh
+dd 0d9a3de0eh
+dd 00ec15119h
+dd 02fc3ed35h
+dd 0e7e95988h
+dd 08b51eff4h
+dd 0accba940h
+dd 0545f8928h
+dd 0e318d021h
+dd 0c9fae0a2h
+dd 029f6263bh
+dd 0c4760611h
+dd 0d3531b94h
+dd 0761c661dh
+dd 00a489c83h
+dd 062ee4399h
+dd 0b1e85a0ch
+dd 0e5f05e51h
+dd 0cf97aad6h
+dd 0c51cab24h
+dd 06768bb6ch
+dd 0828dbbf3h
+dd 061114ccch
+dd 0c7e27357h
+dd 0ec380c46h
+dd 0ad9208e2h
+dd 0db3ab208h
+dd 0f50631e2h
+dd 0e7025d82h
+dd 07f8239f4h
+dd 043748e81h
+dd 0f52fa887h
+dd 05fc61675h
+dd 052ddf7c7h
+dd 0111bb06fh
+dd 0a4a63affh
+dd 08a2e6569h
+dd 024999c77h
+dd 0117a2321h
+dd 0c62e0908h
+dd 029aa8acbh
+dd 0db6db816h
+dd 02bc04e9ch
+dd 090928edah
+dd 0d2a2728ch
+dd 026a7a69ch
+dd 0d71242e8h
+dd 00e4137a7h
+dd 0a6839c47h
+dd 0280dfd4fh
+dd 023e640b2h
+dd 0a8d4dcc6h
+dd 0cb0e8042h
+dd 0a5fae6c9h
+dd 0ff58eaafh
+dd 00dce5483h
+dd 0a35a79f4h
+dd 0a7718dd4h
+dd 0a1cd53d2h
+dd 0d736e0dbh
+dd 00f364a0eh
+dd 0efb9aacbh
+dd 070a34c9ah
+dd 0fe3ac1c1h
+dd 0a09a5fa8h
+dd 0e12a3e55h
+dd 0b137209ch
+dd 09420918ch
+dd 023a4dd11h
+dd 02f295ad6h
+dd 02b79cc3fh
+dd 0c4f06192h
+dd 026556157h
+dd 039d4fe99h
+dd 0cb8e65dbh
+dd 0eb749696h
+dd 0c1c40be2h
+dd 081249ddah
+dd 084402fbeh
+dd 004c34b24h
+dd 055617fcch
+dd 0642a2676h
+dd 09fcfeb78h
+dd 05959efa3h
+dd 03166ff48h
+dd 059f03910h
+dd 06eb79800h
+dd 0cd8f86d5h
+dd 0fbc50cf5h
+dd 0bd9d3179h
+dd 07f799949h
+dd 0500fe78eh
+dd 00ec0012eh
+dd 097edd118h
+dd 0d79c3807h
+dd 0961dd6eeh
+dd 0e4dbfd26h
+dd 0867bbcdfh
+dd 0fe84a49ah
+dd 050066871h
+dd 0029797b0h
+dd 08db81925h
+dd 019d0d018h
+dd 0f202212eh
+dd 0392913a4h
+dd 00d2fd4cbh
+dd 0102f7ef0h
+dd 0e263dda5h
+dd 0deb0644eh
+dd 0605b5418h
+dd 0d70e9f87h
+dd 09f7009b5h
+dd 0d7da2177h
+dd 0b09be37eh
+dd 00f0244b8h
+dd 029477023h
+dd 0ba9f87b9h
+dd 068c2fea6h
+dd 099b0af33h
+dd 077cbbc20h
+dd 00c09cb5ah
+dd 08d74a04eh
+dd 0037dcb02h
+dd 01b868d6fh
+dd 0fd92f92ch
+dd 0a1f9434ah
+dd 02416006ch
+dd 058b856e7h
+dd 0181517c2h
+dd 03553b977h
+dd 02edae7e4h
+dd 05d37441ch
+dd 091b14634h
+dd 00ce9b1f1h
+dd 0723eeb35h
+dd 07d952be2h
+dd 031a2a865h
+dd 0ccd53b17h
+dd 0deb1ee86h
+dd 002b5d678h
+dd 0831bdacch
+dd 0e19f4330h
+dd 08bd6b58ch
+dd 0b8839c7eh
+dd 0318f8bb6h
+dd 0e49163d8h
+dd 099cb1f29h
+dd 0ce0075e9h
+dd 0e663fec3h
+dd 05aaf8479h
+dd 03ae628d0h
+dd 04f3be658h
+dd 07e5c4162h
+dd 0bd017df1h
+dd 0f0f8f397h
+dd 059986516h
+dd 023b7dd7ch
+dd 062e4cd91h
+dd 0dc4e858bh
+dd 04ceb0a3bh
+dd 02c41fe48h
+dd 0990993aah
+dd 04fb1e9cdh
+dd 0310eaa5ch
+dd 0cc70448dh
+dd 0fdc8d98fh
+dd 01a14eb48h
+dd 0c9071fa9h
+dd 08d632adbh
+dd 0fc2b70d8h
+dd 0eb7b44d6h
+dd 0db974509h
+dd 0b9895465h
+dd 0069e4ff6h
+dd 0ef3d8c81h
+dd 0551f35f2h
+dd 09f23a647h
+dd 0df6874ffh
+dd 074eb8d52h
+dd 0e01f93b8h
+dd 0bae870cdh
+dd 002023b07h
+dd 0b0771883h
+dd 01abc6e24h
+dd 06ef16a9ah
+dd 044892dcbh
+dd 056d4e2a7h
+dd 034c20ae8h
+dd 0eb2ef79eh
+dd 00e9c0892h
+dd 0dad9b3fdh
+dd 05a9e00d3h
+dd 0958adc62h
+dd 0619409cfh
+dd 036b499c9h
+dd 0e4cd3351h
+dd 053faf388h
+dd 0941565a4h
+dd 0adc75054h
+dd 054cbfac7h
+dd 02cc5ead7h
+dd 024fd1b76h
+dd 0428ff63bh
+dd 0f4cb9153h
+dd 04e2700c4h
+dd 07dbca1f1h
+dd 03abd781ch
+dd 0d2706df4h
+dd 04114e2a1h
+dd 0e98b9c13h
+dd 003f6bd0dh
+dd 03e8a7329h
+dd 00eb0e5abh
+dd 099bde2a6h
+dd 0e31c67dah
+dd 05d684eefh
+dd 0c348a0c9h
+dd 0d9ca0c18h
+dd 08bf9b732h
+dd 06400bf06h
+dd 06986ffa6h
+dd 0a52d90bfh
+dd 0e1a168c1h
+dd 0bcf53001h
+dd 015512330h
+dd 09648204fh
+dd 0ed2cc94ch
+dd 02c5ee34dh
+dd 092e19a7dh
+dd 0f123d789h
+dd 03bd95b0ch
+dd 09428912fh
+dd 05e7bba2eh
+dd 09464ed2bh
+dd 02df252a6h
+dd 020c1b912h
+dd 0d11c6baah
+dd 07908839eh
+dd 07cb35279h
+dd 0da4dfb4bh
+dd 079142673h
+dd 0ba4dc252h
+dd 0998d7e46h
+dd 0db48f521h
+dd 042c02099h
+dd 0a52e3928h
+dd 0082f05eah
+dd 02fa3aca0h
+dd 09756ef67h
+dd 06efba93eh
+dd 04a7a972dh
+dd 0f6d0c24ch
+dd 069c08bedh
+dd 0bf878869h
+dd 06a955443h
+dd 09ba2c7cdh
+dd 08e67435eh
+dd 090eccd8ch
+dd 0bfd4002fh
+dd 0e3315a88h
+dd 0a4a4d8edh
+dd 003751001h
+dd 049555b25h
+dd 0de1457c8h
+dd 080784888h
+dd 018c6ba8dh
+dd 068a8b28ah
+dd 08882b2bah
+dd 08d18f73ch
+dd 09b7dc393h
+dd 086043167h
+dd 0d575a6fdh
+dd 0e3ae6b0ah
+dd 0a92dee1bh
+dd 040ef6a37h
+dd 0262cf6a0h
+dd 0147a7d79h
+dd 074fdbd92h
+dd 002f6225ch
+dd 08692a9e8h
+dd 0e8f1b9dbh
+dd 0c79c81a5h
+dd 0c4d07e29h
+dd 0f076affbh
+dd 07124554ah
+dd 061b69c5fh
+dd 024497360h
+dd 082b3899fh
+dd 07f99f9fbh
+dd 0b7da0fdbh
+dd 003f15cebh
+dd 0ee3c2a60h
+dd 0f54d4acah
+dd 0cb9b8721h
+dd 083b1066ch
+dd 0038d5587h
+dd 0a2a2ac4fh
+dd 0fb13b963h
+dd 07d88aa36h
+dd 09dc9356dh
+dd 097d9d13fh
+dd 0e0ced8bdh
+dd 062a43e6ah
+dd 0b6f7139ah
+dd 0fe2f792bh
+dd 061e84300h
+dd 0a6110cebh
+dd 0bc27f18eh
+dd 0d421ae3bh
+dd 0f1bc9056h
+dd 0c235a8f4h
+dd 04cedb107h
+dd 006dd65c0h
+dd 07262d003h
+dd 0db992012h
+dd 0b1858942h
+dd 05e49ff72h
+dd 070c9aaf0h
+dd 0693d4cd3h
+dd 049010517h
+dd 020b2cac6h
+dd 03d574235h
+dd 04f2be09bh
+dd 0444d50b0h
+dd 0a4c7426eh
+dd 0deae2c8ch
+dd 01268937ah
+dd 04d15fee3h
+dd 07f35a903h
+dd 09820d7adh
+dd 0dcae4163h
+dd 0cbfc5fffh
+dd 04363060eh
+dd 048b7bab7h
+dd 0fc9e797eh
+dd 0d14cb40bh
+dd 02bc40196h
+dd 0169fabf9h
+dd 039593074h
+dd 0221b1e93h
+dd 06c9bcaaeh
+dd 0ecaed2bah
+dd 01fa3e519h
+dd 03c6863b5h
+dd 056c712a3h
+dd 0f9f5af8eh
+dd 04e3eb256h
+dd 0b2af0ab5h
+dd 0cc15ea93h
+dd 0074ba7a8h
+dd 07b0def6bh
+dd 0a39e8626h
+dd 0513ccf0eh
+dd 0a5714316h
+dd 0708abd00h
+dd 0101212b9h
+dd 0211b97d3h
+dd 0c0fbbdbeh
+dd 0bb8caeb8h
+dd 07fc30d93h
+dd 06a678031h
+dd 026eb0bfah
+dd 0a8a24739h
+dd 064a7e875h
+dd 0a14b0c71h
+dd 0cfa98ee8h
+dd 0edaec6beh
+dd 0a9ac3151h
+dd 0869833a9h
+dd 049dc9c66h
+dd 0a2c4f132h
+dd 08562c0a0h
+dd 04d34fc80h
+dd 026768770h
+dd 07840dd7ah
+dd 0bcdd502dh
+dd 01c58407eh
+dd 0a292e332h
+dd 0a3abaefch
+dd 08c4dc980h
+dd 05b2f375bh
+dd 0c8eabaf0h
+dd 0b97c9d6bh
+dd 0f2ea6721h
+dd 0399ed9b9h
+dd 0a85351c9h
+dd 09f38a1a6h
+dd 04a1e2202h
+dd 03bd02a89h
+dd 0d97c2114h
+dd 0cdae47ddh
+dd 0e301b8a6h
+dd 00f23cb99h
+dd 022b1f775h
+dd 025b6c6eeh
+dd 05060e7f8h
+dd 023563079h
+dd 0bf76b480h
+dd 0fa6d3c68h
+dd 076b1e1e3h
+dd 0effde7eeh
+dd 0858ed5cch
+dd 041d25590h
+dd 0c0e8325bh
+dd 0fe20cb78h
+dd 07ad1b05dh
+dd 04a1a42f8h
+dd 04135e34bh
+dd 0db9e8435h
+dd 04f6359b0h
+dd 0767b11d2h
+dd 0c002eb9fh
+dd 02da3b5deh
+dd 04c938714h
+dd 0539976b9h
+dd 01da7d0e0h
+dd 0834edc6ah
+dd 08300f1afh
+dd 08329786fh
+dd 0b741313ch
+dd 0f72a858dh
+dd 0595c9618h
+dd 06f698b65h
+dd 0027fba22h
+dd 074350133h
+dd 0d5c437b9h
+dd 0323e4188h
+dd 0c76e0b79h
+dd 0983c1544h
+dd 020f21f46h
+dd 00d87ac68h
+dd 09fa00735h
+dd 0e326c18fh
+dd 003651042h
+dd 091553237h
+dd 01a31a194h
+dd 0394efb38h
+dd 01b0b75dbh
+dd 098e61753h
+dd 05d0bdfb0h
+dd 002f6d7c3h
+dd 075f73ebbh
+dd 08f21fd34h
+dd 0ec32ea91h
+dd 0e715a79eh
+dd 0dc7d7809h
+dd 009e68b07h
+dd 09439fcd8h
+dd 0c5bf71deh
+dd 05cce403dh
+dd 0bcfad4e8h
+dd 06f737c44h
+dd 0e439cc72h
+dd 0db86d277h
+dd 08cdf06a3h
+dd 081024353h
+dd 0b63a642ch
+dd 0f3baff38h
+dd 068621ab8h
+dd 0b5fa3ee2h
+dd 0e74d1a68h
+dd 00d922c59h
+dd 06eba04a3h
+dd 0d972008bh
+dd 0a6b61cfdh
+dd 00c7ec75ch
+dd 075fa400eh
+dd 0ae4c39a7h
+dd 046e78af4h
+dd 006320404h
+dd 054ca2823h
+dd 086cacf67h
+dd 0f799e260h
+dd 022e8d9b9h
+dd 04064f239h
+dd 04d2f6179h
+dd 05bb4ff68h
+dd 0c416bc58h
+dd 0f92a548eh
+dd 03d25b7f7h
+dd 06c050e82h
+dd 0640a13edh
+dd 046234051h
+dd 00e0b3affh
+dd 04a6c1b50h
+dd 0c5212e37h
+dd 0415ca1fbh
+dd 0a1435476h
+dd 0dd65e02fh
+dd 01a34fc84h
+dd 0c6f9dfc2h
+dd 084022f1fh
+dd 094c96258h
+dd 0f7c7273fh
+dd 06e3eaadch
+dd 0640d4b32h
+dd 03b55e14fh
+dd 00c8f0b0dh
+dd 08f0294a9h
+dd 04305d80dh
+dd 0929b0f2fh
+dd 003c0667fh
+dd 0858f461ah
+dd 0c03c538dh
+dd 03aa038ceh
+dd 0667cd7f0h
+dd 0e78b1550h
+dd 088d7b842h
+dd 04e0aca4eh
+dd 0433dfc4dh
+dd 02a04370dh
+dd 0f7251ba7h
+dd 0aa9cdcd4h
+dd 025da221bh
+dd 0cda0baefh
+dd 0497550a6h
+dd 067327d83h
+dd 0ff6bc855h
+dd 013e4c835h
+dd 0a900248eh
+dd 00f773006h
+dd 02ddfada8h
+dd 0f2b2d8a2h
+dd 0e5d467a2h
+dd 008f7f295h
+dd 03e97fb06h
+dd 0d1d7219dh
+dd 01250feeeh
+dd 09a596f3ah
+dd 05b9b1f82h
+dd 00b751000h
+dd 0152bd8abh
+dd 05093c650h
+dd 08474a8e4h
+dd 01554e862h
+dd 0af0e1a11h
+dd 0660a31e5h
+dd 08ba520eeh
+dd 0c964127eh
+dd 03c1f6141h
+dd 0ba440087h
+dd 0b6423de7h
+dd 0329136e0h
+dd 048115f55h
+dd 0acc042c1h
+dd 039f8e9e7h
+dd 04a61978bh
+dd 0dc334698h
+dd 09f041140h
+dd 01560ca92h
+dd 041de4816h
+dd 0820876f8h
+dd 0d71e53d1h
+dd 04d6a79cah
+dd 0560529f2h
+dd 0d08f1006h
+dd 071b62693h
+dd 0ef2be8e2h
+dd 0ab73f9aeh
+dd 03442cbb9h
+dd 0e7d65bdah
+dd 047b11c7fh
+dd 04552effeh
+dd 09485d00dh
+dd 0bb344610h
+dd 06d773472h
+dd 0f3bca06ch
+dd 0338fc6e6h
+dd 052e19798h
+dd 078ecc70fh
+dd 066e64adbh
+dd 0875a801fh
+dd 0910846d1h
+dd 09f61d1d0h
+dd 03467ac3bh
+dd 05e477ea5h
+dd 09c8ac455h
+dd 0ce98c771h
+dd 016f4b218h
+dd 0b950d83ah
+dd 07f224894h
+dd 02b76264dh
+dd 027ffa850h
+dd 0c51c8d01h
+dd 0e082b233h
+dd 0b9fa1c8eh
+dd 0cd9e11e7h
+dd 0c6380948h
+dd 019fe63d4h
+dd 0187aea60h
+dd 0f7b575fbh
+dd 07f78f246h
+dd 003d46886h
+dd 0b03430cah
+dd 09598f6e0h
+dd 078d7a63eh
+dd 08c2d9129h
+dd 0559b6800h
+dd 05ae0b8c1h
+dd 05a19ba15h
+dd 0459d8319h
+dd 04b5889deh
+dd 053ce1a7dh
+dd 04d8ccd00h
+dd 022f9cc0eh
+dd 06241d9c8h
+dd 0ecd7d06bh
+dd 0fa293138h
+dd 03a23d900h
+dd 0c00734a3h
+dd 043e94595h
+dd 03a9edc82h
+dd 0519ac29ch
+dd 0289a916bh
+dd 0dbc43b70h
+dd 0435dc764h
+dd 0828c4f84h
+dd 07117fccfh
+dd 03463cad0h
+dd 0e45e4bbdh
+dd 0e564b5ddh
+dd 08944a03ch
+dd 066ff7661h
+dd 0f5ecd581h
+dd 0b3f98b52h
+dd 051642f00h
+dd 0e2fb0792h
+dd 07b85fa82h
+dd 0f7925849h
+dd 09c4376e6h
+dd 0e44eb380h
+dd 0a7a5bd0fh
+dd 0749ca69bh
+dd 00deebfe8h
+dd 0f9c4b310h
+dd 0edd23107h
+dd 0d7a66d26h
+dd 098c7710ah
+dd 0b6dec218h
+dd 09783be84h
+dd 046f3142eh
+dd 0ee051c19h
+dd 07cd76b3ch
+dd 0f3a6dc06h
+dd 01137a2bbh
+dd 03100c942h
+dd 079f040e8h
+dd 0df369474h
+dd 0472a98c3h
+dd 019fa36bfh
+dd 091101e56h
+dd 050de0d98h
+dd 09bc35839h
+dd 0598995d0h
+dd 00ca89ce4h
+dd 07da083b0h
+dd 08ef13ed4h
+dd 078fa6a12h
+dd 00da456cdh
+dd 0a07cc997h
+dd 00c0c64b1h
+dd 0bc24c9ceh
+dd 091c2fee8h
+dd 0abe42d92h
+dd 0af80060eh
+dd 0d6858d2ah
+dd 0771292b0h
+dd 0489fde1dh
+dd 0ed85d406h
+dd 05ca85034h
+dd 0e56be551h
+dd 08f610c4ah
+dd 0014f97ebh
+dd 0af1c2491h
+dd 014430350h
+dd 0230fceffh
+dd 0bc84c637h
+dd 06c9ac883h
+dd 0c58e26aah
+dd 01696cb33h
+dd 0c71d63ach
+dd 0c0233099h
+dd 0e1171786h
+dd 0bb540f24h
+dd 0f317298ah
+dd 03df47634h
+dd 05dabe812h
+dd 01dd40877h
+dd 083c2f523h
+dd 065adafceh
+dd 0404868dch
+dd 0fcb57bc6h
+dd 098c18965h
+dd 0c85db461h
+dd 0b4ad3fa2h
+dd 0f2de79f6h
+dd 0e9500f22h
+dd 01ab042f8h
+dd 01ef56c4dh
+dd 065eda4fah
+dd 0356648fdh
+dd 0566a69eah
+dd 0efa56d63h
+dd 01ea610f5h
+dd 02b880d2ah
+dd 054402e5ch
+dd 0b633824dh
+dd 0593851a3h
+dd 0057122fch
+dd 00b5d0520h
+dd 0ed74a3fch
+dd 08df18438h
+dd 036f749c4h
+dd 02244d62fh
+dd 0771b7b70h
+dd 0fba12750h
+dd 001d80d35h
+dd 0d38e5758h
+dd 08d3deb40h
+dd 041078a5bh
+dd 0aef6ecfch
+dd 059b7e90dh
+dd 0970c3b23h
+dd 0fa074e28h
+dd 03d5f2e69h
+dd 0f4b65602h
+dd 07414ddech
+dd 0b2165232h
+dd 08936a735h
+dd 0e1933d87h
+dd 0505a6fa2h
+dd 047966b75h
+dd 039529f65h
+dd 08352374fh
+dd 0bec93959h
+dd 0a09be5cch
+dd 02a3098d3h
+dd 0801614c1h
+dd 0eb32dd7ch
+dd 0a9649db1h
+dd 07d619762h
+dd 0515a0751h
+dd 02546a26eh
+dd 00e5b0b00h
+dd 01dd420c4h
+dd 013dff0c0h
+dd 06ddc3af2h
+dd 0ca611ab3h
+dd 0839784b5h
+dd 046ed7095h
+dd 0f35f0200h
+dd 0d7594122h
+dd 0c688bae2h
+dd 06dd378f5h
+dd 027af3289h
+dd 0a05da9cdh
+dd 08c76f135h
+dd 061758bdbh
+dd 06bd0adc9h
+dd 04957e2f8h
+dd 0af25545dh
+dd 0f58c1a44h
+dd 0f2935892h
+dd 064555fadh
+dd 0ea2eec85h
+dd 0877d30edh
+dd 0bc60bfadh
+dd 06259e19fh
+dd 07e47b383h
+dd 011e33607h
+dd 0c3c622deh
+dd 00b77cfeah
+dd 02061839ah
+dd 09971fe59h
+dd 03497f23fh
+dd 0d0f8f6c6h
+dd 0f550cac6h
+dd 097b61cd5h
+dd 0448f7527h
+dd 0ce580d37h
+dd 0593264b8h
+dd 027538e48h
+dd 071f0ef68h
+dd 0e8427b0eh
+dd 07c52f9b8h
+dd 08a50256ah
+dd 0eb91d934h
+dd 0e459ace1h
+dd 07d604e1bh
+dd 09086a90dh
+dd 0b5ab5a03h
+dd 088930458h
+dd 08d1e453ch
+dd 09c17f2b5h
+dd 0b30ce0e6h
+dd 006ea6401h
+dd 0952c6ac0h
+dd 0a4a6b5b6h
+dd 05f73c157h
+dd 0b597e562h
+dd 079bbab90h
+dd 08f1bd5c5h
+dd 0d719a205h
+dd 0d060e370h
+dd 00aca3fdch
+dd 0a6c7d561h
+dd 06480709ah
+dd 094232471h
+dd 083ac4799h
+dd 0681c1368h
+dd 0f1d684ech
+dd 0a95dc10fh
+dd 0c3e6898ah
+dd 0cbe1de60h
+dd 0142320cch
+dd 01bd6f549h
+dd 0ecdaaadbh
+dd 0c12db33ah
+dd 0b792e455h
+dd 02cecbdc7h
+dd 05fad745eh
+dd 0c40f56bfh
+dd 06a053b6fh
+dd 0b1a76783h
+dd 02b0b9e2ch
+dd 03b41c2e4h
+dd 0e510603ah
+dd 0cb8d0bb7h
+dd 0ddd4d5ceh
+dd 065ee953ah
+dd 0794055edh
+dd 0408137a7h
+dd 01de416f2h
+dd 0bed0ae6eh
+dd 0a057a079h
+dd 085bb3a74h
+dd 0b4886d4ch
+dd 0c30eb0a5h
+dd 0b4ba6e4fh
+dd 0caec6571h
+dd 0e48a56b4h
+dd 0d837a52ah
+dd 0f1c70c90h
+dd 069cde592h
+dd 094bf6044h
+dd 030ebcdc8h
+dd 0908c80b6h
+dd 0737c145ah
+dd 09d349e68h
+dd 0072e4717h
+dd 004d69ea4h
+dd 0a348f325h
+dd 06c806258h
+dd 0096cdfd9h
+dd 0821f3465h
+dd 05a0a8c6ch
+dd 0525c09e5h
+dd 064313d00h
+dd 0408310fch
+dd 044e7477dh
+dd 072426968h
+dd 07c5409b7h
+dd 0d303d28dh
+dd 084f5b759h
+dd 0b3d1bab4h
+dd 0b35de089h
+dd 0315bf36bh
+dd 001ad17dch
+dd 019617b3dh
+dd 092441e93h
+dd 0162a7dbfh
+dd 00b4c2f7eh
+dd 02a8ca7c9h
+dd 0f0ad2e39h
+dd 027f8b4ddh
+dd 0c6babf39h
+dd 094abac3eh
+dd 0f0114041h
+dd 01bfff01ch
+dd 03f3c2f4ah
+dd 0f13bb493h
+dd 04513c5d8h
+dd 0d0de01a6h
+dd 0ca01eeeeh
+dd 0feffc730h
+dd 046498d71h
+dd 00a2d26f5h
+dd 0ee57c419h
+dd 0471c49f7h
+dd 0ab922c15h
+dd 08af8ca6eh
+dd 076d7ae81h
+dd 0d5adc01ch
+dd 0ccc2d20eh
+dd 0e7f150e6h
+dd 02ad80730h
+dd 0c883ac88h
+dd 0920b20cdh
+dd 06b808278h
+dd 08afa8044h
+dd 081aefd4fh
+dd 0e4a02f55h
+dd 0af483a9ah
+dd 01511f541h
+dd 00759d236h
+dd 0e63a9a8dh
+dd 028606a2ch
+dd 0f84918d6h
+dd 088d0001bh
+dd 094fec214h
+dd 0f116ad84h
+dd 01bc4abbeh
+dd 02d0c9f6ch
+dd 0d861235eh
+dd 02b4ab855h
+dd 013bfb868h
+dd 08689204ah
+dd 05b985482h
+dd 05bd0b1cbh
+dd 077d6afdah
+dd 05c78f7aeh
+dd 0206998aeh
+dd 0dc691eb2h
+dd 080f74478h
+dd 0a4b70b0eh
+dd 09748a949h
+dd 0a6daeeafh
+dd 023eaa739h
+dd 0709777b9h
+dd 0248a9ba2h
+dd 0d0301867h
+dd 0484b3b34h
+dd 0f42c165fh
+dd 06db4737eh
+dd 0f300a46fh
+dd 00ea39097h
+dd 02b22cb70h
+dd 06785b972h
+dd 019bff667h
+dd 076abab97h
+dd 0b38a4975h
+dd 06e67a23eh
+dd 0243a2c2dh
+dd 08a932440h
+dd 07730d5adh
+dd 0f1b64df9h
+dd 03a7db140h
+dd 0daeac505h
+dd 0ae97d899h
+dd 0e274dd1ah
+dd 040880980h
+dd 0e86cd928h
+dd 060164971h
+dd 0acf2c34eh
+dd 0d5e3964dh
+dd 07511490ch
+dd 000288802h
+dd 0adfcd781h
+dd 0442918edh
+dd 08b6cc6adh
+dd 0c50ad24dh
+dd 0df0321e4h
+dd 0515ac00dh
+dd 056ae952fh
+dd 0028b4f9ch
+dd 084f75554h
+dd 0e2082f2bh
+dd 0de247402h
+dd 0a3ecee0bh
+dd 0b4c5a52ch
+dd 04d263c15h
+dd 081cb26dch
+dd 089b53b85h
+dd 0d4667495h
+dd 075e8e0c5h
+dd 0c17b686eh
+dd 0350700e4h
+dd 0f70a8402h
+dd 06fca330bh
+dd 083d4dd6ch
+dd 0168e66f0h
+dd 0f32fa00ch
+dd 0a88530a7h
+dd 026f6d763h
+dd 01528011bh
+dd 06660a1a5h
+dd 0e17fb36dh
+dd 0bcf597e9h
+dd 059a4c1f5h
+dd 02ac1ae4eh
+dd 0c52107cdh
+dd 01b0e0ed9h
+dd 058400d43h
+dd 06d4ec59fh
+dd 0b31b97aeh
+dd 07ed2134bh
+dd 0e523d310h
+dd 0f350fc1ah
+dd 06f62f88ah
+dd 072bb94f3h
+dd 0d81530c7h
+dd 0ab403cb8h
+dd 0b07b90b5h
+dd 04903c10eh
+dd 0c886b442h
+dd 07ae72de0h
+dd 0156dbcf2h
+dd 0234beadeh
+dd 0f11bb453h
+dd 08b09bae0h
+dd 038322c3eh
+dd 0aef62b73h
+dd 0371d068ch
+dd 070c04200h
+dd 0f52f267bh
+dd 07c452376h
+dd 065abc2d0h
+dd 0d24564e1h
+dd 0f5d30071h
+dd 084d14a62h
+dd 07da6c3b2h
+dd 0a64b2e56h
+dd 0dd045ec3h
+dd 087f1d4b7h
+dd 0dfa93507h
+dd 01bc7403ah
+dd 0a56da682h
+dd 06348acfdh
+dd 0c4e45dadh
+dd 002668497h
+dd 0aac7a375h
+dd 0fac70ebfh
+dd 0a3a19c0ah
+dd 0b7fede2bh
+dd 03cf8cca5h
+dd 0c5730295h
+dd 0ba559075h
+dd 082969300h
+dd 0904414fbh
+dd 0cb784f19h
+dd 08d17a93dh
+dd 0d8f0bd2ch
+dd 04b974aech
+dd 0d8107983h
+dd 000d33eafh
+dd 0920312f4h
+dd 0292d09bah
+dd 0da03c812h
+dd 074b3b84ah
+dd 05a54e7d7h
+dd 085be9f3bh
+dd 063522a2bh
+dd 0132a97e5h
+dd 0ca4961abh
+dd 0a4b8a189h
+dd 06c33669bh
+dd 0ebd27523h
+dd 0f5e8de58h
+dd 08f567599h
+dd 0a9f34feeh
+dd 069a3740fh
+dd 0fb208e35h
+dd 0fe5124b0h
+dd 0dbf958cch
+dd 04a4c61d2h
+dd 08af5405eh
+dd 0cf0b6a66h
+dd 019a14d67h
+dd 076f86c64h
+dd 04a88bbc9h
+dd 0f3c4c835h
+dd 07d0d8e53h
+dd 07a14aeffh
+dd 088419e08h
+dd 08969f5f5h
+dd 05c8835e8h
+dd 0d1f315bdh
+dd 0fc9b3915h
+dd 01e2c299ch
+dd 0f10733e7h
+dd 0714e1b21h
+dd 045395668h
+dd 00d0fdf85h
+dd 02b6577a0h
+dd 003d7c419h
+dd 01135b405h
+dd 0b8baea87h
+dd 0bb8dc3f6h
+dd 0de2e2169h
+dd 0c3aa6b58h
+dd 081afee6ah
+dd 0a3ba1730h
+dd 0c6fd5bb4h
+dd 0d5867d58h
+dd 0f0bd8f79h
+dd 072f38101h
+dd 0cfb8f4d5h
+dd 07d4c68a0h
+dd 0bb6e2d20h
+dd 08054bd99h
+dd 001e1301fh
+dd 053874e7bh
+dd 06ef70257h
+dd 0d6bf0bf3h
+dd 05a2987cch
+dd 0389933e9h
+dd 01920d636h
+dd 0d34ce73ch
+dd 05c61ce30h
+dd 0072d87c5h
+dd 0433adb39h
+dd 0d8720d5ah
+dd 0be8cdeb2h
+dd 04a0586c8h
+dd 0db08d7b3h
+dd 0f19f5136h
+dd 042b0a1c4h
+dd 0e49057a5h
+dd 0fdc61c99h
+dd 0a0250a1eh
+dd 00f48d6afh
+dd 0cb9b3392h
+dd 0bad74df0h
+dd 01ab2762ch
+dd 00858b3a5h
+dd 081fe8b71h
+dd 05b0723a8h
+dd 0d2d70180h
+dd 007acec51h
+dd 03fdcc956h
+dd 0f82a7776h
+dd 052c2b7fch
+dd 0eca88bfch
+dd 07f176887h
+dd 0fb6d712bh
+dd 030fb09dbh
+dd 0efdcdc10h
+dd 098f01dbeh
+dd 04913090bh
+dd 0a47904b6h
+dd 0017703a6h
+dd 0dabee865h
+dd 0623e4bb1h
+dd 05208c0d0h
+dd 0f175f7cfh
+dd 01adfd53ch
+dd 00b949f95h
+dd 01b2d9cabh
+dd 044d7cbd4h
+dd 020c41f8eh
+dd 02ed19f72h
+dd 0b5c34194h
+dd 0d05dcf50h
+dd 0e1bca208h
+dd 021f88edbh
+dd 0ef613c70h
+dd 0fd552baah
+dd 035b3e134h
+dd 09d9531e7h
+dd 0f61d82bbh
+dd 0390a8526h
+dd 0ac96b13dh
+dd 02c41a366h
+dd 0a89e482fh
+dd 0a06fe0fbh
+dd 077b09533h
+dd 00df0f92eh
+dd 0edf455c4h
+dd 0808d1834h
+dd 0b62e9cbah
+dd 034b4cbech
+dd 05a72ef74h
+dd 042cf07edh
+dd 0a3db334fh
+dd 041dc8685h
+dd 08968480ah
+dd 06fe1bda5h
+dd 078dd4f29h
+dd 0822c0292h
+dd 0eb29de42h
+dd 0614941bbh
+dd 078b4003bh
+dd 08a4c54deh
+dd 0a7cb5fbfh
+dd 006481d94h
+dd 059f002f1h
+dd 0626bf2efh
+dd 025ec8704h
+dd 064c79a16h
+dd 0f838f746h
+dd 0bef8e1cfh
+dd 01b464149h
+dd 00dab477fh
+dd 0b6b3a04ah
+dd 028b6a611h
+dd 084ba8e8bh
+dd 0fd680298h
+dd 0724a794ch
+dd 048b3f034h
+dd 053931e81h
+dd 03b363ae4h
+dd 0ec314c99h
+dd 09187a7dah
+dd 0ea21da57h
+dd 01f15556fh
+dd 0284df523h
+dd 05aca8e0fh
+dd 0a4334c92h
+dd 0250e825dh
+dd 045393b5dh
+dd 0a6120ed9h
+dd 0d21029d8h
+dd 063eb9a2fh
+dd 0f5e8a73ch
+dd 0c9946158h
+dd 0d03268fdh
+dd 090737dddh
+dd 01133f74eh
+dd 0eab6967bh
+dd 003799acch
+dd 09b6c3daah
+dd 0b5174dc5h
+dd 09654e707h
+dd 01cee5a94h
+dd 074c0f7dch
+dd 047ceacd2h
+dd 050f79bach
+dd 0fd74aa47h
+dd 074e19a3ah
+dd 06c890b94h
+dd 036d80a1dh
+dd 0dfc7d8f0h
+dd 0f5b0e032h
+dd 0a44b04ddh
+dd 084f44a04h
+dd 0c06ddb81h
+dd 023d46713h
+dd 0fb21ef8dh
+dd 07873ba41h
+dd 094b49f39h
+dd 00aae38afh
+dd 0f198d964h
+dd 0db3ba283h
+dd 0e5fc5585h
+dd 073d5b29eh
+dd 036da5aadh
+dd 0cf02d378h
+dd 01fa31764h
+dd 096c1ba70h
+dd 01e65b44fh
+dd 0af649ee5h
+dd 0d9a28cd7h
+dd 067df752ah
+dd 086453fb9h
+dd 08cd1a83ah
+dd 0c99083dah
+dd 079f86563h
+dd 01221308bh
+dd 0a8962299h
+dd 0cde7c02bh
+dd 09d5d9c70h
+dd 0962b1e16h
+dd 0dd823d0bh
+dd 0b13c503bh
+dd 0a36cb680h
+dd 008f3303dh
+dd 028e0d5deh
+dd 0964e761ch
+dd 0c5cc2681h
+dd 07143280ah
+dd 04286e931h
+dd 082d5cd42h
+dd 058daeafeh
+dd 01dca24cfh
+dd 0c82a1fd0h
+dd 0eacbbf00h
+dd 03606c62ah
+dd 09fc8194ch
+dd 0ba9044a8h
+dd 0d3401c45h
+dd 0afee5498h
+dd 048beb96fh
+dd 00db05905h
+dd 03201972ah
+dd 08c758bc4h
+dd 0d477a799h
+dd 046557950h
+dd 0012b23f3h
+dd 0bed65bf7h
+dd 083d2cd2bh
+dd 063b944c9h
+dd 0fb44a39dh
+dd 0b7562880h
+dd 0599cd5d4h
+dd 0950cac62h
+dd 010d5611ah
+dd 056e4c271h
+dd 0bae76bb5h
+dd 00f04efb3h
+dd 035a3ef05h
+dd 0deefd06eh
+dd 06507132eh
+dd 02cc9c6dfh
+dd 08ec3d851h
+dd 014278913h
+dd 0c2a31bcdh
+dd 026aa2713h
+dd 09ecc53c6h
+dd 02f57c0e8h
+dd 0c3d5a70ch
+dd 0cd02862ch
+dd 0afb9c387h
+dd 0b3035cd8h
+dd 03260d4d8h
+dd 02dcc029eh
+dd 0ba7fdcfch
+dd 036ebe2c0h
+dd 093745f3eh
+dd 01afeeb9bh
+dd 0bf60158fh
+dd 0e132a7d6h
+dd 06e0224ffh
+dd 06d71c776h
+dd 0597a07d0h
+dd 067b96f18h
+dd 04eedf30eh
+dd 0779c84e3h
+dd 055a8c336h
+dd 025116107h
+dd 03da32db2h
+dd 039264da6h
+dd 002dbb060h
+dd 03a833018h
+dd 0a9a201f2h
+dd 03d1948afh
+dd 0edf781ech
+dd 07810d988h
+dd 0327069e6h
+dd 08a584da6h
+dd 0c2cd8469h
+dd 0a313fe7eh
+dd 0b67222ech
+dd 0a30bf3aeh
+dd 07dc57b3fh
+dd 01d304558h
+dd 005bf1728h
+dd 0900f5efah
+dd 07b24bf32h
+dd 0c3a5aae4h
+dd 046f5228dh
+dd 030a59f5fh
+dd 0417ad558h
+dd 002774e2ah
+dd 067d8c772h
+dd 0a0511928h
+dd 0bf216211h
+dd 096dfa3ceh
+dd 049a7e588h
+dd 08b9a51c2h
+dd 071f75426h
+dd 0b845a8a0h
+dd 07ca490e0h
+dd 0027879b5h
+dd 0ceb2cb4ah
+dd 0ff3a11f0h
+dd 07eb7516ch
+dd 027ddbd38h
+dd 003148628h
+dd 07c597d7bh
+dd 056c76ffeh
+dd 079f3d509h
+dd 0a6d58cf8h
+dd 0e12dca8dh
+dd 0902738cdh
+dd 0f3ffffbah
+dd 08f6ccbe7h
+dd 079f9542ch
+dd 05be4a41ch
+dd 0ec981eafh
+dd 0b74b93a1h
+dd 0eebc7c10h
+dd 068a1a256h
+dd 0301090a5h
+dd 0fef7806dh
+dd 0c2e34717h
+dd 0ccae528bh
+dd 04600b84ah
+dd 037a9135fh
+dd 014136472h
+dd 0c30e51eah
+dd 089a81201h
+dd 0e3e2ea82h
+dd 0cef15373h
+dd 029d07606h
+dd 0c6b2d3a0h
+dd 088180694h
+dd 0699375d9h
+dd 0a361d95fh
+dd 004045b7ch
+dd 0a350b23bh
+dd 0bd994fc6h
+dd 0056c210bh
+dd 02b0f26d8h
+dd 02c3b0c4bh
+dd 08aef317fh
+dd 0666b777fh
+dd 02f87d223h
+dd 0b89cdfd2h
+dd 0a9bd022bh
+dd 0bb314764h
+dd 07beae49ah
+dd 0b6fd259ch
+dd 0dcd1d9d4h
+dd 0286b3bb5h
+dd 0106fbc08h
+dd 08ee9615fh
+dd 0ed857b1ch
+dd 0d3a6e744h
+dd 0b9ea053ch
+dd 0db01f133h
+dd 06ca03f5fh
+dd 02c29ad9fh
+dd 04953b75ch
+dd 097b8a67dh
+dd 0f6191930h
+dd 077423285h
+dd 0eed1bae2h
+dd 0c549eb5eh
+dd 0a0c98d8ch
+dd 093f9ebb8h
+dd 06a22b69eh
+dd 08b25d81fh
+dd 0da1145cch
+dd 07f25d2f3h
+dd 04b2c74edh
+dd 04e34ad2fh
+dd 035d82353h
+dd 0b170e54ah
+dd 05c24a912h
+dd 0962ac8c1h
+dd 0227b88f6h
+dd 029c31c30h
+dd 00dac65f4h
+dd 03b0fa2dch
+dd 04a196ee6h
+dd 0c11be753h
+dd 07450f067h
+dd 03106b7bdh
+dd 072ff21a5h
+dd 0f9cdad22h
+dd 0b5eacd63h
+dd 06fe5632eh
+dd 0b9e78ea2h
+dd 01290b1c5h
+dd 0c02b06bah
+dd 015da20a6h
+dd 0bc74ca21h
+dd 04248d266h
+dd 0f88ca179h
+dd 0c7904373h
+dd 03c891afch
+dd 006a67023h
+dd 0bc055111h
+dd 06c52e90fh
+dd 07d362f0fh
+dd 0433dbbcdh
+dd 0bc39fbebh
+dd 02c70726ch
+dd 0c98e165fh
+dd 07fe526f8h
+dd 0f7304eb4h
+dd 05634c81eh
+dd 07b765081h
+dd 077a5223dh
+dd 0d0a0e822h
+dd 0a0a59d7ah
+dd 0eab5163bh
+dd 09025ffdeh
+dd 070b413fch
+dd 076d5054ah
+dd 0ced1f0ech
+dd 0d250ff56h
+dd 0f8c3dc6ch
+dd 090673f04h
+dd 0ac2c6387h
+dd 07616d403h
+dd 0f320f4f4h
+dd 0f91995cfh
+dd 04be7539ch
+dd 0e6271fc6h
+dd 059dc521fh
+dd 0329135a1h
+dd 02685e2a8h
+dd 024925471h
+dd 0acbc7310h
+dd 04aeb5827h
+dd 02548fdcbh
+dd 08bb76872h
+dd 0f317ca94h
+dd 0f00bc40ch
+dd 0ca2f4f33h
+dd 03e24acc3h
+dd 0591be9d8h
+dd 08071a233h
+dd 09401b766h
+dd 01be7662ch
+dd 08b368176h
+dd 0c22d44b5h
+dd 0a39d68e3h
+dd 01cd51003h
+dd 03a93d829h
+dd 04ca20a72h
+dd 0e87f4131h
+dd 01dffc1cah
+dd 0370c83d7h
+dd 0e089fd26h
+dd 01612ae60h
+dd 02d4a762fh
+dd 0c4631a60h
+dd 0345e2012h
+dd 03bc72c1ch
+dd 09c8387eeh
+dd 09e21349fh
+dd 0c1ae9564h
+dd 0c833eaa7h
+dd 062253d15h
+dd 08dc2a053h
+dd 0250875f3h
+dd 0d59aa7d7h
+dd 07e1a6679h
+dd 010d25e13h
+dd 097404b52h
+dd 02e7ab34ah
+dd 02046eba8h
+dd 09f16b1dbh
+dd 06a5b5b09h
+dd 0da5aec5ch
+dd 069982cf0h
+dd 0efdede0bh
+dd 08e7a74d2h
+dd 0ba69ab26h
+dd 0744abb5ah
+dd 0f7646989h
+dd 0714413a5h
+dd 0f7320953h
+dd 0a18e3697h
+dd 017542f59h
+dd 0b6cc38f9h
+dd 0da2d4759h
+dd 01f226093h
+dd 070b44a6eh
+dd 0a002551eh
+dd 0f238ecdeh
+dd 037525087h
+dd 02a20b3a6h
+dd 05bc6e3e6h
+dd 0dad80353h
+dd 0867d43b5h
+dd 0e56d3e50h
+dd 0f9e8374ch
+dd 0d1e6e301h
+dd 062ce77a1h
+dd 0df010abbh
+dd 042ae082eh
+dd 0d64a0138h
+dd 04f730d35h
+dd 06740551eh
+dd 06b1ba2ech
+dd 04332dd75h
+dd 01e769a6dh
+dd 01aa8a140h
+dd 0eaf2ffeeh
+dd 0a9ecc909h
+dd 0e672627ch
+dd 0da8fd728h
+dd 0bbfe487bh
+dd 07a9404ach
+dd 00d5232f1h
+dd 0498c5291h
+dd 0540e4b2fh
+dd 0bd2c68f8h
+dd 0e21db0eeh
+dd 037057e60h
+dd 02c7d0d3dh
+dd 0bb1f5654h
+dd 0e3f97bf6h
+dd 0f94f799ah
+dd 0c24721e1h
+dd 07b3ffa41h
+dd 0995301c1h
+dd 09efe1cd5h
+dd 002bd0261h
+dd 0da30a10dh
+dd 02dae9e36h
+dd 023edc4cdh
+dd 036a8e25ch
+dd 089e6d768h
+dd 0e9fed903h
+dd 014480a96h
+dd 06a6925e3h
+dd 0f1cad52eh
+dd 01ad5dd4dh
+dd 0aaf87290h
+dd 090b922f1h
+dd 0b5751103h
+dd 021551806h
+dd 010549b36h
+dd 0da08e05eh
+dd 01aead18bh
+dd 0e79961ffh
+dd 0f17744b4h
+dd 0144088bbh
+dd 0e1a0fce8h
+dd 000cd40e5h
+dd 0a35c9f9fh
+dd 0e7450a1fh
+dd 09cc2f68ch
+dd 023b2f3ech
+dd 0e314d01dh
+dd 031491dd4h
+dd 0eb053493h
+dd 0014c736ch
+dd 063c59615h
+dd 082a754b9h
+dd 0b5d89bdbh
+dd 01dbe39aeh
+dd 062457640h
+dd 016acb4f8h
+dd 0116af050h
+dd 0155dc448h
+dd 020b79f0dh
+dd 0810cc24ah
+dd 0c3fe6714h
+dd 0e9dea605h
+dd 01c57e81eh
+dd 0b9691b1ch
+dd 039d541a1h
+dd 0b2fecdfdh
+dd 086483d7dh
+dd 0d302c7c7h
+dd 0f7589efdh
+dd 01212a37dh
+dd 0eefa9596h
+dd 0e2a1609bh
+dd 0fc2ab30fh
+dd 0f795fb0ah
+dd 0e025fdf8h
+dd 01121cb48h
+dd 01d7e2bc4h
+dd 08c5bde27h
+dd 017d0c480h
+dd 0049b526bh
+dd 07caf8308h
+dd 0347eb2edh
+dd 0be60b29ah
+dd 0621b3836h
+dd 01e5e879eh
+dd 0a1967c26h
+dd 054f5c802h
+dd 0f0344ed0h
+dd 03f744080h
+dd 06792e6c8h
+dd 0e83a6a01h
+dd 05258fdcah
+dd 02982d5ebh
+dd 0b1ac415dh
+dd 0ce9528a1h
+dd 07f95de4eh
+dd 001111dcah
+dd 0e08ea3c9h
+dd 035214afah
+dd 0a9a6397ah
+dd 00c4e8ae4h
+dd 0939b2fbah
+dd 0b8edac46h
+dd 08b77d350h
+dd 0259ec9b9h
+dd 0e98191f1h
+dd 0c55174e0h
+dd 0dcdc9effh
+dd 00423311fh
+dd 0220d600bh
+dd 0ad06b2eeh
+dd 00477f92eh
+dd 07d51382ah
+dd 092b118dfh
+dd 0d9f75305h
+dd 08e55aa43h
+dd 0aa4b8880h
+dd 037c8f77bh
+dd 07cf0935bh
+dd 000c1d3c3h
+dd 0cd65471eh
+dd 040107f29h
+dd 011f390d6h
+dd 0bcf849deh
+dd 056f1b91ch
+dd 0268d67d5h
+dd 04801edd0h
+dd 06f0f90a4h
+dd 00127e3bah
+dd 0e11cae4ch
+dd 0b3372100h
+dd 014640332h
+dd 0dd5ed3e3h
+dd 0018111c6h
+dd 05b9e0c44h
+dd 0ed15eaa8h
+dd 05c655f1dh
+dd 04d3410efh
+dd 0b350c1c5h
+dd 02b9684b8h
+dd 0204428b0h
+dd 02fd497b7h
+dd 0045d00dah
+dd 004405fdeh
+dd 0ad4a3754h
+dd 0654843e9h
+dd 0c4d3f2f9h
+dd 003b00a35h
+dd 0c08f7348h
+dd 0bfbbc7a5h
+dd 030ce094eh
+dd 01b84efb5h
+dd 041f82a4bh
+dd 0d8bf8721h
+dd 007fe8087h
+dd 03b2551d6h
+dd 010b60491h
+dd 066df3127h
+dd 0a1033b33h
+dd 04cce9a3dh
+dd 01912dd36h
+dd 0d9fbf335h
+dd 0b06de015h
+dd 08a150877h
+dd 09aabedbeh
+dd 08fac022fh
+dd 019cfe25ah
+dd 01d5a4c6dh
+dd 0106d9ef4h
+dd 08e8c9c54h
+dd 0bad9f944h
+dd 0521328d9h
+dd 00f7d5c60h
+dd 0d637cc10h
+dd 08a0dcd4ah
+dd 0991a813dh
+dd 09715501fh
+dd 065b0cbach
+dd 0b57e52f9h
+dd 0ef86f4c5h
+dd 02bb60d14h
+dd 0c720fce0h
+dd 0ed61c8eeh
+dd 0b33c04bah
+dd 0437d6afah
+dd 0b6610325h
+dd 074be6d28h
+dd 057e1eb41h
+dd 04196ce42h
+dd 072987360h
+dd 096cf0549h
+dd 054c238e3h
+dd 0edcd5cedh
+dd 057a36d75h
+dd 0be4a8657h
+dd 0f60322ach
+dd 074dbc734h
+dd 01e5f9a2fh
+dd 02c538ef8h
+dd 0cb246ee5h
+dd 08aae7ff4h
+dd 079a74395h
+dd 0283e974eh
+dd 01d80dd30h
+dd 0dbab3a7fh
+dd 0ee93fca7h
+dd 07ba83d9dh
+dd 00d1195d8h
+dd 09faf7439h
+dd 0f00f79c1h
+dd 051e08418h
+dd 040a0ab00h
+dd 045e1ec10h
+dd 014cd07a3h
+dd 0fa4d52eeh
+dd 0828f16e4h
+dd 0cbdc2dbdh
+dd 0ca1b466ch
+dd 0a3bca76ah
+dd 0d472781fh
+dd 0cd30a19dh
+dd 0b0bbb004h
+dd 0ce1ac952h
+dd 00589a905h
+dd 03adcddeah
+dd 04bd65915h
+dd 01668b248h
+dd 0d18b996dh
+dd 033939d8bh
+dd 0b0d464d1h
+dd 01260bed1h
+dd 05d87c583h
+dd 0f440a909h
+dd 0eae46724h
+dd 08cd43e18h
+dd 0a211cf29h
+dd 0fd9f3d82h
+dd 0a86df2a1h
+dd 0877b68c2h
+dd 0cf4a3a71h
+dd 051a91f2fh
+dd 0734c1fc0h
+dd 0dc8df7abh
+dd 0f8f79232h
+dd 0a77aa680h
+dd 0fadb1a25h
+dd 04a7e5a28h
+dd 0c0f71f42h
+dd 047901e05h
+dd 0fa8ce940h
+dd 0489540e3h
+dd 002aa1859h
+dd 0f91b9e19h
+dd 08c205c38h
+dd 076f556adh
+dd 0f20f1234h
+dd 0bef338a9h
+dd 04f7393c3h
+dd 00cd39f60h
+dd 0f74ca9e8h
+dd 0d71af831h
+dd 08f5c295ch
+dd 08ae7d241h
+dd 0d7bd3806h
+dd 0d2e53850h
+dd 0ba5b96e7h
+dd 0f488b77eh
+dd 0dd9b5af2h
+dd 0cf26357bh
+dd 0f48b1c16h
+dd 03f544f0eh
+dd 0f55ce24eh
+dd 06f66cbe0h
+dd 0588c5020h
+dd 03ca50679h
+dd 002d11576h
+dd 06fc5675ch
+dd 0056ef2c9h
+dd 06bd78bd1h
+dd 0c4d8e83ah
+dd 0de411eafh
+dd 092e00f8ah
+dd 01c30f24eh
+dd 0fbf3f6b8h
+dd 08ed505c7h
+dd 0646daa6fh
+dd 05b801acah
+dd 0e9292b57h
+dd 0a4384c94h
+dd 00f5c2ea7h
+dd 0e4ef9c57h
+dd 0d4b65c21h
+dd 03183c522h
+dd 0abf312bdh
+dd 084387afeh
+dd 01593c678h
+dd 03b05fc6ch
+dd 06a10012ah
+dd 0251b9777h
+dd 0b6578741h
+dd 071a7bcb7h
+dd 0181a03eah
+dd 03516f40dh
+dd 070cf3c9fh
+dd 0f7a2c020h
+dd 02fa29447h
+dd 0cac22084h
+dd 043951ee5h
+dd 0824d519ah
+dd 05d0d3761h
+dd 01f84d8ebh
+dd 0dba38f1eh
+dd 086cc63d8h
+dd 088f0ad8ch
+dd 0b887f3c1h
+dd 0cb751each
+dd 0af706e2dh
+dd 09abc0125h
+dd 05004ea6bh
+dd 087fa6017h
+dd 0911b9021h
+dd 029900ecdh
+dd 045721dafh
+dd 039e1b535h
+dd 0a6d8ac55h
+dd 0257d3510h
+dd 09dcb1f33h
+dd 050d84f4fh
+dd 06581b343h
+dd 08ff3ce61h
+dd 06dba014ch
+dd 0f00f22e8h
+dd 0ee43b999h
+dd 0fecba69bh
+dd 09ee410a0h
+dd 07821cddbh
+dd 03dc0e689h
+dd 0a8e56b8eh
+dd 060d99814h
+dd 066e202f1h
+dd 0ba8a0397h
+dd 0827acd8eh
+dd 0d7551d1ah
+dd 0cb6d306ch
+dd 00542eed6h
+dd 0c81c5954h
+dd 0f4162b52h
+dd 0dbd829adh
+dd 0cfa9f05bh
+dd 0c767fde2h
+dd 059db3737h
+dd 02e079092h
+dd 035e96b10h
+dd 0240652e1h
+dd 03c5a22eeh
+dd 05aeb18f6h
+dd 00075ed23h
+dd 0b7e085f2h
+dd 02cc8772fh
+dd 0410100c2h
+dd 056c89e98h
+dd 0fd481e6dh
+dd 03debf405h
+dd 0fe2ef04bh
+dd 056308517h
+dd 0a3435605h
+dd 07cbd67c1h
+dd 010d08ac7h
+dd 08b4212beh
+dd 0a97049d4h
+dd 09f50222eh
+dd 06154b3d9h
+dd 0ae3c03b5h
+dd 00abc347ch
+dd 057ae2d72h
+dd 08ae487abh
+dd 012451496h
+dd 05289710eh
+dd 0370915f3h
+dd 0fde1ce56h
+dd 05a815554h
+dd 0dcc3595ch
+dd 0f893555dh
+dd 0cc350af4h
+dd 00048ac16h
+dd 0ad8d24dch
+dd 0220b4654h
+dd 0be3064edh
+dd 03cab9195h
+dd 054987a29h
+dd 023af6760h
+dd 0424f1c1bh
+dd 00051cedch
+dd 0ac1dd13ah
+dd 0b14a6bcfh
+dd 001a92c6fh
+dd 0aa1b402fh
+dd 0a06bc07ch
+dd 0c72c6100h
+dd 0083cb214h
+dd 0803c5a45h
+dd 08c1e4578h
+dd 0fab8a646h
+dd 04e98a55ah
+dd 0404d2f4dh
+dd 0a1f43d3eh
+dd 015dbad4fh
+dd 008a4982eh
+dd 0fd61ca2eh
+dd 0ffa71b2eh
+dd 00b955a80h
+dd 0f7961680h
+dd 0ca506fcfh
+dd 01de97e9ch
+dd 0843d90e1h
+dd 030a60cd0h
+dd 0c2a0bb75h
+dd 06c1b2a06h
+dd 0df921c27h
+dd 0d888dfb0h
+dd 06980ffbch
+dd 071e19eb8h
+dd 0dc2043bch
+dd 09ee6c174h
+dd 0ecd3c3f0h
+dd 013e07f2dh
+dd 0c5c09709h
+dd 0fb39145ah
+dd 0eb42fc9fh
+dd 0fba5386ch
+dd 0e99198f3h
+dd 045cbad21h
+dd 07a3514efh
+dd 0ce55dafch
+dd 0da266851h
+dd 0f3ab01c4h
+dd 0951ff70ch
+dd 0cd92b437h
+dd 0c975c0a1h
+dd 081250142h
+dd 0e115bfb9h
+dd 0b0a92535h
+dd 0e8500c65h
+dd 05b792860h
+dd 0bedfb4adh
+dd 0b15966fdh
+dd 0b49a5f66h
+dd 0bf8cbeeeh
+dd 0e6626f1bh
+dd 094550cc5h
+dd 07d34dfd2h
+dd 0336eb0c5h
+dd 0b8f3b9c1h
+dd 09972102ah
+dd 00f2c521ah
+dd 06c3913beh
+dd 00dcd40efh
+dd 0b8435ff3h
+dd 01d7979a9h
+dd 0f33c83a5h
+dd 035ebe447h
+dd 04c1ef7e7h
+dd 0011072dfh
+dd 0b6297b1eh
+dd 0bb9de037h
+dd 0d63ac22eh
+dd 0842bd918h
+dd 03022853bh
+dd 0169be31ah
+dd 0d8ea03adh
+dd 04eb8af62h
+dd 0344862fdh
+dd 0507fc77ah
+dd 0be6dfe5fh
+dd 01977d83eh
+dd 0bd7b4b10h
+dd 03f9b9945h
+dd 0df8c827eh
+dd 02833b531h
+dd 0b838f204h
+dd 0bdfa4bd8h
+dd 0f7293bfch
+dd 09e2b7c51h
+dd 0ac6aafd3h
+dd 0ba3ce0eeh
+dd 09d0aedb9h
+dd 00bd9202ch
+dd 094d1da70h
+dd 0e25881fah
+dd 06d413327h
+dd 0b3ead1e1h
+dd 074705019h
+dd 0eaac6619h
+dd 0de2dfc22h
+dd 075c2b80fh
+dd 0c99158d7h
+dd 0e3712c02h
+dd 0c221bb6dh
+dd 0cbc5155dh
+dd 0351d3d68h
+dd 058995587h
+dd 04cd1a1bfh
+dd 05521da17h
+dd 0b22d64d4h
+dd 0bd499134h
+dd 02c917c3bh
+dd 0b499c866h
+dd 034fc7305h
+dd 0ed4f3317h
+dd 0208cd244h
+dd 07f8cf650h
+dd 0486590ebh
+dd 0703f35d0h
+dd 0639f830dh
+dd 09aa95fb3h
+dd 09d7a7957h
+dd 0b660e25ch
+dd 0e4322620h
+dd 03b20c202h
+dd 06ea3edbbh
+dd 0aa16100dh
+dd 029134050h
+dd 00b857233h
+dd 07bd1f45ch
+dd 07233712ah
+dd 03366f47fh
+dd 03552bc22h
+dd 045307ca4h
+dd 0d28eea31h
+dd 020833a12h
+dd 05ade1baah
+dd 0d5ab09c5h
+dd 048f125adh
+dd 094e60883h
+dd 0348be53ch
+dd 0c45d9d8bh
+dd 0fd3d5c24h
+dd 044691a85h
+dd 0c8d5e7f9h
+dd 02765b53fh
+dd 0c677f599h
+dd 08d0bdb98h
+dd 0c79704d6h
+dd 01f911e9ch
+dd 0b0b46aeah
+dd 03cfe5a84h
+dd 0ffaa7030h
+dd 08f500287h
+dd 0ca484915h
+dd 09809f72bh
+dd 0e97492fdh
+dd 0538b12abh
+dd 070290222h
+dd 065aa9b11h
+dd 056478864h
+dd 0a7eebda6h
+dd 0ec60005ah
+dd 0a9382cf3h
+dd 0804d87f1h
+dd 0fa7aded2h
+dd 01ead54c7h
+dd 0c819cbe4h
+dd 0199a6755h
+dd 0f57be25ch
+dd 06cbe8574h
+dd 043ee12fah
+dd 00f6f487fh
+dd 0096d6d12h
+dd 0add0bcfbh
+dd 009be8150h
+dd 0a93900beh
+dd 0a31212fch
+dd 01fe9a70ah
+dd 0dd1dc6c4h
+dd 0c6cafb1eh
+dd 0d932089ah
+dd 0b08b899dh
+dd 0cf02005dh
+dd 001c9ae19h
+dd 0ed040db8h
+dd 050fcdedbh
+dd 06aa06cb5h
+dd 06b7aa590h
+dd 0932b3905h
+dd 07dfddc62h
+dd 0ee119745h
+dd 024421009h
+dd 0aac54759h
+dd 06feeb0a4h
+dd 0b3fc94cbh
+dd 0bb7311aeh
+dd 049febb9ch
+dd 08a1359c2h
+dd 02fd3d87fh
+dd 0a1f4dfeeh
+dd 0c40d9a74h
+dd 040d6acbah
+dd 025bc493dh
+dd 0d2395709h
+dd 05a76d343h
+dd 054310187h
+dd 02f651eb9h
+dd 0257934bch
+dd 07d320028h
+dd 02b379dech
+dd 08795deb5h
+dd 09035b939h
+dd 0af5fc4d3h
+dd 06b48eca3h
+dd 0604757deh
+dd 0fcd64944h
+dd 0152ee3cah
+dd 06ecc71d6h
+dd 08025e252h
+dd 0a09e0f92h
+dd 084f6dc14h
+dd 07271c0fdh
+dd 0ccb9be8dh
+dd 01790db79h
+dd 005e48680h
+dd 09748cbach
+dd 0150769b4h
+dd 01091bc0ah
+dd 047716a89h
+dd 0a88dd24bh
+dd 07f97f18ah
+dd 0fad109a5h
+dd 061b0fd25h
+dd 0acb0e55dh
+dd 0b67069d9h
+dd 015c6f6bah
+dd 0a6575d41h
+dd 081d012fch
+dd 0d3a13d69h
+dd 0c2e5c50ch
+dd 0360678d6h
+dd 0bea26c75h
+dd 0d8b523a6h
+dd 0f7f430fdh
+dd 0951933d7h
+dd 01f60b55eh
+dd 0a4fbc65ah
+dd 0c92e2d87h
+dd 0207bab1ah
+dd 0f2ecbb29h
+dd 0b79373e3h
+dd 001aa0afbh
+dd 013ff987fh
+dd 0896c52c7h
+dd 0cf9b1d3bh
+dd 0484104afh
+dd 0e4b1dcd6h
+dd 0c3cb3935h
+dd 0ea2b69c0h
+dd 05e516b7dh
+dd 0d39f2ee1h
+dd 03b021791h
+dd 080c38bf7h
+dd 084b5253ch
+dd 068a7911dh
+dd 03d0cbf37h
+dd 0e3623e25h
+dd 0ef82e906h
+dd 0d749aefdh
+dd 014e607bch
+dd 0b856b74ah
+dd 0e840b762h
+dd 054f1999ch
+dd 01b9989b5h
+dd 0ff142fcah
+dd 082a9ad17h
+dd 0d4ad52eah
+dd 098ccb115h
+dd 0e40d425bh
+dd 0a5a2e71dh
+dd 0b55dfc41h
+dd 01d336cd5h
+dd 002167971h
+dd 092d7d192h
+dd 0d788bb4ah
+dd 08b57468dh
+dd 0b939449dh
+dd 096614367h
+dd 0a71b4696h
+dd 0b4cab2c0h
+dd 0c3eccbe7h
+dd 0891f1d5dh
+dd 092874740h
+dd 08e8ccc9ah
+dd 0ef65e9b7h
+dd 0cbb9fac7h
+dd 0afa7c53dh
+dd 002a4dd1ch
+dd 010f9023ch
+dd 0add12366h
+dd 0261841a6h
+dd 086c40706h
+dd 05641cf95h
+dd 01768d1f5h
+dd 057171be4h
+dd 0736f76b1h
+dd 0d079643ch
+dd 0a97b850ah
+dd 0c94d0a4ch
+dd 0009b54f9h
+dd 0ab85116eh
+dd 0305ff544h
+dd 0841a128bh
+dd 08701ac6bh
+dd 0fecfad60h
+dd 00c3f3675h
+dd 0513c467bh
+dd 013f75369h
+dd 0aa772774h
+dd 03038f2a1h
+dd 0779481b6h
+dd 01141f429h
+dd 0a71d224fh
+dd 0b2fa9ab5h
+dd 0e254d13ah
+dd 0e5408c1bh
+dd 0883c8cf5h
+dd 054e51720h
+dd 0f2d1a341h
+dd 00f46cc35h
+dd 04277f7a8h
+dd 08632457ah
+dd 0e38b39a3h
+dd 08bc6f0e9h
+dd 00963d672h
+dd 0707403f5h
+dd 07059eae2h
+dd 07b537bb3h
+dd 090a6efeah
+dd 07b0ad2cch
+dd 03cc7656fh
+dd 05770ef71h
+dd 06fb08f15h
+dd 0767520a3h
+dd 00cdcf826h
+dd 02a177393h
+dd 05cdd4cech
+dd 073c6e9b1h
+dd 0971cf799h
+dd 04d95baf0h
+dd 0c486aa34h
+dd 0d24c4213h
+dd 0dc64ba57h
+dd 09af78514h
+dd 08033eed5h
+dd 0dcaf1831h
+dd 06ce2a261h
+dd 0e53c31b3h
+dd 0d1e0a6bfh
+dd 086408c58h
+dd 01108aa0ah
+dd 037a546d0h
+dd 01444c93bh
+dd 0d918c383h
+dd 04a0ddd6bh
+dd 07eec4848h
+dd 03bb0bb9ch
+dd 0a34a535fh
+dd 09e356d80h
+dd 0d64efe2dh
+dd 028de3262h
+dd 014e6faf2h
+dd 01c209814h
+dd 04910988ch
+dd 0e64b2a4bh
+dd 080d218f9h
+dd 0ca99a850h
+dd 0635e646bh
+dd 0718977bch
+dd 0f48b3b88h
+dd 0cd5fa6c8h
+dd 042683859h
+dd 09f88a893h
+dd 05fd706c9h
+dd 0e51ad1a0h
+dd 083b28f26h
+dd 08feed7a0h
+dd 0d95e7da8h
+dd 032d0e583h
+dd 093dc4ad3h
+dd 069ab2bbfh
+dd 02fc1aa54h
+dd 0e3b15854h
+dd 0b3ca513bh
+dd 0bc0db73fh
+dd 00867cb84h
+dd 07c8ffee8h
+dd 0aa7ef37dh
+dd 0aeedfeffh
+dd 0d4e9c0e0h
+dd 0e529e7eeh
+dd 02abfd51bh
+dd 03e05ed58h
+dd 078ea086ch
+dd 08b5444bdh
+dd 0bfa45b49h
+dd 0f22c9e49h
+dd 040b6371bh
+dd 084fa2a14h
+dd 059981818h
+dd 055a0b22fh
+dd 0f4e111b1h
+dd 0bcd4f9d4h
+dd 065236b36h
+dd 077566657h
+dd 02a7f57afh
+dd 0c77c0dc1h
+dd 0b46c28bah
+dd 0595800a2h
+dd 001cf121ch
+dd 09a5ca905h
+dd 02a0049e9h
+dd 079561d9bh
+dd 05a94ed56h
+dd 0e721def9h
+dd 0e8f350beh
+dd 0096aed54h
+dd 04c375f46h
+dd 0719b16e2h
+dd 0279818fah
+dd 01dfb8550h
+dd 04a3f8878h
+dd 05ed6f554h
+dd 019de242ch
+dd 0a2362e62h
+dd 009542f22h
+dd 0bff58011h
+dd 00f159877h
+dd 0118c7468h
+dd 0a5727ac8h
+dd 08f9fe1c5h
+dd 0b82017b1h
+dd 052f9eafah
+dd 001e0510bh
+dd 09f92a6e2h
+dd 0a4b0c0e4h
+dd 03b78d43dh
+dd 0cca3a664h
+dd 00cd4e5d2h
+dd 0675b4252h
+dd 005ada240h
+dd 0c19e91dfh
+dd 0a9a2a9b7h
+dd 00003a049h
+dd 0bf0a3b80h
+dd 0ece7229dh
+dd 0c9f7b8b9h
+dd 0ec2dd23fh
+dd 0c5c8ea0bh
+dd 0a936d834h
+dd 0ebfc9a9ch
+dd 0a0581b63h
+dd 099437c25h
+dd 09df419a6h
+dd 05ca5436ch
+dd 037435d8bh
+dd 07316624dh
+dd 0a61733e7h
+dd 0fc8cec82h
+dd 01a8df6b8h
+dd 0644c7ac2h
+dd 074518000h
+dd 0c0cfa547h
+dd 0a54d0a30h
+dd 0192116cbh
+dd 044cc4c34h
+dd 0501c79dah
+dd 05f1ad35ch
+dd 09bb416e3h
+dd 0065338ffh
+dd 07f2b25bah
+dd 0f3ef05b6h
+dd 08af9f543h
+dd 0999c00d8h
+dd 0ca494224h
+dd 033481cd2h
+dd 069541fcah
+dd 0aafa8d0eh
+dd 00cd2397ch
+dd 00437eaedh
+dd 04d7c3385h
+dd 0103a03fdh
+dd 08b460581h
+dd 0a4d39939h
+dd 05c6db4aeh
+dd 0142f43a6h
+dd 0261f5642h
+dd 0d8e6d6d1h
+dd 08d28adf8h
+dd 009abd9deh
+dd 06bd45cb2h
+dd 0dc114975h
+dd 0df253a56h
+dd 0acd1b8b0h
+dd 0fd3a6f16h
+dd 0e53afce3h
+dd 0df405bf4h
+dd 0d571c12dh
+dd 08d744bd7h
+dd 00143a89ch
+dd 047fedf8eh
+dd 08f492817h
+dd 0e50e475ch
+dd 0da612478h
+dd 089b505a2h
+dd 00d03574ch
+dd 0e0cdc352h
+dd 0abffbe2bh
+dd 0654762b6h
+dd 057f8d2bch
+dd 09132ea56h
+dd 086f1aa5ch
+dd 0ece8e935h
+dd 0caef0511h
+dd 0715c478bh
+dd 0adee68f7h
+dd 05c360405h
+dd 0d46dd5efh
+dd 06a1acec8h
+dd 05b702aa6h
+dd 0211e8f05h
+dd 011e9e63fh
+dd 090bdec73h
+dd 0c203934ah
+dd 00958327fh
+dd 05acc2b22h
+dd 06c99f251h
+dd 00d2c398fh
+dd 0f36d3f5fh
+dd 05b3ddd77h
+dd 0baf9ffc0h
+dd 0b53fa080h
+dd 0145beeb9h
+dd 039f4b03ah
+dd 0821c3c2fh
+dd 06cb04fe8h
+dd 0386809a6h
+dd 0a7c8bfefh
+dd 0e593824fh
+dd 0ddda457eh
+dd 07ad8b10eh
+dd 0f2227a49h
+dd 05327d472h
+dd 0af57cd44h
+dd 0876fae85h
+dd 042f96f0fh
+dd 0b49ea9e7h
+dd 07dc987d0h
+dd 09ff3e7cbh
+dd 004a66a4dh
+dd 08244d334h
+dd 0db3b6e6eh
+dd 0efc6a436h
+dd 02a57b05fh
+dd 0a7b53c56h
+dd 04d7a529ah
+dd 0ceaf1430h
+dd 0ac104105h
+dd 04c7da8b9h
+dd 023f1c24fh
+dd 0941cdaa9h
+dd 0884ab3b3h
+dd 085d2b025h
+dd 049617a84h
+dd 0dbe618e8h
+dd 0d90eee68h
+dd 08df9cd09h
+dd 00709c6efh
+dd 0f54a0c53h
+dd 0c71f4362h
+dd 0015badbah
+dd 0f9a4d4f7h
+dd 020faa641h
+dd 0f845a160h
+dd 0ad14c72eh
+dd 018dcef54h
+dd 0a86147fah
+dd 0e4c6077ah
+dd 06bfd527ah
+dd 0bcfbb4d3h
+dd 04ea03719h
+dd 0178348f0h
+dd 0751e7ee5h
+dd 0a38111a9h
+dd 04be535cbh
+dd 047073b1bh
+dd 063214885h
+dd 0b02f0c8eh
+dd 088bb5412h
+dd 0ae5194fah
+dd 09537f9b4h
+dd 05a455b67h
+dd 0a086030bh
+dd 074ad7effh
+dd 03fe8b9c6h
+dd 07f4dc622h
+dd 046379b38h
+dd 0e080a040h
+dd 058618ceeh
+dd 0391890e4h
+dd 02d1f587ch
+dd 0507cf8a3h
+dd 02f2ae6bbh
+dd 02dcbc3a9h
+dd 0c0897c73h
+dd 0f6488fdah
+dd 0e40e6823h
+dd 0024ce77bh
+dd 062b8d3f3h
+dd 0c5923aa3h
+dd 0f64a0342h
+dd 0faf98050h
+dd 049d09e03h
+dd 05bc56a4ah
+dd 0635a70cdh
+dd 00532545ah
+dd 06e6ed043h
+dd 098241945h
+dd 067f2f803h
+dd 07f6e1861h
+dd 05f485608h
+dd 076e7b415h
+dd 0eecb2d51h
+dd 0de7bdfbbh
+dd 0f5a5c8d4h
+dd 0e7831bcch
+dd 0c4fa5a8ch
+dd 04ab0288dh
+dd 0ac0a5a75h
+dd 05e89b2e3h
+dd 062dd7adah
+dd 091734204h
+dd 0f5dad503h
+dd 026896fa8h
+dd 0b672a875h
+dd 0c6710cc5h
+dd 01d416f19h
+dd 0b1155759h
+dd 04e29c90bh
+dd 01f4929d1h
+dd 00b787584h
+dd 0d7e81805h
+dd 0d2163733h
+dd 07068149eh
+dd 0108f3dfeh
+dd 04a0b21dch
+dd 0ba9df71ah
+dd 006d24588h
+dd 092310b3dh
+dd 0ecf9e164h
+dd 0de04ece4h
+dd 0ff97207eh
+dd 05de6d476h
+dd 017658bd5h
+dd 019d7fe22h
+dd 0f95ac71bh
+dd 00c5a7950h
+dd 0d0b2fe75h
+dd 0d810e1b7h
+dd 0e33720e3h
+dd 0f0af287eh
+dd 0e2bee632h
+dd 063d3b63dh
+dd 0995f19f9h
+dd 0f8fae17bh
+dd 096c90224h
+dd 0009fa99ah
+dd 0a9f2522ch
+dd 04ffba7ceh
+dd 00e039f8bh
+dd 0a0df441eh
+dd 033c5476dh
+dd 02a78e792h
+dd 08b9813d2h
+dd 0ce5a04b4h
+dd 080a30025h
+dd 0bea24cd1h
+dd 0cb9ee166h
+dd 068d73d80h
+dd 00a68572dh
+dd 03a578b34h
+dd 025651e43h
+dd 0d6027013h
+dd 0c4f22807h
+dd 010d1405dh
+dd 0d7145875h
+dd 0a97a36b2h
+dd 0cef63fefh
+dd 03e61e00eh
+dd 080de7ecfh
+dd 0ead3f195h
+dd 0dace61edh
+dd 05dd2f6cdh
+dd 036a84335h
+dd 01431f3a1h
+dd 07a11988fh
+dd 0d5446df0h
+dd 02c7cd65ah
+dd 03e957e06h
+dd 095c292e4h
+dd 09b3c11cfh
+dd 015ed6276h
+dd 0903a0782h
+dd 0862ef5d0h
+dd 0a4daa4b1h
+dd 093e31743h
+dd 0d782fe43h
+dd 01e725cf9h
+dd 043e93ca8h
+dd 0b5177df4h
+dd 074ae7d8eh
+dd 0406ea406h
+dd 0bee2b3d3h
+dd 053adb033h
+dd 0e4c7e606h
+dd 0e332dddah
+dd 027bfccfch
+dd 03add733bh
+dd 0237e1fe2h
+dd 01c6fb79ah
+dd 02009b071h
+dd 0539ab2d6h
+dd 005d998ceh
+dd 0fbf147d2h
+dd 0533c9653h
+dd 082b185c3h
+dd 07976c320h
+dd 03a33a58ah
+dd 0f2054d67h
+dd 0542c2df9h
+dd 0181a2063h
+dd 0f5a970efh
+dd 0e493c394h
+dd 076d10326h
+dd 0661bec93h
+dd 06b55d0ach
+dd 092080effh
+dd 04d680990h
+dd 034c6547dh
+dd 0e0ae018ch
+dd 0e6def90dh
+dd 00ae1e83ah
+dd 00ebe1155h
+dd 046025d62h
+dd 0430578aah
+dd 0f0223e82h
+dd 03c587f57h
+dd 09d9d9d7fh
+dd 0950cd0e5h
+dd 04dbaebb0h
+dd 02ad3ef08h
+dd 0010150beh
+dd 05850eab6h
+dd 0e5ebf70dh
+dd 0f5b4075ah
+dd 006a6a573h
+dd 0dffe687bh
+dd 06419305ah
+dd 0325c0bd1h
+dd 026dc1998h
+dd 02b1675b6h
+dd 0a72a1438h
+dd 0ac6c9724h
+dd 0b2759583h
+dd 0564b6e03h
+dd 0bd16eb3ch
+dd 08950525dh
+dd 0d6522d31h
+dd 00d654671h
+dd 0bf7177f6h
+dd 03a6bc921h
+dd 0dd9784d2h
+dd 0acb544fch
+dd 04495229ch
+dd 04e4999e4h
+dd 0d4c533c2h
+dd 04b5df076h
+dd 0b94097c9h
+dd 055c50816h
+dd 09ef0864eh
+dd 0544210d7h
+dd 0998f64c6h
+dd 0598cf916h
+dd 0348fa9a7h
+dd 0b8c10f14h
+dd 083b277b8h
+dd 057fa9923h
+dd 0db69f805h
+dd 01a1c2337h
+dd 09a06195dh
+dd 0734043bdh
+dd 0667d1547h
+dd 06b195ccah
+dd 06dd9f133h
+dd 0a3547ca8h
+dd 00bc13472h
+dd 0af54ae18h
+dd 0d40631adh
+dd 09b8cddadh
+dd 0fe243961h
+dd 018068878h
+dd 04c63f5f4h
+dd 0bcb487e6h
+dd 000e176a6h
+dd 04d0253c3h
+dd 0f293c4c8h
+dd 0c0b40433h
+dd 01a397d4fh
+dd 0da27e378h
+dd 0bb642816h
+dd 031f53f77h
+dd 0ee07e77fh
+dd 066fc1beah
+dd 0e14325aeh
+dd 03ae4f2e1h
+dd 092bdf789h
+dd 00dcd7effh
+dd 0b18feebah
+dd 0bfb9bd0fh
+dd 09f1236f7h
+dd 09a6be081h
+dd 0d347fd04h
+dd 0c8f453dbh
+dd 0075156d9h
+dd 032852124h
+dd 032161076h
+dd 043fe2232h
+dd 013cea042h
+dd 0efb74f1dh
+dd 0844aace1h
+dd 0d2bd99bbh
+dd 0809b4ee6h
+dd 0908808d3h
+dd 07c402878h
+dd 0f67a4ea4h
+dd 09d54ff84h
+dd 00412973fh
+dd 09a6e8217h
+dd 078fffd19h
+dd 0a2c54c47h
+dd 020ff2f98h
+dd 0a3e1b178h
+dd 0d48788d4h
+dd 02e079dc7h
+dd 017220618h
+dd 0fe86789ch
+dd 029688c9bh
+dd 0eceb6379h
+dd 0c4822c13h
+dd 0744ea3f5h
+dd 0f0ced4a9h
+dd 0e2c43724h
+dd 0e6547673h
+dd 0f93d57f5h
+dd 0061bd69ch
+dd 09b2b725bh
+dd 043b19247h
+dd 006d4d6deh
+dd 0113524d5h
+dd 0d041f056h
+dd 0fc7d953bh
+dd 07f74e1d5h
+dd 0bbb62869h
+dd 06b838cf9h
+dd 0ccd5a4e5h
+dd 08b592e70h
+dd 05f251e9eh
+dd 00feec1d0h
+dd 082490337h
+dd 0fc738d98h
+dd 0f99974c9h
+dd 04ab22afeh
+dd 07f01a142h
+dd 0df5e89bah
+dd 005171568h
+dd 0cec7181eh
+dd 0056579e2h
+dd 0069681b5h
+dd 06404c941h
+dd 07fd7ec55h
+dd 09f12863fh
+dd 0bd260abeh
+dd 07945a6dah
+dd 09b31c592h
+dd 01158644dh
+dd 00be321b2h
+dd 021aaa60fh
+dd 098836f5ah
+dd 08a3b8129h
+dd 0d0f19fbch
+dd 009b912a1h
+dd 0574ecab4h
+dd 0079f7eafh
+dd 099c972c3h
+dd 0fab7f983h
+dd 0c838677ch
+dd 06f12692dh
+dd 0680e1166h
+dd 0eab56609h
+dd 088273c39h
+dd 0a73ba717h
+dd 0ac7aad48h
+dd 027997104h
+dd 09fe238b8h
+dd 04c052bebh
+dd 067aed2e9h
+dd 0abff8756h
+dd 0a5bbfecch
+dd 0b3692102h
+dd 0d28e426ch
+dd 0e93f134dh
+dd 0c8bd6bf1h
+dd 0468cd366h
+dd 0852d081eh
+dd 0a2df5c22h
+dd 03294e4cch
+dd 0dbd18ca0h
+dd 04775c542h
+dd 007bebc9bh
+dd 021a9f3d9h
+dd 03b34f2ddh
+dd 0faad2084h
+dd 015488b39h
+dd 0fb143dfeh
+dd 08ac2cdfdh
+dd 016e7cbdeh
+dd 090f96d87h
+dd 01725df9ah
+dd 00e4f2803h
+dd 040594597h
+dd 06ca2b873h
+dd 01ab63e34h
+dd 022820357h
+dd 0993c3e18h
+dd 0e8c58c87h
+dd 05d15a586h
+dd 07a3e709ch
+dd 05e3755a6h
+dd 08959f89ch
+dd 0e74a49c2h
+dd 08f8da8dah
+dd 07a35daddh
+dd 0e7ae7736h
+dd 00b3f179bh
+dd 06844a20dh
+dd 09ba51f23h
+dd 03f976174h
+dd 0552da277h
+dd 08e626c18h
+dd 03b5efae1h
+dd 0f7032058h
+dd 0d37ecf5eh
+dd 0bbe50112h
+dd 0e738c90ah
+dd 07fc4b790h
+dd 091d598ddh
+dd 0206fbb8fh
+dd 057e3d0ffh
+dd 00c413ae2h
+dd 0d5daa87ah
+dd 0052e7820h
+dd 0e9c38f4ah
+dd 0fd5d252dh
+dd 025429822h
+dd 077efb9cah
+dd 05669b5bch
+dd 0d6405f09h
+dd 0b5069814h
+dd 0cf67cdafh
+dd 090bb18fah
+dd 0d47abac1h
+dd 00b595733h
+dd 088347562h
+dd 0dbe79e38h
+dd 0681cdbdah
+dd 0128e853ah
+dd 052d84c2bh
+dd 0b435838ch
+dd 06c0a296ch
+dd 094a1265fh
+dd 003359944h
+dd 020ca10f7h
+dd 0b181f7c5h
+dd 0650e5d83h
+dd 0381339deh
+dd 0017cb54bh
+dd 03230eeb5h
+dd 07d0412dah
+dd 0805334dfh
+dd 02b5347bah
+dd 0b0b9aa15h
+dd 0f1dec74dh
+dd 05fad9927h
+dd 0b7c26ba2h
+dd 05961690fh
+dd 05ef06e80h
+dd 0de31c250h
+dd 04f45b267h
+dd 0eb063b37h
+dd 008acaf19h
+dd 01074b7d2h
+dd 05e9a0b20h
+dd 0575d54a7h
+dd 086785381h
+dd 03876b4c4h
+dd 0fe632c44h
+dd 02c1b7d89h
+dd 00ee63185h
+dd 0765e7b75h
+dd 0c471a58eh
+dd 02e0b91c8h
+dd 04d9131dch
+dd 05a8acf48h
+dd 039398779h
+dd 0fe55e89ch
+dd 00037758ch
+dd 09b62236ch
+dd 0b9f85c0dh
+dd 00922314eh
+dd 0d7da4be5h
+dd 025d6c3abh
+dd 06a754d51h
+dd 042cacd9ch
+dd 06667353ch
+dd 0aac4e956h
+dd 014c302e4h
+dd 0f51fb242h
+dd 05dbf2f2ch
+dd 01621a269h
+dd 05a910f6bh
+dd 0584b6a89h
+dd 0072df22eh
+dd 060e798d2h
+dd 0758612c8h
+dd 09c9161e5h
+dd 0a2639a2ah
+dd 00d64f20dh
+dd 052edc12bh
+dd 05368b58bh
+dd 0a852fcf6h
+dd 0a2cd5b8dh
+dd 0778f020bh
+dd 09a8d3248h
+dd 0c5841417h
+dd 02bfe38b2h
+dd 0821dddf9h
+dd 0aa29ae49h
+dd 0621b6ce6h
+dd 057a9a822h
+dd 0e0a3e437h
+dd 0b4ac65a8h
+dd 0973d982dh
+dd 0b10cbda1h
+dd 0a4ff9d29h
+dd 0b2b2bc3eh
+dd 03a61b856h
+dd 0916370f3h
+dd 0fc2e3590h
+dd 0fbb91c44h
+dd 03addf21eh
+dd 03482f3d5h
+dd 0d201ee8fh
+dd 0af23ca43h
+dd 031395d2ch
+dd 0c8128a3eh
+dd 01dd3e290h
+dd 082d93026h
+dd 017001e6bh
+dd 00124bd9dh
+dd 09b1f0fdeh
+dd 0f836aed5h
+dd 0186a36a7h
+dd 048f772d4h
+dd 0553ac030h
+dd 0be8b8424h
+dd 01ce5a4e3h
+dd 099fdad7bh
+dd 0fcc03cc2h
+dd 00f894badh
+dd 0b7cee63bh
+dd 0888c5207h
+dd 0fe4c38bbh
+dd 004630282h
+dd 05cd5bde4h
+dd 05af9357ah
+dd 070e664e3h
+dd 0d2467f1ah
+dd 03f0de597h
+dd 0ab45a04ah
+dd 0de5d9c18h
+dd 0ffd752a9h
+dd 05a4daed8h
+dd 076bbb4fch
+dd 01bb2ca3eh
+dd 0a90115e8h
+dd 0338259c6h
+dd 06cc12aaeh
+dd 0239a88e6h
+dd 0a25be299h
+dd 0d7b2bdf8h
+dd 017cdeca5h
+dd 0577b9d52h
+dd 0e4b88b94h
+dd 02bf19b80h
+dd 0260e0b64h
+dd 0ec509c5ch
+dd 0a71f0b59h
+dd 0bc6bb510h
+dd 0e7facf3ah
+dd 0a7c5cbeeh
+dd 062ccba46h
+dd 0350a2caah
+dd 0330715adh
+dd 072ec99b5h
+dd 083e4eb48h
+dd 05c2df7ech
+dd 0035133cch
+dd 040b0e661h
+dd 0a0642d72h
+dd 09789ae27h
+dd 07f297ea6h
+dd 09bc724feh
+dd 0d034ce41h
+dd 03075bf88h
+dd 090ad954ah
+dd 0fd5fa208h
+dd 099ae403ch
+dd 0b3e3728bh
+dd 08c1821edh
+dd 0a2fcb6edh
+dd 012988780h
+dd 0b8cd673dh
+dd 00633b3d9h
+dd 0842e7e44h
+dd 028bf8181h
+dd 017db87b6h
+dd 065eb6d12h
+dd 003c49137h
+dd 0ff937d55h
+dd 009e76945h
+dd 03723e4c2h
+dd 03a731773h
+dd 0d16bcea1h
+dd 0f85e19deh
+dd 0472632b2h
+dd 002a09ec9h
+dd 069d27b8ah
+dd 0ceea2387h
+dd 087dffbefh
+dd 0ae5d45a2h
+dd 0c7a98b4ch
+dd 0e99fe0c9h
+dd 0c5b51db2h
+dd 09b3a8b0eh
+dd 0d489948ch
+dd 0d13398ebh
+dd 0da675806h
+dd 0b9ae87a1h
+dd 01838277ch
+dd 058a22625h
+dd 06f67639fh
+dd 05522b8d9h
+dd 0930623f4h
+dd 0ea73a6c3h
+dd 018f22e99h
+dd 088beeae0h
+dd 052693a7bh
+dd 04d24f017h
+dd 06aac5425h
+dd 09ca3b698h
+dd 0bd64e408h
+dd 0eb738eb7h
+dd 00987cd7fh
+dd 0f7d8e940h
+dd 017750344h
+dd 0cd3b97a5h
+dd 000dccdb5h
+dd 00ddb7f0ch
+dd 09dd77250h
+dd 097e0e716h
+dd 0f9d6a39ah
+dd 0b3922c03h
+dd 03263218ch
+dd 0bfd0304fh
+dd 06895540eh
+dd 06e18582fh
+dd 0c0e710cch
+dd 08064efceh
+dd 072e4b6edh
+dd 0001fcb2fh
+dd 0e158fe2eh
+dd 0e07c0891h
+dd 06370b7e7h
+dd 066c228b2h
+dd 0c6661617h
+dd 09ade7549h
+dd 0fa7595cdh
+dd 0ad9b6d3ch
+dd 0ee93f4deh
+dd 07c64e652h
+dd 02525f7f8h
+dd 04890dfddh
+dd 0babcdda0h
+dd 088fd0cf6h
+dd 0c0258a2eh
+dd 027533679h
+dd 094e30da9h
+dd 0a7997345h
+dd 052034ea5h
+dd 026194c32h
+dd 0280141a6h
+dd 0ac4edb85h
+dd 02904d707h
+dd 02f9cfdb0h
+dd 00211479eh
+dd 091b9c16fh
+dd 07d90aadah
+dd 0715cc919h
+dd 0a80e414eh
+dd 042a97daeh
+dd 0ccb08c34h
+dd 0b0fe4205h
+dd 0410321a2h
+dd 0f8424ebch
+dd 0b0e64592h
+dd 0dd7c7320h
+dd 0ca41cc5eh
+dd 092d751a0h
+dd 03de511d3h
+dd 04fe719c2h
+dd 084c20070h
+dd 09baee101h
+dd 06c1bc17eh
+dd 05e93f752h
+dd 0195f979eh
+dd 00fb3d458h
+dd 0f67e259ah
+dd 04093e2cfh
+dd 028878dfeh
+dd 0cc50956eh
+dd 015469a30h
+dd 05843b289h
+dd 0a2fd3b46h
+dd 03bcfe6fbh
+dd 029ec5c49h
+dd 05b7d7400h
+dd 04ae71274h
+dd 0924ce08ch
+dd 0713daa6fh
+dd 013566ac2h
+dd 05b90e9c4h
+dd 0021ccb48h
+dd 00ed55ab6h
+dd 0e789928fh
+dd 020710529h
+dd 0d7d7bc5ch
+dd 0ba27d0e0h
+dd 0bdddd29bh
+dd 03eff0bb8h
+dd 00efe7810h
+dd 0dbf24fc8h
+dd 0431ff4ech
+dd 0b8e08c4ch
+dd 01dad5ba7h
+dd 04bb9d371h
+dd 08a4e9736h
+dd 0cd216e03h
+dd 017154caeh
+dd 0a70bc362h
+dd 088538413h
+dd 0bff1bed4h
+dd 0c7bf4abeh
+dd 0311b3a57h
+dd 072b6bd6fh
+dd 0d03f559dh
+dd 0305ec50ch
+dd 0339932c1h
+dd 0c437090ah
+dd 0bdb1f0d3h
+dd 08efec0c5h
+dd 06beadd7bh
+dd 0d5f7bb70h
+dd 096cd28ach
+dd 091eda5e0h
+dd 02a9c65bbh
+dd 0229169fch
+dd 077b1e110h
+dd 0e9430365h
+dd 0bee8411dh
+dd 0d0dbdd79h
+dd 0e8d2210bh
+dd 080213d17h
+dd 07a0d8159h
+dd 080c752d2h
+dd 08d31fea1h
+dd 06d8ca0afh
+dd 08f8d1c78h
+dd 0ea3abc46h
+dd 0c9934301h
+dd 088139c73h
+dd 008759a13h
+dd 08f0ae7a5h
+dd 001da07efh
+dd 03e7fc5b6h
+dd 0e074de8ah
+dd 0d628f486h
+dd 053547d01h
+dd 01bd69e26h
+dd 080c62065h
+dd 047e5fb07h
+dd 00e3ab1ech
+dd 04631fe70h
+dd 0f285877dh
+dd 0b0e388bch
+dd 038477504h
+dd 0340ccf29h
+dd 0d3f58030h
+dd 00c627523h
+dd 03fdf9f51h
+dd 0e7966ed2h
+dd 039e48d31h
+dd 0ca7a9623h
+dd 08b70136bh
+dd 0d47502a1h
+dd 0fdb5561ah
+dd 0136fa9dfh
+dd 0e2393781h
+dd 0600eb7d4h
+dd 083168874h
+dd 0108bc644h
+dd 033237380h
+dd 0a0d16f31h
+dd 0e1c35a33h
+dd 00155aa68h
+dd 023fcd233h
+dd 06d7b0813h
+dd 05b752f89h
+dd 0f058fb6fh
+dd 0a56f55f3h
+dd 0df0c0e1ch
+dd 0d11a29bch
+dd 02d20744eh
+dd 0afdb81f6h
+dd 0e47585d2h
+dd 08c32f2e1h
+dd 0762e681bh
+dd 0fca71cb6h
+dd 0654ac225h
+dd 0d7aa7ee8h
+dd 03e62a4b1h
+dd 044c1afcdh
+dd 0f06c9de1h
+dd 068f388a3h
+dd 0be02bfb0h
+dd 0a3f8e3a2h
+dd 06bc309bdh
+dd 0f66f6589h
+dd 0a1566dc0h
+dd 0008ab3b6h
+dd 0551abafdh
+dd 07adbba9eh
+dd 09029cee0h
+dd 0acef45e1h
+dd 0c810c4d0h
+dd 01d6f3b89h
+dd 060d5a55eh
+dd 01972fe0eh
+dd 0ea579776h
+dd 03ba7e364h
+dd 0808b39a0h
+dd 0e54830bch
+dd 070bc049fh
+dd 05e187709h
+dd 02784595fh
+dd 07ba54e96h
+dd 017e159b9h
+dd 00dfe0713h
+dd 092cd100dh
+dd 00cf7c2ech
+dd 0e7fdd78fh
+dd 0fa168c23h
+dd 0eea50a3fh
+dd 030be548ah
+dd 028a34f70h
+dd 0b6cb1c5ch
+dd 030098099h
+dd 0cd7696ffh
+dd 0c6b4744bh
+dd 0522e2e04h
+dd 0f4f525a3h
+dd 0ae25e79ch
+dd 050e96a10h
+dd 0a12f247ah
+dd 0e26e14d1h
+dd 01744c60dh
+dd 0cfad04deh
+dd 0d2dba5b6h
+dd 08ec8ce65h
+dd 0cddca112h
+dd 0bf2394bdh
+dd 04ad58928h
+dd 0f14844bbh
+dd 03623ae75h
+dd 04f0cc32dh
+dd 06eae508ah
+dd 0288372f4h
+dd 013ba4c8bh
+dd 0f5a4e953h
+dd 0048dde5ch
+dd 0531b8ae9h
+dd 0fe61d93bh
+dd 0154abb2dh
+dd 0c6a3e907h
+dd 0cc99d98bh
+dd 08c671a1ch
+dd 06aacc2b6h
+dd 0dbd0d7a0h
+dd 03db1992bh
+dd 0a6ab6294h
+dd 0a5cf0962h
+dd 019e502eeh
+dd 06c4750e0h
+dd 0ae738e2ah
+dd 046a6e36dh
+dd 078c039cbh
+dd 02f203a53h
+dd 0b50feb3ch
+dd 0461fb317h
+dd 04618449bh
+dd 06647c264h
+dd 0bef0da2bh
+dd 0a07c44c9h
+dd 080de84e6h
+dd 0c66ac58dh
+dd 05abfe07ch
+dd 009abfa66h
+dd 006198424h
+dd 0cfff8e65h
+dd 087c3767bh
+dd 07d7d3907h
+dd 0228af4b3h
+dd 0305fa983h
+dd 092c18e91h
+dd 0b8a5540fh
+dd 03056662ah
+dd 09e291e40h
+dd 097280e4fh
+dd 0e7e0c9a0h
+dd 049a00a8ah
+dd 0fe308d68h
+dd 0a62ecadeh
+dd 0a71051afh
+dd 005a56596h
+dd 084be3580h
+dd 0b258c46fh
+dd 0c7efdfafh
+dd 0cd65af47h
+dd 05c4c4242h
+dd 069d1d9b0h
+dd 0ed9fc026h
+dd 0a98f22eeh
+dd 038c02f8bh
+dd 01cf64c5eh
+dd 0288df8c9h
+dd 0166f185ah
+dd 0c18c24e4h
+dd 0f630f4dch
+dd 03cb6d210h
+dd 088e67401h
+dd 0a4db80eeh
+dd 095db35bbh
+dd 0c549ac26h
+dd 0a91182f4h
+dd 0352878e5h
+dd 0b2f65fe3h
+dd 013498d47h
+dd 09aceae8eh
+dd 0459bf42bh
+dd 0369be43ah
+dd 0a55fd5ech
+dd 0a8d07e53h
+dd 0ab07d993h
+dd 0faf393f9h
+dd 0a2994f3dh
+dd 036903ce2h
+dd 0a56a89b4h
+dd 0b0407aebh
+dd 030e0836bh
+dd 01e5df263h
+dd 0771c8ac7h
+dd 07ba8d5beh
+dd 0dc116697h
+dd 091cdd831h
+dd 0d441df72h
+dd 03700502ah
+dd 0613aedfah
+dd 0a032d5c4h
+dd 08c6817aah
+dd 079b5be71h
+dd 0325d4187h
+dd 0dbf1001ch
+dd 0fcded3a2h
+dd 009fb7e26h
+dd 07e96d455h
+dd 0ebf50c72h
+dd 08b47b9c9h
+dd 0b685d931h
+dd 0929865ceh
+dd 06b8808f4h
+dd 0e4212ff7h
+dd 0284884fbh
+dd 053acda2fh
+dd 0cb92e62ch
+dd 090911890h
+dd 029a0a131h
+dd 00b834420h
+dd 0931e397fh
+dd 01d7558f0h
+dd 0f7e38895h
+dd 09fb89117h
+dd 09696d3c5h
+dd 0e1bcc8d4h
+dd 0ae6415d2h
+dd 051de11b5h
+dd 0098a9b14h
+dd 0f884b6a4h
+dd 0cd2e2a8eh
+dd 0cd9dadaeh
+dd 0cd249b24h
+dd 06be638c2h
+dd 02efd18c4h
+dd 03c330280h
+dd 0f64a3873h
+dd 08d22f038h
+dd 0f778743ch
+dd 0da6d826fh
+dd 045bff840h
+dd 0c978647dh
+dd 0f41c8f8ah
+dd 0f0bb4b05h
+dd 0c29acdb3h
+dd 0a3e0917eh
+dd 0d8b1f4f3h
+dd 06fbc6bc8h
+dd 0f8ca0f5bh
+dd 014c36a26h
+dd 09ee0cd05h
+dd 02aab2fb4h
+dd 0213c520bh
+dd 0edf60345h
+dd 01d13ebb3h
+dd 0bbbbf44bh
+dd 0571795b1h
+dd 092cc3efah
+dd 09bd300f3h
+dd 0f77ce747h
+dd 045678992h
+dd 0a48b6810h
+dd 0aa645b05h
+dd 0bbaa3aa5h
+dd 00af8c533h
+dd 0745d7df9h
+dd 0d48e7f0ch
+dd 07c0a99bbh
+dd 04e616ecah
+dd 0248638d4h
+dd 0ff5dba47h
+dd 0e4cb4391h
+dd 00ae97f49h
+dd 07a18da7bh
+dd 0ac463760h
+dd 07a3e3a35h
+dd 07e190e9ah
+dd 054613c74h
+dd 05c200a71h
+dd 0d3c08a4ah
+dd 0f66e1ac1h
+dd 0f5f49e61h
+dd 069329361h
+dd 002e8a5cah
+dd 03c2d91ddh
+dd 023fe8064h
+dd 025106654h
+dd 0cd2b2d22h
+dd 007510115h
+dd 0cd73caa5h
+dd 05d52a2e9h
+dd 01cee704eh
+dd 0b96aca56h
+dd 04055fa26h
+dd 02934de40h
+dd 00673ff59h
+dd 0109e25f3h
+dd 017b4720bh
+dd 0cc094ae7h
+dd 03f80a641h
+dd 021679027h
+dd 086645668h
+dd 0ff8df267h
+dd 009fa2dafh
+dd 04012a7b8h
+dd 0a35c9f69h
+dd 0781323bdh
+dd 06b1761d2h
+dd 0ba861c06h
+dd 067152b38h
+dd 09e3c301ah
+dd 0dea88e62h
+dd 08643e190h
+dd 0c3c34f67h
+dd 0f54a8d3ch
+dd 06d957fdfh
+dd 0d8a2e8fch
+dd 0e7e88a60h
+dd 09c6ad84eh
+dd 04df7ccf6h
+dd 070e88286h
+dd 05ca52cf2h
+dd 05e66047eh
+dd 06e1c7ca6h
+dd 05b98bfcbh
+dd 02669cbd2h
+dd 04fae34b1h
+dd 0d990e038h
+dd 0e58d9dedh
+dd 0f309de06h
+dd 0f9a53832h
+dd 0fc292423h
+dd 07cd71592h
+dd 071f5fb75h
+dd 077779101h
+dd 07cdfbdc9h
+dd 011351c01h
+dd 0d16e91dbh
+dd 0be257e29h
+dd 09908fbf1h
+dd 01b4b6969h
+dd 031dd783bh
+dd 080160d6ch
+dd 08f7debaah
+dd 066764a21h
+dd 0bb9624dbh
+dd 0d824705eh
+dd 05579c76eh
+dd 032f08ff8h
+dd 026a06482h
+dd 0da879586h
+dd 0cb3de572h
+dd 039f5f1cfh
+dd 06eef2250h
+dd 0840c0427h
+dd 08487e64ah
+dd 0b2214314h
+dd 0add6ae97h
+dd 0fa0566cdh
+dd 0d9c21dbeh
+dd 0d74f7f22h
+dd 0b8c46562h
+dd 0db98a335h
+dd 03566d948h
+dd 0ca63c456h
+dd 013884beeh
+dd 02ac06be1h
+dd 024b9b34ah
+dd 028dc75e1h
+dd 07fece17ch
+dd 0bfca5790h
+dd 02d84e9b1h
+dd 00caac44ah
+dd 04b4125cch
+dd 0c7059804h
+dd 0bbec524bh
+dd 06eb214b7h
+dd 0e2afcb84h
+dd 0cc9553aeh
+dd 003a52122h
+dd 0cac4f908h
+dd 0bd1a7e1fh
+dd 07e6e064ah
+dd 018ed83c7h
+dd 06483d44eh
+dd 0007a775dh
+dd 0351c286ah
+dd 0201134c4h
+dd 093eb1caeh
+dd 0504ae29bh
+dd 0ff508795h
+dd 0f81b2b3eh
+dd 07d4af49dh
+dd 04680691ah
+dd 015a36118h
+dd 0d49882abh
+dd 0f0891bd0h
+dd 05f93bf8ah
+dd 09fbd90deh
+dd 0f782319eh
+dd 00aa420aeh
+dd 056395dd7h
+dd 0d845066ch
+dd 093f60a46h
+dd 048d83f1dh
+dd 0bcd062d1h
+dd 0921e060dh
+dd 0bca7449dh
+dd 0cc521181h
+dd 046bafd83h
+dd 0ffd86cc5h
+dd 0c00cd608h
+dd 04597cb76h
+dd 05e6d2b86h
+dd 0029d1586h
+dd 03380ef93h
+dd 0374c6b08h
+dd 08cce70f0h
+dd 0d74c3b76h
+dd 022861f5eh
+dd 0ff9ca6dah
+dd 038e4d97fh
+dd 09971290fh
+dd 0513c753dh
+dd 020a75548h
+dd 0a9fd2754h
+dd 09c8b57b0h
+dd 0c8c01347h
+dd 0d90e2d39h
+dd 089b7113eh
+dd 0870b0ce3h
+dd 0a50b9ca2h
+dd 0567fd2adh
+dd 0527b342ch
+dd 00fbb50fch
+dd 0907981ddh
+dd 032a48214h
+dd 0466049d9h
+dd 003cc816fh
+dd 0405d89a4h
+dd 04c028580h
+dd 034c2ce44h
+dd 03a2fdf0eh
+dd 056f02748h
+dd 017abe462h
+dd 018b7f498h
+dd 0b1394e3dh
+dd 0cd35dffch
+dd 08e4d1ccdh
+dd 05cadb702h
+dd 0181f18fbh
+dd 058c3b640h
+dd 0b20261ceh
+dd 06340fa84h
+dd 07536a5e7h
+dd 07e577038h
+dd 04a6bdef9h
+dd 001f856a0h
+dd 0fcc9a1eah
+dd 0e2a84711h
+dd 042bffa6bh
+dd 057ed2fb6h
+dd 01d93d1e1h
+dd 0f345f24dh
+dd 0cb52d182h
+dd 0a7aa1f9ch
+dd 055616846h
+dd 03e69f9cah
+dd 0a4875b9ch
+dd 0e802e71eh
+dd 0d6fa5e8bh
+dd 0e08c8ecch
+dd 0bdb233feh
+dd 0e1d8825eh
+dd 0fa6f3f0ch
+dd 05a5d8080h
+dd 0da8d7d5ah
+dd 0f55abb91h
+dd 0c2384ddch
+dd 0ff952576h
+dd 0ad01090bh
+dd 05b7d2f74h
+dd 0132a0bf4h
+dd 0773a5595h
+dd 06587f670h
+dd 0086456d9h
+dd 0f8e00bc9h
+dd 0de69d376h
+dd 037fed24fh
+dd 058f332c4h
+dd 0b1002012h
+dd 03493e504h
+dd 0f83ba228h
+dd 00d4ad25ch
+dd 023cfc0e3h
+dd 08ed5b86ah
+dd 076688b64h
+dd 0cb3e6d9eh
+dd 0d0ebe478h
+dd 071b0d50ah
+dd 0141eb5bch
+dd 0c111c5b2h
+dd 0675c23aeh
+dd 02a99bb0ch
+dd 0c91d131ch
+dd 0d2ab8c7dh
+dd 004a3dbe5h
+dd 03c041c34h
+dd 07056626ch
+dd 0d7ece6bfh
+dd 0f6e33a9eh
+dd 07d25a470h
+dd 06c24a490h
+dd 0e8a7af69h
+dd 0939adc54h
+dd 05a91799bh
+dd 0d6882da8h
+dd 01e0dfecch
+dd 028fee09ah
+dd 06ac70885h
+dd 01c731dcdh
+dd 06066b7b4h
+dd 05d748498h
+dd 0c66c4bc3h
+dd 0e1225a8fh
+dd 08bed391dh
+dd 0fc43dcaeh
+dd 03ec8a6f8h
+dd 0d9de03b9h
+dd 04c14b12fh
+dd 089b26a13h
+dd 08ae56555h
+dd 02377bdceh
+dd 06c8d8e98h
+dd 0e1248956h
+dd 04ad96307h
+dd 0a60f4a5eh
+dd 09e60ab5dh
+dd 054a4c23bh
+dd 07c99fbeah
+dd 0607c6884h
+dd 046b6700fh
+dd 0c39695c5h
+dd 0a3694f9dh
+dd 0b76a0305h
+dd 031d3d5cah
+dd 0a0b153c2h
+dd 0d8f7a8eah
+dd 0ea0b6c36h
+dd 0895970feh
+dd 050388fb6h
+dd 0e12a0419h
+dd 050e28188h
+dd 0f3345a51h
+dd 0d397d51eh
+dd 0b21ee244h
+dd 030989ca9h
+dd 0e2b79a35h
+dd 0155d231dh
+dd 00634e686h
+dd 0ca421ebeh
+dd 0abd63238h
+dd 0122f5fe9h
+dd 06a643fa2h
+dd 0020f1d36h
+dd 0fcc52909h
+dd 09649d614h
+dd 07528319ch
+dd 0daafc87eh
+dd 0fb5afbd5h
+dd 0df4105cah
+dd 01d83712ch
+dd 093a1add8h
+dd 00a18406bh
+dd 00000156ah
+dd 070e6884fh
+dd 0b120bd36h
+dd 08a932750h
+dd 0727634ech
+dd 0130a0f34h
+dd 099140935h
+dd 08dd5a8f8h
+dd 008e020cbh
+dd 007fdfcadh
+dd 0f8ff7c0eh
+dd 06abcae69h
+dd 035655a76h
+dd 0388bf9ebh
+dd 03c3a4adbh
+dd 0793df1b8h
+dd 09a4104d5h
+dd 0b1d44c71h
+dd 0f65040fch
+dd 0c1f8b283h
+dd 006d9ee62h
+dd 0a340bdedh
+dd 02cddb5c7h
+dd 0217726ach
+dd 09aa7aaf5h
+dd 035eb332eh
+dd 0655f38c4h
+dd 0785c2046h
+dd 07eac8747h
+dd 08f2483feh
+dd 0a27c47fdh
+dd 0b8b876e0h
+dd 04daad2a3h
+dd 0dbcbf2f0h
+dd 0942d23a8h
+dd 06bbcf297h
+dd 01518d89ch
+dd 08c31e6d4h
+dd 07486778bh
+dd 0ac62e131h
+dd 05d60161dh
+dd 02b80be00h
+dd 079bc7010h
+dd 086192ceah
+dd 0bda9ae58h
+dd 0e743763fh
+dd 0dffa35a8h
+dd 01bb7882dh
+dd 018325bfdh
+dd 0571363c7h
+dd 03ec50b9eh
+dd 04ba92c29h
+dd 0abe31418h
+dd 0e6a37b90h
+dd 045828117h
+dd 01f1f1261h
+dd 05b276450h
+dd 0d34475f7h
+dd 0f8fcec55h
+dd 0716198bfh
+dd 02ce29184h
+dd 00385eac1h
+dd 0ea498a1eh
+dd 0f35a7149h
+dd 0690954d1h
+dd 0c032c9c2h
+dd 02c66f1c6h
+dd 05453cf78h
+dd 01e02b16ch
+dd 0f8e8e444h
+dd 0515423bdh
+dd 0d38c73b4h
+dd 0f9ee7c6ah
+dd 03eb8a08dh
+dd 06aa65d6dh
+dd 0fa852c0bh
+dd 0a4cff20fh
+dd 0ea569d46h
+dd 08f27907eh
+dd 0527bcf31h
+dd 0a5a52c3bh
+dd 05c65d693h
+dd 0a9ec5ae5h
+dd 0328e09cah
+dd 031953d5ch
+dd 069b28d1ah
+dd 03efa738fh
+dd 0be47ef05h
+dd 022edde80h
+dd 082592e0bh
+dd 0f81d7e94h
+dd 09759196fh
+dd 02fde579ch
+dd 07be28b7ch
+dd 0fcbb5c90h
+dd 02c2e2423h
+dd 062412037h
+dd 08437228ch
+dd 04dba1dfbh
+dd 0ceabbe2eh
+dd 05021acbdh
+dd 07c6534c6h
+dd 04699bd92h
+dd 005aabd72h
+dd 04192a437h
+dd 0514448c9h
+dd 0a4ddba99h
+dd 01438269bh
+dd 0a879c6a7h
+dd 013f48e5ah
+dd 0888bc644h
+dd 0a9c78568h
+dd 0f73dca3fh
+dd 01d0bfb3eh
+dd 0e38458edh
+dd 0d08e723ch
+dd 0c3f73702h
+dd 0ee7cc22bh
+dd 0a77d7d2ch
+dd 03263d521h
+dd 07261356dh
+dd 0ab639658h
+dd 06b331994h
+dd 0f9275e77h
+dd 0df3cabb2h
+dd 05af59dc9h
+dd 01627208bh
+dd 0ae844683h
+dd 0b1bb1e69h
+dd 089308198h
+dd 026be831ah
+dd 0ddb2a489h
+dd 03b17b08ah
+dd 02aa78abdh
+dd 0fec332e0h
+dd 01bc56098h
+dd 0c3e2c885h
+dd 097deccb3h
+dd 0cf093e7fh
+dd 0427a3105h
+dd 0b3f86135h
+dd 0e97c77d3h
+dd 0cef21bfeh
+dd 0a7b285bfh
+dd 0f0521a7bh
+dd 0f9932b53h
+dd 0785de527h
+dd 0ed48277eh
+dd 0a7bf0ae7h
+dd 02ec0089bh
+dd 0ddc462ech
+dd 02bb43e37h
+dd 08a39eb9ah
+dd 018538ad9h
+dd 00a20eae0h
+dd 09ef5af34h
+dd 04709255ch
+dd 0c2e03e7fh
+dd 0fb287a37h
+dd 0358162f8h
+dd 0c0bc868bh
+dd 01ce5bd9ch
+dd 039d53393h
+dd 00ff9c9e2h
+dd 026cbaffeh
+dd 03ee3c11bh
+dd 05134fa3ch
+dd 00c40eaddh
+dd 00e34cde0h
+dd 04dd3311fh
+dd 015786573h
+dd 0faadf31dh
+dd 03ee0a55eh
+dd 0e9f1400eh
+dd 035468443h
+dd 08c5876f4h
+dd 0f725effdh
+dd 0e4ec8fbeh
+dd 097bbe7bch
+dd 0769cf847h
+dd 092301166h
+dd 09cd8991dh
+dd 04a7fb590h
+dd 0faaaab06h
+dd 0bda413d6h
+dd 05e368c83h
+dd 018203da7h
+dd 0a0f68b0ch
+dd 0136c3e0ch
+dd 02a815df8h
+dd 0b6ff37abh
+dd 097635602h
+dd 000c4b9e2h
+dd 07deac8eah
+dd 045ec542eh
+dd 0d653f093h
+dd 03279447dh
+dd 04c4e2a04h
+dd 047e9d25bh
+dd 0f8b66d4ch
+dd 01b7bf0b7h
+dd 06a3ef5c3h
+dd 0c086cbe6h
+dd 01a6658fdh
+dd 0bfb6c075h
+dd 0dd91bfadh
+dd 02551a7a7h
+dd 017e83004h
+dd 0250d7205h
+dd 0f586c826h
+dd 0d947736ah
+dd 01cb0623ah
+dd 0cde99f96h
+dd 02886d79ch
+dd 054fbcba6h
+dd 046fa0dd3h
+dd 0e76ca7b7h
+dd 0aaeba884h
+dd 009685a3ah
+dd 0fd26b3a0h
+dd 00f68767ah
+dd 09f74dbe2h
+dd 0a54e81ebh
+dd 01ba76708h
+dd 0c7d8596ah
+dd 0d2174b5ch
+dd 017b428a4h
+dd 0435a72b7h
+dd 08655098ch
+dd 01ed89d71h
+dd 02994e87fh
+dd 0cb1eb726h
+dd 0ceb874b8h
+dd 031d5e8d3h
+dd 0e90b4378h
+dd 072a8bfeeh
+dd 0eefc5295h
+dd 060da75afh
+dd 0d9ed1de4h
+dd 048b178d8h
+dd 0930ea010h
+dd 0c1b98652h
+dd 030c2c43dh
+dd 058cb5b45h
+dd 05c6794cch
+dd 0b0078e71h
+dd 0a2265c0dh
+dd 0810ad90fh
+dd 0c9622275h
+dd 057ee672ch
+dd 06f5e5806h
+dd 05bb4b734h
+dd 06748ea3ch
+dd 0bb835de7h
+dd 03cf0da27h
+dd 0ad30d104h
+dd 05eb60a42h
+dd 028e722d3h
+dd 0579a064eh
+dd 0addfc62ah
+dd 01083916ch
+dd 09ce6d6e7h
+dd 06fdfd6efh
+dd 06a032d9dh
+dd 0c16d115eh
+dd 01588bc75h
+dd 05e29d78fh
+dd 0c003835fh
+dd 0d6a5f73bh
+dd 072b6f3f4h
+dd 0f2e90c27h
+dd 004aa69d2h
+dd 0351aacd8h
+dd 0b36a486fh
+dd 092e82e05h
+dd 026497d7eh
+dd 025c4e45eh
+dd 061f072ffh
+dd 0d1fa5dfbh
+dd 03cbb4f60h
+dd 080327e4bh
+dd 0a720ebdch
+dd 0a7b5c165h
+dd 0340f8a3bh
+dd 07389661bh
+dd 0756664fch
+dd 0d7742439h
+dd 089f508aeh
+dd 07edcf40ah
+dd 090ed37ddh
+dd 05ad46ecfh
+dd 0a659f537h
+dd 0f5bfd1a3h
+dd 0e8577d04h
+dd 02f1cfb53h
+dd 08ed70274h
+dd 0268b31b5h
+dd 0d30fa371h
+dd 0ffed0116h
+dd 019c60339h
+dd 037b895b7h
+dd 06957696ch
+dd 07ef4407ch
+dd 0a1205105h
+dd 07db5e6a0h
+dd 02cde5f5fh
+dd 0cd4f6d0ch
+dd 04cd7b9f1h
+dd 0c3b8345fh
+dd 0a9be7bcfh
+dd 081011d08h
+dd 0dd016ba3h
+dd 06c9368ddh
+dd 0cfd5ab72h
+dd 0e5f666e9h
+dd 0e3df2f05h
+dd 08c02ff2dh
+dd 06b86c799h
+dd 07cfbdb1fh
+dd 033990754h
+dd 0c35e79e4h
+dd 0a77ee6b9h
+dd 07d9765cch
+dd 094fe2f03h
+dd 0232d0604h
+dd 03cea3ea3h
+dd 0932c37b5h
+dd 0a9d4e7ech
+dd 0792a0be0h
+dd 0618394d6h
+dd 0d5b4ded1h
+dd 00abf7646h
+dd 01d398dbeh
+dd 07e2a795eh
+dd 05e0164dfh
+dd 0c9c5c786h
+dd 0b2abbdadh
+dd 0165392b2h
+dd 09276bd29h
+dd 037425131h
+dd 0cb11981eh
+dd 03c47dd1dh
+dd 03c1c10aeh
+dd 0a43e4a8bh
+dd 084631610h
+dd 03a039aadh
+dd 04e38b7f0h
+dd 03b517394h
+dd 0e717f4c0h
+dd 0ca8c7170h
+dd 0c5b8de9eh
+dd 05faa4a56h
+dd 0ca2d998ch
+dd 049c17fc9h
+dd 0eb2b58a7h
+dd 023983b58h
+dd 0429da86fh
+dd 038f90700h
+dd 06596346ah
+dd 04dc51b48h
+dd 0b9934463h
+dd 0261e69b7h
+dd 02fd56670h
+dd 0b2bd4018h
+dd 0f607501bh
+dd 0c76ed384h
+dd 0cf9c06e1h
+dd 021a9c58bh
+dd 0fbf6d0d7h
+dd 05f06cec0h
+dd 01212a9b1h
+dd 0d989431dh
+dd 0d2879312h
+dd 0bdcb0b7bh
+dd 011082c01h
+dd 078fdde72h
+dd 0de3bda9fh
+dd 01a8d2138h
+dd 0b2e106c6h
+dd 01d167c17h
+dd 0d872a27ch
+dd 0a5d9a337h
+dd 02ce267beh
+dd 00143e409h
+dd 0d79ab6c8h
+dd 00ed845e9h
+dd 07f3acf40h
+dd 0557ff179h
+dd 04b5575d6h
+dd 05ade4081h
+dd 0249b06f4h
+dd 083dc646ch
+dd 06d49f5b9h
+dd 0f7c7ca26h
+dd 0046a1c20h
+dd 0585da72ch
+dd 00d2b0c22h
+dd 0f8cebbc0h
+dd 0367b5f7ch
+dd 007ab80deh
+dd 0a6d2d0dbh
+dd 0e34d2298h
+dd 058bbb230h
+dd 06bf87203h
+dd 0a76ad40ah
+dd 0af469e0ah
+dd 0b0a50976h
+dd 09a52d2fch
+dd 035a3aee6h
+dd 0a33304bch
+dd 014ee3dc9h
+dd 0842cfc4fh
+dd 0b199cb31h
+dd 0000f0c76h
+dd 005c7557dh
+dd 0a051ac51h
+dd 02a135781h
+dd 07ee1aef7h
+dd 0391d632ch
+dd 0138e1b8eh
+dd 0dbf2735eh
+dd 003b0f709h
+dd 0fefccf5ch
+dd 0c41f8806h
+dd 032351019h
+dd 064a3c58ch
+dd 077c52d37h
+dd 0905bf17bh
+dd 0a1ac41efh
+dd 09bdc90f3h
+dd 0d400417ch
+dd 07d5cadd6h
+dd 03ec6a7d8h
+dd 04497400eh
+dd 0da3b4813h
+dd 05472b894h
+dd 04b65191bh
+dd 0ad072d74h
+dd 07012d549h
+dd 09d655197h
+dd 0c5a61120h
+dd 0956b5728h
+dd 0bc2dc99fh
+dd 07b4d084ch
+dd 06b22d9d5h
+dd 01eee1191h
+dd 085f55b96h
+dd 07847b4bah
+dd 04be69d98h
+dd 080c51c6ch
+dd 0418ff6d3h
+dd 0d2098512h
+dd 0c0a1aec8h
+dd 00133f9adh
+dd 0883864a9h
+dd 087612a3dh
+dd 0eee42c02h
+dd 0263ecd8fh
+dd 05dae008eh
+dd 0c3f84bf4h
+dd 0d66e45d1h
+dd 042168fc2h
+dd 09a2fb09ah
+dd 05d1ec9e1h
+dd 05c6e32d0h
+dd 0e2fb796eh
+dd 0f26070d9h
+dd 0215a1dbdh
+dd 0763dae66h
+dd 091b84cdah
+dd 0e3a485d1h
+dd 03ea18fd0h
+dd 0b12d19ech
+dd 0c0521014h
+dd 02f8429deh
+dd 0476bd68fh
+dd 0b8556eddh
+dd 033fd9a94h
+dd 02a6c6454h
+dd 0950d79b3h
+dd 00811d272h
+dd 0784936a8h
+dd 05f299689h
+dd 04f59ec77h
+dd 0b2d11a10h
+dd 0ff8e7859h
+dd 0998b909bh
+dd 00ce76c9ch
+dd 0e21e4ec3h
+dd 054e8df4fh
+dd 0849a361dh
+dd 0b68a7a51h
+dd 01fc4ad43h
+dd 0e2937cffh
+dd 03ce046f0h
+dd 0ecc8bba2h
+dd 00225b13ah
+dd 036c85c07h
+dd 04e1a47f0h
+dd 0399dbad6h
+dd 0fa9b4c7ch
+dd 0caa3a1d4h
+dd 0a3237597h
+dd 0b91d1142h
+dd 0101e7fe0h
+dd 030526fffh
+dd 07aa1dab4h
+dd 0a97b50c5h
+dd 0aaa9c590h
+dd 01bc1654ah
+dd 0a59e018eh
+dd 00198b62dh
+dd 07a70f1d1h
+dd 05d9b8111h
+dd 08114f02ah
+dd 0c45d2f61h
+dd 09ea36566h
+dd 0b614809fh
+dd 0d6194939h
+dd 02267559ch
+dd 072a82acdh
+dd 0cffc2ff0h
+dd 0b8318d80h
+dd 03f5994d1h
+dd 03a06b313h
+dd 09391d5cfh
+dd 026fe2a0dh
+dd 091a7dc59h
+dd 091ea3135h
+dd 0152ee665h
+dd 0094a128eh
+dd 0432cc7c1h
+dd 084118cebh
+dd 0dc0347a7h
+dd 0e2fe94b0h
+dd 08c2fb456h
+dd 044723420h
+dd 0dbe93d78h
+dd 0703b13ach
+dd 0a4154aeah
+dd 0ec27b0f1h
+dd 02a8b5780h
+dd 0fc0f84fdh
+dd 0bf0529dbh
+dd 0035a417dh
+dd 0011cb7dbh
+dd 04e06dce9h
+dd 095b1bfb8h
+dd 02841e180h
+dd 00029f6ddh
+dd 016e00f32h
+dd 052855421h
+dd 07049592ch
+dd 0f763c4b2h
+dd 0e58dcc59h
+dd 098992688h
+dd 01a55eee1h
+dd 0f3205e54h
+dd 0da5a6d33h
+dd 0a8b783f9h
+dd 0f9bf18a7h
+dd 07c6a2af2h
+dd 08078353eh
+dd 0d343d765h
+dd 0519bc9d8h
+dd 0ab34d731h
+dd 0acb01165h
+dd 019ef18a5h
+dd 0fb49868dh
+dd 014e7dc22h
+dd 028e9ca6bh
+dd 030aafd91h
+dd 0c5734d1fh
+dd 06d4dc7cch
+dd 09e5495c7h
+dd 0c689dbd8h
+dd 01e079115h
+dd 047df5d42h
+dd 0cd36b8e6h
+dd 0c25edaa0h
+dd 02756aeb9h
+dd 0eb3ef072h
+dd 04e3e6acah
+dd 0126cde17h
+dd 04a0573f9h
+dd 0a8dce6e6h
+dd 0eee9103bh
+dd 09b9b0b84h
+dd 0b4b2d457h
+dd 0ef3215a5h
+dd 0c11ec1eeh
+dd 016a32d1bh
+dd 03d874990h
+dd 09af1e344h
+dd 0102b5baeh
+dd 0e45debb3h
+dd 01fd16307h
+dd 0fa046159h
+dd 079781333h
+dd 06784473ch
+dd 04d473bcdh
+dd 09ec662e4h
+dd 04a3b31beh
+dd 00b1d27d5h
+dd 010372c41h
+dd 098e0ed99h
+dd 0cd022453h
+dd 0615ab292h
+dd 0fca9725ch
+dd 0c0e45fb2h
+dd 0bcb00d51h
+dd 06ddc84a0h
+dd 024a387cch
+dd 0954af727h
+dd 006087b0dh
+dd 032dcfa76h
+dd 041018fd8h
+dd 0361a6bfbh
+dd 0f74939bch
+dd 0642944d3h
+dd 0850655dah
+dd 08c28d07dh
+dd 062a91d84h
+dd 0953852d8h
+dd 046599bc4h
+dd 08006041eh
+dd 0de4575d0h
+dd 08d81bac2h
+dd 0dc3d79e0h
+dd 0a9f60b16h
+dd 066640828h
+dd 0012058fbh
+dd 026312803h
+dd 0f3355e0bh
+dd 0f398fa63h
+dd 091daf097h
+dd 080949779h
+dd 0e6028f2bh
+dd 0ff0f98f4h
+dd 095609043h
+dd 0b231c446h
+dd 0e73e19cch
+dd 0ccbfa2a5h
+dd 0d550d746h
+dd 03bf47d21h
+dd 047fad385h
+dd 0ad7a4a40h
+dd 02aec29d6h
+dd 02320fe5bh
+dd 05e491186h
+dd 0d54b70edh
+dd 0e254e1e6h
+dd 0af72a611h
+dd 0e2ffb568h
+dd 04f8513d8h
+dd 0139def6eh
+dd 029bf9d07h
+dd 08fa751a5h
+dd 072c96807h
+dd 0238be900h
+dd 0bc4ad16bh
+dd 002404554h
+dd 029d7b27dh
+dd 02ca42a79h
+dd 01c02134ah
+dd 018e45188h
+dd 0c50ec6cch
+dd 090c3ba9ah
+dd 05a1864b0h
+dd 001fa29d0h
+dd 08ec956f9h
+dd 0d8268ed9h
+dd 0d3ce88d4h
+dd 00b9885adh
+dd 0adb6bcfdh
+dd 0130df984h
+dd 0e8ca084ah
+dd 060744954h
+dd 00a7a6484h
+dd 0240830d0h
+dd 0e4a79286h
+dd 09211645bh
+dd 092e41364h
+dd 0d85f5b83h
+dd 0facdedc6h
+dd 0adc628d5h
+dd 0f823f3f6h
+dd 04901765ah
+dd 087a6d14ah
+dd 023fce15eh
+dd 0c9800d07h
+dd 0f95f88bbh
+dd 04ee02a85h
+dd 05a997cc6h
+dd 047d48bb4h
+dd 030745e50h
+dd 0c7ec4534h
+dd 0866d2adeh
+dd 0abf53485h
+dd 0f0af156eh
+dd 0a6dc0964h
+dd 032880643h
+dd 0d30f8973h
+dd 063805289h
+dd 055fc2b14h
+dd 0f0168268h
+dd 0e65185deh
+dd 0442da935h
+dd 0aaff2f65h
+dd 05186915dh
+dd 02f797a67h
+dd 0ba22ab09h
+dd 0aab13a26h
+dd 0dd6733a0h
+dd 0c7750178h
+dd 00f8ca378h
+dd 0a22d6bd6h
+dd 0402ac806h
+dd 05f336fc0h
+dd 0f128fa8bh
+dd 0b71175dah
+dd 08708b6a6h
+dd 08179a6dah
+dd 0c6c75e81h
+dd 0c1f78aach
+dd 06b673fb8h
+dd 02e27dd11h
+dd 0d2b899c4h
+dd 0f76ca1bfh
+dd 09e74592ah
+dd 0195d21d4h
+dd 04b5426d9h
+dd 068b5a28bh
+dd 0e1d0591ch
+dd 09c881032h
+dd 0988df45bh
+dd 06c66b9cfh
+dd 0d00edc07h
+dd 09d3fe573h
+dd 063b74960h
+dd 0a929b452h
+dd 0d2e0042eh
+dd 0e1fa2388h
+dd 01c3d7468h
+dd 0ed4c957bh
+dd 07e65dca0h
+dd 09e5d48bah
+dd 05cd37e40h
+dd 0388fb29fh
+dd 04fcf8fe5h
+dd 008491264h
+dd 013662aa6h
+dd 069f801ebh
+dd 05ee0e93eh
+dd 0334f79dbh
+dd 0037fe1f0h
+dd 0b44b959ah
+dd 0110a2a50h
+dd 0e1043abdh
+dd 06f67b63fh
+dd 0fd103708h
+dd 079e28c63h
+dd 0b3d43fddh
+dd 05eb87214h
+dd 02da42903h
+dd 01b46d455h
+dd 09df8f718h
+dd 0d46cb271h
+dd 082c87d2ah
+dd 082d20dd9h
+dd 068302077h
+dd 043f0d56fh
+dd 0f2a51792h
+dd 023aac0d3h
+dd 024020ee0h
+dd 082f2ef3fh
+dd 01c002c4ah
+dd 073a8f023h
+dd 02253110ah
+dd 0b2fbed29h
+dd 0fecb3c1ah
+dd 014eb6fdeh
+dd 0c548248ah
+dd 05e52b167h
+dd 06075977ch
+dd 0b23becf5h
+dd 05b67bcc8h
+dd 076dd2276h
+dd 0ee1858d7h
+dd 067cd5f68h
+dd 0be3b6c48h
+dd 0ec9c5a98h
+dd 0f6b2edbdh
+dd 04d9252f4h
+dd 015138b7dh
+dd 013d4880eh
+dd 00f45d385h
+dd 03b2acb87h
+dd 006fbc9ceh
+dd 09b4e68fdh
+dd 00293efcbh
+dd 0172297d2h
+dd 05b616a22h
+dd 075e5efc4h
+dd 0e787b9d4h
+dd 06c516b4ch
+dd 0843df74bh
+dd 0d763bbdbh
+dd 02cb46b11h
+dd 049a5a52fh
+dd 01124b46dh
+dd 0be8ea4ebh
+dd 0f5c5e20bh
+dd 095482181h
+dd 00c09e48fh
+dd 020cf25ebh
+dd 0f0886a68h
+dd 0ceb2c229h
+dd 0df4cf05bh
+dd 0a49c53d5h
+dd 00fe9249dh
+dd 07125ce74h
+dd 0afed9a6dh
+dd 02c319528h
+dd 02c7847bbh
+dd 0fcbbb768h
+dd 0aa9786beh
+dd 0819e3e98h
+dd 0e226f086h
+dd 095bd0715h
+dd 02171d117h
+dd 061fd38b7h
+dd 0a250c231h
+dd 0f127264fh
+dd 0c0ab99c8h
+dd 0fb9272b4h
+dd 09e366672h
+dd 0798d1b5eh
+dd 0a3cba6d3h
+dd 0c8b6119eh
+dd 0e55be52ah
+dd 02928dceah
+dd 059b62a00h
+dd 0c89f0719h
+dd 04a34186eh
+dd 0dac775fbh
+dd 054b2755eh
+dd 0e2177e7eh
+dd 046b9916fh
+dd 0614cc2edh
+dd 0bd49d255h
+dd 0046398e0h
+dd 0c89b81f1h
+dd 0d2684b2eh
+dd 08eaf3cd3h
+dd 0b7daa0a6h
+dd 0fe87c040h
+dd 00e3004f3h
+dd 0ede79905h
+dd 086a80f71h
+dd 063e99c6ch
+dd 09a9e264eh
+dd 0049bc99dh
+dd 06cbab5bah
+dd 0407fe593h
+dd 0f9494c15h
+dd 084d2d2eah
+dd 060d873f7h
+dd 0135e72e7h
+dd 01290a710h
+dd 0b658bfach
+dd 0c5aa25aeh
+dd 004fc7fa7h
+dd 0076f8b8eh
+dd 03dc03f3bh
+dd 0b1f64926h
+dd 0421ade48h
+dd 03f144735h
+dd 058e4bfdeh
+dd 02037c42bh
+dd 097694ba8h
+dd 0d3743692h
+dd 01a6b0229h
+dd 04e464a93h
+dd 0d807195dh
+dd 013c84f54h
+dd 07689e466h
+dd 082f3e6dfh
+dd 0964d75a8h
+dd 0083fe599h
+dd 06e111d3ch
+dd 05d001425h
+dd 059a33ee8h
+dd 04679c694h
+dd 07a48b703h
+dd 0cb5d538ch
+dd 08133f3b5h
+dd 0ad479886h
+dd 0a6d337e3h
+dd 0b992d5c0h
+dd 0dbbe2841h
+dd 008465f99h
+dd 05f1d264bh
+dd 0a2946bf1h
+dd 0bcfe5e00h
+dd 0ce922469h
+dd 03d22fcd0h
+dd 09e766d2fh
+dd 0b0377763h
+dd 07f29d8dch
+dd 0bd33f88ah
+dd 0d2bfcea7h
+dd 0e2e4683dh
+dd 07e39017dh
+dd 0cd11f5f4h
+dd 0950cb7a9h
+dd 0e42fd9deh
+dd 054c2b192h
+dd 05c969b92h
+dd 066d344dfh
+dd 0e46e4f99h
+dd 05dc423e0h
+dd 0cb5a05bdh
+dd 08319afd3h
+dd 0bacd5771h
+dd 0e37d16c0h
+dd 0dcc64bfeh
+dd 0e8e7a809h
+dd 04268dd5eh
+dd 08f7d4e55h
+dd 08ddc11b3h
+dd 076ec2ceeh
+dd 01eab94d9h
+dd 0b292737dh
+dd 032113ee2h
+dd 0f74cc611h
+dd 07bd7db38h
+dd 0ee8dc5cdh
+dd 07d5a81a7h
+dd 0dd68441ah
+dd 085f853b7h
+dd 01dab4b0ah
+dd 02f2db96fh
+dd 0c116ccc8h
+dd 0f127fc5eh
+dd 0abfa34b9h
+dd 09457c677h
+dd 022e772e8h
+dd 0950e2011h
+dd 0a03d1a0dh
+dd 0c5f0917ch
+dd 089401f9fh
+dd 01270000dh
+dd 00fdd22bfh
+dd 08645d7eeh
+dd 04a96ec0dh
+dd 0611b687eh
+dd 06d0a8149h
+dd 01990931bh
+dd 02050fe18h
+dd 048d2fe3ch
+dd 0a341828ah
+dd 0956eee95h
+dd 03d668606h
+dd 0666e61d0h
+dd 0d4fd3aceh
+dd 047b6b71bh
+dd 0173adc8ah
+dd 05e451ca9h
+dd 0178ba652h
+dd 0916402bah
+dd 0fe039987h
+dd 0aa816472h
+dd 0d6eda8a2h
+dd 0165db4feh
+dd 017e59f85h
+dd 09ac1c2d9h
+dd 08511ce34h
+dd 04700b405h
+dd 0d38e631ah
+dd 0e70e1e13h
+dd 08a8067e9h
+dd 074c18184h
+dd 0c57a8a79h
+dd 00e6497c2h
+dd 04cb201c6h
+dd 0b1c5d159h
+dd 021c79a16h
+dd 0327f4078h
+dd 044e1daafh
+dd 01e64fdeeh
+dd 03b35d98dh
+dd 0c16f4a22h
+dd 03ec30fdah
+dd 01d424c27h
+dd 0f2a38ac6h
+dd 07aa30d0dh
+dd 0032359e2h
+dd 0fdc0f0aah
+dd 090ce8a83h
+dd 041cfd0e6h
+dd 0421031b5h
+dd 0b0ea2756h
+dd 0fd7746feh
+dd 08dc17883h
+dd 0df838b42h
+dd 0bc6b12dch
+dd 0f789ca0fh
+dd 07673c479h
+dd 062c5c99ch
+dd 0d78eda90h
+dd 0c5aaef19h
+dd 08640adbah
+dd 0b9da0c14h
+dd 0a5e6a89ch
+dd 0c5fe5048h
+dd 061c44e85h
+dd 08668e34dh
+dd 05bbb6132h
+dd 0bd982511h
+dd 0e0f6c676h
+dd 0b58eeea6h
+dd 016e32c8dh
+dd 006e9004fh
+dd 0d277187ah
+dd 06beeec29h
+dd 0c8756a05h
+dd 0a39421ffh
+dd 02c75b522h
+dd 0b8ce855ah
+dd 084a2c3b7h
+dd 0be586249h
+dd 0bb90fe16h
+dd 04ede0d1ah
+dd 0401aaeeah
+dd 0b70fc62dh
+dd 03a75562bh
+dd 0d8dab127h
+dd 068b09a2dh
+dd 04c813332h
+dd 03737e966h
+dd 0f9c285aah
+dd 05ea135cah
+dd 094afb816h
+dd 004f42668h
+dd 02a73e591h
+dd 06dafee12h
+dd 0d4d3b6d2h
+dd 068275b07h
+dd 0785a4751h
+dd 047482d7fh
+dd 040dfdb1dh
+dd 0410471ddh
+dd 044437e75h
+dd 0b2e6e940h
+dd 0d7094dfah
+dd 0207b4d72h
+dd 095ef6b85h
+dd 0240c183fh
+dd 09fd5ebc6h
+dd 0b30f8629h
+dd 0c22d8f14h
+dd 0e569c278h
+dd 0fe5fe327h
+dd 0879b07dbh
+dd 07571610ch
+dd 01e96ef7eh
+dd 076ff585dh
+dd 003aac3b1h
+dd 0cb341796h
+dd 093386092h
+dd 0dc999988h
+dd 0b2097ad1h
+dd 02e9ac577h
+dd 0ec9396fbh
+dd 0f8a11003h
+dd 0acd05each
+dd 0b0f8faeah
+dd 019d29764h
+dd 0f4b79d67h
+dd 022d08b84h
+dd 012c85c82h
+dd 051ee55f5h
+dd 0c272ef94h
+dd 0c0c5ee90h
+dd 09b3cb015h
+dd 033a1e46bh
+dd 08d6ee719h
+dd 04c18c1d7h
+dd 059931af2h
+dd 085513832h
+dd 041fa7072h
+dd 0449c9d1dh
+dd 002561204h
+dd 0bb293e08h
+dd 025425c49h
+dd 08e03d675h
+dd 0562a79fah
+dd 081f5682eh
+dd 090e77656h
+dd 00e300974h
+dd 0f73334dfh
+dd 0694a3ef3h
+dd 0f85a34a8h
+dd 08548fb03h
+dd 03cfea906h
+dd 008342120h
+dd 03a602c4dh
+dd 0471e9bc2h
+dd 09093465eh
+dd 06f43a8f3h
+dd 003ffd76fh
+dd 0a11c35c1h
+dd 06ddc10d2h
+dd 00c9f06d4h
+dd 01559c74ch
+dd 0b3585166h
+dd 0d5daf652h
+dd 01eb1db64h
+dd 0a574ef63h
+dd 0b3097db4h
+dd 0671a3a31h
+dd 0f417f0b2h
+dd 0f22e7046h
+dd 0cf851233h
+dd 08b045bd2h
+dd 0920bd8feh
+dd 003d53c42h
+dd 083c03a7fh
+dd 0b1387c99h
+dd 05e0ed85eh
+dd 0cd817e3bh
+dd 08440d370h
+dd 063d92525h
+dd 03b5c054bh
+dd 05911bafbh
+dd 03ab6e998h
+dd 0f3972f1fh
+dd 0a1bb961bh
+dd 0acee00d4h
+dd 0737981f8h
+dd 005a07dc2h
+dd 08490fc7fh
+dd 0c2b41529h
+dd 0bbcf3c72h
+dd 07e6361f8h
+dd 056776886h
+dd 0d149b92ah
+dd 0fd9cf577h
+dd 0fe5293a9h
+dd 0d8a979adh
+dd 0c33818c2h
+dd 0ca141c22h
+dd 0df2c1ac9h
+dd 03d4246e5h
+dd 01ac5355fh
+dd 0a93e1475h
+dd 028ecd628h
+dd 09ed078ech
+dd 06dcc600bh
+dd 01e16c064h
+dd 07e83910fh
+dd 0e1a8fe6fh
+dd 02785ffa5h
+dd 0602b8dfeh
+dd 0cbfffcd8h
+dd 04dc3bea3h
+dd 0e08a5d07h
+dd 009ce73d8h
+dd 09f09e7e5h
+dd 02dcdf80ch
+dd 0973ff39ch
+dd 00dae272eh
+dd 0d50706e4h
+dd 040441310h
+dd 073f7da3eh
+dd 0592734d8h
+dd 0f6484d4ch
+dd 0936009eeh
+dd 0b3063a7ah
+dd 0c27d7d75h
+dd 054739f49h
+dd 00713de4fh
+dd 0e004aa6ah
+dd 0fb23ccc3h
+dd 0fbe48b01h
+dd 08fbfd637h
+dd 00c93b739h
+dd 072a486e4h
+dd 0ad748f41h
+dd 03a8015d9h
+dd 03594e4e4h
+dd 0a8635047h
+dd 0097e5c7bh
+dd 0f7263019h
+dd 0ff775da7h
+dd 0bbba1dd8h
+dd 083c7151bh
+dd 01f5dece5h
+dd 0b0e70008h
+dd 0fe0047e3h
+dd 0ee9091cfh
+dd 011333224h
+dd 0902b4000h
+dd 0a9726e40h
+dd 0bf5d0fa0h
+dd 0ed36fa10h
+dd 0984cbda0h
+dd 082b40828h
+dd 0ad2180e9h
+dd 0d03b8827h
+dd 0e7b473fah
+dd 0821fd881h
+dd 09c976f63h
+dd 04fcdca93h
+dd 0a457b9edh
+dd 0ce34624ch
+dd 0c8204d5ch
+dd 0f85b9389h
+dd 040e9183dh
+dd 0d57e9922h
+dd 0e1e8697bh
+dd 06627887ah
+dd 00806dad9h
+dd 018ed93c8h
+dd 0dcfee643h
+dd 047b02384h
+dd 094e7f8b7h
+dd 00fde9d63h
+dd 088066f60h
+dd 065e88d6ch
+dd 03b805b82h
+dd 04e76531ah
+dd 0622bfb4ah
+dd 091a5f4dbh
+dd 04e4d2969h
+dd 0b9eb3757h
+dd 0241551dah
+dd 0827881d0h
+dd 017c2b15ch
+dd 0060fc533h
+dd 00b002684h
+dd 0e0e630b7h
+dd 092096685h
+dd 03701272ch
+dd 01c4a926dh
+dd 0c5a22990h
+dd 09667c76bh
+dd 091f20e6ch
+dd 08bc95c37h
+dd 05bed93f6h
+dd 09d8aad90h
+dd 0e8e2c7bch
+dd 0adee04deh
+dd 0f2f3f8a9h
+dd 039efb6b9h
+dd 0b22b45f4h
+dd 099d82245h
+dd 0d9f7b9c0h
+dd 012e833c3h
+dd 016fcd095h
+dd 076c09379h
+dd 06ac9d2e2h
+dd 04af0b69dh
+dd 033d13e72h
+dd 04519eaf8h
+dd 016412daah
+dd 00a439337h
+dd 0b2b3c9beh
+dd 02a12e91ah
+dd 09dd6d4b6h
+dd 02022f129h
+dd 09e417ab4h
+dd 0e01185f6h
+dd 02dd7914ch
+dd 01fb7d5fah
+dd 047646d5fh
+dd 066225384h
+dd 07695f703h
+dd 0f87ca237h
+dd 0476048bdh
+dd 003a653e8h
+dd 02af6e7d6h
+dd 04807e278h
+dd 08e9c0d40h
+dd 07b6ab9abh
+dd 079f8a43bh
+dd 0976db53dh
+dd 05ac29fc2h
+dd 07416ae17h
+dd 08745b4c3h
+dd 0d014b978h
+dd 04891b3d6h
+dd 0582d08bbh
+dd 069a76cd1h
+dd 0ea3046d6h
+dd 07226866eh
+dd 02a5077a2h
+dd 0f8bb4a31h
+dd 0a243e69bh
+dd 03744d2afh
+dd 0efd372edh
+dd 099b5eebch
+dd 0b9384503h
+dd 00bbb57e0h
+dd 079bab5eah
+dd 0f205f6f7h
+dd 07bed9b55h
+dd 0b86ceeb1h
+dd 075993fd5h
+dd 06c41dcc2h
+dd 0512380a2h
+dd 0fa0ea5b8h
+dd 077626f99h
+dd 03aa82397h
+dd 0fcbcde1eh
+dd 05b0eb348h
+dd 008e88d1ah
+dd 08e2405a9h
+dd 0a325e544h
+dd 01161f669h
+dd 06d87e854h
+dd 0db6db24ch
+dd 0809dcc41h
+dd 021bffa21h
+dd 0fd5fd861h
+dd 053e6af6bh
+dd 0eef65732h
+dd 038997ff2h
+dd 04f94c0f7h
+dd 0cdee3ecbh
+dd 0b1f5e16bh
+dd 012b51f67h
+dd 04fa427e4h
+dd 0b32713d1h
+dd 07cd1411eh
+dd 0e7534b9bh
+dd 09c05d8b1h
+dd 020be5d8dh
+dd 0d34bde95h
+dd 05aba80d5h
+dd 0cfbe2633h
+dd 08b2e9a04h
+dd 0110962b9h
+dd 047fa2933h
+dd 0b6ecb4e1h
+dd 05f68a353h
+dd 0755d3a28h
+dd 0e2124618h
+dd 0bf0d5cd7h
+dd 041229eafh
+dd 09d6eb536h
+dd 0b4550624h
+dd 0cc01f55bh
+dd 09af885a2h
+dd 0af41f309h
+dd 0ff0b6e94h
+dd 0fc3f116eh
+dd 0e78bfec1h
+dd 099a6a5d0h
+dd 0324ef5e9h
+dd 0f882c96eh
+dd 08d06cb48h
+dd 066020bb6h
+dd 079af9124h
+dd 04ea600feh
+dd 03baed466h
+dd 0b5c8c9c4h
+dd 0fcc53b0eh
+dd 03adb76ceh
+dd 0ea40167eh
+dd 0008a474eh
+dd 08225b155h
+dd 0785d1e26h
+dd 050099a46h
+dd 02cd80d05h
+dd 0f4fc0f9ah
+dd 009a7ed7eh
+dd 076850c65h
+dd 0d129baa2h
+dd 0e2aa85f0h
+dd 0e18451d4h
+dd 0623306b2h
+dd 01c4e70adh
+dd 043aa41f9h
+dd 09934baeah
+dd 0917fbb70h
+dd 0d5d169e6h
+dd 0b0fb5b74h
+dd 0445114aeh
+dd 014b65e68h
+dd 0c4bdeff3h
+dd 0c00263d0h
+dd 0178fdf54h
+dd 01484a01bh
+dd 0640c963dh
+dd 04349e545h
+dd 0152a5681h
+dd 036b225a4h
+dd 0eea71457h
+dd 011deafeeh
+dd 07dfd8292h
+dd 099d152e9h
+dd 0e2fa55bah
+dd 098a6142fh
+dd 007c1f8ach
+dd 022559020h
+dd 0816ee002h
+dd 060055d83h
+dd 006c3f33ch
+dd 0431b6f9dh
+dd 048a72472h
+dd 0cab429cfh
+dd 016467687h
+dd 0aede0564h
+dd 09d1c6076h
+dd 035e9ed95h
+dd 0d0adb35dh
+dd 0808790cfh
+dd 0188dd8b3h
+dd 0f123fee9h
+dd 014fe7872h
+dd 0914f892eh
+dd 077ba0900h
+dd 046b97be0h
+dd 07fd89e82h
+dd 0f0b10442h
+dd 03ba23c13h
+dd 0e14e2191h
+dd 0a4dd6c73h
+dd 06b46e1f9h
+dd 0b0c3ea68h
+dd 02feefe0bh
+dd 0e681f89eh
+dd 030007444h
+dd 08c27a5b6h
+dd 0f00e6a7dh
+dd 09b8cea9dh
+dd 0ac14621fh
+dd 04d0870dfh
+dd 040f4453ah
+dd 0f511fb76h
+dd 0b5320b9eh
+dd 0f79d06b4h
+dd 01487b092h
+dd 01c00cd1ch
+dd 0cda44a56h
+dd 0eaf5787dh
+dd 0c808ee71h
+dd 02c30f14ch
+dd 07f1d952eh
+dd 03b527796h
+dd 03992382bh
+dd 0b695fd04h
+dd 081a61fbch
+dd 01cd82ad9h
+dd 0d2ce5e8bh
+dd 0b7812f82h
+dd 043406a4eh
+dd 099f1aa19h
+dd 0ec23d986h
+dd 06c49e321h
+dd 09d889f20h
+dd 0d3a917e5h
+dd 03c41d39ch
+dd 06f379f3ch
+dd 0d8a28b11h
+dd 04ff0d82ch
+dd 0bf8170f5h
+dd 03dd6904ch
+dd 0031ad656h
+dd 0918acdb2h
+dd 035e41823h
+dd 0ff0274bdh
+dd 0b550e36fh
+dd 06876bd1bh
+dd 00dbfa858h
+dd 0fe5bd51fh
+dd 058a612fdh
+dd 0c9f3204bh
+dd 0807e636eh
+dd 04573979bh
+dd 04def38ceh
+dd 067dec29ch
+dd 003088827h
+dd 0186f96adh
+dd 0d0507ac8h
+dd 0bb375d2dh
+dd 0a375265dh
+dd 08dcb9338h
+dd 05e8ca716h
+dd 0b2b58472h
+dd 05415a790h
+dd 067a78567h
+dd 06fd8f973h
+dd 0b03b6a14h
+dd 0409c6ecch
+dd 0b6f008b9h
+dd 010e1a48fh
+dd 0aa57c494h
+dd 001cd2150h
+dd 05568530eh
+dd 07d457f3fh
+dd 014c14692h
+dd 0f6e8e553h
+dd 02a3e6e17h
+dd 065fbd833h
+dd 01e01071bh
+dd 0e254c8aah
+dd 0d9f94329h
+dd 03ea61c6eh
+dd 09d85c6a4h
+dd 09a9a8bf4h
+dd 0c9fd274ch
+dd 0616bf11bh
+dd 093090b69h
+dd 0e1fc8a81h
+dd 0a6d4677eh
+dd 0ec3be581h
+dd 01559d4f9h
+dd 0a288da23h
+dd 0b50ac29bh
+dd 0063eda75h
+dd 0589eb577h
+dd 0f0ecc0fah
+dd 0454749cah
+dd 00e026930h
+dd 0aa4157e9h
+dd 043bffaf0h
+dd 05cd69caah
+dd 055e005c3h
+dd 0861ba9e2h
+dd 0ffea6c3ah
+dd 0879a5dd7h
+dd 0348eb53bh
+dd 00f37d180h
+dd 0b23e2bb0h
+dd 0362afecdh
+dd 0628e23edh
+dd 01450e335h
+dd 0dc489e63h
+dd 0e8d1569eh
+dd 063e16197h
+dd 01e22fc28h
+dd 005b4d10ah
+dd 03c12c3bfh
+dd 04006447dh
+dd 04c1ad85dh
+dd 09056176dh
+dd 0d90aa692h
+dd 09a2f8005h
+dd 04ab45ab6h
+dd 0dd766073h
+dd 06f50566eh
+dd 0370a3ec9h
+dd 01add3371h
+dd 09b8216deh
+dd 037b8995ah
+dd 06bf5733ch
+dd 0797931b0h
+dd 0e6ddc656h
+dd 050947433h
+dd 0e25d35dah
+dd 0d6154118h
+dd 07ed030f1h
+dd 02248096bh
+dd 02ab4d6a8h
+dd 02334c91ch
+dd 0dc209b64h
+dd 04673addah
+dd 0dee76ca7h
+dd 07c2be19dh
+dd 0be5bac3ah
+dd 07d3ebbe7h
+dd 0204553a9h
+dd 0dd693ca0h
+dd 0c834f894h
+dd 0ea579e4ch
+dd 0fe3c212fh
+dd 0de2f798ch
+dd 0fd715e23h
+dd 09a6cfa07h
+dd 08ba18c37h
+dd 0abdd443ah
+dd 0659d3727h
+dd 0b4e74433h
+dd 0983ce90ah
+dd 0253bb2f6h
+dd 0f3d65367h
+dd 00c84a731h
+dd 0a42e1fabh
+dd 013a5b7eeh
+dd 0719d0944h
+dd 0b1883296h
+dd 01225e585h
+dd 05b11c892h
+dd 06c73dd08h
+dd 0f2eba198h
+dd 037df4cb8h
+dd 03a18f0f3h
+dd 04c0b5122h
+dd 06a1d2defh
+dd 02efba459h
+dd 0d1e6042ch
+dd 05ea1d3adh
+dd 027f40823h
+dd 06a563795h
+dd 02851cfc5h
+dd 0b85185dch
+dd 09ad2af83h
+dd 0995f224fh
+dd 026a3de02h
+dd 0db08273ch
+dd 0841cbadah
+dd 069bc0abfh
+dd 055231753h
+dd 0a472b4f9h
+dd 01b830a29h
+dd 0b46edf7ah
+dd 04b193250h
+dd 0f5f5d731h
+dd 0c1d469afh
+dd 057a85d3eh
+dd 053b4e8f3h
+dd 0bae20367h
+dd 063daf20ah
+dd 062e5a23eh
+dd 039664e57h
+dd 0eaabcc83h
+dd 0f1bc093eh
+dd 072507c46h
+dd 01853031dh
+dd 08015028fh
+dd 053b74dbdh
+dd 0fc499504h
+dd 0e7990417h
+dd 0919e88d4h
+dd 0623030eah
+dd 0413fb644h
+dd 0999f0462h
+dd 039d2173ch
+dd 076223f4eh
+dd 0bbbdf039h
+dd 071b91ed6h
+dd 01fc8f6bch
+dd 04c0f9a2fh
+dd 0b1b537a4h
+dd 0027c827eh
+dd 00bbbc311h
+dd 0ab5121c0h
+dd 05119a99ah
+dd 052ee96a3h
+dd 03b14c8b5h
+dd 031f28a15h
+dd 02ffcd3c7h
+dd 06869999ah
+dd 083aadda3h
+dd 0254c539fh
+dd 026af40edh
+dd 09067313eh
+dd 06b4a4149h
+dd 0215ccb89h
+dd 0c9de3b6eh
+dd 07a281350h
+dd 03c58221fh
+dd 0a4882e03h
+dd 055e01c78h
+dd 0774e104eh
+dd 00591f2b8h
+dd 0641f824eh
+dd 09ce0e75ch
+dd 0ee0232b1h
+dd 03efd1513h
+dd 0cc1cdaafh
+dd 071450f54h
+dd 0786b01b9h
+dd 08f3d6058h
+dd 06b0efc76h
+dd 0d9e601c9h
+dd 0258a04adh
+dd 0ced2a051h
+dd 032a18f59h
+dd 0e8dc2cf5h
+dd 0f3db0c6ah
+dd 095e83805h
+dd 05f9c57aah
+dd 09036cc5eh
+dd 0e0b63933h
+dd 0c4360688h
+dd 0c819aba7h
+dd 0c9d1a439h
+dd 0e3190dcch
+dd 08bafb6fah
+dd 0730d6a40h
+dd 082a5881ah
+dd 0782c941bh
+dd 063d3c49ch
+dd 0e2249b78h
+dd 092a5b60eh
+dd 0fa810221h
+dd 04aa2688fh
+dd 07e1cce30h
+dd 0be6bf9cbh
+dd 08e884865h
+dd 095be8ff4h
+dd 034cb699fh
+dd 0b8341168h
+dd 0054e2686h
+dd 0c6f2e03dh
+dd 0a4d1f5a7h
+dd 09a785799h
+dd 0b9704190h
+dd 046980f8ah
+dd 0cf9f1682h
+dd 03937b97bh
+dd 023b7bf8dh
+dd 0a78a0dcah
+dd 0ace357c6h
+dd 092bbb653h
+dd 0b2f19e77h
+dd 0ed8ab1ddh
+dd 080c3b5aah
+dd 07fcec739h
+dd 0a9f8ffc3h
+dd 068900aa5h
+dd 00d0ddb71h
+dd 066bcf124h
+dd 05f2dfa2bh
+dd 06e2ffdb8h
+dd 0af00ac6ch
+dd 03de6866eh
+dd 04bab5ae2h
+dd 01bf65c9ch
+dd 0b4559407h
+dd 06e0796b3h
+dd 02bfaec7dh
+dd 01551a2c2h
+dd 06fdb27a1h
+dd 06d6ab6d3h
+dd 0b40c99dch
+dd 05e51424ch
+dd 0787d2d9ch
+dd 00e59fb00h
+dd 023644ee8h
+dd 034132e93h
+dd 03a3d3901h
+dd 063c7c89ah
+dd 0ccc7dc4fh
+dd 0f6ca8720h
+dd 0be68c489h
+dd 0e3d6ce1ah
+dd 0b09ebb61h
+dd 0c006d61eh
+dd 0cf7a99d9h
+dd 02d6d3875h
+dd 0be2fc682h
+dd 02fcd9989h
+dd 0ad728707h
+dd 0be3c6e34h
+dd 092cedc95h
+dd 0a7e4f9aeh
+dd 0b9188f8ch
+dd 099fedf8fh
+dd 0e593fddbh
+dd 06d5c3e1ch
+dd 09af38575h
+dd 0e4e202b2h
+dd 0ce3eb3aeh
+dd 0910be1d1h
+dd 09081e103h
+dd 0ddc19b19h
+dd 033a3edbfh
+dd 0c0c32803h
+dd 07b294f28h
+dd 0e94718fbh
+dd 020e3fb02h
+dd 04686983ah
+dd 0b849f9f0h
+dd 07e720016h
+dd 0e586580ah
+dd 0f7e060f2h
+dd 097892fe2h
+dd 07d1622b1h
+dd 09becf1e0h
+dd 07ffc6c59h
+dd 00b6e2b7dh
+dd 04d80073eh
+dd 05c4d1a02h
+dd 0ddfc816ch
+dd 0f863cb08h
+dd 0d731ea76h
+dd 0b8a210efh
+dd 0f5d8e17ah
+dd 0f73f0b67h
+dd 0df87434eh
+dd 0a8dc6e4fh
+dd 02516abbeh
+dd 09712277eh
+dd 0498fcdefh
+dd 0996532cdh
+dd 000bcfb45h
+dd 04b29ee2ch
+dd 025c6ec51h
+dd 029b90cf5h
+dd 011067ca0h
+dd 0d9e9ed0ch
+dd 06d77b9e1h
+dd 06d290d12h
+dd 0276ecd77h
+dd 0765b2b42h
+dd 0e84fc85eh
+dd 07619033fh
+dd 0489e19c3h
+dd 09e97f8e1h
+dd 07388fb56h
+dd 0116067abh
+dd 064fc708ah
+dd 009e77c8ah
+dd 077bf3176h
+dd 0ae9dfe40h
+dd 033c2dee9h
+dd 050ec6ca2h
+dd 03cc606e8h
+dd 083ff7f3ah
+dd 067f79fc3h
+dd 01c39a365h
+dd 09a1a8c49h
+dd 03ba90a1ch
+dd 04142a07dh
+dd 0a43584fch
+dd 0808649aeh
+dd 0a5f5f2e5h
+dd 0045082f5h
+dd 00fe48bech
+dd 0a3be3754h
+dd 0471554d0h
+dd 0be95c1d1h
+dd 0249087c4h
+dd 0f1c4129eh
+dd 0701611f7h
+dd 072c78a61h
+dd 0a51e97e5h
+dd 09dc815adh
+dd 064b9edd3h
+dd 0a2c327e7h
+dd 08bc75e30h
+dd 0667dd6b5h
+dd 0bc440831h
+dd 02b56331fh
+dd 0f90a61cbh
+dd 0cb772e8eh
+dd 06bb6fc8ah
+dd 0fe688a7ah
+dd 0bb1225adh
+dd 0453208f0h
+dd 0fca08fa6h
+dd 00beed912h
+dd 0e1d8f213h
+dd 0f195c393h
+dd 08830dd2ah
+dd 0d22d5292h
+dd 0a9a099d7h
+dd 0f433fbfeh
+dd 08568a642h
+dd 0528c168bh
+dd 0e5590a52h
+dd 00b008125h
+dd 06991e514h
+dd 05821dc52h
+dd 0a937f5abh
+dd 0095191d0h
+dd 04de7284ah
+dd 0be59c96dh
+dd 0248b723eh
+dd 08e485127h
+dd 0dbcf4371h
+dd 0e464a865h
+dd 0cf770545h
+dd 0bd7d3732h
+dd 0eb518593h
+dd 0c2d85873h
+dd 073e74679h
+dd 003a1a981h
+dd 065e11746h
+dd 05b539498h
+dd 0c4d6e72bh
+dd 0f49b6518h
+dd 060872c9bh
+dd 03d362109h
+dd 0431d484bh
+dd 07a3f956fh
+dd 083d5d9b7h
+dd 0a3e86402h
+dd 0767d8777h
+dd 0b3db41fch
+dd 0c945c62fh
+dd 0c80432dah
+dd 0ac43f57ch
+dd 0a6839eb9h
+dd 095babfbdh
+dd 0641d11cdh
+dd 0da5c0440h
+dd 0b2beff17h
+dd 0a43d508ch
+dd 054dc9b92h
+dd 0ab854bb9h
+dd 08c323130h
+dd 0bce9cd25h
+dd 0b17a3837h
+dd 025268b55h
+dd 0b53f71b1h
+dd 028e49c47h
+dd 0cc43e89dh
+dd 064179f1eh
+dd 0f904683ch
+dd 0a93ccaedh
+dd 049de7b51h
+dd 0d3abc3b2h
+dd 01af5abf9h
+dd 091cad926h
+dd 06e9ded52h
+dd 0237a3a08h
+dd 0107acc88h
+dd 0d844baa2h
+dd 048e1f640h
+dd 05be0dc02h
+dd 0912bf6c9h
+dd 0d3735877h
+dd 0a801197eh
+dd 0f801e6e4h
+dd 0c378ac3eh
+dd 03c38b596h
+dd 03d03733fh
+dd 05e617581h
+dd 0602f6345h
+dd 01253cea6h
+dd 0e01206c9h
+dd 002a681e4h
+dd 0edbdffc6h
+dd 067e23325h
+dd 054079abfh
+dd 0b55ddb5eh
+dd 0e637c2cch
+dd 013bbfdb1h
+dd 0aad47ec5h
+dd 099d9dc3eh
+dd 038a3eecbh
+dd 05e70c0d6h
+dd 0752f7dd7h
+dd 0edaac44dh
+dd 00cddc39ch
+dd 0170d218ah
+dd 0e20ceeefh
+dd 0196a885fh
+dd 0b2f25c35h
+dd 0507a2948h
+dd 05ceca381h
+dd 054f8704fh
+dd 06b45f498h
+dd 0963302d2h
+dd 03fee35dch
+dd 0e483bd08h
+dd 04d8bf74ah
+dd 08b8d7b95h
+dd 08d3b707dh
+dd 0d62ee27bh
+dd 0e302d454h
+dd 09f4e0f11h
+dd 0032616b1h
+dd 03a09cd1ch
+dd 0eb9cbac3h
+dd 0e2b74393h
+dd 0fab4f7f4h
+dd 01374db3dh
+dd 056f345f1h
+dd 0b43c98bdh
+dd 043b30a2dh
+dd 02c5038dbh
+dd 08dce67b3h
+dd 0a4f06870h
+dd 04c78343fh
+dd 0604e4f30h
+dd 06e85b6b2h
+dd 02d24c953h
+dd 0acfc4048h
+dd 0ab5a7a2eh
+dd 0aaa298e7h
+dd 0e841ba51h
+dd 0a7697972h
+dd 0273008eeh
+dd 0fc21a2e8h
+dd 012e6de72h
+dd 0d60976b2h
+dd 0e012fc92h
+dd 00ef0e08bh
+dd 0e23eef23h
+dd 02ed8e5ebh
+dd 01afb7ee2h
+dd 01e753cfbh
+dd 07dc96978h
+dd 057998849h
+dd 0f355f837h
+dd 0851d3867h
+dd 0461abdc9h
+dd 02351d7bah
+dd 0ec04c879h
+dd 0d0fea37bh
+dd 097025d28h
+dd 094b64252h
+dd 0cb42880fh
+dd 09a85622dh
+dd 074d82748h
+dd 0522eaac2h
+dd 0ebc4fcb7h
+dd 0ca666649h
+dd 0fed8394ch
+dd 0bae0f52eh
+dd 0a95f8340h
+dd 04719fbf5h
+dd 07c6834fdh
+dd 0f8a040fch
+dd 019a4e070h
+dd 0590c1146h
+dd 0ac8d5fb9h
+dd 00e540d91h
+dd 099791380h
+dd 0cc0fa871h
+dd 0b9ddfdabh
+dd 013c240a5h
+dd 051ca1f76h
+dd 0fd3f50bah
+dd 09ac30cd9h
+dd 07086eac8h
+dd 0a381ff5bh
+dd 0d5dee9dfh
+dd 0a4d1cbf3h
+dd 0acda2fd4h
+dd 07c239cf9h
+dd 08fcdac19h
+dd 0a1a0ec37h
+dd 040310089h
+dd 01895c661h
+dd 0911da135h
+dd 0c037a5a4h
+dd 09ed4f4d9h
+dd 0c509d855h
+dd 06c49d345h
+dd 0376080d5h
+dd 08dd9e968h
+dd 0e78d983dh
+dd 0ddda546ch
+dd 0b6b1027dh
+dd 003a5ad55h
+dd 0769df315h
+dd 0d314f15bh
+dd 0f4db9e39h
+dd 0fe87b4fch
+dd 072aa5eddh
+dd 0ce97bfbdh
+dd 0a6732e0ch
+dd 0d9b53b31h
+dd 0ab77b15fh
+dd 0a34ceef3h
+dd 072fdf92dh
+dd 0e9b1686eh
+dd 017e8d73bh
+dd 0c199210ah
+dd 0c51049e2h
+dd 04358177ch
+dd 031912cc9h
+dd 076c52fc9h
+dd 0cf710fd5h
+dd 03c1b553dh
+dd 0104c70bfh
+dd 031922dech
+dd 077e5eafdh
+dd 0c437e016h
+dd 0e94e2bd0h
+dd 06e0ee2a9h
+dd 0394815dch
+dd 06577e144h
+dd 01a6f86d9h
+dd 0c5f86c21h
+dd 053faef4ah
+dd 05d578cf1h
+dd 09064732dh
+dd 08ca94b3dh
+dd 054b6a5dah
+dd 0e6d25b23h
+dd 0773dffe8h
+dd 0f2e4dd47h
+dd 04c38849eh
+dd 00beee4f1h
+dd 064b48e6ch
+dd 0fd93999bh
+dd 0690f3854h
+dd 010346d17h
+dd 071a37ad3h
+dd 012b5af91h
+dd 0c2f1707dh
+dd 0cdef0a5ch
+dd 0a6d09327h
+dd 039d2db23h
+dd 0f73ac37fh
+dd 0865c0285h
+dd 0518356b0h
+dd 013d6e843h
+dd 0cd61d32dh
+dd 0179e4384h
+dd 0e83dd5a2h
+dd 0d2256b87h
+dd 0fd09a101h
+dd 0a541f563h
+dd 0bcfa9e86h
+dd 09aea838dh
+dd 01c17d085h
+dd 085dac259h
+dd 07370a9b5h
+dd 0213dc763h
+dd 0172b334ch
+dd 058f68635h
+dd 011657708h
+dd 0e1c007bfh
+dd 0c8d37067h
+dd 0c805597fh
+dd 06fd4f0e4h
+dd 03fcdf3dch
+dd 064500104h
+dd 094dcb4c0h
+dd 07e0d2d25h
+dd 02ab20bedh
+dd 0f6221a6dh
+dd 0509ad1d1h
+dd 01665cb75h
+dd 09da9d62eh
+dd 0319590edh
+dd 0a2a115deh
+dd 09b6b0882h
+dd 05b5de5b6h
+dd 0000628abh
+dd 02baaed56h
+dd 05f6a4a46h
+dd 03be3549dh
+dd 04a2dfeb4h
+dd 0f204f071h
+dd 05d211cbch
+dd 060a8023ah
+dd 097345967h
+dd 0e5ac4d6bh
+dd 0f3dafdc7h
+dd 005ceb16eh
+dd 08f914c60h
+dd 0d7ae7f05h
+dd 00afd6926h
+dd 0e15b42c4h
+dd 01b552418h
+dd 0b169b60dh
+dd 0603a7ff8h
+dd 0f0f643ach
+dd 0b1e41c34h
+dd 0be83fc6bh
+dd 0bf5f7dc5h
+dd 006ae73beh
+dd 05a1024e7h
+dd 0b2dde926h
+dd 03ade51c2h
+dd 0b6b39dbdh
+dd 0217c3f6ch
+dd 0a960bb7ch
+dd 02b1d4713h
+dd 0712a703ah
+dd 06c37a437h
+dd 0d0848e64h
+dd 065042e0ch
+dd 09fc81578h
+dd 03572fc0eh
+dd 0a3619efch
+dd 019d51f49h
+dd 09bce7bb7h
+dd 05df8daa5h
+dd 04ac76ce6h
+dd 0f59ee6fdh
+dd 0bcbc7983h
+dd 0a2429807h
+dd 0c3df1b23h
+dd 0de09476ah
+dd 02e3b2b44h
+dd 0c608df2fh
+dd 0fcd4d73ah
+dd 0c67676ebh
+dd 08954b8ddh
+dd 013589c58h
+dd 0ab1f8941h
+dd 0ff645521h
+dd 03a977440h
+dd 04fe60f9fh
+dd 05ad43098h
+dd 003dabe53h
+dd 012605146h
+dd 075126ff5h
+dd 083910603h
+dd 05fb285b1h
+dd 0ffc40c58h
+dd 0324b56e5h
+dd 06caf8c5fh
+dd 0fa9ecef3h
+dd 06626e867h
+dd 08f78d320h
+dd 066174e95h
+dd 064abdb97h
+dd 08978bdb7h
+dd 04210c873h
+dd 05d2abcc2h
+dd 0ffbace74h
+dd 09e300db8h
+dd 0898e49d9h
+dd 0a1a03cd0h
+dd 0c834a6c7h
+dd 0f57612d9h
+dd 04808fb67h
+dd 07e6d907ah
+dd 0b52f1970h
+dd 0ad86a018h
+dd 0701227c2h
+dd 022867a22h
+dd 0108c46b7h
+dd 0100d9123h
+dd 06f02521dh
+dd 07c212290h
+dd 0fb450ac6h
+dd 0c030f9b5h
+dd 0d71eba79h
+dd 0c7f93e69h
+dd 044fceaf7h
+dd 0f7dcf8b7h
+dd 082e31ad9h
+dd 0d769b04fh
+dd 07a5cb242h
+dd 035de1569h
+dd 068e0c83fh
+dd 09e3f6016h
+dd 0e3a452b9h
+dd 089ffb17eh
+dd 0d1101each
+dd 03b7f481fh
+dd 0770765f0h
+dd 00908fe69h
+dd 0ffa6d1beh
+dd 01855b692h
+dd 0511d7d36h
+dd 012611c66h
+dd 0f2604672h
+dd 0a7acf800h
+dd 03869bad2h
+dd 0c9fcd350h
+dd 04f74a119h
+dd 05169642dh
+dd 046cd888bh
+dd 07e7cd11eh
+dd 05197de67h
+dd 0ce779527h
+dd 0a924cfa4h
+dd 0b1c0f162h
+dd 06c8660cah
+dd 033b3f169h
+dd 001327058h
+dd 018ee340ah
+dd 050b0558ah
+dd 0e3e2253eh
+dd 0243a04b0h
+dd 0e1b9f563h
+dd 0d78af848h
+dd 0b643f733h
+dd 03dac667ch
+dd 038577e58h
+dd 056b52af0h
+dd 06cb2618eh
+dd 01f713021h
+dd 09ebfd376h
+dd 050f2e938h
+dd 07e427cb8h
+dd 0560fbdc5h
+dd 0b72d0354h
+dd 09271e9feh
+dd 032653a48h
+dd 0034ca7cbh
+dd 0f7b1e1dbh
+dd 02c799c91h
+dd 053543463h
+dd 0bcb09d1ch
+dd 0094902c3h
+dd 0316d229bh
+dd 02b842a7bh
+dd 05df1f935h
+dd 0164e6529h
+dd 01d3103f6h
+dd 03c859e32h
+dd 0a26105b7h
+dd 0c746501eh
+dd 0f7c64611h
+dd 0e64f14bch
+dd 0c3697802h
+dd 00ded774fh
+dd 0f9a8dbe0h
+dd 00d3e947eh
+dd 06c4ed56dh
+dd 05efcf5dch
+dd 0d52a682eh
+dd 0f97678e7h
+dd 0bf0319f5h
+dd 0d38034dfh
+dd 0bd7d7a35h
+dd 0c591261dh
+dd 03362f50dh
+dd 0be737e0fh
+dd 0d9b55306h
+dd 0a64a08b1h
+dd 024bd0616h
+dd 00440cef3h
+dd 0699dcaa2h
+dd 04770841ah
+dd 047632ae7h
+dd 0ed464b92h
+dd 031bf9caeh
+dd 0e852884eh
+dd 0ee41b8f0h
+dd 021166b60h
+dd 0c3e8b3d3h
+dd 0aa8b0268h
+dd 073b2f429h
+dd 0fe8ae641h
+dd 04aa89018h
+dd 0805f3cc0h
+dd 043df26eah
+dd 0ceb39691h
+dd 03ed61a25h
+dd 064246e06h
+dd 0072a46a7h
+dd 0805e1ac7h
+dd 05c119aafh
+dd 0bd974183h
+dd 08690ca81h
+dd 0b438c84ah
+dd 02b510476h
+dd 0f380ad88h
+dd 0d5210526h
+dd 07266fef9h
+dd 097af7dabh
+dd 0fa793e79h
+dd 0f019d219h
+dd 0dfd7d512h
+dd 09ac4b301h
+dd 04ec31b43h
+dd 0b8c78667h
+dd 09076be4dh
+dd 04c711080h
+dd 09cbfa0f7h
+dd 0a721ec25h
+dd 0a75e007ah
+dd 07e394513h
+dd 0a2fc27c8h
+dd 025fc371eh
+dd 0f5a5d71ah
+dd 063dd3677h
+dd 0963ae409h
+dd 0a7c5a042h
+dd 0d16e9ab4h
+dd 03428b1c2h
+dd 07bc7c0e7h
+dd 064aade5dh
+dd 0332828a0h
+dd 0d8bf07fdh
+dd 0ad620161h
+dd 0c0c2f338h
+dd 0a5ef05a0h
+dd 01a7b7d5bh
+dd 06d9a9ca0h
+dd 0d777623fh
+dd 0b18988efh
+dd 03855c3c7h
+dd 023268c4eh
+dd 0762998eeh
+dd 0ab7de70bh
+dd 0311be2b4h
+dd 0c6045bb3h
+dd 0009194f9h
+dd 0bb9369c2h
+dd 039b40de6h
+dd 086e963feh
+dd 021e47c01h
+dd 0b0334b2dh
+dd 01b7058feh
+dd 08224d3aah
+dd 0a2f0d428h
+dd 0aa1128b4h
+dd 0bb3f1b72h
+dd 095505473h
+dd 070045e97h
+dd 0e798a6c6h
+dd 0c1b83eb4h
+dd 06007f70bh
+dd 0fecea0a1h
+dd 09771ef09h
+dd 0c682b6beh
+dd 03245c37eh
+dd 0ff2f3093h
+dd 0118a6183h
+dd 004f7dd08h
+dd 066a54476h
+dd 03424eb1fh
+dd 0d809c71ah
+dd 02de6acebh
+dd 073677b66h
+dd 0fe92cd5dh
+dd 0685f21c0h
+dd 01e67c045h
+dd 090975e6bh
+dd 017af26e6h
+dd 0acc81da4h
+dd 0e2972b5dh
+dd 0e8a0c608h
+dd 0799c8f1fh
+dd 0e8616d42h
+dd 05df475f3h
+dd 057c91bc9h
+dd 0162837c1h
+dd 0ea6c7de3h
+dd 000dfe068h
+dd 07f7888d1h
+dd 03d83b927h
+dd 00d822ff5h
+dd 04970779fh
+dd 0e9d2beb6h
+dd 047bbb25dh
+dd 01bab0c6eh
+dd 0e9456421h
+dd 09dac471bh
+dd 06116f22bh
+dd 00cb81256h
+dd 0086f414dh
+dd 0b166477eh
+dd 0a0511ca8h
+dd 04e4b5373h
+dd 093b9c167h
+dd 0cc33a718h
+dd 032f22f0fh
+dd 06cf3fcbch
+dd 015aebcb6h
+dd 0729624efh
+dd 0238bca05h
+dd 0e255f45ah
+dd 0158ece62h
+dd 0534aea27h
+dd 06ae7b966h
+dd 07ca46c14h
+dd 02b20bf25h
+dd 0dcebbe7dh
+dd 08c6babe4h
+dd 0e365bc10h
+dd 0b9187988h
+dd 08fe04014h
+dd 0f3ef7a07h
+dd 01a58f952h
+dd 070bf9e5fh
+dd 09aba41d4h
+dd 0632a34deh
+dd 08fdab2b0h
+dd 005ca46d0h
+dd 0ae018deah
+dd 0f152ad35h
+dd 0c7dec38eh
+dd 0f23affedh
+dd 0357b4935h
+dd 0e74edbb3h
+dd 0761497fah
+dd 0356364d4h
+dd 0550e2c5fh
+dd 0e12c2fa4h
+dd 06a5d162dh
+dd 055f29ba0h
+dd 0403145b6h
+dd 042e29117h
+dd 027b4f5d7h
+dd 02e63e1feh
+dd 00e927e35h
+dd 0d5e1f1afh
+dd 0f3775c5bh
+dd 070695e28h
+dd 06fbe1e7eh
+dd 0c51f6763h
+dd 0e4ec8f9fh
+dd 0caeb7702h
+dd 034f903b3h
+dd 0951384f5h
+dd 014ed286ah
+dd 00b3fd88bh
+dd 09ab7cd3dh
+dd 07692311ah
+dd 04fa26288h
+dd 05c9a47f7h
+dd 0200865b2h
+dd 051a2ed51h
+dd 0f00fd038h
+dd 0c725a91dh
+dd 0b8c49daeh
+dd 0f9f966b0h
+dd 0426b24bch
+dd 09404b0dfh
+dd 0b90e0693h
+dd 06eb3aa56h
+dd 0c72918beh
+dd 02ec2386dh
+dd 02b8738e5h
+dd 09f2ac81dh
+dd 079b7bfdfh
+dd 0a915ff64h
+dd 037423286h
+dd 01e0e9c15h
+dd 035729ac7h
+dd 052d61015h
+dd 030ca0c4dh
+dd 0d8296175h
+dd 0fbaa418eh
+dd 08646d4f5h
+dd 0b58afe46h
+dd 04c0255bfh
+dd 0d93c3b5ah
+dd 070c81695h
+dd 036910209h
+dd 086f0f834h
+dd 0e712d474h
+dd 0fc8abbfch
+dd 0c9fdc065h
+dd 00da3be7bh
+dd 092c7a382h
+dd 01c765e61h
+dd 008d7777ah
+dd 08e0b72e5h
+dd 08a1683fch
+dd 0aaa0e629h
+dd 0f9bcbcd4h
+dd 0ec809b27h
+dd 061830345h
+dd 09ba85d53h
+dd 07fc880b2h
+dd 04de5c9cdh
+dd 0d06b29d4h
+dd 09784ae68h
+dd 02fcfe034h
+dd 0cbf0c986h
+dd 0f3dd8991h
+dd 0a6df0860h
+dd 02fca1028h
+dd 0ae00a1d9h
+dd 08b8e7d52h
+dd 014b75fefh
+dd 0de08dbc0h
+dd 05d759399h
+dd 0eb22081dh
+dd 0eb45dbe2h
+dd 0b47bbab6h
+dd 0eb3371cfh
+dd 0e83b15a4h
+dd 044e20262h
+dd 03a384722h
+dd 0e1e19660h
+dd 01719b917h
+dd 0732e0bb3h
+dd 054203db2h
+dd 0d126aef2h
+dd 06bbeebfeh
+dd 01f8b6fdah
+dd 0da8cf4d7h
+dd 0e4120a9ah
+dd 0b47cfd01h
+dd 0f379308bh
+dd 0fd3a48e7h
+dd 07b7edd9eh
+dd 05ee0dca0h
+dd 06d6be2c5h
+dd 09a199580h
+dd 09f8ea4d2h
+dd 09d4e650eh
+dd 087388858h
+dd 04b8fd8e8h
+dd 0037ddb5eh
+dd 04e7ce6e6h
+dd 0e3f6a73ah
+dd 02682f26dh
+dd 03989a3b5h
+dd 0f8d90c8fh
+dd 059bb1f4dh
+dd 081951d63h
+dd 0c723bffbh
+dd 0dc6d5636h
+dd 05c0cbd30h
+dd 040266ad2h
+dd 020ae6c40h
+dd 08a4b6b95h
+dd 048e38c61h
+dd 070c9fe5dh
+dd 0c41e558eh
+dd 0e9e31b3ah
+dd 0ff0e6a02h
+dd 0abee77b0h
+dd 0d9a8db8bh
+dd 00301d664h
+dd 0e8a49a71h
+dd 0a48a49f5h
+dd 0103ebeadh
+dd 00eb08f64h
+dd 084fe0f25h
+dd 01c862efch
+dd 03572003ch
+dd 08af8c00ch
+dd 0b1a5e81ah
+dd 0448bac40h
+dd 0b2d2ebbeh
+dd 04ba23070h
+dd 01381f91ch
+dd 061febb23h
+dd 09c626acah
+dd 0aa252ad0h
+dd 005c7c011h
+dd 053e7cabdh
+dd 08025abf7h
+dd 03b5ec825h
+dd 0e16c3939h
+dd 0363271d3h
+dd 0a13f7c74h
+dd 0601eb951h
+dd 02ffd482eh
+dd 0dc8b7fa1h
+dd 016b2038fh
+dd 024be9386h
+dd 0583addd7h
+dd 0e5e53070h
+dd 043ace0bfh
+dd 013add0dfh
+dd 00ba99bf1h
+dd 039d27337h
+dd 0474d1263h
+dd 0a77eccd9h
+dd 0df5c5d1ah
+dd 00f1aa305h
+dd 006e914f5h
+dd 07b26b13dh
+dd 00d7750f1h
+dd 0f602c171h
+dd 038965d5dh
+dd 097ce6c55h
+dd 06717c288h
+dd 02a576d6ch
+dd 02c026511h
+dd 0cc24f359h
+dd 0c61e8af0h
+dd 02f9b5ff6h
+dd 04545afdbh
+dd 0b9c5fc2bh
+dd 0c9bd8f20h
+dd 0e540d124h
+dd 0411ef33ch
+dd 0843b0ed4h
+dd 07a9bf3dch
+dd 05690b0d9h
+dd 03abd33afh
+dd 088039f88h
+dd 07fabe14ah
+dd 0bb5a2c6ch
+dd 0318f4aeah
+dd 01b62943ah
+dd 07942a20ch
+dd 04c08cad7h
+dd 07127be23h
+dd 072f40436h
+dd 03b4bcf8eh
+dd 03e8892dch
+dd 0b81742dbh
+dd 09fd9b04dh
+dd 0bc8ff649h
+dd 0f7890d79h
+dd 0b99aa95dh
+dd 0cead56e7h
+dd 097ff9cb0h
+dd 08f65e54dh
+dd 07d9e949eh
+dd 0cc043a0fh
+dd 085b7272dh
+dd 0a867d1e6h
+dd 0db1be56dh
+dd 0f8c97436h
+dd 05cc425a7h
+dd 063b1ae29h
+dd 046ad1968h
+dd 008498a86h
+dd 0974412f0h
+dd 0b953ce5bh
+dd 0c5554b30h
+dd 0f4395a11h
+dd 03c31a48fh
+dd 015b6ec00h
+dd 09d543cafh
+dd 0e7230f89h
+dd 00aecd620h
+dd 0bacf7129h
+dd 044376a6fh
+dd 097795bbfh
+dd 0ee6cc0e8h
+dd 0c003af3dh
+dd 05db5e254h
+dd 0f15f04fbh
+dd 037a52f28h
+dd 0b7159449h
+dd 00d67eb36h
+dd 0e3fc693fh
+dd 0d5cfcc14h
+dd 07636d481h
+dd 0570f01e8h
+dd 0f1b4dda2h
+dd 0894d1bf6h
+dd 010f29b94h
+dd 0da7fda55h
+dd 0991ea40dh
+dd 0494cc00ah
+dd 0b8eae0d3h
+dd 038e8ae74h
+dd 0a48e7cc1h
+dd 07fe80b1fh
+dd 021d71544h
+dd 058f0e4dfh
+dd 0ff6abbdah
+dd 015f684feh
+dd 03d7bc834h
+dd 0acab0f3eh
+dd 0071e6731h
+dd 045790559h
+dd 0296e1d23h
+dd 0c0525e89h
+dd 0b86a31efh
+dd 01c574c2bh
+dd 0e1e623beh
+dd 095b3caf0h
+dd 0689a0849h
+dd 0bb324e87h
+dd 07826dbd9h
+dd 0056a4191h
+dd 036bc83aah
+dd 05e923613h
+dd 005b0fe06h
+dd 0b668d48ah
+dd 06c1d78f5h
+dd 04fe2589bh
+dd 0b66ca5b4h
+dd 0dcde65d1h
+dd 023c4fd1fh
+dd 012d36e94h
+dd 0b8214b43h
+dd 03af4bc24h
+dd 09a58aa03h
+dd 03c101923h
+dd 0156f4590h
+dd 0e3e94b8ah
+dd 0138f72c4h
+dd 0a4806769h
+dd 03e612ba3h
+dd 0072a833bh
+dd 0b8b2b355h
+dd 0d3fd7186h
+dd 06c82cb00h
+dd 0c7819321h
+dd 00a885a18h
+dd 0aa99d580h
+dd 09094d978h
+dd 014ba3295h
+dd 04c789b11h
+dd 0649ee8c7h
+dd 07da4039ah
+dd 071473b2bh
+dd 023263e74h
+dd 0fdd7c847h
+dd 0502dd819h
+dd 09acace9bh
+dd 06411873eh
+dd 019d0ef9dh
+dd 0355f199fh
+dd 0d2b0674dh
+dd 009a6d975h
+dd 0eac04924h
+dd 08bd1d7dah
+dd 0754fed4eh
+dd 040cb055fh
+dd 04695c309h
+dd 048806367h
+dd 06d14c0b3h
+dd 0b0166c24h
+dd 0b2564d4bh
+dd 0a37ea0e8h
+dd 0e7230724h
+dd 0214e8a21h
+dd 09050869ah
+dd 0c5219557h
+dd 081655cf1h
+dd 087d2e08ch
+dd 0bc5ad16fh
+dd 04c412f08h
+dd 01bb894f0h
+dd 09eb23dadh
+dd 0e8aaed14h
+dd 0c8d2a017h
+dd 0de2eecedh
+dd 0d1821743h
+dd 07b07d454h
+dd 0386ce85ah
+dd 038219aa2h
+dd 04a32bbe7h
+dd 082495030h
+dd 04b3d2764h
+dd 099a9ac89h
+dd 0c646a55fh
+dd 0e62e65a2h
+dd 0f3024c30h
+dd 013be3a0dh
+dd 001a35b25h
+dd 037771fb8h
+dd 00f213049h
+dd 00d5bc241h
+dd 01295c89ch
+dd 01a9c8a38h
+dd 08528d7fbh
+dd 0b3331244h
+dd 0efc7315eh
+dd 03eb8ceaeh
+dd 0894d60ddh
+dd 0c6bb2422h
+dd 0b1c1c632h
+dd 0aaf7d661h
+dd 08c473e6bh
+dd 037de19e3h
+dd 03abac886h
+dd 07462affdh
+dd 0fe3acad2h
+dd 0470d4c4fh
+dd 097207dabh
+dd 0393014ffh
+dd 0c8eef298h
+dd 07723117ch
+dd 0c689fce3h
+dd 056159993h
+dd 08fdfe314h
+dd 032459625h
+dd 0cfea5847h
+dd 03531eb76h
+dd 0caa4c662h
+dd 01dd5b795h
+dd 0a0b0b174h
+dd 08e018850h
+dd 0830297c1h
+dd 02be5443dh
+dd 0efd240e8h
+dd 0e2991d8dh
+dd 079079503h
+dd 0da7e09e1h
+dd 0b024526ch
+dd 037c20140h
+dd 00938d62eh
+dd 01117f3a2h
+dd 04ddb16d8h
+dd 0f392d164h
+dd 0ebfd6f77h
+dd 0481cb6cbh
+dd 06c67e8b8h
+dd 08f393d28h
+dd 0084505b2h
+dd 0bf08ebcdh
+dd 05be75c58h
+dd 0de0f412fh
+dd 0edf87837h
+dd 0c0332dfdh
+dd 06c1e7797h
+dd 0b8f398feh
+dd 0a6cb0ebbh
+dd 0ff789960h
+dd 06269fea7h
+dd 094795e7bh
+dd 0d5f78a48h
+dd 0ae8d4f74h
+dd 0021ffdbbh
+dd 094fa27d2h
+dd 0b0e697a8h
+dd 0848f56cdh
+dd 0c9672613h
+dd 0996f4294h
+dd 059996107h
+dd 07583784dh
+dd 043418117h
+dd 0809db3c1h
+dd 06c0d8748h
+dd 09f5da0f3h
+dd 0fbfe90beh
+dd 061399d44h
+dd 0be041b37h
+dd 04cb674b6h
+dd 02b65a515h
+dd 0830375fch
+dd 0fd172870h
+dd 02ed0bf39h
+dd 0d3df9c95h
+dd 0c3bfdb3eh
+dd 0f567b15fh
+dd 00e16a9c6h
+dd 00a2f4017h
+dd 085980b93h
+dd 088ebb05fh
+dd 099af6ecch
+dd 012b20bf7h
+dd 027a3ec89h
+dd 06eee2d41h
+dd 050bddbc4h
+dd 0902a8cfah
+dd 0a1b4ea02h
+dd 038a60c15h
+dd 04e7a343fh
+dd 0c9db1e92h
+dd 05de000f9h
+dd 0b4f67295h
+dd 0765a79eah
+dd 099783de8h
+dd 059278541h
+dd 0023215b6h
+dd 00cad38b3h
+dd 0e493175ch
+dd 05ca25747h
+dd 078b0f291h
+dd 05b7ee660h
+dd 04a0e4111h
+dd 019e89ea6h
+dd 060db49c5h
+dd 06de5d8dch
+dd 07348adbah
+dd 0969bda43h
+dd 03136fe7ch
+dd 035034b07h
+dd 0c585e1f6h
+dd 080df2919h
+dd 0df963930h
+dd 0c46f7ab1h
+dd 0c112e29ch
+dd 0e3064129h
+dd 0bd9a40cfh
+dd 0dff8fcc4h
+dd 01a591418h
+dd 03bd59ec8h
+dd 007fa54cah
+dd 0e7d29a11h
+dd 05d193a5ch
+dd 0aed03f2ch
+dd 07636d072h
+dd 000fc71dbh
+dd 0d81f4c6ah
+dd 0e717c1d7h
+dd 0c1d55110h
+dd 0ed1499b5h
+dd 02393fafah
+dd 0b7cb6562h
+dd 0dea6b454h
+dd 05cf172dah
+dd 058ff08f9h
+dd 06f909505h
+dd 03aed1641h
+dd 08e24f24eh
+dd 068d3c4e1h
+dd 092f02fd9h
+dd 0a4c1bd9dh
+dd 0eeed5ec5h
+dd 04d3bfd6ah
+dd 0a17f30bch
+dd 09858da8ah
+dd 0c847986ch
+dd 030acf5f2h
+dd 04f321c9bh
+dd 0b00eee5fh
+dd 089a47c4bh
+dd 0c2dbddf0h
+dd 0658d246dh
+dd 06d91e7b5h
+dd 0e01d3a3eh
+dd 0db69f74ah
+dd 02337adffh
+dd 05c36e05bh
+dd 0ddde1508h
+dd 0c8da4c48h
+dd 0440e6ad7h
+dd 0a0cfbbcdh
+dd 0393a1866h
+dd 0b930a575h
+dd 0fcf45383h
+dd 0c1cd1fc5h
+dd 0d82de156h
+dd 025ae6e1bh
+dd 0d5fb786fh
+dd 008ab8202h
+dd 060136d77h
+dd 0bf6d2383h
+dd 01107a19fh
+dd 063713ba7h
+dd 0e3bd5cdbh
+dd 04cff1e66h
+dd 0733ac20bh
+dd 0e598d24fh
+dd 0c6023884h
+dd 0f7cfd09dh
+dd 007ffc5ech
+dd 0eebdff5dh
+dd 0b396d77bh
+dd 0136e4a80h
+dd 0a6f8ad1bh
+dd 09b09a6a6h
+dd 057078f65h
+dd 09bbe4042h
+dd 066d673b9h
+dd 0530fe926h
+dd 08026039dh
+dd 0f3602e33h
+dd 0f5370e27h
+dd 0babc3f3fh
+dd 0837a5edbh
+dd 09e25c68bh
+dd 02da83ebch
+dd 03772dd07h
+dd 0c19267bdh
+dd 09796217ch
+dd 08b11e0a2h
+dd 05fb7bfe3h
+dd 07b6636ebh
+dd 0506054b6h
+dd 0cc4e50ffh
+dd 012b3c352h
+dd 08bc05921h
+dd 06be7e7edh
+dd 00a8c6605h
+dd 0166eb315h
+dd 004e9781eh
+dd 0a820828dh
+dd 0f737af0ah
+dd 0ce43552fh
+dd 010bb821fh
+dd 05b74d061h
+dd 0f1187d24h
+dd 08e31406fh
+dd 082970562h
+dd 07e604557h
+dd 082a4da2fh
+dd 00365f04dh
+dd 0ea0ef6c7h
+dd 08f4b5b7ah
+dd 0cdc51fdfh
+dd 057c04e16h
+dd 0506309bdh
+dd 0884262eeh
+dd 0eb6906adh
+dd 035906804h
+dd 0d957d111h
+dd 078c90760h
+dd 085dc4280h
+dd 0dd706443h
+dd 0909b0f8eh
+dd 0a47f09f2h
+dd 009aa5d7eh
+dd 0d1ff2e47h
+dd 0ff3e732eh
+dd 00a86ee0bh
+dd 03206b2d7h
+dd 088b56595h
+dd 0296ad98ah
+dd 08b84b683h
+dd 08987a33ah
+dd 0aceb3b47h
+dd 015bafa71h
+dd 07271881ah
+dd 02568922fh
+dd 02ede1233h
+dd 0620faae7h
+dd 013af9e1fh
+dd 0a05d7477h
+dd 0392b355eh
+dd 0de75c2fbh
+dd 0e9855e8ah
+dd 0f13d8399h
+dd 0d952064ch
+dd 0daa3b504h
+dd 013e19712h
+dd 07eca0c9dh
+dd 0c65a41d4h
+dd 0a6ea96f7h
+dd 0209ac2b2h
+dd 01c01e8ddh
+dd 019b12eaah
+dd 0b2fc5701h
+dd 0fd6a2879h
+dd 047c567dah
+dd 0cd36abcfh
+dd 0fdcbf124h
+dd 04693892eh
+dd 03d213aa0h
+dd 010a253aeh
+dd 0dc09a7fah
+dd 0ab78b6eah
+dd 00c3e8000h
+dd 01ff64832h
+dd 0ae5914a4h
+dd 00745c71ah
+dd 007630223h
+dd 0b93b1039h
+dd 0a6821f01h
+dd 056e5a806h
+dd 0af312723h
+dd 01c476504h
+dd 0b800a842h
+dd 0908d787ah
+dd 07f009ab3h
+dd 094ad74beh
+dd 0ed115ad8h
+dd 0106cc71dh
+dd 09be24622h
+dd 0068839a6h
+dd 0d341dc70h
+dd 08030ccaeh
+dd 08d5588c3h
+dd 0e87d4fb4h
+dd 0fae3d007h
+dd 02601edc0h
+dd 0351a8214h
+dd 00d3d1649h
+dd 01edcce86h
+dd 0896549f4h
+dd 074ea228eh
+dd 014c441deh
+dd 0d332537dh
+dd 0d0323578h
+dd 0a9757d26h
+dd 0a0825a3eh
+dd 088e32ff1h
+dd 04b5e3e21h
+dd 07bbc9480h
+dd 0ffccb5a8h
+dd 02ad1c8deh
+dd 0e2b8f1dbh
+dd 029194ebbh
+dd 0af45ba2dh
+dd 0055378d4h
+dd 0c424c38dh
+dd 0d5b1ccd3h
+dd 0afcd2934h
+dd 0f5730090h
+dd 0e606bc31h
+dd 036a32932h
+dd 098309bb0h
+dd 031990472h
+dd 01af60129h
+dd 03db737c7h
+dd 06ea3eab7h
+dd 0303aab67h
+dd 0f3275ba7h
+dd 0ef650265h
+dd 0ca6103c6h
+dd 0d5650e8dh
+dd 0ac8ef0f1h
+dd 0260646deh
+dd 08a2d2b91h
+dd 0ea96e661h
+dd 027c0faf7h
+dd 0e66031d5h
+dd 0d4c618abh
+dd 066ab5fafh
+dd 0ef410ecdh
+dd 03d561d5bh
+dd 08759ae71h
+dd 0a0d266d2h
+dd 0426ca15ah
+dd 0d459a26fh
+dd 0d4d0f8c1h
+dd 029dfe43dh
+dd 0740d78d9h
+dd 0aeb22067h
+dd 099843397h
+dd 02d0b0b44h
+dd 0c9c6caddh
+dd 0cd2dff55h
+dd 0461e5ff6h
+dd 0381408feh
+dd 0add887feh
+dd 07c3c82f6h
+dd 0ae745a4bh
+dd 0669dd781h
+dd 0c5f43384h
+dd 0b9001abdh
+dd 07599e403h
+dd 065090f7dh
+dd 0fc775907h
+dd 07bafb3c1h
+dd 0d19cfdcch
+dd 0e7e73757h
+dd 0f1db749ah
+dd 093fce453h
+dd 0267c7c73h
+dd 0dcfd5197h
+dd 010ace881h
+dd 085f802adh
+dd 00ed03e28h
+dd 0e2cb81d0h
+dd 0e1cf6d55h
+dd 0ab784183h
+dd 0681577c6h
+dd 04338a94ch
+dd 099e8c8fah
+dd 0a1426875h
+dd 0e11c449bh
+dd 008f53efah
+dd 06f8263f3h
+dd 05a1d18b1h
+dd 08eb3bf50h
+dd 07ec9b47eh
+dd 0d3ffe489h
+dd 0e97ad39dh
+dd 03a7581e7h
+dd 0ee96de5bh
+dd 0f258a209h
+dd 01775fd56h
+dd 0747fb6c1h
+dd 0c36f54bch
+dd 0790104f2h
+dd 0aef55fefh
+dd 0b486e596h
+dd 0a1bf4252h
+dd 069ca2a26h
+dd 05819f33bh
+dd 03aa33f94h
+dd 077f38111h
+dd 08ea7ae9ch
+dd 0c28d7a14h
+dd 040993d40h
+dd 0fa09270ch
+dd 0bfdc62aeh
+dd 0d8f9cec4h
+dd 02748d687h
+dd 04d9546cdh
+dd 00bb5df38h
+dd 0cf1a83aeh
+dd 0d685149ch
+dd 032ffce39h
+dd 0467c2636h
+dd 05978051fh
+dd 00a29f36ch
+dd 013109904h
+dd 065fec5cdh
+dd 0fd9073e4h
+dd 012b4a361h
+dd 07114dc30h
+dd 03ecc3b50h
+dd 0f38bdeach
+dd 03da8bf19h
+dd 09ca5790eh
+dd 0f6f795c6h
+dd 0fb15ea1fh
+dd 07a7bcd85h
+dd 0d0261fe3h
+dd 04e57e154h
+dd 083e5df99h
+dd 0571588e0h
+dd 0eafbe0b9h
+dd 0a4bb3263h
+dd 0f0fa0c53h
+dd 0fea192dfh
+dd 07c1c6d32h
+dd 0e94e29fah
+dd 0c7ce5982h
+dd 061609351h
+dd 02c05afc3h
+dd 0fa2c61c8h
+dd 04d95abc3h
+dd 09ccc36a2h
+dd 0a05a49ech
+dd 021dceb11h
+dd 0f30441f7h
+dd 01756eecah
+dd 067509e3ch
+dd 06aa720dfh
+dd 01090ddd4h
+dd 061d73427h
+dd 0e2ed01f8h
+dd 0ce4d75bfh
+dd 0201089f8h
+dd 0ff5ff4b2h
+dd 053b6cc91h
+dd 0ff38a037h
+dd 051734abah
+dd 09b098190h
+dd 0fa7ebc8fh
+dd 0daa15e89h
+dd 024769e24h
+dd 0a3f9b6f3h
+dd 0afc64c36h
+dd 09a099690h
+dd 04d58e6d0h
+dd 0c761c332h
+dd 0bbb10fdbh
+dd 071aa5b15h
+dd 064a69bd5h
+dd 0af103a9fh
+dd 03b1d53f0h
+dd 094b202eah
+dd 0cda3983bh
+dd 0230e4c57h
+dd 03142c4bch
+dd 0c0589715h
+dd 092453348h
+dd 07121c675h
+dd 0cfa844c6h
+dd 06da08d0fh
+dd 0611b5a9ch
+dd 07a14153ah
+dd 0d94ddadah
+dd 0653cc20ch
+dd 07215398fh
+dd 0e5cdc031h
+dd 0e83e4dd1h
+dd 0faaf4e70h
+dd 09be2657ch
+dd 0c039d511h
+dd 0870957d8h
+dd 03075b048h
+dd 0ee086d00h
+dd 0eff6e7b5h
+dd 006208fe5h
+dd 0672c045ch
+dd 09fe6eb97h
+dd 00c90f69fh
+dd 0853c5ff6h
+dd 05c28285ch
+dd 088cfae6dh
+dd 06b8f9289h
+dd 016c89262h
+dd 061901c71h
+dd 0d47609b1h
+dd 05dd1c0cfh
+dd 0ead02b64h
+dd 056fd2b86h
+dd 02220ede9h
+dd 05ba868b8h
+dd 0a15893cfh
+dd 01ab4d12eh
+dd 05dc98e7dh
+dd 06aab1358h
+dd 0731f2e54h
+dd 0b529d180h
+dd 0d1b5a67fh
+dd 0845d0fb9h
+dd 0ff7980e7h
+dd 0cdc0b564h
+dd 0d00dd9edh
+dd 0a2d1c19bh
+dd 0259ba76eh
+dd 0358a76c3h
+dd 04ed7d3beh
+dd 0fab9ddd6h
+dd 0a789e354h
+dd 049a7bd15h
+dd 02eb29862h
+dd 05b638615h
+dd 03acf3274h
+dd 047752ba6h
+dd 04ab899aeh
+dd 0578267a4h
+dd 0b97b8ca0h
+dd 09b64062fh
+dd 0d6feab5ah
+dd 0be112fcfh
+dd 01cc3e6ech
+dd 031f2a5e0h
+dd 06f9ea759h
+dd 0871efa87h
+dd 0a2b2d59bh
+dd 01c6c4343h
+dd 0a047bfc9h
+dd 0c81e2b75h
+dd 00c2b612eh
+dd 0b3bc67d6h
+dd 0174781b8h
+dd 038c061e0h
+dd 058c88c20h
+dd 08634c60dh
+dd 008dddd9dh
+dd 0834672f8h
+dd 0079d7828h
+dd 00e71f26ah
+dd 082d4f63eh
+dd 0ea42041eh
+dd 0efd0ebe4h
+dd 088a7a88eh
+dd 0bd2396eeh
+dd 02984ebc9h
+dd 041a82418h
+dd 09d0217d0h
+dd 0fd3d25f0h
+dd 0248bc791h
+dd 05d62517fh
+dd 050541b10h
+dd 05ff0790fh
+dd 0ecce836ah
+dd 007d40b33h
+dd 0e351fa95h
+dd 0623a132ch
+dd 00e83b2a4h
+dd 0fd351bb9h
+dd 0b7754886h
+dd 0c798ebe2h
+dd 01f7db797h
+dd 0564fb51fh
+dd 0038fc814h
+dd 0f9027968h
+dd 0b987c6b9h
+dd 021836916h
+dd 08e974666h
+dd 0fac82bbah
+dd 04ec8ed5bh
+dd 01e28dc1ah
+dd 0023f4d91h
+dd 0bcdf1e94h
+dd 062316b55h
+dd 0d15d4876h
+dd 06e719ab9h
+dd 0e69438d7h
+dd 0e5802524h
+dd 089b6db6ch
+dd 0bfff5162h
+dd 0671cfcc1h
+dd 013054848h
+dd 061bb71e6h
+dd 0b12e2da9h
+dd 00cf45d2dh
+dd 0a4252ad8h
+dd 0517fbfc4h
+dd 05cb3d75bh
+dd 02f0f8624h
+dd 050b13dfch
+dd 047140af5h
+dd 016316c31h
+dd 09b8af31ch
+dd 01f992b25h
+dd 0459ad7f2h
+dd 0eb055921h
+dd 0b84d851dh
+dd 0499c1d96h
+dd 03fc94278h
+dd 0e25de464h
+dd 0cbf0d552h
+dd 01e4c3805h
+dd 0b8bb6206h
+dd 000f1d01fh
+dd 04f6e9acah
+dd 0a98e2731h
+dd 0ef4cffb3h
+dd 0c12c61ddh
+dd 0c7806d61h
+dd 0e503cd35h
+dd 038f5aedfh
+dd 077493220h
+dd 0ba2a22b6h
+dd 033ea4fb3h
+dd 0941ae0e5h
+dd 0caecfd52h
+dd 068f742c7h
+dd 04d83d1ech
+dd 01a78f5dfh
+dd 016ade6ebh
+dd 0a4304c71h
+dd 0675466deh
+dd 01a82f94ch
+dd 09465601bh
+dd 09558b4cah
+dd 0e5140c22h
+dd 09827b28dh
+dd 0f5320501h
+dd 097dc7770h
+dd 0e0a21337h
+dd 08db358d5h
+dd 0a8243d87h
+dd 01d072b6ch
+dd 056e05e61h
+dd 02e6572c9h
+dd 050a96b03h
+dd 0b8fc16adh
+dd 079a6bfb2h
+dd 037b464b7h
+dd 05348e078h
+dd 07d33396ah
+dd 0b721a361h
+dd 068a4d358h
+dd 094689d7bh
+dd 09fb33093h
+dd 0efb382deh
+dd 09129dd9ch
+dd 0e3920855h
+dd 0fa92be47h
+dd 0115f218bh
+dd 0d32a2f02h
+dd 090e2398bh
+dd 089848a7dh
+dd 0671196c7h
+dd 079c1ed8bh
+dd 0ef690082h
+dd 0e296daf6h
+dd 0b51066b8h
+dd 0a8dc41f9h
+dd 0897adde2h
+dd 0ba375d45h
+dd 0c92fac97h
+dd 0bae69e7ch
+dd 0f1e0b940h
+dd 0ad73b4c1h
+dd 0daf3f4eeh
+dd 0f780f1c0h
+dd 0eded5b4fh
+dd 001852a8ah
+dd 00d25f578h
+dd 060cf6617h
+dd 0c1ca2a68h
+dd 084dbbe76h
+dd 0be6a3d9ch
+dd 0be2b4a2fh
+dd 00790376ch
+dd 0c3675ad0h
+dd 0e8a8260eh
+dd 000705944h
+dd 0225de395h
+dd 074469131h
+dd 026fdfe16h
+dd 09009fd83h
+dd 0dfbe5906h
+dd 0368c1ef7h
+dd 08cc4d6d0h
+dd 0278aaceeh
+dd 0ed446ad0h
+dd 052429563h
+dd 0a0c0d43ch
+dd 011e0a53eh
+dd 0ca9d577ah
+dd 0235235c5h
+dd 0e00cf88bh
+dd 0567788a3h
+dd 0327e9e42h
+dd 02b648c51h
+dd 0645d8f5fh
+dd 0b95bf2fch
+dd 056d1dd3fh
+dd 01b649c07h
+dd 0c321af35h
+dd 05d1b8410h
+dd 06b2078f9h
+dd 0988ee98eh
+dd 04899674ah
+dd 013ce7842h
+dd 044187e68h
+dd 0e5058984h
+dd 0f8e28088h
+dd 01bfc3336h
+dd 05c9ee765h
+dd 06a18322fh
+dd 0bf84dd64h
+dd 03ec00a0bh
+dd 058860522h
+dd 01ae72b9eh
+dd 08fb91ce7h
+dd 06bc3cc11h
+dd 0a94469beh
+dd 09062a5d3h
+dd 0814c3081h
+dd 00cf792d5h
+dd 0af44cb63h
+dd 0ef9599deh
+dd 046eed18fh
+dd 08b2b953fh
+dd 0029fa265h
+dd 08e6b0837h
+dd 0bcf02cach
+dd 05fdb7c5ah
+dd 075feb8e4h
+dd 0b31da748h
+dd 0fc7648c7h
+dd 0c2880c03h
+dd 03371a49eh
+dd 0c8f814aah
+dd 03fd730f2h
+dd 056d589b3h
+dd 0684b2cebh
+dd 0c364e9d5h
+dd 00f555bf4h
+dd 083375bbch
+dd 0a7059337h
+dd 062c17955h
+dd 0374033edh
+dd 05fee820fh
+dd 068923d5eh
+dd 04c14ef53h
+dd 003a20037h
+dd 094f47932h
+dd 057df1d2bh
+dd 064a73efah
+dd 073074041h
+dd 063f950f5h
+dd 020b72b24h
+dd 0a9870bb6h
+dd 0a1272627h
+dd 08e9b6078h
+dd 066979545h
+dd 0dfcc33d4h
+dd 016bf6ae7h
+dd 0a06b2dach
+dd 071795dcch
+dd 01304515bh
+dd 0d427418ch
+dd 03daaefd4h
+dd 01e09fac8h
+dd 0c2d55d7bh
+dd 0e9bb5465h
+dd 0c1ed657ah
+dd 0691cb57fh
+dd 0510c27b2h
+dd 00365e6e5h
+dd 0f081d7cdh
+dd 0ad169c0ah
+dd 0ac73e860h
+dd 09fba9b1dh
+dd 03b7aa74ah
+dd 04e1ec4aeh
+dd 0b12f7ef7h
+dd 02e0eff85h
+dd 0e0b113e3h
+dd 0344c52cfh
+dd 0828505a1h
+dd 0ea63f1f0h
+dd 0ffebe718h
+dd 037f81b43h
+dd 0f7d4af57h
+dd 0dec4220bh
+dd 01181aad7h
+dd 09b007a77h
+dd 094bbb0c2h
+dd 0e325c9e1h
+dd 0aa056d19h
+dd 089e75127h
+dd 0d4cf1074h
+dd 05fa61b96h
+dd 0c8393268h
+dd 05b85c1b8h
+dd 0bda872f2h
+dd 07b614cc4h
+dd 08c93903eh
+dd 0a8767ea3h
+dd 01d356ecah
+dd 0bd32e6f6h
+dd 0697f3e6ah
+dd 053ce936ch
+dd 048fe441ch
+dd 043909cd5h
+dd 00cca20c2h
+dd 0636edf99h
+dd 05f81159fh
+dd 086385e4dh
+dd 0b514df6bh
+dd 029359b49h
+dd 0c6c9eafeh
+dd 023a0a942h
+dd 067a7d0b9h
+dd 09c00b2e4h
+dd 05a6a2c7ch
+dd 0e0faff4bh
+dd 0ad51ab92h
+dd 0ef780159h
+dd 0f24f3119h
+dd 0d3d9d3c7h
+dd 08cfa5d3fh
+dd 00071fe59h
+dd 0ed12c724h
+dd 0cc45b69ah
+dd 077f13f16h
+dd 0f4ee1bb6h
+dd 055440642h
+dd 0c7013f84h
+dd 0d49ddc6fh
+dd 0803d6f38h
+dd 0699e8f5eh
+dd 0d5434553h
+dd 06aebf057h
+dd 0fab49263h
+dd 089fa5375h
+dd 02e264dbdh
+dd 02ccf2cffh
+dd 02c058416h
+dd 018c54333h
+dd 04a191ecdh
+dd 035db4a02h
+dd 0378eb046h
+dd 085a2ba45h
+dd 0426f140dh
+dd 09036506fh
+dd 06eff46c3h
+dd 09ad41e07h
+dd 045299bdeh
+dd 0afac2ae4h
+dd 046da7df2h
+dd 0ad9d27f0h
+dd 06ca668ebh
+dd 064727949h
+dd 0587f6fc0h
+dd 08ac65dd7h
+dd 0f1822bbeh
+dd 0e2542b9bh
+dd 08a6f2dedh
+dd 0603dacfdh
+dd 08052653ah
+dd 0c72df97fh
+dd 0f5731bafh
+dd 025e6946ah
+dd 0f112edd9h
+dd 08d3709aah
+dd 089914834h
+dd 02f048913h
+dd 0f302e74eh
+dd 0dff07157h
+dd 0180955b8h
+dd 04245ec75h
+dd 0cf47cdb5h
+dd 0cbb8ca46h
+dd 0ee2176abh
+dd 077a2ee9ch
+dd 08ef899f0h
+dd 030c9a20ch
+dd 07ed8349fh
+dd 0ae79f039h
+dd 024392c67h
+dd 0cf9d6034h
+dd 052ee0d76h
+dd 0425b4d06h
+dd 0afa0d9eeh
+dd 02e6b3160h
+dd 086cf3237h
+dd 0e78d6cd5h
+dd 00beaa809h
+dd 08d14cb1dh
+dd 0dd35d983h
+dd 03b871324h
+dd 0af8cb318h
+dd 0bf38094eh
+dd 0fa9a4f25h
+dd 0bccb05dbh
+dd 0763d7855h
+dd 00ce1d284h
+dd 0060e6af0h
+dd 08b3d40dch
+dd 0b1a44d15h
+dd 07ec5ebf4h
+dd 003bd46f9h
+dd 072296f33h
+dd 040d6a350h
+dd 0e6769daeh
+dd 0e2c0271bh
+dd 0c9a35d49h
+dd 07ace2163h
+dd 0df374251h
+dd 0ebdf0ec4h
+dd 06d473a55h
+dd 0321d59a9h
+dd 0ce13d98ah
+dd 05abe9137h
+dd 0faf4ada1h
+dd 055bc1929h
+dd 016cb51e2h
+dd 0e0e1d9cdh
+dd 07f041ee3h
+dd 0b1b81307h
+dd 0bf13051ch
+dd 0d262c401h
+dd 0bb9575f5h
+dd 0adfb1fb3h
+dd 0bf7d49c8h
+dd 0e680286dh
+dd 029ef971eh
+dd 0bb3e6dd0h
+dd 087de26b8h
+dd 04a1bef92h
+dd 0fe7acdeeh
+dd 0c518900ch
+dd 02fdc8219h
+dd 05e0dccc1h
+dd 003591e42h
+dd 02de98fcah
+dd 06a2d85d9h
+dd 088bc07d9h
+dd 02bd6bed6h
+dd 0062271a6h
+dd 0bed49b50h
+dd 08d0d3e73h
+dd 0b2451597h
+dd 0d265b297h
+dd 0708de16bh
+dd 0471e1a7ah
+dd 0c657b2d8h
+dd 0af7bfe2fh
+dd 0247d00cbh
+dd 028a0b245h
+dd 025e670a5h
+dd 01569389fh
+dd 09611987ah
+dd 0a3e95e1eh
+dd 06b0bb8a9h
+dd 0cde0f69bh
+dd 08e61ea01h
+dd 0cbc85cb9h
+dd 0cf897780h
+dd 024a1dceeh
+dd 0c2d53f41h
+dd 0ff609841h
+dd 03e68322ch
+dd 05ac9d3e5h
+dd 0b47921f4h
+dd 0511e385fh
+dd 04422877dh
+dd 0421c74b9h
+dd 0b31637cch
+dd 06b6dfb69h
+dd 00ad750b1h
+dd 0670d204ch
+dd 0f80eba72h
+dd 0c36d0ad5h
+dd 0e019b6eeh
+dd 06862dbe6h
+dd 00f6c8e96h
+dd 0c799428ch
+dd 0fbf829e1h
+dd 063cdd510h
+dd 0a7721ec0h
+dd 0c73f06c6h
+dd 076c0acadh
+dd 0755028ech
+dd 03b743875h
+dd 09ffcf2fah
+dd 02a9dbf1ah
+dd 05af63e8fh
+dd 0c6fabf1dh
+dd 05cce5602h
+dd 05d3c1dcah
+dd 098adbeddh
+dd 08e6a297fh
+dd 0b3b67368h
+dd 0299267dch
+dd 0528ca51ch
+dd 096119fd1h
+dd 0aae4a9ddh
+dd 0537fee3dh
+dd 0f50c2cf9h
+dd 0615211c8h
+dd 0501086eeh
+dd 0d80d5a5bh
+dd 0bda474bch
+dd 06c7432dbh
+dd 04f998db5h
+dd 0da6cde79h
+dd 060fc7570h
+dd 00da88c9ah
+dd 0652c2a79h
+dd 06fc986fah
+dd 04d0bd8d5h
+dd 0db1431d5h
+dd 0ab846141h
+dd 056cfaf37h
+dd 082269bfch
+dd 0af759968h
+dd 03c6352bch
+dd 0e239bca6h
+dd 0ed04968fh
+dd 0fd0070bfh
+dd 0d9b1fe34h
+dd 08ca94289h
+dd 07685adffh
+dd 04d713156h
+dd 0c58f8e6fh
+dd 0a70d9902h
+dd 04a1c39b6h
+dd 003619c80h
+dd 0881024bdh
+dd 02e627439h
+dd 0f0d78254h
+dd 005f52f5ch
+dd 0e83031bch
+dd 08e563cd8h
+dd 06cefa522h
+dd 06fe0af2ah
+dd 05a2a6aaah
+dd 0eab8801fh
+dd 02e76b1bdh
+dd 07a1e1ed5h
+dd 006ca8758h
+dd 004af45ffh
+dd 0e774ce3ah
+dd 059af92fch
+dd 0234535c5h
+dd 0b13ffe62h
+dd 08b430916h
+dd 02a1a6a19h
+dd 0a6193fb5h
+dd 09009d6f2h
+dd 08214eb9eh
+dd 01d0ff8a3h
+dd 0ba969fdeh
+dd 06c24b55dh
+dd 070387b59h
+dd 0ffb0e424h
+dd 055b0921fh
+dd 055ec804ch
+dd 0c0561d85h
+dd 0a3e44723h
+dd 046078f86h
+dd 0f48a2ca6h
+dd 0aceecedah
+dd 039c035c9h
+dd 06c65aeafh
+dd 0a06c5aafh
+dd 0cda1fff1h
+dd 09b0fae25h
+dd 046092561h
+dd 0d4c064edh
+dd 00a67cfc2h
+dd 084692174h
+dd 0125122c7h
+dd 0276e642bh
+dd 093325ce4h
+dd 079bd8d0fh
+dd 0e3d11c73h
+dd 0fd1e116ah
+dd 0ed5cf39dh
+dd 02a1ee4f9h
+dd 0709acf62h
+dd 0b8794d98h
+dd 022850107h
+dd 04374636ch
+dd 0b69aa19dh
+dd 01bffa698h
+dd 07aba9435h
+dd 04f7e7386h
+dd 02d0608a4h
+dd 067a9a578h
+dd 022822ebeh
+dd 0f7d038a1h
+dd 005605d3eh
+dd 01deb0458h
+dd 0c8faa1cch
+dd 00be9a668h
+dd 094a10de6h
+dd 0f9431e49h
+dd 0ad75c029h
+dd 03920bd21h
+dd 05dd18f55h
+dd 02a1a6da0h
+dd 0e38f654dh
+dd 09195f0e9h
+dd 07da1058ch
+dd 08edc2cb3h
+dd 04dba3f0ah
+dd 0d34c55dch
+dd 0b8a5b5b2h
+dd 0c5d05003h
+dd 083127bdah
+dd 0d90cfacfh
+dd 0536872fch
+dd 0dd3ee538h
+dd 09668a227h
+dd 0f810479dh
+dd 0f1b8fcb7h
+dd 0e5128f13h
+dd 0097f98f9h
+dd 0c6fcd073h
+dd 0512d1cd3h
+dd 0b8031d9dh
+dd 012104f23h
+dd 06b266b41h
+dd 0df225a05h
+dd 045c201c7h
+dd 09930c768h
+dd 03b389df0h
+dd 0e86b9e9dh
+dd 040d3da1ch
+dd 0e5e4dc46h
+dd 0153dcb23h
+dd 0e6910c1fh
+dd 06847c300h
+dd 0cab9ab93h
+dd 02a41d0abh
+dd 07e1274a2h
+dd 07aa5191ah
+dd 0f244bda8h
+dd 053526b48h
+dd 0475362f9h
+dd 084f92d81h
+dd 0599fcf07h
+dd 06b036777h
+dd 062ab9545h
+dd 0f21b610eh
+dd 094d1add1h
+dd 02f9cc839h
+dd 001ab230fh
+dd 0da1d31c6h
+dd 0afd09adeh
+dd 0d9b7ae0dh
+dd 03e086e68h
+dd 05ca4feb3h
+dd 05bb2004fh
+dd 00459eb19h
+dd 0e18fbeadh
+dd 027922a93h
+dd 0fdedc4f8h
+dd 03a29f1abh
+dd 06fbc3e65h
+dd 0cb0911e6h
+dd 04ec1d5a1h
+dd 08b74fd38h
+dd 0a2d944a3h
+dd 00e772c1ah
+dd 027f4061eh
+dd 09a12c282h
+dd 0fa9cbf27h
+dd 03a68a8a3h
+dd 02e38178bh
+dd 07cbaa335h
+dd 04d979ccch
+dd 075861196h
+dd 0aaa59efch
+dd 03ebdd08eh
+dd 0f75de081h
+dd 05c617132h
+dd 054460440h
+dd 0716b177fh
+dd 01916f797h
+dd 05917bbb4h
+dd 011b30bceh
+dd 028846ed2h
+dd 0d30efb96h
+dd 0ce2566bfh
+dd 0711d403bh
+dd 0b49011cch
+dd 0a5f7adbbh
+dd 0132887f6h
+dd 0dc6fb491h
+dd 05ffb14e9h
+dd 0f72c6db4h
+dd 09b77e451h
+dd 01adfb1b1h
+dd 066a7098eh
+dd 03e0ada59h
+dd 0ddf9fa0fh
+dd 06ef71581h
+dd 09fda97f3h
+dd 059cdfb25h
+dd 0086393b1h
+dd 0ca398087h
+dd 01b6fff57h
+dd 007e9f97bh
+dd 0fb8556dch
+dd 099f30565h
+dd 0d0231c06h
+dd 08d25bdcdh
+dd 0d01777cch
+dd 004974812h
+dd 08907f210h
+dd 044ebb8edh
+dd 04e55d538h
+dd 0cd3cb094h
+dd 0d873bd07h
+dd 0627b1146h
+dd 0d66dc6abh
+dd 0fdf5451fh
+dd 02a9f1aeah
+dd 000392269h
+dd 04717eaddh
+dd 026072309h
+dd 0a5f671d1h
+dd 0ec47f6f1h
+dd 05116cd96h
+dd 0e1c42a1bh
+dd 0774b5f0bh
+dd 0b1b43e0ch
+dd 0eac2cde4h
+dd 0f3339324h
+dd 00a3723e1h
+dd 020085077h
+dd 0cdee2e4bh
+dd 0b99e20a1h
+dd 0f7b78282h
+dd 07439003ah
+dd 0bccc7b28h
+dd 09f746b7dh
+dd 099183a03h
+dd 0ff47af02h
+dd 0d5313076h
+dd 0b6b4c196h
+dd 084bf7b5ah
+dd 0556bf791h
+dd 09ec04771h
+dd 0a846e7f1h
+dd 0df8b950dh
+dd 0903d58f4h
+dd 0ac55dcafh
+dd 04d3a9182h
+dd 08875ccf8h
+dd 08795ac61h
+dd 0ec062bc5h
+dd 02497b23fh
+dd 04e147939h
+dd 0a9cc570eh
+dd 04e0e4836h
+dd 0b76903e0h
+dd 05d43ef0ah
+dd 011f66683h
+dd 08aed0b1fh
+dd 023c0278ah
+dd 091a73879h
+dd 0e55c181dh
+dd 0908d02b2h
+dd 030e268afh
+dd 0441ce4a6h
+dd 06cfa2173h
+dd 0080f71e1h
+dd 0648c01fch
+dd 070082a27h
+dd 04d09ba71h
+dd 06ca29532h
+dd 026509a51h
+dd 0b9418e13h
+dd 09b5ab904h
+dd 0127581e3h
+dd 0b2a50327h
+dd 0010395bch
+dd 0312aa59bh
+dd 09e47bbf3h
+dd 0c1f907c0h
+dd 0fc601c3dh
+dd 0f4944f00h
+dd 01d2b5dd7h
+dd 08f685a69h
+dd 02641f559h
+dd 0adbeea16h
+dd 0fe3fa01fh
+dd 08709ad91h
+dd 0ecef3d4dh
+dd 09ed18958h
+dd 09c414a19h
+dd 0dfc7d81ch
+dd 0d6abadc3h
+dd 07395fbd3h
+dd 020798f72h
+dd 07e30ffdbh
+dd 07918bd02h
+dd 0a71572bbh
+dd 007d84ff7h
+dd 02147c98ch
+dd 07ad382e3h
+dd 04583194ch
+dd 078c4229eh
+dd 05e0dfc1fh
+dd 04457a8a8h
+dd 0b27f5552h
+dd 06058c912h
+dd 0bbd81255h
+dd 04999981bh
+dd 0414ca715h
+dd 030d6aad5h
+dd 0c4d26625h
+dd 030362c5bh
+dd 0bc2dca11h
+dd 08a4eafc7h
+dd 0102316eeh
+dd 08038cf01h
+dd 06f68050dh
+dd 0a9608b99h
+dd 010a3d34eh
+dd 061643e4fh
+dd 01c38310bh
+dd 07023df31h
+dd 06e26b193h
+dd 0316599cbh
+dd 0f1d8136ah
+dd 03b7c2ed4h
+dd 0a97336f3h
+dd 01d12c96bh
+dd 074e336fah
+dd 0ee20f520h
+dd 0c80c370ah
+dd 03d09cd42h
+dd 0ea0d1dc8h
+dd 08b36126bh
+dd 01e2d2c55h
+dd 0a6369796h
+dd 089a3b73eh
+dd 08e322662h
+dd 07b8ed615h
+dd 04c98c38ch
+dd 056d1083dh
+dd 047d6b5c7h
+dd 0e746ef7ch
+dd 0cdc8453dh
+dd 03d05c65ch
+dd 02a1f090eh
+dd 0dbb514feh
+dd 01857477ah
+dd 0cceb47bdh
+dd 0496f70d4h
+dd 0203290f0h
+dd 051a3aa6ah
+dd 0d0630c86h
+dd 02df4ff24h
+dd 08a4a650eh
+dd 09d44cd2ah
+dd 00d9ba8f5h
+dd 0f2a21379h
+dd 05e7617d5h
+dd 08bd761f5h
+dd 00f17451eh
+dd 0512469b5h
+dd 044ea7a37h
+dd 088a2945bh
+dd 083e85ad9h
+dd 090562ff2h
+dd 05394171ch
+dd 0d8584db8h
+dd 042d26231h
+dd 097c00064h
+dd 00f1c0a9eh
+dd 05d25399dh
+dd 0e8b43737h
+dd 0875cd109h
+dd 0cb16248ah
+dd 01bc839f3h
+dd 0f4d87d0fh
+dd 0e4d62614h
+dd 0899b1400h
+dd 0b9248449h
+dd 05d8184b4h
+dd 0e5f1f251h
+dd 09e8cd2d3h
+dd 04c14a49eh
+dd 0d40fa8cch
+dd 0568fc9e1h
+dd 0dbba7bb0h
+dd 041709d00h
+dd 055badbe7h
+dd 095bbd473h
+dd 075f128edh
+dd 005a3eb91h
+dd 029beca42h
+dd 0f1e9fea8h
+dd 01484fb7fh
+dd 05ac9feb9h
+dd 0a61054d0h
+dd 00a62dd0dh
+dd 0ce3608b7h
+dd 0f84a7699h
+dd 0c084a834h
+dd 01f123f91h
+dd 0143111a1h
+dd 0c3eec6c1h
+dd 05c89a4cfh
+dd 0fa68ca7ah
+dd 04d769675h
+dd 030251d67h
+dd 025b5f324h
+dd 05fd1b2c4h
+dd 0c33214a1h
+dd 001969554h
+dd 0f0fc43b6h
+dd 092d641b5h
+dd 01c7b3133h
+dd 0200a515ch
+dd 07b26baa7h
+dd 07c44ee71h
+dd 09dd45d35h
+dd 0bb0c3678h
+dd 05ce9a365h
+dd 0492753e8h
+dd 019034c05h
+dd 0a784a165h
+dd 099a7cba0h
+dd 00728cb95h
+dd 05c72a122h
+dd 0b6f9f441h
+dd 03ca06686h
+dd 0c3dd94edh
+dd 038f33186h
+dd 02cff2513h
+dd 0c527176bh
+dd 00c949274h
+dd 090529ebdh
+dd 02ca73495h
+dd 0edc76d4eh
+dd 0b1d1d29fh
+dd 021052b87h
+dd 0b1fe51bah
+dd 03234df6dh
+dd 08ff092dbh
+dd 0fc951f8ch
+dd 0deb277a5h
+dd 07097b732h
+dd 0be6d9ae7h
+dd 0bf4d68f3h
+dd 0c2d2e6c2h
+dd 0dd53843fh
+dd 03cce5f4bh
+dd 0855a0bc5h
+dd 01985f2f5h
+dd 0ee594d60h
+dd 01ec357a1h
+dd 0fbb5aa0ch
+dd 0650f8ed1h
+dd 0b5b0ced0h
+dd 0a25067cdh
+dd 04eb18349h
+dd 0dba62d04h
+dd 044482862h
+dd 0174e2e8dh
+dd 028da9e88h
+dd 0032e004ch
+dd 05441fbe6h
+dd 079d32a59h
+dd 0c39dc4edh
+dd 05888edf6h
+dd 0209a43ach
+dd 0b0222e1eh
+dd 023d8b2bah
+dd 0331c8798h
+dd 01b7a3b8dh
+dd 028c30ab5h
+dd 0b117e305h
+dd 07bc7a259h
+dd 0920f9a17h
+dd 0ae4588ddh
+dd 008d8520ch
+dd 0ce8b1445h
+dd 02a7bb01ch
+dd 047e1d23bh
+dd 0b1acafefh
+dd 07ae27ca3h
+dd 00f7126feh
+dd 0999832dfh
+dd 0df81b143h
+dd 04bb12350h
+dd 04bd3fc57h
+dd 07033a7b3h
+dd 0e4ed80a0h
+dd 046b232a2h
+dd 04acf3765h
+dd 0ea8b2e7bh
+dd 01ddd0524h
+dd 0f42b75e4h
+dd 08ea3f3beh
+dd 0cd506749h
+dd 042224147h
+dd 013a07305h
+dd 01c85e229h
+dd 0c86da83ch
+dd 0889d5356h
+dd 05d1ef917h
+dd 003d618fch
+dd 09e8dcbd4h
+dd 0e607ab44h
+dd 06d95bd60h
+dd 02df44fdbh
+dd 0971f67d5h
+dd 00c7458b5h
+dd 0ed544006h
+dd 09e4525cdh
+dd 0cffb6959h
+dd 0dbdb75b9h
+dd 0d3b92832h
+dd 048e14d38h
+dd 0a247da2bh
+dd 076253916h
+dd 0a78c115bh
+dd 0d4bb555bh
+dd 09bce5f21h
+dd 05baa90b6h
+dd 001fd682ch
+dd 0a723e989h
+dd 04699a4cdh
+dd 0e142cfb5h
+dd 042fec6c6h
+dd 072b27096h
+dd 094de84ach
+dd 080e8cdadh
+dd 0fc35a639h
+dd 006e8105ah
+dd 06eb4c47dh
+dd 07a338228h
+dd 0fa5caf65h
+dd 0857c3bbfh
+dd 058a49f87h
+dd 00bfd4cb3h
+dd 02dec0fech
+dd 07289d0cch
+dd 080ef421ch
+dd 01467bbd0h
+dd 09298ecf9h
+dd 0856133feh
+dd 0f32a5fdfh
+dd 06e7869e7h
+dd 05e3a29bdh
+dd 0b9bbc479h
+dd 0fda49317h
+dd 0ddd9eb04h
+dd 0f66e560fh
+dd 060e14697h
+dd 07393cb92h
+dd 081f52dd6h
+dd 0ad98685eh
+dd 075a399a9h
+dd 014139074h
+dd 0a2ea3447h
+dd 09712f783h
+dd 0369c625dh
+dd 01ac368f7h
+dd 0e946998ah
+dd 07f2cfcf7h
+dd 053747276h
+dd 015303eafh
+dd 00eff1768h
+dd 01c250937h
+dd 0978828d1h
+dd 0abe78350h
+dd 08bbc5a7dh
+dd 0a29d5fb8h
+dd 0a128c5a0h
+dd 0652fda5ch
+dd 0bbefb969h
+dd 0a0a8e11bh
+dd 03f933c0eh
+dd 018a6ae86h
+dd 0a107ac98h
+dd 010dcb62dh
+dd 065fa4a1eh
+dd 0ce859f64h
+dd 076d4dc23h
+dd 0006d21a9h
+dd 0a6a67c97h
+dd 00f973d7fh
+dd 0a81edf35h
+dd 01eed80f3h
+dd 09fb11c8eh
+dd 031c08269h
+dd 0e2c5c4c7h
+dd 0e9510f28h
+dd 0a49679eah
+dd 00b8ac2bdh
+dd 014865b0bh
+dd 04d66584bh
+dd 0aa7c2d53h
+dd 0e10d0f54h
+dd 0752b1841h
+dd 00daa732bh
+dd 0f294c6d3h
+dd 0ac781c6fh
+dd 01e00e70ah
+dd 031837bfbh
+dd 092f826deh
+dd 0644edb86h
+dd 0d2fd3d50h
+dd 01ae9fb51h
+dd 06a356909h
+dd 07ab2d54fh
+dd 085c3c2f1h
+dd 060214806h
+dd 0cfdc25bch
+dd 0221f3150h
+dd 0fc0549deh
+dd 07d4c8730h
+dd 00c7241a8h
+dd 0119471bfh
+dd 02411dbf3h
+dd 0e917dcc2h
+dd 0e711c917h
+dd 0eb3556cfh
+dd 076321f10h
+dd 06bf66633h
+dd 000516bb3h
+dd 0bb40ca7bh
+dd 0c7f76482h
+dd 0eeff6923h
+dd 087a4677eh
+dd 0b26e6b2ch
+dd 08a003652h
+dd 0f7d20ed7h
+dd 0d9e04d9eh
+dd 0fac95d92h
+dd 038164a56h
+dd 017641640h
+dd 0830b0c8ch
+dd 0764a53e4h
+dd 085493aedh
+dd 0e648a823h
+dd 0ca483ea3h
+dd 0462420d8h
+dd 09279ec34h
+dd 083b9278ch
+dd 022ac0d08h
+dd 0c5e925c8h
+dd 0406d13aah
+dd 0783ed9cch
+dd 0b6154e00h
+dd 019a230a9h
+dd 07a8970d1h
+dd 0ad1e321eh
+dd 001c91221h
+dd 0fb9b6612h
+dd 00d92d2a4h
+dd 0397ee68dh
+dd 066828f47h
+dd 0bdd4e684h
+dd 005e267d5h
+dd 0881b02ebh
+dd 07991d231h
+dd 0fe525970h
+dd 08d875029h
+dd 0e8c1f1e5h
+dd 09a8662d2h
+dd 0106cb69eh
+dd 0ae108789h
+dd 0b2430736h
+dd 016020251h
+dd 005dcc9ddh
+dd 00287a37fh
+dd 05e388794h
+dd 0776db8ddh
+dd 026b8059fh
+dd 05ac22e8ch
+dd 064d2feb4h
+dd 0f1a27d1fh
+dd 0441df2a5h
+dd 07d4444aah
+dd 077982e47h
+dd 02ed39ccch
+dd 0ec3d5e69h
+dd 0dad72a46h
+dd 0673539f8h
+dd 07417ddcah
+dd 09f5f5ebdh
+dd 0cf1689adh
+dd 02b38e625h
+dd 02d07009bh
+dd 071603c35h
+dd 015d62278h
+dd 075cc92b7h
+dd 0178ba187h
+dd 00b70c333h
+dd 0b3c59f87h
+dd 019239684h
+dd 04eccc065h
+dd 0d71cfe51h
+dd 0c30503cfh
+dd 073919868h
+dd 065539a5ah
+dd 0f86b81c8h
+dd 0016ac07ah
+dd 0802142bdh
+dd 013ea48bdh
+dd 09880a237h
+dd 040eac4f4h
+dd 04810e2a4h
+dd 04327db92h
+dd 0139edb5ah
+dd 034ed842eh
+dd 093970ed7h
+dd 04f4214d8h
+dd 0c3db8da9h
+dd 0b82e7fdbh
+dd 05c003ac8h
+dd 0b3fa7e3bh
+dd 0cd913bddh
+dd 08d304d7fh
+dd 0f6419905h
+dd 0e80231c3h
+dd 096a43a65h
+dd 0ca059624h
+dd 0a3bc8ed1h
+dd 059c070d8h
+dd 0b9e37dc5h
+dd 0db6d19cah
+dd 0f19917d8h
+dd 0a1a0f075h
+dd 0fe61a9d4h
+dd 0388d4abbh
+dd 079da3f5fh
+dd 06be05f3fh
+dd 0a45d271ah
+dd 057540b57h
+dd 06a4a1bdfh
+dd 00ee8b1aeh
+dd 06a05a463h
+dd 0d92bde48h
+dd 0fd6881b0h
+dd 0e6ca6652h
+dd 048c11371h
+dd 05cc00882h
+dd 08ae5c86ah
+dd 0df0543f9h
+dd 00f44ac23h
+dd 081b662e8h
+dd 00f537a25h
+dd 0df300180h
+dd 03782e433h
+dd 06a053b75h
+dd 06a87f395h
+dd 009a2a5a8h
+dd 01991788eh
+dd 03c28a3ach
+dd 0e03902a4h
+dd 041d18ceah
+dd 0c6c686b5h
+dd 0b5b30405h
+dd 09f64dbadh
+dd 0616c1af1h
+dd 0889d7f14h
+dd 0478fbb73h
+dd 00509b499h
+dd 04985d18ah
+dd 02bc1ae77h
+dd 0a6462d7eh
+dd 07fe3bb31h
+dd 0ec09b255h
+dd 0f36cdb03h
+dd 01d37f4c4h
+dd 0effa4524h
+dd 0d5c41774h
+dd 042369595h
+dd 0d67e544dh
+dd 00fd1f4c4h
+dd 07b1300e8h
+dd 02bd7600eh
+dd 03c2f18dbh
+dd 0fc0cdd45h
+dd 0486ef8dah
+dd 0d9d0ae1bh
+dd 0495bd579h
+dd 0ab6ed04ch
+dd 07d2464f4h
+dd 0060cd7b1h
+dd 091b64032h
+dd 0e577d7e2h
+dd 07f50325eh
+dd 0fd50db1ch
+dd 00a474974h
+dd 0fae8838dh
+dd 05b13c1c1h
+dd 07b75bd83h
+dd 0b9eedd10h
+dd 053e41f1fh
+dd 018995f8dh
+dd 00427b57fh
+dd 08674681ah
+dd 0728d177dh
+dd 0949dd6bfh
+dd 0519c80e5h
+dd 042fd8afeh
+dd 05b1d086eh
+dd 0149b92e9h
+dd 0984e7872h
+dd 04f087ea5h
+dd 0f3441ee2h
+dd 080bc7af7h
+dd 00165e8a3h
+dd 00ab2f132h
+dd 057c9a489h
+dd 0cd82c9f5h
+dd 0bb062be1h
+dd 08c240bb1h
+dd 06f830b5fh
+dd 06f7526feh
+dd 03c527f2fh
+dd 0fdeca1c5h
+dd 07f45649fh
+dd 0eb104bf0h
+dd 029db5767h
+dd 0106a668ah
+dd 0a9cf4c6dh
+dd 061fce98fh
+dd 001f5eb03h
+dd 096022c95h
+dd 01a7da8d3h
+dd 0d668fcb7h
+dd 033102daah
+dd 0ffee9c54h
+dd 0c39fdcf2h
+dd 0fecd9f39h
+dd 04e731cf9h
+dd 0f2c109f0h
+dd 0baa84d24h
+dd 04cc7b931h
+dd 0d5981c04h
+dd 01df538bah
+dd 00181eb5ch
+dd 0bb1337aah
+dd 0de5b6497h
+dd 042bbcc29h
+dd 03ecb93cah
+dd 045bd909bh
+dd 0f3fee312h
+dd 0d3addccah
+dd 0158238b7h
+dd 069ba85a5h
+dd 0289025c9h
+dd 041a93c66h
+dd 0fe94d25bh
+dd 043963713h
+dd 061451bf7h
+dd 0ae719095h
+dd 050fd7bcah
+dd 006e1ff6eh
+dd 00a870b77h
+dd 08c4f0967h
+dd 04b423db0h
+dd 0b8d0973bh
+dd 0746429edh
+dd 0b531c646h
+dd 020ba79b4h
+dd 0e949b149h
+dd 06cd957d2h
+dd 091016992h
+dd 015f05efch
+dd 082da1a37h
+dd 074cb415eh
+dd 0335c6d2bh
+dd 0c41b738ch
+dd 0920a8837h
+dd 05f6178bfh
+dd 068ad7c09h
+dd 0670e6749h
+dd 05262d15fh
+dd 00d5f0cd6h
+dd 0975c1dd5h
+dd 08425d0cfh
+dd 08ff6d4a3h
+dd 0ccf888d7h
+dd 01e59f5b3h
+dd 07eec151fh
+dd 04dc7b208h
+dd 00ecc40c6h
+dd 0cbc39cfdh
+dd 0c131c111h
+dd 0b009a054h
+dd 0a468daceh
+dd 02e538d69h
+dd 0f9978e7fh
+dd 0525059f8h
+dd 0f8bd8436h
+dd 0e53b2b93h
+dd 03bec6addh
+dd 078f87619h
+dd 0e0ac96e7h
+dd 0f23b6683h
+dd 0f5117313h
+dd 071d07f8fh
+dd 0a2e8cfb0h
+dd 04a0c0177h
+dd 0870de46eh
+dd 09d575f51h
+dd 0383e49bbh
+dd 0e30ccb87h
+dd 09fc55a50h
+dd 0572c87f4h
+dd 079d44af1h
+dd 09610d344h
+dd 07482e11fh
+dd 024b5dcebh
+dd 0e7280ed6h
+dd 03d456dd9h
+dd 0c572ef77h
+dd 00fb938d4h
+dd 06bc47456h
+dd 0cf0ae594h
+dd 073f776aah
+dd 0a6dce0aeh
+dd 092cb4f24h
+dd 05d31dc48h
+dd 07ae8b74bh
+dd 085f2230eh
+dd 050ca908fh
+dd 033e3f940h
+dd 064b48f1ch
+dd 0df9e2f7eh
+dd 05bd75f8dh
+dd 01b7141d6h
+dd 027a4cfcdh
+dd 0e09128e0h
+dd 0214152c4h
+dd 03f934563h
+dd 03ddd1c3eh
+dd 067dde8aah
+dd 08ec33e3bh
+dd 09f3d8d14h
+dd 0fc848816h
+dd 02034f858h
+dd 0177b63ebh
+dd 068f35f67h
+dd 0fc85b4c4h
+dd 04a107f4eh
+dd 04f7cddf3h
+dd 04aa13e86h
+dd 06566d48dh
+dd 05656e3a2h
+dd 0bbd122d3h
+dd 057e195c5h
+dd 0b3f2286bh
+dd 09cec6592h
+dd 0457139b7h
+dd 08fccbdc6h
+dd 07ea77bd7h
+dd 07bfa7623h
+dd 0cb614856h
+dd 013b030c7h
+dd 0ffc4bc5eh
+dd 0e52d865ah
+dd 024eea138h
+dd 06f715ed3h
+dd 0fbc0e136h
+dd 08ddd3a4eh
+dd 009cac651h
+dd 00cfd35f2h
+dd 0996ba05eh
+dd 0ea2c53f8h
+dd 0888575f5h
+dd 0f13c9135h
+dd 03b2f52c9h
+dd 09f3b5003h
+dd 053c36911h
+dd 019934307h
+dd 01804582fh
+dd 0521e5ce2h
+dd 0c7452ef8h
+dd 00be31c3eh
+dd 011ef47e8h
+dd 04ddffb48h
+dd 0eb532afeh
+dd 0e939726fh
+dd 0284fc3b1h
+dd 0baa367b8h
+dd 09b7ccd97h
+dd 0287d76d5h
+dd 0cebbd9a2h
+dd 0e9ac70e0h
+dd 08378186fh
+dd 030ff9d57h
+dd 020525253h
+dd 0d4869f1ah
+dd 0575b0470h
+dd 0a9bdaba0h
+dd 00bfe8468h
+dd 0bfec9de1h
+dd 0d9530432h
+dd 0d492c963h
+dd 0a15e72c6h
+dd 05e5c218bh
+dd 0836febddh
+dd 0688ee694h
+dd 09bad23e8h
+dd 010ca349eh
+dd 041870e6ch
+dd 087df22e7h
+dd 029c9b8cch
+dd 06835e00fh
+dd 0f85cc6b4h
+dd 09da0dc93h
+dd 0b7bec450h
+dd 07c726926h
+dd 0c23f6e25h
+dd 025005660h
+dd 03618c843h
+dd 0f0f2e9ffh
+dd 04ff7f090h
+dd 072bdf56ah
+dd 0c5c41ae4h
+dd 0b4262ef1h
+dd 0eec5c01bh
+dd 06cafbf59h
+dd 05a39311ch
+dd 055c16058h
+dd 052640197h
+dd 00d65fcc2h
+dd 0b82ca833h
+dd 0d44ac187h
+dd 08d3e6934h
+dd 0e534e202h
+dd 000cf981fh
+dd 0d0b8c6cdh
+dd 0c263874ah
+dd 09fccc717h
+dd 054c9043bh
+dd 052f8dc79h
+dd 03658a0b1h
+dd 0301b8d14h
+dd 04eaf8012h
+dd 01c218bb3h
+dd 07ce32466h
+dd 0e446f14bh
+dd 0a62f1256h
+dd 0bb425ddch
+dd 046afa475h
+dd 06ae39a73h
+dd 088ba3edch
+dd 0ebd4c417h
+dd 0972664deh
+dd 07755fc2ch
+dd 018c58ec3h
+dd 04e5981a4h
+dd 09cc19182h
+dd 0da4ccf03h
+dd 0db566e8bh
+dd 042013a99h
+dd 02ed49d45h
+dd 045033ab3h
+dd 05d1c3d8ah
+dd 0adc5d89bh
+dd 02f9edf62h
+dd 0440b63d2h
+dd 0e4db08b7h
+dd 008b7c8cah
+dd 03facda9bh
+dd 0aee7743ch
+dd 037a1d095h
+dd 0673b5c1fh
+dd 06be9b997h
+dd 0e0662cc0h
+dd 0e0ac4247h
+dd 0e0e99d8bh
+dd 0b3ee318dh
+dd 00fcff290h
+dd 059658341h
+dd 014f87fb5h
+dd 0dc85399dh
+dd 0bfc8cb9ch
+dd 0caa1c260h
+dd 0e79c4b77h
+dd 0bd5aa34eh
+dd 01d8aaa0ah
+dd 087631e2dh
+dd 03c1cb2e6h
+dd 06d0bbbe0h
+dd 07fa8e401h
+dd 0c6eced17h
+dd 022454e0ah
+dd 0bfa65726h
+dd 079b5c75eh
+dd 035dd07f7h
+dd 05c3d0a41h
+dd 0a30483a0h
+dd 080322b24h
+dd 0f9a6e989h
+dd 0d3964b8bh
+dd 0f0f3cae9h
+dd 0cdb62502h
+dd 0420abec9h
+dd 02e72674eh
+dd 0537fc842h
+dd 043a06390h
+dd 00638b634h
+dd 02cb9ad8dh
+dd 0f4be0ff5h
+dd 093838212h
+dd 0726adeebh
+dd 0403a112fh
+dd 0cad92bb3h
+dd 0e86be4dbh
+dd 050117ed9h
+dd 074a38c4eh
+dd 0b602dc3fh
+dd 06cbb7396h
+dd 01fc4d77dh
+dd 02c231241h
+dd 0b72721f3h
+dd 0fcf2c074h
+dd 059a0464ah
+dd 0d98adb9ah
+dd 0889283a2h
+dd 00cef2c9dh
+dd 0db6c7137h
+dd 01e10966dh
+dd 0ac5e0466h
+dd 0830a7c52h
+dd 0d3cbfcb7h
+dd 0c86ad739h
+dd 08d39d692h
+dd 0b37e9cd3h
+dd 03ec754c4h
+dd 05835e14eh
+dd 0c29eeed5h
+dd 06c8f26d5h
+dd 00be325bah
+dd 08c428240h
+dd 0112b6f78h
+dd 090f3b820h
+dd 00ebfe4fah
+dd 0f4b86d8eh
+dd 06515dfc8h
+dd 09472d03ah
+dd 07672fedbh
+dd 0b5a9a7bfh
+dd 03c55a131h
+dd 0ada5c94eh
+dd 0e3bbf289h
+dd 0804407a2h
+dd 0d330be53h
+dd 0f923b19fh
+dd 03bd56407h
+dd 02a91de0eh
+dd 0a20ce325h
+dd 0d9c4bfb2h
+dd 084ecc08ah
+dd 094416f9eh
+dd 0a807d2afh
+dd 0d758ad05h
+dd 085f518dfh
+dd 0bf2fc6d3h
+dd 01c97cc7eh
+dd 05b1bb6c6h
+dd 0df3661c5h
+dd 0a83e4972h
+dd 0134049dah
+dd 032dedb8dh
+dd 01e029e8dh
+dd 01e047c4ch
+dd 0bd972e71h
+dd 07fba2961h
+dd 0aee7fc45h
+dd 0c9f22ea7h
+dd 0947a910eh
+dd 01f7f1382h
+dd 0c7f5ca50h
+dd 0fa44ccefh
+dd 04e9d6375h
+dd 05e5f1288h
+dd 0473df1d4h
+dd 078e2a7aeh
+dd 0adb7bb21h
+dd 08837f818h
+dd 089314ccfh
+dd 09f0ee3ebh
+dd 09c76f488h
+dd 077c4542ah
+dd 00c91d86ch
+dd 075aad4d8h
+dd 04f5e9e0fh
+dd 04e0ace61h
+dd 0d20cd11fh
+dd 04bdf8dcah
+dd 0df51d963h
+dd 0a8c71d78h
+dd 025c4dd62h
+dd 004163025h
+dd 0657b506ah
+dd 069db3629h
+dd 0bb662f69h
+dd 0fe6551abh
+dd 02a43d269h
+dd 023634746h
+dd 045100298h
+dd 004db56f4h
+dd 05859dbe6h
+dd 0a511d5beh
+dd 0cd8891e5h
+dd 0dcba26bfh
+dd 01566fe08h
+dd 09f00ea2eh
+dd 06e4660a6h
+dd 0b3ca59f4h
+dd 0876feb5ch
+dd 0e1d48fdch
+dd 01c35a413h
+dd 037d90084h
+dd 03695f585h
+dd 03f6a038ah
+dd 04e1a7b2ch
+dd 015f19498h
+dd 0e665fa31h
+dd 0a891fec7h
+dd 061a1e5feh
+dd 0680e6c27h
+dd 0446df6feh
+dd 0623931ffh
+dd 0dcf241fah
+dd 076161eedh
+dd 0343340a4h
+dd 0cbd72c22h
+dd 033955ce5h
+dd 0594c6650h
+dd 0fa9fb2ffh
+dd 0f4bf7a98h
+dd 0bf5d56bfh
+dd 033caca71h
+dd 01b027c23h
+dd 02fde2b45h
+dd 03605d034h
+dd 013d19d4eh
+dd 0d4da71cah
+dd 0aac5bcc4h
+dd 06cb27314h
+dd 0547bbd01h
+dd 0678f4084h
+dd 06b281c4ah
+dd 041ff4acdh
+dd 0b33a8131h
+dd 0aa03a88dh
+dd 03c9aaa60h
+dd 0a791ef90h
+dd 0a1e15a91h
+dd 06eea2f77h
+dd 0b123fe09h
+dd 0ad939d7fh
+dd 05ca06e87h
+dd 0d995b984h
+dd 038b5e6b8h
+dd 07b92b2c0h
+dd 01d24d7b7h
+dd 0f9fa64b6h
+dd 0e3a8e5cch
+dd 0df83c73eh
+dd 08bae9eaah
+dd 0906c1b29h
+dd 06a96d036h
+dd 02908048ch
+dd 005aae3f3h
+dd 0d285f2f5h
+dd 02f91af32h
+dd 0cc18177bh
+dd 0fd372918h
+dd 099fb5288h
+dd 03e992412h
+dd 0dce9364ch
+dd 0625b399fh
+dd 0ca703829h
+dd 06e9da3c6h
+dd 0b5292d4ch
+dd 0196dd174h
+dd 01d1f78a0h
+dd 00c521651h
+dd 0ea568c73h
+dd 0be10f631h
+dd 0bb739af1h
+dd 06ab2f7d9h
+dd 0f02da751h
+dd 0d57ca47bh
+dd 06ef9c202h
+dd 040c50f93h
+dd 07eb06bb6h
+dd 000af0e1ah
+dd 0b2f643b9h
+dd 033af96e3h
+dd 0aa67d45eh
+dd 03bc4448ch
+dd 0b67022a8h
+dd 0d3927961h
+dd 015430a2fh
+dd 06c215632h
+dd 088267bc3h
+dd 0e50cec3eh
+dd 0a186b8bah
+dd 046e9b776h
+dd 0cd5fe3f0h
+dd 020f36f48h
+dd 0a227987ah
+dd 055b5969eh
+dd 016eca3e8h
+dd 0dc8c47f8h
+dd 04de1fad8h
+dd 0cfc8308ah
+dd 00115e799h
+dd 0b8c9c99fh
+dd 0da972f6dh
+dd 00a9621b4h
+dd 0e53207a5h
+dd 0d86a24f1h
+dd 04e05f294h
+dd 0448754cdh
+dd 013a7844ch
+dd 02ed261f3h
+dd 0a6aec65bh
+dd 05d70720bh
+dd 0276cdf31h
+dd 0a13ee4f7h
+dd 08b895c46h
+dd 01c5a91eeh
+dd 0dd58b5ddh
+dd 0ba6c4c45h
+dd 011db5d6fh
+dd 0cbbf5aa5h
+dd 0863a2750h
+dd 0a79a0e87h
+dd 0c8aebab1h
+dd 06dc5c6bfh
+dd 074f6d187h
+dd 01939d7efh
+dd 0e1d6179ch
+dd 05b36d285h
+dd 0a9e88230h
+dd 0a742867fh
+dd 0854e38c9h
+dd 0504767d5h
+dd 044f31b1ch
+dd 0a0a75dd1h
+dd 0bde52985h
+dd 051aae66ah
+dd 0a41789b1h
+dd 03aaca68fh
+dd 016c845e3h
+dd 05ba7a7f1h
+dd 0e62772f7h
+dd 0fdd391d8h
+dd 0fe18407eh
+dd 0407c6f4fh
+dd 07f93df8fh
+dd 06a83b5edh
+dd 0a00c7728h
+dd 096aea4c5h
+dd 08e5c8999h
+dd 0133b8b08h
+dd 0d80bf930h
+dd 01f295903h
+dd 0e510eb98h
+dd 0817a8b11h
+dd 07bb91376h
+dd 07f3cba8bh
+dd 0f14b2338h
+dd 0aa6f1ed6h
+dd 01b9dfab8h
+dd 026424feah
+dd 0b1f5be45h
+dd 006df4bebh
+dd 00b2b63c7h
+dd 0238bf1b7h
+dd 04b1af7feh
+dd 06cd065ceh
+dd 08e815bcbh
+dd 0b23d62c0h
+dd 091c225feh
+dd 0be874437h
+dd 093896607h
+dd 0baa823b1h
+dd 0981f4910h
+dd 0f16d5ac7h
+dd 007ee20d5h
+dd 07c165090h
+dd 03b66d7bah
+dd 05a908618h
+dd 05739fa97h
+dd 0b98a3ed0h
+dd 07c8d9624h
+dd 03becb9b2h
+dd 056de1f15h
+dd 07a17d559h
+dd 0c6e53f24h
+dd 006474c90h
+dd 06e9952c2h
+dd 016482629h
+dd 037cd6f7ah
+dd 0d9314852h
+dd 0c8e2bbe8h
+dd 07b9645abh
+dd 0c42322c4h
+dd 0fa500867h
+dd 0fd6d09b3h
+dd 0440dcd24h
+dd 073a1a969h
+dd 0727d577ch
+dd 0b677eaa1h
+dd 0b40aae00h
+dd 08d84c22ch
+dd 0085a71c7h
+dd 035b085e8h
+dd 0af4871f5h
+dd 0ed4356dah
+dd 02055a650h
+dd 00020f70bh
+dd 0aad886d7h
+dd 093a0bac4h
+dd 0d90ee3a2h
+dd 0dadeec9fh
+dd 0931a9fa2h
+dd 0604c7c24h
+dd 0479d3c84h
+dd 04bf69784h
+dd 0bac89630h
+dd 0348f872fh
+dd 097b2865fh
+dd 00825f622h
+dd 049453901h
+dd 0361c24fah
+dd 0957d75aah
+dd 0a6a8744ah
+dd 0cbe800a0h
+dd 04c529493h
+dd 06d4fc2dfh
+dd 00e1b9a5ch
+dd 072751dfbh
+dd 0f901c203h
+dd 0f6628a12h
+dd 0791ac3d1h
+dd 0a9e565ach
+dd 06a02862ah
+dd 021a8bc06h
+dd 023b944f6h
+dd 04522f020h
+dd 0533274b9h
+dd 05fcd4831h
+dd 065cec700h
+dd 0099afc5fh
+dd 07dacd9b7h
+dd 01d078c0dh
+dd 06d5205e2h
+dd 02672f7fch
+dd 031ea8e44h
+dd 0822c2653h
+dd 0752e405fh
+dd 0a8e1dc35h
+dd 016a0be2ah
+dd 05acb90eeh
+dd 061aa798ch
+dd 01d2889d5h
+dd 0503341e2h
+dd 0b5e80c51h
+dd 025fd7c81h
+dd 0d75cfe32h
+dd 05f267adch
+dd 0139b7f26h
+dd 03277781bh
+dd 0b8312bc8h
+dd 018db01bdh
+dd 07d8bcb5dh
+dd 0f24fd0dbh
+dd 0a4b86e49h
+dd 0c0398d34h
+dd 06cbdb343h
+dd 0a1a88370h
+dd 0d78fb249h
+dd 06902bfdah
+dd 02c5f875ah
+dd 00fe86855h
+dd 08445c8c1h
+dd 0f99a3c34h
+dd 0b56fc6d5h
+dd 044940f9fh
+dd 09ea3d19ah
+dd 0ec9cdbdah
+dd 0c92733a6h
+dd 0b619622eh
+dd 0c17a62b8h
+dd 0703105dbh
+dd 0536e3c3bh
+dd 0c0433093h
+dd 0ed3e5ec4h
+dd 002e8145ah
+dd 0fed183fdh
+dd 052941a8eh
+dd 0ef8de681h
+dd 0e97819e1h
+dd 0c688c700h
+dd 031ec6aach
+dd 05a98b895h
+dd 098166609h
+dd 0c988a3c3h
+dd 0dea6c52eh
+dd 02c7123adh
+dd 0b78ca0feh
+dd 073891f38h
+dd 0ef8bc773h
+dd 0d6bcebdfh
+dd 02d786ce3h
+dd 0721fd315h
+dd 04b730038h
+dd 051fd027bh
+dd 0d5590151h
+dd 0f7e63209h
+dd 099897c29h
+dd 09dfee55bh
+dd 029c781efh
+dd 0573de164h
+dd 0560b2fa6h
+dd 044702e65h
+dd 01fe7f9f5h
+dd 0d6878ba0h
+dd 0a22d80c9h
+dd 0c872fc3ch
+dd 04a450e4ah
+dd 018f6889ch
+dd 070077ea2h
+dd 0c4672e26h
+dd 032390ceah
+dd 0d6dcc145h
+dd 0290d2c82h
+dd 09bf8c905h
+dd 032098437h
+dd 0981aaf67h
+dd 07982e9ach
+dd 0059ed2a3h
+dd 08cbf8d59h
+dd 01c50c8a6h
+dd 02e50083dh
+dd 0ff19e2b6h
+dd 0c1414508h
+dd 00d890d75h
+dd 081f6e061h
+dd 0ff0bf957h
+dd 0aeb3ee8dh
+dd 09eb3cfb6h
+dd 0a6f06758h
+dd 0a1ce4a9fh
+dd 07bcbfcfah
+dd 056f4fa82h
+dd 0a55956c6h
+dd 078f92654h
+dd 054a78d75h
+dd 0e6ee144ah
+dd 08a1f0bcfh
+dd 01c41e8f4h
+dd 0c145ace2h
+dd 023fd0f99h
+dd 0faa1e402h
+dd 0b16ede8fh
+dd 033a32626h
+dd 006e6ff76h
+dd 0e1557628h
+dd 0c930b618h
+dd 025f45ed4h
+dd 062b88407h
+dd 0fa0d1088h
+dd 09d65e410h
+dd 0d650b06ah
+dd 01c4ad8dbh
+dd 070faae2ah
+dd 0db13066eh
+dd 059a56d68h
+dd 0adce63b0h
+dd 0264e5d4eh
+dd 05a2d4cdch
+dd 0fb86d35dh
+dd 048fce2e7h
+dd 037b5eeaah
+dd 0812d3db8h
+dd 065ecfcc1h
+dd 0e383b579h
+dd 0f8dfb1bfh
+dd 072cf451bh
+dd 0ca6addcah
+dd 0640da822h
+dd 041faac43h
+dd 0e52b054ah
+dd 0f6406509h
+dd 02d360a56h
+dd 07e81950ch
+dd 0db3935b4h
+dd 0fa8df83bh
+dd 09264a32ah
+dd 0258101a2h
+dd 0c31d06d7h
+dd 05959ef17h
+dd 001fbc960h
+dd 06613626fh
+dd 024342bc8h
+dd 0cafbeda8h
+dd 0e79fd7fch
+dd 04915f6bdh
+dd 0da443984h
+dd 0c27a1c22h
+dd 0b174ce1bh
+dd 08064b620h
+dd 07d600642h
+dd 045bfb83ch
+dd 072a200e6h
+dd 0ae24dde5h
+dd 0795d1e62h
+dd 0c8de8280h
+dd 0fa78e3efh
+dd 0e3c3b1a1h
+dd 0edde9dbah
+dd 023abdd1eh
+dd 084fc9137h
+dd 08de78e01h
+dd 0705cea5bh
+dd 0c973cc23h
+dd 028ce71b5h
+dd 0255b626fh
+dd 028b12307h
+dd 0de971939h
+dd 0ca952636h
+dd 04ca52146h
+dd 0f10c4001h
+dd 0ce433845h
+dd 03e71c2bdh
+dd 030fade7eh
+dd 0884942e6h
+dd 084a1db7ah
+dd 0ae25c3e5h
+dd 055948f25h
+dd 0d126e0bch
+dd 068262cd2h
+dd 0b0e16fdeh
+dd 034b49b14h
+dd 0c6be8f5ah
+dd 0bae91cf6h
+dd 079008600h
+dd 03cd8d1a9h
+dd 0b750e5e8h
+dd 0002761fch
+dd 01b036910h
+dd 02add636fh
+dd 0c035a51ch
+dd 0814af297h
+dd 0caaa2bc1h
+dd 0c522e208h
+dd 0b786f64fh
+dd 029301c8fh
+dd 08b0724fdh
+dd 075e38ac6h
+dd 0faed94bfh
+dd 030898caeh
+dd 0cdb9fdf6h
+dd 03f6237b8h
+dd 0cf790384h
+dd 0686cf16ch
+dd 0cbe8622ch
+dd 01c87d222h
+dd 0468c06f7h
+dd 02493ef04h
+dd 0c084a3cah
+dd 0bb232ea0h
+dd 0d14cf6b8h
+dd 0eee4a6c8h
+dd 03fef2419h
+dd 01bf07b7dh
+dd 009fda77eh
+dd 0af2008dbh
+dd 0401f49ddh
+dd 097fbe5dah
+dd 03852fa59h
+dd 0d7e59a9ah
+dd 0bdc336e6h
+dd 04b1d03cch
+dd 0bc945821h
+dd 0be6a906bh
+dd 0da22b324h
+dd 0e99b0b8eh
+dd 05e27ab28h
+dd 054933eb9h
+dd 0018cdf07h
+dd 06d31214fh
+dd 009cf9078h
+dd 0b44d4648h
+dd 06fc2ad03h
+dd 03ffa1660h
+dd 0a8bed62fh
+dd 05d462735h
+dd 0179b3472h
+dd 0be2067b4h
+dd 00e4f8fbbh
+dd 00477ec47h
+dd 0d6b65b37h
+dd 0362475f1h
+dd 010e23819h
+dd 0511c2e64h
+dd 05d2980dah
+dd 0b6391a9bh
+dd 05872cb42h
+dd 0fc02a755h
+dd 05160eb00h
+dd 06c1732fch
+dd 09694ba77h
+dd 0134d1824h
+dd 0849b646eh
+dd 04f08b7e7h
+dd 0f7271f22h
+dd 0591c20c3h
+dd 043cf270fh
+dd 051517d7ch
+dd 02be2b05eh
+dd 020b75dceh
+dd 020d30194h
+dd 07118b067h
+dd 049683879h
+dd 0fa20fd87h
+dd 0b30c6ab9h
+dd 0466bae74h
+dd 06eae9cf5h
+dd 01e307768h
+dd 03c17cf38h
+dd 0f215d14dh
+dd 0dddbc8dah
+dd 06ab133f0h
+dd 0182675f7h
+dd 099583cc3h
+dd 0e7d6ec64h
+dd 06207457ch
+dd 07cf69512h
+dd 0b2c5dc06h
+dd 01334f75ch
+dd 089559453h
+dd 0eba4a69eh
+dd 0e3bf1793h
+dd 01c513da6h
+dd 0f34ffa37h
+dd 047cbfa78h
+dd 04966d7dch
+dd 0d5a698d1h
+dd 000044728h
+dd 089ac0e63h
+dd 032f406d6h
+dd 013b69ec0h
+dd 082602b2ah
+dd 07640423ah
+dd 0d6db87f8h
+dd 0032197a2h
+dd 0e13b7c25h
+dd 0d485e326h
+dd 08d0d6261h
+dd 0c2b757e4h
+dd 0dd195752h
+dd 00e61a2f2h
+dd 0674d9a29h
+dd 0fea434ceh
+dd 0100f00beh
+dd 027e0e700h
+dd 0608dd811h
+dd 0e9fbabefh
+dd 05b5b9ac7h
+dd 087c0bd71h
+dd 06f8b0d12h
+dd 0eb4b7591h
+dd 0cdb117b0h
+dd 008751592h
+dd 02e408590h
+dd 0c4f51ed3h
+dd 0be42dea9h
+dd 01a28bc96h
+dd 0e3e53321h
+dd 00d815d2bh
+dd 016fd2fe9h
+dd 02e604020h
+dd 02898142ah
+dd 0401abf62h
+dd 0189f24b7h
+dd 08e4c8b43h
+dd 06ccffddch
+dd 0d4e86654h
+dd 0207ddf79h
+dd 04eda10eah
+dd 01a414435h
+dd 0fe0eee03h
+dd 0172a5b2eh
+dd 0221fb3c8h
+dd 025e9e910h
+dd 01862b7cbh
+dd 0a667bcech
+dd 026b6df52h
+dd 02b41658eh
+dd 0db3926c4h
+dd 05ef14f45h
+dd 0ec1d5e58h
+dd 089e5233bh
+dd 0ecd39e96h
+dd 06226759eh
+dd 0612bf63fh
+dd 0053a44b5h
+dd 0494a465bh
+dd 0498c24f3h
+dd 05234e9fch
+dd 0e8c658e7h
+dd 0b00ace56h
+dd 040cad084h
+dd 0b76faf47h
+dd 0c04f01eeh
+dd 01a2bde81h
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679907.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679907.inc
new file mode 100644
index 0000000..b6a7afd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0130679907.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 000000907h ; Patch ID
+dd 011142015h ; DATE
+dd 000030679h ; CPUID
+dd 01bb67b21h ; Checksum
+dd 000000001h ; Loader Version
+dd 000000001h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 000000907h
+dd 000000000h
+dd 000000000h
+dd 020151113h
+dd 000003201h
+dd 000000001h
+dd 000030679h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 09ff20397h
+dd 05cd6681ch
+dd 058f8151fh
+dd 0f4374211h
+dd 072d1f8feh
+dd 09d5a3b36h
+dd 0719e3d4ch
+dd 0a068ff13h
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 06772e846h
+dd 065b29d7ch
+dd 0e524c84ah
+dd 0c553ed94h
+dd 081bf1b4bh
+dd 0a84d1a24h
+dd 066d8c5c3h
+dd 0ed6e6d18h
+dd 092501ebah
+dd 07c67193dh
+dd 07d6fb582h
+dd 006d5d495h
+dd 0b2bfcbdch
+dd 078e96bdch
+dd 064be6d41h
+dd 022ce91e5h
+dd 036769802h
+dd 076828544h
+dd 09a72e3fbh
+dd 07f7642eeh
+dd 09f6315b4h
+dd 0729b95bch
+dd 0ec9b91a6h
+dd 0c5d0e2b9h
+dd 09ce3b12fh
+dd 00ae2ba1eh
+dd 01ae23c9ah
+dd 00622f7ebh
+dd 03cd72040h
+dd 0ff4c6792h
+dd 08d7b60bch
+dd 0c08d8d48h
+dd 035f4d6d1h
+dd 01ceee339h
+dd 07850d61eh
+dd 0887a7d96h
+dd 03b9f1baah
+dd 0fe8b2438h
+dd 0b2aea0b8h
+dd 0fb348e3bh
+dd 0e548dd86h
+dd 032747d88h
+dd 0af3f3a3ah
+dd 0026255ech
+dd 057e4eb50h
+dd 0bfb97676h
+dd 0b00446e8h
+dd 07ea126cbh
+dd 05540c952h
+dd 018d6396bh
+dd 0dc632da8h
+dd 0fdca83f5h
+dd 04e7d1032h
+dd 0e8aed571h
+dd 0f25659adh
+dd 017e858adh
+dd 0b362dab6h
+dd 0323ed666h
+dd 0c73ba100h
+dd 0633e2371h
+dd 09df76e32h
+dd 066f93c2eh
+dd 03088b092h
+dd 03e3bbe42h
+dd 0d50599d4h
+dd 0726a8b63h
+dd 0bf8caabeh
+dd 0f8a0285fh
+dd 08d5710ffh
+dd 013d2a259h
+dd 000bc1929h
+dd 07c8c3961h
+dd 0e365082ah
+dd 08229a4f1h
+dd 08449e2a1h
+dd 0c6d63422h
+dd 013a0a9d6h
+dd 0470c7479h
+dd 02051cd56h
+dd 09e27bbc4h
+dd 019157d70h
+dd 05d44b033h
+dd 014e63baeh
+dd 09c5c3d3ch
+dd 0a915b16eh
+dd 0bd5c2d4ah
+dd 072827158h
+dd 092ac01eah
+dd 03e8d6e8ah
+dd 05a31c4adh
+dd 04501bac6h
+dd 0ac3a3652h
+dd 05ebc6049h
+dd 0826fa656h
+dd 0e9ea06dbh
+dd 035c1f5bch
+dd 0a83995d5h
+dd 06fc5687bh
+dd 09cbe98e2h
+dd 09ac1c38ah
+dd 0eafb2839h
+dd 0abf2724ah
+dd 072ec32beh
+dd 034b92859h
+dd 028ff566bh
+dd 08ec7f2c8h
+dd 0ee68d197h
+dd 010193843h
+dd 04e4292a5h
+dd 0a8e04ab1h
+dd 0a824f746h
+dd 03b97d8deh
+dd 0a200919fh
+dd 0b6b2cbd7h
+dd 07371b52dh
+dd 0ffd77f21h
+dd 087305fa8h
+dd 02e19239eh
+dd 0310f8affh
+dd 0bfddf186h
+dd 02deae0cah
+dd 0a19105cdh
+dd 027387310h
+dd 010f05817h
+dd 08db4bf38h
+dd 0d480ecc0h
+dd 09476493ah
+dd 04a7b2ce8h
+dd 02a8a1af2h
+dd 06f86bac4h
+dd 0d8be8fc8h
+dd 0f8a0e9e0h
+dd 00867ba60h
+dd 0cf95fe73h
+dd 01fb5fa46h
+dd 00fc834abh
+dd 033bd06cdh
+dd 0b53ae2deh
+dd 0535640bbh
+dd 0e8d74879h
+dd 0193e7188h
+dd 0457650f3h
+dd 08e93cfc6h
+dd 0edf290a6h
+dd 0af3e60a1h
+dd 01a8d6871h
+dd 057a0c92fh
+dd 035d68834h
+dd 082aa8e5fh
+dd 0bec43a5ch
+dd 0698f5ae1h
+dd 09e722104h
+dd 0b0bf7dfeh
+dd 072c6b65fh
+dd 06d9cc599h
+dd 0b89aeb2fh
+dd 0041a830eh
+dd 0eb418a1ch
+dd 063a9bde3h
+dd 04731c5cah
+dd 0bb54a1e6h
+dd 01582d41dh
+dd 02ed6fee0h
+dd 06322bcd0h
+dd 0125f0d82h
+dd 0f49ddfc3h
+dd 0688a975ch
+dd 075d2a6d4h
+dd 0d62575aah
+dd 0a5917c9eh
+dd 01f6105adh
+dd 0ec96a88fh
+dd 02c2d009dh
+dd 04200f506h
+dd 0cc735cb0h
+dd 0f3a66223h
+dd 0ad87dbb1h
+dd 00c39082eh
+dd 083d127b8h
+dd 097fc59bah
+dd 096597f9ch
+dd 0b945665ah
+dd 0b21ff57fh
+dd 0552b8b5fh
+dd 07d3ed0bdh
+dd 0c6d87e0dh
+dd 035dd6804h
+dd 02c33324ah
+dd 0d6f92afch
+dd 07647a133h
+dd 0a78d0b5ah
+dd 0c3a178d2h
+dd 032dff4d3h
+dd 096ce6ef0h
+dd 04474bf08h
+dd 0fc7610ebh
+dd 04c60c67ah
+dd 0a9a11088h
+dd 094009264h
+dd 06b35680eh
+dd 0303775efh
+dd 0c3905a9eh
+dd 0cfc050d0h
+dd 06813c180h
+dd 0eb4d3337h
+dd 0cb8b759ah
+dd 07f67506ah
+dd 0a5cb91e0h
+dd 0204d575eh
+dd 0da8607ceh
+dd 0a78cace8h
+dd 064c38cb0h
+dd 00dec9d59h
+dd 0c1905075h
+dd 0a182b8deh
+dd 0b9e341dbh
+dd 00a55ea5bh
+dd 0e6cf8f58h
+dd 0a6fd472fh
+dd 04057533ch
+dd 0a1f71eb0h
+dd 091833141h
+dd 0aade7395h
+dd 0be9c043bh
+dd 0ca8b4abah
+dd 0900a0fc7h
+dd 011d053e3h
+dd 0ae3c4979h
+dd 01dd61bb4h
+dd 056d573bbh
+dd 0ac7bfe08h
+dd 0684921d8h
+dd 0585cfda6h
+dd 0263e0fb9h
+dd 008f37473h
+dd 0b76fd6d9h
+dd 02288db23h
+dd 001771f1bh
+dd 0367c55bbh
+dd 0733d57d8h
+dd 0a7afcfach
+dd 075db5c24h
+dd 0a4e633d6h
+dd 013ce3c62h
+dd 079131bffh
+dd 071b38e06h
+dd 0da1f4b63h
+dd 0f587d188h
+dd 0cd4c52c7h
+dd 0f97f904fh
+dd 0c69eed65h
+dd 095f9f990h
+dd 071e6e5ffh
+dd 0ffe678eeh
+dd 06857aa48h
+dd 0d401541dh
+dd 037591276h
+dd 06b9f82dah
+dd 0abf66670h
+dd 066996535h
+dd 05029bf59h
+dd 0c39431feh
+dd 0ec28e993h
+dd 06a82ea94h
+dd 00e242f25h
+dd 0383129f8h
+dd 0a1569cbdh
+dd 0696d976dh
+dd 00bbbc200h
+dd 050fae2efh
+dd 0d2918371h
+dd 0486585c2h
+dd 0dc8537bah
+dd 0b78b4f59h
+dd 0a0e0a332h
+dd 0df9cacd4h
+dd 0c43eeebdh
+dd 0c5d61e0ch
+dd 0ddb1d25ch
+dd 0e8afd89bh
+dd 0fab89855h
+dd 00f709988h
+dd 07912b1e5h
+dd 0f5efc16bh
+dd 0cd8b4881h
+dd 00fbd6600h
+dd 0c241a081h
+dd 032dbe1b8h
+dd 0100df0d6h
+dd 029f9c953h
+dd 0067453bfh
+dd 0b9750ee9h
+dd 02a544628h
+dd 0841211f8h
+dd 0258d446fh
+dd 0443c30b9h
+dd 0be77ce73h
+dd 0f6879131h
+dd 00184a32fh
+dd 05c51e16ch
+dd 09b810a88h
+dd 0d97b8ff1h
+dd 004e37549h
+dd 0680a537fh
+dd 0fe0953a1h
+dd 05fcf2c5dh
+dd 0b28813fah
+dd 07c2ebc5ah
+dd 0968250d7h
+dd 07f02ab90h
+dd 02500d01eh
+dd 01939ad67h
+dd 0cb910104h
+dd 0ca50276fh
+dd 0da231e37h
+dd 0f2e19c21h
+dd 05f68942ah
+dd 01aa131f4h
+dd 06c913a8fh
+dd 01dd0ad83h
+dd 062c1b715h
+dd 038a6fbc5h
+dd 0261623c9h
+dd 0eb4141c4h
+dd 0381876ebh
+dd 0d31060f5h
+dd 0640b37edh
+dd 01f295c3dh
+dd 06d139d36h
+dd 08f56eb64h
+dd 004fbc2f0h
+dd 0fc08c91ah
+dd 0ecda6752h
+dd 00b7cb772h
+dd 09820d79bh
+dd 014595090h
+dd 0e030b10ah
+dd 065ccd4e9h
+dd 019a14138h
+dd 005781049h
+dd 09b8a4d10h
+dd 0b4328494h
+dd 0b4acd9a4h
+dd 0db8b7001h
+dd 0757b8633h
+dd 0f463ed77h
+dd 0dfd6596ch
+dd 01690f86fh
+dd 01fd540e1h
+dd 04db655fdh
+dd 0d20e262fh
+dd 0d07bb9f5h
+dd 0708b274ah
+dd 05235bcfeh
+dd 0c7b72a40h
+dd 0333e561ch
+dd 0843106deh
+dd 0b162e832h
+dd 07d9efd56h
+dd 0a320c38ch
+dd 028d61a38h
+dd 0ae536073h
+dd 000354d8ah
+dd 03482f59ah
+dd 01c384f9ah
+dd 0a8cd4924h
+dd 0ab08dc8bh
+dd 0f16528e0h
+dd 0994138e5h
+dd 08d798dbch
+dd 0be39756eh
+dd 076043dbch
+dd 0ee350d7eh
+dd 024bef88bh
+dd 024f1a1feh
+dd 0bf0036c9h
+dd 024155e05h
+dd 05c692e4dh
+dd 01dbea48ch
+dd 0d14965f5h
+dd 06ea610b6h
+dd 01d4f64f9h
+dd 0c71fc272h
+dd 0f4685c32h
+dd 05d99467eh
+dd 0b494e498h
+dd 096370fb8h
+dd 0b08ba563h
+dd 0cc8d91c0h
+dd 03dece190h
+dd 0bc69da02h
+dd 02c3cd048h
+dd 0d710f050h
+dd 0efc8334eh
+dd 0fcba6838h
+dd 003b2bba1h
+dd 0d0fa9869h
+dd 054e8c169h
+dd 0a8c561ddh
+dd 0435cae1eh
+dd 0f6245a32h
+dd 0271ccdcch
+dd 020176c28h
+dd 0870bb9e4h
+dd 054579daeh
+dd 01b5cd835h
+dd 0717cea6dh
+dd 02d618f52h
+dd 019e0c87bh
+dd 020a55445h
+dd 0b124f206h
+dd 00e6a958fh
+dd 0dbbd4634h
+dd 05b66e305h
+dd 06de28bf7h
+dd 02b3287fch
+dd 0f80918edh
+dd 09e4c0bb0h
+dd 0021b73adh
+dd 0b01bcc36h
+dd 074e2563eh
+dd 03a88efe1h
+dd 0cfc2c607h
+dd 0a95d0586h
+dd 06d2b3db4h
+dd 0d130405eh
+dd 01909a6b4h
+dd 04c5512bch
+dd 0d24d1f0ch
+dd 0beeefe1ch
+dd 021eb211ch
+dd 0652e7132h
+dd 032d29147h
+dd 0cb3b5de3h
+dd 0b52996e0h
+dd 00c7fa034h
+dd 0c1cf2042h
+dd 053e3b5f6h
+dd 07ba7db1dh
+dd 098eb9c1fh
+dd 033dbf178h
+dd 0d5dc4496h
+dd 0b97b09afh
+dd 0bd836a06h
+dd 077ecbadeh
+dd 05422c8f2h
+dd 08770dc29h
+dd 0d08a78beh
+dd 02c777963h
+dd 0f09ff310h
+dd 0b5583422h
+dd 01a30d528h
+dd 03fce4cd7h
+dd 0e36f5addh
+dd 0fce10784h
+dd 0b84d7d3ah
+dd 07df8e002h
+dd 00b33c1c3h
+dd 0f290492ch
+dd 0ca5c7350h
+dd 02f5de4b9h
+dd 076c2c863h
+dd 068510bfeh
+dd 00d35547ch
+dd 0935cb00ch
+dd 0b17f24eeh
+dd 010c6a240h
+dd 05a0fa022h
+dd 0a61d4ddbh
+dd 08fa88620h
+dd 09631fad9h
+dd 0c7b14c9dh
+dd 00a0fd459h
+dd 0be9422f5h
+dd 00f5d8dbch
+dd 07e8bd9eah
+dd 0dcf31fd3h
+dd 02c63324eh
+dd 0536683b9h
+dd 0e327e2eah
+dd 0f74c331eh
+dd 08791eee5h
+dd 0d85d9d47h
+dd 0a833f7adh
+dd 0efa7c012h
+dd 0497230e8h
+dd 010f2728dh
+dd 071e23633h
+dd 0a02dc1bch
+dd 0292ed5b8h
+dd 0ae464ae9h
+dd 0b4aa2659h
+dd 0809d927ah
+dd 0d9dcac60h
+dd 05e693190h
+dd 006472476h
+dd 05b99c348h
+dd 06c96f917h
+dd 0f0301a3ch
+dd 02da4c050h
+dd 07865e54ah
+dd 0abd4811ah
+dd 02ec89513h
+dd 066c392dfh
+dd 0ac88a190h
+dd 04936f8e2h
+dd 06d679656h
+dd 0a97b507ah
+dd 0abe0f045h
+dd 0bba9682dh
+dd 04e0bd565h
+dd 07cfa84a6h
+dd 0354aa063h
+dd 0ede4730fh
+dd 04cda5918h
+dd 0aafe2d24h
+dd 05f81a2ffh
+dd 0a2ffe504h
+dd 00c5dd530h
+dd 055bc9b55h
+dd 06a718be6h
+dd 0a507cb7dh
+dd 03ec4d3b1h
+dd 042c11b5bh
+dd 008656577h
+dd 0a7d2035fh
+dd 0861cc213h
+dd 04af78b00h
+dd 0f1bbf5e2h
+dd 0bea9e8aeh
+dd 0423dd39bh
+dd 0bda85a43h
+dd 08d958f9eh
+dd 06d567a4ah
+dd 0b456235bh
+dd 0c74fe34bh
+dd 0f7873fach
+dd 0fefb2075h
+dd 0fe4a1f35h
+dd 00d6a4767h
+dd 0888ed164h
+dd 0709dbd71h
+dd 0b6e4a29dh
+dd 0c011c6e7h
+dd 03cf109f0h
+dd 01986b98eh
+dd 0bf2cc274h
+dd 0ce409ffeh
+dd 09c4c8623h
+dd 07b77d7a0h
+dd 0f8bc87ffh
+dd 00b3b2ee4h
+dd 055e87f9ch
+dd 0f35c36fbh
+dd 00070e80ah
+dd 061845539h
+dd 022e97f5ah
+dd 06c61fb52h
+dd 0e86aee1dh
+dd 00c550c43h
+dd 02a53300ah
+dd 049314087h
+dd 0c5a408b7h
+dd 066f41fcch
+dd 0a959cacfh
+dd 0bdb043d7h
+dd 084f4e0a7h
+dd 0dde37e6eh
+dd 0e419f9d5h
+dd 059fc1590h
+dd 0fd66b539h
+dd 0ca253fddh
+dd 04167fc8dh
+dd 018d97991h
+dd 088d308cfh
+dd 058b023e5h
+dd 0e907440ch
+dd 03862ae25h
+dd 00bcfe9afh
+dd 07a9ec29fh
+dd 03d826c23h
+dd 038dd7a60h
+dd 032fd3388h
+dd 0260dc621h
+dd 065e22d36h
+dd 003a5bfb6h
+dd 04ee427bdh
+dd 036f86b5bh
+dd 07452d3e0h
+dd 08f90e7ebh
+dd 09c6c077eh
+dd 04eeb4aa3h
+dd 0f0982864h
+dd 0071a7ec8h
+dd 0b187da9bh
+dd 046f72137h
+dd 07fecc165h
+dd 0a8e80a3dh
+dd 008b01531h
+dd 0a6561acbh
+dd 0046da7d1h
+dd 07f1bcdfah
+dd 04a7453e5h
+dd 0332c7f05h
+dd 0ffeeca13h
+dd 084589c20h
+dd 08d1b21c3h
+dd 0d2818c5ah
+dd 00ccc591eh
+dd 0602fb4e7h
+dd 068c00f51h
+dd 05dfa00d2h
+dd 001321923h
+dd 0e04f531eh
+dd 0b83720cfh
+dd 0fcd46b6bh
+dd 0c3948e3eh
+dd 08ad3e1dbh
+dd 071587d59h
+dd 0e12901ech
+dd 05394beb3h
+dd 0f2f900a4h
+dd 0f99fe16ch
+dd 0f9879125h
+dd 08b70ec24h
+dd 013f4c55fh
+dd 069897c84h
+dd 0ec3fcf9fh
+dd 0ab18ff0ch
+dd 08da7ef4ch
+dd 0046a2635h
+dd 03318e8beh
+dd 0584f6332h
+dd 0dcc8a7c9h
+dd 0e7284f61h
+dd 0e1acd54dh
+dd 02602fc15h
+dd 0a54a8b3fh
+dd 056606005h
+dd 0f1a3b5bdh
+dd 0b9101e85h
+dd 0e553602ah
+dd 08561f96dh
+dd 08ccfd92ch
+dd 044148de2h
+dd 0ea9dd708h
+dd 0611eda18h
+dd 0fc5099b5h
+dd 099c6c8bbh
+dd 02e9743aeh
+dd 0dd230092h
+dd 0a78c0013h
+dd 01769b354h
+dd 02cbb5aa3h
+dd 02b4b98d4h
+dd 0d6836060h
+dd 0bbda494eh
+dd 09da52b37h
+dd 0b47b0f38h
+dd 0601286ebh
+dd 0b538057fh
+dd 08e4969efh
+dd 0b8c8ba83h
+dd 097d64423h
+dd 08b9a784fh
+dd 057b0982dh
+dd 03cee944eh
+dd 0ee7f3d98h
+dd 0469be4aeh
+dd 0cc7dde00h
+dd 07828c594h
+dd 054379e6fh
+dd 0b9b9f4aeh
+dd 019ee466bh
+dd 0e40fb1ddh
+dd 09042d20dh
+dd 0af08f708h
+dd 09be3b23fh
+dd 009e9ac3dh
+dd 054878384h
+dd 0b09b1494h
+dd 074b85923h
+dd 01f22094eh
+dd 01df86ea5h
+dd 0799c6f08h
+dd 0018c330dh
+dd 0f71ba9b2h
+dd 0896c4daah
+dd 0e76999f4h
+dd 0b89e506ah
+dd 024c19e80h
+dd 02a3d5671h
+dd 0bcff7d2bh
+dd 0bf34b35bh
+dd 08dceeb18h
+dd 0674c433eh
+dd 0c8d40449h
+dd 009d233d2h
+dd 0bad23ccah
+dd 08588617ch
+dd 07bce8cf6h
+dd 0f5bfad35h
+dd 0483d1ef6h
+dd 004aeb34ch
+dd 01a2020aah
+dd 09615496fh
+dd 03845930bh
+dd 0f105a616h
+dd 09cc3df57h
+dd 0dfebce7ah
+dd 0672f08b6h
+dd 02b7e6bc3h
+dd 0533f2f59h
+dd 051f83ceeh
+dd 05f17ec76h
+dd 04d3bc7abh
+dd 074d96d8dh
+dd 0e5dd41cah
+dd 05e50ab74h
+dd 0c1f4158ch
+dd 044aa419dh
+dd 0d2a58fcch
+dd 05e4670a5h
+dd 0c630b6bbh
+dd 0067e97fch
+dd 05e77b1a8h
+dd 019c54d1fh
+dd 041dababah
+dd 0d7fab291h
+dd 06b563511h
+dd 0f9527656h
+dd 05e950f1dh
+dd 0dcc2c457h
+dd 0a4d50b66h
+dd 08729c959h
+dd 0ff5a699dh
+dd 0a2c7aa88h
+dd 098853020h
+dd 07e99128eh
+dd 01b18c529h
+dd 03924ae53h
+dd 015d06278h
+dd 032cc2616h
+dd 0b05ef910h
+dd 05ef225bbh
+dd 0ba41b203h
+dd 0d57bdc9bh
+dd 0506010f6h
+dd 0834715f5h
+dd 01f5280e0h
+dd 0cc861e06h
+dd 0e916cab2h
+dd 04b0a5f91h
+dd 0c925438fh
+dd 0c52a5f1ah
+dd 00b5276c9h
+dd 0ca7c71e0h
+dd 06be7c65ah
+dd 08df4621fh
+dd 0e4761ef3h
+dd 06b143a8ch
+dd 02d8c7dc8h
+dd 051e7de8dh
+dd 009dbf48bh
+dd 0d886a6d2h
+dd 09cb516f2h
+dd 0cbcf1e91h
+dd 0112c8465h
+dd 06b6a0e63h
+dd 02e5e9848h
+dd 0e5bc949eh
+dd 0afafb25ch
+dd 0f65e1de3h
+dd 04c070678h
+dd 055bf4477h
+dd 0bfa65513h
+dd 0be658838h
+dd 0b300d9b9h
+dd 011ce2beah
+dd 04d8c22d0h
+dd 0f1d56d81h
+dd 0904065b3h
+dd 04062296ch
+dd 049a15659h
+dd 0c4722640h
+dd 0a70e8342h
+dd 0efa39980h
+dd 0242d0d1bh
+dd 06b0b18c4h
+dd 023bf2822h
+dd 01127d16ah
+dd 0de1116b4h
+dd 0e6b9c834h
+dd 0bbbd01e3h
+dd 0df505e49h
+dd 064289d80h
+dd 0334c42b3h
+dd 098f49973h
+dd 0d2391bc9h
+dd 0007bc4feh
+dd 0d330222ah
+dd 06c1d3461h
+dd 0fb5ea7e7h
+dd 0d7e4ed8ah
+dd 0f4f70cb2h
+dd 00209effbh
+dd 058ef5944h
+dd 0ab457419h
+dd 0a0713ea0h
+dd 04e7bf625h
+dd 0c9d1fcddh
+dd 08a38f452h
+dd 02074f75ah
+dd 0185bfe8fh
+dd 069ce9fa2h
+dd 0e6600abbh
+dd 0d93a3b37h
+dd 0a6190ea0h
+dd 015e5b72dh
+dd 0d9ce771ah
+dd 0179c03bdh
+dd 060544d37h
+dd 0e5a1c39eh
+dd 0844c4377h
+dd 0d9e7220ch
+dd 07361b75fh
+dd 034c44686h
+dd 0b0e749dah
+dd 0a27df403h
+dd 04babe5c4h
+dd 0925a55d3h
+dd 0b9da6597h
+dd 017b54848h
+dd 054b1c205h
+dd 06c992b6eh
+dd 009409644h
+dd 05878fe76h
+dd 07e46e8e9h
+dd 06743e51dh
+dd 0d0ab24d1h
+dd 07296ae41h
+dd 00ae71a52h
+dd 0a330745fh
+dd 044536944h
+dd 0f4ef6b57h
+dd 09d29ae50h
+dd 01f736c61h
+dd 083c04461h
+dd 04dbf32f0h
+dd 049b93c3eh
+dd 02f29ad7eh
+dd 02bc95121h
+dd 0c60847ceh
+dd 0f63ebb93h
+dd 0fff49557h
+dd 0e9d23abch
+dd 00d01655ah
+dd 04fc6960bh
+dd 006ea0ccch
+dd 0aca9e850h
+dd 0b9df2f50h
+dd 0a80ade03h
+dd 0bcc16f69h
+dd 06733c2d8h
+dd 013ac66e9h
+dd 0ea2caccdh
+dd 0223110b1h
+dd 09d802a90h
+dd 070e576d8h
+dd 03ca77c19h
+dd 04203e86bh
+dd 0afc00be2h
+dd 0408f5513h
+dd 0435f1bffh
+dd 0f968496ch
+dd 00bbb07f7h
+dd 0fc4cda2bh
+dd 0cf4cde51h
+dd 0611c36d9h
+dd 05f55fc2bh
+dd 00a4bbddbh
+dd 08f589d4bh
+dd 0024c749ah
+dd 0cddd09d9h
+dd 0fa5fa091h
+dd 049498d2dh
+dd 00595aa35h
+dd 0fa64639ch
+dd 0595e5195h
+dd 09234e6ach
+dd 045a3339eh
+dd 057c04c72h
+dd 0f549d4b9h
+dd 026850fa2h
+dd 0b831ede2h
+dd 0e8d2e9a0h
+dd 0ee65f7cah
+dd 0b6147324h
+dd 082ad1fd9h
+dd 0cf3692abh
+dd 032e15eeah
+dd 058edc810h
+dd 0e0f9fa71h
+dd 0aa7eee7dh
+dd 09b517024h
+dd 0e3d2c9d4h
+dd 05cc96cc5h
+dd 0609b1abfh
+dd 0e7f270c1h
+dd 0385850a8h
+dd 043cb3f86h
+dd 084ca0812h
+dd 09e1d7807h
+dd 0384894bdh
+dd 0d5620a46h
+dd 05232ef0fh
+dd 0ce6419cah
+dd 06eaaecfah
+dd 0c3a71253h
+dd 0cd9ec07eh
+dd 0c1644a0eh
+dd 0be79430eh
+dd 0c01b1c6bh
+dd 09e0f1747h
+dd 0565e6112h
+dd 04601d397h
+dd 0d50cdd6ch
+dd 03ec312b0h
+dd 05816d1d1h
+dd 0299a6011h
+dd 0b4624506h
+dd 0998b9c86h
+dd 08999e5f4h
+dd 0bac9fd84h
+dd 0f6bcd6ddh
+dd 019a29654h
+dd 0d59d07dbh
+dd 076674e24h
+dd 0e5afd8b0h
+dd 052ba4df1h
+dd 0d992ecceh
+dd 0a56cd673h
+dd 04291a755h
+dd 02dd94c84h
+dd 097ed9cf7h
+dd 0dcb95718h
+dd 06bd1dd9ah
+dd 0d4c287cbh
+dd 0c8c547cch
+dd 0786721f6h
+dd 0f6647304h
+dd 0e557f0a3h
+dd 0924b7fc4h
+dd 09656b649h
+dd 00b6f47c8h
+dd 0e4ca5061h
+dd 0ee56e983h
+dd 0172a9584h
+dd 0f401c032h
+dd 024c1e612h
+dd 063ed3387h
+dd 0de2266a9h
+dd 012d3972bh
+dd 054d1933ch
+dd 09f71434ah
+dd 0a8d4945ch
+dd 07d8d1389h
+dd 04d7d2859h
+dd 0a50abeb6h
+dd 0da6384e3h
+dd 061cbd50ah
+dd 0c2dcc310h
+dd 03f4049a6h
+dd 043ad3d76h
+dd 06e79e815h
+dd 028d7fe23h
+dd 0e28158c6h
+dd 0388be7cah
+dd 0a4a6bfech
+dd 062d6f4e9h
+dd 0ae7f9bb4h
+dd 0206ae3bfh
+dd 0dc34109eh
+dd 0f9726481h
+dd 03c5ecfb3h
+dd 035eb9cfdh
+dd 0385d9864h
+dd 02d46e528h
+dd 074f817e6h
+dd 09ac71c9dh
+dd 03d7e9814h
+dd 094738448h
+dd 04de596e3h
+dd 0e2379d2ah
+dd 038c0d290h
+dd 011ae8046h
+dd 02d5cb18ah
+dd 02e37e512h
+dd 02877b618h
+dd 0a855d6ffh
+dd 0a6eb0a8ch
+dd 003e7c342h
+dd 0e2636c99h
+dd 01af75f0ah
+dd 079472c24h
+dd 0ce8e0633h
+dd 08bc1ab59h
+dd 031c460eah
+dd 026a29259h
+dd 0cfdc4150h
+dd 02ce2c6feh
+dd 0096c1411h
+dd 06c90be77h
+dd 0449c8782h
+dd 0c29c1251h
+dd 0dda0a977h
+dd 0cad1683ch
+dd 022960402h
+dd 02473cb10h
+dd 045b20993h
+dd 095b8bf42h
+dd 0c4f911e0h
+dd 0c17d900ah
+dd 0e01d35c3h
+dd 003f08523h
+dd 0222ad2f2h
+dd 02d0f76aah
+dd 0bd28d638h
+dd 0d75bef71h
+dd 050741237h
+dd 0a8286944h
+dd 0d1d488bbh
+dd 08e186ef4h
+dd 0a4d24c22h
+dd 04b95564fh
+dd 0b64a6770h
+dd 04905e99bh
+dd 04582d1afh
+dd 00ce08946h
+dd 04be7d807h
+dd 059276afeh
+dd 0047084a6h
+dd 04a492570h
+dd 0217bf92eh
+dd 003bfab8ah
+dd 016adcd46h
+dd 00302302bh
+dd 097cb2da2h
+dd 06436642ch
+dd 0f5cf21b7h
+dd 02b53aabfh
+dd 082a57391h
+dd 058767c0ah
+dd 0d24baabch
+dd 0ea824c3ch
+dd 0e2ebb1c1h
+dd 0dbd50010h
+dd 0da508817h
+dd 03d217622h
+dd 06656de1ch
+dd 08e0ddbech
+dd 0480df9feh
+dd 0f1d1d4ech
+dd 0b30361a9h
+dd 0025a5c93h
+dd 055e16f8eh
+dd 05d1647d0h
+dd 06ecf0230h
+dd 0602ce59ah
+dd 07571cc62h
+dd 088ebfecah
+dd 0df0a6c82h
+dd 0a1baa54eh
+dd 023275a08h
+dd 094f9f5aah
+dd 0459d59bdh
+dd 0ab84708ch
+dd 0f1ca2affh
+dd 03002fe96h
+dd 085f2224ah
+dd 041b70e71h
+dd 02219943fh
+dd 014a02c0bh
+dd 0ec19666bh
+dd 0f278c41ah
+dd 01f46747dh
+dd 0798c6689h
+dd 059dd9e3bh
+dd 05e421cf5h
+dd 06c246effh
+dd 0ee685b91h
+dd 0512d14a1h
+dd 091994062h
+dd 0495f3f54h
+dd 0f8d57985h
+dd 0e08979f9h
+dd 0873cd298h
+dd 064933a39h
+dd 0cb2963e5h
+dd 0a4d02cf6h
+dd 02ae201aah
+dd 00ec7c65bh
+dd 0e299b41dh
+dd 025dc352eh
+dd 0a4fdd588h
+dd 0124820b9h
+dd 0e8e482e2h
+dd 0f9d344eeh
+dd 0ca74237ch
+dd 0e2fb5895h
+dd 0020cf70dh
+dd 0fbfd8ee7h
+dd 04e26af4ch
+dd 05c957e75h
+dd 05d146aa0h
+dd 0c6abb5cdh
+dd 004386310h
+dd 062f21e38h
+dd 0fd229deeh
+dd 089ed2219h
+dd 0081fc417h
+dd 06542db78h
+dd 0263c3547h
+dd 04bf541d7h
+dd 0c0e3f198h
+dd 0e1a64328h
+dd 0ff4efcb9h
+dd 03806ba30h
+dd 09dfbe2f1h
+dd 0c3038f8ch
+dd 041fa00e3h
+dd 08f4a0b2ah
+dd 088ca66aah
+dd 0c2d97203h
+dd 083321bbfh
+dd 083b87b6dh
+dd 0907f3b07h
+dd 0ab76ea90h
+dd 0373ddf7ah
+dd 0d412b494h
+dd 05e8f782bh
+dd 0cfa86fb7h
+dd 02d49e02eh
+dd 0ccb5302dh
+dd 08cb47c09h
+dd 0087e1426h
+dd 04c8857eah
+dd 0d997bbe1h
+dd 0d6b471d6h
+dd 0e65ef4b9h
+dd 07bd09e70h
+dd 0f791e789h
+dd 0ababa050h
+dd 03ba1bb59h
+dd 08dba954ch
+dd 01aaf6ff0h
+dd 0ea91ba9eh
+dd 096083a20h
+dd 0970d18e9h
+dd 0d17a742ch
+dd 0c3fdd92bh
+dd 0aacc669bh
+dd 00c731e51h
+dd 059fe4a4dh
+dd 091411d26h
+dd 0e2331f43h
+dd 047e837a5h
+dd 081dbf307h
+dd 02632550ch
+dd 0f5e7b58fh
+dd 0c5be27dfh
+dd 077f21ba9h
+dd 061eab9afh
+dd 05083c1c0h
+dd 01ed7ec96h
+dd 0843a7165h
+dd 0e0773d91h
+dd 0b7130d74h
+dd 0994352b7h
+dd 01f0bd596h
+dd 03bcc333ch
+dd 0cc3cfd1fh
+dd 0cde90f22h
+dd 00a2aff13h
+dd 022d13777h
+dd 0bd092728h
+dd 00be3aa66h
+dd 041d87825h
+dd 019aec673h
+dd 00ea0d577h
+dd 066587054h
+dd 0d0382c70h
+dd 0ab372464h
+dd 028868897h
+dd 09ef32ec9h
+dd 0c39fff05h
+dd 0e0a2e7eeh
+dd 0c449c808h
+dd 0c7882984h
+dd 0163d8effh
+dd 015e173fah
+dd 0df2e157ah
+dd 0ac1c19b4h
+dd 026ea9e0ch
+dd 0976bbb5dh
+dd 0e2c12f92h
+dd 0297b723ch
+dd 0d9a647e4h
+dd 0898042e6h
+dd 074a1c2a1h
+dd 0605db8a4h
+dd 0dfcb085fh
+dd 02f181520h
+dd 0eb5b4c75h
+dd 0e05364a0h
+dd 016384920h
+dd 030b917dfh
+dd 08dbe5bf5h
+dd 06b1128dch
+dd 0374c8b7ch
+dd 0a11dea87h
+dd 07eb16882h
+dd 034fec4d4h
+dd 0c210dfe2h
+dd 009a80a24h
+dd 0206d91b0h
+dd 04c936fe9h
+dd 0b475c18ch
+dd 079f28c47h
+dd 0acf691aeh
+dd 0441b9ce0h
+dd 04451b4dah
+dd 0a01cd56fh
+dd 07fd383dah
+dd 0df81bf37h
+dd 08c60fe52h
+dd 07173f3b3h
+dd 0d5696d15h
+dd 02bc8b912h
+dd 08900bbe7h
+dd 00d78ae01h
+dd 06cbef7e3h
+dd 0db9d9832h
+dd 024c11f97h
+dd 0108904d9h
+dd 008fe6671h
+dd 0314c72d2h
+dd 0e09625bdh
+dd 0f9d8b5f7h
+dd 0306ab7cbh
+dd 090e8bbdbh
+dd 0a8ff06e5h
+dd 0c4d83259h
+dd 0a24d06eah
+dd 0ee721c88h
+dd 0f6a91eaeh
+dd 09dc2a550h
+dd 02ff48853h
+dd 00b993b21h
+dd 078f938ebh
+dd 02a8381fbh
+dd 0ae382370h
+dd 0c0d66492h
+dd 0eaae4096h
+dd 00fee014fh
+dd 081e79fd9h
+dd 056b5e8d9h
+dd 091306535h
+dd 0a287220eh
+dd 086f8b790h
+dd 0d0debcd4h
+dd 0eb4a964bh
+dd 0621c2795h
+dd 00d86c812h
+dd 0ca926c19h
+dd 059df4e8eh
+dd 088f30749h
+dd 00259279dh
+dd 04a9a00b9h
+dd 004dfec30h
+dd 0106bf8fbh
+dd 0bc46b994h
+dd 052c75757h
+dd 03d5c6f91h
+dd 0ea80a0d4h
+dd 0ffecce7dh
+dd 057cfdc42h
+dd 0e62bae97h
+dd 0f2d85240h
+dd 00eff5cfbh
+dd 02f97b3ach
+dd 067eadb2fh
+dd 08700fd44h
+dd 056d38d2ch
+dd 0f7722870h
+dd 0ba98df5bh
+dd 01d6c43cdh
+dd 00827f44ch
+dd 08c849bbbh
+dd 084e6c7afh
+dd 0e515aee0h
+dd 0b7be77beh
+dd 08df76554h
+dd 0dec3a5a1h
+dd 037bfd1d7h
+dd 0eeab3d29h
+dd 0ff8539d8h
+dd 0e3b166b9h
+dd 098829077h
+dd 03b7814c8h
+dd 073e73bf4h
+dd 00c4e70c7h
+dd 0b0466d7fh
+dd 07bae9e1eh
+dd 07b0f112eh
+dd 0d48c3e2ch
+dd 0e4638219h
+dd 0e0bf9bf4h
+dd 02b33df1dh
+dd 005d31926h
+dd 03e084f1ch
+dd 0b2958621h
+dd 091ebe9f6h
+dd 0276fd42bh
+dd 0193e908ch
+dd 0c89dc677h
+dd 09655ad49h
+dd 064401e9bh
+dd 09e25af33h
+dd 085d857aeh
+dd 09ad6890fh
+dd 0c4213c1ah
+dd 023358dfah
+dd 09ce7e133h
+dd 0058b6a46h
+dd 05ae71853h
+dd 0a2314ca6h
+dd 09c488b9eh
+dd 012d53dfah
+dd 0fe04b519h
+dd 0ee957708h
+dd 0d719111ah
+dd 0c45dfd92h
+dd 09eb61d16h
+dd 0ca46829bh
+dd 0c764f1a4h
+dd 0b41013fah
+dd 09419767ch
+dd 0d9bfa907h
+dd 04eda6cd7h
+dd 089fd20d2h
+dd 0aba0c3fah
+dd 0bbd45fa3h
+dd 0e7193310h
+dd 0acec3c11h
+dd 0cd2d0b8ah
+dd 05b1a0039h
+dd 006303e80h
+dd 00c8a2ebeh
+dd 0a0616925h
+dd 0e427cf40h
+dd 09d792942h
+dd 0230fa314h
+dd 0d70ad823h
+dd 0b68210bbh
+dd 0c2fd2513h
+dd 0b92e0841h
+dd 0cb1b532ch
+dd 009c9c2d1h
+dd 0add5686bh
+dd 053c0cec7h
+dd 06d9d1195h
+dd 0e15ac88ch
+dd 0664420fdh
+dd 0e7b4d70dh
+dd 0b2e60d93h
+dd 0b76c38f0h
+dd 021738609h
+dd 03eed6aeah
+dd 05a9dc70bh
+dd 09e8cd8b2h
+dd 0bec57f38h
+dd 0243e4b26h
+dd 0d4b562a9h
+dd 0d9c66f6fh
+dd 0d4a9b8a1h
+dd 06312b665h
+dd 0613a3891h
+dd 071851e6bh
+dd 0552090bch
+dd 050cf53bch
+dd 09ae2e84fh
+dd 0eaf68f04h
+dd 09c947d9ah
+dd 0e6ee3ca8h
+dd 05ac8b525h
+dd 011750aa1h
+dd 049a906f6h
+dd 05616b457h
+dd 07ffe0a23h
+dd 01956d673h
+dd 0cbc91998h
+dd 02c9f60eah
+dd 021fef64bh
+dd 09120e74dh
+dd 0cafa39c4h
+dd 02d93ac58h
+dd 0394d9436h
+dd 0deac46d0h
+dd 022bc9584h
+dd 0e7e820dbh
+dd 019167d53h
+dd 024eb968ch
+dd 08cbb0d8fh
+dd 0b8b96124h
+dd 00e9c9e1fh
+dd 0cdf1580eh
+dd 076cb6e19h
+dd 08c19e97ch
+dd 03b06eafbh
+dd 0ac10d806h
+dd 0e2f2aca5h
+dd 02f824227h
+dd 01c58aa17h
+dd 0dcad14b2h
+dd 087a38d6bh
+dd 09bdd663ah
+dd 055e98aa2h
+dd 007567f34h
+dd 079265e75h
+dd 0e3c26cd7h
+dd 07780a380h
+dd 0fcef852ah
+dd 0c5632fc4h
+dd 0040c4fbah
+dd 05f07f32dh
+dd 01be319e1h
+dd 0929cc074h
+dd 01ee60d8fh
+dd 0090d1cfdh
+dd 04bf7030eh
+dd 027c53037h
+dd 01a961389h
+dd 073859adah
+dd 05506060dh
+dd 03915e941h
+dd 04154142fh
+dd 088e624ach
+dd 0c376df71h
+dd 078e788ddh
+dd 04d1582d0h
+dd 0cca187cch
+dd 069541dcah
+dd 01ed1a955h
+dd 0026449a1h
+dd 09d872853h
+dd 006031301h
+dd 09ce8b60fh
+dd 0f5d6886ah
+dd 044d6352ch
+dd 0f87d7864h
+dd 02c64da0ch
+dd 09f550d05h
+dd 0cc86d934h
+dd 0c6a0464dh
+dd 010869516h
+dd 0f0b795b0h
+dd 04a4d3442h
+dd 04dc0bcaeh
+dd 00313cd38h
+dd 0fdf55ef5h
+dd 0109e22a2h
+dd 021dd841ch
+dd 0cacd51c7h
+dd 0924d0ee7h
+dd 046c4fb7ch
+dd 004c546c3h
+dd 0d0c3d0d1h
+dd 00ff8111ah
+dd 092303d4ch
+dd 0e8080686h
+dd 04d9729c6h
+dd 09bbab736h
+dd 0664e95a6h
+dd 07723ddcdh
+dd 0e3d08424h
+dd 07d4b3616h
+dd 04fff5c9fh
+dd 0a4680b51h
+dd 0c0ff663fh
+dd 09967d53fh
+dd 00deee9e0h
+dd 08f803327h
+dd 0f962e091h
+dd 0cdba9401h
+dd 0d658077dh
+dd 06eb7c3e5h
+dd 091ca7c87h
+dd 0a6cac6b1h
+dd 0c190836dh
+dd 0021eefdbh
+dd 0c5b20049h
+dd 0d08fd4b9h
+dd 0ca4464b8h
+dd 044cf324bh
+dd 009f8529dh
+dd 0795a465eh
+dd 03fd154a6h
+dd 04abc0550h
+dd 00985f32fh
+dd 02369a090h
+dd 0ad127956h
+dd 0851810cah
+dd 0e762239dh
+dd 006d2dcf5h
+dd 097deb2d8h
+dd 0f2bfcfc9h
+dd 0b9730b85h
+dd 012e8cca9h
+dd 0c1f5891ch
+dd 025ca930eh
+dd 094729726h
+dd 015106500h
+dd 039c46a3bh
+dd 088a95424h
+dd 04edd2cffh
+dd 02a45900dh
+dd 0098a9fbch
+dd 0ddc4f193h
+dd 00a020c65h
+dd 0df379bfbh
+dd 0bd11722fh
+dd 03de1fc9ch
+dd 059b32cb0h
+dd 094b249e1h
+dd 0d678c4e6h
+dd 0e3d9a80bh
+dd 01c6b8d3eh
+dd 0369a5428h
+dd 0029e385bh
+dd 01131d792h
+dd 0243a0533h
+dd 0e89542fbh
+dd 02c641fc3h
+dd 0b1d7e6cch
+dd 09b6f2519h
+dd 00d3caf05h
+dd 0d776c846h
+dd 00a57cbf3h
+dd 0c119345bh
+dd 01a10afeeh
+dd 03a131524h
+dd 0ffd7e5a5h
+dd 090a7bfdfh
+dd 0c9acb15fh
+dd 06712414bh
+dd 0ae015ffbh
+dd 0605dc844h
+dd 0bef274f5h
+dd 0a35169edh
+dd 016962bc7h
+dd 01f0d407ah
+dd 0fdf5b1afh
+dd 04d3f6d03h
+dd 0646a4200h
+dd 052201510h
+dd 009c2fb16h
+dd 0251ab45eh
+dd 0581dd9bdh
+dd 0da93a523h
+dd 0ed9499e9h
+dd 04cc7dfe1h
+dd 03f29ce2ah
+dd 09ea2fccfh
+dd 081b99e3fh
+dd 0a14db746h
+dd 0c5dd8aa0h
+dd 0cbb34d2eh
+dd 091bd35bbh
+dd 0f07d04cfh
+dd 0c20b009fh
+dd 091d85c09h
+dd 0fd0a8b0eh
+dd 0b22d86dch
+dd 055e01d38h
+dd 09e205bfeh
+dd 093cea698h
+dd 08ac87ee0h
+dd 0e1ac2dedh
+dd 090edf6b5h
+dd 095399aa5h
+dd 03d448739h
+dd 0100b6556h
+dd 0f1018c0ah
+dd 0219c5928h
+dd 0e47f8151h
+dd 04598ac88h
+dd 0557b5d8ah
+dd 0175ba189h
+dd 00ae35704h
+dd 0ffdfcf9eh
+dd 00e29c703h
+dd 09e564cf1h
+dd 0603e9688h
+dd 08de1c57bh
+dd 0c1c05a59h
+dd 0314df329h
+dd 0de0b87d0h
+dd 02216fb58h
+dd 09a793627h
+dd 000abc620h
+dd 0c96a60fdh
+dd 00fc93159h
+dd 0aab33ee9h
+dd 0b1fdf478h
+dd 054b3c0e3h
+dd 02ecb2db0h
+dd 0b1358602h
+dd 03c418460h
+dd 0702326bdh
+dd 081b984ddh
+dd 000ccf450h
+dd 06a3ea1c2h
+dd 0d0d795f1h
+dd 0e4ac68a5h
+dd 0dacc0635h
+dd 0491e7b1ah
+dd 0d43d626bh
+dd 0b23db4d5h
+dd 025b22dbdh
+dd 03c87c05fh
+dd 0e0e0b007h
+dd 040727c8ah
+dd 06114d251h
+dd 0e0cf9ae3h
+dd 0dcd0b1e8h
+dd 08cc89c31h
+dd 01c50b0dbh
+dd 0f90e532dh
+dd 013f09667h
+dd 0e6427c8dh
+dd 0c60f8464h
+dd 03181f195h
+dd 0ee8f1214h
+dd 09476ed06h
+dd 0e1013705h
+dd 06b7013a1h
+dd 03714fa7eh
+dd 08b4088d9h
+dd 02f5fa515h
+dd 0dea62ddfh
+dd 0887863e1h
+dd 03201eba6h
+dd 0759fa4e5h
+dd 029124213h
+dd 0d658b376h
+dd 0e40c43fdh
+dd 01947b5e4h
+dd 02037374dh
+dd 083e06323h
+dd 05e36c3c7h
+dd 0a791c6d2h
+dd 082a77b33h
+dd 07be2f085h
+dd 07b0f276fh
+dd 0d67b2edah
+dd 08c4eaa86h
+dd 041a6cefch
+dd 0d1fdcf4ch
+dd 0587ea1fbh
+dd 05085f948h
+dd 0315fa87fh
+dd 0fc71f9abh
+dd 0a5d64dd2h
+dd 09b0f362ah
+dd 0ec345295h
+dd 08d235fe7h
+dd 0d73dce76h
+dd 07379cf9dh
+dd 037870cd9h
+dd 0b680aa23h
+dd 0a2454f9eh
+dd 0592de2c8h
+dd 025d5749eh
+dd 03eb4de2ch
+dd 026dddeedh
+dd 05fcab814h
+dd 0ee6b2fd4h
+dd 03f80a54eh
+dd 0bb0e2d77h
+dd 0f20f99e7h
+dd 05b7ce402h
+dd 049d1881ch
+dd 05f7543efh
+dd 0ccdd8264h
+dd 062c8a81ah
+dd 00bd39f16h
+dd 00c6019feh
+dd 084372579h
+dd 02946d961h
+dd 059388a07h
+dd 00b68d2feh
+dd 07444b18bh
+dd 01b98e09fh
+dd 057b14c0eh
+dd 0e2ddaebah
+dd 0ec1137ffh
+dd 0b4df031ch
+dd 046934fdbh
+dd 0c0a4fa67h
+dd 042a8fda9h
+dd 03b8aa0d1h
+dd 0e9f675b6h
+dd 0af32ed2eh
+dd 01d9c1654h
+dd 07e04b82ah
+dd 04738a30fh
+dd 0a5edc469h
+dd 03c71474fh
+dd 07cf18681h
+dd 08e0d8ec6h
+dd 0a92f511eh
+dd 0bdea00b2h
+dd 07958e0efh
+dd 0721f52ech
+dd 00f67b7c3h
+dd 00e6ad906h
+dd 0f9d60d83h
+dd 0e7263929h
+dd 0405c3549h
+dd 04b92fa4bh
+dd 0fb0494b1h
+dd 014f1fc4ch
+dd 0ee9bf039h
+dd 0df9e95c5h
+dd 02f3be417h
+dd 037cbb836h
+dd 02067d348h
+dd 01d2d1487h
+dd 00bc0ca4dh
+dd 0e0776a34h
+dd 051c23e83h
+dd 0b80e0a18h
+dd 06f7f82ech
+dd 0b4e589d3h
+dd 0a3663619h
+dd 0efb1de40h
+dd 0b07d28ebh
+dd 0dd2fd759h
+dd 08a1bc016h
+dd 0231af2b2h
+dd 023e7fa78h
+dd 0794b7096h
+dd 0b28efa1ch
+dd 046d97431h
+dd 0a141ebech
+dd 0d62df08ah
+dd 091ccb319h
+dd 0012b45fbh
+dd 0bf645518h
+dd 0be8acaadh
+dd 08d6fc85dh
+dd 0d052876fh
+dd 081425cefh
+dd 0433d0557h
+dd 0025dea84h
+dd 03f05d2b4h
+dd 05bc3f4d5h
+dd 08a2a7f90h
+dd 049c92e78h
+dd 0bfd73f77h
+dd 009e81db7h
+dd 07374d66ah
+dd 016290ffch
+dd 06312017eh
+dd 09f248883h
+dd 07dcf22c2h
+dd 0e023811bh
+dd 070de1523h
+dd 039cfcdd8h
+dd 0dafe8101h
+dd 097af396eh
+dd 04e65770bh
+dd 0179e0caah
+dd 067c33f86h
+dd 04cd41506h
+dd 0e6869be2h
+dd 0ff8d94a1h
+dd 093184e6dh
+dd 02329db40h
+dd 0951c9b4dh
+dd 0f5e70348h
+dd 03f92fffah
+dd 03b1c03c1h
+dd 051b4e88eh
+dd 0508c2831h
+dd 0135d82abh
+dd 0b673141ch
+dd 0ee1db408h
+dd 04e5714b7h
+dd 0da404057h
+dd 061b73d58h
+dd 09a13d2d3h
+dd 09ff3b39fh
+dd 02700cfa0h
+dd 0b8215531h
+dd 0c95c1f4ch
+dd 061b480ddh
+dd 0060846f1h
+dd 07be50a0fh
+dd 0c658822bh
+dd 051a97845h
+dd 09e1b6ac1h
+dd 08eaa7f14h
+dd 0a2c76ec9h
+dd 0cbe93dd0h
+dd 07e31f88dh
+dd 00499610ah
+dd 0b35058a6h
+dd 0f3056bffh
+dd 0925c645fh
+dd 094f969ceh
+dd 0e96a84a1h
+dd 0ca8987afh
+dd 0daa3db08h
+dd 00ca8dd08h
+dd 0d096e3e8h
+dd 0448847d9h
+dd 0bc0677c4h
+dd 092c3562fh
+dd 069ce3200h
+dd 00cb4251eh
+dd 0347ed607h
+dd 055bd4821h
+dd 06468199bh
+dd 00a795579h
+dd 0372bd5eeh
+dd 014b97b6eh
+dd 0363cfe3fh
+dd 046895fe6h
+dd 0a6ad51ach
+dd 001309baeh
+dd 09648fd5bh
+dd 0aaba045dh
+dd 0d86b4c74h
+dd 010c5d6d8h
+dd 04057d225h
+dd 05bac971fh
+dd 0a2237fc3h
+dd 04d1bfa17h
+dd 0120b30edh
+dd 008b471eah
+dd 05ed6eeceh
+dd 04d80db96h
+dd 0ae799d70h
+dd 060665420h
+dd 03421b8bah
+dd 09342d751h
+dd 0c9652ac0h
+dd 076c71e0bh
+dd 0c71fb3f2h
+dd 07740a7cbh
+dd 0e01a0c4fh
+dd 0ea667fc0h
+dd 024120f17h
+dd 0c31ecb4ah
+dd 0de9c7bfch
+dd 0ab06e007h
+dd 004eda59dh
+dd 08be77083h
+dd 0c99196c3h
+dd 0234685edh
+dd 0057ccacfh
+dd 00b702e3dh
+dd 0cbec52fch
+dd 07e1ac7f5h
+dd 04341cce4h
+dd 0b9e26491h
+dd 0d6ab7ffah
+dd 063f05f50h
+dd 081ed5928h
+dd 0ed506b77h
+dd 01ad2153bh
+dd 04e3bf0d2h
+dd 0aff31583h
+dd 0d8b96952h
+dd 03f7cbd31h
+dd 0318e9df9h
+dd 08402f77dh
+dd 0ef568956h
+dd 0b8743dbeh
+dd 015d9be8fh
+dd 0a427e2c4h
+dd 023fb9e68h
+dd 0f13f323dh
+dd 0a6e325e2h
+dd 0943afce1h
+dd 04d5188f9h
+dd 0bd6e1b16h
+dd 05ec22d71h
+dd 0e22caa21h
+dd 0d80e636ch
+dd 0bf1b9c78h
+dd 064d4dd7eh
+dd 089f8792ah
+dd 096f4c0c7h
+dd 00ce839dah
+dd 0397ac16fh
+dd 08e0341edh
+dd 0771e4942h
+dd 0fcfd9700h
+dd 026340825h
+dd 003dad50eh
+dd 03b7567a8h
+dd 0479262f2h
+dd 01382f16bh
+dd 0e64935d3h
+dd 06c8927d1h
+dd 0ba4024bdh
+dd 07d4a18bah
+dd 05c4e535fh
+dd 0ae02fe12h
+dd 0984723e5h
+dd 04873e4b3h
+dd 07aa996adh
+dd 0e45f7e17h
+dd 0c4eba062h
+dd 02e4d4df7h
+dd 023eb6726h
+dd 0806615cah
+dd 024efd6c2h
+dd 06ccd038bh
+dd 0a7d0cd65h
+dd 0027aa102h
+dd 0df735d1eh
+dd 085193d8dh
+dd 0bc244463h
+dd 01122336eh
+dd 0b59b618fh
+dd 02f90572eh
+dd 0eae118fch
+dd 0c5df2753h
+dd 0e0049924h
+dd 0d6157e6ch
+dd 017e0934ch
+dd 07826b772h
+dd 0c5a4e347h
+dd 0abb025f9h
+dd 0fe9e1b86h
+dd 050a21021h
+dd 0cc11d102h
+dd 04b26db01h
+dd 032fd8fc7h
+dd 0ef625bd3h
+dd 00965e2c5h
+dd 0b832dcadh
+dd 0b3ad8473h
+dd 0ed80dd14h
+dd 0a4c9a36eh
+dd 01e204688h
+dd 0e896f443h
+dd 07adedb18h
+dd 097de8293h
+dd 026ea7125h
+dd 059c5e173h
+dd 0fb2803bfh
+dd 0b2014ef5h
+dd 0aa9b7b78h
+dd 03daea5cdh
+dd 0dcc5f7a7h
+dd 0e0634079h
+dd 0e3f25060h
+dd 0bc7a063dh
+dd 0088234cdh
+dd 06a207ccbh
+dd 00b590fdbh
+dd 03d825605h
+dd 023fbaa9dh
+dd 00148de68h
+dd 0145c3dddh
+dd 055e03a15h
+dd 003e59a37h
+dd 068d4a405h
+dd 09d80a335h
+dd 0b6491ab4h
+dd 0f251bbbah
+dd 06be9ada9h
+dd 04e4aed2eh
+dd 0cf042e68h
+dd 0b0a3b83fh
+dd 038e8a671h
+dd 0f924196bh
+dd 072ba2523h
+dd 03c51c94bh
+dd 0c30758b9h
+dd 017c6e5c7h
+dd 00353ebe0h
+dd 0d05ee222h
+dd 056026cd8h
+dd 06a4503bch
+dd 0ce815b98h
+dd 075cf2e9ch
+dd 02d29e1cbh
+dd 0a9e1ae12h
+dd 085c6836fh
+dd 0a348e320h
+dd 055eb7695h
+dd 0faf606adh
+dd 0ea3a2936h
+dd 098b487f5h
+dd 009ebe573h
+dd 0fa5c7ed4h
+dd 00bd77993h
+dd 031a47fb8h
+dd 0081f79a4h
+dd 042d23d00h
+dd 0bc3744e6h
+dd 05a5050aeh
+dd 0ad37a3c5h
+dd 09cbf639ah
+dd 0d86db49fh
+dd 0b6d6d606h
+dd 0657c551dh
+dd 01f759ae1h
+dd 0efe15188h
+dd 020444788h
+dd 0caa5a6bdh
+dd 0d170c5e5h
+dd 0150d52bdh
+dd 04913999ch
+dd 0fb474877h
+dd 014230609h
+dd 056cdff74h
+dd 06a4944f2h
+dd 0e72f82bch
+dd 049f21966h
+dd 0d9f3ec19h
+dd 007ec5603h
+dd 087b054c7h
+dd 0b2c52c0ch
+dd 05985920ah
+dd 0acef3da6h
+dd 0a516102ah
+dd 09a57f959h
+dd 051c72aa3h
+dd 0e7560188h
+dd 085f798fah
+dd 043921f56h
+dd 0443badf8h
+dd 08696d088h
+dd 0046865b7h
+dd 0e53b731dh
+dd 06c0335f8h
+dd 0b64e85d9h
+dd 052e2d3e3h
+dd 01d4535a3h
+dd 0722fef6ch
+dd 0ad8b2dedh
+dd 0c7dacc40h
+dd 02bcf6c02h
+dd 08e7e90d8h
+dd 088cb9d6bh
+dd 016b0b16dh
+dd 05378b688h
+dd 0f5c469f1h
+dd 0fd30d071h
+dd 04de6d0e3h
+dd 05e871b33h
+dd 09b6d1514h
+dd 0f6aa348eh
+dd 027b85e73h
+dd 05e12967dh
+dd 0ad157b75h
+dd 024ab01a5h
+dd 0b0f855c1h
+dd 08ecd499ch
+dd 018718e5ah
+dd 0b18baf74h
+dd 03be98d9eh
+dd 021776807h
+dd 0562bc45ah
+dd 015d94230h
+dd 0e2200ee3h
+dd 076e3a194h
+dd 09545d373h
+dd 0f5d830ceh
+dd 0d4dcafefh
+dd 0b142a267h
+dd 09495dc27h
+dd 02fe5faf8h
+dd 0ffcef6c4h
+dd 0f7edffd0h
+dd 0e6593349h
+dd 0daa1ed1dh
+dd 04dd244b9h
+dd 032b583f4h
+dd 043633940h
+dd 0a9132c31h
+dd 0dc6f61fah
+dd 06b8d315eh
+dd 06a12bb57h
+dd 0173a4379h
+dd 0085daefdh
+dd 0440f3524h
+dd 09c81b942h
+dd 014493e8ch
+dd 05f95fdb8h
+dd 0f31965b6h
+dd 0a76a3703h
+dd 04854b3c7h
+dd 067d475ech
+dd 0e6dd61f8h
+dd 0ecebd975h
+dd 0cae8c3cbh
+dd 0e1476d5eh
+dd 0fc99e4e7h
+dd 06ec22361h
+dd 0c32cfe19h
+dd 073af86deh
+dd 05586def0h
+dd 013630a23h
+dd 0e8ca84e4h
+dd 045e460f1h
+dd 0e2d83a7ch
+dd 07d34a229h
+dd 0e060b5cah
+dd 0142d7c73h
+dd 04e780db6h
+dd 041c24de3h
+dd 027441239h
+dd 0afb72b63h
+dd 0d6800015h
+dd 0b3d68829h
+dd 022425e43h
+dd 02f8526bch
+dd 004e7d72ch
+dd 0b2052a0eh
+dd 09f16411ch
+dd 0031bc407h
+dd 067f74603h
+dd 033676be9h
+dd 0b6c6de54h
+dd 0903c2d8fh
+dd 0fa18e61fh
+dd 013dbdd75h
+dd 0282abac9h
+dd 06993cce9h
+dd 0d7538e2ch
+dd 0201a783fh
+dd 04c019157h
+dd 041d0ebadh
+dd 045ee5a85h
+dd 0cf5a6d99h
+dd 0fe19729fh
+dd 0a226a494h
+dd 0fe049c77h
+dd 041f1a5d8h
+dd 02ecce39ah
+dd 0eea857ceh
+dd 061de6548h
+dd 05c8d4de1h
+dd 084903898h
+dd 07ff7bd81h
+dd 047abaa72h
+dd 0311e1bb1h
+dd 03d943cb2h
+dd 028e4b065h
+dd 062de2f9dh
+dd 01afc4cd6h
+dd 09470ed9dh
+dd 04fe84614h
+dd 0210a667bh
+dd 02f256cc2h
+dd 00724a95eh
+dd 093d12dcch
+dd 0046c8db1h
+dd 012aa8fe0h
+dd 0e16e3684h
+dd 02b34dd53h
+dd 07a9df988h
+dd 033427597h
+dd 0e27e7754h
+dd 030351072h
+dd 0dd7bb7ffh
+dd 0f9f3c367h
+dd 06f39e9d1h
+dd 05f1ae9f7h
+dd 01d9ca01ch
+dd 0ddce8d14h
+dd 094f91248h
+dd 0a8b24b73h
+dd 07466614ch
+dd 09c66e079h
+dd 0a09536cch
+dd 0996b5c96h
+dd 0e6bfb454h
+dd 0e78fff24h
+dd 04dfa27f2h
+dd 00215eeaeh
+dd 04b330722h
+dd 068474d44h
+dd 0ace5c3d1h
+dd 062e935c6h
+dd 083c3fda5h
+dd 00c3642d6h
+dd 0bfd6b10bh
+dd 0b205eb40h
+dd 0c3583d56h
+dd 0491cef37h
+dd 02af0dedbh
+dd 02246955ch
+dd 0d2d79c24h
+dd 0b7f700bch
+dd 0b011d3b9h
+dd 0c0dfeb84h
+dd 06b2977b7h
+dd 00525928fh
+dd 0027f00e3h
+dd 03d9d3645h
+dd 0caf91e1bh
+dd 0f1fa3494h
+dd 0fd915495h
+dd 049ae8d91h
+dd 03de5552ch
+dd 064e6b52bh
+dd 0daa306e3h
+dd 042b5a4e9h
+dd 0e8cffe74h
+dd 066255d31h
+dd 0bd0ece42h
+dd 0092c8bfch
+dd 09c570345h
+dd 062db9401h
+dd 0992ee8aah
+dd 08ac58c63h
+dd 00a585362h
+dd 0a934e1a9h
+dd 06493f07ch
+dd 062270f2ah
+dd 04b0f5e55h
+dd 09945f8cah
+dd 0dc57ff88h
+dd 0b6710f76h
+dd 0b0523b5fh
+dd 0982c76f8h
+dd 00d5fd437h
+dd 04fb5fbceh
+dd 0c09996c9h
+dd 0d88f6354h
+dd 0e96a115dh
+dd 04758120bh
+dd 0a062aa88h
+dd 007b0c78ah
+dd 05d117ca9h
+dd 0e1728e12h
+dd 0a75a5d03h
+dd 015a9165dh
+dd 042f81e9fh
+dd 09cb8238eh
+dd 0c8592db5h
+dd 0f4bb48c0h
+dd 02dc842cah
+dd 05d1885dch
+dd 05f461100h
+dd 0835e02bbh
+dd 0e0ffa09eh
+dd 04f0e4cdah
+dd 081174089h
+dd 0d774307ah
+dd 046858b87h
+dd 086c67093h
+dd 0ecf5a65ch
+dd 035808096h
+dd 02f68b4ddh
+dd 0126b615ah
+dd 054896157h
+dd 05f253f0eh
+dd 0412607d3h
+dd 06880ed8eh
+dd 0c9f1fdb8h
+dd 0bae217b4h
+dd 09234619ch
+dd 021a9c375h
+dd 023027e2eh
+dd 02588a6a9h
+dd 0b90a18efh
+dd 0ff0a55e2h
+dd 01ab643f7h
+dd 06828b092h
+dd 0924a4d2eh
+dd 0f0554009h
+dd 05c1d905bh
+dd 0c1ec1265h
+dd 0f0356d1dh
+dd 01d6a4f11h
+dd 0431fbf40h
+dd 05da27b8eh
+dd 0803dee8ch
+dd 0ca65f55dh
+dd 004394029h
+dd 06773cd27h
+dd 05d5348adh
+dd 0454de5a6h
+dd 0aae3b924h
+dd 01c8701e3h
+dd 0701fe253h
+dd 0e2b24f51h
+dd 048027c93h
+dd 0354d6282h
+dd 0f7a9f2bbh
+dd 082e4b6d7h
+dd 04d6fc721h
+dd 0ea1b0c43h
+dd 01ba35b44h
+dd 0d2e93277h
+dd 015531719h
+dd 054ce2c71h
+dd 0ba53d656h
+dd 0a96153e5h
+dd 098f14375h
+dd 017e5f9a8h
+dd 02905ece8h
+dd 0aaa18146h
+dd 0bb8ddd3eh
+dd 0b711ec8ch
+dd 0c10b6f6bh
+dd 0a756928bh
+dd 08568e8b5h
+dd 02d632d1ah
+dd 08e48dd59h
+dd 0159b524dh
+dd 0ddb0d387h
+dd 0b04e333eh
+dd 0cc38cc8eh
+dd 07d2cd4bch
+dd 0ad857beeh
+dd 0bc1edbf8h
+dd 0e12b24f7h
+dd 0d54a6c93h
+dd 033e1d3f0h
+dd 0101eb215h
+dd 07acd3ce1h
+dd 0b28ad2afh
+dd 0d473f886h
+dd 0df9854e7h
+dd 0c7acdc1ch
+dd 04d2f95a0h
+dd 08def1a9ch
+dd 067d6454ch
+dd 02b8ee11ch
+dd 0ae53e795h
+dd 0c114ccd3h
+dd 0086c9dbch
+dd 0cd31bbb9h
+dd 03dfc8cc3h
+dd 01500f9a0h
+dd 016c51ee7h
+dd 0e46e9989h
+dd 0bbb1a73ch
+dd 02f1db85ch
+dd 01aba3ef8h
+dd 0baf0c7d4h
+dd 04f72a30fh
+dd 014c30ff7h
+dd 0b5c2dd6bh
+dd 0ca735b6bh
+dd 06cb8be7fh
+dd 07c5604dch
+dd 08854eebdh
+dd 0f94ce8a5h
+dd 0d33c922dh
+dd 044fbaf10h
+dd 096a07270h
+dd 086619c56h
+dd 0ee55b973h
+dd 05b32515fh
+dd 001d6e6dbh
+dd 02790a080h
+dd 0bd73e0dch
+dd 0687ea5c4h
+dd 0b7fe368eh
+dd 0c6035fe9h
+dd 072695324h
+dd 014099d7eh
+dd 09f1f89aeh
+dd 0fd0cb071h
+dd 0cfd3d14ah
+dd 01c2ac1b0h
+dd 0ac12aee6h
+dd 01dae5fe5h
+dd 0e124fa41h
+dd 06910ac26h
+dd 02532f607h
+dd 020f06adch
+dd 057e56b73h
+dd 0a4cc81bdh
+dd 0260e970dh
+dd 065eeae00h
+dd 06daa955ah
+dd 02b861de1h
+dd 03e5f4473h
+dd 0c6c7eb9dh
+dd 01693fbb9h
+dd 06b0fc870h
+dd 02e463bdch
+dd 09758e598h
+dd 0bc38c0e3h
+dd 0e2e16b1eh
+dd 071a4736bh
+dd 0e9de086bh
+dd 0c91613c1h
+dd 01fcd3ca0h
+dd 035a75098h
+dd 07f9df6f6h
+dd 01a66845fh
+dd 09c4e1235h
+dd 0ad210058h
+dd 08fccf583h
+dd 0b39962bfh
+dd 00f30a987h
+dd 053acdebfh
+dd 00faa713eh
+dd 04e920fefh
+dd 0fcce5ca0h
+dd 03291e7ddh
+dd 059ab7fd3h
+dd 0f0d09bf0h
+dd 00b5fd4e3h
+dd 032d000d8h
+dd 05945b723h
+dd 082f8bacch
+dd 03e2f48d7h
+dd 02714b619h
+dd 02d071288h
+dd 0d547b5c7h
+dd 0adbb773dh
+dd 065a5a716h
+dd 0b0123561h
+dd 0d841591fh
+dd 0c569c415h
+dd 06848596bh
+dd 023dc78eah
+dd 003caedb7h
+dd 000b475ech
+dd 037089685h
+dd 002e895e2h
+dd 0a75a2d44h
+dd 00a5b501ah
+dd 0750510b7h
+dd 0c6b96a12h
+dd 08189fc30h
+dd 0e6c5d133h
+dd 03e6fb3e7h
+dd 025f02925h
+dd 0a409def7h
+dd 0737b239ah
+dd 0e5b69941h
+dd 0cca50ccdh
+dd 096743c48h
+dd 0e182a018h
+dd 06a6bd349h
+dd 0204f1929h
+dd 0fc366225h
+dd 07c7aa67eh
+dd 0402290f9h
+dd 02cc5ab29h
+dd 009831758h
+dd 034c6878dh
+dd 0aca3dfadh
+dd 02e58a726h
+dd 0596ca422h
+dd 056592730h
+dd 06c733d82h
+dd 09259fdc3h
+dd 051101549h
+dd 0a6267e6fh
+dd 0261ef669h
+dd 0e6111615h
+dd 0d303060ch
+dd 0d9a672d4h
+dd 064cc413bh
+dd 0308fccb2h
+dd 09b111a36h
+dd 0f825632ah
+dd 024c46860h
+dd 084320c77h
+dd 0bc88ec72h
+dd 0a5bb3b83h
+dd 0ca0208a7h
+dd 05e54a532h
+dd 0d0e9225ch
+dd 0f5d9b35ah
+dd 0b7e50790h
+dd 0699be324h
+dd 0cfd93bd3h
+dd 09c6e9ddch
+dd 0d536782bh
+dd 0c86c7c75h
+dd 0cf07e9cah
+dd 0d8c6469eh
+dd 0b9b4cc3bh
+dd 081b66ac6h
+dd 0de129babh
+dd 0b5f06d36h
+dd 05055787fh
+dd 0f3598925h
+dd 00d72723ah
+dd 0944204b4h
+dd 08863e711h
+dd 043690078h
+dd 0261f3294h
+dd 0f9d3e509h
+dd 005cd822fh
+dd 03d65e1deh
+dd 091ecb939h
+dd 0e12e01c9h
+dd 0e5ba85f8h
+dd 093364979h
+dd 08a80132bh
+dd 047c57653h
+dd 044b497c9h
+dd 0d3c381c5h
+dd 08a2dd4bah
+dd 0b5b30149h
+dd 021ee8e96h
+dd 0f25a4577h
+dd 05bfab010h
+dd 0731fd720h
+dd 0ef125457h
+dd 041f505f2h
+dd 0f8b851c5h
+dd 09e3d7712h
+dd 094b46175h
+dd 037215a8eh
+dd 0312384fah
+dd 0142ba2f4h
+dd 08d86ebfch
+dd 0af56f3c3h
+dd 0de00c699h
+dd 02e460398h
+dd 02ad0be35h
+dd 07625f545h
+dd 0fec4873bh
+dd 0bc6f8492h
+dd 07b4585feh
+dd 010ab175ch
+dd 0f47ace06h
+dd 0044ed2ceh
+dd 03baee6c0h
+dd 059d825b1h
+dd 0a94b3692h
+dd 0a442003ah
+dd 065bb0b91h
+dd 021653bf2h
+dd 03dab0f5ch
+dd 051803d3ah
+dd 0e6a513d2h
+dd 0f23e5516h
+dd 03f121334h
+dd 03c2ebbf7h
+dd 005884d17h
+dd 0230b64cch
+dd 0dc3f71c4h
+dd 07c233696h
+dd 0a32917d7h
+dd 0f2f901c3h
+dd 0df9f1863h
+dd 02665e988h
+dd 0673db871h
+dd 0ee9d815eh
+dd 0d15fb903h
+dd 0145dd950h
+dd 0678a3f6ah
+dd 0ae37c323h
+dd 06f3d86e1h
+dd 0ee544b6ch
+dd 0e51a362dh
+dd 0f434e57fh
+dd 0b837c795h
+dd 0e00fe5c9h
+dd 0cc48c397h
+dd 03bd407f0h
+dd 09ff7f9c6h
+dd 0db0ed823h
+dd 0d4a71b92h
+dd 0e1e82aaeh
+dd 07ed1a767h
+dd 01ac47367h
+dd 0dfee8a53h
+dd 0556ee0aah
+dd 0780c1521h
+dd 033e1802eh
+dd 0a31c3699h
+dd 009a57e71h
+dd 0dc229803h
+dd 013267918h
+dd 073f1dd55h
+dd 0be48c0c9h
+dd 0719de4d5h
+dd 0a8c8db8ah
+dd 0610c2081h
+dd 0ed54e36ah
+dd 0488d701ah
+dd 07da749b3h
+dd 0d8434107h
+dd 087ac0e2dh
+dd 008dfacedh
+dd 0e8c664a9h
+dd 03d584838h
+dd 091be1679h
+dd 0633ae57bh
+dd 01f6624e9h
+dd 09b0bd04fh
+dd 0b23dd0bfh
+dd 052405db6h
+dd 0dc0035d3h
+dd 04fa5a573h
+dd 084a9c293h
+dd 02adf14e1h
+dd 0d5080417h
+dd 0310ad5ech
+dd 0b1a1209fh
+dd 001722634h
+dd 02ae3fcbdh
+dd 0ce6a00d8h
+dd 0a5c73297h
+dd 062c13433h
+dd 0fc3bf76eh
+dd 02faeb4bfh
+dd 082dced68h
+dd 013d42124h
+dd 0b07d5fa7h
+dd 0ae998db6h
+dd 0c4b2773bh
+dd 0a25a5f2eh
+dd 07d2ca018h
+dd 069afcfaeh
+dd 0a1a798a7h
+dd 08db51017h
+dd 0423ca6ddh
+dd 0c1f0b9c0h
+dd 003ac986eh
+dd 04cc06e0ah
+dd 01fd3b665h
+dd 07b0c42bbh
+dd 0cde40a2dh
+dd 0fa693907h
+dd 087b15a07h
+dd 0a4f9eb37h
+dd 0702eb375h
+dd 00fb5e3f4h
+dd 0c7132c07h
+dd 0106d9d62h
+dd 0399f2a69h
+dd 05149429dh
+dd 04e6ecc7ch
+dd 0a15af80dh
+dd 0536be9aah
+dd 027e2fbf0h
+dd 0a3cbf479h
+dd 017fe4c3ah
+dd 0065c0031h
+dd 0d99ee72eh
+dd 0a2625617h
+dd 0f8d567eah
+dd 00652586ah
+dd 08d60ff74h
+dd 0da430e8dh
+dd 0a665e446h
+dd 089173a8bh
+dd 000e28df5h
+dd 083ee7074h
+dd 01f08b3f4h
+dd 06cb2b7cah
+dd 0c9039c67h
+dd 0b7e0f3b2h
+dd 0f0e50c7bh
+dd 0c98c4554h
+dd 0d1f9ad10h
+dd 0218641c6h
+dd 024b97ddah
+dd 0f67ac842h
+dd 003ee18cah
+dd 0ad16e3bbh
+dd 01d75adffh
+dd 0312f0ea9h
+dd 041b7f1a4h
+dd 0b292b679h
+dd 0f815c051h
+dd 0e579c21eh
+dd 03af5660bh
+dd 067b173d8h
+dd 0097cbb86h
+dd 01dd35062h
+dd 0af6a27fch
+dd 0092c911bh
+dd 06b333c03h
+dd 0fdab235eh
+dd 097895c4fh
+dd 092dd74c6h
+dd 0df1718fah
+dd 06ea16ca5h
+dd 0fd2c6bech
+dd 078c7ea2fh
+dd 01e2168c4h
+dd 067ac608bh
+dd 0fac82c71h
+dd 041f98043h
+dd 0dc28c5cch
+dd 0fd2d1bc7h
+dd 0c6d408fbh
+dd 036c693d4h
+dd 06c3d78a7h
+dd 06906dfc7h
+dd 0b79d6e71h
+dd 04e1a23afh
+dd 08fd622dah
+dd 0b58431e3h
+dd 0f97f203ch
+dd 06acb1803h
+dd 0d7c8e742h
+dd 0fde19743h
+dd 0a78b176bh
+dd 0e9d879f9h
+dd 00b8068a9h
+dd 0f7c2f43eh
+dd 0d66a3835h
+dd 042b9021ch
+dd 03204327ah
+dd 0f50d212bh
+dd 0b3fedcd2h
+dd 09ee45181h
+dd 06016a03fh
+dd 044c7b220h
+dd 01c9e8656h
+dd 037606b53h
+dd 01c3c6aach
+dd 089b8a97dh
+dd 04d280a51h
+dd 095a8e325h
+dd 0723eae0dh
+dd 094016854h
+dd 035ac8b5ch
+dd 0d57f0395h
+dd 0a124c90dh
+dd 0b665eb06h
+dd 02b4b097eh
+dd 075372834h
+dd 0d976d15dh
+dd 06f260ce3h
+dd 0109a2470h
+dd 02d885226h
+dd 07726b807h
+dd 0bd0c206fh
+dd 035defb7ch
+dd 04e00b27fh
+dd 0cfc9012ch
+dd 0e0c89c55h
+dd 072a5a161h
+dd 0a6e67afeh
+dd 046fd5836h
+dd 09cb0721fh
+dd 0d3626571h
+dd 05225fdc3h
+dd 026af7f4ah
+dd 01082b8d1h
+dd 088a8c8fch
+dd 0a2ad5293h
+dd 03b9b64c9h
+dd 0f8f24e86h
+dd 052ccc340h
+dd 04610c138h
+dd 0e5b9b7f4h
+dd 0377c50d3h
+dd 0771134e0h
+dd 0def6028bh
+dd 00775e561h
+dd 04259ec7dh
+dd 07a7ce620h
+dd 08ad3c849h
+dd 013e57463h
+dd 0019485c4h
+dd 08f13833dh
+dd 024167290h
+dd 0529f97cch
+dd 016057743h
+dd 04840e44ch
+dd 0babbcbfdh
+dd 0d0185319h
+dd 0bd7bd6d4h
+dd 042cae3c3h
+dd 0ef93a9a9h
+dd 0cf3ccf04h
+dd 0fab653ddh
+dd 0bc880767h
+dd 0e3c88d92h
+dd 0f6769945h
+dd 073c3af30h
+dd 01c42a0aah
+dd 0e74a0125h
+dd 02ca05ef1h
+dd 0e6d845a7h
+dd 013fce8f1h
+dd 030535d6eh
+dd 08a626d2ch
+dd 06cb2707ah
+dd 0c8d531e4h
+dd 0f9058f68h
+dd 0cd38af13h
+dd 0973eadceh
+dd 0de929073h
+dd 06b2147f9h
+dd 0cbab7b9ah
+dd 06367fb0fh
+dd 0e89aaaa5h
+dd 0c2ae55f5h
+dd 06e402495h
+dd 092aac1e3h
+dd 000abaeddh
+dd 019d88e9ah
+dd 054f53c72h
+dd 08b9a0b51h
+dd 0500e23b0h
+dd 0f37ae784h
+dd 0e9fbd35ah
+dd 02a5099dah
+dd 07cad7fd8h
+dd 06619d990h
+dd 089d7af47h
+dd 08e5414c7h
+dd 0e84ad41bh
+dd 0b1ffbbb6h
+dd 00f6112e2h
+dd 0a59abea7h
+dd 0a7517a2dh
+dd 0ff5cad58h
+dd 0f2299aa6h
+dd 0be0a6556h
+dd 04811ef60h
+dd 0ad78c841h
+dd 0d0cde799h
+dd 029c642f9h
+dd 004df11dah
+dd 033d8a868h
+dd 001c77d83h
+dd 00fc8c121h
+dd 0c41136ach
+dd 07ac6ff9fh
+dd 0055eb746h
+dd 06f8997a2h
+dd 02913465bh
+dd 0085ec572h
+dd 0f7d06990h
+dd 04dbce212h
+dd 048d38700h
+dd 02034f3cbh
+dd 02df9dab4h
+dd 0d87c2a85h
+dd 0eb470664h
+dd 02c6b8eb0h
+dd 08d923b7fh
+dd 04dbc014ch
+dd 0ea59a7fch
+dd 05c950671h
+dd 078374acfh
+dd 0abef556fh
+dd 0bf7a4407h
+dd 0749fff0ch
+dd 06af12fd4h
+dd 0be4b3fa0h
+dd 0827fc27dh
+dd 00f072e75h
+dd 0a9153557h
+dd 080b066e6h
+dd 0b3c93f99h
+dd 0a9fd3805h
+dd 0be604a5eh
+dd 06290d15ch
+dd 08a5ddd54h
+dd 037104e53h
+dd 0dd6cfb75h
+dd 0cbe1e2a1h
+dd 0977b69a5h
+dd 0aceae371h
+dd 00adaeb78h
+dd 0f0ef0999h
+dd 07c91c9c8h
+dd 067dd2fe5h
+dd 0cd87f099h
+dd 0898efc25h
+dd 0c52e1c90h
+dd 0dd945cd3h
+dd 0f636f22dh
+dd 029f17313h
+dd 0f5e02dfah
+dd 09b444392h
+dd 03c515b66h
+dd 072a5e1ach
+dd 004a65890h
+dd 0f8ec37abh
+dd 03544e822h
+dd 0be9ca776h
+dd 0d80959d9h
+dd 0237a511bh
+dd 03d600531h
+dd 0f51da1f6h
+dd 0632f7c13h
+dd 0cb034644h
+dd 0bf3a761dh
+dd 017681cb7h
+dd 03da9b646h
+dd 07437a446h
+dd 0f26adb96h
+dd 062ac4ba1h
+dd 03e655d69h
+dd 038758999h
+dd 0ff80576ah
+dd 0b45e4158h
+dd 0f9ec07b9h
+dd 0aed6b73ch
+dd 029d84145h
+dd 0ac622548h
+dd 0a834dec4h
+dd 0e71421bch
+dd 0fbac4ef5h
+dd 0f65bb6c5h
+dd 0b63d7b7ch
+dd 09452886ch
+dd 01aac9351h
+dd 0a8e8807eh
+dd 072735e25h
+dd 0445b9371h
+dd 0039b5970h
+dd 02da64072h
+dd 08cb48acch
+dd 01181da4eh
+dd 0db864255h
+dd 0c56d1654h
+dd 0d129807ch
+dd 09ec09ff7h
+dd 056428c41h
+dd 0b8825c04h
+dd 04ec5e32dh
+dd 0ecc6da32h
+dd 075dc5d2ah
+dd 07363be69h
+dd 08e46bf22h
+dd 0d1d552dah
+dd 060f723b1h
+dd 090764d3ch
+dd 06a04005eh
+dd 0822e10d3h
+dd 0ce0be215h
+dd 0ecb52534h
+dd 048fe284bh
+dd 09520946ah
+dd 0ec9a1979h
+dd 0e7696356h
+dd 092128227h
+dd 08160ba3dh
+dd 0e27823f7h
+dd 02c82068eh
+dd 0cb9b6659h
+dd 0091789bch
+dd 01b2dafc6h
+dd 0de579e90h
+dd 097b9d27eh
+dd 04ae66ca0h
+dd 061c5090bh
+dd 05fa6a100h
+dd 07aaa1fa1h
+dd 018e1d1e7h
+dd 087b6eefah
+dd 058415bd0h
+dd 035114c3bh
+dd 06f01c118h
+dd 0af416855h
+dd 0f560d909h
+dd 06a8aa988h
+dd 0e1611d84h
+dd 016a6c454h
+dd 0db15f52eh
+dd 070866faah
+dd 07db9f4a1h
+dd 09719bd54h
+dd 032d2de95h
+dd 003732582h
+dd 0cc65153fh
+dd 0a285d265h
+dd 010f92828h
+dd 0dd90227ah
+dd 00f8e0a7fh
+dd 02d0c4796h
+dd 071b9fd8eh
+dd 036a50f79h
+dd 0f4d2b990h
+dd 02a9b5c61h
+dd 0cef5c45eh
+dd 05c9b48c7h
+dd 0945db42ah
+dd 0cb05bbf7h
+dd 09f148eech
+dd 01c8bbb94h
+dd 0bab36f1ah
+dd 07923d277h
+dd 0d2e9a882h
+dd 0902d73ceh
+dd 0fdcf0871h
+dd 0dad7de03h
+dd 09961e806h
+dd 0b0022c8eh
+dd 081022ccbh
+dd 04fee494ch
+dd 005e7004bh
+dd 069ee28f8h
+dd 0f51ab3aah
+dd 0c0e25e27h
+dd 0237124ech
+dd 01e37edfdh
+dd 01d3f0d44h
+dd 05bd31b20h
+dd 0c1b8e676h
+dd 045c2cc7ch
+dd 0c80304dch
+dd 01b9a532ch
+dd 08d71db80h
+dd 08f7738b7h
+dd 0c2989648h
+dd 08d8e9278h
+dd 00314247fh
+dd 004aab583h
+dd 0fe9ed199h
+dd 081692cc5h
+dd 0644650eeh
+dd 0a3e109abh
+dd 0f99ad9f1h
+dd 001f88739h
+dd 0cd6c666fh
+dd 071abeb41h
+dd 0a2454695h
+dd 07076037dh
+dd 0fa35ae2dh
+dd 02206b682h
+dd 0165e1d76h
+dd 058ad2a0ah
+dd 07bd90697h
+dd 059e64713h
+dd 00a4c4d27h
+dd 05bf1e874h
+dd 05b9b1263h
+dd 057d71a90h
+dd 017b17787h
+dd 0793de644h
+dd 080b4d38bh
+dd 01d8a1007h
+dd 07c3ae002h
+dd 011983e92h
+dd 069b3b4aah
+dd 0082cfe51h
+dd 0e35684dch
+dd 0c4f349feh
+dd 0ebe55429h
+dd 08dee4dc5h
+dd 098df800fh
+dd 057baaa63h
+dd 0bd045de4h
+dd 0924d5db1h
+dd 057958d2ch
+dd 009014da0h
+dd 008a69e30h
+dd 0c63807cbh
+dd 006cddae9h
+dd 01df168eeh
+dd 0bc4d3a69h
+dd 0d68712b1h
+dd 0760e2e1ah
+dd 0aaf2fd10h
+dd 096a87e9ch
+dd 0646a6dfdh
+dd 0bff95db4h
+dd 016b05eb5h
+dd 00bd482ech
+dd 03bd21e8dh
+dd 0b7e038ffh
+dd 0130c339eh
+dd 0c17a537dh
+dd 0ac35cf12h
+dd 0ee906c6eh
+dd 04e504129h
+dd 0a9853378h
+dd 056af11b3h
+dd 072608ac0h
+dd 0f20e4fcdh
+dd 02367073eh
+dd 0f9563dffh
+dd 0a2ce1a16h
+dd 09f75ff2eh
+dd 02c4506a5h
+dd 00119a7a5h
+dd 033aa8e65h
+dd 0d385f36fh
+dd 06bebb657h
+dd 0ffae666dh
+dd 0ed3af5ach
+dd 07606eb74h
+dd 084a77cb4h
+dd 07a49e6fdh
+dd 09bfea4abh
+dd 02f2ef529h
+dd 006df85e7h
+dd 05df6211ah
+dd 097fc39e3h
+dd 094f3f4bfh
+dd 0a9505c63h
+dd 0ac3e99e7h
+dd 068759f16h
+dd 085d0fb9ah
+dd 086fd9037h
+dd 0408c7089h
+dd 08f3708afh
+dd 03ffedd8ch
+dd 07b5e2e51h
+dd 07ec5ca2ch
+dd 0a7492d43h
+dd 0ace12f92h
+dd 06c41f7d0h
+dd 013eaf92ch
+dd 0e2d9ba0fh
+dd 0672828b9h
+dd 0f8d5cd1bh
+dd 0c4b80ed5h
+dd 0afc0e96eh
+dd 0029a101ah
+dd 0c1e033a2h
+dd 0434ecd77h
+dd 0e77698fdh
+dd 0d08fc981h
+dd 0bb356a22h
+dd 0445e97fbh
+dd 0a990e2c5h
+dd 04163f4d2h
+dd 019d8b8cfh
+dd 04a27a766h
+dd 02b2ee094h
+dd 0bca23cdfh
+dd 0afd31d2fh
+dd 057224678h
+dd 0c1620f49h
+dd 0d11ba15eh
+dd 06c1ad023h
+dd 0fa48b3ffh
+dd 0b33b32dah
+dd 08de3fc17h
+dd 0c8bb2489h
+dd 0ae96c637h
+dd 04b965ec3h
+dd 076cb6e69h
+dd 010f9e863h
+dd 06a96bae1h
+dd 00206b0b3h
+dd 014817ef4h
+dd 00ba31526h
+dd 0e2abaebfh
+dd 00f02d5f8h
+dd 0e11e7812h
+dd 0d516abc0h
+dd 0180b0290h
+dd 0d45d8466h
+dd 077a2666eh
+dd 035a57285h
+dd 08c7d79f7h
+dd 05ee78d34h
+dd 0839af886h
+dd 05b8b8464h
+dd 00ea2dcd7h
+dd 04802d657h
+dd 098fee4d8h
+dd 017c7173ah
+dd 0b5356417h
+dd 03547ab52h
+dd 0f5359f6fh
+dd 0aa635f61h
+dd 02923cc48h
+dd 07d89a35ah
+dd 0bb9999eeh
+dd 036bba292h
+dd 08f20408dh
+dd 0e7486fc7h
+dd 045c448e6h
+dd 0e65a2c78h
+dd 0d78032f8h
+dd 058d5f047h
+dd 011faef8dh
+dd 019c32465h
+dd 0f2b5609fh
+dd 09d7d6b9ah
+dd 0141d0e20h
+dd 0a2c8d088h
+dd 069635038h
+dd 087aa64fdh
+dd 01365f0ech
+dd 02b93268ah
+dd 07fc5278bh
+dd 061f5bfcfh
+dd 090d3e14eh
+dd 02aa661cbh
+dd 03f370d49h
+dd 0eef060dch
+dd 08ea87f45h
+dd 06c0d4c80h
+dd 0542bb571h
+dd 0a3b17491h
+dd 031c83cd6h
+dd 02abb5bb6h
+dd 0b07870e4h
+dd 07af626f5h
+dd 0d7a822a7h
+dd 0ac47f3b3h
+dd 0afd73a44h
+dd 07a14b9edh
+dd 02a909343h
+dd 0170fb3bah
+dd 0fe9ac62ah
+dd 0ff55fa41h
+dd 0aab1d188h
+dd 0e336dca3h
+dd 00747bb9ch
+dd 02618ffedh
+dd 080b980fah
+dd 0baa95ad1h
+dd 0df6555cch
+dd 07a09d171h
+dd 0447ded1dh
+dd 0f4f45a51h
+dd 0a232f191h
+dd 06b083338h
+dd 07dbb7807h
+dd 03b440bb5h
+dd 030bf2bc4h
+dd 0da9be10dh
+dd 0d978227ah
+dd 088214598h
+dd 06c565e7fh
+dd 09a698c42h
+dd 0e58230ddh
+dd 08fe6ff57h
+dd 08fa6fa51h
+dd 080e4576eh
+dd 0bc479170h
+dd 0116152dch
+dd 0fbf1011dh
+dd 0a3109419h
+dd 01e2da875h
+dd 03171e735h
+dd 04d6db6bfh
+dd 039f80cd2h
+dd 05000a017h
+dd 0d70c0213h
+dd 0818d7307h
+dd 001e83cc0h
+dd 0af6c33a4h
+dd 07afe6fc8h
+dd 02ec1cb5bh
+dd 0f4fd7e9bh
+dd 09311b6a7h
+dd 062ff29e0h
+dd 0f11fa629h
+dd 072e1b980h
+dd 0bf573eaah
+dd 0d2111dadh
+dd 006c616ceh
+dd 0da2223a9h
+dd 01590b716h
+dd 0c0e8c6c4h
+dd 092e2ec27h
+dd 0b2ba0b83h
+dd 0768f1a94h
+dd 04550769dh
+dd 0d9aad99ch
+dd 09a19df5bh
+dd 0b8598638h
+dd 047961ac2h
+dd 070e9a33ch
+dd 0558494eah
+dd 0482f967eh
+dd 06fa5ae05h
+dd 06e3a9350h
+dd 0ea44f832h
+dd 0865b9200h
+dd 0b020e5e1h
+dd 04275ffddh
+dd 054ee7096h
+dd 06df3cce9h
+dd 05f29ccfdh
+dd 055ac28e3h
+dd 038569a5bh
+dd 05af1caf2h
+dd 0ac9a364fh
+dd 08eebd915h
+dd 039a47bb5h
+dd 067241f14h
+dd 064196902h
+dd 05e21274ah
+dd 0da279804h
+dd 04e85061ch
+dd 0567f1a9ah
+dd 0ad907d22h
+dd 00f7d5d58h
+dd 073071202h
+dd 03f4d6ab7h
+dd 04fd64feeh
+dd 05a94947fh
+dd 0b0bec90eh
+dd 09a5fc8feh
+dd 0ea2ed501h
+dd 008902611h
+dd 0deec7d41h
+dd 0c2f36fb6h
+dd 0ded1c66eh
+dd 0dad90c18h
+dd 0a1ca3e73h
+dd 05d38d69ch
+dd 04ca5cad9h
+dd 0ff268d4dh
+dd 0f7fdf485h
+dd 04f6b1948h
+dd 0a8ed1ccdh
+dd 063c8c7b6h
+dd 0f071365ch
+dd 025447810h
+dd 0b0bc1103h
+dd 00d103f5eh
+dd 051aa8ad8h
+dd 023ebe012h
+dd 0ca359ac2h
+dd 0bf0c79a1h
+dd 0a63c9e3dh
+dd 04a3d778bh
+dd 0024f8b0ch
+dd 034dda079h
+dd 0640278c8h
+dd 073a4f4adh
+dd 0b71db49eh
+dd 034aaf389h
+dd 008c0c710h
+dd 0399d2708h
+dd 0e6ffbbcch
+dd 028e36b30h
+dd 05c4cd452h
+dd 089aecf73h
+dd 01127c8b5h
+dd 0d7be155dh
+dd 01e314e3ah
+dd 06c04d7d9h
+dd 041b75492h
+dd 089820142h
+dd 00d7aa65fh
+dd 0eaa2b985h
+dd 03c7b9b41h
+dd 0391382e8h
+dd 0e8a2f536h
+dd 066d547b4h
+dd 0e3403355h
+dd 032df3231h
+dd 0abded048h
+dd 05891b40bh
+dd 035513575h
+dd 069c5a43ah
+dd 054acb93ch
+dd 067983aa7h
+dd 0e499485eh
+dd 06b811526h
+dd 073b50406h
+dd 06707079ch
+dd 0e85663d2h
+dd 061329353h
+dd 0fb5a17a6h
+dd 0c3f93216h
+dd 0e7b1ca2bh
+dd 0517cc537h
+dd 0e31178e9h
+dd 00b3619b7h
+dd 04823ab51h
+dd 072a3ac39h
+dd 0f851045fh
+dd 024d96810h
+dd 0d8d022f6h
+dd 015603b72h
+dd 0b64181d0h
+dd 0865c2cc1h
+dd 0c9549c5dh
+dd 0de755fdch
+dd 00a1748bfh
+dd 052c5f25bh
+dd 0c14ec467h
+dd 081e2cbe3h
+dd 03c827dach
+dd 054edd9a0h
+dd 091715e8dh
+dd 0d1699b11h
+dd 07750bc81h
+dd 06775ab70h
+dd 0e64d4ee6h
+dd 08fd0dae8h
+dd 0e45c88b0h
+dd 047f04d5dh
+dd 0495a506ah
+dd 0d57909c9h
+dd 0b6cb8bbah
+dd 0af7a3586h
+dd 076e45da3h
+dd 0238d23cch
+dd 0548071eeh
+dd 094204295h
+dd 01206f492h
+dd 0c3dfe5bch
+dd 05559dabfh
+dd 0670611c1h
+dd 007268333h
+dd 079843d92h
+dd 00fe81908h
+dd 02c45cb6eh
+dd 0668240aah
+dd 0197e9e85h
+dd 0995a88bfh
+dd 04309d88eh
+dd 081a51757h
+dd 06789f6c3h
+dd 01b3b4472h
+dd 09a221641h
+dd 040a861aah
+dd 01289f718h
+dd 0e5142c03h
+dd 0eb853b5fh
+dd 050206628h
+dd 0c9d6100bh
+dd 0a6eb3534h
+dd 091a420c6h
+dd 0d3e7ac40h
+dd 087f960a9h
+dd 097e37df1h
+dd 0545638cch
+dd 058b25a1ch
+dd 0a4b955d8h
+dd 0db1d431ah
+dd 0a42f8439h
+dd 0fe9a63fch
+dd 07c2dfff3h
+dd 06676fd0bh
+dd 02c9c18dbh
+dd 06792528ch
+dd 06d8b4e8ah
+dd 0e9c6b928h
+dd 0517949beh
+dd 0715ec7ceh
+dd 0c2c1f396h
+dd 0156ef172h
+dd 0ed9f6a94h
+dd 06347b812h
+dd 0c5285adfh
+dd 0084d96b5h
+dd 0daec3561h
+dd 0200207beh
+dd 09c72cb3fh
+dd 0d42393d2h
+dd 07b245977h
+dd 0a592545eh
+dd 050b6c7eah
+dd 00ca7344ch
+dd 0ddee975ah
+dd 0ed2fbb26h
+dd 025b1c47ch
+dd 0dad89cb8h
+dd 0b2e4f86ch
+dd 013adefafh
+dd 0d7739ac3h
+dd 00c6478cah
+dd 02ebc66e8h
+dd 0e8ffe906h
+dd 07e32aebeh
+dd 0473dbe48h
+dd 01558799bh
+dd 01c1cf4b8h
+dd 069245626h
+dd 0b60f8426h
+dd 0b015b3e1h
+dd 0b369c872h
+dd 0cf619c19h
+dd 06fe30bdbh
+dd 000b548e7h
+dd 0b9d28015h
+dd 0433bfd6dh
+dd 0a7e6025ch
+dd 0990372f9h
+dd 04f6d682ch
+dd 07858daabh
+dd 07cd35216h
+dd 072c92f20h
+dd 05ed39daeh
+dd 03fbc05e8h
+dd 09e2d3524h
+dd 0dea6fe1dh
+dd 05017d8f7h
+dd 034edb248h
+dd 0e688c38ah
+dd 00d728352h
+dd 05afbb409h
+dd 022cb941bh
+dd 01c26f23bh
+dd 09fa029a8h
+dd 022215ea9h
+dd 05a1e3616h
+dd 04b4d55d7h
+dd 0ac420dfch
+dd 04d55242eh
+dd 078fb51ffh
+dd 0a0feeb26h
+dd 038513958h
+dd 0558a3c14h
+dd 07f3b29c2h
+dd 0724baae9h
+dd 0854a42d1h
+dd 081819bffh
+dd 0afeb3ebbh
+dd 0fde16d26h
+dd 07e25db90h
+dd 0b4be357dh
+dd 002acffeah
+dd 0ff889cf7h
+dd 087f3143eh
+dd 0b583c00bh
+dd 0ab95d3cbh
+dd 0b3b34110h
+dd 05077ea08h
+dd 011fc2887h
+dd 0b3d81bf6h
+dd 07bef881fh
+dd 0b4e9b778h
+dd 0f5c1b517h
+dd 0826c5e02h
+dd 01ed8f857h
+dd 0a86658deh
+dd 080ba7c7bh
+dd 0451a2228h
+dd 0bd3ef896h
+dd 0ed15c777h
+dd 060e1a4d3h
+dd 0729dbed4h
+dd 0399f65edh
+dd 0f6b3f07ah
+dd 0343cd8b1h
+dd 00e547628h
+dd 0e844a20ah
+dd 03250f46ah
+dd 0ef08cc52h
+dd 0ef1eb569h
+dd 000783694h
+dd 0d4f5ad80h
+dd 0c5cff9cdh
+dd 05e997d36h
+dd 0d9ef2aa2h
+dd 0ea28aa2fh
+dd 0a24856f1h
+dd 07775398eh
+dd 05a9c445eh
+dd 0dbce46b0h
+dd 0e42e0717h
+dd 058b99994h
+dd 0c1db30b2h
+dd 091bcbdffh
+dd 0850cd6d8h
+dd 0b89c130ah
+dd 0df9ce936h
+dd 04238dc4bh
+dd 0e6a30f32h
+dd 0a3fa5c07h
+dd 0d70b2443h
+dd 0e3a0c6c8h
+dd 0164fa143h
+dd 0fed7d5d7h
+dd 06a6e84bah
+dd 086ab7905h
+dd 0774d08bfh
+dd 05d76c4e8h
+dd 060eed78bh
+dd 0167a4e8ch
+dd 09c2fad2ch
+dd 0088abdd5h
+dd 0d7fdee63h
+dd 0efa12875h
+dd 0022151b7h
+dd 02cea25dah
+dd 0abe65446h
+dd 08969fc4ch
+dd 0529f5384h
+dd 06298f700h
+dd 063410765h
+dd 0eec2e245h
+dd 0a61a7328h
+dd 095639f7eh
+dd 0735855f8h
+dd 0a7c43bd3h
+dd 0a6becd8eh
+dd 0e1e7f049h
+dd 04df56ea2h
+dd 079673efbh
+dd 0aa2f2935h
+dd 014d2a94bh
+dd 0754ad8eah
+dd 0fadacf02h
+dd 0e7471bbdh
+dd 0a0b9e236h
+dd 0879f7798h
+dd 002c54efch
+dd 094428571h
+dd 064c02658h
+dd 0affabbbfh
+dd 0c6b50da0h
+dd 08ef6a7deh
+dd 00f2ed3a2h
+dd 0fd4f9546h
+dd 0f9d266ebh
+dd 0c788fb35h
+dd 0115346a2h
+dd 026f589f9h
+dd 04d21fabdh
+dd 0d5aff095h
+dd 01e04a143h
+dd 027e04077h
+dd 0fb17b19bh
+dd 045063ca6h
+dd 04734b99dh
+dd 04104255fh
+dd 0c1ea3765h
+dd 0fb87f729h
+dd 07ca1f560h
+dd 0e3808fech
+dd 05e16c983h
+dd 036f19f1dh
+dd 08d93438fh
+dd 0d8a140f0h
+dd 03a8a939eh
+dd 074666048h
+dd 0d5152d93h
+dd 065cd3f38h
+dd 003b37d4dh
+dd 03438635fh
+dd 01e76178ah
+dd 012815219h
+dd 058031b37h
+dd 0bacf341eh
+dd 089c64670h
+dd 0fa7a8c43h
+dd 0b0c61badh
+dd 075e7b99bh
+dd 09130704dh
+dd 00dfcd904h
+dd 077bf4e49h
+dd 055180c61h
+dd 06e81884bh
+dd 0811a596ch
+dd 054795915h
+dd 01231e10fh
+dd 0e5a949a9h
+dd 0d1df2240h
+dd 0e210af8eh
+dd 018ad36c4h
+dd 0bf547233h
+dd 02d81440ch
+dd 03dce59c7h
+dd 0298ea71dh
+dd 05022a8dbh
+dd 0dfc855e3h
+dd 01546616eh
+dd 0b6131779h
+dd 00caf7b24h
+dd 0b3e63696h
+dd 0bc822309h
+dd 00b106a19h
+dd 0e98d47a0h
+dd 0b0264ffdh
+dd 09bc4a1a5h
+dd 023cad170h
+dd 06c08546ch
+dd 007632847h
+dd 073c385a1h
+dd 0825ec6aeh
+dd 01372e76ch
+dd 0d7073b46h
+dd 09d932054h
+dd 003fce43eh
+dd 0de11cdc4h
+dd 0b821d565h
+dd 094e80453h
+dd 04a7b708ch
+dd 018c75e45h
+dd 0cf82d010h
+dd 0c15b5320h
+dd 016103b0ch
+dd 0d026cf90h
+dd 078939125h
+dd 0f7241c67h
+dd 06c3da8eah
+dd 0641cbb9ch
+dd 0fdbbf142h
+dd 0a4fbb543h
+dd 030eff6f4h
+dd 0564c03d2h
+dd 0a1607d6fh
+dd 0f3c1adeeh
+dd 0d6f49a31h
+dd 098907e0ch
+dd 094d95506h
+dd 044350a34h
+dd 0bb577db3h
+dd 0b886d078h
+dd 0da970235h
+dd 0810054c8h
+dd 06e661879h
+dd 0b9e02d42h
+dd 09b4dd5beh
+dd 0802ae303h
+dd 093c6d0f0h
+dd 0160fe82fh
+dd 0dbf04159h
+dd 0e8c124a8h
+dd 0577a6ee4h
+dd 0534bfafch
+dd 024ffd8b7h
+dd 01e2eb83ah
+dd 0fdc43203h
+dd 068d59f66h
+dd 0f1abad64h
+dd 0b372c3d9h
+dd 08fc2e65ch
+dd 0640e8aaah
+dd 0bad1ced4h
+dd 0f8c374fah
+dd 0fee9598ah
+dd 0ea479f00h
+dd 05e50c2e7h
+dd 0b97004adh
+dd 075dbab92h
+dd 02b811592h
+dd 0546fb81fh
+dd 0458f2657h
+dd 094c71fe9h
+dd 094beb19bh
+dd 0b9aa0dc4h
+dd 0d5ec5cb7h
+dd 0c8403c29h
+dd 084f207e5h
+dd 09a199fb7h
+dd 0dbcba0a6h
+dd 040d15c50h
+dd 013d2a604h
+dd 079228184h
+dd 00e72e509h
+dd 0de2f2ef4h
+dd 0ca782111h
+dd 080bffc1bh
+dd 0a33827f4h
+dd 0fe05e2d4h
+dd 0ad924c20h
+dd 0c3f416b9h
+dd 09ae97c0dh
+dd 07ff8ee90h
+dd 083414a92h
+dd 08d97d148h
+dd 0bd6ae1e6h
+dd 0aab69e5dh
+dd 024eea0a7h
+dd 050aba55ah
+dd 0b3a43b56h
+dd 0ce082b7fh
+dd 0bec01e64h
+dd 0f3f05a95h
+dd 0abd18946h
+dd 09aae2586h
+dd 0e0a5ed11h
+dd 01edbcbe5h
+dd 0c2910501h
+dd 0eb372b63h
+dd 098a920bch
+dd 04797b633h
+dd 0ae344341h
+dd 08726b892h
+dd 0c323a6dbh
+dd 052d8d2b0h
+dd 01f51f1ddh
+dd 04f7ea9ech
+dd 06856bf8eh
+dd 0069e50eeh
+dd 0a2ec9c8ah
+dd 03e239173h
+dd 05415e719h
+dd 0fd5b3102h
+dd 06052fea3h
+dd 070836b6eh
+dd 068b4fa1ch
+dd 0bcc4cef3h
+dd 066a0a611h
+dd 0ad2e9d12h
+dd 0c1f2d079h
+dd 0d068ab6ah
+dd 05c1343a2h
+dd 0225fe05bh
+dd 0453835bah
+dd 0d8f7967bh
+dd 0c8c6a72bh
+dd 05785b367h
+dd 0a9c1f2edh
+dd 01e53c79bh
+dd 0dabd2ff7h
+dd 0a8d3f2ceh
+dd 0d9a971a4h
+dd 0805ea333h
+dd 03621e3ffh
+dd 0e7f44b97h
+dd 0bed3c270h
+dd 01035ab95h
+dd 065a278d8h
+dd 046875416h
+dd 0d5cf45cah
+dd 0aeb0222bh
+dd 0b755f8f4h
+dd 072b8443fh
+dd 044b86db6h
+dd 0dd170468h
+dd 0888a1872h
+dd 0d030f827h
+dd 01944d609h
+dd 0779f9835h
+dd 0c1c1b733h
+dd 03446e1f6h
+dd 02e710d3ah
+dd 0732ab042h
+dd 0522d5937h
+dd 038bfa234h
+dd 060fa3444h
+dd 0093cfaf1h
+dd 04777ab91h
+dd 0cf249142h
+dd 0bfeeb8a6h
+dd 08ebd2b5dh
+dd 0c442fd3dh
+dd 039da9acdh
+dd 068cf3ebch
+dd 0ac0eb0f5h
+dd 062fc816eh
+dd 0d73784f5h
+dd 09f13b309h
+dd 0884ffc27h
+dd 08a41762dh
+dd 0bcea8dbah
+dd 097745579h
+dd 08ec522d3h
+dd 0c0c56966h
+dd 0a19b9397h
+dd 0fa7269e9h
+dd 0c91e9de6h
+dd 030476a81h
+dd 003f73c69h
+dd 0840d351ch
+dd 053198e32h
+dd 02e409ed2h
+dd 06486b6d4h
+dd 043a17030h
+dd 04af232f3h
+dd 09d51f3f8h
+dd 094f62948h
+dd 0c22ec915h
+dd 09e70094ch
+dd 0796aadach
+dd 0ed216870h
+dd 03f34b8ffh
+dd 04b011aa5h
+dd 013ae3bech
+dd 026fa9126h
+dd 0aa71af50h
+dd 0cbbecb9ch
+dd 0abcfca25h
+dd 08b0ef34fh
+dd 09f617c82h
+dd 06a482c91h
+dd 0cbf9dd8bh
+dd 0c629a31ch
+dd 0d494243ch
+dd 061073c4eh
+dd 0b5461223h
+dd 0f905d71bh
+dd 03d01159bh
+dd 04ddafc78h
+dd 0f52ee642h
+dd 0c0dadcb7h
+dd 0b9fd7eb2h
+dd 0c3c5df09h
+dd 0f286625eh
+dd 06a10eaaeh
+dd 0cdf26978h
+dd 015301be4h
+dd 017e24680h
+dd 06a5f14d2h
+dd 0598ac845h
+dd 0a42e2b89h
+dd 0325452c8h
+dd 046d23610h
+dd 0a645608eh
+dd 0d26df5f4h
+dd 00a14bfb7h
+dd 01460cf28h
+dd 00d6c2b14h
+dd 0e71fe327h
+dd 065d8ce52h
+dd 04afbda4fh
+dd 0cf7b1768h
+dd 0db5bdd2bh
+dd 0a6a00f2bh
+dd 058feca0fh
+dd 0c788bfddh
+dd 0b3d593deh
+dd 0a997e249h
+dd 0ab491077h
+dd 087322c3ch
+dd 01b4d1309h
+dd 09a386437h
+dd 0a4cb8137h
+dd 0e85f66edh
+dd 04659059bh
+dd 039ed3ddch
+dd 000e17665h
+dd 00c152668h
+dd 073171568h
+dd 018ee1b9dh
+dd 0b7a17e77h
+dd 02ba7094bh
+dd 0f9203197h
+dd 0aa1bcc92h
+dd 076b510e6h
+dd 08bcb087fh
+dd 08f78f912h
+dd 0ab7c38a8h
+dd 091d3bf38h
+dd 0b0b1b06ch
+dd 03dd9760bh
+dd 097eceb73h
+dd 045a952f1h
+dd 0c5403dbdh
+dd 0a72a3654h
+dd 0af26e690h
+dd 08cca2da9h
+dd 083aa6578h
+dd 009ceef7dh
+dd 03132172ah
+dd 0a322f3f1h
+dd 003e0cb6dh
+dd 03fc52ea8h
+dd 0ba2f9d60h
+dd 0f8dad07eh
+dd 06820d721h
+dd 0d50202e5h
+dd 0584a3299h
+dd 0b187d55ch
+dd 0a51cde22h
+dd 0f3c6bf8bh
+dd 04232efb4h
+dd 05bea3ab7h
+dd 06c450b20h
+dd 0a90d4aa1h
+dd 0c58aa57ch
+dd 00577181ah
+dd 0e99688d5h
+dd 0cd10bca5h
+dd 0add77034h
+dd 026dc4712h
+dd 0d9727187h
+dd 04bc31d3bh
+dd 0e19484b8h
+dd 08a9cdb39h
+dd 011b902b8h
+dd 030107020h
+dd 0c6b120eah
+dd 03e8a8dd2h
+dd 0759f9dbdh
+dd 039ca71e3h
+dd 06f1a36feh
+dd 0b02fd6edh
+dd 0c9ae6de7h
+dd 0b1ef00d6h
+dd 095ed905fh
+dd 0bdb56f5dh
+dd 0f4c40adbh
+dd 04ea80880h
+dd 0aa505d84h
+dd 054479ce1h
+dd 0eb4788e6h
+dd 0615c5b8eh
+dd 0fe394299h
+dd 01df63498h
+dd 077204a02h
+dd 0ab21fcc3h
+dd 008af456ah
+dd 059832535h
+dd 0ba1e6bf1h
+dd 02354bcb3h
+dd 0296b2dc9h
+dd 0892be054h
+dd 0f19daae6h
+dd 0c0ae388ah
+dd 0f9681a03h
+dd 039d90711h
+dd 04fa7e0d7h
+dd 0597d6c97h
+dd 06b89c73fh
+dd 03cb947a2h
+dd 0c5e8d258h
+dd 0cae26861h
+dd 04d7ace65h
+dd 0e9cbee07h
+dd 0b2674c06h
+dd 0987df506h
+dd 0a13bb62fh
+dd 004e23276h
+dd 098dec9a6h
+dd 09528388ch
+dd 089c64fe7h
+dd 05eef1d2ah
+dd 093240031h
+dd 009e785c1h
+dd 02ddc8ed1h
+dd 0b8de3771h
+dd 04b1ae2abh
+dd 09f017dd1h
+dd 057442795h
+dd 060687b73h
+dd 06c6c0f9eh
+dd 08614b13fh
+dd 0f29788dfh
+dd 0ab28d6f0h
+dd 018a690b2h
+dd 0237dab3ah
+dd 0f17c6705h
+dd 07c125650h
+dd 01ed1cf14h
+dd 03f0524ebh
+dd 04e345496h
+dd 08c8c1d6bh
+dd 0045fcc68h
+dd 09ce717bfh
+dd 0d8e8cf54h
+dd 0520a7f10h
+dd 09f38ca9bh
+dd 085282524h
+dd 0f5ee58d7h
+dd 017d798d8h
+dd 05e04dfeah
+dd 0d7255e16h
+dd 05d5985a6h
+dd 096d637f6h
+dd 06c23caebh
+dd 0c3798036h
+dd 021e8affdh
+dd 066507189h
+dd 080aad76ch
+dd 090567731h
+dd 0d8b4e00dh
+dd 09bde9faeh
+dd 0adde25b4h
+dd 030134741h
+dd 0bd584ecdh
+dd 0b9f084f4h
+dd 013f8fbcbh
+dd 0eee5251ah
+dd 0ea6c45e6h
+dd 07fef56c9h
+dd 0a248c98ah
+dd 0fc1b5b77h
+dd 003ab3997h
+dd 011640b4fh
+dd 06b6eb7b6h
+dd 03e34c99eh
+dd 048c6844fh
+dd 05765e6e1h
+dd 0ecfdf994h
+dd 016466e38h
+dd 0db9bc605h
+dd 040d4b093h
+dd 0613f5a9eh
+dd 0dd805a63h
+dd 0ba236cdbh
+dd 080f6d5c8h
+dd 071727653h
+dd 0a08cdfc0h
+dd 06ffc7e11h
+dd 096877578h
+dd 07275c7b3h
+dd 04e3ce240h
+dd 003a5d782h
+dd 0a895c1aeh
+dd 003fec153h
+dd 0c9e631a1h
+dd 0e1f9bd2ah
+dd 0f5fe86a5h
+dd 00381d6b6h
+dd 09b4bde34h
+dd 00b2ec0d4h
+dd 0cca9cde5h
+dd 017797e1ah
+dd 0f0f0b2b9h
+dd 0031bbdcah
+dd 0717ec118h
+dd 01e7ba307h
+dd 060693da8h
+dd 0286cd64dh
+dd 0026bcc32h
+dd 08da1ac6eh
+dd 0056b167bh
+dd 0fb855d09h
+dd 035c08e93h
+dd 0ff827e1ah
+dd 09eb6bf54h
+dd 03963bb6fh
+dd 029f8eabeh
+dd 09ca00288h
+dd 00add4b60h
+dd 04df89181h
+dd 09ce8a17dh
+dd 0a5b0b964h
+dd 028645b6ah
+dd 0b9a3ee93h
+dd 0e833c421h
+dd 07f424380h
+dd 03a745e60h
+dd 08f80819ch
+dd 07964977ch
+dd 0c698efd7h
+dd 0eecb398bh
+dd 0396ebe89h
+dd 02fc71dd0h
+dd 02792c0e6h
+dd 0f2b3ecc8h
+dd 0413a9d39h
+dd 0a8d1914ah
+dd 0a9ed3ef8h
+dd 001fed4e1h
+dd 066a78c51h
+dd 0e31c3b0ch
+dd 0cd308f82h
+dd 047f6edd3h
+dd 0946812ach
+dd 06c993fddh
+dd 04d5d1e60h
+dd 0cd5678ddh
+dd 00aa716ceh
+dd 0f22d2199h
+dd 0893d2b5eh
+dd 0f62e8ddbh
+dd 0d99db770h
+dd 0383a1a36h
+dd 0e633ecf6h
+dd 051a4c94eh
+dd 03909281ah
+dd 07f6d9d2dh
+dd 0431f4efdh
+dd 039fd5ffdh
+dd 0681d9283h
+dd 0240ddb37h
+dd 00442c977h
+dd 0db6511f1h
+dd 03a10c15ch
+dd 069061dabh
+dd 0b4e82ed1h
+dd 0db0fffa9h
+dd 037ff94a4h
+dd 0c7464f69h
+dd 0335f4bf6h
+dd 025130f52h
+dd 08bb11e14h
+dd 0b7db9ad2h
+dd 04fe28fa6h
+dd 02803433dh
+dd 0990fd4edh
+dd 0f52557dbh
+dd 09b24b0d3h
+dd 07e0330f4h
+dd 0b1a005d1h
+dd 0ab82fe95h
+dd 0c863dc72h
+dd 0fc451b8ch
+dd 0545d3596h
+dd 0980be476h
+dd 0edae7b5fh
+dd 090259bbah
+dd 0b4bb64bdh
+dd 06c1f54f1h
+dd 05a9ba47ch
+dd 040261f11h
+dd 063cb864bh
+dd 009a471feh
+dd 06b3fc03eh
+dd 050a44aaeh
+dd 0aa635152h
+dd 05fab2311h
+dd 044fc85b3h
+dd 007f20169h
+dd 03c77f52fh
+dd 0750a5bd5h
+dd 0e1e03267h
+dd 0ee7d3f77h
+dd 0e9ae70feh
+dd 00d7856d8h
+dd 0e751e0deh
+dd 0d9ff50d9h
+dd 0f737a64dh
+dd 050c6b413h
+dd 02d42ff2eh
+dd 05cc37108h
+dd 06416e6b3h
+dd 0adabb11fh
+dd 046ade278h
+dd 0e43ff644h
+dd 0361d9e1eh
+dd 0a191f7ach
+dd 05318b54fh
+dd 0c3b2d5d0h
+dd 0258672f9h
+dd 0b7da6071h
+dd 0b3d4e5afh
+dd 0f0b7f78bh
+dd 0a56e9ad4h
+dd 0a19416abh
+dd 0b32cc21bh
+dd 0262ccf3fh
+dd 0267c23f3h
+dd 0ba672344h
+dd 01759da5dh
+dd 0861a0320h
+dd 01a8a1b1fh
+dd 05a327714h
+dd 077e86e54h
+dd 01dd747d3h
+dd 04b2045bah
+dd 09a5e0c75h
+dd 049e039deh
+dd 0724c544ah
+dd 0c3767d62h
+dd 044f0b713h
+dd 04ae973e1h
+dd 0887a3364h
+dd 0bd48058eh
+dd 071020ffdh
+dd 01e1e7245h
+dd 08e5acbaeh
+dd 0ec7b1ffbh
+dd 0149a4442h
+dd 043600a62h
+dd 0f1cd1063h
+dd 0e5aa9eb4h
+dd 00c38bf2bh
+dd 00b09b726h
+dd 07edac24dh
+dd 03c691832h
+dd 00f6d86a6h
+dd 0278a99cch
+dd 0659afa57h
+dd 0265ca538h
+dd 0400f112dh
+dd 07270fd75h
+dd 075d647e1h
+dd 0badf0ab4h
+dd 06d89a33eh
+dd 02bc689f2h
+dd 07dfcd4fah
+dd 0260de1e5h
+dd 051f8d51bh
+dd 041e8f596h
+dd 01ee8a436h
+dd 0f9a30b67h
+dd 00e03aa67h
+dd 0bef47755h
+dd 0f30b3b95h
+dd 0c6007d30h
+dd 0e1ab9ebbh
+dd 0cf661987h
+dd 08dc040ebh
+dd 00c7efd74h
+dd 04e86d449h
+dd 00ff808f9h
+dd 04a2ca31eh
+dd 0d09a9ed6h
+dd 031add2aah
+dd 0607af2cch
+dd 0bd5eee41h
+dd 0ccaf1dfeh
+dd 05cf5ce71h
+dd 0de684178h
+dd 047c4a0c4h
+dd 0b3995d31h
+dd 0f370240ch
+dd 035b50290h
+dd 07858b929h
+dd 0e42c8a7ah
+dd 0d56799b4h
+dd 0764d8137h
+dd 0fe153b33h
+dd 08540968ah
+dd 0bb6bd73ch
+dd 034181dfdh
+dd 0fc3d0cbah
+dd 07993d261h
+dd 08f236487h
+dd 0004daf5ah
+dd 01cbfc324h
+dd 088743c9ch
+dd 0f660dd94h
+dd 0a1a044c8h
+dd 0fc2b8befh
+dd 0171c8d0eh
+dd 0d4d2d4d6h
+dd 03b1515ebh
+dd 0f633124fh
+dd 0ac07d38eh
+dd 0f8a79f74h
+dd 0804e7d38h
+dd 0b74e9080h
+dd 077533853h
+dd 0fca97cf7h
+dd 0207903bbh
+dd 096efd83ch
+dd 0918eea05h
+dd 001050eddh
+dd 0ac9e7729h
+dd 06f6ede55h
+dd 0a94d8789h
+dd 0f43aad56h
+dd 0668722d8h
+dd 022bc8798h
+dd 048063a21h
+dd 0af66b44dh
+dd 0e4820f55h
+dd 0e9b94a96h
+dd 02fb3bc0ch
+dd 0852a87adh
+dd 0dd2fef97h
+dd 079bb788eh
+dd 0ea67be95h
+dd 080d1c244h
+dd 06a246b23h
+dd 07930253bh
+dd 093ddc015h
+dd 068034befh
+dd 0656df330h
+dd 0dd376750h
+dd 0e0b593cch
+dd 0ffbf00afh
+dd 0e6a0791ah
+dd 00049ad4dh
+dd 0c8769ae5h
+dd 0b53f53e1h
+dd 09dd6a475h
+dd 017467480h
+dd 0f6e092dch
+dd 07d3ae518h
+dd 0f490119ch
+dd 05aa51164h
+dd 0707a1324h
+dd 0de9fad3fh
+dd 046e3b6dfh
+dd 05cd82172h
+dd 0a42a6e6fh
+dd 0c833de3ah
+dd 07a401094h
+dd 054ab3a95h
+dd 09999de8dh
+dd 0a33cfd7ah
+dd 09bd2921ah
+dd 0ce9a8ea7h
+dd 0645cd195h
+dd 04a31e995h
+dd 0cf48f50ch
+dd 08c5fbf31h
+dd 0b2e6ba5ch
+dd 0a2143b88h
+dd 015971ae2h
+dd 00f0b50bah
+dd 09c84ec34h
+dd 05a8be92eh
+dd 0fbccbda3h
+dd 085fa2210h
+dd 0dcab97bfh
+dd 0e11fbdf5h
+dd 043712d54h
+dd 034d96e89h
+dd 0a12dc4d3h
+dd 04400d913h
+dd 09d617305h
+dd 0bf675030h
+dd 03fb1026fh
+dd 0c86d510ch
+dd 0d9998637h
+dd 0f7668183h
+dd 016dd0d38h
+dd 0db8b0e4ch
+dd 0385aba61h
+dd 02b4acfd5h
+dd 059d33307h
+dd 09d8b4639h
+dd 0c5909e0dh
+dd 0817671e8h
+dd 06aa0d0e2h
+dd 02661438ah
+dd 0ea1ca3a5h
+dd 0c717e203h
+dd 0c39803e0h
+dd 068ee361eh
+dd 0cb78ec6bh
+dd 0ab6eded2h
+dd 06622257dh
+dd 0b28f4ebbh
+dd 06bfac796h
+dd 0a7c35857h
+dd 0519a1fe8h
+dd 06f913703h
+dd 04b08314fh
+dd 06d1fdda0h
+dd 05d1ba37dh
+dd 09250bdbfh
+dd 0221e9f7dh
+dd 0d3d5d1ceh
+dd 0517f398ch
+dd 087854868h
+dd 08bb7892ch
+dd 014b1955ch
+dd 0b724a103h
+dd 06129c2a9h
+dd 025415bd0h
+dd 018a28779h
+dd 01ab8339bh
+dd 084cebe8dh
+dd 02f6944cdh
+dd 0bce2f7c2h
+dd 08b4762eeh
+dd 06827a719h
+dd 0c2819af8h
+dd 042f094deh
+dd 087cc86e7h
+dd 0e8dff61ch
+dd 027723597h
+dd 0cd8c0b5dh
+dd 020ed0d21h
+dd 0635b41a3h
+dd 011c5445ah
+dd 03f550de0h
+dd 01be40691h
+dd 09ce290bbh
+dd 000fb7842h
+dd 045d2c413h
+dd 08ad2a50dh
+dd 03fd0bc33h
+dd 0a2992f62h
+dd 078b80354h
+dd 0bfe555b7h
+dd 077042693h
+dd 0583c1657h
+dd 0de8eadd5h
+dd 063775938h
+dd 0e7e23e84h
+dd 08cfdbbf6h
+dd 0d18604a8h
+dd 04ad0a90ah
+dd 00110a2c3h
+dd 05fea8809h
+dd 00f0699a5h
+dd 04c1eed35h
+dd 09dfb6168h
+dd 060e449dbh
+dd 03c56a1eeh
+dd 0fa220363h
+dd 00786b91dh
+dd 058e71c06h
+dd 0432ac90ah
+dd 0fa7362b8h
+dd 034ff4cc7h
+dd 0f4e254f7h
+dd 0f5922a1dh
+dd 0b9ca4573h
+dd 0ff754f68h
+dd 08dc78ad6h
+dd 02061c27ah
+dd 00ad94928h
+dd 0f1689e9bh
+dd 05ccff061h
+dd 07c27caa8h
+dd 0c264b359h
+dd 0327e690ch
+dd 044169f29h
+dd 031c80c39h
+dd 0c7fcf852h
+dd 05a354a32h
+dd 0d6555224h
+dd 0061e5766h
+dd 09ffc7cffh
+dd 08a961d9ah
+dd 0bdb3d577h
+dd 0128c1102h
+dd 017b86c88h
+dd 0763d8686h
+dd 0898f9e6eh
+dd 07323b316h
+dd 0ea538c54h
+dd 032d96d36h
+dd 0d70ebcc8h
+dd 0b32c5dc5h
+dd 001142a38h
+dd 00a3f340ch
+dd 0cd2270bbh
+dd 05a425c77h
+dd 08c8642c9h
+dd 0f1031c49h
+dd 037bce8e4h
+dd 09b11eb57h
+dd 0401c1f16h
+dd 0903d8178h
+dd 0d45aba64h
+dd 087361a8ch
+dd 09c4fc56ch
+dd 082a938e8h
+dd 0472458cbh
+dd 0f3856594h
+dd 0cab03f51h
+dd 0f3f80712h
+dd 02572312ch
+dd 0734a14d3h
+dd 0b9b97d93h
+dd 0faf01215h
+dd 06fc44401h
+dd 035e67e61h
+dd 0d113bb6ah
+dd 0bf5c73a5h
+dd 0411dc428h
+dd 05bccf34bh
+dd 089db15efh
+dd 0381bfd93h
+dd 07dd22994h
+dd 085232cbeh
+dd 036bfd88ah
+dd 04b8fb147h
+dd 08baf9b43h
+dd 00c5c7b9fh
+dd 0e8633240h
+dd 0eda0a485h
+dd 0872cb72ah
+dd 0e72a96e5h
+dd 06e37ebb2h
+dd 0ea833c02h
+dd 0a52947e1h
+dd 0071f1fefh
+dd 06272ade8h
+dd 0fead7745h
+dd 0ff0774b2h
+dd 0fd5a9d29h
+dd 0cf24ef2dh
+dd 01a32fbb0h
+dd 039caa391h
+dd 09bfb9f54h
+dd 02f1cc100h
+dd 0d22026d5h
+dd 076353c48h
+dd 09333b021h
+dd 034a6196ch
+dd 08e9c9460h
+dd 0b0bcb22eh
+dd 0fb50b977h
+dd 08e2d76e5h
+dd 0d9fa1b49h
+dd 0cac8cb6eh
+dd 0f165668fh
+dd 0faf0761dh
+dd 0d78e7ce0h
+dd 01303c793h
+dd 0926984e3h
+dd 066453684h
+dd 016af2c64h
+dd 04068c65ah
+dd 09c82e4a8h
+dd 0f0a30315h
+dd 0ebd2b7f0h
+dd 0823616ach
+dd 002a9a94dh
+dd 068ab03cbh
+dd 0a35b3995h
+dd 0cba7339ch
+dd 01384eddeh
+dd 05c8d6b9dh
+dd 00b3402b8h
+dd 081fda71eh
+dd 03b3f3199h
+dd 01bad856bh
+dd 0f3be6eebh
+dd 06ba0596eh
+dd 057fdc0fdh
+dd 0e8b96200h
+dd 02a8416bfh
+dd 0a926bd6ch
+dd 0694a4483h
+dd 0f1c1f6a6h
+dd 079a0f52ch
+dd 09b8b3f1ch
+dd 06eaa955ch
+dd 0bd53aecdh
+dd 0db79cedfh
+dd 0edfc0839h
+dd 06d8e5d5eh
+dd 022c715bbh
+dd 0d05baf1ah
+dd 036d578d9h
+dd 0d012f191h
+dd 0fc83de3dh
+dd 0dcd9bf1ah
+dd 0934d2bc4h
+dd 0fd3015b9h
+dd 0b7c882e7h
+dd 0ae3786a7h
+dd 0537a8287h
+dd 04d692a33h
+dd 0477ce72fh
+dd 01efb1043h
+dd 0ed00ced9h
+dd 031814541h
+dd 0243fb52dh
+dd 0c00ae758h
+dd 0c76aae48h
+dd 048159ff9h
+dd 0f47c54b4h
+dd 004e7875dh
+dd 0e681645fh
+dd 0d8b6c44ch
+dd 0d77ce838h
+dd 00c79c79dh
+dd 0d358241ah
+dd 0ddd6b31ch
+dd 05c51426bh
+dd 0f686ade4h
+dd 01f475438h
+dd 00f5299e5h
+dd 06e249904h
+dd 05c56769dh
+dd 017970175h
+dd 029a90756h
+dd 04ae5bafch
+dd 0da9385c9h
+dd 001319c5dh
+dd 0cf77dd80h
+dd 0b7d2c8e8h
+dd 0b961ce40h
+dd 02cba9020h
+dd 02ed57b48h
+dd 04cd94e2eh
+dd 0110d2f3fh
+dd 083d5667bh
+dd 0db931bd9h
+dd 0c36fb07bh
+dd 0a98ac380h
+dd 0de966dffh
+dd 028638047h
+dd 060ef5f25h
+dd 0244aa5efh
+dd 0695cdc74h
+dd 032b04d4bh
+dd 0c12156e1h
+dd 0c5b1c611h
+dd 07a06e430h
+dd 0a6b9d407h
+dd 01ac866c4h
+dd 0c3aa1b3dh
+dd 0d7b9cf9ch
+dd 0e270d113h
+dd 0b003ce43h
+dd 0610f016ah
+dd 0f5a3fc53h
+dd 082ab252ch
+dd 0fc29f709h
+dd 04162709fh
+dd 08ab8536ah
+dd 046123bech
+dd 094fa7769h
+dd 0d4cfcf02h
+dd 07dc2a7e4h
+dd 03deae8e8h
+dd 01cb145e8h
+dd 007258619h
+dd 0d76ccf8ah
+dd 062e18b97h
+dd 04ded1df0h
+dd 01ee8f77fh
+dd 0a66cf3e6h
+dd 0f6a9a022h
+dd 07f8f17cbh
+dd 03953e1e2h
+dd 06fa5712fh
+dd 0093ffd75h
+dd 00230c903h
+dd 082437826h
+dd 081ff1af2h
+dd 0b41334e2h
+dd 0df3013ddh
+dd 0d491cd2eh
+dd 058d5d87fh
+dd 0fe8b8776h
+dd 0a7bb1d8bh
+dd 05d888343h
+dd 0f5aa3b00h
+dd 04a279b29h
+dd 08bc8e569h
+dd 099b4b255h
+dd 0f3832f52h
+dd 074976ca4h
+dd 0602421b0h
+dd 0b4a08530h
+dd 0c99b22dbh
+dd 074773f96h
+dd 0cb7d2647h
+dd 05fcea91fh
+dd 0b5cc3394h
+dd 001a24828h
+dd 0819d0193h
+dd 03e701e42h
+dd 067c221b1h
+dd 007d22acch
+dd 03ae8177fh
+dd 094896a59h
+dd 00471f296h
+dd 0e1eab289h
+dd 03e8044a5h
+dd 04083b05ch
+dd 07409722fh
+dd 0badc5013h
+dd 0e47ace78h
+dd 09903327dh
+dd 05ac23537h
+dd 02eb44505h
+dd 0547d4c3eh
+dd 00185d66eh
+dd 0f8f3b2c9h
+dd 0939c944eh
+dd 0890e9f38h
+dd 0f336ee43h
+dd 0f159c4b3h
+dd 079375117h
+dd 012f72982h
+dd 053de5b21h
+dd 0a0074b4bh
+dd 08399ad90h
+dd 04f49b3aeh
+dd 0ca27f7f6h
+dd 0b6ab8fc2h
+dd 0abcdabddh
+dd 071bffe01h
+dd 0c2b844b2h
+dd 02552450ah
+dd 09a720129h
+dd 0ca357b0ah
+dd 00c3eb2f1h
+dd 017c5f7a5h
+dd 047e5f892h
+dd 05bc53e23h
+dd 0f037b52bh
+dd 075b8f1eah
+dd 004019e28h
+dd 0d3c351dah
+dd 0deadabdfh
+dd 06618a406h
+dd 0472ff84bh
+dd 055060612h
+dd 0e2253515h
+dd 042efcfb8h
+dd 095b207c3h
+dd 0826b8b77h
+dd 0c8406e03h
+dd 0c0de4c6ah
+dd 0f6090e75h
+dd 028ab0608h
+dd 012e9def8h
+dd 0e806b945h
+dd 05d67fb08h
+dd 04ac322aeh
+dd 088dc542fh
+dd 093798ce9h
+dd 018656bb7h
+dd 08f5d0dc7h
+dd 00a138759h
+dd 0ec1c9dd8h
+dd 057e94417h
+dd 0570fdb22h
+dd 09b1e50c7h
+dd 00bdcc9e9h
+dd 0a753851ah
+dd 04c4e5ac1h
+dd 0d540189eh
+dd 08a88c1eah
+dd 04b0a4cbah
+dd 00242d8dah
+dd 0752d1b2dh
+dd 027c106efh
+dd 06ca319d3h
+dd 0929d0bd6h
+dd 0a20dd2deh
+dd 0df3bd200h
+dd 0fe31b496h
+dd 0b8146963h
+dd 0a4024e49h
+dd 031adc4c8h
+dd 0b2f06be5h
+dd 05174f028h
+dd 0f11769d8h
+dd 0839329f7h
+dd 0a5357697h
+dd 033dc2690h
+dd 0573b3b3eh
+dd 0a5187176h
+dd 0612a1804h
+dd 0eae05eabh
+dd 00cccf434h
+dd 0972007ceh
+dd 0955cd178h
+dd 08bd33567h
+dd 03aab3bc2h
+dd 07c843376h
+dd 0fe336dddh
+dd 0c21bdfa1h
+dd 0edbe4e86h
+dd 0385578dah
+dd 086357de8h
+dd 0ffb9221bh
+dd 099081613h
+dd 07058bf63h
+dd 0dd55293eh
+dd 0c768eff0h
+dd 078552651h
+dd 03305b763h
+dd 098b5d7cfh
+dd 08dedf8eeh
+dd 084a80f76h
+dd 055b47563h
+dd 0e573c1a9h
+dd 05617e0beh
+dd 0a6f4d26dh
+dd 0f159ed47h
+dd 03edc2077h
+dd 0412a9c62h
+dd 0c2402078h
+dd 062f5867bh
+dd 00bf45f7dh
+dd 0b05ffb17h
+dd 0bf57c126h
+dd 0e26000bfh
+dd 0528968d9h
+dd 0224c3798h
+dd 0698eea59h
+dd 0814b2e25h
+dd 0e0f23b12h
+dd 00a23563dh
+dd 04e168851h
+dd 0351c2693h
+dd 088aa64a5h
+dd 0cdd91b12h
+dd 0c8ae165ch
+dd 0a946a22fh
+dd 04d9e7815h
+dd 0723bbba4h
+dd 0c9beaf5bh
+dd 0fd931bcdh
+dd 07b42d0e2h
+dd 04e69f556h
+dd 0b25389f4h
+dd 019c80fc5h
+dd 0fa3fafe0h
+dd 0da8be4c3h
+dd 04a870bb8h
+dd 07f8e25f9h
+dd 062439fadh
+dd 04b0ca9fch
+dd 0bfb48448h
+dd 0418aee4dh
+dd 096014d5ch
+dd 05cd849c2h
+dd 032965bbbh
+dd 0c435568bh
+dd 04f7b632bh
+dd 06a8940b8h
+dd 06d64a84ch
+dd 09cbe9646h
+dd 068a93066h
+dd 033455b5ch
+dd 07c7beb29h
+dd 07673f655h
+dd 0cd36dca8h
+dd 04d47f4b4h
+dd 0fba164efh
+dd 04d531814h
+dd 0c53065a7h
+dd 01b64b4dch
+dd 0e57afc8dh
+dd 0a617fc9ah
+dd 043b8da44h
+dd 074f8f180h
+dd 02f76b823h
+dd 00f65b76ch
+dd 0cc050df3h
+dd 0c0e11f1fh
+dd 06d4728bah
+dd 00dbc6f06h
+dd 010e0d797h
+dd 03494d2b2h
+dd 07eaf424ah
+dd 0a52a29e0h
+dd 0e30f45fbh
+dd 02c290c67h
+dd 007b735dbh
+dd 0831c988ah
+dd 0acc3e230h
+dd 0b1c1e9e0h
+dd 0961733a8h
+dd 047f25acfh
+dd 0472f1bc0h
+dd 0ff7956d2h
+dd 0038c38d5h
+dd 0447b2294h
+dd 0a55fb595h
+dd 074e8fa72h
+dd 0500f764ch
+dd 036c27932h
+dd 026300e4bh
+dd 02137eff0h
+dd 04539ed30h
+dd 0e1e6f799h
+dd 07e5585b9h
+dd 0cb99556fh
+dd 0d8764d5ch
+dd 096709f55h
+dd 0c7533f18h
+dd 0ffabda7dh
+dd 0042bec92h
+dd 01b373559h
+dd 0aad568d9h
+dd 0f0a81848h
+dd 05b0bd176h
+dd 0b8dd0ecch
+dd 0b630a786h
+dd 041c795aah
+dd 0544540ddh
+dd 0439f52cch
+dd 0777f5628h
+dd 095dedce9h
+dd 096bfbfcfh
+dd 0fe53121fh
+dd 0d32f8260h
+dd 052d80e2bh
+dd 09b6ce080h
+dd 0cf238d5eh
+dd 005097c57h
+dd 06d9c0696h
+dd 0c841c299h
+dd 0da5daee5h
+dd 0e19e5399h
+dd 046f1ab56h
+dd 03cfb7d91h
+dd 0fa0148e8h
+dd 0267e9b3dh
+dd 082804c40h
+dd 0fe4c703dh
+dd 03d45f7b6h
+dd 07b9b501fh
+dd 00d286b84h
+dd 061fa208dh
+dd 0daf99019h
+dd 09806d06dh
+dd 0e008b1d0h
+dd 0e17f76fdh
+dd 0b90b27a6h
+dd 0d4f8ef1ah
+dd 08fae2176h
+dd 0a4f2f537h
+dd 0036dbc95h
+dd 0fe998ef9h
+dd 0d9c0032bh
+dd 03b4e8b92h
+dd 0bffb9334h
+dd 0473683e5h
+dd 0c12ea942h
+dd 06df1e93ah
+dd 0529d0839h
+dd 0e7a3bf8eh
+dd 027765cc0h
+dd 0ada1420bh
+dd 044bd7327h
+dd 04358f910h
+dd 03b4b9953h
+dd 0058f3f0dh
+dd 034c54547h
+dd 064323c07h
+dd 02584d8e7h
+dd 0fc91ce12h
+dd 099ed5ec4h
+dd 0877bdaach
+dd 0159b8134h
+dd 073bacb44h
+dd 0cce039d9h
+dd 0354d2bd0h
+dd 0ae74212ch
+dd 05551d2d8h
+dd 01decf48ah
+dd 09b0bf7cbh
+dd 0a3757e64h
+dd 05170dbb5h
+dd 07a8f8b97h
+dd 0d20444b7h
+dd 01bf63516h
+dd 0ccb81d8ch
+dd 0364541d1h
+dd 0ad27aa4ch
+dd 077c8ae58h
+dd 0ae835662h
+dd 0fd116d07h
+dd 048bcbbe2h
+dd 052d3c375h
+dd 0f93bdc25h
+dd 0b49700bch
+dd 0961bfad8h
+dd 0be1df0c9h
+dd 0d2939344h
+dd 0be9318dah
+dd 0846c1f74h
+dd 0108d5371h
+dd 0c32ad438h
+dd 05fe9f920h
+dd 011656d3bh
+dd 08d484735h
+dd 0a0e3c49eh
+dd 0986209aah
+dd 06a623877h
+dd 0c0a9a456h
+dd 0c165a879h
+dd 0fa0a598ah
+dd 088b2608dh
+dd 0ac681edbh
+dd 024b7d1d4h
+dd 0474e73dch
+dd 0e8bd7b16h
+dd 0f9fde243h
+dd 0c0d17c84h
+dd 08c4f0349h
+dd 07ef8afe9h
+dd 0833e748bh
+dd 0cdb611b8h
+dd 03eec4635h
+dd 07cb96e85h
+dd 079c5d441h
+dd 002d460adh
+dd 0d6f40f4fh
+dd 057eefb9ah
+dd 0e1e278e6h
+dd 07dd9a153h
+dd 0dc85f822h
+dd 0fd562864h
+dd 0a9b1814ah
+dd 0bad25d26h
+dd 0ecb916efh
+dd 0211db68eh
+dd 06542484fh
+dd 08b4168a6h
+dd 06afe285ch
+dd 06f075c89h
+dd 068462922h
+dd 069081daeh
+dd 0528f3b10h
+dd 09ddc8e34h
+dd 04f079480h
+dd 0ed5b6300h
+dd 0b3d8480eh
+dd 0f44ca485h
+dd 0d28c6ec0h
+dd 035bbb396h
+dd 029680ff8h
+dd 0750e0772h
+dd 0d039f145h
+dd 0ba903caeh
+dd 08db6ea72h
+dd 024f7ba6dh
+dd 04db01b7bh
+dd 042d0cdech
+dd 042b0556ch
+dd 0a93d2d5ch
+dd 0823288e6h
+dd 0dd5a0843h
+dd 0d4e6d4feh
+dd 0fae8a4f6h
+dd 0b69b60d2h
+dd 0badf70dah
+dd 08d1d9d9eh
+dd 0c828494ch
+dd 08379ef74h
+dd 0e671c476h
+dd 06bf8840ah
+dd 0356f0ac9h
+dd 04ad8a3a6h
+dd 0a3124353h
+dd 0f9771302h
+dd 07b17383eh
+dd 0df1f41b7h
+dd 0789ed047h
+dd 004c5edbeh
+dd 0453e9fc6h
+dd 0df6dadb9h
+dd 0875b3067h
+dd 0ad93ee0eh
+dd 04aec42ebh
+dd 0402e792dh
+dd 05081b336h
+dd 0783e5570h
+dd 06bcafac9h
+dd 0e8239510h
+dd 048799092h
+dd 074eabcb1h
+dd 024a049e9h
+dd 0816c41a8h
+dd 0c0565453h
+dd 09fe48c33h
+dd 0b355e80fh
+dd 039d8e9cfh
+dd 01b67714ah
+dd 0a4dc393bh
+dd 0b0f3f2e7h
+dd 065c77096h
+dd 02e58b5d0h
+dd 0af82f48ah
+dd 03de1e84dh
+dd 0499222fch
+dd 0d76845a4h
+dd 0097af49ah
+dd 0f592d956h
+dd 0aab75963h
+dd 0959b1726h
+dd 0c8cb1f68h
+dd 0f3ff67fah
+dd 006243b25h
+dd 09ee30b90h
+dd 03c8c911bh
+dd 05bd64c18h
+dd 0a1b9db86h
+dd 0c0556540h
+dd 0cec8719eh
+dd 07efcaa08h
+dd 0a8cc7bcfh
+dd 0b9e8fedbh
+dd 02f0e69f6h
+dd 07c07dc67h
+dd 0180e1b97h
+dd 05cbdea93h
+dd 079655e99h
+dd 08aef2ae0h
+dd 0f8edd81dh
+dd 097a2e521h
+dd 0d1d7fbd8h
+dd 0a78e776bh
+dd 07e8f8173h
+dd 0c5609cech
+dd 046eca7bdh
+dd 01b2b0f29h
+dd 0f51f9c9bh
+dd 0e020c7dbh
+dd 01cd05740h
+dd 0a8ac3a58h
+dd 073721542h
+dd 0e7c94cd0h
+dd 0dc06f017h
+dd 0c761007ah
+dd 0c6eb9250h
+dd 0c4ab39afh
+dd 0b43432c8h
+dd 054687695h
+dd 06bafbe26h
+dd 02f850777h
+dd 0b31ab826h
+dd 0168f2ef3h
+dd 0d318b20fh
+dd 04e8d1292h
+dd 0e481c8a1h
+dd 0b9979bd9h
+dd 0c4fddd32h
+dd 0e7998478h
+dd 0e6a74dbdh
+dd 09ba43421h
+dd 0f1168f76h
+dd 0a48c1e65h
+dd 03bac95deh
+dd 0ce223dd6h
+dd 0de347d2fh
+dd 0c0ae441fh
+dd 0ef59cf22h
+dd 03d4745e8h
+dd 0b8999624h
+dd 0618269eeh
+dd 02763dfafh
+dd 0ed1e6c4bh
+dd 0f05952d5h
+dd 0d3903cach
+dd 0b991564ah
+dd 0306b05c2h
+dd 019657246h
+dd 0e07f0999h
+dd 0124d2036h
+dd 0059c5faeh
+dd 029df4661h
+dd 0e177372eh
+dd 059f16fd9h
+dd 03c5fa2d6h
+dd 088f19cc3h
+dd 0c33580ceh
+dd 0695c9118h
+dd 0d8ae3663h
+dd 098e64ebah
+dd 09c0c1614h
+dd 0f09d3f5bh
+dd 07ee9ba76h
+dd 0aafee442h
+dd 0d0a87739h
+dd 08f46dc37h
+dd 0c94cb204h
+dd 0cf0dba0bh
+dd 045e3a6bfh
+dd 0e8d1bd44h
+dd 0c64725c9h
+dd 017da8867h
+dd 0b196e759h
+dd 0b40f77e2h
+dd 0d49a2bd9h
+dd 08b1b3dd0h
+dd 02e8c7bd0h
+dd 0843f548ah
+dd 056d4b005h
+dd 0ed7eedfah
+dd 00ffdd352h
+dd 0251f59f9h
+dd 0732f0ba0h
+dd 0357910f0h
+dd 027b2e591h
+dd 004028518h
+dd 01bc5cf8dh
+dd 0070cdbb6h
+dd 0166311f7h
+dd 017bd5d6ah
+dd 081e2760dh
+dd 0c7fa0560h
+dd 04590d716h
+dd 0185a8931h
+dd 0cf719339h
+dd 00c426e53h
+dd 0af2393c4h
+dd 0c77db2d2h
+dd 050c4a2e9h
+dd 0d0cbaad1h
+dd 09793898eh
+dd 0547caa67h
+dd 0ff195623h
+dd 0b5a087ech
+dd 08344be71h
+dd 0967d6506h
+dd 0df204088h
+dd 075a9f2b8h
+dd 00e44e212h
+dd 0b06c96d1h
+dd 00fdebfa7h
+dd 079bf51bbh
+dd 0add70486h
+dd 0a3e7094fh
+dd 0f9bde632h
+dd 028da64c9h
+dd 01ab351a7h
+dd 0e7ee35dbh
+dd 01ae0278ch
+dd 0d438b526h
+dd 0e96bd30dh
+dd 0af706170h
+dd 03bf5183bh
+dd 0d992799ch
+dd 0a4ead95eh
+dd 0247d3447h
+dd 03aeba81bh
+dd 0b2b510a5h
+dd 053713d03h
+dd 02d53917eh
+dd 01c36814ah
+dd 0db3c8d28h
+dd 07cd43d56h
+dd 0b70ecde7h
+dd 06cfbd9feh
+dd 0a867494dh
+dd 05396f778h
+dd 01d5f32f1h
+dd 07eb265c1h
+dd 0f4da923bh
+dd 05a069637h
+dd 0eda8ed86h
+dd 08038c88ah
+dd 00ff59242h
+dd 0c1c9afd9h
+dd 0c8b6b09fh
+dd 00c0ceb14h
+dd 0565ecf26h
+dd 055b098cdh
+dd 060d4401eh
+dd 0a9762387h
+dd 01e20f0b5h
+dd 0f825eb90h
+dd 0a39e23b4h
+dd 0b3696314h
+dd 0ae898877h
+dd 09e624ac6h
+dd 0e0e187d6h
+dd 080316602h
+dd 0f4fd7cd3h
+dd 0909ba9c3h
+dd 070f66d93h
+dd 0b5643034h
+dd 030a5fa65h
+dd 0301916fdh
+dd 03a79895dh
+dd 06376da7ch
+dd 0c378002ah
+dd 027f4af9ch
+dd 0bfb57e7ch
+dd 055ac38a7h
+dd 03852eca3h
+dd 07eb4d650h
+dd 0bee60660h
+dd 0cc35e79ch
+dd 035940b6fh
+dd 02985cdefh
+dd 02dfa495eh
+dd 04ae7563ch
+dd 0953695e5h
+dd 0855443e9h
+dd 09b0f3503h
+dd 07154fc94h
+dd 08e4f03f8h
+dd 0cbf4fa1bh
+dd 0e1759cd9h
+dd 072d50985h
+dd 0a9457e1dh
+dd 0e9702793h
+dd 0840a835ch
+dd 03dfeb3dfh
+dd 0e1709d7eh
+dd 000e88027h
+dd 0908a40e8h
+dd 051304f70h
+dd 0a556070fh
+dd 04f50c510h
+dd 011efc1a6h
+dd 020f0ddeah
+dd 0a7f37879h
+dd 0e172d7f6h
+dd 0fbf58202h
+dd 0bf28a23dh
+dd 0d3edf393h
+dd 07d0f3c1ah
+dd 045558451h
+dd 0971be9bah
+dd 0dd2ce4bah
+dd 0addd7a49h
+dd 02c077d7eh
+dd 09acd1bffh
+dd 018bf2933h
+dd 051345c21h
+dd 0c0e91b5ah
+dd 0f981dbc3h
+dd 0a0c18305h
+dd 08f3d4e13h
+dd 0ea3e9b97h
+dd 0e1eef690h
+dd 08146ce84h
+dd 0ea403c57h
+dd 08d03935bh
+dd 08d54a8a6h
+dd 08621fac6h
+dd 09db24554h
+dd 0a021b1ech
+dd 0da26150dh
+dd 0a2a7c643h
+dd 03f516352h
+dd 089c58c5dh
+dd 0a9c787efh
+dd 0e39c2c35h
+dd 0dce3e77eh
+dd 00253d329h
+dd 01628ccebh
+dd 0dba83da7h
+dd 0b5d86a8dh
+dd 0eed22daeh
+dd 0c908b0e3h
+dd 052150f56h
+dd 02eef49a0h
+dd 0685cbd86h
+dd 03e5e8cd2h
+dd 06cbc8985h
+dd 0e1bbd219h
+dd 0eb40e394h
+dd 0e3eb1e8bh
+dd 04d55574bh
+dd 017be8107h
+dd 0f5a96f91h
+dd 06a883c60h
+dd 09dbb6237h
+dd 076e7886ah
+dd 0b2020b07h
+dd 0dc11b502h
+dd 0d02f0ecbh
+dd 0940d619fh
+dd 0b4395c20h
+dd 0bc840e03h
+dd 047585d10h
+dd 0c2e09ed5h
+dd 0dc0c004ch
+dd 0f9fe1404h
+dd 0a0dbe5e7h
+dd 03a621b31h
+dd 0c8968c9fh
+dd 0cd8daf61h
+dd 09194668dh
+dd 01a610db0h
+dd 0c01cfad7h
+dd 00a26140ch
+dd 05b14e321h
+dd 0b7ca7525h
+dd 09cc2214ch
+dd 0f4ea355dh
+dd 02d268c88h
+dd 0a2d170a3h
+dd 0b68acc81h
+dd 0738c4409h
+dd 0870af4bch
+dd 041382876h
+dd 029ac2f9ah
+dd 0ff4a4c0bh
+dd 031ff9c10h
+dd 01fee9f28h
+dd 079fa2d94h
+dd 0e5841522h
+dd 00a481889h
+dd 0c8f83c3ah
+dd 0bfc57088h
+dd 0cce3d879h
+dd 0c527517ah
+dd 0fff10ef5h
+dd 0a4b714ceh
+dd 0f0df5f81h
+dd 05d924e98h
+dd 0769d074eh
+dd 06fc48dc4h
+dd 0163ec6ffh
+dd 00ab7723bh
+dd 07dac653dh
+dd 038b5092dh
+dd 08944d7cdh
+dd 0d7277895h
+dd 02a8028bdh
+dd 0c8a4d37bh
+dd 0a4f72303h
+dd 0edfde0d2h
+dd 0fdff8011h
+dd 001913e94h
+dd 0bd1b7739h
+dd 0fa2c9f3ch
+dd 0bec13fd4h
+dd 0e7789315h
+dd 075d4df23h
+dd 02fb86673h
+dd 0ca2404f7h
+dd 069272539h
+dd 08de1e492h
+dd 0205698bfh
+dd 0714d30f0h
+dd 03aee0a84h
+dd 036673926h
+dd 021e714fah
+dd 08f039684h
+dd 04dd6753fh
+dd 0685d551ah
+dd 00771fe23h
+dd 076661df9h
+dd 0d3d6263eh
+dd 0873b0d00h
+dd 0af5c5a17h
+dd 0d26c4c23h
+dd 0b1abc31bh
+dd 02043b0eah
+dd 05d115486h
+dd 0b3d33c7dh
+dd 05ea35651h
+dd 0239ae398h
+dd 09cf7351ch
+dd 0ae346f51h
+dd 0e2935245h
+dd 0957c4ff4h
+dd 02018e061h
+dd 082dd3e7dh
+dd 02f351392h
+dd 0ce6b9608h
+dd 0f7bf3c47h
+dd 07999139dh
+dd 09ff6b750h
+dd 0324826f4h
+dd 024cd7f6eh
+dd 08f6e7526h
+dd 01b222be6h
+dd 0be9e60a2h
+dd 086ba889eh
+dd 08bae0555h
+dd 00660097ah
+dd 0f311488ah
+dd 0feb43d10h
+dd 0388ea440h
+dd 07c603586h
+dd 0228df3d2h
+dd 0493b7e29h
+dd 01fa2906ch
+dd 094e27d51h
+dd 001cd9552h
+dd 05e707750h
+dd 07b89218ah
+dd 0a01daca0h
+dd 0bcdd1c22h
+dd 03d65e9a1h
+dd 0cc99aa8ch
+dd 0ba46821ch
+dd 0fcef0aa5h
+dd 0be715c3dh
+dd 0ae8a27e2h
+dd 01391caefh
+dd 0b2cf4e21h
+dd 0d0ac463eh
+dd 0629c02cdh
+dd 099f7c5cch
+dd 0534dba13h
+dd 0b657a801h
+dd 0628091ceh
+dd 0723102cch
+dd 06fc9d970h
+dd 0cf54acceh
+dd 09ea79ee3h
+dd 0636d1d41h
+dd 06a75d90bh
+dd 0690da61ch
+dd 016c5091dh
+dd 06bd3d3ddh
+dd 0a811dd7fh
+dd 0ed44a762h
+dd 091b2471ch
+dd 0846230e1h
+dd 0d0bdff3dh
+dd 0323224f3h
+dd 0978208f1h
+dd 067d2f0a6h
+dd 0f18e50c1h
+dd 09ba2f51dh
+dd 0d27fc3ddh
+dd 0fcccf81ch
+dd 0eaaefccfh
+dd 08fe11bc8h
+dd 0bed7ca2ch
+dd 0e23757e9h
+dd 067067bc6h
+dd 0a8ca8273h
+dd 0cd584a4ah
+dd 0eedd4742h
+dd 0d356bafah
+dd 07acf82deh
+dd 088df0153h
+dd 0eacd576ch
+dd 07506d2adh
+dd 03063c823h
+dd 03cd6161eh
+dd 073104302h
+dd 07e0e6323h
+dd 040e9e0b0h
+dd 0d1c09e09h
+dd 04d857e6eh
+dd 004ae0b5eh
+dd 0850f657ch
+dd 06e0f0c19h
+dd 06cb4556dh
+dd 00be7c097h
+dd 0df2db6bah
+dd 07c86528ch
+dd 050c96350h
+dd 0aff78fa3h
+dd 0a25df3bfh
+dd 0fe90d54eh
+dd 0db80b142h
+dd 0643a1ce3h
+dd 0dd741deeh
+dd 0523c38ffh
+dd 02e25e7d3h
+dd 00f121dcch
+dd 0aecba702h
+dd 0bdc2efcfh
+dd 0f8d1aba1h
+dd 0d67f00beh
+dd 0c708c2b1h
+dd 0180564aeh
+dd 0c3db03c9h
+dd 0739c04feh
+dd 077ab109ch
+dd 0bf4dfb00h
+dd 003ab1fbah
+dd 065274794h
+dd 0e01d6bfah
+dd 0ba82c345h
+dd 0d12de8f9h
+dd 0c1ff976ch
+dd 0828b5505h
+dd 0e561c4e3h
+dd 056400ffdh
+dd 0b431b158h
+dd 078c2a1e0h
+dd 0076cb0e7h
+dd 0dfbbee4ah
+dd 06af204d3h
+dd 0e3971884h
+dd 0187860abh
+dd 0b1af3df3h
+dd 05b02c5dch
+dd 08d2cf6aeh
+dd 07406197ch
+dd 0b946cf5ch
+dd 0108f4dach
+dd 0fb5baa55h
+dd 0168380c4h
+dd 0555bbcf7h
+dd 085c27fe6h
+dd 0ee3ed391h
+dd 046b4e3e5h
+dd 00c8c26cfh
+dd 0e35d7100h
+dd 0b9152456h
+dd 02c5be475h
+dd 00ac4ce78h
+dd 0d852b4b6h
+dd 0e8c7d6e7h
+dd 08174954dh
+dd 079eed3d2h
+dd 054ba313eh
+dd 072c54560h
+dd 00c5c7db7h
+dd 0d2cfbd92h
+dd 033d00200h
+dd 0c5a466b8h
+dd 0eb6dee95h
+dd 0dfa33499h
+dd 06f4953dch
+dd 06bf7cf5bh
+dd 0efe97aa1h
+dd 0eab120a4h
+dd 01cf8be7ch
+dd 06dc87ccah
+dd 01394d8fah
+dd 025fce1f2h
+dd 062d7d1cch
+dd 0c32ca543h
+dd 09462f9b8h
+dd 0c9b95dd0h
+dd 071ed0a76h
+dd 0c6070d8bh
+dd 05125e312h
+dd 02c7ea104h
+dd 05d875955h
+dd 09f9f5a14h
+dd 0cf21dde8h
+dd 09b8d1bc8h
+dd 082b75b88h
+dd 0ed24df93h
+dd 0d5d4dbdeh
+dd 07e508583h
+dd 0a4032e0eh
+dd 08fa4618bh
+dd 0c4a62c45h
+dd 0c54b0c80h
+dd 07a573436h
+dd 044f2888ah
+dd 0e652697ch
+dd 0204828bah
+dd 0cf9c8455h
+dd 0456570fch
+dd 00cf0aa59h
+dd 0174b55e3h
+dd 032a6564dh
+dd 08564d0b7h
+dd 0f562dd8bh
+dd 061eff4e5h
+dd 09ce1d216h
+dd 0a2be51f8h
+dd 092283232h
+dd 0b392b5ffh
+dd 0af8e4eedh
+dd 0494b9792h
+dd 0b84d4db2h
+dd 01a7f5c61h
+dd 0122ac8fdh
+dd 055443642h
+dd 0100c55fch
+dd 01a5cafc8h
+dd 022debe1eh
+dd 0bc3f7c3ah
+dd 0c73d575eh
+dd 09fb38203h
+dd 04f87051fh
+dd 04f403ec0h
+dd 0fb13fd31h
+dd 0a3c5112bh
+dd 0e08a2b16h
+dd 0221186a6h
+dd 0d324b8e1h
+dd 0bbddcf8bh
+dd 07fcdbe4dh
+dd 05a5bc2fdh
+dd 0b1156ed1h
+dd 02f11b555h
+dd 0c21712f1h
+dd 04a9a13d8h
+dd 0a50dd279h
+dd 064b0342ch
+dd 07177fe7ch
+dd 0aaf011d3h
+dd 075cfdd8dh
+dd 01738493fh
+dd 03e199b9bh
+dd 06ffe5d2dh
+dd 02c04f610h
+dd 02df7b2e7h
+dd 09d2fe2ech
+dd 008a74fdfh
+dd 0f8743553h
+dd 0d4a94133h
+dd 05fd309d0h
+dd 0c12229c9h
+dd 0b1b124ebh
+dd 0abe0a926h
+dd 0eca28d28h
+dd 07a2acac2h
+dd 0154cd4dah
+dd 0bb908367h
+dd 0cc8d6f30h
+dd 0588fccf3h
+dd 00074891fh
+dd 0b6eb080bh
+dd 0629999c6h
+dd 0b9cd252dh
+dd 08eed05dbh
+dd 09347e985h
+dd 0c1d46cdeh
+dd 07313c070h
+dd 0f79d327eh
+dd 0d95ca765h
+dd 0e1190b70h
+dd 04dc981f4h
+dd 0da6d94a3h
+dd 0190c2032h
+dd 03ba5ba92h
+dd 03f3ba54fh
+dd 0b7631be7h
+dd 0b0a1748ah
+dd 042490e49h
+dd 061b656d2h
+dd 019a6ec7ch
+dd 074ee1e18h
+dd 0b6ff1e15h
+dd 03f75a8aah
+dd 0637180e9h
+dd 084ddffd3h
+dd 049bf5799h
+dd 0a2e864e6h
+dd 0a31150c2h
+dd 0d79a652dh
+dd 04a41b1f4h
+dd 058a3ccc4h
+dd 0b9d8914dh
+dd 0dabe3075h
+dd 077d12bb5h
+dd 0d2908eafh
+dd 0bbbaecd4h
+dd 06aef9ffch
+dd 0bbe04413h
+dd 0c1b6bb39h
+dd 0b2254c9fh
+dd 0dbefc627h
+dd 06f5eb3b9h
+dd 07a7997aeh
+dd 041fe85ddh
+dd 05eb32fa3h
+dd 004243e06h
+dd 037a8a1deh
+dd 0ab0fdeafh
+dd 04e2c8855h
+dd 091e3b438h
+dd 0aa497e43h
+dd 097d2462dh
+dd 06e8ebdb2h
+dd 0e6a336aeh
+dd 0daf27719h
+dd 0ee42ba46h
+dd 0688c043fh
+dd 092ef965fh
+dd 0d0dd6eeah
+dd 0de9f5338h
+dd 0534cad3ch
+dd 01b3f12dah
+dd 03f14087ch
+dd 025445b99h
+dd 002f2e791h
+dd 0a2ffb313h
+dd 06dc72261h
+dd 048873327h
+dd 0a89af1bbh
+dd 02b3413abh
+dd 04dd2f41dh
+dd 01fe4d895h
+dd 01b005fa8h
+dd 0c517668bh
+dd 026c38783h
+dd 072913ac6h
+dd 0194cd313h
+dd 0927dd817h
+dd 0605c86a9h
+dd 012f5e3bah
+dd 0729f1f60h
+dd 0ef49ba6dh
+dd 006cd624dh
+dd 0c22df42ch
+dd 0d11fe15ah
+dd 0d75fa350h
+dd 0c75d79d7h
+dd 097083140h
+dd 01fb24b1ah
+dd 0f513818ch
+dd 016debc55h
+dd 07023a12fh
+dd 0191c6a5ch
+dd 071253bc1h
+dd 0c3674dd5h
+dd 0d274965dh
+dd 05eb0285bh
+dd 08197de5dh
+dd 0fce4a406h
+dd 07808b430h
+dd 0c8861a17h
+dd 0e5861364h
+dd 061cd048eh
+dd 0ba952b63h
+dd 00f2e809eh
+dd 005537a2bh
+dd 033eac8eeh
+dd 0dc5be0ddh
+dd 0a5004545h
+dd 03d4079c2h
+dd 051fefa1bh
+dd 0ead03280h
+dd 029b398a3h
+dd 0f501dbd6h
+dd 04f454d1eh
+dd 0ea8f8c2fh
+dd 0d9f3f71bh
+dd 047f0d8eah
+dd 04c2c198bh
+dd 0199f93c6h
+dd 0e76663e1h
+dd 0b1167210h
+dd 00e78d7abh
+dd 0ceee4ba2h
+dd 0d4cf044ah
+dd 06b8833e6h
+dd 0154bcf6ah
+dd 0924bd785h
+dd 0fe5833deh
+dd 080fd5d76h
+dd 06d89143ah
+dd 02dfec09ch
+dd 06a515075h
+dd 059aef705h
+dd 02b040bfeh
+dd 035c9d7e1h
+dd 0b6682e7ah
+dd 0324dd827h
+dd 088f6f986h
+dd 09cd979fch
+dd 011fa189fh
+dd 0e109ba0eh
+dd 0c1da4654h
+dd 043a99dc1h
+dd 07ded7afdh
+dd 05db6a9ach
+dd 076693fc9h
+dd 080c7eebfh
+dd 0b4136db7h
+dd 07cfd72f8h
+dd 08577a631h
+dd 0d169188fh
+dd 06fd1955dh
+dd 03d3eb40eh
+dd 0bacdcc5eh
+dd 005288539h
+dd 0bd3fc492h
+dd 08d73361ch
+dd 02a388ba0h
+dd 08692a55dh
+dd 0ee159305h
+dd 0656318f3h
+dd 08ae91555h
+dd 0aa39ef23h
+dd 08940bd1dh
+dd 0bc887fbdh
+dd 04c392311h
+dd 0ae407496h
+dd 01ec3be97h
+dd 082d27a4dh
+dd 0b1c9d8d6h
+dd 073966ca0h
+dd 0f83bc796h
+dd 00a208cd5h
+dd 0b4a6bbbah
+dd 0c87def1bh
+dd 024cf26bah
+dd 0f10acb92h
+dd 0fa132f59h
+dd 058dc4cefh
+dd 0b74c5ed6h
+dd 06d10c448h
+dd 0cb7adb1bh
+dd 07b88a465h
+dd 09bf7b61eh
+dd 080d1f87ah
+dd 05900c9fdh
+dd 0be18ecefh
+dd 08cd80342h
+dd 0a86c75bfh
+dd 0affa116bh
+dd 0ff077650h
+dd 0239eafb2h
+dd 06f2d4fc7h
+dd 0ec338e56h
+dd 029b1bd33h
+dd 073847463h
+dd 0e2af1b0ah
+dd 063c282ddh
+dd 0bafce293h
+dd 04e4996e1h
+dd 067590052h
+dd 0026fe22bh
+dd 0d0321359h
+dd 0465dacc8h
+dd 0448f0817h
+dd 08329a1ech
+dd 0fdc49937h
+dd 09520f647h
+dd 0656ca0edh
+dd 05534cbf2h
+dd 0680c7e11h
+dd 013c2fe74h
+dd 0ff52a6c8h
+dd 040488e33h
+dd 0dcdd90f5h
+dd 0fde93e0ah
+dd 0833de260h
+dd 0a6234db4h
+dd 0370092e1h
+dd 00167e9dch
+dd 07b2734fah
+dd 08bb89a9fh
+dd 02c72fb8ch
+dd 0591f4366h
+dd 0a4f1374ch
+dd 098b5fafbh
+dd 03734ee95h
+dd 036f438d3h
+dd 0bed0d94ch
+dd 0d923adffh
+dd 06f4ddda3h
+dd 0dd534bfdh
+dd 07ac55bdbh
+dd 0a0baf2ddh
+dd 0b1cccefdh
+dd 058540212h
+dd 0ebcf292fh
+dd 00a2dfcebh
+dd 09a50d6b8h
+dd 03107cee7h
+dd 08e538c0dh
+dd 057c05464h
+dd 07a151189h
+dd 059e39ae9h
+dd 0c960c9b7h
+dd 0d61fab1eh
+dd 0378005dah
+dd 0637b8ea0h
+dd 0450d8745h
+dd 0a367b10fh
+dd 0d6fe25adh
+dd 0d8c44408h
+dd 04c1ee4feh
+dd 088b453ddh
+dd 08f6c6c09h
+dd 0b7346a5eh
+dd 0faaa245ch
+dd 01691df39h
+dd 0ae951710h
+dd 080dd0a02h
+dd 06dcd44d6h
+dd 0127c1dfdh
+dd 0ed1691c5h
+dd 06653b1e0h
+dd 05964f590h
+dd 06f7935e0h
+dd 0ed888a69h
+dd 0ca0b7078h
+dd 080a99f0dh
+dd 03fb96863h
+dd 015acfe61h
+dd 01fb282fdh
+dd 0544a698ch
+dd 0f5fc17c3h
+dd 0958ca1c2h
+dd 0ad13302ah
+dd 017ef3ff8h
+dd 09c7b4644h
+dd 0c4b24740h
+dd 0540d92ddh
+dd 0f8e387d4h
+dd 0792ff9f0h
+dd 0438fe413h
+dd 094bf0597h
+dd 03b9ebcfch
+dd 0b2d9126dh
+dd 0b9e15e98h
+dd 03cfa242eh
+dd 06286dd46h
+dd 0dc99c21ch
+dd 0b2401bd2h
+dd 0dda8edeah
+dd 0401abdbfh
+dd 08c0a1a8eh
+dd 0910ba456h
+dd 0e6ec5cf9h
+dd 0017e283ah
+dd 0b907099eh
+dd 054b60933h
+dd 0bb79509ah
+dd 08bb7db36h
+dd 069067cf8h
+dd 0f6e85a77h
+dd 0702933d4h
+dd 075592a2ah
+dd 07a76b028h
+dd 05c1910c1h
+dd 0a5478fbfh
+dd 093ecb9b7h
+dd 07d3c9d20h
+dd 013863d55h
+dd 0de9a5563h
+dd 089bf92f6h
+dd 0db36a24dh
+dd 0c6695d8dh
+dd 0face9109h
+dd 0a7b56184h
+dd 0b454d1f1h
+dd 0bbb3aafdh
+dd 0fdc25929h
+dd 0827b5f1dh
+dd 015df30e7h
+dd 0881c0111h
+dd 062406c01h
+dd 003b3d7f8h
+dd 0f106eca8h
+dd 08aa949dch
+dd 077e273abh
+dd 021e56665h
+dd 086eb6f56h
+dd 0ed70bb29h
+dd 0f9ce63a1h
+dd 0407c925eh
+dd 0f7fecf5ah
+dd 07d27ecefh
+dd 031c0d107h
+dd 030daef63h
+dd 0088eaa52h
+dd 05fc52638h
+dd 0aa0999f0h
+dd 00a93bcdah
+dd 03e466682h
+dd 0f8fc833bh
+dd 0b9df37cch
+dd 0db4ed621h
+dd 0fa4d3b9ch
+dd 036e8fc39h
+dd 00a9f16bfh
+dd 0bd794903h
+dd 0816db3cfh
+dd 051751c38h
+dd 0e14be528h
+dd 0441c10a8h
+dd 04e407901h
+dd 0f377a30eh
+dd 0e9f2b833h
+dd 0179616b7h
+dd 038ebd29ch
+dd 03db07d76h
+dd 07ebf40afh
+dd 0a902a10eh
+dd 059fc5e7ah
+dd 02cb3c4f2h
+dd 0bfd84715h
+dd 046066d99h
+dd 0710eaa77h
+dd 0bbd75539h
+dd 0a27f2bddh
+dd 069f5d508h
+dd 0f22524dah
+dd 078b77cd8h
+dd 0ceb646a8h
+dd 0d1297c04h
+dd 0a5558a03h
+dd 05bc2fa3dh
+dd 0ee60db3eh
+dd 0d1b7ecbbh
+dd 0cd5a0945h
+dd 02155133fh
+dd 08ddf012fh
+dd 0561ee4c1h
+dd 065724d45h
+dd 04dd1a285h
+dd 02dc333a2h
+dd 060324118h
+dd 0533787dah
+dd 095d98430h
+dd 03a0bde3bh
+dd 0c23e5296h
+dd 0f34f92dfh
+dd 064c70eb0h
+dd 06d6713dah
+dd 0bf42bc58h
+dd 06fa02928h
+dd 026a8fb2eh
+dd 0ade1ff00h
+dd 02accb5d6h
+dd 04df93ff5h
+dd 0b65c68cdh
+dd 0dbd7bef9h
+dd 01add4d0bh
+dd 0de48a4e8h
+dd 07c7295c4h
+dd 05260cf68h
+dd 01802cf11h
+dd 008693db6h
+dd 0e2b0c124h
+dd 0c5f5ea75h
+dd 01dc81471h
+dd 03c9196d5h
+dd 0810f31f8h
+dd 0dac3daa1h
+dd 0a535c250h
+dd 089df35d5h
+dd 0f1cd5c83h
+dd 005050a2fh
+dd 03b6bd7d6h
+dd 0d43e203ah
+dd 08fa5d4deh
+dd 0eaad7d7bh
+dd 0e9ea0391h
+dd 03bf3e74eh
+dd 0cee185e7h
+dd 0f633065eh
+dd 0c8b9be70h
+dd 0a57e5d14h
+dd 0a891789eh
+dd 06e914528h
+dd 0fcb6611ah
+dd 065920cd9h
+dd 01de615f9h
+dd 0cec8d5fch
+dd 00125f1a0h
+dd 0b1cc2d6eh
+dd 082cc8e38h
+dd 000ce1995h
+dd 048e1efbdh
+dd 0c2de9213h
+dd 00976e958h
+dd 0181bae5bh
+dd 0439d9269h
+dd 0306b34c2h
+dd 0992e4afah
+dd 03eebb79ah
+dd 05510b13eh
+dd 0df2d6dd1h
+dd 0c5f2707bh
+dd 0917d1855h
+dd 020752c7dh
+dd 0abf3690eh
+dd 0c509255eh
+dd 0a2448e72h
+dd 0be12a6d7h
+dd 05b88bcbah
+dd 036640193h
+dd 064802560h
+dd 0ff89c44bh
+dd 02ae39dffh
+dd 05ec1db98h
+dd 01fc4ea48h
+dd 0c6d253f7h
+dd 0b3ee6136h
+dd 01c4dabdah
+dd 01ad9815dh
+dd 046b66286h
+dd 0c3bd5259h
+dd 0e0698ce3h
+dd 0c17e53c8h
+dd 0b992946ah
+dd 0fe2a4502h
+dd 03cdd068fh
+dd 0060d5a56h
+dd 09141da67h
+dd 09e0948dch
+dd 054bb77b7h
+dd 07377855dh
+dd 063d14afdh
+dd 072669ad4h
+dd 0f180efb2h
+dd 0416ca9c6h
+dd 01cdbe8a6h
+dd 0a3f10067h
+dd 030673d68h
+dd 0000458a4h
+dd 08c5deb5fh
+dd 0689bdc72h
+dd 0b9fa0df4h
+dd 0de000475h
+dd 0b368c47ch
+dd 0b66ee3a3h
+dd 0989d025eh
+dd 0182a63d4h
+dd 04c7d7a52h
+dd 0b91abf62h
+dd 0b1713a7ch
+dd 051c6e9efh
+dd 06221815eh
+dd 076f40bafh
+dd 06e211bb1h
+dd 0dbf3c9cah
+dd 08787069fh
+dd 09b0a23a4h
+dd 03577eec4h
+dd 0b9991009h
+dd 02e9ac8e0h
+dd 0785e4b84h
+dd 0078c209ah
+dd 0e68ff486h
+dd 0ac8b2b1fh
+dd 0413d87c8h
+dd 0e6cc8073h
+dd 056f9801fh
+dd 09e8dcae9h
+dd 0f9daad4bh
+dd 07f538726h
+dd 0192f4e9dh
+dd 0dc4f638ah
+dd 024c3c1a5h
+dd 0181e8f25h
+dd 059e89943h
+dd 07c7e3ae4h
+dd 0cafa72d5h
+dd 039cf4b91h
+dd 0f153ddf2h
+dd 0686112deh
+dd 0cb0a94a4h
+dd 072b7edc8h
+dd 0eb9d084ah
+dd 0e38a30e9h
+dd 05fa597adh
+dd 08cae5388h
+dd 037436d97h
+dd 05a889b91h
+dd 077c35a15h
+dd 02cdbfc5fh
+dd 0b05a33ech
+dd 00dc01841h
+dd 091d2f610h
+dd 0bbb1ad89h
+dd 024c014f5h
+dd 0dc13652dh
+dd 0e243878bh
+dd 027a12fffh
+dd 0388abef4h
+dd 014e64db5h
+dd 0c98826afh
+dd 0acc40dd5h
+dd 020a971dfh
+dd 0b6de5675h
+dd 0f4080a2bh
+dd 07d4847ebh
+dd 0df4492aeh
+dd 0e31612f8h
+dd 00b9e6942h
+dd 0a5e63c95h
+dd 058b5fca3h
+dd 005795476h
+dd 0a76c0895h
+dd 03e309ff2h
+dd 0ae757902h
+dd 0bd5b3b31h
+dd 062d6f8a8h
+dd 038652cf3h
+dd 05845c4a4h
+dd 0aad826e6h
+dd 05e3bb7e7h
+dd 0b27c9521h
+dd 0340a834fh
+dd 0716e3f71h
+dd 020102452h
+dd 0fa2b154fh
+dd 0532afe1eh
+dd 08c265cf4h
+dd 0f3099e56h
+dd 031ef7848h
+dd 0ae8e1977h
+dd 0e0bf5700h
+dd 0011c5471h
+dd 00d51ff1eh
+dd 06d4ad834h
+dd 0a07d7843h
+dd 04cbc4bdch
+dd 0a556569ch
+dd 008097a06h
+dd 0218a6d80h
+dd 0ebf13cffh
+dd 05d43b9beh
+dd 0a354d15dh
+dd 03567cfd4h
+dd 0cb866e37h
+dd 028bc4c11h
+dd 048f6264eh
+dd 0a0b6159eh
+dd 04ccee557h
+dd 0f184a0b9h
+dd 05e38a0d9h
+dd 0d69cd24ch
+dd 0a57e2880h
+dd 0959d6012h
+dd 01c5405c7h
+dd 0a2d29c0bh
+dd 09710af98h
+dd 0c3ce0c0eh
+dd 01662fbdbh
+dd 0c6490537h
+dd 04bd96ce3h
+dd 0b0d4717ah
+dd 0fc1fe509h
+dd 06d2c3cd8h
+dd 03730e632h
+dd 08cc1b787h
+dd 015b174fah
+dd 03ca94530h
+dd 007cc6e14h
+dd 07ff19b32h
+dd 094fa50cch
+dd 07a02e56ah
+dd 09603c79eh
+dd 0cc3e8f9bh
+dd 0b9355356h
+dd 0fa5d0aceh
+dd 0ccd3412bh
+dd 0d8e5206fh
+dd 0e09eabd1h
+dd 00742f0d5h
+dd 07a929642h
+dd 0e029c6e5h
+dd 0cd76b7f7h
+dd 0ae8ec9deh
+dd 0ffe01fffh
+dd 0f0e3e22fh
+dd 08134fe9fh
+dd 02299643fh
+dd 0990e96fdh
+dd 0e4d8ff88h
+dd 033b77d41h
+dd 0e7f133b2h
+dd 0ae56bb9dh
+dd 0bd461627h
+dd 02d6a6a8fh
+dd 0ffcb70dfh
+dd 08183ec64h
+dd 0a2ac97feh
+dd 09f09a848h
+dd 00ed996beh
+dd 0b61624d3h
+dd 0caef3601h
+dd 0ca6c6771h
+dd 000a06b9dh
+dd 00603045ch
+dd 08288a00eh
+dd 0f98e1ad4h
+dd 0f9e3db30h
+dd 0db22e873h
+dd 085f191d7h
+dd 0d639beach
+dd 0b2b8a74eh
+dd 0f19230deh
+dd 07186b9a1h
+dd 0eb7a5083h
+dd 0ba51e43bh
+dd 072c6c757h
+dd 0f7993377h
+dd 0762bef9ch
+dd 02409a0abh
+dd 00d3a334ah
+dd 0b7f9be59h
+dd 03faeb777h
+dd 02b02bc7ch
+dd 0dc5b8299h
+dd 05641436bh
+dd 0d7d986beh
+dd 0819bd8dfh
+dd 0f0015361h
+dd 004205c64h
+dd 006d7a081h
+dd 0b3c55ffah
+dd 0aca2de3dh
+dd 0777cb7f8h
+dd 0bfafb9dbh
+dd 0326f96b2h
+dd 06806efa9h
+dd 0d09f0af8h
+dd 0fc78b646h
+dd 03a78e4a5h
+dd 0cfd05c58h
+dd 0a317d08dh
+dd 09554f45dh
+dd 051a1960fh
+dd 0286cccfbh
+dd 08219b0bbh
+dd 014900bc6h
+dd 0d73ba30dh
+dd 0489e8c3fh
+dd 0eed7ca4bh
+dd 0a0be298fh
+dd 06dd04b43h
+dd 08bee402dh
+dd 0fbfe74f6h
+dd 0dcc2137dh
+dd 0902d108bh
+dd 0b147ee25h
+dd 073f942eeh
+dd 0c0f5bf6ah
+dd 0cd7e3390h
+dd 0fe750b65h
+dd 038205957h
+dd 0de72819bh
+dd 03aa518a8h
+dd 0c076bac9h
+dd 02c30f684h
+dd 0bcac2dbch
+dd 050433ca3h
+dd 0f9cbff05h
+dd 09a8e1746h
+dd 0a72a80b8h
+dd 054ca7cb7h
+dd 032f8acc4h
+dd 072da2963h
+dd 0d4c10b9eh
+dd 0ccd7ba4dh
+dd 0a63514cch
+dd 05df32df6h
+dd 09d4fbf23h
+dd 020c85556h
+dd 0622a368fh
+dd 04a7c3cbeh
+dd 0a21cb17dh
+dd 0d58f5c3ah
+dd 08a59b904h
+dd 0f51ca267h
+dd 07ab5defdh
+dd 0272ea9cbh
+dd 02e2add85h
+dd 0f2030c41h
+dd 09217d037h
+dd 026a4fe52h
+dd 01ef3fd6bh
+dd 08c79cb63h
+dd 0318dd46fh
+dd 09f4408ach
+dd 0e56bfd76h
+dd 0faf6b659h
+dd 01cb67b7dh
+dd 04613928ah
+dd 03049a15fh
+dd 022f20ed0h
+dd 0046d5dbbh
+dd 0be42457eh
+dd 053285356h
+dd 087a27460h
+dd 0feb4f821h
+dd 098231bb9h
+dd 01a7a2872h
+dd 0fbe9dc4eh
+dd 044c01854h
+dd 086ef903bh
+dd 051076238h
+dd 07210ed9fh
+dd 01d4bd6c8h
+dd 079437a39h
+dd 0eb4b53c0h
+dd 0e5806c80h
+dd 00b7d9b30h
+dd 02c29fe0fh
+dd 0503fb5efh
+dd 09181d33ch
+dd 0d96c5acch
+dd 0dd92ca1dh
+dd 05ff07a3fh
+dd 0ab206e79h
+dd 06eda1517h
+dd 09d8bb45bh
+dd 0fea2068ah
+dd 08bd96fe0h
+dd 0ed29a4d7h
+dd 0c48e2ceah
+dd 03ff165b3h
+dd 01c1303a8h
+dd 0db16bc1eh
+dd 05e59851eh
+dd 078b570a3h
+dd 0ba6d03d3h
+dd 08f66970dh
+dd 0282ebf6eh
+dd 08ce453deh
+dd 09c9c8defh
+dd 020a09716h
+dd 02f2f3665h
+dd 047240babh
+dd 06bc16af0h
+dd 0c62ccd68h
+dd 04e76ee8dh
+dd 01bf2c741h
+dd 010d3a789h
+dd 0ebfb1b17h
+dd 0c83f2393h
+dd 08be1724bh
+dd 0a3bd38efh
+dd 03bb2a9e5h
+dd 0a17e4f1fh
+dd 06506d9eeh
+dd 0ad99882fh
+dd 0903793cfh
+dd 006c38e87h
+dd 04733c659h
+dd 0c81eda73h
+dd 0fb3b70cdh
+dd 060f4a0dbh
+dd 0f7232041h
+dd 02348acf5h
+dd 003523dfdh
+dd 0301fb734h
+dd 077700e28h
+dd 03f28b4fah
+dd 07ff466b6h
+dd 0310141d5h
+dd 0ff6bf379h
+dd 0264d4aa9h
+dd 0045a0c10h
+dd 0d28f584fh
+dd 071ad3066h
+dd 06e94a526h
+dd 00109697fh
+dd 0e4e4d882h
+dd 0fdeabf99h
+dd 0b03a7f68h
+dd 0baab996ch
+dd 0a7c78b98h
+dd 03a9cc123h
+dd 0405d9aaeh
+dd 0035a54d0h
+dd 06bda9e4bh
+dd 07e7401fch
+dd 00c95026ch
+dd 0734e9d09h
+dd 08573bc32h
+dd 0a6259c29h
+dd 05c09a3e8h
+dd 023eaca3ah
+dd 0013b3b89h
+dd 026a3e87ch
+dd 01aebeba4h
+dd 059925064h
+dd 0b8bbeed9h
+dd 0b4d88fa8h
+dd 079ed927bh
+dd 089b11eb4h
+dd 08cbfbe50h
+dd 0a9ec6397h
+dd 0cf591386h
+dd 0f41607ebh
+dd 0ee3cd234h
+dd 072437adbh
+dd 0ccb73c19h
+dd 03e6da77eh
+dd 0170d6cd2h
+dd 0fe530708h
+dd 0de9dcbdah
+dd 0b560dabch
+dd 0ae56f764h
+dd 012ed9df1h
+dd 027587769h
+dd 03910589dh
+dd 0ea924e44h
+dd 00fe43fafh
+dd 06074c149h
+dd 01ef2b362h
+dd 0dca0202eh
+dd 0467d1e9dh
+dd 003a7a666h
+dd 0a5adc845h
+dd 04ee7d96ah
+dd 0c896aba0h
+dd 0fbddc1a0h
+dd 066fdd09eh
+dd 04a879c65h
+dd 0d8e1ecf3h
+dd 0d502031bh
+dd 05b0aaba4h
+dd 092ade478h
+dd 06b4011efh
+dd 0ece6023ah
+dd 093a533f7h
+dd 097397aeah
+dd 0b330490fh
+dd 0cd72ca18h
+dd 0702e318eh
+dd 098c85f34h
+dd 0d0ed8ab3h
+dd 08edf7abch
+dd 0579f0b58h
+dd 0b63ed57dh
+dd 000730e1fh
+dd 0fbf22455h
+dd 078032825h
+dd 0e7dadd45h
+dd 0fd381b2fh
+dd 0f048c4d9h
+dd 0cc1b564ch
+dd 00e32d272h
+dd 02b44de23h
+dd 046905b7fh
+dd 05900d8fdh
+dd 09825cae9h
+dd 04eef2755h
+dd 0bdb934c8h
+dd 07d35bc1dh
+dd 01df85626h
+dd 0239454a9h
+dd 039568e33h
+dd 0ac0697c1h
+dd 08d02a60ch
+dd 06d33ef86h
+dd 00728826ch
+dd 094b10fe4h
+dd 00b32e24dh
+dd 0bef8eeb9h
+dd 012566533h
+dd 00318cda2h
+dd 0cde70c48h
+dd 01592c151h
+dd 082c2f268h
+dd 0797609dbh
+dd 01246690fh
+dd 077bfd903h
+dd 0d9041e3fh
+dd 02538613eh
+dd 0603083e5h
+dd 01a819a72h
+dd 063e74a2ah
+dd 09714cd05h
+dd 0ba47be8fh
+dd 0a23ae804h
+dd 0f0175750h
+dd 08e970bbfh
+dd 07bcc78d3h
+dd 05185e3eeh
+dd 051a79250h
+dd 06e9fdd52h
+dd 059e79ed5h
+dd 039f82845h
+dd 08bc80320h
+dd 0a8afb910h
+dd 0c680b80bh
+dd 00dc7bd5bh
+dd 079e1b5e9h
+dd 07e504109h
+dd 0f92b25eeh
+dd 0a92d77eah
+dd 00f3199f0h
+dd 0b0bcfaf6h
+dd 092e338f0h
+dd 03f1a06ach
+dd 0f15616d5h
+dd 0bc354951h
+dd 07d2fd23fh
+dd 0a8064b25h
+dd 0f57728ffh
+dd 06d9948d8h
+dd 0a9e166efh
+dd 06cd49ef7h
+dd 079e99621h
+dd 02d472b52h
+dd 066f0edcfh
+dd 0da8b769ah
+dd 0f43286d4h
+dd 0bfcc7347h
+dd 0f43544ech
+dd 005bef746h
+dd 094d7c52bh
+dd 0811df303h
+dd 0cf0371fbh
+dd 08bb7ed3dh
+dd 04260c39fh
+dd 08ee88022h
+dd 05001254dh
+dd 04de5a78fh
+dd 03fa3da5ch
+dd 085bf524bh
+dd 04f712ab3h
+dd 013907aceh
+dd 060cb0fedh
+dd 09be71887h
+dd 09e6ae274h
+dd 0a025b71fh
+dd 0af638a6eh
+dd 02ab12e33h
+dd 0052ac336h
+dd 0766645cch
+dd 0d104dc95h
+dd 07051f877h
+dd 006694a30h
+dd 0d3e71286h
+dd 0d94c99deh
+dd 04a5e280bh
+dd 03c520be6h
+dd 040d0bfabh
+dd 0b0764c37h
+dd 011f4405eh
+dd 09d8f3fe9h
+dd 0cd5950d5h
+dd 02cbb402ch
+dd 07bc80b1dh
+dd 0a2dc58f2h
+dd 0da266cb6h
+dd 054a8d5eah
+dd 02cabf1edh
+dd 02fbf9223h
+dd 0c9eb8034h
+dd 0abdff1f5h
+dd 017fc3643h
+dd 05e6fbc89h
+dd 012b894f7h
+dd 020023012h
+dd 0f00ef18ch
+dd 08588d755h
+dd 025bf0c5ch
+dd 09b791519h
+dd 0e1d7b652h
+dd 0b5da0b31h
+dd 080fbed07h
+dd 0adbe3a24h
+dd 09b9af9dch
+dd 08a14c5a9h
+dd 0c2c0d212h
+dd 0058047c1h
+dd 0d02472d2h
+dd 0d7b6ce3bh
+dd 04935039eh
+dd 09b3432e1h
+dd 0cf4c5adfh
+dd 02771773eh
+dd 0fa33228ah
+dd 010bb5837h
+dd 03eb1cc85h
+dd 0b755817bh
+dd 0b45cbf85h
+dd 0b0a7a726h
+dd 07aba84cch
+dd 0d78502cch
+dd 01fda16f4h
+dd 00167acffh
+dd 0586fac95h
+dd 00433b13ch
+dd 0d7067440h
+dd 0719ad914h
+dd 0bafdc01ch
+dd 0d1688429h
+dd 0a641a2beh
+dd 079df6f12h
+dd 025ee7588h
+dd 0ba26629fh
+dd 0218e6764h
+dd 03cf50925h
+dd 05198afffh
+dd 008f812e8h
+dd 0e056a98bh
+dd 000db57f4h
+dd 065e48f51h
+dd 08ca860f1h
+dd 0cebd48e4h
+dd 00c070c93h
+dd 01e085c3ch
+dd 014e63acah
+dd 064d631a8h
+dd 08c36c4f7h
+dd 0fe2afe08h
+dd 0817bdf1ah
+dd 0f3d3f617h
+dd 0ece3feb2h
+dd 0c0bb289ch
+dd 075245479h
+dd 03ff66e28h
+dd 0ffbe5943h
+dd 0763a887eh
+dd 05f357d19h
+dd 0549bb463h
+dd 06a743a86h
+dd 070e227bbh
+dd 06d2341d3h
+dd 09343f412h
+dd 0a4e066b4h
+dd 092fb761dh
+dd 0b2d141fah
+dd 0734a8c1dh
+dd 07dddd9b2h
+dd 02534b686h
+dd 023725d42h
+dd 0f66bde15h
+dd 089945a92h
+dd 0481fb12bh
+dd 084badbf6h
+dd 0efd5a7b7h
+dd 0372b9620h
+dd 0efd4d002h
+dd 0c297db8ch
+dd 0e5fea7dch
+dd 0e0449414h
+dd 0293a10ech
+dd 0bdf8517fh
+dd 058675c4dh
+dd 06d44b49eh
+dd 06cf6ba6eh
+dd 0255a3202h
+dd 01a76db8bh
+dd 07ad70d65h
+dd 0bd758e1ch
+dd 0c5af3708h
+dd 0e2df7264h
+dd 00c223038h
+dd 0a3f617f3h
+dd 046a85485h
+dd 00c152a34h
+dd 0d1e9ace4h
+dd 0b2e1f24fh
+dd 08000d5a4h
+dd 05bc8d195h
+dd 0a6c5dfc5h
+dd 07aa96607h
+dd 0c1ceb271h
+dd 06e994380h
+dd 0acb50f62h
+dd 01e0ecc35h
+dd 08be80b9eh
+dd 0fb23d71bh
+dd 06659e0dbh
+dd 0b228798dh
+dd 025155697h
+dd 0a9127d85h
+dd 0bd7544a8h
+dd 0d0aca694h
+dd 0858829dah
+dd 02394039ah
+dd 016ac6caeh
+dd 01f85767ah
+dd 077722770h
+dd 06e3ba550h
+dd 0aa0d10a9h
+dd 064b19040h
+dd 02921ddc5h
+dd 0305e4702h
+dd 0ae5bc61ch
+dd 053027985h
+dd 0b373ea5eh
+dd 0a343431bh
+dd 00fe9ec13h
+dd 0b9c20a47h
+dd 0e34118f6h
+dd 0d75566efh
+dd 0dcdf9219h
+dd 0ab12515fh
+dd 0a351ddb4h
+dd 0317be8c5h
+dd 02d3d5fb6h
+dd 0bf9b0e07h
+dd 055d0ff05h
+dd 046c309f6h
+dd 075bafb65h
+dd 0138010c9h
+dd 0dba5fa7bh
+dd 06630dd49h
+dd 04a528ccdh
+dd 0befcd899h
+dd 02e84cbfeh
+dd 070eb9f73h
+dd 07257c779h
+dd 0683fcde4h
+dd 01923061bh
+dd 0380036d3h
+dd 05a335876h
+dd 0585beeabh
+dd 0ce096846h
+dd 0ccf221deh
+dd 0f5a197a1h
+dd 05a7d2892h
+dd 0f85fa721h
+dd 058005e09h
+dd 0a9f18ba3h
+dd 0ab37ba57h
+dd 064ff4747h
+dd 079b7124ah
+dd 05fdd2dc1h
+dd 0459aa1e7h
+dd 0a77c921bh
+dd 055491488h
+dd 043f85ed3h
+dd 07d3368d0h
+dd 00b333256h
+dd 0894ca365h
+dd 0af9c5e77h
+dd 00f0ac278h
+dd 05c2f1cffh
+dd 08798dddbh
+dd 00de4487fh
+dd 08b1fee54h
+dd 01027d465h
+dd 0e7d0c05fh
+dd 0dce5fc15h
+dd 0be5a8b31h
+dd 019c76078h
+dd 027f5636fh
+dd 0906fbc95h
+dd 0c67cc358h
+dd 068f03443h
+dd 009dc513fh
+dd 0852b1a85h
+dd 0a09d2be8h
+dd 04c5c267dh
+dd 0b1ba8efdh
+dd 01042d583h
+dd 04ab7743fh
+dd 0cac3e07eh
+dd 0dba8a361h
+dd 0ef04b7b0h
+dd 0cdd27c47h
+dd 03662792ah
+dd 0fa3e38fch
+dd 0513beda6h
+dd 0df1e7924h
+dd 06f2e5680h
+dd 0f5a17312h
+dd 021594ec7h
+dd 0e6b37937h
+dd 0f0323f7ah
+dd 0fd0ae649h
+dd 064fed0a5h
+dd 0f654f08eh
+dd 039e65befh
+dd 088e592f6h
+dd 0064e0454h
+dd 015c3273fh
+dd 04a8fbb55h
+dd 040455596h
+dd 0561a0e55h
+dd 03360e3ach
+dd 02f1819ffh
+dd 04cbda586h
+dd 06841da85h
+dd 02c006a98h
+dd 0847385d7h
+dd 09e38af76h
+dd 09e93ad68h
+dd 0f2c6702bh
+dd 088e19e44h
+dd 0ea07c992h
+dd 0e46427bfh
+dd 0fe87b53bh
+dd 02c283d78h
+dd 0204e5345h
+dd 0c28c6510h
+dd 08bc2e74dh
+dd 0a5551c0ah
+dd 06bd6ac2bh
+dd 0e66ca4f0h
+dd 0bd3becb7h
+dd 0a8805e1fh
+dd 0428c05ddh
+dd 01dd53273h
+dd 05523ef3ch
+dd 0b85cb6a3h
+dd 0ca3ae61eh
+dd 0c57a959fh
+dd 0ddc98102h
+dd 078eb6ad2h
+dd 01db2cb58h
+dd 089a133ach
+dd 0e518e77eh
+dd 0e0aa82eeh
+dd 07d04a702h
+dd 0726bab97h
+dd 0b4ed5c52h
+dd 0949534e2h
+dd 0f84baed5h
+dd 0c8d339a3h
+dd 0361b7f06h
+dd 0f3db4bf6h
+dd 0c6dda3e9h
+dd 04cc2c5a4h
+dd 0b53a356eh
+dd 04f143807h
+dd 07f44a247h
+dd 0ceb3689eh
+dd 0fa0ae878h
+dd 02b5840f9h
+dd 0c9c89eb8h
+dd 09d306d2ch
+dd 0fe1c1bd6h
+dd 09a283696h
+dd 0a6fb1761h
+dd 086899fc7h
+dd 0bb4115afh
+dd 0e6c00a9ch
+dd 03d478783h
+dd 05ffafab9h
+dd 0209a576ah
+dd 0e5bdf7d3h
+dd 05ca5af5ch
+dd 0eb19b0c4h
+dd 02e8c89d5h
+dd 00c5c3a77h
+dd 0244e09b0h
+dd 0e3c41189h
+dd 0aa17165ch
+dd 05a1e4deah
+dd 0bb17a94ch
+dd 0633d6d61h
+dd 0a2228ae7h
+dd 02f8e43dfh
+dd 02fa0952ah
+dd 0b122ab7bh
+dd 04bfe107eh
+dd 0b2509941h
+dd 0a3766141h
+dd 06c36eb87h
+dd 02c7cb4dah
+dd 0ed38caf1h
+dd 047a5e0f3h
+dd 058a6177ah
+dd 0f9562b30h
+dd 0d44bc649h
+dd 055124173h
+dd 09e94edech
+dd 01ad2347bh
+dd 01de729fbh
+dd 0013d8373h
+dd 045423903h
+dd 0fb6e9729h
+dd 0823d2843h
+dd 0fe2495e9h
+dd 0909bcd86h
+dd 051869053h
+dd 01d18c24bh
+dd 08bdd5e9eh
+dd 04c3522a4h
+dd 0e2e727c0h
+dd 084dbe28ch
+dd 0ce198dc5h
+dd 0918b5c35h
+dd 061880125h
+dd 01fbb721ch
+dd 069be1a75h
+dd 0d5503320h
+dd 0a43f487ah
+dd 00ef2c3b2h
+dd 0a05b0a1fh
+dd 0ebe2b701h
+dd 01238041ah
+dd 09b270371h
+dd 001652196h
+dd 080d039ceh
+dd 009457f63h
+dd 0ea9ec62dh
+dd 013c1efa4h
+dd 02b0ad3a5h
+dd 0230b3458h
+dd 0365b8a02h
+dd 04485f355h
+dd 0f746146ah
+dd 0794b41d1h
+dd 043a41129h
+dd 0ffcab00dh
+dd 0aee7a85dh
+dd 0570f03bah
+dd 0c2e6aae3h
+dd 04582050bh
+dd 08f15da87h
+dd 0adeee837h
+dd 0c6921132h
+dd 0b1f250a4h
+dd 03c35a7f1h
+dd 0834f702ah
+dd 0f0ee0fceh
+dd 0797a817dh
+dd 035158326h
+dd 0d91c5a36h
+dd 0eed8e2e9h
+dd 055f5d0e8h
+dd 0be3e29b4h
+dd 04b669527h
+dd 01639f4ech
+dd 0e489241ah
+dd 0912f7afbh
+dd 0eb464f52h
+dd 0d4b780c5h
+dd 09fec48fbh
+dd 05dacede9h
+dd 034277e68h
+dd 0fb8bd7d4h
+dd 0a893661ch
+dd 078e20492h
+dd 00a0f032bh
+dd 0de5d1e1ch
+dd 0faca3312h
+dd 0fd238fb2h
+dd 0d9c69e3eh
+dd 097af0d34h
+dd 0d23ea4ech
+dd 01bc08075h
+dd 03133bc98h
+dd 00f92df81h
+dd 02347fa66h
+dd 0746057b5h
+dd 07b0b0b56h
+dd 0510f332bh
+dd 03e38d411h
+dd 063d80324h
+dd 088efa92eh
+dd 04c364f0ah
+dd 0c86e82ffh
+dd 08d592b1ah
+dd 091643327h
+dd 0050cd53eh
+dd 0e970a67fh
+dd 028497c11h
+dd 0e1b27c4fh
+dd 0b8bf4602h
+dd 0b8df9902h
+dd 03310da25h
+dd 092c443c9h
+dd 01285920ch
+dd 04b1d2388h
+dd 038d68cfah
+dd 0d20d8b64h
+dd 09e6aad8dh
+dd 046e2fea6h
+dd 0f460c248h
+dd 0d71cf589h
+dd 03778d845h
+dd 0538ebc7dh
+dd 0d416ae43h
+dd 0d67e53b6h
+dd 03fab2356h
+dd 0f47f06a9h
+dd 0017535e7h
+dd 0de5445b7h
+dd 0eea8b28dh
+dd 0762ae9b1h
+dd 0ad70896eh
+dd 0f0a36652h
+dd 06e4edf90h
+dd 0196d648dh
+dd 07ec2ed4ch
+dd 0b2d9f82bh
+dd 08d7725f5h
+dd 0ab02d5bdh
+dd 000b6ba51h
+dd 0fdb0b54eh
+dd 0f603e57fh
+dd 09e593eb9h
+dd 071607d2eh
+dd 04b88e8ddh
+dd 010351cc9h
+dd 09648e1a8h
+dd 079e08018h
+dd 07d9fc8a4h
+dd 01b2ff6adh
+dd 0d733f26fh
+dd 0b6bfe53bh
+dd 0935d106dh
+dd 0d9970312h
+dd 0c519d4feh
+dd 031665a20h
+dd 03dcb0c4dh
+dd 0091f0eaeh
+dd 02e11b986h
+dd 08c22f2cdh
+dd 0cf88e3a0h
+dd 02ff55674h
+dd 0fe992dedh
+dd 03bf61469h
+dd 0d2aafe00h
+dd 05fd03387h
+dd 0a46e462ch
+dd 031f0cf7fh
+dd 0f0f529a5h
+dd 0a18f9f72h
+dd 0767bf47dh
+dd 04a1f711fh
+dd 006e4e681h
+dd 09f5eb25eh
+dd 01c2362f7h
+dd 0880e4226h
+dd 0423351aeh
+dd 0f3d71a6bh
+dd 0c8a7a6a5h
+dd 02cb2dda1h
+dd 0c3a438b8h
+dd 0fff527b2h
+dd 07ca0866bh
+dd 031454199h
+dd 011353adeh
+dd 098c084c2h
+dd 02d174639h
+dd 056e99787h
+dd 04dbf8752h
+dd 0578166dch
+dd 07a834f51h
+dd 0b2e19808h
+dd 0d4593d92h
+dd 001b5d59bh
+dd 0950cab24h
+dd 00ab2a6d9h
+dd 0e6618f93h
+dd 07f75ff14h
+dd 0aa035028h
+dd 03cc4a7dah
+dd 08c1a83d1h
+dd 08236eee3h
+dd 0140984f1h
+dd 07dfe2539h
+dd 0257c83f0h
+dd 062882210h
+dd 0f49afa17h
+dd 02ac7dce7h
+dd 0f5b04918h
+dd 01f0d3251h
+dd 0eabe3303h
+dd 0e78556c3h
+dd 0e9db6001h
+dd 0807650cah
+dd 03bf4f2d6h
+dd 0d0319a4ch
+dd 0dd6064dfh
+dd 0a3cbc8aeh
+dd 0aabdc852h
+dd 0eec66426h
+dd 0c488324bh
+dd 09ba5ce53h
+dd 034ce6afbh
+dd 0e120dc41h
+dd 006475f6ah
+dd 0f3b5edbbh
+dd 02e32379fh
+dd 05297a044h
+dd 04414b92ah
+dd 0a9adb457h
+dd 06e57fe6ah
+dd 0503bb7aeh
+dd 04bded397h
+dd 016d6c4feh
+dd 080608929h
+dd 0348cfe43h
+dd 0ec2e8483h
+dd 00d178fb0h
+dd 0a732c403h
+dd 0827bfcfeh
+dd 00066f651h
+dd 0413550edh
+dd 08d60b603h
+dd 043d83a8eh
+dd 0d29af94bh
+dd 09f064c61h
+dd 0b64176ceh
+dd 09a6f7ad2h
+dd 07daa0ed4h
+dd 03e140c11h
+dd 051062d35h
+dd 0fcdf7344h
+dd 02f25405dh
+dd 078b85da2h
+dd 03d2cf37dh
+dd 0df6eeff4h
+dd 0a481f8eah
+dd 0189a8be8h
+dd 0b954f57dh
+dd 021b69118h
+dd 0c34aaf55h
+dd 079df398ch
+dd 0db05c2c4h
+dd 0c1c0344bh
+dd 08ff60f8ch
+dd 0d350bc72h
+dd 0b5c8995fh
+dd 08e18a67bh
+dd 0103d8c79h
+dd 0750c8726h
+dd 0c34ba690h
+dd 022b97969h
+dd 0dc5f18bdh
+dd 0711e666bh
+dd 044b5ea0bh
+dd 04a0084beh
+dd 0bb03a83ah
+dd 0f008e8b1h
+dd 0837b7eafh
+dd 0d7392ab1h
+dd 0f4906461h
+dd 0c9370b92h
+dd 029ea7e85h
+dd 078a96c6dh
+dd 0038138a8h
+dd 0578221f4h
+dd 017079afch
+dd 04092734ch
+dd 000ce793eh
+dd 0eb18fd3dh
+dd 0a48f1337h
+dd 067c49498h
+dd 0567d7d50h
+dd 089bcc126h
+dd 05ce487e7h
+dd 0c54c55dfh
+dd 0509a27d2h
+dd 08225175bh
+dd 0a4245dcch
+dd 04cb3af7dh
+dd 06a6cb1d4h
+dd 04791b721h
+dd 04e02e189h
+dd 05e4b0904h
+dd 04b0a0c85h
+dd 03cf37c0ch
+dd 0f726dae4h
+dd 03625a6a1h
+dd 0a2fa0a92h
+dd 038c063bah
+dd 050145916h
+dd 0ae346ccbh
+dd 0834a4629h
+dd 0d573c61ch
+dd 051ea30a5h
+dd 029c55e26h
+dd 076b60be3h
+dd 06c6018bfh
+dd 00fdf123fh
+dd 0d769b61ah
+dd 089c2e0eeh
+dd 0e36b1033h
+dd 00999e300h
+dd 02321315ah
+dd 0b28bdacbh
+dd 086c03e0dh
+dd 0830f7cddh
+dd 0e6d1ecb7h
+dd 0ad02301bh
+dd 09b817b73h
+dd 0453bdda5h
+dd 0329c2f63h
+dd 0b87cb30ah
+dd 02eb97eadh
+dd 04c112d6eh
+dd 094096e58h
+dd 0f20df42ah
+dd 07c210155h
+dd 00c2fb60ah
+dd 0b800713bh
+dd 09d5dc30dh
+dd 01e493739h
+dd 0aa7ff304h
+dd 0afc23369h
+dd 093c5e2f1h
+dd 04eb1668ch
+dd 0432e547dh
+dd 032260d97h
+dd 02f3d9ed4h
+dd 02a7d9dafh
+dd 088547e32h
+dd 0fd501a87h
+dd 0fa58113fh
+dd 0ec38382fh
+dd 01ca31796h
+dd 067c9e216h
+dd 026087109h
+dd 057167a07h
+dd 0e9aba195h
+dd 0b3ba49eah
+dd 0a912ee32h
+dd 06e62492dh
+dd 0ddc7959bh
+dd 0a7b04648h
+dd 0bfe6fa9ch
+dd 0b662f8a9h
+dd 07d163d3eh
+dd 0e3a344a5h
+dd 07ccfcc94h
+dd 0c6f7978bh
+dd 024962b02h
+dd 075bf605bh
+dd 0d13e53bdh
+dd 0d5c73c13h
+dd 082ff5338h
+dd 06bd72bcah
+dd 03d2e55edh
+dd 0d5d233f1h
+dd 0020f2c65h
+dd 09c24c8deh
+dd 0ad2119f6h
+dd 0a3e3a909h
+dd 033e12922h
+dd 009a0af01h
+dd 03f7843c8h
+dd 053a196bah
+dd 0bbb2803dh
+dd 0c39853bfh
+dd 006d36eb6h
+dd 01ddf8fd4h
+dd 027020439h
+dd 0fb80191fh
+dd 0a340e751h
+dd 00c060366h
+dd 00544e39ch
+dd 04b2abc9ah
+dd 00859ce7eh
+dd 0a7987945h
+dd 0103d4445h
+dd 0d1a0f220h
+dd 06e67ac9ch
+dd 06f6ce6b8h
+dd 044a7ba4ch
+dd 05f6cdcech
+dd 03eade95bh
+dd 08bf07a1ah
+dd 052503794h
+dd 026a54795h
+dd 0297a3d3fh
+dd 04f1d57fah
+dd 0114a3200h
+dd 068d53e00h
+dd 038412292h
+dd 09cfac60bh
+dd 038b7dcd4h
+dd 0662d9381h
+dd 0405a5227h
+dd 0b5a439eeh
+dd 0aa6fd64ah
+dd 088cac559h
+dd 0a5218957h
+dd 0f3d093b4h
+dd 01f135d00h
+dd 07b22bf49h
+dd 07d54eaa8h
+dd 0489a5c2eh
+dd 0a7bcaf16h
+dd 0d1a7e834h
+dd 05b0bea5ah
+dd 081e2c382h
+dd 074c337c5h
+dd 02e92e8efh
+dd 004aad64eh
+dd 0d8d857c9h
+dd 081768854h
+dd 0ff5bda61h
+dd 09162117dh
+dd 0c66f04f2h
+dd 098a31db7h
+dd 07fccddf9h
+dd 0464d887ah
+dd 0e2bbbdf0h
+dd 01548d75fh
+dd 066f76cf8h
+dd 0bae488f5h
+dd 0f010d988h
+dd 0b2d446a2h
+dd 0cf872e5bh
+dd 06ca007efh
+dd 05a29bbefh
+dd 00bb6e06bh
+dd 08d4b68a0h
+dd 0a7a44b2eh
+dd 0e6a4ae32h
+dd 002f68ddeh
+dd 0e3ee5497h
+dd 0f31d9cb7h
+dd 0cf9b8192h
+dd 0c112226eh
+dd 004c52effh
+dd 0e3830e97h
+dd 088154ce4h
+dd 01d7aef25h
+dd 08a9e4378h
+dd 002fbbe49h
+dd 032c7dc30h
+dd 07395bf2ah
+dd 051d4b28fh
+dd 082f508b7h
+dd 0072a80bah
+dd 07c4d4b5ah
+dd 0c68f3dach
+dd 0dd8c0cdah
+dd 0efd66e61h
+dd 0ac431d37h
+dd 08811e8d7h
+dd 0ce6c7b19h
+dd 055788b59h
+dd 0c41b0981h
+dd 0415e1173h
+dd 0b509f5afh
+dd 09c8bec62h
+dd 0f9530f07h
+dd 0faace965h
+dd 0b136b946h
+dd 0abed975ah
+dd 0c39390bdh
+dd 0bee0567eh
+dd 01682b0ceh
+dd 09c643f52h
+dd 019595673h
+dd 0da78a4d5h
+dd 04e88495eh
+dd 0b780d7eeh
+dd 02d340f67h
+dd 0f20aeccbh
+dd 0a23a1960h
+dd 0f536b8b9h
+dd 0752d1488h
+dd 0ec20efb6h
+dd 05ac9ec45h
+dd 0207dfa86h
+dd 02b33d3beh
+dd 0ef3522d7h
+dd 0e61edcf3h
+dd 05301e6deh
+dd 0ee88c217h
+dd 03aee9815h
+dd 02be88badh
+dd 06281d1beh
+dd 0ffe341e7h
+dd 0bfee2c7bh
+dd 0fd3f020ch
+dd 057938d22h
+dd 017b91925h
+dd 0c53713b2h
+dd 0c91eeff7h
+dd 02ca0381eh
+dd 0aaa8ac2ah
+dd 09723ad91h
+dd 0454eb939h
+dd 00aa8169ch
+dd 007024fabh
+dd 0e896dd9fh
+dd 0b0827e4ch
+dd 0dd528ee5h
+dd 052515cb3h
+dd 088792cf7h
+dd 0532b5be1h
+dd 05acab337h
+dd 020f82c38h
+dd 00db1a5e9h
+dd 02831acfdh
+dd 031d613d6h
+dd 0b405fa0bh
+dd 0c958d88eh
+dd 0f39bfa48h
+dd 0b3240a6bh
+dd 0d7dea3aeh
+dd 0244194feh
+dd 0c81aa0bfh
+dd 032b0c490h
+dd 049ef06d5h
+dd 02fa5c2f3h
+dd 0297e711eh
+dd 02321039dh
+dd 04768ff4eh
+dd 03279fe87h
+dd 051021ef9h
+dd 0e9c09172h
+dd 05e86c804h
+dd 0d81268e2h
+dd 0eb6dafd7h
+dd 09f238babh
+dd 00775350dh
+dd 04930f2c3h
+dd 047fbce0fh
+dd 0bcbb1e7ch
+dd 0d8f80fdah
+dd 05717e9a2h
+dd 01176dd2ch
+dd 0135ab851h
+dd 05581651ah
+dd 06658ba97h
+dd 027d1027bh
+dd 0ddf8659ah
+dd 08740a4ceh
+dd 0dffe443ch
+dd 0834bba6ch
+dd 0489c0cb3h
+dd 068e3335fh
+dd 01b9d3046h
+dd 0a1e1975eh
+dd 03ccadfd4h
+dd 029237603h
+dd 082e199f4h
+dd 050deb3a8h
+dd 0c540a9d6h
+dd 000420b42h
+dd 0a8e5faebh
+dd 00824f4ffh
+dd 0b6da34d0h
+dd 0f8c9bf0fh
+dd 0aa488c61h
+dd 068a65832h
+dd 046b90e04h
+dd 0f7ade0a3h
+dd 0114637c5h
+dd 081650a64h
+dd 070454457h
+dd 089f64942h
+dd 04b31f644h
+dd 05b456174h
+dd 02d6c0613h
+dd 0c8293d0dh
+dd 08a5fe158h
+dd 031f24e45h
+dd 050d08591h
+dd 0a0209ae9h
+dd 05ed7067ah
+dd 0e99a44d7h
+dd 0d3bbe693h
+dd 0d4762187h
+dd 0d58c3d33h
+dd 0da1d51cbh
+dd 0eecb1c3ch
+dd 0c02e6ce3h
+dd 0874c34e9h
+dd 0bf7a4df5h
+dd 0a3fe1d53h
+dd 00cfa7272h
+dd 058c83d4ch
+dd 063b7133dh
+dd 0b86a99b2h
+dd 00311a2a0h
+dd 0c8b6e995h
+dd 008d70d24h
+dd 036cae092h
+dd 065b74539h
+dd 095c46c43h
+dd 08cf53e33h
+dd 0856f3a46h
+dd 0f99d3e79h
+dd 0db6be89fh
+dd 0d5cbf0fbh
+dd 09029c5dah
+dd 05bfe3a4ch
+dd 009d87a26h
+dd 0bd4e2c66h
+dd 0bec14a6bh
+dd 0c0bce789h
+dd 021774afeh
+dd 081deb448h
+dd 04c16814ch
+dd 047ab3111h
+dd 0e9f761c6h
+dd 065bbd1e1h
+dd 08d04577bh
+dd 05ec599dch
+dd 041365a21h
+dd 06067d8afh
+dd 0d1562d1bh
+dd 0748f6de7h
+dd 09f649c55h
+dd 0c99f2197h
+dd 0433033d5h
+dd 0fac846f8h
+dd 0a03bb68ch
+dd 07008321bh
+dd 0cc954e88h
+dd 061b15516h
+dd 0d1ffe14eh
+dd 09de46c37h
+dd 0f3c78c02h
+dd 0dbe813cch
+dd 087f21297h
+dd 0b9963175h
+dd 042cf2742h
+dd 059c3c3a5h
+dd 03f73b537h
+dd 0b720298eh
+dd 08e19e6e0h
+dd 0e57dccc9h
+dd 0b08f8d8bh
+dd 00e7f8093h
+dd 072c876c4h
+dd 05a5c4ddah
+dd 09883ad4eh
+dd 01827dae5h
+dd 0b6113625h
+dd 037342754h
+dd 0ed285543h
+dd 05785fe37h
+dd 09cac313fh
+dd 0337ce84ch
+dd 0789df183h
+dd 0d674795bh
+dd 00d982ae6h
+dd 05f44350dh
+dd 0ffee2368h
+dd 09cd423fbh
+dd 0efea42ach
+dd 0dbf7f37ch
+dd 064e30347h
+dd 0c7d2ba2fh
+dd 0cac9d66ah
+dd 03466acdeh
+dd 069e0a49ah
+dd 0ed5f3716h
+dd 0faaf375ah
+dd 0f4c7b23ah
+dd 0ba776357h
+dd 09d94a89ch
+dd 00a83ab9eh
+dd 0469fac2eh
+dd 0740d1420h
+dd 0a469e149h
+dd 08b22c829h
+dd 03b110cb1h
+dd 0df6d4897h
+dd 0bdcc68b2h
+dd 0855214eeh
+dd 04e44dbf6h
+dd 007a57129h
+dd 0c10605e2h
+dd 044b8d3aeh
+dd 01fa7d3a7h
+dd 00fa8c80eh
+dd 01eb66439h
+dd 0c3064c66h
+dd 07df0a68ah
+dd 0a4d90b19h
+dd 01e7113a7h
+dd 01a6049c1h
+dd 030b9330eh
+dd 0b024d992h
+dd 055603e3ah
+dd 0db171489h
+dd 03572a59dh
+dd 0cd955c7ah
+dd 03aa120b2h
+dd 0536a4861h
+dd 0ae23e884h
+dd 01352523ah
+dd 0d2fe838fh
+dd 0720fa297h
+dd 07a0ed401h
+dd 06f69a851h
+dd 040e78ef7h
+dd 07df1e3cbh
+dd 072ec3fa0h
+dd 07704c1a3h
+dd 071cce0eeh
+dd 0705027a4h
+dd 08a85a471h
+dd 0c5106c3eh
+dd 0481c7f15h
+dd 035a261e7h
+dd 04400bd7eh
+dd 03a578705h
+dd 0e1ac4b50h
+dd 00ce3b018h
+dd 0c865da87h
+dd 08f219eb0h
+dd 0bcdc4d39h
+dd 0350b8530h
+dd 0df440187h
+dd 0b3868730h
+dd 0c7725e3bh
+dd 0414b82aeh
+dd 0ddbadc08h
+dd 06c600542h
+dd 0981bba0dh
+dd 06a028beah
+dd 06702f80fh
+dd 0de5d344dh
+dd 04be99f3eh
+dd 0ee50512eh
+dd 0e4eb90e6h
+dd 05bf0157eh
+dd 0be16d56fh
+dd 0781f3d11h
+dd 06403468eh
+dd 089c9180ah
+dd 05eba58c8h
+dd 038902265h
+dd 007dd0371h
+dd 0d4dfd59ch
+dd 04bfe901dh
+dd 030ff20e0h
+dd 0d15b52cdh
+dd 05ef1449bh
+dd 0e9375153h
+dd 0276fe706h
+dd 0ba31ef7fh
+dd 059d621afh
+dd 03b53969fh
+dd 00f983beeh
+dd 0fa1e8ff8h
+dd 09290e647h
+dd 038ba8473h
+dd 06368c076h
+dd 08a30eacdh
+dd 0d0fa5df0h
+dd 0cd454395h
+dd 0598dc5a0h
+dd 0ffc2cd82h
+dd 0e6ba0155h
+dd 0d251a01ch
+dd 065dc92b9h
+dd 049f8d298h
+dd 0f75a9e75h
+dd 099a56b3fh
+dd 01a802bbdh
+dd 0e1f74cf2h
+dd 0c94b3f52h
+dd 09fbd0b28h
+dd 083b128aah
+dd 0ceaf418bh
+dd 07cacffa4h
+dd 0f95f55d7h
+dd 00ad7e615h
+dd 0f0ecd9f7h
+dd 01e1847f6h
+dd 04805e1cah
+dd 09a05f37bh
+dd 085e5535fh
+dd 0ded568f1h
+dd 050180478h
+dd 00f1c3c3fh
+dd 0d80e82bbh
+dd 0fde74de8h
+dd 09ce7f8e0h
+dd 03c9db506h
+dd 050e4cd42h
+dd 0cd8e0640h
+dd 0fd419223h
+dd 0fc693eefh
+dd 069a14ce5h
+dd 0ef866d02h
+dd 060590f79h
+dd 0da92aceah
+dd 031a31edbh
+dd 05c79b134h
+dd 0e6825397h
+dd 0d4763538h
+dd 03eba4698h
+dd 0fa6c667dh
+dd 0c0f2c963h
+dd 0510e0bcbh
+dd 0af13de15h
+dd 03d54505bh
+dd 0da8a08f3h
+dd 0a1eea0b0h
+dd 0ae8967a1h
+dd 0e5873602h
+dd 0a8a0e53fh
+dd 0467c082dh
+dd 0fa7d9f1ah
+dd 04f5911c1h
+dd 0e5c9f022h
+dd 0749d5123h
+dd 053f43a06h
+dd 0c4d0de3dh
+dd 07ec9be2fh
+dd 0eda2c394h
+dd 0d9152571h
+dd 0bfc2234eh
+dd 06dabff47h
+dd 0de5c97cch
+dd 0aea5cbb2h
+dd 07df7644fh
+dd 0e3d27011h
+dd 0cf9fecc8h
+dd 0b2b68e54h
+dd 0df36c628h
+dd 06fe6857bh
+dd 0e089aec3h
+dd 0ebb469a7h
+dd 0d3607b3fh
+dd 02190ae99h
+dd 025119532h
+dd 0f7f0d138h
+dd 081395b63h
+dd 08eab4c78h
+dd 0e02aacb9h
+dd 006e4c8d9h
+dd 03e2f9e84h
+dd 01fe746bdh
+dd 04591cc31h
+dd 0287b81cdh
+dd 0f94a235dh
+dd 0f0e88256h
+dd 096b36369h
+dd 0b3c242bfh
+dd 04976b1a6h
+dd 00e6383b0h
+dd 0f9b3bbe2h
+dd 0052181e2h
+dd 01a7c4c52h
+dd 03aab8735h
+dd 04338a4e5h
+dd 03edb1390h
+dd 0b002721ch
+dd 0457c9b05h
+dd 0f8d19aa7h
+dd 0a8cd8d57h
+dd 07d7a6f28h
+dd 09928b829h
+dd 070a4e917h
+dd 056962e29h
+dd 05dcbfe4fh
+dd 09c987ddfh
+dd 0f6f0d233h
+dd 08fa3d91ah
+dd 0cbeb9271h
+dd 04c92c063h
+dd 08df9ad87h
+dd 0bf333400h
+dd 042bd9d1fh
+dd 088138138h
+dd 0bd6d2c03h
+dd 0aabf1672h
+dd 0aa5c40b8h
+dd 086f88e35h
+dd 025e68d0dh
+dd 0cda326dah
+dd 0ed2be002h
+dd 0ad97eebfh
+dd 0514bd99bh
+dd 07dd4e0a3h
+dd 0cec5af07h
+dd 0b86a84f1h
+dd 077da569ch
+dd 00989f4dah
+dd 0f40c0d98h
+dd 03af71f20h
+dd 025d2d7ech
+dd 0f5888b2fh
+dd 016a4fd6ah
+dd 0240e231ch
+dd 011c1716eh
+dd 04ee656d0h
+dd 060a9028bh
+dd 0ee5c3e7bh
+dd 06fc16993h
+dd 0d248c68ch
+dd 0a344105bh
+dd 083d37aech
+dd 07e08dcafh
+dd 0191133b7h
+dd 0f23db7e2h
+dd 07926aae5h
+dd 024008ab6h
+dd 0877641bfh
+dd 09cf4f839h
+dd 096f3c64dh
+dd 04b364c39h
+dd 0e662b284h
+dd 08b7308fdh
+dd 0529379efh
+dd 019cef699h
+dd 077eadef0h
+dd 0322b7bffh
+dd 0ec47009fh
+dd 047843293h
+dd 0ebaa8da6h
+dd 0d9495ca1h
+dd 079e12e9ch
+dd 08c0980d8h
+dd 0e1331359h
+dd 01abf5bf9h
+dd 06341b999h
+dd 029a17567h
+dd 0ae2b3158h
+dd 004025ab0h
+dd 09dee69b3h
+dd 0c83931e3h
+dd 000db8d22h
+dd 06eb00ea9h
+dd 0c20a749dh
+dd 0d077e87fh
+dd 0670ee849h
+dd 04c1b0aaeh
+dd 0212776e0h
+dd 00c01aaa8h
+dd 00ec7b1e1h
+dd 03113cbc4h
+dd 0b1a2e298h
+dd 0db5aeb95h
+dd 08d7ece27h
+dd 0b09f4c0ch
+dd 03e0d60a5h
+dd 0f7011b0bh
+dd 0ff73d0f5h
+dd 0f9318c61h
+dd 07001ca09h
+dd 04abf406fh
+dd 04c6e8c77h
+dd 045d3a582h
+dd 0559b7389h
+dd 0b355809ah
+dd 0f8132788h
+dd 02b132761h
+dd 01d4bcd7dh
+dd 045cd3b69h
+dd 0c7e47bd3h
+dd 050c6fc5ch
+dd 05ca28b10h
+dd 08dbe14e5h
+dd 0e4cb6a0eh
+dd 0be4b1653h
+dd 0c70ff804h
+dd 070e1623dh
+dd 0c17709dch
+dd 0a296e6e4h
+dd 0abe05129h
+dd 0b87bdfe7h
+dd 0f05204edh
+dd 01e4552a0h
+dd 0fadf71efh
+dd 03ba8e1e7h
+dd 0db3e4ff4h
+dd 0d60989dch
+dd 058ca06d1h
+dd 0300ca565h
+dd 064bd9b62h
+dd 01c3ba58ah
+dd 06d471d28h
+dd 0b9ba8e9dh
+dd 0d0cd1876h
+dd 01ddf2687h
+dd 00d203d87h
+dd 08afd0d3fh
+dd 0419c69ach
+dd 099d25f6ch
+dd 0dac84e1ah
+dd 0779d8402h
+dd 0b8179afbh
+dd 030333597h
+dd 0a34c8ff5h
+dd 07933fd8ch
+dd 05f080c56h
+dd 012440f0bh
+dd 0f6d1ab93h
+dd 0e60f61a4h
+dd 0a33e09b2h
+dd 054e73221h
+dd 0ab6d7fa2h
+dd 078eafd1dh
+dd 0fef353a4h
+dd 058219584h
+dd 06e65cc40h
+dd 00231c86bh
+dd 0d9b564bch
+dd 03088d5ebh
+dd 041505daeh
+dd 0e41825cbh
+dd 07dfdecfbh
+dd 0d3f35dd3h
+dd 02fc0f3b1h
+dd 0c8452b67h
+dd 06390ecf1h
+dd 031f71a7eh
+dd 0e5a49195h
+dd 068ba6c8fh
+dd 090159647h
+dd 0dc9cab46h
+dd 09f32ccafh
+dd 0e57d5289h
+dd 0159e8b84h
+dd 0306fa712h
+dd 0b22cd28dh
+dd 0b4eb1f11h
+dd 0bc872b9fh
+dd 0d024114dh
+dd 0165b8882h
+dd 0accc0098h
+dd 0d228b28ah
+dd 0a846db4eh
+dd 07d86a7e3h
+dd 0310f0f6ah
+dd 0e559a30bh
+dd 00d568c23h
+dd 060992e6fh
+dd 0fe404971h
+dd 05c118b2ch
+dd 06a6367b3h
+dd 05539f75eh
+dd 0d40ebd1fh
+dd 0189676eah
+dd 08e9b8722h
+dd 02045c519h
+dd 069b7601dh
+dd 006929c8fh
+dd 078612ee1h
+dd 0604e7d6fh
+dd 03422a487h
+dd 0876142bfh
+dd 03b1b6d13h
+dd 0ec886309h
+dd 08d7ccf12h
+dd 062c49d4fh
+dd 0c12b13c4h
+dd 07eec83bbh
+dd 02e14268ah
+dd 0850db1b2h
+dd 057ac220ah
+dd 08c0f7d58h
+dd 0a16665fch
+dd 0a313a3f9h
+dd 0388e5bdfh
+dd 0d010a43bh
+dd 098cfedcah
+dd 0d4a03d62h
+dd 05171a748h
+dd 08689bc9fh
+dd 05194d675h
+dd 0cab58dddh
+dd 0413e143dh
+dd 092efc623h
+dd 07fc1e8d4h
+dd 0cdf1fc50h
+dd 0542d2065h
+dd 05a5e467fh
+dd 0e98794fch
+dd 05e2b3021h
+dd 06c61cf22h
+dd 08a27b909h
+dd 05a7c8024h
+dd 03a364753h
+dd 07930d4a0h
+dd 0c2223224h
+dd 03cfc1af3h
+dd 0c7159629h
+dd 0a76298bch
+dd 0fc9ffad9h
+dd 0334cdae0h
+dd 085d08640h
+dd 047ef9fcdh
+dd 0f8eba1ach
+dd 0954205e9h
+dd 032a60202h
+dd 0476a562ah
+dd 0e07260deh
+dd 0476fab12h
+dd 0961f961eh
+dd 0ea8cb779h
+dd 054008d17h
+dd 00db46d3ah
+dd 0a7a41f1ch
+dd 016caae04h
+dd 03d3bfcach
+dd 0ef265da9h
+dd 09b6dc57fh
+dd 06248d08ch
+dd 01aa35cf0h
+dd 051841a2fh
+dd 0635fa51fh
+dd 09c688c03h
+dd 02d0875d2h
+dd 0b4bbe36ch
+dd 05c7d78a5h
+dd 0fdd44a28h
+dd 0596145dbh
+dd 0882bfc72h
+dd 0f846884eh
+dd 0d5cc5236h
+dd 02fb367dbh
+dd 0f8fa7aeah
+dd 089199831h
+dd 05db87974h
+dd 05a96d48ch
+dd 0170e41abh
+dd 0fe00603bh
+dd 08400e7efh
+dd 03f3c904dh
+dd 048aa10adh
+dd 03f8f7ddfh
+dd 08830eb06h
+dd 08c6c0cf8h
+dd 07e15451fh
+dd 0fd1710c8h
+dd 0195d4bfah
+dd 03d9f3d18h
+dd 0a82c55a6h
+dd 0f7140994h
+dd 004e7ec0dh
+dd 044a58351h
+dd 0d13fa82ch
+dd 04e64390dh
+dd 0e9209068h
+dd 01b45c68fh
+dd 01b27d16fh
+dd 029e127aah
+dd 08b84967ch
+dd 00fc7ef51h
+dd 00616c48fh
+dd 0172bd4f5h
+dd 080426980h
+dd 00c4b771fh
+dd 0cd94d1aah
+dd 0bd3bcbcdh
+dd 0c92602a3h
+dd 0f79946e9h
+dd 01fade0e7h
+dd 087780e4eh
+dd 08aef8e4ah
+dd 0b5d9b8d7h
+dd 00e5581adh
+dd 0807da4d8h
+dd 02acc313bh
+dd 00a173b28h
+dd 0bb844195h
+dd 0f46e4dcbh
+dd 0f48e3ac5h
+dd 045ba9e1bh
+dd 0460cf70dh
+dd 00424a69ch
+dd 06c596019h
+dd 059c647e4h
+dd 0a389dfbbh
+dd 09c39d511h
+dd 07e6c0df7h
+dd 01b415f2fh
+dd 0233fd855h
+dd 0eea5d349h
+dd 0ce420da3h
+dd 0ab5d7b9dh
+dd 0a0c78a79h
+dd 0517d4254h
+dd 0d93935b9h
+dd 0b00ab1eah
+dd 042caae9bh
+dd 0e491b25dh
+dd 08820576ah
+dd 0b5c39619h
+dd 028459ec4h
+dd 06d1cd9e5h
+dd 08ab1e9ach
+dd 096ef00dch
+dd 09ebeb2abh
+dd 0ce3d8c9ch
+dd 0f9fe7555h
+dd 08815ee55h
+dd 0041ffd54h
+dd 054801fb5h
+dd 070299fa7h
+dd 0e34d942bh
+dd 0a9b28b25h
+dd 00054796dh
+dd 08670e3d8h
+dd 0f8138ee2h
+dd 0686686ach
+dd 023e661eeh
+dd 094228274h
+dd 06405e4b8h
+dd 07a4c67edh
+dd 045936441h
+dd 07576f618h
+dd 0e5daf6cch
+dd 00519772fh
+dd 00d7a6141h
+dd 052248989h
+dd 04ec5e9ebh
+dd 07a04c015h
+dd 011fe6013h
+dd 08e96e997h
+dd 0eca19b96h
+dd 0947ad8a8h
+dd 07128c489h
+dd 00b60b7a3h
+dd 03adab21eh
+dd 06b20ad51h
+dd 0921efa0fh
+dd 04bcc546bh
+dd 0b9381055h
+dd 04a13d356h
+dd 059c304c6h
+dd 094f11d92h
+dd 001890eddh
+dd 0b269a00ah
+dd 052d2cd63h
+dd 051b00e7fh
+dd 0a569b66eh
+dd 0aa44479eh
+dd 06a78dbbbh
+dd 0f8efe2adh
+dd 02f5f7301h
+dd 01113b259h
+dd 0193c9b2ah
+dd 0dc3af6feh
+dd 0d55e937fh
+dd 02cae0741h
+dd 039a3877eh
+dd 065ff9c16h
+dd 04257409ch
+dd 0c1074071h
+dd 085a7c3b7h
+dd 08983c4c4h
+dd 05921f931h
+dd 06829c30dh
+dd 0eaa3ff52h
+dd 0fe8f1497h
+dd 03452e024h
+dd 039f626aah
+dd 039d9c1fch
+dd 0967f6588h
+dd 0f9c4508fh
+dd 0959d88f1h
+dd 0a135ed0ch
+dd 0efec6c43h
+dd 05fa1a9ech
+dd 0df7a8ef4h
+dd 0cc7f7a45h
+dd 039126c7ah
+dd 095af3450h
+dd 00ddb18a7h
+dd 0757f8c14h
+dd 0af2113e7h
+dd 0ec1aa96ch
+dd 08ef2e3d8h
+dd 0282079f1h
+dd 00bded66ch
+dd 0f8b4a508h
+dd 04a3f426ch
+dd 013fdc9abh
+dd 0b52cb3d9h
+dd 0e9f21ca1h
+dd 0d1a8f21ch
+dd 08b809953h
+dd 02f34c441h
+dd 022c38cfch
+dd 01f8a6c88h
+dd 0220d93dah
+dd 07d5a06cbh
+dd 043f22aach
+dd 0c4d540deh
+dd 04917c3bfh
+dd 0b2ef4816h
+dd 084c2a7d7h
+dd 019493566h
+dd 0fcebe20ah
+dd 0167746e9h
+dd 0a58fbc31h
+dd 0a8068beeh
+dd 0f4dd25d2h
+dd 0a530bb1ah
+dd 0d606b8bah
+dd 0c5c58940h
+dd 0e1fc27dah
+dd 0e36d9b04h
+dd 015ba50c7h
+dd 066ce468ah
+dd 0aa446103h
+dd 0714803feh
+dd 07bbcbe1ah
+dd 0e87d3f49h
+dd 0e79b15b2h
+dd 0cb31a36fh
+dd 0c6ab6cb9h
+dd 04e60c038h
+dd 0089102fch
+dd 0d0b9605eh
+dd 013e65946h
+dd 0ccd4ac03h
+dd 0ecdf9f19h
+dd 0eb558d37h
+dd 0a0129476h
+dd 07b34e615h
+dd 09707c992h
+dd 0494907c9h
+dd 0d82b12f8h
+dd 092bc12f4h
+dd 0da978bb7h
+dd 029c3570bh
+dd 0ea0533e5h
+dd 076abf08dh
+dd 0dde30683h
+dd 08f31d7d0h
+dd 0e8cead36h
+dd 0a3404d87h
+dd 0e23b0101h
+dd 0d683ea22h
+dd 0eb413a10h
+dd 0497659b0h
+dd 0bb0aa93dh
+dd 08a5629e3h
+dd 054287f19h
+dd 04865cf0bh
+dd 0f8ad8c9ah
+dd 084d3cadbh
+dd 0a446d1dbh
+dd 016426147h
+dd 09d92ae20h
+dd 0dc450c70h
+dd 0dbfa5729h
+dd 042ccce2ch
+dd 03adeda59h
+dd 01da24bbdh
+dd 0febd4ca5h
+dd 0acae6821h
+dd 07e97fcf3h
+dd 0cb3aa4b8h
+dd 086e373b6h
+dd 09eb97483h
+dd 014859b1ch
+dd 0b55577b2h
+dd 0ad4ba176h
+dd 0f7809e7fh
+dd 0d7aa2778h
+dd 0e7ac8aa3h
+dd 029b0bf09h
+dd 0164c74d8h
+dd 0367de260h
+dd 0689cbbf0h
+dd 0baa16e6ch
+dd 0e0dd2019h
+dd 0969294fdh
+dd 0ba46d2bdh
+dd 05b25b971h
+dd 00ab03e44h
+dd 041564b48h
+dd 00340f56ch
+dd 0757b9a71h
+dd 0eeced65fh
+dd 076993794h
+dd 0c50e0d61h
+dd 0b81e602eh
+dd 01611b3d5h
+dd 0bd331835h
+dd 0770ae271h
+dd 0dd31df1bh
+dd 0501fb7f2h
+dd 00f7b3e64h
+dd 0606e9614h
+dd 05844a92eh
+dd 0197afd18h
+dd 0a82b04c2h
+dd 0a7a8b2a6h
+dd 04dab9155h
+dd 0b37f2ad6h
+dd 0c99f8b47h
+dd 09caa0ffbh
+dd 0c4480884h
+dd 087e8d851h
+dd 086b48209h
+dd 02da8a7f5h
+dd 09fd91c65h
+dd 080c629c4h
+dd 0a4f0e0fah
+dd 088451f34h
+dd 0c5098b35h
+dd 0531bb8eah
+dd 09a610741h
+dd 0a08686fdh
+dd 0748c4323h
+dd 08546e403h
+dd 01e2fcd7ah
+dd 096c82403h
+dd 064b74f0ch
+dd 0cee859a8h
+dd 07bd041c0h
+dd 0d0a0de1dh
+dd 0053a7d0ch
+dd 0b952951ah
+dd 00bc21a79h
+dd 073355c13h
+dd 0b0a11533h
+dd 0bab0f620h
+dd 076b50193h
+dd 0fc96935fh
+dd 0445ab5d2h
+dd 0bd9ecf1ch
+dd 00d35f08ch
+dd 051918fa5h
+dd 0f3e71b25h
+dd 0a30122ceh
+dd 0134735dfh
+dd 01bbbc1e1h
+dd 092a72168h
+dd 0e4471a8bh
+dd 05a761b68h
+dd 0787d856bh
+dd 0663e454bh
+dd 08feabeech
+dd 02fa04a7dh
+dd 0ced38a13h
+dd 0db7fe2a2h
+dd 0b9ce479fh
+dd 0649684dbh
+dd 0fd4897d8h
+dd 09dbf4532h
+dd 0dcbebd16h
+dd 07d036f38h
+dd 0f549c99ch
+dd 02449dabeh
+dd 0520a7c35h
+dd 07c806e9fh
+dd 079d47b54h
+dd 040524951h
+dd 0613e88d1h
+dd 0e69c8604h
+dd 0c89af047h
+dd 023f25c2eh
+dd 001f94ec3h
+dd 0189bb615h
+dd 0c3452b05h
+dd 08f6245a0h
+dd 06f70df7fh
+dd 0263b94aah
+dd 02a1ea952h
+dd 07f7573edh
+dd 07191db6dh
+dd 089622eaeh
+dd 005ad44edh
+dd 0ac87bad9h
+dd 0f3b72552h
+dd 0e1ab27d2h
+dd 02c865cf9h
+dd 0e4b42ff2h
+dd 0966d3734h
+dd 09b971f12h
+dd 035755bb6h
+dd 0ab35ca3bh
+dd 094f99e57h
+dd 029986572h
+dd 0734609c0h
+dd 0ef8ea7deh
+dd 0b08f2451h
+dd 03635884ah
+dd 00c81699ch
+dd 02d2a9e6fh
+dd 0a34fa533h
+dd 097ea04bfh
+dd 0e0921008h
+dd 095b983e7h
+dd 0c481f747h
+dd 0fdde77feh
+dd 0362db4d0h
+dd 0867b38beh
+dd 0d92a07e3h
+dd 08f90b6a3h
+dd 0641914e2h
+dd 04500d777h
+dd 00ad46aa8h
+dd 0c557c4c3h
+dd 026717b3eh
+dd 0ea63f7beh
+dd 02dc66f0dh
+dd 032bf1559h
+dd 0b783ff2ah
+dd 0ed6fcb21h
+dd 0f03b9052h
+dd 040e320e0h
+dd 05c353f0bh
+dd 0c16b7ceeh
+dd 0a8b20f06h
+dd 0fd3d32c0h
+dd 029fbdce1h
+dd 0ce478666h
+dd 084e5463eh
+dd 0faaf4baeh
+dd 0f6a8776ah
+dd 0cb4fd320h
+dd 00e90ecd9h
+dd 0fc2a8a77h
+dd 08ffb591ah
+dd 08047e943h
+dd 0ad33e3d4h
+dd 05922f897h
+dd 0cd711514h
+dd 05c7caa73h
+dd 08af1fc18h
+dd 0b84f8ad4h
+dd 0c0ea09c1h
+dd 0474fdee8h
+dd 07b9a50fdh
+dd 061787090h
+dd 0cd778cfbh
+dd 0fc22713bh
+dd 08c8ba74ch
+dd 0d0595fa3h
+dd 01c99ae45h
+dd 08c49708eh
+dd 0192520b9h
+dd 04b6bc965h
+dd 095fca478h
+dd 0a5b9f1dch
+dd 07a413110h
+dd 03e79f89fh
+dd 0940f03a2h
+dd 0fc3c738ch
+dd 055d9911ch
+dd 0fb8fa6f6h
+dd 04b94d6edh
+dd 0d354a32ah
+dd 045afc76ah
+dd 02acdf3f1h
+dd 093c0624ch
+dd 09b0c4803h
+dd 0b16e240fh
+dd 09f1c4b2ah
+dd 04c629b83h
+dd 0a94da729h
+dd 01d76ae34h
+dd 05370fdafh
+dd 00c176c13h
+dd 00559d462h
+dd 0b3d60767h
+dd 03389827ch
+dd 09a0fdfc8h
+dd 024789116h
+dd 027ec46a4h
+dd 0b3deebc0h
+dd 042301878h
+dd 0b0105df5h
+dd 0e7cac47ah
+dd 06da8031eh
+dd 0f669045bh
+dd 0d0c0a1aah
+dd 08554ece1h
+dd 052cc92bdh
+dd 0ef7d7be5h
+dd 0e6da1c37h
+dd 0024a345ah
+dd 02d20e64fh
+dd 0f7730f55h
+dd 0b7ce7903h
+dd 0036313d8h
+dd 0cb5943dch
+dd 07ae68ee3h
+dd 0da95a82ah
+dd 0dc6ccde6h
+dd 0f10003a5h
+dd 0bfc9ecdah
+dd 0559d55deh
+dd 08d8d98ech
+dd 00b3eaf2dh
+dd 0fb51e2cah
+dd 0e9266dd2h
+dd 0fee50c13h
+dd 01c36d286h
+dd 02b820831h
+dd 0a2282584h
+dd 01b1bb923h
+dd 0e792fb48h
+dd 0da053301h
+dd 0532438b9h
+dd 04782338eh
+dd 0df69ee1ch
+dd 089a8dd28h
+dd 07db89830h
+dd 0f2a4b82fh
+dd 062cacb12h
+dd 043c45000h
+dd 0440f64a9h
+dd 095669256h
+dd 00faff184h
+dd 0b42d61e7h
+dd 0a448a17ch
+dd 040475adeh
+dd 0c809fc04h
+dd 0cdea6811h
+dd 051b8fc3ah
+dd 03a091d48h
+dd 0b31eb0dah
+dd 0566f7dadh
+dd 0e9d81103h
+dd 0f9db9440h
+dd 0a56d4b26h
+dd 011dc5f3ah
+dd 07fe12ecdh
+dd 0c2bfcf50h
+dd 09f41c9fdh
+dd 0be641da6h
+dd 0076578d9h
+dd 0e9f80242h
+dd 0d88ff513h
+dd 0355867aeh
+dd 0ea720cafh
+dd 05e27d2adh
+dd 0b2c1afa0h
+dd 07326f4aeh
+dd 0be959805h
+dd 01ca90445h
+dd 04cbd1a0dh
+dd 0c6dc8679h
+dd 0f8e63fc1h
+dd 0d7bf8047h
+dd 06b44ae44h
+dd 00a300cb7h
+dd 0dca532bah
+dd 094a77a80h
+dd 03b37e845h
+dd 0f6b25c95h
+dd 064cef64fh
+dd 0eb9f5da7h
+dd 0940f9bf9h
+dd 0cf426f1fh
+dd 082703e7fh
+dd 0c2fb5cf0h
+dd 06ad68129h
+dd 08d863100h
+dd 02795ad93h
+dd 02ca7e020h
+dd 0e259f07ah
+dd 06f73dbb4h
+dd 0478aeec1h
+dd 0f2b131eeh
+dd 08b755c07h
+dd 0f8ce96b7h
+dd 03a6858e7h
+dd 0b8d017a4h
+dd 0091170ech
+dd 0146fdbd5h
+dd 0ba5967eeh
+dd 014d35f96h
+dd 0c2ab91a9h
+dd 0a0e131e4h
+dd 05dbd498ch
+dd 0a6273839h
+dd 02f8632a4h
+dd 0961a1ec4h
+dd 0b9c30bbeh
+dd 002f38c3dh
+dd 0da70bc42h
+dd 076df4887h
+dd 0c0510911h
+dd 0745268b1h
+dd 0f626f406h
+dd 0c587ec65h
+dd 0a59c68afh
+dd 079962d60h
+dd 007343619h
+dd 0c704fdb0h
+dd 04ad28aa3h
+dd 06bb3d9fah
+dd 01c713ca1h
+dd 06563384eh
+dd 066a4f8a4h
+dd 07b6e2755h
+dd 06d738f7eh
+dd 0169db46fh
+dd 0115c9c31h
+dd 04cba40afh
+dd 0d44df8e7h
+dd 064d84defh
+dd 0ae07e25ah
+dd 070efa309h
+dd 06b0ea923h
+dd 0f897969ch
+dd 09bd75571h
+dd 0fbc91f13h
+dd 000b56cb4h
+dd 061ebe3eah
+dd 08397e251h
+dd 046bd2239h
+dd 010fa8adbh
+dd 0fcebb033h
+dd 019da433eh
+dd 0518ec32fh
+dd 01cbff397h
+dd 08be63c8ch
+dd 0be50057ch
+dd 0f6e9536ah
+dd 0c6f76cbfh
+dd 058ad38f3h
+dd 0731a0fceh
+dd 0c02e374dh
+dd 0bd1d2829h
+dd 07cbdb0f6h
+dd 02768b285h
+dd 0b2df54a4h
+dd 0ab8db252h
+dd 08af43adfh
+dd 02f3d535fh
+dd 0209d602ah
+dd 0ed3bf7eah
+dd 0b20b355eh
+dd 012bdd295h
+dd 05d3f8c90h
+dd 0881f5171h
+dd 0720f06d2h
+dd 061d118a8h
+dd 0eeebf584h
+dd 04e52ed59h
+dd 09dcb454eh
+dd 0420fe06ch
+dd 010c3e033h
+dd 01941e375h
+dd 0c33c0e14h
+dd 06edabeach
+dd 00c0e454ch
+dd 044efe29ah
+dd 0c7af987ch
+dd 0f53b09a2h
+dd 015cfb6eah
+dd 07e05a6cbh
+dd 0e83c4cf0h
+dd 00ef35ccbh
+dd 094f54f04h
+dd 0f4b5cdc2h
+dd 0170bc6c8h
+dd 0bd8b1c70h
+dd 0623789bfh
+dd 0282ac72ah
+dd 068c977e7h
+dd 052da25cdh
+dd 07beb7e74h
+dd 03f7fee76h
+dd 0dbdca7ffh
+dd 0128ce669h
+dd 01d7ec1eeh
+dd 0a90e7193h
+dd 02c897053h
+dd 099344624h
+dd 00bc05efah
+dd 0cb551f3bh
+dd 0d7c9fea6h
+dd 00608a54fh
+dd 0fb66807fh
+dd 0dce314f9h
+dd 08047811fh
+dd 026f4bfedh
+dd 035a6c2feh
+dd 09af65553h
+dd 00070f4f4h
+dd 0d69ee90bh
+dd 00593a76ch
+dd 0974674b5h
+dd 0df8e0af5h
+dd 03209fc91h
+dd 01144ffb3h
+dd 0d7ec724dh
+dd 0a68b5f33h
+dd 04331391bh
+dd 019cecdf0h
+dd 020345495h
+dd 06545d488h
+dd 0741e7ef4h
+dd 00cb7ced7h
+dd 087815095h
+dd 0f3e965fch
+dd 027fbcd92h
+dd 0a8f62aa1h
+dd 0ba4d75b8h
+dd 019586f43h
+dd 02e953a0eh
+dd 02c8a1791h
+dd 095235ca2h
+dd 044953715h
+dd 075d6ffaeh
+dd 0b57947b7h
+dd 0709b22d9h
+dd 005bd727ch
+dd 0c9e54903h
+dd 064d32d3fh
+dd 0245fe296h
+dd 02cca0f5ch
+dd 0ea816fe5h
+dd 09b9b33eeh
+dd 08c88f9b6h
+dd 0035dea54h
+dd 0c56d13fdh
+dd 0a6d8eb78h
+dd 08fdc657dh
+dd 01a78791fh
+dd 0708e057fh
+dd 05baeca68h
+dd 05ca1179eh
+dd 0347b0d0bh
+dd 0fd8c75ech
+dd 0ee392d2dh
+dd 0646ab472h
+dd 0659c5698h
+dd 0a278f6cfh
+dd 000ae5e1eh
+dd 021ff7c19h
+dd 0001c7ea1h
+dd 03094daf0h
+dd 048a807a0h
+dd 080cde70bh
+dd 077805ac5h
+dd 083d97ebeh
+dd 0cb26665ch
+dd 039663c10h
+dd 0318434c0h
+dd 0346ba048h
+dd 0933ac4d8h
+dd 015dcf594h
+dd 0f42f28d8h
+dd 0bbec8f79h
+dd 06fb59e96h
+dd 0f334b897h
+dd 0b4d46193h
+dd 0dc621945h
+dd 06eaa1194h
+dd 02b50eba9h
+dd 06a69a02fh
+dd 09a10cecfh
+dd 07f18bbbdh
+dd 0863bef0ch
+dd 0930c427dh
+dd 076b4386ah
+dd 0b8d849dch
+dd 0ef2c6534h
+dd 0c7f2381dh
+dd 05d654290h
+dd 0424d41fah
+dd 0303a5579h
+dd 0117a19a1h
+dd 02a89f047h
+dd 0cdc37c7ch
+dd 024e7160dh
+dd 0e0e05e20h
+dd 07aafd2e8h
+dd 0e5e9841bh
+dd 043832b76h
+dd 0f1d4f0e6h
+dd 0297ec413h
+dd 0c8bd25d6h
+dd 074691316h
+dd 0ad634e7fh
+dd 09b58b65fh
+dd 012946953h
+dd 0ad746713h
+dd 034f36944h
+dd 0ac0ae9e0h
+dd 07340a288h
+dd 0e0e70c94h
+dd 02a08f6ceh
+dd 0bf5172afh
+dd 049fc9d56h
+dd 03f8c0523h
+dd 0ce97c8a2h
+dd 0aefa316ah
+dd 004d82a35h
+dd 0687dcc88h
+dd 067025768h
+dd 0ae4c3107h
+dd 0bca6c28ch
+dd 09fbdab3dh
+dd 08179e2deh
+dd 0a8ffc132h
+dd 075b16a82h
+dd 04ae99d76h
+dd 07f31113bh
+dd 006632a36h
+dd 0a0ac2224h
+dd 04d7653fch
+dd 018c4a42ch
+dd 08ad6c25fh
+dd 0c55f4aa7h
+dd 01a049b94h
+dd 0d6690f0fh
+dd 0c4fa75d0h
+dd 001305a96h
+dd 0b54eddb6h
+dd 079695c9bh
+dd 0bfa884fdh
+dd 07d0aa84ch
+dd 07f90fb42h
+dd 00c687057h
+dd 04f718436h
+dd 0b2c350bah
+dd 05b8fed0fh
+dd 02d2ff442h
+dd 074ba987eh
+dd 055d14acfh
+dd 050279733h
+dd 0e0bbbbabh
+dd 01ebab7cah
+dd 0904ce5c3h
+dd 07ce7f82ch
+dd 085c1b37eh
+dd 0c00fbeafh
+dd 02143f96fh
+dd 0a8d39996h
+dd 02e1df5a8h
+dd 0e50bbaaeh
+dd 079f819c5h
+dd 08d9bb873h
+dd 04c99982ch
+dd 0ed88665ch
+dd 01edf4e0ch
+dd 0400c7ad2h
+dd 012618be5h
+dd 0b4cc018bh
+dd 008a6a87dh
+dd 00a2bb003h
+dd 051005cc3h
+dd 07508f633h
+dd 09b8015a2h
+dd 04ee8e234h
+dd 0729124b1h
+dd 0f068909ch
+dd 0927a06a4h
+dd 0e50d26d6h
+dd 0b8b0302eh
+dd 0f43e5a89h
+dd 0a1f20d1dh
+dd 0241afcf5h
+dd 02ea7fe51h
+dd 0f203b2a6h
+dd 0beccb813h
+dd 02e4811c4h
+dd 0439a5240h
+dd 0c685c68eh
+dd 040493331h
+dd 07e075837h
+dd 0d5b551c5h
+dd 0955ad7eeh
+dd 039d8bc1bh
+dd 06693b064h
+dd 028fc6a42h
+dd 010628270h
+dd 0b7b0fd2ch
+dd 042141d2eh
+dd 0973ddb39h
+dd 0a0c52638h
+dd 0d0570150h
+dd 06fcfdad6h
+dd 03ebe9d9bh
+dd 057264cabh
+dd 0fa9fc198h
+dd 010cb2dd1h
+dd 0bab9d373h
+dd 04c21150ch
+dd 0b0367e73h
+dd 082b703b9h
+dd 08c4eacb7h
+dd 0553b0a0dh
+dd 0c74b53cfh
+dd 0aaa66832h
+dd 0d314f9dah
+dd 0b132f833h
+dd 0cf090128h
+dd 038e50b27h
+dd 026e8bbe6h
+dd 0ce72c311h
+dd 0fe68a674h
+dd 0c9b46500h
+dd 0a307c0ffh
+dd 08c5ceabch
+dd 02a795ff9h
+dd 02a3db988h
+dd 0af2e6aa7h
+dd 0bec1dbb6h
+dd 0609cea8ah
+dd 0cb4b7faah
+dd 0c9408db4h
+dd 0d5a8eb5ah
+dd 0a37e7945h
+dd 060406e73h
+dd 02608dc40h
+dd 052fb97d4h
+dd 01e75fbcdh
+dd 0f6fdd6ebh
+dd 0d0bb7134h
+dd 033b75b6dh
+dd 0b1cbb602h
+dd 0c4c986d0h
+dd 03e868504h
+dd 0a4918387h
+dd 0092ce657h
+dd 0155c3837h
+dd 0c86ae796h
+dd 037bd3d09h
+dd 0f970fe1fh
+dd 068fc56e2h
+dd 0689a503ah
+dd 0813e9d01h
+dd 0f1688103h
+dd 0b0b6b2e0h
+dd 0e5e6eee6h
+dd 0d1b08020h
+dd 00caf5ae2h
+dd 013aca6adh
+dd 00e5f75a3h
+dd 0d7eff999h
+dd 067e8cbb0h
+dd 038fed51dh
+dd 056bdb81bh
+dd 0eed04db5h
+dd 08d874d34h
+dd 02f0437f9h
+dd 021c7c59ah
+dd 054dc601ah
+dd 0839a3b64h
+dd 061e36ce6h
+dd 018d7100dh
+dd 0fd90aa31h
+dd 0c2521ef7h
+dd 02eda7edfh
+dd 0d58a06dch
+dd 04b115f09h
+dd 0689b1adbh
+dd 0d6b9ec64h
+dd 09a60136fh
+dd 02a154292h
+dd 0cd59701ah
+dd 0d3924caah
+dd 0e0709abfh
+dd 0c06e9393h
+dd 0676845c8h
+dd 074861105h
+dd 0af89620dh
+dd 0dbaec6ach
+dd 0a0aed33ch
+dd 065cc1ab1h
+dd 035121293h
+dd 009cb80d0h
+dd 0e49b3e1ah
+dd 061ad7237h
+dd 089ce7712h
+dd 0b8093350h
+dd 0a2adc17ch
+dd 0413ee987h
+dd 016fd5b56h
+dd 091db648dh
+dd 019da7687h
+dd 078ea6880h
+dd 0dcd34e8ch
+dd 0664290b9h
+dd 07b3ac6afh
+dd 06b740c12h
+dd 0ae0355aah
+dd 09ac0c8f6h
+dd 0c4ca9073h
+dd 0dd1b6c73h
+dd 05506ed03h
+dd 013aa92a6h
+dd 087255ba9h
+dd 00f14b8eeh
+dd 0b507c997h
+dd 0e1d16566h
+dd 0bc945733h
+dd 032629ac5h
+dd 0fd7b6a0ah
+dd 082e22008h
+dd 0d48249deh
+dd 06f57ce43h
+dd 0cd439fcah
+dd 0d8679443h
+dd 0aa593c51h
+dd 04177a440h
+dd 034f2926ch
+dd 08f912a71h
+dd 075ad2252h
+dd 029780990h
+dd 0c73d2ff8h
+dd 08a10955ch
+dd 016a03294h
+dd 0fbd7131ch
+dd 08e35646ah
+dd 0593ac488h
+dd 0ab4b6c72h
+dd 06dd2a1bbh
+dd 0c6be6f3ah
+dd 0db6e3c60h
+dd 008f60250h
+dd 0f4e6b665h
+dd 025d71199h
+dd 0f1739d1eh
+dd 0b6ac3fadh
+dd 031a37430h
+dd 00d0508ffh
+dd 025d8ef84h
+dd 0619aa40bh
+dd 005c694efh
+dd 034fae695h
+dd 0be2a1042h
+dd 027737abbh
+dd 0e59ffb53h
+dd 0137e3ebfh
+dd 0b938ed35h
+dd 01bb5f02ah
+dd 0643ad559h
+dd 048329677h
+dd 0318d78e3h
+dd 0b3f293e1h
+dd 08544e2eeh
+dd 0eec48886h
+dd 06cfe619ch
+dd 077fc4557h
+dd 0c088b58fh
+dd 0a9738b9bh
+dd 05ca8f4ddh
+dd 0967bf937h
+dd 06d75ef37h
+dd 05589b875h
+dd 0eef2dc4dh
+dd 0a6aadb0dh
+dd 069811853h
+dd 0e1c6179ch
+dd 040666f6dh
+dd 09823c797h
+dd 0d255a5f2h
+dd 00575babeh
+dd 0050e338ah
+dd 033bf73fdh
+dd 056834da8h
+dd 08fd08c92h
+dd 08b862f30h
+dd 0a4aac84dh
+dd 06521ae0eh
+dd 040f15101h
+dd 05b7b331bh
+dd 028278f16h
+dd 0df457c37h
+dd 0cd33a3d5h
+dd 01c45cdf9h
+dd 028d96c38h
+dd 083d2455eh
+dd 0314f227eh
+dd 02251beaeh
+dd 09be4c775h
+dd 0e89c94e3h
+dd 0dfca7b39h
+dd 0770f0e4ch
+dd 0b0d692bah
+dd 06af88892h
+dd 07b7da4e9h
+dd 036c44f34h
+dd 082a6a900h
+dd 017895ed1h
+dd 097e6ca7dh
+dd 0625695a2h
+dd 095b66594h
+dd 09a769fech
+dd 0d4590174h
+dd 0ab718b73h
+dd 0e9cf57fbh
+dd 0082c58fah
+dd 0d321557dh
+dd 0134c64e2h
+dd 013f41143h
+dd 0d051273ch
+dd 08fa5fac9h
+dd 0f34cb936h
+dd 031ff8ccfh
+dd 02789bf5dh
+dd 046c8f882h
+dd 0b8ced28bh
+dd 0e968732ah
+dd 06f06ff9eh
+dd 00c3e3fd9h
+dd 04cff5823h
+dd 0e6e11ca4h
+dd 09a00ea41h
+dd 0cba7c704h
+dd 0547e89a2h
+dd 080c546dbh
+dd 0dfc4a4ech
+dd 04c692009h
+dd 0d08a5ddeh
+dd 0108b9623h
+dd 0ffd5a8fdh
+dd 0b0ebfa6bh
+dd 088b36e59h
+dd 0b5d17d79h
+dd 0f7e5a118h
+dd 07d63588bh
+dd 0dccd18d6h
+dd 01811e5bfh
+dd 0b128ba46h
+dd 036458594h
+dd 05712a50fh
+dd 0542d1f38h
+dd 0c08fd620h
+dd 0a88e0b54h
+dd 0f8f3815eh
+dd 04c9d4055h
+dd 0098f7603h
+dd 098cc9cdfh
+dd 011662b01h
+dd 078d68a9ah
+dd 0b0130334h
+dd 07e18fb08h
+dd 04086203ch
+dd 01ea762cah
+dd 03622e675h
+dd 0e0023030h
+dd 08aced871h
+dd 03424cd15h
+dd 0a8709551h
+dd 0ff15d72ah
+dd 08b3cf361h
+dd 024c91eddh
+dd 088c7a4b1h
+dd 0b46ec3f2h
+dd 007b0a45ah
+dd 0e5c1e775h
+dd 0f937bc29h
+dd 020f37bbch
+dd 08445e3fch
+dd 0d490bfbeh
+dd 0a2e88b8ah
+dd 09c2ac73ah
+dd 0bd40e80dh
+dd 06f1521dah
+dd 0182ca706h
+dd 0a8c6310ch
+dd 08bb8bf8dh
+dd 02003032ch
+dd 076cf917bh
+dd 06681694bh
+dd 0725c4611h
+dd 09cafc12dh
+dd 06d6543ech
+dd 00f3b3107h
+dd 0c1b84723h
+dd 09e22663ah
+dd 08b10193eh
+dd 041c634e7h
+dd 08a5cabc8h
+dd 07e855e29h
+dd 09caccc80h
+dd 06d24fc52h
+dd 09d72d5e0h
+dd 05d7988e7h
+dd 09bb42d86h
+dd 02783de81h
+dd 09143a257h
+dd 000328746h
+dd 0629e6d1dh
+dd 0e2bd1cb6h
+dd 02879c640h
+dd 07b968359h
+dd 027f49c24h
+dd 002ba44d9h
+dd 096cb15f9h
+dd 0f5bd077fh
+dd 0c85dd301h
+dd 0e394d0aeh
+dd 0a37b17fbh
+dd 0dc9bf381h
+dd 0693555abh
+dd 0f291e709h
+dd 061456c86h
+dd 0f8d61ee4h
+dd 055ed0d88h
+dd 0075b6f9ah
+dd 08b165754h
+dd 0a372b613h
+dd 0f26fbaabh
+dd 073c592bbh
+dd 0f45a6bf4h
+dd 0880969b8h
+dd 09274768bh
+dd 0c0f7e253h
+dd 045cdb8a6h
+dd 01bf2c0cch
+dd 007c60522h
+dd 0864ff797h
+dd 0e41f674ah
+dd 06f717820h
+dd 05b823025h
+dd 0a3b30d3bh
+dd 05db7863ch
+dd 0206f0e78h
+dd 0d6f78adfh
+dd 0e3107754h
+dd 0a9707439h
+dd 00141f0b3h
+dd 0ae116520h
+dd 085f3cc30h
+dd 0bfe99217h
+dd 06b15ad80h
+dd 0c7e82573h
+dd 0a899ba88h
+dd 0ce92096dh
+dd 0c734e807h
+dd 05f414e33h
+dd 05068242ch
+dd 0afdf0285h
+dd 0195befb1h
+dd 0a961ef75h
+dd 05bb4e398h
+dd 06f0a9fcbh
+dd 0e02a5f8ch
+dd 08433e416h
+dd 0c1eed07eh
+dd 0428b0e94h
+dd 05bdefc03h
+dd 04f2ddbcah
+dd 062833d0ah
+dd 0698e0393h
+dd 084838cefh
+dd 040cb5f06h
+dd 00edc57ddh
+dd 0422936f0h
+dd 0ab969cb3h
+dd 0f8c39e97h
+dd 09623fb0eh
+dd 075c9a767h
+dd 0c972f2f8h
+dd 062184652h
+dd 0b21d39eah
+dd 0b55ff111h
+dd 054ce3524h
+dd 0f5b8519ch
+dd 019917b8ch
+dd 0fdb4484bh
+dd 05de86498h
+dd 03dcd4098h
+dd 0a44d8fa9h
+dd 0c5037f9ah
+dd 01500e589h
+dd 0b2546d6ch
+dd 0a27a649eh
+dd 0235883b3h
+dd 0b0af9beah
+dd 0369d83a6h
+dd 09212f7ech
+dd 0962b0f17h
+dd 085acb044h
+dd 00e5a47afh
+dd 0dff292a8h
+dd 06eff927eh
+dd 06ca7557ah
+dd 0f8eda697h
+dd 01a568b1ah
+dd 0341906bah
+dd 004a64b2dh
+dd 0fee0ec85h
+dd 035a7b30ah
+dd 012529326h
+dd 07aa94ee7h
+dd 06f58ed33h
+dd 0f38989cah
+dd 043c00248h
+dd 0c83b15efh
+dd 0aa11c532h
+dd 044304c99h
+dd 0418e60f3h
+dd 0c1a32b8bh
+dd 02d0dc427h
+dd 0af54ae56h
+dd 04f3edfb5h
+dd 09d67f17ch
+dd 00d126af7h
+dd 0f02baf28h
+dd 0fb5076f8h
+dd 01293f64eh
+dd 0b1ac282ah
+dd 0d5718de7h
+dd 08893b88ch
+dd 0e8bc257fh
+dd 0da450542h
+dd 01fdc54e6h
+dd 02f96fde6h
+dd 01063f0f4h
+dd 044cd5c9bh
+dd 04f62e360h
+dd 0d8c5389fh
+dd 092f7fce5h
+dd 09cee9b83h
+dd 07a3405b4h
+dd 05e04ccc8h
+dd 09a6b5061h
+dd 0e482363ah
+dd 0e43eca22h
+dd 0c786ff5ah
+dd 0c91a09b9h
+dd 0fb8a8c2fh
+dd 0f99ab2afh
+dd 0193f4a1dh
+dd 04542e79dh
+dd 038a20e1ah
+dd 0cdc6bdc8h
+dd 0017b10f1h
+dd 02a55c71dh
+dd 04f8c6ab4h
+dd 02bb416e7h
+dd 0400806fch
+dd 09dc2fb15h
+dd 0e6c432c5h
+dd 006836ce9h
+dd 096da699eh
+dd 0c7fc687fh
+dd 0528bd167h
+dd 03274a877h
+dd 0e16e0a28h
+dd 0d97b619ah
+dd 0b901d6d8h
+dd 0f1f7c7adh
+dd 0289a34e3h
+dd 08a2dfa8eh
+dd 0b044ca37h
+dd 07ff69964h
+dd 039b3c75fh
+dd 0bd520869h
+dd 0fd71bd27h
+dd 0829d1507h
+dd 0a91b849ch
+dd 062117440h
+dd 0f18edfd7h
+dd 05eccde3eh
+dd 0656a0812h
+dd 06aeee6e8h
+dd 0397c171ch
+dd 03c45ee1bh
+dd 03bb7c05ch
+dd 012a284ech
+dd 01b644a17h
+dd 0e832a77fh
+dd 0cf94fedah
+dd 0d695eba8h
+dd 06d3458b6h
+dd 04f08eeceh
+dd 09453d33eh
+dd 00cf939b3h
+dd 0b344bcb9h
+dd 0346cd71dh
+dd 07147a5f9h
+dd 0eccb8214h
+dd 00a721638h
+dd 0c2bc1e3ah
+dd 0114acd15h
+dd 0926cbc94h
+dd 026bf4ccbh
+dd 0a9f041a1h
+dd 01a33d811h
+dd 0d83ea782h
+dd 088409d12h
+dd 017c11837h
+dd 041a0b39fh
+dd 0916b6851h
+dd 01b5d736fh
+dd 0c9abead9h
+dd 0aa6c3e62h
+dd 07809a1bbh
+dd 0a9fe1148h
+dd 079678a9eh
+dd 097a57e00h
+dd 04413a702h
+dd 090b3c90bh
+dd 0b34fca7bh
+dd 0957dc9ech
+dd 05ac5821ch
+dd 0ab916374h
+dd 0a5b9fab0h
+dd 0886cf654h
+dd 043707921h
+dd 081c5a5cch
+dd 05acfdc4fh
+dd 0dfefbaaah
+dd 082be06d6h
+dd 0332d2bcch
+dd 014cbd77fh
+dd 0ea29361eh
+dd 0946ee7d8h
+dd 0bedf95a8h
+dd 09a91060ch
+dd 008aaa74eh
+dd 0908b173ah
+dd 0a3df564ah
+dd 0871f8ab9h
+dd 0dc9f5aafh
+dd 0c7a39175h
+dd 0308cb5d5h
+dd 0258602d4h
+dd 07921d455h
+dd 0f997f3cch
+dd 0df384b82h
+dd 083242997h
+dd 0739e1109h
+dd 0fec15c94h
+dd 07171b7f4h
+dd 0e8543175h
+dd 0db4007cfh
+dd 0a7b38232h
+dd 0946126cch
+dd 0b391df7ch
+dd 01c9323d1h
+dd 02877bbcfh
+dd 0600541feh
+dd 01de8ccc4h
+dd 03339843bh
+dd 0ca4b7375h
+dd 0f34aa33eh
+dd 0935751b9h
+dd 051b466ebh
+dd 035116a3ah
+dd 06a083d63h
+dd 0e827e631h
+dd 060a1123dh
+dd 08fd20999h
+dd 0fae9986bh
+dd 0ba1de8f5h
+dd 07c3c238dh
+dd 0d417debfh
+dd 06722445ah
+dd 0d4568a22h
+dd 03a7df2fch
+dd 0dd2fef3bh
+dd 057c0c9d0h
+dd 026ddc284h
+dd 012e454cbh
+dd 074d7f601h
+dd 0bb52d378h
+dd 049cb0334h
+dd 0b7926ee1h
+dd 0a6eafd25h
+dd 0a31006a9h
+dd 07ec143cbh
+dd 0cb570f88h
+dd 046889050h
+dd 03dbe5582h
+dd 09abf1dc0h
+dd 02ca5b14bh
+dd 0c0a8c5afh
+dd 04cd143a5h
+dd 0e7fb8ed1h
+dd 014ff185bh
+dd 0a7130991h
+dd 04f2a8fb7h
+dd 082ff9a2eh
+dd 0c34d60f3h
+dd 087dcb577h
+dd 0e36dd1cbh
+dd 067a79a9eh
+dd 08d4cc150h
+dd 0f6913aa5h
+dd 05f9c36f5h
+dd 0e9213469h
+dd 00617d4e7h
+dd 0c0e32adeh
+dd 08afe8333h
+dd 0574ff5ffh
+dd 0bf6b2eb2h
+dd 01dc70c33h
+dd 02dd26605h
+dd 05b6b7263h
+dd 0f91cf44ah
+dd 0c3b9a81dh
+dd 071fbc5d8h
+dd 0f96048cbh
+dd 0321730bdh
+dd 0190330d0h
+dd 03d8c4551h
+dd 07f611529h
+dd 0c01367a7h
+dd 02aebb3aah
+dd 01cabcd35h
+dd 0538295d1h
+dd 0ed142cc4h
+dd 04cc69497h
+dd 0d360483fh
+dd 0bb81e25bh
+dd 066eb5371h
+dd 0508bbe0fh
+dd 0f6f79632h
+dd 0c93bca14h
+dd 095193e5dh
+dd 0a0a9543fh
+dd 0660e353ah
+dd 063eceae0h
+dd 0da0eb4f6h
+dd 0e9a332b4h
+dd 0d36faf8eh
+dd 04a2ae0a5h
+dd 020131882h
+dd 08c01187bh
+dd 024bba1ebh
+dd 0f9052f19h
+dd 0212caa95h
+dd 0f9f23526h
+dd 0c31aa813h
+dd 053b3fe57h
+dd 0ffdffbffh
+dd 07cf2c320h
+dd 0b8cf1cfeh
+dd 02dbbe975h
+dd 04b567024h
+dd 05c90e759h
+dd 000e4d85ah
+dd 0f4ca75f5h
+dd 048a5993ch
+dd 0a904ff93h
+dd 09ae34b49h
+dd 02c5c6d96h
+dd 0f29d43a0h
+dd 084cb2eb4h
+dd 05ae5a05ch
+dd 06d3bbb72h
+dd 0cd123f90h
+dd 0bf7eb655h
+dd 0f08841afh
+dd 0de2838dbh
+dd 0f103860eh
+dd 056b8a335h
+dd 0222b4063h
+dd 07977ab21h
+dd 0a2abfe4eh
+dd 0f2299891h
+dd 0ede59041h
+dd 09b7799bdh
+dd 073cd96bch
+dd 045da5e6dh
+dd 059662b87h
+dd 030cb307ch
+dd 077c8d01ah
+dd 086f38ea8h
+dd 03e7fbf03h
+dd 05586c1a6h
+dd 064279ee3h
+dd 019a10da4h
+dd 09febf501h
+dd 0fd90674bh
+dd 0de1404a5h
+dd 0cf8f7d4dh
+dd 0fbbde628h
+dd 06aae5d34h
+dd 08eb006e7h
+dd 05dd05879h
+dd 02a91eaf6h
+dd 03627bfeeh
+dd 0c1bbddc5h
+dd 0ad9d07dfh
+dd 01f5eea09h
+dd 0873beaddh
+dd 0fd827736h
+dd 01572657eh
+dd 03ac1e3bch
+dd 00ef198d9h
+dd 01beda622h
+dd 041ee57bdh
+dd 0ffa4d68bh
+dd 0f7ac81beh
+dd 089a16a18h
+dd 0b4fb86e9h
+dd 0e098b7b4h
+dd 03b6513a3h
+dd 0014a67ech
+dd 092896d65h
+dd 018401092h
+dd 0fda2eb01h
+dd 063403199h
+dd 0967bc60bh
+dd 022108998h
+dd 0e536a932h
+dd 0f53183eeh
+dd 099bf55ffh
+dd 03358302eh
+dd 02023ea6fh
+dd 0d44a1d26h
+dd 04ea057b3h
+dd 09b538660h
+dd 02391b512h
+dd 00b9c0e17h
+dd 0f59f502ch
+dd 075fa8446h
+dd 035555355h
+dd 0d03d7fc4h
+dd 0a7354af7h
+dd 023568e46h
+dd 02125e5deh
+dd 0536df855h
+dd 04a6dc6c6h
+dd 04172120fh
+dd 06c949da8h
+dd 06adf5420h
+dd 03a155575h
+dd 00744cf91h
+dd 0dee3d071h
+dd 01366c16dh
+dd 04542a432h
+dd 04d570786h
+dd 0de10b06eh
+dd 0ad87cb02h
+dd 0a45dca16h
+dd 00b6a0279h
+dd 0a42ec2b3h
+dd 00f72ad2ah
+dd 072629cc5h
+dd 0bcfc0f8bh
+dd 0118b1390h
+dd 089029694h
+dd 0f4c98d01h
+dd 0e75f7928h
+dd 03170d9a9h
+dd 087b6abdbh
+dd 01a636ca2h
+dd 09005b622h
+dd 081496e81h
+dd 02b2781e8h
+dd 0f3a9d2c2h
+dd 0c7fc1d25h
+dd 0d47c7defh
+dd 0708a2ee9h
+dd 0dbe9415ah
+dd 0c5d1c0e4h
+dd 055149d55h
+dd 0b6af61e6h
+dd 010958187h
+dd 08d070a88h
+dd 006dc2fc8h
+dd 0f1277ee2h
+dd 02e131299h
+dd 0deb9e4beh
+dd 0747b4704h
+dd 0d88456b2h
+dd 09219c0eeh
+dd 05112e8d3h
+dd 0348252fah
+dd 0d72d5b43h
+dd 0cb7356e4h
+dd 067974c9bh
+dd 093e05ddeh
+dd 0dd91e5a2h
+dd 07a7fe2e4h
+dd 0700e4ce9h
+dd 09421395ch
+dd 012422dffh
+dd 01df40a81h
+dd 0c922d3f8h
+dd 05a7df114h
+dd 044ed7aach
+dd 01dd8fcb5h
+dd 00f27eb65h
+dd 0ca767820h
+dd 06e84898ah
+dd 0358241e6h
+dd 0c435a9b5h
+dd 039f388f1h
+dd 0503fcf9ah
+dd 0bade8350h
+dd 0766c6ceah
+dd 09e9d7eceh
+dd 071184622h
+dd 08f10f087h
+dd 03b7aa912h
+dd 0c8de8f7ch
+dd 0246b328fh
+dd 00eb27c61h
+dd 0794aa321h
+dd 0ca707cceh
+dd 08dc6331bh
+dd 06767f092h
+dd 049561cc5h
+dd 0cb12aef5h
+dd 079ffc275h
+dd 01f8185e4h
+dd 0ba9d1c19h
+dd 0bf8c7ec8h
+dd 0d2b4d4afh
+dd 00cafc06fh
+dd 0bac076bbh
+dd 06e33b06fh
+dd 0b99bf546h
+dd 033ed1d40h
+dd 07125a988h
+dd 0c2448d32h
+dd 0ddf494b4h
+dd 02185a6f5h
+dd 0a9cabaffh
+dd 0325dff30h
+dd 086c9dca3h
+dd 0cc7006c1h
+dd 0d4699d4dh
+dd 0d7655836h
+dd 01fefe09ah
+dd 035a8e897h
+dd 0d4b6ac83h
+dd 0b0e76febh
+dd 05ad43773h
+dd 0ec314738h
+dd 0f5e5126ah
+dd 0920f5f5fh
+dd 0f343abb0h
+dd 095f2cf1eh
+dd 02122c7c2h
+dd 07007d902h
+dd 0eb9d8659h
+dd 0edb41ee0h
+dd 0291b6938h
+dd 0cf1eb239h
+dd 0392a2a81h
+dd 06f1c211dh
+dd 03fbf7e02h
+dd 094bc949bh
+dd 0bbefe50bh
+dd 00531c4d4h
+dd 0c445380ah
+dd 0412a66a5h
+dd 0efcb1051h
+dd 0bc927d12h
+dd 048469299h
+dd 0dc4b2c22h
+dd 04fdab34dh
+dd 0fa71c757h
+dd 07a182038h
+dd 0c948b40fh
+dd 096cb173ch
+dd 047c4d576h
+dd 023f36cddh
+dd 0dc150618h
+dd 0f63c136dh
+dd 0f3d7d0beh
+dd 0b6fd42b5h
+dd 0c6f17f83h
+dd 09f628656h
+dd 0a2ee1214h
+dd 03f3fb945h
+dd 0a424c3d6h
+dd 0fb21309bh
+dd 04c6d97f0h
+dd 0a8be02fch
+dd 034f5b7eah
+dd 0ff2a5f0ah
+dd 004d3bbeah
+dd 0f26e2bfch
+dd 0fd44148eh
+dd 0993e686ah
+dd 0484911efh
+dd 02ff0619ch
+dd 023a12d70h
+dd 02a250aa1h
+dd 095a935b4h
+dd 03bd428c8h
+dd 0a1162eebh
+dd 0f1a291edh
+dd 0963a78b1h
+dd 090b16eaeh
+dd 0e5ecb3f5h
+dd 018ecca15h
+dd 04b12d241h
+dd 04d0997feh
+dd 0bc2830b6h
+dd 012f44938h
+dd 00555c260h
+dd 0159fe1beh
+dd 083e810adh
+dd 0e82945cbh
+dd 02f31f65fh
+dd 0a8c381c0h
+dd 0b7c2d751h
+dd 05d794bdfh
+dd 052ce4ae1h
+dd 008519c63h
+dd 09d2631ceh
+dd 0205d00edh
+dd 0e61c250fh
+dd 0ff515010h
+dd 07230ce7ah
+dd 08904492eh
+dd 0c27a67d0h
+dd 0292dc406h
+dd 0b7eac709h
+dd 05258a703h
+dd 091f974dah
+dd 0d8d5bbe8h
+dd 0144fa049h
+dd 04c7734c0h
+dd 0350cfaceh
+dd 09739a2adh
+dd 02a027c24h
+dd 0fd5c7ab8h
+dd 0ca567ed4h
+dd 0188fa4c6h
+dd 05b325f74h
+dd 0de37fd97h
+dd 07a3fee16h
+dd 0a019d194h
+dd 06d9743c9h
+dd 02b776939h
+dd 057ef4e3bh
+dd 018c4b013h
+dd 0d8fe039ah
+dd 02b571123h
+dd 08096deaah
+dd 04cd64cceh
+dd 089071863h
+dd 028bbab00h
+dd 0728e0cd1h
+dd 0837c9655h
+dd 0a4b4b86eh
+dd 04c8a178eh
+dd 046b15d24h
+dd 047c4dd37h
+dd 0ad0a5c26h
+dd 0c7a120fdh
+dd 0a172693ch
+dd 06934f6e8h
+dd 090bc6942h
+dd 0e7edc9e5h
+dd 04f7b8f7bh
+dd 06f4077e7h
+dd 0cca6e217h
+dd 04d1ffa5fh
+dd 0399eededh
+dd 0c70237b8h
+dd 0ee29c48ah
+dd 060806d92h
+dd 0ce6bec91h
+dd 040f2a689h
+dd 013b1b1beh
+dd 08c2fd6d0h
+dd 006f38262h
+dd 0168d5e80h
+dd 08126cec4h
+dd 0a31ca5f1h
+dd 0399ff6d3h
+dd 0c527ee50h
+dd 0d784dbdch
+dd 0c9f44477h
+dd 0bfae50e7h
+dd 032b952aeh
+dd 07ec13378h
+dd 01bf9adb6h
+dd 092a6c786h
+dd 054388bfbh
+dd 0845287eeh
+dd 08a6e6ac6h
+dd 096650e95h
+dd 05f66215ah
+dd 0aa2194b9h
+dd 07bdbbdb2h
+dd 0817230f0h
+dd 09993e722h
+dd 0e9e041b5h
+dd 069bc456ah
+dd 07cddebb6h
+dd 06be151d8h
+dd 097cf8397h
+dd 0a7c7dfafh
+dd 0281d014fh
+dd 093cd70c5h
+dd 00ab82d75h
+dd 099e33dcfh
+dd 0d23a7d90h
+dd 0acadfa91h
+dd 08a579c8ch
+dd 027c7cf61h
+dd 09fe8208bh
+dd 066665a4dh
+dd 00fe0288ch
+dd 0d875161ah
+dd 0a33a797ch
+dd 00f0e21a2h
+dd 009955aaah
+dd 0dc2d94a3h
+dd 0ec768b5fh
+dd 02e7aaa00h
+dd 0215137eah
+dd 06e781b52h
+dd 0f4e1274bh
+dd 0ca322326h
+dd 05196732ah
+dd 082ed42f4h
+dd 07d0df474h
+dd 0954d370fh
+dd 0681c12d6h
+dd 0e4a06adch
+dd 09ae0ef0fh
+dd 02ff36eb0h
+dd 015149545h
+dd 0515b5dc2h
+dd 0f3a839a1h
+dd 003303687h
+dd 00a0f9ae5h
+dd 0c94dc5bfh
+dd 0f14ef869h
+dd 03f450438h
+dd 0ab506897h
+dd 093bebf65h
+dd 073c6b4a0h
+dd 0fd31d55fh
+dd 06df9901bh
+dd 01122c993h
+dd 0146f2326h
+dd 09eaa676dh
+dd 0aa06c01fh
+dd 045a1411eh
+dd 02cb752c9h
+dd 0984f273eh
+dd 00110ba6ch
+dd 0b107308ah
+dd 014813112h
+dd 01709ea82h
+dd 03537784ah
+dd 063947e96h
+dd 066437c95h
+dd 02a4f9c03h
+dd 05a102e73h
+dd 0ce628fbeh
+dd 08454cf7ah
+dd 0f6cbdbc1h
+dd 05031666dh
+dd 0d053ccafh
+dd 069e8549eh
+dd 05a2fcdach
+dd 0c7ba9605h
+dd 0bbd40261h
+dd 001225b14h
+dd 0862d7785h
+dd 0a4d77f15h
+dd 0ebbcb427h
+dd 0e83486bch
+dd 03bf513d7h
+dd 0b92ca2b9h
+dd 09a506ebbh
+dd 087eb84ech
+dd 0f79fa958h
+dd 0566c026eh
+dd 07af12c26h
+dd 0866baa96h
+dd 0a7b532a4h
+dd 067f76142h
+dd 0cbcfb7deh
+dd 001d12be5h
+dd 01362ceedh
+dd 04e70d16bh
+dd 0acc346d4h
+dd 079a99633h
+dd 0ca236ce4h
+dd 0bcb8e01bh
+dd 01814b804h
+dd 001a24db7h
+dd 02de4a71bh
+dd 05288db96h
+dd 0807c4701h
+dd 0edf7844fh
+dd 0403d6e55h
+dd 0a6ca5e2ch
+dd 01f464f78h
+dd 05f9fa7e6h
+dd 045633f22h
+dd 0f989c77dh
+dd 0abeb3c80h
+dd 0ab7ffcc9h
+dd 0b0124314h
+dd 00c6768fbh
+dd 002d53b8dh
+dd 0c0193ab7h
+dd 03bddb450h
+dd 05cbc3444h
+dd 0a1af963ch
+dd 015efae4ch
+dd 06bb5734bh
+dd 027c82d6ch
+dd 09094d209h
+dd 0faaa88dah
+dd 06fd6e758h
+dd 05351d802h
+dd 096d628e0h
+dd 0f4767339h
+dd 0d485b3a0h
+dd 0efd852fch
+dd 01df6f79fh
+dd 037e1d953h
+dd 045deead7h
+dd 0e93b1af6h
+dd 085952b73h
+dd 06a0d2e17h
+dd 0c39e436bh
+dd 03490e6f7h
+dd 0fa3bcf11h
+dd 03678db72h
+dd 01114a728h
+dd 0b141e5a7h
+dd 09b861aa1h
+dd 03a13cc40h
+dd 0df8d5699h
+dd 007548ff8h
+dd 0c666953bh
+dd 0f38aee14h
+dd 04634550ah
+dd 03a9619deh
+dd 0df650ab3h
+dd 0a9060f62h
+dd 0203ea123h
+dd 0f9ba7a67h
+dd 03b8c3485h
+dd 06e887e22h
+dd 006da1a62h
+dd 0d60d4129h
+dd 0c279321dh
+dd 0b51d2ecbh
+dd 0ec4d9e8fh
+dd 014efc739h
+dd 08e38eb1dh
+dd 0ab657848h
+dd 024f76320h
+dd 0269f3013h
+dd 05e179ccbh
+dd 059e6b65dh
+dd 05efe4a2dh
+dd 0b70531f9h
+dd 04b61889ch
+dd 01fd8c2e4h
+dd 034bc47eeh
+dd 0a82aa405h
+dd 0c166a3c7h
+dd 0ba967671h
+dd 0be37feech
+dd 01372f88eh
+dd 058b25379h
+dd 006c04c6bh
+dd 062ef8796h
+dd 013cc9677h
+dd 091b7b3aeh
+dd 096d4c6d8h
+dd 085b40168h
+dd 078bcd775h
+dd 06eeb6e6bh
+dd 0d84387f3h
+dd 0cd5db76eh
+dd 086b64c38h
+dd 0c891bb54h
+dd 0352fc3a4h
+dd 05612bb54h
+dd 0032879aeh
+dd 0f6e36477h
+dd 0a15fab24h
+dd 0019e623eh
+dd 0348fefdeh
+dd 0ffd20beah
+dd 068705e66h
+dd 080d4bd18h
+dd 0f70a5c22h
+dd 02979d996h
+dd 02c0c10eeh
+dd 0a547f8efh
+dd 01cd04d71h
+dd 004e2184eh
+dd 01f8004e8h
+dd 0dd79e79eh
+dd 0ea6f118bh
+dd 0fe946ee4h
+dd 031207c3ah
+dd 0e99a9d05h
+dd 0424f7035h
+dd 097b4d788h
+dd 0e787c490h
+dd 0793c2ce8h
+dd 0e43ba44eh
+dd 00ca398a8h
+dd 090add868h
+dd 085d85d67h
+dd 0d80231cdh
+dd 04fe17a52h
+dd 090f5ec6ch
+dd 0f17c1585h
+dd 08ca83f71h
+dd 0ae71381ah
+dd 01c90a7a6h
+dd 0837ced69h
+dd 028335ad6h
+dd 06d9eb9b9h
+dd 0a1d0aba8h
+dd 0588c8722h
+dd 0e51e1bfch
+dd 0759ec186h
+dd 01b3070e3h
+dd 0dd582031h
+dd 0b6ea86f8h
+dd 02c328768h
+dd 07c09b65bh
+dd 0b20d7145h
+dd 03c0b0f0ah
+dd 003773677h
+dd 098a522ddh
+dd 0b71ca6ach
+dd 098d8a841h
+dd 09c1bfd1ch
+dd 0eefd5e1bh
+dd 076c59bb8h
+dd 084f37b9bh
+dd 06f481ba5h
+dd 02c65bd43h
+dd 0c7422adch
+dd 0e464d9f1h
+dd 076221660h
+dd 0da76b7ech
+dd 009f1eb8dh
+dd 03595e5ffh
+dd 0a2b6a281h
+dd 0880db53dh
+dd 0a046742bh
+dd 0f5b53d8eh
+dd 0940fe6f0h
+dd 091ecc429h
+dd 00587027dh
+dd 05b2a82c9h
+dd 0b1e38c44h
+dd 0d84f76bbh
+dd 0576accc1h
+dd 004a70922h
+dd 0459fe079h
+dd 083b9bb55h
+dd 0d92698d4h
+dd 0e9fda8c4h
+dd 04afe210dh
+dd 0f3ca53bah
+dd 08abdb47fh
+dd 0ac176972h
+dd 040127c98h
+dd 0c4bed306h
+dd 05630e620h
+dd 065a135b9h
+dd 0b9a03edah
+dd 02f54c517h
+dd 0ac6d8e60h
+dd 01ae10a0dh
+dd 0e756a9bfh
+dd 0592a1cech
+dd 03763878fh
+dd 0bf0acc08h
+dd 0fd3f8901h
+dd 0872cad52h
+dd 0fb4fb420h
+dd 09d082996h
+dd 0ff7d8ce3h
+dd 08b4470d1h
+dd 03037ec58h
+dd 0fe498f05h
+dd 0f40516f7h
+dd 00ef395aeh
+dd 07bb92f39h
+dd 0573d251dh
+dd 084d027afh
+dd 09ee90ef4h
+dd 09bbbe6c7h
+dd 08f218523h
+dd 0cb943dc3h
+dd 0269f40b3h
+dd 063daaa84h
+dd 078ac19c5h
+dd 0bdba5ab9h
+dd 093d1e070h
+dd 09a6e4585h
+dd 0ab659061h
+dd 07a9786cah
+dd 061b0f839h
+dd 0309b3f28h
+dd 0b5241e50h
+dd 0e4d6c6b7h
+dd 08fa5e84ah
+dd 0b302102dh
+dd 0287e9859h
+dd 0f4cc6804h
+dd 07742f0a2h
+dd 0877eacb0h
+dd 0460d81b5h
+dd 06e36ad0bh
+dd 0c3373e48h
+dd 0ee227278h
+dd 0ca5132e3h
+dd 0c16d2f63h
+dd 0af27cdb5h
+dd 0502a1537h
+dd 046422003h
+dd 02a5b4a73h
+dd 0384d4f88h
+dd 0edb290e6h
+dd 0f1e2f80ch
+dd 0fba16e5eh
+dd 0f0e3e6ddh
+dd 0ddba642ch
+dd 06176e2b3h
+dd 092578d95h
+dd 02254ebabh
+dd 0812cd77bh
+dd 078db3d42h
+dd 0f277a35dh
+dd 00d6bc263h
+dd 0768bbca5h
+dd 09a5d7d40h
+dd 0aa88d395h
+dd 046e2d43bh
+dd 03bdf0f9eh
+dd 01d8aa695h
+dd 030dc40dah
+dd 0b517fb04h
+dd 06049acbch
+dd 0e44815b2h
+dd 031b83fb1h
+dd 043847b89h
+dd 0298392bah
+dd 01eefc902h
+dd 0fe705b95h
+dd 0e0cede66h
+dd 0baf12800h
+dd 027caabd6h
+dd 049e7c307h
+dd 049f2da81h
+dd 0677bc7fch
+dd 060b52cd9h
+dd 00abc994dh
+dd 068284ffdh
+dd 0e6a05c83h
+dd 0cedfcbf7h
+dd 0503ef22eh
+dd 070ee3db7h
+dd 0d31bc352h
+dd 011f01602h
+dd 00338848fh
+dd 0e88c32bbh
+dd 0fa6cfebah
+dd 01a9311dch
+dd 0aff578cah
+dd 0bf011970h
+dd 069f3b20ch
+dd 0acf581cfh
+dd 01cf40d13h
+dd 0975bbf4eh
+dd 0dc710ec2h
+dd 059dbc777h
+dd 08e591475h
+dd 0818d6b07h
+dd 06a5b45b4h
+dd 0a9439ad3h
+dd 013ec5414h
+dd 04f14bf16h
+dd 000833b87h
+dd 0904ef28ch
+dd 02f23df06h
+dd 057ee725dh
+dd 0a04c7be7h
+dd 0ba937afeh
+dd 00cfea671h
+dd 04e04fbceh
+dd 021f141fah
+dd 09767730ch
+dd 09262d269h
+dd 0001b57a4h
+dd 0a27bcdb6h
+dd 06e9688d0h
+dd 09083ba13h
+dd 0f489d6abh
+dd 0658534a7h
+dd 032af53e1h
+dd 05537afd3h
+dd 0c41a293ah
+dd 0e9d6fed0h
+dd 07a076de7h
+dd 0b7afa53fh
+dd 0230487eah
+dd 0da2dc09bh
+dd 00e579606h
+dd 04c2928c5h
+dd 0b1bc3580h
+dd 097f4ed3fh
+dd 097da854eh
+dd 0d74a8387h
+dd 06444bc4ch
+dd 0152ec37fh
+dd 08387249fh
+dd 0fb30cc74h
+dd 06ae604c0h
+dd 008e5b365h
+dd 007bfc79dh
+dd 053950ee7h
+dd 0534e2c76h
+dd 0767c3706h
+dd 0dd955d41h
+dd 0f2da744ch
+dd 048b29254h
+dd 0c759c32ah
+dd 0ab15d7afh
+dd 0a9bba3eeh
+dd 07d1721dch
+dd 064439bb8h
+dd 005be3fddh
+dd 08fc62d5eh
+dd 01fc945c4h
+dd 05b30a7e2h
+dd 06748433bh
+dd 0ea2f5fd5h
+dd 061388f02h
+dd 0d456568ch
+dd 0104cc0e2h
+dd 0475ea4aeh
+dd 0a05156e6h
+dd 07bd9676fh
+dd 0c91f9d75h
+dd 00ca3bea0h
+dd 0d9322ce6h
+dd 0affa57bbh
+dd 0d67b2040h
+dd 034e50d78h
+dd 01cb8e40fh
+dd 0c5bb3507h
+dd 0030cdc25h
+dd 00bff0939h
+dd 0c4ca0818h
+dd 037830b52h
+dd 0849f72b9h
+dd 01d3cfb24h
+dd 05b0a2ed8h
+dd 0139bf979h
+dd 0132c61e9h
+dd 0e1bce4aeh
+dd 091f6c0b6h
+dd 01cc3d232h
+dd 0f7926f9eh
+dd 05881e986h
+dd 0b53a6433h
+dd 010e01776h
+dd 07eac5bb9h
+dd 041bb560eh
+dd 0eaabdf74h
+dd 09d74f73ch
+dd 039989b11h
+dd 0eaad5c87h
+dd 0d2f32793h
+dd 08a9b5a1bh
+dd 02cdddcfch
+dd 0f60073bbh
+dd 0db2f537bh
+dd 02a3fce0bh
+dd 0ac9da793h
+dd 090368fb8h
+dd 0ed1b2e34h
+dd 0d60cadefh
+dd 0b27519c3h
+dd 0018a5a57h
+dd 068c824a5h
+dd 0f05ee6cdh
+dd 03fc3a997h
+dd 0e4845773h
+dd 0198a4940h
+dd 08d3cc645h
+dd 016249a67h
+dd 098986c04h
+dd 04ccc668eh
+dd 0593350ffh
+dd 022bedf95h
+dd 050bd2424h
+dd 01023882bh
+dd 01e93d6e4h
+dd 0a6e1e455h
+dd 0c6ebbf2dh
+dd 0940cb1e2h
+dd 0e4b6a02bh
+dd 010f6a3bdh
+dd 0edb9cc78h
+dd 0aaa5ec15h
+dd 02518eff3h
+dd 00982ff7fh
+dd 0e992aeb9h
+dd 02a504443h
+dd 07a9a54beh
+dd 0b8979945h
+dd 02ec7884ch
+dd 0f30961cbh
+dd 0019c8757h
+dd 00fd4e7c1h
+dd 003eecb79h
+dd 0c7dfa552h
+dd 00ce2a3b0h
+dd 08206cc11h
+dd 0d4454363h
+dd 0cb7b09b1h
+dd 095bc7041h
+dd 0087f8ea3h
+dd 0baca9ef8h
+dd 048f7f437h
+dd 0b802fd50h
+dd 0d76d026bh
+dd 0f970928eh
+dd 04bd06b3ch
+dd 0d180b6cbh
+dd 061110fe1h
+dd 0fc1130fah
+dd 015193f27h
+dd 063a2be66h
+dd 0114aba22h
+dd 0ca79d673h
+dd 0c7a3889fh
+dd 01ed7ee40h
+dd 02e514b97h
+dd 07b13fec1h
+dd 0084105f0h
+dd 07fb43f22h
+dd 05daed00fh
+dd 0bf2f35d2h
+dd 09a22c2ebh
+dd 029d638ach
+dd 06971ec25h
+dd 06ad83919h
+dd 096b779c8h
+dd 0e1dcf8c7h
+dd 060dcb992h
+dd 0de91523eh
+dd 07e2f6a93h
+dd 09e862d9bh
+dd 0cdf8d024h
+dd 0c980a61bh
+dd 01996830ch
+dd 0dbbb690dh
+dd 04d64a326h
+dd 0fbad02b1h
+dd 0279a05ech
+dd 0b97a47e2h
+dd 054f6e9c2h
+dd 0ed57f2e5h
+dd 06c34cda9h
+dd 05320f2c0h
+dd 03ec0dfb9h
+dd 06873733fh
+dd 0803a1e79h
+dd 0ff80625dh
+dd 026df55dah
+dd 0e340578dh
+dd 013716d2ah
+dd 05600a783h
+dd 0f5a731bbh
+dd 012463f41h
+dd 0fddd0253h
+dd 0431df444h
+dd 0057e5b67h
+dd 08af73a72h
+dd 05132832dh
+dd 0b31984afh
+dd 0325dc03bh
+dd 0941225a9h
+dd 009ecfd92h
+dd 0416534a1h
+dd 0d56d18ech
+dd 0944e2d25h
+dd 0dc07a255h
+dd 0827ce509h
+dd 08d19a805h
+dd 063c270b9h
+dd 013c172a7h
+dd 0a9a425e6h
+dd 0ed800f78h
+dd 0c9fd9153h
+dd 0eee6f840h
+dd 09bf87cd3h
+dd 0b4a4e135h
+dd 0d8142e8eh
+dd 0f5c995f5h
+dd 019cb57e4h
+dd 078c5a17dh
+dd 08084eebah
+dd 09b122666h
+dd 0b349e9b0h
+dd 06b2ba7dfh
+dd 00239f12dh
+dd 001711f04h
+dd 0856dadd7h
+dd 0442da184h
+dd 03b86483ch
+dd 0780d7ad7h
+dd 0336f71c4h
+dd 0b7806c5fh
+dd 01e33bc8dh
+dd 0b9991eb8h
+dd 043f330c0h
+dd 080fa9513h
+dd 0a972c4bbh
+dd 0f3dddbaah
+dd 062111f33h
+dd 0e36aaa62h
+dd 0cef39e32h
+dd 0f9dd633ch
+dd 0a11346f7h
+dd 0445884e6h
+dd 0d954f42bh
+dd 051f04993h
+dd 053237ce4h
+dd 076add3edh
+dd 05a8e146eh
+dd 02ba9c1efh
+dd 097fc942ch
+dd 0dcc06ac9h
+dd 0d339b2a1h
+dd 0072efa56h
+dd 0a59dce5dh
+dd 07ac99fd9h
+dd 057451f15h
+dd 096b2d392h
+dd 0b2adc551h
+dd 002352e47h
+dd 06dcaa9a2h
+dd 0fb3715dfh
+dd 054ee9774h
+dd 0fb882765h
+dd 078f68034h
+dd 02d432662h
+dd 0226019d3h
+dd 08e6daf60h
+dd 019a49b7bh
+dd 01efd10d5h
+dd 09e30d548h
+dd 0d2c0c15fh
+dd 0de418a10h
+dd 028809f0eh
+dd 0b4109754h
+dd 0b39a8dc4h
+dd 0ff7bfc36h
+dd 01578257eh
+dd 007c51cd5h
+dd 01b6821d3h
+dd 0159f2de1h
+dd 0debe39feh
+dd 034eec3dch
+dd 0a9cb20ebh
+dd 0a7b477cdh
+dd 083924b89h
+dd 0ef1c5c2bh
+dd 01ce40052h
+dd 0bb7072f6h
+dd 0614c105dh
+dd 04f0764ebh
+dd 0c2bbf522h
+dd 0cbb7d837h
+dd 0e32d1288h
+dd 0d2ff9c00h
+dd 02bf772e7h
+dd 01af4639ch
+dd 0aee424c4h
+dd 07ab36414h
+dd 09ea7dda6h
+dd 09ac389cfh
+dd 00aba3ef2h
+dd 085a6f3f3h
+dd 083081250h
+dd 0543fe3ach
+dd 01f6d3453h
+dd 0825de73ch
+dd 0f6405055h
+dd 05683454bh
+dd 05b7f611dh
+dd 0d5296dbdh
+dd 0e9ca8967h
+dd 01c7e783dh
+dd 099ac7dafh
+dd 0fe0eae69h
+dd 0892cb6d5h
+dd 0a871b3c1h
+dd 016836c46h
+dd 09c391a4ah
+dd 0e46cd302h
+dd 04a02dccbh
+dd 08d6d9dc6h
+dd 061679288h
+dd 0b4d8a512h
+dd 08b2b1ce0h
+dd 0cd91191eh
+dd 0a8a0ace9h
+dd 08b0f4149h
+dd 0d9266242h
+dd 043359d4bh
+dd 07e827260h
+dd 09dc33760h
+dd 0d157e440h
+dd 0fcd46133h
+dd 0a0c8e47dh
+dd 065018068h
+dd 0b069e0c1h
+dd 0ab38bf71h
+dd 08c4bb64ah
+dd 0f4d6acc0h
+dd 07cbe42e7h
+dd 0ee1ce246h
+dd 0baff07edh
+dd 0e37f8c14h
+dd 045a9c648h
+dd 0c61b568ah
+dd 05fc23838h
+dd 0213dedcfh
+dd 035184587h
+dd 02d91753ah
+dd 01b24a72ch
+dd 06e2f255bh
+dd 0b494c3ffh
+dd 03025f6f4h
+dd 08d0533b9h
+dd 0a59521e6h
+dd 03d2e5409h
+dd 0abbb5bdch
+dd 018fd7bf8h
+dd 0bd15094ah
+dd 0b030eedah
+dd 09b04451ch
+dd 0ef7a0553h
+dd 0b8c15985h
+dd 0ef34bdf4h
+dd 029c40ca7h
+dd 019beec37h
+dd 088002c5dh
+dd 009e2c630h
+dd 0aef5d314h
+dd 042ce2fach
+dd 06e6cb947h
+dd 01131b3e0h
+dd 02519c6efh
+dd 0ae4c5524h
+dd 083ca1c40h
+dd 0df488124h
+dd 07b38364dh
+dd 06b7a9801h
+dd 0f9c89a8fh
+dd 0c31837f9h
+dd 05c60c0f4h
+dd 0330f6035h
+dd 01f9557bbh
+dd 0e33abd01h
+dd 0ad0eb0d6h
+dd 03309905ch
+dd 0acdfafbeh
+dd 0476a49b3h
+dd 0ed066d0eh
+dd 010479aa6h
+dd 09ce9ee4ah
+dd 03b3659dch
+dd 0bd000371h
+dd 0c03f6451h
+dd 0eb91fab2h
+dd 0657f9f37h
+dd 07ce9c639h
+dd 035698d09h
+dd 085309d2ah
+dd 06211dfd4h
+dd 01bf42c5ah
+dd 0101067e8h
+dd 05f117dcch
+dd 092388d32h
+dd 01fd6a7eeh
+dd 0e9c73e57h
+dd 07d111a74h
+dd 028a62eeeh
+dd 03c981b3dh
+dd 0bca4927fh
+dd 0bd5c0262h
+dd 07340d37eh
+dd 088d0b5ddh
+dd 0279b1310h
+dd 09c7f21cch
+dd 0f2529380h
+dd 068161a6dh
+dd 0301ee34eh
+dd 05f1f1ed2h
+dd 01c30376dh
+dd 0af8f6d17h
+dd 0de8f76a7h
+dd 07dbbd1cah
+dd 0efebde24h
+dd 02e7f4a13h
+dd 03dfde8cdh
+dd 056ff9f40h
+dd 04d9cb881h
+dd 0f12edfdah
+dd 00fa470e9h
+dd 00699ca4dh
+dd 082608b94h
+dd 0409c6f88h
+dd 0b5b82a40h
+dd 03d363a3fh
+dd 041f2c531h
+dd 00996826bh
+dd 0523e92f8h
+dd 0c23d6f2ch
+dd 04c1a838bh
+dd 09e7c840fh
+dd 04082ec5dh
+dd 0719599ddh
+dd 087bde0e0h
+dd 023c5abcdh
+dd 0ed647a34h
+dd 055562a62h
+dd 05163a263h
+dd 0d67cff29h
+dd 0a1dfd55dh
+dd 0266f9979h
+dd 0661448deh
+dd 02c78d410h
+dd 09c7de7b6h
+dd 03e85c20dh
+dd 0d01fc8d0h
+dd 087b90b5fh
+dd 08deff427h
+dd 06eb9239ch
+dd 0242afb98h
+dd 0675de1a0h
+dd 0cd17fe93h
+dd 00f1328e6h
+dd 0cc3a84f2h
+dd 0c957bb93h
+dd 0faa37342h
+dd 0f3765926h
+dd 0a48aeebbh
+dd 084efd852h
+dd 0ba7b99b3h
+dd 0b6259536h
+dd 0af397cebh
+dd 024532c87h
+dd 056f900c4h
+dd 05473b31ch
+dd 0588794f4h
+dd 0516609e3h
+dd 0fca80b5ah
+dd 099c469fbh
+dd 063872d31h
+dd 0cd3e34f3h
+dd 03531fde6h
+dd 0208549b3h
+dd 01749855ch
+dd 0aa3e8b32h
+dd 02909841ch
+dd 047fe361ch
+dd 0423e0cfeh
+dd 02d86a856h
+dd 045f96935h
+dd 025da2dc2h
+dd 05b1f4bf8h
+dd 07cc54d00h
+dd 0e2a3008ah
+dd 0749569ach
+dd 089910351h
+dd 036805e76h
+dd 049ccafc7h
+dd 095268404h
+dd 057b0847bh
+dd 05cf0979ch
+dd 047bb79cch
+dd 0b6b4df17h
+dd 0d052e62fh
+dd 03d8d49e1h
+dd 0f8b3a82ch
+dd 0e3e53eb5h
+dd 0b3d25010h
+dd 0e12b57a2h
+dd 034c3d3fch
+dd 0825fa170h
+dd 0dbb02817h
+dd 0fcc50962h
+dd 003564eb4h
+dd 0f1323386h
+dd 097838396h
+dd 0eb5f9536h
+dd 0a8a02d0dh
+dd 0607d5e12h
+dd 00a312adeh
+dd 081a151a3h
+dd 09882226bh
+dd 0ee1c4d8ah
+dd 0b6146b5eh
+dd 057943a2fh
+dd 04cc09d3eh
+dd 02e9b4774h
+dd 0045ad0d3h
+dd 0fa12d268h
+dd 0a4067411h
+dd 039ed4847h
+dd 060cdd541h
+dd 01014c08dh
+dd 02e57e63ah
+dd 05b5c2870h
+dd 014401383h
+dd 05eaef01eh
+dd 0e16b3e00h
+dd 0b5e03a0bh
+dd 045521839h
+dd 00a205558h
+dd 05fd82da1h
+dd 08e8cd035h
+dd 054b0b9b8h
+dd 0b9c231e6h
+dd 0feec0820h
+dd 045b23e8fh
+dd 0b5a1b379h
+dd 003391bech
+dd 0b0576ddah
+dd 05550eecdh
+dd 07e46af25h
+dd 0aef7d526h
+dd 076c27ed9h
+dd 0ab1ea9eeh
+dd 001e961f2h
+dd 07f1d983ch
+dd 0bbcc9dcdh
+dd 0856d1332h
+dd 038b0fd9ch
+dd 0d383ee7fh
+dd 0f2d1e6f6h
+dd 0fc637617h
+dd 0a5d36e0bh
+dd 025086772h
+dd 0ef9cbb2ch
+dd 0416643e4h
+dd 09f9d1fc6h
+dd 0d463c7b5h
+dd 0bf063a21h
+dd 0c16dcebbh
+dd 0634946afh
+dd 0e4973634h
+dd 013afb3a2h
+dd 08fd7fdf7h
+dd 06c0f466ah
+dd 063c9621bh
+dd 007a32b35h
+dd 0d330c891h
+dd 073671166h
+dd 031fc0d28h
+dd 0db442830h
+dd 0bbb347dbh
+dd 05118adc0h
+dd 050ba7999h
+dd 023ba8300h
+dd 0ae0fc725h
+dd 06cb6067ch
+dd 04e0ad265h
+dd 0a2a14898h
+dd 0c7ac5b29h
+dd 037584ce4h
+dd 03023cffeh
+dd 01065ede3h
+dd 02788a4b1h
+dd 008e194e6h
+dd 0f01ba4a8h
+dd 0d397c717h
+dd 0679baefdh
+dd 072e68c6fh
+dd 0809ad8c8h
+dd 071f1718fh
+dd 04d2a5be9h
+dd 017e6f999h
+dd 0d587afa6h
+dd 0870616a9h
+dd 0de93039dh
+dd 06e4ebd89h
+dd 003c92865h
+dd 0b12dcaa3h
+dd 0d8a5776fh
+dd 0b67b379ch
+dd 04fea88b8h
+dd 07f1fb806h
+dd 0e58d5c3ch
+dd 068c4bc3bh
+dd 07ae4aacfh
+dd 0603f2a50h
+dd 0c2948c15h
+dd 027b85a22h
+dd 0680a63aah
+dd 00de2af77h
+dd 08be0fd19h
+dd 0f65a1a17h
+dd 08c1fd881h
+dd 04fbee9fdh
+dd 0b049cd69h
+dd 0c8f33fd8h
+dd 05eb830ech
+dd 079146258h
+dd 0a5951fdah
+dd 0128f1d0bh
+dd 0c265a7cdh
+dd 00bd709b5h
+dd 0e358d176h
+dd 0b2029d7ch
+dd 0e361fdebh
+dd 0c88e4d6eh
+dd 0db9f778bh
+dd 0b145d738h
+dd 04b437a28h
+dd 0ad730af2h
+dd 05c637e89h
+dd 0f1369cdbh
+dd 01135d212h
+dd 0bc61f692h
+dd 0a8d8461eh
+dd 0e2f9d158h
+dd 0894e981fh
+dd 0ae877d3bh
+dd 09fa874edh
+dd 0e314561ch
+dd 010a19814h
+dd 0c3042704h
+dd 030a97b28h
+dd 022512a2fh
+dd 08ad43858h
+dd 0f420b785h
+dd 07ced992ch
+dd 085b83a89h
+dd 060b7d9e1h
+dd 0fc7b090dh
+dd 05a83b1c0h
+dd 051db6525h
+dd 0c0752c8bh
+dd 0ab73b234h
+dd 06bc9774eh
+dd 0f44cd695h
+dd 09d736a46h
+dd 08ef1f232h
+dd 01b6893b9h
+dd 0e3c25922h
+dd 0ad5f3ccdh
+dd 04ba4b793h
+dd 05b34db56h
+dd 0561339cch
+dd 0ce5966a5h
+dd 0d398b29ah
+dd 070c856f7h
+dd 0b1a68a9eh
+dd 0feecf727h
+dd 008cf2eb0h
+dd 0fa6cb03dh
+dd 0465f2262h
+dd 0f4c0bd0ch
+dd 097bc6036h
+dd 087d700b6h
+dd 0eb8b4447h
+dd 0e376ecf2h
+dd 041cc352fh
+dd 070ac07aah
+dd 0b6cfd7c8h
+dd 012df9131h
+dd 0bed65ea3h
+dd 0a050635fh
+dd 0361b2ac9h
+dd 0cd831ee5h
+dd 0fe707fe6h
+dd 044dc302ch
+dd 068ea2027h
+dd 0e3e28989h
+dd 01da6e71eh
+dd 07491e425h
+dd 0e60b3760h
+dd 051f7d94ah
+dd 0559b2698h
+dd 0f57588e3h
+dd 0e5ebdca7h
+dd 0fb1eaf8eh
+dd 0c185a7ach
+dd 0ad8def75h
+dd 0814e4a9ch
+dd 06b4eb105h
+dd 029399794h
+dd 0b5510e8bh
+dd 0fc267dadh
+dd 0a3ac2860h
+dd 048e1ab76h
+dd 08e8cf32ch
+dd 09be56df1h
+dd 073efe9e0h
+dd 0df57a114h
+dd 034f187a4h
+dd 075848090h
+dd 0defdc8c7h
+dd 0a82f7b50h
+dd 08fe35b71h
+dd 0cdcd84e9h
+dd 0d72f6ab8h
+dd 0716d9962h
+dd 0ae9aae41h
+dd 0198532afh
+dd 043bd266eh
+dd 0499125a9h
+dd 056120143h
+dd 0023eb18dh
+dd 05bcc6f66h
+dd 032088575h
+dd 0c367897ah
+dd 0bc243753h
+dd 0dc92d657h
+dd 027fa2b4bh
+dd 045134fa9h
+dd 078f9c7abh
+dd 029062a11h
+dd 01b37a1dch
+dd 09f0db399h
+dd 07d1e1c17h
+dd 028459cbah
+dd 01fb25e71h
+dd 028ad4d82h
+dd 0ecfab077h
+dd 035a0dba8h
+dd 098db2630h
+dd 0d8eb8054h
+dd 037f7dcf6h
+dd 020c7019fh
+dd 0b4795350h
+dd 0568cb6cfh
+dd 0ecd11080h
+dd 0b622a0c0h
+dd 087af9404h
+dd 0bde3a534h
+dd 091db975fh
+dd 0eef8c491h
+dd 0a577c122h
+dd 08cb3b3b3h
+dd 026b0963bh
+dd 0e92ee875h
+dd 01e59256ch
+dd 04782cb79h
+dd 0a3261ab8h
+dd 0922a24e9h
+dd 0f9b52784h
+dd 08f339308h
+dd 0c369680dh
+dd 057cd22ech
+dd 021467d5dh
+dd 07baccd95h
+dd 075d90884h
+dd 04e0cd411h
+dd 0a1e78ff3h
+dd 091bf8d08h
+dd 068a203a6h
+dd 0098a09d9h
+dd 0057168f8h
+dd 0eb119ebah
+dd 07e4e7b19h
+dd 071d60843h
+dd 08393b950h
+dd 0bf079ac2h
+dd 0086807e1h
+dd 0a610d422h
+dd 06c5bdfcfh
+dd 0b2638c79h
+dd 0038292f8h
+dd 008123459h
+dd 06c63a69dh
+dd 074b5a87eh
+dd 066d3569ch
+dd 0635fe89eh
+dd 087179027h
+dd 0b683faf7h
+dd 04831ec11h
+dd 0566a86c5h
+dd 0f8fac91ah
+dd 0cb0d60c8h
+dd 015f8cbb4h
+dd 00ec25365h
+dd 034b28d40h
+dd 0cd2e4530h
+dd 0c33806a5h
+dd 08cdf82ach
+dd 0e60f2ec1h
+dd 089611e28h
+dd 0c09c4d7fh
+dd 09ea7125ch
+dd 0b43fa28dh
+dd 0595e498eh
+dd 07d5052beh
+dd 012565dc7h
+dd 01870a07ch
+dd 0483ce3ffh
+dd 05ac7a9e8h
+dd 029d3a330h
+dd 0ba15da8fh
+dd 0a33ec5d7h
+dd 098d207ddh
+dd 023d78d96h
+dd 03df14a59h
+dd 0a43a5905h
+dd 0678dab2fh
+dd 04e29a43eh
+dd 02cd1c360h
+dd 05b162a1bh
+dd 040d8b5e3h
+dd 0ad78f0e8h
+dd 0f10dcf0bh
+dd 0208ba056h
+dd 0a06a9eb9h
+dd 046a919f1h
+dd 013163b1bh
+dd 0e0ea9106h
+dd 053c7a820h
+dd 03cbd64b8h
+dd 011d1c8eeh
+dd 0cb9c80fch
+dd 048e13052h
+dd 0363f8a96h
+dd 0ee39dbbeh
+dd 0ec8cef96h
+dd 05bd337d1h
+dd 07c6a334bh
+dd 08a00cf8fh
+dd 022a7a465h
+dd 02a918876h
+dd 03105b395h
+dd 05fdfd28bh
+dd 0eb1d1fa2h
+dd 0c388827ch
+dd 0ba48cb11h
+dd 044f40436h
+dd 0f295af56h
+dd 0cf3561e1h
+dd 0e64bb3a7h
+dd 06eb14d10h
+dd 0f9ac94cbh
+dd 020e69b5eh
+dd 0998ddffbh
+dd 0e26da161h
+dd 02b9a73f1h
+dd 0cd6c7e17h
+dd 09330472dh
+dd 08751b8f8h
+dd 0adbdc710h
+dd 05f6444cdh
+dd 01d377a6ah
+dd 03c5260e8h
+dd 09d1131f6h
+dd 0d670a0aah
+dd 037866679h
+dd 0947711e9h
+dd 0d096c442h
+dd 08144299dh
+dd 0bacc40a6h
+dd 0821520c1h
+dd 001a7865dh
+dd 0065a931ch
+dd 0639c7110h
+dd 04f9b8853h
+dd 04764e5f0h
+dd 0838d4ec5h
+dd 0388c9695h
+dd 04c7ae3adh
+dd 01f46d52fh
+dd 00dcce4b2h
+dd 0576c6c31h
+dd 0dad59c37h
+dd 0f01045dbh
+dd 0b6f2715dh
+dd 016647810h
+dd 0dad2ca6fh
+dd 08c90f165h
+dd 0b9d9aa64h
+dd 0c603cc08h
+dd 0f9a0ff57h
+dd 084032db1h
+dd 07ae62be1h
+dd 0851ac93dh
+dd 083a18cd8h
+dd 02c51b3b3h
+dd 0c3710d5bh
+dd 00fed8913h
+dd 03c82b699h
+dd 0d8b663c2h
+dd 0ed186a7eh
+dd 023924cc7h
+dd 01226e903h
+dd 09568b1c3h
+dd 04b3fdaebh
+dd 0519bd776h
+dd 091a7416bh
+dd 087eb38e8h
+dd 0dda30af8h
+dd 09c8fdc49h
+dd 06fc07dadh
+dd 0036e0e0ch
+dd 0b83d539ah
+dd 01e6bd651h
+dd 097c71554h
+dd 07f214596h
+dd 097ddb834h
+dd 04ab600c1h
+dd 029e02d6dh
+dd 0fe897e4fh
+dd 052bd9282h
+dd 0d59a30a4h
+dd 0a451664ah
+dd 0a8ea674eh
+dd 0877fe297h
+dd 0bedb4fd2h
+dd 069c77e36h
+dd 0cfcf0457h
+dd 0088c8ec4h
+dd 0e29ffe56h
+dd 0edf485fbh
+dd 03284c6b0h
+dd 0e7736d22h
+dd 0144ccea1h
+dd 08a180fa5h
+dd 0bf03f033h
+dd 0ea593e27h
+dd 001391aeeh
+dd 076c120cfh
+dd 02e1266efh
+dd 0369e7b19h
+dd 0c56d864dh
+dd 030b5f49ch
+dd 009c36ad5h
+dd 0440f1ff9h
+dd 0e4da4331h
+dd 0c62aba61h
+dd 041323eabh
+dd 02dfe70b0h
+dd 08dd47e8ch
+dd 06b50dd9ch
+dd 076fe52d0h
+dd 0b1871217h
+dd 070bd3fedh
+dd 09437f298h
+dd 063dc81e8h
+dd 0cc5b6d91h
+dd 05a405d5ah
+dd 075ef50f4h
+dd 0e30e9bc9h
+dd 08a0b1ffch
+dd 0d6945ee0h
+dd 04aa50d1fh
+dd 0bc12c4afh
+dd 0f2468583h
+dd 041cd1379h
+dd 092699b02h
+dd 00f4cbc00h
+dd 07f232c87h
+dd 0b31461dah
+dd 067b88ac1h
+dd 0e0fd7c43h
+dd 0cca1ab33h
+dd 02f207df8h
+dd 03c231b57h
+dd 004c9ebd2h
+dd 006a7fc5eh
+dd 0a6aad9a7h
+dd 011ca03dch
+dd 0af005a1bh
+dd 0bd2754f8h
+dd 008e12953h
+dd 08df795aeh
+dd 03c0d8ef3h
+dd 03e6d978fh
+dd 0324f4736h
+dd 072a6968bh
+dd 0bcb15f2fh
+dd 075ee122ch
+dd 0d9658234h
+dd 0b1bacc69h
+dd 0d1312685h
+dd 00180a071h
+dd 03fede3c6h
+dd 04f589afah
+dd 09685e9a3h
+dd 0a60d73d6h
+dd 0af0c3041h
+dd 090d45f7bh
+dd 0378315c9h
+dd 053d72ee0h
+dd 09a5f5b60h
+dd 0fa6c4b68h
+dd 0406818d8h
+dd 0c3e92610h
+dd 0870555d8h
+dd 0dafcd737h
+dd 0ca210014h
+dd 078feef13h
+dd 0ca84316fh
+dd 037baf8a8h
+dd 0295c6af5h
+dd 0a04b2f50h
+dd 0a01b9036h
+dd 038a760dfh
+dd 0f9ccfe6ah
+dd 07d4e6e20h
+dd 075e563e7h
+dd 0e8d23d9eh
+dd 0d93b4c57h
+dd 0d550902bh
+dd 03e83b136h
+dd 02a438a01h
+dd 0cdff44a5h
+dd 07712d194h
+dd 0f4570c35h
+dd 05feee9bdh
+dd 0ee34c6f2h
+dd 0e0336982h
+dd 05add07d8h
+dd 04e6bcee9h
+dd 0d4190438h
+dd 0fa1485c4h
+dd 00b96ec9fh
+dd 0bd532b61h
+dd 08ff6d03bh
+dd 03f57b9a8h
+dd 0a4f11aeeh
+dd 07830a45bh
+dd 0e63344dch
+dd 021029809h
+dd 062b5e284h
+dd 0825c68d0h
+dd 02ae221c8h
+dd 01413592fh
+dd 0f86ccd36h
+dd 0ee84a595h
+dd 00b1cac85h
+dd 0174d1c8eh
+dd 0ff3acdfdh
+dd 0ff4091f5h
+dd 0b2ec0c99h
+dd 0c4b9865ah
+dd 01b96e70bh
+dd 022f00cd1h
+dd 039004edah
+dd 07dac420dh
+dd 0ed68606bh
+dd 08f335b59h
+dd 0d1fb668eh
+dd 00e29765dh
+dd 00dd3b11eh
+dd 05e1d6802h
+dd 0a9485f67h
+dd 0c9fe2036h
+dd 09d12ebcbh
+dd 0907d0d9dh
+dd 0467f6b28h
+dd 0b68460c9h
+dd 09e001d00h
+dd 0043f0d5eh
+dd 0cb75c7fdh
+dd 0aaf6c6fdh
+dd 04d08294fh
+dd 0a7d3fbf8h
+dd 071eb59f8h
+dd 0f07de3a7h
+dd 0ef5ffe9eh
+dd 05416612fh
+dd 0cef56170h
+dd 01457f950h
+dd 0b2c4a9cch
+dd 046282672h
+dd 0bc216c37h
+dd 028d5da4eh
+dd 04511245dh
+dd 01586dcf2h
+dd 086dac99ah
+dd 011325ebch
+dd 08352dfc6h
+dd 0c846138fh
+dd 029904752h
+dd 03bd18fa3h
+dd 07b16817bh
+dd 016ebf2f7h
+dd 05a67e409h
+dd 039abcba4h
+dd 0e812af4ah
+dd 0196c150dh
+dd 08f19eef2h
+dd 0d4617685h
+dd 0fb339fa3h
+dd 07303506fh
+dd 0b6aad3dch
+dd 0fd974d5eh
+dd 01beb8481h
+dd 00e85001eh
+dd 0607e0356h
+dd 039285c1fh
+dd 03f3ddd5fh
+dd 0d52a46f5h
+dd 052d7969eh
+dd 0e49f49e1h
+dd 068185730h
+dd 03df55a89h
+dd 01d417dd3h
+dd 061341a4ah
+dd 0b0f0c495h
+dd 07c88ad5eh
+dd 0ac0338f5h
+dd 070e6caf3h
+dd 0ea51f109h
+dd 03efa2c10h
+dd 03d438457h
+dd 0261858cfh
+dd 0b9fb6c47h
+dd 0b69e48d1h
+dd 07a72f468h
+dd 0a485dcc4h
+dd 02a839490h
+dd 05f72f60fh
+dd 0a0401f7fh
+dd 0d9d971f7h
+dd 020b6c213h
+dd 08e8c4475h
+dd 0c1bfc2feh
+dd 000e407d7h
+dd 0ffb0d5abh
+dd 0ed3c7571h
+dd 0f6fce9d4h
+dd 0d6df4d2ah
+dd 0e8af1927h
+dd 0a6c68deah
+dd 09ca35ef7h
+dd 025079a61h
+dd 0a01011abh
+dd 01e0463bdh
+dd 08bbb39d8h
+dd 0e2fc3b69h
+dd 0f9319098h
+dd 005e121f6h
+dd 008d7cbedh
+dd 08daab40ch
+dd 016efccf1h
+dd 009478906h
+dd 04f3aff0ah
+dd 08122fedeh
+dd 0db4ed62ah
+dd 033979b34h
+dd 0f4b762e0h
+dd 0be62aac8h
+dd 0f184a136h
+dd 05b8d91cbh
+dd 0efa74e84h
+dd 066545878h
+dd 0c29a1380h
+dd 0112b5be4h
+dd 0620a3f97h
+dd 05e25ea5dh
+dd 0c0256991h
+dd 0fa8e57c9h
+dd 007eba73ch
+dd 04b2ec036h
+dd 0a3cacf89h
+dd 0ad071b64h
+dd 07d19e7f9h
+dd 00c75dadbh
+dd 091117f44h
+dd 0397c0f69h
+dd 002a6e9d7h
+dd 09688dd6eh
+dd 0adda032bh
+dd 01e8f28bdh
+dd 07e05707fh
+dd 0737656c8h
+dd 0c0fa74afh
+dd 0ea1ae337h
+dd 054d792d9h
+dd 0221c21e8h
+dd 025d5ae3eh
+dd 0f28efc88h
+dd 02ab0412fh
+dd 07a7fc0f3h
+dd 01dc97737h
+dd 030d23e8ch
+dd 0a44dc682h
+dd 06203ffdeh
+dd 03b506827h
+dd 08ef1bacdh
+dd 0cacc459ah
+dd 0add62fe9h
+dd 0751fa772h
+dd 0666fbdc5h
+dd 09ad5b4beh
+dd 0ab1594e9h
+dd 0c510ddf7h
+dd 06052b10dh
+dd 0719facbbh
+dd 0ba34e4a3h
+dd 027eafd40h
+dd 0408ceb50h
+dd 075f626bah
+dd 0b065e82ch
+dd 066c98e74h
+dd 0fef99064h
+dd 028dadb01h
+dd 039eddfd4h
+dd 0b4b35f64h
+dd 0e09dcbcdh
+dd 0b1fcd7cch
+dd 0acbcdad0h
+dd 0bd0ffd60h
+dd 089928d16h
+dd 039cd0e27h
+dd 0ec48cae1h
+dd 0b6ed42d2h
+dd 0a025ba95h
+dd 0c97def34h
+dd 02406b239h
+dd 01438ab4ah
+dd 00cfafff6h
+dd 09b8cf1e6h
+dd 088ea79c5h
+dd 0ccd3293ch
+dd 0c88d3515h
+dd 09505cae2h
+dd 0595f7a06h
+dd 0bc44ac98h
+dd 0dfcf2ef9h
+dd 047288f2ah
+dd 0278309c7h
+dd 08dc570f7h
+dd 064712465h
+dd 05bf75623h
+dd 06ce38ee3h
+dd 0bd57bc19h
+dd 0f82c43d1h
+dd 09a3d344ch
+dd 0b0940280h
+dd 0f66d9041h
+dd 0c3b51f21h
+dd 0ca72d313h
+dd 08ccb4986h
+dd 08c90a654h
+dd 03918b212h
+dd 09da48d18h
+dd 00b0226f0h
+dd 0f339ca9dh
+dd 07fad851bh
+dd 09f846fe1h
+dd 0146d4dc7h
+dd 02eb74215h
+dd 04f1ae2e2h
+dd 06412c013h
+dd 08579f51ah
+dd 0669fd615h
+dd 0505b47f0h
+dd 050b21d79h
+dd 065cdc416h
+dd 02e17a36ah
+dd 031776250h
+dd 039f150c0h
+dd 05f139086h
+dd 0f5532d6bh
+dd 082c5a8beh
+dd 0c35d0e77h
+dd 06fe3f1c6h
+dd 03d5b2b53h
+dd 04637515fh
+dd 0d74aa816h
+dd 01592421dh
+dd 05f90b084h
+dd 01b7ea498h
+dd 00576b4c8h
+dd 06bc57ff6h
+dd 096562e86h
+dd 0c7b6ebeah
+dd 080ddd42ch
+dd 0d045237ah
+dd 0312af089h
+dd 0fa6b7d75h
+dd 0d72b53e1h
+dd 0e2a9ae0eh
+dd 0a0de004ah
+dd 0434e4154h
+dd 0b723b7f1h
+dd 0bb89b584h
+dd 0cf23b817h
+dd 030845e88h
+dd 0b3be58c6h
+dd 037da5172h
+dd 0940c6c9ch
+dd 0de7f23d6h
+dd 054c22675h
+dd 0409cbe7ah
+dd 039aa15c8h
+dd 0f859235ch
+dd 08ab8ccd2h
+dd 093352cd7h
+dd 0f5c7bab5h
+dd 080590d50h
+dd 0d6e5d163h
+dd 04bfdf243h
+dd 08ba5e7d4h
+dd 0c0832c68h
+dd 0da472637h
+dd 0b5447889h
+dd 06737f4c8h
+dd 0d95bc952h
+dd 0e1d134b1h
+dd 040f3dcf4h
+dd 01fa91804h
+dd 09834f5d5h
+dd 03baa6089h
+dd 09d959e55h
+dd 0345046c9h
+dd 0387cf892h
+dd 059ad0b03h
+dd 0f3655a53h
+dd 0e5f8772ah
+dd 03ebba3dfh
+dd 07b0efb1ch
+dd 0853e5c74h
+dd 07f10db4ah
+dd 0e643ade0h
+dd 010712d2dh
+dd 081422f1dh
+dd 08304ba2eh
+dd 0e31c74f1h
+dd 0d7332c87h
+dd 0d93930f4h
+dd 0774a97feh
+dd 0de65db5bh
+dd 0cf81aea9h
+dd 01df350d9h
+dd 01dba9d4fh
+dd 0693ac286h
+dd 011f11c09h
+dd 051a758e6h
+dd 07612a984h
+dd 052d595cdh
+dd 041cae628h
+dd 05550f249h
+dd 050b3d463h
+dd 0b44ecd5bh
+dd 01f0130cah
+dd 0843ec580h
+dd 03647bd09h
+dd 0c715abbah
+dd 0915c0a24h
+dd 0a4098dc7h
+dd 0e79956e6h
+dd 02a863fa5h
+dd 0769dab4dh
+dd 0c39f9afah
+dd 0353e6059h
+dd 0ca17c72ah
+dd 0d504b646h
+dd 087733f6ch
+dd 0976d038bh
+dd 0e856e6f2h
+dd 0faf93431h
+dd 066c8e407h
+dd 06b4cfe5fh
+dd 0d4f7660bh
+dd 0aec60ef7h
+dd 0654fa370h
+dd 06499895bh
+dd 0c8756dfah
+dd 02b340112h
+dd 09e07976ah
+dd 0b2175e26h
+dd 0505ac668h
+dd 035ec89ffh
+dd 0fe00d41dh
+dd 0d3632444h
+dd 0c75b2528h
+dd 045c0590bh
+dd 09c408431h
+dd 0939a1422h
+dd 031e7c446h
+dd 0dd55f079h
+dd 07e3af637h
+dd 02f6b757eh
+dd 0e0655921h
+dd 00e83d650h
+dd 02267d7ech
+dd 04064cf7ch
+dd 06a06357fh
+dd 03db2e56ah
+dd 07bd9b3f1h
+dd 0f4b80fc1h
+dd 080a1c81dh
+dd 050de0f56h
+dd 0d5b209c3h
+dd 0a345f067h
+dd 0825b9b1ch
+dd 04ed0585ah
+dd 0e6cb0516h
+dd 0e7469db3h
+dd 01c7773fch
+dd 04ead7cb2h
+dd 03c101eb1h
+dd 0c732f8fch
+dd 037f745a4h
+dd 026417063h
+dd 070df2b54h
+dd 09649134ah
+dd 08ab4bbdfh
+dd 08a0c6bd4h
+dd 0f0048565h
+dd 0cf733affh
+dd 04676a3d6h
+dd 02dd86bc7h
+dd 08b0e597fh
+dd 0dc8e1645h
+dd 01e0f98bch
+dd 025bd4cb7h
+dd 0fd1cd58eh
+dd 05065e842h
+dd 0ca3d8d09h
+dd 0fc67c6a1h
+dd 0fef21c4ah
+dd 0c604ac6dh
+dd 01a31060ch
+dd 06beec556h
+dd 037ef2faeh
+dd 034ed7730h
+dd 0583c2bedh
+dd 0bd964770h
+dd 0d79d4b8dh
+dd 04137e958h
+dd 0f64f953dh
+dd 0b71425ddh
+dd 074d9d64bh
+dd 0c5f1e0d6h
+dd 05fa238cdh
+dd 0455731a5h
+dd 0f2052598h
+dd 07187c716h
+dd 042f43bf0h
+dd 09ec43384h
+dd 0a7132b82h
+dd 087a2525eh
+dd 0c47c833eh
+dd 0006324f5h
+dd 02a5c2362h
+dd 07f918642h
+dd 0914b6992h
+dd 08b4249c1h
+dd 05072e4ceh
+dd 049ca7310h
+dd 0e026feadh
+dd 0bfb1b739h
+dd 064b28009h
+dd 0790f0e46h
+dd 021c247b7h
+dd 0130e28d2h
+dd 07faeba6eh
+dd 0e14f5ebfh
+dd 0ae063ad8h
+dd 046716015h
+dd 0e5ae809fh
+dd 0a11e3d9dh
+dd 07359c73ah
+dd 02454e1bch
+dd 028adafd3h
+dd 05903b060h
+dd 0a2f6b115h
+dd 081fc0d86h
+dd 0d8ce3a3ah
+dd 0f40ce617h
+dd 00be18d62h
+dd 018cf2662h
+dd 04bc9aa94h
+dd 0239ee804h
+dd 09eaf47d6h
+dd 0a0c1fa34h
+dd 0587a1082h
+dd 08960f05fh
+dd 0389a89edh
+dd 027c75fa9h
+dd 0e1f0d5feh
+dd 0fbb66dfeh
+dd 0dac05c49h
+dd 0659c6da3h
+dd 0d386e39ah
+dd 0a6911709h
+dd 0dd1996cah
+dd 01b68b1d1h
+dd 09dde3e28h
+dd 059426854h
+dd 003b40adch
+dd 023d8f2abh
+dd 0075470f2h
+dd 064728548h
+dd 06d66495ah
+dd 0ccc4738dh
+dd 03bc2d6c6h
+dd 0c12f4b92h
+dd 00edbe8bdh
+dd 0a502e36bh
+dd 0ee8cd313h
+dd 05b5a9cabh
+dd 01d153f6eh
+dd 0c7ba8ec6h
+dd 0094cb3cah
+dd 040530bddh
+dd 0209b59d7h
+dd 0fde5055ch
+dd 0bd5e9758h
+dd 009983b25h
+dd 065400490h
+dd 09a0b4aa3h
+dd 031fa987bh
+dd 0cad000bah
+dd 017faa6bdh
+dd 0b17e9397h
+dd 0a004ab43h
+dd 0a31f5ea8h
+dd 020c732e7h
+dd 059361143h
+dd 08c1ce280h
+dd 08c3d59c1h
+dd 0b0db0453h
+dd 00775b3cdh
+dd 0485f8999h
+dd 0478001c1h
+dd 0ed54abeah
+dd 0766d32d5h
+dd 09c1a37c1h
+dd 0bb63d2cfh
+dd 0c0ddecf9h
+dd 027b48123h
+dd 097b878ach
+dd 0c41bbd46h
+dd 0fa5d7f0bh
+dd 054c35ae5h
+dd 0e1298bd9h
+dd 02532b57fh
+dd 01dfdf7adh
+dd 06c2ff4e7h
+dd 0fa582be4h
+dd 0858fba31h
+dd 09e043deah
+dd 02bc5faach
+dd 0c18101a5h
+dd 0e60d6aaeh
+dd 02211cf16h
+dd 09ff9afa5h
+dd 0c102119dh
+dd 0a31cf110h
+dd 00580fbabh
+dd 03f351199h
+dd 0610243bbh
+dd 00d40c181h
+dd 043031ce0h
+dd 0462e8b03h
+dd 09d9f913fh
+dd 084c8e1c0h
+dd 0fa7262deh
+dd 0a26e5dc2h
+dd 0b78fe172h
+dd 050b1b888h
+dd 062cd858eh
+dd 07ad3e1f0h
+dd 0e21cef96h
+dd 093812ce3h
+dd 02dff0110h
+dd 056ec6499h
+dd 070af8abeh
+dd 0ea6f411ah
+dd 02a2bb91eh
+dd 0128757a3h
+dd 0b3ca0495h
+dd 0ba75e977h
+dd 08c7491c4h
+dd 066c48030h
+dd 0028a41c8h
+dd 098794df4h
+dd 0cc1b0577h
+dd 0826664ffh
+dd 07feb8260h
+dd 0f3a88628h
+dd 009523188h
+dd 0b0fab9a7h
+dd 0632b6c6fh
+dd 03446eb2ah
+dd 0a2119080h
+dd 02984f42dh
+dd 0a6f839cbh
+dd 0b19c876bh
+dd 01876b4a7h
+dd 06d66b809h
+dd 010b26a70h
+dd 09c686408h
+dd 0d03fcad1h
+dd 084e5c169h
+dd 06e521252h
+dd 0efc5a9e1h
+dd 08bd88556h
+dd 0bcbd8253h
+dd 05bbcd5f8h
+dd 09ded8d8eh
+dd 0c593ccc8h
+dd 0f026e2e1h
+dd 0a97dc1d2h
+dd 04c10cd23h
+dd 02eff6243h
+dd 0c5a9a788h
+dd 073882e8ah
+dd 0741d58d0h
+dd 084801dfah
+dd 0959382a9h
+dd 0e882a331h
+dd 0baac23f4h
+dd 03e6f43bdh
+dd 01495ed00h
+dd 0a86e4d96h
+dd 0cd30e545h
+dd 02d7f067bh
+dd 063fa58e7h
+dd 0737a7682h
+dd 059d9e5a5h
+dd 038daad83h
+dd 0705b81cah
+dd 090b42ecah
+dd 059a79d87h
+dd 01663f33ah
+dd 0438e391ch
+dd 0033303b7h
+dd 00dc677deh
+dd 06830e8a0h
+dd 077c072a0h
+dd 0ccad38d0h
+dd 0f3a69a97h
+dd 00839f54fh
+dd 043b0cd1fh
+dd 013c7cc83h
+dd 0838abb38h
+dd 0beb85c18h
+dd 0a14d5932h
+dd 0731677b5h
+dd 09b1c379bh
+dd 00c4d5571h
+dd 0e0523435h
+dd 02f9217ebh
+dd 0e510f686h
+dd 0c5069721h
+dd 0796c51c2h
+dd 0a5e5f1d9h
+dd 096dd714eh
+dd 081d0ac19h
+dd 0b78f9ecch
+dd 02da5dc3ch
+dd 0b7f0eaa8h
+dd 083887a67h
+dd 0ebcfaf29h
+dd 018bf65beh
+dd 00e908d57h
+dd 0b0201fceh
+dd 0954b46c0h
+dd 065b3a7d8h
+dd 0f8a53c15h
+dd 040448f33h
+dd 023b15f72h
+dd 031fe6602h
+dd 081b6af20h
+dd 09ae7d36ah
+dd 05ade0f4bh
+dd 0efce82d4h
+dd 00db2ebfbh
+dd 05fe2a09bh
+dd 025025eadh
+dd 0c35aa5b8h
+dd 0933682a1h
+dd 0625ec01eh
+dd 07fc10b5fh
+dd 0c11553d4h
+dd 07c4f1d58h
+dd 02efcd071h
+dd 03682b27ah
+dd 03c475820h
+dd 0ad8c7759h
+dd 0c45012a3h
+dd 0704beef5h
+dd 05ef28201h
+dd 04c223d09h
+dd 024a6e2c0h
+dd 081a6f1deh
+dd 07724acc3h
+dd 0dc854468h
+dd 033678b24h
+dd 0d0c45421h
+dd 045541248h
+dd 0536dccdfh
+dd 0668e6498h
+dd 070ff47adh
+dd 0a00ede98h
+dd 063665b70h
+dd 0f5825c58h
+dd 05077fc41h
+dd 0ac02930fh
+dd 057b14dd8h
+dd 0afb37354h
+dd 0e175fc47h
+dd 09fad70fdh
+dd 0d31aacf8h
+dd 072d4442dh
+dd 0acebefd2h
+dd 08cbb12c0h
+dd 09520a6ach
+dd 0b69d90b2h
+dd 019cdf071h
+dd 00826f210h
+dd 053c52b7dh
+dd 0a42c426ah
+dd 05ea08c5dh
+dd 047242cbeh
+dd 0bfe0c7c6h
+dd 084d997a4h
+dd 01ad847c6h
+dd 03deeedcbh
+dd 02cfe2ff3h
+dd 040e66261h
+dd 00096f641h
+dd 038432491h
+dd 097996095h
+dd 09683238dh
+dd 084a8e766h
+dd 0c7db2cb1h
+dd 075161647h
+dd 057f7ec51h
+dd 08d03823ch
+dd 0db211403h
+dd 0ea93efe2h
+dd 0df7388a6h
+dd 0250c9e03h
+dd 01c327255h
+dd 08d72f19dh
+dd 0c057ede6h
+dd 0f239a057h
+dd 0e23b1be3h
+dd 0d25e7155h
+dd 0a500d659h
+dd 034f7a73bh
+dd 0daf729a4h
+dd 0d3da7dffh
+dd 0d987e21ch
+dd 0418530bdh
+dd 02403b2a6h
+dd 041c7d41fh
+dd 03b414492h
+dd 05e3214d9h
+dd 0c3106a48h
+dd 0f091a1abh
+dd 07925cd09h
+dd 0d386bd6fh
+dd 0eaabeaf9h
+dd 01fa1c6cbh
+dd 02eff7ec9h
+dd 0d5494960h
+dd 0008a2073h
+dd 0640d64c5h
+dd 03018fd75h
+dd 0b24128eah
+dd 07dacfc3eh
+dd 087e62b3fh
+dd 0a5b53797h
+dd 023b74678h
+dd 00fd9b5feh
+dd 07e349bbfh
+dd 0889b6294h
+dd 093d90b0eh
+dd 0e6a0a3eah
+dd 02f8d7592h
+dd 02ca9b406h
+dd 091d231eeh
+dd 09e6991cfh
+dd 032a7b539h
+dd 00a663bb6h
+dd 0a1eaffc5h
+dd 068368390h
+dd 07a5d99d1h
+dd 0260c0384h
+dd 049cab162h
+dd 04451fa7eh
+dd 0778b28e7h
+dd 076a73062h
+dd 0dba7e61bh
+dd 00ebca0d2h
+dd 045d836fbh
+dd 0ebb41f26h
+dd 034c48f8fh
+dd 0b43f83fbh
+dd 0434547c7h
+dd 0886a6cdah
+dd 04cbb5916h
+dd 01da19491h
+dd 0f5541107h
+dd 0581fd582h
+dd 051f7a263h
+dd 023a8f746h
+dd 044449704h
+dd 0dcdc0c36h
+dd 032e15274h
+dd 04384a9c9h
+dd 0abd33ad0h
+dd 0845cdc30h
+dd 0738192d3h
+dd 0e1e6b638h
+dd 01e2cda0ch
+dd 0bdd2d94ch
+dd 0b4adcf59h
+dd 05ef373bfh
+dd 0e3a2d1feh
+dd 0bd7f7f7ch
+dd 0a329519bh
+dd 07b870f78h
+dd 056f00421h
+dd 0a4c3bd90h
+dd 0f41be79eh
+dd 005338dd2h
+dd 0e20e55adh
+dd 067408f3ch
+dd 0e5d70dfah
+dd 045f125d6h
+dd 09ed65c3bh
+dd 068b55d64h
+dd 083c6565eh
+dd 0241f1ffbh
+dd 0c372fe2bh
+dd 00928db0ch
+dd 05b910494h
+dd 024660d12h
+dd 00953e5cfh
+dd 06583970bh
+dd 04654a2b4h
+dd 067876eb2h
+dd 0a8e6c683h
+dd 046cbbaaeh
+dd 05fd09ed7h
+dd 06872d0d4h
+dd 0f1fab31bh
+dd 00fbf8ddeh
+dd 052a17b2eh
+dd 005ffc0abh
+dd 0c84fa56ch
+dd 0dcd5ac51h
+dd 07186a165h
+dd 03af919a6h
+dd 0c13545a8h
+dd 09be5eda0h
+dd 04e5ad56bh
+dd 0b88fba5ah
+dd 0e790cc01h
+dd 0cda3eec3h
+dd 09b3e500fh
+dd 05d7d69adh
+dd 0cfca2160h
+dd 0ec0ddd70h
+dd 07f61d711h
+dd 04a86e619h
+dd 0b42a256bh
+dd 0a3db2068h
+dd 0553db59dh
+dd 0b2f40811h
+dd 07eaeae71h
+dd 0faa4f9dfh
+dd 0b9e024a7h
+dd 03208e5efh
+dd 0284dea91h
+dd 039d3024fh
+dd 02b21e015h
+dd 00755722ch
+dd 0ac17e83dh
+dd 036d8cb4fh
+dd 0904b48f9h
+dd 031bf9eebh
+dd 04d0ed9cfh
+dd 071a0d6d3h
+dd 0c327ff3dh
+dd 08e8591b8h
+dd 0ebaeda99h
+dd 08e52c53dh
+dd 096a1feb2h
+dd 008ae2427h
+dd 0a745586ch
+dd 0fcaa4f18h
+dd 0106f4444h
+dd 07d53d1e9h
+dd 0013193b0h
+dd 052e32992h
+dd 0826c424fh
+dd 050781498h
+dd 0fbc022cah
+dd 09040414dh
+dd 0f9c81a98h
+dd 0af34d0b8h
+dd 078a28a6bh
+dd 0b7c70865h
+dd 073fe9362h
+dd 01756f166h
+dd 083cf7906h
+dd 07d25586ah
+dd 051e2ea4dh
+dd 06edc196eh
+dd 047b99d89h
+dd 0ce1c26cbh
+dd 029398d9ch
+dd 0e497a064h
+dd 0abf6ac38h
+dd 0b0eebe07h
+dd 0047fa19bh
+dd 021fa9768h
+dd 04dcb4514h
+dd 01af5796dh
+dd 014126683h
+dd 0b48c2f81h
+dd 0755aa173h
+dd 024df9e5dh
+dd 0b2660b49h
+dd 082c303f5h
+dd 0bc927b9ah
+dd 0d9b46783h
+dd 0a52ef48dh
+dd 012c80d79h
+dd 09711a5e8h
+dd 0e8c39e1fh
+dd 051d5e90fh
+dd 0ebcbfa29h
+dd 0a731a1aah
+dd 08497cec0h
+dd 012240b3fh
+dd 0186dd563h
+dd 0ef7acae2h
+dd 05065f635h
+dd 0c19590e4h
+dd 0f131858dh
+dd 096a65c81h
+dd 0281bf318h
+dd 0bf02a139h
+dd 04132bd96h
+dd 05ff6791bh
+dd 0c00f75b5h
+dd 0aab1417eh
+dd 0f6e0c7e7h
+dd 08b844a29h
+dd 07b87900dh
+dd 01529c487h
+dd 06e9e83d5h
+dd 0d95e6300h
+dd 0918d1bc5h
+dd 02608e634h
+dd 036250808h
+dd 0d6ee5035h
+dd 07e128bc7h
+dd 0c38e422fh
+dd 00e8395afh
+dd 06cfbc8b0h
+dd 089e9b5c0h
+dd 020005db4h
+dd 0e06664ceh
+dd 0a24b248eh
+dd 06345ef17h
+dd 037b0742ch
+dd 09e44158dh
+dd 09dd86aa9h
+dd 0bceb7206h
+dd 0f437a0f5h
+dd 0d22c3b63h
+dd 06acbd182h
+dd 021abe7eah
+dd 0946315feh
+dd 06d3223b2h
+dd 09271f36bh
+dd 0ac349934h
+dd 095497e74h
+dd 092f9f3ffh
+dd 099d516e9h
+dd 0727b9195h
+dd 0ad10e8d3h
+dd 0a5314270h
+dd 0f0d21e04h
+dd 05fa8cc32h
+dd 06316eb2ch
+dd 0c7e7d380h
+dd 0a6331d90h
+dd 0159ba918h
+dd 0440cb521h
+dd 0165a5e29h
+dd 04751abceh
+dd 0346e3b50h
+dd 0df4f2a73h
+dd 08486b3b6h
+dd 0ff7f31a1h
+dd 0ef9264b7h
+dd 0a4ede788h
+dd 05de5cd5ch
+dd 040f24874h
+dd 06b43d312h
+dd 07723156ah
+dd 048040bffh
+dd 0954b128bh
+dd 0931a3255h
+dd 0ef2942edh
+dd 0465aa07eh
+dd 053b52e99h
+dd 078722d5fh
+dd 08f25dd90h
+dd 04619cd6eh
+dd 0701c97abh
+dd 0af1f343dh
+dd 065548549h
+dd 0cfc87319h
+dd 0886097b5h
+dd 00ee04066h
+dd 0f3d95d15h
+dd 0a8854267h
+dd 0e1150572h
+dd 094fcdf5fh
+dd 047333a0dh
+dd 0ffe5bf1dh
+dd 07ef37970h
+dd 05206478ch
+dd 0e3c1d646h
+dd 0b4e10214h
+dd 095762105h
+dd 03950e467h
+dd 060a93b68h
+dd 04eddca97h
+dd 001456659h
+dd 0a6c22647h
+dd 08b350176h
+dd 0b9b477ech
+dd 0a012a966h
+dd 0867d158fh
+dd 0ba21e2a0h
+dd 023bda43ah
+dd 023937e54h
+dd 02a7794aah
+dd 00caca61bh
+dd 06faad2beh
+dd 0945e948ah
+dd 075c7a5eeh
+dd 0896ac6f2h
+dd 02fdeeb89h
+dd 01ce7b4d7h
+dd 0b38b1c6ah
+dd 0012239b9h
+dd 01f19a2c7h
+dd 09ac180f1h
+dd 0786d44c3h
+dd 0c8615f7fh
+dd 0da51a2c6h
+dd 07f507ca2h
+dd 0a1339132h
+dd 09315950ch
+dd 06aa54c34h
+dd 098ea9d32h
+dd 097291173h
+dd 0a447bc32h
+dd 02782b1beh
+dd 0af7a34d3h
+dd 0b41a481ch
+dd 0696e6062h
+dd 06ba28de1h
+dd 025c04382h
+dd 066b005feh
+dd 090c5b0c1h
+dd 0ba07c1d8h
+dd 06a8c5b23h
+dd 094e84fach
+dd 00b8112a0h
+dd 0dee67054h
+dd 0ae17126fh
+dd 0d19a09cbh
+dd 05e65032bh
+dd 017b4f091h
+dd 0f41a1ac2h
+dd 00ec5a8b4h
+dd 0d28e98a5h
+dd 01efa037fh
+dd 0658a65a0h
+dd 0b3c43255h
+dd 0ecfcdc1fh
+dd 0261cf417h
+dd 0fb9eb2d6h
+dd 031f31134h
+dd 02940771bh
+dd 094d0e22eh
+dd 0abda5e9fh
+dd 0f3a944c6h
+dd 0b1f74cdch
+dd 0484730b6h
+dd 0cacf64b0h
+dd 0eedbe489h
+dd 05e3a56b1h
+dd 0a8bc70d3h
+dd 0d817cbe6h
+dd 087cccabfh
+dd 050029476h
+dd 0186a45f2h
+dd 0e473183ch
+dd 00e7d3d0ah
+dd 0b95e14ebh
+dd 0fb488ae8h
+dd 090f21394h
+dd 0004e6e62h
+dd 03ba134b2h
+dd 07993f4cbh
+dd 0ee0c60cfh
+dd 0b89188c7h
+dd 0808e9f79h
+dd 004e6f4dbh
+dd 062088689h
+dd 0db77fb04h
+dd 013bfb10fh
+dd 006a91a3bh
+dd 0459aafadh
+dd 0f76b5248h
+dd 0b3ffd809h
+dd 0811575ceh
+dd 08d5be300h
+dd 029e64905h
+dd 016c33c6dh
+dd 00a308f3dh
+dd 0b590d7dch
+dd 016a31cdeh
+dd 0315f7d73h
+dd 046261b17h
+dd 05da89847h
+dd 050f636eah
+dd 0989088cfh
+dd 0b865ece4h
+dd 0d3374694h
+dd 003819c01h
+dd 01cc2bd5fh
+dd 077be1ea6h
+dd 0a595ea74h
+dd 0d1b88e25h
+dd 0d6c4c8f8h
+dd 066dc1e9ah
+dd 009b31891h
+dd 0b5e99a63h
+dd 03507c4d0h
+dd 032ecddc6h
+dd 0756ad236h
+dd 0998c0186h
+dd 0df66bfe8h
+dd 0a0db45f3h
+dd 0a3700678h
+dd 0fd604ee3h
+dd 0bad43a73h
+dd 0544df02eh
+dd 01fc4b9b1h
+dd 0c2a1cc84h
+dd 09b2709aah
+dd 0417d7934h
+dd 0704c3db9h
+dd 070e99c91h
+dd 05eecd6d0h
+dd 095cc70dch
+dd 080469fd8h
+dd 033fd8c45h
+dd 04b7857c2h
+dd 06493ec29h
+dd 01774718eh
+dd 0df32976dh
+dd 0408465a3h
+dd 0c6b57485h
+dd 08cbb8ea5h
+dd 0ea4dbc81h
+dd 06366391fh
+dd 098fd1d36h
+dd 0465ab320h
+dd 04c7e6a88h
+dd 0c5a1f069h
+dd 05fdeb7d0h
+dd 06187c0bbh
+dd 091f9cea1h
+dd 0a28e4a08h
+dd 05b8cf64dh
+dd 02e4b4bb8h
+dd 07017bfd4h
+dd 0c7f7b494h
+dd 052a70699h
+dd 01f7f8c87h
+dd 05e5a5b38h
+dd 0877c1499h
+dd 0354ac597h
+dd 0d457cbbah
+dd 033975ff8h
+dd 03fc8d2b5h
+dd 0f5f90544h
+dd 0b5600202h
+dd 056850a5ch
+dd 079ad23b6h
+dd 0a3a6428dh
+dd 00658ae35h
+dd 00da6282ch
+dd 0e80e20a0h
+dd 0ce0e9eedh
+dd 02a44e0b7h
+dd 02b0edf1dh
+dd 05decce26h
+dd 02c7b39dah
+dd 0a2d973b0h
+dd 0bd6b859dh
+dd 0a85ce306h
+dd 03e199662h
+dd 018ee2d29h
+dd 07abda9f5h
+dd 03fe72fb6h
+dd 05f77a895h
+dd 0d00ffc1eh
+dd 0f48a33f3h
+dd 078becc06h
+dd 069f6b3afh
+dd 016fef7d9h
+dd 063edbe09h
+dd 03ebbf0a2h
+dd 02fc5f502h
+dd 050e6ae24h
+dd 09b0315f7h
+dd 0896d563fh
+dd 09b4275d5h
+dd 07d20409dh
+dd 0e97d9ca8h
+dd 0f05751deh
+dd 0ae2590d7h
+dd 0b6c45942h
+dd 01762e861h
+dd 073322e6dh
+dd 09dc9b557h
+dd 002db8ea1h
+dd 0be14f3f5h
+dd 05fbf58fah
+dd 0bb951e58h
+dd 0037c9604h
+dd 003d98791h
+dd 0c34bf3dah
+dd 0f0498ea1h
+dd 0633997b7h
+dd 07f968429h
+dd 04ff93273h
+dd 0b5a8e557h
+dd 0f8a6e0e6h
+dd 09fc308bch
+dd 0d83ae7c9h
+dd 0d813a10eh
+dd 006dbcfa9h
+dd 0bbeba1fdh
+dd 0f9e9301ah
+dd 09a02a969h
+dd 02033b444h
+dd 0932d1804h
+dd 072092200h
+dd 0c584f9a7h
+dd 08aaeeeb4h
+dd 017857111h
+dd 04008e706h
+dd 0e51f09b3h
+dd 01acb9c09h
+dd 08cf83dach
+dd 0a30cbda8h
+dd 0c0bb02a2h
+dd 0f19c9719h
+dd 085c35686h
+dd 07bbf9a13h
+dd 0a48e29aeh
+dd 0ae8194abh
+dd 0382c8ee0h
+dd 0ab7d9627h
+dd 04c050811h
+dd 0c5d3a01bh
+dd 023b90f8ah
+dd 082f6549ch
+dd 0463a365fh
+dd 0344b56ech
+dd 018c9538dh
+dd 04296f347h
+dd 04387d63fh
+dd 0cc167f19h
+dd 01cd1032bh
+dd 0534d57cch
+dd 0a31a2d8bh
+dd 0b0c503d4h
+dd 0a6d321ceh
+dd 0be8ac857h
+dd 02bb1d656h
+dd 0c89a4f20h
+dd 038c344fdh
+dd 0e67d4118h
+dd 0bff08255h
+dd 04fd0a97eh
+dd 05de6de7bh
+dd 0b5f5e39fh
+dd 082dd4ea1h
+dd 0baf60183h
+dd 07a73bc24h
+dd 0a8716e5ch
+dd 0c27f0ddbh
+dd 0996e3b24h
+dd 013f14139h
+dd 07436aacah
+dd 086b6251bh
+dd 0339a21fbh
+dd 05727121bh
+dd 023822927h
+dd 0adb8cb44h
+dd 0f96e4eedh
+dd 02d8c33aeh
+dd 0ee31d2a8h
+dd 0f3d8c29bh
+dd 0274dcdceh
+dd 00899bae8h
+dd 04463109ah
+dd 04771f2bdh
+dd 00970540ch
+dd 03368b146h
+dd 090069bd8h
+dd 0402f744bh
+dd 0d54c3d73h
+dd 0776fbb1ah
+dd 0df403f80h
+dd 0bb09d9f8h
+dd 021a9a68fh
+dd 031659608h
+dd 0743109dfh
+dd 0c892eec7h
+dd 02d617242h
+dd 042829f14h
+dd 0c37ec0f8h
+dd 081972599h
+dd 0c0f9f38bh
+dd 079b6d609h
+dd 08f96a119h
+dd 07e195b73h
+dd 03f918ca9h
+dd 0568a203eh
+dd 00bb4b259h
+dd 0ed12d20eh
+dd 02ad092fch
+dd 041b4b1e9h
+dd 03cfc2914h
+dd 08cb36f8ah
+dd 03ed73562h
+dd 0a8acf582h
+dd 00a49bb9eh
+dd 005ed8f71h
+dd 0dc5c35eeh
+dd 08ebc4bf3h
+dd 0ac74decfh
+dd 0707a265ch
+dd 07f6cb630h
+dd 08157659ah
+dd 06842351dh
+dd 001bfded0h
+dd 048897971h
+dd 007b74245h
+dd 0cf2ec066h
+dd 0113e7649h
+dd 00b172fa0h
+dd 0e90ef3bch
+dd 0ecbf9bbah
+dd 0185d916dh
+dd 04f48ddcah
+dd 010bdad8eh
+dd 018384691h
+dd 04fd3ade8h
+dd 0300c6255h
+dd 0a57fd414h
+dd 05fa2c263h
+dd 0f4f21372h
+dd 016a5966dh
+dd 0d14e0ff1h
+dd 0acae2598h
+dd 08a9bcae9h
+dd 0aae2b04bh
+dd 051887f95h
+dd 029de411ah
+dd 06c9e03a0h
+dd 09333c63eh
+dd 08aacb666h
+dd 083d99229h
+dd 0a4ca732dh
+dd 0c206aeb0h
+dd 0158900a4h
+dd 00d05a72bh
+dd 0e6019e6dh
+dd 06f318f90h
+dd 0bbda173fh
+dd 0e3b0868ch
+dd 0f8ebfc89h
+dd 00743dabah
+dd 06f9f6e0fh
+dd 09269f307h
+dd 00e52821ah
+dd 0a9118f72h
+dd 0b7a98a41h
+dd 0d7517fc5h
+dd 0d01cfacfh
+dd 002d9f6f9h
+dd 09a3222dfh
+dd 09382c44ah
+dd 0236e3237h
+dd 087c139bbh
+dd 0fe6d08c9h
+dd 0f8e44713h
+dd 0cb8ee87ah
+dd 07fa080c2h
+dd 00a6b0a7fh
+dd 07df3cf57h
+dd 09d62fd2dh
+dd 04d448a5ah
+dd 0fbca4b93h
+dd 03a6a3b59h
+dd 0cac1629ch
+dd 0dcb2cd0eh
+dd 082fdc2b4h
+dd 0abc0192ch
+dd 079f0ac26h
+dd 04110aa71h
+dd 09525eb8ah
+dd 004f790edh
+dd 0c5f5687dh
+dd 0d5294462h
+dd 047d1d0efh
+dd 0792f68c8h
+dd 0c09c7efeh
+dd 070c9e6aeh
+dd 01e23e933h
+dd 04ddf2047h
+dd 028643f6ah
+dd 06f673b46h
+dd 0e60e9671h
+dd 074d984c6h
+dd 0d2a6019fh
+dd 0c7be8c72h
+dd 015d7202eh
+dd 0114a2a17h
+dd 01ead5341h
+dd 0536ef3b1h
+dd 018f877c2h
+dd 0396dac94h
+dd 0d8912f50h
+dd 0eeb12830h
+dd 047033948h
+dd 0afb5a845h
+dd 05f09b82ch
+dd 04abe3c06h
+dd 03b3ba507h
+dd 0808cd0cfh
+dd 003986781h
+dd 06a72a49fh
+dd 0c8f482a6h
+dd 0bfe8904dh
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M023067221D.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M023067221D.inc
new file mode 100644
index 0000000..39c2a8c
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M023067221D.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version
+dd 00000021dh ; Patch ID
+dd 008122013h ; DATE
+dd 000030672h ; CPUID
+dd 0a565e78ch ; Checksum
+dd 000000001h ; Loader Version
+dd 000000002h ; Platform ID
+dd 00000cbd0h ; Data size
+dd 00000cc00h ; Total size
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h ; reserved
+dd 000000000h
+dd 0000000a1h
+dd 000020001h
+dd 00000021dh
+dd 000000000h
+dd 000000000h
+dd 020130812h
+dd 000003211h
+dd 000000001h
+dd 000030672h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0000032f4h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 000000000h
+dd 0bdaff5c7h
+dd 0e2bd1407h
+dd 0dc3c2e66h
+dd 04e975879h
+dd 0fb634d15h
+dd 0116a8ea1h
+dd 0567041f1h
+dd 0aad1635fh
+dd 0156866dbh
+dd 0c4bf175ah
+dd 09d00ca4fh
+dd 0b3e89a09h
+dd 07d2c8e19h
+dd 0bf5b667ch
+dd 07a1a7ac0h
+dd 026eebc7dh
+dd 0b2967286h
+dd 0ceb685c8h
+dd 0ffba02e6h
+dd 0144b5468h
+dd 000c428c9h
+dd 06d15dd3ah
+dd 0f9461953h
+dd 01632a092h
+dd 0222335dah
+dd 01fee67d9h
+dd 0a770513ch
+dd 04e83def6h
+dd 0b3d82e5ah
+dd 050f0b89fh
+dd 07fe10d45h
+dd 070f05efdh
+dd 05f575449h
+dd 0ab71a0a3h
+dd 0fb2a6eb5h
+dd 00283b4e2h
+dd 058a95566h
+dd 038a4c957h
+dd 08a682f1bh
+dd 0c49b3009h
+dd 01256e90bh
+dd 033169c52h
+dd 0d91585c4h
+dd 0df78eb29h
+dd 09f403399h
+dd 0a9de58dah
+dd 0fd05c858h
+dd 05a0f11bch
+dd 0c00e7840h
+dd 0b39bd56ah
+dd 0b87f38c7h
+dd 090141c59h
+dd 0325933f9h
+dd 00b0e1332h
+dd 0963c4befh
+dd 0f203d9ach
+dd 03925365bh
+dd 02955f8e7h
+dd 01fc417cbh
+dd 0d840e4e7h
+dd 025e9f7fah
+dd 0fb769b96h
+dd 0c7b8da5eh
+dd 0e81200f0h
+dd 071291c12h
+dd 05989b1e5h
+dd 0c007fdadh
+dd 0d7c9091fh
+dd 06a008197h
+dd 073005539h
+dd 06d8b436ch
+dd 0bc606f43h
+dd 000000011h
+dd 07c23609bh
+dd 0c2d1f56dh
+dd 007ed1e5fh
+dd 0e5620415h
+dd 049291b5bh
+dd 0875ba2e1h
+dd 06fd07e10h
+dd 0f1e105d1h
+dd 015fa6c9ch
+dd 0ae3ccf71h
+dd 09e522f4ch
+dd 015856a66h
+dd 0dd7b1791h
+dd 0c60ee349h
+dd 0f6da5718h
+dd 0771fc66fh
+dd 02d372229h
+dd 0a43962d8h
+dd 08fef5172h
+dd 02e485032h
+dd 0146f65cah
+dd 0af2ce569h
+dd 00f866e68h
+dd 03bc3baa6h
+dd 03a2f704ch
+dd 0b82708d3h
+dd 036555dc9h
+dd 0a941591ch
+dd 028d5d691h
+dd 016bfa496h
+dd 0e5746730h
+dd 0fd084f32h
+dd 0fcc0a027h
+dd 091c6c84bh
+dd 01c50bacch
+dd 0418c5040h
+dd 0cb7c0d60h
+dd 01bfb2d7ch
+dd 0870a7038h
+dd 07e0aae2ah
+dd 0166004d2h
+dd 0ff0de02fh
+dd 0e55dff35h
+dd 0edfac823h
+dd 0baca17c0h
+dd 0d2f8b5c0h
+dd 05d4a237ch
+dd 0fa5655aeh
+dd 0112835dah
+dd 0a93c24f6h
+dd 0446faa2bh
+dd 025c7ef33h
+dd 09ef0ec03h
+dd 01bcda829h
+dd 0a3f014e8h
+dd 0573802f7h
+dd 06528efeah
+dd 088f4a6abh
+dd 058b7af37h
+dd 070e15d25h
+dd 0f9c451fdh
+dd 084b1bf93h
+dd 05b404d92h
+dd 09bc15c8fh
+dd 012ed25efh
+dd 04ef89446h
+dd 01733bc6dh
+dd 0fbfaaa14h
+dd 01cd615b8h
+dd 0687ca4dch
+dd 0dcf43db1h
+dd 0a7c89436h
+dd 065a29bf0h
+dd 076286bb8h
+dd 0acc1a0dch
+dd 044ca0e5bh
+dd 0678cac41h
+dd 02c5121a5h
+dd 0e0a8cbcbh
+dd 0b7fb6623h
+dd 077175b7ch
+dd 09d9a7037h
+dd 02a52142ah
+dd 093333192h
+dd 065d872e9h
+dd 0300698a0h
+dd 0a9ebbd95h
+dd 01dd4dd24h
+dd 097e353d0h
+dd 06ef84ed2h
+dd 09acc7383h
+dd 053e2ac65h
+dd 0a0edd7ceh
+dd 0e1c94139h
+dd 089a10fcch
+dd 08670e782h
+dd 0faf4c336h
+dd 00fc474deh
+dd 0fb6ef3b7h
+dd 081c65489h
+dd 01e7560b1h
+dd 056b65dc3h
+dd 078808b0ch
+dd 09e328e74h
+dd 060f66beah
+dd 00e69aea8h
+dd 0d0b82c44h
+dd 0fa27c93bh
+dd 0784d8455h
+dd 0af6f4b01h
+dd 06b59e568h
+dd 0545d0627h
+dd 0fdeaad9dh
+dd 00d86dafah
+dd 019475f41h
+dd 010ee3f2ah
+dd 027997944h
+dd 036090332h
+dd 0c5c06324h
+dd 0de126cf4h
+dd 05f01cd93h
+dd 088eb4c49h
+dd 00aa01751h
+dd 0649126feh
+dd 0d74b2192h
+dd 0794497a1h
+dd 026114c0ch
+dd 03a22ee80h
+dd 02c0af5ddh
+dd 055639e57h
+dd 07144b6e4h
+dd 07969b969h
+dd 00ff3bdc5h
+dd 0471483b0h
+dd 0104206f6h
+dd 02aa02a6ch
+dd 0a73412f3h
+dd 07f1c2319h
+dd 05d8d74b4h
+dd 08b052a65h
+dd 075440873h
+dd 02a6894a9h
+dd 0863f85f4h
+dd 0865b48eah
+dd 0e6875b9eh
+dd 02d9464eeh
+dd 0a5dc508dh
+dd 0819a5cc3h
+dd 04fa8e809h
+dd 0ae376635h
+dd 0bb38baa6h
+dd 0954dddb7h
+dd 06d996e80h
+dd 014b25f59h
+dd 0912823dfh
+dd 0dbbb400bh
+dd 069aa5295h
+dd 04ad216f5h
+dd 03ceb137bh
+dd 074990a74h
+dd 0206b4420h
+dd 0292875ech
+dd 073bae8cfh
+dd 0e5bb4836h
+dd 0175e3684h
+dd 01d5c6c8fh
+dd 009b96d0dh
+dd 06e2ca086h
+dd 04fdc0cb5h
+dd 048f0f3cdh
+dd 09eb5af6ch
+dd 0b668ebeah
+dd 0c39481e9h
+dd 0e693c108h
+dd 0bac28886h
+dd 036255be2h
+dd 01680b24bh
+dd 0cc33765dh
+dd 0fe24cb3eh
+dd 0b3a83d7bh
+dd 0a28848e4h
+dd 042dbca65h
+dd 091e099e6h
+dd 050d70bc6h
+dd 0d8a1210ah
+dd 06163e1d2h
+dd 0e9d390eeh
+dd 0f51916aah
+dd 0f172448fh
+dd 000457b69h
+dd 08d6ef3d3h
+dd 0140b7510h
+dd 0142b8929h
+dd 01cba76a4h
+dd 0f17080c1h
+dd 0272b17ech
+dd 056c59fb0h
+dd 03eb8b122h
+dd 00c6e5341h
+dd 0d6aa8efch
+dd 0002cb3f9h
+dd 0f57275cch
+dd 04728d1f6h
+dd 0bb4e8f26h
+dd 0eff592cfh
+dd 0680f6ea5h
+dd 0bea4b7beh
+dd 03c099a39h
+dd 0855f3b86h
+dd 05710a9d6h
+dd 0309fa596h
+dd 06beb4892h
+dd 0ad14c3fbh
+dd 00cf78bc4h
+dd 04cc3830bh
+dd 0bb3122dfh
+dd 05b2c37bdh
+dd 046e061fbh
+dd 0c46c40dah
+dd 02efc979eh
+dd 0a441d2b3h
+dd 069b88dfeh
+dd 09da02301h
+dd 0a4c6d01ah
+dd 05c93325fh
+dd 08fc0ff04h
+dd 09992d5f2h
+dd 083ac05ebh
+dd 0a4d84836h
+dd 028fb8f35h
+dd 088c36249h
+dd 0170ca30ah
+dd 042ca807ch
+dd 06bd1c3f2h
+dd 0848d1098h
+dd 0a087b4afh
+dd 01a8a2d18h
+dd 00157b1deh
+dd 048863587h
+dd 089dc237eh
+dd 0def1c726h
+dd 08d1f7faah
+dd 0d49f7f0dh
+dd 0a1380d41h
+dd 05d69a242h
+dd 08214ebe4h
+dd 0926ce123h
+dd 0325488bdh
+dd 060d17367h
+dd 06e61956ch
+dd 0c62110f0h
+dd 06924307fh
+dd 00aeda6eah
+dd 0502b1fdch
+dd 0199c8162h
+dd 0b77a259ah
+dd 03a0f512dh
+dd 04420cda5h
+dd 05e0d05b6h
+dd 0f315c7cah
+dd 00668d1adh
+dd 09c6ca87eh
+dd 0951d7ec4h
+dd 09f8ff697h
+dd 05afb8efch
+dd 06f5ea10bh
+dd 07c489dc7h
+dd 04671fa35h
+dd 038b60bbch
+dd 02d7e56d8h
+dd 0ff244275h
+dd 085742e67h
+dd 0f854422bh
+dd 0117afdc4h
+dd 014d5b52bh
+dd 0660a82dbh
+dd 09c66086ch
+dd 01d7a2981h
+dd 0bb152993h
+dd 0179d1893h
+dd 0e9e761e5h
+dd 025f3251dh
+dd 072f1fb4ah
+dd 0a1464479h
+dd 03f8f790ah
+dd 00590651dh
+dd 022a8d394h
+dd 00e335dabh
+dd 079eda657h
+dd 0e47e4ff6h
+dd 04853d7bah
+dd 04a106ac5h
+dd 09bb75db2h
+dd 053a043abh
+dd 0eb345e80h
+dd 06e72c2c1h
+dd 0681a53c9h
+dd 070e6174ch
+dd 094c0715ch
+dd 06503fa51h
+dd 01c292b14h
+dd 034c4f1ech
+dd 0cf74f92eh
+dd 004da6ecch
+dd 0744073ebh
+dd 0fa0d2b85h
+dd 0f95f6504h
+dd 03e1ae6e9h
+dd 04d6d8647h
+dd 0d3fd0efbh
+dd 053d268abh
+dd 00b4c06bah
+dd 0d1f9f8bfh
+dd 0602e3c00h
+dd 04b4d6a19h
+dd 062ab0987h
+dd 036f4f407h
+dd 0cdaee90eh
+dd 0dbd50b48h
+dd 01f113ce1h
+dd 03375fdaah
+dd 052a3e6ebh
+dd 07c4ec2c8h
+dd 03d7115bch
+dd 013a44dafh
+dd 023e7ddd7h
+dd 07de12b11h
+dd 0c5f33949h
+dd 04ed4a991h
+dd 0b56ddcf4h
+dd 0310e2696h
+dd 00fa4752dh
+dd 025831c2eh
+dd 07a37a282h
+dd 0e29a8c2ch
+dd 04a8df7d6h
+dd 08bcd9ff1h
+dd 09ddf9db6h
+dd 05dd83d7dh
+dd 0051f7f27h
+dd 00c27bce8h
+dd 0bb449a6fh
+dd 05606e9f0h
+dd 03e20c615h
+dd 06f9a9e61h
+dd 02a03fae2h
+dd 081d037bbh
+dd 01645a51fh
+dd 0e94b6d1fh
+dd 0e8e4988fh
+dd 0db668edch
+dd 0d9c7e583h
+dd 0652b8305h
+dd 0777738cah
+dd 01cf07fa7h
+dd 08159a4a1h
+dd 03824ee56h
+dd 0f0cd037eh
+dd 0d7280068h
+dd 00f32c30eh
+dd 08527859eh
+dd 09b21a1abh
+dd 003b0e28eh
+dd 03abe62b9h
+dd 0cb46ea9ch
+dd 05232745ah
+dd 07e1701e3h
+dd 0661f9b6eh
+dd 00585bdd4h
+dd 0cb25c7fch
+dd 049a454cdh
+dd 09fbe9498h
+dd 0fc15132bh
+dd 07364cc5ch
+dd 04a8069edh
+dd 08058ac4ah
+dd 07cc0727fh
+dd 00c1adaddh
+dd 0a8d6f2d9h
+dd 0d2cef81bh
+dd 090ba80aeh
+dd 030a38692h
+dd 0e5aaacfch
+dd 05a82d544h
+dd 061598ae0h
+dd 0fdd6e743h
+dd 043016cb2h
+dd 091c26bb9h
+dd 01191f670h
+dd 04966395dh
+dd 0c6af5110h
+dd 0f912d357h
+dd 0837df077h
+dd 0684a1b08h
+dd 0a5423245h
+dd 0567994c0h
+dd 00c112c86h
+dd 0c6936d14h
+dd 0cef7449eh
+dd 035a2ae71h
+dd 0772dc9f2h
+dd 0b390178ch
+dd 0f3e28cc5h
+dd 0df49598eh
+dd 053b1db11h
+dd 0385e9032h
+dd 0f09cb9e6h
+dd 0d0f1fc8eh
+dd 0bea29822h
+dd 050976066h
+dd 082607db5h
+dd 042b50904h
+dd 0a120d3f9h
+dd 0b326b548h
+dd 00e86a49fh
+dd 038e7cb4ah
+dd 077fa143bh
+dd 06225aa2eh
+dd 00115ee1ch
+dd 0f1bfb075h
+dd 0eae00384h
+dd 02fb56644h
+dd 0a563e31ah
+dd 0097464cah
+dd 0460ed9deh
+dd 09db434beh
+dd 01eba8fa4h
+dd 0b0707236h
+dd 024bc5538h
+dd 090299d95h
+dd 03dee3790h
+dd 07fbef405h
+dd 01e297d42h
+dd 0ed2f3574h
+dd 0445f06a5h
+dd 001858d90h
+dd 0feaa46c9h
+dd 02babaa58h
+dd 0a74aa578h
+dd 0313e89ech
+dd 05b5cd643h
+dd 078fdbb1dh
+dd 0b26a04e0h
+dd 0867fe91eh
+dd 0c3c86272h
+dd 068eaa8bdh
+dd 0a527a0ech
+dd 071f9a3d3h
+dd 0e381e499h
+dd 04b472d7ah
+dd 003c4bc7eh
+dd 0309e143ah
+dd 01e276407h
+dd 0d3fbc437h
+dd 0a70ed10fh
+dd 00d9cd193h
+dd 0271bb55ah
+dd 03c936814h
+dd 0d497f289h
+dd 0c86b8b81h
+dd 0c5448827h
+dd 012b7f846h
+dd 0597d064fh
+dd 0c1aa4632h
+dd 0b952d811h
+dd 034b5cc13h
+dd 0a3efcb55h
+dd 01683927bh
+dd 0e6183492h
+dd 0a7a086deh
+dd 0d46475a3h
+dd 08611e654h
+dd 03dc4ffd3h
+dd 08363b800h
+dd 0fb0b72efh
+dd 035a4ce2fh
+dd 067214d30h
+dd 0988efbbbh
+dd 03e2583a1h
+dd 0c2ba656dh
+dd 04813924dh
+dd 07c22511ch
+dd 038c1d3f9h
+dd 0d48c5972h
+dd 002674279h
+dd 04a815a6ah
+dd 021f04f39h
+dd 00d795182h
+dd 0f9a37603h
+dd 0cedcc661h
+dd 0e47d5938h
+dd 00a7b1a2ah
+dd 06138a727h
+dd 02bdb0c0dh
+dd 0755255bfh
+dd 03388378dh
+dd 0d57b770eh
+dd 044520759h
+dd 0b2137348h
+dd 078cc6ae8h
+dd 04b0549c9h
+dd 01e8c9064h
+dd 0d3521f8fh
+dd 018c23deah
+dd 0bb2f1933h
+dd 004629b1fh
+dd 0f4c06d3ah
+dd 0843e3bfdh
+dd 0943bff33h
+dd 0d02428c6h
+dd 07e658e29h
+dd 093d25cddh
+dd 050fa28c9h
+dd 0cb89c1a6h
+dd 01bcd8274h
+dd 009137b7eh
+dd 0c51aae97h
+dd 0e4782233h
+dd 0ec2d6d73h
+dd 00b72f14eh
+dd 0032bda23h
+dd 07eaa0205h
+dd 08df17765h
+dd 0c3468c8bh
+dd 04b184581h
+dd 05de8bef1h
+dd 01c51081ch
+dd 0a4de1f83h
+dd 0b0b95605h
+dd 06d4f745eh
+dd 00b216672h
+dd 0ad11278eh
+dd 0084f811eh
+dd 07ac9ec09h
+dd 03cc48a5ch
+dd 0fb44b2c7h
+dd 00a2ad534h
+dd 0dfe7aee0h
+dd 0e52c205eh
+dd 0a43bfba7h
+dd 0286d7d8fh
+dd 0d8330d90h
+dd 0c1fbd548h
+dd 03e4f50c7h
+dd 0b1b822dch
+dd 0a959da28h
+dd 018e9e74ch
+dd 0eb5c0f13h
+dd 029e793d6h
+dd 0d953f72dh
+dd 0ec78a243h
+dd 0da8f1908h
+dd 0110d40bch
+dd 003618186h
+dd 087ea7e3ah
+dd 04f63bd0fh
+dd 076e56b75h
+dd 042dbdcaah
+dd 02fd26d0ah
+dd 0bd67af5bh
+dd 039c351f4h
+dd 067c8a4d9h
+dd 0f5a10937h
+dd 01da6a99bh
+dd 06930e2e6h
+dd 002272885h
+dd 0dc35f9efh
+dd 08c4e336ch
+dd 0d3f1f549h
+dd 0deaef863h
+dd 0beb79d2bh
+dd 0e656ba02h
+dd 0ea476245h
+dd 0e0a97b92h
+dd 06e2fa453h
+dd 03ae6a877h
+dd 0c6fa0055h
+dd 0af52fa87h
+dd 05d1b39e0h
+dd 0633714d2h
+dd 07bcff593h
+dd 0ad8c6404h
+dd 0e77daf02h
+dd 036be953ch
+dd 0f2d1ebdfh
+dd 027027e97h
+dd 0a9f11700h
+dd 01f2e5403h
+dd 089efca7ah
+dd 0380219ddh
+dd 060379cd3h
+dd 0196b2680h
+dd 0c0377728h
+dd 04dc5c0c8h
+dd 00bdd268ah
+dd 06fec1647h
+dd 0187e7e69h
+dd 0aa82cfa6h
+dd 0d9868e6eh
+dd 087664609h
+dd 09753db9eh
+dd 020c9438fh
+dd 0eb0f5e79h
+dd 0779ddd88h
+dd 022a0bc08h
+dd 0afe750ech
+dd 064006b30h
+dd 04ba5f34bh
+dd 0f9018582h
+dd 034ae7296h
+dd 0060fd5c9h
+dd 05941354eh
+dd 0ef7ae31bh
+dd 041ffc2c6h
+dd 054812ccfh
+dd 0a3bd5d72h
+dd 0eab8a1ceh
+dd 0d809b967h
+dd 0eb437d82h
+dd 030985b3ah
+dd 0077eab22h
+dd 09da88dc2h
+dd 00c8aa160h
+dd 07cf761c5h
+dd 021695a17h
+dd 0c65b89d6h
+dd 0c4ef7270h
+dd 07aa00cdeh
+dd 0eafc712ah
+dd 07a0eabf8h
+dd 06bb20bedh
+dd 07763d77dh
+dd 039eeb28ah
+dd 0edcf406bh
+dd 08e4de77dh
+dd 0854d70cdh
+dd 04f175ea3h
+dd 00f748132h
+dd 04263a9c3h
+dd 09b0f33fbh
+dd 0a4b065d7h
+dd 06715ccdfh
+dd 07ba3df26h
+dd 04518e868h
+dd 021f5a2d2h
+dd 0c9281fffh
+dd 020b45f37h
+dd 0c7edfbb4h
+dd 0a6e9fef7h
+dd 079689cc5h
+dd 0c07a2217h
+dd 0c8b25c7bh
+dd 0e3b58278h
+dd 00cf99406h
+dd 06e9b58dah
+dd 0780c9fb1h
+dd 0a872cbdbh
+dd 05e7b1fbch
+dd 0c126293dh
+dd 0a98c30ceh
+dd 0ec8248fah
+dd 041d79b1fh
+dd 0442631c0h
+dd 0b912ce24h
+dd 0bf39af5ch
+dd 021aada9bh
+dd 001d9b09ah
+dd 0044c0751h
+dd 0d098704bh
+dd 0b68c68aeh
+dd 04218ad94h
+dd 0a12005b6h
+dd 0587b8ae4h
+dd 0a79b67ebh
+dd 00e0c731eh
+dd 0b1246675h
+dd 0c72b1d24h
+dd 0e7521942h
+dd 024a7e6c5h
+dd 07684acd7h
+dd 0930250feh
+dd 0772222beh
+dd 07a05a374h
+dd 02c3f826ch
+dd 09e11f11fh
+dd 010fcc608h
+dd 073e8cf34h
+dd 0ba84270bh
+dd 0044e8b69h
+dd 0d91d0325h
+dd 0538653abh
+dd 07760bb16h
+dd 0e896f0c3h
+dd 0baeb811dh
+dd 0f1f02b74h
+dd 080b7d01eh
+dd 0c1c915cfh
+dd 096de1dbdh
+dd 0e7f2fa58h
+dd 0a4caf5a0h
+dd 0ecfd163ah
+dd 0018f9af9h
+dd 02127c072h
+dd 060feb728h
+dd 0f2b923f3h
+dd 03709c119h
+dd 055244dc2h
+dd 0f1a5d257h
+dd 0ab4723b4h
+dd 0193166b1h
+dd 09712e5bah
+dd 0a86f0fc2h
+dd 059f6004ah
+dd 0c46c7753h
+dd 0d453dd10h
+dd 012e6b513h
+dd 01f9f9087h
+dd 05f6a6135h
+dd 08191fb50h
+dd 09b9976c8h
+dd 03a3acf41h
+dd 04e0ccdabh
+dd 02bbf47efh
+dd 0d7e5240fh
+dd 0d3d1449eh
+dd 0e1a48338h
+dd 04e35d362h
+dd 0a7877d16h
+dd 02e328a14h
+dd 01d3ffa6eh
+dd 09e751ce9h
+dd 0e172f339h
+dd 0c30d5934h
+dd 0360d32f5h
+dd 0d263cb19h
+dd 0dab6f927h
+dd 0531c6a6fh
+dd 0ca6ab3d4h
+dd 0858ae05dh
+dd 0d5de9e0ah
+dd 0f74c05f1h
+dd 08ee91b3dh
+dd 0bf3ef3f8h
+dd 0d1ab324ah
+dd 0b61823dch
+dd 099158f45h
+dd 0c306485ch
+dd 065aba2afh
+dd 09ea201ebh
+dd 00e1bd817h
+dd 071f90300h
+dd 0a4519c4eh
+dd 0a554f619h
+dd 0a396980dh
+dd 0f2aa0789h
+dd 09c98ea68h
+dd 0f39be6c5h
+dd 0b54aa1d0h
+dd 01ad05a3ah
+dd 0b5764a0ah
+dd 09742299bh
+dd 0ba83e253h
+dd 0c0729455h
+dd 0c45865f6h
+dd 02c8f4ed0h
+dd 0ed002496h
+dd 04b675f76h
+dd 08c34ddc3h
+dd 0d6928b50h
+dd 0d1d6bb3eh
+dd 0a1ace0b2h
+dd 0e0e8a621h
+dd 0759a327eh
+dd 09ca0d140h
+dd 01b6d2da9h
+dd 0a64fd915h
+dd 06a67ab3bh
+dd 02272dc90h
+dd 0cf3c1bc9h
+dd 095317506h
+dd 017d8da47h
+dd 005d27d0eh
+dd 07999bfc7h
+dd 07937cc00h
+dd 069bf1eb5h
+dd 0810bc4e7h
+dd 04f19a1f5h
+dd 02c7363b7h
+dd 00fc66acbh
+dd 0fbfcf703h
+dd 00b8d0153h
+dd 0a90cb14ch
+dd 02179c515h
+dd 08599aed4h
+dd 06f3329beh
+dd 0aedb59c8h
+dd 0ab39d5d0h
+dd 0ffb0ce60h
+dd 0129c38eeh
+dd 0a9131d05h
+dd 08edcf49dh
+dd 031eebaa3h
+dd 07442cbf1h
+dd 07f810115h
+dd 0c06af6fah
+dd 07b57b491h
+dd 0a762d7b4h
+dd 0b2283e9bh
+dd 0964bebf3h
+dd 0155d24b7h
+dd 016f9c7f5h
+dd 0eb2a726ch
+dd 0f24955dah
+dd 07ccfead8h
+dd 0436b8ff9h
+dd 00040bb71h
+dd 0af305f8ah
+dd 0d5948d79h
+dd 0d49c43c5h
+dd 0580793d3h
+dd 05b24d971h
+dd 082be803ah
+dd 07fd358f1h
+dd 031bc8e91h
+dd 003b34511h
+dd 0c66a960ch
+dd 07498fbaah
+dd 02c5ff272h
+dd 0d5ba3161h
+dd 041df980dh
+dd 0bc5aac57h
+dd 026c466eeh
+dd 0b6f85aabh
+dd 023225d9ch
+dd 0a49b113eh
+dd 0e5e16e32h
+dd 0a7a50205h
+dd 0df045bc5h
+dd 01edabf8fh
+dd 06d98ac23h
+dd 0f42d8b33h
+dd 05bddf100h
+dd 0c7fd3201h
+dd 05553a861h
+dd 0299148e0h
+dd 03d6943d7h
+dd 0588cc336h
+dd 05664bd50h
+dd 06e2a8cb2h
+dd 09e7a573ah
+dd 0588502efh
+dd 06a508f31h
+dd 0bb201783h
+dd 009d1524ch
+dd 00f747c31h
+dd 071e6a444h
+dd 0426b76afh
+dd 044629d92h
+dd 04d0644e6h
+dd 053a9a85eh
+dd 06771d820h
+dd 0c6758750h
+dd 0846aba40h
+dd 0ed48ccd9h
+dd 010364300h
+dd 060d54e17h
+dd 0b24a9755h
+dd 0b833d6beh
+dd 0db5bb1e2h
+dd 04db4c568h
+dd 0de70427eh
+dd 0c58bca62h
+dd 05193ad93h
+dd 062360809h
+dd 0cf7d8ae9h
+dd 0e71748a5h
+dd 0a5680f32h
+dd 0ed70ec28h
+dd 0c1f04755h
+dd 01e00f95dh
+dd 0641290c7h
+dd 0d4debe9ah
+dd 03d964defh
+dd 0b877dba1h
+dd 05b4cb73ah
+dd 0ff5665a2h
+dd 0ce20d624h
+dd 0c9c3a6beh
+dd 02f283a7ch
+dd 08f940e8dh
+dd 033d84edeh
+dd 0198d8dc7h
+dd 025b985a5h
+dd 039c8390fh
+dd 0d8b754b5h
+dd 095f1cb04h
+dd 07cab2a27h
+dd 020d3d532h
+dd 0e9cf173dh
+dd 09d9d19a7h
+dd 0ca18c7a3h
+dd 0c055a24eh
+dd 0924aecf5h
+dd 03a0cd802h
+dd 06a676d0ch
+dd 05c1b3f5dh
+dd 08f706b12h
+dd 0d1490cefh
+dd 05b1cdc29h
+dd 095086ef3h
+dd 040d10aaah
+dd 0b4bac159h
+dd 00b221e6eh
+dd 099f58362h
+dd 0676bd53ch
+dd 0d3dd9c1ch
+dd 01d649e74h
+dd 079c1b914h
+dd 08040ab67h
+dd 0ae57a8d4h
+dd 06478d912h
+dd 0e29df8cah
+dd 0ea5a7afeh
+dd 0757ead81h
+dd 0534decc0h
+dd 0d8090006h
+dd 0f4bc5c00h
+dd 0a0a36b87h
+dd 0af94ff15h
+dd 091e62862h
+dd 034a72d6ah
+dd 0c23a09f3h
+dd 0a356ebcah
+dd 0ff1f95c5h
+dd 0dc5ca5b1h
+dd 0efb509c7h
+dd 08a6d7015h
+dd 0d6d7b627h
+dd 0e8b9cbc4h
+dd 0ceb205c7h
+dd 0ba6996c7h
+dd 0a2eae68ah
+dd 00022ba7ah
+dd 0738bfc97h
+dd 07a51d8c2h
+dd 0824e299ch
+dd 09e8d6fa3h
+dd 01fc9a910h
+dd 0cc21d3a5h
+dd 06b25570eh
+dd 045171dc9h
+dd 0fbcfa6c5h
+dd 07d20ce03h
+dd 08a4d98eah
+dd 042dca2f1h
+dd 0255b806fh
+dd 0f630b035h
+dd 0ebcd330dh
+dd 0db808228h
+dd 0a8889b14h
+dd 0cecc0526h
+dd 053f5ce78h
+dd 08db09974h
+dd 0c5d07592h
+dd 01ae0e846h
+dd 07672503ch
+dd 01f3430f6h
+dd 016edb4cch
+dd 0787da115h
+dd 02473abbah
+dd 08b85531bh
+dd 0bb799bebh
+dd 0972f45d7h
+dd 058db65cfh
+dd 0ef23ce3bh
+dd 01d3dcdd1h
+dd 0411f4130h
+dd 06f833316h
+dd 0bf62dfb2h
+dd 09b876963h
+dd 0f522c377h
+dd 05a01b9a4h
+dd 08cf396a9h
+dd 0f1c04881h
+dd 06eb59c7eh
+dd 06edafb2bh
+dd 0de5f4840h
+dd 0510d9b45h
+dd 00f48d508h
+dd 0de74168ah
+dd 069b4cb80h
+dd 006e1095ah
+dd 0c74b2a35h
+dd 07299a1b3h
+dd 0872968cfh
+dd 02ccea926h
+dd 0240c2264h
+dd 0f8185b34h
+dd 08b7836bbh
+dd 034279c1ah
+dd 0c314323ah
+dd 08553a1e5h
+dd 0e54d8625h
+dd 0be1db28ah
+dd 013d5b207h
+dd 09d4e1952h
+dd 0f14998b7h
+dd 09f15fc33h
+dd 062ed7230h
+dd 0e0abbaf5h
+dd 076b87755h
+dd 0c684f66eh
+dd 0c85eeff7h
+dd 0aa9ee6b8h
+dd 0def08025h
+dd 01baa38a5h
+dd 0f844ff9ah
+dd 0dda39781h
+dd 023f838a8h
+dd 081453a32h
+dd 0630df390h
+dd 0343a68fah
+dd 0ec865506h
+dd 090470b64h
+dd 06d542e90h
+dd 069847414h
+dd 02edc023ah
+dd 0f2482298h
+dd 016160406h
+dd 0f38c5cc9h
+dd 07074316fh
+dd 0581cc2fbh
+dd 04f835df5h
+dd 04d3fdaf4h
+dd 0c303a29fh
+dd 0da95c0bbh
+dd 0d075f995h
+dd 09a1369f5h
+dd 0f9db4e5bh
+dd 03b37830ah
+dd 051328b00h
+dd 0f8443592h
+dd 07a55e6d4h
+dd 047dc6777h
+dd 0fd9aa194h
+dd 03b798008h
+dd 0fbf598ddh
+dd 0d42a3ef8h
+dd 006551958h
+dd 09bad31bbh
+dd 0aed9c09ah
+dd 076ba55b2h
+dd 0e62a7d5dh
+dd 0937bd10dh
+dd 000f57d33h
+dd 04f365a80h
+dd 0eaa4b914h
+dd 02f25aeaah
+dd 03a04d2aah
+dd 0afddaaf3h
+dd 098699b32h
+dd 042670459h
+dd 0332e1f51h
+dd 026ec2921h
+dd 089b55348h
+dd 07888c69bh
+dd 0ed7dfa9ah
+dd 07f9b78a7h
+dd 06ad3ef90h
+dd 0895755fah
+dd 004326f90h
+dd 036e2e4ceh
+dd 0d62ffadfh
+dd 0c822fc7ch
+dd 05bddd538h
+dd 01781f66ch
+dd 0e2adae39h
+dd 035a847e6h
+dd 00209c66dh
+dd 08107b1deh
+dd 03d5fd6f2h
+dd 0832a5f80h
+dd 0ab6fab96h
+dd 03ad715eah
+dd 0b2e5898eh
+dd 0edda6ca9h
+dd 01dd98ebch
+dd 09d2fbb66h
+dd 020f1f143h
+dd 03d3b9fabh
+dd 0a84677d9h
+dd 08010406fh
+dd 038826a7ch
+dd 0d6d52e9dh
+dd 08c425f5ah
+dd 0d00ec0ffh
+dd 0c81968b5h
+dd 04f537ff7h
+dd 0c8be2899h
+dd 06091a1d4h
+dd 01684205ch
+dd 0b6d37342h
+dd 03ba79284h
+dd 08d4f786fh
+dd 094977b94h
+dd 0430e9aaah
+dd 06769aebah
+dd 0489e8c05h
+dd 07cd56c4eh
+dd 0a4251a00h
+dd 02fa48e6bh
+dd 002c4687ch
+dd 00f03340eh
+dd 0f92c892fh
+dd 005d24c74h
+dd 01d990195h
+dd 09d0854b0h
+dd 0b0b95621h
+dd 06749696eh
+dd 0dfc9ad63h
+dd 0edb5aaf5h
+dd 070734e9bh
+dd 0692de144h
+dd 019e1d582h
+dd 04026ccadh
+dd 0ba9d323ch
+dd 0e4c045d4h
+dd 08c36dcdbh
+dd 07074c05ch
+dd 020079801h
+dd 05a0c4b46h
+dd 0fc9ca858h
+dd 0d6f34cf0h
+dd 0f4adc642h
+dd 00a955571h
+dd 0c5ab007eh
+dd 09584e303h
+dd 0a329f5c7h
+dd 0c42ef820h
+dd 0262c60d6h
+dd 02359361eh
+dd 05ad32862h
+dd 07ad4fb31h
+dd 0b4ccfa17h
+dd 0caa5d4a5h
+dd 070604dfch
+dd 04ae7c676h
+dd 0543d856ch
+dd 09bd05c68h
+dd 030a5c401h
+dd 08a801848h
+dd 0f7289538h
+dd 0c7c64e92h
+dd 06c7690cbh
+dd 037b83b5fh
+dd 0d4ffa164h
+dd 0ec8242e4h
+dd 0c12a6e26h
+dd 08450ffc6h
+dd 0cf3214e5h
+dd 0a4f71aeeh
+dd 08b4eb315h
+dd 05a12ec45h
+dd 03aeeae92h
+dd 0f040b94ah
+dd 0e67cbe41h
+dd 0bfd2b13bh
+dd 07094f232h
+dd 0a1b71097h
+dd 03f40c4bch
+dd 01134a22ch
+dd 0a6db4c6fh
+dd 098501797h
+dd 0d22c37e6h
+dd 01a5c58ech
+dd 0e9a56217h
+dd 0a868b4a0h
+dd 073c906cfh
+dd 064164b0ch
+dd 0dc07c9ach
+dd 010bbfc20h
+dd 0c1a563b6h
+dd 08ef7f4c6h
+dd 0d115c1efh
+dd 02824a725h
+dd 02c63952eh
+dd 094eaa890h
+dd 032b80c3fh
+dd 0ac349f5dh
+dd 009698bb8h
+dd 006754727h
+dd 0c313a1f6h
+dd 000d75e1fh
+dd 06d286a9ch
+dd 04f78d8fah
+dd 0321eb3ebh
+dd 036a07e46h
+dd 06f7b00bdh
+dd 090237ae0h
+dd 060cba327h
+dd 0e900f464h
+dd 080680580h
+dd 009e5586ch
+dd 0949a53c3h
+dd 03ce5197bh
+dd 04c2e69aeh
+dd 0a6c5da3eh
+dd 064c8a40eh
+dd 059ae2773h
+dd 008dd1673h
+dd 07712afd6h
+dd 0908ca6f6h
+dd 0387b00a5h
+dd 01850347fh
+dd 0438b3171h
+dd 067b5722ch
+dd 0e37b8984h
+dd 0c3f8879dh
+dd 0961c332ch
+dd 087f97bb7h
+dd 08c60d8bdh
+dd 0ba2fa9fah
+dd 0d1d45a77h
+dd 0fcc37c58h
+dd 0a77596e1h
+dd 0371b1897h
+dd 09ebdbe37h
+dd 04f02d044h
+dd 0b504e369h
+dd 05590a3c3h
+dd 0b2249db3h
+dd 064f9faa8h
+dd 0dd95fd94h
+dd 027d7a3c6h
+dd 0dde04710h
+dd 0d48995bch
+dd 0a7324e82h
+dd 03fd963c0h
+dd 056c4cd4ah
+dd 08e1cfaf8h
+dd 026481b4ch
+dd 0c22e42e9h
+dd 01957e933h
+dd 0e8af1e65h
+dd 0ec7d3ae6h
+dd 0fe669282h
+dd 0a3519d1fh
+dd 03bd2f938h
+dd 04cfb47beh
+dd 04deafa4ch
+dd 073d240a7h
+dd 0749402aeh
+dd 036e00f05h
+dd 0d1e74db4h
+dd 03cc9a646h
+dd 08d38149ah
+dd 0c44155a4h
+dd 065087c28h
+dd 0c5a3d68fh
+dd 0911911c9h
+dd 0f8e650dch
+dd 0e3de9c77h
+dd 07048f507h
+dd 07bea7616h
+dd 02d56e0eeh
+dd 0082b86d2h
+dd 0a3c9e8fah
+dd 0588eb1aah
+dd 0e1ee069eh
+dd 02bc1409bh
+dd 044b73fd0h
+dd 09563bf8ch
+dd 0812970a3h
+dd 08622d2ffh
+dd 05b8c8c26h
+dd 0fbbb7c69h
+dd 089219a45h
+dd 09a03300fh
+dd 0d7bc61a8h
+dd 0b7243bdbh
+dd 0cbb087cah
+dd 04f3872e7h
+dd 0ba0ed430h
+dd 0d7a52f58h
+dd 0c48e0e42h
+dd 028671ba5h
+dd 0e3f4a5afh
+dd 02004803bh
+dd 0e65957b8h
+dd 008880bedh
+dd 0285af50ch
+dd 03f2e1a7fh
+dd 003fa1182h
+dd 060792bc7h
+dd 06c63e0b4h
+dd 01aea2511h
+dd 07b5f42dch
+dd 0660349e7h
+dd 0e607d72fh
+dd 019aae259h
+dd 0291e7510h
+dd 0a1da9581h
+dd 0ac785e2ah
+dd 083e6cdabh
+dd 0fd5e0dc8h
+dd 0d4259262h
+dd 0fdf1bc30h
+dd 0803e985dh
+dd 01b3b3ef3h
+dd 07ea473cbh
+dd 018a9ff25h
+dd 0ef96d60ch
+dd 0e39daac4h
+dd 04fb78c29h
+dd 0d31ba31bh
+dd 077eab18ah
+dd 0dbc67105h
+dd 0244d4ffeh
+dd 035700363h
+dd 08736e1c1h
+dd 06b68456ch
+dd 0225fc1b7h
+dd 07ca23d98h
+dd 04ec34266h
+dd 0168cd69eh
+dd 014799321h
+dd 0ebe8dfaah
+dd 0faea2a15h
+dd 0c1144024h
+dd 0eb6beb7fh
+dd 0583f29e6h
+dd 064cbb4a9h
+dd 04c523601h
+dd 04fc165f1h
+dd 0f7fa8afch
+dd 0a218a198h
+dd 0276da418h
+dd 092feca5bh
+dd 062384864h
+dd 06f45061ah
+dd 0fff11e5ch
+dd 0b356cb6ch
+dd 04efb494ch
+dd 0da9c8843h
+dd 0d957aa0ch
+dd 0ed6762d8h
+dd 0cf5368dch
+dd 09135a38bh
+dd 01f0625feh
+dd 0c169a489h
+dd 088de5b86h
+dd 08da8bbadh
+dd 03efdf295h
+dd 009ab812bh
+dd 04ec5b73dh
+dd 05b6ade4dh
+dd 02a8c7db1h
+dd 0214be04fh
+dd 00045548bh
+dd 0b45bb491h
+dd 0a3b8e081h
+dd 090fb0e05h
+dd 04817e8a3h
+dd 0acbf568bh
+dd 084c57db1h
+dd 057712701h
+dd 039a712dch
+dd 056cbcd3eh
+dd 0fcfa11f8h
+dd 0e4b2a84bh
+dd 0cbc3a103h
+dd 0b8c77727h
+dd 09b9becfbh
+dd 00e4aa327h
+dd 04a333d18h
+dd 05f353c15h
+dd 0b28e1036h
+dd 0732ef90ah
+dd 0dfdfdeach
+dd 08330e935h
+dd 0116e2cd9h
+dd 067ded6e8h
+dd 0924f5a7ah
+dd 053a9edd1h
+dd 0ae3a9865h
+dd 0fe5dcbc1h
+dd 06b8b3fbdh
+dd 0e45295f7h
+dd 078ff96ffh
+dd 0fc18151ah
+dd 064b4d666h
+dd 0059872d9h
+dd 05337b45dh
+dd 064a46ae8h
+dd 0f812befdh
+dd 03d38941eh
+dd 0c3466e58h
+dd 0c96d54e7h
+dd 0d68e1761h
+dd 0705eb774h
+dd 0574899a3h
+dd 06ebf73aeh
+dd 02655471bh
+dd 0456fdc78h
+dd 0e92c55cah
+dd 025fafeb9h
+dd 05f03e270h
+dd 008ca354ch
+dd 0722e324ch
+dd 05a465470h
+dd 03d89052ch
+dd 016d738c2h
+dd 02994cd3eh
+dd 006fb50c2h
+dd 0b1e223d1h
+dd 03359cb16h
+dd 062b84ac1h
+dd 03cc8fd25h
+dd 0acbf112eh
+dd 059b93a9dh
+dd 0daa20c0bh
+dd 0a24b9947h
+dd 0e97cfdd9h
+dd 07bdc4ac8h
+dd 011b50159h
+dd 075999b82h
+dd 0df3e07ech
+dd 050e78812h
+dd 084639571h
+dd 05bd51bbah
+dd 0ea98999bh
+dd 06164433fh
+dd 0b76f8a50h
+dd 01b3493a8h
+dd 0ef186e24h
+dd 0015b28ceh
+dd 0d9af63bch
+dd 0efc03e1ch
+dd 0ab83e82fh
+dd 0fd6f2f66h
+dd 05a259c5dh
+dd 0437aa626h
+dd 025b36dabh
+dd 08e11671bh
+dd 005747bddh
+dd 006b1bb1bh
+dd 0cc796aaeh
+dd 05a64bcc5h
+dd 07f72bec3h
+dd 0378bd816h
+dd 07a3aa057h
+dd 06628ad77h
+dd 0b5a33251h
+dd 0c6d6028ch
+dd 0853ddefah
+dd 069b6e1feh
+dd 0d44b98a9h
+dd 0558bf0c6h
+dd 0d30b6b02h
+dd 0fa6859a4h
+dd 0f93b527fh
+dd 05da7bd91h
+dd 079009eb4h
+dd 0d708bb0dh
+dd 06da5f5f7h
+dd 0f873798fh
+dd 01402d899h
+dd 05288fd12h
+dd 08afe9ee5h
+dd 0665695d0h
+dd 01665e8b6h
+dd 02dd4852dh
+dd 0786810d2h
+dd 02e7c007fh
+dd 05e5d97b9h
+dd 0933659b7h
+dd 0c8b42432h
+dd 0d9a8c927h
+dd 0f6908f2ah
+dd 070e912a6h
+dd 0718de148h
+dd 0a84d0276h
+dd 0c59aec68h
+dd 0e8b72b8ah
+dd 0ffff3ab0h
+dd 05713d85ah
+dd 0bd306fafh
+dd 01ffde527h
+dd 0e22a66eeh
+dd 0d9dd5876h
+dd 0a58e51b0h
+dd 091c522afh
+dd 0a2e86ed3h
+dd 0ed517e7ch
+dd 0ec106742h
+dd 009b076dch
+dd 08ec35824h
+dd 01737d9c8h
+dd 06982b53ah
+dd 089b66dfch
+dd 0dd62d4aah
+dd 0ef9d7ce1h
+dd 0e81facfeh
+dd 04ba9dcf6h
+dd 06c290bc2h
+dd 0583df367h
+dd 0083d77d4h
+dd 0d474180eh
+dd 0f5057113h
+dd 02a97fe9ch
+dd 02f8e07b6h
+dd 049909bb4h
+dd 06c9c8552h
+dd 0429cedb4h
+dd 020ac6876h
+dd 0cfdd147dh
+dd 09e8f8f25h
+dd 0c030a931h
+dd 00ac39449h
+dd 0d6666e8ch
+dd 0274c9c87h
+dd 0fe771b34h
+dd 0cfb9ed90h
+dd 04582ac7bh
+dd 0d1d8793ah
+dd 0a75e4e81h
+dd 067b6e469h
+dd 0be0f723ah
+dd 033973244h
+dd 0d59c4955h
+dd 024eebcf9h
+dd 0e535796dh
+dd 01f253584h
+dd 0e1a557d1h
+dd 0269681c0h
+dd 0c1387d43h
+dd 030f0eb0ch
+dd 09618bf63h
+dd 03899cf61h
+dd 01065b14bh
+dd 0fe391881h
+dd 0d943570eh
+dd 07ca138ceh
+dd 08bff4a80h
+dd 0e51f1279h
+dd 0c081b62eh
+dd 0cad368bbh
+dd 034235c9ah
+dd 0a431b835h
+dd 0c5d13205h
+dd 0ec2c6d51h
+dd 0c9e14c72h
+dd 0455a7f4bh
+dd 0623f8ab2h
+dd 0a9dfa0a6h
+dd 0f3270a0eh
+dd 08d5edafah
+dd 072c79a98h
+dd 049a47456h
+dd 094be51c2h
+dd 0478ae82fh
+dd 05912a516h
+dd 0d4bac32dh
+dd 04e056b30h
+dd 0b1df0d8dh
+dd 0760f9736h
+dd 073578d96h
+dd 04176133fh
+dd 0fc092f4fh
+dd 0b21f2d7eh
+dd 004c335e6h
+dd 0f6b5e4feh
+dd 03ed8487ch
+dd 0ea420666h
+dd 03597b70bh
+dd 02eb6b265h
+dd 022f35a7ch
+dd 031ac6e20h
+dd 0ab8b1a3ah
+dd 0b1d3bd98h
+dd 0958eb84bh
+dd 09d1e354ch
+dd 0c396204dh
+dd 0459417deh
+dd 0d877bb26h
+dd 0f5b42fadh
+dd 081a974e7h
+dd 0f7b03790h
+dd 080db669ah
+dd 0bbb8599ah
+dd 02f3aeb07h
+dd 05fa9ec16h
+dd 04496e8c5h
+dd 005c104feh
+dd 078f80bc7h
+dd 0ab67d932h
+dd 00a9c9ea7h
+dd 08436cdf1h
+dd 074e892a0h
+dd 0c1e9b7e1h
+dd 03a8b3055h
+dd 03d09212dh
+dd 0344686c1h
+dd 0be20d9b4h
+dd 00c3926a7h
+dd 0601751d1h
+dd 0c5242f5ah
+dd 0bf638306h
+dd 0606f415ah
+dd 0e5c5fc43h
+dd 07110bd2ah
+dd 053e65903h
+dd 0673cad51h
+dd 0b4384487h
+dd 02f459962h
+dd 04cfa8a4dh
+dd 0dc4d7cd7h
+dd 06bbcfc85h
+dd 0ca25e512h
+dd 006d249a3h
+dd 02f696b23h
+dd 09175901eh
+dd 0853b7772h
+dd 0ba744554h
+dd 0a58c4a0ch
+dd 08abba418h
+dd 04001d201h
+dd 0d78a3514h
+dd 02ddf8a07h
+dd 0a42c12a7h
+dd 0d40d37feh
+dd 08349d2d2h
+dd 0eaf04a48h
+dd 0dee64d00h
+dd 08adc9a48h
+dd 020d68213h
+dd 0725d61aah
+dd 0a8099b0ch
+dd 079001868h
+dd 0a80e9c97h
+dd 033f8cb3bh
+dd 0793dae47h
+dd 06033d2d7h
+dd 0745bab30h
+dd 0790b8effh
+dd 08e4f1b70h
+dd 06e97cc9eh
+dd 0d9151090h
+dd 0ac30692eh
+dd 09d37a70eh
+dd 01aab0baeh
+dd 0380df21bh
+dd 0350c5127h
+dd 0b57a52ffh
+dd 0a5638aabh
+dd 059981e4ch
+dd 0d5712352h
+dd 0d8675570h
+dd 05c7f9b79h
+dd 0a7745516h
+dd 0d257d602h
+dd 01883b940h
+dd 0756733beh
+dd 0e1447e56h
+dd 0427b42dch
+dd 0f585f935h
+dd 0c651f02ch
+dd 0d002d3b7h
+dd 004fcbf77h
+dd 06691eff2h
+dd 0bef72f22h
+dd 0f5cb5035h
+dd 09b368ba7h
+dd 00ee80e3dh
+dd 0889a835bh
+dd 04b363429h
+dd 0bf35c822h
+dd 0f15c478fh
+dd 0f6ce6de2h
+dd 01f25e2eah
+dd 03f5abaa3h
+dd 0f03013d5h
+dd 0301042c0h
+dd 01a1ddccfh
+dd 015e8b956h
+dd 048506239h
+dd 0659596abh
+dd 00a24bea9h
+dd 0469afdc8h
+dd 0093af6a3h
+dd 05dffe395h
+dd 04148d456h
+dd 0822ce25eh
+dd 0c0b1ec03h
+dd 04e9c52f2h
+dd 0a7f9e433h
+dd 08337956bh
+dd 0772b8f0bh
+dd 02e496f54h
+dd 0819c8c10h
+dd 0b3d7b8f1h
+dd 0fcfe0445h
+dd 0d89deb63h
+dd 07ff893f9h
+dd 0b0f3cd46h
+dd 0b17bac0dh
+dd 0aecfdbc8h
+dd 069e0225eh
+dd 0145b5ecbh
+dd 00283421dh
+dd 0046dd84ah
+dd 0822fba50h
+dd 0fb976d1eh
+dd 085d0bf0fh
+dd 05c708b76h
+dd 063511178h
+dd 0117f4590h
+dd 02b9bdda8h
+dd 0c608785fh
+dd 0b2eb962ch
+dd 0f80af6fbh
+dd 0462c06b1h
+dd 07f5032f8h
+dd 07839c9a1h
+dd 05908f285h
+dd 0ef378248h
+dd 042afa902h
+dd 046bfe657h
+dd 06d5561d4h
+dd 07048e7aeh
+dd 09ceb4d3dh
+dd 052aeebcbh
+dd 07f967066h
+dd 00a69ba28h
+dd 05af87919h
+dd 030eab02fh
+dd 0ad34ff34h
+dd 0426eeb3dh
+dd 0f679f89dh
+dd 004b761cfh
+dd 015609a3eh
+dd 00d0082e6h
+dd 004f4a368h
+dd 038a9a169h
+dd 0be8d5c6ah
+dd 07fb74742h
+dd 0306baea8h
+dd 0029e0172h
+dd 079be850ch
+dd 0ecd08426h
+dd 0c5a9b3dbh
+dd 0e40fc847h
+dd 0c0603e5ch
+dd 0503da3f9h
+dd 0ca9a246dh
+dd 061229ce5h
+dd 0173b72fah
+dd 0a6819a7bh
+dd 048fc01eah
+dd 0237816aeh
+dd 0ef2f76b6h
+dd 036093c04h
+dd 0bdd0fc5bh
+dd 0bc95f3c0h
+dd 0a0fc8243h
+dd 00ab06fc3h
+dd 00c73b8fbh
+dd 0f7b67146h
+dd 04e218a61h
+dd 0887ba996h
+dd 0642ab4d9h
+dd 0647d01b5h
+dd 0ce7b1681h
+dd 01684e035h
+dd 0165158eah
+dd 06ffbb1a5h
+dd 0818c6e6bh
+dd 0ff0b6baah
+dd 06ac3c7e7h
+dd 064e4ff1bh
+dd 097809296h
+dd 096559423h
+dd 0457503deh
+dd 0122c32a1h
+dd 0acb5cbd0h
+dd 014629a4bh
+dd 06de6f762h
+dd 0b3724cc2h
+dd 0f0816783h
+dd 0a873288bh
+dd 0fad7a0a6h
+dd 0b055f711h
+dd 05738c3cch
+dd 009f2fa02h
+dd 0cd0b33deh
+dd 01d3014b2h
+dd 0379e0bfah
+dd 0f464b20bh
+dd 01ae97645h
+dd 03c5df9cfh
+dd 08d530d49h
+dd 0ab9819afh
+dd 04d0370b4h
+dd 040912bb8h
+dd 02516c932h
+dd 06a7dd326h
+dd 086d95f14h
+dd 06fff43eeh
+dd 024b67ad5h
+dd 0d2f8870ch
+dd 0ad2551d3h
+dd 0c9a046e8h
+dd 0e74fe10dh
+dd 072cd6774h
+dd 02b654a32h
+dd 00515d5ddh
+dd 077698e31h
+dd 0217a0bb4h
+dd 04fa542ech
+dd 07ceb733eh
+dd 0ff9506f6h
+dd 0dcff64c8h
+dd 03d87dd24h
+dd 03f7d7d4eh
+dd 06f0aa8cbh
+dd 0a02d6fdeh
+dd 043c995adh
+dd 0d6f58ddah
+dd 0fc0ec13dh
+dd 061338da6h
+dd 076f997c2h
+dd 0cf9efa3dh
+dd 0cc705f4fh
+dd 07714e0ech
+dd 0a1e874b4h
+dd 07ca7260eh
+dd 0b3593f28h
+dd 03d1d2ba8h
+dd 09ee6a2d7h
+dd 038bbeaceh
+dd 0f0a210b4h
+dd 07f733fd0h
+dd 0241dc0c7h
+dd 09db8372dh
+dd 0c0c61b66h
+dd 01f412179h
+dd 03d1e8c83h
+dd 03edf09f4h
+dd 06eca0856h
+dd 0e1de303dh
+dd 08bbf0ed1h
+dd 0cc763ac0h
+dd 0f67c4aech
+dd 09f67efd3h
+dd 0e8c74259h
+dd 04d0c5957h
+dd 0956e0496h
+dd 0900b4797h
+dd 0faf94e8ch
+dd 021e3aa4bh
+dd 096b2d822h
+dd 021c6df07h
+dd 0beaa8f15h
+dd 044954a50h
+dd 0d81d5039h
+dd 0679527d1h
+dd 005970dabh
+dd 06f5a6ecfh
+dd 0d76ad3f2h
+dd 00cb20e4fh
+dd 0e11d7cabh
+dd 01cafa78ah
+dd 0a3ef1dfdh
+dd 08b99ec05h
+dd 0f7c82dc0h
+dd 01e4c3e80h
+dd 05b1773ach
+dd 062a63005h
+dd 008e34e10h
+dd 0a57e6436h
+dd 0a040bde1h
+dd 0450bb17fh
+dd 0049928a0h
+dd 0271e6370h
+dd 0994e90abh
+dd 096d39a60h
+dd 0cabf07bfh
+dd 08d713c4dh
+dd 0f6c7d6a4h
+dd 035f065a7h
+dd 00b298576h
+dd 01427f7b3h
+dd 0f11416a2h
+dd 0fec56b87h
+dd 0d4ca89e0h
+dd 0f42438edh
+dd 0d13e1211h
+dd 09c548e19h
+dd 0aa8fbc56h
+dd 09fb6e3e3h
+dd 09dddb009h
+dd 0c2fc9591h
+dd 0c20877f0h
+dd 02ccef4a4h
+dd 0f2fb9cd9h
+dd 0488d97cbh
+dd 072fb5ffeh
+dd 0a402db1ch
+dd 06a5eaed5h
+dd 01144c410h
+dd 03b14d04ch
+dd 0e51a0e01h
+dd 007e9cd34h
+dd 0b10027beh
+dd 0acc60612h
+dd 07e692c87h
+dd 08a9e663bh
+dd 07d35869ah
+dd 05694ec23h
+dd 0524a30d7h
+dd 083008fbeh
+dd 04038b9aah
+dd 067538436h
+dd 00bdf8fa3h
+dd 01b5f835fh
+dd 049e255f1h
+dd 096d3e331h
+dd 0e7176e77h
+dd 01c773943h
+dd 0dc646868h
+dd 0d87f25d4h
+dd 0dc0cb44bh
+dd 0939a7e5bh
+dd 0be9e7dd1h
+dd 0ae6d53a6h
+dd 0060585efh
+dd 03e4fccafh
+dd 07c3ddff0h
+dd 01ed63a63h
+dd 0e2a45c53h
+dd 088288b66h
+dd 08b05e4a1h
+dd 03ae8563eh
+dd 043d67797h
+dd 0bc2a3060h
+dd 084aa7c2ch
+dd 01f01b359h
+dd 07b80d659h
+dd 05e91493ch
+dd 048cdc8e1h
+dd 0ae421876h
+dd 0639f3203h
+dd 0deb87411h
+dd 096a6381dh
+dd 05601be30h
+dd 05cb3100dh
+dd 0f8c122b0h
+dd 0a114e7e7h
+dd 04db2c32eh
+dd 0e6fe78f4h
+dd 06214b44ah
+dd 06897247fh
+dd 0ca205f4dh
+dd 03933fafah
+dd 0d50f6c1eh
+dd 0a0297053h
+dd 081096b20h
+dd 0e6dd4152h
+dd 0c2490addh
+dd 031994d7dh
+dd 0de301357h
+dd 091cf5ce4h
+dd 00012e1b4h
+dd 0f16a1db8h
+dd 0e3134b3bh
+dd 0bd41bef9h
+dd 062d27cf8h
+dd 0006a6522h
+dd 0caea5dd9h
+dd 028346d06h
+dd 0c5327a09h
+dd 0ec4b8e3ch
+dd 098329dc1h
+dd 08c5c1cd8h
+dd 0607aba1ch
+dd 081fcd342h
+dd 06ee680a1h
+dd 04329b684h
+dd 0a2b0610fh
+dd 05a6c272dh
+dd 05c6a54a0h
+dd 0458b20aeh
+dd 06df299f1h
+dd 077777d5eh
+dd 0d53237ffh
+dd 09757c62dh
+dd 085acbd01h
+dd 0f3c740f1h
+dd 007654103h
+dd 0efaa9752h
+dd 00e30f814h
+dd 0fb3445adh
+dd 0c8af376ch
+dd 022a5a4c3h
+dd 013055f7ch
+dd 086574f9eh
+dd 04716e072h
+dd 05f5398edh
+dd 0ab712d6ch
+dd 092bae556h
+dd 0c5348005h
+dd 0d29d2b51h
+dd 04edd3828h
+dd 0b1f5f5b6h
+dd 00eafc184h
+dd 059630706h
+dd 02c4e4c54h
+dd 05c813e5ah
+dd 0c197a48ch
+dd 0cff09b3eh
+dd 0f6c65b84h
+dd 0495dc55eh
+dd 0bb7f3178h
+dd 00057a914h
+dd 066255c65h
+dd 0dd5e24f3h
+dd 0c53add89h
+dd 06adee043h
+dd 06adbae42h
+dd 07d8fa268h
+dd 03f2df259h
+dd 0075c94cbh
+dd 03242b00eh
+dd 0773b8429h
+dd 0553c7dbdh
+dd 09297c762h
+dd 0662c7d2dh
+dd 04b5409d2h
+dd 0f34c711fh
+dd 088f2c77dh
+dd 0f71e954eh
+dd 0dff91ae0h
+dd 09dd45030h
+dd 0f85e994dh
+dd 003a40b7fh
+dd 0cc05606bh
+dd 0691e3084h
+dd 05b09fd00h
+dd 015d117d8h
+dd 03a8149fch
+dd 01e5620b1h
+dd 0fcd8e428h
+dd 050850fc6h
+dd 07a2693c5h
+dd 07be13d39h
+dd 0982e8bfah
+dd 02626376dh
+dd 072fce177h
+dd 09c98fb1eh
+dd 0c7653713h
+dd 0bf5ccad1h
+dd 0cd9e1816h
+dd 0a3459d65h
+dd 0099ad76ch
+dd 0711de13dh
+dd 085c46280h
+dd 04eadf7c8h
+dd 0dc0e5352h
+dd 050b4098dh
+dd 0c24dcb6fh
+dd 01e257306h
+dd 0aa1b6d40h
+dd 05ae4c8a7h
+dd 0a1a92953h
+dd 0d026a39ch
+dd 0b6c79a3fh
+dd 04de08fd8h
+dd 0c4a2462dh
+dd 0542a1d11h
+dd 006be5553h
+dd 0ecfec811h
+dd 06088ca54h
+dd 079fdd722h
+dd 0c5d5802fh
+dd 06bd5b518h
+dd 0c261e28bh
+dd 0ea3fc9e7h
+dd 0d0ae3bcah
+dd 07ce54acch
+dd 05f2534b7h
+dd 0e90259e4h
+dd 0ff585be5h
+dd 0b63c0fa8h
+dd 02e9b437dh
+dd 0fb63ac02h
+dd 0cdfb11b3h
+dd 09ede9e6ah
+dd 0e2a133f9h
+dd 08c53e1f2h
+dd 061f99c1bh
+dd 07dccd638h
+dd 0bc5025f5h
+dd 094d99210h
+dd 0f17a3847h
+dd 010eb80c4h
+dd 0ca155e20h
+dd 003ffb7d0h
+dd 030fee6a2h
+dd 085dec80eh
+dd 011e67411h
+dd 02a985eech
+dd 0439d4dc4h
+dd 0205fadd1h
+dd 0b533fb72h
+dd 09f76a202h
+dd 0ec850bf4h
+dd 04b0ccc82h
+dd 03fefb211h
+dd 0dca04b0fh
+dd 0e7c87224h
+dd 0eb1ab143h
+dd 01953d1eeh
+dd 0f06a34adh
+dd 037ba2a3ah
+dd 06aac90b6h
+dd 031f37f2dh
+dd 012860a68h
+dd 0cfda8bd8h
+dd 0fcae0225h
+dd 011b994c3h
+dd 02935cb23h
+dd 0496c1e0fh
+dd 0d2b8cd9ah
+dd 0639f7594h
+dd 0f6194b37h
+dd 0a3e61105h
+dd 0558749d8h
+dd 02ab5a366h
+dd 0c6e7f7afh
+dd 01bff0b05h
+dd 041a13816h
+dd 0f5da922fh
+dd 0d620cac1h
+dd 0cf87860ah
+dd 0adad91ffh
+dd 07d2ec083h
+dd 06640fd93h
+dd 038f86949h
+dd 0115a731ch
+dd 058f45475h
+dd 0b4aefdd7h
+dd 0082714d3h
+dd 0cedfd7e3h
+dd 012794e8eh
+dd 035c61293h
+dd 01beea2dfh
+dd 06859f2bdh
+dd 0a8f17469h
+dd 098ed97e8h
+dd 0f3874f09h
+dd 008260c0ah
+dd 00ba0a9bdh
+dd 05c65aa4bh
+dd 00a8d7076h
+dd 0dc8265b3h
+dd 023137874h
+dd 090e7a6bah
+dd 046fbf394h
+dd 0868dcf29h
+dd 0e48d7dadh
+dd 0f9175cceh
+dd 0b8c4f046h
+dd 0a39959dfh
+dd 0044b1dbch
+dd 0755a6b74h
+dd 0864d2622h
+dd 0b9f40681h
+dd 070d74e7fh
+dd 0157433afh
+dd 0f5022755h
+dd 0d7a0c54fh
+dd 0fafdeea6h
+dd 0b3b99997h
+dd 03593dc85h
+dd 0003321a1h
+dd 04834b924h
+dd 0546d057bh
+dd 09989eff7h
+dd 0ef62246ah
+dd 05eaeb70fh
+dd 052eabe95h
+dd 0ad5c3134h
+dd 097f1e269h
+dd 0daedf27ch
+dd 0b75b166dh
+dd 000326822h
+dd 0f93732b0h
+dd 08580b2f0h
+dd 01b7b29b9h
+dd 02428a0d9h
+dd 008ccbbf1h
+dd 0dcd40045h
+dd 0162800d4h
+dd 077c247a5h
+dd 0dc94201eh
+dd 02c8c8a56h
+dd 05f71ccf6h
+dd 0b54e0100h
+dd 0abd05595h
+dd 0e6a4e77fh
+dd 01714f791h
+dd 0eca22161h
+dd 0e7dfbdffh
+dd 07eea1221h
+dd 04723dd1ch
+dd 077726107h
+dd 00eedae3fh
+dd 0410beaa0h
+dd 0c1b0d03dh
+dd 0356bd2a1h
+dd 042c86924h
+dd 0720d3fcbh
+dd 05e6d2e28h
+dd 0a34e5246h
+dd 0ade94d30h
+dd 00fcfd51ah
+dd 0445f93abh
+dd 01cda743fh
+dd 0847970ebh
+dd 0e4352f3bh
+dd 0b45cd737h
+dd 074617a7ch
+dd 07a92e223h
+dd 066c1c00ah
+dd 05a8daf4eh
+dd 05bcc74e4h
+dd 0eec1c68eh
+dd 0d0fe1f36h
+dd 07ddaf90bh
+dd 01c3a31beh
+dd 01bf022b8h
+dd 0d8dcb959h
+dd 0249a6222h
+dd 0c3adf677h
+dd 0a8ec528bh
+dd 0507fc48eh
+dd 0c563f495h
+dd 014da39a2h
+dd 0567d9743h
+dd 010008ef7h
+dd 04b65fc06h
+dd 0d13856e0h
+dd 0616db274h
+dd 02ae52d01h
+dd 0d0b0dc9eh
+dd 0d9e92706h
+dd 0ce76feebh
+dd 03a9206a3h
+dd 0af039130h
+dd 0200a18ffh
+dd 068b566a5h
+dd 02bcea34bh
+dd 04a74022eh
+dd 0c66e1328h
+dd 0c2106411h
+dd 0da333499h
+dd 0fcfda4f0h
+dd 06a7a2a89h
+dd 02e2f5bcah
+dd 000894168h
+dd 026971593h
+dd 016506219h
+dd 0f13ac9c7h
+dd 02bdb147eh
+dd 0cf1b136bh
+dd 00da0e74ch
+dd 0a1e68a04h
+dd 01322b0ceh
+dd 0ead5ab84h
+dd 0928b5559h
+dd 0e4905317h
+dd 09b8bd2c2h
+dd 018a995ceh
+dd 03c56b936h
+dd 01eaf3b26h
+dd 0940b1ec6h
+dd 047686cb4h
+dd 0321adcfbh
+dd 07c98ebb1h
+dd 0c57b1345h
+dd 09186841ch
+dd 09d2c8b3eh
+dd 02b6d3135h
+dd 034d80e4ah
+dd 051ac1d3ah
+dd 08d496028h
+dd 067efb1b9h
+dd 0d5f763ach
+dd 0bd2a18d2h
+dd 0a6618582h
+dd 060f7623dh
+dd 0e33e0506h
+dd 03fd62814h
+dd 01dfad3ach
+dd 01e0c1f41h
+dd 0ef9c131ah
+dd 0d0b05ed7h
+dd 0a843e2adh
+dd 08f51b3b6h
+dd 05310e81fh
+dd 03d51e84dh
+dd 01a79f863h
+dd 0ca8486eeh
+dd 08061318fh
+dd 0fa27a84ch
+dd 0ab5f5af8h
+dd 0ab3dc0cch
+dd 0a03db71eh
+dd 0bf1e93a6h
+dd 0475752f0h
+dd 0ee91906ch
+dd 02ae296eeh
+dd 003967798h
+dd 0dfd8a426h
+dd 0c6fb9039h
+dd 0c4105102h
+dd 00c07fb56h
+dd 032e437e4h
+dd 0333d9a60h
+dd 0d7377295h
+dd 03f42f9e9h
+dd 08ad4a72fh
+dd 074c9686eh
+dd 099d765d8h
+dd 033e4ffe8h
+dd 059b96e98h
+dd 05a1fc38dh
+dd 0b48498b3h
+dd 0c42ae3dfh
+dd 01a567b93h
+dd 0562e43f8h
+dd 07ed338fch
+dd 0aaecebc1h
+dd 03ff4a98ch
+dd 0eed2d39fh
+dd 08740a84bh
+dd 0543354cah
+dd 00b14d0e5h
+dd 0dd537df9h
+dd 02c65a342h
+dd 02bf20c2fh
+dd 0d01d126bh
+dd 0e1feba0bh
+dd 047f97b28h
+dd 0105b2f59h
+dd 0e0259c49h
+dd 07ec45f4bh
+dd 07e8e2faah
+dd 0a9c49936h
+dd 080d1f38bh
+dd 085e9073ch
+dd 0398d70bdh
+dd 04cfe02b2h
+dd 0c5b07c38h
+dd 05782f35dh
+dd 0fa47692ch
+dd 050a0b419h
+dd 00d40cee7h
+dd 076496b57h
+dd 066940ba8h
+dd 04e759d45h
+dd 00ae947c5h
+dd 0f344ea7eh
+dd 011c173ebh
+dd 01cb778b9h
+dd 07b37bfe3h
+dd 0cd1e4d30h
+dd 08068fe77h
+dd 09320ec6bh
+dd 06c085924h
+dd 0fe8e3c29h
+dd 0515b9219h
+dd 0ce97ad21h
+dd 0d5c354f4h
+dd 025ddbb93h
+dd 05e756839h
+dd 0789901cfh
+dd 0bfe71217h
+dd 0a1ecd0f0h
+dd 04b134489h
+dd 027175672h
+dd 0ff67eec0h
+dd 09448b3dfh
+dd 099cd7994h
+dd 0f70a37ach
+dd 0c3b6fab1h
+dd 09be31e44h
+dd 02b724a2ch
+dd 04f6bfe15h
+dd 023dea40bh
+dd 075d6b418h
+dd 04d0c8206h
+dd 07d09a3f9h
+dd 0cc945f6fh
+dd 049d60b93h
+dd 02d35d1bch
+dd 0fb05f32dh
+dd 01dbce425h
+dd 0dd45ea78h
+dd 079383aafh
+dd 0eb4c7504h
+dd 016b4e7bah
+dd 0098cd260h
+dd 0c33dc67bh
+dd 0ac31c992h
+dd 096926a10h
+dd 0cfd5ba67h
+dd 03144d575h
+dd 009fb7858h
+dd 0ca6288bch
+dd 0fff313bch
+dd 0717f698eh
+dd 0beac579eh
+dd 0093c436bh
+dd 0a13efdc6h
+dd 004a4f1e3h
+dd 0021acbech
+dd 0c0578bbch
+dd 030e0c9bdh
+dd 08b15274ch
+dd 050046fdeh
+dd 0050f47bbh
+dd 044b57c90h
+dd 001852217h
+dd 091e08e69h
+dd 0e7118918h
+dd 0b043b6aah
+dd 045a326bfh
+dd 02d70b803h
+dd 070e1ea77h
+dd 0e1f8355eh
+dd 0e640925dh
+dd 02cf74272h
+dd 08f29b3cbh
+dd 054e528f9h
+dd 08b8d1d09h
+dd 02f97a17ah
+dd 045d2543fh
+dd 0974245d9h
+dd 05aed43b0h
+dd 010661dcfh
+dd 0d389146eh
+dd 00dc88c7ah
+dd 067221780h
+dd 006bf90bbh
+dd 02e85e08eh
+dd 058c6c728h
+dd 0634f11aeh
+dd 0a2001332h
+dd 045c7f755h
+dd 0c460b084h
+dd 0ec60aa55h
+dd 0a583f0c6h
+dd 05e722cd0h
+dd 0f0de5b2dh
+dd 0ec10b3a6h
+dd 09fee9f01h
+dd 0a382c9dbh
+dd 06a3cf375h
+dd 0adeeea0eh
+dd 03fb2a897h
+dd 00d7ed122h
+dd 09f555672h
+dd 073ffb8c0h
+dd 0af50bbb9h
+dd 0e2130f94h
+dd 0289164a8h
+dd 01889bac1h
+dd 0c06083a4h
+dd 07f48d511h
+dd 0f1284f58h
+dd 0e797027bh
+dd 0c7a6f4ddh
+dd 0cc675baeh
+dd 0ac576c6ah
+dd 0ffe2a8a9h
+dd 090bf90c3h
+dd 07feaf1f6h
+dd 0538cb2c5h
+dd 037f6144dh
+dd 03e6f7575h
+dd 08a294cefh
+dd 03cd60a11h
+dd 05d18e96bh
+dd 0a7252ebfh
+dd 0688deefch
+dd 0bb4d3cabh
+dd 0caf002bfh
+dd 09718964fh
+dd 027442915h
+dd 0f0d4cef9h
+dd 0e02a71c6h
+dd 0f2832518h
+dd 06415bc8eh
+dd 0728f5ed6h
+dd 065f39293h
+dd 0c066b42dh
+dd 0cb4eb957h
+dd 011ec53c0h
+dd 0cf3ef0cdh
+dd 010bd32cbh
+dd 05d2793a7h
+dd 02ed7d512h
+dd 04da1c4cch
+dd 04b3c1625h
+dd 0edf44381h
+dd 0a49099f7h
+dd 0cf334ff1h
+dd 0acc482deh
+dd 08da44bdbh
+dd 0f855d320h
+dd 0e4ef4146h
+dd 07897b406h
+dd 0131ec9b3h
+dd 0281d72eah
+dd 056e498d1h
+dd 0df5a4c9ch
+dd 0cae1025ah
+dd 07a7fc93dh
+dd 00c0c2f4ah
+dd 09b43ab5fh
+dd 019e70771h
+dd 02aff548ch
+dd 0b0086f72h
+dd 04ffa94f5h
+dd 0cd838c76h
+dd 0ca4b76cch
+dd 0159955fdh
+dd 0719b53b7h
+dd 081afdd2eh
+dd 0885aad13h
+dd 0ea98f777h
+dd 075110679h
+dd 0119563a7h
+dd 002d630d4h
+dd 04d336657h
+dd 0f6e089b8h
+dd 07cf4f4b5h
+dd 08b092726h
+dd 07ff9a44ch
+dd 03efd4e23h
+dd 0d3641c4eh
+dd 009b9b655h
+dd 00211e941h
+dd 025171f00h
+dd 0012bd002h
+dd 0d367a0e9h
+dd 0a119790bh
+dd 0f9747f11h
+dd 098ec198dh
+dd 003ade575h
+dd 08aff8e67h
+dd 0df65cd46h
+dd 0eecbb2adh
+dd 01eec7620h
+dd 00d152d21h
+dd 0aa9c9aeah
+dd 023305c98h
+dd 0b7a115a8h
+dd 00bfdbea9h
+dd 08483dbd1h
+dd 000316b7fh
+dd 0a00d90f6h
+dd 0536e3e38h
+dd 0f5ac0870h
+dd 070cb31e8h
+dd 0dbb7822bh
+dd 0a91f0444h
+dd 088f56c82h
+dd 00e9205fch
+dd 02a063394h
+dd 012120fe2h
+dd 0f3a74057h
+dd 031ba39ech
+dd 0679cc411h
+dd 0d067a980h
+dd 0552391b0h
+dd 037d388edh
+dd 037058563h
+dd 071f6f3a5h
+dd 0ad43be42h
+dd 01b290799h
+dd 005fd3c85h
+dd 0d12ad933h
+dd 083478a5bh
+dd 04d949439h
+dd 0b181b7edh
+dd 0f9769891h
+dd 00dbc2412h
+dd 097efcc6dh
+dd 019debfd6h
+dd 0f5c0af88h
+dd 04389ebfbh
+dd 0c2747166h
+dd 0ef903477h
+dd 0f2ab7e1eh
+dd 04552c645h
+dd 06c63c706h
+dd 012dd65d9h
+dd 0a681bf9fh
+dd 058da9da6h
+dd 0e0439d7dh
+dd 07255e396h
+dd 0ddc03281h
+dd 0b4eadb4fh
+dd 0bf01eb12h
+dd 01624d5a9h
+dd 06aae5b1dh
+dd 0fbb53843h
+dd 07bc1a17bh
+dd 0e259fd9bh
+dd 06d925d66h
+dd 0f85e8391h
+dd 0f87632e3h
+dd 0795aef74h
+dd 0475f5d47h
+dd 02e24b504h
+dd 0aa47a510h
+dd 004b9c4d9h
+dd 0c850ebfah
+dd 09b5a3dabh
+dd 066226dadh
+dd 0e586e6d1h
+dd 0ff24c2f9h
+dd 090140f86h
+dd 0ea12d9a1h
+dd 005a046cch
+dd 0bc27a806h
+dd 0c6995fdch
+dd 03b5c11a4h
+dd 051bad897h
+dd 01a8f96fbh
+dd 076ae28e3h
+dd 0a2b0009ch
+dd 04d183985h
+dd 078155824h
+dd 08b7b7da9h
+dd 0a1bfe8c9h
+dd 094b4367bh
+dd 072d114c8h
+dd 0e6871160h
+dd 01e990d88h
+dd 0a207de1dh
+dd 093e5b409h
+dd 0ea1a5190h
+dd 016a20c11h
+dd 00eb8b85ah
+dd 08ea3ea9ah
+dd 00a3ffde9h
+dd 09f13d391h
+dd 020e89018h
+dd 0d5e6c493h
+dd 039a72ee6h
+dd 0f08e6197h
+dd 0fdcd6668h
+dd 04afc4e7ch
+dd 0b0f04929h
+dd 02a168dd8h
+dd 0ad6ede06h
+dd 021616f8eh
+dd 0f21f652bh
+dd 0453acc09h
+dd 091725a97h
+dd 054289b0ah
+dd 088a430c0h
+dd 0023802adh
+dd 059573b61h
+dd 03032a3cbh
+dd 09fb44ccbh
+dd 0b4efbc70h
+dd 0341e3ac2h
+dd 003bd1d79h
+dd 0c3296405h
+dd 01a2d93ach
+dd 0c5567f6bh
+dd 0568f8fe9h
+dd 0b07d230dh
+dd 0df7b01a8h
+dd 0d5636b4dh
+dd 02ae4b317h
+dd 030d8609dh
+dd 0e32931fdh
+dd 0b29f4972h
+dd 016818909h
+dd 030675d26h
+dd 05d946083h
+dd 0474ce528h
+dd 0c8b8d47dh
+dd 0b824999ah
+dd 0c88da754h
+dd 0ff14eb5ch
+dd 0c5fa77bfh
+dd 0c9351d7bh
+dd 0fdcb4262h
+dd 04a88b661h
+dd 07a10a349h
+dd 044ec7fdch
+dd 099ee4528h
+dd 038e933bdh
+dd 054e32872h
+dd 0d8daf6abh
+dd 02672c862h
+dd 09f6f2fe5h
+dd 09c0909e1h
+dd 0ba01f330h
+dd 0e10f16c7h
+dd 030a73470h
+dd 0f8cebdfdh
+dd 024191bach
+dd 0ee2f9f35h
+dd 0c9f1ab06h
+dd 057334dceh
+dd 0a3c14f10h
+dd 0b678a50bh
+dd 0ec9e8a11h
+dd 03a378621h
+dd 046856985h
+dd 04ec07652h
+dd 0d670b777h
+dd 02250a78bh
+dd 0dbe4ca15h
+dd 03c81352dh
+dd 0de718816h
+dd 0f24a7c36h
+dd 0fbfaf10ch
+dd 054b299f3h
+dd 0b2d58723h
+dd 09516b643h
+dd 0c9d342abh
+dd 0e039bf74h
+dd 0e3388ae5h
+dd 0bae5b673h
+dd 09ce8fabbh
+dd 0e7db1e00h
+dd 0d4a8b6bah
+dd 0c842fda4h
+dd 09c5e14cch
+dd 0b26e1c2bh
+dd 097d2f823h
+dd 089570232h
+dd 04db3bf44h
+dd 0efdab235h
+dd 0cf6c1c42h
+dd 01bd4d6d7h
+dd 001251527h
+dd 0452a270dh
+dd 087f4a179h
+dd 0f807c8d6h
+dd 0d7586f17h
+dd 041aa5642h
+dd 09a6b3eaah
+dd 08a5ee4bdh
+dd 0293ed457h
+dd 0ab457d9bh
+dd 002ef3b21h
+dd 020cc1366h
+dd 079b1b4d3h
+dd 0f686f964h
+dd 097ef5d83h
+dd 06b4df264h
+dd 0e282f0fbh
+dd 023462acbh
+dd 0cca28177h
+dd 0138e233ah
+dd 0f1249ce9h
+dd 04cb5cd26h
+dd 0ac95e299h
+dd 098030f23h
+dd 0c736555fh
+dd 03a41b6fch
+dd 0f9facf04h
+dd 0f1e4816ch
+dd 0782c2125h
+dd 03f811ac1h
+dd 0ecf968efh
+dd 0d599c046h
+dd 0e756f38fh
+dd 09cdbc45dh
+dd 077579640h
+dd 0bcb3ca60h
+dd 001eb5ecdh
+dd 022c6ef2ah
+dd 052cf3784h
+dd 0dc15207bh
+dd 05de8964dh
+dd 0f6f6c3f2h
+dd 0a4dac491h
+dd 0c43bc1e1h
+dd 08e4991f1h
+dd 051a2355ch
+dd 029abb7c9h
+dd 045dc3fech
+dd 0bf779237h
+dd 067f11280h
+dd 01127425fh
+dd 072b59cbfh
+dd 030c17d3eh
+dd 0da207c6dh
+dd 05b8d56d2h
+dd 024c90261h
+dd 04f02425eh
+dd 085b7d2ffh
+dd 0d5645b64h
+dd 01a697398h
+dd 0c5709581h
+dd 0c3b02b00h
+dd 093e18355h
+dd 0944e8f5fh
+dd 047dcdbc9h
+dd 0f27cfc46h
+dd 045b29ddeh
+dd 0b7889f18h
+dd 0cc193520h
+dd 05d978f10h
+dd 0a7b19044h
+dd 0921519d8h
+dd 0ac44dfa1h
+dd 085850a7ah
+dd 030024fe8h
+dd 0d67779bdh
+dd 097e971f4h
+dd 0cc7be859h
+dd 07919beabh
+dd 051acd874h
+dd 0510763f6h
+dd 0f65895b9h
+dd 027cb60fah
+dd 0de9c448fh
+dd 0f653d3fbh
+dd 0edb7ce82h
+dd 08a6d171ch
+dd 0ffc64034h
+dd 06ded51d2h
+dd 0027dbb59h
+dd 0ca74d7bah
+dd 0cdf990eah
+dd 0d9960073h
+dd 084746551h
+dd 07cf3ff88h
+dd 0271d1eadh
+dd 07400ac80h
+dd 0597db0eeh
+dd 0a2d08ae8h
+dd 0f47b1e39h
+dd 000836d95h
+dd 0c8f01ae7h
+dd 07fe0e0c2h
+dd 05356ea89h
+dd 04c707feah
+dd 081357875h
+dd 0ce17f62eh
+dd 0c554f6deh
+dd 0942217a9h
+dd 06c72d612h
+dd 081c1b3a2h
+dd 07456c7dbh
+dd 0cf494c38h
+dd 0d7b9b480h
+dd 05623ace7h
+dd 0d48dd0e1h
+dd 06d08ef2ah
+dd 04ba0b5fah
+dd 090aa9458h
+dd 0a16d47dch
+dd 09f9265cdh
+dd 02cc1ef74h
+dd 07a6e844ah
+dd 029dba47ch
+dd 0ffd0d87dh
+dd 0989531f5h
+dd 0735c9987h
+dd 0de6b3012h
+dd 0e677b597h
+dd 0fb566792h
+dd 0efd352edh
+dd 06427ff46h
+dd 063b6cfc6h
+dd 007b19d2ah
+dd 0e2323b60h
+dd 065f77bfch
+dd 06468bb2ah
+dd 0800f1b98h
+dd 0d80e188bh
+dd 0da315803h
+dd 08d5c2c58h
+dd 07f930a74h
+dd 03d9194d8h
+dd 0cb3b4c56h
+dd 0a97aefech
+dd 034d2b760h
+dd 0a6ccda26h
+dd 0c84f8ddeh
+dd 0113b0ff6h
+dd 01969bb67h
+dd 0596701abh
+dd 085de1f06h
+dd 09b132227h
+dd 0a9490208h
+dd 01e357924h
+dd 0116f2222h
+dd 0fdb71170h
+dd 0fd714264h
+dd 0acc72922h
+dd 007ace6aah
+dd 0cf77adf4h
+dd 047d222f6h
+dd 095dc55eeh
+dd 014e31b07h
+dd 0d0f69452h
+dd 0ae2d153ch
+dd 011098664h
+dd 01ebbbe5eh
+dd 037c93bb6h
+dd 0fd5f6390h
+dd 04d4a7322h
+dd 035335543h
+dd 081a7307fh
+dd 08a8b5b77h
+dd 084d64ddfh
+dd 061aa8395h
+dd 09174e8aah
+dd 0eb88e82bh
+dd 042c50916h
+dd 0bc91f5b2h
+dd 06c5d9abch
+dd 0b8c31354h
+dd 0ae10f430h
+dd 0a75e8498h
+dd 0453e0189h
+dd 0acd6873fh
+dd 06af78a0bh
+dd 0af64ab5dh
+dd 01876edf5h
+dd 0d9651e1bh
+dd 0c807104eh
+dd 060afa043h
+dd 004858222h
+dd 0450bacdch
+dd 0009ffed9h
+dd 090639218h
+dd 0ab0b7726h
+dd 00d50c68dh
+dd 0c1c79549h
+dd 07a6fda2bh
+dd 03b9c10a9h
+dd 00874ba6dh
+dd 0de9afd1fh
+dd 073a7c07ah
+dd 0954d38b5h
+dd 05e124cd8h
+dd 04ef51555h
+dd 0585a4bd1h
+dd 01178bca0h
+dd 02411c28ch
+dd 08cfe8528h
+dd 0764ad1a0h
+dd 0406793aeh
+dd 06116b472h
+dd 0a1b4c9cbh
+dd 0ae51c441h
+dd 08d7185dbh
+dd 0164f39d3h
+dd 0f250b159h
+dd 0bb357bd2h
+dd 0a227b644h
+dd 0f021271bh
+dd 0b01857fah
+dd 05b519be0h
+dd 061a5ee6dh
+dd 0e81ba86dh
+dd 03047f6c1h
+dd 092ee8bdch
+dd 0011f923bh
+dd 056df656fh
+dd 0baa49a8ah
+dd 05ca9e6f4h
+dd 0e6576d1ah
+dd 0c4829604h
+dd 055064869h
+dd 06a8d0e55h
+dd 07ce43ecfh
+dd 014d33e75h
+dd 07918b02ah
+dd 01445b2afh
+dd 086bff30fh
+dd 0a5684e26h
+dd 0b9377be1h
+dd 092ec90adh
+dd 04d5e2e8bh
+dd 057108e6fh
+dd 037e87ec0h
+dd 060f0c516h
+dd 00a43e86ch
+dd 0e72ff3fbh
+dd 037d03f85h
+dd 00e3319c1h
+dd 04f316d8eh
+dd 0d8bc56ffh
+dd 050420bc0h
+dd 00832cf3bh
+dd 036a791bfh
+dd 073c94d42h
+dd 00be8e91dh
+dd 0cf14da26h
+dd 064edf5c0h
+dd 0e7c412fch
+dd 05ca5b5dch
+dd 0d3ba3187h
+dd 0090e36d6h
+dd 008cd1eeeh
+dd 017624ee9h
+dd 03e7fc940h
+dd 0850821bfh
+dd 0474c4936h
+dd 030b242e5h
+dd 037551cb9h
+dd 01d556ee0h
+dd 073f52833h
+dd 06b33b5a4h
+dd 059cc5510h
+dd 0feb0e6ech
+dd 01e88318fh
+dd 0ee8e06f1h
+dd 014eed443h
+dd 079c58401h
+dd 0c1b84107h
+dd 0042a3fb0h
+dd 0d59e0f95h
+dd 0b6de24b9h
+dd 06fff02dah
+dd 001dfd7b3h
+dd 00adf386ch
+dd 012e809b2h
+dd 06b5966fbh
+dd 005d464e8h
+dd 0bb438881h
+dd 0399149b5h
+dd 02fd03b23h
+dd 0eb0ca627h
+dd 020f49b5fh
+dd 07dffa772h
+dd 0e5be4988h
+dd 0acd8f850h
+dd 0cd4289a9h
+dd 04aea2cb3h
+dd 0d339eb82h
+dd 0937d086dh
+dd 039038b55h
+dd 0faf17624h
+dd 0ab87d28ah
+dd 02c644656h
+dd 0abea9bebh
+dd 07dd5a079h
+dd 084838355h
+dd 00a3e8b6eh
+dd 0da10d046h
+dd 07f862d36h
+dd 053fc80adh
+dd 0fc8c373eh
+dd 048ed5398h
+dd 0cad9e6a1h
+dd 0facad0afh
+dd 05a9fbeach
+dd 0dffef607h
+dd 0446338f7h
+dd 0a32408d9h
+dd 05daf08dbh
+dd 0d1da1583h
+dd 017605810h
+dd 030facfa6h
+dd 0fd45fa9fh
+dd 07366a648h
+dd 0a3225934h
+dd 0d347db3dh
+dd 0453698dbh
+dd 0c0a85044h
+dd 069c45be7h
+dd 0d910e221h
+dd 012d3c8adh
+dd 036aa4585h
+dd 023a6895ah
+dd 0fe594a77h
+dd 0646abb08h
+dd 0c4359140h
+dd 08beec479h
+dd 0ddecdb9ch
+dd 0e05ffeddh
+dd 01106cb7ah
+dd 0976ad6dfh
+dd 0871d700fh
+dd 0ce891e39h
+dd 0c9cbe5abh
+dd 09cb11445h
+dd 054ee813fh
+dd 092ec2082h
+dd 088abed99h
+dd 086e01415h
+dd 0bf6f2e9bh
+dd 0bd00e339h
+dd 0ea3b4e53h
+dd 023605d2bh
+dd 064ba651ch
+dd 04525e50bh
+dd 0dda8c673h
+dd 0e874af03h
+dd 079f7fbc3h
+dd 09d6c8bf6h
+dd 04408db20h
+dd 09d362669h
+dd 0996db5adh
+dd 0a8ad8cc5h
+dd 0ea4a67e5h
+dd 0df88df37h
+dd 03d8fe318h
+dd 0c55adc5bh
+dd 04244b02ch
+dd 0ad789ee2h
+dd 0eb8c2224h
+dd 06427dbbdh
+dd 086da033ah
+dd 0e888d29ah
+dd 0971c35b3h
+dd 0218f17dah
+dd 0d5a5432eh
+dd 0ee914725h
+dd 025337f58h
+dd 072dc1289h
+dd 04b8cb50ah
+dd 0dcda5865h
+dd 0bab51f80h
+dd 05af84fe7h
+dd 087b553e7h
+dd 033e4a7f8h
+dd 0dbdbf5b4h
+dd 070f36ca8h
+dd 0e208de4ah
+dd 0dcdad8bdh
+dd 0d2ad5f4ch
+dd 0f2703dfch
+dd 03416b570h
+dd 0a61e5009h
+dd 01b0c6e63h
+dd 09ac707c7h
+dd 01fedcf27h
+dd 0a9bb18abh
+dd 0a78b2650h
+dd 01bb604f8h
+dd 09eea4b04h
+dd 00c893f7ah
+dd 09e9d77f6h
+dd 0102dcf74h
+dd 011791abah
+dd 0291ff03dh
+dd 01f2f1f37h
+dd 0cf3f7dafh
+dd 0e93b3945h
+dd 0d76231e3h
+dd 0cfe0ef22h
+dd 027c270b6h
+dd 0b5499c30h
+dd 0f1032a5bh
+dd 070966f5ch
+dd 07d4fe647h
+dd 0366633b7h
+dd 0bcbc8e60h
+dd 0dee8a5ebh
+dd 05c5bbb07h
+dd 0d9c8e1fch
+dd 0dfe9bc12h
+dd 0d662a9f6h
+dd 0c1668c89h
+dd 05847fd95h
+dd 079b1e8bfh
+dd 08c5b0247h
+dd 079d08fd9h
+dd 01477dea2h
+dd 0738032fch
+dd 0b4d73487h
+dd 0ea6f6343h
+dd 073d0f2c0h
+dd 01cd3372fh
+dd 086d52af0h
+dd 020679930h
+dd 0607025c5h
+dd 00c461705h
+dd 002c58852h
+dd 040eeb155h
+dd 07be2babah
+dd 04e9bd2d4h
+dd 086ac73dah
+dd 04c82842fh
+dd 0c5c9ccfeh
+dd 0772d1ca2h
+dd 043741c58h
+dd 0d8617dd9h
+dd 057befeedh
+dd 05b8438a5h
+dd 0a04649ebh
+dd 09eb2c198h
+dd 0fe0a3cc7h
+dd 0039111e1h
+dd 07dafd0fdh
+dd 0f8968e1ah
+dd 01c8cf820h
+dd 02d3aff38h
+dd 0d5bf55d6h
+dd 03a7869b1h
+dd 08cd296fbh
+dd 0c6f8585bh
+dd 031268385h
+dd 09621a416h
+dd 06ef6cb69h
+dd 0f39ba67ch
+dd 050549d65h
+dd 071214205h
+dd 0702d54d5h
+dd 0c600cc26h
+dd 0a881ea4ch
+dd 0106dbf04h
+dd 038511e0bh
+dd 0e85d2019h
+dd 0bf0b6969h
+dd 03c9ef716h
+dd 0a0b51892h
+dd 07c38fadfh
+dd 0b8494069h
+dd 0eb4599efh
+dd 050832d8fh
+dd 0394ffd02h
+dd 0343bec32h
+dd 06ee21ec5h
+dd 00e0baf2ch
+dd 0616d58d0h
+dd 0da208f0fh
+dd 094811580h
+dd 05695eb7eh
+dd 020aca3a0h
+dd 0d81508c2h
+dd 02c619861h
+dd 07b066a08h
+dd 015f6b17eh
+dd 0e1791a15h
+dd 0bb0b6934h
+dd 0ade93745h
+dd 0d87c30e5h
+dd 07876531ah
+dd 0ec368d0dh
+dd 0e17cb75dh
+dd 04a409f0eh
+dd 0f862b72eh
+dd 04252aec9h
+dd 04bbc1f1bh
+dd 0411e1e37h
+dd 021c97e96h
+dd 0c4a28838h
+dd 06bf2ffd5h
+dd 047c08e25h
+dd 075683a64h
+dd 06cec586fh
+dd 0d3304f91h
+dd 08db76424h
+dd 07a5def52h
+dd 0cc9e19b5h
+dd 041aff921h
+dd 0b4fe8f77h
+dd 0ab678666h
+dd 092f5ecabh
+dd 050264efah
+dd 0784ef56eh
+dd 0847e160ah
+dd 01762bbf3h
+dd 09d28116bh
+dd 0dff3a54dh
+dd 00beaa13fh
+dd 09423d2eah
+dd 0fe670c1dh
+dd 0ef15c21ch
+dd 0c323e21bh
+dd 042395a87h
+dd 06c336318h
+dd 0f852506ah
+dd 0a66a6e4ah
+dd 0a8422382h
+dd 07dd1ea12h
+dd 0f3592dc5h
+dd 0b95d7a6ah
+dd 051272b10h
+dd 0453630dah
+dd 099dc162dh
+dd 089e63229h
+dd 031be2fd6h
+dd 04d4bd367h
+dd 04fbd8ddah
+dd 0b8903345h
+dd 05d6b4abah
+dd 037d2e8dch
+dd 00e93b16bh
+dd 0c0eeedc4h
+dd 08489ac9fh
+dd 0f88ed52ah
+dd 0078dd97fh
+dd 075bc5af2h
+dd 0fa5a3211h
+dd 0699beb79h
+dd 0dbac97cdh
+dd 07a668f65h
+dd 0916f5b2eh
+dd 00519cfc4h
+dd 09659bc3dh
+dd 058796a7fh
+dd 06564502fh
+dd 0793bb4f9h
+dd 0c379b47eh
+dd 07d9f5372h
+dd 0377a6b4dh
+dd 05c49990ah
+dd 04e4bdbdbh
+dd 00cada312h
+dd 0809e6289h
+dd 02716dc78h
+dd 02ece89d3h
+dd 00cc1dbddh
+dd 0813ae566h
+dd 0690e3c4fh
+dd 04c1cbef3h
+dd 0148d2b29h
+dd 050d36396h
+dd 0022a06d4h
+dd 0a62be30dh
+dd 023ef74c4h
+dd 015a05be5h
+dd 001eede0bh
+dd 0a3f1e0ddh
+dd 083603d1ah
+dd 08f5356b4h
+dd 0ad577d4fh
+dd 0cd8a67e7h
+dd 02df170adh
+dd 0a4357001h
+dd 0290f21c5h
+dd 09a7be041h
+dd 012721bb8h
+dd 07020d728h
+dd 0e351b023h
+dd 07db80365h
+dd 0793e7861h
+dd 0276a586ch
+dd 0ea2e667bh
+dd 053acded2h
+dd 0a313eaf3h
+dd 092fdb9b8h
+dd 01f4e6503h
+dd 017bc8a98h
+dd 0cf72c6a5h
+dd 011581ee1h
+dd 0103b6a3bh
+dd 027ef8819h
+dd 0cfb0c134h
+dd 076b09339h
+dd 0233dbfbbh
+dd 0e184899eh
+dd 015be4bf5h
+dd 0bc5446edh
+dd 03c4f7385h
+dd 06e4c976ch
+dd 0dab22b1bh
+dd 012dc90f0h
+dd 09e8bdbb0h
+dd 01b8ba036h
+dd 0c01d09a6h
+dd 0b23a6c4fh
+dd 0ea1f461ah
+dd 0760e96f0h
+dd 06eb90188h
+dd 0bfc8a77ah
+dd 09d0eb372h
+dd 006584605h
+dd 0e3dd989bh
+dd 064752e73h
+dd 018eccad3h
+dd 0b760116fh
+dd 0f5f57a11h
+dd 02afde95ah
+dd 0da6f2e6eh
+dd 0a81fd99eh
+dd 0bada66bch
+dd 0df987da6h
+dd 017e611a6h
+dd 064e781c1h
+dd 0444d616fh
+dd 04d21e525h
+dd 0b33a1392h
+dd 023187928h
+dd 0173c68a3h
+dd 054256445h
+dd 0a61b07cch
+dd 0f7dc081fh
+dd 0d2068a6dh
+dd 0707c8276h
+dd 0e972f8cfh
+dd 018422f3fh
+dd 0c511a270h
+dd 0af28ea1bh
+dd 0468e1bb7h
+dd 0d0db9da6h
+dd 072278473h
+dd 0f03e9508h
+dd 0f4b5e34bh
+dd 097b156a3h
+dd 0b44ee5d0h
+dd 06a418308h
+dd 08340bcddh
+dd 030a6e024h
+dd 0a26bb4b4h
+dd 00bedf25dh
+dd 073e70530h
+dd 0c338f9c3h
+dd 0519951b6h
+dd 0b28e7abeh
+dd 0cea6ab1dh
+dd 06e02f147h
+dd 0ed7fcd14h
+dd 032f00100h
+dd 027bfc31ch
+dd 0e58129c5h
+dd 0586f01abh
+dd 07d11f8ddh
+dd 09877f445h
+dd 0b6e12695h
+dd 086eba164h
+dd 071c643dbh
+dd 02d07b4dbh
+dd 0eb4fde4ah
+dd 068e20950h
+dd 0e4e525c7h
+dd 0e2cbeddbh
+dd 0070a9e20h
+dd 025d84f82h
+dd 038d08959h
+dd 027d9dbaeh
+dd 0d37d001bh
+dd 0f796dd92h
+dd 0a9e80517h
+dd 01d09bef2h
+dd 00bd8ebedh
+dd 0fc1b92b9h
+dd 0d314364fh
+dd 0c80357ceh
+dd 0a89992ach
+dd 09b9679cfh
+dd 052b13eebh
+dd 08652f61fh
+dd 05431fa0bh
+dd 04b2e5e28h
+dd 0e3f783b1h
+dd 06372120ah
+dd 018d20da2h
+dd 0e2457ca5h
+dd 0fcd29477h
+dd 067435ea9h
+dd 05cf741f9h
+dd 064b03939h
+dd 0bad43e83h
+dd 0e765a7beh
+dd 08b80b8e1h
+dd 0772bf08ah
+dd 085b5997dh
+dd 0f325419eh
+dd 065a07530h
+dd 0fbfd3889h
+dd 060e0099bh
+dd 0d1a10947h
+dd 0773edddch
+dd 0d404a230h
+dd 0d235a0b9h
+dd 0c23a26b6h
+dd 0a233c623h
+dd 0f6a9ff72h
+dd 00b4ea394h
+dd 0d5579c20h
+dd 000f43c36h
+dd 0a1da244bh
+dd 008f2707ah
+dd 051aacf22h
+dd 0d8ae8cf3h
+dd 0acd1b1d6h
+dd 06dfd5881h
+dd 01095287ah
+dd 045bf5a8ch
+dd 0d32a757bh
+dd 0e37575cah
+dd 082590b48h
+dd 0050cb5cbh
+dd 05693ee32h
+dd 05c8ba578h
+dd 081dac1b8h
+dd 0f0a583edh
+dd 05af10449h
+dd 052d138dfh
+dd 0b59f3af8h
+dd 0030a6213h
+dd 0cde66214h
+dd 0eec77e5bh
+dd 0f4c983c2h
+dd 01e6afd5fh
+dd 076bfaddeh
+dd 0e3e04626h
+dd 0920c2e34h
+dd 0129876a1h
+dd 000a69447h
+dd 0197676d1h
+dd 0376b1a29h
+dd 0c649970ah
+dd 0ac177f3fh
+dd 017fc0014h
+dd 099b12052h
+dd 0104b4fc6h
+dd 03caf4fb8h
+dd 076b4a1d3h
+dd 08b99506dh
+dd 09bb98d2ch
+dd 0c055cb4eh
+dd 0a8b3831ch
+dd 060783e56h
+dd 04c2d9cddh
+dd 005a51af3h
+dd 0192d8ae4h
+dd 03ca0955eh
+dd 0d20dfe17h
+dd 0171e5323h
+dd 0f8b636b9h
+dd 01f0acea2h
+dd 05e73acc4h
+dd 03e49ad93h
+dd 0662a5f55h
+dd 0b67e6c56h
+dd 0bade512ah
+dd 069bc63deh
+dd 08de3154bh
+dd 0d1d317b2h
+dd 045c1776eh
+dd 04ea07e56h
+dd 0f0850f03h
+dd 065d8e1d0h
+dd 061e1907ah
+dd 00f109e7dh
+dd 0b1398b22h
+dd 003e5cf74h
+dd 0cda2a293h
+dd 03dc6b2bfh
+dd 0954cad47h
+dd 0a30277ffh
+dd 0f3f12d54h
+dd 0340c2a2eh
+dd 06f9621fdh
+dd 0a12bef51h
+dd 09fbcbadeh
+dd 02e00ac92h
+dd 0ecf272e4h
+dd 09d422e1ah
+dd 003b13a43h
+dd 06d4e8392h
+dd 044cc3f1eh
+dd 0d733cb36h
+dd 044982db7h
+dd 013bd0e01h
+dd 0d65c742ah
+dd 0ee7e426ch
+dd 0a1ea9358h
+dd 0dc3b64dch
+dd 0eb25ee2fh
+dd 00886be7dh
+dd 0a49819d3h
+dd 0a0a7c544h
+dd 0b12b2c01h
+dd 0a6937bfeh
+dd 0dad12eb8h
+dd 0dc97a803h
+dd 0c2ea7e69h
+dd 0a13e1ee9h
+dd 0a8d3a59ch
+dd 08b878cc5h
+dd 0e15a8f0eh
+dd 00c13a8afh
+dd 04e0bf247h
+dd 02054e24dh
+dd 0e1e419e5h
+dd 093f3fe66h
+dd 0302a0376h
+dd 02c14bcf2h
+dd 0aae2d734h
+dd 00f22f0abh
+dd 023c637abh
+dd 0cf7264fbh
+dd 00e0ee722h
+dd 0ad90ea4fh
+dd 0aca1b0f5h
+dd 0f41dc53fh
+dd 04e44a504h
+dd 04b49ec08h
+dd 02934ed56h
+dd 05ba49c65h
+dd 0a8159ee1h
+dd 0527c42bdh
+dd 00564a13ah
+dd 0929ba951h
+dd 08b40ebd4h
+dd 06112d794h
+dd 09dc2d6d2h
+dd 00fb38dcah
+dd 090885890h
+dd 08be5f523h
+dd 0be1f57b4h
+dd 0e702bf68h
+dd 04cd87bdch
+dd 00484d3f5h
+dd 00eba80c0h
+dd 0302ed4bdh
+dd 039890a7ch
+dd 059468590h
+dd 097493a25h
+dd 0b859568fh
+dd 0ac32055dh
+dd 05422236ch
+dd 0bec40da8h
+dd 04bfa3d85h
+dd 037b10823h
+dd 0964d6118h
+dd 0d4e13174h
+dd 00f2ab0e2h
+dd 0cf42b0bdh
+dd 05d688222h
+dd 0febbf144h
+dd 04c2eefafh
+dd 05fe2e01dh
+dd 0a663691dh
+dd 0c5fc537fh
+dd 04fca899dh
+dd 0901f46cbh
+dd 09a999f97h
+dd 0731e26c1h
+dd 00d5f1bd2h
+dd 01ac15ef2h
+dd 05a224acbh
+dd 0c5c115c2h
+dd 0b56da960h
+dd 08b28dd65h
+dd 07a44cda0h
+dd 0eb1bcf8dh
+dd 09bab9932h
+dd 04e1615f9h
+dd 021eb7eb5h
+dd 099a14cb8h
+dd 0cb2587bfh
+dd 0abd79f71h
+dd 0790a01beh
+dd 068d02167h
+dd 0063d844ah
+dd 0929a8a71h
+dd 08bd72c2fh
+dd 0110356abh
+dd 02e962abah
+dd 0aedc5182h
+dd 0521b3f01h
+dd 031e6a934h
+dd 04a4edca8h
+dd 0b8bde248h
+dd 0e81753cdh
+dd 036cf2c64h
+dd 02d11321ah
+dd 0aaf1fa93h
+dd 044e830b1h
+dd 0534738e0h
+dd 0e8315acah
+dd 0a558cf80h
+dd 03bf72637h
+dd 0c542a7d0h
+dd 0e007eb35h
+dd 05497af82h
+dd 01c0a655dh
+dd 0ab111dbeh
+dd 044593edfh
+dd 001256fc6h
+dd 038655a71h
+dd 013280e8dh
+dd 0e98f69c0h
+dd 063052954h
+dd 00d2d99efh
+dd 0915bcadeh
+dd 0ea927773h
+dd 0f2806a2ch
+dd 0f49194a4h
+dd 001690efah
+dd 0561d8ee4h
+dd 0acd03f7bh
+dd 0a1dde453h
+dd 0a5127d8fh
+dd 0c22e8f20h
+dd 04e4470dfh
+dd 02288655bh
+dd 07c0512f1h
+dd 0e0bbb752h
+dd 014e59694h
+dd 0c7d41de5h
+dd 0655026f1h
+dd 0694669cch
+dd 017150045h
+dd 08e105d53h
+dd 04ade6fd1h
+dd 0440f8acfh
+dd 0fc503611h
+dd 0bcdea107h
+dd 05a63d454h
+dd 027ab4281h
+dd 03a7d7e38h
+dd 0e4f331f1h
+dd 0d830b3a1h
+dd 0377d92f0h
+dd 0ebdd02e8h
+dd 0051d9526h
+dd 0fb9adca6h
+dd 008e482c2h
+dd 06a164de2h
+dd 0914fe9ffh
+dd 05f88de27h
+dd 0545268a1h
+dd 04eb10f83h
+dd 05a4fb383h
+dd 0d4db0713h
+dd 0bc1f1048h
+dd 0615e2491h
+dd 0fa3faa3fh
+dd 0c843a1a6h
+dd 0e2f503bfh
+dd 0e494c06eh
+dd 0e969636fh
+dd 0ba7c2384h
+dd 0ce6191c7h
+dd 08847e07dh
+dd 0cd3f2d7bh
+dd 05ed57e08h
+dd 04233eaadh
+dd 0bc29ea2bh
+dd 0dcc556f4h
+dd 010ac3a4dh
+dd 0dd6a8131h
+dd 0874eb4f0h
+dd 07fdcb757h
+dd 0e076f772h
+dd 05a7e6a37h
+dd 099b57f50h
+dd 0e1eaeee2h
+dd 078096ae4h
+dd 001dfdcb7h
+dd 058268f74h
+dd 0f19ba63bh
+dd 09c90685dh
+dd 0234ce5e6h
+dd 043ab417dh
+dd 093c7329ah
+dd 030da35f9h
+dd 0d87e97ffh
+dd 0ed64b1beh
+dd 05c71a121h
+dd 04049e360h
+dd 0fdb0457bh
+dd 0181bd5d1h
+dd 0d2f4ed23h
+dd 0215977e5h
+dd 015de5497h
+dd 0e3a1f0d2h
+dd 009b5962dh
+dd 0bf04b568h
+dd 0df930e6bh
+dd 0b69cda49h
+dd 078dd62fdh
+dd 074e00d0dh
+dd 008c85568h
+dd 00bb4545dh
+dd 0fccd2ec7h
+dd 0a759bf9bh
+dd 0c1661aedh
+dd 069e5be40h
+dd 0bced885ah
+dd 02aa5b44bh
+dd 0157a9cc4h
+dd 00e6e7e53h
+dd 04712c612h
+dd 046da2564h
+dd 0252d42a5h
+dd 0c2b4a383h
+dd 092b625cdh
+dd 0724dad36h
+dd 06f01d3edh
+dd 058181fa6h
+dd 04c349e60h
+dd 07600e833h
+dd 01d6a7177h
+dd 0dc589718h
+dd 0e9bd3fa7h
+dd 02fe3ff9fh
+dd 0461fd688h
+dd 0775d418ah
+dd 09e1bc1beh
+dd 0ca0718e4h
+dd 0f78768c0h
+dd 03fab217fh
+dd 08077aad5h
+dd 085cc996eh
+dd 0c852b6fah
+dd 04ef37cd6h
+dd 0729fbd98h
+dd 097e0ab51h
+dd 0bf9d9888h
+dd 0c6b733f1h
+dd 099b527aeh
+dd 0392cd11dh
+dd 058f1a313h
+dd 0fc7608a7h
+dd 0a3d735c7h
+dd 07193863ah
+dd 051b32defh
+dd 0f30a4bfah
+dd 0b7c05ef2h
+dd 0b3a37be0h
+dd 0eb04aba7h
+dd 0e28faa66h
+dd 0219afc60h
+dd 0d6c7c798h
+dd 0a30d3fd5h
+dd 0c58b7274h
+dd 06e3639e1h
+dd 05e48a0c7h
+dd 06d9b86abh
+dd 0e581707bh
+dd 0e82437b5h
+dd 082b764e2h
+dd 0a079a836h
+dd 0a58689cch
+dd 0f3e2c2dch
+dd 09b699346h
+dd 016d58b8dh
+dd 0631e1631h
+dd 0837c451ch
+dd 0bbbceab3h
+dd 0041e0878h
+dd 03e6034dah
+dd 04412552dh
+dd 07048a6fdh
+dd 0d395fba1h
+dd 078865830h
+dd 00d2de9bdh
+dd 0a1b1ccf1h
+dd 0394d79edh
+dd 08d5bdedbh
+dd 060ac56b3h
+dd 0fea347ceh
+dd 028d60a0ch
+dd 0f802355ah
+dd 0f9c09feeh
+dd 0eeda4454h
+dd 0d56995d9h
+dd 057a59bfch
+dd 0491e5efeh
+dd 0d26706e9h
+dd 097f9115eh
+dd 080c1d1aeh
+dd 05c5826e2h
+dd 01f0377a0h
+dd 0ccc22cbdh
+dd 0e9807abch
+dd 0f392ba59h
+dd 02211fe53h
+dd 0ecd03dffh
+dd 05f77c4e0h
+dd 029a8219fh
+dd 019178989h
+dd 07bc3f5d5h
+dd 04a0d2582h
+dd 0d39cc749h
+dd 00e2dfebdh
+dd 05585a621h
+dd 01c7ccb7bh
+dd 039f13e54h
+dd 04aa7051fh
+dd 03507278ah
+dd 015864626h
+dd 00b4e693bh
+dd 09995ac1dh
+dd 0c0b9db09h
+dd 0aabaa748h
+dd 02774c205h
+dd 0e79ad54dh
+dd 08718b84bh
+dd 07cde30a8h
+dd 037fdc849h
+dd 038e96baeh
+dd 0e22d2726h
+dd 0206c901fh
+dd 0dbc7cbe7h
+dd 02022711dh
+dd 026d09e2dh
+dd 03f4e6661h
+dd 02f167d55h
+dd 02a7a1ca2h
+dd 02faa3f0eh
+dd 09984a0d0h
+dd 072d9bc15h
+dd 0994b26f1h
+dd 055ef06a8h
+dd 06e18e83eh
+dd 00354a39ah
+dd 03ef0c7abh
+dd 0612b0a7ah
+dd 0900c7a79h
+dd 0def7b832h
+dd 0e64a7f8bh
+dd 0365d059ch
+dd 0d7d4a426h
+dd 0d8421793h
+dd 0f42594b7h
+dd 01c52780ah
+dd 0d6d4b28bh
+dd 04b403ae3h
+dd 02e7a8ac1h
+dd 0137b09f0h
+dd 0f4e4ea43h
+dd 08b226c4bh
+dd 040b59117h
+dd 0f0cedcbeh
+dd 0420c79d4h
+dd 0cb2eb96ch
+dd 05c2777c6h
+dd 03060b71dh
+dd 0309ee4e7h
+dd 0045e146dh
+dd 042d64fcbh
+dd 06f26fea6h
+dd 0bfd6193ah
+dd 00043004ah
+dd 0dc64f2e8h
+dd 0b40869f2h
+dd 007fa19dch
+dd 0fedee0c5h
+dd 0d16d0a33h
+dd 074934993h
+dd 0b0956c3dh
+dd 01f8c54f2h
+dd 09ae53147h
+dd 0abcabf74h
+dd 0beed0010h
+dd 094800949h
+dd 09b8b97fah
+dd 031d0f99dh
+dd 040f6e7bch
+dd 0196904fbh
+dd 053461707h
+dd 0e118cc3fh
+dd 068d8d985h
+dd 084f2b42ah
+dd 0a7cd782eh
+dd 0ea78277ah
+dd 0624c7052h
+dd 08b0b28cbh
+dd 0c3d34254h
+dd 0a9c6b5b4h
+dd 014dd6c27h
+dd 08c8e1b69h
+dd 09faa90f2h
+dd 08b90c4f3h
+dd 075a6fba6h
+dd 0cfab8df8h
+dd 06d2412a6h
+dd 054cb8323h
+dd 00630329bh
+dd 0d95dc57bh
+dd 0f02fef69h
+dd 06b0ec246h
+dd 0f2c92cf1h
+dd 0b440ed03h
+dd 0a614e7cdh
+dd 0f0d1b3a7h
+dd 00a0e460dh
+dd 0d496a098h
+dd 00087552ch
+dd 031b2db2eh
+dd 06e548c96h
+dd 0349abff7h
+dd 0540c7441h
+dd 07d31fe1ch
+dd 0c775d765h
+dd 0aeb9561ah
+dd 0c58926edh
+dd 0faa66972h
+dd 0673346e4h
+dd 0ec7e3323h
+dd 0550e1873h
+dd 0d83aaf67h
+dd 05909b225h
+dd 0e3ef6d41h
+dd 083bb4875h
+dd 042d5d9a2h
+dd 00ea4657eh
+dd 08e6518ddh
+dd 01f45a176h
+dd 0477110adh
+dd 0ac6fc9a3h
+dd 06b1207adh
+dd 0ea2203b3h
+dd 01c6c3aceh
+dd 0a0cda8b6h
+dd 0f5ec0a4ah
+dd 07ec75863h
+dd 0a70a9c5dh
+dd 07d7e2369h
+dd 030126f00h
+dd 03ef65111h
+dd 00aa441b6h
+dd 0359c1973h
+dd 06063745bh
+dd 016b04f71h
+dd 07d41a538h
+dd 002d2d277h
+dd 096c4c58fh
+dd 0a4a921b0h
+dd 08dd30e72h
+dd 05b7ef87eh
+dd 060fd1202h
+dd 0886fce41h
+dd 0854271c6h
+dd 0238933cch
+dd 0c0858628h
+dd 01ede2990h
+dd 01773eaedh
+dd 0765b40e8h
+dd 0a79a1e6eh
+dd 0387a80f4h
+dd 05c7e7d3bh
+dd 06e682159h
+dd 0dc1c27e1h
+dd 0572073b8h
+dd 099f79aeeh
+dd 0a934eb2ah
+dd 0831996bdh
+dd 04b26b425h
+dd 0b4ffd68eh
+dd 0b63e94dch
+dd 0823a0b48h
+dd 047a3a0a0h
+dd 00a0737a9h
+dd 0fa4b4e0fh
+dd 02d18fb0bh
+dd 0b0003d25h
+dd 0b52681d8h
+dd 07599e114h
+dd 06ee977e8h
+dd 00985287fh
+dd 0e4cd2273h
+dd 0a9c46ef8h
+dd 04083caabh
+dd 0f5d290b0h
+dd 0ee54d81fh
+dd 08ff1e918h
+dd 0252a20f9h
+dd 047288501h
+dd 0c7046dc1h
+dd 0b8f2c315h
+dd 0fca028dfh
+dd 070a52cefh
+dd 049e7d10eh
+dd 094935040h
+dd 0df9f72b8h
+dd 0ef27caabh
+dd 030a26cf6h
+dd 0439f2b9dh
+dd 02ad1a5c6h
+dd 0c686279ch
+dd 0556de33dh
+dd 0dde932f5h
+dd 0ccd7e771h
+dd 00e1ec764h
+dd 00eaa0968h
+dd 05e643effh
+dd 0c768fb1fh
+dd 0cd3d4148h
+dd 0d02fe1d1h
+dd 03f8e7c1bh
+dd 054a4404dh
+dd 08399404fh
+dd 09d894b69h
+dd 0f9a7b4e5h
+dd 0c471d8afh
+dd 0b8779f93h
+dd 05905fd87h
+dd 0e97d9e73h
+dd 0ae10e8ebh
+dd 0827a24aah
+dd 012448c14h
+dd 0edd0aed9h
+dd 0d5912de6h
+dd 0454897b4h
+dd 0aa2fcc5bh
+dd 0f475a743h
+dd 07e2fd10ch
+dd 0faddff9ah
+dd 013616ed6h
+dd 0d5ecd4f3h
+dd 00c112eb2h
+dd 09231f74fh
+dd 05352e30ch
+dd 0378c0f28h
+dd 054484e90h
+dd 0dee5b4aah
+dd 01259e69eh
+dd 057418a2fh
+dd 036fd53a5h
+dd 0c8247e6dh
+dd 08bcee438h
+dd 0394a75ceh
+dd 00ae2f986h
+dd 0a14c409dh
+dd 08905b92ah
+dd 0cbf7a4c8h
+dd 05a7317ach
+dd 0b4c06c22h
+dd 0974680f9h
+dd 09f87f7b8h
+dd 0f7d42d6ah
+dd 09e87a8aeh
+dd 05f3c1320h
+dd 0183a1731h
+dd 096ea4582h
+dd 0ebdc5a82h
+dd 09095d85fh
+dd 0fe8de46eh
+dd 0c96215cdh
+dd 0e7479772h
+dd 019397816h
+dd 05a127775h
+dd 06f21db49h
+dd 0bac80d1dh
+dd 03eb6cbfeh
+dd 064e16439h
+dd 0815513bah
+dd 043e17a7eh
+dd 005f25511h
+dd 067f426cfh
+dd 050370f07h
+dd 0b3ac8637h
+dd 01162552eh
+dd 0e4eee01bh
+dd 02022f39eh
+dd 0cf0f6fc7h
+dd 0c288eb49h
+dd 0b51ef45bh
+dd 02d455260h
+dd 0caec2856h
+dd 01b6e4565h
+dd 0c52672dch
+dd 074a86e89h
+dd 09ca38d17h
+dd 0d45de44eh
+dd 01a3e0125h
+dd 0d94f4497h
+dd 0e1aae15fh
+dd 09618e69ch
+dd 06028676fh
+dd 016e47933h
+dd 0a516dceeh
+dd 0e43759a3h
+dd 09e31684ch
+dd 07a5989c5h
+dd 0f4902b7ch
+dd 05b456be2h
+dd 0763b4d6eh
+dd 0c2b678c7h
+dd 03ec3f385h
+dd 0a0f96e0fh
+dd 07da78522h
+dd 0fae72db0h
+dd 06a7a2733h
+dd 08a32b9e5h
+dd 0ffbe85cah
+dd 02ef3f4abh
+dd 00a3678c0h
+dd 0fb604c11h
+dd 039b3be99h
+dd 0cd6d9c23h
+dd 0a38afcfeh
+dd 0b4cfd17bh
+dd 095959befh
+dd 0cc2c3f97h
+dd 0c17cab01h
+dd 0dc98b01ah
+dd 0ee070d15h
+dd 08fc75bfah
+dd 0a39ff4e1h
+dd 01f5743f4h
+dd 0f1398589h
+dd 01f0064d4h
+dd 0a6ab3279h
+dd 051e131e2h
+dd 060869d34h
+dd 03f614e83h
+dd 0113038d7h
+dd 0ececc0afh
+dd 0dcc64231h
+dd 02d3e2f7fh
+dd 06cdbeeadh
+dd 0afc9a65fh
+dd 04d65abe2h
+dd 0f08a913bh
+dd 0f7a9c7c3h
+dd 063d4574eh
+dd 0a28a3481h
+dd 0282ba4a9h
+dd 008f54b79h
+dd 02169d677h
+dd 0116970a3h
+dd 0d90c17beh
+dd 0d70c2593h
+dd 06f6f9d31h
+dd 026a28cbdh
+dd 0fcdab45fh
+dd 00ef24765h
+dd 069445e59h
+dd 0c9022e5eh
+dd 03356a10fh
+dd 02b3c2a20h
+dd 018327e0fh
+dd 0bd56c94ah
+dd 0f3ff1a3dh
+dd 0e67c54ach
+dd 0e6164cd9h
+dd 0d8fb54cfh
+dd 03ec35733h
+dd 0b3bc4c24h
+dd 00be42340h
+dd 0fac4eed0h
+dd 0ba8f4fffh
+dd 07739f5beh
+dd 044550670h
+dd 099268c0dh
+dd 058025812h
+dd 052774d81h
+dd 083fc697ch
+dd 071cc578fh
+dd 0f829bbeeh
+dd 074e5b263h
+dd 0735a7ad7h
+dd 091bbedc1h
+dd 06e85d002h
+dd 0a5f3634bh
+dd 025b433b6h
+dd 060ea9acah
+dd 04eb79443h
+dd 0418d3116h
+dd 079f85e9dh
+dd 02a37719ah
+dd 04a811914h
+dd 0d839f985h
+dd 0d54f417eh
+dd 010e35753h
+dd 067ece998h
+dd 08f18f0b8h
+dd 0fa321e84h
+dd 03fd6a890h
+dd 0b3971b89h
+dd 01e8b0f66h
+dd 023c363ddh
+dd 0355afd63h
+dd 030d83219h
+dd 05dff69b4h
+dd 00aa6f147h
+dd 017b49ed2h
+dd 013a52f9ch
+dd 002c3c219h
+dd 0f8513eaeh
+dd 059b692feh
+dd 090845d73h
+dd 0ebf5f58eh
+dd 09ab3fbb2h
+dd 067a27ea1h
+dd 0360b6ba0h
+dd 079890937h
+dd 0420672ech
+dd 01b8906bbh
+dd 0dd5cbabfh
+dd 0266bcde4h
+dd 0635d8237h
+dd 0ce6b9e8fh
+dd 08d2eec35h
+dd 00d9893a6h
+dd 0012e211ch
+dd 068a4f78bh
+dd 0dbf5c79eh
+dd 0b99921d6h
+dd 07016923ch
+dd 02f89f124h
+dd 01fcc3493h
+dd 0deb3cc89h
+dd 010959de1h
+dd 0bf82b871h
+dd 07aaed0d9h
+dd 0a0ea649ch
+dd 065812fcch
+dd 07336f5ceh
+dd 0c367b207h
+dd 03d394f2dh
+dd 08c7bc945h
+dd 0f727fbb0h
+dd 038449fe1h
+dd 060370ff7h
+dd 0298c6216h
+dd 0db0a8074h
+dd 02550ddb2h
+dd 0036e071ch
+dd 091e90f5bh
+dd 00a88569bh
+dd 0c2fcb54ah
+dd 04ce84f96h
+dd 05dcc21a3h
+dd 087123258h
+dd 0c32250b2h
+dd 0a5226af9h
+dd 05c4182ech
+dd 05c5887e7h
+dd 0400a5f55h
+dd 04b9c0175h
+dd 04972e684h
+dd 06cce6a13h
+dd 0c4e433d5h
+dd 03a4c30f2h
+dd 096d72dfah
+dd 0fd49f647h
+dd 0b040cdf8h
+dd 0a4cc3960h
+dd 0067dd5c6h
+dd 09dcb54b3h
+dd 05b64aa17h
+dd 078fcc44bh
+dd 0d9f9f828h
+dd 06003b732h
+dd 01109bd57h
+dd 07f210585h
+dd 0ea816171h
+dd 00c649b91h
+dd 0cea9c5deh
+dd 0f7fa7dcch
+dd 08363a99dh
+dd 0effeb0efh
+dd 00c6b52b8h
+dd 0d0066498h
+dd 08f46f1a8h
+dd 01df11a53h
+dd 0676194e3h
+dd 0601475afh
+dd 02123441ch
+dd 084e98effh
+dd 0e295917ch
+dd 02d530442h
+dd 08611f2bch
+dd 043bfb488h
+dd 0f9bfb845h
+dd 04f472927h
+dd 064fa65c9h
+dd 0f62f7c68h
+dd 05b4cccdch
+dd 016e7645eh
+dd 0747e40a5h
+dd 037afcb3bh
+dd 0faaca758h
+dd 0f1500f06h
+dd 096a44de6h
+dd 0815ef96dh
+dd 090a745bbh
+dd 05cf8d263h
+dd 0a2fd01e3h
+dd 0d8c65670h
+dd 0098f3a1eh
+dd 0a9652803h
+dd 0eb4a77b2h
+dd 03c067d22h
+dd 01cb15631h
+dd 05e303633h
+dd 09848e6f7h
+dd 0edf0086ch
+dd 02456c1c0h
+dd 06bd19a17h
+dd 046813de9h
+dd 0605ec47bh
+dd 045d23d49h
+dd 06d8f747fh
+dd 0daba4bfdh
+dd 079c01d4ch
+dd 0792e9749h
+dd 029c0ac5fh
+dd 02018208bh
+dd 08770122fh
+dd 0a20f4d38h
+dd 0cd50b3bch
+dd 0e1280fd8h
+dd 071a5482eh
+dd 01bfc25b7h
+dd 051f44008h
+dd 0a71a6136h
+dd 059533d99h
+dd 0ae0ceb55h
+dd 09d12d95fh
+dd 00572f86dh
+dd 01b2a5d44h
+dd 0f1098022h
+dd 0982c89dah
+dd 0d72fae47h
+dd 06021a91ah
+dd 0de65e295h
+dd 01f386ca7h
+dd 077425ae0h
+dd 00585e18bh
+dd 04a83997fh
+dd 054c76fdbh
+dd 071fc9a0ch
+dd 06dc45753h
+dd 0d36d4058h
+dd 06c401f53h
+dd 067af1da0h
+dd 0f2f093c5h
+dd 00fa3d9c2h
+dd 05be8830ah
+dd 017f7a723h
+dd 067b52e1fh
+dd 04e75d3ddh
+dd 0942f23a5h
+dd 07c1e15b2h
+dd 0630a366dh
+dd 03a2dc461h
+dd 064c00ba4h
+dd 08dced95fh
+dd 08d02062ah
+dd 05fae2974h
+dd 0554a95fbh
+dd 0f0a062b5h
+dd 0fa498ba9h
+dd 087a92df2h
+dd 0ce7639feh
+dd 02b040c10h
+dd 0681b96cah
+dd 0a0ee76f9h
+dd 0d50121ceh
+dd 0c4cc99a5h
+dd 08342d742h
+dd 0b6666cc6h
+dd 0bbda34eeh
+dd 082956969h
+dd 05fcae299h
+dd 07b8d4115h
+dd 0649ca93ch
+dd 0ae34377fh
+dd 0916c7240h
+dd 09f33eb0ah
+dd 02fc79ceah
+dd 02e23ab63h
+dd 04a00f045h
+dd 009210b1fh
+dd 02ddd46b2h
+dd 006385025h
+dd 0794c257ah
+dd 0cb1f2a20h
+dd 025350a99h
+dd 081363f97h
+dd 0e4a36629h
+dd 011efaed0h
+dd 037418813h
+dd 080223bcch
+dd 00b8be553h
+dd 048ce6b5ah
+dd 000372168h
+dd 0f232683bh
+dd 0c763f9c4h
+dd 0fb4d41deh
+dd 09e5b450fh
+dd 0a92ab339h
+dd 0aaee679bh
+dd 0929d73e8h
+dd 026a0f9dah
+dd 09c92028bh
+dd 09b3e30e1h
+dd 025dc49a5h
+dd 03b16617fh
+dd 069d45f62h
+dd 0e0db8621h
+dd 0dd2d893ah
+dd 09bcb4d1ch
+dd 004420533h
+dd 06a67e655h
+dd 0eb879efch
+dd 0a402d9b8h
+dd 0dd56fd18h
+dd 02861723bh
+dd 02febee48h
+dd 00485357fh
+dd 0cc3d8a85h
+dd 0883b6261h
+dd 08304b0abh
+dd 01bb6deffh
+dd 04edadc5fh
+dd 0a8980cb7h
+dd 053204853h
+dd 0d80c342bh
+dd 0352a4f51h
+dd 009589f51h
+dd 0f3f76e83h
+dd 054a3e4b0h
+dd 0b8916172h
+dd 02201baceh
+dd 0e443ff0bh
+dd 0daa2a812h
+dd 0fb2e36b0h
+dd 02aff1ec3h
+dd 015e46a97h
+dd 0fb72de0eh
+dd 05bcae560h
+dd 0b2c0dc89h
+dd 0d784226ch
+dd 0d4820da6h
+dd 075dc4a7ah
+dd 031365770h
+dd 02d7578dch
+dd 02653f552h
+dd 052c69656h
+dd 048d64a56h
+dd 0fb23d365h
+dd 02ce0985ch
+dd 09ad4c24dh
+dd 05deb6c8ch
+dd 09e02c665h
+dd 0a8e185ceh
+dd 0b0711a5ch
+dd 060abd9f3h
+dd 0b4adc2d9h
+dd 01ed91b59h
+dd 0d03d112ch
+dd 0ce769e87h
+dd 0d46ce8b7h
+dd 0791bdf04h
+dd 038ba190bh
+dd 0d5f59e94h
+dd 0aa0745f7h
+dd 07a31c925h
+dd 07b3dcf15h
+dd 0707bd7b8h
+dd 0fc8aaf66h
+dd 0bd2b3964h
+dd 0dbbd6473h
+dd 041a46cd8h
+dd 08e5725f7h
+dd 024f91989h
+dd 0710cb022h
+dd 09494a5b0h
+dd 05c6e4b96h
+dd 02423c831h
+dd 06fd86e80h
+dd 081e54fa2h
+dd 0ee94c1cah
+dd 06e44ca27h
+dd 0c66bbff9h
+dd 067dc8278h
+dd 04a7ec391h
+dd 0f5fb0d08h
+dd 038360e51h
+dd 04ce53c73h
+dd 0527f1a5dh
+dd 06fd2435fh
+dd 01c3cd17bh
+dd 021131829h
+dd 0e978a29fh
+dd 0d38d57c1h
+dd 0aaedce42h
+dd 0dae41a51h
+dd 0b65ed188h
+dd 0ec9d1b6dh
+dd 0b91c1e9ah
+dd 0d8629cfbh
+dd 0c44b1c41h
+dd 020285e2ch
+dd 008acb6e6h
+dd 04b345921h
+dd 01eeceab6h
+dd 0ca504fe9h
+dd 0214c8321h
+dd 04327014bh
+dd 0097a08c0h
+dd 0f04bcd03h
+dd 03adbd71eh
+dd 0d47ddd9fh
+dd 0b603ae6ch
+dd 02cdf11e9h
+dd 049f35874h
+dd 0399a6675h
+dd 0fa1ec924h
+dd 0c47ddf3eh
+dd 0a3485429h
+dd 0dfc98ac1h
+dd 0a98145ech
+dd 0ca0e91ebh
+dd 02ba03761h
+dd 0d44854a1h
+dd 0285b30a7h
+dd 067c975aah
+dd 09cef869bh
+dd 06bcae1f2h
+dd 0dcd6398bh
+dd 07300dbbch
+dd 0e1297416h
+dd 046c5e6f8h
+dd 01cbc6a6eh
+dd 0cdda8e68h
+dd 0a92015d9h
+dd 08cafdc01h
+dd 053c1a4a5h
+dd 0ca44ce19h
+dd 00ae46664h
+dd 0ec667ff0h
+dd 046be6a9bh
+dd 00b2e2ab7h
+dd 01b3de1fbh
+dd 054cfd089h
+dd 004e1927dh
+dd 09ba722dah
+dd 0b324578ah
+dd 0dbd456d9h
+dd 0358a262ah
+dd 0be476005h
+dd 01cc3dd56h
+dd 0e7d5dd83h
+dd 075d21889h
+dd 0500314c5h
+dd 079e9674fh
+dd 0b8098348h
+dd 0a75dd2f9h
+dd 0a85c914bh
+dd 056c6db48h
+dd 0dd763344h
+dd 0c7c45fbfh
+dd 0f617331dh
+dd 031b74b6bh
+dd 0d49046a5h
+dd 0eb01f3b3h
+dd 0231c25b2h
+dd 05c39eb88h
+dd 051e71b1ch
+dd 04b8578a2h
+dd 0e43b68b9h
+dd 0e269085ah
+dd 0439d1e12h
+dd 0a47e2168h
+dd 08b45d95ch
+dd 0c4a300feh
+dd 0299e89f4h
+dd 0d04be376h
+dd 0f736a76bh
+dd 04701310eh
+dd 0feefdcf5h
+dd 01a6c1073h
+dd 05e116820h
+dd 0b8b982d7h
+dd 03b901ec1h
+dd 0ca6b1e1bh
+dd 01f5a50ddh
+dd 0f58c9c10h
+dd 03b84f295h
+dd 0153aefa5h
+dd 07aa24c74h
+dd 03a31f76ah
+dd 09bcad109h
+dd 04eb18050h
+dd 0f4bbd909h
+dd 0fead50edh
+dd 03b0c8750h
+dd 078023c36h
+dd 07375dbd3h
+dd 0dcbf2b86h
+dd 0254819f8h
+dd 066cf940bh
+dd 039f16406h
+dd 01cba5a63h
+dd 007b2cc1bh
+dd 0f3c4d9a8h
+dd 0534a4514h
+dd 02156c5b9h
+dd 012ea6bf7h
+dd 0def54312h
+dd 0d4e8381fh
+dd 00d52deefh
+dd 09f20ed0dh
+dd 02d38ec3fh
+dd 099843899h
+dd 04ed94081h
+dd 0a82c49c6h
+dd 0a5dadd52h
+dd 074bdf896h
+dd 0a5292380h
+dd 0d5d7b089h
+dd 00f634857h
+dd 01b8a5f17h
+dd 0ca72f4b3h
+dd 030abf087h
+dd 0ce7239d8h
+dd 0f158c5afh
+dd 0bbb229a5h
+dd 02a2f23dah
+dd 0673167dah
+dd 04af9ccf3h
+dd 01b9c76c5h
+dd 05e1540b7h
+dd 021164351h
+dd 04f0492c8h
+dd 0ead8c268h
+dd 0420f9532h
+dd 0731b8adfh
+dd 0a2315dcfh
+dd 0476d59eah
+dd 096590415h
+dd 0d0c4417bh
+dd 03f23fbe1h
+dd 0cc074c78h
+dd 09271fe8ch
+dd 0d2e024ach
+dd 09f32d6fdh
+dd 0a411b6aeh
+dd 00caf1512h
+dd 0b80dc45ah
+dd 0bb69a925h
+dd 09475d55ch
+dd 09fd6bfcbh
+dd 0e3a0514ah
+dd 03559cad8h
+dd 0dcfae4cdh
+dd 04a6d9b0bh
+dd 0f575e18fh
+dd 0943fef2fh
+dd 05ef7bcfeh
+dd 04f8560ach
+dd 0e454e2bch
+dd 0fa6be279h
+dd 0d40f4d52h
+dd 0a007cd01h
+dd 0a3962275h
+dd 0f44a8722h
+dd 0edd52b43h
+dd 04d526c87h
+dd 026ace106h
+dd 063995d7bh
+dd 0b27a87e0h
+dd 072659791h
+dd 0a199bae0h
+dd 062d6fd13h
+dd 08691b016h
+dd 01ffc8f35h
+dd 042545ccch
+dd 08f454759h
+dd 0d6b458f1h
+dd 0a2c87600h
+dd 060501201h
+dd 0ab92770fh
+dd 04ffec66dh
+dd 0fcbaf8f2h
+dd 02b1edfc6h
+dd 081177ec4h
+dd 084c6eb2ah
+dd 02d619342h
+dd 0e6020c60h
+dd 0d5641ce9h
+dd 0d1a5aa5eh
+dd 0f10240cah
+dd 001fd8773h
+dd 0e6c1ffe5h
+dd 0821157feh
+dd 0a7df27c9h
+dd 0e2f061fdh
+dd 02c846220h
+dd 07921d320h
+dd 00568bc90h
+dd 078e8ebd9h
+dd 0baaded5eh
+dd 0d8adfa86h
+dd 0bb4c5ef8h
+dd 0907cbce4h
+dd 0f5d91b9ch
+dd 0b131fe4ch
+dd 01b9f6ae7h
+dd 0f8a41d6ch
+dd 0e829dd0ah
+dd 0b486694eh
+dd 0cb20a919h
+dd 0e93ccf38h
+dd 01c19d1bch
+dd 031190764h
+dd 0a1bb1b4dh
+dd 0d63830a1h
+dd 0bedddf75h
+dd 0e664d90fh
+dd 09cbf5c92h
+dd 02a5ab460h
+dd 0a607e7c1h
+dd 01778b395h
+dd 00d784291h
+dd 084d07d65h
+dd 0440a35bbh
+dd 0a540dca0h
+dd 0f9bf72cbh
+dd 05ed203b7h
+dd 0a456d11ch
+dd 06cfd2cdbh
+dd 011b62e39h
+dd 0b1e24c4fh
+dd 05cd725ech
+dd 02ed0b4e7h
+dd 0d9772f02h
+dd 0b60646ech
+dd 0ec16581dh
+dd 02f29b28ch
+dd 0b69abc15h
+dd 01df343cch
+dd 0f1dc84edh
+dd 06b9a3ab0h
+dd 0b8be0a01h
+dd 05b44d119h
+dd 0bfdf589ah
+dd 0fd1dc813h
+dd 0012b9a41h
+dd 09ec86fa3h
+dd 02ccd06b1h
+dd 0ff59f989h
+dd 083567a39h
+dd 0a056de43h
+dd 029aa32e3h
+dd 0bd989138h
+dd 011bde358h
+dd 0f7f81da5h
+dd 06664c2dah
+dd 0ffc4f611h
+dd 0af74566dh
+dd 06a18ff91h
+dd 07e0dbe62h
+dd 03428044ch
+dd 0a21edb12h
+dd 0ac2fb3d9h
+dd 046bbf96eh
+dd 013aee88bh
+dd 0cef90e1eh
+dd 097e97c9ch
+dd 0c4a51656h
+dd 067bcc946h
+dd 0a1fec20fh
+dd 063539106h
+dd 08a79e087h
+dd 0416566d7h
+dd 0037adc3ah
+dd 01cb94a5eh
+dd 0dec39e01h
+dd 0baeedd79h
+dd 07eec86b0h
+dd 02a536881h
+dd 0d1359492h
+dd 0c99aa4bdh
+dd 00a1e641ah
+dd 0faf4dd26h
+dd 05959351dh
+dd 0fb8c303fh
+dd 0e9dd4710h
+dd 0ba5e8cebh
+dd 05ff339c9h
+dd 04f34429bh
+dd 086fbdd79h
+dd 0e4cb5066h
+dd 0ee2e6d5ch
+dd 0d4f14e35h
+dd 0b90b1e59h
+dd 0e8ecacf4h
+dd 0ec2a3e4ah
+dd 0b8b8b25bh
+dd 00d36b47eh
+dd 0540e79b5h
+dd 03182bf30h
+dd 023a7033dh
+dd 046b928c4h
+dd 01b464ad5h
+dd 05c4f4c57h
+dd 069b89640h
+dd 00cb082e8h
+dd 083e7dabeh
+dd 0aeda860ah
+dd 06366560fh
+dd 08932fe8eh
+dd 074b2a5d2h
+dd 0f4e6b61fh
+dd 03e3b765fh
+dd 026b93639h
+dd 0c4fc32fah
+dd 0c7024e0ch
+dd 0caa6c037h
+dd 0d0caf497h
+dd 08c5d872eh
+dd 0be8e5b2eh
+dd 00d5aaa00h
+dd 06c5c86a3h
+dd 0874f9990h
+dd 0d21a2918h
+dd 09f8a601dh
+dd 02d19220ch
+dd 0ccf16dfch
+dd 035976aadh
+dd 00b894426h
+dd 0522e71b3h
+dd 0fa322fefh
+dd 08728e484h
+dd 0402ebfb9h
+dd 011b5027ah
+dd 0f809485dh
+dd 0d5aaead1h
+dd 00b8d93dah
+dd 0df6556dch
+dd 0ebd1df2fh
+dd 0514fa59eh
+dd 04c7b49d7h
+dd 090f5f021h
+dd 03501db51h
+dd 04babb866h
+dd 0e469f0c5h
+dd 05d98244bh
+dd 05bebaabdh
+dd 0dc683b3dh
+dd 0a27a0833h
+dd 0e793cbeah
+dd 094c31af7h
+dd 0cff89b7bh
+dd 06adc5258h
+dd 02709ffdeh
+dd 0a89c480ah
+dd 02af0a6d8h
+dd 077fa8fafh
+dd 0bd0855ffh
+dd 0d2328f6fh
+dd 0890c3429h
+dd 08d9332d8h
+dd 0e426ccaeh
+dd 03fec9bcch
+dd 0190ed641h
+dd 0bbe43f4eh
+dd 06b88ed25h
+dd 04cbe53d7h
+dd 05076494fh
+dd 0f832ef83h
+dd 0bef5a5e3h
+dd 0af8710afh
+dd 09c8d58d0h
+dd 0b486f4d7h
+dd 0111cee30h
+dd 02b6251e9h
+dd 08d179efah
+dd 0135d4a13h
+dd 0337c31b7h
+dd 01bf04318h
+dd 07f908799h
+dd 0a75161bbh
+dd 042569b3dh
+dd 0cde15f2dh
+dd 026b1f87eh
+dd 0afabafadh
+dd 011d3ac56h
+dd 09c50d6dfh
+dd 08bf35deeh
+dd 0bc83b9b1h
+dd 0a2a0aac6h
+dd 00dd95140h
+dd 025e58a3dh
+dd 0c963e243h
+dd 085f12d84h
+dd 08b4576f8h
+dd 03e1c2c16h
+dd 04ff144aah
+dd 09aab0343h
+dd 0ee8b52efh
+dd 0b41dbfbbh
+dd 04c65b92ah
+dd 07acf9228h
+dd 087ddc8deh
+dd 08d6b8056h
+dd 0eda9c9f6h
+dd 0e0a3ea5ah
+dd 046a56c6bh
+dd 013dad44fh
+dd 06ab7036dh
+dd 0bd6ff1e1h
+dd 0206f55e5h
+dd 0017b2d33h
+dd 07120cc86h
+dd 0f45809e9h
+dd 0848ad680h
+dd 0b08b3127h
+dd 0421589a1h
+dd 06d66bae0h
+dd 056c3bd36h
+dd 0d32b5d6bh
+dd 000bcafadh
+dd 0d3800018h
+dd 0d4805edbh
+dd 061f5c85ah
+dd 0244c28bfh
+dd 0d7002543h
+dd 059000704h
+dd 0d36ed07dh
+dd 02f27de22h
+dd 01576ccc3h
+dd 0ca445889h
+dd 020582d31h
+dd 043a867c4h
+dd 05416656eh
+dd 0da56113dh
+dd 0f527398dh
+dd 02e53386ah
+dd 01f95103ch
+dd 03a754debh
+dd 0f23a790bh
+dd 06a66e9b0h
+dd 0c0f14b8fh
+dd 0e8ce7063h
+dd 052ca091ah
+dd 00f1c2765h
+dd 08af6c8a4h
+dd 03e56ae7ah
+dd 03b75a680h
+dd 0109504c5h
+dd 08bbe313fh
+dd 0fc139901h
+dd 0deb6fea1h
+dd 04c328edeh
+dd 04210a10fh
+dd 083a5ef03h
+dd 0399fbbd5h
+dd 03e783ad8h
+dd 07fc59c31h
+dd 0657f1250h
+dd 0274b4128h
+dd 0197c85feh
+dd 01ca9173fh
+dd 0fb6ccb77h
+dd 084b3c9cfh
+dd 084e730c0h
+dd 0dcdaec5ch
+dd 0e6cff187h
+dd 029e90d73h
+dd 021b6270ah
+dd 0aee3ae58h
+dd 02e8d3278h
+dd 0f562f0a2h
+dd 014042230h
+dd 0ad5d0352h
+dd 0b5d64740h
+dd 0e4e70c50h
+dd 0967ef65bh
+dd 0d6b9670dh
+dd 0440785b5h
+dd 0b861fe21h
+dd 0e1a66b4bh
+dd 09918c07ch
+dd 07f0bbb01h
+dd 0d72ef308h
+dd 01ee4cadch
+dd 05118ac64h
+dd 0294ddf7eh
+dd 0df5241b7h
+dd 0f6176881h
+dd 0da747961h
+dd 05a49a9b4h
+dd 06d3db5b0h
+dd 0cb28798dh
+dd 057384826h
+dd 09501fe77h
+dd 0b45f5cc6h
+dd 0c91a21dch
+dd 006e9b77eh
+dd 0bc25e4b7h
+dd 0900de7c0h
+dd 0395c2bd0h
+dd 0ccc4e3b2h
+dd 027532fa9h
+dd 03a6ccd3dh
+dd 0b0ec82d9h
+dd 03711ced9h
+dd 046ed2184h
+dd 02fe7c3ffh
+dd 0a84a39f2h
+dd 0eaeda500h
+dd 0314f8dbbh
+dd 0ae73b83ah
+dd 0dea8dcc7h
+dd 0443b2d70h
+dd 0a8ee0f79h
+dd 0ecf9a283h
+dd 042760d7ah
+dd 027fdab21h
+dd 01cb0d01bh
+dd 06c74f802h
+dd 0343f865fh
+dd 066c5e9dbh
+dd 068d09be7h
+dd 0635ba27fh
+dd 0aa421448h
+dd 01c72ee1bh
+dd 054859635h
+dd 0e94ea551h
+dd 024850ea7h
+dd 03f9a5856h
+dd 005acb9b4h
+dd 0b3cf616fh
+dd 0a56eae2eh
+dd 0292ac38bh
+dd 0658b7bfah
+dd 0fe9c06b5h
+dd 078c32104h
+dd 0a548d840h
+dd 0d921b371h
+dd 0574e84d6h
+dd 06e6c020ah
+dd 0d5037133h
+dd 006bdcf1ch
+dd 0e3c1f053h
+dd 0fbb1398fh
+dd 0ea58b84fh
+dd 0f2c7e48ah
+dd 022da5925h
+dd 099a57dcah
+dd 0c30d884ah
+dd 04d6f8dcfh
+dd 009bfcf0bh
+dd 0fff307f1h
+dd 0fc5763fbh
+dd 095aaa4f1h
+dd 0d66bb864h
+dd 03531d9b4h
+dd 01abcd16bh
+dd 0117257bch
+dd 0f7155e4dh
+dd 04821afach
+dd 05da18623h
+dd 02b1921ach
+dd 092de3414h
+dd 0f0f2af95h
+dd 07abd9d54h
+dd 0f02a99eah
+dd 03ad83cf4h
+dd 04508066ah
+dd 07b0abe3bh
+dd 09f1913e3h
+dd 0a5fb4fb3h
+dd 0c92df27bh
+dd 065aede11h
+dd 0851f78eeh
+dd 0ddb4fe8eh
+dd 09bd5c60bh
+dd 0ab4b492ch
+dd 0aff55086h
+dd 0df1c5505h
+dd 072ec3289h
+dd 0e53bd6c2h
+dd 0fc0655deh
+dd 0d743bae3h
+dd 0d860a458h
+dd 05210ecc8h
+dd 08ea62b0ah
+dd 03829444dh
+dd 0ae085c90h
+dd 0674a2543h
+dd 0a4f4f40ah
+dd 0228dc793h
+dd 03d9abebbh
+dd 0b544066ah
+dd 03e9d1792h
+dd 073c9ea0fh
+dd 0661bd7f7h
+dd 02bde7babh
+dd 0b39735fch
+dd 02652744ah
+dd 0666a1fc2h
+dd 0490e83cah
+dd 060c34b8dh
+dd 0778addd8h
+dd 0e2c0b4d2h
+dd 0888c16a0h
+dd 0f1b62effh
+dd 08248fad3h
+dd 06e9b84feh
+dd 02d17cb86h
+dd 02f3ffebeh
+dd 0e5fd0533h
+dd 038e96060h
+dd 0cd7b7f6dh
+dd 0ea294991h
+dd 04d6f9e4fh
+dd 048e1f4dah
+dd 0d081a31bh
+dd 0477a5ca4h
+dd 0c91f5023h
+dd 004f86abah
+dd 00a284828h
+dd 0ff328b56h
+dd 075b9b34fh
+dd 0ff6aaff2h
+dd 0bea916e6h
+dd 0f587a1e5h
+dd 039e7c9c1h
+dd 05dd7f8a2h
+dd 06faf795bh
+dd 011cd7720h
+dd 0d7fcfa82h
+dd 0c6895451h
+dd 01f6d9173h
+dd 08904a0adh
+dd 00b2b3783h
+dd 098460873h
+dd 0143e978fh
+dd 0d544aed2h
+dd 015b67f14h
+dd 0c8f4b494h
+dd 00e254ce6h
+dd 0eb18d517h
+dd 0d30ab582h
+dd 0e2ea6812h
+dd 0afc41f3dh
+dd 080fb0ecdh
+dd 08eccc145h
+dd 0c22edb96h
+dd 00f9bc97ch
+dd 0daa146a1h
+dd 03c312647h
+dd 0c8c49443h
+dd 02fea89bbh
+dd 0f1302f61h
+dd 02b85de3ah
+dd 0d5565c63h
+dd 063c6c117h
+dd 00afbc7e0h
+dd 024df7db4h
+dd 00d272d45h
+dd 0c2741caeh
+dd 0cee3dd62h
+dd 04e4bb27eh
+dd 03e7b297ah
+dd 03144aaech
+dd 0a8258600h
+dd 0b3319f14h
+dd 0773c8262h
+dd 05fa7deaah
+dd 0f07f10aeh
+dd 07df53687h
+dd 066d70a49h
+dd 02eadc05ch
+dd 0f094d561h
+dd 044e22374h
+dd 0d9ff7530h
+dd 0482d940ch
+dd 023f35e38h
+dd 0211b83cah
+dd 0cf91b5fdh
+dd 05e887898h
+dd 0712ce92eh
+dd 05ef8d5e0h
+dd 0ff9d1b38h
+dd 0343c0561h
+dd 0399ce3feh
+dd 0d06a9fb1h
+dd 03edc6f24h
+dd 08fcd41d0h
+dd 03e05abc3h
+dd 0298756a4h
+dd 0a2a46f18h
+dd 000c68befh
+dd 0329e222fh
+dd 0cc87370ch
+dd 0f15d1ba6h
+dd 0a62a654ch
+dd 0f675c14ah
+dd 031fa75c7h
+dd 00f4bcd68h
+dd 07a29cf38h
+dd 0d8cc5401h
+dd 0510a782bh
+dd 01758d610h
+dd 0b5f9f170h
+dd 03d1b8153h
+dd 011b80dd0h
+dd 07125d7f2h
+dd 04db6e77eh
+dd 0f5fe4962h
+dd 05c1f8298h
+dd 0ce6bdeach
+dd 0ca5b029bh
+dd 0e971c6aeh
+dd 084a284f9h
+dd 0c879c910h
+dd 0414dcbbbh
+dd 0e7904478h
+dd 02e190790h
+dd 040f15594h
+dd 067b34a39h
+dd 0a91b8118h
+dd 0219f10b3h
+dd 03bdef187h
+dd 0ba82e8dch
+dd 0c4765d70h
+dd 0f95172f6h
+dd 06c868733h
+dd 0f9003c73h
+dd 01477f2a9h
+dd 0e815a5cbh
+dd 02bfdaf47h
+dd 0a6640118h
+dd 0fbaf0c0ch
+dd 0f9afb329h
+dd 060754cb4h
+dd 0bef1dd57h
+dd 0e4ce0f96h
+dd 0bb80c367h
+dd 02c0d840bh
+dd 09e9ef3a0h
+dd 054e8d319h
+dd 0f343d8c0h
+dd 038e800d2h
+dd 086812008h
+dd 024e4d095h
+dd 000c14dc6h
+dd 09f36f5c3h
+dd 0b35b386dh
+dd 08dca1345h
+dd 047e82829h
+dd 0cd60b030h
+dd 053e4a2fdh
+dd 073bd5a6fh
+dd 027b5e135h
+dd 0f23fe93ah
+dd 027eb5c34h
+dd 030795c12h
+dd 0443fde01h
+dd 0d701939ch
+dd 03e36796eh
+dd 02f35e354h
+dd 020be8c42h
+dd 09bd2be5eh
+dd 0d5c7f051h
+dd 03b3ed7b4h
+dd 09f87ba12h
+dd 0de7599a7h
+dd 04bd7f119h
+dd 05c1fcd6ah
+dd 0a77d1c98h
+dd 0df9abf81h
+dd 07a6cd9c4h
+dd 0c2719508h
+dd 0a7aa2821h
+dd 0a4a23408h
+dd 0d6504d2ch
+dd 063cd335ah
+dd 0ef51616ah
+dd 0d98a0676h
+dd 0423db710h
+dd 0703bf09fh
+dd 07449d9ddh
+dd 01884c23dh
+dd 0e714de2ch
+dd 04bad4d28h
+dd 0a7a69f1fh
+dd 0a414f2b7h
+dd 06d6a573ch
+dd 0c8de14e2h
+dd 055047de2h
+dd 0bacc48f8h
+dd 083106f85h
+dd 07c8f0115h
+dd 04e6fe6ddh
+dd 01cfb0322h
+dd 086cfb88dh
+dd 0550d14cdh
+dd 07f170d92h
+dd 0a7286a5ch
+dd 0e23edbd1h
+dd 0d51b3d61h
+dd 0950fa228h
+dd 029d65513h
+dd 0652964f2h
+dd 0d83004f4h
+dd 0b234f919h
+dd 0fc6bb24eh
+dd 0bab50c92h
+dd 0200f9e65h
+dd 02147b7b9h
+dd 029c07d85h
+dd 0d61af154h
+dd 0b52d805fh
+dd 09c468290h
+dd 09b06c8cch
+dd 040624892h
+dd 0643aeb24h
+dd 016b875bdh
+dd 0778f3b3ah
+dd 08da2861dh
+dd 05052f23bh
+dd 0605788dfh
+dd 0995bc83bh
+dd 006b5c58ah
+dd 0629a9e78h
+dd 0f5cdccf7h
+dd 03e5e71ffh
+dd 025a92e8eh
+dd 0bd9ee9d3h
+dd 045eb83adh
+dd 0df9acb4bh
+dd 074e827c1h
+dd 09ed88a63h
+dd 0fc9e5144h
+dd 06addd944h
+dd 07b3819f4h
+dd 062dce545h
+dd 0be6e3891h
+dd 0727c8a96h
+dd 0018c60c5h
+dd 02cba410ah
+dd 0023cd1c8h
+dd 0b6932c32h
+dd 03b43900bh
+dd 0007e488bh
+dd 0b78461f6h
+dd 0fc322d26h
+dd 05bd46211h
+dd 06c0dc94ah
+dd 05e596666h
+dd 04b6e726bh
+dd 029b9f4a9h
+dd 0b6c0a86bh
+dd 091aa04f1h
+dd 05d365cbeh
+dd 07c516bc4h
+dd 042573d9ch
+dd 06cabb837h
+dd 0e0f3b3a3h
+dd 0e92efaf2h
+dd 058beba62h
+dd 0d62b0904h
+dd 0fea975a8h
+dd 073cd14f8h
+dd 0a6b01db8h
+dd 01ef0d21ch
+dd 026eefd3bh
+dd 055880f18h
+dd 0ce2a2c33h
+dd 0b0f60624h
+dd 00147ae92h
+dd 02dd6f41eh
+dd 010197e26h
+dd 0fdd94df0h
+dd 002045ae0h
+dd 06cc98d23h
+dd 0b779b098h
+dd 06b8f820fh
+dd 066b76509h
+dd 02228ff26h
+dd 08d125a6bh
+dd 02d107604h
+dd 0625498b7h
+dd 029bd3e5ah
+dd 064d43f38h
+dd 062637adfh
+dd 04eff20ffh
+dd 0a010f078h
+dd 01da96665h
+dd 05fbeda81h
+dd 09754940ah
+dd 018ec7ef0h
+dd 096c82ca5h
+dd 018f1e8d5h
+dd 05b9c9e75h
+dd 0b7869b6dh
+dd 047c0c882h
+dd 023af191eh
+dd 05d1e2086h
+dd 0677ba9bah
+dd 015fcc450h
+dd 09ea0ec37h
+dd 06ffe6950h
+dd 08ff79cd5h
+dd 0e548dad2h
+dd 091d18ee5h
+dd 08285e720h
+dd 044f5ff33h
+dd 008b16598h
+dd 0ccf8898dh
+dd 0796f85b7h
+dd 028d981dfh
+dd 03d0648c4h
+dd 0692cd6fch
+dd 0f4866f0ah
+dd 0627503b4h
+dd 0706acd39h
+dd 0b18df6c4h
+dd 08d327a14h
+dd 050f38311h
+dd 05ef88678h
+dd 0a92b873ch
+dd 02fe5ab5ch
+dd 0bcd32541h
+dd 0782f2aaah
+dd 0f2bc6a5ch
+dd 0e32aa117h
+dd 0a508d285h
+dd 08d3fe65ch
+dd 09771100ah
+dd 02f734d44h
+dd 008f53816h
+dd 01b6c57d9h
+dd 053e5277eh
+dd 03b563651h
+dd 04d841375h
+dd 0baa03281h
+dd 0ef10144fh
+dd 0d4424cf8h
+dd 05dcf1a51h
+dd 0394298b7h
+dd 0f6630891h
+dd 0951a4787h
+dd 026e1c3f5h
+dd 009fb99a9h
+dd 0391149f3h
+dd 0ab4128cah
+dd 07761c131h
+dd 0302a9ca1h
+dd 0b4cffabah
+dd 04fe37047h
+dd 0a5924ad5h
+dd 006eccf61h
+dd 061a62670h
+dd 0de90e2b5h
+dd 0f91e20abh
+dd 09dc2ab0eh
+dd 0af4c14b5h
+dd 02e7b2a08h
+dd 03b1ecde9h
+dd 0baebb054h
+dd 0fbd0f3d6h
+dd 0535a4213h
+dd 01368abcah
+dd 0decc14d7h
+dd 074a6e285h
+dd 0bb718ec8h
+dd 07fd205e5h
+dd 0192af423h
+dd 0f20ddd44h
+dd 082aeef95h
+dd 055cd479bh
+dd 07c9c65b8h
+dd 0389dbbe4h
+dd 0b3fe5827h
+dd 0e71b67c0h
+dd 0bdd3fc7ch
+dd 08ffcfebdh
+dd 0b5ebabe9h
+dd 06c3a1410h
+dd 02323624ch
+dd 081bdae08h
+dd 0fabc5bd3h
+dd 0120c6297h
+dd 094790b8eh
+dd 0d13814e0h
+dd 085b92db2h
+dd 010df8d74h
+dd 0485878e3h
+dd 0fba95ebbh
+dd 0b2486f41h
+dd 08f6b8c90h
+dd 02160d28dh
+dd 03e0f494eh
+dd 0519d23c0h
+dd 00f7062c4h
+dd 077c7315fh
+dd 0703c5c09h
+dd 0a7155d23h
+dd 0841bd236h
+dd 0bec58b04h
+dd 0039b8e40h
+dd 066f75b34h
+dd 018dbd9c7h
+dd 06269a6a8h
+dd 0cdbce2ddh
+dd 0ef87813bh
+dd 0d8619ecfh
+dd 0bb6a4660h
+dd 09a641182h
+dd 008811532h
+dd 0c2cc8ffah
+dd 088a2cb14h
+dd 0a6745a49h
+dd 06de94a89h
+dd 0365bf798h
+dd 0662c79efh
+dd 04f87d29fh
+dd 058ef98dfh
+dd 01f154fb4h
+dd 0214af91ch
+dd 024f3aa26h
+dd 06befb574h
+dd 0f5e48df3h
+dd 0dec1f49eh
+dd 056bdb565h
+dd 02c41bb34h
+dd 019e07743h
+dd 015ff56cfh
+dd 05f24b0ach
+dd 064a45d5ah
+dd 0fd702769h
+dd 0f09c9226h
+dd 0557a20f9h
+dd 0e438bfb1h
+dd 073e832f5h
+dd 01567dd92h
+dd 0d984c955h
+dd 030075015h
+dd 0c3bf16b3h
+dd 08a268570h
+dd 081baf9d9h
+dd 02c434e1ah
+dd 0e548dc93h
+dd 0f24e378ch
+dd 068590c49h
+dd 0e7af8654h
+dd 041afb449h
+dd 0871eb7f1h
+dd 0903e46e8h
+dd 0d2f2b94eh
+dd 068fa9df0h
+dd 05cdb7266h
+dd 07b7335deh
+dd 0c45d51dbh
+dd 0d7035c30h
+dd 091996d14h
+dd 0302490c2h
+dd 080c6f917h
+dd 01c9769a2h
+dd 01362c8c3h
+dd 0a9be61d5h
+dd 088dc1276h
+dd 0e84320cbh
+dd 0b6f9eed3h
+dd 0ab5b0735h
+dd 040a2f18fh
+dd 0295d8731h
+dd 049e1ea45h
+dd 04c4fbb1dh
+dd 09a74ca8fh
+dd 02aea3d8bh
+dd 032726eb4h
+dd 075bfc372h
+dd 0cfb12baeh
+dd 02192c957h
+dd 055ddd052h
+dd 059214420h
+dd 03f06e85ah
+dd 0bb3f5c72h
+dd 039f028feh
+dd 02701f730h
+dd 0a4437c5fh
+dd 018eb9729h
+dd 0792fa22bh
+dd 0edc57fb4h
+dd 006ce8130h
+dd 04ce4b9f5h
+dd 00ccdfd3eh
+dd 025d317aeh
+dd 0d855139eh
+dd 0e171c01ah
+dd 0f64f1568h
+dd 07a9426cch
+dd 0dfc48a5eh
+dd 094c6e2e1h
+dd 0ab9f0615h
+dd 0720f0cffh
+dd 0c41ffcc4h
+dd 08743915bh
+dd 0ce4cb6b7h
+dd 096e67749h
+dd 0b2c265f0h
+dd 0c05ffcc6h
+dd 023cf99a2h
+dd 0b64896b1h
+dd 0e58ddfd4h
+dd 0a5485d80h
+dd 071e8e462h
+dd 030f148f6h
+dd 0fc5e26c8h
+dd 05832d4d8h
+dd 0d841a27dh
+dd 0d11a7e33h
+dd 026678583h
+dd 08f1155f9h
+dd 068c1c121h
+dd 059ed7f90h
+dd 0c813e525h
+dd 04b7a9d2ah
+dd 06f95a1f1h
+dd 0163b9489h
+dd 0dee830c0h
+dd 0f7ef9559h
+dd 042fbc494h
+dd 023eb86f1h
+dd 005a7b3e8h
+dd 0816d1a8bh
+dd 00572d429h
+dd 0c2a9c94ch
+dd 01bb2093ah
+dd 086af8a68h
+dd 0c792410ch
+dd 0aa0d3005h
+dd 059349f63h
+dd 0a5b36a94h
+dd 05cdafa73h
+dd 01e6aff3fh
+dd 07843589ch
+dd 058c6d480h
+dd 0de185acch
+dd 073c562f2h
+dd 054bec1a1h
+dd 02f1508b1h
+dd 066c2d52eh
+dd 0a98912ffh
+dd 04467c01ch
+dd 0a58f8a78h
+dd 0ef8dc6d5h
+dd 0d74ad131h
+dd 06a0d0f8ch
+dd 03c3ed657h
+dd 0021150abh
+dd 0f0eb15f2h
+dd 063a6d672h
+dd 069ae3ec9h
+dd 0a8ff511ch
+dd 0264bd9d6h
+dd 0bfab8ec7h
+dd 060b9fd6fh
+dd 01c653f2dh
+dd 02943b0beh
+dd 00829ee06h
+dd 095748228h
+dd 080fa598bh
+dd 0fd6f966ch
+dd 03fde3194h
+dd 039d5281ch
+dd 0790e9ac3h
+dd 07e2c95dah
+dd 099bb80b1h
+dd 0efbaac7ch
+dd 00d34bac1h
+dd 0013341bch
+dd 0da822943h
+dd 03f63e7d9h
+dd 0c6cac280h
+dd 0fec52fa0h
+dd 03cbb1424h
+dd 09a2953e4h
+dd 028cd7cdfh
+dd 0a444d6c1h
+dd 0646e496dh
+dd 0022c0073h
+dd 0b37764e5h
+dd 0f3f24c83h
+dd 08333fc3fh
+dd 0b0a20c82h
+dd 0d54a34bbh
+dd 0c099fe83h
+dd 035827095h
+dd 0819c223dh
+dd 060ffa3f3h
+dd 087c3c697h
+dd 0c81cd282h
+dd 0cbe47812h
+dd 03fcdbf4ch
+dd 017b4947ch
+dd 0918f86f2h
+dd 0ac9d1d1bh
+dd 0a9714f70h
+dd 05942be52h
+dd 0b186b642h
+dd 0a5c23a12h
+dd 094e6261ah
+dd 068d93cc4h
+dd 03627c398h
+dd 0edd84d9ah
+dd 03a0c985dh
+dd 0efbf507ch
+dd 01057384bh
+dd 0d8b38921h
+dd 07f2cc5bah
+dd 06e4233a3h
+dd 0831b2a29h
+dd 099fa7b24h
+dd 0f0313e8dh
+dd 0718396d7h
+dd 0b341c368h
+dd 03bb5463ah
+dd 069a494b9h
+dd 0f2071613h
+dd 0f712d6c9h
+dd 04a23bf6eh
+dd 0072d7009h
+dd 0091bdef6h
+dd 05de31316h
+dd 0336b77f5h
+dd 0d19d243eh
+dd 027c21e1dh
+dd 0f70b014fh
+dd 03929e165h
+dd 07af4acfch
+dd 012944d82h
+dd 038702ab5h
+dd 06a7610d9h
+dd 00eb75c05h
+dd 0caf11009h
+dd 00f022044h
+dd 0b043850dh
+dd 011917fdah
+dd 0e4f96d19h
+dd 05c183bd0h
+dd 0db8acab3h
+dd 0725f3f57h
+dd 04e0f5cc9h
+dd 02adb2cb8h
+dd 0627c35d3h
+dd 0cb9c4a08h
+dd 0206d29bbh
+dd 00cbfa832h
+dd 060675a03h
+dd 047168602h
+dd 04304c52ah
+dd 0c9455936h
+dd 0aafff487h
+dd 0ca416598h
+dd 006c127ach
+dd 0a0a16a9bh
+dd 0ae5847a1h
+dd 0058102fah
+dd 08bb8a008h
+dd 027184789h
+dd 0bd9ae22dh
+dd 0afac303ah
+dd 003424e3ch
+dd 0e6c2abf0h
+dd 0ebaffa08h
+dd 0006f3ad1h
+dd 0de97d8adh
+dd 067949054h
+dd 0a7947d45h
+dd 02049f756h
+dd 0d108d4dch
+dd 0b0ae224dh
+dd 058af17e1h
+dd 09470e054h
+dd 0de1e1c71h
+dd 002ee5be7h
+dd 0be2cf191h
+dd 06909321bh
+dd 063e6708fh
+dd 096c0eaf7h
+dd 062aa1058h
+dd 080edce27h
+dd 0ce38777ch
+dd 0a6e55d46h
+dd 080cba365h
+dd 05c44806dh
+dd 01bf7c18eh
+dd 093edeba7h
+dd 00efbd154h
+dd 0f7fa447ch
+dd 0052695bdh
+dd 0081be433h
+dd 01187a498h
+dd 0869baa1eh
+dd 0ed78c0ddh
+dd 068ee78d6h
+dd 050df4419h
+dd 0cd82a36ch
+dd 0a57e9718h
+dd 05ec26823h
+dd 0d7b2dc92h
+dd 0f5d4a82bh
+dd 0ab2c845eh
+dd 012003597h
+dd 0815fd059h
+dd 0049ac62ah
+dd 0b9611871h
+dd 0a98ece98h
+dd 065a97078h
+dd 0837e1e8eh
+dd 08620a52bh
+dd 028326f65h
+dd 02f226708h
+dd 088bca478h
+dd 010e9a001h
+dd 0ed0bf2f9h
+dd 0efeb16a5h
+dd 0ff08955dh
+dd 0b0675f17h
+dd 0b3bc8f66h
+dd 0b19c8d08h
+dd 0f6ea327bh
+dd 01ebfff29h
+dd 0f4b95616h
+dd 0fee326dfh
+dd 05cfa8fa7h
+dd 00e94d8b1h
+dd 052c5071dh
+dd 0cbbfbf6ah
+dd 0507dd034h
+dd 0eca13dcbh
+dd 0293b5882h
+dd 032b3a89ch
+dd 0e5c87dadh
+dd 0ddb7ac69h
+dd 0e34de5dfh
+dd 0d36291deh
+dd 0ad06368fh
+dd 03adaa408h
+dd 0cae486b4h
+dd 067c18bc1h
+dd 0f4d03236h
+dd 0e19cfc76h
+dd 00f86b639h
+dd 081d51e6ch
+dd 09c364f9ch
+dd 09a862607h
+dd 0a6757c10h
+dd 088f97212h
+dd 0c810d128h
+dd 07848cd4eh
+dd 094e5cab2h
+dd 0e2b4226fh
+dd 035c584d3h
+dd 08f45e1c4h
+dd 065136dc3h
+dd 0e7b485d6h
+dd 09b4c9a6ch
+dd 0ae533bf7h
+dd 08deb89f5h
+dd 03542e99eh
+dd 0152f410bh
+dd 034625d12h
+dd 011c6f61eh
+dd 0e2bd8cb4h
+dd 0f864e640h
+dd 075ea01a9h
+dd 02c9f9600h
+dd 047e05bd3h
+dd 059d5fc22h
+dd 045db53eah
+dd 0056bc099h
+dd 04801042bh
+dd 0790be754h
+dd 0960c5ce6h
+dd 08ed3f9b7h
+dd 039470ce0h
+dd 0edae1b42h
+dd 05283cb1ah
+dd 089004561h
+dd 05a257624h
+dd 02b078365h
+dd 01753bbcdh
+dd 0be897774h
+dd 0700a3732h
+dd 02dba37f2h
+dd 0a66d519bh
+dd 0c515ec23h
+dd 01fe6595bh
+dd 03b9d8f72h
+dd 0b5966caah
+dd 0e052ed15h
+dd 0a9a4e37fh
+dd 00efb0bcah
+dd 0663004bfh
+dd 06ae7f3ddh
+dd 07e53da85h
+dd 09299240eh
+dd 09a00f0d9h
+dd 0e9ba8e05h
+dd 00f296f63h
+dd 0b31fde75h
+dd 0c14948f5h
+dd 00ae28c19h
+dd 02a3f408fh
+dd 0e73aae9ch
+dd 0a61ce806h
+dd 008cb085ah
+dd 08d2a233bh
+dd 0557e3629h
+dd 06204c425h
+dd 03a1fb964h
+dd 02ec2f9cch
+dd 0b414847ah
+dd 0e4b228ffh
+dd 091c96592h
+dd 0f15b5150h
+dd 046bc8d36h
+dd 0be332420h
+dd 0994f60fah
+dd 05a272388h
+dd 07931f687h
+dd 0e1a208a7h
+dd 0aa92775ah
+dd 08a25bfb9h
+dd 021bbb13bh
+dd 0491b1a09h
+dd 0e9507e0ah
+dd 085be6af4h
+dd 009e390c7h
+dd 0d54dd5c9h
+dd 008a419e0h
+dd 0255afc99h
+dd 0931c760ah
+dd 029c8f905h
+dd 03eeb147ah
+dd 03dd7093eh
+dd 0b0cf8799h
+dd 08f05303eh
+dd 0bf11bbcdh
+dd 0ec709521h
+dd 06ff6cb3ah
+dd 011201453h
+dd 02a2d54f2h
+dd 0061d57d9h
+dd 0552f9a0bh
+dd 02044ca6eh
+dd 0798d05dbh
+dd 06783c068h
+dd 00d4d01a2h
+dd 0178ab184h
+dd 0781b8a41h
+dd 0e4ead018h
+dd 03c5cc346h
+dd 021e1970fh
+dd 0d2f0612bh
+dd 0f66a47e1h
+dd 00286f305h
+dd 0c4a9cac6h
+dd 08d684a3bh
+dd 0d537c8bdh
+dd 0e0e4e02fh
+dd 087773bdch
+dd 0cd94eb1dh
+dd 0f10233c7h
+dd 0801ba5eah
+dd 0cf17d28eh
+dd 0e5df42a3h
+dd 096b06d63h
+dd 06f1c710ch
+dd 02af97805h
+dd 0e7545fd3h
+dd 0dc5f570fh
+dd 042f2254ah
+dd 0857e67cbh
+dd 0e17b1133h
+dd 003ec27c3h
+dd 036858f9dh
+dd 004a699e8h
+dd 0d5bc0761h
+dd 0384bee6ah
+dd 0691158bdh
+dd 0be87fbcdh
+dd 0ccf67c27h
+dd 0f59ef8cfh
+dd 085c374d2h
+dd 0be6f3712h
+dd 039c52b0dh
+dd 0bb7f75f6h
+dd 092ad6702h
+dd 0997d3975h
+dd 01dac9debh
+dd 016c777fbh
+dd 032c225f3h
+dd 0c7c4be70h
+dd 0c8880cb6h
+dd 071849db5h
+dd 0fd3ad58bh
+dd 0a301c167h
+dd 0acce6d9dh
+dd 0fe2ae15ch
+dd 07264bb24h
+dd 0781c0d8bh
+dd 01a668ffdh
+dd 06964f887h
+dd 0951b2cc0h
+dd 05de3e2d6h
+dd 06e83eb5dh
+dd 0fdd47a6fh
+dd 07a1914c7h
+dd 09add0177h
+dd 0d8128fb2h
+dd 06a18d15fh
+dd 06b38a5cch
+dd 03070663eh
+dd 0733590b8h
+dd 067c59214h
+dd 0e5cf9adbh
+dd 0f6d3fba0h
+dd 08b54d939h
+dd 05e40131dh
+dd 046d317cfh
+dd 024ce780ah
+dd 0d21ffc5bh
+dd 0d099fdceh
+dd 0e83fd441h
+dd 0ef581721h
+dd 01c2f627fh
+dd 06a73fad2h
+dd 0c684e4cah
+dd 048b30ac6h
+dd 0c4c8c7fch
+dd 08e02cd82h
+dd 0dda0c640h
+dd 0e6fe07e6h
+dd 087b588c6h
+dd 03cab8184h
+dd 0036fb7f4h
+dd 0122a001eh
+dd 0264150a8h
+dd 00a3458bdh
+dd 0bda157e6h
+dd 0e73158f1h
+dd 057cc9027h
+dd 0eb0d9c06h
+dd 0e09e2841h
+dd 01708557ch
+dd 0709eb032h
+dd 032976005h
+dd 07b51dcafh
+dd 09270742ah
+dd 0a59e4345h
+dd 0f2fda02bh
+dd 03d312e6ah
+dd 0fc619afdh
+dd 0b8873bbeh
+dd 0b5cd2d5fh
+dd 0300085afh
+dd 04f62d946h
+dd 05a956e46h
+dd 052f17fe3h
+dd 0718ae91bh
+dd 02b98ee9dh
+dd 0da25f930h
+dd 0a5fb80fdh
+dd 0b4c50bd4h
+dd 0b9cf9271h
+dd 064f28b4bh
+dd 0ed06ff5dh
+dd 0efd4ba1ah
+dd 0aa2bd85ah
+dd 0df1d8410h
+dd 03e89c063h
+dd 0cd4953a7h
+dd 0ac57c022h
+dd 00deb9b23h
+dd 0bf69ab7fh
+dd 06fd5c836h
+dd 0b43d17dfh
+dd 0865e78b2h
+dd 0473abdedh
+dd 074d8d4edh
+dd 0a5f748ddh
+dd 07714440fh
+dd 0933cb8ech
+dd 005b9c6a1h
+dd 04ec0375dh
+dd 0c7e7940dh
+dd 00e7d66c9h
+dd 070f89d50h
+dd 0aa0fc338h
+dd 0ccddb0fbh
+dd 061dc2132h
+dd 070a9c784h
+dd 037152f94h
+dd 06b801d2ch
+dd 0e38a6783h
+dd 09693fee2h
+dd 0525db89bh
+dd 03047321dh
+dd 0b556e3dch
+dd 06da0cbfeh
+dd 07c7cb92fh
+dd 0ff0f39e0h
+dd 088e58253h
+dd 04fbdcb56h
+dd 00867deceh
+dd 0b99fca27h
+dd 0e954568bh
+dd 0104da19fh
+dd 004123f6dh
+dd 0733c195dh
+dd 0df5f6285h
+dd 06ac53653h
+dd 043719229h
+dd 0a73fff34h
+dd 08827602ch
+dd 079523c03h
+dd 0258d0806h
+dd 04fc89f50h
+dd 0147e6a94h
+dd 05fd75fa1h
+dd 01960a7f1h
+dd 0a9e914e6h
+dd 005198e90h
+dd 0941268c3h
+dd 0afba7fe2h
+dd 03bb8172ch
+dd 0984be291h
+dd 0c510da31h
+dd 0cbe609b6h
+dd 02d9f8e1ah
+dd 08bb34aa5h
+dd 07de2a5f7h
+dd 0f5f93aeeh
+dd 0d2b70f5fh
+dd 086a3bf56h
+dd 0e52d3681h
+dd 08274b3ceh
+dd 093ca10b8h
+dd 0d10e8a83h
+dd 023dbda45h
+dd 02a9b12c5h
+dd 02ae5d6f9h
+dd 039d29020h
+dd 0b62a7e8ch
+dd 09966121ch
+dd 0a52bc0ddh
+dd 00079dc48h
+dd 0c6fc594ah
+dd 0b7018abch
+dd 0df0dbeb4h
+dd 07c056fa4h
+dd 08e2acc1ch
+dd 091f89dc0h
+dd 01246f8ach
+dd 0fe2769a0h
+dd 02145de6ah
+dd 0798bae31h
+dd 0b341576ch
+dd 0a5ab58c1h
+dd 08da2ef82h
+dd 00c6d9f8dh
+dd 0c6f73bcch
+dd 0d7f74e91h
+dd 08dd10f41h
+dd 05f9757f5h
+dd 0b273e5c7h
+dd 0f55393f7h
+dd 0bebd2dd5h
+dd 00cedbd28h
+dd 06e2a8f37h
+dd 05a1792d5h
+dd 0da1a5c28h
+dd 0ed34e269h
+dd 0d1dc89d9h
+dd 02f92ca2bh
+dd 0d81c6730h
+dd 0698b3310h
+dd 0ebf23ff3h
+dd 0ede02a56h
+dd 0ad97c174h
+dd 08577b6a6h
+dd 01f961579h
+dd 057b5105fh
+dd 0bee56907h
+dd 08f27c41eh
+dd 04b59dab1h
+dd 0a44d2862h
+dd 0de634e51h
+dd 09a3d0270h
+dd 079bf3462h
+dd 016870f8bh
+dd 0687740dch
+dd 0c0f27d9ah
+dd 0596c3f50h
+dd 06d115a0eh
+dd 0e1cac5e7h
+dd 0c6e5769bh
+dd 0324ba8bbh
+dd 0ef723cbch
+dd 09b17f84bh
+dd 03a0931e0h
+dd 0ee04ccc5h
+dd 0a69ae512h
+dd 07caf9d9ah
+dd 05fb42097h
+dd 007be7d17h
+dd 0c62c35fdh
+dd 09c189cd5h
+dd 0964451b3h
+dd 0a101450fh
+dd 056e4b123h
+dd 03f8c65b8h
+dd 0a2f8916eh
+dd 0f7159f75h
+dd 02623e2f2h
+dd 0b897a84ah
+dd 0d23bb78bh
+dd 04aae685eh
+dd 0dde12e26h
+dd 05d023c9dh
+dd 0b26da578h
+dd 0656c0c20h
+dd 05cba3034h
+dd 0941bf247h
+dd 0bba0e712h
+dd 0eff2b3edh
+dd 000cf5cd9h
+dd 01c808adbh
+dd 01b81852eh
+dd 029b94576h
+dd 04f49133dh
+dd 05f784c37h
+dd 0228c8e9ah
+dd 0fee5b837h
+dd 051202e97h
+dd 0eda8a562h
+dd 08c2b89dch
+dd 031e4439ah
+dd 0879ca0c8h
+dd 057c66a43h
+dd 03c739b77h
+dd 0d8b50c29h
+dd 02036f7b1h
+dd 01b0c20d5h
+dd 0e04ffb60h
+dd 03c990936h
+dd 061484fceh
+dd 0652d4c1fh
+dd 09c9ec58dh
+dd 097a229cfh
+dd 0e07b61c9h
+dd 0da883b78h
+dd 09c56f668h
+dd 0c4e4f5ddh
+dd 0ccdd69edh
+dd 0742b28b6h
+dd 0ba31e876h
+dd 0c6ff1b9ah
+dd 0f556beb4h
+dd 0e1c533efh
+dd 0598087c3h
+dd 087e12114h
+dd 0751f70a7h
+dd 06161d947h
+dd 07b426a26h
+dd 007aa830dh
+dd 06fc173bbh
+dd 0a57414cch
+dd 0a03d0a20h
+dd 04737b946h
+dd 0a5a8c2b2h
+dd 035aa780bh
+dd 00c7cae60h
+dd 04dd2b5e2h
+dd 04c7e1765h
+dd 0f47c9a86h
+dd 09721b07dh
+dd 0e6a955cbh
+dd 0d9dd80ebh
+dd 0df1fd4adh
+dd 078cba0d6h
+dd 04794e295h
+dd 0e343689ch
+dd 0dbff11e8h
+dd 0b0d6b61ch
+dd 0072f4b1bh
+dd 0bb3c505eh
+dd 088300129h
+dd 06ad7a782h
+dd 0d52de565h
+dd 0a2943449h
+dd 0c8a47639h
+dd 0bd3784c7h
+dd 0f27450ach
+dd 0e3f1bf41h
+dd 010ec5a00h
+dd 0d9e7fe8ch
+dd 01f5f1ce9h
+dd 054e4aa50h
+dd 091907923h
+dd 0ca3f32e0h
+dd 0e973cc57h
+dd 0d3dd0637h
+dd 0482ec3e3h
+dd 07f27dce5h
+dd 0b7549609h
+dd 053792728h
+dd 04c72f980h
+dd 0914ac451h
+dd 0336686bah
+dd 07de191c3h
+dd 0e0ab4a79h
+dd 0cc8f67f8h
+dd 0227a68bfh
+dd 0f0b37988h
+dd 07792521bh
+dd 0ced59bb2h
+dd 03b52e015h
+dd 0dec1bd3eh
+dd 03d1c57e4h
+dd 05c1d0bbbh
+dd 052f48760h
+dd 03117c915h
+dd 0fb4d6c9ah
+dd 02bd200ach
+dd 03e53a745h
+dd 05b20d53dh
+dd 0a27c0c67h
+dd 0dc67713ah
+dd 064d2dc5fh
+dd 0bc5ef738h
+dd 017f5b1fah
+dd 0ed2eb1c6h
+dd 0164b1bdfh
+dd 0b49ade62h
+dd 062fefed1h
+dd 04b654244h
+dd 09616828ah
+dd 037de68dfh
+dd 01ccdfeebh
+dd 0d5d54b42h
+dd 0120bf4c6h
+dd 011c63abbh
+dd 04ace5253h
+dd 0f05d9d9bh
+dd 0fbbe88f7h
+dd 099344749h
+dd 09afddb64h
+dd 0992f1577h
+dd 0ef017ff5h
+dd 03543f1edh
+dd 060e6639ch
+dd 0c06e7c72h
+dd 0344c3e7ch
+dd 03ccadafdh
+dd 0c88400dbh
+dd 087529e18h
+dd 046268b44h
+dd 01a8eb171h
+dd 05e0affc5h
+dd 00a63e3d6h
+dd 0c16e4245h
+dd 0f2e06253h
+dd 0db770d41h
+dd 01d093daeh
+dd 012008541h
+dd 0a276e248h
+dd 0ea287e04h
+dd 086d45316h
+dd 061c4dd4ah
+dd 0f8e41322h
+dd 062593ecdh
+dd 071c3e3b1h
+dd 0bdc89b3ah
+dd 0b8e427c5h
+dd 0343032abh
+dd 0351db345h
+dd 051dabfaeh
+dd 067ac8ebah
+dd 0c97c6978h
+dd 047e36800h
+dd 041241a34h
+dd 04f980872h
+dd 0eea1af85h
+dd 07bc1fe23h
+dd 0712f7fcch
+dd 0bd3c1073h
+dd 05c467aa4h
+dd 0e60d4be1h
+dd 0e0204ba4h
+dd 072df3479h
+dd 09acf4103h
+dd 0392cf1c0h
+dd 0fbf188aeh
+dd 0b11b5731h
+dd 0dd825071h
+dd 0d0a4170ch
+dd 070ae03f2h
+dd 0da2bcc1fh
+dd 09bc6c162h
+dd 0d20e8f6ah
+dd 0b259e1fch
+dd 0226a3b1dh
+dd 0756b6686h
+dd 0d7105827h
+dd 0ac42ef17h
+dd 06f02d9b1h
+dd 00f6af4c3h
+dd 0d6d4b863h
+dd 056331e1bh
+dd 03ea550edh
+dd 03c594ea5h
+dd 0277b3856h
+dd 069c8afa3h
+dd 021fecd15h
+dd 0017bfca3h
+dd 0bae14db8h
+dd 0c117e5d2h
+dd 009c3dd85h
+dd 031106fa4h
+dd 09968b912h
+dd 04d9c1f9ah
+dd 01ce17e35h
+dd 0268f3d98h
+dd 0a9e9943fh
+dd 039a763f7h
+dd 0f582e7a8h
+dd 04f62b9afh
+dd 0cfe11bf1h
+dd 06752c896h
+dd 0b059d079h
+dd 09ad43178h
+dd 07ab0c7d5h
+dd 0d28f380ah
+dd 007e92932h
+dd 0c7b5f37ah
+dd 0d73c6b49h
+dd 0c919f177h
+dd 0c59cb3ebh
+dd 0eb917cb2h
+dd 0c20b3f29h
+dd 09687424fh
+dd 095b42346h
+dd 0d07f9fdbh
+dd 04c8d9b01h
+dd 041764fe7h
+dd 0fb1dba6dh
+dd 00026fc16h
+dd 02aa5bca3h
+dd 09cb8a669h
+dd 09c210fdah
+dd 077489de6h
+dd 0e30e54ebh
+dd 016b91452h
+dd 0b515e1aah
+dd 0562a8a3dh
+dd 078f6333eh
+dd 059105066h
+dd 089b24f3ah
+dd 0be43dfffh
+dd 0676856c4h
+dd 0de64aa7dh
+dd 032117586h
+dd 0664ee110h
+dd 0a754c959h
+dd 075a9539ch
+dd 0cfcb01a2h
+dd 030f6022dh
+dd 04f8a11a6h
+dd 0a9930dd7h
+dd 0be8dd445h
+dd 01938d938h
+dd 0defd2ce1h
+dd 0b094d61bh
+dd 0ceb021e9h
+dd 00af0eeebh
+dd 0e0d71900h
+dd 0c81e394dh
+dd 068b6a025h
+dd 03eb0acb0h
+dd 0bab06c18h
+dd 048341cc1h
+dd 0369552d1h
+dd 065fd4a7ch
+dd 04160f7cdh
+dd 03a392ae0h
+dd 077b61a8dh
+dd 0dbe62a4bh
+dd 0e8dc8a24h
+dd 01590a743h
+dd 03e632b76h
+dd 0e2bffb61h
+dd 069f6c23ah
+dd 036ee75bah
+dd 0c620aa4fh
+dd 0ef9e2fe0h
+dd 033b2c839h
+dd 01d93804eh
+dd 0f4e2b99eh
+dd 0b97be138h
+dd 05b003270h
+dd 07cc76e68h
+dd 03f02e095h
+dd 011cd7866h
+dd 02351a9c0h
+dd 0f0b1aeebh
+dd 0d44d9554h
+dd 0ed87a204h
+dd 08e712543h
+dd 0477b1cech
+dd 0c0ddcaedh
+dd 09211c28fh
+dd 02aca1802h
+dd 0bfef465ah
+dd 06b73215bh
+dd 0c7cd3322h
+dd 04dc43c81h
+dd 0b39789edh
+dd 079753df8h
+dd 0783a5209h
+dd 093f2c322h
+dd 0a9d2638ch
+dd 0cc39bdc6h
+dd 013a828feh
+dd 01e028272h
+dd 03dec1994h
+dd 0f4ff29bdh
+dd 0afb7b1fbh
+dd 059b5d41dh
+dd 01435e6edh
+dd 06ac8d1dch
+dd 0f1f928f8h
+dd 02a46246eh
+dd 00966c21ch
+dd 06d17f3f7h
+dd 0bd339401h
+dd 09bed9bc9h
+dd 0d2747ac6h
+dd 023a1fc9fh
+dd 0822eb01fh
+dd 0ec27ed3ch
+dd 0c2e2add0h
+dd 01727f2dbh
+dd 06e62e6fdh
+dd 09a73d19fh
+dd 02b54e29bh
+dd 0aa35aad5h
+dd 0656063d4h
+dd 0eef19a55h
+dd 0869470e3h
+dd 000291da6h
+dd 01d8a2a09h
+dd 0fa4a7812h
+dd 08987a9bfh
+dd 0fe956321h
+dd 0b629f126h
+dd 00446f3fdh
+dd 0d192d5eah
+dd 0a66c7bf2h
+dd 003ee8ddch
+dd 05c3d36b6h
+dd 0ddfefdcdh
+dd 061475093h
+dd 0729071fch
+dd 0b7671029h
+dd 050b7c56dh
+dd 0c44961dfh
+dd 02b7b28d3h
+dd 073e746edh
+dd 028217717h
+dd 0e640ec12h
+dd 0ca4e4eb4h
+dd 013911affh
+dd 0b1f7cb6ch
+dd 01922a68dh
+dd 058848112h
+dd 0f4baa40ah
+dd 047426111h
+dd 026c6c6b3h
+dd 026296440h
+dd 07b33cd2fh
+dd 03ce9bf1ah
+dd 0924d1c4dh
+dd 0164ab675h
+dd 089e78c67h
+dd 096e53761h
+dd 06fbbc1ffh
+dd 072fb0ee5h
+dd 0d8efac89h
+dd 06cf241f4h
+dd 0e49f2b8ch
+dd 0ca054ae4h
+dd 09dda9225h
+dd 0f6a6545bh
+dd 0610a3738h
+dd 0e38f9bd5h
+dd 05e314ab7h
+dd 0ceb2c8e2h
+dd 03b88509ch
+dd 0f3a7427bh
+dd 0c81783cdh
+dd 0ae7a3511h
+dd 007bb0f3dh
+dd 081a751aeh
+dd 0508bdb72h
+dd 064675aa5h
+dd 060447a07h
+dd 061dd4078h
+dd 01d442c16h
+dd 0ed6017b0h
+dd 012cf920ah
+dd 0ef98f419h
+dd 041c19c14h
+dd 071505f7ch
+dd 0248bcd1fh
+dd 018f5c312h
+dd 040f5f931h
+dd 0041a21c8h
+dd 0ac26f95ah
+dd 0591d563ah
+dd 0a5fb6394h
+dd 0619af47dh
+dd 0ec81863ah
+dd 0f08cf14fh
+dd 0e571f9e4h
+dd 06ce0e890h
+dd 03eb1dac6h
+dd 017694db0h
+dd 07bdb0a5bh
+dd 0ed1b0d43h
+dd 0aa8b036fh
+dd 0c2640d5fh
+dd 0a218efefh
+dd 09cdd9a40h
+dd 019b97a98h
+dd 05794cd73h
+dd 03e504f79h
+dd 0f0190a97h
+dd 0bfe095eeh
+dd 0cb42380bh
+dd 0e00228f5h
+dd 0512caebch
+dd 09eae0b5fh
+dd 0ffff5ba6h
+dd 054b5d00ch
+dd 0a12c970eh
+dd 03d13fb48h
+dd 06f36ab2ah
+dd 0ba9b3883h
+dd 00b07d619h
+dd 03827b11dh
+dd 0cb37ecb5h
+dd 0193b5aceh
+dd 0183d84d3h
+dd 0eebdf234h
+dd 020c6b9dbh
+dd 004fc2f2eh
+dd 0b55a5b72h
+dd 082d87560h
+dd 07be18cf7h
+dd 0c288f9b0h
+dd 0f2b1f8a0h
+dd 032860c17h
+dd 003de7b2ch
+dd 0a7e0047bh
+dd 0d88f34c2h
+dd 0dd04322ah
+dd 03571b180h
+dd 020c246bbh
+dd 07900131ah
+dd 0c6bf45f8h
+dd 01108f158h
+dd 0fddfd378h
+dd 0ef72fff0h
+dd 0f5e39800h
+dd 0bfe06e40h
+dd 0115b6c31h
+dd 03afd86cah
+dd 025468d28h
+dd 0fadd4213h
+dd 0546a6ca7h
+dd 0e79726a9h
+dd 0d5ff3f1dh
+dd 06afbe2c1h
+dd 04c614d11h
+dd 0cde39bbah
+dd 03f6daf2bh
+dd 0fe71feedh
+dd 08cdbd8ffh
+dd 0e6c8135eh
+dd 07f73cb92h
+dd 0409b2de6h
+dd 00ab1f6a4h
+dd 0670033c2h
+dd 0c1b4ebcah
+dd 01f205144h
+dd 056ad8b3ch
+dd 0a611b8b6h
+dd 0aa22c6adh
+dd 0e232032ch
+dd 05da81033h
+dd 05d5bb5b6h
+dd 0aac497f8h
+dd 03558658ah
+dd 0801dc8bfh
+dd 03e9682adh
+dd 063bea0adh
+dd 03da5bc47h
+dd 005bc66f0h
+dd 0828932bfh
+dd 098ce9b95h
+dd 02a0c780eh
+dd 074194733h
+dd 05c96f1b2h
+dd 06f7872abh
+dd 0f4f92064h
+dd 051dc5a3bh
+dd 0e6821b99h
+dd 0a81b8d59h
+dd 0c395e456h
+dd 07f0c2090h
+dd 0131d755bh
+dd 0c2c9b5d5h
+dd 0d7f8fa84h
+dd 0f71053f4h
+dd 0e077dd3bh
+dd 059c40534h
+dd 03f7f7951h
+dd 0aadf68cfh
+dd 0205767a7h
+dd 038792ea5h
+dd 02fb3d848h
+dd 077776498h
+dd 0d6b8924bh
+dd 0129fca6ch
+dd 0b6af8cdbh
+dd 06d67d78fh
+dd 0e821cf5eh
+dd 0d5df289eh
+dd 09cca9f19h
+dd 0dca0aeech
+dd 0b9e8fa0ah
+dd 05ed77c4ah
+dd 016980055h
+dd 07558cca7h
+dd 09adb2e20h
+dd 05dd44627h
+dd 0dc3d0df8h
+dd 0f6dedf3ah
+dd 08e155cfbh
+dd 0d7413b8bh
+dd 0f8e1f9abh
+dd 0cffe294dh
+dd 090959402h
+dd 01f0b5a16h
+dd 03ca948f2h
+dd 0782544a3h
+dd 03ebe34aah
+dd 0bd1c3a3bh
+dd 08370f659h
+dd 0abfc69a9h
+dd 0ad946d35h
+dd 058f9d292h
+dd 04154a0a5h
+dd 0742b4906h
+dd 07c704831h
+dd 0ef798173h
+dd 0c99c9028h
+dd 06fcd0b31h
+dd 08d08b03bh
+dd 05156f084h
+dd 00c2b2a99h
+dd 0de5f5ef2h
+dd 08e27824bh
+dd 012ffac7ah
+dd 066c940a4h
+dd 0ddb487a0h
+dd 08a6b86bah
+dd 037cf80ebh
+dd 0435c33c8h
+dd 0e9ee965ah
+dd 0acf83f57h
+dd 03d162e5fh
+dd 0e7411bc5h
+dd 05707b689h
+dd 051f18023h
+dd 0817263b5h
+dd 01cf707cch
+dd 0c21dd455h
+dd 075e9bde5h
+dd 0369259f9h
+dd 0381d55b6h
+dd 011dcf998h
+dd 05c815de6h
+dd 038b612c6h
+dd 01c2eeec8h
+dd 002311197h
+dd 036f0b1e2h
+dd 07bf97ce0h
+dd 056b43b96h
+dd 03ec79760h
+dd 0fbc5b0a0h
+dd 043f08cf6h
+dd 01474d6edh
+dd 0fbf01dcah
+dd 04ea73e5dh
+dd 0d6efbfb2h
+dd 060f2416fh
+dd 0ca12551eh
+dd 04e10e825h
+dd 085b16d0bh
+dd 0493adfeah
+dd 0e5415053h
+dd 0ec2c8cd4h
+dd 0f9086800h
+dd 0c9da4372h
+dd 089d4a245h
+dd 002826e24h
+dd 0f5b68ba3h
+dd 003551279h
+dd 07a1c9f4dh
+dd 0a45f72adh
+dd 03aaebba8h
+dd 03bffe0d1h
+dd 080e957b1h
+dd 0c6ba9e67h
+dd 084cd4d13h
+dd 0cf93bcf1h
+dd 07a2d2e94h
+dd 0711efa3ah
+dd 0124ed3ach
+dd 064613e51h
+dd 0e3f87900h
+dd 03be10ae2h
+dd 09e8fd702h
+dd 0112ff9e4h
+dd 0a8f766c2h
+dd 0a3fb944ch
+dd 09934d893h
+dd 07bc3e68ch
+dd 06135141ch
+dd 0a4ee3d71h
+dd 06b3eb4b1h
+dd 0d8f61895h
+dd 03eef6b9ah
+dd 05910f72dh
+dd 05e48d15fh
+dd 02425908eh
+dd 0bc625174h
+dd 0b229c9e7h
+dd 0bf23cf84h
+dd 0cd7f6ee3h
+dd 0eb5d3b8dh
+dd 04864db89h
+dd 013fa42dbh
+dd 072ab0af7h
+dd 069a10ca4h
+dd 0face9219h
+dd 04c9021f9h
+dd 039c7e8f0h
+dd 02ebecce5h
+dd 0dc249288h
+dd 0d973ed48h
+dd 033168c26h
+dd 01c2e98a6h
+dd 0c931ba50h
+dd 072327b0eh
+dd 0b23d669eh
+dd 0c7d75032h
+dd 08a26c5b1h
+dd 01c52eac9h
+dd 05c0c0075h
+dd 0c7397958h
+dd 0fcf155a4h
+dd 0a6d5f3a3h
+dd 0098ae4efh
+dd 00fe8f6edh
+dd 0c2d4edbeh
+dd 0a0f37852h
+dd 0eeda27a8h
+dd 03eacfa95h
+dd 09d4e79c4h
+dd 01dbcc01fh
+dd 06d453b08h
+dd 07d768e55h
+dd 0fd7b02efh
+dd 0f1c151cah
+dd 08a402df4h
+dd 0ccc98aaeh
+dd 0702cbec1h
+dd 0b3e7fa3ch
+dd 01d36a33ah
+dd 0a3d47452h
+dd 083364d0ch
+dd 01f38a92eh
+dd 034ceec11h
+dd 03f8c3c18h
+dd 0089bfb63h
+dd 0520db388h
+dd 02bcfdda1h
+dd 0087d4c75h
+dd 0ed0f06b1h
+dd 079b9a99bh
+dd 0bfde9e7fh
+dd 0a756a91ch
+dd 0d105602dh
+dd 0c8473b24h
+dd 01e3d3dabh
+dd 0261a9c94h
+dd 01b4074cbh
+dd 051131942h
+dd 0a63d7ce3h
+dd 0f735453eh
+dd 0aea68f26h
+dd 02292b2cfh
+dd 071188dc6h
+dd 06ece3b0dh
+dd 0252005ceh
+dd 0ee8a4cffh
+dd 0a91195adh
+dd 05c0e8f3dh
+dd 0d7512908h
+dd 032171b44h
+dd 0cecf6945h
+dd 05492da3eh
+dd 062e2cb02h
+dd 05ef16b76h
+dd 0fa1ad556h
+dd 0837cbd24h
+dd 0e21e9242h
+dd 0c5da9025h
+dd 01af81faeh
+dd 05a200ddeh
+dd 0bbb96234h
+dd 0aa6471f6h
+dd 0301dc2feh
+dd 085aff1b8h
+dd 046fb00bbh
+dd 02221f84ah
+dd 064f29b21h
+dd 00f52ce7fh
+dd 00cebb71bh
+dd 00b749e15h
+dd 0bc146c14h
+dd 002d3d137h
+dd 0cd2fb2e6h
+dd 0fb520ab3h
+dd 067bda1bch
+dd 07e789148h
+dd 014a13939h
+dd 0d110c24fh
+dd 0123b888bh
+dd 00f649db0h
+dd 0e058ee4bh
+dd 02c0f6415h
+dd 097b654fch
+dd 0b09f4be9h
+dd 0c05761afh
+dd 01dfefeb6h
+dd 0c14d8659h
+dd 043159df1h
+dd 060af8832h
+dd 08ecd70d3h
+dd 06dd726bbh
+dd 0859ab0ebh
+dd 04337ddb8h
+dd 0cc05499ah
+dd 09192e15fh
+dd 07e1dabaah
+dd 02e5dfd11h
+dd 07f45eaddh
+dd 0cfdefcb5h
+dd 04fb88f65h
+dd 0f386a36bh
+dd 066d862a8h
+dd 0c4fc6c2ah
+dd 095a9dd72h
+dd 020458b6ah
+dd 051d660a4h
+dd 04ec9ff72h
+dd 037c147afh
+dd 0da60d94ah
+dd 0eb9d609ah
+dd 0a7578543h
+dd 05bc6c432h
+dd 015590f71h
+dd 003c237e9h
+dd 0b2034949h
+dd 069a844efh
+dd 016da65f9h
+dd 00b6e88cah
+dd 03f86f373h
+dd 0264c7e02h
+dd 0daee59dch
+dd 0cee8c470h
+dd 0740b692bh
+dd 048e83e6ch
+dd 02570ad29h
+dd 03c7cacb8h
+dd 092ca7fd2h
+dd 00229d595h
+dd 01c628e7ch
+dd 0f390a61eh
+dd 04c374fcdh
+dd 08f0c9361h
+dd 0d466dc07h
+dd 01d244019h
+dd 0d17005eeh
+dd 0cf39a23dh
+dd 0a431fce0h
+dd 0e3c936dbh
+dd 0a091fb6dh
+dd 037d37481h
+dd 06b92cef9h
+dd 086c0f16ch
+dd 075415dc0h
+dd 0f93280e0h
+dd 06a0ef095h
+dd 0b3d22789h
+dd 099723df3h
+dd 08b40f941h
+dd 0a5348659h
+dd 07718152ah
+dd 0effc5fd6h
+dd 0f356190bh
+dd 01cffa232h
+dd 035e84a1eh
+dd 072316cc5h
+dd 03a319c99h
+dd 0c9bf3681h
+dd 07e119428h
+dd 0ad5357f1h
+dd 0dd0021b5h
+dd 009fc0e0bh
+dd 029abdceeh
+dd 0ba8fdc04h
+dd 0d0977f8fh
+dd 0a0d3c819h
+dd 0b831b1d1h
+dd 00adbb26dh
+dd 028c3aa53h
+dd 01f835721h
+dd 060aa33c2h
+dd 097323a65h
+dd 073a27026h
+dd 076835d9ch
+dd 02da81796h
+dd 03ac74faeh
+dd 0beb8ee4ah
+dd 01d951480h
+dd 09d1662dch
+dd 01aaa5bf6h
+dd 06e139f85h
+dd 0ae325e20h
+dd 0d60a4fb2h
+dd 00b15e644h
+dd 0f04a39d9h
+dd 0e4642c30h
+dd 06539ac3bh
+dd 0f9c7ed79h
+dd 0e5677da3h
+dd 0d945629ah
+dd 0cc0a3c34h
+dd 01b9e5577h
+dd 0402a684ch
+dd 0fac80bd7h
+dd 0fa24dab0h
+dd 0bfba432bh
+dd 03341a1c9h
+dd 0a58e6121h
+dd 03d21ae7ch
+dd 0ac51a04bh
+dd 080d39fe0h
+dd 068efd1b3h
+dd 0dd6adf44h
+dd 0cc2b1803h
+dd 00de1ac75h
+dd 0437f7ae6h
+dd 049140b09h
+dd 07b80267dh
+dd 020c14c31h
+dd 02be747edh
+dd 01754cbb6h
+dd 09df43c5bh
+dd 0ec6877bfh
+dd 02525b37fh
+dd 0c3c1ba9ah
+dd 0ac68a8afh
+dd 0994b17c6h
+dd 016703f26h
+dd 04b238f22h
+dd 06e579b2eh
+dd 0dd64fe51h
+dd 04ec6cc03h
+dd 01e7454b3h
+dd 0179f6bb8h
+dd 06c30049fh
+dd 0fd3e916ah
+dd 03ab3e40bh
+dd 081d8d82bh
+dd 0ef4a4f1bh
+dd 0a0306334h
+dd 0eb383313h
+dd 0c7ade312h
+dd 08121b8feh
+dd 01be12808h
+dd 0969cdbe0h
+dd 011721c28h
+dd 02187d72dh
+dd 0fbebb26dh
+dd 0573c788eh
+dd 0537b7c40h
+dd 08b20be26h
+dd 0a1363a4ch
+dd 0d09f4039h
+dd 0cc9783ffh
+dd 0bf6c8b7ch
+dd 07786df87h
+dd 039905200h
+dd 01751b3e9h
+dd 0777e90b6h
+dd 04711e13fh
+dd 07f81062bh
+dd 04322b9c0h
+dd 04ceab664h
+dd 06cc56a21h
+dd 047304a8bh
+dd 034313e5fh
+dd 0b09e0acch
+dd 02eb3e778h
+dd 0de47e05bh
+dd 06da96f8dh
+dd 0a4bb2deah
+dd 06642e4fch
+dd 0b76cd86ch
+dd 0f1159f46h
+dd 075bcc4b5h
+dd 00197499eh
+dd 03a54d9a7h
+dd 0c67081a5h
+dd 00dd00ab8h
+dd 0f5833a47h
+dd 051ffa2c3h
+dd 0ef536ca0h
+dd 06bd48d1ah
+dd 05cf3c2cfh
+dd 049326405h
+dd 034aa612eh
+dd 0b878db93h
+dd 0038de602h
+dd 0d20363b2h
+dd 00eeafe17h
+dd 018003d63h
+dd 078fa0adfh
+dd 061a20535h
+dd 017ccb8e9h
+dd 0aa7e9cedh
+dd 0974a4e36h
+dd 076da1676h
+dd 0f40c1e71h
+dd 05b9d19ffh
+dd 0831a85f7h
+dd 0f74d68cfh
+dd 01c48489ah
+dd 05cfd4d52h
+dd 00c4772e9h
+dd 0b4e5c8b0h
+dd 0cfff8cd7h
+dd 05a877c1eh
+dd 0e82a7844h
+dd 08788def9h
+dd 0ccab13abh
+dd 0764532e7h
+dd 0a3d16e40h
+dd 002343c22h
+dd 05ee02c1ah
+dd 07a4c6c3ah
+dd 02e13c50bh
+dd 0f1babe2ch
+dd 0cf527593h
+dd 0d6211909h
+dd 06da281d1h
+dd 060a32c78h
+dd 0f476a650h
+dd 0012de797h
+dd 0f5047255h
+dd 05d0d2926h
+dd 011b303d3h
+dd 0eab5b261h
+dd 0334cf282h
+dd 0c902597eh
+dd 0736d94b1h
+dd 0d29953efh
+dd 03e326ea6h
+dd 05064251ch
+dd 09ece7464h
+dd 053537f23h
+dd 04365436dh
+dd 0c2b1ebd0h
+dd 0c1ba71e8h
+dd 0ec406385h
+dd 0bba73aa3h
+dd 0ee201829h
+dd 0cf102b0ch
+dd 0b31b0813h
+dd 033c1c5f4h
+dd 02a777f1ah
+dd 0d84561d2h
+dd 038cf4409h
+dd 030995ac2h
+dd 0ce891d13h
+dd 0e1f9bccch
+dd 06129d7cbh
+dd 0c4e2dbc3h
+dd 0296406fch
+dd 0d88f340fh
+dd 0a1d79601h
+dd 0cd938886h
+dd 0da7bb17fh
+dd 0547914bch
+dd 0bc07c385h
+dd 0dd44b9d6h
+dd 01c82a762h
+dd 08258f5c9h
+dd 0394e8ff1h
+dd 0752429a3h
+dd 0437941cah
+dd 0d98e679dh
+dd 085c01278h
+dd 0f26c71d9h
+dd 0722c165bh
+dd 0eddefb37h
+dd 0430d1318h
+dd 08535edbeh
+dd 0da17e414h
+dd 08dd73125h
+dd 01c4924f1h
+dd 0322ec320h
+dd 0f48f0feeh
+dd 0b2903dd8h
+dd 0056b91adh
+dd 099bf6749h
+dd 0ed2ff54ch
+dd 02ef36293h
+dd 04e9a6679h
+dd 0c10aaf7ah
+dd 01e1cd303h
+dd 0c0fb0ab8h
+dd 06116d592h
+dd 04264ca4fh
+dd 01cd50083h
+dd 034935db9h
+dd 0ee1ec826h
+dd 00a740504h
+dd 0de103771h
+dd 087aaee5ch
+dd 061e5bb4ah
+dd 03eb34a82h
+dd 0a8496d08h
+dd 03b9288b3h
+dd 0a793ac13h
+dd 022c724beh
+dd 0334d79b0h
+dd 0b0be751dh
+dd 0931b7ffah
+dd 0d4d5cc82h
+dd 038b7e109h
+dd 0d7a38f71h
+dd 064251cf8h
+dd 0bb89fc2ch
+dd 0cb285aa7h
+dd 09d72a011h
+dd 07b8c27fah
+dd 0ed704db8h
+dd 0385cf44eh
+dd 0466b3655h
+dd 03021eec0h
+dd 0ad4e7fd2h
+dd 0acefd57ch
+dd 0df9430f0h
+dd 09569bd6eh
+dd 01d87cdb5h
+dd 0b24fdc93h
+dd 034782cc4h
+dd 0293ddc57h
+dd 066f82eech
+dd 0233254ddh
+dd 0f1dcd36ah
+dd 0cb4d74b0h
+dd 074a48bc8h
+dd 0bd4caf43h
+dd 0be27bd0ch
+dd 03769431bh
+dd 0c17c5436h
+dd 034a31b0eh
+dd 059428671h
+dd 07723c031h
+dd 05c089c9dh
+dd 01e08c3ddh
+dd 0f50fe13ah
+dd 0098fcc4bh
+dd 0bd3f6597h
+dd 0ec06c8d4h
+dd 0286d99bch
+dd 04bd9a720h
+dd 030b011bah
+dd 07ced3e9eh
+dd 0d2be7378h
+dd 0d42c871eh
+dd 0281bafd5h
+dd 0cc18ed14h
+dd 09943e1b6h
+dd 0594cdeach
+dd 0741ad77ah
+dd 0aae8943bh
+dd 05974e89fh
+dd 02ef10649h
+dd 061d6eee3h
+dd 0e6ec0e83h
+dd 023e4ed2eh
+dd 096b4a274h
+dd 032ee8e33h
+dd 02e20e090h
+dd 05894b79dh
+dd 03765fadah
+dd 0da9384bdh
+dd 0d01788b1h
+dd 0c8bbdd4ch
+dd 08595d9c9h
+dd 03f858641h
+dd 0f2315d73h
+dd 0b8ce2ef9h
+dd 0bd00141ah
+dd 0704a4890h
+dd 0c1b3a3d0h
+dd 04a7fc993h
+dd 0db3e6303h
+dd 049419216h
+dd 0f093b87dh
+dd 069e6a0d9h
+dd 0c9ae4411h
+dd 01b1da37bh
+dd 045bfc417h
+dd 0ce694c8ch
+dd 061c6b231h
+dd 08b3735c4h
+dd 0f1708fe1h
+dd 01ac97a64h
+dd 0ad16be93h
+dd 0ceecb6e7h
+dd 0a05d5691h
+dd 0596c3e0ch
+dd 0d6cf5fcah
+dd 030d52e23h
+dd 045842d35h
+dd 050dab3b6h
+dd 08e901c67h
+dd 0a9ffa4e8h
+dd 03c11df7ah
+dd 0b508b0c0h
+dd 035b05e15h
+dd 0ce6d492ah
+dd 0868f8bech
+dd 0ec2f50d1h
+dd 05eea2109h
+dd 0dc83b7f1h
+dd 0b4ecbca9h
+dd 0537b5260h
+dd 072eb6aa9h
+dd 0b21117e3h
+dd 09f18172fh
+dd 0d6109d7dh
+dd 0f9cca696h
+dd 05e028c69h
+dd 0facf0df3h
+dd 0063af9ffh
+dd 0082c93f2h
+dd 0855b4cf0h
+dd 0fb7769c2h
+dd 0669e6292h
+dd 0f6a4a4b8h
+dd 00dd5ad68h
+dd 07ea5b1d4h
+dd 019ea3b03h
+dd 08cf1c9d0h
+dd 080949211h
+dd 014b91481h
+dd 018728919h
+dd 047544831h
+dd 0bc4ab4f9h
+dd 032605443h
+dd 01e0c2da5h
+dd 0f8330e88h
+dd 0821c8fe5h
+dd 04e313da8h
+dd 09587e084h
+dd 090cc33c7h
+dd 0bd5e0e6eh
+dd 0e64cbd19h
+dd 0fc1d42eeh
+dd 0c5fcc230h
+dd 0e2e52317h
+dd 0452c5329h
+dd 07df0ba4ah
+dd 07cb35dd5h
+dd 053e7752dh
+dd 0c43d5477h
+dd 0e268326ah
+dd 0c968c6e6h
+dd 04f2899b0h
+dd 06aadc2cch
+dd 04460be16h
+dd 0d61c4471h
+dd 05b75804bh
+dd 0e9cb999eh
+dd 0301358adh
+dd 059fac3fbh
+dd 042e57ffch
+dd 06062b15eh
+dd 0fb323e2ch
+dd 09fb5f54bh
+dd 05353f0b5h
+dd 0acbfc336h
+dd 0fdcd6e9ch
+dd 0e1dc9108h
+dd 0b033670fh
+dd 075314922h
+dd 0f8c7a125h
+dd 040849b95h
+dd 00320e2d7h
+dd 0c01f5c7fh
+dd 03f31606ah
+dd 0a1083b18h
+dd 08487a0f2h
+dd 060a6a2f1h
+dd 02da09c01h
+dd 0683b2c41h
+dd 0b61486f1h
+dd 0ada06ee5h
+dd 07448587ah
+dd 071adf0c4h
+dd 0f06f3a13h
+dd 0917ca65bh
+dd 032f4558dh
+dd 00ece5675h
+dd 031f9392fh
+dd 0d01fa220h
+dd 00cadcc28h
+dd 0a688b815h
+dd 0c8f3d99fh
+dd 0ae7840ach
+dd 031cf5555h
+dd 0fdabffafh
+dd 029f8f1bfh
+dd 03e8b30dah
+dd 0573236e1h
+dd 0bd719b84h
+dd 0e1cd76c0h
+dd 04be5f8feh
+dd 02787dc8eh
+dd 0f0c7eb34h
+dd 0f3f65656h
+dd 0dda3535eh
+dd 0e9895a52h
+dd 0b9ee6011h
+dd 079be4dfah
+dd 050570ad4h
+dd 02db89c12h
+dd 0571d7584h
+dd 0069c3299h
+dd 02ecd5553h
+dd 03eaf32d2h
+dd 0c453b811h
+dd 0fd524faah
+dd 0d91772b6h
+dd 02006e9dch
+dd 0c5815f55h
+dd 0c1a9e273h
+dd 01193639dh
+dd 0a3b02474h
+dd 0b2c8b732h
+dd 0b12c75ddh
+dd 0cfd00bd8h
+dd 07c20cd7ch
+dd 0bc03688dh
+dd 098227e08h
+dd 09c5e570eh
+dd 002c8a75fh
+dd 0471c9893h
+dd 02cde9011h
+dd 06f1c6ee0h
+dd 0b6801b4bh
+dd 007abf063h
+dd 0580454bfh
+dd 0189bccaeh
+dd 0de20ac64h
+dd 06049d051h
+dd 05a7b87a8h
+dd 05e50aed4h
+dd 02c51bd7dh
+dd 0c2658f76h
+dd 0af782edah
+dd 0b8312bdah
+dd 0a44bc605h
+dd 047f877c8h
+dd 09d39a267h
+dd 0f53b993eh
+dd 02a912cf7h
+dd 05595f996h
+dd 013279cf0h
+dd 0257dca13h
+dd 0c825c3b1h
+dd 0242c7b7ah
+dd 093e3209fh
+dd 01d401655h
+dd 0616d6db9h
+dd 021ce56a8h
+dd 036dde5d4h
+dd 0451267a9h
+dd 0f66d45ddh
+dd 077c605e5h
+dd 0afba528ch
+dd 07d73f982h
+dd 0fc025307h
+dd 0bf6b5930h
+dd 0d80382a8h
+dd 03df0e1cfh
+dd 04537d1a6h
+dd 0c54a6cdah
+dd 0c5c049c1h
+dd 0f656e289h
+dd 04581876dh
+dd 04076caf9h
+dd 0d8d59775h
+dd 0983cfa18h
+dd 0cd29da58h
+dd 0de94b918h
+dd 0e20a7141h
+dd 0c5486fa8h
+dd 0d98988a1h
+dd 092f744d1h
+dd 0fd2ac9d4h
+dd 06780beb4h
+dd 0e298273eh
+dd 0067feb1fh
+dd 04e0cf581h
+dd 07a50ebebh
+dd 0abf9b75ch
+dd 08043643ch
+dd 0438fa641h
+dd 0a7fc8e95h
+dd 0abb65914h
+dd 09e0224afh
+dd 0686f7edeh
+dd 0694a3d6bh
+dd 070c040b4h
+dd 0d20c932eh
+dd 0eb4de51dh
+dd 00f4448b3h
+dd 0836b36b8h
+dd 01e32abbah
+dd 0bf083b10h
+dd 02fa09b38h
+dd 0743dce1dh
+dd 016221443h
+dd 0d1ea2f5fh
+dd 04e8e81a2h
+dd 0587b6bceh
+dd 0bfa56f84h
+dd 016ace68ah
+dd 0b2645e4ch
+dd 0aea612a4h
+dd 01ecac992h
+dd 0b4193008h
+dd 0ed43b7efh
+dd 0d7d58271h
+dd 059b99e62h
+dd 0fc1997d0h
+dd 0d4f9047dh
+dd 002f8bfedh
+dd 0bb021f2ch
+dd 02ee20f88h
+dd 0a35277edh
+dd 0b6b7d74bh
+dd 063e7c927h
+dd 0db75d642h
+dd 0ba6f17bfh
+dd 069a1480bh
+dd 0add9a80fh
+dd 00ad5bfe3h
+dd 01695b9e7h
+dd 0e6eb59dfh
+dd 0d309e34bh
+dd 0eb9ecd35h
+dd 04aa2cec9h
+dd 089337010h
+dd 0a124bfbah
+dd 0dfaf887dh
+dd 02d44a870h
+dd 0d0c36d44h
+dd 0b87ff099h
+dd 0667c7a6eh
+dd 0bb09a38dh
+dd 01d4f0987h
+dd 0227726ddh
+dd 00ec5f96dh
+dd 0cdfe4891h
+dd 0d5d2882ch
+dd 05edc869ch
+dd 0f08aa0beh
+dd 0cb27cb33h
+dd 0bbd673b2h
+dd 0f4acaefch
+dd 01a8e1c8bh
+dd 067b488a9h
+dd 0fc7f15ffh
+dd 0648da577h
+dd 00083b3b9h
+dd 00ef3eb91h
+dd 0af816b13h
+dd 07e482116h
+dd 0aa715cb2h
+dd 09f4c7f2ch
+dd 01d501b30h
+dd 045df046ch
+dd 0f169db36h
+dd 0f179b3cah
+dd 0fa974e81h
+dd 0506ce8ach
+dd 01d918a29h
+dd 00679945bh
+dd 014079a3dh
+dd 0180b29c0h
+dd 079a6b2b8h
+dd 03077d3bdh
+dd 07bcd2733h
+dd 02b486036h
+dd 0dddecaa3h
+dd 023820101h
+dd 003c4b043h
+dd 07b2967fch
+dd 081b9b525h
+dd 0ffc84dc3h
+dd 0007bdab5h
+dd 07446da12h
+dd 09b2e5624h
+dd 0ebc69142h
+dd 0d94b364eh
+dd 06965711fh
+dd 0965200e2h
+dd 0e90d2ca4h
+dd 006edf645h
+dd 09272daadh
+dd 0c3472030h
+dd 0215b19beh
+dd 0302f15cah
+dd 0688ebbdbh
+dd 067d4a98ah
+dd 08c65a6abh
+dd 0d59087d0h
+dd 0afaca79eh
+dd 098540c34h
+dd 08aef9dc6h
+dd 09fc1b89bh
+dd 022c8ed51h
+dd 0fb6614c1h
+dd 093358366h
+dd 0133ccb3ah
+dd 08e5f18b1h
+dd 06cb5401dh
+dd 075e27b48h
+dd 0933d26d5h
+dd 0f3b1bd9fh
+dd 05b54c884h
+dd 0c59d8912h
+dd 0c4573404h
+dd 015fc166ah
+dd 0ce3253b1h
+dd 0d726aa7eh
+dd 06f5d30cah
+dd 07c711c43h
+dd 0362fccddh
+dd 06e0cea75h
+dd 07dc3899fh
+dd 06dc3f826h
+dd 05d8afa92h
+dd 02896936ah
+dd 06700746ah
+dd 0744d2975h
+dd 0c1a79495h
+dd 0c3fe4b14h
+dd 0e8caee15h
+dd 083ed3be2h
+dd 09edac458h
+dd 06e664f25h
+dd 0a2cdb226h
+dd 0bc85a02fh
+dd 0bdf1b834h
+dd 0aaa48dd8h
+dd 05e760774h
+dd 0ad241086h
+dd 0a1fae982h
+dd 0a361fd0ah
+dd 0f04853fch
+dd 0ac3953aeh
+dd 07fcd1720h
+dd 0ebc49b70h
+dd 00619e5fah
+dd 02d50260fh
+dd 075e096b9h
+dd 09346b67fh
+dd 0bddb07aeh
+dd 0e28a93a4h
+dd 0444b6607h
+dd 0de8881bfh
+dd 0e90a3415h
+dd 084651f76h
+dd 014861efdh
+dd 0e5a971beh
+dd 08b7c5c7fh
+dd 050e7e380h
+dd 0bafb6f12h
+dd 030fc4471h
+dd 07b0c8d89h
+dd 016037d31h
+dd 0fd79adfbh
+dd 04ec7d03ah
+dd 0a5bda640h
+dd 0615abc93h
+dd 0d836de6ch
+dd 0e81c459ch
+dd 0b547f766h
+dd 033154cdbh
+dd 03becdd19h
+dd 0706922a3h
+dd 04bf66c31h
+dd 069fc73e8h
+dd 02d6c3c54h
+dd 0b5ceaf73h
+dd 088478638h
+dd 082936733h
+dd 0fc618ee2h
+dd 0af5da33fh
+dd 0dd15b960h
+dd 0196a2f74h
+dd 080174d67h
+dd 0c7831858h
+dd 0e186902dh
+dd 04b09a36fh
+dd 00b5bf5aah
+dd 024b3e51dh
+dd 0020eab0ah
+dd 027ece5e5h
+dd 05d4172fch
+dd 0d137d0e7h
+dd 0e2121e56h
+dd 0016170b5h
+dd 0c3b1ff8ch
+dd 0aa709cb7h
+dd 0ccadf1b0h
+dd 0df0e09d5h
+dd 057e33961h
+dd 0c0886b5fh
+dd 01ff1b3c6h
+dd 0fd258537h
+dd 0d9bce35ah
+dd 0620b48cch
+dd 054ac0465h
+dd 08da33e33h
+dd 040a1d61dh
+dd 09ebda60ah
+dd 05c109d58h
+dd 0b2a3255eh
+dd 0f5b92ef1h
+dd 00b84d294h
+dd 082c829a0h
+dd 0476927e6h
+dd 0aa708effh
+dd 0b44d3ce1h
+dd 031d9dafch
+dd 01020dd55h
+dd 007444f61h
+dd 0a536cb2ch
+dd 0bc14c2dah
+dd 0a08a28e3h
+dd 07049fa71h
+dd 090c0e39dh
+dd 0b2c744d7h
+dd 0eda77d78h
+dd 0383ed904h
+dd 04d538820h
+dd 0351188d9h
+dd 02f222e69h
+dd 067afd3c5h
+dd 09bc41124h
+dd 0c8349aadh
+dd 07711634fh
+dd 0f30fb122h
+dd 081c3009ch
+dd 0b14ea0cbh
+dd 0da3fe3e5h
+dd 013b5346bh
+dd 086e15f57h
+dd 0d0ddeb7ah
+dd 0d190c4dah
+dd 070935ab8h
+dd 03a51d53ah
+dd 079708007h
+dd 0b28c317fh
+dd 02abe0c28h
+dd 0c9c26cf4h
+dd 088ebb853h
+dd 08327e0e6h
+dd 06d914580h
+dd 0e2c1537eh
+dd 09aa2e4d1h
+dd 066740722h
+dd 08bbaa9c6h
+dd 08b465540h
+dd 0a0c77aaeh
+dd 06b46f75fh
+dd 077633133h
+dd 06541a094h
+dd 0a62ff14eh
+dd 05b2b385eh
+dd 059da6f53h
+dd 0961b24cfh
+dd 0fb610ab1h
+dd 09ec6afe8h
+dd 0285aecf2h
+dd 06c0caf29h
+dd 0217a5631h
+dd 08df8dae0h
+dd 0193094f9h
+dd 08bbe9f71h
+dd 0df1cc152h
+dd 0104a697eh
+dd 03e311909h
+dd 027177097h
+dd 0a71374a1h
+dd 05e213275h
+dd 091c50909h
+dd 0d4f431aah
+dd 091728fb2h
+dd 0e49c82f4h
+dd 0b6d3543dh
+dd 09db0879dh
+dd 034563770h
+dd 0905b60bdh
+dd 0c3a89052h
+dd 080340dadh
+dd 0c58da991h
+dd 0d029c861h
+dd 009abb388h
+dd 0a40f2872h
+dd 0b5953101h
+dd 0aede8ac5h
+dd 04715ec79h
+dd 0f4d33d38h
+dd 0a87f86b2h
+dd 02653c3a3h
+dd 017405fedh
+dd 048ed776eh
+dd 0c6b893abh
+dd 05094c4dah
+dd 03ce48252h
+dd 0600cf397h
+dd 0ae7e99b1h
+dd 0c5c60071h
+dd 011806e59h
+dd 05621c808h
+dd 0f260f29dh
+dd 0dbb60b49h
+dd 0b0e5c570h
+dd 0cbead4bfh
+dd 0a05a9844h
+dd 0b6da8775h
+dd 0cded4947h
+dd 09cedef14h
+dd 0b97f7ef5h
+dd 00957e98dh
+dd 01081ef22h
+dd 076468167h
+dd 0cb921390h
+dd 0eeca84dfh
+dd 0e27f1583h
+dd 09cfa3720h
+dd 0779bcd93h
+dd 0d736a5d7h
+dd 0064874f1h
+dd 0c15805beh
+dd 0384cc937h
+dd 0ab6faf39h
+dd 0bb595971h
+dd 0fec70499h
+dd 064abd3d8h
+dd 0a5eb3303h
+dd 06483fbc3h
+dd 0708f6796h
+dd 04e29930ch
+dd 01fc439e6h
+dd 0ef129f5ah
+dd 07001bbech
+dd 029775133h
+dd 06bac28a9h
+dd 0161576cfh
+dd 0eaa9d0f9h
+dd 0c07a3e39h
+dd 09ea8bdceh
+dd 030e648e0h
+dd 0da55ab6fh
+dd 053d5b093h
+dd 0859ffd32h
+dd 055c764d0h
+dd 045cc24feh
+dd 0ce387eech
+dd 0fc4d4534h
+dd 028b10af8h
+dd 0c7ffdd02h
+dd 0b2e1303fh
+dd 069190d70h
+dd 00ec28dc3h
+dd 09cb3410ah
+dd 0fd0b3aefh
+dd 078867f8eh
+dd 028f172dch
+dd 03284b8f9h
+dd 003e564c2h
+dd 081d08700h
+dd 075b680abh
+dd 0f10da3e3h
+dd 0463f2b6eh
+dd 01d027aech
+dd 0edd5d9e5h
+dd 032fea2f2h
+dd 02eed722eh
+dd 0df2bad99h
+dd 068a88282h
+dd 0b25cdb99h
+dd 07abcc905h
+dd 01dc6de20h
+dd 0e8b6cbfbh
+dd 00190f3f4h
+dd 051833418h
+dd 06d1423e1h
+dd 074181d9bh
+dd 010a593c6h
+dd 0bdaed07dh
+dd 0fe9743beh
+dd 0695c1f43h
+dd 0838c05eeh
+dd 0bd055779h
+dd 0b8668d58h
+dd 029a89d43h
+dd 02ce036a8h
+dd 058af4f14h
+dd 001721ec3h
+dd 06ef1eb0fh
+dd 0592097fdh
+dd 00e3005e1h
+dd 0f86c38f8h
+dd 0926185f0h
+dd 0e3998368h
+dd 0581078f2h
+dd 0529ac0bch
+dd 0d5bc9a96h
+dd 05034789dh
+dd 03a92a125h
+dd 0bea15464h
+dd 023f49eabh
+dd 0fcdebf96h
+dd 05a2ae69dh
+dd 0c27f6beah
+dd 04fa8306fh
+dd 044c27babh
+dd 0abdcda37h
+dd 0f55c9845h
+dd 0fda77a8ch
+dd 015e498c5h
+dd 0c44aa51eh
+dd 01f1298bfh
+dd 04cb0b6bbh
+dd 0f6cad60dh
+dd 0f484ac5eh
+dd 0834990b3h
+dd 028519488h
+dd 0614cba1eh
+dd 034aaf346h
+dd 042537232h
+dd 0dfb92f65h
+dd 0a2784ac6h
+dd 09ce779c0h
+dd 00fc4521eh
+dd 0998e3458h
+dd 075b7cccbh
+dd 0e7c9baf9h
+dd 007acabd1h
+dd 0b36d6534h
+dd 0a74250e2h
+dd 0e8dca146h
+dd 0daf79837h
+dd 017f96e70h
+dd 034dcded3h
+dd 0bee4c8ddh
+dd 090d657dch
+dd 012b4902eh
+dd 00597e1abh
+dd 0976cd397h
+dd 01b6bb968h
+dd 03d7efde0h
+dd 0f1a99877h
+dd 054f78b7bh
+dd 083ebbb27h
+dd 094c56f3ch
+dd 062b9e2efh
+dd 0548c6397h
+dd 08200d62ch
+dd 0a36f5f30h
+dd 072254c85h
+dd 0a96c6d3bh
+dd 0bcd0cd28h
+dd 0c0ea048dh
+dd 06abef98fh
+dd 094941a89h
+dd 0e571700eh
+dd 016d2fed5h
+dd 07b31850bh
+dd 0b18e7a66h
+dd 05db07c44h
+dd 0dc6ca356h
+dd 08525ae6dh
+dd 090ac5151h
+dd 001e4dca5h
+dd 0754bc883h
+dd 0af1475dbh
+dd 00e4de4afh
+dd 0aecaf96ch
+dd 00bea001ah
+dd 0943530f2h
+dd 01fda4579h
+dd 0a8ca714fh
+dd 0b004abc7h
+dd 032029884h
+dd 033f4b44dh
+dd 0ce8744e1h
+dd 0f25ba12dh
+dd 0e40af279h
+dd 08662f9a6h
+dd 02896ba79h
+dd 0ab4e6f5bh
+dd 0238ab37dh
+dd 066591745h
+dd 0f4b5f683h
+dd 077848083h
+dd 0798eace2h
+dd 0058fbcf9h
+dd 08476fb2ah
+dd 0c70b52feh
+dd 04d244f48h
+dd 085b99ee2h
+dd 0cbe451ech
+dd 05203e807h
+dd 0c5ff1182h
+dd 02664fa19h
+dd 02e6a2269h
+dd 084610fd8h
+dd 0521e82ddh
+dd 0c5588e89h
+dd 0a6e4e8ech
+dd 0720c7747h
+dd 0c3206798h
+dd 04ef21a40h
+dd 04fd0392bh
+dd 0eac6bd31h
+dd 0efe78d19h
+dd 0bd85a686h
+dd 0963676c4h
+dd 094c8ffafh
+dd 026a437cch
+dd 0b93041b3h
+dd 054d82445h
+dd 01e72058bh
+dd 09ba7eecdh
+dd 0060af3eah
+dd 0fec29c9fh
+dd 00e1f8a17h
+dd 06d295739h
+dd 08aa3b49ah
+dd 076512991h
+dd 0bc54fa9fh
+dd 062f3b51eh
+dd 0dccbb30fh
+dd 02bb223d8h
+dd 049926d21h
+dd 0ca94fad0h
+dd 074f35142h
+dd 00bd4dc3dh
+dd 018cde146h
+dd 07db4dfa1h
+dd 05e7b99afh
+dd 078b65a8ah
+dd 0483dcc92h
+dd 0b20a7da0h
+dd 08e5961fdh
+dd 077b0fa53h
+dd 0ade653abh
+dd 02dce21a5h
+dd 0d9866835h
+dd 08268e13ch
+dd 00e323b71h
+dd 036648ee7h
+dd 077132d52h
+dd 0371dfd4dh
+dd 0920d1c26h
+dd 08dabc1e2h
+dd 0c473b676h
+dd 02c71ef23h
+dd 092cdd5b2h
+dd 0529b628dh
+dd 0ff065032h
+dd 0474283e8h
+dd 04545d78dh
+dd 035fca2adh
+dd 0b5c43965h
+dd 04abb9ddbh
+dd 0f273d7ddh
+dd 09e75efebh
+dd 0f83fe3e3h
+dd 0c2ca71a3h
+dd 04f7b0ccbh
+dd 0e3488958h
+dd 01ff36067h
+dd 084944918h
+dd 0754c6a83h
+dd 0faf9e9fbh
+dd 04ff1b23dh
+dd 011fcf102h
+dd 05be89c77h
+dd 0528edd6ch
+dd 0b67af40dh
+dd 00026420eh
+dd 07a6f1731h
+dd 06f3c8696h
+dd 0be70c6b0h
+dd 01aa493d8h
+dd 0bdc75474h
+dd 0c5b880bah
+dd 042ec891dh
+dd 0f113de77h
+dd 073e853d2h
+dd 0f3fec05fh
+dd 089596fafh
+dd 0971dd129h
+dd 0ec320adfh
+dd 09d7a81a3h
+dd 0db75c2f9h
+dd 04758efbdh
+dd 06053e4e8h
+dd 07d05a956h
+dd 008083269h
+dd 05a7d4db4h
+dd 07e41d315h
+dd 032e0bf39h
+dd 021f28bc8h
+dd 0e34fef0dh
+dd 0b0e46894h
+dd 0f00c2b84h
+dd 0a8f8b975h
+dd 01762ff3eh
+dd 0e8122239h
+dd 006b2c222h
+dd 063cd9ab8h
+dd 0a782a708h
+dd 03d69bdd8h
+dd 036a0b727h
+dd 0f24c668eh
+dd 0e506bc00h
+dd 0b3a1e3efh
+dd 0ce328444h
+dd 068d0ee60h
+dd 0cc1d194bh
+dd 0f7e140c7h
+dd 0c1756aa2h
+dd 05deb7021h
+dd 0e3caf605h
+dd 0210737a1h
+dd 0ff9ed835h
+dd 01b3e7724h
+dd 03cb24323h
+dd 0762590d1h
+dd 0660de09eh
+dd 032a83c9fh
+dd 05c182c9dh
+dd 05422c404h
+dd 03afa568eh
+dd 013ee4fedh
+dd 00f393f4fh
+dd 0a43cf540h
+dd 06dbcdaa8h
+dd 04967e77dh
+dd 066fcc7e4h
+dd 0160cf3e3h
+dd 024d1adcah
+dd 01b5363bdh
+dd 0f2dba8a5h
+dd 029ea7797h
+dd 0bd327d72h
+dd 0a3a75513h
+dd 0592f06a4h
+dd 06e0b39b7h
+dd 0ec2d5b8fh
+dd 02e5d91f5h
+dd 066ccec55h
+dd 05f565dc2h
+dd 05a4ba22dh
+dd 011fd63d5h
+dd 0eede058eh
+dd 01a65ee26h
+dd 0a2102f20h
+dd 0eb4880c1h
+dd 06c4c62bbh
+dd 0da8b692fh
+dd 0b35bb3f6h
+dd 068abf24ch
+dd 085abdb54h
+dd 0685a68fch
+dd 0cf3b41b6h
+dd 0d4814b8ah
+dd 0edabc382h
+dd 0ed9d669bh
+dd 0ebd7cb94h
+dd 04b49ffc7h
+dd 0e4680c49h
+dd 07d5440e1h
+dd 061bbdc4ch
+dd 0cbf74f24h
+dd 0ec86c307h
+dd 014858249h
+dd 00d8916e1h
+dd 0b8bc006bh
+dd 01fe386b0h
+dd 0917ff85fh
+dd 077300a7ch
+dd 0bfda4556h
+dd 01bddd17ah
+dd 0cd1e45b0h
+dd 06ada5f76h
+dd 0b7ff04eah
+dd 0cc1a4cc5h
+dd 0b26fbc1eh
+dd 060d19a57h
+dd 0c456c16eh
+dd 003aaab2dh
+dd 0158eb726h
+dd 03b20863ah
+dd 0cf984582h
+dd 08d8f635eh
+dd 0dc466e43h
+dd 000c3bb90h
+dd 005fd3ba0h
+dd 0e133eb62h
+dd 06a742c14h
+dd 063cd38ach
+dd 0d08c6083h
+dd 028f27f95h
+dd 0b7731517h
+dd 0ec0450ach
+dd 0ddfed411h
+dd 07311420ah
+dd 0a8f9fde2h
+dd 0af8d7797h
+dd 02fa378bdh
+dd 06836da9dh
+dd 05bb3ad30h
+dd 00ec5abcdh
+dd 082b52f08h
+dd 0ef0705e2h
+dd 065edd232h
+dd 02d5a7ee1h
+dd 061659162h
+dd 0ab5c926dh
+dd 09d978f47h
+dd 0f7bd2f32h
+dd 0d826f3aeh
+dd 07581ae20h
+dd 049e34d4dh
+dd 07b518409h
+dd 0ec9716d5h
+dd 059009b0ah
+dd 0670d8642h
+dd 0613025cch
+dd 06b786f97h
+dd 0a508a5eeh
+dd 0cc3ec266h
+dd 0409e08afh
+dd 0e81b1df1h
+dd 0e8683a03h
+dd 0b9636d39h
+dd 0d239eae8h
+dd 0b8e9cf22h
+dd 0d7d04422h
+dd 0e0748eb5h
+dd 09a78944ch
+dd 0606670c0h
+dd 015a004deh
+dd 0e9ed0f37h
+dd 03cdf5372h
+dd 012ac7b47h
+dd 02d433419h
+dd 02b81ed4ch
+dd 029aa91cch
+dd 0018173aeh
+dd 099e5658eh
+dd 038ad688eh
+dd 096991335h
+dd 0fa04ca04h
+dd 03faa666ch
+dd 07c5fdcddh
+dd 0da04904fh
+dd 0ebe4b185h
+dd 032576c46h
+dd 04e5c352ah
+dd 0996919e3h
+dd 0cabe5ab2h
+dd 04188d1fdh
+dd 029054524h
+dd 00e1ea31fh
+dd 0278961e7h
+dd 05bf64c25h
+dd 0e9764ed9h
+dd 0bde9431ah
+dd 0b655b8b1h
+dd 03d78b74eh
+dd 00a8437ddh
+dd 07eee36fch
+dd 0099c408fh
+dd 042a47871h
+dd 0d5939f24h
+dd 070670f26h
+dd 016bd7e19h
+dd 0f61a14b8h
+dd 0be387325h
+dd 0d5e3060eh
+dd 078f4bb51h
+dd 0a27b4e6fh
+dd 0b6f35927h
+dd 06468ffffh
+dd 03eb2e803h
+dd 069bce012h
+dd 03368e4f9h
+dd 021788da4h
+dd 0323af613h
+dd 02c01500dh
+dd 068519d6dh
+dd 02376928eh
+dd 0cc8c6cd8h
+dd 08b957ad0h
+dd 08de9508ch
+dd 0382b282bh
+dd 0097f4c07h
+dd 0744479a7h
+dd 0a05cc54eh
+dd 0e65207a7h
+dd 035c074e8h
+dd 07e9abca9h
+dd 0c2c5db34h
+dd 09820a4a3h
+dd 0902d0ef8h
+dd 083bd5908h
+dd 0321ebebfh
+dd 0788f9127h
+dd 01a67349ah
+dd 0c5faedd8h
+dd 0b14a6c26h
+dd 0b48c1490h
+dd 0f9a045bbh
+dd 0b33de7a7h
+dd 0110cc989h
+dd 07574c755h
+dd 0d44533c1h
+dd 00f95e601h
+dd 092a70f37h
+dd 03ee6a569h
+dd 07c5effe4h
+dd 037055476h
+dd 0b9527787h
+dd 0c3936915h
+dd 0d2bc0f28h
+dd 0a90073f6h
+dd 00ab42324h
+dd 0228cef2ah
+dd 0c94ccd96h
+dd 0c3e5aa62h
+dd 0450b275dh
+dd 0d368d4a5h
+dd 0994982d9h
+dd 096e9ab61h
+dd 06c8019e5h
+dd 06b5e1cd0h
+dd 0cabbd30fh
+dd 0e901cfdeh
+dd 09eaaf51eh
+dd 0d9171504h
+dd 0f2a0c293h
+dd 05d3f52c1h
+dd 057a22429h
+dd 030235003h
+dd 0c43e7be3h
+dd 060a88642h
+dd 03f328b10h
+dd 07e9ed850h
+dd 0af50c933h
+dd 00e7a432fh
+dd 0d8acac14h
+dd 025217adfh
+dd 04c43d506h
+dd 0c10a9761h
+dd 0c93ecbech
+dd 0a33956f3h
+dd 05352a03ah
+dd 006bf5d7dh
+dd 004797d8eh
+dd 00f0f16c3h
+dd 096a8ec60h
+dd 0d70e98e2h
+dd 0e3e466f6h
+dd 073b36529h
+dd 083b466d0h
+dd 0ce288eceh
+dd 0d6f9e65ch
+dd 0c5bbe205h
+dd 01d3ecd8eh
+dd 02e8e5c39h
+dd 0f290db80h
+dd 04a4f70b0h
+dd 004503890h
+dd 0c1e28f84h
+dd 0ca44d249h
+dd 0d3c5996bh
+dd 02e4c52d7h
+dd 0e57baf11h
+dd 01057507eh
+dd 0272c6a79h
+dd 0f2857569h
+dd 0a238eaaeh
+dd 0c87457fch
+dd 06db0dbc0h
+dd 0fe829663h
+dd 061e85ffeh
+dd 0b33e284eh
+dd 010bbbd3ah
+dd 08b548341h
+dd 0ce41dd08h
+dd 0802c8e32h
+dd 0db098025h
+dd 07851d506h
+dd 08c7af993h
+dd 0b8e5f1f0h
+dd 099d21f5ah
+dd 071e85b79h
+dd 06cfa8618h
+dd 0713622ffh
+dd 0dfe35d4ah
+dd 0570e09ddh
+dd 0520ea1beh
+dd 091d122f4h
+dd 0b810f27ch
+dd 04a098af2h
+dd 088609274h
+dd 031857a7dh
+dd 04c9d9c8eh
+dd 002c70d03h
+dd 07d4c7b91h
+dd 0285308bch
+dd 0a6293022h
+dd 0f1fbd775h
+dd 05342c91fh
+dd 07a7e37cdh
+dd 0f315a743h
+dd 0db5610b3h
+dd 0bee136e3h
+dd 0e5a76f21h
+dd 0c205c44eh
+dd 065e949b3h
+dd 0b4f99d13h
+dd 091776e4ah
+dd 07368021bh
+dd 021168a3eh
+dd 0268271e1h
+dd 0228282c9h
+dd 0e481aa5ch
+dd 0e3e377f5h
+dd 01ab7f7d4h
+dd 0317dc488h
+dd 05945f499h
+dd 00bf846fbh
+dd 030a45aefh
+dd 04f37db6ch
+dd 0714a7694h
+dd 001607157h
+dd 00ac62d0ah
+dd 078e1f6c9h
+dd 0b7722652h
+dd 096db1e0fh
+dd 094f5e623h
+dd 0fe3c5be7h
+dd 0e401f1f7h
+dd 070427d94h
+dd 02d29f3cch
+dd 0cd1f9572h
+dd 049521232h
+dd 0acd06411h
+dd 055123343h
+dd 095dcedbch
+dd 0bdce1b65h
+dd 03c19ca34h
+dd 0b345b775h
+dd 0a05fca6dh
+dd 07ac674c6h
+dd 03ea184eah
+dd 0c434abb0h
+dd 05fbb7a22h
+dd 0ebb92d04h
+dd 04417e4bbh
+dd 0c6727eebh
+dd 00e3edc7ah
+dd 00eb09573h
+dd 09ebdf646h
+dd 071fc2e8fh
+dd 022136ebeh
+dd 00de8b500h
+dd 0ef9528cbh
+dd 0ceddbd26h
+dd 018f169ffh
+dd 0f24508bdh
+dd 0f19afae5h
+dd 0c63a3f40h
+dd 0d83d5a34h
+dd 0f06e7059h
+dd 0c3c1ea4ch
+dd 071410a2ah
+dd 0caf49b0eh
+dd 0622e483dh
+dd 06dfaa59eh
+dd 0d0ac7ed6h
+dd 01dd50770h
+dd 0f884de22h
+dd 0fefb09a4h
+dd 0f3426d28h
+dd 0071b4d90h
+dd 0a501c8dfh
+dd 0b446aa9ah
+dd 0852bfe16h
+dd 0182b0f7eh
+dd 01493e2a0h
+dd 097d7ed6fh
+dd 09a7d46aeh
+dd 0e93d84dah
+dd 0a1c48566h
+dd 0c29c119bh
+dd 0302c9283h
+dd 0161c1ab4h
+dd 0429404e0h
+dd 08c1e2334h
+dd 002efc1ech
+dd 0c4788c1eh
+dd 0a61c5f46h
+dd 00df4f8c9h
+dd 0bc064a27h
+dd 0635bfe57h
+dd 0224cc9d8h
+dd 03509d8b2h
+dd 0f5ceee86h
+dd 0225bab84h
+dd 098f2a58ah
+dd 011be8cd1h
+dd 09bacf8beh
+dd 09c5b0398h
+dd 075a9f790h
+dd 0972518c0h
+dd 0425f5026h
+dd 050f37b48h
+dd 0a4973377h
+dd 0d75ecc29h
+dd 0aa298793h
+dd 046553233h
+dd 03f74638dh
+dd 02f354f23h
+dd 01d54d3e2h
+dd 01ef88a77h
+dd 004495576h
+dd 0d9bf9b37h
+dd 081324513h
+dd 0222dd8f5h
+dd 0d39b8dbdh
+dd 06221a880h
+dd 093ad0b06h
+dd 01f3d219dh
+dd 0eb8a3924h
+dd 0bb76cd09h
+dd 03f4df982h
+dd 0566cda2fh
+dd 052750019h
+dd 0820038abh
+dd 0c9ce96b3h
+dd 01d1efdfbh
+dd 0ca124f14h
+dd 0ebbdc36dh
+dd 00224736ch
+dd 092a74759h
+dd 0baaf9304h
+dd 08c69fbb3h
+dd 066392267h
+dd 0c51f5173h
+dd 0e2d0007eh
+dd 0dcae8f15h
+dd 07c1462a9h
+dd 0314de96eh
+dd 09ffdee03h
+dd 0df45fbadh
+dd 06b835794h
+dd 068b88e0dh
+dd 0653b0622h
+dd 0c041af10h
+dd 0afb75b3ch
+dd 019a23e34h
+dd 012292306h
+dd 049d818d4h
+dd 060074274h
+dd 00cebb0cfh
+dd 031a3a624h
+dd 0e30f3e04h
+dd 0508060bch
+dd 0d22ac3dch
+dd 0fba1baf7h
+dd 0ee732b8eh
+dd 0ee0dc2c6h
+dd 023aa002ch
+dd 014c1c849h
+dd 00dca32b0h
+dd 02e07f53eh
+dd 0cc587697h
+dd 0af3386d2h
+dd 0f17d11eah
+dd 0d2334d82h
+dd 0bfcf553bh
+dd 0e180f886h
+dd 08cf362ach
+dd 064e7576eh
+dd 00cb5ed8fh
+dd 017be4c50h
+dd 0fc7a5a03h
+dd 0378d148bh
+dd 0a27cdb1ch
+dd 078dd7845h
+dd 06c0a176eh
+dd 0dd97c0fbh
+dd 06362a719h
+dd 02ba11210h
+dd 070bc8160h
+dd 0d7b57bd8h
+dd 031dde0e2h
+dd 02c3278b5h
+dd 0aa82d00bh
+dd 0fc8d7492h
+dd 01d482812h
+dd 0f55cde6fh
+dd 00afa512eh
+dd 0c37aa8c1h
+dd 0f7eacc52h
+dd 02d423739h
+dd 0ef84e4a1h
+dd 08f8b9642h
+dd 0878aaff0h
+dd 000065aa5h
+dd 0bae7d985h
+dd 043c3f2a0h
+dd 00ca0d0ceh
+dd 0e8ee7c28h
+dd 0abb5313ch
+dd 03a1b046ch
+dd 0aef6dc97h
+dd 01cffb69fh
+dd 0e8d570e9h
+dd 0cdaeb980h
+dd 0d3b27246h
+dd 004d24d5ah
+dd 076771060h
+dd 05a245afdh
+dd 0da58aa79h
+dd 026245d21h
+dd 0216867bfh
+dd 0f2b6028dh
+dd 03a31cdbdh
+dd 01fd90bc0h
+dd 0035009a4h
+dd 00ac3afb2h
+dd 09d6bba06h
+dd 0a83dfa71h
+dd 0b8f24eb1h
+dd 0b18f2a55h
+dd 0e15a7fc5h
+dd 0db25d32ch
+dd 0d7ba5473h
+dd 08dd7cec1h
+dd 04a09fa7ah
+dd 0fa3903f7h
+dd 0f5cc2e92h
+dd 0475c74c0h
+dd 0d2fcad77h
+dd 01a5a9c20h
+dd 0813ddb42h
+dd 0a12a0c50h
+dd 0a1954e69h
+dd 004781cf4h
+dd 09b024296h
+dd 0e08343e1h
+dd 0b87c0d82h
+dd 0c5339ab1h
+dd 0d662a2f5h
+dd 0b07692f3h
+dd 0780b9434h
+dd 0309ec341h
+dd 002c957d8h
+dd 03f847adah
+dd 0008c7538h
+dd 0f3586cb5h
+dd 07531eccdh
+dd 063792f01h
+dd 04c8eaba8h
+dd 0fc976817h
+dd 00647a1d5h
+dd 018a9d6c9h
+dd 0b0bc5820h
+dd 0a3974efch
+dd 0794722ddh
+dd 0cd6e494ah
+dd 06bce6e0ch
+dd 0b5f34d8dh
+dd 06e42a95ch
+dd 02ce446c2h
+dd 06a71b577h
+dd 00bbbf479h
+dd 0aa0c827bh
+dd 0d2c63498h
+dd 02d5dfea0h
+dd 0b37524bbh
+dd 06e969b35h
+dd 088d88ab2h
+dd 0261c503ah
+dd 03813d927h
+dd 050d4d350h
+dd 09c75c211h
+dd 0b96c05b4h
+dd 051fff2e0h
+dd 0046083f6h
+dd 0cbde0dc4h
+dd 0b299664bh
+dd 0ef241028h
+dd 0e619e199h
+dd 01d3109dfh
+dd 02201ae22h
+dd 00f6e4cb4h
+dd 0c002ec4bh
+dd 04878ee51h
+dd 03a04dfd5h
+dd 0e636a5c2h
+dd 00fbc1e33h
+dd 01df835b7h
+dd 0a79c42f6h
+dd 056c0794dh
+dd 0bf9e0ff0h
+dd 056e598e0h
+dd 018f685f6h
+dd 0ef5ef37bh
+dd 0b31a2fbfh
+dd 0b731c8ech
+dd 04058fcd5h
+dd 0d2ab5378h
+dd 0aa29e9fch
+dd 0197e0c15h
+dd 03e4634f0h
+dd 0007e604eh
+dd 09b95af20h
+dd 002103b70h
+dd 01b7d907ch
+dd 06cb37ee1h
+dd 0a8a9f3c1h
+dd 064d328c6h
+dd 03e4eeddch
+dd 0fc074439h
+dd 06349c52eh
+dd 0deea2ee0h
+dd 06d7f3ef1h
+dd 0a6b5dcabh
+dd 04999542ah
+dd 00962d882h
+dd 0c7804b2fh
+dd 05f79caa9h
+dd 073d4e874h
+dd 07e6dddd7h
+dd 06ccebc97h
+dd 0c9591392h
+dd 0ed3cd1c6h
+dd 0f28bf0c7h
+dd 07de3197dh
+dd 056eb3db1h
+dd 0757089a3h
+dd 0d907116fh
+dd 0f9bf87a8h
+dd 0b4079703h
+dd 0d8d7b225h
+dd 0bae9f458h
+dd 089a13ea9h
+dd 03ed95d03h
+dd 04cd7b504h
+dd 0cc276f79h
+dd 0629307a7h
+dd 03298b1dch
+dd 0e2e74f01h
+dd 015610850h
+dd 098925359h
+dd 039244b07h
+dd 064f975f4h
+dd 0bfb85d21h
+dd 034fb9728h
+dd 0a84640a2h
+dd 0043276cah
+dd 089b3a949h
+dd 0f69df28bh
+dd 0dbc0629eh
+dd 0a2094678h
+dd 0e149e3eah
+dd 02a0c20dbh
+dd 08381b64ch
+dd 01da64c97h
+dd 013fceddah
+dd 00aab3c8ah
+dd 08e09867ah
+dd 066af92c1h
+dd 0c81879fdh
+dd 075d32cb4h
+dd 060c1ad56h
+dd 0890665b4h
+dd 038eb8dd9h
+dd 048594dbfh
+dd 03e8fcd2eh
+dd 0b84d4885h
+dd 00761b9d1h
+dd 0abc531fbh
+dd 018618073h
+dd 02b4ab9aeh
+dd 0cbcffeb6h
+dd 02bdd8241h
+dd 0a88d24d1h
+dd 06af1db10h
+dd 04c3cf11dh
+dd 00f174ad2h
+dd 0a761e7edh
+dd 061d743c9h
+dd 0fc2fae0dh
+dd 058ce1bc1h
+dd 05c7a7cc9h
+dd 0098529c0h
+dd 006cd0cabh
+dd 036da5d90h
+dd 0b4f70274h
+dd 0e12dd845h
+dd 0a33990e6h
+dd 0d27e754ch
+dd 0aeeafb43h
+dd 0913c61aah
+dd 093739754h
+dd 0103354d0h
+dd 083995628h
+dd 0e867ac2bh
+dd 0de13ca31h
+dd 093912653h
+dd 0270bd064h
+dd 0a53129a8h
+dd 09ca3e759h
+dd 099f19812h
+dd 05c320cb9h
+dd 0c3515adfh
+dd 0e6806e9ch
+dd 0cd74863fh
+dd 0cd656ac7h
+dd 060a09186h
+dd 02456b703h
+dd 0dd85755fh
+dd 01e67c806h
+dd 0ca283527h
+dd 073e8ba08h
+dd 0dfca56d7h
+dd 07b8bc7b5h
+dd 0f6444ecfh
+dd 094cd4188h
+dd 0ffe7bfbch
+dd 0a287b2ach
+dd 00e275b5fh
+dd 001728a8eh
+dd 053f933b8h
+dd 04a8b8b38h
+dd 033f87625h
+dd 013a4d360h
+dd 02779595eh
+dd 06ede53fch
+dd 01d62ed8dh
+dd 0ad303803h
+dd 0dcd38ea9h
+dd 042202191h
+dd 0ff910379h
+dd 0f5de357ch
+dd 06cb2f51eh
+dd 02a6feb19h
+dd 01fb55ce0h
+dd 0438c354dh
+dd 050b5d35ah
+dd 0cccc3daah
+dd 009d74ea4h
+dd 0dbc7b3dch
+dd 0f8d2fd1bh
+dd 073ecae9dh
+dd 0579a82d3h
+dd 05f23af41h
+dd 0ed8caed1h
+dd 05f213205h
+dd 013e244fbh
+dd 077a717fdh
+dd 0646f12b1h
+dd 0fd0b1f63h
+dd 05cd4667bh
+dd 0b6bb82a2h
+dd 0425316f6h
+dd 0ea867b78h
+dd 0660ee910h
+dd 0ca864238h
+dd 0f88a1726h
+dd 0f247b0c1h
+dd 086e8c4cah
+dd 09e38559eh
+dd 07bd7071dh
+dd 0013a0487h
+dd 0fce07c1ah
+dd 0fcde4ecdh
+dd 039c10a9fh
+dd 034068caah
+dd 0830dc792h
+dd 056eed1b5h
+dd 012579e44h
+dd 0a1c30125h
+dd 035655c3bh
+dd 05745a949h
+dd 0f5442126h
+dd 0e3ee6fe2h
+dd 07183553dh
+dd 0855783fbh
+dd 088399f13h
+dd 08834459dh
+dd 08c6e9dc5h
+dd 0c3c790e6h
+dd 0d5ae74e9h
+dd 018897990h
+dd 096d4a85ah
+dd 0d83cf4dah
+dd 0614c30d6h
+dd 0550dbaa3h
+dd 09487df16h
+dd 0b0b5f4a0h
+dd 0c6d358cch
+dd 0b7abd6bdh
+dd 08d006745h
+dd 0e9c272d9h
+dd 054f5a8d4h
+dd 0cadd3179h
+dd 086e23d21h
+dd 00ac3a83bh
+dd 0b95dbaf6h
+dd 00f674c12h
+dd 01ef103dfh
+dd 051462461h
+dd 01ada50cdh
+dd 0c5719a44h
+dd 023200cbeh
+dd 02e99998ch
+dd 0bc0dfb30h
+dd 03e149809h
+dd 071dbe33ch
+dd 007049e97h
+dd 068c912c2h
+dd 08f2b7ce0h
+dd 0037bccfbh
+dd 0fd163154h
+dd 0c875868eh
+dd 05d1dadddh
+dd 095d9ad46h
+dd 0d93e47d8h
+dd 07671ff9ch
+dd 0eb585c5dh
+dd 07fbb169ch
+dd 096adf97eh
+dd 078edd451h
+dd 082057b50h
+dd 022926951h
+dd 078dc22afh
+dd 046bb442ah
+dd 06c12f133h
+dd 0b5d11826h
+dd 09653b641h
+dd 076e76195h
+dd 0c5a52439h
+dd 09732b7d9h
+dd 0efcf33d1h
+dd 06b6baa48h
+dd 0bfbc8657h
+dd 0e60f9448h
+dd 03b88d517h
+dd 0ddfa85abh
+dd 0bb8b576bh
+dd 0ff92ee20h
+dd 0595e9a20h
+dd 00f1f6f40h
+dd 08752b185h
+dd 041500146h
+dd 0b322eff5h
+dd 037b8394ah
+dd 0e75e9b9eh
+dd 029a63ba6h
+dd 0ae0e89ffh
+dd 00aef6377h
+dd 0128f89ffh
+dd 0bb50721fh
+dd 0368679fdh
+dd 0397e9488h
+dd 0217d84bbh
+dd 028f88319h
+dd 0a68d97d9h
+dd 034e6eae5h
+dd 07a32268fh
+dd 0ede7e718h
+dd 00fdcdeefh
+dd 01fb412eeh
+dd 07d66450ch
+dd 0b1f25769h
+dd 0f7829e9eh
+dd 03c236882h
+dd 01ce5e1c0h
+dd 0cff1b1b5h
+dd 07df00650h
+dd 04f3c2269h
+dd 0f757986ch
+dd 0c956748bh
+dd 0e1fa837eh
+dd 0b38b9cf1h
+dd 015894e79h
+dd 05e27e687h
+dd 06a2aeb25h
+dd 025ff5f3fh
+dd 024767953h
+dd 05a6db113h
+dd 04ebdcc40h
+dd 028e893f1h
+dd 0a38c0621h
+dd 0cb1e9426h
+dd 068586930h
+dd 00d685e79h
+dd 0601a4e1bh
+dd 06106d7b9h
+dd 0881fd2f1h
+dd 09e4619fch
+dd 0646d8211h
+dd 0ac7198cfh
+dd 0f98e773ch
+dd 0b1318038h
+dd 0721ac5c6h
+dd 0e661b3e4h
+dd 0a9bce69dh
+dd 0756106bah
+dd 0826fc21ch
+dd 080b39352h
+dd 0bad4a9c2h
+dd 0406dd3b6h
+dd 0b5d3bd17h
+dd 06ce03274h
+dd 0b32a93bbh
+dd 02613fd2ch
+dd 0a11e3c20h
+dd 030a47456h
+dd 08e8d1edeh
+dd 09ea391d1h
+dd 0ed289695h
+dd 06bc4716fh
+dd 0b9f81d5ah
+dd 00ab9e604h
+dd 08fe24478h
+dd 00d83d4bdh
+dd 0588db8ach
+dd 02f3beec9h
+dd 0c1ce1694h
+dd 0be47cac5h
+dd 0df359d1ch
+dd 069bed12dh
+dd 02937c2d1h
+dd 03024d938h
+dd 017c4128eh
+dd 05dde7e46h
+dd 00489484ah
+dd 08ac08aa4h
+dd 047579521h
+dd 01bb103ebh
+dd 0256d8484h
+dd 0f38d8d1ch
+dd 0865a4071h
+dd 096294f27h
+dd 0ba297be0h
+dd 0120503feh
+dd 02ae23994h
+dd 01f90507ch
+dd 0154063c4h
+dd 0a180cfaeh
+dd 0010654b6h
+dd 00df757d2h
+dd 0b7b68254h
+dd 0f20743afh
+dd 0791e9fbfh
+dd 01fdde0eah
+dd 0b88ded3dh
+dd 0e3911df0h
+dd 03d646bf4h
+dd 08da67df3h
+dd 0bd303ec0h
+dd 0b03d951bh
+dd 03ceb7f51h
+dd 0b9bbfd14h
+dd 01571ca13h
+dd 0027c831eh
+dd 052c21ddfh
+dd 002a08a52h
+dd 0f86c997dh
+dd 0e573daa4h
+dd 07a48e502h
+dd 039579439h
+dd 04e62b9b6h
+dd 0d315ff09h
+dd 086b71e8fh
+dd 0220556dbh
+dd 00cdfda76h
+dd 0345dc24fh
+dd 080b9934ch
+dd 0225e98aeh
+dd 0385a63f0h
+dd 08e6b1d64h
+dd 059b14e99h
+dd 0620cbba1h
+dd 05c3ababeh
+dd 00b39ab1ah
+dd 0e87ceabah
+dd 0a4b4bb24h
+dd 005556927h
+dd 0f48de95ah
+dd 0b3681920h
+dd 0dd4f03cch
+dd 099fef365h
+dd 0551cf285h
+dd 0a6f93d07h
+dd 0f98e14d5h
+dd 0ac359d63h
+dd 0edc70ee8h
+dd 04862ae40h
+dd 0813096adh
+dd 007a64344h
+dd 09e9dd998h
+dd 0a45d3b16h
+dd 03435837bh
+dd 0d151154fh
+dd 0b16eafaeh
+dd 07d6c8d92h
+dd 0e6656af4h
+dd 0a05a5af5h
+dd 0b6f2f2e0h
+dd 0d5ed6cd7h
+dd 0b0848ab2h
+dd 0d9b69d06h
+dd 000e47359h
+dd 02e863528h
+dd 032d4e934h
+dd 040307dfdh
+dd 0fca65e3bh
+dd 003c7e381h
+dd 0c1556a89h
+dd 08b358671h
+dd 0f001428fh
+dd 02b0af6beh
+dd 0ccf9f06dh
+dd 024b9756dh
+dd 0c0f18608h
+dd 0e6b2c8edh
+dd 04bb6d2e7h
+dd 0f8a6f50bh
+dd 0e06d9518h
+dd 0e81c16f6h
+dd 01bd670c8h
+dd 02f627ee9h
+dd 0b1251760h
+dd 047136837h
+dd 0bae633b8h
+dd 0af11652ch
+dd 053d60234h
+dd 021c98e1bh
+dd 0c19a7125h
+dd 040738700h
+dd 05dae80d5h
+dd 0bd5b9767h
+dd 06e2c214ah
+dd 0c565a1e1h
+dd 00f82a048h
+dd 000393222h
+dd 0638581fbh
+dd 04d0e07cdh
+dd 040ae3161h
+dd 092b4572eh
+dd 0f4197106h
+dd 092e85a10h
+dd 09dea164ah
+dd 07259ab31h
+dd 081037c35h
+dd 040efb3ffh
+dd 0a4e920b8h
+dd 09d98a714h
+dd 077b5eaffh
+dd 0064f4fc0h
+dd 014c9f636h
+dd 0ac604a71h
+dd 0a0f13a36h
+dd 074565a8ch
+dd 0d1e1b738h
+dd 04c94f208h
+dd 08598583ch
+dd 041f3bef6h
+dd 0294d4ea0h
+dd 01fffa808h
+dd 07ea634a4h
+dd 05e931e37h
+dd 0ea6ce010h
+dd 0a5bc7417h
+dd 0d28d9c12h
+dd 0e40ba780h
+dd 0a9fe9763h
+dd 0c1e69a17h
+dd 015bb24ceh
+dd 0d825d2e7h
+dd 09d744948h
+dd 07d3d9f8eh
+dd 025798f89h
+dd 02d41b0afh
+dd 07c8a87f9h
+dd 0bf1a6ad5h
+dd 053d4e75ch
+dd 0783bbc06h
+dd 079a645e0h
+dd 03cdc4a98h
+dd 09bf4f103h
+dd 0af413739h
+dd 0da3962d9h
+dd 0f1416313h
+dd 0a1e06261h
+dd 0e152b2c5h
+dd 053557708h
+dd 0ffb29d5bh
+dd 0883b99c4h
+dd 0cd575be8h
+dd 00afaf4cah
+dd 0fb14d9b7h
+dd 022b70cc3h
+dd 0efdb4f44h
+dd 0ecd5f162h
+dd 0a232a619h
+dd 05a8b003ch
+dd 00617a0a5h
+dd 0281e5ca7h
+dd 0abdb10dbh
+dd 0fe55d1cfh
+dd 086b58adfh
+dd 00d26d94ch
+dd 0d2005061h
+dd 025944d3ah
+dd 01f3d581dh
+dd 0abc6353fh
+dd 04fbae118h
+dd 04b3b8b3dh
+dd 0d5128e45h
+dd 0fb4b3d08h
+dd 0718998e0h
+dd 0e31de20ah
+dd 06be34f3bh
+dd 0d3e537ebh
+dd 0654c2738h
+dd 04cfc0e5ah
+dd 0707447b8h
+dd 06fe5aa83h
+dd 08477d8bah
+dd 0d67ca766h
+dd 0c1c5f555h
+dd 00a593c65h
+dd 07bee4439h
+dd 08c72e614h
+dd 0e4b2e162h
+dd 09bfac5b2h
+dd 0bca973c5h
+dd 06586763ch
+dd 08395c957h
+dd 08ddc09d9h
+dd 0e76db77ch
+dd 08324806eh
+dd 0d61a093bh
+dd 0795dbb92h
+dd 0e45d721dh
+dd 0ed92d0f1h
+dd 02ec1a503h
+dd 056e4720eh
+dd 0ec1589efh
+dd 09ef92b50h
+dd 04612b921h
+dd 0681ddb0dh
+dd 04bbe7d8bh
+dd 05df00da8h
+dd 0a1ad8b86h
+dd 04dd5d9cch
+dd 04fa1296bh
+dd 0a52ae1c3h
+dd 0ac6d1933h
+dd 02d0532d3h
+dd 05fff2f9eh
+dd 0131e105ch
+dd 071acc7a9h
+dd 0dd306c71h
+dd 0d049ca05h
+dd 0f92e259dh
+dd 0e4517908h
+dd 0eb62a08dh
+dd 0ce0f7ecfh
+dd 02810a5dbh
+dd 0db052bf2h
+dd 05f5d1dc2h
+dd 075416d47h
+dd 0b31aa8aeh
+dd 0b4e833e1h
+dd 0875cc01bh
+dd 00b55182eh
+dd 0941494d5h
+dd 027b77c6ch
+dd 08e6b220eh
+dd 0dcfe4d05h
+dd 06e0f20d8h
+dd 0fa0e45bch
+dd 033e587a2h
+dd 0e4efd748h
+dd 06b4903d4h
+dd 066fce443h
+dd 06049fd49h
+dd 04c57e396h
+dd 01c08f076h
+dd 099f10ad9h
+dd 0e78a4327h
+dd 0db8bcf90h
+dd 05df578f8h
+dd 0f14f9244h
+dd 08dfdb582h
+dd 0e3fa94a9h
+dd 062b71c04h
+dd 02061cf26h
+dd 087705916h
+dd 02191e93eh
+dd 06d7739a8h
+dd 02b9e432dh
+dd 0150ff8f1h
+dd 04bd8b197h
+dd 05bdf4e7dh
+dd 07365b052h
+dd 08bf13c9fh
+dd 07e2a6e2ah
+dd 0246548f8h
+dd 03af3df80h
+dd 0bdc2b3a8h
+dd 02b6a172fh
+dd 0da7ec206h
+dd 0dac306e0h
+dd 0dd37a0f6h
+dd 0f0fcc457h
+dd 093ee5764h
+dd 0dcd8f7fbh
+dd 092613758h
+dd 06f5d53c4h
+dd 0732fd9bch
+dd 07f44b856h
+dd 0521b7fe0h
+dd 0da965c97h
+dd 06af475b0h
+dd 031fe947ah
+dd 020fe3eb6h
+dd 05d7deb53h
+dd 03e850748h
+dd 0acfb5114h
+dd 023de7873h
+dd 0b4def976h
+dd 0f33d57cdh
+dd 065df9887h
+dd 06d35a746h
+dd 08f550c77h
+dd 033b1d7b6h
+dd 06e184f6bh
+dd 004dffe61h
+dd 05504f2deh
+dd 07779e86bh
+dd 018689928h
+dd 0bcfaede0h
+dd 07bbfafcbh
+dd 0350302f0h
+dd 087329813h
+dd 0f2906179h
+dd 0d52467a2h
+dd 0d1c598d5h
+dd 040281d38h
+dd 06b8407bch
+dd 0e17b345ah
+dd 097d2cbfch
+dd 049068e9fh
+dd 017df1596h
+dd 005d7aa7eh
+dd 01a4133c7h
+dd 0d59d5350h
+dd 038220d20h
+dd 05fea0344h
+dd 03e6c378ch
+dd 03f1bbd81h
+dd 07c973f25h
+dd 064576351h
+dd 0aabf4db3h
+dd 0eae579bfh
+dd 095af3aebh
+dd 0f9123088h
+dd 015dc6c96h
+dd 0f5c66431h
+dd 06c57bc53h
+dd 057eff76dh
+dd 0721814e8h
+dd 0b6d53f67h
+dd 0eb4f0567h
+dd 09cb4daf2h
+dd 04ac99cfch
+dd 0e3a43bfbh
+dd 0fb329fach
+dd 00baad0b6h
+dd 0ae482579h
+dd 02b0c8527h
+dd 03293d313h
+dd 00b84cd8fh
+dd 042ef75ach
+dd 065e8a217h
+dd 0bf33aeeeh
+dd 026afe63dh
+dd 01089674dh
+dd 0443c5c98h
+dd 04553c90eh
+dd 0828d5548h
+dd 056f74d5ah
+dd 078aa1a4eh
+dd 0ffe47383h
+dd 0b4a7f92dh
+dd 04ada2ffbh
+dd 04a86c87fh
+dd 0689675deh
+dd 08747990bh
+dd 0573b17e4h
+dd 0b0643bddh
+dd 03047d72dh
+dd 0b8365488h
+dd 0bec32b30h
+dd 0e96bece3h
+dd 0211e5e60h
+dd 0478fb92ch
+dd 0ff54f8f7h
+dd 0964b2735h
+dd 050d216d9h
+dd 08da29687h
+dd 019facf24h
+dd 0eb56eb62h
+dd 0d23888b1h
+dd 032fa4a98h
+dd 08f8fc009h
+dd 0ed8d758dh
+dd 024f9bb4bh
+dd 022dfa695h
+dd 075af9a8dh
+dd 045bbf02ah
+dd 0dbf29618h
+dd 06b00fec3h
+dd 0c64da938h
+dd 0d54ddbdch
+dd 06107277dh
+dd 0e18b525bh
+dd 0e7640110h
+dd 0e3fe5685h
+dd 034cd9834h
+dd 08ebcca6ah
+dd 0bb0c12ddh
+dd 0dec3e0cfh
+dd 06cd7c1e1h
+dd 05d8df827h
+dd 0e1bfa493h
+dd 0705f476ch
+dd 0fd3eb463h
+dd 08d682b50h
+dd 08f5ddf09h
+dd 073e8b29fh
+dd 00cae9e50h
+dd 0f22cd30ah
+dd 02d848177h
+dd 0727df8efh
+dd 07e8bc136h
+dd 0109791c1h
+dd 061ec55b5h
+dd 06e9f6416h
+dd 093fd95eah
+dd 00547636ch
+dd 08dedccf1h
+dd 0240bc9fbh
+dd 0e74699fch
+dd 0c083c53dh
+dd 0caecca01h
+dd 06903d5d7h
+dd 0c13cdffah
+dd 0526724deh
+dd 094bd35e8h
+dd 0e3af5840h
+dd 06b856350h
+dd 0c142d70eh
+dd 0bf6da4dbh
+dd 01ef41714h
+dd 008af378ah
+dd 0aad4548fh
+dd 0ea1768dbh
+dd 09f3823eah
+dd 07ce867cdh
+dd 0440f98abh
+dd 075744d32h
+dd 0fcc25ea7h
+dd 0a9ad6180h
+dd 097f3b289h
+dd 0a1a2b6c9h
+dd 09b0ba105h
+dd 0fbd90fbbh
+dd 05dbf258ch
+dd 0c2a7f119h
+dd 019d10f03h
+dd 0a6122256h
+dd 05e429069h
+dd 0569b7793h
+dd 0791d1224h
+dd 0a5177f12h
+dd 09c8c0192h
+dd 072e59d18h
+dd 054468ccah
+dd 0b78c9f44h
+dd 09211c7a1h
+dd 02d47a78eh
+dd 0e212a54bh
+dd 0a9364d8ch
+dd 0484b3095h
+dd 086389fa5h
+dd 0ccc09c5bh
+dd 0e9d28ee6h
+dd 07b82988bh
+dd 0ce28dc04h
+dd 0b93b3546h
+dd 01a0955b8h
+dd 02f90898fh
+dd 06fd8cc66h
+dd 08665ddfbh
+dd 0dd7408a1h
+dd 05ab70102h
+dd 07e1523c2h
+dd 048b3fbd2h
+dd 090487019h
+dd 05e31feb8h
+dd 03fff1881h
+dd 0edfa52fah
+dd 0fa1611f0h
+dd 0ce5358bdh
+dd 0d7bd5140h
+dd 0fe8522bbh
+dd 09aa9d59eh
+dd 0b0b894fch
+dd 0b579d49ch
+dd 035cb3a74h
+dd 075c6128fh
+dd 07c703cd3h
+dd 0b8df92d4h
+dd 04acaeb59h
+dd 0e04d6e04h
+dd 0cb751141h
+dd 08d720ee0h
+dd 0fb81cd9ah
+dd 0cdf31268h
+dd 0c5639a27h
+dd 0187b7885h
+dd 01f8d2097h
+dd 08af3a455h
+dd 0b7126f8dh
+dd 061444a93h
+dd 099698ddeh
+dd 09f872495h
+dd 041ef831fh
+dd 05792f980h
+dd 01f589fe7h
+dd 08baf6053h
+dd 081daa5e4h
+dd 0e87e13b2h
+dd 0bd0799afh
+dd 0186a59c2h
+dd 0c26c7569h
+dd 0ebb1efa9h
+dd 09bd1324ah
+dd 059295810h
+dd 077bef0aeh
+dd 073c39ad5h
+dd 050cebb6ah
+dd 00208bc68h
+dd 025c184eah
+dd 0092965a4h
+dd 0b13b6dd0h
+dd 0162f10f5h
+dd 05808183ch
+dd 0d309d578h
+dd 068f138d5h
+dd 045520781h
+dd 078ee0625h
+dd 004cb372ah
+dd 0559afae3h
+dd 0cdcc0cb2h
+dd 085c7ed91h
+dd 089150f1fh
+dd 03274ff44h
+dd 09bfedf0eh
+dd 099d20a7bh
+dd 041346c0ah
+dd 08bf7468ah
+dd 09c9a1f6ah
+dd 0acaf653dh
+dd 0272aa359h
+dd 0c213bff1h
+dd 0ffe4c2b3h
+dd 023076b14h
+dd 04760e3ach
+dd 0427fbf8eh
+dd 07d83e159h
+dd 03657542dh
+dd 05d5476bdh
+dd 05e1b1df2h
+dd 0b0de622bh
+dd 06b0a0389h
+dd 0f9a02400h
+dd 027fc6b93h
+dd 06f246385h
+dd 082047b13h
+dd 0c099402ah
+dd 06fb61ce9h
+dd 0d3317b36h
+dd 0aabb3ab7h
+dd 0e8c3808fh
+dd 0dae24662h
+dd 096f4a4f6h
+dd 0b50d6738h
+dd 0907a1580h
+dd 0a0807fddh
+dd 09a8af0e1h
+dd 08bd5d9f7h
+dd 0f2cbaab2h
+dd 05eac78b5h
+dd 0d286a876h
+dd 0358078bdh
+dd 0bc4d0f3bh
+dd 0551e04c9h
+dd 0efa78b73h
+dd 0be395e96h
+dd 07f5b8f1ah
+dd 0aa112d90h
+dd 0362486cch
+dd 088060c7ch
+dd 0c3c90155h
+dd 02dc48a5eh
+dd 04a10bf23h
+dd 0c122ba29h
+dd 0df076066h
+dd 09ebaf108h
+dd 0ba218c35h
+dd 0a2f818f8h
+dd 06de11ebdh
+dd 020915fe8h
+dd 02cb20625h
+dd 0f8a8cb35h
+dd 04011cbb0h
+dd 0e4068044h
+dd 04e17655ch
+dd 0c6687b66h
+dd 088bcfc18h
+dd 020ba4bedh
+dd 0d02f8279h
+dd 08e760e57h
+dd 067ee5d16h
+dd 04837ed7fh
+dd 0410cb007h
+dd 048ac8805h
+dd 084e30ee4h
+dd 082247341h
+dd 045d6c532h
+dd 0f580b30fh
+dd 0fc170812h
+dd 0fc93cbe2h
+dd 064677bb1h
+dd 0d7651ca8h
+dd 0d5a104bfh
+dd 0e211ed14h
+dd 0822f9fc4h
+dd 0dba1319dh
+dd 0e2f7438ah
+dd 0079859bbh
+dd 0843f4af9h
+dd 0bd500e61h
+dd 038f8e3b4h
+dd 04808bc46h
+dd 06c2d70b8h
+dd 099a68ab2h
+dd 06744b032h
+dd 08420685ah
+dd 0d350b9f8h
+dd 0c691489ah
+dd 0dec5bbb5h
+dd 0f06ce727h
+dd 0a65a92beh
+dd 0d527e7b4h
+dd 0aa8de922h
+dd 093a01780h
+dd 0285e2629h
+dd 019cebee1h
+dd 048998766h
+dd 063ca680ch
+dd 0812a47f6h
+dd 0ff462ec2h
+dd 07b10da4fh
+dd 0912c0f2dh
+dd 0bef0656fh
+dd 04babdfa5h
+dd 07f7360fdh
+dd 0165d1c55h
+dd 0c3846af3h
+dd 023814744h
+dd 084de5de7h
+dd 0350a3e39h
+dd 0874f380eh
+dd 06fdb3010h
+dd 06222787bh
+dd 0113a8432h
+dd 0ab0b5e63h
+dd 0bc3ab91fh
+dd 0e8876fa8h
+dd 00932cd02h
+dd 0db84268ch
+dd 05bfca9bch
+dd 0da0f41ffh
+dd 0997025e9h
+dd 062b237ffh
+dd 04b4fc72fh
+dd 0ff0c390bh
+dd 08194ee35h
+dd 0e5f66e55h
+dd 0c8bc8b85h
+dd 0c47eea80h
+dd 0d1f15614h
+dd 039685d90h
+dd 05ca659d3h
+dd 0e091eca0h
+dd 0ca01949dh
+dd 0d0d86499h
+dd 00f51bf47h
+dd 015b8991ah
+dd 01f477e11h
+dd 045f187f9h
+dd 0f6f26e7eh
+dd 093ec144bh
+dd 0a340f332h
+dd 076ca31ebh
+dd 04927e8d2h
+dd 01b9e43c7h
+dd 0c5510dd2h
+dd 05aa407c6h
+dd 068c8c986h
+dd 0f7500751h
+dd 0c366f5f4h
+dd 08fa59710h
+dd 0b0a4a591h
+dd 04d806576h
+dd 08212815fh
+dd 02511f64ch
+dd 0f7371ccah
+dd 024acc242h
+dd 0578d9db2h
+dd 0a97d4ad0h
+dd 09b2b5dbeh
+dd 029839a36h
+dd 0fa99b410h
+dd 00de188fbh
+dd 0acaf5e5bh
+dd 0b3ca67f9h
+dd 0fe4c9a6dh
+dd 07372e843h
+dd 0b7ded03ch
+dd 0d31759b2h
+dd 0208752eah
+dd 01c6594e7h
+dd 04800304eh
+dd 038c99407h
+dd 01cfcd13eh
+dd 0f455c32bh
+dd 0d68dabe2h
+dd 052606c25h
+dd 014f97d79h
+dd 034a60265h
+dd 0728300cbh
+dd 05dfc07e5h
+dd 032bcec03h
+dd 0da0a8049h
+dd 0880ae5f6h
+dd 0a34a2f47h
+dd 0e0a7d2cah
+dd 076534635h
+dd 03bff2434h
+dd 0aeace090h
+dd 0e71d8903h
+dd 00b89f0e0h
+dd 0ec0cc1b1h
+dd 017cc44d5h
+dd 068bffdf6h
+dd 0bf8353c7h
+dd 0d39b39c2h
+dd 0ab18999eh
+dd 0f1273268h
+dd 0f9582fbah
+dd 0d24f5b68h
+dd 02d71d815h
+dd 0a16acf96h
+dd 0e0f23bbch
+dd 0b92e2792h
+dd 03d5ce8bfh
+dd 0bec5cc78h
+dd 0a5bf260ch
+dd 064f5176ch
+dd 090a81bbbh
+dd 0c8d9a28fh
+dd 0e221677eh
+dd 0e13603dbh
+dd 03e5c3a78h
+dd 0a5642f01h
+dd 0fb163aebh
+dd 074210feah
+dd 00adb3f0eh
+dd 05fa387ech
+dd 068a8d26fh
+dd 02a07ea20h
+dd 0131af689h
+dd 06725e34bh
+dd 006961bc7h
+dd 08489bdb2h
+dd 03c677e0bh
+dd 054ef428ch
+dd 08453237eh
+dd 03531cacdh
+dd 0ed22f7c3h
+dd 05ec0a46dh
+dd 016a84e95h
+dd 09c347112h
+dd 003bd24c1h
+dd 0af93171dh
+dd 084cd371bh
+dd 081237ad9h
+dd 0861a4796h
+dd 0e077b43ah
+dd 029620558h
+dd 09b2dc0c4h
+dd 0d5c8319eh
+dd 0510f8624h
+dd 09728f057h
+dd 09e7d3bb0h
+dd 0d34aaf0fh
+dd 0affecd95h
+dd 0ae86d359h
+dd 051913df4h
+dd 0ac6e0834h
+dd 095241fa4h
+dd 088944b76h
+dd 046153d1ah
+dd 0f7ac8114h
+dd 0221e4c46h
+dd 05f1beaa1h
+dd 00ac6b32dh
+dd 031586e61h
+dd 07f492740h
+dd 0ceeee417h
+dd 0776c3acah
+dd 0ef022990h
+dd 078a84d5ah
+dd 056cb85f1h
+dd 0037937bah
+dd 013f42f32h
+dd 0addbfd51h
+dd 07a890b0ah
+dd 0b0a81274h
+dd 02dda7ae6h
+dd 063da1ac8h
+dd 09fc4f702h
+dd 08ab9b422h
+dd 00998d6ceh
+dd 0394bb924h
+dd 08eed4d1eh
+dd 086f3a925h
+dd 009258d17h
+dd 0eb864d2fh
+dd 0a5045a8eh
+dd 0d69ff5dch
+dd 0d9966ed4h
+dd 082f1b783h
+dd 0540eedfah
+dd 0d2dd55b0h
+dd 0e4d746d6h
+dd 0bcee8aa5h
+dd 0caf57b26h
+dd 0c9c7931ah
+dd 0f1a97b16h
+dd 01a961bd2h
+dd 0a2cf27b7h
+dd 07bcc7e57h
+dd 0f288598dh
+dd 0a98791cah
+dd 006b16724h
+dd 0dcd4cecdh
+dd 0e3f0c65dh
+dd 0e5e4365bh
+dd 023221885h
+dd 0db87fcech
+dd 00bad424ah
+dd 00c4db3d3h
+dd 0fda59cach
+dd 0910945e6h
+dd 075c2140fh
+dd 093c4d124h
+dd 0f2b940e2h
+dd 066e8a3bch
+dd 0cfa1cd27h
+dd 0811f1032h
+dd 028f676f7h
+dd 0724949ceh
+dd 082d2b527h
+dd 02e01302fh
+dd 0eb6ef981h
+dd 052e35f7fh
+dd 01cd364e8h
+dd 0e02a6224h
+dd 050dba8a2h
+dd 0138e6616h
+dd 06dd54a80h
+dd 0a0800f6ah
+dd 0a47096b8h
+dd 0dd1430a0h
+dd 0bacfe71bh
+dd 093fd3747h
+dd 0d41e0a4dh
+dd 00fd3b8bdh
+dd 0d5434232h
+dd 07ac7248bh
+dd 062c578b1h
+dd 045c1257eh
+dd 04f90d0e9h
+dd 0f9141cfbh
+dd 06a0150a0h
+dd 02d7c51d3h
+dd 0ecedc35bh
+dd 05904ceabh
+dd 011a66d38h
+dd 0c1c50264h
+dd 06cc8dd1dh
+dd 0a93f6e52h
+dd 0b8186b41h
+dd 06be9e1e9h
+dd 0971fb31bh
+dd 0445184d2h
+dd 0b9d2e3b5h
+dd 0726853b4h
+dd 04215d583h
+dd 00f97fc56h
+dd 0c0b37b76h
+dd 018ab8cc7h
+dd 041bdcd2eh
+dd 060ddf945h
+dd 07eb4d2f1h
+dd 070853aa5h
+dd 04167816fh
+dd 0deb76b60h
+dd 029826933h
+dd 01232a848h
+dd 069dfe2feh
+dd 05b5bf23ch
+dd 0743f5309h
+dd 08707c229h
+dd 0bbf501b7h
+dd 05e62896fh
+dd 0e4420301h
+dd 0e285a323h
+dd 07ba31e7dh
+dd 0704a3c0fh
+dd 02104005eh
+dd 09edb3ae3h
+dd 0c37f47aah
+dd 0cde5eea2h
+dd 05d550fa9h
+dd 09632aa08h
+dd 0b1b5d2deh
+dd 073206de3h
+dd 060a8c9aeh
+dd 0647042a1h
+dd 0c5ac23a7h
+dd 0919b14d2h
+dd 0220db8dfh
+dd 09dae794eh
+dd 0e750a666h
+dd 03608a500h
+dd 043a73318h
+dd 05ac501a7h
+dd 05f78cc2bh
+dd 00df915e8h
+dd 09df6ce91h
+dd 0b118e2d5h
+dd 0ababb9a8h
+dd 0b3e577a6h
+dd 03bac555dh
+dd 0c0d0957ah
+dd 0e6b9d761h
+dd 08559e27fh
+dd 05d8deeceh
+dd 046cfab25h
+dd 039cf2c7dh
+dd 0d3834d64h
+dd 056c49ac5h
+dd 02f02ec10h
+dd 0b7cd398ch
+dd 06b997793h
+dd 0f8120c34h
+dd 035100fb1h
+dd 0fd0a1032h
+dd 03df2ee72h
+dd 054d5bd0bh
+dd 0af89add7h
+dd 0a3639a86h
+dd 0be0bc5b7h
+dd 0cff349d8h
+dd 04990b6cch
+dd 042ee1077h
+dd 06d80264ch
+dd 0249d70f0h
+dd 0321759a1h
+dd 028292334h
+dd 08a006471h
+dd 096ccdeb9h
+dd 0b88c257ch
+dd 0428f64a0h
+dd 0e6b22807h
+dd 0fec25158h
+dd 0ad098413h
+dd 0ad68ca54h
+dd 0692da457h
+dd 0d107218ch
+dd 04c05bee2h
+dd 076dc21d7h
+dd 0dd57e289h
+dd 048f5cf90h
+dd 0038b02bbh
+dd 010d51216h
+dd 08c86a54fh
+dd 0c4e309afh
+dd 0c56105dfh
+dd 04681d0edh
+dd 0d28ea17dh
+dd 0ee6f271eh
+dd 084707a39h
+dd 0e4dc16e3h
+dd 09fd64a94h
+dd 0234e8a28h
+dd 0c4662905h
+dd 0084d9163h
+dd 056d03134h
+dd 0426e9578h
+dd 0cd2bab48h
+dd 06d71a011h
+dd 060daf06eh
+dd 0855a3a4bh
+dd 04432be59h
+dd 0c54e273eh
+dd 02253fe97h
+dd 0986367aeh
+dd 05a356da8h
+dd 0dc3d1226h
+dd 04bb648f7h
+dd 0e4ab0bf5h
+dd 0ecc3173dh
+dd 0b221c53ch
+dd 0b2561a60h
+dd 08074d36dh
+dd 0548dfaa4h
+dd 09a06e4a0h
+dd 086973d30h
+dd 0be54314bh
+dd 0879b9b9dh
+dd 0fec44fe3h
+dd 0fdced0b0h
+dd 0fc50127fh
+dd 0b8b7dd1eh
+dd 03888efe4h
+dd 04928596eh
+dd 074449fbah
+dd 0f16fd498h
+dd 0a600e78fh
+dd 01b419984h
+dd 0aa3b0dfah
+dd 01a447e98h
+dd 07168cfa4h
+dd 0b3baee76h
+dd 0f4b54a97h
+dd 07830826ah
+dd 0af894792h
+dd 0db057a28h
+dd 00977fd4eh
+dd 00a6723fch
+dd 09681c6eah
+dd 0ca65878ah
+dd 098a53472h
+dd 07dd8f3a9h
+dd 02a9121a7h
+dd 0cbe7b3a1h
+dd 077d951b4h
+dd 07d240bf8h
+dd 09c33d6a7h
+dd 0d00c8551h
+dd 073b2ce21h
+dd 01cff5a2ah
+dd 01f330a84h
+dd 099153023h
+dd 0ca792b24h
+dd 09b2946cah
+dd 0587244f6h
+dd 0f8d9a47dh
+dd 09453551ah
+dd 0564ba000h
+dd 0f9b4e8bch
+dd 0e585aeech
+dd 06b7f2a03h
+dd 03c46b4efh
+dd 082c06214h
+dd 0aea4194ch
+dd 0364ed2edh
+dd 01fa219e8h
+dd 0d140df8ch
+dd 0af584117h
+dd 007c9ed87h
+dd 01f8d4befh
+dd 0bf7242a9h
+dd 05c4df9c1h
+dd 0db592003h
+dd 0b00e1c62h
+dd 03269dc79h
+dd 04caf1c9dh
+dd 05d4b589ch
+dd 0cb9ea691h
+dd 09c727172h
+dd 0123a73b8h
+dd 001682967h
+dd 06be0ad3eh
+dd 0d30299c2h
+dd 0bd45d311h
+dd 052f7ff04h
+dd 07b828874h
+dd 0dbe0b11fh
+dd 02ebd5651h
+dd 07e597d9fh
+dd 0feda9ec1h
+dd 0db4bdba0h
+dd 06daa7bc2h
+dd 0b33cbbdbh
+dd 0c5fffef1h
+dd 031a34f4ah
+dd 0a5487079h
+dd 07db562c0h
+dd 0e46cc33eh
+dd 004445551h
+dd 0539e1371h
+dd 01ae9a2d3h
+dd 08762c3b2h
+dd 0ddaa2873h
+dd 0715646c0h
+dd 07fb16da4h
+dd 0ac20bef6h
+dd 02124aa68h
+dd 0c9f9bf40h
+dd 030abe52eh
+dd 02942c612h
+dd 07154eceah
+dd 004c6e525h
+dd 088c60127h
+dd 02cd4bac0h
+dd 059023a8eh
+dd 0bdc4fb5ch
+dd 00182e87dh
+dd 0304f816eh
+dd 0dd018f74h
+dd 0ac61ef13h
+dd 0dec8a375h
+dd 0212efd1dh
+dd 07e653f4dh
+dd 0a69ee5fch
+dd 073ec448dh
+dd 0c05abc01h
+dd 0f3f862ceh
+dd 02712b99fh
+dd 0b519f1dfh
+dd 05a31c777h
+dd 0817d098ah
+dd 0f6102aa3h
+dd 0b85281e3h
+dd 045d11478h
+dd 045fd06d2h
+dd 02c9151a5h
+dd 0ee8da510h
+dd 06cb80e3dh
+dd 0808f7731h
+dd 07baa7069h
+dd 0308ec80ch
+dd 01694ed17h
+dd 01374f327h
+dd 0b52656e7h
+dd 080240ed8h
+dd 0064fee77h
+dd 0ae624bb4h
+dd 05de48677h
+dd 0ed13e746h
+dd 05deff264h
+dd 004b805f6h
+dd 07038bc61h
+dd 07d8b96f2h
+dd 0fe750186h
+dd 012c69a39h
+dd 052fd2640h
+dd 007e81c84h
+dd 095324690h
+dd 004f3c9dbh
+dd 0a973d059h
+dd 09d540dc2h
+dd 02c33c963h
+dd 025e78964h
+dd 0fdc43e73h
+dd 0d60b77adh
+dd 07abefbdfh
+dd 0135148d3h
+dd 087f1e8aeh
+dd 038c28d6ah
+dd 0812cd962h
+dd 0b64071a6h
+dd 01d8f14e9h
+dd 06a13ff58h
+dd 08cee2924h
+dd 01094dc6eh
+dd 08d5cbd15h
+dd 07bc4b681h
+dd 001056472h
+dd 0d74298f5h
+dd 082a29287h
+dd 0370790edh
+dd 0be70bc37h
+dd 00c450d8fh
+dd 025454af2h
+dd 0d640ebceh
+dd 09c662087h
+dd 00a06158eh
+dd 0df741c2ah
+dd 00cf6f712h
+dd 08f717a20h
+dd 082dd7a38h
+dd 0e72819ffh
+dd 043236e30h
+dd 0dc7cb026h
+dd 025eade97h
+dd 0231cc6deh
+dd 08f7881a7h
+dd 05211da7dh
+dd 0e2e6dae8h
+dd 0452be16bh
+dd 096f51796h
+dd 038ae98a9h
+dd 0f6741767h
+dd 080ab3d6dh
+dd 0f558e841h
+dd 09f721414h
+dd 00d79ec48h
+dd 0e8835d05h
+dd 0fd994cc7h
+dd 046dde65dh
+dd 0178ccebbh
+dd 04cf5357fh
+dd 0a237899bh
+dd 0a311e77bh
+dd 0dadec849h
+dd 0fa230214h
+dd 00123458dh
+dd 091c5cf14h
+dd 087d32e03h
+dd 0a92f707eh
+dd 03d1f8d36h
+dd 02cf379e9h
+dd 011a43e91h
+dd 09a3f37b2h
+dd 0a7fd7999h
+dd 0edbc8f92h
+dd 091bfc5ddh
+dd 0e8ca3cf3h
+dd 03ef08b9ch
+dd 01e467f94h
+dd 04130a5ech
+dd 0840f6253h
+dd 093b85e20h
+dd 05a0a30c2h
+dd 042a81165h
+dd 0dbe12350h
+dd 0266d38ech
+dd 071e8ee14h
+dd 09aa75683h
+dd 0b9f7088eh
+dd 0ba02189ah
+dd 0477ff749h
+dd 02be15c7dh
+dd 01549d411h
+dd 0beea0fe6h
+dd 070acb8dch
+dd 0c9b70cb3h
+dd 0540711c0h
+dd 0134ad00dh
+dd 0297fe787h
+dd 07ae3e16ah
+dd 05f9c4613h
+dd 0bf6c3a7ch
+dd 0804bcfcch
+dd 0e1eda0dch
+dd 0c7af016dh
+dd 062f3a274h
+dd 085eeb79fh
+dd 0a3ddb394h
+dd 0c90e54ach
+dd 03979cfd2h
+dd 09a018bd9h
+dd 07d708c00h
+dd 00ecab63bh
+dd 0c3d377f0h
+dd 0c979b3fah
+dd 0e8c53de7h
+dd 08bd908c1h
+dd 0919b3babh
+dd 081a30fb3h
+dd 0676b9b9eh
+dd 0a9131c45h
+dd 0f7361018h
+dd 00366dabfh
+dd 0a9251d39h
+dd 02296c4afh
+dd 0c37e56e7h
+dd 0d61cddbdh
+dd 0d3611552h
+dd 002268c58h
+dd 0676a6a72h
+dd 0bb200f12h
+dd 0cdaf8c13h
+dd 0031a1b6ch
+dd 037651b48h
+dd 065ec2bcdh
+dd 077180dd4h
+dd 0d170b80eh
+dd 085b44ad3h
+dd 0f4c38e16h
+dd 092532735h
+dd 0c6193878h
+dd 0a437c184h
+dd 0f3fb3288h
+dd 0c0507810h
+dd 09fc5f14ch
+dd 0dceefc78h
+dd 0f553313eh
+dd 0912a199ah
+dd 08bfe6673h
+dd 0b6217a74h
+dd 06350af17h
+dd 02240c6b6h
+dd 01908703ch
+dd 028121939h
+dd 040ce4043h
+dd 039f76c52h
+dd 00967e24eh
+dd 089203989h
+dd 0ca6914a4h
+dd 017c080deh
+dd 0c98fec15h
+dd 070c1e49bh
+dd 0e11e0a9bh
+dd 0fde9612ah
+dd 06d6cabb4h
+dd 03340d257h
+dd 084bb93a0h
+dd 06d7bf694h
+dd 0c7276763h
+dd 0d321c2bbh
+dd 06cd3f7e9h
+dd 0b5dc7548h
+dd 07ee23159h
+dd 0f4dea14eh
+dd 0a585813bh
+dd 0efc4e36ch
+dd 006d40c09h
+dd 040ef722bh
+dd 07ff88124h
+dd 07df6dd6dh
+dd 0a3b0115ah
+dd 0f11955a2h
+dd 0fe42144ah
+dd 08f8d3ac8h
+dd 0a0c4002dh
+dd 07a36d5d6h
+dd 0621c57bch
+dd 0d2d8623fh
+dd 0c6ebcaebh
+dd 09a954820h
+dd 0a4409206h
+dd 00325cc83h
+dd 033f464cfh
+dd 072afe012h
+dd 0812a2dd8h
+dd 0d5286083h
+dd 062f38bc3h
+dd 082eb8899h
+dd 013d28aa1h
+dd 0c35ff1e5h
+dd 0ffd7c448h
+dd 0df55c884h
+dd 099db432eh
+dd 0cf183b89h
+dd 006fcc5b3h
+dd 0d034b461h
+dd 07632755ah
+dd 06d10a549h
+dd 035abb32ch
+dd 0011a9ad4h
+dd 0dd59884ah
+dd 06f10d2e7h
+dd 0b774e839h
+dd 060bb5abfh
+dd 06cb14579h
+dd 060c2b650h
+dd 051f11280h
+dd 00c987c30h
+dd 013d42fd9h
+dd 0531c5ec7h
+dd 0efc0889eh
+dd 0dae47541h
+dd 08be706c2h
+dd 0fe4e95adh
+dd 04aabc9b2h
+dd 0b0442ff6h
+dd 02387bde9h
+dd 0e807a0d5h
+dd 0c06277cch
+dd 036dc9ba9h
+dd 00259912ah
+dd 0f97e8c68h
+dd 0461fd6b1h
+dd 0083c948ch
+dd 00e65a30ch
+dd 009829ee0h
+dd 0a4d67a49h
+dd 0e7babb4fh
+dd 093e91646h
+dd 0fc368256h
+dd 0f67b787bh
+dd 0c7fbf56ah
+dd 0f9ae9da5h
+dd 098bad23ch
+dd 0db6f2e47h
+dd 05aabf027h
+dd 05150f758h
+dd 036ed7cfdh
+dd 0528052e5h
+dd 0f2d3b572h
+dd 00349ce22h
+dd 0d968e9d5h
+dd 0022812c6h
+dd 0810a476bh
+dd 089eced72h
+dd 03ff46c6ah
+dd 00aef089fh
+dd 0b776b847h
+dd 0d3a343adh
+dd 0d6e1df5bh
+dd 0503e9792h
+dd 0bb093bf0h
+dd 01267bac9h
+dd 044c597dch
+dd 06230bfe4h
+dd 054b32b42h
+dd 0894663bah
+dd 0fe7ee8a0h
+dd 0a3152853h
+dd 096e10691h
+dd 077e42586h
+dd 03f9ac92ah
+dd 00900a4d7h
+dd 096a8671dh
+dd 069acdd4fh
+dd 0a6097b04h
+dd 01879a1f7h
+dd 0fc79e351h
+dd 05f33ef83h
+dd 00b058795h
+dd 040539e0dh
+dd 00492dbe6h
+dd 0b11c4695h
+dd 020f788aah
+dd 00eef4d2bh
+dd 046248f46h
+dd 0e376365dh
+dd 0658a0db8h
+dd 034e3b755h
+dd 0ccd8788ch
+dd 04723d9c2h
+dd 0154fa938h
+dd 0d6ba509eh
+dd 0643ef3d2h
+dd 028e2d619h
+dd 02ca2b565h
+dd 0a1881699h
+dd 05c665b66h
+dd 0cf2ef405h
+dd 0afc482d6h
+dd 0d1fcc110h
+dd 017a8e06eh
+dd 0402588a7h
+dd 0cce0f1cch
+dd 0da32a9b3h
+dd 0d8705130h
+dd 07aedb05dh
+dd 0c5fb775ah
+dd 03cce9ab4h
+dd 0ef8328c7h
+dd 0a6bc53e8h
+dd 0b00f1b01h
+dd 0aba43b83h
+dd 018b6543eh
+dd 0a073ed8fh
+dd 09ba63ebah
+dd 032c84d88h
+dd 0712731c3h
+dd 0f37bfbcdh
+dd 0b64c8cfbh
+dd 0ab339b82h
+dd 08a8dd4fah
+dd 0d9cbc25eh
+dd 0eb95fef4h
+dd 02f4a8839h
+dd 034ac660ah
+dd 02b4c259ah
+dd 05e29dbe2h
+dd 01b606be3h
+dd 04f4cbe49h
+dd 0f34054ceh
+dd 0e0fe6dfch
+dd 0fb19f3c9h
+dd 076e01cf5h
+dd 04617a3b7h
+dd 047502428h
+dd 027a9d0b2h
+dd 0ec9b7c7fh
+dd 0a2e8c122h
+dd 08ee13d1bh
+dd 092be7256h
+dd 0118e41d5h
+dd 05b34d65eh
+dd 033e3788eh
+dd 0a982670dh
+dd 0f9ef1f25h
+dd 0c0500f46h
+dd 0728065c6h
+dd 0d7096a5eh
+dd 0998e4a82h
+dd 08a50ea4fh
+dd 0e0fdf77ah
+dd 0ef3679cdh
+dd 041f2ded1h
+dd 068632bedh
+dd 04a9a87e1h
+dd 0b3ba5027h
+dd 0b9375921h
+dd 021ba8a30h
+dd 04af25861h
+dd 017e35133h
+dd 02241c570h
+dd 061c12d2ch
+dd 0c2fb1ba3h
+dd 0176a2de9h
+dd 0d52ad64ch
+dd 06ddd5b25h
+dd 041e61229h
+dd 00e1f7d87h
+dd 0eaae1c3eh
+dd 0abf2e6cbh
+dd 00171a344h
+dd 0c803f3b3h
+dd 0569717b7h
+dd 0619a8665h
+dd 015591107h
+dd 0b9fe2044h
+dd 026b23e31h
+dd 0afd4da80h
+dd 054b2acf4h
+dd 01ff609f4h
+dd 089becb22h
+dd 0f434387eh
+dd 04e83d88eh
+dd 0379e599eh
+dd 0bea30dc4h
+dd 0b8150ed7h
+dd 0433b7f56h
+dd 033a64c3ah
+dd 02813d8bbh
+dd 008143e60h
+dd 005bbff20h
+dd 0a9bca0c0h
+dd 050c32b5eh
+dd 0d9beaaf3h
+dd 0d44b251ch
+dd 075dc3313h
+dd 0102bc7ech
+dd 03dc8832bh
+dd 01888b5ebh
+dd 0795aa713h
+dd 0b98f26a2h
+dd 07372afe9h
+dd 07c3aeb41h
+dd 0ae17fa81h
+dd 067bcc321h
+dd 01e8d33c1h
+dd 084e26ae1h
+dd 08901aaa2h
+dd 0b34b6e33h
+dd 07652cdd0h
+dd 0fbcba87bh
+dd 0ba86b348h
+dd 05d07ce2ch
+dd 0d57798aeh
+dd 0a374e5edh
+dd 0b8803c33h
+dd 01bd697b9h
+dd 0709b9393h
+dd 0cad35e12h
+dd 07ba89611h
+dd 0735df441h
+dd 0e3bb1ceah
+dd 0f5c05a3fh
+dd 00ee45b0dh
+dd 09f73b18ch
+dd 0367d1e35h
+dd 03e07dc74h
+dd 0baf0b95dh
+dd 0907396fbh
+dd 0cbd51954h
+dd 0834ff214h
+dd 0eeb209e4h
+dd 02a188c70h
+dd 024fd8953h
+dd 028fdb065h
+dd 0d1614123h
+dd 07527bcc2h
+dd 06305f833h
+dd 0f605b2b4h
+dd 03ff7aa19h
+dd 0ab096188h
+dd 0ac025067h
+dd 083aa420eh
+dd 0a0330640h
+dd 01f3192fdh
+dd 05750c005h
+dd 0fd7e8581h
+dd 0e2e43473h
+dd 0329441c6h
+dd 07fdcae08h
+dd 0361dd771h
+dd 0ab83bd6ah
+dd 053cf108dh
+dd 057d672b6h
+dd 087772d60h
+dd 065d22fc8h
+dd 0caab91a5h
+dd 0a20fcf39h
+dd 081472c25h
+dd 0919c44a8h
+dd 008d39a35h
+dd 0b05dc81fh
+dd 00f4d3135h
+dd 011c6006bh
+dd 0ffb0611ah
+dd 029a3d39dh
+dd 0354c3d95h
+dd 09e592824h
+dd 0a3dba3e4h
+dd 0d14535feh
+dd 089d9f596h
+dd 069f17ddeh
+dd 0b5d3607fh
+dd 0c3380839h
+dd 00bd48086h
+dd 0e0f19fb8h
+dd 09252c1dch
+dd 05c35eabdh
+dd 03a49b8efh
+dd 0dca8572fh
+dd 01874b2c7h
+dd 026932b75h
+dd 0f4cc8a1dh
+dd 0172e263ch
+dd 0a530847dh
+dd 0c6186aaah
+dd 0319bfadch
+dd 0321db81ch
+dd 03f7482c5h
+dd 0d163cd7ah
+dd 0269aa53dh
+dd 01c938f1eh
+dd 0f0df509bh
+dd 06a391a08h
+dd 0cb3a6e58h
+dd 0eac57498h
+dd 04cb26775h
+dd 0a92b1da9h
+dd 01cdbe3c9h
+dd 02a107b5fh
+dd 0c917669ch
+dd 067f33851h
+dd 0496b1210h
+dd 073159819h
+dd 03f5f539fh
+dd 0c7e38e7ch
+dd 060908760h
+dd 0c3dc3475h
+dd 0e74c8392h
+dd 07377f8a5h
+dd 06f9c517ah
+dd 031086036h
+dd 0fe6989d4h
+dd 050860a30h
+dd 05b1c9877h
+dd 0c78ddacch
+dd 019faa750h
+dd 0cd426fedh
+dd 050f80f3fh
+dd 0a187848bh
+dd 0c0b546e9h
+dd 05ae39eafh
+dd 0def451eeh
+dd 01db089c9h
+dd 0152c8c98h
+dd 061850ec2h
+dd 0d90f1c18h
+dd 04067032eh
+dd 09152ef91h
+dd 08367c70ah
+dd 00dc411ffh
+dd 057cf9ef7h
+dd 08a921b75h
+dd 0d5c8c20fh
+dd 05be58b48h
+dd 08f4f630eh
+dd 079d1c63ah
+dd 03a91ac32h
+dd 00d966547h
+dd 0e894010eh
+dd 0d20fb22fh
+dd 08c38e68bh
+dd 0a39aae93h
+dd 07abd596ah
+dd 040825cdbh
+dd 07cd8f73eh
+dd 006a86308h
+dd 0755a3d47h
+dd 0df9b02b2h
+dd 052810b13h
+dd 079933ee1h
+dd 02644ef67h
+dd 09dd5fe00h
+dd 0e5035b43h
+dd 0f1c28db3h
+dd 08f96f3c0h
+dd 08113c97fh
+dd 08bfeb994h
+dd 09c4cbecfh
+dd 05c565328h
+dd 028c5fc48h
+dd 0d8034712h
+dd 005e345f1h
+dd 06442d1c3h
+dd 08077cfc0h
+dd 061c43412h
+dd 0a0f35f17h
+dd 059739198h
+dd 0faaf5c59h
+dd 030020080h
+dd 02a7f2753h
+dd 0ae481da9h
+dd 05e6a8621h
+dd 087c9c540h
+dd 06d89615ch
+dd 09a20d2adh
+dd 018da945eh
+dd 09ab618b3h
+dd 057d505fbh
+dd 0e3145711h
+dd 003f58516h
+dd 06a71c0b5h
+dd 01279c987h
+dd 03448a823h
+dd 0b5ba0662h
+dd 0e1435901h
+dd 0ef88e574h
+dd 0111372a8h
+dd 02ccde71dh
+dd 0df9747ceh
+dd 0dcb91474h
+dd 0ca1e5d4eh
+dd 03d47494bh
+dd 01fcd1002h
+dd 0912b40efh
+dd 03181a284h
+dd 04ebcdecch
+dd 0c52be98ch
+dd 08b7deb4ah
+dd 0e990721eh
+dd 0dbe91347h
+dd 0337ee28dh
+dd 0f79441fah
+dd 0a56aa1beh
+dd 033547d57h
+dd 0e6a619d2h
+dd 06c87094fh
+dd 0efccd556h
+dd 01dc3fab3h
+dd 0741491ceh
+dd 01f0f4981h
+dd 062700311h
+dd 0b8d16a45h
+dd 0d24319cdh
+dd 0a9888f4fh
+dd 0c245ad52h
+dd 085663c96h
+dd 036d37feah
+dd 095cc4a85h
+dd 0214a1165h
+dd 0d710b02dh
+dd 041223a78h
+dd 086b3d3f7h
+dd 076825587h
+dd 085d17069h
+dd 0c98ef515h
+dd 002cf2aa0h
+dd 0f82bf41ch
+dd 0530d8828h
+dd 03ba14f84h
+dd 020678752h
+dd 01aaa7e55h
+dd 02a898946h
+dd 0374f2d23h
+dd 09bdf5f3eh
+dd 0d661f4a3h
+dd 0b1d96e28h
+dd 081fdf9b6h
+dd 0c3f9a27fh
+dd 05af7af53h
+dd 039b8d517h
+dd 0d41fffbdh
+dd 0fc1642b0h
+dd 04523ea4fh
+dd 0aeee6531h
+dd 034e1b08ah
+dd 01e67f4b1h
+dd 0c63bfd6ah
+dd 06617bdd5h
+dd 03b01df6dh
+dd 0e58175f0h
+dd 0543f4636h
+dd 05d6ff8d1h
+dd 0f662fd94h
+dd 0597df092h
+dd 0a245354fh
+dd 04d1782feh
+dd 0b8ab5306h
+dd 008b1bed3h
+dd 093724849h
+dd 001b8adfdh
+dd 0ac035a88h
+dd 0a391cfc8h
+dd 0c2c040a9h
+dd 032c2682fh
+dd 0a23eb096h
+dd 0b944c135h
+dd 07a237e76h
+dd 0dd1822c8h
+dd 08da21173h
+dd 0b2cf8a77h
+dd 047cdaee3h
+dd 0223d3926h
+dd 03c6e45fbh
+dd 0096a099bh
+dd 0c95dec71h
+dd 03c746384h
+dd 02898ebb1h
+dd 03501e1a8h
+dd 03ec52e89h
+dd 06c4d3382h
+dd 0906797e9h
+dd 0a573eaa3h
+dd 0a8df3f48h
+dd 0a045c055h
+dd 04dfb0ae4h
+dd 025fe61ddh
+dd 0c912b595h
+dd 0dec0d8b4h
+dd 0183e3f7fh
+dd 05f4b29a8h
+dd 029a4b2ddh
+dd 0b145a7f8h
+dd 05c41d282h
+dd 0807c6f43h
+dd 0682cf00fh
+dd 0bc1e4d6eh
+dd 0401aaf3fh
+dd 07946af2fh
+dd 038432b58h
+dd 01894f695h
+dd 0085e099dh
+dd 099dfd7d8h
+dd 0da90d3dbh
+dd 07dc68124h
+dd 02ee948a9h
+dd 09ee6e120h
+dd 014276992h
+dd 0c064b7e7h
+dd 067178d74h
+dd 0fc4d18ffh
+dd 0b5cffbc2h
+dd 024b1ac84h
+dd 00f7e85fah
+dd 0aaa59178h
+dd 0cfec87c0h
+dd 087ed104fh
+dd 0ef3281a2h
+dd 097bfff2dh
+dd 08dac56a4h
+dd 028f29e96h
+dd 0971b1972h
+dd 03462d982h
+dd 05c3a9b13h
+dd 003d390bch
+dd 0456a7125h
+dd 077180d31h
+dd 0dd855238h
+dd 07f386694h
+dd 0083b680ch
+dd 0b776b661h
+dd 02496ae42h
+dd 0d215771ch
+dd 0b4aafd78h
+dd 061bb553ch
+dd 0c46148ceh
+dd 004edd7d0h
+dd 0cf7e15a6h
+dd 01d7d4132h
+dd 02baa893fh
+dd 040bd1e17h
+dd 0de0a1c31h
+dd 06694a729h
+dd 040170057h
+dd 0e37145beh
+dd 01fafb140h
+dd 09bd28581h
+dd 017e2506eh
+dd 08a73f781h
+dd 0414d1472h
+dd 0be0c66efh
+dd 04690572ch
+dd 04214e67eh
+dd 02d15fc7eh
+dd 0c3282676h
+dd 00455c834h
+dd 0486ba619h
+dd 09a996f22h
+dd 062ac5f87h
+dd 05820f202h
+dd 069389b42h
+dd 0f12ce600h
+dd 09c54a4f6h
+dd 06d81eeffh
+dd 0ab59315eh
+dd 029d06a0ch
+dd 096de78b1h
+dd 0002c66c6h
+dd 03344a9cdh
+dd 01a24edf2h
+dd 0eec80642h
+dd 01f83443dh
+dd 0b18f01a4h
+dd 08ffce743h
+dd 05f76b53eh
+dd 07f9a4e9dh
+dd 003d743ech
+dd 0dce66e21h
+dd 09485b589h
+dd 0ee37f454h
+dd 085609abah
+dd 0f3712ffeh
+dd 0f9021968h
+dd 00ee9c081h
+dd 021360fddh
+dd 051449376h
+dd 0d11fedach
+dd 0d3055c4ah
+dd 04d2b2838h
+dd 05b694161h
+dd 0a7d78323h
+dd 0c8d0624eh
+dd 0e31cb064h
+dd 015602d45h
+dd 0b257ef75h
+dd 03d5164a3h
+dd 07f0716d0h
+dd 0359d8408h
+dd 0f29329bah
+dd 0f454fc7eh
+dd 044d95eafh
+dd 0f3cbfe9eh
+dd 038953e52h
+dd 04464a821h
+dd 0c2e1af0dh
+dd 03714c5b3h
+dd 0bba3aa53h
+dd 0266c902ch
+dd 055a2608ah
+dd 06b8f1d42h
+dd 07057d7d3h
+dd 0d6d2d950h
+dd 0503baa4fh
+dd 0b4b1bcfeh
+dd 008039852h
+dd 028425191h
+dd 01ea1fc3ah
+dd 0c696f8e6h
+dd 00f0092d0h
+dd 04da886aeh
+dd 06624760eh
+dd 09fc11093h
+dd 06345f7c5h
+dd 0f58f7717h
+dd 08f1df5eah
+dd 091020b21h
+dd 030b0a7a0h
+dd 0f517586dh
+dd 0a76a15a5h
+dd 015c9ce7ah
+dd 0a60d4d68h
+dd 08511af49h
+dd 001250fe5h
+dd 0d4f8aef0h
+dd 062fad8ech
+dd 08d138a04h
+dd 09dc03955h
+dd 039b6247bh
+dd 04c72eb8ch
+dd 0fa11b548h
+dd 017be4a42h
+dd 021d1f136h
+dd 080fa1037h
+dd 037096214h
+dd 0fee79ac0h
+dd 084005362h
+dd 02760855bh
+dd 05d20610dh
+dd 0ac67da3dh
+dd 030f2b185h
+dd 04cbbad90h
+dd 02d87cf74h
+dd 034e3050bh
+dd 0810a1dcbh
+dd 0e214873ah
+dd 0d2cfd006h
+dd 025e5b460h
+dd 0ccd2d1ffh
+dd 00d57ad2ch
+dd 07e8d6fa4h
+dd 04cc36c41h
+dd 007b7509bh
+dd 05da4743fh
+dd 09642af21h
+dd 04ccf914ch
+dd 00c133a8ah
+dd 0a27bd76fh
+dd 092babb59h
+dd 007cccf18h
+dd 0b5b75283h
+dd 0ac0094b9h
+dd 09e2d736ah
+dd 0e9248f5bh
+dd 0c667e24ch
+dd 0581dc459h
+dd 090d1d1a7h
+dd 0ada6066ch
+dd 0b6ba8736h
+dd 0c50a23d4h
+dd 068da92deh
+dd 05780ede5h
+dd 04270a09eh
+dd 080e1b17dh
+dd 01e5de634h
+dd 0aa783d09h
+dd 0c9c840cah
+dd 0b94a4292h
+dd 09ee09bb2h
+dd 037c56b35h
+dd 0cd7baef7h
+dd 036637263h
+dd 0c3be96f2h
+dd 06238a24ch
+dd 06f913f8ch
+dd 01e323554h
+dd 0bfdc13a4h
+dd 0328e8626h
+dd 08fa15912h
+dd 03fc3532eh
+dd 0e5630f71h
+dd 0fbd78044h
+dd 0c108c857h
+dd 0fb345dd5h
+dd 0d6c45f42h
+dd 0ffefd335h
+dd 0d6218437h
+dd 0a305eba1h
+dd 07188f143h
+dd 095bcd8f5h
+dd 06f8da098h
+dd 077c1b936h
+dd 01210413fh
+dd 010ce4475h
+dd 06ac1b257h
+dd 0de04141eh
+dd 0bd4128c9h
+dd 0f3c8cb93h
+dd 03aa103f1h
+dd 071dfced3h
+dd 0e38b9019h
+dd 0f20826b5h
+dd 000bb3818h
+dd 0aa19e278h
+dd 01ceac753h
+dd 036109c77h
+dd 01f7acbf0h
+dd 06c9aa49fh
+dd 096887fdch
+dd 05af76b70h
+dd 06a8deb78h
+dd 0f071e939h
+dd 0e5eb28d3h
+dd 0a29ac45eh
+dd 0f40b1a03h
+dd 0fb73e604h
+dd 0d432b449h
+dd 0adf11a16h
+dd 02ffdaad1h
+dd 0b061ad0ah
+dd 08a47f5a8h
+dd 06dc4641ch
+dd 00156acceh
+dd 022c3ad9ch
+dd 0ed6223b4h
+dd 023a8d566h
+dd 04231bf9fh
+dd 0759464dfh
+dd 0cca05cbfh
+dd 0e15294dfh
+dd 0c8ab9dc4h
+dd 0ac9ba07ch
+dd 01e865f36h
+dd 0c08d7f5fh
+dd 042547a09h
+dd 0b4d85a66h
+dd 0b3d394a6h
+dd 0194a921bh
+dd 048c8810ah
+dd 03276da50h
+dd 0d7c729cfh
+dd 04f1d50dfh
+dd 00403c9bdh
+dd 008863663h
+dd 01f84ac8eh
+dd 002185294h
+dd 09b37a69ah
+dd 09cfa4ceah
+dd 018aa4613h
+dd 0e6b18d05h
+dd 09fa5a075h
+dd 09f605657h
+dd 036f82604h
+dd 04cbd1299h
+dd 003c29b3dh
+dd 0529a3e08h
+dd 052c3acf1h
+dd 09163eb8ch
+dd 0777bec3dh
+dd 0f55860fah
+dd 0b41692c9h
+dd 0fb3b0317h
+dd 0678c70d7h
+dd 0de29c15eh
+dd 0945e4c59h
+dd 00a50f1f7h
+dd 065016633h
+dd 06b570789h
+dd 051578752h
+dd 0124bd469h
+dd 0844a2174h
+dd 0d8a3dda4h
+dd 0193e18c1h
+dd 077ca7bafh
+dd 0ffeb3b77h
+dd 0930733e6h
+dd 066aace7ch
+dd 0cb997a2ah
+dd 01741eb04h
+dd 0558b63b7h
+dd 0c5859a20h
+dd 085ba46fdh
+dd 025f77a86h
+dd 062a8a101h
+dd 0a041b653h
+dd 0819b0964h
+dd 01a0dc019h
+dd 0e2f93613h
+dd 0cea6829ch
+dd 0ff9755bfh
+dd 0c0a099b4h
+dd 0566547e3h
+dd 060cf12ebh
+dd 0ab52f50ah
+dd 04d707127h
+dd 020eded31h
+dd 0ae8e9d15h
+dd 007366675h
+dd 046547582h
+dd 072ed0fb0h
+dd 0fb1da3e1h
+dd 0ce23d455h
+dd 04495c9d4h
+dd 08a262a16h
+dd 0ab695b20h
+dd 02d0fb229h
+dd 0b450eca6h
+dd 09bfda23bh
+dd 0d0f6dd12h
+dd 0b235c536h
+dd 0b5d94fffh
+dd 06d2bb0cbh
+dd 0a8aed99ah
+dd 01f4b3741h
+dd 006a96bech
+dd 0077b073ch
+dd 0f32afc55h
+dd 0b1d1be89h
+dd 0cab429a7h
+dd 0868f07ech
+dd 05b0ec52eh
+dd 091f6288bh
+dd 0346325efh
+dd 00a5af2a7h
+dd 01fe9ee86h
+dd 05fde5cb3h
+dd 014415053h
+dd 08e7c11ffh
+dd 0cf4512d7h
+dd 09ec120e8h
+dd 0916f0f45h
+dd 0a20d4607h
+dd 09dedd6c5h
+dd 0acada424h
+dd 01cc80ad7h
+dd 05a8a4107h
+dd 076ed6af4h
+dd 0df5056dbh
+dd 034fd40e4h
+dd 0b006b2f8h
+dd 0402426deh
+dd 03771144eh
+dd 096cf9ce9h
+dd 070e6dd52h
+dd 0ba4a7db3h
+dd 02624565ch
+dd 0c5a49ff5h
+dd 0a6c663a0h
+dd 047bcde09h
+dd 08e7f98bbh
+dd 07ac19c4dh
+dd 041004995h
+dd 02b17da4ch
+dd 0e67d1d90h
+dd 00d804523h
+dd 02aadf2a3h
+dd 0df7d6dadh
+dd 0f07da002h
+dd 0b6d40133h
+dd 06b942d67h
+dd 04c8b4fc4h
+dd 001a1515bh
+dd 08b24fbach
+dd 06e01f6b6h
+dd 04f829f4eh
+dd 06791fcdch
+dd 01067925fh
+dd 09ca34b89h
+dd 0dfb011ceh
+dd 03ea4d327h
+dd 064e74bcdh
+dd 00c3bf081h
+dd 0f4cbb872h
+dd 0db2bfd3fh
+dd 058f9b3f7h
+dd 034c26248h
+dd 0577bfcefh
+dd 0a09ed345h
+dd 0b3303d2fh
+dd 0e327e018h
+dd 078d68900h
+dd 0672a3017h
+dd 00e00fed7h
+dd 0755d2985h
+dd 0c1e5826dh
+dd 0033c3d25h
+dd 0b7c744d2h
+dd 0418912e7h
+dd 070b650d3h
+dd 0f79ef9e9h
+dd 084e9ca80h
+dd 0ca86c12eh
+dd 047845fdbh
+dd 07c0f5feeh
+dd 0382e8474h
+dd 0afe313f2h
+dd 02672e5b5h
+dd 0ab22336eh
+dd 040811dd7h
+dd 077ad9015h
+dd 0ad3f9632h
+dd 040f6f879h
+dd 0c35a2205h
+dd 0124c500ah
+dd 011c19bb4h
+dd 03a70b663h
+dd 0989d017ah
+dd 02e1ec258h
+dd 04f4e2abdh
+dd 0efbc4ad2h
+dd 073333df6h
+dd 057a333b5h
+dd 03f59fec9h
+dd 01d1dd0efh
+dd 0d8afa02eh
+dd 012a7f30fh
+dd 09122a5d3h
+dd 0071d962fh
+dd 05ed73efch
+dd 08c05ef90h
+dd 02b6ac6ddh
+dd 072e83ca4h
+dd 055476ddah
+dd 0d4a3d4cch
+dd 039d16494h
+dd 0d9ba1e5dh
+dd 0ccfcfaa3h
+dd 08180ef30h
+dd 0f8b282adh
+dd 0d7c673f7h
+dd 09c92a9b1h
+dd 099582df2h
+dd 0b3f0f0dch
+dd 07649bb00h
+dd 0365b206dh
+dd 03631ccffh
+dd 0842208f8h
+dd 0ca95b19dh
+dd 0017248edh
+dd 05c0d5436h
+dd 0c7048972h
+dd 00a6c187ch
+dd 04819990ah
+dd 08ede35e7h
+dd 090fa6aa2h
+dd 067e3ba62h
+dd 01d7bc6dah
+dd 09c40e69fh
+dd 026f4d015h
+dd 03a7864feh
+dd 00a2d08f0h
+dd 0b1d3ba15h
+dd 0333d308ch
+dd 03646f68ch
+dd 0101f62a0h
+dd 0f8aee989h
+dd 07330e333h
+dd 03ffba223h
+dd 05c411befh
+dd 04362db07h
+dd 00f4ff011h
+dd 04ce68b71h
+dd 025ebb7d3h
+dd 075051da4h
+dd 029151f80h
+dd 0b570f73bh
+dd 09129ee0ch
+dd 0ccdb87bdh
+dd 0877bc550h
+dd 053eca747h
+dd 05b995c06h
+dd 0a56dcc38h
+dd 0fa5c3fb9h
+dd 012b05864h
+dd 0b539b0f0h
+dd 09a162effh
+dd 05909527eh
+dd 062f4e7a6h
+dd 0a6e02b3dh
+dd 085a578a3h
+dd 047a8dd71h
+dd 08f30ce0bh
+dd 08d05c430h
+dd 018d2b358h
+dd 0963cbb56h
+dd 0598466aeh
+dd 06be3c78fh
+dd 0d3d68992h
+dd 082d6b46bh
+dd 08a3b5e52h
+dd 0ededd288h
+dd 0cdd227c9h
+dd 0aefe69b8h
+dd 0fae0b810h
+dd 028173419h
+dd 092c5b7e0h
+dd 06ab038ddh
+dd 0616d1d3fh
+dd 001a26a2dh
+dd 0a646bfffh
+dd 0bf56cde5h
+dd 053fe6460h
+dd 04fcaf817h
+dd 09de8cf63h
+dd 0cb89d377h
+dd 0dfe6a853h
+dd 0b3acb989h
+dd 058312c06h
+dd 07b065377h
+dd 02161f9aah
+dd 041d08614h
+dd 08b79bdd0h
+dd 03796e37ch
+dd 01af4ff84h
+dd 074330623h
+dd 09ac888a8h
+dd 0ca6ab63dh
+dd 0ec3b54bch
+dd 0d7a89246h
+dd 0fa0e2d1eh
+dd 0442e340fh
+dd 0b7b07fbbh
+dd 00c31144ah
+dd 01e7a813bh
+dd 06bd48073h
+dd 033824b9fh
+dd 0e5bedeech
+dd 0f17346e9h
+dd 02edd02f4h
+dd 0b88288d4h
+dd 0bc5f36f7h
+dd 0d565052eh
+dd 05e7a71d7h
+dd 05171ada3h
+dd 099c1ce81h
+dd 0f6379258h
+dd 0ca140d87h
+dd 0ba55f793h
+dd 09d622015h
+dd 0bf6ff731h
+dd 048254b62h
+dd 07ed2cdebh
+dd 0108aacefh
+dd 0cd9dcd42h
+dd 09b2e28eeh
+dd 0b588c5cbh
+dd 0b670ccc3h
+dd 07db8667ah
+dd 0a0c5edd6h
+dd 096ed7da1h
+dd 0b44ea08dh
+dd 008cff6b7h
+dd 0a94b556bh
+dd 06c0b7014h
+dd 02588ce2fh
+dd 02652ab5dh
+dd 0b6a06285h
+dd 080b49756h
+dd 0712e9442h
+dd 06811e560h
+dd 0d597cdceh
+dd 0019e8568h
+dd 0d6267fe4h
+dd 0694f1504h
+dd 0cd36aa27h
+dd 0f457840bh
+dd 042c94e98h
+dd 04a332db6h
+dd 0ebdb24beh
+dd 071aecd9bh
+dd 0fccf60d7h
+dd 0da25de3eh
+dd 0842bcaf9h
+dd 0a7002fcfh
+dd 0544b06e4h
+dd 0c175da53h
+dd 00ddcba78h
+dd 0125a63a0h
+dd 0bb507229h
+dd 06a166005h
+dd 05dc51e3bh
+dd 0cf04e173h
+dd 05d518f14h
+dd 0d8c82de8h
+dd 04a7c7b3eh
+dd 0c4434c15h
+dd 0557d7379h
+dd 07992bccbh
+dd 0303df412h
+dd 0e5f1be1bh
+dd 043e81774h
+dd 0727ed2a2h
+dd 06f06210eh
+dd 06fab1c22h
+dd 00f99171bh
+dd 09932141fh
+dd 01178de63h
+dd 0f92e39f2h
+dd 0778e528dh
+dd 0f413f129h
+dd 05b1c7712h
+dd 07c6b935bh
+dd 0529e7ebfh
+dd 0f66220f4h
+dd 02f7cfaadh
+dd 00bd323bfh
+dd 07f1a1ce6h
+dd 09be83073h
+dd 0bbf00802h
+dd 04f031ca9h
+dd 0ff20a757h
+dd 02ab07545h
+dd 0dec93321h
+dd 07d795f82h
+dd 0b8eacad9h
+dd 0b7581a89h
+dd 0e6012ebah
+dd 095184b86h
+dd 00deea8e9h
+dd 0f019bc73h
+dd 0979b312ch
+dd 08496eab4h
+dd 0756c126fh
+dd 0ed74c377h
+dd 00fc14a95h
+dd 016b2873bh
+dd 00b2c6888h
+dd 0c97545dbh
+dd 043667261h
+dd 0c663cef8h
+dd 0a49bdbd5h
+dd 06202c780h
+dd 02667c204h
+dd 0117d3edah
+dd 05d209a48h
+dd 0f5dc5b2dh
+dd 0d7a80ca0h
+dd 091559a4ch
+dd 01d343465h
+dd 0f90bcd1fh
+dd 0b1dbdeeah
+dd 0f3646984h
+dd 0748a8eafh
+dd 0c2d09969h
+dd 02a7c3d16h
+dd 0d0dddb11h
+dd 06c2848c0h
+dd 097e6ca57h
+dd 08374c0afh
+dd 0f61d5c11h
+dd 0e9fdd234h
+dd 088792c15h
+dd 001ceb094h
+dd 00f72d74dh
+dd 0007b3cb9h
+dd 09fd8da3fh
+dd 0a634e7d8h
+dd 0c0e054e5h
+dd 069584e33h
+dd 04f8266cbh
+dd 0e5d54efah
+dd 03078fff7h
+dd 05b30cd61h
+dd 09307bd38h
+dd 0adefb33dh
+dd 0a39efaf5h
+dd 09b9a4acbh
+dd 050da1cd4h
+dd 0dd22411ah
+dd 051922b47h
+dd 06efc0538h
+dd 082ef7683h
+dd 042821000h
+dd 0baeab632h
+dd 034e7978ah
+dd 034770818h
+dd 07891885ch
+dd 021faf7b3h
+dd 0fe96c46ah
+dd 08f234565h
+dd 088a01387h
+dd 009280c60h
+dd 07909693ah
+dd 02b5bf714h
+dd 07ba65cd2h
+dd 079d8ec99h
+dd 0f3fa7f88h
+dd 0611c2a6ch
+dd 018060f52h
+dd 0abd09afch
+dd 07246b114h
+dd 0333f5ea1h
+dd 0ea99557fh
+dd 0d9c36e7bh
+dd 06b0874b1h
+dd 0f1a3bdd9h
+dd 0dbca07f3h
+dd 00e672dach
+dd 074baf790h
+dd 06e1d4c3ah
+dd 00aeb82d2h
+dd 0098352b0h
+dd 09e9c21c2h
+dd 090882de2h
+dd 0d4e62d73h
+dd 0d20680cbh
+dd 0f0a1bb56h
+dd 0f2790b7bh
+dd 0adf4bbdeh
+dd 0f54a758dh
+dd 0957c0980h
+dd 0e6685fc2h
+dd 010a10887h
+dd 07da3930ah
+dd 0dc60596dh
+dd 00610482ch
+dd 0850796eeh
+dd 07b35e8d4h
+dd 098bcfc9bh
+dd 0e6713e92h
+dd 023d5c995h
+dd 0ebc366a4h
+dd 09b1d1b2fh
+dd 003d11183h
+dd 025047c6fh
+dd 032fdf331h
+dd 0c515f20ah
+dd 03e99cbbeh
+dd 02a653555h
+dd 0e4803237h
+dd 09808948ah
+dd 0dfea57b1h
+dd 073e8a698h
+dd 0ae44c2fah
+dd 0c2cf9d7dh
+dd 04e601d8ch
+dd 0724bc57dh
+dd 047849f91h
+dd 04904ffbah
+dd 000ed5588h
+dd 0ea58864ah
+dd 0403bb73ah
+dd 023fe57b0h
+dd 087cc07beh
+dd 017b8d4c3h
+dd 0726cadf4h
+dd 02e110256h
+dd 05c3b9462h
+dd 0516e72fah
+dd 02ead9055h
+dd 0f0cfeb77h
+dd 09c8b8715h
+dd 0ef547ba1h
+dd 0536fe34dh
+dd 097306356h
+dd 03c7340f3h
+dd 04d566858h
+dd 0a5db7e19h
+dd 0aaf85be7h
+dd 09f8b92c6h
+dd 0cc660a22h
+dd 00b3f8534h
+dd 07c6de344h
+dd 0ca6d4ba6h
+dd 0491299b9h
+dd 065f6d56ch
+dd 034055bfeh
+dd 0aaf19e1ah
+dd 0877ac9f4h
+dd 09e93a53ch
+dd 038670958h
+dd 0dca27388h
+dd 0bc904954h
+dd 032515fb4h
+dd 072d50d03h
+dd 01b21227ah
+dd 0e6cc8af2h
+dd 000a200beh
+dd 0026ed2bdh
+dd 07df87aa3h
+dd 053fbd10eh
+dd 0c4d9000fh
+dd 04efdf17ah
+dd 0c7e4cccdh
+dd 059460b52h
+dd 07a91109ah
+dd 08ec9decah
+dd 04d871712h
+dd 0858d0c10h
+dd 01c90a81ch
+dd 037d9d2feh
+dd 0903f31cch
+dd 0013eeffeh
+dd 0a85500d7h
+dd 02c25cd23h
+dd 051ee221eh
+dd 0a60e354dh
+dd 07fdeeed9h
+dd 04b06ddc1h
+dd 0a696f79ah
+dd 044b5a14ah
+dd 02e11c394h
+dd 0300fb9deh
+dd 00d486a25h
+dd 05709c8bch
+dd 024fa3a70h
+dd 0274881d2h
+dd 0657728e9h
+dd 07c583120h
+dd 0fcaededfh
+dd 08951bbb6h
+dd 053126161h
+dd 002c8f3feh
+dd 0a298f60ah
+dd 09996b169h
+dd 017a7fdb3h
+dd 07dc72ebeh
+dd 0327dfc9fh
+dd 0bd64efd4h
+dd 0122e2197h
+dd 0d5396231h
+dd 040e66e46h
+dd 063e53b26h
+dd 026f6a1fah
+dd 0ed666f05h
+dd 0733f7fefh
+dd 0e7168df2h
+dd 095a4f517h
+dd 0c5e4b1c5h
+dd 064d6041bh
+dd 07335597ah
+dd 08fd171afh
+dd 0a901083ah
+dd 0909d56e1h
+dd 0e51e6f64h
+dd 05a27c81ch
+dd 0261ef8e1h
+dd 0f484f65dh
+dd 0d6048b1ch
+dd 0461763feh
+dd 0269ca8d2h
+dd 0a177aec5h
+dd 0e3f972cfh
+dd 0ef608e2ah
+dd 0cb48067dh
+dd 0811e646dh
+dd 04dd7da0ah
+dd 0d7251b19h
+dd 0a1541175h
+dd 01725ea59h
+dd 028a78846h
+dd 0da90fdf2h
+dd 00c9fcfcch
+dd 072119cadh
+dd 0ea1d8dc5h
+dd 02493d883h
+dd 0b5f7e8ech
+dd 0d5854e66h
+dd 0ec497666h
+dd 0757140b6h
+dd 03221b6feh
+dd 09f11ede9h
+dd 05874687dh
+dd 05c1f78f1h
+dd 0de548b7dh
+dd 0ba4a49deh
+dd 0781d23b3h
+dd 0faef2172h
+dd 09df891cbh
+dd 0bde3f891h
+dd 049b855aeh
+dd 04606e821h
+dd 0342fed2bh
+dd 078b2561ch
+dd 05f493213h
+dd 0d3ef3d37h
+dd 04b83d333h
+dd 0e1b481aeh
+dd 0f00d09b4h
+dd 0dc2a3569h
+dd 01ca29af4h
+dd 071914dc8h
+dd 0fc87cf00h
+dd 039903339h
+dd 0e23271e0h
+dd 0eaa23d4eh
+dd 0c77c3125h
+dd 04876895ch
+dd 05ea721d7h
+dd 0f4ad0f2ch
+dd 0c81b8a8bh
+dd 049c0d377h
+dd 0c4e5cfbeh
+dd 008907900h
+dd 08690cef2h
+dd 02bb60d18h
+dd 0c0c3f7d8h
+dd 0fe2f0d71h
+dd 0b481463dh
+dd 021ccebf1h
+dd 007448c39h
+dd 079ad467bh
+dd 0da1a2b53h
+dd 0fb9d6096h
+dd 064003f97h
+dd 020f2f988h
+dd 0ea83e8abh
+dd 02ae19096h
+dd 0302e0796h
+dd 014a77d90h
+dd 063f47df0h
+dd 0081b9f7ah
+dd 002309b9ch
+dd 0d405393eh
+dd 0c2a24ba4h
+dd 00be5c54dh
+dd 098eb77b5h
+dd 050cefbb3h
+dd 0581791abh
+dd 0f0aa1822h
+dd 005130687h
+dd 0d6843f91h
+dd 0a00bd8f0h
+dd 0db536e16h
+dd 0479cba85h
+dd 0d215a3dch
+dd 00b2be545h
+dd 0d4cb5d1ah
+dd 0b9af053ch
+dd 05d63e838h
+dd 0ce086279h
+dd 07755d540h
+dd 068e8bac3h
+dd 044eef776h
+dd 0c60f1a95h
+dd 08be53318h
+dd 0ece86f4eh
+dd 002485d29h
+dd 09f7aa037h
+dd 0c7ed37d6h
+dd 0d2ca6329h
+dd 0dfc9031eh
+dd 0558dfdddh
+dd 06b6d4205h
+dd 0fd9f29b0h
+dd 0a7ac55ech
+dd 0717d1419h
+dd 0766f8cc6h
+dd 047b97c75h
+dd 032891857h
+dd 0c1da8534h
+dd 0d0f1d73fh
+dd 0dd509f1fh
+dd 0e7a8051bh
+dd 0ae4f13b7h
+dd 0d3f77175h
+dd 0a66d11d1h
+dd 04fad3381h
+dd 03332df06h
+dd 0fef59d9ch
+dd 02beef054h
+dd 00f13ce2ch
+dd 0eaaf4c5dh
+dd 09bd696c1h
+dd 0f275f7c3h
+dd 0e0e6628eh
+dd 07659348bh
+dd 08b1733e7h
+dd 04a0a60cch
+dd 0f2b012b7h
+dd 0c385cc43h
+dd 052c2bd94h
+dd 0d723b443h
+dd 019745088h
+dd 0cbe64dbbh
+dd 0bcfd150ah
+dd 0d840323ch
+dd 0055056b7h
+dd 08185ab92h
+dd 07212f1c2h
+dd 092462db1h
+dd 0b2f0a061h
+dd 0dc7fce27h
+dd 039f7db55h
+dd 04063d202h
+dd 064f4b81ch
+dd 08742f779h
+dd 012555369h
+dd 0f35efb81h
+dd 01603700eh
+dd 0bf23a4ach
+dd 090438392h
+dd 0736c37f2h
+dd 023cec64eh
+dd 0f7f3d17dh
+dd 07980d698h
+dd 080a0cf97h
+dd 03ba0cfd9h
+dd 0306c347bh
+dd 01de194edh
+dd 064dca3fah
+dd 065fdd57ah
+dd 0dfa5c7ceh
+dd 0131f66eah
+dd 033e12016h
+dd 0c3dd47a1h
+dd 00779357bh
+dd 0286cacf1h
+dd 085582cbah
+dd 06a673022h
+dd 05f87f005h
+dd 0272ff57dh
+dd 03be3098eh
+dd 01b05ed49h
+dd 0c7b27ab5h
+dd 04e67bd46h
+dd 03884e60eh
+dd 0334bcb44h
+dd 07fd3486bh
+dd 089ebb3c9h
+dd 05fe7dd26h
+dd 01ea15bdfh
+dd 0932bfa1dh
+dd 09c7802e5h
+dd 051d2261fh
+dd 05dc7d7f5h
+dd 09ee7cd51h
+dd 0e93372c4h
+dd 0b8e9a8aeh
+dd 04b81c1e0h
+dd 09439f894h
+dd 09620d141h
+dd 007fa8996h
+dd 0b13ad360h
+dd 001c91bf9h
+dd 07ad7c550h
+dd 0770a628fh
+dd 0b5ab3c96h
+dd 0d0d27682h
+dd 08449c275h
+dd 0a4677d84h
+dd 04c1f3e7ah
+dd 01724db7eh
+dd 0c99d9628h
+dd 06303cf13h
+dd 02e2b4388h
+dd 07d6b7df6h
+dd 02253d4eah
+dd 0372e3868h
+dd 00013940dh
+dd 045ddbe9fh
+dd 0f1579511h
+dd 0415de1d9h
+dd 014726517h
+dd 0e1be5d1bh
+dd 044907b85h
+dd 0f3e6f689h
+dd 04f77ccc0h
+dd 06ff505c1h
+dd 041bef8bch
+dd 080073050h
+dd 029cd6c7bh
+dd 055074b8eh
+dd 04c724546h
+dd 0e27826f5h
+dd 070b8fe0ch
+dd 031738e1ah
+dd 046c037e4h
+dd 02402bf38h
+dd 003d4fcfch
+dd 0f9e5dbb7h
+dd 0cf44559fh
+dd 0cbbfce55h
+dd 0ce092241h
+dd 0a108a609h
+dd 01151303eh
+dd 06193f573h
+dd 08da5a06ch
+dd 00fea1f86h
+dd 00c28759fh
+dd 0035e49e0h
+dd 0d279a4edh
+dd 00f42382dh
+dd 01aa24db9h
+dd 01d51408dh
+dd 0833b550ah
+dd 09d95ff0ch
+dd 0fdf15205h
+dd 0c61d08b3h
+dd 0ca05f98bh
+dd 02b8b41e5h
+dd 0506e73e1h
+dd 068c8fcfdh
+dd 01708cd6fh
+dd 006825ed2h
+dd 0145f141ch
+dd 045d47556h
+dd 0166205dah
+dd 01917d33ah
+dd 024b51436h
+dd 0ad46a4d9h
+dd 08b8bb9dch
+dd 082612692h
+dd 0799c52bdh
+dd 02c58bdb0h
+dd 08bed91bch
+dd 0fe3ff336h
+dd 06393037fh
+dd 041b73c0eh
+dd 094e9f5c2h
+dd 02ad2433fh
+dd 0fd5fe023h
+dd 0428ca09fh
+dd 018b5491ch
+dd 0e5696c10h
+dd 0f1aca60ah
+dd 0888dc055h
+dd 0ebe949b8h
+dd 0bff7098ah
+dd 0c2062bd7h
+dd 060a2217eh
+dd 0647b80cdh
+dd 031b38617h
+dd 060c3fec0h
+dd 03f506201h
+dd 0b20cada0h
+dd 02c31d464h
+dd 09c7d166ah
+dd 08a774859h
+dd 03ece4563h
+dd 03768f6fbh
+dd 0b08592a8h
+dd 0c3e4bb83h
+dd 001dc6dfbh
+dd 00d77017ch
+dd 07c997f76h
+dd 04fd8ac9dh
+dd 0a35d4281h
+dd 0308629b0h
+dd 041d2038bh
+dd 0e086e9a7h
+dd 0af720ac0h
+dd 0a109390eh
+dd 040dc4dc8h
+dd 0496ab4edh
+dd 0e020497ch
+dd 0a3a7c850h
+dd 0e340e379h
+dd 08307274fh
+dd 0d9d064f1h
+dd 03fb999a5h
+dd 004c45cedh
+dd 08e909edfh
+dd 0c11dda44h
+dd 069802b69h
+dd 00719e397h
+dd 07d7e0d96h
+dd 0a9085519h
+dd 03a56c6a3h
+dd 05d1bdfbbh
+dd 0602cea44h
+dd 0adf823ebh
+dd 08aba3668h
+dd 08b337944h
+dd 063f8758dh
+dd 0ee577349h
+dd 09699addbh
+dd 0cb9cfa3ch
+dd 032fbf7e3h
+dd 08df95103h
+dd 038427e9ch
+dd 04a5ee3deh
+dd 07c938823h
+dd 096e9831bh
+dd 09a9f02afh
+dd 03c0f9076h
+dd 0af5eae38h
+dd 0209453a5h
+dd 065212884h
+dd 0bc7b872dh
+dd 03b1224a5h
+dd 0c4b01736h
+dd 04a7b69f8h
+dd 049efcd48h
+dd 08fac5c87h
+dd 0bce9d34eh
+dd 02aef3840h
+dd 0ac8018f6h
+dd 0ba11e638h
+dd 0c884936fh
+dd 05ec68e6ah
+dd 04fb6b3b4h
+dd 01f779eb2h
+dd 0edd5f0a0h
+dd 0f8ae2930h
+dd 0877b4fb4h
+dd 016a937ffh
+dd 077998249h
+dd 0334ac5bbh
+dd 00e13cb7eh
+dd 0f7ead346h
+dd 0a7daeaddh
+dd 0ca40e7fdh
+dd 0e5181b4dh
+dd 0953d5543h
+dd 005b89fa2h
+dd 0ab19bea8h
+dd 024c24830h
+dd 02f47e85ch
+dd 04c570f61h
+dd 02ce607d4h
+dd 0782ff04ah
+dd 0bdd96771h
+dd 079a62e62h
+dd 08db1d3c6h
+dd 0fe2b8065h
+dd 004d20da9h
+dd 0b6233332h
+dd 0d00d1183h
+dd 02ae586b0h
+dd 083d5e472h
+dd 043ec202bh
+dd 0c6a1234bh
+dd 033b83125h
+dd 042de9584h
+dd 0cb5ce06bh
+dd 0e4edaa8bh
+dd 0e3d91777h
+dd 0d3e61da4h
+dd 08c727999h
+dd 0b1158f1ah
+dd 0861f27f3h
+dd 0e6fd827ch
+dd 00ac77270h
+dd 021297b61h
+dd 018de73fbh
+dd 07c7b8ad2h
+dd 099fd621fh
+dd 09c49460ah
+dd 02a4cc5e2h
+dd 040daf78ah
+dd 07838ca5dh
+dd 063c60428h
+dd 01b54acf3h
+dd 045433c42h
+dd 0c28025c7h
+dd 0ddb37a08h
+dd 0398a3d74h
+dd 0dce6276ah
+dd 035f20047h
+dd 0c59240fdh
+dd 0a76fcd41h
+dd 07c81aa03h
+dd 0d2fc6997h
+dd 09b93a77fh
+dd 02185cd40h
+dd 0f6479b10h
+dd 07886d731h
+dd 01bf4c8aeh
+dd 08f69668eh
+dd 0b273faafh
+dd 0a67401d3h
+dd 00c42746ah
+dd 000217ca1h
+dd 03d96b6c1h
+dd 0c17cdefdh
+dd 0c22be795h
+dd 0ed8a76e8h
+dd 093bd78b5h
+dd 09408a379h
+dd 05b197ad4h
+dd 00f1eceb4h
+dd 07ea94e29h
+dd 0d9413909h
+dd 0c5a82d99h
+dd 0a4a2934fh
+dd 036dcf7e8h
+dd 05c7a4476h
+dd 05eba3b8ch
+dd 0b4c66e4ch
+dd 0de49f80ch
+dd 062699a21h
+dd 0173b4fb8h
+dd 0e30d46c4h
+dd 013cfae6fh
+dd 03ea667f2h
+dd 0596925b8h
+dd 091f26253h
+dd 0982c57f6h
+dd 0b54f533ah
+dd 06f389acfh
+dd 0ad412d85h
+dd 07a1e2690h
+dd 0cf895913h
+dd 0cb5af825h
+dd 08d18e6f5h
+dd 0a2d14a2ah
+dd 0dbd6344eh
+dd 0a6a1184bh
+dd 02cbd37b0h
+dd 09b26cbe9h
+dd 089ca5294h
+dd 053d6142ch
+dd 0291874ebh
+dd 031e83731h
+dd 08b95c381h
+dd 011651591h
+dd 07087a623h
+dd 00fbdc7f8h
+dd 0ca9ef3d0h
+dd 09fe918e1h
+dd 03bb103dfh
+dd 012718b07h
+dd 0576c03c8h
+dd 0e5b2b770h
+dd 064fc7648h
+dd 0caa06fcch
+dd 0ebf353e1h
+dd 02c7001e0h
+dd 0290d27dah
+dd 0540f89a3h
+dd 0113baba5h
+dd 02e227c21h
+dd 054ee805ah
+dd 096943cffh
+dd 0a408f97fh
+dd 0d7eabfc7h
+dd 0e44128aeh
+dd 039bcf2e1h
+dd 0d92a252ch
+dd 0da1e3771h
+dd 084f56356h
+dd 0465dc335h
+dd 00204bc41h
+dd 0e020a097h
+dd 09ab3f4cfh
+dd 02e6d3232h
+dd 0636793d8h
+dd 03854e775h
+dd 06e1f6161h
+dd 074dc5c22h
+dd 0ded9825eh
+dd 05b3b0e79h
+dd 04eb78f02h
+dd 0061d096bh
+dd 02fdd4a67h
+dd 01c9ac924h
+dd 02de721d6h
+dd 0b54482d3h
+dd 0e7b808d1h
+dd 0e226d3d9h
+dd 0a44ef012h
+dd 01e874256h
+dd 01443b0eeh
+dd 0e2c3d37eh
+dd 04e03fbf5h
+dd 02533df16h
+dd 0e43bbcb4h
+dd 09934ccd5h
+dd 0babbae11h
+dd 0d9c1480eh
+dd 0f863f5b4h
+dd 02fb696d6h
+dd 05a5477c5h
+dd 091521f48h
+dd 09e22632bh
+dd 06030ad2eh
+dd 0c50641aeh
+dd 00f1ac512h
+dd 0c95701edh
+dd 0d9ee30b0h
+dd 07014c959h
+dd 03030b492h
+dd 040da4a06h
+dd 0046f972bh
+dd 00412f281h
+dd 0245ba261h
+dd 0aba7b287h
+dd 0bc8239f7h
+dd 0b1e62009h
+dd 0b4dfda80h
+dd 092145bc6h
+dd 0871ff191h
+dd 0964f8df6h
+dd 05c96684dh
+dd 0e8d3adb4h
+dd 0cf1b87dfh
+dd 0b5cfcb83h
+dd 0af3e0b14h
+dd 0cf74de53h
+dd 0ac38b6ech
+dd 0c98c5cbbh
+dd 0719fc79dh
+dd 04b682ea1h
+dd 050d32d89h
+dd 00185f6a4h
+dd 09e15f04fh
+dd 0481a63a4h
+dd 062a7fcdbh
+dd 026bd524ah
+dd 001ffce07h
+dd 030099273h
+dd 0074dcaach
+dd 01a3f8d9ch
+dd 0df7c4298h
+dd 04207345ah
+dd 071607be4h
+dd 00d3e48f2h
+dd 08207a7f7h
+dd 0d5379628h
+dd 0588dc98eh
+dd 0fdfa9885h
+dd 07ce628b7h
+dd 094905084h
+dd 0e44053e5h
+dd 005e71784h
+dd 05f709564h
+dd 09126d899h
+dd 0eb7eceb6h
+dd 07aa44825h
+dd 03598e5b6h
+dd 0aef9e2b9h
+dd 085d10836h
+dd 00bc4da42h
+dd 0fbe5ebd9h
+dd 023bed3c1h
+dd 0d828b093h
+dd 02bb58c3dh
+dd 0edfa1cd7h
+dd 0c5518b20h
+dd 045bc94bah
+dd 02f2c333ch
+dd 04942d92ch
+dd 011ebc233h
+dd 0834ce656h
+dd 074094d42h
+dd 01828d050h
+dd 03948b357h
+dd 0c02bd808h
+dd 0594044c8h
+dd 0508ee65fh
+dd 0e4f6da31h
+dd 069ac7270h
+dd 01f9a2410h
+dd 0ec5b79bbh
+dd 02473743fh
+dd 02504d3ffh
+dd 0b6f70bd3h
+dd 02e46df9ah
+dd 00d270ff5h
+dd 0827670edh
+dd 02667bee9h
+dd 0094a20d7h
+dd 00b71149eh
+dd 0ea38eea4h
+dd 053e6eeb6h
+dd 0e93d2dbeh
+dd 03bce409ah
+dd 01d0151cdh
+dd 0675fef8dh
+dd 012db0716h
+dd 0d26d984dh
+dd 0ecb2fd3dh
+dd 0e9ce5d89h
+dd 06728c606h
+dd 0b4896c54h
+dd 045ed279fh
+dd 0d767344dh
+dd 0b08e469bh
+dd 07398a2a3h
+dd 0bd601e70h
+dd 0787a81afh
+dd 0a7185508h
+dd 0eed43fa4h
+dd 07b5e867fh
+dd 00143e834h
+dd 0b026ef8bh
+dd 04014bfe2h
+dd 011bf138fh
+dd 0d7281a16h
+dd 090c49e3dh
+dd 0ed222b03h
+dd 0f4a05272h
+dd 0cd990df9h
+dd 057bec7bdh
+dd 085db10c4h
+dd 0a12a0929h
+dd 0e82be3f7h
+dd 0e7af8636h
+dd 0573a2ccah
+dd 00c050d56h
+dd 038cb384ch
+dd 0e1214124h
+dd 0b694b9bch
+dd 06ccf9bebh
+dd 0367e3f3ch
+dd 09c8d3d26h
+dd 003718276h
+dd 066c3dc07h
+dd 084a578dbh
+dd 0d1d8b18eh
+dd 0b334d3ebh
+dd 0b9fc65cch
+dd 0c6d1245fh
+dd 003439b7bh
+dd 0f0627144h
+dd 023ea755ah
+dd 094534819h
+dd 0348e16dfh
+dd 02ac4548ah
+dd 07b438111h
+dd 08d5f4b0ah
+dd 04a74526ch
+dd 00e3a5531h
+dd 0edc7cc8eh
+dd 0ec56f3c2h
+dd 087edec65h
+dd 0226ccaabh
+dd 0747c2927h
+dd 052494e25h
+dd 05a53b0e8h
+dd 06655f926h
+dd 0fdc7e154h
+dd 065eb5ce9h
+dd 058832a1bh
+dd 0fb617b61h
+dd 044e63776h
+dd 0fd4c007bh
+dd 0ced0d957h
+dd 082ae85f5h
+dd 019be39c2h
+dd 06966ea9ch
+dd 05fe812bfh
+dd 0797ce4f4h
+dd 09dbb395bh
+dd 0b289075eh
+dd 0fa01e3b4h
+dd 026a050b1h
+dd 0e9365b4ch
+dd 042328737h
+dd 0b2a8b26ch
+dd 0d3d16ba0h
+dd 0f2607ee0h
+dd 02b7605a2h
+dd 0bb5e65e3h
+dd 015742de9h
+dd 06ff58542h
+dd 0e4bd73d6h
+dd 053498f59h
+dd 098911810h
+dd 0f0b28a5fh
+dd 02e28fb75h
+dd 0dd31a6b3h
+dd 0255870dah
+dd 0c6afc8a4h
+dd 0895cacd2h
+dd 05981501ah
+dd 056e52feeh
+dd 0f0b2a42ch
+dd 074a4aa30h
+dd 0b900378bh
+dd 01dc0c112h
+dd 084e110a3h
+dd 03ac50ba0h
+dd 0eeb26582h
+dd 043e1250dh
+dd 05a4896dch
+dd 0f1eecf71h
+dd 0f2e54573h
+dd 078cfea40h
+dd 0c0fe1727h
+dd 02d157e82h
+dd 0fcf62e78h
+dd 00c455a01h
+dd 04a3cef4dh
+dd 06d448a63h
+dd 0df9cbbffh
+dd 073255b95h
+dd 0ba6c5100h
+dd 04225ec98h
+dd 0c0aed5e6h
+dd 06715db0ch
+dd 01883cd47h
+dd 0075196dbh
+dd 02190cae4h
+dd 05778c622h
+dd 089a5091fh
+dd 0e0146b9ah
+dd 0b87aa7abh
+dd 0c10435cfh
+dd 0f8b0d2cah
+dd 0bee0b3fdh
+dd 027fa5d1eh
+dd 05396b012h
+dd 021f673ddh
+dd 07660bb96h
+dd 076501c47h
+dd 0875b99cah
+dd 03d25dc11h
+dd 0ccef34ech
+dd 00e13c437h
+dd 0a8c79fe7h
+dd 03fdc3d9bh
+dd 071761407h
+dd 06cb44f1fh
+dd 06a638524h
+dd 0ceec9645h
+dd 0a8a69f38h
+dd 07b2b17d1h
+dd 001440cedh
+dd 078a5f0b2h
+dd 0688d273ah
+dd 0ad8d46b7h
+dd 064c5f851h
+dd 07c65aa43h
+dd 005ca80a8h
+dd 05b48f5dfh
+dd 0c3f94a83h
+dd 08450b826h
+dd 03c42f0d5h
+dd 0cbedbfe2h
+dd 03e059b35h
+dd 01fe8dd86h
+dd 0cba9e27ah
+dd 05ffecdc8h
+dd 0f6eb97a0h
+dd 0affc62f4h
+dd 064172835h
+dd 0c6d6e426h
+dd 06c90f4b3h
+dd 06f636069h
+dd 063bfab3ch
+dd 0124ff6cfh
+dd 00750779ah
+dd 0866eb6fdh
+dd 04149fd33h
+dd 07c4f7294h
+dd 0897c5aech
+dd 0bd073798h
+dd 05cb48ddfh
+dd 0d8e50b88h
+dd 06049b826h
+dd 00eabbd9dh
+dd 0b199f069h
+dd 0bb939a6eh
+dd 0f253d607h
+dd 0bbc998ebh
+dd 0f342a56dh
+dd 0e43f95ffh
+dd 08f22ecceh
+dd 01bf2ed39h
+dd 0d7fb4c1dh
+dd 0bccc44d5h
+dd 024202f25h
+dd 0c9e62580h
+dd 0962fa55fh
+dd 0c16c0820h
+dd 0bfe6574eh
+dd 06ccf2542h
+dd 03fec2d27h
+dd 033f53c74h
+dd 0bd044015h
+dd 0bc09cd80h
+dd 0e5235ab0h
+dd 08e06f026h
+dd 08ccc0d2eh
+dd 044eba037h
+dd 0d56a8e4ah
+dd 04d65eaddh
+dd 077fd98a6h
+dd 0998e54c4h
+dd 03ebe6d7eh
+dd 0307de79bh
+dd 01cac4fa1h
+dd 0243fde4bh
+dd 09fa44327h
+dd 0fe5199e0h
+dd 01846b78fh
+dd 0f4688be5h
+dd 05dfaf85ah
+dd 06248ad4bh
+dd 09bb5c422h
+dd 0db0cf1d3h
+dd 0d72119b1h
+dd 03990662dh
+dd 09ef3f529h
+dd 016383160h
+dd 0696d1bd0h
+dd 0ed1ae09bh
+dd 00888e29bh
+dd 09bf2fca8h
+dd 04a10b0bbh
+dd 0186a2265h
+dd 064ce6bfeh
+dd 0cea45a21h
+dd 075dd7eddh
+dd 0ca9c4b5fh
+dd 0b7fe2f6bh
+dd 005e1b2dfh
+dd 0ae8ae956h
+dd 0248926a2h
+dd 08d4f3b58h
+dd 0e01e1d89h
+dd 0416cd856h
+dd 0f3c43603h
+dd 0a4ae1d73h
+dd 0c2d21f0bh
+dd 047c68f3ch
+dd 02ff50868h
+dd 087e17fb9h
+dd 047e040d9h
+dd 02c1e9d38h
+dd 0ecbc424ah
+dd 0df1d7402h
+dd 09865e3e2h
+dd 08341d414h
+dd 06824370ah
+dd 0944f5d44h
+dd 0de509e11h
+dd 0b2ddeff5h
+dd 05a5c485eh
+dd 0b3ae14b7h
+dd 007463758h
+dd 072df39b7h
+dd 09122787dh
+dd 07f61781ah
+dd 00cbb0246h
+dd 0f1f6eca6h
+dd 02e3db25fh
+dd 05b34fd53h
+dd 0d664d31dh
+dd 048fa8757h
+dd 095ca429dh
+dd 00cb9369dh
+dd 0954a3f58h
+dd 0f3fe6e33h
+dd 0365ad260h
+dd 04b4a617dh
+dd 0271116a2h
+dd 03b6665a4h
+dd 0da11ecdeh
+dd 0c2d529b3h
+dd 0aa702d2ch
+dd 0d2336864h
+dd 01d4aaed3h
+dd 07b52b871h
+dd 0eed29674h
+dd 0726d3dd3h
+dd 0fc6eb674h
+dd 00e58f6e9h
+dd 0d28a5646h
+dd 0eb51f2ebh
+dd 0280bc160h
+dd 033349aa3h
+dd 0f42c5520h
+dd 0e8baf7a0h
+dd 0f34b9ce2h
+dd 0f173208eh
+dd 054ed0bd9h
+dd 0b5db2159h
+dd 03e622436h
+dd 038c34b50h
+dd 0ab21e174h
+dd 06140323bh
+dd 0b38eff03h
+dd 0b49107beh
+dd 02d339d45h
+dd 0f2cdc404h
+dd 00acba9c7h
+dd 070e1ca01h
+dd 08e9e9630h
+dd 0d8029425h
+dd 0cd3c0877h
+dd 04d2d845dh
+dd 0c1ec6f0fh
+dd 045d92ddch
+dd 03f085aefh
+dd 0495547fdh
+dd 0d3a3373eh
+dd 012f0cdfdh
+dd 0ab25e18dh
+dd 06fe56ef9h
+dd 0db9dad36h
+dd 077fe1b2dh
+dd 04a39d792h
+dd 0804ddda9h
+dd 09357283ch
+dd 03790ec3eh
+dd 062ae9f96h
+dd 082b878b2h
+dd 0990f550ch
+dd 0e9a6d560h
+dd 00d8b15abh
+dd 01ea55bdah
+dd 0c8db788bh
+dd 08abe93f1h
+dd 040aaf1a1h
+dd 0e47facf4h
+dd 05df9526eh
+dd 0f934af93h
+dd 05c79fac4h
+dd 0b9ca1516h
+dd 0c00700c3h
+dd 0bf49c644h
+dd 0804585bbh
+dd 03e97f93fh
+dd 0f8f86c76h
+dd 062fbf838h
+dd 055b04be0h
+dd 0526a7acah
+dd 0d1dfcd9dh
+dd 07893c71eh
+dd 0d909228ah
+dd 0d5be16c3h
+dd 07de3bda2h
+dd 0dfb47b97h
+dd 0e16a6fddh
+dd 064c56a68h
+dd 08bfe1447h
+dd 0e618c293h
+dd 0d0f37166h
+dd 00f263207h
+dd 09166735ah
+dd 0866cb345h
+dd 0e27c803ah
+dd 0ffbd0677h
+dd 09faeec35h
+dd 09cf2cd64h
+dd 0ff9c74d5h
+dd 09ebaac67h
+dd 0230090f3h
+dd 0b6d5be89h
+dd 0e6e02457h
+dd 0f793f79ch
+dd 036010a4ch
+dd 01450dc46h
+dd 0af79a788h
+dd 0139f5398h
+dd 0d24a721fh
+dd 0911e3fb4h
+dd 064e2b31eh
+dd 08961f185h
+dd 0858ab993h
+dd 069db4e40h
+dd 08a28bfbah
+dd 0b7d76b07h
+dd 07c97c8d0h
+dd 040323a61h
+dd 0d1dc171dh
+dd 0043d57cah
+dd 0c7234d48h
+dd 05318a5e5h
+dd 03cde1302h
+dd 0f82ce340h
+dd 0afe6d283h
+dd 09b6e0eb1h
+dd 01f83f118h
+dd 04d14dec3h
+dd 0e6534866h
+dd 060b70d7fh
+dd 041d4969ch
+dd 0c9471b2bh
+dd 0002c8100h
+dd 0e4d0ad70h
+dd 06ccc74feh
+dd 05243044bh
+dd 08aa876a3h
+dd 0f8d7422bh
+dd 03be57817h
+dd 0beee874fh
+dd 07be7528dh
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0F30679909.inc b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0F30679909.inc
new file mode 100644
index 0000000..662f981
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/M0F30679909.inc
@@ -0,0 +1,13056 @@
+dd 000000001h ; Header Version

+dd 000000909h ; Patch ID

+dd 009112017h ; DATE

+dd 000030679h ; CPUID

+dd 07f1ab1f1h ; Checksum

+dd 000000001h ; Loader Version

+dd 00000000fh ; Platform ID

+dd 00000cbd0h ; Data size

+dd 00000cc00h ; Total size

+dd 000000000h ; reserved

+dd 000000000h ; reserved

+dd 000000000h ; reserved

+dd 000000000h

+dd 0000000a1h

+dd 000020001h

+dd 000000909h

+dd 000000000h

+dd 000000000h

+dd 020170908h

+dd 000003201h

+dd 000000001h

+dd 000030679h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 0000032f4h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 000000000h

+dd 06f877ed4h

+dd 06c9d48a1h

+dd 0b77c4903h

+dd 0055bf256h

+dd 0409ddef8h

+dd 03d00afcdh

+dd 0347048d8h

+dd 0727e0faeh

+dd 0156866dbh

+dd 0c4bf175ah

+dd 09d00ca4fh

+dd 0b3e89a09h

+dd 07d2c8e19h

+dd 0bf5b667ch

+dd 07a1a7ac0h

+dd 026eebc7dh

+dd 0b2967286h

+dd 0ceb685c8h

+dd 0ffba02e6h

+dd 0144b5468h

+dd 000c428c9h

+dd 06d15dd3ah

+dd 0f9461953h

+dd 01632a092h

+dd 0222335dah

+dd 01fee67d9h

+dd 0a770513ch

+dd 04e83def6h

+dd 0b3d82e5ah

+dd 050f0b89fh

+dd 07fe10d45h

+dd 070f05efdh

+dd 05f575449h

+dd 0ab71a0a3h

+dd 0fb2a6eb5h

+dd 00283b4e2h

+dd 058a95566h

+dd 038a4c957h

+dd 08a682f1bh

+dd 0c49b3009h

+dd 01256e90bh

+dd 033169c52h

+dd 0d91585c4h

+dd 0df78eb29h

+dd 09f403399h

+dd 0a9de58dah

+dd 0fd05c858h

+dd 05a0f11bch

+dd 0c00e7840h

+dd 0b39bd56ah

+dd 0b87f38c7h

+dd 090141c59h

+dd 0325933f9h

+dd 00b0e1332h

+dd 0963c4befh

+dd 0f203d9ach

+dd 03925365bh

+dd 02955f8e7h

+dd 01fc417cbh

+dd 0d840e4e7h

+dd 025e9f7fah

+dd 0fb769b96h

+dd 0c7b8da5eh

+dd 0e81200f0h

+dd 071291c12h

+dd 05989b1e5h

+dd 0c007fdadh

+dd 0d7c9091fh

+dd 06a008197h

+dd 073005539h

+dd 06d8b436ch

+dd 0bc606f43h

+dd 000000011h

+dd 0229a4c80h

+dd 062415396h

+dd 030e7c28ch

+dd 02be27311h

+dd 0fce84979h

+dd 080648b8eh

+dd 03b7f6943h

+dd 0065e4b2bh

+dd 02e8403f3h

+dd 089eb8ab5h

+dd 034c8f63ch

+dd 006df820bh

+dd 03481a047h

+dd 0187b0252h

+dd 05d27a9fdh

+dd 0f661cfaah

+dd 039d2392eh

+dd 0dfa631d4h

+dd 03bb61d38h

+dd 0618ee4d5h

+dd 04b7f7b8bh

+dd 08b36f86bh

+dd 0c518b89dh

+dd 00da63efdh

+dd 019c1ec35h

+dd 0df8610cch

+dd 023e12f6fh

+dd 0ac6d2a79h

+dd 02e8d0934h

+dd 0a581de0eh

+dd 0eb1c71fah

+dd 095b4231dh

+dd 0b784698ah

+dd 0e36e2ea7h

+dd 099a0eb12h

+dd 062ad734dh

+dd 0e0aced88h

+dd 083d9f1afh

+dd 011d38cbeh

+dd 0cf48f949h

+dd 08205465fh

+dd 01f93f1d7h

+dd 057ba67ech

+dd 0273ba831h

+dd 047497d71h

+dd 03df42c47h

+dd 020b09025h

+dd 0c36a645dh

+dd 06f4f0011h

+dd 0abb2235fh

+dd 00adadb31h

+dd 051626207h

+dd 0ffd34a5ch

+dd 09de7db39h

+dd 098500754h

+dd 090749998h

+dd 097bef9d0h

+dd 0622d72c3h

+dd 046e8ff22h

+dd 0f420ff0fh

+dd 044fa364fh

+dd 0abe1df25h

+dd 0df5ab1f8h

+dd 053a7ea86h

+dd 037117e29h

+dd 0592b3894h

+dd 040ec1d58h

+dd 05d16207fh

+dd 00608f826h

+dd 018983338h

+dd 00c15ad4fh

+dd 023928370h

+dd 0712fa039h

+dd 061ed7a67h

+dd 0aa219cabh

+dd 07c7d7c4ah

+dd 0892e3f51h

+dd 05efc6738h

+dd 01c38c429h

+dd 0b11d14feh

+dd 0e927e858h

+dd 00520da44h

+dd 0a05817c7h

+dd 0413ebbd2h

+dd 0d778492ah

+dd 0f50ef833h

+dd 06fa50ebch

+dd 0ec163351h

+dd 0eef0d2abh

+dd 020b5c834h

+dd 024db2ce5h

+dd 0cb6cd5e1h

+dd 0dfb4ad46h

+dd 0ee436c95h

+dd 0bae26f84h

+dd 0014f0529h

+dd 053003a17h

+dd 003b3bb83h

+dd 00f6aecc7h

+dd 0d4503c94h

+dd 0dd2ba743h

+dd 0c977dda7h

+dd 0ed465459h

+dd 0a043ad31h

+dd 0f4015ef8h

+dd 087c96c07h

+dd 07da2fb82h

+dd 000a95b37h

+dd 027707100h

+dd 075161d64h

+dd 083942b1ah

+dd 0f6025636h

+dd 0ed73eeb0h

+dd 00ef705bch

+dd 0088c82b8h

+dd 02cf15285h

+dd 043445bf5h

+dd 017f8b855h

+dd 0de5415a8h

+dd 019f3db1ch

+dd 01ba3b3b7h

+dd 00b185e13h

+dd 0316d583fh

+dd 0262fe281h

+dd 02af0c777h

+dd 0dde0ddb8h

+dd 082d789c9h

+dd 069f46b4dh

+dd 03cf3ee79h

+dd 0c88a7496h

+dd 04e0e4c8dh

+dd 04c09447dh

+dd 0d425171eh

+dd 02c091117h

+dd 0566aad0fh

+dd 05b387140h

+dd 0cc296134h

+dd 06b4084f3h

+dd 0862187bah

+dd 0a828ff65h

+dd 03fe3e23eh

+dd 0aa1e10e5h

+dd 01963ac9fh

+dd 065902396h

+dd 08a0477ach

+dd 0c9208434h

+dd 0c3b71188h

+dd 0b0d57b59h

+dd 0e5639ae0h

+dd 08203d60eh

+dd 0ecefad55h

+dd 0d40c0363h

+dd 0470ffb4fh

+dd 0f47f97abh

+dd 051474d55h

+dd 04e687f00h

+dd 0fa9792dah

+dd 0ca540274h

+dd 099ec8a4ch

+dd 0552f4521h

+dd 039f7666ch

+dd 0b4f0e222h

+dd 09a24dfc4h

+dd 034615810h

+dd 045ce127eh

+dd 07eae94e2h

+dd 063c23e52h

+dd 0f0bcd113h

+dd 06175ca8bh

+dd 06f5f963bh

+dd 015ee06a7h

+dd 06bdf97a0h

+dd 0c51977f8h

+dd 0a2d79c84h

+dd 08caba0c9h

+dd 0f95905dah

+dd 03ab73b0ch

+dd 0f0f3ac5fh

+dd 0e93430d7h

+dd 0c250d436h

+dd 03964cad7h

+dd 01e92a9fbh

+dd 0b41e2eeah

+dd 085c3a15bh

+dd 0ac66c644h

+dd 0a8781df6h

+dd 0fed32da7h

+dd 0e802afa2h

+dd 0fb3ae4fdh

+dd 0480305c8h

+dd 0bcd973a7h

+dd 0ec015b06h

+dd 0f561cabbh

+dd 05e6d3009h

+dd 0521cdcf1h

+dd 06e08bd2ch

+dd 0fb442d2bh

+dd 0da03bdedh

+dd 020c6a97ch

+dd 0b5bb2875h

+dd 00e1cd048h

+dd 05bbc3c03h

+dd 0c9401db1h

+dd 02a1ca604h

+dd 0f7aad4c6h

+dd 0f29476fch

+dd 098830315h

+dd 065b76c11h

+dd 0ea811bb2h

+dd 06a80add0h

+dd 0a37a1c1bh

+dd 08f195cfch

+dd 0160e5837h

+dd 01d87fc28h

+dd 0397d3aaeh

+dd 049ad0d6fh

+dd 0c41d2b15h

+dd 001d50011h

+dd 09997b476h

+dd 0b6c2fd85h

+dd 0fbc580f3h

+dd 0bb28a93ch

+dd 04fab5372h

+dd 071c255d4h

+dd 06386ac75h

+dd 052e5bf26h

+dd 049b52c0ah

+dd 094cd7f55h

+dd 0c0b71609h

+dd 06e04ed52h

+dd 097e69a26h

+dd 0fdfbe297h

+dd 0c968e490h

+dd 0f860324ch

+dd 030a84617h

+dd 0a0d11577h

+dd 0612af531h

+dd 01b2a8a6ch

+dd 071e321b4h

+dd 0a5207c00h

+dd 076025037h

+dd 03b7a99b9h

+dd 0e2305bcch

+dd 0264f0c9fh

+dd 012e06af6h

+dd 03d6e34aeh

+dd 0f47177d3h

+dd 028bf6471h

+dd 07bca9d72h

+dd 078f5aa2ah

+dd 060b52f10h

+dd 0e5958185h

+dd 0f84f0809h

+dd 0b4b5b6d2h

+dd 0cd62ec86h

+dd 0b8574fa6h

+dd 0abe407f8h

+dd 01c9e6185h

+dd 0a83c5620h

+dd 0e37d0a9dh

+dd 00cc4b0d2h

+dd 0d020ff10h

+dd 012a16d23h

+dd 005a2a5ffh

+dd 0fb1a48c2h

+dd 07248f655h

+dd 012d99f8bh

+dd 05293c458h

+dd 002566852h

+dd 0847c7cfch

+dd 015834792h

+dd 07320a50dh

+dd 0243b74e0h

+dd 0655202fah

+dd 07a43dd77h

+dd 0e11fc5c4h

+dd 0bc95cd0ch

+dd 0cdc82560h

+dd 0309d712dh

+dd 0bdb7adb6h

+dd 082b4b46fh

+dd 0e6275281h

+dd 03e5a1344h

+dd 0694bf197h

+dd 0ccbe7ac2h

+dd 017845e2bh

+dd 0ec2d38b6h

+dd 0b1498bc4h

+dd 06b3de63eh

+dd 04624b4edh

+dd 0905f96d4h

+dd 0bd42f0d5h

+dd 0629c879ah

+dd 0ad7e8abfh

+dd 0afd0f98eh

+dd 09b573f58h

+dd 0d3fc0801h

+dd 04c7e3644h

+dd 02672d4f4h

+dd 06cece8a7h

+dd 06928cb97h

+dd 0faf181cch

+dd 03ee5ed7dh

+dd 0dc756360h

+dd 0fc79dc2dh

+dd 0572ca99ch

+dd 0419f04b9h

+dd 04a0cd586h

+dd 06a86c640h

+dd 0731da7ach

+dd 0e9da10b0h

+dd 095f39024h

+dd 0ee53c4f2h

+dd 0730a6776h

+dd 06547d31fh

+dd 092e78143h

+dd 034a7bcdbh

+dd 0724b18a2h

+dd 066f7f1d8h

+dd 0458e5edch

+dd 0a939d333h

+dd 0bd31e818h

+dd 0ca594ac2h

+dd 0e2689066h

+dd 056384e37h

+dd 0d45185bch

+dd 0542df6c4h

+dd 0e02485aah

+dd 0e05f9598h

+dd 046db3db0h

+dd 0df048d76h

+dd 06a1d35a2h

+dd 06650b85fh

+dd 0f2a2d155h

+dd 0787e9118h

+dd 0e33fe185h

+dd 0b4cb8d93h

+dd 006b854dfh

+dd 0396bc751h

+dd 094465503h

+dd 0d4e149d8h

+dd 0379804e9h

+dd 006897926h

+dd 0ceb87c8ah

+dd 042a4143fh

+dd 08be0c1a4h

+dd 089bb337bh

+dd 081b32b9dh

+dd 01f0cd9a7h

+dd 0e68bbb5ah

+dd 0e15428dch

+dd 018c7b57dh

+dd 0a9a719e8h

+dd 01606c2e4h

+dd 04cd0d3d2h

+dd 056488e91h

+dd 00637a90dh

+dd 0a188e12bh

+dd 02bf5d72eh

+dd 0369fc70eh

+dd 0081deba0h

+dd 01d424350h

+dd 0eb4ec772h

+dd 0a37f2b09h

+dd 03c56bd8eh

+dd 0196bea18h

+dd 0f50551e4h

+dd 0124c96a0h

+dd 0ff05569bh

+dd 0b538be85h

+dd 00398311dh

+dd 046e6c840h

+dd 01df31656h

+dd 00f878050h

+dd 071ff9bb8h

+dd 0ba0db477h

+dd 0a8b30e5ah

+dd 0889aa5aah

+dd 0820ed649h

+dd 01975a904h

+dd 01919ebabh

+dd 044d4943fh

+dd 03daa0d6bh

+dd 00225762fh

+dd 0e46ae327h

+dd 0ff2207c3h

+dd 0a8efdbf5h

+dd 0b43cfa43h

+dd 0be1cdcc8h

+dd 0dd4efa8dh

+dd 0008a78f2h

+dd 00b2c41a1h

+dd 06f980a47h

+dd 095e26790h

+dd 026dd7107h

+dd 0e390456fh

+dd 0254ddd6bh

+dd 0d91d292eh

+dd 0b83808e7h

+dd 09b1523eeh

+dd 02923db23h

+dd 088c546ffh

+dd 0f541faa7h

+dd 0983b17fbh

+dd 0461e4bc7h

+dd 01969ee98h

+dd 015c58011h

+dd 0ef7949fdh

+dd 054923a98h

+dd 09edb4eaeh

+dd 067c0d2cbh

+dd 0a6030869h

+dd 07a6ea2edh

+dd 0077370a0h

+dd 07dbbc39bh

+dd 0e353a924h

+dd 067b698f9h

+dd 0729b7a13h

+dd 07cd59604h

+dd 0d65557f3h

+dd 0a2ddf839h

+dd 0757c0935h

+dd 026ae8f36h

+dd 06fe8148eh

+dd 0786af433h

+dd 078333d88h

+dd 0bebf733fh

+dd 09d91f150h

+dd 006f83277h

+dd 0642295fdh

+dd 0a7a43d77h

+dd 0bdd78c3bh

+dd 0936d4f8ch

+dd 0f07e9f47h

+dd 04c540f7ah

+dd 04521c6eeh

+dd 0f212d0b3h

+dd 0c69b35b5h

+dd 011b42c23h

+dd 098e49989h

+dd 010c3c43eh

+dd 0de961024h

+dd 0f94866ach

+dd 084932845h

+dd 095a05b27h

+dd 046e45bdfh

+dd 0b1e1f580h

+dd 0804ce08eh

+dd 0051b97e9h

+dd 0f8842fbfh

+dd 0080220abh

+dd 0b97d114eh

+dd 06ea2f6e8h

+dd 02a93e880h

+dd 06b74df6ch

+dd 0222fa7beh

+dd 0e2c765f5h

+dd 0fd250a6eh

+dd 01e682970h

+dd 0c5acd643h

+dd 0d8afeb2fh

+dd 08dd8cf3bh

+dd 05c6a640bh

+dd 0e65e4852h

+dd 01d711b33h

+dd 0e848bfcbh

+dd 0666c0a8bh

+dd 0af09bd8ch

+dd 04ae097a1h

+dd 0943cc920h

+dd 02025b8e4h

+dd 02db16125h

+dd 044f12a3fh

+dd 0866d7ee1h

+dd 060c1d2a5h

+dd 007b821abh

+dd 086e47fb9h

+dd 0a020f34bh

+dd 07e334c88h

+dd 0a9afb7e3h

+dd 068261764h

+dd 0ffe09884h

+dd 0b5b93c79h

+dd 02a192d38h

+dd 0600f953ah

+dd 0015a696eh

+dd 0ec6b4941h

+dd 0ba7d3af8h

+dd 08e7d71cah

+dd 04e6bb0e9h

+dd 074073c90h

+dd 0e807d9a7h

+dd 03ac8cda9h

+dd 0efda7c7bh

+dd 069b7bd8eh

+dd 00fdcd087h

+dd 05946073eh

+dd 0eea10393h

+dd 055c82f1dh

+dd 023c0cca0h

+dd 038e9915ch

+dd 0f22ced89h

+dd 0c851c660h

+dd 05b235afeh

+dd 03ce25521h

+dd 0c299305fh

+dd 0c086624eh

+dd 00136cd85h

+dd 078921d73h

+dd 018311e47h

+dd 065212ea6h

+dd 07f9ae942h

+dd 053e836cch

+dd 0a366fdech

+dd 0c55682a8h

+dd 0e8839d45h

+dd 0eed11deeh

+dd 022d567ach

+dd 0c05c29b3h

+dd 0a61bd6abh

+dd 0fa60d129h

+dd 0fd0891b9h

+dd 0b447ff4bh

+dd 0f426f8a5h

+dd 076d8f148h

+dd 0bdc00fdfh

+dd 0f4134967h

+dd 073304557h

+dd 05dd9f427h

+dd 0f8d3cfcch

+dd 07fbd7220h

+dd 0b6677041h

+dd 0d8ed760eh

+dd 058cb25e9h

+dd 09fbda06ah

+dd 0c79009d4h

+dd 063cc1bb2h

+dd 05b31b595h

+dd 0f4beadb0h

+dd 04f478e25h

+dd 0b6b2ec16h

+dd 0de6cf0b9h

+dd 045a1fb37h

+dd 011a13b86h

+dd 0a253dd4ch

+dd 0af832f57h

+dd 0e8d3f6a1h

+dd 0da6e7772h

+dd 051c67fbdh

+dd 03d59669dh

+dd 0c11e1873h

+dd 0bf5955afh

+dd 04805a55ah

+dd 0c9c77a89h

+dd 0c867030fh

+dd 0213c839bh

+dd 04fe96985h

+dd 085a9c929h

+dd 05804c48fh

+dd 0ac040f4ch

+dd 0601ac532h

+dd 0ccea7916h

+dd 0714791cbh

+dd 0c8a268b8h

+dd 0395c38a7h

+dd 0dfd011e4h

+dd 0feb9a00ah

+dd 08d75acb1h

+dd 0205bc99bh

+dd 0407f323dh

+dd 0735a6b87h

+dd 012b751f6h

+dd 0859c8f0fh

+dd 0695b3c25h

+dd 03483e53ah

+dd 0f74dc73fh

+dd 07655357dh

+dd 0c8d025f2h

+dd 006ecde33h

+dd 048402227h

+dd 08dc65179h

+dd 09f022d8ah

+dd 0f6f501a7h

+dd 0de5dd25fh

+dd 0cae881fdh

+dd 09675dc3bh

+dd 0f5bebbedh

+dd 0fe8b4c19h

+dd 035414e06h

+dd 0d03523e8h

+dd 0647be5d8h

+dd 0fcd3febdh

+dd 07b4a8809h

+dd 02534e350h

+dd 0c326a685h

+dd 0962223eah

+dd 0b367b565h

+dd 035db1ce9h

+dd 02be2d46ah

+dd 09d1b1cc7h

+dd 09a8ee37bh

+dd 024a7ca72h

+dd 0981e794ch

+dd 07a7ef5ech

+dd 08d62005bh

+dd 0ce64efceh

+dd 0cbf3868ah

+dd 05c20ef63h

+dd 0483ff3c6h

+dd 0c93148f7h

+dd 015edea6ch

+dd 05753dc82h

+dd 030f52e7eh

+dd 0fb113f83h

+dd 0294e925fh

+dd 0365e57ffh

+dd 0e7cdb7f7h

+dd 0f2177792h

+dd 0d3094660h

+dd 077f587afh

+dd 0535d9380h

+dd 02115522fh

+dd 052e56d15h

+dd 065a3ada9h

+dd 01d4999fdh

+dd 06d92a8f7h

+dd 061c8d189h

+dd 09bdd543fh

+dd 0609e207ch

+dd 0f602eb03h

+dd 0731a0753h

+dd 0052db0a0h

+dd 09929111eh

+dd 0fb29b640h

+dd 0346c12fah

+dd 06bd0e2b3h

+dd 03afaf543h

+dd 08a2be82ah

+dd 0b5c18f15h

+dd 0fc87c33fh

+dd 03a9d9f55h

+dd 072cf4a9eh

+dd 091b3a324h

+dd 09a58aa71h

+dd 00d69d708h

+dd 0e96888d1h

+dd 0195fddb5h

+dd 064a74948h

+dd 0a0c0a7cah

+dd 0ca31a0c1h

+dd 018505568h

+dd 0451666bch

+dd 0cd279da9h

+dd 0f869c15dh

+dd 07232b4cah

+dd 094b772dfh

+dd 0c572d90dh

+dd 0bf349b9dh

+dd 0b35e1d35h

+dd 0e04fa5aah

+dd 04bcb9844h

+dd 07b1f6c18h

+dd 0cce5e903h

+dd 0a3797715h

+dd 08f7b0d5ch

+dd 0236ae138h

+dd 09f9a0bd8h

+dd 0f3be2d80h

+dd 020f61568h

+dd 05ac78927h

+dd 01391f810h

+dd 073b80e7fh

+dd 0009647dbh

+dd 0826d21eah

+dd 010662a4eh

+dd 0ae437ecbh

+dd 0332fea4ch

+dd 081711d8fh

+dd 091cf218dh

+dd 041c4e0aah

+dd 0fb02d007h

+dd 084276a5ch

+dd 0b3722b77h

+dd 0f20f8eaeh

+dd 030037020h

+dd 0f6ce21d9h

+dd 059fd45aah

+dd 0c6ad8f28h

+dd 0611d789ah

+dd 020368fbah

+dd 0ecc3d186h

+dd 031350ebbh

+dd 0ccf45e1bh

+dd 0988d6ec7h

+dd 0255a2f66h

+dd 00d4b88e4h

+dd 0eadbb2a3h

+dd 0c78d1ca3h

+dd 01b4b51cbh

+dd 0008fa6aeh

+dd 0a47ef3e0h

+dd 0fd274ed0h

+dd 03bca4f65h

+dd 0d88b5b47h

+dd 0b63f3107h

+dd 083653318h

+dd 0246db8d2h

+dd 0a43b567ch

+dd 0df8c1d76h

+dd 0bbc2ccafh

+dd 03a2b0cceh

+dd 0ea21ba46h

+dd 051589ad0h

+dd 07bdf3ad6h

+dd 0ef0a5805h

+dd 076c23d9ah

+dd 06c65ea57h

+dd 0c0fb5fa8h

+dd 093b549abh

+dd 07c7d445ah

+dd 0c262fc70h

+dd 095a633c9h

+dd 04ba1071fh

+dd 03fc9c197h

+dd 08f781498h

+dd 0fea301fch

+dd 02ab977a6h

+dd 03119ba74h

+dd 0894a2058h

+dd 03fd761f0h

+dd 008af9276h

+dd 065b9547ah

+dd 0cf372f7ch

+dd 051404124h

+dd 0e458da5ch

+dd 001e3ceabh

+dd 09e72c9b4h

+dd 03010c2ebh

+dd 0900eee2fh

+dd 076e8538ah

+dd 04bd32162h

+dd 0d5fce0c1h

+dd 0b3c994e7h

+dd 09ee3676ch

+dd 0e1984781h

+dd 04856ede0h

+dd 0645fa0deh

+dd 064babd91h

+dd 00d1b947eh

+dd 036057399h

+dd 071120795h

+dd 0297af4b6h

+dd 011983790h

+dd 0b86e8982h

+dd 0e5c17305h

+dd 05cb1266bh

+dd 05f82be03h

+dd 0bf66da08h

+dd 06c028d55h

+dd 0091ed50dh

+dd 04d4866d8h

+dd 0a3b534e3h

+dd 00a66e9eeh

+dd 0e31ede89h

+dd 0cb541412h

+dd 0d7eda672h

+dd 03f0ed448h

+dd 0110d791fh

+dd 004f3ca60h

+dd 042a5e8f1h

+dd 061a51eb7h

+dd 0ed5e10a1h

+dd 0218bc348h

+dd 056a3bb26h

+dd 09ada920bh

+dd 038e6408ah

+dd 0c38d67a5h

+dd 0557353adh

+dd 0de0a9ee9h

+dd 05fb60ecch

+dd 0e55dfadfh

+dd 0e7b1e43bh

+dd 0184286f6h

+dd 065e0b403h

+dd 06677844eh

+dd 0d7cc2446h

+dd 04b6ce48ch

+dd 02dc1b470h

+dd 0753707aeh

+dd 04ff7fa77h

+dd 0f4112a67h

+dd 017f4d5e9h

+dd 021142660h

+dd 047f70714h

+dd 087e690b4h

+dd 0e07c7176h

+dd 042c3eb33h

+dd 0bf30867dh

+dd 0ab65a435h

+dd 0324ede73h

+dd 02c49f191h

+dd 05bad32f6h

+dd 0881df069h

+dd 0d216c31ch

+dd 0ddea5edeh

+dd 093fc4960h

+dd 0c5c49f57h

+dd 038d163d5h

+dd 00017eb2ch

+dd 0ab43505dh

+dd 02e7f91ceh

+dd 07b3076e7h

+dd 07a1eb7b7h

+dd 0029cfe8eh

+dd 0599142aah

+dd 0aefbc86ch

+dd 0100f926dh

+dd 009ab8c09h

+dd 0f3f8c47ah

+dd 02c96e550h

+dd 0da8d9459h

+dd 0f805443fh

+dd 055852fb3h

+dd 0b27dc429h

+dd 072b43a37h

+dd 0961164d0h

+dd 0df7fad05h

+dd 0f710bd4eh

+dd 0c12eb542h

+dd 0c2c82850h

+dd 0d1c003cah

+dd 0c1c8ed14h

+dd 05cbc56c8h

+dd 027e9add7h

+dd 0639e7aafh

+dd 081ed20f1h

+dd 026458482h

+dd 09fd6fa93h

+dd 09699f297h

+dd 0cde6b41dh

+dd 0bb520a4dh

+dd 0ec6f71eah

+dd 0bb2de175h

+dd 0a4cdc36bh

+dd 05563d58dh

+dd 051765881h

+dd 0c86bf116h

+dd 0ad664f17h

+dd 0593442f7h

+dd 01ed69c05h

+dd 0a37ee6b9h

+dd 0fb0dc5e4h

+dd 008fb3de8h

+dd 05bc4b0c5h

+dd 0918c8b14h

+dd 0f781bc2ah

+dd 04e697870h

+dd 0a571ba14h

+dd 05373a2a4h

+dd 0e36ec808h

+dd 0d5024164h

+dd 0ebeafbe8h

+dd 0a64fc67ah

+dd 00635472ch

+dd 087814639h

+dd 03172699ch

+dd 022be96b5h

+dd 05d2d03a9h

+dd 0cec6ce8dh

+dd 0b99c3472h

+dd 0bdd59405h

+dd 03a814b62h

+dd 09dbc0c62h

+dd 03c9b3cbch

+dd 0e70cf7c8h

+dd 0269054a7h

+dd 06444e272h

+dd 03e46a539h

+dd 0db100d37h

+dd 0c7497248h

+dd 09a6d74f4h

+dd 06f0e0d53h

+dd 0dfa5f1deh

+dd 024e007eeh

+dd 062f66129h

+dd 07e915ab5h

+dd 0e4ef25f0h

+dd 005fe020dh

+dd 01e7ddaf6h

+dd 03bfc0be9h

+dd 0bdf2c097h

+dd 06b109e84h

+dd 004e71314h

+dd 06a8d6c71h

+dd 0b5885235h

+dd 02c2d87d0h

+dd 0144b053ch

+dd 094e75089h

+dd 03829321dh

+dd 0b3753609h

+dd 072849db6h

+dd 03b1e44ceh

+dd 088c584a1h

+dd 0d3516193h

+dd 088ebf573h

+dd 03dce5e17h

+dd 0cff2bfdch

+dd 06b07b650h

+dd 022cc8ebch

+dd 0ead2f119h

+dd 01ade7f84h

+dd 03065ec75h

+dd 0124d2b33h

+dd 00dda6c3dh

+dd 01293c9c0h

+dd 0598f57c7h

+dd 08de8f7f8h

+dd 0a76d99d6h

+dd 065c48395h

+dd 03f759540h

+dd 08017c035h

+dd 0bf546521h

+dd 06b4d74a2h

+dd 03bf0f2eeh

+dd 08afa405bh

+dd 09c9a7e02h

+dd 0250b0addh

+dd 0028fbee3h

+dd 0dfba8dddh

+dd 0d78b0b65h

+dd 02f704f93h

+dd 00d141683h

+dd 0552bf0c6h

+dd 00d045bb8h

+dd 03c81859ah

+dd 0fff5e5b6h

+dd 04df26d63h

+dd 0216d95fbh

+dd 05dfa9f22h

+dd 02af103b9h

+dd 0a1105569h

+dd 0ea92ee17h

+dd 081ddef2eh

+dd 0ae86a467h

+dd 0dbe0490fh

+dd 0bbfb93b1h

+dd 031eb10b7h

+dd 0210f6492h

+dd 032c709d8h

+dd 06cbdb26ch

+dd 03b6df21bh

+dd 007c5a461h

+dd 03411cf8ah

+dd 04bc0f691h

+dd 0789f8a1ah

+dd 0063598fdh

+dd 017cddb62h

+dd 089a50175h

+dd 08caf6d5eh

+dd 027856f54h

+dd 0d165557ah

+dd 00f35ad16h

+dd 004dd0e27h

+dd 0fb06d811h

+dd 0ab9f083ch

+dd 060b674d9h

+dd 03aafbd4dh

+dd 0ddadeb77h

+dd 06bc8231ch

+dd 057b8ad29h

+dd 0dc6b8b50h

+dd 0cb8f6962h

+dd 08ab94f35h

+dd 04d4c84c8h

+dd 071b5a5c4h

+dd 03ecf23f3h

+dd 091a552e1h

+dd 079ad9db4h

+dd 07647661eh

+dd 08b8e5f99h

+dd 067b4ae6eh

+dd 005493ae9h

+dd 045077f5dh

+dd 0893e3a21h

+dd 0264dd691h

+dd 0a3fd663ah

+dd 03fda3a92h

+dd 07416cd36h

+dd 06a9b53e2h

+dd 03afbd006h

+dd 085e017ffh

+dd 007240975h

+dd 0e4a48a70h

+dd 0bec217f0h

+dd 04a64f264h

+dd 075eb9671h

+dd 01d5ff818h

+dd 06583af96h

+dd 0dbedda7ah

+dd 05fdc8967h

+dd 0b3a688d6h

+dd 0e4a119c3h

+dd 098f3a34ah

+dd 0c73663a1h

+dd 0793ff96ah

+dd 0457e4cefh

+dd 0e69d1633h

+dd 0e358528bh

+dd 058da431dh

+dd 065216ca7h

+dd 0a452f978h

+dd 0eda2a154h

+dd 0c0426dcch

+dd 0db12f489h

+dd 02a11a34ch

+dd 0fa26f397h

+dd 06abc971eh

+dd 09ea225f6h

+dd 0580a36adh

+dd 0aa076f08h

+dd 0be60760fh

+dd 043aff2dbh

+dd 0589a301ah

+dd 0f2e7fc08h

+dd 04f29de9ah

+dd 063b7ccd1h

+dd 097329f14h

+dd 02c78421ch

+dd 0c381e15fh

+dd 0ca68ff10h

+dd 03479c07ah

+dd 068962469h

+dd 090d9b5e2h

+dd 0dc52dc5ah

+dd 0d61c68dch

+dd 0cfe71023h

+dd 088cbbeb0h

+dd 007fd409ch

+dd 0229a1d35h

+dd 01e285b07h

+dd 03f27ba04h

+dd 09e738688h

+dd 07c99a5b9h

+dd 08d2b977bh

+dd 0a3840fb8h

+dd 099aefa1ah

+dd 01dfea0b8h

+dd 02aca5196h

+dd 058927e94h

+dd 0ae82bfabh

+dd 0222fc00ah

+dd 0d1e525e3h

+dd 00a3198e6h

+dd 05e681be8h

+dd 0c4f0c149h

+dd 0232c5e78h

+dd 0ce9c9c24h

+dd 04a956830h

+dd 06de4bd6ch

+dd 03e200562h

+dd 0cb8793a5h

+dd 0dc338a08h

+dd 086f962a7h

+dd 0bc65cf5ch

+dd 040e25f03h

+dd 092e5f82fh

+dd 0a61ed400h

+dd 0a811f061h

+dd 0c88d5382h

+dd 0d2634d1fh

+dd 082b5e0d4h

+dd 088f7f0abh

+dd 0e18b17e5h

+dd 0e6c274ceh

+dd 0d66a9f6bh

+dd 047d665deh

+dd 0d400e7e3h

+dd 02bfc9b16h

+dd 0b6393b9ch

+dd 097d7d31ch

+dd 0ae94e2c8h

+dd 0f001b0b6h

+dd 07487fee9h

+dd 0ddde32e0h

+dd 0ec13489eh

+dd 08ef74527h

+dd 0fe85199ch

+dd 04b60da2eh

+dd 038b516d8h

+dd 090b8160ch

+dd 0198212bch

+dd 02b12769eh

+dd 0361c1d8fh

+dd 0af5e279ah

+dd 081cb5631h

+dd 0a02d6b0fh

+dd 05e29a283h

+dd 06af6c9a7h

+dd 01ba5f698h

+dd 06bda2a41h

+dd 0ce4c6760h

+dd 0dd26e50ah

+dd 07da68c73h

+dd 0932179f0h

+dd 0c236645bh

+dd 0fc604094h

+dd 0ed9e8905h

+dd 0754ad663h

+dd 055216b0ch

+dd 0af1f35a2h

+dd 01e8f5163h

+dd 027bb2e57h

+dd 05005d142h

+dd 033ded6f5h

+dd 02ebe920dh

+dd 05916c60fh

+dd 01ff01c89h

+dd 0048c7080h

+dd 03bf397b6h

+dd 0fd0b8268h

+dd 02fd9e5c3h

+dd 0439065b6h

+dd 044652ba5h

+dd 02a566cafh

+dd 0d5a751b2h

+dd 055c89014h

+dd 080da767eh

+dd 0aa5e9e0fh

+dd 05e78b3c7h

+dd 01465e8b5h

+dd 070510965h

+dd 019ea25d1h

+dd 02b85a96fh

+dd 06f39514fh

+dd 06a0d9517h

+dd 08fe289e3h

+dd 0562b1470h

+dd 0769abd5ah

+dd 0d74fcf66h

+dd 061588c3eh

+dd 0e44bb6c9h

+dd 089ef9963h

+dd 0ec445c2ch

+dd 068ba9690h

+dd 0458209a1h

+dd 01dc642b0h

+dd 0985c9c00h

+dd 0d9ae4fefh

+dd 04da6a67fh

+dd 07fa48817h

+dd 0ba946565h

+dd 05b707f42h

+dd 01f104ea8h

+dd 01b25b71bh

+dd 04a5a3bf9h

+dd 03189d4a5h

+dd 0b12b8c24h

+dd 0dd01310dh

+dd 0a60e4476h

+dd 0e02a9018h

+dd 00af488c0h

+dd 0ec0b84f4h

+dd 062e9bbc0h

+dd 09ea883d6h

+dd 0dd379c46h

+dd 054f34ea0h

+dd 0030e7b27h

+dd 071ecea5eh

+dd 02e8e14bah

+dd 00e0eb990h

+dd 0752fead9h

+dd 01eb48d05h

+dd 0aad0f2b9h

+dd 043f93749h

+dd 0532b4289h

+dd 01525e206h

+dd 07f640aa7h

+dd 0a84a0561h

+dd 0f9329d98h

+dd 09c2164d4h

+dd 0cf79738fh

+dd 0049a5ca7h

+dd 09785506eh

+dd 0245ee14ah

+dd 0cb625db1h

+dd 06e3e952ch

+dd 0dc9dd0a9h

+dd 0268bb02dh

+dd 0c08ca499h

+dd 0f6d5cccch

+dd 0f2c2304eh

+dd 0ffa05e7ch

+dd 0c50073f8h

+dd 08bd77921h

+dd 09f3b1368h

+dd 08ce25c88h

+dd 078883d61h

+dd 04f49ec71h

+dd 0c1e392adh

+dd 0e3323031h

+dd 07e4bb0a2h

+dd 05059bc26h

+dd 0fc29c8e7h

+dd 09169e0c5h

+dd 0116eb9fdh

+dd 0251c50eeh

+dd 073d18b7ch

+dd 06bb982e5h

+dd 07a91df57h

+dd 03a6b29cfh

+dd 0d972dad6h

+dd 0cd9ca135h

+dd 0e69d8d15h

+dd 013f94a43h

+dd 0f5d827c4h

+dd 0e7019ffch

+dd 0bbf087a0h

+dd 09ae0032bh

+dd 07630701dh

+dd 06ad77a92h

+dd 0cb066b04h

+dd 07f494dcch

+dd 013c0310ah

+dd 002eed4b2h

+dd 0ff95adcbh

+dd 02a83f5a4h

+dd 01d3c0c99h

+dd 088aa9ca4h

+dd 06cd3b8e8h

+dd 014c9a0fbh

+dd 00e0338e3h

+dd 0acfb9da8h

+dd 01f7bae2bh

+dd 0acd60ba8h

+dd 0c8276cbch

+dd 0af3ee01eh

+dd 0b6d63b0dh

+dd 0d0eb3055h

+dd 07d660ddbh

+dd 06edbc7b4h

+dd 0079a7e8ch

+dd 0e98fb8e8h

+dd 08a4c94bah

+dd 02fdb53d5h

+dd 0047d7e88h

+dd 074676fc8h

+dd 0343e85a1h

+dd 0d569e1b5h

+dd 03fd6c4d0h

+dd 094ba5c15h

+dd 0d4e76622h

+dd 00c037430h

+dd 0839e1458h

+dd 091274db5h

+dd 04245d2d6h

+dd 011ae93e0h

+dd 00d6e21e3h

+dd 014d984c2h

+dd 0b3f3cf56h

+dd 0a462cd40h

+dd 09118664eh

+dd 00252afb9h

+dd 00f9d0c45h

+dd 0ff709a42h

+dd 04d725db7h

+dd 00ef4c659h

+dd 066c9c1adh

+dd 0bf9981a0h

+dd 004758723h

+dd 012c23db3h

+dd 0a9632f6bh

+dd 082273da1h

+dd 049801675h

+dd 0a4b8f3a7h

+dd 0409e0e1dh

+dd 0f4d2acf8h

+dd 0e0f42ecah

+dd 08cbed265h

+dd 056f0d2b8h

+dd 078562ee9h

+dd 0eff8df72h

+dd 0786c3f95h

+dd 0b34f1ed4h

+dd 07468b74fh

+dd 07f6a0006h

+dd 05cbbc2e0h

+dd 0ddc288e8h

+dd 0074b1548h

+dd 058897df2h

+dd 001b1e388h

+dd 0a3ba7220h

+dd 04ee90d19h

+dd 09cbe74dch

+dd 0827b52fch

+dd 00a3fd39bh

+dd 0564c1e72h

+dd 0768f57ach

+dd 0164bc2a6h

+dd 0a649350ch

+dd 07778030fh

+dd 095e59b18h

+dd 0ed2057e3h

+dd 01f27a560h

+dd 0e7e9177ch

+dd 0f51f3e55h

+dd 00600c818h

+dd 031ab06d3h

+dd 058219293h

+dd 0f67edf48h

+dd 0e7de3cbch

+dd 0937b7e2eh

+dd 0ac51546fh

+dd 06eee24a2h

+dd 06a5d9bdeh

+dd 0d5a1e968h

+dd 05912d524h

+dd 098244e82h

+dd 06622b107h

+dd 0d961b1dah

+dd 04bb1932dh

+dd 01ec47a08h

+dd 0ac8460f6h

+dd 000d0586eh

+dd 028a737dfh

+dd 0d8dfc8a7h

+dd 0484d7a95h

+dd 0fa9a650dh

+dd 0c13c6e94h

+dd 03c400bdbh

+dd 07a10143ch

+dd 0f42b450ch

+dd 047d1b577h

+dd 0f51f6004h

+dd 0e3f630c8h

+dd 021ed2e17h

+dd 014974898h

+dd 0cca8fd63h

+dd 0a718da40h

+dd 05c0b0068h

+dd 05602e294h

+dd 0bd2b1625h

+dd 05b4adabeh

+dd 016250c17h

+dd 08f0563eah

+dd 021729da1h

+dd 0a8da61edh

+dd 0521b0357h

+dd 0804ab638h

+dd 0444f9b71h

+dd 0bfb4d986h

+dd 0a2b4f343h

+dd 068c19578h

+dd 02c23c613h

+dd 0d513a680h

+dd 0cfd3aa01h

+dd 001772257h

+dd 06d9aa086h

+dd 056961dbch

+dd 0234b4bafh

+dd 0032ce314h

+dd 03a05e204h

+dd 0d43d7e81h

+dd 026165df0h

+dd 0694f0070h

+dd 078ce60bch

+dd 01249223dh

+dd 0d0a02f96h

+dd 0ef18b417h

+dd 0b398d8f9h

+dd 08424f984h

+dd 0dc854e41h

+dd 0571e4124h

+dd 0ac96e6cch

+dd 01964a93dh

+dd 052e4da8ah

+dd 0d8a563b0h

+dd 0a58c18dfh

+dd 02bbff6c9h

+dd 0bc87dba1h

+dd 0a4614029h

+dd 08b54ef92h

+dd 0ff984560h

+dd 0c202c26dh

+dd 0829be188h

+dd 0778ae5bfh

+dd 02e433319h

+dd 0bc425735h

+dd 0c87dbfb9h

+dd 0dadda5f5h

+dd 00a21ab16h

+dd 0cda7ad16h

+dd 07fc3abfdh

+dd 0f141b8d5h

+dd 0e6826271h

+dd 0edd06d64h

+dd 05edfc0f9h

+dd 065943b98h

+dd 007a53a85h

+dd 0aba856e7h

+dd 04f28cfa4h

+dd 019b13580h

+dd 0ae76325ch

+dd 046542af0h

+dd 0b3f5c8fdh

+dd 0a53ea4e2h

+dd 0f0142f47h

+dd 0fe74a2dah

+dd 01a95c796h

+dd 0faf0f7f3h

+dd 0f9635a46h

+dd 0c9d8a3d5h

+dd 0eac39155h

+dd 04b145554h

+dd 0cc82a617h

+dd 0ca31217ch

+dd 0b76e61c7h

+dd 0e62bf36bh

+dd 0a0604c65h

+dd 0886f25abh

+dd 0be284e01h

+dd 050967aa8h

+dd 063b93202h

+dd 0b80475f8h

+dd 0d5f58782h

+dd 05ea2ff89h

+dd 09ef82e29h

+dd 09e9cbae2h

+dd 0ed1092eeh

+dd 017dc4693h

+dd 02761f2bbh

+dd 0b62e863fh

+dd 0f75bf4deh

+dd 0f8e1906dh

+dd 0fc9c2257h

+dd 01cab95d0h

+dd 0cd77d9cdh

+dd 007d6f341h

+dd 0a58e0b8eh

+dd 0fbace66bh

+dd 0aa38c9a6h

+dd 06fc4ae5eh

+dd 0335e617bh

+dd 098c12983h

+dd 00d58f517h

+dd 0277b67d7h

+dd 0baa0cd3ch

+dd 05c49e72ch

+dd 09a1365e6h

+dd 00aea4036h

+dd 0cb5ddc9fh

+dd 03b4b4c10h

+dd 01de32ebfh

+dd 0c54dbda3h

+dd 03edbba6ch

+dd 04d7d5374h

+dd 066a6b5cfh

+dd 0297aed7eh

+dd 034243309h

+dd 018719001h

+dd 0deb8affeh

+dd 087ca9325h

+dd 073617157h

+dd 0edde145ch

+dd 02876a346h

+dd 02a6ce8f5h

+dd 09393e7c1h

+dd 0ecfe6926h

+dd 0ef147893h

+dd 0b1396bdch

+dd 00307fe73h

+dd 070b8f022h

+dd 098aabb22h

+dd 0b27d0d43h

+dd 0bd5bc93ah

+dd 0da1be74dh

+dd 00cc1fd28h

+dd 09a9f28d2h

+dd 04e72ea4bh

+dd 027e417d5h

+dd 0c6df4c10h

+dd 092b59d54h

+dd 0f7cb8c39h

+dd 0c0a6eca8h

+dd 02eeb4df3h

+dd 082c99eeah

+dd 0c525e774h

+dd 0bdc53518h

+dd 055ba4d59h

+dd 0a2de9d16h

+dd 022a21412h

+dd 0646eaab1h

+dd 0bf0e7554h

+dd 030d9cdf7h

+dd 0e333b927h

+dd 0cbb7b8d2h

+dd 076f27974h

+dd 04105371eh

+dd 05a2f3c88h

+dd 022d5b5dfh

+dd 0d1fc450ch

+dd 0556bda35h

+dd 0667b676bh

+dd 09364e51dh

+dd 0d62c53b8h

+dd 0186d948ah

+dd 013bafbc4h

+dd 04f53a406h

+dd 07a21ed41h

+dd 01ca415e8h

+dd 005f229abh

+dd 0ec76286ch

+dd 0a2c18921h

+dd 0d3c3a0deh

+dd 044d73544h

+dd 0576e8b86h

+dd 0c06d46abh

+dd 0b9dded90h

+dd 015aaca42h

+dd 02d2894fah

+dd 0a1d342f6h

+dd 0fface671h

+dd 0c9908637h

+dd 06ebf5345h

+dd 0a484b0e2h

+dd 05e165abeh

+dd 0625aac89h

+dd 0d26ec4c0h

+dd 01f66d696h

+dd 07221c646h

+dd 032059030h

+dd 0a06019fbh

+dd 0fb9803fah

+dd 0f6b3d13bh

+dd 0c00779bah

+dd 0c5e97f0eh

+dd 030b2f792h

+dd 0c9a6f23bh

+dd 02d004e9bh

+dd 0f19bd61dh

+dd 0410fe6c7h

+dd 0c1a9443ch

+dd 095c019f1h

+dd 03d033a44h

+dd 0a5cb100dh

+dd 0017a47f5h

+dd 00acad805h

+dd 0136e2dc8h

+dd 09e7948fdh

+dd 05bb96ca1h

+dd 009508760h

+dd 0f88c059eh

+dd 0292fffc3h

+dd 0e2509484h

+dd 08fa78f37h

+dd 08295b68fh

+dd 0d055890bh

+dd 03636527eh

+dd 092ee0595h

+dd 0c291fb9dh

+dd 0765b41dbh

+dd 01e0b5d04h

+dd 0eb5874fdh

+dd 0f2eed2a6h

+dd 07171c2a8h

+dd 023dcd7f6h

+dd 0cc2eb7d2h

+dd 0c9bf44f7h

+dd 0dc343b69h

+dd 0dfc4023bh

+dd 093ee27e1h

+dd 019ce8e1bh

+dd 0e7f32d84h

+dd 0310c3545h

+dd 089fb107eh

+dd 007786e1ch

+dd 0369547d0h

+dd 099c4055ah

+dd 0815a3d21h

+dd 0ea09a5afh

+dd 0d75c9f75h

+dd 014df723eh

+dd 07b904d4ch

+dd 0d252d1b1h

+dd 05da633f1h

+dd 053920c7ah

+dd 08bcef58ah

+dd 00dbe0a8ah

+dd 08a6c3cd4h

+dd 07d63838dh

+dd 07802879dh

+dd 0370a88e0h

+dd 0972c138eh

+dd 037fc6e91h

+dd 02b84c7e4h

+dd 019487257h

+dd 0c9207133h

+dd 0b7253f6ch

+dd 0f62888c7h

+dd 04cfffd55h

+dd 04363416eh

+dd 03e5f1500h

+dd 066e2227ah

+dd 06527b377h

+dd 05bfb635ah

+dd 0ede15cf6h

+dd 0e7a266f8h

+dd 07c397aceh

+dd 06a6a0f7dh

+dd 03fcca028h

+dd 0a1cdf309h

+dd 00dcaa6b0h

+dd 05e7b0ea7h

+dd 0bb4a9f93h

+dd 0c4e6660fh

+dd 013fd947ch

+dd 0d00faca2h

+dd 055c648feh

+dd 050b22bach

+dd 022d76e2fh

+dd 01ba10a22h

+dd 0fb0b0323h

+dd 0eff3db5eh

+dd 0023d4e86h

+dd 0f91d8193h

+dd 0243466feh

+dd 07b4d9fedh

+dd 05a0982e8h

+dd 04be30194h

+dd 0e82e0b2eh

+dd 0110d3170h

+dd 07aafb52eh

+dd 06e29be10h

+dd 0adf636a9h

+dd 08e1d8569h

+dd 0670aaf03h

+dd 0fc303b14h

+dd 09922171fh

+dd 0857ddd93h

+dd 0b292cc7eh

+dd 0d80a5480h

+dd 003af99c7h

+dd 0d18bf133h

+dd 09a025c56h

+dd 07ebd96a6h

+dd 0cfc3d976h

+dd 0a7f85749h

+dd 00842ce96h

+dd 06b4ceb96h

+dd 054ad9a6bh

+dd 08ff4eae3h

+dd 068a21f4bh

+dd 018c92718h

+dd 0aef9e163h

+dd 0aa44362ch

+dd 06afc834ch

+dd 0c318d844h

+dd 0f4a1b6eeh

+dd 093858d74h

+dd 008d83515h

+dd 02c53e65ah

+dd 093094c8ch

+dd 06ac66bb9h

+dd 0c4253c7dh

+dd 039a63f4dh

+dd 0e8a6f1b0h

+dd 06901c8fbh

+dd 05a1fa1c0h

+dd 0be0dc99ah

+dd 0600fb6a4h

+dd 06ee8f97eh

+dd 02fa38aa0h

+dd 0dd3533a4h

+dd 0daf643bah

+dd 057fedcd7h

+dd 0d3da6730h

+dd 038a20df4h

+dd 008af1509h

+dd 02a66f38ch

+dd 0b5c331afh

+dd 02bdf2449h

+dd 0694edea9h

+dd 07001878eh

+dd 0e5fb535bh

+dd 067aaf720h

+dd 05d643a5eh

+dd 02673c476h

+dd 05100e9f6h

+dd 0cbbd9fe5h

+dd 079787e17h

+dd 02b507a1ch

+dd 01fefe993h

+dd 08bc805b4h

+dd 054e3af88h

+dd 037185cefh

+dd 0cd68fccfh

+dd 012da8533h

+dd 015181a9dh

+dd 00d9a3ec1h

+dd 0214c4bd5h

+dd 04f665527h

+dd 0d07162e6h

+dd 0e8cb5f2ah

+dd 083648854h

+dd 0fc5bd72bh

+dd 0bf560579h

+dd 0def183e7h

+dd 069911780h

+dd 0d7aebc22h

+dd 00c2ff7feh

+dd 0eb0a61e7h

+dd 09ad38904h

+dd 081505edah

+dd 06bd369f4h

+dd 0a9ad1191h

+dd 0ecff71bah

+dd 04bb19c88h

+dd 0d1555c02h

+dd 0b11def27h

+dd 085e69920h

+dd 0b880f292h

+dd 0545b3f3eh

+dd 01956d738h

+dd 01da5064fh

+dd 0c38ec3deh

+dd 024f32c93h

+dd 07ffd5e3ah

+dd 08cc399b7h

+dd 0b962db24h

+dd 048faa727h

+dd 05ef30846h

+dd 002c2dc60h

+dd 015d77b36h

+dd 0c21e5d92h

+dd 0e3fabbe9h

+dd 0171d9754h

+dd 0a755c2eeh

+dd 0c8e839e2h

+dd 0d5e62ecch

+dd 045f598d9h

+dd 098ab7ff1h

+dd 0a80353e1h

+dd 0391b85c9h

+dd 097aa7dbbh

+dd 0ca2ccd3fh

+dd 0918115abh

+dd 0f8fe4492h

+dd 0fe34fe1bh

+dd 00ae2c033h

+dd 03f6e6122h

+dd 0716e3bd3h

+dd 0128247d4h

+dd 03e6c8747h

+dd 08a613b44h

+dd 0cff34c90h

+dd 0facd7621h

+dd 0ecd773f7h

+dd 094ea79fah

+dd 03a5fbd79h

+dd 0ca8193aeh

+dd 088394a0bh

+dd 030f2d651h

+dd 0724260beh

+dd 04d267e89h

+dd 0192b8cfch

+dd 062cc66e9h

+dd 01758102fh

+dd 03f0513a2h

+dd 041441ef2h

+dd 0d662f4afh

+dd 0ab178fbdh

+dd 0e08c10c4h

+dd 08ed0dec1h

+dd 01f6a4392h

+dd 002a95d30h

+dd 08777f650h

+dd 08601395ch

+dd 0b4f6d8c8h

+dd 03128da12h

+dd 0f77eb4d0h

+dd 0386bbe75h

+dd 0c7464c9eh

+dd 0a87ebee6h

+dd 0971b5ff2h

+dd 072f2c0c7h

+dd 0832209b7h

+dd 007d09bd1h

+dd 037dc405dh

+dd 0a94c94efh

+dd 065b1a7fdh

+dd 0c603c88ah

+dd 0c913be8bh

+dd 0b7e41b9eh

+dd 03fd882b2h

+dd 0e67e709dh

+dd 01fdae0c2h

+dd 098a9ce65h

+dd 049147909h

+dd 08504a780h

+dd 0d98c4170h

+dd 0fdb04626h

+dd 06bb655d1h

+dd 0aecd5c38h

+dd 040bc5226h

+dd 0db45e89dh

+dd 0c1901197h

+dd 062da0138h

+dd 0487f35dbh

+dd 0ac68d1c9h

+dd 0247c53e4h

+dd 0f1ff8aa3h

+dd 033e11332h

+dd 0f9bf7312h

+dd 004fc5d44h

+dd 00c7763b2h

+dd 07619f813h

+dd 02da97f53h

+dd 05e2c5036h

+dd 083c08c2fh

+dd 01f6bb78ch

+dd 0f0a6a8efh

+dd 0e431927eh

+dd 071f0f7b8h

+dd 08a00a464h

+dd 090e93101h

+dd 096ecd688h

+dd 0b8fe2151h

+dd 0a97c5a44h

+dd 05ca5ad07h

+dd 01ffb9fb8h

+dd 0e60e295bh

+dd 022b9cac3h

+dd 030d37ffah

+dd 0928b2bach

+dd 00e4f8262h

+dd 00596c6eeh

+dd 0309fd1ebh

+dd 0b5480c57h

+dd 0976fb136h

+dd 06873cfddh

+dd 0996e86c3h

+dd 06bc188d5h

+dd 0af5c00d4h

+dd 03d5c7e8ah

+dd 009ca60efh

+dd 0bd2325c5h

+dd 0afe2bf47h

+dd 07fcd46c3h

+dd 0b87e9f7fh

+dd 0742522fch

+dd 02308c2fah

+dd 0e7a23b58h

+dd 0c0c655c4h

+dd 0950db52ah

+dd 06fc8588bh

+dd 0682caa9bh

+dd 07ca15d13h

+dd 0879f5e84h

+dd 00f509989h

+dd 013c0d4c6h

+dd 03f51be01h

+dd 0839093a1h

+dd 07c58b555h

+dd 008d1f806h

+dd 071a8d87dh

+dd 04cd68181h

+dd 0387469e8h

+dd 0fc99db15h

+dd 00a7f4295h

+dd 029e1180bh

+dd 0cff73008h

+dd 0317e8a3fh

+dd 0c94b4e51h

+dd 0f35d116ah

+dd 08f2c1534h

+dd 026c9b8e3h

+dd 0914d808bh

+dd 076b7f07dh

+dd 07ea0de24h

+dd 0f6a8181ah

+dd 064b29333h

+dd 03633cbedh

+dd 084be5b3bh

+dd 0eb6535e5h

+dd 09293b294h

+dd 09868cd31h

+dd 02987a96dh

+dd 0979cacb0h

+dd 0f363bdf1h

+dd 05cd46416h

+dd 09a27f782h

+dd 097e70e37h

+dd 09ba78046h

+dd 0cba22717h

+dd 092afe61ch

+dd 021f0c997h

+dd 03de86221h

+dd 0fe7c2966h

+dd 069db6a63h

+dd 0c54bca2ah

+dd 04e8f0154h

+dd 03ed8c33dh

+dd 0661079f1h

+dd 09aad5421h

+dd 095532191h

+dd 0f3284386h

+dd 0182c548dh

+dd 02d3f418fh

+dd 00d0a8077h

+dd 063e2547bh

+dd 09c7c2134h

+dd 0260d6374h

+dd 0bb004f67h

+dd 0eae9b6d2h

+dd 006a79b8ch

+dd 04da2fc4dh

+dd 028e97b06h

+dd 029251f1ch

+dd 0d3ec9f60h

+dd 0d9e3c0bdh

+dd 028d6355bh

+dd 048eb9d44h

+dd 0e3542dc2h

+dd 0b3fbd311h

+dd 0f76e7665h

+dd 0a6c78ebbh

+dd 0e22d41c6h

+dd 08746e693h

+dd 0dc6a5e6ch

+dd 0649bff78h

+dd 0a231d79ch

+dd 0f5afad07h

+dd 08f418fa3h

+dd 0b00ca666h

+dd 0aaa647b8h

+dd 016375204h

+dd 032199c06h

+dd 008a12a9ah

+dd 075270aa6h

+dd 058bd311bh

+dd 0827ea4a4h

+dd 0fad4199ah

+dd 0666a29bch

+dd 03ddd4355h

+dd 0e9d415beh

+dd 0417b706bh

+dd 0fa227dbdh

+dd 0327f2ec2h

+dd 0544fea98h

+dd 0e6e44cb1h

+dd 0ef41bb05h

+dd 0b649ffb0h

+dd 077ce126ch

+dd 0e7b51b53h

+dd 0b7d70f86h

+dd 0680028e0h

+dd 0478b7a2dh

+dd 03cd633c4h

+dd 0b394d26bh

+dd 0e1264979h

+dd 0f8f86440h

+dd 0fee55d51h

+dd 0ed74ad81h

+dd 0c62c9ad5h

+dd 014f2cc9eh

+dd 0f137644dh

+dd 02498d7bch

+dd 08d0c4c1bh

+dd 087191465h

+dd 08cf7dba6h

+dd 045d67562h

+dd 012de15f7h

+dd 013b51837h

+dd 0390a82e1h

+dd 02b31c0c3h

+dd 03d275c56h

+dd 012aeee4fh

+dd 0ca02a5c3h

+dd 08ca25852h

+dd 0471931e2h

+dd 05d894a19h

+dd 0fa9b2fceh

+dd 02a4be09ch

+dd 02b40e806h

+dd 01506cca6h

+dd 0b11adef4h

+dd 04bdb4ecbh

+dd 0d7e372aah

+dd 0e3f6f9dch

+dd 00e5f325fh

+dd 03866af8ch

+dd 07a5f6098h

+dd 0fbbc99f8h

+dd 0058f80fch

+dd 09a9e74a6h

+dd 0f5de21feh

+dd 0238a3c4fh

+dd 03ecb36d7h

+dd 0bab5b397h

+dd 0133f3f00h

+dd 08da80ca9h

+dd 08e8dabe9h

+dd 097a0e05fh

+dd 0b45a9c75h

+dd 0194bda1dh

+dd 0567640c1h

+dd 01d5ec9f9h

+dd 00e39700bh

+dd 01dd75c96h

+dd 0f9f70b4dh

+dd 02c1bb088h

+dd 0eddc8d82h

+dd 09523ff87h

+dd 0703a64dbh

+dd 09528f52eh

+dd 0e48e3d02h

+dd 09ea7cc27h

+dd 0dbbe3809h

+dd 0c8a4c3a4h

+dd 0a095e500h

+dd 05b46b3e3h

+dd 06eac3a6ch

+dd 0581779c3h

+dd 04f97120bh

+dd 00f56a1e5h

+dd 0b1d9260bh

+dd 09d0c1e7dh

+dd 0bda29c56h

+dd 049d22a75h

+dd 0d3ad377bh

+dd 07b1eccd8h

+dd 022b6dc34h

+dd 02f881562h

+dd 084f52449h

+dd 01bf2192ah

+dd 02582796ch

+dd 0f249f2bah

+dd 073a9387fh

+dd 0d24b302bh

+dd 05453ff68h

+dd 0f7c81343h

+dd 08eeac4d7h

+dd 0a3fc0130h

+dd 05124655eh

+dd 00c0e8ca0h

+dd 0f9ad3147h

+dd 01ecbd3fbh

+dd 091765e20h

+dd 05ddd7e2eh

+dd 0312ec350h

+dd 07f873a9ah

+dd 0e1376c3fh

+dd 04042850dh

+dd 0b56c8c76h

+dd 05521ebe3h

+dd 0d722cf98h

+dd 0e95fc0b8h

+dd 055c05040h

+dd 050d6cfedh

+dd 00084ddb0h

+dd 08dd00605h

+dd 0265e05f0h

+dd 099481c58h

+dd 09df7160ah

+dd 0b739ceb1h

+dd 08bd44197h

+dd 0c18eaa98h

+dd 098654894h

+dd 0b9e3a010h

+dd 0801f4c0dh

+dd 08dbf6b95h

+dd 0a6a83b6fh

+dd 00f02fbfeh

+dd 014cd6be6h

+dd 025bc47beh

+dd 0136f0933h

+dd 01b6c9739h

+dd 099b487f1h

+dd 09b997fd2h

+dd 033603c9fh

+dd 0b46fa08ah

+dd 0529fc307h

+dd 0f3d18176h

+dd 0e1712328h

+dd 0190e4f2eh

+dd 05da5fefdh

+dd 08a5162adh

+dd 0b0bd2b2eh

+dd 081cc9f3fh

+dd 097f7c1f0h

+dd 070a64928h

+dd 03ec89a89h

+dd 03c782fbch

+dd 02724845ah

+dd 07431718fh

+dd 01770f5d2h

+dd 0b5c4ecd3h

+dd 0427352eah

+dd 095200cf3h

+dd 05ff0dfb1h

+dd 0ba83b990h

+dd 071e99c64h

+dd 0408787cfh

+dd 02625b498h

+dd 0a3411659h

+dd 01b1086bdh

+dd 025ce0ea4h

+dd 05f9f9873h

+dd 0049d85f0h

+dd 0fa4df63bh

+dd 027b05506h

+dd 059ed0c39h

+dd 06b4d1052h

+dd 07137bc54h

+dd 0ab806e20h

+dd 0875e2032h

+dd 0494b648ah

+dd 079905361h

+dd 017dded6ah

+dd 068ef5447h

+dd 006b44d65h

+dd 01bf92024h

+dd 0df67ee9bh

+dd 0303d4c2eh

+dd 0e0614a9ah

+dd 0c5f3d508h

+dd 064842949h

+dd 0bc135e3bh

+dd 0f243bd6fh

+dd 088f84c01h

+dd 0cdd43c8ah

+dd 0117f7cafh

+dd 042873addh

+dd 017c3ae54h

+dd 0aa1963fbh

+dd 00d79743eh

+dd 0caf04127h

+dd 00c779230h

+dd 0fff4ff0ch

+dd 01ed7020bh

+dd 0cb41ec63h

+dd 0221df561h

+dd 00638c70bh

+dd 01a056959h

+dd 015ad97a5h

+dd 0bbdfa2eah

+dd 061b5a9f5h

+dd 069f96aech

+dd 0267f4421h

+dd 0a2e93e6eh

+dd 03cac223dh

+dd 0ce14cec6h

+dd 036203b9ch

+dd 06746575eh

+dd 0755d5d0dh

+dd 064b507b4h

+dd 00d6036b6h

+dd 04e7e3fa1h

+dd 033c78be3h

+dd 0a42c974dh

+dd 0113ae269h

+dd 00e4e1ec6h

+dd 0dd598281h

+dd 059279badh

+dd 080d15ef1h

+dd 009ff00b8h

+dd 093ebd021h

+dd 0e541faafh

+dd 077918571h

+dd 0da5c59beh

+dd 03bed894dh

+dd 0beee837ah

+dd 04eb979ech

+dd 056a6d5e7h

+dd 0ca568032h

+dd 016089409h

+dd 07e537446h

+dd 0639f6e2eh

+dd 0e1d9f9e8h

+dd 09c80fa14h

+dd 0914ec9b1h

+dd 017833a19h

+dd 0dc77861eh

+dd 0f6f0631fh

+dd 06ef9c95dh

+dd 0b96a75d1h

+dd 0d2f07c79h

+dd 0ae890443h

+dd 0d09e28c8h

+dd 0c262e569h

+dd 078146132h

+dd 0737fa2f6h

+dd 0e85cb53ah

+dd 0af2e00e6h

+dd 0fef620c5h

+dd 0d73d9429h

+dd 0c408427ch

+dd 0e5b8b022h

+dd 0cbddc21ah

+dd 0df32392dh

+dd 022b5772bh

+dd 03234bd01h

+dd 0db71f461h

+dd 0e93d18bbh

+dd 011bf747ch

+dd 0ca74932bh

+dd 05ff7691ch

+dd 0011c3d0dh

+dd 0e8322470h

+dd 04538ec1dh

+dd 05c29b81dh

+dd 048d98dfdh

+dd 08b5cfba0h

+dd 0a41d60e6h

+dd 0c11b5c0fh

+dd 0ba60b3fbh

+dd 0a7c0347ah

+dd 01623c917h

+dd 029a824bah

+dd 0fd0a8f02h

+dd 09e80de25h

+dd 0e6157190h

+dd 0a8082dcbh

+dd 06007db9fh

+dd 0a09d069dh

+dd 061c9594bh

+dd 036596c35h

+dd 0db229f3bh

+dd 0867662ech

+dd 03f8722e3h

+dd 0dfc7e994h

+dd 064f56292h

+dd 0906bb72dh

+dd 0c053429eh

+dd 047b4bcb0h

+dd 09dabfd41h

+dd 05580d0e8h

+dd 0d34cf123h

+dd 0e1c49df0h

+dd 0f1852671h

+dd 015a955b5h

+dd 0f0aaabcbh

+dd 0dceafb7dh

+dd 015abafd0h

+dd 07f9a654ch

+dd 0eeab04fbh

+dd 07c7eae23h

+dd 06c0f11dfh

+dd 0326ecdbeh

+dd 0dc530e9dh

+dd 043bde353h

+dd 01123b918h

+dd 0911b6c58h

+dd 0d9e12cceh

+dd 0fcec93fbh

+dd 0506c72ceh

+dd 0af39cc46h

+dd 081b60d5fh

+dd 01090580bh

+dd 0a96e0a45h

+dd 07f2abfa7h

+dd 0f25d8deah

+dd 0d9be5a43h

+dd 03ef95b0ah

+dd 05469662ah

+dd 0aa1ed87bh

+dd 0e688a361h

+dd 0476419d9h

+dd 042167cf3h

+dd 005d1ca20h

+dd 045df2bf1h

+dd 08c026c24h

+dd 09330cfa6h

+dd 06fcab21ch

+dd 0b4ef2e19h

+dd 080148b41h

+dd 09e51cdbfh

+dd 0307b8c0ah

+dd 077483cfch

+dd 00341c986h

+dd 0a791bafdh

+dd 034c865b5h

+dd 0ed8c510bh

+dd 0de8719c5h

+dd 0a1e54527h

+dd 0a16dbb2eh

+dd 0fd5f2663h

+dd 03d20d27bh

+dd 0707e8b4eh

+dd 0243cefdfh

+dd 006e642d8h

+dd 0c24ab327h

+dd 02e179a9ah

+dd 038700742h

+dd 0fc0f0322h

+dd 0366292d7h

+dd 08f4a1ad8h

+dd 0c9e9deabh

+dd 0933c791ah

+dd 0cdedef41h

+dd 051309672h

+dd 05a54d2a8h

+dd 0a0258401h

+dd 0380f7d20h

+dd 05505292fh

+dd 0c57bf5e2h

+dd 0deab9611h

+dd 062581924h

+dd 0ef5b09d1h

+dd 0563e7340h

+dd 0859d9ea7h

+dd 030ad5044h

+dd 067615454h

+dd 0d26266ddh

+dd 0f6d5767ch

+dd 012ee145bh

+dd 0b25b28c6h

+dd 08a2f212eh

+dd 056950d56h

+dd 0a06cddceh

+dd 045898a82h

+dd 066a256b7h

+dd 02e10cd11h

+dd 07d1fe6b4h

+dd 09b34622dh

+dd 041e82e60h

+dd 0f84a10cbh

+dd 0c71fba85h

+dd 0383dfcadh

+dd 05c45ce65h

+dd 013bfd200h

+dd 06c99150fh

+dd 06602add1h

+dd 0524d906ch

+dd 0ad9ecfe8h

+dd 0a266a90bh

+dd 0d29a004bh

+dd 00d79163eh

+dd 0d1b51558h

+dd 0ff0fc4edh

+dd 064438aefh

+dd 0fb9d568ch

+dd 05b72ecd9h

+dd 0af47e9d8h

+dd 019d200f9h

+dd 0f98cd647h

+dd 07e0cb281h

+dd 0dcd36d23h

+dd 0c057db8ah

+dd 0efbe918dh

+dd 0560e4375h

+dd 0501646b9h

+dd 0802283c8h

+dd 0d9ee2a8eh

+dd 064532467h

+dd 07cae19a7h

+dd 0b80dccd9h

+dd 05ba93b17h

+dd 03a51432ch

+dd 0fb80333bh

+dd 0cb21df7eh

+dd 094ad7a18h

+dd 0011b3abah

+dd 07289c1fch

+dd 083b12602h

+dd 0bc96539dh

+dd 09c91fde4h

+dd 0d7531fe4h

+dd 08c2fcb81h

+dd 0a57b178bh

+dd 0bf0402d5h

+dd 0edee73efh

+dd 0bc8fca96h

+dd 0aef9d9e4h

+dd 0fdf6c1f6h

+dd 07a23070bh

+dd 0a42c80e3h

+dd 001dedcf2h

+dd 0fe00964fh

+dd 0e8fc9664h

+dd 0bd84d301h

+dd 05a8f883eh

+dd 094eb7e86h

+dd 01c0ccef0h

+dd 0775bf3f0h

+dd 06352af1ah

+dd 00f224ca1h

+dd 0050d54cah

+dd 08ebff0f1h

+dd 0909eccd2h

+dd 09936e162h

+dd 013516881h

+dd 094f8c43dh

+dd 0357013e0h

+dd 086f1cfa5h

+dd 07f8e1c74h

+dd 08109b3d6h

+dd 00b794164h

+dd 059c4d845h

+dd 0c5d13cd9h

+dd 0ec2deb5ch

+dd 0c385053eh

+dd 0da93fb94h

+dd 015cc5213h

+dd 0228201a9h

+dd 0a28ea2e1h

+dd 0e6cf2894h

+dd 0e4c44f80h

+dd 0ad2d3b41h

+dd 0cb05fa30h

+dd 0c9a3843dh

+dd 01b942061h

+dd 0a4d894f4h

+dd 0b6ecb6fdh

+dd 0ddc09ab0h

+dd 03bc39e5bh

+dd 07a2836bbh

+dd 0c55b6dcdh

+dd 0bd9a8216h

+dd 0ab1fc87ah

+dd 069d6239eh

+dd 017cbd3b9h

+dd 022177873h

+dd 04ed5ddc6h

+dd 02b8f52dfh

+dd 05f1ac43ch

+dd 08a5d3405h

+dd 091a4ff50h

+dd 0b3df8a4dh

+dd 08f5093a2h

+dd 0c5a287d4h

+dd 0e541ebbbh

+dd 0956429f9h

+dd 0129b8529h

+dd 08c8a0cf9h

+dd 0c0b62151h

+dd 0638e4abdh

+dd 02189f5f6h

+dd 0f57f83a7h

+dd 03fa94844h

+dd 050304b38h

+dd 02195b3a7h

+dd 0cbfea062h

+dd 0a389df6ah

+dd 0ac3daafbh

+dd 069c7a165h

+dd 0408953f2h

+dd 001a018ceh

+dd 0f2d256ebh

+dd 033694d78h

+dd 0697414e8h

+dd 04e55dbadh

+dd 0b797c53bh

+dd 0a2f7492bh

+dd 0bc8b34f3h

+dd 01c8546c8h

+dd 06711ff20h

+dd 02ce322d3h

+dd 0aa57e661h

+dd 08b751b03h

+dd 0305bbcfch

+dd 0789fafbch

+dd 0661c2242h

+dd 0e026b0d6h

+dd 05b1250e8h

+dd 06f5425e6h

+dd 01c16ba1ah

+dd 007e4e4c5h

+dd 0ab803774h

+dd 0090406a3h

+dd 0097f7317h

+dd 0e6be3ef3h

+dd 08011ae4dh

+dd 0731b49c5h

+dd 0feb87ed4h

+dd 0b87ee674h

+dd 02fafcb97h

+dd 0ff80e744h

+dd 08df666a8h

+dd 0b7db0cc2h

+dd 0fabf53d2h

+dd 07169264ch

+dd 070a4db21h

+dd 090039867h

+dd 08d62517ah

+dd 08cdc1482h

+dd 05f72225fh

+dd 04592ecedh

+dd 0c40b6285h

+dd 02bd98c2bh

+dd 0e1179121h

+dd 08619afa6h

+dd 0440b0ad0h

+dd 05db14172h

+dd 0b46d8330h

+dd 0a740dfbbh

+dd 05d095164h

+dd 0628f4941h

+dd 0da27c007h

+dd 0a68ffae8h

+dd 0094002f1h

+dd 013175c66h

+dd 0365b016eh

+dd 0f88931d9h

+dd 07e5d46b7h

+dd 0ec4a75dfh

+dd 0c92576e9h

+dd 0821bac04h

+dd 03019626dh

+dd 06472e35ah

+dd 0b0ba2197h

+dd 09360bdfbh

+dd 00635833dh

+dd 03f7be076h

+dd 0cbff45b8h

+dd 052cd58cbh

+dd 001db3a7fh

+dd 09beb0abah

+dd 0d584693eh

+dd 047e056d5h

+dd 051ffc613h

+dd 03477d24ch

+dd 034933e3bh

+dd 0a557640dh

+dd 0cd4b51ebh

+dd 00f698783h

+dd 000d21894h

+dd 04bb92951h

+dd 08cfad691h

+dd 0d49dbebdh

+dd 0d6b9f2a8h

+dd 03d0d83b5h

+dd 0f803126bh

+dd 098a03556h

+dd 036f603f2h

+dd 0189c021ch

+dd 0f331dadbh

+dd 0f94cc437h

+dd 0abce2c46h

+dd 0835efba5h

+dd 09a172d35h

+dd 07dfb794ch

+dd 0c7dece5dh

+dd 017d1f9fbh

+dd 09fff7123h

+dd 08cd96546h

+dd 0ad2ff79eh

+dd 02ac02863h

+dd 080632570h

+dd 0d6ce6143h

+dd 02775da6bh

+dd 08d71ee85h

+dd 01555e583h

+dd 0158f7f96h

+dd 0b168cbfch

+dd 067d39775h

+dd 01d639ae2h

+dd 0c8b83c99h

+dd 085bea1a2h

+dd 0c92f71c0h

+dd 01e3934e4h

+dd 09eaf7634h

+dd 07b4a160dh

+dd 04d0e7166h

+dd 06703831bh

+dd 02ce8a9d6h

+dd 09208629bh

+dd 01b3e1069h

+dd 0eb4ed18ah

+dd 05c764b51h

+dd 0757ef91ch

+dd 0d12cc86bh

+dd 022016b77h

+dd 09794c5f6h

+dd 035da4564h

+dd 0faacbce8h

+dd 04268a1bdh

+dd 03f70159ch

+dd 0c3e3392ch

+dd 01719d4bch

+dd 0a0472dbfh

+dd 022802d3ah

+dd 0c052680bh

+dd 0ffb9e13eh

+dd 03be952f5h

+dd 07d2d46bch

+dd 0b6fdee5dh

+dd 01488a815h

+dd 01e396d43h

+dd 0ff47e751h

+dd 038f844adh

+dd 03a386bdbh

+dd 02499dfd7h

+dd 09e14fb1bh

+dd 0c8191490h

+dd 067f460a3h

+dd 08a084be4h

+dd 040ec4655h

+dd 03acf506fh

+dd 068994025h

+dd 0dcd0ec60h

+dd 012d703d2h

+dd 044c48620h

+dd 0e1afc1c4h

+dd 0d6b5d5b7h

+dd 0ae602697h

+dd 03e466757h

+dd 0b542be7eh

+dd 0e906549bh

+dd 0fe3c9303h

+dd 0cf4c579eh

+dd 0fe17c6bbh

+dd 043baab29h

+dd 04fdd8ca4h

+dd 072dfce7ah

+dd 08b4363a3h

+dd 026ccee64h

+dd 00fe3b380h

+dd 05298a8a4h

+dd 0e5ec0fe0h

+dd 00873ce55h

+dd 023e15153h

+dd 08229aaf8h

+dd 0586e3c05h

+dd 06d11ec4eh

+dd 0a3349db6h

+dd 053941c05h

+dd 0178033cah

+dd 032d3192dh

+dd 095073064h

+dd 0dbbd0c78h

+dd 05d8c7622h

+dd 03f1e245dh

+dd 0ab6d4357h

+dd 01c3b917ch

+dd 0e951cca7h

+dd 04b4ef853h

+dd 0c818cfb2h

+dd 0f36cfcbfh

+dd 0a569bb78h

+dd 06b6fdef3h

+dd 0416e7787h

+dd 0253e5447h

+dd 063bfbf0fh

+dd 01b3f2588h

+dd 0ebeb8dbah

+dd 06e1c9aech

+dd 001947193h

+dd 09cc084a3h

+dd 082b7408bh

+dd 0ca30c9bfh

+dd 070cd6609h

+dd 01d3d85f2h

+dd 0456df2f1h

+dd 0f66eeaa2h

+dd 0941a166eh

+dd 0d7301ccdh

+dd 042aef241h

+dd 0f1a58866h

+dd 0fdaa8589h

+dd 0bddffd7fh

+dd 0dc1f2d4ah

+dd 09660a011h

+dd 0d1dbaf8dh

+dd 0e3ff093ch

+dd 0d9796fcbh

+dd 0c99c647ah

+dd 05a2bb3e1h

+dd 0bd89548dh

+dd 0e0d5f887h

+dd 0ecad1dech

+dd 0b6beeb70h

+dd 054cc2957h

+dd 0c0621f58h

+dd 0df3cbd16h

+dd 00ee50209h

+dd 08482de7eh

+dd 0c83d3a2fh

+dd 0bf74e4b7h

+dd 0d0b5dc55h

+dd 0801310ffh

+dd 073738ddfh

+dd 0e4692418h

+dd 011258510h

+dd 0f12e593fh

+dd 02355ed5ch

+dd 092065e5eh

+dd 07843bfech

+dd 0e95df167h

+dd 0c113c6d3h

+dd 094602c8fh

+dd 061728d91h

+dd 02798dee0h

+dd 037d14694h

+dd 0f95c4881h

+dd 05fd6604dh

+dd 032b51cb1h

+dd 073cd8934h

+dd 09e45edaah

+dd 0feaf6ae3h

+dd 04a552369h

+dd 091f3ab04h

+dd 08bf44e8ah

+dd 0206d51d9h

+dd 09112aa10h

+dd 0d10f87ffh

+dd 059b126eah

+dd 013364460h

+dd 05fdfc007h

+dd 0b72b0e36h

+dd 0bf6a2210h

+dd 0dc5f4456h

+dd 02e63f275h

+dd 01ccfae48h

+dd 03e89bd38h

+dd 0daeec0c1h

+dd 0f21dc2b1h

+dd 0e9160dd4h

+dd 093f7e613h

+dd 02b044545h

+dd 052c4a293h

+dd 00a289408h

+dd 04d96bc66h

+dd 09967dbc4h

+dd 0ee655466h

+dd 0ce16c7adh

+dd 01e329b4dh

+dd 014d32b4bh

+dd 06ebab097h

+dd 0b37beac0h

+dd 05eea5d95h

+dd 07c7ada93h

+dd 056f54280h

+dd 01d9eb8a3h

+dd 09062775bh

+dd 0326a8132h

+dd 019a86dcdh

+dd 02c77148bh

+dd 0701b609dh

+dd 030296d23h

+dd 0ac59bd15h

+dd 04f616c8fh

+dd 0787a2ea8h

+dd 0ba7235b3h

+dd 0ad0ff61eh

+dd 004993162h

+dd 011246f98h

+dd 0f7773f50h

+dd 00a99aa1fh

+dd 0b682b9a0h

+dd 033a31837h

+dd 08441368ch

+dd 0b8f8398ah

+dd 081fe6acfh

+dd 0b104d6c1h

+dd 0a7f29339h

+dd 0c13d5fe4h

+dd 0e56b7129h

+dd 06d16f705h

+dd 0fa30fc41h

+dd 021e944b3h

+dd 0c9eeba51h

+dd 09b94ec4ah

+dd 08e1ba5c9h

+dd 05543b5fch

+dd 071f96e37h

+dd 0d81f99efh

+dd 0378f1261h

+dd 0b3e6d35ch

+dd 08e869c97h

+dd 07b576bbah

+dd 00db18cbfh

+dd 0757a7295h

+dd 01428e42bh

+dd 0f9db6f2eh

+dd 043be8e14h

+dd 08b73bc5ah

+dd 0d11219fdh

+dd 0919445d9h

+dd 0ba3a822ah

+dd 00a052138h

+dd 0c12ca058h

+dd 04f4f71aah

+dd 0c095d2b7h

+dd 05f3f9b22h

+dd 0d83ed694h

+dd 036e0c63bh

+dd 022dd418eh

+dd 016a765f3h

+dd 04c57c643h

+dd 0dd28f938h

+dd 0cd4eca42h

+dd 00df910d1h

+dd 0a5f19826h

+dd 0a82d2030h

+dd 0b68e91f4h

+dd 0b071c891h

+dd 093a2aa73h

+dd 0013833cbh

+dd 0e8372b2ah

+dd 07750e9ceh

+dd 03fa2f9c8h

+dd 0cff7d436h

+dd 0f3ea97b1h

+dd 08e883865h

+dd 0fba3f974h

+dd 0511d6143h

+dd 087bd9a1bh

+dd 0566dee39h

+dd 07e72ac21h

+dd 0dd85036dh

+dd 003d474b0h

+dd 0c4ee7abch

+dd 0d9c1b7a0h

+dd 0a8b194cfh

+dd 00496daddh

+dd 0a70b5e13h

+dd 0aded186ch

+dd 095bdf1c4h

+dd 0d931b3adh

+dd 0ad50f8f9h

+dd 05be1a6bch

+dd 0a1c166d7h

+dd 0e396c8fch

+dd 0d8210182h

+dd 0426af5bch

+dd 023f2069dh

+dd 083a5e9fch

+dd 0275af42eh

+dd 0b75823cch

+dd 08612740dh

+dd 09019d782h

+dd 0ce35fdeah

+dd 0bc9d5c57h

+dd 043ffb3bch

+dd 0d07e33b1h

+dd 0c8c4cde0h

+dd 0a44df6c7h

+dd 0b27fb226h

+dd 043741aa8h

+dd 0db0be088h

+dd 04289b768h

+dd 0f666455bh

+dd 012bd99bah

+dd 042885944h

+dd 0c593d3f4h

+dd 00214ed5fh

+dd 0cf069654h

+dd 0ebc6dde9h

+dd 0ed8c67e3h

+dd 0b281921dh

+dd 082a1f504h

+dd 07fb1ff40h

+dd 08a22b6a2h

+dd 0ed5ce77ah

+dd 0b7ff9d16h

+dd 060c2db11h

+dd 090c8073dh

+dd 0bbe96d95h

+dd 074232384h

+dd 07759b271h

+dd 02c87d7dah

+dd 0ca44d897h

+dd 0918fd552h

+dd 0d7fdedb4h

+dd 0e7cca890h

+dd 0bc7460d8h

+dd 08436f580h

+dd 0a9366c2ah

+dd 092d3b118h

+dd 0691ee8c9h

+dd 01fbf0a8ch

+dd 04a4ddc55h

+dd 0ff1d0f3ah

+dd 0c68bffdeh

+dd 037aaaff7h

+dd 0f456529fh

+dd 0a18c8573h

+dd 0d73cd429h

+dd 05583f329h

+dd 0c43f2d99h

+dd 05b82c6f9h

+dd 0578cf2cah

+dd 0f095761dh

+dd 080de4778h

+dd 04d9106cdh

+dd 09dd46fc4h

+dd 05e1e8f8eh

+dd 0265bb37bh

+dd 0ff5a05efh

+dd 0b4d87907h

+dd 00543b5e3h

+dd 0ba09a5f9h

+dd 08417f2f2h

+dd 0f58956f6h

+dd 07f445ff1h

+dd 0a514788fh

+dd 0238c1506h

+dd 060413c86h

+dd 06173270ch

+dd 0bc41e674h

+dd 013412a31h

+dd 00cc2d2cah

+dd 0909343b0h

+dd 07a632bdbh

+dd 03d81b782h

+dd 025b151cdh

+dd 0107eba87h

+dd 037a29056h

+dd 085d6f666h

+dd 08490be2ah

+dd 0c4675b21h

+dd 0ca8fdac0h

+dd 0ccde06f8h

+dd 08143533dh

+dd 029dacfbeh

+dd 00b7f662ch

+dd 049cf9b5ah

+dd 05d1fc01ch

+dd 08e16c77ch

+dd 0ac1ae7d2h

+dd 0a17555cdh

+dd 00ca2cd09h

+dd 0e0e5176ch

+dd 0a14bc7d5h

+dd 0448e3ffah

+dd 010b79b32h

+dd 087e709abh

+dd 07017b9f6h

+dd 08c406194h

+dd 09ec64bc1h

+dd 01296a006h

+dd 0302f0724h

+dd 0a166d129h

+dd 0d5911007h

+dd 04c875b24h

+dd 0fbbd08bah

+dd 0365cac0dh

+dd 03c130923h

+dd 000a6d193h

+dd 0529966dbh

+dd 0546daeaah

+dd 0e287c8c5h

+dd 04f87e2c3h

+dd 08df34ac8h

+dd 0de8ab5c2h

+dd 0e2131c7bh

+dd 036f3d4b4h

+dd 04dcb500bh

+dd 078597fd2h

+dd 02744a59ch

+dd 012d2666dh

+dd 0a97632ceh

+dd 02423e694h

+dd 07344c5c3h

+dd 0fbd59e79h

+dd 001ce6900h

+dd 0666d37fdh

+dd 08e19d644h

+dd 0c10961cah

+dd 00fbb2666h

+dd 0ec950d88h

+dd 0f6a65b5ah

+dd 0bec05f49h

+dd 0ecd27568h

+dd 005c44746h

+dd 09137849eh

+dd 0b0b2a070h

+dd 0eb770fa8h

+dd 096f216bbh

+dd 0616a71f4h

+dd 0b6443d15h

+dd 04e81617fh

+dd 0c5286b0ah

+dd 0d5b40690h

+dd 0236b455ah

+dd 0da4bedf9h

+dd 0550ebf45h

+dd 07f2bab16h

+dd 0bb0b81c5h

+dd 0ee35d867h

+dd 031093e21h

+dd 0abbf0038h

+dd 0a3b6a13ah

+dd 06f5eb527h

+dd 0229eae4ch

+dd 03b34248bh

+dd 0dd685d35h

+dd 0ac68e112h

+dd 09c925d8ch

+dd 06bcf128dh

+dd 0bfc6e044h

+dd 0ba0bebb0h

+dd 02b8b650ah

+dd 0f81e5f10h

+dd 087e4aa0fh

+dd 0a40f32b5h

+dd 0dd8db428h

+dd 07fe8fd95h

+dd 0fb5e407dh

+dd 066eaf2c6h

+dd 00dff9347h

+dd 0f26dd1b0h

+dd 0d984648dh

+dd 02dc8f1a8h

+dd 00a23388eh

+dd 0afbbe371h

+dd 084500184h

+dd 06a44720eh

+dd 0446d7223h

+dd 0c9c8243bh

+dd 0aa704e41h

+dd 0fd95ee50h

+dd 0d40b21e1h

+dd 03e695e77h

+dd 0900086cah

+dd 07fc79d85h

+dd 0a44ba502h

+dd 0aa250c64h

+dd 062e27b7dh

+dd 0b306b8a4h

+dd 098c28c2bh

+dd 0eea569c6h

+dd 0f1796207h

+dd 02e2e79f3h

+dd 014233208h

+dd 057dfeb9ch

+dd 0b419b27ch

+dd 06e10c6beh

+dd 02f07336eh

+dd 0e859eb65h

+dd 0922328a1h

+dd 079cbd6b1h

+dd 0dd3e909fh

+dd 071d3fdfbh

+dd 0f4098ed8h

+dd 02059ecd0h

+dd 0c2865ce8h

+dd 08c7e413eh

+dd 0611dee26h

+dd 07ef5582ch

+dd 07df6edaah

+dd 0e50680a6h

+dd 03ff59175h

+dd 06bfb2900h

+dd 0a67421ebh

+dd 055a29affh

+dd 0a484b928h

+dd 001386a3bh

+dd 0e6a48e23h

+dd 0ee0f585eh

+dd 0c05db5b9h

+dd 04833ed1ah

+dd 0536212e6h

+dd 0dfc9238fh

+dd 07b2454dbh

+dd 00dfda766h

+dd 040baa66dh

+dd 048fe868bh

+dd 00d8f39e4h

+dd 09ed0904ah

+dd 024815c3ah

+dd 03850aea5h

+dd 04b4ce547h

+dd 0329777b1h

+dd 0e036172eh

+dd 0abfb873ch

+dd 0164c7b2fh

+dd 045438cdeh

+dd 0ea672dc2h

+dd 001773f61h

+dd 0bf2e66dbh

+dd 099fc0f55h

+dd 0abdf16f5h

+dd 07d67f502h

+dd 07643bdadh

+dd 06d6e2d24h

+dd 04e0f3a0dh

+dd 050c33a31h

+dd 05e9237a5h

+dd 022f0ac42h

+dd 0c66bf1f0h

+dd 05df4795eh

+dd 0abb2dde7h

+dd 0bf55bb49h

+dd 08bc2557fh

+dd 06fa885e8h

+dd 018b7d851h

+dd 02b98a358h

+dd 02d7566ddh

+dd 094cd5d51h

+dd 05f184e0ch

+dd 0f85a07d0h

+dd 0b44aa23ch

+dd 038173ee6h

+dd 074ec43bfh

+dd 0fafd7552h

+dd 00e0f0d8bh

+dd 0b3b2e3a8h

+dd 074ffe1d6h

+dd 0d541f1d7h

+dd 0e52958a8h

+dd 0eab3ceb9h

+dd 0c205830bh

+dd 082dd90a7h

+dd 0d0616c4ah

+dd 06999a3e0h

+dd 0c97686d9h

+dd 059271865h

+dd 01491d9f4h

+dd 0ea907437h

+dd 03956d767h

+dd 08d729cfch

+dd 0f7588dc1h

+dd 0ab7b7d15h

+dd 04d4ea9c2h

+dd 0be0b002ch

+dd 0f665b86fh

+dd 0bdf8724bh

+dd 0e38c55ddh

+dd 027d42835h

+dd 0f5bf6fe3h

+dd 025d761bch

+dd 03e869b84h

+dd 0d8d1e5bch

+dd 0220baa78h

+dd 01803999fh

+dd 0f64e8546h

+dd 056257b9eh

+dd 0be12c8abh

+dd 0988fd8a2h

+dd 04e98b5e4h

+dd 0d3c10bc9h

+dd 0ef446fc5h

+dd 0469f0c40h

+dd 0591ed066h

+dd 098c087dch

+dd 0822332cbh

+dd 02eb37557h

+dd 01afe56deh

+dd 01ecb0b32h

+dd 06aaf1205h

+dd 00f2a77a4h

+dd 05a64e123h

+dd 04edad51fh

+dd 04ea65b76h

+dd 0d04389b0h

+dd 046285d41h

+dd 09a5d2085h

+dd 08a0bcf33h

+dd 056b2eab2h

+dd 07cadfa99h

+dd 0b970a7ebh

+dd 066e3738eh

+dd 06b8a9a5fh

+dd 0e9f24554h

+dd 056fd31f1h

+dd 09278a536h

+dd 025a15196h

+dd 02ddba52dh

+dd 05ffedba4h

+dd 09527d96dh

+dd 061ef38cdh

+dd 0775512f0h

+dd 09e238788h

+dd 0306b4b25h

+dd 09cd8ec76h

+dd 06b128f67h

+dd 03a30de8ch

+dd 06684c0abh

+dd 0e9a67abch

+dd 0d1164498h

+dd 006d95c0eh

+dd 08325a17ch

+dd 025b88709h

+dd 0b614323eh

+dd 04e500825h

+dd 04ecf926bh

+dd 0f8423753h

+dd 03186a9e7h

+dd 0ee7b0b6ch

+dd 0bc3a3c32h

+dd 09cdfc50ch

+dd 031df305ah

+dd 00ab35479h

+dd 0e8cc14aah

+dd 01f7387a0h

+dd 06c7e8d32h

+dd 0f903c688h

+dd 07001b6c1h

+dd 03da50941h

+dd 0f0915affh

+dd 077aa34bfh

+dd 0942914deh

+dd 06d9d3848h

+dd 0f583fec6h

+dd 05338bed7h

+dd 05e041ec8h

+dd 080066bd6h

+dd 0221d817eh

+dd 06df5ab04h

+dd 01391701bh

+dd 0adf133aeh

+dd 0d319cb9ah

+dd 0dbbb5ebeh

+dd 007d5018bh

+dd 013db11bch

+dd 006aa2b6dh

+dd 0092ad852h

+dd 02e8106c2h

+dd 0cb7bebb5h

+dd 073b3dbbch

+dd 070976b35h

+dd 02f5bae53h

+dd 032f27dcfh

+dd 0661b9c1dh

+dd 0d538b5c3h

+dd 0d3c846b6h

+dd 0aa907ed8h

+dd 05fbdbda9h

+dd 0a17d9227h

+dd 08cead5b3h

+dd 08c451e53h

+dd 0b036844dh

+dd 0fae001ebh

+dd 06801c202h

+dd 0f4a652ddh

+dd 088569fdbh

+dd 07837770bh

+dd 0297fc06ch

+dd 0340eb8a8h

+dd 0addb95cfh

+dd 0c7fc6e96h

+dd 03bd2b597h

+dd 05c40619ch

+dd 01c7406abh

+dd 0112e54b7h

+dd 047c2b97eh

+dd 02b88c46dh

+dd 0823111f7h

+dd 0a9d9a3a8h

+dd 0cc1c5702h

+dd 0b100a7f2h

+dd 0de830029h

+dd 0c632b76fh

+dd 09a024e93h

+dd 0bdf4ec24h

+dd 01e021589h

+dd 0c0b9a66eh

+dd 0d0d76c74h

+dd 0f96cb565h

+dd 0be09d798h

+dd 0ed055062h

+dd 0b4529a5fh

+dd 0d1cb8ba1h

+dd 07337d6fdh

+dd 0649280c2h

+dd 0346c7e02h

+dd 0fe9805abh

+dd 047d7b7eah

+dd 016cca6b0h

+dd 0dead6e76h

+dd 06638e122h

+dd 0cd8883cbh

+dd 0a6644551h

+dd 0142fa9deh

+dd 031097eb0h

+dd 047c4e2fdh

+dd 0bf08887ah

+dd 0c53fd0cch

+dd 08fdf1fa6h

+dd 014fc5384h

+dd 0e6ba0a82h

+dd 08b2996b1h

+dd 0b2f9b58dh

+dd 0fac49e51h

+dd 031a0cdb6h

+dd 063dfe835h

+dd 0d5592f56h

+dd 07d643776h

+dd 0318680c6h

+dd 0c481ab74h

+dd 04e1df3c3h

+dd 0a4ef7e83h

+dd 0e0d739f9h

+dd 0dca9d477h

+dd 03d3f6939h

+dd 0c9980f87h

+dd 08a63f2e3h

+dd 03dcb341ah

+dd 05c8843e3h

+dd 03c47e24fh

+dd 0ca2ec3a8h

+dd 03d099922h

+dd 04e68eafdh

+dd 01245f332h

+dd 01425ee88h

+dd 003b71b5dh

+dd 016bb0693h

+dd 0de87f633h

+dd 000262012h

+dd 02d5a2c6ah

+dd 02c46535bh

+dd 0658c107eh

+dd 09980fb5dh

+dd 0679b91adh

+dd 009f5852bh

+dd 02070eef9h

+dd 0ec3791c9h

+dd 0eb5d1573h

+dd 0a15bc4f6h

+dd 077d59127h

+dd 0859cb048h

+dd 06dd34f3ah

+dd 0901133cdh

+dd 05c31c8eeh

+dd 0de1ef87dh

+dd 08d800182h

+dd 0856286c9h

+dd 0495f7aa8h

+dd 05cb520e8h

+dd 0f9cf13bbh

+dd 0b0217e9fh

+dd 0398c1370h

+dd 0fe9b5093h

+dd 04a7fe82dh

+dd 098ccf9a1h

+dd 0546b9047h

+dd 0c70b6fcbh

+dd 0b1cacae1h

+dd 0e13e6de7h

+dd 06410764ah

+dd 0d2be8f3eh

+dd 0ef486dc7h

+dd 049a90328h

+dd 0c3e69b5dh

+dd 09e18cd7dh

+dd 09582ed01h

+dd 052821e29h

+dd 0ee5872f5h

+dd 032a87ecbh

+dd 0a9cc4099h

+dd 0448eaee4h

+dd 0451a876bh

+dd 07a86d4fch

+dd 094d71e5bh

+dd 057241272h

+dd 0eabe385eh

+dd 0f58d22b3h

+dd 074007c59h

+dd 0105f4662h

+dd 07e968852h

+dd 074b84c3ah

+dd 054c1f62ch

+dd 06debe0f5h

+dd 051385ab7h

+dd 0dc454411h

+dd 0f56f94e7h

+dd 065153707h

+dd 0209c3489h

+dd 016d8dacbh

+dd 0dbc2ef42h

+dd 0972604bdh

+dd 0532d00d9h

+dd 04ccf5b82h

+dd 0ca994eech

+dd 04a944ef6h

+dd 0a7ce7aefh

+dd 092d9ec28h

+dd 044345582h

+dd 00b5c912eh

+dd 076c8d28ch

+dd 000ea9997h

+dd 0aeae686ch

+dd 0b2b993e7h

+dd 01efe4e9ah

+dd 023409a17h

+dd 0cfae3844h

+dd 01942e007h

+dd 009c83618h

+dd 0fddf6f5fh

+dd 087d21653h

+dd 0cc4bef56h

+dd 05be645f1h

+dd 008aaa688h

+dd 09353b3cah

+dd 07ae1031bh

+dd 063f03e2ah

+dd 09736367ch

+dd 02ae947fbh

+dd 00e347816h

+dd 0f809e4b3h

+dd 09e4b9899h

+dd 05d5026ebh

+dd 0725f325ch

+dd 00eb98d6ch

+dd 01dca8b57h

+dd 09a045d5ch

+dd 0cbdb1e98h

+dd 0ac7ac887h

+dd 0850a5b08h

+dd 04597b0fdh

+dd 0efd42007h

+dd 056a70f6ah

+dd 092301270h

+dd 054df14e0h

+dd 07b7321b3h

+dd 072ed1587h

+dd 0be2be3d4h

+dd 09987db27h

+dd 02ca3dcc1h

+dd 0f845b9f6h

+dd 0f2ad22dfh

+dd 0e13cd456h

+dd 06e83ad6ch

+dd 01ce35fe7h

+dd 09af838a7h

+dd 0e7ad69c6h

+dd 09303da18h

+dd 061447ca1h

+dd 0fdf9f171h

+dd 098848d07h

+dd 0c7cba8c7h

+dd 0f1e388b2h

+dd 0718d1a8dh

+dd 02636b180h

+dd 0a2bba8e5h

+dd 06c34262ah

+dd 0816cc684h

+dd 0d18f8aadh

+dd 0b82f3160h

+dd 061a8f8a7h

+dd 04283e1edh

+dd 0a6f7fe65h

+dd 04d779cafh

+dd 03b1a8893h

+dd 03505dc88h

+dd 0548d85b9h

+dd 0e2348532h

+dd 077032f4ah

+dd 0ba816613h

+dd 060bf0b6bh

+dd 0f6cc5f68h

+dd 0827164eah

+dd 06337703ch

+dd 0b698c143h

+dd 0b5f0075eh

+dd 0cf595872h

+dd 0fd8a1b66h

+dd 0831e5ba7h

+dd 065f2a4b0h

+dd 043762bd5h

+dd 03c6923f7h

+dd 0a7150968h

+dd 0f938fab4h

+dd 0ae890c0dh

+dd 0f32a93b4h

+dd 0adcb81b7h

+dd 0b3893dc1h

+dd 09a80af3eh

+dd 0c5220cfeh

+dd 06b148d7fh

+dd 0118babc6h

+dd 076ec1633h

+dd 0843a10f0h

+dd 07f34b877h

+dd 07ebceb0ah

+dd 0a172c5e2h

+dd 0f0dad6e1h

+dd 08a0a7941h

+dd 05c0a2f9ch

+dd 03323026bh

+dd 0d5c42735h

+dd 0a1866067h

+dd 088378bc8h

+dd 04b9e5800h

+dd 04f3b343ch

+dd 003443b1eh

+dd 0527b118ah

+dd 074ee2626h

+dd 0349af22fh

+dd 0e6e67243h

+dd 0f1b4ae23h

+dd 0ab28ed59h

+dd 078f92de4h

+dd 074ba6d4eh

+dd 0178bdef1h

+dd 0ef11bdeeh

+dd 0051b0a53h

+dd 090423e33h

+dd 0336880c2h

+dd 050333c70h

+dd 0166c54e3h

+dd 0a45a9a9dh

+dd 0441438a1h

+dd 00012d91dh

+dd 0b531524bh

+dd 0d5e2206ah

+dd 0a2c5fbb3h

+dd 05184c2bfh

+dd 0ccea1ba9h

+dd 06e605db5h

+dd 0aebc8c88h

+dd 05195a33fh

+dd 008ef33dch

+dd 015e6c1d3h

+dd 0ae2fa789h

+dd 05a79bb0bh

+dd 0aec84728h

+dd 01cfb05afh

+dd 057faf323h

+dd 0a8dfb5c6h

+dd 062dc44d4h

+dd 0bd203f1ch

+dd 03e8e4eb6h

+dd 0a6f585f2h

+dd 0ae893fedh

+dd 0b3d83e33h

+dd 086d770d8h

+dd 0de4de487h

+dd 018c41cc6h

+dd 0be0bef56h

+dd 0b50b0062h

+dd 009a1ffafh

+dd 017fa53c3h

+dd 0cac8f43eh

+dd 08424c806h

+dd 0315295dch

+dd 0cb8de010h

+dd 071eb9fcbh

+dd 0bbd2d6b2h

+dd 0421274ach

+dd 0a05ece4bh

+dd 07d049a06h

+dd 0759c47c5h

+dd 0fa3c36f7h

+dd 0d8ee20beh

+dd 0f9342b01h

+dd 03c9e5773h

+dd 08f34697fh

+dd 0a256eef1h

+dd 08c04909eh

+dd 03ed5a2cah

+dd 0832e8d3bh

+dd 04d20ce82h

+dd 0dfcdf469h

+dd 00da75adeh

+dd 063c620a4h

+dd 0f6b217a4h

+dd 0c35d3362h

+dd 05cbc58bfh

+dd 058d23c31h

+dd 0ed4872b9h

+dd 00147446ch

+dd 0abb1e386h

+dd 01f09758eh

+dd 0d80ab00ch

+dd 0f4d6a7c6h

+dd 02483aadch

+dd 0a8bd655fh

+dd 0db0bd1d5h

+dd 05fb6a619h

+dd 0b0e6d828h

+dd 0902e3bf6h

+dd 0c9f6a593h

+dd 02c9c2179h

+dd 0eb01c935h

+dd 0ec103690h

+dd 04790234fh

+dd 043673c48h

+dd 072bb3c7eh

+dd 03e191e5dh

+dd 0028ca392h

+dd 08964617fh

+dd 0bcea5393h

+dd 01a3fab06h

+dd 0785542dch

+dd 032e46880h

+dd 04dbb6203h

+dd 0ea471b85h

+dd 08daef4d9h

+dd 0d2b22f02h

+dd 0a3fd3e5ch

+dd 0e78112b6h

+dd 0066cd687h

+dd 074f1b931h

+dd 02110770bh

+dd 092d87ab2h

+dd 0d530cb5fh

+dd 03bdaef7bh

+dd 0802bcca0h

+dd 0cb5e7ec6h

+dd 07605f2f6h

+dd 0fa387445h

+dd 064bcdabah

+dd 09f8efc2dh

+dd 0ef3d5591h

+dd 08ac65ae8h

+dd 0945adb67h

+dd 0d3b3ab20h

+dd 09da4231fh

+dd 0bcf72275h

+dd 0f7f29fbfh

+dd 06c8fe7c9h

+dd 0c39db06dh

+dd 0a6f924a3h

+dd 06437a0a8h

+dd 0cde56361h

+dd 03b2b4c14h

+dd 02a8e34f8h

+dd 06ce50809h

+dd 05a6d4550h

+dd 078b205f3h

+dd 0d5076889h

+dd 0699d90cah

+dd 0362f54b2h

+dd 04c5372ech

+dd 02d72921fh

+dd 0a236b9f6h

+dd 0ffef3c7ah

+dd 0d05b36a0h

+dd 010635d59h

+dd 0bef34e0fh

+dd 00979c6d8h

+dd 0ebf0f620h

+dd 00402e2aah

+dd 018bc8547h

+dd 0a333856ah

+dd 01c0539c4h

+dd 0ad34c903h

+dd 0bb29b872h

+dd 0d3a2e1e2h

+dd 02facfc7fh

+dd 032e77ac5h

+dd 0752932ddh

+dd 0ba362cd8h

+dd 07ff58ebdh

+dd 086a5bfaeh

+dd 0a5a3fe68h

+dd 0cb10b5dah

+dd 0c86046e1h

+dd 02c76b33dh

+dd 0a968f0e9h

+dd 0ff7cdecdh

+dd 098600a64h

+dd 015044d71h

+dd 039400d1ch

+dd 01a4599c4h

+dd 00ff13287h

+dd 060adfc24h

+dd 0993ea755h

+dd 00f644333h

+dd 0a776ae12h

+dd 02f79cc76h

+dd 0e5846ddbh

+dd 059c3fa35h

+dd 0b14d23d1h

+dd 0c78ed95ah

+dd 0c78c97d4h

+dd 075f0d2b9h

+dd 0ea3a7390h

+dd 0e4ec4ef1h

+dd 0defb62bfh

+dd 02d2a5c4fh

+dd 05f0d0a70h

+dd 06786697ch

+dd 084ced9a9h

+dd 06cd40e4ch

+dd 0750beef9h

+dd 0c0c4d178h

+dd 04dee1055h

+dd 0b60248c2h

+dd 06cd888c7h

+dd 07c9e9a18h

+dd 05d732bf7h

+dd 002e24370h

+dd 0aab0adddh

+dd 0215b7ec8h

+dd 072e78ce3h

+dd 00833b984h

+dd 03eb2a039h

+dd 0ee52df8eh

+dd 0ea64448fh

+dd 04cbb1dcdh

+dd 03b039d8ch

+dd 036092482h

+dd 04e048256h

+dd 0156d6d92h

+dd 07952918dh

+dd 0ba64cdf0h

+dd 0ea7be090h

+dd 0b229b0f3h

+dd 093d14e97h

+dd 092a684d6h

+dd 0408ee890h

+dd 064d045d0h

+dd 0619a466eh

+dd 0a0df1ad0h

+dd 0ad5e1720h

+dd 034001c31h

+dd 0ade11041h

+dd 060357bb6h

+dd 0c9877118h

+dd 023ae9314h

+dd 0d3326958h

+dd 0cbea0a84h

+dd 0a06ac597h

+dd 0293e8e6ch

+dd 02e8b65fah

+dd 0a62e3bf7h

+dd 084642dfah

+dd 0934df44ch

+dd 0d64ffa8fh

+dd 0eb5c7400h

+dd 096a7339dh

+dd 0a03fb026h

+dd 0f6dd3c40h

+dd 022a09256h

+dd 06219d21eh

+dd 0e92f7df3h

+dd 022d1d3bbh

+dd 0e89444a0h

+dd 077fb900eh

+dd 0feaaaf1ch

+dd 0b2c2a52fh

+dd 068c625f1h

+dd 030f0b1b0h

+dd 07c208828h

+dd 04902c1c3h

+dd 0da14c3bbh

+dd 0d7c55e23h

+dd 0d934719ch

+dd 084b404f0h

+dd 0d3f145a2h

+dd 065126039h

+dd 0f21a1be6h

+dd 0105dae27h

+dd 0e0a7c9deh

+dd 044e6078bh

+dd 04423899eh

+dd 00cbb664eh

+dd 0a02005fdh

+dd 00f464bcah

+dd 057d36150h

+dd 0dbf5f47fh

+dd 0437b6bc7h

+dd 056e90966h

+dd 07f62ca3fh

+dd 02d66cf50h

+dd 0cd14e14eh

+dd 02705df49h

+dd 0e218da89h

+dd 03edca257h

+dd 03ffcbd03h

+dd 07472febah

+dd 0afcd703bh

+dd 082b5c99eh

+dd 0af6d2bcah

+dd 0fbf2cea6h

+dd 02a19c442h

+dd 01c7a1046h

+dd 01da4ad4ah

+dd 009561f84h

+dd 096e9284fh

+dd 005864aach

+dd 043f430e5h

+dd 05ae3d44ah

+dd 0ae86628ah

+dd 03e6c0badh

+dd 0b5095e8ch

+dd 07d2295eeh

+dd 084403eaeh

+dd 0eaee1418h

+dd 029a95174h

+dd 02e390c6fh

+dd 07b83fca1h

+dd 019f1c0a7h

+dd 023bf642ch

+dd 04083d14eh

+dd 0c8407cb5h

+dd 0aaead88fh

+dd 0bef79240h

+dd 017fe90ebh

+dd 0da208904h

+dd 091f7cb50h

+dd 08149b663h

+dd 03f3bcf29h

+dd 001e5fcd7h

+dd 0c9f127eeh

+dd 06493e9ebh

+dd 0201be98bh

+dd 095fc54aah

+dd 0ee7398e1h

+dd 038731195h

+dd 0a8772c23h

+dd 026a06f09h

+dd 0f3ad29e6h

+dd 0bf86e569h

+dd 01acec1f6h

+dd 0c8241823h

+dd 01e454418h

+dd 0b0345451h

+dd 0598c6b77h

+dd 0949537b4h

+dd 00224147fh

+dd 01859d259h

+dd 03b3efb0eh

+dd 020c2d460h

+dd 00a2eda5ah

+dd 058ffc09eh

+dd 0a9efba2dh

+dd 0aa6817e9h

+dd 0ab0040dbh

+dd 0a3a7a2f4h

+dd 0b00f7025h

+dd 0ddf9668bh

+dd 0fa602a92h

+dd 03dbcebd7h

+dd 098370bb7h

+dd 0adfd81e1h

+dd 0d0925bc7h

+dd 07c2894a9h

+dd 038cca04eh

+dd 0a021fd30h

+dd 07f4b1fc4h

+dd 092d181a4h

+dd 0a5b3517dh

+dd 01a9276feh

+dd 0a9e83a4bh

+dd 0d5cbe973h

+dd 03993c0b2h

+dd 0e108ad39h

+dd 0a4146e49h

+dd 01b294706h

+dd 0444fcff4h

+dd 014624907h

+dd 0b7982780h

+dd 0dcb34628h

+dd 08b2bd5fbh

+dd 01d73ff05h

+dd 0a62f04cch

+dd 0b28da84ch

+dd 075c9754ah

+dd 01434cdcbh

+dd 019b74477h

+dd 07fc48befh

+dd 05edaf76eh

+dd 06d55789dh

+dd 00bcf0711h

+dd 0e01240dbh

+dd 0ee061c96h

+dd 066c77fd1h

+dd 0caf76540h

+dd 07e0f7791h

+dd 0e76f60f9h

+dd 0526b3c54h

+dd 044d79680h

+dd 084be45feh

+dd 0e10361bdh

+dd 0c9021807h

+dd 0545102dfh

+dd 0ff85b6d3h

+dd 005a10203h

+dd 0c8fe5be0h

+dd 08fb57b08h

+dd 0a598a1c9h

+dd 0dac0c503h

+dd 0dd2e19edh

+dd 0972d4c95h

+dd 08be9c6efh

+dd 0537b1707h

+dd 01b00826dh

+dd 052887d44h

+dd 077e09021h

+dd 05059f87eh

+dd 0a58fe5afh

+dd 0e9ee8a8ah

+dd 0cc9abc8eh

+dd 068ec09adh

+dd 005b07e04h

+dd 08c52dd3dh

+dd 0ac2ca53ch

+dd 0b54fbfdbh

+dd 091f8607dh

+dd 0d9acad43h

+dd 0b350465dh

+dd 04d7dd0c2h

+dd 019199566h

+dd 09f41d878h

+dd 09053218bh

+dd 0a83e4cd3h

+dd 0f5851010h

+dd 02c1c8a6ah

+dd 0dea8716ah

+dd 0db037961h

+dd 061960184h

+dd 0c287ebb2h

+dd 0ba479939h

+dd 0dcb04647h

+dd 0051af176h

+dd 0f8119d7ch

+dd 0b64d4a16h

+dd 051f2a592h

+dd 097b9ed00h

+dd 0033d6c14h

+dd 062abfd86h

+dd 033a6764bh

+dd 08012edb1h

+dd 05d8259bbh

+dd 00bcb3336h

+dd 0d9605158h

+dd 095e266f8h

+dd 067ad3093h

+dd 0435bb90ah

+dd 04b0c5b3dh

+dd 0dc946e42h

+dd 0fafecfedh

+dd 0c2d44cf1h

+dd 00faf22fdh

+dd 0621c5262h

+dd 0688da8fdh

+dd 0d9e19e44h

+dd 0bce8a339h

+dd 0879ff162h

+dd 0a67cd1f5h

+dd 001680393h

+dd 0a3f6b97eh

+dd 0b12d6a8ah

+dd 0067b6264h

+dd 082afd4f6h

+dd 08c9f22e7h

+dd 0e32ee661h

+dd 077542706h

+dd 0a26ca367h

+dd 016d3f58eh

+dd 08a26ec34h

+dd 091b44ccbh

+dd 0029237eah

+dd 0e1b375ddh

+dd 0a0ba2be9h

+dd 0752c0eeeh

+dd 0dcb8b5c9h

+dd 04b79ff7dh

+dd 0bee8965bh

+dd 0ef579429h

+dd 02c8a53b7h

+dd 0c12a85bbh

+dd 00afacb61h

+dd 07498b14eh

+dd 0f3885df6h

+dd 0a34f42b6h

+dd 04e9da34bh

+dd 086bf021bh

+dd 0a176f969h

+dd 0a6d7e94eh

+dd 015928ce6h

+dd 048bb767bh

+dd 08d695729h

+dd 00c9a2dcah

+dd 050a5c055h

+dd 07be50800h

+dd 0e3dc28d8h

+dd 0a8fc918ah

+dd 0c44ef641h

+dd 0be3cef78h

+dd 0378369b8h

+dd 0c6aec6eeh

+dd 076a0c091h

+dd 0144a39fbh

+dd 0eda9a9d6h

+dd 0fd8926e6h

+dd 01a9e213fh

+dd 03111ee7dh

+dd 03c9633eeh

+dd 0d76bbcb6h

+dd 00f15f230h

+dd 017872d1dh

+dd 0fe80bbf6h

+dd 07eca3d2ch

+dd 05ab14e53h

+dd 0c6e17317h

+dd 0d6a3d90fh

+dd 0776218d7h

+dd 0dca552ceh

+dd 025ae551ch

+dd 019a7d510h

+dd 0ee379a9bh

+dd 0d34c3938h

+dd 04ba6d868h

+dd 0a6a1d9adh

+dd 0c25ce10eh

+dd 059189269h

+dd 0e411a05eh

+dd 06a1cf4a2h

+dd 0628c6425h

+dd 0c9fbbd0ch

+dd 03f2b148eh

+dd 0c4ca192ch

+dd 075b0b440h

+dd 05dedec14h

+dd 0298960a8h

+dd 0043c60b4h

+dd 07fa78f8eh

+dd 0d0684a62h

+dd 0d10727b6h

+dd 046a5870ch

+dd 0332c6d9ah

+dd 086a3643ah

+dd 0b31bd751h

+dd 0d7297a92h

+dd 03db51814h

+dd 01bd56b97h

+dd 0c4db77b7h

+dd 09fba0141h

+dd 04b77ee9eh

+dd 03d43c2ceh

+dd 0d8e86b2dh

+dd 0baca2056h

+dd 05a2874d4h

+dd 01d774039h

+dd 0a4c8b6d5h

+dd 07db32d71h

+dd 0ce1af545h

+dd 031326375h

+dd 0a7f2be33h

+dd 04d9f96cdh

+dd 054ec9a03h

+dd 096aaf25bh

+dd 0aa11ac3ah

+dd 0963f753eh

+dd 0512c93cch

+dd 0178bcb73h

+dd 0da1ed005h

+dd 02dfd4526h

+dd 0405dcd2dh

+dd 0979a34bah

+dd 020b04d5eh

+dd 0ccc62b4ch

+dd 006c4e8f6h

+dd 0eb10a573h

+dd 0698132d3h

+dd 0f00026a3h

+dd 08e279c20h

+dd 0bc9a0335h

+dd 0b7b5c788h

+dd 02da8465fh

+dd 0d5cc3478h

+dd 026dfae79h

+dd 011a3c180h

+dd 09362550dh

+dd 0e1b9a48ch

+dd 01a443903h

+dd 0863d42f1h

+dd 0531667d5h

+dd 037e5dadeh

+dd 0b3fac18eh

+dd 0e814a02fh

+dd 05ef88ea6h

+dd 090116b3bh

+dd 051b95cf7h

+dd 077c05edeh

+dd 0efb43f57h

+dd 07dd3acfah

+dd 098176d9eh

+dd 068043dcdh

+dd 0a0bf10eeh

+dd 0c1a4a62fh

+dd 0527d3afah

+dd 0dffca91ch

+dd 090616132h

+dd 082981f1fh

+dd 0c448b533h

+dd 05608c3dch

+dd 01ebaba85h

+dd 0942eb56dh

+dd 0a2654581h

+dd 0b6804d3ch

+dd 04759c593h

+dd 0d7f9879eh

+dd 085475da0h

+dd 08db3cf90h

+dd 01afd83b6h

+dd 00a885fb0h

+dd 0c3ec8221h

+dd 082fad008h

+dd 0dba47f77h

+dd 0fa11ce1dh

+dd 09c98ba97h

+dd 0339b0959h

+dd 0eac40432h

+dd 051a2d20bh

+dd 09b9319bch

+dd 06f54f47eh

+dd 06eb845a5h

+dd 0f08831a1h

+dd 0b90bbe9ch

+dd 0556bdc54h

+dd 0680fe343h

+dd 02ce5bdcbh

+dd 05f633e92h

+dd 08b607426h

+dd 07e996959h

+dd 0d4d14d48h

+dd 0093095dfh

+dd 037a94fcah

+dd 01fe66c52h

+dd 06cc9b474h

+dd 093365d71h

+dd 08484f72ch

+dd 033722914h

+dd 0a6c05fa9h

+dd 023b847cch

+dd 02481d104h

+dd 0a9413b5eh

+dd 05137c47dh

+dd 053964763h

+dd 03a5c936ch

+dd 018184903h

+dd 0f9920263h

+dd 0f9abc372h

+dd 0c00de1b4h

+dd 097cbbe08h

+dd 0c07432c7h

+dd 0b8c85315h

+dd 0c911353eh

+dd 04bc3ae4ah

+dd 0895bc9bah

+dd 095276c4ch

+dd 065e05634h

+dd 066caedf7h

+dd 0df19e754h

+dd 0c161ddach

+dd 04dafb917h

+dd 0e149babch

+dd 021fe464bh

+dd 0dc2720efh

+dd 09870508dh

+dd 0d7196246h

+dd 0ca55a966h

+dd 02e72f5f3h

+dd 0b70800b0h

+dd 01c086007h

+dd 02ec41c24h

+dd 0f22f9277h

+dd 097aaaeb6h

+dd 02d6e933eh

+dd 0e4f04067h

+dd 073a2c0c3h

+dd 0f7c150c1h

+dd 00ebb7193h

+dd 023806927h

+dd 0335abe07h

+dd 05d00a8fah

+dd 03c381505h

+dd 0309f7be1h

+dd 0d3b9f226h

+dd 0aa564c25h

+dd 0e419bcbfh

+dd 0db3428bch

+dd 0631d0d75h

+dd 0ea6528eah

+dd 02703f165h

+dd 00ed69ae9h

+dd 0130ba0c4h

+dd 056528d34h

+dd 01bf0d319h

+dd 070d7413fh

+dd 0f34b14efh

+dd 0b0a3f750h

+dd 0a24d4ce0h

+dd 0d7b94f5ch

+dd 02eac2addh

+dd 0238a97bah

+dd 0575d65d7h

+dd 0c8835932h

+dd 0310885deh

+dd 07635e74fh

+dd 07a641f28h

+dd 0c53bb16eh

+dd 05ece5fd4h

+dd 0960fd4dch

+dd 0f913c8aah

+dd 0fcdbaaa5h

+dd 0dbabdd89h

+dd 0163e25fbh

+dd 0d0be7fa6h

+dd 0cc80e34fh

+dd 0b92bd949h

+dd 0ca82f046h

+dd 0916e2e51h

+dd 042b7f6f4h

+dd 012dc0027h

+dd 02baed9e8h

+dd 0c7431f5eh

+dd 00473a24eh

+dd 0b08c2c56h

+dd 0729279f9h

+dd 0b615c85bh

+dd 0bdc0dccch

+dd 0a276b22eh

+dd 099e2ed54h

+dd 0d1e0b692h

+dd 0f5bd3142h

+dd 0a9575b24h

+dd 0ca747175h

+dd 039891492h

+dd 0b9d483f3h

+dd 02d6ff6b6h

+dd 03e0b117bh

+dd 06e541629h

+dd 031b45ee1h

+dd 0f631dd45h

+dd 0e259bde4h

+dd 05417fa84h

+dd 01f06549eh

+dd 0b823a46ah

+dd 0a24eed44h

+dd 03e09ef70h

+dd 08726b7eeh

+dd 0561b1071h

+dd 086559bb3h

+dd 069f319b2h

+dd 0d8dbdcb7h

+dd 0d000f60bh

+dd 06de02d3fh

+dd 014e0a0b7h

+dd 0a1baecfeh

+dd 086ac7a17h

+dd 06419d3a6h

+dd 0b5831deah

+dd 07785eeb8h

+dd 0312b42f9h

+dd 03cf26abdh

+dd 0a6acfa99h

+dd 07955bb49h

+dd 087cb4b89h

+dd 05f042188h

+dd 0d185b1d0h

+dd 06b35c7cch

+dd 0dc5fbcb8h

+dd 06526f9e4h

+dd 095856a31h

+dd 00f56d597h

+dd 0c30e4e1dh

+dd 00215af48h

+dd 07ac9eab7h

+dd 0d2ed10bdh

+dd 0d326d3f8h

+dd 04612b109h

+dd 0ff558f3ch

+dd 099ed9ff1h

+dd 0405b2872h

+dd 065cc51c1h

+dd 085e8b952h

+dd 0456a45ffh

+dd 0c12a66e4h

+dd 0d8acbc39h

+dd 0fdc1b781h

+dd 0eda248a1h

+dd 0fa3e450dh

+dd 07ed7fd34h

+dd 0367dc04dh

+dd 09edeec34h

+dd 0a6393d20h

+dd 01af838d6h

+dd 05c52bf41h

+dd 0c85f6bc9h

+dd 076c8407ch

+dd 05f1cd75ah

+dd 00e056b7ch

+dd 0da96be62h

+dd 094a78984h

+dd 0c0c56caeh

+dd 032766930h

+dd 0eb45b27bh

+dd 093a0fce7h

+dd 011fb49e5h

+dd 0e4518650h

+dd 01c881206h

+dd 05aba21ceh

+dd 0ff0ca0bah

+dd 0e0883e0ch

+dd 0d1eb8611h

+dd 0b4150e6ch

+dd 060cb856dh

+dd 01b8c452fh

+dd 00cd1fd56h

+dd 0ffab039ch

+dd 0c4de8373h

+dd 05c25069dh

+dd 0b27a8dafh

+dd 01814d707h

+dd 02f06d336h

+dd 08e0490a3h

+dd 010f964d3h

+dd 0b17132e2h

+dd 057b6a57ch

+dd 0f2ab4d77h

+dd 02e20bb03h

+dd 0b3a79d27h

+dd 093d61200h

+dd 0abb0d957h

+dd 03ae4a20ah

+dd 04eee1b2ch

+dd 082cbb24fh

+dd 0abb399a2h

+dd 0c6038085h

+dd 0aa1a4fc5h

+dd 0f1ca1971h

+dd 03148b3c0h

+dd 0d4b0832ch

+dd 0dd4d5c28h

+dd 057dea344h

+dd 09373eb90h

+dd 0787bda09h

+dd 088c0687ch

+dd 004f82730h

+dd 079ba63c0h

+dd 070c26fb4h

+dd 0d9b11c06h

+dd 091b058d1h

+dd 04a2fe77bh

+dd 0dbc6cc38h

+dd 0165173d6h

+dd 05d41382ch

+dd 0468c6e65h

+dd 006e50c1ch

+dd 0f8336fb4h

+dd 0f440686bh

+dd 006902485h

+dd 066a6ab88h

+dd 09ee68ae7h

+dd 046200a1ah

+dd 033e926b0h

+dd 0fc274816h

+dd 0da8fbef0h

+dd 008159b65h

+dd 00cd6567ah

+dd 0836192cfh

+dd 0d727df32h

+dd 0040bb588h

+dd 0286ac112h

+dd 03da3e412h

+dd 09e02fdbfh

+dd 0e998fdb6h

+dd 046e443a6h

+dd 096191f1bh

+dd 001c6ba40h

+dd 015733858h

+dd 05605c55dh

+dd 0744ed62ch

+dd 04b917a66h

+dd 0d05b823fh

+dd 0e6c9efcch

+dd 0d7c323a6h

+dd 08719d0dfh

+dd 0e59801a2h

+dd 0fc0d38d4h

+dd 079f49bb2h

+dd 00ef518d0h

+dd 072169b02h

+dd 09745966ch

+dd 074bb1107h

+dd 0a367b86dh

+dd 00a015134h

+dd 0b020957fh

+dd 06c3c7bfch

+dd 089a9ef96h

+dd 0229e45a4h

+dd 06e9c365ah

+dd 09f39e32ah

+dd 04d52b866h

+dd 08262a30eh

+dd 076897ab5h

+dd 020e94726h

+dd 0042d5580h

+dd 0a76d4c78h

+dd 088e7f948h

+dd 05e262a32h

+dd 0c87f924fh

+dd 0292e17f9h

+dd 0dc046ed7h

+dd 0f31b63a6h

+dd 0e5516180h

+dd 0240e915fh

+dd 0c807a5f2h

+dd 0bd9aed44h

+dd 001083de0h

+dd 0fde4ae9fh

+dd 0359b7be2h

+dd 09d8f88e2h

+dd 06373be78h

+dd 02cc99ba1h

+dd 0122872d4h

+dd 007852e98h

+dd 0f091faadh

+dd 0063f720fh

+dd 0e2f7e2b7h

+dd 0f9ed22d8h

+dd 0b3520058h

+dd 010d888c4h

+dd 08f210eebh

+dd 01f502982h

+dd 0012da1d2h

+dd 0ac846dcch

+dd 03ed876cah

+dd 053612b00h

+dd 074d4ccebh

+dd 0b247706bh

+dd 09552e43fh

+dd 0b08278c4h

+dd 0f11c0251h

+dd 0ae78fc8dh

+dd 0b7c4ce71h

+dd 02c3f68e3h

+dd 0d626dfa3h

+dd 000335bb1h

+dd 049353d0fh

+dd 063a6cbc8h

+dd 0e948786bh

+dd 07e3b34d0h

+dd 088c0506dh

+dd 095634a84h

+dd 06499cb13h

+dd 0b46248a6h

+dd 0a9b585b6h

+dd 0b690d304h

+dd 0e93bd93eh

+dd 07401cbc1h

+dd 081b059f5h

+dd 039caaf4ah

+dd 0442eab78h

+dd 0c91a2859h

+dd 0bcb909fch

+dd 091f41f56h

+dd 0abb30995h

+dd 00b30f7f6h

+dd 0659f2ba2h

+dd 0c147708dh

+dd 042875e9ch

+dd 0289ad976h

+dd 061c53cb9h

+dd 06fe06bc7h

+dd 093679e5ch

+dd 0210a345fh

+dd 027251879h

+dd 0ed0f9626h

+dd 00a82c054h

+dd 0a39e8649h

+dd 03f25a316h

+dd 08a5904bfh

+dd 084e68710h

+dd 03d979517h

+dd 0171e1208h

+dd 0658b2d23h

+dd 043770421h

+dd 01ab899ebh

+dd 072205257h

+dd 0e9ee5184h

+dd 0a6d45975h

+dd 0aa7ec833h

+dd 0a1d1377bh

+dd 0fd7692b8h

+dd 042f8aea7h

+dd 05e5e7fd8h

+dd 0e08dd1bdh

+dd 0281e921ch

+dd 0f79f7a28h

+dd 06adebceah

+dd 0baaa9488h

+dd 09b425a9ah

+dd 04fb3aa6eh

+dd 00a7b17b5h

+dd 0ee98c054h

+dd 04de1b7ceh

+dd 01a41c399h

+dd 05c98ec4ch

+dd 0ab7cd102h

+dd 070d025adh

+dd 044128974h

+dd 0235a9276h

+dd 0b80acefdh

+dd 054e2e182h

+dd 0b3af3c46h

+dd 0e8f36ba9h

+dd 07a9aca37h

+dd 0632b3f49h

+dd 047f5205eh

+dd 0e30b272dh

+dd 07894a392h

+dd 0e29b3a8bh

+dd 01cd40b43h

+dd 0cefb6b48h

+dd 0e08cc279h

+dd 07d6b3d65h

+dd 04268d1d9h

+dd 062cb8110h

+dd 0453d1557h

+dd 08517381ah

+dd 064ffe559h

+dd 097b126fdh

+dd 03ba82035h

+dd 004baab5eh

+dd 03a454465h

+dd 0de842b6bh

+dd 0a7b95ea4h

+dd 024dab816h

+dd 0441c6b0dh

+dd 06600e3dch

+dd 0b0a23991h

+dd 0d88596b7h

+dd 041647030h

+dd 0735d8c72h

+dd 06c678e5dh

+dd 00315944eh

+dd 0db471680h

+dd 08333bbfeh

+dd 0dfb9ccadh

+dd 093b51ecch

+dd 01a339a13h

+dd 06fed48b1h

+dd 00e485c66h

+dd 033f510e6h

+dd 0801d4a82h

+dd 0f88a96edh

+dd 022188cb2h

+dd 0de163c2ch

+dd 007edfd64h

+dd 02f790e5ah

+dd 08641b5a6h

+dd 09188be9ch

+dd 049d3d3efh

+dd 0b489e0e0h

+dd 0341f5b48h

+dd 0ccb5294bh

+dd 026ec765fh

+dd 0e6187074h

+dd 0519b4e67h

+dd 043190bbeh

+dd 013013351h

+dd 0c191f962h

+dd 030e6ee17h

+dd 0b9903108h

+dd 0bd338721h

+dd 001600cech

+dd 0b48732b9h

+dd 04d68b762h

+dd 0c9678dffh

+dd 01c9e1927h

+dd 094c39442h

+dd 063fe31a3h

+dd 084ce8d5dh

+dd 063efbdf0h

+dd 0a30d10bbh

+dd 0eeaf12ach

+dd 0ebf5f398h

+dd 050153b1ch

+dd 02b6bcb48h

+dd 0db22e432h

+dd 0d9d920e1h

+dd 0195d1f78h

+dd 086292209h

+dd 03db41d6eh

+dd 01238bf81h

+dd 0f3bb59c9h

+dd 0dfcc7d5fh

+dd 0cf1ff16dh

+dd 08fab9135h

+dd 0f0bb0dd1h

+dd 0a7ac23e1h

+dd 0a1117149h

+dd 0de2ac0efh

+dd 071d9046eh

+dd 002a13cb3h

+dd 0bd0d3cc3h

+dd 020230536h

+dd 067f855a1h

+dd 0a3869eb4h

+dd 0203e898eh

+dd 044c3b291h

+dd 087fa39e6h

+dd 0882bbb9dh

+dd 0124f6934h

+dd 02bd85dafh

+dd 05f2f6e2dh

+dd 035d5fc9ah

+dd 0830d126eh

+dd 09a56805eh

+dd 01154a283h

+dd 08c9bb8aeh

+dd 0f490ec82h

+dd 01eedc7e3h

+dd 02852264dh

+dd 0ec957c00h

+dd 013969be4h

+dd 037895503h

+dd 01e5c8888h

+dd 04dfbb299h

+dd 0687a374ah

+dd 090e40db8h

+dd 057d30e09h

+dd 0b7b71cddh

+dd 030cadb45h

+dd 098e130cfh

+dd 056659457h

+dd 07998d64ah

+dd 072f35708h

+dd 0a4d4d692h

+dd 00be5933ch

+dd 0beda1fe7h

+dd 0a3adae35h

+dd 0ef34ce9ch

+dd 07c080e4fh

+dd 01ba9d3a4h

+dd 01b63c320h

+dd 0a6419422h

+dd 00d484009h

+dd 01d413d27h

+dd 0e4af3a82h

+dd 0a401e5edh

+dd 0954b3070h

+dd 05c60c2c1h

+dd 04d406cbah

+dd 0bc4a0ccah

+dd 0ed45bca5h

+dd 0ee1ada7bh

+dd 0ccd5f274h

+dd 04ab6002ch

+dd 06d0cb710h

+dd 0fa6e52c5h

+dd 0989c5cf3h

+dd 0c02bf04ah

+dd 050fcb8d1h

+dd 028287931h

+dd 0ef1dee5ah

+dd 030f3fa5dh

+dd 0834ad084h

+dd 0d48651cch

+dd 08c2417eeh

+dd 0bbbfe25eh

+dd 038427579h

+dd 0437ab089h

+dd 0b5bfecd7h

+dd 0050b89a4h

+dd 046cf61e0h

+dd 0e2eb89c8h

+dd 03a2099c9h

+dd 07bc91672h

+dd 0706ce631h

+dd 07f96bf84h

+dd 0ae61279ch

+dd 005ca4afch

+dd 006ae398bh

+dd 04beba6d5h

+dd 06428b894h

+dd 0c4d02880h

+dd 027624d9fh

+dd 05c7a1f65h

+dd 07f6221c8h

+dd 0982d1b0bh

+dd 0c56c53e0h

+dd 043c25a78h

+dd 06416914bh

+dd 0b4ceb767h

+dd 04f87a8dbh

+dd 03f8a6b89h

+dd 0eb5d746eh

+dd 0c5c87f7dh

+dd 065676fcah

+dd 07b1126b3h

+dd 0095aab68h

+dd 08c8d4743h

+dd 00e973691h

+dd 0cc7e2979h

+dd 07e97f35bh

+dd 09d60506bh

+dd 0046add9ah

+dd 08aa90878h

+dd 09e829cd5h

+dd 0e667217ah

+dd 04b545f4eh

+dd 0e2922511h

+dd 068c03a17h

+dd 08eb9af79h

+dd 0d47ee35eh

+dd 07eef9e23h

+dd 0cf6bbec2h

+dd 0988faae8h

+dd 0365ce11dh

+dd 0fa8f1eaeh

+dd 02f74dc6ch

+dd 0bdff4b22h

+dd 0b8064362h

+dd 063dd96cdh

+dd 0e77cb2cbh

+dd 00abe465ah

+dd 08d5112dch

+dd 02d60a3eah

+dd 0dad4c1bbh

+dd 05bcec5e4h

+dd 020d658c5h

+dd 05bfa1e33h

+dd 09c5f2eb0h

+dd 0c0fa2de7h

+dd 07dd63859h

+dd 01e181c17h

+dd 0b6d0dc9bh

+dd 0d95ba600h

+dd 01956c489h

+dd 091b9bb86h

+dd 0a06ce59fh

+dd 06a84f582h

+dd 02f2ea483h

+dd 00e7d9772h

+dd 069f42c3eh

+dd 061c590f9h

+dd 05f6718fdh

+dd 0d96fcc11h

+dd 0a3d60b49h

+dd 027f87b6fh

+dd 03000233ah

+dd 09d362ce1h

+dd 0db44e506h

+dd 0cb4f9e9eh

+dd 07e6fefa2h

+dd 06a22a599h

+dd 0370bb6fah

+dd 09e897000h

+dd 026ea0902h

+dd 05e8dc025h

+dd 01d1d8095h

+dd 0c8a854bfh

+dd 0bfe46bdfh

+dd 083d1a789h

+dd 0615c2061h

+dd 07d83b0fdh

+dd 03aeff2afh

+dd 0ff0f3de5h

+dd 075210842h

+dd 0af2f40dah

+dd 09cee2991h

+dd 012bfd379h

+dd 03368aed7h

+dd 080da0082h

+dd 0113a0966h

+dd 030ddaf6eh

+dd 0b403754ch

+dd 0d2b51343h

+dd 07a90dbbch

+dd 0c4e3cd43h

+dd 06df0f4a5h

+dd 00dfd5283h

+dd 0357fb861h

+dd 081dd20aeh

+dd 019ca34e2h

+dd 0e4d1dcech

+dd 0f93a68f8h

+dd 0eacea62fh

+dd 003a00fa1h

+dd 00cb3c72eh

+dd 0ba5c2a04h

+dd 06c6a8acah

+dd 0e8e6560eh

+dd 0ce532e22h

+dd 05cb428fdh

+dd 03433963fh

+dd 0916e200ah

+dd 0675c8b56h

+dd 074fb6890h

+dd 04113bcd0h

+dd 0411ca2f7h

+dd 0fe64a568h

+dd 0b1a51ba9h

+dd 0ccececebh

+dd 0276b0a47h

+dd 0322b2fdch

+dd 005717015h

+dd 03cf57e7ah

+dd 04987f541h

+dd 076c6b9ebh

+dd 00a9f46d6h

+dd 021d57541h

+dd 0a8dc9af0h

+dd 025739d3ah

+dd 010e8bea4h

+dd 0cb654903h

+dd 0e5cab22fh

+dd 01bacf32ch

+dd 07038d5cfh

+dd 017805177h

+dd 0a66faec7h

+dd 0a734c875h

+dd 0c5000e7fh

+dd 0ef507d85h

+dd 0b25d909ah

+dd 0170e4bb6h

+dd 00d6da5c1h

+dd 0359a08afh

+dd 071780e78h

+dd 0aa1cbd46h

+dd 07582edfch

+dd 00654f27ah

+dd 0e7e377f8h

+dd 06ae14efch

+dd 0ebc7da68h

+dd 0293936e4h

+dd 0004c1ca9h

+dd 0ca5574f0h

+dd 0ef3033e4h

+dd 055becbc0h

+dd 0e0385110h

+dd 0293b30eeh

+dd 04862dda8h

+dd 0baba6ed0h

+dd 0e4927bach

+dd 09ddb64cch

+dd 057701dfbh

+dd 0ce491a4ch

+dd 03101bb25h

+dd 07795c230h

+dd 0e5ba1e89h

+dd 09d195416h

+dd 0e3d2df9eh

+dd 0ce3d0abbh

+dd 058ed75dbh

+dd 097d8fb40h

+dd 0a8685706h

+dd 0f39fd570h

+dd 0d523241ch

+dd 0890fba37h

+dd 04250caefh

+dd 026c4718fh

+dd 056d6a1b4h

+dd 04d6150bfh

+dd 05b8208ceh

+dd 081067a88h

+dd 0bfc7c896h

+dd 06c556479h

+dd 08b62a676h

+dd 0126b12b9h

+dd 096cfc26ch

+dd 072f7d164h

+dd 0014b9e78h

+dd 0da71c7f1h

+dd 00b07c758h

+dd 0236465e8h

+dd 055e35413h

+dd 0b6900f45h

+dd 0085363c4h

+dd 050e71f6eh

+dd 08a1e77d5h

+dd 0b99149eah

+dd 0452db1c0h

+dd 0fe0b4637h

+dd 0da6f1f64h

+dd 024f8875bh

+dd 0a21fb658h

+dd 0a4f526b1h

+dd 047150f5dh

+dd 0d0ee85b4h

+dd 02a2d92d3h

+dd 007650f05h

+dd 0ff59400dh

+dd 0aefcc2bbh

+dd 061cc939eh

+dd 030e5430dh

+dd 07082191ah

+dd 044e51b92h

+dd 0bee40d62h

+dd 080a0d321h

+dd 022b2207fh

+dd 00ac2a012h

+dd 0262c99e7h

+dd 00806f752h

+dd 09c405425h

+dd 0e17fe8eah

+dd 0e1bd3731h

+dd 0bf4f0a38h

+dd 090962010h

+dd 09187f696h

+dd 039aa1494h

+dd 0cff3984eh

+dd 033aec5ceh

+dd 06f208d1ah

+dd 0a24cc962h

+dd 031624188h

+dd 0b08536c9h

+dd 04f61c4b2h

+dd 0cd67ef9fh

+dd 02d26d62fh

+dd 02e7b004ch

+dd 017b80641h

+dd 063c67d4dh

+dd 03f817817h

+dd 02f299c69h

+dd 05d440dfeh

+dd 0488ec8e9h

+dd 06ae1919fh

+dd 039dd5b50h

+dd 0ece62468h

+dd 01617e4c3h

+dd 063753640h

+dd 08dab6586h

+dd 0dfc60fffh

+dd 015e75cadh

+dd 01ac8003bh

+dd 0984b8175h

+dd 0f9c846d7h

+dd 084462488h

+dd 055afd9bch

+dd 0ea03788fh

+dd 0f9c3a0f5h

+dd 0538c6dbdh

+dd 0e3ad8664h

+dd 05214f381h

+dd 0ab3d6694h

+dd 0caffb428h

+dd 0ed8a8ee4h

+dd 0d889f537h

+dd 051eab98bh

+dd 0e3277486h

+dd 031976dd1h

+dd 0769ef456h

+dd 0dcce96f6h

+dd 0f201dd17h

+dd 03ecfecc8h

+dd 0698af599h

+dd 006c4fa8dh

+dd 005f9c921h

+dd 09acb0305h

+dd 03bcb736dh

+dd 0dd156dd3h

+dd 0b48d9519h

+dd 0f238344ah

+dd 00ec8031bh

+dd 07de67e19h

+dd 0bdab824fh

+dd 0074a4f05h

+dd 0ffd4bf2ah

+dd 00d9dae7ah

+dd 06d6e82b1h

+dd 0fd276a0fh

+dd 06a1792bch

+dd 04c5ce9bbh

+dd 051952245h

+dd 07ee8e2c4h

+dd 0f17f7cf5h

+dd 0f43be4c1h

+dd 0db64cf17h

+dd 00dcb4fbbh

+dd 00e56f3b1h

+dd 0626052a1h

+dd 0ca19a115h

+dd 0dfc3cd89h

+dd 0ed0f6369h

+dd 0b7447610h

+dd 0f1189d7ch

+dd 0e41dc575h

+dd 04277e7b3h

+dd 0cc927c69h

+dd 08512f4cch

+dd 0008fb277h

+dd 0c0593155h

+dd 007bb6296h

+dd 0133767c8h

+dd 01c6903eeh

+dd 006f7dd16h

+dd 07cdb99bch

+dd 0ac94c879h

+dd 08b6b7ecbh

+dd 098c12538h

+dd 015ffdbd5h

+dd 03cf63da0h

+dd 0f7a61c68h

+dd 0bbde92e5h

+dd 0c4d4fd83h

+dd 066e57c46h

+dd 0b5882fa1h

+dd 07d0d43e8h

+dd 01a00994dh

+dd 0fba42874h

+dd 0a76c238eh

+dd 0883ce2c3h

+dd 028c7c0b0h

+dd 051a04850h

+dd 0d06fc8d1h

+dd 03c38f37ch

+dd 0cb3008c1h

+dd 029b1836ch

+dd 0cfd0b28ch

+dd 035e7b918h

+dd 006b44661h

+dd 0ed7b1dbch

+dd 09adeb951h

+dd 0f6826615h

+dd 08b34c763h

+dd 027f672c8h

+dd 056667682h

+dd 0ed884376h

+dd 0c370742dh

+dd 094658cb0h

+dd 0437f71abh

+dd 0c1321fd1h

+dd 00147ecd4h

+dd 00539fba9h

+dd 0971d71c2h

+dd 095b719cdh

+dd 008ae87ebh

+dd 0b7658e0fh

+dd 089a52deah

+dd 0e1b3964ch

+dd 0af3626aeh

+dd 0cc1bfea2h

+dd 0a4c852f0h

+dd 06db4a4dfh

+dd 0f3ba6f35h

+dd 0667c3ec3h

+dd 03f77e665h

+dd 094247945h

+dd 0d51025eeh

+dd 026f26ab8h

+dd 03ab4f4c8h

+dd 05b13f25fh

+dd 0699201a3h

+dd 026251bf1h

+dd 0b1cab4cbh

+dd 0451a5447h

+dd 070a6e56bh

+dd 050a3988fh

+dd 015438598h

+dd 0d17d3bb0h

+dd 03e412d9ah

+dd 00ce64444h

+dd 0cb254f8ah

+dd 0b531f273h

+dd 0690df4fbh

+dd 07b7eb706h

+dd 0abad0161h

+dd 07bd85704h

+dd 014846139h

+dd 0c6f206a7h

+dd 092e28adch

+dd 05c0dea49h

+dd 0a76f2d02h

+dd 029af0d38h

+dd 04e075798h

+dd 0f517af56h

+dd 01ca3a09bh

+dd 0cd35233eh

+dd 03b7cf647h

+dd 09df40159h

+dd 04fe3a6a5h

+dd 07ede63b9h

+dd 0eb05dae9h

+dd 0d26d4bd0h

+dd 0de0c6b0fh

+dd 0755c94dfh

+dd 016dca2adh

+dd 0b0fde1e8h

+dd 0be551e20h

+dd 07dd6fd5dh

+dd 08f09eefbh

+dd 0e26adf05h

+dd 003d7da1ah

+dd 070735b9ah

+dd 049283c93h

+dd 082c6c3d5h

+dd 091f7de14h

+dd 0f711f551h

+dd 09c91f8b1h

+dd 0dd355389h

+dd 00159f854h

+dd 06cfe5f07h

+dd 00c4da4e8h

+dd 0784ea027h

+dd 0917a8755h

+dd 0156f4debh

+dd 025d3f21dh

+dd 078749991h

+dd 095f1190eh

+dd 0b5ea87e8h

+dd 0091ed0e2h

+dd 08cf6b712h

+dd 0efdd562ah

+dd 010df37aah

+dd 019a76f7fh

+dd 098af35fdh

+dd 067ee399fh

+dd 0f2d0a2e9h

+dd 089537a67h

+dd 0fc989fc1h

+dd 0bde8e49eh

+dd 05597e450h

+dd 0e014b8f8h

+dd 00ae31baeh

+dd 00f69e522h

+dd 0e4a438abh

+dd 00f32cf3bh

+dd 09cbe6b23h

+dd 0f2fdc145h

+dd 020114241h

+dd 038995c41h

+dd 0113222ddh

+dd 063bbffbah

+dd 06f3191beh

+dd 0045de1c1h

+dd 0cf7407d7h

+dd 0bbc0cc05h

+dd 068db060ah

+dd 05edc41d9h

+dd 02a813088h

+dd 0c927e13dh

+dd 026d34c58h

+dd 0e3c2bd9ah

+dd 0197be58dh

+dd 0246b0a5bh

+dd 0dda289f1h

+dd 018869620h

+dd 09816627ch

+dd 0e24ba601h

+dd 02ec8ecafh

+dd 05712d203h

+dd 0a9ee9f6ah

+dd 0366c3f08h

+dd 0b5bdc31bh

+dd 00e05de68h

+dd 02853c828h

+dd 0cd91c08eh

+dd 0761be7fch

+dd 0054325cbh

+dd 031f6da59h

+dd 01d36840ch

+dd 00dc5b1b3h

+dd 0d4ff52dbh

+dd 094f4c68eh

+dd 035d0cdech

+dd 0b3a84890h

+dd 0ffd8671fh

+dd 054a0a638h

+dd 04f203cffh

+dd 05349d7d6h

+dd 0135ace55h

+dd 0e5a15e22h

+dd 090e52018h

+dd 01be5e431h

+dd 073b5c8a7h

+dd 05eaefc71h

+dd 07e87618bh

+dd 0a5665a6dh

+dd 0ed040865h

+dd 079631c5dh

+dd 0e7be8dach

+dd 08b3a461ah

+dd 03f5f3d31h

+dd 0fde7605ah

+dd 017651f06h

+dd 0fe73e3e4h

+dd 0501ba646h

+dd 0ac400fb6h

+dd 092f46464h

+dd 0434b6348h

+dd 0f4b34ec4h

+dd 023488968h

+dd 0e227d660h

+dd 0a815cd99h

+dd 095fcec3ch

+dd 0b62b8acbh

+dd 004a7bf35h

+dd 08edfc626h

+dd 0632d1585h

+dd 0f35bdf94h

+dd 0fc3790fch

+dd 0a02aff17h

+dd 0198a62beh

+dd 07f1a564ch

+dd 0c3d5bb0dh

+dd 0aebcb3d6h

+dd 092355893h

+dd 051f7741eh

+dd 057a277ach

+dd 051d26a8fh

+dd 07679f0feh

+dd 0cfd79c35h

+dd 07ab2c81ch

+dd 0d9aa63c7h

+dd 080f63cf7h

+dd 09d3203f7h

+dd 063348750h

+dd 097671c2dh

+dd 004b5f3e2h

+dd 032af5d0ah

+dd 0d0ec85eah

+dd 0946f8cach

+dd 0c949b655h

+dd 0c1f565fbh

+dd 0eccd15abh

+dd 06feac719h

+dd 0b1e8006eh

+dd 0a06c3d13h

+dd 075f0de5ch

+dd 061581915h

+dd 0dd459168h

+dd 0f0d26bdah

+dd 05edcd2cbh

+dd 075bd89c7h

+dd 02e7ffd75h

+dd 055c71a76h

+dd 0834afa3bh

+dd 0c542c40eh

+dd 0c801e312h

+dd 0fee6f014h

+dd 00901a27bh

+dd 011662898h

+dd 0beb49809h

+dd 0ae989e16h

+dd 068e34693h

+dd 0e1d710d6h

+dd 098c69505h

+dd 061c578f3h

+dd 013cbcd8dh

+dd 0fd8aae90h

+dd 057f3f49ch

+dd 094b5a297h

+dd 0b34d0784h

+dd 0a7a36713h

+dd 02af1e8d9h

+dd 0972e4763h

+dd 0890800dfh

+dd 0a12173d3h

+dd 0ac73f9b4h

+dd 08e24a44dh

+dd 09f7eb901h

+dd 0766767f7h

+dd 0f0db0015h

+dd 0fbc46bech

+dd 098d2b077h

+dd 078582169h

+dd 044a16de2h

+dd 01b478062h

+dd 0d8d75209h

+dd 0a7d278e5h

+dd 04c8ffcdeh

+dd 027f24c76h

+dd 093c020e9h

+dd 058812dc0h

+dd 080b129aeh

+dd 0027348bfh

+dd 04908be8ah

+dd 0df181780h

+dd 0ecc207e0h

+dd 00ae9d017h

+dd 0f2d3ca7fh

+dd 0cb088e9eh

+dd 0ea275d14h

+dd 05ce9e0eah

+dd 0e7907ff0h

+dd 095fea519h

+dd 0c5cb3910h

+dd 0c323e804h

+dd 0c3c8bb40h

+dd 040836debh

+dd 02470f10ah

+dd 093471558h

+dd 0b8fc333ah

+dd 026aec4e5h

+dd 0994cbc96h

+dd 0e66e79c0h

+dd 0e1d1610ch

+dd 0a8b11ab3h

+dd 03dc7b207h

+dd 0a47376e5h

+dd 00d377191h

+dd 0b1bf25ech

+dd 0183fa365h

+dd 0b1022fa8h

+dd 0bf6c8762h

+dd 0b73693f9h

+dd 0feefafa0h

+dd 0d80be5eah

+dd 055538b5dh

+dd 0e1b9ca89h

+dd 064fa3304h

+dd 0b43d35d1h

+dd 013016364h

+dd 0c23e869eh

+dd 0f1bd6c59h

+dd 0426dcd21h

+dd 08877cc39h

+dd 06f597cach

+dd 0149c44b3h

+dd 041159946h

+dd 0341107a1h

+dd 09420338dh

+dd 0fac547bbh

+dd 00ba2bda8h

+dd 08e60b634h

+dd 042eaebech

+dd 06fad7bc3h

+dd 0980d0e66h

+dd 0f0476b34h

+dd 02c700078h

+dd 00ea8d937h

+dd 08788d26ah

+dd 040b3fd1dh

+dd 0aa81cdb5h

+dd 079ad5f4bh

+dd 03c91a95dh

+dd 0b1dafc56h

+dd 075f02b73h

+dd 0c0d710deh

+dd 0fabd39f6h

+dd 0ff7ad31ch

+dd 0d7fe643ah

+dd 082445e32h

+dd 0b4ed113ah

+dd 00f8f24d8h

+dd 05c293f07h

+dd 09c4d37a5h

+dd 002a786c4h

+dd 03dce186dh

+dd 0cf148d00h

+dd 08da83baah

+dd 0f01461eah

+dd 09f0f68f5h

+dd 0b1aeba65h

+dd 078901338h

+dd 0a2a5edefh

+dd 0032b15b8h

+dd 0b70cb682h

+dd 029791954h

+dd 0cb41526eh

+dd 02e709f99h

+dd 028e933d1h

+dd 0844e7707h

+dd 074f68d86h

+dd 0e9579621h

+dd 0654b8356h

+dd 07d0c9991h

+dd 027f62d42h

+dd 0ffcd7da5h

+dd 0780d0d08h

+dd 03bbbc5a2h

+dd 02c4ac995h

+dd 04b32cabdh

+dd 0c2018192h

+dd 05da882e2h

+dd 0ed96aec7h

+dd 039bf9a34h

+dd 0dbeab9f1h

+dd 0cea2fe93h

+dd 05b23fab3h

+dd 0214fe5aeh

+dd 09ede5548h

+dd 016851b0bh

+dd 044e91bdch

+dd 0ee6ce483h

+dd 0e2efec58h

+dd 0d7bb3344h

+dd 08f5ac77fh

+dd 04f65a300h

+dd 019358a06h

+dd 0fa2d8ca8h

+dd 0a0a91c7dh

+dd 05cb0cd57h

+dd 08c0e5988h

+dd 06274bc6bh

+dd 074665956h

+dd 05f09a3c9h

+dd 09c4ebbf9h

+dd 02531210dh

+dd 0cc45cb15h

+dd 021bc8254h

+dd 052592baah

+dd 0c1936101h

+dd 0f0096097h

+dd 09c731998h

+dd 0cf93fca3h

+dd 02443c441h

+dd 01e425b16h

+dd 03f720b0eh

+dd 053d0a171h

+dd 0a25fe7f3h

+dd 00746ca53h

+dd 0d5167608h

+dd 09c0398d0h

+dd 03d9110a3h

+dd 029d4e4bah

+dd 0118abb22h

+dd 0696cac27h

+dd 0bb341233h

+dd 0b9fc165fh

+dd 05037a7b0h

+dd 0f410f362h

+dd 044ecab96h

+dd 0a9be1614h

+dd 08cb4a8e9h

+dd 0cd08cc27h

+dd 0546d7447h

+dd 06e3f0f00h

+dd 0cd2a7d3ch

+dd 0ad12616ah

+dd 0f992b0aeh

+dd 076658dd4h

+dd 024ad666ch

+dd 01e2957c2h

+dd 09f230466h

+dd 0e99156ceh

+dd 067fd1932h

+dd 01e3d068dh

+dd 01888bbd5h

+dd 07dcc539bh

+dd 0f57d0013h

+dd 054304f8eh

+dd 0bab1dcf9h

+dd 00cf001f4h

+dd 011e3f28bh

+dd 02ea07c65h

+dd 0ff0a169fh

+dd 0468b6d81h

+dd 0b503e7e7h

+dd 02c24df48h

+dd 0a0710ebch

+dd 071b1ef19h

+dd 0844c98d2h

+dd 09e3a9909h

+dd 0745940d3h

+dd 0119fccadh

+dd 073df14afh

+dd 0e1a50e9bh

+dd 0be9bb4afh

+dd 046de7059h

+dd 0d5110bcbh

+dd 002cd4f06h

+dd 028a2cf1fh

+dd 02b26304ch

+dd 06d5187beh

+dd 015bd7612h

+dd 0e94db45fh

+dd 0a02d3d2bh

+dd 073610d61h

+dd 0053d73c4h

+dd 009a377a3h

+dd 0b0aabb91h

+dd 0a488c411h

+dd 09720e625h

+dd 095ad0788h

+dd 063b42151h

+dd 067f54164h

+dd 0b3d11056h

+dd 0c5cdb70fh

+dd 0b9b911f1h

+dd 0f7856b6eh

+dd 00619fdd9h

+dd 058fda33bh

+dd 0d230c6dfh

+dd 0cb4573cch

+dd 0162e98c6h

+dd 060b30550h

+dd 0f7f0aa1eh

+dd 0b89b461dh

+dd 05f5430e8h

+dd 0078504a4h

+dd 065f782e7h

+dd 04cb7da0bh

+dd 01d515182h

+dd 0d4f2aa9ah

+dd 06b8701b4h

+dd 0d30df7d7h

+dd 05eb2b0d3h

+dd 03fa93c5dh

+dd 0a87f0418h

+dd 0a531e26bh

+dd 03fbcf3c3h

+dd 05b8a5d9eh

+dd 0e19d4349h

+dd 07addd766h

+dd 08340b1e5h

+dd 02bb3318fh

+dd 0db3cf9b9h

+dd 0528c7ba3h

+dd 09a227f5bh

+dd 0a59d63d2h

+dd 088f16b15h

+dd 06dbc9c1dh

+dd 017aee22eh

+dd 0c188d922h

+dd 060c858d6h

+dd 0cb356df0h

+dd 0c03df402h

+dd 0658ba2e1h

+dd 02cecc8dah

+dd 0c93bfefeh

+dd 09050a3a7h

+dd 0bcffd144h

+dd 03a08c3d9h

+dd 0155b411ah

+dd 0a706a319h

+dd 07cb91dfbh

+dd 0d98c5c1dh

+dd 070836c2ah

+dd 017446d14h

+dd 01c5c9efbh

+dd 04296f9e0h

+dd 04f09aafeh

+dd 029ce98d3h

+dd 0638c6235h

+dd 0afba261bh

+dd 0ef18a429h

+dd 07a555891h

+dd 06bdd83e3h

+dd 0ed52e42eh

+dd 09ae62a55h

+dd 0e3daafc2h

+dd 0e5b8b588h

+dd 094dcc093h

+dd 0fd406d05h

+dd 052d4c858h

+dd 0ba80c899h

+dd 08fae0315h

+dd 0a939eb45h

+dd 0cec1300dh

+dd 09a19dfceh

+dd 0b451d79fh

+dd 087fe959ah

+dd 0e3d9c035h

+dd 0cfc43ab3h

+dd 0fba0d048h

+dd 0d2ccd229h

+dd 020ecc0deh

+dd 0ce1ca410h

+dd 035369f91h

+dd 0a3eda0c3h

+dd 079ee95f6h

+dd 02d81f19fh

+dd 0489490f1h

+dd 018ab2493h

+dd 04da60759h

+dd 05f886880h

+dd 09ff742cch

+dd 08c16db1ch

+dd 03bf3b964h

+dd 020ba05feh

+dd 007c5fe62h

+dd 07ae8e1f6h

+dd 0c4da43eeh

+dd 0a55793d7h

+dd 0e9534745h

+dd 0c71fd220h

+dd 0b85e7eb0h

+dd 00a50dd71h

+dd 04f30a00dh

+dd 00eb37ccah

+dd 068b92730h

+dd 0257377a2h

+dd 0ce36b377h

+dd 0a0f97191h

+dd 04f46778ah

+dd 07586a087h

+dd 03689a2ddh

+dd 0b1c2e268h

+dd 0a1f66547h

+dd 036d500b3h

+dd 0b92701e8h

+dd 00333ad10h

+dd 01bd0fde0h

+dd 0957ec2dfh

+dd 094011d6ah

+dd 0cb8733c6h

+dd 0e794942ah

+dd 0a4322ea5h

+dd 058f09d05h

+dd 04d07c048h

+dd 07ae69d1ah

+dd 0ecbbb7b9h

+dd 0c6bd6c87h

+dd 08e44a26ah

+dd 094556d61h

+dd 01356914ch

+dd 07b701555h

+dd 08e4a1cb5h

+dd 032cc9473h

+dd 056caddaah

+dd 019686077h

+dd 0c6aa78beh

+dd 01bc3f46ch

+dd 0a99e9a12h

+dd 0ab523664h

+dd 0e40e8dedh

+dd 0f2ad85f3h

+dd 01b3bdc80h

+dd 09728d847h

+dd 02c3c6d42h

+dd 02503a30eh

+dd 0831b4eb3h

+dd 0606d109fh

+dd 0bc0b9727h

+dd 062cd96d5h

+dd 0c535869bh

+dd 039dbf7cch

+dd 0dcb26e43h

+dd 01c52e92eh

+dd 07c36387bh

+dd 09e89842eh

+dd 096bdd1a8h

+dd 04a5e681ch

+dd 072b0fd8fh

+dd 03227d922h

+dd 051056df2h

+dd 0e416283ch

+dd 04988d4b1h

+dd 0223fcd9ah

+dd 09197d67bh

+dd 044185791h

+dd 09d0f27c5h

+dd 089b12821h

+dd 0b80f1321h

+dd 051399a26h

+dd 054031396h

+dd 00853aae7h

+dd 060be1497h

+dd 03f370f8ch

+dd 0f9a64062h

+dd 019101eb1h

+dd 0ff3f3dd1h

+dd 0e0f679c6h

+dd 0e0878cf1h

+dd 04ae632e0h

+dd 063497196h

+dd 052f12835h

+dd 06a06d1bbh

+dd 0c7dc8f19h

+dd 04de7438fh

+dd 08c5b4c2bh

+dd 0e12ddcfch

+dd 02b704a2dh

+dd 05e51f0a8h

+dd 03b50193eh

+dd 0662dfb63h

+dd 02cdbcaebh

+dd 0bd16de3dh

+dd 0d9bfe41fh

+dd 0b0c01e05h

+dd 0fa42dfb7h

+dd 01f664d33h

+dd 019b22387h

+dd 0c19fba57h

+dd 0cd1ab204h

+dd 014b86fd1h

+dd 0d92fc1e1h

+dd 0c51c9a55h

+dd 03af6a3fdh

+dd 065d71b37h

+dd 0ee21c6a6h

+dd 0218826d1h

+dd 093767f2bh

+dd 05227f4fah

+dd 0a4ef9c5ch

+dd 07f14c215h

+dd 02140be20h

+dd 0d3675dc7h

+dd 0863c8d17h

+dd 0131b5e1ch

+dd 02379e9d0h

+dd 0705d1db5h

+dd 020969d7dh

+dd 04c666527h

+dd 0324ac8b1h

+dd 0fb8d75d1h

+dd 0d1760defh

+dd 08daed20fh

+dd 021631b2eh

+dd 0d2144461h

+dd 04ab0dd20h

+dd 06f5761ach

+dd 04d56a05eh

+dd 06cc31079h

+dd 0feec8e5bh

+dd 0c0d19e42h

+dd 0486fa435h

+dd 0a5bea5edh

+dd 03fd4d476h

+dd 03d1213a6h

+dd 029871faah

+dd 02bb2af1bh

+dd 00b991756h

+dd 03fdfc8e0h

+dd 05f811551h

+dd 03e7ba378h

+dd 05cd47981h

+dd 0602d0f19h

+dd 0331eaa5ah

+dd 0d2a1efd3h

+dd 0b8799487h

+dd 0c4a639cfh

+dd 034d227bch

+dd 0d8b41911h

+dd 070b8480ah

+dd 05cbcb8d2h

+dd 0d15230f9h

+dd 0b0dfcd45h

+dd 059e5ebd0h

+dd 0ff5c7b60h

+dd 0a29f31fdh

+dd 023d476ech

+dd 0a9ebc222h

+dd 0f93b5929h

+dd 03ce30db7h

+dd 0d7223081h

+dd 0fd98a04bh

+dd 0ed68b53dh

+dd 0ffb58eaah

+dd 0fb3ab835h

+dd 08afeaf95h

+dd 0ef8d10d8h

+dd 01b91d21ch

+dd 0ff595967h

+dd 07784b31bh

+dd 01bd01985h

+dd 0825eefb5h

+dd 03ec55195h

+dd 027f36633h

+dd 0395361b3h

+dd 049243ddah

+dd 0ed9e4c4fh

+dd 0ca3ea1d4h

+dd 0e4d17b91h

+dd 0901f4283h

+dd 08d99904ah

+dd 051defbcah

+dd 0ade62eaah

+dd 0ccb0a1c8h

+dd 05156943ch

+dd 0c7b8f927h

+dd 03961caaeh

+dd 05b57a2f7h

+dd 036b94a9dh

+dd 0c1a70596h

+dd 0b47d2990h

+dd 0d4024430h

+dd 04246a6ach

+dd 0805769abh

+dd 05797c408h

+dd 0fc68c632h

+dd 006a59bddh

+dd 0f4ca38c2h

+dd 0eb4614d2h

+dd 04c86f03bh

+dd 0742cf7bbh

+dd 0305734c8h

+dd 0ae6c699ch

+dd 0a12f745fh

+dd 01d232638h

+dd 08768008ah

+dd 0cba669eeh

+dd 0a8da3ce8h

+dd 0c2b844bch

+dd 0c6caf4feh

+dd 01068cd68h

+dd 08f9b965fh

+dd 022a704bbh

+dd 043a7a7cdh

+dd 060a08fbeh

+dd 092739948h

+dd 08e9ed70fh

+dd 03b6b9e3dh

+dd 065de5335h

+dd 0fe0afd96h

+dd 065468fech

+dd 0f052daebh

+dd 0df622282h

+dd 0813ec052h

+dd 0535a5ad7h

+dd 07acb4f21h

+dd 01cefb66eh

+dd 0dca43fd6h

+dd 0e4cb1358h

+dd 0857782b8h

+dd 091cbc74bh

+dd 05f26a5eeh

+dd 0de022dcdh

+dd 0b0205274h

+dd 0bc2823a0h

+dd 07bad8862h

+dd 042485f77h

+dd 09abf96a8h

+dd 0bffc14a1h

+dd 09c5f1164h

+dd 0e5fbc4e7h

+dd 0875c9ac2h

+dd 04479ed1eh

+dd 0b777ace1h

+dd 07aeee541h

+dd 002d1abb7h

+dd 0856d46afh

+dd 065cd08c1h

+dd 00729de35h

+dd 07c6bf592h

+dd 0e63fad05h

+dd 0bc15ef2dh

+dd 0a34521a1h

+dd 0f5ce6c19h

+dd 02f739a88h

+dd 0ac5bcef4h

+dd 001991661h

+dd 0f9db46adh

+dd 061af7a00h

+dd 0b3df6b9fh

+dd 0b1fe9a18h

+dd 0cca2e89fh

+dd 08d97cb44h

+dd 0b174b20bh

+dd 015519ee3h

+dd 098b99b32h

+dd 0bbae8064h

+dd 01bbe3051h

+dd 08f3d3248h

+dd 090af0761h

+dd 0c8ba229eh

+dd 028cd1855h

+dd 0b3bd2dc5h

+dd 03af81baah

+dd 0fb5ef5d5h

+dd 028c6d286h

+dd 070b76ff5h

+dd 03ce4a01ah

+dd 09848e211h

+dd 0499b9debh

+dd 0384d7ee8h

+dd 0150d49e7h

+dd 0cb8246b6h

+dd 0cd52aaf2h

+dd 0ba4f5d39h

+dd 06c6edc9bh

+dd 0305f3c9eh

+dd 0a2fd4802h

+dd 00ef7c36dh

+dd 0cf15798fh

+dd 065b7bdc8h

+dd 097ce3c7dh

+dd 02bd11080h

+dd 0ba3219feh

+dd 0baf1b60bh

+dd 057a5e358h

+dd 0a0e5e990h

+dd 025db38a7h

+dd 092acd0d1h

+dd 0b90e81d3h

+dd 0a1c86cb9h

+dd 0f0d729c4h

+dd 07be30e13h

+dd 09bb86ddah

+dd 079345b79h

+dd 00938ab60h

+dd 045520936h

+dd 070cc541bh

+dd 046444860h

+dd 020a0fd34h

+dd 0880f58c1h

+dd 0b16bacefh

+dd 03da9cc96h

+dd 02cb1d79ch

+dd 0e4c70aa6h

+dd 0300cb2f9h

+dd 0c3980e61h

+dd 07b16d378h

+dd 0105db258h

+dd 00218b6f8h

+dd 0de30ed99h

+dd 06466f9b1h

+dd 0e172e0f2h

+dd 0c5848385h

+dd 094bcd45bh

+dd 02d96a5a4h

+dd 04c012511h

+dd 07ce15e0ch

+dd 0a765821ah

+dd 07bb2a7f2h

+dd 05311c1c5h

+dd 058503a29h

+dd 05c0ae315h

+dd 048d270d9h

+dd 008b966a6h

+dd 09d2c9923h

+dd 0a77b234bh

+dd 03fb028deh

+dd 011e8a7ech

+dd 05fb3e838h

+dd 0de5a2808h

+dd 0e9777469h

+dd 0a19fffb0h

+dd 071a9089fh

+dd 0a997b232h

+dd 0eca813ech

+dd 0c1cf984dh

+dd 00847823ch

+dd 08dfec356h

+dd 0180f0252h

+dd 03a857262h

+dd 08ec59e32h

+dd 01f1536b9h

+dd 099af7c0bh

+dd 04089f983h

+dd 06da4f8e2h

+dd 054f6023ch

+dd 0685f85e4h

+dd 022610e8bh

+dd 00ee01d58h

+dd 0633b1bf8h

+dd 0fd9eb41dh

+dd 0f5b970beh

+dd 08d0ecfa8h

+dd 07bfd79e0h

+dd 0d5072d36h

+dd 0dae1dca3h

+dd 098409d4eh

+dd 0cd62ef70h

+dd 0e4ca91e6h

+dd 0168ff583h

+dd 028c65342h

+dd 0bf839223h

+dd 092556d42h

+dd 0e24d1212h

+dd 09b3c576bh

+dd 0dd45fd1eh

+dd 095761693h

+dd 0684a6b8ch

+dd 0fdd27550h

+dd 0071f5657h

+dd 009829066h

+dd 0c6839206h

+dd 0306396d1h

+dd 0cb8de1f2h

+dd 0a1b16c88h

+dd 062975c0dh

+dd 0a25261a4h

+dd 09c237514h

+dd 0cee21db9h

+dd 0bdbf3624h

+dd 0595893eah

+dd 0ce700b36h

+dd 0ddbd468bh

+dd 0598ce55ch

+dd 02d4ad080h

+dd 02bbd1166h

+dd 00316e1a3h

+dd 00b312135h

+dd 07e1936d9h

+dd 08952b45bh

+dd 0ac613698h

+dd 027583ff5h

+dd 0eaad67c7h

+dd 00ec5830dh

+dd 0a1480343h

+dd 02a2d0456h

+dd 0d82d8ddeh

+dd 07c292287h

+dd 0b8ee9028h

+dd 098dda5f1h

+dd 0ab260b4ah

+dd 03cdb82c4h

+dd 0ea240bb9h

+dd 053978df2h

+dd 04ebfb1f4h

+dd 0ab8e7cb5h

+dd 0413ac243h

+dd 0a9becde4h

+dd 01a04fab3h

+dd 078d4b2e0h

+dd 0561be1a5h

+dd 0e29f38cch

+dd 0c17e6f14h

+dd 0dfb22f93h

+dd 0e1a75d93h

+dd 0e2e0c9c1h

+dd 05c67cd4bh

+dd 0986a7ee9h

+dd 0837d9e03h

+dd 0810180c7h

+dd 0a29b9f8ah

+dd 01e955f7fh

+dd 0a44ce90eh

+dd 084449cf3h

+dd 01256a20dh

+dd 03ce1f12ch

+dd 0000ef0c1h

+dd 0c582068ah

+dd 01f3412ach

+dd 019cb431dh

+dd 01af9b245h

+dd 06678846dh

+dd 0d4b9cb71h

+dd 07ce15eb3h

+dd 094e94c80h

+dd 04beeece1h

+dd 0f5fbbbfch

+dd 076f7f267h

+dd 0d3369aa6h

+dd 0ac79dbb6h

+dd 03463d66bh

+dd 0f3012976h

+dd 09adf313dh

+dd 06300158ch

+dd 0b24e1064h

+dd 0059ed26bh

+dd 0d4fe44c9h

+dd 04c24c236h

+dd 0860f1481h

+dd 058a6bc6ah

+dd 08269c13bh

+dd 09b8bef19h

+dd 05d28cafeh

+dd 0b70c7548h

+dd 00c75c8f6h

+dd 011975486h

+dd 072876918h

+dd 0ab73b109h

+dd 076d70fdch

+dd 0045c2ef1h

+dd 0a1794d57h

+dd 0d5101ee2h

+dd 04a1219d6h

+dd 0eb17af3ah

+dd 07ad714f8h

+dd 0b8241e67h

+dd 0326f1f63h

+dd 01cde44fah

+dd 0ad8c9691h

+dd 08845e1ech

+dd 0081da30ch

+dd 06211315bh

+dd 0189faa0ah

+dd 09fd29da5h

+dd 02267df4bh

+dd 005352e6fh

+dd 0784902c8h

+dd 09c6608e0h

+dd 06d8b00bbh

+dd 00eceaba8h

+dd 0e1e4d20dh

+dd 0d7c12d07h

+dd 0f106081eh

+dd 067ed56e5h

+dd 0a96a154fh

+dd 072dfb1c7h

+dd 00ed50383h

+dd 006673217h

+dd 0bba3a9c2h

+dd 0f1f03bd1h

+dd 02289864ch

+dd 04a80a1b9h

+dd 08ae84367h

+dd 0ae2c2bb7h

+dd 09f0a9e27h

+dd 0f9373f2eh

+dd 045dfc1d7h

+dd 0a72ceb9ch

+dd 09dbde63ch

+dd 0f1921130h

+dd 0238a971ah

+dd 046e6152eh

+dd 0310d0919h

+dd 0bcc2825ah

+dd 0588b30a0h

+dd 09062e997h

+dd 0a08095ffh

+dd 08160231bh

+dd 06aa056ddh

+dd 040c37264h

+dd 0ada5a1deh

+dd 035f0f0d3h

+dd 00265bb39h

+dd 05ca45010h

+dd 0212c4d16h

+dd 0d813eb45h

+dd 0cda511b7h

+dd 0c2195f87h

+dd 02d0cfcf1h

+dd 02126a0e1h

+dd 0c6f146d9h

+dd 04cd4ed69h

+dd 0bfeb29edh

+dd 02dd53be2h

+dd 000feac8ah

+dd 0c6ba247ch

+dd 04b0c1281h

+dd 044aa8840h

+dd 05cdada77h

+dd 0c7c7cb49h

+dd 03fea4deah

+dd 0bcf7bd8eh

+dd 042778797h

+dd 08ae6008ah

+dd 047324185h

+dd 055b4b86fh

+dd 0fc876447h

+dd 03d247914h

+dd 098e432ceh

+dd 03ab28d48h

+dd 029fa9a29h

+dd 0681b5819h

+dd 0ad535f08h

+dd 090a4d76bh

+dd 012337372h

+dd 0e417d544h

+dd 0b64bd8b1h

+dd 0ca55c289h

+dd 0adbc6e06h

+dd 0c50a3700h

+dd 0a003af97h

+dd 073792ec6h

+dd 054ae4e71h

+dd 0cac482c8h

+dd 0e4b41b74h

+dd 05e5851e9h

+dd 0921c467bh

+dd 0d461577ch

+dd 03c760f65h

+dd 0bea8ea44h

+dd 0c968b756h

+dd 0319ab616h

+dd 025543f34h

+dd 06f438fcbh

+dd 01ac69c86h

+dd 0a6fea958h

+dd 072e65c38h

+dd 0f7656bb9h

+dd 009fd0cd1h

+dd 0e2a0d007h

+dd 04cf075efh

+dd 01b8c07a1h

+dd 0a984258ch

+dd 00027b4f5h

+dd 0f893ddfeh

+dd 0badd1665h

+dd 0cad04213h

+dd 03c623d4bh

+dd 054a93b52h

+dd 0e16a12eeh

+dd 03b74136fh

+dd 0526880dah

+dd 05ac9683ah

+dd 07f55d4cdh

+dd 02cd8ac57h

+dd 0b6799470h

+dd 0cec50f7bh

+dd 0e65ff9a4h

+dd 07503e32eh

+dd 053945a48h

+dd 01ef2b71bh

+dd 0be4d4500h

+dd 07f068916h

+dd 02df64914h

+dd 09356ef5ch

+dd 01518e44ch

+dd 0ddeb6f3bh

+dd 07c6d6da1h

+dd 070bc83c6h

+dd 08c022dabh

+dd 0495e8f91h

+dd 0d2370304h

+dd 00faae8deh

+dd 0ba493a92h

+dd 01f017aebh

+dd 0098f007eh

+dd 051a9f615h

+dd 077b9cbceh

+dd 04368cadah

+dd 0c856dfach

+dd 0f81943f8h

+dd 08091f285h

+dd 06bc46aeah

+dd 0f8bfb45dh

+dd 052315829h

+dd 0703739ach

+dd 0d8263bc3h

+dd 02b2cc2deh

+dd 0035f1c04h

+dd 0501aa775h

+dd 0675b6e9dh

+dd 0aa01bfaeh

+dd 007600006h

+dd 05b3dfd47h

+dd 0923e9c2eh

+dd 0cf460cf5h

+dd 05c8a7649h

+dd 08edcabe8h

+dd 0fa88ad4dh

+dd 01efd3ce2h

+dd 06bcd1f24h

+dd 05fa7d29ah

+dd 0f52c4d0ch

+dd 0d883b596h

+dd 0d3c24cb8h

+dd 0abbf5065h

+dd 017b09c59h

+dd 08339ac02h

+dd 03da97c72h

+dd 0c4ab9ee0h

+dd 0e95f2334h

+dd 0ffee471dh

+dd 052e605b7h

+dd 085e492b7h

+dd 09576c79dh

+dd 0fea1cc79h

+dd 0024cc43ah

+dd 05d4e2557h

+dd 015f28392h

+dd 05b4525a7h

+dd 0e786c097h

+dd 039ee9974h

+dd 060aa2e60h

+dd 03290185bh

+dd 035f6f84eh

+dd 0505f18e2h

+dd 04fea6ee1h

+dd 04f82b78ah

+dd 0dc2d0f97h

+dd 055f24ba5h

+dd 0a40c846ch

+dd 06019f72bh

+dd 012b1afadh

+dd 0aafe6730h

+dd 0b9579ee7h

+dd 0f43d8a70h

+dd 02acae3a5h

+dd 02623ee3ch

+dd 0c7cc16b1h

+dd 04d345471h

+dd 030899a27h

+dd 0707f849eh

+dd 00be7d215h

+dd 0d74b37d6h

+dd 03f4be63eh

+dd 0ede61339h

+dd 07932eeb0h

+dd 045ddc3ceh

+dd 093d0b155h

+dd 073fd22b0h

+dd 0b810d2b4h

+dd 0d1c39cb2h

+dd 0207b4560h

+dd 082c7e5ffh

+dd 04a1e868dh

+dd 0d02f5151h

+dd 0b079310ch

+dd 0ebb9167fh

+dd 0acf6f7fah

+dd 0091e7363h

+dd 0289de9b4h

+dd 0a9b02d57h

+dd 04fe8ec21h

+dd 0601ef2ffh

+dd 01042bc57h

+dd 03c9b513dh

+dd 041fe6c69h

+dd 06981ce10h

+dd 04b0fdc84h

+dd 087573244h

+dd 0fe41ccc5h

+dd 0a0616e02h

+dd 058483b7eh

+dd 03555e485h

+dd 0b2a65d49h

+dd 0030f7050h

+dd 01e0780beh

+dd 0812449ebh

+dd 08e8dc161h

+dd 0b6d762c3h

+dd 0e4bf453dh

+dd 08709481ch

+dd 0e6937955h

+dd 033264505h

+dd 088fee019h

+dd 0f123eccfh

+dd 0b99738d4h

+dd 074f6af44h

+dd 00e356f54h

+dd 00f5642fbh

+dd 0f4b68d7bh

+dd 0be170d0bh

+dd 0d9978f2dh

+dd 0aee0aad7h

+dd 08d8bd670h

+dd 0711cd1e7h

+dd 0b8a02e79h

+dd 040cb7351h

+dd 00c2acdf4h

+dd 01ffa6f9bh

+dd 0d202af84h

+dd 0ed811a19h

+dd 0e71d14a9h

+dd 0bfd51d85h

+dd 00bdbe979h

+dd 0422b480eh

+dd 05afecc96h

+dd 0a02fe37ah

+dd 0fbd7c0c8h

+dd 0875d7b28h

+dd 0e27bf55ah

+dd 0db2776f3h

+dd 08fd3c4a5h

+dd 02147c4bfh

+dd 005683a1ch

+dd 0c81340fbh

+dd 02d0a7eech

+dd 01d0b5801h

+dd 013a476f2h

+dd 0d7e52b8ch

+dd 0c23b07eah

+dd 0f74bb074h

+dd 08f0a9addh

+dd 0f648fec8h

+dd 09dddca19h

+dd 015cd41c5h

+dd 0871bf5c0h

+dd 0031aa454h

+dd 076f27e72h

+dd 06b6c6ab0h

+dd 0537964d5h

+dd 041ee1c0bh

+dd 0ae350a83h

+dd 0ddee8f9ch

+dd 0a12cc9c3h

+dd 040b9047eh

+dd 01e33b879h

+dd 09809be98h

+dd 0a7d0c746h

+dd 049b31acdh

+dd 0d3956716h

+dd 0e6e9f031h

+dd 00bdb98e0h

+dd 06e911484h

+dd 064c77d76h

+dd 00263f10ah

+dd 03bdfd2ceh

+dd 0b6eeb8f7h

+dd 09edbd5a7h

+dd 06e22bba5h

+dd 060cf327eh

+dd 0d4cb74c3h

+dd 0cdfa78f8h

+dd 0fc9c8669h

+dd 0c19eb296h

+dd 05e326f9bh

+dd 0a683d45fh

+dd 0e0535210h

+dd 04b970f1ah

+dd 0ecd57a99h

+dd 0fda96b16h

+dd 09a89a380h

+dd 0c9f01dfah

+dd 021b17cd6h

+dd 0ef091ceeh

+dd 0e6ce8bf2h

+dd 08dfd8ef7h

+dd 08bb7bc1bh

+dd 0c7315f09h

+dd 016587ddch

+dd 0884684e1h

+dd 0f0672d1bh

+dd 0292c63c3h

+dd 0ac764328h

+dd 09fc0629ah

+dd 02f47c403h

+dd 022baa542h

+dd 087a6c13bh

+dd 0acb54635h

+dd 021dca1ffh

+dd 031d2ccc8h

+dd 0015fad78h

+dd 0da0e7457h

+dd 067c10356h

+dd 0e8750059h

+dd 01db7db73h

+dd 068c046c7h

+dd 0b66aff8fh

+dd 03c70a09fh

+dd 00acb7d87h

+dd 03b544fbfh

+dd 0d4fc42b9h

+dd 07e2dab61h

+dd 05b3e4b82h

+dd 0cf777a72h

+dd 0a320c1e5h

+dd 08b24e695h

+dd 0fc1c9620h

+dd 06b3c7339h

+dd 0fa0ff1a6h

+dd 073400677h

+dd 02fddb759h

+dd 0020d8f66h

+dd 0d2da32ech

+dd 0318ecabch

+dd 0bf4f4dfdh

+dd 0f92fce84h

+dd 0c72acd71h

+dd 004cfe78dh

+dd 0b1c548ceh

+dd 0222eb537h

+dd 040417dbfh

+dd 05e73a266h

+dd 0e431f0a1h

+dd 0917c36a3h

+dd 0c131c8ceh

+dd 0eebc32c7h

+dd 019842da8h

+dd 0ba14cde0h

+dd 0e13adee5h

+dd 0c876ca85h

+dd 0fa58a746h

+dd 0c995244bh

+dd 0474aab29h

+dd 07ea50348h

+dd 0a4da32e4h

+dd 015afb2d7h

+dd 057f6efadh

+dd 0295cdf6eh

+dd 067f8acb5h

+dd 0186244f4h

+dd 0adb26a2fh

+dd 09a4385a9h

+dd 0815b4222h

+dd 030b559feh

+dd 0dba6575fh

+dd 0870413eeh

+dd 0d7178b31h

+dd 08a159193h

+dd 09bd1a067h

+dd 0865835f5h

+dd 0fe668628h

+dd 015a3f55bh

+dd 0b1c85f91h

+dd 03aab4d32h

+dd 0fc0e9088h

+dd 038d6289dh

+dd 052e7e426h

+dd 0fb03f3afh

+dd 0b653da7ch

+dd 0266335e2h

+dd 0a3619fc2h

+dd 08430fc92h

+dd 0332135f7h

+dd 06d26c4e7h

+dd 001d73c97h

+dd 08919ea2bh

+dd 05a725ebch

+dd 0487117abh

+dd 0d0e63eb6h

+dd 0d4834961h

+dd 02c75675eh

+dd 04a3cf23eh

+dd 071c0d92bh

+dd 00c8b7933h

+dd 0ca7e5d14h

+dd 042168d92h

+dd 0de7e0515h

+dd 04634c5efh

+dd 0f29b0599h

+dd 05c6fda1dh

+dd 0784d0e12h

+dd 0f3b60c1ch

+dd 070b0a178h

+dd 0b5288161h

+dd 0e939e186h

+dd 0f032b0a7h

+dd 029e7d9d5h

+dd 0b0ebbc12h

+dd 02ffb435ah

+dd 032387241h

+dd 0dad30c82h

+dd 098548d66h

+dd 04024eaffh

+dd 08eda967ch

+dd 046808b63h

+dd 01619aa61h

+dd 0663f9506h

+dd 0853f1de6h

+dd 09b850f28h

+dd 057cc0811h

+dd 0e11f1c3dh

+dd 06e38660fh

+dd 0e6412783h

+dd 0aa060f2dh

+dd 03c48946dh

+dd 09eadbaedh

+dd 048582c6ah

+dd 0303c4a07h

+dd 005f9fd60h

+dd 048095e0bh

+dd 06816d6b8h

+dd 03a2a5cc3h

+dd 01ccf7ce1h

+dd 0261ebe17h

+dd 04e879f16h

+dd 07a1fab12h

+dd 0fc90ffe5h

+dd 0746a2583h

+dd 02a9e2b5eh

+dd 013f1a64eh

+dd 0351744b8h

+dd 0991493d1h

+dd 068733b39h

+dd 08a77189eh

+dd 06ad7b236h

+dd 002bd5c18h

+dd 026885b34h

+dd 032f399d0h

+dd 0eacac9c0h

+dd 099aeb149h

+dd 0df34dd96h

+dd 0f566a244h

+dd 010f0ab2eh

+dd 06d035733h

+dd 0d6cc42e1h

+dd 029d8aaadh

+dd 04ca380b9h

+dd 0e3d33f21h

+dd 07a23514bh

+dd 05a7a03a6h

+dd 0ee6eb623h

+dd 00b2782d3h

+dd 0af94ba2fh

+dd 040a39b1ah

+dd 09d16a9d8h

+dd 073399d69h

+dd 08156c5fdh

+dd 039db85dah

+dd 07ae9e597h

+dd 080fff0e0h

+dd 0bf57ca54h

+dd 0d911881bh

+dd 0c506ea46h

+dd 059b98f27h

+dd 0160afe17h

+dd 04a0b8f91h

+dd 081f01084h

+dd 0e6e26a86h

+dd 0d2fa25f7h

+dd 03fec581eh

+dd 0ab374132h

+dd 038a2976bh

+dd 0329250f4h

+dd 0350767c7h

+dd 0dfb92cd4h

+dd 04b1e793fh

+dd 041d6ea57h

+dd 045410ea9h

+dd 05258aee3h

+dd 083a6ed10h

+dd 0ae09625fh

+dd 0700a56b1h

+dd 05f507790h

+dd 0114a6f2bh

+dd 049a9539ch

+dd 0d382a70dh

+dd 065c0852fh

+dd 0efef9ec5h

+dd 0ad1a0269h

+dd 050b967a8h

+dd 0cb88469ch

+dd 0e9d57e52h

+dd 02a1bda6ch

+dd 0fd0a1308h

+dd 002281c5bh

+dd 023c7c7eah

+dd 0313dc498h

+dd 0ed322da9h

+dd 0e2df71e6h

+dd 09963fc35h

+dd 0124ffc55h

+dd 07ce3e6abh

+dd 06b58280fh

+dd 05c05a425h

+dd 0f904f7dfh

+dd 09d83c3a6h

+dd 0bf8fa3a8h

+dd 03ea7addch

+dd 0f097fffdh

+dd 0e27460ech

+dd 07a36bc8dh

+dd 095b3b178h

+dd 0aa91cfb9h

+dd 0a272b688h

+dd 0bb9a0a35h

+dd 0a0963a46h

+dd 0eba4a5b1h

+dd 0e58c503ah

+dd 0b0d6d436h

+dd 0c27092f0h

+dd 0bd624965h

+dd 00e8d315dh

+dd 046ebbc2ah

+dd 015a8e45ah

+dd 00a6884fah

+dd 0c1799133h

+dd 0b049caech

+dd 006e48e78h

+dd 00807c604h

+dd 050d39075h

+dd 0fadd8debh

+dd 0a5d7be0ch

+dd 04d95beaah

+dd 0fa98515fh

+dd 0a0ed295ah

+dd 0e2a817cdh

+dd 094d007eah

+dd 096f4a315h

+dd 064fd4946h

+dd 0dd368df5h

+dd 00fac38feh

+dd 07cbc7740h

+dd 08aba2192h

+dd 02869fe0eh

+dd 0acfdf6ffh

+dd 06bc7cb95h

+dd 064a76f68h

+dd 0a65ad7cdh

+dd 01ccbc024h

+dd 00796d26fh

+dd 06f23514dh

+dd 0628f21e4h

+dd 05b7fa8e5h

+dd 0e5eb98e9h

+dd 0cd108d87h

+dd 019d44b4bh

+dd 02d0e78abh

+dd 0c7375eeeh

+dd 0a3d37236h

+dd 066121c71h

+dd 0ebe67c1ah

+dd 0f21f9b46h

+dd 05fd11910h

+dd 0e2a391ceh

+dd 09308745ah

+dd 0a199e152h

+dd 0cfb2627ch

+dd 0048cafa6h

+dd 010716a2bh

+dd 0ec45cacbh

+dd 0f04175a6h

+dd 0c8aba511h

+dd 0edb1d2f8h

+dd 0b7893787h

+dd 0b36d4674h

+dd 003de788bh

+dd 0018b6dceh

+dd 087b206e2h

+dd 0bb32293ch

+dd 08b8f4969h

+dd 0ef950129h

+dd 008e41e91h

+dd 0678079f6h

+dd 0f7788393h

+dd 04af69bd6h

+dd 0058439dch

+dd 04262c427h

+dd 091c1cc52h

+dd 0c78b94e7h

+dd 0035e4d53h

+dd 0200f9d3fh

+dd 04e99d1b8h

+dd 0af46040dh

+dd 0c445ee45h

+dd 0d9376eadh

+dd 0939d733fh

+dd 0fe3b78ech

+dd 099989858h

+dd 0c9275809h

+dd 04abb6748h

+dd 0dbdc6f39h

+dd 05f58176ch

+dd 0a4c8015ah

+dd 04a5f0de2h

+dd 0cdc89afeh

+dd 0909797f6h

+dd 0ee7918edh

+dd 00cb90d33h

+dd 00b4ce27ch

+dd 0478cf5e5h

+dd 0d553793eh

+dd 036a2a1d4h

+dd 07c872387h

+dd 015e19cech

+dd 00707d58bh

+dd 03a7f6c56h

+dd 0e8a33460h

+dd 07ac15b12h

+dd 0056be370h

+dd 08b86efd8h

+dd 0f276e266h

+dd 01764fa31h

+dd 056ec2158h

+dd 082026680h

+dd 0181fb30fh

+dd 0ab044581h

+dd 073a7dfa1h

+dd 016b22b0eh

+dd 0ca6bafc0h

+dd 0ced5f0f7h

+dd 04760e6b7h

+dd 0d56a9b8eh

+dd 093a84d87h

+dd 089b36681h

+dd 068644e92h

+dd 0e658c6a1h

+dd 009f89cc7h

+dd 0a50dd009h

+dd 0dafd81e6h

+dd 053671177h

+dd 027f03e60h

+dd 0ec8caeb6h

+dd 0c3f059f8h

+dd 0b0bfbc06h

+dd 04fd32176h

+dd 0c51d94efh

+dd 0b0e7cdc4h

+dd 02df06175h

+dd 0720048ebh

+dd 0ca17e0a0h

+dd 0b378c5d6h

+dd 0f4c6b256h

+dd 009a27953h

+dd 0ecadbc95h

+dd 00aee6012h

+dd 0f112cd0dh

+dd 02a61f6ach

+dd 0624752d0h

+dd 0fb7a549ah

+dd 0b0ef4ce9h

+dd 033c07eb6h

+dd 0e6e3db92h

+dd 023a5b016h

+dd 085af96e3h

+dd 08d0ed82eh

+dd 0724ed4f8h

+dd 08590a1bfh

+dd 0cb09c8a1h

+dd 078da1438h

+dd 015b3f6c6h

+dd 0641a4611h

+dd 09c437815h

+dd 037ed40bbh

+dd 080f08633h

+dd 000f7b831h

+dd 0492c144ah

+dd 05fcf6097h

+dd 0894ffa73h

+dd 04b5614ebh

+dd 0249f6384h

+dd 0f1ce3f3dh

+dd 03bd3f9a8h

+dd 0dda84ad7h

+dd 052ccb93dh

+dd 012f8657eh

+dd 0b2284090h

+dd 08c6b6d1ah

+dd 02a373e48h

+dd 0a5cf9784h

+dd 011fe3adch

+dd 03f59218fh

+dd 0f85a888fh

+dd 001decd9fh

+dd 072fa6200h

+dd 029353e33h

+dd 071721105h

+dd 00cd1003ah

+dd 010813758h

+dd 092f70ba7h

+dd 0f78b0f51h

+dd 0c305ef3dh

+dd 0a2170d2dh

+dd 0613a8e83h

+dd 014419052h

+dd 0a67a9ebdh

+dd 0b9e5799eh

+dd 051a256d6h

+dd 0823d372fh

+dd 00c24b5a3h

+dd 05017c452h

+dd 085c4a867h

+dd 0d0d6956fh

+dd 05659c1e4h

+dd 0d52b0549h

+dd 00815b9bdh

+dd 0bd378152h

+dd 0ee901aech

+dd 0695d9965h

+dd 094932ca8h

+dd 04174d764h

+dd 0f3555ee2h

+dd 02351dd40h

+dd 071d2c7b9h

+dd 029c5df42h

+dd 02d038a07h

+dd 0cec46b14h

+dd 034f3df60h

+dd 0fbde7e86h

+dd 071ab91a4h

+dd 03f45e824h

+dd 048f569e0h

+dd 014338548h

+dd 04db4d33ch

+dd 0071370a9h

+dd 033660224h

+dd 071337927h

+dd 0c07eaa10h

+dd 053200c19h

+dd 0effc86c9h

+dd 07f4a852ch

+dd 0089cbb2bh

+dd 0cf84a22bh

+dd 03a334f7dh

+dd 0ab8246f6h

+dd 0c12894e0h

+dd 0c5616a48h

+dd 0f2be1f40h

+dd 028b75056h

+dd 07837407bh

+dd 0ced9342eh

+dd 068e9592ch

+dd 0e1cfde94h

+dd 01399ffa5h

+dd 006610e43h

+dd 07a9bbb94h

+dd 0a1f8a4e4h

+dd 054cb573ch

+dd 088832eddh

+dd 0d5e521dbh

+dd 0277dc2f8h

+dd 0a05bcce5h

+dd 044a5309ah

+dd 0b66c6397h

+dd 0e0d51715h

+dd 0516b1bbeh

+dd 0d1526f56h

+dd 05c472e7bh

+dd 09504ed68h

+dd 011dcfecah

+dd 045d76d33h

+dd 0e66b28d6h

+dd 0b3273af6h

+dd 0f6effa30h

+dd 0f7b4c3ddh

+dd 017df6ac4h

+dd 0acfae661h

+dd 0e04b26e1h

+dd 09e8f7f2dh

+dd 05ed82acah

+dd 077c8d62ch

+dd 019c67f31h

+dd 06e757ac6h

+dd 07dd4ef57h

+dd 0346c5e02h

+dd 0b4a15c36h

+dd 0fa41b889h

+dd 019d886f8h

+dd 098a80581h

+dd 0d5b58ba6h

+dd 0718ae2feh

+dd 0a333caa9h

+dd 0daac9ba6h

+dd 0c76da8a1h

+dd 03d708568h

+dd 0fa5d7f82h

+dd 0d5357c48h

+dd 0033106f3h

+dd 0a04a8667h

+dd 0a83443e2h

+dd 0dce1e348h

+dd 0114f92c9h

+dd 0e595de18h

+dd 0ecff87f6h

+dd 05e7e6c6ah

+dd 07a01e087h

+dd 0a92c0d2eh

+dd 03a980b46h

+dd 0852ea62fh

+dd 0940eaf8fh

+dd 03c47e6e9h

+dd 071d96ba2h

+dd 0401ab395h

+dd 0bbda52bch

+dd 04cc133c3h

+dd 0d2bae1abh

+dd 0a911b282h

+dd 0be5c126ch

+dd 0baa77a9dh

+dd 025e47433h

+dd 0fc8bfef1h

+dd 076096583h

+dd 05b76c421h

+dd 01886baeeh

+dd 01ebc6364h

+dd 08cd83fbdh

+dd 01f2c82c8h

+dd 05313205dh

+dd 04c2f81d6h

+dd 05317f23bh

+dd 07789f39dh

+dd 052530d13h

+dd 07aaf8cb4h

+dd 06c661e39h

+dd 028960017h

+dd 0c99bf511h

+dd 074616373h

+dd 06b925722h

+dd 04ab75355h

+dd 01073a21dh

+dd 05a1a1a9dh

+dd 0cf4dcefdh

+dd 031b7e766h

+dd 05c1ffed4h

+dd 0f3fef658h

+dd 07e5d82a1h

+dd 00a368089h

+dd 0dd309e2fh

+dd 0814caaf5h

+dd 04155032fh

+dd 03df2db51h

+dd 0d6cc1bf5h

+dd 00da3bceeh

+dd 047cfe28eh

+dd 0c23125f5h

+dd 0b7323258h

+dd 0cace055dh

+dd 01ade9d64h

+dd 0a3b1cda5h

+dd 0d521a159h

+dd 025f2c53fh

+dd 0c07f853fh

+dd 013494c9bh

+dd 099c2b2e8h

+dd 0dc747eb3h

+dd 0d526c2afh

+dd 088ea7613h

+dd 09a413063h

+dd 03df0c6f9h

+dd 03261f06dh

+dd 0a87396c6h

+dd 0f86b83afh

+dd 0446204d1h

+dd 09e375d39h

+dd 0eeb8d536h

+dd 013d01c19h

+dd 0834a951fh

+dd 09e94ee51h

+dd 0c21b2f23h

+dd 0b5d6cdffh

+dd 0ad9f2d8eh

+dd 05131000dh

+dd 05ef1fd57h

+dd 0a1038df5h

+dd 02fd2cfe1h

+dd 0d72363ach

+dd 02fe4fccdh

+dd 014ca5551h

+dd 092af610ah

+dd 01da80772h

+dd 02acf36f9h

+dd 0b81b140fh

+dd 06df9d2c2h

+dd 03df85a36h

+dd 0b00e2979h

+dd 0f2371eddh

+dd 0ac89ee90h

+dd 05e0f0315h

+dd 099cbb755h

+dd 0d417fd62h

+dd 0c4b84454h

+dd 077047f3ah

+dd 0a81a60ceh

+dd 07d9a38dfh

+dd 07d492318h

+dd 07a0c5cebh

+dd 0f2d6e7bdh

+dd 0cdfaca25h

+dd 0efd3af49h

+dd 0a491cbd4h

+dd 098321ed1h

+dd 00c9b3800h

+dd 0c6b2122eh

+dd 06f0a88dbh

+dd 09266f7c8h

+dd 062d9ce10h

+dd 09db5d082h

+dd 000081700h

+dd 0d8baf2c4h

+dd 09132ab18h

+dd 0aa7a7acfh

+dd 056d60c38h

+dd 04964b493h

+dd 0a9d618e4h

+dd 057afb5a0h

+dd 0305e8ed5h

+dd 0c59a0830h

+dd 0407d1134h

+dd 0225cb703h

+dd 0ded58e57h

+dd 0b5578acah

+dd 080811833h

+dd 0e304dc6ah

+dd 05b6481edh

+dd 0327d87e2h

+dd 03d3ee900h

+dd 0c2bff5e5h

+dd 076f2d8c3h

+dd 05d1e390ch

+dd 037084c8dh

+dd 0f09c489bh

+dd 083569699h

+dd 0905835c8h

+dd 00529bdadh

+dd 0577890b2h

+dd 04af83a67h

+dd 0ee9e8684h

+dd 09f640606h

+dd 0ccd0e0b9h

+dd 0d2f8ea36h

+dd 0fbdb9a9dh

+dd 05aa017d4h

+dd 03c44b80dh

+dd 06266fdcfh

+dd 01da2152dh

+dd 04d82f675h

+dd 082d7484eh

+dd 04673a53ah

+dd 06467721fh

+dd 0a48d2ae2h

+dd 05afe9807h

+dd 0a18cac80h

+dd 0248d1016h

+dd 0d73595bbh

+dd 0f810fd15h

+dd 0d5f26bf2h

+dd 02ef1c8a5h

+dd 0ed9c3dbbh

+dd 0073d1ecfh

+dd 0236a16deh

+dd 04f4d1a11h

+dd 059544e62h

+dd 03d28ca78h

+dd 05e1642e8h

+dd 07f491a1eh

+dd 0bb0df095h

+dd 0c2eb1d64h

+dd 0316c8a1bh

+dd 02257400fh

+dd 05897c369h

+dd 007f3d634h

+dd 0a5fef6c5h

+dd 0b1052571h

+dd 06c017537h

+dd 08c79419bh

+dd 040bfbb7eh

+dd 0ebcf8b72h

+dd 0c76f61f5h

+dd 0b5b3801dh

+dd 0c1f4a316h

+dd 0afa8fd07h

+dd 04fa87b9ah

+dd 0d70cb27fh

+dd 010d7af67h

+dd 089a13427h

+dd 09d76e1f9h

+dd 0e7571617h

+dd 0a17198d3h

+dd 0f1f52885h

+dd 09d3f58d1h

+dd 021a15d56h

+dd 0a4cd8bb8h

+dd 02e4088cfh

+dd 022d35f40h

+dd 06e060beeh

+dd 0ba9f4277h

+dd 0c60092eeh

+dd 0c1ec1128h

+dd 07daa9dc2h

+dd 0735ea257h

+dd 099a2793ah

+dd 06e4caa03h

+dd 00afc7516h

+dd 08d731d7bh

+dd 0438d6509h

+dd 01256eceah

+dd 068a6cafah

+dd 061e2ed23h

+dd 0e217d32eh

+dd 05f83178bh

+dd 018657ce6h

+dd 063b0f3a4h

+dd 0efc6e4adh

+dd 0f7826774h

+dd 0220215c1h

+dd 0754208e3h

+dd 06706c545h

+dd 027b22eb5h

+dd 0d9f6de83h

+dd 0cb49a33eh

+dd 0b1d67db2h

+dd 06e11f4b4h

+dd 008a463a4h

+dd 0a5e6a606h

+dd 01b2e3300h

+dd 01fd7cf96h

+dd 002dca87dh

+dd 0c8218aa9h

+dd 0958f6a9fh

+dd 0d619a0aeh

+dd 022e48c02h

+dd 00191cfb5h

+dd 00a7e1c23h

+dd 0e2184e93h

+dd 034e03each

+dd 0f95041dah

+dd 066c89645h

+dd 03b9392a6h

+dd 0d7f0fa9eh

+dd 06341760bh

+dd 0a8b61c49h

+dd 08b6e3505h

+dd 010a17364h

+dd 05860eba6h

+dd 0f2421cffh

+dd 09ae44e97h

+dd 0b056c327h

+dd 0584e25efh

+dd 06b2a671bh

+dd 061b55bb2h

+dd 0a603ee3ch

+dd 04df548dbh

+dd 0d701e1feh

+dd 052c7c088h

+dd 0f7ba91b0h

+dd 0c6d30231h

+dd 0d5a6b62dh

+dd 02140448dh

+dd 08ee47c8eh

+dd 08b9165b2h

+dd 09811318ah

+dd 0620fc499h

+dd 0412ef176h

+dd 0e399dd08h

+dd 0e95b3de3h

+dd 0539ac9ceh

+dd 0a5420554h

+dd 02ba5a888h

+dd 0ffe281a3h

+dd 0b0ff6c9ch

+dd 03b198f27h

+dd 085a0c979h

+dd 0178ebfa5h

+dd 0eb8d3116h

+dd 0c46cbd66h

+dd 05fce5b4bh

+dd 09ea7a6b8h

+dd 078b599e0h

+dd 07a125057h

+dd 0fd2a133ch

+dd 088a74223h

+dd 02be4f5a5h

+dd 02fc4c4f1h

+dd 0d791bf3eh

+dd 0388b86f3h

+dd 06de6e130h

+dd 0db559fa1h

+dd 0318f51e7h

+dd 0d0aad861h

+dd 0de3daad8h

+dd 04ab3b97dh

+dd 0b4a149b2h

+dd 08cd7cd6fh

+dd 085f68c23h

+dd 05b82608ch

+dd 0be8d404eh

+dd 0fc0f44f0h

+dd 045bfd074h

+dd 009c528f2h

+dd 06676c89ch

+dd 02804aee3h

+dd 0e7d34a55h

+dd 02a471b89h

+dd 04846549fh

+dd 0396247ceh

+dd 09a37329fh

+dd 0cad82c68h

+dd 036ff776ah

+dd 0a63d1e76h

+dd 0cb181602h

+dd 0666d377ah

+dd 06968e76bh

+dd 0a6ef4d8fh

+dd 0bdbcb4cfh

+dd 057a12c28h

+dd 0d99e3fdeh

+dd 09205472bh

+dd 054e99a0bh

+dd 0dc1cb1d5h

+dd 0caa898eah

+dd 030d63d25h

+dd 029eb30f9h

+dd 0455e8731h

+dd 0f6c7a5aah

+dd 0afb44806h

+dd 06bc61755h

+dd 0b6d64802h

+dd 0c3da206ah

+dd 09f5acee8h

+dd 08ad6844dh

+dd 0f67c73c7h

+dd 03fa9e39ah

+dd 049f34c04h

+dd 06b4dd2b6h

+dd 0d65f68e4h

+dd 032e642a7h

+dd 0a6fe4e80h

+dd 0fa4c6f5fh

+dd 020530e23h

+dd 033fb1112h

+dd 034e7534dh

+dd 0a9390d3ah

+dd 06316c3e5h

+dd 0334d146eh

+dd 055d4316bh

+dd 04ea0e743h

+dd 09709b4a4h

+dd 0b63eb890h

+dd 0a2ea7830h

+dd 039f116c8h

+dd 010829464h

+dd 0f4eaef23h

+dd 048fef484h

+dd 02f2d7bd3h

+dd 033dd324eh

+dd 030ca9193h

+dd 0bc92d3edh

+dd 0f1ae9a32h

+dd 0f042ab40h

+dd 0a7d9bf5ah

+dd 08a84ea6dh

+dd 07b2fd4e4h

+dd 0b5a439e0h

+dd 0f7645d85h

+dd 0825f0a30h

+dd 05dd16d18h

+dd 051be7575h

+dd 0406ca7c1h

+dd 0b06c0de4h

+dd 0fb0de821h

+dd 02367a19ah

+dd 017b49afbh

+dd 081a589e0h

+dd 0e1446cb8h

+dd 056130d19h

+dd 06dd84c7dh

+dd 04a8a7fe8h

+dd 08136bf22h

+dd 089a7c73fh

+dd 023c89e80h

+dd 0db758fd7h

+dd 0b7279bafh

+dd 0e58cd674h

+dd 03949a1d8h

+dd 06cc91c97h

+dd 0a6f4439ah

+dd 01518b643h

+dd 015e5ea47h

+dd 09b6f6a39h

+dd 03d70d4c0h

+dd 06696b125h

+dd 05113d7beh

+dd 0a38f53f8h

+dd 0fca8271fh

+dd 0537d7927h

+dd 086ee6451h

+dd 031be2903h

+dd 05401c7c6h

+dd 0265f406ah

+dd 0e4b56827h

+dd 0f033680ah

+dd 08f0a95bdh

+dd 087a28dc2h

+dd 00929b291h

+dd 0817130e1h

+dd 0bd3bfba9h

+dd 0934793c2h

+dd 0b9eefe55h

+dd 0d47ba197h

+dd 0343f6412h

+dd 0e1acb525h

+dd 0f09e90fah

+dd 09917112dh

+dd 0fa62c74eh

+dd 06ba7627fh

+dd 03de4c55eh

+dd 03fa38604h

+dd 0175f99aah

+dd 0acd54d32h

+dd 0ff131d38h

+dd 07527b09dh

+dd 0071c137eh

+dd 0427a88a8h

+dd 02b9bd408h

+dd 0cab821b9h

+dd 052daae4dh

+dd 0ba40e37fh

+dd 0418dd00ch

+dd 0e30e40dch

+dd 0fd931755h

+dd 03e9f542eh

+dd 0ff4a960ah

+dd 0c4b17d01h

+dd 0870be803h

+dd 0f5e01395h

+dd 0d3b590b4h

+dd 0863b2ea0h

+dd 0829d53c6h

+dd 07cdbf0eah

+dd 072f171a2h

+dd 0a7f819ebh

+dd 003b1527ch

+dd 06990d9b5h

+dd 0d0c923e1h

+dd 01216a47ch

+dd 0f1c1c300h

+dd 0b0574fc0h

+dd 0c08615f3h

+dd 0c953a4deh

+dd 06336c830h

+dd 023742befh

+dd 0135bb944h

+dd 092c4bcb9h

+dd 0bb84b2d7h

+dd 06d3cfd90h

+dd 068bae358h

+dd 08b916324h

+dd 0c18ef4b1h

+dd 02702e717h

+dd 002ce1186h

+dd 0fab4401dh

+dd 018c39f61h

+dd 03eefcaf9h

+dd 0253081e0h

+dd 09bdae46ah

+dd 01396904dh

+dd 05dab6e7eh

+dd 0f0aafcb5h

+dd 0454fb77bh

+dd 04fd667b9h

+dd 009069587h

+dd 0f6260f4eh

+dd 01bdca454h

+dd 00c5f5fd6h

+dd 017a6da72h

+dd 0e7f4dd90h

+dd 023c3c39bh

+dd 022818632h

+dd 00be0478bh

+dd 0748359b8h

+dd 0f2dc9558h

+dd 0493535e7h

+dd 0d8e63f61h

+dd 05d73ad15h

+dd 050411364h

+dd 0d404c3d5h

+dd 06847e2c3h

+dd 095975ddeh

+dd 086209a1ah

+dd 02302563ah

+dd 0249def96h

+dd 04abbd9beh

+dd 043bfb0dah

+dd 08b896080h

+dd 0b0271153h

+dd 07c6901cah

+dd 01f044821h

+dd 07f0d5e25h

+dd 057f0bde8h

+dd 0d6ded8a2h

+dd 00e04ea94h

+dd 0d4801d8bh

+dd 01fb14a91h

+dd 0f91508beh

+dd 031352891h

+dd 0f6d3f161h

+dd 0592455dch

+dd 0cfd4894eh

+dd 090e2fa14h

+dd 02eb095eeh

+dd 02360ad54h

+dd 06a5b6aach

+dd 0a585e85dh

+dd 065282e5ah

+dd 0516bbce5h

+dd 059f3cf24h

+dd 0a7c0a24bh

+dd 08bb30c1bh

+dd 0ad031ef4h

+dd 0e515865ch

+dd 0070cc32bh

+dd 0d59b05cah

+dd 082db681ah

+dd 043ca6b1dh

+dd 08e9e7647h

+dd 02ccc7629h

+dd 0b723ff0ah

+dd 05171d0d0h

+dd 09b410e00h

+dd 00dfd157dh

+dd 08d49c5a2h

+dd 0e3fe8a9bh

+dd 0e71928dah

+dd 064ad4566h

+dd 0e1c7ec66h

+dd 0b325b607h

+dd 0c881b1eah

+dd 018744a39h

+dd 0a69cfd0ah

+dd 0849afecbh

+dd 06d13c8e3h

+dd 03d506a32h

+dd 0e82ee61dh

+dd 0caf702a4h

+dd 09da03193h

+dd 07a3a0ee2h

+dd 06d34ee18h

+dd 000b57a75h

+dd 0b2366f27h

+dd 0a2011aa8h

+dd 052e38047h

+dd 0385ca929h

+dd 07ef4c942h

+dd 05ba92ff6h

+dd 0fd027295h

+dd 03efe6a6ch

+dd 0be1427ach

+dd 0701f41d2h

+dd 03135d9aeh

+dd 0adea3fdbh

+dd 0432539b4h

+dd 0492b762ch

+dd 0345682e6h

+dd 08649f0e3h

+dd 024204468h

+dd 019bb4f72h

+dd 008ed0464h

+dd 05c88793bh

+dd 06a44cb40h

+dd 0c1aabd7eh

+dd 045df16b7h

+dd 0b44acec3h

+dd 06401925ah

+dd 05c49d6afh

+dd 09d471251h

+dd 029341f36h

+dd 0d7b2eb48h

+dd 0ff14a0d9h

+dd 0a68f0a44h

+dd 0b47ddd6bh

+dd 077da2df1h

+dd 02d81bc51h

+dd 0941daa5bh

+dd 04744e6a8h

+dd 0c76f3c60h

+dd 0c199942ch

+dd 02aff0da8h

+dd 0ea2539c9h

+dd 0d5cd308fh

+dd 02bec1cd3h

+dd 0d1704272h

+dd 0c7be25e5h

+dd 0dd8b3ca3h

+dd 0e3d510efh

+dd 07aeb702dh

+dd 0c83c2992h

+dd 05c7520c8h

+dd 0e4286925h

+dd 0bdd3a1c9h

+dd 08b0dace1h

+dd 076a781f4h

+dd 0c82f2a0bh

+dd 081611474h

+dd 03d49f026h

+dd 0b002b675h

+dd 0f3640025h

+dd 000009b24h

+dd 01442966ah

+dd 0bcf686d3h

+dd 080bd31f7h

+dd 00e3f427fh

+dd 00499b331h

+dd 0d7f3bea7h

+dd 0d182a00bh

+dd 0151e167bh

+dd 032c30c22h

+dd 0102437cbh

+dd 072ab6321h

+dd 024c09db1h

+dd 0b5794e57h

+dd 06d03cf2dh

+dd 03db2c03dh

+dd 01e239745h

+dd 08020d35ch

+dd 037164505h

+dd 0304a2ba6h

+dd 01bd174c2h

+dd 03a9722fah

+dd 0b928e6fah

+dd 048df5a57h

+dd 08df4cc10h

+dd 03126d197h

+dd 0e3e0c770h

+dd 0fe029e0ah

+dd 0c524e117h

+dd 045a5ee3ch

+dd 0f0fd2760h

+dd 0ac28703fh

+dd 019270357h

+dd 07926b0e1h

+dd 0554cea6fh

+dd 04899aa96h

+dd 0a93fcb97h

+dd 0341b9cc8h

+dd 032ef1884h

+dd 0480cac56h

+dd 00e1f82afh

+dd 02af9e52eh

+dd 08c347e56h

+dd 06d27cfaah

+dd 0b19ebb2dh

+dd 09a017615h

+dd 00383a921h

+dd 01b4da17eh

+dd 03c2865e6h

+dd 01fe5e04ah

+dd 03d8a6145h

+dd 0cc135c25h

+dd 0523bf241h

+dd 0aaeddbaeh

+dd 08a6f4bf9h

+dd 0d28529f0h

+dd 068b11e42h

+dd 07d567660h

+dd 066bc1062h

+dd 0d7dc986ch

+dd 0a8c113a7h

+dd 04587ab05h

+dd 078e2ee32h

+dd 0affc298ch

+dd 0c2dd2772h

+dd 0c7fdfd87h

+dd 04c8a67a7h

+dd 075f4bc2fh

+dd 0ed085f55h

+dd 0b14743c7h

+dd 04f6ef24ch

+dd 031164a3bh

+dd 0483673deh

+dd 055b28531h

+dd 005f371a5h

+dd 02f65a18ah

+dd 08a2abb4eh

+dd 0e3be2319h

+dd 09a262cf4h

+dd 017ddd0aah

+dd 0899a8679h

+dd 0f03d99dah

+dd 08f0decf3h

+dd 06e31d5bdh

+dd 0355f0039h

+dd 0d23315f3h

+dd 02c3e7a24h

+dd 05e54d839h

+dd 0a61463f3h

+dd 01687668bh

+dd 08d0f8804h

+dd 0026e90cdh

+dd 081ec61c8h

+dd 034b5f115h

+dd 074306c10h

+dd 09fbde125h

+dd 0e423e192h

+dd 0d31071a9h

+dd 017d9bcfdh

+dd 0ca297f5ah

+dd 046f27404h

+dd 026254345h

+dd 0ea60dc61h

+dd 087e06276h

+dd 0a60789c8h

+dd 0d7a2bd05h

+dd 0f3086f8eh

+dd 079419849h

+dd 00b6c6c67h

+dd 01e22588ch

+dd 0d620a0f0h

+dd 0468928c4h

+dd 0f57aec81h

+dd 09c034c57h

+dd 0706d8b4ah

+dd 0ccf65c98h

+dd 04c1d309bh

+dd 0c067a845h

+dd 02262d5aeh

+dd 0ff9f919ch

+dd 0f0b4af27h

+dd 0f8e17385h

+dd 02e69e5f7h

+dd 0eabf3db7h

+dd 0b20475cfh

+dd 04bc8246bh

+dd 02ba82ea2h

+dd 0df9b0b99h

+dd 0e7f18322h

+dd 09d71f27ch

+dd 0dac87dbbh

+dd 0f235cf92h

+dd 00b178b54h

+dd 04f1d846bh

+dd 0603e046ch

+dd 059c4c2ach

+dd 09e202572h

+dd 0020ee4e6h

+dd 01a7a2156h

+dd 0d8442b73h

+dd 048243974h

+dd 0c0e96b61h

+dd 07594761dh

+dd 0ab39b8bdh

+dd 03dcbeb19h

+dd 07e992e05h

+dd 0c64d9cf7h

+dd 0734638ach

+dd 0180d3271h

+dd 05cb0f5c8h

+dd 09cab6ea0h

+dd 065a6813ch

+dd 06f255573h

+dd 07f15c795h

+dd 021411aa1h

+dd 01013dd97h

+dd 0cd181ad8h

+dd 04ad18017h

+dd 0df4ae1bfh

+dd 0efc97477h

+dd 095f3b3ebh

+dd 03031d7aeh

+dd 0ca4b609ah

+dd 07a4a50a9h

+dd 066c50abah

+dd 0eb6bc8ach

+dd 0a081998ch

+dd 0715a1a3bh

+dd 0bdf84224h

+dd 014dcbefdh

+dd 0a649366eh

+dd 0cd2f01e5h

+dd 02e4e13e1h

+dd 01ba0477eh

+dd 02d4f1312h

+dd 0dcb05cd9h

+dd 0da721601h

+dd 0db05c81ch

+dd 0c7810caeh

+dd 0026ccbdbh

+dd 036a28917h

+dd 03d6335b2h

+dd 0ca2930c9h

+dd 00a6304e9h

+dd 0775b5f7ah

+dd 05d1f6bfdh

+dd 01029ce76h

+dd 0ce4f0d88h

+dd 01abf0663h

+dd 014d0ae7ah

+dd 07273fd69h

+dd 0864eb9d7h

+dd 0c23a212ch

+dd 0d461d317h

+dd 0663ed29dh

+dd 04daf5b01h

+dd 0b851729fh

+dd 024fe54a5h

+dd 054e52075h

+dd 0e1ea5b08h

+dd 04d29e28eh

+dd 0b44352dch

+dd 00d481f72h

+dd 0c84f56d6h

+dd 08d344419h

+dd 0a9d1e664h

+dd 0c0c9e98ch

+dd 0cf50a0d0h

+dd 03e754192h

+dd 09b654a6ah

+dd 0c0d680e2h

+dd 08c5ba056h

+dd 0b4fcf1d5h

+dd 066587833h

+dd 04f32d71ah

+dd 0b96b2043h

+dd 0b70dfd7eh

+dd 05d437790h

+dd 0f657b299h

+dd 0e9127fe6h

+dd 00ae59936h

+dd 0ec432a95h

+dd 01c3a0c03h

+dd 0a35dc1a3h

+dd 033913eeeh

+dd 068a88d0ah

+dd 0ae2b2e52h

+dd 0ff94b7ddh

+dd 0c3388566h

+dd 08b6df0f2h

+dd 004b1a39ch

+dd 076685c8fh

+dd 011796212h

+dd 007614427h

+dd 08da998d1h

+dd 02161bcd8h

+dd 098046d3ah

+dd 04a552a62h

+dd 0e4cf307ah

+dd 072daf9bdh

+dd 0a7921b9dh

+dd 06f3b9ab2h

+dd 03bba3735h

+dd 02ee3bdc8h

+dd 06b0cf0b0h

+dd 028034d94h

+dd 056a6e50ch

+dd 0f5aa957eh

+dd 01f2c6e63h

+dd 0f12dfa9fh

+dd 0dd5fc29ch

+dd 0260f04edh

+dd 0fe1ddda0h

+dd 04a53e01bh

+dd 04abb3022h

+dd 073594a30h

+dd 0a1021097h

+dd 011cd78d5h

+dd 047523a7fh

+dd 076041588h

+dd 0b20a0f19h

+dd 0c4ff828bh

+dd 0d42b5a0bh

+dd 0b8295706h

+dd 05ea6a054h

+dd 041dc0a0ah

+dd 052bd8552h

+dd 0bdbf60cfh

+dd 09f16d8deh

+dd 092079925h

+dd 08762d464h

+dd 03e79c7e2h

+dd 089fcdc79h

+dd 0f5c3128eh

+dd 0a03c7686h

+dd 028a050bbh

+dd 065f636bah

+dd 0ce8dc371h

+dd 03e03f78ch

+dd 06fe0cd30h

+dd 053d4838fh

+dd 0623c9de7h

+dd 069d09404h

+dd 056245653h

+dd 0de7cdd05h

+dd 02b90e203h

+dd 05233f500h

+dd 029b89089h

+dd 0f2377884h

+dd 040f1fd8ch

+dd 0c6cba96ah

+dd 05359b7e1h

+dd 0005ab780h

+dd 09bde0332h

+dd 079f28fa9h

+dd 024d5b9cdh

+dd 0f358540bh

+dd 0fe009237h

+dd 0d64e22feh

+dd 0c757652ch

+dd 097c745cbh

+dd 013f18f94h

+dd 01be5061fh

+dd 0428149e1h

+dd 0c2b2687ah

+dd 048b6eb9dh

+dd 0bc6d0906h

+dd 0644488c1h

+dd 0576dd3c5h

+dd 085d0f5d1h

+dd 0fe05cc29h

+dd 0c86a7d51h

+dd 03754548bh

+dd 0744f8339h

+dd 0599cfd76h

+dd 0c3321b60h

+dd 0e6868236h

+dd 0c548e408h

+dd 0da30985ah

+dd 05754900dh

+dd 0e3eefcf1h

+dd 0fcf20e03h

+dd 0918e0fe7h

+dd 01950e856h

+dd 01794e52dh

+dd 08ce858a4h

+dd 09020bd03h

+dd 0aafb50c8h

+dd 01343372bh

+dd 02c9d36eah

+dd 086c00330h

+dd 05a61abd1h

+dd 0d42ca4dbh

+dd 0c54a22cch

+dd 071362a19h

+dd 0ed8c97c3h

+dd 0f031ab27h

+dd 07abe4b4dh

+dd 032244a74h

+dd 02ae4b3afh

+dd 0dca46296h

+dd 01cdf41e8h

+dd 080308c41h

+dd 0ebe33a27h

+dd 07748defch

+dd 02ae257bdh

+dd 0b8abb3f3h

+dd 000b249ffh

+dd 0f15ccc93h

+dd 012d1edefh

+dd 0499dc37eh

+dd 01bcaa80ah

+dd 080acebb0h

+dd 0fdca39b9h

+dd 0c33c1511h

+dd 0ff0d582bh

+dd 012b0cc2bh

+dd 0c3e5286dh

+dd 02b03207dh

+dd 07abd50ebh

+dd 028c8a02ch

+dd 0edc21226h

+dd 09d5905beh

+dd 0e689d398h

+dd 035b10572h

+dd 0da1f7276h

+dd 03d65b206h

+dd 06da7143ah

+dd 02adcdaadh

+dd 08e425bf7h

+dd 0d3537b86h

+dd 07d1d7bc6h

+dd 0f0f5cdb5h

+dd 0699502b7h

+dd 02ebc1527h

+dd 0fc30d6c6h

+dd 0b15ab9adh

+dd 0b3f920cfh

+dd 0b591952fh

+dd 0aa16273ch

+dd 010d39554h

+dd 0cae39b97h

+dd 0eb569a88h

+dd 0b750e691h

+dd 0a1bdb35fh

+dd 0c3747209h

+dd 0e0b8d781h

+dd 0a2fd6743h

+dd 0f0fc3037h

+dd 0f5915109h

+dd 07fa20c7fh

+dd 02512927eh

+dd 08ed54d2fh

+dd 082129672h

+dd 0bca61bf9h

+dd 07d8b4614h

+dd 0b5c767e4h

+dd 02f770ea8h

+dd 016e75836h

+dd 039049bdfh

+dd 02f6f0ebah

+dd 07e7ea841h

+dd 079532a25h

+dd 0c4c7e202h

+dd 08795a299h

+dd 0aff3c4b7h

+dd 007711947h

+dd 0636f37f3h

+dd 0a6e81666h

+dd 082223b4ch

+dd 044cc2667h

+dd 068e5edc6h

+dd 01ee835aah

+dd 09f1ad3c1h

+dd 0154a92a7h

+dd 0c495f5a5h

+dd 04dd5fb2eh

+dd 086fefd56h

+dd 04fd5a82ch

+dd 0826d9070h

+dd 06fd768ceh

+dd 0cf950df2h

+dd 0797dfa89h

+dd 077bf5ac9h

+dd 0b66de0ach

+dd 01761f2bch

+dd 033e8bb61h

+dd 09c0f0da3h

+dd 0b3a71ab8h

+dd 07fb3734fh

+dd 023498965h

+dd 0e81665a2h

+dd 0f3ac1990h

+dd 02ccb1811h

+dd 06c46cc08h

+dd 053b0e012h

+dd 06d33c3f8h

+dd 0a1f5a3b3h

+dd 0be48b0bch

+dd 066c279bch

+dd 0ac11156ch

+dd 01a37823ah

+dd 034a7af61h

+dd 08c1f9bf7h

+dd 01c48b6bdh

+dd 0cf9b77a1h

+dd 0f83328d7h

+dd 06c679f9ch

+dd 0ba5d96c6h

+dd 021029fcfh

+dd 05242c0a9h

+dd 0403bcdaah

+dd 0dd386d1dh

+dd 0657a7000h

+dd 04f4c3137h

+dd 0e7f40433h

+dd 0e4db0bcfh

+dd 0f48feab9h

+dd 05ae01579h

+dd 03d0c3532h

+dd 07c76f9e8h

+dd 025e272bah

+dd 0e29bbdbbh

+dd 007d13999h

+dd 06504945dh

+dd 067b341beh

+dd 0e7b72af4h

+dd 084fe2fb1h

+dd 01af18fd7h

+dd 0065024e5h

+dd 0e05fa571h

+dd 0b6e51134h

+dd 050f9faa4h

+dd 03826c6afh

+dd 00cab2ae1h

+dd 05f950976h

+dd 0215cd81fh

+dd 015de721ch

+dd 0bd3e012eh

+dd 01f751169h

+dd 01618d4c3h

+dd 00af47d9eh

+dd 0f2bf693eh

+dd 0f9c7f675h

+dd 04851bf03h

+dd 019c0cc2bh

+dd 0afad45adh

+dd 0c429a4c9h

+dd 07afffb9eh

+dd 051805df7h

+dd 0dc90a7cch

+dd 07e2dfe83h

+dd 0d41111e2h

+dd 0328613ach

+dd 09b221bb6h

+dd 0fe4019e1h

+dd 0372e679ch

+dd 0023fc31bh

+dd 074584072h

+dd 08121858ch

+dd 08926e7e9h

+dd 0d256f557h

+dd 0002fee6ah

+dd 04ab4e32ch

+dd 089016220h

+dd 0d11d4f6bh

+dd 0f5672726h

+dd 0987e0e74h

+dd 0785cfd35h

+dd 0953d8ad0h

+dd 0f44d1bf1h

+dd 042bdcf2ah

+dd 032b9d361h

+dd 0f69ce052h

+dd 031aaf891h

+dd 0f367acb2h

+dd 03508be93h

+dd 0984b7a75h

+dd 036d70592h

+dd 064c2cbc3h

+dd 0303f926ah

+dd 09b76a052h

+dd 003ee90a5h

+dd 053bc5aa7h

+dd 08725d993h

+dd 095b22665h

+dd 0822efdf4h

+dd 0c15797f6h

+dd 0f6728b6eh

+dd 0d8937212h

+dd 0cc5f207eh

+dd 0003b849eh

+dd 0c1363a9ah

+dd 0b0be00f2h

+dd 0f9eb7361h

+dd 0b33e3336h

+dd 0e883dd43h

+dd 04e74555eh

+dd 07e92ca01h

+dd 08b6b6abah

+dd 0cef27a4ch

+dd 0d01d2082h

+dd 06b09d0e3h

+dd 038bb96ebh

+dd 062b1553fh

+dd 0752f5666h

+dd 0485a841eh

+dd 06ce8681eh

+dd 0483faeb3h

+dd 0499192f4h

+dd 058a794a1h

+dd 09a2acef0h

+dd 085ea1a4dh

+dd 066b08c59h

+dd 03ad22b4dh

+dd 055c57f80h

+dd 06daf8d80h

+dd 0f0239119h

+dd 021704a1ah

+dd 01db60db4h

+dd 07116bb02h

+dd 039e66425h

+dd 00d7e51f3h

+dd 0053c198fh

+dd 00e427bbdh

+dd 010548b5eh

+dd 0b965c721h

+dd 09e65c75ah

+dd 0b6d3e643h

+dd 0d3a45398h

+dd 02bb1caddh

+dd 0fe237dcah

+dd 0e2a02345h

+dd 0cf1daa4ah

+dd 0a5987088h

+dd 0ec704bbah

+dd 0ec78f152h

+dd 02b729b2dh

+dd 04da8a1a0h

+dd 0253c1c39h

+dd 036cff8ach

+dd 03ea92624h

+dd 019e6913ch

+dd 04165f5e4h

+dd 058544c64h

+dd 06def1921h

+dd 005b262fah

+dd 028b92b9ah

+dd 024b398d7h

+dd 03bd17815h

+dd 0415a7f2ch

+dd 07eae9ce3h

+dd 0281f0744h

+dd 02962843eh

+dd 0106025d3h

+dd 0b3ab0c98h

+dd 092a1ce14h

+dd 03efb6813h

+dd 02e06684dh

+dd 09aadb938h

+dd 034b0a907h

+dd 01d08a815h

+dd 0835d4f6ah

+dd 05a2adddah

+dd 07ddbfeb0h

+dd 0ce684ec9h

+dd 093a6d46ah

+dd 0fe22f860h

+dd 0eb670355h

+dd 045050392h

+dd 0e438ceeeh

+dd 06b8e1377h

+dd 04a7deb0dh

+dd 06aaa9308h

+dd 027aedc0bh

+dd 046b85901h

+dd 0f50bde68h

+dd 00bc3a4c3h

+dd 0a6959440h

+dd 032cd63ceh

+dd 0dce3e127h

+dd 00e0b821ch

+dd 0721f49abh

+dd 09737335eh

+dd 01e7af9b9h

+dd 0924865aeh

+dd 05410817ch

+dd 0a7d3f044h

+dd 08e681747h

+dd 0b837dbd5h

+dd 008fa0672h

+dd 0bb31c5a0h

+dd 0ec4a4e05h

+dd 0a4d087d3h

+dd 0d3b38736h

+dd 0e8c3a56ah

+dd 0559a4db3h

+dd 0351c11b1h

+dd 02ab10309h

+dd 0f17ea7b6h

+dd 06e1a6892h

+dd 016d34467h

+dd 0365657a6h

+dd 0cc75d26dh

+dd 0eae1fc6eh

+dd 08fbad695h

+dd 0ef15ee14h

+dd 002e4d89ch

+dd 0cc73cefbh

+dd 01f338863h

+dd 0eb32f15bh

+dd 00d6f333bh

+dd 08f644201h

+dd 0dff7d738h

+dd 08e5adf6eh

+dd 0a0d0d5a6h

+dd 08c10ddd2h

+dd 0b1158ebbh

+dd 0d1fab02ch

+dd 016c06533h

+dd 036605cdch

+dd 01fa6c6f1h

+dd 02ae6bbc8h

+dd 0171227f2h

+dd 05409921ch

+dd 0e767404ah

+dd 08a4f2e44h

+dd 068530951h

+dd 0696c3383h

+dd 0e70ebd86h

+dd 0fe12c893h

+dd 03b38d354h

+dd 0027d1256h

+dd 0b99c2a0eh

+dd 0313cf4a2h

+dd 0f83f2993h

+dd 0fce4e3f7h

+dd 0f1f635f8h

+dd 0d5774e2ah

+dd 03727c52ah

+dd 0c9c94e4ah

+dd 00e553044h

+dd 064cca331h

+dd 0581895d6h

+dd 0d6009789h

+dd 00b08483eh

+dd 0c8cfc356h

+dd 047ee8ed8h

+dd 01745d993h

+dd 00bd4e1dah

+dd 02d31f944h

+dd 050b9c23dh

+dd 059070697h

+dd 0daccbe3fh

+dd 0f2b463d5h

+dd 0de80c149h

+dd 0cbfc32f3h

+dd 01c82a8a7h

+dd 035b94ec7h

+dd 0f9392e40h

+dd 0a7cfaf93h

+dd 0c58a3e83h

+dd 088648796h

+dd 04f69a042h

+dd 02c0582c0h

+dd 0a6f2092dh

+dd 0d990c4dch

+dd 0229697d1h

+dd 0312dffa9h

+dd 0b1d1bb63h

+dd 05ebef241h

+dd 09788db9dh

+dd 078a23deeh

+dd 0d8d5b53ah

+dd 040dd0bcah

+dd 04b2a45c8h

+dd 0ae16b4e0h

+dd 06cc9746eh

+dd 0a4192d84h

+dd 0a1d2eda3h

+dd 0edc9e7a3h

+dd 05841dec8h

+dd 035a407b2h

+dd 09250abd1h

+dd 010d4529dh

+dd 09247a44ah

+dd 098d86372h

+dd 09e709924h

+dd 0107f4f43h

+dd 0171f9942h

+dd 0ee0d3e85h

+dd 0aa4138e4h

+dd 092da2bech

+dd 04de34c8eh

+dd 05d972a2ch

+dd 0668deeb0h

+dd 042f708cfh

+dd 0331c3743h

+dd 0fc9c10bdh

+dd 00e89fbf8h

+dd 0c26fc82fh

+dd 0a2ea722eh

+dd 01c722553h

+dd 03519ce3fh

+dd 0408d7563h

+dd 08b7a0ef5h

+dd 07126d929h

+dd 05b94d560h

+dd 0b0d8be42h

+dd 0060a6614h

+dd 0fb665f46h

+dd 0e30edacah

+dd 0b0ecfaeeh

+dd 0ace6f99ah

+dd 08d296791h

+dd 00caeaaafh

+dd 03a2c459eh

+dd 0660a1d2ah

+dd 0f5ac4c45h

+dd 0d11579ceh

+dd 0a1b5f5a5h

+dd 0001f4153h

+dd 0872065e4h

+dd 0763d1e72h

+dd 08c9744f3h

+dd 0ea863da2h

+dd 0e1e3e841h

+dd 0736888e9h

+dd 088dedce9h

+dd 06aac07bfh

+dd 0fb8ce28bh

+dd 0cad729c3h

+dd 08a04d5e3h

+dd 0bb874e2dh

+dd 0a63ba2b7h

+dd 0609d8e51h

+dd 0ffd40eeeh

+dd 0826d4237h

+dd 0532a752bh

+dd 04bc73a21h

+dd 0636e128bh

+dd 0f07731d8h

+dd 0069faaa7h

+dd 028833187h

+dd 01bb15f3fh

+dd 0b1559106h

+dd 071791f7ch

+dd 0720fb31bh

+dd 0e418bcach

+dd 09b41e2b9h

+dd 0a5d7418dh

+dd 0deaa4456h

+dd 05f23e2aah

+dd 0b4931e4dh

+dd 0f7008d88h

+dd 07447e408h

+dd 07c86d898h

+dd 0760576aeh

+dd 011a654f0h

+dd 030ab80b5h

+dd 0c112ec08h

+dd 0815ecdb5h

+dd 00b0c30feh

+dd 0bb780b05h

+dd 0294640cbh

+dd 0587a25a1h

+dd 0c4fec64bh

+dd 0dd1954a3h

+dd 0d85ce1c3h

+dd 04982259ah

+dd 01c3a3ddeh

+dd 0b30f5259h

+dd 02efd9477h

+dd 00f3204a2h

+dd 03f002ba2h

+dd 01dd9ebe9h

+dd 068290449h

+dd 0ff67aa6dh

+dd 0fdbcf913h

+dd 003135b23h

+dd 009866edch

+dd 081659351h

+dd 096f26ca7h

+dd 0a77f9ce2h

+dd 03fa2583dh

+dd 09047d2fah

+dd 00d4aaae0h

+dd 0f6dd2384h

+dd 02e39e995h

+dd 035196597h

+dd 0762def5ah

+dd 0a0e19d9ah

+dd 0a961a937h

+dd 0617a131bh

+dd 053a5a03ch

+dd 0149b8662h

+dd 0dc735da1h

+dd 02fec8d61h

+dd 0c039e01fh

+dd 00d9b51deh

+dd 0367aed56h

+dd 071050071h

+dd 0092ac134h

+dd 0b60f0c4bh

+dd 0860c208ah

+dd 09678d710h

+dd 0a1b84dc4h

+dd 05bc01fbbh

+dd 0ef5bc651h

+dd 0cf71d7a9h

+dd 06d139a32h

+dd 0d28f8b30h

+dd 08560f098h

+dd 03f1f7182h

+dd 0e672375fh

+dd 07afc3c83h

+dd 05d3fd912h

+dd 0d0868554h

+dd 04c4ca3b4h

+dd 070b9bd06h

+dd 029ad19dah

+dd 0a319a6e3h

+dd 0e315212eh

+dd 06b8338ebh

+dd 0452064dbh

+dd 0b82b1ee7h

+dd 046d16e54h

+dd 02a11c8bbh

+dd 0beb8fecfh

+dd 04876a451h

+dd 0f84a6e6ah

+dd 061496080h

+dd 060589a2dh

+dd 0f0e7bd64h

+dd 05b4ae9e9h

+dd 01284a326h

+dd 05bdc9994h

+dd 0d83696bah

+dd 091604794h

+dd 0d8692479h

+dd 0fabbb590h

+dd 012df99f8h

+dd 03e0ae8b5h

+dd 0c02c5253h

+dd 041d9b886h

+dd 0ab1242b7h

+dd 0b217e79fh

+dd 091ecbdb4h

+dd 051b4dd57h

+dd 0e4d381d7h

+dd 07c7a4190h

+dd 0567fc4cah

+dd 0128f2ef3h

+dd 014c0ac95h

+dd 095b5762dh

+dd 011526220h

+dd 0143484a6h

+dd 008938558h

+dd 084463968h

+dd 067232083h

+dd 0ad061eefh

+dd 05679b166h

+dd 0068f38c7h

+dd 02711962bh

+dd 08ee81470h

+dd 0d7726a6ch

+dd 05ee17545h

+dd 047504363h

+dd 0394bbc43h

+dd 0c9a1138bh

+dd 0aad171bfh

+dd 067cb586ch

+dd 013d4105eh

+dd 07e59ba9eh

+dd 0b89fd4ffh

+dd 05048f478h

+dd 01f8ca6c3h

+dd 04d9af794h

+dd 091326dabh

+dd 083e01096h

+dd 0ca55e17ch

+dd 06df9f4d6h

+dd 03bfdcb4eh

+dd 0ec5de34eh

+dd 017ad4884h

+dd 0cb729c9ah

+dd 0e60a54a3h

+dd 00087efdeh

+dd 054a97708h

+dd 0617ba351h

+dd 0a05b1e61h

+dd 05bbec026h

+dd 082864a6fh

+dd 06733c3fah

+dd 08289d38ch

+dd 03c8cc4a7h

+dd 0d2975c0dh

+dd 0866f0627h

+dd 04c1b2e7dh

+dd 0365723a6h

+dd 0c0ac0753h

+dd 066f61db7h

+dd 03f54992eh

+dd 0a8db7c0eh

+dd 050f6bab4h

+dd 064cf26aah

+dd 08a23f439h

+dd 0b8b89e2dh

+dd 0d8330d3fh

+dd 099f03e89h

+dd 0dfb60776h

+dd 097ad2737h

+dd 0e7aa2836h

+dd 0bf1cb92fh

+dd 034b5c8d4h

+dd 09d3734cdh

+dd 0d0c40552h

+dd 0dbcb4017h

+dd 09f4ef4dch

+dd 0086468eah

+dd 0fda045b8h

+dd 0e03ff082h

+dd 0c5e1cb95h

+dd 055a43949h

+dd 040d5d484h

+dd 09a57ea9fh

+dd 0cbc7f550h

+dd 0d8f41c36h

+dd 0a7edab8fh

+dd 0bc04ea07h

+dd 0f14cb3c8h

+dd 0ea5bd53bh

+dd 091bb6ecbh

+dd 08396a58ch

+dd 03435defdh

+dd 033d370ffh

+dd 0f2eec92fh

+dd 0664b16ceh

+dd 07f03076ah

+dd 066644c09h

+dd 0edab0bd0h

+dd 0d4fbcb5ch

+dd 044a54cc8h

+dd 0ba26e532h

+dd 024c4d60ch

+dd 04db3fecbh

+dd 044363b98h

+dd 0b4c6be67h

+dd 053f4d638h

+dd 0ae0c0dd8h

+dd 0354cf149h

+dd 0ef08c99eh

+dd 0539b4cdah

+dd 0e5e6cbc9h

+dd 082282e4fh

+dd 0e2b805edh

+dd 05f1fb975h

+dd 05fadee21h

+dd 0d1cf072eh

+dd 027506d18h

+dd 0b2855b05h

+dd 038e84625h

+dd 0350a69e6h

+dd 070ba4850h

+dd 0168ef879h

+dd 0756b9754h

+dd 04d0761f7h

+dd 06d060c03h

+dd 089784999h

+dd 04bb6f12fh

+dd 0d19df6d4h

+dd 0c243a200h

+dd 05aa69542h

+dd 0dcef36f1h

+dd 0c786fa74h

+dd 09998fcc9h

+dd 0547733e2h

+dd 0b9e7ddf4h

+dd 006b596bfh

+dd 07f8063f1h

+dd 0e7062d21h

+dd 0059109f5h

+dd 08a6f2772h

+dd 07324d4aah

+dd 0c450542ch

+dd 0ffb7ff9bh

+dd 0890d1209h

+dd 099be20aah

+dd 04c439dbbh

+dd 0e1827009h

+dd 01f62173eh

+dd 007c6b5fch

+dd 0b7438ce4h

+dd 0f4801f92h

+dd 087cbc05dh

+dd 060d4dcdfh

+dd 038e26867h

+dd 0317344bdh

+dd 0b226cf5eh

+dd 001c88e03h

+dd 0be16ad79h

+dd 04a89eec4h

+dd 0984198c0h

+dd 0d3a50b7bh

+dd 07a6ad660h

+dd 0f2440f77h

+dd 0bbd017e4h

+dd 0f506adbeh

+dd 05199970ch

+dd 07c589583h

+dd 0e564f99eh

+dd 0cd0f2100h

+dd 064324ea1h

+dd 08b1c0804h

+dd 0c0c09dcdh

+dd 0635911f0h

+dd 07312c107h

+dd 0eb6776d9h

+dd 0eda2f18eh

+dd 0f8b10834h

+dd 0bab0e392h

+dd 00700d05bh

+dd 0ff85da39h

+dd 0bb19db23h

+dd 09f457a3dh

+dd 05dfc3b09h

+dd 019d0e376h

+dd 071f1caa2h

+dd 0c3d8c20dh

+dd 025882ae9h

+dd 0401abcb2h

+dd 0c9249ba2h

+dd 0a70ab564h

+dd 04f9b9f5fh

+dd 038326739h

+dd 0dad9eaadh

+dd 06b61a387h

+dd 02e0c556eh

+dd 02fc0384fh

+dd 0b9d1d9b7h

+dd 0ef052925h

+dd 085352ec3h

+dd 0256acd95h

+dd 00d4b75b8h

+dd 003f35849h

+dd 050c023b4h

+dd 064437207h

+dd 099bdfabeh

+dd 06cafbc2dh

+dd 02982dff2h

+dd 0d745b8d7h

+dd 0a0b22479h

+dd 08a7a8038h

+dd 002872722h

+dd 091f088d8h

+dd 017837188h

+dd 039747c15h

+dd 05408d629h

+dd 0f6281394h

+dd 0cb1a2218h

+dd 0d449d312h

+dd 029b2f205h

+dd 0519f6397h

+dd 0df92e697h

+dd 05bf51c08h

+dd 062e0f173h

+dd 058e4093ch

+dd 03fb2e8ebh

+dd 0b4137d6fh

+dd 094d808f5h

+dd 0fad20c1ch

+dd 01b6b1fdeh

+dd 04de13d93h

+dd 00a404218h

+dd 062b66a58h

+dd 04a260f47h

+dd 05db4aa54h

+dd 077601fech

+dd 0fedba1d4h

+dd 04c35ac48h

+dd 0361f8f14h

+dd 0e315a449h

+dd 050b79620h

+dd 06072ebe8h

+dd 0b2bff856h

+dd 096dfee2ch

+dd 080aaf20ch

+dd 0a9eb118dh

+dd 09786e370h

+dd 0956046eeh

+dd 06ea807ceh

+dd 0d3c5c5c7h

+dd 05e2183e3h

+dd 02baab875h

+dd 0467e7809h

+dd 0cf449594h

+dd 027b9de72h

+dd 095be145eh

+dd 0a1433271h

+dd 0e210e221h

+dd 0a2ac345ch

+dd 001b0553bh

+dd 008c28a6ah

+dd 00e84d8ech

+dd 08d6f6b1ah

+dd 051d85527h

+dd 0073ec479h

+dd 0939c5781h

+dd 02abf7389h

+dd 02ee4e3fbh

+dd 024011ef0h

+dd 077703ab4h

+dd 0de4fb5cfh

+dd 0d4c2c19ah

+dd 033880d71h

+dd 0a52cb614h

+dd 0cbaa9ae5h

+dd 058a38b2fh

+dd 0d1bedc55h

+dd 08a7f4abch

+dd 0a07963c1h

+dd 062a734aah

+dd 09b2a7792h

+dd 05d15e7fch

+dd 0c36ed9d0h

+dd 0edd69993h

+dd 0c3e7f01fh

+dd 0bcced8bbh

+dd 0b82bc78ch

+dd 020304fbch

+dd 034866d37h

+dd 0d0ef45fch

+dd 06f2bfc19h

+dd 05d3f8a70h

+dd 02a834dedh

+dd 07a83848eh

+dd 035857595h

+dd 0ee6f58a6h

+dd 088745218h

+dd 05fdf37e7h

+dd 0f41db75eh

+dd 0917bd69eh

+dd 099c01f35h

+dd 0c89497e0h

+dd 03dfe0f6fh

+dd 0404ee354h

+dd 030612990h

+dd 034215a6dh

+dd 0133e8739h

+dd 051db9786h

+dd 0613273fdh

+dd 068c6e3dch

+dd 08901452ah

+dd 0b02178f1h

+dd 0b3508504h

+dd 0a329b471h

+dd 0c366f294h

+dd 0fd1b6f2ch

+dd 01cb5e4f8h

+dd 0f658e697h

+dd 0b2aac939h

+dd 0d7485d53h

+dd 0aa3225b6h

+dd 068dee194h

+dd 00147bb97h

+dd 0191095bfh

+dd 03adcef75h

+dd 06f5497b2h

+dd 032c71e59h

+dd 08d6b4b42h

+dd 040f76b77h

+dd 052f865c5h

+dd 0e7d307ach

+dd 03396a3fdh

+dd 06ceba49dh

+dd 09a655b69h

+dd 082acce9dh

+dd 0532f0753h

+dd 0fe975717h

+dd 01f397743h

+dd 05f0fe399h

+dd 0fbc277cch

+dd 0c5fcce8fh

+dd 0bb90f7f4h

+dd 06baa8465h

+dd 02e68d22fh

+dd 0765c9a71h

+dd 0dc464808h

+dd 0fccc731bh

+dd 0dcacecabh

+dd 01e7419a1h

+dd 06e2168fbh

+dd 021f86835h

+dd 0b8ea77ddh

+dd 0a4e0a1adh

+dd 0089f934eh

+dd 0763a6e6ch

+dd 0960c98c8h

+dd 08d441760h

+dd 0d1eacd6fh

+dd 016746ac3h

+dd 0789353aah

+dd 059bfe216h

+dd 0872402bch

+dd 06e2e464bh

+dd 0cbb3c873h

+dd 083f1d1cfh

+dd 053282d3ch

+dd 00418f2efh

+dd 0e4187d33h

+dd 0ef7ac343h

+dd 07e13a3bfh

+dd 02d3c494fh

+dd 018447de2h

+dd 089ed64dah

+dd 0d9d0138ch

+dd 0fa719cd6h

+dd 0b9ad98a3h

+dd 02a15a75dh

+dd 016f9df07h

+dd 088f8fda1h

+dd 0c6654bc8h

+dd 0bffd8864h

+dd 09fada4a4h

+dd 01db106b1h

+dd 09ff39080h

+dd 010bcca21h

+dd 0ecb7510dh

+dd 095074b71h

+dd 0f3130bb3h

+dd 01aac7f22h

+dd 01d06a0a1h

+dd 0a3ecf73eh

+dd 0fec1171ch

+dd 08d82d17dh

+dd 01a85d174h

+dd 0f0c1cf9ah

+dd 00d8cd63eh

+dd 0f64f4cd3h

+dd 0f3366159h

+dd 0bafadb74h

+dd 01fe3f74ah

+dd 0258895dah

+dd 03588b61dh

+dd 0b41304b3h

+dd 0b27fdd11h

+dd 060291e6ah

+dd 0bcf5c7bch

+dd 00aadc345h

+dd 04a479f0bh

+dd 0fa6c3709h

+dd 0b425023dh

+dd 097588652h

+dd 0a96637b6h

+dd 0af84b1b0h

+dd 0691d5930h

+dd 02c8953eah

+dd 08de82916h

+dd 0db20ea90h

+dd 0fabb0d79h

+dd 0bc8d623eh

+dd 06b770e63h

+dd 04f3dfe0dh

+dd 003cdabf0h

+dd 054f8a720h

+dd 0e9cc5169h

+dd 0b7715b69h

+dd 03b947054h

+dd 050402ad6h

+dd 099862be8h

+dd 08e2c91e5h

+dd 01343891dh

+dd 044fb28c2h

+dd 0b34e7735h

+dd 04a4e3db3h

+dd 0d6be5483h

+dd 06e1ff3f4h

+dd 0770bda2ch

+dd 0f759baabh

+dd 06f68be84h

+dd 0a64a819bh

+dd 0226e6d02h

+dd 0877fbf0ah

+dd 0190dd16eh

+dd 0a2b41af6h

+dd 046a9e532h

+dd 041557086h

+dd 041284477h

+dd 033cff17ah

+dd 0f8e38e78h

+dd 083c807fch

+dd 0f3f7eeddh

+dd 0aaf193ffh

+dd 0c76dac87h

+dd 0efc99a98h

+dd 0558d505eh

+dd 0b0a192a8h

+dd 04aabe32eh

+dd 06077dec5h

+dd 0edcce618h

+dd 072383b63h

+dd 02b8387d0h

+dd 0aa80993dh

+dd 0954d99ech

+dd 0c098d822h

+dd 0a83b3227h

+dd 0182aef10h

+dd 05a5489a4h

+dd 09e3ecdc3h

+dd 00fb67272h

+dd 08a65cf2eh

+dd 020db63e3h

+dd 06356fad3h

+dd 00a0ef227h

+dd 0b26f905eh

+dd 08a8f53c5h

+dd 0c692f9e6h

+dd 03af6ec22h

+dd 0de86ce30h

+dd 067b40a33h

+dd 07d1783bdh

+dd 0dd33bf07h

+dd 0bf6339c7h

+dd 0f92e7861h

+dd 0835b8c19h

+dd 017347532h

+dd 001546121h

+dd 093c57be8h

+dd 00aaa7126h

+dd 0ca6bb31dh

+dd 05ff47023h

+dd 05b712983h

+dd 0e479f118h

+dd 08c895b04h

+dd 0183297d0h

+dd 03b31ac48h

+dd 0830e23a0h

+dd 00e3a91dbh

+dd 088491cb5h

+dd 0a868322bh

+dd 0691ff3b8h

+dd 012b92756h

+dd 03428875ch

+dd 08bcd0cefh

+dd 0f33a72d6h

+dd 040e7e348h

+dd 08ba55f51h

+dd 0ae07255fh

+dd 0f8cef1e6h

+dd 06f233d53h

+dd 0d603df69h

+dd 0e7a69a61h

+dd 0f8392d2fh

+dd 0572f6b2ah

+dd 04d4bf576h

+dd 0f9a9953fh

+dd 09352a5a7h

+dd 0c325d8feh

+dd 042ae3e1eh

+dd 0651f9d0ah

+dd 0530bee9ah

+dd 0b7f99966h

+dd 08df1349fh

+dd 07a567f23h

+dd 0d8813ecch

+dd 087c1ff22h

+dd 0e2166b3dh

+dd 075e58695h

+dd 085d969fch

+dd 0bbd85dc3h

+dd 0d9f17839h

+dd 07dec8c06h

+dd 0721668efh

+dd 0fa028ee6h

+dd 07c104738h

+dd 0296e39deh

+dd 0de3226ebh

+dd 0e1eaa722h

+dd 0a2ea2511h

+dd 0d2624643h

+dd 02c9a537bh

+dd 0c2daa8d3h

+dd 0e40aa734h

+dd 09b7b4086h

+dd 04f63b115h

+dd 08ebd6dd5h

+dd 0fe687eb4h

+dd 00bbcb3adh

+dd 0fd8559eah

+dd 0e5bdc25ch

+dd 09dbba777h

+dd 0661caf99h

+dd 0f4236848h

+dd 056174c6fh

+dd 06558ed2fh

+dd 0b3434f30h

+dd 0ec691aefh

+dd 03aedec05h

+dd 09903f3b0h

+dd 0fb435c62h

+dd 0cdc299ebh

+dd 0aaa292e4h

+dd 08fa790aah

+dd 01c623631h

+dd 035889ccfh

+dd 05f7de97bh

+dd 0f4485e15h

+dd 0f6308769h

+dd 018674804h

+dd 00814bbc4h

+dd 08c12be18h

+dd 0e5796ca8h

+dd 05cf4ec49h

+dd 0511512e8h

+dd 00b64f68ah

+dd 003547d00h

+dd 03bd143a2h

+dd 02389d2dah

+dd 032beffb5h

+dd 09ea6bc3dh

+dd 0ce085d73h

+dd 00e029f09h

+dd 0894fe498h

+dd 0953f7cbch

+dd 0e5f2745fh

+dd 0de246a4bh

+dd 0768f81c4h

+dd 0597436c5h

+dd 09947a0b7h

+dd 0c682ef97h

+dd 03521356ch

+dd 046826bc5h

+dd 062aff688h

+dd 02ab3972bh

+dd 0c97693a6h

+dd 0716dd3f1h

+dd 0c0d6424bh

+dd 0b57156e9h

+dd 0bd291f20h

+dd 0785d71c8h

+dd 0f77e2c72h

+dd 05a20eb33h

+dd 0ce83adeah

+dd 068be698ch

+dd 06c75a566h

+dd 06982e1d6h

+dd 078693421h

+dd 03de3669dh

+dd 0e71669e3h

+dd 03045778fh

+dd 05023f335h

+dd 075daed1ch

+dd 088f23bd9h

+dd 0a14e5d55h

+dd 0a77e8290h

+dd 06318bb05h

+dd 02e87dfa4h

+dd 0d1e73236h

+dd 025715965h

+dd 0835da686h

+dd 0dfcb4c22h

+dd 06845340ah

+dd 040881c1dh

+dd 04bfde654h

+dd 051ebb12dh

+dd 0512722c6h

+dd 01f5502f6h

+dd 0b1ee6c5ah

+dd 08cd6cf3eh

+dd 086ebbfcbh

+dd 0334d1b8dh

+dd 0201a9ea4h

+dd 073cefedah

+dd 068713e88h

+dd 0fcffe6b1h

+dd 085c6b1f2h

+dd 09c2f326ch

+dd 0776b575ch

+dd 097107c2ah

+dd 0495b0631h

+dd 04d9c03b2h

+dd 0c038c03fh

+dd 05a3ee910h

+dd 0d7519b92h

+dd 0c05d1a53h

+dd 0c556262eh

+dd 098b339eah

+dd 0c590882bh

+dd 0be407a7bh

+dd 0ceb35696h

+dd 06a03ec59h

+dd 0f1632f42h

+dd 0a07ca18ah

+dd 06b59443bh

+dd 083da0b72h

+dd 047cf9256h

+dd 04146bccah

+dd 0218be603h

+dd 07aee610ah

+dd 049d7fd4bh

+dd 046e08a11h

+dd 08e7f2437h

+dd 00ed4b11fh

+dd 00c5ee373h

+dd 0ddf0f2a0h

+dd 0e98a187fh

+dd 0e7cebb05h

+dd 0b92832cch

+dd 0c690283eh

+dd 07a7d0b9ch

+dd 0ea9f7d45h

+dd 0274b881fh

+dd 06420813bh

+dd 06c137f49h

+dd 01d1fbf51h

+dd 0b10c785eh

+dd 0aef3c791h

+dd 0745f3183h

+dd 018244a9dh

+dd 09d0ddc9dh

+dd 0178c324ah

+dd 0cd7ce71ch

+dd 0e1b54482h

+dd 0ae8eedbeh

+dd 0b4123d79h

+dd 0a204a4fch

+dd 0eeb17db4h

+dd 05e470f66h

+dd 0b7de6ba4h

+dd 059def197h

+dd 0c6560525h

+dd 0a29f8069h

+dd 04d06fda3h

+dd 023bd81c7h

+dd 0a0e0a0e7h

+dd 0b74d4cd3h

+dd 0f9892eb0h

+dd 0dff3febeh

+dd 002812c42h

+dd 0e1768eebh

+dd 0ab3dd0f5h

+dd 0eee20767h

+dd 099c3ef94h

+dd 05580a3a5h

+dd 062d5ddb8h

+dd 01f19f730h

+dd 0c934664ah

+dd 0f0d0b0ffh

+dd 084666544h

+dd 0dfa4d5cdh

+dd 013c75ecfh

+dd 088ac27b7h

+dd 02498af36h

+dd 00622231eh

+dd 0397d7863h

+dd 007285319h

+dd 0916b0a95h

+dd 013034ad4h

+dd 07cd51627h

+dd 09c5fa0f8h

+dd 0599c2067h

+dd 068ace4cfh

+dd 050b69455h

+dd 03295f93ch

+dd 0ade42fd8h

+dd 0bcb588e0h

+dd 061c1b1e1h

+dd 087a203a2h

+dd 001a53cb8h

+dd 06ec57132h

+dd 087fcf01bh

+dd 08e90d119h

+dd 0226f1ed7h

+dd 077003cech

+dd 0c126bcb0h

+dd 06dc2a31eh

+dd 06118bba4h

+dd 00f495f40h

+dd 0c3b80b7ch

+dd 0e61053f4h

+dd 01ea64622h

+dd 02f9d4f11h

+dd 0242a3602h

+dd 082580f12h

+dd 0e77f4ff2h

+dd 0b968d128h

+dd 071727af6h

+dd 001223584h

+dd 02177a9dbh

+dd 0f749a51dh

+dd 04c46efbfh

+dd 0bbe4c7c8h

+dd 0a5a33076h

+dd 0cefd9595h

+dd 047ebef77h

+dd 0885bb5eah

+dd 04a9452f9h

+dd 05cf8da27h

+dd 009a57be7h

+dd 024cade68h

+dd 017ea1be5h

+dd 05bdf15bfh

+dd 09c155e1eh

+dd 0d8a5e1f6h

+dd 020c0f60eh

+dd 0032e8e5bh

+dd 05d0238a7h

+dd 0244c0df2h

+dd 04461e9e3h

+dd 0a4e2788bh

+dd 00974568bh

+dd 09d49343eh

+dd 022d5fea8h

+dd 0afacfcafh

+dd 0b854bc5dh

+dd 0cb39cefch

+dd 0c2bce22bh

+dd 02bc14717h

+dd 06e3eff75h

+dd 09ef6c957h

+dd 0baf31cfbh

+dd 06386f757h

+dd 0f633e134h

+dd 0109898a0h

+dd 02339e976h

+dd 0251ef843h

+dd 09a073ab8h

+dd 001d7119ah

+dd 05de3790ch

+dd 0587f4649h

+dd 08ada6224h

+dd 0ef5a1d56h

+dd 0346c4022h

+dd 0c86106c2h

+dd 070439a88h

+dd 0a79fb68dh

+dd 07ede0ca4h

+dd 05f246d1ch

+dd 0b6403cd8h

+dd 0cbefb7fbh

+dd 0e071e620h

+dd 0dd835f41h

+dd 032ad29c0h

+dd 0616ec8b5h

+dd 0ad8ccb79h

+dd 01c10b6b3h

+dd 052d7d5c8h

+dd 0a9ad9f0dh

+dd 0885ee0e3h

+dd 08435c2b5h

+dd 0ee7bc774h

+dd 0ac04cb5fh

+dd 000b198bdh

+dd 0048b8fcbh

+dd 05ff9bc3eh

+dd 0bcccf4beh

+dd 0b06f5061h

+dd 0dbb46259h

+dd 0a98f0ac4h

+dd 0a7698568h

+dd 0c0373bcdh

+dd 071fbb76eh

+dd 0f2384fe4h

+dd 0de087acfh

+dd 04f8435b4h

+dd 0501ad425h

+dd 0996923dbh

+dd 00f61fa7ch

+dd 037cb69dah

+dd 0a90afdc2h

+dd 0ddc57b91h

+dd 06fe54258h

+dd 038ada72bh

+dd 0274a0e1dh

+dd 0e713e53bh

+dd 035fb4e16h

+dd 094d4d4a3h

+dd 036b55b0eh

+dd 0e24c6b6fh

+dd 09a33ca0eh

+dd 036d92221h

+dd 0b2218b6eh

+dd 05e1d6c6dh

+dd 0ec7aa93fh

+dd 029849259h

+dd 016efdfb4h

+dd 0fab03d93h

+dd 01cc05ddch

+dd 058a7e396h

+dd 08caba802h

+dd 0fe936733h

+dd 050bb7469h

+dd 0d2208749h

+dd 08afc8087h

+dd 0c35b75a1h

+dd 02b49f1b1h

+dd 02bbf17b7h

+dd 08c5fc2d3h

+dd 0159ceca7h

+dd 058bd203ah

+dd 0504b1519h

+dd 00f0e2dcdh

+dd 02b1450e3h

+dd 0ae95239bh

+dd 0cf9efa14h

+dd 06c1529feh

+dd 0ab472c0bh

+dd 0c9f99684h

+dd 0885be22dh

+dd 09dcad838h

+dd 01c508bd5h

+dd 043ca3248h

+dd 00c8cf2c4h

+dd 0e71fb53eh

+dd 074d16785h

+dd 098f93706h

+dd 0c16f90ech

+dd 03a89ee0dh

+dd 0a6fd99e9h

+dd 07e5d9f09h

+dd 0abdfa225h

+dd 07ea91826h

+dd 0119875e8h

+dd 0818eb54eh

+dd 0abc98d92h

+dd 07be1c374h

+dd 0ec7c1cc5h

+dd 09f777dcbh

+dd 053f3f3fch

+dd 0c2ecc7a7h

+dd 04ade9aaah

+dd 0cd39047fh

+dd 0b9a23b87h

+dd 01ede1275h

+dd 02222ac5ch

+dd 03c940b1ah

+dd 0b99ec320h

+dd 0ef3cf080h

+dd 06378a1edh

+dd 039f6c8bah

+dd 07232af6bh

+dd 0d8c5350eh

+dd 0958aa82dh

+dd 0fd647eedh

+dd 0f89d8386h

+dd 055653259h

+dd 075c600cah

+dd 0224dff7ch

+dd 06d3db6c3h

+dd 02574a10ch

+dd 0fd3ec414h

+dd 09404ac95h

+dd 00713ca6fh

+dd 08fb7c272h

+dd 03f52d688h

+dd 0228912bah

+dd 0122eec7dh

+dd 08ad2523eh

+dd 0e4876154h

+dd 009745385h

+dd 0b094c446h

+dd 05983073bh

+dd 0d6143030h

+dd 049893fb7h

+dd 0d996126ch

+dd 020f3d423h

+dd 01e5365a7h

+dd 0238c0aefh

+dd 0b0040fd0h

+dd 0667ccf31h

+dd 0e148cb2bh

+dd 033156feah

+dd 09805033ah

+dd 0a90d69fah

+dd 0a0d2775ch

+dd 03ad50ee1h

+dd 02259bb96h

+dd 0e5b0a3efh

+dd 00ac0d4b5h

+dd 08b398150h

+dd 0e45291dah

+dd 067a15353h

+dd 064772384h

+dd 0d7ee63a6h

+dd 069aa64a4h

+dd 0521fb102h

+dd 06407fa6ch

+dd 04cef9dd6h

+dd 03ae93648h

+dd 082b8f8b0h

+dd 096a57b92h

+dd 07dbab935h

+dd 0b4b899a5h

+dd 0c2471b17h

+dd 04359cb51h

+dd 0b848f10fh

+dd 0a50a5401h

+dd 0d0129637h

+dd 0b9ff7ac0h

+dd 0daed71c5h

+dd 02e4a3d76h

+dd 0246d9a76h

+dd 05fa9371dh

+dd 05efcad57h

+dd 0fdb972b8h

+dd 082fed246h

+dd 0409b2d30h

+dd 0db79205ch

+dd 0376b8917h

+dd 02af42819h

+dd 00dfe2e5eh

+dd 083e15a78h

+dd 0cb8bf795h

+dd 02f4fc267h

+dd 0ccbe5f58h

+dd 0a3f16b88h

+dd 070ad130eh

+dd 02712625ah

+dd 0de28eef2h

+dd 03fe4b8cah

+dd 0b9229bd0h

+dd 0cdb7e37ah

+dd 07500406dh

+dd 04e66d2c2h

+dd 047ef5a94h

+dd 0b1880448h

+dd 074a39fc7h

+dd 018925b44h

+dd 0d6efcd7fh

+dd 0a91d7f18h

+dd 0256e6a0fh

+dd 083931fd0h

+dd 0fc9ee9ddh

+dd 0107e3ca6h

+dd 0ef4773dah

+dd 0754cc20bh

+dd 00aa89bc7h

+dd 0ed64107bh

+dd 08c25f818h

+dd 08c992c41h

+dd 081085065h

+dd 0eb6a89e4h

+dd 0310d810fh

+dd 01f183d93h

+dd 00531771ch

+dd 001fca3a4h

+dd 01f32443dh

+dd 093dd070ch

+dd 0057fe939h

+dd 03a3dfb44h

+dd 0548f2e65h

+dd 0df8f0ad6h

+dd 04e647890h

+dd 08d4f8f13h

+dd 08142e0c0h

+dd 09279b671h

+dd 0c1af017ah

+dd 0124c1b18h

+dd 0a93c8871h

+dd 06f6d8e63h

+dd 0938db0b2h

+dd 07379ede0h

+dd 08ecf90afh

+dd 07e431831h

+dd 07c361225h

+dd 05358582eh

+dd 0ce199dc8h

+dd 02002c352h

+dd 0f801f0c3h

+dd 014bb551ch

+dd 039d07246h

+dd 0d502810bh

+dd 0aa85fde4h

+dd 068018d50h

+dd 002dea3a3h

+dd 007594ad9h

+dd 09447d05dh

+dd 071fdf6a1h

+dd 088b34f3ah

+dd 07494a00dh

+dd 072bc9999h

+dd 059b3dc0eh

+dd 021ae2951h

+dd 01fcc01ach

+dd 061af8baeh

+dd 0dd553597h

+dd 03af9d176h

+dd 0b2daf319h

+dd 01ee43d96h

+dd 040b67ddfh

+dd 06e09f396h

+dd 09298646ch

+dd 0c3298077h

+dd 02bf1f271h

+dd 02a5119f1h

+dd 04d996f20h

+dd 08d0bca49h

+dd 048023487h

+dd 0243bc5e7h

+dd 0256bb4eah

+dd 0233ca818h

+dd 0f1359194h

+dd 08cb5ceceh

+dd 0bbac1793h

+dd 0ff5c16fbh

+dd 00741ebe2h

+dd 0937ed6ebh

+dd 0b59b73f8h

+dd 02c20ac9ch

+dd 0a8087c85h

+dd 0c89de648h

+dd 018ab7907h

+dd 0fb4ed574h

+dd 02678a2e6h

+dd 066853aa6h

+dd 06e799a14h

+dd 0063142f1h

+dd 08c9ec542h

+dd 069292fd1h

+dd 07eeff8a2h

+dd 0a9f409fdh

+dd 0459b1b32h

+dd 0ab8f355eh

+dd 0af4a0827h

+dd 085280799h

+dd 00d8eba3dh

+dd 076d00e90h

+dd 0183a778ch

+dd 0494bf496h

+dd 09fdd0eb4h

+dd 0d46eeacah

+dd 0f707d1feh

+dd 0089e8428h

+dd 0ffae3577h

+dd 00fba2345h

+dd 05987fa9bh

+dd 098eda79eh

+dd 01aa1ca13h

+dd 07c9ead94h

+dd 0791c7eb1h

+dd 05f1cacc6h

+dd 0534711c8h

+dd 092911f4ah

+dd 0b84b91bah

+dd 0c0572d2bh

+dd 01bf8a68ch

+dd 00d63ad5bh

+dd 0ff92bcb1h

+dd 011685ba0h

+dd 0fb33c091h

+dd 07e842636h

+dd 0faed7930h

+dd 0d0aca875h

+dd 014c68aabh

+dd 0582c281eh

+dd 03945a992h

+dd 0ea56a27fh

+dd 0c141ecf4h

+dd 0ab725d3eh

+dd 0899dd7b1h

+dd 05d2b307eh

+dd 0929b7174h

+dd 0cf1874ech

+dd 08a7eef09h

+dd 07b4ce798h

+dd 0b068a48ch

+dd 06d5fcdc0h

+dd 0ea63a7d9h

+dd 09344267fh

+dd 0f35c3791h

+dd 046623150h

+dd 0f3f820e3h

+dd 0fbbdda9ch

+dd 05e672207h

+dd 000e65aafh

+dd 0dad36564h

+dd 035b6d77eh

+dd 002dfdc31h

+dd 0b74ed3c0h

+dd 0dbf17d84h

+dd 00d2690d3h

+dd 0bc39795fh

+dd 0c200c957h

+dd 0da495592h

+dd 08eb51324h

+dd 0476558e0h

+dd 0b33dc29ah

+dd 07bf5f2a0h

+dd 021780361h

+dd 0965172c2h

+dd 0558d128bh

+dd 0665776d2h

+dd 0e9060773h

+dd 085f7ac7dh

+dd 086e2e5cch

+dd 076b68b25h

+dd 0bd29b49bh

+dd 00c523512h

+dd 00badfc12h

+dd 0d38caa12h

+dd 0c7750abah

+dd 0779c158fh

+dd 0ea6be053h

+dd 04c6a4f9fh

+dd 0b01b23c4h

+dd 0ac9ebd3ch

+dd 0bc533278h

+dd 06701f057h

+dd 015403e19h

+dd 022393000h

+dd 0638c84b4h

+dd 03d517b52h

+dd 0fb1a85abh

+dd 0cc075a26h

+dd 051a560a7h

+dd 07deffdf4h

+dd 0048843b1h

+dd 00de6ff51h

+dd 043e714bch

+dd 0ab3cab53h

+dd 0865bf9bah

+dd 045e8a4d3h

+dd 08cc09889h

+dd 0b15fb770h

+dd 01c91c204h

+dd 0f6bf7947h

+dd 0f9e9681bh

+dd 0b98c9743h

+dd 04540e753h

+dd 03b9abf10h

+dd 0fbd42fb2h

+dd 0aab92ca1h

+dd 09c207c68h

+dd 020693bf9h

+dd 0ed2fcf24h

+dd 0e88ed03bh

+dd 0a2b65996h

+dd 045b98d14h

+dd 028fd6bdah

+dd 04c1aa94dh

+dd 0eb9038eeh

+dd 056c7c9d5h

+dd 0017cd4efh

+dd 0f88cf3f4h

+dd 0eee82e66h

+dd 0bb0d876eh

+dd 0d36e362fh

+dd 00591c7ebh

+dd 00cbdccdbh

+dd 01cf16658h

+dd 0d2d8ffdeh

+dd 0020db053h

+dd 009f9cbf0h

+dd 02516f991h

+dd 007a2a9a9h

+dd 0d4017500h

+dd 0cdc9dee4h

+dd 04cddaad4h

+dd 08262ad83h

+dd 00064cecdh

+dd 0b32dec5eh

+dd 05724923dh

+dd 0e3b11c88h

+dd 0bd3f1bcfh

+dd 07da5e6beh

+dd 0ebc354e7h

+dd 073329529h

+dd 0d6f41e3ch

+dd 0fc2f3cbfh

+dd 090578aa2h

+dd 0cb608fa2h

+dd 0b8f2fe0eh

+dd 0f26687fah

+dd 0c3d60fcah

+dd 0e0e94740h

+dd 0f79afe74h

+dd 0b2a3d8f2h

+dd 0ff4fb4b5h

+dd 044c44b8eh

+dd 078d7e7ech

+dd 0d9046ee2h

+dd 0486dec5dh

+dd 0769bc3efh

+dd 053c4acdch

+dd 0d5241d07h

+dd 0d09ceb50h

+dd 019336a65h

+dd 0da57d800h

+dd 06414eb44h

+dd 04feaec1bh

+dd 0ad8aa785h

+dd 070f70cbch

+dd 0dd16df21h

+dd 01f622125h

+dd 0c73ec56ah

+dd 0a8cd9f79h

+dd 07062eae9h

+dd 022265053h

+dd 069ea76f9h

+dd 0f66ed52ch

+dd 09cffb8d7h

+dd 0870193e8h

+dd 0ab588ae4h

+dd 047d4367eh

+dd 0e54058adh

+dd 0c3325206h

+dd 0c08f3865h

+dd 0154d5318h

+dd 0b256d10fh

+dd 092588f20h

+dd 0462cf7b0h

+dd 0cb28fec3h

+dd 0dfeb22fah

+dd 0da186f84h

+dd 02125848ah

+dd 01db8328dh

+dd 0be070fabh

+dd 0b13602e2h

+dd 0c6e40b1ch

+dd 07e7b2430h

+dd 0e651f2e5h

+dd 0b2d150d0h

+dd 05ce573dch

+dd 0472f14cch

+dd 069bade61h

+dd 02ef2788fh

+dd 04c137b87h

+dd 03e108666h

+dd 03ba8d212h

+dd 0ca884547h

+dd 0ca0e6ab0h

+dd 0205ac342h

+dd 0fa7ad042h

+dd 0942b8862h

+dd 089dd7041h

+dd 018bb5587h

+dd 07db3518ah

+dd 0af900ccah

+dd 03c14e8eah

+dd 0f86b73beh

+dd 03612d280h

+dd 03b1e9629h

+dd 02698b1b5h

+dd 0050a89e7h

+dd 0f6139056h

+dd 0c6567ec6h

+dd 04da9cca8h

+dd 06c359664h

+dd 0c09167cbh

+dd 0c0bd69bdh

+dd 00f48258fh

+dd 0fe914018h

+dd 0f9991e0fh

+dd 0dfdcf6cfh

+dd 07d2bc802h

+dd 0be95876bh

+dd 079c378c5h

+dd 010613d98h

+dd 070ded8d7h

+dd 00a790567h

+dd 0f2455700h

+dd 01fb749ffh

+dd 09160cc1dh

+dd 054a7dedfh

+dd 0cc1d9a98h

+dd 088bea175h

+dd 0513c6fb4h

+dd 028ae1a3ch

+dd 077c7780eh

+dd 07057d537h

+dd 06e33598eh

+dd 0158cce16h

+dd 09bc29f91h

+dd 0e0643486h

+dd 06e5ea486h

+dd 0379f4283h

+dd 0ee5e9c9eh

+dd 082644b78h

+dd 0ae8df8fah

+dd 0219a3a34h

+dd 09ee598d0h

+dd 03add6550h

+dd 0c422032ch

+dd 05a86ebcch

+dd 01e91cc7ch

+dd 0efc01c6eh

+dd 08b66f7cch

+dd 077fe35f0h

+dd 016ee5a82h

+dd 08b8c437eh

+dd 0ace04d6fh

+dd 0bc9ecc88h

+dd 0a1b11239h

+dd 0443022e3h

+dd 04f0c12a6h

+dd 02e3e37c0h

+dd 0c7bdd45dh

+dd 0c2fa4b8dh

+dd 0295aa5c7h

+dd 0631e4ac1h

+dd 030ceddd0h

+dd 0e41b66afh

+dd 0b63e2daeh

+dd 0080e7d8fh

+dd 077df35cfh

+dd 03f21cfadh

+dd 033c6fd1bh

+dd 04c5660e8h

+dd 00506a802h

+dd 070e701d0h

+dd 0a2000c45h

+dd 0a1cc412fh

+dd 02a304345h

+dd 0ecedaefah

+dd 0d4d55bafh

+dd 0a1d1f6c7h

+dd 0f22f3823h

+dd 05b44c40dh

+dd 0a7cb61bch

+dd 039e367a4h

+dd 040c5dd1eh

+dd 091c0be42h

+dd 0db019586h

+dd 0ce1153afh

+dd 0ac650abfh

+dd 07283814fh

+dd 04c0a56efh

+dd 058728078h

+dd 06ed7a32fh

+dd 0f5d699eah

+dd 035fc3d03h

+dd 0b4a91fd7h

+dd 0627679b7h

+dd 0b88ea6fah

+dd 0ef64cdcbh

+dd 07d29c7b2h

+dd 055efcae5h

+dd 07ce26d25h

+dd 0828e6af3h

+dd 09eccde37h

+dd 0c1df3726h

+dd 0617bf17ch

+dd 034be03a7h

+dd 02e594ca4h

+dd 0fabee1cdh

+dd 03b15ea52h

+dd 0c5630ed9h

+dd 023991bd0h

+dd 09561f645h

+dd 0a6b614f4h

+dd 0069e82b7h

+dd 0dcb6e998h

+dd 0e6d512a8h

+dd 03038e205h

+dd 0159e7e8bh

+dd 07b4e2bb1h

+dd 0a4262d08h

+dd 0b809877dh

+dd 067135f34h

+dd 0d632537ch

+dd 0914c9f0dh

+dd 0b546c4ech

+dd 064aa2c23h

+dd 0cfeb7b83h

+dd 0ccf6cfech

+dd 0a91a6205h

+dd 06ac79d0ch

+dd 0f17cbf25h

+dd 03b69840ah

+dd 00cda6d82h

+dd 0e053b850h

+dd 08641b102h

+dd 09dbf78f2h

+dd 0aaa6be2fh

+dd 08e147156h

+dd 05d9a049fh

+dd 0b213ad68h

+dd 09dca028bh

+dd 02f80fd45h

+dd 000bb32ech

+dd 02ed95e6ah

+dd 05ea6d8d7h

+dd 0ff2a4fc1h

+dd 0e42ddd4bh

+dd 0ef7f0816h

+dd 01c1edb21h

+dd 035412ab7h

+dd 0d1d56daeh

+dd 01f5c340ah

+dd 056952295h

+dd 051f2bc45h

+dd 0183c0443h

+dd 0f822d861h

+dd 08045967dh

+dd 018e1f1b7h

+dd 0d26e0074h

+dd 096154ccfh

+dd 03184864ah

+dd 0b6cc2cefh

+dd 072e7d386h

+dd 0088ea63bh

+dd 0177024c0h

+dd 04356299ch

+dd 0fdab3875h

+dd 0c119eb5eh

+dd 026bdd5bdh

+dd 0bf172742h

+dd 055cf620eh

+dd 0e5c9e640h

+dd 047350d78h

+dd 0bc58e723h

+dd 0575d4e15h

+dd 08a1052b8h

+dd 0eab15d75h

+dd 0ca24b9ceh

+dd 067a89bdah

+dd 0c42e08bah

+dd 0f2128ae2h

+dd 01ad3d862h

+dd 0b83d158ch

+dd 0d24b9c5dh

+dd 095a69756h

+dd 074f8f807h

+dd 0fa7638ffh

+dd 062a3d040h

+dd 09d91e362h

+dd 018d1842fh

+dd 02c61b8e3h

+dd 0c34e8807h

+dd 0e503e568h

+dd 0e53d77aeh

+dd 04b818b20h

+dd 0fa6300cbh

+dd 031abd00fh

+dd 0602adb14h

+dd 041117223h

+dd 08e9e41f1h

+dd 00b3055deh

+dd 033cf16feh

+dd 01d5c2599h

+dd 0f6cdcf2fh

+dd 01b6dd1ebh

+dd 045f6ffa4h

+dd 0b5ce78dbh

+dd 0469cdb39h

+dd 072e3c6a7h

+dd 001ca186dh

+dd 00d4a408dh

+dd 0ab1c1185h

+dd 0747160e1h

+dd 0b47a146dh

+dd 0f0464807h

+dd 03a369a47h

+dd 00c9ff97bh

+dd 0a8d6fd22h

+dd 0d4122ddfh

+dd 025d5918eh

+dd 0fb22babch

+dd 027fee25fh

+dd 048bffca4h

+dd 0ef27eda4h

+dd 0029c2db7h

+dd 060a05fb1h

+dd 045c1a2a5h

+dd 07382f396h

+dd 037ce1e4ch

+dd 0d0b41aa2h

+dd 00fea85afh

+dd 0f90eda6dh

+dd 03e8e4478h

+dd 0d017cb46h

+dd 0851f509eh

+dd 054e7aa6dh

+dd 0450b1c82h

+dd 077b42926h

+dd 038384989h

+dd 0f57cd6e5h

+dd 07ba05ddch

+dd 0cdd236deh

+dd 0a056a763h

+dd 0a9e6cab7h

+dd 0dc7077cch

+dd 0a79e0233h

+dd 0ff951cb1h

+dd 020da30a5h

+dd 0d63e8f69h

+dd 0ef0ac21bh

+dd 099027f95h

+dd 08ed694c9h

+dd 08821f9c8h

+dd 0be0ee0a0h

+dd 0ef52fdfch

+dd 0c32115abh

+dd 05e4178fah

+dd 0abe99e7fh

+dd 0a09ebcf0h

+dd 0e4588c63h

+dd 0c2197098h

+dd 01161b5deh

+dd 07e23fc8fh

+dd 00f342592h

+dd 023469903h

+dd 0b5bc2914h

+dd 03655d097h

+dd 042808fdeh

+dd 0acb802cdh

+dd 0168e1c96h

+dd 062d334f8h

+dd 06a793593h

+dd 0f00ea0fbh

+dd 0642d0dech

+dd 03ca37965h

+dd 01a8d9534h

+dd 07a90ec39h

+dd 0100d6b95h

+dd 0c20efd7dh

+dd 06918ccdah

+dd 0de107d74h

+dd 0534c9a1ah

+dd 011b992eeh

+dd 0ff41a741h

+dd 0b9ff4c78h

+dd 0ad92255ah

+dd 0a3cce5deh

+dd 0a30bc772h

+dd 0725f051ah

+dd 0bd58c08fh

+dd 04b78ec13h

+dd 098f89df6h

+dd 04ae48002h

+dd 00358ded8h

+dd 046daafcah

+dd 00ae9be32h

+dd 08a292cf0h

+dd 0d501c396h

+dd 096c88312h

+dd 030389ce1h

+dd 0fbc33ac7h

+dd 0619b3a08h

+dd 0af90dcbch

+dd 0752c8b6eh

+dd 095ef74cbh

+dd 07630c46bh

+dd 097d5b32fh

+dd 0cc2dbdbdh

+dd 02f503ba6h

+dd 0122c67a1h

+dd 09ff8a0c8h

+dd 07c62387bh

+dd 0bd753772h

+dd 068dcd877h

+dd 03ba45a00h

+dd 0b73921c3h

+dd 064afefd5h

+dd 07d840d80h

+dd 03f1bc639h

+dd 0c718f6f3h

+dd 0f2ecb16ah

+dd 06f461c25h

+dd 0c3c00f24h

+dd 0388f0985h

+dd 0f3d069afh

+dd 013638974h

+dd 0c52ddf2eh

+dd 0c937f372h

+dd 007c03bedh

+dd 0ac6c04c4h

+dd 0a2cae73ah

+dd 065f7ec5ch

+dd 068b68b59h

+dd 0908d73b1h

+dd 0f40cfa6dh

+dd 05e1a30cfh

+dd 0c769cf27h

+dd 08322c26eh

+dd 00aa87d41h

+dd 02d4adb1eh

+dd 0a103a17fh

+dd 0552c34a2h

+dd 0f91a2200h

+dd 0ae80e923h

+dd 06ed52cebh

+dd 03a82a01ch

+dd 0f28df0a5h

+dd 0a6298df3h

+dd 073deee9ch

+dd 0ceb66e31h

+dd 00cc76006h

+dd 03ce92535h

+dd 0b6d4cabah

+dd 069478079h

+dd 01cee933ch

+dd 00169c179h

+dd 09f00041dh

+dd 00e5664deh

+dd 048d4b31bh

+dd 0f15cf817h

+dd 0c2961c34h

+dd 0445be87bh

+dd 0e38e59bah

+dd 0d20afd20h

+dd 0715de25eh

+dd 0632c76c7h

+dd 0d71ffd4dh

+dd 0c41de3deh

+dd 004027ecfh

+dd 090ce199fh

+dd 09e67dbcah

+dd 00dd67570h

+dd 025c2b939h

+dd 0848f503dh

+dd 06b0b21e6h

+dd 03dbc883ch

+dd 0b1acb3b5h

+dd 0538b6cd4h

+dd 0e4d009beh

+dd 02d8415b5h

+dd 09101394ah

+dd 080b5a258h

+dd 08e5fcc17h

+dd 04e29d8f6h

+dd 08ae6f742h

+dd 0704b511fh

+dd 0891ae343h

+dd 0ba9c6adeh

+dd 0d30f15cbh

+dd 0380fec8fh

+dd 07beb4094h

+dd 0230aecd9h

+dd 089f7d33eh

+dd 0baaf4aedh

+dd 00846d911h

+dd 058420f61h

+dd 04530316bh

+dd 0240f168fh

+dd 0ebe3508ah

+dd 02a6ddb09h

+dd 02ff07944h

+dd 036fb3311h

+dd 047c6ac1fh

+dd 0ec24d125h

+dd 0586e9505h

+dd 023a890a3h

+dd 0bbd53050h

+dd 019d0a99eh

+dd 01ad82eadh

+dd 099e0db03h

+dd 0f9364a6bh

+dd 099a7e407h

+dd 006b591e5h

+dd 0c78e86ffh

+dd 08004884ah

+dd 085d9f106h

+dd 0c3e0e5b7h

+dd 0b860e786h

+dd 04d66d684h

+dd 0db02157dh

+dd 007837e59h

+dd 0f803cd97h

+dd 0032a881ch

+dd 0076a697ah

+dd 099184fafh

+dd 04e693e2eh

+dd 08ecd3dd2h

+dd 05f8d53e3h

+dd 02374117ah

+dd 0c9807a3ah

+dd 0259653c7h

+dd 013f77529h

+dd 0537b840eh

+dd 0a3ba5554h

+dd 06f8d7038h

+dd 074a8288ah

+dd 0eecad2f6h

+dd 0a6848ec7h

+dd 0ac8c534eh

+dd 0f80f7bc5h

+dd 034f436dah

+dd 07901abf1h

+dd 0551d7c9fh

+dd 084ca9c00h

+dd 0b853a215h

+dd 02c8ddb79h

+dd 0bc7759fdh

+dd 059e512ech

+dd 0c6430ac7h

+dd 0a306eeafh

+dd 085cb751eh

+dd 0b044ab16h

+dd 0782c372dh

+dd 0a9f85899h

+dd 09a6bb396h

+dd 0251391a8h

+dd 064f1e7dbh

+dd 0ac5bd12bh

+dd 005cd0bf7h

+dd 03fffe675h

+dd 0dae6b899h

+dd 0b6eb2528h

+dd 06fee6d59h

+dd 0ad0012a8h

+dd 09e16634dh

+dd 08d4547d0h

+dd 087395a2eh

+dd 027243651h

+dd 0a2bf5baeh

+dd 05706dc03h

+dd 00b349d31h

+dd 0e3194c9eh

+dd 06b964dafh

+dd 09c99e226h

+dd 07c2654d5h

+dd 03ee5a3c1h

+dd 0d14852feh

+dd 05f843d0ah

+dd 0e1bc9046h

+dd 0d6547845h

+dd 07dc5b877h

+dd 0af64447fh

+dd 0228c4661h

+dd 0d5b17905h

+dd 0719926d5h

+dd 0a0e48b3dh

+dd 0dc0dd3cfh

+dd 03ebae917h

+dd 054c3a2afh

+dd 0eb85f6b5h

+dd 08a0a6c83h

+dd 0fb3b8156h

+dd 00066cbc8h

+dd 0828a234fh

+dd 09f92c77eh

+dd 0a599b06bh

+dd 0dc568551h

+dd 09e89ae11h

+dd 066815efbh

+dd 006b7519ch

+dd 07e91a580h

+dd 076b8a490h

+dd 0167e3db4h

+dd 0f0ba7f1ah

+dd 035932534h

+dd 098123c6ah

+dd 0ca1fa3bbh

+dd 08b65d88bh

+dd 071006d7dh

+dd 088bfeebbh

+dd 018e2a78ah

+dd 0124d1c15h

+dd 05ca18ebch

+dd 050ff9048h

+dd 0859ef28eh

+dd 098f3e460h

+dd 039a76d07h

+dd 05ccc9c1bh

+dd 0dabfd13ch

+dd 08b592b08h

+dd 0436392deh

+dd 0f6b1592fh

+dd 0be8eb1e1h

+dd 0afa6fd7ah

+dd 00efc0df3h

+dd 067db53d1h

+dd 0155ed38fh

+dd 066e98afch

+dd 077fe9574h

+dd 0d765a35fh

+dd 04216583fh

+dd 0f7a6f828h

+dd 08ee13806h

+dd 045649a42h

+dd 06e170333h

+dd 03d849626h

+dd 051efef0ah

+dd 09fa6b255h

+dd 029bf3c12h

+dd 037033790h

+dd 0886dc758h

+dd 028d5c065h

+dd 001cf5ba9h

+dd 0dc6c6736h

+dd 04af75547h

+dd 0c6123ba8h

+dd 01589e6c4h

+dd 038d01b36h

+dd 0e943d166h

+dd 0608aedf3h

+dd 034306e7ah

+dd 0012e47d5h

+dd 09fa9a729h

+dd 0891b043fh

+dd 0193ee186h

+dd 0baba0241h

+dd 0d3d6b686h

+dd 04de32e3fh

+dd 0bf77b8edh

+dd 04e8ff359h

+dd 095148e7fh

+dd 094a3d2cbh

+dd 0edcf69fch

+dd 010188377h

+dd 049f02950h

+dd 058f35fc9h

+dd 06258996fh

+dd 059f22fd0h

+dd 0782b8901h

+dd 03ec2711ah

+dd 0c00b2b48h

+dd 0fe252397h

+dd 09b6b1e80h

+dd 02f212b9eh

+dd 00c452a87h

+dd 0889b9bdch

+dd 0a6740b7eh

+dd 0347bb4f5h

+dd 0165fa8c6h

+dd 0eefffe67h

+dd 0c09b3c7ch

+dd 06bd0ca16h

+dd 018a00bcbh

+dd 060263564h

+dd 05de332f4h

+dd 012375548h

+dd 027af5a0ch

+dd 09f34ca71h

+dd 016ddaad9h

+dd 0f6cf2a7ah

+dd 0e5e4c282h

+dd 06e913cbeh

+dd 0440e53efh

+dd 024e00203h

+dd 0682f2524h

+dd 01bd95c4ah

+dd 059ffdd05h

+dd 0c178423bh

+dd 0478e8506h

+dd 06868af12h

+dd 0cc845b2dh

+dd 045eba485h

+dd 02c907392h

+dd 00243dae7h

+dd 01678225ah

+dd 0fb74b9eah

+dd 0ed5cfc27h

+dd 07c959891h

+dd 0aa3251d4h

+dd 043d08311h

+dd 034e4ffd5h

+dd 005cf4d34h

+dd 0bcb4ea5fh

+dd 06f035107h

+dd 09833f28eh

+dd 093e8562ah

+dd 0e2370640h

+dd 09cf6f9aeh

+dd 072d31769h

+dd 0ea14ab65h

+dd 01c640ac7h

+dd 06207c054h

+dd 002f3c997h

+dd 0b711250ah

+dd 08b1b6273h

+dd 01c3b4428h

+dd 04ba73067h

+dd 043eb1f9ah

+dd 040cda824h

+dd 07f83b132h

+dd 0b2353225h

+dd 06cd533d0h

+dd 0c60a8efah

+dd 0b1278bech

+dd 023ea14e8h

+dd 08bdcb21ch

+dd 0714ea004h

+dd 0712c9347h

+dd 00cee52f7h

+dd 0ca5375b7h

+dd 0b68a73c1h

+dd 09f3ae370h

+dd 03712c8b8h

+dd 06453bc30h

+dd 08b8c872eh

+dd 0f5c29eb8h

+dd 02d3bf967h

+dd 09f776539h

+dd 078e50390h

+dd 0887d93a1h

+dd 0b3a1f02fh

+dd 07090ffe9h

+dd 06d9b0eabh

+dd 092358ffdh

+dd 071643ef1h

+dd 06d3e3bfah

+dd 0a652440ch

+dd 0d21a5adeh

+dd 0edf9b1fah

+dd 0a34ebb1bh

+dd 01843ea58h

+dd 04cc486d8h

+dd 0ef958a61h

+dd 0e513621ch

+dd 0486fedfdh

+dd 0ea27bbedh

+dd 04d59e6b7h

+dd 06d7a0d42h

+dd 0aa95f60eh

+dd 0e23de673h

+dd 0d1674cdch

+dd 08dd26a4bh

+dd 0d4d23eb9h

+dd 09e30f813h

+dd 02abb3deah

+dd 034e372eah

+dd 06ccc86cah

+dd 0b15ca11dh

+dd 0b136dd10h

+dd 06339ec21h

+dd 068a02f9ch

+dd 07675ab82h

+dd 0be7d4dc5h

+dd 015366506h

+dd 0c679104dh

+dd 00d90d4a4h

+dd 0b3db53c2h

+dd 0f934c59eh

+dd 054dd6444h

+dd 0daea7879h

+dd 06411c866h

+dd 097e1d4c8h

+dd 03c34e66dh

+dd 07dc9ad3eh

+dd 0f2fe6cbch

+dd 01be748d6h

+dd 0af69b460h

+dd 0ef49fc04h

+dd 03e378fddh

+dd 0fd7e055ah

+dd 0c53112d8h

+dd 0ee38b57ah

+dd 0575b169eh

+dd 0b7edf1dfh

+dd 0b95f346dh

+dd 0fd17a6c9h

+dd 023cfdffbh

+dd 057737308h

+dd 0c466c0a7h

+dd 00fbaf24ah

+dd 092ed67dch

+dd 000958568h

+dd 047a8edf5h

+dd 071e7b095h

+dd 0b1a9ca86h

+dd 069bf3fcah

+dd 024213e50h

+dd 0c5327262h

+dd 000b6c508h

+dd 0bdbdc0bdh

+dd 09b76397dh

+dd 0ebd36b96h

+dd 0b93ce1d9h

+dd 0a9da6033h

+dd 0a7bd8d87h

+dd 0db85592ch

+dd 04fb3cda0h

+dd 0ba25eaf9h

+dd 0a0f1b387h

+dd 0214274adh

+dd 05c450a80h

+dd 06b7b6e95h

+dd 0d8a160f2h

+dd 061543af0h

+dd 08622d45ah

+dd 0c0dd297fh

+dd 070fc84e7h

+dd 004d7070ah

+dd 04fa208feh

+dd 0b0a94c4ah

+dd 0ff0cb76eh

+dd 09eb35533h

+dd 02f8b9fa0h

+dd 03cdb97a8h

+dd 0dac070e8h

+dd 0377b2ed5h

+dd 0728ec7e1h

+dd 03618b044h

+dd 0aa472cadh

+dd 0423632d7h

+dd 05e529ae2h

+dd 0dd473b1eh

+dd 0652f1a9fh

+dd 0f783a9ceh

+dd 06e986eb8h

+dd 0ef62cde3h

+dd 04a991242h

+dd 0ecd6dbe5h

+dd 01696150ch

+dd 03aceed41h

+dd 09cf41a7ch

+dd 0cc208258h

+dd 0dde6dd80h

+dd 00cbc8718h

+dd 068602e3eh

+dd 08ba89f95h

+dd 077540af4h

+dd 0e611b04ah

+dd 0592098adh

+dd 047432cdah

+dd 02a780a4ch

+dd 03ef58f42h

+dd 02c7dd2e5h

+dd 0fcb864a6h

+dd 029c2fd5eh

+dd 0563595ceh

+dd 0b398f585h

+dd 0e6c7f9aah

+dd 002bdd097h

+dd 0675fbe6bh

+dd 067df0eadh

+dd 0442218c5h

+dd 0c478277ah

+dd 0d69288b2h

+dd 07a9a9aa5h

+dd 0acb197e2h

+dd 0ce622102h

+dd 0cf5bec11h

+dd 078334d49h

+dd 09e645d7dh

+dd 0f30fc145h

+dd 0ce80d47dh

+dd 066a44c0fh

+dd 0ff03495dh

+dd 0342a9d3fh

+dd 0210279e7h

+dd 050c86a43h

+dd 028c8d51dh

+dd 030e329d7h

+dd 0986ac578h

+dd 048f65c46h

+dd 096e33acah

+dd 0c691f64bh

+dd 0f43643bdh

+dd 075f780cah

+dd 04f193d4eh

+dd 0030133dah

+dd 0ba34cfffh

+dd 06a91f924h

+dd 0106190d5h

+dd 00969d7f1h

+dd 06bd4def1h

+dd 04b743aach

+dd 065b569d2h

+dd 07fde5282h

+dd 002da8165h

+dd 084b011b7h

+dd 020eb02e9h

+dd 03947d478h

+dd 04da03a3bh

+dd 041537678h

+dd 008bc569bh

+dd 0715803e8h

+dd 013e89a5dh

+dd 02e0d8720h

+dd 08647773dh

+dd 0b997445eh

+dd 08163257bh

+dd 0398b8d2bh

+dd 0fa326be8h

+dd 0479bcebdh

+dd 0b99623f7h

+dd 0153757bah

+dd 0a68bb0f7h

+dd 0321b4097h

+dd 0c1d14cc9h

+dd 0d29084b1h

+dd 0eb40711bh

+dd 033e71bf0h

+dd 07f4766e6h

+dd 07e749af6h

+dd 0282e4e36h

+dd 05ceb2aa7h

+dd 0261422aeh

+dd 0fa1eab43h

+dd 01ddb45c7h

+dd 0d410ba56h

+dd 0e7a893deh

+dd 0f950feffh

+dd 05c827f60h

+dd 0433a54e5h

+dd 0fc84394fh

+dd 01b047b7fh

+dd 0e63be852h

+dd 081b8b2c3h

+dd 002dd0d0dh

+dd 043431893h

+dd 0d2d47fa9h

+dd 078eafa51h

+dd 02fa15f50h

+dd 0932fa966h

+dd 032502f55h

+dd 08870f75bh

+dd 0cb06186fh

+dd 00b88cc8fh

+dd 03a879a9eh

+dd 03955121eh

+dd 0e5b7bd29h

+dd 08cc722ech

+dd 00b873aa0h

+dd 03bcb3870h

+dd 0c5251132h

+dd 0451ffab4h

+dd 0be966b03h

+dd 0521a470bh

+dd 0df42d0c4h

+dd 03ea2358eh

+dd 0145fcf4ah

+dd 0e608cd8ah

+dd 07bafdfd0h

+dd 0c2e823fbh

+dd 0e560b513h

+dd 0da771580h

+dd 00fdf4954h

+dd 080bb18dbh

+dd 0ddf0a52ah

+dd 054b31500h

+dd 0ee9c18e6h

+dd 0731f9088h

+dd 06be461aah

+dd 04aa02a94h

+dd 089654ef4h

+dd 0e3d3b81ch

+dd 0195d30c4h

+dd 091fddacbh

+dd 06f371073h

+dd 008b45f4bh

+dd 0f6358c9eh

+dd 04a131834h

+dd 0f41099fdh

+dd 05574cc0fh

+dd 07dabfa3ah

+dd 055c3e946h

+dd 0bb315d04h

+dd 0e4cfa0f3h

+dd 0648cc698h

+dd 041faff97h

+dd 0f9f27e23h

+dd 007d37026h

+dd 0ad21901ch

+dd 03bf725c3h

+dd 0fdaf6bfch

+dd 09b7074afh

+dd 0065d329bh

+dd 00575d689h

+dd 015d0eb8ch

+dd 0f87bee9bh

+dd 060d02134h

+dd 079df6fb1h

+dd 0e5c9f4f7h

+dd 0731c7043h

+dd 0c9d4d614h

+dd 0a326eee5h

+dd 084a263d8h

+dd 0ac460dbeh

+dd 025a8951dh

+dd 0ecd731ffh

+dd 07e0723fch

+dd 005a07ed7h

+dd 04e7dff3fh

+dd 0624559b9h

+dd 0f775c0feh

+dd 0cdfe075bh

+dd 0518c3817h

+dd 0556a7577h

+dd 022f810e3h

+dd 0a3705214h

+dd 030018ea9h

+dd 0e3cec22dh

+dd 08dba8279h

+dd 0ef13726ah

+dd 0a0332653h

+dd 05fe87cfdh

+dd 081aecb6fh

+dd 059d33b59h

+dd 038974beeh

+dd 013d040f4h

+dd 0ddd2edc2h

+dd 051565ec7h

+dd 03e486a1eh

+dd 051a4f72eh

+dd 0b66fab1bh

+dd 06ae18b90h

+dd 0ec4b100bh

+dd 0b3a5b0b4h

+dd 0d5dc5101h

+dd 0126990ffh

+dd 0f31230eeh

+dd 0500667e6h

+dd 0ddce5294h

+dd 066c38ebdh

+dd 08a58be86h

+dd 0d7e5562ah

+dd 0be8638bbh

+dd 0704bc0c0h

+dd 040eb6114h

+dd 0aa548692h

+dd 0aa3476a2h

+dd 0e96e6223h

+dd 0ba3eb54bh

+dd 03265eaa8h

+dd 037f9a062h

+dd 081c04eb9h

+dd 071d39a1fh

+dd 04d6d23efh

+dd 0839e2ea4h

+dd 0afeccf97h

+dd 004b888c4h

+dd 00a1909beh

+dd 0ba19f453h

+dd 0e9856749h

+dd 01aea4f40h

+dd 09f1d872fh

+dd 0f7557dach

+dd 0985f764bh

+dd 0776178bdh

+dd 0f061b614h

+dd 03df8556dh

+dd 0b880023fh

+dd 015640d92h

+dd 0795c0728h

+dd 0acab0f16h

+dd 0b5daaf1ch

+dd 024a6988ah

+dd 0cbe5a9deh

+dd 0707389f9h

+dd 0c2c0146bh

+dd 07a38069eh

+dd 0a2aaf39dh

+dd 0870dc86bh

+dd 03a5f5c1ch

+dd 0e8ac70afh

+dd 0efb2b221h

+dd 01af2bcf2h

+dd 050e5496fh

+dd 035950b02h

+dd 027d53d60h

+dd 047580a6ch

+dd 0e1732396h

+dd 09f666ad2h

+dd 09e6c2dfeh

+dd 04f27eb9fh

+dd 0acb2b539h

+dd 0c2056636h

+dd 06491ff49h

+dd 0511af515h

+dd 0222e308fh

+dd 0abfde846h

+dd 06679c5b8h

+dd 036c2a7d7h

+dd 051c00dbfh

+dd 048371dc9h

+dd 095d9c3c7h

+dd 025b1baach

+dd 05e509976h

+dd 04945a159h

+dd 035477bb0h

+dd 0513e6b97h

+dd 07e409297h

+dd 0c49f0244h

+dd 0a4910637h

+dd 0c02fb996h

+dd 07dd07839h

+dd 0df8a87ebh

+dd 00e73fd4ch

+dd 035f0f606h

+dd 07d07a405h

+dd 06bae093ch

+dd 025bbfa5eh

+dd 03aa983e9h

+dd 0030e92f9h

+dd 0e3e6804dh

+dd 070a9e1e0h

+dd 04c6fde56h

+dd 0952defefh

+dd 0250d445ch

+dd 05ccff8feh

+dd 0da1d954eh

+dd 0275d77d9h

+dd 08d9ab79fh

+dd 08ce5c538h

+dd 0dbbe202bh

+dd 00a0de50dh

+dd 0015bd106h

+dd 0ad8476e9h

+dd 0acd981b3h

+dd 0b280d331h

+dd 0ea47f3a7h

+dd 0aa0fd8b7h

+dd 0cfdff3dch

+dd 01ee3cb3eh

+dd 0281620a9h

+dd 029fa8622h

+dd 08df5f526h

+dd 09da968dfh

+dd 0275c0217h

+dd 01bddb61ah

+dd 0def5f95bh

+dd 04f19d250h

+dd 0475afc1ah

+dd 00b977a23h

+dd 0360a1852h

+dd 0040598ech

+dd 064d62943h

+dd 0d254f7c6h

+dd 0c9879152h

+dd 0a65c66a0h

+dd 0c5ca0f69h

+dd 07b4c3cf1h

+dd 0649c31f2h

+dd 060f441e5h

+dd 03319348ah

+dd 0ac278f14h

+dd 0eb49f246h

+dd 044d2d4cdh

+dd 078469388h

+dd 0d53aedb4h

+dd 03c505f98h

+dd 0b8fd0388h

+dd 068ed0994h

+dd 02452ac22h

+dd 081345262h

+dd 0b9a8a801h

+dd 0d2ddf936h

+dd 0c60f9dbdh

+dd 07529191eh

+dd 03990b67eh

+dd 0202b63afh

+dd 0109e6b56h

+dd 01abd8092h

+dd 082216ddeh

+dd 07c11c774h

+dd 06c484256h

+dd 03fd2dc49h

+dd 017680c19h

+dd 0ef388a3bh

+dd 0096a946bh

+dd 08eab8094h

+dd 0d63fb175h

+dd 09855b76fh

+dd 0c30975e3h

+dd 09d0ffd77h

+dd 0e60a9665h

+dd 0417cbbfah

+dd 0a45b675fh

+dd 00bf737a6h

+dd 059f69f6ah

+dd 0d6d88bc9h

+dd 0c0b45917h

+dd 08e036619h

+dd 030cdf94ch

+dd 014606550h

+dd 0021db9aeh

+dd 0f5f31e6ch

+dd 029905b3dh

+dd 0bf2e03d6h

+dd 0a99bcd13h

+dd 0563ea6c1h

+dd 06323a712h

+dd 0ee6546d8h

+dd 0745b6e10h

+dd 0638ba490h

+dd 064452686h

+dd 00f92117eh

+dd 001a80ebdh

+dd 0f11c1066h

+dd 032f68946h

+dd 0ccdcb87fh

+dd 076ba835bh

+dd 0f5744aa7h

+dd 0dbccc778h

+dd 0c773f46fh

+dd 04f9f61adh

+dd 0b56d736fh

+dd 04d90b2fch

+dd 0bf2ba19fh

+dd 0695f135dh

+dd 06e79cad6h

+dd 081f252cfh

+dd 042504e71h

+dd 033e27da9h

+dd 0abe3936bh

+dd 065cdbca3h

+dd 04a8bd791h

+dd 0dbcac254h

+dd 00862f35eh

+dd 00fa652eeh

+dd 093f6748fh

+dd 01e186c1bh

+dd 0d7ab08efh

+dd 066734b2dh

+dd 0943f4e67h

+dd 0645428d1h

+dd 0b8527daeh

+dd 0b497ec76h

+dd 084de5c2ah

+dd 0c8ab5863h

+dd 097648d5fh

+dd 0629dd9c4h

+dd 045449843h

+dd 04f9d5a12h

+dd 0c857c053h

+dd 046b5861fh

+dd 040cb5a1ah

+dd 0ca9d89ceh

+dd 05fc68ea3h

+dd 067f8360ah

+dd 0855401a0h

+dd 0618c5b40h

+dd 0db1b6946h

+dd 018b4ac19h

+dd 03e63b51fh

+dd 0929b2c8bh

+dd 0227863b2h

+dd 09af058c5h

+dd 039f286ebh

+dd 08729d2bbh

+dd 0a09ae22dh

+dd 008e12250h

+dd 07447b713h

+dd 0d93575c4h

+dd 08096bbd5h

+dd 05a2073f3h

+dd 035c52383h

+dd 0f2566273h

+dd 0141773a1h

+dd 08ccd04dch

+dd 01c3dc9f7h

+dd 0337875d2h

+dd 050f6b82fh

+dd 0b6c569dch

+dd 09baa70c5h

+dd 0eb331626h

+dd 0f6db60e7h

+dd 0779e935fh

+dd 01622f129h

+dd 0ffbd1176h

+dd 00ea5c3c5h

+dd 02b995b36h

+dd 072c00170h

+dd 06da87a3ah

+dd 09916abd9h

+dd 0cda30112h

+dd 096aff7eah

+dd 03a12d33fh

+dd 033928bfah

+dd 08ba4a1d8h

+dd 0160f78fah

+dd 009c5c6a1h

+dd 038a21d68h

+dd 02c08166dh

+dd 0ff2e861dh

+dd 01d6f260dh

+dd 0a774f211h

+dd 0abe4c92bh

+dd 02b31e81eh

+dd 0b1412c6eh

+dd 09634545dh

+dd 0bc425a17h

+dd 0fbb66f48h

+dd 0036f81b2h

+dd 0117b836ah

+dd 0e589b839h

+dd 04a4f11b0h

+dd 04f6debcbh

+dd 075a4dd46h

+dd 0a0e70c51h

+dd 0bbd9ae51h

+dd 04050dd11h

+dd 0dc68b48dh

+dd 06fffb3e1h

+dd 0d079c720h

+dd 036a1f83eh

+dd 006555d35h

+dd 0e7170d37h

+dd 03af079f5h

+dd 026a8b479h

+dd 02a76fdbeh

+dd 031a30b9fh

+dd 039b3eb09h

+dd 00e9c78b4h

+dd 011e020e9h

+dd 0410f116fh

+dd 05d2fe10eh

+dd 02fd8b204h

+dd 081757b9ah

+dd 0394cefb7h

+dd 083975b21h

+dd 0dcc10215h

+dd 07091e42ch

+dd 0a2b510adh

+dd 0b4d4dce7h

+dd 0ed0c4183h

+dd 0832111f7h

+dd 074347573h

+dd 05c7b8b59h

+dd 0a01c09d8h

+dd 06b7009aah

+dd 01fda2b90h

+dd 01f035533h

+dd 0b0170211h

+dd 042fcdf40h

+dd 0fe54cea6h

+dd 0ad868f00h

+dd 021ef6fc2h

+dd 0a8eefc04h

+dd 0dfa5dbffh

+dd 0c5c68ebah

+dd 05b0e9d51h

+dd 04c4bf124h

+dd 077d31a34h

+dd 0797c5cdah

+dd 000f6689ch

+dd 0854d7bd9h

+dd 0723913e9h

+dd 0a79197e9h

+dd 0475092d4h

+dd 09b5f0472h

+dd 0b65ac0c4h

+dd 08710a31fh

+dd 0911e03a2h

+dd 0bb64aa60h

+dd 08b7ae7dah

+dd 0791948feh

+dd 079320587h

+dd 022eb611ah

+dd 09b8c2b40h

+dd 0a3e7921ch

+dd 0f7485274h

+dd 0d224d732h

+dd 0e1b38290h

+dd 0d27069fdh

+dd 0fef934eeh

+dd 0a28cb448h

+dd 0f404ba86h

+dd 0402edb58h

+dd 0ca5f133ah

+dd 07e445aadh

+dd 090077b61h

+dd 01335eda1h

+dd 03d75f8b1h

+dd 0eed74468h

+dd 018c86a86h

+dd 04d1faa6eh

+dd 0130bb86bh

+dd 0dcc7ba6eh

+dd 0da702d18h

+dd 07e40868bh

+dd 03cb41808h

+dd 007ef6de3h

+dd 0cadf2180h

+dd 0bf90062eh

+dd 09dc393b1h

+dd 0c8633d9dh

+dd 082d38f00h

+dd 0a92b9228h

+dd 05fd93804h

+dd 048007070h

+dd 020a1ed8fh

+dd 0c768d32eh

+dd 0e151f67eh

+dd 005d99168h

+dd 06f6c5d34h

+dd 03000a1e6h

+dd 00a0426edh

+dd 070ad8811h

+dd 07b62408fh

+dd 0a7437d49h

+dd 02b9144f6h

+dd 0cb79197dh

+dd 003a91061h

+dd 042c9cc51h

+dd 0151a838ah

+dd 09f05c0c9h

+dd 04fe46d98h

+dd 0ca91a9d9h

+dd 0312d532ah

+dd 06406894ah

+dd 050136297h

+dd 0f574bfach

+dd 0d62cfa4fh

+dd 0f42af2f1h

+dd 014573af4h

+dd 0fdce9499h

+dd 0eb805c45h

+dd 08859c132h

+dd 054106933h

+dd 0c629713eh

+dd 0a5dcdeddh

+dd 0b0a84c87h

+dd 08fdcc956h

+dd 092c94dedh

+dd 02757e99fh

+dd 090c8cff1h

+dd 027adcdf2h

+dd 09c86e0d7h

+dd 0e751a1a3h

+dd 0acdfc34ah

+dd 0cd6c8a26h

+dd 01d0161cch

+dd 018a01132h

+dd 07e69920fh

+dd 05b17fa56h

+dd 035cd0e15h

+dd 05e096242h

+dd 0a2dec636h

+dd 080105586h

+dd 0848610afh

+dd 0ecc81d21h

+dd 0c5044ebch

+dd 0b5b5a569h

+dd 0ed525603h

+dd 0dbf770c4h

+dd 0fe3d6fbch

+dd 09ca5eb58h

+dd 01cba1d59h

+dd 0fce59e2ch

+dd 09b823d10h

+dd 01ec0df8eh

+dd 01084c8a9h

+dd 01003de7ah

+dd 00fa41168h

+dd 01273c0afh

+dd 05a39b2b6h

+dd 0de334836h

+dd 054d44bdah

+dd 03e134353h

+dd 0d3af66eah

+dd 039ac248ch

+dd 04b823fd8h

+dd 034eb3620h

+dd 030723d24h

+dd 0e7ed543ch

+dd 060c7d4c6h

+dd 0957427d2h

+dd 02a8c9436h

+dd 09f2ef161h

+dd 030c58528h

+dd 0cafa954eh

+dd 06aa27f83h

+dd 0ecda0bf2h

+dd 091de50bfh

+dd 05d1492b0h

+dd 0913261cdh

+dd 0e6b0269eh

+dd 0c32d8002h

+dd 0271d7d37h

+dd 069cd6548h

+dd 0cef4576fh

+dd 088d107a4h

+dd 0ec4659cbh

+dd 07a15bee7h

+dd 005576c9bh

+dd 0b287a3d2h

+dd 07197ecdfh

+dd 0e7b98a9ah

+dd 02cfbe928h

+dd 0f504103ah

+dd 0234561dah

+dd 0a51e1a81h

+dd 05039b3f0h

+dd 0a0675ddbh

+dd 04051c9cah

+dd 04f9eb182h

+dd 011f295fch

+dd 0f7bdf19dh

+dd 0a01e9710h

+dd 0b40f5c66h

+dd 06f08710eh

+dd 027a3ac67h

+dd 09ea336f8h

+dd 0851c06cch

+dd 028ce99a8h

+dd 0b05fd954h

+dd 0977b0acdh

+dd 0df4678beh

+dd 0aae4b138h

+dd 04652687dh

+dd 01a02f8f5h

+dd 0d3d3c96bh

+dd 032eb227bh

+dd 0e2ab32a6h

+dd 05703fd9ah

+dd 04575e556h

+dd 0c6b55749h

+dd 0aa80fe6eh

+dd 0813cec63h

+dd 07850d76ch

+dd 0048c76e6h

+dd 056ea1d3bh

+dd 03595f131h

+dd 00ba6928eh

+dd 0d310ceebh

+dd 05f40a315h

+dd 0035f9d26h

+dd 0149bf9b6h

+dd 0daaa7ca1h

+dd 08fbf870ch

+dd 083fe286ch

+dd 0376d5c8bh

+dd 0e22ad00dh

+dd 07bbd25e4h

+dd 053e1192ch

+dd 016b759c2h

+dd 008015ebdh

+dd 08fd1e61ch

+dd 0488a9472h

+dd 055f17200h

+dd 02360f9a4h

+dd 0f0559cbbh

+dd 01c85b3e1h

+dd 0e992f031h

+dd 0c7210289h

+dd 074db13aah

+dd 04ad089cbh

+dd 0d2b5d020h

+dd 075a86998h

+dd 00d3af278h

+dd 04ef4d185h

+dd 0725bd643h

+dd 01fde57dbh

+dd 0dd2bc294h

+dd 0f460cf5bh

+dd 0b6ad1421h

+dd 068d268c8h

+dd 0d13ba098h

+dd 043bc8e3eh

+dd 00852da29h

+dd 0a5720f62h

+dd 0108e86eeh

+dd 0ade9b157h

+dd 00b53c713h

+dd 0aa5700f2h

+dd 04a98c120h

+dd 04c11fc0ah

+dd 08d30c09fh

+dd 0b77eeeedh

+dd 0e0eec721h

+dd 0b9781041h

+dd 02160e228h

+dd 0d910c275h

+dd 0c133475fh

+dd 0d1f1b8e1h

+dd 0cb080a26h

+dd 0f0009d50h

+dd 091563cd0h

+dd 0566bcc4dh

+dd 079d4596eh

+dd 04732406ch

+dd 073737305h

+dd 089c74f7fh

+dd 0ee34af69h

+dd 071c9be11h

+dd 015ce85cah

+dd 0662ae53fh

+dd 029720de0h

+dd 0d2dc5ebbh

+dd 0e21584d0h

+dd 0cdb21ed4h

+dd 09ea3853fh

+dd 033b24041h

+dd 0a9d76766h

+dd 0a67e85d3h

+dd 07306f809h

+dd 0459831ebh

+dd 0566d9452h

+dd 07c84702eh

+dd 07c31a424h

+dd 02b5c52c5h

+dd 071644575h

+dd 0510b7445h

+dd 02b0f81fbh

+dd 0bfa3e8c0h

+dd 0d531b576h

+dd 03b3a689eh

+dd 05ababf3fh

+dd 09399e02ah

+dd 03f802196h

+dd 0cf5b8356h

+dd 072f95bc9h

+dd 087145319h

+dd 052c2f95bh

+dd 03207eccdh

+dd 0ee875f1bh

+dd 049d97362h

+dd 022af5fd8h

+dd 053700ad5h

+dd 01f0e4322h

+dd 0ded814e0h

+dd 04f675075h

+dd 0eaf09ad6h

+dd 0f12b19b3h

+dd 083d6ed0eh

+dd 05ed12bd2h

+dd 02d08c8d1h

+dd 00764071eh

+dd 08bc181a0h

+dd 0ff16efe7h

+dd 0c7595050h

+dd 09b50f76eh

+dd 065c460b3h

+dd 05f4b5dc5h

+dd 042501a3eh

+dd 0e05dc64ah

+dd 0562e75c0h

+dd 071658954h

+dd 0a6f72bc7h

+dd 01ec6df5ch

+dd 0812f998ah

+dd 0331a9055h

+dd 04e8f731eh

+dd 00719b08fh

+dd 08d033bddh

+dd 06d18ef5ch

+dd 00989d438h

+dd 07eaf5bcfh

+dd 08220defah

+dd 0d16a98c3h

+dd 0ba57ca13h

+dd 087fc7874h

+dd 0ab7ec885h

+dd 0f6596db5h

+dd 06aec8adeh

+dd 04d67d24fh

+dd 03914508bh

+dd 0d6797f6eh

+dd 008e981b5h

+dd 0bdf6b693h

+dd 0a125a4f4h

+dd 0fe73bcf9h

+dd 0ec3a1ac3h

+dd 073d8ee54h

+dd 00fe121d3h

+dd 07d74ea43h

+dd 0316f4713h

+dd 0d0ad638ch

+dd 0bb47c73bh

+dd 0ac0391d1h

+dd 0a1652999h

+dd 0fb71a812h

+dd 0fb4f5683h

+dd 0d9824637h

+dd 0d3493b26h

+dd 0ef67a4b5h

+dd 0072e6a89h

+dd 026cc7705h

+dd 0386129cbh

+dd 0655cc60ah

+dd 07da45127h

+dd 040a4cd07h

+dd 01c9805a2h

+dd 0275d89fah

+dd 021dc47a7h

+dd 018b86816h

+dd 02ccf105eh

+dd 0290c87a9h

+dd 057289324h

+dd 090622a75h

+dd 0547e9065h

+dd 0b598664fh

+dd 011628e5ah

+dd 028e04aceh

+dd 04d879450h

+dd 01b787c98h

+dd 045637291h

+dd 0fe4cb4ffh

+dd 09ac9e87ch

+dd 0ca1b37d8h

+dd 05df8aa33h

+dd 0e5f5fd23h

+dd 05b0a7522h

+dd 08162fa52h

+dd 0a41aaaa2h

+dd 07ec55be2h

+dd 0ec225a0ah

+dd 06dfc397bh

+dd 056f70054h

+dd 02b2b9bebh

+dd 05cd97845h

+dd 09151f14ch

+dd 0873c202dh

+dd 092d0643ah

+dd 0e1de318fh

+dd 000d48d53h

+dd 0dce4f4a6h

+dd 0ac4e5d46h

+dd 09ee5404dh

+dd 08ea07942h

+dd 04ec07f30h

+dd 0164fc666h

+dd 08747f688h

+dd 03cc9f717h

+dd 0cafc2985h

+dd 029357049h

+dd 0779b1a76h

+dd 06da7d2a1h

+dd 01fdd869eh

+dd 08e12f76fh

+dd 0b5405e55h

+dd 0f5998fa0h

+dd 06bb17884h

+dd 01b077d71h

+dd 0b4972e5fh

+dd 0e053aa02h

+dd 0fd16b131h

+dd 0cbfc8c7fh

+dd 09ffaf20eh

+dd 0ca11cb65h

+dd 07ed9e0f5h

+dd 0aa55cb1bh

+dd 08cc3db1eh

+dd 0b0656e18h

+dd 0b9d4eccch

+dd 00f80ac73h

+dd 00131767ah

+dd 0e9a51c46h

+dd 0e4f3668eh

+dd 0a498bb53h

+dd 0817da29eh

+dd 078cd04f7h

+dd 06361a36ch

+dd 0b2fdb40dh

+dd 05a4b0345h

+dd 01d8470c3h

+dd 084feb60eh

+dd 0660296c2h

+dd 0ad1b56f4h

+dd 060fd3254h

+dd 0516bc0cah

+dd 054050c87h

+dd 0fe1e5f5eh

+dd 07ae84d13h

+dd 06407e1a3h

+dd 01d9163d1h

+dd 071832ec1h

+dd 0ce033c95h

+dd 041408c7ch

+dd 07acd7f73h

+dd 0251cc6aah

+dd 06991a2c8h

+dd 033d133deh

+dd 0b73785a4h

+dd 05da29031h

+dd 077267de2h

+dd 001e8823ch

+dd 0b88f8f0dh

+dd 07a7c272eh

+dd 0f7372ce2h

+dd 03c77c8e5h

+dd 0be1cf681h

+dd 0a4d05cf0h

+dd 03089c2b5h

+dd 0336cc07fh

+dd 0b38b0173h

+dd 053edd767h

+dd 094d38c7eh

+dd 0133e1500h

+dd 00dca472eh

+dd 06d9ef755h

+dd 0837e7f0ch

+dd 062c189fbh

+dd 061e3abe3h

+dd 099b0086ch

+dd 0a52fc42fh

+dd 0d7873e2dh

+dd 0b86a53bch

+dd 06a46cee6h

+dd 0ef413970h

+dd 0d76d225bh

+dd 04facd927h

+dd 084dbba90h

+dd 0353465ebh

+dd 060529fcah

+dd 0c9905dc9h

+dd 0f8737505h

+dd 0806bd3afh

+dd 0ff0c4496h

+dd 0b658ddc7h

+dd 0df69708eh

+dd 0f6da34d0h

+dd 033942c4dh

+dd 0a5ce5cdah

+dd 07d013b53h

+dd 079c3329fh

+dd 038da1f9ch

+dd 0abd017b3h

+dd 00cf03066h

+dd 09ab9c655h

+dd 04ba793c5h

+dd 0d7478494h

+dd 0b8a4fa15h

+dd 060d25e6ch

+dd 005819285h

+dd 02a314992h

+dd 007d46f12h

+dd 0271c0b18h

+dd 02f983f24h

+dd 0db71ec1eh

+dd 0789df697h

+dd 05cb7f6feh

+dd 0e5ed101dh

+dd 0e9d45d7fh

+dd 083e469d3h

+dd 09f3f11afh

+dd 0551008a8h

+dd 02a3244f0h

+dd 03601b489h

+dd 0a53120c4h

+dd 0e2432abah

+dd 06350d283h

+dd 0cb4489bbh

+dd 0f72ff0cfh

+dd 0b4d1e620h

+dd 0069787ach

+dd 095bfb8c1h

+dd 09f4c9621h

+dd 06ab85bb2h

+dd 0c2725be5h

+dd 061343330h

+dd 0e19089e9h

+dd 0e10fb625h

+dd 005e0a147h

+dd 03c5e69f8h

+dd 07308b8c4h

+dd 00c4ecd6fh

+dd 0bb945183h

+dd 00d49196fh

+dd 02392bb6ch

+dd 01e0253eah

+dd 0d83b41a1h

+dd 06e225ee7h

+dd 012b33116h

+dd 01ffe4688h

+dd 0693f26a6h

+dd 0f18425fch

+dd 00fc90de0h

+dd 0da794135h

+dd 0d0eec6f5h

+dd 0f1c5febbh

+dd 0e7c32bbch

+dd 02b6ec1e5h

+dd 06177ac1dh

+dd 0c5434f3fh

+dd 0677af034h

+dd 0675f4073h

+dd 071da47c9h

+dd 0e42d96ffh

+dd 04cba8629h

+dd 0dc666fefh

+dd 023e68006h

+dd 0b521db44h

+dd 0c118106bh

+dd 023114f08h

+dd 0a33d9eb3h

+dd 0a2008243h

+dd 0f19ca057h

+dd 0f104e3d3h

+dd 07b5ffe4dh

+dd 05b495d9ch

+dd 0703cc169h

+dd 01313f8d1h

+dd 0d989feabh

+dd 0c64cd910h

+dd 0675c7612h

+dd 024c8ceffh

+dd 089ef04cdh

+dd 0436bdc6ah

+dd 0d01c4478h

+dd 041e587deh

+dd 087df2964h

+dd 041c56f11h

+dd 0632ea3bah

+dd 0af0f1242h

+dd 0a9407647h

+dd 014cda821h

+dd 049b8e05ch

+dd 0c025a0edh

+dd 017f89ea8h

+dd 01fa0d49fh

+dd 079a24114h

+dd 0aabef508h

+dd 087591903h

+dd 0b9386be4h

+dd 0111a7d0fh

+dd 02d8c1368h

+dd 0a73e45a4h

+dd 0ff65a58eh

+dd 030a737f3h

+dd 03f817590h

+dd 096a15a53h

+dd 041e4d652h

+dd 00e01113eh

+dd 0acca967bh

+dd 0b913842eh

+dd 094b527dch

+dd 08e7a289bh

+dd 09b2248bah

+dd 08cf9fcabh

+dd 088e21175h

+dd 09af0a25ah

+dd 049dc9c79h

+dd 08087a712h

+dd 01dffb762h

+dd 058430a2dh

+dd 01e2f4c57h

+dd 0a06f9744h

+dd 095c531e8h

+dd 0024b76e2h

+dd 0438be285h

+dd 0cc1206f1h

+dd 0ddc3262bh

+dd 0b3c4b01ch

+dd 012a65db1h

+dd 0feedfb9fh

+dd 08f6bde7eh

+dd 0e629929ah

+dd 06f25b76bh

+dd 09c75d6c7h

+dd 09836140ah

+dd 098c54267h

+dd 0969de8a3h

+dd 028b892eeh

+dd 0ee282ba9h

+dd 0d16aa413h

+dd 0890b3b7ch

+dd 056b05e33h

+dd 0e282da9dh

+dd 0441f253ah

+dd 00f5a30f6h

+dd 0206779dfh

+dd 0d29f4e35h

+dd 0b7b90487h

+dd 07427f3d4h

+dd 09e164593h

+dd 0c45dab7ah

+dd 08871f008h

+dd 03096c49bh

+dd 0c1ddd075h

+dd 0502d019fh

+dd 0da69460fh

+dd 09a57ff86h

+dd 09f7abb8ch

+dd 00914e4ech

+dd 0d6c4c29bh

+dd 0f4e9590ah

+dd 089f9305dh

+dd 09fe236aah

+dd 06d509618h

+dd 0f9670752h

+dd 076d3d11ch

+dd 039bc1b40h

+dd 04f65b3c8h

+dd 0e414265bh

+dd 0830fafb8h

+dd 07707c874h

+dd 02ce85da5h

+dd 0059c24fch

+dd 0cb8f8071h

+dd 06d3598b3h

+dd 031e2e8f3h

+dd 0872dc9cbh

+dd 0e055b639h

+dd 0e02a1dffh

+dd 0d4e586dfh

+dd 0994d8527h

+dd 041e5c206h

+dd 0cd60b5bfh

+dd 0a2cd9f2eh

+dd 07c3d47deh

+dd 0ff563af9h

+dd 0c8831cc5h

+dd 07499ab8ah

+dd 0b7238a5ch

+dd 0bdbc3e18h

+dd 0251c1720h

+dd 0b2dd2cebh

+dd 0c8c6dc14h

+dd 0b2ec416fh

+dd 0f6663e7dh

+dd 0685477abh

+dd 053a34c83h

+dd 02b2f61a5h

+dd 02ee95584h

+dd 0feb71034h

+dd 0e35de415h

+dd 07d454ee6h

+dd 061dad262h

+dd 07c51083bh

+dd 0d947b0d5h

+dd 07db762b2h

+dd 071afac81h

+dd 0aa875759h

+dd 0086d5f5eh

+dd 09d832d0eh

+dd 0fa3788fch

+dd 0a333071fh

+dd 00ef6aeddh

+dd 024f8b3deh

+dd 08d759082h

+dd 00b530533h

+dd 0f5e2282fh

+dd 0d3f51407h

+dd 0c61516a2h

+dd 0d958ed90h

+dd 0b3541a95h

+dd 0ec520d32h

+dd 08c4e6b4bh

+dd 0d65a6f11h

+dd 04bb33321h

+dd 01aab0aach

+dd 0bc20fcf1h

+dd 0ecce6391h

+dd 061e46a5ah

+dd 026cbcb72h

+dd 0c50820dfh

+dd 02bb3eff1h

+dd 0a48f442bh

+dd 0b3702effh

+dd 0301b2e0bh

+dd 00d49cea5h

+dd 02244f2f5h

+dd 0a43b8c34h

+dd 05fe563beh

+dd 07285622ch

+dd 04d7b3262h

+dd 03bdf1fc6h

+dd 03e835196h

+dd 0427fdd16h

+dd 0d0adfe21h

+dd 0912fb69dh

+dd 035986676h

+dd 06ce59bcch

+dd 0e7909e85h

+dd 0c8c32976h

+dd 0ea917a88h

+dd 08896f4ffh

+dd 06ff06df0h

+dd 0aabf8b79h

+dd 0d7c7a68ah

+dd 06fd9ff22h

+dd 0e3622e59h

+dd 07c344408h

+dd 091b9fd94h

+dd 0338db2bah

+dd 09e9b59fdh

+dd 09de655c7h

+dd 059f5f70fh

+dd 04985a080h

+dd 00992d61eh

+dd 0646e2dadh

+dd 0a1ad6146h

+dd 09a706348h

+dd 0df300c0ch

+dd 009362cd0h

+dd 0dc3812bbh

+dd 0d5fc6ac9h

+dd 02ee6d3aeh

+dd 0d371ebd5h

+dd 06f03fc5eh

+dd 0cfe2fbadh

+dd 004896dcbh

+dd 00a028b6eh

+dd 0f6c7615bh

+dd 0cb77de7dh

+dd 00f97f59eh

+dd 0055bed3eh

+dd 00992bbb7h

+dd 075736d5fh

+dd 0fbbf0a6bh

+dd 07f7d0520h

+dd 0f192b430h

+dd 053f1b2bbh

+dd 049ec0392h

+dd 0314f8941h

+dd 09fb95cbdh

+dd 09849e73eh

+dd 0570a2e91h

+dd 056f77f82h

+dd 0e63be3b8h

+dd 0ac16fc44h

+dd 09e21e349h

+dd 0efe8d0c2h

+dd 07e3fe6feh

+dd 0cd01e0feh

+dd 0e282e31dh

+dd 0b0e49729h

+dd 0e1402a75h

+dd 098e75281h

+dd 06a297836h

+dd 0cb31eb0bh

+dd 04f0df95ch

+dd 06fafe4cdh

+dd 0b443dabbh

+dd 070190baah

+dd 008cb1c4fh

+dd 01ba456fah

+dd 0a1838ed5h

+dd 0b121bbebh

+dd 095fc7a60h

+dd 083dd3149h

+dd 0a51551f1h

+dd 06f49288bh

+dd 0e19498e5h

+dd 0520830beh

+dd 096efdb8fh

+dd 0203ed910h

+dd 0c38d2067h

+dd 037870d37h

+dd 0e09aa02dh

+dd 0a9a4a1eah

+dd 0ec3ea916h

+dd 0b4537edeh

+dd 003143240h

+dd 040436981h

+dd 062891656h

+dd 0f44d6b90h

+dd 0213d7236h

+dd 05de29457h

+dd 093f9da19h

+dd 0efdf2993h

+dd 047b0b5cbh

+dd 0bd154153h

+dd 0baa48b2bh

+dd 05d193705h

+dd 0bb1ab326h

+dd 045f0340fh

+dd 05a6848ach

+dd 0b2c0eef7h

+dd 0e5249d40h

+dd 0e0a4109bh

+dd 07f417a1bh

+dd 01801c6a1h

+dd 0c09b0d3ch

+dd 0f032a0c9h

+dd 0450a749fh

+dd 0817cc1f6h

+dd 0aa08f8a0h

+dd 06439864ah

+dd 0c9020a02h

+dd 00e546eedh

+dd 0831b9507h

+dd 05abd6497h

+dd 01171d268h

+dd 0445dc7a7h

+dd 0d81e5a3fh

+dd 06f3358b9h

+dd 054146926h

+dd 05aa67743h

+dd 00beb741bh

+dd 063710afeh

+dd 0782d076dh

+dd 04f58c3d1h

+dd 0feb45223h

+dd 0fdd5fa1ah

+dd 0ea9ae70eh

+dd 0304ad81bh

+dd 0fca9b843h

+dd 029430073h

+dd 0308a1a48h

+dd 094d3b55bh

+dd 07f8019c4h

+dd 08173ff1fh

+dd 08c9f83abh

+dd 08187f834h

+dd 040050463h

+dd 070228781h

+dd 03b30d738h

+dd 0fed93b90h

+dd 04821b246h

+dd 055a48a6ah

+dd 0f364f05ah

+dd 028ee52e2h

+dd 074ef1baeh

+dd 02170e488h

+dd 0fd5ae11ch

+dd 092c269b9h

+dd 0204562f4h

+dd 0b7159442h

+dd 00a1d7ca4h

+dd 09818f89ah

+dd 044df59d0h

+dd 046995355h

+dd 00256191ah

+dd 0ec251097h

+dd 0806152cfh

+dd 0382b91cch

+dd 0893290f0h

+dd 04b85eca6h

+dd 09c3efbefh

+dd 0e52f49efh

+dd 0a6687fddh

+dd 026a8b577h

+dd 0c2d521cbh

+dd 05c9b5a4bh

+dd 0838965d6h

+dd 0daa55b57h

+dd 0a05de0fbh

+dd 036a5d6dbh

+dd 06e2275a3h

+dd 0e2d8bd51h

+dd 0be6c3073h

+dd 0aefeabf8h

+dd 01956e427h

+dd 0eb281538h

+dd 0ec58ca21h

+dd 0d4dde7bfh

+dd 0f402804eh

+dd 03f27ad92h

+dd 09f86d174h

+dd 00f99236fh

+dd 074017d69h

+dd 09a084e81h

+dd 0a6625e47h

+dd 048982debh

+dd 0e16797cbh

+dd 0d2366b76h

+dd 07106606eh

+dd 06488d21fh

+dd 0edafe78bh

+dd 0318362e8h

+dd 0516730adh

+dd 0e4e41a21h

+dd 0fd6bfa25h

+dd 0053f14cah

+dd 045c80069h

+dd 06bbfa0f9h

+dd 0c320a03fh

+dd 037b309b7h

+dd 05260171eh

+dd 001c54d7dh

+dd 0e1fd25f6h

+dd 0999af730h

+dd 01d3ea1e8h

+dd 03a591aceh

+dd 01e73473ah

+dd 01e8c1e2dh

+dd 0c13c32c3h

+dd 0e9d18da5h

+dd 0fadbb8a1h

+dd 0f9652980h

+dd 0a67683b1h

+dd 0ac7bee74h

+dd 0079e2d3eh

+dd 08b74959ch

+dd 081790130h

+dd 0ae97282ch

+dd 0b04d37abh

+dd 09a50fe7fh

+dd 090a5aeb9h

+dd 0815761abh

+dd 05d69479ah

+dd 000fa18e9h

+dd 0712cd3dbh

+dd 03f930a63h

+dd 0c37c423ah

+dd 08c2a11f7h

+dd 014b2ce74h

+dd 0454d5f55h

+dd 018c421c3h

+dd 0524f006fh

+dd 0f946fa11h

+dd 081c4007ch

+dd 005bba400h

+dd 040f4d514h

+dd 0faa01ed1h

+dd 08686743fh

+dd 01dc4402fh

+dd 01adf4bfah

+dd 0c1fa75dch

+dd 05ae807e1h

+dd 022b37048h

+dd 0e22e5ef0h

+dd 02e105291h

+dd 098a71190h

+dd 0a847b67dh

+dd 02c05e0d8h

+dd 0506aa725h

+dd 01e3056eeh

+dd 0ec43d5f5h

+dd 09422fe3dh

+dd 0f034d6bah

+dd 00653de1ah

+dd 08b58fe34h

+dd 0972291b8h

+dd 070b814feh

+dd 0936380d5h

+dd 0cee0ab5bh

+dd 05e60985bh

+dd 0b27f5e36h

+dd 0c90dc225h

+dd 0bd478608h

+dd 0a4007e71h

+dd 08ff6753ah

+dd 096edd95ah

+dd 04bd0f40fh

+dd 0eea54b55h

+dd 0f231fb8bh

+dd 05979704fh

+dd 04fc4ede6h

+dd 045237533h

+dd 0ad73d3a9h

+dd 06943ed67h

+dd 01fd21329h

+dd 05a046cc6h

+dd 0f8eeee61h

+dd 08fa69461h

+dd 0cbfa63d7h

+dd 0769a2717h

+dd 0469b44d5h

+dd 0a4b6baf3h

+dd 09fb08b1fh

+dd 04ddc36a9h

+dd 0cd4a607ah

+dd 08ba9a608h

+dd 0e3e457c5h

+dd 0cad4ee09h

+dd 0e9416ed1h

+dd 0016276f6h

+dd 08b6a7040h

+dd 03cbf0239h

+dd 0ee075337h

+dd 0fe8f45f8h

+dd 0667f2d74h

+dd 0d448855dh

+dd 09d1893e7h

+dd 098f61b4eh

+dd 03f55210eh

+dd 07f63d0bbh

+dd 05cdf02b7h

+dd 0266a6785h

+dd 008c29486h

+dd 07f76e401h

+dd 028c54a3eh

+dd 04d0d330ch

+dd 008070f13h

+dd 0d4f153eeh

+dd 091a295feh

+dd 091d4fea9h

+dd 0ac63594bh

+dd 0517c5ffch

+dd 0d712acb3h

+dd 0ea97e5e3h

+dd 0ac802155h

+dd 042add2e0h

+dd 0606ce8bah

+dd 0331539a7h

+dd 0f5bd3097h

+dd 07d61c89fh

+dd 0dde97aeah

+dd 02ee1d3eah

+dd 00102e452h

+dd 0f9733bbdh

+dd 0d6e57974h

+dd 0b1b2f65fh

+dd 07565461fh

+dd 0b0cb759fh

+dd 04deb2834h

+dd 0a388d3d6h

+dd 0cd19e90ah

+dd 0371922b4h

+dd 025e9fee4h

+dd 0f6371c91h

+dd 0359888cbh

+dd 0819666f1h

+dd 0f328276dh

+dd 07c4fc79dh

+dd 0bde6893ch

+dd 07f605647h

+dd 0ae8a700bh

+dd 0b5012ba4h

+dd 0a52c96bbh

+dd 012818488h

+dd 062ed5c26h

+dd 0321f9a65h

+dd 0008ce339h

+dd 0dee51e27h

+dd 0501cd729h

+dd 00d18da9eh

+dd 082a3ae2fh

+dd 0c164163bh

+dd 054bf5099h

+dd 05ae4b76fh

+dd 03589ca29h

+dd 02788e56bh

+dd 09a17e423h

+dd 0a1ce0553h

+dd 0483849ceh

+dd 0796fa05bh

+dd 01dad48ech

+dd 0d9152588h

+dd 0706a38bfh

+dd 0dce9c8d4h

+dd 03d09588dh

+dd 0cd98f882h

+dd 0806a9aaah

+dd 0ef30653eh

+dd 08586edd9h

+dd 0af3ebb4eh

+dd 0264769adh

+dd 0af2c9c35h

+dd 06da6532bh

+dd 00fbc4a91h

+dd 018298401h

+dd 03080b4d5h

+dd 04ac60519h

+dd 01334b6beh

+dd 0747e0fe0h

+dd 07a3f5f54h

+dd 0208ef09ch

+dd 02ed52711h

+dd 0e7941a40h

+dd 02f3b02bfh

+dd 0c2f6186eh

+dd 0784f4022h

+dd 09fc4dd0bh

+dd 0ea9dafdch

+dd 0b90e0807h

+dd 0aa6a6bb2h

+dd 079cf3545h

+dd 07d646514h

+dd 0949abbc7h

+dd 0bd7e322ch

+dd 0e4e38627h

+dd 007b1391dh

+dd 0bc2188f9h

+dd 0f2c28d1fh

+dd 0f2725dc7h

+dd 0de8d6926h

+dd 0bb1b6934h

+dd 04b3c98d0h

+dd 01ab7bbcfh

+dd 0fc95780ah

+dd 03fd7957ch

+dd 063ddcc93h

+dd 0038c773ch

+dd 097375ca3h

+dd 095d5fcb4h

+dd 0ffe377f7h

+dd 0c627b4d1h

+dd 040f37ef5h

+dd 0e62f6155h

+dd 0eeb36593h

+dd 0c479b2e9h

+dd 004c220deh

+dd 0af34ac85h

+dd 0c690e5a4h

+dd 0d11923f0h

+dd 0f77e6625h

+dd 0fb3f98fdh

+dd 0a60744afh

+dd 0558cb431h

+dd 0d44bcf14h

+dd 059cd5a1eh

+dd 0227c17f1h

+dd 02ef7c98ch

+dd 043757338h

+dd 00b67b2c2h

+dd 0f261c67dh

+dd 0a3fac908h

+dd 047849734h

+dd 00c6e5875h

+dd 0f5b3cf11h

+dd 06d56ca48h

+dd 0c86a218bh

+dd 0df626808h

+dd 00dcc7ea7h

+dd 0081952bch

+dd 00bdfd4c4h

+dd 0dd370375h

+dd 0e39ee09ah

+dd 07ac58b6eh

+dd 04a622ce6h

+dd 04452d063h

+dd 026e92a3ah

+dd 06e001a93h

+dd 0f3e0aeedh

+dd 0834e981dh

+dd 04138f3d2h

+dd 0ffa4ebd0h

+dd 0a3ee2cb7h

+dd 04387adb8h

+dd 0106c9ddbh

+dd 0bea5e5ceh

+dd 0dcb9300fh

+dd 0a48638b7h

+dd 0d4e0a7c2h

+dd 0dba7e28ah

+dd 0ac4d2e2ah

+dd 0104b6da8h

+dd 03091730eh

+dd 03cf23a4eh

+dd 0762139eeh

+dd 0dc644a78h

+dd 08587cdc8h

+dd 088ed1ba7h

+dd 039df5dabh

+dd 012d37786h

+dd 00e0ccc01h

+dd 0649c9b0fh

+dd 01e610116h

+dd 02032d906h

+dd 0d85d4ba7h

+dd 0c0789c47h

+dd 059cb1ac9h

+dd 0c27564fbh

+dd 0e2b9a6cdh

+dd 0f9a24467h

+dd 023b515ceh

+dd 099734a76h

+dd 09cf7ef25h

+dd 066482735h

+dd 082e4f0aah

+dd 0fd817036h

+dd 027615baeh

+dd 021114109h

+dd 0031ec866h

+dd 0ffe499cah

+dd 07765670bh

+dd 024242363h

+dd 0da937e88h

+dd 02ba3dc57h

+dd 0651df580h

+dd 08e863bf3h

+dd 021a93fddh

+dd 0033d8c1ah

+dd 0310d16c6h

+dd 06148b078h

+dd 09a24660eh

+dd 08d4a5a31h

+dd 06c7f79eeh

+dd 02edc0470h

+dd 03a7fc546h

+dd 09c2feee2h

+dd 07050d8e7h

+dd 0f9eee206h

+dd 02b6f3fa8h

+dd 08a9e01ech

+dd 05af0968ch

+dd 0b9c9edf0h

+dd 04d058355h

+dd 0bf60dd5bh

+dd 087bd3907h

+dd 056e5859bh

+dd 047a7d0a4h

+dd 0576536e2h

+dd 0763a6132h

+dd 0ac72daa1h

+dd 081a4c9b0h

+dd 07950206ch

+dd 0001611beh

+dd 08678cceah

+dd 0961b395ah

+dd 0be56a48ah

+dd 0c10fdc93h

+dd 00c3a0ac7h

+dd 0812fa4c5h

+dd 0f0b10150h

+dd 0ce1f51ddh

+dd 0a4d083f1h

+dd 04f8e30f6h

+dd 0f1084f6bh

+dd 076cde213h

+dd 0d5ba6559h

+dd 0d6375912h

+dd 05b8533f4h

+dd 006cc9b4dh

+dd 018fff68fh

+dd 0c9b7acceh

+dd 0dea1455bh

+dd 062c5d786h

+dd 074823ddah

+dd 0c789a1d1h

+dd 0e00c901ch

+dd 08f45e54dh

+dd 0f3aeeab5h

+dd 04afd96dbh

+dd 001514be7h

+dd 0aacb772fh

+dd 09157bd20h

+dd 0136769e9h

+dd 0b423ef42h

+dd 012644499h

+dd 06b5f6d47h

+dd 053489eeeh

+dd 096342c0eh

+dd 09d4294e0h

+dd 0e08e6771h

+dd 0ff9b309ah

+dd 0d60f4d56h

+dd 01f586fb1h

+dd 0db203e81h

+dd 090d83ad2h

+dd 065096e3bh

+dd 029092e24h

+dd 045be596ah

+dd 00e2555f8h

+dd 0cb4acaf1h

+dd 0b663407fh

+dd 091f79d81h

+dd 03d3afcafh

+dd 0d09d7a68h

+dd 037b4ac5bh

+dd 0eca9d8b6h

+dd 01897fc3ah

+dd 038c100deh

+dd 07126cbech

+dd 0d62b443eh

+dd 07cc1a470h

+dd 0c50758a8h

+dd 03ee93424h

+dd 058bad726h

+dd 0811ac2fah

+dd 06bdf88dch

+dd 0b30c139bh

+dd 08e04ec47h

+dd 0c4b81029h

+dd 064a2f0b0h

+dd 0173e53b8h

+dd 059863b17h

+dd 04a082e4ah

+dd 039dc8629h

+dd 07b098f8bh

+dd 0338fe0d4h

+dd 09b8c1ab5h

+dd 07631960fh

+dd 0e5e8a274h

+dd 06cef53bbh

+dd 09dfb5a86h

+dd 08e94180fh

+dd 081a9f3b3h

+dd 0189c4a59h

+dd 0c11c8bc9h

+dd 0ddad0589h

+dd 065c7387eh

+dd 06f2b94a0h

+dd 096b526bbh

+dd 07dcfd73bh

+dd 0ab35e109h

+dd 02bb615e8h

+dd 0927c65deh

+dd 0154268fbh

+dd 04d88bf9ch

+dd 05e14914bh

+dd 0f834901ah

+dd 0a04cd465h

+dd 05e19db1ah

+dd 0765be3e1h

+dd 005238410h

+dd 0423c0c78h

+dd 0e795d5dfh

+dd 0155e6c95h

+dd 01c71f70ah

+dd 04340c880h

+dd 0f6ba5176h

+dd 0d500f6c4h

+dd 0df7a9248h

+dd 0f3fcfe89h

+dd 0a89b5b32h

+dd 05a2c0ba5h

+dd 0da8a78abh

+dd 0a30fb4bah

+dd 0a673ce26h

+dd 0f974c4c0h

+dd 0cc9cb65ah

+dd 013ccf399h

+dd 0518a9846h

+dd 0e2635331h

+dd 0c2290cd8h

+dd 09b13993eh

+dd 0ea2f3ff0h

+dd 0c1405195h

+dd 074aa072ah

+dd 07b285499h

+dd 0c33756bah

+dd 057de723bh

+dd 0f98997b4h

+dd 0dc5fe8b6h

+dd 020be7c93h

+dd 0b8e232a4h

+dd 060593ca5h

+dd 01803e8deh

+dd 03d7ba5e1h

+dd 0681f080ch

+dd 0b790b79bh

+dd 0f3dbf1f0h

+dd 0e6f08cdfh

+dd 0455e9ddbh

+dd 0ec338edch

+dd 036d2163dh

+dd 096dc4b65h

+dd 0a07582adh

+dd 0bb601ebah

+dd 0895129afh

+dd 04ca7633ah

+dd 0ebacb194h

+dd 052cf3ea1h

+dd 05f0f104fh

+dd 05b60a020h

+dd 0ec554303h

+dd 0713a8a35h

+dd 071dc611eh

+dd 0b5d1b8f2h

+dd 0227a2579h

+dd 042f7c251h

+dd 071344816h

+dd 06a5699f3h

+dd 0f8b2b355h

+dd 04de6e308h

+dd 01f5e316dh

+dd 0ad0e4315h

+dd 095418679h

+dd 01c0a819dh

+dd 0ba2b9c4dh

+dd 063668ec1h

+dd 032db84ech

+dd 050e3d065h

+dd 066c84256h

+dd 080a4a392h

+dd 0bd421147h

+dd 0cd5fe6d1h

+dd 09d9670c8h

+dd 08fa1e08dh

+dd 0b5a78b56h

+dd 0b5ae9f2bh

+dd 04661372dh

+dd 00ef33896h

+dd 0aa0962f8h

+dd 02e549369h

+dd 0eea6d67dh

+dd 056be36d9h

+dd 06004619eh

+dd 067c6111eh

+dd 0126d18dbh

+dd 008477704h

+dd 072ed3098h

+dd 0e9a017b4h

+dd 0b0d6d1abh

+dd 09f22efaeh

+dd 03d6e5f23h

+dd 0bf600781h

+dd 0e752a4e8h

+dd 0f7f5d07bh

+dd 06ac71896h

+dd 096d16bfeh

+dd 02d60606fh

+dd 0d68af20ah

+dd 02af6c78fh

+dd 00b25059eh

+dd 01865d867h

+dd 0d8cf0ab4h

+dd 043e3dbe0h

+dd 0166399a3h

+dd 0b8d36f37h

+dd 0d3b1f4a8h

+dd 0d735aefbh

+dd 0692b1a56h

+dd 0fc9e7aach

+dd 03dae66c2h

+dd 09a6f770eh

+dd 05a98f00bh

+dd 06487e2a9h

+dd 085e096e6h

+dd 0337aed52h

+dd 086b0243ah

+dd 0e6ecb26dh

+dd 0462f436bh

+dd 06906f2b0h

+dd 0797c700eh

+dd 019eb6c31h

+dd 0ece62a97h

+dd 02d57cfb2h

+dd 0a5bbd818h

+dd 057e6f51ah

+dd 04f57b77ah

+dd 07e62e24bh

+dd 067f27df4h

+dd 06319ac87h

+dd 019a95fb3h

+dd 0c20a9797h

+dd 0fda20b56h

+dd 0768aecadh

+dd 033b2b53bh

+dd 0e51f5eb3h

+dd 0bffb8951h

+dd 0318a29bfh

+dd 0cd8359bch

+dd 0e1ee69f6h

+dd 09338e324h

+dd 0de17ce79h

+dd 0cfcb2de1h

+dd 0cf095332h

+dd 07d440b24h

+dd 02af3641fh

+dd 03145f173h

+dd 04e8d10ech

+dd 06b809d3ch

+dd 0d8259ff9h

+dd 090e7ff0ah

+dd 0e39de2c9h

+dd 0c151e747h

+dd 08bfa8e08h

+dd 0b7041f5fh

+dd 0b211af4fh

+dd 0ffac5cfah

+dd 0ab197c3ch

+dd 091c7ef35h

+dd 07c756e97h

+dd 0942ac928h

+dd 0391cdb5dh

+dd 0d3391e42h

+dd 022cd25f5h

+dd 00efdac15h

+dd 06e44c259h

+dd 0498e15fah

+dd 050d45befh

+dd 05ff39513h

+dd 0ce14dd35h

+dd 07b84c7a0h

+dd 056eda959h

+dd 0cbb39cb1h

+dd 0e5440377h

+dd 0a54a81e3h

+dd 01e30f1edh

+dd 0d93cd3d0h

+dd 0ab88cd07h

+dd 03156b0d6h

+dd 00c7817ceh

+dd 0afecb783h

+dd 0dde3bdb4h

+dd 022834db6h

+dd 0a952f5c6h

+dd 0838f0cceh

+dd 01de42a1fh

+dd 06b836a8dh

+dd 0b6996236h

+dd 0579e2375h

+dd 0a9d3ba51h

+dd 04585e7b5h

+dd 0993a64b8h

+dd 0198731e9h

+dd 0a75edd02h

+dd 0452b95b2h

+dd 0521e491dh

+dd 093b70febh

+dd 085993e90h

+dd 069bbcb94h

+dd 0f072c986h

+dd 06192736dh

+dd 0aa386ee5h

+dd 04cff7cadh

+dd 0f6fc62bdh

+dd 077516cb0h

+dd 0b9dae575h

+dd 0b72365b4h

+dd 01ed3eea7h

+dd 08c027a97h

+dd 000efe864h

+dd 0637578edh

+dd 0f63bb7c4h

+dd 0fadb2e22h

+dd 0f35b414fh

+dd 04f8194e9h

+dd 03bded4c4h

+dd 08ec5f742h

+dd 085819a8eh

+dd 03f71e666h

+dd 01cbaf66bh

+dd 08c2fc83ch

+dd 0bc9c924fh

+dd 09cf4ecd9h

+dd 0e97bf190h

+dd 03f7d30f7h

+dd 0585d15c3h

+dd 08e45b1c6h

+dd 0bbc5dea2h

+dd 0a96add5dh

+dd 00253eda3h

+dd 0b89b8689h

+dd 08a5bbeb9h

+dd 0e728cc7dh

+dd 0091cb529h

+dd 00b65dcc8h

+dd 08090a5c4h

+dd 00da7deeah

+dd 0a4a4af91h

+dd 0a9cfc02eh

+dd 0b9af5643h

+dd 087679ac8h

+dd 0b6c6d590h

+dd 0095adfdbh

+dd 05b3e041ah

+dd 054c5d58ah

+dd 03ded3537h

+dd 00643272dh

+dd 085c81856h

+dd 0ff2d568eh

+dd 0fe433588h

+dd 01a5dbd8eh

+dd 0502b8252h

+dd 0a4884618h

+dd 04813a812h

+dd 035026c0dh

+dd 012a21792h

+dd 0ab781349h

+dd 09e3db742h

+dd 01e906346h

+dd 0f1aa1c49h

+dd 08c647d4ch

+dd 0195b5493h

+dd 04e63be6fh

+dd 0c2fca42eh

+dd 0283997feh

+dd 07d8ca973h

+dd 0ce5dda5bh

+dd 0220efde7h

+dd 0f04ad0a3h

+dd 01e1befaah

+dd 0cafa51d8h

+dd 099c3f71bh

+dd 0bf4f4ecch

+dd 0fcc69bf7h

+dd 09eac0807h

+dd 03b9a0041h

+dd 0b8ecc83ah

+dd 0497114e9h

+dd 0c67dd7f5h

+dd 041afa1c5h

+dd 05697dcd3h

+dd 0e174f0ceh

+dd 0c0d87975h

+dd 0a617a347h

+dd 097dafbech

+dd 0823a3ab4h

+dd 04b861401h

+dd 0bea89745h

+dd 0c7e3dc9ah

+dd 00b5f1f47h

+dd 0e3307316h

+dd 028f58b85h

+dd 08881937fh

+dd 0027c45c0h

+dd 0a4da49ddh

+dd 019b33ecdh

+dd 071c4ad23h

+dd 059ae36a6h

+dd 0f507d248h

+dd 07d56697ah

+dd 02025d572h

+dd 08b634d20h

+dd 022dce9aah

+dd 0df83d597h

+dd 0f6e5e469h

+dd 04214c0fdh

+dd 03ac10093h

+dd 04f984ce7h

+dd 0061f12b1h

+dd 0f9a1d546h

+dd 03635546fh

+dd 08cb5265fh

+dd 01a861f78h

+dd 092072683h

+dd 09e763f70h

+dd 06fa989dfh

+dd 002737dc4h

+dd 0922f4fa6h

+dd 0173213bfh

+dd 068903ce0h

+dd 0ab645011h

+dd 04233d21dh

+dd 033722e2bh

+dd 0059e2df0h

+dd 05281efa3h

+dd 0286283edh

+dd 04230e5e3h

+dd 0b492b48eh

+dd 07e4ba4bfh

+dd 0a2357854h

+dd 0d988326ah

+dd 0cd2d1173h

+dd 00ab81d03h

+dd 00d5c00a4h

+dd 04dcfff75h

+dd 016ae524ch

+dd 04806289bh

+dd 0207f8075h

+dd 070ae3d1fh

+dd 0c44c0853h

+dd 02edfb318h

+dd 0c5e6b84bh

+dd 05fa7bc40h

+dd 061ea8792h

+dd 06c2cf4b9h

+dd 013cbb131h

+dd 066f72680h

+dd 06d14b3bdh

+dd 0980dbeadh

+dd 0f13b1ca6h

+dd 09f1eb183h

+dd 0e8200caeh

+dd 0f4326a7ah

+dd 0b21b740eh

+dd 0f00b8636h

+dd 0bdb18ee1h

+dd 0394522adh

+dd 07eec2123h

+dd 01d8ab1f3h

+dd 089785884h

+dd 0a5562ce6h

+dd 05f358b29h

+dd 0d92af3c9h

+dd 0a12ff6e4h

+dd 01b32d3aeh

+dd 09fcc3ecfh

+dd 0ac7d5057h

+dd 042a41c31h

+dd 0c082a861h

+dd 0de3c4734h

+dd 06eb48090h

+dd 0193ba047h

+dd 0d56784c0h

+dd 0dd489b11h

+dd 0ee1f5503h

+dd 0ffda7af8h

+dd 073905a84h

+dd 04cd52dcbh

+dd 042715411h

+dd 08862eaa3h

+dd 00ff17621h

+dd 04318b593h

+dd 04ddab6c3h

+dd 0b152fd0bh

+dd 05af9f4f4h

+dd 095cc3cceh

+dd 0e9557e08h

+dd 0a812c6aeh

+dd 012aa963fh

+dd 0980153b5h

+dd 06c14471eh

+dd 0e3035f42h

+dd 03d10f028h

+dd 0717443d0h

+dd 0381c4188h

+dd 0acd18c08h

+dd 0f03a248ah

+dd 041a248d3h

+dd 042bad49bh

+dd 0496cb118h

+dd 08975de52h

+dd 01e3ba0f1h

+dd 0c33a85a2h

+dd 0151edae5h

+dd 060ec7667h

+dd 07736792ch

+dd 0b1adcb1bh

+dd 046058fabh

+dd 09d2c79c3h

+dd 0df0c2dc2h

+dd 0b772b7d7h

+dd 020cdd640h

+dd 02088fa0ah

+dd 0e8f542eeh

+dd 080666385h

+dd 07b0c0893h

+dd 0992b76fbh

+dd 053df5f40h

+dd 065da77e1h

+dd 0df8323c2h

+dd 002394834h

+dd 06ebb468ah

+dd 00049a47fh

+dd 0c26f48bch

+dd 045184684h

+dd 0ea79ce5ch

+dd 0169fd084h

+dd 031274649h

+dd 02c2c5e83h

+dd 0498666bah

+dd 07dd19ce4h

+dd 09a704eeah

+dd 0923002d4h

+dd 06c32dca4h

+dd 0c54d9583h

+dd 047772a07h

+dd 0e831b295h

+dd 0093d38e4h

+dd 0eed58b54h

+dd 060bcf373h

+dd 08669b444h

+dd 0a40e8d75h

+dd 0c7687b5ah

+dd 0affcd7e3h

+dd 0c3e1f83ch

+dd 0aac465b8h

+dd 0d327f2b9h

+dd 0676a671dh

+dd 04a8558e7h

+dd 0570ae9b3h

+dd 035bdc8cdh

+dd 0dabcd81eh

+dd 0c9a0f787h

+dd 0298d7c2fh

+dd 021b2dd32h

+dd 0deb04f6ah

+dd 0eb9b9aa6h

+dd 0bb5a0e88h

+dd 0dd0fb162h

+dd 0f97d97e0h

+dd 0a9f6b85ch

+dd 05446af3ch

+dd 088f8ddc7h

+dd 09b630fd1h

+dd 06ac1c0eeh

+dd 07b143a7ah

+dd 02f30e95ch

+dd 008608136h

+dd 07b21d68bh

+dd 05d2b0554h

+dd 0ea89ed34h

+dd 0ae9e4d44h

+dd 0d999e00ch

+dd 0e5dff64bh

+dd 015cd0191h

+dd 0133e10bch

+dd 05b34ca0bh

+dd 0c3be8953h

+dd 0c0b0695dh

+dd 0877b9fafh

+dd 09eb24dcfh

+dd 0c458718bh

+dd 00ca80b28h

+dd 0565a3099h

+dd 0686398b4h

+dd 03b6c074dh

+dd 0fde98d03h

+dd 02159ca09h

+dd 04452b31ah

+dd 06093a845h

+dd 0f3d725d8h

+dd 094d78a3ch

+dd 093e27823h

+dd 0e79db6bch

+dd 0eb8f1424h

+dd 0b129355fh

+dd 067116ca6h

+dd 02661ce50h

+dd 015843d16h

+dd 04786305eh

+dd 0c6e3ef26h

+dd 092b47aa0h

+dd 0803d5897h

+dd 06b53e86eh

+dd 03fd679bch

+dd 07dac6fd3h

+dd 0e2a1b4b3h

+dd 0077421c9h

+dd 0eb34d643h

+dd 03f7e11f0h

+dd 0aa7e8e5ah

+dd 0be9dc53ah

+dd 03fb7b32ch

+dd 0438ed95ch

+dd 0f5205580h

+dd 0ced33d6ah

+dd 04aefd1ceh

+dd 0ab88d009h

+dd 0172e8e15h

+dd 0aca44c2ch

+dd 04b29b322h

+dd 070904527h

+dd 0be230c51h

+dd 078a60c17h

+dd 0b7e1ba21h

+dd 03ce75e66h

+dd 0f318af51h

+dd 099638638h

+dd 00e18dc56h

+dd 066964208h

+dd 072ae0006h

+dd 00cb9efb1h

+dd 02aea7e53h

+dd 0caede95ch

+dd 0245830e7h

+dd 036459d86h

+dd 0e0572404h

+dd 064fbdc77h

+dd 0b05274feh

+dd 056732ff8h

+dd 01e19e81fh

+dd 0e345671dh

+dd 076f5b524h

+dd 0dd448320h

+dd 0d0ef0740h

+dd 0ac550e46h

+dd 05e56018eh

+dd 042e36bb1h

+dd 057d1dc47h

+dd 0ec024cb4h

+dd 04d39561bh

+dd 015954622h

+dd 03ccc2c23h

+dd 0c66ae477h

+dd 040df93d5h

+dd 084a9e987h

+dd 0789c891fh

+dd 0ae1b4c61h

+dd 04141b9b6h

+dd 07c6580f5h

+dd 0873f3d47h

+dd 078d1f6bch

+dd 0c993c79dh

+dd 00c254c36h

+dd 0f906049dh

+dd 0cbd097d4h

+dd 04057caf8h

+dd 0d91b6d0fh

+dd 06be96f15h

+dd 0dac08e15h

+dd 0a63710a3h

+dd 0b76f217eh

+dd 0ef29db91h

+dd 0a3831cd5h

+dd 0a27a71efh

+dd 0a5ac19aah

+dd 0607b3872h

+dd 02187191ah

+dd 07ccf2fd9h

+dd 0daabd755h

+dd 0304c165ch

+dd 0197241cfh

+dd 0b8b1e8e2h

+dd 09f81381bh

+dd 09ad6b83dh

+dd 087365867h

+dd 066b9801ah

+dd 00a1693deh

+dd 0541e25ceh

+dd 0c2e9adbbh

+dd 0518d2033h

+dd 0f15e1c0eh

+dd 026075b17h

+dd 0e3f2d3adh

+dd 0a64392d5h

+dd 0ab6f67adh

+dd 008154991h

+dd 0066084f4h

+dd 0be71af6fh

+dd 056df4860h

+dd 09c9c1a15h

+dd 0697c0ceah

+dd 01a3c9434h

+dd 0d62965c6h

+dd 03f5fe5a7h

+dd 09afdaf74h

+dd 0cc17d920h

+dd 0c9022cf6h

+dd 0ebe3fdb5h

+dd 01157ee40h

+dd 0d70e1022h

+dd 0fce41be8h

+dd 0b9014483h

+dd 0f9119bedh

+dd 033ce23c2h

+dd 048357714h

+dd 0bc754db2h

+dd 0252b0cf7h

+dd 090c47be5h

+dd 0d2bfea99h

+dd 06a7c4a35h

+dd 030f10351h

+dd 004f9f786h

+dd 00e809abah

+dd 0f4aae824h

+dd 080c90827h

+dd 02d9b1592h

+dd 00cebc278h

+dd 02aa6a527h

+dd 09dd03431h

+dd 08d46e22ch

+dd 0e62dd894h

+dd 0c6675a82h

+dd 0f066d579h

+dd 019869406h

+dd 05f11bb58h

+dd 05014def3h

+dd 01bf25393h

+dd 03926d5a9h

+dd 000868ad7h

+dd 0e6c219ebh

+dd 040792f9fh

+dd 0ce382acah

+dd 049031196h

+dd 09f99e1d0h

+dd 010da299fh

+dd 0e20103fdh

+dd 0cb1ff4bah

+dd 054137653h

+dd 06ccbcae4h

+dd 01b225379h

+dd 0293f0143h

+dd 0077a7d0fh

+dd 0e6e0e7b6h

+dd 025a8c9b5h

+dd 067284ae4h

+dd 035cfc4f1h

+dd 0833ad665h

+dd 09bf4fb0bh

+dd 013b90783h

+dd 0c3a94a2ah

+dd 071b2756fh

+dd 028832cach

+dd 009514869h

+dd 05ad02897h

+dd 0ac973470h

+dd 0ec1e6f9fh

+dd 0fc71febbh

+dd 059a286f7h

+dd 0b448bbf7h

diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/MicrocodeUpdates.inf b/Silicon/Intel/Vlv2SocBinPkg/Microcode/MicrocodeUpdates.inf
new file mode 100644
index 0000000..e5b847d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/MicrocodeUpdates.inf
@@ -0,0 +1,51 @@
+#/*++
+#
+# Copyright (c) 2005  - 2015, Intel Corporation. All rights reserved
+#                                                                                  
+
+# This program and the accompanying materials are licensed and made available under
+
+# the terms and conditions of the BSD License that accompanies this distribution.  
+
+# The full text of the license may be found at                                     
+
+# http://opensource.org/licenses/bsd-license.php.                                  
+
+#                                                                                  
+
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,            
+
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.    
+
+#                                                                                  
+
+#
+#
+#  Module Name:
+#
+#    MicrocodeUpdates.inf
+#
+#  Abstract:
+#
+#    List all of the microcode updates that you want included at build time.
+#
+#--*/
+
+[defines]
+BASE_NAME            = MicrocodeUpdates
+FILE_GUID            = 1FAE4D78-CB33-4f73-8881-A1EA8F5EDFEF
+COMPONENT_TYPE       = Microcode 
+FFS_EXT              = .ffs
+MODULE_TYPE          = USER_DEFINED
+  
+[sources.common]
+M0F30679909.inc
+M0130673321.inc
+M0130678806.inc
+M023067221D.inc
+
+[includes.common]
+
+[libraries.common]
+
+[nmake.common]
diff --git a/Silicon/Intel/Vlv2SocBinPkg/Microcode/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/Microcode/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Microcode/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/E7006X3.EFI b/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/E7006X3.EFI
new file mode 100644
index 0000000000000000000000000000000000000000..d3938f356d356523aba47f4e6dd6e282be1567cc
GIT binary patch
literal 341536
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/UNDI/I211PcieUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/RtkUndiDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/IA32/RtkUndiDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7a7db48dd71db2722681baa580b404b27c742964
GIT binary patch
literal 78368
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/RtkUndiDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/UNDI/RtkUndiDxe/X64/RtkUndiDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c04e61981131f2ede519b89522b6a89639383223
GIT binary patch
literal 92064
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec b/Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec
new file mode 100644
index 0000000..4131517
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/Vlv2SocBinPkg.dec
@@ -0,0 +1,36 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+# Package for support of ValleyView 2 SoC.

+#

+# This package supports IA32 family processors, with CPU DXE module, CPU PEIM, CPU S3 module,

+# SMM modules, related libraries, and corresponding definitions.

+#

+# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>

+#

+#    This software and associated documentation (if any) is furnished

+#    under a license and may only be used or copied in accordance

+#    with the terms of the license. Except as permitted by such

+#    license, no part of this software or documentation may be

+#    reproduced, stored in a retrieval system, or transmitted in any

+#    form or by any means without the express written consent of

+#    Intel Corporation.

+#

+##

+

+[Defines]

+  DEC_SPECIFICATION              = 0x00010005

+  PACKAGE_NAME                   = Vlv2SocBinPkg.dec

+  PACKAGE_GUID                   = 7dbe088f-2e1a-475c-b006-55632c2a5489

+  PACKAGE_VERSION                = 0.9

+

+[Includes]

+  Include

+

+[Ppis]

+  gPeiCachePpiGuid               = { 0xC153205A, 0xE898, 0x4C24, { 0x86, 0x89, 0xA4, 0xB4, 0xBC, 0xC5, 0xC8, 0xA2 }}

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c30e714ac67d96dba819948d823210b86558f550
GIT binary patch
literal 10624
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
a8BX0(d*<w$vwu$eoI`Uu=8T#cI{ytGA^$u8

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf
new file mode 100644
index 0000000..d34bf39
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/CpuPeim.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    CpuPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for CPU module

+#

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = CpuPeim

+  FILE_GUID                  = 01359d99-9446-456d-ada4-50a711c03adb

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimInitializeCpu

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|CpuPeim.efi

+  PEI_DEPEX|CpuPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x27B0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiMasterBootModePpiGuid

+

+

+  gEfiSecPlatformInformationPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.depex
new file mode 100644
index 0000000..4db74a3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.depex
@@ -0,0 +1 @@
+�n�*��4A�V8T��
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c1154aecf2fb54d6856ae9df6c235c748b4b0a85
GIT binary patch
literal 98304
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.inf
new file mode 100644
index 0000000..79dd341
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MemoryInit.inf
@@ -0,0 +1,201 @@
+#/*++

+# This file contains an 'Intel Peripheral Driver' and uniquely

+# identified as "Intel Mobile Silicon Support Module" and is

+# licensed for Intel Mobile CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor. This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#--*/

+#/*++

+#

+# Copyright (c)  2005 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    MemoryInit.inf

+#

+#  Abstract:

+#

+#    Component description file for MemoryInit module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = MemoryInit

+  FILE_GUID                  = D4EE25EA-0B48-43ae-A016-4D6E8B6C43B3

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimMemoryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|MemoryInit.efi

+  PEI_DEPEX|MemoryInit.depex

+

+[PatchPcd.IA32]

+  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|0x00|0x17A30

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|0x01|0x16FF2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|0x01|0x16FF4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|0x01|0x16FF0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|0x01|0x17000

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0x00|0x17A32

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|0x01|0x17008

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|0x02|0x17009

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|0x03|0x16FF3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0x00|0x17A31

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|0x0b|0x16FF1

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|0x0b|0x16FF7

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|0x0c|0x17003

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|0x06|0x17002

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|0x06|0x16FF6

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|0x06|0x16FF5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|0x20|0x17001

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000046|0x17004

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x16FF8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+  gSeCUmaPpiGuid

+

+  gSeCfTPMPpiGuid

+

+  gVlvMmioPolicyPpiGuid

+

+  gPeiCapsulePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiGlobalVariableGuid

+

+  gEfiVlv2VariableGuid

+

+  gEfiMemoryConfigDataGuid

+

+

+  gEfiAcpiVariableGuid

+

+

+  gEfiPlatformInfoGuid

+

+  gEfiSetupVariableGuid

+

+  gEfiMemoryOverwriteControlDataGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/RamDebugLib/RamDebugLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+

+[Depex.IA32]

+#  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Fa$* /Oi /Od /DEFI_MEMORY_INIT /DSMM_SUPPORT  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D LPDDR2_SUPPORT=0 /D DDR3_SUPPORT=1 /D LPDDR3_SUPPORT=0 /D DEBUG_MODE=1 /D SEC_SUPPORT_FLAG /D FTPM_ENABLE /DDDR_DUAL_CHANNEL=1

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..769b1757675d2db405a68807c4c7742257fd642d
GIT binary patch
literal 15040
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
DfH~Uy

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.inf
new file mode 100644
index 0000000..ca923c9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchEarlyInitPeim.inf
@@ -0,0 +1,97 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchEarlyInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Early Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchEarlyInitPeim

+  FILE_GUID                  = D9F5B28C-9FF1-47D6-B503-3DC23BD345FF

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchEarlyInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PchEarlyInitPeim.efi

+  PEI_DEPEX|PchEarlyInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x640

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.depex
new file mode 100644
index 0000000..0e34453
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.depex
@@ -0,0 +1 @@
+sF4e��K���
a
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..57731f80d57939fa1036087575b0b2717db14453
GIT binary patch
literal 22976
zcmb_^3qVw5+W#45fJsLO6O&r1F~=735_7+T+=W6Nxe6kLFgOqb4KrR^t6>LHI8EAa
z-?weMmRq}<WxHD6uF9AOVc->AGqr5fE=$L7ZOjeH+x&m;IWvbDFZKQRTk3Gm``q5=
zdEV!F-pe^Mr<D4)f4cr{&i@>vC6l6Z1)?y4r>TfZqXlEB(`Jft-Nm6M2r2532#QLX
z#kFO)k?Z=Ot`d%pz(-$?476iz0lz7@fTFfUQdG=*io)Z6>}RIKy21fzAHzms7qOMx
zLw{rxWt(ZQu5?twN8>r$9|_z;=~5^vdnQLlSp*cdArG<w_v`5P%(PqU8>={*h(TSj
z?Rvu?FD=MdR7^YMG4v|Agf5WBdNS_t8?H5r48zTm_P@D57j~bCxbTO;==NUEs)_!q
z?SH%Q`zv&YTvAcqbAbCPR&;?`Oy|la?fXCtp5hCeK={Uj3PMv1aw49kxbOyAViq1?
z2OgX(4Z0_E?HPxL+Y1g|`FyB-7?k1sn>c=`Dn2tSj-v7li;8Wz2${MR`XgqelA`Ez
z{mv6GuB7B$3hwTpJkH^b5z^M*0Jc#eZTlte^q4L1AbtFIf5A<7kZI8dVP0R#hA0l)
z&(!f?7Shsv6ugXzhtfWJ0w;k!&Lr{RmVrM1AwSFF?iX=f^f4x$CxAwQE=YILOa#HC
z>xWVVB5CVO=wpb2qW^UhMNeo(6wMw{w3`QqD%!zA!xVj<2e%A-FrsJ-uV^z*u<I~%
z;8o3rs>KAysw(~wRcG*0ygti_s(0|<P*qQ<gLZ|fdWHwL4D26KRm`iphbIVE)dE%D
zBsf;pm>*H~=e!iJZ^4MFkMiJ9Rn<H+Ox0u_+%j-zL{$l|>fJm+xT*`Fs(|2FRb@Y-
z>Ty-jQC{C8BdT`s;80cDd1#obzvRKUh*UdI5U%PYP_>BQSXEPgMAhlM6tB-VqUr=5
z9IEQ4By+i}3{5JA2j3!A`*?zIRc%mp6TzkHJ1BXiS#<M!TEnw@eXbE5ALGHHIvROs
zm^(9g@GaaqnI{O>(FGl&36AKv5&5(p*+xp#f88YWKUD-B<n^r?(X@{ThibZxhlXkT
zA`iYrjIQJf!Zlq3O&1Xy>&<cIn49Zp<k`Kxbt5`X=E0#lo=prI6sF@455C2Sf5;Pr
z>$na&b`l)xP2|xJd2<~v#Or%uMAMZ#I8@U#9vY@;E)Tv%ahk>xglqZ&G?fw@t0~gx
zhcq2{Fz6<)Z^MYDhj?(PrZ4c&Fil_K!MBLe7M>tn(+$wnN^nHe)-GxL4{2)Vg?N1%
zM>L(ngF`hvH#2Bfn5M%#_!bd*oF@p^bR#s~L2zto68uPMdXAUk^=%nZ^>H2?s%kn9
z4O4Xv557g9PUi{2RowzrV+f8_6)TesNOyL||J6<Meqct>QC{En5mgWI;80ax;Gtf!
z_MtU_)yXjPGLLEbYGfuo6r4$qGf(maq@U=3)Wgt-sRF7_wyWHA_*yC5&)h~R`<cH_
zrzm&tHSc)RQ9pA5P2Bo$tBc-M8lWXafW8%=jUm;JBf{-Bgf?ndQGk{Z0oq2Ok&sOK
zTF=2A!)=!ZbY8(^o(Sj?LK_{RB}9N_5?Iu(+<?@D9P~i~4N9HO!G1zuqFvbmN(Bdv
zBv4^M=G`3Z{4~HKc4Y)8qdDkFKvhRTnTBpJpn+Q-Zo5)Ir#gbxryTHYa!c1&lrO?C
zFLda8BgLR__eS1^TWfFRDBRk5BS+)*bZ?{tx7EFoV{mKljU0<xM{lGQH`-RuE_9jh
zpOWQmPqA$c*M19aI*BZ4xnb+0T(^OMKE&wJbEn@=Q8lJ+Y3l$+GvD*_FL3J+7Hyp6
zxZkz`5^QL@n0g4Yoki38J$4qIK0Gl86EMcRB{nx8p0&?|&P!eM`<ZzUkS7;<-Ouct
zN^ma#*C&$8B0jm#d+%wGOb3Z)+wTGHUA+Ono4f*d0`brUsN|)v+2h~^07bAMin4H^
z1ps|RdJslQ#&e*0fIb08b%bmG3+)4FcL*gybeo-m@kv=DWL~?Uc&2=zs;i>s%qLLQ
zeOAJ55guVF=rc?kC}_=yuX+Q%V%HvlsJFPJ6q5__^b-kFh{5d{@;KKlf%8s!o(Ln}
z9h1hy!)&zh%-lyP=ZL+2|5d-cTg}`_P;<oOF&ZfM6Vs`Vr`N#;PLcfH!TTk$HEauT
zfpZjxk)#ZcMLWVdHqdr)G^&$*8S+@NdFB>Jtb)?5P63^n*gYT?UTDvi$8--!XweI9
zM&O97i>MeBs{FHCx|^u6l(3)CL6;i$X=#nA&mk|y_A1uvLpXTW2Jjk;a7pKerv()A
zDo6)KAc^rjs~3)?V2}T@@DTG5NYdT)@>r})mH~$ST3j7fH(bhO0|W1`V13I>n?ih#
zAXjxQM9}o)V`q8ZwvKcBlWJx(i>K$t?w}A(?(RqE4;UAT+_|x6Fdhi2Y3p%DZ;wVe
z4rcF)p}Ma1V)NQ{jfBlkpgSgZGjY<b`%HTrce*acG{^F2>DGzepT{wsAhNy5sq<So
zQ3rugzObi=J}=#xm1ME);czbCprY%^Bud)aiat2+s*bS!%`ap(kj2;-+8~g_c@_os
zZ2Pfi%ZXy<j$od+!m`0taXfHjs!$za?&HDkf%7b_yI&wYggv2{#}KJp)fMh%&J(w=
z5gAYks{EaYd3{t)V2`?=>E*#eC4R|6!jxFggWUsH!<2CI7$TWhf)s@7l~};TcKSrT
z67+}6EFKY5L&8IXYP58deL4JbJCAY?TnnfY!TMvEWG8F57xH;kKI6dwe{iChy*!-j
zb^i{ZI425mwdFd*A?67la)UZ<9_1bg4kgB>o(FrD2f+Pa$d6|7cucrDMjrmIuQlkM
zew+<V;t}p%5vOWDGl+Z$^KZbYfAMfHISUAq|9u1u;b9Z>dpv3vNiCLx69zN>z$3lB
zxPVeE-R#8P!J`5!N6{aX&qL{BA)=Tv9v(tn7hTGv^9a&Im}V%S0UN_*#qe;iFFstU
z?~t3ETSB^FcJa_~L47>j-FuW}5cbyzOPS3)oOBST)AKwkeDqfFa5lpOy|a$0<WYex
zn3;fBY?4$m?=T8kP~~um5AbXwDI0LTlt%?6eu9;a#g@WJJazBQC7vM5A8wocVW@&#
zJUl4Q!-{io;?~_lTszOUli11e9z^~$@ra<jBv#%=PF~6_<QaIjk+ZcaJS-^c+xv*6
zpKzkSyN8rwbHyUe+2uX+*~wax#=7-mpfDZDJeY9iW5%KAXqzjaqKf?%nR|Eq4zfgP
z>sl$d*b=~Cg8?q)kKnQ8qUohX;NH)S!q~WX$6(TmVGa#q_QGl8F24YrO(Mq~wnqr5
zfg@#|j_I~Uy450}Q$(Dj>mn9)e;zyf{g&<mEDJ205&OJXA%dAb34IWbwk9!zZ6LyC
zbHaW>Tr?s~%n2L)K4i6YXWSs^DhVM@QY<8$CXxy{N!cTkngndWbV_VcTuV1utaJ~=
z1{CXO{wFBuVoIDpnxY_0mJVrEoU}{CsUv#D1qHEsm4)dAX2v=qEyfRj6PFQbk8#r8
z43`!YCM`Ei8km`hBhqAkzm!PZK%_mzNh=SRCJU3cAWRyVnY}^BTuh1g3t8Px6KNh!
zT1>dKcutyokAOAR7b@-=xS7X;;)YV>PeHTz49NNoCu{fJAzrJYQ{<emn$hn|w{^92
zr|`lcTez?8iBjg1VDGLK_Y*tIh_u%^Y0IvYc0VtTRV^FRAXd1K8&mI93fesbc_nNV
zPyNpC-$^1Ku`ja}a&iCXp9JInFI*qDqmN+R+lT!AP~sMzcpFFjkN6Sd!yv}a;eEt6
z^6e-#709<Z+E-H2HndV!6zDIR7x5k^;uTJW?S%|Bckclni$S`#e9^*^9(T8l`4bG-
zi1Y0=u%@WE&QV@NAKP-<xjJV>4SihVKS!Ek{0=@xhdf7xJdYyJqB8tGwq-PVKHIT}
zdv@)0q1n;RqByenn~{C?6i0@47;L%O0+n|{D;NE3A!EhsC~i2|OsAjQLX8OkTK0h`
zg$1{VfLQ>S)67H|X*<BWfF5S<ge;5!Tc}#TA{z<k?KW{H0^zkt^s=8>O1uPTlbs43
zWqSwCF7jLCytCQDR>=JA&fwr~=lC?>gW$SJ3u@@Y@SXQ}&<uB*8o~>i-+?~p{GLMk
z?ELvfHu4${??}!wtw7RIo;g?8l4?7Qf{H$6v=1e<ZAjYoIz-W#SGYY=elfj(Td;VZ
zB}I$TlF%LYJWH~XGl`iDkmp&FPfQ%a`rLhL`cTUNbp_kNC;}<GGQT}@*poSIDVp!M
z$I^Kc*j_~XL8q|@t0_exCHxD#)?rI{U1e#f4Qex4oFD1JVfgAp1R8FC!mVPVt&25_
z*$f_Rczes~e=O>8pN(P1^(bfZCA=6~3w+3~kDf8I0eqjLMiE|iRt=0L<r+(oofT(v
zJN7<I68dBJf}Uqdwqr*a&wPww=ydt9Z<*Zfd6ohgX-oEsOcyYIhkQDHoZgQuDDyQ*
z5{F!kL2Dawn1<4$gpLWGIWbtDMM7{L#zR!f*kNbk{Q2}TxTkq68Da@bIl7PqmER5{
zRYRUf#VS9YNx6r`j{Drh!Y3!%);)xndgeB0vn~t%x`T}WV3bGHC*9OL+x@=C?HAb(
z(lA3s-qppVw5CToMtSBr(EZcUl>QJM-Z=ql^RARup`!`&LmVt|cbVxuFeirj8A%HG
zqsF}_Lb}ZdwsnB0_PW0pH{VN`Aa7!8#+`zW+11jmUCv19ragl~>Hq9mGrKy~{k_P3
zjO}6tx*%d&2Cl+skn#|b(v>nKjBwmeWQ_65d)!Nwu*?#e;9ez{Q;s;+1-HXN%u)d1
zH0&S_gK;Q5QUISOI@LBGM%tFb&i{9iK&TUX<`tAOD@ds4%BQQ2q<Pw95fEDgNDDkG
z0(X?qsj$VuUmRzBkaLcslu70|<3a0!BHj8r49`>m1I8xS7}DiPW<A)k089igFqXlw
zwp<Q!4<J~u>}N!<nH-@!!oj21UV@wC7%X_`kLhkWS>(R#m$vqhq+lblu!#0?Yj`du
z2Pka4i{Y~miE0=Wj!e3Bm|Ib@RNY^R>EkW?d{lZA^Cv>birPt*^(-FSNGA^tUr0YW
z0{<XLTgSs%4nbz<DjJ)bTwwDN<gvE1oNW)Vrp9o_m5{>Y{&JXPBGViTT@Et`$jyfY
znB*xEGba)FtzFJ>(rrZ%!eh+l0MhwI+mLgDZ3Sd{A4Vu}A)QYA=I)Ji-nIjwLv?&G
z7}Zf8(NQF17D5f23DC@Z>DK-83vJ@rWJt=3nBPDk%8UD|XqDD=Il?){mIzc4;|9E>
z#C2H&h=qkb#zJgOY@-^D9Vw`agE6*sEF_OWC_sW$!b?3Bw##BtNqJ#?jcsc>w>J+g
z^zY|U+&FUYkiVJ8GZ0zaL2Y2mHq3k*f`ta5jK@b%=qYqWn0J6Gwrv3eBJ!p2Y}mQ4
zMyy&wkME>X5&Y|}VwTAlb>2rBZnh!rq_B`+maz><=Y6D6%Qj*<DXgWKGPV)hc^_%a
zV;gau6ec((jcvqt-bWf5G%B!wU$l@EV9Yng+<7GZEvGzAB*#)isgXEB^UNa&EQPWj
za+t<=F|udkk(};oxdiX?J&iH+L8c$jwl3#Ao(d6?=rOc5MmSL}fjWvtZ-#t4HFz&t
ze?W^6`9Ss%p1BGfO9%vYQKf*!BP?C3K<^w~7vY&JD`iFjf=a{O1^UiUF}gLQyU~_z
zJIqWc;^wVl=Hl+&Bf%r$b}<2Ndxqp@Kci+b0=gfF96Sfcol4;c>I4XxnIkBlAUq_-
z^Qh2~{RB#d$hs~hPVrdxSN$B@p?>rec)fg_*~Jrh(O+0#yh>23<O!Z_>`Q@u<}m=s
z`E(ky22Y-CB6uH`m7-A>L5|%CfoGeT1E&Y5nT0Ggg@evO!+rWR>xMKI5r;)Icw^C+
zvKn(g-S6HL4JXN2Y&?e@g16nLFA$s%I5BYS*wFhOqsjLt%q9>Fj%9w1_=SoGnE|vH
zEo3%d<^l}I-kg&Ht|PuiiP=F8l#8)(-3D@w;9Xx=WoRa%V!g;C!%E^}9vpr&1aUSV
z)iU7spW;61Xo2G`_-q8lIGe|NoFivMU6s+yOddmX^)zt0bH@lg@c9YOzj+vI6{_?h
znBUFBSZoK_bY4`*9FztP3qND%1!d6Sf`Gw7a_00W9^okuoH^}hmh-@HQ;~;H@F-&H
z*CVEmqJ;Zl>LMQRX&y1P0H&t%m~hpm@$lejKtD5)hjFIvXTHR$hBeg(Qwy1YV0Py0
z*+Hh>kYUDfd<5E{u_>X(cJYV+!%>oh?L0KxT1Z;Uquc|RSsr))X#QJ`$9Qb`tGg6f
zTgc<W2R3O0&JXNV9>#UiE5ecdg>mHgV|q5R_TreJLE*xDpa~kf@%k|SfJd@YA#wu`
zxxvss@~D=6ADj~69}Mam9vg1xMi^Sp<HB_-7=iPKrtq+k1I|$ZT5Q>@p<{1hXf)6G
zu5ZirhJGCr^g__kZ9L=#Lw5qzGBAtmq}Z95U*52x@G{RBZs-;m>gI9bhCVt1=M639
zVIhW20?=Yx#Tq(A64W_d*gZVsyFS<Th6;FO(9nK9-ET1TD35XvY-Z`*{W3muxANF<
zLtQZRMIINf+s{YfyrB&|EW}VffEL?!)==~4prP*F*@37c)fma8<ayuqZNJ{u2|O}r
z>*svR-(V}lqul)wflkPHB6JV(sBlBK!_c>QT)3gX9)a_Qw(+o#IynzOi|s6HX#S|6
zq2c8%muGy}M+K~8E3b-2a2D=o@GdTp&fylK>_+h@GOdWX{A3I6Sw3Y#3oZroj_{ap
zjl4X3q~QLMhXs{s281oRq8w6!9N0FxcgK+zWs4T#K%|(ygx92zP-`eNN=ToOwth~g
zZZ@Y>M~Xt%B}@)4-0PFP9y;4HGkH|VurU`&cKC2MAi_%AV$(wd8-~-xoD-Az9^2zI
zoI$ke$rkYEkYIXGy813OY)w4nZcqlb35aGFTs!&1yFr&%cvPq^kMhtP2IVmxg}D$b
zj}SIQUOtZvk37li(Tonb&NZ0im;#<Ee2^ya@DV*x!msh^6w(>fN1%IJJ|q5`Z?SFU
zy|62q9ks!6Hin120a!^1)B3I7Pn;To7r10GD`7Sug6l?k$qte<pF<OG^Ih0rQ7IcJ
zW<J_BN*n`VObdXQQA3$}mMDX?yU1uvXNhE#%d@tC054)S#LOl{+v-W1a{2sqiCF)s
z0CQv8by?tuX*=nVcqv3b;Dfgj+BGaKMMVPg5g>l8P4W=CV>uf|@Qwifnr)PX!Xlgb
z5=00KB2LtH(kUgDjblHq*au9BXKij9dWU7FnBM_V2P0Mx8UA~r^lN~0tgc2IyAHgm
zrqD;-snT8+<Y(3Z?OD43jvzQ{9Jq+-j{&@cIMB295#UhJ9wda@PIH7Q6eaM!d-d8i
zXqN><3F)0QCb8mtpaSF@KQj((oC=f|*BCPIcgk&vFqEk8Vu&6%6!5GS6Jm-IQ_KN`
z_27NBM|he~B138X{)>L53pAd!SHJ_EeuD-MH{w)BY-S(j??_FRe=iZNNlooYO_TRY
zL~ByhI#M%wQ#00fq-M&8B)w}=GdohVB+@mhS)R2i@Cma9B1-V)<;?5<!s;5??>>tU
zz~v&cXD1s5`fCfCa{9c*Qy`DSq1$Av{Yy$Z=0>Sbc6`?Hf$K|=L)_6V7n&oS5pN4x
zzjTapeI|5$FF-58P$rL+ww@8d-b?s$;AK2`Rv(7>?3q$La~7Rrhd17{mQCNkvrTF1
zcF>VCD*8g3-!YAr{FQo`{X}~w@EZk=*Z`z1rtYfnU@7xHiTNzkMf->Jh4wOe46Zm@
zvOd5>47?3zCF!P9%g%Jh{1oGHlGy=Z))1gEj!5^lQT9FXVtid!DN_kqY`5`&PHYr)
zjpF)Q1YA}L`uP%e$(Bu|B|AwUArvN}2{e!8Mfiea$%(j&7l95F>aKAcf>P#d1OwEL
zCF;``&^6)19$-J{N1uRg%LWN5sQwjz$qSqm)&!g!#lno?QT8tQ3yQA~^cqzB_mG}m
zVmf92Qgy`hSA-5lzE&zHiEyp7g6>DrN4B1^0^qt7;WT^JegYb1E_!jF7I1@O0V%T(
z6rQ#0VoJdxXL;6=;j|FfB?HNR`$2^D<kKG^f;>A;15JO6xS_yM7gbUhF}ZuuwD%n{
zT(P*sePs5d2Jh&L!kA#&*B3R4+@t!UP$a4Lv0!~4l5x;@Ixdx*cTRB+$2j8L!*S$@
z68t2QsKGnkGD<Zxcn1NtCk&1v_dW_GlWG^!=OM%evW+t0HAggP>t+pt6@f<8J+%P(
zduU=7&I^%pMRnIaG;u*GQ;Q~N6cR%MquLAP?18Mb^>q-yM3o<hvF&8cFXDGh;86Cb
z?rY-a(39EOC<NRw)+$V;?8$7ebW>jzIhnmCLI9@6k;7SH;Jxl)(G#P(PYYH5lx})|
zFvcT#A74}XRePnIy2*(&P2&5whwg#`%swdSq4(esUtsJ+13Ty#4}AatGMS^ooFOk7
z*spPL(D)IicJ?r}(X;wX(BO!XJKn7%teBO_Yf)9#P=-(-AV;{p<OsJn1sd50J)0TQ
z%|S*(XouZjNr%!w6(#k4gO7%!-iz$PE+$7U@a6PD`uL&>^eZ}ZKiU;|1=O||hkCz9
zWP88G7<1leAmt>#qf9Oio)>X*U*86t7Gc=-VhAxeA97t5IK^anL|F!-$nMm?89f~U
zwn)0Q$AVYGch^z2cOV=mU%v+#US*Kae#onjB4!+7%TstI&q9m+^AmT)A#L$4t83+b
zq3?|wz{S0EP?7_XqwoY~9lQr2CCZi!o;npl>>%YS^GXT(qM?ZX7H5^?ZI2LiUTG&0
z&HNe^CG0nMgOVEf&T+eRTULb7C*2l>kMNvl$!l)BsOV`qOR~rPj+~S~3Q|@PDH)}m
zFAypDM9S~B=fOn!FDyx0ue5axpm-(oj+_i19Q1cM*R!Cu<uVZ^U40h63)^ubi#O&g
ziaidzqR2<&cSM(Xo{<wIKH+VB4fi_HBJ&h!+jDqS9+}<#j+_i`N3?mS<6H9#$2s#f
z$Jb_=W5AraN@O-X`KdYA5o@k@#F!s&#t07zzoS#Hv}auz?0s7>_?~MP<rL2w5z*vm
zHZO2AnpZd;HCH>9n4OL)bF(APoDUI|5V6D|F*_V$bCpA6wmV0Sh{H^?!sJ_?HM=7k
zYPOYOl=A_L!}J&_wAeP}Lv8Y(u!OlEBab?R2rF;dO-%1;J>vK)EpT^>-M!-Wtl_~o
zZ9aI>`vGvAKaqDxyn`)gNpfI*Ls|H`xRd-_Gx#fpc^(q!e$N6S(?On|k)H;cXN7?I
z8JeDlWnPkGo+g1ulq}q1+P7@7yGy1zX?kzjU7p!8(|gUMJ@(UhO_VV0;^4!op?8Uo
zvq&2YAXA;d8<z|2T)Cck7{lR7zl!j4#8|wfdw>m$8sHK<DZTNatc$=WV3Sx-hFmS|
zL17<5GMnC0%#0#nVW04FZ;GG7NqP+ZJgY0cr-(U+XejB;Nc2<QX!y*NB@_0M2|NxN
zGJk$2l5HI`h~IGC0a71Yb`xjx6cyK?NPo{r5L`F{r4Loqj6PO=<~}sxCgwZP5ODwY
z@3EY$nS8kXOf*3SxQ+$ThiWDts~L>~Sy6uGE5MM^L}(O9NB2S|4L-7x55UiXWO5K5
zF#;#z2z+z~BoUqg08qMydIXLMHa)!KZ3Cn;8&Awktkz0u=nrcCiBn(fUFeUBU`hz-
zt30VNNJ{tCe1p=!io`oOTPqRS&C{L4K{gTj&j1PO^#CFH6(M<^^tzoR5#HD*OSp|E
zT+0%+t7?$$Aw8ZZ;*RrF<hZ?r7INwn?TJ<_%|)IjlhCxQI5}i-cAohFff;=FDBZ?*
z=7^aDqzpZ*I#SzP1BbSJg(g*3T}~hJR0u8(2~W@$y3fV6d_lk{TO!j(%kCy@=iwT%
z#~^Uiq2@?LRpeay`@xg!hLGE8v30qlMND3CZtco;506<sRl3#ng%K-wd0QWDs;(Za
zb$jX}7WC8!afxt6;)=p0UeL4dHPF0)>(98}#<dlf7uPOaSWpWhB7{PbC^9lC3PXdc
zj@s%T7C6Saha(&kyybL6Z$}Qh1|MKj5yIrP6S+{*@w+JB;-9~O-s9dK*K!8f4HrN9
z$==D`+zfzsP%URAfaVv`&N%wxV)}_#%%qYwzmvR+onp(L15J*=V}oPaH&1Iw`xx4t
z!(_PkV*gjta_uYt%i?T%fV4qj7h}Ezc*%B5?XJQ3bYV;l3d!wtu?uR*8`HKU&PXr$
zSDHxbSf(4iNaAtmZcGtoZ!G^<E6Dd85+o?jc~7(D4a@p#7!6F^n7+uH6zF_@2Q?RG
z+feOxTOyvkMpB{nGYX=Y%0C$2;!jDFQuf<z*#w)$VaF3})@)ZY<vd0Aao@l?<YLqL
z<zul7k_dZEd+ei4=k23CqH!i)vuKN;yhn+dsi<wQ<DRx7j=NM{dV%8(kKJ$TZN4qV
zWfoJ;?=W$_SB_x@8GRlK#oPWux{Sx_uG57lW<BxAcKF&=-a~c}#L4ltqlD;go@fP6
zG`OtJR*GqCHA2tyo;}{?Ba{#Flyg~1R5jONZhi{gZz*Q9AniEe-YsrD>6mB}&jY=h
zr@x2Lx1L;xSivEaYj7f&N*t1D*VaU3b%=C$**Mf2g-FGRAKX_Fo;mnP1A{|nUZR_>
zz@qWCYKW{$EbVmR&K&$60s~(aaD@v?fYD&UV&V`p1rMINV&)R!A<yEOCuYV2LY571
zIJ;y-s&;O{$kLaX4?#p9!U{5$KEaULq;oqEXvfe#W;@#8N94rOUo&r@W%?AciuIlW
z@#7q80KzFYeeJ|J4Mr&0qZ$MWPHV7kl(_f%$$Zu`t=BULuZS<1_AI-@c9htmFYS!6
zz>Y{_2awZFnf5OmZz}+-&Je(z83xXD(J7*P2S*nc7cql9fe6HgaDKZ)j+NVZ+Zw_$
zrL=Pc5x14F&?321AT9}n!UUU)l(jBm*il0B3zjB|E)oT!B|vhLCuw9!@b7^!xk=ii
z+6gJUWGnvdf=k`ZZSM|CC`vAX*D|j#4`Xa;A3ogKo-$0izQMag<{z+1x(y%y9H)D~
zaXoQ`atJRE3NGP$qHcD1hK}%Ksj}rX)H*EI+NHtgoCb&0Zg)00WC>GcGi3RWO1lG#
zQl9oYd}c#6u#l6Ff2d7lg>hNxt(DDIS#_hVq0u3;HdHRIx5_FTR?6~I3sPlGjdq7@
zv9+erZsh<OSp~9M$f&KXuYJ7IQQO!6)&}cLw*N%vP-QGz-e`ZcY-z)CWm!@EGG&H!
zS#6ay&svk-SZ%dDx}>bAvcBHBvZ&U&T$$fkRhHlAblB4Coy{<+EMRRJ%nd#h%V$>I
zpg(67YuB9G=BgX*s<MT_L+EoFQ=4jU<ly`ljtg?JIHF0Wt*X{iU!PvH1YXQv38j~&
zH#XGNE^*pfZ_G#@p~&Q%nIubGF=d5}8-p8U<W=O%%g?IFw=77jNY7TJ7v$y2MmTQX
zZzzvtUS2_ZL2hCw6TJ9?{RDUv{|1lp|BGi1Gz(z}j4m5H*03nVM@*^t`I&hI6`5H%
z6`6T?^YUZ~2yBP58T?c1Q`z{MbOUlKl|YQGuXG?pms%R@YpYgTnrdex=Qq`+k+{BJ
zmQa{8w?L(wDoc1WaYYvS$xKX~I#regFC$)W!Eaew^?%~esbBnm;<pqc$%urT8K4g_
z;1>GlG~TNF^u!SETiQRT$+q$q62KoK;THYpRV}W(sq@i2@BCZvrdEXyo<hqF9_cqL
zOaG(%vzuzetPk>MWrg&8V=QvHp3~6mK!FON5labEX9O#3Fen<V*6L=NqY;%+)?{y7
zVy|4f)LM<ISsf^#)xnx+v)Ti-F(Jr232`@7c0a~76v9O&f^#Zj@+LZ<&U5-fvBKuX
zH<Y{oY~2m?fU-;KZfJk366uXgmo_$pf`c9cz0={SZCE19%udh2OaUilsASogT1Ykr
zd=aEs@dGr0nTV59ZC&hKGK#9MZDyw@R(1e(qb{7EvKtrA%&S~3gS!(FmNnK^%O02t
z$Nz`?#Pv$1D0qQuz*&X)X-Z3WiOg<Yl0a(yR3lsZ+1iDfqNxdvF%rad+2Y1Zdv$F!
z+mdBfE)G17qSBPIM!PIcIZc*7FI|S|HLY@GedVK8SzeKa2)Y5Em6ew<Q)bCi%v9eL
zPx!6K<&~U-v_w|EB2;_`nzf;V7(tAwNS`;yk~W*w62j9n=CY`~3QKx+1>4Ha1<l-o
zym`3+q8n+7(&ts=7o?)Lr>ExTq~)a+<jk8JfLP|CI0wa3=~dPC`kIQW&<Qn&v|Fte
zP1eds;lhf_rA^^P6-d2`>e|XB4UNr?+A3LqiSRVm)HGWiAh+ACRb;*LgPhI5?kK{$
zY)NIslFHg2VVN1mQ(aj_dT`hq>v_bDJ}FdGSmqUH<`Fj(WL9KgVw;;o{KCshPcM{Z
z<P=q~3xZ{p^-im7Mlu&WRrU&Jv#p}4{?UqNYrSl7twUDZ9E`NAMthZ2rbtYjgVI#H
zw9>v(R)s&P^QdgO&DtPaKr)U?t!ffnsfiD!D%kieY{DPtK@t0R`<;sgB+4SGidDAC
zh9y>6xSFIB41_Efy~wh1GGysCE40esQkplLLOw0P8Y{PHX}+_GU491CoiQVsAm+%H
za@C!%U}1YBeL!S&kRhBtAt7zvyxh#xxl<DoladruNxfxrm@MKZC56?B;L6TQ)^r)9
z2C<8lG-HM_OO`ODTE_m5vO?B(<QI%QjSVb58s~ppXs^Sy0oN8>UAPY83R@@7;a0}E
zwTtZ-FtYkZ`9iCVyOBD~J~caTsAqt)#rFmTG(apYt-O(i)h(=lvSX;v!Zc<jYxg;g
z)y{f$sUD(G#tJLz0f6$XWL!u+cQ%tneOVAe^h`+4PR-M!*pk&lZf&z;PNn@(t6gSJ
zl5y(fJM73|Y9X{(Btt!O*3<xfeVN9(jBGvbmni}(wJ?3J^B3tVrxBXL4hV0qttw-i
zbDFD&O1v!9|3MaOTWWQ+-P+t7q861f0t<@2(ZA65rcS-ylVr$m0waA-N=V3D;jlJT
zTdOm$k0Z<1&{*YG6rmLPwU1kgTd`as3SG~Cox^XzPZr4>KR4X6DvY-be;JHbL`MFm
z7pXmt#zt9vr5#DnEsE@HgjlO5jrzej=R#z085a`lP*L3Tjq#9cZCK*4$;`5fC6=n{
zimcid*6LJ8nzOdPx&nYXl`CqOI+vz4SJl>XA~=TsUH_Fe)=(W1GOU<J8o2H4^^PL(
zggq;%vNu6dEHAW?CCfM}=)tY&u)l4ntk38Bn%fxEcHT0py}q(Z7TWK08Bqd)rpx%0
z;sj0~5iFaA{J@&aTAOdRlWlhM^*a5a{ULk>WMO4##DdLgCy7+;AXO+RH57|sN(c<b
z43eElY%F%zjTL@joyu;w=1vXqA(!K982+F>Bp&8imp0m0a#aRnQkLG>v=Xpldu3CT
z)y~Dp|Ehn^S$x;9=q6R>hwE@KJ{Rb<dDhBmB7#-m$7&Ht<3fye?UDv-HK#IL6R!V-
zlSb+-T-Ecri{RH6#VsOtoE=fIxZ-dMOD^&g#Err8Be<pmPOiNCjQkfXC;VZ;nzGEz
z-+l0}m4Z2oaFiGBYc^Hb6Pbd=^$zY-h8)LaWTq9)t|-b^CMq;5^xCqVRMmg(;D(bP
zc9hdpy%?%dI2NT;<RRo|HjWD(fm8kpSn%%;lE14s#T;nMmo^Y`^5RK;J79soJxKhQ
z0E4-<{PD*huU@<abmRn^{Jp{8-yS5q*Z=HnEm1`>FQ#lCKJsLL#l=4Yf11$rM(SNM
z++8^4{3pJ6$Fr*o&juXL#^8A!p2?5kTM;!b1>b4BD5CC8p(3uo6a0h}N*uUH;{Z79
zM{tSb7vSGmfi5ZxiAF%4kiY+er4t0(0lAT+9n>TA-khbLVEy3phug--{^~$<<=tXa
z=bN9Dt$pa1N29(-I~6xG>lbrh%>VGiajQS4qNZl{bfzA7;GVkAld?DWZ7AxQEB;wh
z_4C6yyZ@H<?8dg8Cwdot+8jBpYwk3~L$BWTe9_M=8PmV2n|$@T=-t_Gzch8{xz9H0
zS*Kk0%YiYNtSVA1Qq`#(sutDLs$Z#IR{dGksXC-OuJWs*)Z^86s~=E5s7_I5tBci(
z)hpCLSHGctOTA0INByDtWA&i=f;vJoMl)G6LsO_J)6{C3H7-q?=D#&BY5t_yuIbm{
zPYY_JwXxcJw9~YS+Ei_hc7e7^yHe}cZqmN3eOJ3zdrW&$dsh1|txz{sC)dr?&C?a>
zs&q?rkL#Y&t<$}rdrkMYZjbJW?t2}jAETeBm+PnMjruhGe0`bTu3x2Jum8RNE&UGt
z9{oZ6r}_c?cY4Zjhe2kTZJ29VXs{aWhUJDehINLQ4R08_4Eqe{4a0^=qtqC0oMcoQ
zjm8{ffw9i$F#g8)igB~C)7Wd=Z~VmgrSXFCnlaXNk15ME$5d*nHa%uqW?F4pYkJA_
zy6IihUekHguqo0kHOHGLnU&@wbFR7AywtqhEJ=<}o|-%}xjcDk^73T)tgKmuvr1>#
zW-XmX0`vv={I<lgiLWHSo2XFCQ7ln3DBKEKv0m{9#oG$6Vz1(FiZ2xZR9sRBlw*}~
z$|=eRlse@s<y>Wv(x$X4pHe=p{H1ce@=fJi%3aD{<wwfTloym&m7`SSRQIWVsxqlk
zRC82?Dx0cF^^|J0>es3bs<%`-RQps%RHsw}s*5UtdaOE5JyoqzXQ?gfN_CBTx%x@<
zTJ`hljq116J?eexlj?t{ht!wV63uvxTr*u`)?{glHRYN{%}Py&X07J8n%6a3G~Js0
znol&JY0habYa+DcwRf>2oTPn7J72q4Td)0@)}{4mU)25%<J_t3)$Z4x&|c7v)!l_r
zR_V%ht1!BobbECl>%P;)VNBEYl^D<G^qciv`cwL=`mu%?hKCJ{3@Z&UVC4D?1BR=H
zJB-te3ye=<tTr1Lo1CV{O;4MiGp#qhVtU)uV>)aaG+i}`%`?oi%@yXAX1Dn(^N{(P
z`JN<W(!)uXq@tvSNwrB0Npg&id{+6a^|Ln5>YH_87AYbpFfI{^cO@nyCMRYm7ABS@
zE=_bKwj@52_-f+CM1dkv@vvf%qE6vdtWvC2tX2G4@rL3riuV=!6ekq}itiOdWvucZ
z<%7yjWtZ|5)tjoFsy@{T)!$X;RNt#4>R9y*wN5==6Q@yYk~Q-+3pF-Plg6!iR`aT6
zlV+!8x8_6m@(g@=O*01BGDZ8KHd&jc&DSo}HXvJ`)&943qjs~lOWUVCs{KfNM*E%C
zuf1ItubZYz)TQcjbY;3~WK65>zjf<%f7bm~_nxj#cU<>{?rYs;U8Fuvf4BYty;7g4
zx9F?%OZ89bpVt3M|B`-_{(s=@1Nsm2U+T~41%@cYc*9Q&YJ<s;YbY|<42=etVYT6T
z!*30*8~$o|$8gYa-0-#G8^aZY$T-n>uTf*1Wt@)@sWmnkpD?x=e_?#d_($YWkMWrC
zq>(ZDj6&0B<WPdiXi7EZnMzDGrUui`kVns&UPc~mH|;d-GaWJg!{jshP0{8%%`&sX
ztT$(xA2OGk*O;F(zhZvVywm)i`4e+g(j7^6C(TUKC*>r~O{z#*lJs~|Tha?juO#hC
zdOzt{(&?msCViVENtPvlmb`D)Im|^A4wA_`FiLT|LZeuYG4m?ERU|5RsrIN2sE?`7
zsL!dVYAmQ*k7`=kkvO9{ueqX$*6HBWGTm<7N!>Y}1l2@mNHtU#Y7IX(JY(1dPyEer
z((s+ZZ)h<-ZTzkARbwA&#v$Ve#^bR1l(7=E;%BhXYZ@>`m?h>1%<Ijs!G;6ovxvv|
zr2CT^la?oSC4H2nOP-aSpS&>n>EvgVHzvQGyg&KFWaw+*))-yN-O2;X!^#s%Vnq1Q
F{{wI`;Cui8

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.inf
new file mode 100644
index 0000000..1a508fc
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchInitPeim.inf
@@ -0,0 +1,150 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2016 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitPeim

+  FILE_GUID                  = FD236AE7-0791-48c4-B29E-29BDEEE1A838

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchInitPpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitPeim.efi

+  PEI_DEPEX|PchInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x52B0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x52B8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## CONSUMES

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  ## CONSUMES

+  gPchPlatformPolicyPpiGuid

+

+  gEfiPeiStallPpiGuid

+

+  gPchPeiInitPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## HOB

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPchPlatformPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.depex
new file mode 100644
index 0000000..028e7ac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.depex
@@ -0,0 +1 @@
+5�c�2�I������l�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e97b8aa92af9e2fe4af36a2b85ce205613769e9e
GIT binary patch
literal 7616
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.inf
new file mode 100644
index 0000000..42ac7ea
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSmbusArpDisabled.inf
@@ -0,0 +1,144 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusArpDisabled.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus module

+#    This version will NOT include ARP support.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusArpDisabled

+  FILE_GUID                  = D82D57AC-99F9-4c7a-B591-BBCF8A0E7FBE

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbusPeim

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusArpDisabled.efi

+  PEI_DEPEX|PchSmbusArpDisabled.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1C80

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1C88

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  gEfiPeiSmbus2PpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiVLVTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPeiSmbusPolicyPpiGuid    AND gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..58c00cf61b02f232a870397cc94ae73ec5b955cb
GIT binary patch
literal 10304
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
Gu>S)mr?-v(

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.inf
new file mode 100644
index 0000000..9b80bda
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchSpiPeim.inf
@@ -0,0 +1,139 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiPeim

+  FILE_GUID                  = AA652CB9-2D52-4624-9FAE-D4E58B67CA46

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiPeim.efi

+  PEI_DEPEX|PchSpiPeim.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2700

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2708

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSpiPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex
new file mode 100644
index 0000000..05a6cfe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.depex
@@ -0,0 +1 @@
+H�t���N��ľ���s+�N+1J��V{PD,
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.efi
new file mode 100644
index 0000000000000000000000000000000000000000..9f6d819290b756c9edbc7e6b47587d7463365d23
GIT binary patch
literal 5984
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf
new file mode 100644
index 0000000..3711a1d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PchUsb.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   PchUsb.inf

+#

+# Abstract:

+#

+#   Component description file for PCH USB PEIM

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchUsb

+  FILE_GUID                  = 3B873142-4252-49eb-BF17-105CD6F3E808

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchUsb

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchUsb.efi

+  PEI_DEPEX|PchUsb.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1660

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1668

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiUsbControllerPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gEfiPeiMasterBootModePpiGuid   AND gPchUsbPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.depex
new file mode 100644
index 0000000..95be042
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.depex
@@ -0,0 +1 @@
+=d��I��B������[�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..ce4ee4e782fbb36582b6faff9776c22598621ac8
GIT binary patch
literal 6208
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
AAOHXW

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.inf
new file mode 100644
index 0000000..d0b04fe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmAccess.inf
@@ -0,0 +1,132 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmAccess module

+#

+#  Revision History:

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmAccess

+  FILE_GUID                  = B4E0CDFC-30CD-4b29-A445-B0AA95A532E4

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmAccess.efi

+  PEI_DEPEX|PeiSmmAccess.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1780

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSmmAccessPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiMemoryDiscoveredPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c58f8eb1d564d0c0ae61c0a90d61b11e11cfb3bc
GIT binary patch
literal 5120
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.inf
new file mode 100644
index 0000000..6bd7d63
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/PeiSmmControl.inf
@@ -0,0 +1,110 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmControl

+  FILE_GUID                  = FF456B9C-0DC7-4682-9E92-0DE84B6E4067

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlPeiDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmControl.efi

+  PEI_DEPEX|PeiSmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1310

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1318

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.bin b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.bin
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.com b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/ResetVec.com
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex
new file mode 100644
index 0000000..3ec1c91
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.depex
@@ -0,0 +1 @@
+�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.efi
new file mode 100644
index 0000000000000000000000000000000000000000..97c08c610d236735f889ef606fbcafe793dae3cd
GIT binary patch
literal 7456
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf
new file mode 100644
index 0000000..c3d066f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SeCUma.inf
@@ -0,0 +1,116 @@
+#/*++

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    SeCUma.inf

+#

+#  Abstract:

+#

+#    Component description file for SeCUma module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SeCUma

+  FILE_GUID                  = E4CEDF93-672A-4782-A7FD-5FC6D239377D

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SeCUmaEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SeCUma.efi

+  PEI_DEPEX|SeCUma.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x1C20

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gSeCUmaPpiGuid

+

+  gPeiSeCPlatformPolicyPpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.efi
new file mode 100644
index 0000000000000000000000000000000000000000..5fe83a95c49542dae9cb0bd0f6cb968947ff491e
GIT binary patch
literal 8864
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
ZM{<~pE7De`@o8Jq>}lK5(5$;X{|m-c33&hj

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf
new file mode 100644
index 0000000..c6565bd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/SecCore.inf
@@ -0,0 +1,130 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  SecCore module that implements the SEC phase.

+#  NOTE: This module was replaced by UefiCpuPkg/SecCore/SecCore.inf

+#

+#  This is the first module taking control of the platform upon power-on/reset.

+#  It implements the first phase of the security phase. The entry point function is

+#  _ModuleEntryPoint in PlatformSecLib. The entry point function will switch to

+#  protected mode, setup flat memory model, enable temporary memory and

+#  call into SecStartup().

+#

+# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>

+#

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SecCore

+  FILE_GUID                  = 1BA0062E-C779-4582-8566-336AE8F78F09

+  MODULE_TYPE                = SEC

+  VERSION_STRING             = 1.0

+  MODULE_UNI_FILE            = SecCore.uni

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SecCore.efi

+  BIN|ResetVec.bin

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2188

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## PRODUCES

+  gEfiSecPlatformInformationPpiGuid

+

+  ## PRODUCES

+  gEfiTemporaryRamDonePpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/PlatformHookSerialLib/PlatformHookSerialInitLib.inf

+#  Vlv2TbltDevicePkg/Library/PlatformCmosLib/PlatformCmosLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  DeviceCommonPkg/Library/CmosAccessLib/CmosAccessLib.inf

+#  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  Vlv2TbltDevicePkg/Library/PlatformSecLib/PlatformSecLib.inf

+#  MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf

+#  MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+

+[Depex.IA32]

+

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.depex
new file mode 100644
index 0000000..00c2f8d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.depex
@@ -0,0 +1 @@
+²�}�"rC�,�2Ӧ�;���\�J���B�.
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..1ee86b88587a71ca97d0f9596d3b0a3f2a85ca44
GIT binary patch
literal 9120
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
DL@j}%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.inf
new file mode 100644
index 0000000..d95c598
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/IA32/VlvInitPeim.inf
@@ -0,0 +1,116 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the VLV Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitPeim

+  FILE_GUID                  = 24169E35-2454-4940-92BC-82321A2C7562

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitPeiEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitPeim.efi

+  PEI_DEPEX|VlvInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x2260

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gVlvPolicyPpiGuid

+

+  gVlvPeiInitPpiGuid

+

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  ## SOMETIMES_CONSUMES ## GUID

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  gVlvPolicyPpiGuid     AND gPchPeiInitPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:DEBUG_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.depex
new file mode 100644
index 0000000..4cbdd53
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.depex
@@ -0,0 +1 @@
+�������G����P���ƣ�^�H���3����HN
2��G�,?��f���?n�FO�)�S=Y(mEK�GN��2v؆�}��J&�>����4/4t+p�
�1A�F������k��
a�F{�Z�~�'\������I�K���
�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.efi
new file mode 100644
index 0000000000000000000000000000000000000000..341ce0934ce3b2e809ded36439f59e1597e063d9
GIT binary patch
literal 32768
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
J^Y?0j{|6F)R8Rl_

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.inf
new file mode 100644
index 0000000..5f1366a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/DigitalThermalSensor.inf
@@ -0,0 +1,190 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2013 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#  Module Name:

+#

+#  DigitalThermalSensor.inf

+#

+#  Abstract:

+#

+#  Component description file for the DigitalThermalSensor SMM driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = DigitalThermalSensor

+  FILE_GUID                  = 5122FA7B-17A3-4a8b-89AE-A93ADE92EADF

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallDigitalThermalSensor

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|DigitalThermalSensor.efi

+  SMM_DEPEX|DigitalThermalSensor.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x7420

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x7428

+

+

+[Protocols.X64]

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiSmmIoTrapDispatch2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiMpServiceProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/DTSHookLib/Smm/DTSHookLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/PlatSmmIo/PlatSmmIo.inf

+#  Vlv2TbltDevicePkg/Library/CpuIA32Lib/CpuIA32Lib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/Ksc/Smm/SmmKscLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid                   AND gEfiSmmSwDispatch2ProtocolGuid             AND gEfiGlobalNvsAreaProtocolGuid              AND gEfiMpServiceProtocolGuid                  AND gEfiSmmSxDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.depex
new file mode 100644
index 0000000000000000000000000000000000000000..cce1aa8782d7783ac5038e755ab4a29300bbd39a
GIT binary patch
literal 108
zcmV-y0F(a$;%HVLfrQi%yzu~l$2^FE0vPx~WMX4PPPK4-x-s1(Qv!|%m+Rlp#!0?Q
z*#@Pu4u%5VYvBI}VWviVvRa&e#V1?>x`?Y=;^1^fwyn4l_J|zT0`~Bu6G|rVKJwt+
O#S%0xGy?+z0|N-t=rOkd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.efi
new file mode 100644
index 0000000000000000000000000000000000000000..aafb722c55a5312a85cee6643eb44574c59b82d3
GIT binary patch
literal 29120
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf
new file mode 100644
index 0000000..22c4261
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/Dptf.inf
@@ -0,0 +1,219 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

+#

+#**/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = Dptf

+  FILE_GUID                  = 1D000AE9-756B-4937-B736-1F3D96A5A8F0

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = DptfDriverEntry

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|Dptf.efi

+  DXE_DEPEX|Dptf.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x69F8

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x69F0

+

+

+[Protocols.X64]

+  # CONSUMED

+  gEfiAcpiSdtProtocolGuid

+

+  # CONSUMED

+  gEfiAcpiTableProtocolGuid

+

+  # CONSUMED

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gDxeVlvPlatformPolicyGuid

+

+  gEfiI2cBusProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/I2CLib/I2CLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/I2cStackLib/I2cDriverLib/I2cDriverLib.inf

+

+[Depex.X64]

+#  (gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiAcpiTableProtocolGuid AND gDxeVlvPlatformPolicyGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  DRIVER_BINDING                =  gSampleDrvDriverBinding

+#  COMPONENT_NAME                =  gSampleDrvComponentName

+#  COMPONENT_NAME2               =  gSampleDrvComponentName2

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..5066c0763638a39ff33c71c6d9759850f116e542
GIT binary patch
literal 162
zcmV;T0A2qAx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
zGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj$Tzs&UD_Wehl)DWogP{EM`bSrSe41h5~henUJ
QxSZsy0|NsC0|NsC2(86PtN;K2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..fbf1d38074937381d012ab4d8187f6d0af621145
GIT binary patch
literal 54272
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
RI{&(j>yY{1&;Ljd{2zvYJU;*c

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.inf
new file mode 100644
index 0000000..4e00475
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/GraphicDxeInitSmm.inf
@@ -0,0 +1,265 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = GraphicDxeInitSmm

+  FILE_GUID                  = 99EC6206-AA45-4CAE-B630-866755241C8A

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = GraphicDxeInitSmmEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|GraphicDxeInitSmm.efi

+  SMM_DEPEX|GraphicDxeInitSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xffffffff|0xC618

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xC610

+

+

+[Protocols.X64]

+  gDxeVlvPlatformPolicyGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+#  MdePkg/Library/SmmIoLib/SmmIoLib.inf

+

+[Depex.X64]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex
new file mode 100644
index 0000000..9b2767a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
�HN
2��G�,?��f���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..f0c854e79bf0fdf023579e7c915c7ff201143963
GIT binary patch
literal 39328
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf
new file mode 100644
index 0000000..5c67ab1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/ISPDxe.inf
@@ -0,0 +1,247 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#   IspDxe.inf

+#

+#  Abstract:

+#

+#

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = ISPDxe

+  FILE_GUID                  = 5A38B969-CD6A-4814-82E6-559F840BBC58

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = ISPDxeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|ISPDxe.efi

+  DXE_DEPEX|ISPDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x9140

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x9148

+

+

+[Protocols.X64]

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.X64]

+#  (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiGlobalNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.depex
new file mode 100644
index 0000000..1b4e8e1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0��������G����P��>2
�u�*O���Yj���ƣ�^�H���3������J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.efi
new file mode 100644
index 0000000000000000000000000000000000000000..891abcb07795ab3474742c1a346da6a73f821972
GIT binary patch
literal 26624
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.inf
new file mode 100644
index 0000000..3afb759
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchBiosWriteProtect.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchBiosWriteProtect.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchBiosWriteProtect driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchBiosWriteProtect

+  FILE_GUID                  = B8B8B609-0B6C-4b8c-A731-DE03A6C3F3DC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchBiosWriteProtect

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchBiosWriteProtect.efi

+  SMM_DEPEX|PchBiosWriteProtect.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5E10

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5E18

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gEfiSmmBase2ProtocolGuid            AND gEfiSmmIchnDispatchProtocolGuid     AND gEfiSmmSwDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmBase2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..43c341005a38f080bcfc36c46f223797c713b117
GIT binary patch
literal 126
zcmV-^0D=Dksbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0^Mui{|8~FMtiba
goPNb8Tmp^=m+Rlp#!0?Q*#@Pu4u%5*0|NsC2o*v%X8-^I

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..0f76fbeff785514edb149c1cd8ef1ae9a602933d
GIT binary patch
literal 176256
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
S*dAj5c8TYlf#?8$_4&U`(*gwm

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf
new file mode 100644
index 0000000..4ace397
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitDxe.inf
@@ -0,0 +1,278 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitDxe

+  FILE_GUID                  = DE23ACEE-CF55-4fb6-AA77-984AB53DE823

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchInitEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchInitDxe.efi

+  DXE_DEPEX|PchInitDxe.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x293C0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xf0000043|0x293C8

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..89550b75de68aa683924135d77708ae9cd5b8634
GIT binary patch
literal 162
zcmV;T0A2qAsbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0=K`+^x*dWN1fCV
zsPRz2kpgrpaKa3LF+qn$kF~g*<g5bSYvBI}VWviVvRa&e#V1?>jtH0Q-_OQLzDwB#
QrLqo&0|NsC0|NsC2pfM&K>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..ddd290b4caaa60ed05dcb2eae756f098f22efc95
GIT binary patch
literal 67072
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
J6}u5u;6KmmZ}$KI

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf
new file mode 100644
index 0000000..f2bfa8b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchInitSmm.inf
@@ -0,0 +1,290 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitSmm

+  FILE_GUID                  = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = PchInitSmmEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchInitSmm.efi

+  SMM_DEPEX|PchInitSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xF010

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xffffffff|0xF018

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..6f989cc9199142f9565a01ca77ca98fc2e1e5354
GIT binary patch
literal 108
zcmV-y0F(a$x4+Ev;P(ATozxJh@le5$0$V^JIhV-VM2PcDNs4dxHUa<yAJZ0n7DK;?
zU}cCqKq~^NWdTdpVIxkUwLZt3E-=*s_VA+<N+$3=^5EXZ5;QL~0(2{I!VG{hL5D_<
OwYZ$*tOElB0|N--m@hg2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7fc92c13dbbe64fe028616b005a3f90b413db02b
GIT binary patch
literal 55808
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
E2a{i|2><{9

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf
new file mode 100644
index 0000000..43501e8
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPcieSmm.inf
@@ -0,0 +1,251 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchPcieSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for PchPcieSmm driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPcieSmm

+  FILE_GUID                  = acaeaa7a-c039-4424-88da-f42212ea0e55

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchPcieSmm

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchPcieSmm.efi

+  SMM_DEPEX|PchPcieSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xCC10

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xCC18

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiSmmIchnDispatchExProtocolGuid AND gEfiPchInfoProtocolGuid AND gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..116cde64b2536b7b7728963618d7ac58af5ffda0
GIT binary patch
literal 23616
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.inf
new file mode 100644
index 0000000..46b4af1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchPolicyInitDxe.inf
@@ -0,0 +1,123 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PchPolicyInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchPolicyInitDxe DXE driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPolicyInitDxe

+  FILE_GUID                  = D6AC4AC2-8BC2-4cdd-8776-280E1469DE02

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchPolicyInitDxeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchPolicyInitDxe.efi

+  DXE_DEPEX|PchPolicyInitDxe.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5478

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5470

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c118b285c2e561a2955bec43b5d6ffc4d29ff1cb
GIT binary patch
literal 29184
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
BV4eT~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf
new file mode 100644
index 0000000..8f249d7
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchReset.inf
@@ -0,0 +1,137 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchReset.inf

+#

+#  Abstract:

+#

+#    Component description file for Reset module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchReset

+  FILE_GUID                  = F5883FC5-F8EE-4e44-B386-6021FB320C9B

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchReset

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchReset.efi

+  DXE_DEPEX|PchReset.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x6820

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x6828

+

+

+[Protocols.X64]

+  gEfiResetArchProtocolGuid

+

+  gEfiPchExtendedResetProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiCapsuleVendorGuid

+

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+#  Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..9e8f03f52d06dcaaf8db6e13b30319f83083d1f8
GIT binary patch
literal 58368
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.inf
new file mode 100644
index 0000000..bdaeb10
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchS3SupportDxe.inf
@@ -0,0 +1,257 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  Component description file for Pch Initialization driver

+#

+#  Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchS3SupportDxe

+  FILE_GUID                  = 14537da0-222a-4bbe-9a5c-212a3cbca9ef

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchS3SupportEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchS3SupportDxe.efi

+  DXE_DEPEX|PchS3SupportDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xDA00

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xf0000043|0xDA08

+

+

+[Protocols.X64]

+  # PROTOCOL ALWAYS_PRODUCED

+  gEfiPchS3SupportProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiFirmwareVolume2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFileProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFile2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleFileSystemProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiFileInfoGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesLib/DxeServicesLib.inf

+#  MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.depex
new file mode 100644
index 0000000..d57f41f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..6dad6ec20a6ec120bc6ed017d9bc862cdd6a3480
GIT binary patch
literal 35328
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
O>k4)mUBz9V2mS|j(<Pq(

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.inf
new file mode 100644
index 0000000..b5b950e
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmbusDxe.inf
@@ -0,0 +1,214 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusDxe

+  FILE_GUID                  = 99796403-CF03-42ec-A817-7183411D79E2

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbus

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchSmbusDxe.efi

+  DXE_DEPEX|PchSmbusDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x82B0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x82B8

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmbusHcProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiSmbusArpMapGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.depex
new file mode 100644
index 0000000000000000000000000000000000000000..a04bdfab3e6c26c51e1b877ec289d7ea324cfbea
GIT binary patch
literal 72
zcmV-O0Jr}Fx4+Ev;P(ATozxJh@le5$0=s^2FB(eJ5t=vvkS9OEO#=4tqZ3Ld@ILb3
e-o+9$FEj#lD{#ULfH6UbMvt|)oaC$n0|N*&`XM<0

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.efi
new file mode 100644
index 0000000000000000000000000000000000000000..c0defd06e06324f081ebe9a7f826c27d0068d86c
GIT binary patch
literal 53760
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
V524Xvd7nkcf++d-=bxm3{|oWA-U9#t

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.inf
new file mode 100644
index 0000000..75577cb
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSmiDispatcher.inf
@@ -0,0 +1,181 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmiDispatcher.inf

+#

+#  Abstract:

+#

+#    Component description file for the Pch SMI Dispatch Handlers module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmiDispatcher

+  FILE_GUID                  = 6BE18C9C-BF61-499e-88EC-5CD57430460C

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchSmmDispatcher

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchSmiDispatcher.efi

+  SMM_DEPEX|PchSmiDispatcher.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xB020

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xB028

+

+

+[Protocols.X64]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiSmmPowerButtonDispatch2ProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b1e827522e2745ae4ef4fb672c175618e3e83974
GIT binary patch
literal 50688
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
Tf&1kept%|G|M&S{tAYOm77uDB

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.inf
new file mode 100644
index 0000000..3beb231
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiRuntime.inf
@@ -0,0 +1,258 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiRuntime.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI Runtime driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiRuntime

+  FILE_GUID                  = C194C6EA-B68C-4981-B64B-9BD271474B20

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchSpiRuntime.efi

+  DXE_DEPEX|PchSpiRuntime.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xBA20

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xBA28

+

+

+[Protocols.X64]

+  gEfiSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/DxeRuntimePciLibPciExpress/DxeRuntimePciLibPciExpress.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.depex
new file mode 100644
index 0000000..6fa9e99
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.depex
@@ -0,0 +1 @@
+�������G����P����J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7f25a851dc624793b8c9336c0f77f6ef03d6b90e
GIT binary patch
literal 54272
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
I|40k`KR|d??EnA(

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf
new file mode 100644
index 0000000..2f06103
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PchSpiSmm.inf
@@ -0,0 +1,251 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI SMM driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiSmm

+  FILE_GUID                  = 27F4917B-A707-4aad-9676-26DF168CBF0D

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PchSpiSmm.efi

+  SMM_DEPEX|PchSpiSmm.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xC610

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xC618

+

+

+[Protocols.X64]

+  gEfiSmmSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.depex
new file mode 100644
index 0000000000000000000000000000000000000000..631980e0f8ec20e495bafea5b893c3835d38bb13
GIT binary patch
literal 54
zcmV-60LlLXk?~=zU#<>Jx%%j7(ul@S0<z4yCPHu25xnOBfX6(DfdcmMqZ3Ld@ILb3
M-o+9$FEj%K2msm{`Tzg`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.efi
new file mode 100644
index 0000000000000000000000000000000000000000..df5fff20fd12dfec73cc8fd975c3e6ca4e74cd37
GIT binary patch
literal 49856
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
Jjvwg$`+pvACb0kj

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.inf
new file mode 100644
index 0000000..2ad6449
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PciHostBridge.inf
@@ -0,0 +1,254 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    PciHostBridge.inf

+#

+#  Abstract:

+#

+#    Component description file for PciHostBridge module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PciHostBridge

+  FILE_GUID                  = 9fd2360e-6b48-11d5-8e71-00902707b35e

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PciHostBridgeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PciHostBridge.efi

+  DXE_DEPEX|PciHostBridge.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xB798

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xB790

+

+

+[Protocols.X64]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  gEfiMetronomeArchProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+

+[Depex.X64]

+#  (gEfiCpuIo2ProtocolGuid  AND gEfiMetronomeArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy- /O1=/Od

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.depex
new file mode 100644
index 0000000000000000000000000000000000000000..04a994f69f4355bf96f414fc4c084834ed2e90b8
GIT binary patch
literal 72
zcmV-O0Jr}FsZV5&Q0TEuoZ<^aX^xGg0^(>^9)X0^5xnsLfX6(DfdYuE&nL`A)DfCE
e0FWm?!A%18@S_t-Ch$J;;NHa&G%qv*0|N-S1Rr1k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.efi
new file mode 100644
index 0000000000000000000000000000000000000000..5a87e4b1c0af1e5877defd5e4e2602b783988596
GIT binary patch
literal 35392
zcmeHweSB2ang315KzIogc{6I&3rt`TkpUFLn@&Q28=Xi>0;ClsAqfx(Nt{d|B4BW$
zB@9ul*3wqDQA@;jwX9WvXf^Q#f}$eYO1Enb?z(%^p%trLv8B!L`#tB}J9m;O*zIS3
z`$tD7&pFR|&hvJj^Lo!6a=)ql&7Zcvx#r)mV%|JWE4{OS9K(~^7=3W!P_45>)0)T1
zqLckJtt~M|rX$I3&yRmwjBaqx!Y|0DegR&f8#HZuQjDOj5&9zAe5<Av#L)la)McTv
zx)8V=fX%d%wma>m0A15oUluGa4i#(K1EZkBN_-V$x%KgDnsJ#V({{tP{!QSephZIn
zx{k}LC84kpwl>pNK<CG=X<3)mNxIYo&}@Y+3ihH4mQ_?iclwCFs#mZlot0nubz@4K
z(fFp(_?FS$)z1ijFyIs8Cyj4?^5eqgFC9L7c*#<u@s}vSt|`#J+nDiJqw!RYD`&>%
zHK~Ed_MC9%0M`1%*cBZZXnf<Eri}x-|AK-~esp^IjjVq7lN|yuDLzXBjY8bFUj5|9
zM&l77!zv?$xHn0Ha^oj`5ID;FDn9(@cyWjS)Fb~u;Y){&#(*c;2%pF>A_0%zd<-r(
z8nZpR5#H$0wT<T(k&$<708W%%&(eq}eK~`53p}YdgYcY-;cG2)F)55l$}r?+7|Atm
zW8Znw!}VQ%K*ER=cnrxeimdw?*Q21kqs`s$BV+?j*&eUaH1cGf5^6+TL!dzSj-9Ma
z)lB1BR%^SXEwo&!xoN3cXyYdB2VuRr#zu?^2$h>go<^+7!iRG-Z5kNVzAgT?2bx?1
zR%lx5X3A(v8IH7h)isLdZW;ugQjYw!yW40q3LO?K?x&PeintwRlUNq>*5MxhGM^q}
z8MGdvdK&aC8>bBVzKyUAnrIvJmeI?g=_qWiK-Ylg4<l`^wT!;o{5Hs?FHZy6Q}hs9
zk`jHfjj%=UDYAUIq_^m2QP^4~MUSWGKUg&IrQP~}foQ43`aYESmW{LQw-L4y6Ky5l
zTF~2mDiKunBW<qjONr-TnpA>1_Vh%eEmJ8m(ni=yv@Ewg5$LVNzo4+SRw{8Jl`t(D
zrzh^Um7tD2mDptCloC5^gssGATZx17dwJqgDp4nu*om}R(w7qb1C}SKV^1Yc**K-d
z;ND6+aHHjktlmmIio(`gr4qxb#BVH`yNxhM6KDVEF}8RaHDZMFnS(h7g<tlff*5+H
zwY?NK4tXOkKiEf7X5z1VZ;sDs%1%yW6DLPp<3vds{u=$-iA!Y%%`n0lTJ12I#6Xv9
zG$wcbL<5m16qp%eAR7uKKJ{I9<F6{!B7WUyO!64v*&eMn**KWw(UMsTRC@OSq%csO
zw@*8T!6P!nV~p)EBJGAt(6E}60fm?jK$*q_8wU;3R3-pjp~PTj)53LnckK{kpQTSU
zaax;nN}MkYj!K1E?SN@*UB83I`;*~3^PUSe4U9ct<Vo-D?zS^P>PC6Cr*I{jY1+~K
zr8M%hkD-)@PE4S~GNv6B3UM4wKp}Cyp18=1z<Md%r-f!qsTWA8I;85BRAxLgfLNbG
zraq&)L+~RFIC!GZF$Dtey2&c#S)Xo|O1>|BO;{7pH+oR`!+7a%0DRE;_C&Q0gEBw$
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.inf
new file mode 100644
index 0000000..f2c0505
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PlatformCpuPolicy.inf
@@ -0,0 +1,227 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  1999 - 2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PlatformCpuPolicy.inf

+#

+#  Abstract:

+#

+#    Platform CPU driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PlatformCpuPolicy

+  FILE_GUID                  = cb933912-df8f-4305-b1f9-7b44fa11395c

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PlatformCpuPolicyEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PlatformCpuPolicy.efi

+  DXE_DEPEX|PlatformCpuPolicy.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x7D80

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x7D88

+

+

+[Protocols.X64]

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiPlatformCpuProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiStatusCodeRuntimeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformCpuInfoGuid

+

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf

+

+[Depex.X64]

+#  (gEfiFirmwareVolumeBlockProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiResetArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..e076777323483e39152c49173d8ba560c7091749
GIT binary patch
literal 36
scmZR2lo2M^*m6a1&qs!a<2D_QOy52%7WPv6VE5_4y`w@V`X<aA06L)%NdN!<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8f11e108911dd6a7c97b8144f690b402aa7dc05b
GIT binary patch
literal 33664
zcmeHw4R}=5x$aKLKnR2h{~#(GNOTaz0Ez*LOd!BUgQg^CDp3-W0dfdQ&SV1UMF`Gl
z2_Y3*PcLn)P3#|PZ?(P3pB_7@R->hs(sNqcdTY?*b>|FiIoej*QghyS{p{J3OaN`4
zo^zhZ{XBct`quZY?{BU3t)IODD{ePF^3(N^YyRyk7B4Z3>iY*LFg|TeHHW2+FrvjM
z&XuUsgA5~@8YeT6<=gjZ4#(++^+gT<XAMx!;`Z%^VL`U@fPXd1*BVBtQ~1|sW`+V=
zLtyhfY^I&G-EA)=n1-=oX0W<4RB0H`LFwia(5RGn{rI8sOi5;}yvQ*8P`E;+nuaOp
zx@I;=LfS}MD^%KtZqdxGlFlaLUc4zPC9EF5VJw;%4Aj<FNgo;TRWor&-H#u1w-vQS
zt(G5IpL+GZ$E}uQYhE~-_}qG%)$&si+}u_)xYwHZfz@)R(X)Ks9~-lZS~{19yN6hv
zJ%iq}z7`u=)biSmZQF+Q{soBlzIt}eoq`pr|A->M-+Cg602e+P`sjOm6E(W+6V@!D
zaLbP=*$Tfo1dLmL{NCebLiax>k{|t3ANb+27mivjMcL_A_*9<NT9oa#A4@|!wG?KX
zR(M;sX>1#5wT^AO8)X8!n%Gu>eKC)9OS7{a2I2hPTj0^qWKvkInePIcXQelKtwR%~
zr<;4;MaF6^&9)@J7(nj<Pd)n8eNk`Zs{o7I3bTDy+t|}<lu)bHGX@Iu?%l__RLwRf
zuv+xKXlRX8^Pb!6ET`<M!ys(7r#S`ViiFB-V_(17FeLK!afUGm44Qr-emjfWJnsN`
z1f9*W+A`lm-u{E8d4L8%r_5s?^!8dUR+-C!Rp^>7f8FDC;jSVs?yaMJ{AK^2G1{Q3
z$M-jAp;M*|TIm!x1`TrzY8l(lpm8+llNb`vJV=9b9E0o|K`wpyGz$Cr@<pdiiT;^W
z;E3M4Li=(=f6-qA@<_Q9{XX*c<C+G(bXxxzaFt42?eLE`=t8GV+wT-ON(^(9Xn`;L
zH0U@gu}0ZXC32D}F&ti%N>InXo;c!^DJ6dB6gW!UU!*;e)?bMSfjqKSD)DRN?RHJ$
z_QYF`C#YjzC9ZYKloFOx;3$#eD6wO7KTiy&5&@~i1}ZTrnG!QGN~I^LV_zkna>|qv
zFE|B`65DRlp7_(KeoA}_$Riu15^o`Ie@-j<fE8vmagUEavBk$;BO+9;{YEC#48Q0@
z1rd7YL|?FWp4yLrYY%r+^2uR7*(n%_kTTZs(Q2*U3DIX>LX3H8wX`1De`+#}mPmF4
zEMG3n_9HQ385qa@-YCM4pSjkk1&Y1EwC)jvbB?!m9>%n1SnvObg)*Y7>$|++%b>2R
zu`!y(uxEJ>q@^JA%<5Ad-j<SPG)?MXI^1aT^la<x?S(dF;M<qq?!uIzy9%?5V;Q^g
z`$3d>?*aTUX1Bg#ZF~iCG3vYriZar#@7!^PKpsX@7%h9UcOlu`)fy3*pLC;6*|4tG
zPFPwNd$Nx*t%WIRIR-R2e8MogTT=R<X;}EoU~gm$B41M6C~xEp77|Hu<GqpB2f}4}
zBV2eSt@jB`90TD>ypdf4;Z}Jgw-1CX^+s+O2v_KhOdSY!yEig;AY7U^asob2YJ<lc
zd2S%wXm6x_Alx`_Br*_gtT)2pmQ>yZZ=`4-+;DFsH#si<QS=pWWK?o&_{<V-<PZJ3
zr|cC=y^&uGgj?o~JU<Yw%p0N9Bv#}<hH}`S92-7kg=&-33ZE$pl_n|AZwH^y{3Mw0
znX1s#q~)IsWnf5Fpkh`mUF8OYvI2vrT9i}+mxhvRlxz?s8&HzWn$GSl4808;dVPj%
zYf(np&Xc{U)_F30SZBB^E8Jy<yZqiG_K?HJ#5g?kFGyMq2%%|Z?;it;(rI!OyNvC_
znDJn!hzzZTsl&z4FI7X|RY`=bz5`zhgpii>q@MXW1|)0a@R^TeK=R%nKJ!022Gqi=
zkz#x^Hw0s%7K5=tlr*5kgOUc6ghWXQCCTPa83RHeEe7-%hkZwEAG9-7k3Yv${pW$E
zGECKP41~i}{lY*vOx52Q2#2Y<bs*fwQ+4ui^6^w1wcM-f^G(%TG4SM6%^audtr(Qs
z#Gu@U5>D0Iu&{4NJ~r%SnL$38_c>ViWH$r((Z*|h&Mt@4GR)28oUxP5(Lb@FWx0LT
z5VbAyMmix@ZgCdG3m-*ce3&O=gk6BY^|-b1covUDtOD<W(ya7C)>+aTT>(!PveuH;
zS5{!pP{cjMGVg)m8HLy;>;dyal$00Z&?ise3b<^5X1O>*@}ble2R}<&i{QtIsu0D#
z>-#roW#3AZ+d}Vs3$cmd-phMm4stz@yo-~SoiB11C-!yDxzf&4XLyQ&#Z?|~hCLmp
zvT|#xws;Gi0&ek+IHI;HQB8V_2NwP>krxh_ip4&+sEx+Xp^Bfu`2dbdzKH7B06x7Q
z=S{^HiSl^BlxJ-7T06JN`rZiFoz!Sxc8evua>*{>VrLh6v;pF%BhSFuRjE^^_SWm2
z0<pKwgNEh;?Zii5M4zLM89*MXNA!dZLm<?iudRQ;dmxg1FKUF(4D#N0f-d|FdJJ0)
zhUFUD)-y@jo*KK;{vj$Q__o_Apl?6O*BV@`HPF6o^XwGcXU{)ii~X{vcpc7wGnl&(
zIX<y+yWU}@TJBz_fZV$r?$5&xVPBm4XTjEL@$ekuWzV|-!`M55xl_ntFJknJ$8X%w
zw5CcMTj@kw#yAC(HrtU_++W%=w+m^H;E>{FPXscgE!&af(<AmBj$1uVciNwYLlQjq
zb*F&RPC0G&CKT;s+d+tdZMj0)ILEduWn1h9`&x&Y@*K~_r8sgw;Be<w(9L~LG*)20
z@tfXW`(0R>pr9v##S;#Tf_^M8EI9<l`Aql}PGUSwH$r2NzuAki(q;c-m|z|5PQ{r<
zj`yJFk@<#^(~SK}xGNRMz{^Ozvy<fBgU9TnAjgms2RJx(_MyTiR0v1Yt$k!yjq?(9
zymM3^O*24s+T+k^O=b}>7P1HX?Pn1?1|b6=n*)-c5A3g_5MeBP2BK+>VKn1txoL<U
zwR?MGZ=t#gVjt7qE;2;-_ZeHBfylfU^ij6&$mbuK3*(BibM0D;mLvW}($*&tY^Wn7
zFxKTNMQMlq4RlEjJLlp>5HX<$c9=M$%7bt1Lj1^<m}Z5a%eDX-O%rhbyzF`i;sH9w
za0&AEX5>X{{=mKoPQj5A<{Llgt!Z6WYo`UXQe(@lwn%m{3u#OdRK`z4usy=DVIjul
z+T*>*!9gZis-h@Nv09Hw{1eoD=ZjR3?JTr*9q#WuMKvw(tx%G336v=SeIh}J%mr(C
zj_>&)+SO6QZ~uZq7;^2xxNN_DHHz^KAcXiH?#{xQ{t)|h;A5jvxJDG3DD>DrV5OZe
zQWMn|Cx9YfP~bQ%H29^o?37p<evRE}*=UIgFQ8pWGf~i>dnTn(ooqs@=jYeaNVb)B
zaIy*s=ag)D*%Mkkn=8?10dx)7yi=`k{#q2t*8Pup@WmYA{Y(%1V(-JZ1kt)jSw9aE
z;4;?dY#6UU%Beqvz61~Uj_)J2%lg!B^;dw$zgGZt5~w(jpQ1?W@O$d8Q1aMG9%CFH
zdPKU<V6|;HclDQn_ao$eUjpyl4)1T1_tlcO(C^S+w0+5V<IuLRAM@<#4sVmQu3u{X
zBXXu6VEJ3r`cBRHHT!*JrKO^VC2RbeHP8iFgL>IlIyDfzzRM3wi~;n!WxWhK6zIVb
z%Ve=>^+v^jA^<}F25TNl8*j2UBALKWg3{#;)}StqL<}R8`0aEj%9?!%xt0R66nrjA
zMOYpl+h-j@$LG^5V~_X*=b5+!%6QUMY~6xBkJDU}2eyn`*>FpC`i|?E47n%7#PEK)
z4NRC#-F~A?b}&iXzDOqj$Yk*L{MZI&hHk55lCgcEOiGvx-#%X^OPGw<er;?4l+2G^
ze<%gKW7ouHAA)H{Y({MQA<P9vY--FrgbCG%O^l5{<Y6W&HsTPpHDW_zo<r%#2&>Sa
zXjeFY!<{Jd-uKT$w2fU22#s?w648dj*Y@<Yx;5ipf#x}7YH3vD6gZz9JQ!Dp!MNED
z|4DVa_-DN=Adk!yVlz)+fZLP*tY{vv4<Q>LDBr&WR3a4r4s=KGQpZEA6VrS#SUrz`
zP8#P5k(>cWV(dDdJpot7{!w8+4JXo6L{A*`*<Vv2x)RO|Elz=$Tpm!RewJ>~rFW@P
z3`X`y^v2w#(ah&D?{6CN5_(8V%)`XMX8;o#;_L3wqs~;s;cUMIL!`x%(b9R++#H%a
zLz+9C=AQkda?y{_Z6T3UNI4Y<i_b1{en@1zDH-FV@VgEQ1{r_FVa)x9KhFI!hr63?
zo*XqCTAk>K&WNOO{9vT#>pc56VC)J6Ds-Hsd@hC2j#1?8X<Ghk@d1Akz35j1UN}8r
z^!vTfV*wFb6wd$QEVw9ioqew(E2q_S7=<D>1UZNQfC3jufwxfLcg`qJzJdV{Ia2d=
zdyk5_$$A-+75(0d2}?}pzlUX*x73{Ev&T8IP?PI*(LeXFPhTb*Y%j&!q{X~OA-Udz
zvZ>;HUIT&4KZ;Kw`7nCGKNk56O61cj**Jdo+4m>qb9OfPL?s`Ce4c$@nJx9P6eFi?
zp(H*@@#2B^$u2}tw55YXKb-))&uU4_o^xC}t#x=dzpK$VVr`N@EFBZ#(lA-2*6)c9
zEIw8NUznZlaHRr@ZQpP6UxEeFVV6+_zZLFIK@)}8%Kv-~%x#wD7F-K+kN!cK+a>3%
z5H3_~%f@V!hA6tk>1vV@%r?CT)5t7`C6?9OC40~i0mjBKar$8F6$#4qsk1MJlPJS9
zq%5D5RhZDDC`ryxvJX!sC!Y|PmK_w*d@)?`K<DFhmzEtvTL7S&oi@+2H|Ma2!Uwy>
zTx72UtRf5s;W~F)`0M~&;qn_+$Z@}Yjea{Q{Z@&*{m}2V-|Ue}2>NbOcHX*{bh{Tr
z!+VecPDCBum-Fn@L=kM7LAq&fr-+|P5g(v;+q2>#z6FND4)LMHv>yR1JS~Drq8X2%
zS|2kU8GqoYd0)!-0%iR0ca9l1DjB)(eIAUMFJ<(xVS@J{PD@VhO3T(O)uTsu>82$v
z9sbSw4S$?ikY{Hk>XgtW@1{=oNu9P+r+JP}<mX@a>vib)=yy5<x!U(TAa&WA;LjlW
zc1pgNk?+a(w5@{gugTSMVxkXkPvpz4;P~(&@_j?{eGSpWZb{&q3zm7m<&S85-S(I$
zITiIxMMJVv^eOL{rpgoah)**4Y#i2W^&G(l3w<1G6YLMZ10ZaBu+W+^=lCJxdnx#c
ze{I7m5W_kj2%bT{vwN`jK<4AjogCynFm@X%b-tNe$fenof?>yoy*jLuU*yDc?VzWI
zJfnlGeY?fESeJb<7PoTzb=v9PgP9fxdONMES9Tw>4F{KlZ8Lg(<`uvK@s3#EdaiZk
zU*X6<iw!|v`I-DQuN1I>Pf*~CVi64cvCrjFpjWK6J?~w?yI0s>{cm_jtzHt=E*9fV
zv5YU<X#w^EVhN*iXcXoU#86yDVxJKz#<u>`;2e&6<hDKq(uHPR$%ebRrF)$fi$zeG
z0`fH=hqI<&33M83Jb_fRa&hcIg4}Lf{q_xPpsS=2Ue`5|Jh74TjOmYg9^J%QreQ6^
zEi+V~kYIHlqqYx?Awq^QS?sQhd0rS_mfXx`iHIM4Sjas;*S>AaPkM9C)5kc2d!VN1
zW(l)|PxDNw+XNluW5cXgCwNN_%}dL^XBo3%jc7Jr&%C)C(P)>Ll>8|nM0^e`bVCj&
zb5}tM3;Y658ydL7jD1B^g(jE{`kx7i?Fy>BB(Ln5FbQ_yc8mQh#3`C&Nw#t)<)<20
zW}Lj19z{gjotCmIRZWx6OG@R({x+B3;^od$dxfu`%NBc*%@sU!h_WchF!77!(+c~Y
z-|A2%4p*K6TCSLmUxj$Hh>Og&%*|M`*%Lu24_9~!BMFDhiS~@WR2{nfUzQ6|Td>aV
zBPz7Q-j*n;%MtZuus?F66g7;ZzJ&w0xF|_TQIB8Zh|>JS-G0two5J}OmqYc?ZT474
zjIY&GghFdxM5wiyE0NWdRU&15ITx}PX<09|dM<TSQ{X%;@G*SZh=4yT8nKPx{P(z)
zgs}anEoTA<djo|D!nQ-ekuoW4HiiA`ua#jC_H8#cg&n<ES*L~3K`uuEgsI-h*H9eJ
z|3{(04*N1kg9WXgJ5bmgZH;n!y(gQFvv0-R-<nxSVb^yG7wo52RZ^>maR6a2)LMO~
z)ibF-hcSXfs^UORr)o`iTJTF3^r2svKaI2(5xJ)wnQ;D5tWk{64tpmgNH;;rLn!Q{
z<SHTJ%Rp!)KT9QRq>}H?gpyx4rCbLkxxVVdVYJ|IhvGmb@0q0B=_o1usg;CcF5jAf
z(2XWKUASpD%@MsEl(A891bI&ZZ-EDn5A(LniagKx_&6gabPI)XaEP$4vM8biUW{W6
zfb3&zIzcH{`UC~lpe~-AfR>WTj_r$es+a+FdwZW>o+2*2U=o=o+k;j1D`lAC2GBzj
z!9kDW(0DQvOfga@D(LA6k^;ptUihZ~0viFrRs%$QXm>kOf-gm~n~^ZxsnX9gCCx5o
z@GyTyW(9Yl7Wn3Z0rg>;;f;Kd6$dlDkzyB^6Y})@!$=`z9~to*1~dFFmX?NU^b26^
z4;`MRw?2y3z)-7sjEtcs)2p`N$VFwnk?*@O@b6+A`Dm=^jr`n&y}}zAtE?rP8S=80
zCcaX#>bcUzU}mUTqjT{c(^Wawd;cI8;XLpCuez{B-pFTMf@{5zFu<N4b5QA)#rkWQ
zZrGmhx-sFd6bJG3L`15CXiG$-IfzgqBHcl(PDJ2vPxh)FG1X|ba*T8+i3uv?)^w;Q
zraMl+Qlse#;*SZVaTWw#BCpF@{byLl?is_PD<Ue1^C6Uyfm7zDyyHW%Z-*im#-5Zt
z;(mEQL$QTb!wXl{96Q}Z2R5@G<_33AKW67`30WKE;L2cs7u~e2F#Q<o?*ajNc8OF@
z27mQn=-JH0S6{9(bYNmYa_n&0@N%aJy)E8`;39O?4TR&3cu707j?F%gBo%x>%Amt2
zkkWGs2b8QPd;!*nP)dI>UBBfXC+m&W4vu3GbLQeJo5mvM?8=CPxM%YYLyKaA`;||-
zxK?^2zj9%#ypbKAIB~T%atg#fYhCOcLf9clm4djzn;xfb^hWM+@d_at42ff#LK}3w
zts$$&OO`M-D!PC7E4tUriH6Ulgxnp<8D(*DS0~dfxEIqr9KxJtnu?J)-6;xp|D_)p
z>W=7Fh>ugODdOaX4A&|-Tu(sadB&5Q^1}|-3t+FJ0V!Qpivy^1HO-kWL@KNdX~YZ{
zB3&bPf)n-(s;#t7z4tvw3FyWanh+gM%x0toKevE49M`HY4|35RsiARCVVtw!m#sC+
zDdHz(j01KOrTSIG3ESR3L6mUF9H&B#;*p?%Xh^TFrz<Vgx?_TN=6#2eYW|DZXQiTj
z8R+k>R_jAjp|(BZd#T;Y%Pk79W{5?Ph!vVs(|9s%hg3r@)QIIn;exU)l2!qeY2RLy
z^8iy~4r9WUe{%3WBF_*4FQ!IltoT-A%~0hE&o#zQpwTLGNh^efL_-T%y<KyT$Jxri
z4~U0al6aq&iz9Hr;iyuP+dP#;Q9H=Q=3Qk`BnCD{)^O6P2IP_|-ji@Fz%GXEtD=@?
zhfQ;xf*dZ*Ni)q=lrD;zM8q|emngsIBx9oH1<4s&vS>q4Uf_&Nm!D?{t1(7OGG}Tu
z;g8@Pvror`w|R!=fDB#`<eDbOP=<)LdOJDb>A6@1b{TSV$?}{l1bjf2%!^@QY$oZ&
z+8``f6#do-3G`N*{*d2CIk)$ETGWhiAyH5{rW>YQm<vfs7cw=P##n8h-%N{pt7khK
z7&Z~juVoY8>FtFleeU9LG>xbO|G&3)9dN@Faf6Bbg2JT(cL=Y6YlJuu-y`_qNG~N_
z{CN!ibOz)PsZ#v)%n?a@+{3|69pn|d0>J|p=+cT558RsrlLEm7m+1x-DK01nn*zaS
z#m3{QMXe7DJ}568onG)P`LEdcOAHEGzQ}u^d{Vp|HcQu_eB0#oLhr$cvuT6(;M2lR
z9J@5&Kx+d|Kr0FXlobLh=9N9Gr5yKU@XfCfncS98whtE2ZJ;uX+A{Y|H4L0>sn1F(
za*f8l6ZVM;(CH4_vwIK#w9toW{w&nLu;wQvnKLz-aJ|WM9Td~DWB-e7Pn`FF-^2Ej
z`Q>Qvhh+ZXD7sD-uO38q$^4E~80v>N^5BeI_`nBe(C~MrBr*J=;Sk!_@CO-uKAhnu
zRJ}06N!eE-g|XbYr_?%xwJM(-v|12P(+kxoC`iiG*nGLpPT6uX+?NOQScOQdwXh4H
zz~tDDiLfd-p+uk+56_lKsMu?|E2iOiSH%SF7HqE>z~ov=@{wKX+o;*ED|KN-&~poo
zL<@GI9+m1M?3@G$h**?<gp+^_(Oni$ZEfOJu;Xf1K|k3Ei~XLbs8*ZjkCWpp`qlVb
zX`30kv>)#TZDKj>4*RK+_B?zOrN<JY@!!FxHV#F#5;6Mpm#%_yTcLgWwR6?@@8(mQ
zBpjV%aQ}k!#zkBk=E3)3c13;y@(2e;42SUw!<JGQAVoh{OtK`C3FOO)mRzbb+w-KV
zwhJkrm^f`Fq}ER&i;C?m!k8l*bRS8l3+_!d<SvN4Pbx7OVH}~}=hIT0V>LywM=FA-
zDJhCF+y`y6lnw4@im1TUz->cM&l-dvM-a4W2cogxW;gD@6gbJsr>ng8eF?P0untGR
zLGGf@1BkHD`(!5(VjMc1LO`gdoN0m%`>+z~^%V6Irz)a4s<x92tdhKcY_-11PZ4Ip
zVN^4UcvtHob>b+`A?<xw3D8us;?kH)Ql3j^6OJ!*H$wp}<3iM18dvXnUDf;ip6q6@
z7aA3{z9Lr*{WKcv(#UbOHtlchF3}s{l6I;!!{x4A6eM$3&D(Kz^-PA3{>wBp2hi~4
ze~WAQU(<j~TpBPUM4>4kmo{?zqD&3)D6{A%qCGII2z$fdQvTgb$aOR>;e?}c_lVW~
z?E**AqIg%mPFLla;Zl|Ze}Hbf=B>D&sk#Vks6yr9bGm?lr9m!R<C{?YwHQ$#5t~=J
zjdbs0@n;Jiq<|yEwpLL`nM!Jr1p~M98XHjXVFs)}?uBc0RT(+1gros{u=>ro4|*1e
zulPDn$-u|o|E7WO%O~Ty)BRm^DBACDvL@@fgFy^j6M}YVy5m{27P^)^$aqRgW(n?N
z^*jjJzWBKQ$kyjm?gLnwABm=cv@P?A(V)Ef$NKxK;tnHZ%d1d7$cbx9<~TtYWoica
zT(?xUjN(;c;<WU6>-|6C>iJ#}thsab3j^I5u&g$0zZl(f6K)UWs(_Du8LvH7@cVZe
zzm*r;BSa(cb3Cpa<ic)fKuBJ6kar!_zt3Z5z)tmbmPCFlC&g===IVr>f{%@ZTLS2A
zaLXR#?dy)|ue0KB7<l>O@EQ2dPJJC)W?m2wOgil}d_l*uh6?$uohQ#yiD8|Gku)Q1
zJtk|Js3mLQFFm{mqn@+eBH>bFm;K3Ka-)sg$*{{OsozBrE*+S5CQf{L>xj3?cxBUd
z?`S?0Otfc^%N`%?xm`B%b7P_Q`X4#=Jd87uxIMEWi_$-wJ;kVXm^Rq&{zCc#+Gk7c
zuhH7y0zvSSx{i@>M={U78ww4q{|4xMWT({s>==mo#%qrLuj2qEu76O<|B(9cMJ;G-
zNgM9%XF~%@L<_V+*g!Uj+rpyZ?T1hF_D(D0HPn!}M4S@8;+JT*B;N#bIGuODSYYyR
zAO$S0JMqTu6QEFy?!J$eC+lD3sxSVz0&`kF4mFyCxUcjT_!4(-!s6bSzAQ(K)#hAM
zzMMxBP)Xgl8{lpaF8yP$fmF~I<9a{t{=gR2<W-r5T~->eb!~+&aKi?LFZn$;#qduh
z$m|Qw=$3yifGd?zG7uxGf_FK6jhB-c1#pd;43P!QkuT!W?xDM^^jK8zJc2*ZfiC!4
zDs>Tzw`nR^a4!pRrD_8{!#+zQ<a3c1y9TOrBuiE0--AeIrYc$Ll<<=_x$&Nv=&@MJ
zzb%RViui4D(<};$afylnOy1|p<tYKg;J9UQ{&CPY4aSw$l`%73`Z-;?AeJGHyX<FP
zm8xt|Og8k)<E}xdjsxyP2nl?eV;R<=Q7SJYUY|QuXk3Iz5in&7`2_@B%<!2M?|r!<
zU?UQ~<R7_%DBz2-D|RoxdY6@z5KtSeaGv44{}~7)9l`X?!$@MKqf9nq1FtEg87-1n
z%;B^Z(s%o3VX*o*R!$Zi=AVKwiUU`gy+H`HAA<8pk8a0H_4nZWC4e6By_y`L@vQJ^
zoasTkT?MnG3IM<Zt8VN`(C4fc;00Su6MFrGKLF@iAa-0y^-y=wlolfrwb+JlX8mQ0
z5mbgioN(LC+U<#9>VTP3cYEHHxhcCnKa)AMK5WN7Z`av99RK<VPB62lgilWHJn6-i
zM*vgxzfLk{Sf`v3s(va%YC=Vfsq<DGg^FS-5p#z8o5E!>-<29ikdqlcIi&OC@bD|(
zi)(}7Hz#+#=^geefvG#+<UPvHH^&Tn6*nwfkJ<nJuZWgtM9+Sd<3>@J{mq}CL=0Qe
z%D8vzzYOi*8-y@~a?v_11rylR=!EKWTdw^{IN8kzXNh3;T`&_p_~=poWfMAXo{bxv
zBFNkKKZQsP2g+c$OHSvwwTQ;Xa2sOZ3Vh6CuaRWD<S71aEAm*4G7(uQveO=l4<hLK
zN&na*56kF`f|8OYD@)fbS-O19l9elOS!w!8LY1MWMl;{c2~OuXIq^*CM=)KKSIsZq
zQXkw{zNv1@?D7@Wf#Qwp%ZqB(1}lSim9Gk{t0@fDYz_pM)P;g~71!6)h06OD%&Zc8
zit8E*w+0L&f#0I0n%e5}TWdGZE?rw2DhzC{sS*MTmn>SfY|X7DvvX%%yESiadD+}+
z1eK&%8CbWtUTSh{Wo>QXu3KvYTV|KkSCyC4;|ucQ+NQ=(AXpBG<q*k~iQrjY&=jg)
z7O0a-VHEZ9?^wl?mSS9l49D_#q_UP-T)!m{G%quY1HpCm!A+HQRRPCkqS`G@p@ycA
zS-d4k5_4r>eGR40N6lbpdEtCBcWchpE6rQht!oT~=1X8{O`x`Vb<XVS`FQWR(u5UF
zf%!RkTW6wvV^eL2c_n6Xecig6^(NFQ34}s5b?Z$uUod1&nKDIClo$acWHcEKLL0+~
z!z+QQGU|=ZNQ1^*3ZLMAdj7BQDZN;bdv(Dqv-sxXWUewpm1}FI!xnA503zvk6P^;5
z)-;;cHH~CZJ<}}NSkoY!k>T>ilDcZ;iT-|y<7oO)wjSJ;Z~A<j>uajbE2f*d=;8_f
z=+nO!RW=3+18bYsqr;a3f;E-3Y}9gHBs!5CUgqkY$~(-QN?%U(^!Z3Lj73fB)}iP0
zled2PrpomJtFo@THqak?Zhbi37S-2>pbJMzV<}w&-NZmlhJc3aOG=Z8G1f0CNnXA(
zIlbyW=kyo#TiH|>s@W7ss^S1R;YVT1vL-Z4KbHy7=V~X))owr<=a+=nx%ePVSoLek
zNhV~pNn{(7^c?At!kW!BjrF3T#a``P{Mnz#9d%aCy=Lp2*%0ud=vM|dRo2v12ZF-H
z^ZG^0D+vV=IAk4}@9!9&Z`JafOK+Zz@IqpQyxgt1@|iW=%+EK4bvOVF)U6L~Fc+9>
z))!Y*uUT5NHBem;5`laT3RYBZt=ZJHsi3i{rbcp-6)womRdtoMHS6mz+Aqv6C6(&}
zZrkV(U-E$`Co|yB=kMk9Xrbkp&T8r!YpTixNYD8Ss;h&6#zr_M!5^;jIc`7s7%E)E
zA4Tqp#ww?wH9sw+q^SxKpwYOkGFZp<T2;5Pu6|3MxvciCh7GV&mlp<V1EGMqw6dnQ
zDTw)3m){nwaThz~%6+Bv^=8Q?%&zn)A6*Z#4+2-A__v)|UQ}OMZ7vB0>w|<0V|m?X
zG-9<`Tp6s~1j(w{SXI~9)X)H*1gZtyB2-hdN^0&7=y=&r?#=ZfOp2A&dj68rRa~O9
zqc~U}3RICd=3}#-^KfH*QxF~!!tirzeQndGfVsFn7;I_?Iq=dZW#Y~C=88adO{Jz6
zfLXPnvTnW5n0hR&Z>p2pW8M?)Hwy!GH40Ce4fS=6a55h7+f>=mfTocgOA!=JEKejv
ze8_C%Os@P<P#dI`PFcZP>8s_7R}{ys#lPjfv@`*x<@HtdwVGymT~+<2hRRS4rUvuY
zK(Mi<zK$|W0#!|D^1IAiYwBx(mZgTVc;#YURj9^U6aI620i!V61gcHn?0FnSad-}=
zPeai!t*MoE>-H~#<C-wj38wg246TCon`#=tD&Bj}KOT!Q5JL=_I)kwp2qI9Zk)g&r
z`;fT+llzAYOVgdW;7h(haPZoW4<&C^T}>5Ms_sA-mnb=6H6E-(j4Z*rWU*DSa@Jg|
zOr$PXp2wPG+|3ybPv><+vZ~TlpAOwhsS8s@S3-A}@qYRRD$>8A^7w)}j7*FMPDVGt
zRT5s01p*=bYcjccTd&H=y~g>Oy)`FyHX)hmn~F;Kk$kvB(R^lCUkzgZTvKhD%+BYJ
zlu^cdnOJG#){A(`R?D<PrCU|HSEc(^+NIKNm7Z2<dbzAWL8U&G`c+!2(h8L}sC1V~
z_o;NhN)M^DOQk1NYOC~&O4IL9a#iY6X`V{`DlJxNg-RP#x=W?)Dt$_&QI#H3X}3yG
zt2F&iDK~f4>^aw5JNLT0c?F9W7cN<PzWK1Ys%G)JJTdTfPK<b;o^YpQa`kP`-MS7>
z?z(m6Hq$q2`gCUsJ{R2_7oF5j{^DrEcogsN*2<TqzS|}UOK>V|;K<h4hqVA-J{rfq
zu@~<*QO<W|Nny#qO}X_G56(3UzPu^;&|`VOZ^XG&;@acyzxS0}TKq=}Fi$*JsZ=M+
z7MB)9;e_9zK>t4vPY*JTS8q{p_9iix@c(lN;e1m69}o1G1p_6VefQmWSFh!?$N$g4
z#HL#R9}gAV4P!QWuf@UzkN!U^^#AR^|F6L&Ui}{qr0JM7Y4zHFIzIB#3yt<yYJ%4<
z{^_SqeKq#XO&xD9ykYKlG9Lp;H|bvT<Ta<@;I3KC_<COtRmDU9^VQGA$fSdw&p<SL
zfEzkgkeri7^O2MW|0@Dx9KKa(d4$K}?B5NKL1%KqqemygqedmdBk?CeZu+dOMA(b=
zaN|deNQ8%@1H19VaJSwKXCTJ8VcPA6X`>q+f)iUeJQ$xv+_1-!2=h;u+<5+3j~h-!
zzjMPW0NgNrt6>xQi{MmL5s!&qHl@Z-L4GnWY`I}~8%2R1h6+$gJW>1(0pNzAo`9M1
zy#(@z*YH^Q-wkIfei{$+9X#pW^$EM{6L!}p?5@weo1U<no-kkffb!8a#$@Pgx?nGm
zJTTID(!c}(vmVd9_z=%7PxvhUO*O)-$FgR;gwb_`J#euDQ@^WSF!gi8)K9~VrSyjz
zcGoA~U7s-P&%jIhjJIxj!ftxPZh2n7mvF%2VSU0AA)k+i$1=FP;E{BW3(lkxE_f)N
z=7K$JG#9M<9{H1%o1U<np0Jx9L*1B+_+cVteZo2(Xm}*_p-2t0KT{>b2pz`cOYwt8
z!*2VDpTxsXJR0xz2l3+}pO417{X_g{{@~Gg`inMb*o*kXN5gLavFb1tZ#16%an~P$
zc)~~H-Tq?zL2B@8yxV_lN{)X%#1p>M<qyK_FWO&(*<aWWq^Ifb`h-cp(1j<xuFtOI
z9&d!lBi_>l@*~WT-h4DnoT=dJk&cIO-JXQ?yhD1ztggrJ0^}!yo)-^^C(QWCN5hPt
z8qP;X&j-X4&g3A$qhZbuZkY3f8`kkt(=-0N@r?g&nDO5Y>-etg>-er=((3lV0eRZT
zhj_wDoPgO5^f%0RVEWGuGv2vj)+bCik*A)2HO%>!kA^wk+%V@~H>~GhP0#t)jo0(3
z#&f=N<8^xx&vw`2Tf_JqA^MkwMP>XDrfVlnlK#^0MHtWYpN1z+OoS)EUvB((1b8>B
z*DJcdUax4_?JvsL>lKZ6>rcF1uV}p6U&QP6ipJ~ysbTg{w|;v4qVanDqG7kc$zQKu
zG+wV?G_2Pz8rJI<4eRxbhV}YI!+QOqVcowqtoyfyp^~tt45=S4`SCd)yb3g>c<Bp1
zgwNvD{ZYd@UOY;oD1YR$j7e1H`MZQaQU1thDU+zo^H-^5X#Z+h`<ME5LmBN44Qmb>
z*8bD5_LqjWe>AN9_ZS%Y@J?0?3Fq~JIhE`AjCjI&{?f4a7h(EO&*vJ}^O1)2e5GNo
zFZmG8#yf$N1fEagb=$9D;wV$Y+I|gd`!%fX*RZz#cJMfcmvhTPyoCLD$09xrcEK4S
zpgfJ&<BxDLUM)|<D01kD*YY*qEuZ)y7)0#58n4HrhIRXESdU)~>-j{(obMR|Exg8Z
z%(YokpZ$H{cEHUrOzWp%El<NB6ZU9W+pA&ie+_H<s!)%PoQ!zQI6=4@@-%-9lZ^h=
zu;!;>El<N*Ukz({h2XIZubwY8OnN>VCcPUbe>Y71+_0W+b$#mR#!E>4vMcNO&Jw~p
zzH3;=cMa?Ku3_E3G_2#hhIM;tSjTq_>;9o(9nUqa<Bf)OywR|Z=Ni`WT*Eq^Ygor~
z4eR#Pux@V+>-N;JZa)p{_SG;`)r5wL{72c3>iSXC|9C$dUw<RCeY_u4^9{oQmzH||
z(y*StH0<7AlHR>vBCPuw=@EMW>iy`s_McoTbFSi+g7UbO{&+tMC*Yw!*t8$-M`fR+
zKmMogM@{HX{kcy2ct0xJlgk(`MLyn-Ci+9KU$lSp`bEQf{i0#Le$lXAzi3#mUo@=O
zFB;bC7Y*z6i-yreVooSS>c^|sm*<23-uqGh)2n>axrxJ5^zOVZKl|*zjQqlUWAEh)
zJ6FikkN(T=TfgNXzSl7Lf45(P&YO<Bi8LPz5$21K*5S=Uek;<YI1rqGyoL1tO$06S
z-AJ##2zyuLbCIr4`C_C|ytyc6`Ukvu$e%$v7-u-7Pe=NFynf`nkk(*BYaw5YbT8gw
z<e5IL@=V{xTZVEQY3C(Uw-=FKf^$ylnTvD*Hqq3d=_u1MDv%$8^tUR18fnH9Nk1Iv
zgLpT9<{_kS<846RM!I+^>_)y2X&v5X<QtIsrWwL-S0c6WQctFP@zO@7KU4V=NX=|n
zz5r=8-d&(!`YhhP$Uld)B1h`X^aptNq5LS)_wX9X{|@Qu%cRcbNT0>a^5>9FzFg{T
zBAt(y{wYQJ1YXj7lc`VUnU>+DjUq*!IyWHQrSeSo<0Z{g%ukm-WZH$-hjONYD-5F@
z`3*?FjW-MVr;+{{?|$UZBE1D4FPJYz`g6QbA^$qk#aH5A8$rGh={q-~k05U&z4<1b
z10Y|DbV`xbIUDJ(RK6SOqv-w3p!q7&pQ`)`r2JpLSv~=2naVTWfR{QmeE=`@+>6wY
z4L@Zuef$%KaRT{oB26ukcBLbohPMLc*+_51+l_n?((S4o8YX>GhNc)p*CN)8NHIp}
zbP?bosm73$u|~?sRAXey4kHBzo@p#kPchO-$9jY(r5ck`E;mxfr5fW>rc1i13eS}F
zNKgKcBF#)OG8ZAm|42KEDPiK7PF3YhNw3p;0po8~C#+Q|%SWdeqX}Q?F)mG+ZH#Xi
zS1~qM;Ym;Yqe!XmqNJwF!V0tja>v?Fw0F1L?Wfz%v>P4i9a$X{I?N7VM{Y-6hrh$>
zDDEihsOZ?x(a^EAqq$>O$KH;89qk?aJD%z|)Di9I>NwVMqNBUR?l|3Xro(u&;j6sx
OJsf<kZ%Hu&{r)Fn0|QI|

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf
new file mode 100644
index 0000000..9fb78ab
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PnpDxe.inf
@@ -0,0 +1,207 @@
+#/** @file

+#

+#    Component description file a sinngle segment PCI Host Bridge driver.

+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#

+# Copyright (c)  1999 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PnpDxe

+  FILE_GUID                  = CE7CD764-a1d9-44e5-9857-14fefaae96dd

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePnpSetting

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PnpDxe.efi

+  DXE_DEPEX|PnpDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x6460

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x6468

+

+

+[Protocols.X64]

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiNormalSetupGuid

+

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gEfiVariableArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.depex
new file mode 100644
index 0000000..df1f82f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
��������G����P���ƣ�^�H���3����HN
2��G�,?��f�����c�,E�9���&^��J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.efi
new file mode 100644
index 0000000000000000000000000000000000000000..906f360be2932d1749f47ad422ffb41de50fcc47
GIT binary patch
literal 75776
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
SiuK1bYuioqf4M#q3;Y)f3m@wM

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.inf
new file mode 100644
index 0000000..a71cffe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/PowerManagement2.inf
@@ -0,0 +1,270 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#Module Name:

+#

+#  PowerManagement.inf

+#

+#Abstract:

+#

+#  Component description file for Power Management module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PowerManagement2

+  FILE_GUID                  = 41E89AB0-BD3D-44b6-A431-E4836EFBF2CB

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePowerManagement

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PowerManagement2.efi

+  SMM_DEPEX|PowerManagement2.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x11618

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x11610

+

+

+[Protocols.X64]

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gPpmPlatformPolicyProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gPowerManagementAcpiTableStorageGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/IstApplet/Smm/IstApplet.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/ValleyView/Smm/MchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/SouthCluster/Smm/IchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/Silvermont/Smm/SilvermontPpmLib.inf

+

+[Depex.X64]

+#  (gEfiAcpiTableProtocolGuid        AND gEfiAcpiSdtProtocolGuid          AND gEfiSmmBase2ProtocolGuid         AND gEfiSmmSwDispatch2ProtocolGuid   AND gEfiGlobalNvsAreaProtocolGuid    AND gPpmPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4b64a3dd6e15d39502fbbf83d5c0383429b8e817
GIT binary patch
literal 30208
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
byzBK{y}RsP$95T*-?)az-jTZlz<K@?q3-kt

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.inf
new file mode 100644
index 0000000..00e3b68
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SataController.inf
@@ -0,0 +1,204 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   SataController.inf

+#

+# Abstract:

+#

+#   Component description file for PCH SATA controller Driver module.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SataController

+  FILE_GUID                  = BB65942B-521F-4ec3-BAF9-A92540CF60D2

+  MODULE_TYPE                = UEFI_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializeSataControllerDriver

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|SataController.efi

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x6F98

+

+

+[Protocols.X64]

+  gEfiIdeControllerInitProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gSataControllerDriverGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+

+[Depex.X64]

+#  (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.depex
new file mode 100644
index 0000000000000000000000000000000000000000..b1a5ceab3b2eb73466f120b95a1915810dd0401f
GIT binary patch
literal 36
scmZSDU00wl<#k1HmIcEEb^C+9Oy52%7WPv6VE5_4y`w@V`X<aA00;~YUjP6A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..5e689a9b390082fe56621efd91e754b4c73a4ecc
GIT binary patch
literal 25600
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
G<-Y(^-ZfkR

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf
new file mode 100644
index 0000000..ff15e86
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmAccess.inf
@@ -0,0 +1,210 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for the SmmAccess module

+#    {1323C7F8-DAD5-4126-A54B-7A05FBF4151}

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmAccess

+  FILE_GUID                  = 326E9CC6-9839-4885-B2ED-275903B668E1

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+

+[Binaries.X64]

+  PE32|SmmAccess.efi

+  DXE_DEPEX|SmmAccess.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x5DE0

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x5DE8

+

+

+[Protocols.X64]

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7ac00dc993489f35ac55dedbe2f64737329ef2ab
GIT binary patch
literal 27136
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf
new file mode 100644
index 0000000..2f416a8
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/SmmControl.inf
@@ -0,0 +1,129 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2011 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmControl

+  FILE_GUID                  = DD787473-07CE-4c63-82CE-930B33F39C09

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlDriverEntryInit

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+

+[Binaries.X64]

+  PE32|SmmControl.efi

+  DXE_DEPEX|SmmControl.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x6010

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0x6018

+

+

+[Protocols.X64]

+  gEfiSmmControl2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /ALIGN:4096

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..4bb6074e530b68b05103418ff7a5cc63d3cbbbef
GIT binary patch
literal 126
zcmV-^0D=Dkx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
gGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj%K0|NsC2pp3&(f|Me

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e7fd5bae69e55c6e5912d58c3bf5123ebc0a9fbc
GIT binary patch
literal 55168
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
BkADCF

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf
new file mode 100644
index 0000000..33f7a05
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64DEBUG/X64/VlvInitDxe.inf
@@ -0,0 +1,259 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitDxe

+  FILE_GUID                  = 93C81A74-B648-4f7f-925E-E4A0CDCC776D

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|VlvInitDxe.efi

+  DXE_DEPEX|VlvInitDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xC620

+

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6|0xC628

+

+

+[Protocols.X64]

+  gDxeVlvPlatformPolicyGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+

+  gIgdOpRegionProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gBmpImageGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibDxe.inf

+#  MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.X64]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:DEBUG_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:DEBUG_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:DEBUG_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:DEBUG_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_GENFW_FLAGS = --keepexceptiontable

+##   MSFT:DEBUG_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi

+##   MSFT:DEBUG_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /Od /Oy-

+##   MSFT:DEBUG_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:DEBUG_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:DEBUG_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

+##   MSFT:DEBUG_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:DEBUG_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:DEBUG_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:DEBUG_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..bd23d618afefc089f9d05106958bc03d862aa62e
GIT binary patch
literal 6080
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
G`TQS5A=ugg

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf
new file mode 100644
index 0000000..48f7908
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/CpuPeim.inf
@@ -0,0 +1,123 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    CpuPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for CPU module

+#

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = CpuPeim

+  FILE_GUID                  = 01359d99-9446-456d-ada4-50a711c03adb

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimInitializeCpu

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|CpuPeim.efi

+  PEI_DEPEX|CpuPeim.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiMasterBootModePpiGuid

+

+

+  gEfiSecPlatformInformationPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiPlatformCpuInfoGuid

+

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.depex
new file mode 100644
index 0000000..4db74a3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.depex
@@ -0,0 +1 @@
+�n�*��4A�V8T��
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8330a83cc62be5e5c7900746e5d09a6dd2fa8d71
GIT binary patch
literal 93888
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
Rn$p;MA$=&lI;%G8{{qS9iKqYo

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.inf
new file mode 100644
index 0000000..ce85f09
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MemoryInit.inf
@@ -0,0 +1,196 @@
+#/*++

+# This file contains an 'Intel Peripheral Driver' and uniquely

+# identified as "Intel Mobile Silicon Support Module" and is

+# licensed for Intel Mobile CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor. This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#--*/

+#/*++

+#

+# Copyright (c)  2005 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    MemoryInit.inf

+#

+#  Abstract:

+#

+#    Component description file for MemoryInit module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = MemoryInit

+  FILE_GUID                  = D4EE25EA-0B48-43ae-A016-4D6E8B6C43B3

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PeimMemoryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|MemoryInit.efi

+  PEI_DEPEX|MemoryInit.depex

+

+[PatchPcd.IA32]

+  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|0x00|0x1693C

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|0x01|0x124D2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|0x01|0x124D4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|0x01|0x124D0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|0x01|0x124E0

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0x00|0x1693E

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|0x01|0x124E4

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|0x02|0x124E5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|0x03|0x124D3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0x00|0x1693D

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|0x0b|0x124D1

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|0x0b|0x124D7

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|0x0c|0x124E3

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|0x06|0x124E2

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|0x06|0x124D6

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|0x06|0x124D5

+

+  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|0x20|0x124E1

+

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x124D8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+  gSeCUmaPpiGuid

+

+  gSeCfTPMPpiGuid

+

+  gVlvMmioPolicyPpiGuid

+

+  gPeiCapsulePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiGlobalVariableGuid

+

+  gEfiVlv2VariableGuid

+

+  gEfiMemoryConfigDataGuid

+

+

+  gEfiAcpiVariableGuid

+

+

+  gEfiPlatformInfoGuid

+

+  gEfiSetupVariableGuid

+

+  gEfiMemoryOverwriteControlDataGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/RamDebugLib/RamDebugLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+

+[Depex.IA32]

+#  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Fa$* /Oi /Od /DEFI_MEMORY_INIT /DSMM_SUPPORT  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D LPDDR2_SUPPORT=0 /D DDR3_SUPPORT=1 /D LPDDR3_SUPPORT=0 /D SEC_SUPPORT_FLAG /D FTPM_ENABLE /DDDR_DUAL_CHANNEL=1

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..16d8e503f18c112a080a7c865962ff3396eb53b2
GIT binary patch
literal 14752
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
F{0GLHl~Vu!

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.inf
new file mode 100644
index 0000000..685a680
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchEarlyInitPeim.inf
@@ -0,0 +1,97 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchEarlyInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Early Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchEarlyInitPeim

+  FILE_GUID                  = D9F5B28C-9FF1-47D6-B503-3DC23BD345FF

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchEarlyInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PchEarlyInitPeim.efi

+  PEI_DEPEX|PchEarlyInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4A0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.depex
new file mode 100644
index 0000000..0e34453
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.depex
@@ -0,0 +1 @@
+sF4e��K���
a
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d1907ecad347f4636adeae8dc01f091e90ca335e
GIT binary patch
literal 11776
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.inf
new file mode 100644
index 0000000..e3a25d7
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchInitPeim.inf
@@ -0,0 +1,136 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2016 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the PCH Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitPeim

+  FILE_GUID                  = FD236AE7-0791-48c4-B29E-29BDEEE1A838

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchInitPpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|PchInitPeim.efi

+  PEI_DEPEX|PchInitPeim.depex

+

+[PatchPcd.IA32]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x27A0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## CONSUMES

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  ## CONSUMES

+  gPchPlatformPolicyPpiGuid

+

+  gEfiPeiStallPpiGuid

+

+  gPchPeiInitPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_CONSUMES   ## HOB

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPchPlatformPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.depex
new file mode 100644
index 0000000..028e7ac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.depex
@@ -0,0 +1 @@
+5�c�2�I������l�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.efi
new file mode 100644
index 0000000000000000000000000000000000000000..599f60c27969a0f521cfb0d385a1c84308f570f5
GIT binary patch
literal 3136
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
O$enVR+%136gZ}}f2L;Xm

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.inf
new file mode 100644
index 0000000..9197f31
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSmbusArpDisabled.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusArpDisabled.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus module

+#    This version will NOT include ARP support.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusArpDisabled

+  FILE_GUID                  = D82D57AC-99F9-4c7a-B591-BBCF8A0E7FBE

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbusPeim

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSmbusArpDisabled.efi

+  PEI_DEPEX|PchSmbusArpDisabled.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xAF0

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gEfiPeiMemoryDiscoveredPpiGuid

+

+  gEfiPeiSmbus2PpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  gEfiVLVTokenSpaceGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress

+

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gPeiSmbusPolicyPpiGuid    AND gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8ae071933bc183caf3f31cd4c5238e456b20ed54
GIT binary patch
literal 4384
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.inf
new file mode 100644
index 0000000..1ff50fd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchSpiPeim.inf
@@ -0,0 +1,125 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiPeim

+  FILE_GUID                  = AA652CB9-2D52-4624-9FAE-D4E58B67CA46

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchSpiPeim.efi

+  PEI_DEPEX|PchSpiPeim.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1070

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSpiPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  TRUE

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.depex
new file mode 100644
index 0000000..05a6cfe
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.depex
@@ -0,0 +1 @@
+H�t���N��ľ���s+�N+1J��V{PD,
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e23277b217824ce7855f4899f29aa0a3f7727872
GIT binary patch
literal 1344
zcmb_bUr19?7(a8<t-Q7y%^Kmug!>Q}Bfa(@i&)Kzl`}TopO);8rDoDU_6KZgY%L#d
zhYJQi^w2}0d#RWHz%r1yYvQz`SWiL_5(KkJRE8L=)_1lk%j!k?!MW$2-}n2z^L^)>
zuk9q-H12QObMuZS4k4pN`dfenR90Il*@pCG2rU#X!|<<x;gJ;x4NPQgguc9>BYfpX
zV{uLYgZ~??fp|4wxDES~`F}y{?-}qzu)1Phq*hX2DKrT6X}i1pT|iF3AhnCd8K!mU
z5t`L{d(K@vUC5E-tN|;TOQA>Tu+5JB42_2v3R@VJ(7ZF(^wTG6TJ=$UD)L?$Uo2aW
zX5{>gFtjW8gHJ6_WN|Y?xm}5u1=#CFa8_U=L-Ef+4L<hedmy}f!kw_<r4BnDri3=i
z+>iPZmiG-n&i0&1gXbgDs*$&WYHX!!%9vLX`6O`#<oI>E0#bD2M5i+mS)#DSia!b#
zM$vB0nf6467<#+I5s<Uu;!Tisq#Gm%;dzL&b#e<rp~Wz;HoMTONJ_aQhNDkMVY{S3
z1uBHU^F~H37-UHlg!dJVMtK7r9;OjUeDX;+>rlqP&IyBR(9!q{<|ye5FIUFmI)lnr
zbv=b&q&r9)upWveW#Jj(Nwm6Fl{W>nI(-G~Zda!>GEF6bP$**-hSHg7Z$&<S0?v+3
zBJ#T7Plb&)RJ?)}6Ux{#8}^6Q*WLseTy+V;-tm*z59rV~R6>N~G9WUQ{Qez~?GrhC
zda*?LSd7e8^zsr`bde*6V-vV<JeS2>Rw+?nZpDoCSrevn?P`Yue{dE=w7`8X5q%Y`
ztL^<Yd8Hy}HbMy_;$;~tW~7)~C0>yApLn+t*Bw0D!i}Tas|O}D4?(d&RKD^$@pxVR
zvGLtwwn0<#UcwPTuZ28N8v(h7QdGgh17iy8WV9G8M$!XL;MV$s^!+Qi&itA=e*sMS
zKG;Vz#oi#7PBzqf3j~SfSzj~3V6gkt8Cb7@^zmpzuA!QJ#7?r)>>NARc&o8s{RL;=
B6m0+i

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf
new file mode 100644
index 0000000..03b67a9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PchUsb.inf
@@ -0,0 +1,124 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   PchUsb.inf

+#

+# Abstract:

+#

+#   Component description file for PCH USB PEIM

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchUsb

+  FILE_GUID                  = 3B873142-4252-49eb-BF17-105CD6F3E808

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchUsb

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|PchUsb.efi

+  PEI_DEPEX|PchUsb.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x470

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiUsbControllerPpiGuid

+

+  gPchUsbPolicyPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.IA32]

+#  gEfiPeiMasterBootModePpiGuid   AND gPchUsbPolicyPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.depex
new file mode 100644
index 0000000..95be042
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.depex
@@ -0,0 +1 @@
+=d��I��B������[�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..92cc991d43c41955a987418b243a732554eb6ec9
GIT binary patch
literal 1664
zcmb_cZ)jUp6u(Jcnn(6#-y5NQLOx{hkbxRfUrVV$h+TqHA~tg~%VcY-?bNYONt5A9
zgs|tt=Qa3AKlx!r{V@N){Im{5lD(32qk|TP2!h0_BO?{21&NaF`8!G4)zN(^9=PxP
z&N=s<fA_rm>|wTTy0Gn&+dnuGV=V4){l`I-Id|`HJiyLDUF=xiaxxacD!SW>02r-%
zDc{xJNBSN28auLlAN^M9G5GVtP(@tg{}%-_lW%6=>?~@ex~Nv-n<>E9tHFu!%s7-E
zV^QtrIvi|+B8)8r(~~D&f4Q9_<s5*O_-2YQHvB@8XEd4TG>IS3e1&L_J#=SU7-~#Q
z=CZNkD&2IheOC9F<wCC4zHKhAecI$vO&UFFEw(AySHxkF$2G~kirqMqT>AnWKR+~T
z!KHYUA|B+c#;*-yReB!r{wc&YIdOa}$vyT+oO>V!633+^2~lm2F|StGYtvKXwG*hH
zFV%My5@PL3;J1rerTb#S=~}Mk$h2_wO7<81$Dx#ZDy9F0U~=J9fD3(lO`(TJ`vf!E
zBajwY1Qx+1aH^DaGB9x;xUZvAfmP`I;Qnw*O`k_fvU$i)tP&Bw#kI7d)Gw?<`MnM3
z`>6xV5w*3k9C?tqufi~8`4)-@OSm|K=$dSlM01~LXCQgd0yUKyJ*pR9<i8zhwT~Jb
ze#V#XnnT5TtMs#*N0pFK6^sRz>6-J9vf};$14(_Jv+?=lI;4tw3Ex|fxRkrr&4x!^
z3LNzt6H4fJBd&xTCM3OB9#$L{Vv6X86i(cYyW*xv@rHPr=e+&x_*pM68&xM|;%Q}4
zSB)EYc*Vp%Bkm3DGNWGd`J}=yFk5)dpH{XgqO{_!xTyxg!C0q`hbdjeg;!i_+pCOB
zF<{6mhvubyr5o;{!D-JNnwzgH_8<cKjmv6HL{CzB(Huk)Motr0*2PO!_-f{FbY0k=
zs5P3lZOls+P3fv!h}|+{O&)7@J47D)vv9DnpGTS_T(lD*9&4mhbTyZ3bh<7bGa5n$
zGdb*ZEp=aX9t)SUt9sGmm#ta)Im6EE?%8<)!$P)qcA<sD?9SQ67Lu~A3l8hCqD5DC
zA6ow7tEt87^3&g(JoEMKy#2&^{ey?DEq=G}-QIWHk6Xd-Hy_&xVGOGY@3fxUdmv74
z$Pwt)-xqo}_h5)yvNm-Rrq(+Wpgo<prHZrkwguB|1^F7=khPhanTeNPfxJ$%_c{Hr
VKB>Q<f2f}xI5Y76z()gZ>%Yd}i!cBH

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.inf
new file mode 100644
index 0000000..2b58b58
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmAccess.inf
@@ -0,0 +1,119 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmAccess module

+#

+#  Revision History:

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmAccess

+  FILE_GUID                  = B4E0CDFC-30CD-4b29-A445-B0AA95A532E4

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmAccess.efi

+  PEI_DEPEX|PeiSmmAccess.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gPeiSmmAccessPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiMemoryDiscoveredPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.depex
new file mode 100644
index 0000000..2a47cc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.depex
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..0e4ef35820d1b180c1d6139915747adb7faf9d0f
GIT binary patch
literal 960
zcmeZ`VjvrAAX_K-8UtJz7<?F+Q4Dy%z@*5{$j9&iD0%=Yqrk+#0KyDVr3yeM2&01o
zKzXn_paeI%B$O|JLmZp%0-$*^KnVjVjZF<XVtOU16(vB8hkzL5-Um<`NWp;u14D*h
zN@7VOP-G5B6zGNpP#Q$RfCB@=3B97!ocv^nTS0DC07`;rWZ=NS;MDD+!jZuNlnChN
z_#Y?{8F{#y7i8{279i2x>CnK>(D<<7KLf)K1`Y;>wC;;(@3Rzo15F~{Hy<<ra^E(e
zV0v$S;BZ5YiU>mq+YX@98x8{v<q2**P|DhH`u}VGZXXqq){`Z6&6bR%mR%ArX8-^H
zzx6<cF%FC1<|@A5wF&6luEXz)4@4gZn;Z?YhX-!Y%K)HJ$Uef#egF~$#&LrT&`Tmf
zoB?#?1t4Z>KbBbM>+IkAez`O2xss#kx_N;D0YK~n)C0oq&LKXaxH$wA1IL$2ZXQ?<
zP|g4(28|n7+R!V42!Qm0%z^M#s;a6|lG4E%Ap|HrsT!FWSsKkXT4cmyEMP2REMW|h
F0{{UZe!2hv

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.inf
new file mode 100644
index 0000000..fc85b5b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/PeiSmmControl.inf
@@ -0,0 +1,95 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PeiSmmControl

+  FILE_GUID                  = FF456B9C-0DC7-4682-9E92-0DE84B6E4067

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlPeiDriverEntryInit

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+

+[Binaries.IA32]

+  PE32|PeiSmmControl.efi

+  PEI_DEPEX|PeiSmmControl.depex

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x300

+

+

+[Protocols.IA32]

+  gEfiSmmControl2ProtocolGuid

+

+

+[Ppis.IA32]

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  TRUE

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.bin b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.bin
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.com b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/ResetVec.com
new file mode 100644
index 0000000000000000000000000000000000000000..fe3e741a3bb4bd78ea0bd2cf65e3ec14b77e2d4c
GIT binary patch
literal 64
scmaF&4gwgUV1Iz)YgrfvNGm$0w!i*&9xgIr!ppz^fxL<^6Cn@=0O7O~{r~^~

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.depex
new file mode 100644
index 0000000..3ec1c91
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.depex
@@ -0,0 +1 @@
+�oLk��H�����}V
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.efi
new file mode 100644
index 0000000000000000000000000000000000000000..8e9fc865872c0c751c0d6c26aaf854a20d6ef3b9
GIT binary patch
literal 1856
zcmbVMZA@EL7(TbXv_M;Kv!G!KN;Q~hVsN3Ri7_S>MM*5Aq*8{pg*k?V=`iHhITGR}
zmnPanlf~?(CSXj=5`XL$+D>P0E&@s%PU6;RqBt@<q~q&{tQJOnP78_*{J}}ieb4iL
zo#%b;$=mn}IrO@8=*Ytddg}@C2*&>;m?MUVEJ7J^i-gQ=TO0;L`0g+j6b=Z!_b#`&
z;K%iry~b^9KR~~q+JSr(FpS{d%KaP;sjHDsy(1&`VbsX$;<a+QdpQW{uIW4>pMdf+
zY+ieETSEM^+=NWk^qqR6_hf-9=j?!$%iYUONL>rP?WbXDw}M=LYRY*ls43QHZSEmG
zq?=#h&v_l{cx5Q4Cx{@Bcm*jV>`yRD5Q72G4!DqqMkAmD@J1erBH%H=DM0oKK9OYj
zfzc<A{je41A6jCW8vK@!V)DL?V`owywL)Gb0wMB|(Z_LC=Op<LHMyx~3~&GD^S361
z5o1GKAvVJ9#~VqYn!9m3hvovb-;I}ZnBf#mNE8=2Tm-!QJWh0)eSoubJuTgtM6^3>
zgX&$VXeN?7myWx+doM6hDNLO>N}sQ4%cbg;qtDn=6>6swp@5FQHM1F95J^fyRgk_`
zI#3*I+{|~5n)AJD&G)W+7tIc&1Kgq6%;CQ@>i}u6BJxYP^b6FZERKUBeouLPoO8df
z-7IGh!be*c2N#G0=j&IJ+;Wwj1O;urJl0f9XIU1&`6Inr$2>U2niTdCq%_uOrzv_(
z{asSOvuigiEZ1U9BkVDlX#Hll2QSVG#-ciIjWrFi9_TOf7Rly3ne<avfb8i??#w`M
z$GOn6r+J!G<X3r4OCMF{&C;0eZDl10X=@9$2k5P!?u))!ZB;e|xm4LO$VJMADQu3;
zvZL^UcR*!CwyDf07pqK=jrib6@IK?mN3+iLum7?V(nW9Fj;56PH6>>XOYsIpA}omn
zbX8s0lE!A#MM19QpCjs`7``v&?^v?I?8ae5nJ!Bkm1z@lMD^wN&}984OeCNVY!W%^
zOmdF?I6*_5>+Ccv8nYL%)m%=^7|#kX;J@p>7Jn<v(zOqd)2ZxNnLMGNmeAFS!3Ca7
zW8xzumm`)5eyg&gej|2KIILRk(211<51{&rwpg;Rp~Q`}kmb)Q7|>DUcGk;<tg}lr
zb5PcpPejTtI!h<-$%Ry$<IneSJUCm62u`56H(Mx3^?;5#{%4)<^;Dg{lxp}`NZeZc
ze!zdWD>eOuOY~f5`}En`Get9)t;$;%Bg5D);pra7!x_d)+i&rfd9lBQFW)ad_p--<
z7(Ns8^RfEPGdzxuB{$^GEF1ymv$&?OFdTU-&r`tF{r&x&ue}a@(Bkv_(b{Kf&pC%&
P@41Fu=Uo?EJHCGdpQ7mr

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf
new file mode 100644
index 0000000..665948b
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SeCUma.inf
@@ -0,0 +1,101 @@
+#/*++

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    SeCUma.inf

+#

+#  Abstract:

+#

+#    Component description file for SeCUma module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SeCUma

+  FILE_GUID                  = E4CEDF93-672A-4782-A7FD-5FC6D239377D

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SeCUmaEntry

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.IA32]

+  PE32|SeCUma.efi

+  PEI_DEPEX|SeCUma.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gEfiPeiStallPpiGuid

+

+  gSeCUmaPpiGuid

+

+  gPeiSeCPlatformPolicyPpiGuid

+

+

+[Guids.IA32]

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+

+[Depex.IA32]

+#  gEfiPeiStallPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.efi
new file mode 100644
index 0000000000000000000000000000000000000000..22c7e70676f927d4ce2ec6e41c61b9f6daeb14b1
GIT binary patch
literal 8000
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf
new file mode 100644
index 0000000..45dd9b9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/SecCore.inf
@@ -0,0 +1,152 @@
+#

+# This file contains an 'Intel Pre-EFI Module' and is licensed

+# for Intel CPUs and Chipsets under the terms of your license

+# agreement with Intel or your vendor.  This file may be

+# modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  SecCore module that implements the SEC phase.

+#  NOTE: This module was replaced by UefiCpuPkg/SecCore/SecCore.inf

+#

+#  This is the first module taking control of the platform upon power-on/reset.

+#  It implements the first phase of the security phase. The entry point function is

+#  _ModuleEntryPoint in PlatformSecLib. The entry point function will switch to

+#  protected mode, setup flat memory model, enable temporary memory and

+#  call into SecStartup().

+#

+# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>

+#

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SecCore

+  FILE_GUID                  = 1BA0062E-C779-4582-8566-336AE8F78F09

+  MODULE_TYPE                = SEC

+  VERSION_STRING             = 1.0

+  MODULE_UNI_FILE            = SecCore.uni

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.IA32]

+  PE32|SecCore.efi

+  BIN|ResetVec.bin

+

+[PatchPcd.IA32]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1CE8

+

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  ## PRODUCES

+  gEfiSecPlatformInformationPpiGuid

+

+  ## PRODUCES

+  gEfiTemporaryRamDonePpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfoPpiGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiPeiFirmwareVolumeInfo2PpiGuid

+

+

+[Guids.IA32]

+  ## SOMETIMES_PRODUCES ## GUID # FV File System Guid.

+  gEfiFirmwareFileSystem2Guid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob

+  gEfiHobMemoryAllocStackGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation BspStoreHob

+  gEfiHobMemoryAllocBspStoreGuid

+

+  ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation ModuleHob

+  gEfiHobMemoryAllocModuleGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

+#  MdePkg/Library/PeiServicesLib/PeiServicesLib.inf

+#  MdePkg/Library/PeiHobLib/PeiHobLib.inf

+#  MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf

+#  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  DeviceCommonPkg/Library/UsbDebugPortLib/UsbDebugPortLibPei.inf

+#  Vlv2TbltDevicePkg/Library/PlatformCmosLib/PlatformCmosLib.inf

+#  Vlv2TbltDevicePkg/Library/PlatformHookSerialLib/PlatformHookSerialInitLib.inf

+#  Vlv2TbltDevicePkg/Library/SerialPortLib/SerialPortLib.inf

+#  DeviceCommonPkg/Library/CmosAccessLib/CmosAccessLib.inf

+#  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf

+#  MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf

+#  MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf

+#  Vlv2TbltDevicePkg/Library/PlatformSecLib/PlatformSecLib.inf

+#  MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf

+#  MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf

+#  MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf

+#  MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

+#  MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf

+

+[Depex.IA32]

+

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.depex
new file mode 100644
index 0000000..00c2f8d
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.depex
@@ -0,0 +1 @@
+²�}�"rC�,�2Ӧ�;���\�J���B�.
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7152888719c4c31ef172a954f6e8d03875e95ac7
GIT binary patch
literal 3104
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.inf
new file mode 100644
index 0000000..a032c7f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/IA32/VlvInitPeim.inf
@@ -0,0 +1,101 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInitPeim.inf

+#

+#  Abstract:

+#

+#    Component description file for the VLV Init PEIM.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitPeim

+  FILE_GUID                  = 24169E35-2454-4940-92BC-82321A2C7562

+  MODULE_TYPE                = PEIM

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitPeiEntryPoint

+

+[Packages.IA32]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.IA32]

+  PE32|VlvInitPeim.efi

+  PEI_DEPEX|VlvInitPeim.depex

+

+[PatchPcd.IA32]

+

+[Protocols.IA32]

+

+[Ppis.IA32]

+  gVlvPolicyPpiGuid

+

+  gVlvPeiInitPpiGuid

+

+  gEfiPeiReadOnlyVariable2PpiGuid

+

+

+[Guids.IA32]

+  gEfiSetupVariableGuid

+

+

+[PcdEx.IA32]

+

+[LibraryClasses.IA32]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+

+[Depex.IA32]

+#  gVlvPolicyPpiGuid     AND gPchPeiInitPpiGuid

+

+

+

+[BuildOptions.IA32]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_IA32_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_IA32_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_IA32_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_IA32_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=0E0000000h /DNOCS_S3_SUPPORT

+##   MSFT:RELEASE_VS2015x86_IA32_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_IA32_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_IA32_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_IA32_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_IA32_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_IA32_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_IA32_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.depex
new file mode 100644
index 0000000..4cbdd53
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.depex
@@ -0,0 +1 @@
+�������G����P���ƣ�^�H���3����HN
2��G�,?��f���?n�FO�)�S=Y(mEK�GN��2v؆�}��J&�>����4/4t+p�
�1A�F������k��
a�F{�Z�~�'\������I�K���
�
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.efi
new file mode 100644
index 0000000000000000000000000000000000000000..18d5afc9c7ece0cb77ab73bea0dd14b7196b20c0
GIT binary patch
literal 8192
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
bA>+Fc;l;jB5X#Uq<bfd%40&M41C0F(I$^gm

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.inf
new file mode 100644
index 0000000..676b9b3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/DigitalThermalSensor.inf
@@ -0,0 +1,182 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2013 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#  Module Name:

+#

+#  DigitalThermalSensor.inf

+#

+#  Abstract:

+#

+#  Component description file for the DigitalThermalSensor SMM driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = DigitalThermalSensor

+  FILE_GUID                  = 5122FA7B-17A3-4a8b-89AE-A93ADE92EADF

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallDigitalThermalSensor

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|DigitalThermalSensor.efi

+  SMM_DEPEX|DigitalThermalSensor.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1410

+

+

+[Protocols.X64]

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiSmmIoTrapDispatch2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiMpServiceProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/DTSHookLib/Smm/DTSHookLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/PlatSmmIo/PlatSmmIo.inf

+#  Vlv2TbltDevicePkg/Library/CpuIA32Lib/CpuIA32Lib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/SampleCode/Library/Ksc/Smm/SmmKscLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid                   AND gEfiSmmSwDispatch2ProtocolGuid             AND gEfiGlobalNvsAreaProtocolGuid              AND gEfiMpServiceProtocolGuid                  AND gEfiSmmSxDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.depex
new file mode 100644
index 0000000000000000000000000000000000000000..cce1aa8782d7783ac5038e755ab4a29300bbd39a
GIT binary patch
literal 108
zcmV-y0F(a$;%HVLfrQi%yzu~l$2^FE0vPx~WMX4PPPK4-x-s1(Qv!|%m+Rlp#!0?Q
z*#@Pu4u%5VYvBI}VWviVvRa&e#V1?>x`?Y=;^1^fwyn4l_J|zT0`~Bu6G|rVKJwt+
O#S%0xGy?+z0|N-t=rOkd

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.efi
new file mode 100644
index 0000000000000000000000000000000000000000..594c9fa927648a3c174ec7de4ff9f2edbe52c897
GIT binary patch
literal 4384
zcmds)e^8Xi8OQhTc;WbQyp)6#Q|nN@Oi3UXC06J`d#`t=OFb+ZM4hMs9CBtxiBv#Q
zNQGd+y}Vw6jn<~EZK^eOVogRmm4l|q0Tw|B0<qD=CNd_SIS1RJgH=q?>v!LMUvpYb
zZ2C{9J9GDZpU?B%eRuEneeX8^G4h3*{|op0?>iQ_2q}9m;--Pd$;^~kV?43P5K^y|
zju{Cl!Aox`5bSkpOZn2LzSvufcgPd&z&{J8h=ff4EW>|Tn_cxpO%?il6KiJcWNQy!
zFB>j}kSAxCl~$EP`%Q$r97jk%i>$6UJ0ZQgrVu4qV2KuW&Z3==1+#1TfXo-rd@P1H
zJABKQQ~6ygpIqW|M}}zjbt+F*3VGRAD-+yuXI|rI6z#lVnxF^9qTTY~cYSqHp=&5i
z{A#NB@$Lb%<&V-i0raQxFmuwz^HCG@kUTu`>WX4!m}u!9pp6$(sj{Gi%0e}k2Dt)q
zt15-F(IB#=3|YIqUW87f(9IF%gU0Gast6s-VCrl)V#j!7bMPTVx6&INi6kWd*}j?>
zx6f_O2;Ku*W`H&xOYOE76)vaBMO-!m{f!vS?Q=n1%{)uLwmO6QESs=}GDku!b_1J^
za1JRflc-LjO2ezq25J^$_EE)^;r8W^!<9;XMOmQ&Gerf<a%DAS6&5;|R!7q8nuIDd
z4Ruqce{2wyNvaf$Q>B-g8;@lauUy?dU@ye9QtETJvrSBu_o^k@?x?7CR#bUN&=CrS
zXnWxX2TvbSQ}>3=1)DeKli&kt%1TR1*O1_SNG}v%OJM;s)CCAHs1wHuJZ3^}tZoaa
z_*T;W2vjjQ3$YMhX&Sl}>u3tQ(kmqaxjB+|zQRY&L5|MnU_fVi=c^n)!0`zkzs7Mq
z$G_8YE5}!mW0041e3au+jujnuaNNi7CLO=YaVy8AI_~25ryRR=+{5v9j_2$61jpqZ
z&*ZpSm<8c&805tQ-F%Yg>|VvRudofs*8UF14|057$EP_?<oInJpXK<U$T5gt$LBcy
znCH#HJ_v8aN1P5Ksn6YycZ0aA3l~*{MkI2>$GrX;5|w^mr9n=AtkYtZUgY!{o#v}_
zoYVC>wW;(Hr^`6??wsWLAodS-F?MarN*XGu7#N`PDyx~wb=Cy2t<#m+=jj|ZdQ83k
zLs+%P)CVcH3AMN-o#I==PTNpjH1cxfV;dnNS;026jln4aa5eSi{vAS6hTY0>m)Mr<
zvc118&bPoIwoPx6Z0|p933cT)1|k|i`Eq6Y*oR7&EA1VnUrOtDif!&DqiS?E8PPv&
zND^NkQMz8ba@FHZ>y<D+s<6o_m@MwaV^m&|K;<Wssa%mFEtQr@%h@gH_SwyuBiQlh
zqp((=#eu+Ynas<$wMFkU>a$^$)$YlzjH!;XXH`av+sgr)9cJl`9NfP3wb7XF;&@D{
zHc{Lq9KjIKmG_Bl>+VOK;T84*iEWM;S=h~0oJSU(=Q07ZiOYK->$yyZ+`{E_$c<d4
zK(2#qcFgn&PeFKOOCAeOIoHMGJW0h5e_IXnY%EB&fx1XfW2Z1?l9Ykq{Oh3*2C||g
z`MxK3T(+sF)xr#3u&9M4tZ<1J1YWp|@6VSnV7!Z*|Mi+W(kSEbOS=D0;Ptgx23(~F
zwPwdGd@iS;yh1zP6^B(8j;JD47Jj3ObXoYdDl%kYpDG@ag}o3Lj^H!)h#Lem68~Hz
zJwiUD;ke*LV1JAz#BG8d+DE4y7aS0C$zpsoD)Vq+B0)PQ)n32`lZ8~6#I`fRbiRPE
zAO%h4;T|=7m0j<+x@YliLlNX$eS$4JO=Xv$IQyHXdW12i*o5apWCoxtxln93QmU-C
z7Eq<ix`NHQ8yL~j&&s&Tq+;oDX%+juRD|_l9c*#7F7aruxadS?VE-9HMnT9!!|e|y
zL=wL_%0%{`(x895J|b%Wkd}qH{UkubZQk44oIZPmqy)molW%Xl*|g*KCh=%j=V)@+
zV6C_JDV<>+|6O?6@50mZxgLCe*i7TU|6HSg{EfTt{2|QKEWD0CZPK>_)rmKK33x(|
zW#<@fp^2cg(v3NWO_nhCSVCChC-^xH`;?4f7Yn!HnH_F3h1t6CsLR4b?jP_p)ZnRZ
zB$aWL{mEpler%3gc3bg}MsOm<W1Y%QYYO~t!|(P9ORnI~K_5IW9yNzrDzM|RU9-B?
z-s&5ju_S74!!H-@NdL~ghkxSv^KV}W)}3CwWnt67gJ(YcizN-F(NEokd=x!wN{Z<;
zEs8m8+7h$dbSP%C>4TUelNkH3Ns2X?Dr1L?2V(acPsgq`M#s%D+Tx}R<#D}+U&QS(
z497iTFj;Jdd6p!@TFV4^$#RPHTRO-!%Rcgr_#NcM_;ulzQg!mbk(TQ!s@LKzb=}YI
zZQgcjel6-)i@KkE2fY1I^J`JZTGaj8Hvsyg=GWpK{MvB|)m@rji+AwjA)>Y2nqP}L
z)}lTiJmR$WBh9Zx9cxkd<Cj8fdo(|f9o|DL&yQ9uJbKulc-cGs-4E7{hN4PeSy<cp
z*w23O$FHw?-n?h*+{vE2Hy6Jbd7w4^IenBH@#mos(`GFuXfaufMPwn#!9#w&7H{-}
zu;A5#S1-<R?DfCY7CDx>*}1O_lhV(G?Cd*&e_m>CEq{v5m!19W;QD!RG@hUFW^d%@
vIXl+nWn-+VtYm(+PPS%Vw{G3KwQS8=<m_xn8L!~|*x66bwR0g#{}=6FJvPi!

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf
new file mode 100644
index 0000000..b268a39
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/Dptf.inf
@@ -0,0 +1,213 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

+#

+#**/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = Dptf

+  FILE_GUID                  = 1D000AE9-756B-4937-B736-1F3D96A5A8F0

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = DptfDriverEntry

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|Dptf.efi

+  DXE_DEPEX|Dptf.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xCC0

+

+

+[Protocols.X64]

+  # CONSUMED

+  gEfiAcpiSdtProtocolGuid

+

+  # CONSUMED

+  gEfiAcpiTableProtocolGuid

+

+  # CONSUMED

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gDxeVlvPlatformPolicyGuid

+

+  gEfiI2cBusProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/I2CLib/I2CLib.inf

+#  Vlv2DeviceRefCodePkg/Platform/Library/I2cStackLib/I2cDriverLib/I2cDriverLib.inf

+

+[Depex.X64]

+#  (gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiAcpiTableProtocolGuid AND gDxeVlvPlatformPolicyGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  DRIVER_BINDING                =  gSampleDrvDriverBinding

+#  COMPONENT_NAME                =  gSampleDrvComponentName

+#  COMPONENT_NAME2               =  gSampleDrvComponentName2

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..5066c0763638a39ff33c71c6d9759850f116e542
GIT binary patch
literal 162
zcmV;T0A2qAx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
zGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj$Tzs&UD_Wehl)DWogP{EM`bSrSe41h5~henUJ
QxSZsy0|NsC0|NsC2(86PtN;K2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4e34827dbecdb30100a3579e4414bd363441e3cb
GIT binary patch
literal 11264
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.inf
new file mode 100644
index 0000000..88d6d0f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/GraphicDxeInitSmm.inf
@@ -0,0 +1,259 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = GraphicDxeInitSmm

+  FILE_GUID                  = 99EC6206-AA45-4CAE-B630-866755241C8A

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = GraphicDxeInitSmmEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|GraphicDxeInitSmm.efi

+  SMM_DEPEX|GraphicDxeInitSmm.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2000

+

+

+[Protocols.X64]

+  gDxeVlvPlatformPolicyGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+#  MdePkg/Library/SmmIoLib/SmmIoLib.inf

+

+[Depex.X64]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex
new file mode 100644
index 0000000..9b2767a
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
�HN
2��G�,?��f���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d2276cfd9ffe33f818ec89d172a439a18e850c0c
GIT binary patch
literal 6880
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf
new file mode 100644
index 0000000..dba2389
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/ISPDxe.inf
@@ -0,0 +1,241 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#   IspDxe.inf

+#

+#  Abstract:

+#

+#

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = ISPDxe

+  FILE_GUID                  = 5A38B969-CD6A-4814-82E6-559F840BBC58

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = ISPDxeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|ISPDxe.efi

+  DXE_DEPEX|ISPDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x1670

+

+

+[Protocols.X64]

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.X64]

+#  (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid AND gEfiGlobalNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
new file mode 100644
index 0000000..c5a77e9
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/MinnowBoardMAXUEFIFirmware-LicenseAgreement-Final.txt
@@ -0,0 +1,134 @@
+MinnowBoard MAX UEFI Development Kit (MB-UDK) 

+PRODUCTION LICENSE AGREEMENT 

+

+IMPORTANT � READ BEFORE COPYING, INSTALLING OR USING. 

+

+Do not copy, install, use or load software identified in this Agreement or any associated materials until you have carefully read the following terms and conditions. By copying, installing, using or loading the software identified in this Agreement or any associated materials, you agree to the terms of this Agreement. If you do not wish to so agree, do not copy, install, use or load the software or any associated materials.  If you are an employee, representative or agent of a legal entity, you represent and warrant that you have the authority to bind that legal entity to this Agreement.

+

+General Terms and Conditions 

+

+This agreement (�Agreement�) is by and between Licensee and Intel Corporation, a Delaware corporation, having its principal place of business at 2200 Mission College Boulevard, Santa Clara, California 95054 (�Intel�) and is effective as of the first date Licensee copies, installs, uses or loads the software identified in this Agreement or any associated materials (�Effective Date�).   

+

+1.0 	DEFINITIONS 

+

+1.1 	�ASL Code� means code written in the �ACPI source language� and designed and delivered to Licensee by Intel and designed to be compatible with Intel products.  Such ASL Code remains ASL Code regardless of any legends in header files of the ASL Code. 

+1.2 	�Assembly Code� means code written in the �assembly source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.3 	�MBM-UDK� means the MinnowBoard MAX UEFI Development Kit, which is an Intel implementation of the 

+UEFI specification, and is based on the Intel� UEFI Development Kit 2014 (Intel� UDK2014), consisting of 

+MB-UDK Libraries, ASL Code, DXE Driver, DXE Foundation Code, PEI Foundation Code, Peripheral Drivers (including GOP and UEFI UNDI), PEI Modules, Assembly Code, C Code and Reference Drivers together, as well as any and all documentation and tools, provided by Intel for the purposes of implementation. 

+1.4 	�MBM-UDK Libraries� means the core library services offered in the MinnowBoard MAX UEFI Development 

+Kit. 

+1.5 	�Boot Loader� means a device and use-case-specific firmware program a computer�s processor uses to get the computer system started after power-on, with some basic hardware initialization, until handoff to the operating system. 

+1.6 	�BSD License� means the Berkeley Software Distribution License, which is a family of permissive free software licenses created for the original Berkeley Software Distribution operating system. 

+1.7 	�C Code� means code written in the �C source language� and designed and delivered to Licensee by Intel under this Agreement. 

+1.8 	�Customer� means Original Equipment Manufacturer (a company that makes computer systems for sale under its own brand name), Independent Authorized Developer (a company that performs services for Licensee in the development of Licensee�s products), or Original Design Manufacturer (a company that 

+designs and manufactures computer systems for Independent Authorized Developers and Original Equipment Manufacturers) but excluding End Users. 

+1.9 	�Derived Object Code� means the subset of Derivative Works that is the Object Code derived from Source Code or Derived Source Code. 

+1.10 	�Derived Source Code� means the subset of Derivative Works that is the source code derived from Source Code by modifying the Source Code in any way. 

+1.11 	�Derivative Works� means those bodies of work defined in 17 U.S.C. �101 as �derivative works� of existing copyrighted material.  For purposes of this Agreement, Derivative Works include both Derived Source Code and Derived Object Code. 

+1.12 	�DXE Driver� means Driver Execution Environment driver, which is a hardware device driver compliant with the execution environment as defined in the UEFI specification. 

+1.13 	�DXE Foundation Code� means the foundational Driver Execution Environment code that provides the standard function and services that are available to the DXE Drivers. 

+1.14 	�End User� means a purchaser or recipient or user of Licensee�s computer products who does not resell Licensee�s products in the normal course of the End User�s business.   

+1.15 	�Firmware� means the programming code that is inserted into the programmable read-only memory of a computer system, thus becoming a permanent part of a particular computing device. 

+1.16 	�Intel Processor� means processors designed by Intel and released by or on behalf of Intel and marketed under Intel�s (or Intel licensed) trademarks. 

+1.17 	�Licensee� means the individual accepting these terms or, if the individual is accepting these terms on behalf of a legal entity (such as a corporation, partnership, agency, etc.), �Licensee� means the legal entity. 

+1.18 	�Object Code� means the binary version of the Source Code, including all computer programming code, entirely in binary form, which is directly executable by a computer and includes those help, message, overlay, and other files necessary for supporting the intended use of the executable code. 

+1.19 	�PEI Foundation Code� means Pre-extensible firmware interface (�PEFI�) initialization foundation code, which performs basic hardware initialization in order to load and execute the DXE Foundation Code. 

+1.20 	�PEI Modules� means PEFI initialization modules, which are code modules that perform basic environmental set up prior to initialization of DXE Foundation Code. 

+1.21 	�Peripheral Drivers� means code that initializes and operates hardware devices that are peripheral to the Intel Processor. 

+1.22 	 �Reference Drivers� means those drivers supplied as part of the Source Code that are marked or tagged by Intel as �reference drivers�. 

+1.23 	�Source Code� means the source code of the MB-UDK Libraries and Reference Drivers delivered to Licensee by Intel under this Agreement, along with all Intel-delivered tools, documentation, specifications, and schematics related thereto. 

+1.24 	�Subsidiaries� means, with respect to any legally recognizable entity, any entity Controlling, Controlled by, or under common Control with the entity.  �Control� means (i) ownership of fifty percent (50%) or more of the outstanding shares representing the right to vote for members of the directors or other managing officers of the entity, or (ii) for an entity which does not have outstanding shares, fifty percent (50%) or more of the ownership interest representing the right to make decisions for the entity.  An entity will be deemed a Subsidiary only so long as the Control exists. 

+1.25 	�UDK2014� means the Intel� UEFI Development Kit 2014 (Intel� UDK2014), which is an openly available implementation of the UEFI framework provided by Intel under BSD License terms. 

+1.26 	 �UEFI� means the Unified Extensible Firmware Interface, which is an industry standard detailing an interface that helps hand off control of the system for the pre-boot environment (i.e., after the system is powered on, but before the operating system starts) to an operating system. 

+

+2.0 	LICENSE RIGHTS AND CONDITIONS 

+

+2.1 	LIMITED COPYRIGHT LICENSE: Subject to the terms and conditions of this Agreement, Intel grants to Licensee a limited, non-exclusive, non-transferable, non-sublicensable, worldwide and royalty-free license under Intel�s copyrights to:   

+Reproduce and prepare Derivative Works of the Source Code solely for Licensee�s own internal use, to design, develop, modify or debug Derivative Works that operate in or in conjunction only with Intel Chipsets or Intel Processors as specified in Exhibit A;   

+Reproduce and distribute MB-UDK internally for Licensee�s own use in developing and maintaining products or services supporting Intel Chipsets or Intel Processors as specified in Exhibit A; and  

+Distribute Object Code and Derived Object Code externally to Licensee�s End Users, either directly or through Licensee�s usual distribution channels and methods, but only for use with Intel Chipsets or Intel Processors as specified in Exhibit A. Licensee will distribute all Licensed Programs under an end user license agreement (�End User License�) containing at a minimum the terms and conditions set forth in Exhibit B. 

+2.2 	ADDITIONAL CONDITIONS: The rights granted under this Agreement are also subject to the following 

+limitations:   

+Licensee will not make any statement that the Derivative Works are "certified," or that performance is guaranteed, by Intel; 

+Licensee will not disassemble, reverse engineer, or decompile any Object Code provided to Licensee. 

+Licensee will not use Intel's name or trademarks without prior written permission; and 

+Licensee may not disclose, distribute or make commercial use of the MB-UDK as a stand-alone product. 

+Except as specifically permitted in Sections 2.1, above, Licensee is not licensed to use the MB-UDK in any other manner, including for Licensee�s other internal or business use or for use in association with any other products. Licensee will not license MB-UDK to any third party. Licensee will include all copyright notices in all full and partial copies of the MB-UDK, including all Derived Source Code, and will not deface, obscure or alter any copyright notices.  

+Licensee is not obligated to provide Intel with comments or suggestions regarding Derived Source Code or the MB-UDK received under this Agreement.  Should Licensee, however, provide Intel with designs, comments or suggestions for the modification, correction, improvement or enhancement of the MB-UDK or Intel products which may embody the MB-UDK (collectively, �Feedback�), then Licensee grants to Intel a non-exclusive, irrevocable, worldwide, royalty-free license, including the right to sublicense Intel licensees and customers, under Licensee�s intellectual property rights in the Feedback, and the rights to use and disclose the Feedback in any manner Intel chooses and to display, perform, copy, have copied, make, have made, use, sell, offer to sell, and otherwise dispose of Intel�s and its sublicenses� products embodying the Feedback in any manner and via any media Intel chooses, but without reference to the source of the Feedback.   

+

+3.0 	DISCLAIMER OF WARRANTY 

+Neither Intel nor its suppliers make any representation or warranty or condition of any kind whether express or implied (either in fact or by operation of law) with respect to the MB-UDK.  Intel and its suppliers expressly disclaim all warranties or conditions of merchantability or fitness for a particular purpose.  Intel and its suppliers do not warrant that the MB-UDK is error-free or that operation of the MB-UDK will be secure or uninterrupted and hereby disclaim any and all liability on account thereof. There is also no implied warranty of non-infringement. MB-UDK is licensed on an "as is" basis and neither Intel nor its suppliers will provide any support, assistance, installation, training or other services.  Intel and its suppliers may provide any updates, enhancements or extensions at their sole discretion. 

+

+4.0 	LIMITATION OF LIABILITY 

+In no event will Intel or its suppliers be liable for: (a) any representation or warranty made to any third party by Licensee, any agent of Licensee or distributor; (b) failure of the MB-UDK to perform as expected; (c) failure of the MB-UDK to provide security; or (d) any use of the MB-UDK or the results or information obtained or decisions made by licensee�s use of the MB-UDK. 

+Intel and its suppliers will not be liable for any direct, indirect, special, incidental or consequential damages of any kind, even if advised of the possibility of these damages. 

+

+5.0 	PROTECTION AND SECURITY 

+Licensee acknowledges that information and materials disclosed or provided to Licensee pursuant to this Agreement may contain Intel trade secrets.  Such trade secrets are protected by the provisions of the applicable nondisclosure agreement(s) between the parties.  Licensee will not make MB-UDK or Derivative Works available in whole or in part or in any form, to any person other than Licensee's employees who are designated to work on Licensee's development effort authorized hereunder and who have a specific need for access to MB-UDK.  Licensee agrees to instruct these employees of his or her obligations with respect to use, copying, protection, and security of MB-UDK and associated documentation.  Notwithstanding the earlier termination of this Agreement, the obligations of this section are to remain in effect until the time as MB-UDK becomes publicly known, through no act or failure to act on Licensee's or Subsidiary�s part. 

+

+6.0 	ASSIGNMENT, SALE OR TRANSFER 

+Licensee will not assign, sublicense, or otherwise transfer this Agreement or any right or obligation hereunder without Intel's prior written consent, which consent will not be unreasonably withheld in the event Licensee is acquired by an entity that is not a competitor of Intel. Any attempt to do so will be null and void. 

+

+TERMINATION 

+

+Licensee may terminate this Agreement and the licenses granted in the Agreement at any time upon Intel�s receipt of written notice.   

+Intel may terminate this Agreement and any licenses granted in the Agreement at any time if Licensee fails to cure any material breach of this Agreement within thirty (30) days after notice of the breach.  Such termination will not prejudice Intel's right to damages or any other remedy available at law or in equity. 

+Upon termination of the Agreement or any license granted hereunder for any reason whatsoever, Licensee will completely remove MB-UDK from all Derived Source Code. In the event of any termination, Licensee will, at Intel's option, either return to Intel or destroy the original and all full or partial copies of MB-UDK, including those portions in Derived Source Code, and certify to Intel that they have been destroyed. 

+The following sections will survive expiration or termination of this Agreement: sections 2.2, 2.3, 2.4, 3, 4, 5, 7, 8, 9 and 10.  

+

+OWNERSHIP 

+

+MB-UDK and all copies, and any updates provided by Intel, in whole or in part, are and will remain the property of Intel or its suppliers.  Licensee understands and agree that no license under any Intel patent, copyright (except as expressly described in Sections 2.1, above), trade secret or other intellectual property right is granted or conferred upon Licensee in this Agreement or by the providing of the MB-UDK by Intel to Licensee hereunder, either expressly, by implication, inducement, estoppel or otherwise, and that any further license under the intellectual property rights must be express and in writing.  

+Title in and to the Derived Source Code will be held by Licensee or Licensee�s suppliers as appropriate, subject to Intel�s underlying ownership of the MB-UDK. 

+

+9.0 	EXPORT CONTROL 

+Neither party will export, either directly or indirectly, any product, service or technical data or system incorporating the MB-UDK without first obtaining any required license or other approval from the U.S. Department of Commerce or any other agency or department of the United States Government.  In the event any product or software is exported from the United States or re-exported from a foreign destination by either party, that party will ensure that the distribution and export/re-export or import of the product or software is in compliance with all laws, regulations, orders, or other restrictions of the U.S. Export Administration Regulations and the appropriate foreign government.  Both parties agree that neither it nor any of its Subsidiaries will export/re-export any software, technical data, process, product, or service, directly or indirectly, to any country for which the United States government or any agency thereof or the foreign government from where it is shipping requires an export license, or other governmental approval, without first obtaining the license or approval. 

+

+GENERAL 

+

+Any dispute arising directly under the express terms of this Agreement or the grounds for termination of any rights granted under this Agreement will be resolved as follows: First, within forty five (45) days from one party�s written request to the other, senior executives of both parties will meet to attempt to resolve the dispute. If the senior executives cannot resolve the dispute, either party may then make a written demand for formal dispute resolution by tendering to the other party notice of the dispute and its intent to invoke the terms of this Section 10.1. The parties agree to meet within ninety (90) days of the demand with an impartial mediator selected by mutual agreement to participate in a one-day, non-binding mediation. In the event the parties cannot agree on a mediator, they will each select one nominator, who will not at that time be employed by either party, and the two nominators will agree on and appoint the mediator. If the parties have not resolved the dispute or claim within thirty (30) days after the one-day, non-binding mediation, either party may begin litigation proceedings. 

+This is the complete and exclusive Agreement between the parties relating to this subject matter. No amendment will be effective unless in writing signed by authorized representatives of both parties. 

+The terms and conditions stated in the Agreement are declared to be severable. If any paragraph, provision, or clause in this Agreement will be found or be held to be invalid or unenforceable in any jurisdiction in which this Agreement is being performed, the remainder of this Agreement will be valid and enforceable and the 

+parties will use good faith to negotiate a substitute, valid and enforceable provision which most nearly effects the parties' intent in entering into this Agreement. 

+Any claim arising under or relating to this Agreement, will be governed by the laws of the State of Delaware, excluding its conflicts of laws provisions.  The parties agree that all disputes and litigation regarding the above defined claims will be subject to the exclusive jurisdiction of the courts of the State of Delaware or of the Federal courts sitting in Delaware. 

+

+[END OF GENERAL TERMS AND CONDITIONS] 

+

+EXHIBIT A 

+SUPPORTED PLATFORMS 

+ 

+List of supported platforms with which the MB-UDK may be used: 

+	BayTrail-I 	Atom 	E3825, E3845, E3815, 

+	E38xx 				E3826, E3827 

+

+EXHIBIT B 

+MINIMUM OBJECT CODE 

+END-USER LICENSING TERMS 

+ 

+Licensee will ensure that terms at least as restrictive and protective of Intel�s interests as the following minimum terms, as described below, are included in all End User Licenses. These minimum terms apply to distribution of Licensed Programs (object code) only.   

+

+An End User may: 

+Copy the Licensed Programs and accompanying materials (�Software�) onto the End User�s computers for End User�s internal use solely for development and maintenance of the End User�s products supporting Intel Chipsets or Intel Processors. 

+

+An End User may not: 

+Sublicense or further distribute the Software, or permit simultaneous use of the Software by more than one user. 

+Reverse engineer, decompile, or disassemble the Software. 

+Use, copy, modify, sell or transfer the Software except as provided in this Exhibit B. 

+Remove any copyright notices from the Software or any copies thereof. 

+Export or import Software in violation of any law, regulation, order or other restriction of the United States government and its agencies, or any foreign government. 

+

+An End User will also be made aware of and agree that: 

+

+Title to the Software and all copies thereof remain with Licensee or its suppliers, as applicable, and the Software is copyrighted and protected by United States and international copyright laws. 

+

+Except as expressly provided in this Exhibit B, End User is not granted any express or implied right under Intel patents, copyrights, trademarks or trade secret information. 

+

+The Software is provided �AS IS� without any express or implied warranty of any kind, including warranties 

+of merchantability, noninfringement of third-party intellectual property or fitness for any particular purpose. 

+

+Liability to End User is completely disclaimed to the extent allowed by law, including without limitation all indirect, special, incidental, and consequential damages of any kind. 

+

+The technical data and Software covered by this license is a �Commercial Item,� as the term is defined by the FAR 2.101 (48 C.F.R. 2.101) and is �commercial computer software� and �commercial computer software documentation� as specified under FAR 12.212 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer software and related documentation is provided to End Users for use by and on behalf of the U.S. Government, with only those rights as are granted to all other End Users pursuant to the terms and conditions of the End User License. Use for or on behalf of the U.S. Government is permitted only if the party acquiring or using this software is properly authorized by an appropriate U.S. Government official. This use by or for the U.S. Government clause is in lieu of, and supersedes, any other FAR, DFARS, or other provision that addresses Government rights in the computer software or documentation covered by this license. 

+

+The End User License may be terminated at any time if the End User is in breach of any of its terms and conditions.  Upon termination, the End User must immediately destroy the Software or return all copies. 

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.depex
new file mode 100644
index 0000000..1b4e8e1
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0��������G����P��>2
�u�*O���Yj���ƣ�^�H���3������J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.efi
new file mode 100644
index 0000000000000000000000000000000000000000..d1147d22b2e25247f10bee86e2a3b907da61d163
GIT binary patch
literal 4096
zcmeHJO=uHA6rS3y#<p?ep_qz?s4E185Y43s>Z%n-Ts6fCRzaE)@dtFRMraCRCAM@N
zB2_O63jQ2a5W$05PqzMs5~Nlw6+BeE1QmZ!1VLTDx0|i;Ac_hiW?*;Ud-LA=-uq^D
zXP2#EzdSO(9Qo%1ql*}eca(jT_%)jns2DYlF*19csmk$q`U>1g9#x>bViZC?U4?7=
z!Lu;!4_rs48v~3@8qt1V2qo6HB#>r8DQ;8{_3$k%EWp^tP&}51VTx1lFcfkG%^o^q
zBTKB2C5(&wD@pk}bjB8hTAYM_GQ(i|f%?Ls!>>>;%734MI-a^QoGZs}fe>g|!$mb0
zF%K7;d|V{`Tr>v^5eph(Q`ivAHHJv)T-0&(d_(lDy1RKbZpn>rYt`NJTj(x2(Gm#<
z4(Ej<XY#^{?!0i8HWm3?7|IJ*auE2;9_vY#%W5uxFM%(CFM%(CFM%(CFO#}@z7E(X
zVVgF#X=9r%w&`M<F1G1nn=ZELVw(=O=(l2=r(OiPT+nEwYqc;>#kDZw!n;{TZE5dw
zY-TR13}}%7E|jGZtS-F-R!Q#ZswLzoGgj2YyJ4o$hQQfm7Rn5~jJf@vEsMAJ?3|G!
zG9V?(d1{VI@9C~Fa2gGXr}`{}l_D(nlKiFeic+L*1g~eokM{$#eS1D4M*G}pKVjEb
zqIwiPrw_9z<6$BS*E>**w4nv5n;^tmEr3cdTbAWys0=t60CJE(Wac(p=!0j0f2G5=
z-E+E%^q_|D+Ur>^>NV^RL-RO{Df7S$<*orUY42U{2s7<HYUgRY9!zq{`TG)&y7!Q6
zQTD*kNGlV85gCx3^=&HaX4G(MngSc+Q!^;xDZH=>WmHMpyXtFhsSG&@9@EM=tCjY~
zVT%k{UHvX9wI8P9bTmF_^U1k-X?_V8WRuEC3dgef?EZ-3Yl!`i#xV6dcUHyCon6yc
zoZCOpu-Vt1y?izMZutGD#mDaZ&b*2C9yq(cWa(gR>hj|k=iWXV3O{&s>y-c5x(q+j
zdodzDh$BD47nX)~;p(1@YwXWN6n(zOz~Y7V2A%Jf_|mv%KK<KN;C!}qZOc|WHo#aE
zf_vUap@&J|?wr?c&}%41(~cc5+iOE><jiZWt*!B<4K#ru`UePY%l|m&jQL5=pZgGt
RqsTy!fg%G%2L2%iz5opWS(N|)

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.inf
new file mode 100644
index 0000000..91b1687
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchBiosWriteProtect.inf
@@ -0,0 +1,121 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchBiosWriteProtect.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchBiosWriteProtect driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchBiosWriteProtect

+  FILE_GUID                  = B8B8B609-0B6C-4b8c-A731-DE03A6C3F3DC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchBiosWriteProtect

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchBiosWriteProtect.efi

+  SMM_DEPEX|PchBiosWriteProtect.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x800

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gEfiSmmBase2ProtocolGuid            AND gEfiSmmIchnDispatchProtocolGuid     AND gEfiSmmSwDispatch2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiSmmBase2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..43c341005a38f080bcfc36c46f223797c713b117
GIT binary patch
literal 126
zcmV-^0D=Dksbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0^Mui{|8~FMtiba
goPNb8Tmp^=m+Rlp#!0?Q*#@Pu4u%5*0|NsC2o*v%X8-^I

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..bfdaadf90d9ddcf4d9ea57f1c72cf1d65f0c4ce6
GIT binary patch
literal 59648
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
bFBE`&LwmnFo~e1}$?ZF~hv{BOpWpuhCE1oB

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.inf
new file mode 100644
index 0000000..6df4e59
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitDxe.inf
@@ -0,0 +1,272 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitDxe

+  FILE_GUID                  = DE23ACEE-CF55-4fb6-AA77-984AB53DE823

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchInitEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchInitDxe.efi

+  DXE_DEPEX|PchInitDxe.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xD070

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..89550b75de68aa683924135d77708ae9cd5b8634
GIT binary patch
literal 162
zcmV;T0A2qAsbv96)?p(~ptU~7oGvic0!f~M8t&N3NSd4qpwfW~I06gOhvJvm9!{m%
zmv>{6Y6Jox$327|tII-@SBe05^Hv)I_VA+<N+$3=^5EXZ5;QL~0=K`+^x*dWN1fCV
zsPRz2kpgrpaKa3LF+qn$kF~g*<g5bSYvBI}VWviVvRa&e#V1?>jtH0Q-_OQLzDwB#
QrLqo&0|NsC0|NsC2pfM&K>z>%

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..a7e8e4545794647efba6f61bde13c05a28f0a84b
GIT binary patch
literal 18432
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
X_zyzBDgG}GTX_nduwA_V!w~o%5FQxC

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.inf
new file mode 100644
index 0000000..40e0abd
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchInitSmm.inf
@@ -0,0 +1,284 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchInitSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for Pch Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchInitSmm

+  FILE_GUID                  = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = PchInitSmmEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchInitSmm.efi

+  SMM_DEPEX|PchInitSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3400

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## CONSUMES

+  gEfiPchS3SupportProtocolGuid

+

+  ## PRODUCES

+  gEfiPchInfoProtocolGuid

+

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  ## PRODUCES

+  gLpssDummyProtocolGuid

+

+  gEdkiiSmmReadyToBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  ## CONSUMES

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmEndOfDxeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformInfoGuid

+

+  gEfiEventExitBootServicesGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/SampleCode/Library/AslUpdate/Dxe/PchAslUpdateLib.inf

+#  MdePkg/Library/SmmMemLib/SmmMemLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid   AND gDxePchPolicyUpdateProtocolGuid  AND gEfiPchS3SupportProtocolGuid AND gEfiSmmControl2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.depex
new file mode 100644
index 0000000000000000000000000000000000000000..6f989cc9199142f9565a01ca77ca98fc2e1e5354
GIT binary patch
literal 108
zcmV-y0F(a$x4+Ev;P(ATozxJh@le5$0$V^JIhV-VM2PcDNs4dxHUa<yAJZ0n7DK;?
zU}cCqKq~^NWdTdpVIxkUwLZt3E-=*s_VA+<N+$3=^5EXZ5;QL~0(2{I!VG{hL5D_<
OwYZ$*tOElB0|N--m@hg2

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..f0b28d728fdde6edd6354bd0de65f1927ba43a8a
GIT binary patch
literal 13312
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.inf
new file mode 100644
index 0000000..7e4129f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPcieSmm.inf
@@ -0,0 +1,245 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchPcieSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for PchPcieSmm driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPcieSmm

+  FILE_GUID                  = acaeaa7a-c039-4424-88da-f42212ea0e55

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchPcieSmm

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchPcieSmm.efi

+  SMM_DEPEX|PchPcieSmm.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2A00

+

+

+[Protocols.X64]

+  ## CONSUMES

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiSmmIchnDispatchExProtocolGuid AND gEfiPchInfoProtocolGuid AND gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b943d98dedcce25e022db92fbe6b0fd4fd8790f1
GIT binary patch
literal 2528
zcmeH|U1%It6vyw*=9-x9m_-~B+ThqurI4`ngJKkwow&gfH>F6SP!u*LjW*C!+7(L>
zyfn?`&V+5#*653sHHaXJZT+H(4<(gsvi3!-f{2n9AN(q<A0V<#*8kbrZH|E!Y@tuR
zyK~R){Li^(@4YiSw|k4Y=62$mM_&KHja@?Y<{JJ}=%QF|FEMTtc2tN=EtE09xa!RY
z(6zYD-nx*tWO48ce*6mh)nwHu#Ima;{Lfe-yKPSvW0umIu}-^Yc^O-XXA-?V*&c{C
z_C?7B%kz>#OxOLp00r!cU9)waY*L8M#GbGq?ZL@f9$DU!$n%DNTjh;*W;|cMev1&E
zZ%$N=H45_+F5wM*w(8Vr&)?+4DLJs-!SuYmG++YrHT3DcISi8u<RKXMlL$tonyef-
z&0nJOQII+}he10)eJS4>hed!!yUis8&S2eX-#ilP`(e78C!yZ~nvxTUzJ+`$sm_(5
zp9X2`9`ul(hjH^yM4`Vx`!{1i>?cvp(y!hPRA<W&p9)2)umPFc`~f}mZs=X>zJq)U
zLQ2c&P=5$I!~rtCyf5@(VQfw48KKt(FOdJ>_BwyZ8nwIt3gq|XABio~@~f&pfMmCM
zGG;hsEqmYuGK1bJ@0-jv#G=18IP)>1uVtsqBHcZ9DP>ESh6JC3R)ci4$CTbi!k;ZK
z$`ue(err2SQQnJwEj~qQgW{3fBPrcFgUpn+K7#2h%Iz?+QF)i7_A0u`HA?=*CNH0i
zKTz8BGwQbC?oCM_Su3&PVc3u9?}<9wQ8Mkf_QSYA#Q7cTaCM|RT6(Ol^xXL%%x%YT
zOf`aW&L7I$3A;3AsFgpW$XwUD8D)L}YSD5tB7s~_dGmd~`5-}ATYtgE;=c7Mvb4Mt
zo|iXAFo8ghL-O)gKRuJaN&D$U15-hD=G^7eT4pI>RDO#{IxpA4sIx;;@)yYS+T2_n
zo_0Elk`P~7)EQVjk2I;Y|D@AV8S}7$>NAf7JayY5kAKs%VngA>hl{T!R)1ZXc;n4#
zpw^}1YxY(um1?=10@X_AR9okQ-p;s#@%@bViiP}P#zTzvG0rg_VXPVZj1Mp#WBhJY
z#Za~RA7%V9<5w6DGtM!7iSan&LyQkI9%Fov@d#thct7I<jNfPc0psJ0-(!62GV}Ym
znCTrx7jGsUh0CV*>7sWj&%4PtZU-KHWK%kW{~VpK)w9;wF+jggXXq?$VEtUp;9O5a
yPwWcM#R7aq@vXaeQ$F2Kbvf<~4i5HieHwlNI-RwNXTxzP;nSH~KVN~@)&2!+^McX<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.inf
new file mode 100644
index 0000000..9be8c00
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchPolicyInitDxe.inf
@@ -0,0 +1,109 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PchPolicyInitDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for the PchPolicyInitDxe DXE driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchPolicyInitDxe

+  FILE_GUID                  = D6AC4AC2-8BC2-4cdd-8776-280E1469DE02

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchPolicyInitDxeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchPolicyInitDxe.efi

+  DXE_DEPEX|PchPolicyInitDxe.depex

+

+[PatchPcd.X64]

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7fcc3222095f2b04f5a1676c3ceabcdddfa3cda5
GIT binary patch
literal 4608
zcmeHKdu$X%7@zifZ4u5rBh{LqoOB}%CbfvcA}F`*p3cb@k4L2ufg<I=fTr3zg9NqY
zsNOQ!P&F~e7(#p`3jP5xX^#@jJxF>y<fRdOL|$rI+R_V!Vi8?`-)<XPV)z4%F{abp
z%=iAj`ORael~1u7Zt)xT{O244KE`Ta&lwgl!zOq}XWz_NKE%1UD(=QezrjXy_8>E4
z41gX8H)e?VdgRcs*Rva{+u~tt+)%;aq)S4}*Mty5&O=89(cFi_!aR(vEU8@@S_)ND
z7CHzl46d1|m$5W7R+~?KDSm_%ARXGgjFp$Hu>)$PfWWf51`vqLp&4oaK?EdEJau45
zlO`m%p1vyj?J8+mNu!1fE)Qo9yk9+B@Z<unf5Y`dvkfiR<kSA(`mgm)|Fr&kx27lj
zk&}5m(c$RjA9s$@^n;HZ>+;Osq3HeS%96!apapaI<T(7feuOM}<aAyy-=-hw-CDhb
z47~Grq^p#R@@ma+&ctEY#M~O+l)YSc_DhU$@f|3WD8redL09Es(3(ZNzQnMT_AJ*6
zc7RrlIc_rXXnMh?#G7x`;iSMJ1<r~Kf22C>w4^`dNDTPHi3?|FAc)yy`H8REr()H)
zIL;g6FHhj2U>*#(aMfZk=hi_`ZVQ$T3Q|0>r*t9Bjq946Z_h7MD|=}&?H<ajJ0B*e
z#&}rbu~GJ}YUt<!(Z>9~x%0T;^5X2HoC2~l3QABW6(6a|C#eaR>)eexE)Xf4yD?~n
z;^vV=zS+cS%EFm(S<c^LfU|E(Ttw9diN)9-rpb%auxPde6@pB`N<_WTgV_xE`cn<2
zmBxc|ItXG>QH`uCxuMBk82Mo|kjqfzzz}c`IViF76NDTF?(OiP6&e8dDo#(!`CMNo
zV^4+T!YVGhuqh}-F4bpLo#aMk#tak!F)6wXlT)SU%0A@_6vcdwgG#F&jYbubR4$#O
z-gwnaoOMdg`_xs58NNwrSo<!jj-(oe)1{M^F1ac_Berep)~)KKgc^k!HWy$6y(;!8
ziH;m)V<J0VZj8x~pK{nn7krI-r44T)DU5s7jaBDWM_OuGl<__EO?bL0wS2Gir5xeO
zvGI+aa}=>(xpW4()K$q^<=%AoHd{=xyl0bif2-4vhjVt^*?FrXH7D<F<IB<j?QLA<
z8^>fx%?WjS`lTXu(q5F^t2A656Ltk1C%n;D&Ik2HnNF9QeN2s3o$t&cJ+S%?j=(D8
z-FV0hlxiXkwAM_6qGL1)Zn2g&MoStj0wOJmo%DH8q?W@X5$u^|jLi*p2S+C=i0JW)
z1Q$=s0WQ|b)tU&&HQ3bNMcCAu_`$C)^i<(qz`6As6@~t`ihTN5`Spt9mBy@mWPHLZ
zrQls8#;(KmIS9%Oa9Y2{O|WerMO#ofXG6Z5zH-;pC$;o*W9)t1;`sVA<}uS;zn_hT
z*OK4JE3^I=I`JWA`%Lidlc>9R85(RiR>MWQ{SvsK<9CsgT8{Ndt(`8B>S^qQ!#Of*
zQ{`${Vn2gGNufTP>q<JdOBT}{F|#sS>33ih>By2cM2YCnk{Um-+?=nWY(N<BOo=PT
z+~Qyl`UisDKBN4BU?lA(P%T+$uzP0@5Qn-nSOl1349gDnQK$!va=N9~jLSu@iJ%fm
z=8zgix4U|%QV%j(m3pj7JB!-a0=m|IAiO>M-1gjae_@1~l+pdum&^*g`;ysVH;>U#
zL2F2X4;29VT{lr&UMLifWMg%O+d=J!g=9<s(U}YNrR;m!gX=B=zg@Ish_QfTM3Qc?
z-wb%6TLE6|hvE@i;jzVmLGeUeTxf}%cMxY3+;3|mdprxdS>v_t&G|BJvaVu8`U%&g
zhU=xQwHP^#$A7eZHMwlcQB=kyzK>(CM)nkA!b!#sz$F0}#NCGhS0+Nj@qgQ*pB<Wb
z;L)#dd9RE$O`Msi#6(ZhWVc+|m6^TrbKZJ-^@iBydDE&g+a|_#+@m${(544lKR7Y7
zZrlrvN%yP|w@>ZbJwu#+_od6XPENP^-#ELe;!1K3ZT(?w{J8OV;m_(wQNfn7I#$oZ
zY&BcXszBF55(2GS<I-W?HbdvLiO9S0Bjz7yk5$aq=)D|Atid-l{jX4qr-a4J&pmIY
z@!)PCn}PRp%^?4xEr^5nlKz?cdJI;LRBMT)m)EXcTl>rkl9w_@Z|ah|fk0mDPvQsO
S(I7|K2m&Jrj3Dr@An+%;aXCl;

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf
new file mode 100644
index 0000000..03762b6
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchReset.inf
@@ -0,0 +1,130 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchReset.inf

+#

+#  Abstract:

+#

+#    Component description file for Reset module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchReset

+  FILE_GUID                  = F5883FC5-F8EE-4e44-B386-6021FB320C9B

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchReset

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchReset.efi

+  DXE_DEPEX|PchReset.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xC10

+

+

+[Protocols.X64]

+  gEfiResetArchProtocolGuid

+

+  gEfiPchExtendedResetProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiCapsuleVendorGuid

+

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+#  Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..ef5aca82d7128b9557ae29da7316a518dbaa86b6
GIT binary patch
literal 16224
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
TbJEy<{r)9^e@Wo~jRgK1JFE5m

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.inf
new file mode 100644
index 0000000..73d337c
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchS3SupportDxe.inf
@@ -0,0 +1,251 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+## @file

+#  Component description file for Pch Initialization driver

+#

+#  Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchS3SupportDxe

+  FILE_GUID                  = 14537da0-222a-4bbe-9a5c-212a3cbca9ef

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PchS3SupportEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchS3SupportDxe.efi

+  DXE_DEPEX|PchS3SupportDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x39C0

+

+

+[Protocols.X64]

+  # PROTOCOL ALWAYS_PRODUCED

+  gEfiPchS3SupportProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiFirmwareVolume2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFileProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadFile2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleFileSystemProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiFileInfoGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesLib/DxeServicesLib.inf

+#  MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPciExpressHelpersLib/PchPciExpressHelpersLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.depex
new file mode 100644
index 0000000..d57f41f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.depex
@@ -0,0 +1 @@
+�eK�a#N��>ǜ.0���J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..81a41398ac1c41317dfcb90a297e759eabbee205
GIT binary patch
literal 6848
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.inf
new file mode 100644
index 0000000..6cdb680
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmbusDxe.inf
@@ -0,0 +1,206 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmbusDxe.inf

+#

+#  Abstract:

+#

+#    Component description file for PchSmbus driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmbusDxe

+  FILE_GUID                  = 99796403-CF03-42ec-A817-7183411D79E2

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePchSmbus

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchSmbusDxe.efi

+  DXE_DEPEX|PchSmbusDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x17C0

+

+

+[Protocols.X64]

+  gDxePchPlatformPolicyProtocolGuid

+

+  gEfiSmbusHcProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  gEfiSmbusArpMapGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gDxePchPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.depex
new file mode 100644
index 0000000000000000000000000000000000000000..a04bdfab3e6c26c51e1b877ec289d7ea324cfbea
GIT binary patch
literal 72
zcmV-O0Jr}Fx4+Ev;P(ATozxJh@le5$0=s^2FB(eJ5t=vvkS9OEO#=4tqZ3Ld@ILb3
e-o+9$FEj#lD{#ULfH6UbMvt|)oaC$n0|N*&`XM<0

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.efi
new file mode 100644
index 0000000000000000000000000000000000000000..b843e3b610d2f223cad9d04634e05f257110a8eb
GIT binary patch
literal 17920
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.inf
new file mode 100644
index 0000000..7ab0c46
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSmiDispatcher.inf
@@ -0,0 +1,175 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSmiDispatcher.inf

+#

+#  Abstract:

+#

+#    Component description file for the Pch SMI Dispatch Handlers module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSmiDispatcher

+  FILE_GUID                  = 6BE18C9C-BF61-499e-88EC-5CD57430460C

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePchSmmDispatcher

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|PchSmiDispatcher.efi

+  SMM_DEPEX|PchSmiDispatcher.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2010

+

+

+[Protocols.X64]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+

+

+  gEfiSmmIchnDispatchExProtocolGuid

+

+  gEfiSmmIchnDispatchProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiSmmPowerButtonDispatch2ProtocolGuid

+

+  gEfiSmmSxDispatch2ProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid AND gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2b748cd00eb5a59734e6e5aa4100877dc7d5d52d
GIT binary patch
literal 13312
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.inf
new file mode 100644
index 0000000..400dfc2
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiRuntime.inf
@@ -0,0 +1,252 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiRuntime.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI Runtime driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiRuntime

+  FILE_GUID                  = C194C6EA-B68C-4981-B64B-9BD271474B20

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PchSpiRuntime.efi

+  DXE_DEPEX|PchSpiRuntime.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2610

+

+

+[Protocols.X64]

+  gEfiSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/DxeRuntimePciLibPciExpress/DxeRuntimePciLibPciExpress.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.depex
new file mode 100644
index 0000000..6fa9e99
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.depex
@@ -0,0 +1 @@
+�������G����P����J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.efi
new file mode 100644
index 0000000000000000000000000000000000000000..26d15d7e69aea17ac98527865191fca3aca6364b
GIT binary patch
literal 11776
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
U9?AZ6!PEa#K9`CAOKRZ10hG8c#Q*>R

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.inf
new file mode 100644
index 0000000..e6e2f11
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PchSpiSmm.inf
@@ -0,0 +1,245 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    PchSpiSmm.inf

+#

+#  Abstract:

+#

+#    Component description file for the SPI SMM driver.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PchSpiSmm

+  FILE_GUID                  = 27F4917B-A707-4aad-9676-26DF168CBF0D

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InstallPchSpi

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PchSpiSmm.efi

+  SMM_DEPEX|PchSpiSmm.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x2400

+

+

+[Protocols.X64]

+  gEfiSmmSpiProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+

+[Depex.X64]

+#  (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+#  VIRTUAL_ADDRESS_MAP_CALLBACK  =  IchSpiVirtualddressChangeEvent

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.depex
new file mode 100644
index 0000000000000000000000000000000000000000..631980e0f8ec20e495bafea5b893c3835d38bb13
GIT binary patch
literal 54
zcmV-60LlLXk?~=zU#<>Jx%%j7(ul@S0<z4yCPHu25xnOBfX6(DfdcmMqZ3Ld@ILb3
M-o+9$FEj%K2msm{`Tzg`

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.efi
new file mode 100644
index 0000000000000000000000000000000000000000..59650eb536d8494bf8b383e2c78ee654cc8b85eb
GIT binary patch
literal 21152
zcmeHv4Rlo1z3&Ohgzzy;07K&k?NI{`qB!#59YpFRCb&Zf9Qll|AVCO(A~H8jbnt=>
zcM{8Z9K~L3eYf?BwYQhn`th_+lWDaHU=oz22-b(ycW<=4-ZLG1m)2gTR-O0z?S0P4
z%p~APU0v_3)mbZZ_Wtkx-uwT(|9kH<S@7Sq&;9B6+&%yNj-fhDTYFnc-ayB-bM#Te
z#%S7=nid$Lnhp)qv_|~d9~}k$6@GRv8o(P>*m#n9`AOiX0{a$f+F7SU_>67SB2Cc<
z`W%~Q(GT8p`Q>oBrZrDnyE?L(<x;fQ4?Nj!e*&7;XP3`{%wkso&wAQ$J_DLoGcBqH
zJcj!2tMOH2JyEnj0pKlLE)uVb#7hg4!P2al{jo@#*y5_6{l_ik!9;g`ynndpP8Yu`
z{y8%un0Rr1a@+9iM`(EW2OqAwcHcpK-rXf1EXvRFtHs4#7*8Z#W=|1+Yxuk3;l#`D
z{<vWkF-2lURhdXcs>+v(_%U4=zY@kD&FLUX7)ONhlKCISEFKr_U0X+4pvxp^MU_t&
zJ;I1o`9*xcj?qM7NmaQ>1TkRzm|qx6s)R6tRRQyb%P>Zwwn{gjLCNz}S9@1vm56Vv
z(zWf&%^x|i3p+7y%)HM5Ob8n2C6X2Q3Qbdu8__re1GFBI-`&BaYd0EG;~`LybpHfp
zbFqzcR}K-A=h{U0o$&{VsB&Ny5#t?zLqxel#M^TQ5pgDon4pL_k3_s^<J@Kb3}adR
z12~9(2WIo{0Gz4sg_&CX+r#GYkH*yL7XK)li*1}-{;ze2@H^w@@bAEE{vCirM7cx6
z+m{aJpG2Hx@lPUNv~hBYc+OG6lV~oK!~+h@BH~U5;1FTJag`)i+Y<~(;@fCUeMJ%R
zeU#058z+~DC>%|xW12JmfF#avU=|T09DqYasYApYvj<6HEQvTr5iyZO?6-05f}{9P
z;U_PB)h6s-bSae14hLot7Ipv*VVe-<JEap{fyM$qiJ~zzTM^cVvN_epQH16Bua~X^
zCk|Hm%;5|N@%>%|j2xUD$959lTU!;v6G5V_Y8Rgg*8|W$;Q_)kZUH9_h-?>S9-!L?
ziahZd2qK+fw3`b+1)F?q@@cIB^E-Z<`>)LCik~QoRKm+!Nc}D70589d)NcZo<nSfY
z;o?k)9qE*eO&qLOYiiyS5lPqB8uTF_<R~DFl0za<T~4BWJpnJ8WMN8?EMV{*93mlr
z&S8@7tyteshb&ZmrCZi9lBy@Mf}$O<PSt;ebq@8AU7t8!)*I~lI}>ER(XP)uOV*oJ
zy*E%sPE;k{1u95+yt^!D^wrJiLM;59<j3_qWRTqzBQAv3K;boL+fP>-yAZMw9n>2>
zvGfnHD%m4e3Zu_ldI<o~5CWC0Az^9A;=>4(i`hW%#M@voom|(<hyF%QhJe4V%1=$b
zgK?Cd=4h(#3TWzIFffGo2Fm6>U=7k#xkZy7ikcq2PHcp6l%vO@06G@;38PzV3|5J9
zQQS?Q{35X<M%yJG)$+mRd3ZkJCEXXWx72fT^vlYGckJECepsBskRin&f<_4jrMiqz
z84F<w#YaV;;upPvN|0|=T(Y|)A>Lg{sd;517qno~J)d;2SI~$_0+SV&R}<v&)>1=4
zPF|oPziChd0~#7eEID_)3lu4xLsf^&r)Fwe`s*KOv+19Hn9WvqXvZO44K~&Z0dkrV
zoF){KR?u-&)B1Z!p4M?l7LQLVF7J2+MMDF@jhLcw5?ZrH7dwPHvf1pviK!@A>TjlQ
zo3%)bId+z<+sjo*(Hwx6q{6_1Rm~z<Tb8Xg`f4R4S@E?RI|6lsaJ5Fu@5kz99N==^
zOs#}E;bbH}2>Zx}Dkbr-?j8FXQxIncQi&bMz>{XiF`BZp%NS|;*?mX!5PdvyKEgvW
z=1mn-ib?l+$lqLu4i09bt!fW?WKMG+anmO(C}C_R5sfIDD5KaQJu0%2k0MXoy%?Lt
zVV<@JtYWdJZMRh{@w7c?6<waT5r{{`E%me&TgBm?HaGl{&@xp_k3^k<Z1g-8n9|<m
zY5OupkN{x>q(~rQG>dpwC4DjEX(MT7bcQX8SyB%>q9^D<k@Fyi4+9Xx7><*4H==A_
z31o>yZXZYY%ve>8o5=eVhyq{}1uzh|M`G?kwhOQTs1B5FUm@0@EH-vQ{qRhBSz<|%
zKOc(zMVJ?Z<slO+27>`@AT;w2iYP<U5K5Q8ED33}BQy$AiZUM2QA%{iv|mB6=_B~E
z@TS1n($5k2EWS|gWcdkIeuU*8;!E_lRmC^}KC&ZZ@1^W(V2~1UQrV9MhWX*eCzpK;
zksvis$^JK3%FP#m%rW7cZB-qZu|W0&QTFnAD%ra{$sO?ae38btL3W<DHG>*3Ws%^N
z_i_AuHK0jSvztu_Wl=n>B|2(FfT)Q7yo&8w<g6690f~3Wy7{mV6^zTq%t4w5hz`Rz
z!dhf9A8?bm(WZ)b9zbUnOFVb}1jTeGz8GDi<t-zexmm!loW-@Cp%g=UMY64GCt;}Q
zK}=6h7(AjWaI4KY0OWB%&W0L@V#Ta&GYXl##~NixQ6RsGb_aE88R<dIWGaTL=&-iI
zG5T9`<V*Rz93xKuA0m?#{Uoe>&r0P^#R>_KtXv7?Y)JnzS*fR~eP&h=m62A=I4lXd
z4e5C{)SMY7Ix0XMJ~3M~>2G|bToN%!>LrwZ9qSRzHwL`)*Pxg@|GX4{^bCGY!`C3c
zJE@z|YRr45o!re%$3`aAOIu31w_}%Lt_8B=W?dkrz|9CEo$?8Dp~(dR(=r7i4sIsX
z<2;w4n-zQ7&*X%84WHm<0ZNWWEd4~~#&E1%oH#PtDiuZinQsW=9_6YqbZPa5YZiFS
zh8lA$V!KSE9rb2r4$&(MX=Fp*llRJJ;EN34=_in(C?(kDajpf)kKwk#WF}^itI7yJ
zMazuIj20a*6MkZuVKNgqit@gk{YLy)a}UBnkr}<fHjWt_A?)M<RagN3gxy5yd|F)6
zy$WS>9<UV}R3FHUQDwROb2X!OC@`7c<4Y~PGQmNbs}^1_mItVxvuoxDQ|;NOv$NM;
zeL49poctm+`CEQWegMc4i&F?SxmU=g7j?D>w)j{=+(k}3Q59tdXw)MMD8o|r?+``$
z5quRi&Mxz`f7=3sWa*a$q(?TH;uI7g1eK||ieeur{!%W*p#q9!J|Z(si{d;oGu71M
z7|?@HEF+cUP?i2M%)#>%M2N$mF*#_XGb0C7k6mW-z91w5#&Zsn8W?NCS}WFn+ep&o
zj1!yAx0NAhYs@o+<JhjGB8s;qD4TPDO$kcB@+#htT`?2nqC;&u+5m&f6m-I|15>7;
zd)kuV&ium^dtzw?dae~jId4?W`v%f{b03g7iq6sfYF^#80?Y8w5+Dw~FfUi1)(Y0c
z%(VclM`xHq<}5Xk(zTvm#YD*w3dGm2@8DqhMa^1=-r2SXI<jKkxF2+;_9&XYq}d~B
zww6T_$DnFe2RV-*QTS34lads+#Na%)QB`}rc@oR>n|Yl5Cu;T|W0zsx4P=ff_3;T-
zs5CWO1zS)1a0Y601vutq8N@f(fPe*P>}1Yi9_BRE3GEBc2m2a9<7IyNI=<P>PXwJM
zy+^yf1MUHEuu5N-sFp_tdQYHum}(A`$R2>WQ~?`FnXk%b_CmTMWCYUDG=USTrryAp
z?FwiO!a}F^aR-b;6V8PLi^&Qx-Zd?ko~_ozMHt6AegQs6c1#7zkSu!B>llx7O(lwb
z))2PB^iQr*dG2;KwPVlWNW}A$HurW=9?A90$r2UvLT+6gKQSz?afICn`^aGh1I15l
z&BOdRTFo7kZL1mDZbxI6mm1I9J?Rc(t79%l2gguB=V!26Sd4vyWog_oVxOmtiM{#J
zB%2)R_P$)V-+}2<rz=wa9Vh7KK_F8<GQ3zuj6lMDm)t$eje!$*q}$s@%q_f9xDgnm
zER+Ta51Y(dBij%-Xeiu&6DDoEfsw<1W3D#tvxb5pD1RVE%Xp4Jkn{+E8g9&8f!B4w
zGjP_@<>Dm3<5?g!dx635M#4ot+)l6Ucm>HyBlM+zID`>?Y8!k6!ZmNMvQ;p&MSOrw
zSE@;=;aZf<I&{djh{nN@Ov)3CIBT*M$spnZivSbQrET%8<+5s9u`lzc-CStL?-zKE
z9LKRNzo+dW5X^_pwb_!E<<GUO^T^T`#gc)*WwrpB)5+M>tQHi+FlAZIY-uJl(3||?
zf?`|N0?Yp#Mm+78*dX@N*+=ihvV!X;F*(naF0>Gx<_TNQk?63?2{Kmoncpk}Y1uv%
zwq{pP$aCpq48I)z_CWDY_+|{}3R<L`4{RNMXib0HMiKF7sh-#SQL70FR8%ignG$1+
zD}JIhFIKfXV_5zY8lckl6s*4(zqM7i*n?EsW{iLiv!@wjC@pi94M)Vc+yPloj@b{u
z5#g5<h4S$^4n!we7dX*S>jnu3wBj@i@)$%wNj?D+>;a4O;TvtnWLPL*)9!<Lha`Fc
zo=>!b4@orhAQ`oN>8G(DwEY`?BK_N+*11b8SY!(Qd&e;uldubGfKcQyM2H3R0p0ci
z>Ds#i%S%$ef{kA4Kb0TEFGPoLpaWf0VnVZ)Ys;#Yq%=}O(zPwW7;tTRiIvvD3m+=M
zfD<vGI%OQ}g%4uJ)O%`n7iT~A6{S+?h2a7(40GNvJxcmJzLXd4(J(`M6(-|0lu_0?
ze(_qzFR<=yRbJPYvw70(g$v^>SRVC6<POk2rwwJECt^su(MQD4G_V4z?K4Zk0;iQZ
zb3=Yka{$zHlWyne=?=03LSX=meW#?z6R#(B0ac#1Y1SA*g^z)D>^6%qu$44o7MaZj
zNH)BFmVCnPUw{Z?87HeZ(R103qt&<UGR{`#!+p|E+u`S=d6;snp1eHFp-1N`Mr8~O
zAfGD8!jSXCKu2-wC<-BpqLxvIR9LX&#unX!*rO%Hmj^^JFeI3-o}8}uL<*&}ksuD0
zDe9PXsIgB)?ie1d>?FDPVEbj&a)`Fh6i!L^N{Si^I(ddWnC?>9ff=rjsqKoiEW47Q
z;L0V1lb{chG${0KyW>d}I(S-VrqY1j8{>VJX)`UKpViMhCuii6FJq@j|C2m91E@!n
z89WvRmBBwQd6N4CCxagduJwP)3$8o%Gmh>%Sc_LK^uiz;Kh|Jgb*3H7hS(i*?~~fa
zIFxi>g0eXg*rZbi%g?zxj%+i3b%s5u454{D<7+wRchsDF&%>NQ0<y9e#Gg;UGcK_g
z9^G1a^mK%7n!E5c;OxkH6(yxxVhxz)>6j2F5L0ttuMmdF8OGBB_nFHH1W`KTB^*Cs
zF0uiN-Z*daxqli`_QE^@bhVOLmoyzwIHkO&;YraFaG#n_w@bR4DTxO-Jfx4jf|4j#
z<qOr-B{My=$%V#F>Uj5N)R&9IPUcN)mTLupI)MH{U?qU^E;1Jr5qW2*0CNOja^swf
zSOy@s3J8uAraC&+<?WD;c&%HvL%MxC<VCF2kqOD$p#dm@Yf*sxc@miq7K6b|K?qg1
zLtf!xHkQJwE7f(kB{8q)jfK&0Vze!W-dGg%51l&n2cs6c5>hWN{pAppSZ~0G!*@&a
zz{7e~rbM4~3r6#VaO%I|LYKgeGz1fZ-eN9Uue9sGDV23O4ckSTtV1mdzhtDWa|x3D
zyGF^nu<HlivMyE4{ys!C%oniR?@{%TQ!kh84R&1{E9;GR{c%-qw(AE~J#5$at9sO~
zN5`@M&X^;Qr2FFW6139>^~QFg$PaAzDE7BA4ujCU&H<L;@}r*JWgoHl%tMI($_3=x
zH9o%V^>YViy~Ogc1CTGV;AX#K4~FZ+6fyG_G|J24fmeK<L}ThZP%q}as0xm=&c?Y5
zB+a!+x<HZi&%nqfX|6Nd07+9Em_<^h18_*Ha7fDFVx)j1oh1FEBI$eQf}|rh&Rsaj
zj_()poW+h41?QSWoweMEvEWqA+P2|*6yK7&pTC9^<!np!YTm2K+p#d54%()*!^9e`
zdv)t@Yx_t7{pr(l`vVv1*TlKqVoqCC4CAy8$9eOAp}=Dx>RoFc4al!iNWX%wU{an@
zx?TsP^5qGYUzp!L4P6krutSjPolI7JR!%ETexL#jA8sz&F`RY5=)MEP!GzlJ$d-RD
z_J&LLGIO2IL-6LT8=$36Qk&i^*9}-cKQVcLIuO(UlDa}DW`u`q{Mr|+tBYWuxw`sK
z>FA$ZSN&&8UA>0Kr`J^;dw&sK#i-G|bAdT9eL9roSEIM(`W0WkFegGXIjeT#j{H^o
zpRo3%zBvr+C*4n=Y^E7P>1#QwcB2?#)eaB~Uop8@<Gd}rC3o@%K`IcMr30aWeFm~a
z(ps{uoR8tRs@({Pl!)>EVqi3L8HL9mk|Dr+2nzy206e<SJWo;<#1=GJTZ9b^FA?VK
zU;>bL&^MLt62qXJ5LfMZuY>pOj3jVc_d9Zn>v|gxs5;Kuh1{HHkbiKbe3@T{8BZ#6
zzN%^ReYsP}{Cu2@r(RSt|0>F6E0;ac_~**}`ylntm-$7W0hvFEG9~>9GQZ%|GT#a&
z5ei%I$l~oZCG??V63#D%T0j0l$vmp;JeqIkTwKgqpfpG3;Q~8<3U9)tzEli4lJ4hG
zHj5-@)`5nVorZ_Ba~dy<QyL_4W8dw4fcTE|Bi`O8joNkunV{lWG6pr|`NA)iUZOBa
zTym@3EqjJwM$wXO<M|kVtFzSwJ5(bl1yYnA0SB-=;%=l=xLsHIOP@K885C~WW9XCT
z7tDcMau2{4lT2i07Vf!yyp6%WAs6Q&QpbGA@tsi6@+P<sXm>vf*+G^6f=4z)|7kwC
z|9oy;ZUB#`(B*Hj#Y$~Zy8IYra~AN)ojjcS|45h5AzjYV<vf|*|K)V~mfWhkUdMxp
z)v0w!8@0SIKYQzkp*covS-(uV<O?l%w);!DT|iEN_YQnG*|I#r>U1Lx4lL{QJjTSq
zetD!=nyT$si`iMuC=C@}I25+^riwFSE}HZeHK=`*hfSb>*;@yfIWG=d1Yvo@d&BS2
zGm_luaA~o#RK<l_r4T92IVZ4h2SPyQjVkjAq&rU1IR^MZ=axU_cb0iYAae`fGw{J%
zA(g?RahSE5IHdK$vBhBKlKg(^E_TR%P7_B-zk@BlO!-gY=Q71>L{>d;T9K)Ry$EG5
zV)VA$mh(x8T<N?lVS8#V(;>caE3p0I%5HXZ>lw$9#L(-+7dqz?^0FgfE;#j^IPTh3
z)u=__DonW|2!HZLL9A$Wj=aQdzw`<Q?p}ydCJYTq91W#;N!oWUL@5!ut7zu-1v0?<
z-_r28anyjNi8<Y#+g6~2=^BPbxRYvdaaM#veq!l`XzcW&Xg*&Cd`Q+y+PqrpnUr<2
zMNG~+0rK}PXu<-+8x?g_;6=H?DiRKgaD<|c4J37wvRpl3jw5+`LfSHA_Bo202rP7)
zqs1ER5v|wVF}V7Tf>$w@5S2vrs*5@2EW;4x=7HfDUC~pmOC;WpX|1@L1Ci!A<ZVcH
zGF(v`G$oqiR@FCX1j^JP2BI9N6o$~vekvQau$oD|j-r0rAwfR*$^lFen_b+1<^B!~
zlL!sJ_d;(W&6g!T?k|eS9VtpBYHp;TYHm=1w;_pzxhu`J*4zY_+hE;%O@fiInwLWY
z((Nq!uZ1cr^NGM<&0^B6Hz8g?5xG{tT`1LF;F5pKi5jhY&@$%Cw%ufw0XtL@VImSL
z&C3Wb<LmS?oPkzYg?S-qq|0&!=mf*qFPQLLk**Cq-4-6{FMRh2^0$776ENR)S&Vv_
zN67Qd8C^s4@taG4nUfR*3KG0uVxN=xd*C3!OQUS+EQ6kaq*fh21_ly5utO$n7YS*t
zr;#I(AI4@XSVX>IE^JGoX|N%rsfLi<KnJqacCvF+{7wR=#iw9oG#PnRF`|=^<vd-s
z8SxHc1k$8Q+bV%!N(lJFk4oM@MAC#fw{IZZbF_{Z-lahXynM$(wDK&$wnlbJ2(QIV
zp8X4xmu@*6gbGwK9~-sQ|56-Wi?Vqy@Hv-UH+_Rnf_-d*Ov#2FMU*4z)@h3}wo*_0
zTQu#Bpc*_P6v#JOTmR02Y=qrS!)e<{q=Ve@dFzc@jp`pcCI<sOmoNm>4hvYN;7Ea0
z9q*jj0~}x?hHevbx^dwD0k|_TJ%8ln^isM9CToD*-7Whm3qaJc_Lb6icjg3;2B3$L
z+{aH8=Pd=dBam86_GZH`Hyi#V{Sb~1Z9Y6_!t%l;+dO;>zm;*<2dQvT2$w17C<(=T
zL|_ByirRXUNWu4)y8BPV#)W3#d8&R`_nRKE=0FOl{i1lU6|31&)cq#n_W?pMDP)E2
z@o0$_IYSnWfV|KT*m(v}GBUcNFO<#Ad9gG)+1a{`#1Yv;n2E_uGlG`fs_!I~Kyvaa
zj06pZIYuL=!l|F0nZiu&)1X$O2R16!9ic^nm7>wg3Ms>|F;c+OGgVA4gi591%d-KI
z7(w4j)R%D`K!C3<6Nwu9!Bqgh8sLL08PAI&{Vca1Xe~wzGrHAD;GDkJvj8d;@xE+k
zW(Uq4w2Vtk-CKO1{lKm7XU@Ton02SUys#ZNY&s4<#F4jzv3H+6kBNC|jl&Bd!%<9_
zy6fNneRZPTF77k-A}Q|PcMu4zP*e9lG3WWn`{}>ko6V~C<785`@8DidJ2<@yd>J*3
z_?2TlHj`jH;TG~-zT#p$_5~L6XVf!Z7wv~-gn;X~bTkB$cr7nz?45BSg#d*e1RD6F
zUVE4Dh!;p{e82v6j{S0)iwL@<xlhYB`VL}54)Yov6$TpUR3pI1U^n1Gj`6%2!z<<c
za=H&=C|WS0FkUmC=Ae*3xoCeqGD`lEyU+aBZUE)P7=NppPmn+4nX(SeP+zWgBoUo~
zm`A(4q-@Wy)^Px}Fs~@??i>bc)-jOpBeF;!_;-um>M|19TV2j{2V>Z@xDC!?oDM3a
zd_+eU2-u`dFJ1?;#_>N6o@g}1(8Aux8P#&xl~A5){qHV{#yt;%7+04G13DfN-&>rx
z+GWd6$?6ft9?A;h!Tki*T<aE~y(_v7#Jey+EP9&OdX0IVly=3tj7CX!El_JcPuGm@
zsW}aK?zsBy{?TRzyr9jCHnW$J+NjvC&|LskcR&)F*`tu&MaBF+k>dQptfjmAi9XwP
zCmxX+{@B7?td!iw2EO+_34?BC1zcBDcT{3XGJNb8(iT>tr6(|^2x^&+qVzYa+8W<I
z3&7Y`kJj1<*~Pnxkvy8eQ<R>;L6h#Ufv#Gk25vacJd>mv6`E=}8!c+Wo*GY4PfbOU
z`2m-pq<c7dc~v62j$rrQ6R5DK9$4d+E?!o>Oc=+&sW98o@mah^!QKh<HeTiLT8yLB
z&q{{yL#y^5fHRpUCBFuC>H@*!f&et~C+v1-9IiFGrE9DV^tj3}W0A?<2?wF)q<gkC
zUPHC<sxV$K&!%XSb$<MUMMgwi|9mWeqvCoDV^t@Y9q-g|Y{;KR8m{jF6in6~7sgUQ
z#@ddIF}rJz6tXMEjkdACk6*qBqs|W*e_KLa>s2QcMwFO%n6RY#*RrR)<N`N4-LP+T
zGDUK!5BkC(DWUIU;MjKFal9j^V0%Tq9JG&Tdc-+`7IP^Ge6~o*>l%!#<dvxN5~cl{
zKuL<ydh+WUsfh7PepY&WTxr-|kvSeCDEXXj^=|+#Sj=BFwP&U6ybL_Z<}e<h;suH*
z>AnMrX?9naq|Wu2!q}xSexxww=U{-IgzGhh^(|r<uD?^rXDQ@I9As&lqWaovzrHfZ
zKI@3xet;RjYb?syP#C4Zk<hM4tBB8?j<Ob+2tuczB;D480XsB~B5r(c21cOJ-a<*D
zJ(!F38$f|}%t8CLjW*ID5i>snXl(8eB^K5{*LIZbtEe=}*^tlVPE!8j+Wia6fHl7u
zU<lV00|G<o`LVf8a)h%Hl71$8HJEXySAxB$Tl8`q7MLS|NsFoop<wI{8r98Qnl1<$
z_4t8u#kbI{-oQ^~C+<QiIA?5YX>iUpWk@9OGB|#KTtBC)B`s1|Q}~I=g)UhVs5gS$
z<yegV1S`n=){Z+Lp$1Z0k-WP8JIWC6Z}E_F<1%7JMZ@(95oN?eOu_#IDPM~JL?WF!
zTyLBZ#_zF)K!KjNM=&WCH%}Y=7<7BuzDtPVx>OEd=a*yG(ecz(F#d4}c0IU9<|mf9
zxw-@A_q4=%2A1T4$IY^z!6f4g4rM!-nu$bRSEBA9Jo{*GT_2YZF=t<7oZW4~QLJ6&
zFH<z_IzL=mhwD8q60If|{>1j<q8A|a;?-2$p}ZfL7~fOBvx@Hzuex?6-Va$}{mx{m
zVztp`(qd^nOa?PBQ%Jg7K*}evbfb)$3%bl%q%XdpKdausOw=7p)V%?g%-*`AV7q`N
zkbcA*rdTS+gq2{a3w)fA+=H#&y2^mfQhy;!F^(7C-zfcUVE<_GL_d3ghJ;}yA3x?m
zL#k$jE#rzup+2daP1pcS)j(fU0F)YnTEHg}j#|p9O$PeSYT_Do_+JfBK)lHW0u&Q(
zIu7d~3prW=x#5-jFvg(I&u$4{bjJKw#{Q#U+jZXM-3#72dS_41{m%sNzvuO)pFFp3
zIy&^{c4GFB`@yPO0HO>vZCKH0?ND_wVyLFwnk|thL@cXTmel9=se?dv(-2Q!<D(DJ
zG89N+mwqN}EilwTL%`J7p8*@n{Is8~K>XEPw_NwfIp4kFTMtYdbHn|q>u#R-*#CT~
z<H?1INqh7+H#Tpd|8RNbY3IJTU`J+s&oNi~-A$c8eDuHG7<<J}J3Qm&)!uV>`NMnK
zYfH<k+dcP<Kc^%dUYp1^mZlF?KlaY=tJ9JGJ1c*B!<4@Lu7wX@GuwP@+3}Hg->`hd
z<(m$Vy>qs<`@n{lInU0Fz0|zkSn%}hZ7()o`oOdA9e-&2{K?0^`uqNWeQw;$i)KFa
z@nz?m=Z#!oY<+d--iO}odg5Sea?R#f#{T?2v{>(DJ9pF{f9%1`N9Wf*sgHj+`1I7D
z-|@lIS3dKH_vZh-Hp6$@@xy(0|8Dgos~#N_?EJvoaCm3WRZsuo;2-+m`{>I1Un$@7
zyHNMtshN+shHXBr=H6)wcF(?Zsyt<+{6<zUUR<|m$*Q_}^{eU@ExKxv?p+*N9ckU7
z&($ZjOp*3Ryt4-(Od(iXbLonkHn(hCvFV1Jrmv`J-EjTd70a%_ar%<$u8-6<-MC>*
zQ)uJ*6^rVEb=8aORxMjR-FNY<sQ;1`4VTQ6cnW7x)4D4*ua&6FR$qU8)7E7hnr@oD
zc=MVS3pck!ny<LNbxWkFWkqPs2C;cdq^4!V+VxE<YNJhskh+?sSFWgTjcmTM>4s@*
zBz<0Q%~e-n_JvctzPWQRo}#FhP4X*`ep3ELQUn_G>g%uHyk>P|!wu{8&=vLimhkE|
zP5Qc)&6{*zbW(#J*({%qoUd4<H?Q8J*Q{QvFW#{J256$CX@J@Sd4DnVF50}=l4<>B
zOKQ0@4wSLy(0B`Te4+XqX!(D)bmbLGf{ln3VUTG5?==38xNY;Sdex>INIm~Y+T(!R
z|2M5Xi2r-WdW-tMXCd&sn`2zJWef2s1Ij|RSKWN`&1<h)k2?Q{8vmEtw6N;O|CM%(
Vc-H?<L-DVlze?b*5;%zj{x8mu#1sGk

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.inf
new file mode 100644
index 0000000..62e467e
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PciHostBridge.inf
@@ -0,0 +1,248 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    PciHostBridge.inf

+#

+#  Abstract:

+#

+#    Component description file for PciHostBridge module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PciHostBridge

+  FILE_GUID                  = 9fd2360e-6b48-11d5-8e71-00902707b35e

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PciHostBridgeEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PciHostBridge.efi

+  DXE_DEPEX|PciHostBridge.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4980

+

+

+[Protocols.X64]

+  gEfiPciRootBridgeIoProtocolGuid

+

+  gEfiPciHostBridgeResourceAllocationProtocolGuid

+

+  gEfiMetronomeArchProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+

+[Depex.X64]

+#  (gEfiCpuIo2ProtocolGuid  AND gEfiMetronomeArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+#

+# The following information is for reference only and not required by the build tools.

+#

+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

+#

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)  /O1=/Od

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.depex
new file mode 100644
index 0000000000000000000000000000000000000000..04a994f69f4355bf96f414fc4c084834ed2e90b8
GIT binary patch
literal 72
zcmV-O0Jr}FsZV5&Q0TEuoZ<^aX^xGg0^(>^9)X0^5xnsLfX6(DfdYuE&nL`A)DfCE
e0FWm?!A%18@S_t-Ch$J;;NHa&G%qv*0|N-S1Rr1k

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.efi
new file mode 100644
index 0000000000000000000000000000000000000000..e389a81cf12387eeda40f31c2c60bc69cbdb21d8
GIT binary patch
literal 9344
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.inf
new file mode 100644
index 0000000..e88898f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PlatformCpuPolicy.inf
@@ -0,0 +1,216 @@
+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#/*++

+#

+# Copyright (c)  1999 - 2009 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#   PlatformCpuPolicy.inf

+#

+#  Abstract:

+#

+#    Platform CPU driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PlatformCpuPolicy

+  FILE_GUID                  = cb933912-df8f-4305-b1f9-7b44fa11395c

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = PlatformCpuPolicyEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PlatformCpuPolicy.efi

+  DXE_DEPEX|PlatformCpuPolicy.depex

+

+[PatchPcd.X64]

+

+[Protocols.X64]

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiPlatformCpuProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## CONSUMES

+  gEfiStatusCodeRuntimeProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiPlatformCpuInfoGuid

+

+  gEfiSetupVariableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeSpecificDataGuid

+

+  ## SOMETIMES_CONSUMES ## UNDEFINED

+  gEfiStatusCodeDataTypeDebugGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf

+

+[Depex.X64]

+#  (gEfiFirmwareVolumeBlockProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiResetArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..e076777323483e39152c49173d8ba560c7091749
GIT binary patch
literal 36
scmZR2lo2M^*m6a1&qs!a<2D_QOy52%7WPv6VE5_4y`w@V`X<aA06L)%NdN!<

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..22fb8947db858c0658a135bd0509d89cd7171fc9
GIT binary patch
literal 10080
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf
new file mode 100644
index 0000000..0c16379
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PnpDxe.inf
@@ -0,0 +1,200 @@
+#/** @file

+#

+#    Component description file a sinngle segment PCI Host Bridge driver.

+#

+# This file contains an 'Intel Peripheral Driver' and is

+# licensed for Intel CPUs and chipsets under the terms of your

+# license agreement with Intel or your vendor.  This file may

+# be modified by the user, subject to additional terms of the

+# license agreement

+#

+#

+# Copyright (c)  1999 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#

+##

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PnpDxe

+  FILE_GUID                  = CE7CD764-a1d9-44e5-9857-14fefaae96dd

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializePnpSetting

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|PnpDxe.efi

+  DXE_DEPEX|PnpDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0xBD0

+

+

+[Protocols.X64]

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gEfiNormalSetupGuid

+

+  gEfiPlatformInfoGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+

+[Depex.X64]

+#  (gEfiVariableArchProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.depex
new file mode 100644
index 0000000..df1f82f
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.depex
@@ -0,0 +1 @@
+�k��
a�F{�Z�~�'\������I�K���
��������G����P���ƣ�^�H���3����HN
2��G�,?��f�����c�,E�9���&^��J&�>����4/4t+p�
�1A�F�����
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.efi
new file mode 100644
index 0000000000000000000000000000000000000000..be5dad0460d5eb09b5cc876957421663130a3d06
GIT binary patch
literal 21504
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.inf
new file mode 100644
index 0000000..d823fac
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/PowerManagement2.inf
@@ -0,0 +1,264 @@
+#/*++

+#  This file contains an 'Intel Peripheral Driver' and uniquely

+#  identified as "Intel Reference Module" and is

+#  licensed for Intel CPUs and chipsets under the terms of your

+#  license agreement with Intel or your vendor.  This file may

+#  be modified by the user, subject to additional terms of the

+#  license agreement

+#--*/

+#

+#/*++

+#

+#Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#This software and associated documentation (if any) is furnished

+#under a license and may only be used or copied in accordance

+#with the terms of the license. Except as permitted by such

+#license, no part of this software or documentation may be

+#reproduced, stored in a retrieval system, or transmitted in any

+#form or by any means without the express written consent of

+#Intel Corporation.

+#

+#Module Name:

+#

+#  PowerManagement.inf

+#

+#Abstract:

+#

+#  Component description file for Power Management module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = PowerManagement2

+  FILE_GUID                  = 41E89AB0-BD3D-44b6-A431-E4836EFBF2CB

+  MODULE_TYPE                = DXE_SMM_DRIVER

+  VERSION_STRING             = 1.0

+  PI_SPECIFICATION_VERSION   = 0x0001000A

+  ENTRY_POINT                = InitializePowerManagement

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+

+[Binaries.X64]

+  PE32|PowerManagement2.efi

+  SMM_DEPEX|PowerManagement2.depex

+

+[PatchPcd.X64]

+  ## CONSUMES

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x4200

+

+

+[Protocols.X64]

+  ## CONSUMES

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  gEfiSmmSwDispatch2ProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gPpmPlatformPolicyProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiAcpiTableProtocolGuid

+

+  gEfiAcpiSdtProtocolGuid

+

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## CONSUMES

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gPowerManagementAcpiTableStorageGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable

+  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/IstApplet/Smm/IstApplet.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/ValleyView/Smm/MchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/SouthCluster/Smm/IchLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/SampleCode/Library/AslUpdate/Dxe/AslUpdateLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/Library/Silvermont/Smm/SilvermontPpmLib.inf

+

+[Depex.X64]

+#  (gEfiAcpiTableProtocolGuid        AND gEfiAcpiSdtProtocolGuid          AND gEfiSmmBase2ProtocolGuid         AND gEfiSmmSwDispatch2ProtocolGuid   AND gEfiGlobalNvsAreaProtocolGuid    AND gPpmPlatformPolicyProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiAcpiTableProtocolGuid AND gEfiAcpiSdtProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.efi
new file mode 100644
index 0000000000000000000000000000000000000000..025326689d46a6d8f33ec080939cad6d0b797e77
GIT binary patch
literal 4064
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.inf
new file mode 100644
index 0000000..5779ded
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SataController.inf
@@ -0,0 +1,195 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2012 - 2013 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+# Module Name:

+#

+#   SataController.inf

+#

+# Abstract:

+#

+#   Component description file for PCH SATA controller Driver module.

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SataController

+  FILE_GUID                  = BB65942B-521F-4ec3-BAF9-A92540CF60D2

+  MODULE_TYPE                = UEFI_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = InitializeSataControllerDriver

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+

+[Binaries.X64]

+  PE32|SataController.efi

+

+[PatchPcd.X64]

+

+[Protocols.X64]

+  gEfiIdeControllerInitProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gSataControllerDriverGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+

+[Depex.X64]

+#  (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.depex
new file mode 100644
index 0000000000000000000000000000000000000000..b1a5ceab3b2eb73466f120b95a1915810dd0401f
GIT binary patch
literal 36
scmZSDU00wl<#k1HmIcEEb^C+9Oy52%7WPv6VE5_4y`w@V`X<aA00;~YUjP6A

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.efi
new file mode 100644
index 0000000000000000000000000000000000000000..7b57467368e8fc2162c33438a90d6660d9dcd15e
GIT binary patch
literal 2208
zcmdT_acCQ56#tUunrN3c?Feqp%1r|fq9G#=7LU24Qhga;rIoUFW4LzII*^UhTxu=;
zQ9L_6K8{re3NmF-g`x8g|Bz))@Y2ZEV$ns5b`GUh!ERApSI}0sp6^{Q7zf=S^&fq3
zy!U?Z{oZ}=<=vN-y=={rT{H9F6I+`Z>p9~2N1?0i9=XO{%NW85cPV6|?s9BGWalBf
zQcn2(&a0^m+`<mrBDPxSL^We~trlDZ9#NkfRFSt(<(waTuk4pf%8VV1^mMD;XrFXp
z9M51nn&M?iFg8)PLukl26U1y?#z`j_Yl;k(3Q}H|lSjHz5}3EU1N5&z|NL=-S6dKY
z0evYgrQ*x!0M~OVZPp99%T<f;cJVf@f40kb-fP{!z~Woi_dl7RLg{FOttRq8FHk0E
zbKXUGS1&BS)487#K>K+Mh^8*krDYrenw@B_kg5BBwN-Ei)%>5h1oPN91MQP7`6<x%
zg?t^zmOp%%K*K*rS%zg<u}g4Xx`5t;+tS^jHx?-H5z;{fx1pUpV_A%GA<5_z{k__<
zM_pfc8r)Eot2^!MO)8U_D<JYPV%EL*I~M0k!k76Dl-59I#s=r?H^K%k^6`xWd${3$
z150ru_$I0FBsUt5+g5>xFM_e-HFO}n3`Sc38(d0RW=i+egK(p2K*Wc7J?a4Ho;$#J
zLKZHrnEhXZA&t`eb*Y&u=u$0JH6$;2hO~sSUcGT+DfS0-Xat|Jl@!4JXpT)H=ZX#Z
zKP}<yh$Hwdc|tmZ${Gd2Moc(^g-C{>4lWjNhqL%8mV6wB*cXc8=w<xXnqwx9C!+%@
zHq?sK#GK#Uo=j)V9GhWmmMBS)8=H3Q?A80L>c=iP-l|CtR3zbOK%4yqv<VmJZk!ir
z<1$y0(f(J@B{#cbX1;ued+7|AezH1KgOnAdG~7h_9w`hdQ?V}~-WDC$1V*xT__@t2
zvlBF*2dr_>Oc|86X#eGk(`7w4mWn3A73YhY=aRB34_PlYixbP+`v|%k3fM~tVox+B
zOvwEpfw%_oJJajnW64P_Zi-oW?CmgeNezH9uGZipftZ*-dfl=>zZ=B)(zt~h+V0F8
zgnt3)F%w26Gab0edGy2t{*>RK!9~--mJw5Zn2TL~Tm*L`mJ$Un8rvzVG-Rr|ve&29
zf<4L&DaA}T6n_H4lSm1k!@ct#!$c4{DqAUqh4&6kO$SnE55MsKjbUpCzZQS?>toaP
zuRp{_@7tMcQNw-X>xQ=`UwZWD2ifC4o~q>DZ2J+QeICTA(er<n#~x|tbWe9-6XiSH
zME@21hHO7{=rHw1cXgC<ocnvU?Dv-d6Mgz0jvPp*DWB#-Gm6;p(9qCO&w;1Wr@Nf)
T>PTOSM|ZXDJNGz-{*&?-hgYnM

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.inf
new file mode 100644
index 0000000..234cd77
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmAccess.inf
@@ -0,0 +1,198 @@
+#/*++

+#  This file contains a 'Sample Driver' and is licensed as such

+#  under the terms of your license agreement with Intel or your

+#  vendor.  This file may be modified by the user, subject to

+#  the additional terms of the license agreement

+#--*/

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#

+#  Module Name:

+#

+#    SmmAccess.inf

+#

+#  Abstract:

+#

+#    Component description file for the SmmAccess module

+#    {1323C7F8-DAD5-4126-A54B-7A05FBF4151}

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmAccess

+  FILE_GUID                  = 326E9CC6-9839-4885-B2ED-275903B668E1

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmAccessDriverEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+

+[Binaries.X64]

+  PE32|SmmAccess.efi

+  DXE_DEPEX|SmmAccess.depex

+

+[PatchPcd.X64]

+

+[Protocols.X64]

+  gEfiSmmAccess2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiHobListGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/DxeHobLib/DxeHobLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+

+[Depex.X64]

+#  (gEfiPciRootBridgeIoProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.depex
new file mode 100644
index 0000000..0dc7ce4
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.depex
@@ -0,0 +1 @@
+��J&�>����4/4
\ No newline at end of file
diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.efi
new file mode 100644
index 0000000000000000000000000000000000000000..2156090e2c2045bd957d417faf3d0e87db95d7f3
GIT binary patch
literal 3584
zcmeHJUuaWT7(d3|xmmNTo0n}W+f`ESQ^=OG)wyAAP1q@<5dTe?FV@w%L6x}1Q9Brc
zn@rNf)uQZ=Fc9`I#(Y|3EOrlGlR;CP3HHH1C|I_ax!T1c`rwr7?>jf?Zu_91KKPIW
zH{bXBeSgmPeH_k7#|P|@m;K0*PcASKW320oh8YQOuoZfv?|H_Ee#SKg7DCcjTcrDH
zz#|jTtLYYa=m)9Zv=8$0+7dcr%e=&6>cP~`z7%rYor@nTh<cbg7N#@yQLw8s)d^G2
z9Q=TgGk6x#vm%U@YA`@b2p`RAK7s#Ngt4|@pPTSyqCrT%S%U-J21|WCg%kL%Se~)&
z%);MpEtVr2xp_UrMcdZ6rJTS4i;E50W8qPrQ(`!3TwH?o8EKZ%Ln0RqG(#_`r2Ah1
zb&}2n&uRBS8P@uR<f6xO+AYG);UrEY0@lJ)=0!ZVief9Ud*M@!M-Uf^T}|Q)$~ZCh
z*PECu7Z-Wf-oJti?HC-m@J~QE8<HRny2RBQQRL=tp>5PEI%`GBTevO6AWN$(A4#hd
zf;FWb#&XKfh)^>>QhKxL000$~rfPFaCm^Z}y0x#74f>-XVe5dPPAp{?@gs^3;^UUy
z4`Evk)$PZM1`={uawL}WHL8%4K}DCL*BVsL0${5Ogv_dSkf-H8FP%6lhznaN^N@LR
zetUkNd(hHWqM>`rFwZ!~NeAuxFlXO8Li+<ThB)0_5!wZ)X2BP>37nCjfz(q{)eTVq
z7?PklY(xKE>aA|TQ3>9z<`NRM$Qb|U1Wt#<xv8c!YEgeVXO@;%+J%j|w_^C$o6+HO
zaN?G>1R^}@BqE@0`z57%s6Sn*K~e~B=Fav=xr|(~%&3~pBfXKw02t4X?^BE+XHvs4
zP&3Cs#aA;m`xTVvzzagVhD>>eyN+7C0$>(e@;a;);s2eWEZ8jhP%fz9X(}p8hB>+%
zG<vNVztSZa%Z{ZM3++ppCS<6?|1Kiq<lNXB_V5sr8UuxYVi`O2lF*W_)0EJ<tL}}(
zO4u&)JkAEKbg`TnPc?e5(AL0py4s+Oo38dXg5GM8jLtG9;7!s!;u|^vQ-QHEhI<s(
zGUh!Ffs=_T%DowzAgPbMn|by4Slf{;1FY}n`%5?9IKC?X)5>_7rw+X}{N2@WKE3ne
z>!p$Q1AiY{cek*fhWgNjD%l{uD>}YeZ_Go3pMb-A>o&#dEu=TB_CC`8fQz_SBo6G}
zBe&7rr>pihMu0;U^NIVmC4qYg@96D?ko{0!u07D--`}-k7a0&F_exeD*$89wF4o>i
Ra;dNS1nLv0PvB{pz<p*ZpjH3?

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.inf
new file mode 100644
index 0000000..1195c83
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/SmmControl.inf
@@ -0,0 +1,122 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+# Copyright (c) 2011 - 2012 Intel Corporation. All rights reserved

+# This software and associated documentation (if any) is furnished

+# under a license and may only be used or copied in accordance

+# with the terms of the license. Except as permitted by such

+# license, no part of this software or documentation may be

+# reproduced, stored in a retrieval system, or transmitted in any

+# form or by any means without the express written consent of

+# Intel Corporation.

+#

+#  Module Name:

+#

+#    SmmControl.inf

+#

+#  Abstract:

+#

+#    Component description file for SmmControl module

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = SmmControl

+  FILE_GUID                  = DD787473-07CE-4c63-82CE-930B33F39C09

+  MODULE_TYPE                = DXE_RUNTIME_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = SmmControlDriverEntryInit

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+

+[Binaries.X64]

+  PE32|SmmControl.efi

+  DXE_DEPEX|SmmControl.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x800

+

+

+[Protocols.X64]

+  gEfiSmmControl2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  ## CONSUMES ## Event

+  gEfiEventVirtualAddressChangeGuid

+

+  ## CONSUMES ## Event

+  gEfiEventExitBootServicesGuid

+

+

+[PcdEx.X64]

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+#  MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf

+

+[Depex.X64]

+#  (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:4096

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.depex b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.depex
new file mode 100644
index 0000000000000000000000000000000000000000..4bb6074e530b68b05103418ff7a5cc63d3cbbbef
GIT binary patch
literal 126
zcmV-^0D=Dkx`?Y=;^1^fwyn4l_J|zT0=s^2FB(eJ5t=vvkS9OEO#+eeVXa@T4otcF
z=xNf3#!muB9!>``fuTo?EI$;jnr7SrwsQ_5+iMd<gax^Du?S(B0&>Bh@3NtjMzbev
gGW<bcLIU>iqZ3Ld@ILb3-o+9$FEj%K0|NsC2pp3&(f|Me

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.efi b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.efi
new file mode 100644
index 0000000000000000000000000000000000000000..cb40b77629df0437da07b4ecf049020b71ea963a
GIT binary patch
literal 19328
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

literal 0
HcmV?d00001

diff --git a/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.inf b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.inf
new file mode 100644
index 0000000..0dcf3b3
--- /dev/null
+++ b/Silicon/Intel/Vlv2SocBinPkg/X64RELEASE/X64/VlvInitDxe.inf
@@ -0,0 +1,253 @@
+#

+# This file contains a 'Sample Driver' and is licensed as such

+# under the terms of your license agreement with Intel or your

+# vendor.  This file may be modified by the user, subject to

+# the additional terms of the license agreement

+#

+#/*++

+#

+#  Copyright (c)  1999 - 2010 Intel Corporation. All rights reserved

+#  This software and associated documentation (if any) is furnished

+#  under a license and may only be used or copied in accordance

+#  with the terms of the license. Except as permitted by such

+#  license, no part of this software or documentation may be

+#  reproduced, stored in a retrieval system, or transmitted in any

+#  form or by any means without the express written consent of

+#  Intel Corporation.

+#

+#  Module Name:

+#

+#    VlvInit.inf

+#

+#  Abstract:

+#

+#    Component description file for SystemAgent Initialization driver

+#

+#--*/

+

+# DO NOT EDIT

+# FILE auto-generated

+

+[Defines]

+  INF_VERSION                = 0x00010017

+  BASE_NAME                  = VlvInitDxe

+  FILE_GUID                  = 93C81A74-B648-4f7f-925E-E4A0CDCC776D

+  MODULE_TYPE                = DXE_DRIVER

+  VERSION_STRING             = 1.0

+  ENTRY_POINT                = VlvInitEntryPoint

+

+[Packages.X64]

+  MdePkg/MdePkg.dec

+  Vlv2DeviceRefCodePkg/Vlv2DeviceRefCodePkg.dec

+  MdeModulePkg/MdeModulePkg.dec

+  Vlv2TbltDevicePkg/PlatformPkg.dec

+

+[Binaries.X64]

+  PE32|VlvInitDxe.efi

+  DXE_DEPEX|VlvInitDxe.depex

+

+[PatchPcd.X64]

+  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x00000000e0000000|0x3910

+

+

+[Protocols.X64]

+  gDxeVlvPlatformPolicyGuid

+

+  ## NOTIFY

+  gEfiDxeSmmReadyToLockProtocolGuid

+

+

+  gIgdOpRegionProtocolGuid

+

+  gEfiGlobalNvsAreaProtocolGuid

+

+  gEfiPciIoProtocolGuid

+

+  gEfiFirmwareVolume2ProtocolGuid

+

+  gEfiCpuIo2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gPcdProtocolGuid

+

+  ## CONSUMES

+  gEfiPcdProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGetPcdInfoProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiDevicePathProtocolGuid

+

+  ## UNDEFINED

+  gEfiDebugPortProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmCommunicationProtocolGuid

+

+  ## SOMETIMES_PRODUCES

+  gEfiDriverBindingProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSimpleTextOutProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiGraphicsOutputProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiHiiFontProtocolGuid

+

+  ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled

+  gEfiUgaDrawProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentNameProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiComponentName2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfigurationProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverConfiguration2ProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnosticsProtocolGuid

+

+  ## SOMETIMES_PRODUCES # User chooses to produce it

+  gEfiDriverDiagnostics2ProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiLoadedImageProtocolGuid

+

+  ## SOMETIMES_CONSUMES

+  gEfiSmmBase2ProtocolGuid

+

+  ## NOTIFY

+  gEfiSmmReadyToLockProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmExitBootServicesProtocolGuid

+

+  ## NOTIFY

+  gEdkiiSmmLegacyBootProtocolGuid

+

+

+[Ppis.X64]

+

+[Guids.X64]

+  gBmpImageGuid

+

+  ## CONSUMES  ## SystemTable

+  gEfiDxeServicesTableGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVTUTF8Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100Guid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVT100PlusGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPcAnsiGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiUartDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiSasDevicePathGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualDiskGuid

+

+  ## SOMETIMES_CONSUMES  ## GUID

+  gEfiPersistentVirtualCdGuid

+

+  ## SOMETIMES_CONSUMES ## GUID # Used to do smm communication

+  gEfiSmmLockBoxCommunicationGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventReadyToBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Event

+  gEfiEventLegacyBootGuid

+

+  ## SOMETIMES_CONSUMES  ## Variable

+  gEfiGlobalVariableGuid

+

+  gEfiMdeModulePkgTokenSpaceGuid

+

+

+[PcdEx.X64]

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr

+

+  ## CONSUMES

+  ## SOMETIMES_PRODUCES

+  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr

+

+

+[LibraryClasses.X64]

+## @LIB_INSTANCES

+#  MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf

+#  MdePkg/Library/DxePcdLib/DxePcdLib.inf

+#  MdePkg/Library/BaseLib/BaseLib.inf

+#  MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

+#  MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf

+#  MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf

+#  MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf

+#  MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf

+#  MdePkg/Library/BasePrintLib/BasePrintLib.inf

+#  MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf

+#  MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf

+#  MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf

+#  MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf

+#  MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf

+#  Vlv2TbltDevicePkg/Library/SmbusLib/SmbusLib.inf

+#  Vlv2TbltDevicePkg/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf

+#  MdePkg/Library/UefiLib/UefiLib.inf

+#  MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf

+#  MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf

+#  MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf

+#  Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Library/PchPlatformLib/PchPlatformLib.inf

+

+[Depex.X64]

+#  (gDxeVlvPlatformPolicyGuid              AND gEfiPciRootBridgeIoProtocolGuid     AND gEfiCpuIo2ProtocolGuid                      AND gEfiGlobalNvsAreaProtocolGuid       AND gEfiFirmwareVolume2ProtocolGuid   AND gEfiHiiDatabaseProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)

+

+

+

+[BuildOptions.X64]

+## @AsBuilt

+##   MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for

+##   MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE

+##   MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -l -n

+##   MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG

+##   MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd

+##   MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS = 

+##   MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin

+##   MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable

+##   MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e

+##   MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data

+##   MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h  /DMINNOW2_PO /DENBDT_PF_ENABLE=1 $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) /DCLKGEN_CONFIG_EXTRA=1 $(SYSCTL_X0_CONVERT_BOARD_OPTION) /DNOCS_S3_SUPPORT /DSATA_SUPPORT=1 /DPCIESC_SUPPORT=1 /DFTPM_ENABLE   $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)

+##   MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for

+##   MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo

+##   MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny

+##   MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64

-- 
2.21.0.windows.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#43096): https://edk2.groups.io/g/devel/message/43096
Mute This Topic: https://groups.io/mt/32267733/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-

Re: [edk2-devel] [edk2-non-osi Patch] Vlv2SocBinPkg: Add initial binaries for Vlv2TbltDevicePkg
Posted by rebecca@bluestop.org 4 years, 9 months ago
On 2019-06-30 21:07, Michael D Kinney wrote:
> Add the initial version of the binaries required to
> build Vlv2TbltDevicePkg in the edk2-platform repository


Since the patch is 6.1MB, people should probably be careful to trim
replies to remove most of the content to avoid overloading people's inboxes.


-- 
Rebecca Cran


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#43097): https://edk2.groups.io/g/devel/message/43097
Mute This Topic: https://groups.io/mt/32267733/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-